@docusaurus/theme-classic 2.0.0-beta.1 → 2.0.0-beta.10

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 (367) 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 +41 -16
  6. package/lib/prism-include-languages.js +9 -5
  7. package/lib/theme/AnnouncementBar/index.js +10 -16
  8. package/lib/theme/AnnouncementBar/styles.module.css +25 -30
  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 +29 -46
  34. package/lib/theme/DocItem/styles.module.css +5 -9
  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 -52
  38. package/lib/theme/DocPage/styles.module.css +8 -23
  39. package/lib/theme/DocPaginator/index.js +6 -7
  40. package/lib/theme/DocSidebar/index.js +53 -235
  41. package/lib/theme/DocSidebar/styles.module.css +0 -18
  42. package/lib/theme/DocSidebarItem/index.js +209 -0
  43. package/lib/theme/DocSidebarItem/styles.module.css +19 -0
  44. package/lib/theme/DocTagDocListPage/index.js +89 -0
  45. package/lib/theme/DocTagsListPage/index.js +44 -0
  46. package/lib/theme/DocVersionBadge/index.js +34 -0
  47. package/lib/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +39 -20
  48. package/lib/theme/EditThisPage/index.js +3 -1
  49. package/lib/theme/ErrorPageContent.js +43 -0
  50. package/lib/theme/Footer/index.js +16 -5
  51. package/lib/theme/Heading/index.js +17 -22
  52. package/lib/theme/Heading/styles.css +5 -6
  53. package/lib/theme/Heading/styles.module.css +9 -5
  54. package/lib/theme/IconArrow/index.js +2 -2
  55. package/lib/theme/IconClose/index.js +31 -0
  56. package/lib/theme/IconEdit/index.js +3 -3
  57. package/lib/theme/IconExternalLink/index.js +3 -3
  58. package/lib/theme/IconLanguage/index.js +3 -3
  59. package/lib/theme/IconMenu/index.js +3 -3
  60. package/lib/theme/LastUpdated/index.js +4 -2
  61. package/lib/theme/Layout/index.js +5 -1
  62. package/lib/theme/LayoutHead/index.js +22 -17
  63. package/lib/theme/LayoutProviders/index.js +11 -5
  64. package/lib/theme/Logo/index.js +16 -14
  65. package/lib/theme/MDXComponents/index.js +45 -4
  66. package/lib/theme/MDXComponents/styles.css +11 -0
  67. package/lib/theme/MDXPage/index.js +2 -1
  68. package/lib/theme/Navbar/index.js +162 -42
  69. package/lib/theme/Navbar/styles.module.css +10 -3
  70. package/lib/theme/NavbarItem/DefaultNavbarItem.js +27 -123
  71. package/lib/theme/NavbarItem/DocNavbarItem.js +7 -8
  72. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +19 -12
  73. package/lib/theme/NavbarItem/DropdownNavbarItem.js +155 -0
  74. package/lib/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +6 -10
  75. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  76. package/lib/theme/NavbarItem/index.js +31 -11
  77. package/lib/theme/{SearchMetadatas → SearchMetadata}/index.js +2 -2
  78. package/lib/theme/Seo/index.js +10 -7
  79. package/lib/theme/SkipToContent/index.js +12 -4
  80. package/lib/theme/SkipToContent/styles.module.css +1 -0
  81. package/lib/theme/TOC/index.js +9 -29
  82. package/lib/theme/TOC/styles.module.css +1 -1
  83. package/lib/theme/TOCCollapsible/index.js +53 -0
  84. package/lib/theme/TOCCollapsible/styles.module.css +50 -0
  85. package/lib/theme/TOCInline/index.js +7 -27
  86. package/lib/theme/TOCItems/index.js +78 -0
  87. package/lib/theme/Tabs/__tests__/index.test.js +123 -0
  88. package/lib/theme/Tabs/index.js +73 -50
  89. package/lib/theme/Tabs/styles.module.css +0 -13
  90. package/lib/theme/Tag/index.js +40 -0
  91. package/lib/theme/Tag/styles.module.css +70 -0
  92. package/lib/theme/TagsListByLetter/index.js +48 -0
  93. package/lib/theme/TagsListByLetter/styles.module.css +11 -0
  94. package/lib/theme/TagsListInline/index.js +44 -0
  95. package/lib/theme/TagsListInline/styles.module.css +15 -0
  96. package/lib/theme/ThemeProvider/index.js +8 -3
  97. package/lib/theme/ThemedImage/index.js +6 -7
  98. package/lib/theme/Toggle/index.js +41 -44
  99. package/lib/theme/Toggle/styles.module.css +91 -3
  100. package/lib/theme/UserPreferencesProvider/index.js +9 -12
  101. package/lib/theme/hooks/useHideableNavbar.js +14 -32
  102. package/lib/theme/hooks/useTabGroupChoice.js +2 -4
  103. package/lib/theme/hooks/useTheme.js +3 -5
  104. package/lib/theme/hooks/useWindowSize.js +33 -20
  105. package/lib/theme/prism-include-languages.js +4 -3
  106. package/lib/theme-classic.d.ts +806 -0
  107. package/lib/translations.js +4 -4
  108. package/lib/types.d.ts +0 -599
  109. package/lib/validateThemeConfig.js +230 -246
  110. package/lib-next/__tests__/validateThemeConfig.test.js +277 -3
  111. package/lib-next/admonitions.css +35 -0
  112. package/lib-next/deps.d.ts +13 -0
  113. package/lib-next/index.js +45 -13
  114. package/lib-next/prism-include-languages.js +0 -2
  115. package/lib-next/theme/AnnouncementBar/index.js +9 -18
  116. package/lib-next/theme/AnnouncementBar/styles.module.css +25 -30
  117. package/lib-next/theme/BackToTopButton/index.js +131 -0
  118. package/lib-next/theme/BackToTopButton/styles.module.css +42 -0
  119. package/lib-next/theme/BlogArchivePage/index.js +80 -0
  120. package/lib-next/theme/BlogLayout/index.js +40 -0
  121. package/lib-next/theme/BlogListPage/index.js +17 -25
  122. package/lib-next/theme/BlogPostAuthor/index.js +46 -0
  123. package/lib-next/theme/BlogPostAuthor/styles.module.css +12 -0
  124. package/lib-next/theme/BlogPostAuthors/index.js +34 -0
  125. package/lib-next/theme/BlogPostAuthors/styles.module.css +11 -0
  126. package/lib-next/theme/BlogPostItem/index.js +79 -86
  127. package/lib-next/theme/BlogPostPage/index.js +70 -35
  128. package/lib-next/theme/BlogSidebar/index.js +11 -13
  129. package/lib-next/theme/BlogSidebar/styles.module.css +2 -2
  130. package/lib-next/theme/BlogTagsListPage/index.js +14 -55
  131. package/lib-next/theme/BlogTagsPostsPage/index.js +29 -39
  132. package/lib-next/theme/CodeBlock/index.js +17 -149
  133. package/lib-next/theme/CodeBlock/styles.module.css +6 -9
  134. package/lib-next/theme/Details/index.js +20 -0
  135. package/lib-next/theme/Details/styles.module.css +13 -0
  136. package/lib-next/theme/DocCard/index.js +80 -0
  137. package/lib-next/theme/DocCard/styles.module.css +43 -0
  138. package/lib-next/theme/DocCardList/index.js +19 -0
  139. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +49 -0
  140. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  141. package/lib-next/theme/DocItem/index.js +40 -56
  142. package/lib-next/theme/DocItem/styles.module.css +5 -9
  143. package/lib-next/theme/DocItemFooter/index.js +79 -0
  144. package/lib-next/theme/DocItemFooter/styles.module.css +18 -0
  145. package/lib-next/theme/DocPage/index.js +46 -47
  146. package/lib-next/theme/DocPage/styles.module.css +8 -23
  147. package/lib-next/theme/DocPaginator/index.js +7 -11
  148. package/lib-next/theme/DocSidebar/index.js +69 -295
  149. package/lib-next/theme/DocSidebar/styles.module.css +0 -18
  150. package/lib-next/theme/DocSidebarItem/index.js +217 -0
  151. package/lib-next/theme/DocSidebarItem/styles.module.css +19 -0
  152. package/lib-next/theme/DocTagDocListPage/index.js +89 -0
  153. package/lib-next/theme/DocTagsListPage/index.js +38 -0
  154. package/lib-next/theme/DocVersionBadge/index.js +27 -0
  155. package/lib-next/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +51 -36
  156. package/lib-next/theme/EditThisPage/index.js +6 -1
  157. package/lib-next/theme/ErrorPageContent.js +35 -0
  158. package/lib-next/theme/Footer/index.js +27 -5
  159. package/lib-next/theme/Heading/index.js +25 -29
  160. package/lib-next/theme/Heading/styles.css +5 -6
  161. package/lib-next/theme/Heading/styles.module.css +9 -5
  162. package/lib-next/theme/IconArrow/index.js +2 -2
  163. package/lib-next/theme/IconClose/index.js +23 -0
  164. package/lib-next/theme/IconEdit/index.js +2 -2
  165. package/lib-next/theme/IconExternalLink/index.js +2 -2
  166. package/lib-next/theme/IconLanguage/index.js +2 -2
  167. package/lib-next/theme/IconMenu/index.js +2 -2
  168. package/lib-next/theme/LastUpdated/index.js +3 -2
  169. package/lib-next/theme/Layout/index.js +3 -1
  170. package/lib-next/theme/LayoutHead/index.js +18 -23
  171. package/lib-next/theme/LayoutProviders/index.js +17 -6
  172. package/lib-next/theme/Logo/index.js +25 -21
  173. package/lib-next/theme/MDXComponents/index.js +34 -7
  174. package/lib-next/theme/MDXComponents/styles.css +11 -0
  175. package/lib-next/theme/MDXPage/index.js +10 -2
  176. package/lib-next/theme/Navbar/index.js +193 -56
  177. package/lib-next/theme/Navbar/styles.module.css +10 -3
  178. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +45 -147
  179. package/lib-next/theme/NavbarItem/DocNavbarItem.js +7 -7
  180. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
  181. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +159 -0
  182. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -12
  183. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  184. package/lib-next/theme/NavbarItem/index.js +25 -12
  185. package/lib-next/theme/{SearchMetadatas → SearchMetadata}/index.js +1 -1
  186. package/lib-next/theme/Seo/index.js +11 -7
  187. package/lib-next/theme/SkipToContent/index.js +7 -8
  188. package/lib-next/theme/SkipToContent/styles.module.css +1 -0
  189. package/lib-next/theme/TOC/index.js +12 -36
  190. package/lib-next/theme/TOC/styles.module.css +1 -1
  191. package/lib-next/theme/TOCCollapsible/index.js +54 -0
  192. package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
  193. package/lib-next/theme/TOCInline/index.js +10 -28
  194. package/lib-next/theme/TOCItems/index.js +85 -0
  195. package/lib-next/theme/Tabs/__tests__/index.test.js +142 -0
  196. package/lib-next/theme/Tabs/index.js +91 -43
  197. package/lib-next/theme/Tabs/styles.module.css +0 -13
  198. package/lib-next/theme/Tag/index.js +27 -0
  199. package/lib-next/theme/Tag/styles.module.css +70 -0
  200. package/lib-next/theme/TagsListByLetter/index.js +42 -0
  201. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  202. package/lib-next/theme/TagsListInline/index.js +31 -0
  203. package/lib-next/theme/TagsListInline/styles.module.css +15 -0
  204. package/lib-next/theme/ThemeProvider/index.js +10 -7
  205. package/lib-next/theme/ThemedImage/index.js +7 -8
  206. package/lib-next/theme/Toggle/index.js +34 -37
  207. package/lib-next/theme/Toggle/styles.module.css +91 -3
  208. package/lib-next/theme/UserPreferencesProvider/index.js +9 -10
  209. package/lib-next/theme/hooks/useHideableNavbar.js +31 -44
  210. package/lib-next/theme/hooks/useTabGroupChoice.js +2 -4
  211. package/lib-next/theme/hooks/useTheme.js +4 -5
  212. package/lib-next/theme/hooks/useWindowSize.js +34 -20
  213. package/lib-next/theme/prism-include-languages.js +2 -1
  214. package/lib-next/theme-classic.d.ts +806 -0
  215. package/lib-next/translations.js +6 -10
  216. package/lib-next/types.d.ts +0 -599
  217. package/lib-next/validateThemeConfig.js +141 -114
  218. package/package.json +28 -25
  219. package/src/__tests__/validateThemeConfig.test.js +277 -3
  220. package/src/admonitions.css +35 -0
  221. package/src/deps.d.ts +13 -0
  222. package/src/index.ts +55 -22
  223. package/src/{prism-include-languages.js → prism-include-languages.ts} +0 -0
  224. package/src/theme/AnnouncementBar/index.tsx +10 -17
  225. package/src/theme/AnnouncementBar/styles.module.css +25 -30
  226. package/src/theme/BackToTopButton/index.tsx +142 -0
  227. package/src/theme/BackToTopButton/styles.module.css +42 -0
  228. package/src/theme/BlogArchivePage/index.tsx +91 -0
  229. package/src/theme/BlogLayout/index.tsx +44 -0
  230. package/src/theme/BlogListPage/index.tsx +18 -25
  231. package/src/theme/BlogPostAuthor/index.tsx +49 -0
  232. package/src/theme/BlogPostAuthor/styles.module.css +12 -0
  233. package/src/theme/BlogPostAuthors/index.tsx +39 -0
  234. package/src/theme/BlogPostAuthors/styles.module.css +11 -0
  235. package/src/theme/BlogPostItem/index.tsx +70 -80
  236. package/src/theme/BlogPostPage/index.tsx +72 -35
  237. package/src/theme/BlogSidebar/index.tsx +11 -13
  238. package/src/theme/BlogSidebar/styles.module.css +2 -2
  239. package/src/theme/BlogTagsListPage/index.tsx +14 -57
  240. package/src/theme/BlogTagsPostsPage/index.tsx +29 -39
  241. package/src/theme/CodeBlock/index.tsx +21 -151
  242. package/src/theme/CodeBlock/styles.module.css +6 -9
  243. package/src/theme/Details/index.tsx +24 -0
  244. package/src/theme/Details/styles.module.css +13 -0
  245. package/src/theme/DocCard/index.tsx +100 -0
  246. package/src/theme/DocCard/styles.module.css +43 -0
  247. package/src/theme/DocCardList/index.tsx +27 -0
  248. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +53 -0
  249. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  250. package/src/theme/DocItem/index.tsx +43 -56
  251. package/src/theme/DocItem/styles.module.css +5 -9
  252. package/src/theme/DocItemFooter/index.tsx +91 -0
  253. package/src/theme/DocItemFooter/styles.module.css +18 -0
  254. package/src/theme/DocPage/index.tsx +44 -42
  255. package/src/theme/DocPage/styles.module.css +8 -23
  256. package/src/theme/DocPaginator/index.tsx +9 -13
  257. package/src/theme/DocSidebar/index.tsx +80 -307
  258. package/src/theme/DocSidebar/styles.module.css +0 -18
  259. package/src/theme/DocSidebarItem/index.tsx +242 -0
  260. package/src/theme/DocSidebarItem/styles.module.css +19 -0
  261. package/src/theme/DocTagDocListPage/index.tsx +89 -0
  262. package/src/theme/DocTagsListPage/index.tsx +41 -0
  263. package/src/theme/DocVersionBadge/index.tsx +30 -0
  264. package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +74 -44
  265. package/src/theme/EditThisPage/index.tsx +6 -1
  266. package/src/theme/ErrorPageContent.tsx +41 -0
  267. package/src/theme/Footer/index.tsx +30 -6
  268. package/src/theme/Heading/index.tsx +25 -31
  269. package/src/theme/Heading/styles.css +5 -6
  270. package/src/theme/Heading/styles.module.css +9 -5
  271. package/src/theme/IconArrow/index.tsx +2 -2
  272. package/src/theme/IconClose/index.tsx +26 -0
  273. package/src/theme/IconEdit/index.tsx +2 -2
  274. package/src/theme/IconExternalLink/index.tsx +2 -5
  275. package/src/theme/IconLanguage/index.tsx +2 -6
  276. package/src/theme/IconMenu/index.tsx +3 -3
  277. package/src/theme/LastUpdated/index.tsx +3 -2
  278. package/src/theme/Layout/index.tsx +3 -1
  279. package/src/theme/LayoutHead/index.tsx +18 -17
  280. package/src/theme/LayoutProviders/index.tsx +17 -6
  281. package/src/theme/Logo/index.tsx +21 -17
  282. package/src/theme/MDXComponents/index.tsx +39 -5
  283. package/src/theme/MDXComponents/styles.css +11 -0
  284. package/src/theme/MDXPage/index.tsx +10 -2
  285. package/src/theme/Navbar/index.tsx +203 -61
  286. package/src/theme/Navbar/styles.module.css +10 -3
  287. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -154
  288. package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -16
  289. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
  290. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  291. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +181 -0
  292. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -9
  293. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  294. package/src/theme/NavbarItem/index.tsx +41 -16
  295. package/src/theme/{SearchMetadatas → SearchMetadata}/index.tsx +2 -2
  296. package/src/theme/Seo/index.tsx +7 -4
  297. package/src/theme/SkipToContent/index.tsx +7 -8
  298. package/src/theme/SkipToContent/styles.module.css +1 -0
  299. package/src/theme/TOC/index.tsx +12 -41
  300. package/src/theme/TOC/styles.module.css +1 -1
  301. package/src/theme/TOCCollapsible/index.tsx +58 -0
  302. package/src/theme/TOCCollapsible/styles.module.css +50 -0
  303. package/src/theme/TOCInline/index.tsx +13 -32
  304. package/src/theme/TOCItems/index.tsx +96 -0
  305. package/src/theme/Tabs/__tests__/index.test.tsx +129 -0
  306. package/src/theme/Tabs/index.tsx +93 -49
  307. package/src/theme/Tabs/styles.module.css +0 -13
  308. package/src/theme/Tag/index.tsx +31 -0
  309. package/src/theme/Tag/styles.module.css +70 -0
  310. package/src/theme/TagsListByLetter/index.tsx +45 -0
  311. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  312. package/src/theme/TagsListInline/index.tsx +35 -0
  313. package/src/theme/TagsListInline/styles.module.css +15 -0
  314. package/src/theme/ThemeProvider/index.tsx +6 -2
  315. package/src/theme/ThemedImage/index.tsx +8 -8
  316. package/src/theme/Toggle/index.tsx +36 -43
  317. package/src/theme/Toggle/styles.module.css +91 -3
  318. package/src/theme/UserPreferencesProvider/index.tsx +9 -11
  319. package/src/theme/hooks/useHideableNavbar.ts +32 -45
  320. package/src/theme/hooks/useTabGroupChoice.ts +4 -4
  321. package/src/theme/hooks/useTheme.ts +4 -5
  322. package/src/theme/hooks/useWindowSize.ts +38 -20
  323. package/src/theme/prism-include-languages.ts +3 -2
  324. package/src/theme-classic.d.ts +806 -0
  325. package/src/translations.ts +8 -10
  326. package/src/types.d.ts +0 -599
  327. package/src/{validateThemeConfig.js → validateThemeConfig.ts} +151 -94
  328. package/tsconfig.json +1 -2
  329. package/codeTranslations/README.md +0 -20
  330. package/codeTranslations/ar.json +0 -57
  331. package/codeTranslations/base.json +0 -112
  332. package/codeTranslations/bn.json +0 -56
  333. package/codeTranslations/da.json +0 -57
  334. package/codeTranslations/de.json +0 -57
  335. package/codeTranslations/es.json +0 -57
  336. package/codeTranslations/fa.json +0 -57
  337. package/codeTranslations/fil.json +0 -57
  338. package/codeTranslations/fr.json +0 -57
  339. package/codeTranslations/he.json +0 -57
  340. package/codeTranslations/hi.json +0 -57
  341. package/codeTranslations/ja.json +0 -57
  342. package/codeTranslations/ko.json +0 -57
  343. package/codeTranslations/pl.json +0 -57
  344. package/codeTranslations/pt-BR.json +0 -57
  345. package/codeTranslations/pt-PT.json +0 -57
  346. package/codeTranslations/ru.json +0 -57
  347. package/codeTranslations/tr.json +0 -57
  348. package/codeTranslations/vi.json +0 -57
  349. package/codeTranslations/zh-Hans.json +0 -57
  350. package/codeTranslations/zh-Hant.json +0 -57
  351. package/lib/theme/Toggle/styles.css +0 -103
  352. package/lib/theme/hooks/useAnnouncementBar.js +0 -63
  353. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  354. package/lib/theme/hooks/useScrollPosition.js +0 -49
  355. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  356. package/lib-next/theme/Toggle/styles.css +0 -103
  357. package/lib-next/theme/hooks/useAnnouncementBar.js +0 -49
  358. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  359. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  360. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  361. package/src/theme/Toggle/styles.css +0 -103
  362. package/src/theme/hooks/useAnnouncementBar.ts +0 -58
  363. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  364. package/src/theme/hooks/useScrollPosition.ts +0 -45
  365. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  366. package/update-code-translations.js +0 -239
  367. package/update-code-translations.test.js +0 -33
