@docusaurus/theme-classic 2.0.0-beta.8bda3b2db → 2.0.0-beta.9
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/codeTranslations/ar.json +12 -7
- package/codeTranslations/base.json +17 -7
- package/codeTranslations/bn.json +11 -5
- package/codeTranslations/cs.json +62 -0
- package/codeTranslations/da.json +8 -3
- package/codeTranslations/de.json +8 -3
- package/codeTranslations/es.json +15 -10
- package/codeTranslations/fa.json +31 -26
- package/codeTranslations/fil.json +8 -3
- package/codeTranslations/fr.json +8 -3
- package/codeTranslations/he.json +9 -4
- package/codeTranslations/hi.json +9 -4
- package/codeTranslations/ja.json +8 -3
- package/codeTranslations/ko.json +8 -3
- package/codeTranslations/pl.json +8 -3
- package/codeTranslations/pt-BR.json +16 -11
- package/codeTranslations/pt-PT.json +8 -3
- package/codeTranslations/ru.json +10 -5
- package/codeTranslations/sr.json +62 -0
- package/codeTranslations/tr.json +9 -4
- package/codeTranslations/vi.json +10 -5
- package/codeTranslations/zh-Hans.json +9 -4
- package/codeTranslations/zh-Hant.json +9 -4
- package/lib/__tests__/validateThemeConfig.test.js +277 -3
- package/lib/admonitions.css +35 -0
- package/lib/index.js +31 -8
- 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/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 +45 -41
- 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/DocItem/index.js +29 -45
- 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 +25 -49
- package/lib/theme/DocPage/styles.module.css +8 -23
- package/lib/theme/DocSidebar/index.js +45 -227
- package/lib/theme/DocSidebar/styles.module.css +0 -18
- package/lib/theme/DocSidebarItem/index.js +177 -0
- package/lib/theme/DocSidebarItem/styles.module.css +15 -0
- package/lib/theme/DocTagDocListPage/index.js +89 -0
- package/lib/theme/DocTagsListPage/index.js +44 -0
- package/lib/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +37 -18
- package/lib/theme/EditThisPage/index.js +3 -1
- package/lib/theme/Footer/index.js +13 -4
- package/lib/theme/Heading/index.js +7 -9
- package/lib/theme/Heading/styles.css +4 -6
- package/lib/theme/Heading/styles.module.css +9 -5
- package/lib/theme/IconClose/index.js +31 -0
- package/lib/theme/LastUpdated/index.js +4 -2
- package/lib/theme/LayoutHead/index.js +13 -11
- package/lib/theme/LayoutProviders/index.js +11 -5
- package/lib/theme/Logo/index.js +14 -12
- 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 +164 -42
- package/lib/theme/Navbar/styles.module.css +10 -3
- package/lib/theme/NavbarItem/DefaultNavbarItem.js +27 -123
- package/lib/theme/NavbarItem/DocNavbarItem.js +6 -5
- 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} +5 -6
- package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/lib/theme/NavbarItem/index.js +31 -11
- package/lib/theme/Seo/index.js +10 -7
- package/lib/theme/SkipToContent/index.js +9 -3
- 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/ThemedImage/index.js +4 -5
- package/lib/theme/Toggle/index.js +23 -18
- package/lib/theme/Toggle/styles.module.css +91 -0
- package/lib/theme/UserPreferencesProvider/index.js +1 -9
- package/lib/theme/hooks/useHideableNavbar.js +14 -32
- package/lib/theme/hooks/useTabGroupChoice.js +2 -4
- package/lib/theme/hooks/useTheme.js +2 -2
- package/lib/theme/hooks/useWindowSize.js +33 -20
- package/lib/theme/prism-include-languages.js +4 -3
- package/lib/translations.js +4 -4
- package/lib/types.d.ts +338 -138
- package/lib/validateThemeConfig.js +226 -245
- package/lib-next/__tests__/validateThemeConfig.test.js +277 -3
- package/lib-next/admonitions.css +35 -0
- package/lib-next/index.js +33 -7
- 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 +16 -24
- 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/styles.module.css +2 -2
- package/lib-next/theme/BlogTagsListPage/index.js +13 -54
- package/lib-next/theme/BlogTagsPostsPage/index.js +28 -38
- package/lib-next/theme/CodeBlock/index.js +54 -53
- 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/DocItem/index.js +46 -55
- 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 +25 -43
- package/lib-next/theme/DocPage/styles.module.css +8 -23
- package/lib-next/theme/DocSidebar/index.js +59 -288
- package/lib-next/theme/DocSidebar/styles.module.css +0 -18
- package/lib-next/theme/DocSidebarItem/index.js +181 -0
- package/lib-next/theme/DocSidebarItem/styles.module.css +15 -0
- package/lib-next/theme/DocTagDocListPage/index.js +89 -0
- package/lib-next/theme/DocTagsListPage/index.js +38 -0
- package/lib-next/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +44 -36
- package/lib-next/theme/EditThisPage/index.js +6 -1
- package/lib-next/theme/Footer/index.js +24 -4
- package/lib-next/theme/Heading/index.js +10 -13
- package/lib-next/theme/Heading/styles.css +4 -6
- package/lib-next/theme/Heading/styles.module.css +9 -5
- package/lib-next/theme/IconClose/index.js +23 -0
- package/lib-next/theme/LastUpdated/index.js +3 -2
- package/lib-next/theme/LayoutHead/index.js +9 -15
- package/lib-next/theme/LayoutProviders/index.js +17 -6
- package/lib-next/theme/Logo/index.js +23 -19
- 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 +192 -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 +6 -5
- package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
- package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +158 -0
- package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -8
- package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/lib-next/theme/NavbarItem/index.js +25 -12
- package/lib-next/theme/Seo/index.js +11 -7
- package/lib-next/theme/SkipToContent/index.js +5 -6
- 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/ThemedImage/index.js +5 -6
- package/lib-next/theme/Toggle/index.js +20 -15
- package/lib-next/theme/Toggle/styles.module.css +91 -0
- package/lib-next/theme/UserPreferencesProvider/index.js +0 -4
- 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 +2 -2
- package/lib-next/theme/hooks/useWindowSize.js +34 -20
- package/lib-next/theme/prism-include-languages.js +2 -1
- package/lib-next/translations.js +6 -10
- package/lib-next/types.d.ts +338 -138
- package/lib-next/validateThemeConfig.js +134 -110
- package/package.json +24 -19
- package/src/__tests__/validateThemeConfig.test.js +277 -3
- package/src/admonitions.css +35 -0
- package/src/index.ts +44 -14
- 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 +17 -24
- package/src/theme/BlogPostAuthor/index.tsx +49 -0
- package/src/theme/BlogPostAuthor/styles.module.css +12 -0
- package/src/theme/BlogPostAuthors/index.tsx +36 -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/styles.module.css +2 -2
- package/src/theme/BlogTagsListPage/index.tsx +13 -56
- package/src/theme/BlogTagsPostsPage/index.tsx +28 -38
- package/src/theme/CodeBlock/index.tsx +70 -55
- 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/DocItem/index.tsx +49 -55
- 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 +24 -38
- package/src/theme/DocPage/styles.module.css +8 -23
- package/src/theme/DocSidebar/index.tsx +70 -300
- package/src/theme/DocSidebar/styles.module.css +0 -18
- package/src/theme/DocSidebarItem/index.tsx +206 -0
- package/src/theme/DocSidebarItem/styles.module.css +15 -0
- package/src/theme/DocTagDocListPage/index.tsx +89 -0
- package/src/theme/DocTagsListPage/index.tsx +41 -0
- package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +58 -44
- package/src/theme/EditThisPage/index.tsx +6 -1
- package/src/theme/Footer/index.tsx +26 -4
- package/src/theme/Heading/index.tsx +10 -13
- package/src/theme/Heading/styles.css +4 -6
- package/src/theme/Heading/styles.module.css +9 -5
- package/src/theme/IconClose/index.tsx +26 -0
- package/src/theme/LastUpdated/index.tsx +3 -2
- package/src/theme/LayoutHead/index.tsx +9 -9
- package/src/theme/LayoutProviders/index.tsx +17 -6
- package/src/theme/Logo/index.tsx +19 -15
- 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 +202 -61
- package/src/theme/Navbar/styles.module.css +10 -3
- package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -154
- package/src/theme/NavbarItem/DocNavbarItem.tsx +11 -14
- package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
- package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
- package/src/theme/NavbarItem/DropdownNavbarItem.tsx +180 -0
- package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -7
- package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/src/theme/NavbarItem/index.tsx +41 -16
- package/src/theme/Seo/index.tsx +7 -4
- package/src/theme/SkipToContent/index.tsx +5 -6
- 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/ThemedImage/index.tsx +6 -6
- package/src/theme/Toggle/index.tsx +20 -15
- package/src/theme/Toggle/styles.module.css +91 -0
- package/src/theme/UserPreferencesProvider/index.tsx +0 -5
- package/src/theme/hooks/useContextualSearchFilters.ts +1 -1
- package/src/theme/hooks/useHideableNavbar.ts +32 -45
- package/src/theme/hooks/useTabGroupChoice.ts +4 -4
- package/src/theme/hooks/useTheme.ts +2 -2
- package/src/theme/hooks/useWindowSize.ts +38 -20
- package/src/theme/prism-include-languages.ts +3 -2
- package/src/translations.ts +6 -10
- package/src/types.d.ts +338 -138
- package/src/{validateThemeConfig.js → validateThemeConfig.ts} +144 -90
- package/tsconfig.json +1 -2
- package/update-code-translations.js +10 -6
- package/update-code-translations.test.js +1 -1
- package/update.js +151 -0
- package/lib/theme/Toggle/styles.css +0 -103
- package/lib/theme/hooks/useAnnouncementBar.js +0 -63
- 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/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/useScrollPosition.ts +0 -45
- package/src/theme/hooks/useTOCHighlight.ts +0 -98
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = DocSidebarItem;
|
|
7
|
+
exports.DocSidebarItems = void 0;
|
|
8
|
+
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
|
|
11
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
12
|
+
|
|
13
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
14
|
+
|
|
15
|
+
var _Link = _interopRequireDefault(require("@docusaurus/Link"));
|
|
16
|
+
|
|
17
|
+
var _isInternalUrl = _interopRequireDefault(require("@docusaurus/isInternalUrl"));
|
|
18
|
+
|
|
19
|
+
var _IconExternalLink = _interopRequireDefault(require("@theme/IconExternalLink"));
|
|
20
|
+
|
|
21
|
+
var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
|
|
22
|
+
|
|
23
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
|
+
|
|
25
|
+
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); }
|
|
26
|
+
|
|
27
|
+
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; }
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
31
|
+
*
|
|
32
|
+
* This source code is licensed under the MIT license found in the
|
|
33
|
+
* LICENSE file in the root directory of this source tree.
|
|
34
|
+
*/
|
|
35
|
+
const isActiveSidebarItem = (item, activePath) => {
|
|
36
|
+
if (item.type === 'link') {
|
|
37
|
+
return (0, _themeCommon.isSamePath)(item.href, activePath);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (item.type === 'category') {
|
|
41
|
+
return item.items.some(subItem => isActiveSidebarItem(subItem, activePath));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return false;
|
|
45
|
+
}; // Optimize sidebar at each "level"
|
|
46
|
+
// TODO this item should probably not receive the "activePath" props
|
|
47
|
+
// TODO this triggers whole sidebar re-renders on navigation
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
const DocSidebarItems = (0, _react.memo)(function DocSidebarItems({
|
|
51
|
+
items,
|
|
52
|
+
...props
|
|
53
|
+
}) {
|
|
54
|
+
return <>
|
|
55
|
+
{items.map((item, index) => <DocSidebarItem key={index} // sidebar is static, the index does not change
|
|
56
|
+
item={item} {...props} />)}
|
|
57
|
+
</>;
|
|
58
|
+
});
|
|
59
|
+
exports.DocSidebarItems = DocSidebarItems;
|
|
60
|
+
|
|
61
|
+
function DocSidebarItem({
|
|
62
|
+
item,
|
|
63
|
+
...props
|
|
64
|
+
}) {
|
|
65
|
+
switch (item.type) {
|
|
66
|
+
case 'category':
|
|
67
|
+
if (item.items.length === 0) {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return <DocSidebarItemCategory item={item} {...props} />;
|
|
72
|
+
|
|
73
|
+
case 'link':
|
|
74
|
+
default:
|
|
75
|
+
return <DocSidebarItemLink item={item} {...props} />;
|
|
76
|
+
}
|
|
77
|
+
} // If we navigate to a category and it becomes active, it should automatically expand itself
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
function useAutoExpandActiveCategory({
|
|
81
|
+
isActive,
|
|
82
|
+
collapsed,
|
|
83
|
+
setCollapsed
|
|
84
|
+
}) {
|
|
85
|
+
const wasActive = (0, _themeCommon.usePrevious)(isActive);
|
|
86
|
+
(0, _react.useEffect)(() => {
|
|
87
|
+
const justBecameActive = isActive && !wasActive;
|
|
88
|
+
|
|
89
|
+
if (justBecameActive && collapsed) {
|
|
90
|
+
setCollapsed(false);
|
|
91
|
+
}
|
|
92
|
+
}, [isActive, wasActive, collapsed, setCollapsed]);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
function DocSidebarItemCategory({
|
|
96
|
+
item,
|
|
97
|
+
onItemClick,
|
|
98
|
+
activePath,
|
|
99
|
+
level,
|
|
100
|
+
...props
|
|
101
|
+
}) {
|
|
102
|
+
const {
|
|
103
|
+
items,
|
|
104
|
+
label,
|
|
105
|
+
collapsible,
|
|
106
|
+
className
|
|
107
|
+
} = item;
|
|
108
|
+
const isActive = isActiveSidebarItem(item, activePath);
|
|
109
|
+
const {
|
|
110
|
+
collapsed,
|
|
111
|
+
setCollapsed,
|
|
112
|
+
toggleCollapsed
|
|
113
|
+
} = (0, _themeCommon.useCollapsible)({
|
|
114
|
+
// active categories are always initialized as expanded
|
|
115
|
+
// the default (item.collapsed) is only used for non-active categories
|
|
116
|
+
initialState: () => {
|
|
117
|
+
if (!collapsible) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
return isActive ? false : item.collapsed;
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
useAutoExpandActiveCategory({
|
|
125
|
+
isActive,
|
|
126
|
+
collapsed,
|
|
127
|
+
setCollapsed
|
|
128
|
+
});
|
|
129
|
+
return <li className={(0, _clsx.default)(_themeCommon.ThemeClassNames.docs.docSidebarItemCategory, _themeCommon.ThemeClassNames.docs.docSidebarItemCategoryLevel(level), 'menu__list-item', {
|
|
130
|
+
'menu__list-item--collapsed': collapsed
|
|
131
|
+
}, className)}>
|
|
132
|
+
{
|
|
133
|
+
/* eslint-disable-next-line jsx-a11y/anchor-is-valid */
|
|
134
|
+
}
|
|
135
|
+
<a className={(0, _clsx.default)('menu__link', {
|
|
136
|
+
'menu__link--sublist': collapsible,
|
|
137
|
+
'menu__link--active': collapsible && isActive,
|
|
138
|
+
[_stylesModule.default.menuLinkText]: !collapsible
|
|
139
|
+
})} onClick={collapsible ? e => {
|
|
140
|
+
e.preventDefault();
|
|
141
|
+
toggleCollapsed();
|
|
142
|
+
} : undefined} href={collapsible ? '#' : undefined} {...props}>
|
|
143
|
+
{label}
|
|
144
|
+
</a>
|
|
145
|
+
|
|
146
|
+
<_themeCommon.Collapsible lazy as="ul" className="menu__list" collapsed={collapsed}>
|
|
147
|
+
<DocSidebarItems items={items} tabIndex={collapsed ? -1 : 0} onItemClick={onItemClick} activePath={activePath} level={level + 1} />
|
|
148
|
+
</_themeCommon.Collapsible>
|
|
149
|
+
</li>;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
function DocSidebarItemLink({
|
|
153
|
+
item,
|
|
154
|
+
onItemClick,
|
|
155
|
+
activePath,
|
|
156
|
+
level,
|
|
157
|
+
...props
|
|
158
|
+
}) {
|
|
159
|
+
const {
|
|
160
|
+
href,
|
|
161
|
+
label,
|
|
162
|
+
className
|
|
163
|
+
} = item;
|
|
164
|
+
const isActive = isActiveSidebarItem(item, activePath);
|
|
165
|
+
return <li className={(0, _clsx.default)(_themeCommon.ThemeClassNames.docs.docSidebarItemLink, _themeCommon.ThemeClassNames.docs.docSidebarItemLinkLevel(level), 'menu__list-item', className)} key={label}>
|
|
166
|
+
<_Link.default className={(0, _clsx.default)('menu__link', {
|
|
167
|
+
'menu__link--active': isActive
|
|
168
|
+
})} aria-current={isActive ? 'page' : undefined} to={href} {...(0, _isInternalUrl.default)(href) && {
|
|
169
|
+
onClick: onItemClick
|
|
170
|
+
}} {...props}>
|
|
171
|
+
{(0, _isInternalUrl.default)(href) ? label : <span>
|
|
172
|
+
{label}
|
|
173
|
+
<_IconExternalLink.default />
|
|
174
|
+
</span>}
|
|
175
|
+
</_Link.default>
|
|
176
|
+
</li>;
|
|
177
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
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
|
+
.menuLinkText {
|
|
10
|
+
cursor: initial;
|
|
11
|
+
}
|
|
12
|
+
.menuLinkText:hover {
|
|
13
|
+
background: none;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = DocTagDocListPage;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _Layout = _interopRequireDefault(require("@theme/Layout"));
|
|
11
|
+
|
|
12
|
+
var _Link = _interopRequireDefault(require("@docusaurus/Link"));
|
|
13
|
+
|
|
14
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
15
|
+
|
|
16
|
+
var _Translate = _interopRequireWildcard(require("@docusaurus/Translate"));
|
|
17
|
+
|
|
18
|
+
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); }
|
|
19
|
+
|
|
20
|
+
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; }
|
|
21
|
+
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
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
|
+
// Very simple pluralization: probably good enough for now
|
|
31
|
+
function useNDocsTaggedPlural() {
|
|
32
|
+
const {
|
|
33
|
+
selectMessage
|
|
34
|
+
} = (0, _themeCommon.usePluralForm)();
|
|
35
|
+
return count => selectMessage(count, (0, _Translate.translate)({
|
|
36
|
+
id: 'theme.docs.tagDocListPageTitle.nDocsTagged',
|
|
37
|
+
description: 'Pluralized label for "{count} docs tagged". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',
|
|
38
|
+
message: 'One doc tagged|{count} docs tagged'
|
|
39
|
+
}, {
|
|
40
|
+
count
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function DocItem({
|
|
45
|
+
doc
|
|
46
|
+
}) {
|
|
47
|
+
return <article className="margin-vert--lg">
|
|
48
|
+
<_Link.default to={doc.permalink}>
|
|
49
|
+
<h2>{doc.title}</h2>
|
|
50
|
+
</_Link.default>
|
|
51
|
+
{doc.description && <p>{doc.description}</p>}
|
|
52
|
+
</article>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
function DocTagDocListPage({
|
|
56
|
+
tag
|
|
57
|
+
}) {
|
|
58
|
+
const nDocsTaggedPlural = useNDocsTaggedPlural();
|
|
59
|
+
const title = (0, _Translate.translate)({
|
|
60
|
+
id: 'theme.docs.tagDocListPageTitle',
|
|
61
|
+
description: 'The title of the page for a docs tag',
|
|
62
|
+
message: '{nDocsTagged} with "{tagName}"'
|
|
63
|
+
}, {
|
|
64
|
+
nDocsTagged: nDocsTaggedPlural(tag.docs.length),
|
|
65
|
+
tagName: tag.name
|
|
66
|
+
});
|
|
67
|
+
return <_Layout.default title={title} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.docsPages} pageClassName={_themeCommon.ThemeClassNames.page.docsTagDocListPage} searchMetadatas={{
|
|
68
|
+
// assign unique search tag to exclude this page from search results!
|
|
69
|
+
tag: 'doc_tag_doc_list'
|
|
70
|
+
}}>
|
|
71
|
+
<div className="container margin-vert--lg">
|
|
72
|
+
<div className="row">
|
|
73
|
+
<main className="col col--8 col--offset-2">
|
|
74
|
+
<header className="margin-bottom--xl">
|
|
75
|
+
<h1>{title}</h1>
|
|
76
|
+
<_Link.default href={tag.allTagsPath}>
|
|
77
|
+
<_Translate.default id="theme.tags.tagsPageLink" description="The label of the link targeting the tag list page">
|
|
78
|
+
View All Tags
|
|
79
|
+
</_Translate.default>
|
|
80
|
+
</_Link.default>
|
|
81
|
+
</header>
|
|
82
|
+
<section className="margin-vert--lg">
|
|
83
|
+
{tag.docs.map(doc => <DocItem key={doc.id} doc={doc} />)}
|
|
84
|
+
</section>
|
|
85
|
+
</main>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</_Layout.default>;
|
|
89
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _Layout = _interopRequireDefault(require("@theme/Layout"));
|
|
11
|
+
|
|
12
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
13
|
+
|
|
14
|
+
var _TagsListByLetter = _interopRequireDefault(require("@theme/TagsListByLetter"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
20
|
+
*
|
|
21
|
+
* This source code is licensed under the MIT license found in the
|
|
22
|
+
* LICENSE file in the root directory of this source tree.
|
|
23
|
+
*/
|
|
24
|
+
function DocTagsListPage({
|
|
25
|
+
tags
|
|
26
|
+
}) {
|
|
27
|
+
const title = (0, _themeCommon.translateTagsPageTitle)();
|
|
28
|
+
return <_Layout.default title={title} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.docsPages} pageClassName={_themeCommon.ThemeClassNames.page.docsTagsListPage} searchMetadatas={{
|
|
29
|
+
// assign unique search tag to exclude this page from search results!
|
|
30
|
+
tag: 'doc_tags_list'
|
|
31
|
+
}}>
|
|
32
|
+
<div className="container margin-vert--lg">
|
|
33
|
+
<div className="row">
|
|
34
|
+
<main className="col col--8 col--offset-2">
|
|
35
|
+
<h1>{title}</h1>
|
|
36
|
+
<_TagsListByLetter.default tags={tags} />
|
|
37
|
+
</main>
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
</_Layout.default>;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
var _default = DocTagsListPage;
|
|
44
|
+
exports.default = _default;
|
|
@@ -17,6 +17,8 @@ var _useDocs = require("@theme/hooks/useDocs");
|
|
|
17
17
|
|
|
18
18
|
var _themeCommon = require("@docusaurus/theme-common");
|
|
19
19
|
|
|
20
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
21
|
+
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
23
|
|
|
22
24
|
/**
|
|
@@ -27,11 +29,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
27
29
|
*/
|
|
28
30
|
function UnreleasedVersionLabel({
|
|
29
31
|
siteTitle,
|
|
30
|
-
|
|
32
|
+
versionMetadata
|
|
31
33
|
}) {
|
|
32
34
|
return <_Translate.default id="theme.docs.versions.unreleasedVersionLabel" description="The label used to tell the user that he's browsing an unreleased doc version" values={{
|
|
33
35
|
siteTitle,
|
|
34
|
-
versionLabel: <b>{
|
|
36
|
+
versionLabel: <b>{versionMetadata.label}</b>
|
|
35
37
|
}}>
|
|
36
38
|
{'This is unreleased documentation for {siteTitle} {versionLabel} version.'}
|
|
37
39
|
</_Translate.default>;
|
|
@@ -39,22 +41,32 @@ function UnreleasedVersionLabel({
|
|
|
39
41
|
|
|
40
42
|
function UnmaintainedVersionLabel({
|
|
41
43
|
siteTitle,
|
|
42
|
-
|
|
44
|
+
versionMetadata
|
|
43
45
|
}) {
|
|
44
46
|
return <_Translate.default id="theme.docs.versions.unmaintainedVersionLabel" description="The label used to tell the user that he's browsing an unmaintained doc version" values={{
|
|
45
47
|
siteTitle,
|
|
46
|
-
versionLabel: <b>{
|
|
48
|
+
versionLabel: <b>{versionMetadata.label}</b>
|
|
47
49
|
}}>
|
|
48
50
|
{'This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.'}
|
|
49
51
|
</_Translate.default>;
|
|
50
52
|
}
|
|
51
53
|
|
|
54
|
+
const BannerLabelComponents = {
|
|
55
|
+
unreleased: UnreleasedVersionLabel,
|
|
56
|
+
unmaintained: UnmaintainedVersionLabel
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
function BannerLabel(props) {
|
|
60
|
+
const BannerLabelComponent = BannerLabelComponents[props.versionMetadata.banner];
|
|
61
|
+
return <BannerLabelComponent {...props} />;
|
|
62
|
+
}
|
|
63
|
+
|
|
52
64
|
function LatestVersionSuggestionLabel({
|
|
53
65
|
versionLabel,
|
|
54
66
|
to,
|
|
55
67
|
onClick
|
|
56
68
|
}) {
|
|
57
|
-
return <_Translate.default id="theme.docs.versions.latestVersionSuggestionLabel" description="The label
|
|
69
|
+
return <_Translate.default id="theme.docs.versions.latestVersionSuggestionLabel" description="The label used to tell the user to check the latest version" values={{
|
|
58
70
|
versionLabel,
|
|
59
71
|
latestVersionLink: <b>
|
|
60
72
|
<_Link.default to={to} onClick={onClick}>
|
|
@@ -68,9 +80,9 @@ function LatestVersionSuggestionLabel({
|
|
|
68
80
|
</_Translate.default>;
|
|
69
81
|
}
|
|
70
82
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
83
|
+
function DocVersionBannerEnabled({
|
|
84
|
+
versionMetadata
|
|
85
|
+
}) {
|
|
74
86
|
const {
|
|
75
87
|
siteConfig: {
|
|
76
88
|
title: siteTitle
|
|
@@ -81,25 +93,22 @@ function DocVersionSuggestions() {
|
|
|
81
93
|
} = (0, _useDocs.useActivePlugin)({
|
|
82
94
|
failfast: true
|
|
83
95
|
});
|
|
96
|
+
|
|
97
|
+
const getVersionMainDoc = version => version.docs.find(doc => doc.id === version.mainDocId);
|
|
98
|
+
|
|
84
99
|
const {
|
|
85
100
|
savePreferredVersionName
|
|
86
101
|
} = (0, _themeCommon.useDocsPreferredVersion)(pluginId);
|
|
87
|
-
const activeVersion = (0, _useDocs.useActiveVersion)(pluginId);
|
|
88
102
|
const {
|
|
89
103
|
latestDocSuggestion,
|
|
90
104
|
latestVersionSuggestion
|
|
91
|
-
} = (0, _useDocs.useDocVersionSuggestions)(pluginId); //
|
|
92
|
-
|
|
93
|
-
if (!latestVersionSuggestion) {
|
|
94
|
-
return <></>;
|
|
95
|
-
} // try to link to same doc in latest version (not always possible)
|
|
105
|
+
} = (0, _useDocs.useDocVersionSuggestions)(pluginId); // try to link to same doc in latest version (not always possible)
|
|
96
106
|
// fallback to main doc of latest version
|
|
97
107
|
|
|
98
|
-
|
|
99
108
|
const latestVersionSuggestedDoc = latestDocSuggestion !== null && latestDocSuggestion !== void 0 ? latestDocSuggestion : getVersionMainDoc(latestVersionSuggestion);
|
|
100
|
-
return <div className=
|
|
109
|
+
return <div className={(0, _clsx.default)(_themeCommon.ThemeClassNames.docs.docVersionBanner, 'alert alert--warning margin-bottom--md')} role="alert">
|
|
101
110
|
<div>
|
|
102
|
-
|
|
111
|
+
<BannerLabel siteTitle={siteTitle} versionMetadata={versionMetadata} />
|
|
103
112
|
</div>
|
|
104
113
|
<div className="margin-top--md">
|
|
105
114
|
<LatestVersionSuggestionLabel versionLabel={latestVersionSuggestion.label} to={latestVersionSuggestedDoc.path} onClick={() => savePreferredVersionName(latestVersionSuggestion.name)} />
|
|
@@ -107,5 +116,15 @@ function DocVersionSuggestions() {
|
|
|
107
116
|
</div>;
|
|
108
117
|
}
|
|
109
118
|
|
|
110
|
-
|
|
119
|
+
function DocVersionBanner({
|
|
120
|
+
versionMetadata
|
|
121
|
+
}) {
|
|
122
|
+
if (versionMetadata.banner) {
|
|
123
|
+
return <DocVersionBannerEnabled versionMetadata={versionMetadata} />;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
return <></>;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
var _default = DocVersionBanner;
|
|
111
130
|
exports.default = _default;
|
|
@@ -11,6 +11,8 @@ var _Translate = _interopRequireDefault(require("@docusaurus/Translate"));
|
|
|
11
11
|
|
|
12
12
|
var _IconEdit = _interopRequireDefault(require("@theme/IconEdit"));
|
|
13
13
|
|
|
14
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
15
|
+
|
|
14
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
17
|
|
|
16
18
|
/**
|
|
@@ -22,7 +24,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
22
24
|
function EditThisPage({
|
|
23
25
|
editUrl
|
|
24
26
|
}) {
|
|
25
|
-
return <a href={editUrl} target="_blank" rel="noreferrer noopener">
|
|
27
|
+
return <a href={editUrl} target="_blank" rel="noreferrer noopener" className={_themeCommon.ThemeClassNames.common.editThisPage}>
|
|
26
28
|
<_IconEdit.default />
|
|
27
29
|
<_Translate.default id="theme.common.editThisPage" description="The link label to edit the current page">
|
|
28
30
|
Edit this page
|
|
@@ -15,10 +15,14 @@ var _themeCommon = require("@docusaurus/theme-common");
|
|
|
15
15
|
|
|
16
16
|
var _useBaseUrl = _interopRequireDefault(require("@docusaurus/useBaseUrl"));
|
|
17
17
|
|
|
18
|
+
var _isInternalUrl = _interopRequireDefault(require("@docusaurus/isInternalUrl"));
|
|
19
|
+
|
|
18
20
|
var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
|
|
19
21
|
|
|
20
22
|
var _ThemedImage = _interopRequireDefault(require("@theme/ThemedImage"));
|
|
21
23
|
|
|
24
|
+
var _IconExternalLink = _interopRequireDefault(require("@theme/IconExternalLink"));
|
|
25
|
+
|
|
22
26
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
27
|
|
|
24
28
|
/**
|
|
@@ -43,14 +47,19 @@ function FooterLink({
|
|
|
43
47
|
} : {
|
|
44
48
|
to: toUrl
|
|
45
49
|
}} {...props}>
|
|
46
|
-
{
|
|
50
|
+
{href && !(0, _isInternalUrl.default)(href) ? <span>
|
|
51
|
+
{label}
|
|
52
|
+
<_IconExternalLink.default />
|
|
53
|
+
</span> : label}
|
|
47
54
|
</_Link.default>;
|
|
48
55
|
}
|
|
49
56
|
|
|
50
57
|
const FooterLogo = ({
|
|
51
58
|
sources,
|
|
52
|
-
alt
|
|
53
|
-
|
|
59
|
+
alt,
|
|
60
|
+
width,
|
|
61
|
+
height
|
|
62
|
+
}) => <_ThemedImage.default className="footer__logo" alt={alt} sources={sources} width={width} height={height} />;
|
|
54
63
|
|
|
55
64
|
function Footer() {
|
|
56
65
|
const {
|
|
@@ -91,7 +100,7 @@ function Footer() {
|
|
|
91
100
|
{(logo || copyright) && <div className="footer__bottom text--center">
|
|
92
101
|
{logo && (logo.src || logo.srcDark) && <div className="margin-bottom--sm">
|
|
93
102
|
{logo.href ? <_Link.default href={logo.href} className={_stylesModule.default.footerLogoLink}>
|
|
94
|
-
<FooterLogo alt={logo.alt} sources={sources} />
|
|
103
|
+
<FooterLogo alt={logo.alt} sources={sources} width={logo.width} height={logo.height} />
|
|
95
104
|
</_Link.default> : <FooterLogo alt={logo.alt} sources={sources} />}
|
|
96
105
|
</div>}
|
|
97
106
|
{copyright ? <div className="footer__copyright" // Developer provided the HTML, so assume it's safe.
|
|
@@ -25,13 +25,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
25
25
|
* This source code is licensed under the MIT license found in the
|
|
26
26
|
* LICENSE file in the root directory of this source tree.
|
|
27
27
|
*/
|
|
28
|
-
|
|
29
|
-
/* eslint-disable jsx-a11y/anchor-has-content, jsx-a11y/anchor-is-valid */
|
|
30
28
|
const MainHeading = function MainHeading({ ...props
|
|
31
29
|
}) {
|
|
32
30
|
return <header>
|
|
33
31
|
<h1 {...props} id={undefined} // h1 headings do not need an id because they don't appear in the TOC
|
|
34
|
-
|
|
32
|
+
>
|
|
35
33
|
{props.children}
|
|
36
34
|
</h1>
|
|
37
35
|
</header>;
|
|
@@ -53,17 +51,17 @@ const createAnchorHeading = Tag => function TargetComponent({
|
|
|
53
51
|
return <Tag {...props} />;
|
|
54
52
|
}
|
|
55
53
|
|
|
56
|
-
return <Tag {...props}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
54
|
+
return <Tag {...props} className={(0, _clsx.default)('anchor', {
|
|
55
|
+
[_stylesModule.default.anchorWithHideOnScrollNavbar]: hideOnScroll,
|
|
56
|
+
[_stylesModule.default.anchorWithStickyNavbar]: !hideOnScroll
|
|
57
|
+
})} id={id}>
|
|
60
58
|
{props.children}
|
|
61
|
-
<a className="hash-link" href={`#${id}`} title={(0, _Translate.translate)({
|
|
59
|
+
<a aria-hidden="true" className="hash-link" href={`#${id}`} title={(0, _Translate.translate)({
|
|
62
60
|
id: 'theme.common.headingLinkTitle',
|
|
63
61
|
message: 'Direct link to heading',
|
|
64
62
|
description: 'Title for link to heading'
|
|
65
63
|
})}>
|
|
66
|
-
|
|
64
|
+
​
|
|
67
65
|
</a>
|
|
68
66
|
</Tag>;
|
|
69
67
|
};
|
|
@@ -5,18 +5,16 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
.anchor {
|
|
9
|
-
display: block;
|
|
10
|
-
position: relative;
|
|
11
|
-
top: -0.5rem;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
8
|
.hash-link {
|
|
15
9
|
opacity: 0;
|
|
16
10
|
padding-left: 0.5rem;
|
|
17
11
|
transition: opacity var(--ifm-transition-fast);
|
|
18
12
|
}
|
|
19
13
|
|
|
14
|
+
.hash-link:before {
|
|
15
|
+
content: '#';
|
|
16
|
+
}
|
|
17
|
+
|
|
20
18
|
.hash-link:focus,
|
|
21
19
|
*:hover > .hash-link {
|
|
22
20
|
opacity: 1;
|
|
@@ -5,11 +5,15 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/*
|
|
9
|
+
When the navbar is sticky, ensure that on anchor click,
|
|
10
|
+
the browser does not scroll that anchor behind the navbar
|
|
11
|
+
See https://twitter.com/JoshWComeau/status/1332015868725891076
|
|
12
|
+
*/
|
|
13
|
+
.anchorWithStickyNavbar {
|
|
14
|
+
scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
|
|
10
15
|
}
|
|
11
16
|
|
|
12
|
-
.
|
|
13
|
-
|
|
14
|
-
margin-bottom: calc(var(--ifm-leading-desktop) * var(--ifm-leading));
|
|
17
|
+
.anchorWithHideOnScrollNavbar {
|
|
18
|
+
scroll-margin-top: 0.5rem;
|
|
15
19
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = IconClose;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/
|
|
18
|
+
function IconClose({
|
|
19
|
+
width = 21,
|
|
20
|
+
height = 21,
|
|
21
|
+
color = 'currentColor',
|
|
22
|
+
strokeWidth = 1.2,
|
|
23
|
+
className,
|
|
24
|
+
...restProps
|
|
25
|
+
}) {
|
|
26
|
+
return <svg viewBox="0 0 15 15" width={width} height={height} {...restProps}>
|
|
27
|
+
<g stroke={color} strokeWidth={strokeWidth}>
|
|
28
|
+
<path d="M.75.75l13.5 13.5M14.25.75L.75 14.25" />
|
|
29
|
+
</g>
|
|
30
|
+
</svg>;
|
|
31
|
+
}
|
|
@@ -9,6 +9,8 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _Translate = _interopRequireDefault(require("@docusaurus/Translate"));
|
|
11
11
|
|
|
12
|
+
var _themeCommon = require("@docusaurus/theme-common");
|
|
13
|
+
|
|
12
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
15
|
|
|
14
16
|
/**
|
|
@@ -47,7 +49,7 @@ function LastUpdated({
|
|
|
47
49
|
formattedLastUpdatedAt,
|
|
48
50
|
lastUpdatedBy
|
|
49
51
|
}) {
|
|
50
|
-
return
|
|
52
|
+
return <span className={_themeCommon.ThemeClassNames.common.lastUpdated}>
|
|
51
53
|
<_Translate.default id="theme.lastUpdated.lastUpdatedAtBy" description="The sentence used to display when a page has been last updated, and by who" values={{
|
|
52
54
|
atDate: lastUpdatedAt && formattedLastUpdatedAt ? <LastUpdatedAtDate lastUpdatedAt={lastUpdatedAt} formattedLastUpdatedAt={formattedLastUpdatedAt} /> : '',
|
|
53
55
|
byUser: lastUpdatedBy ? <LastUpdatedByUser lastUpdatedBy={lastUpdatedBy} /> : ''
|
|
@@ -57,5 +59,5 @@ function LastUpdated({
|
|
|
57
59
|
{process.env.NODE_ENV === 'development' && <div>
|
|
58
60
|
<small> (Simulated during dev for better perf)</small>
|
|
59
61
|
</div>}
|
|
60
|
-
|
|
62
|
+
</span>;
|
|
61
63
|
}
|