diff --git a/packages-internal/core-docs/src/AppLayout/navigation/MuiProductSelector.tsx b/packages-internal/core-docs/src/AppLayout/navigation/MuiProductSelector.tsx
index 837cc0e4c929ca..ce2bb5de0901ab 100644
--- a/packages-internal/core-docs/src/AppLayout/navigation/MuiProductSelector.tsx
+++ b/packages-internal/core-docs/src/AppLayout/navigation/MuiProductSelector.tsx
@@ -7,6 +7,7 @@ import Divider from '@mui/material/Divider';
import MenuList, { MenuListProps } from '@mui/material/MenuList';
import MenuItem, { MenuItemProps } from '@mui/material/MenuItem';
import BackupTableRoundedIcon from '@mui/icons-material/BackupTableRounded';
+import ForumRoundedIcon from '@mui/icons-material/ForumRounded';
import CalendarMonthRoundedIcon from '@mui/icons-material/CalendarMonthRounded';
import AccountTreeRoundedIcon from '@mui/icons-material/AccountTreeRounded';
import BarChartRoundedIcon from '@mui/icons-material/BarChartRounded';
@@ -193,6 +194,13 @@ const advancedProducts = [
icon: ,
href: ROUTES.schedulerOverview,
},
+ {
+ id: 'x-chat',
+ name: 'Chat',
+ description: 'AI-powered chat components.',
+ icon: ,
+ href: ROUTES.chatOverview,
+ },
];
export const MuiProductSelector = React.forwardRef(function MuiProductSelector(
diff --git a/packages-internal/core-docs/src/constants/route.ts b/packages-internal/core-docs/src/constants/route.ts
index 3e1c00f01f87fd..cf26dea7c8eff6 100644
--- a/packages-internal/core-docs/src/constants/route.ts
+++ b/packages-internal/core-docs/src/constants/route.ts
@@ -50,6 +50,8 @@ export const ROUTES = {
treeViewOverview: '/x/react-tree-view/',
// Scheduler doc pages
schedulerOverview: '/x/react-scheduler/',
+ // Chat doc pages
+ chatOverview: '/x/react-chat/',
// Toolpad pages
toolpadLandingPage: '/toolpad/',
toolpadStudioLandingPage: '/toolpad/studio/',
diff --git a/packages-internal/core-docs/src/utils/getProductInfoFromUrl.test.js b/packages-internal/core-docs/src/utils/getProductInfoFromUrl.test.js
index d2494796f547e5..d6ee2e29b81cf2 100644
--- a/packages-internal/core-docs/src/utils/getProductInfoFromUrl.test.js
+++ b/packages-internal/core-docs/src/utils/getProductInfoFromUrl.test.js
@@ -64,6 +64,13 @@ describe('getProductInfoFromUrl', () => {
});
});
+ it('should handle MUI X Chat', () => {
+ expect(getProductInfoFromUrl('/x/react-chat/components')).to.deep.equal({
+ productCategoryId: 'x',
+ productId: 'x-chat',
+ });
+ });
+
it('should handle MUI X', () => {
expect(getProductInfoFromUrl('/x/migration/migration-data-grid-v5/')).to.deep.equal({
productCategoryId: 'x',
diff --git a/packages-internal/core-docs/src/utils/getProductInfoFromUrl.ts b/packages-internal/core-docs/src/utils/getProductInfoFromUrl.ts
index 68c6fcfe48f03c..9e238eb00dbfa5 100644
--- a/packages-internal/core-docs/src/utils/getProductInfoFromUrl.ts
+++ b/packages-internal/core-docs/src/utils/getProductInfoFromUrl.ts
@@ -12,6 +12,7 @@ export type MuiProductId =
| 'x-charts'
| 'x-tree-view'
| 'x-scheduler'
+ | 'x-chat'
| 'toolpad-studio'
| 'toolpad-core';
diff --git a/packages-internal/markdown/prepareMarkdown.mjs b/packages-internal/markdown/prepareMarkdown.mjs
index 2b2118bac260a0..f5e34251b84db6 100644
--- a/packages-internal/markdown/prepareMarkdown.mjs
+++ b/packages-internal/markdown/prepareMarkdown.mjs
@@ -44,6 +44,9 @@ function resolveComponentApiUrl(productId, componentPkg, component) {
if (productId === 'x-scheduler') {
return `/x/api/scheduler/${kebabCase(component)}/`;
}
+ if (productId === 'x-chat') {
+ return `/x/api/chat/${kebabCase(component)}/`;
+ }
if (componentPkg === 'mui-base' || BaseUIReexportedComponents.includes(component)) {
return `/base-ui/react-${kebabCase(component)}/components-api/#${kebabCase(component)}`;
}