@docusaurus/theme-classic 2.0.0-beta.12faed89d → 2.0.0-beta.13

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 (350) hide show
  1. package/README.md +1 -1
  2. package/lib/__tests__/validateThemeConfig.test.js +277 -3
  3. package/lib/admonitions.css +35 -0
  4. package/lib/deps.d.ts +13 -0
  5. package/lib/index.js +16 -15
  6. package/lib/prism-include-languages.js +9 -5
  7. package/lib/theme/AnnouncementBar/index.js +8 -12
  8. package/lib/theme/AnnouncementBar/styles.module.css +23 -32
  9. package/lib/theme/BackToTopButton/index.js +140 -0
  10. package/lib/theme/BackToTopButton/styles.module.css +42 -0
  11. package/lib/theme/BlogArchivePage/index.js +89 -0
  12. package/lib/theme/BlogLayout/index.js +51 -0
  13. package/lib/theme/BlogListPage/index.js +10 -21
  14. package/lib/theme/BlogPostAuthor/index.js +51 -0
  15. package/lib/theme/BlogPostAuthor/styles.module.css +12 -0
  16. package/lib/theme/BlogPostAuthors/index.js +47 -0
  17. package/lib/theme/BlogPostAuthors/styles.module.css +11 -0
  18. package/lib/theme/BlogPostItem/index.js +58 -67
  19. package/lib/theme/BlogPostPage/index.js +37 -24
  20. package/lib/theme/BlogSidebar/index.js +5 -7
  21. package/lib/theme/BlogSidebar/styles.module.css +2 -2
  22. package/lib/theme/BlogTagsListPage/index.js +8 -44
  23. package/lib/theme/BlogTagsPostsPage/index.js +24 -38
  24. package/lib/theme/CodeBlock/index.js +18 -138
  25. package/lib/theme/CodeBlock/styles.module.css +6 -9
  26. package/lib/theme/Details/index.js +30 -0
  27. package/lib/theme/Details/styles.module.css +13 -0
  28. package/lib/theme/DocCard/index.js +84 -0
  29. package/lib/theme/DocCard/styles.module.css +43 -0
  30. package/lib/theme/DocCardList/index.js +28 -0
  31. package/lib/theme/DocCategoryGeneratedIndexPage/index.js +57 -0
  32. package/lib/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  33. package/lib/theme/DocItem/index.js +22 -48
  34. package/lib/theme/DocItem/styles.module.css +2 -11
  35. package/lib/theme/DocItemFooter/index.js +79 -0
  36. package/lib/theme/DocItemFooter/styles.module.css +18 -0
  37. package/lib/theme/DocPage/index.js +35 -20
  38. package/lib/theme/DocPaginator/index.js +6 -7
  39. package/lib/theme/DocSidebar/index.js +23 -22
  40. package/lib/theme/DocSidebarItem/index.js +84 -50
  41. package/lib/theme/DocSidebarItem/styles.module.css +4 -0
  42. package/lib/theme/DocTagDocListPage/index.js +89 -0
  43. package/lib/theme/DocTagsListPage/index.js +44 -0
  44. package/lib/theme/DocVersionBadge/index.js +34 -0
  45. package/lib/theme/DocVersionBanner/index.js +12 -10
  46. package/lib/theme/EditThisPage/index.js +3 -1
  47. package/lib/theme/ErrorPageContent.js +43 -0
  48. package/lib/theme/Footer/index.js +8 -4
  49. package/lib/theme/Heading/index.js +17 -22
  50. package/lib/theme/Heading/styles.css +5 -6
  51. package/lib/theme/Heading/styles.module.css +9 -5
  52. package/lib/theme/IconArrow/index.js +2 -2
  53. package/lib/theme/IconClose/index.js +31 -0
  54. package/lib/theme/IconEdit/index.js +3 -3
  55. package/lib/theme/IconExternalLink/index.js +3 -3
  56. package/lib/theme/IconLanguage/index.js +3 -3
  57. package/lib/theme/IconMenu/index.js +3 -3
  58. package/lib/theme/LastUpdated/index.js +4 -2
  59. package/lib/theme/Layout/index.js +5 -1
  60. package/lib/theme/LayoutHead/index.js +22 -17
  61. package/lib/theme/LayoutProviders/index.js +7 -5
  62. package/lib/theme/Logo/index.js +16 -14
  63. package/lib/theme/MDXComponents/index.js +45 -4
  64. package/lib/theme/MDXComponents/styles.css +11 -0
  65. package/lib/theme/MDXPage/index.js +2 -1
  66. package/lib/theme/Navbar/index.js +46 -27
  67. package/lib/theme/Navbar/styles.module.css +3 -39
  68. package/lib/theme/NavbarItem/DefaultNavbarItem.js +27 -124
  69. package/lib/theme/NavbarItem/DocNavbarItem.js +7 -8
  70. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +19 -12
  71. package/lib/theme/NavbarItem/DropdownNavbarItem.js +155 -0
  72. package/lib/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +6 -10
  73. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  74. package/lib/theme/NavbarItem/index.js +31 -11
  75. package/lib/theme/{SearchMetadatas → SearchMetadata}/index.js +2 -2
  76. package/lib/theme/Seo/index.js +10 -7
  77. package/lib/theme/TOC/index.js +9 -30
  78. package/lib/theme/TOC/styles.module.css +1 -1
  79. package/lib/theme/TOCCollapsible/index.js +7 -5
  80. package/lib/theme/TOCCollapsible/styles.module.css +1 -0
  81. package/lib/theme/TOCInline/index.js +7 -27
  82. package/lib/theme/TOCItems/index.js +78 -0
  83. package/lib/theme/Tabs/__tests__/index.test.js +123 -0
  84. package/lib/theme/Tabs/index.js +73 -50
  85. package/lib/theme/Tabs/styles.module.css +0 -13
  86. package/lib/theme/Tag/index.js +40 -0
  87. package/lib/theme/Tag/styles.module.css +70 -0
  88. package/lib/theme/TagsListByLetter/index.js +48 -0
  89. package/lib/theme/TagsListByLetter/styles.module.css +11 -0
  90. package/lib/theme/TagsListInline/index.js +44 -0
  91. package/lib/theme/TagsListInline/styles.module.css +15 -0
  92. package/lib/theme/ThemeProvider/index.js +8 -3
  93. package/lib/theme/ThemedImage/index.js +5 -7
  94. package/lib/theme/Toggle/index.js +41 -44
  95. package/lib/theme/Toggle/styles.module.css +91 -3
  96. package/lib/theme/UserPreferencesProvider/index.js +8 -3
  97. package/lib/theme/hooks/useHideableNavbar.js +14 -32
  98. package/lib/theme/hooks/useTheme.js +3 -5
  99. package/lib/theme/hooks/useWindowSize.js +2 -7
  100. package/lib/theme/prism-include-languages.js +4 -3
  101. package/lib/theme-classic.d.ts +806 -0
  102. package/lib/translations.js +4 -4
  103. package/lib/types.d.ts +0 -629
  104. package/lib/validateThemeConfig.js +230 -248
  105. package/lib-next/__tests__/validateThemeConfig.test.js +277 -3
  106. package/lib-next/admonitions.css +35 -0
  107. package/lib-next/deps.d.ts +13 -0
  108. package/lib-next/index.js +16 -10
  109. package/lib-next/prism-include-languages.js +0 -2
  110. package/lib-next/theme/AnnouncementBar/index.js +7 -12
  111. package/lib-next/theme/AnnouncementBar/styles.module.css +23 -32
  112. package/lib-next/theme/BackToTopButton/index.js +131 -0
  113. package/lib-next/theme/BackToTopButton/styles.module.css +42 -0
  114. package/lib-next/theme/BlogArchivePage/index.js +80 -0
  115. package/lib-next/theme/BlogLayout/index.js +40 -0
  116. package/lib-next/theme/BlogListPage/index.js +17 -25
  117. package/lib-next/theme/BlogPostAuthor/index.js +46 -0
  118. package/lib-next/theme/BlogPostAuthor/styles.module.css +12 -0
  119. package/lib-next/theme/BlogPostAuthors/index.js +34 -0
  120. package/lib-next/theme/BlogPostAuthors/styles.module.css +11 -0
  121. package/lib-next/theme/BlogPostItem/index.js +79 -86
  122. package/lib-next/theme/BlogPostPage/index.js +70 -35
  123. package/lib-next/theme/BlogSidebar/index.js +11 -13
  124. package/lib-next/theme/BlogSidebar/styles.module.css +2 -2
  125. package/lib-next/theme/BlogTagsListPage/index.js +14 -55
  126. package/lib-next/theme/BlogTagsPostsPage/index.js +29 -39
  127. package/lib-next/theme/CodeBlock/index.js +17 -149
  128. package/lib-next/theme/CodeBlock/styles.module.css +6 -9
  129. package/lib-next/theme/Details/index.js +20 -0
  130. package/lib-next/theme/Details/styles.module.css +13 -0
  131. package/lib-next/theme/DocCard/index.js +80 -0
  132. package/lib-next/theme/DocCard/styles.module.css +43 -0
  133. package/lib-next/theme/DocCardList/index.js +19 -0
  134. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +49 -0
  135. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  136. package/lib-next/theme/DocItem/index.js +30 -59
  137. package/lib-next/theme/DocItem/styles.module.css +2 -11
  138. package/lib-next/theme/DocItemFooter/index.js +79 -0
  139. package/lib-next/theme/DocItemFooter/styles.module.css +18 -0
  140. package/lib-next/theme/DocPage/index.js +46 -23
  141. package/lib-next/theme/DocPaginator/index.js +7 -11
  142. package/lib-next/theme/DocSidebar/index.js +37 -43
  143. package/lib-next/theme/DocSidebarItem/index.js +115 -65
  144. package/lib-next/theme/DocSidebarItem/styles.module.css +4 -0
  145. package/lib-next/theme/DocTagDocListPage/index.js +89 -0
  146. package/lib-next/theme/DocTagsListPage/index.js +38 -0
  147. package/lib-next/theme/DocVersionBadge/index.js +27 -0
  148. package/lib-next/theme/DocVersionBanner/index.js +28 -14
  149. package/lib-next/theme/EditThisPage/index.js +6 -1
  150. package/lib-next/theme/ErrorPageContent.js +35 -0
  151. package/lib-next/theme/Footer/index.js +17 -4
  152. package/lib-next/theme/Heading/index.js +25 -29
  153. package/lib-next/theme/Heading/styles.css +5 -6
  154. package/lib-next/theme/Heading/styles.module.css +9 -5
  155. package/lib-next/theme/IconArrow/index.js +2 -2
  156. package/lib-next/theme/IconClose/index.js +23 -0
  157. package/lib-next/theme/IconEdit/index.js +2 -2
  158. package/lib-next/theme/IconExternalLink/index.js +2 -2
  159. package/lib-next/theme/IconLanguage/index.js +2 -2
  160. package/lib-next/theme/IconMenu/index.js +2 -2
  161. package/lib-next/theme/LastUpdated/index.js +3 -2
  162. package/lib-next/theme/Layout/index.js +3 -1
  163. package/lib-next/theme/LayoutHead/index.js +18 -23
  164. package/lib-next/theme/LayoutProviders/index.js +8 -5
  165. package/lib-next/theme/Logo/index.js +25 -21
  166. package/lib-next/theme/MDXComponents/index.js +34 -7
  167. package/lib-next/theme/MDXComponents/styles.css +11 -0
  168. package/lib-next/theme/MDXPage/index.js +10 -2
  169. package/lib-next/theme/Navbar/index.js +62 -34
  170. package/lib-next/theme/Navbar/styles.module.css +3 -39
  171. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +45 -143
  172. package/lib-next/theme/NavbarItem/DocNavbarItem.js +7 -7
  173. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
  174. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +159 -0
  175. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -12
  176. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  177. package/lib-next/theme/NavbarItem/index.js +25 -12
  178. package/lib-next/theme/{SearchMetadatas → SearchMetadata}/index.js +1 -1
  179. package/lib-next/theme/Seo/index.js +11 -7
  180. package/lib-next/theme/TOC/index.js +12 -36
  181. package/lib-next/theme/TOC/styles.module.css +1 -1
  182. package/lib-next/theme/TOCCollapsible/index.js +13 -4
  183. package/lib-next/theme/TOCCollapsible/styles.module.css +1 -0
  184. package/lib-next/theme/TOCInline/index.js +10 -28
  185. package/lib-next/theme/TOCItems/index.js +85 -0
  186. package/lib-next/theme/Tabs/__tests__/index.test.js +142 -0
  187. package/lib-next/theme/Tabs/index.js +91 -43
  188. package/lib-next/theme/Tabs/styles.module.css +0 -13
  189. package/lib-next/theme/Tag/index.js +27 -0
  190. package/lib-next/theme/Tag/styles.module.css +70 -0
  191. package/lib-next/theme/TagsListByLetter/index.js +42 -0
  192. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  193. package/lib-next/theme/TagsListInline/index.js +31 -0
  194. package/lib-next/theme/TagsListInline/styles.module.css +15 -0
  195. package/lib-next/theme/ThemeProvider/index.js +10 -7
  196. package/lib-next/theme/ThemedImage/index.js +5 -5
  197. package/lib-next/theme/Toggle/index.js +34 -37
  198. package/lib-next/theme/Toggle/styles.module.css +91 -3
  199. package/lib-next/theme/UserPreferencesProvider/index.js +9 -6
  200. package/lib-next/theme/hooks/useHideableNavbar.js +31 -44
  201. package/lib-next/theme/hooks/useTheme.js +4 -5
  202. package/lib-next/theme/hooks/useWindowSize.js +2 -6
  203. package/lib-next/theme/prism-include-languages.js +2 -1
  204. package/lib-next/theme-classic.d.ts +806 -0
  205. package/lib-next/translations.js +6 -10
  206. package/lib-next/types.d.ts +0 -629
  207. package/lib-next/validateThemeConfig.js +141 -116
  208. package/package.json +27 -24
  209. package/src/__tests__/validateThemeConfig.test.js +277 -3
  210. package/src/admonitions.css +35 -0
  211. package/src/deps.d.ts +13 -0
  212. package/src/index.ts +23 -17
  213. package/src/{prism-include-languages.js → prism-include-languages.ts} +0 -0
  214. package/src/theme/AnnouncementBar/index.tsx +8 -12
  215. package/src/theme/AnnouncementBar/styles.module.css +23 -32
  216. package/src/theme/BackToTopButton/index.tsx +142 -0
  217. package/src/theme/BackToTopButton/styles.module.css +42 -0
  218. package/src/theme/BlogArchivePage/index.tsx +91 -0
  219. package/src/theme/BlogLayout/index.tsx +44 -0
  220. package/src/theme/BlogListPage/index.tsx +18 -25
  221. package/src/theme/BlogPostAuthor/index.tsx +49 -0
  222. package/src/theme/BlogPostAuthor/styles.module.css +12 -0
  223. package/src/theme/BlogPostAuthors/index.tsx +39 -0
  224. package/src/theme/BlogPostAuthors/styles.module.css +11 -0
  225. package/src/theme/BlogPostItem/index.tsx +70 -80
  226. package/src/theme/BlogPostPage/index.tsx +72 -35
  227. package/src/theme/BlogSidebar/index.tsx +11 -13
  228. package/src/theme/BlogSidebar/styles.module.css +2 -2
  229. package/src/theme/BlogTagsListPage/index.tsx +14 -57
  230. package/src/theme/BlogTagsPostsPage/index.tsx +29 -39
  231. package/src/theme/CodeBlock/index.tsx +21 -151
  232. package/src/theme/CodeBlock/styles.module.css +6 -9
  233. package/src/theme/Details/index.tsx +24 -0
  234. package/src/theme/Details/styles.module.css +13 -0
  235. package/src/theme/DocCard/index.tsx +100 -0
  236. package/src/theme/DocCard/styles.module.css +43 -0
  237. package/src/theme/DocCardList/index.tsx +27 -0
  238. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +53 -0
  239. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  240. package/src/theme/DocItem/index.tsx +30 -60
  241. package/src/theme/DocItem/styles.module.css +2 -11
  242. package/src/theme/DocItemFooter/index.tsx +91 -0
  243. package/src/theme/DocItemFooter/styles.module.css +18 -0
  244. package/src/theme/DocPage/index.tsx +44 -22
  245. package/src/theme/DocPaginator/index.tsx +9 -13
  246. package/src/theme/DocSidebar/index.tsx +38 -39
  247. package/src/theme/DocSidebarItem/index.tsx +108 -49
  248. package/src/theme/DocSidebarItem/styles.module.css +4 -0
  249. package/src/theme/DocTagDocListPage/index.tsx +89 -0
  250. package/src/theme/DocTagsListPage/index.tsx +41 -0
  251. package/src/theme/DocVersionBadge/index.tsx +30 -0
  252. package/src/theme/DocVersionBanner/index.tsx +48 -21
  253. package/src/theme/EditThisPage/index.tsx +6 -1
  254. package/src/theme/ErrorPageContent.tsx +41 -0
  255. package/src/theme/Footer/index.tsx +20 -5
  256. package/src/theme/Heading/index.tsx +25 -31
  257. package/src/theme/Heading/styles.css +5 -6
  258. package/src/theme/Heading/styles.module.css +9 -5
  259. package/src/theme/IconArrow/index.tsx +2 -2
  260. package/src/theme/IconClose/index.tsx +26 -0
  261. package/src/theme/IconEdit/index.tsx +2 -2
  262. package/src/theme/IconExternalLink/index.tsx +2 -5
  263. package/src/theme/IconLanguage/index.tsx +2 -6
  264. package/src/theme/IconMenu/index.tsx +3 -3
  265. package/src/theme/LastUpdated/index.tsx +3 -2
  266. package/src/theme/Layout/index.tsx +3 -1
  267. package/src/theme/LayoutHead/index.tsx +18 -17
  268. package/src/theme/LayoutProviders/index.tsx +8 -5
  269. package/src/theme/Logo/index.tsx +21 -17
  270. package/src/theme/MDXComponents/index.tsx +39 -5
  271. package/src/theme/MDXComponents/styles.css +11 -0
  272. package/src/theme/MDXPage/index.tsx +10 -2
  273. package/src/theme/Navbar/index.tsx +62 -35
  274. package/src/theme/Navbar/styles.module.css +3 -39
  275. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -149
  276. package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -16
  277. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
  278. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  279. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +181 -0
  280. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -9
  281. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  282. package/src/theme/NavbarItem/index.tsx +41 -16
  283. package/src/theme/{SearchMetadatas → SearchMetadata}/index.tsx +2 -2
  284. package/src/theme/Seo/index.tsx +7 -4
  285. package/src/theme/TOC/index.tsx +13 -35
  286. package/src/theme/TOC/styles.module.css +1 -1
  287. package/src/theme/TOCCollapsible/index.tsx +13 -4
  288. package/src/theme/TOCCollapsible/styles.module.css +1 -0
  289. package/src/theme/TOCInline/index.tsx +13 -32
  290. package/src/theme/TOCItems/index.tsx +96 -0
  291. package/src/theme/Tabs/__tests__/index.test.tsx +129 -0
  292. package/src/theme/Tabs/index.tsx +93 -49
  293. package/src/theme/Tabs/styles.module.css +0 -13
  294. package/src/theme/Tag/index.tsx +31 -0
  295. package/src/theme/Tag/styles.module.css +70 -0
  296. package/src/theme/TagsListByLetter/index.tsx +45 -0
  297. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  298. package/src/theme/TagsListInline/index.tsx +35 -0
  299. package/src/theme/TagsListInline/styles.module.css +15 -0
  300. package/src/theme/ThemeProvider/index.tsx +6 -2
  301. package/src/theme/ThemedImage/index.tsx +5 -5
  302. package/src/theme/Toggle/index.tsx +36 -43
  303. package/src/theme/Toggle/styles.module.css +91 -3
  304. package/src/theme/UserPreferencesProvider/index.tsx +9 -6
  305. package/src/theme/hooks/useHideableNavbar.ts +32 -45
  306. package/src/theme/hooks/useTabGroupChoice.ts +2 -2
  307. package/src/theme/hooks/useTheme.ts +4 -5
  308. package/src/theme/hooks/useWindowSize.ts +2 -7
  309. package/src/theme/prism-include-languages.ts +3 -2
  310. package/src/theme-classic.d.ts +806 -0
  311. package/src/translations.ts +8 -10
  312. package/src/types.d.ts +0 -629
  313. package/src/{validateThemeConfig.js → validateThemeConfig.ts} +151 -96
  314. package/tsconfig.json +1 -2
  315. package/codeTranslations/README.md +0 -20
  316. package/codeTranslations/ar.json +0 -56
  317. package/codeTranslations/base.json +0 -110
  318. package/codeTranslations/bn.json +0 -56
  319. package/codeTranslations/da.json +0 -56
  320. package/codeTranslations/de.json +0 -56
  321. package/codeTranslations/es.json +0 -56
  322. package/codeTranslations/fa.json +0 -56
  323. package/codeTranslations/fil.json +0 -56
  324. package/codeTranslations/fr.json +0 -56
  325. package/codeTranslations/he.json +0 -56
  326. package/codeTranslations/hi.json +0 -56
  327. package/codeTranslations/ja.json +0 -56
  328. package/codeTranslations/ko.json +0 -56
  329. package/codeTranslations/pl.json +0 -56
  330. package/codeTranslations/pt-BR.json +0 -56
  331. package/codeTranslations/pt-PT.json +0 -56
  332. package/codeTranslations/ru.json +0 -56
  333. package/codeTranslations/tr.json +0 -56
  334. package/codeTranslations/vi.json +0 -56
  335. package/codeTranslations/zh-Hans.json +0 -56
  336. package/codeTranslations/zh-Hant.json +0 -56
  337. package/lib/theme/Toggle/styles.css +0 -103
  338. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  339. package/lib/theme/hooks/useScrollPosition.js +0 -49
  340. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  341. package/lib-next/theme/Toggle/styles.css +0 -103
  342. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  343. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  344. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  345. package/src/theme/Toggle/styles.css +0 -103
  346. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  347. package/src/theme/hooks/useScrollPosition.ts +0 -45
  348. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  349. package/update-code-translations.js +0 -242
  350. package/update-code-translations.test.js +0 -33
