@gravity-ui/navigation 5.0.0-beta.3 → 6.0.0-beta.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 (374) hide show
  1. package/build/cjs/assets/icons/control-menu-button.svg.js +41 -0
  2. package/build/cjs/assets/icons/control-menu-button.svg.js.map +1 -0
  3. package/build/cjs/components/AsideHeader/AsideHeader.css +1 -1
  4. package/build/cjs/components/AsideHeader/AsideHeader.js +1 -1
  5. package/build/cjs/components/AsideHeader/AsideHeader.js.map +1 -1
  6. package/build/cjs/components/AsideHeader/AsideHeader.module.scss.js +1 -1
  7. package/build/cjs/components/AsideHeader/AsideHeaderContext.d.ts +1 -12
  8. package/build/cjs/components/AsideHeader/AsideHeaderContext.js +5 -4
  9. package/build/cjs/components/AsideHeader/AsideHeaderContext.js.map +1 -1
  10. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.css +1 -0
  11. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.d.ts +12 -0
  12. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +44 -0
  13. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -0
  14. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.module.scss.js +8 -0
  15. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.module.scss.js.map +1 -0
  16. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/index.d.ts +1 -0
  17. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.css +1 -1
  18. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js +48 -98
  19. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js.map +1 -1
  20. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.module.scss.js +1 -1
  21. package/build/cjs/components/AsideHeader/components/AllPagesPanel/constants.d.ts +0 -1
  22. package/build/cjs/components/AsideHeader/components/AllPagesPanel/constants.js +0 -2
  23. package/build/cjs/components/AsideHeader/components/AllPagesPanel/constants.js.map +1 -1
  24. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js +1 -0
  25. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js.map +1 -1
  26. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/index.d.ts +4 -4
  27. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js +1 -0
  28. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js.map +1 -1
  29. package/build/cjs/components/AsideHeader/components/AllPagesPanel/index.d.ts +1 -0
  30. package/build/cjs/components/AsideHeader/components/AllPagesPanel/useGroupedMenuItems.d.ts +4 -3
  31. package/build/cjs/components/AsideHeader/components/AllPagesPanel/useGroupedMenuItems.js +15 -62
  32. package/build/cjs/components/AsideHeader/components/AllPagesPanel/useGroupedMenuItems.js.map +1 -1
  33. package/build/cjs/components/AsideHeader/components/AllPagesPanel/useVisibleMenuItems.d.ts +2 -0
  34. package/build/cjs/components/AsideHeader/components/AllPagesPanel/useVisibleMenuItems.js +29 -0
  35. package/build/cjs/components/AsideHeader/components/AllPagesPanel/useVisibleMenuItems.js.map +1 -0
  36. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.css +1 -1
  37. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js +6 -11
  38. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -1
  39. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.module.scss.js +1 -1
  40. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.css +1 -1
  41. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.d.ts +4 -26
  42. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.js +39 -177
  43. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.js.map +1 -1
  44. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.module.scss.js +1 -1
  45. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.css +1 -1
  46. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.d.ts +1 -12
  47. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.js +52 -39
  48. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.js.map +1 -1
  49. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.module.scss.js +1 -1
  50. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.types.d.ts +20 -0
  51. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.d.ts +18 -0
  52. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js +32 -0
  53. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js.map +1 -0
  54. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.d.ts +3 -0
  55. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js +19 -0
  56. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js.map +1 -0
  57. package/build/cjs/components/AsideHeader/components/CompositeBar/grouping.d.ts +11 -0
  58. package/build/cjs/components/AsideHeader/components/CompositeBar/grouping.js +68 -0
  59. package/build/cjs/components/AsideHeader/components/CompositeBar/grouping.js.map +1 -0
  60. package/build/cjs/components/AsideHeader/components/CompositeBar/utils.d.ts +10 -2
  61. package/build/cjs/components/AsideHeader/components/CompositeBar/utils.js +90 -9
  62. package/build/cjs/components/AsideHeader/components/CompositeBar/utils.js.map +1 -1
  63. package/build/cjs/components/AsideHeader/components/FirstPanel.js +20 -25
  64. package/build/cjs/components/AsideHeader/components/FirstPanel.js.map +1 -1
  65. package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.css +1 -1
  66. package/build/cjs/components/AsideHeader/components/Header.js +3 -9
  67. package/build/cjs/components/AsideHeader/components/Header.js.map +1 -1
  68. package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.css +2 -0
  69. package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js +1 -0
  70. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.css +2 -0
  71. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.d.ts +1 -2
  72. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js +7 -16
  73. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -1
  74. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.css +2 -0
  75. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js +3 -6
  76. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -1
  77. package/build/cjs/components/AsideHeader/components/Panels.d.ts +1 -1
  78. package/build/cjs/components/AsideHeader/components/Panels.js +6 -17
  79. package/build/cjs/components/AsideHeader/components/Panels.js.map +1 -1
  80. package/build/cjs/components/AsideHeader/index.d.ts +1 -0
  81. package/build/cjs/components/AsideHeader/types.d.ts +3 -18
  82. package/build/cjs/components/AsideHeader/types.js.map +1 -1
  83. package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.d.ts +0 -4
  84. package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js +8 -21
  85. package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -1
  86. package/build/cjs/components/HotkeysPanel/HotkeysPanel.d.ts +7 -3
  87. package/build/cjs/components/HotkeysPanel/HotkeysPanel.js +15 -7
  88. package/build/cjs/components/HotkeysPanel/HotkeysPanel.js.map +1 -1
  89. package/build/cjs/components/Logo/Logo.css +1 -1
  90. package/build/cjs/components/Logo/Logo.js +2 -12
  91. package/build/cjs/components/Logo/Logo.js.map +1 -1
  92. package/build/cjs/components/Logo/Logo.module.scss.js +1 -1
  93. package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.css +1 -1
  94. package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.module.scss.js +1 -1
  95. package/build/cjs/components/MobileHeader/MobileHeader.d.ts +3 -7
  96. package/build/cjs/components/MobileHeader/MobileHeader.js +18 -14
  97. package/build/cjs/components/MobileHeader/MobileHeader.js.map +1 -1
  98. package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.d.ts +2 -2
  99. package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.js +2 -2
  100. package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.js.map +1 -1
  101. package/build/cjs/components/MobileHeader/types.d.ts +1 -1
  102. package/build/cjs/components/Settings/Settings.css +1 -1
  103. package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.css +1 -1
  104. package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.js +5 -1
  105. package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.js.map +1 -1
  106. package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.module.scss.js +1 -1
  107. package/build/cjs/components/constants.d.ts +3 -4
  108. package/build/cjs/components/constants.js +4 -6
  109. package/build/cjs/components/constants.js.map +1 -1
  110. package/build/cjs/components/types.d.ts +15 -6
  111. package/build/esm/assets/icons/control-menu-button.svg.js +18 -0
  112. package/build/esm/assets/icons/control-menu-button.svg.js.map +1 -0
  113. package/build/esm/components/AsideHeader/AsideHeader.css +1 -1
  114. package/build/esm/components/AsideHeader/AsideHeader.js +1 -1
  115. package/build/esm/components/AsideHeader/AsideHeader.js.map +1 -1
  116. package/build/esm/components/AsideHeader/AsideHeader.module.scss.js +1 -1
  117. package/build/esm/components/AsideHeader/AsideHeaderContext.d.ts +1 -12
  118. package/build/esm/components/AsideHeader/AsideHeaderContext.js +5 -5
  119. package/build/esm/components/AsideHeader/AsideHeaderContext.js.map +1 -1
  120. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.css +1 -0
  121. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.d.ts +12 -0
  122. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +42 -0
  123. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -0
  124. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.module.scss.js +4 -0
  125. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.module.scss.js.map +1 -0
  126. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/index.d.ts +1 -0
  127. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.css +1 -1
  128. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js +49 -99
  129. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js.map +1 -1
  130. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.module.scss.js +1 -1
  131. package/build/esm/components/AsideHeader/components/AllPagesPanel/constants.d.ts +0 -1
  132. package/build/esm/components/AsideHeader/components/AllPagesPanel/constants.js +1 -2
  133. package/build/esm/components/AsideHeader/components/AllPagesPanel/constants.js.map +1 -1
  134. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js +1 -0
  135. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js.map +1 -1
  136. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/index.d.ts +4 -4
  137. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js +1 -0
  138. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js.map +1 -1
  139. package/build/esm/components/AsideHeader/components/AllPagesPanel/index.d.ts +1 -0
  140. package/build/esm/components/AsideHeader/components/AllPagesPanel/useGroupedMenuItems.d.ts +4 -3
  141. package/build/esm/components/AsideHeader/components/AllPagesPanel/useGroupedMenuItems.js +15 -62
  142. package/build/esm/components/AsideHeader/components/AllPagesPanel/useGroupedMenuItems.js.map +1 -1
  143. package/build/esm/components/AsideHeader/components/AllPagesPanel/useVisibleMenuItems.d.ts +2 -0
  144. package/build/esm/components/AsideHeader/components/AllPagesPanel/useVisibleMenuItems.js +27 -0
  145. package/build/esm/components/AsideHeader/components/AllPagesPanel/useVisibleMenuItems.js.map +1 -0
  146. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.css +1 -1
  147. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js +8 -13
  148. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -1
  149. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.module.scss.js +1 -1
  150. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.css +1 -1
  151. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.d.ts +4 -26
  152. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.js +41 -178
  153. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.js.map +1 -1
  154. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.module.scss.js +1 -1
  155. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.css +1 -1
  156. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.d.ts +1 -12
  157. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.js +55 -42
  158. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.js.map +1 -1
  159. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.module.scss.js +1 -1
  160. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.types.d.ts +20 -0
  161. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.d.ts +18 -0
  162. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js +30 -0
  163. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js.map +1 -0
  164. package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.d.ts +3 -0
  165. package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js +17 -0
  166. package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js.map +1 -0
  167. package/build/esm/components/AsideHeader/components/CompositeBar/grouping.d.ts +11 -0
  168. package/build/esm/components/AsideHeader/components/CompositeBar/grouping.js +65 -0
  169. package/build/esm/components/AsideHeader/components/CompositeBar/grouping.js.map +1 -0
  170. package/build/esm/components/AsideHeader/components/CompositeBar/utils.d.ts +10 -2
  171. package/build/esm/components/AsideHeader/components/CompositeBar/utils.js +87 -11
  172. package/build/esm/components/AsideHeader/components/CompositeBar/utils.js.map +1 -1
  173. package/build/esm/components/AsideHeader/components/FirstPanel.js +20 -25
  174. package/build/esm/components/AsideHeader/components/FirstPanel.js.map +1 -1
  175. package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.css +1 -1
  176. package/build/esm/components/AsideHeader/components/Header.js +3 -9
  177. package/build/esm/components/AsideHeader/components/Header.js.map +1 -1
  178. package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.css +2 -0
  179. package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.js +1 -0
  180. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.css +2 -0
  181. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.d.ts +1 -2
  182. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js +8 -17
  183. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -1
  184. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.css +2 -0
  185. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js +3 -6
  186. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -1
  187. package/build/esm/components/AsideHeader/components/Panels.d.ts +1 -1
  188. package/build/esm/components/AsideHeader/components/Panels.js +7 -18
  189. package/build/esm/components/AsideHeader/components/Panels.js.map +1 -1
  190. package/build/esm/components/AsideHeader/index.d.ts +1 -0
  191. package/build/esm/components/AsideHeader/types.d.ts +3 -18
  192. package/build/esm/components/AsideHeader/types.js.map +1 -1
  193. package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.d.ts +0 -4
  194. package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js +8 -21
  195. package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -1
  196. package/build/esm/components/HotkeysPanel/HotkeysPanel.d.ts +7 -3
  197. package/build/esm/components/HotkeysPanel/HotkeysPanel.js +15 -7
  198. package/build/esm/components/HotkeysPanel/HotkeysPanel.js.map +1 -1
  199. package/build/esm/components/Logo/Logo.css +1 -1
  200. package/build/esm/components/Logo/Logo.js +2 -12
  201. package/build/esm/components/Logo/Logo.js.map +1 -1
  202. package/build/esm/components/Logo/Logo.module.scss.js +1 -1
  203. package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.css +1 -1
  204. package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.module.scss.js +1 -1
  205. package/build/esm/components/MobileHeader/MobileHeader.d.ts +3 -7
  206. package/build/esm/components/MobileHeader/MobileHeader.js +18 -14
  207. package/build/esm/components/MobileHeader/MobileHeader.js.map +1 -1
  208. package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.d.ts +2 -2
  209. package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.js +2 -2
  210. package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.js.map +1 -1
  211. package/build/esm/components/MobileHeader/types.d.ts +1 -1
  212. package/build/esm/components/Settings/Settings.css +1 -1
  213. package/build/esm/components/Settings/SettingsMenu/SettingsMenu.css +1 -1
  214. package/build/esm/components/Settings/SettingsMenu/SettingsMenu.js +5 -1
  215. package/build/esm/components/Settings/SettingsMenu/SettingsMenu.js.map +1 -1
  216. package/build/esm/components/Settings/SettingsMenu/SettingsMenu.module.scss.js +1 -1
  217. package/build/esm/components/constants.d.ts +3 -4
  218. package/build/esm/components/constants.js +4 -5
  219. package/build/esm/components/constants.js.map +1 -1
  220. package/build/esm/components/types.d.ts +15 -6
  221. package/codemods/transforms/unifyInterfaces.ts +0 -1
  222. package/package.json +5 -4
  223. package/build/cjs/components/ActionBar/__stories__/ActionBar.stories.d.ts +0 -20
  224. package/build/cjs/components/ActionBar/__stories__/ActionBarShowcase.d.ts +0 -2
  225. package/build/cjs/components/ActionBar/__stories__/ActionBarSingleSection.d.ts +0 -2
  226. package/build/cjs/components/ActionBar/__stories__/ActionBarStretchGroupShowcase.d.ts +0 -2
  227. package/build/cjs/components/ActionBar/__tests__/helpersPlaywright.d.ts +0 -5
  228. package/build/cjs/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +0 -23
  229. package/build/cjs/components/AsideHeader/__stories__/AsideHeaderShowcase.d.ts +0 -13
  230. package/build/cjs/components/AsideHeader/__stories__/getAsideHeaderWrapper.d.ts +0 -3
  231. package/build/cjs/components/AsideHeader/__stories__/moc.d.ts +0 -17
  232. package/build/cjs/components/AsideHeader/__tests__/helpersPlaywright.d.ts +0 -2
  233. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/buildExpandedFromFlatList.d.ts +0 -3
  234. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/buildExpandedFromFlatList.js +0 -17
  235. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/buildExpandedFromFlatList.js.map +0 -1
  236. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/getIsMenuItem.d.ts +0 -2
  237. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/getIsMenuItem.js +0 -13
  238. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/getIsMenuItem.js.map +0 -1
  239. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/getRealIndexInGroup.d.ts +0 -2
  240. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/getRealIndexInGroup.js +0 -22
  241. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/getRealIndexInGroup.js.map +0 -1
  242. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItems.d.ts +0 -2
  243. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItems.js +0 -16
  244. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItems.js.map +0 -1
  245. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItemsWithDividers.d.ts +0 -3
  246. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItemsWithDividers.js +0 -44
  247. package/build/cjs/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItemsWithDividers.js.map +0 -1
  248. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.css +0 -9
  249. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.d.ts +0 -9
  250. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.js +0 -34
  251. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.js.map +0 -1
  252. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.module.scss.js +0 -8
  253. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.module.scss.js.map +0 -1
  254. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.d.ts +0 -24
  255. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js +0 -29
  256. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js.map +0 -1
  257. package/build/cjs/components/AsideHeader/components/CompositeBar/MultipleTooltip/index.d.ts +0 -2
  258. package/build/cjs/components/AsideHeader/components/FooterItem/__stories__/FooterItem.stories.d.ts +0 -6
  259. package/build/cjs/components/AsideHeader/components/FooterItem/__tests__/helpersPlaywright.d.ts +0 -2
  260. package/build/cjs/components/AsideHeader/hooks/useDelayedToggle.d.ts +0 -6
  261. package/build/cjs/components/AsideHeader/hooks/useDelayedToggle.js +0 -57
  262. package/build/cjs/components/AsideHeader/hooks/useDelayedToggle.js.map +0 -1
  263. package/build/cjs/components/AsideHeader/hooks/useIsExpanded.d.ts +0 -7
  264. package/build/cjs/components/AsideHeader/hooks/useIsExpanded.js +0 -44
  265. package/build/cjs/components/AsideHeader/hooks/useIsExpanded.js.map +0 -1
  266. package/build/cjs/components/AsideHeader/utils/getGroupHeight.d.ts +0 -2
  267. package/build/cjs/components/AsideHeader/utils/getGroupHeight.js +0 -16
  268. package/build/cjs/components/AsideHeader/utils/getGroupHeight.js.map +0 -1
  269. package/build/cjs/components/Footer/desktop/__stories__/Footer.stories.d.ts +0 -8
  270. package/build/cjs/components/Footer/desktop/__stories__/FooterShowcase.d.ts +0 -4
  271. package/build/cjs/components/Footer/desktop/__stories__/moc.d.ts +0 -3
  272. package/build/cjs/components/Footer/desktop/__tests__/helpersPlaywright.d.ts +0 -2
  273. package/build/cjs/components/Footer/mobile/__stories__/MobileFooter.stories.d.ts +0 -8
  274. package/build/cjs/components/Footer/mobile/__stories__/MobileFooterShowcase.d.ts +0 -4
  275. package/build/cjs/components/Footer/mobile/__stories__/moc.d.ts +0 -3
  276. package/build/cjs/components/Footer/mobile/__tests__/helpersPlaywright.d.ts +0 -2
  277. package/build/cjs/components/HotkeysPanel/__stories__/HotkeysPanel.stories.d.ts +0 -5
  278. package/build/cjs/components/HotkeysPanel/__stories__/HotkeysPanelShowcase.d.ts +0 -6
  279. package/build/cjs/components/HotkeysPanel/__stories__/moc.d.ts +0 -2
  280. package/build/cjs/components/HotkeysPanel/__tests__/helpersPlaywright.d.ts +0 -2
  281. package/build/cjs/components/Logo/__stories__/Logo.stories.d.ts +0 -7
  282. package/build/cjs/components/Logo/__tests__/helpersPlaywright.d.ts +0 -2
  283. package/build/cjs/components/MobileHeader/BurgerMenu/__stories__/BurgerMenu.stories.d.ts +0 -6
  284. package/build/cjs/components/MobileHeader/BurgerMenu/__stories__/moc.d.ts +0 -2
  285. package/build/cjs/components/MobileHeader/BurgerMenu/__tests__/helpersPlaywright.d.ts +0 -2
  286. package/build/cjs/components/MobileHeader/OverlapPanel/__stories__/OverlapPanel.stories.d.ts +0 -6
  287. package/build/cjs/components/MobileHeader/OverlapPanel/__stories__/moc.d.ts +0 -2
  288. package/build/cjs/components/MobileHeader/OverlapPanel/__tests__/helpersPlaywright.d.ts +0 -2
  289. package/build/cjs/components/MobileHeader/__stories__/MobileHeader.stories.d.ts +0 -4
  290. package/build/cjs/components/MobileHeader/__stories__/MobileHeaderShowcase.d.ts +0 -3
  291. package/build/cjs/components/MobileHeader/__stories__/moc.d.ts +0 -1
  292. package/build/cjs/components/MobileHeader/__tests__/helpersPlaywright.d.ts +0 -2
  293. package/build/cjs/components/MobileLogo/__stories__/MobileLogo.stories.d.ts +0 -6
  294. package/build/cjs/components/MobileLogo/__tests__/helpersPlaywright.d.ts +0 -2
  295. package/build/cjs/components/Settings/__stories__/Settings.stories.d.ts +0 -5
  296. package/build/cjs/components/Settings/__stories__/SettingsDemo.d.ts +0 -14
  297. package/build/cjs/components/Settings/__stories__/SettingsMobileDemo.d.ts +0 -8
  298. package/build/cjs/components/Settings/__tests__/helpersPlaywright.d.ts +0 -2
  299. package/build/esm/components/ActionBar/__stories__/ActionBar.stories.d.ts +0 -20
  300. package/build/esm/components/ActionBar/__stories__/ActionBarShowcase.d.ts +0 -2
  301. package/build/esm/components/ActionBar/__stories__/ActionBarSingleSection.d.ts +0 -2
  302. package/build/esm/components/ActionBar/__stories__/ActionBarStretchGroupShowcase.d.ts +0 -2
  303. package/build/esm/components/ActionBar/__tests__/helpersPlaywright.d.ts +0 -5
  304. package/build/esm/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +0 -23
  305. package/build/esm/components/AsideHeader/__stories__/AsideHeaderShowcase.d.ts +0 -13
  306. package/build/esm/components/AsideHeader/__stories__/getAsideHeaderWrapper.d.ts +0 -3
  307. package/build/esm/components/AsideHeader/__stories__/moc.d.ts +0 -17
  308. package/build/esm/components/AsideHeader/__tests__/helpersPlaywright.d.ts +0 -2
  309. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/buildExpandedFromFlatList.d.ts +0 -3
  310. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/buildExpandedFromFlatList.js +0 -15
  311. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/buildExpandedFromFlatList.js.map +0 -1
  312. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/getIsMenuItem.d.ts +0 -2
  313. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/getIsMenuItem.js +0 -11
  314. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/getIsMenuItem.js.map +0 -1
  315. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/getRealIndexInGroup.d.ts +0 -2
  316. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/getRealIndexInGroup.js +0 -20
  317. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/getRealIndexInGroup.js.map +0 -1
  318. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItems.d.ts +0 -2
  319. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItems.js +0 -14
  320. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItems.js.map +0 -1
  321. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItemsWithDividers.d.ts +0 -3
  322. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItemsWithDividers.js +0 -42
  323. package/build/esm/components/AsideHeader/components/AllPagesPanel/utils/sortMenuItemsWithDividers.js.map +0 -1
  324. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.css +0 -9
  325. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.d.ts +0 -9
  326. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.js +0 -32
  327. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.js.map +0 -1
  328. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.module.scss.js +0 -4
  329. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltip.module.scss.js.map +0 -1
  330. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.d.ts +0 -24
  331. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js +0 -26
  332. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js.map +0 -1
  333. package/build/esm/components/AsideHeader/components/CompositeBar/MultipleTooltip/index.d.ts +0 -2
  334. package/build/esm/components/AsideHeader/components/FooterItem/__stories__/FooterItem.stories.d.ts +0 -6
  335. package/build/esm/components/AsideHeader/components/FooterItem/__tests__/helpersPlaywright.d.ts +0 -2
  336. package/build/esm/components/AsideHeader/hooks/useDelayedToggle.d.ts +0 -6
  337. package/build/esm/components/AsideHeader/hooks/useDelayedToggle.js +0 -55
  338. package/build/esm/components/AsideHeader/hooks/useDelayedToggle.js.map +0 -1
  339. package/build/esm/components/AsideHeader/hooks/useIsExpanded.d.ts +0 -7
  340. package/build/esm/components/AsideHeader/hooks/useIsExpanded.js +0 -42
  341. package/build/esm/components/AsideHeader/hooks/useIsExpanded.js.map +0 -1
  342. package/build/esm/components/AsideHeader/utils/getGroupHeight.d.ts +0 -2
  343. package/build/esm/components/AsideHeader/utils/getGroupHeight.js +0 -14
  344. package/build/esm/components/AsideHeader/utils/getGroupHeight.js.map +0 -1
  345. package/build/esm/components/Footer/desktop/__stories__/Footer.stories.d.ts +0 -8
  346. package/build/esm/components/Footer/desktop/__stories__/FooterShowcase.d.ts +0 -4
  347. package/build/esm/components/Footer/desktop/__stories__/moc.d.ts +0 -3
  348. package/build/esm/components/Footer/desktop/__tests__/helpersPlaywright.d.ts +0 -2
  349. package/build/esm/components/Footer/mobile/__stories__/MobileFooter.stories.d.ts +0 -8
  350. package/build/esm/components/Footer/mobile/__stories__/MobileFooterShowcase.d.ts +0 -4
  351. package/build/esm/components/Footer/mobile/__stories__/moc.d.ts +0 -3
  352. package/build/esm/components/Footer/mobile/__tests__/helpersPlaywright.d.ts +0 -2
  353. package/build/esm/components/HotkeysPanel/__stories__/HotkeysPanel.stories.d.ts +0 -5
  354. package/build/esm/components/HotkeysPanel/__stories__/HotkeysPanelShowcase.d.ts +0 -6
  355. package/build/esm/components/HotkeysPanel/__stories__/moc.d.ts +0 -2
  356. package/build/esm/components/HotkeysPanel/__tests__/helpersPlaywright.d.ts +0 -2
  357. package/build/esm/components/Logo/__stories__/Logo.stories.d.ts +0 -7
  358. package/build/esm/components/Logo/__tests__/helpersPlaywright.d.ts +0 -2
  359. package/build/esm/components/MobileHeader/BurgerMenu/__stories__/BurgerMenu.stories.d.ts +0 -6
  360. package/build/esm/components/MobileHeader/BurgerMenu/__stories__/moc.d.ts +0 -2
  361. package/build/esm/components/MobileHeader/BurgerMenu/__tests__/helpersPlaywright.d.ts +0 -2
  362. package/build/esm/components/MobileHeader/OverlapPanel/__stories__/OverlapPanel.stories.d.ts +0 -6
  363. package/build/esm/components/MobileHeader/OverlapPanel/__stories__/moc.d.ts +0 -2
  364. package/build/esm/components/MobileHeader/OverlapPanel/__tests__/helpersPlaywright.d.ts +0 -2
  365. package/build/esm/components/MobileHeader/__stories__/MobileHeader.stories.d.ts +0 -4
  366. package/build/esm/components/MobileHeader/__stories__/MobileHeaderShowcase.d.ts +0 -3
  367. package/build/esm/components/MobileHeader/__stories__/moc.d.ts +0 -1
  368. package/build/esm/components/MobileHeader/__tests__/helpersPlaywright.d.ts +0 -2
  369. package/build/esm/components/MobileLogo/__stories__/MobileLogo.stories.d.ts +0 -6
  370. package/build/esm/components/MobileLogo/__tests__/helpersPlaywright.d.ts +0 -2
  371. package/build/esm/components/Settings/__stories__/Settings.stories.d.ts +0 -5
  372. package/build/esm/components/Settings/__stories__/SettingsDemo.d.ts +0 -14
  373. package/build/esm/components/Settings/__stories__/SettingsMobileDemo.d.ts +0 -8
  374. package/build/esm/components/Settings/__tests__/helpersPlaywright.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../../../src/components/AsideHeader/components/CompositeBar/utils.ts"],"sourcesContent":["import {ITEM_HEIGHT} from '../../../constants';\nimport {AsideHeaderItem, GroupedMenuItem, MenuItemsWithGroups} from '../../types';\nimport {getGroupBlockHeight} from '../../utils/getGroupHeight';\n\nfunction getGroupHeight(compositeItem: GroupedMenuItem) {\n const visibleGroupItems = compositeItem.isCollapsed ? [] : compositeItem.items;\n\n return getGroupBlockHeight(visibleGroupItems);\n}\n\nexport function getItemHeight(compositeItem: MenuItemsWithGroups) {\n if ('items' in compositeItem && compositeItem.items && compositeItem.items?.length > 0) {\n return getGroupHeight(compositeItem);\n }\n\n switch (compositeItem.type) {\n case 'action':\n return 50;\n case 'divider':\n return 15;\n\n default:\n return ITEM_HEIGHT;\n }\n}\n\nexport function getItemsHeight<T extends AsideHeaderItem>(items: T[]) {\n return items.reduce((sum, item) => sum + getItemHeight(item), 0);\n}\n\nexport function getSelectedItemIndex(compositeItems: AsideHeaderItem[]) {\n const index = compositeItems.findIndex(({current}) => Boolean(current));\n return index === -1 ? undefined : index;\n}\n"],"names":[],"mappings":";;;AAIA,SAAS,cAAc,CAAC,aAA8B,EAAA;AAClD,IAAA,MAAM,iBAAiB,GAAG,aAAa,CAAC,WAAW,GAAG,EAAE,GAAG,aAAa,CAAC,KAAK;AAE9E,IAAA,OAAO,mBAAmB,CAAC,iBAAiB,CAAC;AACjD;AAEM,SAAU,aAAa,CAAC,aAAkC,EAAA;;AAC5D,IAAA,IAAI,OAAO,IAAI,aAAa,IAAI,aAAa,CAAC,KAAK,IAAI,CAAA,CAAA,EAAA,GAAA,aAAa,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAE,MAAM,IAAG,CAAC,EAAE;AACpF,QAAA,OAAO,cAAc,CAAC,aAAa,CAAC;;AAGxC,IAAA,QAAQ,aAAa,CAAC,IAAI;AACtB,QAAA,KAAK,QAAQ;AACT,YAAA,OAAO,EAAE;AACb,QAAA,KAAK,SAAS;AACV,YAAA,OAAO,EAAE;AAEb,QAAA;AACI,YAAA,OAAO,WAAW;;AAE9B;AAEM,SAAU,cAAc,CAA4B,KAAU,EAAA;IAChE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpE;AAEM,SAAU,oBAAoB,CAAC,cAAiC,EAAA;AAClE,IAAA,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,EAAC,OAAO,EAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACvE,IAAA,OAAO,KAAK,KAAK,EAAE,GAAG,SAAS,GAAG,KAAK;AAC3C;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../../../src/components/AsideHeader/components/CompositeBar/utils.ts"],"sourcesContent":["import {Ellipsis} from '@gravity-ui/icons';\n\nimport {ITEM_HEIGHT, POPUP_REGULAR_ITEM_HEIGHT} from '../../../constants';\nimport {AsideHeaderItem} from '../../types';\n\nimport {COLLAPSE_ITEM_ID} from './constants';\n\nexport function getItemHeight(compositeItem: AsideHeaderItem) {\n switch (compositeItem.type) {\n case 'action':\n return 50;\n case 'divider':\n return 15;\n\n default:\n return ITEM_HEIGHT;\n }\n}\n\nexport function getPopupItemHeight(compositeItem: AsideHeaderItem) {\n switch (compositeItem.type) {\n case 'action':\n return 50;\n case 'divider':\n return 15;\n\n default:\n return POPUP_REGULAR_ITEM_HEIGHT;\n }\n}\n\nexport function getItemsHeight<T extends AsideHeaderItem>(items: T[]) {\n return items.reduce((sum, item) => sum + getItemHeight(item), 0);\n}\n\nexport function getPopupItemsHeight<T extends AsideHeaderItem>(items: T[]) {\n return items.reduce((sum, item) => sum + getPopupItemHeight(item), 0);\n}\n\nexport function getSelectedItemIndex(compositeItems: AsideHeaderItem[]) {\n const index = compositeItems.findIndex(({current}) => Boolean(current));\n return index === -1 ? undefined : index;\n}\n\nfunction getPinnedItems(compositeItems: AsideHeaderItem[]) {\n const pinnedItems: AsideHeaderItem[] = [];\n for (const compositeItem of compositeItems) {\n if (compositeItem.pinned) {\n pinnedItems.push(compositeItem);\n } else if (compositeItem.type === 'divider') {\n if (pinnedItems.length > 0 && pinnedItems[pinnedItems.length - 1].type !== 'divider') {\n pinnedItems.push(compositeItem);\n }\n }\n }\n return pinnedItems;\n}\n\nexport function getItemsMinHeight(compositeItems: AsideHeaderItem[]) {\n const pinnedItems = getPinnedItems(compositeItems);\n const afterMoreButtonItems = compositeItems.filter(({afterMoreButton}) => afterMoreButton);\n\n return (\n getItemsHeight(pinnedItems) +\n getItemsHeight(afterMoreButtonItems) +\n (pinnedItems.length === compositeItems.length ? 0 : ITEM_HEIGHT)\n );\n}\n\nexport function getMoreButtonItem(menuMoreTitle?: string): AsideHeaderItem {\n return {\n id: COLLAPSE_ITEM_ID,\n title: menuMoreTitle,\n icon: Ellipsis,\n iconSize: 18,\n };\n}\n\nexport function getAutosizeListItems(\n compositeItems: AsideHeaderItem[],\n height: number,\n collapseItem: AsideHeaderItem,\n): {\n listItems: AsideHeaderItem[];\n collapseItems: AsideHeaderItem[];\n} {\n const afterMoreButtonItems = compositeItems.filter(({afterMoreButton}) => afterMoreButton);\n const regularItems = compositeItems.filter(({afterMoreButton}) => !afterMoreButton);\n const listItems = [...regularItems, ...afterMoreButtonItems];\n\n const allItemsHeight = getItemsHeight(listItems);\n if (allItemsHeight <= height) {\n return {listItems, collapseItems: []};\n }\n\n const collapseItemHeight = getItemHeight(collapseItem);\n\n listItems.splice(regularItems.length, 0, collapseItem);\n const collapseItems: AsideHeaderItem[] = [];\n\n let listHeight = allItemsHeight + collapseItemHeight;\n let index = listItems.length;\n while (listHeight > height) {\n if (index === 0) {\n break;\n }\n index--;\n\n const compositeItem = listItems[index];\n if (\n compositeItem.pinned ||\n compositeItem.id === COLLAPSE_ITEM_ID ||\n compositeItem.afterMoreButton\n ) {\n continue;\n }\n if (compositeItem.type === 'divider') {\n if (index + 1 < listItems.length && listItems[index + 1]?.type === 'divider') {\n listHeight -= getItemHeight(compositeItem);\n listItems.splice(index, 1);\n }\n continue;\n }\n listHeight -= getItemHeight(compositeItem);\n collapseItems.unshift(...listItems.splice(index, 1));\n }\n if (\n listItems[index]?.type === 'divider' &&\n (index === 0 || listItems[index - 1]?.type === 'divider')\n ) {\n listItems.splice(index, 1);\n }\n\n return {listItems, collapseItems};\n}\n"],"names":[],"mappings":"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"}
