@docusaurus/theme-classic 2.0.0-beta.0f144213d → 2.0.0-beta.11

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 (359) 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 +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 -54
  38. package/lib/theme/DocPage/styles.module.css +5 -0
  39. package/lib/theme/DocPaginator/index.js +6 -7
  40. package/lib/theme/DocSidebar/index.js +52 -224
  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/DocVersionBanner/index.js +12 -10
  48. package/lib/theme/EditThisPage/index.js +3 -1
  49. package/lib/theme/ErrorPageContent.js +43 -0
  50. package/lib/theme/Footer/index.js +8 -4
  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 +7 -3
  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 +5 -2
  80. package/lib/theme/TOC/index.js +9 -29
  81. package/lib/theme/TOC/styles.module.css +1 -1
  82. package/lib/theme/TOCCollapsible/index.js +53 -0
  83. package/lib/theme/TOCCollapsible/styles.module.css +50 -0
  84. package/lib/theme/TOCInline/index.js +7 -27
  85. package/lib/theme/TOCItems/index.js +78 -0
  86. package/lib/theme/Tabs/__tests__/index.test.js +123 -0
  87. package/lib/theme/Tabs/index.js +73 -50
  88. package/lib/theme/Tabs/styles.module.css +0 -13
  89. package/lib/theme/Tag/index.js +40 -0
  90. package/lib/theme/Tag/styles.module.css +70 -0
  91. package/lib/theme/TagsListByLetter/index.js +48 -0
  92. package/lib/theme/TagsListByLetter/styles.module.css +11 -0
  93. package/lib/theme/TagsListInline/index.js +44 -0
  94. package/lib/theme/TagsListInline/styles.module.css +15 -0
  95. package/lib/theme/ThemeProvider/index.js +8 -3
  96. package/lib/theme/ThemedImage/index.js +5 -7
  97. package/lib/theme/Toggle/index.js +41 -44
  98. package/lib/theme/Toggle/styles.module.css +91 -3
  99. package/lib/theme/UserPreferencesProvider/index.js +8 -3
  100. package/lib/theme/hooks/useHideableNavbar.js +14 -32
  101. package/lib/theme/hooks/useTheme.js +3 -5
  102. package/lib/theme/hooks/useWindowSize.js +33 -20
  103. package/lib/theme/prism-include-languages.js +4 -3
  104. package/lib/theme-classic.d.ts +806 -0
  105. package/lib/translations.js +4 -4
  106. package/lib/types.d.ts +0 -587
  107. package/lib/validateThemeConfig.js +230 -246
  108. package/lib-next/__tests__/validateThemeConfig.test.js +277 -3
  109. package/lib-next/admonitions.css +35 -0
  110. package/lib-next/deps.d.ts +13 -0
  111. package/lib-next/index.js +16 -10
  112. package/lib-next/prism-include-languages.js +0 -2
  113. package/lib-next/theme/AnnouncementBar/index.js +7 -12
  114. package/lib-next/theme/AnnouncementBar/styles.module.css +23 -32
  115. package/lib-next/theme/BackToTopButton/index.js +131 -0
  116. package/lib-next/theme/BackToTopButton/styles.module.css +42 -0
  117. package/lib-next/theme/BlogArchivePage/index.js +80 -0
  118. package/lib-next/theme/BlogLayout/index.js +40 -0
  119. package/lib-next/theme/BlogListPage/index.js +17 -25
  120. package/lib-next/theme/BlogPostAuthor/index.js +46 -0
  121. package/lib-next/theme/BlogPostAuthor/styles.module.css +12 -0
  122. package/lib-next/theme/BlogPostAuthors/index.js +34 -0
  123. package/lib-next/theme/BlogPostAuthors/styles.module.css +11 -0
  124. package/lib-next/theme/BlogPostItem/index.js +79 -86
  125. package/lib-next/theme/BlogPostPage/index.js +70 -35
  126. package/lib-next/theme/BlogSidebar/index.js +11 -13
  127. package/lib-next/theme/BlogSidebar/styles.module.css +2 -2
  128. package/lib-next/theme/BlogTagsListPage/index.js +14 -55
  129. package/lib-next/theme/BlogTagsPostsPage/index.js +29 -39
  130. package/lib-next/theme/CodeBlock/index.js +17 -149
  131. package/lib-next/theme/CodeBlock/styles.module.css +6 -9
  132. package/lib-next/theme/Details/index.js +20 -0
  133. package/lib-next/theme/Details/styles.module.css +13 -0
  134. package/lib-next/theme/DocCard/index.js +80 -0
  135. package/lib-next/theme/DocCard/styles.module.css +43 -0
  136. package/lib-next/theme/DocCardList/index.js +19 -0
  137. package/lib-next/theme/DocCategoryGeneratedIndexPage/index.js +49 -0
  138. package/lib-next/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  139. package/lib-next/theme/DocItem/index.js +40 -51
  140. package/lib-next/theme/DocItem/styles.module.css +5 -9
  141. package/lib-next/theme/DocItemFooter/index.js +79 -0
  142. package/lib-next/theme/DocItemFooter/styles.module.css +18 -0
  143. package/lib-next/theme/DocPage/index.js +46 -49
  144. package/lib-next/theme/DocPage/styles.module.css +5 -0
  145. package/lib-next/theme/DocPaginator/index.js +7 -11
  146. package/lib-next/theme/DocSidebar/index.js +65 -285
  147. package/lib-next/theme/DocSidebar/styles.module.css +0 -18
  148. package/lib-next/theme/DocSidebarItem/index.js +217 -0
  149. package/lib-next/theme/DocSidebarItem/styles.module.css +19 -0
  150. package/lib-next/theme/DocTagDocListPage/index.js +89 -0
  151. package/lib-next/theme/DocTagsListPage/index.js +38 -0
  152. package/lib-next/theme/DocVersionBadge/index.js +27 -0
  153. package/lib-next/theme/DocVersionBanner/index.js +28 -14
  154. package/lib-next/theme/EditThisPage/index.js +6 -1
  155. package/lib-next/theme/ErrorPageContent.js +35 -0
  156. package/lib-next/theme/Footer/index.js +17 -4
  157. package/lib-next/theme/Heading/index.js +25 -29
  158. package/lib-next/theme/Heading/styles.css +5 -6
  159. package/lib-next/theme/Heading/styles.module.css +9 -5
  160. package/lib-next/theme/IconArrow/index.js +2 -2
  161. package/lib-next/theme/IconClose/index.js +23 -0
  162. package/lib-next/theme/IconEdit/index.js +2 -2
  163. package/lib-next/theme/IconExternalLink/index.js +2 -2
  164. package/lib-next/theme/IconLanguage/index.js +2 -2
  165. package/lib-next/theme/IconMenu/index.js +2 -2
  166. package/lib-next/theme/LastUpdated/index.js +3 -2
  167. package/lib-next/theme/Layout/index.js +3 -1
  168. package/lib-next/theme/LayoutHead/index.js +18 -23
  169. package/lib-next/theme/LayoutProviders/index.js +9 -3
  170. package/lib-next/theme/Logo/index.js +25 -21
  171. package/lib-next/theme/MDXComponents/index.js +34 -7
  172. package/lib-next/theme/MDXComponents/styles.css +11 -0
  173. package/lib-next/theme/MDXPage/index.js +10 -2
  174. package/lib-next/theme/Navbar/index.js +193 -56
  175. package/lib-next/theme/Navbar/styles.module.css +10 -3
  176. package/lib-next/theme/NavbarItem/DefaultNavbarItem.js +45 -147
  177. package/lib-next/theme/NavbarItem/DocNavbarItem.js +7 -7
  178. package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +31 -19
  179. package/lib-next/theme/NavbarItem/DropdownNavbarItem.js +159 -0
  180. package/lib-next/theme/NavbarItem/{LocaleDropdownNavbarItem.js → LocaleDropdownNavbarItem/index.js} +4 -12
  181. package/lib-next/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  182. package/lib-next/theme/NavbarItem/index.js +25 -12
  183. package/lib-next/theme/{SearchMetadatas → SearchMetadata}/index.js +1 -1
  184. package/lib-next/theme/Seo/index.js +11 -7
  185. package/lib-next/theme/SkipToContent/index.js +3 -2
  186. package/lib-next/theme/TOC/index.js +12 -36
  187. package/lib-next/theme/TOC/styles.module.css +1 -1
  188. package/lib-next/theme/TOCCollapsible/index.js +54 -0
  189. package/lib-next/theme/TOCCollapsible/styles.module.css +50 -0
  190. package/lib-next/theme/TOCInline/index.js +10 -28
  191. package/lib-next/theme/TOCItems/index.js +85 -0
  192. package/lib-next/theme/Tabs/__tests__/index.test.js +142 -0
  193. package/lib-next/theme/Tabs/index.js +91 -43
  194. package/lib-next/theme/Tabs/styles.module.css +0 -13
  195. package/lib-next/theme/Tag/index.js +27 -0
  196. package/lib-next/theme/Tag/styles.module.css +70 -0
  197. package/lib-next/theme/TagsListByLetter/index.js +42 -0
  198. package/lib-next/theme/TagsListByLetter/styles.module.css +11 -0
  199. package/lib-next/theme/TagsListInline/index.js +31 -0
  200. package/lib-next/theme/TagsListInline/styles.module.css +15 -0
  201. package/lib-next/theme/ThemeProvider/index.js +10 -7
  202. package/lib-next/theme/ThemedImage/index.js +5 -5
  203. package/lib-next/theme/Toggle/index.js +34 -37
  204. package/lib-next/theme/Toggle/styles.module.css +91 -3
  205. package/lib-next/theme/UserPreferencesProvider/index.js +9 -6
  206. package/lib-next/theme/hooks/useHideableNavbar.js +31 -44
  207. package/lib-next/theme/hooks/useTheme.js +4 -5
  208. package/lib-next/theme/hooks/useWindowSize.js +34 -20
  209. package/lib-next/theme/prism-include-languages.js +2 -1
  210. package/lib-next/theme-classic.d.ts +806 -0
  211. package/lib-next/translations.js +6 -10
  212. package/lib-next/types.d.ts +0 -587
  213. package/lib-next/validateThemeConfig.js +141 -114
  214. package/package.json +28 -25
  215. package/src/__tests__/validateThemeConfig.test.js +277 -3
  216. package/src/admonitions.css +35 -0
  217. package/src/deps.d.ts +13 -0
  218. package/src/index.ts +23 -17
  219. package/src/{prism-include-languages.js → prism-include-languages.ts} +0 -0
  220. package/src/theme/AnnouncementBar/index.tsx +8 -12
  221. package/src/theme/AnnouncementBar/styles.module.css +23 -32
  222. package/src/theme/BackToTopButton/index.tsx +142 -0
  223. package/src/theme/BackToTopButton/styles.module.css +42 -0
  224. package/src/theme/BlogArchivePage/index.tsx +91 -0
  225. package/src/theme/BlogLayout/index.tsx +44 -0
  226. package/src/theme/BlogListPage/index.tsx +18 -25
  227. package/src/theme/BlogPostAuthor/index.tsx +49 -0
  228. package/src/theme/BlogPostAuthor/styles.module.css +12 -0
  229. package/src/theme/BlogPostAuthors/index.tsx +39 -0
  230. package/src/theme/BlogPostAuthors/styles.module.css +11 -0
  231. package/src/theme/BlogPostItem/index.tsx +70 -80
  232. package/src/theme/BlogPostPage/index.tsx +72 -35
  233. package/src/theme/BlogSidebar/index.tsx +11 -13
  234. package/src/theme/BlogSidebar/styles.module.css +2 -2
  235. package/src/theme/BlogTagsListPage/index.tsx +14 -57
  236. package/src/theme/BlogTagsPostsPage/index.tsx +29 -39
  237. package/src/theme/CodeBlock/index.tsx +21 -151
  238. package/src/theme/CodeBlock/styles.module.css +6 -9
  239. package/src/theme/Details/index.tsx +24 -0
  240. package/src/theme/Details/styles.module.css +13 -0
  241. package/src/theme/DocCard/index.tsx +100 -0
  242. package/src/theme/DocCard/styles.module.css +43 -0
  243. package/src/theme/DocCardList/index.tsx +27 -0
  244. package/src/theme/DocCategoryGeneratedIndexPage/index.tsx +53 -0
  245. package/src/theme/DocCategoryGeneratedIndexPage/styles.module.css +18 -0
  246. package/src/theme/DocItem/index.tsx +43 -51
  247. package/src/theme/DocItem/styles.module.css +5 -9
  248. package/src/theme/DocItemFooter/index.tsx +91 -0
  249. package/src/theme/DocItemFooter/styles.module.css +18 -0
  250. package/src/theme/DocPage/index.tsx +44 -42
  251. package/src/theme/DocPage/styles.module.css +5 -0
  252. package/src/theme/DocPaginator/index.tsx +9 -13
  253. package/src/theme/DocSidebar/index.tsx +76 -297
  254. package/src/theme/DocSidebar/styles.module.css +0 -18
  255. package/src/theme/DocSidebarItem/index.tsx +242 -0
  256. package/src/theme/DocSidebarItem/styles.module.css +19 -0
  257. package/src/theme/DocTagDocListPage/index.tsx +89 -0
  258. package/src/theme/DocTagsListPage/index.tsx +41 -0
  259. package/src/theme/DocVersionBadge/index.tsx +30 -0
  260. package/src/theme/DocVersionBanner/index.tsx +48 -21
  261. package/src/theme/EditThisPage/index.tsx +6 -1
  262. package/src/theme/ErrorPageContent.tsx +41 -0
  263. package/src/theme/Footer/index.tsx +20 -5
  264. package/src/theme/Heading/index.tsx +25 -31
  265. package/src/theme/Heading/styles.css +5 -6
  266. package/src/theme/Heading/styles.module.css +9 -5
  267. package/src/theme/IconArrow/index.tsx +2 -2
  268. package/src/theme/IconClose/index.tsx +26 -0
  269. package/src/theme/IconEdit/index.tsx +2 -2
  270. package/src/theme/IconExternalLink/index.tsx +2 -5
  271. package/src/theme/IconLanguage/index.tsx +2 -6
  272. package/src/theme/IconMenu/index.tsx +3 -3
  273. package/src/theme/LastUpdated/index.tsx +3 -2
  274. package/src/theme/Layout/index.tsx +3 -1
  275. package/src/theme/LayoutHead/index.tsx +18 -17
  276. package/src/theme/LayoutProviders/index.tsx +9 -3
  277. package/src/theme/Logo/index.tsx +21 -17
  278. package/src/theme/MDXComponents/index.tsx +39 -5
  279. package/src/theme/MDXComponents/styles.css +11 -0
  280. package/src/theme/MDXPage/index.tsx +10 -2
  281. package/src/theme/Navbar/index.tsx +203 -61
  282. package/src/theme/Navbar/styles.module.css +10 -3
  283. package/src/theme/NavbarItem/DefaultNavbarItem.tsx +42 -154
  284. package/src/theme/NavbarItem/DocNavbarItem.tsx +12 -16
  285. package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +33 -21
  286. package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +7 -3
  287. package/src/theme/NavbarItem/DropdownNavbarItem.tsx +181 -0
  288. package/src/theme/NavbarItem/{LocaleDropdownNavbarItem.tsx → LocaleDropdownNavbarItem/index.tsx} +8 -9
  289. package/src/theme/NavbarItem/LocaleDropdownNavbarItem/styles.module.css +11 -0
  290. package/src/theme/NavbarItem/index.tsx +41 -16
  291. package/src/theme/{SearchMetadatas → SearchMetadata}/index.tsx +2 -2
  292. package/src/theme/Seo/index.tsx +7 -4
  293. package/src/theme/SkipToContent/index.tsx +3 -2
  294. package/src/theme/TOC/index.tsx +12 -41
  295. package/src/theme/TOC/styles.module.css +1 -1
  296. package/src/theme/TOCCollapsible/index.tsx +58 -0
  297. package/src/theme/TOCCollapsible/styles.module.css +50 -0
  298. package/src/theme/TOCInline/index.tsx +13 -32
  299. package/src/theme/TOCItems/index.tsx +96 -0
  300. package/src/theme/Tabs/__tests__/index.test.tsx +129 -0
  301. package/src/theme/Tabs/index.tsx +93 -49
  302. package/src/theme/Tabs/styles.module.css +0 -13
  303. package/src/theme/Tag/index.tsx +31 -0
  304. package/src/theme/Tag/styles.module.css +70 -0
  305. package/src/theme/TagsListByLetter/index.tsx +45 -0
  306. package/src/theme/TagsListByLetter/styles.module.css +11 -0
  307. package/src/theme/TagsListInline/index.tsx +35 -0
  308. package/src/theme/TagsListInline/styles.module.css +15 -0
  309. package/src/theme/ThemeProvider/index.tsx +6 -2
  310. package/src/theme/ThemedImage/index.tsx +5 -5
  311. package/src/theme/Toggle/index.tsx +36 -43
  312. package/src/theme/Toggle/styles.module.css +91 -3
  313. package/src/theme/UserPreferencesProvider/index.tsx +9 -6
  314. package/src/theme/hooks/useHideableNavbar.ts +32 -45
  315. package/src/theme/hooks/useTabGroupChoice.ts +2 -2
  316. package/src/theme/hooks/useTheme.ts +4 -5
  317. package/src/theme/hooks/useWindowSize.ts +38 -20
  318. package/src/theme/prism-include-languages.ts +3 -2
  319. package/src/theme-classic.d.ts +806 -0
  320. package/src/translations.ts +8 -10
  321. package/src/types.d.ts +0 -587
  322. package/src/{validateThemeConfig.js → validateThemeConfig.ts} +151 -94
  323. package/tsconfig.json +1 -2
  324. package/codeTranslations/README.md +0 -20
  325. package/codeTranslations/ar.json +0 -57
  326. package/codeTranslations/base.json +0 -112
  327. package/codeTranslations/bn.json +0 -56
  328. package/codeTranslations/da.json +0 -57
  329. package/codeTranslations/de.json +0 -57
  330. package/codeTranslations/es.json +0 -57
  331. package/codeTranslations/fa.json +0 -57
  332. package/codeTranslations/fil.json +0 -57
  333. package/codeTranslations/fr.json +0 -57
  334. package/codeTranslations/he.json +0 -57
  335. package/codeTranslations/hi.json +0 -57
  336. package/codeTranslations/ja.json +0 -57
  337. package/codeTranslations/ko.json +0 -57
  338. package/codeTranslations/pl.json +0 -57
  339. package/codeTranslations/pt-BR.json +0 -57
  340. package/codeTranslations/pt-PT.json +0 -57
  341. package/codeTranslations/ru.json +0 -57
  342. package/codeTranslations/tr.json +0 -57
  343. package/codeTranslations/vi.json +0 -57
  344. package/codeTranslations/zh-Hans.json +0 -57
  345. package/codeTranslations/zh-Hant.json +0 -57
  346. package/lib/theme/Toggle/styles.css +0 -103
  347. package/lib/theme/hooks/useContextualSearchFilters.js +0 -47
  348. package/lib/theme/hooks/useScrollPosition.js +0 -49
  349. package/lib/theme/hooks/useTOCHighlight.js +0 -87
  350. package/lib-next/theme/Toggle/styles.css +0 -103
  351. package/lib-next/theme/hooks/useContextualSearchFilters.js +0 -41
  352. package/lib-next/theme/hooks/useScrollPosition.js +0 -38
  353. package/lib-next/theme/hooks/useTOCHighlight.js +0 -84
  354. package/src/theme/Toggle/styles.css +0 -103
  355. package/src/theme/hooks/useContextualSearchFilters.ts +0 -52
  356. package/src/theme/hooks/useScrollPosition.ts +0 -45
  357. package/src/theme/hooks/useTOCHighlight.ts +0 -98
  358. package/update-code-translations.js +0 -240
  359. package/update-code-translations.test.js +0 -33
