diff --git a/docs/next.config.ts b/docs/next.config.ts index eb0621d6dc3840..9863992e8f105a 100644 --- a/docs/next.config.ts +++ b/docs/next.config.ts @@ -2,6 +2,7 @@ import * as path from 'path'; import * as url from 'url'; import * as fs from 'fs'; +import * as semver from 'semver'; // @ts-ignore import { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer'; import { createRequire } from 'module'; @@ -185,6 +186,7 @@ export default withDocsInfra({ env: { // docs-infra LIB_VERSION: pkg.version, + SEARCH_INDEX: `material-ui-v${semver.major(pkg.version)}`, SOURCE_CODE_REPO: 'https://github.com/mui/material-ui', SOURCE_GITHUB_BRANCH: 'master', // #target-branch-reference GITHUB_TEMPLATE_DOCS_FEEDBACK: '4.docs-feedback.yml', diff --git a/docs/package.json b/docs/package.json index e72ef9eccc1a27..d4e1e5f464da0b 100644 --- a/docs/package.json +++ b/docs/package.json @@ -7,7 +7,7 @@ "build:clean": "rimraf .next && pnpm build", "build-sw": "node ./scripts/buildServiceWorker.js", "dev": "next dev", - "deploy": "git fetch upstream $(git branch --show-current) && git push -f material-ui-docs FETCH_HEAD:latest", + "deploy": "git fetch upstream $(git branch --show-current) && git push -f material-ui-docs FETCH_HEAD:v7", "icons": "rimraf --glob public/static/icons/* && node ./scripts/buildIcons.js", "start": "serve ./export", "create-playground": "cpy --cwd=scripts playground.template.tsx ../../pages/playground --rename=index.tsx", @@ -99,6 +99,7 @@ "react-virtuoso": "^4.18.1", "react-window": "^2.2.5", "rimraf": "^6.1.2", + "semver": "^7.7.4", "styled-components": "^6.3.8", "stylis": "4.2.0", "use-count-up": "^3.0.1", @@ -125,6 +126,7 @@ "@types/react-dom": "19.2.3", "@types/react-swipeable-views": "0.13.6", "@types/react-transition-group": "4.4.12", + "@types/semver": "^7.7.1", "@types/stylis": "4.2.7", "chai": "6.2.2", "cross-fetch": "4.1.0", diff --git a/docs/public/_redirects b/docs/public/_redirects index a1f0e0767f6a7e..a95f4109eac7ec 100644 --- a/docs/public/_redirects +++ b/docs/public/_redirects @@ -531,11 +531,11 @@ https://v4.material-ui.com/* https://v4.mui.com/:splat 301! ## MUI X ## Unlike the store that expect to be hosted under a subfolder, ## MUI X is configured to be hosted at the root. -/static/x/* https://docs-v8--material-ui-x.netlify.app/static/x/:splat 200 -/x/_next/* https://docs-v8--material-ui-x.netlify.app/_next/:splat 200 -/x/* https://docs-v8--material-ui-x.netlify.app/x/:splat 200 -/r/x-* https://docs-v8--material-ui-x.netlify.app/r/x-:splat 200 -/:lang/x/* https://docs-v8--material-ui-x.netlify.app/:lang/x/:splat 200 +/static/x/* https://docs-v7--material-ui-x.netlify.app/static/x/:splat 200 +/x/_next/* https://docs-v7--material-ui-x.netlify.app/_next/:splat 200 +/x/* https://docs-v7--material-ui-x.netlify.app/x/:splat 200 +/r/x-* https://docs-v7--material-ui-x.netlify.app/r/x-:splat 200 +/:lang/x/* https://docs-v7--material-ui-x.netlify.app/:lang/x/:splat 200 ## Toolpad /toolpad/core/templates/nextjs-dashboard/_next/* https://toolpad-core-nextjs-themed.vercel.app/_next/:splat 200 diff --git a/docs/src/modules/components/AppSearch.js b/docs/src/modules/components/AppSearch.js index 768b8d4a030488..63ac8301d06353 100644 --- a/docs/src/modules/components/AppSearch.js +++ b/docs/src/modules/components/AppSearch.js @@ -346,7 +346,7 @@ export default function AppSearch(props) { initialQuery={initialQuery} appId="TZGZ85B9TB" apiKey="8177dfb3e2be72b241ffb8c5abafa899" - indexName="material-ui-v7" + indexName={process.env.SEARCH_INDEX} searchParameters={{ facetFilters: [facetFilterLanguage], filters, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index feadc3cccfc6f8..3bb384bcb7067e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -505,6 +505,9 @@ importers: rimraf: specifier: ^6.1.2 version: 6.1.2 + semver: + specifier: ^7.7.4 + version: 7.7.4 styled-components: specifier: ^6.3.8 version: 6.3.8(patch_hash=383c648dfdb5dfc82fbe414d54027d8c982a01c6320370f0ecfdb387e753c09f)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) @@ -578,6 +581,9 @@ importers: '@types/react-transition-group': specifier: 4.4.12 version: 4.4.12(@types/react@19.2.9) + '@types/semver': + specifier: ^7.7.1 + version: 7.7.1 '@types/stylis': specifier: 4.2.7 version: 4.2.7 @@ -5570,6 +5576,9 @@ packages: '@types/retry@0.12.0': resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} + '@types/semver@7.7.1': + resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==} + '@types/send@1.2.1': resolution: {integrity: sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==} @@ -11055,8 +11064,8 @@ packages: engines: {node: '>=10'} hasBin: true - semver@7.7.3: - resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} engines: {node: '>=10'} hasBin: true @@ -12564,7 +12573,7 @@ snapshots: commander: 10.0.1 marked: 9.1.6 marked-terminal: 7.3.0(marked@9.1.6) - semver: 7.7.3 + semver: 7.7.4 '@arethetypeswrong/core@0.18.2': dependencies: @@ -12573,7 +12582,7 @@ snapshots: cjs-module-lexer: 1.4.3 fflate: 0.8.2 lru-cache: 11.2.4 - semver: 7.7.3 + semver: 7.7.4 typescript: 5.6.1-rc validate-npm-package-name: 5.0.1 @@ -15193,7 +15202,7 @@ snapshots: remark-parse: 11.0.0 remark-rehype: 11.1.2 resolve-pkg-maps: 1.0.0 - semver: 7.7.3 + semver: 7.7.4 stylelint-config-standard: 40.0.0(stylelint@17.1.1(typescript@5.9.3)) typescript: 5.9.3 typescript-eslint: 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) @@ -15977,7 +15986,7 @@ snapshots: proggy: 3.0.0 promise-all-reject-late: 1.0.1 promise-call-limit: 3.0.2 - semver: 7.7.3 + semver: 7.7.4 ssri: 12.0.0 treeverse: 3.0.0 walk-up-path: 4.0.0 @@ -15986,7 +15995,7 @@ snapshots: '@npmcli/fs@4.0.0': dependencies: - semver: 7.7.3 + semver: 7.7.4 '@npmcli/git@6.0.3': dependencies: @@ -15996,7 +16005,7 @@ snapshots: npm-pick-manifest: 10.0.0 proc-log: 5.0.0 promise-retry: 2.0.1 - semver: 7.7.3 + semver: 7.7.4 which: 5.0.0 '@npmcli/git@7.0.1': @@ -16007,7 +16016,7 @@ snapshots: npm-pick-manifest: 11.0.3 proc-log: 6.0.0 promise-retry: 2.0.1 - semver: 7.7.3 + semver: 7.7.4 which: 6.0.0 '@npmcli/installed-package-contents@3.0.0': @@ -16033,7 +16042,7 @@ snapshots: json-parse-even-better-errors: 5.0.0 pacote: 21.0.4 proc-log: 6.0.0 - semver: 7.7.3 + semver: 7.7.4 transitivePeerDependencies: - supports-color @@ -16052,7 +16061,7 @@ snapshots: hosted-git-info: 9.0.2 json-parse-even-better-errors: 5.0.0 proc-log: 6.0.0 - semver: 7.7.3 + semver: 7.7.4 validate-npm-package-license: 3.0.4 '@npmcli/promise-spawn@8.0.3': @@ -16098,7 +16107,7 @@ snapshots: ignore: 5.3.2 minimatch: 9.0.3 nx: 21.6.8 - semver: 7.7.3 + semver: 7.7.4 tslib: 2.8.1 yargs-parser: 21.1.1 @@ -17313,6 +17322,8 @@ snapshots: '@types/retry@0.12.0': {} + '@types/semver@7.7.1': {} + '@types/send@1.2.1': dependencies: '@types/node': 20.19.30 @@ -17440,7 +17451,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.54.0 debug: 4.4.3 minimatch: 9.0.5 - semver: 7.7.3 + semver: 7.7.4 tinyglobby: 0.2.15 ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 @@ -17455,7 +17466,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.55.0 debug: 4.4.3 minimatch: 9.0.5 - semver: 7.7.3 + semver: 7.7.4 tinyglobby: 0.2.15 ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 @@ -18724,7 +18735,7 @@ snapshots: dot-prop: 7.2.0 env-paths: 3.0.0 json-schema-typed: 8.0.1 - semver: 7.7.3 + semver: 7.7.4 confbox@0.1.8: {} @@ -18765,7 +18776,7 @@ snapshots: handlebars: 4.7.8 json-stringify-safe: 5.0.1 meow: 8.1.2 - semver: 7.7.3 + semver: 7.7.4 split: 1.0.1 conventional-commits-filter@3.0.0: @@ -19569,7 +19580,7 @@ snapshots: find-up: 5.0.0 globals: 15.15.0 lodash.memoize: 4.1.2 - semver: 7.7.3 + semver: 7.7.4 eslint-plugin-consistent-default-export-name@0.0.15: dependencies: @@ -20208,7 +20219,7 @@ snapshots: git-semver-tags@5.0.1: dependencies: meow: 8.1.2 - semver: 7.7.3 + semver: 7.7.4 git-up@7.0.0: dependencies: @@ -20624,7 +20635,7 @@ snapshots: npm-package-arg: 13.0.1 promzard: 2.0.0 read: 4.1.0 - semver: 7.7.3 + semver: 7.7.4 validate-npm-package-license: 3.0.4 validate-npm-package-name: 6.0.2 @@ -20693,7 +20704,7 @@ snapshots: is-bun-module@2.0.0: dependencies: - semver: 7.7.3 + semver: 7.7.4 is-callable@1.2.7: {} @@ -20887,7 +20898,7 @@ snapshots: '@babel/parser': 7.28.6 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 - semver: 7.7.3 + semver: 7.7.4 transitivePeerDependencies: - supports-color @@ -21122,7 +21133,7 @@ snapshots: jws: 3.2.2 lodash: 4.17.21 ms: 2.1.3 - semver: 7.7.3 + semver: 7.7.4 jss-plugin-camel-case@10.10.0: dependencies: @@ -21346,7 +21357,7 @@ snapshots: npm-package-arg: 13.0.1 npm-registry-fetch: 19.1.0 proc-log: 5.0.0 - semver: 7.7.3 + semver: 7.7.4 sigstore: 4.0.0 ssri: 12.0.0 transitivePeerDependencies: @@ -21540,7 +21551,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.7.3 + semver: 7.7.4 make-fetch-happen@14.0.3: dependencies: @@ -22306,7 +22317,7 @@ snapshots: make-fetch-happen: 14.0.3 nopt: 8.1.0 proc-log: 5.0.0 - semver: 7.7.3 + semver: 7.7.4 tar: 7.5.7 tinyglobby: 0.2.15 which: 5.0.0 @@ -22321,7 +22332,7 @@ snapshots: make-fetch-happen: 15.0.2 nopt: 9.0.0 proc-log: 6.0.0 - semver: 7.7.3 + semver: 7.7.4 tar: 7.5.7 tinyglobby: 0.2.15 which: 6.0.0 @@ -22358,7 +22369,7 @@ snapshots: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.16.1 - semver: 7.7.3 + semver: 7.7.4 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} @@ -22382,11 +22393,11 @@ snapshots: npm-install-checks@7.1.2: dependencies: - semver: 7.7.3 + semver: 7.7.4 npm-install-checks@8.0.0: dependencies: - semver: 7.7.3 + semver: 7.7.4 npm-normalize-package-bin@4.0.0: {} @@ -22396,14 +22407,14 @@ snapshots: dependencies: hosted-git-info: 8.1.0 proc-log: 5.0.0 - semver: 7.7.3 + semver: 7.7.4 validate-npm-package-name: 6.0.2 npm-package-arg@13.0.1: dependencies: hosted-git-info: 9.0.2 proc-log: 5.0.0 - semver: 7.7.3 + semver: 7.7.4 validate-npm-package-name: 6.0.2 npm-packlist@10.0.3: @@ -22416,14 +22427,14 @@ snapshots: npm-install-checks: 7.1.2 npm-normalize-package-bin: 4.0.0 npm-package-arg: 12.0.2 - semver: 7.7.3 + semver: 7.7.4 npm-pick-manifest@11.0.3: dependencies: npm-install-checks: 8.0.0 npm-normalize-package-bin: 5.0.0 npm-package-arg: 13.0.1 - semver: 7.7.3 + semver: 7.7.4 npm-registry-fetch@19.1.0: dependencies: @@ -22490,7 +22501,7 @@ snapshots: open: 8.4.2 ora: 5.3.0 resolve.exports: 2.0.3 - semver: 7.7.3 + semver: 7.7.4 string-width: 4.2.3 tar-stream: 2.2.0 tmp: 0.2.5 @@ -22540,7 +22551,7 @@ snapshots: open: 8.4.2 ora: 5.3.0 resolve.exports: 2.0.3 - semver: 7.7.3 + semver: 7.7.4 string-width: 4.2.3 tar-stream: 2.2.0 tmp: 0.2.5 @@ -23819,7 +23830,7 @@ snapshots: semver@7.7.2: {} - semver@7.7.3: {} + semver@7.7.4: {} send@1.1.0: dependencies: @@ -23919,7 +23930,7 @@ snapshots: dependencies: '@img/colour': 1.0.0 detect-libc: 2.1.2 - semver: 7.7.3 + semver: 7.7.4 optionalDependencies: '@img/sharp-darwin-arm64': 0.34.5 '@img/sharp-darwin-x64': 0.34.5