@@ -25,24 +25,21 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
25
25
  * This source code is licensed under the MIT license found in the
26
26
  * LICENSE file in the root directory of this source tree.
27
27
  */
28
-
29
- /* eslint-disable jsx-a11y/anchor-has-content, jsx-a11y/anchor-is-valid */
30
- const MainHeading = function MainHeading({ ...props
31
- }) {
32
- return <header>
33
- <h1 {...props} id={undefined} // h1 headings do not need an id because they don't appear in the TOC
34
- className={_stylesModule.default.h1Heading}>
35
- {props.children}
36
- </h1>
37
- </header>;
38
- };
28
+ // eslint-disable-next-line react/function-component-definition
29
+ const MainHeading = ({ ...props
30
+ }) => <header>
31
+ <h1 {...props} id={undefined} // h1 headings do not need an id because they don't appear in the TOC
32
+ >
33
+ {props.children}
34
+ </h1>
35
+ </header>;
39
36
 
40
37
  exports.MainHeading = MainHeading;
41
38
 
42
- const createAnchorHeading = Tag => function TargetComponent({
39
+ const createAnchorHeading = Tag => ({
43
40
  id,
44
41
  ...props
45
- }) {
42
+ }) => {
46
43
  const {
47
44
  navbar: {
48
45
  hideOnScroll
@@ -53,24 +50,22 @@ const createAnchorHeading = Tag => function TargetComponent({
53
50
  return <Tag {...props} />;
54
51
  }
55
52
 
56
- return <Tag {...props}>
57
- <a aria-hidden="true" tabIndex={-1} className={(0, _clsx.default)('anchor', {
58
- [_stylesModule.default.enhancedAnchor]: !hideOnScroll
59
- })} id={id} />
53
+ return <Tag {...props} className={(0, _clsx.default)('anchor', {
54
+ [_stylesModule.default.anchorWithHideOnScrollNavbar]: hideOnScroll,
55
+ [_stylesModule.default.anchorWithStickyNavbar]: !hideOnScroll
56
+ })} id={id}>
60
57
  {props.children}
61
- <a className="hash-link" href={`#${id}`} title={(0, _Translate.translate)({
58
+ <a aria-hidden="true" className="hash-link" href={`#${id}`} title={(0, _Translate.translate)({
62
59
  id: 'theme.common.headingLinkTitle',
63
60
  message: 'Direct link to heading',
64
61
  description: 'Title for link to heading'
65
62
  })}>
66
- #
63
+ &#8203;
67
64
  </a>
68
65
  </Tag>;
69
66
  };
70
67
 
71
- const Heading = headingType => {
72
- return headingType === 'h1' ? MainHeading : createAnchorHeading(headingType);
73
- };
68
+ const Heading = headingType => headingType === 'h1' ? MainHeading : createAnchorHeading(headingType);
74
69
 
75
70
  var _default = Heading;
76
71
  exports.default = _default;
@@ -5,16 +5,15 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- .anchor {
9
- display: block;
10
- position: relative;
11
- top: -0.5rem;
12
- }
13
-
14
8
  .hash-link {
15
9
  opacity: 0;
16
10
  padding-left: 0.5rem;
17
11
  transition: opacity var(--ifm-transition-fast);
12
+ user-select: none;
13
+ }
14
+
15
+ .hash-link:before {
16
+ content: '#';
18
17
  }
19
18
 
20
19
  .hash-link:focus,
@@ -5,11 +5,15 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- .enhancedAnchor {
9
- top: calc(var(--ifm-navbar-height) * -1 - 0.5rem);
8
+ /*
9
+ When the navbar is sticky, ensure that on anchor click,
10
+ the browser does not scroll that anchor behind the navbar
11
+ See https://twitter.com/JoshWComeau/status/1332015868725891076
12
+ */
13
+ .anchorWithStickyNavbar {
14
+ scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
10
15
  }
11
16
 
12
- .h1Heading {
13
- font-size: 3rem;
14
- margin-bottom: calc(var(--ifm-leading-desktop) * var(--ifm-leading));
17
+ .anchorWithHideOnScrollNavbar {
18
+ scroll-margin-top: 0.5rem;
15
19
  }
@@ -15,14 +15,14 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
17
  */
18
- const IconArrow = props => {
18
+ function IconArrow(props) {
19
19
  return <svg width="20" height="20" aria-hidden="true" {...props}>
20
20
  <g fill="#7a7a7a">
21
21
  <path d="M9.992 10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.55 0-1-.453-1-1 0-.2.059-.403.168-.551l4.629-6.942L.168 3.078A.939.939 0 010 2.528c0-.548.45-.997 1-.997h2.996c.352 0 .649.18.828.45L9.82 9.472c.11.148.172.347.172.55zm0 0" />
22
22
  <path d="M19.98 10.023c0 .2-.058.399-.168.547l-4.996 7.492a.987.987 0 01-.828.454h-3c-.547 0-.996-.453-.996-1 0-.2.059-.403.168-.551l4.625-6.942-4.625-6.945a.939.939 0 01-.168-.55 1 1 0 01.996-.997h3c.348 0 .649.18.828.45l4.996 7.492c.11.148.168.347.168.55zm0 0" />
23
23
  </g>
24
24
  </svg>;
25
- };
25
+ }
26
26
 
27
27
  var _default = IconArrow;
28
28
  exports.default = _default;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = IconClose;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ /**
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */
18
+ function IconClose({
19
+ width = 21,
20
+ height = 21,
21
+ color = 'currentColor',
22
+ strokeWidth = 1.2,
23
+ className,
24
+ ...restProps
25
+ }) {
26
+ return <svg viewBox="0 0 15 15" width={width} height={height} {...restProps}>
27
+ <g stroke={color} strokeWidth={strokeWidth}>
28
+ <path d="M.75.75l13.5 13.5M14.25.75L.75 14.25" />
29
+ </g>
30
+ </svg>;
31
+ }
@@ -19,16 +19,16 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
19
19
  * This source code is licensed under the MIT license found in the
20
20
  * LICENSE file in the root directory of this source tree.
21
21
  */
22
- const IconEdit = ({
22
+ function IconEdit({
23
23
  className,
24
24
  ...restProps
25
- }) => {
25
+ }) {
26
26
  return <svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" className={(0, _clsx.default)(_stylesModule.default.iconEdit, className)} aria-hidden="true" {...restProps}>
27
27
  <g>
28
28
  <path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z" />
29
29
  </g>
30
30
  </svg>;
31
- };
31
+ }
32
32
 
33
33
  var _default = IconEdit;
34
34
  exports.default = _default;
@@ -17,14 +17,14 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
17
17
  * This source code is licensed under the MIT license found in the
18
18
  * LICENSE file in the root directory of this source tree.
19
19
  */
20
- const IconExternalLink = ({
20
+ function IconExternalLink({
21
21
  width = 13.5,
22
22
  height = 13.5
23
- }) => {
23
+ }) {
24
24
  return <svg width={width} height={height} aria-hidden="true" viewBox="0 0 24 24" className={_stylesModule.default.iconExternalLink}>
25
25
  <path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z" />
26
26
  </svg>;
27
- };
27
+ }
28
28
 
29
29
  var _default = IconExternalLink;
30
30
  exports.default = _default;
@@ -15,15 +15,15 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
17
  */
18
- const IconLanguage = ({
18
+ function IconLanguage({
19
19
  width = 20,
20
20
  height = 20,
21
21
  ...props
22
- }) => {
22
+ }) {
23
23
  return <svg viewBox="0 0 20 20" width={width} height={height} aria-hidden="true" {...props}>
24
24
  <path fill="currentColor" d="M19.753 10.909c-.624-1.707-2.366-2.726-4.661-2.726-.09 0-.176.002-.262.006l-.016-2.063 3.525-.607c.115-.019.133-.119.109-.231-.023-.111-.167-.883-.188-.976-.027-.131-.102-.127-.207-.109-.104.018-3.25.461-3.25.461l-.013-2.078c-.001-.125-.069-.158-.194-.156l-1.025.016c-.105.002-.164.049-.162.148l.033 2.307s-3.061.527-3.144.543c-.084.014-.17.053-.151.143.019.09.19 1.094.208 1.172.018.08.072.129.188.107l2.924-.504.035 2.018c-1.077.281-1.801.824-2.256 1.303-.768.807-1.207 1.887-1.207 2.963 0 1.586.971 2.529 2.328 2.695 3.162.387 5.119-3.06 5.769-4.715 1.097 1.506.256 4.354-2.094 5.98-.043.029-.098.129-.033.207l.619.756c.08.096.206.059.256.023 2.51-1.73 3.661-4.515 2.869-6.683zm-7.386 3.188c-.966-.121-.944-.914-.944-1.453 0-.773.327-1.58.876-2.156a3.21 3.21 0 011.229-.799l.082 4.277a2.773 2.773 0 01-1.243.131zm2.427-.553l.046-4.109c.084-.004.166-.01.252-.01.773 0 1.494.145 1.885.361.391.217-1.023 2.713-2.183 3.758zm-8.95-7.668a.196.196 0 00-.196-.145h-1.95a.194.194 0 00-.194.144L.008 16.916c-.017.051-.011.076.062.076h1.733c.075 0 .099-.023.114-.072l1.008-3.318h3.496l1.008 3.318c.016.049.039.072.113.072h1.734c.072 0 .078-.025.062-.076-.014-.05-3.083-9.741-3.494-11.04zm-2.618 6.318l1.447-5.25 1.447 5.25H3.226z" />
25
25
  </svg>;
26
- };
26
+ }
27
27
 
28
28
  var _default = IconLanguage;
29
29
  exports.default = _default;
@@ -15,16 +15,16 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
17
  */
18
- const IconMenu = ({
18
+ function IconMenu({
19
19
  width = 30,
20
20
  height = 30,
21
21
  className,
22
22
  ...restProps
23
- }) => {
23
+ }) {
24
24
  return <svg className={className} width={width} height={height} viewBox="0 0 30 30" aria-hidden="true" {...restProps}>
25
25
  <path stroke="currentColor" strokeLinecap="round" strokeMiterlimit="10" strokeWidth="2" d="M4 7h22M4 15h22M4 23h22" />
26
26
  </svg>;
27
- };
27
+ }
28
28
 
29
29
  var _default = IconMenu;
30
30
  exports.default = _default;
@@ -9,6 +9,8 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _Translate = _interopRequireDefault(require("@docusaurus/Translate"));
11
11
 
12
+ var _themeCommon = require("@docusaurus/theme-common");
13
+
12
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
15
 
14
16
  /**
@@ -47,7 +49,7 @@ function LastUpdated({
47
49
  formattedLastUpdatedAt,
48
50
  lastUpdatedBy
49
51
  }) {
50
- return <>
52
+ return <span className={_themeCommon.ThemeClassNames.common.lastUpdated}>
51
53
  <_Translate.default id="theme.lastUpdated.lastUpdatedAtBy" description="The sentence used to display when a page has been last updated, and by who" values={{
52
54
  atDate: lastUpdatedAt && formattedLastUpdatedAt ? <LastUpdatedAtDate lastUpdatedAt={lastUpdatedAt} formattedLastUpdatedAt={formattedLastUpdatedAt} /> : '',
53
55
  byUser: lastUpdatedBy ? <LastUpdatedByUser lastUpdatedBy={lastUpdatedBy} /> : ''
@@ -57,5 +59,5 @@ function LastUpdated({
57
59
  {process.env.NODE_ENV === 'development' && <div>
58
60
  <small> (Simulated during dev for better perf)</small>
59
61
  </div>}
60
- </>;
62
+ </span>;
61
63
  }
@@ -9,6 +9,8 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _clsx = _interopRequireDefault(require("clsx"));
11
11
 
12
+ var _ErrorBoundary = _interopRequireDefault(require("@docusaurus/ErrorBoundary"));
13
+
12
14
  var _SkipToContent = _interopRequireDefault(require("@theme/SkipToContent"));
13
15
 
14
16
  var _AnnouncementBar = _interopRequireDefault(require("@theme/AnnouncementBar"));
@@ -25,6 +27,8 @@ var _useKeyboardNavigation = _interopRequireDefault(require("@theme/hooks/useKey
25
27
 
26
28
  var _themeCommon = require("@docusaurus/theme-common");
27
29
 
30
+ var _ErrorPageContent = _interopRequireDefault(require("@theme/ErrorPageContent"));
31
+
28
32
  require("./styles.css");
29
33
 
30
34
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -53,7 +57,7 @@ function Layout(props) {
53
57
  <_Navbar.default />
54
58
 
55
59
  <div className={(0, _clsx.default)(_themeCommon.ThemeClassNames.wrapper.main, wrapperClassName, pageClassName)}>
56
- {children}
60
+ <_ErrorBoundary.default fallback={_ErrorPageContent.default}>{children}</_ErrorBoundary.default>
57
61
  </div>
58
62
 
59
63
  {!noFooter && <_Footer.default />}
@@ -13,7 +13,7 @@ var _useDocusaurusContext = _interopRequireDefault(require("@docusaurus/useDocus
13
13
 
14
14
  var _useBaseUrl = _interopRequireDefault(require("@docusaurus/useBaseUrl"));
15
15
 
16
- var _SearchMetadatas = _interopRequireDefault(require("@theme/SearchMetadatas"));
16
+ var _SearchMetadata = _interopRequireDefault(require("@theme/SearchMetadata"));
17
17
 
18
18
  var _Seo = _interopRequireDefault(require("@theme/Seo"));
19
19
 
@@ -86,23 +86,23 @@ function CanonicalUrlHeaders({
86
86
  function LayoutHead(props) {
87
87
  const {
88
88
  siteConfig: {
89
- favicon,
90
- themeConfig: {
91
- metadatas,
92
- image: defaultImage
93
- }
89
+ favicon
94
90
  },
95
91
  i18n: {
96
92
  currentLocale,
97
93
  localeConfigs
98
94
  }
99
95
  } = (0, _useDocusaurusContext.default)();
96
+ const {
97
+ metadata,
98
+ image: defaultImage
99
+ } = (0, _themeCommon.useThemeConfig)();
100
100
  const {
101
101
  title,
102
102
  description,
103
103
  image,
104
104
  keywords,
105
- searchMetadatas
105
+ searchMetadata
106
106
  } = props;
107
107
  const faviconUrl = (0, _useBaseUrl.default)(favicon);
108
108
  const pageTitle = (0, _themeCommon.useTitleFormatter)(title); // See https://github.com/facebook/docusaurus/issues/3317#issuecomment-754661855
@@ -114,31 +114,36 @@ function LayoutHead(props) {
114
114
  return <>
115
115
  <_Head.default>
116
116
  <html lang={htmlLang} dir={htmlDir} />
117
- {favicon && <link rel="shortcut icon" href={faviconUrl} />}
117
+ {favicon && <link rel="icon" href={faviconUrl} />}
118
118
  <title>{pageTitle}</title>
119
119
  <meta property="og:title" content={pageTitle} />
120
- {image || defaultImage && <meta name="twitter:card" content="summary_large_image" />}
120
+ <meta name="twitter:card" content="summary_large_image" />
121
121
  </_Head.default>
122
122
 
123
- <_Seo.default {...{
124
- description,
125
- keywords,
126
- image
127
- }} />
123
+ {
124
+ /* image can override the default image */
125
+ }
126
+ {defaultImage && <_Seo.default image={defaultImage} />}
127
+ {image && <_Seo.default image={image} />}
128
+
129
+ <_Seo.default description={description} keywords={keywords} />
128
130
 
129
131
  <CanonicalUrlHeaders />
130
132
 
131
133
  <AlternateLangHeaders />
132
134
 
133
- <_SearchMetadatas.default tag={_themeCommon.DEFAULT_SEARCH_TAG} locale={currentLocale} {...searchMetadatas} />
135
+ <_SearchMetadata.default tag={_themeCommon.DEFAULT_SEARCH_TAG} locale={currentLocale} {...searchMetadata} />
134
136
 
135
137
  <_Head.default // it's important to have an additional <Head> element here,
136
138
  // as it allows react-helmet to override values set in previous <Head>
137
- // ie we can override default metadatas such as "twitter:card"
139
+ // ie we can override default metadata such as "twitter:card"
138
140
  // In same Head, the same meta would appear twice instead of overriding
139
141
  // See react-helmet doc
140
142
  >
141
- {metadatas.map((metadata, i) => <meta key={`metadata_${i}`} {...metadata} />)}
143
+ {
144
+ /* Yes, "metadatum" is the grammatically correct term */
145
+ }
146
+ {metadata.map((metadatum, i) => <meta key={`metadata_${i}`} {...metadatum} />)}
142
147
  </_Head.default>
143
148
  </>;
144
149
  }
@@ -27,11 +27,13 @@ function LayoutProviders({
27
27
  return <_ThemeProvider.default>
28
28
  <_themeCommon.AnnouncementBarProvider>
29
29
  <_UserPreferencesProvider.default>
30
- <_themeCommon.DocsPreferredVersionContextProvider>
31
- <_themeCommon.MobileSecondaryMenuProvider>
32
- {children}
33
- </_themeCommon.MobileSecondaryMenuProvider>
34
- </_themeCommon.DocsPreferredVersionContextProvider>
30
+ <_themeCommon.ScrollControllerProvider>
31
+ <_themeCommon.DocsPreferredVersionContextProvider>
32
+ <_themeCommon.MobileSecondaryMenuProvider>
33
+ {children}
34
+ </_themeCommon.MobileSecondaryMenuProvider>
35
+ </_themeCommon.DocsPreferredVersionContextProvider>
36
+ </_themeCommon.ScrollControllerProvider>
35
37
  </_UserPreferencesProvider.default>
36
38
  </_themeCommon.AnnouncementBarProvider>
37
39
  </_ThemeProvider.default>;
@@ -15,6 +15,8 @@ var _useBaseUrl = _interopRequireDefault(require("@docusaurus/useBaseUrl"));
15
15
 
16
16
  var _useDocusaurusContext = _interopRequireDefault(require("@docusaurus/useDocusaurusContext"));
17
17
 
18
+ var _themeCommon = require("@docusaurus/theme-common");
19
+
18
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
21
 
20
22
  /**
@@ -23,21 +25,20 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
23
25
  * This source code is licensed under the MIT license found in the
24
26
  * LICENSE file in the root directory of this source tree.
25
27
  */
26
- const Logo = props => {
28
+ function Logo(props) {
27
29
  const {
28
30
  siteConfig: {
29
- title,
30
- themeConfig: {
31
- navbar: {
32
- title: navbarTitle,
33
- logo = {
34
- src: ''
35
- }
36
- }
37
- }
38
- },
39
- isClient
31
+ title
32
+ }
40
33
  } = (0, _useDocusaurusContext.default)();
34
+ const {
35
+ navbar: {
36
+ title: navbarTitle,
37
+ logo = {
38
+ src: ''
39
+ }
40
+ }
41
+ } = (0, _themeCommon.useThemeConfig)();
41
42
  const {
42
43
  imageClassName,
43
44
  titleClassName,
@@ -48,13 +49,14 @@ const Logo = props => {
48
49
  light: (0, _useBaseUrl.default)(logo.src),
49
50
  dark: (0, _useBaseUrl.default)(logo.srcDark || logo.src)
50
51
  };
52
+ const themedImage = <_ThemedImage.default sources={sources} height={logo.height} width={logo.width} alt={logo.alt || navbarTitle || title} />;
51
53
  return <_Link.default to={logoLink} {...propsRest} {...logo.target && {
52
54
  target: logo.target
53
55
  }}>
54
- {logo.src && <_ThemedImage.default key={isClient} className={imageClassName} sources={sources} alt={logo.alt || navbarTitle || title} />}
56
+ {logo.src && (imageClassName ? <div className={imageClassName}>{themedImage}</div> : themedImage)}
55
57
  {navbarTitle != null && <b className={titleClassName}>{navbarTitle}</b>}
56
58
  </_Link.default>;
57
- };
59
+ }
58
60
 
59
61
  var _default = Logo;
60
62
  exports.default = _default;
@@ -7,12 +7,18 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
10
+ var _Head = _interopRequireDefault(require("@docusaurus/Head"));
11
+
10
12
  var _Link = _interopRequireDefault(require("@docusaurus/Link"));
11
13
 
12
14
  var _CodeBlock = _interopRequireDefault(require("@theme/CodeBlock"));
13
15
 
14
16
  var _Heading = _interopRequireDefault(require("@theme/Heading"));
15
17
 
18
+ var _Details = _interopRequireDefault(require("@theme/Details"));
19
+
20
+ require("./styles.css");
21
+
16
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
23
 
18
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -25,7 +31,29 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
25
31
  * This source code is licensed under the MIT license found in the
26
32
  * LICENSE file in the root directory of this source tree.
27
33
  */
34
+ // MDX elements are wrapped through the MDX pragma
35
+ // In some cases (notably usage with Head/Helmet) we need to unwrap those elements.
36
+ function unwrapMDXElement(element) {
37
+ var _element$props, _element$props2;
38
+
39
+ if (element !== null && element !== void 0 && (_element$props = element.props) !== null && _element$props !== void 0 && _element$props.mdxType && element !== null && element !== void 0 && (_element$props2 = element.props) !== null && _element$props2 !== void 0 && _element$props2.originalType) {
40
+ const {
41
+ mdxType,
42
+ originalType,
43
+ ...newProps
44
+ } = element.props;
45
+ return _react.default.createElement(element.props.originalType, newProps);
46
+ }
47
+
48
+ return element;
49
+ }
50
+
28
51
  const MDXComponents = {
52
+ head: props => {
53
+ const unwrappedChildren = _react.default.Children.map(props.children, child => unwrapMDXElement(child));
54
+
55
+ return <_Head.default {...props}>{unwrappedChildren}</_Head.default>;
56
+ },
29
57
  code: props => {
30
58
  const {
31
59
  children
@@ -46,14 +74,27 @@ const MDXComponents = {
46
74
  children
47
75
  } = props; // See comment for `code` above
48
76
 
49
- if ((0, _react.isValidElement)(children === null || children === void 0 ? void 0 : (_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.children)) {
50
- return children === null || children === void 0 ? void 0 : children.props.children;
77
+ if ((0, _react.isValidElement)(children) && (0, _react.isValidElement)(children === null || children === void 0 ? void 0 : (_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.children)) {
78
+ return children.props.children;
51
79
  }
52
80
 
53
- return <_CodeBlock.default {...(0, _react.isValidElement)(children) ? children === null || children === void 0 ? void 0 : children.props : {
54
- children
81
+ return <_CodeBlock.default {...(0, _react.isValidElement)(children) ? children === null || children === void 0 ? void 0 : children.props : { ...props
55
82
  }} />;
56
83
  },
84
+ details: props => {
85
+ const items = _react.default.Children.toArray(props.children); // Split summary item from the rest to pass it as a separate prop to the Detais theme component
86
+
87
+
88
+ const summary = items.find(item => {
89
+ var _item$props;
90
+
91
+ return (item === null || item === void 0 ? void 0 : (_item$props = item.props) === null || _item$props === void 0 ? void 0 : _item$props.mdxType) === 'summary';
92
+ });
93
+ const children = <>{items.filter(item => item !== summary)}</>;
94
+ return <_Details.default {...props} summary={summary}>
95
+ {children}
96
+ </_Details.default>;
97
+ },
57
98
  h1: (0, _Heading.default)('h1'),
58
99
  h2: (0, _Heading.default)('h2'),
59
100
  h3: (0, _Heading.default)('h3'),
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ ul.contains-task-list {
9
+ padding-left: 0;
10
+ list-style: none;
11
+ }
@@ -34,6 +34,7 @@ function MDXPage(props) {
34
34
  content: MDXPageContent
35
35
  } = props;
36
36
  const {
37
+ // TODO this frontmatter is not validated/normalized, it's the raw user-provided one. We should expose normalized one too!
37
38
  frontMatter,
38
39
  metadata
39
40
  } = MDXPageContent;
@@ -55,7 +56,7 @@ function MDXPage(props) {
55
56
  </_react2.MDXProvider>
56
57
  </div>
57
58
  {!hideTableOfContents && MDXPageContent.toc && <div className="col col--2">
58
- <_TOC.default toc={MDXPageContent.toc} />
59
+ <_TOC.default toc={MDXPageContent.toc} minHeadingLevel={frontMatter.toc_min_heading_level} maxHeadingLevel={frontMatter.toc_max_heading_level} />
59
60
  </div>}
60
61
  </div>
61
62
  </main>