@@ -1,49 +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
- 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 getScrollPosition = () => ({
21
- scrollX: _ExecutionEnvironment.default.canUseDOM ? window.pageXOffset : 0,
22
- scrollY: _ExecutionEnvironment.default.canUseDOM ? window.pageYOffset : 0
23
- });
24
-
25
- const useScrollPosition = (effect, deps = []) => {
26
- const scrollPosition = (0, _react.useRef)(getScrollPosition());
27
-
28
- const handleScroll = () => {
29
- const currentScrollPosition = getScrollPosition();
30
-
31
- if (effect) {
32
- effect(currentScrollPosition, scrollPosition.current);
33
- }
34
-
35
- scrollPosition.current = currentScrollPosition;
36
- };
37
-
38
- (0, _react.useEffect)(() => {
39
- const opts = {
40
- passive: true
41
- };
42
- handleScroll();
43
- window.addEventListener('scroll', handleScroll, opts);
44
- return () => window.removeEventListener('scroll', handleScroll, opts);
45
- }, deps);
46
- };
47
-
48
- var _default = useScrollPosition;
49
- exports.default = _default;
@@ -1,87 +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
- /**
11
- * Copyright (c) Facebook, Inc. and its affiliates.
12
- *
13
- * This source code is licensed under the MIT license found in the
14
- * LICENSE file in the root directory of this source tree.
15
- */
16
- function useTOCHighlight(linkClassName, linkActiveClassName, topOffset) {
17
- const [lastActiveLink, setLastActiveLink] = (0, _react.useState)(undefined);
18
- (0, _react.useEffect)(() => {
19
- function setActiveLink() {
20
- function getActiveHeaderAnchor() {
21
- const headersAnchors = Array.from(document.getElementsByClassName('anchor'));
22
- const firstAnchorUnderViewportTop = headersAnchors.find(anchor => {
23
- const {
24
- top
25
- } = anchor.getBoundingClientRect();
26
- return top >= topOffset;
27
- });
28
-
29
- if (firstAnchorUnderViewportTop) {
30
- // If first anchor in viewport is under a certain threshold, we consider it's not the active anchor.
31
- // In such case, the active anchor is the previous one (if it exists), that may be above the viewport
32
- if (firstAnchorUnderViewportTop.getBoundingClientRect().top >= topOffset) {
33
- const previousAnchor = headersAnchors[headersAnchors.indexOf(firstAnchorUnderViewportTop) - 1];
34
- return previousAnchor !== null && previousAnchor !== void 0 ? previousAnchor : firstAnchorUnderViewportTop;
35
- } // If the anchor is at the top of the viewport, we consider it's the first anchor
36
- else {
37
- return firstAnchorUnderViewportTop;
38
- }
39
- } // no anchor under viewport top? (ie we are at the bottom of the page)
40
- else {
41
- // highlight the last anchor found
42
- return headersAnchors[headersAnchors.length - 1];
43
- }
44
- }
45
-
46
- const activeHeaderAnchor = getActiveHeaderAnchor();
47
-
48
- if (activeHeaderAnchor) {
49
- let index = 0;
50
- let itemHighlighted = false; // @ts-expect-error: Must be <a> tags.
51
-
52
- const links = document.getElementsByClassName(linkClassName);
53
-
54
- while (index < links.length && !itemHighlighted) {
55
- const link = links[index];
56
- const {
57
- href
58
- } = link;
59
- const anchorValue = decodeURIComponent(href.substring(href.indexOf('#') + 1));
60
-
61
- if (activeHeaderAnchor.id === anchorValue) {
62
- if (lastActiveLink) {
63
- lastActiveLink.classList.remove(linkActiveClassName);
64
- }
65
-
66
- link.classList.add(linkActiveClassName);
67
- setLastActiveLink(link);
68
- itemHighlighted = true;
69
- }
70
-
71
- index += 1;
72
- }
73
- }
74
- }
75
-
76
- document.addEventListener('scroll', setActiveLink);
77
- document.addEventListener('resize', setActiveLink);
78
- setActiveLink();
79
- return () => {
80
- document.removeEventListener('scroll', setActiveLink);
81
- document.removeEventListener('resize', setActiveLink);
82
- };
83
- });
84
- }
85
-
86
- var _default = useTOCHighlight;
87
- exports.default = _default;
@@ -1,103 +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
-
8
- /**
9
- * Styles for React Toggle
10
- * copied over because we want to allow user to swizzle it and modify the css
11
- * and also to make sure its compatible with our dark mode
12
- * https://github.com/aaronshaf/react-toggle/blob/master/style.css
13
- */
14
- .react-toggle {
15
- touch-action: pan-x;
16
- position: relative;
17
- cursor: pointer;
18
- user-select: none;
19
- -webkit-tap-highlight-color: transparent;
20
- }
21
-
22
- .react-toggle-screenreader-only {
23
- border: 0;
24
- clip: rect(0 0 0 0);
25
- height: 1px;
26
- margin: -1px;
27
- overflow: hidden;
28
- position: absolute;
29
- width: 1px;
30
- }
31
-
32
- .react-toggle--disabled {
33
- cursor: not-allowed;
34
- }
35
-
36
- .react-toggle-track {
37
- width: 50px;
38
- height: 24px;
39
- border-radius: 30px;
40
- background-color: #4d4d4d;
41
- transition: all 0.2s ease;
42
- }
43
-
44
- .react-toggle-track-check {
45
- position: absolute;
46
- width: 14px;
47
- height: 10px;
48
- top: 0px;
49
- bottom: 0px;
50
- margin: auto 0;
51
- left: 8px;
52
- opacity: 0;
53
- transition: opacity 0.25s ease;
54
- }
55
-
56
- [data-theme='dark'] .react-toggle .react-toggle-track-check,
57
- .react-toggle--checked .react-toggle-track-check {
58
- opacity: 1;
59
- transition: opacity 0.25s ease;
60
- }
61
-
62
- .react-toggle-track-x {
63
- position: absolute;
64
- width: 10px;
65
- height: 10px;
66
- top: 0px;
67
- bottom: 0px;
68
- margin: auto 0;
69
- right: 10px;
70
- opacity: 1;
71
- transition: opacity 0.25s ease;
72
- }
73
-
74
- [data-theme='dark'] .react-toggle .react-toggle-track-x,
75
- .react-toggle--checked .react-toggle-track-x {
76
- opacity: 0;
77
- }
78
-
79
- .react-toggle-thumb {
80
- position: absolute;
81
- top: 1px;
82
- left: 1px;
83
- width: 22px;
84
- height: 22px;
85
- border: 1px solid #4d4d4d;
86
- border-radius: 50%;
87
- background-color: #fafafa;
88
- transition: all 0.25s ease;
89
- }
90
-
91
- [data-theme='dark'] .react-toggle .react-toggle-thumb,
92
- .react-toggle--checked .react-toggle-thumb {
93
- left: 27px;
94
- }
95
-
96
- .react-toggle--focus .react-toggle-thumb,
97
- .react-toggle:hover .react-toggle-thumb {
98
- box-shadow: 0px 0px 2px 3px var(--ifm-color-primary);
99
- }
100
-
101
- .react-toggle:active:not(.react-toggle--disabled) .react-toggle-thumb {
102
- box-shadow: 0px 0px 5px 5px var(--ifm-color-primary);
103
- }
@@ -1,41 +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 {useAllDocsData, useActivePluginAndVersion} from '@theme/hooks/useDocs';
8
- import {
9
- useDocsPreferredVersionByPluginId,
10
- DEFAULT_SEARCH_TAG,
11
- docVersionSearchTag,
12
- } from '@docusaurus/theme-common';
13
- import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
14
- // We may want to support multiple search engines, don't couple that to Algolia/DocSearch
15
- // Maybe users will want to use its own search engine solution
16
- export default function useContextualSearchFilters() {
17
- const {i18n} = useDocusaurusContext();
18
- const allDocsData = useAllDocsData();
19
- const activePluginAndVersion = useActivePluginAndVersion();
20
- const docsPreferredVersionByPluginId = useDocsPreferredVersionByPluginId();
21
-
22
- function getDocPluginTags(pluginId) {
23
- const activeVersion =
24
- activePluginAndVersion?.activePlugin?.pluginId === pluginId
25
- ? activePluginAndVersion.activeVersion
26
- : undefined;
27
- const preferredVersion = docsPreferredVersionByPluginId[pluginId];
28
- const latestVersion = allDocsData[pluginId].versions.find((v) => v.isLast);
29
- const version = activeVersion ?? preferredVersion ?? latestVersion;
30
- return docVersionSearchTag(pluginId, version.name);
31
- }
32
-
33
- const tags = [
34
- DEFAULT_SEARCH_TAG,
35
- ...Object.keys(allDocsData).map(getDocPluginTags),
36
- ];
37
- return {
38
- locale: i18n.currentLocale,
39
- tags,
40
- };
41
- }
@@ -1,38 +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 {useEffect, useRef} from 'react';
8
- import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment';
9
-
10
- const getScrollPosition = () => ({
11
- scrollX: ExecutionEnvironment.canUseDOM ? window.pageXOffset : 0,
12
- scrollY: ExecutionEnvironment.canUseDOM ? window.pageYOffset : 0,
13
- });
14
-
15
- const useScrollPosition = (effect, deps = []) => {
16
- const scrollPosition = useRef(getScrollPosition());
17
-
18
- const handleScroll = () => {
19
- const currentScrollPosition = getScrollPosition();
20
-
21
- if (effect) {
22
- effect(currentScrollPosition, scrollPosition.current);
23
- }
24
-
25
- scrollPosition.current = currentScrollPosition;
26
- };
27
-
28
- useEffect(() => {
29
- const opts = {
30
- passive: true,
31
- };
32
- handleScroll();
33
- window.addEventListener('scroll', handleScroll, opts);
34
- return () => window.removeEventListener('scroll', handleScroll, opts);
35
- }, deps);
36
- };
37
-
38
- export default useScrollPosition;
@@ -1,84 +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 {useEffect, useState} from 'react';
8
-
9
- function useTOCHighlight(linkClassName, linkActiveClassName, topOffset) {
10
- const [lastActiveLink, setLastActiveLink] = useState(undefined);
11
- useEffect(() => {
12
- function setActiveLink() {
13
- function getActiveHeaderAnchor() {
14
- const headersAnchors = Array.from(
15
- document.getElementsByClassName('anchor'),
16
- );
17
- const firstAnchorUnderViewportTop = headersAnchors.find((anchor) => {
18
- const {top} = anchor.getBoundingClientRect();
19
- return top >= topOffset;
20
- });
21
-
22
- if (firstAnchorUnderViewportTop) {
23
- // If first anchor in viewport is under a certain threshold, we consider it's not the active anchor.
24
- // In such case, the active anchor is the previous one (if it exists), that may be above the viewport
25
- if (
26
- firstAnchorUnderViewportTop.getBoundingClientRect().top >= topOffset
27
- ) {
28
- const previousAnchor =
29
- headersAnchors[
30
- headersAnchors.indexOf(firstAnchorUnderViewportTop) - 1
31
- ];
32
- return previousAnchor ?? firstAnchorUnderViewportTop;
33
- } // If the anchor is at the top of the viewport, we consider it's the first anchor
34
- else {
35
- return firstAnchorUnderViewportTop;
36
- }
37
- } // no anchor under viewport top? (ie we are at the bottom of the page)
38
- else {
39
- // highlight the last anchor found
40
- return headersAnchors[headersAnchors.length - 1];
41
- }
42
- }
43
-
44
- const activeHeaderAnchor = getActiveHeaderAnchor();
45
-
46
- if (activeHeaderAnchor) {
47
- let index = 0;
48
- let itemHighlighted = false; // @ts-expect-error: Must be <a> tags.
49
-
50
- const links = document.getElementsByClassName(linkClassName);
51
-
52
- while (index < links.length && !itemHighlighted) {
53
- const link = links[index];
54
- const {href} = link;
55
- const anchorValue = decodeURIComponent(
56
- href.substring(href.indexOf('#') + 1),
57
- );
58
-
59
- if (activeHeaderAnchor.id === anchorValue) {
60
- if (lastActiveLink) {
61
- lastActiveLink.classList.remove(linkActiveClassName);
62
- }
63
-
64
- link.classList.add(linkActiveClassName);
65
- setLastActiveLink(link);
66
- itemHighlighted = true;
67
- }
68
-
69
- index += 1;
70
- }
71
- }
72
- }
73
-
74
- document.addEventListener('scroll', setActiveLink);
75
- document.addEventListener('resize', setActiveLink);
76
- setActiveLink();
77
- return () => {
78
- document.removeEventListener('scroll', setActiveLink);
79
- document.removeEventListener('resize', setActiveLink);
80
- };
81
- });
82
- }
83
-
84
- export default useTOCHighlight;
@@ -1,103 +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
-
8
- /**
9
- * Styles for React Toggle
10
- * copied over because we want to allow user to swizzle it and modify the css
11
- * and also to make sure its compatible with our dark mode
12
- * https://github.com/aaronshaf/react-toggle/blob/master/style.css
13
- */
14
- .react-toggle {
15
- touch-action: pan-x;
16
- position: relative;
17
- cursor: pointer;
18
- user-select: none;
19
- -webkit-tap-highlight-color: transparent;
20
- }
21
-
22
- .react-toggle-screenreader-only {
23
- border: 0;
24
- clip: rect(0 0 0 0);
25
- height: 1px;
26
- margin: -1px;
27
- overflow: hidden;
28
- position: absolute;
29
- width: 1px;
30
- }
31
-
32
- .react-toggle--disabled {
33
- cursor: not-allowed;
34
- }
35
-
36
- .react-toggle-track {
37
- width: 50px;
38
- height: 24px;
39
- border-radius: 30px;
40
- background-color: #4d4d4d;
41
- transition: all 0.2s ease;
42
- }
43
-
44
- .react-toggle-track-check {
45
- position: absolute;
46
- width: 14px;
47
- height: 10px;
48
- top: 0px;
49
- bottom: 0px;
50
- margin: auto 0;
51
- left: 8px;
52
- opacity: 0;
53
- transition: opacity 0.25s ease;
54
- }
55
-
56
- [data-theme='dark'] .react-toggle .react-toggle-track-check,
57
- .react-toggle--checked .react-toggle-track-check {
58
- opacity: 1;
59
- transition: opacity 0.25s ease;
60
- }
61
-
62
- .react-toggle-track-x {
63
- position: absolute;
64
- width: 10px;
65
- height: 10px;
66
- top: 0px;
67
- bottom: 0px;
68
- margin: auto 0;
69
- right: 10px;
70
- opacity: 1;
71
- transition: opacity 0.25s ease;
72
- }
73
-
74
- [data-theme='dark'] .react-toggle .react-toggle-track-x,
75
- .react-toggle--checked .react-toggle-track-x {
76
- opacity: 0;
77
- }
78
-
79
- .react-toggle-thumb {
80
- position: absolute;
81
- top: 1px;
82
- left: 1px;
83
- width: 22px;
84
- height: 22px;
85
- border: 1px solid #4d4d4d;
86
- border-radius: 50%;
87
- background-color: #fafafa;
88
- transition: all 0.25s ease;
89
- }
90
-
91
- [data-theme='dark'] .react-toggle .react-toggle-thumb,
92
- .react-toggle--checked .react-toggle-thumb {
93
- left: 27px;
94
- }
95
-
96
- .react-toggle--focus .react-toggle-thumb,
97
- .react-toggle:hover .react-toggle-thumb {
98
- box-shadow: 0px 0px 2px 3px var(--ifm-color-primary);
99
- }
100
-
101
- .react-toggle:active:not(.react-toggle--disabled) .react-toggle-thumb {
102
- box-shadow: 0px 0px 5px 5px var(--ifm-color-primary);
103
- }
@@ -1,52 +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 {useAllDocsData, useActivePluginAndVersion} from '@theme/hooks/useDocs';
8
- import {
9
- useDocsPreferredVersionByPluginId,
10
- DEFAULT_SEARCH_TAG,
11
- docVersionSearchTag,
12
- } from '@docusaurus/theme-common';
13
- import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
14
-
15
- type ContextualSearchFilters = {
16
- locale: string;
17
- tags: string[];
18
- };
19
-
20
- // We may want to support multiple search engines, don't couple that to Algolia/DocSearch
21
- // Maybe users will want to use its own search engine solution
22
- export default function useContextualSearchFilters(): ContextualSearchFilters {
23
- const {i18n} = useDocusaurusContext();
24
- const allDocsData = useAllDocsData();
25
- const activePluginAndVersion = useActivePluginAndVersion();
26
- const docsPreferredVersionByPluginId = useDocsPreferredVersionByPluginId();
27
-
28
- function getDocPluginTags(pluginId: string) {
29
- const activeVersion =
30
- activePluginAndVersion?.activePlugin?.pluginId === pluginId
31
- ? activePluginAndVersion.activeVersion
32
- : undefined;
33
-
34
- const preferredVersion = docsPreferredVersionByPluginId[pluginId];
35
-
36
- const latestVersion = allDocsData[pluginId].versions.find((v) => v.isLast);
37
-
38
- const version = activeVersion ?? preferredVersion ?? latestVersion;
39
-
40
- return docVersionSearchTag(pluginId, version.name);
41
- }
42
-
43
- const tags = [
44
- DEFAULT_SEARCH_TAG,
45
- ...Object.keys(allDocsData).map(getDocPluginTags),
46
- ];
47
-
48
- return {
49
- locale: i18n.currentLocale,
50
- tags,
51
- };
52
- }
@@ -1,45 +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
-
8
- import {useEffect, useRef} from 'react';
9
- import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment';
10
- import type {ScrollPosition} from '@theme/hooks/useScrollPosition';
11
-
12
- const getScrollPosition = (): ScrollPosition => ({
13
- scrollX: ExecutionEnvironment.canUseDOM ? window.pageXOffset : 0,
14
- scrollY: ExecutionEnvironment.canUseDOM ? window.pageYOffset : 0,
15
- });
16
-
17
- const useScrollPosition = (
18
- effect?: (position: ScrollPosition, lastPosition: ScrollPosition) => void,
19
- deps = [],
20
- ): void => {
21
- const scrollPosition = useRef(getScrollPosition());
22
-
23
- const handleScroll = () => {
24
- const currentScrollPosition = getScrollPosition();
25
-
26
- if (effect) {
27
- effect(currentScrollPosition, scrollPosition.current);
28
- }
29
-
30
- scrollPosition.current = currentScrollPosition;
31
- };
32
-
33
- useEffect(() => {
34
- const opts: AddEventListenerOptions & EventListenerOptions = {
35
- passive: true,
36
- };
37
-
38
- handleScroll();
39
- window.addEventListener('scroll', handleScroll, opts);
40
-
41
- return () => window.removeEventListener('scroll', handleScroll, opts);
42
- }, deps);
43
- };
44
-
45
- export default useScrollPosition;
@@ -1,98 +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
-
8
- import {useEffect, useState} from 'react';
9
-
10
- function useTOCHighlight(
11
- linkClassName: string,
12
- linkActiveClassName: string,
13
- topOffset: number,
14
- ): void {
15
- const [lastActiveLink, setLastActiveLink] = useState<
16
- HTMLAnchorElement | undefined
17
- >(undefined);
18
-
19
- useEffect(() => {
20
- function setActiveLink() {
21
- function getActiveHeaderAnchor(): Element | null {
22
- const headersAnchors: Element[] = Array.from(
23
- document.getElementsByClassName('anchor'),
24
- );
25
-
26
- const firstAnchorUnderViewportTop = headersAnchors.find((anchor) => {
27
- const {top} = anchor.getBoundingClientRect();
28
- return top >= topOffset;
29
- });
30
-
31
- if (firstAnchorUnderViewportTop) {
32
- // If first anchor in viewport is under a certain threshold, we consider it's not the active anchor.
33
- // In such case, the active anchor is the previous one (if it exists), that may be above the viewport
34
- if (
35
- firstAnchorUnderViewportTop.getBoundingClientRect().top >= topOffset
36
- ) {
37
- const previousAnchor =
38
- headersAnchors[
39
- headersAnchors.indexOf(firstAnchorUnderViewportTop) - 1
40
- ];
41
- return previousAnchor ?? firstAnchorUnderViewportTop;
42
- }
43
- // If the anchor is at the top of the viewport, we consider it's the first anchor
44
- else {
45
- return firstAnchorUnderViewportTop;
46
- }
47
- }
48
- // no anchor under viewport top? (ie we are at the bottom of the page)
49
- else {
50
- // highlight the last anchor found
51
- return headersAnchors[headersAnchors.length - 1];
52
- }
53
- }
54
-
55
- const activeHeaderAnchor = getActiveHeaderAnchor();
56
-
57
- if (activeHeaderAnchor) {
58
- let index = 0;
59
- let itemHighlighted = false;
60
-
61
- // @ts-expect-error: Must be <a> tags.
62
- const links: HTMLCollectionOf<HTMLAnchorElement> = document.getElementsByClassName(
63
- linkClassName,
64
- );
65
- while (index < links.length && !itemHighlighted) {
66
- const link = links[index];
67
- const {href} = link;
68
- const anchorValue = decodeURIComponent(
69
- href.substring(href.indexOf('#') + 1),
70
- );
71
-
72
- if (activeHeaderAnchor.id === anchorValue) {
73
- if (lastActiveLink) {
74
- lastActiveLink.classList.remove(linkActiveClassName);
75
- }
76
- link.classList.add(linkActiveClassName);
77
- setLastActiveLink(link);
78
- itemHighlighted = true;
79
- }
80
-
81
- index += 1;
82
- }
83
- }
84
- }
85
-
86
- document.addEventListener('scroll', setActiveLink);
87
- document.addEventListener('resize', setActiveLink);
88
-
89
- setActiveLink();
90
-
91
- return () => {
92
- document.removeEventListener('scroll', setActiveLink);
93
- document.removeEventListener('resize', setActiveLink);
94
- };
95
- });
96
- }
97
-
98
- export default useTOCHighlight;