@docusaurus/theme-classic 2.0.0-beta.ff31de0ff → 2.0.1

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 (745) hide show
  1. package/README.md +2 -2
  2. package/lib/getSwizzleConfig.d.ts +8 -0
  3. package/lib/getSwizzleConfig.js +228 -0
  4. package/lib/index.d.ts +12 -0
  5. package/lib/index.js +122 -164
  6. package/lib/nprogress.css +41 -0
  7. package/lib/nprogress.d.ts +10 -0
  8. package/lib/nprogress.js +25 -0
  9. package/lib/options.d.ts +14 -0
  10. package/lib/options.js +409 -0
  11. package/lib/prism-include-languages.d.ts +7 -0
  12. package/lib/prism-include-languages.js +0 -2
  13. package/lib/theme/Admonition/index.d.ts +9 -0
  14. package/lib/theme/Admonition/index.js +183 -0
  15. package/lib/theme/Admonition/styles.module.css +38 -0
  16. package/lib/theme/AnnouncementBar/index.d.ts +8 -0
  17. package/lib/theme/AnnouncementBar/index.js +39 -65
  18. package/lib/theme/AnnouncementBar/styles.module.css +26 -35
  19. package/lib/theme/BackToTopButton/index.d.ts +8 -0
  20. package/lib/theme/BackToTopButton/index.js +32 -0
  21. package/lib/theme/BackToTopButton/styles.module.css +44 -0
  22. package/lib/theme/BlogArchivePage/index.d.ts +10 -0
  23. package/lib/theme/BlogArchivePage/index.js +80 -0
  24. package/lib/theme/BlogLayout/index.d.ts +9 -0
  25. package/lib/theme/BlogLayout/index.js +33 -0
  26. package/lib/theme/BlogListPage/index.d.ts +10 -0
  27. package/lib/theme/BlogListPage/index.js +44 -61
  28. package/lib/theme/BlogListPaginator/index.d.ts +9 -0
  29. package/lib/theme/BlogListPaginator/index.js +41 -56
  30. package/lib/theme/BlogPostItem/Container/index.d.ts +9 -0
  31. package/lib/theme/BlogPostItem/Container/index.js +26 -0
  32. package/lib/theme/BlogPostItem/Content/index.d.ts +9 -0
  33. package/lib/theme/BlogPostItem/Content/index.js +23 -0
  34. package/lib/theme/BlogPostItem/Footer/ReadMoreLink/index.d.ts +9 -0
  35. package/lib/theme/BlogPostItem/Footer/ReadMoreLink/index.js +38 -0
  36. package/lib/theme/BlogPostItem/Footer/index.d.ts +8 -0
  37. package/lib/theme/BlogPostItem/Footer/index.js +52 -0
  38. package/lib/theme/BlogPostItem/Footer/styles.module.css +10 -0
  39. package/lib/theme/BlogPostItem/Header/Author/index.d.ts +9 -0
  40. package/lib/theme/BlogPostItem/Header/Author/index.js +47 -0
  41. package/lib/theme/BlogPostItem/Header/Authors/index.d.ts +9 -0
  42. package/lib/theme/BlogPostItem/Header/Authors/index.js +48 -0
  43. package/{src/theme/Layout/styles.css → lib/theme/BlogPostItem/Header/Authors/styles.module.css} +8 -8
  44. package/lib/theme/BlogPostItem/Header/Info/index.d.ts +9 -0
  45. package/lib/theme/BlogPostItem/Header/Info/index.js +60 -0
  46. package/{lib-next/theme/LastUpdated → lib/theme/BlogPostItem/Header/Info}/styles.module.css +2 -2
  47. package/lib/theme/BlogPostItem/Header/Title/index.d.ts +9 -0
  48. package/lib/theme/BlogPostItem/Header/Title/index.js +27 -0
  49. package/lib/theme/BlogPostItem/Header/Title/styles.module.css +19 -0
  50. package/lib/theme/BlogPostItem/Header/index.d.ts +8 -0
  51. package/lib/theme/BlogPostItem/Header/index.js +19 -0
  52. package/lib/theme/BlogPostItem/index.d.ts +9 -0
  53. package/lib/theme/BlogPostItem/index.js +20 -144
  54. package/lib/theme/BlogPostItems/index.d.ts +9 -0
  55. package/lib/theme/BlogPostItems/index.js +27 -0
  56. package/lib/theme/BlogPostPage/Metadata/index.d.ts +8 -0
  57. package/lib/theme/BlogPostPage/Metadata/index.js +41 -0
  58. package/lib/theme/BlogPostPage/index.d.ts +10 -0
  59. package/lib/theme/BlogPostPage/index.js +51 -66
  60. package/lib/theme/BlogPostPaginator/index.d.ts +9 -0
  61. package/lib/theme/BlogPostPaginator/index.js +40 -57
  62. package/lib/theme/BlogSidebar/Desktop/index.d.ts +9 -0
  63. package/lib/theme/BlogSidebar/Desktop/index.js +41 -0
  64. package/lib/theme/BlogSidebar/{styles.module.css → Desktop/styles.module.css} +8 -9
  65. package/lib/theme/BlogSidebar/Mobile/index.d.ts +9 -0
  66. package/lib/theme/BlogSidebar/Mobile/index.js +34 -0
  67. package/lib/theme/BlogSidebar/index.d.ts +9 -0
  68. package/lib/theme/BlogSidebar/index.js +13 -35
  69. package/lib/theme/BlogTagsListPage/index.d.ts +10 -0
  70. package/lib/theme/BlogTagsListPage/index.js +27 -74
  71. package/lib/theme/BlogTagsPostsPage/index.d.ts +10 -0
  72. package/lib/theme/BlogTagsPostsPage/index.js +76 -91
  73. package/lib/theme/CodeBlock/Container/index.d.ts +10 -0
  74. package/lib/theme/CodeBlock/Container/index.js +27 -0
  75. package/lib/theme/CodeBlock/Container/styles.module.css +14 -0
  76. package/{src/theme/Navbar/styles.module.css → lib/theme/CodeBlock/Content/Element.d.ts} +3 -14
  77. package/lib/theme/CodeBlock/Content/Element.js +23 -0
  78. package/lib/theme/CodeBlock/Content/String.d.ts +9 -0
  79. package/lib/theme/CodeBlock/Content/String.js +103 -0
  80. package/lib/theme/CodeBlock/{styles.module.css → Content/styles.module.css} +47 -32
  81. package/lib/theme/CodeBlock/CopyButton/index.d.ts +9 -0
  82. package/lib/theme/CodeBlock/CopyButton/index.js +62 -0
  83. package/lib/theme/CodeBlock/CopyButton/styles.module.css +47 -0
  84. package/lib/theme/CodeBlock/Line/index.d.ts +9 -0
  85. package/lib/theme/CodeBlock/Line/index.js +42 -0
  86. package/lib/theme/CodeBlock/Line/styles.module.css +51 -0
  87. package/lib/theme/CodeBlock/WordWrapButton/index.d.ts +9 -0
  88. package/lib/theme/CodeBlock/WordWrapButton/index.js +40 -0
  89. package/lib/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
  90. package/lib/theme/CodeBlock/index.d.ts +9 -0
  91. package/lib/theme/CodeBlock/index.js +31 -246
  92. package/lib/theme/ColorModeToggle/index.d.ts +11 -0
  93. package/lib/theme/ColorModeToggle/index.js +60 -0
  94. package/lib/theme/ColorModeToggle/styles.module.css +35 -0
  95. package/lib/theme/Details/index.d.ts +9 -0
  96. package/lib/theme/Details/index.js +21 -0
  97. package/lib/theme/Details/styles.module.css +13 -0
  98. package/lib/theme/DocBreadcrumbs/index.d.ts +8 -0
  99. package/lib/theme/DocBreadcrumbs/index.js +115 -0
  100. package/lib/theme/{Heading/styles.css → DocBreadcrumbs/styles.module.css} +9 -13
  101. package/lib/theme/DocCard/index.d.ts +9 -0
  102. package/lib/theme/DocCard/index.js +86 -0
  103. package/lib/theme/DocCard/styles.module.css +34 -0
  104. package/lib/theme/DocCardList/index.d.ts +9 -0
  105. package/lib/theme/DocCardList/index.js +30 -0
  106. package/lib/theme/DocCategoryGeneratedIndexPage/index.d.ts +10 -0
  107. package/lib/theme/DocCategoryGeneratedIndexPage/index.js +65 -0
  108. package/lib/theme/DocCategoryGeneratedIndexPage/styles.module.css +26 -0
  109. package/lib/theme/DocItem/Content/index.d.ts +9 -0
  110. package/lib/theme/DocItem/Content/index.js +44 -0
  111. package/lib/theme/DocItem/Footer/index.d.ts +8 -0
  112. package/lib/theme/DocItem/Footer/index.js +74 -0
  113. package/lib/theme/DocItem/Footer/styles.module.css +18 -0
  114. package/lib/theme/DocItem/Layout/index.d.ts +9 -0
  115. package/lib/theme/DocItem/Layout/index.js +59 -0
  116. package/lib/theme/DocItem/Layout/styles.module.css +17 -0
  117. package/lib/theme/DocItem/Metadata/index.d.ts +8 -0
  118. package/lib/theme/DocItem/Metadata/index.js +20 -0
  119. package/lib/theme/DocItem/Paginator/index.d.ts +12 -0
  120. package/lib/theme/DocItem/Paginator/index.js +17 -0
  121. package/lib/theme/DocItem/TOC/Desktop/index.d.ts +8 -0
  122. package/lib/theme/DocItem/TOC/Desktop/index.js +21 -0
  123. package/lib/theme/DocItem/TOC/Mobile/index.d.ts +8 -0
  124. package/lib/theme/DocItem/TOC/Mobile/index.js +23 -0
  125. package/lib/theme/DocItem/TOC/Mobile/styles.module.css +19 -0
  126. package/lib/theme/DocItem/index.d.ts +10 -0
  127. package/lib/theme/DocItem/index.js +18 -113
  128. package/lib/theme/DocPage/Layout/Main/index.d.ts +9 -0
  129. package/lib/theme/DocPage/Layout/Main/index.js +29 -0
  130. package/lib/theme/DocPage/Layout/Main/styles.module.css +28 -0
  131. package/lib/theme/DocPage/Layout/Sidebar/ExpandButton/index.d.ts +9 -0
  132. package/lib/theme/DocPage/Layout/Sidebar/ExpandButton/index.js +34 -0
  133. package/lib/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
  134. package/lib/theme/DocPage/Layout/Sidebar/index.d.ts +9 -0
  135. package/lib/theme/DocPage/Layout/Sidebar/index.js +66 -0
  136. package/lib/theme/DocPage/Layout/Sidebar/styles.module.css +32 -0
  137. package/lib/theme/DocPage/Layout/index.d.ts +9 -0
  138. package/lib/theme/DocPage/Layout/index.js +34 -0
  139. package/lib/theme/{BlogPostItem → DocPage/Layout}/styles.module.css +5 -4
  140. package/lib/theme/DocPage/index.d.ts +10 -0
  141. package/lib/theme/DocPage/index.js +42 -133
  142. package/lib/theme/DocPaginator/index.d.ts +9 -0
  143. package/lib/theme/DocPaginator/index.js +40 -56
  144. package/lib/theme/DocSidebar/Desktop/CollapseButton/index.d.ts +9 -0
  145. package/lib/theme/DocSidebar/Desktop/CollapseButton/index.js +34 -0
  146. package/lib/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
  147. package/lib/theme/DocSidebar/Desktop/Content/index.d.ts +9 -0
  148. package/lib/theme/DocSidebar/Desktop/Content/index.js +44 -0
  149. package/lib/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
  150. package/lib/theme/DocSidebar/Desktop/index.d.ts +11 -0
  151. package/lib/theme/DocSidebar/Desktop/index.js +34 -0
  152. package/lib/theme/DocSidebar/Desktop/styles.module.css +50 -0
  153. package/lib/theme/DocSidebar/Mobile/index.d.ts +11 -0
  154. package/lib/theme/DocSidebar/Mobile/index.js +45 -0
  155. package/lib/theme/DocSidebar/index.d.ts +9 -0
  156. package/lib/theme/DocSidebar/index.js +17 -300
  157. package/lib/theme/DocSidebarItem/Category/index.d.ts +9 -0
  158. package/lib/theme/DocSidebarItem/Category/index.js +185 -0
  159. package/lib/theme/DocSidebarItem/Html/index.d.ts +9 -0
  160. package/lib/theme/DocSidebarItem/Html/index.js +26 -0
  161. package/lib/theme/DocSidebarItem/Html/styles.module.css +13 -0
  162. package/lib/theme/DocSidebarItem/Link/index.d.ts +9 -0
  163. package/lib/theme/DocSidebarItem/Link/index.js +54 -0
  164. package/lib/theme/DocSidebarItem/Link/styles.module.css +10 -0
  165. package/lib/theme/DocSidebarItem/index.d.ts +9 -0
  166. package/lib/theme/DocSidebarItem/index.js +21 -0
  167. package/lib/theme/DocSidebarItems/index.d.ts +11 -0
  168. package/lib/theme/DocSidebarItems/index.js +22 -0
  169. package/lib/theme/DocTagDocListPage/index.d.ts +10 -0
  170. package/lib/theme/DocTagDocListPage/index.js +89 -0
  171. package/lib/theme/DocTagsListPage/index.d.ts +10 -0
  172. package/lib/theme/DocTagsListPage/index.js +40 -0
  173. package/lib/theme/DocVersionBadge/index.d.ts +9 -0
  174. package/lib/theme/DocVersionBadge/index.js +31 -0
  175. package/lib/theme/DocVersionBanner/index.d.ts +9 -0
  176. package/{lib-next/theme/DocVersionSuggestions → lib/theme/DocVersionBanner}/index.js +51 -46
  177. package/lib/theme/EditThisPage/index.d.ts +9 -0
  178. package/lib/theme/EditThisPage/index.js +19 -24
  179. package/{src/theme/hooks/useLockBodyScroll.ts → lib/theme/ErrorPageContent.d.ts} +4 -14
  180. package/lib/theme/ErrorPageContent.js +35 -0
  181. package/lib/theme/Footer/Copyright/index.d.ts +9 -0
  182. package/lib/theme/Footer/Copyright/index.js +17 -0
  183. package/lib/theme/Footer/Layout/index.d.ts +9 -0
  184. package/lib/theme/Footer/Layout/index.js +26 -0
  185. package/lib/theme/Footer/LinkItem/index.d.ts +9 -0
  186. package/lib/theme/Footer/LinkItem/index.js +31 -0
  187. package/lib/theme/Footer/Links/MultiColumn/index.d.ts +9 -0
  188. package/lib/theme/Footer/Links/MultiColumn/index.js +43 -0
  189. package/lib/theme/Footer/Links/Simple/index.d.ts +9 -0
  190. package/lib/theme/Footer/Links/Simple/index.js +37 -0
  191. package/lib/theme/Footer/Links/index.d.ts +9 -0
  192. package/lib/theme/Footer/Links/index.js +17 -0
  193. package/lib/theme/Footer/Logo/index.d.ts +9 -0
  194. package/lib/theme/Footer/Logo/index.js +41 -0
  195. package/lib/theme/Footer/{styles.module.css → Logo/styles.module.css} +2 -1
  196. package/{lib-next/theme/Footer/styles.module.css → lib/theme/Footer/index.d.ts} +4 -9
  197. package/lib/theme/Footer/index.js +17 -97
  198. package/lib/theme/Heading/index.d.ts +9 -0
  199. package/lib/theme/Heading/index.js +35 -52
  200. package/lib/theme/Heading/styles.module.css +27 -2
  201. package/lib/theme/Icon/Arrow/index.d.ts +9 -0
  202. package/{lib-next/theme/IconArrow → lib/theme/Icon/Arrow}/index.js +3 -6
  203. package/lib/theme/Icon/Close/index.d.ts +9 -0
  204. package/lib/theme/Icon/Close/index.js +23 -0
  205. package/lib/theme/Icon/DarkMode/index.d.ts +9 -0
  206. package/lib/theme/Icon/DarkMode/index.js +17 -0
  207. package/lib/theme/Icon/Edit/index.d.ts +9 -0
  208. package/{src/theme/IconEdit/index.tsx → lib/theme/Icon/Edit/index.js} +5 -14
  209. package/{lib-next/theme/IconEdit → lib/theme/Icon/Edit}/styles.module.css +0 -0
  210. package/lib/theme/Icon/ExternalLink/index.d.ts +9 -0
  211. package/lib/theme/Icon/ExternalLink/index.js +23 -0
  212. package/lib/theme/Icon/ExternalLink/styles.module.css +10 -0
  213. package/lib/theme/Icon/Home/index.d.ts +9 -0
  214. package/lib/theme/Icon/Home/index.js +17 -0
  215. package/lib/theme/Icon/Language/index.d.ts +9 -0
  216. package/lib/theme/Icon/Language/index.js +22 -0
  217. package/lib/theme/Icon/LightMode/index.d.ts +9 -0
  218. package/lib/theme/Icon/LightMode/index.js +17 -0
  219. package/lib/theme/Icon/Menu/index.d.ts +9 -0
  220. package/{lib-next/theme/IconMenu → lib/theme/Icon/Menu}/index.js +8 -9
  221. package/lib/theme/LastUpdated/index.d.ts +9 -0
  222. package/lib/theme/LastUpdated/index.js +62 -51
  223. package/lib/theme/Layout/Provider/index.d.ts +9 -0
  224. package/lib/theme/Layout/Provider/index.js +29 -0
  225. package/lib/theme/Layout/index.d.ts +9 -0
  226. package/lib/theme/Layout/index.js +39 -50
  227. package/{lib-next/theme/Layout/styles.css → lib/theme/Layout/styles.module.css} +10 -5
  228. package/lib/theme/Logo/index.d.ts +9 -0
  229. package/lib/theme/Logo/index.js +58 -51
  230. package/lib/theme/MDXComponents/A.d.ts +9 -0
  231. package/{lib-next/theme/ThemeContext.js → lib/theme/MDXComponents/A.js} +4 -2
  232. package/lib/theme/MDXComponents/Code.d.ts +9 -0
  233. package/lib/theme/MDXComponents/Code.js +28 -0
  234. package/lib/theme/MDXComponents/Details.d.ts +9 -0
  235. package/lib/theme/MDXComponents/Details.js +22 -0
  236. package/lib/theme/MDXComponents/Head.d.ts +9 -0
  237. package/lib/theme/MDXComponents/Head.js +23 -0
  238. package/lib/theme/MDXComponents/Heading.d.ts +9 -0
  239. package/lib/theme/MDXComponents/Heading.js +11 -0
  240. package/lib/theme/MDXComponents/Img/index.d.ts +9 -0
  241. package/lib/theme/MDXComponents/Img/index.js +22 -0
  242. package/{src/theme/LastUpdated → lib/theme/MDXComponents/Img}/styles.module.css +2 -2
  243. package/lib/theme/MDXComponents/Pre.d.ts +9 -0
  244. package/lib/theme/MDXComponents/Pre.js +19 -0
  245. package/lib/theme/MDXComponents/Ul/index.d.ts +9 -0
  246. package/lib/theme/MDXComponents/Ul/index.js +21 -0
  247. package/lib/theme/MDXComponents/Ul/styles.module.css +14 -0
  248. package/lib/theme/MDXComponents/index.d.ts +9 -0
  249. package/lib/theme/MDXComponents/index.js +25 -57
  250. package/lib/theme/MDXContent/index.d.ts +9 -0
  251. package/lib/theme/MDXContent/index.js +12 -0
  252. package/lib/theme/MDXPage/index.d.ts +10 -0
  253. package/lib/theme/MDXPage/index.js +45 -57
  254. package/lib/theme/MDXPage/styles.module.css +10 -0
  255. package/lib/theme/Navbar/ColorModeToggle/index.d.ts +9 -0
  256. package/lib/theme/Navbar/ColorModeToggle/index.js +23 -0
  257. package/lib/theme/Navbar/Content/index.d.ts +8 -0
  258. package/lib/theme/Navbar/Content/index.js +71 -0
  259. package/{lib-next/theme/NavbarItem → lib/theme/Navbar/Content}/styles.module.css +5 -3
  260. package/lib/theme/Navbar/Layout/index.d.ts +9 -0
  261. package/lib/theme/Navbar/Layout/index.js +52 -0
  262. package/lib/theme/Navbar/{styles.module.css → Layout/styles.module.css} +1 -7
  263. package/lib/theme/Navbar/Logo/index.d.ts +8 -0
  264. package/{lib-next/theme/TabItem → lib/theme/Navbar/Logo}/index.js +7 -12
  265. package/lib/theme/Navbar/MobileSidebar/Header/index.d.ts +8 -0
  266. package/lib/theme/Navbar/MobileSidebar/Header/index.js +31 -0
  267. package/lib/theme/Navbar/MobileSidebar/Layout/index.d.ts +9 -0
  268. package/lib/theme/Navbar/MobileSidebar/Layout/index.js +28 -0
  269. package/lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.d.ts +8 -0
  270. package/lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.js +33 -0
  271. package/lib/theme/Navbar/MobileSidebar/SecondaryMenu/index.d.ts +8 -0
  272. package/lib/theme/Navbar/MobileSidebar/SecondaryMenu/index.js +36 -0
  273. package/lib/theme/Navbar/MobileSidebar/Toggle/index.d.ts +8 -0
  274. package/lib/theme/Navbar/MobileSidebar/Toggle/index.js +23 -0
  275. package/lib/theme/Navbar/MobileSidebar/index.d.ts +8 -0
  276. package/lib/theme/Navbar/MobileSidebar/index.js +29 -0
  277. package/lib/theme/Navbar/Search/index.d.ts +9 -0
  278. package/{lib-next/theme/NavbarItem/SearchNavbarItem.js → lib/theme/Navbar/Search/index.js} +3 -11
  279. package/{src/theme/NavbarItem → lib/theme/Navbar/Search}/styles.module.css +8 -1
  280. package/{lib-next/theme/BlogPostItem/styles.module.css → lib/theme/Navbar/index.d.ts} +2 -8
  281. package/lib/theme/Navbar/index.js +9 -140
  282. package/lib/theme/NavbarItem/ComponentTypes.d.ts +9 -0
  283. package/lib/theme/NavbarItem/ComponentTypes.js +27 -0
  284. package/lib/theme/NavbarItem/DefaultNavbarItem.d.ts +10 -0
  285. package/lib/theme/NavbarItem/DefaultNavbarItem.js +36 -179
  286. package/lib/theme/NavbarItem/DocNavbarItem.d.ts +9 -0
  287. package/lib/theme/NavbarItem/DocNavbarItem.js +23 -43
  288. package/lib/theme/NavbarItem/DocSidebarNavbarItem.d.ts +9 -0
  289. package/lib/theme/NavbarItem/DocSidebarNavbarItem.js +33 -0
  290. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.d.ts +9 -0
  291. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +73 -61
  292. package/lib/theme/NavbarItem/DocsVersionNavbarItem.d.ts +9 -0
  293. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +11 -32
  294. package/lib/theme/NavbarItem/DropdownNavbarItem.d.ts +9 -0
  295. package/lib/theme/NavbarItem/DropdownNavbarItem.js +161 -0
  296. package/lib/theme/NavbarItem/HtmlNavbarItem.d.ts +9 -0
  297. package/lib/theme/NavbarItem/HtmlNavbarItem.js +28 -0
  298. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/index.d.ts +9 -0
  299. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/index.js +68 -0
  300. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  301. package/lib/theme/NavbarItem/NavbarNavLink.d.ts +9 -0
  302. package/lib/theme/NavbarItem/NavbarNavLink.js +68 -0
  303. package/lib/theme/NavbarItem/SearchNavbarItem.d.ts +9 -0
  304. package/lib/theme/NavbarItem/SearchNavbarItem.js +10 -23
  305. package/lib/theme/NavbarItem/index.d.ts +9 -0
  306. package/lib/theme/NavbarItem/index.js +16 -46
  307. package/{lib-next/theme/Heading/styles.module.css → lib/theme/NotFound.d.ts} +2 -4
  308. package/lib/theme/NotFound.js +44 -42
  309. package/lib/theme/PaginatorNavLink/index.d.ts +9 -0
  310. package/lib/theme/PaginatorNavLink/index.js +23 -0
  311. package/lib/theme/SearchBar.d.ts +7 -0
  312. package/lib/theme/SearchBar.js +11 -15
  313. package/lib/theme/SearchMetadata/index.d.ts +9 -0
  314. package/lib/theme/SearchMetadata/index.js +34 -0
  315. package/lib/theme/SiteMetadata/index.d.ts +8 -0
  316. package/lib/theme/SiteMetadata/index.js +116 -0
  317. package/lib/theme/SkipToContent/index.d.ts +8 -0
  318. package/lib/theme/SkipToContent/index.js +16 -52
  319. package/lib/theme/SkipToContent/styles.module.css +8 -3
  320. package/lib/theme/TOC/index.d.ts +9 -0
  321. package/lib/theme/TOC/index.js +18 -52
  322. package/lib/theme/TOC/styles.module.css +2 -2
  323. package/lib/theme/TOCCollapsible/CollapseButton/index.d.ts +9 -0
  324. package/lib/theme/TOCCollapsible/CollapseButton/index.js +29 -0
  325. package/lib/theme/TOCCollapsible/CollapseButton/styles.module.css +29 -0
  326. package/lib/theme/TOCCollapsible/index.d.ts +9 -0
  327. package/lib/theme/TOCCollapsible/index.js +42 -0
  328. package/lib/theme/TOCCollapsible/styles.module.css +31 -0
  329. package/lib/theme/TOCInline/index.d.ts +9 -0
  330. package/lib/theme/TOCInline/index.js +15 -46
  331. package/lib/theme/TOCItems/Tree.d.ts +11 -0
  332. package/lib/theme/TOCItems/Tree.js +37 -0
  333. package/lib/theme/TOCItems/index.d.ts +9 -0
  334. package/lib/theme/TOCItems/index.js +53 -0
  335. package/lib/theme/TabItem/index.d.ts +9 -0
  336. package/lib/theme/TabItem/index.js +11 -24
  337. package/lib/theme/TabItem/styles.module.css +10 -0
  338. package/lib/theme/Tabs/index.d.ts +9 -0
  339. package/lib/theme/Tabs/index.js +159 -123
  340. package/lib/theme/Tabs/styles.module.css +4 -13
  341. package/lib/theme/Tag/index.d.ts +9 -0
  342. package/lib/theme/Tag/index.js +23 -0
  343. package/lib/theme/Tag/styles.module.css +70 -0
  344. package/lib/theme/TagsListByLetter/index.d.ts +9 -0
  345. package/lib/theme/TagsListByLetter/index.js +38 -0
  346. package/lib/theme/TagsListByLetter/styles.module.css +11 -0
  347. package/lib/theme/TagsListInline/index.d.ts +9 -0
  348. package/lib/theme/TagsListInline/index.js +31 -0
  349. package/lib/theme/TagsListInline/styles.module.css +15 -0
  350. package/lib/theme/ThemedImage/index.d.ts +9 -0
  351. package/lib/theme/ThemedImage/index.js +33 -42
  352. package/lib/theme/ThemedImage/styles.module.css +9 -2
  353. package/lib/theme/prism-include-languages.d.ts +8 -0
  354. package/lib/theme/prism-include-languages.js +19 -33
  355. package/lib/translations.d.ts +15 -0
  356. package/lib/translations.js +122 -122
  357. package/package.json +41 -35
  358. package/src/deps.d.ts +13 -0
  359. package/src/getSwizzleConfig.ts +245 -0
  360. package/src/index.ts +80 -81
  361. package/src/nprogress.css +41 -0
  362. package/src/nprogress.ts +31 -0
  363. package/src/options.ts +469 -0
  364. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  365. package/src/theme/Admonition/index.tsx +209 -0
  366. package/src/theme/Admonition/styles.module.css +38 -0
  367. package/src/theme/AnnouncementBar/index.tsx +11 -19
  368. package/src/theme/AnnouncementBar/styles.module.css +26 -35
  369. package/src/theme/BackToTopButton/index.tsx +35 -0
  370. package/src/theme/BackToTopButton/styles.module.css +44 -0
  371. package/src/theme/BlogArchivePage/index.tsx +92 -0
  372. package/src/theme/BlogLayout/index.tsx +38 -0
  373. package/src/theme/BlogListPage/index.tsx +37 -36
  374. package/src/theme/BlogListPaginator/index.tsx +27 -32
  375. package/src/theme/BlogPostItem/Container/index.tsx +32 -0
  376. package/src/theme/BlogPostItem/Content/index.tsx +29 -0
  377. package/src/theme/BlogPostItem/Footer/ReadMoreLink/index.tsx +44 -0
  378. package/src/theme/BlogPostItem/Footer/index.tsx +60 -0
  379. package/src/theme/BlogPostItem/Footer/styles.module.css +10 -0
  380. package/src/theme/BlogPostItem/Header/Author/index.tsx +55 -0
  381. package/src/theme/BlogPostItem/Header/Authors/index.tsx +53 -0
  382. package/src/theme/BlogPostItem/Header/Authors/styles.module.css +21 -0
  383. package/src/theme/BlogPostItem/Header/Info/index.tsx +71 -0
  384. package/{lib/theme/LastUpdated → src/theme/BlogPostItem/Header/Info}/styles.module.css +2 -2
  385. package/src/theme/BlogPostItem/Header/Title/index.tsx +33 -0
  386. package/src/theme/BlogPostItem/Header/Title/styles.module.css +19 -0
  387. package/src/theme/BlogPostItem/Header/index.tsx +21 -0
  388. package/src/theme/BlogPostItem/index.tsx +19 -135
  389. package/src/theme/BlogPostItems/index.tsx +30 -0
  390. package/src/theme/BlogPostPage/Metadata/index.tsx +44 -0
  391. package/src/theme/BlogPostPage/index.tsx +55 -46
  392. package/src/theme/BlogPostPaginator/index.tsx +28 -37
  393. package/src/theme/BlogSidebar/Desktop/index.tsx +45 -0
  394. package/{lib-next/theme/BlogSidebar → src/theme/BlogSidebar/Desktop}/styles.module.css +8 -9
  395. package/src/theme/BlogSidebar/Mobile/index.tsx +38 -0
  396. package/src/theme/BlogSidebar/index.tsx +10 -24
  397. package/src/theme/BlogTagsListPage/index.tsx +24 -72
  398. package/src/theme/BlogTagsPostsPage/index.tsx +62 -64
  399. package/src/theme/CodeBlock/Container/index.tsx +32 -0
  400. package/src/theme/CodeBlock/Container/styles.module.css +14 -0
  401. package/src/theme/CodeBlock/Content/Element.tsx +30 -0
  402. package/src/theme/CodeBlock/Content/String.tsx +110 -0
  403. package/src/theme/CodeBlock/{styles.module.css → Content/styles.module.css} +47 -32
  404. package/src/theme/CodeBlock/CopyButton/index.tsx +68 -0
  405. package/src/theme/CodeBlock/CopyButton/styles.module.css +47 -0
  406. package/src/theme/CodeBlock/Line/index.tsx +49 -0
  407. package/src/theme/CodeBlock/Line/styles.module.css +51 -0
  408. package/src/theme/CodeBlock/WordWrapButton/index.tsx +49 -0
  409. package/src/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
  410. package/src/theme/CodeBlock/index.tsx +29 -252
  411. package/src/theme/ColorModeToggle/index.tsx +67 -0
  412. package/src/theme/ColorModeToggle/styles.module.css +35 -0
  413. package/src/theme/Details/index.tsx +26 -0
  414. package/src/theme/Details/styles.module.css +13 -0
  415. package/src/theme/DocBreadcrumbs/index.tsx +141 -0
  416. package/src/theme/{Heading/styles.css → DocBreadcrumbs/styles.module.css} +9 -13
  417. package/src/theme/DocCard/index.tsx +120 -0
  418. package/src/theme/DocCard/styles.module.css +34 -0
  419. package/src/theme/DocCardList/index.tsx +35 -0
  420. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +77 -0
  421. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +26 -0
  422. package/src/theme/DocItem/Content/index.tsx +48 -0
  423. package/src/theme/DocItem/Footer/index.tsx +89 -0
  424. package/src/theme/DocItem/Footer/styles.module.css +18 -0
  425. package/src/theme/DocItem/Layout/index.tsx +68 -0
  426. package/src/theme/DocItem/Layout/styles.module.css +17 -0
  427. package/src/theme/DocItem/Metadata/index.tsx +22 -0
  428. package/src/theme/DocItem/Paginator/index.tsx +19 -0
  429. package/src/theme/DocItem/TOC/Desktop/index.tsx +24 -0
  430. package/src/theme/DocItem/TOC/Mobile/index.tsx +27 -0
  431. package/src/theme/DocItem/TOC/Mobile/styles.module.css +19 -0
  432. package/src/theme/DocItem/index.tsx +15 -102
  433. package/src/theme/DocPage/Layout/Main/index.tsx +36 -0
  434. package/src/theme/DocPage/Layout/Main/styles.module.css +28 -0
  435. package/src/theme/DocPage/Layout/Sidebar/ExpandButton/index.tsx +40 -0
  436. package/src/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
  437. package/src/theme/DocPage/Layout/Sidebar/index.tsx +74 -0
  438. package/src/theme/DocPage/Layout/Sidebar/styles.module.css +32 -0
  439. package/src/theme/DocPage/Layout/index.tsx +38 -0
  440. package/src/theme/{BlogPostItem → DocPage/Layout}/styles.module.css +5 -4
  441. package/src/theme/DocPage/index.tsx +39 -148
  442. package/src/theme/DocPaginator/index.tsx +29 -41
  443. package/src/theme/DocSidebar/Desktop/CollapseButton/index.tsx +38 -0
  444. package/src/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
  445. package/src/theme/DocSidebar/Desktop/Content/index.tsx +55 -0
  446. package/src/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
  447. package/src/theme/DocSidebar/Desktop/index.tsx +40 -0
  448. package/src/theme/DocSidebar/Desktop/styles.module.css +50 -0
  449. package/src/theme/DocSidebar/Mobile/index.tsx +54 -0
  450. package/src/theme/DocSidebar/index.tsx +14 -343
  451. package/src/theme/DocSidebarItem/Category/index.tsx +211 -0
  452. package/src/theme/DocSidebarItem/Html/index.tsx +34 -0
  453. package/src/theme/DocSidebarItem/Html/styles.module.css +13 -0
  454. package/src/theme/DocSidebarItem/Link/index.tsx +58 -0
  455. package/src/theme/DocSidebarItem/Link/styles.module.css +10 -0
  456. package/src/theme/DocSidebarItem/index.tsx +27 -0
  457. package/src/theme/DocSidebarItems/index.tsx +27 -0
  458. package/src/theme/DocTagDocListPage/index.tsx +95 -0
  459. package/src/theme/DocTagsListPage/index.tsx +43 -0
  460. package/src/theme/DocVersionBadge/index.tsx +36 -0
  461. package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +77 -49
  462. package/src/theme/EditThisPage/index.tsx +7 -3
  463. package/src/theme/ErrorPageContent.tsx +41 -0
  464. package/src/theme/Footer/Copyright/index.tsx +20 -0
  465. package/src/theme/Footer/Layout/index.tsx +34 -0
  466. package/src/theme/Footer/LinkItem/index.tsx +36 -0
  467. package/src/theme/Footer/Links/MultiColumn/index.tsx +51 -0
  468. package/src/theme/Footer/Links/Simple/index.tsx +42 -0
  469. package/src/theme/Footer/Links/index.tsx +21 -0
  470. package/src/theme/Footer/Logo/index.tsx +46 -0
  471. package/src/theme/Footer/{styles.module.css → Logo/styles.module.css} +2 -1
  472. package/src/theme/Footer/index.tsx +13 -113
  473. package/src/theme/Heading/index.tsx +33 -39
  474. package/src/theme/Heading/styles.module.css +27 -2
  475. package/src/theme/{IconArrow → Icon/Arrow}/index.tsx +4 -6
  476. package/src/theme/Icon/Close/index.tsx +26 -0
  477. package/src/theme/Icon/DarkMode/index.tsx +20 -0
  478. package/{lib-next/theme/IconEdit/index.js → src/theme/Icon/Edit/index.tsx} +11 -9
  479. package/{lib/theme/IconEdit → src/theme/Icon/Edit}/styles.module.css +0 -0
  480. package/src/theme/Icon/ExternalLink/index.tsx +30 -0
  481. package/src/theme/Icon/ExternalLink/styles.module.css +10 -0
  482. package/src/theme/Icon/Home/index.tsx +20 -0
  483. package/src/theme/Icon/Language/index.tsx +29 -0
  484. package/src/theme/Icon/LightMode/index.tsx +20 -0
  485. package/src/theme/{IconMenu → Icon/Menu}/index.tsx +5 -10
  486. package/src/theme/LastUpdated/index.tsx +36 -39
  487. package/src/theme/Layout/Provider/index.tsx +33 -0
  488. package/src/theme/Layout/index.tsx +23 -15
  489. package/{lib/theme/Layout/styles.css → src/theme/Layout/styles.module.css} +10 -5
  490. package/src/theme/Logo/index.tsx +58 -23
  491. package/src/theme/{ThemeContext.ts → MDXComponents/A.tsx} +5 -6
  492. package/src/theme/MDXComponents/Code.tsx +40 -0
  493. package/src/theme/MDXComponents/Details.tsx +28 -0
  494. package/src/theme/MDXComponents/Head.tsx +29 -0
  495. package/src/theme/MDXComponents/Heading.tsx +14 -0
  496. package/src/theme/MDXComponents/Img/index.tsx +27 -0
  497. package/src/theme/MDXComponents/Img/styles.module.css +10 -0
  498. package/src/theme/MDXComponents/Pre.tsx +23 -0
  499. package/src/theme/MDXComponents/Ul/index.tsx +26 -0
  500. package/src/theme/MDXComponents/Ul/styles.module.css +14 -0
  501. package/src/theme/MDXComponents/index.tsx +25 -42
  502. package/src/theme/MDXContent/index.tsx +15 -0
  503. package/src/theme/MDXPage/index.tsx +42 -40
  504. package/src/theme/MDXPage/styles.module.css +10 -0
  505. package/src/theme/Navbar/ColorModeToggle/index.tsx +30 -0
  506. package/src/theme/Navbar/Content/index.tsx +86 -0
  507. package/{lib/theme/NavbarItem → src/theme/Navbar/Content}/styles.module.css +5 -3
  508. package/src/theme/Navbar/Layout/index.tsx +57 -0
  509. package/{lib-next/theme/Navbar → src/theme/Navbar/Layout}/styles.module.css +1 -7
  510. package/src/theme/Navbar/Logo/index.tsx +19 -0
  511. package/src/theme/Navbar/MobileSidebar/Header/index.tsx +34 -0
  512. package/src/theme/Navbar/MobileSidebar/Layout/index.tsx +31 -0
  513. package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +38 -0
  514. package/src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx +39 -0
  515. package/src/theme/Navbar/MobileSidebar/Toggle/index.tsx +25 -0
  516. package/src/theme/Navbar/MobileSidebar/index.tsx +33 -0
  517. package/src/theme/Navbar/Search/index.tsx +19 -0
  518. package/src/theme/Navbar/Search/styles.module.css +20 -0
  519. package/src/theme/Navbar/index.tsx +7 -147
  520. package/src/theme/NavbarItem/ComponentTypes.tsx +32 -0
  521. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +36 -195
  522. package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -21
  523. package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +36 -0
  524. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +58 -52
  525. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +5 -8
  526. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +190 -0
  527. package/src/theme/NavbarItem/HtmlNavbarItem.tsx +32 -0
  528. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/index.tsx +77 -0
  529. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  530. package/src/theme/NavbarItem/NavbarNavLink.tsx +74 -0
  531. package/src/theme/NavbarItem/SearchNavbarItem.tsx +8 -5
  532. package/src/theme/NavbarItem/index.tsx +15 -32
  533. package/src/theme/NotFound.tsx +40 -33
  534. package/src/theme/PaginatorNavLink/index.tsx +26 -0
  535. package/src/theme/SearchBar.tsx +2 -1
  536. package/src/theme/SearchMetadata/index.tsx +43 -0
  537. package/src/theme/{LayoutHead → SiteMetadata}/index.tsx +31 -41
  538. package/src/theme/SkipToContent/index.tsx +7 -32
  539. package/src/theme/SkipToContent/styles.module.css +8 -3
  540. package/src/theme/TOC/index.tsx +14 -44
  541. package/src/theme/TOC/styles.module.css +2 -2
  542. package/src/theme/TOCCollapsible/CollapseButton/index.tsx +36 -0
  543. package/src/theme/TOCCollapsible/CollapseButton/styles.module.css +29 -0
  544. package/src/theme/TOCCollapsible/index.tsx +46 -0
  545. package/src/theme/TOCCollapsible/styles.module.css +31 -0
  546. package/src/theme/TOCInline/index.tsx +15 -35
  547. package/src/theme/TOCItems/Tree.tsx +46 -0
  548. package/src/theme/TOCItems/index.tsx +61 -0
  549. package/src/theme/TabItem/index.tsx +12 -4
  550. package/src/theme/TabItem/styles.module.css +10 -0
  551. package/src/theme/Tabs/index.tsx +121 -62
  552. package/src/theme/Tabs/styles.module.css +4 -13
  553. package/src/theme/Tag/index.tsx +27 -0
  554. package/src/theme/Tag/styles.module.css +70 -0
  555. package/src/theme/TagsListByLetter/index.tsx +43 -0
  556. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  557. package/src/theme/TagsListInline/index.tsx +35 -0
  558. package/src/theme/TagsListInline/styles.module.css +15 -0
  559. package/src/theme/ThemedImage/index.tsx +12 -14
  560. package/src/theme/ThemedImage/styles.module.css +9 -2
  561. package/src/theme/prism-include-languages.ts +20 -15
  562. package/src/theme-classic.d.ts +1368 -0
  563. package/src/translations.ts +85 -60
  564. package/babel.config.js +0 -35
  565. package/codeTranslations/README.md +0 -20
  566. package/codeTranslations/ar.json +0 -55
  567. package/codeTranslations/base.json +0 -108
  568. package/codeTranslations/da.json +0 -55
  569. package/codeTranslations/de.json +0 -55
  570. package/codeTranslations/es.json +0 -55
  571. package/codeTranslations/fa.json +0 -55
  572. package/codeTranslations/fil.json +0 -55
  573. package/codeTranslations/fr.json +0 -55
  574. package/codeTranslations/he.json +0 -55
  575. package/codeTranslations/hi.json +0 -55
  576. package/codeTranslations/ja.json +0 -55
  577. package/codeTranslations/ko.json +0 -55
  578. package/codeTranslations/pl.json +0 -55
  579. package/codeTranslations/pt-BR.json +0 -55
  580. package/codeTranslations/pt-PT.json +0 -55
  581. package/codeTranslations/ru.json +0 -55
  582. package/codeTranslations/tr.json +0 -55
  583. package/codeTranslations/vi.json +0 -55
  584. package/codeTranslations/zh-Hans.json +0 -55
  585. package/codeTranslations/zh-Hant.json +0 -55
  586. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  587. package/lib/__tests__/translations.test.js +0 -112
  588. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  589. package/lib/theme/DocItem/styles.module.css +0 -28
  590. package/lib/theme/DocPage/styles.module.css +0 -98
  591. package/lib/theme/DocSidebar/styles.module.css +0 -138
  592. package/lib/theme/DocVersionSuggestions/index.js +0 -111
  593. package/lib/theme/IconArrow/index.js +0 -28
  594. package/lib/theme/IconEdit/index.js +0 -34
  595. package/lib/theme/IconLanguage/index.js +0 -29
  596. package/lib/theme/IconMenu/index.js +0 -31
  597. package/lib/theme/LayoutHead/index.js +0 -142
  598. package/lib/theme/LayoutProviders/index.js +0 -34
  599. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  600. package/lib/theme/SearchMetadatas/index.js +0 -33
  601. package/lib/theme/Seo/index.js +0 -50
  602. package/lib/theme/ThemeContext.js +0 -21
  603. package/lib/theme/ThemeProvider/index.js +0 -38
  604. package/lib/theme/Toggle/index.js +0 -106
  605. package/lib/theme/Toggle/styles.module.css +0 -114
  606. package/lib/theme/UserPreferencesContext.js +0 -18
  607. package/lib/theme/UserPreferencesProvider/index.js +0 -44
  608. package/lib/theme/hooks/styles.css +0 -10
  609. package/lib/theme/hooks/useAnnouncementBar.js +0 -63
  610. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  611. package/lib/theme/hooks/useDocs.js +0 -18
  612. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  613. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  614. package/lib/theme/hooks/useLocationHash.js +0 -28
  615. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  616. package/lib/theme/hooks/usePrismTheme.js +0 -36
  617. package/lib/theme/hooks/useScrollPosition.js +0 -49
  618. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  619. package/lib/theme/hooks/useTabGroupChoice.js +0 -53
  620. package/lib/theme/hooks/useTheme.js +0 -99
  621. package/lib/theme/hooks/useThemeContext.js +0 -31
  622. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  623. package/lib/theme/hooks/useWindowSize.js +0 -55
  624. package/lib/types.d.ts +0 -600
  625. package/lib/validateThemeConfig.js +0 -317
  626. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  627. package/lib-next/__tests__/translations.test.js +0 -128
  628. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  629. package/lib-next/index.js +0 -198
  630. package/lib-next/theme/AnnouncementBar/index.js +0 -65
  631. package/lib-next/theme/AnnouncementBar/styles.module.css +0 -72
  632. package/lib-next/theme/BlogListPage/index.js +0 -56
  633. package/lib-next/theme/BlogListPaginator/index.js +0 -54
  634. package/lib-next/theme/BlogPostItem/index.js +0 -151
  635. package/lib-next/theme/BlogPostPage/index.js +0 -59
  636. package/lib-next/theme/BlogPostPaginator/index.js +0 -57
  637. package/lib-next/theme/BlogSidebar/index.js +0 -36
  638. package/lib-next/theme/BlogTagsListPage/index.js +0 -81
  639. package/lib-next/theme/BlogTagsPostsPage/index.js +0 -96
  640. package/lib-next/theme/CodeBlock/index.js +0 -267
  641. package/lib-next/theme/CodeBlock/styles.module.css +0 -71
  642. package/lib-next/theme/DocItem/index.js +0 -117
  643. package/lib-next/theme/DocItem/styles.module.css +0 -28
  644. package/lib-next/theme/DocPage/index.js +0 -146
  645. package/lib-next/theme/DocPage/styles.module.css +0 -98
  646. package/lib-next/theme/DocPaginator/index.js +0 -59
  647. package/lib-next/theme/DocSidebar/index.js +0 -344
  648. package/lib-next/theme/DocSidebar/styles.module.css +0 -138
  649. package/lib-next/theme/EditThisPage/index.js +0 -21
  650. package/lib-next/theme/Footer/index.js +0 -120
  651. package/lib-next/theme/Heading/index.js +0 -51
  652. package/lib-next/theme/Heading/styles.css +0 -23
  653. package/lib-next/theme/IconLanguage/index.js +0 -25
  654. package/lib-next/theme/LastUpdated/index.js +0 -82
  655. package/lib-next/theme/Layout/index.js +0 -46
  656. package/lib-next/theme/LayoutHead/index.js +0 -133
  657. package/lib-next/theme/LayoutProviders/index.js +0 -21
  658. package/lib-next/theme/Logo/index.js +0 -50
  659. package/lib-next/theme/MDXComponents/index.js +0 -51
  660. package/lib-next/theme/MDXPage/index.js +0 -55
  661. package/lib-next/theme/Navbar/index.js +0 -146
  662. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +0 -210
  663. package/lib-next/theme/NavbarItem/DocNavbarItem.js +0 -43
  664. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -83
  665. package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +0 -28
  666. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -66
  667. package/lib-next/theme/NavbarItem/index.js +0 -41
  668. package/lib-next/theme/NotFound.js +0 -46
  669. package/lib-next/theme/SearchBar.js +0 -11
  670. package/lib-next/theme/SearchMetadatas/index.js +0 -20
  671. package/lib-next/theme/Seo/index.js +0 -37
  672. package/lib-next/theme/SkipToContent/index.js +0 -50
  673. package/lib-next/theme/SkipToContent/styles.module.css +0 -16
  674. package/lib-next/theme/TOC/index.js +0 -52
  675. package/lib-next/theme/TOC/styles.module.css +0 -23
  676. package/lib-next/theme/TOCInline/index.js +0 -43
  677. package/lib-next/theme/TOCInline/styles.module.css +0 -12
  678. package/lib-next/theme/Tabs/index.js +0 -144
  679. package/lib-next/theme/Tabs/styles.module.css +0 -23
  680. package/lib-next/theme/ThemeProvider/index.js +0 -25
  681. package/lib-next/theme/ThemedImage/index.js +0 -42
  682. package/lib-next/theme/ThemedImage/styles.module.css +0 -11
  683. package/lib-next/theme/Toggle/index.js +0 -95
  684. package/lib-next/theme/Toggle/styles.module.css +0 -114
  685. package/lib-next/theme/UserPreferencesContext.js +0 -9
  686. package/lib-next/theme/UserPreferencesProvider/index.js +0 -28
  687. package/lib-next/theme/hooks/styles.css +0 -10
  688. package/lib-next/theme/hooks/useAnnouncementBar.js +0 -49
  689. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  690. package/lib-next/theme/hooks/useDocs.js +0 -10
  691. package/lib-next/theme/hooks/useHideableNavbar.js +0 -79
  692. package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
  693. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  694. package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
  695. package/lib-next/theme/hooks/usePrismTheme.js +0 -20
  696. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  697. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  698. package/lib-next/theme/hooks/useTabGroupChoice.js +0 -41
  699. package/lib-next/theme/hooks/useTheme.js +0 -82
  700. package/lib-next/theme/hooks/useThemeContext.js +0 -22
  701. package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
  702. package/lib-next/theme/hooks/useWindowSize.js +0 -45
  703. package/lib-next/theme/prism-include-languages.js +0 -23
  704. package/lib-next/translations.js +0 -145
  705. package/lib-next/types.d.ts +0 -600
  706. package/lib-next/validateThemeConfig.js +0 -317
  707. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  708. package/src/__tests__/translations.test.ts +0 -116
  709. package/src/__tests__/validateThemeConfig.test.js +0 -333
  710. package/src/prism-include-languages.js +0 -11
  711. package/src/theme/BlogSidebar/styles.module.css +0 -46
  712. package/src/theme/DocItem/styles.module.css +0 -28
  713. package/src/theme/DocPage/styles.module.css +0 -98
  714. package/src/theme/DocSidebar/styles.module.css +0 -138
  715. package/src/theme/IconEdit/styles.module.css +0 -11
  716. package/src/theme/IconLanguage/index.tsx +0 -31
  717. package/src/theme/LayoutProviders/index.tsx +0 -24
  718. package/src/theme/NavbarItem/LocaleDropdownNavbarItem.tsx +0 -67
  719. package/src/theme/SearchMetadatas/index.tsx +0 -28
  720. package/src/theme/Seo/index.tsx +0 -47
  721. package/src/theme/ThemeProvider/index.tsx +0 -24
  722. package/src/theme/Toggle/index.tsx +0 -113
  723. package/src/theme/Toggle/styles.module.css +0 -114
  724. package/src/theme/UserPreferencesContext.ts +0 -12
  725. package/src/theme/UserPreferencesProvider/index.tsx +0 -32
  726. package/src/theme/hooks/styles.css +0 -10
  727. package/src/theme/hooks/useAnnouncementBar.ts +0 -58
  728. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  729. package/src/theme/hooks/useDocs.ts +0 -11
  730. package/src/theme/hooks/useHideableNavbar.ts +0 -85
  731. package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
  732. package/src/theme/hooks/useLocationHash.ts +0 -25
  733. package/src/theme/hooks/usePrismTheme.ts +0 -22
  734. package/src/theme/hooks/useScrollPosition.ts +0 -45
  735. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  736. package/src/theme/hooks/useTabGroupChoice.ts +0 -46
  737. package/src/theme/hooks/useTheme.ts +0 -92
  738. package/src/theme/hooks/useThemeContext.ts +0 -23
  739. package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
  740. package/src/theme/hooks/useWindowSize.ts +0 -51
  741. package/src/types.d.ts +0 -600
  742. package/src/validateThemeConfig.js +0 -317
  743. package/tsconfig.json +0 -12
  744. package/update-code-translations.js +0 -239
  745. package/update-code-translations.test.js +0 -33
