@diplodoc/components 5.16.2 → 5.17.2

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 (696) hide show
  1. package/README.md +1 -2
  2. package/build/cjs/components/BookmarkButton/BookmarkButton.css.map +1 -1
  3. package/build/cjs/components/BookmarkButton/BookmarkButton.js +5 -5
  4. package/build/cjs/components/BookmarkButton/BookmarkButton.js.map +2 -2
  5. package/build/cjs/components/Breadcrumbs/Breadcrumbs.css.map +1 -1
  6. package/build/cjs/components/Breadcrumbs/Breadcrumbs.js +2 -1
  7. package/build/cjs/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  8. package/build/cjs/components/ConsentPopup/ConsentPopup.js +2 -1
  9. package/build/cjs/components/ConsentPopup/ConsentPopup.js.map +1 -1
  10. package/build/cjs/components/ContentWrapper/ContentWrapper.js +5 -12
  11. package/build/cjs/components/ContentWrapper/ContentWrapper.js.map +2 -2
  12. package/build/cjs/components/ContributorAvatars/Avatars/Avatar.js +8 -8
  13. package/build/cjs/components/ContributorAvatars/Avatars/Avatar.js.map +2 -2
  14. package/build/cjs/components/ContributorAvatars/Avatars/AvatarWithDescription.js +7 -3
  15. package/build/cjs/components/ContributorAvatars/Avatars/AvatarWithDescription.js.map +2 -2
  16. package/build/cjs/components/ContributorAvatars/Avatars/Details.js +12 -9
  17. package/build/cjs/components/ContributorAvatars/Avatars/Details.js.map +3 -3
  18. package/build/cjs/components/ContributorAvatars/Avatars/HiddenAvatars.js +18 -14
  19. package/build/cjs/components/ContributorAvatars/Avatars/HiddenAvatars.js.map +2 -2
  20. package/build/cjs/components/ContributorAvatars/ContributorAvatars.css.map +1 -1
  21. package/build/cjs/components/ContributorAvatars/ContributorAvatars.js +25 -13
  22. package/build/cjs/components/ContributorAvatars/ContributorAvatars.js.map +2 -2
  23. package/build/cjs/components/Contributors/Contributors.css.map +1 -1
  24. package/build/cjs/components/Contributors/Contributors.js +5 -2
  25. package/build/cjs/components/Contributors/Contributors.js.map +2 -2
  26. package/build/cjs/components/Control/Control.css.map +1 -1
  27. package/build/cjs/components/Control/Control.d.ts +1 -1
  28. package/build/cjs/components/Control/Control.js +40 -30
  29. package/build/cjs/components/Control/Control.js.map +2 -2
  30. package/build/cjs/components/Controls/Controls.css.map +1 -1
  31. package/build/cjs/components/Controls/Controls.js +29 -28
  32. package/build/cjs/components/Controls/Controls.js.map +2 -2
  33. package/build/cjs/components/Controls/ControlsLayout.d.ts +1 -1
  34. package/build/cjs/components/Controls/ControlsLayout.js +8 -7
  35. package/build/cjs/components/Controls/ControlsLayout.js.map +3 -3
  36. package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.css.map +1 -1
  37. package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.js +3 -2
  38. package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.js.map +2 -2
  39. package/build/cjs/components/Controls/single-controls/EditControl.d.ts +1 -2
  40. package/build/cjs/components/Controls/single-controls/EditControl.js +21 -17
  41. package/build/cjs/components/Controls/single-controls/EditControl.js.map +3 -3
  42. package/build/cjs/components/Controls/single-controls/FullScreenControl.js +3 -12
  43. package/build/cjs/components/Controls/single-controls/FullScreenControl.js.map +2 -2
  44. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.css.map +1 -1
  45. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.d.ts +1 -2
  46. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.js +26 -23
  47. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.js.map +3 -3
  48. package/build/cjs/components/Controls/single-controls/PdfControl.d.ts +1 -2
  49. package/build/cjs/components/Controls/single-controls/PdfControl.js +4 -13
  50. package/build/cjs/components/Controls/single-controls/PdfControl.js.map +3 -3
  51. package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +1 -1
  52. package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.d.ts +1 -2
  53. package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.js +43 -36
  54. package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.js.map +3 -3
  55. package/build/cjs/components/Controls/single-controls/SinglePageControl.d.ts +1 -2
  56. package/build/cjs/components/Controls/single-controls/SinglePageControl.js +4 -3
  57. package/build/cjs/components/Controls/single-controls/SinglePageControl.js.map +3 -3
  58. package/build/cjs/components/DocContentPage/DocContentPage.js +12 -12
  59. package/build/cjs/components/DocContentPage/DocContentPage.js.map +2 -2
  60. package/build/cjs/components/DocLayout/DocLayout.css.map +1 -1
  61. package/build/cjs/components/DocLayout/DocLayout.d.ts +2 -1
  62. package/build/cjs/components/DocLayout/DocLayout.js +26 -15
  63. package/build/cjs/components/DocLayout/DocLayout.js.map +2 -2
  64. package/build/cjs/components/DocLeadingPage/DocLeadingPage.css.map +1 -1
  65. package/build/cjs/components/DocLeadingPage/DocLeadingPage.js +32 -15
  66. package/build/cjs/components/DocLeadingPage/DocLeadingPage.js.map +2 -2
  67. package/build/cjs/components/DocPage/DocPage.css.map +1 -1
  68. package/build/cjs/components/DocPage/DocPage.js +129 -92
  69. package/build/cjs/components/DocPage/DocPage.js.map +1 -1
  70. package/build/cjs/components/DocPage/components/MarkdownButton/MarkdownButton.js +6 -12
  71. package/build/cjs/components/DocPage/components/MarkdownButton/MarkdownButton.js.map +2 -2
  72. package/build/cjs/components/DocPage/components/RenderBody/RenderBody.js +3 -12
  73. package/build/cjs/components/DocPage/components/RenderBody/RenderBody.js.map +3 -3
  74. package/build/cjs/components/DocPageTitle/DocPageTitle.css.map +1 -1
  75. package/build/cjs/components/DocPageTitle/DocPageTitle.js +6 -3
  76. package/build/cjs/components/DocPageTitle/DocPageTitle.js.map +2 -2
  77. package/build/cjs/components/ErrorBoundary/ErrorBoundary.d.ts +2 -2
  78. package/build/cjs/components/ErrorBoundary/ErrorBoundary.js +3 -4
  79. package/build/cjs/components/ErrorBoundary/ErrorBoundary.js.map +2 -2
  80. package/build/cjs/components/ErrorPage/ErrorPage.css.map +1 -1
  81. package/build/cjs/components/ErrorPage/ErrorPage.js +36 -18
  82. package/build/cjs/components/ErrorPage/ErrorPage.js.map +1 -1
  83. package/build/cjs/components/Feedback/Feedback.css.map +1 -1
  84. package/build/cjs/components/Feedback/Feedback.js +96 -81
  85. package/build/cjs/components/Feedback/Feedback.js.map +1 -1
  86. package/build/cjs/components/Feedback/controls/DislikeControl.d.ts +1 -2
  87. package/build/cjs/components/Feedback/controls/DislikeControl.js +7 -3
  88. package/build/cjs/components/Feedback/controls/DislikeControl.js.map +3 -3
  89. package/build/cjs/components/Feedback/controls/FeedbackControl.d.ts +1 -2
  90. package/build/cjs/components/Feedback/controls/FeedbackControl.js +10 -7
  91. package/build/cjs/components/Feedback/controls/FeedbackControl.js.map +3 -3
  92. package/build/cjs/components/Feedback/controls/FeedbackFormPopup.d.ts +1 -1
  93. package/build/cjs/components/Feedback/controls/FeedbackFormPopup.js +21 -13
  94. package/build/cjs/components/Feedback/controls/FeedbackFormPopup.js.map +3 -3
  95. package/build/cjs/components/Feedback/controls/LikeControl.d.ts +2 -3
  96. package/build/cjs/components/Feedback/controls/LikeControl.js +7 -3
  97. package/build/cjs/components/Feedback/controls/LikeControl.js.map +3 -3
  98. package/build/cjs/components/Feedback/controls/SuccessPopup.d.ts +2 -3
  99. package/build/cjs/components/Feedback/controls/SuccessPopup.js +11 -7
  100. package/build/cjs/components/Feedback/controls/SuccessPopup.js.map +3 -3
  101. package/build/cjs/components/Gallery/Gallery.css.map +1 -1
  102. package/build/cjs/components/Gallery/Gallery.js +2 -12
  103. package/build/cjs/components/Gallery/Gallery.js.map +2 -2
  104. package/build/cjs/components/Gallery/utils.js +27 -22
  105. package/build/cjs/components/Gallery/utils.js.map +3 -3
  106. package/build/cjs/components/Mark/Mark.css.map +1 -1
  107. package/build/cjs/components/Mark/Mark.js +2 -2
  108. package/build/cjs/components/Mark/Mark.js.map +2 -2
  109. package/build/cjs/components/Meta/Meta.d.ts +1 -1
  110. package/build/cjs/components/Meta/Meta.js +28 -22
  111. package/build/cjs/components/Meta/Meta.js.map +2 -2
  112. package/build/cjs/components/MiniToc/MiniToc.css.map +1 -1
  113. package/build/cjs/components/MiniToc/MiniToc.js +33 -23
  114. package/build/cjs/components/MiniToc/MiniToc.js.map +3 -3
  115. package/build/cjs/components/MobileControls/MobileControl/MobileControl.css.map +1 -1
  116. package/build/cjs/components/MobileControls/MobileControl/MobileControl.js +33 -24
  117. package/build/cjs/components/MobileControls/MobileControl/MobileControl.js.map +2 -2
  118. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.css.map +1 -1
  119. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.d.ts +1 -2
  120. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.js +11 -8
  121. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.js.map +3 -3
  122. package/build/cjs/components/MobileControls/MobileControls.css.map +1 -1
  123. package/build/cjs/components/MobileControls/MobileControls.d.ts +1 -2
  124. package/build/cjs/components/MobileControls/MobileControls.js +8 -4
  125. package/build/cjs/components/MobileControls/MobileControls.js.map +3 -3
  126. package/build/cjs/components/NeuroExpertModal/NeuroExpertModal.css.map +1 -1
  127. package/build/cjs/components/NeuroExpertModal/NeuroExpertModal.js +23 -14
  128. package/build/cjs/components/NeuroExpertModal/NeuroExpertModal.js.map +3 -3
  129. package/build/cjs/components/Notification/Notification.css.map +1 -1
  130. package/build/cjs/components/Notification/Notification.js +20 -15
  131. package/build/cjs/components/Notification/Notification.js.map +2 -2
  132. package/build/cjs/components/OutsideClick/OutsideClick.d.ts +3 -3
  133. package/build/cjs/components/OutsideClick/OutsideClick.js +5 -6
  134. package/build/cjs/components/OutsideClick/OutsideClick.js.map +2 -2
  135. package/build/cjs/components/Paginator/Paginator.css.map +1 -1
  136. package/build/cjs/components/Paginator/Paginator.d.ts +1 -2
  137. package/build/cjs/components/Paginator/Paginator.js +10 -10
  138. package/build/cjs/components/Paginator/Paginator.js.map +3 -3
  139. package/build/cjs/components/SearchBar/SearchBar.css.map +1 -1
  140. package/build/cjs/components/SearchBar/SearchBar.d.ts +1 -2
  141. package/build/cjs/components/SearchBar/SearchBar.js +43 -24
  142. package/build/cjs/components/SearchBar/SearchBar.js.map +3 -3
  143. package/build/cjs/components/SearchBar/hooks.js +1 -1
  144. package/build/cjs/components/SearchBar/hooks.js.map +2 -2
  145. package/build/cjs/components/SearchBar/withHighlightedSearchWords.js +6 -15
  146. package/build/cjs/components/SearchBar/withHighlightedSearchWords.js.map +2 -2
  147. package/build/cjs/components/SearchItem/SearchItem.css.map +1 -1
  148. package/build/cjs/components/SearchItem/SearchItem.d.ts +1 -2
  149. package/build/cjs/components/SearchItem/SearchItem.js +45 -36
  150. package/build/cjs/components/SearchItem/SearchItem.js.map +3 -3
  151. package/build/cjs/components/SearchPage/SearchPage.css.map +1 -1
  152. package/build/cjs/components/SearchPage/SearchPage.js +87 -73
  153. package/build/cjs/components/SearchPage/SearchPage.js.map +2 -2
  154. package/build/cjs/components/SearchSuggest/AiIcon.d.ts +1 -2
  155. package/build/cjs/components/SearchSuggest/AiIcon.js +2 -2
  156. package/build/cjs/components/SearchSuggest/AiIcon.js.map +3 -3
  157. package/build/cjs/components/SearchSuggest/SearchInput.d.ts +1 -1
  158. package/build/cjs/components/SearchSuggest/SearchInput.js +3 -2
  159. package/build/cjs/components/SearchSuggest/SearchInput.js.map +2 -2
  160. package/build/cjs/components/SearchSuggest/Suggest.d.ts +2 -3
  161. package/build/cjs/components/SearchSuggest/Suggest.js +11 -7
  162. package/build/cjs/components/SearchSuggest/Suggest.js.map +3 -3
  163. package/build/cjs/components/SearchSuggest/SuggestItem.js +26 -13
  164. package/build/cjs/components/SearchSuggest/SuggestItem.js.map +2 -2
  165. package/build/cjs/components/SearchSuggest/index.css.map +1 -1
  166. package/build/cjs/components/SearchSuggest/index.js +58 -51
  167. package/build/cjs/components/SearchSuggest/index.js.map +2 -2
  168. package/build/cjs/components/SearchSuggest/useAiAction.js +4 -13
  169. package/build/cjs/components/SearchSuggest/useAiAction.js.map +3 -3
  170. package/build/cjs/components/ShareButton/ShareButton.css.map +1 -1
  171. package/build/cjs/components/ShareButton/ShareButton.js +2 -2
  172. package/build/cjs/components/ShareButton/ShareButton.js.map +2 -2
  173. package/build/cjs/components/SocialSharingMeta/SocialSharingMeta.d.ts +2 -2
  174. package/build/cjs/components/SocialSharingMeta/SocialSharingMeta.js +11 -4
  175. package/build/cjs/components/SocialSharingMeta/SocialSharingMeta.js.map +3 -3
  176. package/build/cjs/components/StageLabel/StageLabel.js +2 -12
  177. package/build/cjs/components/StageLabel/StageLabel.js.map +2 -2
  178. package/build/cjs/components/SubNavigation/SubNavigation.css.map +1 -1
  179. package/build/cjs/components/SubNavigation/SubNavigation.js +45 -37
  180. package/build/cjs/components/SubNavigation/SubNavigation.js.map +2 -2
  181. package/build/cjs/components/SubNavigation/hooks/useHeadingIntersectionObserver.js +1 -1
  182. package/build/cjs/components/SubNavigation/hooks/useHeadingIntersectionObserver.js.map +2 -2
  183. package/build/cjs/components/Subscribe/Subscribe.css.map +1 -1
  184. package/build/cjs/components/Subscribe/Subscribe.js +43 -33
  185. package/build/cjs/components/Subscribe/Subscribe.js.map +1 -1
  186. package/build/cjs/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.d.ts +1 -1
  187. package/build/cjs/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js +9 -6
  188. package/build/cjs/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js.map +3 -3
  189. package/build/cjs/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.d.ts +1 -1
  190. package/build/cjs/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js +37 -27
  191. package/build/cjs/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js.map +3 -3
  192. package/build/cjs/components/Subscribe/utils.d.ts +1 -1
  193. package/build/cjs/components/Subscribe/utils.js +2 -2
  194. package/build/cjs/components/Subscribe/utils.js.map +2 -2
  195. package/build/cjs/components/Text/Text.js +4 -3
  196. package/build/cjs/components/Text/Text.js.map +1 -1
  197. package/build/cjs/components/Toc/Toc.css.map +1 -1
  198. package/build/cjs/components/Toc/Toc.js +93 -78
  199. package/build/cjs/components/Toc/Toc.js.map +2 -2
  200. package/build/cjs/components/Toc/TocItemRegistry.js +3 -6
  201. package/build/cjs/components/Toc/TocItemRegistry.js.map +1 -1
  202. package/build/cjs/components/TocItem/TocItem.css.map +1 -1
  203. package/build/cjs/components/TocItem/TocItem.js +27 -16
  204. package/build/cjs/components/TocItem/TocItem.js.map +1 -1
  205. package/build/cjs/components/TocLable/TocLabel.css.map +1 -1
  206. package/build/cjs/components/TocLable/TocLabel.js +7 -7
  207. package/build/cjs/components/TocLable/TocLabel.js.map +3 -3
  208. package/build/cjs/components/TocNavPanel/TocNavPanel.css.map +1 -1
  209. package/build/cjs/components/TocNavPanel/TocNavPanel.js +13 -2
  210. package/build/cjs/components/TocNavPanel/TocNavPanel.js.map +1 -1
  211. package/build/cjs/components/ToggleArrow/ToggleArrow.css.map +1 -1
  212. package/build/cjs/components/ToggleArrow/ToggleArrow.js +2 -2
  213. package/build/cjs/components/ToggleArrow/ToggleArrow.js.map +2 -2
  214. package/build/cjs/components/UpdatedAtDate/UpdatedAtDate.css.map +1 -1
  215. package/build/cjs/components/UpdatedAtDate/UpdatedAtDate.js +7 -2
  216. package/build/cjs/components/UpdatedAtDate/UpdatedAtDate.js.map +2 -2
  217. package/build/cjs/components/VersionsSelect/VersionsSelect.js +3 -12
  218. package/build/cjs/components/VersionsSelect/VersionsSelect.js.map +2 -2
  219. package/build/cjs/components/Widgets/Widgets.css.map +1 -1
  220. package/build/cjs/components/navigation/CustomFooter/CustomFooter.css.map +1 -1
  221. package/build/cjs/components/navigation/CustomFooter/CustomFooter.js +6 -2
  222. package/build/cjs/components/navigation/CustomFooter/CustomFooter.js.map +2 -2
  223. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.css.map +1 -1
  224. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.js +27 -23
  225. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.js.map +2 -2
  226. package/build/cjs/components/navigation/DropdownContent/Column/Column.css.map +1 -1
  227. package/build/cjs/components/navigation/DropdownContent/Column/Column.js +2 -12
  228. package/build/cjs/components/navigation/DropdownContent/Column/Column.js.map +3 -3
  229. package/build/cjs/components/navigation/DropdownContent/DropdownContent.css.map +1 -1
  230. package/build/cjs/components/navigation/DropdownContent/DropdownContent.js +4 -14
  231. package/build/cjs/components/navigation/DropdownContent/DropdownContent.js.map +3 -3
  232. package/build/cjs/components/navigation/DropdownContent/List/List.js +5 -15
  233. package/build/cjs/components/navigation/DropdownContent/List/List.js.map +3 -3
  234. package/build/cjs/components/navigation/DropdownContent/Section/Section.css.map +1 -1
  235. package/build/cjs/components/navigation/DropdownContent/Section/Section.js +13 -20
  236. package/build/cjs/components/navigation/DropdownContent/Section/Section.js.map +3 -3
  237. package/build/cjs/components/navigation/Label/Label.css.map +1 -1
  238. package/build/cjs/components/navigation/Label/Label.js +2 -12
  239. package/build/cjs/components/navigation/Label/Label.js.map +3 -3
  240. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.css.map +1 -1
  241. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.js +16 -9
  242. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.js.map +2 -2
  243. package/build/cjs/components/navigation/NavigationDropdown/ContentWrapper.js +6 -12
  244. package/build/cjs/components/navigation/NavigationDropdown/ContentWrapper.js.map +3 -3
  245. package/build/cjs/components/navigation/NavigationDropdown/NavigationDropdown.css.map +1 -1
  246. package/build/cjs/components/navigation/NavigationDropdown/NavigationDropdown.js +40 -44
  247. package/build/cjs/components/navigation/NavigationDropdown/NavigationDropdown.js.map +3 -3
  248. package/build/cjs/components/navigation/NavigationDropdown/Popup/Popup.js +6 -15
  249. package/build/cjs/components/navigation/NavigationDropdown/Popup/Popup.js.map +3 -3
  250. package/build/cjs/components/navigation/Sidebar/Sidebar.css.map +1 -1
  251. package/build/cjs/components/navigation/Sidebar/Sidebar.js +6 -5
  252. package/build/cjs/components/navigation/Sidebar/Sidebar.js.map +2 -2
  253. package/build/cjs/components/navigation/SidebarContent/SidebarContent.css.map +1 -1
  254. package/build/cjs/components/navigation/SidebarContent/SidebarContent.js +47 -35
  255. package/build/cjs/components/navigation/SidebarContent/SidebarContent.js.map +1 -1
  256. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.css.map +1 -1
  257. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.js +15 -11
  258. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.js.map +2 -2
  259. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.css.map +1 -1
  260. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.js +6 -2
  261. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.js.map +2 -2
  262. package/build/cjs/config/i18n.js +4 -4
  263. package/build/cjs/config/i18n.js.map +2 -2
  264. package/build/cjs/constants.d.ts +14 -0
  265. package/build/cjs/constants.js +16 -0
  266. package/build/cjs/constants.js.map +3 -3
  267. package/build/cjs/contexts/InterfaceContext.js +3 -12
  268. package/build/cjs/contexts/InterfaceContext.js.map +2 -2
  269. package/build/cjs/hoc/_withContext.d.ts +1 -6
  270. package/build/cjs/hoc/_withContext.js +4 -4
  271. package/build/cjs/hoc/_withContext.js.map +1 -1
  272. package/build/cjs/hoc/withLang.d.ts +1 -6
  273. package/build/cjs/hoc/withRouter.d.ts +1 -6
  274. package/build/cjs/hooks/index.d.ts +0 -1
  275. package/build/cjs/hooks/index.js +0 -1
  276. package/build/cjs/hooks/index.js.map +2 -2
  277. package/build/cjs/hooks/useTimer.js +1 -1
  278. package/build/cjs/hooks/useTimer.js.map +2 -2
  279. package/build/cjs/hooks/useVirtualElementRef.js +2 -2
  280. package/build/cjs/hooks/useVirtualElementRef.js.map +2 -2
  281. package/build/cjs/i18n/ar.js +177 -0
  282. package/build/cjs/i18n/ar.js.map +7 -0
  283. package/build/cjs/i18n/bg.js +176 -0
  284. package/build/cjs/i18n/bg.js.map +7 -0
  285. package/build/cjs/i18n/cs.js +177 -0
  286. package/build/cjs/i18n/cs.js.map +7 -0
  287. package/build/cjs/i18n/el.js +177 -0
  288. package/build/cjs/i18n/el.js.map +7 -0
  289. package/build/cjs/i18n/en.js +177 -0
  290. package/build/cjs/i18n/en.js.map +7 -0
  291. package/build/cjs/i18n/es.js +177 -0
  292. package/build/cjs/i18n/es.js.map +7 -0
  293. package/build/cjs/i18n/et.js +177 -0
  294. package/build/cjs/i18n/et.js.map +7 -0
  295. package/build/cjs/i18n/fr.js +177 -0
  296. package/build/cjs/i18n/fr.js.map +7 -0
  297. package/build/cjs/i18n/he.js +177 -0
  298. package/build/cjs/i18n/he.js.map +7 -0
  299. package/build/cjs/i18n/index.js +42 -901
  300. package/build/cjs/i18n/index.js.map +4 -4
  301. package/build/cjs/i18n/kk.js +177 -0
  302. package/build/cjs/i18n/kk.js.map +7 -0
  303. package/build/cjs/i18n/pt.js +177 -0
  304. package/build/cjs/i18n/pt.js.map +7 -0
  305. package/build/cjs/i18n/ru.js +177 -0
  306. package/build/cjs/i18n/ru.js.map +7 -0
  307. package/build/cjs/i18n/tr.js +177 -0
  308. package/build/cjs/i18n/tr.js.map +7 -0
  309. package/build/cjs/i18n/uz.js +177 -0
  310. package/build/cjs/i18n/uz.js.map +7 -0
  311. package/build/cjs/i18n/zh-tw.js +177 -0
  312. package/build/cjs/i18n/zh-tw.js.map +7 -0
  313. package/build/cjs/i18n/zh.js +177 -0
  314. package/build/cjs/i18n/zh.js.map +7 -0
  315. package/build/cjs/index.d.ts +1 -0
  316. package/build/cjs/index.js +1 -0
  317. package/build/cjs/index.js.map +2 -2
  318. package/build/cjs/react-compat.d.ts +15 -0
  319. package/build/cjs/react-compat.js +5 -0
  320. package/build/cjs/react-compat.js.map +7 -0
  321. package/build/cjs/shared/libs/analytics/adapters/yandex-metrika-adapter.js +1 -5
  322. package/build/cjs/shared/libs/analytics/adapters/yandex-metrika-adapter.js.map +1 -1
  323. package/build/cjs/shared/libs/analytics/analytics.js +1 -4
  324. package/build/cjs/shared/libs/analytics/analytics.js.map +1 -1
  325. package/build/cjs/utils/index.d.ts +5 -1
  326. package/build/cjs/utils/index.js +16 -4
  327. package/build/cjs/utils/index.js.map +2 -2
  328. package/build/cjs/utils/sanitize.js +12 -2
  329. package/build/cjs/utils/sanitize.js.map +3 -3
  330. package/build/esm/components/BookmarkButton/BookmarkButton.css.map +1 -1
  331. package/build/esm/components/BookmarkButton/BookmarkButton.js +5 -5
  332. package/build/esm/components/BookmarkButton/BookmarkButton.js.map +1 -1
  333. package/build/esm/components/Breadcrumbs/Breadcrumbs.css.map +1 -1
  334. package/build/esm/components/Breadcrumbs/Breadcrumbs.js +2 -1
  335. package/build/esm/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  336. package/build/esm/components/ConsentPopup/ConsentPopup.js +2 -1
  337. package/build/esm/components/ConsentPopup/ConsentPopup.js.map +1 -1
  338. package/build/esm/components/ContentWrapper/ContentWrapper.js +5 -2
  339. package/build/esm/components/ContentWrapper/ContentWrapper.js.map +1 -1
  340. package/build/esm/components/ContributorAvatars/Avatars/Avatar.js +8 -8
  341. package/build/esm/components/ContributorAvatars/Avatars/Avatar.js.map +1 -1
  342. package/build/esm/components/ContributorAvatars/Avatars/AvatarWithDescription.js +7 -3
  343. package/build/esm/components/ContributorAvatars/Avatars/AvatarWithDescription.js.map +1 -1
  344. package/build/esm/components/ContributorAvatars/Avatars/Details.js +11 -8
  345. package/build/esm/components/ContributorAvatars/Avatars/Details.js.map +2 -2
  346. package/build/esm/components/ContributorAvatars/Avatars/HiddenAvatars.js +18 -14
  347. package/build/esm/components/ContributorAvatars/Avatars/HiddenAvatars.js.map +1 -1
  348. package/build/esm/components/ContributorAvatars/ContributorAvatars.css.map +1 -1
  349. package/build/esm/components/ContributorAvatars/ContributorAvatars.js +25 -13
  350. package/build/esm/components/ContributorAvatars/ContributorAvatars.js.map +1 -1
  351. package/build/esm/components/Contributors/Contributors.css.map +1 -1
  352. package/build/esm/components/Contributors/Contributors.js +5 -2
  353. package/build/esm/components/Contributors/Contributors.js.map +1 -1
  354. package/build/esm/components/Control/Control.css.map +1 -1
  355. package/build/esm/components/Control/Control.d.ts +1 -1
  356. package/build/esm/components/Control/Control.js +40 -30
  357. package/build/esm/components/Control/Control.js.map +2 -2
  358. package/build/esm/components/Controls/Controls.css.map +1 -1
  359. package/build/esm/components/Controls/Controls.js +29 -28
  360. package/build/esm/components/Controls/Controls.js.map +1 -1
  361. package/build/esm/components/Controls/ControlsLayout.d.ts +1 -1
  362. package/build/esm/components/Controls/ControlsLayout.js +7 -6
  363. package/build/esm/components/Controls/ControlsLayout.js.map +2 -2
  364. package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.css.map +1 -1
  365. package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.js +3 -2
  366. package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.js.map +1 -1
  367. package/build/esm/components/Controls/single-controls/EditControl.d.ts +1 -2
  368. package/build/esm/components/Controls/single-controls/EditControl.js +21 -17
  369. package/build/esm/components/Controls/single-controls/EditControl.js.map +2 -2
  370. package/build/esm/components/Controls/single-controls/FullScreenControl.js +3 -2
  371. package/build/esm/components/Controls/single-controls/FullScreenControl.js.map +1 -1
  372. package/build/esm/components/Controls/single-controls/LangControl/LangControl.css.map +1 -1
  373. package/build/esm/components/Controls/single-controls/LangControl/LangControl.d.ts +1 -2
  374. package/build/esm/components/Controls/single-controls/LangControl/LangControl.js +26 -23
  375. package/build/esm/components/Controls/single-controls/LangControl/LangControl.js.map +2 -2
  376. package/build/esm/components/Controls/single-controls/PdfControl.d.ts +1 -2
  377. package/build/esm/components/Controls/single-controls/PdfControl.js +4 -3
  378. package/build/esm/components/Controls/single-controls/PdfControl.js.map +2 -2
  379. package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +1 -1
  380. package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.d.ts +1 -2
  381. package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.js +43 -36
  382. package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.js.map +2 -2
  383. package/build/esm/components/Controls/single-controls/SinglePageControl.d.ts +1 -2
  384. package/build/esm/components/Controls/single-controls/SinglePageControl.js +4 -3
  385. package/build/esm/components/Controls/single-controls/SinglePageControl.js.map +2 -2
  386. package/build/esm/components/DocContentPage/DocContentPage.js +12 -12
  387. package/build/esm/components/DocContentPage/DocContentPage.js.map +1 -1
  388. package/build/esm/components/DocLayout/DocLayout.css.map +1 -1
  389. package/build/esm/components/DocLayout/DocLayout.d.ts +2 -1
  390. package/build/esm/components/DocLayout/DocLayout.js +26 -15
  391. package/build/esm/components/DocLayout/DocLayout.js.map +2 -2
  392. package/build/esm/components/DocLeadingPage/DocLeadingPage.css.map +1 -1
  393. package/build/esm/components/DocLeadingPage/DocLeadingPage.js +32 -15
  394. package/build/esm/components/DocLeadingPage/DocLeadingPage.js.map +1 -1
  395. package/build/esm/components/DocPage/DocPage.css.map +1 -1
  396. package/build/esm/components/DocPage/DocPage.js +129 -92
  397. package/build/esm/components/DocPage/DocPage.js.map +1 -1
  398. package/build/esm/components/DocPage/components/MarkdownButton/MarkdownButton.js +6 -2
  399. package/build/esm/components/DocPage/components/MarkdownButton/MarkdownButton.js.map +1 -1
  400. package/build/esm/components/DocPage/components/RenderBody/RenderBody.js +3 -2
  401. package/build/esm/components/DocPage/components/RenderBody/RenderBody.js.map +2 -2
  402. package/build/esm/components/DocPageTitle/DocPageTitle.css.map +1 -1
  403. package/build/esm/components/DocPageTitle/DocPageTitle.js +6 -3
  404. package/build/esm/components/DocPageTitle/DocPageTitle.js.map +1 -1
  405. package/build/esm/components/ErrorBoundary/ErrorBoundary.d.ts +2 -2
  406. package/build/esm/components/ErrorBoundary/ErrorBoundary.js +3 -6
  407. package/build/esm/components/ErrorBoundary/ErrorBoundary.js.map +2 -2
  408. package/build/esm/components/ErrorPage/ErrorPage.css.map +1 -1
  409. package/build/esm/components/ErrorPage/ErrorPage.js +36 -18
  410. package/build/esm/components/ErrorPage/ErrorPage.js.map +1 -1
  411. package/build/esm/components/Feedback/Feedback.css.map +1 -1
  412. package/build/esm/components/Feedback/Feedback.js +96 -81
  413. package/build/esm/components/Feedback/Feedback.js.map +1 -1
  414. package/build/esm/components/Feedback/controls/DislikeControl.d.ts +1 -2
  415. package/build/esm/components/Feedback/controls/DislikeControl.js +7 -3
  416. package/build/esm/components/Feedback/controls/DislikeControl.js.map +2 -2
  417. package/build/esm/components/Feedback/controls/FeedbackControl.d.ts +1 -2
  418. package/build/esm/components/Feedback/controls/FeedbackControl.js +10 -7
  419. package/build/esm/components/Feedback/controls/FeedbackControl.js.map +2 -2
  420. package/build/esm/components/Feedback/controls/FeedbackFormPopup.d.ts +1 -1
  421. package/build/esm/components/Feedback/controls/FeedbackFormPopup.js +21 -13
  422. package/build/esm/components/Feedback/controls/FeedbackFormPopup.js.map +2 -2
  423. package/build/esm/components/Feedback/controls/LikeControl.d.ts +2 -3
  424. package/build/esm/components/Feedback/controls/LikeControl.js +7 -3
  425. package/build/esm/components/Feedback/controls/LikeControl.js.map +2 -2
  426. package/build/esm/components/Feedback/controls/SuccessPopup.d.ts +2 -3
  427. package/build/esm/components/Feedback/controls/SuccessPopup.js +11 -7
  428. package/build/esm/components/Feedback/controls/SuccessPopup.js.map +2 -2
  429. package/build/esm/components/Gallery/Gallery.css.map +1 -1
  430. package/build/esm/components/Gallery/Gallery.js +2 -2
  431. package/build/esm/components/Gallery/Gallery.js.map +1 -1
  432. package/build/esm/components/Gallery/utils.js +27 -12
  433. package/build/esm/components/Gallery/utils.js.map +2 -2
  434. package/build/esm/components/Mark/Mark.css.map +1 -1
  435. package/build/esm/components/Mark/Mark.js +2 -2
  436. package/build/esm/components/Mark/Mark.js.map +1 -1
  437. package/build/esm/components/Meta/Meta.d.ts +1 -1
  438. package/build/esm/components/Meta/Meta.js +27 -21
  439. package/build/esm/components/Meta/Meta.js.map +2 -2
  440. package/build/esm/components/MiniToc/MiniToc.css.map +1 -1
  441. package/build/esm/components/MiniToc/MiniToc.js +33 -23
  442. package/build/esm/components/MiniToc/MiniToc.js.map +2 -2
  443. package/build/esm/components/MobileControls/MobileControl/MobileControl.css.map +1 -1
  444. package/build/esm/components/MobileControls/MobileControl/MobileControl.js +33 -24
  445. package/build/esm/components/MobileControls/MobileControl/MobileControl.js.map +1 -1
  446. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.css.map +1 -1
  447. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.d.ts +1 -2
  448. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.js +11 -8
  449. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.js.map +2 -2
  450. package/build/esm/components/MobileControls/MobileControls.css.map +1 -1
  451. package/build/esm/components/MobileControls/MobileControls.d.ts +1 -2
  452. package/build/esm/components/MobileControls/MobileControls.js +8 -4
  453. package/build/esm/components/MobileControls/MobileControls.js.map +2 -2
  454. package/build/esm/components/NeuroExpertModal/NeuroExpertModal.css.map +1 -1
  455. package/build/esm/components/NeuroExpertModal/NeuroExpertModal.js +23 -14
  456. package/build/esm/components/NeuroExpertModal/NeuroExpertModal.js.map +2 -2
  457. package/build/esm/components/Notification/Notification.css.map +1 -1
  458. package/build/esm/components/Notification/Notification.js +20 -15
  459. package/build/esm/components/Notification/Notification.js.map +1 -1
  460. package/build/esm/components/OutsideClick/OutsideClick.d.ts +3 -3
  461. package/build/esm/components/OutsideClick/OutsideClick.js +5 -8
  462. package/build/esm/components/OutsideClick/OutsideClick.js.map +2 -2
  463. package/build/esm/components/Paginator/Paginator.css.map +1 -1
  464. package/build/esm/components/Paginator/Paginator.d.ts +1 -2
  465. package/build/esm/components/Paginator/Paginator.js +10 -10
  466. package/build/esm/components/Paginator/Paginator.js.map +2 -2
  467. package/build/esm/components/SearchBar/SearchBar.css.map +1 -1
  468. package/build/esm/components/SearchBar/SearchBar.d.ts +1 -2
  469. package/build/esm/components/SearchBar/SearchBar.js +43 -24
  470. package/build/esm/components/SearchBar/SearchBar.js.map +2 -2
  471. package/build/esm/components/SearchBar/hooks.js +1 -1
  472. package/build/esm/components/SearchBar/hooks.js.map +2 -2
  473. package/build/esm/components/SearchBar/withHighlightedSearchWords.js +6 -5
  474. package/build/esm/components/SearchBar/withHighlightedSearchWords.js.map +1 -1
  475. package/build/esm/components/SearchItem/SearchItem.css.map +1 -1
  476. package/build/esm/components/SearchItem/SearchItem.d.ts +1 -2
  477. package/build/esm/components/SearchItem/SearchItem.js +45 -36
  478. package/build/esm/components/SearchItem/SearchItem.js.map +2 -2
  479. package/build/esm/components/SearchPage/SearchPage.css.map +1 -1
  480. package/build/esm/components/SearchPage/SearchPage.js +87 -73
  481. package/build/esm/components/SearchPage/SearchPage.js.map +1 -1
  482. package/build/esm/components/SearchSuggest/AiIcon.d.ts +1 -2
  483. package/build/esm/components/SearchSuggest/AiIcon.js +2 -2
  484. package/build/esm/components/SearchSuggest/AiIcon.js.map +2 -2
  485. package/build/esm/components/SearchSuggest/SearchInput.d.ts +1 -1
  486. package/build/esm/components/SearchSuggest/SearchInput.js +3 -2
  487. package/build/esm/components/SearchSuggest/SearchInput.js.map +1 -1
  488. package/build/esm/components/SearchSuggest/Suggest.d.ts +2 -3
  489. package/build/esm/components/SearchSuggest/Suggest.js +11 -7
  490. package/build/esm/components/SearchSuggest/Suggest.js.map +2 -2
  491. package/build/esm/components/SearchSuggest/SuggestItem.js +26 -13
  492. package/build/esm/components/SearchSuggest/SuggestItem.js.map +1 -1
  493. package/build/esm/components/SearchSuggest/index.css.map +1 -1
  494. package/build/esm/components/SearchSuggest/index.js +58 -51
  495. package/build/esm/components/SearchSuggest/index.js.map +1 -1
  496. package/build/esm/components/SearchSuggest/useAiAction.js +4 -3
  497. package/build/esm/components/SearchSuggest/useAiAction.js.map +2 -2
  498. package/build/esm/components/ShareButton/ShareButton.css.map +1 -1
  499. package/build/esm/components/ShareButton/ShareButton.js +2 -2
  500. package/build/esm/components/ShareButton/ShareButton.js.map +1 -1
  501. package/build/esm/components/SocialSharingMeta/SocialSharingMeta.d.ts +2 -2
  502. package/build/esm/components/SocialSharingMeta/SocialSharingMeta.js +11 -4
  503. package/build/esm/components/SocialSharingMeta/SocialSharingMeta.js.map +2 -2
  504. package/build/esm/components/StageLabel/StageLabel.js +2 -2
  505. package/build/esm/components/StageLabel/StageLabel.js.map +1 -1
  506. package/build/esm/components/SubNavigation/SubNavigation.css.map +1 -1
  507. package/build/esm/components/SubNavigation/SubNavigation.js +45 -37
  508. package/build/esm/components/SubNavigation/SubNavigation.js.map +1 -1
  509. package/build/esm/components/SubNavigation/hooks/useHeadingIntersectionObserver.js +1 -1
  510. package/build/esm/components/SubNavigation/hooks/useHeadingIntersectionObserver.js.map +2 -2
  511. package/build/esm/components/Subscribe/Subscribe.css.map +1 -1
  512. package/build/esm/components/Subscribe/Subscribe.js +43 -33
  513. package/build/esm/components/Subscribe/Subscribe.js.map +1 -1
  514. package/build/esm/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.d.ts +1 -1
  515. package/build/esm/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js +9 -6
  516. package/build/esm/components/Subscribe/SubscribeSuccessPopup/SubscribeSuccessPopup.js.map +2 -2
  517. package/build/esm/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.d.ts +1 -1
  518. package/build/esm/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js +37 -27
  519. package/build/esm/components/Subscribe/SubscribeVariantsPopup/SubscribeVariantsPopup.js.map +2 -2
  520. package/build/esm/components/Subscribe/utils.d.ts +1 -1
  521. package/build/esm/components/Subscribe/utils.js +1 -1
  522. package/build/esm/components/Subscribe/utils.js.map +1 -1
  523. package/build/esm/components/Text/Text.js +4 -3
  524. package/build/esm/components/Text/Text.js.map +1 -1
  525. package/build/esm/components/Toc/Toc.css.map +1 -1
  526. package/build/esm/components/Toc/Toc.js +93 -78
  527. package/build/esm/components/Toc/Toc.js.map +2 -2
  528. package/build/esm/components/Toc/TocItemRegistry.js +3 -8
  529. package/build/esm/components/Toc/TocItemRegistry.js.map +1 -1
  530. package/build/esm/components/TocItem/TocItem.css.map +1 -1
  531. package/build/esm/components/TocItem/TocItem.js +27 -16
  532. package/build/esm/components/TocItem/TocItem.js.map +1 -1
  533. package/build/esm/components/TocLable/TocLabel.css.map +1 -1
  534. package/build/esm/components/TocLable/TocLabel.js +7 -7
  535. package/build/esm/components/TocLable/TocLabel.js.map +2 -2
  536. package/build/esm/components/TocNavPanel/TocNavPanel.css.map +1 -1
  537. package/build/esm/components/TocNavPanel/TocNavPanel.js +13 -2
  538. package/build/esm/components/TocNavPanel/TocNavPanel.js.map +1 -1
  539. package/build/esm/components/ToggleArrow/ToggleArrow.css.map +1 -1
  540. package/build/esm/components/ToggleArrow/ToggleArrow.js +2 -2
  541. package/build/esm/components/ToggleArrow/ToggleArrow.js.map +1 -1
  542. package/build/esm/components/UpdatedAtDate/UpdatedAtDate.css.map +1 -1
  543. package/build/esm/components/UpdatedAtDate/UpdatedAtDate.js +7 -2
  544. package/build/esm/components/UpdatedAtDate/UpdatedAtDate.js.map +1 -1
  545. package/build/esm/components/VersionsSelect/VersionsSelect.js +3 -2
  546. package/build/esm/components/VersionsSelect/VersionsSelect.js.map +1 -1
  547. package/build/esm/components/Widgets/Widgets.css.map +1 -1
  548. package/build/esm/components/navigation/CustomFooter/CustomFooter.css.map +1 -1
  549. package/build/esm/components/navigation/CustomFooter/CustomFooter.js +6 -2
  550. package/build/esm/components/navigation/CustomFooter/CustomFooter.js.map +1 -1
  551. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.css.map +1 -1
  552. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.js +27 -23
  553. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.js.map +1 -1
  554. package/build/esm/components/navigation/DropdownContent/Column/Column.css.map +1 -1
  555. package/build/esm/components/navigation/DropdownContent/Column/Column.js +2 -2
  556. package/build/esm/components/navigation/DropdownContent/Column/Column.js.map +2 -2
  557. package/build/esm/components/navigation/DropdownContent/DropdownContent.css.map +1 -1
  558. package/build/esm/components/navigation/DropdownContent/DropdownContent.js +4 -4
  559. package/build/esm/components/navigation/DropdownContent/DropdownContent.js.map +2 -2
  560. package/build/esm/components/navigation/DropdownContent/List/List.js +5 -5
  561. package/build/esm/components/navigation/DropdownContent/List/List.js.map +2 -2
  562. package/build/esm/components/navigation/DropdownContent/Section/Section.css.map +1 -1
  563. package/build/esm/components/navigation/DropdownContent/Section/Section.js +13 -10
  564. package/build/esm/components/navigation/DropdownContent/Section/Section.js.map +2 -2
  565. package/build/esm/components/navigation/Label/Label.css.map +1 -1
  566. package/build/esm/components/navigation/Label/Label.js +2 -2
  567. package/build/esm/components/navigation/Label/Label.js.map +2 -2
  568. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.css.map +1 -1
  569. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.js +16 -9
  570. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.js.map +1 -1
  571. package/build/esm/components/navigation/NavigationDropdown/ContentWrapper.js +6 -2
  572. package/build/esm/components/navigation/NavigationDropdown/ContentWrapper.js.map +2 -2
  573. package/build/esm/components/navigation/NavigationDropdown/NavigationDropdown.css.map +1 -1
  574. package/build/esm/components/navigation/NavigationDropdown/NavigationDropdown.js +40 -34
  575. package/build/esm/components/navigation/NavigationDropdown/NavigationDropdown.js.map +2 -2
  576. package/build/esm/components/navigation/NavigationDropdown/Popup/Popup.js +6 -5
  577. package/build/esm/components/navigation/NavigationDropdown/Popup/Popup.js.map +2 -2
  578. package/build/esm/components/navigation/Sidebar/Sidebar.css.map +1 -1
  579. package/build/esm/components/navigation/Sidebar/Sidebar.js +6 -5
  580. package/build/esm/components/navigation/Sidebar/Sidebar.js.map +1 -1
  581. package/build/esm/components/navigation/SidebarContent/SidebarContent.css.map +1 -1
  582. package/build/esm/components/navigation/SidebarContent/SidebarContent.js +47 -35
  583. package/build/esm/components/navigation/SidebarContent/SidebarContent.js.map +1 -1
  584. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.css.map +1 -1
  585. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.js +15 -11
  586. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.js.map +1 -1
  587. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.css.map +1 -1
  588. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.js +6 -2
  589. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.js.map +1 -1
  590. package/build/esm/config/i18n.js +4 -4
  591. package/build/esm/config/i18n.js.map +2 -2
  592. package/build/esm/constants.d.ts +14 -0
  593. package/build/esm/constants.js +16 -0
  594. package/build/esm/constants.js.map +3 -3
  595. package/build/esm/contexts/InterfaceContext.js +3 -2
  596. package/build/esm/contexts/InterfaceContext.js.map +1 -1
  597. package/build/esm/hoc/_withContext.d.ts +1 -6
  598. package/build/esm/hoc/_withContext.js +4 -4
  599. package/build/esm/hoc/_withContext.js.map +1 -1
  600. package/build/esm/hoc/withLang.d.ts +1 -6
  601. package/build/esm/hoc/withRouter.d.ts +1 -6
  602. package/build/esm/hooks/index.d.ts +0 -1
  603. package/build/esm/hooks/index.js +0 -1
  604. package/build/esm/hooks/index.js.map +2 -2
  605. package/build/esm/hooks/useTimer.js +1 -1
  606. package/build/esm/hooks/useTimer.js.map +2 -2
  607. package/build/esm/hooks/useVirtualElementRef.js +2 -2
  608. package/build/esm/hooks/useVirtualElementRef.js.map +2 -2
  609. package/build/esm/i18n/ar.js +188 -0
  610. package/build/esm/i18n/ar.js.map +7 -0
  611. package/build/esm/i18n/bg.js +187 -0
  612. package/build/esm/i18n/bg.js.map +7 -0
  613. package/build/esm/i18n/cs.js +188 -0
  614. package/build/esm/i18n/cs.js.map +7 -0
  615. package/build/esm/i18n/el.js +188 -0
  616. package/build/esm/i18n/el.js.map +7 -0
  617. package/build/esm/i18n/en.js +188 -0
  618. package/build/esm/i18n/en.js.map +7 -0
  619. package/build/esm/i18n/es.js +188 -0
  620. package/build/esm/i18n/es.js.map +7 -0
  621. package/build/esm/i18n/et.js +188 -0
  622. package/build/esm/i18n/et.js.map +7 -0
  623. package/build/esm/i18n/fr.js +188 -0
  624. package/build/esm/i18n/fr.js.map +7 -0
  625. package/build/esm/i18n/he.js +188 -0
  626. package/build/esm/i18n/he.js.map +7 -0
  627. package/build/esm/i18n/index.js +32 -899
  628. package/build/esm/i18n/index.js.map +3 -3
  629. package/build/esm/i18n/kk.js +188 -0
  630. package/build/esm/i18n/kk.js.map +7 -0
  631. package/build/esm/i18n/pt.js +188 -0
  632. package/build/esm/i18n/pt.js.map +7 -0
  633. package/build/esm/i18n/ru.js +188 -0
  634. package/build/esm/i18n/ru.js.map +7 -0
  635. package/build/esm/i18n/tr.js +188 -0
  636. package/build/esm/i18n/tr.js.map +7 -0
  637. package/build/esm/i18n/uz.js +188 -0
  638. package/build/esm/i18n/uz.js.map +7 -0
  639. package/build/esm/i18n/zh-tw.js +188 -0
  640. package/build/esm/i18n/zh-tw.js.map +7 -0
  641. package/build/esm/i18n/zh.js +188 -0
  642. package/build/esm/i18n/zh.js.map +7 -0
  643. package/build/esm/index.d.ts +1 -0
  644. package/build/esm/index.js +1 -0
  645. package/build/esm/index.js.map +2 -2
  646. package/build/esm/react-compat.d.ts +15 -0
  647. package/build/esm/react-compat.js +3 -0
  648. package/build/esm/react-compat.js.map +7 -0
  649. package/build/esm/shared/libs/analytics/adapters/yandex-metrika-adapter.js +1 -7
  650. package/build/esm/shared/libs/analytics/adapters/yandex-metrika-adapter.js.map +1 -1
  651. package/build/esm/shared/libs/analytics/analytics.js +1 -6
  652. package/build/esm/shared/libs/analytics/analytics.js.map +1 -1
  653. package/build/esm/utils/index.d.ts +6 -2
  654. package/build/esm/utils/index.js +14 -2
  655. package/build/esm/utils/index.js.map +2 -2
  656. package/build/esm/utils/sanitize.js +2 -2
  657. package/build/esm/utils/sanitize.js.map +2 -2
  658. package/build/index.css.map +1 -1
  659. package/build/themes/common/index.css.map +1 -1
  660. package/package.json +23 -23
  661. package/build/cjs/components/ContributorAvatars/__tests__/ContributorAvatars.spec.d.ts +0 -1
  662. package/build/cjs/components/Control/__tests__/Control.spec.d.ts +0 -1
  663. package/build/cjs/components/Controls/__tests__/Controls.spec.d.ts +0 -1
  664. package/build/cjs/components/DocLeadingPage/__tests__/DocLeadingPage.spec.d.ts +0 -1
  665. package/build/cjs/components/DocPage/__tests__/DocPage.spec.d.ts +0 -1
  666. package/build/cjs/components/ErrorPage/__tests__/ErrorPage.spec.d.ts +0 -1
  667. package/build/cjs/components/Feedback/__tests__/Feedback.spec.d.ts +0 -1
  668. package/build/cjs/components/Feedback/__tests__/FeedbackControls.spec.d.ts +0 -1
  669. package/build/cjs/components/MiniToc/__tests__/MiniToc.spec.d.ts +0 -1
  670. package/build/cjs/components/SearchSuggest/__tests__/SearchSuggest.spec.d.ts +0 -1
  671. package/build/cjs/components/SearchSuggest/__tests__/SearchSuggestWithAi.spec.d.ts +0 -1
  672. package/build/cjs/components/Subscribe/__tests__/Subscribe.spec.d.ts +0 -1
  673. package/build/cjs/components/Toc/__tests__/Toc.spec.d.ts +0 -1
  674. package/build/cjs/components/TocLable/__tests__/TocLabel.spec.d.ts +0 -1
  675. package/build/cjs/components/navigation/CustomFooter/__tests__/CustomFooter.spec.d.ts +0 -1
  676. package/build/cjs/hooks/usePopper.d.ts +0 -33
  677. package/build/cjs/hooks/usePopper.js +0 -93
  678. package/build/cjs/hooks/usePopper.js.map +0 -7
  679. package/build/esm/components/ContributorAvatars/__tests__/ContributorAvatars.spec.d.ts +0 -1
  680. package/build/esm/components/Control/__tests__/Control.spec.d.ts +0 -1
  681. package/build/esm/components/Controls/__tests__/Controls.spec.d.ts +0 -1
  682. package/build/esm/components/DocLeadingPage/__tests__/DocLeadingPage.spec.d.ts +0 -1
  683. package/build/esm/components/DocPage/__tests__/DocPage.spec.d.ts +0 -1
  684. package/build/esm/components/ErrorPage/__tests__/ErrorPage.spec.d.ts +0 -1
  685. package/build/esm/components/Feedback/__tests__/Feedback.spec.d.ts +0 -1
  686. package/build/esm/components/Feedback/__tests__/FeedbackControls.spec.d.ts +0 -1
  687. package/build/esm/components/MiniToc/__tests__/MiniToc.spec.d.ts +0 -1
  688. package/build/esm/components/SearchSuggest/__tests__/SearchSuggest.spec.d.ts +0 -1
  689. package/build/esm/components/SearchSuggest/__tests__/SearchSuggestWithAi.spec.d.ts +0 -1
  690. package/build/esm/components/Subscribe/__tests__/Subscribe.spec.d.ts +0 -1
  691. package/build/esm/components/Toc/__tests__/Toc.spec.d.ts +0 -1
  692. package/build/esm/components/TocLable/__tests__/TocLabel.spec.d.ts +0 -1
  693. package/build/esm/components/navigation/CustomFooter/__tests__/CustomFooter.spec.d.ts +0 -1
  694. package/build/esm/hooks/usePopper.d.ts +0 -33
  695. package/build/esm/hooks/usePopper.js +0 -62
  696. package/build/esm/hooks/usePopper.js.map +0 -7