@@ -7,18 +7,18 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
- var _Layout = _interopRequireDefault(require("@theme/Layout"));
10
+ var _Seo = _interopRequireDefault(require("@theme/Seo"));
11
+
12
+ var _BlogLayout = _interopRequireDefault(require("@theme/BlogLayout"));
11
13
 
12
14
  var _BlogPostItem = _interopRequireDefault(require("@theme/BlogPostItem"));
13
15
 
14
16
  var _BlogPostPaginator = _interopRequireDefault(require("@theme/BlogPostPaginator"));
15
17
 
16
- var _BlogSidebar = _interopRequireDefault(require("@theme/BlogSidebar"));
18
+ var _themeCommon = require("@docusaurus/theme-common");
17
19
 
18
20
  var _TOC = _interopRequireDefault(require("@theme/TOC"));
19
21
 
20
- var _themeCommon = require("@docusaurus/theme-common");
21
-
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
23
 
24
24
  /**
@@ -28,41 +28,54 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
28
28
  * LICENSE file in the root directory of this source tree.
29
29
  */
30
30
  function BlogPostPage(props) {
31
+ var _assets$image;
32
+
31
33
  const {
32
34
  content: BlogPostContents,
33
35
  sidebar
34
36
  } = props;
35
37
  const {
38
+ // TODO this frontmatter is not validated/normalized, it's the raw user-provided one. We should expose normalized one too!
36
39
  frontMatter,
40
+ assets,
37
41
  metadata
38
42
  } = BlogPostContents;
39
43
  const {
40
44
  title,
41
45
  description,
42
46
  nextItem,
43
- prevItem
47
+ prevItem,
48
+ date,
49
+ tags,
50
+ authors
44
51
  } = metadata;
45
52
  const {
46
- hide_table_of_contents: hideTableOfContents
53
+ hide_table_of_contents: hideTableOfContents,
54
+ keywords,
55
+ toc_min_heading_level: tocMinHeadingLevel,
56
+ toc_max_heading_level: tocMaxHeadingLevel
47
57
  } = frontMatter;
48
- return <_Layout.default title={title} description={description} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.blogPages} pageClassName={_themeCommon.ThemeClassNames.page.blogPostPage}>
49
- {BlogPostContents && <div className="container margin-vert--lg">
50
- <div className="row">
51
- <aside className="col col--3">
52
- <_BlogSidebar.default sidebar={sidebar} />
53
- </aside>
54
- <main className="col col--7">
55
- <_BlogPostItem.default frontMatter={frontMatter} metadata={metadata} isBlogPostPage>
56
- <BlogPostContents />
57
- </_BlogPostItem.default>
58
- {(nextItem || prevItem) && <_BlogPostPaginator.default nextItem={nextItem} prevItem={prevItem} />}
59
- </main>
60
- {!hideTableOfContents && BlogPostContents.toc && <div className="col col--2">
61
- <_TOC.default toc={BlogPostContents.toc} />
62
- </div>}
63
- </div>
64
- </div>}
65
- </_Layout.default>;
58
+ const image = (_assets$image = assets.image) !== null && _assets$image !== void 0 ? _assets$image : frontMatter.image;
59
+ return <_BlogLayout.default wrapperClassName={_themeCommon.ThemeClassNames.wrapper.blogPages} pageClassName={_themeCommon.ThemeClassNames.page.blogPostPage} sidebar={sidebar} toc={!hideTableOfContents && BlogPostContents.toc && BlogPostContents.toc.length > 0 ? <_TOC.default toc={BlogPostContents.toc} minHeadingLevel={tocMinHeadingLevel} maxHeadingLevel={tocMaxHeadingLevel} /> : undefined}>
60
+ <_Seo.default // TODO refactor needed: it's a bit annoying but Seo MUST be inside BlogLayout
61
+ // otherwise default image (set by BlogLayout) would shadow the custom blog post image
62
+ title={title} description={description} keywords={keywords} image={image}>
63
+ <meta property="og:type" content="article" />
64
+ <meta property="article:published_time" content={date} />
65
+
66
+ {
67
+ /* TODO double check those article metas array syntaxes, see https://ogp.me/#array */
68
+ }
69
+ {authors.some(author => author.url) && <meta property="article:author" content={authors.map(author => author.url).filter(Boolean).join(',')} />}
70
+ {tags.length > 0 && <meta property="article:tag" content={tags.map(tag => tag.label).join(',')} />}
71
+ </_Seo.default>
72
+
73
+ <_BlogPostItem.default frontMatter={frontMatter} assets={assets} metadata={metadata} isBlogPostPage>
74
+ <BlogPostContents />
75
+ </_BlogPostItem.default>
76
+
77
+ {(nextItem || prevItem) && <_BlogPostPaginator.default nextItem={nextItem} prevItem={prevItem} />}
78
+ </_BlogLayout.default>;
66
79
  }