@@ -1,43 +1,38 @@
1
1
  import React__default, { useRef } from 'react';
2
2
  import { setRef } from '@gravity-ui/uikit';
3
- import { CSSTransition } from 'react-transition-group';
4
- import { ASIDE_HEADER_EXPAND_TRANSITION_DELAY } from '../../constants.js';
5
3
  import { useAsideHeaderInnerContext } from '../AsideHeaderContext.js';
4
+ import i18n from '../i18n/index.js';
6
5
  import { b } from '../utils.js';
7
- import { useGroupedMenuItems } from './AllPagesPanel/useGroupedMenuItems.js';
6
+ import './AllPagesPanel/AllPagesPanel.js';
7
+ import '@gravity-ui/icons';
8
+ import './AllPagesPanel/i18n/index.js';
9
+ import { useVisibleMenuItems } from './AllPagesPanel/useVisibleMenuItems.js';
10
+ import { CollapseButton } from './CollapseButton/CollapseButton.js';
8
11
  import { CompositeBar } from './CompositeBar/CompositeBar.js';
9
12
  import { Header } from './Header.js';
10
13
  import { Panels } from './Panels.js';
11
14
 
12
15
  const MENU_ITEMS_COMPOSITE_ID = 'gravity-ui/navigation-menu-items-composite-bar';
