diff --git a/src/theme/DocSidebar/index.js b/src/theme/DocSidebar/index.js new file mode 100644 index 00000000..9b5c0ebc --- /dev/null +++ b/src/theme/DocSidebar/index.js @@ -0,0 +1,19 @@ +import React from 'react'; +import {useWindowSize} from '@docusaurus/theme-common'; +import DocSidebarDesktop from '@theme/DocSidebar/Desktop'; +import DocSidebarMobile from '@theme/DocSidebar/Mobile'; +export default function DocSidebar(props) { + const windowSize = useWindowSize(); + // Desktop sidebar visible on hydration: need SSR rendering + const shouldRenderSidebarDesktop = + windowSize === 'desktop' || windowSize === 'ssr'; + // Mobile sidebar not visible on hydration: can avoid SSR rendering + const shouldRenderSidebarMobile = windowSize === 'mobile'; + return ( + <> + {shouldRenderSidebarDesktop && } + {shouldRenderSidebarMobile && } + {/**/} + + ); +}