67
80
 
68
81
  var _default = BlogPostPage;
@@ -39,13 +39,11 @@ function BlogSidebar({
39
39
  {sidebar.title}
40
40
  </div>
41
41
  <ul className={_stylesModule.default.sidebarItemList}>
42
- {sidebar.items.map(item => {
43
- return <li key={item.permalink} className={_stylesModule.default.sidebarItem}>
44
- <_Link.default isNavLink to={item.permalink} className={_stylesModule.default.sidebarItemLink} activeClassName={_stylesModule.default.sidebarItemLinkActive}>
45
- {item.title}
46
- </_Link.default>
47
- </li>;
48
- })}
42
+ {sidebar.items.map(item => <li key={item.permalink} className={_stylesModule.default.sidebarItem}>
43
+ <_Link.default isNavLink to={item.permalink} className={_stylesModule.default.sidebarItemLink} activeClassName={_stylesModule.default.sidebarItemLinkActive}>
44
+ {item.title}
45
+ </_Link.default>
46
+ </li>)}
49
47
  </ul>
50
48
  </nav>;
51
49
  }
@@ -34,10 +34,10 @@
34
34
  text-decoration: none;
35
35
  }
36
36
  .sidebarItemLinkActive {
37
- color: var(--ifm-color-primary);
37
+ color: var(--ifm-color-primary) !important;
38
38
  }
