@diplodoc/components 4.11.2 → 4.12.0

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 (346) hide show
  1. package/build/cjs/components/BookmarkButton/BookmarkButton.css +1 -1
  2. package/build/cjs/components/BookmarkButton/BookmarkButton.css.map +3 -3
  3. package/build/cjs/components/Breadcrumbs/Breadcrumbs.css.map +1 -1
  4. package/build/cjs/components/ContributorAvatars/ContributorAvatars.css.map +1 -1
  5. package/build/cjs/components/Contributors/Contributors.css.map +1 -1
  6. package/build/cjs/components/Control/Control.css.map +1 -1
  7. package/build/cjs/components/Control/Control.js +2 -1
  8. package/build/cjs/components/Control/Control.js.map +2 -2
  9. package/build/cjs/components/Controls/Controls.css.map +1 -1
  10. package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.css.map +1 -1
  11. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.css.map +1 -1
  12. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.js +4 -10
  13. package/build/cjs/components/Controls/single-controls/LangControl/LangControl.js.map +2 -2
  14. package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +1 -1
  15. package/build/cjs/components/DocLayout/DocLayout.css +40 -4
  16. package/build/cjs/components/DocLayout/DocLayout.css.map +3 -3
  17. package/build/cjs/components/DocLeadingPage/DocLeadingPage.css +5 -0
  18. package/build/cjs/components/DocLeadingPage/DocLeadingPage.css.map +3 -3
  19. package/build/cjs/components/DocPage/DocPage.css +56 -8
  20. package/build/cjs/components/DocPage/DocPage.css.map +3 -3
  21. package/build/cjs/components/DocPage/DocPage.js +43 -23
  22. package/build/cjs/components/DocPage/DocPage.js.map +2 -2
  23. package/build/cjs/components/DocPageTitle/DocPageTitle.css.map +1 -1
  24. package/build/cjs/components/ErrorPage/ErrorPage.css.map +1 -1
  25. package/build/cjs/components/Feedback/Feedback.css +17 -11
  26. package/build/cjs/components/Feedback/Feedback.css.map +3 -3
  27. package/build/cjs/components/Feedback/Feedback.js +6 -3
  28. package/build/cjs/components/Feedback/Feedback.js.map +2 -2
  29. package/build/cjs/components/Feedback/controls/DislikeControl.d.ts +1 -0
  30. package/build/cjs/components/Feedback/controls/DislikeControl.js +14 -1
  31. package/build/cjs/components/Feedback/controls/DislikeControl.js.map +2 -2
  32. package/build/cjs/components/Feedback/controls/LikeControl.d.ts +1 -0
  33. package/build/cjs/components/Feedback/controls/LikeControl.js +4 -2
  34. package/build/cjs/components/Feedback/controls/LikeControl.js.map +2 -2
  35. package/build/cjs/components/Mark/Mark.css.map +1 -1
  36. package/build/cjs/components/MiniToc/MiniToc.css +34 -3
  37. package/build/cjs/components/MiniToc/MiniToc.css.map +3 -3
  38. package/build/cjs/components/MiniToc/MiniToc.d.ts +1 -0
  39. package/build/cjs/components/MiniToc/MiniToc.js +33 -23
  40. package/build/cjs/components/MiniToc/MiniToc.js.map +2 -2
  41. package/build/cjs/components/MobileControls/MobileControl/MobileControl.css +43 -0
  42. package/build/cjs/components/MobileControls/MobileControl/MobileControl.css.map +7 -0
  43. package/build/cjs/components/MobileControls/MobileControl/MobileControl.d.ts +15 -0
  44. package/build/cjs/components/MobileControls/MobileControl/MobileControl.js +93 -0
  45. package/build/cjs/components/MobileControls/MobileControl/MobileControl.js.map +7 -0
  46. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.css +38 -0
  47. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.css.map +7 -0
  48. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.d.ts +13 -0
  49. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.js +73 -0
  50. package/build/cjs/components/MobileControls/MobileControlSheet/MobileControlSheet.js.map +7 -0
  51. package/build/cjs/components/MobileControls/MobileControls.css +21 -0
  52. package/build/cjs/components/MobileControls/MobileControls.css.map +7 -0
  53. package/build/cjs/components/MobileControls/MobileControls.d.ts +10 -0
  54. package/build/cjs/components/MobileControls/MobileControls.js +118 -0
  55. package/build/cjs/components/MobileControls/MobileControls.js.map +7 -0
  56. package/build/cjs/components/MobileControls/index.d.ts +2 -0
  57. package/build/cjs/components/MobileControls/index.js +39 -0
  58. package/build/cjs/components/MobileControls/index.js.map +7 -0
  59. package/build/cjs/components/OutsideClick/OutsideClick.d.ts +4 -3
  60. package/build/cjs/components/OutsideClick/OutsideClick.js +4 -4
  61. package/build/cjs/components/OutsideClick/OutsideClick.js.map +2 -2
  62. package/build/cjs/components/Paginator/Paginator.css.map +1 -1
  63. package/build/cjs/components/Scrollspy/Scrollspy.d.ts +6 -0
  64. package/build/cjs/components/Scrollspy/Scrollspy.js +32 -0
  65. package/build/cjs/components/Scrollspy/Scrollspy.js.map +3 -3
  66. package/build/cjs/components/SearchBar/SearchBar.css.map +1 -1
  67. package/build/cjs/components/SearchItem/SearchItem.css.map +1 -1
  68. package/build/cjs/components/SearchPage/SearchPage.css.map +2 -2
  69. package/build/cjs/components/SearchSuggest/index.css.map +1 -1
  70. package/build/cjs/components/ShareButton/ShareButton.d.ts +16 -0
  71. package/build/cjs/components/ShareButton/ShareButton.js +69 -0
  72. package/build/cjs/components/ShareButton/ShareButton.js.map +7 -0
  73. package/build/cjs/components/ShareButton/index.d.ts +1 -0
  74. package/build/cjs/components/ShareButton/index.js +21 -0
  75. package/build/cjs/components/ShareButton/index.js.map +7 -0
  76. package/build/cjs/components/SubNavigation/SubNavigation.css +149 -0
  77. package/build/cjs/components/SubNavigation/SubNavigation.css.map +7 -0
  78. package/build/cjs/components/SubNavigation/SubNavigation.d.ts +19 -0
  79. package/build/cjs/components/SubNavigation/SubNavigation.js +188 -0
  80. package/build/cjs/components/SubNavigation/SubNavigation.js.map +7 -0
  81. package/build/cjs/components/SubNavigation/hooks/index.d.ts +2 -0
  82. package/build/cjs/components/SubNavigation/hooks/index.js +39 -0
  83. package/build/cjs/components/SubNavigation/hooks/index.js.map +7 -0
  84. package/build/cjs/components/SubNavigation/hooks/useMiniTocData.d.ts +8 -0
  85. package/build/cjs/components/SubNavigation/hooks/useMiniTocData.js +53 -0
  86. package/build/cjs/components/SubNavigation/hooks/useMiniTocData.js.map +7 -0
  87. package/build/cjs/components/SubNavigation/hooks/useVisibility.d.ts +2 -0
  88. package/build/cjs/components/SubNavigation/hooks/useVisibility.js +84 -0
  89. package/build/cjs/components/SubNavigation/hooks/useVisibility.js.map +7 -0
  90. package/build/cjs/components/SubNavigation/index.d.ts +2 -0
  91. package/build/cjs/components/SubNavigation/index.js +39 -0
  92. package/build/cjs/components/SubNavigation/index.js.map +7 -0
  93. package/build/cjs/components/Subscribe/Subscribe.css.map +2 -2
  94. package/build/cjs/components/Toc/Toc.css +35 -8
  95. package/build/cjs/components/Toc/Toc.css.map +3 -3
  96. package/build/cjs/components/TocItem/TocItem.css +7 -0
  97. package/build/cjs/components/TocItem/TocItem.css.map +3 -3
  98. package/build/cjs/components/TocLable/TocLabel.css.map +1 -1
  99. package/build/cjs/components/TocNavPanel/TocNavPanel.css +27 -16
  100. package/build/cjs/components/TocNavPanel/TocNavPanel.css.map +3 -3
  101. package/build/cjs/components/TocNavPanel/TocNavPanel.js +2 -1
  102. package/build/cjs/components/TocNavPanel/TocNavPanel.js.map +2 -2
  103. package/build/cjs/components/ToggleArrow/ToggleArrow.css.map +1 -1
  104. package/build/cjs/components/UpdatedAtDate/UpdatedAtDate.css.map +1 -1
  105. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.css +12 -0
  106. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.css.map +7 -0
  107. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.d.ts +11 -0
  108. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.js +98 -0
  109. package/build/cjs/components/navigation/CustomNavigation/CustomNavigation.js.map +7 -0
  110. package/build/cjs/components/navigation/CustomNavigation/hooks/index.d.ts +2 -0
  111. package/build/cjs/components/navigation/CustomNavigation/hooks/index.js +39 -0
  112. package/build/cjs/components/navigation/CustomNavigation/hooks/index.js.map +7 -0
  113. package/build/cjs/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.d.ts +8 -0
  114. package/build/cjs/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.js +39 -0
  115. package/build/cjs/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.js.map +7 -0
  116. package/build/cjs/components/navigation/CustomNavigation/hooks/useSidebarOpenness.d.ts +7 -0
  117. package/build/cjs/components/navigation/CustomNavigation/hooks/useSidebarOpenness.js +51 -0
  118. package/build/cjs/components/navigation/CustomNavigation/hooks/useSidebarOpenness.js.map +7 -0
  119. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.css +38 -0
  120. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.css.map +7 -0
  121. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.d.ts +8 -0
  122. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.js +71 -0
  123. package/build/cjs/components/navigation/MobileDropdown/MobileDropdown.js.map +7 -0
  124. package/build/cjs/components/navigation/Sidebar/Sidebar.css +51 -0
  125. package/build/cjs/components/navigation/Sidebar/Sidebar.css.map +7 -0
  126. package/build/cjs/components/navigation/Sidebar/Sidebar.d.ts +8 -0
  127. package/build/cjs/components/navigation/Sidebar/Sidebar.js +73 -0
  128. package/build/cjs/components/navigation/Sidebar/Sidebar.js.map +7 -0
  129. package/build/cjs/components/navigation/SidebarContent/SidebarContent.css +57 -0
  130. package/build/cjs/components/navigation/SidebarContent/SidebarContent.css.map +7 -0
  131. package/build/cjs/components/navigation/SidebarContent/SidebarContent.d.ts +27 -0
  132. package/build/cjs/components/navigation/SidebarContent/SidebarContent.js +107 -0
  133. package/build/cjs/components/navigation/SidebarContent/SidebarContent.js.map +7 -0
  134. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.css +31 -0
  135. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.css.map +7 -0
  136. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.d.ts +11 -0
  137. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.js +61 -0
  138. package/build/cjs/components/navigation/SidebarNavigation/SidebarNavigation.js.map +7 -0
  139. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.css +59 -0
  140. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.css.map +7 -0
  141. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.d.ts +8 -0
  142. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.js +55 -0
  143. package/build/cjs/components/navigation/ToMainMenu/ToMainMenu.js.map +7 -0
  144. package/build/cjs/components/navigation/hooks/index.d.ts +1 -0
  145. package/build/cjs/components/navigation/hooks/index.js +37 -0
  146. package/build/cjs/components/navigation/hooks/index.js.map +7 -0
  147. package/build/cjs/components/navigation/hooks/useItemsWithCustomDropdowns.d.ts +3 -0
  148. package/build/cjs/components/navigation/hooks/useItemsWithCustomDropdowns.js +60 -0
  149. package/build/cjs/components/navigation/hooks/useItemsWithCustomDropdowns.js.map +7 -0
  150. package/build/cjs/components/navigation/index.d.ts +12 -0
  151. package/build/cjs/components/navigation/index.js +54 -0
  152. package/build/cjs/components/navigation/index.js.map +7 -0
  153. package/build/cjs/constants.d.ts +5 -0
  154. package/build/cjs/constants.js +9 -1
  155. package/build/cjs/constants.js.map +2 -2
  156. package/build/cjs/hooks/index.d.ts +1 -0
  157. package/build/cjs/hooks/index.js +1 -0
  158. package/build/cjs/hooks/index.js.map +2 -2
  159. package/build/cjs/hooks/useShareHandler.d.ts +6 -0
  160. package/build/cjs/hooks/useShareHandler.js +51 -0
  161. package/build/cjs/hooks/useShareHandler.js.map +7 -0
  162. package/build/cjs/i18n/index.d.ts +13 -0
  163. package/build/cjs/i18n/index.js +9 -2
  164. package/build/cjs/i18n/index.js.map +2 -2
  165. package/build/cjs/index.d.ts +5 -1
  166. package/build/cjs/index.js +5 -1
  167. package/build/cjs/index.js.map +2 -2
  168. package/build/cjs/models/index.d.ts +13 -2
  169. package/build/cjs/models/index.js +1 -0
  170. package/build/cjs/models/index.js.map +2 -2
  171. package/build/esm/components/BookmarkButton/BookmarkButton.css +1 -1
  172. package/build/esm/components/BookmarkButton/BookmarkButton.css.map +3 -3
  173. package/build/esm/components/Breadcrumbs/Breadcrumbs.css.map +1 -1
  174. package/build/esm/components/ContributorAvatars/ContributorAvatars.css.map +1 -1
  175. package/build/esm/components/Contributors/Contributors.css.map +1 -1
  176. package/build/esm/components/Control/Control.css.map +1 -1
  177. package/build/esm/components/Control/Control.js +2 -1
  178. package/build/esm/components/Control/Control.js.map +2 -2
  179. package/build/esm/components/Controls/Controls.css.map +1 -1
  180. package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.css.map +1 -1
  181. package/build/esm/components/Controls/single-controls/LangControl/LangControl.css.map +1 -1
  182. package/build/esm/components/Controls/single-controls/LangControl/LangControl.js +2 -8
  183. package/build/esm/components/Controls/single-controls/LangControl/LangControl.js.map +2 -2
  184. package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +1 -1
  185. package/build/esm/components/DocLayout/DocLayout.css +40 -4
  186. package/build/esm/components/DocLayout/DocLayout.css.map +3 -3
  187. package/build/esm/components/DocLeadingPage/DocLeadingPage.css +5 -0
  188. package/build/esm/components/DocLeadingPage/DocLeadingPage.css.map +3 -3
  189. package/build/esm/components/DocPage/DocPage.css +56 -8
  190. package/build/esm/components/DocPage/DocPage.css.map +3 -3
  191. package/build/esm/components/DocPage/DocPage.js +45 -23
  192. package/build/esm/components/DocPage/DocPage.js.map +2 -2
  193. package/build/esm/components/DocPageTitle/DocPageTitle.css.map +1 -1
  194. package/build/esm/components/ErrorPage/ErrorPage.css.map +1 -1
  195. package/build/esm/components/Feedback/Feedback.css +17 -11
  196. package/build/esm/components/Feedback/Feedback.css.map +3 -3
  197. package/build/esm/components/Feedback/Feedback.js +6 -3
  198. package/build/esm/components/Feedback/Feedback.js.map +2 -2
  199. package/build/esm/components/Feedback/controls/DislikeControl.d.ts +1 -0
  200. package/build/esm/components/Feedback/controls/DislikeControl.js +14 -1
  201. package/build/esm/components/Feedback/controls/DislikeControl.js.map +2 -2
  202. package/build/esm/components/Feedback/controls/LikeControl.d.ts +1 -0
  203. package/build/esm/components/Feedback/controls/LikeControl.js +4 -2
  204. package/build/esm/components/Feedback/controls/LikeControl.js.map +2 -2
  205. package/build/esm/components/Mark/Mark.css.map +1 -1
  206. package/build/esm/components/MiniToc/MiniToc.css +34 -3
  207. package/build/esm/components/MiniToc/MiniToc.css.map +3 -3
  208. package/build/esm/components/MiniToc/MiniToc.d.ts +1 -0
  209. package/build/esm/components/MiniToc/MiniToc.js +33 -23
  210. package/build/esm/components/MiniToc/MiniToc.js.map +2 -2
  211. package/build/esm/components/MobileControls/MobileControl/MobileControl.css +43 -0
  212. package/build/esm/components/MobileControls/MobileControl/MobileControl.css.map +7 -0
  213. package/build/esm/components/MobileControls/MobileControl/MobileControl.d.ts +15 -0
  214. package/build/esm/components/MobileControls/MobileControl/MobileControl.js +62 -0
  215. package/build/esm/components/MobileControls/MobileControl/MobileControl.js.map +7 -0
  216. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.css +38 -0
  217. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.css.map +7 -0
  218. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.d.ts +13 -0
  219. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.js +42 -0
  220. package/build/esm/components/MobileControls/MobileControlSheet/MobileControlSheet.js.map +7 -0
  221. package/build/esm/components/MobileControls/MobileControls.css +21 -0
  222. package/build/esm/components/MobileControls/MobileControls.css.map +7 -0
  223. package/build/esm/components/MobileControls/MobileControls.d.ts +10 -0
  224. package/build/esm/components/MobileControls/MobileControls.js +92 -0
  225. package/build/esm/components/MobileControls/MobileControls.js.map +7 -0
  226. package/build/esm/components/MobileControls/index.d.ts +2 -0
  227. package/build/esm/components/MobileControls/index.js +7 -0
  228. package/build/esm/components/MobileControls/index.js.map +7 -0
  229. package/build/esm/components/OutsideClick/OutsideClick.d.ts +4 -3
  230. package/build/esm/components/OutsideClick/OutsideClick.js +4 -4
  231. package/build/esm/components/OutsideClick/OutsideClick.js.map +2 -2
  232. package/build/esm/components/Paginator/Paginator.css.map +1 -1
  233. package/build/esm/components/Scrollspy/Scrollspy.d.ts +6 -0
  234. package/build/esm/components/Scrollspy/Scrollspy.js +32 -0
  235. package/build/esm/components/Scrollspy/Scrollspy.js.map +3 -3
  236. package/build/esm/components/SearchBar/SearchBar.css.map +1 -1
  237. package/build/esm/components/SearchItem/SearchItem.css.map +1 -1
  238. package/build/esm/components/SearchPage/SearchPage.css.map +2 -2
  239. package/build/esm/components/SearchSuggest/index.css.map +1 -1
  240. package/build/esm/components/ShareButton/ShareButton.d.ts +16 -0
  241. package/build/esm/components/ShareButton/ShareButton.js +41 -0
  242. package/build/esm/components/ShareButton/ShareButton.js.map +7 -0
  243. package/build/esm/components/ShareButton/index.d.ts +1 -0
  244. package/build/esm/components/ShareButton/index.js +3 -0
  245. package/build/esm/components/ShareButton/index.js.map +7 -0
  246. package/build/esm/components/SubNavigation/SubNavigation.css +149 -0
  247. package/build/esm/components/SubNavigation/SubNavigation.css.map +7 -0
  248. package/build/esm/components/SubNavigation/SubNavigation.d.ts +19 -0
  249. package/build/esm/components/SubNavigation/SubNavigation.js +160 -0
  250. package/build/esm/components/SubNavigation/SubNavigation.js.map +7 -0
  251. package/build/esm/components/SubNavigation/hooks/index.d.ts +2 -0
  252. package/build/esm/components/SubNavigation/hooks/index.js +8 -0
  253. package/build/esm/components/SubNavigation/hooks/index.js.map +7 -0
  254. package/build/esm/components/SubNavigation/hooks/useMiniTocData.d.ts +8 -0
  255. package/build/esm/components/SubNavigation/hooks/useMiniTocData.js +32 -0
  256. package/build/esm/components/SubNavigation/hooks/useMiniTocData.js.map +7 -0
  257. package/build/esm/components/SubNavigation/hooks/useVisibility.d.ts +2 -0
  258. package/build/esm/components/SubNavigation/hooks/useVisibility.js +63 -0
  259. package/build/esm/components/SubNavigation/hooks/useVisibility.js.map +7 -0
  260. package/build/esm/components/SubNavigation/index.d.ts +2 -0
  261. package/build/esm/components/SubNavigation/index.js +7 -0
  262. package/build/esm/components/SubNavigation/index.js.map +7 -0
  263. package/build/esm/components/Subscribe/Subscribe.css.map +2 -2
  264. package/build/esm/components/Toc/Toc.css +35 -8
  265. package/build/esm/components/Toc/Toc.css.map +3 -3
  266. package/build/esm/components/TocItem/TocItem.css +7 -0
  267. package/build/esm/components/TocItem/TocItem.css.map +3 -3
  268. package/build/esm/components/TocLable/TocLabel.css.map +1 -1
  269. package/build/esm/components/TocNavPanel/TocNavPanel.css +27 -16
  270. package/build/esm/components/TocNavPanel/TocNavPanel.css.map +3 -3
  271. package/build/esm/components/TocNavPanel/TocNavPanel.js +2 -1
  272. package/build/esm/components/TocNavPanel/TocNavPanel.js.map +2 -2
  273. package/build/esm/components/ToggleArrow/ToggleArrow.css.map +1 -1
  274. package/build/esm/components/UpdatedAtDate/UpdatedAtDate.css.map +1 -1
  275. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.css +12 -0
  276. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.css.map +7 -0
  277. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.d.ts +11 -0
  278. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.js +74 -0
  279. package/build/esm/components/navigation/CustomNavigation/CustomNavigation.js.map +7 -0
  280. package/build/esm/components/navigation/CustomNavigation/hooks/index.d.ts +2 -0
  281. package/build/esm/components/navigation/CustomNavigation/hooks/index.js +8 -0
  282. package/build/esm/components/navigation/CustomNavigation/hooks/index.js.map +7 -0
  283. package/build/esm/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.d.ts +8 -0
  284. package/build/esm/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.js +18 -0
  285. package/build/esm/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.js.map +7 -0
  286. package/build/esm/components/navigation/CustomNavigation/hooks/useSidebarOpenness.d.ts +7 -0
  287. package/build/esm/components/navigation/CustomNavigation/hooks/useSidebarOpenness.js +30 -0
  288. package/build/esm/components/navigation/CustomNavigation/hooks/useSidebarOpenness.js.map +7 -0
  289. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.css +38 -0
  290. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.css.map +7 -0
  291. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.d.ts +8 -0
  292. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.js +46 -0
  293. package/build/esm/components/navigation/MobileDropdown/MobileDropdown.js.map +7 -0
  294. package/build/esm/components/navigation/Sidebar/Sidebar.css +51 -0
  295. package/build/esm/components/navigation/Sidebar/Sidebar.css.map +7 -0
  296. package/build/esm/components/navigation/Sidebar/Sidebar.d.ts +8 -0
  297. package/build/esm/components/navigation/Sidebar/Sidebar.js +42 -0
  298. package/build/esm/components/navigation/Sidebar/Sidebar.js.map +7 -0
  299. package/build/esm/components/navigation/SidebarContent/SidebarContent.css +57 -0
  300. package/build/esm/components/navigation/SidebarContent/SidebarContent.css.map +7 -0
  301. package/build/esm/components/navigation/SidebarContent/SidebarContent.d.ts +27 -0
  302. package/build/esm/components/navigation/SidebarContent/SidebarContent.js +83 -0
  303. package/build/esm/components/navigation/SidebarContent/SidebarContent.js.map +7 -0
  304. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.css +31 -0
  305. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.css.map +7 -0
  306. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.d.ts +11 -0
  307. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.js +30 -0
  308. package/build/esm/components/navigation/SidebarNavigation/SidebarNavigation.js.map +7 -0
  309. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.css +59 -0
  310. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.css.map +7 -0
  311. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.d.ts +8 -0
  312. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.js +24 -0
  313. package/build/esm/components/navigation/ToMainMenu/ToMainMenu.js.map +7 -0
  314. package/build/esm/components/navigation/hooks/index.d.ts +1 -0
  315. package/build/esm/components/navigation/hooks/index.js +6 -0
  316. package/build/esm/components/navigation/hooks/index.js.map +7 -0
  317. package/build/esm/components/navigation/hooks/useItemsWithCustomDropdowns.d.ts +3 -0
  318. package/build/esm/components/navigation/hooks/useItemsWithCustomDropdowns.js +42 -0
  319. package/build/esm/components/navigation/hooks/useItemsWithCustomDropdowns.js.map +7 -0
  320. package/build/esm/components/navigation/index.d.ts +12 -0
  321. package/build/esm/components/navigation/index.js +22 -0
  322. package/build/esm/components/navigation/index.js.map +7 -0
  323. package/build/esm/constants.d.ts +5 -0
  324. package/build/esm/constants.js +9 -1
  325. package/build/esm/constants.js.map +2 -2
  326. package/build/esm/hooks/index.d.ts +1 -0
  327. package/build/esm/hooks/index.js +1 -0
  328. package/build/esm/hooks/index.js.map +2 -2
  329. package/build/esm/hooks/useShareHandler.d.ts +6 -0
  330. package/build/esm/hooks/useShareHandler.js +30 -0
  331. package/build/esm/hooks/useShareHandler.js.map +7 -0
  332. package/build/esm/i18n/index.d.ts +13 -0
  333. package/build/esm/i18n/index.js +9 -2
  334. package/build/esm/i18n/index.js.map +2 -2
  335. package/build/esm/index.d.ts +5 -1
  336. package/build/esm/index.js +5 -1
  337. package/build/esm/index.js.map +2 -2
  338. package/build/esm/models/index.d.ts +13 -2
  339. package/build/esm/models/index.js +1 -0
  340. package/build/esm/models/index.js.map +2 -2
  341. package/build/index.css.map +2 -2
  342. package/build/themes/common/index.css +1 -0
  343. package/build/themes/common/index.css.map +3 -3
  344. package/package.json +4 -1
  345. package/src/i18n/en.json +8 -1
  346. package/src/i18n/ru.json +7 -1
