@docusaurus/theme-classic 2.0.0-beta.138b4c997 → 2.0.0-beta.14

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.
Files changed (349) hide show
  1. package/README.md +1 -1
  2. package/lib/admonitions.css +35 -0
  3. package/lib/deps.d.ts +13 -0
  4. package/lib/index.js +16 -15
  5. package/lib/prism-include-languages.js +9 -5
  6. package/{lib-next/types.d.ts → lib/theme-classic.d.ts} +374 -150
  7. package/lib/translations.js +16 -7
  8. package/lib/types.d.ts +0 -587
  9. package/lib/validateThemeConfig.js +232 -246
  10. package/lib-next/theme/Admonition/index.js +101 -0
  11. package/lib-next/theme/AnnouncementBar/index.js +7 -12
  12. package/lib-next/theme/AnnouncementBar/styles.module.css +23 -32
  13. package/lib-next/theme/BackToTopButton/index.js +131 -0
  14. package/lib-next/theme/BackToTopButton/styles.module.css +42 -0
  15. package/lib-next/theme/BlogArchivePage/index.js +80 -0
  16. package/lib-next/theme/BlogLayout/index.js +40 -0
  17. package/lib-next/theme/BlogListPage/index.js +17 -25
  18. package/lib-next/theme/BlogPostAuthor/index.js +46 -0
  19. package/{lib/theme/MDXPage → lib-next/theme/BlogPostAuthor}/styles.module.css +4 -2
  20. package/lib-next/theme/BlogPostAuthors/index.js +34 -0
  21. package/{lib/theme/IconExternalLink → lib-next/theme/BlogPostAuthors}/styles.module.css +3 -4
  22. package/lib-next/theme/BlogPostItem/index.js +79 -86
  23. package/lib-next/theme/BlogPostPage/index.js +70 -35
  24. package/lib-next/theme/BlogSidebar/index.js +11 -13
  25. package/lib-next/theme/BlogSidebar/styles.module.css +2 -2
  26. package/lib-next/theme/BlogTagsListPage/index.js +14 -55
  27. package/lib-next/theme/BlogTagsPostsPage/index.js +29 -39
  28. package/lib-next/theme/CodeBlock/index.js +23 -149
  29. package/lib-next/theme/CodeBlock/styles.module.css +12 -9
  30. package/lib-next/theme/Details/index.js +20 -0
  31. package/lib-next/theme/Details/styles.module.css +13 -0
  32. package/lib-next/theme/DocCard/index.js +80 -0
  33. package/lib-next/theme/DocCard/styles.module.css +43 -0
  34. package/lib-next/theme/DocCardList/index.js +19 -0
  35. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +49 -0
  36. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  37. package/lib-next/theme/DocItem/index.js +40 -51
  38. package/lib-next/theme/DocItem/styles.module.css +5 -9
  39. package/lib-next/theme/DocItemFooter/index.js +79 -0
  40. package/{lib/theme/DocItem → lib-next/theme/DocItemFooter}/styles.module.css +1 -9
  41. package/lib-next/theme/DocPage/index.js +46 -49
  42. package/lib-next/theme/DocPage/styles.module.css +5 -6
  43. package/lib-next/theme/DocPaginator/index.js +5 -33
  44. package/lib-next/theme/DocPaginatorNavLink/index.js +36 -0
  45. package/lib-next/theme/DocSidebar/index.js +65 -285
  46. package/lib-next/theme/DocSidebar/styles.module.css +0 -18
  47. package/lib-next/theme/DocSidebarItem/index.js +217 -0
  48. package/{lib/theme/ThemedImage → lib-next/theme/DocSidebarItem}/styles.module.css +10 -9
  49. package/lib-next/theme/DocTagDocListPage/index.js +89 -0
  50. package/lib-next/theme/DocTagsListPage/index.js +38 -0
  51. package/lib-next/theme/DocVersionBadge/index.js +27 -0
  52. package/lib-next/theme/DocVersionBanner/index.js +28 -14
  53. package/lib-next/theme/EditThisPage/index.js +6 -1
  54. package/lib-next/theme/ErrorPageContent.js +35 -0
  55. package/lib-next/theme/Footer/index.js +100 -40
  56. package/lib-next/theme/Heading/index.js +24 -29
  57. package/lib-next/theme/Heading/styles.css +5 -6
  58. package/lib-next/theme/Heading/styles.module.css +9 -5
  59. package/lib-next/theme/IconArrow/index.js +2 -2
  60. package/lib-next/theme/IconClose/index.js +23 -0
  61. package/lib-next/theme/IconEdit/index.js +2 -2
  62. package/lib-next/theme/IconExternalLink/index.js +2 -2
  63. package/lib-next/theme/IconLanguage/index.js +2 -2
  64. package/lib-next/theme/IconMenu/index.js +2 -2
  65. package/lib-next/theme/LastUpdated/index.js +3 -2
  66. package/lib-next/theme/Layout/index.js +3 -1
  67. package/lib-next/theme/LayoutHead/index.js +18 -23
  68. package/lib-next/theme/LayoutProviders/index.js +9 -3
  69. package/lib-next/theme/Logo/index.js +25 -21
  70. package/lib-next/theme/MDXComponents/index.js +34 -7
  71. package/{lib/theme/hooks → lib-next/theme/MDXComponents}/styles.css +3 -2
  72. package/lib-next/theme/MDXPage/index.js +10 -2
  73. package/lib-next/theme/Navbar/index.js +193 -56
  74. package/lib-next/theme/Navbar/styles.module.css +10 -3
  75. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +45 -147
  76. package/lib-next/theme/NavbarItem/DocNavbarItem.js +7 -7
  77. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
  78. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +158 -0
  79. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -12
  80. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  81. package/lib-next/theme/NavbarItem/index.js +25 -12
  82. package/lib-next/theme/{SearchMetadatas → SearchMetadata}/index.js +1 -1
  83. package/lib-next/theme/Seo/index.js +11 -7
  84. package/lib-next/theme/SkipToContent/index.js +5 -2
  85. package/lib-next/theme/TOC/index.js +12 -36
  86. package/lib-next/theme/TOC/styles.module.css +1 -1
  87. package/lib-next/theme/TOCCollapsible/index.js +54 -0
  88. package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
  89. package/lib-next/theme/TOCInline/index.js +10 -28
  90. package/lib-next/theme/TOCItems/index.js +85 -0
  91. package/lib-next/theme/Tabs/__tests__/index.test.js +142 -0
  92. package/lib-next/theme/Tabs/index.js +103 -48
  93. package/lib-next/theme/Tabs/styles.module.css +0 -13
  94. package/lib-next/theme/Tag/index.js +27 -0
  95. package/lib-next/theme/Tag/styles.module.css +70 -0
  96. package/lib-next/theme/TagsListByLetter/index.js +42 -0
  97. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  98. package/lib-next/theme/TagsListInline/index.js +31 -0
  99. package/lib-next/theme/TagsListInline/styles.module.css +15 -0
  100. package/lib-next/theme/ThemeProvider/index.js +10 -7
  101. package/lib-next/theme/ThemedImage/index.js +5 -5
  102. package/lib-next/theme/Toggle/index.js +34 -37
  103. package/lib-next/theme/Toggle/styles.module.css +91 -3
  104. package/lib-next/theme/UserPreferencesProvider/index.js +9 -6
  105. package/lib-next/theme/hooks/useHideableNavbar.js +31 -44
  106. package/lib-next/theme/hooks/useTheme.js +4 -5
  107. package/lib-next/theme/hooks/useWindowSize.js +34 -20
  108. package/lib-next/theme/prism-include-languages.js +2 -1
  109. package/package.json +27 -25
  110. package/src/admonitions.css +35 -0
  111. package/src/deps.d.ts +13 -0
  112. package/src/index.ts +23 -20
  113. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  114. package/src/theme/Admonition/index.tsx +106 -0
  115. package/src/theme/AnnouncementBar/index.tsx +8 -12
  116. package/src/theme/AnnouncementBar/styles.module.css +23 -32
  117. package/src/theme/BackToTopButton/index.tsx +142 -0
  118. package/src/theme/BackToTopButton/styles.module.css +42 -0
  119. package/src/theme/BlogArchivePage/index.tsx +91 -0
  120. package/src/theme/BlogLayout/index.tsx +44 -0
  121. package/src/theme/BlogListPage/index.tsx +18 -25
  122. package/src/theme/BlogPostAuthor/index.tsx +49 -0
  123. package/{lib/theme/IconEdit → src/theme/BlogPostAuthor}/styles.module.css +4 -3
  124. package/src/theme/BlogPostAuthors/index.tsx +39 -0
  125. package/src/theme/BlogPostAuthors/styles.module.css +11 -0
  126. package/src/theme/BlogPostItem/index.tsx +70 -80
  127. package/src/theme/BlogPostPage/index.tsx +72 -35
  128. package/src/theme/BlogSidebar/index.tsx +11 -13
  129. package/src/theme/BlogSidebar/styles.module.css +2 -2
  130. package/src/theme/BlogTagsListPage/index.tsx +14 -57
  131. package/src/theme/BlogTagsPostsPage/index.tsx +29 -39
  132. package/src/theme/CodeBlock/index.tsx +27 -151
  133. package/src/theme/CodeBlock/styles.module.css +12 -9
  134. package/src/theme/Details/index.tsx +24 -0
  135. package/src/theme/Details/styles.module.css +13 -0
  136. package/src/theme/DocCard/index.tsx +100 -0
  137. package/src/theme/DocCard/styles.module.css +43 -0
  138. package/src/theme/DocCardList/index.tsx +27 -0
  139. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +53 -0
  140. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  141. package/src/theme/DocItem/index.tsx +43 -51
  142. package/src/theme/DocItem/styles.module.css +5 -9
  143. package/src/theme/DocItemFooter/index.tsx +91 -0
  144. package/{lib/theme/BlogPostItem → src/theme/DocItemFooter}/styles.module.css +8 -8
  145. package/src/theme/DocPage/index.tsx +44 -42
  146. package/src/theme/DocPage/styles.module.css +5 -6
  147. package/src/theme/DocPaginator/index.tsx +5 -33
  148. package/src/theme/DocPaginatorNavLink/index.tsx +38 -0
  149. package/src/theme/DocSidebar/index.tsx +76 -297
  150. package/src/theme/DocSidebar/styles.module.css +0 -18
  151. package/src/theme/DocSidebarItem/index.tsx +242 -0
  152. package/{lib/theme/Footer → src/theme/DocSidebarItem}/styles.module.css +10 -6
  153. package/src/theme/DocTagDocListPage/index.tsx +89 -0
  154. package/src/theme/DocTagsListPage/index.tsx +41 -0
  155. package/src/theme/DocVersionBadge/index.tsx +30 -0
  156. package/src/theme/DocVersionBanner/index.tsx +48 -21
  157. package/src/theme/EditThisPage/index.tsx +6 -1
  158. package/src/theme/ErrorPageContent.tsx +41 -0
  159. package/src/theme/Footer/index.tsx +113 -43
  160. package/src/theme/Heading/index.tsx +24 -31
  161. package/src/theme/Heading/styles.css +5 -6
  162. package/src/theme/Heading/styles.module.css +9 -5
  163. package/src/theme/IconArrow/index.tsx +2 -2
  164. package/src/theme/IconClose/index.tsx +26 -0
  165. package/src/theme/IconEdit/index.tsx +2 -2
  166. package/src/theme/IconExternalLink/index.tsx +2 -5
  167. package/src/theme/IconLanguage/index.tsx +2 -6
  168. package/src/theme/IconMenu/index.tsx +3 -3
  169. package/src/theme/LastUpdated/index.tsx +3 -2
  170. package/src/theme/Layout/index.tsx +3 -1
  171. package/src/theme/LayoutHead/index.tsx +18 -17
  172. package/src/theme/LayoutProviders/index.tsx +9 -3
  173. package/src/theme/Logo/index.tsx +21 -17
  174. package/src/theme/MDXComponents/index.tsx +39 -5
  175. package/src/theme/MDXComponents/styles.css +11 -0
  176. package/src/theme/MDXPage/index.tsx +10 -2
  177. package/src/theme/Navbar/index.tsx +203 -61
  178. package/src/theme/Navbar/styles.module.css +10 -3
  179. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -154
  180. package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -16
  181. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
  182. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  183. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +180 -0
  184. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -9
  185. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  186. package/src/theme/NavbarItem/index.tsx +41 -16
  187. package/src/theme/{SearchMetadatas → SearchMetadata}/index.tsx +2 -2
  188. package/src/theme/Seo/index.tsx +7 -4
  189. package/src/theme/SkipToContent/index.tsx +5 -2
  190. package/src/theme/TOC/index.tsx +12 -41
  191. package/src/theme/TOC/styles.module.css +1 -1
  192. package/src/theme/TOCCollapsible/index.tsx +58 -0
  193. package/src/theme/TOCCollapsible/styles.module.css +50 -0
  194. package/src/theme/TOCInline/index.tsx +13 -32
  195. package/src/theme/TOCItems/index.tsx +96 -0
  196. package/src/theme/Tabs/index.tsx +110 -54
  197. package/src/theme/Tabs/styles.module.css +0 -13
  198. package/src/theme/Tag/index.tsx +31 -0
  199. package/src/theme/Tag/styles.module.css +70 -0
  200. package/src/theme/TagsListByLetter/index.tsx +45 -0
  201. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  202. package/src/theme/TagsListInline/index.tsx +35 -0
  203. package/src/theme/TagsListInline/styles.module.css +15 -0
  204. package/src/theme/ThemeProvider/index.tsx +6 -2
  205. package/src/theme/ThemedImage/index.tsx +5 -5
  206. package/src/theme/Toggle/index.tsx +36 -43
  207. package/src/theme/Toggle/styles.module.css +91 -3
  208. package/src/theme/UserPreferencesProvider/index.tsx +9 -6
  209. package/src/theme/hooks/useHideableNavbar.ts +32 -45
  210. package/src/theme/hooks/useTabGroupChoice.ts +2 -2
  211. package/src/theme/hooks/useTheme.ts +4 -5
  212. package/src/theme/hooks/useWindowSize.ts +38 -20
  213. package/src/theme/prism-include-languages.ts +3 -2
  214. package/src/theme-classic.d.ts +822 -0
  215. package/src/translations.ts +41 -23
  216. package/src/types.d.ts +0 -587
  217. package/src/{validateThemeConfig.js → validateThemeConfig.ts} +160 -98
  218. package/babel.config.js +0 -35
  219. package/codeTranslations/README.md +0 -20
  220. package/codeTranslations/ar.json +0 -57
  221. package/codeTranslations/base.json +0 -112
  222. package/codeTranslations/bn.json +0 -56
  223. package/codeTranslations/da.json +0 -57
  224. package/codeTranslations/de.json +0 -57
  225. package/codeTranslations/es.json +0 -57
  226. package/codeTranslations/fa.json +0 -57
  227. package/codeTranslations/fil.json +0 -57
  228. package/codeTranslations/fr.json +0 -57
  229. package/codeTranslations/he.json +0 -57
  230. package/codeTranslations/hi.json +0 -57
  231. package/codeTranslations/ja.json +0 -57
  232. package/codeTranslations/ko.json +0 -57
  233. package/codeTranslations/pl.json +0 -57
  234. package/codeTranslations/pt-BR.json +0 -57
  235. package/codeTranslations/pt-PT.json +0 -57
  236. package/codeTranslations/ru.json +0 -57
  237. package/codeTranslations/tr.json +0 -57
  238. package/codeTranslations/vi.json +0 -57
  239. package/codeTranslations/zh-Hans.json +0 -57
  240. package/codeTranslations/zh-Hant.json +0 -57
  241. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  242. package/lib/__tests__/translations.test.js +0 -112
  243. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  244. package/lib/theme/AnnouncementBar/index.js +0 -72
  245. package/lib/theme/AnnouncementBar/styles.module.css +0 -72
  246. package/lib/theme/BlogListPage/index.js +0 -71
  247. package/lib/theme/BlogListPaginator/index.js +0 -63
  248. package/lib/theme/BlogPostItem/index.js +0 -161
  249. package/lib/theme/BlogPostPage/index.js +0 -69
  250. package/lib/theme/BlogPostPaginator/index.js +0 -64
  251. package/lib/theme/BlogSidebar/index.js +0 -51
  252. package/lib/theme/BlogSidebar/styles.module.css +0 -44
  253. package/lib/theme/BlogTagsListPage/index.js +0 -76
  254. package/lib/theme/BlogTagsPostsPage/index.js +0 -100
  255. package/lib/theme/CodeBlock/index.js +0 -253
  256. package/lib/theme/CodeBlock/styles.module.css +0 -68
  257. package/lib/theme/DocItem/index.js +0 -129
  258. package/lib/theme/DocPage/index.js +0 -173
  259. package/lib/theme/DocPage/styles.module.css +0 -86
  260. package/lib/theme/DocPaginator/index.js +0 -63
  261. package/lib/theme/DocSidebar/index.js +0 -306
  262. package/lib/theme/DocSidebar/styles.module.css +0 -124
  263. package/lib/theme/DocVersionBanner/index.js +0 -128
  264. package/lib/theme/EditThisPage/index.js +0 -31
  265. package/lib/theme/Footer/index.js +0 -108
  266. package/lib/theme/Heading/index.js +0 -76
  267. package/lib/theme/Heading/styles.css +0 -23
  268. package/lib/theme/Heading/styles.module.css +0 -15
  269. package/lib/theme/IconArrow/index.js +0 -28
  270. package/lib/theme/IconEdit/index.js +0 -34
  271. package/lib/theme/IconExternalLink/index.js +0 -30
  272. package/lib/theme/IconLanguage/index.js +0 -29
  273. package/lib/theme/IconMenu/index.js +0 -30
  274. package/lib/theme/LastUpdated/index.js +0 -61
  275. package/lib/theme/Layout/index.js +0 -64
  276. package/lib/theme/Layout/styles.css +0 -27
  277. package/lib/theme/LayoutHead/index.js +0 -144
  278. package/lib/theme/LayoutProviders/index.js +0 -36
  279. package/lib/theme/Logo/index.js +0 -60
  280. package/lib/theme/MDXComponents/index.js +0 -65
  281. package/lib/theme/MDXPage/index.js +0 -66
  282. package/lib/theme/Navbar/index.js +0 -147
  283. package/lib/theme/Navbar/styles.module.css +0 -20
  284. package/lib/theme/NavbarItem/DefaultNavbarItem.js +0 -209
  285. package/lib/theme/NavbarItem/DocNavbarItem.js +0 -63
  286. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -76
  287. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +0 -43
  288. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  289. package/lib/theme/NavbarItem/SearchNavbarItem.js +0 -28
  290. package/lib/theme/NavbarItem/index.js +0 -54
  291. package/lib/theme/NotFound.js +0 -57
  292. package/lib/theme/SearchBar.js +0 -15
  293. package/lib/theme/SearchMetadatas/index.js +0 -33
  294. package/lib/theme/Seo/index.js +0 -49
  295. package/lib/theme/SkipToContent/index.js +0 -63
  296. package/lib/theme/SkipToContent/styles.module.css +0 -14
  297. package/lib/theme/TOC/index.js +0 -59
  298. package/lib/theme/TOC/styles.module.css +0 -23
  299. package/lib/theme/TOCInline/index.js +0 -53
  300. package/lib/theme/TOCInline/styles.module.css +0 -12
  301. package/lib/theme/TabItem/index.js +0 -32
  302. package/lib/theme/Tabs/index.js +0 -150
  303. package/lib/theme/Tabs/styles.module.css +0 -23
  304. package/lib/theme/ThemeContext.js +0 -21
  305. package/lib/theme/ThemeProvider/index.js +0 -38
  306. package/lib/theme/ThemedImage/index.js +0 -49
  307. package/lib/theme/Toggle/index.js +0 -94
  308. package/lib/theme/Toggle/styles.css +0 -103
  309. package/lib/theme/Toggle/styles.module.css +0 -17
  310. package/lib/theme/UserPreferencesContext.js +0 -18
  311. package/lib/theme/UserPreferencesProvider/index.js +0 -36
  312. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  313. package/lib/theme/hooks/useDocs.js +0 -18
  314. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  315. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  316. package/lib/theme/hooks/useLocationHash.js +0 -28
  317. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  318. package/lib/theme/hooks/usePrismTheme.js +0 -36
  319. package/lib/theme/hooks/useScrollPosition.js +0 -49
  320. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  321. package/lib/theme/hooks/useTabGroupChoice.js +0 -51
  322. package/lib/theme/hooks/useTheme.js +0 -99
  323. package/lib/theme/hooks/useThemeContext.js +0 -31
  324. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  325. package/lib/theme/hooks/useWindowSize.js +0 -55
  326. package/lib/theme/prism-include-languages.js +0 -39
  327. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  328. package/lib-next/__tests__/translations.test.js +0 -128
  329. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  330. package/lib-next/index.js +0 -221
  331. package/lib-next/theme/Toggle/styles.css +0 -103
  332. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  333. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  334. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  335. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  336. package/lib-next/translations.js +0 -145
  337. package/lib-next/validateThemeConfig.js +0 -317
  338. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  339. package/src/__tests__/translations.test.ts +0 -116
  340. package/src/__tests__/validateThemeConfig.test.js +0 -333
  341. package/src/prism-include-languages.js +0 -11
  342. package/src/theme/Toggle/styles.css +0 -103
  343. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  344. package/src/theme/hooks/useLocationHash.ts +0 -25
  345. package/src/theme/hooks/useScrollPosition.ts +0 -45
  346. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  347. package/tsconfig.json +0 -12
  348. package/update-code-translations.js +0 -240
  349. package/update-code-translations.test.js +0 -33