13
- const asideTransitionClassNames = {
14
- enter: b('aside-transition-enter'),
15
- enterActive: b('aside-transition-enter-active'),
16
- enterDone: b('aside-transition-enter-done'),
17
- exit: b('aside-transition-exit'),
18
- exitActive: b('aside-transition-exit-active'),
19
- };
20
16
  const FirstPanel = React__default.forwardRef((_props, ref) => {
21
- const { size, onItemClick, headerDecoration, multipleTooltip, onMenuMoreClick, renderFooter, onToggleGroupCollapsed, compact, customBackground, customBackgroundClassName, className, menuItems, menuGroups, qa, onExpand, onFold, isExpanded, } = useAsideHeaderInnerContext();
22
- const flatListItems = useGroupedMenuItems(menuItems, menuGroups);
17
+ const { size, onItemClick, headerDecoration, menuMoreTitle, onMenuMoreClick, renderFooter, compact, customBackground, customBackgroundClassName, className, hideCollapseButton, menuGroups, qa, } = useAsideHeaderInnerContext();
18
+ const visibleMenuItems = useVisibleMenuItems();
23
19
  const asideRef = useRef(null);
24
20
  React__default.useEffect(() => {
25
21
  setRef(ref, asideRef.current);
26
22
  }, [ref]);
27
- const isExpandedByHover = compact && isExpanded;
28
23
  return (React__default.createElement(React__default.Fragment, null,
29
- React__default.createElement(CSSTransition, { in: isExpandedByHover, timeout: ASIDE_HEADER_EXPAND_TRANSITION_DELAY, classNames: asideTransitionClassNames },
30
- React__default.createElement("div", { className: b('aside', className), style: { width: size }, "data-qa": qa, onMouseEnter: onExpand, onMouseLeave: onFold },
31
- React__default.createElement("div", { className: b('aside-popup-anchor'), ref: asideRef }),
32
- customBackground && (React__default.createElement("div", { className: b('aside-custom-background', customBackgroundClassName) }, customBackground)),
33
- React__default.createElement("div", { className: b('aside-content', { ['with-decoration']: headerDecoration }) },
34
- React__default.createElement(Header, null),
35
- (flatListItems === null || flatListItems === undefined ? undefined : flatListItems.length) ? (React__default.createElement(CompositeBar, { compositeId: MENU_ITEMS_COMPOSITE_ID, className: b('menu-items'), groupClassName: b('menu-items-group'), menuItemClassName: b('menu-item'), compact: !isExpanded, type: "menu", items: flatListItems, onItemClick: onItemClick, onMoreClick: onMenuMoreClick, onToggleGroupCollapsed: onToggleGroupCollapsed, multipleTooltip: multipleTooltip })) : (React__default.createElement("div", { className: b('menu-items') })),
36
- React__default.createElement("div", { className: b('footer') }, renderFooter === null || renderFooter === undefined ? undefined : renderFooter({
37
- size,
38
- compact: Boolean(!isExpanded),
39
- asideRef,
40
- }))))),
24
+ React__default.createElement("div", { className: b('aside', className), style: { width: size }, "data-qa": qa },
25
+ React__default.createElement("div", { className: b('aside-popup-anchor'), ref: asideRef }),
26
+ customBackground && (React__default.createElement("div", { className: b('aside-custom-background', customBackgroundClassName) }, customBackground)),
27
+ React__default.createElement("div", { className: b('aside-content', { ['with-decoration']: headerDecoration }) },
28
+ React__default.createElement(Header, null),
29
+ (visibleMenuItems === null || visibleMenuItems === undefined ? undefined : visibleMenuItems.length) ? (React__default.createElement(CompositeBar, { menuItemClassName: b('menu-item'), compositeId: MENU_ITEMS_COMPOSITE_ID, type: "menu", compact: compact, items: visibleMenuItems, menuGroups: menuGroups, menuMoreTitle: menuMoreTitle !== null && menuMoreTitle !== undefined ? menuMoreTitle : i18n('label_more'), onItemClick: onItemClick, onMoreClick: onMenuMoreClick })) : (React__default.createElement("div", { className: b('menu-items') })),
30
+ React__default.createElement("div", { className: b('footer') }, renderFooter === null || renderFooter === undefined ? undefined : renderFooter({
31
+ size,
32
+ compact: Boolean(compact),
33
+ asideRef,
34
+ })),
35
+ !hideCollapseButton && React__default.createElement(CollapseButton, null))),
41
36
  React__default.createElement(Panels, null)));
42
37
  });
43
38
  FirstPanel.displayName = 'FirstPanel';
