Skip to content

Commit e1d76c0

Browse files
authoredDec 3, 2024··
[core][PageContainer] Do not spread PageContainer title to child Container (#4504)
1 parent 1561c23 commit e1d76c0

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed
 

‎packages/toolpad-core/src/PageContainer/PageContainer.test.tsx

+6
Original file line numberDiff line numberDiff line change
@@ -180,4 +180,10 @@ describe('PageContainer', () => {
180180
'The PageContainer `breadCrumbs` prop is deprecated. Use `breadcrumbs` instead.',
181181
);
182182
});
183+
184+
test("doesn't spread title to child", async () => {
185+
render(<PageContainer title="Hello World" />);
186+
187+
expect(screen.queryByTitle('Hello World')).not.toBeInTheDocument();
188+
});
183189
});

‎packages/toolpad-core/src/PageContainer/PageContainer.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ export interface PageContainerProps extends ContainerProps {
8787
* - [PageContainer API](https://mui.com/toolpad/core/api/page-container)
8888
*/
8989
function PageContainer(props: PageContainerProps) {
90-
const { children, slots, slotProps, breadcrumbs, breadCrumbs, ...rest } = props;
90+
const { children, slots, slotProps, breadcrumbs, breadCrumbs, title, ...rest } = props;
9191

9292
if (process.env.NODE_ENV !== 'production' && breadCrumbs) {
9393
warnOnce('The PageContainer `breadCrumbs` prop is deprecated. Use `breadcrumbs` instead.');
@@ -97,7 +97,7 @@ function PageContainer(props: PageContainerProps) {
9797

9898
// TODO: Remove `props.breadCrumbs` in the next major version
9999
const resolvedBreadcrumbs = breadcrumbs ?? breadCrumbs ?? activePage?.breadcrumbs ?? [];
100-
const title = props.title ?? activePage?.title ?? '';
100+
const resolvedTitle = title ?? activePage?.title ?? '';
101101

102102
const ToolbarComponent = props?.slots?.toolbar ?? PageContainerToolbar;
103103
const toolbarSlotProps = useSlotProps({
@@ -134,7 +134,7 @@ function PageContainer(props: PageContainerProps) {
134134
</Breadcrumbs>
135135

136136
<PageContentHeader>
137-
{title ? <Typography variant="h4">{title}</Typography> : null}
137+
{resolvedTitle ? <Typography variant="h4">{resolvedTitle}</Typography> : null}
138138
<ToolbarComponent {...toolbarSlotProps} />
139139
</PageContentHeader>
140140
</Stack>

0 commit comments

Comments
 (0)
Please sign in to comment.