From a43b2678759e55f6338d3642b2de4db3aae97180 Mon Sep 17 00:00:00 2001 From: eps1lon Date: Mon, 18 Mar 2024 14:40:13 +0100 Subject: [PATCH 1/4] Install React 19 types --- package.json | 5 +- pnpm-lock.yaml | 510 ++++++++++++++++++++++++------------------------- 2 files changed, 258 insertions(+), 257 deletions(-) diff --git a/package.json b/package.json index 345a18f3a12aa4..2d54986121a9a3 100644 --- a/package.json +++ b/package.json @@ -213,8 +213,9 @@ "@definitelytyped/typescript-versions": "^0.1.1", "@definitelytyped/utils": "^0.1.5", "@types/node": "^18.19.22", - "@types/react": "^18.2.55", - "@types/react-dom": "18.2.19", + "@types/react": "npm:@eps1lon/react-19-types", + "@types/react-dom": "npm:@eps1lon/react-dom-19-types", + "@types/react-is": "npm:@eps1lon/react-is-19-types", "cross-fetch": "^4.0.0" }, "nyc": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 94bd96d2a1c85e..69fa4ec4d4e3ce 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,8 +23,9 @@ overrides: '@definitelytyped/typescript-versions': ^0.1.1 '@definitelytyped/utils': ^0.1.5 '@types/node': ^18.19.22 - '@types/react': ^18.2.55 - '@types/react-dom': 18.2.19 + '@types/react': npm:@eps1lon/react-19-types + '@types/react-dom': npm:@eps1lon/react-dom-19-types + '@types/react-is': npm:@eps1lon/react-is-19-types cross-fetch: ^4.0.0 importers: @@ -150,8 +151,8 @@ importers: specifier: ^2.7.3 version: 2.7.3 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/yargs': specifier: ^17.0.32 version: 17.0.32 @@ -361,13 +362,13 @@ importers: version: 2.6.2(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0) '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/server': specifier: ^11.11.0 version: 11.11.0 '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/material': specifier: workspace:^ version: link:../packages/mui-material/build @@ -415,7 +416,7 @@ importers: version: 10.10.0(react@18.2.0) react-redux: specifier: ^8.1.3 - version: 8.1.3(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.1) + version: 8.1.3(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.1) redux: specifier: ^4.2.1 version: 4.2.1 @@ -451,19 +452,19 @@ importers: version: 7.23.9 '@docsearch/react': specifier: ^3.6.0 - version: 3.6.0(@algolia/client-search@4.22.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0) + version: 3.6.0(@algolia/client-search@4.22.1)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0) '@emotion/cache': specifier: ^11.11.0 version: 11.11.0 '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/server': specifier: ^11.11.0 version: 11.11.0 '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@fortawesome/fontawesome-svg-core': specifier: ^6.5.1 version: 6.5.1 @@ -517,31 +518,31 @@ importers: version: link:../packages/mui-utils/build '@mui/x-charts': specifier: 6.19.5 - version: 6.19.5(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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) + version: 6.19.5(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(react-dom@18.2.0)(react@18.2.0) '@mui/x-data-grid': specifier: 7.0.0-beta.7 - version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) '@mui/x-data-grid-generator': specifier: 7.0.0-beta.7 - version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/icons-material@packages+mui-icons-material+build)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/icons-material@packages+mui-icons-material+build)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) '@mui/x-data-grid-premium': specifier: 7.0.0-beta.7 - version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) '@mui/x-data-grid-pro': specifier: 7.0.0-beta.7 - version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) '@mui/x-date-pickers': specifier: 6.19.7 - version: 6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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) + version: 6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(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.7 - version: 6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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) + version: 6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(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) + version: 6.10.2(@eps1lon/react-19-types@19.0.9999)(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.0)(@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) + version: 6.17.0(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(react-dom@18.2.0)(react@18.2.0) '@popperjs/core': specifier: ^2.11.8 version: 2.11.8 @@ -628,7 +629,7 @@ importers: version: 7.4.3(react@18.2.0) material-ui-popup-state: specifier: ^5.0.10 - version: 5.0.10(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 5.0.10(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) next: specifier: ^13.5.1 version: 13.5.1(@babel/core@7.23.9)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) @@ -751,11 +752,11 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/react-swipeable-views': specifier: ^0.13.5 version: 0.13.5 @@ -860,8 +861,8 @@ importers: specifier: ^2.7.3 version: 2.7.3 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/uuid': specifier: ^9.0.8 version: 9.0.8 @@ -1135,11 +1136,11 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -1235,8 +1236,8 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 next: specifier: ^13.5.1 version: 13.5.1(@babel/core@7.23.9)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) @@ -1265,19 +1266,19 @@ importers: dependencies: '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/base': specifier: 5.0.0-beta.30 - version: 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 5.0.0-beta.30(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/joy': specifier: 5.0.0-beta.22 - version: 5.0.0-beta.22(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 5.0.0-beta.22(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/material': specifier: 5.15.4 - version: 5.15.4(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + version: 5.15.4(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -1286,8 +1287,8 @@ importers: version: 18.2.0(react@18.2.0) devDependencies: '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 packages/mui-icons-material: dependencies: @@ -1308,8 +1309,8 @@ importers: specifier: ^4.3.12 version: 4.3.12 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 chai: specifier: ^4.4.1 version: 4.4.1 @@ -1355,10 +1356,10 @@ importers: version: 7.23.9 '@emotion/react': specifier: ^11.5.0 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/styled': specifier: ^11.3.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/base': specifier: workspace:* version: link:../mui-base/build @@ -1394,11 +1395,11 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -1432,10 +1433,10 @@ importers: version: 7.23.9 '@emotion/react': specifier: ^11.5.0 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/styled': specifier: ^11.3.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/base': specifier: workspace:* version: link:../mui-base/build @@ -1468,11 +1469,11 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -1497,10 +1498,10 @@ importers: version: 7.23.9 '@emotion/react': specifier: ^11.5.0 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/styled': specifier: ^11.3.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/base': specifier: workspace:* version: link:../mui-base/build @@ -1560,11 +1561,11 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -1628,7 +1629,7 @@ importers: version: 7.23.9 '@emotion/styled': specifier: ^11.3.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/base': specifier: workspace:* version: link:../mui-base/build @@ -1662,7 +1663,7 @@ importers: devDependencies: '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui-internal/test-utils': specifier: workspace:^ version: link:../test-utils @@ -1679,14 +1680,14 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/react-is': - specifier: ^18.2.4 - version: 18.2.4 + specifier: npm:@eps1lon/react-is-19-types + version: /@eps1lon/react-is-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -1724,13 +1725,13 @@ importers: version: 11.11.0 '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/server': specifier: ^11.11.0 version: 11.11.0 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 next: specifier: 13.5.1 version: 13.5.1(@babel/core@7.23.9)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) @@ -1761,8 +1762,8 @@ importers: specifier: ^4.3.12 version: 4.3.12 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 chai: specifier: ^4.4.1 version: 4.4.1 @@ -1788,10 +1789,10 @@ importers: devDependencies: '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui-internal/test-utils': specifier: workspace:^ version: link:../test-utils @@ -1802,8 +1803,8 @@ importers: specifier: ^4.3.12 version: 4.3.12 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 chai: specifier: ^4.4.1 version: 4.4.1 @@ -1840,8 +1841,8 @@ importers: specifier: ^3.3.5 version: 3.3.5 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 chai: specifier: ^4.4.1 version: 4.4.1 @@ -1917,11 +1918,11 @@ importers: specifier: ^4.3.12 version: 4.3.12 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -1968,10 +1969,10 @@ importers: devDependencies: '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui-internal/test-utils': specifier: workspace:^ version: link:../test-utils @@ -1988,8 +1989,8 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -2019,8 +2020,8 @@ importers: specifier: workspace:* version: link:build '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 publishDirectory: build packages/mui-utils: @@ -2057,14 +2058,14 @@ importers: specifier: ^18.19.22 version: 18.19.22 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/react-is': - specifier: ^18.2.4 - version: 18.2.4 + specifier: npm:@eps1lon/react-is-19-types + version: /@eps1lon/react-is-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -2120,13 +2121,13 @@ importers: version: 11.11.2 '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/serialize': specifier: ^1.1.3 version: 1.1.3 '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/system': specifier: workspace:^ version: link:../mui-system/build @@ -2183,8 +2184,8 @@ importers: specifier: ^18.19.22 version: 18.19.22 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/stylis': specifier: ^4.2.5 version: 4.2.5 @@ -2292,7 +2293,7 @@ importers: version: 11.11.0 '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@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) @@ -2364,11 +2365,11 @@ importers: specifier: ^15.7.11 version: 15.7.11 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 + specifier: npm:@eps1lon/react-dom-19-types + version: /@eps1lon/react-dom-19-types@19.0.9999 '@types/react-test-renderer': specifier: ^18.0.7 version: 18.0.7 @@ -2391,7 +2392,7 @@ importers: version: 11.11.0 '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.55)(react@18.2.0) + version: 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui-internal/test-utils': specifier: workspace:^ version: link:../packages/test-utils @@ -2429,11 +2430,11 @@ importers: specifier: ^4.3.12 version: 4.3.12 '@types/react': - specifier: ^18.2.55 - version: 18.2.55 + specifier: npm:@eps1lon/react-19-types + version: /@eps1lon/react-19-types@19.0.9999 '@types/react-is': - specifier: ^18.2.4 - version: 18.2.4 + specifier: npm:@eps1lon/react-is-19-types + version: /@eps1lon/react-is-19-types@19.0.9999 '@types/sinon': specifier: ^10.0.20 version: 10.0.20 @@ -4207,8 +4208,8 @@ packages: '@chakra-ui/styled-system': 2.9.2 '@chakra-ui/theme-utils': 2.0.21 '@chakra-ui/utils': 2.0.15 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) react: 18.2.0 react-fast-compare: 3.2.2 dev: false @@ -4300,10 +4301,10 @@ packages: resolution: {integrity: sha512-+sbxb71sWre+PwDK7X2T8+bhS6clcVMLwBPznX45Qu6opJcgRjAp7gYSDzVFp187J+feSj5dNBN1mJoi6ckkUQ==} dev: false - /@docsearch/react@3.6.0(@algolia/client-search@4.22.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0): + /@docsearch/react@3.6.0(@algolia/client-search@4.22.1)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0): resolution: {integrity: sha512-HUFut4ztcVNmqy9gp/wxNbC7pTOHhgVVkHVGCACTuLhUKUhKAF9KYHJtMiLUJxEqiFLQiuri1fWF8zqwM/cu1w==} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: '>= 16.8.0 < 19.0.0' react-dom: '>= 16.8.0 < 19.0.0' search-insights: '>= 1 < 3' @@ -4320,7 +4321,7 @@ packages: '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1)(search-insights@2.13.0) '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1) '@docsearch/css': 3.6.0 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 algoliasearch: 4.19.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -4398,7 +4399,7 @@ packages: /@emotion/memoize@0.8.1: resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} - /@emotion/react@11.11.4(@types/react@18.2.55)(react@18.2.0): + /@emotion/react@11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0): resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==} peerDependencies: '@types/react': '*' @@ -4414,7 +4415,7 @@ packages: '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 hoist-non-react-statics: 3.3.2 react: 18.2.0 @@ -4443,7 +4444,7 @@ packages: /@emotion/sheet@1.2.2: resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==} - /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0): + /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0): resolution: {integrity: sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==} peerDependencies: '@emotion/react': ^11.0.0-rc.0 @@ -4456,11 +4457,11 @@ packages: '@babel/runtime': 7.23.9 '@emotion/babel-plugin': 11.11.0 '@emotion/is-prop-valid': 1.2.1 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@emotion/serialize': 1.1.3 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) '@emotion/utils': 1.2.1 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 react: 18.2.0 /@emotion/unitless@0.8.0: @@ -4482,6 +4483,23 @@ packages: /@emotion/weak-memoize@0.3.1: resolution: {integrity: sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==} + /@eps1lon/react-19-types@19.0.9999: + resolution: {integrity: sha512-+SioHmumdaTuQQgkOrm2xMFacdV3KHjUsdGEsYsKwUwQE0Pi5VAPulFUfzBHhKsoWFNX2Jkh7CWeRSEoBmTCrA==} + dependencies: + '@types/scheduler': 0.16.2 + csstype: 3.1.3 + + /@eps1lon/react-dom-19-types@19.0.9999: + resolution: {integrity: sha512-oXHRAeyAQUOnW6HdONJr11w2ys2JvmJmLAzZ7b11V4jhYhGJHVueI3gn6vOVERkhsKN4qepc4Wp5H+tnUi7ZGg==} + dependencies: + '@types/react': /@eps1lon/react-19-types@19.0.9999 + + /@eps1lon/react-is-19-types@19.0.9999: + resolution: {integrity: sha512-QWAzMhlvdPgY9xMzL346UsGv+h/bW19iJ+U3Vob6eqjnvfdcprYtHH1dL4GGcrVkCvbH4xxNBwqqnGe2lwUC4Q==} + dependencies: + '@types/react': /@eps1lon/react-19-types@19.0.9999 + dev: true + /@esbuild/aix-ppc64@0.19.11: resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} engines: {node: '>=12'} @@ -5072,7 +5090,7 @@ packages: /@material-ui/types@4.1.1: resolution: {integrity: sha512-AN+GZNXytX9yxGi0JOfxHrRTbhFybjUJ05rnsBVjcB+16e466Z0Xe5IxawuOayVZgTBNDxmPKo5j4V6OnMtaSQ==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: true /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.23.9): @@ -5104,11 +5122,11 @@ packages: react-test-renderer: 18.2.0(react@18.2.0) semver: 5.7.2 - /@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.30(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-dc38W4W3K42atE9nSaOeoJ7/x9wGIfawdwC/UmMxMLlZ1iSsITQ8dQJaTATCbn98YvYPINK/EH541YA5enQIPQ==} engines: {node: '>=12.0.0'} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5117,21 +5135,21 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) - '@mui/types': 7.2.13(@types/react@18.2.55) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/types': 7.2.13(@eps1lon/react-19-types@19.0.9999) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@popperjs/core': 2.11.8 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 clsx: 2.1.0 prop-types: 15.8.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mui/base@5.0.0-beta.31(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/base@5.0.0-beta.31(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-+uNbP3OHJuZVI00WyMg7xfLZotaEY7LgvYXDfONVJbrS+K9wyjCIPNfjy8r9XJn4fbHo/5ibiZqjWnU9LMNv+A==} engines: {node: '>=12.0.0'} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5140,21 +5158,21 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) - '@mui/types': 7.2.13(@types/react@18.2.55) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/types': 7.2.13(@eps1lon/react-19-types@19.0.9999) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@popperjs/core': 2.11.8 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 clsx: 2.1.0 prop-types: 15.8.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mui/base@5.0.0-beta.37(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/base@5.0.0-beta.37(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-/o3anbb+DeCng8jNsd3704XtmmLDZju1Fo8R2o7ugrVtPQ/QpcqddwKNzKPZwa0J5T8YNW3ZVuHyQgbTnQLisQ==} engines: {node: '>=12.0.0'} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5163,10 +5181,10 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) - '@mui/types': 7.2.13(@types/react@18.2.55) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/types': 7.2.13(@eps1lon/react-19-types@19.0.9999) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@popperjs/core': 2.11.8 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 clsx: 2.1.0 prop-types: 15.8.1 react: 18.2.0 @@ -5177,13 +5195,13 @@ packages: resolution: {integrity: sha512-W6R1dZJgbYfLmQKf7Es2WUw0pkDkEVUf2jA22DYu0JOa9M3pjvOqoC9HgOPGNNJTu6SCWLSWh3euv1Jn2NmeQA==} dev: false - /@mui/joy@5.0.0-beta.22(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/joy@5.0.0-beta.22(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-XFJd/cWXqt9MMlaUh10QQH893YaRw2CORYRhQovXvaJk7mmt/Sc4q3Fb7ANCXf4xMUPdwqdnvawLkAOAKVHuXg==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 '@emotion/styled': ^11.3.0 - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5195,27 +5213,27 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@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) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/base': 5.0.0-beta.31(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/core-downloads-tracker': 5.15.8 - '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react@18.2.0) - '@mui/types': 7.2.13(@types/react@18.2.55) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@types/react': 18.2.55 + '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/types': 7.2.13(@eps1lon/react-19-types@19.0.9999) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@types/react': /@eps1lon/react-19-types@19.0.9999 clsx: 2.1.0 prop-types: 15.8.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mui/material@5.15.4(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/material@5.15.4(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-T/LGRAC+M0c+D3+y67eHwIN5bSje0TxbcJCWR0esNvU11T0QwrX3jedXItPNBwMupF2F5VWCDHBVLlFnN3+ABA==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 '@emotion/styled': ^11.3.0 - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5227,14 +5245,14 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@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) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/base': 5.0.0-beta.31(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/core-downloads-tracker': 5.15.8 - '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react@18.2.0) - '@mui/types': 7.2.13(@types/react@18.2.55) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@types/react': 18.2.55 + '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/types': 7.2.13(@eps1lon/react-19-types@19.0.9999) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@types/react': /@eps1lon/react-19-types@19.0.9999 '@types/react-transition-group': 4.4.10 clsx: 2.1.0 csstype: 3.1.3 @@ -5245,19 +5263,19 @@ packages: react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) dev: false - /@mui/private-theming@5.15.12(@types/react@18.2.55)(react@18.2.0): + /@mui/private-theming@5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0): resolution: {integrity: sha512-cqoSo9sgA5HE+8vZClbLrq9EkyOnYysooepi5eKaKvJ41lReT2c5wOZAeDDM1+xknrMDos+0mT2zr3sZmUiRRA==} engines: {node: '>=12.0.0'} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 peerDependenciesMeta: '@types/react': optional: true dependencies: '@babel/runtime': 7.23.9 - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@types/react': 18.2.55 + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@types/react': /@eps1lon/react-19-types@19.0.9999 prop-types: 15.8.1 react: 18.2.0 dev: false @@ -5277,20 +5295,20 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@emotion/cache': 11.11.0 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) csstype: 3.1.3 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/system@5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react@18.2.0): + /@mui/system@5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0): resolution: {integrity: sha512-/pq+GO6yN3X7r3hAwFTrzkAh7K1bTF5r8IzS79B9eyKJg7v6B/t4/zZYMR6OT9qEPtwf6rYN2Utg1e6Z7F1OgQ==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 '@emotion/styled': ^11.3.0 - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 peerDependenciesMeta: '@emotion/react': @@ -5301,35 +5319,35 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) - '@mui/private-theming': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/private-theming': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@mui/styled-engine': 5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0) - '@mui/types': 7.2.13(@types/react@18.2.55) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@types/react': 18.2.55 + '@mui/types': 7.2.13(@eps1lon/react-19-types@19.0.9999) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@types/react': /@eps1lon/react-19-types@19.0.9999 clsx: 2.1.0 csstype: 3.1.3 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/types@7.2.13(@types/react@18.2.55): + /@mui/types@7.2.13(@eps1lon/react-19-types@19.0.9999): resolution: {integrity: sha512-qP9OgacN62s+l8rdDhSFRe05HWtLLJ5TGclC9I1+tQngbssu0m2dmFZs+Px53AcOs9fD7TbYd4gc9AXzVqO/+g==} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types peerDependenciesMeta: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: false - /@mui/utils@5.15.12(@types/react@18.2.55)(react@18.2.0): + /@mui/utils@5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0): resolution: {integrity: sha512-8SDGCnO2DY9Yy+5bGzu00NZowSDtuyHP4H8gunhHGQoIlhlY2Z3w64wBzAOLpYw/ZhJNzksDTnS/i8qdJvxuow==} engines: {node: '>=12.0.0'} peerDependencies: - '@types/react': ^18.2.55 + '@types/react': npm:@eps1lon/react-19-types react: ^17.0.0 || ^18.0.0 peerDependenciesMeta: '@types/react': @@ -5337,13 +5355,13 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@types/prop-types': 15.7.11 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 prop-types: 15.8.1 react: 18.2.0 react-is: 18.2.0 dev: false - /@mui/x-charts@6.19.5(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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): + /@mui/x-charts@6.19.5(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-BBRGLup5gpaLkhECv+J2ahFbDDgqK4BgLyLXLHKUASoWSU3YRCyDt9ifBREspEPfTZXgrcqNkybAl5b+l6baFQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5360,9 +5378,9 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@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) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/base': 5.0.0-beta.30(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build '@mui/system': link:packages/mui-system/build '@react-spring/rafz': 9.7.3 @@ -5378,7 +5396,7 @@ packages: - '@types/react' dev: false - /@mui/x-data-grid-generator@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/icons-material@packages+mui-icons-material+build)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/x-data-grid-generator@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/icons-material@packages+mui-icons-material+build)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-CV6AaC11RvNRKeN3Pd+ynxUnGE2IoK5NacXSxkelrfoeC+W9UH1GZhoZeh744b7KJxcVnKabxbMRa9qZj0jY5Q==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5387,10 +5405,10 @@ packages: react: ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.23.9 - '@mui/base': 5.0.0-beta.37(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/base': 5.0.0-beta.37(@eps1lon/react-19-types@19.0.9999)(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 - '@mui/x-data-grid-premium': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/x-data-grid-premium': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) chance: 1.1.11 clsx: 2.1.0 lru-cache: 7.18.3 @@ -5402,7 +5420,7 @@ packages: - react-dom dev: false - /@mui/x-data-grid-premium@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/x-data-grid-premium@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-8qtdDSvIDVCFnWX6s6hMqSgayU8igdVHK7waGjjPxwrCj3u9JTzMGdxJF2mu6gaCDcQ4Bn3PFT7IA8qt6yHhaw==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5412,11 +5430,11 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@mui/material': link:packages/mui-material/build - '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react@18.2.0) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@mui/x-data-grid': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mui/x-data-grid-pro': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mui/x-license': 7.0.0-beta.6(@types/react@18.2.55)(react@18.2.0) + '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/x-data-grid': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) + '@mui/x-data-grid-pro': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) + '@mui/x-license': 7.0.0-beta.6(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@types/format-util': 1.0.4 clsx: 2.1.0 exceljs: 4.4.0 @@ -5430,7 +5448,7 @@ packages: - '@types/react' dev: false - /@mui/x-data-grid-pro@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/x-data-grid-pro@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-sVw/r5eOjIqxMpfLtsJzntk1tgdNcWpxndwqo3VT3fmU6i78SbJgihJ7yntWai0nn2rjDjmRZPpZifAc0gNeIg==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5440,10 +5458,10 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@mui/material': link:packages/mui-material/build - '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react@18.2.0) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@mui/x-data-grid': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mui/x-license': 7.0.0-beta.6(@types/react@18.2.55)(react@18.2.0) + '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/x-data-grid': 7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0) + '@mui/x-license': 7.0.0-beta.6(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@types/format-util': 1.0.4 clsx: 2.1.0 prop-types: 15.8.1 @@ -5456,7 +5474,7 @@ packages: - '@types/react' dev: false - /@mui/x-data-grid@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /@mui/x-data-grid@7.0.0-beta.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-rZ7lvibUDbGqEABBGlNvfQ5SdIa+8ve3/d8YjdZ2DUOeJwR+K7X4MnVItIrZuKPRYoSy1kWDRsjr8u0sEIIEoA==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5466,8 +5484,8 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@mui/material': link:packages/mui-material/build - '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react@18.2.0) - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/system': 5.15.12(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) clsx: 2.1.0 prop-types: 15.8.1 react: 18.2.0 @@ -5479,7 +5497,7 @@ packages: - '@types/react' dev: false - /@mui/x-date-pickers-pro@6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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-date-pickers-pro@6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-KpYNZIx3zp1yXKkeGKkIBj4PFWutFKBBwQLJxMp/PDyl8uZSeB3P8Rd9tlqvFZ+k+vksP7q+S3GvAlIa3GwKNQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5517,14 +5535,14 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@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) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/base': 5.0.0-beta.30(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build '@mui/system': link:packages/mui-system/build - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) - '@mui/x-date-pickers': 6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/x-date-pickers': 6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(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(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) clsx: 2.1.0 date-fns: 2.30.0 date-fns-jalali: 2.21.3-1 @@ -5536,7 +5554,7 @@ packages: - '@types/react' dev: false - /@mui/x-date-pickers@6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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-date-pickers@6.19.7(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-BCTOQjAuyU29Ymd2FJrHHdRh0U6Qve7MsthdrD2jjaMaR8ou455JuxsNTQUGSpiMkGHWOMVq+B8N1EBcSYH63g==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5574,12 +5592,12 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@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) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/base': 5.0.0-beta.30(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build '@mui/system': link:packages/mui-system/build - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@types/react-transition-group': 4.4.10 clsx: 2.1.0 date-fns: 2.30.0 @@ -5592,33 +5610,33 @@ packages: - '@types/react' dev: false - /@mui/x-license-pro@6.10.2(@types/react@18.2.55)(react@18.2.0): + /@mui/x-license-pro@6.10.2(@eps1lon/react-19-types@19.0.9999)(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.23.9 - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) react: 18.2.0 transitivePeerDependencies: - '@types/react' dev: false - /@mui/x-license@7.0.0-beta.6(@types/react@18.2.55)(react@18.2.0): + /@mui/x-license@7.0.0-beta.6(@eps1lon/react-19-types@19.0.9999)(react@18.2.0): resolution: {integrity: sha512-S1HYQFf9DqDfjNN1nxPvrHyp+lhkcGUeSTpCEpzX9FX9ZfRuZEP9n9B3Vh3QuuXlETRK4aLg4jWKws5kzAoWgg==} engines: {node: '>=14.0.0'} peerDependencies: react: ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.23.9 - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) react: 18.2.0 transitivePeerDependencies: - '@types/react' dev: false - /@mui/x-tree-view@6.17.0(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@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): + /@mui/x-tree-view@6.17.0(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-09dc2D+Rjg2z8KOaxbUXyPi0aw7fm2jurEtV8Xw48xJ00joLWd5QJm1/v4CarEvaiyhTQzHImNqdgeJW8ZQB6g==} engines: {node: '>=14.0.0'} peerDependencies: @@ -5630,12 +5648,12 @@ packages: react-dom: ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.23.9 - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) - '@emotion/styled': 11.11.0(@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) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) + '@mui/base': 5.0.0-beta.30(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build '@mui/system': link:packages/mui-system/build - '@mui/utils': 5.15.12(@types/react@18.2.55)(react@18.2.0) + '@mui/utils': 5.15.12(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@types/react-transition-group': 4.4.10 clsx: 2.1.0 prop-types: 15.8.1 @@ -7310,7 +7328,7 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@testing-library/dom': 9.3.4 - '@types/react-dom': 18.2.19 + '@types/react-dom': /@eps1lon/react-dom-19-types@19.0.9999 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -7329,7 +7347,7 @@ packages: '@emotion/react': ^11.11.1 react: '>=18' dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@theme-ui/core': 0.16.2(@emotion/react@11.11.4)(react@18.2.0) '@theme-ui/css': 0.16.2(@emotion/react@11.11.4) deepmerge: 4.3.1 @@ -7343,7 +7361,7 @@ packages: '@theme-ui/theme-provider': ^0.16.2 react: '>=18' dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@styled-system/color': 5.1.2 '@styled-system/should-forward-prop': 5.1.5 '@styled-system/space': 5.1.2 @@ -7360,7 +7378,7 @@ packages: '@emotion/react': ^11.11.1 react: '>=18' dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@theme-ui/css': 0.16.2(@emotion/react@11.11.4) deepmerge: 4.3.1 react: 18.2.0 @@ -7371,7 +7389,7 @@ packages: peerDependencies: '@emotion/react': ^11.11.1 dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) csstype: 3.1.3 dev: false @@ -7381,7 +7399,7 @@ packages: '@emotion/react': ^11.11.1 react: '>=18' dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@theme-ui/core': 0.16.2(@emotion/react@11.11.4)(react@18.2.0) '@theme-ui/css': 0.16.2(@emotion/react@11.11.4) react: 18.2.0 @@ -7393,7 +7411,7 @@ packages: '@emotion/react': ^11.11.1 react: '>=18' dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@theme-ui/color-modes': 0.16.2(@emotion/react@11.11.4)(react@18.2.0) '@theme-ui/core': 0.16.2(@emotion/react@11.11.4)(react@18.2.0) '@theme-ui/css': 0.16.2(@emotion/react@11.11.4) @@ -7553,7 +7571,7 @@ packages: resolution: {integrity: sha512-RaO/TyyHZvXkpzinbMTZmd/S5biU4zxkvDsn22ujC29t9FMSzq8tnn8f2MxQ2P8GVhFRG5jTAL05DXKyTtpEQQ==} dependencies: '@types/cheerio': 0.22.31 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: true /@types/eslint-scope@3.7.4: @@ -7602,7 +7620,7 @@ packages: /@types/hoist-non-react-statics@3.3.5: resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 hoist-non-react-statics: 3.3.2 /@types/html-minifier-terser@6.1.0: @@ -7751,67 +7769,49 @@ packages: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} dev: false - /@types/react-dom@18.2.19: - resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==} - dependencies: - '@types/react': 18.2.55 - - /@types/react-is@18.2.4: - resolution: {integrity: sha512-wBc7HgmbCcrvw0fZjxbgz/xrrlZKzEqmABBMeSvpTvdm25u6KI6xdIi9pRE2G0C1Lw5ETFdcn4UbYZ4/rpqUYw==} - dependencies: - '@types/react': 18.2.55 - dev: true - /@types/react-reconciler@0.26.7: resolution: {integrity: sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: false /@types/react-reconciler@0.28.8: resolution: {integrity: sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: false /@types/react-swipeable-views-utils@0.13.7: resolution: {integrity: sha512-ED8pf8dq3S79uWtP8EnSdrg7dUCrxyL9Uapq1dSA2mz+H83SjS8vsqmlFWmmBQoTuEHsQp5Ru9fxxsofQ+bI9Q==} dependencies: '@material-ui/types': 4.1.1 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 '@types/react-swipeable-views': 0.13.5 dev: true /@types/react-swipeable-views@0.13.5: resolution: {integrity: sha512-ni6WjO7gBq2xB2Y/ZiRdQOgjGOxIik5ow2s7xKieDq8DxsXTdV46jJslSBVK2yoIJHf6mG3uqNTwxwgzbXRRzg==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: true /@types/react-test-renderer@18.0.7: resolution: {integrity: sha512-1+ANPOWc6rB3IkSnElhjv6VLlKg2dSv/OWClUyZimbLsQyBn8Js9Vtdsi3UICJ2rIQ3k2la06dkB+C92QfhKmg==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: true /@types/react-transition-group@4.4.10: resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 /@types/react-window@1.8.8: resolution: {integrity: sha512-8Ls660bHR1AUA2kuRvVG9D/4XpRC6wjAaPT9dil7Ckc76eP9TKWZwwmgfq8Q1LANX3QNDnoU4Zp48A3w+zK69Q==} dependencies: - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 dev: true - /@types/react@18.2.55: - resolution: {integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==} - dependencies: - '@types/prop-types': 15.7.11 - '@types/scheduler': 0.16.2 - csstype: 3.1.3 - /@types/resolve@0.0.8: resolution: {integrity: sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==} dependencies: @@ -15483,13 +15483,13 @@ packages: resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} dev: false - /material-ui-popup-state@5.0.10(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + /material-ui-popup-state@5.0.10(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-gd0DI8skwCSdth/j/yndoIwNkS2eDusosTe5hyPZ3jbrMzDkbQBs+tBbwapQ9hLfgiVLwICd1mwyerUV9Y5Elw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.23.9 - '@mui/material': 5.15.4(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/material': 5.15.4(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 prop-types: 15.8.1 react: 18.2.0 @@ -18281,11 +18281,11 @@ packages: react: 18.2.0 scheduler: 0.23.0 - /react-redux@8.1.3(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.1): + /react-redux@8.1.3(@eps1lon/react-19-types@19.0.9999)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.1): resolution: {integrity: sha512-n0ZrutD7DaX/j9VscF+uTALI3oUPa/pO4Z3soOBIjuRn/FzVu6aehhysxZCLi6y7duMf52WNZGMl7CtuK5EnRw==} peerDependencies: - '@types/react': ^18.2.55 - '@types/react-dom': 18.2.19 + '@types/react': npm:@eps1lon/react-19-types + '@types/react-dom': npm:@eps1lon/react-dom-19-types react: ^16.8 || ^17.0 || ^18.0 react-dom: ^16.8 || ^17.0 || ^18.0 react-native: '>=0.59' @@ -18304,7 +18304,7 @@ packages: dependencies: '@babel/runtime': 7.23.9 '@types/hoist-non-react-statics': 3.3.5 - '@types/react': 18.2.55 + '@types/react': /@eps1lon/react-19-types@19.0.9999 '@types/use-sync-external-store': 0.0.3 hoist-non-react-statics: 3.3.2 react: 18.2.0 @@ -20462,7 +20462,7 @@ packages: '@emotion/react': '>=11.1.1' react: '>=18' dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) + '@emotion/react': 11.11.4(@eps1lon/react-19-types@19.0.9999)(react@18.2.0) '@theme-ui/color-modes': 0.16.2(@emotion/react@11.11.4)(react@18.2.0) '@theme-ui/components': 0.16.2(@emotion/react@11.11.4)(@theme-ui/theme-provider@0.16.2)(react@18.2.0) '@theme-ui/core': 0.16.2(@emotion/react@11.11.4)(react@18.2.0) From 8b0a6f59220f0632939e191d16f1c98a96381951 Mon Sep 17 00:00:00 2001 From: eps1lon Date: Tue, 19 Mar 2024 19:52:25 +0100 Subject: [PATCH 2/4] Apply preset-19 codemod --- apps/local-ui-lib/index.d.ts | 1 + .../components/popper/PlacementPopper.tsx | 2 + docs/data/base/components/popup/Placement.tsx | 2 + .../UnstyledSelectBasic/system/index.tsx | 2 + .../components/select/UnstyledSelectForm.tsx | 2 + .../accessibility/KeyboardNavigation.tsx | 2 + .../autocomplete/AutocompleteHint.tsx | 2 + .../joy/components/input/DebouncedInput.tsx | 2 +- .../components/input/FloatingLabelInput.tsx | 2 + .../components/menu/MenuToolbarExample.tsx | 2 + .../snackbar/SnackbarHideDuration.tsx | 2 +- .../textarea/FloatingLabelTextarea.tsx | 2 + .../progress/CircularIntegration.tsx | 2 +- .../progress/DelayingAppearance.tsx | 2 +- docs/src/components/header/HeaderNavBar.tsx | 2 + .../components/home/StoreTemplatesBanner.tsx | 2 + docs/src/components/icon/IconImage.tsx | 2 + .../components/markdown/MarkdownElement.tsx | 2 + .../components/BaseInputDemo.tsx | 2 + docs/src/modules/utils/useClipboardCopy.ts | 2 +- .../onepirate/modules/withRoot.tsx | 2 + docs/types/docs.d.ts | 50 ++++++++++--------- .../test/boolean-values/optional/input.d.ts | 1 + .../test/boolean-values/required/input.d.ts | 1 + .../test/code-order/input.d.ts | 2 + .../test/default-value/input.d.ts | 1 + .../test/generator/html-elements/input.d.ts | 1 + .../test/generic/input.d.ts | 1 + .../test/getThemeProps/input.d.ts | 2 + .../test/omit-conditional/input.d.ts | 1 + .../overloaded-function-component/input.d.ts | 2 + .../test/partial-any-props/input.d.ts | 1 + .../test/propTypes-casting/input.tsx | 2 + .../test/reconcile-prop-types/input.d.ts | 2 + .../test/sort-unions/input.d.ts | 1 + .../test/union-props/input.d.ts | 1 + packages/mui-base/src/Button/Button.tsx | 2 +- .../ClickAwayListener/ClickAwayListener.tsx | 4 +- packages/mui-base/src/FocusTrap/FocusTrap.tsx | 4 +- packages/mui-base/src/NoSsr/NoSsr.tsx | 4 +- packages/mui-base/src/Option/Option.types.ts | 2 + packages/mui-base/src/Select/Select.types.ts | 2 + packages/mui-base/src/Tab/Tab.tsx | 2 +- .../src/useAutocomplete/useAutocomplete.d.ts | 2 +- packages/mui-base/src/useButton/useButton.ts | 2 +- .../src/useCompound/useCompound.test.tsx | 8 +-- .../src/useCompound/useCompoundParent.ts | 6 +-- packages/mui-base/src/useMenu/menuReducer.ts | 2 +- .../src/useMenuItem/useMenuItem.types.ts | 2 +- .../mui-base/src/useOption/useOption.types.ts | 2 +- packages/mui-base/src/useSlider/useSlider.ts | 6 +-- .../mui-base/src/useTabs/TabsProvider.tsx | 2 +- packages/mui-base/src/useTabs/useTabs.ts | 2 +- .../src/utils/PolymorphicComponent.ts | 2 + .../mui-base/src/utils/appendOwnerState.ts | 2 + packages/mui-base/src/utils/useMessageBus.ts | 2 +- .../mui-joy/src/Autocomplete/Autocomplete.tsx | 6 ++- packages/mui-joy/src/Button/Button.spec.tsx | 2 + packages/mui-joy/src/Button/ButtonProps.ts | 2 + .../mui-joy/src/IconButton/IconButtonProps.ts | 2 + .../src/ListItemButton/ListItemButtonProps.ts | 2 + .../mui-joy/src/MenuItem/MenuItem.test.tsx | 2 + .../mui-joy/src/MenuItem/MenuItemProps.ts | 2 + packages/mui-joy/src/Option/OptionProps.ts | 2 + packages/mui-joy/src/Select/Select.tsx | 4 +- packages/mui-joy/src/Tab/Tab.tsx | 2 +- .../ToggleButtonGroup/ToggleButtonGroup.tsx | 4 +- packages/mui-joy/src/Tooltip/Tooltip.tsx | 8 +-- .../src/Typography/Typography.spec.tsx | 2 + .../src/CalendarPicker/CalendarPicker.tsx | 4 +- .../CalendarPickerSkeleton.tsx | 4 +- .../mui-lab/src/ClockPicker/ClockPicker.tsx | 4 +- .../mui-lab/src/DatePicker/DatePicker.tsx | 4 +- .../src/DateRangePicker/DateRangePicker.ts | 2 + .../DateRangePickerDay/DateRangePickerDay.ts | 2 + .../src/DateTimePicker/DateTimePicker.tsx | 4 +- .../DesktopDatePicker/DesktopDatePicker.tsx | 4 +- .../DesktopDateRangePicker.ts | 2 + .../DesktopDateTimePicker.tsx | 4 +- .../DesktopTimePicker/DesktopTimePicker.tsx | 4 +- .../LocalizationProvider.tsx | 4 +- .../src/MobileDatePicker/MobileDatePicker.tsx | 4 +- .../MobileDateRangePicker.ts | 2 + .../MobileDateTimePicker.tsx | 4 +- .../src/MobileTimePicker/MobileTimePicker.tsx | 4 +- .../mui-lab/src/MonthPicker/MonthPicker.tsx | 4 +- .../mui-lab/src/PickersDay/PickersDay.tsx | 4 +- .../src/StaticDatePicker/StaticDatePicker.tsx | 4 +- .../StaticDateRangePicker.ts | 2 + .../StaticDateTimePicker.tsx | 4 +- .../src/StaticTimePicker/StaticTimePicker.tsx | 4 +- .../mui-lab/src/TabContext/TabContext.d.ts | 2 + packages/mui-lab/src/TabPanel/TabPanel.d.ts | 2 + .../mui-lab/src/TimePicker/TimePicker.tsx | 4 +- .../TimelineConnector/TimelineConnector.d.ts | 2 + .../src/TimelineContent/TimelineContent.d.ts | 2 + .../mui-lab/src/TimelineDot/TimelineDot.d.ts | 2 + .../src/TimelineItem/TimelineItem.d.ts | 2 + .../TimelineOppositeContent.d.ts | 2 + .../TimelineSeparator/TimelineSeparator.d.ts | 2 + packages/mui-lab/src/TreeItem/TreeItem.tsx | 4 +- packages/mui-lab/src/TreeView/TreeView.tsx | 4 +- .../mui-lab/src/YearPicker/YearPicker.tsx | 4 +- .../src/Button/Button.types.ts | 2 + .../src/ButtonBase/ButtonBase.types.ts | 2 + .../src/ButtonBase/Ripple.tsx | 4 +- .../src/ButtonBase/TouchRipple.tsx | 2 +- .../src/ButtonBase/useTouchRipple.ts | 2 +- .../src/FilledInput/FilledInput.tsx | 4 +- .../src/InputBase/InputBase.tsx | 6 ++- .../src/ListItemAvatar/ListItemAvatar.d.ts | 2 + .../src/ListItemIcon/ListItemIcon.d.ts | 2 + .../ListItemSecondaryAction.d.ts | 2 + .../src/ListItemText/ListItemText.d.ts | 2 + .../src/OutlinedInput/OutlinedInput.d.ts | 2 + .../mui-material-next/src/Select/Select.d.ts | 2 + .../src/Snackbar/Snackbar.d.ts | 2 + .../src/SnackbarContent/SnackbarContent.d.ts | 2 + .../src/TabScrollButton/TabScrollButton.d.ts | 2 + .../pagesRouterV13Document.tsx | 6 ++- .../AccordionActions/AccordionActions.d.ts | 2 + .../AccordionDetails/AccordionDetails.d.ts | 2 + packages/mui-material/src/Alert/Alert.d.ts | 2 + .../src/AlertTitle/AlertTitle.d.ts | 2 + .../src/Autocomplete/Autocomplete.d.ts | 2 + .../src/AvatarGroup/AvatarGroup.d.ts | 2 + packages/mui-material/src/Button/Button.d.ts | 2 + .../src/ButtonBase/ButtonBase.d.ts | 2 + .../src/CardActions/CardActions.d.ts | 2 + .../src/CardHeader/CardHeader.d.ts | 2 + .../mui-material/src/Checkbox/Checkbox.d.ts | 2 + .../CircularProgress/CircularProgress.d.ts | 2 + .../mui-material/src/Collapse/Collapse.d.ts | 2 + .../src/CssBaseline/CssBaseline.d.ts | 2 + packages/mui-material/src/Dialog/Dialog.d.ts | 2 + .../src/DialogActions/DialogActions.d.ts | 2 + .../src/DialogContent/DialogContent.d.ts | 2 + packages/mui-material/src/Drawer/Drawer.d.ts | 2 + packages/mui-material/src/Fade/Fade.d.ts | 2 + .../src/FilledInput/FilledInput.d.ts | 2 + .../FormControlLabel/FormControlLabel.d.ts | 2 + .../mui-material/src/FormGroup/FormGroup.d.ts | 2 + packages/mui-material/src/Grow/Grow.d.ts | 2 + .../ImageListItemBar/ImageListItemBar.d.ts | 2 + packages/mui-material/src/Input/Input.d.ts | 2 + .../mui-material/src/InputBase/InputBase.d.ts | 2 + .../src/LinearProgress/LinearProgress.d.ts | 2 + .../src/ListItemAvatar/ListItemAvatar.d.ts | 2 + .../src/ListItemIcon/ListItemIcon.d.ts | 2 + .../ListItemSecondaryAction.d.ts | 2 + .../src/ListItemText/ListItemText.d.ts | 2 + packages/mui-material/src/Menu/Menu.d.ts | 2 + .../src/MobileStepper/MobileStepper.d.ts | 2 + .../src/NativeSelect/NativeSelect.d.ts | 2 + .../src/OutlinedInput/OutlinedInput.d.ts | 2 + .../src/OverridableComponent.d.ts | 2 + .../src/Pagination/Pagination.d.ts | 2 + .../mui-material/src/Popover/Popover.d.ts | 2 + packages/mui-material/src/Radio/Radio.d.ts | 2 + .../src/RadioGroup/RadioGroup.d.ts | 2 + packages/mui-material/src/Rating/Rating.d.ts | 2 + packages/mui-material/src/Select/Select.d.ts | 2 + packages/mui-material/src/Slide/Slide.d.ts | 2 + .../mui-material/src/Snackbar/Snackbar.d.ts | 2 + .../src/SnackbarContent/SnackbarContent.d.ts | 2 + .../mui-material/src/SpeedDial/SpeedDial.d.ts | 2 + .../src/SpeedDialAction/SpeedDialAction.d.ts | 2 + .../src/SpeedDialIcon/SpeedDialIcon.d.ts | 2 + .../src/StepConnector/StepConnector.d.ts | 2 + .../src/StepContent/StepContent.d.ts | 2 + .../mui-material/src/StepIcon/StepIcon.d.ts | 2 + .../mui-material/src/StepLabel/StepLabel.d.ts | 2 + packages/mui-material/src/Switch/Switch.d.ts | 2 + .../src/TabScrollButton/TabScrollButton.d.ts | 2 + .../mui-material/src/TableCell/TableCell.d.ts | 2 + .../mui-material/src/TextField/TextField.d.ts | 2 + .../ToggleButtonGroup/ToggleButtonGroup.d.ts | 2 + .../mui-material/src/Tooltip/Tooltip.d.ts | 2 + .../src/Typography/typography.spec.tsx | 2 + packages/mui-material/src/Zoom/Zoom.d.ts | 2 + .../types/OverridableComponentAugmentation.ts | 2 + .../src/useTouchRipple/useTouchRipple.ts | 2 +- .../StyledEngineProvider.d.ts | 2 + packages/mui-styled-engine-sc/src/index.d.ts | 2 + .../StyledEngineProvider.d.ts | 2 + packages/mui-styled-engine/src/index.d.ts | 2 + packages/mui-styles/src/styled/styled.d.ts | 2 + .../mui-styles/src/withTheme/withTheme.d.ts | 2 + .../OverridableComponentAugmentation.ts | 2 + packages/mui-types/index.d.ts | 2 + packages/mui-utils/src/setRef/setRef.spec.tsx | 2 +- packages/pigment-css-react/src/Box.d.ts | 2 + packages/pigment-css-react/src/base.d.ts | 2 + packages/pigment-css-react/src/styled.d.ts | 2 + .../test-utils/src/describeConformance.tsx | 2 + 195 files changed, 424 insertions(+), 92 deletions(-) diff --git a/apps/local-ui-lib/index.d.ts b/apps/local-ui-lib/index.d.ts index a24be41b8decc5..b75eef8c52d38c 100644 --- a/apps/local-ui-lib/index.d.ts +++ b/apps/local-ui-lib/index.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; export const bounceAnim: string; export const Button: React.ComponentType< JSX.IntrinsicElements['button'] & { diff --git a/docs/data/base/components/popper/PlacementPopper.tsx b/docs/data/base/components/popper/PlacementPopper.tsx index ce9c2b6bb352ab..11abab658fab24 100644 --- a/docs/data/base/components/popper/PlacementPopper.tsx +++ b/docs/data/base/components/popper/PlacementPopper.tsx @@ -1,6 +1,8 @@ import * as React from 'react'; import { Popper, PopperPlacementType } from '@mui/base/Popper'; +import type { JSX } from "react"; + function Radio({ value, ...props }: JSX.IntrinsicElements['input']) { return ( diff --git a/docs/data/base/components/popup/Placement.tsx b/docs/data/base/components/popup/Placement.tsx index f32a105d6478ac..a8dae147c3b4c9 100644 --- a/docs/data/base/components/popup/Placement.tsx +++ b/docs/data/base/components/popup/Placement.tsx @@ -5,6 +5,8 @@ import { } from '@mui/base/Unstable_Popup'; import { styled, css, Theme } from '@mui/system'; +import type { JSX } from "react"; + function Radio({ value, ...props }: JSX.IntrinsicElements['input']) { return ( diff --git a/docs/data/base/components/select/UnstyledSelectBasic/system/index.tsx b/docs/data/base/components/select/UnstyledSelectBasic/system/index.tsx index 615de264e9779b..78568823d2a12d 100644 --- a/docs/data/base/components/select/UnstyledSelectBasic/system/index.tsx +++ b/docs/data/base/components/select/UnstyledSelectBasic/system/index.tsx @@ -9,6 +9,8 @@ import { Option as BaseOption, optionClasses } from '@mui/base/Option'; import { styled } from '@mui/system'; import UnfoldMoreRoundedIcon from '@mui/icons-material/UnfoldMoreRounded'; +import type { JSX } from "react"; + const Select = React.forwardRef(function Select< TValue extends {}, Multiple extends boolean, diff --git a/docs/data/base/components/select/UnstyledSelectForm.tsx b/docs/data/base/components/select/UnstyledSelectForm.tsx index 114d64115e0a0c..49d11cf1a019e1 100644 --- a/docs/data/base/components/select/UnstyledSelectForm.tsx +++ b/docs/data/base/components/select/UnstyledSelectForm.tsx @@ -9,6 +9,8 @@ import { Option as BaseOption, optionClasses } from '@mui/base/Option'; import { styled } from '@mui/system'; import UnfoldMoreRoundedIcon from '@mui/icons-material/UnfoldMoreRounded'; +import type { JSX } from "react"; + export default function UnstyledSelectForm() { const handleSubmit = (event: React.FormEvent) => { event.preventDefault(); diff --git a/docs/data/base/getting-started/accessibility/KeyboardNavigation.tsx b/docs/data/base/getting-started/accessibility/KeyboardNavigation.tsx index 917e340d1ea07d..91260a690669f2 100644 --- a/docs/data/base/getting-started/accessibility/KeyboardNavigation.tsx +++ b/docs/data/base/getting-started/accessibility/KeyboardNavigation.tsx @@ -13,6 +13,8 @@ import { MenuItem as BaseMenuItem, menuItemClasses } from '@mui/base/MenuItem'; import { styled, alpha } from '@mui/system'; import UnfoldMoreRoundedIcon from '@mui/icons-material/UnfoldMoreRounded'; +import type { JSX } from "react"; + export default function KeyboardNavigation() { return ( diff --git a/docs/data/joy/components/autocomplete/AutocompleteHint.tsx b/docs/data/joy/components/autocomplete/AutocompleteHint.tsx index 4b8ff21f8a4d04..2527bb1ee2a6fd 100644 --- a/docs/data/joy/components/autocomplete/AutocompleteHint.tsx +++ b/docs/data/joy/components/autocomplete/AutocompleteHint.tsx @@ -2,6 +2,8 @@ import * as React from 'react'; import Autocomplete from '@mui/joy/Autocomplete'; import { Typography, styled } from '@mui/joy'; +import type { JSX } from "react"; + const StyledDiv = styled('div')({ flex: 1, // stretch to fill the root slot minWidth: 0, // won't push end decorator out of the autocomplete diff --git a/docs/data/joy/components/input/DebouncedInput.tsx b/docs/data/joy/components/input/DebouncedInput.tsx index 927d37954daedf..72dad69deb4e14 100644 --- a/docs/data/joy/components/input/DebouncedInput.tsx +++ b/docs/data/joy/components/input/DebouncedInput.tsx @@ -11,7 +11,7 @@ type DebounceProps = { function DebounceInput(props: InputProps & DebounceProps) { const { handleDebounce, debounceTimeout, ...rest } = props; - const timerRef = React.useRef>(); + const timerRef = React.useRef>(undefined); const handleChange = (event: React.ChangeEvent) => { clearTimeout(timerRef.current); diff --git a/docs/data/joy/components/input/FloatingLabelInput.tsx b/docs/data/joy/components/input/FloatingLabelInput.tsx index 521eb66351af7c..c84cd149df598d 100644 --- a/docs/data/joy/components/input/FloatingLabelInput.tsx +++ b/docs/data/joy/components/input/FloatingLabelInput.tsx @@ -3,6 +3,8 @@ import { styled } from '@mui/joy/styles'; import Input from '@mui/joy/Input'; import CheckCircleOutlined from '@mui/icons-material/CheckCircleOutlined'; +import type { JSX } from "react"; + const StyledInput = styled('input')({ border: 'none', // remove the native input border minWidth: 0, // remove the native input width diff --git a/docs/data/joy/components/menu/MenuToolbarExample.tsx b/docs/data/joy/components/menu/MenuToolbarExample.tsx index d2cead8ad4fa98..fc120841c12309 100644 --- a/docs/data/joy/components/menu/MenuToolbarExample.tsx +++ b/docs/data/joy/components/menu/MenuToolbarExample.tsx @@ -10,6 +10,8 @@ import Dropdown, { DropdownProps } from '@mui/joy/Dropdown'; import MenuButton from '@mui/joy/MenuButton'; import { Theme } from '@mui/joy'; +import type { JSX } from "react"; + type MenuBarButtonProps = Pick & { onOpen: DropdownProps['onOpenChange']; onKeyDown: React.KeyboardEventHandler; diff --git a/docs/data/joy/components/snackbar/SnackbarHideDuration.tsx b/docs/data/joy/components/snackbar/SnackbarHideDuration.tsx index c98174c2cf33c5..8b2543bc84fe47 100644 --- a/docs/data/joy/components/snackbar/SnackbarHideDuration.tsx +++ b/docs/data/joy/components/snackbar/SnackbarHideDuration.tsx @@ -10,7 +10,7 @@ export default function SnackbarHideDuration() { const [open, setOpen] = React.useState(false); const [duration, setDuration] = React.useState(); const [left, setLeft] = React.useState(); - const timer = React.useRef(); + const timer = React.useRef(undefined); const countdown = () => { timer.current = window.setInterval(() => { setLeft((prev) => (prev === undefined ? prev : Math.max(0, prev - 100))); diff --git a/docs/data/joy/components/textarea/FloatingLabelTextarea.tsx b/docs/data/joy/components/textarea/FloatingLabelTextarea.tsx index 0115794252e0a7..eb13a9ba3606d4 100644 --- a/docs/data/joy/components/textarea/FloatingLabelTextarea.tsx +++ b/docs/data/joy/components/textarea/FloatingLabelTextarea.tsx @@ -3,6 +3,8 @@ import { TextareaAutosize } from '@mui/base/TextareaAutosize'; import { styled } from '@mui/joy/styles'; import Textarea from '@mui/joy/Textarea'; +import type { JSX } from "react"; + const StyledTextarea = styled(TextareaAutosize)({ resize: 'none', border: 'none', // remove the native textarea border diff --git a/docs/data/material/components/progress/CircularIntegration.tsx b/docs/data/material/components/progress/CircularIntegration.tsx index c32a5957a42fb8..5f6020368f8e3c 100644 --- a/docs/data/material/components/progress/CircularIntegration.tsx +++ b/docs/data/material/components/progress/CircularIntegration.tsx @@ -10,7 +10,7 @@ import SaveIcon from '@mui/icons-material/Save'; export default function CircularIntegration() { const [loading, setLoading] = React.useState(false); const [success, setSuccess] = React.useState(false); - const timer = React.useRef>(); + const timer = React.useRef>(undefined); const buttonSx = { ...(success && { diff --git a/docs/data/material/components/progress/DelayingAppearance.tsx b/docs/data/material/components/progress/DelayingAppearance.tsx index a6784fd2d359d8..986578b2e4e1c1 100644 --- a/docs/data/material/components/progress/DelayingAppearance.tsx +++ b/docs/data/material/components/progress/DelayingAppearance.tsx @@ -8,7 +8,7 @@ import Typography from '@mui/material/Typography'; export default function DelayingAppearance() { const [loading, setLoading] = React.useState(false); const [query, setQuery] = React.useState('idle'); - const timerRef = React.useRef>(); + const timerRef = React.useRef>(undefined); React.useEffect( () => () => { diff --git a/docs/src/components/header/HeaderNavBar.tsx b/docs/src/components/header/HeaderNavBar.tsx index 6a62f99818448c..81d1b057bd7aab 100644 --- a/docs/src/components/header/HeaderNavBar.tsx +++ b/docs/src/components/header/HeaderNavBar.tsx @@ -14,6 +14,8 @@ import ROUTES from 'docs/src/route'; import { Link } from '@mui/docs/Link'; import MuiProductSelector from 'docs/src/modules/components/MuiProductSelector'; +import type { JSX } from "react"; + const Navigation = styled('nav')(({ theme }) => [ { '& > div': { diff --git a/docs/src/components/home/StoreTemplatesBanner.tsx b/docs/src/components/home/StoreTemplatesBanner.tsx index b71858367e3545..c0d004fe0ef00d 100644 --- a/docs/src/components/home/StoreTemplatesBanner.tsx +++ b/docs/src/components/home/StoreTemplatesBanner.tsx @@ -6,6 +6,8 @@ import LaunchRounded from '@mui/icons-material/LaunchRounded'; import Slide from 'docs/src/components/animation/Slide'; import FadeDelay from 'docs/src/components/animation/FadeDelay'; +import type { JSX } from "react"; + const ratio = 900 / 494; // 'transparent' is interpreted as transparent black in Safari diff --git a/docs/src/components/icon/IconImage.tsx b/docs/src/components/icon/IconImage.tsx index 0e6c75d91ed790..202154a71e8537 100644 --- a/docs/src/components/icon/IconImage.tsx +++ b/docs/src/components/icon/IconImage.tsx @@ -3,6 +3,8 @@ import { useTheme, styled, Theme } from '@mui/material/styles'; import Box from '@mui/material/Box'; import { SxProps } from '@mui/system'; +import type { JSX } from "react"; + export type IconImageProps = { name: | 'product-core' diff --git a/docs/src/components/markdown/MarkdownElement.tsx b/docs/src/components/markdown/MarkdownElement.tsx index 37eda97a4d1289..9eece3c04f8117 100644 --- a/docs/src/components/markdown/MarkdownElement.tsx +++ b/docs/src/components/markdown/MarkdownElement.tsx @@ -6,6 +6,8 @@ import { styled, } from '@mui/material/styles'; +import type { JSX } from "react"; + const Root = styled('div')(({ theme }) => ({ ...theme.typography.caption, color: (theme.vars || theme).palette.text.primary, diff --git a/docs/src/components/productBaseUI/components/BaseInputDemo.tsx b/docs/src/components/productBaseUI/components/BaseInputDemo.tsx index 0e29c4cf49ec7b..bc7577fe5b6edc 100644 --- a/docs/src/components/productBaseUI/components/BaseInputDemo.tsx +++ b/docs/src/components/productBaseUI/components/BaseInputDemo.tsx @@ -5,6 +5,8 @@ import Box from '@mui/material/Box'; import { Input } from '@mui/base/Input'; import { styled, GlobalStyles } from '@mui/system'; +import type { JSX } from "react"; + const fieldStyles = ` --TextInput-height: 64px; --TextInput-paddingTop: 2rem; diff --git a/docs/src/modules/utils/useClipboardCopy.ts b/docs/src/modules/utils/useClipboardCopy.ts index dd0b3b618b8e3e..923a36be1ea5de 100644 --- a/docs/src/modules/utils/useClipboardCopy.ts +++ b/docs/src/modules/utils/useClipboardCopy.ts @@ -3,7 +3,7 @@ import clipboardCopy from 'clipboard-copy'; export default function useClipboardCopy() { const [isCopied, setIsCopied] = React.useState(false); - const timeout = React.useRef>(); + const timeout = React.useRef>(undefined); const mounted = React.useRef(false); React.useEffect(() => { diff --git a/docs/src/pages/premium-themes/onepirate/modules/withRoot.tsx b/docs/src/pages/premium-themes/onepirate/modules/withRoot.tsx index e2d99a652a1988..0557e05d1f5ed5 100644 --- a/docs/src/pages/premium-themes/onepirate/modules/withRoot.tsx +++ b/docs/src/pages/premium-themes/onepirate/modules/withRoot.tsx @@ -3,6 +3,8 @@ import { ThemeProvider } from '@mui/material/styles'; import CssBaseline from '@mui/material/CssBaseline'; import theme from './theme'; +import type { JSX } from "react"; + export default function withRoot

( Component: React.ComponentType

, ) { diff --git a/docs/types/docs.d.ts b/docs/types/docs.d.ts index ccfe104621b766..4bed46ca662e10 100644 --- a/docs/types/docs.d.ts +++ b/docs/types/docs.d.ts @@ -1,29 +1,31 @@ declare module 'docs/src/modules/components/HighlightedCode' { - import * as React from 'react'; - import { StyledComponentProps } from '@mui/material/styles'; + import * as React from 'react'; + import { StyledComponentProps } from '@mui/material/styles'; - type ClassKey = 'root'; - export interface Props extends StyledComponentProps { - className?: string; - /** - * plain string - */ - code: string; - copyButtonHidden?: boolean; - copyButtonProps?: JSX.IntrinsicElements['button']; - /** - * short identifier of the code language - * see @mui/internal-markdown/prism for possible languages - */ - language: string; - /** - * The component used for the root node. - * @default MarkdownElement - */ - component?: React.ElementType; - sx?: object; - } - export default function HighlightedCode(props: Props): React.ReactElement; + import type { JSX } from "react"; + + type ClassKey = 'root'; + export interface Props extends StyledComponentProps { + className?: string; + /** + * plain string + */ + code: string; + copyButtonHidden?: boolean; + copyButtonProps?: JSX.IntrinsicElements['button']; + /** + * short identifier of the code language + * see @mui/internal-markdown/prism for possible languages + */ + language: string; + /** + * The component used for the root node. + * @default MarkdownElement + */ + component?: React.ElementType; + sx?: object; + } + export default function HighlightedCode(props: Props): React.ReactElement; } declare module 'react-imask'; diff --git a/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/optional/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/optional/input.d.ts index 953ef5a74ea240..d6c9f83afa7dad 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/optional/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/optional/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; type Props = { foo?: boolean; bar?: true; diff --git a/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/required/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/required/input.d.ts index 5567ba9073b92c..119ac87eab5c8e 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/required/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/boolean-values/required/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; type Props = { foo: boolean; bar: true; diff --git a/packages-internal/scripts/typescript-to-proptypes/test/code-order/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/code-order/input.d.ts index 4aeb223970ab39..aa6b1ba113d59a 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/code-order/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/code-order/input.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + export interface Props { value: unknown; } diff --git a/packages-internal/scripts/typescript-to-proptypes/test/default-value/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/default-value/input.d.ts index 013e60b90d7ae4..51bf250bf855ff 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/default-value/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/default-value/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; interface Props { /** * The type of the button relevant to its `

`. diff --git a/packages-internal/scripts/typescript-to-proptypes/test/generator/html-elements/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/generator/html-elements/input.d.ts index ae12666f21c37d..38ac16b9b8253e 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/generator/html-elements/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/generator/html-elements/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; export function Foo(props: { element: Element; optional?: Element; diff --git a/packages-internal/scripts/typescript-to-proptypes/test/generic/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/generic/input.d.ts index a9e29a70c9b050..628f0f44bda443 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/generic/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/generic/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; type Type = 'one' | 'two' | 'three' interface ParentProps { diff --git a/packages-internal/scripts/typescript-to-proptypes/test/getThemeProps/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/getThemeProps/input.d.ts index 6c9d2db1d951be..c66e6ca79d2f5d 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/getThemeProps/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/getThemeProps/input.d.ts @@ -1,3 +1,5 @@ import * as React from 'react'; +import type { JSX } from "react"; + export default function Modal(props: React.HTMLAttributes): JSX.Element; diff --git a/packages-internal/scripts/typescript-to-proptypes/test/omit-conditional/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/omit-conditional/input.d.ts index 6a1e4b7aedd2ba..8e1d6dbc1054f1 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/omit-conditional/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/omit-conditional/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; type TextFieldProps = A extends true ? { testProp: string } : { testProp: boolean } type Props = Omit, 'b'> diff --git a/packages-internal/scripts/typescript-to-proptypes/test/overloaded-function-component/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/overloaded-function-component/input.d.ts index d9fddc0e5f9303..43f1e5134f041f 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/overloaded-function-component/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/overloaded-function-component/input.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + interface ButtonProps { variant?: string; } diff --git a/packages-internal/scripts/typescript-to-proptypes/test/partial-any-props/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/partial-any-props/input.d.ts index 03a37509db9dac..7c65ab55fbf188 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/partial-any-props/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/partial-any-props/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; type Props = { foo: any; }; diff --git a/packages-internal/scripts/typescript-to-proptypes/test/propTypes-casting/input.tsx b/packages-internal/scripts/typescript-to-proptypes/test/propTypes-casting/input.tsx index 7c16789e21a3bf..84864e8fca233c 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/propTypes-casting/input.tsx +++ b/packages-internal/scripts/typescript-to-proptypes/test/propTypes-casting/input.tsx @@ -1,6 +1,8 @@ import * as React from 'react'; import PropTypes from 'prop-types'; +import type { JSX } from "react"; + // empty props are likely a mistake. // We want to make sure we catch this instead of keeping .propTypes export default function Component(props: {}): JSX.Element { diff --git a/packages-internal/scripts/typescript-to-proptypes/test/reconcile-prop-types/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/reconcile-prop-types/input.d.ts index 6e43fc6bc542bb..86e963cdbe0c2f 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/reconcile-prop-types/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/reconcile-prop-types/input.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + interface Props { children?: React.ReactNode; } diff --git a/packages-internal/scripts/typescript-to-proptypes/test/sort-unions/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/sort-unions/input.d.ts index 5379600ee91549..6c8e905a892626 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/sort-unions/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/sort-unions/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; type Breakpoint = 'xs' | 'md' | 'xl'; export interface Props { diff --git a/packages-internal/scripts/typescript-to-proptypes/test/union-props/input.d.ts b/packages-internal/scripts/typescript-to-proptypes/test/union-props/input.d.ts index 551c9bcf1002ff..e021ac1f0c45d1 100644 --- a/packages-internal/scripts/typescript-to-proptypes/test/union-props/input.d.ts +++ b/packages-internal/scripts/typescript-to-proptypes/test/union-props/input.d.ts @@ -1,3 +1,4 @@ +import type { JSX } from "react"; export interface BaseProps { value?: unknown; } diff --git a/packages/mui-base/src/Button/Button.tsx b/packages/mui-base/src/Button/Button.tsx index 816c3e9c4f1c71..c8aa4e336911a6 100644 --- a/packages/mui-base/src/Button/Button.tsx +++ b/packages/mui-base/src/Button/Button.tsx @@ -46,7 +46,7 @@ const Button = React.forwardRef(function Button(); + const buttonRef = React.useRef(undefined); let rootElementName = rootElementNameProp; diff --git a/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx b/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx index dbdfcee7f097d1..f0219d88fca4ed 100644 --- a/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx +++ b/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; import * as React from 'react'; import PropTypes from 'prop-types'; import { @@ -9,6 +9,8 @@ import { unstable_useEventCallback as useEventCallback, } from '@mui/utils'; +import type { JSX } from "react"; + // TODO: return `EventHandlerName extends `on${infer EventName}` ? Lowercase : never` once generatePropTypes runs with TS 4.1 function mapEventPropToEvent( eventProp: ClickAwayMouseEventHandler | ClickAwayTouchEventHandler, diff --git a/packages/mui-base/src/FocusTrap/FocusTrap.tsx b/packages/mui-base/src/FocusTrap/FocusTrap.tsx index bd52658ac9b7df..4fa942f70e11a8 100644 --- a/packages/mui-base/src/FocusTrap/FocusTrap.tsx +++ b/packages/mui-base/src/FocusTrap/FocusTrap.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; /* eslint-disable consistent-return, jsx-a11y/no-noninteractive-tabindex */ import * as React from 'react'; import PropTypes from 'prop-types'; @@ -10,6 +10,8 @@ import { } from '@mui/utils'; import { FocusTrapProps } from './FocusTrap.types'; +import type { JSX } from "react"; + // Inspired by https://github.com/focus-trap/tabbable const candidatesSelector = [ 'input', diff --git a/packages/mui-base/src/NoSsr/NoSsr.tsx b/packages/mui-base/src/NoSsr/NoSsr.tsx index e2abe25adfb3fd..535bbfb4d228b9 100644 --- a/packages/mui-base/src/NoSsr/NoSsr.tsx +++ b/packages/mui-base/src/NoSsr/NoSsr.tsx @@ -1,9 +1,11 @@ -'use client'; +'use client';; import * as React from 'react'; import PropTypes from 'prop-types'; import { exactProp, unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils'; import { NoSsrProps } from './NoSsr.types'; +import type { JSX } from "react"; + /** * NoSsr purposely removes components from the subject of Server Side Rendering (SSR). * diff --git a/packages/mui-base/src/Option/Option.types.ts b/packages/mui-base/src/Option/Option.types.ts index 3e08daa5712c90..c15acf5cb1bbe7 100644 --- a/packages/mui-base/src/Option/Option.types.ts +++ b/packages/mui-base/src/Option/Option.types.ts @@ -3,6 +3,8 @@ import { Simplify } from '@mui/types'; import { UseOptionRootSlotProps } from '../useOption'; import { PolymorphicProps, SlotComponentProps } from '../utils'; +import type { JSX } from "react"; + export interface OptionRootSlotPropsOverrides {} export interface OptionOwnProps { diff --git a/packages/mui-base/src/Select/Select.types.ts b/packages/mui-base/src/Select/Select.types.ts index cca29cc508554d..e90f1d5add2f82 100644 --- a/packages/mui-base/src/Select/Select.types.ts +++ b/packages/mui-base/src/Select/Select.types.ts @@ -5,6 +5,8 @@ import { SelectOption } from '../useOption'; import { PopupProps } from '../Unstable_Popup'; import { PolymorphicProps, SlotComponentProps } from '../utils'; +import type { JSX } from "react"; + export interface SelectRootSlotPropsOverrides {} export interface SelectListboxSlotPropsOverrides {} export interface SelectPopupSlotPropsOverrides {} diff --git a/packages/mui-base/src/Tab/Tab.tsx b/packages/mui-base/src/Tab/Tab.tsx index d63b03374d05bd..af63d294b1aefa 100644 --- a/packages/mui-base/src/Tab/Tab.tsx +++ b/packages/mui-base/src/Tab/Tab.tsx @@ -45,7 +45,7 @@ const Tab = React.forwardRef(function Tab(); + const tabRef = React.useRef(undefined); const handleRef = useForkRef(tabRef, forwardedRef); const { active, highlighted, selected, getRootProps } = useTab({ diff --git a/packages/mui-base/src/useAutocomplete/useAutocomplete.d.ts b/packages/mui-base/src/useAutocomplete/useAutocomplete.d.ts index d2c3776efe883a..c8a4a8bdd546e9 100644 --- a/packages/mui-base/src/useAutocomplete/useAutocomplete.d.ts +++ b/packages/mui-base/src/useAutocomplete/useAutocomplete.d.ts @@ -49,7 +49,7 @@ export interface UseAutocompleteProps< * Temporary for Joy UI because the parent listbox is the document object * TODO v6: Normalize the logic and remove this param. */ - unstable_isActiveElementInListbox?: (listbox: React.RefObject) => boolean; + unstable_isActiveElementInListbox?: (listbox: React.RefObject) => boolean; /** * If `true`, the portion of the selected suggestion that the user hasn't typed, * known as the completion string, appears inline after the input cursor in the textbox. diff --git a/packages/mui-base/src/useButton/useButton.ts b/packages/mui-base/src/useButton/useButton.ts index 0c6b5da72973aa..1e7e650b5bedab 100644 --- a/packages/mui-base/src/useButton/useButton.ts +++ b/packages/mui-base/src/useButton/useButton.ts @@ -34,7 +34,7 @@ export function useButton(parameters: UseButtonParameters = {}): UseButtonReturn type, rootElementName: rootElementNameProp, } = parameters; - const buttonRef = React.useRef(); + const buttonRef = React.useRef(undefined); const [active, setActive] = React.useState(false); diff --git a/packages/mui-base/src/useCompound/useCompound.test.tsx b/packages/mui-base/src/useCompound/useCompound.test.tsx index 509e851cf6456b..4e51d94ac76afe 100644 --- a/packages/mui-base/src/useCompound/useCompound.test.tsx +++ b/packages/mui-base/src/useCompound/useCompound.test.tsx @@ -4,7 +4,7 @@ import { render } from '@mui-internal/test-utils'; import { CompoundComponentContext, useCompoundParent } from './useCompoundParent'; import { useCompoundItem } from './useCompoundItem'; -type ItemValue = { value: string; ref: React.RefObject }; +type ItemValue = { value: string; ref: React.RefObject }; describe('compound components', () => { describe('useCompoundParent', () => { @@ -188,7 +188,7 @@ describe('compound components', () => { const { children } = props; const { contextValue } = useCompoundParent< string, - { ref: React.RefObject } + { ref: React.RefObject } >(); return ( @@ -240,7 +240,7 @@ describe('compound components', () => { const { children } = props; const { contextValue } = useCompoundParent< number, - { ref: React.RefObject } + { ref: React.RefObject } >(); return ( @@ -256,7 +256,7 @@ describe('compound components', () => { function Child() { const ref = React.useRef(null); - const { id } = useCompoundItem }>( + const { id } = useCompoundItem }>( idGenerator, React.useMemo(() => ({ ref }), []), ); diff --git a/packages/mui-base/src/useCompound/useCompoundParent.ts b/packages/mui-base/src/useCompound/useCompoundParent.ts index 8cc2dad24b6efe..ab637546c723dc 100644 --- a/packages/mui-base/src/useCompound/useCompoundParent.ts +++ b/packages/mui-base/src/useCompound/useCompoundParent.ts @@ -47,7 +47,7 @@ if (process.env.NODE_ENV !== 'production') { CompoundComponentContext.displayName = 'CompoundComponentContext'; } -export interface UseCompoundParentReturnValue }> { +export interface UseCompoundParentReturnValue }> { /** * The value for the CompoundComponentContext provider. */ @@ -63,7 +63,7 @@ export interface UseCompoundParentReturnValue }>( +function sortSubitems }>( subitems: Map, ) { const subitemsArray = Array.from(subitems.keys()).map((key) => { @@ -100,7 +100,7 @@ function sortSubitems }>( */ export function useCompoundParent< Key, - Subitem extends { ref: React.RefObject }, + Subitem extends { ref: React.RefObject }, >(): UseCompoundParentReturnValue { const [subitems, setSubitems] = React.useState(new Map()); const subitemKeys = React.useRef(new Set()); diff --git a/packages/mui-base/src/useMenu/menuReducer.ts b/packages/mui-base/src/useMenu/menuReducer.ts index 74ffc00361bbe0..ecdf640b4fe16f 100644 --- a/packages/mui-base/src/useMenu/menuReducer.ts +++ b/packages/mui-base/src/useMenu/menuReducer.ts @@ -3,7 +3,7 @@ import { ActionWithContext } from '../utils/useControllableReducer.types'; import { MenuInternalState } from './useMenu.types'; export type MenuActionContext = ListActionContext & { - listboxRef: React.RefObject; + listboxRef: React.RefObject; }; export function menuReducer( diff --git a/packages/mui-base/src/useMenuItem/useMenuItem.types.ts b/packages/mui-base/src/useMenuItem/useMenuItem.types.ts index 8f5231685ec892..ed8ea501838a62 100644 --- a/packages/mui-base/src/useMenuItem/useMenuItem.types.ts +++ b/packages/mui-base/src/useMenuItem/useMenuItem.types.ts @@ -11,7 +11,7 @@ export interface MenuItemMetadata { id: string; disabled: boolean; label?: string; - ref: React.RefObject; + ref: React.RefObject; } export type UseMenuItemRootSlotProps = ExternalProps & diff --git a/packages/mui-base/src/useOption/useOption.types.ts b/packages/mui-base/src/useOption/useOption.types.ts index 0bc3ee4cf14d23..e64f59bef52229 100644 --- a/packages/mui-base/src/useOption/useOption.types.ts +++ b/packages/mui-base/src/useOption/useOption.types.ts @@ -4,7 +4,7 @@ export interface SelectOption { value: Value; label: React.ReactNode; disabled?: boolean; - ref: React.RefObject; + ref: React.RefObject; id?: string; } diff --git a/packages/mui-base/src/useSlider/useSlider.ts b/packages/mui-base/src/useSlider/useSlider.ts index 7739bab422238c..e99ae5befd541a 100644 --- a/packages/mui-base/src/useSlider/useSlider.ts +++ b/packages/mui-base/src/useSlider/useSlider.ts @@ -218,7 +218,7 @@ export function useSlider(parameters: UseSliderParameters): UseSliderReturnValue value: valueProp, } = parameters; - const touchId = React.useRef(); + const touchId = React.useRef(undefined); // We can't use the :active browser pseudo-classes. // - The active state isn't triggered when clicking on the rail. // - The active state isn't transferred when inversing a range slider. @@ -273,7 +273,7 @@ export function useSlider(parameters: UseSliderParameters): UseSliderReturnValue } = useIsFocusVisible(); const [focusedThumbIndex, setFocusedThumbIndex] = React.useState(-1); - const sliderRef = React.useRef(); + const sliderRef = React.useRef(undefined); const handleFocusRef = useForkRef(focusVisibleRef, sliderRef); const handleRef = useForkRef(ref, handleFocusRef); @@ -405,7 +405,7 @@ export function useSlider(parameters: UseSliderParameters): UseSliderReturnValue changeValue(event, event.target.valueAsNumber); }; - const previousIndex = React.useRef(); + const previousIndex = React.useRef(undefined); let axis = orientation; if (isRtl && orientation === 'horizontal') { axis += '-reverse'; diff --git a/packages/mui-base/src/useTabs/TabsProvider.tsx b/packages/mui-base/src/useTabs/TabsProvider.tsx index 31d8aebd939315..2731205d1a8511 100644 --- a/packages/mui-base/src/useTabs/TabsProvider.tsx +++ b/packages/mui-base/src/useTabs/TabsProvider.tsx @@ -5,7 +5,7 @@ import { CompoundComponentContext, CompoundComponentContextValue } from '../useC export type TabPanelMetadata = { id: string | undefined; - ref: React.RefObject; + ref: React.RefObject; }; export type TabsProviderValue = CompoundComponentContextValue & diff --git a/packages/mui-base/src/useTabs/useTabs.ts b/packages/mui-base/src/useTabs/useTabs.ts index 75994646e1266c..bf6e1d368f8f70 100644 --- a/packages/mui-base/src/useTabs/useTabs.ts +++ b/packages/mui-base/src/useTabs/useTabs.ts @@ -8,7 +8,7 @@ import { TabPanelMetadata } from './TabsProvider'; export interface TabMetadata { disabled: boolean; id: string | undefined; - ref: React.RefObject; + ref: React.RefObject; } type IdLookupFunction = (id: string | number) => string | undefined; diff --git a/packages/mui-base/src/utils/PolymorphicComponent.ts b/packages/mui-base/src/utils/PolymorphicComponent.ts index 0110cfc87ff530..b7b9510a60f42b 100644 --- a/packages/mui-base/src/utils/PolymorphicComponent.ts +++ b/packages/mui-base/src/utils/PolymorphicComponent.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { DistributiveOmit, OverridableTypeMap } from '@mui/types'; +import type { JSX } from "react"; + /** * A component whose root component can be controlled explicitly with a generic type parameter. * Adjusts valid props based on the type of `RootComponent`. diff --git a/packages/mui-base/src/utils/appendOwnerState.ts b/packages/mui-base/src/utils/appendOwnerState.ts index 0ef5e0c47a4f60..7bd5229f7c03c4 100644 --- a/packages/mui-base/src/utils/appendOwnerState.ts +++ b/packages/mui-base/src/utils/appendOwnerState.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import { Simplify } from '@mui/types'; import { isHostComponent } from './isHostComponent'; +import type { JSX } from "react"; + /** * Type of the ownerState based on the type of an element it applies to. * This resolves to the provided OwnerState for React components and `undefined` for host components. diff --git a/packages/mui-base/src/utils/useMessageBus.ts b/packages/mui-base/src/utils/useMessageBus.ts index b7246f9b0b4bce..b5a3babdfce635 100644 --- a/packages/mui-base/src/utils/useMessageBus.ts +++ b/packages/mui-base/src/utils/useMessageBus.ts @@ -40,7 +40,7 @@ export function createMessageBus(): MessageBus { * @ignore - internal hook. */ export function useMessageBus() { - const bus = React.useRef(); + const bus = React.useRef(undefined); if (!bus.current) { bus.current = createMessageBus(); } diff --git a/packages/mui-joy/src/Autocomplete/Autocomplete.tsx b/packages/mui-joy/src/Autocomplete/Autocomplete.tsx index dbbb1631332c72..7522620762a3c9 100644 --- a/packages/mui-joy/src/Autocomplete/Autocomplete.tsx +++ b/packages/mui-joy/src/Autocomplete/Autocomplete.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; @@ -43,9 +43,11 @@ import { StyledAutocompleteListbox } from '../AutocompleteListbox/AutocompleteLi import { StyledAutocompleteOption } from '../AutocompleteOption/AutocompleteOption'; import useSlot from '../utils/useSlot'; +import type { JSX } from "react"; + type OwnerState = Omit, 'onChange' | 'defaultValue'>; -const defaultIsActiveElementInListbox = (listboxRef: React.RefObject) => +const defaultIsActiveElementInListbox = (listboxRef: React.RefObject) => listboxRef.current !== null && listboxRef.current.contains(document.activeElement); // @ts-ignore const defaultGetOptionLabel = (option) => option.label ?? option; diff --git a/packages/mui-joy/src/Button/Button.spec.tsx b/packages/mui-joy/src/Button/Button.spec.tsx index 0eb33a5f726351..7f7575329e4588 100644 --- a/packages/mui-joy/src/Button/Button.spec.tsx +++ b/packages/mui-joy/src/Button/Button.spec.tsx @@ -4,6 +4,8 @@ import JoyLink from '@mui/material/Link'; import { expectType } from '@mui/types'; import Button, { ButtonOwnerState } from '@mui/joy/Button'; +import type { JSX } from "react"; + ; function handleClick(event: React.MouseEvent) {} diff --git a/packages/mui-joy/src/Button/ButtonProps.ts b/packages/mui-joy/src/Button/ButtonProps.ts index 6cb4ab2d12c8df..19ce18164afbcb 100644 --- a/packages/mui-joy/src/Button/ButtonProps.ts +++ b/packages/mui-joy/src/Button/ButtonProps.ts @@ -8,6 +8,8 @@ import { import { ColorPaletteProp, SxProps, VariantProp, ApplyColorInversion } from '../styles/types'; import { SlotProps, CreateSlotsAndSlotProps } from '../utils/types'; +import type { JSX } from "react"; + export type ButtonSlot = 'root' | 'startDecorator' | 'endDecorator' | 'loadingIndicatorCenter'; export interface ButtonSlots { diff --git a/packages/mui-joy/src/IconButton/IconButtonProps.ts b/packages/mui-joy/src/IconButton/IconButtonProps.ts index 69479718836f3d..99202fd8ae98d6 100644 --- a/packages/mui-joy/src/IconButton/IconButtonProps.ts +++ b/packages/mui-joy/src/IconButton/IconButtonProps.ts @@ -8,6 +8,8 @@ import { import { ColorPaletteProp, VariantProp, SxProps, ApplyColorInversion } from '../styles/types'; import { SlotProps, CreateSlotsAndSlotProps } from '../utils/types'; +import type { JSX } from "react"; + export type IconButtonSlot = 'root' | 'loadingIndicator'; export interface IconButtonSlots { diff --git a/packages/mui-joy/src/ListItemButton/ListItemButtonProps.ts b/packages/mui-joy/src/ListItemButton/ListItemButtonProps.ts index 54402f51c8991d..9e0d26874112fd 100644 --- a/packages/mui-joy/src/ListItemButton/ListItemButtonProps.ts +++ b/packages/mui-joy/src/ListItemButton/ListItemButtonProps.ts @@ -8,6 +8,8 @@ import { import { ColorPaletteProp, VariantProp, SxProps, ApplyColorInversion } from '../styles/types'; import { SlotProps, CreateSlotsAndSlotProps } from '../utils/types'; +import type { JSX } from "react"; + export type ListItemButtonSlot = 'root'; export interface ListItemButtonSlots { diff --git a/packages/mui-joy/src/MenuItem/MenuItem.test.tsx b/packages/mui-joy/src/MenuItem/MenuItem.test.tsx index 7492c1e39340e3..0e9820316e823a 100644 --- a/packages/mui-joy/src/MenuItem/MenuItem.test.tsx +++ b/packages/mui-joy/src/MenuItem/MenuItem.test.tsx @@ -8,6 +8,8 @@ import MenuItem, { menuItemClasses as classes } from '@mui/joy/MenuItem'; import ListItemButton from '@mui/joy/ListItemButton'; import describeConformance from '../../test/describeConformance'; +import type { JSX } from "react"; + const testContext: MenuProviderValue = { registerItem: () => ({ id: '0', deregister: () => {} }), getItemIndex: () => 0, diff --git a/packages/mui-joy/src/MenuItem/MenuItemProps.ts b/packages/mui-joy/src/MenuItem/MenuItemProps.ts index d67ec37029a28a..aadabda97f40eb 100644 --- a/packages/mui-joy/src/MenuItem/MenuItemProps.ts +++ b/packages/mui-joy/src/MenuItem/MenuItemProps.ts @@ -4,6 +4,8 @@ import { ApplyColorInversion } from '../styles/types'; import { ListItemButtonProps } from '../ListItemButton/ListItemButtonProps'; import { SlotProps, CreateSlotsAndSlotProps } from '../utils/types'; +import type { JSX } from "react"; + export type MenuItemSlot = 'root'; export interface MenuItemSlots { diff --git a/packages/mui-joy/src/Option/OptionProps.ts b/packages/mui-joy/src/Option/OptionProps.ts index e13575dfa2bcd3..1eefe47ede83c0 100644 --- a/packages/mui-joy/src/Option/OptionProps.ts +++ b/packages/mui-joy/src/Option/OptionProps.ts @@ -8,6 +8,8 @@ import { import { ColorPaletteProp, VariantProp, SxProps, ApplyColorInversion } from '../styles/types'; import { SlotProps, CreateSlotsAndSlotProps } from '../utils/types'; +import type { JSX } from "react"; + export type OptionSlot = 'root'; export interface OptionSlots { diff --git a/packages/mui-joy/src/Select/Select.tsx b/packages/mui-joy/src/Select/Select.tsx index 017fd87c2c348e..a2c94dfce2b00c 100644 --- a/packages/mui-joy/src/Select/Select.tsx +++ b/packages/mui-joy/src/Select/Select.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; @@ -26,6 +26,8 @@ import { ListOwnerState } from '../List'; import FormControlContext from '../FormControl/FormControlContext'; import { VariantColorProvider } from '../styles/variantColorInheritance'; +import type { JSX } from "react"; + function defaultRenderValue( selectedOptions: SelectOption | SelectOption[] | null, ) { diff --git a/packages/mui-joy/src/Tab/Tab.tsx b/packages/mui-joy/src/Tab/Tab.tsx index 493758e11fe364..462874be64f50a 100644 --- a/packages/mui-joy/src/Tab/Tab.tsx +++ b/packages/mui-joy/src/Tab/Tab.tsx @@ -150,7 +150,7 @@ const Tab = React.forwardRef(function Tab(inProps, ref) { ...other } = props; - const tabRef = React.useRef(); + const tabRef = React.useRef(undefined); const handleRef = useForkRef(tabRef, ref) as React.RefCallback; const { active, focusVisible, setFocusVisible, selected, getRootProps } = useTab({ diff --git a/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx b/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx index 54564bcc9c78b2..87a6878f149bc6 100644 --- a/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx +++ b/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; import * as React from 'react'; import clsx from 'clsx'; import PropTypes from 'prop-types'; @@ -22,6 +22,8 @@ import { StyledButtonGroup } from '../ButtonGroup/ButtonGroup'; import ButtonGroupContext from '../ButtonGroup/ButtonGroupContext'; import ToggleButtonGroupContext from './ToggleButtonGroupContext'; +import type { JSX } from "react"; + interface InternalChangeEventHandler { (event: React.MouseEvent, value: Value | Array | null): void; } diff --git a/packages/mui-joy/src/Tooltip/Tooltip.tsx b/packages/mui-joy/src/Tooltip/Tooltip.tsx index 531d3a8b288c1b..ebfbdfcf3a1050 100644 --- a/packages/mui-joy/src/Tooltip/Tooltip.tsx +++ b/packages/mui-joy/src/Tooltip/Tooltip.tsx @@ -261,7 +261,7 @@ const Tooltip = React.forwardRef(function Tooltip(inProps, ref) { const id = useId(idProp); - const prevUserSelect: React.MutableRefObject = React.useRef(); + const prevUserSelect: React.MutableRefObject = React.useRef(undefined); const stopTouchInteraction = useEventCallback(() => { if (prevUserSelect.current !== undefined) { (document.body.style as unknown as { WebkitUserSelect?: string }).WebkitUserSelect = @@ -559,14 +559,14 @@ const Tooltip = React.forwardRef(function Tooltip(inProps, ref) { anchorEl: followCursor ? { getBoundingClientRect: () => - ({ + (({ top: cursorPosition.y, left: cursorPosition.x, right: cursorPosition.x, bottom: cursorPosition.y, width: 0, - height: 0, - }) as DOMRect, + height: 0 + }) as DOMRect), } : childNode, open: childNode ? open : false, diff --git a/packages/mui-joy/src/Typography/Typography.spec.tsx b/packages/mui-joy/src/Typography/Typography.spec.tsx index 87059cd77ed56c..af1ac908ed2a01 100644 --- a/packages/mui-joy/src/Typography/Typography.spec.tsx +++ b/packages/mui-joy/src/Typography/Typography.spec.tsx @@ -2,6 +2,8 @@ import * as React from 'react'; import { expectType } from '@mui/types'; import Typography, { TypographyOwnerState } from '@mui/joy/Typography'; +import type { JSX } from "react"; + Text ; diff --git a/packages/mui-lab/src/CalendarPicker/CalendarPicker.tsx b/packages/mui-lab/src/CalendarPicker/CalendarPicker.tsx index d1b244336688e5..d4761b5354c37e 100644 --- a/packages/mui-lab/src/CalendarPicker/CalendarPicker.tsx +++ b/packages/mui-lab/src/CalendarPicker/CalendarPicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/CalendarPickerSkeleton/CalendarPickerSkeleton.tsx b/packages/mui-lab/src/CalendarPickerSkeleton/CalendarPickerSkeleton.tsx index 5a5eedc42e23ba..a35050a39fdcbc 100644 --- a/packages/mui-lab/src/CalendarPickerSkeleton/CalendarPickerSkeleton.tsx +++ b/packages/mui-lab/src/CalendarPickerSkeleton/CalendarPickerSkeleton.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/ClockPicker/ClockPicker.tsx b/packages/mui-lab/src/ClockPicker/ClockPicker.tsx index ff9f19395863cb..7b58d1d310b3d7 100644 --- a/packages/mui-lab/src/ClockPicker/ClockPicker.tsx +++ b/packages/mui-lab/src/ClockPicker/ClockPicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DatePicker/DatePicker.tsx b/packages/mui-lab/src/DatePicker/DatePicker.tsx index de1b2d83ea164c..49b8aa93267968 100644 --- a/packages/mui-lab/src/DatePicker/DatePicker.tsx +++ b/packages/mui-lab/src/DatePicker/DatePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DateRangePicker/DateRangePicker.ts b/packages/mui-lab/src/DateRangePicker/DateRangePicker.ts index a0e08d393c6d44..aee6f4c94ec9a8 100644 --- a/packages/mui-lab/src/DateRangePicker/DateRangePicker.ts +++ b/packages/mui-lab/src/DateRangePicker/DateRangePicker.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import PropTypes from 'prop-types'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DateRangePickerDay/DateRangePickerDay.ts b/packages/mui-lab/src/DateRangePickerDay/DateRangePickerDay.ts index 2b2c3db7ed6912..879df66c40e802 100644 --- a/packages/mui-lab/src/DateRangePickerDay/DateRangePickerDay.ts +++ b/packages/mui-lab/src/DateRangePickerDay/DateRangePickerDay.ts @@ -1,6 +1,8 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DateTimePicker/DateTimePicker.tsx b/packages/mui-lab/src/DateTimePicker/DateTimePicker.tsx index c65c2db4a7d155..95dccf29719e61 100644 --- a/packages/mui-lab/src/DateTimePicker/DateTimePicker.tsx +++ b/packages/mui-lab/src/DateTimePicker/DateTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DesktopDatePicker/DesktopDatePicker.tsx b/packages/mui-lab/src/DesktopDatePicker/DesktopDatePicker.tsx index 23bfe7b4a463b8..52db5e800ad153 100644 --- a/packages/mui-lab/src/DesktopDatePicker/DesktopDatePicker.tsx +++ b/packages/mui-lab/src/DesktopDatePicker/DesktopDatePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DesktopDateRangePicker/DesktopDateRangePicker.ts b/packages/mui-lab/src/DesktopDateRangePicker/DesktopDateRangePicker.ts index bc5697f3f97cdd..cdfe06eeffb99b 100644 --- a/packages/mui-lab/src/DesktopDateRangePicker/DesktopDateRangePicker.ts +++ b/packages/mui-lab/src/DesktopDateRangePicker/DesktopDateRangePicker.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import PropTypes from 'prop-types'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DesktopDateTimePicker/DesktopDateTimePicker.tsx b/packages/mui-lab/src/DesktopDateTimePicker/DesktopDateTimePicker.tsx index fc3f559a4a3ff2..3c17e84abfcaf0 100644 --- a/packages/mui-lab/src/DesktopDateTimePicker/DesktopDateTimePicker.tsx +++ b/packages/mui-lab/src/DesktopDateTimePicker/DesktopDateTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/DesktopTimePicker/DesktopTimePicker.tsx b/packages/mui-lab/src/DesktopTimePicker/DesktopTimePicker.tsx index f09c774b9bf6e7..1a35db79de2b3d 100644 --- a/packages/mui-lab/src/DesktopTimePicker/DesktopTimePicker.tsx +++ b/packages/mui-lab/src/DesktopTimePicker/DesktopTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/LocalizationProvider/LocalizationProvider.tsx b/packages/mui-lab/src/LocalizationProvider/LocalizationProvider.tsx index 2e3ead720c4300..162eed2af44c9f 100644 --- a/packages/mui-lab/src/LocalizationProvider/LocalizationProvider.tsx +++ b/packages/mui-lab/src/LocalizationProvider/LocalizationProvider.tsx @@ -1,6 +1,8 @@ -'use client'; +'use client';; import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/MobileDatePicker/MobileDatePicker.tsx b/packages/mui-lab/src/MobileDatePicker/MobileDatePicker.tsx index f0b0f9defa6395..d02bb2a36bb088 100644 --- a/packages/mui-lab/src/MobileDatePicker/MobileDatePicker.tsx +++ b/packages/mui-lab/src/MobileDatePicker/MobileDatePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/MobileDateRangePicker/MobileDateRangePicker.ts b/packages/mui-lab/src/MobileDateRangePicker/MobileDateRangePicker.ts index a5a9768e1e57aa..def8f4b22d6527 100644 --- a/packages/mui-lab/src/MobileDateRangePicker/MobileDateRangePicker.ts +++ b/packages/mui-lab/src/MobileDateRangePicker/MobileDateRangePicker.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import PropTypes from 'prop-types'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/MobileDateTimePicker/MobileDateTimePicker.tsx b/packages/mui-lab/src/MobileDateTimePicker/MobileDateTimePicker.tsx index 6a24b35b216f53..6a092af45d8f19 100644 --- a/packages/mui-lab/src/MobileDateTimePicker/MobileDateTimePicker.tsx +++ b/packages/mui-lab/src/MobileDateTimePicker/MobileDateTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/MobileTimePicker/MobileTimePicker.tsx b/packages/mui-lab/src/MobileTimePicker/MobileTimePicker.tsx index aef9f13eb0f734..f94482cbf45cae 100644 --- a/packages/mui-lab/src/MobileTimePicker/MobileTimePicker.tsx +++ b/packages/mui-lab/src/MobileTimePicker/MobileTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/MonthPicker/MonthPicker.tsx b/packages/mui-lab/src/MonthPicker/MonthPicker.tsx index baa3643955e109..ab15b6d8bff102 100644 --- a/packages/mui-lab/src/MonthPicker/MonthPicker.tsx +++ b/packages/mui-lab/src/MonthPicker/MonthPicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/PickersDay/PickersDay.tsx b/packages/mui-lab/src/PickersDay/PickersDay.tsx index dbd13583b7e868..a3e99ba270ed7e 100644 --- a/packages/mui-lab/src/PickersDay/PickersDay.tsx +++ b/packages/mui-lab/src/PickersDay/PickersDay.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/StaticDatePicker/StaticDatePicker.tsx b/packages/mui-lab/src/StaticDatePicker/StaticDatePicker.tsx index 07aedfa8e1c201..460b32f948fc97 100644 --- a/packages/mui-lab/src/StaticDatePicker/StaticDatePicker.tsx +++ b/packages/mui-lab/src/StaticDatePicker/StaticDatePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/StaticDateRangePicker/StaticDateRangePicker.ts b/packages/mui-lab/src/StaticDateRangePicker/StaticDateRangePicker.ts index ab9e86fe8bcfa0..24c7cfc8758822 100644 --- a/packages/mui-lab/src/StaticDateRangePicker/StaticDateRangePicker.ts +++ b/packages/mui-lab/src/StaticDateRangePicker/StaticDateRangePicker.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import PropTypes from 'prop-types'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/StaticDateTimePicker/StaticDateTimePicker.tsx b/packages/mui-lab/src/StaticDateTimePicker/StaticDateTimePicker.tsx index e2adcb889202ea..7b2bd9e5355428 100644 --- a/packages/mui-lab/src/StaticDateTimePicker/StaticDateTimePicker.tsx +++ b/packages/mui-lab/src/StaticDateTimePicker/StaticDateTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/StaticTimePicker/StaticTimePicker.tsx b/packages/mui-lab/src/StaticTimePicker/StaticTimePicker.tsx index 743b8168c0d2b2..c801f50347bbf8 100644 --- a/packages/mui-lab/src/StaticTimePicker/StaticTimePicker.tsx +++ b/packages/mui-lab/src/StaticTimePicker/StaticTimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/TabContext/TabContext.d.ts b/packages/mui-lab/src/TabContext/TabContext.d.ts index b3db92467f8936..5d3b367718a512 100644 --- a/packages/mui-lab/src/TabContext/TabContext.d.ts +++ b/packages/mui-lab/src/TabContext/TabContext.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + export interface TabContextValue { idPrefix: string; value: string; diff --git a/packages/mui-lab/src/TabPanel/TabPanel.d.ts b/packages/mui-lab/src/TabPanel/TabPanel.d.ts index 235ccbc3d6dc59..a32404efedcc34 100644 --- a/packages/mui-lab/src/TabPanel/TabPanel.d.ts +++ b/packages/mui-lab/src/TabPanel/TabPanel.d.ts @@ -4,6 +4,8 @@ import { Theme } from '@mui/material/styles'; import { SxProps } from '@mui/system'; import { TabPanelClasses } from './tabPanelClasses'; +import type { JSX } from "react"; + export interface TabPanelProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-lab/src/TimePicker/TimePicker.tsx b/packages/mui-lab/src/TimePicker/TimePicker.tsx index 8fcc8a2e79163c..3d86f7ce9cb576 100644 --- a/packages/mui-lab/src/TimePicker/TimePicker.tsx +++ b/packages/mui-lab/src/TimePicker/TimePicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/TimelineConnector/TimelineConnector.d.ts b/packages/mui-lab/src/TimelineConnector/TimelineConnector.d.ts index df54d02189e8cb..b53038a4a0c704 100644 --- a/packages/mui-lab/src/TimelineConnector/TimelineConnector.d.ts +++ b/packages/mui-lab/src/TimelineConnector/TimelineConnector.d.ts @@ -4,6 +4,8 @@ import { Theme } from '@mui/material/styles'; import { SxProps } from '@mui/system'; import { TimelineConnectorClasses } from './timelineConnectorClasses'; +import type { JSX } from "react"; + export interface TimelineConnectorProps extends StandardProps> { /** diff --git a/packages/mui-lab/src/TimelineContent/TimelineContent.d.ts b/packages/mui-lab/src/TimelineContent/TimelineContent.d.ts index a7991cd1aba397..4966e695bb89be 100644 --- a/packages/mui-lab/src/TimelineContent/TimelineContent.d.ts +++ b/packages/mui-lab/src/TimelineContent/TimelineContent.d.ts @@ -4,6 +4,8 @@ import { Theme } from '@mui/material/styles'; import { InternalStandardProps as StandardProps, TypographyProps } from '@mui/material'; import { TimelineContentClasses } from './timelineContentClasses'; +import type { JSX } from "react"; + export interface TimelineContentProps extends StandardProps { /** * The content of the component. diff --git a/packages/mui-lab/src/TimelineDot/TimelineDot.d.ts b/packages/mui-lab/src/TimelineDot/TimelineDot.d.ts index 2109ee9592186c..0f953d1425dd14 100644 --- a/packages/mui-lab/src/TimelineDot/TimelineDot.d.ts +++ b/packages/mui-lab/src/TimelineDot/TimelineDot.d.ts @@ -5,6 +5,8 @@ import { Theme } from '@mui/material/styles'; import { InternalStandardProps as StandardProps } from '@mui/material'; import { TimelineDotClasses } from './timelineDotClasses'; +import type { JSX } from "react"; + export interface TimelineDotPropsVariantOverrides {} export interface TimelineDotPropsColorOverrides {} diff --git a/packages/mui-lab/src/TimelineItem/TimelineItem.d.ts b/packages/mui-lab/src/TimelineItem/TimelineItem.d.ts index e168cf1be724f7..573e8f6edb8576 100644 --- a/packages/mui-lab/src/TimelineItem/TimelineItem.d.ts +++ b/packages/mui-lab/src/TimelineItem/TimelineItem.d.ts @@ -4,6 +4,8 @@ import { Theme } from '@mui/material/styles'; import { InternalStandardProps as StandardProps } from '@mui/material'; import { TimelineItemClasses } from './timelineItemClasses'; +import type { JSX } from "react"; + export interface TimelineItemProps extends StandardProps> { /** * The position where the timeline's item should appear. diff --git a/packages/mui-lab/src/TimelineOppositeContent/TimelineOppositeContent.d.ts b/packages/mui-lab/src/TimelineOppositeContent/TimelineOppositeContent.d.ts index 4b811f4a2de721..786529235a583a 100644 --- a/packages/mui-lab/src/TimelineOppositeContent/TimelineOppositeContent.d.ts +++ b/packages/mui-lab/src/TimelineOppositeContent/TimelineOppositeContent.d.ts @@ -4,6 +4,8 @@ import { Theme } from '@mui/material/styles'; import { InternalStandardProps as StandardProps, TypographyProps } from '@mui/material'; import { TimelineOppositeContentClasses } from './timelineOppositeContentClasses'; +import type { JSX } from "react"; + export interface TimelineOppositeContentProps extends StandardProps { /** * The content of the component. diff --git a/packages/mui-lab/src/TimelineSeparator/TimelineSeparator.d.ts b/packages/mui-lab/src/TimelineSeparator/TimelineSeparator.d.ts index 4f851adbfa3f7e..58c2be55c7daa1 100644 --- a/packages/mui-lab/src/TimelineSeparator/TimelineSeparator.d.ts +++ b/packages/mui-lab/src/TimelineSeparator/TimelineSeparator.d.ts @@ -4,6 +4,8 @@ import { Theme } from '@mui/material/styles'; import { SxProps } from '@mui/system'; import { TimelineSeparatorClasses } from './timelineSeparatorClasses'; +import type { JSX } from "react"; + export interface TimelineSeparatorProps extends StandardProps> { /** diff --git a/packages/mui-lab/src/TreeItem/TreeItem.tsx b/packages/mui-lab/src/TreeItem/TreeItem.tsx index 5920ce65567cae..82c474e6944356 100644 --- a/packages/mui-lab/src/TreeItem/TreeItem.tsx +++ b/packages/mui-lab/src/TreeItem/TreeItem.tsx @@ -1,6 +1,8 @@ -'use client'; +'use client';; import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/TreeView/TreeView.tsx b/packages/mui-lab/src/TreeView/TreeView.tsx index a9baef3618f4ba..1acef7e861f5fb 100644 --- a/packages/mui-lab/src/TreeView/TreeView.tsx +++ b/packages/mui-lab/src/TreeView/TreeView.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-lab/src/YearPicker/YearPicker.tsx b/packages/mui-lab/src/YearPicker/YearPicker.tsx index b83ba6b10812dd..c7aff16940100c 100644 --- a/packages/mui-lab/src/YearPicker/YearPicker.tsx +++ b/packages/mui-lab/src/YearPicker/YearPicker.tsx @@ -1,7 +1,9 @@ -'use client'; +'use client';; /* eslint-disable @typescript-eslint/no-unused-vars */ import * as React from 'react'; +import type { JSX } from "react"; + let warnedOnce = false; const warn = () => { diff --git a/packages/mui-material-next/src/Button/Button.types.ts b/packages/mui-material-next/src/Button/Button.types.ts index ad10e8c796d020..ac8ba91f39d4aa 100644 --- a/packages/mui-material-next/src/Button/Button.types.ts +++ b/packages/mui-material-next/src/Button/Button.types.ts @@ -8,6 +8,8 @@ import { import { SxProps } from '../styles/Theme.types'; import { ButtonClasses } from './buttonClasses'; +import type { JSX } from "react"; + export interface ButtonPropsVariantOverrides {} export interface ButtonPropsColorOverrides {} diff --git a/packages/mui-material-next/src/ButtonBase/ButtonBase.types.ts b/packages/mui-material-next/src/ButtonBase/ButtonBase.types.ts index 1ed0777f27ecff..96f24551b37f39 100644 --- a/packages/mui-material-next/src/ButtonBase/ButtonBase.types.ts +++ b/packages/mui-material-next/src/ButtonBase/ButtonBase.types.ts @@ -5,6 +5,8 @@ import { Theme } from '../styles'; import { TouchRippleActions, TouchRippleProps } from './TouchRipple.types'; import { ButtonBaseClasses } from './buttonBaseClasses'; +import type { JSX } from "react"; + export interface ButtonBaseTypeMap< AdditionalProps = {}, DefaultComponent extends React.ElementType = 'button', diff --git a/packages/mui-material-next/src/ButtonBase/Ripple.tsx b/packages/mui-material-next/src/ButtonBase/Ripple.tsx index 832a94c6829f3c..f14ab174f9b335 100644 --- a/packages/mui-material-next/src/ButtonBase/Ripple.tsx +++ b/packages/mui-material-next/src/ButtonBase/Ripple.tsx @@ -1,8 +1,10 @@ -'use client'; +'use client';; import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; +import type { JSX } from "react"; + export interface RippleProps { className?: string; classes: Record; diff --git a/packages/mui-material-next/src/ButtonBase/TouchRipple.tsx b/packages/mui-material-next/src/ButtonBase/TouchRipple.tsx index 4f5025e3025ca4..76a1660367a18d 100644 --- a/packages/mui-material-next/src/ButtonBase/TouchRipple.tsx +++ b/packages/mui-material-next/src/ButtonBase/TouchRipple.tsx @@ -90,7 +90,7 @@ const TouchRipple = React.forwardRef( const { center: centerProp = false, classes = {}, className, ...other } = props; const [ripples, setRipples] = React.useState([]); const nextKey = React.useRef(0); - const rippleCallback = React.useRef<(() => void) | null>(); + const rippleCallback = React.useRef<(() => void) | null>(undefined); React.useEffect(() => { if (rippleCallback.current) { diff --git a/packages/mui-material-next/src/ButtonBase/useTouchRipple.ts b/packages/mui-material-next/src/ButtonBase/useTouchRipple.ts index 0411092b8efc3a..9b728208c3f0e1 100644 --- a/packages/mui-material-next/src/ButtonBase/useTouchRipple.ts +++ b/packages/mui-material-next/src/ButtonBase/useTouchRipple.ts @@ -8,7 +8,7 @@ interface UseTouchRippleProps { disableFocusRipple?: boolean; disableRipple?: boolean; disableTouchRipple?: boolean; - rippleRef: React.RefObject; + rippleRef: React.RefObject; } interface RippleEventHandlers { diff --git a/packages/mui-material-next/src/FilledInput/FilledInput.tsx b/packages/mui-material-next/src/FilledInput/FilledInput.tsx index b5d9bbc5af2c2f..122d6db90ad506 100644 --- a/packages/mui-material-next/src/FilledInput/FilledInput.tsx +++ b/packages/mui-material-next/src/FilledInput/FilledInput.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; import * as React from 'react'; import { refType } from '@mui/utils'; import PropTypes from 'prop-types'; @@ -17,6 +17,8 @@ import { InputBaseOwnerState } from '../InputBase/InputBase.types'; import filledInputClasses, { getFilledInputUtilityClass } from './filledInputClasses'; import { FilledInputOwnerState, FilledInputProps, FilledInputTypeMap } from './FilledInput.types'; +import type { JSX } from "react"; + const useUtilityClasses = (ownerState: FilledInputOwnerState) => { const { classes, disableUnderline } = ownerState; diff --git a/packages/mui-material-next/src/InputBase/InputBase.tsx b/packages/mui-material-next/src/InputBase/InputBase.tsx index 1d380ef8dcdb1b..b5bff6a3ffab15 100644 --- a/packages/mui-material-next/src/InputBase/InputBase.tsx +++ b/packages/mui-material-next/src/InputBase/InputBase.tsx @@ -1,4 +1,4 @@ -'use client'; +'use client';; import * as React from 'react'; import PropTypes from 'prop-types'; import GlobalStyles from '@mui/material/GlobalStyles'; @@ -33,6 +33,8 @@ import { } from './InputBase.types'; import inputBaseClasses, { getInputBaseUtilityClass } from './inputBaseClasses'; +import type { JSX } from "react"; + const useUtilityClasses = (ownerState: InputBaseOwnerState) => { const { classes, @@ -322,7 +324,7 @@ const InputBase = React.forwardRef(function InputBase< const { current: isControlled } = React.useRef(value != null); - const inputRef = React.useRef(); + const inputRef = React.useRef(undefined); const muiFormControl = useFormControl(); diff --git a/packages/mui-material-next/src/ListItemAvatar/ListItemAvatar.d.ts b/packages/mui-material-next/src/ListItemAvatar/ListItemAvatar.d.ts index b8ba0741ff4dd7..01bcc88288d66b 100644 --- a/packages/mui-material-next/src/ListItemAvatar/ListItemAvatar.d.ts +++ b/packages/mui-material-next/src/ListItemAvatar/ListItemAvatar.d.ts @@ -2,6 +2,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '@mui/material'; import { ListItemAvatarClasses } from './listItemAvatarClasses'; +import type { JSX } from "react"; + export interface ListItemAvatarProps extends StandardProps> { /** * The content of the component, normally an `Avatar`. diff --git a/packages/mui-material-next/src/ListItemIcon/ListItemIcon.d.ts b/packages/mui-material-next/src/ListItemIcon/ListItemIcon.d.ts index efe7ba7c3eeb28..59f91135980ae6 100644 --- a/packages/mui-material-next/src/ListItemIcon/ListItemIcon.d.ts +++ b/packages/mui-material-next/src/ListItemIcon/ListItemIcon.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '@mui/material'; import { ListItemIconClasses } from './listItemIconClasses'; +import type { JSX } from "react"; + export interface ListItemIconProps extends StandardProps> { /** * The content of the component, normally `Icon`, `SvgIcon`, diff --git a/packages/mui-material-next/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts b/packages/mui-material-next/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts index 755aafdf96d5d1..4b4873791c7bb4 100644 --- a/packages/mui-material-next/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +++ b/packages/mui-material-next/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '@mui/material'; import { ListItemSecondaryActionClasses } from './listItemSecondaryActionClasses'; +import type { JSX } from "react"; + export interface ListItemSecondaryActionProps extends StandardProps> { /** diff --git a/packages/mui-material-next/src/ListItemText/ListItemText.d.ts b/packages/mui-material-next/src/ListItemText/ListItemText.d.ts index 05e0c49ba3f2c7..494fc1a1c6207b 100644 --- a/packages/mui-material-next/src/ListItemText/ListItemText.d.ts +++ b/packages/mui-material-next/src/ListItemText/ListItemText.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps, Theme } from '@mui/material'; import { TypographyProps } from '@mui/material/Typography'; import { ListItemTextClasses } from './listItemTextClasses'; +import type { JSX } from "react"; + export interface ListItemTextProps< PrimaryTypographyComponent extends React.ElementType = 'span', SecondaryTypographyComponent extends React.ElementType = 'p', diff --git a/packages/mui-material-next/src/OutlinedInput/OutlinedInput.d.ts b/packages/mui-material-next/src/OutlinedInput/OutlinedInput.d.ts index 64e42f02211288..5bc99b5039955e 100644 --- a/packages/mui-material-next/src/OutlinedInput/OutlinedInput.d.ts +++ b/packages/mui-material-next/src/OutlinedInput/OutlinedInput.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps } from '@mui/material'; import { InputBaseProps } from '@mui/material/InputBase'; import { OutlinedInputClasses } from './outlinedInputClasses'; +import type { JSX } from "react"; + export interface OutlinedInputProps extends StandardProps { /** * Override or extend the styles applied to the component. diff --git a/packages/mui-material-next/src/Select/Select.d.ts b/packages/mui-material-next/src/Select/Select.d.ts index d562bab14eaeba..9d3d1919af6777 100644 --- a/packages/mui-material-next/src/Select/Select.d.ts +++ b/packages/mui-material-next/src/Select/Select.d.ts @@ -11,6 +11,8 @@ import { OutlinedInputProps } from '@mui/material/OutlinedInput'; import { SelectChangeEvent, SelectInputProps } from './SelectInput'; import { SelectClasses } from './selectClasses'; +import type { JSX } from "react"; + export { SelectChangeEvent }; export interface SelectProps diff --git a/packages/mui-material-next/src/Snackbar/Snackbar.d.ts b/packages/mui-material-next/src/Snackbar/Snackbar.d.ts index b274c35d804f0d..341cc3b452514e 100644 --- a/packages/mui-material-next/src/Snackbar/Snackbar.d.ts +++ b/packages/mui-material-next/src/Snackbar/Snackbar.d.ts @@ -7,6 +7,8 @@ import { TransitionProps } from '@mui/material/transitions'; import { Theme } from '../styles'; import { SnackbarClasses } from './snackbarClasses'; +import type { JSX } from "react"; + export interface SnackbarOrigin { vertical: 'top' | 'bottom'; horizontal: 'left' | 'center' | 'right'; diff --git a/packages/mui-material-next/src/SnackbarContent/SnackbarContent.d.ts b/packages/mui-material-next/src/SnackbarContent/SnackbarContent.d.ts index e75358e1e5b3af..0209b0a4d1f462 100644 --- a/packages/mui-material-next/src/SnackbarContent/SnackbarContent.d.ts +++ b/packages/mui-material-next/src/SnackbarContent/SnackbarContent.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, PaperProps, Theme } from '@mui/material'; import { SnackbarContentClasses } from './snackbarContentClasses'; +import type { JSX } from "react"; + export interface SnackbarContentProps extends StandardProps { /** * The action to display. It renders after the message, at the end of the snackbar. diff --git a/packages/mui-material-next/src/TabScrollButton/TabScrollButton.d.ts b/packages/mui-material-next/src/TabScrollButton/TabScrollButton.d.ts index 45675384cc2b59..8e8db6b40a5447 100644 --- a/packages/mui-material-next/src/TabScrollButton/TabScrollButton.d.ts +++ b/packages/mui-material-next/src/TabScrollButton/TabScrollButton.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '@mui/material'; import { TabScrollButtonClasses } from './tabScrollButtonClasses'; +import type { JSX } from "react"; + export interface TabScrollButtonProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material-nextjs/src/v13-pagesRouter/pagesRouterV13Document.tsx b/packages/mui-material-nextjs/src/v13-pagesRouter/pagesRouterV13Document.tsx index c8c385ea74ab10..daf33b910e93e7 100644 --- a/packages/mui-material-nextjs/src/v13-pagesRouter/pagesRouterV13Document.tsx +++ b/packages/mui-material-nextjs/src/v13-pagesRouter/pagesRouterV13Document.tsx @@ -6,6 +6,8 @@ import Document, { DocumentContext, DocumentInitialProps } from 'next/document'; import { EmotionCacheProviderProps } from './pagesRouterV13App'; import createEmotionCache from './createCache'; +import type { JSX } from "react"; + interface Plugin { enhanceApp: ( App: React.ComponentType>, @@ -92,9 +94,9 @@ export async function documentGetInitialProps( enhanceApp: ( App: React.ComponentType & EmotionCacheProviderProps>, ) => - function EnhanceApp(props) { + (function EnhanceApp(props) { return ; - }, + }), resolveProps: async (initialProps) => { const { styles } = extractCriticalToChunks(initialProps.html); return { diff --git a/packages/mui-material/src/AccordionActions/AccordionActions.d.ts b/packages/mui-material/src/AccordionActions/AccordionActions.d.ts index 2e8b781355f70a..4e2aa15bb2857c 100644 --- a/packages/mui-material/src/AccordionActions/AccordionActions.d.ts +++ b/packages/mui-material/src/AccordionActions/AccordionActions.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { AccordionActionsClasses } from './accordionActionsClasses'; +import type { JSX } from "react"; + export interface AccordionActionsProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/AccordionDetails/AccordionDetails.d.ts b/packages/mui-material/src/AccordionDetails/AccordionDetails.d.ts index 17a0992587fcf1..c3a1b555fa14b7 100644 --- a/packages/mui-material/src/AccordionDetails/AccordionDetails.d.ts +++ b/packages/mui-material/src/AccordionDetails/AccordionDetails.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { AccordionDetailsClasses } from './accordionDetailsClasses'; +import type { JSX } from "react"; + export interface AccordionDetailsProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/Alert/Alert.d.ts b/packages/mui-material/src/Alert/Alert.d.ts index a267dec3c89f9d..372e6f90776c94 100644 --- a/packages/mui-material/src/Alert/Alert.d.ts +++ b/packages/mui-material/src/Alert/Alert.d.ts @@ -6,6 +6,8 @@ import { PaperProps } from '../Paper'; import { AlertClasses } from './alertClasses'; import { CreateSlotsAndSlotProps, SlotProps } from '../utils/types'; +import type { JSX } from "react"; + export type AlertColor = 'success' | 'info' | 'warning' | 'error'; export interface AlertPropsVariantOverrides {} diff --git a/packages/mui-material/src/AlertTitle/AlertTitle.d.ts b/packages/mui-material/src/AlertTitle/AlertTitle.d.ts index b9d7a90adae0e0..7280aa447c9528 100644 --- a/packages/mui-material/src/AlertTitle/AlertTitle.d.ts +++ b/packages/mui-material/src/AlertTitle/AlertTitle.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { AlertTitleClasses } from './alertTitleClasses'; +import type { JSX } from "react"; + export interface AlertTitleProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.d.ts b/packages/mui-material/src/Autocomplete/Autocomplete.d.ts index bc93447fab6e13..b47fe1fa5fbb07 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.d.ts +++ b/packages/mui-material/src/Autocomplete/Autocomplete.d.ts @@ -18,6 +18,8 @@ import { PaperProps } from '@mui/material/Paper'; import { PopperProps } from '@mui/material/Popper'; import { AutocompleteClasses } from './autocompleteClasses'; +import type { JSX } from "react"; + export { AutocompleteChangeDetails, AutocompleteChangeReason, diff --git a/packages/mui-material/src/AvatarGroup/AvatarGroup.d.ts b/packages/mui-material/src/AvatarGroup/AvatarGroup.d.ts index ed052bbf48d468..600800a55788c5 100644 --- a/packages/mui-material/src/AvatarGroup/AvatarGroup.d.ts +++ b/packages/mui-material/src/AvatarGroup/AvatarGroup.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps, Theme } from '@mui/material'; import { AvatarGroupClasses } from './avatarGroupClasses'; import Avatar from '../Avatar'; +import type { JSX } from "react"; + export interface AvatarGroupPropsVariantOverrides {} export interface AvatarGroupComponentsPropsOverrides {} diff --git a/packages/mui-material/src/Button/Button.d.ts b/packages/mui-material/src/Button/Button.d.ts index 63b078984b6330..39c5164e712788 100644 --- a/packages/mui-material/src/Button/Button.d.ts +++ b/packages/mui-material/src/Button/Button.d.ts @@ -6,6 +6,8 @@ import { ExtendButtonBase, ExtendButtonBaseTypeMap } from '../ButtonBase'; import { OverrideProps, OverridableComponent, OverridableTypeMap } from '../OverridableComponent'; import { ButtonClasses } from './buttonClasses'; +import type { JSX } from "react"; + export interface ButtonPropsVariantOverrides {} export interface ButtonPropsColorOverrides {} diff --git a/packages/mui-material/src/ButtonBase/ButtonBase.d.ts b/packages/mui-material/src/ButtonBase/ButtonBase.d.ts index af1edc9aa88849..d4fd7a25a17047 100644 --- a/packages/mui-material/src/ButtonBase/ButtonBase.d.ts +++ b/packages/mui-material/src/ButtonBase/ButtonBase.d.ts @@ -5,6 +5,8 @@ import { TouchRippleActions, TouchRippleProps } from './TouchRipple'; import { OverrideProps, OverridableComponent, OverridableTypeMap } from '../OverridableComponent'; import { ButtonBaseClasses } from './buttonBaseClasses'; +import type { JSX } from "react"; + export interface ButtonBaseOwnProps { /** * A ref for imperative actions. diff --git a/packages/mui-material/src/CardActions/CardActions.d.ts b/packages/mui-material/src/CardActions/CardActions.d.ts index 3258f2ca248e6d..c5727d9be604d2 100644 --- a/packages/mui-material/src/CardActions/CardActions.d.ts +++ b/packages/mui-material/src/CardActions/CardActions.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { CardActionsClasses } from './cardActionsClasses'; +import type { JSX } from "react"; + export interface CardActionsProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/CardHeader/CardHeader.d.ts b/packages/mui-material/src/CardHeader/CardHeader.d.ts index cfa1cfd5942f4a..47bc7032c95471 100644 --- a/packages/mui-material/src/CardHeader/CardHeader.d.ts +++ b/packages/mui-material/src/CardHeader/CardHeader.d.ts @@ -5,6 +5,8 @@ import { OverridableComponent, OverrideProps } from '../OverridableComponent'; import { Theme } from '..'; import { CardHeaderClasses } from './cardHeaderClasses'; +import type { JSX } from "react"; + export interface CardHeaderOwnProps< TitleTypographyComponent extends React.ElementType = 'span', SubheaderTypographyComponent extends React.ElementType = 'span', diff --git a/packages/mui-material/src/Checkbox/Checkbox.d.ts b/packages/mui-material/src/Checkbox/Checkbox.d.ts index 8d3b3529cde81e..e6c23b0c2e57d1 100644 --- a/packages/mui-material/src/Checkbox/Checkbox.d.ts +++ b/packages/mui-material/src/Checkbox/Checkbox.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { SwitchBaseProps } from '../internal/SwitchBase'; import { CheckboxClasses } from './checkboxClasses'; +import type { JSX } from "react"; + export interface CheckboxPropsSizeOverrides {} export interface CheckboxPropsColorOverrides {} diff --git a/packages/mui-material/src/CircularProgress/CircularProgress.d.ts b/packages/mui-material/src/CircularProgress/CircularProgress.d.ts index c0046a5b247e2b..9b70c5272f646b 100644 --- a/packages/mui-material/src/CircularProgress/CircularProgress.d.ts +++ b/packages/mui-material/src/CircularProgress/CircularProgress.d.ts @@ -4,6 +4,8 @@ import { OverridableStringUnion } from '@mui/types'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { CircularProgressClasses } from './circularProgressClasses'; +import type { JSX } from "react"; + export interface CircularProgressPropsColorOverrides {} export interface CircularProgressProps diff --git a/packages/mui-material/src/Collapse/Collapse.d.ts b/packages/mui-material/src/Collapse/Collapse.d.ts index 2206f44019aefc..c9ee997c17910d 100644 --- a/packages/mui-material/src/Collapse/Collapse.d.ts +++ b/packages/mui-material/src/Collapse/Collapse.d.ts @@ -4,6 +4,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { TransitionProps } from '../transitions/transition'; import { CollapseClasses } from './collapseClasses'; +import type { JSX } from "react"; + export interface CollapseProps extends StandardProps { /** * The content node to be collapsed. diff --git a/packages/mui-material/src/CssBaseline/CssBaseline.d.ts b/packages/mui-material/src/CssBaseline/CssBaseline.d.ts index 45af35281561a9..5baad93048c53a 100644 --- a/packages/mui-material/src/CssBaseline/CssBaseline.d.ts +++ b/packages/mui-material/src/CssBaseline/CssBaseline.d.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { StyledComponentProps } from '../styles'; +import type { JSX } from "react"; + export interface CssBaselineProps extends StyledComponentProps { /** * You can wrap a node. diff --git a/packages/mui-material/src/Dialog/Dialog.d.ts b/packages/mui-material/src/Dialog/Dialog.d.ts index 14fdf0f2bc5c9d..d39b52363897bc 100644 --- a/packages/mui-material/src/Dialog/Dialog.d.ts +++ b/packages/mui-material/src/Dialog/Dialog.d.ts @@ -6,6 +6,8 @@ import { ModalProps } from '../Modal'; import { TransitionProps } from '../transitions/transition'; import { DialogClasses } from './dialogClasses'; +import type { JSX } from "react"; + export interface DialogProps extends StandardProps { /** * The id(s) of the element(s) that describe the dialog. diff --git a/packages/mui-material/src/DialogActions/DialogActions.d.ts b/packages/mui-material/src/DialogActions/DialogActions.d.ts index 5e6a13e309c1d0..fee6b3edebda05 100644 --- a/packages/mui-material/src/DialogActions/DialogActions.d.ts +++ b/packages/mui-material/src/DialogActions/DialogActions.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { DialogActionsClasses } from './dialogActionsClasses'; +import type { JSX } from "react"; + export interface DialogActionsProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/DialogContent/DialogContent.d.ts b/packages/mui-material/src/DialogContent/DialogContent.d.ts index e0a17cb60e2ae2..7265e56b3613ec 100644 --- a/packages/mui-material/src/DialogContent/DialogContent.d.ts +++ b/packages/mui-material/src/DialogContent/DialogContent.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { DialogContentClasses } from './dialogContentClasses'; +import type { JSX } from "react"; + export interface DialogContentProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/Drawer/Drawer.d.ts b/packages/mui-material/src/Drawer/Drawer.d.ts index ab7f745e9f1ae1..50e3cc36116d4b 100644 --- a/packages/mui-material/src/Drawer/Drawer.d.ts +++ b/packages/mui-material/src/Drawer/Drawer.d.ts @@ -7,6 +7,8 @@ import { PaperProps } from '../Paper'; import { TransitionProps } from '../transitions/transition'; import { DrawerClasses } from './drawerClasses'; +import type { JSX } from "react"; + export interface DrawerProps extends StandardProps { /** * Side from which the drawer will appear. diff --git a/packages/mui-material/src/Fade/Fade.d.ts b/packages/mui-material/src/Fade/Fade.d.ts index b9b5288ea5f14c..d95cc3a5aff9cf 100644 --- a/packages/mui-material/src/Fade/Fade.d.ts +++ b/packages/mui-material/src/Fade/Fade.d.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { TransitionProps } from '../transitions/transition'; +import type { JSX } from "react"; + export interface FadeProps extends Omit { /** * Perform the enter transition when it first mounts if `in` is also `true`. diff --git a/packages/mui-material/src/FilledInput/FilledInput.d.ts b/packages/mui-material/src/FilledInput/FilledInput.d.ts index c9caa77ac2b6c3..1b6ff4d6479b82 100644 --- a/packages/mui-material/src/FilledInput/FilledInput.d.ts +++ b/packages/mui-material/src/FilledInput/FilledInput.d.ts @@ -3,6 +3,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { InputBaseProps } from '../InputBase'; import { FilledInputClasses } from './filledInputClasses'; +import type { JSX } from "react"; + export interface FilledInputProps extends StandardProps { /** * Override or extend the styles applied to the component. diff --git a/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts b/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts index 3ba48a2d665a03..f4fde135dead77 100644 --- a/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts +++ b/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts @@ -4,6 +4,8 @@ import { Theme, InternalStandardProps as StandardProps } from '..'; import { TypographyProps } from '../Typography'; import { FormControlLabelClasses } from './formControlLabelClasses'; +import type { JSX } from "react"; + export interface FormControlLabelProps extends StandardProps, 'children' | 'onChange'> { /** diff --git a/packages/mui-material/src/FormGroup/FormGroup.d.ts b/packages/mui-material/src/FormGroup/FormGroup.d.ts index b8e6478f1b3ef4..3af8e9c079f250 100644 --- a/packages/mui-material/src/FormGroup/FormGroup.d.ts +++ b/packages/mui-material/src/FormGroup/FormGroup.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { FormGroupClasses } from './formGroupClasses'; +import type { JSX } from "react"; + export interface FormGroupProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/Grow/Grow.d.ts b/packages/mui-material/src/Grow/Grow.d.ts index 173360b6ed7b55..2e1c1950f4267f 100644 --- a/packages/mui-material/src/Grow/Grow.d.ts +++ b/packages/mui-material/src/Grow/Grow.d.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { TransitionProps } from '../transitions/transition'; +import type { JSX } from "react"; + export interface GrowProps extends Omit { /** * Perform the enter transition when it first mounts if `in` is also `true`. diff --git a/packages/mui-material/src/ImageListItemBar/ImageListItemBar.d.ts b/packages/mui-material/src/ImageListItemBar/ImageListItemBar.d.ts index fb9e5260c08a64..042ffe653bd28a 100644 --- a/packages/mui-material/src/ImageListItemBar/ImageListItemBar.d.ts +++ b/packages/mui-material/src/ImageListItemBar/ImageListItemBar.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { ImageListItemBarClasses } from './imageListItemBarClasses'; +import type { JSX } from "react"; + export interface ImageListItemBarProps extends StandardProps, 'title'> { /** diff --git a/packages/mui-material/src/Input/Input.d.ts b/packages/mui-material/src/Input/Input.d.ts index 39f4b45fb9d8eb..c494a9b0db429d 100644 --- a/packages/mui-material/src/Input/Input.d.ts +++ b/packages/mui-material/src/Input/Input.d.ts @@ -3,6 +3,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { InputBaseProps } from '../InputBase'; import { InputClasses } from './inputClasses'; +import type { JSX } from "react"; + export interface InputProps extends StandardProps { /** * Override or extend the styles applied to the component. diff --git a/packages/mui-material/src/InputBase/InputBase.d.ts b/packages/mui-material/src/InputBase/InputBase.d.ts index 98d5fb1e411020..bce8bcf1afdb64 100644 --- a/packages/mui-material/src/InputBase/InputBase.d.ts +++ b/packages/mui-material/src/InputBase/InputBase.d.ts @@ -5,6 +5,8 @@ import { Theme } from '../styles'; import { InternalStandardProps as StandardProps } from '..'; import { InputBaseClasses } from './inputBaseClasses'; +import type { JSX } from "react"; + export interface InputBasePropsSizeOverrides {} export interface InputBasePropsColorOverrides {} diff --git a/packages/mui-material/src/LinearProgress/LinearProgress.d.ts b/packages/mui-material/src/LinearProgress/LinearProgress.d.ts index 9b940c879c61bd..42555873f5c1e7 100644 --- a/packages/mui-material/src/LinearProgress/LinearProgress.d.ts +++ b/packages/mui-material/src/LinearProgress/LinearProgress.d.ts @@ -4,6 +4,8 @@ import { OverridableStringUnion } from '@mui/types'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { LinearProgressClasses } from './linearProgressClasses'; +import type { JSX } from "react"; + export interface LinearProgressPropsColorOverrides {} export interface LinearProgressProps diff --git a/packages/mui-material/src/ListItemAvatar/ListItemAvatar.d.ts b/packages/mui-material/src/ListItemAvatar/ListItemAvatar.d.ts index 0fe8e56956dc83..a39bb4254c8580 100644 --- a/packages/mui-material/src/ListItemAvatar/ListItemAvatar.d.ts +++ b/packages/mui-material/src/ListItemAvatar/ListItemAvatar.d.ts @@ -2,6 +2,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { ListItemAvatarClasses } from './listItemAvatarClasses'; +import type { JSX } from "react"; + export interface ListItemAvatarProps extends StandardProps> { /** * The content of the component, normally an `Avatar`. diff --git a/packages/mui-material/src/ListItemIcon/ListItemIcon.d.ts b/packages/mui-material/src/ListItemIcon/ListItemIcon.d.ts index 357596d183207a..dc69d8400522ac 100644 --- a/packages/mui-material/src/ListItemIcon/ListItemIcon.d.ts +++ b/packages/mui-material/src/ListItemIcon/ListItemIcon.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { ListItemIconClasses } from './listItemIconClasses'; +import type { JSX } from "react"; + export interface ListItemIconProps extends StandardProps> { /** * The content of the component, normally `Icon`, `SvgIcon`, diff --git a/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts b/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts index e4ee9cbfb450d3..c0d2354b955f3c 100644 --- a/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +++ b/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.d.ts @@ -3,6 +3,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { ListItemSecondaryActionClasses } from './listItemSecondaryActionClasses'; +import type { JSX } from "react"; + export interface ListItemSecondaryActionProps extends StandardProps> { /** diff --git a/packages/mui-material/src/ListItemText/ListItemText.d.ts b/packages/mui-material/src/ListItemText/ListItemText.d.ts index 5c1f4f1690ca8b..d883763868f016 100644 --- a/packages/mui-material/src/ListItemText/ListItemText.d.ts +++ b/packages/mui-material/src/ListItemText/ListItemText.d.ts @@ -4,6 +4,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { TypographyProps } from '../Typography'; import { ListItemTextClasses } from './listItemTextClasses'; +import type { JSX } from "react"; + export interface ListItemTextProps< PrimaryTypographyComponent extends React.ElementType = 'span', SecondaryTypographyComponent extends React.ElementType = 'p', diff --git a/packages/mui-material/src/Menu/Menu.d.ts b/packages/mui-material/src/Menu/Menu.d.ts index 34b27cb8cca448..f99befb1d0c7f9 100644 --- a/packages/mui-material/src/Menu/Menu.d.ts +++ b/packages/mui-material/src/Menu/Menu.d.ts @@ -8,6 +8,8 @@ import { Theme } from '../styles'; import { TransitionProps } from '../transitions/transition'; import { MenuClasses } from './menuClasses'; +import type { JSX } from "react"; + export interface MenuProps extends StandardProps { /** * An HTML element, or a function that returns one. diff --git a/packages/mui-material/src/MobileStepper/MobileStepper.d.ts b/packages/mui-material/src/MobileStepper/MobileStepper.d.ts index 86a5e95f20981e..5f0e53d2a7a0d1 100644 --- a/packages/mui-material/src/MobileStepper/MobileStepper.d.ts +++ b/packages/mui-material/src/MobileStepper/MobileStepper.d.ts @@ -5,6 +5,8 @@ import { PaperProps } from '../Paper'; import { LinearProgressProps } from '../LinearProgress'; import { MobileStepperClasses } from './mobileStepperClasses'; +import type { JSX } from "react"; + export interface MobileStepperProps extends StandardProps { /** * Set the active step (zero based index). diff --git a/packages/mui-material/src/NativeSelect/NativeSelect.d.ts b/packages/mui-material/src/NativeSelect/NativeSelect.d.ts index 6e4d078e6179ce..2601371be2523e 100644 --- a/packages/mui-material/src/NativeSelect/NativeSelect.d.ts +++ b/packages/mui-material/src/NativeSelect/NativeSelect.d.ts @@ -5,6 +5,8 @@ import { InputProps } from '../Input'; import { NativeSelectInputProps } from './NativeSelectInput'; import { NativeSelectClasses } from './nativeSelectClasses'; +import type { JSX } from "react"; + export interface NativeSelectProps extends StandardProps { /** diff --git a/packages/mui-material/src/OutlinedInput/OutlinedInput.d.ts b/packages/mui-material/src/OutlinedInput/OutlinedInput.d.ts index 61646bc8096fef..a23cfc60c9e369 100644 --- a/packages/mui-material/src/OutlinedInput/OutlinedInput.d.ts +++ b/packages/mui-material/src/OutlinedInput/OutlinedInput.d.ts @@ -4,6 +4,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { InputBaseProps } from '../InputBase'; import { OutlinedInputClasses } from './outlinedInputClasses'; +import type { JSX } from "react"; + export interface OutlinedInputProps extends StandardProps { /** * Override or extend the styles applied to the component. diff --git a/packages/mui-material/src/OverridableComponent.d.ts b/packages/mui-material/src/OverridableComponent.d.ts index 1a65de60e6c1f5..6d9a1ecd2928af 100644 --- a/packages/mui-material/src/OverridableComponent.d.ts +++ b/packages/mui-material/src/OverridableComponent.d.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import { DistributiveOmit } from '@mui/types'; import { StyledComponentProps } from './styles'; +import type { JSX } from "react"; + /** * A component whose root component can be controlled via a `component` prop. * diff --git a/packages/mui-material/src/Pagination/Pagination.d.ts b/packages/mui-material/src/Pagination/Pagination.d.ts index 11a27ca7b51a4c..f58b6f77ccbce6 100644 --- a/packages/mui-material/src/Pagination/Pagination.d.ts +++ b/packages/mui-material/src/Pagination/Pagination.d.ts @@ -6,6 +6,8 @@ import { Theme } from '../styles'; import { UsePaginationItem, UsePaginationProps } from '../usePagination/usePagination'; import { PaginationClasses } from './paginationClasses'; +import type { JSX } from "react"; + export interface PaginationRenderItemParams extends UsePaginationItem { color: PaginationProps['color']; shape: PaginationProps['shape']; diff --git a/packages/mui-material/src/Popover/Popover.d.ts b/packages/mui-material/src/Popover/Popover.d.ts index d8308b68ac7a5b..3b236bf41eb66a 100644 --- a/packages/mui-material/src/Popover/Popover.d.ts +++ b/packages/mui-material/src/Popover/Popover.d.ts @@ -8,6 +8,8 @@ import { Theme } from '../styles'; import { TransitionProps } from '../transitions/transition'; import { PopoverClasses } from './popoverClasses'; +import type { JSX } from "react"; + export interface PopoverOrigin { vertical: 'top' | 'center' | 'bottom' | number; horizontal: 'left' | 'center' | 'right' | number; diff --git a/packages/mui-material/src/Radio/Radio.d.ts b/packages/mui-material/src/Radio/Radio.d.ts index 9b07e5576a34c3..afd6edaef6f10a 100644 --- a/packages/mui-material/src/Radio/Radio.d.ts +++ b/packages/mui-material/src/Radio/Radio.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { SwitchBaseProps } from '../internal/SwitchBase'; import { RadioClasses } from './radioClasses'; +import type { JSX } from "react"; + export interface RadioPropsSizeOverrides {} export interface RadioPropsColorOverrides {} diff --git a/packages/mui-material/src/RadioGroup/RadioGroup.d.ts b/packages/mui-material/src/RadioGroup/RadioGroup.d.ts index 7e82b72243c1b5..205c1de54bb0af 100644 --- a/packages/mui-material/src/RadioGroup/RadioGroup.d.ts +++ b/packages/mui-material/src/RadioGroup/RadioGroup.d.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { FormGroupProps } from '../FormGroup'; +import type { JSX } from "react"; + export interface RadioGroupProps extends Omit { /** * The default value. Use when the component is not controlled. diff --git a/packages/mui-material/src/Rating/Rating.d.ts b/packages/mui-material/src/Rating/Rating.d.ts index 1eb262d4c43d9f..881c9626536baf 100644 --- a/packages/mui-material/src/Rating/Rating.d.ts +++ b/packages/mui-material/src/Rating/Rating.d.ts @@ -4,6 +4,8 @@ import { OverridableStringUnion } from '@mui/types'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { RatingClasses } from './ratingClasses'; +import type { JSX } from "react"; + export interface IconContainerProps extends React.HTMLAttributes { value: number; } diff --git a/packages/mui-material/src/Select/Select.d.ts b/packages/mui-material/src/Select/Select.d.ts index c39944e1e0ded8..1ea4933bcbd1dc 100644 --- a/packages/mui-material/src/Select/Select.d.ts +++ b/packages/mui-material/src/Select/Select.d.ts @@ -8,6 +8,8 @@ import { SelectClasses } from './selectClasses'; import { OutlinedInputProps } from '../OutlinedInput'; import { FilledInputProps } from '../FilledInput'; +import type { JSX } from "react"; + export { SelectChangeEvent }; export interface BaseSelectProps diff --git a/packages/mui-material/src/Slide/Slide.d.ts b/packages/mui-material/src/Slide/Slide.d.ts index 76621b10735cbf..cb1b7efc2133b3 100644 --- a/packages/mui-material/src/Slide/Slide.d.ts +++ b/packages/mui-material/src/Slide/Slide.d.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { TransitionProps } from '../transitions/transition'; +import type { JSX } from "react"; + export interface SlideProps extends TransitionProps { /** * Perform the enter transition when it first mounts if `in` is also `true`. diff --git a/packages/mui-material/src/Snackbar/Snackbar.d.ts b/packages/mui-material/src/Snackbar/Snackbar.d.ts index 30b6fc17082d8b..a4c53a278f0d81 100644 --- a/packages/mui-material/src/Snackbar/Snackbar.d.ts +++ b/packages/mui-material/src/Snackbar/Snackbar.d.ts @@ -7,6 +7,8 @@ import { SnackbarContentProps } from '../SnackbarContent'; import { TransitionProps } from '../transitions/transition'; import { SnackbarClasses } from './snackbarClasses'; +import type { JSX } from "react"; + export interface SnackbarOrigin { vertical: 'top' | 'bottom'; horizontal: 'left' | 'center' | 'right'; diff --git a/packages/mui-material/src/SnackbarContent/SnackbarContent.d.ts b/packages/mui-material/src/SnackbarContent/SnackbarContent.d.ts index 767023bd3215d7..92326a025faf3f 100644 --- a/packages/mui-material/src/SnackbarContent/SnackbarContent.d.ts +++ b/packages/mui-material/src/SnackbarContent/SnackbarContent.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps } from '..'; import { PaperProps } from '../Paper'; import { SnackbarContentClasses } from './snackbarContentClasses'; +import type { JSX } from "react"; + export interface SnackbarContentProps extends StandardProps { /** * The action to display. It renders after the message, at the end of the snackbar. diff --git a/packages/mui-material/src/SpeedDial/SpeedDial.d.ts b/packages/mui-material/src/SpeedDial/SpeedDial.d.ts index b8c498d78fceec..e59335185905bd 100644 --- a/packages/mui-material/src/SpeedDial/SpeedDial.d.ts +++ b/packages/mui-material/src/SpeedDial/SpeedDial.d.ts @@ -6,6 +6,8 @@ import { FabProps } from '../Fab'; import { TransitionProps } from '../transitions'; import { SpeedDialClasses } from './speedDialClasses'; +import type { JSX } from "react"; + export type CloseReason = 'toggle' | 'blur' | 'mouseLeave' | 'escapeKeyDown'; export type OpenReason = 'toggle' | 'focus' | 'mouseEnter'; diff --git a/packages/mui-material/src/SpeedDialAction/SpeedDialAction.d.ts b/packages/mui-material/src/SpeedDialAction/SpeedDialAction.d.ts index 1a63ac305015fb..f2a70cccbad83d 100644 --- a/packages/mui-material/src/SpeedDialAction/SpeedDialAction.d.ts +++ b/packages/mui-material/src/SpeedDialAction/SpeedDialAction.d.ts @@ -6,6 +6,8 @@ import { FabProps } from '../Fab'; import { TooltipProps } from '../Tooltip'; import { SpeedDialActionClasses } from './speedDialActionClasses'; +import type { JSX } from "react"; + export interface SpeedDialActionProps extends StandardProps, 'children'> { /** * Override or extend the styles applied to the component. diff --git a/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.d.ts b/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.d.ts index 861f6d959d6611..ccbd83319b7627 100644 --- a/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.d.ts +++ b/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.d.ts @@ -4,6 +4,8 @@ import { Theme } from '../styles'; import { InternalStandardProps as StandardProps } from '..'; import { SpeedDialIconClasses } from './speedDialIconClasses'; +import type { JSX } from "react"; + export interface SpeedDialIconProps extends StandardProps, 'children'> { /** diff --git a/packages/mui-material/src/StepConnector/StepConnector.d.ts b/packages/mui-material/src/StepConnector/StepConnector.d.ts index 28d55ad48c9476..449b858e45e7f5 100644 --- a/packages/mui-material/src/StepConnector/StepConnector.d.ts +++ b/packages/mui-material/src/StepConnector/StepConnector.d.ts @@ -4,6 +4,8 @@ import { InternalStandardProps as StandardProps } from '..'; import { Theme } from '../styles'; import { StepConnectorClasses } from './stepConnectorClasses'; +import type { JSX } from "react"; + export type StepConnectorIcon = React.ReactElement | string | number; export interface StepConnectorProps diff --git a/packages/mui-material/src/StepContent/StepContent.d.ts b/packages/mui-material/src/StepContent/StepContent.d.ts index 60213039b3d901..405dc370b0dbee 100644 --- a/packages/mui-material/src/StepContent/StepContent.d.ts +++ b/packages/mui-material/src/StepContent/StepContent.d.ts @@ -5,6 +5,8 @@ import { Theme } from '../styles'; import { TransitionProps } from '../transitions/transition'; import { StepContentClasses } from './stepContentClasses'; +import type { JSX } from "react"; + export interface StepContentProps extends StandardProps> { /** * The content of the component. diff --git a/packages/mui-material/src/StepIcon/StepIcon.d.ts b/packages/mui-material/src/StepIcon/StepIcon.d.ts index 4f0c11140ae708..ababc5b733a967 100644 --- a/packages/mui-material/src/StepIcon/StepIcon.d.ts +++ b/packages/mui-material/src/StepIcon/StepIcon.d.ts @@ -4,6 +4,8 @@ import { InternalStandardProps as StandardProps } from '..'; import { Theme } from '../styles'; import { StepIconClasses } from './stepIconClasses'; +import type { JSX } from "react"; + export interface StepIconProps extends StandardProps, 'children'> { /** diff --git a/packages/mui-material/src/StepLabel/StepLabel.d.ts b/packages/mui-material/src/StepLabel/StepLabel.d.ts index 10d75f9151552b..c5fb2f67b43480 100644 --- a/packages/mui-material/src/StepLabel/StepLabel.d.ts +++ b/packages/mui-material/src/StepLabel/StepLabel.d.ts @@ -5,6 +5,8 @@ import { StepIconProps } from '../StepIcon'; import { Theme } from '../styles'; import { StepLabelClasses } from './stepLabelClasses'; +import type { JSX } from "react"; + export interface StepLabelProps extends StandardProps> { /** * In most cases will simply be a string containing a title for the label. diff --git a/packages/mui-material/src/Switch/Switch.d.ts b/packages/mui-material/src/Switch/Switch.d.ts index e4592a27ebfd57..613e3d1570c9a9 100644 --- a/packages/mui-material/src/Switch/Switch.d.ts +++ b/packages/mui-material/src/Switch/Switch.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { SwitchBaseProps } from '../internal/SwitchBase'; import { SwitchClasses } from './switchClasses'; +import type { JSX } from "react"; + export interface SwitchPropsSizeOverrides {} export interface SwitchPropsColorOverrides {} diff --git a/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts b/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts index e8d396e4a49b12..c2da08330442dc 100644 --- a/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts +++ b/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts @@ -5,6 +5,8 @@ import { ButtonBaseProps } from '../ButtonBase'; import { SvgIcon, Theme } from '..'; import { TabScrollButtonClasses } from './tabScrollButtonClasses'; +import type { JSX } from "react"; + export interface TabScrollButtonStartIconSlotPropsOverrides {} export interface TabScrollButtonEndIconSlotPropsOverrides {} diff --git a/packages/mui-material/src/TableCell/TableCell.d.ts b/packages/mui-material/src/TableCell/TableCell.d.ts index a702716b8e456f..78d9d9326895c4 100644 --- a/packages/mui-material/src/TableCell/TableCell.d.ts +++ b/packages/mui-material/src/TableCell/TableCell.d.ts @@ -4,6 +4,8 @@ import { SxProps } from '@mui/system'; import { InternalStandardProps as StandardProps, Theme } from '..'; import { TableCellClasses } from './tableCellClasses'; +import type { JSX } from "react"; + export interface TableCellPropsSizeOverrides {} export interface TableCellPropsVariantOverrides {} diff --git a/packages/mui-material/src/TextField/TextField.d.ts b/packages/mui-material/src/TextField/TextField.d.ts index 727ab3094d32e1..2b663e64ee0aa6 100644 --- a/packages/mui-material/src/TextField/TextField.d.ts +++ b/packages/mui-material/src/TextField/TextField.d.ts @@ -13,6 +13,8 @@ import { SelectProps } from '../Select'; import { Theme } from '../styles'; import { TextFieldClasses } from './textFieldClasses'; +import type { JSX } from "react"; + export interface TextFieldPropsColorOverrides {} export interface TextFieldPropsSizeOverrides {} diff --git a/packages/mui-material/src/ToggleButtonGroup/ToggleButtonGroup.d.ts b/packages/mui-material/src/ToggleButtonGroup/ToggleButtonGroup.d.ts index 2ba480dca945d4..27b39c0db31f84 100644 --- a/packages/mui-material/src/ToggleButtonGroup/ToggleButtonGroup.d.ts +++ b/packages/mui-material/src/ToggleButtonGroup/ToggleButtonGroup.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps } from '..'; import { Theme } from '../styles'; import { ToggleButtonGroupClasses } from './toggleButtonGroupClasses'; +import type { JSX } from "react"; + export interface ToggleButtonGroupPropsSizeOverrides {} export interface ToggleButtonGroupPropsColorOverrides {} diff --git a/packages/mui-material/src/Tooltip/Tooltip.d.ts b/packages/mui-material/src/Tooltip/Tooltip.d.ts index a6f699533ec61f..d28d6e76cd46d3 100644 --- a/packages/mui-material/src/Tooltip/Tooltip.d.ts +++ b/packages/mui-material/src/Tooltip/Tooltip.d.ts @@ -5,6 +5,8 @@ import { InternalStandardProps as StandardProps, Theme } from '..'; import { TransitionProps } from '../transitions/transition'; import { TooltipClasses } from './tooltipClasses'; +import type { JSX } from "react"; + export interface TooltipComponentsPropsOverrides {} export interface TooltipProps extends StandardProps, 'title'> { diff --git a/packages/mui-material/src/Typography/typography.spec.tsx b/packages/mui-material/src/Typography/typography.spec.tsx index 0ef0026b5e37d7..306675ef1fabeb 100644 --- a/packages/mui-material/src/Typography/typography.spec.tsx +++ b/packages/mui-material/src/Typography/typography.spec.tsx @@ -1,6 +1,8 @@ import * as React from 'react'; import { Typography, TypographyProps } from '@mui/material'; +import type { JSX } from "react"; + const typographyTest = () => { const CustomComponent: React.FC<{ prop1: string; prop2: number }> = function CustomComponent() { return
; diff --git a/packages/mui-material/src/Zoom/Zoom.d.ts b/packages/mui-material/src/Zoom/Zoom.d.ts index dbe0e5f86e08a7..96aef54b0af166 100644 --- a/packages/mui-material/src/Zoom/Zoom.d.ts +++ b/packages/mui-material/src/Zoom/Zoom.d.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { TransitionProps } from '../transitions/transition'; +import type { JSX } from "react"; + export interface ZoomProps extends TransitionProps { /** * Perform the enter transition when it first mounts if `in` is also `true`. diff --git a/packages/mui-material/src/types/OverridableComponentAugmentation.ts b/packages/mui-material/src/types/OverridableComponentAugmentation.ts index e3b9d08664e56f..1ac2055f8d294e 100644 --- a/packages/mui-material/src/types/OverridableComponentAugmentation.ts +++ b/packages/mui-material/src/types/OverridableComponentAugmentation.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { DistributiveOmit } from '@mui/types'; +import type { JSX } from "react"; + declare module '@mui/material/OverridableComponent' { /** * A component whose root component can be controlled via a `component` prop. diff --git a/packages/mui-material/src/useTouchRipple/useTouchRipple.ts b/packages/mui-material/src/useTouchRipple/useTouchRipple.ts index 8773c5d227a5c2..3a6fc0668a5d8b 100644 --- a/packages/mui-material/src/useTouchRipple/useTouchRipple.ts +++ b/packages/mui-material/src/useTouchRipple/useTouchRipple.ts @@ -9,7 +9,7 @@ interface UseTouchRippleProps { disableRipple?: boolean; disableTouchRipple?: boolean; focusVisible: boolean; - rippleRef: React.RefObject; + rippleRef: React.RefObject; } interface RippleEventHandlers { diff --git a/packages/mui-styled-engine-sc/src/StyledEngineProvider/StyledEngineProvider.d.ts b/packages/mui-styled-engine-sc/src/StyledEngineProvider/StyledEngineProvider.d.ts index 64288e446205fd..fa8cd1f7e9e2ba 100644 --- a/packages/mui-styled-engine-sc/src/StyledEngineProvider/StyledEngineProvider.d.ts +++ b/packages/mui-styled-engine-sc/src/StyledEngineProvider/StyledEngineProvider.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + export interface StyledEngineProviderProps { children?: React.ReactNode; injectFirst?: boolean; diff --git a/packages/mui-styled-engine-sc/src/index.d.ts b/packages/mui-styled-engine-sc/src/index.d.ts index ea46672d21563a..07db01dea25a02 100644 --- a/packages/mui-styled-engine-sc/src/index.d.ts +++ b/packages/mui-styled-engine-sc/src/index.d.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import * as CSS from 'csstype'; import * as hoistNonReactStatics from 'hoist-non-react-statics'; +import type { JSX } from "react"; + type WithOptionalTheme

= OmitU & { theme?: T | undefined; }; diff --git a/packages/mui-styled-engine/src/StyledEngineProvider/StyledEngineProvider.d.ts b/packages/mui-styled-engine/src/StyledEngineProvider/StyledEngineProvider.d.ts index 64288e446205fd..fa8cd1f7e9e2ba 100644 --- a/packages/mui-styled-engine/src/StyledEngineProvider/StyledEngineProvider.d.ts +++ b/packages/mui-styled-engine/src/StyledEngineProvider/StyledEngineProvider.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + export interface StyledEngineProviderProps { children?: React.ReactNode; injectFirst?: boolean; diff --git a/packages/mui-styled-engine/src/index.d.ts b/packages/mui-styled-engine/src/index.d.ts index 4bc50bc1452bda..ed2db53a539d72 100644 --- a/packages/mui-styled-engine/src/index.d.ts +++ b/packages/mui-styled-engine/src/index.d.ts @@ -2,6 +2,8 @@ import * as CSS from 'csstype'; import { StyledComponent, StyledOptions } from '@emotion/styled'; import { PropsOf } from '@emotion/react'; +import type { JSX } from "react"; + export * from '@emotion/styled'; export { default } from '@emotion/styled'; export { ThemeContext, keyframes, css } from '@emotion/react'; diff --git a/packages/mui-styles/src/styled/styled.d.ts b/packages/mui-styles/src/styled/styled.d.ts index 7e3666e301b576..1df285b5cc1b91 100644 --- a/packages/mui-styles/src/styled/styled.d.ts +++ b/packages/mui-styles/src/styled/styled.d.ts @@ -7,6 +7,8 @@ import { } from '@mui/styles/withStyles'; import { DefaultTheme } from '../defaultTheme'; +import type { JSX } from "react"; + // We don't want a union type here (like React.JSXElementConstructor) in order to support mapped types. export type StyledComponent

= (props: P) => React.ReactElement | null; diff --git a/packages/mui-styles/src/withTheme/withTheme.d.ts b/packages/mui-styles/src/withTheme/withTheme.d.ts index e211c3e54086ae..730f7769b81a64 100644 --- a/packages/mui-styles/src/withTheme/withTheme.d.ts +++ b/packages/mui-styles/src/withTheme/withTheme.d.ts @@ -2,6 +2,8 @@ import * as React from 'react'; import { ConsistentWith, DistributiveOmit, PropInjector } from '@mui/types'; import { DefaultTheme } from '../defaultTheme'; +import type { JSX } from "react"; + export interface WithThemeCreatorOption { defaultTheme?: Theme; } diff --git a/packages/mui-types/OverridableComponentAugmentation.ts b/packages/mui-types/OverridableComponentAugmentation.ts index aa50ed447020f4..68dd05f7a9d362 100644 --- a/packages/mui-types/OverridableComponentAugmentation.ts +++ b/packages/mui-types/OverridableComponentAugmentation.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + declare module '@mui/types' { /** * A component whose root component can be controlled via a `component` prop. diff --git a/packages/mui-types/index.d.ts b/packages/mui-types/index.d.ts index 64daa8cb6bb7bc..5b96f5a92f097f 100644 --- a/packages/mui-types/index.d.ts +++ b/packages/mui-types/index.d.ts @@ -1,5 +1,7 @@ import * as React from 'react'; +import type { JSX } from "react"; + // disable automatic export export {}; diff --git a/packages/mui-utils/src/setRef/setRef.spec.tsx b/packages/mui-utils/src/setRef/setRef.spec.tsx index c9c90757c0d8af..847cfc8b9bf1de 100644 --- a/packages/mui-utils/src/setRef/setRef.spec.tsx +++ b/packages/mui-utils/src/setRef/setRef.spec.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import setRef from './setRef'; function MyRef() { - const ref = React.useRef(); + const ref = React.useRef(undefined); const handleRef = React.useCallback((node: HTMLDivElement) => { setRef(ref, node); diff --git a/packages/pigment-css-react/src/Box.d.ts b/packages/pigment-css-react/src/Box.d.ts index 8cfb27534aa6d4..d495bace889941 100644 --- a/packages/pigment-css-react/src/Box.d.ts +++ b/packages/pigment-css-react/src/Box.d.ts @@ -1,6 +1,8 @@ import type { BaseDefaultProps, Substitute, NoInfer } from './base'; import type { SxProp } from './sx'; +import type { JSX } from "react"; + export type PolymorphicComponentProps< BaseProps extends object, AsTarget extends React.ElementType | undefined, diff --git a/packages/pigment-css-react/src/base.d.ts b/packages/pigment-css-react/src/base.d.ts index c524bd4a3f7e43..39230b5149e6ef 100644 --- a/packages/pigment-css-react/src/base.d.ts +++ b/packages/pigment-css-react/src/base.d.ts @@ -1,5 +1,7 @@ import type * as CSS from 'csstype'; +import type { JSX } from "react"; + export type CSSProperties = CSS.PropertiesFallback; export type CSSPropertiesMultiValue = { diff --git a/packages/pigment-css-react/src/styled.d.ts b/packages/pigment-css-react/src/styled.d.ts index d0fd15efb7351a..57fd42e229847a 100644 --- a/packages/pigment-css-react/src/styled.d.ts +++ b/packages/pigment-css-react/src/styled.d.ts @@ -4,6 +4,8 @@ import type { ThemeArgs } from './theme'; import type { SxProp } from './sx'; import { Primitve } from './keyframes'; +import type { JSX } from "react"; + type Falsy = false | 0 | '' | null | undefined; export interface StyledVariants { diff --git a/packages/test-utils/src/describeConformance.tsx b/packages/test-utils/src/describeConformance.tsx index 3063749ac0d095..146bb633d8a7ff 100644 --- a/packages/test-utils/src/describeConformance.tsx +++ b/packages/test-utils/src/describeConformance.tsx @@ -8,6 +8,8 @@ import createDescribe from './createDescribe'; import findOutermostIntrinsic from './findOutermostIntrinsic'; import { MuiRenderResult } from './createRenderer'; +import type { JSX } from "react"; + function capitalize(string: string): string { return string.charAt(0).toUpperCase() + string.slice(1); } From 50500dd248b44a87ff7dbf916aee5172c40ee3fb Mon Sep 17 00:00:00 2001 From: eps1lon Date: Wed, 20 Mar 2024 00:33:07 +0100 Subject: [PATCH 3/4] Resolve `ReactElement` breaking changes --- docs/data/base/components/modal/UseModal.tsx | 2 +- .../transitions/ReactTransitionGroup.tsx | 2 +- .../menu/MenuIconSideNavExample.tsx | 2 +- .../templates/files/components/Menu.tsx | 2 +- .../components/app-bar/ElevateAppBar.tsx | 2 +- .../material/components/modal/SpringModal.tsx | 2 +- .../components/typography/SectionHeadline.tsx | 2 +- .../ClickAwayListener/ClickAwayListener.tsx | 2 +- .../mui-base/src/FocusTrap/FocusTrap.types.ts | 2 +- packages/mui-base/src/Modal/Modal.types.ts | 2 +- .../src/unstable_useModal/useModal.types.ts | 2 +- .../test/describeConformanceUnstyled.tsx | 10 +++++----- .../mui-joy/src/Breadcrumbs/Breadcrumbs.tsx | 2 +- .../mui-joy/src/ButtonGroup/ButtonGroup.tsx | 8 ++++++-- packages/mui-joy/src/Card/Card.tsx | 8 ++++++-- packages/mui-joy/src/Link/Link.tsx | 4 ++-- packages/mui-joy/src/ListItem/ListItem.tsx | 2 +- .../mui-joy/src/ModalDialog/ModalDialog.tsx | 8 ++++++-- .../ToggleButtonGroup/ToggleButtonGroup.tsx | 12 +++++++---- packages/mui-joy/src/Tooltip/TooltipProps.ts | 2 +- .../mui-joy/src/Typography/Typography.tsx | 4 ++-- packages/mui-material-next/src/Chip/Chip.tsx | 6 +++--- .../src/FormControl/FormControl.tsx | 4 ++-- packages/mui-material-next/src/Menu/Menu.tsx | 4 ++-- .../src/Slider/SliderValueLabel.types.ts | 2 +- .../src/Unstable_Grid/createGrid.tsx | 2 +- packages/test-utils/src/createRenderer.tsx | 2 +- .../test-utils/src/describeConformance.tsx | 20 +++++++++---------- 28 files changed, 69 insertions(+), 53 deletions(-) diff --git a/docs/data/base/components/modal/UseModal.tsx b/docs/data/base/components/modal/UseModal.tsx index 8024572f55d57b..0462704cf259e6 100644 --- a/docs/data/base/components/modal/UseModal.tsx +++ b/docs/data/base/components/modal/UseModal.tsx @@ -39,7 +39,7 @@ export default function UseModal() { } interface ModalProps { - children: React.ReactElement; + children: React.ReactElement; closeAfterTransition?: boolean; container?: Element | (() => Element | null) | null; disableAutoFocus?: boolean; diff --git a/docs/data/base/components/transitions/ReactTransitionGroup.tsx b/docs/data/base/components/transitions/ReactTransitionGroup.tsx index 1f3ef41aaf6dfc..cc72ef63550fbc 100644 --- a/docs/data/base/components/transitions/ReactTransitionGroup.tsx +++ b/docs/data/base/components/transitions/ReactTransitionGroup.tsx @@ -115,7 +115,7 @@ function PopupWithTrigger(props: PopupProps) { ); } -function MaterialUITransitionAdapter(props: { children: React.ReactElement }) { +function MaterialUITransitionAdapter(props: { children: React.ReactElement }) { const { requestedEnter, onExited } = useTransitionStateManager(); const { children } = props; diff --git a/docs/data/joy/components/menu/MenuIconSideNavExample.tsx b/docs/data/joy/components/menu/MenuIconSideNavExample.tsx index 28d26843928d4e..de451cc1bd3989 100644 --- a/docs/data/joy/components/menu/MenuIconSideNavExample.tsx +++ b/docs/data/joy/components/menu/MenuIconSideNavExample.tsx @@ -15,7 +15,7 @@ import MenuButton from '@mui/joy/MenuButton'; // https://popper.js.org/docs/v2/modifiers/offset/ interface MenuButtonProps extends React.HTMLAttributes { children: React.ReactNode; - menu: React.ReactElement; + menu: React.ReactElement; open: boolean; onOpen: ( event?: diff --git a/docs/data/joy/getting-started/templates/files/components/Menu.tsx b/docs/data/joy/getting-started/templates/files/components/Menu.tsx index 9eb339005910d4..b5edc3477a58c0 100644 --- a/docs/data/joy/getting-started/templates/files/components/Menu.tsx +++ b/docs/data/joy/getting-started/templates/files/components/Menu.tsx @@ -4,7 +4,7 @@ import MenuItem from '@mui/joy/MenuItem'; import { ListActionTypes } from '@mui/base/useList'; export default function Menu(props: { - control: React.ReactElement; + control: React.ReactElement; id: string; menus: Array<{ label: string } & { [k: string]: any }>; }) { diff --git a/docs/data/material/components/app-bar/ElevateAppBar.tsx b/docs/data/material/components/app-bar/ElevateAppBar.tsx index 2f077ee6723d20..cf47ff2b5cc745 100644 --- a/docs/data/material/components/app-bar/ElevateAppBar.tsx +++ b/docs/data/material/components/app-bar/ElevateAppBar.tsx @@ -13,7 +13,7 @@ interface Props { * You won't need it on your project. */ window?: () => Window; - children: React.ReactElement; + children: React.ReactElement; } function ElevationScroll(props: Props) { diff --git a/docs/data/material/components/modal/SpringModal.tsx b/docs/data/material/components/modal/SpringModal.tsx index b478ef1dc38fb2..31c07aadab1754 100644 --- a/docs/data/material/components/modal/SpringModal.tsx +++ b/docs/data/material/components/modal/SpringModal.tsx @@ -7,7 +7,7 @@ import Typography from '@mui/material/Typography'; import { useSpring, animated } from '@react-spring/web'; interface FadeProps { - children: React.ReactElement; + children: React.ReactElement; in?: boolean; onClick?: any; onEnter?: (node: HTMLElement, isAppearing: boolean) => void; diff --git a/docs/src/components/typography/SectionHeadline.tsx b/docs/src/components/typography/SectionHeadline.tsx index b2b587eee4595b..b1e30e3eb76611 100644 --- a/docs/src/components/typography/SectionHeadline.tsx +++ b/docs/src/components/typography/SectionHeadline.tsx @@ -11,7 +11,7 @@ interface SectionHeadlineProps { */ inverted?: boolean; overline?: React.ReactNode; - title: string | React.ReactElement; + title: string | React.ReactElement; } export default function SectionHeadline(props: SectionHeadlineProps) { diff --git a/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx b/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx index f0219d88fca4ed..8a86c1815fc6a0 100644 --- a/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx +++ b/packages/mui-base/src/ClickAwayListener/ClickAwayListener.tsx @@ -37,7 +37,7 @@ export interface ClickAwayListenerProps { /** * The wrapped element. */ - children: React.ReactElement; + children: React.ReactElement; /** * If `true`, the React tree is ignored and only the DOM tree is considered. * This prop changes how portaled elements are handled. diff --git a/packages/mui-base/src/FocusTrap/FocusTrap.types.ts b/packages/mui-base/src/FocusTrap/FocusTrap.types.ts index 70c6861eeaf4f7..be9cf5ee1e93c3 100644 --- a/packages/mui-base/src/FocusTrap/FocusTrap.types.ts +++ b/packages/mui-base/src/FocusTrap/FocusTrap.types.ts @@ -24,7 +24,7 @@ export interface FocusTrapProps { /** * A single child content element. */ - children: React.ReactElement; + children: React.ReactElement; /** * If `true`, the focus trap will not automatically shift focus to itself when it opens, and * replace it to the last focused element when it closes. diff --git a/packages/mui-base/src/Modal/Modal.types.ts b/packages/mui-base/src/Modal/Modal.types.ts index 899d1721291cdc..8aa7f1ea29ee85 100644 --- a/packages/mui-base/src/Modal/Modal.types.ts +++ b/packages/mui-base/src/Modal/Modal.types.ts @@ -10,7 +10,7 @@ export interface ModalOwnProps { /** * A single child content element. */ - children: React.ReactElement; + children: React.ReactElement; /** * When set to true the Modal waits until a nested Transition is completed before closing. * @default false diff --git a/packages/mui-base/src/unstable_useModal/useModal.types.ts b/packages/mui-base/src/unstable_useModal/useModal.types.ts index 337b5b3918dfd0..ef7068b56f3a59 100644 --- a/packages/mui-base/src/unstable_useModal/useModal.types.ts +++ b/packages/mui-base/src/unstable_useModal/useModal.types.ts @@ -22,7 +22,7 @@ export type UseModalParameters = { /** * A single child content element. */ - children: React.ReactElement | undefined | null; + children: React.ReactElement | undefined | null; /** * When set to true the Modal waits until a nested Transition is completed before closing. * @default false diff --git a/packages/mui-base/test/describeConformanceUnstyled.tsx b/packages/mui-base/test/describeConformanceUnstyled.tsx index 750748d411eed9..9a421f51a298f2 100644 --- a/packages/mui-base/test/describeConformanceUnstyled.tsx +++ b/packages/mui-base/test/describeConformanceUnstyled.tsx @@ -60,7 +60,7 @@ function forEachSlot( } function testPropForwarding( - element: React.ReactElement, + element: React.ReactElement, getOptions: () => UnstyledConformanceOptions, ) { const { @@ -110,7 +110,7 @@ function testPropForwarding( }); } -function testSlotsProp(element: React.ReactElement, getOptions: () => UnstyledConformanceOptions) { +function testSlotsProp(element: React.ReactElement, getOptions: () => UnstyledConformanceOptions) { const { render, slots, @@ -224,7 +224,7 @@ function testSlotsProp(element: React.ReactElement, getOptions: () => UnstyledCo } function testSlotPropsProp( - element: React.ReactElement, + element: React.ReactElement, getOptions: () => UnstyledConformanceOptions, ) { const { render, slots } = getOptions(); @@ -271,7 +271,7 @@ interface TestOwnerState { } function testSlotPropsCallbacks( - element: React.ReactElement, + element: React.ReactElement, getOptions: () => UnstyledConformanceOptions, ) { const { render, slots } = getOptions(); @@ -307,7 +307,7 @@ function testSlotPropsCallbacks( } function testOwnerStatePropagation( - element: React.ReactElement, + element: React.ReactElement, getOptions: () => UnstyledConformanceOptions, ) { const { diff --git a/packages/mui-joy/src/Breadcrumbs/Breadcrumbs.tsx b/packages/mui-joy/src/Breadcrumbs/Breadcrumbs.tsx index 6da089a2c1d580..10a278263f5500 100644 --- a/packages/mui-joy/src/Breadcrumbs/Breadcrumbs.tsx +++ b/packages/mui-joy/src/Breadcrumbs/Breadcrumbs.tsx @@ -154,7 +154,7 @@ const Breadcrumbs = React.forwardRef(function Breadcrumbs(inProps, ref) { const allItems = ( React.Children.toArray(children).filter((child) => { return React.isValidElement(child); - }) as Array + }) as Array> ).map((child, index) => ( {isMuiElement(child, ['Typography']) diff --git a/packages/mui-joy/src/ButtonGroup/ButtonGroup.tsx b/packages/mui-joy/src/ButtonGroup/ButtonGroup.tsx index 00cd3fbff6f73c..35cc017424414a 100644 --- a/packages/mui-joy/src/ButtonGroup/ButtonGroup.tsx +++ b/packages/mui-joy/src/ButtonGroup/ButtonGroup.tsx @@ -236,11 +236,15 @@ const ButtonGroup = React.forwardRef(function ButtonGroup(inProps, ref) { } const extraProps: Record = {}; if (isMuiElement(child, ['Divider'])) { - extraProps.inset = 'inset' in child.props ? child.props.inset : 'context'; + const dividerElement = child as React.ReactElement; + extraProps.inset = + 'inset' in dividerElement.props ? dividerElement.props.inset : 'context'; const dividerOrientation = orientation === 'vertical' ? 'horizontal' : 'vertical'; extraProps.orientation = - 'orientation' in child.props ? child.props.orientation : dividerOrientation; + 'orientation' in dividerElement.props + ? dividerElement.props.orientation + : dividerOrientation; extraProps.role = 'presentation'; extraProps.component = 'span'; } diff --git a/packages/mui-joy/src/Card/Card.tsx b/packages/mui-joy/src/Card/Card.tsx index 3fdd38efa29774..7d11d958e90eb7 100644 --- a/packages/mui-joy/src/Card/Card.tsx +++ b/packages/mui-joy/src/Card/Card.tsx @@ -166,11 +166,15 @@ const Card = React.forwardRef(function Card(inProps, ref) { } const extraProps: Record = {}; if (isMuiElement(child, ['Divider'])) { - extraProps.inset = 'inset' in child.props ? child.props.inset : 'context'; + const dividerElement = child as React.ReactElement; + extraProps.inset = + 'inset' in dividerElement.props ? dividerElement.props.inset : 'context'; const dividerOrientation = orientation === 'vertical' ? 'horizontal' : 'vertical'; extraProps.orientation = - 'orientation' in child.props ? child.props.orientation : dividerOrientation; + 'orientation' in dividerElement.props + ? dividerElement.props.orientation + : dividerOrientation; } if (index === 0) { extraProps['data-first-child'] = ''; diff --git a/packages/mui-joy/src/Link/Link.tsx b/packages/mui-joy/src/Link/Link.tsx index 378a91b8d2f142..bac2fbe4f315bc 100644 --- a/packages/mui-joy/src/Link/Link.tsx +++ b/packages/mui-joy/src/Link/Link.tsx @@ -292,8 +292,8 @@ const Link = React.forwardRef(function Link(inProps, ref) { )} {isMuiElement(children, ['Skeleton']) - ? React.cloneElement(children as React.ReactElement, { - variant: (children as React.ReactElement).props.variant || 'inline', + ? React.cloneElement(children as React.ReactElement, { + variant: (children as React.ReactElement).props.variant || 'inline', }) : children} {endDecorator && {endDecorator}} diff --git a/packages/mui-joy/src/ListItem/ListItem.tsx b/packages/mui-joy/src/ListItem/ListItem.tsx index 3e9eb9baba8cc0..3b951be6d42377 100644 --- a/packages/mui-joy/src/ListItem/ListItem.tsx +++ b/packages/mui-joy/src/ListItem/ListItem.tsx @@ -256,7 +256,7 @@ const ListItem = React.forwardRef(function ListItem(inProps, ref) { ...(index === 0 && { 'data-first-child': '' }), ...(isMuiElement(child, ['ListItem']) && { // The ListItem of ListItem should not be 'li' - component: child.props.component || 'div', + component: (child as React.ReactElement).props.component || 'div', }), }) : child, diff --git a/packages/mui-joy/src/ModalDialog/ModalDialog.tsx b/packages/mui-joy/src/ModalDialog/ModalDialog.tsx index 36c6da2fd58d8d..d36ac1531b8615 100644 --- a/packages/mui-joy/src/ModalDialog/ModalDialog.tsx +++ b/packages/mui-joy/src/ModalDialog/ModalDialog.tsx @@ -195,11 +195,15 @@ const ModalDialog = React.forwardRef(function ModalDialog(inProps, ref) { } const extraProps: Record = {}; if (isMuiElement(child, ['Divider'])) { - extraProps.inset = 'inset' in child.props ? child.props.inset : 'context'; + const dividerElement = child as React.ReactElement; + extraProps.inset = + 'inset' in dividerElement.props ? dividerElement.props.inset : 'context'; const dividerOrientation = orientation === 'vertical' ? 'horizontal' : 'vertical'; extraProps.orientation = - 'orientation' in child.props ? child.props.orientation : dividerOrientation; + 'orientation' in dividerElement.props + ? dividerElement.props.orientation + : dividerOrientation; } if (index === 0) { extraProps['data-first-child'] = ''; diff --git a/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx b/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx index 87a6878f149bc6..64e66a3cebbc5d 100644 --- a/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx +++ b/packages/mui-joy/src/ToggleButtonGroup/ToggleButtonGroup.tsx @@ -1,4 +1,4 @@ -'use client';; +'use client'; import * as React from 'react'; import clsx from 'clsx'; import PropTypes from 'prop-types'; @@ -22,7 +22,7 @@ import { StyledButtonGroup } from '../ButtonGroup/ButtonGroup'; import ButtonGroupContext from '../ButtonGroup/ButtonGroupContext'; import ToggleButtonGroupContext from './ToggleButtonGroupContext'; -import type { JSX } from "react"; +import type { JSX } from 'react'; interface InternalChangeEventHandler { (event: React.MouseEvent, value: Value | Array | null): void; @@ -163,11 +163,15 @@ const ToggleButtonGroup = React.forwardRef(function ToggleButtonGroup< } const extraProps: Record = {}; if (isMuiElement(child, ['Divider'])) { - extraProps.inset = 'inset' in child.props ? child.props.inset : 'context'; + const dividerElement = child as React.ReactElement; + extraProps.inset = + 'inset' in dividerElement.props ? dividerElement.props.inset : 'context'; const dividerOrientation = orientation === 'vertical' ? 'horizontal' : 'vertical'; extraProps.orientation = - 'orientation' in child.props ? child.props.orientation : dividerOrientation; + 'orientation' in dividerElement.props + ? dividerElement.props.orientation + : dividerOrientation; extraProps.role = 'presentation'; extraProps.component = 'span'; } diff --git a/packages/mui-joy/src/Tooltip/TooltipProps.ts b/packages/mui-joy/src/Tooltip/TooltipProps.ts index bd01a316186c3c..f76a50e775fd86 100644 --- a/packages/mui-joy/src/Tooltip/TooltipProps.ts +++ b/packages/mui-joy/src/Tooltip/TooltipProps.ts @@ -47,7 +47,7 @@ export interface TooltipTypeMap

{ /** * Tooltip reference element. */ - children: React.ReactElement; + children: React.ReactElement; /** * The color of the component. It supports those theme colors that make sense for this component. * @default 'neutral' diff --git a/packages/mui-joy/src/Typography/Typography.tsx b/packages/mui-joy/src/Typography/Typography.tsx index e77423e8c6400e..dd520cde4d4d3b 100644 --- a/packages/mui-joy/src/Typography/Typography.tsx +++ b/packages/mui-joy/src/Typography/Typography.tsx @@ -250,8 +250,8 @@ const Typography = React.forwardRef(function Typography(inProps, ref) { )} {hasSkeleton - ? React.cloneElement(children as React.ReactElement, { - variant: (children as React.ReactElement).props.variant || 'inline', + ? React.cloneElement(children as React.ReactElement, { + variant: (children as React.ReactElement).props.variant || 'inline', }) : children} {endDecorator && {endDecorator}} diff --git a/packages/mui-material-next/src/Chip/Chip.tsx b/packages/mui-material-next/src/Chip/Chip.tsx index 13d4e20900a53f..1a65e6f0cf7c6f 100644 --- a/packages/mui-material-next/src/Chip/Chip.tsx +++ b/packages/mui-material-next/src/Chip/Chip.tsx @@ -384,7 +384,7 @@ const Chip = React.forwardRef(function Chip< if (onDelete) { deleteIcon = deleteIconProp && React.isValidElement(deleteIconProp) ? ( - React.cloneElement(deleteIconProp as React.ReactElement, { + React.cloneElement(deleteIconProp as React.ReactElement, { className: clsx((deleteIconProp.props as any)?.className, classes.deleteIcon), onClick: handleDeleteIconClick, }) @@ -395,14 +395,14 @@ const Chip = React.forwardRef(function Chip< let avatar = null; if (hasAvatar) { - avatar = React.cloneElement(avatarProp as React.ReactElement, { + avatar = React.cloneElement(avatarProp as React.ReactElement, { className: clsx(classes.avatar, (avatarProp.props as any)?.className), }); } let icon = null; if (hasIcon) { - icon = React.cloneElement(iconProp as React.ReactElement, { + icon = React.cloneElement(iconProp as React.ReactElement, { className: clsx(classes.icon, (iconProp.props as any)?.className), }); } diff --git a/packages/mui-material-next/src/FormControl/FormControl.tsx b/packages/mui-material-next/src/FormControl/FormControl.tsx index 68aac7ad936019..ead35410b52691 100644 --- a/packages/mui-material-next/src/FormControl/FormControl.tsx +++ b/packages/mui-material-next/src/FormControl/FormControl.tsx @@ -117,7 +117,7 @@ const FormControl = React.forwardRef(function FormControl< const input = React.isValidElement(child) && isMuiElement(child, ['Select']) - ? child.props.input + ? (child.props as any).input : child; if (input && isAdornedStart(input.props)) { @@ -141,7 +141,7 @@ const FormControl = React.forwardRef(function FormControl< if ( React.isValidElement(child) && - (isFilled(child.props, true) || isFilled(child.props.slotProps?.input, true)) + (isFilled(child.props, true) || isFilled((child.props as any).slotProps?.input, true)) ) { initialFilled = true; } diff --git a/packages/mui-material-next/src/Menu/Menu.tsx b/packages/mui-material-next/src/Menu/Menu.tsx index 6719041fa5668e..edbdc132b7daaa 100644 --- a/packages/mui-material-next/src/Menu/Menu.tsx +++ b/packages/mui-material-next/src/Menu/Menu.tsx @@ -196,8 +196,8 @@ const MenuInner = React.forwardRef(function Menu(inProps, ref) { } } - if (!child.props.disabled) { - if (variant === 'selectedMenu' && child.props.selected) { + if (!(child.props as any).disabled) { + if (variant === 'selectedMenu' && (child.props as any).selected) { activeItemIndex = index; } else if (activeItemIndex === -1) { activeItemIndex = index; diff --git a/packages/mui-material/src/Slider/SliderValueLabel.types.ts b/packages/mui-material/src/Slider/SliderValueLabel.types.ts index 68fe865e14d10f..251c91edc65617 100644 --- a/packages/mui-material/src/Slider/SliderValueLabel.types.ts +++ b/packages/mui-material/src/Slider/SliderValueLabel.types.ts @@ -1,5 +1,5 @@ export interface SliderValueLabelProps { - children?: React.ReactElement; + children?: React.ReactElement; className?: string; style?: React.CSSProperties; /** diff --git a/packages/mui-system/src/Unstable_Grid/createGrid.tsx b/packages/mui-system/src/Unstable_Grid/createGrid.tsx index 092185ae30fcb1..e0984a90dd7f23 100644 --- a/packages/mui-system/src/Unstable_Grid/createGrid.tsx +++ b/packages/mui-system/src/Unstable_Grid/createGrid.tsx @@ -166,7 +166,7 @@ export default function createGrid( {React.Children.map(children, (child) => { if (React.isValidElement(child) && isMuiElement(child, ['Grid'])) { return React.cloneElement(child, { - unstable_level: child.props.unstable_level ?? level + 1, + unstable_level: (child.props as any).unstable_level ?? level + 1, } as GridProps); } return child; diff --git a/packages/test-utils/src/createRenderer.tsx b/packages/test-utils/src/createRenderer.tsx index 33d7a6017dfa3b..f61a19be4e89c6 100644 --- a/packages/test-utils/src/createRenderer.tsx +++ b/packages/test-utils/src/createRenderer.tsx @@ -281,7 +281,7 @@ export interface MuiRenderToStringResult { } function render( - element: React.ReactElement, + element: React.ReactElement, configuration: ClientRenderConfiguration, ): MuiRenderResult { const { container, hydrate, wrapper } = configuration; diff --git a/packages/test-utils/src/describeConformance.tsx b/packages/test-utils/src/describeConformance.tsx index 146bb633d8a7ff..ced8c1aa5e7a5d 100644 --- a/packages/test-utils/src/describeConformance.tsx +++ b/packages/test-utils/src/describeConformance.tsx @@ -81,7 +81,7 @@ function assertDOMNode(node: unknown) { * The element should have a component wrapped in withStyles as the root */ function testRef( - element: React.ReactElement, + element: React.ReactElement, mount: ConformanceOptions['mount'], onRef: (instance: unknown, wrapper: import('enzyme').ReactWrapper) => void = assertDOMNode, ) { @@ -131,7 +131,7 @@ function throwMissingPropError(field: string): never { * MUI components have a `className` prop. The `className` is applied to * the root component. */ -export function testClassName(element: React.ReactElement, getOptions: () => ConformanceOptions) { +export function testClassName(element: React.ReactElement, getOptions: () => ConformanceOptions) { it('applies the className to the root component', () => { const { mount } = getOptions(); if (!mount) { @@ -151,7 +151,7 @@ export function testClassName(element: React.ReactElement, getOptions: () => Con * Component from @inheritComponent */ export function testComponentProp( - element: React.ReactElement, + element: React.ReactElement, getOptions: () => ConformanceOptions, ) { describe('prop: component', () => { @@ -171,7 +171,7 @@ export function testComponentProp( /** * MUI components can spread additional props to a documented component. */ -export function testPropsSpread(element: React.ReactElement, getOptions: () => ConformanceOptions) { +export function testPropsSpread(element: React.ReactElement, getOptions: () => ConformanceOptions) { it(`spreads props to the root component`, () => { // type def in ConformanceOptions const { inheritComponent, mount } = getOptions(); @@ -222,7 +222,7 @@ export function describeRef(element: React.ReactElement, getOptions: () => Confo /** * Tests that the root component has the root class */ -export function testRootClass(element: React.ReactElement, getOptions: () => ConformanceOptions) { +export function testRootClass(element: React.ReactElement, getOptions: () => ConformanceOptions) { it('applies the root class to the root component if it has this class', () => { const { classes, render, skip } = getOptions(); if (classes.root == null) { @@ -288,7 +288,7 @@ function forEachSlot( }); } -function testSlotsProp(element: React.ReactElement, getOptions: () => ConformanceOptions) { +function testSlotsProp(element: React.ReactElement, getOptions: () => ConformanceOptions) { const { render, slots, testLegacyComponentsProp } = getOptions(); const CustomComponent = React.forwardRef< @@ -459,7 +459,7 @@ function testSlotsProp(element: React.ReactElement, getOptions: () => Conformanc }); } -function testSlotPropsProp(element: React.ReactElement, getOptions: () => ConformanceOptions) { +function testSlotPropsProp(element: React.ReactElement, getOptions: () => ConformanceOptions) { const { render, slots, testLegacyComponentsProp } = getOptions(); if (!render) { @@ -542,7 +542,7 @@ function testSlotPropsProp(element: React.ReactElement, getOptions: () => Confor }); } -function testSlotPropsCallback(element: React.ReactElement, getOptions: () => ConformanceOptions) { +function testSlotPropsCallback(element: React.ReactElement, getOptions: () => ConformanceOptions) { const { render, slots } = getOptions(); if (!render) { @@ -570,7 +570,7 @@ function testSlotPropsCallback(element: React.ReactElement, getOptions: () => Co * MUI components have a `components` prop that allows rendering a different * Components from @inheritComponent */ -function testComponentsProp(element: React.ReactElement, getOptions: () => ConformanceOptions) { +function testComponentsProp(element: React.ReactElement, getOptions: () => ConformanceOptions) { describe('prop components:', () => { it('can render another root component with the `components` prop', () => { const { mount, testComponentsRootPropWith: component = 'em' } = getOptions(); @@ -879,7 +879,7 @@ function testThemeStyleOverrides( * MUI theme has a components section that allows specifying custom variants. * Components from @inheritComponent */ -function testThemeVariants(element: React.ReactElement, getOptions: () => ConformanceOptions) { +function testThemeVariants(element: React.ReactElement, getOptions: () => ConformanceOptions) { describe('theme variants:', () => { it("respect theme's variants", function test() { if (/jsdom/.test(window.navigator.userAgent)) { From 8a83ffd7b51668ef180f6301e86a9b9e150ae3ea Mon Sep 17 00:00:00 2001 From: eps1lon Date: Wed, 20 Mar 2024 00:33:20 +0100 Subject: [PATCH 4/4] Resolve rest of breaking changes --- .../modules/components/JoyThemeBuilder.tsx | 22 +++++++++++-------- .../src/ButtonBase/ButtonBase.test.js | 2 +- .../elementAcceptingRef.test.tsx | 2 ++ .../elementTypeAcceptingRef.test.tsx | 2 ++ .../getDisplayName/getDisplayName.test.tsx | 8 +++---- packages/test-utils/src/createMount.tsx | 2 ++ 6 files changed, 24 insertions(+), 14 deletions(-) diff --git a/docs/src/modules/components/JoyThemeBuilder.tsx b/docs/src/modules/components/JoyThemeBuilder.tsx index e668edbed5979e..24b72726f03a98 100644 --- a/docs/src/modules/components/JoyThemeBuilder.tsx +++ b/docs/src/modules/components/JoyThemeBuilder.tsx @@ -983,7 +983,7 @@ function filterGlobalVariantTokens(palette: Partial, variant: Va return tokens; } -type StateReducer = (state: T, action: Partial) => T; +type State = { hover: boolean; active: boolean; disabled: boolean }; function GlobalVariantForm({ color, @@ -1001,13 +1001,17 @@ function GlobalVariantForm({ onRemove: (token: string) => void; }) { const [selectedVariant, setSelectedVariant] = React.useState('solid'); - const [states, setStates] = React.useReducer< - StateReducer<{ hover: boolean; active: boolean; disabled: boolean }> - >((prevState, action) => ({ ...prevState, ...action }), { - hover: false, - active: false, - disabled: false, - }); + const [states, setStates] = React.useReducer( + (prevState, action: Partial) => ({ + ...prevState, + ...action, + }), + { + hover: false, + active: false, + disabled: false, + }, + ); const themeDefaultValue = filterGlobalVariantTokens(themeDefaultValueProp, selectedVariant); const value = filterGlobalVariantTokens(valueProp, selectedVariant); const mergedValue = { ...themeDefaultValue, ...value }; @@ -1273,7 +1277,7 @@ function getAvailableTokens(colorSchemes: any, colorMode: 'light' | 'dark') { return tokens; } -function TemplatesDialog({ children, data }: { children: React.ReactElement; data: any }) { +function TemplatesDialog({ children, data }: { children: React.ReactElement; data: any }) { const [open, setOpen] = React.useState(false); const { map: templateMap } = sourceJoyTemplates(); const renderItem = (name: string, item: TemplateData) => { diff --git a/packages/mui-material/src/ButtonBase/ButtonBase.test.js b/packages/mui-material/src/ButtonBase/ButtonBase.test.js index 35ddbff211a3d5..5f8980139246a9 100644 --- a/packages/mui-material/src/ButtonBase/ButtonBase.test.js +++ b/packages/mui-material/src/ButtonBase/ButtonBase.test.js @@ -1127,7 +1127,7 @@ describe('', () => { describe('prop: action', () => { it('should be able to focus visible the button', () => { /** - * @type {React.RefObject} + * @type {React.RefObject} */ const buttonActionsRef = React.createRef(); const { getByText } = render( diff --git a/packages/mui-utils/src/elementAcceptingRef/elementAcceptingRef.test.tsx b/packages/mui-utils/src/elementAcceptingRef/elementAcceptingRef.test.tsx index 4fbdf45e95439b..7efdfe01888ed8 100644 --- a/packages/mui-utils/src/elementAcceptingRef/elementAcceptingRef.test.tsx +++ b/packages/mui-utils/src/elementAcceptingRef/elementAcceptingRef.test.tsx @@ -26,6 +26,7 @@ describe('elementAcceptingRef', () => { function testAct() { checkPropType(element); if (shouldMount) { + // @ts-expect-error FIXME: `render` was removed // TODO: replace with React 18 implementation after https://github.com/testing-library/react-testing-library/issues/1216 is closed. // eslint-disable-next-line react/no-deprecated ReactDOM.render( @@ -45,6 +46,7 @@ describe('elementAcceptingRef', () => { }); afterEach(() => { + // @ts-expect-error FIXME: `unmountComponentAtNode` was removed // eslint-disable-next-line react/no-deprecated ReactDOM.unmountComponentAtNode(rootNode); }); diff --git a/packages/mui-utils/src/elementTypeAcceptingRef/elementTypeAcceptingRef.test.tsx b/packages/mui-utils/src/elementTypeAcceptingRef/elementTypeAcceptingRef.test.tsx index 4bf9a1a01ac794..e7d40e08e667ca 100644 --- a/packages/mui-utils/src/elementTypeAcceptingRef/elementTypeAcceptingRef.test.tsx +++ b/packages/mui-utils/src/elementTypeAcceptingRef/elementTypeAcceptingRef.test.tsx @@ -26,6 +26,7 @@ describe('elementTypeAcceptingRef', () => { function testAct() { checkPropType(Component); if (shouldMount) { + // @ts-expect-error FIXME: `render` was removed // TODO: replace with React 18 implementation after https://github.com/testing-library/react-testing-library/issues/1216 is closed. // eslint-disable-next-line react/no-deprecated ReactDOM.render( @@ -49,6 +50,7 @@ describe('elementTypeAcceptingRef', () => { }); afterEach(() => { + // @ts-expect-error FIXME: `unmountComponentAtNode` was removed // eslint-disable-next-line react/no-deprecated ReactDOM.unmountComponentAtNode(rootNode); }); diff --git a/packages/mui-utils/src/getDisplayName/getDisplayName.test.tsx b/packages/mui-utils/src/getDisplayName/getDisplayName.test.tsx index 4d30daac79c0fe..5b6743478d99d2 100644 --- a/packages/mui-utils/src/getDisplayName/getDisplayName.test.tsx +++ b/packages/mui-utils/src/getDisplayName/getDisplayName.test.tsx @@ -41,13 +41,13 @@ describe('utils/getDisplayName.js', () => { )); NamedForwardRefComponent.displayName = 'Div'; - const AnonymousMemoComponent = React.memo((props, ref) =>

); + const AnonymousMemoComponent = React.memo((props) =>
); - const MemoComponent = React.memo(function Div(props, ref) { - return
; + const MemoComponent = React.memo(function Div(props) { + return
; }); - const NamedMemoComponent = React.memo((props, ref) =>
); + const NamedMemoComponent = React.memo((props) =>
); NamedMemoComponent.displayName = 'Div'; const NamedContext = React.createContext(null); diff --git a/packages/test-utils/src/createMount.tsx b/packages/test-utils/src/createMount.tsx index 03f0d273d08bff..2e98bfc7bdaaf3 100644 --- a/packages/test-utils/src/createMount.tsx +++ b/packages/test-utils/src/createMount.tsx @@ -85,6 +85,7 @@ export default function createMount(options: CreateMountOptions = {}) { afterEach(() => { ReactDOMTestUtils.act(() => { + // @ts-expect-error FIXME: `unmountComponentAtNode` was removed // eslint-disable-next-line react/no-deprecated ReactDOM.unmountComponentAtNode(container!); }); @@ -104,6 +105,7 @@ export default function createMount(options: CreateMountOptions = {}) { ); } ReactDOMTestUtils.act(() => { + // @ts-expect-error FIXME: `unmountComponentAtNode` was removed // eslint-disable-next-line react/no-deprecated ReactDOM.unmountComponentAtNode(container!); });