@docusaurus/theme-classic 2.0.0-beta.15d451942 → 2.0.0-beta.18

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 (488) hide show
  1. package/README.md +2 -2
  2. package/lib/admonitions.css +35 -0
  3. package/lib/deps.d.ts +13 -0
  4. package/lib/getSwizzleConfig.js +236 -0
  5. package/lib/index.js +63 -52
  6. package/lib/prism-include-languages.js +9 -5
  7. package/lib/theme-classic.d.ts +997 -0
  8. package/lib/translations.js +52 -36
  9. package/lib/types.d.ts +0 -589
  10. package/lib/validateThemeConfig.js +242 -250
  11. package/lib-next/theme/Admonition/index.js +101 -0
  12. package/lib-next/theme/AnnouncementBar/index.js +10 -22
  13. package/lib-next/theme/AnnouncementBar/styles.module.css +26 -35
  14. package/lib-next/theme/BackToTopButton/index.js +129 -0
  15. package/lib-next/theme/BackToTopButton/styles.module.css +44 -0
  16. package/lib-next/theme/BlogArchivePage/index.js +84 -0
  17. package/lib-next/theme/BlogLayout/index.js +37 -0
  18. package/lib-next/theme/BlogListPage/index.js +45 -35
  19. package/lib-next/theme/BlogListPaginator/index.js +13 -16
  20. package/lib-next/theme/BlogPostAuthor/index.js +52 -0
  21. package/lib-next/theme/BlogPostAuthor/styles.module.css +12 -0
  22. package/lib-next/theme/BlogPostAuthors/index.js +44 -0
  23. package/lib-next/theme/BlogPostAuthors/styles.module.css +21 -0
  24. package/lib-next/theme/BlogPostItem/index.js +112 -97
  25. package/lib-next/theme/BlogPostItem/styles.module.css +5 -1
  26. package/lib-next/theme/BlogPostPage/index.js +84 -41
  27. package/lib-next/theme/BlogPostPaginator/index.js +13 -20
  28. package/lib-next/theme/BlogSidebar/index.js +23 -16
  29. package/lib-next/theme/BlogSidebar/styles.module.css +8 -8
  30. package/lib-next/theme/BlogTagsListPage/index.js +24 -70
  31. package/lib-next/theme/BlogTagsPostsPage/index.js +57 -62
  32. package/lib-next/theme/CodeBlock/CopyButton/index.js +60 -0
  33. package/lib-next/theme/CodeBlock/CopyButton/styles.module.css +66 -0
  34. package/lib-next/theme/CodeBlock/index.js +74 -195
  35. package/lib-next/theme/CodeBlock/styles.module.css +13 -28
  36. package/lib-next/theme/ColorModeToggle/index.js +62 -0
  37. package/lib-next/theme/ColorModeToggle/styles.module.css +35 -0
  38. package/lib-next/theme/Details/index.js +21 -0
  39. package/lib-next/theme/Details/styles.module.css +13 -0
  40. package/lib-next/theme/DocBreadcrumbs/index.js +93 -0
  41. package/{lib/theme/Heading → lib-next/theme/DocBreadcrumbs}/styles.module.css +3 -2
  42. package/lib-next/theme/DocCard/index.js +93 -0
  43. package/lib-next/theme/DocCard/styles.module.css +34 -0
  44. package/lib-next/theme/DocCardList/index.js +31 -0
  45. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +75 -0
  46. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  47. package/lib-next/theme/DocItem/index.js +99 -86
  48. package/lib-next/theme/DocItem/styles.module.css +7 -13
  49. package/lib-next/theme/DocItemFooter/index.js +79 -0
  50. package/{lib/theme/Layout/styles.css → lib-next/theme/DocItemFooter/styles.module.css} +8 -11
  51. package/lib-next/theme/DocPage/index.js +124 -99
  52. package/lib-next/theme/DocPage/styles.module.css +14 -30
  53. package/lib-next/theme/DocPaginator/index.js +16 -25
  54. package/lib-next/theme/DocSidebar/Desktop/CollapseButton/index.js +34 -0
  55. package/lib-next/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +44 -0
  56. package/lib-next/theme/DocSidebar/Desktop/Content/index.js +46 -0
  57. package/{lib/theme/Footer → lib-next/theme/DocSidebar/Desktop/Content}/styles.module.css +8 -6
  58. package/lib-next/theme/DocSidebar/Desktop/index.js +34 -0
  59. package/lib-next/theme/DocSidebar/Desktop/styles.module.css +50 -0
  60. package/lib-next/theme/DocSidebar/Mobile/index.js +49 -0
  61. package/lib-next/theme/DocSidebar/index.js +13 -333
  62. package/lib-next/theme/DocSidebarItem/index.js +265 -0
  63. package/lib-next/theme/DocSidebarItem/styles.module.css +17 -0
  64. package/lib-next/theme/DocSidebarItems/index.js +28 -0
  65. package/lib-next/theme/DocTagDocListPage/index.js +96 -0
  66. package/lib-next/theme/DocTagsListPage/index.js +40 -0
  67. package/lib-next/theme/DocVersionBadge/index.js +34 -0
  68. package/lib-next/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +54 -36
  69. package/lib-next/theme/EditThisPage/index.js +6 -1
  70. package/lib-next/theme/ErrorPageContent.js +35 -0
  71. package/lib-next/theme/Footer/Copyright/index.js +18 -0
  72. package/lib-next/theme/Footer/Layout/index.js +26 -0
  73. package/lib-next/theme/Footer/LinkItem/index.js +33 -0
  74. package/lib-next/theme/Footer/Links/MultiColumn/index.js +47 -0
  75. package/lib-next/theme/Footer/Links/Simple/index.js +41 -0
  76. package/lib-next/theme/Footer/Links/index.js +17 -0
  77. package/lib-next/theme/Footer/Logo/index.js +38 -0
  78. package/{src/theme/Footer → lib-next/theme/Footer/Logo}/styles.module.css +2 -1
  79. package/lib-next/theme/Footer/index.js +12 -100
  80. package/lib-next/theme/Heading/index.js +42 -33
  81. package/lib-next/theme/Heading/styles.module.css +27 -2
  82. package/lib-next/theme/IconArrow/index.js +3 -6
  83. package/lib-next/theme/IconClose/index.js +23 -0
  84. package/lib-next/theme/IconDarkMode/index.js +17 -0
  85. package/lib-next/theme/IconEdit/index.js +5 -10
  86. package/lib-next/theme/IconExternalLink/index.js +23 -0
  87. package/lib-next/theme/{LastUpdated → IconExternalLink}/styles.module.css +2 -2
  88. package/lib-next/theme/IconLanguage/index.js +5 -8
  89. package/lib-next/theme/IconLightMode/index.js +17 -0
  90. package/lib-next/theme/IconMenu/index.js +8 -9
  91. package/lib-next/theme/LastUpdated/index.js +35 -39
  92. package/lib-next/theme/Layout/index.js +19 -16
  93. package/lib-next/theme/Layout/styles.css +6 -0
  94. package/lib-next/theme/LayoutProviders/index.js +22 -10
  95. package/lib-next/theme/Logo/index.js +21 -16
  96. package/lib-next/theme/{ThemeContext.js → MDXComponents/A.js} +4 -2
  97. package/lib-next/theme/MDXComponents/Code.js +28 -0
  98. package/lib-next/theme/MDXComponents/Details.js +20 -0
  99. package/lib-next/theme/MDXComponents/Head.js +26 -0
  100. package/lib-next/theme/{hooks/styles.css → MDXComponents/Heading.js} +4 -3
  101. package/lib-next/theme/MDXComponents/Img.js +24 -0
  102. package/{lib/theme/LastUpdated/styles.module.css → lib-next/theme/MDXComponents/Img.module.css} +2 -2
  103. package/lib-next/theme/MDXComponents/Pre.js +18 -0
  104. package/lib-next/theme/MDXComponents/Ul.js +23 -0
  105. package/lib-next/theme/MDXComponents/Ul.module.css +11 -0
  106. package/lib-next/theme/MDXComponents/index.js +22 -42
  107. package/lib-next/theme/MDXContent/index.js +12 -0
  108. package/lib-next/theme/MDXPage/index.js +38 -39
  109. package/{lib/theme/IconEdit → lib-next/theme/MDXPage}/styles.module.css +2 -3
  110. package/lib-next/theme/Navbar/ColorModeToggle/index.js +25 -0
  111. package/lib-next/theme/Navbar/Content/index.js +70 -0
  112. package/lib-next/theme/Navbar/Content/styles.module.css +15 -0
  113. package/lib-next/theme/Navbar/Layout/index.js +54 -0
  114. package/{src/theme/Navbar → lib-next/theme/Navbar/Layout}/styles.module.css +1 -7
  115. package/lib-next/theme/Navbar/Logo/index.js +17 -0
  116. package/lib-next/theme/Navbar/MobileSidebar/Header/index.js +33 -0
  117. package/lib-next/theme/Navbar/MobileSidebar/Layout/index.js +28 -0
  118. package/lib-next/theme/Navbar/MobileSidebar/PrimaryMenu/index.js +33 -0
  119. package/lib-next/theme/Navbar/MobileSidebar/SecondaryMenu/index.js +36 -0
  120. package/lib-next/theme/Navbar/MobileSidebar/Toggle/index.js +23 -0
  121. package/lib-next/theme/Navbar/MobileSidebar/index.js +31 -0
  122. package/lib-next/theme/Navbar/index.js +7 -137
  123. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +33 -186
  124. package/lib-next/theme/NavbarItem/DocNavbarItem.js +31 -14
  125. package/lib-next/theme/NavbarItem/DocSidebarNavbarItem.js +73 -0
  126. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +38 -24
  127. package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +4 -1
  128. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +164 -0
  129. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +12 -13
  130. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  131. package/lib-next/theme/NavbarItem/NavbarNavLink.js +66 -0
  132. package/lib-next/theme/NavbarItem/index.js +27 -15
  133. package/lib-next/theme/{UserPreferencesContext.js → NavbarItem/utils.js} +3 -3
  134. package/lib-next/theme/NotFound.js +40 -34
  135. package/lib-next/theme/PaginatorNavLink/index.js +17 -0
  136. package/lib-next/theme/SearchBar.js +1 -1
  137. package/lib-next/theme/SearchMetadata/index.js +34 -0
  138. package/lib-next/theme/{LayoutHead → SiteMetadata}/index.js +25 -45
  139. package/lib-next/theme/SkipToContent/index.js +9 -8
  140. package/lib-next/theme/SkipToContent/styles.module.css +8 -3
  141. package/lib-next/theme/TOC/index.js +12 -39
  142. package/lib-next/theme/TOC/styles.module.css +2 -2
  143. package/lib-next/theme/TOCCollapsible/index.js +52 -0
  144. package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
  145. package/lib-next/theme/TOCInline/index.js +10 -31
  146. package/lib-next/theme/TOCItems/index.js +85 -0
  147. package/lib-next/theme/TabItem/index.js +1 -4
  148. package/lib-next/theme/Tabs/__tests__/index.test.js +146 -0
  149. package/lib-next/theme/Tabs/index.js +108 -50
  150. package/lib-next/theme/Tabs/styles.module.css +0 -13
  151. package/lib-next/theme/Tag/index.js +24 -0
  152. package/lib-next/theme/Tag/styles.module.css +70 -0
  153. package/lib-next/theme/TagsListByLetter/index.js +40 -0
  154. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  155. package/lib-next/theme/TagsListInline/index.js +31 -0
  156. package/{lib/theme/BlogPostItem → lib-next/theme/TagsListInline}/styles.module.css +5 -4
  157. package/lib-next/theme/ThemedImage/index.js +10 -14
  158. package/lib-next/theme/ThemedImage/styles.module.css +9 -2
  159. package/lib-next/theme/prism-include-languages.js +17 -15
  160. package/package.json +32 -31
  161. package/src/admonitions.css +35 -0
  162. package/src/deps.d.ts +13 -0
  163. package/src/getSwizzleConfig.ts +244 -0
  164. package/src/index.ts +72 -72
  165. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  166. package/src/theme/Admonition/index.tsx +106 -0
  167. package/src/theme/AnnouncementBar/index.tsx +11 -20
  168. package/src/theme/AnnouncementBar/styles.module.css +26 -35
  169. package/src/theme/BackToTopButton/index.tsx +141 -0
  170. package/src/theme/BackToTopButton/styles.module.css +44 -0
  171. package/src/theme/BlogArchivePage/index.tsx +92 -0
  172. package/src/theme/BlogLayout/index.tsx +42 -0
  173. package/src/theme/BlogListPage/index.tsx +45 -35
  174. package/src/theme/BlogListPaginator/index.tsx +13 -15
  175. package/src/theme/BlogPostAuthor/index.tsx +54 -0
  176. package/src/theme/BlogPostAuthor/styles.module.css +12 -0
  177. package/src/theme/BlogPostAuthors/index.tsx +49 -0
  178. package/src/theme/BlogPostAuthors/styles.module.css +21 -0
  179. package/src/theme/BlogPostItem/index.tsx +103 -93
  180. package/src/theme/BlogPostItem/styles.module.css +5 -1
  181. package/src/theme/BlogPostPage/index.tsx +84 -42
  182. package/src/theme/BlogPostPaginator/index.tsx +13 -19
  183. package/src/theme/BlogSidebar/index.tsx +23 -16
  184. package/src/theme/BlogSidebar/styles.module.css +8 -8
  185. package/src/theme/BlogTagsListPage/index.tsx +24 -70
  186. package/src/theme/BlogTagsPostsPage/index.tsx +54 -65
  187. package/src/theme/CodeBlock/CopyButton/index.tsx +66 -0
  188. package/src/theme/CodeBlock/CopyButton/styles.module.css +66 -0
  189. package/src/theme/CodeBlock/index.tsx +77 -196
  190. package/src/theme/CodeBlock/styles.module.css +13 -28
  191. package/src/theme/ColorModeToggle/index.tsx +67 -0
  192. package/src/theme/ColorModeToggle/styles.module.css +35 -0
  193. package/src/theme/Details/index.tsx +25 -0
  194. package/src/theme/Details/styles.module.css +13 -0
  195. package/src/theme/DocBreadcrumbs/index.tsx +110 -0
  196. package/src/theme/DocBreadcrumbs/styles.module.css +11 -0
  197. package/src/theme/DocCard/index.tsx +116 -0
  198. package/src/theme/DocCard/styles.module.css +34 -0
  199. package/src/theme/DocCardList/index.tsx +38 -0
  200. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +86 -0
  201. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  202. package/src/theme/DocItem/index.tsx +93 -79
  203. package/src/theme/DocItem/styles.module.css +7 -13
  204. package/src/theme/DocItemFooter/index.tsx +91 -0
  205. package/src/theme/DocItemFooter/styles.module.css +18 -0
  206. package/src/theme/DocPage/index.tsx +124 -101
  207. package/src/theme/DocPage/styles.module.css +14 -30
  208. package/src/theme/DocPaginator/index.tsx +16 -24
  209. package/src/theme/DocSidebar/Desktop/CollapseButton/index.tsx +38 -0
  210. package/src/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +44 -0
  211. package/src/theme/DocSidebar/Desktop/Content/index.tsx +55 -0
  212. package/src/theme/DocSidebar/Desktop/Content/styles.module.css +17 -0
  213. package/src/theme/DocSidebar/Desktop/index.tsx +38 -0
  214. package/src/theme/DocSidebar/Desktop/styles.module.css +50 -0
  215. package/src/theme/DocSidebar/Mobile/index.tsx +54 -0
  216. package/src/theme/DocSidebar/index.tsx +14 -343
  217. package/src/theme/DocSidebarItem/index.tsx +282 -0
  218. package/src/theme/DocSidebarItem/styles.module.css +17 -0
  219. package/src/theme/DocSidebarItems/index.tsx +32 -0
  220. package/src/theme/DocTagDocListPage/index.tsx +97 -0
  221. package/src/theme/DocTagsListPage/index.tsx +44 -0
  222. package/src/theme/DocVersionBadge/index.tsx +35 -0
  223. package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +76 -47
  224. package/src/theme/EditThisPage/index.tsx +6 -1
  225. package/src/theme/ErrorPageContent.tsx +41 -0
  226. package/src/theme/Footer/Copyright/index.tsx +20 -0
  227. package/src/theme/Footer/Layout/index.tsx +34 -0
  228. package/src/theme/Footer/LinkItem/index.tsx +36 -0
  229. package/src/theme/Footer/Links/MultiColumn/index.tsx +51 -0
  230. package/src/theme/Footer/Links/Simple/index.tsx +42 -0
  231. package/src/theme/Footer/Links/index.tsx +21 -0
  232. package/src/theme/Footer/Logo/index.tsx +41 -0
  233. package/{lib-next/theme/Footer → src/theme/Footer/Logo}/styles.module.css +2 -1
  234. package/src/theme/Footer/index.tsx +13 -113
  235. package/src/theme/Heading/index.tsx +43 -35
  236. package/src/theme/Heading/styles.module.css +27 -2
  237. package/src/theme/IconArrow/index.tsx +3 -5
  238. package/src/theme/IconClose/index.tsx +26 -0
  239. package/src/theme/IconDarkMode/index.tsx +20 -0
  240. package/src/theme/IconEdit/index.tsx +8 -9
  241. package/src/theme/IconExternalLink/index.tsx +30 -0
  242. package/src/theme/IconExternalLink/styles.module.css +10 -0
  243. package/src/theme/IconLanguage/index.tsx +6 -8
  244. package/src/theme/IconLightMode/index.tsx +20 -0
  245. package/src/theme/IconMenu/index.tsx +4 -9
  246. package/src/theme/LastUpdated/index.tsx +35 -39
  247. package/src/theme/Layout/index.tsx +19 -15
  248. package/src/theme/Layout/styles.css +6 -0
  249. package/src/theme/LayoutProviders/index.tsx +22 -10
  250. package/src/theme/Logo/index.tsx +21 -15
  251. package/src/theme/{ThemeContext.ts → MDXComponents/A.tsx} +5 -6
  252. package/src/theme/MDXComponents/Code.tsx +37 -0
  253. package/src/theme/MDXComponents/Details.tsx +26 -0
  254. package/src/theme/MDXComponents/Head.tsx +29 -0
  255. package/src/theme/MDXComponents/Heading.tsx +14 -0
  256. package/src/theme/{LastUpdated/styles.module.css → MDXComponents/Img.module.css} +2 -2
  257. package/src/theme/MDXComponents/Img.tsx +26 -0
  258. package/src/theme/MDXComponents/Pre.tsx +22 -0
  259. package/src/theme/MDXComponents/Ul.module.css +11 -0
  260. package/src/theme/MDXComponents/Ul.tsx +28 -0
  261. package/src/theme/MDXComponents/index.tsx +23 -42
  262. package/src/theme/MDXContent/index.tsx +15 -0
  263. package/src/theme/MDXPage/index.tsx +39 -39
  264. package/src/theme/MDXPage/styles.module.css +10 -0
  265. package/src/theme/Navbar/ColorModeToggle/index.tsx +30 -0
  266. package/src/theme/Navbar/Content/index.tsx +81 -0
  267. package/src/theme/Navbar/Content/styles.module.css +15 -0
  268. package/src/theme/Navbar/Layout/index.tsx +57 -0
  269. package/{lib/theme/Navbar → src/theme/Navbar/Layout}/styles.module.css +1 -7
  270. package/src/theme/Navbar/Logo/index.tsx +19 -0
  271. package/src/theme/Navbar/MobileSidebar/Header/index.tsx +34 -0
  272. package/src/theme/Navbar/MobileSidebar/Layout/index.tsx +31 -0
  273. package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +38 -0
  274. package/src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx +38 -0
  275. package/src/theme/Navbar/MobileSidebar/Toggle/index.tsx +25 -0
  276. package/src/theme/Navbar/MobileSidebar/index.tsx +33 -0
  277. package/src/theme/Navbar/index.tsx +7 -147
  278. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +37 -194
  279. package/src/theme/NavbarItem/DocNavbarItem.tsx +33 -15
  280. package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +84 -0
  281. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +44 -28
  282. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  283. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +190 -0
  284. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +17 -11
  285. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  286. package/src/theme/NavbarItem/NavbarNavLink.tsx +64 -0
  287. package/src/theme/NavbarItem/index.tsx +41 -19
  288. package/src/theme/NavbarItem/utils.ts +10 -0
  289. package/src/theme/NotFound.tsx +40 -33
  290. package/src/theme/PaginatorNavLink/index.tsx +20 -0
  291. package/src/theme/SearchBar.tsx +2 -1
  292. package/src/theme/SearchMetadata/index.tsx +43 -0
  293. package/src/theme/{LayoutHead → SiteMetadata}/index.tsx +25 -38
  294. package/src/theme/SkipToContent/index.tsx +9 -8
  295. package/src/theme/SkipToContent/styles.module.css +8 -3
  296. package/src/theme/TOC/index.tsx +13 -44
  297. package/src/theme/TOC/styles.module.css +2 -2
  298. package/src/theme/TOCCollapsible/index.tsx +56 -0
  299. package/src/theme/TOCCollapsible/styles.module.css +50 -0
  300. package/src/theme/TOCInline/index.tsx +14 -35
  301. package/src/theme/TOCItems/index.tsx +100 -0
  302. package/src/theme/TabItem/index.tsx +5 -3
  303. package/src/theme/Tabs/index.tsx +117 -59
  304. package/src/theme/Tabs/styles.module.css +0 -13
  305. package/src/theme/Tag/index.tsx +29 -0
  306. package/src/theme/Tag/styles.module.css +70 -0
  307. package/src/theme/TagsListByLetter/index.tsx +43 -0
  308. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  309. package/src/theme/TagsListInline/index.tsx +35 -0
  310. package/src/theme/TagsListInline/styles.module.css +15 -0
  311. package/src/theme/ThemedImage/index.tsx +12 -13
  312. package/src/theme/ThemedImage/styles.module.css +9 -2
  313. package/src/theme/prism-include-languages.ts +20 -15
  314. package/src/theme-classic.d.ts +997 -0
  315. package/src/translations.ts +84 -58
  316. package/src/types.d.ts +0 -589
  317. package/src/validateThemeConfig.ts +381 -0
  318. package/babel.config.js +0 -35
  319. package/codeTranslations/README.md +0 -20
  320. package/codeTranslations/ar.json +0 -55
  321. package/codeTranslations/base.json +0 -108
  322. package/codeTranslations/da.json +0 -55
  323. package/codeTranslations/de.json +0 -55
  324. package/codeTranslations/es.json +0 -55
  325. package/codeTranslations/fa.json +0 -55
  326. package/codeTranslations/fil.json +0 -55
  327. package/codeTranslations/fr.json +0 -55
  328. package/codeTranslations/he.json +0 -55
  329. package/codeTranslations/hi.json +0 -55
  330. package/codeTranslations/ja.json +0 -55
  331. package/codeTranslations/ko.json +0 -55
  332. package/codeTranslations/pl.json +0 -55
  333. package/codeTranslations/pt-BR.json +0 -55
  334. package/codeTranslations/pt-PT.json +0 -55
  335. package/codeTranslations/ru.json +0 -55
  336. package/codeTranslations/tr.json +0 -55
  337. package/codeTranslations/vi.json +0 -55
  338. package/codeTranslations/zh-Hans.json +0 -55
  339. package/codeTranslations/zh-Hant.json +0 -55
  340. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  341. package/lib/__tests__/translations.test.js +0 -112
  342. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  343. package/lib/theme/AnnouncementBar/index.js +0 -74
  344. package/lib/theme/AnnouncementBar/styles.module.css +0 -72
  345. package/lib/theme/BlogListPage/index.js +0 -71
  346. package/lib/theme/BlogListPaginator/index.js +0 -63
  347. package/lib/theme/BlogPostItem/index.js +0 -152
  348. package/lib/theme/BlogPostPage/index.js +0 -75
  349. package/lib/theme/BlogPostPaginator/index.js +0 -64
  350. package/lib/theme/BlogSidebar/index.js +0 -43
  351. package/lib/theme/BlogSidebar/styles.module.css +0 -46
  352. package/lib/theme/BlogTagsListPage/index.js +0 -81
  353. package/lib/theme/BlogTagsPostsPage/index.js +0 -104
  354. package/lib/theme/CodeBlock/index.js +0 -253
  355. package/lib/theme/CodeBlock/styles.module.css +0 -71
  356. package/lib/theme/DocItem/index.js +0 -120
  357. package/lib/theme/DocItem/styles.module.css +0 -28
  358. package/lib/theme/DocPage/index.js +0 -141
  359. package/lib/theme/DocPage/styles.module.css +0 -98
  360. package/lib/theme/DocPaginator/index.js +0 -63
  361. package/lib/theme/DocSidebar/index.js +0 -307
  362. package/lib/theme/DocSidebar/styles.module.css +0 -138
  363. package/lib/theme/DocVersionSuggestions/index.js +0 -111
  364. package/lib/theme/EditThisPage/index.js +0 -31
  365. package/lib/theme/Footer/index.js +0 -108
  366. package/lib/theme/Heading/index.js +0 -60
  367. package/lib/theme/Heading/styles.css +0 -23
  368. package/lib/theme/IconArrow/index.js +0 -28
  369. package/lib/theme/IconEdit/index.js +0 -34
  370. package/lib/theme/IconLanguage/index.js +0 -29
  371. package/lib/theme/IconMenu/index.js +0 -31
  372. package/lib/theme/LastUpdated/index.js +0 -65
  373. package/lib/theme/Layout/index.js +0 -64
  374. package/lib/theme/LayoutHead/index.js +0 -144
  375. package/lib/theme/LayoutProviders/index.js +0 -34
  376. package/lib/theme/Logo/index.js +0 -59
  377. package/lib/theme/MDXComponents/index.js +0 -65
  378. package/lib/theme/MDXPage/index.js +0 -68
  379. package/lib/theme/Navbar/index.js +0 -147
  380. package/lib/theme/NavbarItem/DefaultNavbarItem.js +0 -195
  381. package/lib/theme/NavbarItem/DocNavbarItem.js +0 -55
  382. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -75
  383. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +0 -43
  384. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  385. package/lib/theme/NavbarItem/SearchNavbarItem.js +0 -28
  386. package/lib/theme/NavbarItem/index.js +0 -54
  387. package/lib/theme/NotFound.js +0 -50
  388. package/lib/theme/SearchBar.js +0 -15
  389. package/lib/theme/SearchMetadatas/index.js +0 -33
  390. package/lib/theme/Seo/index.js +0 -49
  391. package/lib/theme/SkipToContent/index.js +0 -61
  392. package/lib/theme/SkipToContent/styles.module.css +0 -16
  393. package/lib/theme/TOC/index.js +0 -59
  394. package/lib/theme/TOC/styles.module.css +0 -23
  395. package/lib/theme/TOCInline/index.js +0 -53
  396. package/lib/theme/TOCInline/styles.module.css +0 -12
  397. package/lib/theme/TabItem/index.js +0 -32
  398. package/lib/theme/Tabs/index.js +0 -150
  399. package/lib/theme/Tabs/styles.module.css +0 -23
  400. package/lib/theme/ThemeContext.js +0 -21
  401. package/lib/theme/ThemeProvider/index.js +0 -38
  402. package/lib/theme/ThemedImage/index.js +0 -48
  403. package/lib/theme/ThemedImage/styles.module.css +0 -11
  404. package/lib/theme/Toggle/index.js +0 -106
  405. package/lib/theme/Toggle/styles.module.css +0 -114
  406. package/lib/theme/UserPreferencesContext.js +0 -18
  407. package/lib/theme/UserPreferencesProvider/index.js +0 -44
  408. package/lib/theme/hooks/styles.css +0 -10
  409. package/lib/theme/hooks/useAnnouncementBar.js +0 -63
  410. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  411. package/lib/theme/hooks/useDocs.js +0 -18
  412. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  413. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  414. package/lib/theme/hooks/useLocationHash.js +0 -28
  415. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  416. package/lib/theme/hooks/usePrismTheme.js +0 -36
  417. package/lib/theme/hooks/useScrollPosition.js +0 -49
  418. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  419. package/lib/theme/hooks/useTabGroupChoice.js +0 -53
  420. package/lib/theme/hooks/useTheme.js +0 -99
  421. package/lib/theme/hooks/useThemeContext.js +0 -31
  422. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  423. package/lib/theme/hooks/useWindowSize.js +0 -55
  424. package/lib/theme/prism-include-languages.js +0 -39
  425. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  426. package/lib-next/__tests__/translations.test.js +0 -128
  427. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  428. package/lib-next/index.js +0 -198
  429. package/lib-next/theme/DocSidebar/styles.module.css +0 -138
  430. package/lib-next/theme/Heading/styles.css +0 -23
  431. package/lib-next/theme/Navbar/styles.module.css +0 -20
  432. package/lib-next/theme/SearchMetadatas/index.js +0 -20
  433. package/lib-next/theme/Seo/index.js +0 -36
  434. package/lib-next/theme/ThemeProvider/index.js +0 -25
  435. package/lib-next/theme/Toggle/index.js +0 -95
  436. package/lib-next/theme/Toggle/styles.module.css +0 -114
  437. package/lib-next/theme/UserPreferencesProvider/index.js +0 -28
  438. package/lib-next/theme/hooks/useAnnouncementBar.js +0 -49
  439. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  440. package/lib-next/theme/hooks/useDocs.js +0 -10
  441. package/lib-next/theme/hooks/useHideableNavbar.js +0 -79
  442. package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
  443. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  444. package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
  445. package/lib-next/theme/hooks/usePrismTheme.js +0 -20
  446. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  447. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  448. package/lib-next/theme/hooks/useTabGroupChoice.js +0 -41
  449. package/lib-next/theme/hooks/useTheme.js +0 -82
  450. package/lib-next/theme/hooks/useThemeContext.js +0 -22
  451. package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
  452. package/lib-next/theme/hooks/useWindowSize.js +0 -45
  453. package/lib-next/translations.js +0 -145
  454. package/lib-next/types.d.ts +0 -600
  455. package/lib-next/validateThemeConfig.js +0 -317
  456. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  457. package/src/__tests__/translations.test.ts +0 -116
  458. package/src/__tests__/validateThemeConfig.test.js +0 -333
  459. package/src/prism-include-languages.js +0 -11
  460. package/src/theme/DocSidebar/styles.module.css +0 -138
  461. package/src/theme/Heading/styles.css +0 -23
  462. package/src/theme/SearchMetadatas/index.tsx +0 -28
  463. package/src/theme/Seo/index.tsx +0 -46
  464. package/src/theme/ThemeProvider/index.tsx +0 -24
  465. package/src/theme/Toggle/index.tsx +0 -113
  466. package/src/theme/Toggle/styles.module.css +0 -114
  467. package/src/theme/UserPreferencesContext.ts +0 -12
  468. package/src/theme/UserPreferencesProvider/index.tsx +0 -32
  469. package/src/theme/hooks/styles.css +0 -10
  470. package/src/theme/hooks/useAnnouncementBar.ts +0 -58
  471. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  472. package/src/theme/hooks/useDocs.ts +0 -11
  473. package/src/theme/hooks/useHideableNavbar.ts +0 -85
  474. package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
  475. package/src/theme/hooks/useLocationHash.ts +0 -25
  476. package/src/theme/hooks/useLockBodyScroll.ts +0 -20
  477. package/src/theme/hooks/usePrismTheme.ts +0 -22
  478. package/src/theme/hooks/useScrollPosition.ts +0 -45
  479. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  480. package/src/theme/hooks/useTabGroupChoice.ts +0 -46
  481. package/src/theme/hooks/useTheme.ts +0 -92
  482. package/src/theme/hooks/useThemeContext.ts +0 -23
  483. package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
  484. package/src/theme/hooks/useWindowSize.ts +0 -51
  485. package/src/validateThemeConfig.js +0 -317
  486. package/tsconfig.json +0 -12
  487. package/update-code-translations.js +0 -239
  488. package/update-code-translations.test.js +0 -33