@@ -6,13 +6,13 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
+ import {useDocsVersionCandidates} from '@docusaurus/theme-common/internal';
9
10
  import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
10
- import {useActiveVersion, useLatestVersion} from '@theme/hooks/useDocs';
11
11
  import type {Props} from '@theme/NavbarItem/DocsVersionNavbarItem';
12
- import {useDocsPreferredVersion} from '@docusaurus/theme-common';
12
+ import type {GlobalVersion} from '@docusaurus/plugin-content-docs/client';
13
13
 
14
- const getVersionMainDoc = (version) =>
15
- version.docs.find((doc) => doc.id === version.mainDocId);
14
+ const getVersionMainDoc = (version: GlobalVersion) =>
15
+ version.docs.find((doc) => doc.id === version.mainDocId)!;
16
16
 
17
17
  export default function DocsVersionNavbarItem({
18
18
  label: staticLabel,
@@ -20,10 +20,7 @@ export default function DocsVersionNavbarItem({
20
20
  docsPluginId,
21
21
  ...props
22
22
  }: Props): JSX.Element {
23
- const activeVersion = useActiveVersion(docsPluginId);
24
- const {preferredVersion} = useDocsPreferredVersion(docsPluginId);
25
- const latestVersion = useLatestVersion(docsPluginId);
26
- const version = activeVersion ?? preferredVersion ?? latestVersion;
23
+ const version = useDocsVersionCandidates(docsPluginId)[0];
27
24
  const label = staticLabel ?? version.label;
28
25
  const path = staticTo ?? getVersionMainDoc(version).path;
29
26
  return <DefaultNavbarItem {...props} label={label} to={path} />;
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import React, {useState, useRef, useEffect} from 'react';
9
+ import clsx from 'clsx';
10
+ import {
11
+ isRegexpStringMatch,
12
+ useCollapsible,
13
+ Collapsible,
14
+ } from '@docusaurus/theme-common';
15
+ import {isSamePath, useLocalPathname} from '@docusaurus/theme-common/internal';
16
+ import NavbarNavLink from '@theme/NavbarItem/NavbarNavLink';
17
+ import NavbarItem, {type LinkLikeNavbarItemProps} from '@theme/NavbarItem';
18
+ import type {
19
+ DesktopOrMobileNavBarItemProps,
20
+ Props,
21
+ } from '@theme/NavbarItem/DropdownNavbarItem';
22
+
23
+ function isItemActive(
24
+ item: LinkLikeNavbarItemProps,
25
+ localPathname: string,
26
+ ): boolean {
27
+ if (isSamePath(item.to, localPathname)) {
28
+ return true;
29
+ }
30
+ if (isRegexpStringMatch(item.activeBaseRegex, localPathname)) {
31
+ return true;
32
+ }
33
+ if (item.activeBasePath && localPathname.startsWith(item.activeBasePath)) {
34
+ return true;
35
+ }
36
+ return false;
37
+ }
38
+
39
+ function containsActiveItems(
40
+ items: readonly LinkLikeNavbarItemProps[],
41
+ localPathname: string,
42
+ ): boolean {
43
+ return items.some((item) => isItemActive(item, localPathname));
44
+ }
45
+
46
+ function DropdownNavbarItemDesktop({
47
+ items,
48
+ position,
49
+ className,
50
+ onClick,
51
+ ...props
52
+ }: DesktopOrMobileNavBarItemProps) {
53
+ const dropdownRef = useRef<HTMLDivElement>(null);
54
+ const [showDropdown, setShowDropdown] = useState(false);
55
+
56
+ useEffect(() => {
57
+ const handleClickOutside = (event: MouseEvent | TouchEvent) => {
58
+ if (
59
+ !dropdownRef.current ||
60
+ dropdownRef.current.contains(event.target as Node)
61
+ ) {
62
+ return;
63
+ }
64
+ setShowDropdown(false);
65
+ };
66
+
67
+ document.addEventListener('mousedown', handleClickOutside);
68
+ document.addEventListener('touchstart', handleClickOutside);
69
+
70
+ return () => {
71
+ document.removeEventListener('mousedown', handleClickOutside);
72
+ document.removeEventListener('touchstart', handleClickOutside);
73
+ };
74
+ }, [dropdownRef]);
75
+
76
+ return (
77
+ <div
78
+ ref={dropdownRef}
79
+ className={clsx('navbar__item', 'dropdown', 'dropdown--hoverable', {
80
+ 'dropdown--right': position === 'right',
81
+ 'dropdown--show': showDropdown,
82
+ })}>
83
+ <NavbarNavLink
84
+ aria-haspopup="true"
85
+ aria-expanded={showDropdown}
86
+ role="button"
87
+ href={props.to ? undefined : '#'}
88
+ className={clsx('navbar__link', className)}
89
+ {...props}
90
+ onClick={props.to ? undefined : (e) => e.preventDefault()}
91
+ onKeyDown={(e) => {
92
+ if (e.key === 'Enter') {
93
+ e.preventDefault();
94
+ setShowDropdown(!showDropdown);
95
+ }
96
+ }}>
97
+ {props.children ?? props.label}
98
+ </NavbarNavLink>
99
+ <ul className="dropdown__menu">
100
+ {items.map((childItemProps, i) => (
101
+ <NavbarItem
102
+ isDropdownItem
103
+ onKeyDown={(e) => {
104
+ if (i === items.length - 1 && e.key === 'Tab') {
105
+ e.preventDefault();
106
+ setShowDropdown(false);
107
+ const nextNavbarItem = dropdownRef.current!.nextElementSibling;
108
+ if (nextNavbarItem) {
109
+ const targetItem =
110
+ nextNavbarItem instanceof HTMLAnchorElement
111
+ ? nextNavbarItem
112
+ : // Next item is another dropdown; focus on the inner
113
+ // anchor element instead so there's outline
114
+ nextNavbarItem.querySelector('a')!;
115
+ targetItem.focus();
116
+ }
117
+ }
118
+ }}
119
+ activeClassName="dropdown__link--active"
120
+ {...childItemProps}
121
+ key={i}
122
+ />
123
+ ))}
124
+ </ul>
125
+ </div>
126
+ );
127
+ }
128
+
129
+ function DropdownNavbarItemMobile({
130
+ items,
131
+ className,
132
+ position, // Need to destructure position from props so that it doesn't get passed on.
133
+ onClick,
134
+ ...props
135
+ }: DesktopOrMobileNavBarItemProps) {
136
+ const localPathname = useLocalPathname();
137
+ const containsActive = containsActiveItems(items, localPathname);
138
+
139
+ const {collapsed, toggleCollapsed, setCollapsed} = useCollapsible({
140
+ initialState: () => !containsActive,
141
+ });
142
+
143
+ // Expand/collapse if any item active after a navigation
144
+ useEffect(() => {
145
+ if (containsActive) {
146
+ setCollapsed(!containsActive);
147
+ }
148
+ }, [localPathname, containsActive, setCollapsed]);
149
+
150
+ return (
151
+ <li
152
+ className={clsx('menu__list-item', {
153
+ 'menu__list-item--collapsed': collapsed,
154
+ })}>
155
+ <NavbarNavLink
156
+ role="button"
157
+ className={clsx(
158
+ 'menu__link menu__link--sublist menu__link--sublist-caret',
159
+ className,
160
+ )}
161
+ {...props}
162
+ onClick={(e) => {
163
+ e.preventDefault();
164
+ toggleCollapsed();
165
+ }}>
166
+ {props.children ?? props.label}
167
+ </NavbarNavLink>
168
+ <Collapsible lazy as="ul" className="menu__list" collapsed={collapsed}>
169
+ {items.map((childItemProps, i) => (
170
+ <NavbarItem
171
+ mobile
172
+ isDropdownItem
173
+ onClick={onClick}
174
+ activeClassName="menu__link--active"
175
+ {...childItemProps}
176
+ key={i}
177
+ />
178
+ ))}
179
+ </Collapsible>
180
+ </li>
181
+ );
182
+ }
183
+
184
+ export default function DropdownNavbarItem({
185
+ mobile = false,
186
+ ...props
187
+ }: Props): JSX.Element {
188
+ const Comp = mobile ? DropdownNavbarItemMobile : DropdownNavbarItemDesktop;
189
+ return <Comp {...props} />;
190
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import React from 'react';
9
+ import clsx from 'clsx';
10
+
11
+ import type {Props} from '@theme/NavbarItem/HtmlNavbarItem';
12
+
13
+ export default function HtmlNavbarItem({
14
+ value,
15
+ className,
16
+ mobile = false,
17
+ isDropdownItem = false,
18
+ }: Props): JSX.Element {
19
+ const Comp = isDropdownItem ? 'li' : 'div';
20
+ return (
21
+ <Comp
22
+ className={clsx(
23
+ {
24
+ navbar__item: !mobile && !isDropdownItem,
25
+ 'menu__list-item': mobile,
26
+ },
27
+ className,
28
+ )}
29
+ dangerouslySetInnerHTML={{__html: value}}
30
+ />
31
+ );
32
+ }
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import React from 'react';
9
+ import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
10
+ import {useAlternatePageUtils} from '@docusaurus/theme-common/internal';
11
+ import {translate} from '@docusaurus/Translate';
12
+ import DropdownNavbarItem from '@theme/NavbarItem/DropdownNavbarItem';
13
+ import IconLanguage from '@theme/Icon/Language';
14
+ import type {LinkLikeNavbarItemProps} from '@theme/NavbarItem';
15
+ import type {Props} from '@theme/NavbarItem/LocaleDropdownNavbarItem';
16
+
17
+ import styles from './styles.module.css';
18
+
19
+ export default function LocaleDropdownNavbarItem({
20
+ mobile,
21
+ dropdownItemsBefore,
22
+ dropdownItemsAfter,
23
+ ...props
24
+ }: Props): JSX.Element {
25
+ const {
26
+ i18n: {currentLocale, locales, localeConfigs},
27
+ } = useDocusaurusContext();
28
+ const alternatePageUtils = useAlternatePageUtils();
29
+
30
+ const localeItems = locales.map((locale): LinkLikeNavbarItemProps => {
31
+ const to = `pathname://${alternatePageUtils.createUrl({
32
+ locale,
33
+ fullyQualified: false,
34
+ })}`;
35
+ return {
36
+ label: localeConfigs[locale]!.label,
37
+ to,
38
+ target: '_self',
39
+ autoAddBaseUrl: false,
40
+ className:
41
+ // eslint-disable-next-line no-nested-ternary
42
+ locale === currentLocale
43
+ ? // Similar idea as DefaultNavbarItem: select the right Infima active
44
+ // class name. This cannot be substituted with isActive, because the
45
+ // target URLs contain `pathname://` and therefore are not NavLinks!
46
+ mobile
47
+ ? 'menu__link--active'
48
+ : 'dropdown__link--active'
49
+ : '',
50
+ };
51
+ });
52
+
53
+ const items = [...dropdownItemsBefore, ...localeItems, ...dropdownItemsAfter];
54
+
55
+ // Mobile is handled a bit differently
56
+ const dropdownLabel = mobile
57
+ ? translate({
58
+ message: 'Languages',
59
+ id: 'theme.navbar.mobileLanguageDropdown.label',
60
+ description: 'The label for the mobile language switcher dropdown',
61
+ })
62
+ : localeConfigs[currentLocale]!.label;
63
+
64
+ return (
65
+ <DropdownNavbarItem
66
+ {...props}
67
+ mobile={mobile}
68
+ label={
69
+ <>
70
+ <IconLanguage className={styles.iconLanguage} />
71
+ {dropdownLabel}
72
+ </>
73
+ }
74
+ items={items}
75
+ />
76
+ );
77
+ }
@@ -0,0 +1,11 @@
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
+ .iconLanguage {
9
+ vertical-align: text-bottom;
10
+ margin-right: 5px;
11
+ }
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import React from 'react';
9
+ import Link from '@docusaurus/Link';
10
+ import useBaseUrl from '@docusaurus/useBaseUrl';
11
+ import isInternalUrl from '@docusaurus/isInternalUrl';
12
+ import {isRegexpStringMatch} from '@docusaurus/theme-common';
13
+ import IconExternalLink from '@theme/Icon/ExternalLink';
14
+ import type {Props} from '@theme/NavbarItem/NavbarNavLink';
15
+
16
+ export default function NavbarNavLink({
17
+ activeBasePath,
18
+ activeBaseRegex,
19
+ to,
20
+ href,
21
+ label,
22
+ html,
23
+ isDropdownLink,
24
+ prependBaseUrlToHref,
25
+ ...props
26
+ }: Props): JSX.Element {
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, {forcePrependBaseUrl: true});
32
+ const isExternalLink = label && href && !isInternalUrl(href);
33
+
34
+ // Link content is set through html XOR label
35
+ const linkContentProps = html
36
+ ? {dangerouslySetInnerHTML: {__html: html}}
37
+ : {
38
+ children: (
39
+ <>
40
+ {label}
41
+ {isExternalLink && (
42
+ <IconExternalLink
43
+ {...(isDropdownLink && {width: 12, height: 12})}
44
+ />
45
+ )}
46
+ </>
47
+ ),
48
+ };
49
+
50
+ if (href) {
51
+ return (
52
+ <Link
53
+ href={prependBaseUrlToHref ? normalizedHref : href}
54
+ {...props}
55
+ {...linkContentProps}
56
+ />
57
+ );
58
+ }
59
+
60
+ return (
61
+ <Link
62
+ to={toUrl}
63
+ isNavLink
64
+ {...((activeBasePath || activeBaseRegex) && {
65
+ isActive: (_match, location) =>
66
+ activeBaseRegex
67
+ ? isRegexpStringMatch(activeBaseRegex, location.pathname)
68
+ : location.pathname.startsWith(activeBaseUrl),
69
+ })}
70
+ {...props}
71
+ {...linkContentProps}
72
+ />
73
+ );
74
+ }
@@ -6,18 +6,21 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
- import type {Props} from '@theme/NavbarItem/SearchNavbarItem';
10
9
  import SearchBar from '@theme/SearchBar';
11
- import styles from './styles.module.css';
10
+ import NavbarSearch from '@theme/Navbar/Search';
11
+ import type {Props} from '@theme/NavbarItem/SearchNavbarItem';
12
12
 
13
- export default function SearchNavbarItem({mobile}: Props): JSX.Element | null {
13
+ export default function SearchNavbarItem({
14
+ mobile,
15
+ className,
16
+ }: Props): JSX.Element | null {
14
17
  if (mobile) {
15
18
  return null;
16
19
  }
17
20
 
18
21
  return (
19
- <div className={styles.searchWrapper}>
22
+ <NavbarSearch className={className}>
20
23
  <SearchBar />
21
- </div>
24
+ </NavbarSearch>
22
25
  );
23
26
  }
@@ -6,40 +6,23 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
- import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
10
- import LocaleDropdownNavbarItem from '@theme/NavbarItem/LocaleDropdownNavbarItem';
11
- import SearchNavbarItem from '@theme/NavbarItem/SearchNavbarItem';
12
- import type {Props} from '@theme/NavbarItem';
9
+ import ComponentTypes from '@theme/NavbarItem/ComponentTypes';
10
+ import type {NavbarItemType, Props} from '@theme/NavbarItem';
13
11
 
14
- const NavbarItemComponents = {
15
- default: () => DefaultNavbarItem,
16
- localeDropdown: () => LocaleDropdownNavbarItem,
17
- search: () => SearchNavbarItem,
18
-
19
- // Need to lazy load these items as we don't know for sure the docs plugin is loaded
20
- // See https://github.com/facebook/docusaurus/issues/3360
21
- docsVersion: () =>
22
- // eslint-disable-next-line @typescript-eslint/no-var-requires, global-require
23
- require('@theme/NavbarItem/DocsVersionNavbarItem').default,
24
- docsVersionDropdown: () =>
25
- // eslint-disable-next-line @typescript-eslint/no-var-requires, global-require
26
- require('@theme/NavbarItem/DocsVersionDropdownNavbarItem').default,
27
- doc: () =>
28
- // eslint-disable-next-line @typescript-eslint/no-var-requires, global-require
29
- require('@theme/NavbarItem/DocNavbarItem').default,
30
- } as const;
31
-
32
- const getNavbarItemComponent = (
33
- type: keyof typeof NavbarItemComponents = 'default',
34
- ) => {
35
- const navbarItemComponent = NavbarItemComponents[type];
36
- if (!navbarItemComponent) {
37
- throw new Error(`No NavbarItem component found for type=${type}.`);
12
+ function normalizeComponentType(type: NavbarItemType, props: object) {
13
+ // Backward compatibility: navbar item with no type set
14
+ // but containing dropdown items should use the type "dropdown"
15
+ if (!type || type === 'default') {
16
+ return 'items' in props ? 'dropdown' : 'default';
38
17
  }
39
- return navbarItemComponent();
40
- };
18
+ return type;
19
+ }
41
20
 
42
21
  export default function NavbarItem({type, ...props}: Props): JSX.Element {
43
- const NavbarItemComponent = getNavbarItemComponent(type);
44
- return <NavbarItemComponent {...props} />;
22
+ const componentType = normalizeComponentType(type, props);
23
+ const NavbarItemComponent = ComponentTypes[componentType];
24
+ if (!NavbarItemComponent) {
25
+ throw new Error(`No NavbarItem component found for type "${type}".`);
26
+ }
27
+ return <NavbarItemComponent {...(props as any)} />;
45
28
  }
@@ -6,42 +6,49 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
+ import Translate, {translate} from '@docusaurus/Translate';
10
+ import {PageMetadata} from '@docusaurus/theme-common';
9
11
  import Layout from '@theme/Layout';
10
- import Translate from '@docusaurus/Translate';
11
12
 
12
- function NotFound(): JSX.Element {
13
+ export default function NotFound(): JSX.Element {
13
14
  return (
14
- <Layout title="Page Not Found">
15
- <main className="container margin-vert--xl">
16
- <div className="row">
17
- <div className="col col--6 col--offset-3">
18
- <h1 className="hero__title">
19
- <Translate
20
- id="theme.NotFound.title"
21
- description="The title of the 404 page">
22
- Page Not Found
23
- </Translate>
24
- </h1>
25
- <p>
26
- <Translate
27
- id="theme.NotFound.p1"
28
- description="The first paragraph of the 404 page">
29
- We could not find what you were looking for.
30
- </Translate>
31
- </p>
32
- <p>
33
- <Translate
34
- id="theme.NotFound.p2"
35
- description="The 2nd paragraph of the 404 page">
36
- Please contact the owner of the site that linked you to the
37
- original URL and let them know their link is broken.
38
- </Translate>
39
- </p>
15
+ <>
16
+ <PageMetadata
17
+ title={translate({
18
+ id: 'theme.NotFound.title',
19
+ message: 'Page Not Found',
20
+ })}
21
+ />
22
+ <Layout>
23
+ <main className="container margin-vert--xl">
24
+ <div className="row">
25
+ <div className="col col--6 col--offset-3">
26
+ <h1 className="hero__title">
27
+ <Translate
28
+ id="theme.NotFound.title"
29
+ description="The title of the 404 page">
30
+ Page Not Found
31
+ </Translate>
32
+ </h1>
33
+ <p>
34
+ <Translate
35
+ id="theme.NotFound.p1"
36
+ description="The first paragraph of the 404 page">
37
+ We could not find what you were looking for.
38
+ </Translate>
39
+ </p>
40
+ <p>
41
+ <Translate
42
+ id="theme.NotFound.p2"
43
+ description="The 2nd paragraph of the 404 page">
44
+ Please contact the owner of the site that linked you to the
45
+ original URL and let them know their link is broken.
46
+ </Translate>
47
+ </p>
48
+ </div>
40
49
  </div>
41
- </div>
42
- </main>
43
- </Layout>
50
+ </main>
51
+ </Layout>
52
+ </>
44
53
  );
45
54
  }
46
-
47
- export default NotFound;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import React from 'react';
9
+ import clsx from 'clsx';
10
+ import Link from '@docusaurus/Link';
11
+ import type {Props} from '@theme/PaginatorNavLink';
12
+
13
+ export default function PaginatorNavLink(props: Props): JSX.Element {
14
+ const {permalink, title, subLabel, isNext} = props;
15
+ return (
16
+ <Link
17
+ className={clsx(
18
+ 'pagination-nav__link',
19
+ isNext ? 'pagination-nav__link--next' : 'pagination-nav__link--prev',
20
+ )}
21
+ to={permalink}>
22
+ {subLabel && <div className="pagination-nav__sublabel">{subLabel}</div>}
23
+ <div className="pagination-nav__label">{title}</div>
24
+ </Link>
25
+ );
26
+ }
@@ -6,7 +6,8 @@
6
6
  */
7
7
 
8
8
  // By default, the classic theme does not provide any SearchBar implementation
9
- // If you swizzled this file, it is your responsibility to provide an implementation
9
+ // If you swizzled this, it is your responsibility to provide an implementation
10
10
  // Tip: swizzle the SearchBar from the Algolia theme for inspiration:
11
11
  // npm run swizzle @docusaurus/theme-search-algolia SearchBar
12
+
12
13
  export {default} from '@docusaurus/Noop';
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import React from 'react';
9
+
10
+ import Head from '@docusaurus/Head';
11
+ import type {Props} from '@theme/SearchMetadata';
12
+
13
+ // Note: we bias toward using Algolia metadata on purpose
14
+ // Not doing so leads to confusion in the community,
15
+ // as it requires to first crawl the site with the Algolia plugin enabled first
16
+ // - https://github.com/facebook/docusaurus/issues/6693
17
+ // - https://github.com/facebook/docusaurus/issues/4555
18
+ export default function SearchMetadata({
19
+ locale,
20
+ version,
21
+ tag,
22
+ }: Props): JSX.Element {
23
+ // Seems safe to consider here the locale is the language, as the existing
24
+ // docsearch:language filter is afaik a regular string-based filter
25
+ const language = locale;
26
+
27
+ return (
28
+ <Head>
29
+ {/*
30
+ Docusaurus metadata, used by third-party search plugin
31
+ See https://github.com/cmfcmf/docusaurus-search-local/issues/99
32
+ */}
33
+ {locale && <meta name="docusaurus_locale" content={locale} />}
34
+ {version && <meta name="docusaurus_version" content={version} />}
35
+ {tag && <meta name="docusaurus_tag" content={tag} />}
36
+
37
+ {/* Algolia DocSearch metadata */}
38
+ {language && <meta name="docsearch:language" content={language} />}
39
+ {version && <meta name="docsearch:version" content={version} />}
40
+ {tag && <meta name="docsearch:docusaurus_tag" content={tag} />}
41
+ </Head>
42
+ );
43
+ }