@@ -43,7 +43,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
43
43
  mod
44
44
  ));
45
45
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
46
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
47
46
 
48
47
  // src/components/Toc/Toc.tsx
49
48
  var Toc_exports = {};
@@ -54,7 +53,7 @@ module.exports = __toCommonJS(Toc_exports);
54
53
  var import_react = __toESM(require("react"));
55
54
  var import_bem_cn_lite = __toESM(require("bem-cn-lite"));
56
55
  var import_omit = __toESM(require("lodash/omit"));
57
- var import_hooks = require("../../hooks");
56
+ var import_constants = require("../../constants");
58
57
  var import_models = require("../../models");
59
58
  var import_utils = require("../../utils");
60
59
  var import_Controls = require("../Controls");
@@ -63,6 +62,7 @@ var import_TocItem = require("../TocItem");
63
62
  var import_TocLabel = __toESM(require("../TocLable/TocLabel"));
64
63
  var import_TocItemRegistry = require("./TocItemRegistry");
65
64
  var import_Toc = require("./Toc.css");
65
+ var import_jsx_runtime = require("react/jsx-runtime");
66
66
  var b = (0, import_bem_cn_lite.default)("dc-toc");
67
67
  function zip(array, fill) {
68
68
  return array.reduce((acc, item) => Object.assign(acc, { [item]: fill }), {});
@@ -70,23 +70,22 @@ function zip(array, fill) {
70
70
  var TocClass = class extends import_react.default.Component {
71
71
  constructor(props) {
72
72
  super(props);
73
- __publicField(this, "contentRef", import_react.default.createRef());
74
- __publicField(this, "rootRef", import_react.default.createRef());
75
- __publicField(this, "activeRef", import_react.default.createRef());
76
- __publicField(this, "containerEl", null);
77
- __publicField(this, "footerEl", null);
78
- __publicField(this, "tocTopId");
79
- __publicField(this, "normalizeUrl", (path, hash) => {
73
+ this.contentRef = import_react.default.createRef();
74
+ this.rootRef = import_react.default.createRef();
75
+ this.activeRef = import_react.default.createRef();
76
+ this.containerEl = null;
77
+ this.footerEl = null;
78
+ this.normalizeUrl = (path, hash) => {
80
79
  const { singlePage } = this.props;
81
80
  return singlePage ? (0, import_utils.normalizeHash)(hash) : (0, import_utils.normalizePath)(path);
82
- });
83
- __publicField(this, "renderList", (items) => {
81
+ };
82
+ this.renderList = (items) => {
84
83
  const { toggleItem } = this;
85
84
  const { singlePage } = this.props;
86
85
  const { activeId, fixedById } = this.state;
87
86
  const activeItem = activeId && this.state.registry.getItemById(activeId);
88
87
  const activeScope = activeItem ? zip([activeId].concat(this.state.registry.getParentIds(activeId)), true) : {};
89
- return /* @__PURE__ */ import_react.default.createElement("ul", { className: b("list"), "aria-labelledby": this.tocTopId }, items.map((item, index) => {
88
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ul", { className: b("list"), "aria-labelledby": this.tocTopId, children: items.map((item, index) => {
90
89
  const main = !this.state.registry.getParentId(item.id);
91
90
  const active = singlePage && !activeId && index === 0 && main || item.id === activeId;
92
91
  const opened = fixedById[item.id] === "opened";
@@ -95,32 +94,34 @@ var TocClass = class extends import_react.default.Component {
95
94
  const expandable = hasItems && !item.labeled;
96
95
  const expanded = expandable && !closed && (item.expanded || activeScope[item.id] || opened) || hasItems && Boolean(item.labeled);
97
96
  const ref = active ? { ref: this.activeRef } : {};
98
- return /* @__PURE__ */ import_react.default.createElement(
97
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
99
98
  "li",
100
99
  {
101
- key: item.id,
102
100
  id: item.id,
103
101
  className: b("list-item", {
104
102
  main,
105
103
  active,
106
104
  opened: expanded,
107
105
  labeled: item.labeled
108
- })
106
+ }),
107
+ children: [
108
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
109
+ import_TocItem.TocItem,
110
+ __spreadValues({}, __spreadProps(__spreadValues(__spreadValues({}, item), ref), {
111
+ active,
112
+ expanded,
113
+ expandable,
114
+ toggleItem
115
+ }))
116
+ ),
117
+ expanded && this.renderList(item.items)
118
+ ]
109
119
  },
110
- /* @__PURE__ */ import_react.default.createElement(
111
- import_TocItem.TocItem,
112
- __spreadValues({}, __spreadProps(__spreadValues(__spreadValues({}, item), ref), {
113
- active,
114
- expanded,
115
- expandable,
116
- toggleItem
117
- }))
118
- ),
119
- expanded && this.renderList(item.items)
120
+ item.id
120
121
  );
121
- }));
122
- });
123
- __publicField(this, "scrollToItem", () => {
122
+ }) });
123
+ };
124
+ this.scrollToItem = () => {
124
125
  var _a;
125
126
  if (!this.activeRef.current) {
126
127
  return;
@@ -138,42 +139,42 @@ var TocClass = class extends import_react.default.Component {
138
139
  if (!itemVisible) {
139
140
  scrollableParent.scrollTop = itemOffset - Math.floor(scrollableHeight / 2) + itemHeight;
140
141
  }
141
- });
142
- __publicField(this, "scrollToActiveItem", () => {
142
+ };
143
+ this.scrollToActiveItem = () => {
143
144
  if (!this.activeRef.current) {
144
145
  return;
145
146
  }
146
147
  this.scrollToItem();
147
- });
148
- __publicField(this, "handleContentScroll", () => {
148
+ };
149
+ this.handleContentScroll = () => {
149
150
  const contentNode = this.contentRef.current;
150
151
  const contentScrolled = contentNode ? contentNode.scrollTop > 0 : false;
151
152
  if (contentScrolled !== this.state.contentScrolled) {
152
153
  this.setState({ contentScrolled });
153
154
  }
154
- });
155
- __publicField(this, "openItem", (id) => {
155
+ };
156
+ this.openItem = (id) => {
156
157
  this.setState((prevState) => __spreadProps(__spreadValues({}, prevState), {
157
158
  fixedById: __spreadProps(__spreadValues({}, prevState.fixedById), {
158
159
  [id]: "opened"
159
160
  })
160
161
  }));
161
- });
162
- __publicField(this, "closeItem", (id) => {
162
+ };
163
+ this.closeItem = (id) => {
163
164
  const ids = this.state.registry.getChildIds(id);
164
165
  this.setState((prevState) => __spreadProps(__spreadValues({}, prevState), {
165
166
  fixedById: __spreadProps(__spreadValues({}, (0, import_omit.default)(prevState.fixedById, ids)), {
166
167
  [id]: "closed"
167
168
  })
168
169
  }));
169
- });
170
- __publicField(this, "toggleItem", (id, opened) => {
170
+ };
171
+ this.toggleItem = (id, opened) => {
171
172
  if (opened) {
172
173
  this.closeItem(id);
173
174
  } else {
174
175
  this.openItem(id);
175
176
  }
176
- });
177
+ };
177
178
  this.state = this.computeState(this.getInitialState());