39
39
 
40
- @media only screen and (max-width: 996px) {
40
+ @media (max-width: 996px) {
41
41
  .sidebar {
42
42
  display: none;
43
43
  }
@@ -7,13 +7,9 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
- var _Layout = _interopRequireDefault(require("@theme/Layout"));
10
+ var _BlogLayout = _interopRequireDefault(require("@theme/BlogLayout"));
11
11
 
12
- var _Link = _interopRequireDefault(require("@docusaurus/Link"));
13
-
14
- var _BlogSidebar = _interopRequireDefault(require("@theme/BlogSidebar"));
15
-
16
- var _Translate = require("@docusaurus/Translate");
12
+ var _TagsListByLetter = _interopRequireDefault(require("@theme/TagsListByLetter"));
17
13
 
18
14
  var _themeCommon = require("@docusaurus/theme-common");
19
15
 
@@ -25,51 +21,19 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
25
21
  * This source code is licensed under the MIT license found in the
26
22
  * LICENSE file in the root directory of this source tree.
27
23
  */
28
- function getCategoryOfTag(tag) {
29
- // tag's category should be customizable
30
- return tag[0].toUpperCase();
31
- }
32
-
33
24
  function BlogTagsListPage(props) {
34
25
  const {
35
26
  tags,
36
27
  sidebar
37
28
  } = props;
38
- const title = (0, _Translate.translate)({
39
- id: 'theme.tags.tagsPageTitle',
40
- message: 'Tags',
41
- description: 'The title of the tag list page'
42
- });
43
- const tagCategories = {};
44
- Object.keys(tags).forEach(tag => {
45
- const category = getCategoryOfTag(tag);
46
- tagCategories[category] = tagCategories[category] || [];
47
- tagCategories[category].push(tag);
48
- });
49
- const tagsList = Object.entries(tagCategories).sort(([a], [b]) => a.localeCompare(b));
50
- const tagsSection = tagsList.map(([category, tagsForCategory]) => <article key={category}>
51
- <h2>{category}</h2>
52
- {tagsForCategory.map(tag => <_Link.default className="padding-right--md" href={tags[tag].permalink} key={tag}>
53
- {tags[tag].name} ({tags[tag].count})
54
- </_Link.default>)}
55
- <hr />
56
- </article>).filter(item => item != null);
57
- return <_Layout.default title={title} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.blogPages} pageClassName={_themeCommon.ThemeClassNames.page.blogTagsListPage} searchMetadatas={{
29
+ const title = (0, _themeCommon.translateTagsPageTitle)();
30
+ return <_BlogLayout.default title={title} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.blogPages} pageClassName={_themeCommon.ThemeClassNames.page.blogTagsListPage} searchMetadata={{
58
31
  // assign unique search tag to exclude this page from search results!
59
32
  tag: 'blog_tags_list'
60
- }}>
61
- <div className="container margin-vert--lg">
62
- <div className="row">
63
- <aside className="col col--3">
64
- <_BlogSidebar.default sidebar={sidebar} />
65
- </aside>
66
- <main className="col col--7">
67
- <h1>{title}</h1>
68
- <section className="margin-vert--lg">{tagsSection}</section>
69
- </main>
70
- </div>
71
- </div>
72
- </_Layout.default>;
33
+ }} sidebar={sidebar}>
34
+ <h1>{title}</h1>
35
+ <_TagsListByLetter.default tags={Object.values(tags)} />
36
+ </_BlogLayout.default>;
73
37
  }
