@docusaurus/theme-classic 2.0.0-beta.fbdeefcac → 2.0.0-rc.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 (740) 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 +107 -170
  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 -63
  18. package/lib/theme/AnnouncementBar/styles.module.css +23 -32
  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-next/theme/Heading/styles.module.css → lib/theme/BlogPostItem/Content/index.d.ts} +3 -9
  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/{src/theme/IconEdit → lib/theme/BlogPostItem/Footer}/styles.module.css +2 -3
  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/{lib-next/theme/Toggle → lib/theme/BlogPostItem/Header/Authors}/styles.module.css +11 -7
  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/MDXPage → 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/{src/theme/BlogPostItem → lib/theme/BlogPostItem/Header/Title}/styles.module.css +8 -7
  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 -153
  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 -60
  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-next/theme/BlogSidebar → lib/theme/BlogSidebar/Desktop}/index.js +19 -23
  64. package/{lib-next/theme/BlogSidebar → lib/theme/BlogSidebar/Desktop}/styles.module.css +5 -4
  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 -43
  69. package/lib/theme/BlogTagsListPage/index.d.ts +10 -0
  70. package/lib/theme/BlogTagsListPage/index.js +27 -69
  71. package/lib/theme/BlogTagsPostsPage/index.d.ts +10 -0
  72. package/lib/theme/BlogTagsPostsPage/index.js +78 -89
  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/lib/theme/CodeBlock/Content/Element.d.ts +9 -0
  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-next/theme/CodeBlock → lib/theme/CodeBlock/Content}/styles.module.css +45 -27
  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/{BlogPostItem → CodeBlock/WordWrapButton}/styles.module.css +5 -8
  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-next/theme/Heading/styles.css → lib/theme/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/{styles.module.css → Footer/styles.module.css} +1 -9
  114. package/lib/theme/DocItem/Layout/index.d.ts +9 -0
  115. package/lib/theme/DocItem/Layout/index.js +59 -0
  116. package/{src/theme/DocItem → lib/theme/DocItem/Layout}/styles.module.css +3 -12
  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 -122
  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-next/theme/IconExternalLink → lib/theme/DocPage/Layout}/styles.module.css +7 -4
  140. package/lib/theme/DocPage/index.d.ts +10 -0
  141. package/lib/theme/DocPage/index.js +42 -165
  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 -302
  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/theme/DocVersionBanner/index.js +105 -102
  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/{src/theme/Footer → lib/theme/Footer/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 -104
  198. package/lib/theme/Heading/index.d.ts +9 -0
  199. package/lib/theme/Heading/index.js +35 -68
  200. package/lib/theme/Heading/styles.module.css +25 -5
  201. package/lib/theme/Icon/Arrow/index.d.ts +9 -0
  202. package/{lib-next/theme/IconArrow → lib/theme/Icon/Arrow}/index.js +2 -5
  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/{lib-next/theme/IconEdit → lib/theme/Icon/Edit}/index.js +2 -5
  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-next/theme/IconExternalLink → lib/theme/Icon/ExternalLink}/index.js +2 -5
  212. package/lib/theme/{IconExternalLink → Icon/ExternalLink}/styles.module.css +0 -2
  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 +7 -5
  221. package/lib/theme/LastUpdated/index.d.ts +9 -0
  222. package/lib/theme/LastUpdated/index.js +57 -42
  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} +9 -10
  228. package/lib/theme/Logo/index.d.ts +9 -0
  229. package/lib/theme/Logo/index.js +57 -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-next/theme/NavbarItem/SearchNavbarItem.js → lib/theme/MDXComponents/Heading.js} +3 -7
  240. package/lib/theme/MDXComponents/Img/index.d.ts +9 -0
  241. package/lib/theme/MDXComponents/Img/index.js +22 -0
  242. package/lib/theme/MDXComponents/Img/styles.module.css +10 -0
  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 +46 -56
  254. package/lib/theme/Navbar/ColorModeToggle/index.d.ts +9 -0
  255. package/lib/theme/Navbar/ColorModeToggle/index.js +23 -0
  256. package/lib/theme/Navbar/Content/index.d.ts +8 -0
  257. package/lib/theme/Navbar/Content/index.js +71 -0
  258. package/lib/theme/Navbar/Content/styles.module.css +15 -0
  259. package/lib/theme/Navbar/Layout/index.d.ts +9 -0
  260. package/lib/theme/Navbar/Layout/index.js +52 -0
  261. package/{lib-next/theme/Navbar → lib/theme/Navbar/Layout}/styles.module.css +0 -6
  262. package/lib/theme/Navbar/Logo/index.d.ts +8 -0
  263. package/{lib-next/theme/TabItem → lib/theme/Navbar/Logo}/index.js +7 -12
  264. package/lib/theme/Navbar/MobileSidebar/Header/index.d.ts +8 -0
  265. package/lib/theme/Navbar/MobileSidebar/Header/index.js +31 -0
  266. package/lib/theme/Navbar/MobileSidebar/Layout/index.d.ts +9 -0
  267. package/lib/theme/Navbar/MobileSidebar/Layout/index.js +28 -0
  268. package/{lib-next/theme/TOCInline/styles.module.css → lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.d.ts} +2 -6
  269. package/lib/theme/Navbar/MobileSidebar/PrimaryMenu/index.js +33 -0
  270. package/lib/theme/Navbar/MobileSidebar/SecondaryMenu/index.d.ts +8 -0
  271. package/lib/theme/Navbar/MobileSidebar/SecondaryMenu/index.js +36 -0
  272. package/lib/theme/Navbar/MobileSidebar/Toggle/index.d.ts +8 -0
  273. package/lib/theme/Navbar/MobileSidebar/Toggle/index.js +23 -0
  274. package/lib/theme/Navbar/MobileSidebar/index.d.ts +8 -0
  275. package/lib/theme/Navbar/MobileSidebar/index.js +29 -0
  276. package/lib/theme/Navbar/Search/index.d.ts +9 -0
  277. package/lib/theme/Navbar/Search/index.js +12 -0
  278. package/lib/theme/Navbar/Search/styles.module.css +20 -0
  279. package/{lib-next/theme/hooks/styles.css → lib/theme/Navbar/index.d.ts} +2 -4
  280. package/lib/theme/Navbar/index.js +9 -140
  281. package/lib/theme/NavbarItem/ComponentTypes.d.ts +9 -0
  282. package/lib/theme/NavbarItem/ComponentTypes.js +27 -0
  283. package/lib/theme/NavbarItem/DefaultNavbarItem.d.ts +10 -0
  284. package/lib/theme/NavbarItem/DefaultNavbarItem.js +36 -193
  285. package/lib/theme/NavbarItem/DocNavbarItem.d.ts +9 -0
  286. package/lib/theme/NavbarItem/DocNavbarItem.js +24 -52
  287. package/lib/theme/NavbarItem/DocSidebarNavbarItem.d.ts +9 -0
  288. package/lib/theme/NavbarItem/DocSidebarNavbarItem.js +33 -0
  289. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.d.ts +9 -0
  290. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +73 -62
  291. package/lib/theme/NavbarItem/DocsVersionNavbarItem.d.ts +9 -0
  292. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +11 -32
  293. package/lib/theme/NavbarItem/DropdownNavbarItem.d.ts +9 -0
  294. package/lib/theme/NavbarItem/DropdownNavbarItem.js +161 -0
  295. package/lib/theme/NavbarItem/HtmlNavbarItem.d.ts +9 -0
  296. package/lib/theme/NavbarItem/HtmlNavbarItem.js +28 -0
  297. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/index.d.ts +9 -0
  298. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/index.js +68 -0
  299. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  300. package/lib/theme/NavbarItem/NavbarNavLink.d.ts +9 -0
  301. package/lib/theme/NavbarItem/NavbarNavLink.js +68 -0
  302. package/lib/theme/NavbarItem/SearchNavbarItem.d.ts +9 -0
  303. package/lib/theme/NavbarItem/SearchNavbarItem.js +10 -19
  304. package/lib/theme/NavbarItem/index.d.ts +9 -0
  305. package/lib/theme/NavbarItem/index.js +15 -45
  306. package/lib/theme/NotFound.d.ts +8 -0
  307. package/lib/theme/NotFound.js +44 -49
  308. package/lib/theme/PaginatorNavLink/index.d.ts +9 -0
  309. package/lib/theme/PaginatorNavLink/index.js +23 -0
  310. package/lib/theme/SearchBar.d.ts +7 -0
  311. package/lib/theme/SearchBar.js +11 -15
  312. package/lib/theme/SearchMetadata/index.d.ts +9 -0
  313. package/lib/theme/SearchMetadata/index.js +34 -0
  314. package/lib/theme/SiteMetadata/index.d.ts +8 -0
  315. package/lib/theme/SiteMetadata/index.js +116 -0
  316. package/lib/theme/SkipToContent/index.d.ts +8 -0
  317. package/lib/theme/SkipToContent/index.js +16 -62
  318. package/lib/theme/SkipToContent/styles.module.css +7 -0
  319. package/lib/theme/TOC/index.d.ts +9 -0
  320. package/lib/theme/TOC/index.js +18 -52
  321. package/lib/theme/TOC/styles.module.css +1 -1
  322. package/lib/theme/TOCCollapsible/CollapseButton/index.d.ts +9 -0
  323. package/lib/theme/TOCCollapsible/CollapseButton/index.js +29 -0
  324. package/lib/theme/TOCCollapsible/CollapseButton/styles.module.css +29 -0
  325. package/lib/theme/TOCCollapsible/index.d.ts +9 -0
  326. package/lib/theme/TOCCollapsible/index.js +42 -0
  327. package/lib/theme/TOCCollapsible/styles.module.css +31 -0
  328. package/lib/theme/TOCInline/index.d.ts +9 -0
  329. package/lib/theme/TOCInline/index.js +15 -46
  330. package/lib/theme/TOCItems/Tree.d.ts +11 -0
  331. package/lib/theme/TOCItems/Tree.js +37 -0
  332. package/lib/theme/TOCItems/index.d.ts +9 -0
  333. package/lib/theme/TOCItems/index.js +53 -0
  334. package/lib/theme/TabItem/index.d.ts +9 -0
  335. package/lib/theme/TabItem/index.js +11 -24
  336. package/lib/theme/TabItem/styles.module.css +10 -0
  337. package/lib/theme/Tabs/index.d.ts +9 -0
  338. package/lib/theme/Tabs/index.js +159 -123
  339. package/lib/theme/Tabs/styles.module.css +4 -13
  340. package/lib/theme/Tag/index.d.ts +9 -0
  341. package/lib/theme/Tag/index.js +23 -0
  342. package/lib/theme/Tag/styles.module.css +70 -0
  343. package/lib/theme/TagsListByLetter/index.d.ts +9 -0
  344. package/lib/theme/TagsListByLetter/index.js +38 -0
  345. package/lib/theme/TagsListByLetter/styles.module.css +11 -0
  346. package/lib/theme/TagsListInline/index.d.ts +9 -0
  347. package/lib/theme/TagsListInline/index.js +31 -0
  348. package/lib/theme/TagsListInline/styles.module.css +15 -0
  349. package/lib/theme/ThemedImage/index.d.ts +9 -0
  350. package/lib/theme/ThemedImage/index.js +33 -43
  351. package/lib/theme/ThemedImage/styles.module.css +2 -2
  352. package/lib/theme/prism-include-languages.d.ts +8 -0
  353. package/lib/theme/prism-include-languages.js +19 -33
  354. package/lib/translations.d.ts +15 -0
  355. package/lib/translations.js +122 -122
  356. package/package.json +41 -36
  357. package/src/deps.d.ts +13 -0
  358. package/src/getSwizzleConfig.ts +245 -0
  359. package/src/index.ts +53 -78
  360. package/src/nprogress.css +41 -0
  361. package/src/nprogress.ts +31 -0
  362. package/src/options.ts +469 -0
  363. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  364. package/src/theme/Admonition/index.tsx +209 -0
  365. package/src/theme/Admonition/styles.module.css +38 -0
  366. package/src/theme/AnnouncementBar/index.tsx +11 -16
  367. package/src/theme/AnnouncementBar/styles.module.css +23 -32
  368. package/src/theme/BackToTopButton/index.tsx +35 -0
  369. package/src/theme/BackToTopButton/styles.module.css +44 -0
  370. package/src/theme/BlogArchivePage/index.tsx +92 -0
  371. package/src/theme/BlogLayout/index.tsx +38 -0
  372. package/src/theme/BlogListPage/index.tsx +37 -36
  373. package/src/theme/BlogListPaginator/index.tsx +27 -32
  374. package/src/theme/BlogPostItem/Container/index.tsx +32 -0
  375. package/src/theme/BlogPostItem/Content/index.tsx +29 -0
  376. package/src/theme/BlogPostItem/Footer/ReadMoreLink/index.tsx +44 -0
  377. package/src/theme/BlogPostItem/Footer/index.tsx +60 -0
  378. package/src/theme/BlogPostItem/Footer/styles.module.css +10 -0
  379. package/src/theme/BlogPostItem/Header/Author/index.tsx +55 -0
  380. package/src/theme/BlogPostItem/Header/Authors/index.tsx +53 -0
  381. package/src/theme/BlogPostItem/Header/Authors/styles.module.css +21 -0
  382. package/src/theme/BlogPostItem/Header/Info/index.tsx +71 -0
  383. package/src/theme/BlogPostItem/Header/Info/styles.module.css +10 -0
  384. package/src/theme/BlogPostItem/Header/Title/index.tsx +33 -0
  385. package/{lib-next/theme/BlogPostItem → src/theme/BlogPostItem/Header/Title}/styles.module.css +8 -7
  386. package/src/theme/BlogPostItem/Header/index.tsx +21 -0
  387. package/src/theme/BlogPostItem/index.tsx +19 -151
  388. package/src/theme/BlogPostItems/index.tsx +30 -0
  389. package/src/theme/BlogPostPage/Metadata/index.tsx +44 -0
  390. package/src/theme/BlogPostPage/index.tsx +55 -42
  391. package/src/theme/BlogPostPaginator/index.tsx +27 -36
  392. package/src/theme/BlogSidebar/Desktop/index.tsx +45 -0
  393. package/src/theme/BlogSidebar/{styles.module.css → Desktop/styles.module.css} +5 -4
  394. package/src/theme/BlogSidebar/Mobile/index.tsx +38 -0
  395. package/src/theme/BlogSidebar/index.tsx +10 -33
  396. package/src/theme/BlogTagsListPage/index.tsx +24 -67
  397. package/src/theme/BlogTagsPostsPage/index.tsx +58 -50
  398. package/src/theme/CodeBlock/Container/index.tsx +32 -0
  399. package/src/theme/CodeBlock/Container/styles.module.css +14 -0
  400. package/src/theme/CodeBlock/Content/Element.tsx +30 -0
  401. package/src/theme/CodeBlock/Content/String.tsx +110 -0
  402. package/src/theme/CodeBlock/{styles.module.css → Content/styles.module.css} +45 -27
  403. package/src/theme/CodeBlock/CopyButton/index.tsx +68 -0
  404. package/src/theme/CodeBlock/CopyButton/styles.module.css +47 -0
  405. package/src/theme/CodeBlock/Line/index.tsx +49 -0
  406. package/src/theme/CodeBlock/Line/styles.module.css +51 -0
  407. package/src/theme/CodeBlock/WordWrapButton/index.tsx +49 -0
  408. package/src/theme/CodeBlock/WordWrapButton/styles.module.css +15 -0
  409. package/src/theme/CodeBlock/index.tsx +29 -253
  410. package/src/theme/ColorModeToggle/index.tsx +67 -0
  411. package/src/theme/ColorModeToggle/styles.module.css +35 -0
  412. package/src/theme/Details/index.tsx +26 -0
  413. package/src/theme/Details/styles.module.css +13 -0
  414. package/src/theme/DocBreadcrumbs/index.tsx +141 -0
  415. package/src/theme/DocBreadcrumbs/styles.module.css +19 -0
  416. package/src/theme/DocCard/index.tsx +120 -0
  417. package/src/theme/DocCard/styles.module.css +34 -0
  418. package/src/theme/DocCardList/index.tsx +35 -0
  419. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +77 -0
  420. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +26 -0
  421. package/src/theme/DocItem/Content/index.tsx +48 -0
  422. package/src/theme/DocItem/Footer/index.tsx +89 -0
  423. package/{lib-next/theme/DocItem → src/theme/DocItem/Footer}/styles.module.css +1 -9
  424. package/src/theme/DocItem/Layout/index.tsx +68 -0
  425. package/src/theme/DocItem/Layout/styles.module.css +17 -0
  426. package/src/theme/DocItem/Metadata/index.tsx +22 -0
  427. package/src/theme/DocItem/Paginator/index.tsx +19 -0
  428. package/src/theme/DocItem/TOC/Desktop/index.tsx +24 -0
  429. package/src/theme/DocItem/TOC/Mobile/index.tsx +27 -0
  430. package/src/theme/DocItem/TOC/Mobile/styles.module.css +19 -0
  431. package/src/theme/DocItem/index.tsx +15 -102
  432. package/src/theme/DocPage/Layout/Main/index.tsx +36 -0
  433. package/src/theme/DocPage/Layout/Main/styles.module.css +28 -0
  434. package/src/theme/DocPage/Layout/Sidebar/ExpandButton/index.tsx +40 -0
  435. package/src/theme/DocPage/Layout/Sidebar/ExpandButton/styles.module.css +33 -0
  436. package/src/theme/DocPage/Layout/Sidebar/index.tsx +74 -0
  437. package/src/theme/DocPage/Layout/Sidebar/styles.module.css +32 -0
  438. package/src/theme/DocPage/Layout/index.tsx +38 -0
  439. package/src/theme/DocPage/Layout/styles.module.css +15 -0
  440. package/src/theme/DocPage/index.tsx +38 -167
  441. package/src/theme/DocPaginator/index.tsx +28 -40
  442. package/src/theme/DocSidebar/Desktop/CollapseButton/index.tsx +38 -0
  443. package/src/theme/DocSidebar/Desktop/CollapseButton/styles.module.css +46 -0
  444. package/src/theme/DocSidebar/Desktop/Content/index.tsx +55 -0
  445. package/src/theme/DocSidebar/Desktop/Content/styles.module.css +23 -0
  446. package/src/theme/DocSidebar/Desktop/index.tsx +40 -0
  447. package/src/theme/DocSidebar/Desktop/styles.module.css +50 -0
  448. package/src/theme/DocSidebar/Mobile/index.tsx +54 -0
  449. package/src/theme/DocSidebar/index.tsx +14 -351
  450. package/src/theme/DocSidebarItem/Category/index.tsx +211 -0
  451. package/src/theme/DocSidebarItem/Html/index.tsx +34 -0
  452. package/src/theme/DocSidebarItem/Html/styles.module.css +13 -0
  453. package/src/theme/DocSidebarItem/Link/index.tsx +58 -0
  454. package/src/theme/DocSidebarItem/Link/styles.module.css +10 -0
  455. package/src/theme/DocSidebarItem/index.tsx +27 -0
  456. package/src/theme/DocSidebarItems/index.tsx +27 -0
  457. package/src/theme/DocTagDocListPage/index.tsx +95 -0
  458. package/src/theme/DocTagsListPage/index.tsx +43 -0
  459. package/src/theme/DocVersionBadge/index.tsx +36 -0
  460. package/src/theme/DocVersionBanner/index.tsx +53 -28
  461. package/src/theme/EditThisPage/index.tsx +7 -3
  462. package/src/theme/ErrorPageContent.tsx +41 -0
  463. package/src/theme/Footer/Copyright/index.tsx +20 -0
  464. package/src/theme/Footer/Layout/index.tsx +34 -0
  465. package/src/theme/Footer/LinkItem/index.tsx +36 -0
  466. package/src/theme/Footer/Links/MultiColumn/index.tsx +51 -0
  467. package/src/theme/Footer/Links/Simple/index.tsx +42 -0
  468. package/src/theme/Footer/Links/index.tsx +21 -0
  469. package/src/theme/Footer/Logo/index.tsx +46 -0
  470. package/{lib/theme/Footer → src/theme/Footer/Logo}/styles.module.css +2 -1
  471. package/src/theme/Footer/index.tsx +13 -122
  472. package/src/theme/Heading/index.tsx +31 -58
  473. package/src/theme/Heading/styles.module.css +25 -5
  474. package/src/theme/{IconArrow → Icon/Arrow}/index.tsx +3 -5
  475. package/src/theme/Icon/Close/index.tsx +26 -0
  476. package/src/theme/Icon/DarkMode/index.tsx +20 -0
  477. package/src/theme/{IconEdit → Icon/Edit}/index.tsx +6 -6
  478. package/{lib/theme/IconEdit → src/theme/Icon/Edit}/styles.module.css +0 -0
  479. package/src/theme/{IconExternalLink → Icon/ExternalLink}/index.tsx +4 -6
  480. package/src/theme/{IconExternalLink → Icon/ExternalLink}/styles.module.css +0 -2
  481. package/src/theme/Icon/Home/index.tsx +20 -0
  482. package/src/theme/Icon/Language/index.tsx +29 -0
  483. package/src/theme/Icon/LightMode/index.tsx +20 -0
  484. package/src/theme/{IconMenu → Icon/Menu}/index.tsx +4 -6
  485. package/src/theme/LastUpdated/index.tsx +4 -2
  486. package/src/theme/Layout/Provider/index.tsx +33 -0
  487. package/src/theme/Layout/index.tsx +23 -15
  488. package/{lib/theme/Layout/styles.css → src/theme/Layout/styles.module.css} +9 -10
  489. package/src/theme/Logo/index.tsx +57 -26
  490. package/src/theme/{ThemeContext.ts → MDXComponents/A.tsx} +5 -6
  491. package/src/theme/MDXComponents/Code.tsx +40 -0
  492. package/src/theme/MDXComponents/Details.tsx +28 -0
  493. package/src/theme/MDXComponents/Head.tsx +29 -0
  494. package/src/theme/MDXComponents/Heading.tsx +14 -0
  495. package/src/theme/MDXComponents/Img/index.tsx +27 -0
  496. package/src/theme/MDXComponents/Img/styles.module.css +10 -0
  497. package/src/theme/MDXComponents/Pre.tsx +23 -0
  498. package/src/theme/MDXComponents/Ul/index.tsx +26 -0
  499. package/src/theme/MDXComponents/Ul/styles.module.css +14 -0
  500. package/src/theme/MDXComponents/index.tsx +25 -42
  501. package/src/theme/MDXContent/index.tsx +15 -0
  502. package/src/theme/MDXPage/index.tsx +40 -35
  503. package/src/theme/Navbar/ColorModeToggle/index.tsx +30 -0
  504. package/src/theme/Navbar/Content/index.tsx +86 -0
  505. package/src/theme/Navbar/Content/styles.module.css +15 -0
  506. package/src/theme/Navbar/Layout/index.tsx +57 -0
  507. package/src/theme/Navbar/{styles.module.css → Layout/styles.module.css} +0 -6
  508. package/src/theme/Navbar/Logo/index.tsx +19 -0
  509. package/src/theme/Navbar/MobileSidebar/Header/index.tsx +34 -0
  510. package/src/theme/Navbar/MobileSidebar/Layout/index.tsx +31 -0
  511. package/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx +38 -0
  512. package/src/theme/Navbar/MobileSidebar/SecondaryMenu/index.tsx +39 -0
  513. package/src/theme/Navbar/MobileSidebar/Toggle/index.tsx +25 -0
  514. package/src/theme/Navbar/MobileSidebar/index.tsx +33 -0
  515. package/src/theme/Navbar/Search/index.tsx +19 -0
  516. package/src/theme/Navbar/Search/styles.module.css +20 -0
  517. package/src/theme/Navbar/index.tsx +7 -147
  518. package/src/theme/NavbarItem/ComponentTypes.tsx +32 -0
  519. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +36 -208
  520. package/src/theme/NavbarItem/DocNavbarItem.tsx +13 -41
  521. package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +36 -0
  522. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +57 -52
  523. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +5 -8
  524. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +190 -0
  525. package/src/theme/NavbarItem/HtmlNavbarItem.tsx +32 -0
  526. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/index.tsx +77 -0
  527. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  528. package/src/theme/NavbarItem/NavbarNavLink.tsx +74 -0
  529. package/src/theme/NavbarItem/SearchNavbarItem.tsx +11 -3
  530. package/src/theme/NavbarItem/index.tsx +15 -32
  531. package/src/theme/NotFound.tsx +40 -37
  532. package/src/theme/PaginatorNavLink/index.tsx +26 -0
  533. package/src/theme/SearchBar.tsx +2 -1
  534. package/src/theme/SearchMetadata/index.tsx +43 -0
  535. package/src/theme/{LayoutHead → SiteMetadata}/index.tsx +31 -45
  536. package/src/theme/SkipToContent/index.tsx +5 -33
  537. package/src/theme/SkipToContent/styles.module.css +7 -0
  538. package/src/theme/TOC/index.tsx +14 -44
  539. package/src/theme/TOC/styles.module.css +1 -1
  540. package/src/theme/TOCCollapsible/CollapseButton/index.tsx +36 -0
  541. package/src/theme/TOCCollapsible/CollapseButton/styles.module.css +29 -0
  542. package/src/theme/TOCCollapsible/index.tsx +46 -0
  543. package/src/theme/TOCCollapsible/styles.module.css +31 -0
  544. package/src/theme/TOCInline/index.tsx +15 -35
  545. package/src/theme/TOCItems/Tree.tsx +46 -0
  546. package/src/theme/TOCItems/index.tsx +61 -0
  547. package/src/theme/TabItem/index.tsx +12 -4
  548. package/src/theme/TabItem/styles.module.css +10 -0
  549. package/src/theme/Tabs/index.tsx +121 -62
  550. package/src/theme/Tabs/styles.module.css +4 -13
  551. package/src/theme/Tag/index.tsx +27 -0
  552. package/src/theme/Tag/styles.module.css +70 -0
  553. package/src/theme/TagsListByLetter/index.tsx +43 -0
  554. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  555. package/src/theme/TagsListInline/index.tsx +35 -0
  556. package/src/theme/TagsListInline/styles.module.css +15 -0
  557. package/src/theme/ThemedImage/index.tsx +10 -12
  558. package/src/theme/ThemedImage/styles.module.css +2 -2
  559. package/src/theme/prism-include-languages.ts +20 -15
  560. package/src/theme-classic.d.ts +1368 -0
  561. package/src/translations.ts +85 -60
  562. package/babel.config.js +0 -35
  563. package/codeTranslations/README.md +0 -20
  564. package/codeTranslations/ar.json +0 -57
  565. package/codeTranslations/base.json +0 -112
  566. package/codeTranslations/bn.json +0 -56
  567. package/codeTranslations/da.json +0 -57
  568. package/codeTranslations/de.json +0 -57
  569. package/codeTranslations/es.json +0 -57
  570. package/codeTranslations/fa.json +0 -57
  571. package/codeTranslations/fil.json +0 -57
  572. package/codeTranslations/fr.json +0 -57
  573. package/codeTranslations/he.json +0 -57
  574. package/codeTranslations/hi.json +0 -57
  575. package/codeTranslations/ja.json +0 -57
  576. package/codeTranslations/ko.json +0 -57
  577. package/codeTranslations/pl.json +0 -57
  578. package/codeTranslations/pt-BR.json +0 -57
  579. package/codeTranslations/pt-PT.json +0 -57
  580. package/codeTranslations/ru.json +0 -57
  581. package/codeTranslations/tr.json +0 -57
  582. package/codeTranslations/vi.json +0 -57
  583. package/codeTranslations/zh-Hans.json +0 -57
  584. package/codeTranslations/zh-Hant.json +0 -57
  585. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  586. package/lib/__tests__/translations.test.js +0 -112
  587. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  588. package/lib/theme/BlogSidebar/styles.module.css +0 -44
  589. package/lib/theme/CodeBlock/styles.module.css +0 -68
  590. package/lib/theme/DocPage/styles.module.css +0 -80
  591. package/lib/theme/DocSidebar/styles.module.css +0 -124
  592. package/lib/theme/Heading/styles.css +0 -23
  593. package/lib/theme/IconArrow/index.js +0 -28
  594. package/lib/theme/IconEdit/index.js +0 -34
  595. package/lib/theme/IconExternalLink/index.js +0 -30
  596. package/lib/theme/IconLanguage/index.js +0 -29
  597. package/lib/theme/IconMenu/index.js +0 -30
  598. package/lib/theme/LayoutHead/index.js +0 -144
  599. package/lib/theme/LayoutProviders/index.js +0 -36
  600. package/lib/theme/Navbar/styles.module.css +0 -20
  601. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  602. package/lib/theme/SearchMetadatas/index.js +0 -33
  603. package/lib/theme/Seo/index.js +0 -49
  604. package/lib/theme/ThemeContext.js +0 -21
  605. package/lib/theme/ThemeProvider/index.js +0 -38
  606. package/lib/theme/Toggle/index.js +0 -94
  607. package/lib/theme/Toggle/styles.css +0 -103
  608. package/lib/theme/Toggle/styles.module.css +0 -17
  609. package/lib/theme/UserPreferencesContext.js +0 -18
  610. package/lib/theme/UserPreferencesProvider/index.js +0 -36
  611. package/lib/theme/hooks/styles.css +0 -10
  612. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  613. package/lib/theme/hooks/useDocs.js +0 -18
  614. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  615. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  616. package/lib/theme/hooks/useLocationHash.js +0 -28
  617. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  618. package/lib/theme/hooks/usePrismTheme.js +0 -36
  619. package/lib/theme/hooks/useScrollPosition.js +0 -49
  620. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  621. package/lib/theme/hooks/useTabGroupChoice.js +0 -51
  622. package/lib/theme/hooks/useTheme.js +0 -99
  623. package/lib/theme/hooks/useThemeContext.js +0 -31
  624. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  625. package/lib/theme/hooks/useWindowSize.js +0 -55
  626. package/lib/types.d.ts +0 -598
  627. package/lib/validateThemeConfig.js +0 -317
  628. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  629. package/lib-next/__tests__/translations.test.js +0 -128
  630. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  631. package/lib-next/index.js +0 -221
  632. package/lib-next/theme/AnnouncementBar/index.js +0 -61
  633. package/lib-next/theme/AnnouncementBar/styles.module.css +0 -72
  634. package/lib-next/theme/BlogListPage/index.js +0 -56
  635. package/lib-next/theme/BlogListPaginator/index.js +0 -54
  636. package/lib-next/theme/BlogPostItem/index.js +0 -168
  637. package/lib-next/theme/BlogPostPage/index.js +0 -55
  638. package/lib-next/theme/BlogPostPaginator/index.js +0 -57
  639. package/lib-next/theme/BlogTagsListPage/index.js +0 -75
  640. package/lib-next/theme/BlogTagsPostsPage/index.js +0 -92
  641. package/lib-next/theme/CodeBlock/index.js +0 -268
  642. package/lib-next/theme/DocItem/index.js +0 -117
  643. package/lib-next/theme/DocPage/index.js +0 -173
  644. package/lib-next/theme/DocPage/styles.module.css +0 -80
  645. package/lib-next/theme/DocPaginator/index.js +0 -59
  646. package/lib-next/theme/DocSidebar/index.js +0 -352
  647. package/lib-next/theme/DocSidebar/styles.module.css +0 -124
  648. package/lib-next/theme/DocVersionBanner/index.js +0 -127
  649. package/lib-next/theme/EditThisPage/index.js +0 -21
  650. package/lib-next/theme/Footer/index.js +0 -129
  651. package/lib-next/theme/Heading/index.js +0 -67
  652. package/lib-next/theme/IconLanguage/index.js +0 -25
  653. package/lib-next/theme/LastUpdated/index.js +0 -77
  654. package/lib-next/theme/Layout/index.js +0 -46
  655. package/lib-next/theme/LayoutHead/index.js +0 -137
  656. package/lib-next/theme/LayoutProviders/index.js +0 -26
  657. package/lib-next/theme/Logo/index.js +0 -54
  658. package/lib-next/theme/MDXComponents/index.js +0 -51
  659. package/lib-next/theme/MDXPage/index.js +0 -51
  660. package/lib-next/theme/Navbar/index.js +0 -146
  661. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +0 -227
  662. package/lib-next/theme/NavbarItem/DocNavbarItem.js +0 -57
  663. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -83
  664. package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +0 -28
  665. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -66
  666. package/lib-next/theme/NavbarItem/index.js +0 -41
  667. package/lib-next/theme/NotFound.js +0 -50
  668. package/lib-next/theme/SearchBar.js +0 -11
  669. package/lib-next/theme/SearchMetadatas/index.js +0 -20
  670. package/lib-next/theme/Seo/index.js +0 -36
  671. package/lib-next/theme/SkipToContent/index.js +0 -53
  672. package/lib-next/theme/SkipToContent/styles.module.css +0 -14
  673. package/lib-next/theme/TOC/index.js +0 -52
  674. package/lib-next/theme/TOC/styles.module.css +0 -23
  675. package/lib-next/theme/TOCInline/index.js +0 -43
  676. package/lib-next/theme/Tabs/index.js +0 -144
  677. package/lib-next/theme/Tabs/styles.module.css +0 -23
  678. package/lib-next/theme/ThemeProvider/index.js +0 -25
  679. package/lib-next/theme/ThemedImage/index.js +0 -41
  680. package/lib-next/theme/ThemedImage/styles.module.css +0 -18
  681. package/lib-next/theme/Toggle/index.js +0 -80
  682. package/lib-next/theme/Toggle/styles.css +0 -103
  683. package/lib-next/theme/UserPreferencesContext.js +0 -9
  684. package/lib-next/theme/UserPreferencesProvider/index.js +0 -24
  685. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  686. package/lib-next/theme/hooks/useDocs.js +0 -10
  687. package/lib-next/theme/hooks/useHideableNavbar.js +0 -79
  688. package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
  689. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  690. package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
  691. package/lib-next/theme/hooks/usePrismTheme.js +0 -20
  692. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  693. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  694. package/lib-next/theme/hooks/useTabGroupChoice.js +0 -39
  695. package/lib-next/theme/hooks/useTheme.js +0 -82
  696. package/lib-next/theme/hooks/useThemeContext.js +0 -22
  697. package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
  698. package/lib-next/theme/hooks/useWindowSize.js +0 -45
  699. package/lib-next/theme/prism-include-languages.js +0 -23
  700. package/lib-next/translations.js +0 -145
  701. package/lib-next/types.d.ts +0 -598
  702. package/lib-next/validateThemeConfig.js +0 -317
  703. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  704. package/src/__tests__/translations.test.ts +0 -116
  705. package/src/__tests__/validateThemeConfig.test.js +0 -333
  706. package/src/prism-include-languages.js +0 -11
  707. package/src/theme/DocPage/styles.module.css +0 -80
  708. package/src/theme/DocSidebar/styles.module.css +0 -124
  709. package/src/theme/Heading/styles.css +0 -23
  710. package/src/theme/IconLanguage/index.tsx +0 -31
  711. package/src/theme/Layout/styles.css +0 -27
  712. package/src/theme/LayoutProviders/index.tsx +0 -29
  713. package/src/theme/NavbarItem/LocaleDropdownNavbarItem.tsx +0 -67
  714. package/src/theme/SearchMetadatas/index.tsx +0 -28
  715. package/src/theme/Seo/index.tsx +0 -46
  716. package/src/theme/ThemeProvider/index.tsx +0 -24
  717. package/src/theme/Toggle/index.tsx +0 -100
  718. package/src/theme/Toggle/styles.css +0 -103
  719. package/src/theme/Toggle/styles.module.css +0 -17
  720. package/src/theme/UserPreferencesContext.ts +0 -12
  721. package/src/theme/UserPreferencesProvider/index.tsx +0 -27
  722. package/src/theme/hooks/styles.css +0 -10
  723. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  724. package/src/theme/hooks/useDocs.ts +0 -11
  725. package/src/theme/hooks/useHideableNavbar.ts +0 -85
  726. package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
  727. package/src/theme/hooks/useLocationHash.ts +0 -25
  728. package/src/theme/hooks/usePrismTheme.ts +0 -22
  729. package/src/theme/hooks/useScrollPosition.ts +0 -45
  730. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  731. package/src/theme/hooks/useTabGroupChoice.ts +0 -46
  732. package/src/theme/hooks/useTheme.ts +0 -92
  733. package/src/theme/hooks/useThemeContext.ts +0 -23
  734. package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
  735. package/src/theme/hooks/useWindowSize.ts +0 -51
  736. package/src/types.d.ts +0 -598
  737. package/src/validateThemeConfig.js +0 -317
  738. package/tsconfig.json +0 -12
  739. package/update-code-translations.js +0 -240
  740. package/update-code-translations.test.js +0 -33
