@docusaurus/theme-classic 2.0.0-beta.1 → 2.0.0-beta.10
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/README.md +1 -1
- package/lib/__tests__/validateThemeConfig.test.js +277 -3
- package/lib/admonitions.css +35 -0
- package/lib/deps.d.ts +13 -0
- package/lib/index.js +41 -16
- package/lib/prism-include-languages.js +9 -5
- package/lib/theme/AnnouncementBar/index.js +10 -16
- package/lib/theme/AnnouncementBar/styles.module.css +25 -30
- package/lib/theme/BackToTopButton/index.js +140 -0
- package/lib/theme/BackToTopButton/styles.module.css +42 -0
- package/lib/theme/BlogArchivePage/index.js +89 -0
- package/lib/theme/BlogLayout/index.js +51 -0
- package/lib/theme/BlogListPage/index.js +10 -21
- package/lib/theme/BlogPostAuthor/index.js +51 -0
- package/lib/theme/BlogPostAuthor/styles.module.css +12 -0
- package/lib/theme/BlogPostAuthors/index.js +47 -0
- package/lib/theme/BlogPostAuthors/styles.module.css +11 -0
- package/lib/theme/BlogPostItem/index.js +58 -67
- package/lib/theme/BlogPostPage/index.js +37 -24
- package/lib/theme/BlogSidebar/index.js +5 -7
- package/lib/theme/BlogSidebar/styles.module.css +2 -2
- package/lib/theme/BlogTagsListPage/index.js +8 -44
- package/lib/theme/BlogTagsPostsPage/index.js +24 -38
- package/lib/theme/CodeBlock/index.js +18 -138
- package/lib/theme/CodeBlock/styles.module.css +6 -9
- package/lib/theme/Details/index.js +30 -0
- package/lib/theme/Details/styles.module.css +13 -0
- package/lib/theme/DocCard/index.js +84 -0
- package/lib/theme/DocCard/styles.module.css +43 -0
- package/lib/theme/DocCardList/index.js +28 -0
- package/lib/theme/DocCategoryGeneratedIndexPage/index.js +57 -0
- package/lib/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
- package/lib/theme/DocItem/index.js +29 -46
- package/lib/theme/DocItem/styles.module.css +5 -9
- package/lib/theme/DocItemFooter/index.js +79 -0
- package/lib/theme/DocItemFooter/styles.module.css +18 -0
- package/lib/theme/DocPage/index.js +35 -52
- package/lib/theme/DocPage/styles.module.css +8 -23
- package/lib/theme/DocPaginator/index.js +6 -7
- package/lib/theme/DocSidebar/index.js +53 -235
- package/lib/theme/DocSidebar/styles.module.css +0 -18
- package/lib/theme/DocSidebarItem/index.js +209 -0
- package/lib/theme/DocSidebarItem/styles.module.css +19 -0
- package/lib/theme/DocTagDocListPage/index.js +89 -0
- package/lib/theme/DocTagsListPage/index.js +44 -0
- package/lib/theme/DocVersionBadge/index.js +34 -0
- package/lib/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +39 -20
- package/lib/theme/EditThisPage/index.js +3 -1
- package/lib/theme/ErrorPageContent.js +43 -0
- package/lib/theme/Footer/index.js +16 -5
- package/lib/theme/Heading/index.js +17 -22
- package/lib/theme/Heading/styles.css +5 -6
- package/lib/theme/Heading/styles.module.css +9 -5
- package/lib/theme/IconArrow/index.js +2 -2
- package/lib/theme/IconClose/index.js +31 -0
- package/lib/theme/IconEdit/index.js +3 -3
- package/lib/theme/IconExternalLink/index.js +3 -3
- package/lib/theme/IconLanguage/index.js +3 -3
- package/lib/theme/IconMenu/index.js +3 -3
- package/lib/theme/LastUpdated/index.js +4 -2
- package/lib/theme/Layout/index.js +5 -1
- package/lib/theme/LayoutHead/index.js +22 -17
- package/lib/theme/LayoutProviders/index.js +11 -5
- package/lib/theme/Logo/index.js +16 -14
- package/lib/theme/MDXComponents/index.js +45 -4
- package/lib/theme/MDXComponents/styles.css +11 -0
- package/lib/theme/MDXPage/index.js +2 -1
- package/lib/theme/Navbar/index.js +162 -42
- package/lib/theme/Navbar/styles.module.css +10 -3
- package/lib/theme/NavbarItem/DefaultNavbarItem.js +27 -123
- package/lib/theme/NavbarItem/DocNavbarItem.js +7 -8
- package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +19 -12
- package/lib/theme/NavbarItem/DropdownNavbarItem.js +155 -0
- package/lib/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +6 -10
- package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/lib/theme/NavbarItem/index.js +31 -11
- package/lib/theme/{SearchMetadatas → SearchMetadata}/index.js +2 -2
- package/lib/theme/Seo/index.js +10 -7
- package/lib/theme/SkipToContent/index.js +12 -4
- package/lib/theme/SkipToContent/styles.module.css +1 -0
- package/lib/theme/TOC/index.js +9 -29
- package/lib/theme/TOC/styles.module.css +1 -1
- package/lib/theme/TOCCollapsible/index.js +53 -0
- package/lib/theme/TOCCollapsible/styles.module.css +50 -0
- package/lib/theme/TOCInline/index.js +7 -27
- package/lib/theme/TOCItems/index.js +78 -0
- package/lib/theme/Tabs/__tests__/index.test.js +123 -0
- package/lib/theme/Tabs/index.js +73 -50
- package/lib/theme/Tabs/styles.module.css +0 -13
- package/lib/theme/Tag/index.js +40 -0
- package/lib/theme/Tag/styles.module.css +70 -0
- package/lib/theme/TagsListByLetter/index.js +48 -0
- package/lib/theme/TagsListByLetter/styles.module.css +11 -0
- package/lib/theme/TagsListInline/index.js +44 -0
- package/lib/theme/TagsListInline/styles.module.css +15 -0
- package/lib/theme/ThemeProvider/index.js +8 -3
- package/lib/theme/ThemedImage/index.js +6 -7
- package/lib/theme/Toggle/index.js +41 -44
- package/lib/theme/Toggle/styles.module.css +91 -3
- package/lib/theme/UserPreferencesProvider/index.js +9 -12
- package/lib/theme/hooks/useHideableNavbar.js +14 -32
- package/lib/theme/hooks/useTabGroupChoice.js +2 -4
- package/lib/theme/hooks/useTheme.js +3 -5
- package/lib/theme/hooks/useWindowSize.js +33 -20
- package/lib/theme/prism-include-languages.js +4 -3
- package/lib/theme-classic.d.ts +806 -0
- package/lib/translations.js +4 -4
- package/lib/types.d.ts +0 -599
- package/lib/validateThemeConfig.js +230 -246
- package/lib-next/__tests__/validateThemeConfig.test.js +277 -3
- package/lib-next/admonitions.css +35 -0
- package/lib-next/deps.d.ts +13 -0
- package/lib-next/index.js +45 -13
- package/lib-next/prism-include-languages.js +0 -2
- package/lib-next/theme/AnnouncementBar/index.js +9 -18
- package/lib-next/theme/AnnouncementBar/styles.module.css +25 -30
- package/lib-next/theme/BackToTopButton/index.js +131 -0
- package/lib-next/theme/BackToTopButton/styles.module.css +42 -0
- package/lib-next/theme/BlogArchivePage/index.js +80 -0
- package/lib-next/theme/BlogLayout/index.js +40 -0
- package/lib-next/theme/BlogListPage/index.js +17 -25
- package/lib-next/theme/BlogPostAuthor/index.js +46 -0
- package/lib-next/theme/BlogPostAuthor/styles.module.css +12 -0
- package/lib-next/theme/BlogPostAuthors/index.js +34 -0
- package/lib-next/theme/BlogPostAuthors/styles.module.css +11 -0
- package/lib-next/theme/BlogPostItem/index.js +79 -86
- package/lib-next/theme/BlogPostPage/index.js +70 -35
- package/lib-next/theme/BlogSidebar/index.js +11 -13
- package/lib-next/theme/BlogSidebar/styles.module.css +2 -2
- package/lib-next/theme/BlogTagsListPage/index.js +14 -55
- package/lib-next/theme/BlogTagsPostsPage/index.js +29 -39
- package/lib-next/theme/CodeBlock/index.js +17 -149
- package/lib-next/theme/CodeBlock/styles.module.css +6 -9
- package/lib-next/theme/Details/index.js +20 -0
- package/lib-next/theme/Details/styles.module.css +13 -0
- package/lib-next/theme/DocCard/index.js +80 -0
- package/lib-next/theme/DocCard/styles.module.css +43 -0
- package/lib-next/theme/DocCardList/index.js +19 -0
- package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +49 -0
- package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
- package/lib-next/theme/DocItem/index.js +40 -56
- package/lib-next/theme/DocItem/styles.module.css +5 -9
- package/lib-next/theme/DocItemFooter/index.js +79 -0
- package/lib-next/theme/DocItemFooter/styles.module.css +18 -0
- package/lib-next/theme/DocPage/index.js +46 -47
- package/lib-next/theme/DocPage/styles.module.css +8 -23
- package/lib-next/theme/DocPaginator/index.js +7 -11
- package/lib-next/theme/DocSidebar/index.js +69 -295
- package/lib-next/theme/DocSidebar/styles.module.css +0 -18
- package/lib-next/theme/DocSidebarItem/index.js +217 -0
- package/lib-next/theme/DocSidebarItem/styles.module.css +19 -0
- package/lib-next/theme/DocTagDocListPage/index.js +89 -0
- package/lib-next/theme/DocTagsListPage/index.js +38 -0
- package/lib-next/theme/DocVersionBadge/index.js +27 -0
- package/lib-next/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +51 -36
- package/lib-next/theme/EditThisPage/index.js +6 -1
- package/lib-next/theme/ErrorPageContent.js +35 -0
- package/lib-next/theme/Footer/index.js +27 -5
- package/lib-next/theme/Heading/index.js +25 -29
- package/lib-next/theme/Heading/styles.css +5 -6
- package/lib-next/theme/Heading/styles.module.css +9 -5
- package/lib-next/theme/IconArrow/index.js +2 -2
- package/lib-next/theme/IconClose/index.js +23 -0
- package/lib-next/theme/IconEdit/index.js +2 -2
- package/lib-next/theme/IconExternalLink/index.js +2 -2
- package/lib-next/theme/IconLanguage/index.js +2 -2
- package/lib-next/theme/IconMenu/index.js +2 -2
- package/lib-next/theme/LastUpdated/index.js +3 -2
- package/lib-next/theme/Layout/index.js +3 -1
- package/lib-next/theme/LayoutHead/index.js +18 -23
- package/lib-next/theme/LayoutProviders/index.js +17 -6
- package/lib-next/theme/Logo/index.js +25 -21
- package/lib-next/theme/MDXComponents/index.js +34 -7
- package/lib-next/theme/MDXComponents/styles.css +11 -0
- package/lib-next/theme/MDXPage/index.js +10 -2
- package/lib-next/theme/Navbar/index.js +193 -56
- package/lib-next/theme/Navbar/styles.module.css +10 -3
- package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +45 -147
- package/lib-next/theme/NavbarItem/DocNavbarItem.js +7 -7
- package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
- package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +159 -0
- package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -12
- package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/lib-next/theme/NavbarItem/index.js +25 -12
- package/lib-next/theme/{SearchMetadatas → SearchMetadata}/index.js +1 -1
- package/lib-next/theme/Seo/index.js +11 -7
- package/lib-next/theme/SkipToContent/index.js +7 -8
- package/lib-next/theme/SkipToContent/styles.module.css +1 -0
- package/lib-next/theme/TOC/index.js +12 -36
- package/lib-next/theme/TOC/styles.module.css +1 -1
- package/lib-next/theme/TOCCollapsible/index.js +54 -0
- package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
- package/lib-next/theme/TOCInline/index.js +10 -28
- package/lib-next/theme/TOCItems/index.js +85 -0
- package/lib-next/theme/Tabs/__tests__/index.test.js +142 -0
- package/lib-next/theme/Tabs/index.js +91 -43
- package/lib-next/theme/Tabs/styles.module.css +0 -13
- package/lib-next/theme/Tag/index.js +27 -0
- package/lib-next/theme/Tag/styles.module.css +70 -0
- package/lib-next/theme/TagsListByLetter/index.js +42 -0
- package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
- package/lib-next/theme/TagsListInline/index.js +31 -0
- package/lib-next/theme/TagsListInline/styles.module.css +15 -0
- package/lib-next/theme/ThemeProvider/index.js +10 -7
- package/lib-next/theme/ThemedImage/index.js +7 -8
- package/lib-next/theme/Toggle/index.js +34 -37
- package/lib-next/theme/Toggle/styles.module.css +91 -3
- package/lib-next/theme/UserPreferencesProvider/index.js +9 -10
- package/lib-next/theme/hooks/useHideableNavbar.js +31 -44
- package/lib-next/theme/hooks/useTabGroupChoice.js +2 -4
- package/lib-next/theme/hooks/useTheme.js +4 -5
- package/lib-next/theme/hooks/useWindowSize.js +34 -20
- package/lib-next/theme/prism-include-languages.js +2 -1
- package/lib-next/theme-classic.d.ts +806 -0
- package/lib-next/translations.js +6 -10
- package/lib-next/types.d.ts +0 -599
- package/lib-next/validateThemeConfig.js +141 -114
- package/package.json +28 -25
- package/src/__tests__/validateThemeConfig.test.js +277 -3
- package/src/admonitions.css +35 -0
- package/src/deps.d.ts +13 -0
- package/src/index.ts +55 -22
- package/src/{prism-include-languages.js → prism-include-languages.ts} +0 -0
- package/src/theme/AnnouncementBar/index.tsx +10 -17
- package/src/theme/AnnouncementBar/styles.module.css +25 -30
- package/src/theme/BackToTopButton/index.tsx +142 -0
- package/src/theme/BackToTopButton/styles.module.css +42 -0
- package/src/theme/BlogArchivePage/index.tsx +91 -0
- package/src/theme/BlogLayout/index.tsx +44 -0
- package/src/theme/BlogListPage/index.tsx +18 -25
- package/src/theme/BlogPostAuthor/index.tsx +49 -0
- package/src/theme/BlogPostAuthor/styles.module.css +12 -0
- package/src/theme/BlogPostAuthors/index.tsx +39 -0
- package/src/theme/BlogPostAuthors/styles.module.css +11 -0
- package/src/theme/BlogPostItem/index.tsx +70 -80
- package/src/theme/BlogPostPage/index.tsx +72 -35
- package/src/theme/BlogSidebar/index.tsx +11 -13
- package/src/theme/BlogSidebar/styles.module.css +2 -2
- package/src/theme/BlogTagsListPage/index.tsx +14 -57
- package/src/theme/BlogTagsPostsPage/index.tsx +29 -39
- package/src/theme/CodeBlock/index.tsx +21 -151
- package/src/theme/CodeBlock/styles.module.css +6 -9
- package/src/theme/Details/index.tsx +24 -0
- package/src/theme/Details/styles.module.css +13 -0
- package/src/theme/DocCard/index.tsx +100 -0
- package/src/theme/DocCard/styles.module.css +43 -0
- package/src/theme/DocCardList/index.tsx +27 -0
- package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +53 -0
- package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
- package/src/theme/DocItem/index.tsx +43 -56
- package/src/theme/DocItem/styles.module.css +5 -9
- package/src/theme/DocItemFooter/index.tsx +91 -0
- package/src/theme/DocItemFooter/styles.module.css +18 -0
- package/src/theme/DocPage/index.tsx +44 -42
- package/src/theme/DocPage/styles.module.css +8 -23
- package/src/theme/DocPaginator/index.tsx +9 -13
- package/src/theme/DocSidebar/index.tsx +80 -307
- package/src/theme/DocSidebar/styles.module.css +0 -18
- package/src/theme/DocSidebarItem/index.tsx +242 -0
- package/src/theme/DocSidebarItem/styles.module.css +19 -0
- package/src/theme/DocTagDocListPage/index.tsx +89 -0
- package/src/theme/DocTagsListPage/index.tsx +41 -0
- package/src/theme/DocVersionBadge/index.tsx +30 -0
- package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +74 -44
- package/src/theme/EditThisPage/index.tsx +6 -1
- package/src/theme/ErrorPageContent.tsx +41 -0
- package/src/theme/Footer/index.tsx +30 -6
- package/src/theme/Heading/index.tsx +25 -31
- package/src/theme/Heading/styles.css +5 -6
- package/src/theme/Heading/styles.module.css +9 -5
- package/src/theme/IconArrow/index.tsx +2 -2
- package/src/theme/IconClose/index.tsx +26 -0
- package/src/theme/IconEdit/index.tsx +2 -2
- package/src/theme/IconExternalLink/index.tsx +2 -5
- package/src/theme/IconLanguage/index.tsx +2 -6
- package/src/theme/IconMenu/index.tsx +3 -3
- package/src/theme/LastUpdated/index.tsx +3 -2
- package/src/theme/Layout/index.tsx +3 -1
- package/src/theme/LayoutHead/index.tsx +18 -17
- package/src/theme/LayoutProviders/index.tsx +17 -6
- package/src/theme/Logo/index.tsx +21 -17
- package/src/theme/MDXComponents/index.tsx +39 -5
- package/src/theme/MDXComponents/styles.css +11 -0
- package/src/theme/MDXPage/index.tsx +10 -2
- package/src/theme/Navbar/index.tsx +203 -61
- package/src/theme/Navbar/styles.module.css +10 -3
- package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -154
- package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -16
- package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
- package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
- package/src/theme/NavbarItem/DropdownNavbarItem.tsx +181 -0
- package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -9
- package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/src/theme/NavbarItem/index.tsx +41 -16
- package/src/theme/{SearchMetadatas → SearchMetadata}/index.tsx +2 -2
- package/src/theme/Seo/index.tsx +7 -4
- package/src/theme/SkipToContent/index.tsx +7 -8
- package/src/theme/SkipToContent/styles.module.css +1 -0
- package/src/theme/TOC/index.tsx +12 -41
- package/src/theme/TOC/styles.module.css +1 -1
- package/src/theme/TOCCollapsible/index.tsx +58 -0
- package/src/theme/TOCCollapsible/styles.module.css +50 -0
- package/src/theme/TOCInline/index.tsx +13 -32
- package/src/theme/TOCItems/index.tsx +96 -0
- package/src/theme/Tabs/__tests__/index.test.tsx +129 -0
- package/src/theme/Tabs/index.tsx +93 -49
- package/src/theme/Tabs/styles.module.css +0 -13
- package/src/theme/Tag/index.tsx +31 -0
- package/src/theme/Tag/styles.module.css +70 -0
- package/src/theme/TagsListByLetter/index.tsx +45 -0
- package/src/theme/TagsListByLetter/styles.module.css +11 -0
- package/src/theme/TagsListInline/index.tsx +35 -0
- package/src/theme/TagsListInline/styles.module.css +15 -0
- package/src/theme/ThemeProvider/index.tsx +6 -2
- package/src/theme/ThemedImage/index.tsx +8 -8
- package/src/theme/Toggle/index.tsx +36 -43
- package/src/theme/Toggle/styles.module.css +91 -3
- package/src/theme/UserPreferencesProvider/index.tsx +9 -11
- package/src/theme/hooks/useHideableNavbar.ts +32 -45
- package/src/theme/hooks/useTabGroupChoice.ts +4 -4
- package/src/theme/hooks/useTheme.ts +4 -5
- package/src/theme/hooks/useWindowSize.ts +38 -20
- package/src/theme/prism-include-languages.ts +3 -2
- package/src/theme-classic.d.ts +806 -0
- package/src/translations.ts +8 -10
- package/src/types.d.ts +0 -599
- package/src/{validateThemeConfig.js → validateThemeConfig.ts} +151 -94
- package/tsconfig.json +1 -2
- package/codeTranslations/README.md +0 -20
- package/codeTranslations/ar.json +0 -57
- package/codeTranslations/base.json +0 -112
- package/codeTranslations/bn.json +0 -56
- package/codeTranslations/da.json +0 -57
- package/codeTranslations/de.json +0 -57
- package/codeTranslations/es.json +0 -57
- package/codeTranslations/fa.json +0 -57
- package/codeTranslations/fil.json +0 -57
- package/codeTranslations/fr.json +0 -57
- package/codeTranslations/he.json +0 -57
- package/codeTranslations/hi.json +0 -57
- package/codeTranslations/ja.json +0 -57
- package/codeTranslations/ko.json +0 -57
- package/codeTranslations/pl.json +0 -57
- package/codeTranslations/pt-BR.json +0 -57
- package/codeTranslations/pt-PT.json +0 -57
- package/codeTranslations/ru.json +0 -57
- package/codeTranslations/tr.json +0 -57
- package/codeTranslations/vi.json +0 -57
- package/codeTranslations/zh-Hans.json +0 -57
- package/codeTranslations/zh-Hant.json +0 -57
- package/lib/theme/Toggle/styles.css +0 -103
- package/lib/theme/hooks/useAnnouncementBar.js +0 -63
- package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
- package/lib/theme/hooks/useScrollPosition.js +0 -49
- package/lib/theme/hooks/useTOCHighlight.js +0 -87
- package/lib-next/theme/Toggle/styles.css +0 -103
- package/lib-next/theme/hooks/useAnnouncementBar.js +0 -49
- package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
- package/lib-next/theme/hooks/useScrollPosition.js +0 -38
- package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
- package/src/theme/Toggle/styles.css +0 -103
- package/src/theme/hooks/useAnnouncementBar.ts +0 -58
- package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
- package/src/theme/hooks/useScrollPosition.ts +0 -45
- package/src/theme/hooks/useTOCHighlight.ts +0 -98
- package/update-code-translations.js +0 -239
- package/update-code-translations.test.js +0 -33
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.NavLink = NavLink;
|
|
6
7
|
exports.default = void 0;
|
|
7
8
|
|
|
8
|
-
var _react =
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
10
|
|
|
10
11
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
11
12
|
|
|
@@ -13,19 +14,15 @@ var _Link = _interopRequireDefault(require("@docusaurus/Link"));
|
|
|
13
14
|
|
|
14
15
|
var _useBaseUrl = _interopRequireDefault(require("@docusaurus/useBaseUrl"));
|
|
15
16
|
|
|
16
|
-
var _router = require("@docusaurus/router");
|
|
17
|
-
|
|
18
|
-
var _themeCommon = require("@docusaurus/theme-common");
|
|
19
|
-
|
|
20
17
|
var _IconExternalLink = _interopRequireDefault(require("@theme/IconExternalLink"));
|
|
21
18
|
|
|
22
19
|
var _isInternalUrl = _interopRequireDefault(require("@docusaurus/isInternalUrl"));
|
|
23
20
|
|
|
24
|
-
|
|
21
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
25
22
|
|
|
26
|
-
|
|
23
|
+
var _index = require("./index");
|
|
27
24
|
|
|
28
|
-
function
|
|
25
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
26
|
|
|
30
27
|
/**
|
|
31
28
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
@@ -41,10 +38,12 @@ function NavLink({
|
|
|
41
38
|
to,
|
|
42
39
|
href,
|
|
43
40
|
label,
|
|
44
|
-
activeClassName = '
|
|
41
|
+
activeClassName = '',
|
|
45
42
|
prependBaseUrlToHref,
|
|
46
43
|
...props
|
|
47
44
|
}) {
|
|
45
|
+
var _props$className;
|
|
46
|
+
|
|
48
47
|
// TODO all this seems hacky
|
|
49
48
|
// {to: 'version'} should probably be forbidden, in favor of {to: '/version'}
|
|
50
49
|
const toUrl = (0, _useBaseUrl.default)(to);
|
|
@@ -58,10 +57,10 @@ function NavLink({
|
|
|
58
57
|
href: prependBaseUrlToHref ? normalizedHref : href
|
|
59
58
|
} : {
|
|
60
59
|
isNavLink: true,
|
|
61
|
-
activeClassName,
|
|
60
|
+
activeClassName: !((_props$className = props.className) !== null && _props$className !== void 0 && _props$className.includes(activeClassName)) ? activeClassName : '',
|
|
62
61
|
to: toUrl,
|
|
63
62
|
...(activeBasePath || activeBaseRegex ? {
|
|
64
|
-
isActive: (_match, location) => activeBaseRegex ?
|
|
63
|
+
isActive: (_match, location) => activeBaseRegex ? (0, _themeCommon.isRegexpStringMatch)(activeBaseRegex, location.pathname) : location.pathname.startsWith(activeBaseUrl)
|
|
65
64
|
} : null)
|
|
66
65
|
}} {...props}>
|
|
67
66
|
{isExternalLink ? <span>
|
|
@@ -74,135 +73,40 @@ function NavLink({
|
|
|
74
73
|
</_Link.default>;
|
|
75
74
|
}
|
|
76
75
|
|
|
77
|
-
function
|
|
78
|
-
items,
|
|
79
|
-
position,
|
|
76
|
+
function DefaultNavbarItemDesktop({
|
|
80
77
|
className,
|
|
78
|
+
isDropdownItem = false,
|
|
81
79
|
...props
|
|
82
80
|
}) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
const [showDropdown, setShowDropdown] = (0, _react.useState)(false);
|
|
88
|
-
(0, _react.useEffect)(() => {
|
|
89
|
-
const handleClickOutside = event => {
|
|
90
|
-
if (!dropdownRef.current || dropdownRef.current.contains(event.target)) {
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
setShowDropdown(false);
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
document.addEventListener('mousedown', handleClickOutside);
|
|
98
|
-
document.addEventListener('touchstart', handleClickOutside);
|
|
99
|
-
return () => {
|
|
100
|
-
document.removeEventListener('mousedown', handleClickOutside);
|
|
101
|
-
document.removeEventListener('touchstart', handleClickOutside);
|
|
102
|
-
};
|
|
103
|
-
}, [dropdownRef]);
|
|
104
|
-
|
|
105
|
-
const navLinkClassNames = (extraClassName, isDropdownItem = false) => (0, _clsx.default)({
|
|
106
|
-
'navbar__item navbar__link': !isDropdownItem,
|
|
107
|
-
dropdown__link: isDropdownItem
|
|
108
|
-
}, extraClassName);
|
|
109
|
-
|
|
110
|
-
if (!items) {
|
|
111
|
-
return <NavLink className={navLinkClassNames(className)} {...props} />;
|
|
81
|
+
const element = <NavLink className={(0, _clsx.default)(isDropdownItem ? 'dropdown__link' : 'navbar__item navbar__link', className)} {...props} />;
|
|
82
|
+
|
|
83
|
+
if (isDropdownItem) {
|
|
84
|
+
return <li>{element}</li>;
|
|
112
85
|
}
|
|
113
86
|
|
|
114
|
-
return
|
|
115
|
-
'dropdown--left': position === 'left',
|
|
116
|
-
'dropdown--right': position === 'right',
|
|
117
|
-
'dropdown--show': showDropdown
|
|
118
|
-
})}>
|
|
119
|
-
<NavLink className={navLinkClassNames(className)} {...props} onClick={props.to ? undefined : e => e.preventDefault()} onKeyDown={e => {
|
|
120
|
-
if (e.key === 'Enter') {
|
|
121
|
-
e.preventDefault();
|
|
122
|
-
setShowDropdown(!showDropdown);
|
|
123
|
-
}
|
|
124
|
-
}}>
|
|
125
|
-
{(_props$children = props.children) !== null && _props$children !== void 0 ? _props$children : props.label}
|
|
126
|
-
</NavLink>
|
|
127
|
-
<ul ref={dropdownMenuRef} className="dropdown__menu">
|
|
128
|
-
{items.map(({
|
|
129
|
-
className: childItemClassName,
|
|
130
|
-
...childItemProps
|
|
131
|
-
}, i) => <li key={i}>
|
|
132
|
-
<NavLink onKeyDown={e => {
|
|
133
|
-
if (i === items.length - 1 && e.key === 'Tab') {
|
|
134
|
-
e.preventDefault();
|
|
135
|
-
setShowDropdown(false);
|
|
136
|
-
const nextNavbarItem = dropdownRef.current.nextElementSibling;
|
|
137
|
-
|
|
138
|
-
if (nextNavbarItem) {
|
|
139
|
-
nextNavbarItem.focus();
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}} activeClassName={dropdownLinkActiveClass} className={navLinkClassNames(childItemClassName, true)} {...childItemProps} />
|
|
143
|
-
</li>)}
|
|
144
|
-
</ul>
|
|
145
|
-
</div>;
|
|
87
|
+
return element;
|
|
146
88
|
}
|
|
147
89
|
|
|
148
|
-
function
|
|
149
|
-
items,
|
|
90
|
+
function DefaultNavbarItemMobile({
|
|
150
91
|
className,
|
|
151
|
-
|
|
152
|
-
// Need to destructure position from props so that it doesn't get passed on.
|
|
92
|
+
isDropdownItem: _isDropdownItem,
|
|
153
93
|
...props
|
|
154
94
|
}) {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
const menuListRef = (0, _react.useRef)(null);
|
|
158
|
-
const {
|
|
159
|
-
pathname
|
|
160
|
-
} = (0, _router.useLocation)();
|
|
161
|
-
const [collapsed, setCollapsed] = (0, _react.useState)(() => {
|
|
162
|
-
var _items$some;
|
|
163
|
-
|
|
164
|
-
return (_items$some = !(items !== null && items !== void 0 && items.some(item => (0, _themeCommon.isSamePath)(item.to, pathname)))) !== null && _items$some !== void 0 ? _items$some : true;
|
|
165
|
-
});
|
|
166
|
-
|
|
167
|
-
const navLinkClassNames = (extraClassName, isSubList = false) => (0, _clsx.default)('menu__link', {
|
|
168
|
-
'menu__link--sublist': isSubList
|
|
169
|
-
}, extraClassName);
|
|
170
|
-
|
|
171
|
-
if (!items) {
|
|
172
|
-
return <li className="menu__list-item">
|
|
173
|
-
<NavLink className={navLinkClassNames(className)} {...props} />
|
|
174
|
-
</li>;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
const menuListHeight = (_menuListRef$current = menuListRef.current) !== null && _menuListRef$current !== void 0 && _menuListRef$current.scrollHeight ? `${(_menuListRef$current2 = menuListRef.current) === null || _menuListRef$current2 === void 0 ? void 0 : _menuListRef$current2.scrollHeight}px` : undefined;
|
|
178
|
-
return <li className={(0, _clsx.default)('menu__list-item', {
|
|
179
|
-
'menu__list-item--collapsed': collapsed
|
|
180
|
-
})}>
|
|
181
|
-
<NavLink role="button" className={navLinkClassNames(className, true)} {...props} onClick={e => {
|
|
182
|
-
e.preventDefault();
|
|
183
|
-
setCollapsed(state => !state);
|
|
184
|
-
}}>
|
|
185
|
-
{(_props$children2 = props.children) !== null && _props$children2 !== void 0 ? _props$children2 : props.label}
|
|
186
|
-
</NavLink>
|
|
187
|
-
<ul className="menu__list" ref={menuListRef} style={{
|
|
188
|
-
height: !collapsed ? menuListHeight : undefined
|
|
189
|
-
}}>
|
|
190
|
-
{items.map(({
|
|
191
|
-
className: childItemClassName,
|
|
192
|
-
...childItemProps
|
|
193
|
-
}, i) => <li className="menu__list-item" key={i}>
|
|
194
|
-
<NavLink activeClassName="menu__link--active" className={navLinkClassNames(childItemClassName)} {...childItemProps} onClick={props.onClick} />
|
|
195
|
-
</li>)}
|
|
196
|
-
</ul>
|
|
95
|
+
return <li className="menu__list-item">
|
|
96
|
+
<NavLink className={(0, _clsx.default)('menu__link', className)} {...props} />
|
|
197
97
|
</li>;
|
|
198
98
|
}
|
|
199
99
|
|
|
200
100
|
function DefaultNavbarItem({
|
|
201
101
|
mobile = false,
|
|
102
|
+
position: _position,
|
|
103
|
+
// Need to destructure position from props so that it doesn't get passed on.
|
|
202
104
|
...props
|
|
203
105
|
}) {
|
|
204
|
-
|
|
205
|
-
|
|
106
|
+
var _props$activeClassNam;
|
|
107
|
+
|
|
108
|
+
const Comp = mobile ? DefaultNavbarItemMobile : DefaultNavbarItemDesktop;
|
|
109
|
+
return <Comp {...props} activeClassName={(_props$activeClassNam = props.activeClassName) !== null && _props$activeClassNam !== void 0 ? _props$activeClassNam : (0, _index.getInfimaActiveClassName)(mobile)} />;
|
|
206
110
|
}
|
|
207
111
|
|
|
208
112
|
var _default = DefaultNavbarItem;
|
|
@@ -13,9 +13,9 @@ var _useDocs = require("@theme/hooks/useDocs");
|
|
|
13
13
|
|
|
14
14
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _index = require("./index");
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
19
19
|
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
21
|
|
|
@@ -26,8 +26,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
26
26
|
* LICENSE file in the root directory of this source tree.
|
|
27
27
|
*/
|
|
28
28
|
function getDocInVersions(versions, docId) {
|
|
29
|
-
|
|
30
|
-
const allDocs = [].concat(...versions.map(version => version.docs));
|
|
29
|
+
const allDocs = versions.flatMap(version => version.docs);
|
|
31
30
|
const doc = allDocs.find(versionDoc => versionDoc.id === docId);
|
|
32
31
|
|
|
33
32
|
if (!doc) {
|
|
@@ -41,7 +40,6 @@ Available doc ids are:\n- ${docIds}`);
|
|
|
41
40
|
|
|
42
41
|
function DocNavbarItem({
|
|
43
42
|
docId,
|
|
44
|
-
activeSidebarClassName,
|
|
45
43
|
label: staticLabel,
|
|
46
44
|
docsPluginId,
|
|
47
45
|
...props
|
|
@@ -55,9 +53,10 @@ function DocNavbarItem({
|
|
|
55
53
|
} = (0, _themeCommon.useDocsPreferredVersion)(docsPluginId);
|
|
56
54
|
const latestVersion = (0, _useDocs.useLatestVersion)(docsPluginId); // Versions used to look for the doc to link to, ordered + no duplicate
|
|
57
55
|
|
|
58
|
-
const versions = (0,
|
|
56
|
+
const versions = (0, _themeCommon.uniq)([activeVersion, preferredVersion, latestVersion].filter(Boolean));
|
|
59
57
|
const doc = getDocInVersions(versions, docId);
|
|
58
|
+
const activeDocInfimaClassName = (0, _index.getInfimaActiveClassName)(props.mobile);
|
|
60
59
|
return <_DefaultNavbarItem.default exact {...props} className={(0, _clsx.default)(props.className, {
|
|
61
|
-
[
|
|
62
|
-
})} label={staticLabel !== null && staticLabel !== void 0 ? staticLabel : doc.id} to={doc.path} />;
|
|
60
|
+
[activeDocInfimaClassName]: (activeDoc === null || activeDoc === void 0 ? void 0 : activeDoc.sidebar) && activeDoc.sidebar === doc.sidebar
|
|
61
|
+
})} activeClassName={activeDocInfimaClassName} label={staticLabel !== null && staticLabel !== void 0 ? staticLabel : doc.id} to={doc.path} />;
|
|
63
62
|
}
|
|
@@ -9,10 +9,14 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _DefaultNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/DefaultNavbarItem"));
|
|
11
11
|
|
|
12
|
+
var _DropdownNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/DropdownNavbarItem"));
|
|
13
|
+
|
|
12
14
|
var _useDocs = require("@theme/hooks/useDocs");
|
|
13
15
|
|
|
14
16
|
var _themeCommon = require("@docusaurus/theme-common");
|
|
15
17
|
|
|
18
|
+
var _Translate = require("@docusaurus/Translate");
|
|
19
|
+
|
|
16
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
21
|
|
|
18
22
|
/**
|
|
@@ -56,21 +60,24 @@ function DocsVersionDropdownNavbarItem({
|
|
|
56
60
|
}
|
|
57
61
|
};
|
|
58
62
|
});
|
|
59
|
-
|
|
60
|
-
// If we build the site with a single docs version (onlyIncludeVersions: ['1.0.0'])
|
|
61
|
-
// We'd rather render a button instead of a dropdown
|
|
62
|
-
|
|
63
|
-
if (items.length <= 1) {
|
|
64
|
-
return undefined;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
return items;
|
|
63
|
+
return [...dropdownItemsBefore, ...versionLinks, ...dropdownItemsAfter];
|
|
68
64
|
}
|
|
69
65
|
|
|
70
66
|
const items = getItems();
|
|
71
67
|
const dropdownVersion = (_ref = (_activeDocContext$act = activeDocContext.activeVersion) !== null && _activeDocContext$act !== void 0 ? _activeDocContext$act : preferredVersion) !== null && _ref !== void 0 ? _ref : latestVersion; // Mobile dropdown is handled a bit differently
|
|
72
68
|
|
|
73
|
-
const dropdownLabel = mobile && items ?
|
|
74
|
-
|
|
75
|
-
|
|
69
|
+
const dropdownLabel = mobile && items ? (0, _Translate.translate)({
|
|
70
|
+
id: 'theme.navbar.mobileVersionsDropdown.label',
|
|
71
|
+
message: 'Versions',
|
|
72
|
+
description: 'The label for the navbar versions dropdown on mobile view'
|
|
73
|
+
}) : dropdownVersion.label;
|
|
74
|
+
const dropdownTo = mobile && items ? undefined : getVersionMainDoc(dropdownVersion).path; // We don't want to render a version dropdown with 0 or 1 item
|
|
75
|
+
// If we build the site with a single docs version (onlyIncludeVersions: ['1.0.0'])
|
|
76
|
+
// We'd rather render a button instead of a dropdown
|
|
77
|
+
|
|
78
|
+
if (items.length <= 1) {
|
|
79
|
+
return <_DefaultNavbarItem.default {...props} mobile={mobile} label={dropdownLabel} to={dropdownTo} isActive={dropdownActiveClassDisabled ? () => false : undefined} />;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return <_DropdownNavbarItem.default {...props} mobile={mobile} label={dropdownLabel} to={dropdownTo} items={items} isActive={dropdownActiveClassDisabled ? () => false : undefined} />;
|
|
76
83
|
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
11
|
+
|
|
12
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
13
|
+
|
|
14
|
+
var _DefaultNavbarItem = require("@theme/NavbarItem/DefaultNavbarItem");
|
|
15
|
+
|
|
16
|
+
var _NavbarItem = _interopRequireDefault(require("@theme/NavbarItem"));
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
|
+
|
|
22
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
26
|
+
*
|
|
27
|
+
* This source code is licensed under the MIT license found in the
|
|
28
|
+
* LICENSE file in the root directory of this source tree.
|
|
29
|
+
*/
|
|
30
|
+
const dropdownLinkActiveClass = 'dropdown__link--active';
|
|
31
|
+
|
|
32
|
+
function isItemActive(item, localPathname) {
|
|
33
|
+
if ((0, _themeCommon.isSamePath)(item.to, localPathname)) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
if ((0, _themeCommon.isRegexpStringMatch)(item.activeBaseRegex, localPathname)) {
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
if (item.activeBasePath && localPathname.startsWith(item.activeBasePath)) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function containsActiveItems(items, localPathname) {
|
|
49
|
+
return items.some(item => isItemActive(item, localPathname));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function DropdownNavbarItemDesktop({
|
|
53
|
+
items,
|
|
54
|
+
position,
|
|
55
|
+
className,
|
|
56
|
+
...props
|
|
57
|
+
}) {
|
|
58
|
+
var _props$children;
|
|
59
|
+
|
|
60
|
+
const dropdownRef = (0, _react.useRef)(null);
|
|
61
|
+
const dropdownMenuRef = (0, _react.useRef)(null);
|
|
62
|
+
const [showDropdown, setShowDropdown] = (0, _react.useState)(false);
|
|
63
|
+
(0, _react.useEffect)(() => {
|
|
64
|
+
const handleClickOutside = event => {
|
|
65
|
+
if (!dropdownRef.current || dropdownRef.current.contains(event.target)) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
setShowDropdown(false);
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
document.addEventListener('mousedown', handleClickOutside);
|
|
73
|
+
document.addEventListener('touchstart', handleClickOutside);
|
|
74
|
+
return () => {
|
|
75
|
+
document.removeEventListener('mousedown', handleClickOutside);
|
|
76
|
+
document.removeEventListener('touchstart', handleClickOutside);
|
|
77
|
+
};
|
|
78
|
+
}, [dropdownRef]);
|
|
79
|
+
return <div ref={dropdownRef} className={(0, _clsx.default)('navbar__item', 'dropdown', 'dropdown--hoverable', {
|
|
80
|
+
'dropdown--right': position === 'right',
|
|
81
|
+
'dropdown--show': showDropdown
|
|
82
|
+
})}>
|
|
83
|
+
<_DefaultNavbarItem.NavLink href={props.to ? undefined : '#'} className={(0, _clsx.default)('navbar__link', className)} {...props} onClick={props.to ? undefined : e => e.preventDefault()} onKeyDown={e => {
|
|
84
|
+
if (e.key === 'Enter') {
|
|
85
|
+
e.preventDefault();
|
|
86
|
+
setShowDropdown(!showDropdown);
|
|
87
|
+
}
|
|
88
|
+
}}>
|
|
89
|
+
{(_props$children = props.children) !== null && _props$children !== void 0 ? _props$children : props.label}
|
|
90
|
+
</_DefaultNavbarItem.NavLink>
|
|
91
|
+
<ul ref={dropdownMenuRef} className="dropdown__menu">
|
|
92
|
+
{items.map((childItemProps, i) => <_NavbarItem.default isDropdownItem onKeyDown={e => {
|
|
93
|
+
if (i === items.length - 1 && e.key === 'Tab') {
|
|
94
|
+
e.preventDefault();
|
|
95
|
+
setShowDropdown(false);
|
|
96
|
+
const nextNavbarItem = dropdownRef.current.nextElementSibling;
|
|
97
|
+
|
|
98
|
+
if (nextNavbarItem) {
|
|
99
|
+
nextNavbarItem.focus();
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}} activeClassName={dropdownLinkActiveClass} {...childItemProps} key={i} />)}
|
|
103
|
+
</ul>
|
|
104
|
+
</div>;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function DropdownNavbarItemMobile({
|
|
108
|
+
items,
|
|
109
|
+
className,
|
|
110
|
+
position: _position,
|
|
111
|
+
// Need to destructure position from props so that it doesn't get passed on.
|
|
112
|
+
...props
|
|
113
|
+
}) {
|
|
114
|
+
var _props$children2;
|
|
115
|
+
|
|
116
|
+
const localPathname = (0, _themeCommon.useLocalPathname)();
|
|
117
|
+
const containsActive = containsActiveItems(items, localPathname);
|
|
118
|
+
const {
|
|
119
|
+
collapsed,
|
|
120
|
+
toggleCollapsed,
|
|
121
|
+
setCollapsed
|
|
122
|
+
} = (0, _themeCommon.useCollapsible)({
|
|
123
|
+
initialState: () => !containsActive
|
|
124
|
+
}); // Expand/collapse if any item active after a navigation
|
|
125
|
+
|
|
126
|
+
(0, _react.useEffect)(() => {
|
|
127
|
+
if (containsActive) {
|
|
128
|
+
setCollapsed(!containsActive);
|
|
129
|
+
}
|
|
130
|
+
}, [localPathname, containsActive, setCollapsed]);
|
|
131
|
+
return <li className={(0, _clsx.default)('menu__list-item', {
|
|
132
|
+
'menu__list-item--collapsed': collapsed
|
|
133
|
+
})}>
|
|
134
|
+
<_DefaultNavbarItem.NavLink role="button" className={(0, _clsx.default)('menu__link menu__link--sublist', className)} {...props} onClick={e => {
|
|
135
|
+
e.preventDefault();
|
|
136
|
+
toggleCollapsed();
|
|
137
|
+
}}>
|
|
138
|
+
{(_props$children2 = props.children) !== null && _props$children2 !== void 0 ? _props$children2 : props.label}
|
|
139
|
+
</_DefaultNavbarItem.NavLink>
|
|
140
|
+
<_themeCommon.Collapsible lazy as="ul" className="menu__list" collapsed={collapsed}>
|
|
141
|
+
{items.map((childItemProps, i) => <_NavbarItem.default mobile isDropdownItem onClick={props.onClick} activeClassName="menu__link--active" {...childItemProps} key={i} />)}
|
|
142
|
+
</_themeCommon.Collapsible>
|
|
143
|
+
</li>;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
function DropdownNavbarItem({
|
|
147
|
+
mobile = false,
|
|
148
|
+
...props
|
|
149
|
+
}) {
|
|
150
|
+
const Comp = mobile ? DropdownNavbarItemMobile : DropdownNavbarItemDesktop;
|
|
151
|
+
return <Comp {...props} />;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
var _default = DropdownNavbarItem;
|
|
155
|
+
exports.default = _default;
|
package/lib/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js}
RENAMED
|
@@ -7,7 +7,7 @@ exports.default = LocaleDropdownNavbarItem;
|
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _DropdownNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/DropdownNavbarItem"));
|
|
11
11
|
|
|
12
12
|
var _IconLanguage = _interopRequireDefault(require("@theme/IconLanguage"));
|
|
13
13
|
|
|
@@ -15,6 +15,8 @@ var _useDocusaurusContext = _interopRequireDefault(require("@docusaurus/useDocus
|
|
|
15
15
|
|
|
16
16
|
var _themeCommon = require("@docusaurus/theme-common");
|
|
17
17
|
|
|
18
|
+
var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
|
|
19
|
+
|
|
18
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
21
|
|
|
20
22
|
/**
|
|
@@ -53,20 +55,14 @@ function LocaleDropdownNavbarItem({
|
|
|
53
55
|
to,
|
|
54
56
|
target: '_self',
|
|
55
57
|
autoAddBaseUrl: false,
|
|
56
|
-
className: locale === currentLocale ? 'dropdown__link--active' : ''
|
|
57
|
-
style: {
|
|
58
|
-
textTransform: 'capitalize'
|
|
59
|
-
}
|
|
58
|
+
className: locale === currentLocale ? 'dropdown__link--active' : ''
|
|
60
59
|
};
|
|
61
60
|
});
|
|
62
61
|
const items = [...dropdownItemsBefore, ...localeItems, ...dropdownItemsAfter]; // Mobile is handled a bit differently
|
|
63
62
|
|
|
64
63
|
const dropdownLabel = mobile ? 'Languages' : getLocaleLabel(currentLocale);
|
|
65
|
-
return <
|
|
66
|
-
<_IconLanguage.default
|
|
67
|
-
verticalAlign: 'text-bottom',
|
|
68
|
-
marginRight: 5
|
|
69
|
-
}} />
|
|
64
|
+
return <_DropdownNavbarItem.default {...props} mobile={mobile} label={<span>
|
|
65
|
+
<_IconLanguage.default className={_stylesModule.default.iconLanguage} />
|
|
70
66
|
<span>{dropdownLabel}</span>
|
|
71
67
|
</span>} items={items} />;
|
|
72
68
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
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
|
+
.iconLanguage {
|
|
9
|
+
vertical-align: text-bottom;
|
|
10
|
+
margin-right: 5px;
|
|
11
|
+
}
|
|
@@ -4,11 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = NavbarItem;
|
|
7
|
+
exports.getInfimaActiveClassName = void 0;
|
|
7
8
|
|
|
8
9
|
var _react = _interopRequireDefault(require("react"));
|
|
9
10
|
|
|
10
11
|
var _DefaultNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/DefaultNavbarItem"));
|
|
11
12
|
|
|
13
|
+
var _DropdownNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/DropdownNavbarItem"));
|
|
14
|
+
|
|
12
15
|
var _LocaleDropdownNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/LocaleDropdownNavbarItem"));
|
|
13
16
|
|
|
14
17
|
var _SearchNavbarItem = _interopRequireDefault(require("@theme/NavbarItem/SearchNavbarItem"));
|
|
@@ -25,30 +28,47 @@ const NavbarItemComponents = {
|
|
|
25
28
|
default: () => _DefaultNavbarItem.default,
|
|
26
29
|
localeDropdown: () => _LocaleDropdownNavbarItem.default,
|
|
27
30
|
search: () => _SearchNavbarItem.default,
|
|
31
|
+
dropdown: () => _DropdownNavbarItem.default,
|
|
28
32
|
// Need to lazy load these items as we don't know for sure the docs plugin is loaded
|
|
29
33
|
// See https://github.com/facebook/docusaurus/issues/3360
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
require('@theme/NavbarItem/DocsVersionDropdownNavbarItem').default,
|
|
34
|
-
doc: () =>
|
|
35
|
-
|
|
34
|
+
|
|
35
|
+
/* eslint-disable @typescript-eslint/no-var-requires, global-require */
|
|
36
|
+
docsVersion: () => require('@theme/NavbarItem/DocsVersionNavbarItem').default,
|
|
37
|
+
docsVersionDropdown: () => require('@theme/NavbarItem/DocsVersionDropdownNavbarItem').default,
|
|
38
|
+
doc: () => require('@theme/NavbarItem/DocNavbarItem').default
|
|
39
|
+
/* eslint-enable @typescript-eslint/no-var-requires, global-require */
|
|
40
|
+
|
|
36
41
|
};
|
|
37
42
|
|
|
38
|
-
const getNavbarItemComponent =
|
|
39
|
-
const
|
|
43
|
+
const getNavbarItemComponent = type => {
|
|
44
|
+
const navbarItemComponentFn = NavbarItemComponents[type];
|
|
40
45
|
|
|
41
|
-
if (!
|
|
46
|
+
if (!navbarItemComponentFn) {
|
|
42
47
|
throw new Error(`No NavbarItem component found for type "${type}".`);
|
|
43
48
|
}
|
|
44
49
|
|
|
45
|
-
return
|
|
50
|
+
return navbarItemComponentFn();
|
|
46
51
|
};
|
|
47
52
|
|
|
53
|
+
function getComponentType(type, isDropdown) {
|
|
54
|
+
// Backward compatibility: navbar item with no type set
|
|
55
|
+
// but containing dropdown items should use the type "dropdown"
|
|
56
|
+
if (!type || type === 'default') {
|
|
57
|
+
return isDropdown ? 'dropdown' : 'default';
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return type;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const getInfimaActiveClassName = mobile => mobile ? 'menu__link--active' : 'navbar__link--active';
|
|
64
|
+
|
|
65
|
+
exports.getInfimaActiveClassName = getInfimaActiveClassName;
|
|
66
|
+
|
|
48
67
|
function NavbarItem({
|
|
49
68
|
type,
|
|
50
69
|
...props
|
|
51
70
|
}) {
|
|
52
|
-
const
|
|
71
|
+
const componentType = getComponentType(type, props.items !== undefined);
|
|
72
|
+
const NavbarItemComponent = getNavbarItemComponent(componentType);
|
|
53
73
|
return <NavbarItemComponent {...props} />;
|
|
54
74
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = SearchMetadata;
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
@@ -20,7 +20,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
20
20
|
// Note: we don't couple this to Algolia/DocSearch on purpose
|
|
21
21
|
// We may want to support other search engine plugins too
|
|
22
22
|
// Search plugins should swizzle/override this comp to add their behavior
|
|
23
|
-
function
|
|
23
|
+
function SearchMetadata({
|
|
24
24
|
locale,
|
|
25
25
|
version,
|
|
26
26
|
tag
|
package/lib/theme/Seo/index.js
CHANGED
|
@@ -11,7 +11,7 @@ var _Head = _interopRequireDefault(require("@docusaurus/Head"));
|
|
|
11
11
|
|
|
12
12
|
var _themeCommon = require("@docusaurus/theme-common");
|
|
13
13
|
|
|
14
|
-
var _useBaseUrl =
|
|
14
|
+
var _useBaseUrl = require("@docusaurus/useBaseUrl");
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
@@ -25,15 +25,16 @@ function Seo({
|
|
|
25
25
|
title,
|
|
26
26
|
description,
|
|
27
27
|
keywords,
|
|
28
|
-
image
|
|
28
|
+
image,
|
|
29
|
+
children
|
|
29
30
|
}) {
|
|
30
|
-
const {
|
|
31
|
-
image: defaultImage
|
|
32
|
-
} = (0, _themeCommon.useThemeConfig)();
|
|
33
31
|
const pageTitle = (0, _themeCommon.useTitleFormatter)(title);
|
|
34
|
-
const
|
|
32
|
+
const {
|
|
33
|
+
withBaseUrl
|
|
34
|
+
} = (0, _useBaseUrl.useBaseUrlUtils)();
|
|
35
|
+
const pageImage = image ? withBaseUrl(image, {
|
|
35
36
|
absolute: true
|
|
36
|
-
});
|
|
37
|
+
}) : undefined;
|
|
37
38
|
return <_Head.default>
|
|
38
39
|
{title && <title>{pageTitle}</title>}
|
|
39
40
|
{title && <meta property="og:title" content={pageTitle} />}
|
|
@@ -45,5 +46,7 @@ function Seo({
|
|
|
45
46
|
|
|
46
47
|
{pageImage && <meta property="og:image" content={pageImage} />}
|
|
47
48
|
{pageImage && <meta name="twitter:image" content={pageImage} />}
|
|
49
|
+
|
|
50
|
+
{children}
|
|
48
51
|
</_Head.default>;
|
|
49
52
|
}
|