@gravity-ui/navigation 6.6.0 → 7.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 (292) hide show
  1. package/build/cjs/components/AsideHeader/AsideHeader.css +9 -1
  2. package/build/cjs/components/AsideHeader/AsideHeader.js +2 -2
  3. package/build/cjs/components/AsideHeader/AsideHeader.js.map +1 -1
  4. package/build/cjs/components/AsideHeader/AsideHeader.module.scss.js +1 -1
  5. package/build/cjs/components/AsideHeader/AsideHeaderContext.d.ts +5 -0
  6. package/build/cjs/components/AsideHeader/AsideHeaderContext.js +2 -0
  7. package/build/cjs/components/AsideHeader/AsideHeaderContext.js.map +1 -1
  8. package/build/cjs/components/AsideHeader/__playwright__/AsideTransitionExample.d.ts +8 -0
  9. package/build/cjs/components/AsideHeader/__playwright__/CollapseButtonExample.d.ts +14 -0
  10. package/build/cjs/components/AsideHeader/__playwright__/CompactTransitionExample.d.ts +12 -0
  11. package/build/cjs/components/AsideHeader/__playwright__/CurrentIndicatorExample.d.ts +20 -0
  12. package/build/cjs/components/AsideHeader/__playwright__/QuickAccessOverflowExample.d.ts +8 -0
  13. package/build/cjs/components/AsideHeader/__playwright__/currentIndicatorPaint.d.ts +21 -0
  14. package/build/cjs/components/AsideHeader/__playwright__/transitionTestUtils.d.ts +4 -0
  15. package/build/cjs/components/AsideHeader/__stories__/fullNavigationMoc.d.ts +6 -0
  16. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +2 -4
  17. package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -1
  18. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js +1 -3
  19. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js.map +1 -1
  20. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/index.d.ts +4 -4
  21. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js +2 -4
  22. package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js.map +1 -1
  23. package/build/cjs/components/AsideHeader/components/AsideDivider.d.ts +7 -0
  24. package/build/cjs/components/AsideHeader/components/AsideDivider.js +13 -0
  25. package/build/cjs/components/AsideHeader/components/AsideDivider.js.map +1 -0
  26. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.css +1 -1
  27. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.d.ts +3 -1
  28. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js +12 -8
  29. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -1
  30. package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.module.scss.js +1 -1
  31. package/build/cjs/components/AsideHeader/components/CollapseButton/useCollapseAnchor.d.ts +20 -0
  32. package/build/cjs/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js +170 -0
  33. package/build/cjs/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js.map +1 -0
  34. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.css +3 -1
  35. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.d.ts +13 -2
  36. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.js +53 -39
  37. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.js.map +1 -1
  38. package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.module.scss.js +1 -1
  39. package/build/cjs/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.css +1 -1
  40. package/build/cjs/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js +4 -2
  41. package/build/cjs/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js.map +1 -1
  42. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.css +33 -1
  43. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.js +158 -43
  44. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.js.map +1 -1
  45. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.module.scss.js +1 -1
  46. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.types.d.ts +22 -4
  47. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.d.ts +19 -0
  48. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js +137 -20
  49. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js.map +1 -1
  50. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.d.ts +7 -0
  51. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js +25 -0
  52. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js.map +1 -0
  53. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.d.ts +1 -1
  54. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js +5 -1
  55. package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js.map +1 -1
  56. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.css +1 -1
  57. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.d.ts +4 -6
  58. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js +14 -5
  59. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js.map +1 -1
  60. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.module.scss.js +1 -1
  61. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.d.ts +8 -8
  62. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js +68 -33
  63. package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js.map +1 -1
  64. package/build/cjs/components/AsideHeader/components/CompositeBar/constants.d.ts +1 -0
  65. package/build/cjs/components/AsideHeader/components/CompositeBar/constants.js +2 -0
  66. package/build/cjs/components/AsideHeader/components/CompositeBar/constants.js.map +1 -1
  67. package/build/cjs/components/AsideHeader/components/CompositeBar/presentationCurrent.d.ts +24 -0
  68. package/build/cjs/components/AsideHeader/components/CompositeBar/presentationCurrent.js +39 -0
  69. package/build/cjs/components/AsideHeader/components/CompositeBar/presentationCurrent.js.map +1 -0
  70. package/build/cjs/components/AsideHeader/components/CompositeBar/utils.d.ts +12 -7
  71. package/build/cjs/components/AsideHeader/components/CompositeBar/utils.js +42 -35
  72. package/build/cjs/components/AsideHeader/components/CompositeBar/utils.js.map +1 -1
  73. package/build/cjs/components/AsideHeader/components/FirstPanel.js +129 -10
  74. package/build/cjs/components/AsideHeader/components/FirstPanel.js.map +1 -1
  75. package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.css +1 -1
  76. package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.js +18 -2
  77. package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.js.map +1 -1
  78. package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.module.scss.js +1 -1
  79. package/build/cjs/components/AsideHeader/components/Header.js +7 -3
  80. package/build/cjs/components/AsideHeader/components/Header.js.map +1 -1
  81. package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.css +9 -1
  82. package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.d.ts +1 -0
  83. package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js +13 -6
  84. package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js.map +1 -1
  85. package/build/cjs/components/AsideHeader/components/PageLayout/AsideLayoutTransition.d.ts +80 -0
  86. package/build/cjs/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js +600 -0
  87. package/build/cjs/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js.map +1 -0
  88. package/build/cjs/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.d.ts +14 -0
  89. package/build/cjs/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js +164 -0
  90. package/build/cjs/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js.map +1 -0
  91. package/build/cjs/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.d.ts +14 -0
  92. package/build/cjs/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js +94 -0
  93. package/build/cjs/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js.map +1 -0
  94. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.css +9 -1
  95. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.d.ts +1 -1
  96. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js +14 -5
  97. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -1
  98. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.css +9 -1
  99. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.d.ts +1 -1
  100. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js +5 -2
  101. package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -1
  102. package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorDom.d.ts +7 -0
  103. package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorDom.js +25 -0
  104. package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorDom.js.map +1 -0
  105. package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorModel.d.ts +25 -0
  106. package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorModel.js +89 -0
  107. package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorModel.js.map +1 -0
  108. package/build/cjs/components/AsideHeader/components/Panels.js +2 -2
  109. package/build/cjs/components/AsideHeader/components/Panels.js.map +1 -1
  110. package/build/cjs/components/AsideHeader/density.d.ts +21 -0
  111. package/build/cjs/components/AsideHeader/density.js +61 -0
  112. package/build/cjs/components/AsideHeader/density.js.map +1 -0
  113. package/build/cjs/components/AsideHeader/i18n/__mocks__/index.d.ts +1 -0
  114. package/build/cjs/components/AsideHeader/i18n/en.json.js +10 -1
  115. package/build/cjs/components/AsideHeader/i18n/en.json.js.map +1 -1
  116. package/build/cjs/components/AsideHeader/i18n/index.d.ts +4 -4
  117. package/build/cjs/components/AsideHeader/i18n/ru.json.js +10 -1
  118. package/build/cjs/components/AsideHeader/i18n/ru.json.js.map +1 -1
  119. package/build/cjs/components/AsideHeader/index.d.ts +1 -0
  120. package/build/cjs/components/AsideHeader/quickAccess.d.ts +9 -0
  121. package/build/cjs/components/AsideHeader/quickAccess.js +31 -0
  122. package/build/cjs/components/AsideHeader/quickAccess.js.map +1 -0
  123. package/build/cjs/components/AsideHeader/types.d.ts +50 -5
  124. package/build/cjs/components/AsideHeader/types.js.map +1 -1
  125. package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js +18 -3
  126. package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -1
  127. package/build/cjs/components/AsideHeader/utils.d.ts +1 -0
  128. package/build/cjs/components/AsideHeader/utils.js +2 -0
  129. package/build/cjs/components/AsideHeader/utils.js.map +1 -1
  130. package/build/cjs/components/Footer/desktop/Footer.css +1 -1
  131. package/build/cjs/components/Footer/mobile/Footer.css +1 -1
  132. package/build/cjs/components/HotkeysPanel/HotkeysPanel.css +1 -1
  133. package/build/cjs/components/HotkeysPanel/HotkeysPanel.js +1 -1
  134. package/build/cjs/components/HotkeysPanel/HotkeysPanel.js.map +1 -1
  135. package/build/cjs/components/HotkeysPanel/HotkeysPanel.module.scss.js +1 -1
  136. package/build/cjs/components/Logo/Logo.css +1 -1
  137. package/build/cjs/components/Logo/Logo.d.ts +1 -0
  138. package/build/cjs/components/Logo/Logo.js +4 -4
  139. package/build/cjs/components/Logo/Logo.js.map +1 -1
  140. package/build/cjs/components/constants.d.ts +5 -0
  141. package/build/cjs/components/constants.js +6 -0
  142. package/build/cjs/components/constants.js.map +1 -1
  143. package/build/cjs/components/types.d.ts +4 -4
  144. package/build/docs/components/AsideHeader.md +234 -42
  145. package/build/esm/components/AsideHeader/AsideHeader.css +9 -1
  146. package/build/esm/components/AsideHeader/AsideHeader.js +2 -2
  147. package/build/esm/components/AsideHeader/AsideHeader.js.map +1 -1
  148. package/build/esm/components/AsideHeader/AsideHeader.module.scss.js +1 -1
  149. package/build/esm/components/AsideHeader/AsideHeaderContext.d.ts +5 -0
  150. package/build/esm/components/AsideHeader/AsideHeaderContext.js +2 -0
  151. package/build/esm/components/AsideHeader/AsideHeaderContext.js.map +1 -1
  152. package/build/esm/components/AsideHeader/__playwright__/AsideTransitionExample.d.ts +8 -0
  153. package/build/esm/components/AsideHeader/__playwright__/CollapseButtonExample.d.ts +14 -0
  154. package/build/esm/components/AsideHeader/__playwright__/CompactTransitionExample.d.ts +12 -0
  155. package/build/esm/components/AsideHeader/__playwright__/CurrentIndicatorExample.d.ts +20 -0
  156. package/build/esm/components/AsideHeader/__playwright__/QuickAccessOverflowExample.d.ts +8 -0
  157. package/build/esm/components/AsideHeader/__playwright__/currentIndicatorPaint.d.ts +21 -0
  158. package/build/esm/components/AsideHeader/__playwright__/transitionTestUtils.d.ts +4 -0
  159. package/build/esm/components/AsideHeader/__stories__/fullNavigationMoc.d.ts +6 -0
  160. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +3 -5
  161. package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -1
  162. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js +1 -3
  163. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js.map +1 -1
  164. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/index.d.ts +4 -4
  165. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js +2 -4
  166. package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js.map +1 -1
  167. package/build/esm/components/AsideHeader/components/AsideDivider.d.ts +7 -0
  168. package/build/esm/components/AsideHeader/components/AsideDivider.js +11 -0
  169. package/build/esm/components/AsideHeader/components/AsideDivider.js.map +1 -0
  170. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.css +1 -1
  171. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.d.ts +3 -1
  172. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js +12 -8
  173. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -1
  174. package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.module.scss.js +1 -1
  175. package/build/esm/components/AsideHeader/components/CollapseButton/useCollapseAnchor.d.ts +20 -0
  176. package/build/esm/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js +167 -0
  177. package/build/esm/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js.map +1 -0
  178. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.css +3 -1
  179. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.d.ts +13 -2
  180. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.js +54 -40
  181. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.js.map +1 -1
  182. package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.module.scss.js +1 -1
  183. package/build/esm/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.css +1 -1
  184. package/build/esm/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js +4 -2
  185. package/build/esm/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js.map +1 -1
  186. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.css +33 -1
  187. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.js +161 -46
  188. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.js.map +1 -1
  189. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.module.scss.js +1 -1
  190. package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.types.d.ts +22 -4
  191. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.d.ts +19 -0
  192. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js +139 -23
  193. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js.map +1 -1
  194. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.d.ts +7 -0
  195. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js +23 -0
  196. package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js.map +1 -0
  197. package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.d.ts +1 -1
  198. package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js +5 -1
  199. package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js.map +1 -1
  200. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.css +1 -1
  201. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.d.ts +4 -6
  202. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js +15 -6
  203. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js.map +1 -1
  204. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.module.scss.js +1 -1
  205. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.d.ts +8 -8
  206. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js +68 -33
  207. package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js.map +1 -1
  208. package/build/esm/components/AsideHeader/components/CompositeBar/constants.d.ts +1 -0
  209. package/build/esm/components/AsideHeader/components/CompositeBar/constants.js +2 -1
  210. package/build/esm/components/AsideHeader/components/CompositeBar/constants.js.map +1 -1
  211. package/build/esm/components/AsideHeader/components/CompositeBar/presentationCurrent.d.ts +24 -0
  212. package/build/esm/components/AsideHeader/components/CompositeBar/presentationCurrent.js +36 -0
  213. package/build/esm/components/AsideHeader/components/CompositeBar/presentationCurrent.js.map +1 -0
  214. package/build/esm/components/AsideHeader/components/CompositeBar/utils.d.ts +12 -7
  215. package/build/esm/components/AsideHeader/components/CompositeBar/utils.js +44 -35
  216. package/build/esm/components/AsideHeader/components/CompositeBar/utils.js.map +1 -1
  217. package/build/esm/components/AsideHeader/components/FirstPanel.js +131 -12
  218. package/build/esm/components/AsideHeader/components/FirstPanel.js.map +1 -1
  219. package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.css +1 -1
  220. package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.js +18 -2
  221. package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.js.map +1 -1
  222. package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.module.scss.js +1 -1
  223. package/build/esm/components/AsideHeader/components/Header.js +8 -4
  224. package/build/esm/components/AsideHeader/components/Header.js.map +1 -1
  225. package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.css +9 -1
  226. package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.d.ts +1 -0
  227. package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.js +14 -7
  228. package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.js.map +1 -1
  229. package/build/esm/components/AsideHeader/components/PageLayout/AsideLayoutTransition.d.ts +80 -0
  230. package/build/esm/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js +598 -0
  231. package/build/esm/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js.map +1 -0
  232. package/build/esm/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.d.ts +14 -0
  233. package/build/esm/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js +162 -0
  234. package/build/esm/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js.map +1 -0
  235. package/build/esm/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.d.ts +14 -0
  236. package/build/esm/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js +92 -0
  237. package/build/esm/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js.map +1 -0
  238. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.css +9 -1
  239. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.d.ts +1 -1
  240. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js +15 -6
  241. package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -1
  242. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.css +9 -1
  243. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.d.ts +1 -1
  244. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js +5 -2
  245. package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -1
  246. package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorDom.d.ts +7 -0
  247. package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorDom.js +17 -0
  248. package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorDom.js.map +1 -0
  249. package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorModel.d.ts +25 -0
  250. package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorModel.js +84 -0
  251. package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorModel.js.map +1 -0
  252. package/build/esm/components/AsideHeader/components/Panels.js +3 -3
  253. package/build/esm/components/AsideHeader/components/Panels.js.map +1 -1
  254. package/build/esm/components/AsideHeader/density.d.ts +21 -0
  255. package/build/esm/components/AsideHeader/density.js +58 -0
  256. package/build/esm/components/AsideHeader/density.js.map +1 -0
  257. package/build/esm/components/AsideHeader/i18n/__mocks__/index.d.ts +1 -0
  258. package/build/esm/components/AsideHeader/i18n/en.json.js +8 -2
  259. package/build/esm/components/AsideHeader/i18n/en.json.js.map +1 -1
  260. package/build/esm/components/AsideHeader/i18n/index.d.ts +4 -4
  261. package/build/esm/components/AsideHeader/i18n/ru.json.js +8 -2
  262. package/build/esm/components/AsideHeader/i18n/ru.json.js.map +1 -1
  263. package/build/esm/components/AsideHeader/index.d.ts +1 -0
  264. package/build/esm/components/AsideHeader/quickAccess.d.ts +9 -0
  265. package/build/esm/components/AsideHeader/quickAccess.js +27 -0
  266. package/build/esm/components/AsideHeader/quickAccess.js.map +1 -0
  267. package/build/esm/components/AsideHeader/types.d.ts +50 -5
  268. package/build/esm/components/AsideHeader/types.js.map +1 -1
  269. package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js +18 -3
  270. package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -1
  271. package/build/esm/components/AsideHeader/utils.d.ts +1 -0
  272. package/build/esm/components/AsideHeader/utils.js +2 -1
  273. package/build/esm/components/AsideHeader/utils.js.map +1 -1
  274. package/build/esm/components/Footer/desktop/Footer.css +1 -1
  275. package/build/esm/components/Footer/mobile/Footer.css +1 -1
  276. package/build/esm/components/HotkeysPanel/HotkeysPanel.css +1 -1
  277. package/build/esm/components/HotkeysPanel/HotkeysPanel.js +1 -1
  278. package/build/esm/components/HotkeysPanel/HotkeysPanel.js.map +1 -1
  279. package/build/esm/components/HotkeysPanel/HotkeysPanel.module.scss.js +1 -1
  280. package/build/esm/components/Logo/Logo.css +1 -1
  281. package/build/esm/components/Logo/Logo.d.ts +1 -0
  282. package/build/esm/components/Logo/Logo.js +4 -4
  283. package/build/esm/components/Logo/Logo.js.map +1 -1
  284. package/build/esm/components/constants.d.ts +5 -0
  285. package/build/esm/components/constants.js +6 -1
  286. package/build/esm/components/constants.js.map +1 -1
  287. package/build/esm/components/types.d.ts +4 -4
  288. package/package.json +1 -1
  289. package/build/cjs/assets/icons/control-menu-button.svg.js +0 -41
  290. package/build/cjs/assets/icons/control-menu-button.svg.js.map +0 -1
  291. package/build/esm/assets/icons/control-menu-button.svg.js +0 -18
  292. package/build/esm/assets/icons/control-menu-button.svg.js.map +0 -1
