@docusaurus/theme-classic 2.0.0-beta.1ec2c95e3 → 2.0.0-beta.21

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 (675) hide show
  1. package/README.md +2 -2
  2. package/lib/admonitions.css +39 -0
  3. package/lib/getSwizzleConfig.d.ts +8 -0
  4. package/lib/getSwizzleConfig.js +228 -0
  5. package/lib/index.d.ts +12 -0
  6. package/lib/index.js +106 -170
  7. package/lib/nprogress.css +41 -0
  8. package/lib/nprogress.d.ts +10 -0
  9. package/lib/nprogress.js +25 -0
  10. package/lib/prism-include-languages.d.ts +7 -0
  11. package/lib/prism-include-languages.js +0 -2
  12. package/lib/theme/Admonition/index.d.ts +9 -0
  13. package/lib/theme/Admonition/index.js +101 -0
  14. package/lib/theme/AnnouncementBar/index.d.ts +8 -0
  15. package/lib/theme/AnnouncementBar/index.js +38 -63
  16. package/lib/theme/AnnouncementBar/styles.module.css +23 -32
  17. package/lib/theme/BackToTopButton/index.d.ts +8 -0
  18. package/lib/theme/BackToTopButton/index.js +31 -0
  19. package/lib/theme/BackToTopButton/styles.module.css +44 -0
  20. package/lib/theme/BlogArchivePage/index.d.ts +10 -0
  21. package/lib/theme/BlogArchivePage/index.js +80 -0
  22. package/lib/theme/BlogLayout/index.d.ts +9 -0
  23. package/lib/theme/BlogLayout/index.js +33 -0
  24. package/lib/theme/BlogListPage/index.d.ts +10 -0
  25. package/lib/theme/BlogListPage/index.js +53 -61
  26. package/lib/theme/BlogListPaginator/index.d.ts +9 -0
  27. package/lib/theme/BlogListPaginator/index.js +41 -56
  28. package/lib/theme/BlogPostAuthor/index.d.ts +9 -0
  29. package/lib/theme/BlogPostAuthor/index.js +46 -0
  30. package/lib/theme/BlogPostAuthors/index.d.ts +9 -0
  31. package/lib/theme/BlogPostAuthors/index.js +42 -0
  32. package/{src/theme/Toggle → lib/theme/BlogPostAuthors}/styles.module.css +11 -7
  33. package/lib/theme/BlogPostItem/index.d.ts +9 -0
  34. package/lib/theme/BlogPostItem/index.js +120 -127
  35. package/lib/theme/BlogPostItem/styles.module.css +9 -0
  36. package/lib/theme/BlogPostPage/index.d.ts +10 -0
  37. package/lib/theme/BlogPostPage/index.js +90 -60
  38. package/lib/theme/BlogPostPaginator/index.d.ts +9 -0
  39. package/lib/theme/BlogPostPaginator/index.js +40 -57
  40. package/lib/theme/BlogSidebar/Desktop/index.d.ts +9 -0
  41. package/{lib-next/theme/BlogSidebar → lib/theme/BlogSidebar/Desktop}/index.js +19 -23
  42. package/{lib-next/theme/BlogSidebar → lib/theme/BlogSidebar/Desktop}/styles.module.css +5 -4
  43. package/lib/theme/BlogSidebar/Mobile/index.d.ts +9 -0
  44. package/lib/theme/BlogSidebar/Mobile/index.js +34 -0
  45. package/lib/theme/BlogSidebar/index.d.ts +9 -0
  46. package/lib/theme/BlogSidebar/index.js +13 -43
  47. package/lib/theme/BlogTagsListPage/index.d.ts +10 -0
  48. package/lib/theme/BlogTagsListPage/index.js +27 -69
  49. package/lib/theme/BlogTagsPostsPage/index.d.ts +10 -0
  50. package/lib/theme/BlogTagsPostsPage/index.js +72 -89
  51. package/lib/theme/CodeBlock/Container/index.d.ts +10 -0
  52. package/lib/theme/CodeBlock/Container/index.js +30 -0
  53. package/lib/theme/CodeBlock/Container/styles.module.css +14 -0
  54. package/lib/theme/CodeBlock/Content/Element.d.ts +9 -0
  55. package/lib/theme/CodeBlock/Content/Element.js +23 -0
  56. package/lib/theme/CodeBlock/Content/String.d.ts +9 -0
  57. package/lib/theme/CodeBlock/Content/String.js +104 -0
  58. package/{lib-next/theme/CodeBlock → lib/theme/CodeBlock/Content}/styles.module.css +45 -27
  59. package/lib/theme/CodeBlock/CopyButton/index.d.ts +9 -0
  60. package/lib/theme/CodeBlock/CopyButton/index.js +61 -0
  61. package/lib/theme/CodeBlock/CopyButton/styles.module.css +47 -0
  62. package/lib/theme/CodeBlock/Line/index.d.ts +9 -0
  63. package/lib/theme/CodeBlock/Line/index.js +42 -0
  64. package/lib/theme/CodeBlock/Line/styles.module.css +51 -0
  65. package/lib/theme/CodeBlock/WordWrapButton/index.d.ts +9 -0
  66. package/lib/theme/CodeBlock/WordWrapButton/index.js +40 -0
  67. package/lib/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
  68. package/lib/theme/CodeBlock/index.d.ts +9 -0
  69. package/lib/theme/CodeBlock/index.js +31 -246
  70. package/lib/theme/ColorModeToggle/index.d.ts +11 -0
  71. package/lib/theme/ColorModeToggle/index.js +60 -0
  72. package/lib/theme/ColorModeToggle/styles.module.css +35 -0
  73. package/lib/theme/Details/index.d.ts +9 -0
  74. package/lib/theme/Details/index.js +21 -0
  75. package/lib/theme/Details/styles.module.css +13 -0
  76. package/lib/theme/DocBreadcrumbs/index.d.ts +8 -0
  77. package/lib/theme/DocBreadcrumbs/index.js +115 -0
  78. package/lib/theme/{Heading/styles.css → DocBreadcrumbs/styles.module.css} +9 -13
  79. package/lib/theme/DocCard/index.d.ts +9 -0
  80. package/lib/theme/DocCard/index.js +83 -0
  81. package/lib/theme/DocCard/styles.module.css +34 -0
  82. package/lib/theme/DocCardList/index.d.ts +9 -0
  83. package/lib/theme/DocCardList/index.js +30 -0
  84. package/lib/theme/DocCategoryGeneratedIndexPage/index.d.ts +10 -0
  85. package/lib/theme/DocCategoryGeneratedIndexPage/index.js +74 -0
  86. package/lib/theme/DocCategoryGeneratedIndexPage/styles.module.css +26 -0
  87. package/lib/theme/DocItem/index.d.ts +10 -0
  88. package/lib/theme/DocItem/index.js +102 -113
  89. package/lib/theme/DocItem/styles.module.css +12 -10
  90. package/lib/theme/DocItemFooter/index.d.ts +10 -0
  91. package/lib/theme/DocItemFooter/index.js +74 -0
  92. package/{lib-next/theme/DocItem → lib/theme/DocItemFooter}/styles.module.css +1 -9
  93. package/lib/theme/DocPage/Layout/Main/index.d.ts +9 -0
  94. package/lib/theme/DocPage/Layout/Main/index.js +29 -0
  95. package/lib/theme/DocPage/Layout/Main/styles.module.css +28 -0
  96. package/lib/theme/DocPage/Layout/Sidebar/ExpandButton/index.d.ts +9 -0
  97. package/lib/theme/DocPage/Layout/Sidebar/ExpandButton/index.js +34 -0
  98. package/lib/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
  99. package/lib/theme/DocPage/Layout/Sidebar/index.d.ts +9 -0
  100. package/lib/theme/DocPage/Layout/Sidebar/index.js +65 -0
  101. package/lib/theme/DocPage/Layout/Sidebar/styles.module.css +32 -0
  102. package/lib/theme/DocPage/Layout/index.d.ts +9 -0
  103. package/lib/theme/DocPage/Layout/index.js +34 -0
  104. package/{lib-next/theme/IconExternalLink → lib/theme/DocPage/Layout}/styles.module.css +7 -4
  105. package/lib/theme/DocPage/index.d.ts +10 -0
  106. package/lib/theme/DocPage/index.js +43 -165
  107. package/lib/theme/DocPaginator/index.d.ts +9 -0
  108. package/lib/theme/DocPaginator/index.js +40 -56
  109. package/lib/theme/DocSidebar/Desktop/CollapseButton/index.d.ts +9 -0
  110. package/lib/theme/DocSidebar/Desktop/CollapseButton/index.js +34 -0
  111. package/lib/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
  112. package/lib/theme/DocSidebar/Desktop/Content/index.d.ts +9 -0
  113. package/lib/theme/DocSidebar/Desktop/Content/index.js +44 -0
  114. package/lib/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
  115. package/lib/theme/DocSidebar/Desktop/index.d.ts +11 -0
  116. package/lib/theme/DocSidebar/Desktop/index.js +34 -0
  117. package/lib/theme/DocSidebar/Desktop/styles.module.css +50 -0
  118. package/lib/theme/DocSidebar/Mobile/index.d.ts +11 -0
  119. package/lib/theme/DocSidebar/Mobile/index.js +45 -0
  120. package/lib/theme/DocSidebar/index.d.ts +9 -0
  121. package/lib/theme/DocSidebar/index.js +17 -302
  122. package/lib/theme/DocSidebarItem/Category/index.d.ts +9 -0
  123. package/lib/theme/DocSidebarItem/Category/index.js +183 -0
  124. package/lib/theme/DocSidebarItem/Html/index.d.ts +9 -0
  125. package/lib/theme/DocSidebarItem/Html/index.js +26 -0
  126. package/lib/theme/DocSidebarItem/Html/styles.module.css +13 -0
  127. package/lib/theme/DocSidebarItem/Link/index.d.ts +9 -0
  128. package/lib/theme/DocSidebarItem/Link/index.js +53 -0
  129. package/{lib-next/theme/MDXPage → lib/theme/DocSidebarItem/Link}/styles.module.css +2 -2
  130. package/lib/theme/DocSidebarItem/index.d.ts +9 -0
  131. package/lib/theme/DocSidebarItem/index.js +21 -0
  132. package/lib/theme/DocSidebarItems/index.d.ts +11 -0
  133. package/lib/theme/DocSidebarItems/index.js +22 -0
  134. package/lib/theme/DocTagDocListPage/index.d.ts +10 -0
  135. package/lib/theme/DocTagDocListPage/index.js +89 -0
  136. package/lib/theme/DocTagsListPage/index.d.ts +10 -0
  137. package/lib/theme/DocTagsListPage/index.js +40 -0
  138. package/lib/theme/DocVersionBadge/index.d.ts +9 -0
  139. package/lib/theme/DocVersionBadge/index.js +30 -0
  140. package/lib/theme/DocVersionBanner/index.d.ts +9 -0
  141. package/lib/theme/DocVersionBanner/index.js +105 -102
  142. package/lib/theme/EditThisPage/index.d.ts +9 -0
  143. package/lib/theme/EditThisPage/index.js +19 -24
  144. package/{src/theme/hooks/useLockBodyScroll.ts → lib/theme/ErrorPageContent.d.ts} +4 -14
  145. package/lib/theme/ErrorPageContent.js +35 -0
  146. package/lib/theme/Footer/Copyright/index.d.ts +9 -0
  147. package/lib/theme/Footer/Copyright/index.js +17 -0
  148. package/lib/theme/Footer/Layout/index.d.ts +9 -0
  149. package/lib/theme/Footer/Layout/index.js +26 -0
  150. package/lib/theme/Footer/LinkItem/index.d.ts +9 -0
  151. package/lib/theme/Footer/LinkItem/index.js +31 -0
  152. package/lib/theme/Footer/Links/MultiColumn/index.d.ts +9 -0
  153. package/lib/theme/Footer/Links/MultiColumn/index.js +43 -0
  154. package/lib/theme/Footer/Links/Simple/index.d.ts +9 -0
  155. package/lib/theme/Footer/Links/Simple/index.js +37 -0
  156. package/lib/theme/Footer/Links/index.d.ts +9 -0
  157. package/lib/theme/Footer/Links/index.js +17 -0
  158. package/lib/theme/Footer/Logo/index.d.ts +9 -0
  159. package/lib/theme/Footer/Logo/index.js +36 -0
  160. package/lib/theme/Footer/{styles.module.css → Logo/styles.module.css} +2 -1
  161. package/{lib-next/theme/Footer/styles.module.css → lib/theme/Footer/index.d.ts} +4 -9
  162. package/lib/theme/Footer/index.js +17 -104
  163. package/lib/theme/Heading/index.d.ts +9 -0
  164. package/lib/theme/Heading/index.js +35 -68
  165. package/lib/theme/Heading/styles.module.css +25 -5
  166. package/lib/theme/IconArrow/index.d.ts +9 -0
  167. package/lib/theme/IconArrow/index.js +7 -18
  168. package/lib/theme/IconClose/index.d.ts +9 -0
  169. package/lib/theme/IconClose/index.js +23 -0
  170. package/lib/theme/IconDarkMode/index.d.ts +9 -0
  171. package/lib/theme/IconDarkMode/index.js +17 -0
  172. package/lib/theme/IconEdit/index.d.ts +9 -0
  173. package/lib/theme/IconEdit/index.js +16 -25
  174. package/lib/theme/IconExternalLink/index.d.ts +9 -0
  175. package/lib/theme/IconExternalLink/index.js +17 -24
  176. package/lib/theme/IconExternalLink/styles.module.css +0 -2
  177. package/lib/theme/IconHome/index.d.ts +9 -0
  178. package/lib/theme/IconHome/index.js +17 -0
  179. package/lib/theme/IconLanguage/index.d.ts +9 -0
  180. package/lib/theme/IconLanguage/index.js +16 -23
  181. package/lib/theme/IconLightMode/index.d.ts +9 -0
  182. package/lib/theme/IconLightMode/index.js +17 -0
  183. package/lib/theme/IconMenu/index.d.ts +9 -0
  184. package/lib/theme/IconMenu/index.js +21 -20
  185. package/lib/theme/LastUpdated/index.d.ts +9 -0
  186. package/lib/theme/LastUpdated/index.js +57 -42
  187. package/lib/theme/Layout/index.d.ts +10 -0
  188. package/lib/theme/Layout/index.js +33 -46
  189. package/lib/theme/LayoutProviders/index.d.ts +9 -0
  190. package/lib/theme/LayoutProviders/index.js +27 -30
  191. package/{lib-next/theme/BlogPostItem/styles.module.css → lib/theme/Logo/index.d.ts} +3 -12
  192. package/lib/theme/Logo/index.js +37 -49
  193. package/lib/theme/MDXComponents/A.d.ts +9 -0
  194. package/{lib-next/theme/ThemeContext.js → lib/theme/MDXComponents/A.js} +4 -2
  195. package/lib/theme/MDXComponents/Code.d.ts +9 -0
  196. package/lib/theme/MDXComponents/Code.js +28 -0
  197. package/lib/theme/MDXComponents/Details.d.ts +9 -0
  198. package/lib/theme/MDXComponents/Details.js +22 -0
  199. package/lib/theme/MDXComponents/Head.d.ts +9 -0
  200. package/lib/theme/MDXComponents/Head.js +23 -0
  201. package/lib/theme/MDXComponents/Heading.d.ts +9 -0
  202. package/{lib-next/theme/NavbarItem/SearchNavbarItem.js → lib/theme/MDXComponents/Heading.js} +3 -7
  203. package/lib/theme/MDXComponents/Img/index.d.ts +9 -0
  204. package/lib/theme/MDXComponents/Img/index.js +22 -0
  205. package/{lib-next/theme/IconEdit → lib/theme/MDXComponents/Img}/styles.module.css +2 -3
  206. package/lib/theme/MDXComponents/Pre.d.ts +9 -0
  207. package/lib/theme/MDXComponents/Pre.js +19 -0
  208. package/lib/theme/MDXComponents/Ul/index.d.ts +9 -0
  209. package/lib/theme/MDXComponents/Ul/index.js +21 -0
  210. package/lib/theme/MDXComponents/Ul/styles.module.css +14 -0
  211. package/lib/theme/MDXComponents/index.d.ts +9 -0
  212. package/lib/theme/MDXComponents/index.js +23 -57
  213. package/lib/theme/MDXContent/index.d.ts +9 -0
  214. package/lib/theme/MDXContent/index.js +12 -0
  215. package/lib/theme/MDXPage/index.d.ts +10 -0
  216. package/lib/theme/MDXPage/index.js +44 -56
  217. package/{lib-next/theme/Heading/styles.module.css → lib/theme/Navbar/ColorModeToggle/index.d.ts} +3 -9
  218. package/lib/theme/Navbar/ColorModeToggle/index.js +23 -0
  219. package/lib/theme/Navbar/Content/index.d.ts +8 -0
  220. package/lib/theme/Navbar/Content/index.js +71 -0
  221. package/lib/theme/Navbar/Content/styles.module.css +15 -0
  222. package/lib/theme/Navbar/Layout/index.d.ts +9 -0
  223. package/lib/theme/Navbar/Layout/index.js +52 -0
  224. package/{lib-next/theme/Navbar → lib/theme/Navbar/Layout}/styles.module.css +0 -6
  225. package/lib/theme/Navbar/Logo/index.d.ts +8 -0
  226. package/{lib-next/theme/TabItem → lib/theme/Navbar/Logo}/index.js +7 -12
  227. package/lib/theme/Navbar/MobileSidebar/Header/index.d.ts +8 -0
  228. package/lib/theme/Navbar/MobileSidebar/Header/index.js +31 -0
  229. package/lib/theme/Navbar/MobileSidebar/Layout/index.d.ts +9 -0
  230. package/lib/theme/Navbar/MobileSidebar/Layout/index.js +28 -0
  231. package/{lib-next/theme/TOCInline/styles.module.css → lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.d.ts} +2 -6
  232. package/lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.js +32 -0
  233. package/lib/theme/Navbar/MobileSidebar/SecondaryMenu/index.d.ts +8 -0
  234. package/lib/theme/Navbar/MobileSidebar/SecondaryMenu/index.js +35 -0
  235. package/lib/theme/Navbar/MobileSidebar/Toggle/index.d.ts +8 -0
  236. package/lib/theme/Navbar/MobileSidebar/Toggle/index.js +23 -0
  237. package/lib/theme/Navbar/MobileSidebar/index.d.ts +8 -0
  238. package/lib/theme/Navbar/MobileSidebar/index.js +29 -0
  239. package/lib/theme/Navbar/Search/index.d.ts +9 -0
  240. package/lib/theme/Navbar/Search/index.js +12 -0
  241. package/lib/theme/Navbar/Search/styles.module.css +20 -0
  242. package/lib/theme/Navbar/index.d.ts +8 -0
  243. package/lib/theme/Navbar/index.js +9 -140
  244. package/lib/theme/NavbarItem/ComponentTypes.d.ts +9 -0
  245. package/lib/theme/NavbarItem/ComponentTypes.js +27 -0
  246. package/lib/theme/NavbarItem/DefaultNavbarItem.d.ts +10 -0
  247. package/lib/theme/NavbarItem/DefaultNavbarItem.js +36 -193
  248. package/lib/theme/NavbarItem/DocNavbarItem.d.ts +9 -0
  249. package/lib/theme/NavbarItem/DocNavbarItem.js +24 -52
  250. package/lib/theme/NavbarItem/DocSidebarNavbarItem.d.ts +9 -0
  251. package/lib/theme/NavbarItem/DocSidebarNavbarItem.js +33 -0
  252. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.d.ts +9 -0
  253. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +75 -62
  254. package/lib/theme/NavbarItem/DocsVersionNavbarItem.d.ts +9 -0
  255. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +11 -32
  256. package/lib/theme/NavbarItem/DropdownNavbarItem.d.ts +9 -0
  257. package/lib/theme/NavbarItem/DropdownNavbarItem.js +162 -0
  258. package/lib/theme/NavbarItem/HtmlNavbarItem.d.ts +9 -0
  259. package/lib/theme/NavbarItem/HtmlNavbarItem.js +28 -0
  260. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/index.d.ts +9 -0
  261. package/{src/theme/NavbarItem/LocaleDropdownNavbarItem.tsx → lib/theme/NavbarItem/LocaleDropdownNavbarItem/index.js} +28 -27
  262. package/{lib-next/theme/hooks/styles.css → lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css} +3 -2
  263. package/lib/theme/NavbarItem/NavbarNavLink.d.ts +9 -0
  264. package/lib/theme/NavbarItem/NavbarNavLink.js +68 -0
  265. package/lib/theme/NavbarItem/SearchNavbarItem.d.ts +9 -0
  266. package/lib/theme/NavbarItem/SearchNavbarItem.js +10 -19
  267. package/lib/theme/NavbarItem/index.d.ts +9 -0
  268. package/lib/theme/NavbarItem/index.js +15 -45
  269. package/lib/theme/NotFound.d.ts +8 -0
  270. package/lib/theme/NotFound.js +44 -49
  271. package/lib/theme/PaginatorNavLink/index.d.ts +9 -0
  272. package/lib/theme/PaginatorNavLink/index.js +23 -0
  273. package/lib/theme/SearchBar.d.ts +7 -0
  274. package/lib/theme/SearchBar.js +11 -15
  275. package/lib/theme/SearchMetadata/index.d.ts +9 -0
  276. package/lib/theme/SearchMetadata/index.js +34 -0
  277. package/lib/theme/SiteMetadata/index.d.ts +8 -0
  278. package/lib/theme/SiteMetadata/index.js +117 -0
  279. package/lib/theme/SkipToContent/index.d.ts +8 -0
  280. package/lib/theme/SkipToContent/index.js +16 -62
  281. package/lib/theme/SkipToContent/styles.module.css +7 -0
  282. package/lib/theme/TOC/index.d.ts +9 -0
  283. package/lib/theme/TOC/index.js +18 -52
  284. package/lib/theme/TOC/styles.module.css +1 -1
  285. package/lib/theme/TOCCollapsible/CollapseButton/index.d.ts +9 -0
  286. package/lib/theme/TOCCollapsible/CollapseButton/index.js +29 -0
  287. package/lib/theme/TOCCollapsible/CollapseButton/styles.module.css +29 -0
  288. package/lib/theme/TOCCollapsible/index.d.ts +9 -0
  289. package/lib/theme/TOCCollapsible/index.js +42 -0
  290. package/lib/theme/TOCCollapsible/styles.module.css +31 -0
  291. package/lib/theme/TOCInline/index.d.ts +9 -0
  292. package/lib/theme/TOCInline/index.js +15 -46
  293. package/lib/theme/TOCItems/Tree.d.ts +11 -0
  294. package/lib/theme/TOCItems/Tree.js +37 -0
  295. package/lib/theme/TOCItems/index.d.ts +9 -0
  296. package/lib/theme/TOCItems/index.js +53 -0
  297. package/lib/theme/TabItem/index.d.ts +9 -0
  298. package/lib/theme/TabItem/index.js +11 -24
  299. package/lib/theme/{hooks/styles.css → TabItem/styles.module.css} +2 -2
  300. package/lib/theme/Tabs/index.d.ts +9 -0
  301. package/lib/theme/Tabs/index.js +159 -123
  302. package/lib/theme/Tabs/styles.module.css +4 -13
  303. package/lib/theme/Tag/index.d.ts +9 -0
  304. package/lib/theme/Tag/index.js +23 -0
  305. package/lib/theme/Tag/styles.module.css +70 -0
  306. package/lib/theme/TagsListByLetter/index.d.ts +9 -0
  307. package/lib/theme/TagsListByLetter/index.js +38 -0
  308. package/lib/theme/TagsListByLetter/styles.module.css +11 -0
  309. package/lib/theme/TagsListInline/index.d.ts +9 -0
  310. package/lib/theme/TagsListInline/index.js +31 -0
  311. package/lib/theme/TagsListInline/styles.module.css +15 -0
  312. package/lib/theme/ThemedImage/index.d.ts +9 -0
  313. package/lib/theme/ThemedImage/index.js +33 -43
  314. package/lib/theme/ThemedImage/styles.module.css +2 -2
  315. package/lib/theme/prism-include-languages.d.ts +8 -0
  316. package/lib/theme/prism-include-languages.js +19 -33
  317. package/lib/translations.d.ts +15 -0
  318. package/lib/translations.js +122 -122
  319. package/lib/validateThemeConfig.d.ts +12 -0
  320. package/lib/validateThemeConfig.js +367 -284
  321. package/package.json +36 -35
  322. package/src/admonitions.css +39 -0
  323. package/src/deps.d.ts +13 -0
  324. package/src/getSwizzleConfig.ts +245 -0
  325. package/src/index.ts +55 -76
  326. package/src/nprogress.css +41 -0
  327. package/src/nprogress.ts +31 -0
  328. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  329. package/src/theme/Admonition/index.tsx +106 -0
  330. package/src/theme/AnnouncementBar/index.tsx +9 -15
  331. package/src/theme/AnnouncementBar/styles.module.css +23 -32
  332. package/src/theme/BackToTopButton/index.tsx +34 -0
  333. package/src/theme/BackToTopButton/styles.module.css +44 -0
  334. package/src/theme/BlogArchivePage/index.tsx +92 -0
  335. package/src/theme/BlogLayout/index.tsx +38 -0
  336. package/src/theme/BlogListPage/index.tsx +45 -35
  337. package/src/theme/BlogListPaginator/index.tsx +27 -32
  338. package/src/theme/BlogPostAuthor/index.tsx +50 -0
  339. package/src/theme/BlogPostAuthors/index.tsx +49 -0
  340. package/{lib/theme/Toggle → src/theme/BlogPostAuthors}/styles.module.css +11 -7
  341. package/src/theme/BlogPostItem/index.tsx +86 -92
  342. package/src/theme/BlogPostItem/styles.module.css +9 -0
  343. package/src/theme/BlogPostPage/index.tsx +85 -39
  344. package/src/theme/BlogPostPaginator/index.tsx +27 -36
  345. package/src/theme/BlogSidebar/Desktop/index.tsx +45 -0
  346. package/src/theme/BlogSidebar/{styles.module.css → Desktop/styles.module.css} +5 -4
  347. package/src/theme/BlogSidebar/Mobile/index.tsx +38 -0
  348. package/src/theme/BlogSidebar/index.tsx +10 -33
  349. package/src/theme/BlogTagsListPage/index.tsx +24 -67
  350. package/src/theme/BlogTagsPostsPage/index.tsx +50 -49
  351. package/src/theme/CodeBlock/Container/index.tsx +35 -0
  352. package/src/theme/CodeBlock/Container/styles.module.css +14 -0
  353. package/src/theme/CodeBlock/Content/Element.tsx +30 -0
  354. package/src/theme/CodeBlock/Content/String.tsx +111 -0
  355. package/src/theme/CodeBlock/{styles.module.css → Content/styles.module.css} +45 -27
  356. package/src/theme/CodeBlock/CopyButton/index.tsx +67 -0
  357. package/src/theme/CodeBlock/CopyButton/styles.module.css +47 -0
  358. package/src/theme/CodeBlock/Line/index.tsx +49 -0
  359. package/src/theme/CodeBlock/Line/styles.module.css +51 -0
  360. package/src/theme/CodeBlock/WordWrapButton/index.tsx +49 -0
  361. package/src/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
  362. package/src/theme/CodeBlock/index.tsx +29 -253
  363. package/src/theme/ColorModeToggle/index.tsx +67 -0
  364. package/src/theme/ColorModeToggle/styles.module.css +35 -0
  365. package/src/theme/Details/index.tsx +26 -0
  366. package/src/theme/Details/styles.module.css +13 -0
  367. package/src/theme/DocBreadcrumbs/index.tsx +141 -0
  368. package/{lib-next/theme/Heading/styles.css → src/theme/DocBreadcrumbs/styles.module.css} +9 -13
  369. package/src/theme/DocCard/index.tsx +117 -0
  370. package/src/theme/DocCard/styles.module.css +34 -0
  371. package/src/theme/DocCardList/index.tsx +35 -0
  372. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +86 -0
  373. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +26 -0
  374. package/src/theme/DocItem/index.tsx +92 -77
  375. package/src/theme/DocItem/styles.module.css +12 -10
  376. package/src/theme/DocItemFooter/index.tsx +90 -0
  377. package/{lib-next/theme/Toggle → src/theme/DocItemFooter}/styles.module.css +9 -8
  378. package/src/theme/DocPage/Layout/Main/index.tsx +36 -0
  379. package/src/theme/DocPage/Layout/Main/styles.module.css +28 -0
  380. package/src/theme/DocPage/Layout/Sidebar/ExpandButton/index.tsx +40 -0
  381. package/src/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
  382. package/src/theme/DocPage/Layout/Sidebar/index.tsx +73 -0
  383. package/src/theme/DocPage/Layout/Sidebar/styles.module.css +32 -0
  384. package/src/theme/DocPage/Layout/index.tsx +38 -0
  385. package/src/theme/DocPage/Layout/styles.module.css +15 -0
  386. package/src/theme/DocPage/index.tsx +39 -167
  387. package/src/theme/DocPaginator/index.tsx +28 -39
  388. package/src/theme/DocSidebar/Desktop/CollapseButton/index.tsx +38 -0
  389. package/src/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
  390. package/src/theme/DocSidebar/Desktop/Content/index.tsx +55 -0
  391. package/src/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
  392. package/src/theme/DocSidebar/Desktop/index.tsx +40 -0
  393. package/src/theme/DocSidebar/Desktop/styles.module.css +50 -0
  394. package/src/theme/DocSidebar/Mobile/index.tsx +54 -0
  395. package/src/theme/DocSidebar/index.tsx +14 -351
  396. package/src/theme/DocSidebarItem/Category/index.tsx +209 -0
  397. package/src/theme/DocSidebarItem/Html/index.tsx +34 -0
  398. package/src/theme/DocSidebarItem/Html/styles.module.css +13 -0
  399. package/src/theme/DocSidebarItem/Link/index.tsx +57 -0
  400. package/src/theme/DocSidebarItem/Link/styles.module.css +10 -0
  401. package/src/theme/DocSidebarItem/index.tsx +27 -0
  402. package/src/theme/DocSidebarItems/index.tsx +27 -0
  403. package/src/theme/DocTagDocListPage/index.tsx +95 -0
  404. package/src/theme/DocTagsListPage/index.tsx +43 -0
  405. package/src/theme/DocVersionBadge/index.tsx +35 -0
  406. package/src/theme/DocVersionBanner/index.tsx +53 -27
  407. package/src/theme/EditThisPage/index.tsx +7 -3
  408. package/src/theme/ErrorPageContent.tsx +41 -0
  409. package/src/theme/Footer/Copyright/index.tsx +20 -0
  410. package/src/theme/Footer/Layout/index.tsx +34 -0
  411. package/src/theme/Footer/LinkItem/index.tsx +36 -0
  412. package/src/theme/Footer/Links/MultiColumn/index.tsx +51 -0
  413. package/src/theme/Footer/Links/Simple/index.tsx +42 -0
  414. package/src/theme/Footer/Links/index.tsx +21 -0
  415. package/src/theme/Footer/Logo/index.tsx +41 -0
  416. package/src/theme/Footer/{styles.module.css → Logo/styles.module.css} +2 -1
  417. package/src/theme/Footer/index.tsx +13 -122
  418. package/src/theme/Heading/index.tsx +31 -58
  419. package/src/theme/Heading/styles.module.css +25 -5
  420. package/src/theme/IconArrow/index.tsx +2 -4
  421. package/src/theme/IconClose/index.tsx +26 -0
  422. package/src/theme/IconDarkMode/index.tsx +20 -0
  423. package/src/theme/IconEdit/index.tsx +5 -5
  424. package/src/theme/IconExternalLink/index.tsx +3 -5
  425. package/src/theme/IconExternalLink/styles.module.css +0 -2
  426. package/src/theme/IconHome/index.tsx +20 -0
  427. package/src/theme/IconLanguage/index.tsx +6 -8
  428. package/src/theme/IconLightMode/index.tsx +20 -0
  429. package/src/theme/IconMenu/index.tsx +3 -5
  430. package/src/theme/LastUpdated/index.tsx +4 -2
  431. package/src/theme/Layout/index.tsx +22 -16
  432. package/src/theme/LayoutProviders/index.tsx +16 -9
  433. package/src/theme/Logo/index.tsx +23 -22
  434. package/src/theme/{ThemeContext.ts → MDXComponents/A.tsx} +5 -6
  435. package/src/theme/MDXComponents/Code.tsx +37 -0
  436. package/src/theme/MDXComponents/Details.tsx +27 -0
  437. package/src/theme/MDXComponents/Head.tsx +31 -0
  438. package/src/theme/MDXComponents/Heading.tsx +14 -0
  439. package/src/theme/MDXComponents/Img/index.tsx +27 -0
  440. package/src/theme/MDXComponents/Img/styles.module.css +10 -0
  441. package/src/theme/MDXComponents/Pre.tsx +22 -0
  442. package/src/theme/MDXComponents/Ul/index.tsx +26 -0
  443. package/src/theme/MDXComponents/Ul/styles.module.css +14 -0
  444. package/src/theme/MDXComponents/index.tsx +23 -42
  445. package/src/theme/MDXContent/index.tsx +15 -0
  446. package/src/theme/MDXPage/index.tsx +38 -35
  447. package/src/theme/Navbar/ColorModeToggle/index.tsx +30 -0
  448. package/src/theme/Navbar/Content/index.tsx +86 -0
  449. package/src/theme/Navbar/Content/styles.module.css +15 -0
  450. package/src/theme/Navbar/Layout/index.tsx +57 -0
  451. package/{lib/theme/Navbar → src/theme/Navbar/Layout}/styles.module.css +0 -6
  452. package/src/theme/Navbar/Logo/index.tsx +19 -0
  453. package/src/theme/Navbar/MobileSidebar/Header/index.tsx +34 -0
  454. package/src/theme/Navbar/MobileSidebar/Layout/index.tsx +31 -0
  455. package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +37 -0
  456. package/src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx +38 -0
  457. package/src/theme/Navbar/MobileSidebar/Toggle/index.tsx +25 -0
  458. package/src/theme/Navbar/MobileSidebar/index.tsx +33 -0
  459. package/src/theme/Navbar/Search/index.tsx +19 -0
  460. package/src/theme/Navbar/Search/styles.module.css +20 -0
  461. package/src/theme/Navbar/index.tsx +7 -147
  462. package/src/theme/NavbarItem/ComponentTypes.tsx +32 -0
  463. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +36 -208
  464. package/src/theme/NavbarItem/DocNavbarItem.tsx +13 -41
  465. package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +36 -0
  466. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +59 -52
  467. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +5 -8
  468. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +191 -0
  469. package/src/theme/NavbarItem/HtmlNavbarItem.tsx +32 -0
  470. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/index.tsx +77 -0
  471. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  472. package/src/theme/NavbarItem/NavbarNavLink.tsx +74 -0
  473. package/src/theme/NavbarItem/SearchNavbarItem.tsx +11 -3
  474. package/src/theme/NavbarItem/index.tsx +15 -32
  475. package/src/theme/NotFound.tsx +40 -37
  476. package/src/theme/PaginatorNavLink/index.tsx +26 -0
  477. package/src/theme/SearchBar.tsx +2 -1
  478. package/src/theme/SearchMetadata/index.tsx +43 -0
  479. package/src/theme/{LayoutHead → SiteMetadata}/index.tsx +31 -44
  480. package/src/theme/SkipToContent/index.tsx +5 -33
  481. package/src/theme/SkipToContent/styles.module.css +7 -0
  482. package/src/theme/TOC/index.tsx +14 -44
  483. package/src/theme/TOC/styles.module.css +1 -1
  484. package/src/theme/TOCCollapsible/CollapseButton/index.tsx +36 -0
  485. package/src/theme/TOCCollapsible/CollapseButton/styles.module.css +29 -0
  486. package/src/theme/TOCCollapsible/index.tsx +46 -0
  487. package/src/theme/TOCCollapsible/styles.module.css +31 -0
  488. package/src/theme/TOCInline/index.tsx +15 -35
  489. package/src/theme/TOCItems/Tree.tsx +46 -0
  490. package/src/theme/TOCItems/index.tsx +61 -0
  491. package/src/theme/TabItem/index.tsx +12 -4
  492. package/src/theme/TabItem/styles.module.css +10 -0
  493. package/src/theme/Tabs/index.tsx +121 -62
  494. package/src/theme/Tabs/styles.module.css +4 -13
  495. package/src/theme/Tag/index.tsx +27 -0
  496. package/src/theme/Tag/styles.module.css +70 -0
  497. package/src/theme/TagsListByLetter/index.tsx +43 -0
  498. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  499. package/src/theme/TagsListInline/index.tsx +35 -0
  500. package/src/theme/TagsListInline/styles.module.css +15 -0
  501. package/src/theme/ThemedImage/index.tsx +10 -12
  502. package/src/theme/ThemedImage/styles.module.css +2 -2
  503. package/src/theme/prism-include-languages.ts +20 -15
  504. package/src/theme-classic.d.ts +1272 -0
  505. package/src/translations.ts +85 -60
  506. package/src/validateThemeConfig.ts +448 -0
  507. package/babel.config.js +0 -35
  508. package/codeTranslations/README.md +0 -20
  509. package/codeTranslations/ar.json +0 -57
  510. package/codeTranslations/base.json +0 -112
  511. package/codeTranslations/bn.json +0 -56
  512. package/codeTranslations/da.json +0 -57
  513. package/codeTranslations/de.json +0 -57
  514. package/codeTranslations/es.json +0 -57
  515. package/codeTranslations/fa.json +0 -57
  516. package/codeTranslations/fil.json +0 -57
  517. package/codeTranslations/fr.json +0 -57
  518. package/codeTranslations/he.json +0 -57
  519. package/codeTranslations/hi.json +0 -57
  520. package/codeTranslations/ja.json +0 -57
  521. package/codeTranslations/ko.json +0 -57
  522. package/codeTranslations/pl.json +0 -57
  523. package/codeTranslations/pt-BR.json +0 -57
  524. package/codeTranslations/pt-PT.json +0 -57
  525. package/codeTranslations/ru.json +0 -57
  526. package/codeTranslations/tr.json +0 -57
  527. package/codeTranslations/vi.json +0 -57
  528. package/codeTranslations/zh-Hans.json +0 -57
  529. package/codeTranslations/zh-Hant.json +0 -57
  530. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  531. package/lib/__tests__/translations.test.js +0 -112
  532. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  533. package/lib/theme/BlogSidebar/styles.module.css +0 -44
  534. package/lib/theme/CodeBlock/styles.module.css +0 -68
  535. package/lib/theme/DocPage/styles.module.css +0 -80
  536. package/lib/theme/DocSidebar/styles.module.css +0 -124
  537. package/lib/theme/LayoutHead/index.js +0 -144
  538. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  539. package/lib/theme/SearchMetadatas/index.js +0 -33
  540. package/lib/theme/Seo/index.js +0 -49
  541. package/lib/theme/ThemeContext.js +0 -21
  542. package/lib/theme/ThemeProvider/index.js +0 -38
  543. package/lib/theme/Toggle/index.js +0 -94
  544. package/lib/theme/Toggle/styles.css +0 -103
  545. package/lib/theme/UserPreferencesContext.js +0 -18
  546. package/lib/theme/UserPreferencesProvider/index.js +0 -36
  547. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  548. package/lib/theme/hooks/useDocs.js +0 -18
  549. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  550. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  551. package/lib/theme/hooks/useLocationHash.js +0 -28
  552. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  553. package/lib/theme/hooks/usePrismTheme.js +0 -36
  554. package/lib/theme/hooks/useScrollPosition.js +0 -49
  555. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  556. package/lib/theme/hooks/useTabGroupChoice.js +0 -51
  557. package/lib/theme/hooks/useTheme.js +0 -99
  558. package/lib/theme/hooks/useThemeContext.js +0 -31
  559. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  560. package/lib/theme/hooks/useWindowSize.js +0 -55
  561. package/lib/types.d.ts +0 -598
  562. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  563. package/lib-next/__tests__/translations.test.js +0 -128
  564. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  565. package/lib-next/index.js +0 -221
  566. package/lib-next/theme/AnnouncementBar/index.js +0 -61
  567. package/lib-next/theme/AnnouncementBar/styles.module.css +0 -72
  568. package/lib-next/theme/BlogListPage/index.js +0 -56
  569. package/lib-next/theme/BlogListPaginator/index.js +0 -54
  570. package/lib-next/theme/BlogPostItem/index.js +0 -168
  571. package/lib-next/theme/BlogPostPage/index.js +0 -55
  572. package/lib-next/theme/BlogPostPaginator/index.js +0 -57
  573. package/lib-next/theme/BlogTagsListPage/index.js +0 -75
  574. package/lib-next/theme/BlogTagsPostsPage/index.js +0 -92
  575. package/lib-next/theme/CodeBlock/index.js +0 -268
  576. package/lib-next/theme/DocItem/index.js +0 -117
  577. package/lib-next/theme/DocPage/index.js +0 -173
  578. package/lib-next/theme/DocPage/styles.module.css +0 -80
  579. package/lib-next/theme/DocPaginator/index.js +0 -59
  580. package/lib-next/theme/DocSidebar/index.js +0 -352
  581. package/lib-next/theme/DocSidebar/styles.module.css +0 -124
  582. package/lib-next/theme/DocVersionBanner/index.js +0 -127
  583. package/lib-next/theme/EditThisPage/index.js +0 -21
  584. package/lib-next/theme/Footer/index.js +0 -129
  585. package/lib-next/theme/Heading/index.js +0 -67
  586. package/lib-next/theme/IconArrow/index.js +0 -20
  587. package/lib-next/theme/IconEdit/index.js +0 -28
  588. package/lib-next/theme/IconExternalLink/index.js +0 -26
  589. package/lib-next/theme/IconLanguage/index.js +0 -25
  590. package/lib-next/theme/IconMenu/index.js +0 -29
  591. package/lib-next/theme/LastUpdated/index.js +0 -77
  592. package/lib-next/theme/Layout/index.js +0 -46
  593. package/lib-next/theme/Layout/styles.css +0 -27
  594. package/lib-next/theme/LayoutHead/index.js +0 -137
  595. package/lib-next/theme/LayoutProviders/index.js +0 -26
  596. package/lib-next/theme/Logo/index.js +0 -54
  597. package/lib-next/theme/MDXComponents/index.js +0 -51
  598. package/lib-next/theme/MDXPage/index.js +0 -51
  599. package/lib-next/theme/Navbar/index.js +0 -146
  600. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +0 -227
  601. package/lib-next/theme/NavbarItem/DocNavbarItem.js +0 -57
  602. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -83
  603. package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +0 -28
  604. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -66
  605. package/lib-next/theme/NavbarItem/index.js +0 -41
  606. package/lib-next/theme/NotFound.js +0 -50
  607. package/lib-next/theme/SearchBar.js +0 -11
  608. package/lib-next/theme/SearchMetadatas/index.js +0 -20
  609. package/lib-next/theme/Seo/index.js +0 -36
  610. package/lib-next/theme/SkipToContent/index.js +0 -53
  611. package/lib-next/theme/SkipToContent/styles.module.css +0 -14
  612. package/lib-next/theme/TOC/index.js +0 -52
  613. package/lib-next/theme/TOC/styles.module.css +0 -23
  614. package/lib-next/theme/TOCInline/index.js +0 -43
  615. package/lib-next/theme/Tabs/index.js +0 -144
  616. package/lib-next/theme/Tabs/styles.module.css +0 -23
  617. package/lib-next/theme/ThemeProvider/index.js +0 -25
  618. package/lib-next/theme/ThemedImage/index.js +0 -41
  619. package/lib-next/theme/ThemedImage/styles.module.css +0 -18
  620. package/lib-next/theme/Toggle/index.js +0 -80
  621. package/lib-next/theme/Toggle/styles.css +0 -103
  622. package/lib-next/theme/UserPreferencesContext.js +0 -9
  623. package/lib-next/theme/UserPreferencesProvider/index.js +0 -24
  624. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  625. package/lib-next/theme/hooks/useDocs.js +0 -10
  626. package/lib-next/theme/hooks/useHideableNavbar.js +0 -79
  627. package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
  628. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  629. package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
  630. package/lib-next/theme/hooks/usePrismTheme.js +0 -20
  631. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  632. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  633. package/lib-next/theme/hooks/useTabGroupChoice.js +0 -39
  634. package/lib-next/theme/hooks/useTheme.js +0 -82
  635. package/lib-next/theme/hooks/useThemeContext.js +0 -22
  636. package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
  637. package/lib-next/theme/hooks/useWindowSize.js +0 -45
  638. package/lib-next/theme/prism-include-languages.js +0 -23
  639. package/lib-next/translations.js +0 -145
  640. package/lib-next/types.d.ts +0 -598
  641. package/lib-next/validateThemeConfig.js +0 -317
  642. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  643. package/src/__tests__/translations.test.ts +0 -116
  644. package/src/__tests__/validateThemeConfig.test.js +0 -333
  645. package/src/prism-include-languages.js +0 -11
  646. package/src/theme/DocPage/styles.module.css +0 -80
  647. package/src/theme/DocSidebar/styles.module.css +0 -124
  648. package/src/theme/Heading/styles.css +0 -23
  649. package/src/theme/Navbar/styles.module.css +0 -20
  650. package/src/theme/SearchMetadatas/index.tsx +0 -28
  651. package/src/theme/Seo/index.tsx +0 -46
  652. package/src/theme/ThemeProvider/index.tsx +0 -24
  653. package/src/theme/Toggle/index.tsx +0 -100
  654. package/src/theme/Toggle/styles.css +0 -103
  655. package/src/theme/UserPreferencesContext.ts +0 -12
  656. package/src/theme/UserPreferencesProvider/index.tsx +0 -27
  657. package/src/theme/hooks/styles.css +0 -10
  658. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  659. package/src/theme/hooks/useDocs.ts +0 -11
  660. package/src/theme/hooks/useHideableNavbar.ts +0 -85
  661. package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
  662. package/src/theme/hooks/useLocationHash.ts +0 -25
  663. package/src/theme/hooks/usePrismTheme.ts +0 -22
  664. package/src/theme/hooks/useScrollPosition.ts +0 -45
  665. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  666. package/src/theme/hooks/useTabGroupChoice.ts +0 -46
  667. package/src/theme/hooks/useTheme.ts +0 -92
  668. package/src/theme/hooks/useThemeContext.ts +0 -23
  669. package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
  670. package/src/theme/hooks/useWindowSize.ts +0 -51
  671. package/src/types.d.ts +0 -598
  672. package/src/validateThemeConfig.js +0 -317
  673. package/tsconfig.json +0 -12
  674. package/update-code-translations.js +0 -240
  675. package/update-code-translations.test.js +0 -33