@@ -1 +1 @@
1
- {"version":3,"file":"FirstPanel.js","sources":["../../../../../../src/components/AsideHeader/components/FirstPanel.tsx"],"sourcesContent":["import React, {useRef} from 'react';\n\nimport {setRef} from '@gravity-ui/uikit';\nimport {CSSTransition} from 'react-transition-group';\n\nimport {ASIDE_HEADER_EXPAND_TRANSITION_DELAY} from '../../constants';\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {b} from '../utils';\n\nimport {useGroupedMenuItems} from './AllPagesPanel/useGroupedMenuItems';\nimport {CompositeBar} from './CompositeBar';\nimport {Header} from './Header';\nimport {Panels} from './Panels';\n\nconst MENU_ITEMS_COMPOSITE_ID = 'gravity-ui/navigation-menu-items-composite-bar';\n\nconst asideTransitionClassNames = {\n enter: b('aside-transition-enter'),\n enterActive: b('aside-transition-enter-active'),\n enterDone: b('aside-transition-enter-done'),\n exit: b('aside-transition-exit'),\n exitActive: b('aside-transition-exit-active'),\n};\n\nexport const FirstPanel = React.forwardRef<HTMLDivElement>((_props, ref) => {\n const {\n size,\n onItemClick,\n headerDecoration,\n multipleTooltip,\n onMenuMoreClick,\n renderFooter,\n onToggleGroupCollapsed,\n compact,\n customBackground,\n customBackgroundClassName,\n className,\n menuItems,\n menuGroups,\n qa,\n onExpand,\n onFold,\n isExpanded,\n } = useAsideHeaderInnerContext();\n\n const flatListItems = useGroupedMenuItems(menuItems, menuGroups);\n\n const asideRef = useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n setRef<HTMLDivElement>(ref, asideRef.current);\n }, [ref]);\n\n const isExpandedByHover = compact && isExpanded;\n\n return (\n <React.Fragment>\n <CSSTransition\n in={isExpandedByHover}\n timeout={ASIDE_HEADER_EXPAND_TRANSITION_DELAY}\n classNames={asideTransitionClassNames}\n >\n <div\n className={b('aside', className)}\n style={{width: size}}\n data-qa={qa}\n onMouseEnter={onExpand}\n onMouseLeave={onFold}\n >\n <div className={b('aside-popup-anchor')} ref={asideRef} />\n {customBackground && (\n <div className={b('aside-custom-background', customBackgroundClassName)}>\n {customBackground}\n </div>\n )}\n\n <div className={b('aside-content', {['with-decoration']: headerDecoration})}>\n <Header />\n\n {flatListItems?.length ? (\n <CompositeBar\n compositeId={MENU_ITEMS_COMPOSITE_ID}\n className={b('menu-items')}\n groupClassName={b('menu-items-group')}\n menuItemClassName={b('menu-item')}\n compact={!isExpanded}\n type=\"menu\"\n items={flatListItems}\n onItemClick={onItemClick}\n onMoreClick={onMenuMoreClick}\n onToggleGroupCollapsed={onToggleGroupCollapsed}\n multipleTooltip={multipleTooltip}\n />\n ) : (\n <div className={b('menu-items')} />\n )}\n\n <div className={b('footer')}>\n {renderFooter?.({\n size,\n compact: Boolean(!isExpanded),\n asideRef,\n })}\n </div>\n </div>\n </div>\n </CSSTransition>\n <Panels />\n </React.Fragment>\n );\n});\n\nFirstPanel.displayName = 'FirstPanel';\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"FirstPanel.js","sources":["../../../../../../src/components/AsideHeader/components/FirstPanel.tsx"],"sourcesContent":["import React, {useRef} from 'react';\n\nimport {setRef} from '@gravity-ui/uikit';\n\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport i18n from '../i18n';\nimport {b} from '../utils';\n\nimport {useVisibleMenuItems} from './AllPagesPanel';\nimport {CollapseButton} from './CollapseButton/CollapseButton';\nimport {CompositeBar} from './CompositeBar';\nimport {Header} from './Header';\nimport {Panels} from './Panels';\n\nconst MENU_ITEMS_COMPOSITE_ID = 'gravity-ui/navigation-menu-items-composite-bar';\n\nexport const FirstPanel = React.forwardRef<HTMLDivElement>((_props, ref) => {\n const {\n size,\n onItemClick,\n headerDecoration,\n menuMoreTitle,\n onMenuMoreClick,\n renderFooter,\n compact,\n customBackground,\n customBackgroundClassName,\n className,\n hideCollapseButton,\n menuGroups,\n qa,\n } = useAsideHeaderInnerContext();\n const visibleMenuItems = useVisibleMenuItems();\n\n const asideRef = useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n setRef<HTMLDivElement>(ref, asideRef.current);\n }, [ref]);\n\n return (\n <React.Fragment>\n <div className={b('aside', className)} style={{width: size}} data-qa={qa}>\n <div className={b('aside-popup-anchor')} ref={asideRef} />\n {customBackground && (\n <div className={b('aside-custom-background', customBackgroundClassName)}>\n {customBackground}\n </div>\n )}\n\n <div className={b('aside-content', {['with-decoration']: headerDecoration})}>\n <Header />\n {visibleMenuItems?.length ? (\n <CompositeBar\n menuItemClassName={b('menu-item')}\n compositeId={MENU_ITEMS_COMPOSITE_ID}\n type=\"menu\"\n compact={compact}\n items={visibleMenuItems}\n menuGroups={menuGroups}\n menuMoreTitle={menuMoreTitle ?? i18n('label_more')}\n onItemClick={onItemClick}\n onMoreClick={onMenuMoreClick}\n />\n ) : (\n <div className={b('menu-items')} />\n )}\n <div className={b('footer')}>\n {renderFooter?.({\n size,\n compact: Boolean(compact),\n asideRef,\n })}\n </div>\n {!hideCollapseButton && <CollapseButton />}\n </div>\n </div>\n <Panels />\n </React.Fragment>\n );\n});\n\nFirstPanel.displayName = 'FirstPanel';\n"],"names":["React"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- .FooterItem-module__gn-footer-item___Hi7NH{--gn-aside-header-item-expanded-radius:6px;border-radius:var(--gn-aside-header-item-expanded-radius);height:36px;margin-bottom:2px;width:100%}.FooterItem-module__gn-footer-item___Hi7NH:last-child{margin-bottom:0}
1
+ .FooterItem-module__gn-footer-item___Hi7NH{border-radius:var(--gn-aside-header-item-expanded-radius);width:100%}
2
2
  .FooterItem-module__gn-mobile-header-footer-item___dk-Wo{flex-grow:1;position:relative}.FooterItem-module__gn-mobile-header-footer-item__button___KSu25{align-items:center;background:none;border:none;box-sizing:border-box;color:inherit;cursor:pointer;display:flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);justify-content:center;outline:none;padding:13px 10px;width:100%}.FooterItem-module__gn-mobile-header-footer-item___dk-Wo .FooterItem-module__gn-mobile-header-footer-item__icon___Spltd{color:var(--g-color-text-misc)}.FooterItem-module__gn-mobile-header-footer-item___dk-Wo+.FooterItem-module__gn-mobile-header-footer-item___dk-Wo:before{border-left:1px solid var(--g-color-base-generic);bottom:8px;content:"";left:0;position:absolute;top:8px}.FooterItem-module__gn-mobile-header-footer-item___dk-Wo:empty{display:none}
@@ -4,27 +4,21 @@ import { Logo } from '../../Logo/Logo.js';
4
4
  import { ASIDE_HEADER_COMPACT_WIDTH, HEADER_DIVIDER_HEIGHT } from '../../constants.js';
5
5
  import { useAsideHeaderInnerContext } from '../AsideHeaderContext.js';
6
6
  import { b } from '../utils.js';
7
- import { useGroupedMenuItems } from './AllPagesPanel/useGroupedMenuItems.js';
8
- import { CollapseButton } from './CollapseButton/CollapseButton.js';
9
7
  import { CompositeBar } from './CompositeBar/CompositeBar.js';
10
8
  import SvgDividerCollapsed from '../../../assets/icons/divider-collapsed.svg.js';
11
9
 
12
10
  const DEFAULT_SUBHEADER_ITEMS = [];
13
11
  const HEADER_COMPOSITE_ID = 'gravity-ui/navigation-header-composite-bar';
14
12
  const Header = () => {
15
- const { logo, isExpanded, onItemClick, onClosePanel, headerDecoration, subheaderItems, hideCollapseButton, } = useAsideHeaderInnerContext();
16
- const compact = !isExpanded;
17
- const items = useGroupedMenuItems(subheaderItems || DEFAULT_SUBHEADER_ITEMS);
13
+ const { logo, onItemClick, onClosePanel, headerDecoration, subheaderItems, compact } = useAsideHeaderInnerContext();
18
14
  const onLogoClick = useCallback((event) => {
19
15
  var _a;
20
16
  onClosePanel === null || onClosePanel === undefined ? undefined : onClosePanel();
21
17
  (_a = logo === null || logo === undefined ? undefined : logo.onClick) === null || _a === undefined ? undefined : _a.call(logo, event);
22
18
  }, [onClosePanel, logo]);
23
19
  return (React__default.createElement("div", { className: b('header', { ['with-decoration']: headerDecoration }) },
24
- React__default.createElement("div", { className: b('logo-container', { 'without-logo': !logo }) },
25
- logo && (React__default.createElement(Logo, Object.assign({}, logo, { onClick: onLogoClick, compact: compact, buttonClassName: b('logo-button'), iconPlaceClassName: b('logo-icon-place') }))),
26
- !hideCollapseButton && React__default.createElement(CollapseButton, { className: b('pin-button', { compact }) })),
27
- React__default.createElement(CompositeBar, { compositeId: HEADER_COMPOSITE_ID, menuItemClassName: b('menu-item'), type: "subheader", compact: compact, items: items, onItemClick: onItemClick }),
20
+ logo && (React__default.createElement(Logo, Object.assign({}, logo, { onClick: onLogoClick, compact: compact, buttonClassName: b('logo-button'), iconPlaceClassName: b('logo-icon-place') }))),
21
+ React__default.createElement(CompositeBar, { compositeId: HEADER_COMPOSITE_ID, type: "subheader", menuItemClassName: b('menu-item'), compact: compact, items: subheaderItems || DEFAULT_SUBHEADER_ITEMS, onItemClick: onItemClick }),
28
22
  headerDecoration && (React__default.createElement(Icon, { data: SvgDividerCollapsed, className: b('header-divider'), width: ASIDE_HEADER_COMPACT_WIDTH, height: HEADER_DIVIDER_HEIGHT }))));
29
23
  };
30
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","sources":["../../../../../../src/components/AsideHeader/components/Header.tsx"],"sourcesContent":["import React, {useCallback} from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {Logo} from '../../Logo';\nimport {ASIDE_HEADER_COMPACT_WIDTH, HEADER_DIVIDER_HEIGHT} from '../../constants';\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {AsideHeaderItem} from '../types';\nimport {b} from '../utils';\n\nimport {useGroupedMenuItems} from './AllPagesPanel/useGroupedMenuItems';\nimport {CollapseButton} from './CollapseButton/CollapseButton';\nimport {CompositeBar} from './CompositeBar';\n\nimport headerDividerCollapsedIcon from '../../../../assets/icons/divider-collapsed.svg';\n\nconst DEFAULT_SUBHEADER_ITEMS: AsideHeaderItem[] = [];\nconst HEADER_COMPOSITE_ID = 'gravity-ui/navigation-header-composite-bar';\n\nexport const Header = () => {\n const {\n logo,\n isExpanded,\n onItemClick,\n onClosePanel,\n headerDecoration,\n subheaderItems,\n hideCollapseButton,\n } = useAsideHeaderInnerContext();\n\n const compact = !isExpanded;\n\n const items = useGroupedMenuItems(subheaderItems || DEFAULT_SUBHEADER_ITEMS);\n\n const onLogoClick = useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n onClosePanel?.();\n logo?.onClick?.(event);\n },\n [onClosePanel, logo],\n );\n\n return (\n <div className={b('header', {['with-decoration']: headerDecoration})}>\n <div className={b('logo-container', {'without-logo': !logo})}>\n {logo && (\n <Logo\n {...logo}\n onClick={onLogoClick}\n compact={compact}\n buttonClassName={b('logo-button')}\n iconPlaceClassName={b('logo-icon-place')}\n />\n )}\n\n {!hideCollapseButton && <CollapseButton className={b('pin-button', {compact})} />}\n </div>\n\n <CompositeBar\n compositeId={HEADER_COMPOSITE_ID}\n menuItemClassName={b('menu-item')}\n type=\"subheader\"\n compact={compact}\n items={items}\n onItemClick={onItemClick}\n />\n\n {headerDecoration && (\n <Icon\n data={headerDividerCollapsedIcon}\n className={b('header-divider')}\n width={ASIDE_HEADER_COMPACT_WIDTH}\n height={HEADER_DIVIDER_HEIGHT}\n />\n )}\n </div>\n );\n};\n"],"names":["React","headerDividerCollapsedIcon"],"mappings":";;;;;;;;;;;AAgBA,MAAM,uBAAuB,GAAsB,EAAE;AACrD,MAAM,mBAAmB,GAAG,4CAA4C;AAEjE,MAAM,MAAM,GAAG,MAAK;AACvB,IAAA,MAAM,EACF,IAAI,EACJ,UAAU,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,kBAAkB,GACrB,GAAG,0BAA0B,EAAE;AAEhC,IAAA,MAAM,OAAO,GAAG,CAAC,UAAU;IAE3B,MAAM,KAAK,GAAG,mBAAmB,CAAC,cAAc,IAAI,uBAAuB,CAAC;AAE5E,IAAA,MAAM,WAAW,GAAG,WAAW,CAC3B,CAAC,KAAgD,KAAI;;AACjD,QAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI;QAChB,CAAA,EAAA,GAAA,IAAI,KAAJ,IAAA,IAAA,IAAI,KAAJ,SAAA,GAAA,SAAA,GAAA,IAAI,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAA,IAAA,CAAA,IAAA,EAAG,KAAK,CAAC;AAC1B,KAAC,EACD,CAAC,YAAY,EAAE,IAAI,CAAC,CACvB;AAED,IAAA,QACIA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAC,CAAC,iBAAiB,GAAG,gBAAgB,EAAC,CAAC,EAAA;AAChE,QAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,cAAc,EAAE,CAAC,IAAI,EAAC,CAAC,EAAA;AACvD,YAAA,IAAI,KACDA,cAAC,CAAA,aAAA,CAAA,IAAI,EACG,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,EACR,EAAA,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,CAAC,CAAC,aAAa,CAAC,EACjC,kBAAkB,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAC1C,CACL;AAEA,YAAA,CAAC,kBAAkB,IAAIA,cAAA,CAAA,aAAA,CAAC,cAAc,EAAA,EAAC,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE,EAAC,OAAO,EAAC,CAAC,GAAI,CAC/E;AAEN,QAAAA,cAAA,CAAA,aAAA,CAAC,YAAY,EAAA,EACT,WAAW,EAAE,mBAAmB,EAChC,iBAAiB,EAAE,CAAC,CAAC,WAAW,CAAC,EACjC,IAAI,EAAC,WAAW,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EAC1B,CAAA;QAED,gBAAgB,KACbA,cAAA,CAAA,aAAA,CAAC,IAAI,EAAA,EACD,IAAI,EAAEC,mBAA0B,EAChC,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAC9B,KAAK,EAAE,0BAA0B,EACjC,MAAM,EAAE,qBAAqB,EAC/B,CAAA,CACL,CACC;AAEd;;;;"}
1
+ {"version":3,"file":"Header.js","sources":["../../../../../../src/components/AsideHeader/components/Header.tsx"],"sourcesContent":["import React, {useCallback} from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {Logo} from '../../Logo';\nimport {ASIDE_HEADER_COMPACT_WIDTH, HEADER_DIVIDER_HEIGHT} from '../../constants';\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {AsideHeaderItem} from '../types';\nimport {b} from '../utils';\n\nimport {CompositeBar} from './CompositeBar';\n\nimport headerDividerCollapsedIcon from '../../../../assets/icons/divider-collapsed.svg';\n\nconst DEFAULT_SUBHEADER_ITEMS: AsideHeaderItem[] = [];\nconst HEADER_COMPOSITE_ID = 'gravity-ui/navigation-header-composite-bar';\n\nexport const Header = () => {\n const {logo, onItemClick, onClosePanel, headerDecoration, subheaderItems, compact} =\n useAsideHeaderInnerContext();\n\n const onLogoClick = useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n onClosePanel?.();\n logo?.onClick?.(event);\n },\n [onClosePanel, logo],\n );\n\n return (\n <div className={b('header', {['with-decoration']: headerDecoration})}>\n {logo && (\n <Logo\n {...logo}\n onClick={onLogoClick}\n compact={compact}\n buttonClassName={b('logo-button')}\n iconPlaceClassName={b('logo-icon-place')}\n />\n )}\n\n <CompositeBar\n compositeId={HEADER_COMPOSITE_ID}\n type=\"subheader\"\n menuItemClassName={b('menu-item')}\n compact={compact}\n items={subheaderItems || DEFAULT_SUBHEADER_ITEMS}\n onItemClick={onItemClick}\n />\n\n {headerDecoration && (\n <Icon\n data={headerDividerCollapsedIcon}\n className={b('header-divider')}\n width={ASIDE_HEADER_COMPACT_WIDTH}\n height={HEADER_DIVIDER_HEIGHT}\n />\n )}\n </div>\n );\n};\n"],"names":["React","headerDividerCollapsedIcon"],"mappings":";;;;;;;;;AAcA,MAAM,uBAAuB,GAAsB,EAAE;AACrD,MAAM,mBAAmB,GAAG,4CAA4C;AAEjE,MAAM,MAAM,GAAG,MAAK;AACvB,IAAA,MAAM,EAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,OAAO,EAAC,GAC9E,0BAA0B,EAAE;AAEhC,IAAA,MAAM,WAAW,GAAG,WAAW,CAC3B,CAAC,KAAgD,KAAI;;AACjD,QAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI;QAChB,CAAA,EAAA,GAAA,IAAI,KAAJ,IAAA,IAAA,IAAI,KAAJ,SAAA,GAAA,SAAA,GAAA,IAAI,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAA,IAAA,CAAA,IAAA,EAAG,KAAK,CAAC;AAC1B,KAAC,EACD,CAAC,YAAY,EAAE,IAAI,CAAC,CACvB;AAED,IAAA,QACIA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAC,CAAC,iBAAiB,GAAG,gBAAgB,EAAC,CAAC,EAAA;AAC/D,QAAA,IAAI,KACDA,cAAC,CAAA,aAAA,CAAA,IAAI,EACG,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,EACR,EAAA,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,CAAC,CAAC,aAAa,CAAC,EACjC,kBAAkB,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAC1C,CACL;AAED,QAAAA,cAAA,CAAA,aAAA,CAAC,YAAY,EAAA,EACT,WAAW,EAAE,mBAAmB,EAChC,IAAI,EAAC,WAAW,EAChB,iBAAiB,EAAE,CAAC,CAAC,WAAW,CAAC,EACjC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,cAAc,IAAI,uBAAuB,EAChD,WAAW,EAAE,WAAW,EAC1B,CAAA;QAED,gBAAgB,KACbA,cAAA,CAAA,aAAA,CAAC,IAAI,EAAA,EACD,IAAI,EAAEC,mBAA0B,EAChC,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAC9B,KAAK,EAAE,0BAA0B,EACjC,MAAM,EAAE,qBAAqB,EAC/B,CAAA,CACL,CACC;AAEd;;;;"}
@@ -0,0 +1,2 @@
1
+ .AsideHeader-module__g-root___EuNRw{--gn-aside-top-panel-height:0px}
2
+ .AsideHeader-module__gn-aside-header___Z0Sa7{--gn-aside-header-min-width:56px;--_--item-margin-inline:8px;--gn-aside-header-item-expanded-radius:8px;--_--item-icon-background-size:38px;--_--background-color:var(--g-color-base-background);--_--decoration-collapsed-background-color:var(--g-color-base-warning-light);--_--decoration-expanded-background-color:var(--g-color-base-warning-light);--_--vertical-divider-line-color:var(--g-color-line-generic);--_--horizontal-divider-line-color:var(--g-color-line-generic);background-color:var(--g-color-base-background);height:100%;position:relative;width:100%}.AsideHeader-module__gn-aside-header__aside___AyP0y{background-color:var(--gn-aside-header-expanded-background-color,var(--gn-aside-header-background-color,var(--_--background-color)));box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;margin-top:var(--gn-top-alert-height,0);max-height:calc(100vh - var(--gn-top-alert-height, 0));position:sticky;top:var(--gn-top-alert-height,0);width:inherit;z-index:var(--gn-aside-header-z-index,100)}.AsideHeader-module__gn-aside-header__aside___AyP0y:after{background-color:var(--gn-aside-header-divider-vertical-color,var(--_--vertical-divider-line-color));content:"";height:100%;position:absolute;right:0;top:0;width:1px;z-index:2}.AsideHeader-module__gn-aside-header__aside-popup-anchor___N3tgM{inset:0;position:absolute;z-index:1}.AsideHeader-module__gn-aside-header__aside-content___w5GOS{--gradient-height:334px;display:flex;flex-direction:column;height:inherit;overflow-x:hidden;padding-top:var(--gn-aside-header-padding-top);position:relative;user-select:none;width:inherit;z-index:2}.AsideHeader-module__gn-aside-header__aside-content___w5GOS>.AsideHeader-module__gn-aside-header-logo___6MdXx{margin:8px 0}.AsideHeader-module__gn-aside-header__aside-content_with-decoration___UsCye{background:linear-gradient(180deg,var(--gn-aside-header-decoration-expanded-background-color,var(--_--decoration-expanded-background-color)) calc(var(--gradient-height)*.33),transparent calc(var(--gradient-height)*.88))}.AsideHeader-module__gn-aside-header__aside-custom-background___-bqdE{bottom:0;display:flex;position:absolute;top:0;width:var(--gn-aside-header-size);z-index:-1}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__aside___AyP0y{background-color:var(--gn-aside-header-collapsed-background-color,var(--gn-aside-header-background-color,var(--_--background-color)))}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__aside-content___w5GOS{background:transparent}.AsideHeader-module__gn-aside-header__header___m5aIU{--gn-aside-header-header-divider-height:29px;box-sizing:border-box;flex:none;padding-bottom:22px;padding-top:8px;position:relative;width:100%;z-index:1}.AsideHeader-module__gn-aside-header__header___m5aIU .AsideHeader-module__gn-aside-header__header-divider___lIG-e{bottom:0;color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));display:none;left:0;position:absolute;z-index:-2}.AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO:before{background-color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));content:"";display:none;height:calc(100% - var(--gn-aside-header-header-divider-height));left:0;position:absolute;top:0;width:100%;z-index:-2}.AsideHeader-module__gn-aside-header__header___m5aIU:after{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));bottom:12px;content:"";height:1px;left:0;position:absolute;width:100%;z-index:-2}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header___m5aIU:before, .AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO .AsideHeader-module__gn-aside-header__header-divider___lIG-e{display:block}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO:after{display:none}.AsideHeader-module__gn-aside-header__logo-button___5u2iH .AsideHeader-module__gn-aside-header__logo-icon-place___3Oo9i{height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));width:var(--gn-aside-header-min-width)}.AsideHeader-module__gn-aside-header__menu-items___SOI2-{flex-grow:1}.AsideHeader-module__gn-aside-header__menu-item___q2y31:not(:has([data-type=action])){margin-inline:var(--_--item-margin-inline)}.AsideHeader-module__gn-aside-header__menu-item___q2y31:has([data-type=regular]), .AsideHeader-module__gn-aside-header__menu-item_type_regular___XYYbc, .AsideHeader-module__gn-aside-header__root-menu-item___eNfkk[class]:hover{border-radius:var(--gn-aside-header-item-expanded-radius,8px)}.AsideHeader-module__gn-aside-header__footer___vmoTl{display:flex;flex-direction:column;flex-shrink:0;margin:var(--g-spacing-2) var(--_--item-margin-inline)}.AsideHeader-module__gn-aside-header__panels___-fdu4{z-index:var(--gn-aside-header-panel-z-index,98)}.AsideHeader-module__gn-aside-header__panel___HywH6, .AsideHeader-module__gn-aside-header__panel___HywH6.g-drawer__item{bottom:0;height:auto;top:0}.AsideHeader-module__gn-aside-header__pane-container___y-v2e{display:flex;flex-direction:row;outline:none;overflow:visible;user-select:text}.AsideHeader-module__gn-aside-header__top-alert___hY12r{background:var(--g-color-base-background);position:fixed;top:0;width:100%;z-index:var(--gn-aside-header-pane-top-z-index,98)}.AsideHeader-module__gn-aside-header__content___4-mBl{margin-top:var(--gn-top-alert-height,0);width:calc(100% - var(--gn-aside-header-size));z-index:var(--gn-aside-header-content-z-index,95)}.AsideHeader-module__gn-aside-header__all-pages-panel___O94IU{width:fit-content!important}
@@ -1,3 +1,4 @@
1
+ import './AsideFallback.css';
1
2
  import React__default from 'react';