@@ -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 {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":["ASIDE_HEADER_COMPACT_WIDTH","ASIDE_HEADER_EXPANDED_WIDTH","useMemo","AsideHeaderContextProvider","b","Suspense","useAsideHeaderContext","Content"],"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 {TopAlertProps} from '../../../types';\nimport {AsideHeaderContextProvider, useAsideHeaderContext} from '../../AsideHeaderContext';\nimport {getAsideHeaderDensityConfig, getAsideHeaderDensityCssProperties} from '../../density';\nimport {LayoutProps} from '../../types';\nimport {b, getCompactTransitionClassName} from '../../utils';\n\nimport {AsideLayoutTransition} from './AsideLayoutTransition';\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 = ({\n compact,\n compactTransition = true,\n className,\n children,\n topAlert,\n menuDensity = 'default',\n}: PageLayoutProps) => {\n const densityConfig = getAsideHeaderDensityConfig(menuDensity);\n const densityCssProperties = getAsideHeaderDensityCssProperties(menuDensity);\n const isCompact = Boolean(compact);\n const size = isCompact ? densityConfig.compactWidth : densityConfig.expandedWidth;\n const asideHeaderContextValue = useMemo(\n () => ({size, compact: isCompact, compactTransition, menuDensity}),\n [isCompact, compactTransition, size, menuDensity],\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 <AsideLayoutTransition\n compact={isCompact}\n compactTransition={compactTransition}\n className={b({compact: isCompact}, [\n getCompactTransitionClassName(compactTransition),\n className ?? '',\n ])}\n style={{\n ...densityCssProperties,\n ...({'--gn-aside-header-size': `${size}px`} as React.CSSProperties),\n ...({\n '--_--gn-aside-header-expanded-width': `${densityConfig.expandedWidth}px`,\n } 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 </AsideLayoutTransition>\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":["getAsideHeaderDensityConfig","getAsideHeaderDensityCssProperties","useMemo","AsideHeaderContextProvider","AsideLayoutTransition","b","getCompactTransitionClassName","Suspense","useAsideHeaderContext","Content"],"mappings":"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"}
@@ -1,2 +1,10 @@
1
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_menu-overflow-scroll___l-td6 .AsideHeader-module__gn-aside-header__aside-content___w5GOS{min-height:0;overflow:hidden}.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
+ .AsideHeader-module__gn-aside-header___Z0Sa7{--gn-aside-header-min-width:var(--_--gn-aside-header-density-compact-width,56px);--_--item-margin-inline:var(
3
+ --_--gn-aside-header-density-item-margin-inline,8px
4
+ );--_--item-expanded-radius:var(
5
+ --_--gn-aside-header-density-item-expanded-radius,8px
6
+ );--_--item-icon-background-size:var(
7
+ --gn-aside-header-item-icon-background-size,var(--_--gn-aside-header-density-icon-background-size,38px)
8
+ );--_--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);--_--section-divider-gap:var(--g-spacing-1);background-color:var(--g-color-base-background);height:100%;position:relative;width:100%}.AsideHeader-module__gn-aside-header__compact-transition___bBGfN{--_--gn-aside-width-transition:width 0.2s ease-in-out;--_--gn-aside-collapse-geometry-transition:inset-inline-end 0.2s ease-in-out,width 0.2s ease-in-out,border-radius 0.2s ease-in-out;--_--gn-aside-drawer-transition:left 0.2s ease-in-out,background-color var(--_--animation-duration,300ms)}.AsideHeader-module__gn-aside-header__compact-transition_disabled___ztpdX{--_--gn-aside-width-transition:none;--_--gn-aside-collapse-geometry-transition:none;--_--gn-aside-drawer-transition:background-color var(--_--animation-duration,300ms)}.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));overflow:hidden;position:sticky;top:var(--gn-top-alert-height,0);transition:var(--_--gn-aside-width-transition);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%;inset-inline-end:0;position:absolute;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;min-height:0;overflow:hidden;padding-top:var(--gn-aside-header-padding-top);position:relative;user-select:none;width:var(--gn-aside-header-size);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;transition:var(--_--gn-aside-width-transition);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__aside___AyP0y[data-gn-aside-animating] [data-gn-aside-divider]{flex-shrink:0}.AsideHeader-module__gn-aside-header__aside___AyP0y[data-gn-aside-animating] .AsideHeader-module__gn-aside-header__aside-content___w5GOS{overflow:visible}.AsideHeader-module__gn-aside-header__aside___AyP0y[data-gn-aside-animating] .g-list__item, .AsideHeader-module__gn-aside-header__aside___AyP0y[data-gn-aside-animating] .g-list__item-content{min-width:0;overflow:visible}.AsideHeader-module__gn-aside-header__aside___AyP0y[data-gn-aside-animating] [data-gn-aside-scrollport]{width:var(--_--gn-aside-header-expanded-width)}.AsideHeader-module__gn-aside-header__aside___AyP0y[data-gn-aside-animating] .AsideHeader-module__gn-aside-header__unified-menu-content___cpugB{width:var(--gn-aside-header-size)}.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 .AsideHeader-module__gn-aside-header__header-bottom-divider___x9Bzo{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__aside-content_with-quick-access___Yucty:not(.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB) .AsideHeader-module__gn-aside-header__header___m5aIU{padding-bottom:var(--_--section-divider-gap)}.AsideHeader-module__gn-aside-header__aside-content_with-quick-access___Yucty:not(.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB) .AsideHeader-module__gn-aside-header__header___m5aIU .AsideHeader-module__gn-aside-header__header-bottom-divider___x9Bzo{bottom:0}.AsideHeader-module__gn-aside-header__aside-content_with-quick-access___Yucty:not(.AsideHeader-module__gn-aside-header__aside-content_with-quick-access-items___oU0Yz):not(.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB) .AsideHeader-module__gn-aside-header__header___m5aIU{margin-bottom:var(--_--section-divider-gap)}.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 .AsideHeader-module__gn-aside-header__header-bottom-divider___x9Bzo{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__logo___QvKKT{--_--gn-logo-height:var(
9
+ --_--gn-aside-header-density-item-height,40px
10
+ )}.AsideHeader-module__gn-aside-header__quick-access___ykXmy{box-sizing:border-box;flex:none;margin-bottom:var(--_--section-divider-gap);padding-block:var(--_--section-divider-gap);position:relative;width:100%}.AsideHeader-module__gn-aside-header__quick-access-divider___AzkVl{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));bottom:0;content:"";height:1px;left:var(--_--item-margin-inline);position:absolute;right:var(--_--item-margin-inline);width:auto;z-index:1}.AsideHeader-module__gn-aside-header__quick-access-title___im4TL{color:var(--g-color-text-secondary);font-family:var(--g-text-caption-font-family);font-size:var(--g-text-caption-2-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-2-line-height);margin-inline:var(--_--item-margin-inline);padding-inline:calc(var(--_--gn-aside-header-density-item-height, 40px) + var(--_--gn-aside-header-density-item-title-gap, var(--g-spacing-2))) var(--_--gn-aside-header-density-item-title-gap-end,var(--g-spacing-4));padding-bottom:var(--g-spacing-1);user-select:none}.AsideHeader-module__gn-aside-header__unified-menu-scroll___EHnK-{flex:1 1 auto;min-height:0}.AsideHeader-module__gn-aside-header__unified-menu-content___cpugB{display:flex;flex-direction:column;min-height:100%;position:relative;z-index:0}.AsideHeader-module__gn-aside-header___Z0Sa7 [data-gn-aside-current-container]>:not([data-gn-aside-current-indicator-layer]):not([data-gn-aside-divider]){position:relative;z-index:1}.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,var(--_--item-expanded-radius))}.AsideHeader-module__gn-aside-header__collapse-fallback___R6O7X{flex-shrink:0;height:var(--_--gn-aside-header-density-footer-item-height,32px)}.AsideHeader-module__gn-aside-header__footer___vmoTl{display:flex;flex-direction:column;flex-shrink:0;margin:var(--g-spacing-2) var(--_--item-margin-inline);position:relative}.AsideHeader-module__gn-aside-header__footer___vmoTl .AsideHeader-module__gn-aside-header__footer-divider___9Jewp{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));content:"";height:1px;left:calc(var(--_--item-margin-inline)*-1);opacity:0;pointer-events:none;position:absolute;right:calc(var(--_--item-margin-inline)*-1);top:calc(var(--g-spacing-2)*-1);transition:opacity .3s ease-in-out}.AsideHeader-module__gn-aside-header__footer_with-divider___66E1w .AsideHeader-module__gn-aside-header__footer-divider___9Jewp{opacity:1}.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB .AsideHeader-module__gn-aside-header__header___m5aIU{margin-bottom:0;padding-bottom:0}.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB .AsideHeader-module__gn-aside-header__header___m5aIU:before{height:100%}.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB .AsideHeader-module__gn-aside-header__footer-divider___9Jewp, .AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB .AsideHeader-module__gn-aside-header__header___m5aIU .AsideHeader-module__gn-aside-header__header-bottom-divider___x9Bzo, .AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB .AsideHeader-module__gn-aside-header__header___m5aIU .AsideHeader-module__gn-aside-header__header-divider___lIG-e{display:none}.AsideHeader-module__gn-aside-header__aside-content_hide-section-dividers___9BZdB .AsideHeader-module__gn-aside-header__footer___vmoTl{margin-top:0}.AsideHeader-module__gn-aside-header__panels___-fdu4{z-index:var(--gn-aside-header-panel-z-index,98)}.AsideHeader-module__gn-aside-header__panels___-fdu4.g-drawer[data-floating-ui-status]{transition:var(--_--gn-aside-drawer-transition)}.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);transition:var(--_--gn-aside-width-transition);width:calc(100% - var(--gn-aside-header-size));z-index:var(--gn-aside-header-content-z-index,95)}@media (prefers-reduced-motion:reduce){.AsideHeader-module__gn-aside-header__aside-custom-background___-bqdE, .AsideHeader-module__gn-aside-header__aside___AyP0y, .AsideHeader-module__gn-aside-header__content___4-mBl, .AsideHeader-module__gn-aside-header__panels___-fdu4.g-drawer[data-floating-ui-status]{transition:none}}.AsideHeader-module__gn-aside-header__all-pages-panel___O94IU{width:fit-content!important}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  import { AsideHeaderProps } from '../../types';
3
- type Props = Omit<AsideHeaderProps, 'compact' | 'size'>;
3
+ type Props = Omit<AsideHeaderProps, 'compact' | 'compactTransition' | 'size' | 'menuDensity'>;
4
4
  export declare const PageLayoutAside: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
