diff --git a/CHANGELOG.md b/CHANGELOG.md index d5c36e91c1ca76..f988e2868f4c3d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,60 @@ # [Versions](https://mui.com/versions/) -## 6.1.6 +## v6.1.7 + + + +_Nov 13, 2024_ + +A big thanks to the 13 contributors who made this release possible. +This release includes fixes as well as documentation improvements. + +### `@mui/material@6.1.7` + +- Fix default props theme scoping (#44340) @siriwatknp +- Support theme scoping in `useMediaQuery` (#44339) @siriwatknp +- [Grid] Fix regression spacing prop with string value (#44376) @siriwatknp + +### `@mui/styled-engine-sc@6.1.7` + +- Fix missing `@types/hoist-non-react-statics` causing `styled` returns any (#44397) @megos + +### Docs + +- Replace 'Experimental APIs - Toolpad' with 'Toolpad (Beta)' (#44388) @prakhargupta1 +- Fix Pigment CSS install (#44353) @oliviertassinari +- Fix dashboard menu warning (#44317) @siriwatknp +- Add runtime theme section for Material Pigment CSS (#44137) @siriwatknp +- Add hash to `key` to remove noise from console (#44289) @sai6855 +- Revise Example Projects and Related Projects pages (#44191) @samuelsycamore +- [material-ui] Fix typo in typography theme set up for templates (#44338) @navedqb +- [material-ui] Add StackBlitz/CodeSandbox buttons to template cards (#44253) @zanivan +- [material-ui] Fix Sign-in/Sign-up templates layout (#44281) @zanivan +- [material-ui] Remove noise in template (#44260) @oliviertassinari +- [material-ui][Rating] Add uncontrolled example to Basic Rating demo (#44386) @sai6855 +- [material-ui][TextField] Replace InputProps with slotProps.input in demo (#44288) @sai6855 + +### Core + +- [blog] Follow media asset guidelines (#44374) @oliviertassinari +- [code-infra] Changes for test util to work in `vitest` (#43625) @JCQuintas +- Remove old marked JS options (#44375) @ZeeshanTamboli +- Fix webpack capitalization (#44352) @oliviertassinari +- Fix Next.js link 404 (710cd95) @oliviertassinari +- Update Gold sponsoring backlinks (#44316) @oliviertassinari +- Fix tools-public.mui.com redirection (9196fa5) @oliviertassinari +- Remove blank AlertTitle test file (#44282) @ZeeshanTamboli +- [docs-infra] Fix ad in RTL (#44345) @oliviertassinari +- [docs-infra] Enforce punctuation on descriptions (#44292) @oliviertassinari +- [docs-infra] Add CodeSandbox and StackBlitz to vale vocab (6db477a) @oliviertassinari +- [docs-infra] Fix correct spelling of VS Code (#44277) @oliviertassinari +- [docs-infra] Add a `rawDescriptions` option (#44390) @vladmoroz +- [examples] Add missing `clsx` dependency (#43526) @Janpot +- [infra] Fix @renovate[bot] appearing in changelog (#44275) @mnajdova + +All contributors of this release in alphabetical order: @Janpot, @JCQuintas, @megos, @mnajdova, @navedqb, @oliviertassinari, @prakhargupta1, @sai6855, @samuelsycamore, @siriwatknp, @vladmoroz, @zanivan, @ZeeshanTamboli + +## v6.1.6 @@ -52,7 +106,7 @@ A big thanks to the 13 contributors who made this release possible. All contributors of this release in alphabetical order: @aarongarciah, @blackcow1987, @DiegoAndai, @jimmycallin, @joshkel, @mnajdova, @navedqb, @nphmuller, @o-alexandrov, @oliviertassinari, @prakhargupta1, @sai6855, @siriwatknp -## 6.1.5 +## v6.1.5 diff --git a/package.json b/package.json index aae5fcb9897a71..449b95a6563cac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mui/monorepo", - "version": "6.1.6", + "version": "6.1.7", "private": true, "scripts": { "preinstall": "npx only-allow pnpm", diff --git a/packages-internal/scripts/package.json b/packages-internal/scripts/package.json index 35e867cb611ed6..77a1d2dee59561 100644 --- a/packages-internal/scripts/package.json +++ b/packages-internal/scripts/package.json @@ -1,6 +1,6 @@ { "name": "@mui/internal-scripts", - "version": "1.0.26", + "version": "1.0.27", "author": "MUI Team", "description": "Utilities supporting MUI libraries build and docs generation. This is an internal package not meant for general use.", "main": "build/index.js", diff --git a/packages-internal/test-utils/package.json b/packages-internal/test-utils/package.json index d418be995965ed..31ff074f3a1e13 100644 --- a/packages-internal/test-utils/package.json +++ b/packages-internal/test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@mui/internal-test-utils", - "version": "1.0.19", + "version": "1.0.20", "author": "MUI Team", "description": "Utilities for MUI tests. This is an internal package not meant for general use.", "main": "./build/index.js", diff --git a/packages/api-docs-builder/ApiBuilders/ComponentApiBuilder.ts b/packages/api-docs-builder/ApiBuilders/ComponentApiBuilder.ts index 5446662321a161..9d223108cd4d7f 100644 --- a/packages/api-docs-builder/ApiBuilders/ComponentApiBuilder.ts +++ b/packages/api-docs-builder/ApiBuilders/ComponentApiBuilder.ts @@ -9,8 +9,8 @@ import { remark } from 'remark'; import { visit as remarkVisit } from 'unist-util-visit'; import type { Link } from 'mdast'; import { defaultHandlers, parse as docgenParse } from 'react-docgen'; -import { renderMarkdown } from '@mui/internal-markdown'; import { parse as parseDoctrine, Annotation } from 'doctrine'; +import { renderCodeTags, renderMarkdown } from '../buildApi'; import { ProjectSettings, SortingStrategiesType } from '../ProjectSettings'; import { toGitHubPath, writePrettifiedFile } from '../buildApiUtils'; import muiDefaultPropsHandler from '../utils/defaultPropsHandler'; @@ -279,7 +279,7 @@ function extractClassCondition(description: string) { description.replace(stylesRegex, '$1{{nodeName}}$5{{conditions}}.'), ), nodeName: renderMarkdown(conditions[3]), - conditions: renderMarkdown(conditions[6].replace(/`(.*?)`/g, '$1')), + conditions: renderMarkdown(renderCodeTags(conditions[6])), }; } diff --git a/packages/api-docs-builder/ApiBuilders/HookApiBuilder.ts b/packages/api-docs-builder/ApiBuilders/HookApiBuilder.ts index 9ac15d20e9f83c..d3290e92dee8e0 100644 --- a/packages/api-docs-builder/ApiBuilders/HookApiBuilder.ts +++ b/packages/api-docs-builder/ApiBuilders/HookApiBuilder.ts @@ -9,7 +9,7 @@ import { defaultHandlers, parse as docgenParse } from 'react-docgen'; import kebabCase from 'lodash/kebabCase'; import upperFirst from 'lodash/upperFirst'; import { parse as parseDoctrine, Annotation } from 'doctrine'; -import { renderMarkdown } from '@mui/internal-markdown'; +import { escapeEntities, renderMarkdown } from '../buildApi'; import { ProjectSettings } from '../ProjectSettings'; import { computeApiDescription } from './ComponentApiBuilder'; import { @@ -268,12 +268,7 @@ const attachTable = ( const requiredProp = prop.required; const deprecation = (propDescriptor.description || '').match(/@deprecated(\s+(?.*))?/); - const typeDescription = (propDescriptor.typeStr ?? '') - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/"/g, '"') - .replace(/'/g, '''); + const typeDescription = escapeEntities(propDescriptor.typeStr ?? ''); return { [propName]: { type: { diff --git a/packages/api-docs-builder/buildApi.ts b/packages/api-docs-builder/buildApi.ts index 538338e7008dc1..04a9e9ab602d83 100644 --- a/packages/api-docs-builder/buildApi.ts +++ b/packages/api-docs-builder/buildApi.ts @@ -1,6 +1,7 @@ import { mkdirSync } from 'fs'; import path from 'path'; import * as fse from 'fs-extra'; +import { renderMarkdown as _renderMarkdown } from '@mui/internal-markdown'; import findComponents from './utils/findComponents'; import findHooks from './utils/findHooks'; import { writePrettifiedFile } from './buildApiUtils'; @@ -13,6 +14,8 @@ import { } from './utils/createTypeScriptProject'; import { ProjectSettings } from './ProjectSettings'; import { ComponentReactApi } from './types/ApiBuilder.types'; +import _escapeCell from './utils/escapeCell'; +import _escapeEntities from './utils/escapeEntities'; async function removeOutdatedApiDocsTranslations( components: readonly ComponentReactApi[], @@ -64,7 +67,14 @@ async function removeOutdatedApiDocsTranslations( ); } -export async function buildApi(projectsSettings: ProjectSettings[], grep: RegExp | null = null) { +let rawDescriptionsCurrent = false; + +export async function buildApi( + projectsSettings: ProjectSettings[], + grep: RegExp | null = null, + rawDescriptions = false, +) { + rawDescriptionsCurrent = rawDescriptions; const allTypeScriptProjects = projectsSettings .flatMap((setting) => setting.typeScriptProjects) .reduce( @@ -118,7 +128,6 @@ async function buildSingleProject( if (manifestDir) { mkdirSync(manifestDir, { recursive: true }); } - const apiBuilds = tsProjects.flatMap((project) => { const projectComponents = findComponents(path.join(project.rootPath, 'src')).filter( (component) => { @@ -202,3 +211,20 @@ async function buildSingleProject( await projectSettings.onCompleted?.(); return builds; } + +export function renderMarkdown(markdown: string) { + return rawDescriptionsCurrent ? markdown : _renderMarkdown(markdown); +} +export function renderCodeTags(value: string) { + return rawDescriptionsCurrent ? value : value.replace(/`(.*?)`/g, '$1'); +} +export function escapeEntities(value: string) { + return rawDescriptionsCurrent ? value : _escapeEntities(value); +} +export function escapeCell(value: string) { + return rawDescriptionsCurrent ? value : _escapeCell(value); +} +export function joinUnionTypes(value: string[]) { + // Use unopinionated formatting for raw descriptions + return rawDescriptionsCurrent ? value.join(' | ') : value.join('
| '); +} diff --git a/packages/api-docs-builder/utils/escapeEntities.ts b/packages/api-docs-builder/utils/escapeEntities.ts new file mode 100644 index 00000000000000..e132c82f8f3a23 --- /dev/null +++ b/packages/api-docs-builder/utils/escapeEntities.ts @@ -0,0 +1,8 @@ +export default function escapeEntities(value: string): string { + return value + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, '''); +} diff --git a/packages/api-docs-builder/utils/generatePropDescription.ts b/packages/api-docs-builder/utils/generatePropDescription.ts index e8214e67f31d7e..d8f65d57736060 100644 --- a/packages/api-docs-builder/utils/generatePropDescription.ts +++ b/packages/api-docs-builder/utils/generatePropDescription.ts @@ -1,12 +1,12 @@ import * as doctrine from 'doctrine'; import * as recast from 'recast'; import { PropTypeDescriptor } from 'react-docgen'; +import { escapeCell } from '../buildApi'; import { isElementTypeAcceptingRefProp, isElementAcceptingRefProp, } from './generatePropTypeDescription'; import { DescribeablePropDescriptor } from './createDescribeableProp'; -import escapeCell from './escapeCell'; import { SeeMore } from '../types/utils.types'; function resolveType(type: NonNullable): string { diff --git a/packages/api-docs-builder/utils/generatePropTypeDescription.ts b/packages/api-docs-builder/utils/generatePropTypeDescription.ts index 66fdf8335e078a..0728176ba4577f 100644 --- a/packages/api-docs-builder/utils/generatePropTypeDescription.ts +++ b/packages/api-docs-builder/utils/generatePropTypeDescription.ts @@ -1,6 +1,6 @@ import * as recast from 'recast'; import { parse as docgenParse, PropTypeDescriptor } from 'react-docgen'; -import escapeCell from './escapeCell'; +import { escapeCell, escapeEntities, joinUnionTypes } from '../buildApi'; function getDeprecatedInfo(type: PropTypeDescriptor) { const marker = /deprecatedPropType\((\r*\n)*\s*PropTypes\./g; @@ -113,26 +113,20 @@ export default function generatePropTypeDescription(type: PropTypeDescriptor): s .join(', ')} }`; case 'union': - return ( - type.value - .map((type2) => { - return generatePropTypeDescription(type2); - }) - // Display one value per line as it's better for visibility. - .join('
| ') + return joinUnionTypes( + type.value.map((type2) => { + return generatePropTypeDescription(type2) ?? ''; + }), ); case 'enum': - return ( - type.value - .map((type2) => { - return escapeCell(type2.value); - }) - // Display one value per line as it's better for visibility. - .join('
| ') + return joinUnionTypes( + type.value.map((type2) => { + return escapeCell(type2.value); + }), ); case 'arrayOf': { - return `Array<${generatePropTypeDescription(type.value)}>`; + return `Array${escapeEntities('<')}${generatePropTypeDescription(type.value)}${escapeEntities('>')}`; } case 'instanceOf': { diff --git a/packages/api-docs-builder/utils/parseSlotsAndClasses.ts b/packages/api-docs-builder/utils/parseSlotsAndClasses.ts index 880fbc9bffb9cc..df88e12315bc3b 100644 --- a/packages/api-docs-builder/utils/parseSlotsAndClasses.ts +++ b/packages/api-docs-builder/utils/parseSlotsAndClasses.ts @@ -1,6 +1,6 @@ import * as ts from 'typescript'; import { ComponentClassDefinition } from '@mui-internal/api-docs-builder'; -import { renderMarkdown } from '@mui/internal-markdown'; +import { renderMarkdown } from '../buildApi'; import { getSymbolDescription, getSymbolJSDocTags } from '../buildApiUtils'; import { TypeScriptProject } from './createTypeScriptProject'; import { getPropsFromComponentNode } from './getPropsFromComponentNode'; diff --git a/packages/markdown/package.json b/packages/markdown/package.json index e09dbbdb4b31ed..cc1c150912befd 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,6 +1,6 @@ { "name": "@mui/internal-markdown", - "version": "1.0.19", + "version": "1.0.20", "author": "MUI Team", "description": "MUI markdown parser. This is an internal package not meant for general use.", "main": "./index.js", diff --git a/packages/mui-codemod/package.json b/packages/mui-codemod/package.json index 46dd475e80ee89..f8a0a560480d2b 100644 --- a/packages/mui-codemod/package.json +++ b/packages/mui-codemod/package.json @@ -1,6 +1,6 @@ { "name": "@mui/codemod", - "version": "6.1.6", + "version": "6.1.7", "bin": "./codemod.js", "private": false, "author": "MUI Team", diff --git a/packages/mui-core-downloads-tracker/package.json b/packages/mui-core-downloads-tracker/package.json index d0ef724dd25fcc..d5a3cdfc944448 100644 --- a/packages/mui-core-downloads-tracker/package.json +++ b/packages/mui-core-downloads-tracker/package.json @@ -1,6 +1,6 @@ { "name": "@mui/core-downloads-tracker", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "Internal package to track number of downloads of our design system libraries", diff --git a/packages/mui-docs/package.json b/packages/mui-docs/package.json index e299d86624bce7..98d95c8988fddf 100644 --- a/packages/mui-docs/package.json +++ b/packages/mui-docs/package.json @@ -1,6 +1,6 @@ { "name": "@mui/docs", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "MUI Docs - Documentation building blocks.", diff --git a/packages/mui-icons-material/package.json b/packages/mui-icons-material/package.json index 6d90d434367b2a..ebaf2d0d13cc45 100644 --- a/packages/mui-icons-material/package.json +++ b/packages/mui-icons-material/package.json @@ -1,6 +1,6 @@ { "name": "@mui/icons-material", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "Material Design icons distributed as SVG React components.", diff --git a/packages/mui-lab/package.json b/packages/mui-lab/package.json index 14f45946d6d5c2..086912252ba875 100644 --- a/packages/mui-lab/package.json +++ b/packages/mui-lab/package.json @@ -1,6 +1,6 @@ { "name": "@mui/lab", - "version": "6.0.0-beta.14", + "version": "6.0.0-beta.15", "private": false, "author": "MUI Team", "description": "Laboratory for new MUI modules.", diff --git a/packages/mui-material-nextjs/package.json b/packages/mui-material-nextjs/package.json index 658b03638b9f1b..46c4e14408cbe1 100644 --- a/packages/mui-material-nextjs/package.json +++ b/packages/mui-material-nextjs/package.json @@ -1,6 +1,6 @@ { "name": "@mui/material-nextjs", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "Collection of utilities for integration between Material UI and Next.js.", diff --git a/packages/mui-material-pigment-css/package.json b/packages/mui-material-pigment-css/package.json index f92c62d8ae3dab..c7743c0419166a 100644 --- a/packages/mui-material-pigment-css/package.json +++ b/packages/mui-material-pigment-css/package.json @@ -1,6 +1,6 @@ { "name": "@mui/material-pigment-css", - "version": "6.1.6", + "version": "6.1.7", "author": "MUI Team", "description": "A wrapper over Pigment CSS that provides the same styled and theming APIs as Material UI.", "main": "./src/index.ts", diff --git a/packages/mui-material/package.json b/packages/mui-material/package.json index 1b903d6982fb86..8c040ae4303fc9 100644 --- a/packages/mui-material/package.json +++ b/packages/mui-material/package.json @@ -1,6 +1,6 @@ { "name": "@mui/material", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "Material UI is an open-source React component library that implements Google's Material Design. It's comprehensive and can be used in production out of the box.", diff --git a/packages/mui-private-theming/package.json b/packages/mui-private-theming/package.json index 42140082d25586..e29134b78e2e71 100644 --- a/packages/mui-private-theming/package.json +++ b/packages/mui-private-theming/package.json @@ -1,6 +1,6 @@ { "name": "@mui/private-theming", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "Private - The React theme context to be shared between `@mui/styles` and `@mui/material`.", diff --git a/packages/mui-styled-engine-sc/package.json b/packages/mui-styled-engine-sc/package.json index 1995579efbf5ff..a922a7ef93de65 100644 --- a/packages/mui-styled-engine-sc/package.json +++ b/packages/mui-styled-engine-sc/package.json @@ -1,6 +1,6 @@ { "name": "@mui/styled-engine-sc", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "styled() API wrapper package for styled-components.", diff --git a/packages/mui-styled-engine/package.json b/packages/mui-styled-engine/package.json index 683cb5a010f24a..587bb6cc2c3b30 100644 --- a/packages/mui-styled-engine/package.json +++ b/packages/mui-styled-engine/package.json @@ -1,6 +1,6 @@ { "name": "@mui/styled-engine", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "styled() API wrapper package for emotion.", diff --git a/packages/mui-styles/package.json b/packages/mui-styles/package.json index d435a29f87c812..3e4b7673b6de17 100644 --- a/packages/mui-styles/package.json +++ b/packages/mui-styles/package.json @@ -1,6 +1,6 @@ { "name": "@mui/styles", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "MUI Styles - The legacy JSS-based styling solution of Material UI.", diff --git a/packages/mui-system/package.json b/packages/mui-system/package.json index cfe670943e7987..59478d7c417907 100644 --- a/packages/mui-system/package.json +++ b/packages/mui-system/package.json @@ -1,6 +1,6 @@ { "name": "@mui/system", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "MUI System is a set of CSS utilities to help you build custom designs more efficiently. It makes it possible to rapidly lay out custom designs.", diff --git a/packages/mui-utils/package.json b/packages/mui-utils/package.json index 8a578ef23d190f..2c94ff247eec0f 100644 --- a/packages/mui-utils/package.json +++ b/packages/mui-utils/package.json @@ -1,6 +1,6 @@ { "name": "@mui/utils", - "version": "6.1.6", + "version": "6.1.7", "private": false, "author": "MUI Team", "description": "Utility functions for React components.", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 46b6f9a94542c4..a1c623912a212f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -663,7 +663,7 @@ importers: version: 9.7.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@toolpad/core': specifier: ^0.9.0 - version: 0.9.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/icons-material@packages+mui-icons-material+build)(@mui/material-pigment-css@6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(next@14.2.17(@babel/core@7.26.0)(@opentelemetry/api@1.8.0)(@playwright/test@1.48.2)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(vite@5.4.10(@types/node@20.17.6)(terser@5.29.2)) + version: 0.9.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/icons-material@packages+mui-icons-material+build)(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(next@14.2.17(@babel/core@7.26.0)(@opentelemetry/api@1.8.0)(@playwright/test@1.48.2)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(vite@5.4.10(@types/node@20.17.6)(terser@5.29.2)) autoprefixer: specifier: ^10.4.20 version: 10.4.20(postcss@8.4.47) @@ -4009,10 +4009,6 @@ packages: '@types/react': optional: true - '@mui/material-pigment-css@6.1.6': - resolution: {integrity: sha512-NMw6CD/RzLvpM5KVlq01+Zs4IsW0/h4mlxwQB4FNxv+sIHiEFr4vezBfcpL2lkC+UhCcvY2gZWOnkPlPcCqb1w==} - engines: {node: '>=14.0.0'} - '@mui/material@5.15.4': resolution: {integrity: sha512-T/LGRAC+M0c+D3+y67eHwIN5bSje0TxbcJCWR0esNvU11T0QwrX3jedXItPNBwMupF2F5VWCDHBVLlFnN3+ABA==} engines: {node: '>=12.0.0'} @@ -15062,7 +15058,7 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1) '@types/react': 18.3.12 - '@mui/lab@6.0.0-beta.14(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material-pigment-css@6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/lab@6.0.0-beta.14(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.26.0 '@mui/base': 5.0.0-beta.61(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -15077,22 +15073,8 @@ snapshots: optionalDependencies: '@emotion/react': 11.13.3(@types/react@18.3.12)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1) - '@mui/material-pigment-css': 6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1) '@types/react': 18.3.12 - '@mui/material-pigment-css@6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1)': - dependencies: - '@babel/runtime': 7.26.0 - '@mui/system': 6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1) - '@pigment-css/react': 0.0.26(@types/react@18.3.12)(react@18.3.1) - transitivePeerDependencies: - - '@emotion/react' - - '@emotion/styled' - - '@types/react' - - react - - supports-color - optional: true - '@mui/material@5.15.4(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.26.0 @@ -16766,11 +16748,11 @@ snapshots: '@theme-ui/css': 0.17.1(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1)) react: 18.3.1 - '@toolpad/core@0.9.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/icons-material@packages+mui-icons-material+build)(@mui/material-pigment-css@6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(next@14.2.17(@babel/core@7.26.0)(@opentelemetry/api@1.8.0)(@playwright/test@1.48.2)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(vite@5.4.10(@types/node@20.17.6)(terser@5.29.2))': + '@toolpad/core@0.9.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/icons-material@packages+mui-icons-material+build)(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(next@14.2.17(@babel/core@7.26.0)(@opentelemetry/api@1.8.0)(@playwright/test@1.48.2)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(vite@5.4.10(@types/node@20.17.6)(terser@5.29.2))': dependencies: '@babel/runtime': 7.26.0 '@mui/icons-material': link:packages/mui-icons-material/build - '@mui/lab': 6.0.0-beta.14(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material-pigment-css@6.1.6(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/lab': 6.0.0-beta.14(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.12)(react@18.3.1))(@types/react@18.3.12)(react@18.3.1))(@mui/material@packages+mui-material+build)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material': link:packages/mui-material/build '@mui/utils': 6.1.6(@types/react@18.3.12)(react@18.3.1) '@toolpad/utils': 0.9.0(react@18.3.1) diff --git a/scripts/buidApiDocs/index.ts b/scripts/buidApiDocs/index.ts index b146e0e4da31d6..c923806dfcf675 100644 --- a/scripts/buidApiDocs/index.ts +++ b/scripts/buidApiDocs/index.ts @@ -14,11 +14,12 @@ const projectSettings: ProjectSettings[] = [ muiSystemProjectSettings, ]; -type CommandOptions = { grep?: string }; +type CommandOptions = { grep?: string; rawDescriptions?: boolean }; async function run(argv: ArgumentsCamelCase) { const grep = argv.grep == null ? null : new RegExp(argv.grep); - return buildApi(projectSettings, grep); + const rawDescriptions = argv.rawDescriptions === true; + return buildApi(projectSettings, grep, rawDescriptions); } yargs(process.argv.slice(2)) @@ -26,11 +27,17 @@ yargs(process.argv.slice(2)) command: '$0', describe: 'Generates API documentation for the MUI packages.', builder: (command) => { - return command.option('grep', { - description: - 'Only generate files for component filenames matching the pattern. The string is treated as a RegExp.', - type: 'string', - }); + return command + .option('grep', { + description: + 'Only generate files for component filenames matching the pattern. The string is treated as a RegExp.', + type: 'string', + }) + .option('rawDescriptions', { + description: 'Whether to output raw JSDoc descriptions or process them as markdown.', + type: 'boolean', + default: false, + }); }, handler: run, })