@@ -1,116 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`getTranslationFiles should return translation files matching snapshot 1`] = `
4
- Array [
5
- Object {
6
- "content": Object {
7
- "item.label.Dropdown": Object {
8
- "description": "Navbar item with label Dropdown",
9
- "message": "Dropdown",
10
- },
11
- "item.label.Dropdown item 1": Object {
12
- "description": "Navbar item with label Dropdown item 1",
13
- "message": "Dropdown item 1",
14
- },
15
- "item.label.Dropdown item 2": Object {
16
- "description": "Navbar item with label Dropdown item 2",
17
- "message": "Dropdown item 2",
18
- },
19
- "title": Object {
20
- "description": "The title in the navbar",
21
- "message": "navbar title",
22
- },
23
- },
24
- "path": "navbar",
25
- },
26
- Object {
27
- "content": Object {
28
- "copyright": Object {
29
- "description": "The footer copyright",
30
- "message": "Copyright FB",
31
- },
32
- "link.item.label.Link 1": Object {
33
- "description": "The label of footer link with label=Link 1 linking to https://facebook.com",
34
- "message": "Link 1",
35
- },
36
- "link.item.label.Link 2": Object {
37
- "description": "The label of footer link with label=Link 2 linking to https://facebook.com",
38
- "message": "Link 2",
39
- },
40
- "link.item.label.Link 3": Object {
41
- "description": "The label of footer link with label=Link 3 linking to https://facebook.com",
42
- "message": "Link 3",
43
- },
44
- "link.title.Footer link column 1": Object {
45
- "description": "The title of the footer links column with title=Footer link column 1 in the footer",
46
- "message": "Footer link column 1",
47
- },
48
- "link.title.Footer link column 2": Object {
49
- "description": "The title of the footer links column with title=Footer link column 2 in the footer",
50
- "message": "Footer link column 2",
51
- },
52
- },
53
- "path": "footer",
54
- },
55
- ]
56
- `;
57
-
58
- exports[`translateThemeConfig should return translated themeConfig matching snapshot 1`] = `
59
- Object {
60
- "announcementBar": Object {},
61
- "colorMode": Object {},
62
- "docs": Object {
63
- "versionPersistence": "none",
64
- },
65
- "footer": Object {
66
- "copyright": "Copyright FB (translated)",
67
- "links": Array [
68
- Object {
69
- "items": Array [
70
- Object {
71
- "label": "Link 1 (translated)",
72
- "to": "https://facebook.com",
73
- },
74
- Object {
75
- "label": "Link 2 (translated)",
76
- "to": "https://facebook.com",
77
- },
78
- ],
79
- "title": "Footer link column 1 (translated)",
80
- },
81
- Object {
82
- "items": Array [
83
- Object {
84
- "label": "Link 3 (translated)",
85
- "to": "https://facebook.com",
86
- },
87
- ],
88
- "title": "Footer link column 2 (translated)",
89
- },
90
- ],
91
- "style": "light",
92
- },
93
- "hideableSidebar": true,
94
- "navbar": Object {
95
- "hideOnScroll": false,
96
- "items": Array [
97
- Object {
98
- "items": Array [
99
- Object {
100
- "items": Array [],
101
- "label": "Dropdown item 1 (translated)",
102
- },
103
- Object {
104
- "items": Array [],
105
- "label": "Dropdown item 2 (translated)",
106
- },
107
- ],
108
- "label": "Dropdown (translated)",
109
- },
110
- ],
111
- "style": "dark",
112
- "title": "navbar title (translated)",
113
- },
114
- "prism": Object {},
115
- }
116
- `;
@@ -1,112 +0,0 @@
1
- "use strict";
2
-
3
- var _translations = require("../translations");
4
-
5
- var _utils = require("@docusaurus/utils");
6
-
7
- /**
8
- * Copyright (c) Facebook, Inc. and its affiliates.
9
- *
10
- * This source code is licensed under the MIT license found in the
11
- * LICENSE file in the root directory of this source tree.
12
- */
13
- const ThemeConfigSample = {
14
- colorMode: {},
15
- announcementBar: {},
16
- prism: {},
17
- docs: {
18
- versionPersistence: 'none'
19
- },
20
- hideableSidebar: true,
21
- navbar: {
22
- title: 'navbar title',
23
- style: 'dark',
24
- hideOnScroll: false,
25
- items: [{
26
- label: 'Dropdown',
27
- items: [{
28
- label: 'Dropdown item 1',
29
- items: []
30
- }, {
31
- label: 'Dropdown item 2',
32
- items: []
33
- }]
34
- }]
35
- },
36
- footer: {
37
- copyright: 'Copyright FB',
38
- style: 'light',
39
- links: [{
40
- title: 'Footer link column 1',
41
- items: [{
42
- label: 'Link 1',
43
- to: 'https://facebook.com'
44
- }, {
45
- label: 'Link 2',
46
- to: 'https://facebook.com'
47
- }]
48
- }, {
49
- title: 'Footer link column 2',
50
- items: [{
51
- label: 'Link 3',
52
- to: 'https://facebook.com'
53
- }]
54
- }]
55
- }
56
- };
57
-
58
- function getSampleTranslationFiles() {
59
- return (0, _translations.getTranslationFiles)({
60
- themeConfig: ThemeConfigSample
61
- });
62
- }
63
-
64
- function getSampleTranslationFilesTranslated() {
65
- const translationFiles = getSampleTranslationFiles();
66
- return translationFiles.map(translationFile => (0, _utils.updateTranslationFileMessages)(translationFile, message => `${message} (translated)`));
67
- }
68
-
69
- describe('getTranslationFiles', () => {
70
- test('should return translation files matching snapshot', () => {
71
- expect(getSampleTranslationFiles()).toMatchSnapshot();
72
- });
73
- });
74
- describe('translateThemeConfig', () => {
75
- test('should not translate anything if translation files are untranslated', () => {
76
- const translationFiles = getSampleTranslationFiles();
77
- expect((0, _translations.translateThemeConfig)({
78
- themeConfig: ThemeConfigSample,
79
- translationFiles
80
- })).toEqual(ThemeConfigSample);
81
- });
82
- test('should return translated themeConfig matching snapshot', () => {
83
- const translationFiles = getSampleTranslationFilesTranslated();
84
- expect((0, _translations.translateThemeConfig)({
85
- themeConfig: ThemeConfigSample,
86
- translationFiles
87
- })).toMatchSnapshot();
88
- });
89
- });
90
- describe('getTranslationFiles and translateThemeConfig isomorphism', () => {
91
- function verifyIsomorphism(themeConfig) {
92
- const translationFiles = (0, _translations.getTranslationFiles)({
93
- themeConfig
94
- });
95
- const translatedThemeConfig = (0, _translations.translateThemeConfig)({
96
- themeConfig,
97
- translationFiles
98
- });
99
- expect(translatedThemeConfig).toEqual(themeConfig);
100
- }
101
-
102
- test('should be verified for main sample', () => {
103
- verifyIsomorphism(ThemeConfigSample);
104
- }); // undefined footer should not make the translation code crash
105
- // See https://github.com/facebook/docusaurus/issues/3936
106
-
107
- test('should be verified for sample without footer', () => {
108
- verifyIsomorphism({ ...ThemeConfigSample,
109
- footer: undefined
110
- });
111
- });
112
- });
@@ -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,72 +0,0 @@
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 _clsx = _interopRequireDefault(require("clsx"));
11
-
12
- var _themeCommon = require("@docusaurus/theme-common");
13
-
14
- var _Translate = require("@docusaurus/Translate");
15
-
16
- var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- /**
21
- * Copyright (c) Facebook, Inc. and its affiliates.
22
- *
23
- * This source code is licensed under the MIT license found in the
24
- * LICENSE file in the root directory of this source tree.
25
- */
26
- function AnnouncementBar() {
27
- const {
28
- isClosed,
29
- close
30
- } = (0, _themeCommon.useAnnouncementBar)();
31
- const {
32
- announcementBar
33
- } = (0, _themeCommon.useThemeConfig)();
34
-
35
- if (!announcementBar) {
36
- return null;
37
- }
38
-
39
- const {
40
- content,
41
- backgroundColor,
42
- textColor,
43
- isCloseable
44
- } = announcementBar;
45
-
46
- if (!content || isCloseable && isClosed) {
47
- return null;
48
- }
49
-
50
- return <div className={_stylesModule.default.announcementBar} style={{
51
- backgroundColor,
52
- color: textColor
53
- }} role="banner">
54
- <div className={(0, _clsx.default)(_stylesModule.default.announcementBarContent, {
55
- [_stylesModule.default.announcementBarCloseable]: isCloseable
56
- })} // Developer provided the HTML, so assume it's safe.
57
- // eslint-disable-next-line react/no-danger
58
- dangerouslySetInnerHTML={{
59
- __html: content
60
- }} />
61
- {isCloseable ? <button type="button" className={(0, _clsx.default)(_stylesModule.default.announcementBarClose, 'clean-btn')} onClick={close} aria-label={(0, _Translate.translate)({
62
- id: 'theme.AnnouncementBar.closeButtonAriaLabel',
63
- message: 'Close',
64
- description: 'The ARIA label for close button of announcement bar'
65
- })}>
66
- <span aria-hidden="true">×</span>
67
- </button> : null}
68
- </div>;
69
- }
70
-
71
- var _default = AnnouncementBar;
72
- exports.default = _default;
@@ -1,72 +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
- :root {
9
- --docusaurus-announcement-bar-height: auto;
10
- }
11
-
12
- .announcementBar {
13
- position: relative;
14
- width: 100%;
15
- height: var(--docusaurus-announcement-bar-height);
16
- background-color: var(--ifm-color-white);
17
- color: var(--ifm-color-black);
18
- border-bottom: 1px solid var(--ifm-color-emphasis-100);
19
- }
20
-
21
- html[data-announcement-bar-initially-dismissed='true'] .announcementBar {
22
- display: none;
23
- }
24
-
25
- @media print {
26
- .announcementBar {
27
- display: none;
28
- }
29
- }
30
-
31
- @media screen and (min-width: 1024px) {
32
- :root {
33
- --docusaurus-announcement-bar-height: 30px;
34
- }
35
- }
36
-
37
- .announcementBarClose {
38
- position: absolute;
39
- right: 0;
40
- top: 0;
41
- width: 55px;
42
- font-size: 1.25rem;
43
- height: 100%;
44
- }
45
-
46
- .announcementBarContent {
47
- font-size: 85%;
48
- width: 100%;
49
- text-align: center;
50
- padding: 5px 0;
51
- }
52
-
53
- .announcementBarCloseable {
54
- margin-right: 55px;
55
- }
56
-
57
- @media screen and (max-width: 576px) {
58
- .announcementBarClose {
59
- width: 35px;
60
- }
61
- .announcementBarContent {
62
- width: auto;
63
- }
64
- .announcementBarCloseable {
65
- margin-right: 35px;
66
- }
67
- }
68
-
69
- .announcementBarContent a {
70
- color: inherit;
71
- text-decoration: underline;
72
- }