178
179
  this.tocTopId = props.tocTopId;
179
180
  }
@@ -216,17 +217,21 @@ var TocClass = class extends import_react.default.Component {
216
217
  render() {
217
218
  const { items, hideTocHeader, extraHeader } = this.props;
218
219
  const content = items ? this.renderList(items) : this.renderEmpty("");
219
- return /* @__PURE__ */ import_react.default.createElement("nav", { className: b(), ref: this.rootRef }, this.renderTop(), /* @__PURE__ */ import_react.default.createElement(
220
- "div",
221
- {
222
- className: b("content", {
223
- offset_top: hideTocHeader,
224
- "with-extra-header": Boolean(extraHeader)
225
- }),
226
- ref: this.contentRef
227
- },
228
- content
229
- ), this.renderBottom());
220
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("nav", { className: b(), ref: this.rootRef, children: [
221
+ this.renderTop(),
222
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
223
+ "div",
224
+ {
225
+ className: b("content", {
226
+ offset_top: hideTocHeader,
227
+ "with-extra-header": Boolean(extraHeader)
228
+ }),
229
+ ref: this.contentRef,
230
+ children: content
231
+ }
232
+ ),
233
+ this.renderBottom()
234
+ ] });
230
235
  }
231
236
  computeState(prevState) {
232
237
  const { router } = this.props;
@@ -244,12 +249,16 @@ var TocClass = class extends import_react.default.Component {
244
249
  return __spreadProps(__spreadValues({}, prevState), { activeId, fixedById });
245
250
  }
246
251
  renderEmpty(text) {
247
- return /* @__PURE__ */ import_react.default.createElement("div", { className: b("empty") }, text);
252
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: b("empty"), children: text });
248
253
  }
