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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. package/README.md +1 -1
  2. package/lib/admonitions.css +35 -0
  3. package/lib/deps.d.ts +13 -0
  4. package/lib/index.js +16 -15
  5. package/lib/prism-include-languages.js +9 -5
  6. package/{lib-next/types.d.ts → lib/theme-classic.d.ts} +374 -150
  7. package/lib/translations.js +16 -7
  8. package/lib/types.d.ts +0 -587
  9. package/lib/validateThemeConfig.js +232 -246
  10. package/lib-next/theme/Admonition/index.js +101 -0
  11. package/lib-next/theme/AnnouncementBar/index.js +7 -12
  12. package/lib-next/theme/AnnouncementBar/styles.module.css +23 -32
  13. package/lib-next/theme/BackToTopButton/index.js +131 -0
  14. package/lib-next/theme/BackToTopButton/styles.module.css +42 -0
  15. package/lib-next/theme/BlogArchivePage/index.js +80 -0
  16. package/lib-next/theme/BlogLayout/index.js +40 -0
  17. package/lib-next/theme/BlogListPage/index.js +17 -25
  18. package/lib-next/theme/BlogPostAuthor/index.js +46 -0
  19. package/{lib/theme/MDXPage → lib-next/theme/BlogPostAuthor}/styles.module.css +4 -2
  20. package/lib-next/theme/BlogPostAuthors/index.js +34 -0
  21. package/{lib/theme/IconExternalLink → lib-next/theme/BlogPostAuthors}/styles.module.css +3 -4
  22. package/lib-next/theme/BlogPostItem/index.js +79 -86
  23. package/lib-next/theme/BlogPostPage/index.js +70 -35
  24. package/lib-next/theme/BlogSidebar/index.js +11 -13
  25. package/lib-next/theme/BlogSidebar/styles.module.css +2 -2
  26. package/lib-next/theme/BlogTagsListPage/index.js +14 -55
  27. package/lib-next/theme/BlogTagsPostsPage/index.js +29 -39
  28. package/lib-next/theme/CodeBlock/index.js +23 -149
  29. package/lib-next/theme/CodeBlock/styles.module.css +12 -9
  30. package/lib-next/theme/Details/index.js +20 -0
  31. package/lib-next/theme/Details/styles.module.css +13 -0
  32. package/lib-next/theme/DocCard/index.js +80 -0
  33. package/lib-next/theme/DocCard/styles.module.css +43 -0
  34. package/lib-next/theme/DocCardList/index.js +19 -0
  35. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +49 -0
  36. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  37. package/lib-next/theme/DocItem/index.js +40 -51
  38. package/lib-next/theme/DocItem/styles.module.css +5 -9
  39. package/lib-next/theme/DocItemFooter/index.js +79 -0
  40. package/{lib/theme/DocItem → lib-next/theme/DocItemFooter}/styles.module.css +1 -9
  41. package/lib-next/theme/DocPage/index.js +46 -49
  42. package/lib-next/theme/DocPage/styles.module.css +5 -6
  43. package/lib-next/theme/DocPaginator/index.js +5 -33
  44. package/lib-next/theme/DocPaginatorNavLink/index.js +36 -0
  45. package/lib-next/theme/DocSidebar/index.js +65 -285
  46. package/lib-next/theme/DocSidebar/styles.module.css +0 -18
  47. package/lib-next/theme/DocSidebarItem/index.js +217 -0
  48. package/{lib/theme/ThemedImage → lib-next/theme/DocSidebarItem}/styles.module.css +10 -9
  49. package/lib-next/theme/DocTagDocListPage/index.js +89 -0
  50. package/lib-next/theme/DocTagsListPage/index.js +38 -0
  51. package/lib-next/theme/DocVersionBadge/index.js +27 -0
  52. package/lib-next/theme/DocVersionBanner/index.js +28 -14
  53. package/lib-next/theme/EditThisPage/index.js +6 -1
  54. package/lib-next/theme/ErrorPageContent.js +35 -0
  55. package/lib-next/theme/Footer/index.js +100 -40
  56. package/lib-next/theme/Heading/index.js +24 -29
  57. package/lib-next/theme/Heading/styles.css +5 -6
  58. package/lib-next/theme/Heading/styles.module.css +9 -5
  59. package/lib-next/theme/IconArrow/index.js +2 -2
  60. package/lib-next/theme/IconClose/index.js +23 -0
  61. package/lib-next/theme/IconEdit/index.js +2 -2
  62. package/lib-next/theme/IconExternalLink/index.js +2 -2
  63. package/lib-next/theme/IconLanguage/index.js +2 -2
  64. package/lib-next/theme/IconMenu/index.js +2 -2
  65. package/lib-next/theme/LastUpdated/index.js +3 -2
  66. package/lib-next/theme/Layout/index.js +3 -1
  67. package/lib-next/theme/LayoutHead/index.js +18 -23
  68. package/lib-next/theme/LayoutProviders/index.js +9 -3
  69. package/lib-next/theme/Logo/index.js +25 -21
  70. package/lib-next/theme/MDXComponents/index.js +34 -7
  71. package/{lib/theme/hooks → lib-next/theme/MDXComponents}/styles.css +3 -2
  72. package/lib-next/theme/MDXPage/index.js +10 -2
  73. package/lib-next/theme/Navbar/index.js +193 -56
  74. package/lib-next/theme/Navbar/styles.module.css +10 -3
  75. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +45 -147
  76. package/lib-next/theme/NavbarItem/DocNavbarItem.js +7 -7
  77. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
  78. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +158 -0
  79. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -12
  80. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  81. package/lib-next/theme/NavbarItem/index.js +25 -12
  82. package/lib-next/theme/{SearchMetadatas → SearchMetadata}/index.js +1 -1
  83. package/lib-next/theme/Seo/index.js +11 -7
  84. package/lib-next/theme/SkipToContent/index.js +5 -2
  85. package/lib-next/theme/TOC/index.js +12 -36
  86. package/lib-next/theme/TOC/styles.module.css +1 -1
  87. package/lib-next/theme/TOCCollapsible/index.js +54 -0
  88. package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
  89. package/lib-next/theme/TOCInline/index.js +10 -28
  90. package/lib-next/theme/TOCItems/index.js +85 -0
  91. package/lib-next/theme/Tabs/__tests__/index.test.js +142 -0
  92. package/lib-next/theme/Tabs/index.js +103 -48
  93. package/lib-next/theme/Tabs/styles.module.css +0 -13
  94. package/lib-next/theme/Tag/index.js +27 -0
  95. package/lib-next/theme/Tag/styles.module.css +70 -0
  96. package/lib-next/theme/TagsListByLetter/index.js +42 -0
  97. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  98. package/lib-next/theme/TagsListInline/index.js +31 -0
  99. package/lib-next/theme/TagsListInline/styles.module.css +15 -0
  100. package/lib-next/theme/ThemeProvider/index.js +10 -7
  101. package/lib-next/theme/ThemedImage/index.js +5 -5
  102. package/lib-next/theme/Toggle/index.js +34 -37
  103. package/lib-next/theme/Toggle/styles.module.css +91 -3
  104. package/lib-next/theme/UserPreferencesProvider/index.js +9 -6
  105. package/lib-next/theme/hooks/useHideableNavbar.js +31 -44
  106. package/lib-next/theme/hooks/useTheme.js +4 -5
  107. package/lib-next/theme/hooks/useWindowSize.js +34 -20
  108. package/lib-next/theme/prism-include-languages.js +2 -1
  109. package/package.json +27 -25
  110. package/src/admonitions.css +35 -0
  111. package/src/deps.d.ts +13 -0
  112. package/src/index.ts +23 -20
  113. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  114. package/src/theme/Admonition/index.tsx +106 -0
  115. package/src/theme/AnnouncementBar/index.tsx +8 -12
  116. package/src/theme/AnnouncementBar/styles.module.css +23 -32
  117. package/src/theme/BackToTopButton/index.tsx +142 -0
  118. package/src/theme/BackToTopButton/styles.module.css +42 -0
  119. package/src/theme/BlogArchivePage/index.tsx +91 -0
  120. package/src/theme/BlogLayout/index.tsx +44 -0
  121. package/src/theme/BlogListPage/index.tsx +18 -25
  122. package/src/theme/BlogPostAuthor/index.tsx +49 -0
  123. package/{lib/theme/IconEdit → src/theme/BlogPostAuthor}/styles.module.css +4 -3
  124. package/src/theme/BlogPostAuthors/index.tsx +39 -0
  125. package/src/theme/BlogPostAuthors/styles.module.css +11 -0
  126. package/src/theme/BlogPostItem/index.tsx +70 -80
  127. package/src/theme/BlogPostPage/index.tsx +72 -35
  128. package/src/theme/BlogSidebar/index.tsx +11 -13
  129. package/src/theme/BlogSidebar/styles.module.css +2 -2
  130. package/src/theme/BlogTagsListPage/index.tsx +14 -57
  131. package/src/theme/BlogTagsPostsPage/index.tsx +29 -39
  132. package/src/theme/CodeBlock/index.tsx +27 -151
  133. package/src/theme/CodeBlock/styles.module.css +12 -9
  134. package/src/theme/Details/index.tsx +24 -0
  135. package/src/theme/Details/styles.module.css +13 -0
  136. package/src/theme/DocCard/index.tsx +100 -0
  137. package/src/theme/DocCard/styles.module.css +43 -0
  138. package/src/theme/DocCardList/index.tsx +27 -0
  139. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +53 -0
  140. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  141. package/src/theme/DocItem/index.tsx +43 -51
  142. package/src/theme/DocItem/styles.module.css +5 -9
  143. package/src/theme/DocItemFooter/index.tsx +91 -0
  144. package/{lib/theme/BlogPostItem → src/theme/DocItemFooter}/styles.module.css +8 -8
  145. package/src/theme/DocPage/index.tsx +44 -42
  146. package/src/theme/DocPage/styles.module.css +5 -6
  147. package/src/theme/DocPaginator/index.tsx +5 -33
  148. package/src/theme/DocPaginatorNavLink/index.tsx +38 -0
  149. package/src/theme/DocSidebar/index.tsx +76 -297
  150. package/src/theme/DocSidebar/styles.module.css +0 -18
  151. package/src/theme/DocSidebarItem/index.tsx +242 -0
  152. package/{lib/theme/Footer → src/theme/DocSidebarItem}/styles.module.css +10 -6
  153. package/src/theme/DocTagDocListPage/index.tsx +89 -0
  154. package/src/theme/DocTagsListPage/index.tsx +41 -0
  155. package/src/theme/DocVersionBadge/index.tsx +30 -0
  156. package/src/theme/DocVersionBanner/index.tsx +48 -21
  157. package/src/theme/EditThisPage/index.tsx +6 -1
  158. package/src/theme/ErrorPageContent.tsx +41 -0
  159. package/src/theme/Footer/index.tsx +113 -43
  160. package/src/theme/Heading/index.tsx +24 -31
  161. package/src/theme/Heading/styles.css +5 -6
  162. package/src/theme/Heading/styles.module.css +9 -5
  163. package/src/theme/IconArrow/index.tsx +2 -2
  164. package/src/theme/IconClose/index.tsx +26 -0
  165. package/src/theme/IconEdit/index.tsx +2 -2
  166. package/src/theme/IconExternalLink/index.tsx +2 -5
  167. package/src/theme/IconLanguage/index.tsx +2 -6
  168. package/src/theme/IconMenu/index.tsx +3 -3
  169. package/src/theme/LastUpdated/index.tsx +3 -2
  170. package/src/theme/Layout/index.tsx +3 -1
  171. package/src/theme/LayoutHead/index.tsx +18 -17
  172. package/src/theme/LayoutProviders/index.tsx +9 -3
  173. package/src/theme/Logo/index.tsx +21 -17
  174. package/src/theme/MDXComponents/index.tsx +39 -5
  175. package/src/theme/MDXComponents/styles.css +11 -0
  176. package/src/theme/MDXPage/index.tsx +10 -2
  177. package/src/theme/Navbar/index.tsx +203 -61
  178. package/src/theme/Navbar/styles.module.css +10 -3
  179. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -154
  180. package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -16
  181. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
  182. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  183. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +180 -0
  184. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -9
  185. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  186. package/src/theme/NavbarItem/index.tsx +41 -16
  187. package/src/theme/{SearchMetadatas → SearchMetadata}/index.tsx +2 -2
  188. package/src/theme/Seo/index.tsx +7 -4
  189. package/src/theme/SkipToContent/index.tsx +5 -2
  190. package/src/theme/TOC/index.tsx +12 -41
  191. package/src/theme/TOC/styles.module.css +1 -1
  192. package/src/theme/TOCCollapsible/index.tsx +58 -0
  193. package/src/theme/TOCCollapsible/styles.module.css +50 -0
  194. package/src/theme/TOCInline/index.tsx +13 -32
  195. package/src/theme/TOCItems/index.tsx +96 -0
  196. package/src/theme/Tabs/index.tsx +110 -54
  197. package/src/theme/Tabs/styles.module.css +0 -13
  198. package/src/theme/Tag/index.tsx +31 -0
  199. package/src/theme/Tag/styles.module.css +70 -0
  200. package/src/theme/TagsListByLetter/index.tsx +45 -0
  201. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  202. package/src/theme/TagsListInline/index.tsx +35 -0
  203. package/src/theme/TagsListInline/styles.module.css +15 -0
  204. package/src/theme/ThemeProvider/index.tsx +6 -2
  205. package/src/theme/ThemedImage/index.tsx +5 -5
  206. package/src/theme/Toggle/index.tsx +36 -43
  207. package/src/theme/Toggle/styles.module.css +91 -3
  208. package/src/theme/UserPreferencesProvider/index.tsx +9 -6
  209. package/src/theme/hooks/useHideableNavbar.ts +32 -45
  210. package/src/theme/hooks/useTabGroupChoice.ts +2 -2
  211. package/src/theme/hooks/useTheme.ts +4 -5
  212. package/src/theme/hooks/useWindowSize.ts +38 -20
  213. package/src/theme/prism-include-languages.ts +3 -2
  214. package/src/theme-classic.d.ts +822 -0
  215. package/src/translations.ts +41 -23
  216. package/src/types.d.ts +0 -587
  217. package/src/{validateThemeConfig.js → validateThemeConfig.ts} +160 -98
  218. package/babel.config.js +0 -35
  219. package/codeTranslations/README.md +0 -20
  220. package/codeTranslations/ar.json +0 -57
  221. package/codeTranslations/base.json +0 -112
  222. package/codeTranslations/bn.json +0 -56
  223. package/codeTranslations/da.json +0 -57
  224. package/codeTranslations/de.json +0 -57
  225. package/codeTranslations/es.json +0 -57
  226. package/codeTranslations/fa.json +0 -57
  227. package/codeTranslations/fil.json +0 -57
  228. package/codeTranslations/fr.json +0 -57
  229. package/codeTranslations/he.json +0 -57
  230. package/codeTranslations/hi.json +0 -57
  231. package/codeTranslations/ja.json +0 -57
  232. package/codeTranslations/ko.json +0 -57
  233. package/codeTranslations/pl.json +0 -57
  234. package/codeTranslations/pt-BR.json +0 -57
  235. package/codeTranslations/pt-PT.json +0 -57
  236. package/codeTranslations/ru.json +0 -57
  237. package/codeTranslations/tr.json +0 -57
  238. package/codeTranslations/vi.json +0 -57
  239. package/codeTranslations/zh-Hans.json +0 -57
  240. package/codeTranslations/zh-Hant.json +0 -57
  241. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  242. package/lib/__tests__/translations.test.js +0 -112
  243. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  244. package/lib/theme/AnnouncementBar/index.js +0 -72
  245. package/lib/theme/AnnouncementBar/styles.module.css +0 -72
  246. package/lib/theme/BlogListPage/index.js +0 -71
  247. package/lib/theme/BlogListPaginator/index.js +0 -63
  248. package/lib/theme/BlogPostItem/index.js +0 -161
  249. package/lib/theme/BlogPostPage/index.js +0 -69
  250. package/lib/theme/BlogPostPaginator/index.js +0 -64
  251. package/lib/theme/BlogSidebar/index.js +0 -51
  252. package/lib/theme/BlogSidebar/styles.module.css +0 -44
  253. package/lib/theme/BlogTagsListPage/index.js +0 -76
  254. package/lib/theme/BlogTagsPostsPage/index.js +0 -100
  255. package/lib/theme/CodeBlock/index.js +0 -253
  256. package/lib/theme/CodeBlock/styles.module.css +0 -68
  257. package/lib/theme/DocItem/index.js +0 -129
  258. package/lib/theme/DocPage/index.js +0 -173
  259. package/lib/theme/DocPage/styles.module.css +0 -86
  260. package/lib/theme/DocPaginator/index.js +0 -63
  261. package/lib/theme/DocSidebar/index.js +0 -306
  262. package/lib/theme/DocSidebar/styles.module.css +0 -124
  263. package/lib/theme/DocVersionBanner/index.js +0 -128
  264. package/lib/theme/EditThisPage/index.js +0 -31
  265. package/lib/theme/Footer/index.js +0 -108
  266. package/lib/theme/Heading/index.js +0 -76
  267. package/lib/theme/Heading/styles.css +0 -23
  268. package/lib/theme/Heading/styles.module.css +0 -15
  269. package/lib/theme/IconArrow/index.js +0 -28
  270. package/lib/theme/IconEdit/index.js +0 -34
  271. package/lib/theme/IconExternalLink/index.js +0 -30
  272. package/lib/theme/IconLanguage/index.js +0 -29
  273. package/lib/theme/IconMenu/index.js +0 -30
  274. package/lib/theme/LastUpdated/index.js +0 -61
  275. package/lib/theme/Layout/index.js +0 -64
  276. package/lib/theme/Layout/styles.css +0 -27
  277. package/lib/theme/LayoutHead/index.js +0 -144
  278. package/lib/theme/LayoutProviders/index.js +0 -36
  279. package/lib/theme/Logo/index.js +0 -60
  280. package/lib/theme/MDXComponents/index.js +0 -65
  281. package/lib/theme/MDXPage/index.js +0 -66
  282. package/lib/theme/Navbar/index.js +0 -147
  283. package/lib/theme/Navbar/styles.module.css +0 -20
  284. package/lib/theme/NavbarItem/DefaultNavbarItem.js +0 -209
  285. package/lib/theme/NavbarItem/DocNavbarItem.js +0 -63
  286. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -76
  287. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +0 -43
  288. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  289. package/lib/theme/NavbarItem/SearchNavbarItem.js +0 -28
  290. package/lib/theme/NavbarItem/index.js +0 -54
  291. package/lib/theme/NotFound.js +0 -57
  292. package/lib/theme/SearchBar.js +0 -15
  293. package/lib/theme/SearchMetadatas/index.js +0 -33
  294. package/lib/theme/Seo/index.js +0 -49
  295. package/lib/theme/SkipToContent/index.js +0 -63
  296. package/lib/theme/SkipToContent/styles.module.css +0 -14
  297. package/lib/theme/TOC/index.js +0 -59
  298. package/lib/theme/TOC/styles.module.css +0 -23
  299. package/lib/theme/TOCInline/index.js +0 -53
  300. package/lib/theme/TOCInline/styles.module.css +0 -12
  301. package/lib/theme/TabItem/index.js +0 -32
  302. package/lib/theme/Tabs/index.js +0 -150
  303. package/lib/theme/Tabs/styles.module.css +0 -23
  304. package/lib/theme/ThemeContext.js +0 -21
  305. package/lib/theme/ThemeProvider/index.js +0 -38
  306. package/lib/theme/ThemedImage/index.js +0 -49
  307. package/lib/theme/Toggle/index.js +0 -94
  308. package/lib/theme/Toggle/styles.css +0 -103
  309. package/lib/theme/Toggle/styles.module.css +0 -17
  310. package/lib/theme/UserPreferencesContext.js +0 -18
  311. package/lib/theme/UserPreferencesProvider/index.js +0 -36
  312. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  313. package/lib/theme/hooks/useDocs.js +0 -18
  314. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  315. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  316. package/lib/theme/hooks/useLocationHash.js +0 -28
  317. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  318. package/lib/theme/hooks/usePrismTheme.js +0 -36
  319. package/lib/theme/hooks/useScrollPosition.js +0 -49
  320. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  321. package/lib/theme/hooks/useTabGroupChoice.js +0 -51
  322. package/lib/theme/hooks/useTheme.js +0 -99
  323. package/lib/theme/hooks/useThemeContext.js +0 -31
  324. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  325. package/lib/theme/hooks/useWindowSize.js +0 -55
  326. package/lib/theme/prism-include-languages.js +0 -39
  327. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  328. package/lib-next/__tests__/translations.test.js +0 -128
  329. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  330. package/lib-next/index.js +0 -221
  331. package/lib-next/theme/Toggle/styles.css +0 -103
  332. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  333. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  334. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  335. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  336. package/lib-next/translations.js +0 -145
  337. package/lib-next/validateThemeConfig.js +0 -317
  338. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  339. package/src/__tests__/translations.test.ts +0 -116
  340. package/src/__tests__/validateThemeConfig.test.js +0 -333
  341. package/src/prism-include-languages.js +0 -11
  342. package/src/theme/Toggle/styles.css +0 -103
  343. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  344. package/src/theme/hooks/useLocationHash.ts +0 -25
  345. package/src/theme/hooks/useScrollPosition.ts +0 -45
  346. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  347. package/tsconfig.json +0 -12
  348. package/update-code-translations.js +0 -240
  349. package/update-code-translations.test.js +0 -33
