@docusaurus/theme-classic 2.0.0-beta.15d451942 → 2.0.0-beta.16

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 (407) hide show
  1. package/README.md +2 -2
  2. package/lib/admonitions.css +35 -0
  3. package/lib/deps.d.ts +13 -0
  4. package/lib/getSwizzleConfig.js +102 -0
  5. package/lib/index.js +59 -43
  6. package/lib/prism-include-languages.js +9 -5
  7. package/lib/theme-classic.d.ts +755 -0
  8. package/lib/translations.js +40 -34
  9. package/lib/types.d.ts +0 -589
  10. package/lib/validateThemeConfig.js +247 -246
  11. package/lib-next/theme/Admonition/index.js +101 -0
  12. package/lib-next/theme/AnnouncementBar/index.js +10 -22
  13. package/lib-next/theme/AnnouncementBar/styles.module.css +26 -35
  14. package/lib-next/theme/BackToTopButton/index.js +131 -0
  15. package/lib-next/theme/BackToTopButton/styles.module.css +44 -0
  16. package/lib-next/theme/BlogArchivePage/index.js +80 -0
  17. package/lib-next/theme/BlogLayout/index.js +37 -0
  18. package/lib-next/theme/BlogListPage/index.js +18 -29
  19. package/lib-next/theme/BlogListPaginator/index.js +13 -16
  20. package/lib-next/theme/BlogPostAuthor/index.js +40 -0
  21. package/{lib/theme/IconEdit → lib-next/theme/BlogPostAuthor}/styles.module.css +4 -3
  22. package/lib-next/theme/BlogPostAuthors/index.js +44 -0
  23. package/lib-next/theme/BlogPostAuthors/styles.module.css +21 -0
  24. package/lib-next/theme/BlogPostItem/index.js +110 -95
  25. package/lib-next/theme/BlogPostItem/styles.module.css +5 -1
  26. package/lib-next/theme/BlogPostPage/index.js +75 -43
  27. package/lib-next/theme/BlogPostPaginator/index.js +13 -20
  28. package/lib-next/theme/BlogSidebar/index.js +23 -16
  29. package/lib-next/theme/BlogSidebar/styles.module.css +8 -8
  30. package/lib-next/theme/BlogTagsListPage/index.js +16 -66
  31. package/lib-next/theme/BlogTagsPostsPage/index.js +47 -59
  32. package/lib-next/theme/CodeBlock/index.js +73 -162
  33. package/lib-next/theme/CodeBlock/styles.module.css +18 -13
  34. package/lib-next/theme/Details/index.js +21 -0
  35. package/lib-next/theme/Details/styles.module.css +13 -0
  36. package/lib-next/theme/DocBreadcrumbs/index.js +76 -0
  37. package/lib-next/theme/DocBreadcrumbs/styles.module.css +26 -0
  38. package/lib-next/theme/DocCard/index.js +91 -0
  39. package/lib-next/theme/DocCard/styles.module.css +43 -0
  40. package/lib-next/theme/DocCardList/index.js +19 -0
  41. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +54 -0
  42. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  43. package/lib-next/theme/DocItem/index.js +64 -69
  44. package/lib-next/theme/DocItem/styles.module.css +7 -13
  45. package/lib-next/theme/DocItemFooter/index.js +79 -0
  46. package/{lib/theme/Layout/styles.css → lib-next/theme/DocItemFooter/styles.module.css} +8 -11
  47. package/lib-next/theme/DocPage/index.js +59 -33
  48. package/lib-next/theme/DocPage/styles.module.css +14 -26
  49. package/lib-next/theme/DocPaginator/index.js +16 -25
  50. package/lib-next/theme/DocSidebar/index.js +72 -285
  51. package/lib-next/theme/DocSidebar/styles.module.css +5 -36
  52. package/lib-next/theme/DocSidebarItem/index.js +264 -0
  53. package/lib-next/theme/DocSidebarItem/styles.module.css +13 -0
  54. package/lib-next/theme/DocSidebarItems/index.js +28 -0
  55. package/lib-next/theme/DocTagDocListPage/index.js +89 -0
  56. package/lib-next/theme/DocTagsListPage/index.js +35 -0
  57. package/lib-next/theme/DocVersionBadge/index.js +34 -0
  58. package/lib-next/theme/{DocVersionSuggestions → DocVersionBanner}/index.js +54 -36
  59. package/lib-next/theme/EditThisPage/index.js +6 -1
  60. package/lib-next/theme/ErrorPageContent.js +35 -0
  61. package/lib-next/theme/Footer/index.js +105 -41
  62. package/lib-next/theme/Footer/styles.module.css +2 -1
  63. package/lib-next/theme/Heading/index.js +40 -33
  64. package/lib-next/theme/Heading/styles.module.css +27 -2
  65. package/lib-next/theme/IconArrow/index.js +3 -6
  66. package/lib-next/theme/IconClose/index.js +23 -0
  67. package/lib-next/theme/IconEdit/index.js +5 -10
  68. package/lib-next/theme/IconExternalLink/index.js +23 -0
  69. package/{lib/theme/BlogPostItem → lib-next/theme/IconExternalLink}/styles.module.css +4 -6
  70. package/lib-next/theme/IconLanguage/index.js +3 -6
  71. package/lib-next/theme/IconMenu/index.js +8 -9
  72. package/lib-next/theme/LastUpdated/index.js +35 -39
  73. package/lib-next/theme/Layout/index.js +5 -7
  74. package/lib-next/theme/Layout/styles.css +6 -0
  75. package/lib-next/theme/LayoutHead/index.js +27 -32
  76. package/lib-next/theme/LayoutProviders/index.js +21 -10
  77. package/lib-next/theme/Logo/index.js +21 -16
  78. package/lib-next/theme/MDXComponents/index.js +45 -30
  79. package/lib-next/theme/{hooks → MDXComponents}/styles.css +7 -2
  80. package/lib-next/theme/MDXPage/index.js +22 -28
  81. package/{lib/theme/LastUpdated → lib-next/theme/MDXPage}/styles.module.css +2 -2
  82. package/lib-next/theme/Navbar/index.js +199 -64
  83. package/lib-next/theme/Navbar/styles.module.css +11 -4
  84. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +36 -185
  85. package/lib-next/theme/NavbarItem/DocNavbarItem.js +31 -14
  86. package/lib-next/theme/NavbarItem/DocSidebarNavbarItem.js +73 -0
  87. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +38 -24
  88. package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +4 -1
  89. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +156 -0
  90. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +12 -13
  91. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  92. package/lib-next/theme/NavbarItem/NavbarNavLink.js +70 -0
  93. package/lib-next/theme/NavbarItem/index.js +27 -15
  94. package/lib-next/theme/{UserPreferencesContext.js → NavbarItem/utils.js} +3 -3
  95. package/lib-next/theme/NotFound.js +7 -6
  96. package/lib-next/theme/PaginatorNavLink/index.js +17 -0
  97. package/lib-next/theme/SearchBar.js +1 -1
  98. package/lib-next/theme/SearchMetadata/index.js +25 -0
  99. package/lib-next/theme/Seo/index.js +11 -7
  100. package/lib-next/theme/SkipToContent/index.js +9 -8
  101. package/lib-next/theme/SkipToContent/styles.module.css +8 -3
  102. package/lib-next/theme/TOC/index.js +12 -39
  103. package/lib-next/theme/TOC/styles.module.css +2 -2
  104. package/lib-next/theme/TOCCollapsible/index.js +54 -0
  105. package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
  106. package/lib-next/theme/TOCInline/index.js +10 -31
  107. package/lib-next/theme/TOCItems/index.js +85 -0
  108. package/lib-next/theme/TabItem/index.js +1 -4
  109. package/lib-next/theme/Tabs/__tests__/index.test.js +146 -0
  110. package/lib-next/theme/Tabs/index.js +108 -50
  111. package/lib-next/theme/Tabs/styles.module.css +0 -13
  112. package/lib-next/theme/Tag/index.js +24 -0
  113. package/lib-next/theme/Tag/styles.module.css +70 -0
  114. package/lib-next/theme/TagsListByLetter/index.js +40 -0
  115. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  116. package/lib-next/theme/TagsListInline/index.js +31 -0
  117. package/lib-next/theme/TagsListInline/styles.module.css +15 -0
  118. package/lib-next/theme/ThemedImage/index.js +9 -13
  119. package/lib-next/theme/ThemedImage/styles.module.css +9 -2
  120. package/lib-next/theme/Toggle/index.js +65 -60
  121. package/lib-next/theme/Toggle/styles.module.css +30 -38
  122. package/lib-next/theme/prism-include-languages.js +17 -15
  123. package/package.json +31 -30
  124. package/src/admonitions.css +35 -0
  125. package/src/deps.d.ts +13 -0
  126. package/src/getSwizzleConfig.ts +101 -0
  127. package/src/index.ts +68 -66
  128. package/{lib-next/prism-include-languages.js → src/prism-include-languages.ts} +0 -0
  129. package/src/theme/Admonition/index.tsx +106 -0
  130. package/src/theme/AnnouncementBar/index.tsx +11 -20
  131. package/src/theme/AnnouncementBar/styles.module.css +26 -35
  132. package/src/theme/BackToTopButton/index.tsx +143 -0
  133. package/src/theme/BackToTopButton/styles.module.css +44 -0
  134. package/src/theme/BlogArchivePage/index.tsx +91 -0
  135. package/src/theme/BlogLayout/index.tsx +42 -0
  136. package/src/theme/BlogListPage/index.tsx +19 -28
  137. package/src/theme/BlogListPaginator/index.tsx +13 -15
  138. package/src/theme/BlogPostAuthor/index.tsx +44 -0
  139. package/src/theme/{LastUpdated → BlogPostAuthor}/styles.module.css +4 -2
  140. package/src/theme/BlogPostAuthors/index.tsx +49 -0
  141. package/src/theme/BlogPostAuthors/styles.module.css +21 -0
  142. package/src/theme/BlogPostItem/index.tsx +101 -91
  143. package/src/theme/BlogPostItem/styles.module.css +5 -1
  144. package/src/theme/BlogPostPage/index.tsx +77 -42
  145. package/src/theme/BlogPostPaginator/index.tsx +13 -19
  146. package/src/theme/BlogSidebar/index.tsx +23 -16
  147. package/src/theme/BlogSidebar/styles.module.css +8 -8
  148. package/src/theme/BlogTagsListPage/index.tsx +16 -66
  149. package/src/theme/BlogTagsPostsPage/index.tsx +43 -61
  150. package/src/theme/CodeBlock/index.tsx +77 -164
  151. package/src/theme/CodeBlock/styles.module.css +18 -13
  152. package/src/theme/Details/index.tsx +25 -0
  153. package/src/theme/Details/styles.module.css +13 -0
  154. package/src/theme/DocBreadcrumbs/index.tsx +91 -0
  155. package/src/theme/DocBreadcrumbs/styles.module.css +26 -0
  156. package/src/theme/DocCard/index.tsx +109 -0
  157. package/src/theme/DocCard/styles.module.css +43 -0
  158. package/src/theme/DocCardList/index.tsx +27 -0
  159. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +59 -0
  160. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  161. package/src/theme/DocItem/index.tsx +66 -68
  162. package/src/theme/DocItem/styles.module.css +7 -13
  163. package/src/theme/DocItemFooter/index.tsx +91 -0
  164. package/src/theme/DocItemFooter/styles.module.css +18 -0
  165. package/src/theme/DocPage/index.tsx +58 -34
  166. package/src/theme/DocPage/styles.module.css +14 -26
  167. package/src/theme/DocPaginator/index.tsx +16 -24
  168. package/src/theme/DocSidebar/index.tsx +83 -297
  169. package/src/theme/DocSidebar/styles.module.css +5 -36
  170. package/src/theme/DocSidebarItem/index.tsx +283 -0
  171. package/src/theme/DocSidebarItem/styles.module.css +13 -0
  172. package/src/theme/DocSidebarItems/index.tsx +32 -0
  173. package/src/theme/DocTagDocListPage/index.tsx +89 -0
  174. package/src/theme/DocTagsListPage/index.tsx +39 -0
  175. package/src/theme/DocVersionBadge/index.tsx +35 -0
  176. package/src/theme/{DocVersionSuggestions → DocVersionBanner}/index.tsx +77 -47
  177. package/src/theme/EditThisPage/index.tsx +6 -1
  178. package/src/theme/ErrorPageContent.tsx +41 -0
  179. package/src/theme/Footer/index.tsx +119 -45
  180. package/src/theme/Footer/styles.module.css +2 -1
  181. package/src/theme/Heading/index.tsx +41 -35
  182. package/src/theme/Heading/styles.module.css +27 -2
  183. package/src/theme/IconArrow/index.tsx +3 -5
  184. package/src/theme/IconClose/index.tsx +26 -0
  185. package/src/theme/IconEdit/index.tsx +8 -9
  186. package/src/theme/IconExternalLink/index.tsx +30 -0
  187. package/{lib/theme/Heading → src/theme/IconExternalLink}/styles.module.css +4 -2
  188. package/src/theme/IconLanguage/index.tsx +4 -6
  189. package/src/theme/IconMenu/index.tsx +4 -9
  190. package/src/theme/LastUpdated/index.tsx +35 -39
  191. package/src/theme/Layout/index.tsx +5 -6
  192. package/src/theme/Layout/styles.css +6 -0
  193. package/src/theme/LayoutHead/index.tsx +26 -25
  194. package/src/theme/LayoutProviders/index.tsx +21 -10
  195. package/src/theme/Logo/index.tsx +21 -15
  196. package/src/theme/MDXComponents/index.tsx +56 -32
  197. package/{lib/theme/hooks → src/theme/MDXComponents}/styles.css +7 -2
  198. package/src/theme/MDXPage/index.tsx +23 -28
  199. package/{lib-next/theme/LastUpdated → src/theme/MDXPage}/styles.module.css +2 -2
  200. package/src/theme/Navbar/index.tsx +208 -68
  201. package/src/theme/Navbar/styles.module.css +11 -4
  202. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +37 -194
  203. package/src/theme/NavbarItem/DocNavbarItem.tsx +33 -15
  204. package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +84 -0
  205. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +44 -28
  206. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  207. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +181 -0
  208. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +16 -10
  209. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  210. package/src/theme/NavbarItem/NavbarNavLink.tsx +68 -0
  211. package/src/theme/NavbarItem/index.tsx +42 -19
  212. package/src/theme/NavbarItem/utils.ts +10 -0
  213. package/src/theme/NotFound.tsx +7 -5
  214. package/src/theme/PaginatorNavLink/index.tsx +20 -0
  215. package/src/theme/SearchBar.tsx +2 -1
  216. package/src/theme/SearchMetadata/index.tsx +34 -0
  217. package/src/theme/Seo/index.tsx +7 -4
  218. package/src/theme/SkipToContent/index.tsx +9 -8
  219. package/src/theme/SkipToContent/styles.module.css +8 -3
  220. package/src/theme/TOC/index.tsx +13 -44
  221. package/src/theme/TOC/styles.module.css +2 -2
  222. package/src/theme/TOCCollapsible/index.tsx +58 -0
  223. package/src/theme/TOCCollapsible/styles.module.css +50 -0
  224. package/src/theme/TOCInline/index.tsx +14 -35
  225. package/src/theme/TOCItems/index.tsx +100 -0
  226. package/src/theme/TabItem/index.tsx +5 -3
  227. package/src/theme/Tabs/index.tsx +115 -56
  228. package/src/theme/Tabs/styles.module.css +0 -13
  229. package/src/theme/Tag/index.tsx +29 -0
  230. package/src/theme/Tag/styles.module.css +70 -0
  231. package/src/theme/TagsListByLetter/index.tsx +43 -0
  232. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  233. package/src/theme/TagsListInline/index.tsx +35 -0
  234. package/src/theme/TagsListInline/styles.module.css +15 -0
  235. package/src/theme/ThemedImage/index.tsx +10 -12
  236. package/src/theme/ThemedImage/styles.module.css +9 -2
  237. package/src/theme/Toggle/index.tsx +66 -62
  238. package/src/theme/Toggle/styles.module.css +30 -38
  239. package/src/theme/prism-include-languages.ts +20 -15
  240. package/src/theme-classic.d.ts +755 -0
  241. package/src/translations.ts +74 -54
  242. package/src/types.d.ts +0 -589
  243. package/{lib-next/validateThemeConfig.js → src/validateThemeConfig.ts} +184 -104
  244. package/babel.config.js +0 -35
  245. package/codeTranslations/README.md +0 -20
  246. package/codeTranslations/ar.json +0 -55
  247. package/codeTranslations/base.json +0 -108
  248. package/codeTranslations/da.json +0 -55
  249. package/codeTranslations/de.json +0 -55
  250. package/codeTranslations/es.json +0 -55
  251. package/codeTranslations/fa.json +0 -55
  252. package/codeTranslations/fil.json +0 -55
  253. package/codeTranslations/fr.json +0 -55
  254. package/codeTranslations/he.json +0 -55
  255. package/codeTranslations/hi.json +0 -55
  256. package/codeTranslations/ja.json +0 -55
  257. package/codeTranslations/ko.json +0 -55
  258. package/codeTranslations/pl.json +0 -55
  259. package/codeTranslations/pt-BR.json +0 -55
  260. package/codeTranslations/pt-PT.json +0 -55
  261. package/codeTranslations/ru.json +0 -55
  262. package/codeTranslations/tr.json +0 -55
  263. package/codeTranslations/vi.json +0 -55
  264. package/codeTranslations/zh-Hans.json +0 -55
  265. package/codeTranslations/zh-Hant.json +0 -55
  266. package/lib/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  267. package/lib/__tests__/translations.test.js +0 -112
  268. package/lib/__tests__/validateThemeConfig.test.js +0 -333
  269. package/lib/theme/AnnouncementBar/index.js +0 -74
  270. package/lib/theme/AnnouncementBar/styles.module.css +0 -72
  271. package/lib/theme/BlogListPage/index.js +0 -71
  272. package/lib/theme/BlogListPaginator/index.js +0 -63
  273. package/lib/theme/BlogPostItem/index.js +0 -152
  274. package/lib/theme/BlogPostPage/index.js +0 -75
  275. package/lib/theme/BlogPostPaginator/index.js +0 -64
  276. package/lib/theme/BlogSidebar/index.js +0 -43
  277. package/lib/theme/BlogSidebar/styles.module.css +0 -46
  278. package/lib/theme/BlogTagsListPage/index.js +0 -81
  279. package/lib/theme/BlogTagsPostsPage/index.js +0 -104
  280. package/lib/theme/CodeBlock/index.js +0 -253
  281. package/lib/theme/CodeBlock/styles.module.css +0 -71
  282. package/lib/theme/DocItem/index.js +0 -120
  283. package/lib/theme/DocItem/styles.module.css +0 -28
  284. package/lib/theme/DocPage/index.js +0 -141
  285. package/lib/theme/DocPage/styles.module.css +0 -98
  286. package/lib/theme/DocPaginator/index.js +0 -63
  287. package/lib/theme/DocSidebar/index.js +0 -307
  288. package/lib/theme/DocSidebar/styles.module.css +0 -138
  289. package/lib/theme/DocVersionSuggestions/index.js +0 -111
  290. package/lib/theme/EditThisPage/index.js +0 -31
  291. package/lib/theme/Footer/index.js +0 -108
  292. package/lib/theme/Footer/styles.module.css +0 -15
  293. package/lib/theme/Heading/index.js +0 -60
  294. package/lib/theme/Heading/styles.css +0 -23
  295. package/lib/theme/IconArrow/index.js +0 -28
  296. package/lib/theme/IconEdit/index.js +0 -34
  297. package/lib/theme/IconLanguage/index.js +0 -29
  298. package/lib/theme/IconMenu/index.js +0 -31
  299. package/lib/theme/LastUpdated/index.js +0 -65
  300. package/lib/theme/Layout/index.js +0 -64
  301. package/lib/theme/LayoutHead/index.js +0 -144
  302. package/lib/theme/LayoutProviders/index.js +0 -34
  303. package/lib/theme/Logo/index.js +0 -59
  304. package/lib/theme/MDXComponents/index.js +0 -65
  305. package/lib/theme/MDXPage/index.js +0 -68
  306. package/lib/theme/Navbar/index.js +0 -147
  307. package/lib/theme/Navbar/styles.module.css +0 -20
  308. package/lib/theme/NavbarItem/DefaultNavbarItem.js +0 -195
  309. package/lib/theme/NavbarItem/DocNavbarItem.js +0 -55
  310. package/lib/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +0 -75
  311. package/lib/theme/NavbarItem/DocsVersionNavbarItem.js +0 -43
  312. package/lib/theme/NavbarItem/LocaleDropdownNavbarItem.js +0 -72
  313. package/lib/theme/NavbarItem/SearchNavbarItem.js +0 -28
  314. package/lib/theme/NavbarItem/index.js +0 -54
  315. package/lib/theme/NotFound.js +0 -50
  316. package/lib/theme/SearchBar.js +0 -15
  317. package/lib/theme/SearchMetadatas/index.js +0 -33
  318. package/lib/theme/Seo/index.js +0 -49
  319. package/lib/theme/SkipToContent/index.js +0 -61
  320. package/lib/theme/SkipToContent/styles.module.css +0 -16
  321. package/lib/theme/TOC/index.js +0 -59
  322. package/lib/theme/TOC/styles.module.css +0 -23
  323. package/lib/theme/TOCInline/index.js +0 -53
  324. package/lib/theme/TOCInline/styles.module.css +0 -12
  325. package/lib/theme/TabItem/index.js +0 -32
  326. package/lib/theme/Tabs/index.js +0 -150
  327. package/lib/theme/Tabs/styles.module.css +0 -23
  328. package/lib/theme/ThemeContext.js +0 -21
  329. package/lib/theme/ThemeProvider/index.js +0 -38
  330. package/lib/theme/ThemedImage/index.js +0 -48
  331. package/lib/theme/ThemedImage/styles.module.css +0 -11
  332. package/lib/theme/Toggle/index.js +0 -106
  333. package/lib/theme/Toggle/styles.module.css +0 -114
  334. package/lib/theme/UserPreferencesContext.js +0 -18
  335. package/lib/theme/UserPreferencesProvider/index.js +0 -44
  336. package/lib/theme/hooks/useAnnouncementBar.js +0 -63
  337. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  338. package/lib/theme/hooks/useDocs.js +0 -18
  339. package/lib/theme/hooks/useHideableNavbar.js +0 -92
  340. package/lib/theme/hooks/useKeyboardNavigation.js +0 -45
  341. package/lib/theme/hooks/useLocationHash.js +0 -28
  342. package/lib/theme/hooks/useLockBodyScroll.js +0 -26
  343. package/lib/theme/hooks/usePrismTheme.js +0 -36
  344. package/lib/theme/hooks/useScrollPosition.js +0 -49
  345. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  346. package/lib/theme/hooks/useTabGroupChoice.js +0 -53
  347. package/lib/theme/hooks/useTheme.js +0 -99
  348. package/lib/theme/hooks/useThemeContext.js +0 -31
  349. package/lib/theme/hooks/useUserPreferencesContext.js +0 -31
  350. package/lib/theme/hooks/useWindowSize.js +0 -55
  351. package/lib/theme/prism-include-languages.js +0 -39
  352. package/lib-next/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  353. package/lib-next/__tests__/translations.test.js +0 -128
  354. package/lib-next/__tests__/validateThemeConfig.test.js +0 -333
  355. package/lib-next/index.js +0 -198
  356. package/lib-next/theme/Heading/styles.css +0 -23
  357. package/lib-next/theme/SearchMetadatas/index.js +0 -20
  358. package/lib-next/theme/ThemeContext.js +0 -9
  359. package/lib-next/theme/ThemeProvider/index.js +0 -25
  360. package/lib-next/theme/UserPreferencesProvider/index.js +0 -28
  361. package/lib-next/theme/hooks/useAnnouncementBar.js +0 -49
  362. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  363. package/lib-next/theme/hooks/useDocs.js +0 -10
  364. package/lib-next/theme/hooks/useHideableNavbar.js +0 -79
  365. package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
  366. package/lib-next/theme/hooks/useLocationHash.js +0 -20
  367. package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
  368. package/lib-next/theme/hooks/usePrismTheme.js +0 -20
  369. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  370. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  371. package/lib-next/theme/hooks/useTabGroupChoice.js +0 -41
  372. package/lib-next/theme/hooks/useTheme.js +0 -82
  373. package/lib-next/theme/hooks/useThemeContext.js +0 -22
  374. package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
  375. package/lib-next/theme/hooks/useWindowSize.js +0 -45
  376. package/lib-next/translations.js +0 -145
  377. package/lib-next/types.d.ts +0 -600
  378. package/src/__tests__/__snapshots__/translations.test.ts.snap +0 -116
  379. package/src/__tests__/translations.test.ts +0 -116
  380. package/src/__tests__/validateThemeConfig.test.js +0 -333
  381. package/src/prism-include-languages.js +0 -11
  382. package/src/theme/Heading/styles.css +0 -23
  383. package/src/theme/SearchMetadatas/index.tsx +0 -28
  384. package/src/theme/ThemeContext.ts +0 -15
  385. package/src/theme/ThemeProvider/index.tsx +0 -24
  386. package/src/theme/UserPreferencesContext.ts +0 -12
  387. package/src/theme/UserPreferencesProvider/index.tsx +0 -32
  388. package/src/theme/hooks/styles.css +0 -10
  389. package/src/theme/hooks/useAnnouncementBar.ts +0 -58
  390. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  391. package/src/theme/hooks/useDocs.ts +0 -11
  392. package/src/theme/hooks/useHideableNavbar.ts +0 -85
  393. package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
  394. package/src/theme/hooks/useLocationHash.ts +0 -25
  395. package/src/theme/hooks/useLockBodyScroll.ts +0 -20
  396. package/src/theme/hooks/usePrismTheme.ts +0 -22
  397. package/src/theme/hooks/useScrollPosition.ts +0 -45
  398. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  399. package/src/theme/hooks/useTabGroupChoice.ts +0 -46
  400. package/src/theme/hooks/useTheme.ts +0 -92
  401. package/src/theme/hooks/useThemeContext.ts +0 -23
  402. package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
  403. package/src/theme/hooks/useWindowSize.ts +0 -51
  404. package/src/validateThemeConfig.js +0 -317
  405. package/tsconfig.json +0 -12
  406. package/update-code-translations.js +0 -239
  407. package/update-code-translations.test.js +0 -33