74
38
 
75
39
  var _default = BlogTagsListPage;
@@ -3,17 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
6
+ exports.default = BlogTagsPostsPage;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
- var _Layout = _interopRequireDefault(require("@theme/Layout"));
11
-
12
- var _BlogPostItem = _interopRequireDefault(require("@theme/BlogPostItem"));
13
-
14
10
  var _Link = _interopRequireDefault(require("@docusaurus/Link"));
15
11
 
16
- var _BlogSidebar = _interopRequireDefault(require("@theme/BlogSidebar"));
12
+ var _BlogLayout = _interopRequireDefault(require("@theme/BlogLayout"));
13
+
14
+ var _BlogPostItem = _interopRequireDefault(require("@theme/BlogPostItem"));
17
15
 
18
16
  var _Translate = _interopRequireWildcard(require("@docusaurus/Translate"));
19
17
 
@@ -45,7 +43,7 @@ function useBlogPostsPlural() {
45
43
  }));
46
44
  }
47
45
 
48
- function BlogTagsPostPage(props) {
46
+ function BlogTagsPostsPage(props) {
49
47
  const {
50
48
  metadata,
51
49
  items,
@@ -65,36 +63,24 @@ function BlogTagsPostPage(props) {
65
63
  nPosts: blogPostsPlural(count),
66
64
  tagName
67
65
  });
68
- return <_Layout.default title={title} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.blogPages} pageClassName={_themeCommon.ThemeClassNames.page.blogTagsPostPage} searchMetadatas={{
66
+ return <_BlogLayout.default title={title} wrapperClassName={_themeCommon.ThemeClassNames.wrapper.blogPages} pageClassName={_themeCommon.ThemeClassNames.page.blogTagPostListPage} searchMetadata={{
69
67
  // assign unique search tag to exclude this page from search results!
70
68
  tag: 'blog_tags_posts'
71
- }}>
72
- <div className="container margin-vert--lg">
73
- <div className="row">
74
- <aside className="col col--3">
75
- <_BlogSidebar.default sidebar={sidebar} />
76
- </aside>
77
- <main className="col col--7">
78
- <header className="margin-bottom--xl">
79
- <h1>{title}</h1>
80
-
81
- <_Link.default href={allTagsPath}>
82
- <_Translate.default id="theme.tags.tagsPageLink" description="The label of the link targeting the tag list page">
83
- View All Tags
84
- </_Translate.default>
85
- </_Link.default>
86
- </header>
87
-
88
- {items.map(({
89
- content: BlogPostContent
90
- }) => <_BlogPostItem.default key={BlogPostContent.metadata.permalink} frontMatter={BlogPostContent.frontMatter} metadata={BlogPostContent.metadata} truncated>
91
- <BlogPostContent />
92
- </_BlogPostItem.default>)}
93
- </main>
94
- </div>
95
- </div>
96
- </_Layout.default>;
97
- }
98
-
99
- var _default = BlogTagsPostPage;
100
- exports.default = _default;
69
+ }} sidebar={sidebar}>
70
+ <header className="margin-bottom--xl">
71
+ <h1>{title}</h1>
72
+
73
+ <_Link.default href={allTagsPath}>
74
+ <_Translate.default id="theme.tags.tagsPageLink" description="The label of the link targeting the tag list page">
75
+ View All Tags
76
+ </_Translate.default>
77
+ </_Link.default>
78
+ </header>
79
+
80
+ {items.map(({
81
+ content: BlogPostContent
82
+ }) => <_BlogPostItem.default key={BlogPostContent.metadata.permalink} frontMatter={BlogPostContent.frontMatter} assets={BlogPostContent.assets} metadata={BlogPostContent.metadata} truncated>
83
+ <BlogPostContent />
84
+ </_BlogPostItem.default>)}
85
+ </_BlogLayout.default>;
86
+ }
@@ -13,16 +13,14 @@ var _prismReactRenderer = _interopRequireWildcard(require("prism-react-renderer"
13
13
 
14
14
  var _copyTextToClipboard = _interopRequireDefault(require("copy-text-to-clipboard"));
15
15
 
16
- var _parseNumericRange = _interopRequireDefault(require("parse-numeric-range"));
16
+ var _Translate = _interopRequireWildcard(require("@docusaurus/Translate"));
17
17
 
18
- var _usePrismTheme = _interopRequireDefault(require("@theme/hooks/usePrismTheme"));
18
+ var _themeCommon = require("@docusaurus/theme-common");
19
19
 
20
- var _Translate = _interopRequireWildcard(require("@docusaurus/Translate"));
20
+ var _usePrismTheme = _interopRequireDefault(require("@theme/hooks/usePrismTheme"));
21
21
 
22
22
  var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
23
23
 
24
- var _themeCommon = require("@docusaurus/theme-common");
25
-
26
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
25
 
28
26
  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); }