@@ -5,54 +5,67 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import React from 'react';
9
- import Layout from '@theme/Layout';
8
+ import React, {type ReactNode} from 'react';
9
+ import clsx from 'clsx';
10
+ import {HtmlClassNameProvider, ThemeClassNames} from '@docusaurus/theme-common';
11
+ import {BlogPostProvider, useBlogPost} from '@docusaurus/theme-common/internal';
12
+ import BlogLayout from '@theme/BlogLayout';
10
13
  import BlogPostItem from '@theme/BlogPostItem';
11
14
  import BlogPostPaginator from '@theme/BlogPostPaginator';
12
- import type {Props} from '@theme/BlogPostPage';
13
- import BlogSidebar from '@theme/BlogSidebar';
15
+ import BlogPostPageMetadata from '@theme/BlogPostPage/Metadata';
14
16
  import TOC from '@theme/TOC';
15
- import {ThemeClassNames} from '@docusaurus/theme-common';
16
-
17
- function BlogPostPage(props: Props): JSX.Element {
18
- const {content: BlogPostContents, sidebar} = props;
19
- const {frontMatter, metadata} = BlogPostContents;
20
- const {title, description, nextItem, prevItem} = metadata;
21
- const {hide_table_of_contents: hideTableOfContents} = frontMatter;
17
+ import type {Props} from '@theme/BlogPostPage';
18
+ import type {BlogSidebar} from '@docusaurus/plugin-content-blog';
22
19
 
20
+ function BlogPostPageContent({
21
+ sidebar,
22
+ children,
23
+ }: {
24
+ sidebar: BlogSidebar;
25
+ children: ReactNode;
26
+ }): JSX.Element {
27
+ const {metadata, toc} = useBlogPost();
28
+ const {nextItem, prevItem, frontMatter} = metadata;
29
+ const {
30
+ hide_table_of_contents: hideTableOfContents,
31
+ toc_min_heading_level: tocMinHeadingLevel,
32
+ toc_max_heading_level: tocMaxHeadingLevel,
33
+ } = frontMatter;
23
34
  return (
24
- <Layout
25
- title={title}
26
- description={description}
27
- wrapperClassName={ThemeClassNames.wrapper.blogPages}
28
- pageClassName={ThemeClassNames.page.blogPostPage}>
29
- {BlogPostContents && (
30
- <div className="container margin-vert--lg">
31
- <div className="row">
32
- <aside className="col col--3">
33
- <BlogSidebar sidebar={sidebar} />
34
- </aside>
35
- <main className="col col--7">
36
- <BlogPostItem
37
- frontMatter={frontMatter}
38
- metadata={metadata}
39
- isBlogPostPage>
40
- <BlogPostContents />
41
- </BlogPostItem>
42
- {(nextItem || prevItem) && (
43
- <BlogPostPaginator nextItem={nextItem} prevItem={prevItem} />
44
- )}
45
- </main>
46
- {!hideTableOfContents && BlogPostContents.toc && (
47
- <div className="col col--2">
48
- <TOC toc={BlogPostContents.toc} />
49
- </div>
50
- )}
51
- </div>
52
- </div>
35
+ <BlogLayout
36
+ sidebar={sidebar}
37
+ toc={
38
+ !hideTableOfContents && toc.length > 0 ? (
39
+ <TOC
40
+ toc={toc}
41
+ minHeadingLevel={tocMinHeadingLevel}
42
+ maxHeadingLevel={tocMaxHeadingLevel}
43
+ />
44
+ ) : undefined
45
+ }>
46
+ <BlogPostItem>{children}</BlogPostItem>
47
+
48
+ {(nextItem || prevItem) && (
49
+ <BlogPostPaginator nextItem={nextItem} prevItem={prevItem} />
53
50
  )}
54
- </Layout>
51
+ </BlogLayout>
55
52
  );
56
53
  }
57
54
 
58
- export default BlogPostPage;
55
+ export default function BlogPostPage(props: Props): JSX.Element {
56
+ const BlogPostContent = props.content;
57
+ return (
58
+ <BlogPostProvider content={props.content} isBlogPostPage>
59
+ <HtmlClassNameProvider
60
+ className={clsx(
61
+ ThemeClassNames.wrapper.blogPages,
62
+ ThemeClassNames.page.blogPostPage,
63
+ )}>
64
+ <BlogPostPageMetadata />
65
+ <BlogPostPageContent sidebar={props.sidebar}>
66
+ <BlogPostContent />
67
+ </BlogPostPageContent>
68
+ </HtmlClassNameProvider>
69
+ </BlogPostProvider>
70
+ );
71
+ }
@@ -7,10 +7,10 @@
7
7
 
8
8
  import React from 'react';
9
9
  import Translate, {translate} from '@docusaurus/Translate';
10
- import Link from '@docusaurus/Link';
10
+ import PaginatorNavLink from '@theme/PaginatorNavLink';
11
11
  import type {Props} from '@theme/BlogPostPaginator';
12
12
 
13
- function BlogPostPaginator(props: Props): JSX.Element {
13
+ export default function BlogPostPaginator(props: Props): JSX.Element {
14
14
  const {nextItem, prevItem} = props;
15
15
 
16
16
  return (
@@ -21,40 +21,31 @@ function BlogPostPaginator(props: Props): JSX.Element {
21
21
  message: 'Blog post page navigation',
22
22
  description: 'The ARIA label for the blog posts pagination',
23
23
  })}>
24
- <div className="pagination-nav__item">
25
- {prevItem && (
26
- <Link className="pagination-nav__link" to={prevItem.permalink}>
27
- <div className="pagination-nav__sublabel">
28
- <Translate
29
- id="theme.blog.post.paginator.newerPost"
30
- description="The blog post button label to navigate to the newer/previous post">
31
- Newer Post
32
- </Translate>
33
- </div>
34
- <div className="pagination-nav__label">
35
- &laquo; {prevItem.title}
36
- </div>
37
- </Link>
38
- )}
39
- </div>
40
- <div className="pagination-nav__item pagination-nav__item--next">
41
- {nextItem && (
42
- <Link className="pagination-nav__link" to={nextItem.permalink}>
43
- <div className="pagination-nav__sublabel">
44
- <Translate
45
- id="theme.blog.post.paginator.olderPost"
46
- description="The blog post button label to navigate to the older/next post">
47
- Older Post
48
- </Translate>
49
- </div>
50
- <div className="pagination-nav__label">
51
- {nextItem.title} &raquo;
52
- </div>
53
- </Link>
54
- )}
55
- </div>
24
+ {prevItem && (
25
+ <PaginatorNavLink
26
+ {...prevItem}
27
+ subLabel={
28
+ <Translate
29
+ id="theme.blog.post.paginator.newerPost"
30
+ description="The blog post button label to navigate to the newer/previous post">
31
+ Newer Post
32
+ </Translate>
33
+ }
34
+ />
35
+ )}
36
+ {nextItem && (
37
+ <PaginatorNavLink
38
+ {...nextItem}
39
+ subLabel={
40
+ <Translate
41
+ id="theme.blog.post.paginator.olderPost"
42
+ description="The blog post button label to navigate to the older/next post">
43
+ Older Post
44
+ </Translate>
45
+ }
46
+ isNext
47
+ />
48
+ )}
56
49
  </nav>
57
50
  );
58
51
  }
59
-
60
- export default BlogPostPaginator;
@@ -0,0 +1,45 @@
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 {translate} from '@docusaurus/Translate';
12
+ import type {Props} from '@theme/BlogSidebar/Desktop';
13
+
14
+ import styles from './styles.module.css';
15
+
16
+ export default function BlogSidebarDesktop({sidebar}: Props): JSX.Element {
17
+ return (
18
+ <aside className="col col--3">
19
+ <nav
20
+ className={clsx(styles.sidebar, 'thin-scrollbar')}
21
+ aria-label={translate({
22
+ id: 'theme.blog.sidebar.navAriaLabel',
23
+ message: 'Blog recent posts navigation',
24
+ description: 'The ARIA label for recent posts in the blog sidebar',
25
+ })}>
26
+ <div className={clsx(styles.sidebarItemTitle, 'margin-bottom--md')}>
27
+ {sidebar.title}
28
+ </div>
29
+ <ul className={clsx(styles.sidebarItemList, 'clean-list')}>
30
+ {sidebar.items.map((item) => (
31
+ <li key={item.permalink} className={styles.sidebarItem}>
32
+ <Link
33
+ isNavLink
34
+ to={item.permalink}
35
+ className={styles.sidebarItemLink}
36
+ activeClassName={styles.sidebarItemLinkActive}>
37
+ {item.title}
38
+ </Link>
39
+ </li>
40
+ ))}
41
+ </ul>
42
+ </nav>
43
+ </aside>
44
+ );
45
+ }
@@ -18,9 +18,7 @@
18
18
  }
19
19
 
20
20
  .sidebarItemList {
21
- list-style: none;
22
21
  font-size: 0.9rem;
23
- padding-left: 0;
24
22
  }
25
23
 
26
24
  .sidebarItem {
@@ -29,15 +27,18 @@
29
27
 
30
28
  .sidebarItemLink {
31
29
  color: var(--ifm-font-color-base);
30
+ display: block;
32
31
  }
32
+
33
33
  .sidebarItemLink:hover {
34
34
  text-decoration: none;
35
35
  }
36
+
36
37
  .sidebarItemLinkActive {
37
- color: var(--ifm-color-primary);
38
+ color: var(--ifm-color-primary) !important;
38
39
  }
39
40
 
40
- @media only screen and (max-width: 996px) {
41
+ @media (max-width: 996px) {
41
42
  .sidebar {
42
43
  display: none;
43
44
  }
@@ -0,0 +1,38 @@
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 {NavbarSecondaryMenuFiller} from '@docusaurus/theme-common';
11
+ import type {Props} from '@theme/BlogSidebar/Mobile';
12
+
13
+ function BlogSidebarMobileSecondaryMenu({sidebar}: Props): JSX.Element {
14
+ return (
15
+ <ul className="menu__list">
16
+ {sidebar.items.map((item) => (
17
+ <li key={item.permalink} className="menu__list-item">
18
+ <Link
19
+ isNavLink
20
+ to={item.permalink}
21
+ className="menu__link"
22
+ activeClassName="menu__link--active">
23
+ {item.title}
24
+ </Link>
25
+ </li>
26
+ ))}
27
+ </ul>
28
+ );
29
+ }
30
+
31
+ export default function BlogSidebarMobile(props: Props): JSX.Element {
32
+ return (
33
+ <NavbarSecondaryMenuFiller
34
+ component={BlogSidebarMobileSecondaryMenu}
35
+ props={props}
36
+ />
37
+ );
38
+ }
@@ -6,42 +6,19 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
- import clsx from 'clsx';
10
- import Link from '@docusaurus/Link';
9
+ import {useWindowSize} from '@docusaurus/theme-common';
10
+ import BlogSidebarDesktop from '@theme/BlogSidebar/Desktop';
11
+ import BlogSidebarMobile from '@theme/BlogSidebar/Mobile';
11
12
  import type {Props} from '@theme/BlogSidebar';
12
- import styles from './styles.module.css';
13
- import {translate} from '@docusaurus/Translate';
14
13
 
15
14
  export default function BlogSidebar({sidebar}: Props): JSX.Element | null {
16
- if (sidebar.items.length === 0) {
15
+ const windowSize = useWindowSize();
16
+ if (!sidebar?.items.length) {
17
17
  return null;
18
18
  }
19
- return (
20
- <nav
21
- className={clsx(styles.sidebar, 'thin-scrollbar')}
22
- aria-label={translate({
23
- id: 'theme.blog.sidebar.navAriaLabel',
24
- message: 'Blog recent posts navigation',
25
- description: 'The ARIA label for recent posts in the blog sidebar',
26
- })}>
27
- <div className={clsx(styles.sidebarItemTitle, 'margin-bottom--md')}>
28
- {sidebar.title}
29
- </div>
30
- <ul className={styles.sidebarItemList}>
31
- {sidebar.items.map((item) => {
32
- return (
33
- <li key={item.permalink} className={styles.sidebarItem}>
34
- <Link
35
- isNavLink
36
- to={item.permalink}
37
- className={styles.sidebarItemLink}
38
- activeClassName={styles.sidebarItemLinkActive}>
39
- {item.title}
40
- </Link>
41
- </li>
42
- );
43
- })}
44
- </ul>
45
- </nav>
46
- );
19
+ // Mobile sidebar doesn't need to be server-rendered
20
+ if (windowSize === 'mobile') {
21
+ return <BlogSidebarMobile sidebar={sidebar} />;
22
+ }
23
+ return <BlogSidebarDesktop sidebar={sidebar} />;
47
24
  }
@@ -6,75 +6,32 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
-
10
- import Layout from '@theme/Layout';
11
- import Link from '@docusaurus/Link';
9
+ import clsx from 'clsx';
10
+ import {
11
+ PageMetadata,
12
+ HtmlClassNameProvider,
13
+ ThemeClassNames,
14
+ translateTagsPageTitle,
15
+ } from '@docusaurus/theme-common';
16
+ import BlogLayout from '@theme/BlogLayout';
17
+ import TagsListByLetter from '@theme/TagsListByLetter';
12
18
  import type {Props} from '@theme/BlogTagsListPage';
13
- import BlogSidebar from '@theme/BlogSidebar';
14
- import {translate} from '@docusaurus/Translate';
15
- import {ThemeClassNames} from '@docusaurus/theme-common';
16
-
17
- function getCategoryOfTag(tag: string) {
18
- // tag's category should be customizable
19
- return tag[0].toUpperCase();
20
- }
21
-
22
- function BlogTagsListPage(props: Props): JSX.Element {
23
- const {tags, sidebar} = props;
24
- const title = translate({
25
- id: 'theme.tags.tagsPageTitle',
26
- message: 'Tags',
27
- description: 'The title of the tag list page',
28
- });
29
-
30
- const tagCategories: {[category: string]: string[]} = {};
31
- Object.keys(tags).forEach((tag) => {
32
- const category = getCategoryOfTag(tag);
33
- tagCategories[category] = tagCategories[category] || [];
34
- tagCategories[category].push(tag);
35
- });
36
- const tagsList = Object.entries(tagCategories).sort(([a], [b]) =>
37
- a.localeCompare(b),
38
- );
39
- const tagsSection = tagsList
40
- .map(([category, tagsForCategory]) => (
41
- <article key={category}>
42
- <h2>{category}</h2>
43
- {tagsForCategory.map((tag) => (
44
- <Link
45
- className="padding-right--md"
46
- href={tags[tag].permalink}
47
- key={tag}>
48
- {tags[tag].name} ({tags[tag].count})
49
- </Link>
50
- ))}
51
- <hr />
52
- </article>
53
- ))
54
- .filter((item) => item != null);
19
+ import SearchMetadata from '@theme/SearchMetadata';
55
20
 
21
+ export default function BlogTagsListPage({tags, sidebar}: Props): JSX.Element {
22
+ const title = translateTagsPageTitle();
56
23
  return (
57
- <Layout
58
- title={title}
59
- wrapperClassName={ThemeClassNames.wrapper.blogPages}
60
- pageClassName={ThemeClassNames.page.blogTagsListPage}
61
- searchMetadatas={{
62
- // assign unique search tag to exclude this page from search results!
63
- tag: 'blog_tags_list',
64
- }}>
65
- <div className="container margin-vert--lg">
66
- <div className="row">
67
- <aside className="col col--3">
68
- <BlogSidebar sidebar={sidebar} />
69
- </aside>
70
- <main className="col col--7">
71
- <h1>{title}</h1>
72
- <section className="margin-vert--lg">{tagsSection}</section>
73
- </main>
74
- </div>
75
- </div>
76
- </Layout>
24
+ <HtmlClassNameProvider
25
+ className={clsx(
26
+ ThemeClassNames.wrapper.blogPages,
27
+ ThemeClassNames.page.blogTagsListPage,
28
+ )}>
29
+ <PageMetadata title={title} />
30
+ <SearchMetadata tag="blog_tags_list" />
31
+ <BlogLayout sidebar={sidebar}>
32
+ <h1>{title}</h1>
33
+ <TagsListByLetter tags={tags} />
34
+ </BlogLayout>
35
+ </HtmlClassNameProvider>
77
36
  );
78
37
  }
79
-
80
- export default BlogTagsListPage;
@@ -6,14 +6,20 @@
6
6
  */
7
7
 
8
8
  import React from 'react';
9
-
10
- import Layout from '@theme/Layout';
11
- import BlogPostItem from '@theme/BlogPostItem';
9
+ import clsx from 'clsx';
10
+ import Translate, {translate} from '@docusaurus/Translate';
11
+ import {
12
+ PageMetadata,
13
+ HtmlClassNameProvider,
14
+ ThemeClassNames,
15
+ usePluralForm,
16
+ } from '@docusaurus/theme-common';
12
17
  import Link from '@docusaurus/Link';
18
+ import BlogLayout from '@theme/BlogLayout';
19
+ import BlogListPaginator from '@theme/BlogListPaginator';
20
+ import SearchMetadata from '@theme/SearchMetadata';
13
21
  import type {Props} from '@theme/BlogTagsPostsPage';
14
- import BlogSidebar from '@theme/BlogSidebar';
15
- import Translate, {translate} from '@docusaurus/Translate';
16
- import {ThemeClassNames, usePluralForm} from '@docusaurus/theme-common';
22
+ import BlogPostItems from '@theme/BlogPostItems';
17
23
 
18
24
  // Very simple pluralization: probably good enough for now
19
25
  function useBlogPostsPlural() {
@@ -33,60 +39,62 @@ function useBlogPostsPlural() {
33
39
  );
34
40
  }
35
41
 
36
- function BlogTagsPostPage(props: Props): JSX.Element {
37
- const {metadata, items, sidebar} = props;
38
- const {allTagsPath, name: tagName, count} = metadata;
42
+ function useBlogTagsPostsPageTitle(tag: Props['tag']): string {
39
43
  const blogPostsPlural = useBlogPostsPlural();
40
- const title = translate(
44
+ return translate(
41
45
  {
42
46
  id: 'theme.blog.tagTitle',
43
47
  description: 'The title of the page for a blog tag',
44
48
  message: '{nPosts} tagged with "{tagName}"',
45
49
  },
46
- {nPosts: blogPostsPlural(count), tagName},
50
+ {nPosts: blogPostsPlural(tag.count), tagName: tag.label},
47
51
  );
52
+ }
48
53
 
54
+ function BlogTagsPostsPageMetadata({tag}: Props): JSX.Element {
55
+ const title = useBlogTagsPostsPageTitle(tag);
49
56
  return (
50
- <Layout
51
- title={title}
52
- wrapperClassName={ThemeClassNames.wrapper.blogPages}
53
- pageClassName={ThemeClassNames.page.blogTagsPostPage}
54
- searchMetadatas={{
55
- // assign unique search tag to exclude this page from search results!
56
- tag: 'blog_tags_posts',
57
- }}>
58
- <div className="container margin-vert--lg">
59
- <div className="row">
60
- <aside className="col col--3">
61
- <BlogSidebar sidebar={sidebar} />
62
- </aside>
63
- <main className="col col--7">
64
- <header className="margin-bottom--xl">
65
- <h1>{title}</h1>
57
+ <>
58
+ <PageMetadata title={title} />
59
+ <SearchMetadata tag="blog_tags_posts" />
60
+ </>
61
+ );
62
+ }
66
63
 
67
- <Link href={allTagsPath}>
68
- <Translate
69
- id="theme.tags.tagsPageLink"
70
- description="The label of the link targeting the tag list page">
71
- View All Tags
72
- </Translate>
73
- </Link>
74
- </header>
64
+ function BlogTagsPostsPageContent({
65
+ tag,
66
+ items,
67
+ sidebar,
68
+ listMetadata,
69
+ }: Props): JSX.Element {
70
+ const title = useBlogTagsPostsPageTitle(tag);
71
+ return (
72
+ <BlogLayout sidebar={sidebar}>
73
+ <header className="margin-bottom--xl">
74
+ <h1>{title}</h1>
75
75
 
76
- {items.map(({content: BlogPostContent}) => (
77
- <BlogPostItem
78
- key={BlogPostContent.metadata.permalink}
79
- frontMatter={BlogPostContent.frontMatter}
80
- metadata={BlogPostContent.metadata}
81
- truncated>
82
- <BlogPostContent />
83
- </BlogPostItem>
84
- ))}
85
- </main>
86
- </div>
87
- </div>
88
- </Layout>
76
+ <Link href={tag.allTagsPath}>
77
+ <Translate
78
+ id="theme.tags.tagsPageLink"
79
+ description="The label of the link targeting the tag list page">
80
+ View All Tags
81
+ </Translate>
82
+ </Link>
83
+ </header>
84
+ <BlogPostItems items={items} />
85
+ <BlogListPaginator metadata={listMetadata} />
86
+ </BlogLayout>
87
+ );
88
+ }
89
+ export default function BlogTagsPostsPage(props: Props): JSX.Element {
90
+ return (
91
+ <HtmlClassNameProvider
92
+ className={clsx(
93
+ ThemeClassNames.wrapper.blogPages,
94
+ ThemeClassNames.page.blogTagPostListPage,
95
+ )}>
96
+ <BlogTagsPostsPageMetadata {...props} />
97
+ <BlogTagsPostsPageContent {...props} />
98
+ </HtmlClassNameProvider>
89
99
  );
90
100
  }
91
-
92
- export default BlogTagsPostPage;
@@ -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, {type ComponentProps} from 'react';
9
+ import clsx from 'clsx';
10
+ import {ThemeClassNames, usePrismTheme} from '@docusaurus/theme-common';
11
+ import {getPrismCssVariables} from '@docusaurus/theme-common/internal';
12
+ import styles from './styles.module.css';
13
+
14
+ export default function CodeBlockContainer<T extends 'div' | 'pre'>({
15
+ as: As,
16
+ ...props
17
+ }: {as: T} & ComponentProps<T>): JSX.Element {
18
+ const prismTheme = usePrismTheme();
19
+ const prismCssVariables = getPrismCssVariables(prismTheme);
20
+ return (
21
+ <As
22
+ // Polymorphic components are hard to type, without `oneOf` generics
23
+ {...(props as any)}
24
+ style={prismCssVariables}
25
+ className={clsx(
26
+ props.className,
27
+ styles.codeBlockContainer,
28
+ ThemeClassNames.common.codeBlock,
29
+ )}
30
+ />
31
+ );
32
+ }
@@ -0,0 +1,14 @@
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
+ .codeBlockContainer {
9
+ background: var(--prism-background-color);
10
+ color: var(--prism-color);
11
+ margin-bottom: var(--ifm-leading);
12
+ box-shadow: var(--ifm-global-shadow-lw);
13
+ border-radius: var(--ifm-code-border-radius);
14
+ }
@@ -0,0 +1,30 @@
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 Container from '@theme/CodeBlock/Container';
11
+ import type {Props} from '@theme/CodeBlock/Content/Element';
12
+
13
+ import styles from './styles.module.css';
14
+
15
+ // <pre> tags in markdown map to CodeBlocks. They may contain JSX children. When
16
+ // the children is not a simple string, we just return a styled block without
17
+ // actually highlighting.
18
+ export default function CodeBlockJSX({
19
+ children,
20
+ className,
21
+ }: Props): JSX.Element {
22
+ return (
23
+ <Container
24
+ as="pre"
25
+ tabIndex={0}
26
+ className={clsx(styles.codeBlockStandalone, 'thin-scrollbar', className)}>
27
+ <code className={styles.codeBlockLines}>{children}</code>
28
+ </Container>
29
+ );
30
+ }