@@ -1,53 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = require("react");
9
-
10
- var _themeCommon = require("@docusaurus/theme-common");
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
- const TAB_CHOICE_PREFIX = 'docusaurus.tab.';
19
-
20
- const useTabGroupChoice = () => {
21
- const [tabGroupChoices, setChoices] = (0, _react.useState)({});
22
- const setChoiceSyncWithLocalStorage = (0, _react.useCallback)((groupId, newChoice) => {
23
- (0, _themeCommon.createStorageSlot)(`${TAB_CHOICE_PREFIX}${groupId}`).set(newChoice);
24
- }, []);
25
- (0, _react.useEffect)(() => {
26
- try {
27
- const localStorageChoices = {};
28
-
29
- for (const storageKey of (0, _themeCommon.listStorageKeys)()) {
30
- if (storageKey.startsWith(TAB_CHOICE_PREFIX)) {
31
- const groupId = storageKey.substring(TAB_CHOICE_PREFIX.length);
32
- localStorageChoices[groupId] = (0, _themeCommon.createStorageSlot)(storageKey).get();
33
- }
34
- }
35
-
36
- setChoices(localStorageChoices);
37
- } catch (err) {
38
- console.error(err);
39
- }
40
- }, []);
41
- return {
42
- tabGroupChoices,
43
- setTabGroupChoices: (groupId, newChoice) => {
44
- setChoices(oldChoices => ({ ...oldChoices,
45
- [groupId]: newChoice
46
- }));
47
- setChoiceSyncWithLocalStorage(groupId, newChoice);
48
- }
49
- };
50
- };
51
-
52
- var _default = useTabGroupChoice;
53
- exports.default = _default;
@@ -1,99 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = require("react");
9
-
10
- var _ExecutionEnvironment = _interopRequireDefault(require("@docusaurus/ExecutionEnvironment"));
11
-
12
- var _themeCommon = require("@docusaurus/theme-common");
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- /**
17
- * Copyright (c) Facebook, Inc. and its affiliates.
18
- *
19
- * This source code is licensed under the MIT license found in the
20
- * LICENSE file in the root directory of this source tree.
21
- */
22
- const ThemeStorage = (0, _themeCommon.createStorageSlot)('theme');
23
- const themes = {
24
- light: 'light',
25
- dark: 'dark'
26
- };
27
-
28
- // Ensure to always return a valid theme even if input is invalid
29
- const coerceToTheme = theme => {
30
- return theme === themes.dark ? themes.dark : themes.light;
31
- };
32
-
33
- const getInitialTheme = defaultMode => {
34
- if (!_ExecutionEnvironment.default.canUseDOM) {
35
- return coerceToTheme(defaultMode);
36
- }
37
-
38
- return coerceToTheme(document.documentElement.getAttribute('data-theme'));
39
- };
40
-
41
- const storeTheme = newTheme => {
42
- (0, _themeCommon.createStorageSlot)('theme').set(coerceToTheme(newTheme));
43
- };
44
-
45
- const useTheme = () => {
46
- const {
47
- colorMode: {
48
- defaultMode,
49
- disableSwitch,
50
- respectPrefersColorScheme
51
- }
52
- } = (0, _themeCommon.useThemeConfig)();
53
- const [theme, setTheme] = (0, _react.useState)(getInitialTheme(defaultMode));
54
- const setLightTheme = (0, _react.useCallback)(() => {
55
- setTheme(themes.light);
56
- storeTheme(themes.light);
57
- }, []);
58
- const setDarkTheme = (0, _react.useCallback)(() => {
59
- setTheme(themes.dark);
60
- storeTheme(themes.dark);
61
- }, []);
62
- (0, _react.useEffect)(() => {
63
- document.documentElement.setAttribute('data-theme', coerceToTheme(theme));
64
- }, [theme]);
65
- (0, _react.useEffect)(() => {
66
- if (disableSwitch) {
67
- return;
68
- }
69
-
70
- try {
71
- const storedTheme = ThemeStorage.get();
72
-
73
- if (storedTheme !== null) {
74
- setTheme(coerceToTheme(storedTheme));
75
- }
76
- } catch (err) {
77
- console.error(err);
78
- }
79
- }, [setTheme]);
80
- (0, _react.useEffect)(() => {
81
- if (disableSwitch && !respectPrefersColorScheme) {
82
- return;
83
- }
84
-
85
- window.matchMedia('(prefers-color-scheme: dark)').addListener(({
86
- matches
87
- }) => {
88
- setTheme(matches ? themes.dark : themes.light);
89
- });
90
- }, []);
91
- return {
92
- isDarkTheme: theme === themes.dark,
93
- setLightTheme,
94
- setDarkTheme
95
- };
96
- };
97
-
98
- var _default = useTheme;
99
- exports.default = _default;
@@ -1,31 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = require("react");
9
-
10
- var _ThemeContext = _interopRequireDefault(require("@theme/ThemeContext"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- /**
15
- * Copyright (c) Facebook, Inc. and its affiliates.
16
- *
17
- * This source code is licensed under the MIT license found in the
18
- * LICENSE file in the root directory of this source tree.
19
- */
20
- function useThemeContext() {
21
- const context = (0, _react.useContext)(_ThemeContext.default);
22
-
23
- if (context == null) {
24
- throw new Error('`useThemeContext` is used outside of `Layout` Component. See https://docusaurus.io/docs/api/themes/configuration#usethemecontext.');
25
- }
26
-
27
- return context;
28
- }
29
-
30
- var _default = useThemeContext;
31
- exports.default = _default;
@@ -1,31 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = require("react");
9
-
10
- var _UserPreferencesContext = _interopRequireDefault(require("@theme/UserPreferencesContext"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- /**
15
- * Copyright (c) Facebook, Inc. and its affiliates.
16
- *
17
- * This source code is licensed under the MIT license found in the
18
- * LICENSE file in the root directory of this source tree.
19
- */
20
- function useUserPreferencesContext() {
21
- const context = (0, _react.useContext)(_UserPreferencesContext.default);
22
-
23
- if (context == null) {
24
- throw new Error('`useUserPreferencesContext` is used outside of `Layout` Component.');
25
- }
26
-
27
- return context;
28
- }
29
-
30
- var _default = useUserPreferencesContext;
31
- exports.default = _default;
@@ -1,55 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.windowSizes = void 0;
7
-
8
- var _react = require("react");
9
-
10
- var _ExecutionEnvironment = _interopRequireDefault(require("@docusaurus/ExecutionEnvironment"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- /**
15
- * Copyright (c) Facebook, Inc. and its affiliates.
16
- *
17
- * This source code is licensed under the MIT license found in the
18
- * LICENSE file in the root directory of this source tree.
19
- */
20
- const desktopThresholdWidth = 996;
21
- const windowSizes = {
22
- desktop: 'desktop',
23
- mobile: 'mobile'
24
- };
25
- exports.windowSizes = windowSizes;
26
-
27
- function useWindowSize() {
28
- const isClient = _ExecutionEnvironment.default.canUseDOM;
29
-
30
- function getSize() {
31
- if (!isClient) {
32
- return undefined;
33
- }
34
-
35
- return window.innerWidth > desktopThresholdWidth ? windowSizes.desktop : windowSizes.mobile;
36
- }
37
-
38
- const [windowSize, setWindowSize] = (0, _react.useState)(getSize);
39
- (0, _react.useEffect)(() => {
40
- if (!isClient) {
41
- return undefined;
42
- }
43
-
44
- function handleResize() {
45
- setWindowSize(getSize());
46
- }
47
-
48
- window.addEventListener('resize', handleResize);
49
- return () => window.removeEventListener('resize', handleResize);
50
- }, []);
51
- return windowSize;
52
- }
53
-
54
- var _default = useWindowSize;
55
- exports.default = _default;
@@ -1,39 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _ExecutionEnvironment = _interopRequireDefault(require("@docusaurus/ExecutionEnvironment"));
9
-
10
- var _docusaurus = _interopRequireDefault(require("@generated/docusaurus.config"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- /**
15
- * Copyright (c) Facebook, Inc. and its affiliates.
16
- *
17
- * This source code is licensed under the MIT license found in the
18
- * LICENSE file in the root directory of this source tree.
19
- */
20
- const prismIncludeLanguages = PrismObject => {
21
- if (_ExecutionEnvironment.default.canUseDOM) {
22
- const {
23
- themeConfig: {
24
- prism: {
25
- additionalLanguages = []
26
- } = {}
27
- }
28
- } = _docusaurus.default;
29
- window.Prism = PrismObject;
30
- additionalLanguages.forEach(lang => {
31
- require(`prismjs/components/prism-${lang}`); // eslint-disable-line
32
-
33
- });
34
- delete window.Prism;
35
- }
36
- };
37
-
38
- var _default = prismIncludeLanguages;
39
- exports.default = _default;
@@ -1,116 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`getTranslationFiles should return translation files matching snapshot 1`] = `
4
- Array [
5
- Object {
6
- "content": Object {
7
- "item.label.Dropdown": Object {
8
- "description": "Navbar item with label Dropdown",
9
- "message": "Dropdown",
10
- },
11
- "item.label.Dropdown item 1": Object {
12
- "description": "Navbar item with label Dropdown item 1",
13
- "message": "Dropdown item 1",
14
- },
15
- "item.label.Dropdown item 2": Object {
16
- "description": "Navbar item with label Dropdown item 2",
17
- "message": "Dropdown item 2",
18
- },
19
- "title": Object {
20
- "description": "The title in the navbar",
21
- "message": "navbar title",
22
- },
23
- },
24
- "path": "navbar",
25
- },
26
- Object {
27
- "content": Object {
28
- "copyright": Object {
29
- "description": "The footer copyright",
30
- "message": "Copyright FB",
31
- },
32
- "link.item.label.Link 1": Object {
33
- "description": "The label of footer link with label=Link 1 linking to https://facebook.com",
34
- "message": "Link 1",
35
- },
36
- "link.item.label.Link 2": Object {
37
- "description": "The label of footer link with label=Link 2 linking to https://facebook.com",
38
- "message": "Link 2",
39
- },
40
- "link.item.label.Link 3": Object {
41
- "description": "The label of footer link with label=Link 3 linking to https://facebook.com",
42
- "message": "Link 3",
43
- },
44
- "link.title.Footer link column 1": Object {
45
- "description": "The title of the footer links column with title=Footer link column 1 in the footer",
46
- "message": "Footer link column 1",
47
- },
48
- "link.title.Footer link column 2": Object {
49
- "description": "The title of the footer links column with title=Footer link column 2 in the footer",
50
- "message": "Footer link column 2",
51
- },
52
- },
53
- "path": "footer",
54
- },
55
- ]
56
- `;
57
-
58
- exports[`translateThemeConfig should return translated themeConfig matching snapshot 1`] = `
59
- Object {
60
- "announcementBar": Object {},
61
- "colorMode": Object {},
62
- "docs": Object {
63
- "versionPersistence": "none",
64
- },
65
- "footer": Object {
66
- "copyright": "Copyright FB (translated)",
67
- "links": Array [
68
- Object {
69
- "items": Array [
70
- Object {
71
- "label": "Link 1 (translated)",
72
- "to": "https://facebook.com",
73
- },
74
- Object {
75
- "label": "Link 2 (translated)",
76
- "to": "https://facebook.com",
77
- },
78
- ],
79
- "title": "Footer link column 1 (translated)",
80
- },
81
- Object {
82
- "items": Array [
83
- Object {
84
- "label": "Link 3 (translated)",
85
- "to": "https://facebook.com",
86
- },
87
- ],
88
- "title": "Footer link column 2 (translated)",
89
- },
90
- ],
91
- "style": "light",
92
- },
93
- "hideableSidebar": true,
94
- "navbar": Object {
95
- "hideOnScroll": false,
96
- "items": Array [
97
- Object {
98
- "items": Array [
99
- Object {
100
- "items": Array [],
101
- "label": "Dropdown item 1 (translated)",
102
- },
103
- Object {
104
- "items": Array [],
105
- "label": "Dropdown item 2 (translated)",
106
- },
107
- ],
108
- "label": "Dropdown (translated)",
109
- },
110
- ],
111
- "style": "dark",
112
- "title": "navbar title (translated)",
113
- },
114
- "prism": Object {},
115
- }
116
- `;
@@ -1,128 +0,0 @@
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 {getTranslationFiles, translateThemeConfig} from '../translations';
8
- import {updateTranslationFileMessages} from '@docusaurus/utils';
9
- const ThemeConfigSample = {
10
- colorMode: {},
11
- announcementBar: {},
12
- prism: {},
13
- docs: {
14
- versionPersistence: 'none',
15
- },
16
- hideableSidebar: true,
17
- navbar: {
18
- title: 'navbar title',
19
- style: 'dark',
20
- hideOnScroll: false,
21
- items: [
22
- {
23
- label: 'Dropdown',
24
- items: [
25
- {
26
- label: 'Dropdown item 1',
27
- items: [],
28
- },
29
- {
30
- label: 'Dropdown item 2',
31
- items: [],
32
- },
33
- ],
34
- },
35
- ],
36
- },
37
- footer: {
38
- copyright: 'Copyright FB',
39
- style: 'light',
40
- links: [
41
- {
42
- title: 'Footer link column 1',
43
- items: [
44
- {
45
- label: 'Link 1',
46
- to: 'https://facebook.com',
47
- },
48
- {
49
- label: 'Link 2',
50
- to: 'https://facebook.com',
51
- },
52
- ],
53
- },
54
- {
55
- title: 'Footer link column 2',
56
- items: [
57
- {
58
- label: 'Link 3',
59
- to: 'https://facebook.com',
60
- },
61
- ],
62
- },
63
- ],
64
- },
65
- };
66
-
67
- function getSampleTranslationFiles() {
68
- return getTranslationFiles({
69
- themeConfig: ThemeConfigSample,
70
- });
71
- }
72
-
73
- function getSampleTranslationFilesTranslated() {
74
- const translationFiles = getSampleTranslationFiles();
75
- return translationFiles.map((translationFile) =>
76
- updateTranslationFileMessages(
77
- translationFile,
78
- (message) => `${message} (translated)`,
79
- ),
80
- );
81
- }
82
-
83
- describe('getTranslationFiles', () => {
84
- test('should return translation files matching snapshot', () => {
85
- expect(getSampleTranslationFiles()).toMatchSnapshot();
86
- });
87
- });
88
- describe('translateThemeConfig', () => {
89
- test('should not translate anything if translation files are untranslated', () => {
90
- const translationFiles = getSampleTranslationFiles();
91
- expect(
92
- translateThemeConfig({
93
- themeConfig: ThemeConfigSample,
94
- translationFiles,
95
- }),
96
- ).toEqual(ThemeConfigSample);
97
- });
98
- test('should return translated themeConfig matching snapshot', () => {
99
- const translationFiles = getSampleTranslationFilesTranslated();
100
- expect(
101
- translateThemeConfig({
102
- themeConfig: ThemeConfigSample,
103
- translationFiles,
104
- }),
105
- ).toMatchSnapshot();
106
- });
107
- });
108
- describe('getTranslationFiles and translateThemeConfig isomorphism', () => {
109
- function verifyIsomorphism(themeConfig) {
110
- const translationFiles = getTranslationFiles({
111
- themeConfig,
112
- });
113
- const translatedThemeConfig = translateThemeConfig({
114
- themeConfig,
115
- translationFiles,
116
- });
117
- expect(translatedThemeConfig).toEqual(themeConfig);
118
- }
119
-
120
- test('should be verified for main sample', () => {
121
- verifyIsomorphism(ThemeConfigSample);
122
- }); // undefined footer should not make the translation code crash
123
- // See https://github.com/facebook/docusaurus/issues/3936
124
-
125
- test('should be verified for sample without footer', () => {
126
- verifyIsomorphism({...ThemeConfigSample, footer: undefined});
127
- });
128
- });