2
3
  import { Icon } from '@gravity-ui/uikit';
3
4
  import { ASIDE_HEADER_COMPACT_WIDTH, HEADER_DIVIDER_HEIGHT, ITEM_HEIGHT } from '../../../constants.js';
@@ -0,0 +1,2 @@
1
+ .AsideHeader-module__g-root___EuNRw{--gn-aside-top-panel-height:0px}
2
+ .AsideHeader-module__gn-aside-header___Z0Sa7{--gn-aside-header-min-width:56px;--_--item-margin-inline:8px;--gn-aside-header-item-expanded-radius:8px;--_--item-icon-background-size:38px;--_--background-color:var(--g-color-base-background);--_--decoration-collapsed-background-color:var(--g-color-base-warning-light);--_--decoration-expanded-background-color:var(--g-color-base-warning-light);--_--vertical-divider-line-color:var(--g-color-line-generic);--_--horizontal-divider-line-color:var(--g-color-line-generic);background-color:var(--g-color-base-background);height:100%;position:relative;width:100%}.AsideHeader-module__gn-aside-header__aside___AyP0y{background-color:var(--gn-aside-header-expanded-background-color,var(--gn-aside-header-background-color,var(--_--background-color)));box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;margin-top:var(--gn-top-alert-height,0);max-height:calc(100vh - var(--gn-top-alert-height, 0));position:sticky;top:var(--gn-top-alert-height,0);width:inherit;z-index:var(--gn-aside-header-z-index,100)}.AsideHeader-module__gn-aside-header__aside___AyP0y:after{background-color:var(--gn-aside-header-divider-vertical-color,var(--_--vertical-divider-line-color));content:"";height:100%;position:absolute;right:0;top:0;width:1px;z-index:2}.AsideHeader-module__gn-aside-header__aside-popup-anchor___N3tgM{inset:0;position:absolute;z-index:1}.AsideHeader-module__gn-aside-header__aside-content___w5GOS{--gradient-height:334px;display:flex;flex-direction:column;height:inherit;overflow-x:hidden;padding-top:var(--gn-aside-header-padding-top);position:relative;user-select:none;width:inherit;z-index:2}.AsideHeader-module__gn-aside-header__aside-content___w5GOS>.AsideHeader-module__gn-aside-header-logo___6MdXx{margin:8px 0}.AsideHeader-module__gn-aside-header__aside-content_with-decoration___UsCye{background:linear-gradient(180deg,var(--gn-aside-header-decoration-expanded-background-color,var(--_--decoration-expanded-background-color)) calc(var(--gradient-height)*.33),transparent calc(var(--gradient-height)*.88))}.AsideHeader-module__gn-aside-header__aside-custom-background___-bqdE{bottom:0;display:flex;position:absolute;top:0;width:var(--gn-aside-header-size);z-index:-1}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__aside___AyP0y{background-color:var(--gn-aside-header-collapsed-background-color,var(--gn-aside-header-background-color,var(--_--background-color)))}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__aside-content___w5GOS{background:transparent}.AsideHeader-module__gn-aside-header__header___m5aIU{--gn-aside-header-header-divider-height:29px;box-sizing:border-box;flex:none;padding-bottom:22px;padding-top:8px;position:relative;width:100%;z-index:1}.AsideHeader-module__gn-aside-header__header___m5aIU .AsideHeader-module__gn-aside-header__header-divider___lIG-e{bottom:0;color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));display:none;left:0;position:absolute;z-index:-2}.AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO:before{background-color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));content:"";display:none;height:calc(100% - var(--gn-aside-header-header-divider-height));left:0;position:absolute;top:0;width:100%;z-index:-2}.AsideHeader-module__gn-aside-header__header___m5aIU:after{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));bottom:12px;content:"";height:1px;left:0;position:absolute;width:100%;z-index:-2}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header___m5aIU:before, .AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO .AsideHeader-module__gn-aside-header__header-divider___lIG-e{display:block}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO:after{display:none}.AsideHeader-module__gn-aside-header__logo-button___5u2iH .AsideHeader-module__gn-aside-header__logo-icon-place___3Oo9i{height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));width:var(--gn-aside-header-min-width)}.AsideHeader-module__gn-aside-header__menu-items___SOI2-{flex-grow:1}.AsideHeader-module__gn-aside-header__menu-item___q2y31:not(:has([data-type=action])){margin-inline:var(--_--item-margin-inline)}.AsideHeader-module__gn-aside-header__menu-item___q2y31:has([data-type=regular]), .AsideHeader-module__gn-aside-header__menu-item_type_regular___XYYbc, .AsideHeader-module__gn-aside-header__root-menu-item___eNfkk[class]:hover{border-radius:var(--gn-aside-header-item-expanded-radius,8px)}.AsideHeader-module__gn-aside-header__footer___vmoTl{display:flex;flex-direction:column;flex-shrink:0;margin:var(--g-spacing-2) var(--_--item-margin-inline)}.AsideHeader-module__gn-aside-header__panels___-fdu4{z-index:var(--gn-aside-header-panel-z-index,98)}.AsideHeader-module__gn-aside-header__panel___HywH6, .AsideHeader-module__gn-aside-header__panel___HywH6.g-drawer__item{bottom:0;height:auto;top:0}.AsideHeader-module__gn-aside-header__pane-container___y-v2e{display:flex;flex-direction:row;outline:none;overflow:visible;user-select:text}.AsideHeader-module__gn-aside-header__top-alert___hY12r{background:var(--g-color-base-background);position:fixed;top:0;width:100%;z-index:var(--gn-aside-header-pane-top-z-index,98)}.AsideHeader-module__gn-aside-header__content___4-mBl{margin-top:var(--gn-top-alert-height,0);width:calc(100% - var(--gn-aside-header-size));z-index:var(--gn-aside-header-content-z-index,95)}.AsideHeader-module__gn-aside-header__all-pages-panel___O94IU{width:fit-content!important}
@@ -2,9 +2,8 @@ import React, { PropsWithChildren } from 'react';
2
2
  import { ContentProps } from '../../../Content';
3
3
  import { LayoutProps } from '../../types';
4
4
  export interface PageLayoutProps extends PropsWithChildren<LayoutProps> {
5
- onChangeCompact?: (compact: boolean) => void;
6
5
  }