249
254
  renderTopMainContent() {
250
255
  const { tocTitleIcon, title, label } = this.props;
251
- const topHeader = /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header") }, /* @__PURE__ */ import_react.default.createElement(import_HTML.HTML, null, title));
252
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, tocTitleIcon && /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header-icon"), "aria-hidden": "true" }, tocTitleIcon), topHeader, label && /* @__PURE__ */ import_react.default.createElement(import_TocLabel.default, { label }));
256
+ const topHeader = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: b("top-header"), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_HTML.HTML, { children: title }) });
257
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
258
+ tocTitleIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: b("top-header-icon"), "aria-hidden": "true", children: tocTitleIcon }),
259
+ topHeader,
260
+ label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_TocLabel.default, { label })
261
+ ] });
253
262
  }
254
263
  renderTopWithExtra() {
255
264
  const { router, href, singlePage, extraHeader } = this.props;
@@ -257,14 +266,16 @@ var TocClass = class extends import_react.default.Component {
257
266
  const isActive = href ? (0, import_utils.isActiveItem)(router, href, singlePage) : false;
258
267
  const TopMainComponent = href ? "a" : "div";
259
268
  const topMainProps = href ? { href, className: b("top-main-link", { active: isActive }), "data-router-shallow": true } : { className: b("top-main") };
260
- return /* @__PURE__ */ import_react.default.createElement(
269
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
261
270
  "div",
262
271
  {
263
272
  className: b("top", { scrolled: contentScrolled, "with-extra-header": true }),
264
- id: this.tocTopId
265
- },
266
- extraHeader,
267
- /* @__PURE__ */ import_react.default.createElement(TopMainComponent, __spreadValues({}, topMainProps), this.renderTopMainContent())
273
+ id: this.tocTopId,
274
+ children: [
275
+ extraHeader,
276
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TopMainComponent, __spreadProps(__spreadValues({}, topMainProps), { children: this.renderTopMainContent() }))
277
+ ]
278
+ }
268
279
  );
269
280
  }
270
281
  renderTopDefault() {
@@ -273,19 +284,23 @@ var TocClass = class extends import_react.default.Component {
273
284
  let topHeader;
274
285
  if (href) {
275
286
  const active = (0, import_utils.isActiveItem)(router, href, singlePage);
276
- topHeader = /* @__PURE__ */ import_react.default.createElement(
287
+ topHeader = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
277
288
  "a",
278
289
  {
279
290
  href,
280
291
  className: b("top-header", { active, link: true }),
281
- "data-router-shallow": true
282
- },
283
- /* @__PURE__ */ import_react.default.createElement(import_HTML.HTML, null, title)
292
+ "data-router-shallow": true,
293
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_HTML.HTML, { children: title })
294
+ }
284
295
  );
285
296
  } else {
286
- topHeader = /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header") }, /* @__PURE__ */ import_react.default.createElement(import_HTML.HTML, null, title));
297
+ topHeader = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: b("top-header"), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_HTML.HTML, { children: title }) });
287
298
  }
288
- return /* @__PURE__ */ import_react.default.createElement("div", { className: b("top", { scrolled: contentScrolled }), id: this.tocTopId }, tocTitleIcon && /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header-icon"), "aria-hidden": "true" }, tocTitleIcon), topHeader, label && /* @__PURE__ */ import_react.default.createElement(import_TocLabel.default, { label }));
299
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: b("top", { scrolled: contentScrolled }), id: this.tocTopId, children: [
300
+ tocTitleIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: b("top-header-icon"), "aria-hidden": "true", children: tocTitleIcon }),
301
+ topHeader,
302
+ label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_TocLabel.default, { label })
303
+ ] });
289
304
  }
290
305
  renderTop() {
291
306
  const { hideTocHeader, extraHeader } = this.props;
@@ -298,27 +313,27 @@ var TocClass = class extends import_react.default.Component {
298
313
  var _a;
299
314
  const { singlePage, onChangeSinglePage, pdfLink, pdfIconConfig } = this.props;
300
315
  const { contentScrolled } = this.state;
301
- return /* @__PURE__ */ import_react.default.createElement("div", { className: b("bottom", { scrolled: contentScrolled }) }, /* @__PURE__ */ import_react.default.createElement(
316
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: b("bottom", { scrolled: contentScrolled }), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
302
317
  import_Controls.ControlsLayout,
303
318
  {
304
319
  controlSize: (_a = pdfIconConfig == null ? void 0 : pdfIconConfig.size) != null ? _a : import_models.ControlSizes.L,
305
- popupPosition: import_hooks.PopperPosition.TOP_START
306
- },
307
- /* @__PURE__ */ import_react.default.createElement(
308
- import_Controls.Controls,
309
- {
310
- singlePage,
311
- onChangeSinglePage,
312
- pdfLink,
313
- pdfIconConfig
314
- }
315
- )
316
- ));
320
+ popupPosition: import_constants.PopperPosition.TOP_START,
321
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
322
+ import_Controls.Controls,
323
+ {
324
+ singlePage,
325
+ onChangeSinglePage,
326
+ pdfLink,
327
+ pdfIconConfig
328
+ }
329
+ )
330
+ }
331
+ ) });
317
332
  }
318
333
  };
319
334
  function Toc(props) {
320
335
  const tocTopId = (0, import_react.useId)();
321
- return /* @__PURE__ */ import_react.default.createElement(TocClass, __spreadProps(__spreadValues({}, props), { tocTopId }));
336
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TocClass, __spreadProps(__spreadValues({}, props), { tocTopId }));
322
337
  }
323
338
  var Toc_default = Toc;
324
339
  //# sourceMappingURL=Toc.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/Toc/Toc.tsx"],