@@ -4,88 +4,23 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import React, {useEffect, useState, useRef} from 'react';
7
+ import React, {useEffect, useState} from 'react';
8
8
  import clsx from 'clsx';
9
9
  import Highlight, {defaultProps} from 'prism-react-renderer';
10
10
  import copy from 'copy-text-to-clipboard';
11
- import rangeParser from 'parse-numeric-range';
12
- import usePrismTheme from '@theme/hooks/usePrismTheme';
13
11
  import Translate, {translate} from '@docusaurus/Translate';
12
+ import {
13
+ useThemeConfig,
14
+ parseCodeBlockTitle,
15
+ parseLanguage,
16
+ parseLines,
17
+ ThemeClassNames,
18
+ } from '@docusaurus/theme-common';
19
+ import usePrismTheme from '@theme/hooks/usePrismTheme';
14
20
  import styles from './styles.module.css';
15
- import {useThemeConfig, parseCodeBlockTitle} from '@docusaurus/theme-common';
16
- const highlightLinesRangeRegex = /{([\d,-]+)}/;
17
-
18
- const getHighlightDirectiveRegex = (
19
- languages = ['js', 'jsBlock', 'jsx', 'python', 'html'],
20
- ) => {
21
- // supported types of comments
22
- const comments = {
23
- js: {
24
- start: '\\/\\/',
25
- end: '',
26
- },
27
- jsBlock: {
28
- start: '\\/\\*',
29
- end: '\\*\\/',
30
- },
31
- jsx: {
32
- start: '\\{\\s*\\/\\*',
33
- end: '\\*\\/\\s*\\}',
34
- },
35
- python: {
36
- start: '#',
37
- end: '',
38
- },
39
- html: {
40
- start: '<!--',
41
- end: '-->',
42
- },
43
- }; // supported directives
44
-
45
- const directives = [
46
- 'highlight-next-line',
47
- 'highlight-start',
48
- 'highlight-end',
49
- ].join('|'); // to be more reliable, the opening and closing comment must match
50
-
51
- const commentPattern = languages
52
- .map(
53
- (lang) =>
54
- `(?:${comments[lang].start}\\s*(${directives})\\s*${comments[lang].end})`,
55
- )
56
- .join('|'); // white space is allowed, but otherwise it should be on it's own line
57
-
58
- return new RegExp(`^\\s*(?:${commentPattern})\\s*$`);
59
- }; // select comment styles based on language
60
-
61
- const highlightDirectiveRegex = (lang) => {
62
- switch (lang) {
63
- case 'js':
64
- case 'javascript':
65
- case 'ts':
66
- case 'typescript':
67
- return getHighlightDirectiveRegex(['js', 'jsBlock']);
68
-
69
- case 'jsx':
70
- case 'tsx':
71
- return getHighlightDirectiveRegex(['js', 'jsBlock', 'jsx']);
72
-
73
- case 'html':
74
- return getHighlightDirectiveRegex(['js', 'jsBlock', 'html']);
75
-
76
- case 'python':
77
- case 'py':
78
- return getHighlightDirectiveRegex(['python']);
79
-
80
- default:
81
- // all comment types
82
- return getHighlightDirectiveRegex();
83
- }
84
- };
85
-
86
21
  export default function CodeBlock({
87
22
  children,
88
- className: languageClassName,
23
+ className: blockClassName,
89
24
  metastring,
90
25
  title,
91
26
  }) {
@@ -106,75 +41,11 @@ export default function CodeBlock({
106
41
  // (note: title="xyz" => title prop still has the quotes)
107
42
 
108
43
  const codeBlockTitle = parseCodeBlockTitle(metastring) || title;
109
- const button = useRef(null);
110
- let highlightLines = [];
111
44
  const prismTheme = usePrismTheme(); // In case interleaved Markdown (e.g. when using CodeBlock as standalone component).
112
45
 
113
46
  const content = Array.isArray(children) ? children.join('') : children;
114
-
115
- if (metastring && highlightLinesRangeRegex.test(metastring)) {
116
- // Tested above
117
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
118
- const highlightLinesRange = metastring.match(highlightLinesRangeRegex)[1];
119
- highlightLines = rangeParser(highlightLinesRange).filter((n) => n > 0);
120
- }
121
-
122
- let language =
123
- languageClassName && // Force Prism's language union type to `any` because it does not contain all available languages
124
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
125
- languageClassName.replace(/language-/, '');
126
-
127
- if (!language && prism.defaultLanguage) {
128
- language = prism.defaultLanguage;
129
- } // only declaration OR directive highlight can be used for a block
130
-
131
- let code = content.replace(/\n$/, '');
132
-
133
- if (highlightLines.length === 0 && language !== undefined) {
134
- let range = '';
135
- const directiveRegex = highlightDirectiveRegex(language); // go through line by line
136
-
137
- const lines = content.replace(/\n$/, '').split('\n');
138
- let blockStart; // loop through lines
139
-
140
- for (let index = 0; index < lines.length; ) {
141
- const line = lines[index]; // adjust for 0-index
142
-
143
- const lineNumber = index + 1;
144
- const match = line.match(directiveRegex);
145
-
146
- if (match !== null) {
147
- const directive = match
148
- .slice(1)
149
- .reduce((final, item) => final || item, undefined);
150
-
151
- switch (directive) {
152
- case 'highlight-next-line':
153
- range += `${lineNumber},`;
154
- break;
155
-
156
- case 'highlight-start':
157
- blockStart = lineNumber;
158
- break;
159
-
160
- case 'highlight-end':
161
- range += `${blockStart}-${lineNumber - 1},`;
162
- break;
163
-
164
- default:
165
- break;
166
- }
167
-
168
- lines.splice(index, 1);
169
- } else {
170
- // lines without directives are unchanged
171
- index += 1;
172
- }
173
- }
174
-
175
- highlightLines = rangeParser(range);
176
- code = lines.join('\n');
177
- }
47
+ const language = parseLanguage(blockClassName) ?? prism.defaultLanguage;
48
+ const {highlightLines, code} = parseLines(content, metastring, language);
178
49
 
179
50
  const handleCopyCode = () => {
180
51
  copy(code);
@@ -190,7 +61,12 @@ export default function CodeBlock({
190
61
  code={code}
191
62
  language={language}>
192
63
  {({className, style, tokens, getLineProps, getTokenProps}) => (
193
- <div className={styles.codeBlockContainer}>
64
+ <div
65
+ className={clsx(
66
+ styles.codeBlockContainer,
67
+ blockClassName,
68
+ ThemeClassNames.common.codeBlock,
69
+ )}>
194
70
  {codeBlockTitle && (
195
71
  <div style={style} className={styles.codeBlockTitle}>
196
72
  {codeBlockTitle}
@@ -200,14 +76,12 @@ export default function CodeBlock({
200
76
  <pre
201
77
  /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */
202
78
  tabIndex={0}
203
- className={clsx(className, styles.codeBlock, 'thin-scrollbar', {
204
- [styles.codeBlockWithTitle]: codeBlockTitle,
205
- })}
79
+ className={clsx(className, styles.codeBlock, 'thin-scrollbar')}
206
80
  style={style}>
207
81
  <code className={styles.codeBlockLines}>
208
82
  {tokens.map((line, i) => {
209
- if (line.length === 1 && line[0].content === '') {
210
- line[0].content = '\n'; // eslint-disable-line no-param-reassign
83
+ if (line.length === 1 && line[0].content === '\n') {
84
+ line[0].content = '';
211
85
  }
212
86
 
213
87
  const lineProps = getLineProps({
@@ -215,7 +89,7 @@ export default function CodeBlock({
215
89
  key: i,
216
90
  });
217
91
 
218
- if (highlightLines.includes(i + 1)) {
92
+ if (highlightLines.includes(i)) {
219
93
  lineProps.className += ' docusaurus-highlight-code-line';
220
94
  }
221
95
 
@@ -230,6 +104,7 @@ export default function CodeBlock({
230
104
  })}
231
105
  />
232
106
  ))}
107
+ <br />
233
108
  </span>
234
109
  );
235
110
  })}
@@ -237,7 +112,6 @@ export default function CodeBlock({
237
112
  </pre>
238
113
 
239
114
  <button
240
- ref={button}
241
115
  type="button"
242
116
  aria-label={translate({
243
117
  id: 'theme.CodeBlock.copyButtonAriaLabel',
@@ -7,6 +7,8 @@
7
7
 
8
8
  .codeBlockContainer {
9
9
  margin-bottom: var(--ifm-leading);
10
+ border-radius: var(--ifm-global-radius);
11
+ box-shadow: var(--ifm-global-shadow-lw);
10
12
  }
11
13
 
12
14
  .codeBlockContent {
@@ -16,23 +18,25 @@
16
18
  }
17
19
 
18
20
  .codeBlockTitle {
19
- border-top-left-radius: var(--ifm-global-radius);
20
- border-top-right-radius: var(--ifm-global-radius);
21
21
  border-bottom: 1px solid var(--ifm-color-emphasis-300);
22
22
  font-size: var(--ifm-code-font-size);
23
23
  font-weight: 500;
24
24
  padding: 0.75rem var(--ifm-pre-padding);
25
+ border-top-left-radius: var(--ifm-global-radius);
26
+ border-top-right-radius: var(--ifm-global-radius);
25
27
  }
26
28
 
27
- .codeBlock {
28
- padding: 0;
29
- }
30
-
31
- .codeBlockWithTitle {
29
+ .codeBlockTitle + .codeBlockContent .codeBlock {
32
30
  border-top-left-radius: 0;
33
31
  border-top-right-radius: 0;
34
32
  }
35
33
 
34
+ .codeBlock {
35
+ margin: 0;
36
+ padding: 0;
37
+ border-radius: var(--ifm-global-radius);
38
+ }
39
+
36
40
  .copyButton {
37
41
  background: rgba(0, 0, 0, 0.3);
38
42
  border-radius: var(--ifm-global-radius);
@@ -54,11 +58,10 @@
54
58
 
55
59
  .codeBlockLines {
56
60
  font: inherit;
61
+ /*rtl:ignore*/
57
62
  float: left;
58
63
  min-width: 100%;
59
64
  padding: var(--ifm-pre-padding);
60
- display: flex;
61
- flex-direction: column;
62
65
  }
63
66
 
64
67
  @media print {
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React from 'react';
8
+ import clsx from 'clsx';
9
+ import {Details as DetailsGeneric} from '@docusaurus/theme-common';
10
+ import styles from './styles.module.css'; // Should we have a custom details/summary comp in Infima instead of reusing alert classes?
11
+
12
+ const InfimaClasses = 'alert alert--info';
13
+ export default function Details({...props}) {
14
+ return (
15
+ <DetailsGeneric
16
+ {...props}
17
+ className={clsx(InfimaClasses, styles.details, props.className)}
18
+ />
19
+ );
20
+ }
@@ -0,0 +1,13 @@
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
+ .details {
9
+ --docusaurus-details-decoration-color: var(--ifm-alert-border-color);
10
+ --docusaurus-details-transition: transform var(--ifm-transition-fast) ease;
11
+ margin: 0 0 var(--ifm-spacing-vertical);
12
+ border: 1px solid var(--ifm-alert-border-color);
13
+ }
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React from 'react';
8
+ import Link from '@docusaurus/Link';
9
+ import {findFirstCategoryLink, useDocById} from '@docusaurus/theme-common';
10
+ import clsx from 'clsx';
11
+ import styles from './styles.module.css';
12
+ import isInternalUrl from '@docusaurus/isInternalUrl';
13
+
14
+ function CardContainer({href, children}) {
15
+ const className = clsx(
16
+ 'card margin-bottom--lg padding--lg',
17
+ styles.cardContainer,
18
+ href && styles.cardContainerLink,
19
+ );
20
+ return href ? (
21
+ <Link href={href} className={className}>
22
+ {children}
23
+ </Link>
24
+ ) : (
25
+ <div className={className}>{children}</div>
26
+ );
27
+ }
28
+
29
+ function CardLayout({href, icon, title, description}) {
30
+ return (
31
+ <CardContainer href={href}>
32
+ <h2 className={clsx('text--truncate', styles.cardTitle)} title={title}>
33
+ {icon} {title}
34
+ </h2>
35
+ <div
36
+ className={clsx('text--truncate', styles.cardDescription)}
37
+ title={description}>
38
+ {description}
39
+ </div>
40
+ </CardContainer>
41
+ );
42
+ }
43
+
44
+ function CardCategory({item}) {
45
+ const href = findFirstCategoryLink(item);
46
+ return (
47
+ <CardLayout
48
+ href={href}
49
+ icon="🗃️"
50
+ title={item.label}
51
+ description={`${item.items.length} items`}
52
+ />
53
+ );
54
+ }
55
+
56
+ function CardLink({item}) {
57
+ const icon = isInternalUrl(item.href) ? '📄️' : '🔗';
58
+ const doc = useDocById(item.docId ?? undefined);
59
+ return (
60
+ <CardLayout
61
+ href={item.href}
62
+ icon={icon}
63
+ title={item.label}
64
+ description={doc?.description}
65
+ />
66
+ );
67
+ }
68
+
69
+ export default function DocCard({item}) {
70
+ switch (item.type) {
71
+ case 'link':
72
+ return <CardLink item={item} />;
73
+
74
+ case 'category':
75
+ return <CardCategory item={item} />;
76
+
77
+ default:
78
+ throw new Error(`unknown item type ${JSON.stringify(item)}`);
79
+ }
80
+ }
@@ -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
+ .cardContainer {
9
+ height: 8rem;
10
+
11
+ color: var(--ifm-color-emphasis-800);
12
+ --ifm-link-color: var(--ifm-color-emphasis-800);
13
+ --ifm-link-hover-color: var(--ifm-color-emphasis-800);
14
+ --ifm-link-hover-decoration: none;
15
+
16
+ /* box-shadow: var(--ifm-global-shadow-lw); */
17
+ box-shadow: 0 1.5px 3px 0 rgba(0, 0, 0, 0.15);
18
+ border: 1px solid var(--ifm-color-emphasis-200);
19
+ transition: box-shadow var(--ifm-transition-fast) ease,
20
+ background-color var(--ifm-transition-fast) ease;
21
+ }
22
+
23
+ .cardContainer.cardContainerLink:hover {
24
+ /* box-shadow: var(--ifm-global-shadow-md); */
25
+ box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
26
+ }
27
+ html[data-theme='dark'] .cardContainer.cardContainerLink:hover {
28
+ --ifm-card-background-color: #2d2d2d; /* original, non-hovered color is #242526 */
29
+ }
30
+
31
+ .cardContainer:not(.cardContainerLink) {
32
+ cursor: not-allowed;
33
+ }
34
+
35
+ .cardTitle {
36
+ font-size: 1.2rem;
37
+ min-height: 1.2rem;
38
+ }
39
+
40
+ .cardDescription {
41
+ font-size: 0.8rem;
42
+ min-height: 0.8rem;
43
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React from 'react';
8
+ import DocCard from '@theme/DocCard';
9
+ export default function DocCardList({items}) {
10
+ return (
11
+ <div className="row">
12
+ {items.map((item, index) => (
13
+ <article key={index} className="col col--6">
14
+ <DocCard item={item} />
15
+ </article>
16
+ ))}
17
+ </div>
18
+ );
19
+ }
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React from 'react';
8
+ import {useCurrentSidebarCategory} from '@docusaurus/theme-common';
9
+ import DocCardList from '@theme/DocCardList';
10
+ import DocPaginator from '@theme/DocPaginator';
11
+ import Seo from '@theme/Seo';
12
+ import DocVersionBanner from '@theme/DocVersionBanner';
13
+ import DocVersionBadge from '@theme/DocVersionBadge';
14
+ import {MainHeading} from '@theme/Heading';
15
+ import styles from './styles.module.css';
16
+ export default function DocCategoryGeneratedIndexPage({
17
+ categoryGeneratedIndex,
18
+ }) {
19
+ const category = useCurrentSidebarCategory();
20
+ return (
21
+ <>
22
+ <Seo
23
+ title={categoryGeneratedIndex.title}
24
+ description={categoryGeneratedIndex.description}
25
+ />
26
+ <div className={styles.generatedIndexPage}>
27
+ <DocVersionBanner />
28
+ <DocVersionBadge />
29
+ <header>
30
+ <MainHeading className={styles.title}>
31
+ {categoryGeneratedIndex.title}
32
+ </MainHeading>
33
+ {categoryGeneratedIndex.description && (
34
+ <p>{categoryGeneratedIndex.description}</p>
35
+ )}
36
+ </header>
37
+ <main className="margin-top--lg">
38
+ <DocCardList items={category.items} />
39
+ </main>
40
+ <footer className="margin-top--lg">
41
+ <DocPaginator
42
+ previous={categoryGeneratedIndex.navigation.previous}
43
+ next={categoryGeneratedIndex.navigation.next}
44
+ />
45
+ </footer>
46
+ </div>
47
+ </>
48
+ );
49
+ }
@@ -0,0 +1,18 @@
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
+ @media (min-width: 997px) {
9
+ .generatedIndexPage {
10
+ max-width: 75% !important;
11
+ }
12
+ }
13
+
14
+ /* Duplicated from .markdown h1 */
15
+ .title {
16
+ --ifm-h1-font-size: 3rem;
17
+ margin-bottom: calc(1.25 * var(--ifm-leading));
18
+ }
@@ -5,47 +5,40 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import React from 'react';
8
+ import clsx from 'clsx';
9
+ import useWindowSize from '@theme/hooks/useWindowSize';
8
10
  import DocPaginator from '@theme/DocPaginator';
9
11
  import DocVersionBanner from '@theme/DocVersionBanner';
12
+ import DocVersionBadge from '@theme/DocVersionBadge';
10
13
  import Seo from '@theme/Seo';
11
- import LastUpdated from '@theme/LastUpdated';
14
+ import DocItemFooter from '@theme/DocItemFooter';
12
15
  import TOC from '@theme/TOC';
13
- import EditThisPage from '@theme/EditThisPage';
16
+ import TOCCollapsible from '@theme/TOCCollapsible';
14
17
  import {MainHeading} from '@theme/Heading';
15
- import clsx from 'clsx';
16
18
  import styles from './styles.module.css';
17
- import {useActivePlugin, useVersions} from '@theme/hooks/useDocs';
18
-
19
- function DocItem(props) {
20
- const {content: DocContent, versionMetadata} = props;
19
+ import {ThemeClassNames} from '@docusaurus/theme-common';
20
+ export default function DocItem(props) {
21
+ const {content: DocContent} = props;
21
22
  const {metadata, frontMatter} = DocContent;
22
23
  const {
23
24
  image,
24
25
  keywords,
25
26
  hide_title: hideTitle,
26
27
  hide_table_of_contents: hideTableOfContents,
28
+ toc_min_heading_level: tocMinHeadingLevel,
29
+ toc_max_heading_level: tocMaxHeadingLevel,
27
30
  } = frontMatter;
28
- const {
29
- description,
30
- title,
31
- editUrl,
32
- lastUpdatedAt,
33
- formattedLastUpdatedAt,
34
- lastUpdatedBy,
35
- } = metadata;
36
- const {pluginId} = useActivePlugin({
37
- failfast: true,
38
- });
39
- const versions = useVersions(pluginId); // If site is not versioned or only one version is included
40
- // we don't show the version badge
41
- // See https://github.com/facebook/docusaurus/issues/3362
42
-
43
- const showVersionBadge = versions.length > 1; // We only add a title if:
31
+ const {description, title} = metadata; // We only add a title if:
44
32
  // - user asks to hide it with frontmatter
45
33
  // - the markdown content does not already contain a top-level h1 heading
46
34
 
47
35
  const shouldAddTitle =
48
36
  !hideTitle && typeof DocContent.contentTitle === 'undefined';
37
+ const windowSize = useWindowSize();
38
+ const canRenderTOC =
39
+ !hideTableOfContents && DocContent.toc && DocContent.toc.length > 0;
40
+ const renderTocDesktop =
41
+ canRenderTOC && (windowSize === 'desktop' || windowSize === 'ssr');
49
42
  return (
50
43
  <>
51
44
  <Seo
@@ -62,16 +55,25 @@ function DocItem(props) {
62
55
  className={clsx('col', {
63
56
  [styles.docItemCol]: !hideTableOfContents,
64
57
  })}>
65
- <DocVersionBanner versionMetadata={versionMetadata} />
58
+ <DocVersionBanner />
66
59
  <div className={styles.docItemContainer}>
67
60
  <article>
68
- {showVersionBadge && (
69
- <span className="badge badge--secondary">
70
- Version: {versionMetadata.label}
71
- </span>
61
+ <DocVersionBadge />
62
+
63
+ {canRenderTOC && (
64
+ <TOCCollapsible
65
+ toc={DocContent.toc}
66
+ minHeadingLevel={tocMinHeadingLevel}
67
+ maxHeadingLevel={tocMaxHeadingLevel}
68
+ className={clsx(
69
+ ThemeClassNames.docs.docTocMobile,
70
+ styles.tocMobile,
71
+ )}
72
+ />
72
73
  )}
73
74
 
74
- <div className="markdown">
75
+ <div
76
+ className={clsx(ThemeClassNames.docs.docMarkdown, 'markdown')}>
75
77
  {/*
76
78
  Title can be declared inside md content or declared through frontmatter and added manually
77
79
  To make both cases consistent, the added title is added under the same div.markdown block
@@ -82,36 +84,23 @@ function DocItem(props) {
82
84
  <DocContent />
83
85
  </div>
84
86
 
85
- {(editUrl || lastUpdatedAt || lastUpdatedBy) && (
86
- <footer className="row docusaurus-mt-lg">
87
- <div className="col">
88
- {editUrl && <EditThisPage editUrl={editUrl} />}
89
- </div>
90
-
91
- <div className={clsx('col', styles.lastUpdated)}>
92
- {(lastUpdatedAt || lastUpdatedBy) && (
93
- <LastUpdated
94
- lastUpdatedAt={lastUpdatedAt}
95
- formattedLastUpdatedAt={formattedLastUpdatedAt}
96
- lastUpdatedBy={lastUpdatedBy}
97
- />
98
- )}
99
- </div>
100
- </footer>
101
- )}
87
+ <DocItemFooter {...props} />
102
88
  </article>
103
89
 
104
- <DocPaginator metadata={metadata} />
90
+ <DocPaginator previous={metadata.previous} next={metadata.next} />
105
91
  </div>
106
92
  </div>
107
- {!hideTableOfContents && DocContent.toc && (
93
+ {renderTocDesktop && (
108
94
  <div className="col col--3">
109
- <TOC toc={DocContent.toc} />
95
+ <TOC
96
+ toc={DocContent.toc}
97
+ minHeadingLevel={tocMinHeadingLevel}
98
+ maxHeadingLevel={tocMaxHeadingLevel}
99
+ className={ThemeClassNames.docs.docTocDesktop}
100
+ />
110
101
  </div>
111
102
  )}
112
103
  </div>
113
104
  </>
114
105
  );
115
106
  }
116
-
117
- export default DocItem;