7
- declare const PageLayout: (({ compact, className, children, topAlert, onChangeCompact }: PageLayoutProps) => React.JSX.Element) & {
6
+ declare const PageLayout: (({ compact, className, children, topAlert }: PageLayoutProps) => React.JSX.Element) & {
8
7
  Content: React.FC<React.PropsWithChildren<Pick<ContentProps, "renderContent">>>;
9
8
  };
10
9
  export { PageLayout };
@@ -1,8 +1,8 @@
1
+ import './PageLayout.css';
1
2
  import React__default, { useMemo, Suspense } from 'react';
2
3
  import { Content } from '../../../Content/Content.js';
3
- import { ASIDE_HEADER_EXPANDED_WIDTH, ASIDE_HEADER_COMPACT_WIDTH } from '../../../constants.js';
4
+ import { ASIDE_HEADER_COMPACT_WIDTH, ASIDE_HEADER_EXPANDED_WIDTH } from '../../../constants.js';
4
5
  import { AsideHeaderContextProvider, useAsideHeaderContext } from '../../AsideHeaderContext.js';
5
- import { useIsExpanded } from '../../hooks/useIsExpanded.js';
6
6
  import { b } from '../../utils.js';
7
7
 
8
8
  const TopAlert = React__default.lazy(() => import('../../../TopAlert/index.js').then((module) => ({ default: module.TopAlert })));
@@ -18,17 +18,9 @@ function calcEstimatedTopAlertHeight(topAlert) {
18
18
  (topAlert.title ? TITLE_HEIGHT_BONUS : 0) -
19
19
  (topAlert.dense ? DENSE_HEIGHT_REDUCTION : 0));
20
20
  }
21
- const Layout = ({ compact, className, children, topAlert, onChangeCompact }) => {
22
- const { isExpanded, onExpand, onFold } = useIsExpanded(compact);
23
- const size = isExpanded ? ASIDE_HEADER_EXPANDED_WIDTH : ASIDE_HEADER_COMPACT_WIDTH;
24
- const asideHeaderContextValue = useMemo(() => ({
25
- size,
26
- compact,
27
- isExpanded,
28
- onChangeCompact,
29
- onExpand,
30
- onFold,
31
- }), [size, compact, isExpanded, onChangeCompact, onExpand, onFold]);
21
+ const Layout = ({ compact, className, children, topAlert }) => {
22
+ const size = compact ? ASIDE_HEADER_COMPACT_WIDTH : ASIDE_HEADER_EXPANDED_WIDTH;
23
+ const asideHeaderContextValue = useMemo(() => ({ size, compact }), [compact, size]);
32
24
  const estimatedTopAlertHeight = calcEstimatedTopAlertHeight(topAlert);
33
25
  // Reserve margin immediately on server render through inline variable on container.
34
26
  // After TopAlert mount, the exact height will be set by hook.
@@ -46,7 +38,7 @@ const Layout = ({ compact, className, children, topAlert, onChangeCompact }) =>
46
38
  };
47
39
  const preloadHeightValue = getPreloadHeightValue();
48
40
  return (React__default.createElement(AsideHeaderContextProvider, { value: asideHeaderContextValue },
49
- React__default.createElement("div", { className: b({ compact: !isExpanded }, className), style: Object.assign({}, { '--gn-aside-header-size': `${size}px` }) },
41
+ React__default.createElement("div", { className: b({ compact }, className), style: Object.assign({}, { '--gn-aside-header-size': `${size}px` }) },
50
42
  typeof preloadHeightValue === 'number' ? (React__default.createElement("style", { dangerouslySetInnerHTML: {
51
43
  __html: `.g-root{--gn-top-alert-height:${preloadHeightValue}px;}`,
52
44
  } })) : null,
@@ -55,9 +47,8 @@ const Layout = ({ compact, className, children, topAlert, onChangeCompact }) =>
55
47
  React__default.createElement("div", { className: b('pane-container') }, children))));
56
48
  };
57
49
  const ConnectedContent = ({ children, renderContent, }) => {
58
- const { size, compact, isExpanded } = useAsideHeaderContext();
59
- const isExpandedByHover = compact && isExpanded;
60
- return (React__default.createElement(Content, { size: size, className: b('content', { 'expanded-by-hover': isExpandedByHover }), renderContent: renderContent }, children));
50
+ const { size } = useAsideHeaderContext();
51
+ return (React__default.createElement(Content, { size: size, className: b('content'), renderContent: renderContent }, children));
61
52
  };
62
53
  const PageLayout = Object.assign(Layout, {
63
54
  Content: ConnectedContent,
@@ -1 +1 @@
1
- {"version":3,"file":"PageLayout.js","sources":["../../../../../../../src/components/AsideHeader/components/PageLayout/PageLayout.tsx"],"sourcesContent":["import React, {PropsWithChildren, Suspense, useMemo} from 'react';\n\nimport {Content, ContentProps} from '../../../Content';\nimport {ASIDE_HEADER_COMPACT_WIDTH, ASIDE_HEADER_EXPANDED_WIDTH} from '../../../constants';\nimport {TopAlertProps} from '../../../types';\nimport {AsideHeaderContextProvider, useAsideHeaderContext} from '../../AsideHeaderContext';\nimport {useIsExpanded} from '../../hooks/useIsExpanded';\nimport {LayoutProps} from '../../types';\nimport {b} from '../../utils';\n\nconst TopAlert = React.lazy(() =>\n import('../../../TopAlert').then((module) => ({default: module.TopAlert})),\n);\n\n// Constants for TopAlert height calculation (in pixels)\nconst BASE_ALERT_HEIGHT = 60; // Base height of the alert component\nconst TITLE_HEIGHT_BONUS = 14; // Additional height when title is present\nconst DENSE_HEIGHT_REDUCTION = 16; // Height reduction when dense mode is enabled\n\nfunction calcEstimatedTopAlertHeight(topAlert?: TopAlertProps) {\n if (!topAlert || 'render' in topAlert) {\n return 0;\n }\n\n return (\n BASE_ALERT_HEIGHT +\n (topAlert.title ? TITLE_HEIGHT_BONUS : 0) -\n (topAlert.dense ? DENSE_HEIGHT_REDUCTION : 0)\n );\n}\n\nexport interface PageLayoutProps extends PropsWithChildren<LayoutProps> {\n onChangeCompact?: (compact: boolean) => void;\n}\n\nconst Layout = ({compact, className, children, topAlert, onChangeCompact}: PageLayoutProps) => {\n const {isExpanded, onExpand, onFold} = useIsExpanded(compact);\n\n const size = isExpanded ? ASIDE_HEADER_EXPANDED_WIDTH : ASIDE_HEADER_COMPACT_WIDTH;\n\n const asideHeaderContextValue = useMemo(\n () => ({\n size,\n compact,\n isExpanded,\n onChangeCompact,\n onExpand,\n onFold,\n }),\n [size, compact, isExpanded, onChangeCompact, onExpand, onFold],\n );\n\n const estimatedTopAlertHeight = calcEstimatedTopAlertHeight(topAlert);\n\n // Reserve margin immediately on server render through inline variable on container.\n // After TopAlert mount, the exact height will be set by hook.\n const getPreloadHeightValue = (): number | undefined => {\n if (!topAlert || 'render' in topAlert || typeof topAlert.preloadHeight === 'undefined') {\n return undefined;\n }\n\n if (topAlert.preloadHeight === true) {\n return estimatedTopAlertHeight;\n }\n\n if (typeof topAlert.preloadHeight === 'number') {\n return topAlert.preloadHeight;\n }\n\n return undefined;\n };\n\n const preloadHeightValue = getPreloadHeightValue();\n\n return (\n <AsideHeaderContextProvider value={asideHeaderContextValue}>\n <div\n className={b({compact: !isExpanded}, className)}\n style={{\n ...({'--gn-aside-header-size': `${size}px`} as React.CSSProperties),\n }}\n >\n {typeof preloadHeightValue === 'number' ? (\n <style\n dangerouslySetInnerHTML={{\n __html: `.g-root{--gn-top-alert-height:${preloadHeightValue}px;}`,\n }}\n />\n ) : null}\n {topAlert && (\n <Suspense fallback={null}>\n <TopAlert className={b('top-alert')} alert={topAlert} />\n </Suspense>\n )}\n <div className={b('pane-container')}>{children}</div>\n </div>\n </AsideHeaderContextProvider>\n );\n};\n\nconst ConnectedContent: React.FC<PropsWithChildren<Pick<ContentProps, 'renderContent'>>> = ({\n children,\n renderContent,\n}) => {\n const {size, compact, isExpanded} = useAsideHeaderContext();\n const isExpandedByHover = compact && isExpanded;\n\n return (\n <Content\n size={size}\n className={b('content', {'expanded-by-hover': isExpandedByHover})}\n renderContent={renderContent}\n >\n {children}\n </Content>\n );\n};\n\nconst PageLayout = Object.assign(Layout, {\n Content: ConnectedContent,\n});\n\nexport {PageLayout};\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"PageLayout.js","sources":["../../../../../../../src/components/AsideHeader/components/PageLayout/PageLayout.tsx"],"sourcesContent":["import React, {PropsWithChildren, Suspense, useMemo} from 'react';\n\nimport {Content, ContentProps} from '../../../Content';\nimport {ASIDE_HEADER_COMPACT_WIDTH, ASIDE_HEADER_EXPANDED_WIDTH} from '../../../constants';\nimport {TopAlertProps} from '../../../types';\nimport {AsideHeaderContextProvider, useAsideHeaderContext} from '../../AsideHeaderContext';\nimport {LayoutProps} from '../../types';\nimport {b} from '../../utils';\n\nconst TopAlert = React.lazy(() =>\n import('../../../TopAlert').then((module) => ({default: module.TopAlert})),\n);\n\n// Constants for TopAlert height calculation (in pixels)\nconst BASE_ALERT_HEIGHT = 60; // Base height of the alert component\nconst TITLE_HEIGHT_BONUS = 14; // Additional height when title is present\nconst DENSE_HEIGHT_REDUCTION = 16; // Height reduction when dense mode is enabled\n\nfunction calcEstimatedTopAlertHeight(topAlert?: TopAlertProps) {\n if (!topAlert || 'render' in topAlert) {\n return 0;\n }\n\n return (\n BASE_ALERT_HEIGHT +\n (topAlert.title ? TITLE_HEIGHT_BONUS : 0) -\n (topAlert.dense ? DENSE_HEIGHT_REDUCTION : 0)\n );\n}\n\nexport interface PageLayoutProps extends PropsWithChildren<LayoutProps> {}\n\nconst Layout = ({compact, className, children, topAlert}: PageLayoutProps) => {\n const size = compact ? ASIDE_HEADER_COMPACT_WIDTH : ASIDE_HEADER_EXPANDED_WIDTH;\n const asideHeaderContextValue = useMemo(() => ({size, compact}), [compact, size]);\n\n const estimatedTopAlertHeight = calcEstimatedTopAlertHeight(topAlert);\n\n // Reserve margin immediately on server render through inline variable on container.\n // After TopAlert mount, the exact height will be set by hook.\n const getPreloadHeightValue = (): number | undefined => {\n if (!topAlert || 'render' in topAlert || typeof topAlert.preloadHeight === 'undefined') {\n return undefined;\n }\n\n if (topAlert.preloadHeight === true) {\n return estimatedTopAlertHeight;\n }\n\n if (typeof topAlert.preloadHeight === 'number') {\n return topAlert.preloadHeight;\n }\n\n return undefined;\n };\n\n const preloadHeightValue = getPreloadHeightValue();\n\n return (\n <AsideHeaderContextProvider value={asideHeaderContextValue}>\n <div\n className={b({compact}, className)}\n style={{\n ...({'--gn-aside-header-size': `${size}px`} as React.CSSProperties),\n }}\n >\n {typeof preloadHeightValue === 'number' ? (\n <style\n dangerouslySetInnerHTML={{\n __html: `.g-root{--gn-top-alert-height:${preloadHeightValue}px;}`,\n }}\n />\n ) : null}\n {topAlert && (\n <Suspense fallback={null}>\n <TopAlert className={b('top-alert')} alert={topAlert} />\n </Suspense>\n )}\n <div className={b('pane-container')}>{children}</div>\n </div>\n </AsideHeaderContextProvider>\n );\n};\n\nconst ConnectedContent: React.FC<PropsWithChildren<Pick<ContentProps, 'renderContent'>>> = ({\n children,\n renderContent,\n}) => {\n const {size} = useAsideHeaderContext();\n\n return (\n <Content size={size} className={b('content')} renderContent={renderContent}>\n {children}\n </Content>\n );\n};\n\nconst PageLayout = Object.assign(Layout, {\n Content: ConnectedContent,\n});\n\nexport {PageLayout};\n"],"names":["React"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ .AsideHeader-module__g-root___EuNRw{--gn-aside-top-panel-height:0px}
2
+ .AsideHeader-module__gn-aside-header___Z0Sa7{--gn-aside-header-min-width:56px;--_--item-margin-inline:8px;--gn-aside-header-item-expanded-radius:8px;--_--item-icon-background-size:38px;--_--background-color:var(--g-color-base-background);--_--decoration-collapsed-background-color:var(--g-color-base-warning-light);--_--decoration-expanded-background-color:var(--g-color-base-warning-light);--_--vertical-divider-line-color:var(--g-color-line-generic);--_--horizontal-divider-line-color:var(--g-color-line-generic);background-color:var(--g-color-base-background);height:100%;position:relative;width:100%}.AsideHeader-module__gn-aside-header__aside___AyP0y{background-color:var(--gn-aside-header-expanded-background-color,var(--gn-aside-header-background-color,var(--_--background-color)));box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;margin-top:var(--gn-top-alert-height,0);max-height:calc(100vh - var(--gn-top-alert-height, 0));position:sticky;top:var(--gn-top-alert-height,0);width:inherit;z-index:var(--gn-aside-header-z-index,100)}.AsideHeader-module__gn-aside-header__aside___AyP0y:after{background-color:var(--gn-aside-header-divider-vertical-color,var(--_--vertical-divider-line-color));content:"";height:100%;position:absolute;right:0;top:0;width:1px;z-index:2}.AsideHeader-module__gn-aside-header__aside-popup-anchor___N3tgM{inset:0;position:absolute;z-index:1}.AsideHeader-module__gn-aside-header__aside-content___w5GOS{--gradient-height:334px;display:flex;flex-direction:column;height:inherit;overflow-x:hidden;padding-top:var(--gn-aside-header-padding-top);position:relative;user-select:none;width:inherit;z-index:2}.AsideHeader-module__gn-aside-header__aside-content___w5GOS>.AsideHeader-module__gn-aside-header-logo___6MdXx{margin:8px 0}.AsideHeader-module__gn-aside-header__aside-content_with-decoration___UsCye{background:linear-gradient(180deg,var(--gn-aside-header-decoration-expanded-background-color,var(--_--decoration-expanded-background-color)) calc(var(--gradient-height)*.33),transparent calc(var(--gradient-height)*.88))}.AsideHeader-module__gn-aside-header__aside-custom-background___-bqdE{bottom:0;display:flex;position:absolute;top:0;width:var(--gn-aside-header-size);z-index:-1}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__aside___AyP0y{background-color:var(--gn-aside-header-collapsed-background-color,var(--gn-aside-header-background-color,var(--_--background-color)))}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__aside-content___w5GOS{background:transparent}.AsideHeader-module__gn-aside-header__header___m5aIU{--gn-aside-header-header-divider-height:29px;box-sizing:border-box;flex:none;padding-bottom:22px;padding-top:8px;position:relative;width:100%;z-index:1}.AsideHeader-module__gn-aside-header__header___m5aIU .AsideHeader-module__gn-aside-header__header-divider___lIG-e{bottom:0;color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));display:none;left:0;position:absolute;z-index:-2}.AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO:before{background-color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));content:"";display:none;height:calc(100% - var(--gn-aside-header-header-divider-height));left:0;position:absolute;top:0;width:100%;z-index:-2}.AsideHeader-module__gn-aside-header__header___m5aIU:after{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));bottom:12px;content:"";height:1px;left:0;position:absolute;width:100%;z-index:-2}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header___m5aIU:before, .AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO .AsideHeader-module__gn-aside-header__header-divider___lIG-e{display:block}.AsideHeader-module__gn-aside-header_compact___z-nL- .AsideHeader-module__gn-aside-header__header_with-decoration___3dTJO:after{display:none}.AsideHeader-module__gn-aside-header__logo-button___5u2iH .AsideHeader-module__gn-aside-header__logo-icon-place___3Oo9i{height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));width:var(--gn-aside-header-min-width)}.AsideHeader-module__gn-aside-header__menu-items___SOI2-{flex-grow:1}.AsideHeader-module__gn-aside-header__menu-item___q2y31:not(:has([data-type=action])){margin-inline:var(--_--item-margin-inline)}.AsideHeader-module__gn-aside-header__menu-item___q2y31:has([data-type=regular]), .AsideHeader-module__gn-aside-header__menu-item_type_regular___XYYbc, .AsideHeader-module__gn-aside-header__root-menu-item___eNfkk[class]:hover{border-radius:var(--gn-aside-header-item-expanded-radius,8px)}.AsideHeader-module__gn-aside-header__footer___vmoTl{display:flex;flex-direction:column;flex-shrink:0;margin:var(--g-spacing-2) var(--_--item-margin-inline)}.AsideHeader-module__gn-aside-header__panels___-fdu4{z-index:var(--gn-aside-header-panel-z-index,98)}.AsideHeader-module__gn-aside-header__panel___HywH6, .AsideHeader-module__gn-aside-header__panel___HywH6.g-drawer__item{bottom:0;height:auto;top:0}.AsideHeader-module__gn-aside-header__pane-container___y-v2e{display:flex;flex-direction:row;outline:none;overflow:visible;user-select:text}.AsideHeader-module__gn-aside-header__top-alert___hY12r{background:var(--g-color-base-background);position:fixed;top:0;width:100%;z-index:var(--gn-aside-header-pane-top-z-index,98)}.AsideHeader-module__gn-aside-header__content___4-mBl{margin-top:var(--gn-top-alert-height,0);width:calc(100% - var(--gn-aside-header-size));z-index:var(--gn-aside-header-content-z-index,95)}.AsideHeader-module__gn-aside-header__all-pages-panel___O94IU{width:fit-content!important}
@@ -1,15 +1,12 @@
1
+ import './PageLayoutAside.css';
1
2
  import React__default from 'react';