@@ -35,72 +33,14 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
35
33
  * This source code is licensed under the MIT license found in the
36
34
  * LICENSE file in the root directory of this source tree.
37
35
  */
38
- const highlightLinesRangeRegex = /{([\d,-]+)}/;
39
-
40
- const getHighlightDirectiveRegex = (languages = ['js', 'jsBlock', 'jsx', 'python', 'html']) => {
41
- // supported types of comments
42
- const comments = {
43
- js: {
44
- start: '\\/\\/',
45
- end: ''
46
- },
47
- jsBlock: {
48
- start: '\\/\\*',
49
- end: '\\*\\/'
50
- },
51
- jsx: {
52
- start: '\\{\\s*\\/\\*',
53
- end: '\\*\\/\\s*\\}'
54
- },
55
- python: {
56
- start: '#',
57
- end: ''
58
- },
59
- html: {
60
- start: '<!--',
61
- end: '-->'
62
- }
63
- }; // supported directives
64
-
65
- const directives = ['highlight-next-line', 'highlight-start', 'highlight-end'].join('|'); // to be more reliable, the opening and closing comment must match
66
-
67
- const commentPattern = languages.map(lang => `(?:${comments[lang].start}\\s*(${directives})\\s*${comments[lang].end})`).join('|'); // white space is allowed, but otherwise it should be on it's own line
68
-
69
- return new RegExp(`^\\s*(?:${commentPattern})\\s*$`);
70
- }; // select comment styles based on language
71
-
72
-
73
- const highlightDirectiveRegex = lang => {
74
- switch (lang) {
75
- case 'js':
76
- case 'javascript':
77
- case 'ts':
78
- case 'typescript':
79
- return getHighlightDirectiveRegex(['js', 'jsBlock']);
80
-
81
- case 'jsx':
82
- case 'tsx':
83
- return getHighlightDirectiveRegex(['js', 'jsBlock', 'jsx']);
84
-
85
- case 'html':
86
- return getHighlightDirectiveRegex(['js', 'jsBlock', 'html']);
87
-
88
- case 'python':
89
- case 'py':
90
- return getHighlightDirectiveRegex(['python']);
91
-
92
- default:
93
- // all comment types
94
- return getHighlightDirectiveRegex();
95
- }
96
- };
97
-
98
36
  function CodeBlock({
99
37
  children,
100
- className: languageClassName,
38
+ className: blockClassName,
101
39
  metastring,
102
40
  title
103
41
  }) {
42
+ var _parseLanguage;
43
+
104
44
  const {
105
45
  prism
106
46
  } = (0, _themeCommon.useThemeConfig)();
@@ -120,73 +60,14 @@ function CodeBlock({
120
60
  // (note: title="xyz" => title prop still has the quotes)
121
61
 
122
62
  const codeBlockTitle = (0, _themeCommon.parseCodeBlockTitle)(metastring) || title;
123
- const button = (0, _react.useRef)(null);
124
- let highlightLines = [];
125
63
  const prismTheme = (0, _usePrismTheme.default)(); // In case interleaved Markdown (e.g. when using CodeBlock as standalone component).
126
64
 
127
65
  const content = Array.isArray(children) ? children.join('') : children;
128
-
129
- if (metastring && highlightLinesRangeRegex.test(metastring)) {
130
- // Tested above
131
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
132
- const highlightLinesRange = metastring.match(highlightLinesRangeRegex)[1];
133
- highlightLines = (0, _parseNumericRange.default)(highlightLinesRange).filter(n => n > 0);
134
- }
135
-
136
- let language = languageClassName && // Force Prism's language union type to `any` because it does not contain all available languages
137
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
138
- languageClassName.replace(/language-/, '');
139
-
140
- if (!language && prism.defaultLanguage) {
141
- language = prism.defaultLanguage;
142
- } // only declaration OR directive highlight can be used for a block
143
-
144
-
145
- let code = content.replace(/\n$/, '');
146
-
147
- if (highlightLines.length === 0 && language !== undefined) {
148
- let range = '';
149
- const directiveRegex = highlightDirectiveRegex(language); // go through line by line
150
-
151
- const lines = content.replace(/\n$/, '').split('\n');
152
- let blockStart; // loop through lines
153
-
154
- for (let index = 0; index < lines.length;) {
155
- const line = lines[index]; // adjust for 0-index
156
-
157
- const lineNumber = index + 1;
158
- const match = line.match(directiveRegex);
159
-
160
- if (match !== null) {
161
- const directive = match.slice(1).reduce((final, item) => final || item, undefined);
162
-
163
- switch (directive) {
164
- case 'highlight-next-line':
165
- range += `${lineNumber},`;
166
- break;
167
-
168
- case 'highlight-start':
169
- blockStart = lineNumber;
170
- break;
171
-
172
- case 'highlight-end':
173
- range += `${blockStart}-${lineNumber - 1},`;
174
- break;
175
-
176
- default:
177
- break;
178
- }
179
-
180
- lines.splice(index, 1);
181
- } else {
182
- // lines without directives are unchanged
183
- index += 1;
184
- }
185
- }
186
-
187
- highlightLines = (0, _parseNumericRange.default)(range);
188
- code = lines.join('\n');
189
- }
66
+ const language = (_parseLanguage = (0, _themeCommon.parseLanguage)(blockClassName)) !== null && _parseLanguage !== void 0 ? _parseLanguage : prism.defaultLanguage;
67
+ const {
68
+ highlightLines,
69
+ code
70
+ } = (0, _themeCommon.parseLines)(content, metastring, language);
190
71
 
191
72
  const handleCopyCode = () => {
192
73
  (0, _copyTextToClipboard.default)(code);
@@ -201,20 +82,18 @@ function CodeBlock({
201
82
  tokens,
202
83
  getLineProps,
203
84
  getTokenProps
204
- }) => <div className={_stylesModule.default.codeBlockContainer}>
85
+ }) => <div className={(0, _clsx.default)(_stylesModule.default.codeBlockContainer, blockClassName)}>
205
86
  {codeBlockTitle && <div style={style} className={_stylesModule.default.codeBlockTitle}>
206
87
  {codeBlockTitle}
207
88
  </div>}
208
89
  <div className={(0, _clsx.default)(_stylesModule.default.codeBlockContent, language)}>
209
90
  <pre
210
91
  /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */
211
- tabIndex={0} className={(0, _clsx.default)(className, _stylesModule.default.codeBlock, 'thin-scrollbar', {
212
- [_stylesModule.default.codeBlockWithTitle]: codeBlockTitle
213
- })} style={style}>
92
+ tabIndex={0} className={(0, _clsx.default)(className, _stylesModule.default.codeBlock, 'thin-scrollbar')} style={style}>
214
93
  <code className={_stylesModule.default.codeBlockLines}>
215
94
  {tokens.map((line, i) => {
216
- if (line.length === 1 && line[0].content === '') {
217
- line[0].content = '\n'; // eslint-disable-line no-param-reassign
95
+ if (line.length === 1 && line[0].content === '\n') {
96
+ line[0].content = '';
218
97
  }
219
98
 
220
99
  const lineProps = getLineProps({
@@ -222,7 +101,7 @@ function CodeBlock({
222
101
  key: i
223
102
  });
224
103
 
225
- if (highlightLines.includes(i + 1)) {
104
+ if (highlightLines.includes(i)) {
226
105
  lineProps.className += ' docusaurus-highlight-code-line';
227
106
  }
228
107
 
@@ -231,12 +110,13 @@ function CodeBlock({
231
110
  token,
232
111
  key
233
112
  })} />)}
113
+ <br />
234
114
  </span>;
235
115
  })}
236
116
  </code>
237
117
  </pre>
238
118
 
239
- <button ref={button} type="button" aria-label={(0, _Translate.translate)({
119
+ <button type="button" aria-label={(0, _Translate.translate)({
240
120
  id: 'theme.CodeBlock.copyButtonAriaLabel',
241
121
  message: 'Copy code to clipboard',
242
122
  description: 'The ARIA label for copy code blocks button'
@@ -7,6 +7,9 @@
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);
12
+ overflow: hidden;
10
13
  }
11
14
 
12
15
  .codeBlockContent {
@@ -16,8 +19,6 @@
16
19
  }
17
20
 
18
21
  .codeBlockTitle {
19
- border-top-left-radius: var(--ifm-global-radius);
20
- border-top-right-radius: var(--ifm-global-radius);
21
22
  border-bottom: 1px solid var(--ifm-color-emphasis-300);
22
23
  font-size: var(--ifm-code-font-size);
23
24
  font-weight: 500;
@@ -25,12 +26,9 @@
25
26
  }
26
27
 
27
28
  .codeBlock {
29
+ margin: 0;
28
30
  padding: 0;
29
- }
30
-
31
- .codeBlockWithTitle {
32
- border-top-left-radius: 0;
33
- border-top-right-radius: 0;
31
+ border-radius: 0;
34
32
  }
35
33
 
36
34
  .copyButton {
@@ -54,11 +52,10 @@
54
52
 
55
53
  .codeBlockLines {
56
54
  font: inherit;
55
+ /*rtl:ignore*/
57
56
  float: left;
58
57
  min-width: 100%;
59
58
  padding: var(--ifm-pre-padding);
60
- display: flex;
61
- flex-direction: column;
62
59
  }
63
60
 
64
61
  @media print {
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = Details;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _clsx = _interopRequireDefault(require("clsx"));
11
+
12
+ var _themeCommon = require("@docusaurus/theme-common");
13
+
14
+ var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ /**
19
+ * Copyright (c) Facebook, Inc. and its affiliates.
20
+ *
21
+ * This source code is licensed under the MIT license found in the
22
+ * LICENSE file in the root directory of this source tree.
23
+ */
24
+ // Should we have a custom details/summary comp in Infima instead of reusing alert classes?
25
+ const InfimaClasses = 'alert alert--info';
26
+
27
+ function Details({ ...props
28
+ }) {
29
+ return <_themeCommon.Details {...props} className={(0, _clsx.default)(InfimaClasses, _stylesModule.default.details, props.className)} />;
30
+ }
@@ -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
+ }