From 051380aa4bcee0869afca804761b85a7e3ba1113 Mon Sep 17 00:00:00 2001 From: Joshua Chen Date: Wed, 23 Feb 2022 18:21:22 +0800 Subject: [PATCH] fix(content-docs): properly display collocated social card image (#6744) * fix(content-docs): properly display collocated social card image * oops --- .../src/plugin-content-docs.d.ts | 6 ++++++ .../src/theme/DocItem/index.tsx | 4 ++-- .../_dogfooding/_docs tests/tests/img-tests.mdx | 4 ++++ .../_docs tests/tests/img/oss_logo.png | Bin 0 -> 4728 bytes 4 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 website/_dogfooding/_docs tests/tests/img/oss_logo.png diff --git a/packages/docusaurus-plugin-content-docs/src/plugin-content-docs.d.ts b/packages/docusaurus-plugin-content-docs/src/plugin-content-docs.d.ts index 00c4e8fda2..c3159109ba 100644 --- a/packages/docusaurus-plugin-content-docs/src/plugin-content-docs.d.ts +++ b/packages/docusaurus-plugin-content-docs/src/plugin-content-docs.d.ts @@ -8,6 +8,10 @@ declare module '@docusaurus/plugin-content-docs' { import type {RemarkAndRehypePluginOptions} from '@docusaurus/mdx-loader'; + export interface Assets { + image?: string; + } + export type NumberPrefixParser = (filename: string) => { filename: string; numberPrefix?: number; @@ -159,6 +163,7 @@ declare module '@theme/DocItem' { import type { PropNavigationLink, PropVersionMetadata, + Assets, } from '@docusaurus/plugin-content-docs'; export type DocumentRoute = { @@ -204,6 +209,7 @@ declare module '@theme/DocItem' { readonly metadata: Metadata; readonly toc: readonly TOCItem[]; readonly contentTitle: string | undefined; + readonly assets: Assets; (): JSX.Element; }; } diff --git a/packages/docusaurus-theme-classic/src/theme/DocItem/index.tsx b/packages/docusaurus-theme-classic/src/theme/DocItem/index.tsx index 69befc8623..b091503f98 100644 --- a/packages/docusaurus-theme-classic/src/theme/DocItem/index.tsx +++ b/packages/docusaurus-theme-classic/src/theme/DocItem/index.tsx @@ -22,9 +22,8 @@ import DocBreadcrumbs from '@theme/DocBreadcrumbs'; export default function DocItem(props: Props): JSX.Element { const {content: DocContent} = props; - const {metadata, frontMatter} = DocContent; + const {metadata, frontMatter, assets} = DocContent; const { - image, keywords, hide_title: hideTitle, hide_table_of_contents: hideTableOfContents, @@ -32,6 +31,7 @@ export default function DocItem(props: Props): JSX.Element { toc_max_heading_level: tocMaxHeadingLevel, } = frontMatter; const {description, title} = metadata; + const image = assets.image ?? frontMatter.image; // We only add a title if: // - user asks to hide it with front matter diff --git a/website/_dogfooding/_docs tests/tests/img-tests.mdx b/website/_dogfooding/_docs tests/tests/img-tests.mdx index 885500b6a3..dec07b7927 100644 --- a/website/_dogfooding/_docs tests/tests/img-tests.mdx +++ b/website/_dogfooding/_docs tests/tests/img-tests.mdx @@ -1,3 +1,7 @@ +--- +image: ./img/oss_logo.png +--- + # Image tests import Image from '@theme/IdealImage'; diff --git a/website/_dogfooding/_docs tests/tests/img/oss_logo.png b/website/_dogfooding/_docs tests/tests/img/oss_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..81923fc56250f9ccb038dd1c605e772846100290 GIT binary patch literal 4728 zcmV-;5{K=HP)35VHbPD=^(Y6;?`BW{RiQ%nD4e zz)Gtoa`RM1E>wqJfut3LUcr@Dz*lGxjUfO8N&QjAcMeakuZSN4m=8090pR6%j$@-c zn6v=I0PX=i1Bhp%eg+2zhrPl(HUV@8lL){Nz=ibF1AyUd)L*%7a&R~^0_YAVAqoDa z;k7r?2F9+d930Mo0J?*TPlA6_BH0UoWH#!juFD)88b|=l&W{!9zQ8kp(D3^c5rOj$ zI5_M8pAKl}FR*sZJ3j$%rFrEQK%`Rb zyMswUrh+MLJR9|=t{WX3PKW?V-5=77t->4D9{$84uO8*qHuwkP*{Hv8-RavsuBRH-ebdz zyCil0;HtMpgrN&7J}!m;0{ZV5>$s4nA)*H)2jdSx08J7ui#-NMBPk7hHmGcnG<2+` z*!XO&>F=f?VVdScgZsjc04&w(liamu*kveiD%*}j0Kd!hnIiy40K3Ac0s+bl!vBnQ z`0h#C)})R2WdEyh0}3l9qH}O?J^%|9dS^>)-W&m`zX9Ga=`G1doaPuADyC%y7CiHsx``N-51R0FRW%zhr*43Iu;l@5*&v zSW6i`iH^&0NPYuZ|0el1SPu_u- zci;i|O5~%$J%Ee|r49+KW}|)tpra}4qQ*ct6p9Ae6$zT^J9;$eFH4kHl;+Bk1Rf3M z-<@G5Z_#f$GxdVT$GCtr?+x1St)b0|+J-yKqY4_)Q3ycB!)(;|>&EVTbNJpIQ^SCH z1Mn^HAjmry=beq}m3J`BI|#{EeARUHPj8OYo7c0MXQTdNHtL5&I𝔗HFrw#yn8{ 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