2
3
  import { FirstPanel } from '../FirstPanel.js';
3
4
  import { useAsideHeaderContext, AsideHeaderInnerContextProvider } from '../../AsideHeaderContext.js';
4
5
  import { useAsideHeaderInnerContextValue } from '../../useAsideHeaderInnerContextValue.js';
5
6
 
6
7
  const PageLayoutAside = React__default.forwardRef((props, ref) => {
7
- const { size, compact, isExpanded, onExpand, onFold } = useAsideHeaderContext();
8
- const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue(Object.assign({ size,
9
- compact,
10
- isExpanded,
11
- onExpand,
12
- onFold }, props));
8
+ const { size, compact } = useAsideHeaderContext();
9
+ const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue(Object.assign(Object.assign({}, props), { size, compact }));
13
10
  return (React__default.createElement(AsideHeaderInnerContextProvider, { value: asideHeaderInnerContextValue },
14
11
  React__default.createElement(FirstPanel, { ref: ref })));
15
12
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PageLayoutAside.js","sources":["../../../../../../../src/components/AsideHeader/components/PageLayout/PageLayoutAside.tsx"],"sourcesContent":["import React from 'react';\n\nimport {FirstPanel} from '..';\nimport {AsideHeaderInnerContextProvider, useAsideHeaderContext} from '../../AsideHeaderContext';\nimport {AsideHeaderProps} from '../../types';\nimport {useAsideHeaderInnerContextValue} from '../../useAsideHeaderInnerContextValue';\n\ntype Props = Omit<AsideHeaderProps, 'compact' | 'size'>;\n\nexport const PageLayoutAside = React.forwardRef<HTMLDivElement, Props>((props, ref) => {\n const {size, compact, isExpanded, onExpand, onFold} = useAsideHeaderContext();\n\n const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue({\n size,\n compact,\n isExpanded,\n onExpand,\n onFold,\n ...props,\n });\n\n return (\n <AsideHeaderInnerContextProvider value={asideHeaderInnerContextValue}>\n <FirstPanel ref={ref} />\n </AsideHeaderInnerContextProvider>\n );\n});\n\nPageLayoutAside.displayName = 'PageLayoutAside';\n"],"names":["React"],"mappings":";;;;;AASO,MAAM,eAAe,GAAGA,cAAK,CAAC,UAAU,CAAwB,CAAC,KAAK,EAAE,GAAG,KAAI;AAClF,IAAA,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAC,GAAG,qBAAqB,EAAE;AAE7E,IAAA,MAAM,4BAA4B,GAAG,+BAA+B,CAAA,MAAA,CAAA,MAAA,CAAA,EAChE,IAAI;QACJ,OAAO;QACP,UAAU;QACV,QAAQ;QACR,MAAM,EAAA,EACH,KAAK,CAAA,CACV;AAEF,IAAA,QACIA,cAAC,CAAA,aAAA,CAAA,+BAA+B,EAAC,EAAA,KAAK,EAAE,4BAA4B,EAAA;QAChEA,cAAC,CAAA,aAAA,CAAA,UAAU,IAAC,GAAG,EAAE,GAAG,EAAI,CAAA,CACM;AAE1C,CAAC;AAED,eAAe,CAAC,WAAW,GAAG,iBAAiB;;;;"}
1
+ {"version":3,"file":"PageLayoutAside.js","sources":["../../../../../../../src/components/AsideHeader/components/PageLayout/PageLayoutAside.tsx"],"sourcesContent":["import React from 'react';\n\nimport {FirstPanel} from '..';\nimport {AsideHeaderInnerContextProvider, useAsideHeaderContext} from '../../AsideHeaderContext';\nimport {AsideHeaderProps} from '../../types';\nimport {useAsideHeaderInnerContextValue} from '../../useAsideHeaderInnerContextValue';\n\ntype Props = Omit<AsideHeaderProps, 'compact' | 'size'>;\n\nexport const PageLayoutAside = React.forwardRef<HTMLDivElement, Props>((props, ref) => {\n const {size, compact} = useAsideHeaderContext();\n\n const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue({...props, size, compact});\n\n return (\n <AsideHeaderInnerContextProvider value={asideHeaderInnerContextValue}>\n <FirstPanel ref={ref} />\n </AsideHeaderInnerContextProvider>\n );\n});\n\nPageLayoutAside.displayName = 'PageLayoutAside';\n"],"names":["React"],"mappings":";;;;;AASO,MAAM,eAAe,GAAGA,cAAK,CAAC,UAAU,CAAwB,CAAC,KAAK,EAAE,GAAG,KAAI;IAClF,MAAM,EAAC,IAAI,EAAE,OAAO,EAAC,GAAG,qBAAqB,EAAE;IAE/C,MAAM,4BAA4B,GAAG,+BAA+B,CAAK,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,KAAE,IAAI,EAAE,OAAO,EAAA,CAAA,CAAE;AAE/F,IAAA,QACIA,cAAC,CAAA,aAAA,CAAA,+BAA+B,EAAC,EAAA,KAAK,EAAE,4BAA4B,EAAA;QAChEA,cAAC,CAAA,aAAA,CAAA,UAAU,IAAC,GAAG,EAAE,GAAG,EAAI,CAAA,CACM;AAE1C,CAAC;AAED,eAAe,CAAC,WAAW,GAAG,iBAAiB;;;;"}
@@ -1,2 +1,2 @@
1
1
  import React from 'react';
2
- export declare const Panels: React.FC;
2
+ export declare const Panels: () => React.JSX.Element | null;
@@ -1,26 +1,15 @@
1
- import React__default, { useCallback } from 'react';
1
+ import { __rest } from '../../../node_modules/tslib/tslib.es6.js';
2
+ import React__default from 'react';
2
3
  import { Drawer } from '@gravity-ui/uikit';
3
4
  import { useAsideHeaderInnerContext } from '../AsideHeaderContext.js';
4
5
  import { b } from '../utils.js';
5
6
 
6
7
  const Panels = () => {
7
- const { panelItems, size, onClosePanel, onExpand, onFold } = useAsideHeaderInnerContext();
8
- const handleVeilClick = useCallback(() => {
9
- onFold === null || onFold === undefined ? undefined : onFold();
10
- onClosePanel === null || onClosePanel === undefined ? undefined : onClosePanel();
11
- }, [onClosePanel, onFold]);
12
- const handleOpenChange = useCallback((open, _event, reason) => {
13
- if (reason === 'outside-press') {
14
- handleVeilClick();
15
- return;
16
- }
17
- if (!open) {
18
- onClosePanel === null || onClosePanel === undefined ? undefined : onClosePanel();
19
- }
20
- return;
21
- }, [handleVeilClick, onClosePanel]);
22
- return panelItems ? (React__default.createElement(React__default.Fragment, null, panelItems.map((item) => (React__default.createElement(Drawer, { key: item.id, className: b('panels'), open: item.visible, onOpenChange: handleOpenChange, style: { left: size }, contentClassName: b('panel', item.className) },
23
- React__default.createElement("div", { onMouseEnter: onExpand, className: b('panel-content') }, item.content)))))) : null;
8
+ const { panelItems, onClosePanel, size } = useAsideHeaderInnerContext();
9
+ return panelItems ? (React__default.createElement(React__default.Fragment, null, panelItems.map((_a) => {
10
+ var { id, className, style: itemStyle } = _a, rest = __rest(_a, ["id", "className", "style"]);
11
+ return (React__default.createElement(Drawer, Object.assign({}, rest, { key: id, className: b('panels'), onOpenChange: (open) => !open && (onClosePanel === null || onClosePanel === undefined ? undefined : onClosePanel()), style: Object.assign(Object.assign({}, itemStyle), { left: size, top: 'var(--gn-top-alert-height, 0px)' }), contentClassName: b('panel', className) })));
12
+ }))) : null;
24
13
  };
25
14
 
26
15
  export { Panels };
@@ -1 +1 @@
1
- {"version":3,"file":"Panels.js","sources":["../../../../../../src/components/AsideHeader/components/Panels.tsx"],"sourcesContent":["import React, {useCallback} from 'react';\n\nimport {Drawer, DrawerProps} from '@gravity-ui/uikit';\n\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {b} from '../utils';\n\nexport const Panels: React.FC = () => {\n const {panelItems, size, onClosePanel, onExpand, onFold} = useAsideHeaderInnerContext();\n\n const handleVeilClick = useCallback(() => {\n onFold?.();\n onClosePanel?.();\n }, [onClosePanel, onFold]);\n\n const handleOpenChange: Required<DrawerProps>['onOpenChange'] = useCallback(\n (open, _event, reason) => {\n if (reason === 'outside-press') {\n handleVeilClick();\n return;\n }\n\n if (!open) {\n onClosePanel?.();\n }\n\n return;\n },\n [handleVeilClick, onClosePanel],\n );\n\n return panelItems ? (\n <React.Fragment>\n {panelItems.map((item) => (\n <Drawer\n key={item.id}\n className={b('panels')}\n open={item.visible}\n onOpenChange={handleOpenChange}\n style={{left: size}}\n contentClassName={b('panel', item.className)}\n >\n <div onMouseEnter={onExpand} className={b('panel-content')}>\n {item.content}\n </div>\n </Drawer>\n ))}\n </React.Fragment>\n ) : null;\n};\n"],"names":["React"],"mappings":";;;;;AAOO,MAAM,MAAM,GAAa,MAAK;AACjC,IAAA,MAAM,EAAC,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAC,GAAG,0BAA0B,EAAE;AAEvF,IAAA,MAAM,eAAe,GAAG,WAAW,CAAC,MAAK;AACrC,QAAA,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,SAAA,GAAA,SAAA,GAAA,MAAM,EAAI;AACV,QAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI;AACpB,KAAC,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAE1B,MAAM,gBAAgB,GAA0C,WAAW,CACvE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,KAAI;AACrB,QAAA,IAAI,MAAM,KAAK,eAAe,EAAE;AAC5B,YAAA,eAAe,EAAE;YACjB;;QAGJ,IAAI,CAAC,IAAI,EAAE;AACP,YAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI;;QAGpB;AACJ,KAAC,EACD,CAAC,eAAe,EAAE,YAAY,CAAC,CAClC;AAED,IAAA,OAAO,UAAU,IACbA,cAAA,CAAA,aAAA,CAACA,cAAK,CAAC,QAAQ,EAAA,IAAA,EACV,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,MACjBA,cAAC,CAAA,aAAA,CAAA,MAAM,EACH,EAAA,GAAG,EAAE,IAAI,CAAC,EAAE,EACZ,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EACtB,IAAI,EAAE,IAAI,CAAC,OAAO,EAClB,YAAY,EAAE,gBAAgB,EAC9B,KAAK,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,EACnB,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAA;QAE5CA,cAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,EACrD,EAAA,IAAI,CAAC,OAAO,CACX,CACD,CACZ,CAAC,CACW,IACjB,IAAI;AACZ;;;;"}
1
+ {"version":3,"file":"Panels.js","sources":["../../../../../../src/components/AsideHeader/components/Panels.tsx"],"sourcesContent":["import React from 'react';\n\nimport {Drawer} from '@gravity-ui/uikit';\n\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {b} from '../utils';\n\nexport const Panels = () => {\n const {panelItems, onClosePanel, size} = useAsideHeaderInnerContext();\n\n return panelItems ? (\n <React.Fragment>\n {panelItems.map(({id, className, style: itemStyle, ...rest}) => (\n <Drawer\n {...rest}\n key={id}\n className={b('panels')}\n onOpenChange={(open) => !open && onClosePanel?.()}\n style={{...itemStyle, left: size, top: 'var(--gn-top-alert-height, 0px)'}}\n contentClassName={b('panel', className)}\n />\n ))}\n </React.Fragment>\n ) : null;\n};\n"],"names":["React"],"mappings":";;;;;;AAOO,MAAM,MAAM,GAAG,MAAK;IACvB,MAAM,EAAC,UAAU,EAAE,YAAY,EAAE,IAAI,EAAC,GAAG,0BAA0B,EAAE;AAErE,IAAA,OAAO,UAAU,IACbA,6BAACA,cAAK,CAAC,QAAQ,EAAA,IAAA,EACV,UAAU,CAAC,GAAG,CAAC,CAAC,EAA0C,KAAI;AAA9C,QAAA,IAAA,EAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAA,GAAA,EAAU,EAAL,IAAI,GAAzC,MAAA,CAAA,EAAA,EAAA,CAAA,IAAA,EAAA,WAAA,EAAA,OAAA,CAA0C,CAAD;QAAM,QAC5DA,cAAC,CAAA,aAAA,CAAA,MAAM,EACC,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,EACR,EAAA,GAAG,EAAE,EAAE,EACP,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EACtB,YAAY,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,KAAI,YAAY,aAAZ,YAAY,KAAA,SAAA,GAAA,SAAA,GAAZ,YAAY,EAAI,CAAA,EACjD,KAAK,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAM,SAAS,CAAA,EAAA,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,iCAAiC,EAAA,CAAA,EACxE,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EACzC,CAAA,CAAA;AACL,KAAA,CAAC,CACW,IACjB,IAAI;AACZ;;;;"}
@@ -1,5 +1,6 @@
1
1
  export { AsideHeader } from './AsideHeader';
2
2
  export type { AsideHeaderProps, AsideHeaderItem, PanelItemProps } from './types';
3
+ export type { MenuGroup } from '../types';
3
4
  export { AsideHeaderContextProvider, useAsideHeaderContext } from './AsideHeaderContext';
4
5
  export { FooterItem, type FooterItemProps } from './components/FooterItem/FooterItem';
5
6
  export { PageLayout, type PageLayoutProps } from './components/PageLayout/PageLayout';
@@ -1,13 +1,10 @@
1
1
  import * as React from 'react';
2
- import { PopupProps, QAProps } from '@gravity-ui/uikit';
2
+ import { DrawerProps, PopupProps, QAProps } from '@gravity-ui/uikit';
3
3
  import { RenderContentType } from '../Content';
4
4
  import { LogoProps, MenuGroup, MenuItem, OpenModalSubscriber, TopAlertProps } from '../types';
5
5
  import { AsideHeaderContextType } from './AsideHeaderContext';
6
- export interface PanelItemProps {
6
+ export interface PanelItemProps extends DrawerProps {
7
7
  id: string;
8
- content?: React.ReactNode;
9
- visible?: boolean;
10
- className?: string;
11
8
  }
12
9
  export interface LayoutProps {
13
10
  compact: boolean;
@@ -23,7 +20,6 @@ interface EditMenuProps {
23
20
  }
24
21
  interface AsideHeaderGeneralProps extends QAProps {
25
22
  logo?: LogoProps;
26
- multipleTooltip?: boolean;
27
23
  className?: string;
28
24
  collapseTitle?: string;
29
25
  expandTitle?: string;
@@ -53,11 +49,9 @@ interface AsideHeaderDefaultProps {
53
49
  panelItems?: PanelItemProps[];
54
50
  subheaderItems?: AsideHeaderItem[];
55
51
  menuItems?: AsideHeaderItem[];
56
- defaultMenuItems?: AsideHeaderItem[];
57
52
  menuGroups?: MenuGroup[];
58
- defaultMenuGroups?: MenuGroup[];
53
+ defaultMenuItems?: AsideHeaderItem[];
59
54
  onMenuItemsChanged?: (items: AsideHeaderItem[]) => void;
60
- onMenuGroupsChanged?: (groups: MenuGroup[]) => void;
61
55
  headerDecoration?: boolean;
62
56
  }
63
57
  export type AsideHeaderInnerProps = AsideHeaderGeneralProps & AsideHeaderDefaultProps & AsideHeaderContextType;
@@ -106,13 +100,4 @@ export interface AsideHeaderItem extends MenuItem {
106
100
  */
107
101
  onOpenChangePopup?: PopupProps['onOpenChange'];
108
102
  }
109
- export interface GroupedMenuItem extends MenuItem {
110
- groupId: string;
111
- collapsible: boolean;
112
- isCollapsed: boolean;
113
- isDisabled: boolean;
114
- collapsedByDefault?: boolean;
115
- items: MenuItemsWithGroups[];
116
- }
117
- export type MenuItemsWithGroups = MenuItem | GroupedMenuItem;
118
103
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../src/components/AsideHeader/types.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {PopupProps, QAProps} from '@gravity-ui/uikit';\n\nimport {RenderContentType} from '../Content';\nimport {LogoProps, MenuGroup, MenuItem, OpenModalSubscriber, TopAlertProps} from '../types';\n\nimport {AsideHeaderContextType} from './AsideHeaderContext';\n\nexport interface PanelItemProps {\n id: string;\n content?: React.ReactNode;\n visible?: boolean;\n className?: string;\n}\n\nexport interface LayoutProps {\n compact: boolean;\n className?: string;\n topAlert?: TopAlertProps;\n}\n\ninterface EditMenuProps {\n onOpenEditMode?: () => void;\n onToggleMenuItem?: (changedItem: AsideHeaderItem) => void;\n onResetSettingsToDefault?: () => void;\n enableSorting?: boolean;\n onChangeItemsOrder?: (changedItem: AsideHeaderItem, oldIndex: number, newIndex: number) => void;\n}\n\ninterface AsideHeaderGeneralProps extends QAProps {\n logo?: LogoProps;\n multipleTooltip?: boolean;\n className?: string;\n collapseTitle?: string;\n expandTitle?: string;\n menuMoreTitle?: string;\n topAlert?: TopAlertProps;\n customBackground?: React.ReactNode;\n customBackgroundClassName?: string;\n hideCollapseButton?: boolean;\n renderContent?: RenderContentType;\n renderFooter?: (data: {\n size: number;\n compact: boolean;\n asideRef: React.RefObject<HTMLDivElement>;\n }) => React.ReactNode;\n collapseButtonWrapper?: (\n defaultButton: React.ReactNode,\n data: {\n compact: boolean;\n onChangeCompact?: (compact: boolean) => void;\n },\n ) => React.ReactNode;\n editMenuProps?: EditMenuProps;\n onClosePanel?: () => void;\n onChangeCompact?: (compact: boolean) => void;\n onMenuMoreClick?: () => void;\n onAllPagesClick?: () => void;\n openModalSubscriber?: (subscriber: OpenModalSubscriber) => void;\n}\n\ninterface AsideHeaderDefaultProps {\n panelItems?: PanelItemProps[];\n subheaderItems?: AsideHeaderItem[];\n menuItems?: AsideHeaderItem[];\n defaultMenuItems?: AsideHeaderItem[];\n menuGroups?: MenuGroup[];\n defaultMenuGroups?: MenuGroup[];\n onMenuItemsChanged?: (items: AsideHeaderItem[]) => void;\n onMenuGroupsChanged?: (groups: MenuGroup[]) => void;\n headerDecoration?: boolean;\n}\n\nexport type AsideHeaderInnerProps = AsideHeaderGeneralProps &\n AsideHeaderDefaultProps &\n AsideHeaderContextType;\n\nexport interface AsideHeaderProps\n extends AsideHeaderGeneralProps,\n LayoutProps,\n Partial<AsideHeaderDefaultProps> {}\n\nexport enum InnerPanels {\n AllPages = 'all-pages',\n}\n\nexport interface AsideHeaderItem extends MenuItem {\n enableTooltip?: boolean;\n onItemClick?: (\n item: AsideHeaderItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLElement, MouseEvent>,\n ) => void;\n bringForward?: boolean;\n compact?: boolean;\n\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupVisible?: PopupProps['open'];\n /**\n * Floating element anchor ref object\n *\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupRef?: React.RefObject<HTMLElement>;\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupPlacement?: PopupProps['placement'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupOffset?: PopupProps['offset'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupKeepMounted?: PopupProps['keepMounted'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n renderPopupContent?: () => React.ReactNode;\n /**\n * This callback will be called when Escape key pressed on keyboard, or click outside was made\n * This behaviour could be disabled with `disableEscapeKeyDown`\n * and `disableOutsideClick` options\n *\n * @deprecated Use itemWrapper instead for popup functionality\n */\n onOpenChangePopup?: PopupProps['onOpenChange'];\n}\n\nexport interface GroupedMenuItem extends MenuItem {\n groupId: string;\n collapsible: boolean;\n isCollapsed: boolean;\n isDisabled: boolean;\n collapsedByDefault?: boolean;\n items: MenuItemsWithGroups[];\n}\n\nexport type MenuItemsWithGroups = MenuItem | GroupedMenuItem;\n"],"names":[],"mappings":"IAmFY;AAAZ,CAAA,UAAY,WAAW,EAAA;AACnB,IAAA,WAAA,CAAA,UAAA,CAAA,GAAA,WAAsB;AAC1B,CAAC,EAFW,WAAW,KAAX,WAAW,GAEtB,EAAA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../../src/components/AsideHeader/types.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {DrawerProps, PopupProps, QAProps} from '@gravity-ui/uikit';\n\nimport {RenderContentType} from '../Content';\nimport {LogoProps, MenuGroup, MenuItem, OpenModalSubscriber, TopAlertProps} from '../types';\n\nimport {AsideHeaderContextType} from './AsideHeaderContext';\n\nexport interface PanelItemProps extends DrawerProps {\n id: string;\n}\n\nexport interface LayoutProps {\n compact: boolean;\n className?: string;\n topAlert?: TopAlertProps;\n}\n\ninterface EditMenuProps {\n onOpenEditMode?: () => void;\n onToggleMenuItem?: (changedItem: AsideHeaderItem) => void;\n onResetSettingsToDefault?: () => void;\n enableSorting?: boolean;\n onChangeItemsOrder?: (changedItem: AsideHeaderItem, oldIndex: number, newIndex: number) => void;\n}\n\ninterface AsideHeaderGeneralProps extends QAProps {\n logo?: LogoProps;\n className?: string;\n collapseTitle?: string;\n expandTitle?: string;\n menuMoreTitle?: string;\n topAlert?: TopAlertProps;\n customBackground?: React.ReactNode;\n customBackgroundClassName?: string;\n hideCollapseButton?: boolean;\n renderContent?: RenderContentType;\n renderFooter?: (data: {\n size: number;\n compact: boolean;\n asideRef: React.RefObject<HTMLDivElement>;\n }) => React.ReactNode;\n collapseButtonWrapper?: (\n defaultButton: React.ReactNode,\n data: {\n compact: boolean;\n onChangeCompact?: (compact: boolean) => void;\n },\n ) => React.ReactNode;\n editMenuProps?: EditMenuProps;\n onClosePanel?: () => void;\n onChangeCompact?: (compact: boolean) => void;\n onMenuMoreClick?: () => void;\n onAllPagesClick?: () => void;\n openModalSubscriber?: (subscriber: OpenModalSubscriber) => void;\n}\n\ninterface AsideHeaderDefaultProps {\n panelItems?: PanelItemProps[];\n subheaderItems?: AsideHeaderItem[];\n menuItems?: AsideHeaderItem[];\n menuGroups?: MenuGroup[];\n defaultMenuItems?: AsideHeaderItem[];\n onMenuItemsChanged?: (items: AsideHeaderItem[]) => void;\n headerDecoration?: boolean;\n}\n\nexport type AsideHeaderInnerProps = AsideHeaderGeneralProps &\n AsideHeaderDefaultProps &\n AsideHeaderContextType;\n\nexport interface AsideHeaderProps\n extends AsideHeaderGeneralProps,\n LayoutProps,\n Partial<AsideHeaderDefaultProps> {}\n\nexport enum InnerPanels {\n AllPages = 'all-pages',\n}\n\nexport interface AsideHeaderItem extends MenuItem {\n enableTooltip?: boolean;\n onItemClick?: (\n item: AsideHeaderItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLElement, MouseEvent>,\n ) => void;\n bringForward?: boolean;\n compact?: boolean;\n\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupVisible?: PopupProps['open'];\n /**\n * Floating element anchor ref object\n *\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupRef?: React.RefObject<HTMLElement>;\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupPlacement?: PopupProps['placement'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupOffset?: PopupProps['offset'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupKeepMounted?: PopupProps['keepMounted'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n renderPopupContent?: () => React.ReactNode;\n /**\n * This callback will be called when Escape key pressed on keyboard, or click outside was made\n * This behaviour could be disabled with `disableEscapeKeyDown`\n * and `disableOutsideClick` options\n *\n * @deprecated Use itemWrapper instead for popup functionality\n */\n onOpenChangePopup?: PopupProps['onOpenChange'];\n}\n"],"names":[],"mappings":"IA6EY;AAAZ,CAAA,UAAY,WAAW,EAAA;AACnB,IAAA,WAAA,CAAA,UAAA,CAAA,GAAA,WAAsB;AAC1B,CAAC,EAFW,WAAW,KAAX,WAAW,GAEtB,EAAA,CAAA,CAAA;;;;"}
@@ -2,8 +2,4 @@ import { AsideHeaderInnerContextType } from './AsideHeaderContext';
2
2
  import { AsideHeaderProps } from './types';
3
3
  export declare const useAsideHeaderInnerContextValue: (props: AsideHeaderProps & {
4
4
  size: number;
5
- compact: boolean;
6
- isExpanded: boolean;
7
- onExpand?: () => void;
8
- onFold?: () => void;
9
5
  }) => AsideHeaderInnerContextType;