@docusaurus/theme-classic 2.0.0-beta.16 → 2.0.0-beta.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/admonitions.css +4 -0
- package/lib/default.css +3038 -0
- package/lib/getSwizzleConfig.js +177 -36
- package/lib/index.js +10 -15
- package/lib/nprogress.css +41 -0
- package/lib/nprogress.js +46 -0
- package/lib/theme-classic.d.ts +600 -76
- package/lib/translations.js +12 -2
- package/lib/validateThemeConfig.js +77 -28
- package/lib-next/theme/BackToTopButton/index.js +6 -104
- package/lib-next/theme/BlogArchivePage/index.js +14 -10
- package/lib-next/theme/BlogLayout/index.js +1 -5
- package/lib-next/theme/BlogListPage/index.js +34 -13
- package/lib-next/theme/BlogListPaginator/index.js +25 -28
- package/lib-next/theme/BlogPostAuthor/index.js +16 -7
- package/lib-next/theme/BlogPostItem/index.js +6 -6
- package/lib-next/theme/BlogPostItem/styles.module.css +9 -0
- package/lib-next/theme/BlogPostPage/index.js +56 -45
- package/lib-next/theme/BlogPostPaginator/index.js +25 -28
- package/lib-next/theme/BlogSidebar/Desktop/index.js +41 -0
- package/lib-next/theme/BlogSidebar/{styles.module.css → Desktop/styles.module.css} +1 -2
- package/lib-next/theme/BlogSidebar/Mobile/index.js +36 -0
- package/lib-next/theme/BlogSidebar/index.js +11 -31
- package/lib-next/theme/BlogTagsListPage/index.js +17 -14
- package/lib-next/theme/BlogTagsPostsPage/index.js +43 -38
- package/lib-next/theme/CodeBlock/Container/index.js +29 -0
- package/lib-next/theme/CodeBlock/Container/styles.module.css +14 -0
- package/lib-next/theme/CodeBlock/Content/Element.js +23 -0
- package/lib-next/theme/CodeBlock/Content/String.js +104 -0
- package/lib-next/theme/CodeBlock/{styles.module.css → Content/styles.module.css} +39 -29
- package/lib-next/theme/CodeBlock/CopyButton/index.js +61 -0
- package/lib-next/theme/CodeBlock/CopyButton/styles.module.css +47 -0
- package/lib-next/theme/CodeBlock/Line/index.js +49 -0
- package/lib-next/theme/CodeBlock/Line/styles.module.css +51 -0
- package/lib-next/theme/CodeBlock/WordWrapButton/index.js +40 -0
- package/lib-next/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
- package/lib-next/theme/CodeBlock/index.js +26 -164
- package/lib-next/theme/ColorModeToggle/index.js +62 -0
- package/lib-next/theme/ColorModeToggle/styles.module.css +35 -0
- package/lib-next/theme/Details/index.js +1 -1
- package/lib-next/theme/DocBreadcrumbs/index.js +63 -19
- package/lib-next/theme/DocBreadcrumbs/styles.module.css +8 -15
- package/lib-next/theme/DocCard/index.js +17 -15
- package/lib-next/theme/DocCard/styles.module.css +8 -17
- package/lib-next/theme/DocCardList/index.js +20 -6
- package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +30 -9
- package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +8 -0
- package/lib-next/theme/DocItem/index.js +85 -67
- package/lib-next/theme/DocItem/styles.module.css +6 -0
- package/lib-next/theme/DocPage/Layout/Main/index.js +29 -0
- package/lib-next/theme/DocPage/Layout/Main/styles.module.css +28 -0
- package/lib-next/theme/DocPage/Layout/Sidebar/ExpandButton/index.js +34 -0
- package/lib-next/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
- package/lib-next/theme/DocPage/Layout/Sidebar/index.js +68 -0
- package/lib-next/theme/DocPage/Layout/Sidebar/index.module.css +32 -0
- package/lib-next/theme/DocPage/Layout/index.js +34 -0
- package/lib-next/theme/{BlogPostAuthor/styles.module.css → DocPage/Layout/index.module.css} +6 -3
- package/lib-next/theme/DocPage/index.js +30 -149
- package/lib-next/theme/DocPaginator/index.js +25 -28
- package/lib-next/theme/DocSidebar/Desktop/CollapseButton/index.js +34 -0
- package/lib-next/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
- package/lib-next/theme/DocSidebar/Desktop/Content/index.js +46 -0
- package/lib-next/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
- package/lib-next/theme/DocSidebar/Desktop/index.js +36 -0
- package/lib-next/theme/DocSidebar/Desktop/styles.module.css +50 -0
- package/lib-next/theme/DocSidebar/Mobile/index.js +49 -0
- package/lib-next/theme/DocSidebar/index.js +6 -113
- package/lib-next/theme/DocSidebarItem/Category.js +197 -0
- package/lib-next/theme/DocSidebarItem/Html.js +27 -0
- package/lib-next/theme/DocSidebarItem/{styles.module.css → Html.module.css} +0 -0
- package/lib-next/theme/DocSidebarItem/Link.js +53 -0
- package/lib-next/theme/DocSidebarItem/Link.module.css +10 -0
- package/lib-next/theme/DocSidebarItem/index.js +4 -245
- package/lib-next/theme/DocSidebarItems/index.js +1 -6
- package/lib-next/theme/DocTagDocListPage/index.js +40 -33
- package/lib-next/theme/DocTagsListPage/index.js +21 -16
- package/lib-next/theme/DocVersionBanner/index.js +2 -2
- package/lib-next/theme/Footer/Copyright/index.js +18 -0
- package/lib-next/theme/Footer/Layout/index.js +26 -0
- package/lib-next/theme/Footer/LinkItem/index.js +33 -0
- package/lib-next/theme/Footer/Links/MultiColumn/index.js +47 -0
- package/lib-next/theme/Footer/Links/Simple/index.js +41 -0
- package/lib-next/theme/Footer/Links/index.js +17 -0
- package/lib-next/theme/Footer/Logo/index.js +38 -0
- package/lib-next/theme/Footer/{styles.module.css → Logo/styles.module.css} +0 -0
- package/lib-next/theme/Footer/index.js +11 -163
- package/lib-next/theme/Heading/index.js +10 -24
- package/lib-next/theme/IconDarkMode/index.js +17 -0
- package/lib-next/theme/IconExternalLink/styles.module.css +0 -2
- package/lib-next/theme/IconHome/index.js +17 -0
- package/lib-next/theme/IconLanguage/index.js +3 -3
- package/lib-next/theme/IconLightMode/index.js +17 -0
- package/lib-next/theme/LastUpdated/index.js +1 -0
- package/lib-next/theme/Layout/index.js +15 -10
- package/lib-next/theme/LayoutProviders/index.js +5 -4
- package/lib-next/theme/MDXComponents/A.js +11 -0
- package/lib-next/theme/MDXComponents/Code.js +28 -0
- package/lib-next/theme/MDXComponents/Details.js +20 -0
- package/lib-next/theme/MDXComponents/Head.js +26 -0
- package/lib-next/theme/MDXComponents/Heading.js +11 -0
- package/lib-next/theme/MDXComponents/Img.js +24 -0
- package/{src/theme/MDXComponents/styles.css → lib-next/theme/MDXComponents/Img.module.css} +1 -6
- package/lib-next/theme/MDXComponents/Pre.js +18 -0
- package/lib-next/theme/MDXComponents/Ul.js +21 -0
- package/lib-next/theme/MDXComponents/index.js +22 -57
- package/lib-next/theme/MDXContent/index.js +12 -0
- package/lib-next/theme/MDXPage/index.js +33 -28
- package/lib-next/theme/Navbar/ColorModeToggle/index.js +25 -0
- package/lib-next/theme/Navbar/Content/index.js +75 -0
- package/lib-next/theme/Navbar/Content/styles.module.css +15 -0
- package/lib-next/theme/Navbar/Layout/index.js +54 -0
- package/{src/theme/Navbar → lib-next/theme/Navbar/Layout}/styles.module.css +0 -13
- package/lib-next/theme/Navbar/Logo/index.js +17 -0
- package/lib-next/theme/Navbar/MobileSidebar/Header/index.js +33 -0
- package/lib-next/theme/Navbar/MobileSidebar/Layout/index.js +28 -0
- package/lib-next/theme/Navbar/MobileSidebar/PrimaryMenu/index.js +33 -0
- package/lib-next/theme/Navbar/MobileSidebar/SecondaryMenu/index.js +36 -0
- package/lib-next/theme/Navbar/MobileSidebar/Toggle/index.js +23 -0
- package/lib-next/theme/Navbar/MobileSidebar/index.js +31 -0
- package/lib-next/theme/Navbar/Search/index.js +11 -0
- package/lib-next/theme/Navbar/Search/styles.module.css +20 -0
- package/lib-next/theme/Navbar/index.js +6 -271
- package/lib-next/theme/NavbarItem/ComponentTypes.js +27 -0
- package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +2 -6
- package/lib-next/theme/NavbarItem/DocNavbarItem.js +11 -28
- package/lib-next/theme/NavbarItem/DocSidebarNavbarItem.js +10 -42
- package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +25 -29
- package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +2 -9
- package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +14 -3
- package/lib-next/theme/NavbarItem/HtmlNavbarItem.js +30 -0
- package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/index.js +5 -10
- package/lib-next/theme/NavbarItem/NavbarNavLink.js +49 -35
- package/lib-next/theme/NavbarItem/SearchNavbarItem.js +6 -1
- package/lib-next/theme/NavbarItem/index.js +4 -23
- package/lib-next/theme/NavbarItem/utils.js +2 -1
- package/lib-next/theme/NotFound.js +38 -33
- package/lib-next/theme/PaginatorNavLink/index.js +8 -2
- package/lib-next/theme/SearchMetadata/index.js +9 -0
- package/lib-next/theme/{LayoutHead → SiteMetadata}/index.js +19 -33
- package/lib-next/theme/SkipToContent/index.js +3 -29
- package/lib-next/theme/TOCCollapsible/CollapseButton.js +29 -0
- package/{src/theme/TOCCollapsible/styles.module.css → lib-next/theme/TOCCollapsible/CollapseButton.module.css} +1 -22
- package/lib-next/theme/TOCCollapsible/index.js +4 -16
- package/lib-next/theme/TOCCollapsible/index.module.css +31 -0
- package/lib-next/theme/TOCItems/Tree.js +40 -0
- package/lib-next/theme/TOCItems/index.js +3 -34
- package/lib-next/theme/TabItem/index.js +3 -1
- package/lib-next/theme/TabItem/styles.module.css +10 -0
- package/lib-next/theme/Tabs/__tests__/index.test.js +8 -8
- package/lib-next/theme/Tabs/index.js +5 -5
- package/lib-next/theme/Tabs/styles.module.css +4 -0
- package/lib-next/theme/Tag/index.js +6 -7
- package/lib-next/theme/TagsListInline/index.js +1 -1
- package/lib-next/theme/ThemedImage/index.js +3 -3
- package/package.json +25 -20
- package/src/admonitions.css +4 -0
- package/src/getSwizzleConfig.ts +173 -22
- package/src/index.ts +14 -15
- package/src/nprogress.css +41 -0
- package/src/nprogress.ts +31 -0
- package/src/theme/BackToTopButton/index.tsx +5 -114
- package/src/theme/BlogArchivePage/index.tsx +18 -17
- package/src/theme/BlogLayout/index.tsx +1 -5
- package/src/theme/BlogListPage/index.tsx +32 -13
- package/src/theme/BlogListPaginator/index.tsx +25 -28
- package/src/theme/BlogPostAuthor/index.tsx +14 -8
- package/src/theme/BlogPostItem/index.tsx +6 -6
- package/src/theme/BlogPostItem/styles.module.css +9 -0
- package/src/theme/BlogPostPage/index.tsx +55 -48
- package/src/theme/BlogPostPaginator/index.tsx +25 -28
- package/src/theme/BlogSidebar/Desktop/index.tsx +45 -0
- package/src/theme/BlogSidebar/{styles.module.css → Desktop/styles.module.css} +1 -2
- package/src/theme/BlogSidebar/Mobile/index.tsx +38 -0
- package/src/theme/BlogSidebar/index.tsx +10 -31
- package/src/theme/BlogTagsListPage/index.tsx +17 -14
- package/src/theme/BlogTagsPostsPage/index.tsx +46 -36
- package/src/theme/CodeBlock/Container/index.tsx +35 -0
- package/src/theme/CodeBlock/Container/styles.module.css +14 -0
- package/src/theme/CodeBlock/Content/Element.tsx +30 -0
- package/src/theme/CodeBlock/Content/String.tsx +111 -0
- package/src/theme/CodeBlock/{styles.module.css → Content/styles.module.css} +39 -29
- package/src/theme/CodeBlock/CopyButton/index.tsx +67 -0
- package/src/theme/CodeBlock/CopyButton/styles.module.css +47 -0
- package/src/theme/CodeBlock/Line/index.tsx +48 -0
- package/src/theme/CodeBlock/Line/styles.module.css +51 -0
- package/src/theme/CodeBlock/WordWrapButton/index.tsx +49 -0
- package/src/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
- package/src/theme/CodeBlock/index.tsx +29 -165
- package/src/theme/ColorModeToggle/index.tsx +67 -0
- package/src/theme/ColorModeToggle/styles.module.css +35 -0
- package/src/theme/Details/index.tsx +1 -1
- package/src/theme/DocBreadcrumbs/index.tsx +65 -16
- package/src/theme/DocBreadcrumbs/styles.module.css +8 -15
- package/src/theme/DocCard/index.tsx +24 -17
- package/src/theme/DocCard/styles.module.css +8 -17
- package/src/theme/DocCardList/index.tsx +19 -10
- package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +34 -7
- package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +8 -0
- package/src/theme/DocItem/index.tsx +72 -56
- package/src/theme/DocItem/styles.module.css +6 -0
- package/src/theme/DocPage/Layout/Main/index.tsx +37 -0
- package/src/theme/DocPage/Layout/Main/styles.module.css +28 -0
- package/src/theme/DocPage/Layout/Sidebar/ExpandButton/index.tsx +40 -0
- package/src/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
- package/src/theme/DocPage/Layout/Sidebar/index.module.css +32 -0
- package/src/theme/DocPage/Layout/Sidebar/index.tsx +74 -0
- package/src/theme/{BlogPostAuthor/styles.module.css → DocPage/Layout/index.module.css} +6 -3
- package/src/theme/DocPage/Layout/index.tsx +39 -0
- package/src/theme/DocPage/index.tsx +30 -160
- package/src/theme/DocPaginator/index.tsx +25 -28
- package/src/theme/DocSidebar/Desktop/CollapseButton/index.tsx +38 -0
- package/src/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
- package/src/theme/DocSidebar/Desktop/Content/index.tsx +55 -0
- package/src/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
- package/src/theme/DocSidebar/Desktop/index.tsx +40 -0
- package/src/theme/DocSidebar/Desktop/styles.module.css +50 -0
- package/src/theme/DocSidebar/Mobile/index.tsx +54 -0
- package/src/theme/DocSidebar/index.tsx +6 -121
- package/src/theme/DocSidebarItem/Category.tsx +210 -0
- package/src/theme/DocSidebarItem/{styles.module.css → Html.module.css} +0 -0
- package/src/theme/DocSidebarItem/Html.tsx +34 -0
- package/src/theme/DocSidebarItem/Link.module.css +10 -0
- package/src/theme/DocSidebarItem/Link.tsx +58 -0
- package/src/theme/DocSidebarItem/index.tsx +4 -260
- package/src/theme/DocSidebarItems/index.tsx +1 -6
- package/src/theme/DocTagDocListPage/index.tsx +40 -33
- package/src/theme/DocTagsListPage/index.tsx +21 -16
- package/src/theme/DocVersionBanner/index.tsx +5 -6
- package/src/theme/Footer/Copyright/index.tsx +20 -0
- package/src/theme/Footer/Layout/index.tsx +34 -0
- package/src/theme/Footer/LinkItem/index.tsx +36 -0
- package/src/theme/Footer/Links/MultiColumn/index.tsx +51 -0
- package/src/theme/Footer/Links/Simple/index.tsx +42 -0
- package/src/theme/Footer/Links/index.tsx +21 -0
- package/src/theme/Footer/Logo/index.tsx +41 -0
- package/src/theme/Footer/{styles.module.css → Logo/styles.module.css} +0 -0
- package/src/theme/Footer/index.tsx +12 -186
- package/src/theme/Heading/index.tsx +10 -22
- package/src/theme/IconDarkMode/index.tsx +20 -0
- package/src/theme/IconExternalLink/styles.module.css +0 -2
- package/src/theme/IconHome/index.tsx +20 -0
- package/src/theme/IconLanguage/index.tsx +3 -3
- package/src/theme/IconLightMode/index.tsx +20 -0
- package/src/theme/LastUpdated/index.tsx +1 -0
- package/src/theme/Layout/index.tsx +15 -10
- package/src/theme/LayoutProviders/index.tsx +5 -4
- package/src/theme/MDXComponents/A.tsx +14 -0
- package/src/theme/MDXComponents/Code.tsx +37 -0
- package/src/theme/MDXComponents/Details.tsx +25 -0
- package/src/theme/MDXComponents/Head.tsx +29 -0
- package/src/theme/MDXComponents/Heading.tsx +14 -0
- package/{lib-next/theme/MDXComponents/styles.css → src/theme/MDXComponents/Img.module.css} +1 -6
- package/src/theme/MDXComponents/Img.tsx +26 -0
- package/src/theme/MDXComponents/Pre.tsx +22 -0
- package/src/theme/MDXComponents/Ul.tsx +24 -0
- package/src/theme/MDXComponents/index.tsx +23 -66
- package/src/theme/MDXContent/index.tsx +15 -0
- package/src/theme/MDXPage/index.tsx +33 -28
- package/src/theme/Navbar/ColorModeToggle/index.tsx +30 -0
- package/src/theme/Navbar/Content/index.tsx +86 -0
- package/src/theme/Navbar/Content/styles.module.css +15 -0
- package/src/theme/Navbar/Layout/index.tsx +57 -0
- package/{lib-next/theme/Navbar → src/theme/Navbar/Layout}/styles.module.css +0 -13
- package/src/theme/Navbar/Logo/index.tsx +19 -0
- package/src/theme/Navbar/MobileSidebar/Header/index.tsx +34 -0
- package/src/theme/Navbar/MobileSidebar/Layout/index.tsx +31 -0
- package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +38 -0
- package/src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx +38 -0
- package/src/theme/Navbar/MobileSidebar/Toggle/index.tsx +25 -0
- package/src/theme/Navbar/MobileSidebar/index.tsx +33 -0
- package/src/theme/Navbar/Search/index.tsx +15 -0
- package/src/theme/Navbar/Search/styles.module.css +20 -0
- package/src/theme/Navbar/index.tsx +6 -286
- package/src/theme/NavbarItem/ComponentTypes.tsx +32 -0
- package/src/theme/NavbarItem/DefaultNavbarItem.tsx +2 -2
- package/src/theme/NavbarItem/DocNavbarItem.tsx +13 -32
- package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +9 -49
- package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +26 -33
- package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +3 -10
- package/src/theme/NavbarItem/DropdownNavbarItem.tsx +15 -3
- package/src/theme/NavbarItem/HtmlNavbarItem.tsx +32 -0
- package/src/theme/NavbarItem/LocaleDropdownNavbarItem/index.tsx +5 -9
- package/src/theme/NavbarItem/NavbarNavLink.tsx +41 -29
- package/src/theme/NavbarItem/SearchNavbarItem.tsx +6 -1
- package/src/theme/NavbarItem/index.tsx +9 -39
- package/src/theme/NavbarItem/utils.ts +5 -2
- package/src/theme/NotFound.tsx +38 -33
- package/src/theme/PaginatorNavLink/index.tsx +8 -2
- package/src/theme/SearchMetadata/index.tsx +9 -0
- package/src/theme/{LayoutHead → SiteMetadata}/index.tsx +19 -33
- package/src/theme/SkipToContent/index.tsx +3 -29
- package/{lib-next/theme/TOCCollapsible/styles.module.css → src/theme/TOCCollapsible/CollapseButton.module.css} +1 -22
- package/src/theme/TOCCollapsible/CollapseButton.tsx +35 -0
- package/src/theme/TOCCollapsible/index.module.css +31 -0
- package/src/theme/TOCCollapsible/index.tsx +4 -17
- package/src/theme/TOCItems/Tree.tsx +46 -0
- package/src/theme/TOCItems/index.tsx +2 -41
- package/src/theme/TabItem/index.tsx +7 -1
- package/src/theme/TabItem/styles.module.css +10 -0
- package/src/theme/Tabs/index.tsx +8 -9
- package/src/theme/Tabs/styles.module.css +4 -0
- package/src/theme/Tag/index.tsx +6 -8
- package/src/theme/TagsListInline/index.tsx +1 -1
- package/src/theme/ThemedImage/index.tsx +4 -3
- package/src/theme-classic.d.ts +600 -76
- package/src/translations.ts +12 -6
- package/src/validateThemeConfig.ts +90 -39
- package/lib/types.d.ts +0 -11
- package/lib-next/theme/DocPage/styles.module.css +0 -86
- package/lib-next/theme/DocSidebar/styles.module.css +0 -107
- package/lib-next/theme/Seo/index.js +0 -40
- package/lib-next/theme/Toggle/index.js +0 -100
- package/lib-next/theme/Toggle/styles.module.css +0 -106
- package/src/theme/DocPage/styles.module.css +0 -86
- package/src/theme/DocSidebar/styles.module.css +0 -107
- package/src/theme/Seo/index.tsx +0 -49
- package/src/theme/Toggle/index.tsx +0 -117
- package/src/theme/Toggle/styles.module.css +0 -106
- package/src/types.d.ts +0 -11
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
@media (min-width: 997px) {
|
|
9
|
+
.expandButton {
|
|
10
|
+
position: sticky;
|
|
11
|
+
top: 0;
|
|
12
|
+
height: 100%;
|
|
13
|
+
max-height: 100vh;
|
|
14
|
+
display: flex;
|
|
15
|
+
align-items: center;
|
|
16
|
+
justify-content: center;
|
|
17
|
+
transition: background-color var(--ifm-transition-fast) ease;
|
|
18
|
+
background-color: var(--docusaurus-collapse-button-bg);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.expandButton:hover,
|
|
22
|
+
.expandButton:focus {
|
|
23
|
+
background-color: var(--docusaurus-collapse-button-bg-hover);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.expandButtonIcon {
|
|
27
|
+
transform: rotate(0);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
[dir='rtl'] .expandButtonIcon {
|
|
31
|
+
transform: rotate(180deg);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import React, {useState, useCallback} from 'react';
|
|
8
|
+
import DocSidebar from '@theme/DocSidebar';
|
|
9
|
+
import {useLocation} from '@docusaurus/router';
|
|
10
|
+
import ExpandButton from '@theme/DocPage/Layout/Sidebar/ExpandButton';
|
|
11
|
+
import clsx from 'clsx';
|
|
12
|
+
import styles from './index.module.css';
|
|
13
|
+
import {ThemeClassNames, useDocsSidebar} from '@docusaurus/theme-common'; // Reset sidebar state when sidebar changes
|
|
14
|
+
// Use React key to unmount/remount the children
|
|
15
|
+
// See https://github.com/facebook/docusaurus/issues/3414
|
|
16
|
+
|
|
17
|
+
function ResetOnSidebarChange({children}) {
|
|
18
|
+
const sidebar = useDocsSidebar();
|
|
19
|
+
return (
|
|
20
|
+
<React.Fragment key={sidebar?.name ?? 'noSidebar'}>
|
|
21
|
+
{children}
|
|
22
|
+
</React.Fragment>
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export default function DocPageLayoutSidebar({
|
|
27
|
+
sidebar,
|
|
28
|
+
hiddenSidebarContainer,
|
|
29
|
+
setHiddenSidebarContainer,
|
|
30
|
+
}) {
|
|
31
|
+
const {pathname} = useLocation();
|
|
32
|
+
const [hiddenSidebar, setHiddenSidebar] = useState(false);
|
|
33
|
+
const toggleSidebar = useCallback(() => {
|
|
34
|
+
if (hiddenSidebar) {
|
|
35
|
+
setHiddenSidebar(false);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
setHiddenSidebarContainer((value) => !value);
|
|
39
|
+
}, [setHiddenSidebarContainer, hiddenSidebar]);
|
|
40
|
+
return (
|
|
41
|
+
<aside
|
|
42
|
+
className={clsx(
|
|
43
|
+
ThemeClassNames.docs.docSidebarContainer,
|
|
44
|
+
styles.docSidebarContainer,
|
|
45
|
+
hiddenSidebarContainer && styles.docSidebarContainerHidden,
|
|
46
|
+
)}
|
|
47
|
+
onTransitionEnd={(e) => {
|
|
48
|
+
if (!e.currentTarget.classList.contains(styles.docSidebarContainer)) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (hiddenSidebarContainer) {
|
|
53
|
+
setHiddenSidebar(true);
|
|
54
|
+
}
|
|
55
|
+
}}>
|
|
56
|
+
<ResetOnSidebarChange>
|
|
57
|
+
<DocSidebar
|
|
58
|
+
sidebar={sidebar}
|
|
59
|
+
path={pathname}
|
|
60
|
+
onCollapse={toggleSidebar}
|
|
61
|
+
isHidden={hiddenSidebar}
|
|
62
|
+
/>
|
|
63
|
+
</ResetOnSidebarChange>
|
|
64
|
+
|
|
65
|
+
{hiddenSidebar && <ExpandButton toggleSidebar={toggleSidebar} />}
|
|
66
|
+
</aside>
|
|
67
|
+
);
|
|
68
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
:root {
|
|
9
|
+
--doc-sidebar-width: 300px;
|
|
10
|
+
--doc-sidebar-hidden-width: 30px;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.docSidebarContainer {
|
|
14
|
+
display: none;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@media (min-width: 997px) {
|
|
18
|
+
.docSidebarContainer {
|
|
19
|
+
display: block;
|
|
20
|
+
width: var(--doc-sidebar-width);
|
|
21
|
+
margin-top: calc(-1 * var(--ifm-navbar-height));
|
|
22
|
+
border-right: 1px solid var(--ifm-toc-border-color);
|
|
23
|
+
will-change: width;
|
|
24
|
+
transition: width var(--ifm-transition-fast) ease;
|
|
25
|
+
clip-path: inset(0);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.docSidebarContainerHidden {
|
|
29
|
+
width: var(--doc-sidebar-hidden-width);
|
|
30
|
+
cursor: pointer;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import React, {useState} from 'react';
|
|
8
|
+
import Layout from '@theme/Layout';
|
|
9
|
+
import BackToTopButton from '@theme/BackToTopButton';
|
|
10
|
+
import DocPageLayoutSidebar from '@theme/DocPage/Layout/Sidebar';
|
|
11
|
+
import DocPageLayoutMain from '@theme/DocPage/Layout/Main';
|
|
12
|
+
import styles from './index.module.css';
|
|
13
|
+
import {useDocsSidebar} from '@docusaurus/theme-common';
|
|
14
|
+
export default function DocPageLayout({children}) {
|
|
15
|
+
const sidebar = useDocsSidebar();
|
|
16
|
+
const [hiddenSidebarContainer, setHiddenSidebarContainer] = useState(false);
|
|
17
|
+
return (
|
|
18
|
+
<Layout wrapperClassName={styles.docsWrapper}>
|
|
19
|
+
<BackToTopButton />
|
|
20
|
+
<div className={styles.docPage}>
|
|
21
|
+
{sidebar && (
|
|
22
|
+
<DocPageLayoutSidebar
|
|
23
|
+
sidebar={sidebar.items}
|
|
24
|
+
hiddenSidebarContainer={hiddenSidebarContainer}
|
|
25
|
+
setHiddenSidebarContainer={setHiddenSidebarContainer}
|
|
26
|
+
/>
|
|
27
|
+
)}
|
|
28
|
+
<DocPageLayoutMain hiddenSidebarContainer={hiddenSidebarContainer}>
|
|
29
|
+
{children}
|
|
30
|
+
</DocPageLayoutMain>
|
|
31
|
+
</div>
|
|
32
|
+
</Layout>
|
|
33
|
+
);
|
|
34
|
+
}
|
|
@@ -4,169 +4,50 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import React
|
|
8
|
-
import {MDXProvider} from '@mdx-js/react';
|
|
9
|
-
import renderRoutes from '@docusaurus/renderRoutes';
|
|
10
|
-
import Layout from '@theme/Layout';
|
|
11
|
-
import DocSidebar from '@theme/DocSidebar';
|
|
12
|
-
import MDXComponents from '@theme/MDXComponents';
|
|
7
|
+
import React from 'react';
|
|
13
8
|
import NotFound from '@theme/NotFound';
|
|
14
|
-
import
|
|
15
|
-
import BackToTopButton from '@theme/BackToTopButton';
|
|
16
|
-
import {matchPath} from '@docusaurus/router';
|
|
17
|
-
import {translate} from '@docusaurus/Translate';
|
|
9
|
+
import DocPageLayout from '@theme/DocPage/Layout';
|
|
18
10
|
import clsx from 'clsx';
|
|
19
|
-
import styles from './styles.module.css';
|
|
20
11
|
import {
|
|
12
|
+
HtmlClassNameProvider,
|
|
21
13
|
ThemeClassNames,
|
|
22
14
|
docVersionSearchTag,
|
|
23
15
|
DocsSidebarProvider,
|
|
24
|
-
useDocsSidebar,
|
|
25
16
|
DocsVersionProvider,
|
|
17
|
+
useDocRouteMetadata,
|
|
26
18
|
} from '@docusaurus/theme-common';
|
|
27
|
-
import
|
|
28
|
-
|
|
29
|
-
function DocPageContent({
|
|
30
|
-
currentDocRoute,
|
|
31
|
-
versionMetadata,
|
|
32
|
-
children,
|
|
33
|
-
sidebarName,
|
|
34
|
-
}) {
|
|
35
|
-
const sidebar = useDocsSidebar();
|
|
36
|
-
const {pluginId, version} = versionMetadata;
|
|
37
|
-
const [hiddenSidebarContainer, setHiddenSidebarContainer] = useState(false);
|
|
38
|
-
const [hiddenSidebar, setHiddenSidebar] = useState(false);
|
|
39
|
-
const toggleSidebar = useCallback(() => {
|
|
40
|
-
if (hiddenSidebar) {
|
|
41
|
-
setHiddenSidebar(false);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
setHiddenSidebarContainer((value) => !value);
|
|
45
|
-
}, [hiddenSidebar]);
|
|
46
|
-
return (
|
|
47
|
-
<Layout
|
|
48
|
-
wrapperClassName={ThemeClassNames.wrapper.docsPages}
|
|
49
|
-
pageClassName={ThemeClassNames.page.docsDocPage}
|
|
50
|
-
searchMetadata={{
|
|
51
|
-
version,
|
|
52
|
-
tag: docVersionSearchTag(pluginId, version),
|
|
53
|
-
}}>
|
|
54
|
-
<div className={styles.docPage}>
|
|
55
|
-
<BackToTopButton />
|
|
56
|
-
|
|
57
|
-
{sidebar && (
|
|
58
|
-
<aside
|
|
59
|
-
className={clsx(
|
|
60
|
-
ThemeClassNames.docs.docSidebarContainer,
|
|
61
|
-
styles.docSidebarContainer,
|
|
62
|
-
{
|
|
63
|
-
[styles.docSidebarContainerHidden]: hiddenSidebarContainer,
|
|
64
|
-
},
|
|
65
|
-
)}
|
|
66
|
-
onTransitionEnd={(e) => {
|
|
67
|
-
if (
|
|
68
|
-
!e.currentTarget.classList.contains(styles.docSidebarContainer)
|
|
69
|
-
) {
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
if (hiddenSidebarContainer) {
|
|
74
|
-
setHiddenSidebar(true);
|
|
75
|
-
}
|
|
76
|
-
}}>
|
|
77
|
-
<DocSidebar
|
|
78
|
-
key={
|
|
79
|
-
// Reset sidebar state on sidebar changes
|
|
80
|
-
// See https://github.com/facebook/docusaurus/issues/3414
|
|
81
|
-
sidebarName
|
|
82
|
-
}
|
|
83
|
-
sidebar={sidebar}
|
|
84
|
-
path={currentDocRoute.path}
|
|
85
|
-
onCollapse={toggleSidebar}
|
|
86
|
-
isHidden={hiddenSidebar}
|
|
87
|
-
/>
|
|
88
|
-
|
|
89
|
-
{hiddenSidebar && (
|
|
90
|
-
<div
|
|
91
|
-
className={styles.collapsedDocSidebar}
|
|
92
|
-
title={translate({
|
|
93
|
-
id: 'theme.docs.sidebar.expandButtonTitle',
|
|
94
|
-
message: 'Expand sidebar',
|
|
95
|
-
description:
|
|
96
|
-
'The ARIA label and title attribute for expand button of doc sidebar',
|
|
97
|
-
})}
|
|
98
|
-
aria-label={translate({
|
|
99
|
-
id: 'theme.docs.sidebar.expandButtonAriaLabel',
|
|
100
|
-
message: 'Expand sidebar',
|
|
101
|
-
description:
|
|
102
|
-
'The ARIA label and title attribute for expand button of doc sidebar',
|
|
103
|
-
})}
|
|
104
|
-
tabIndex={0}
|
|
105
|
-
role="button"
|
|
106
|
-
onKeyDown={toggleSidebar}
|
|
107
|
-
onClick={toggleSidebar}>
|
|
108
|
-
<IconArrow className={styles.expandSidebarButtonIcon} />
|
|
109
|
-
</div>
|
|
110
|
-
)}
|
|
111
|
-
</aside>
|
|
112
|
-
)}
|
|
113
|
-
<main
|
|
114
|
-
className={clsx(styles.docMainContainer, {
|
|
115
|
-
[styles.docMainContainerEnhanced]:
|
|
116
|
-
hiddenSidebarContainer || !sidebar,
|
|
117
|
-
})}>
|
|
118
|
-
<div
|
|
119
|
-
className={clsx(
|
|
120
|
-
'container padding-top--md padding-bottom--lg',
|
|
121
|
-
styles.docItemWrapper,
|
|
122
|
-
{
|
|
123
|
-
[styles.docItemWrapperEnhanced]: hiddenSidebarContainer,
|
|
124
|
-
},
|
|
125
|
-
)}>
|
|
126
|
-
<MDXProvider components={MDXComponents}>{children}</MDXProvider>
|
|
127
|
-
</div>
|
|
128
|
-
</main>
|
|
129
|
-
</div>
|
|
130
|
-
</Layout>
|
|
131
|
-
);
|
|
132
|
-
}
|
|
133
|
-
|
|
19
|
+
import SearchMetadata from '@theme/SearchMetadata';
|
|
134
20
|
export default function DocPage(props) {
|
|
135
|
-
const {
|
|
136
|
-
|
|
137
|
-
versionMetadata,
|
|
138
|
-
location,
|
|
139
|
-
} = props;
|
|
140
|
-
const currentDocRoute = docRoutes.find((docRoute) =>
|
|
141
|
-
matchPath(location.pathname, docRoute),
|
|
142
|
-
);
|
|
21
|
+
const {versionMetadata} = props;
|
|
22
|
+
const currentDocRouteMetadata = useDocRouteMetadata(props);
|
|
143
23
|
|
|
144
|
-
if (!
|
|
24
|
+
if (!currentDocRouteMetadata) {
|
|
145
25
|
return <NotFound />;
|
|
146
|
-
}
|
|
26
|
+
}
|
|
147
27
|
|
|
148
|
-
const sidebarName =
|
|
149
|
-
const sidebar = sidebarName
|
|
150
|
-
? versionMetadata.docsSidebars[sidebarName]
|
|
151
|
-
: null;
|
|
28
|
+
const {docElement, sidebarName, sidebarItems} = currentDocRouteMetadata;
|
|
152
29
|
return (
|
|
153
30
|
<>
|
|
154
|
-
<
|
|
155
|
-
{
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
31
|
+
<SearchMetadata
|
|
32
|
+
version={versionMetadata.version}
|
|
33
|
+
tag={docVersionSearchTag(
|
|
34
|
+
versionMetadata.pluginId,
|
|
35
|
+
versionMetadata.version,
|
|
36
|
+
)}
|
|
37
|
+
/>
|
|
38
|
+
<HtmlClassNameProvider
|
|
39
|
+
className={clsx(
|
|
40
|
+
// TODO: it should be removed from here
|
|
41
|
+
ThemeClassNames.wrapper.docsPages,
|
|
42
|
+
ThemeClassNames.page.docsDocPage,
|
|
43
|
+
props.versionMetadata.className,
|
|
44
|
+
)}>
|
|
45
|
+
<DocsVersionProvider version={versionMetadata}>
|
|
46
|
+
<DocsSidebarProvider name={sidebarName} items={sidebarItems}>
|
|
47
|
+
<DocPageLayout>{docElement}</DocPageLayout>
|
|
48
|
+
</DocsSidebarProvider>
|
|
49
|
+
</DocsVersionProvider>
|
|
50
|
+
</HtmlClassNameProvider>
|
|
170
51
|
</>
|
|
171
52
|
);
|
|
172
53
|
}
|
|
@@ -17,34 +17,31 @@ export default function DocPaginator(props) {
|
|
|
17
17
|
message: 'Docs pages navigation',
|
|
18
18
|
description: 'The ARIA label for the docs pagination',
|
|
19
19
|
})}>
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
/>
|
|
46
|
-
)}
|
|
47
|
-
</div>
|
|
20
|
+
{previous && (
|
|
21
|
+
<PaginatorNavLink
|
|
22
|
+
{...previous}
|
|
23
|
+
subLabel={
|
|
24
|
+
<Translate
|
|
25
|
+
id="theme.docs.paginator.previous"
|
|
26
|
+
description="The label used to navigate to the previous doc">
|
|
27
|
+
Previous
|
|
28
|
+
</Translate>
|
|
29
|
+
}
|
|
30
|
+
/>
|
|
31
|
+
)}
|
|
32
|
+
{next && (
|
|
33
|
+
<PaginatorNavLink
|
|
34
|
+
{...next}
|
|
35
|
+
subLabel={
|
|
36
|
+
<Translate
|
|
37
|
+
id="theme.docs.paginator.next"
|
|
38
|
+
description="The label used to navigate to the next doc">
|
|
39
|
+
Next
|
|
40
|
+
</Translate>
|
|
41
|
+
}
|
|
42
|
+
isNext
|
|
43
|
+
/>
|
|
44
|
+
)}
|
|
48
45
|
</nav>
|
|
49
46
|
);
|
|
50
47
|
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import clsx from 'clsx';
|
|
9
|
+
import IconArrow from '@theme/IconArrow';
|
|
10
|
+
import {translate} from '@docusaurus/Translate';
|
|
11
|
+
import styles from './styles.module.css';
|
|
12
|
+
export default function CollapseButton({onClick}) {
|
|
13
|
+
return (
|
|
14
|
+
<button
|
|
15
|
+
type="button"
|
|
16
|
+
title={translate({
|
|
17
|
+
id: 'theme.docs.sidebar.collapseButtonTitle',
|
|
18
|
+
message: 'Collapse sidebar',
|
|
19
|
+
description: 'The title attribute for collapse button of doc sidebar',
|
|
20
|
+
})}
|
|
21
|
+
aria-label={translate({
|
|
22
|
+
id: 'theme.docs.sidebar.collapseButtonAriaLabel',
|
|
23
|
+
message: 'Collapse sidebar',
|
|
24
|
+
description: 'The title attribute for collapse button of doc sidebar',
|
|
25
|
+
})}
|
|
26
|
+
className={clsx(
|
|
27
|
+
'button button--secondary button--outline',
|
|
28
|
+
styles.collapseSidebarButton,
|
|
29
|
+
)}
|
|
30
|
+
onClick={onClick}>
|
|
31
|
+
<IconArrow className={styles.collapseSidebarButtonIcon} />
|
|
32
|
+
</button>
|
|
33
|
+
);
|
|
34
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
:root {
|
|
9
|
+
--docusaurus-collapse-button-bg: transparent;
|
|
10
|
+
--docusaurus-collapse-button-bg-hover: rgb(0 0 0 / 10%);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
[data-theme='dark']:root {
|
|
14
|
+
--docusaurus-collapse-button-bg: rgb(255 255 255 / 5%);
|
|
15
|
+
--docusaurus-collapse-button-bg-hover: rgb(255 255 255 / 10%);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
@media (min-width: 997px) {
|
|
19
|
+
.collapseSidebarButton {
|
|
20
|
+
display: block !important;
|
|
21
|
+
background-color: var(--docusaurus-collapse-button-bg);
|
|
22
|
+
height: 40px;
|
|
23
|
+
position: sticky;
|
|
24
|
+
bottom: 0;
|
|
25
|
+
border-radius: 0;
|
|
26
|
+
border: 1px solid var(--ifm-toc-border-color);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.collapseSidebarButtonIcon {
|
|
30
|
+
transform: rotate(180deg);
|
|
31
|
+
margin-top: 4px;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
[dir='rtl'] .collapseSidebarButtonIcon {
|
|
35
|
+
transform: rotate(0);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.collapseSidebarButton:hover,
|
|
39
|
+
.collapseSidebarButton:focus {
|
|
40
|
+
background-color: var(--docusaurus-collapse-button-bg-hover);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.collapseSidebarButton {
|
|
45
|
+
display: none;
|
|
46
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import React, {useState} from 'react';
|
|
8
|
+
import clsx from 'clsx';
|
|
9
|
+
import {
|
|
10
|
+
ThemeClassNames,
|
|
11
|
+
useAnnouncementBar,
|
|
12
|
+
useScrollPosition,
|
|
13
|
+
} from '@docusaurus/theme-common';
|
|
14
|
+
import DocSidebarItems from '@theme/DocSidebarItems';
|
|
15
|
+
import styles from './styles.module.css';
|
|
16
|
+
|
|
17
|
+
function useShowAnnouncementBar() {
|
|
18
|
+
const {isActive} = useAnnouncementBar();
|
|
19
|
+
const [showAnnouncementBar, setShowAnnouncementBar] = useState(isActive);
|
|
20
|
+
useScrollPosition(
|
|
21
|
+
({scrollY}) => {
|
|
22
|
+
if (isActive) {
|
|
23
|
+
setShowAnnouncementBar(scrollY === 0);
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
[isActive],
|
|
27
|
+
);
|
|
28
|
+
return isActive && showAnnouncementBar;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export default function DocSidebarDesktopContent({path, sidebar, className}) {
|
|
32
|
+
const showAnnouncementBar = useShowAnnouncementBar();
|
|
33
|
+
return (
|
|
34
|
+
<nav
|
|
35
|
+
className={clsx(
|
|
36
|
+
'menu thin-scrollbar',
|
|
37
|
+
styles.menu,
|
|
38
|
+
showAnnouncementBar && styles.menuWithAnnouncementBar,
|
|
39
|
+
className,
|
|
40
|
+
)}>
|
|
41
|
+
<ul className={clsx(ThemeClassNames.docs.docSidebarMenu, 'menu__list')}>
|
|
42
|
+
<DocSidebarItems items={sidebar} activePath={path} level={1} />
|
|
43
|
+
</ul>
|
|
44
|
+
</nav>
|
|
45
|
+
);
|
|
46
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
@media (min-width: 997px) {
|
|
9
|
+
.menu {
|
|
10
|
+
flex-grow: 1;
|
|
11
|
+
padding: 0.5rem;
|
|
12
|
+
}
|
|
13
|
+
@supports (scrollbar-gutter: stable) {
|
|
14
|
+
.menu {
|
|
15
|
+
padding: 0.5rem 0 0.5rem 0.5rem;
|
|
16
|
+
scrollbar-gutter: stable;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.menuWithAnnouncementBar {
|
|
21
|
+
margin-bottom: var(--docusaurus-announcement-bar-height);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import clsx from 'clsx';
|
|
9
|
+
import {useThemeConfig} from '@docusaurus/theme-common';
|
|
10
|
+
import Logo from '@theme/Logo';
|
|
11
|
+
import CollapseButton from '@theme/DocSidebar/Desktop/CollapseButton';
|
|
12
|
+
import Content from '@theme/DocSidebar/Desktop/Content';
|
|
13
|
+
import styles from './styles.module.css';
|
|
14
|
+
|
|
15
|
+
function DocSidebarDesktop({path, sidebar, onCollapse, isHidden}) {
|
|
16
|
+
const {
|
|
17
|
+
navbar: {hideOnScroll},
|
|
18
|
+
docs: {
|
|
19
|
+
sidebar: {hideable},
|
|
20
|
+
},
|
|
21
|
+
} = useThemeConfig();
|
|
22
|
+
return (
|
|
23
|
+
<div
|
|
24
|
+
className={clsx(
|
|
25
|
+
styles.sidebar,
|
|
26
|
+
hideOnScroll && styles.sidebarWithHideableNavbar,
|
|
27
|
+
isHidden && styles.sidebarHidden,
|
|
28
|
+
)}>
|
|
29
|
+
{hideOnScroll && <Logo tabIndex={-1} className={styles.sidebarLogo} />}
|
|
30
|
+
<Content path={path} sidebar={sidebar} />
|
|
31
|
+
{hideable && <CollapseButton onClick={onCollapse} />}
|
|
32
|
+
</div>
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export default React.memo(DocSidebarDesktop);
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
@media (min-width: 997px) {
|
|
9
|
+
.sidebar {
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
max-height: 100vh;
|
|
13
|
+
height: 100%;
|
|
14
|
+
position: sticky;
|
|
15
|
+
top: 0;
|
|
16
|
+
padding-top: var(--ifm-navbar-height);
|
|
17
|
+
width: var(--doc-sidebar-width);
|
|
18
|
+
transition: opacity 50ms ease;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.sidebarWithHideableNavbar {
|
|
22
|
+
padding-top: 0;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.sidebarHidden {
|
|
26
|
+
opacity: 0;
|
|
27
|
+
height: 0;
|
|
28
|
+
overflow: hidden;
|
|
29
|
+
visibility: hidden;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.sidebarLogo {
|
|
33
|
+
display: flex !important;
|
|
34
|
+
align-items: center;
|
|
35
|
+
margin: 0 var(--ifm-navbar-padding-horizontal);
|
|
36
|
+
min-height: var(--ifm-navbar-height);
|
|
37
|
+
max-height: var(--ifm-navbar-height);
|
|
38
|
+
color: inherit !important;
|
|
39
|
+
text-decoration: none !important;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.sidebarLogo img {
|
|
43
|
+
margin-right: 0.5rem;
|
|
44
|
+
height: 2rem;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.sidebarLogo {
|
|
49
|
+
display: none;
|
|
50
|
+
}
|