5
5
  export {};
@@ -7,8 +7,11 @@ var AsideHeaderContext = require('../../AsideHeaderContext.js');
7
7
  var useAsideHeaderInnerContextValue = require('../../useAsideHeaderInnerContextValue.js');
8
8
 
9
9
  const PageLayoutAside = React.forwardRef((props, ref) => {
10
- const { size, compact } = AsideHeaderContext.useAsideHeaderContext();
11
- const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue.useAsideHeaderInnerContextValue(Object.assign(Object.assign({}, props), { size, compact }));
10
+ const { size, compact, compactTransition = true, menuDensity } = AsideHeaderContext.useAsideHeaderContext();
11
+ const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue.useAsideHeaderInnerContextValue(Object.assign(Object.assign({}, props), { size,
12
+ compact,
13
+ compactTransition,
14
+ menuDensity }));
12
15
  return (React.createElement(AsideHeaderContext.AsideHeaderInnerContextProvider, { value: asideHeaderInnerContextValue },
13
16
  React.createElement(FirstPanel.FirstPanel, { ref: ref })));
14
17
  });
@@ -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} = 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":["useAsideHeaderContext","useAsideHeaderInnerContextValue","AsideHeaderInnerContextProvider","FirstPanel"],"mappings":";;;;;;;AASO,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAwB,CAAC,KAAK,EAAE,GAAG,KAAI;IAClF,MAAM,EAAC,IAAI,EAAE,OAAO,EAAC,GAAGA,wCAAqB,EAAE;IAE/C,MAAM,4BAA4B,GAAGC,+DAA+B,CAAK,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,KAAE,IAAI,EAAE,OAAO,EAAA,CAAA,CAAE;AAE/F,IAAA,QACI,KAAC,CAAA,aAAA,CAAAC,kDAA+B,EAAC,EAAA,KAAK,EAAE,4BAA4B,EAAA;QAChE,KAAC,CAAA,aAAA,CAAAC,qBAAU,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' | 'compactTransition' | 'size' | 'menuDensity'>;\n\nexport const PageLayoutAside = React.forwardRef<HTMLDivElement, Props>((props, ref) => {\n const {size, compact, compactTransition = true, menuDensity} = useAsideHeaderContext();\n\n const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue({\n ...props,\n size,\n compact,\n compactTransition,\n menuDensity,\n });\n\n return (\n <AsideHeaderInnerContextProvider value={asideHeaderInnerContextValue}>\n <FirstPanel ref={ref} />\n </AsideHeaderInnerContextProvider>\n );\n});\n\nPageLayoutAside.displayName = 'PageLayoutAside';\n"],"names":["useAsideHeaderContext","useAsideHeaderInnerContextValue","AsideHeaderInnerContextProvider","FirstPanel"],"mappings":";;;;;;;AASO,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAwB,CAAC,KAAK,EAAE,GAAG,KAAI;AAClF,IAAA,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,EAAE,WAAW,EAAC,GAAGA,wCAAqB,EAAE;AAEtF,IAAA,MAAM,4BAA4B,GAAGC,+DAA+B,CAC7D,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,KACR,IAAI;QACJ,OAAO;QACP,iBAAiB;AACjB,QAAA,WAAW,IACb;AAEF,IAAA,QACI,KAAC,CAAA,aAAA,CAAAC,kDAA+B,EAAC,EAAA,KAAK,EAAE,4BAA4B,EAAA;QAChE,KAAC,CAAA,aAAA,CAAAC,qBAAU,IAAC,GAAG,EAAE,GAAG,EAAI,CAAA,CACM;AAE1C,CAAC;AAED,eAAe,CAAC,WAAW,GAAG,iBAAiB;;;;"}
@@ -0,0 +1,7 @@
1
+ export declare const CURRENT_ROW_SELECTOR = "[data-gn-composite-bar-item-id]";
2
+ export declare const CURRENT_IDS_ATTRIBUTE = "data-gn-aside-current-ids";
3
+ export declare const SURFACE_SELECTOR = "[data-gn-aside-part=\"surface\"]";
4
+ export declare const CURRENT_SUPPRESSED_ATTRIBUTE = "data-gn-aside-current-suppressed";
5
+ export declare const CURRENT_GHOST_SUPPRESSED_ATTRIBUTE = "data-gn-aside-current-ghost-suppressed";
6
+ export declare const CURRENT_ROW_KEY_ATTRIBUTE = "data-gn-aside-current-row-key";
7
+ export declare function getCompositeBarSection(element: HTMLElement, fallback?: string): string;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ var constants = require('../CompositeBar/constants.js');
4
+
5
+ const CURRENT_ROW_SELECTOR = `[${constants.COMPOSITE_BAR_ITEM_ID_ATTRIBUTE}]`;
6
+ const CURRENT_IDS_ATTRIBUTE = 'data-gn-aside-current-ids';
7
+ const SURFACE_SELECTOR = '[data-gn-aside-part="surface"]';
8
+ const CURRENT_SUPPRESSED_ATTRIBUTE = 'data-gn-aside-current-suppressed';
9
+ const CURRENT_GHOST_SUPPRESSED_ATTRIBUTE = 'data-gn-aside-current-ghost-suppressed';
10
+ const CURRENT_ROW_KEY_ATTRIBUTE = 'data-gn-aside-current-row-key';
11
+ function getCompositeBarSection(element, fallback = 'footer') {
12
+ var _a, _b;
13
+ // UIKit row wrappers append "-item-N" to the bar ID. They are layout
14
+ // positions, not sections, and can change while the logical row persists.
15
+ return (_b = (_a = element.closest('[id^="gravity-ui/navigation-"][id$="-composite-bar"]')) === null || _a === undefined ? undefined : _a.id) !== null && _b !== undefined ? _b : fallback;
16
+ }
17
+
18
+ exports.CURRENT_GHOST_SUPPRESSED_ATTRIBUTE = CURRENT_GHOST_SUPPRESSED_ATTRIBUTE;
19
+ exports.CURRENT_IDS_ATTRIBUTE = CURRENT_IDS_ATTRIBUTE;
20
+ exports.CURRENT_ROW_KEY_ATTRIBUTE = CURRENT_ROW_KEY_ATTRIBUTE;
21
+ exports.CURRENT_ROW_SELECTOR = CURRENT_ROW_SELECTOR;
22
+ exports.CURRENT_SUPPRESSED_ATTRIBUTE = CURRENT_SUPPRESSED_ATTRIBUTE;
23
+ exports.SURFACE_SELECTOR = SURFACE_SELECTOR;
24
+ exports.getCompositeBarSection = getCompositeBarSection;
25
+ //# sourceMappingURL=currentIndicatorDom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currentIndicatorDom.js","sources":["../../../../../../../src/components/AsideHeader/components/PageLayout/currentIndicatorDom.ts"],"sourcesContent":["import {COMPOSITE_BAR_ITEM_ID_ATTRIBUTE} from '../CompositeBar/constants';\n\nexport const CURRENT_ROW_SELECTOR = `[${COMPOSITE_BAR_ITEM_ID_ATTRIBUTE}]`;\nexport const CURRENT_IDS_ATTRIBUTE = 'data-gn-aside-current-ids';\nexport const SURFACE_SELECTOR = '[data-gn-aside-part=\"surface\"]';\nexport const CURRENT_SUPPRESSED_ATTRIBUTE = 'data-gn-aside-current-suppressed';\nexport const CURRENT_GHOST_SUPPRESSED_ATTRIBUTE = 'data-gn-aside-current-ghost-suppressed';\nexport const CURRENT_ROW_KEY_ATTRIBUTE = 'data-gn-aside-current-row-key';\n\nexport function getCompositeBarSection(element: HTMLElement, fallback = 'footer'): string {\n // UIKit row wrappers append \"-item-N\" to the bar ID. They are layout\n // positions, not sections, and can change while the logical row persists.\n return element.closest('[id^=\"gravity-ui/navigation-\"][id$=\"-composite-bar\"]')?.id ?? fallback;\n}\n"],"names":["COMPOSITE_BAR_ITEM_ID_ATTRIBUTE"],"mappings":";;;;AAEa,MAAA,oBAAoB,GAAG,CAAI,CAAA,EAAAA,yCAA+B;AAChE,MAAM,qBAAqB,GAAG;AAC9B,MAAM,gBAAgB,GAAG;AACzB,MAAM,4BAA4B,GAAG;AACrC,MAAM,kCAAkC,GAAG;AAC3C,MAAM,yBAAyB,GAAG;SAEzB,sBAAsB,CAAC,OAAoB,EAAE,QAAQ,GAAG,QAAQ,EAAA;;;;AAG5E,IAAA,OAAO,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,CAAC,sDAAsD,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAA,EAAE,MAAI,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,EAAA,GAAA,QAAQ;AAClG;;;;;;;;;;"}
@@ -0,0 +1,25 @@
1
+ type CurrentIdentity = {
2
+ key: string;
3
+ section: string;
4
+ rowId: string;
5
+ currentIds: string[];
6
+ row: HTMLElement;
7
+ surface: HTMLElement;
8
+ };
9
+ export type CurrentIdentitySnapshot = Map<HTMLElement, CurrentIdentity>;
10
+ export type CurrentPresentation = CurrentIdentity & {
11
+ rect: DOMRect;
12
+ color: string;
13
+ radius: string;
14
+ inFlight?: boolean;
15
+ };
16
+ export type CurrentSnapshot = Map<string, CurrentPresentation>;
17
+ export type CurrentTransfer = {
18
+ from: CurrentPresentation;
19
+ to: CurrentPresentation;
20
+ };
21
+ export declare function getCurrentRowKey(row: HTMLElement): string;
22
+ export declare function captureCurrentIdentity(panel: HTMLElement): CurrentIdentitySnapshot;
23
+ export declare function captureCurrentPresentation(panel: HTMLElement, identities?: CurrentIdentitySnapshot): CurrentSnapshot;
24
+ export declare function matchCurrentPresentations(before: CurrentSnapshot, after: CurrentSnapshot): CurrentTransfer[];
25
+ export {};
@@ -0,0 +1,89 @@
1
+ 'use strict';
2
+
3
+ var constants = require('../CompositeBar/constants.js');
4
+ var currentIndicatorDom = require('./currentIndicatorDom.js');
5
+
6
+ const DECORATIVE_SELECTOR = '[data-gn-aside-transition-overlay], [data-gn-aside-current-indicator-layer]';
7
+ function getCurrentRowKey(row) {
8
+ return JSON.stringify([
9
+ currentIndicatorDom.getCompositeBarSection(row),
10
+ row.getAttribute(constants.COMPOSITE_BAR_ITEM_ID_ATTRIBUTE),
11
+ ]);
12
+ }
13
+ function captureCurrentIdentity(panel) {
14
+ const snapshot = new Map();
15
+ panel.querySelectorAll(currentIndicatorDom.CURRENT_ROW_SELECTOR).forEach((row) => {
16
+ var _a, _b;
17
+ if (row.closest(DECORATIVE_SELECTOR))
18
+ return;
19
+ let currentIds;
20
+ try {
21
+ currentIds = JSON.parse((_a = row.getAttribute(currentIndicatorDom.CURRENT_IDS_ATTRIBUTE)) !== null && _a !== void 0 ? _a : '[]');
22
+ }
23
+ catch (_c) {
24
+ return;
25
+ }
26
+ if (!Array.isArray(currentIds) ||
27
+ !currentIds.length ||
28
+ !currentIds.every((id) => typeof id === 'string'))
29
+ return;
30
+ const surface = row.querySelector(currentIndicatorDom.SURFACE_SELECTOR);
31
+ if (!surface)
32
+ return;
33
+ snapshot.set(row, {
34
+ key: getCurrentRowKey(row),
35
+ section: currentIndicatorDom.getCompositeBarSection(row),
36
+ rowId: (_b = row.getAttribute(constants.COMPOSITE_BAR_ITEM_ID_ATTRIBUTE)) !== null && _b !== undefined ? _b : '',
37
+ currentIds,
38
+ row,
39
+ surface,
40
+ });
41
+ });
42
+ return snapshot;
43
+ }
44
+ function captureCurrentPresentation(panel, identities = captureCurrentIdentity(panel)) {
45
+ const snapshot = new Map();
46
+ identities.forEach((identity) => {
47
+ const rect = identity.surface.getBoundingClientRect();
48
+ const style = getComputedStyle(identity.surface);
49
+ // Preserve duplicate representatives so matching can reject ambiguity.
50
+ snapshot.set(`${identity.key}/${snapshot.size}`, Object.assign(Object.assign({}, identity), { rect, color: style.backgroundColor, radius: style.borderRadius }));
51
+ });
52
+ return snapshot;
53
+ }
54
+ function indexCurrents(snapshot) {
55
+ const currents = new Map();
56
+ snapshot.forEach((presentation) => {
57
+ presentation.currentIds.forEach((id) => {
58
+ var _a;
59
+ const key = JSON.stringify([presentation.section, id]);
60
+ currents.set(key, [...((_a = currents.get(key)) !== null && _a !== undefined ? _a : []), presentation]);
61
+ });
62
+ });
63
+ return currents;
64
+ }
65
+ function matchCurrentPresentations(before, after) {
66
+ const targets = indexCurrents(after);
67
+ const transfers = [];
68
+ indexCurrents(before).forEach((sources, key) => {
69
+ const destinations = targets.get(key);
70
+ if (sources.length !== 1 || (destinations === null || destinations === undefined ? undefined : destinations.length) !== 1)
71
+ return;
72
+ const [from] = sources;
73
+ const [to] = destinations;
74
+ if (from.currentIds.length !== 1 || to.currentIds.length !== 1)
75
+ return;
76
+ if (from.key === to.key && !from.inFlight)
77
+ return;
78
+ if (![from, to].every(({ rect }) => rect.width > 0 && rect.height > 0))
79
+ return;
80
+ transfers.push({ from, to });
81
+ });
82
+ return transfers;
83
+ }
84
+
85
+ exports.captureCurrentIdentity = captureCurrentIdentity;
86
+ exports.captureCurrentPresentation = captureCurrentPresentation;
87
+ exports.getCurrentRowKey = getCurrentRowKey;
88
+ exports.matchCurrentPresentations = matchCurrentPresentations;
89
+ //# sourceMappingURL=currentIndicatorModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currentIndicatorModel.js","sources":["../../../../../../../src/components/AsideHeader/components/PageLayout/currentIndicatorModel.ts"],"sourcesContent":["import {COMPOSITE_BAR_ITEM_ID_ATTRIBUTE} from '../CompositeBar/constants';\n\nimport {\n CURRENT_IDS_ATTRIBUTE,\n CURRENT_ROW_SELECTOR,\n SURFACE_SELECTOR,\n getCompositeBarSection,\n} from './currentIndicatorDom';\n\ntype CurrentIdentity = {\n key: string;\n section: string;\n rowId: string;\n currentIds: string[];\n row: HTMLElement;\n surface: HTMLElement;\n};\nexport type CurrentIdentitySnapshot = Map<HTMLElement, CurrentIdentity>;\nexport type CurrentPresentation = CurrentIdentity & {\n rect: DOMRect;\n color: string;\n radius: string;\n inFlight?: boolean;\n};\nexport type CurrentSnapshot = Map<string, CurrentPresentation>;\nexport type CurrentTransfer = {from: CurrentPresentation; to: CurrentPresentation};\n\nconst DECORATIVE_SELECTOR =\n '[data-gn-aside-transition-overlay], [data-gn-aside-current-indicator-layer]';\n\nexport function getCurrentRowKey(row: HTMLElement): string {\n return JSON.stringify([\n getCompositeBarSection(row),\n row.getAttribute(COMPOSITE_BAR_ITEM_ID_ATTRIBUTE),\n ]);\n}\n\nexport function captureCurrentIdentity(panel: HTMLElement): CurrentIdentitySnapshot {\n const snapshot: CurrentIdentitySnapshot = new Map();\n panel.querySelectorAll<HTMLElement>(CURRENT_ROW_SELECTOR).forEach((row) => {\n if (row.closest(DECORATIVE_SELECTOR)) return;\n let currentIds: unknown;\n try {\n currentIds = JSON.parse(row.getAttribute(CURRENT_IDS_ATTRIBUTE) ?? '[]');\n } catch {\n return;\n }\n if (\n !Array.isArray(currentIds) ||\n !currentIds.length ||\n !currentIds.every((id) => typeof id === 'string')\n )\n return;\n const surface = row.querySelector<HTMLElement>(SURFACE_SELECTOR);\n if (!surface) return;\n snapshot.set(row, {\n key: getCurrentRowKey(row),\n section: getCompositeBarSection(row),\n rowId: row.getAttribute(COMPOSITE_BAR_ITEM_ID_ATTRIBUTE) ?? '',\n currentIds,\n row,\n surface,\n });\n });\n return snapshot;\n}\n\nexport function captureCurrentPresentation(\n panel: HTMLElement,\n identities = captureCurrentIdentity(panel),\n): CurrentSnapshot {\n const snapshot: CurrentSnapshot = new Map();\n identities.forEach((identity) => {\n const rect = identity.surface.getBoundingClientRect();\n const style = getComputedStyle(identity.surface);\n // Preserve duplicate representatives so matching can reject ambiguity.\n snapshot.set(`${identity.key}/${snapshot.size}`, {\n ...identity,\n rect,\n color: style.backgroundColor,\n radius: style.borderRadius,\n });\n });\n return snapshot;\n}\n\nfunction indexCurrents(snapshot: CurrentSnapshot) {\n const currents = new Map<string, CurrentPresentation[]>();\n snapshot.forEach((presentation) => {\n presentation.currentIds.forEach((id) => {\n const key = JSON.stringify([presentation.section, id]);\n currents.set(key, [...(currents.get(key) ?? []), presentation]);\n });\n });\n return currents;\n}\n\nexport function matchCurrentPresentations(\n before: CurrentSnapshot,\n after: CurrentSnapshot,\n): CurrentTransfer[] {\n const targets = indexCurrents(after);\n const transfers: CurrentTransfer[] = [];\n indexCurrents(before).forEach((sources, key) => {\n const destinations = targets.get(key);\n if (sources.length !== 1 || destinations?.length !== 1) return;\n const [from] = sources;\n const [to] = destinations;\n if (from.currentIds.length !== 1 || to.currentIds.length !== 1) return;\n if (from.key === to.key && !from.inFlight) return;\n if (![from, to].every(({rect}) => rect.width > 0 && rect.height > 0)) return;\n transfers.push({from, to});\n });\n return transfers;\n}\n"],"names":["getCompositeBarSection","COMPOSITE_BAR_ITEM_ID_ATTRIBUTE","CURRENT_ROW_SELECTOR","CURRENT_IDS_ATTRIBUTE","SURFACE_SELECTOR"],"mappings":"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"}
@@ -7,10 +7,10 @@ var AsideHeaderContext = require('../AsideHeaderContext.js');
7
7
  var utils = require('../utils.js');