@@ -1,54 +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
- import React from 'react';
8
- import Link from '@docusaurus/Link';
9
- import ThemedImage from '@theme/ThemedImage';
10
- import useBaseUrl from '@docusaurus/useBaseUrl';
11
- import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
12
-
13
- const Logo = (props) => {
14
- const {
15
- siteConfig: {
16
- title,
17
- themeConfig: {
18
- navbar: {
19
- title: navbarTitle,
20
- logo = {
21
- src: '',
22
- },
23
- },
24
- },
25
- },
26
- isClient,
27
- } = useDocusaurusContext();
28
- const {imageClassName, titleClassName, ...propsRest} = props;
29
- const logoLink = useBaseUrl(logo.href || '/');
30
- const sources = {
31
- light: useBaseUrl(logo.src),
32
- dark: useBaseUrl(logo.srcDark || logo.src),
33
- };
34
- return (
35
- <Link
36
- to={logoLink}
37
- {...propsRest}
38
- {...(logo.target && {
39
- target: logo.target,
40
- })}>
41
- {logo.src && (
42
- <ThemedImage
43
- key={isClient}
44
- className={imageClassName}
45
- sources={sources}
46
- alt={logo.alt || navbarTitle || title}
47
- />
48
- )}
49
- {navbarTitle != null && <b className={titleClassName}>{navbarTitle}</b>}
50
- </Link>
51
- );
52
- };
53
-
54
- export default Logo;
@@ -1,51 +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
- import React, {isValidElement} from 'react';
8
- import Link from '@docusaurus/Link';
9
- import CodeBlock from '@theme/CodeBlock';
10
- import Heading from '@theme/Heading';
11
- const MDXComponents = {
12
- code: (props) => {
13
- const {children} = props; // For retrocompatibility purposes (pretty rare use case)
14
- // See https://github.com/facebook/docusaurus/pull/1584
15
-
16
- if (isValidElement(children)) {
17
- return children;
18
- }
19
-
20
- return !children.includes('\n') ? (
21
- <code {...props} />
22
- ) : (
23
- <CodeBlock {...props} />
24
- );
25
- },
26
- a: (props) => <Link {...props} />,
27
- pre: (props) => {
28
- const {children} = props; // See comment for `code` above
29
-
30
- if (isValidElement(children?.props?.children)) {
31
- return children?.props.children;
32
- }
33
-
34
- return (
35
- <CodeBlock
36
- {...(isValidElement(children)
37
- ? children?.props
38
- : {
39
- children,
40
- })}
41
- />
42
- );
43
- },
44
- h1: Heading('h1'),
45
- h2: Heading('h2'),
46
- h3: Heading('h3'),
47
- h4: Heading('h4'),
48
- h5: Heading('h5'),
49
- h6: Heading('h6'),
50
- };
51
- export default MDXComponents;
@@ -1,51 +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
- import React from 'react';
8
- import clsx from 'clsx';
9
- import Layout from '@theme/Layout';
10
- import {MDXProvider} from '@mdx-js/react';
11
- import MDXComponents from '@theme/MDXComponents';
12
- import TOC from '@theme/TOC';
13
- import {ThemeClassNames} from '@docusaurus/theme-common';
14
- import styles from './styles.module.css';
15
-
16
- function MDXPage(props) {
17
- const {content: MDXPageContent} = props;
18
- const {frontMatter, metadata} = MDXPageContent;
19
- const {
20
- title,
21
- description,
22
- wrapperClassName,
23
- hide_table_of_contents: hideTableOfContents,
24
- } = frontMatter;
25
- const {permalink} = metadata;
26
- return (
27
- <Layout
28
- title={title}
29
- description={description}
30
- permalink={permalink}
31
- wrapperClassName={wrapperClassName ?? ThemeClassNames.wrapper.mdxPages}
32
- pageClassName={ThemeClassNames.page.mdxPage}>
33
- <main className="container container--fluid margin-vert--lg">
34
- <div className={clsx('row', styles.mdxPageWrapper)}>
35
- <div className={clsx('col', !hideTableOfContents && 'col--8')}>
36
- <MDXProvider components={MDXComponents}>
37
- <MDXPageContent />
38
- </MDXProvider>
39
- </div>
40
- {!hideTableOfContents && MDXPageContent.toc && (
41
- <div className="col col--2">
42
- <TOC toc={MDXPageContent.toc} />
43
- </div>
44
- )}
45
- </div>
46
- </main>
47
- </Layout>
48
- );
49
- }
50
-
51
- export default MDXPage;
@@ -1,146 +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
- import React, {useCallback, useState, useEffect} from 'react';
8
- import clsx from 'clsx';
9
- import SearchBar from '@theme/SearchBar';
10
- import Toggle from '@theme/Toggle';
11
- import useThemeContext from '@theme/hooks/useThemeContext';
12
- import {useThemeConfig} from '@docusaurus/theme-common';
13
- import useHideableNavbar from '@theme/hooks/useHideableNavbar';
14
- import useLockBodyScroll from '@theme/hooks/useLockBodyScroll';
15
- import useWindowSize, {windowSizes} from '@theme/hooks/useWindowSize';
16
- import NavbarItem from '@theme/NavbarItem';
17
- import Logo from '@theme/Logo';
18
- import IconMenu from '@theme/IconMenu';
19
- import styles from './styles.module.css'; // retrocompatible with v1
20
-
21
- const DefaultNavItemPosition = 'right'; // If split links by left/right
22
- // if position is unspecified, fallback to right (as v1)
23
-
24
- function splitNavItemsByPosition(items) {
25
- const leftItems = items.filter(
26
- (item) => (item.position ?? DefaultNavItemPosition) === 'left',
27
- );
28
- const rightItems = items.filter(
29
- (item) => (item.position ?? DefaultNavItemPosition) === 'right',
30
- );
31
- return {
32
- leftItems,
33
- rightItems,
34
- };
35
- }
36
-
37
- function Navbar() {
38
- const {
39
- navbar: {items, hideOnScroll, style},
40
- colorMode: {disableSwitch: disableColorModeSwitch},
41
- } = useThemeConfig();
42
- const [sidebarShown, setSidebarShown] = useState(false);
43
- const {isDarkTheme, setLightTheme, setDarkTheme} = useThemeContext();
44
- const {navbarRef, isNavbarVisible} = useHideableNavbar(hideOnScroll);
45
- useLockBodyScroll(sidebarShown);
46
- const showSidebar = useCallback(() => {
47
- setSidebarShown(true);
48
- }, [setSidebarShown]);
49
- const hideSidebar = useCallback(() => {
50
- setSidebarShown(false);
51
- }, [setSidebarShown]);
52
- const onToggleChange = useCallback(
53
- (e) => (e.target.checked ? setDarkTheme() : setLightTheme()),
54
- [setLightTheme, setDarkTheme],
55
- );
56
- const windowSize = useWindowSize();
57
- useEffect(() => {
58
- if (windowSize === windowSizes.desktop) {
59
- setSidebarShown(false);
60
- }
61
- }, [windowSize]);
62
- const hasSearchNavbarItem = items.some((item) => item.type === 'search');
63
- const {leftItems, rightItems} = splitNavItemsByPosition(items);
64
- return (
65
- <nav
66
- ref={navbarRef}
67
- className={clsx('navbar', 'navbar--fixed-top', {
68
- 'navbar--dark': style === 'dark',
69
- 'navbar--primary': style === 'primary',
70
- 'navbar-sidebar--show': sidebarShown,
71
- [styles.navbarHideable]: hideOnScroll,
72
- [styles.navbarHidden]: hideOnScroll && !isNavbarVisible,
73
- })}>
74
- <div className="navbar__inner">
75
- <div className="navbar__items">
76
- {items != null && items.length !== 0 && (
77
- <button
78
- aria-label="Navigation bar toggle"
79
- className="navbar__toggle clean-btn"
80
- type="button"
81
- tabIndex={0}
82
- onClick={showSidebar}
83
- onKeyDown={showSidebar}>
84
- <IconMenu />
85
- </button>
86
- )}
87
- <Logo
88
- className="navbar__brand"
89
- imageClassName="navbar__logo"
90
- titleClassName="navbar__title"
91
- />
92
- {leftItems.map((item, i) => (
93
- <NavbarItem {...item} key={i} />
94
- ))}
95
- </div>
96
- <div className="navbar__items navbar__items--right">
97
- {rightItems.map((item, i) => (
98
- <NavbarItem {...item} key={i} />
99
- ))}
100
- {!disableColorModeSwitch && (
101
- <Toggle
102
- className={styles.displayOnlyInLargeViewport}
103
- checked={isDarkTheme}
104
- onChange={onToggleChange}
105
- />
106
- )}
107
- {!hasSearchNavbarItem && <SearchBar />}
108
- </div>
109
- </div>
110
- <div
111
- role="presentation"
112
- className="navbar-sidebar__backdrop"
113
- onClick={hideSidebar}
114
- />
115
- <div className="navbar-sidebar">
116
- <div className="navbar-sidebar__brand">
117
- <Logo
118
- className="navbar__brand"
119
- imageClassName="navbar__logo"
120
- titleClassName="navbar__title"
121
- onClick={hideSidebar}
122
- />
123
- {!disableColorModeSwitch && sidebarShown && (
124
- <Toggle checked={isDarkTheme} onChange={onToggleChange} />
125
- )}
126
- </div>
127
- <div className="navbar-sidebar__items">
128
- <div className="menu">
129
- <ul className="menu__list">
130
- {items.map((item, i) => (
131
- <NavbarItem
132
- mobile
133
- {...item} // TODO fix typing
134
- onClick={hideSidebar}
135
- key={i}
136
- />
137
- ))}
138
- </ul>
139
- </div>
140
- </div>
141
- </div>
142
- </nav>
143
- );
144
- }
145
-
146
- export default Navbar;
@@ -1,227 +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
- import React, {useState, useRef, useEffect} from 'react';
8
- import clsx from 'clsx';
9
- import Link from '@docusaurus/Link';
10
- import useBaseUrl from '@docusaurus/useBaseUrl';
11
- import {useLocation} from '@docusaurus/router';
12
- import {isSamePath} from '@docusaurus/theme-common';
13
- import IconExternalLink from '@theme/IconExternalLink';
14
- import isInternalUrl from '@docusaurus/isInternalUrl';
15
- const dropdownLinkActiveClass = 'dropdown__link--active';
16
-
17
- function NavLink({
18
- activeBasePath,
19
- activeBaseRegex,
20
- to,
21
- href,
22
- label,
23
- activeClassName = 'navbar__link--active',
24
- prependBaseUrlToHref,
25
- ...props
26
- }) {
27
- // TODO all this seems hacky
28
- // {to: 'version'} should probably be forbidden, in favor of {to: '/version'}
29
- const toUrl = useBaseUrl(to);
30
- const activeBaseUrl = useBaseUrl(activeBasePath);
31
- const normalizedHref = useBaseUrl(href, {
32
- forcePrependBaseUrl: true,
33
- });
34
- const isExternalLink = label && href && !isInternalUrl(href);
35
- const isDropdownLink = activeClassName === dropdownLinkActiveClass;
36
- return (
37
- <Link
38
- {...(href
39
- ? {
40
- href: prependBaseUrlToHref ? normalizedHref : href,
41
- }
42
- : {
43
- isNavLink: true,
44
- activeClassName,
45
- to: toUrl,
46
- ...(activeBasePath || activeBaseRegex
47
- ? {
48
- isActive: (_match, location) =>
49
- activeBaseRegex
50
- ? new RegExp(activeBaseRegex).test(location.pathname)
51
- : location.pathname.startsWith(activeBaseUrl),
52
- }
53
- : null),
54
- })}
55
- {...props}>
56
- {isExternalLink ? (
57
- <span>
58
- {label}
59
- <IconExternalLink
60
- {...(isDropdownLink && {
61
- width: 12,
62
- height: 12,
63
- })}
64
- />
65
- </span>
66
- ) : (
67
- label
68
- )}
69
- </Link>
70
- );
71
- }
72
-
73
- function NavItemDesktop({items, position, className, ...props}) {
74
- const dropdownRef = useRef(null);
75
- const dropdownMenuRef = useRef(null);
76
- const [showDropdown, setShowDropdown] = useState(false);
77
- useEffect(() => {
78
- const handleClickOutside = (event) => {
79
- if (!dropdownRef.current || dropdownRef.current.contains(event.target)) {
80
- return;
81
- }
82
-
83
- setShowDropdown(false);
84
- };
85
-
86
- document.addEventListener('mousedown', handleClickOutside);
87
- document.addEventListener('touchstart', handleClickOutside);
88
- return () => {
89
- document.removeEventListener('mousedown', handleClickOutside);
90
- document.removeEventListener('touchstart', handleClickOutside);
91
- };
92
- }, [dropdownRef]);
93
-
94
- const navLinkClassNames = (extraClassName, isDropdownItem = false) =>
95
- clsx(
96
- {
97
- 'navbar__item navbar__link': !isDropdownItem,
98
- dropdown__link: isDropdownItem,
99
- },
100
- extraClassName,
101
- );
102
-
103
- if (!items) {
104
- return <NavLink className={navLinkClassNames(className)} {...props} />;
105
- }
106
-
107
- return (
108
- <div
109
- ref={dropdownRef}
110
- className={clsx('navbar__item', 'dropdown', 'dropdown--hoverable', {
111
- 'dropdown--left': position === 'left',
112
- 'dropdown--right': position === 'right',
113
- 'dropdown--show': showDropdown,
114
- })}>
115
- <NavLink
116
- className={navLinkClassNames(className)}
117
- {...props}
118
- onClick={props.to ? undefined : (e) => e.preventDefault()}
119
- onKeyDown={(e) => {
120
- if (e.key === 'Enter') {
121
- e.preventDefault();
122
- setShowDropdown(!showDropdown);
123
- }
124
- }}>
125
- {props.children ?? props.label}
126
- </NavLink>
127
- <ul ref={dropdownMenuRef} className="dropdown__menu">
128
- {items.map(({className: childItemClassName, ...childItemProps}, i) => (
129
- <li key={i}>
130
- <NavLink
131
- onKeyDown={(e) => {
132
- if (i === items.length - 1 && e.key === 'Tab') {
133
- e.preventDefault();
134
- setShowDropdown(false);
135
- const nextNavbarItem = dropdownRef.current.nextElementSibling;
136
-
137
- if (nextNavbarItem) {
138
- nextNavbarItem.focus();
139
- }
140
- }
141
- }}
142
- activeClassName={dropdownLinkActiveClass}
143
- className={navLinkClassNames(childItemClassName, true)}
144
- {...childItemProps}
145
- />
146
- </li>
147
- ))}
148
- </ul>
149
- </div>
150
- );
151
- }
152
-
153
- function NavItemMobile({
154
- items,
155
- className,
156
- position: _position,
157
- // Need to destructure position from props so that it doesn't get passed on.
158
- ...props
159
- }) {
160
- const menuListRef = useRef(null);
161
- const {pathname} = useLocation();
162
- const [collapsed, setCollapsed] = useState(
163
- () => !items?.some((item) => isSamePath(item.to, pathname)) ?? true,
164
- );
165
-
166
- const navLinkClassNames = (extraClassName, isSubList = false) =>
167
- clsx(
168
- 'menu__link',
169
- {
170
- 'menu__link--sublist': isSubList,
171
- },
172
- extraClassName,
173
- );
174
-
175
- if (!items) {
176
- return (
177
- <li className="menu__list-item">
178
- <NavLink className={navLinkClassNames(className)} {...props} />
179
- </li>
180
- );
181
- }
182
-
183
- const menuListHeight = menuListRef.current?.scrollHeight
184
- ? `${menuListRef.current?.scrollHeight}px`
185
- : undefined;
186
- return (
187
- <li
188
- className={clsx('menu__list-item', {
189
- 'menu__list-item--collapsed': collapsed,
190
- })}>
191
- <NavLink
192
- role="button"
193
- className={navLinkClassNames(className, true)}
194
- {...props}
195
- onClick={(e) => {
196
- e.preventDefault();
197
- setCollapsed((state) => !state);
198
- }}>
199
- {props.children ?? props.label}
200
- </NavLink>
201
- <ul
202
- className="menu__list"
203
- ref={menuListRef}
204
- style={{
205
- height: !collapsed ? menuListHeight : undefined,
206
- }}>
207
- {items.map(({className: childItemClassName, ...childItemProps}, i) => (
208
- <li className="menu__list-item" key={i}>
209
- <NavLink
210
- activeClassName="menu__link--active"
211
- className={navLinkClassNames(childItemClassName)}
212
- {...childItemProps}
213
- onClick={props.onClick}
214
- />
215
- </li>
216
- ))}
217
- </ul>
218
- </li>
219
- );
220
- }
221
-
222
- function DefaultNavbarItem({mobile = false, ...props}) {
223
- const Comp = mobile ? NavItemMobile : NavItemDesktop;
224
- return <Comp {...props} />;
225
- }
226
-
227
- export default DefaultNavbarItem;
@@ -1,57 +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
- import React from 'react';
8
- import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
9
- import {useLatestVersion, useActiveDocContext} from '@theme/hooks/useDocs';
10
- import clsx from 'clsx';
11
- import {useDocsPreferredVersion} from '@docusaurus/theme-common';
12
- import {uniq} from '@docusaurus/utils-common';
13
-
14
- function getDocInVersions(versions, docId) {
15
- // vanilla-js flatten, TODO replace soon by ES flat() / flatMap()
16
- const allDocs = [].concat(...versions.map((version) => version.docs));
17
- const doc = allDocs.find((versionDoc) => versionDoc.id === docId);
18
-
19
- if (!doc) {
20
- const docIds = allDocs.map((versionDoc) => versionDoc.id).join('\n- ');
21
- throw new Error(`DocNavbarItem: couldn't find any doc with id "${docId}" in version${
22
- versions.length ? 's' : ''
23
- } ${versions.map((version) => version.name).join(', ')}".
24
- Available doc ids are:\n- ${docIds}`);
25
- }
26
-
27
- return doc;
28
- }
29
-
30
- export default function DocNavbarItem({
31
- docId,
32
- activeSidebarClassName,
33
- label: staticLabel,
34
- docsPluginId,
35
- ...props
36
- }) {
37
- const {activeVersion, activeDoc} = useActiveDocContext(docsPluginId);
38
- const {preferredVersion} = useDocsPreferredVersion(docsPluginId);
39
- const latestVersion = useLatestVersion(docsPluginId); // Versions used to look for the doc to link to, ordered + no duplicate
40
-
41
- const versions = uniq(
42
- [activeVersion, preferredVersion, latestVersion].filter(Boolean),
43
- );
44
- const doc = getDocInVersions(versions, docId);
45
- return (
46
- <DefaultNavbarItem
47
- exact
48
- {...props}
49
- className={clsx(props.className, {
50
- [activeSidebarClassName]:
51
- activeDoc && activeDoc.sidebar === doc.sidebar,
52
- })}
53
- label={staticLabel ?? doc.id}
54
- to={doc.path}
55
- />
56
- );
57
- }
@@ -1,83 +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
- import React from 'react';
8
- import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
9
- import {
10
- useVersions,
11
- useLatestVersion,
12
- useActiveDocContext,
13
- } from '@theme/hooks/useDocs';
14
- import {useDocsPreferredVersion} from '@docusaurus/theme-common';
15
-
16
- const getVersionMainDoc = (version) =>
17
- version.docs.find((doc) => doc.id === version.mainDocId);
18
-
19
- export default function DocsVersionDropdownNavbarItem({
20
- mobile,
21
- docsPluginId,
22
- dropdownActiveClassDisabled,
23
- dropdownItemsBefore,
24
- dropdownItemsAfter,
25
- ...props
26
- }) {
27
- const activeDocContext = useActiveDocContext(docsPluginId);
28
- const versions = useVersions(docsPluginId);
29
- const latestVersion = useLatestVersion(docsPluginId);
30
- const {preferredVersion, savePreferredVersionName} = useDocsPreferredVersion(
31
- docsPluginId,
32
- );
33
-
34
- function getItems() {
35
- const versionLinks = versions.map((version) => {
36
- // We try to link to the same doc, in another version
37
- // When not possible, fallback to the "main doc" of the version
38
- const versionDoc =
39
- activeDocContext?.alternateDocVersions[version.name] ||
40
- getVersionMainDoc(version);
41
- return {
42
- isNavLink: true,
43
- label: version.label,
44
- to: versionDoc.path,
45
- isActive: () => version === activeDocContext?.activeVersion,
46
- onClick: () => {
47
- savePreferredVersionName(version.name);
48
- },
49
- };
50
- });
51
- const items = [
52
- ...dropdownItemsBefore,
53
- ...versionLinks,
54
- ...dropdownItemsAfter,
55
- ]; // We don't want to render a version dropdown with 0 or 1 item
56
- // If we build the site with a single docs version (onlyIncludeVersions: ['1.0.0'])
57
- // We'd rather render a button instead of a dropdown
58
-
59
- if (items.length <= 1) {
60
- return undefined;
61
- }
62
-
63
- return items;
64
- }
65
-
66
- const items = getItems();
67
- const dropdownVersion =
68
- activeDocContext.activeVersion ?? preferredVersion ?? latestVersion; // Mobile dropdown is handled a bit differently
69
-
70
- const dropdownLabel = mobile && items ? 'Versions' : dropdownVersion.label;
71
- const dropdownTo =
72
- mobile && items ? undefined : getVersionMainDoc(dropdownVersion).path;
73
- return (
74
- <DefaultNavbarItem
75
- {...props}
76
- mobile={mobile}
77
- label={dropdownLabel}
78
- to={dropdownTo}
79
- items={items}
80
- isActive={dropdownActiveClassDisabled ? () => false : undefined}
81
- />
82
- );
83
- }
@@ -1,28 +0,0 @@
1
- /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
- import React from 'react';
8
- import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
9
- import {useActiveVersion, useLatestVersion} from '@theme/hooks/useDocs';
10
- import {useDocsPreferredVersion} from '@docusaurus/theme-common';
11
-
12
- const getVersionMainDoc = (version) =>
13
- version.docs.find((doc) => doc.id === version.mainDocId);
14
-
15
- export default function DocsVersionNavbarItem({
16
- label: staticLabel,
17
- to: staticTo,
18
- docsPluginId,
19
- ...props
20
- }) {
21
- const activeVersion = useActiveVersion(docsPluginId);
22
- const {preferredVersion} = useDocsPreferredVersion(docsPluginId);
23
- const latestVersion = useLatestVersion(docsPluginId);
24
- const version = activeVersion ?? preferredVersion ?? latestVersion;
25
- const label = staticLabel ?? version.label;
26
- const path = staticTo ?? getVersionMainDoc(version).path;
27
- return <DefaultNavbarItem {...props} label={label} to={path} />;
28
- }