@docusaurus/theme-classic 2.0.0-beta.15d451942 → 2.0.0-beta.16
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 +2 -2
- package/lib/admonitions.css +35 -0
- package/lib/deps.d.ts +13 -0
- package/lib/getSwizzleConfig.js +102 -0
- package/lib/index.js +59 -43
- package/lib/prism-include-languages.js +9 -5
- package/lib/theme-classic.d.ts +755 -0
- package/lib/translations.js +40 -34
- package/lib/types.d.ts +0 -589
- package/lib/validateThemeConfig.js +247 -246
- package/lib-next/theme/Admonition/index.js +101 -0
- package/lib-next/theme/AnnouncementBar/index.js +10 -22
- package/lib-next/theme/AnnouncementBar/styles.module.css +26 -35
- package/lib-next/theme/BackToTopButton/index.js +131 -0
- package/lib-next/theme/BackToTopButton/styles.module.css +44 -0
- package/lib-next/theme/BlogArchivePage/index.js +80 -0
- package/lib-next/theme/BlogLayout/index.js +37 -0
- package/lib-next/theme/BlogListPage/index.js +18 -29
- package/lib-next/theme/BlogListPaginator/index.js +13 -16
- package/lib-next/theme/BlogPostAuthor/index.js +40 -0
- package/{lib/theme/IconEdit → lib-next/theme/BlogPostAuthor}/styles.module.css +4 -3
- package/lib-next/theme/BlogPostAuthors/index.js +44 -0
- package/lib-next/theme/BlogPostAuthors/styles.module.css +21 -0
- package/lib-next/theme/BlogPostItem/index.js +110 -95
- package/lib-next/theme/BlogPostItem/styles.module.css +5 -1
- package/lib-next/theme/BlogPostPage/index.js +75 -43
- package/lib-next/theme/BlogPostPaginator/index.js +13 -20
- package/lib-next/theme/BlogSidebar/index.js +23 -16
- package/lib-next/theme/BlogSidebar/styles.module.css +8 -8
- package/lib-next/theme/BlogTagsListPage/index.js +16 -66
- package/lib-next/theme/BlogTagsPostsPage/index.js +47 -59
- package/lib-next/theme/CodeBlock/index.js +73 -162
- package/lib-next/theme/CodeBlock/styles.module.css +18 -13
- package/lib-next/theme/Details/index.js +21 -0
- package/lib-next/theme/Details/styles.module.css +13 -0
- package/lib-next/theme/DocBreadcrumbs/index.js +76 -0
- package/lib-next/theme/DocBreadcrumbs/styles.module.css +26 -0
- package/lib-next/theme/DocCard/index.js +91 -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 +54 -0
- package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
- package/lib-next/theme/DocItem/index.js +64 -69
- package/lib-next/theme/DocItem/styles.module.css +7 -13
- package/lib-next/theme/DocItemFooter/index.js +79 -0
- package/{lib/theme/Layout/styles.css → lib-next/theme/DocItemFooter/styles.module.css} +8 -11
- package/lib-next/theme/DocPage/index.js +59 -33
- package/lib-next/theme/DocPage/styles.module.css +14 -26
- package/lib-next/theme/DocPaginator/index.js +16 -25
- package/lib-next/theme/DocSidebar/index.js +72 -285
- package/lib-next/theme/DocSidebar/styles.module.css +5 -36
- package/lib-next/theme/DocSidebarItem/index.js +264 -0
- package/lib-next/theme/DocSidebarItem/styles.module.css +13 -0
- package/lib-next/theme/DocSidebarItems/index.js +28 -0
- package/lib-next/theme/DocTagDocListPage/index.js +89 -0
- package/lib-next/theme/DocTagsListPage/index.js +35 -0
- package/lib-next/theme/DocVersionBadge/index.js +34 -0
- package/lib-next/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +54 -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 +105 -41
- package/lib-next/theme/Footer/styles.module.css +2 -1
- package/lib-next/theme/Heading/index.js +40 -33
- package/lib-next/theme/Heading/styles.module.css +27 -2
- package/lib-next/theme/IconArrow/index.js +3 -6
- package/lib-next/theme/IconClose/index.js +23 -0
- package/lib-next/theme/IconEdit/index.js +5 -10
- package/lib-next/theme/IconExternalLink/index.js +23 -0
- package/{lib/theme/BlogPostItem → lib-next/theme/IconExternalLink}/styles.module.css +4 -6
- package/lib-next/theme/IconLanguage/index.js +3 -6
- package/lib-next/theme/IconMenu/index.js +8 -9
- package/lib-next/theme/LastUpdated/index.js +35 -39
- package/lib-next/theme/Layout/index.js +5 -7
- package/lib-next/theme/Layout/styles.css +6 -0
- package/lib-next/theme/LayoutHead/index.js +27 -32
- package/lib-next/theme/LayoutProviders/index.js +21 -10
- package/lib-next/theme/Logo/index.js +21 -16
- package/lib-next/theme/MDXComponents/index.js +45 -30
- package/lib-next/theme/{hooks → MDXComponents}/styles.css +7 -2
- package/lib-next/theme/MDXPage/index.js +22 -28
- package/{lib/theme/LastUpdated → lib-next/theme/MDXPage}/styles.module.css +2 -2
- package/lib-next/theme/Navbar/index.js +199 -64
- package/lib-next/theme/Navbar/styles.module.css +11 -4
- package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +36 -185
- package/lib-next/theme/NavbarItem/DocNavbarItem.js +31 -14
- package/lib-next/theme/NavbarItem/DocSidebarNavbarItem.js +73 -0
- package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +38 -24
- package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +4 -1
- package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +156 -0
- package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +12 -13
- package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/lib-next/theme/NavbarItem/NavbarNavLink.js +70 -0
- package/lib-next/theme/NavbarItem/index.js +27 -15
- package/lib-next/theme/{UserPreferencesContext.js → NavbarItem/utils.js} +3 -3
- package/lib-next/theme/NotFound.js +7 -6
- package/lib-next/theme/PaginatorNavLink/index.js +17 -0
- package/lib-next/theme/SearchBar.js +1 -1
- package/lib-next/theme/SearchMetadata/index.js +25 -0
- package/lib-next/theme/Seo/index.js +11 -7
- package/lib-next/theme/SkipToContent/index.js +9 -8
- package/lib-next/theme/SkipToContent/styles.module.css +8 -3
- package/lib-next/theme/TOC/index.js +12 -39
- package/lib-next/theme/TOC/styles.module.css +2 -2
- 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 -31
- package/lib-next/theme/TOCItems/index.js +85 -0
- package/lib-next/theme/TabItem/index.js +1 -4
- package/lib-next/theme/Tabs/__tests__/index.test.js +146 -0
- package/lib-next/theme/Tabs/index.js +108 -50
- package/lib-next/theme/Tabs/styles.module.css +0 -13
- package/lib-next/theme/Tag/index.js +24 -0
- package/lib-next/theme/Tag/styles.module.css +70 -0
- package/lib-next/theme/TagsListByLetter/index.js +40 -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 +9 -13
- package/lib-next/theme/ThemedImage/styles.module.css +9 -2
- package/lib-next/theme/Toggle/index.js +65 -60
- package/lib-next/theme/Toggle/styles.module.css +30 -38
- package/lib-next/theme/prism-include-languages.js +17 -15
- package/package.json +31 -30
- package/src/admonitions.css +35 -0
- package/src/deps.d.ts +13 -0
- package/src/getSwizzleConfig.ts +101 -0
- package/src/index.ts +68 -66
- package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
- package/src/theme/Admonition/index.tsx +106 -0
- package/src/theme/AnnouncementBar/index.tsx +11 -20
- package/src/theme/AnnouncementBar/styles.module.css +26 -35
- package/src/theme/BackToTopButton/index.tsx +143 -0
- package/src/theme/BackToTopButton/styles.module.css +44 -0
- package/src/theme/BlogArchivePage/index.tsx +91 -0
- package/src/theme/BlogLayout/index.tsx +42 -0
- package/src/theme/BlogListPage/index.tsx +19 -28
- package/src/theme/BlogListPaginator/index.tsx +13 -15
- package/src/theme/BlogPostAuthor/index.tsx +44 -0
- package/src/theme/{LastUpdated → BlogPostAuthor}/styles.module.css +4 -2
- package/src/theme/BlogPostAuthors/index.tsx +49 -0
- package/src/theme/BlogPostAuthors/styles.module.css +21 -0
- package/src/theme/BlogPostItem/index.tsx +101 -91
- package/src/theme/BlogPostItem/styles.module.css +5 -1
- package/src/theme/BlogPostPage/index.tsx +77 -42
- package/src/theme/BlogPostPaginator/index.tsx +13 -19
- package/src/theme/BlogSidebar/index.tsx +23 -16
- package/src/theme/BlogSidebar/styles.module.css +8 -8
- package/src/theme/BlogTagsListPage/index.tsx +16 -66
- package/src/theme/BlogTagsPostsPage/index.tsx +43 -61
- package/src/theme/CodeBlock/index.tsx +77 -164
- package/src/theme/CodeBlock/styles.module.css +18 -13
- package/src/theme/Details/index.tsx +25 -0
- package/src/theme/Details/styles.module.css +13 -0
- package/src/theme/DocBreadcrumbs/index.tsx +91 -0
- package/src/theme/DocBreadcrumbs/styles.module.css +26 -0
- package/src/theme/DocCard/index.tsx +109 -0
- package/src/theme/DocCard/styles.module.css +43 -0
- package/src/theme/DocCardList/index.tsx +27 -0
- package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +59 -0
- package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
- package/src/theme/DocItem/index.tsx +66 -68
- package/src/theme/DocItem/styles.module.css +7 -13
- package/src/theme/DocItemFooter/index.tsx +91 -0
- package/src/theme/DocItemFooter/styles.module.css +18 -0
- package/src/theme/DocPage/index.tsx +58 -34
- package/src/theme/DocPage/styles.module.css +14 -26
- package/src/theme/DocPaginator/index.tsx +16 -24
- package/src/theme/DocSidebar/index.tsx +83 -297
- package/src/theme/DocSidebar/styles.module.css +5 -36
- package/src/theme/DocSidebarItem/index.tsx +283 -0
- package/src/theme/DocSidebarItem/styles.module.css +13 -0
- package/src/theme/DocSidebarItems/index.tsx +32 -0
- package/src/theme/DocTagDocListPage/index.tsx +89 -0
- package/src/theme/DocTagsListPage/index.tsx +39 -0
- package/src/theme/DocVersionBadge/index.tsx +35 -0
- package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +77 -47
- package/src/theme/EditThisPage/index.tsx +6 -1
- package/src/theme/ErrorPageContent.tsx +41 -0
- package/src/theme/Footer/index.tsx +119 -45
- package/src/theme/Footer/styles.module.css +2 -1
- package/src/theme/Heading/index.tsx +41 -35
- package/src/theme/Heading/styles.module.css +27 -2
- package/src/theme/IconArrow/index.tsx +3 -5
- package/src/theme/IconClose/index.tsx +26 -0
- package/src/theme/IconEdit/index.tsx +8 -9
- package/src/theme/IconExternalLink/index.tsx +30 -0
- package/{lib/theme/Heading → src/theme/IconExternalLink}/styles.module.css +4 -2
- package/src/theme/IconLanguage/index.tsx +4 -6
- package/src/theme/IconMenu/index.tsx +4 -9
- package/src/theme/LastUpdated/index.tsx +35 -39
- package/src/theme/Layout/index.tsx +5 -6
- package/src/theme/Layout/styles.css +6 -0
- package/src/theme/LayoutHead/index.tsx +26 -25
- package/src/theme/LayoutProviders/index.tsx +21 -10
- package/src/theme/Logo/index.tsx +21 -15
- package/src/theme/MDXComponents/index.tsx +56 -32
- package/{lib/theme/hooks → src/theme/MDXComponents}/styles.css +7 -2
- package/src/theme/MDXPage/index.tsx +23 -28
- package/{lib-next/theme/LastUpdated → src/theme/MDXPage}/styles.module.css +2 -2
- package/src/theme/Navbar/index.tsx +208 -68
- package/src/theme/Navbar/styles.module.css +11 -4
- package/src/theme/NavbarItem/DefaultNavbarItem.tsx +37 -194
- package/src/theme/NavbarItem/DocNavbarItem.tsx +33 -15
- package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +84 -0
- package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +44 -28
- 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} +16 -10
- package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
- package/src/theme/NavbarItem/NavbarNavLink.tsx +68 -0
- package/src/theme/NavbarItem/index.tsx +42 -19
- package/src/theme/NavbarItem/utils.ts +10 -0
- package/src/theme/NotFound.tsx +7 -5
- package/src/theme/PaginatorNavLink/index.tsx +20 -0
- package/src/theme/SearchBar.tsx +2 -1
- package/src/theme/SearchMetadata/index.tsx +34 -0
- package/src/theme/Seo/index.tsx +7 -4
- package/src/theme/SkipToContent/index.tsx +9 -8
- package/src/theme/SkipToContent/styles.module.css +8 -3
- package/src/theme/TOC/index.tsx +13 -44
- package/src/theme/TOC/styles.module.css +2 -2
- package/src/theme/TOCCollapsible/index.tsx +58 -0
- package/src/theme/TOCCollapsible/styles.module.css +50 -0
- package/src/theme/TOCInline/index.tsx +14 -35
- package/src/theme/TOCItems/index.tsx +100 -0
- package/src/theme/TabItem/index.tsx +5 -3
- package/src/theme/Tabs/index.tsx +115 -56
- package/src/theme/Tabs/styles.module.css +0 -13
- package/src/theme/Tag/index.tsx +29 -0
- package/src/theme/Tag/styles.module.css +70 -0
- package/src/theme/TagsListByLetter/index.tsx +43 -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 +10 -12
- package/src/theme/ThemedImage/styles.module.css +9 -2
- package/src/theme/Toggle/index.tsx +66 -62
- package/src/theme/Toggle/styles.module.css +30 -38
- package/src/theme/prism-include-languages.ts +20 -15
- package/src/theme-classic.d.ts +755 -0
- package/src/translations.ts +74 -54
- package/src/types.d.ts +0 -589
- package/{lib-next/validateThemeConfig.js → src/validateThemeConfig.ts} +184 -104
- package/babel.config.js +0 -35
- package/codeTranslations/README.md +0 -20
- package/codeTranslations/ar.json +0 -55
- package/codeTranslations/base.json +0 -108
- package/codeTranslations/da.json +0 -55
- package/codeTranslations/de.json +0 -55
- package/codeTranslations/es.json +0 -55
- package/codeTranslations/fa.json +0 -55
- package/codeTranslations/fil.json +0 -55
- package/codeTranslations/fr.json +0 -55
- package/codeTranslations/he.json +0 -55
- package/codeTranslations/hi.json +0 -55
- package/codeTranslations/ja.json +0 -55
- package/codeTranslations/ko.json +0 -55
- package/codeTranslations/pl.json +0 -55
- package/codeTranslations/pt-BR.json +0 -55
- package/codeTranslations/pt-PT.json +0 -55
- package/codeTranslations/ru.json +0 -55
- package/codeTranslations/tr.json +0 -55
- package/codeTranslations/vi.json +0 -55
- package/codeTranslations/zh-Hans.json +0 -55
- package/codeTranslations/zh-Hant.json +0 -55
- package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
- package/lib/__tests__/translations.test.js +0 -112
- package/lib/__tests__/validateThemeConfig.test.js +0 -333
- package/lib/theme/AnnouncementBar/index.js +0 -74
- package/lib/theme/AnnouncementBar/styles.module.css +0 -72
- package/lib/theme/BlogListPage/index.js +0 -71
- package/lib/theme/BlogListPaginator/index.js +0 -63
- package/lib/theme/BlogPostItem/index.js +0 -152
- package/lib/theme/BlogPostPage/index.js +0 -75
- package/lib/theme/BlogPostPaginator/index.js +0 -64
- package/lib/theme/BlogSidebar/index.js +0 -43
- package/lib/theme/BlogSidebar/styles.module.css +0 -46
- package/lib/theme/BlogTagsListPage/index.js +0 -81
- package/lib/theme/BlogTagsPostsPage/index.js +0 -104
- package/lib/theme/CodeBlock/index.js +0 -253
- package/lib/theme/CodeBlock/styles.module.css +0 -71
- package/lib/theme/DocItem/index.js +0 -120
- package/lib/theme/DocItem/styles.module.css +0 -28
- package/lib/theme/DocPage/index.js +0 -141
- package/lib/theme/DocPage/styles.module.css +0 -98
- package/lib/theme/DocPaginator/index.js +0 -63
- package/lib/theme/DocSidebar/index.js +0 -307
- package/lib/theme/DocSidebar/styles.module.css +0 -138
- package/lib/theme/DocVersionSuggestions/index.js +0 -111
- package/lib/theme/EditThisPage/index.js +0 -31
- package/lib/theme/Footer/index.js +0 -108
- package/lib/theme/Footer/styles.module.css +0 -15
- package/lib/theme/Heading/index.js +0 -60
- package/lib/theme/Heading/styles.css +0 -23
- package/lib/theme/IconArrow/index.js +0 -28
- package/lib/theme/IconEdit/index.js +0 -34
- package/lib/theme/IconLanguage/index.js +0 -29
- package/lib/theme/IconMenu/index.js +0 -31
- package/lib/theme/LastUpdated/index.js +0 -65
- package/lib/theme/Layout/index.js +0 -64
- package/lib/theme/LayoutHead/index.js +0 -144
- package/lib/theme/LayoutProviders/index.js +0 -34
- package/lib/theme/Logo/index.js +0 -59
- package/lib/theme/MDXComponents/index.js +0 -65
- package/lib/theme/MDXPage/index.js +0 -68
- package/lib/theme/Navbar/index.js +0 -147
- package/lib/theme/Navbar/styles.module.css +0 -20
- package/lib/theme/NavbarItem/DefaultNavbarItem.js +0 -195
- package/lib/theme/NavbarItem/DocNavbarItem.js +0 -55
- package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -75
- package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +0 -43
- package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
- package/lib/theme/NavbarItem/SearchNavbarItem.js +0 -28
- package/lib/theme/NavbarItem/index.js +0 -54
- package/lib/theme/NotFound.js +0 -50
- package/lib/theme/SearchBar.js +0 -15
- package/lib/theme/SearchMetadatas/index.js +0 -33
- package/lib/theme/Seo/index.js +0 -49
- package/lib/theme/SkipToContent/index.js +0 -61
- package/lib/theme/SkipToContent/styles.module.css +0 -16
- package/lib/theme/TOC/index.js +0 -59
- package/lib/theme/TOC/styles.module.css +0 -23
- package/lib/theme/TOCInline/index.js +0 -53
- package/lib/theme/TOCInline/styles.module.css +0 -12
- package/lib/theme/TabItem/index.js +0 -32
- package/lib/theme/Tabs/index.js +0 -150
- package/lib/theme/Tabs/styles.module.css +0 -23
- package/lib/theme/ThemeContext.js +0 -21
- package/lib/theme/ThemeProvider/index.js +0 -38
- package/lib/theme/ThemedImage/index.js +0 -48
- package/lib/theme/ThemedImage/styles.module.css +0 -11
- package/lib/theme/Toggle/index.js +0 -106
- package/lib/theme/Toggle/styles.module.css +0 -114
- package/lib/theme/UserPreferencesContext.js +0 -18
- package/lib/theme/UserPreferencesProvider/index.js +0 -44
- package/lib/theme/hooks/useAnnouncementBar.js +0 -63
- package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
- package/lib/theme/hooks/useDocs.js +0 -18
- package/lib/theme/hooks/useHideableNavbar.js +0 -92
- package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
- package/lib/theme/hooks/useLocationHash.js +0 -28
- package/lib/theme/hooks/useLockBodyScroll.js +0 -26
- package/lib/theme/hooks/usePrismTheme.js +0 -36
- package/lib/theme/hooks/useScrollPosition.js +0 -49
- package/lib/theme/hooks/useTOCHighlight.js +0 -87
- package/lib/theme/hooks/useTabGroupChoice.js +0 -53
- package/lib/theme/hooks/useTheme.js +0 -99
- package/lib/theme/hooks/useThemeContext.js +0 -31
- package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
- package/lib/theme/hooks/useWindowSize.js +0 -55
- package/lib/theme/prism-include-languages.js +0 -39
- package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
- package/lib-next/__tests__/translations.test.js +0 -128
- package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
- package/lib-next/index.js +0 -198
- package/lib-next/theme/Heading/styles.css +0 -23
- package/lib-next/theme/SearchMetadatas/index.js +0 -20
- package/lib-next/theme/ThemeContext.js +0 -9
- package/lib-next/theme/ThemeProvider/index.js +0 -25
- package/lib-next/theme/UserPreferencesProvider/index.js +0 -28
- package/lib-next/theme/hooks/useAnnouncementBar.js +0 -49
- package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
- package/lib-next/theme/hooks/useDocs.js +0 -10
- package/lib-next/theme/hooks/useHideableNavbar.js +0 -79
- package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
- package/lib-next/theme/hooks/useLocationHash.js +0 -20
- package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
- package/lib-next/theme/hooks/usePrismTheme.js +0 -20
- package/lib-next/theme/hooks/useScrollPosition.js +0 -38
- package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
- package/lib-next/theme/hooks/useTabGroupChoice.js +0 -41
- package/lib-next/theme/hooks/useTheme.js +0 -82
- package/lib-next/theme/hooks/useThemeContext.js +0 -22
- package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
- package/lib-next/theme/hooks/useWindowSize.js +0 -45
- package/lib-next/translations.js +0 -145
- package/lib-next/types.d.ts +0 -600
- package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
- package/src/__tests__/translations.test.ts +0 -116
- package/src/__tests__/validateThemeConfig.test.js +0 -333
- package/src/prism-include-languages.js +0 -11
- package/src/theme/Heading/styles.css +0 -23
- package/src/theme/SearchMetadatas/index.tsx +0 -28
- package/src/theme/ThemeContext.ts +0 -15
- package/src/theme/ThemeProvider/index.tsx +0 -24
- package/src/theme/UserPreferencesContext.ts +0 -12
- package/src/theme/UserPreferencesProvider/index.tsx +0 -32
- package/src/theme/hooks/styles.css +0 -10
- package/src/theme/hooks/useAnnouncementBar.ts +0 -58
- package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
- package/src/theme/hooks/useDocs.ts +0 -11
- package/src/theme/hooks/useHideableNavbar.ts +0 -85
- package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
- package/src/theme/hooks/useLocationHash.ts +0 -25
- package/src/theme/hooks/useLockBodyScroll.ts +0 -20
- package/src/theme/hooks/usePrismTheme.ts +0 -22
- package/src/theme/hooks/useScrollPosition.ts +0 -45
- package/src/theme/hooks/useTOCHighlight.ts +0 -98
- package/src/theme/hooks/useTabGroupChoice.ts +0 -46
- package/src/theme/hooks/useTheme.ts +0 -92
- package/src/theme/hooks/useThemeContext.ts +0 -23
- package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
- package/src/theme/hooks/useWindowSize.ts +0 -51
- package/src/validateThemeConfig.js +0 -317
- package/tsconfig.json +0 -12
- package/update-code-translations.js +0 -239
- package/update-code-translations.test.js +0 -33
|
@@ -1,116 +0,0 @@
|
|
|
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
|
-
import {getTranslationFiles, translateThemeConfig} from '../translations';
|
|
9
|
-
import {ThemeConfig} from '@docusaurus/theme-common';
|
|
10
|
-
import {updateTranslationFileMessages} from '@docusaurus/utils';
|
|
11
|
-
|
|
12
|
-
const ThemeConfigSample: ThemeConfig = {
|
|
13
|
-
colorMode: {},
|
|
14
|
-
announcementBar: {},
|
|
15
|
-
prism: {},
|
|
16
|
-
docs: {
|
|
17
|
-
versionPersistence: 'none',
|
|
18
|
-
},
|
|
19
|
-
hideableSidebar: true,
|
|
20
|
-
navbar: {
|
|
21
|
-
title: 'navbar title',
|
|
22
|
-
style: 'dark',
|
|
23
|
-
hideOnScroll: false,
|
|
24
|
-
items: [
|
|
25
|
-
{
|
|
26
|
-
label: 'Dropdown',
|
|
27
|
-
items: [
|
|
28
|
-
{label: 'Dropdown item 1', items: []},
|
|
29
|
-
{label: 'Dropdown item 2', items: []},
|
|
30
|
-
],
|
|
31
|
-
},
|
|
32
|
-
],
|
|
33
|
-
},
|
|
34
|
-
footer: {
|
|
35
|
-
copyright: 'Copyright FB',
|
|
36
|
-
style: 'light',
|
|
37
|
-
links: [
|
|
38
|
-
{
|
|
39
|
-
title: 'Footer link column 1',
|
|
40
|
-
items: [
|
|
41
|
-
{label: 'Link 1', to: 'https://facebook.com'},
|
|
42
|
-
{label: 'Link 2', to: 'https://facebook.com'},
|
|
43
|
-
],
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
title: 'Footer link column 2',
|
|
47
|
-
items: [{label: 'Link 3', to: 'https://facebook.com'}],
|
|
48
|
-
},
|
|
49
|
-
],
|
|
50
|
-
},
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
function getSampleTranslationFiles() {
|
|
54
|
-
return getTranslationFiles({
|
|
55
|
-
themeConfig: ThemeConfigSample,
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
function getSampleTranslationFilesTranslated() {
|
|
60
|
-
const translationFiles = getSampleTranslationFiles();
|
|
61
|
-
return translationFiles.map((translationFile) =>
|
|
62
|
-
updateTranslationFileMessages(
|
|
63
|
-
translationFile,
|
|
64
|
-
(message) => `${message} (translated)`,
|
|
65
|
-
),
|
|
66
|
-
);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
describe('getTranslationFiles', () => {
|
|
70
|
-
test('should return translation files matching snapshot', () => {
|
|
71
|
-
expect(getSampleTranslationFiles()).toMatchSnapshot();
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
describe('translateThemeConfig', () => {
|
|
76
|
-
test('should not translate anything if translation files are untranslated', () => {
|
|
77
|
-
const translationFiles = getSampleTranslationFiles();
|
|
78
|
-
expect(
|
|
79
|
-
translateThemeConfig({
|
|
80
|
-
themeConfig: ThemeConfigSample,
|
|
81
|
-
translationFiles,
|
|
82
|
-
}),
|
|
83
|
-
).toEqual(ThemeConfigSample);
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
test('should return translated themeConfig matching snapshot', () => {
|
|
87
|
-
const translationFiles = getSampleTranslationFilesTranslated();
|
|
88
|
-
expect(
|
|
89
|
-
translateThemeConfig({
|
|
90
|
-
themeConfig: ThemeConfigSample,
|
|
91
|
-
translationFiles,
|
|
92
|
-
}),
|
|
93
|
-
).toMatchSnapshot();
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
describe('getTranslationFiles and translateThemeConfig isomorphism', () => {
|
|
98
|
-
function verifyIsomorphism(themeConfig: ThemeConfig) {
|
|
99
|
-
const translationFiles = getTranslationFiles({themeConfig});
|
|
100
|
-
const translatedThemeConfig = translateThemeConfig({
|
|
101
|
-
themeConfig,
|
|
102
|
-
translationFiles,
|
|
103
|
-
});
|
|
104
|
-
expect(translatedThemeConfig).toEqual(themeConfig);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
test('should be verified for main sample', () => {
|
|
108
|
-
verifyIsomorphism(ThemeConfigSample);
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
// undefined footer should not make the translation code crash
|
|
112
|
-
// See https://github.com/facebook/docusaurus/issues/3936
|
|
113
|
-
test('should be verified for sample without footer', () => {
|
|
114
|
-
verifyIsomorphism({...ThemeConfigSample, footer: undefined});
|
|
115
|
-
});
|
|
116
|
-
});
|
|
@@ -1,333 +0,0 @@
|
|
|
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
|
-
import {merge} from 'lodash';
|
|
9
|
-
|
|
10
|
-
const {ThemeConfigSchema, DEFAULT_CONFIG} = require('../validateThemeConfig');
|
|
11
|
-
|
|
12
|
-
const {normalizeThemeConfig} = require('@docusaurus/utils-validation');
|
|
13
|
-
const theme = require('prism-react-renderer/themes/github');
|
|
14
|
-
const darkTheme = require('prism-react-renderer/themes/dracula');
|
|
15
|
-
|
|
16
|
-
function testValidateThemeConfig(partialThemeConfig) {
|
|
17
|
-
return normalizeThemeConfig(ThemeConfigSchema, {
|
|
18
|
-
...DEFAULT_CONFIG,
|
|
19
|
-
...partialThemeConfig,
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
function testOk(partialThemeConfig) {
|
|
24
|
-
expect(
|
|
25
|
-
testValidateThemeConfig({...DEFAULT_CONFIG, ...partialThemeConfig}),
|
|
26
|
-
).toEqual({
|
|
27
|
-
...DEFAULT_CONFIG,
|
|
28
|
-
...partialThemeConfig,
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
describe('themeConfig', () => {
|
|
33
|
-
test('should accept valid theme config', () => {
|
|
34
|
-
const userConfig = {
|
|
35
|
-
prism: {
|
|
36
|
-
theme,
|
|
37
|
-
darkTheme,
|
|
38
|
-
defaultLanguage: 'javascript',
|
|
39
|
-
additionalLanguages: ['kotlin', 'java'],
|
|
40
|
-
},
|
|
41
|
-
announcementBar: {
|
|
42
|
-
id: 'supportus',
|
|
43
|
-
content: 'pls support',
|
|
44
|
-
backgroundColor: '#fff',
|
|
45
|
-
textColor: '#000',
|
|
46
|
-
isCloseable: true,
|
|
47
|
-
},
|
|
48
|
-
image: 'img/docusaurus-soc.png',
|
|
49
|
-
navbar: {
|
|
50
|
-
style: 'primary',
|
|
51
|
-
hideOnScroll: true,
|
|
52
|
-
title: 'Docusaurus',
|
|
53
|
-
logo: {
|
|
54
|
-
alt: 'Docusaurus Logo',
|
|
55
|
-
src: 'img/docusaurus.svg',
|
|
56
|
-
srcDark: 'img/docusaurus_keytar.svg',
|
|
57
|
-
},
|
|
58
|
-
items: [
|
|
59
|
-
{
|
|
60
|
-
type: 'docsVersionDropdown',
|
|
61
|
-
position: 'left',
|
|
62
|
-
dropdownItemsBefore: [],
|
|
63
|
-
dropdownItemsAfter: [],
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
to: 'docs/next/support',
|
|
67
|
-
label: 'Community',
|
|
68
|
-
position: 'left',
|
|
69
|
-
activeBaseRegex: `docs/next/(support|team|resources)`,
|
|
70
|
-
'aria-label': 'Community',
|
|
71
|
-
},
|
|
72
|
-
],
|
|
73
|
-
},
|
|
74
|
-
footer: {
|
|
75
|
-
style: 'dark',
|
|
76
|
-
links: [
|
|
77
|
-
{
|
|
78
|
-
title: 'Learn',
|
|
79
|
-
items: [
|
|
80
|
-
{
|
|
81
|
-
label: 'Introduction',
|
|
82
|
-
to: 'docs',
|
|
83
|
-
},
|
|
84
|
-
],
|
|
85
|
-
},
|
|
86
|
-
],
|
|
87
|
-
logo: {
|
|
88
|
-
alt: 'Facebook Open Source Logo',
|
|
89
|
-
src: 'img/oss_logo.png',
|
|
90
|
-
href: 'https://opensource.facebook.com',
|
|
91
|
-
},
|
|
92
|
-
copyright: `Copyright © ${new Date().getFullYear()} Facebook, Inc. Built with Docusaurus.`,
|
|
93
|
-
},
|
|
94
|
-
};
|
|
95
|
-
expect(testValidateThemeConfig(userConfig)).toEqual({
|
|
96
|
-
...DEFAULT_CONFIG,
|
|
97
|
-
...userConfig,
|
|
98
|
-
});
|
|
99
|
-
});
|
|
100
|
-
|
|
101
|
-
test('should allow possible types of navbar items', () => {
|
|
102
|
-
const config = {
|
|
103
|
-
navbar: {
|
|
104
|
-
items: [
|
|
105
|
-
// Doc link
|
|
106
|
-
{
|
|
107
|
-
type: 'doc',
|
|
108
|
-
position: 'left',
|
|
109
|
-
docId: 'intro',
|
|
110
|
-
label: 'Introduction',
|
|
111
|
-
activeSidebarClassName: 'custom-class',
|
|
112
|
-
},
|
|
113
|
-
// Regular link
|
|
114
|
-
{
|
|
115
|
-
to: '/guide/',
|
|
116
|
-
label: 'Guide',
|
|
117
|
-
position: 'left',
|
|
118
|
-
activeBaseRegex: '/guide/',
|
|
119
|
-
},
|
|
120
|
-
// Regular dropdown
|
|
121
|
-
{
|
|
122
|
-
label: 'Community',
|
|
123
|
-
position: 'right',
|
|
124
|
-
items: [
|
|
125
|
-
{
|
|
126
|
-
label: 'Facebook',
|
|
127
|
-
href: 'https://.facebook.com/',
|
|
128
|
-
target: '_self',
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
label: 'GitHub',
|
|
132
|
-
href: 'https://github.com/facebook/docusaurus',
|
|
133
|
-
className: 'github-link',
|
|
134
|
-
},
|
|
135
|
-
],
|
|
136
|
-
},
|
|
137
|
-
// Doc version dropdown
|
|
138
|
-
{
|
|
139
|
-
type: 'docsVersionDropdown',
|
|
140
|
-
position: 'right',
|
|
141
|
-
dropdownActiveClassDisabled: true,
|
|
142
|
-
dropdownItemsBefore: [
|
|
143
|
-
{
|
|
144
|
-
href:
|
|
145
|
-
'https://www.npmjs.com/package/docusaurus?activeTab=versions',
|
|
146
|
-
label: 'Versions on npm',
|
|
147
|
-
className: 'npm-styled',
|
|
148
|
-
target: '_self',
|
|
149
|
-
},
|
|
150
|
-
],
|
|
151
|
-
dropdownItemsAfter: [
|
|
152
|
-
{
|
|
153
|
-
to: '/versions',
|
|
154
|
-
label: 'All versions',
|
|
155
|
-
className: 'all_vers',
|
|
156
|
-
},
|
|
157
|
-
],
|
|
158
|
-
},
|
|
159
|
-
// External link with custom data attribute
|
|
160
|
-
{
|
|
161
|
-
href: 'https://github.com/facebook/docusaurus',
|
|
162
|
-
position: 'right',
|
|
163
|
-
className: 'header-github-link',
|
|
164
|
-
'aria-label': 'GitHub repository',
|
|
165
|
-
},
|
|
166
|
-
// Docs version
|
|
167
|
-
{
|
|
168
|
-
type: 'docsVersion',
|
|
169
|
-
position: 'left',
|
|
170
|
-
label: 'Current version',
|
|
171
|
-
},
|
|
172
|
-
],
|
|
173
|
-
},
|
|
174
|
-
};
|
|
175
|
-
expect(testValidateThemeConfig(config)).toEqual({
|
|
176
|
-
...DEFAULT_CONFIG,
|
|
177
|
-
navbar: {
|
|
178
|
-
...DEFAULT_CONFIG.navbar,
|
|
179
|
-
...config.navbar,
|
|
180
|
-
},
|
|
181
|
-
});
|
|
182
|
-
});
|
|
183
|
-
|
|
184
|
-
test('should allow empty alt tags for the logo image in the header', () => {
|
|
185
|
-
const altTagConfig = {
|
|
186
|
-
navbar: {
|
|
187
|
-
logo: {
|
|
188
|
-
alt: '',
|
|
189
|
-
src: '/arbitrary-logo.png',
|
|
190
|
-
},
|
|
191
|
-
hideOnScroll: false,
|
|
192
|
-
},
|
|
193
|
-
};
|
|
194
|
-
expect(testValidateThemeConfig(altTagConfig)).toEqual({
|
|
195
|
-
...DEFAULT_CONFIG,
|
|
196
|
-
navbar: {
|
|
197
|
-
...DEFAULT_CONFIG.navbar,
|
|
198
|
-
...altTagConfig.navbar,
|
|
199
|
-
},
|
|
200
|
-
});
|
|
201
|
-
});
|
|
202
|
-
|
|
203
|
-
test('should allow empty alt tags for the logo image in the footer', () => {
|
|
204
|
-
const partialConfig = {
|
|
205
|
-
footer: {
|
|
206
|
-
logo: {
|
|
207
|
-
alt: '',
|
|
208
|
-
src: '/arbitrary-logo.png',
|
|
209
|
-
},
|
|
210
|
-
},
|
|
211
|
-
};
|
|
212
|
-
const normalizedConfig = testValidateThemeConfig(partialConfig);
|
|
213
|
-
|
|
214
|
-
expect(normalizedConfig).toEqual({
|
|
215
|
-
...normalizedConfig,
|
|
216
|
-
footer: {
|
|
217
|
-
...normalizedConfig.footer,
|
|
218
|
-
...partialConfig.footer,
|
|
219
|
-
},
|
|
220
|
-
});
|
|
221
|
-
});
|
|
222
|
-
|
|
223
|
-
test('should accept valid prism config', () => {
|
|
224
|
-
const prismConfig = {
|
|
225
|
-
prism: {
|
|
226
|
-
additionalLanguages: ['kotlin', 'java'],
|
|
227
|
-
},
|
|
228
|
-
};
|
|
229
|
-
expect(testValidateThemeConfig(prismConfig)).toEqual({
|
|
230
|
-
...DEFAULT_CONFIG,
|
|
231
|
-
...prismConfig,
|
|
232
|
-
});
|
|
233
|
-
});
|
|
234
|
-
|
|
235
|
-
describe('customCss config', () => {
|
|
236
|
-
test('should accept customCss undefined', () => {
|
|
237
|
-
testOk({
|
|
238
|
-
customCss: undefined,
|
|
239
|
-
});
|
|
240
|
-
});
|
|
241
|
-
|
|
242
|
-
test('should accept customCss string', () => {
|
|
243
|
-
testOk({
|
|
244
|
-
customCss: './path/to/cssFile.css',
|
|
245
|
-
});
|
|
246
|
-
});
|
|
247
|
-
|
|
248
|
-
test('should accept customCss string array', () => {
|
|
249
|
-
testOk({
|
|
250
|
-
customCss: ['./path/to/cssFile.css', './path/to/cssFile2.css'],
|
|
251
|
-
});
|
|
252
|
-
});
|
|
253
|
-
|
|
254
|
-
test('should reject customCss number', () => {
|
|
255
|
-
expect(() =>
|
|
256
|
-
testValidateThemeConfig({
|
|
257
|
-
customCss: 42,
|
|
258
|
-
}),
|
|
259
|
-
).toThrowErrorMatchingInlineSnapshot(
|
|
260
|
-
`"\\"customCss\\" must be one of [array, string]"`,
|
|
261
|
-
);
|
|
262
|
-
});
|
|
263
|
-
});
|
|
264
|
-
|
|
265
|
-
describe('color mode config', () => {
|
|
266
|
-
const withDefaultValues = (colorMode) =>
|
|
267
|
-
merge({}, DEFAULT_CONFIG.colorMode, colorMode);
|
|
268
|
-
|
|
269
|
-
test('minimal config', () => {
|
|
270
|
-
const colorMode = {
|
|
271
|
-
switchConfig: {
|
|
272
|
-
darkIcon: '🌙',
|
|
273
|
-
},
|
|
274
|
-
};
|
|
275
|
-
expect(testValidateThemeConfig({colorMode})).toEqual({
|
|
276
|
-
...DEFAULT_CONFIG,
|
|
277
|
-
colorMode: withDefaultValues(colorMode),
|
|
278
|
-
});
|
|
279
|
-
});
|
|
280
|
-
|
|
281
|
-
test('max config', () => {
|
|
282
|
-
const colorMode = {
|
|
283
|
-
defaultMode: 'dark',
|
|
284
|
-
disableSwitch: false,
|
|
285
|
-
respectPrefersColorScheme: true,
|
|
286
|
-
switchConfig: {
|
|
287
|
-
darkIcon: '🌙',
|
|
288
|
-
darkIconStyle: {
|
|
289
|
-
marginTop: '1px',
|
|
290
|
-
marginLeft: '2px',
|
|
291
|
-
},
|
|
292
|
-
lightIcon: '☀️',
|
|
293
|
-
lightIconStyle: {
|
|
294
|
-
marginLeft: '1px',
|
|
295
|
-
},
|
|
296
|
-
},
|
|
297
|
-
};
|
|
298
|
-
expect(testValidateThemeConfig({colorMode})).toEqual({
|
|
299
|
-
...DEFAULT_CONFIG,
|
|
300
|
-
colorMode: withDefaultValues(colorMode),
|
|
301
|
-
});
|
|
302
|
-
});
|
|
303
|
-
|
|
304
|
-
test('undefined config', () => {
|
|
305
|
-
const colorMode = undefined;
|
|
306
|
-
expect(testValidateThemeConfig({colorMode})).toEqual({
|
|
307
|
-
...DEFAULT_CONFIG,
|
|
308
|
-
colorMode: withDefaultValues(colorMode),
|
|
309
|
-
});
|
|
310
|
-
});
|
|
311
|
-
|
|
312
|
-
test('empty config', () => {
|
|
313
|
-
const colorMode = {};
|
|
314
|
-
expect(testValidateThemeConfig({colorMode})).toEqual({
|
|
315
|
-
...DEFAULT_CONFIG,
|
|
316
|
-
colorMode: {
|
|
317
|
-
...DEFAULT_CONFIG.colorMode,
|
|
318
|
-
...colorMode,
|
|
319
|
-
},
|
|
320
|
-
});
|
|
321
|
-
});
|
|
322
|
-
|
|
323
|
-
test('empty switch config', () => {
|
|
324
|
-
const colorMode = {
|
|
325
|
-
switchConfig: {},
|
|
326
|
-
};
|
|
327
|
-
expect(testValidateThemeConfig({colorMode})).toEqual({
|
|
328
|
-
...DEFAULT_CONFIG,
|
|
329
|
-
colorMode: withDefaultValues(colorMode),
|
|
330
|
-
});
|
|
331
|
-
});
|
|
332
|
-
});
|
|
333
|
-
});
|
|
@@ -1,11 +0,0 @@
|
|
|
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
|
-
import Prism from 'prism-react-renderer/prism';
|
|
9
|
-
import prismIncludeLanguages from '@theme/prism-include-languages';
|
|
10
|
-
|
|
11
|
-
prismIncludeLanguages(Prism);
|
|
@@ -1,23 +0,0 @@
|
|
|
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
|
-
.anchor {
|
|
9
|
-
display: block;
|
|
10
|
-
position: relative;
|
|
11
|
-
top: -0.5rem;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.hash-link {
|
|
15
|
-
opacity: 0;
|
|
16
|
-
padding-left: 0.5rem;
|
|
17
|
-
transition: opacity var(--ifm-transition-fast);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.hash-link:focus,
|
|
21
|
-
*:hover > .hash-link {
|
|
22
|
-
opacity: 1;
|
|
23
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
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
|
-
import React from 'react';
|
|
9
|
-
|
|
10
|
-
import Head from '@docusaurus/Head';
|
|
11
|
-
import type {Props} from '@theme/SearchMetadatas';
|
|
12
|
-
|
|
13
|
-
// Note: we don't couple this to Algolia/DocSearch on purpose
|
|
14
|
-
// We may want to support other search engine plugins too
|
|
15
|
-
// Search plugins should swizzle/override this comp to add their behavior
|
|
16
|
-
export default function SearchMetadatas({
|
|
17
|
-
locale,
|
|
18
|
-
version,
|
|
19
|
-
tag,
|
|
20
|
-
}: Props): JSX.Element {
|
|
21
|
-
return (
|
|
22
|
-
<Head>
|
|
23
|
-
{locale && <meta name="docusaurus_locale" content={`${locale}`} />}
|
|
24
|
-
{version && <meta name="docusaurus_version" content={version} />}
|
|
25
|
-
{tag && <meta name="docusaurus_tag" content={tag} />}
|
|
26
|
-
</Head>
|
|
27
|
-
);
|
|
28
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
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
|
-
import React from 'react';
|
|
9
|
-
import type {ThemeContextProps} from '@theme/hooks/useThemeContext';
|
|
10
|
-
|
|
11
|
-
const ThemeContext = React.createContext<ThemeContextProps | undefined>(
|
|
12
|
-
undefined,
|
|
13
|
-
);
|
|
14
|
-
|
|
15
|
-
export default ThemeContext;
|
|
@@ -1,24 +0,0 @@
|
|
|
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
|
-
import React from 'react';
|
|
9
|
-
|
|
10
|
-
import useTheme from '@theme/hooks/useTheme';
|
|
11
|
-
import ThemeContext from '@theme/ThemeContext';
|
|
12
|
-
import type {Props} from '@theme/ThemeProvider';
|
|
13
|
-
|
|
14
|
-
function ThemeProvider(props: Props): JSX.Element {
|
|
15
|
-
const {isDarkTheme, setLightTheme, setDarkTheme} = useTheme();
|
|
16
|
-
|
|
17
|
-
return (
|
|
18
|
-
<ThemeContext.Provider value={{isDarkTheme, setLightTheme, setDarkTheme}}>
|
|
19
|
-
{props.children}
|
|
20
|
-
</ThemeContext.Provider>
|
|
21
|
-
);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export default ThemeProvider;
|
|
@@ -1,12 +0,0 @@
|
|
|
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
|
-
import {createContext} from 'react';
|
|
9
|
-
|
|
10
|
-
const UserPreferencesContext = createContext(undefined);
|
|
11
|
-
|
|
12
|
-
export default UserPreferencesContext;
|
|
@@ -1,32 +0,0 @@
|
|
|
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
|
-
import React from 'react';
|
|
9
|
-
|
|
10
|
-
import useTabGroupChoice from '@theme/hooks/useTabGroupChoice';
|
|
11
|
-
import useAnnouncementBar from '@theme/hooks/useAnnouncementBar';
|
|
12
|
-
import UserPreferencesContext from '@theme/UserPreferencesContext';
|
|
13
|
-
import type {Props} from '@theme/UserPreferencesProvider';
|
|
14
|
-
|
|
15
|
-
function UserPreferencesProvider(props: Props): JSX.Element {
|
|
16
|
-
const {tabGroupChoices, setTabGroupChoices} = useTabGroupChoice();
|
|
17
|
-
const {isAnnouncementBarClosed, closeAnnouncementBar} = useAnnouncementBar();
|
|
18
|
-
|
|
19
|
-
return (
|
|
20
|
-
<UserPreferencesContext.Provider
|
|
21
|
-
value={{
|
|
22
|
-
tabGroupChoices,
|
|
23
|
-
setTabGroupChoices,
|
|
24
|
-
isAnnouncementBarClosed,
|
|
25
|
-
closeAnnouncementBar,
|
|
26
|
-
}}>
|
|
27
|
-
{props.children}
|
|
28
|
-
</UserPreferencesContext.Provider>
|
|
29
|
-
);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export default UserPreferencesProvider;
|
|
@@ -1,10 +0,0 @@
|
|
|
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
|
-
body:not(.navigation-with-keyboard) *:not(input):focus {
|
|
9
|
-
outline: none;
|
|
10
|
-
}
|
|
@@ -1,58 +0,0 @@
|
|
|
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
|
-
import {useState, useEffect, useCallback} from 'react';
|
|
9
|
-
import {useThemeConfig, createStorageSlot} from '@docusaurus/theme-common';
|
|
10
|
-
import type {useAnnouncementBarReturns} from '@theme/hooks/useAnnouncementBar';
|
|
11
|
-
|
|
12
|
-
const DismissStorage = createStorageSlot('docusaurus.announcement.dismiss');
|
|
13
|
-
const IdStorage = createStorageSlot('docusaurus.announcement.id');
|
|
14
|
-
|
|
15
|
-
const useAnnouncementBar = (): useAnnouncementBarReturns => {
|
|
16
|
-
const {announcementBar} = useThemeConfig();
|
|
17
|
-
|
|
18
|
-
const [isClosed, setClosed] = useState(true);
|
|
19
|
-
|
|
20
|
-
const handleClose = useCallback(() => {
|
|
21
|
-
DismissStorage.set('true');
|
|
22
|
-
setClosed(true);
|
|
23
|
-
}, []);
|
|
24
|
-
|
|
25
|
-
useEffect(() => {
|
|
26
|
-
if (!announcementBar) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
const {id} = announcementBar;
|
|
30
|
-
|
|
31
|
-
let viewedId = IdStorage.get();
|
|
32
|
-
|
|
33
|
-
// retrocompatibility due to spelling mistake of default id
|
|
34
|
-
// see https://github.com/facebook/docusaurus/issues/3338
|
|
35
|
-
if (viewedId === 'annoucement-bar') {
|
|
36
|
-
viewedId = 'announcement-bar';
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
const isNewAnnouncement = id !== viewedId;
|
|
40
|
-
|
|
41
|
-
IdStorage.set(id);
|
|
42
|
-
|
|
43
|
-
if (isNewAnnouncement) {
|
|
44
|
-
DismissStorage.set('false');
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
if (isNewAnnouncement || DismissStorage.get() === 'false') {
|
|
48
|
-
setClosed(false);
|
|
49
|
-
}
|
|
50
|
-
}, []);
|
|
51
|
-
|
|
52
|
-
return {
|
|
53
|
-
isAnnouncementBarClosed: isClosed,
|
|
54
|
-
closeAnnouncementBar: handleClose,
|
|
55
|
-
};
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export default useAnnouncementBar;
|