4
- "sourcesContent": ["import type {Router, TocData, TocItem} from '../../models';\n\nimport React, {useId} from 'react';\nimport block from 'bem-cn-lite';\nimport omit from 'lodash/omit';\n\nimport {PopperPosition} from '../../hooks';\nimport {ControlSizes} from '../../models';\nimport {isActiveItem, normalizeHash, normalizePath} from '../../utils';\nimport {Controls, ControlsLayout} from '../Controls';\nimport {HTML} from '../HTML';\nimport {TocItem as Item} from '../TocItem';\nimport TocLabel from '../TocLable/TocLabel';\n\nimport {TocItemRegistry} from './TocItemRegistry';\nimport './Toc.scss';\n\nconst b = block('dc-toc');\n\nfunction zip<T>(array: string[], fill: T): Record<string, T> {\n return array.reduce((acc, item) => Object.assign(acc, {[item]: fill}), {});\n}\n\nexport interface TocProps extends TocData {\n router: Router;\n headerHeight?: number;\n tocTitleIcon?: React.ReactNode;\n hideTocHeader?: boolean;\n singlePage?: boolean;\n onChangeSinglePage?: (value: boolean) => void;\n pdfLink?: string;\n pdfIconConfig?: {position?: string; size?: 'S' | 'M' | 'L'; icon?: string};\n}\n\ninterface TocInternalProps extends TocProps {\n tocTopId: string;\n}\n\ninterface TocState {\n activeId: string | null | undefined;\n fixedById: Record<string, 'opened' | 'closed'>;\n contentScrolled: boolean;\n registry: TocItemRegistry;\n}\n\nclass TocClass extends React.Component<TocInternalProps, TocState> {\n contentRef = React.createRef<HTMLDivElement>();\n rootRef = React.createRef<HTMLDivElement>();\n activeRef = React.createRef<HTMLButtonElement>();\n\n containerEl: HTMLElement | null = null;\n footerEl: HTMLElement | null = null;\n tocTopId: string;\n\n constructor(props: TocInternalProps) {\n super(props);\n\n this.state = this.computeState(this.getInitialState());\n this.tocTopId = props.tocTopId;\n }\n\n getInitialState() {\n return {\n registry: new TocItemRegistry(this.props.items || [], this.normalizeUrl),\n fixedById: {},\n activeId: null,\n contentScrolled: false,\n };\n }\n\n componentDidMount() {\n this.containerEl = document.querySelector('.Layout__content');\n this.footerEl = document.querySelector('.Footer');\n\n if (this.contentRef && this.contentRef.current) {\n this.contentRef.current.addEventListener('scroll', this.handleContentScroll);\n }\n\n this.scrollToActiveItem();\n }\n\n componentDidUpdate(prevProps: TocProps, prevState: TocState) {\n const {router, singlePage, items} = this.props;\n\n let nextState;\n\n if (prevProps.items !== items) {\n nextState = this.getInitialState();\n }\n\n if (\n prevProps.router.pathname !== router.pathname ||\n prevProps.router.hash !== router.hash ||\n prevProps.singlePage !== singlePage ||\n nextState\n ) {\n nextState = this.computeState(nextState || prevState);\n } else if (prevState.activeId !== this.state.activeId) {\n this.scrollToActiveItem();\n }\n\n if (nextState) {\n this.setState(nextState);\n }\n }\n\n componentWillUnmount() {\n if (this.contentRef && this.contentRef.current) {\n this.contentRef.current.removeEventListener('scroll', this.handleContentScroll);\n }\n }\n\n render() {\n const {items, hideTocHeader, extraHeader} = this.props;\n const content = items ? this.renderList(items) : this.renderEmpty('');\n\n return (\n <nav className={b()} ref={this.rootRef}>\n {this.renderTop()}\n <div\n className={b('content', {\n offset_top: hideTocHeader,\n 'with-extra-header': Boolean(extraHeader),\n })}\n ref={this.contentRef}\n >\n {content}\n </div>\n {this.renderBottom()}\n </nav>\n );\n }\n\n computeState(prevState: TocState) {\n const {router} = this.props;\n const {pathname, hash} = router;\n\n const activeUrl = this.normalizeUrl(pathname, hash);\n const activeId = activeUrl && prevState.registry.getIdByUrl(activeUrl as string);\n\n let fixedById = prevState.fixedById;\n\n if (activeId && prevState.activeId && activeId !== prevState.activeId) {\n const expandedIds = [activeId].concat(prevState.registry.getParentIds(activeId));\n const dropClosedSign = expandedIds.filter((id) => prevState.fixedById[id] === 'closed');\n\n if (dropClosedSign.length) {\n fixedById = omit(fixedById, dropClosedSign);\n }\n }\n\n return {...prevState, activeId, fixedById};\n }\n\n private normalizeUrl = (path: string, hash: string | undefined) => {\n const {singlePage} = this.props;\n\n return singlePage ? normalizeHash(hash) : normalizePath(path);\n };\n\n private renderList = (items: TocItem[]) => {\n const {toggleItem} = this;\n const {singlePage} = this.props;\n const {activeId, fixedById} = this.state;\n\n const activeItem = activeId && this.state.registry.getItemById(activeId);\n const activeScope: Record<string, boolean> = activeItem\n ? zip([activeId].concat(this.state.registry.getParentIds(activeId)), true)\n : {};\n\n return (\n <ul className={b('list')} aria-labelledby={this.tocTopId}>\n {items.map((item, index) => {\n const main = !this.state.registry.getParentId(item.id);\n const active =\n (singlePage && !activeId && index === 0 && main) || item.id === activeId;\n const opened = fixedById[item.id] === 'opened';\n const closed = fixedById[item.id] === 'closed';\n const hasItems = Boolean(item.items && item.items.length > 0);\n const expandable = hasItems && !item.labeled;\n const expanded =\n (expandable &&\n !closed &&\n (item.expanded || activeScope[item.id] || opened)) ||\n (hasItems && Boolean(item.labeled));\n\n const ref = active ? {ref: this.activeRef} : {};\n\n return (\n <li\n key={item.id}\n id={item.id}\n className={b('list-item', {\n main,\n active,\n opened: expanded,\n labeled: item.labeled,\n })}\n >\n <Item\n {...{\n ...item,\n ...ref,\n active,\n expanded,\n expandable,\n toggleItem,\n }}\n />\n {expanded && this.renderList(item.items as TocItem[])}\n </li>\n );\n })}\n </ul>\n );\n };\n\n private renderEmpty(text: string) {\n return <div className={b('empty')}>{text}</div>;\n }\n\n private renderTopMainContent() {\n const {tocTitleIcon, title, label} = this.props;\n const topHeader = (\n <div className={b('top-header')}>\n <HTML>{title}</HTML>\n </div>\n );\n\n return (\n <>\n {tocTitleIcon && (\n <div className={b('top-header-icon')} aria-hidden=\"true\">\n {tocTitleIcon}\n </div>\n )}\n {topHeader}\n {label && <TocLabel label={label} />}\n </>\n );\n }\n\n private renderTopWithExtra() {\n const {router, href, singlePage, extraHeader} = this.props;\n const {contentScrolled} = this.state;\n\n const isActive = href ? isActiveItem(router, href, singlePage) : false;\n const TopMainComponent = href ? 'a' : 'div';\n const topMainProps = href\n ? {href, className: b('top-main-link', {active: isActive}), 'data-router-shallow': true}\n : {className: b('top-main')};\n\n return (\n <div\n className={b('top', {scrolled: contentScrolled, 'with-extra-header': true})}\n id={this.tocTopId}\n >\n {extraHeader}\n <TopMainComponent {...topMainProps}>{this.renderTopMainContent()}</TopMainComponent>\n </div>\n );\n }\n\n private renderTopDefault() {\n const {router, title, href, tocTitleIcon, singlePage, label} = this.props;\n const {contentScrolled} = this.state;\n\n let topHeader;\n if (href) {\n const active = isActiveItem(router, href, singlePage);\n topHeader = (\n <a\n href={href}\n className={b('top-header', {active, link: true})}\n data-router-shallow\n >\n <HTML>{title}</HTML>\n </a>\n );\n } else {\n topHeader = (\n <div className={b('top-header')}>\n <HTML>{title}</HTML>\n </div>\n );\n }\n\n return (\n <div className={b('top', {scrolled: contentScrolled})} id={this.tocTopId}>\n {tocTitleIcon && (\n <div className={b('top-header-icon')} aria-hidden=\"true\">\n {tocTitleIcon}\n </div>\n )}\n {topHeader}\n {label && <TocLabel label={label} />}\n </div>\n );\n }\n\n private renderTop() {\n const {hideTocHeader, extraHeader} = this.props;\n\n if (hideTocHeader) {\n return null;\n }\n\n return extraHeader ? this.renderTopWithExtra() : this.renderTopDefault();\n }\n\n private renderBottom() {\n const {singlePage, onChangeSinglePage, pdfLink, pdfIconConfig} = this.props;\n const {contentScrolled} = this.state;\n\n return (\n <div className={b('bottom', {scrolled: contentScrolled})}>\n <ControlsLayout\n controlSize={(pdfIconConfig?.size as ControlSizes) ?? ControlSizes.L}\n popupPosition={PopperPosition.TOP_START}\n >\n <Controls\n singlePage={singlePage}\n onChangeSinglePage={onChangeSinglePage}\n pdfLink={pdfLink}\n pdfIconConfig={pdfIconConfig}\n />\n </ControlsLayout>\n </div>\n );\n }\n\n private scrollToItem = () => {\n if (!this.activeRef.current) {\n return;\n }\n\n const itemElement = this.activeRef.current;\n const itemHeight = itemElement.offsetHeight ?? 0;\n const itemOffset = itemElement.offsetTop;\n const scrollableParent = itemElement.offsetParent as HTMLDivElement | null;\n\n if (!scrollableParent) {\n return;\n }\n\n const scrollableHeight = scrollableParent.offsetHeight;\n const scrollableOffset = scrollableParent.scrollTop;\n\n const itemVisible =\n itemOffset >= scrollableOffset &&\n itemOffset <= scrollableOffset + scrollableHeight - itemHeight;\n\n if (!itemVisible) {\n scrollableParent.scrollTop = itemOffset - Math.floor(scrollableHeight / 2) + itemHeight;\n }\n };\n\n private scrollToActiveItem = () => {\n if (!this.activeRef.current) {\n return;\n }\n\n this.scrollToItem();\n };\n\n private handleContentScroll = () => {\n const contentNode = this.contentRef.current;\n const contentScrolled = contentNode ? contentNode.scrollTop > 0 : false;\n if (contentScrolled !== this.state.contentScrolled) {\n this.setState({contentScrolled});\n }\n };\n\n private openItem = (id: string) => {\n this.setState((prevState) => ({\n ...prevState,\n fixedById: {\n ...prevState.fixedById,\n [id]: 'opened',\n },\n }));\n };\n\n private closeItem = (id: string) => {\n const ids = this.state.registry.getChildIds(id);\n\n this.setState((prevState) => ({\n ...prevState,\n fixedById: {\n ...omit(prevState.fixedById, ids),\n [id]: 'closed',\n },\n }));\n };\n\n private toggleItem = (id: string, opened: boolean) => {\n if (opened) {\n this.closeItem(id);\n } else {\n this.openItem(id);\n }\n };\n}\n\nfunction Toc(props: TocProps) {\n const tocTopId = useId();\n return <TocClass {...props} tocTopId={tocTopId} />;\n}\n\nexport default Toc;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import type {Router, TocData, TocItem} from '../../models';\n\nimport React, {useId} from 'react';\nimport block from 'bem-cn-lite';\nimport omit from 'lodash/omit';\n\nimport {PopperPosition} from '../../constants';\nimport {ControlSizes} from '../../models';\nimport {isActiveItem, normalizeHash, normalizePath} from '../../utils';\nimport {Controls, ControlsLayout} from '../Controls';\nimport {HTML} from '../HTML';\nimport {TocItem as Item} from '../TocItem';\nimport TocLabel from '../TocLable/TocLabel';\n\nimport {TocItemRegistry} from './TocItemRegistry';\nimport './Toc.scss';\n\nconst b = block('dc-toc');\n\nfunction zip<T>(array: string[], fill: T): Record<string, T> {\n return array.reduce((acc, item) => Object.assign(acc, {[item]: fill}), {});\n}\n\nexport interface TocProps extends TocData {\n router: Router;\n headerHeight?: number;\n tocTitleIcon?: React.ReactNode;\n hideTocHeader?: boolean;\n singlePage?: boolean;\n onChangeSinglePage?: (value: boolean) => void;\n pdfLink?: string;\n pdfIconConfig?: {position?: string; size?: 'S' | 'M' | 'L'; icon?: string};\n}\n\ninterface TocInternalProps extends TocProps {\n tocTopId: string;\n}\n\ninterface TocState {\n activeId: string | null | undefined;\n fixedById: Record<string, 'opened' | 'closed'>;\n contentScrolled: boolean;\n registry: TocItemRegistry;\n}\n\nclass TocClass extends React.Component<TocInternalProps, TocState> {\n contentRef = React.createRef<HTMLDivElement>();\n rootRef = React.createRef<HTMLDivElement>();\n activeRef = React.createRef<HTMLButtonElement>();\n\n containerEl: HTMLElement | null = null;\n footerEl: HTMLElement | null = null;\n tocTopId: string;\n\n constructor(props: TocInternalProps) {\n super(props);\n\n this.state = this.computeState(this.getInitialState());\n this.tocTopId = props.tocTopId;\n }\n\n getInitialState() {\n return {\n registry: new TocItemRegistry(this.props.items || [], this.normalizeUrl),\n fixedById: {},\n activeId: null,\n contentScrolled: false,\n };\n }\n\n componentDidMount() {\n this.containerEl = document.querySelector('.Layout__content');\n this.footerEl = document.querySelector('.Footer');\n\n if (this.contentRef && this.contentRef.current) {\n this.contentRef.current.addEventListener('scroll', this.handleContentScroll);\n }\n\n this.scrollToActiveItem();\n }\n\n componentDidUpdate(prevProps: TocProps, prevState: TocState) {\n const {router, singlePage, items} = this.props;\n\n let nextState;\n\n if (prevProps.items !== items) {\n nextState = this.getInitialState();\n }\n\n if (\n prevProps.router.pathname !== router.pathname ||\n prevProps.router.hash !== router.hash ||\n prevProps.singlePage !== singlePage ||\n nextState\n ) {\n nextState = this.computeState(nextState || prevState);\n } else if (prevState.activeId !== this.state.activeId) {\n this.scrollToActiveItem();\n }\n\n if (nextState) {\n this.setState(nextState);\n }\n }\n\n componentWillUnmount() {\n if (this.contentRef && this.contentRef.current) {\n this.contentRef.current.removeEventListener('scroll', this.handleContentScroll);\n }\n }\n\n render() {\n const {items, hideTocHeader, extraHeader} = this.props;\n const content = items ? this.renderList(items) : this.renderEmpty('');\n\n return (\n <nav className={b()} ref={this.rootRef}>\n {this.renderTop()}\n <div\n className={b('content', {\n offset_top: hideTocHeader,\n 'with-extra-header': Boolean(extraHeader),\n })}\n ref={this.contentRef}\n >\n {content}\n </div>\n {this.renderBottom()}\n </nav>\n );\n }\n\n computeState(prevState: TocState) {\n const {router} = this.props;\n const {pathname, hash} = router;\n\n const activeUrl = this.normalizeUrl(pathname, hash);\n const activeId = activeUrl && prevState.registry.getIdByUrl(activeUrl as string);\n\n let fixedById = prevState.fixedById;\n\n if (activeId && prevState.activeId && activeId !== prevState.activeId) {\n const expandedIds = [activeId].concat(prevState.registry.getParentIds(activeId));\n const dropClosedSign = expandedIds.filter((id) => prevState.fixedById[id] === 'closed');\n\n if (dropClosedSign.length) {\n fixedById = omit(fixedById, dropClosedSign);\n }\n }\n\n return {...prevState, activeId, fixedById};\n }\n\n private normalizeUrl = (path: string, hash: string | undefined) => {\n const {singlePage} = this.props;\n\n return singlePage ? normalizeHash(hash) : normalizePath(path);\n };\n\n private renderList = (items: TocItem[]) => {\n const {toggleItem} = this;\n const {singlePage} = this.props;\n const {activeId, fixedById} = this.state;\n\n const activeItem = activeId && this.state.registry.getItemById(activeId);\n const activeScope: Record<string, boolean> = activeItem\n ? zip([activeId].concat(this.state.registry.getParentIds(activeId)), true)\n : {};\n\n return (\n <ul className={b('list')} aria-labelledby={this.tocTopId}>\n {items.map((item, index) => {\n const main = !this.state.registry.getParentId(item.id);\n const active =\n (singlePage && !activeId && index === 0 && main) || item.id === activeId;\n const opened = fixedById[item.id] === 'opened';\n const closed = fixedById[item.id] === 'closed';\n const hasItems = Boolean(item.items && item.items.length > 0);\n const expandable = hasItems && !item.labeled;\n const expanded =\n (expandable &&\n !closed &&\n (item.expanded || activeScope[item.id] || opened)) ||\n (hasItems && Boolean(item.labeled));\n\n const ref = active ? {ref: this.activeRef} : {};\n\n return (\n <li\n key={item.id}\n id={item.id}\n className={b('list-item', {\n main,\n active,\n opened: expanded,\n labeled: item.labeled,\n })}\n >\n <Item\n {...{\n ...item,\n ...ref,\n active,\n expanded,\n expandable,\n toggleItem,\n }}\n />\n {expanded && this.renderList(item.items as TocItem[])}\n </li>\n );\n })}\n </ul>\n );\n };\n\n private renderEmpty(text: string) {\n return <div className={b('empty')}>{text}</div>;\n }\n\n private renderTopMainContent() {\n const {tocTitleIcon, title, label} = this.props;\n const topHeader = (\n <div className={b('top-header')}>\n <HTML>{title}</HTML>\n </div>\n );\n\n return (\n <>\n {tocTitleIcon && (\n <div className={b('top-header-icon')} aria-hidden=\"true\">\n {tocTitleIcon}\n </div>\n )}\n {topHeader}\n {label && <TocLabel label={label} />}\n </>\n );\n }\n\n private renderTopWithExtra() {\n const {router, href, singlePage, extraHeader} = this.props;\n const {contentScrolled} = this.state;\n\n const isActive = href ? isActiveItem(router, href, singlePage) : false;\n const TopMainComponent = href ? 'a' : 'div';\n const topMainProps = href\n ? {href, className: b('top-main-link', {active: isActive}), 'data-router-shallow': true}\n : {className: b('top-main')};\n\n return (\n <div\n className={b('top', {scrolled: contentScrolled, 'with-extra-header': true})}\n id={this.tocTopId}\n >\n {extraHeader}\n <TopMainComponent {...topMainProps}>{this.renderTopMainContent()}</TopMainComponent>\n </div>\n );\n }\n\n private renderTopDefault() {\n const {router, title, href, tocTitleIcon, singlePage, label} = this.props;\n const {contentScrolled} = this.state;\n\n let topHeader;\n if (href) {\n const active = isActiveItem(router, href, singlePage);\n topHeader = (\n <a\n href={href}\n className={b('top-header', {active, link: true})}\n data-router-shallow\n >\n <HTML>{title}</HTML>\n </a>\n );\n } else {\n topHeader = (\n <div className={b('top-header')}>\n <HTML>{title}</HTML>\n </div>\n );\n }\n\n return (\n <div className={b('top', {scrolled: contentScrolled})} id={this.tocTopId}>\n {tocTitleIcon && (\n <div className={b('top-header-icon')} aria-hidden=\"true\">\n {tocTitleIcon}\n </div>\n )}\n {topHeader}\n {label && <TocLabel label={label} />}\n </div>\n );\n }\n\n private renderTop() {\n const {hideTocHeader, extraHeader} = this.props;\n\n if (hideTocHeader) {\n return null;\n }\n\n return extraHeader ? this.renderTopWithExtra() : this.renderTopDefault();\n }\n\n private renderBottom() {\n const {singlePage, onChangeSinglePage, pdfLink, pdfIconConfig} = this.props;\n const {contentScrolled} = this.state;\n\n return (\n <div className={b('bottom', {scrolled: contentScrolled})}>\n <ControlsLayout\n controlSize={(pdfIconConfig?.size as ControlSizes) ?? ControlSizes.L}\n popupPosition={PopperPosition.TOP_START}\n >\n <Controls\n singlePage={singlePage}\n onChangeSinglePage={onChangeSinglePage}\n pdfLink={pdfLink}\n pdfIconConfig={pdfIconConfig}\n />\n </ControlsLayout>\n </div>\n );\n }\n\n private scrollToItem = () => {\n if (!this.activeRef.current) {\n return;\n }\n\n const itemElement = this.activeRef.current;\n const itemHeight = itemElement.offsetHeight ?? 0;\n const itemOffset = itemElement.offsetTop;\n const scrollableParent = itemElement.offsetParent as HTMLDivElement | null;\n\n if (!scrollableParent) {\n return;\n }\n\n const scrollableHeight = scrollableParent.offsetHeight;\n const scrollableOffset = scrollableParent.scrollTop;\n\n const itemVisible =\n itemOffset >= scrollableOffset &&\n itemOffset <= scrollableOffset + scrollableHeight - itemHeight;\n\n if (!itemVisible) {\n scrollableParent.scrollTop = itemOffset - Math.floor(scrollableHeight / 2) + itemHeight;\n }\n };\n\n private scrollToActiveItem = () => {\n if (!this.activeRef.current) {\n return;\n }\n\n this.scrollToItem();\n };\n\n private handleContentScroll = () => {\n const contentNode = this.contentRef.current;\n const contentScrolled = contentNode ? contentNode.scrollTop > 0 : false;\n if (contentScrolled !== this.state.contentScrolled) {\n this.setState({contentScrolled});\n }\n };\n\n private openItem = (id: string) => {\n this.setState((prevState) => ({\n ...prevState,\n fixedById: {\n ...prevState.fixedById,\n [id]: 'opened',\n },\n }));\n };\n\n private closeItem = (id: string) => {\n const ids = this.state.registry.getChildIds(id);\n\n this.setState((prevState) => ({\n ...prevState,\n fixedById: {\n ...omit(prevState.fixedById, ids),\n [id]: 'closed',\n },\n }));\n };\n\n private toggleItem = (id: string, opened: boolean) => {\n if (opened) {\n this.closeItem(id);\n } else {\n this.openItem(id);\n }\n };\n}\n\nfunction Toc(props: TocProps) {\n const tocTopId = useId();\n return <TocClass {...props} tocTopId={tocTopId} />;\n}\n\nexport default Toc;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA2B;AAC3B,yBAAkB;AAClB,kBAAiB;AAEjB,uBAA6B;AAC7B,oBAA2B;AAC3B,mBAAyD;AACzD,sBAAuC;AACvC,kBAAmB;AACnB,qBAA8B;AAC9B,sBAAqB;AAErB,6BAA8B;AAC9B,iBAAO;AAsGK;AApGZ,IAAM,QAAI,mBAAAA,SAAM,QAAQ;AAExB,SAAS,IAAO,OAAiB,MAA4B;AACzD,SAAO,MAAM,OAAO,CAAC,KAAK,SAAS,OAAO,OAAO,KAAK,EAAC,CAAC,IAAI,GAAG,KAAI,CAAC,GAAG,CAAC,CAAC;AAC7E;AAwBA,IAAM,WAAN,cAAuB,aAAAC,QAAM,UAAsC;AAAA,EAS/D,YAAY,OAAyB;AACjC,UAAM,KAAK;AATf,sBAAa,aAAAA,QAAM,UAA0B;AAC7C,mBAAU,aAAAA,QAAM,UAA0B;AAC1C,qBAAY,aAAAA,QAAM,UAA6B;AAE/C,uBAAkC;AAClC,oBAA+B;AAuG/B,SAAQ,eAAe,CAAC,MAAc,SAA6B;AAC/D,YAAM,EAAC,WAAU,IAAI,KAAK;AAE1B,aAAO,iBAAa,4BAAc,IAAI,QAAI,4BAAc,IAAI;AAAA,IAChE;AAEA,SAAQ,aAAa,CAAC,UAAqB;AACvC,YAAM,EAAC,WAAU,IAAI;AACrB,YAAM,EAAC,WAAU,IAAI,KAAK;AAC1B,YAAM,EAAC,UAAU,UAAS,IAAI,KAAK;AAEnC,YAAM,aAAa,YAAY,KAAK,MAAM,SAAS,YAAY,QAAQ;AACvE,YAAM,cAAuC,aACvC,IAAI,CAAC,QAAQ,EAAE,OAAO,KAAK,MAAM,SAAS,aAAa,QAAQ,CAAC,GAAG,IAAI,IACvE,CAAC;AAEP,aACI,4CAAC,QAAG,WAAW,EAAE,MAAM,GAAG,mBAAiB,KAAK,UAC3C,gBAAM,IAAI,CAAC,MAAM,UAAU;AACxB,cAAM,OAAO,CAAC,KAAK,MAAM,SAAS,YAAY,KAAK,EAAE;AACrD,cAAM,SACD,cAAc,CAAC,YAAY,UAAU,KAAK,QAAS,KAAK,OAAO;AACpE,cAAM,SAAS,UAAU,KAAK,EAAE,MAAM;AACtC,cAAM,SAAS,UAAU,KAAK,EAAE,MAAM;AACtC,cAAM,WAAW,QAAQ,KAAK,SAAS,KAAK,MAAM,SAAS,CAAC;AAC5D,cAAM,aAAa,YAAY,CAAC,KAAK;AACrC,cAAM,WACD,cACG,CAAC,WACA,KAAK,YAAY,YAAY,KAAK,EAAE,KAAK,WAC7C,YAAY,QAAQ,KAAK,OAAO;AAErC,cAAM,MAAM,SAAS,EAAC,KAAK,KAAK,UAAS,IAAI,CAAC;AAE9C,eACI;AAAA,UAAC;AAAA;AAAA,YAEG,IAAI,KAAK;AAAA,YACT,WAAW,EAAE,aAAa;AAAA,cACtB;AAAA,cACA;AAAA,cACA,QAAQ;AAAA,cACR,SAAS,KAAK;AAAA,YAClB,CAAC;AAAA,YAED;AAAA;AAAA,gBAAC,eAAAC;AAAA,gBAAA,mBACO,gDACG,OACA,MAFH;AAAA,kBAGA;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,gBACJ;AAAA,cACJ;AAAA,cACC,YAAY,KAAK,WAAW,KAAK,KAAkB;AAAA;AAAA;AAAA,UAnB/C,KAAK;AAAA,QAoBd;AAAA,MAER,CAAC,GACL;AAAA,IAER;AAoHA,SAAQ,eAAe,MAAM;AA3UjC;AA4UQ,UAAI,CAAC,KAAK,UAAU,SAAS;AACzB;AAAA,MACJ;AAEA,YAAM,cAAc,KAAK,UAAU;AACnC,YAAM,cAAa,iBAAY,iBAAZ,YAA4B;AAC/C,YAAM,aAAa,YAAY;AAC/B,YAAM,mBAAmB,YAAY;AAErC,UAAI,CAAC,kBAAkB;AACnB;AAAA,MACJ;AAEA,YAAM,mBAAmB,iBAAiB;AAC1C,YAAM,mBAAmB,iBAAiB;AAE1C,YAAM,cACF,cAAc,oBACd,cAAc,mBAAmB,mBAAmB;AAExD,UAAI,CAAC,aAAa;AACd,yBAAiB,YAAY,aAAa,KAAK,MAAM,mBAAmB,CAAC,IAAI;AAAA,MACjF;AAAA,IACJ;AAEA,SAAQ,qBAAqB,MAAM;AAC/B,UAAI,CAAC,KAAK,UAAU,SAAS;AACzB;AAAA,MACJ;AAEA,WAAK,aAAa;AAAA,IACtB;AAEA,SAAQ,sBAAsB,MAAM;AAChC,YAAM,cAAc,KAAK,WAAW;AACpC,YAAM,kBAAkB,cAAc,YAAY,YAAY,IAAI;AAClE,UAAI,oBAAoB,KAAK,MAAM,iBAAiB;AAChD,aAAK,SAAS,EAAC,gBAAe,CAAC;AAAA,MACnC;AAAA,IACJ;AAEA,SAAQ,WAAW,CAAC,OAAe;AAC/B,WAAK,SAAS,CAAC,cAAe,iCACvB,YADuB;AAAA,QAE1B,WAAW,iCACJ,UAAU,YADN;AAAA,UAEP,CAAC,EAAE,GAAG;AAAA,QACV;AAAA,MACJ,EAAE;AAAA,IACN;AAEA,SAAQ,YAAY,CAAC,OAAe;AAChC,YAAM,MAAM,KAAK,MAAM,SAAS,YAAY,EAAE;AAE9C,WAAK,SAAS,CAAC,cAAe,iCACvB,YADuB;AAAA,QAE1B,WAAW,qCACJ,YAAAC,SAAK,UAAU,WAAW,GAAG,IADzB;AAAA,UAEP,CAAC,EAAE,GAAG;AAAA,QACV;AAAA,MACJ,EAAE;AAAA,IACN;AAEA,SAAQ,aAAa,CAAC,IAAY,WAAoB;AAClD,UAAI,QAAQ;AACR,aAAK,UAAU,EAAE;AAAA,MACrB,OAAO;AACH,aAAK,SAAS,EAAE;AAAA,MACpB;AAAA,IACJ;AAxVI,SAAK,QAAQ,KAAK,aAAa,KAAK,gBAAgB,CAAC;AACrD,SAAK,WAAW,MAAM;AAAA,EAC1B;AAAA,EAEA,kBAAkB;AACd,WAAO;AAAA,MACH,UAAU,IAAI,uCAAgB,KAAK,MAAM,SAAS,CAAC,GAAG,KAAK,YAAY;AAAA,MACvE,WAAW,CAAC;AAAA,MACZ,UAAU;AAAA,MACV,iBAAiB;AAAA,IACrB;AAAA,EACJ;AAAA,EAEA,oBAAoB;AAChB,SAAK,cAAc,SAAS,cAAc,kBAAkB;AAC5D,SAAK,WAAW,SAAS,cAAc,SAAS;AAEhD,QAAI,KAAK,cAAc,KAAK,WAAW,SAAS;AAC5C,WAAK,WAAW,QAAQ,iBAAiB,UAAU,KAAK,mBAAmB;AAAA,IAC/E;AAEA,SAAK,mBAAmB;AAAA,EAC5B;AAAA,EAEA,mBAAmB,WAAqB,WAAqB;AACzD,UAAM,EAAC,QAAQ,YAAY,MAAK,IAAI,KAAK;AAEzC,QAAI;AAEJ,QAAI,UAAU,UAAU,OAAO;AAC3B,kBAAY,KAAK,gBAAgB;AAAA,IACrC;AAEA,QACI,UAAU,OAAO,aAAa,OAAO,YACrC,UAAU,OAAO,SAAS,OAAO,QACjC,UAAU,eAAe,cACzB,WACF;AACE,kBAAY,KAAK,aAAa,aAAa,SAAS;AAAA,IACxD,WAAW,UAAU,aAAa,KAAK,MAAM,UAAU;AACnD,WAAK,mBAAmB;AAAA,IAC5B;AAEA,QAAI,WAAW;AACX,WAAK,SAAS,SAAS;AAAA,IAC3B;AAAA,EACJ;AAAA,EAEA,uBAAuB;AACnB,QAAI,KAAK,cAAc,KAAK,WAAW,SAAS;AAC5C,WAAK,WAAW,QAAQ,oBAAoB,UAAU,KAAK,mBAAmB;AAAA,IAClF;AAAA,EACJ;AAAA,EAEA,SAAS;AACL,UAAM,EAAC,OAAO,eAAe,YAAW,IAAI,KAAK;AACjD,UAAM,UAAU,QAAQ,KAAK,WAAW,KAAK,IAAI,KAAK,YAAY,EAAE;AAEpE,WACI,6CAAC,SAAI,WAAW,EAAE,GAAG,KAAK,KAAK,SAC1B;AAAA,WAAK,UAAU;AAAA,MAChB;AAAA,QAAC;AAAA;AAAA,UACG,WAAW,EAAE,WAAW;AAAA,YACpB,YAAY;AAAA,YACZ,qBAAqB,QAAQ,WAAW;AAAA,UAC5C,CAAC;AAAA,UACD,KAAK,KAAK;AAAA,UAET;AAAA;AAAA,MACL;AAAA,MACC,KAAK,aAAa;AAAA,OACvB;AAAA,EAER;AAAA,EAEA,aAAa,WAAqB;AAC9B,UAAM,EAAC,OAAM,IAAI,KAAK;AACtB,UAAM,EAAC,UAAU,KAAI,IAAI;AAEzB,UAAM,YAAY,KAAK,aAAa,UAAU,IAAI;AAClD,UAAM,WAAW,aAAa,UAAU,SAAS,WAAW,SAAmB;AAE/E,QAAI,YAAY,UAAU;AAE1B,QAAI,YAAY,UAAU,YAAY,aAAa,UAAU,UAAU;AACnE,YAAM,cAAc,CAAC,QAAQ,EAAE,OAAO,UAAU,SAAS,aAAa,QAAQ,CAAC;AAC/E,YAAM,iBAAiB,YAAY,OAAO,CAAC,OAAO,UAAU,UAAU,EAAE,MAAM,QAAQ;AAEtF,UAAI,eAAe,QAAQ;AACvB,wBAAY,YAAAA,SAAK,WAAW,cAAc;AAAA,MAC9C;AAAA,IACJ;AAEA,WAAO,iCAAI,YAAJ,EAAe,UAAU,UAAS;AAAA,EAC7C;AAAA,EAiEQ,YAAY,MAAc;AAC9B,WAAO,4CAAC,SAAI,WAAW,EAAE,OAAO,GAAI,gBAAK;AAAA,EAC7C;AAAA,EAEQ,uBAAuB;AAC3B,UAAM,EAAC,cAAc,OAAO,MAAK,IAAI,KAAK;AAC1C,UAAM,YACF,4CAAC,SAAI,WAAW,EAAE,YAAY,GAC1B,sDAAC,oBAAM,iBAAM,GACjB;AAGJ,WACI,4EACK;AAAA,sBACG,4CAAC,SAAI,WAAW,EAAE,iBAAiB,GAAG,eAAY,QAC7C,wBACL;AAAA,MAEH;AAAA,MACA,SAAS,4CAAC,gBAAAC,SAAA,EAAS,OAAc;AAAA,OACtC;AAAA,EAER;AAAA,EAEQ,qBAAqB;AACzB,UAAM,EAAC,QAAQ,MAAM,YAAY,YAAW,IAAI,KAAK;AACrD,UAAM,EAAC,gBAAe,IAAI,KAAK;AAE/B,UAAM,WAAW,WAAO,2BAAa,QAAQ,MAAM,UAAU,IAAI;AACjE,UAAM,mBAAmB,OAAO,MAAM;AACtC,UAAM,eAAe,OACf,EAAC,MAAM,WAAW,EAAE,iBAAiB,EAAC,QAAQ,SAAQ,CAAC,GAAG,uBAAuB,KAAI,IACrF,EAAC,WAAW,EAAE,UAAU,EAAC;AAE/B,WACI;AAAA,MAAC;AAAA;AAAA,QACG,WAAW,EAAE,OAAO,EAAC,UAAU,iBAAiB,qBAAqB,KAAI,CAAC;AAAA,QAC1E,IAAI,KAAK;AAAA,QAER;AAAA;AAAA,UACD,4CAAC,mDAAqB,eAArB,EAAoC,eAAK,qBAAqB,IAAE;AAAA;AAAA;AAAA,IACrE;AAAA,EAER;AAAA,EAEQ,mBAAmB;AACvB,UAAM,EAAC,QAAQ,OAAO,MAAM,cAAc,YAAY,MAAK,IAAI,KAAK;AACpE,UAAM,EAAC,gBAAe,IAAI,KAAK;AAE/B,QAAI;AACJ,QAAI,MAAM;AACN,YAAM,aAAS,2BAAa,QAAQ,MAAM,UAAU;AACpD,kBACI;AAAA,QAAC;AAAA;AAAA,UACG;AAAA,UACA,WAAW,EAAE,cAAc,EAAC,QAAQ,MAAM,KAAI,CAAC;AAAA,UAC/C,uBAAmB;AAAA,UAEnB,sDAAC,oBAAM,iBAAM;AAAA;AAAA,MACjB;AAAA,IAER,OAAO;AACH,kBACI,4CAAC,SAAI,WAAW,EAAE,YAAY,GAC1B,sDAAC,oBAAM,iBAAM,GACjB;AAAA,IAER;AAEA,WACI,6CAAC,SAAI,WAAW,EAAE,OAAO,EAAC,UAAU,gBAAe,CAAC,GAAG,IAAI,KAAK,UAC3D;AAAA,sBACG,4CAAC,SAAI,WAAW,EAAE,iBAAiB,GAAG,eAAY,QAC7C,wBACL;AAAA,MAEH;AAAA,MACA,SAAS,4CAAC,gBAAAA,SAAA,EAAS,OAAc;AAAA,OACtC;AAAA,EAER;AAAA,EAEQ,YAAY;AAChB,UAAM,EAAC,eAAe,YAAW,IAAI,KAAK;AAE1C,QAAI,eAAe;AACf,aAAO;AAAA,IACX;AAEA,WAAO,cAAc,KAAK,mBAAmB,IAAI,KAAK,iBAAiB;AAAA,EAC3E;AAAA,EAEQ,eAAe;AAtT3B;AAuTQ,UAAM,EAAC,YAAY,oBAAoB,SAAS,cAAa,IAAI,KAAK;AACtE,UAAM,EAAC,gBAAe,IAAI,KAAK;AAE/B,WACI,4CAAC,SAAI,WAAW,EAAE,UAAU,EAAC,UAAU,gBAAe,CAAC,GACnD;AAAA,MAAC;AAAA;AAAA,QACG,cAAc,oDAAe,SAAf,YAAwC,2BAAa;AAAA,QACnE,eAAe,gCAAe;AAAA,QAE9B;AAAA,UAAC;AAAA;AAAA,YACG;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACJ;AAAA;AAAA,IACJ,GACJ;AAAA,EAER;AAyEJ;AAEA,SAAS,IAAI,OAAiB;AAC1B,QAAM,eAAW,oBAAM;AACvB,SAAO,4CAAC,2CAAa,QAAb,EAAoB,WAAoB;AACpD;AAEA,IAAO,cAAQ;",
6
6
  "names": ["block", "React", "Item", "omit", "TocLabel"]
7
7
  }
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
6
  var __export = (target, all) => {
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
17
16
  return to;
18
17
  };