@@ -0,0 +1,2 @@
1
+ export { default as useSidebarOpenness } from './useSidebarOpenness';
2
+ export { default as useMainMenuOpenness } from './useMainMenuOpenness';
@@ -0,0 +1,8 @@
1
+ // src/components/navigation/CustomNavigation/hooks/index.ts
2
+ import { default as default2 } from "./useSidebarOpenness";
3
+ import { default as default3 } from "./useMainMenuOpenness";
4
+ export {
5
+ default3 as useMainMenuOpenness,
6
+ default2 as useSidebarOpenness
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/components/navigation/CustomNavigation/hooks/index.ts"],
4
+ "sourcesContent": ["export {default as useSidebarOpenness} from './useSidebarOpenness';\nexport {default as useMainMenuOpenness} from './useMainMenuOpenness';\n"],
5
+ "mappings": ";AAAA,SAAmB,WAAXA,gBAAoC;AAC5C,SAAmB,WAAXA,gBAAqC;",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,8 @@
1
+ import { MainMenuOpenessProps } from '../../SidebarContent/SidebarContent';
2
+ type UseMainMenuOpennessReturnData = [
3
+ isOpened: boolean,
4
+ close: () => void,
5
+ data: MainMenuOpenessProps
6
+ ];
7
+ export declare const useMainMenuOpenness: () => UseMainMenuOpennessReturnData;
8
+ export default useMainMenuOpenness;
@@ -0,0 +1,18 @@
1
+ // src/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.ts
2
+ import { useCallback, useState } from "react";
3
+ var useMainMenuOpenness = () => {
4
+ const [isMainMenuOpened, setIsMainMenuOpened] = useState(false);
5
+ const openMainMenu = () => setIsMainMenuOpened(true);
6
+ const closeMainMenu = useCallback(() => setIsMainMenuOpened(false), [setIsMainMenuOpened]);
7
+ const mainMenuOpenessData = {
8
+ isMainMenuOpened,
9
+ openMainMenu
10
+ };
11
+ return [isMainMenuOpened, closeMainMenu, mainMenuOpenessData];
12
+ };
13
+ var useMainMenuOpenness_default = useMainMenuOpenness;
14
+ export {
15
+ useMainMenuOpenness_default as default,
16
+ useMainMenuOpenness
17
+ };
18
+ //# sourceMappingURL=useMainMenuOpenness.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/components/navigation/CustomNavigation/hooks/useMainMenuOpenness.ts"],
4
+ "sourcesContent": ["import {useCallback, useState} from 'react';\n\nimport {MainMenuOpenessProps} from '../../SidebarContent/SidebarContent';\n\ntype UseMainMenuOpennessReturnData = [\n isOpened: boolean,\n close: () => void,\n data: MainMenuOpenessProps,\n];\n\nexport const useMainMenuOpenness = (): UseMainMenuOpennessReturnData => {\n const [isMainMenuOpened, setIsMainMenuOpened] = useState(false);\n\n const openMainMenu = () => setIsMainMenuOpened(true);\n const closeMainMenu = useCallback(() => setIsMainMenuOpened(false), [setIsMainMenuOpened]);\n\n const mainMenuOpenessData = {\n isMainMenuOpened,\n openMainMenu,\n };\n\n return [isMainMenuOpened, closeMainMenu, mainMenuOpenessData];\n};\n\nexport default useMainMenuOpenness;\n"],
5
+ "mappings": ";AAAA,SAAQ,aAAa,gBAAe;AAU7B,IAAM,sBAAsB,MAAqC;AACpE,QAAM,CAAC,kBAAkB,mBAAmB,IAAI,SAAS,KAAK;AAE9D,QAAM,eAAe,MAAM,oBAAoB,IAAI;AACnD,QAAM,gBAAgB,YAAY,MAAM,oBAAoB,KAAK,GAAG,CAAC,mBAAmB,CAAC;AAEzF,QAAM,sBAAsB;AAAA,IACxB;AAAA,IACA;AAAA,EACJ;AAEA,SAAO,CAAC,kBAAkB,eAAe,mBAAmB;AAChE;AAEA,IAAO,8BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import { NavigationTocProps } from '../../SidebarContent/SidebarContent';
2
+ type UseSidebarOpennessReturnData = [
3
+ isSidebarOpened: boolean,
4
+ onSidebarOpenedChange: (isOpened: boolean) => void
5
+ ];
6
+ declare const useSidebarOpenness: (isMainMenuOpened: boolean, closeMainMenu: () => void, navigationTocData: NavigationTocProps) => UseSidebarOpennessReturnData;
7
+ export default useSidebarOpenness;
@@ -0,0 +1,30 @@
1
+ // src/components/navigation/CustomNavigation/hooks/useSidebarOpenness.ts
2
+ import { useCallback, useEffect, useState } from "react";
3
+ var useSidebarOpenness = (isMainMenuOpened, closeMainMenu, navigationTocData) => {
4
+ const [pathName, setPathName] = useState(navigationTocData.router.pathname);
5
+ const [hash, setHash] = useState(navigationTocData.router.hash);
6
+ const [isSidebarOpened, setIsSidebarOpened] = useState(false);
7
+ useEffect(() => {
8
+ const router = navigationTocData.router;
9
+ if (pathName !== router.pathname || hash !== router.hash) {
10
+ setIsSidebarOpened(false);
11
+ setHash(router.hash);
12
+ setPathName(router.pathname);
13
+ }
14
+ }, [navigationTocData, hash, pathName]);
15
+ const onSidebarOpenedChange = useCallback(
16
+ (isOpened) => {
17
+ if (isOpened && isMainMenuOpened) {
18
+ closeMainMenu();
19
+ }
20
+ setIsSidebarOpened(isOpened);
21
+ },
22
+ [isMainMenuOpened, setIsSidebarOpened, closeMainMenu]
23
+ );
24
+ return [isSidebarOpened, onSidebarOpenedChange];
25
+ };
26
+ var useSidebarOpenness_default = useSidebarOpenness;
27
+ export {
28
+ useSidebarOpenness_default as default
29
+ };
30
+ //# sourceMappingURL=useSidebarOpenness.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/components/navigation/CustomNavigation/hooks/useSidebarOpenness.ts"],
4
+ "sourcesContent": ["import {useCallback, useEffect, useState} from 'react';\n\nimport {NavigationTocProps} from '../../SidebarContent/SidebarContent';\n\ntype UseSidebarOpennessReturnData = [\n isSidebarOpened: boolean,\n onSidebarOpenedChange: (isOpened: boolean) => void,\n];\n\nconst useSidebarOpenness = (\n isMainMenuOpened: boolean,\n closeMainMenu: () => void,\n navigationTocData: NavigationTocProps,\n): UseSidebarOpennessReturnData => {\n const [pathName, setPathName] = useState(navigationTocData.router.pathname);\n const [hash, setHash] = useState(navigationTocData.router.hash);\n\n const [isSidebarOpened, setIsSidebarOpened] = useState(false);\n\n useEffect(() => {\n const router = navigationTocData.router;\n\n if (pathName !== router.pathname || hash !== router.hash) {\n setIsSidebarOpened(false);\n setHash(router.hash);\n setPathName(router.pathname);\n }\n }, [navigationTocData, hash, pathName]);\n\n const onSidebarOpenedChange = useCallback(\n (isOpened: boolean) => {\n if (isOpened && isMainMenuOpened) {\n closeMainMenu();\n }\n\n setIsSidebarOpened(isOpened);\n },\n [isMainMenuOpened, setIsSidebarOpened, closeMainMenu],\n );\n\n return [isSidebarOpened, onSidebarOpenedChange];\n};\n\nexport default useSidebarOpenness;\n"],
5
+ "mappings": ";AAAA,SAAQ,aAAa,WAAW,gBAAe;AAS/C,IAAM,qBAAqB,CACvB,kBACA,eACA,sBAC+B;AAC/B,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,kBAAkB,OAAO,QAAQ;AAC1E,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,kBAAkB,OAAO,IAAI;AAE9D,QAAM,CAAC,iBAAiB,kBAAkB,IAAI,SAAS,KAAK;AAE5D,YAAU,MAAM;AACZ,UAAM,SAAS,kBAAkB;AAEjC,QAAI,aAAa,OAAO,YAAY,SAAS,OAAO,MAAM;AACtD,yBAAmB,KAAK;AACxB,cAAQ,OAAO,IAAI;AACnB,kBAAY,OAAO,QAAQ;AAAA,IAC/B;AAAA,EACJ,GAAG,CAAC,mBAAmB,MAAM,QAAQ,CAAC;AAEtC,QAAM,wBAAwB;AAAA,IAC1B,CAAC,aAAsB;AACnB,UAAI,YAAY,kBAAkB;AAC9B,sBAAc;AAAA,MAClB;AAEA,yBAAmB,QAAQ;AAAA,IAC/B;AAAA,IACA,CAAC,kBAAkB,oBAAoB,aAAa;AAAA,EACxD;AAEA,SAAO,CAAC,iBAAiB,qBAAqB;AAClD;AAEA,IAAO,6BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,38 @@
1
+ /* src/components/navigation/MobileDropdown/MobileDropdown.scss */
2
+ .dc-mobile-dropdown {
3
+ display: flex;
4
+ justify-content: space-between;
5
+ align-items: center;
6
+ padding: 10px 12px 10px 4px;
7
+ width: 100%;
8
+ }
9
+ .dc-mobile-dropdown__foldable .dc-mobile-dropdown__list {
10
+ display: flex;
11
+ padding: 4px 12px;
12
+ flex-direction: column;
13
+ border-radius: 11px;
14
+ background: var(--g-color-base-generic);
15
+ }
16
+ .dc-mobile-dropdown__list-item {
17
+ display: flex;
18
+ padding: 10px 12px 10px 28px;
19
+ gap: 4px;
20
+ width: 100%;
21
+ margin: 0;
22
+ font-weight: 400;
23
+ }
24
+ .dc-mobile-dropdown__icon {
25
+ transition: transform 150ms;
26
+ }
27
+ .dc-mobile-dropdown__icon_up {
28
+ transform: rotate(180deg);
29
+ }
30
+ @media (min-width: 769px) {
31
+ .dc-mobile-dropdown {
32
+ display: none;
33
+ }
34
+ .pc-navigation-item:has(.dc-mobile-dropdown) {
35
+ width: 0;
36
+ }
37
+ }
38
+ /*# sourceMappingURL=MobileDropdown.css.map */
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/navigation/MobileDropdown/home/runner/work/components/components/src/components/navigation/MobileDropdown/MobileDropdown.scss", "../../../../../src/components/navigation/MobileDropdown/%3Cinput%20css%20Ng5DmJ%3E"],
4
+ "sourcesContent": ["@import '../../../styles/variables.scss';\n@import '../../../styles/mixins.scss';\n\n.dc-mobile-dropdown {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n padding: 10px 12px 10px 4px;\n\n width: 100%;\n\n &__foldable &__list {\n display: flex;\n padding: 4px 12px;\n flex-direction: column;\n\n border-radius: 11px;\n background: var(--g-color-base-generic);\n }\n\n &__list-item {\n display: flex;\n padding: 10px 12px 10px 28px;\n gap: 4px;\n\n width: 100%;\n margin: 0;\n\n font-weight: 400;\n }\n\n &__icon {\n transition: transform 150ms;\n\n &_up {\n transform: rotate(180deg);\n }\n }\n\n @media (min-width: map-get($screenBreakpoints, 'md')) {\n display: none;\n\n .pc-navigation-item:has(&) {\n width: 0;\n }\n }\n}\n", ".dc-mobile-dropdown {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 10px 12px 10px 4px;\n width: 100%;\n}\n.dc-mobile-dropdown__foldable .dc-mobile-dropdown__list {\n display: flex;\n padding: 4px 12px;\n flex-direction: column;\n border-radius: 11px;\n background: var(--g-color-base-generic);\n}\n.dc-mobile-dropdown__list-item {\n display: flex;\n padding: 10px 12px 10px 28px;\n gap: 4px;\n width: 100%;\n margin: 0;\n font-weight: 400;\n}\n.dc-mobile-dropdown__icon {\n transition: transform 150ms;\n}\n.dc-mobile-dropdown__icon_up {\n transform: rotate(180deg);\n}\n@media (min-width: 769px) {\n .dc-mobile-dropdown {\n display: none;\n }\n .pc-navigation-item:has(.dc-mobile-dropdown) {\n width: 0;\n }\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL25hdmlnYXRpb24vTW9iaWxlRHJvcGRvd24iLCJzb3VyY2VzIjpbIk1vYmlsZURyb3Bkb3duLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUVBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7O0FBSVI7RUFyQ0o7SUFzQ1E7O0VBRUE7SUFDSSIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2Nzcyc7XG5AaW1wb3J0ICcuLi8uLi8uLi9zdHlsZXMvbWl4aW5zLnNjc3MnO1xuXG4uZGMtbW9iaWxlLWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgcGFkZGluZzogMTBweCAxMnB4IDEwcHggNHB4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX19mb2xkYWJsZSAmX19saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTFweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZy1jb2xvci1iYXNlLWdlbmVyaWMpO1xuICAgIH1cblxuICAgICZfX2xpc3QtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTJweCAxMHB4IDI4cHg7XG4gICAgICAgIGdhcDogNHB4O1xuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuXG4gICAgICAgICZfdXAge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAucGMtbmF2aWdhdGlvbi1pdGVtOmhhcygmKSB7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ== */"],
5
+ "mappings": ";AAGA,CAAA;AACI,WAAA;AACA,mBAAA;AACA,eAAA;AAEA,WAAA,KAAA,KAAA,KAAA;AAEA,SAAA;ACJJ;ADMI,CAAA,6BAAA,CAAA;AACI,WAAA;AACA,WAAA,IAAA;AACA,kBAAA;AAEA,iBAAA;AACA,cAAA,IAAA;ACLR;ADQI,CAAA;AACI,WAAA;AACA,WAAA,KAAA,KAAA,KAAA;AACA,OAAA;AAEA,SAAA;AACA,UAAA;AAEA,eAAA;ACRR;ADWI,CAAA;AACI,cAAA,UAAA;ACTR;ADWQ,CAAA;AACI,aAAA,OAAA;ACTZ;ADaI,OAAA,CAAA,SAAA,EAAA;AArCJ,GAAA;AAsCQ,aAAA;ACVN;ADYM,GAAA,kBAAA,KAAA,CAxCR;AAyCY,WAAA;ACVV;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { NavigationDropdownItem } from '@gravity-ui/page-constructor';
3
+ import './MobileDropdown.scss';
4
+ export interface MobileDropdownProps {
5
+ item: NavigationDropdownItem;
6
+ }
7
+ declare const MobileDropdown: React.FC<MobileDropdownProps>;
8
+ export default MobileDropdown;
@@ -0,0 +1,46 @@
1
+ // src/components/navigation/MobileDropdown/MobileDropdown.tsx
2
+ import React, { memo, useState } from "react";
3
+ import { ChevronDown } from "@gravity-ui/icons";
4
+ import {
5
+ Foldable,
6
+ ItemColumnName,
7
+ NavigationLayout,
8
+ NavigationList,
9
+ useActiveNavItem
10
+ } from "@gravity-ui/page-constructor";
11
+ import block from "bem-cn-lite";
12
+ import "./MobileDropdown.css";
13
+ var b = block("dc-mobile-dropdown");
14
+ var MobileDropdown = memo(({ item }) => {
15
+ const { text, isActive, items } = item;
16
+ const [isOpened, setIsOpen] = useState(isActive);
17
+ const { onActiveItemChange } = useActiveNavItem(20, items);
18
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
19
+ "span",
20
+ {
21
+ className: b(),
22
+ onClick: (event) => {
23
+ event.stopPropagation();
24
+ setIsOpen(!isOpened);
25
+ }
26
+ },
27
+ /* @__PURE__ */ React.createElement("span", { className: "pc-content-wrapper__text" }, text),
28
+ /* @__PURE__ */ React.createElement(ChevronDown, { className: b("icon", { up: isOpened }), width: 20, height: 20 })
29
+ ), /* @__PURE__ */ React.createElement(Foldable, { className: b("foldable"), isOpened }, /* @__PURE__ */ React.createElement(
30
+ NavigationList,
31
+ {
32
+ items,
33
+ className: b("list"),
34
+ itemClassName: b("list-item"),
35
+ column: ItemColumnName.Top,
36
+ menuLayout: NavigationLayout.Mobile,
37
+ onActiveItemChange
38
+ }
39
+ )));
40
+ });
41
+ MobileDropdown.displayName = "MobileDropdown";
42
+ var MobileDropdown_default = MobileDropdown;
43
+ export {
44
+ MobileDropdown_default as default
45
+ };
46
+ //# sourceMappingURL=MobileDropdown.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/navigation/MobileDropdown/MobileDropdown.tsx"],
4
+ "sourcesContent": ["import React, {memo, useState} from 'react';\nimport {ChevronDown} from '@gravity-ui/icons';\nimport {\n Foldable,\n ItemColumnName,\n NavigationDropdownItem,\n NavigationLayout,\n NavigationList,\n useActiveNavItem,\n} from '@gravity-ui/page-constructor';\nimport block from 'bem-cn-lite';\n\nimport './MobileDropdown.scss';\n\nconst b = block('dc-mobile-dropdown');\n\nexport interface MobileDropdownProps {\n item: NavigationDropdownItem;\n}\n\nconst MobileDropdown: React.FC<MobileDropdownProps> = memo(({item}) => {\n const {text, isActive, items} = item;\n\n const [isOpened, setIsOpen] = useState(isActive);\n const {onActiveItemChange} = useActiveNavItem(20, items);\n\n return (\n <React.Fragment>\n <span\n // ? type={type}\n className={b()}\n onClick={(event) => {\n event.stopPropagation();\n\n setIsOpen(!isOpened);\n }}\n >\n <span className={'pc-content-wrapper__text'}>{text}</span>\n <ChevronDown className={b('icon', {up: isOpened})} width={20} height={20} />\n </span>\n <Foldable className={b('foldable')} isOpened={isOpened}>\n <NavigationList\n items={items}\n className={b('list')}\n itemClassName={b('list-item')}\n column={ItemColumnName.Top}\n menuLayout={NavigationLayout.Mobile}\n onActiveItemChange={onActiveItemChange}\n />\n </Foldable>\n </React.Fragment>\n );\n});\n\nMobileDropdown.displayName = 'MobileDropdown';\n\nexport default MobileDropdown;\n"],
5
+ "mappings": ";AAAA,OAAO,SAAQ,MAAM,gBAAe;AACpC,SAAQ,mBAAkB;AAC1B;AAAA,EACI;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,OAAO,WAAW;AAElB,OAAO;AAEP,IAAM,IAAI,MAAM,oBAAoB;AAMpC,IAAM,iBAAgD,KAAK,CAAC,EAAC,KAAI,MAAM;AACnE,QAAM,EAAC,MAAM,UAAU,MAAK,IAAI;AAEhC,QAAM,CAAC,UAAU,SAAS,IAAI,SAAS,QAAQ;AAC/C,QAAM,EAAC,mBAAkB,IAAI,iBAAiB,IAAI,KAAK;AAEvD,SACI,oCAAC,MAAM,UAAN,MACG;AAAA,IAAC;AAAA;AAAA,MAEG,WAAW,EAAE;AAAA,MACb,SAAS,CAAC,UAAU;AAChB,cAAM,gBAAgB;AAEtB,kBAAU,CAAC,QAAQ;AAAA,MACvB;AAAA;AAAA,IAEA,oCAAC,UAAK,WAAW,8BAA6B,IAAK;AAAA,IACnD,oCAAC,eAAY,WAAW,EAAE,QAAQ,EAAC,IAAI,SAAQ,CAAC,GAAG,OAAO,IAAI,QAAQ,IAAI;AAAA,EAC9E,GACA,oCAAC,YAAS,WAAW,EAAE,UAAU,GAAG,YAChC;AAAA,IAAC;AAAA;AAAA,MACG;AAAA,MACA,WAAW,EAAE,MAAM;AAAA,MACnB,eAAe,EAAE,WAAW;AAAA,MAC5B,QAAQ,eAAe;AAAA,MACvB,YAAY,iBAAiB;AAAA,MAC7B;AAAA;AAAA,EACJ,CACJ,CACJ;AAER,CAAC;AAED,eAAe,cAAc;AAE7B,IAAO,yBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,51 @@
1
+ /* src/components/navigation/Sidebar/Sidebar.scss */
2
+ .dc-sidebar {
3
+ position: fixed;
4
+ top: 0px;
5
+ top: var(--dc-header-height, 0px);
6
+ z-index: 119;
7
+ height: calc(100% - 0px + 1px);
8
+ height: calc(100% - var(--dc-header-height, 0px) + 1px);
9
+ width: 100vw;
10
+ background-color: #fff;
11
+ background-color: var(--g-color-base-background, #fff);
12
+ }
13
+ @media (min-width: 769px) {
14
+ .dc-sidebar {
15
+ display: none;
16
+ }
17
+ }
18
+ .dc-sidebar__bar {
19
+ position: absolute;
20
+ top: 0;
21
+ display: flex;
22
+ flex-direction: column;
23
+ width: 100%;
24
+ height: 100%;
25
+ }
26
+ .dc-sidebar__transition-enter {
27
+ transform: translateX(100%);
28
+ }
29
+ .dc-sidebar__transition-enter-active {
30
+ transform: translateX(0);
31
+ transition: transform 0.4s;
32
+ }
33
+ [dir=rtl] .dc-sidebar__transition-enter-done {
34
+ right: -11px;
35
+ }
36
+ .dc-sidebar__transition-enter-done .dc-sidebar-navigation__navigation {
37
+ border-right: none;
38
+ }
39
+ .dc-sidebar__transition-exit {
40
+ transform: translateX(0);
41
+ }
42
+ .dc-sidebar__transition-exit-active {
43
+ transition: transform 0.4s;
44
+ transform: translateX(100%);
45
+ }
46
+ @media (max-width: 769px) {
47
+ .dc-sidebar__no-scroll {
48
+ overflow-y: hidden;
49
+ }
50
+ }
51
+ /*# sourceMappingURL=Sidebar.css.map */
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/navigation/Sidebar/home/runner/work/components/components/src/components/navigation/Sidebar/Sidebar.scss", "../../../../../src/components/navigation/Sidebar/%3Cinput%20css%208GGKQZ%3E", "../../../../../src/components/navigation/Sidebar/home/runner/work/components/components/src/styles/mixins.scss"],
4
+ "sourcesContent": ["@import '../../../styles/variables.scss';\n@import '../../../styles/mixins.scss';\n\n.dc-sidebar {\n $transitionTime: 0.4s;\n\n @include mobile-tablet-only();\n\n position: fixed;\n top: var(--dc-header-height, #{$headerHeight});\n z-index: 119;\n\n height: calc(100% - var(--dc-header-height, #{$headerHeight}) + 1px);\n width: 100vw;\n\n background-color: var(--g-color-base-background, #fff);\n\n &__bar {\n position: absolute;\n top: 0;\n\n display: flex;\n flex-direction: column;\n\n width: 100%;\n height: 100%;\n }\n\n &__transition-enter {\n transform: translateX(100%);\n }\n\n &__transition-enter-active {\n transform: translateX(0);\n transition: transform $transitionTime;\n }\n\n // fixes bug with incorrect position of sidebar on mobile with dir='rtl'\n [dir='rtl'] &__transition-enter-done {\n right: -11px;\n }\n\n &__transition-enter-done &-navigation__navigation {\n border-right: none;\n }\n\n &__transition-exit {\n transform: translateX(0);\n }\n\n &__transition-exit-active {\n transition: transform $transitionTime;\n transform: translateX(100%);\n }\n\n @media (max-width: map-get($screenBreakpoints, 'md')) {\n &__no-scroll {\n overflow-y: hidden;\n }\n }\n}\n", ".dc-sidebar {\n position: fixed;\n top: var(--dc-header-height, 0px);\n z-index: 119;\n height: calc(100% - var(--dc-header-height, 0px) + 1px);\n width: 100vw;\n background-color: var(--g-color-base-background, #fff);\n}\n@media (min-width: 769px) {\n .dc-sidebar {\n display: none;\n }\n}\n.dc-sidebar__bar {\n position: absolute;\n top: 0;\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n}\n.dc-sidebar__transition-enter {\n transform: translateX(100%);\n}\n.dc-sidebar__transition-enter-active {\n transform: translateX(0);\n transition: transform 0.4s;\n}\n[dir=rtl] .dc-sidebar__transition-enter-done {\n right: -11px;\n}\n.dc-sidebar__transition-enter-done .dc-sidebar-navigation__navigation {\n border-right: none;\n}\n.dc-sidebar__transition-exit {\n transform: translateX(0);\n}\n.dc-sidebar__transition-exit-active {\n transition: transform 0.4s;\n transform: translateX(100%);\n}\n@media (max-width: 769px) {\n .dc-sidebar__no-scroll {\n overflow-y: hidden;\n }\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL25hdmlnYXRpb24vU2lkZWJhciIsInNvdXJjZXMiOlsiU2lkZWJhci5zY3NzIiwiLi4vLi4vLi4vc3R5bGVzL21peGlucy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBO0VBS0k7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBOztBQ2lIQTtFRDdISjtJQzhIUTs7O0FEaEhKO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUlKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0lBQ0kiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi8uLi9zdHlsZXMvdmFyaWFibGVzLnNjc3MnO1xuQGltcG9ydCAnLi4vLi4vLi4vc3R5bGVzL21peGlucy5zY3NzJztcblxuLmRjLXNpZGViYXIge1xuICAgICR0cmFuc2l0aW9uVGltZTogMC40cztcblxuICAgIEBpbmNsdWRlIG1vYmlsZS10YWJsZXQtb25seSgpO1xuXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogdmFyKC0tZGMtaGVhZGVyLWhlaWdodCwgI3skaGVhZGVySGVpZ2h0fSk7XG4gICAgei1pbmRleDogMTE5O1xuXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAjeyRoZWFkZXJIZWlnaHR9KSArIDFweCk7XG4gICAgd2lkdGg6IDEwMHZ3O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZy1jb2xvci1iYXNlLWJhY2tncm91bmQsICNmZmYpO1xuXG4gICAgJl9fYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICZfX3RyYW5zaXRpb24tZW50ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuXG4gICAgJl9fdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvblRpbWU7XG4gICAgfVxuXG4gICAgLy8gZml4ZXMgYnVnIHdpdGggaW5jb3JyZWN0IHBvc2l0aW9uIG9mIHNpZGViYXIgb24gbW9iaWxlIHdpdGggZGlyPSdydGwnXG4gICAgW2Rpcj0ncnRsJ10gJl9fdHJhbnNpdGlvbi1lbnRlci1kb25lIHtcbiAgICAgICAgcmlnaHQ6IC0xMXB4O1xuICAgIH1cblxuICAgICZfX3RyYW5zaXRpb24tZW50ZXItZG9uZSAmLW5hdmlnYXRpb25fX25hdmlnYXRpb24ge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fdHJhbnNpdGlvbi1leGl0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgICZfX3RyYW5zaXRpb24tZXhpdC1hY3RpdmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb25UaW1lO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSkge1xuICAgICAgICAmX19uby1zY3JvbGwge1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xuXG5AbWl4aW4gdGV4dC1zaXplKCRuYW1lKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtI3skbmFtZX0tZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LSN7JG5hbWV9LWxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHJlc2V0LWxpc3Qtc3R5bGUoKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuQG1peGluIGZpeEFuY2hvclBvc2l0aW9uKCRvZmZzZXQ6IDBweCkge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWRjLWhlYWRlci1oZWlnaHQsICN7JGhlYWRlckhlaWdodH0pKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JG9mZnNldH0gLSB2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAjeyRoZWFkZXJIZWlnaHR9KSk7XG59XG5cbkBtaXhpbiByZXNldC1saW5rLXN0eWxlKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1peGluIGlzbGFuZHMtZm9jdXMoKSB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgIC51dGlsaXR5Zm9jdXMgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAjZmZkYjRkO1xuICAgIH1cbn1cblxuQG1peGluIGZvY3VzYWJsZSgkb2Zmc2V0OiAwLCAkbW9kZTogJ291dGxpbmUnKSB7XG4gICAgQGlmICRtb2RlID09ICdvdXRsaW5lJyB7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1mb2N1cyk7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbW9kZSA9PSAnYm94LXNoYWRvdycge1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1nLWNvbG9yLWxpbmUtZm9jdXMpO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGxpbmsoKSB7XG4gICAgQGluY2x1ZGUgaXNsYW5kcy1mb2N1cygpO1xuICAgIEBpbmNsdWRlIGZvY3VzYWJsZSgwLCAnYm94LXNoYWRvdycpO1xuXG4gICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWctZm9jdXMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rLWhvdmVyKTtcbiAgICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nMSgpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoZGlzcGxheS0zKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMik7XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGluZzIoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmczKCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc0KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc1KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShib2R5LTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtaXhpbiBoZWFkaW5nNigpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0zKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AbWl4aW4gY29udHJpYnV0b3JzLXRleHQoKSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG5AbWl4aW4gdGV4dC1ib2R5LTEoKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtYm9keS0xLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWctdGV4dC1ib2R5LTEtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1nLXRleHQtYm9keS1mb250LXdlaWdodCk7XG59XG5cbkBtaXhpbiBkZXNrdG9wLW9ubHkoKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ3NtJykgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBtb2JpbGUtb25seSgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdzbScpKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIl19 */", "@import './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, #{$headerHeight}));\n margin-top: calc(#{$offset} - var(--dc-header-height, #{$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 @include islands-focus();\n @include focusable(0, 'box-shadow');\n\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n}\n\n@mixin heading1() {\n @include text-size(display-3);\n font-weight: 500;\n\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n @include text-size(display-2);\n }\n}\n\n@mixin heading2() {\n @include text-size(display-1);\n font-weight: 500;\n}\n\n@mixin heading3() {\n @include text-size(header-2);\n font-weight: 500;\n}\n\n@mixin heading4() {\n @include text-size(header-1);\n font-weight: 500;\n}\n\n@mixin heading5() {\n @include text-size(body-3);\n font-weight: 500;\n}\n\n@mixin heading6() {\n @include text-size(body-3);\n font-weight: 400;\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($screenBreakpoints, 'md') - 1) {\n display: none;\n }\n}\n\n@mixin desktop-tablet-only() {\n @media (max-width: map-get($screenBreakpoints, 'sm') - 1) {\n display: none;\n }\n}\n\n@mixin mobile-tablet-only() {\n @media (min-width: map-get($screenBreakpoints, 'md')) {\n display: none;\n }\n}\n\n@mixin mobile-only() {\n @media (min-width: map-get($screenBreakpoints, 'sm')) {\n display: none;\n }\n}\n"],
5
+ "mappings": ";AAGA,CAAA;AAKI,YAAA;AACA,OAAA;AAAA,OAAA,IAAA,kBAAA,EAAA;AACA,WAAA;AAEA,UAAA,KAAA,KAAA,EAAA,IAAA,EAAA;AAAA,UAAA,KAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,EAAA;AACA,SAAA;AAEA,oBAAA;AAAA,oBAAA,IAAA,yBAAA,EAAA;ACRJ;ACyHI,OAAA,CAAA,SAAA,EAAA;AF7HJ,GAAA;AE8HQ,aAAA;ADtHN;AACF;ADKI,CAAA;AACI,YAAA;AACA,OAAA;AAEA,WAAA;AACA,kBAAA;AAEA,SAAA;AACA,UAAA;ACLR;ADQI,CAAA;AACI,aAAA,WAAA;ACNR;ADSI,CAAA;AACI,aAAA,WAAA;AACA,cAAA,UAAA;ACPR;ADWI,CAAA,SAAA,CAAA;AACI,SAAA;ACTR;ADYI,CAJA,kCAIA,CAAA;AACI,gBAAA;ACVR;ADaI,CAAA;AACI,aAAA,WAAA;ACXR;ADcI,CAAA;AACI,cAAA,UAAA;AACA,aAAA,WAAA;ACZR;ADeI,OAAA,CAAA,SAAA,EAAA;AACI,GAAA;AACI,gBAAA;ACbV;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,8 @@
1
+ import React, { PropsWithChildren } from 'react';
2
+ import './Sidebar.scss';
3
+ export interface SidebarProps {
4
+ isOpened: boolean;
5
+ onClose?: () => void;
6
+ }
7
+ declare const Sidebar: React.FC<PropsWithChildren & SidebarProps>;
8
+ export default Sidebar;
@@ -0,0 +1,42 @@
1
+ // src/components/navigation/Sidebar/Sidebar.tsx
2
+ import React, { useEffect, useRef, useState } from "react";
3
+ import block from "bem-cn-lite";
4
+ import ReactDOM from "react-dom";
5
+ import { CSSTransition } from "react-transition-group";
6
+ import "./Sidebar.css";
7
+ var b = block("dc-sidebar");
8
+ var TRANSITION_TIME = 300;
9
+ var Sidebar = ({ isOpened, children }) => {
10
+ const [body, setBody] = useState();
11
+ const ref = useRef(null);
12
+ useEffect(() => {
13
+ setBody(document.body);
14
+ }, []);
15
+ useEffect(() => {
16
+ document.body.classList.toggle(b("no-scroll"), isOpened);
17
+ return () => {
18
+ document.body.classList.remove(b("no-scroll"));
19
+ };
20
+ }, [isOpened]);
21
+ if (!body) {
22
+ return null;
23
+ }
24
+ return ReactDOM.createPortal(
25
+ /* @__PURE__ */ React.createElement(
26
+ CSSTransition,
27
+ {
28
+ in: isOpened,
29
+ classNames: b("transition"),
30
+ unmountOnExit: true,
31
+ timeout: TRANSITION_TIME
32
+ },
33
+ /* @__PURE__ */ React.createElement("div", { className: b() }, /* @__PURE__ */ React.createElement("div", { ref, className: b("bar") }, children))
34
+ ),
35
+ body
36
+ );
37
+ };
38
+ var Sidebar_default = Sidebar;
39
+ export {
40
+ Sidebar_default as default
41
+ };
42
+ //# sourceMappingURL=Sidebar.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/navigation/Sidebar/Sidebar.tsx"],
4
+ "sourcesContent": ["import React, {PropsWithChildren, useEffect, useRef, useState} from 'react';\nimport block from 'bem-cn-lite';\nimport ReactDOM from 'react-dom';\nimport {CSSTransition} from 'react-transition-group';\n\nimport './Sidebar.scss';\n\nconst b = block('dc-sidebar');\nconst TRANSITION_TIME = 300;\n\nexport interface SidebarProps {\n isOpened: boolean;\n onClose?: () => void;\n}\n\nconst Sidebar: React.FC<PropsWithChildren & SidebarProps> = ({isOpened, children}) => {\n const [body, setBody] = useState<HTMLElement>();\n const ref = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n setBody(document.body);\n }, []);\n\n useEffect(() => {\n document.body.classList.toggle(b('no-scroll'), isOpened);\n\n return () => {\n document.body.classList.remove(b('no-scroll'));\n };\n }, [isOpened]);\n\n if (!body) {\n return null;\n }\n\n return ReactDOM.createPortal(\n <CSSTransition\n in={isOpened}\n classNames={b('transition')}\n unmountOnExit\n timeout={TRANSITION_TIME}\n >\n <div className={b()}>\n <div ref={ref} className={b('bar')}>\n {children}\n </div>\n </div>\n </CSSTransition>,\n body,\n );\n};\n\nexport default Sidebar;\n"],
5
+ "mappings": ";AAAA,OAAO,SAA2B,WAAW,QAAQ,gBAAe;AACpE,OAAO,WAAW;AAClB,OAAO,cAAc;AACrB,SAAQ,qBAAoB;AAE5B,OAAO;AAEP,IAAM,IAAI,MAAM,YAAY;AAC5B,IAAM,kBAAkB;AAOxB,IAAM,UAAsD,CAAC,EAAC,UAAU,SAAQ,MAAM;AAClF,QAAM,CAAC,MAAM,OAAO,IAAI,SAAsB;AAC9C,QAAM,MAAM,OAAuB,IAAI;AAEvC,YAAU,MAAM;AACZ,YAAQ,SAAS,IAAI;AAAA,EACzB,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACZ,aAAS,KAAK,UAAU,OAAO,EAAE,WAAW,GAAG,QAAQ;AAEvD,WAAO,MAAM;AACT,eAAS,KAAK,UAAU,OAAO,EAAE,WAAW,CAAC;AAAA,IACjD;AAAA,EACJ,GAAG,CAAC,QAAQ,CAAC;AAEb,MAAI,CAAC,MAAM;AACP,WAAO;AAAA,EACX;AAEA,SAAO,SAAS;AAAA,IACZ;AAAA,MAAC;AAAA;AAAA,QACG,IAAI;AAAA,QACJ,YAAY,EAAE,YAAY;AAAA,QAC1B,eAAa;AAAA,QACb,SAAS;AAAA;AAAA,MAET,oCAAC,SAAI,WAAW,EAAE,KACd,oCAAC,SAAI,KAAU,WAAW,EAAE,KAAK,KAC5B,QACL,CACJ;AAAA,IACJ;AAAA,IACA;AAAA,EACJ;AACJ;AAEA,IAAO,kBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,57 @@
1
+ /* src/components/navigation/SidebarContent/SidebarContent.scss */
2
+ .dc-sidebar-content {
3
+ display: flex;
4
+ flex-direction: column;
5
+ flex: 1 0 0;
6
+ height: 100%;
7
+ box-shadow: 0px 3px 10px var(--g-color-sfx-shadow);
8
+ }
9
+ .dc-sidebar-content__controls-wrapper {
10
+ position: relative;
11
+ bottom: 0;
12
+ left: 0;
13
+ width: 100%;
14
+ }
15
+ .dc-sidebar-content__toc,
16
+ .dc-sidebar-content__main-menu,
17
+ .dc-sidebar-content__main-menu ul {
18
+ margin: 0;
19
+ padding: 0;
20
+ list-style: none;
21
+ }
22
+ .dc-sidebar-content__toc,
23
+ .dc-sidebar-content__main-menu {
24
+ flex: 1 0 0;
25
+ }
26
+ .dc-sidebar-content__toc {
27
+ font-size: var(--g-text-body-2-font-size);
28
+ line-height: var(--g-text-body-2-line-height);
29
+ }
30
+ .dc-sidebar-content__main-menu {
31
+ font-size: var(--g-text-body-3-font-size);
32
+ line-height: var(--g-text-body-3-line-height);
33
+ }
34
+ .dc-sidebar-content__toc {
35
+ height: 0;
36
+ overflow: auto;
37
+ }
38
+ .dc-sidebar-content__toc .dc-toc__content > .dc-toc__list {
39
+ padding: 0;
40
+ }
41
+ .dc-sidebar-content__main-menu {
42
+ padding: 12px 16px 0px;
43
+ font-weight: var(--g-text-accent-font-weight);
44
+ }
45
+ .dc-sidebar-content__main-menu .dc-sidebar-content__main-menu-item {
46
+ padding: 10px 12px 10px 4px;
47
+ margin: 0;
48
+ }
49
+ .dc-sidebar-content__main-menu .dc-sidebar-content__main-menu-item:has(.pc-navigation-dropdown) {
50
+ display: none;
51
+ }
52
+ .dc-sidebar-content__main-menu .dc-sidebar-content__main-menu-item:has(.dc-mobile-dropdown) {
53
+ display: inline;
54
+ display: initial;
55
+ padding: 0;
56
+ }
57
+ /*# sourceMappingURL=SidebarContent.css.map */
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/navigation/SidebarContent/home/runner/work/components/components/src/components/navigation/SidebarContent/SidebarContent.scss", "../../../../../src/components/navigation/SidebarContent/%3Cinput%20css%2071yO66%3E", "../../../../../src/components/navigation/SidebarContent/home/runner/work/components/components/src/styles/mixins.scss"],
4
+ "sourcesContent": ["@import '../../../styles/variables.scss';\n@import '../../../styles/mixins.scss';\n\n.dc-sidebar-content {\n display: flex;\n flex-direction: column;\n flex: 1 0 0;\n\n height: 100%;\n\n box-shadow: 0px 3px 10px var(--g-color-sfx-shadow);\n\n &__controls-wrapper {\n position: relative;\n bottom: 0;\n left: 0;\n\n width: 100%;\n }\n\n &__toc,\n &__main-menu,\n &__main-menu ul {\n @include reset-list-style();\n }\n\n &__toc,\n &__main-menu {\n flex: 1 0 0;\n }\n\n &__toc {\n @include text-size(body-2);\n }\n\n &__main-menu {\n @include text-size(body-3);\n }\n\n &__toc {\n height: 0;\n\n overflow: auto;\n\n & .dc-toc__content > .dc-toc__list {\n padding: 0;\n }\n }\n\n &__main-menu {\n padding: 12px 16px 0px;\n\n font-weight: var(--g-text-accent-font-weight);\n\n & &-item {\n padding: 10px 12px 10px 4px;\n margin: 0;\n\n &:has(.pc-navigation-dropdown) {\n display: none;\n }\n\n &:has(.dc-mobile-dropdown) {\n display: unset;\n padding: 0;\n }\n }\n }\n}\n", ".dc-sidebar-content {\n display: flex;\n flex-direction: column;\n flex: 1 0 0;\n height: 100%;\n box-shadow: 0px 3px 10px var(--g-color-sfx-shadow);\n}\n.dc-sidebar-content__controls-wrapper {\n position: relative;\n bottom: 0;\n left: 0;\n width: 100%;\n}\n.dc-sidebar-content__toc, .dc-sidebar-content__main-menu, .dc-sidebar-content__main-menu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.dc-sidebar-content__toc, .dc-sidebar-content__main-menu {\n flex: 1 0 0;\n}\n.dc-sidebar-content__toc {\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n}\n.dc-sidebar-content__main-menu {\n font-size: var(--g-text-body-3-font-size);\n line-height: var(--g-text-body-3-line-height);\n}\n.dc-sidebar-content__toc {\n height: 0;\n overflow: auto;\n}\n.dc-sidebar-content__toc .dc-toc__content > .dc-toc__list {\n padding: 0;\n}\n.dc-sidebar-content__main-menu {\n padding: 12px 16px 0px;\n font-weight: var(--g-text-accent-font-weight);\n}\n.dc-sidebar-content__main-menu .dc-sidebar-content__main-menu-item {\n padding: 10px 12px 10px 4px;\n margin: 0;\n}\n.dc-sidebar-content__main-menu .dc-sidebar-content__main-menu-item:has(.pc-navigation-dropdown) {\n display: none;\n}\n.dc-sidebar-content__main-menu .dc-sidebar-content__main-menu-item:has(.dc-mobile-dropdown) {\n display: unset;\n padding: 0;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL25hdmlnYXRpb24vU2lkZWJhckNvbnRlbnQiLCJzb3VyY2VzIjpbIlNpZGViYXJDb250ZW50LnNjc3MiLCIuLi8uLi8uLi9zdHlsZXMvbWl4aW5zLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUVBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBRUE7O0FBR0o7RUNaQTtFQUNBO0VBQ0E7O0FEZ0JBO0VBRUk7O0FBR0o7RUM1QkE7RUFDQTs7QUQrQkE7RUNoQ0E7RUFDQTs7QURtQ0E7RUFDSTtFQUVBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUVBOztBQUVBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQSIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uLy4uL3N0eWxlcy92YXJpYWJsZXMuc2Nzcyc7XG5AaW1wb3J0ICcuLi8uLi8uLi9zdHlsZXMvbWl4aW5zLnNjc3MnO1xuXG4uZGMtc2lkZWJhci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleDogMSAwIDA7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBib3gtc2hhZG93OiAwcHggM3B4IDEwcHggdmFyKC0tZy1jb2xvci1zZngtc2hhZG93KTtcblxuICAgICZfX2NvbnRyb2xzLXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX190b2MsXG4gICAgJl9fbWFpbi1tZW51LFxuICAgICZfX21haW4tbWVudSB1bCB7XG4gICAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Qtc3R5bGUoKTtcbiAgICB9XG5cbiAgICAmX190b2MsXG4gICAgJl9fbWFpbi1tZW51IHtcbiAgICAgICAgZmxleDogMSAwIDA7XG4gICAgfVxuXG4gICAgJl9fdG9jIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGJvZHktMik7XG4gICAgfVxuXG4gICAgJl9fbWFpbi1tZW51IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGJvZHktMyk7XG4gICAgfVxuXG4gICAgJl9fdG9jIHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgICAgICYgLmRjLXRvY19fY29udGVudCA+IC5kYy10b2NfX2xpc3Qge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21haW4tbWVudSB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweCAwcHg7XG5cbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWctdGV4dC1hY2NlbnQtZm9udC13ZWlnaHQpO1xuXG4gICAgICAgICYgJi1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTJweCAxMHB4IDRweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgJjpoYXMoLnBjLW5hdmlnYXRpb24tZHJvcGRvd24pIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhhcyguZGMtbW9iaWxlLWRyb3Bkb3duKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJy4vdmFyaWFibGVzJztcblxuQG1peGluIHRleHQtc2l6ZSgkbmFtZSkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZy10ZXh0LSN7JG5hbWV9LWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWctdGV4dC0jeyRuYW1lfS1saW5lLWhlaWdodCk7XG59XG5cbkBtaXhpbiByZXNldC1saXN0LXN0eWxlKCkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbkBtaXhpbiBmaXhBbmNob3JQb3NpdGlvbigkb2Zmc2V0OiAwcHgpIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAjeyRoZWFkZXJIZWlnaHR9KSk7XG4gICAgbWFyZ2luLXRvcDogY2FsYygjeyRvZmZzZXR9IC0gdmFyKC0tZGMtaGVhZGVyLWhlaWdodCwgI3skaGVhZGVySGVpZ2h0fSkpO1xufVxuXG5AbWl4aW4gcmVzZXQtbGluay1zdHlsZSgpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtaXhpbiBpc2xhbmRzLWZvY3VzKCkge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAudXRpbGl0eWZvY3VzICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgI2ZmZGI0ZDtcbiAgICB9XG59XG5cbkBtaXhpbiBmb2N1c2FibGUoJG9mZnNldDogMCwgJG1vZGU6ICdvdXRsaW5lJykge1xuICAgIEBpZiAkbW9kZSA9PSAnb3V0bGluZScge1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nLWNvbG9yLWxpbmUtZm9jdXMpO1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvZmZzZXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJG1vZGUgPT0gJ2JveC1zaGFkb3cnIHtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tZy1jb2xvci1saW5lLWZvY3VzKTtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBsaW5rKCkge1xuICAgIEBpbmNsdWRlIGlzbGFuZHMtZm9jdXMoKTtcbiAgICBAaW5jbHVkZSBmb2N1c2FibGUoMCwgJ2JveC1zaGFkb3cnKTtcblxuICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtbGluayk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nLWZvY3VzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtbGluay1ob3Zlcik7XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGluZzEoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykgLSAxKSB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQtc2l6ZShkaXNwbGF5LTIpO1xuICAgIH1cbn1cblxuQG1peGluIGhlYWRpbmcyKCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShkaXNwbGF5LTEpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtaXhpbiBoZWFkaW5nMygpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoaGVhZGVyLTIpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtaXhpbiBoZWFkaW5nNCgpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoaGVhZGVyLTEpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtaXhpbiBoZWFkaW5nNSgpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0zKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG5AbWl4aW4gaGVhZGluZzYoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGJvZHktMyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuQG1peGluIGNvbnRyaWJ1dG9ycy10ZXh0KCkge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuQG1peGluIHRleHQtYm9keS0xKCkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZy10ZXh0LWJvZHktMS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1nLXRleHQtYm9keS0xLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZy10ZXh0LWJvZHktZm9udC13ZWlnaHQpO1xufVxuXG5AbWl4aW4gZGVza3RvcC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gZGVza3RvcC10YWJsZXQtb25seSgpIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdzbScpIC0gMSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1peGluIG1vYmlsZS10YWJsZXQtb25seSgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdtZCcpKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLW9ubHkoKSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnc20nKSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbiJdfQ== */", "@import './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, #{$headerHeight}));\n margin-top: calc(#{$offset} - var(--dc-header-height, #{$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 @include islands-focus();\n @include focusable(0, 'box-shadow');\n\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n}\n\n@mixin heading1() {\n @include text-size(display-3);\n font-weight: 500;\n\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n @include text-size(display-2);\n }\n}\n\n@mixin heading2() {\n @include text-size(display-1);\n font-weight: 500;\n}\n\n@mixin heading3() {\n @include text-size(header-2);\n font-weight: 500;\n}\n\n@mixin heading4() {\n @include text-size(header-1);\n font-weight: 500;\n}\n\n@mixin heading5() {\n @include text-size(body-3);\n font-weight: 500;\n}\n\n@mixin heading6() {\n @include text-size(body-3);\n font-weight: 400;\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($screenBreakpoints, 'md') - 1) {\n display: none;\n }\n}\n\n@mixin desktop-tablet-only() {\n @media (max-width: map-get($screenBreakpoints, 'sm') - 1) {\n display: none;\n }\n}\n\n@mixin mobile-tablet-only() {\n @media (min-width: map-get($screenBreakpoints, 'md')) {\n display: none;\n }\n}\n\n@mixin mobile-only() {\n @media (min-width: map-get($screenBreakpoints, 'sm')) {\n display: none;\n }\n}\n"],
5
+ "mappings": ";AAGA,CAAA;AACI,WAAA;AACA,kBAAA;AACA,QAAA,EAAA,EAAA;AAEA,UAAA;AAEA,cAAA,IAAA,IAAA,KAAA,IAAA;ACJJ;ADMI,CAAA;AACI,YAAA;AACA,UAAA;AACA,QAAA;AAEA,SAAA;ACLR;ADQI,CAAA;AAAA,CAAA;AAAA,CAAA,8BAAA;AEZA,UAAA;AACA,WAAA;AACA,cAAA;ADOJ;ADSI,CANA;AAMA,CANA;AAQI,QAAA,EAAA,EAAA;ACRR;ADWI,CAXA;AEjBA,aAAA,IAAA;AACA,eAAA,IAAA;ADoBJ;ADWI,CAfA;AEjBA,aAAA,IAAA;AACA,eAAA,IAAA;ADwBJ;ADWI,CAnBA;AAoBI,UAAA;AAEA,YAAA;ACVR;ADYQ,CAxBJ,wBAwBI,CAAA,gBAAA,EAAA,CAAA;AACI,WAAA;ACVZ;ADcI,CA7BA;AA8BI,WAAA,KAAA,KAAA;AAEA,eAAA,IAAA;ACbR;ADeQ,CAlCJ,8BAkCI,CAAA;AACI,WAAA,KAAA,KAAA,KAAA;AACA,UAAA;ACbZ;ADeY,CAtCR,8BAsCQ,CAJJ,kCAII,KAAA,CAAA;AACI,WAAA;ACbhB;ADgBY,CA1CR,8BA0CQ,CARJ,kCAQI,KAAA,CAAA;AACI,WAAA;AAAA,WAAA;AACA,WAAA;ACdhB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,27 @@
1
+ import React, { PropsWithChildren } from 'react';
2
+ import { NavigationItemModel } from '@gravity-ui/page-constructor';
3
+ import { ClassNameProps, Router, TocData } from '../../../models/index';
4
+ import { MobileControlsProps } from '../../MobileControls/MobileControls';
5
+ import './SidebarContent.scss';
6
+ export interface SidebarContentProps extends ClassNameProps {
7
+ mainMenuOpenessData?: MainMenuOpenessProps;
8
+ pcNavigationData?: PCNavigationProps;
9
+ navigationTocData?: NavigationTocProps;
10
+ mobileControlsData: MobileControlsProps;
11
+ }
12
+ export interface MainMenuOpenessProps {
13
+ isMainMenuOpened: boolean;
14
+ openMainMenu: () => void;
15
+ }
16
+ export interface PCNavigationProps {
17
+ leftItemsWithIconSize: NavigationItemModel[];
18
+ rightItemsWithIconSize?: NavigationItemModel[];
19
+ onActiveItemChange: (id?: string) => void;
20
+ }
21
+ export interface NavigationTocProps {
22
+ toc?: TocData;
23
+ router: Router;
24
+ headerHeight: number;
25
+ }
26
+ export declare const SidebarContent: React.FC<SidebarContentProps & PropsWithChildren>;
27
+ export default SidebarContent;
@@ -0,0 +1,83 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b2) => {
9
+ for (var prop in b2 || (b2 = {}))
10
+ if (__hasOwnProp.call(b2, prop))
11
+ __defNormalProp(a, prop, b2[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b2)) {
14
+ if (__propIsEnum.call(b2, prop))
15
+ __defNormalProp(a, prop, b2[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b2) => __defProps(a, __getOwnPropDescs(b2));
20
+
21
+ // src/components/navigation/SidebarContent/SidebarContent.tsx
22
+ import React from "react";
23
+ import {
24
+ ItemColumnName,
25
+ NavigationLayout,
26
+ NavigationList
27
+ } from "@gravity-ui/page-constructor";
28
+ import block from "bem-cn-lite";
29
+ import MobileControls from "../../MobileControls/MobileControls";
30
+ import Toc from "../../Toc/Toc";
31
+ import ToMainMenu from "../ToMainMenu/ToMainMenu";
32
+ import "./SidebarContent.css";
33
+ var b = block("dc-sidebar-content");
34
+ var SidebarContent = ({
35
+ mainMenuOpenessData,
36
+ pcNavigationData,
37
+ navigationTocData,
38
+ mobileControlsData,
39
+ children
40
+ }) => {
41
+ const { controlSize, lang, userSettings } = mobileControlsData;
42
+ const toc = navigationTocData && navigationTocData.toc && mainMenuOpenessData && !mainMenuOpenessData.isMainMenuOpened && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: b("to-main-menu") }, /* @__PURE__ */ React.createElement(
43
+ ToMainMenu,
44
+ {
45
+ mainMenuIsOpen: mainMenuOpenessData.isMainMenuOpened,
46
+ openMainMenu: mainMenuOpenessData.openMainMenu
47
+ }
48
+ )), /* @__PURE__ */ React.createElement("div", { className: b("toc") }, /* @__PURE__ */ React.createElement(
49
+ Toc,
50
+ __spreadProps(__spreadValues({}, navigationTocData.toc), {
51
+ router: navigationTocData.router,
52
+ headerHeight: navigationTocData.headerHeight,
53
+ hideTocHeader: true
54
+ })
55
+ )));
56
+ const mainMenu = pcNavigationData && (mainMenuOpenessData && mainMenuOpenessData.isMainMenuOpened || !navigationTocData) && /* @__PURE__ */ React.createElement("div", { className: b("main-menu") }, pcNavigationData.leftItemsWithIconSize && /* @__PURE__ */ React.createElement(
57
+ NavigationList,
58
+ {
59
+ items: pcNavigationData.leftItemsWithIconSize,
60
+ itemClassName: b("main-menu-item"),
61
+ column: ItemColumnName.Top,
62
+ onActiveItemChange: pcNavigationData.onActiveItemChange,
63
+ menuLayout: NavigationLayout.Mobile
64
+ }
65
+ ), pcNavigationData.rightItemsWithIconSize && /* @__PURE__ */ React.createElement(
66
+ NavigationList,
67
+ {
68
+ items: pcNavigationData.rightItemsWithIconSize,
69
+ itemClassName: b("main-menu-item"),
70
+ column: ItemColumnName.Bottom,
71
+ onActiveItemChange: pcNavigationData.onActiveItemChange,
72
+ menuLayout: NavigationLayout.Mobile
73
+ }
74
+ ));
75
+ const mobileControls = /* @__PURE__ */ React.createElement("div", { className: b("controls-wrapper") }, /* @__PURE__ */ React.createElement(MobileControls, { controlSize, lang, userSettings }));
76
+ return /* @__PURE__ */ React.createElement("div", { className: b() }, toc, children, mainMenu, mobileControls);
77
+ };
78
+ var SidebarContent_default = SidebarContent;
79
+ export {
80
+ SidebarContent,
81
+ SidebarContent_default as default
82
+ };
83
+ //# sourceMappingURL=SidebarContent.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/navigation/SidebarContent/SidebarContent.tsx"],
4
+ "sourcesContent": ["import React, {PropsWithChildren} from 'react';\nimport {\n ItemColumnName,\n NavigationItemModel,\n NavigationLayout,\n NavigationList,\n} from '@gravity-ui/page-constructor';\nimport block from 'bem-cn-lite';\n\nimport {ClassNameProps, Router, TocData} from '../../../models/index';\nimport MobileControls, {MobileControlsProps} from '../../MobileControls/MobileControls';\nimport Toc from '../../Toc/Toc';\nimport ToMainMenu from '../ToMainMenu/ToMainMenu';\n\nimport './SidebarContent.scss';\n\nexport interface SidebarContentProps extends ClassNameProps {\n mainMenuOpenessData?: MainMenuOpenessProps;\n pcNavigationData?: PCNavigationProps;\n navigationTocData?: NavigationTocProps;\n mobileControlsData: MobileControlsProps;\n}\n\nexport interface MainMenuOpenessProps {\n isMainMenuOpened: boolean;\n openMainMenu: () => void;\n}\n\nexport interface PCNavigationProps {\n leftItemsWithIconSize: NavigationItemModel[];\n rightItemsWithIconSize?: NavigationItemModel[];\n onActiveItemChange: (id?: string) => void;\n}\n\nexport interface NavigationTocProps {\n toc?: TocData;\n router: Router;\n headerHeight: number;\n}\n\nconst b = block('dc-sidebar-content');\n\nexport const SidebarContent: React.FC<SidebarContentProps & PropsWithChildren> = ({\n mainMenuOpenessData,\n pcNavigationData,\n navigationTocData,\n mobileControlsData,\n children,\n}) => {\n const {controlSize, lang, userSettings} = mobileControlsData;\n\n const toc = navigationTocData &&\n navigationTocData.toc &&\n mainMenuOpenessData &&\n !mainMenuOpenessData.isMainMenuOpened && (\n <React.Fragment>\n <div className={b('to-main-menu')}>\n <ToMainMenu\n mainMenuIsOpen={mainMenuOpenessData.isMainMenuOpened}\n openMainMenu={mainMenuOpenessData.openMainMenu}\n />\n </div>\n <div className={b('toc')}>\n <Toc\n {...navigationTocData.toc}\n router={navigationTocData.router}\n headerHeight={navigationTocData.headerHeight}\n hideTocHeader\n />\n </div>\n </React.Fragment>\n );\n\n const mainMenu = pcNavigationData &&\n ((mainMenuOpenessData && mainMenuOpenessData.isMainMenuOpened) || !navigationTocData) && (\n <div className={b('main-menu')}>\n {pcNavigationData.leftItemsWithIconSize && (\n <NavigationList\n items={pcNavigationData.leftItemsWithIconSize}\n itemClassName={b('main-menu-item')}\n column={ItemColumnName.Top}\n onActiveItemChange={pcNavigationData.onActiveItemChange}\n menuLayout={NavigationLayout.Mobile}\n />\n )}\n {pcNavigationData.rightItemsWithIconSize && (\n <NavigationList\n items={pcNavigationData.rightItemsWithIconSize}\n itemClassName={b('main-menu-item')}\n column={ItemColumnName.Bottom}\n onActiveItemChange={pcNavigationData.onActiveItemChange}\n menuLayout={NavigationLayout.Mobile}\n />\n )}\n </div>\n );\n\n const mobileControls = (\n <div className={b('controls-wrapper')}>\n <MobileControls controlSize={controlSize} lang={lang} userSettings={userSettings} />\n </div>\n );\n\n return (\n <div className={b()}>\n {toc}\n {children}\n {mainMenu}\n {mobileControls}\n </div>\n );\n};\n\nexport default SidebarContent;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAgC;AACvC;AAAA,EACI;AAAA,EAEA;AAAA,EACA;AAAA,OACG;AACP,OAAO,WAAW;AAGlB,OAAO,oBAA2C;AAClD,OAAO,SAAS;AAChB,OAAO,gBAAgB;AAEvB,OAAO;AA0BP,IAAM,IAAI,MAAM,oBAAoB;AAE7B,IAAM,iBAAoE,CAAC;AAAA,EAC9E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAM;AACF,QAAM,EAAC,aAAa,MAAM,aAAY,IAAI;AAE1C,QAAM,MAAM,qBACR,kBAAkB,OAClB,uBACA,CAAC,oBAAoB,oBACjB,oCAAC,MAAM,UAAN,MACG,oCAAC,SAAI,WAAW,EAAE,cAAc,KAC5B;AAAA,IAAC;AAAA;AAAA,MACG,gBAAgB,oBAAoB;AAAA,MACpC,cAAc,oBAAoB;AAAA;AAAA,EACtC,CACJ,GACA,oCAAC,SAAI,WAAW,EAAE,KAAK,KACnB;AAAA,IAAC;AAAA,qCACO,kBAAkB,MADzB;AAAA,MAEG,QAAQ,kBAAkB;AAAA,MAC1B,cAAc,kBAAkB;AAAA,MAChC,eAAa;AAAA;AAAA,EACjB,CACJ,CACJ;AAGR,QAAM,WAAW,qBACX,uBAAuB,oBAAoB,oBAAqB,CAAC,sBAC/D,oCAAC,SAAI,WAAW,EAAE,WAAW,KACxB,iBAAiB,yBACd;AAAA,IAAC;AAAA;AAAA,MACG,OAAO,iBAAiB;AAAA,MACxB,eAAe,EAAE,gBAAgB;AAAA,MACjC,QAAQ,eAAe;AAAA,MACvB,oBAAoB,iBAAiB;AAAA,MACrC,YAAY,iBAAiB;AAAA;AAAA,EACjC,GAEH,iBAAiB,0BACd;AAAA,IAAC;AAAA;AAAA,MACG,OAAO,iBAAiB;AAAA,MACxB,eAAe,EAAE,gBAAgB;AAAA,MACjC,QAAQ,eAAe;AAAA,MACvB,oBAAoB,iBAAiB;AAAA,MACrC,YAAY,iBAAiB;AAAA;AAAA,EACjC,CAER;AAGR,QAAM,iBACF,oCAAC,SAAI,WAAW,EAAE,kBAAkB,KAChC,oCAAC,kBAAe,aAA0B,MAAY,cAA4B,CACtF;AAGJ,SACI,oCAAC,SAAI,WAAW,EAAE,KACb,KACA,UACA,UACA,cACL;AAER;AAEA,IAAO,yBAAQ;",
6
+ "names": []
7
+ }