8
8
 
9
9
  const Panels = () => {
10
- const { panelItems, onClosePanel, size } = AsideHeaderContext.useAsideHeaderInnerContext();
10
+ const { panelItems, onClosePanel, size, compactTransition = true } = AsideHeaderContext.useAsideHeaderInnerContext();
11
11
  return panelItems ? (React.createElement(React.Fragment, null, panelItems.map((_a) => {
12
12
  var { id, className, style: itemStyle } = _a, rest = tslib.__rest(_a, ["id", "className", "style"]);
13
- return (React.createElement(uikit.Drawer, Object.assign({}, rest, { key: id, className: utils.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: utils.b('panel', className) })));
13
+ return (React.createElement(uikit.Drawer, Object.assign({}, rest, { key: id, className: utils.b('panels', utils.getCompactTransitionClassName(compactTransition)), 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: utils.b('panel', className) })));
14
14
  }))) : null;
15
15
  };
16
16
 
@@ -1 +1 @@
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":["useAsideHeaderInnerContext","__rest","Drawer","b"],"mappings":";;;;;;;;AAOO,MAAM,MAAM,GAAG,MAAK;IACvB,MAAM,EAAC,UAAU,EAAE,YAAY,EAAE,IAAI,EAAC,GAAGA,6CAA0B,EAAE;AAErE,IAAA,OAAO,UAAU,IACb,oBAAC,KAAK,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,GAAzCC,YAAA,CAAA,EAAA,EAAA,CAAA,IAAA,EAAA,WAAA,EAAA,OAAA,CAA0C,CAAD;QAAM,QAC5D,KAAC,CAAA,aAAA,CAAAC,YAAM,EACC,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,EACR,EAAA,GAAG,EAAE,EAAE,EACP,SAAS,EAAEC,OAAC,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,EAAEA,OAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EACzC,CAAA,CAAA;AACL,KAAA,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, getCompactTransitionClassName} from '../utils';\n\nexport const Panels = () => {\n const {panelItems, onClosePanel, size, compactTransition = true} = 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', getCompactTransitionClassName(compactTransition))}\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":["useAsideHeaderInnerContext","__rest","Drawer","b","getCompactTransitionClassName"],"mappings":";;;;;;;;AAOO,MAAM,MAAM,GAAG,MAAK;AACvB,IAAA,MAAM,EAAC,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI,EAAC,GAAGA,6CAA0B,EAAE;AAE/F,IAAA,OAAO,UAAU,IACb,oBAAC,KAAK,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,GAAzCC,YAAA,CAAA,EAAA,EAAA,CAAA,IAAA,EAAA,WAAA,EAAA,OAAA,CAA0C,CAAD;AAAM,QAAA,QAC5D,KAAA,CAAA,aAAA,CAACC,YAAM,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACC,IAAI,EAAA,EACR,GAAG,EAAE,EAAE,EACP,SAAS,EAAEC,OAAC,CAAC,QAAQ,EAAEC,mCAA6B,CAAC,iBAAiB,CAAC,CAAC,EACxE,YAAY,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,KAAI,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI,CAAA,EACjD,KAAK,EAAM,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,SAAS,CAAE,EAAA,EAAA,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,iCAAiC,EACxE,CAAA,EAAA,gBAAgB,EAAED,OAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAA,CAAA,CACzC;AACL,KAAA,CAAC,CACW,IACjB,IAAI;AACZ;;;;"}
@@ -0,0 +1,21 @@
1
+ import type { CSSProperties } from 'react';
2
+ export type AsideHeaderMenuDensity = 'default' | 'compact';
3
+ interface AsideHeaderDensityConfig {
4
+ itemHeight: number;
5
+ twoLineItemHeight: number;
6
+ actionSize: number;
7
+ actionItemHeight: number;
8
+ iconSize: number;
9
+ itemMarginInline: number;
10
+ iconBackgroundSize: number;
11
+ compactWidth: number;
12
+ expandedWidth: number;
13
+ footerItemHeight: number;
14
+ itemExpandedRadius: number;
15
+ itemCollapsedRadius: number;
16
+ itemTitleGap: number;
17
+ itemTitleGapEnd: number;
18
+ }
19
+ export declare function getAsideHeaderDensityConfig(density?: AsideHeaderMenuDensity): AsideHeaderDensityConfig;
20
+ export declare function getAsideHeaderDensityCssProperties(density?: AsideHeaderMenuDensity): CSSProperties;
21
+ export {};
@@ -0,0 +1,61 @@
1
+ 'use strict';
2
+
3
+ var constants = require('../constants.js');
4
+
5
+ const ASIDE_HEADER_DENSITY_CONFIG = {
6
+ default: {
7
+ itemHeight: constants.ITEM_HEIGHT,
8
+ twoLineItemHeight: 56,
9
+ actionSize: 36,
10
+ actionItemHeight: 50,
11
+ iconSize: constants.ASIDE_HEADER_ICON_SIZE,
12
+ itemMarginInline: 8,
13
+ iconBackgroundSize: 38,
14
+ compactWidth: constants.ASIDE_HEADER_COMPACT_WIDTH,
15
+ expandedWidth: constants.ASIDE_HEADER_EXPANDED_WIDTH,
16
+ footerItemHeight: constants.ITEM_HEIGHT,
17
+ itemExpandedRadius: 8,
18
+ itemCollapsedRadius: 7,
19
+ itemTitleGap: 8,
20
+ itemTitleGapEnd: 16,
21
+ },
22
+ compact: {
23
+ itemHeight: 32,
24
+ twoLineItemHeight: 45,
25
+ actionSize: 32,
26
+ actionItemHeight: 46,
27
+ iconSize: 16,
28
+ itemMarginInline: 6,
29
+ iconBackgroundSize: 32,
30
+ compactWidth: 44,
31
+ expandedWidth: 220,
32
+ footerItemHeight: 32,
33
+ itemExpandedRadius: 6,
34
+ itemCollapsedRadius: 6,
35
+ itemTitleGap: 4,
36
+ itemTitleGapEnd: 8,
37
+ },
38
+ };
39
+ function getAsideHeaderDensityConfig(density = 'default') {
40
+ return ASIDE_HEADER_DENSITY_CONFIG[density];
41
+ }
42
+ function getAsideHeaderDensityCssProperties(density = 'default') {
43
+ const config = getAsideHeaderDensityConfig(density);
44
+ return {
45
+ '--_--gn-aside-header-density-item-height': `${config.itemHeight}px`,
46
+ '--_--gn-aside-header-density-action-size': `${config.actionSize}px`,
47
+ '--_--gn-aside-header-density-icon-size': `${config.iconSize}px`,
48
+ '--_--gn-aside-header-density-footer-item-height': `${config.footerItemHeight}px`,
49
+ '--_--gn-aside-header-density-item-margin-inline': `${config.itemMarginInline}px`,
50
+ '--_--gn-aside-header-density-icon-background-size': `${config.iconBackgroundSize}px`,
51
+ '--_--gn-aside-header-density-compact-width': `${config.compactWidth}px`,
52
+ '--_--gn-aside-header-density-item-expanded-radius': `${config.itemExpandedRadius}px`,
53
+ '--_--gn-aside-header-density-item-collapsed-radius': `${config.itemCollapsedRadius}px`,
54
+ '--_--gn-aside-header-density-item-title-gap': `${config.itemTitleGap}px`,
55
+ '--_--gn-aside-header-density-item-title-gap-end': `${config.itemTitleGapEnd}px`,
56
+ };
57
+ }
58
+
59
+ exports.getAsideHeaderDensityConfig = getAsideHeaderDensityConfig;
60
+ exports.getAsideHeaderDensityCssProperties = getAsideHeaderDensityCssProperties;
61
+ //# sourceMappingURL=density.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"density.js","sources":["../../../../../src/components/AsideHeader/density.ts"],"sourcesContent":["import type {CSSProperties} from 'react';\n\nimport {\n ASIDE_HEADER_COMPACT_WIDTH,\n ASIDE_HEADER_EXPANDED_WIDTH,\n ASIDE_HEADER_ICON_SIZE,\n ITEM_HEIGHT,\n} from '../constants';\n\nexport type AsideHeaderMenuDensity = 'default' | 'compact';\n\ninterface AsideHeaderDensityConfig {\n itemHeight: number;\n twoLineItemHeight: number;\n actionSize: number;\n actionItemHeight: number;\n iconSize: number;\n itemMarginInline: number;\n iconBackgroundSize: number;\n compactWidth: number;\n expandedWidth: number;\n footerItemHeight: number;\n itemExpandedRadius: number;\n itemCollapsedRadius: number;\n itemTitleGap: number;\n itemTitleGapEnd: number;\n}\n\nconst ASIDE_HEADER_DENSITY_CONFIG: Record<AsideHeaderMenuDensity, AsideHeaderDensityConfig> = {\n default: {\n itemHeight: ITEM_HEIGHT,\n twoLineItemHeight: 56,\n actionSize: 36,\n actionItemHeight: 50,\n iconSize: ASIDE_HEADER_ICON_SIZE,\n itemMarginInline: 8,\n iconBackgroundSize: 38,\n compactWidth: ASIDE_HEADER_COMPACT_WIDTH,\n expandedWidth: ASIDE_HEADER_EXPANDED_WIDTH,\n footerItemHeight: ITEM_HEIGHT,\n itemExpandedRadius: 8,\n itemCollapsedRadius: 7,\n itemTitleGap: 8,\n itemTitleGapEnd: 16,\n },\n compact: {\n itemHeight: 32,\n twoLineItemHeight: 45,\n actionSize: 32,\n actionItemHeight: 46,\n iconSize: 16,\n itemMarginInline: 6,\n iconBackgroundSize: 32,\n compactWidth: 44,\n expandedWidth: 220,\n footerItemHeight: 32,\n itemExpandedRadius: 6,\n itemCollapsedRadius: 6,\n itemTitleGap: 4,\n itemTitleGapEnd: 8,\n },\n};\n\nexport function getAsideHeaderDensityConfig(\n density: AsideHeaderMenuDensity = 'default',\n): AsideHeaderDensityConfig {\n return ASIDE_HEADER_DENSITY_CONFIG[density];\n}\n\nexport function getAsideHeaderDensityCssProperties(\n density: AsideHeaderMenuDensity = 'default',\n): CSSProperties {\n const config = getAsideHeaderDensityConfig(density);\n\n return {\n '--_--gn-aside-header-density-item-height': `${config.itemHeight}px`,\n '--_--gn-aside-header-density-action-size': `${config.actionSize}px`,\n '--_--gn-aside-header-density-icon-size': `${config.iconSize}px`,\n '--_--gn-aside-header-density-footer-item-height': `${config.footerItemHeight}px`,\n '--_--gn-aside-header-density-item-margin-inline': `${config.itemMarginInline}px`,\n '--_--gn-aside-header-density-icon-background-size': `${config.iconBackgroundSize}px`,\n '--_--gn-aside-header-density-compact-width': `${config.compactWidth}px`,\n '--_--gn-aside-header-density-item-expanded-radius': `${config.itemExpandedRadius}px`,\n '--_--gn-aside-header-density-item-collapsed-radius': `${config.itemCollapsedRadius}px`,\n '--_--gn-aside-header-density-item-title-gap': `${config.itemTitleGap}px`,\n '--_--gn-aside-header-density-item-title-gap-end': `${config.itemTitleGapEnd}px`,\n } as CSSProperties;\n}\n"],"names":["ITEM_HEIGHT","ASIDE_HEADER_ICON_SIZE","ASIDE_HEADER_COMPACT_WIDTH","ASIDE_HEADER_EXPANDED_WIDTH"],"mappings":";;;;AA4BA,MAAM,2BAA2B,GAA6D;AAC1F,IAAA,OAAO,EAAE;AACL,QAAA,UAAU,EAAEA,qBAAW;AACvB,QAAA,iBAAiB,EAAE,EAAE;AACrB,QAAA,UAAU,EAAE,EAAE;AACd,QAAA,gBAAgB,EAAE,EAAE;AACpB,QAAA,QAAQ,EAAEC,gCAAsB;AAChC,QAAA,gBAAgB,EAAE,CAAC;AACnB,QAAA,kBAAkB,EAAE,EAAE;AACtB,QAAA,YAAY,EAAEC,oCAA0B;AACxC,QAAA,aAAa,EAAEC,qCAA2B;AAC1C,QAAA,gBAAgB,EAAEH,qBAAW;AAC7B,QAAA,kBAAkB,EAAE,CAAC;AACrB,QAAA,mBAAmB,EAAE,CAAC;AACtB,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,eAAe,EAAE,EAAE;AACtB,KAAA;AACD,IAAA,OAAO,EAAE;AACL,QAAA,UAAU,EAAE,EAAE;AACd,QAAA,iBAAiB,EAAE,EAAE;AACrB,QAAA,UAAU,EAAE,EAAE;AACd,QAAA,gBAAgB,EAAE,EAAE;AACpB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,gBAAgB,EAAE,CAAC;AACnB,QAAA,kBAAkB,EAAE,EAAE;AACtB,QAAA,YAAY,EAAE,EAAE;AAChB,QAAA,aAAa,EAAE,GAAG;AAClB,QAAA,gBAAgB,EAAE,EAAE;AACpB,QAAA,kBAAkB,EAAE,CAAC;AACrB,QAAA,mBAAmB,EAAE,CAAC;AACtB,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,eAAe,EAAE,CAAC;AACrB,KAAA;CACJ;AAEe,SAAA,2BAA2B,CACvC,OAAA,GAAkC,SAAS,EAAA;AAE3C,IAAA,OAAO,2BAA2B,CAAC,OAAO,CAAC;AAC/C;AAEgB,SAAA,kCAAkC,CAC9C,OAAA,GAAkC,SAAS,EAAA;AAE3C,IAAA,MAAM,MAAM,GAAG,2BAA2B,CAAC,OAAO,CAAC;IAEnD,OAAO;AACH,QAAA,0CAA0C,EAAE,CAAA,EAAG,MAAM,CAAC,UAAU,CAAI,EAAA,CAAA;AACpE,QAAA,0CAA0C,EAAE,CAAA,EAAG,MAAM,CAAC,UAAU,CAAI,EAAA,CAAA;AACpE,QAAA,wCAAwC,EAAE,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAI,EAAA,CAAA;AAChE,QAAA,iDAAiD,EAAE,CAAA,EAAG,MAAM,CAAC,gBAAgB,CAAI,EAAA,CAAA;AACjF,QAAA,iDAAiD,EAAE,CAAA,EAAG,MAAM,CAAC,gBAAgB,CAAI,EAAA,CAAA;AACjF,QAAA,mDAAmD,EAAE,CAAA,EAAG,MAAM,CAAC,kBAAkB,CAAI,EAAA,CAAA;AACrF,QAAA,4CAA4C,EAAE,CAAA,EAAG,MAAM,CAAC,YAAY,CAAI,EAAA,CAAA;AACxE,QAAA,mDAAmD,EAAE,CAAA,EAAG,MAAM,CAAC,kBAAkB,CAAI,EAAA,CAAA;AACrF,QAAA,oDAAoD,EAAE,CAAA,EAAG,MAAM,CAAC,mBAAmB,CAAI,EAAA,CAAA;AACvF,QAAA,6CAA6C,EAAE,CAAA,EAAG,MAAM,CAAC,YAAY,CAAI,EAAA,CAAA;AACzE,QAAA,iDAAiD,EAAE,CAAA,EAAG,MAAM,CAAC,eAAe,CAAI,EAAA,CAAA;KAClE;AACtB;;;;;"}
@@ -0,0 +1 @@
1
+ export default function translate(key: string): string;
@@ -5,14 +5,23 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var button_collapse = "Collapse";
6
6
  var button_expand = "Expand";
7
7
  var label_more = "More";
8
+ var quick_access_pin = "Pin to quick access";
9
+ var quick_access_unpin = "Remove from quick access";
10
+ var quick_access_title = "Pinned";
8
11
  var en = {
9
12
  button_collapse: button_collapse,
10
13
  button_expand: button_expand,
11
- label_more: label_more
14
+ label_more: label_more,
15
+ quick_access_pin: quick_access_pin,
16
+ quick_access_unpin: quick_access_unpin,
17
+ quick_access_title: quick_access_title
12
18
  };
13
19
 
14
20
  exports.button_collapse = button_collapse;
15
21
  exports.button_expand = button_expand;
16
22
  exports.default = en;
17
23
  exports.label_more = label_more;
24
+ exports.quick_access_pin = quick_access_pin;
25
+ exports.quick_access_title = quick_access_title;
26
+ exports.quick_access_unpin = quick_access_unpin;
18
27
  //# sourceMappingURL=en.json.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,14 +1,14 @@
1
- declare const _default: ((key: "button_collapse" | "button_expand" | "label_more", params?: import("@gravity-ui/i18n").Params) => string) & {
1
+ declare const _default: ((key: "button_collapse" | "button_expand" | "label_more" | "quick_access_pin" | "quick_access_unpin" | "quick_access_title", params?: import("@gravity-ui/i18n").Params) => string) & {
2
2
  Translation: import("react").ComponentType<{
3
3
  children: (props: {
4
- t: (key: "button_collapse" | "button_expand" | "label_more", params?: import("@gravity-ui/i18n").Params) => string;
4
+ t: (key: "button_collapse" | "button_expand" | "label_more" | "quick_access_pin" | "quick_access_unpin" | "quick_access_title", params?: import("@gravity-ui/i18n").Params) => string;
5
5
  }) => React.ReactNode;
6
6
  }>;
7
7
  useTranslation: () => {
8
- t: (key: "button_collapse" | "button_expand" | "label_more", params?: import("@gravity-ui/i18n").Params) => string;
8
+ t: (key: "button_collapse" | "button_expand" | "label_more" | "quick_access_pin" | "quick_access_unpin" | "quick_access_title", params?: import("@gravity-ui/i18n").Params) => string;
9
9
  };
10
10
  keysetData: {
11
- "gn-AsideHeader": Record<"button_collapse" | "button_expand" | "label_more", import("@gravity-ui/i18n").KeyData>;
11
+ "gn-AsideHeader": Record<"button_collapse" | "button_expand" | "label_more" | "quick_access_pin" | "quick_access_unpin" | "quick_access_title", import("@gravity-ui/i18n").KeyData>;
12
12
  };
13
13
  };
14
14
  export default _default;
@@ -5,14 +5,23 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var button_collapse = "Свернуть";
6
6
  var button_expand = "Развернуть";
7
7
  var label_more = "Ещё";
8
+ var quick_access_pin = "Закрепить в быстром доступе";
9
+ var quick_access_unpin = "Убрать из быстрого доступа";
10
+ var quick_access_title = "Закреплённые";
8
11
  var ru = {
9
12
  button_collapse: button_collapse,
10
13
  button_expand: button_expand,
11
- label_more: label_more
14
+ label_more: label_more,
15
+ quick_access_pin: quick_access_pin,
16
+ quick_access_unpin: quick_access_unpin,
17
+ quick_access_title: quick_access_title
12
18
  };
13
19
 
14
20
  exports.button_collapse = button_collapse;
15
21
  exports.button_expand = button_expand;
16
22
  exports.default = ru;
17
23
  exports.label_more = label_more;
24
+ exports.quick_access_pin = quick_access_pin;
25
+ exports.quick_access_title = quick_access_title;
26
+ exports.quick_access_unpin = quick_access_unpin;
18
27
  //# sourceMappingURL=ru.json.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ru.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ru.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,5 @@
1
1
  export { AsideHeader } from './AsideHeader';
2
+ export type { AsideHeaderMenuDensity } from './density';
2
3
  export type { AsideHeaderProps, AsideHeaderItem, PanelItemProps } from './types';
3
4
  export type { MenuGroup } from '../types';
4
5
  export { AsideHeaderContextProvider, useAsideHeaderContext } from './AsideHeaderContext';
@@ -0,0 +1,9 @@
1
+ import { MenuGroup } from '../types';
2
+ import { AsideHeaderItem } from './types';
3
+ type QuickAccessPinCandidate = Pick<AsideHeaderItem, 'id' | 'type' | 'hidden' | 'quickAccess' | 'compositeBarMenuPopupItems'> & {
4
+ groupHeaderExpanded?: boolean;
5
+ };
6
+ export declare function isQuickAccessPinEligible(item: QuickAccessPinCandidate): boolean;
7
+ export declare function isQuickAccessMenuItem(item: AsideHeaderItem): boolean;
8
+ export declare function getQuickAccessMenuItems(items: AsideHeaderItem[], menuGroups?: MenuGroup[]): AsideHeaderItem[];
9
+ export {};
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ var constants = require('./components/CompositeBar/constants.js');
4
+ var types = require('./types.js');
5
+
6
+ function isQuickAccessPinEligible(item) {
7
+ var _a;
8
+ if (item.hidden || item.groupHeaderExpanded !== undefined) {
9
+ return false;
10
+ }
11
+ if (item.type === 'divider' || item.type === 'action') {
12
+ return false;
13
+ }
14
+ if (item.id === constants.COLLAPSE_ITEM_ID || item.id === types.ALL_PAGES_ID) {
15
+ return false;
16
+ }
17
+ return !((_a = item.compositeBarMenuPopupItems) === null || _a === undefined ? undefined : _a.length);
18
+ }
19
+ function isQuickAccessMenuItem(item) {
20
+ return Boolean(item.quickAccess) && isQuickAccessPinEligible(item);
21
+ }
22
+ function getQuickAccessMenuItems(items, menuGroups) {
23
+ var _a;
24
+ const hiddenGroupIds = new Set((_a = menuGroups === null || menuGroups === undefined ? undefined : menuGroups.filter((group) => group.hidden).map((group) => group.id)) !== null && _a !== undefined ? _a : []);
25
+ return items.filter((item) => isQuickAccessMenuItem(item) && (!item.groupId || !hiddenGroupIds.has(item.groupId)));
26
+ }
27
+
28
+ exports.getQuickAccessMenuItems = getQuickAccessMenuItems;
29
+ exports.isQuickAccessMenuItem = isQuickAccessMenuItem;
30
+ exports.isQuickAccessPinEligible = isQuickAccessPinEligible;
31
+ //# sourceMappingURL=quickAccess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickAccess.js","sources":["../../../../../src/components/AsideHeader/quickAccess.ts"],"sourcesContent":["import {MenuGroup} from '../types';\n\nimport {COLLAPSE_ITEM_ID} from './components/CompositeBar/constants';\nimport {ALL_PAGES_ID, AsideHeaderItem} from './types';\n\ntype QuickAccessPinCandidate = Pick<\n AsideHeaderItem,\n 'id' | 'type' | 'hidden' | 'quickAccess' | 'compositeBarMenuPopupItems'\n> & {\n groupHeaderExpanded?: boolean;\n};\n\nexport function isQuickAccessPinEligible(item: QuickAccessPinCandidate): boolean {\n if (item.hidden || item.groupHeaderExpanded !== undefined) {\n return false;\n }\n\n if (item.type === 'divider' || item.type === 'action') {\n return false;\n }\n\n if (item.id === COLLAPSE_ITEM_ID || item.id === ALL_PAGES_ID) {\n return false;\n }\n\n return !item.compositeBarMenuPopupItems?.length;\n}\n\nexport function isQuickAccessMenuItem(item: AsideHeaderItem): boolean {\n return Boolean(item.quickAccess) && isQuickAccessPinEligible(item);\n}\n\nexport function getQuickAccessMenuItems(\n items: AsideHeaderItem[],\n menuGroups?: MenuGroup[],\n): AsideHeaderItem[] {\n const hiddenGroupIds = new Set(\n menuGroups?.filter((group) => group.hidden).map((group) => group.id) ?? [],\n );\n\n return items.filter(\n (item) =>\n isQuickAccessMenuItem(item) && (!item.groupId || !hiddenGroupIds.has(item.groupId)),\n );\n}\n"],"names":["COLLAPSE_ITEM_ID","ALL_PAGES_ID"],"mappings":";;;;;AAYM,SAAU,wBAAwB,CAAC,IAA6B,EAAA;;IAClE,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE;AACvD,QAAA,OAAO,KAAK;;AAGhB,IAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AACnD,QAAA,OAAO,KAAK;;AAGhB,IAAA,IAAI,IAAI,CAAC,EAAE,KAAKA,0BAAgB,IAAI,IAAI,CAAC,EAAE,KAAKC,kBAAY,EAAE;AAC1D,QAAA,OAAO,KAAK;;IAGhB,OAAO,EAAC,CAAA,EAAA,GAAA,IAAI,CAAC,0BAA0B,MAAA,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAE,MAAM,CAAA;AACnD;AAEM,SAAU,qBAAqB,CAAC,IAAqB,EAAA;IACvD,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC;AACtE;AAEgB,SAAA,uBAAuB,CACnC,KAAwB,EACxB,UAAwB,EAAA;;AAExB,IAAA,MAAM,cAAc,GAAG,IAAI,GAAG,CAC1B,MAAA,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,SAAA,GAAA,SAAA,GAAV,UAAU,CAAE,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,CAAA,CAAE,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC,MAAI,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,EAAA,GAAA,EAAE,CAC7E;AAED,IAAA,OAAO,KAAK,CAAC,MAAM,CACf,CAAC,IAAI,KACD,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAC1F;AACL;;;;;;"}