19
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
21
19
 
22
20
  // src/components/Toc/TocItemRegistry.ts
23
21
  var TocItemRegistry_exports = {};
@@ -27,10 +25,9 @@ __export(TocItemRegistry_exports, {
27
25
  module.exports = __toCommonJS(TocItemRegistry_exports);
28
26
  var TocItemRegistry = class {
29
27
  constructor(items, normalizeUrl) {
30
- __publicField(this, "itemById", /* @__PURE__ */ new Map());
31
- __publicField(this, "parentById", /* @__PURE__ */ new Map());
32
- __publicField(this, "itemIdByUrl", /* @__PURE__ */ new Map());
33
- __publicField(this, "normalizeUrl");
28
+ this.itemById = /* @__PURE__ */ new Map();
29
+ this.parentById = /* @__PURE__ */ new Map();
30
+ this.itemIdByUrl = /* @__PURE__ */ new Map();
34
31
  this.normalizeUrl = normalizeUrl;
35
32
  this.consumeItems(items);
36
33
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/Toc/TocItemRegistry.ts"],
4
4
  "sourcesContent": ["import type {TocItem} from '../../models';\n\ntype NormalizeUrl = (path: string, hash: string | undefined) => string | null | undefined;\n\nexport class TocItemRegistry {\n private itemById: Map<string, TocItem> = new Map();\n\n private parentById: Map<string, string> = new Map();\n\n private itemIdByUrl: Map<string, string> = new Map();\n\n private normalizeUrl: NormalizeUrl;\n\n constructor(items: TocItem[], normalizeUrl: NormalizeUrl) {\n this.normalizeUrl = normalizeUrl;\n\n this.consumeItems(items);\n }\n\n getIdByUrl(url: string): string | undefined {\n return this.itemIdByUrl.get(url);\n }\n\n getItemById(id: string): TocItem | undefined {\n return this.itemById.get(id);\n }\n\n getParentId(id: string): string {\n return this.parentById.get(id) || '';\n }\n\n getParentIds(id: string): string[] {\n const result = [];\n\n let parentId = this.getParentId(id);\n while (parentId) {\n result.push(parentId);\n parentId = this.getParentId(parentId);\n }\n\n return result;\n }\n\n getChildIds(id: string): string[] {\n const item = this.itemById.get(id);\n\n if (!item) {\n return [];\n }\n\n return (item.items || ([] as TocItem[])).reduce((acc, child) => {\n return acc.concat([child.id], this.getChildIds(child.id));\n }, [] as string[]);\n }\n\n private consumeItems(items: TocItem[], parent?: TocItem) {\n items.forEach((item) => {\n this.itemById.set(item.id, item);\n\n if (item.href) {\n const [leftPart, hash] = item.href.split('#');\n const [pathname] = leftPart.split('?');\n const url = this.normalizeUrl(pathname, hash);\n\n if (url) {\n this.itemIdByUrl.set(url, item.id);\n }\n }\n\n if (parent) {\n this.parentById.set(item.id, parent.id);\n }\n\n if (item.items) {\n this.consumeItems(item.items, item);\n }\n });\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,IAAM,kBAAN,MAAsB;AAAA,EASzB,YAAY,OAAkB,cAA4B;AAR1D,wBAAQ,YAAiC,oBAAI,IAAI;AAEjD,wBAAQ,cAAkC,oBAAI,IAAI;AAElD,wBAAQ,eAAmC,oBAAI,IAAI;AAEnD,wBAAQ;AAGJ,SAAK,eAAe;AAEpB,SAAK,aAAa,KAAK;AAAA,EAC3B;AAAA,EAEA,WAAW,KAAiC;AACxC,WAAO,KAAK,YAAY,IAAI,GAAG;AAAA,EACnC;AAAA,EAEA,YAAY,IAAiC;AACzC,WAAO,KAAK,SAAS,IAAI,EAAE;AAAA,EAC/B;AAAA,EAEA,YAAY,IAAoB;AAC5B,WAAO,KAAK,WAAW,IAAI,EAAE,KAAK;AAAA,EACtC;AAAA,EAEA,aAAa,IAAsB;AAC/B,UAAM,SAAS,CAAC;AAEhB,QAAI,WAAW,KAAK,YAAY,EAAE;AAClC,WAAO,UAAU;AACb,aAAO,KAAK,QAAQ;AACpB,iBAAW,KAAK,YAAY,QAAQ;AAAA,IACxC;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,YAAY,IAAsB;AAC9B,UAAM,OAAO,KAAK,SAAS,IAAI,EAAE;AAEjC,QAAI,CAAC,MAAM;AACP,aAAO,CAAC;AAAA,IACZ;AAEA,YAAQ,KAAK,SAAU,CAAC,GAAiB,OAAO,CAAC,KAAK,UAAU;AAC5D,aAAO,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,KAAK,YAAY,MAAM,EAAE,CAAC;AAAA,IAC5D,GAAG,CAAC,CAAa;AAAA,EACrB;AAAA,EAEQ,aAAa,OAAkB,QAAkB;AACrD,UAAM,QAAQ,CAAC,SAAS;AACpB,WAAK,SAAS,IAAI,KAAK,IAAI,IAAI;AAE/B,UAAI,KAAK,MAAM;AACX,cAAM,CAAC,UAAU,IAAI,IAAI,KAAK,KAAK,MAAM,GAAG;AAC5C,cAAM,CAAC,QAAQ,IAAI,SAAS,MAAM,GAAG;AACrC,cAAM,MAAM,KAAK,aAAa,UAAU,IAAI;AAE5C,YAAI,KAAK;AACL,eAAK,YAAY,IAAI,KAAK,KAAK,EAAE;AAAA,QACrC;AAAA,MACJ;AAEA,UAAI,QAAQ;AACR,aAAK,WAAW,IAAI,KAAK,IAAI,OAAO,EAAE;AAAA,MAC1C;AAEA,UAAI,KAAK,OAAO;AACZ,aAAK,aAAa,KAAK,OAAO,IAAI;AAAA,MACtC;AAAA,IACJ,CAAC;AAAA,EACL;AACJ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,IAAM,kBAAN,MAAsB;AAAA,EASzB,YAAY,OAAkB,cAA4B;AAR1D,SAAQ,WAAiC,oBAAI,IAAI;AAEjD,SAAQ,aAAkC,oBAAI,IAAI;AAElD,SAAQ,cAAmC,oBAAI,IAAI;AAK/C,SAAK,eAAe;AAEpB,SAAK,aAAa,KAAK;AAAA,EAC3B;AAAA,EAEA,WAAW,KAAiC;AACxC,WAAO,KAAK,YAAY,IAAI,GAAG;AAAA,EACnC;AAAA,EAEA,YAAY,IAAiC;AACzC,WAAO,KAAK,SAAS,IAAI,EAAE;AAAA,EAC/B;AAAA,EAEA,YAAY,IAAoB;AAC5B,WAAO,KAAK,WAAW,IAAI,EAAE,KAAK;AAAA,EACtC;AAAA,EAEA,aAAa,IAAsB;AAC/B,UAAM,SAAS,CAAC;AAEhB,QAAI,WAAW,KAAK,YAAY,EAAE;AAClC,WAAO,UAAU;AACb,aAAO,KAAK,QAAQ;AACpB,iBAAW,KAAK,YAAY,QAAQ;AAAA,IACxC;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,YAAY,IAAsB;AAC9B,UAAM,OAAO,KAAK,SAAS,IAAI,EAAE;AAEjC,QAAI,CAAC,MAAM;AACP,aAAO,CAAC;AAAA,IACZ;AAEA,YAAQ,KAAK,SAAU,CAAC,GAAiB,OAAO,CAAC,KAAK,UAAU;AAC5D,aAAO,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,KAAK,YAAY,MAAM,EAAE,CAAC;AAAA,IAC5D,GAAG,CAAC,CAAa;AAAA,EACrB;AAAA,EAEQ,aAAa,OAAkB,QAAkB;AACrD,UAAM,QAAQ,CAAC,SAAS;AACpB,WAAK,SAAS,IAAI,KAAK,IAAI,IAAI;AAE/B,UAAI,KAAK,MAAM;AACX,cAAM,CAAC,UAAU,IAAI,IAAI,KAAK,KAAK,MAAM,GAAG;AAC5C,cAAM,CAAC,QAAQ,IAAI,SAAS,MAAM,GAAG;AACrC,cAAM,MAAM,KAAK,aAAa,UAAU,IAAI;AAE5C,YAAI,KAAK;AACL,eAAK,YAAY,IAAI,KAAK,KAAK,EAAE;AAAA,QACrC;AAAA,MACJ;AAEA,UAAI,QAAQ;AACR,aAAK,WAAW,IAAI,KAAK,IAAI,OAAO,EAAE;AAAA,MAC1C;AAEA,UAAI,KAAK,OAAO;AACZ,aAAK,aAAa,KAAK,OAAO,IAAI;AAAA,MACtC;AAAA,IACJ,CAAC;AAAA,EACL;AACJ;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/components/TocItem/TocItem.scss", "../../../../src/components/TocItem/%3Cinput css ZNQl-L%3E", "../../../../src/styles/mixins.scss"],
3
+ "sources": ["../../../../src/components/TocItem/TocItem.scss", "../../../../src/components/TocItem/%3Cinput css dCC78p%3E", "../../../../src/styles/mixins.scss"],
4
4
  "sourcesContent": ["@use 'sass:map';\n@use '../../styles/variables';\n@use '../../styles/mixins';\n\n$visibleStartPadding: 12px;\n\n.dc-toc-item {\n cursor: pointer;\n user-select: none;\n\n &__link {\n --g-focus-border-radius: 4px;\n\n display: block;\n text-decoration: none;\n border-radius: var(--g-focus-border-radius);\n\n @include mixins.focusable(-2px); // -2px, as outline on focues goes out of toc's borders\n }\n\n &__wrapper {\n display: flex;\n align-items: center;\n\n padding: 7px 0px 5px;\n }\n\n &__text-block {\n display: block;\n\n position: relative;\n padding: 7px 12px 7px 20px;\n width: 100%;\n\n @media (max-width: map.get(variables.$screenBreakpoints, 'md') - 1) {\n padding: 10px 12px 10px (28px + $visibleStartPadding);\n\n [dir='rtl'] & {\n padding: 10px (28px + $visibleStartPadding) 10px 12px;\n }\n }\n\n [dir='rtl'] & {\n padding: 7px 20px 7px 12px;\n }\n }\n\n &__text {\n --g-focus-border-radius: 4px;\n\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n\n box-sizing: border-box;\n word-break: break-word;\n background-color: transparent;\n border: 0;\n text-align: initial;\n border-radius: var(--g-focus-border-radius);\n\n color: var(--g-color-text-primary);\n\n @media (max-width: map.get(variables.$screenBreakpoints, 'md') - 1) {\n @include mixins.text-size(body-2);\n }\n\n &_active {\n border-radius: 3px;\n background: var(--g-color-base-selection);\n }\n\n &_labeled {\n font-weight: 500;\n text-transform: uppercase;\n\n @include mixins.text-size(body-1);\n }\n\n &_deprecated {\n span {\n width: 90%;\n display: block;\n }\n\n svg {\n position: absolute;\n top: 50%;\n right: 6px;\n transform: translateY(-50%);\n opacity: 0.6;\n }\n }\n\n &_clicable {\n cursor: pointer;\n\n &:hover {\n border-radius: 3px;\n background: var(--g-color-base-simple-hover);\n }\n }\n\n @include mixins.focusable(-2px); // -2px, as outline on focues goes out of toc's borders\n }\n\n &__icon {\n position: absolute;\n left: 0;\n\n [dir='rtl'] & {\n right: 0;\n }\n\n @media (max-width: map.get(variables.$screenBreakpoints, 'md') - 1) {\n left: $visibleStartPadding;\n\n [dir='rtl'] & {\n right: $visibleStartPadding;\n }\n }\n }\n\n &__arrow {\n align-self: stretch;\n height: auto;\n\n @media (max-width: map.get(variables.$screenBreakpoints, 'md') - 1) {\n margin-right: 20px;\n left: $visibleStartPadding;\n\n [dir='rtl'] & {\n left: 0;\n margin-left: 20px;\n }\n\n .g-button__icon {\n left: -$visibleStartPadding;\n\n [dir='rtl'] & {\n left: 0;\n right: 0;\n }\n }\n }\n\n &:hover:before {\n background: none;\n }\n }\n}\n", ".dc-toc-item {\n cursor: pointer;\n user-select: none;\n}\n.dc-toc-item__link {\n --g-focus-border-radius: 4px;\n display: block;\n text-decoration: none;\n border-radius: var(--g-focus-border-radius);\n}\n.dc-toc-item__link:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: -2px;\n}\n.dc-toc-item__link:focus:not(:focus-visible) {\n outline: 0;\n}\n.dc-toc-item__wrapper {\n display: flex;\n align-items: center;\n padding: 7px 0px 5px;\n}\n.dc-toc-item__text-block {\n display: block;\n position: relative;\n padding: 7px 12px 7px 20px;\n width: 100%;\n}\n@media (max-width: 768px) {\n .dc-toc-item__text-block {\n padding: 10px 12px 10px 40px;\n }\n [dir=rtl] .dc-toc-item__text-block {\n padding: 10px 40px 10px 12px;\n }\n}\n[dir=rtl] .dc-toc-item__text-block {\n padding: 7px 20px 7px 12px;\n}\n.dc-toc-item__text {\n --g-focus-border-radius: 4px;\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n box-sizing: border-box;\n word-break: break-word;\n background-color: transparent;\n border: 0;\n text-align: initial;\n border-radius: var(--g-focus-border-radius);\n color: var(--g-color-text-primary);\n}\n@media (max-width: 768px) {\n .dc-toc-item__text {\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n }\n}\n.dc-toc-item__text_active {\n border-radius: 3px;\n background: var(--g-color-base-selection);\n}\n.dc-toc-item__text_labeled {\n font-weight: 500;\n text-transform: uppercase;\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n}\n.dc-toc-item__text_deprecated span {\n width: 90%;\n display: block;\n}\n.dc-toc-item__text_deprecated svg {\n position: absolute;\n top: 50%;\n right: 6px;\n transform: translateY(-50%);\n opacity: 0.6;\n}\n.dc-toc-item__text_clicable {\n cursor: pointer;\n}\n.dc-toc-item__text_clicable:hover {\n border-radius: 3px;\n background: var(--g-color-base-simple-hover);\n}\n.dc-toc-item__text:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: -2px;\n}\n.dc-toc-item__text:focus:not(:focus-visible) {\n outline: 0;\n}\n.dc-toc-item__icon {\n position: absolute;\n left: 0;\n}\n[dir=rtl] .dc-toc-item__icon {\n right: 0;\n}\n@media (max-width: 768px) {\n .dc-toc-item__icon {\n left: 12px;\n }\n [dir=rtl] .dc-toc-item__icon {\n right: 12px;\n }\n}\n.dc-toc-item__arrow {\n align-self: stretch;\n height: auto;\n}\n@media (max-width: 768px) {\n .dc-toc-item__arrow {\n margin-right: 20px;\n left: 12px;\n }\n [dir=rtl] .dc-toc-item__arrow {\n left: 0;\n margin-left: 20px;\n }\n .dc-toc-item__arrow .g-button__icon {\n left: -12px;\n }\n [dir=rtl] .dc-toc-item__arrow .g-button__icon {\n left: 0;\n right: 0;\n }\n}\n.dc-toc-item__arrow:hover:before {\n background: none;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1RvY0l0ZW0iLCJzb3VyY2VzIjpbIlRvY0l0ZW0uc2NzcyIsIi4uLy4uL3N0eWxlcy9taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQTtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUVBO0VBQ0E7RUFDQTs7QUNtQkE7RUFDSTtFQUNBLGdCRG5Cc0I7O0FDcUIxQjtFQUNJOztBRG5CUjtFQUNJO0VBQ0E7RUFFQTs7QUFHSjtFQUNJO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBUEo7SUFRUTs7RUFFQTtJQUNJOzs7QUFJUjtFQUNJOztBQUlSO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFFQTtFQWhCSjtJQzNDQTtJQUNBOzs7QUQ4REk7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQ3RFUjtFQUNBOztBRDJFUTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7O0FBRUE7RUFDSTtFQUNBOztBQ2pFUjtFQUNJO0VBQ0EsZ0JEbUVzQjs7QUNqRTFCO0VBQ0k7O0FEbUVSO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBUko7SUFTUSxNQS9HVTs7RUFpSFY7SUFDSSxPQWxITTs7O0FBdUhsQjtFQUNJO0VBQ0E7O0FBRUE7RUFKSjtJQUtRO0lBQ0EsTUE3SFU7O0VBK0hWO0lBQ0k7SUFDQTs7RUFHSjtJQUNJOztFQUVBO0lBQ0k7SUFDQTs7O0FBS1o7RUFDSSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJy4uLy4uL3N0eWxlcy92YXJpYWJsZXMnO1xuQHVzZSAnLi4vLi4vc3R5bGVzL21peGlucyc7XG5cbiR2aXNpYmxlU3RhcnRQYWRkaW5nOiAxMnB4O1xuXG4uZGMtdG9jLWl0ZW0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICZfX2xpbmsge1xuICAgICAgICAtLWctZm9jdXMtYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWctZm9jdXMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWl4aW5zLmZvY3VzYWJsZSgtMnB4KTsgLy8gLTJweCwgYXMgb3V0bGluZSBvbiBmb2N1ZXMgZ29lcyBvdXQgb2YgdG9jJ3MgYm9yZGVyc1xuICAgIH1cblxuICAgICZfX3dyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIHBhZGRpbmc6IDdweCAwcHggNXB4O1xuICAgIH1cblxuICAgICZfX3RleHQtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMnB4IDdweCAyMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLmdldCh2YXJpYWJsZXMuJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTJweCAxMHB4ICgyOHB4ICsgJHZpc2libGVTdGFydFBhZGRpbmcpO1xuXG4gICAgICAgICAgICBbZGlyPSdydGwnXSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4ICgyOHB4ICsgJHZpc2libGVTdGFydFBhZGRpbmcpIDEwcHggMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIFtkaXI9J3J0bCddICYge1xuICAgICAgICAgICAgcGFkZGluZzogN3B4IDIwcHggN3B4IDEycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgLS1nLWZvY3VzLWJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcblxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBpbml0aWFsO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nLWZvY3VzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtcHJpbWFyeSk7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC5nZXQodmFyaWFibGVzLiRzY3JlZW5CcmVha3BvaW50cywgJ21kJykgLSAxKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtaXhpbnMudGV4dC1zaXplKGJvZHktMik7XG4gICAgICAgIH1cblxuICAgICAgICAmX2FjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nLWNvbG9yLWJhc2Utc2VsZWN0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfbGFiZWxlZCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWl4aW5zLnRleHQtc2l6ZShib2R5LTEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9kZXByZWNhdGVkIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfY2xpY2FibGUge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZy1jb2xvci1iYXNlLXNpbXBsZS1ob3Zlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtaXhpbnMuZm9jdXNhYmxlKC0ycHgpOyAvLyAtMnB4LCBhcyBvdXRsaW5lIG9uIGZvY3VlcyBnb2VzIG91dCBvZiB0b2MncyBib3JkZXJzXG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICBbZGlyPSdydGwnXSAmIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC5nZXQodmFyaWFibGVzLiRzY3JlZW5CcmVha3BvaW50cywgJ21kJykgLSAxKSB7XG4gICAgICAgICAgICBsZWZ0OiAkdmlzaWJsZVN0YXJ0UGFkZGluZztcblxuICAgICAgICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICR2aXNpYmxlU3RhcnRQYWRkaW5nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXJyb3cge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC5nZXQodmFyaWFibGVzLiRzY3JlZW5CcmVha3BvaW50cywgJ21kJykgLSAxKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBsZWZ0OiAkdmlzaWJsZVN0YXJ0UGFkZGluZztcblxuICAgICAgICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmctYnV0dG9uX19pY29uIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtJHZpc2libGVTdGFydFBhZGRpbmc7XG5cbiAgICAgICAgICAgICAgICBbZGlyPSdydGwnXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3ZhcmlhYmxlcyc7XG5cbkBtaXhpbiB0ZXh0LXNpemUoJG5hbWUpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWctdGV4dC0jeyRuYW1lfS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1nLXRleHQtI3skbmFtZX0tbGluZS1oZWlnaHQpO1xufVxuXG5AbWl4aW4gcmVzZXQtbGlzdC1zdHlsZSgpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWl4aW4gZml4QW5jaG9yUG9zaXRpb24oJG9mZnNldDogMHB4KSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tZGMtaGVhZGVyLWhlaWdodCwgI3t2YXJpYWJsZXMuJGhlYWRlckhlaWdodH0pKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JG9mZnNldH0gLSB2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAje3ZhcmlhYmxlcy4kaGVhZGVySGVpZ2h0fSkpO1xufVxuXG5AbWl4aW4gcmVzZXQtbGluay1zdHlsZSgpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtaXhpbiBpc2xhbmRzLWZvY3VzKCkge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAudXRpbGl0eWZvY3VzICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgI2ZmZGI0ZDtcbiAgICB9XG59XG5cbkBtaXhpbiBmb2N1c2FibGUoJG9mZnNldDogMCwgJG1vZGU6ICdvdXRsaW5lJykge1xuICAgIEBpZiAkbW9kZSA9PSAnb3V0bGluZScge1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nLWNvbG9yLWxpbmUtZm9jdXMpO1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvZmZzZXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJG1vZGUgPT0gJ2JveC1zaGFkb3cnIHtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tZy1jb2xvci1saW5lLWZvY3VzKTtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBsaW5rKCkge1xuICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtbGluayk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nLWZvY3VzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaXNsYW5kcy1mb2N1cygpO1xuXG4gICAgQGluY2x1ZGUgZm9jdXNhYmxlKDAsICdib3gtc2hhZG93Jyk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rLWhvdmVyKTtcbiAgICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nMSgpIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMyk7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLmdldCh2YXJpYWJsZXMuJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMik7XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGluZzIoKSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShkaXNwbGF5LTEpO1xufVxuXG5AbWl4aW4gaGVhZGluZzMoKSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMik7XG59XG5cbkBtaXhpbiBoZWFkaW5nNCgpIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGhlYWRlci0xKTtcbn1cblxuQG1peGluIGhlYWRpbmc1KCkge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0zKTtcbn1cblxuQG1peGluIGhlYWRpbmc2KCkge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0zKTtcbn1cblxuQG1peGluIGNvbnRyaWJ1dG9ycy10ZXh0KCkge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuQG1peGluIHRleHQtYm9keS0xKCkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZy10ZXh0LWJvZHktMS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1nLXRleHQtYm9keS0xLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZy10ZXh0LWJvZHktZm9udC13ZWlnaHQpO1xufVxuXG5AbWl4aW4gZGVza3RvcC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAuZ2V0KHZhcmlhYmxlcy4kc2NyZWVuQnJlYWtwb2ludHMsICdtZCcpIC0gMSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1peGluIGRlc2t0b3AtdGFibGV0LW9ubHkoKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC5nZXQodmFyaWFibGVzLiRzY3JlZW5CcmVha3BvaW50cywgJ3NtJykgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KHZhcmlhYmxlcy4kc2NyZWVuQnJlYWtwb2ludHMsICdtZCcpKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLW9ubHkoKSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQodmFyaWFibGVzLiRzY3JlZW5CcmVha3BvaW50cywgJ3NtJykpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBncmF2aXR5LXVpLXRleHQtc2l6ZXMoJGRlbHRhKSB7XG4gICAgLS1nLXRleHQtYm9keS0xLWZvbnQtc2l6ZTogI3sxM3B4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1ib2R5LTEtbGluZS1oZWlnaHQ6ICN7MThweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtYm9keS0yLWZvbnQtc2l6ZTogI3sxNXB4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1ib2R5LTItbGluZS1oZWlnaHQ6ICN7MjBweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtYm9keS0zLWZvbnQtc2l6ZTogI3sxN3B4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1ib2R5LTMtbGluZS1oZWlnaHQ6ICN7MjRweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtYm9keS1zaG9ydC1mb250LXNpemU6ICN7MTNweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtY2FwdGlvbi0xLWZvbnQtc2l6ZTogI3s5cHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWNhcHRpb24tMi1mb250LXNpemU6ICN7MTFweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtaGVhZGVyLTEtZm9udC1zaXplOiAjezIwcHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWhlYWRlci0yLWZvbnQtc2l6ZTogI3syNHB4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1zdWJoZWFkZXItMS1mb250LXNpemU6ICN7MTNweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtc3ViaGVhZGVyLTItZm9udC1zaXplOiAjezE1cHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LXN1YmhlYWRlci0zLWZvbnQtc2l6ZTogI3sxN3B4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1kaXNwbGF5LTEtZm9udC1zaXplOiAjezI4cHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWRpc3BsYXktMi1mb250LXNpemU6ICN7MzJweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtZGlzcGxheS0zLWZvbnQtc2l6ZTogI3s0MHB4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1kaXNwbGF5LTQtZm9udC1zaXplOiAjezQ4cHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWNvZGUtMS1mb250LXNpemU6ICN7MTJweCArICRkZWx0YX07XG4gICAgLS1nLXRleHQtY29kZS0yLWZvbnQtc2l6ZTogI3sxNHB4ICsgJGRlbHRhfTtcbiAgICAtLWctdGV4dC1jb2RlLTMtZm9udC1zaXplOiAjezE2cHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWNvZGUtaW5saW5lLTEtZm9udC1zaXplOiAjezEycHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWNvZGUtaW5saW5lLTItZm9udC1zaXplOiAjezE0cHggKyAkZGVsdGF9O1xuICAgIC0tZy10ZXh0LWNvZGUtaW5saW5lLTMtZm9udC1zaXplOiAjezE2cHggKyAkZGVsdGF9O1xuXG4gICAgLS15Zm0tZm9udC1zaXplOiB2YXIoLS1nLXRleHQtYm9keS0yLWZvbnQtc2l6ZSk7XG4gICAgLS15Zm0tZm9udC1saW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LWJvZHktMi1saW5lLWhlaWdodCk7XG4gICAgLS15Zm0tZm9udC1zaXplLWgyOiB2YXIoLS1nLXRleHQtaGVhZGVyLTItZm9udC1zaXplKTtcbiAgICAtLXlmbS1mb250LXNpemUtaDM6IHZhcigtLWctdGV4dC1oZWFkZXItMS1mb250LXNpemUpO1xuICAgIC0teWZtLWZvbnQtc2l6ZS1oNDogdmFyKC0tZy10ZXh0LXN1YmhlYWRlci0zLWZvbnQtc2l6ZSk7XG4gICAgLS15Zm0tZm9udC1zaXplLWg1OiB2YXIoLS1nLXRleHQtc3ViaGVhZGVyLTItZm9udC1zaXplKTtcbiAgICAtLXlmbS1mb250LXNpemUtaDY6IHZhcigtLWctdGV4dC1zdWJoZWFkZXItMS1mb250LXNpemUpO1xufVxuIl19 */", "@use 'sass:map';\n@use 'variables';\n\n@mixin text-size($name) {\n font-size: var(--g-text-#{$name}-font-size);\n line-height: var(--g-text-#{$name}-line-height);\n}\n\n@mixin reset-list-style() {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n@mixin fixAnchorPosition($offset: 0px) {\n padding-top: calc(var(--dc-header-height, #{variables.$headerHeight}));\n margin-top: calc(#{$offset} - var(--dc-header-height, #{variables.$headerHeight}));\n}\n\n@mixin reset-link-style() {\n color: inherit;\n text-decoration: none;\n}\n\n@mixin islands-focus() {\n outline: none;\n\n .utilityfocus &:focus {\n outline: 2px solid #ffdb4d;\n }\n}\n\n@mixin focusable($offset: 0, $mode: 'outline') {\n @if $mode == 'outline' {\n &:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: $offset;\n }\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n }\n\n @if $mode == 'box-shadow' {\n &:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n }\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n}\n\n@mixin link() {\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n\n @include islands-focus();\n\n @include focusable(0, 'box-shadow');\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n}\n\n@mixin heading1() {\n font-weight: 500;\n\n @include text-size(display-3);\n\n @media (max-width: map.get(variables.$screenBreakpoints, 'md') - 1) {\n @include text-size(display-2);\n }\n}\n\n@mixin heading2() {\n font-weight: 500;\n\n @include text-size(display-1);\n}\n\n@mixin heading3() {\n font-weight: 500;\n\n @include text-size(header-2);\n}\n\n@mixin heading4() {\n font-weight: 500;\n\n @include text-size(header-1);\n}\n\n@mixin heading5() {\n font-weight: 500;\n\n @include text-size(body-3);\n}\n\n@mixin heading6() {\n font-weight: 400;\n\n @include text-size(body-3);\n}\n\n@mixin contributors-text() {\n font-size: 13px;\n font-weight: 400;\n margin-right: 5px;\n align-self: center;\n}\n\n@mixin text-body-1() {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n\n@mixin desktop-only() {\n @media (max-width: map.get(variables.$screenBreakpoints, 'md') - 1) {\n display: none;\n }\n}\n\n@mixin desktop-tablet-only() {\n @media (max-width: map.get(variables.$screenBreakpoints, 'sm') - 1) {\n display: none;\n }\n}\n\n@mixin mobile-tablet-only() {\n @media (min-width: map.get(variables.$screenBreakpoints, 'md')) {\n display: none;\n }\n}\n\n@mixin mobile-only() {\n @media (min-width: map.get(variables.$screenBreakpoints, 'sm')) {\n display: none;\n }\n}\n\n@mixin gravity-ui-text-sizes($delta) {\n --g-text-body-1-font-size: #{13px + $delta};\n --g-text-body-1-line-height: #{18px + $delta};\n --g-text-body-2-font-size: #{15px + $delta};\n --g-text-body-2-line-height: #{20px + $delta};\n --g-text-body-3-font-size: #{17px + $delta};\n --g-text-body-3-line-height: #{24px + $delta};\n --g-text-body-short-font-size: #{13px + $delta};\n --g-text-caption-1-font-size: #{9px + $delta};\n --g-text-caption-2-font-size: #{11px + $delta};\n --g-text-header-1-font-size: #{20px + $delta};\n --g-text-header-2-font-size: #{24px + $delta};\n --g-text-subheader-1-font-size: #{13px + $delta};\n --g-text-subheader-2-font-size: #{15px + $delta};\n --g-text-subheader-3-font-size: #{17px + $delta};\n --g-text-display-1-font-size: #{28px + $delta};\n --g-text-display-2-font-size: #{32px + $delta};\n --g-text-display-3-font-size: #{40px + $delta};\n --g-text-display-4-font-size: #{48px + $delta};\n --g-text-code-1-font-size: #{12px + $delta};\n --g-text-code-2-font-size: #{14px + $delta};\n --g-text-code-3-font-size: #{16px + $delta};\n --g-text-code-inline-1-font-size: #{12px + $delta};\n --g-text-code-inline-2-font-size: #{14px + $delta};\n --g-text-code-inline-3-font-size: #{16px + $delta};\n\n --yfm-font-size: var(--g-text-body-2-font-size);\n --yfm-font-line-height: var(--g-text-body-2-line-height);\n --yfm-font-size-h2: var(--g-text-header-2-font-size);\n --yfm-font-size-h3: var(--g-text-header-1-font-size);\n --yfm-font-size-h4: var(--g-text-subheader-3-font-size);\n --yfm-font-size-h5: var(--g-text-subheader-2-font-size);\n --yfm-font-size-h6: var(--g-text-subheader-1-font-size);\n}\n"],
5
5
  "mappings": ";AAMA,CAAA;AACI,UAAA;AACA,uBAAA;AAAA,oBAAA;AAAA,eAAA;ACLJ;ADOI,CAAA;AACI,2BAAA;AAEA,WAAA;AACA,2BAAA;AAAA,mBAAA;AACA,iBAAA;AAAA,iBAAA,IAAA;ACNR;ACyBQ,CFxBJ,iBEwBI;AACI,WAAA,IAAA,MAAA,IAAA;AACA,kBAAA;ADvBZ;ACyBQ,CF5BJ,iBE4BI,MAAA,KAAA;AACI,WAAA;ADvBZ;ADII,CAAA;AACI,WAAA;AACA,eAAA;AAEA,WAAA,IAAA,IAAA;ACHR;ADMI,CAAA;AACI,WAAA;AAEA,YAAA;AACA,WAAA,IAAA,KAAA,IAAA;AACA,SAAA;ACLR;ADOQ,QAAA,WAAA;AAPJ,GAAA;AAQQ,aAAA,KAAA,KAAA,KAAA;ACJV;ADMU,GAAA,SAAA,CAVR;AAWY,aAAA,KAAA,KAAA,KAAA;ACJd;AACF;ADOQ,CAAA,SAAA,CAfJ;AAgBQ,WAAA,IAAA,KAAA,IAAA;ACLZ;ADSI,CAAA;AACI,2BAAA;AAEA,eAAA;AACA,aAAA;AACA,eAAA;AAEA,cAAA;AACA,cAAA;AACA,oBAAA;AACA,UAAA;AACA,cAAA;AAAA,cAAA;AACA,iBAAA;AAAA,iBAAA,IAAA;AAEA,SAAA,IAAA;ACVR;ADYQ,QAAA,WAAA;AAhBJ,GAAA;AE3CA,eAAA,IAAA;AACA,iBAAA,IAAA;ADmDF;AACF;ADUQ,CAAA;AACI,iBAAA;AACA,cAAA,IAAA;ACRZ;ADWQ,CAAA;AACI,eAAA;AACA,kBAAA;AEtER,aAAA,IAAA;AACA,eAAA,IAAA;AD8DJ;ADaY,CAAA,6BAAA;AACI,SAAA;AACA,WAAA;ACXhB;ADcY,CALA,6BAKA;AACI,YAAA;AACA,OAAA;AACA,SAAA;AACA,aAAA,WAAA;AACA,WAAA;ACZhB;ADgBQ,CAAA;AACI,UAAA;ACdZ;ADgBY,CAHJ,0BAGI;AACI,iBAAA;AACA,cAAA,IAAA;ACdhB;ACnDQ,CFaJ,iBEbI;AACI,WAAA,IAAA,MAAA,IAAA;AACA,kBAAA;ADqDZ;ACnDQ,CFSJ,iBETI,MAAA,KAAA;AACI,WAAA;ADqDZ;ADcI,CAAA;AACI,YAAA;AACA,QAAA;ACZR;ADcQ,CAAA,SAAA,CAJJ;AAKQ,SAAA;ACZZ;ADeQ,QAAA,WAAA;AARJ,GAAA;AASQ,UAAA;ACZV;ADcU,GAAA,SAAA,CAXR;AAYY,WAAA;ACZd;AACF;ADgBI,CAAA;AACI,cAAA;AACA,UAAA;ACdR;ADgBQ,QAAA,WAAA;AAJJ,GAAA;AAKQ,kBAAA;AACA,UAAA;ACbV;ADeU,GAAA,SAAA,CARR;AASY,UAAA;AACA,iBAAA;ACbd;ADgBU,GAbR,mBAaQ,CAAA;AACI,UAAA;ACdd;ADgBc,GAAA,SAAA,CAhBZ,mBAgBY,CAHJ;AAIQ,UAAA;AACA,WAAA;ACdlB;AACF;ADkBQ,CAvBJ,kBAuBI,MAAA;AACI,cAAA;AChBZ;",
6
6
  "names": []
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  var __create = Object.create;
3
3
  var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
7
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
8
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
9
  var __getProtoOf = Object.getPrototypeOf;
@@ -19,6 +21,7 @@ var __spreadValues = (a, b2) => {
19
21
  }
20
22
  return a;
21
23
  };
24
+ var __spreadProps = (a, b2) => __defProps(a, __getOwnPropDescs(b2));
22
25
  var __export = (target, all) => {
23
26
  for (var name in all)
24
27
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -58,6 +61,7 @@ var import_utils = require("../../utils");
58
61
  var import_analytics = require("../../shared/libs/analytics");
59
62
  var import_ToggleArrow = require("../ToggleArrow");
60
63
  var import_TocItem = require("./TocItem.css");
64
+ var import_jsx_runtime = require("react/jsx-runtime");
61
65
  var b = (0, import_bem_cn_lite.default)("dc-toc-item");
62
66
  var TocItem = import_react.default.forwardRef(
63
67
  ({
@@ -87,9 +91,13 @@ var TocItem = import_react.default.forwardRef(
87
91
  toggleItem(id, expanded);
88
92
  };
89
93
  const { t } = (0, import_hooks.useTranslation)("toc-nav-panel");
90
- const deprecatedIcon = deprecated ? /* @__PURE__ */ import_react.default.createElement(import_icons.Ban, null) : null;
91
- const text = /* @__PURE__ */ import_react.default.createElement("span", null, name, " ", deprecatedIcon);
92
- const icon = expandable ? /* @__PURE__ */ import_react.default.createElement(import_ToggleArrow.ToggleArrow, { className: b("icon"), open: expanded, thin: true }) : null;
94
+ const deprecatedIcon = deprecated ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.Ban, {}) : null;
95
+ const text = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
96
+ name,
97
+ " ",
98
+ deprecatedIcon
99
+ ] });
100
+ const icon = expandable ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ToggleArrow.ToggleArrow, { className: b("icon"), open: expanded, thin: true }) : null;
93
101
  const allyButtonProps = {
94
102
  "aria-expanded": expandable && !href ? expanded : void 0,
95
103
  "aria-label": expandable ? t("drop-down-list") + " " + name : void 0
@@ -135,20 +143,23 @@ var TocItem = import_react.default.forwardRef(
135
143
  "data-router-shallow": true
136
144
  };
137
145
  if (expandable && href) {
138
- return /* @__PURE__ */ import_react.default.createElement("a", __spreadValues({}, linkAttributes), /* @__PURE__ */ import_react.default.createElement("div", { className: b("wrapper", b("text", textProps)) }, /* @__PURE__ */ import_react.default.createElement(
139
- import_uikit.Button,
140
- {
141
- size: "xs",
142
- className: b("arrow"),
143
- view: "flat",
144
- onClick: handleArrowClick,
145
- extraProps: allyButtonProps,
146
- ref
147
- },
148
- /* @__PURE__ */ import_react.default.createElement(import_uikit.Button.Icon, null, icon)
149
- ), /* @__PURE__ */ import_react.default.createElement("span", { className: b("text") }, text)));
146
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("a", __spreadProps(__spreadValues({}, linkAttributes), { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: b("wrapper", b("text", textProps)), children: [
147
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
148
+ import_uikit.Button,
149
+ {
150
+ size: "xs",
151
+ className: b("arrow"),
152
+ view: "flat",
153
+ onClick: handleArrowClick,
154
+ extraProps: allyButtonProps,
155
+ ref,
156
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_uikit.Button.Icon, { children: icon })
157
+ }
158
+ ),
159
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: b("text"), children: text })
160
+ ] }) }));
150
161
  }
151
- return /* @__PURE__ */ import_react.default.createElement("a", __spreadValues({}, linkAttributes), content);
162
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("a", __spreadProps(__spreadValues({}, linkAttributes), { children: content }));
152
163
  }
153
164
  );
154
165
  TocItem.displayName = "TocItem";