@@ -0,0 +1,381 @@
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 {Joi, URISchema} from '@docusaurus/utils-validation';
9
+ import type {
10
+ ThemeConfig,
11
+ ThemeConfigValidationContext,
12
+ } from '@docusaurus/types';
13
+
14
+ const DEFAULT_DOCS_CONFIG = {
15
+ versionPersistence: 'localStorage',
16
+ };
17
+ const DocsSchema = Joi.object({
18
+ versionPersistence: Joi.string()
19
+ .equal('localStorage', 'none')
20
+ .default(DEFAULT_DOCS_CONFIG.versionPersistence),
21
+ }).default(DEFAULT_DOCS_CONFIG);
22
+
23
+ const DEFAULT_COLOR_MODE_CONFIG = {
24
+ defaultMode: 'light',
25
+ disableSwitch: false,
26
+ respectPrefersColorScheme: false,
27
+ };
28
+
29
+ export const DEFAULT_CONFIG = {
30
+ colorMode: DEFAULT_COLOR_MODE_CONFIG,
31
+ docs: DEFAULT_DOCS_CONFIG,
32
+ metadata: [],
33
+ prism: {
34
+ additionalLanguages: [],
35
+ },
36
+ navbar: {
37
+ hideOnScroll: false,
38
+ items: [],
39
+ },
40
+ hideableSidebar: false,
41
+ autoCollapseSidebarCategories: false,
42
+ tableOfContents: {
43
+ minHeadingLevel: 2,
44
+ maxHeadingLevel: 3,
45
+ },
46
+ };
47
+
48
+ const NavbarItemPosition = Joi.string().equal('left', 'right').default('left');
49
+
50
+ const NavbarItemBaseSchema = Joi.object({
51
+ label: Joi.string(),
52
+ className: Joi.string(),
53
+ })
54
+ // We allow any unknown attributes on the links (users may need additional
55
+ // attributes like target, aria-role, data-customAttribute...)
56
+ .unknown();
57
+
58
+ const DefaultNavbarItemSchema = NavbarItemBaseSchema.append({
59
+ to: Joi.string(),
60
+ href: URISchema,
61
+ activeBasePath: Joi.string(),
62
+ activeBaseRegex: Joi.string(),
63
+ prependBaseUrlToHref: Joi.bool(),
64
+ // This is only triggered in case of a nested dropdown
65
+ items: Joi.forbidden().messages({
66
+ 'any.unknown': 'Nested dropdowns are not allowed',
67
+ }),
68
+ })
69
+ .xor('href', 'to')
70
+ .messages({
71
+ 'object.xor': 'One and only one between "to" and "href" should be provided',
72
+ });
73
+
74
+ const DocsVersionNavbarItemSchema = NavbarItemBaseSchema.append({
75
+ type: Joi.string().equal('docsVersion').required(),
76
+ to: Joi.string(),
77
+ docsPluginId: Joi.string(),
78
+ });
79
+
80
+ const DocItemSchema = NavbarItemBaseSchema.append({
81
+ type: Joi.string().equal('doc').required(),
82
+ docId: Joi.string().required(),
83
+ docsPluginId: Joi.string(),
84
+ });
85
+
86
+ const DocSidebarItemSchema = NavbarItemBaseSchema.append({
87
+ type: Joi.string().equal('docSidebar').required(),
88
+ sidebarId: Joi.string().required(),
89
+ docsPluginId: Joi.string(),
90
+ });
91
+
92
+ const itemWithType = (type: string | undefined) => {
93
+ // because equal(undefined) is not supported :/
94
+ const typeSchema = type
95
+ ? Joi.string().required().equal(type)
96
+ : Joi.string().forbidden();
97
+ return Joi.object({
98
+ type: typeSchema,
99
+ })
100
+ .unknown()
101
+ .required();
102
+ };
103
+
104
+ const DropdownSubitemSchema = Joi.object({
105
+ position: Joi.forbidden(),
106
+ }).when('.', {
107
+ switch: [
108
+ {
109
+ is: itemWithType('docsVersion'),
110
+ then: DocsVersionNavbarItemSchema,
111
+ },
112
+ {
113
+ is: itemWithType('doc'),
114
+ then: DocItemSchema,
115
+ },
116
+ {
117
+ is: itemWithType('docSidebar'),
118
+ then: DocSidebarItemSchema,
119
+ },
120
+ {
121
+ is: itemWithType(undefined),
122
+ then: DefaultNavbarItemSchema,
123
+ },
124
+ {
125
+ is: Joi.alternatives().try(
126
+ itemWithType('dropdown'),
127
+ itemWithType('docsVersionDropdown'),
128
+ itemWithType('localeDropdown'),
129
+ itemWithType('search'),
130
+ ),
131
+ then: Joi.forbidden().messages({
132
+ 'any.unknown': 'Nested dropdowns are not allowed',
133
+ }),
134
+ },
135
+ ],
136
+ otherwise: Joi.forbidden().messages({
137
+ 'any.unknown': 'Bad navbar item type {.type}',
138
+ }),
139
+ });
140
+
141
+ const DropdownNavbarItemSchema = NavbarItemBaseSchema.append({
142
+ items: Joi.array().items(DropdownSubitemSchema).required(),
143
+ });
144
+
145
+ const DocsVersionDropdownNavbarItemSchema = NavbarItemBaseSchema.append({
146
+ type: Joi.string().equal('docsVersionDropdown').required(),
147
+ docsPluginId: Joi.string(),
148
+ dropdownActiveClassDisabled: Joi.boolean(),
149
+ dropdownItemsBefore: Joi.array().items(DropdownSubitemSchema).default([]),
150
+ dropdownItemsAfter: Joi.array().items(DropdownSubitemSchema).default([]),
151
+ });
152
+
153
+ const LocaleDropdownNavbarItemSchema = NavbarItemBaseSchema.append({
154
+ type: Joi.string().equal('localeDropdown').required(),
155
+ dropdownItemsBefore: Joi.array().items(DropdownSubitemSchema).default([]),
156
+ dropdownItemsAfter: Joi.array().items(DropdownSubitemSchema).default([]),
157
+ });
158
+
159
+ const SearchItemSchema = Joi.object({
160
+ type: Joi.string().equal('search').required(),
161
+ });
162
+
163
+ const NavbarItemSchema = Joi.object({
164
+ position: NavbarItemPosition,
165
+ }).when('.', {
166
+ switch: [
167
+ {
168
+ is: itemWithType('docsVersion'),
169
+ then: DocsVersionNavbarItemSchema,
170
+ },
171
+ {
172
+ is: itemWithType('dropdown'),
173
+ then: DropdownNavbarItemSchema,
174
+ },
175
+ {
176
+ is: itemWithType('docsVersionDropdown'),
177
+ then: DocsVersionDropdownNavbarItemSchema,
178
+ },
179
+ {
180
+ is: itemWithType('doc'),
181
+ then: DocItemSchema,
182
+ },
183
+ {
184
+ is: itemWithType('docSidebar'),
185
+ then: DocSidebarItemSchema,
186
+ },
187
+ {
188
+ is: itemWithType('localeDropdown'),
189
+ then: LocaleDropdownNavbarItemSchema,
190
+ },
191
+ {
192
+ is: itemWithType('search'),
193
+ then: SearchItemSchema,
194
+ },
195
+ {
196
+ is: itemWithType(undefined),
197
+ then: Joi.object().when('.', {
198
+ // Dropdown item can be specified without type field
199
+ is: Joi.object({
200
+ items: Joi.array().required(),
201
+ }).unknown(),
202
+ then: DropdownNavbarItemSchema,
203
+ otherwise: DefaultNavbarItemSchema,
204
+ }),
205
+ },
206
+ ],
207
+ otherwise: Joi.forbidden().messages({
208
+ 'any.unknown': 'Bad navbar item type {.type}',
209
+ }),
210
+ });
211
+
212
+ const ColorModeSchema = Joi.object({
213
+ defaultMode: Joi.string()
214
+ .equal('dark', 'light')
215
+ .default(DEFAULT_COLOR_MODE_CONFIG.defaultMode),
216
+ disableSwitch: Joi.bool().default(DEFAULT_COLOR_MODE_CONFIG.disableSwitch),
217
+ respectPrefersColorScheme: Joi.bool().default(
218
+ DEFAULT_COLOR_MODE_CONFIG.respectPrefersColorScheme,
219
+ ),
220
+ switchConfig: Joi.any().forbidden().messages({
221
+ 'any.unknown':
222
+ 'colorMode.switchConfig is deprecated. If you want to customize the icons for light and dark mode, swizzle IconLightMode, IconDarkMode, or ColorModeToggle instead.',
223
+ }),
224
+ }).default(DEFAULT_COLOR_MODE_CONFIG);
225
+
226
+ // schema can probably be improved
227
+ const HtmlMetadataSchema = Joi.object({
228
+ id: Joi.string(),
229
+ name: Joi.string(),
230
+ property: Joi.string(),
231
+ content: Joi.string(),
232
+ itemprop: Joi.string(),
233
+ }).unknown();
234
+
235
+ const FooterLinkItemSchema = Joi.object({
236
+ to: Joi.string(),
237
+ href: URISchema,
238
+ html: Joi.string(),
239
+ label: Joi.string(),
240
+ })
241
+ .xor('to', 'href', 'html')
242
+ .with('to', 'label')
243
+ .with('href', 'label')
244
+ .nand('html', 'label')
245
+ // We allow any unknown attributes on the links (users may need additional
246
+ // attributes like target, aria-role, data-customAttribute...)
247
+ .unknown();
248
+
249
+ const CustomCssSchema = Joi.alternatives()
250
+ .try(Joi.array().items(Joi.string().required()), Joi.string().required())
251
+ .optional();
252
+
253
+ export const ThemeConfigSchema = Joi.object({
254
+ // TODO temporary (@alpha-58)
255
+ disableDarkMode: Joi.any().forbidden().messages({
256
+ 'any.unknown':
257
+ 'disableDarkMode theme config is deprecated. Please use the new colorMode attribute. You likely want: config.themeConfig.colorMode.disableSwitch = true',
258
+ }),
259
+ // TODO temporary (@alpha-58)
260
+ defaultDarkMode: Joi.any().forbidden().messages({
261
+ 'any.unknown':
262
+ 'defaultDarkMode theme config is deprecated. Please use the new colorMode attribute. You likely want: config.themeConfig.colorMode.defaultMode = "dark"',
263
+ }),
264
+ customCss: CustomCssSchema,
265
+ colorMode: ColorModeSchema,
266
+ image: Joi.string(),
267
+ docs: DocsSchema,
268
+ metadata: Joi.array()
269
+ .items(HtmlMetadataSchema)
270
+ .default(DEFAULT_CONFIG.metadata),
271
+ // cSpell:ignore metadatas
272
+ metadatas: Joi.any().forbidden().messages({
273
+ 'any.unknown':
274
+ // cSpell:ignore metadatas
275
+ 'themeConfig.metadatas has been renamed as themeConfig.metadata. See https://github.com/facebook/docusaurus/pull/5871',
276
+ }),
277
+ announcementBar: Joi.object({
278
+ id: Joi.string().default('announcement-bar'),
279
+ content: Joi.string().required(),
280
+ backgroundColor: Joi.string(),
281
+ textColor: Joi.string(),
282
+ isCloseable: Joi.bool().default(true),
283
+ }).optional(),
284
+ navbar: Joi.object({
285
+ style: Joi.string().equal('dark', 'primary'),
286
+ hideOnScroll: Joi.bool().default(DEFAULT_CONFIG.navbar.hideOnScroll),
287
+ // TODO temporary (@alpha-58)
288
+ links: Joi.any().forbidden().messages({
289
+ 'any.unknown':
290
+ 'themeConfig.navbar.links has been renamed as themeConfig.navbar.items',
291
+ }),
292
+ items: Joi.array()
293
+ .items(NavbarItemSchema)
294
+ .default(DEFAULT_CONFIG.navbar.items),
295
+ title: Joi.string().allow('', null),
296
+ logo: Joi.object({
297
+ alt: Joi.string().allow(''),
298
+ src: Joi.string().required(),
299
+ srcDark: Joi.string(),
300
+ width: Joi.alternatives().try(Joi.string(), Joi.number()),
301
+ height: Joi.alternatives().try(Joi.string(), Joi.number()),
302
+ href: Joi.string(),
303
+ target: Joi.string(),
304
+ }),
305
+ }).default(DEFAULT_CONFIG.navbar),
306
+ footer: Joi.object({
307
+ style: Joi.string().equal('dark', 'light').default('light'),
308
+ logo: Joi.object({
309
+ alt: Joi.string().allow(''),
310
+ src: Joi.string().required(),
311
+ srcDark: Joi.string(),
312
+ // TODO infer this from reading the image
313
+ width: Joi.alternatives().try(Joi.string(), Joi.number()),
314
+ height: Joi.alternatives().try(Joi.string(), Joi.number()),
315
+ href: Joi.string(),
316
+ }),
317
+ copyright: Joi.string(),
318
+ links: Joi.alternatives(
319
+ Joi.array().items(
320
+ Joi.object({
321
+ title: Joi.string().allow(null).default(null),
322
+ items: Joi.array().items(FooterLinkItemSchema).default([]),
323
+ }),
324
+ ),
325
+ Joi.array().items(FooterLinkItemSchema),
326
+ )
327
+ .messages({
328
+ 'alternatives.match': `The footer must be either simple or multi-column, and not a mix of the two. See: https://docusaurus.io/docs/api/themes/configuration#footer-links`,
329
+ })
330
+ .default([]),
331
+ }).optional(),
332
+ prism: Joi.object({
333
+ theme: Joi.object({
334
+ plain: Joi.alternatives().try(Joi.array(), Joi.object()).required(),
335
+ styles: Joi.alternatives().try(Joi.array(), Joi.object()).required(),
336
+ }),
337
+ darkTheme: Joi.object({
338
+ plain: Joi.alternatives().try(Joi.array(), Joi.object()).required(),
339
+ styles: Joi.alternatives().try(Joi.array(), Joi.object()).required(),
340
+ }),
341
+ defaultLanguage: Joi.string(),
342
+ additionalLanguages: Joi.array()
343
+ .items(Joi.string())
344
+ .default(DEFAULT_CONFIG.prism.additionalLanguages),
345
+ })
346
+ .default(DEFAULT_CONFIG.prism)
347
+ .unknown(),
348
+ hideableSidebar: Joi.bool().default(DEFAULT_CONFIG.hideableSidebar),
349
+ autoCollapseSidebarCategories: Joi.bool().default(
350
+ DEFAULT_CONFIG.autoCollapseSidebarCategories,
351
+ ),
352
+ sidebarCollapsible: Joi.forbidden().messages({
353
+ 'any.unknown':
354
+ 'The themeConfig.sidebarCollapsible has been moved to docs plugin options. See: https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-docs',
355
+ }),
356
+ tableOfContents: Joi.object({
357
+ minHeadingLevel: Joi.number()
358
+ .default(DEFAULT_CONFIG.tableOfContents.minHeadingLevel)
359
+ .when('maxHeadingLevel', {
360
+ is: Joi.exist(),
361
+ then: Joi.number()
362
+ .integer()
363
+ .min(2)
364
+ .max(6)
365
+ .max(Joi.ref('maxHeadingLevel')),
366
+ otherwise: Joi.number().integer().min(2).max(6),
367
+ }),
368
+ maxHeadingLevel: Joi.number()
369
+ .integer()
370
+ .min(2)
371
+ .max(6)
372
+ .default(DEFAULT_CONFIG.tableOfContents.maxHeadingLevel),
373
+ }).default(DEFAULT_CONFIG.tableOfContents),
374
+ });
375
+
376
+ export function validateThemeConfig({
377
+ validate,
378
+ themeConfig,
379
+ }: ThemeConfigValidationContext<ThemeConfig>): ThemeConfig {
380
+ return validate(ThemeConfigSchema, themeConfig);
381
+ }
package/babel.config.js DELETED
@@ -1,35 +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
- module.exports = {
9
- env: {
10
- // USED FOR NODE/RUNTIME
11
- // maybe we should differenciate both cases because
12
- // we mostly need to transpile some features so that node does not crash...
13
- lib: {
14
- presets: [
15
- ['@babel/preset-typescript', {isTSX: true, allExtensions: true}],
16
- ],
17
- // Useful to transpile for older node versions
18
- plugins: [
19
- '@babel/plugin-transform-modules-commonjs',
20
- '@babel/plugin-proposal-nullish-coalescing-operator',
21
- '@babel/plugin-proposal-optional-chaining',
22
- ],
23
- },
24
-
25
- // USED FOR JS SWIZZLE
26
- // /lib-next folder is used as source to swizzle JS source code
27
- // This JS code is created from TS source code
28
- // This source code should look clean/human readable to be usable
29
- 'lib-next': {
30
- presets: [
31
- ['@babel/preset-typescript', {isTSX: true, allExtensions: true}],
32
- ],
33
- },
34
- },
35
- };
@@ -1,20 +0,0 @@
1
- # Default theme translations
2
-
3
- The Docusaurus theme includes default translations for labels used by the theme itself (like the pagination "Next" / "Previous").
4
-
5
- ## For Docusaurus users:
6
-
7
- Please help us provide exhaustive translations:
8
-
9
- - add your `language.json` file if it is missing (copy `base.json` and remove the attributes `___DESCRIPTION`)
10
- - double-check your `language.json` file for bad or missing translations
11
-
12
- ## For maintainers:
13
-
14
- After updating the theme code, you can "synchronize" the translations by running:
15
-
16
- ```
17
- yarn workspace @docusaurus/theme-classic update-code-translations
18
- ```
19
-
20
- Then, ask contributors to translate the newly added labels on this [issue](https://github.com/facebook/docusaurus/issues/3526)
@@ -1,55 +0,0 @@
1
- {
2
- "theme.AnnouncementBar.closeButtonAriaLabel": "إغلاق",
3
- "theme.CodeBlock.copied": "تم النسخ",
4
- "theme.CodeBlock.copy": "نسخ",
5
- "theme.CodeBlock.copyButtonAriaLabel": "نسخ الرمز إلى الحافظة",
6
- "theme.NotFound.p1": "لم نتمكن من العثور على ما كنت تبحث عنه.",
7
- "theme.NotFound.p2": "يرجى الاتصال بمالك الموقع الذي ربطك بعنوان URL الأصلي وإخباره بأن الارتباط الخاص به معطل.",
8
- "theme.NotFound.title": "الصفحة غير موجودة",
9
- "theme.Playground.liveEditor": "محرر مباشر",
10
- "theme.Playground.result": "النتيجة",
11
- "theme.PwaReloadPopup.closeButtonAriaLabel": "إغلاق",
12
- "theme.PwaReloadPopup.info": "نسخة جديدة متاحة",
13
- "theme.PwaReloadPopup.refreshButtonText": "تحديث",
14
- "theme.SearchBar.label": "بحث",
15
- "theme.SearchPage.algoliaLabel": "البحث بواسطه Algolia",
16
- "theme.SearchPage.documentsFound.plurals": "One document found|{count} documents found",
17
- "theme.SearchPage.emptyResultsTitle": "ابحث في الوثائق",
18
- "theme.SearchPage.existingResultsTitle": "نتائج البحث عن \"{query}\"",
19
- "theme.SearchPage.fetchingNewResults": "جلب نتائج جديدة ...",
20
- "theme.SearchPage.inputLabel": "بحث",
21
- "theme.SearchPage.inputPlaceholder": "اكتب ما تبحث عنه هنا",
22
- "theme.SearchPage.noResultsText": "لم يتم العثور على نتائج",
23
- "theme.blog.paginator.navAriaLabel": "التنقل في صفحة قائمة المدونة",
24
- "theme.blog.paginator.newerEntries": "إدخالات أحدث",
25
- "theme.blog.paginator.olderEntries": "إدخالات أقدم",
26
- "theme.blog.post.paginator.navAriaLabel": "التنقل في صفحة مقالات المدونة",
27
- "theme.blog.post.paginator.newerPost": "مقالات أحدث",
28
- "theme.blog.post.paginator.olderPost": "مقالات أقدم",
29
- "theme.blog.post.plurals": "مقاله واحده|{count} مقالات",
30
- "theme.blog.post.readMore": "اقرأ المزيد",
31
- "theme.blog.post.readingTime.plurals": "{readingTime} دقائق قراءة|{readingTime} دقائق قراءة",
32
- "theme.blog.tagTitle": "{nPosts} موسومة ب \"{tagName}\"",
33
- "theme.common.editThisPage": "تعديل هذه الصفحة",
34
- "theme.common.headingLinkTitle": "ارتباط مباشر بالعنوان",
35
- "theme.common.skipToMainContent": "انتقل إلى المحتوى الرئيسي",
36
- "theme.docs.paginator.navAriaLabel": "التنقل بين صفحات المستندات",
37
- "theme.docs.paginator.next": "التالى",
38
- "theme.docs.paginator.previous": "السابق",
39
- "theme.docs.sidebar.collapseButtonAriaLabel": "طي الشريط الجانبي",
40
- "theme.docs.sidebar.collapseButtonTitle": "طي الشريط الجانبي",
41
- "theme.docs.sidebar.expandButtonAriaLabel": "توسيع الشريط الجانبي",
42
- "theme.docs.sidebar.expandButtonTitle": "توسيع الشريط الجانبي",
43
- "theme.docs.sidebar.responsiveCloseButtonLabel": "إغلاق القائمة",
44
- "theme.docs.sidebar.responsiveOpenButtonLabel": "فتح القائمة",
45
- "theme.docs.versions.latestVersionLinkLabel": "احدث اصدار",
46
- "theme.docs.versions.latestVersionSuggestionLabel": "للحصول على أحدث الوثائق، راجع {latestVersionLink} ({versionLabel}).",
47
- "theme.docs.versions.unmaintainedVersionLabel": "هذه هي وثائق {siteTitle} {versionLabel}، التي لم تعد تتم صيانتها بشكل نشط.",
48
- "theme.docs.versions.unreleasedVersionLabel": "هذه وثائق لم يتم طرحها لإصدار {siteTitle} {versionLabel}.",
49
- "theme.lastUpdated.atDate": " في {date}",
50
- "theme.lastUpdated.byUser": " بواسطة {user}",
51
- "theme.lastUpdated.lastUpdatedAtBy": "آخر تحديث{atDate}{byUser}",
52
- "theme.tags.tagsListLabel": "الوسوم:",
53
- "theme.tags.tagsPageLink": "عرض كل الوسوم",
54
- "theme.tags.tagsPageTitle": "الوسوم"
55
- }
@@ -1,108 +0,0 @@
1
- {
2
- "theme.AnnouncementBar.closeButtonAriaLabel": "Close",
3
- "theme.AnnouncementBar.closeButtonAriaLabel___DESCRIPTION": "The ARIA label for close button of announcement bar",
4
- "theme.CodeBlock.copied": "Copied",
5
- "theme.CodeBlock.copied___DESCRIPTION": "The copied button label on code blocks",
6
- "theme.CodeBlock.copy": "Copy",
7
- "theme.CodeBlock.copy___DESCRIPTION": "The copy button label on code blocks",
8
- "theme.CodeBlock.copyButtonAriaLabel": "Copy code to clipboard",
9
- "theme.CodeBlock.copyButtonAriaLabel___DESCRIPTION": "The ARIA label for copy code blocks button",
10
- "theme.NotFound.p1": "We could not find what you were looking for.",
11
- "theme.NotFound.p1___DESCRIPTION": "The first paragraph of the 404 page",
12
- "theme.NotFound.p2": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
13
- "theme.NotFound.p2___DESCRIPTION": "The 2nd paragraph of the 404 page",
14
- "theme.NotFound.title": "Page Not Found",
15
- "theme.NotFound.title___DESCRIPTION": "The title of the 404 page",
16
- "theme.Playground.liveEditor": "Live Editor",
17
- "theme.Playground.liveEditor___DESCRIPTION": "The live editor label of the live codeblocks",
18
- "theme.Playground.result": "Result",
19
- "theme.Playground.result___DESCRIPTION": "The result label of the live codeblocks",
20
- "theme.PwaReloadPopup.closeButtonAriaLabel": "Close",
21
- "theme.PwaReloadPopup.closeButtonAriaLabel___DESCRIPTION": "The ARIA label for close button of PWA reload popup",
22
- "theme.PwaReloadPopup.info": "New version available",
23
- "theme.PwaReloadPopup.info___DESCRIPTION": "The text for PWA reload popup",
24
- "theme.PwaReloadPopup.refreshButtonText": "Refresh",
25
- "theme.PwaReloadPopup.refreshButtonText___DESCRIPTION": "The text for PWA reload button",
26
- "theme.SearchBar.label": "Search",
27
- "theme.SearchBar.label___DESCRIPTION": "The ARIA label and placeholder for search button",
28
- "theme.SearchPage.algoliaLabel": "Search by Algolia",
29
- "theme.SearchPage.algoliaLabel___DESCRIPTION": "The ARIA label for Algolia mention",
30
- "theme.SearchPage.documentsFound.plurals": "One document found|{count} documents found",
31
- "theme.SearchPage.documentsFound.plurals___DESCRIPTION": "Pluralized label for \"{count} documents found\". 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)",
32
- "theme.SearchPage.emptyResultsTitle": "Search the documentation",
33
- "theme.SearchPage.emptyResultsTitle___DESCRIPTION": "The search page title for empty query",
34
- "theme.SearchPage.existingResultsTitle": "Search results for \"{query}\"",
35
- "theme.SearchPage.existingResultsTitle___DESCRIPTION": "The search page title for non-empty query",
36
- "theme.SearchPage.fetchingNewResults": "Fetching new results...",
37
- "theme.SearchPage.fetchingNewResults___DESCRIPTION": "The paragraph for fetching new search results",
38
- "theme.SearchPage.inputLabel": "Search",
39
- "theme.SearchPage.inputLabel___DESCRIPTION": "The ARIA label for search page input",
40
- "theme.SearchPage.inputPlaceholder": "Type your search here",
41
- "theme.SearchPage.inputPlaceholder___DESCRIPTION": "The placeholder for search page input",
42
- "theme.SearchPage.noResultsText": "No results were found",
43
- "theme.SearchPage.noResultsText___DESCRIPTION": "The paragraph for empty search result",
44
- "theme.blog.paginator.navAriaLabel": "Blog list page navigation",
45
- "theme.blog.paginator.navAriaLabel___DESCRIPTION": "The ARIA label for the blog pagination",
46
- "theme.blog.paginator.newerEntries": "Newer Entries",
47
- "theme.blog.paginator.newerEntries___DESCRIPTION": "The label used to navigate to the newer blog posts page (previous page)",
48
- "theme.blog.paginator.olderEntries": "Older Entries",
49
- "theme.blog.paginator.olderEntries___DESCRIPTION": "The label used to navigate to the older blog posts page (next page)",
50
- "theme.blog.post.paginator.navAriaLabel": "Blog post page navigation",
51
- "theme.blog.post.paginator.navAriaLabel___DESCRIPTION": "The ARIA label for the blog posts pagination",
52
- "theme.blog.post.paginator.newerPost": "Newer Post",
53
- "theme.blog.post.paginator.newerPost___DESCRIPTION": "The blog post button label to navigate to the newer/previous post",
54
- "theme.blog.post.paginator.olderPost": "Older Post",
55
- "theme.blog.post.paginator.olderPost___DESCRIPTION": "The blog post button label to navigate to the older/next post",
56
- "theme.blog.post.plurals": "One post|{count} posts",
57
- "theme.blog.post.plurals___DESCRIPTION": "Pluralized label for \"{count} posts\". 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)",
58
- "theme.blog.post.readMore": "Read More",
59
- "theme.blog.post.readMore___DESCRIPTION": "The label used in blog post item excerpts to link to full blog posts",
60
- "theme.blog.post.readingTime.plurals": "One min read|{readingTime} min read",
61
- "theme.blog.post.readingTime.plurals___DESCRIPTION": "Pluralized label for \"{readingTime} min read\". 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)",
62
- "theme.blog.tagTitle": "{nPosts} tagged with \"{tagName}\"",
63
- "theme.blog.tagTitle___DESCRIPTION": "The title of the page for a blog tag",
64
- "theme.common.editThisPage": "Edit this page",
65
- "theme.common.editThisPage___DESCRIPTION": "The link label to edit the current page",
66
- "theme.common.headingLinkTitle": "Direct link to heading",
67
- "theme.common.headingLinkTitle___DESCRIPTION": "Title for link to heading",
68
- "theme.common.skipToMainContent": "Skip to main content",
69
- "theme.common.skipToMainContent___DESCRIPTION": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",
70
- "theme.docs.paginator.navAriaLabel": "Docs pages navigation",
71
- "theme.docs.paginator.navAriaLabel___DESCRIPTION": "The ARIA label for the docs pagination",
72
- "theme.docs.paginator.next": "Next",
73
- "theme.docs.paginator.next___DESCRIPTION": "The label used to navigate to the next doc",
74
- "theme.docs.paginator.previous": "Previous",
75
- "theme.docs.paginator.previous___DESCRIPTION": "The label used to navigate to the previous doc",
76
- "theme.docs.sidebar.collapseButtonAriaLabel": "Collapse sidebar",
77
- "theme.docs.sidebar.collapseButtonAriaLabel___DESCRIPTION": "The title attribute for collapse button of doc sidebar",
78
- "theme.docs.sidebar.collapseButtonTitle": "Collapse sidebar",
79
- "theme.docs.sidebar.collapseButtonTitle___DESCRIPTION": "The title attribute for collapse button of doc sidebar",
80
- "theme.docs.sidebar.expandButtonAriaLabel": "Expand sidebar",
81
- "theme.docs.sidebar.expandButtonAriaLabel___DESCRIPTION": "The ARIA label and title attribute for expand button of doc sidebar",
82
- "theme.docs.sidebar.expandButtonTitle": "Expand sidebar",
83
- "theme.docs.sidebar.expandButtonTitle___DESCRIPTION": "The ARIA label and title attribute for expand button of doc sidebar",
84
- "theme.docs.sidebar.responsiveCloseButtonLabel": "Close menu",
85
- "theme.docs.sidebar.responsiveCloseButtonLabel___DESCRIPTION": "The ARIA label for close button of mobile doc sidebar",
86
- "theme.docs.sidebar.responsiveOpenButtonLabel": "Open menu",
87
- "theme.docs.sidebar.responsiveOpenButtonLabel___DESCRIPTION": "The ARIA label for open button of mobile doc sidebar",
88
- "theme.docs.versions.latestVersionLinkLabel": "latest version",
89
- "theme.docs.versions.latestVersionLinkLabel___DESCRIPTION": "The label used for the latest version suggestion link label",
90
- "theme.docs.versions.latestVersionSuggestionLabel": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
91
- "theme.docs.versions.latestVersionSuggestionLabel___DESCRIPTION": "The label userd to tell the user that he's browsing an unmaintained doc version",
92
- "theme.docs.versions.unmaintainedVersionLabel": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
93
- "theme.docs.versions.unmaintainedVersionLabel___DESCRIPTION": "The label used to tell the user that he's browsing an unmaintained doc version",
94
- "theme.docs.versions.unreleasedVersionLabel": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
95
- "theme.docs.versions.unreleasedVersionLabel___DESCRIPTION": "The label used to tell the user that he's browsing an unreleased doc version",
96
- "theme.lastUpdated.atDate": " on {date}",
97
- "theme.lastUpdated.atDate___DESCRIPTION": "The words used to describe on which date a page has been last updated",
98
- "theme.lastUpdated.byUser": " by {user}",
99
- "theme.lastUpdated.byUser___DESCRIPTION": "The words used to describe by who the page has been last updated",
100
- "theme.lastUpdated.lastUpdatedAtBy": "Last updated{atDate}{byUser}",
101
- "theme.lastUpdated.lastUpdatedAtBy___DESCRIPTION": "The sentence used to display when a page has been last updated, and by who",
102
- "theme.tags.tagsListLabel": "Tags:",
103
- "theme.tags.tagsListLabel___DESCRIPTION": "The label alongside a tag list",
104
- "theme.tags.tagsPageLink": "View All Tags",
105
- "theme.tags.tagsPageLink___DESCRIPTION": "The label of the link targeting the tag list page",
106
- "theme.tags.tagsPageTitle": "Tags",
107
- "theme.tags.tagsPageTitle___DESCRIPTION": "The title of the tag list page"
108
- }
@@ -1,55 +0,0 @@
1
- {
2
- "theme.AnnouncementBar.closeButtonAriaLabel": "Luk",
3
- "theme.CodeBlock.copied": "Kopieret",
4
- "theme.CodeBlock.copy": "Kopier",
5
- "theme.CodeBlock.copyButtonAriaLabel": "Kopier kode til udklipsholder",
6
- "theme.NotFound.p1": "Vi kunne ikke finde det, du søgte.",
7
- "theme.NotFound.p2": "Venligst kontakt ejeren til webstedet, som førte dig frem denne URL, og informer dem om at linket ikke virker.",
8
- "theme.NotFound.title": "Siden blev ikke fundet",
9
- "theme.Playground.liveEditor": "Live editor",
10
- "theme.Playground.result": "Resultat",
11
- "theme.PwaReloadPopup.closeButtonAriaLabel": "Luk",
12
- "theme.PwaReloadPopup.info": "Ny version er tilgængelig",
13
- "theme.PwaReloadPopup.refreshButtonText": "Genopfrisk",
14
- "theme.SearchBar.label": "Søg",
15
- "theme.SearchPage.algoliaLabel": "Søg med Algolia",
16
- "theme.SearchPage.documentsFound.plurals": "Et dokument fundet|{count} dokumenter fundet",
17
- "theme.SearchPage.emptyResultsTitle": "Søg i dokumentationen",
18
- "theme.SearchPage.existingResultsTitle": "Søgeresultater for \"{query}\"",
19
- "theme.SearchPage.fetchingNewResults": "Henter nye resultater...",
20
- "theme.SearchPage.inputLabel": "Søg",
21
- "theme.SearchPage.inputPlaceholder": "Indtast din søgning her",
22
- "theme.SearchPage.noResultsText": "Ingen resultater fundet",
23
- "theme.blog.paginator.navAriaLabel": "Blogoversigt navigation",
24
- "theme.blog.paginator.newerEntries": "Nyere indslag",
25
- "theme.blog.paginator.olderEntries": "Tidligere indslag",
26
- "theme.blog.post.paginator.navAriaLabel": "Blogpost navigation",
27
- "theme.blog.post.paginator.newerPost": "Næste indslag",
28
- "theme.blog.post.paginator.olderPost": "Tidligere indslag",
29
- "theme.blog.post.plurals": "Et indslag|{count} indslag",
30
- "theme.blog.post.readMore": "Læs mere",
31
- "theme.blog.post.readingTime.plurals": "Et minuts læsetid|{readingTime} minutters læsetid",
32
- "theme.blog.tagTitle": "{nPosts} med følgende tag \"{tagName}\"",
33
- "theme.common.editThisPage": "Rediger denne side",
34
- "theme.common.headingLinkTitle": "Direkte link til overskrift",
35
- "theme.common.skipToMainContent": "Hop til hovedindhold",
36
- "theme.docs.paginator.navAriaLabel": "Dokumentside navigation",
37
- "theme.docs.paginator.next": "Næste",
38
- "theme.docs.paginator.previous": "Tidligere",
39
- "theme.docs.sidebar.collapseButtonAriaLabel": "Sammenlæg sidenavigation",
40
- "theme.docs.sidebar.collapseButtonTitle": "Sammenlæg sidenavigation",
41
- "theme.docs.sidebar.expandButtonAriaLabel": "Udvid sidenavigation",
42
- "theme.docs.sidebar.expandButtonTitle": "Udvid sidenavigation",
43
- "theme.docs.sidebar.responsiveCloseButtonLabel": "Luk menu",
44
- "theme.docs.sidebar.responsiveOpenButtonLabel": "Åben menu",
45
- "theme.docs.versions.latestVersionLinkLabel": "seneste version",
46
- "theme.docs.versions.latestVersionSuggestionLabel": "For seneste dokumentation, se {latestVersionLink} ({versionLabel}).",
47
- "theme.docs.versions.unmaintainedVersionLabel": "Dette er dokumentationen for {siteTitle} {versionLabel}, som ikke længere bliver aktivt vedligeholdt.",
48
- "theme.docs.versions.unreleasedVersionLabel": "Dette er den ikke publicerede dokumentation for {siteTitle} {versionLabel} versionen.",
49
- "theme.lastUpdated.atDate": " den {date}",
50
- "theme.lastUpdated.byUser": " af {user}",
51
- "theme.lastUpdated.lastUpdatedAtBy": "Senest opdateret{atDate}{byUser}",
52
- "theme.tags.tagsListLabel": "Tags:",
53
- "theme.tags.tagsPageLink": "Se alle Tags",
54
- "theme.tags.tagsPageTitle": "Tags"
55
- }