From 39904044199b8482af3cc909bc1d8139bfa89463 Mon Sep 17 00:00:00 2001 From: Ben Myers Date: Wed, 22 Jun 2022 22:42:52 -0500 Subject: [PATCH] fix(theme-classic): expose empty string alt text in navbar logos (#7659) * fix: Expose empty string alt text in brand logos via nullish coalescing * fix: Update boolean logic for fallbacks * fix: Dogfood fix on Docusaurus brand logo * refactor: Un-inline alt logic, and reduce chance of duplication in fallback --- .../docusaurus-theme-classic/src/theme/Logo/index.tsx | 11 ++++++++++- website/docusaurus.config.js | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/docusaurus-theme-classic/src/theme/Logo/index.tsx b/packages/docusaurus-theme-classic/src/theme/Logo/index.tsx index 13f4126198..5731cde712 100644 --- a/packages/docusaurus-theme-classic/src/theme/Logo/index.tsx +++ b/packages/docusaurus-theme-classic/src/theme/Logo/index.tsx @@ -27,12 +27,21 @@ export default function Logo(props: Props): JSX.Element { light: useBaseUrl(logo.src), dark: useBaseUrl(logo.srcDark || logo.src), }; + + // If visible title is shown, fallback alt text should be + // an empty string to mark the logo as decorative. + const fallbackAlt = navbarTitle ? '' : title; + + // Use logo alt text if provided (including empty string), + // and provide a sensible fallback otherwise. + const alt = logo.alt ?? fallbackAlt; + const themedImage = ( ); diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 6885a87f86..19b205fc0a 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -399,7 +399,7 @@ const config = { hideOnScroll: true, title: 'Docusaurus', logo: { - alt: 'Docusaurus Logo', + alt: '', src: 'img/docusaurus.svg', srcDark: 'img/docusaurus_keytar.svg', width: 32,