@@ -13,26 +13,31 @@ import { navigate, PageProps } from 'gatsby';
1313import CodeSnippet from '@ably/ui/core/CodeSnippet' ;
1414import type { CodeSnippetProps , SDKType } from '@ably/ui/core/CodeSnippet' ;
1515import cn from '@ably/ui/core/utils/cn' ;
16+
1617import { getRandomChannelName } from '../blocks/software/Code/get-random-channel-name' ;
18+ import Aside from '../blocks/dividers/Aside' ;
1719
18- import PageTitle from '../PageTitle' ;
19- import { Frontmatter , PageContextType } from './Layout' ;
20- import { MarkdownProvider } from '../Markdown' ;
21- import Article from '../Article' ;
2220import If from './mdx/If' ;
2321import { useCopyableHeaders } from './mdx/headers' ;
24- import { useLayoutContext } from 'src/contexts/layout-context' ;
25- import Aside from '../blocks/dividers/Aside' ;
26- import { HtmlComponentPropsData } from '../html-component-props' ;
27- import { languageData } from 'src/data/languages' ;
28- import { ActivePage } from './utils/nav' ;
2922import { Table , TableHead , TableBody , TableRow , TableHeader , TableCell } from './mdx/tables' ;
3023import { Tiles } from './mdx/tiles' ;
24+ import { PageHeader } from './mdx/PageHeader' ;
25+
26+ import { Frontmatter , PageContextType } from './Layout' ;
27+ import { ActivePage } from './utils/nav' ;
28+
29+ import { HtmlComponentPropsData } from '../html-component-props' ;
30+ import { MarkdownProvider } from '../Markdown' ;
31+
32+ import Article from '../Article' ;
3133import { Head } from '../Head' ;
34+
35+ import UserContext from 'src/contexts/user-context' ;
36+ import { useLayoutContext } from 'src/contexts/layout-context' ;
37+ import { languageData } from 'src/data/languages' ;
3238import { useSiteMetadata } from 'src/hooks/use-site-metadata' ;
33- import { ProductName } from 'src/templates/template-data' ;
3439import { getMetaTitle } from '../common/meta-title' ;
35- import UserContext from 'src/contexts/user-context ' ;
40+ import { ProductName } from 'src/templates/template-data ' ;
3641
3742type MDXWrapperProps = PageProps < unknown , PageContextType > ;
3843
@@ -47,6 +52,8 @@ type Replacement = {
4752 replacer : ( ) => string ;
4853} ;
4954
55+ type ElementProps = { className ?: string ; children ?: ReactNode } ;
56+
5057const SDKContext = createContext < SDKContextType | undefined > ( undefined ) ;
5158
5259const useSDK = ( ) => {
@@ -114,10 +121,12 @@ const WrappedCodeSnippet: React.FC<{ activePage: ActivePage } & CodeSnippetProps
114121 return null ;
115122 }
116123
117- const preElement = child as ReactElement < { children ?: ReactNode } > ;
118- const codeElement = isValidElement ( preElement . props ?. children ) ? ( preElement . props . children as ReactElement ) : null ;
124+ const preElement = child as ReactElement < ElementProps > ;
125+ const codeElement = isValidElement ( preElement . props ?. children )
126+ ? ( preElement . props . children as ReactElement < ElementProps > )
127+ : null ;
119128
120- if ( ! codeElement || ! codeElement . props ? .className ) {
129+ if ( ! codeElement || ! codeElement . props . className ) {
121130 return null ;
122131 }
123132
@@ -222,7 +231,7 @@ const MDXWrapper: React.FC<MDXWrapperProps> = ({ children, pageContext, location
222231 Tiles,
223232 } }
224233 >
225- < PageTitle > { title } </ PageTitle >
234+ < PageHeader title = { title } description = { description } / >
226235 { children }
227236 </ MarkdownProvider >
228237 </ Article >
0 commit comments