@gravity-ui/navigation 6.6.0 → 7.0.0-beta.1
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.
- package/build/cjs/components/AsideHeader/AsideHeader.css +11 -1
- package/build/cjs/components/AsideHeader/AsideHeader.js +2 -2
- package/build/cjs/components/AsideHeader/AsideHeader.js.map +1 -1
- package/build/cjs/components/AsideHeader/AsideHeader.module.scss.js +1 -1
- package/build/cjs/components/AsideHeader/AsideHeaderContext.d.ts +5 -0
- package/build/cjs/components/AsideHeader/AsideHeaderContext.js +2 -0
- package/build/cjs/components/AsideHeader/AsideHeaderContext.js.map +1 -1
- package/build/cjs/components/AsideHeader/__playwright__/AsideTransitionExample.d.ts +8 -0
- package/build/cjs/components/AsideHeader/__playwright__/CollapseButtonExample.d.ts +14 -0
- package/build/cjs/components/AsideHeader/__playwright__/CompactTransitionExample.d.ts +12 -0
- package/build/cjs/components/AsideHeader/__playwright__/CurrentIndicatorExample.d.ts +20 -0
- package/build/cjs/components/AsideHeader/__playwright__/DecorationExample.d.ts +7 -0
- package/build/cjs/components/AsideHeader/__playwright__/QuickAccessOverflowExample.d.ts +8 -0
- package/build/cjs/components/AsideHeader/__playwright__/currentIndicatorPaint.d.ts +21 -0
- package/build/cjs/components/AsideHeader/__playwright__/transitionTestUtils.d.ts +4 -0
- package/build/cjs/components/AsideHeader/__stories__/fullNavigationMoc.d.ts +6 -0
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +2 -4
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js +7 -2
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js +1 -3
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/index.d.ts +4 -4
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js +2 -4
- package/build/cjs/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/AsideDivider.d.ts +7 -0
- package/build/cjs/components/AsideHeader/components/AsideDivider.js +13 -0
- package/build/cjs/components/AsideHeader/components/AsideDivider.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.css +1 -1
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.d.ts +3 -1
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js +12 -8
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.module.scss.js +1 -1
- package/build/cjs/components/AsideHeader/components/CollapseButton/useCollapseAnchor.d.ts +20 -0
- package/build/cjs/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js +170 -0
- package/build/cjs/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.css +3 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.d.ts +13 -2
- package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.js +53 -39
- package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/CompositeBar.module.scss.js +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.css +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js +4 -2
- package/build/cjs/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.css +33 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.js +161 -43
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.module.scss.js +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/Item.types.d.ts +27 -4
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.d.ts +19 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js +137 -20
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.d.ts +7 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js +25 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.d.ts +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js +5 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.css +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.d.ts +4 -6
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js +14 -5
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.module.scss.js +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.d.ts +8 -8
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js +68 -33
- package/build/cjs/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/constants.d.ts +1 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/constants.js +2 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/constants.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/CompositeBar/presentationCurrent.d.ts +24 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/presentationCurrent.js +39 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/presentationCurrent.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/CompositeBar/utils.d.ts +12 -7
- package/build/cjs/components/AsideHeader/components/CompositeBar/utils.js +42 -35
- package/build/cjs/components/AsideHeader/components/CompositeBar/utils.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/FirstPanel.js +129 -10
- package/build/cjs/components/AsideHeader/components/FirstPanel.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.css +1 -1
- package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.js +18 -2
- package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/FooterItem/FooterItem.module.scss.js +1 -1
- package/build/cjs/components/AsideHeader/components/Header.js +7 -4
- package/build/cjs/components/AsideHeader/components/Header.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.css +11 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.d.ts +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js +13 -7
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideLayoutTransition.d.ts +80 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js +600 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.d.ts +14 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js +164 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.d.ts +14 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js +94 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.css +11 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.d.ts +1 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js +14 -5
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.css +11 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.d.ts +1 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js +5 -2
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -1
- package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorDom.d.ts +7 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorDom.js +25 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorDom.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorModel.d.ts +25 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorModel.js +89 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/currentIndicatorModel.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/Panels.js +2 -2
- package/build/cjs/components/AsideHeader/components/Panels.js.map +1 -1
- package/build/cjs/components/AsideHeader/density.d.ts +22 -0
- package/build/cjs/components/AsideHeader/density.js +67 -0
- package/build/cjs/components/AsideHeader/density.js.map +1 -0
- package/build/cjs/components/AsideHeader/i18n/__mocks__/index.d.ts +1 -0
- package/build/cjs/components/AsideHeader/i18n/en.json.js +10 -1
- package/build/cjs/components/AsideHeader/i18n/en.json.js.map +1 -1
- package/build/cjs/components/AsideHeader/i18n/index.d.ts +4 -4
- package/build/cjs/components/AsideHeader/i18n/ru.json.js +10 -1
- package/build/cjs/components/AsideHeader/i18n/ru.json.js.map +1 -1
- package/build/cjs/components/AsideHeader/index.d.ts +1 -0
- package/build/cjs/components/AsideHeader/quickAccess.d.ts +9 -0
- package/build/cjs/components/AsideHeader/quickAccess.js +31 -0
- package/build/cjs/components/AsideHeader/quickAccess.js.map +1 -0
- package/build/cjs/components/AsideHeader/types.d.ts +50 -5
- package/build/cjs/components/AsideHeader/types.js.map +1 -1
- package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js +18 -3
- package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -1
- package/build/cjs/components/AsideHeader/utils.d.ts +1 -0
- package/build/cjs/components/AsideHeader/utils.js +2 -0
- package/build/cjs/components/AsideHeader/utils.js.map +1 -1
- package/build/cjs/components/Footer/desktop/Footer.css +1 -1
- package/build/cjs/components/Footer/mobile/Footer.css +1 -1
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.css +1 -1
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.js +1 -1
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.js.map +1 -1
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.module.scss.js +1 -1
- package/build/cjs/components/Logo/Logo.css +1 -1
- package/build/cjs/components/Logo/Logo.d.ts +1 -0
- package/build/cjs/components/Logo/Logo.js +4 -4
- package/build/cjs/components/Logo/Logo.js.map +1 -1
- package/build/cjs/components/constants.d.ts +5 -0
- package/build/cjs/components/constants.js +6 -0
- package/build/cjs/components/constants.js.map +1 -1
- package/build/cjs/components/types.d.ts +4 -4
- package/build/docs/components/AsideHeader.md +243 -42
- package/build/esm/components/AsideHeader/AsideHeader.css +11 -1
- package/build/esm/components/AsideHeader/AsideHeader.js +2 -2
- package/build/esm/components/AsideHeader/AsideHeader.js.map +1 -1
- package/build/esm/components/AsideHeader/AsideHeader.module.scss.js +1 -1
- package/build/esm/components/AsideHeader/AsideHeaderContext.d.ts +5 -0
- package/build/esm/components/AsideHeader/AsideHeaderContext.js +2 -0
- package/build/esm/components/AsideHeader/AsideHeaderContext.js.map +1 -1
- package/build/esm/components/AsideHeader/__playwright__/AsideTransitionExample.d.ts +8 -0
- package/build/esm/components/AsideHeader/__playwright__/CollapseButtonExample.d.ts +14 -0
- package/build/esm/components/AsideHeader/__playwright__/CompactTransitionExample.d.ts +12 -0
- package/build/esm/components/AsideHeader/__playwright__/CurrentIndicatorExample.d.ts +20 -0
- package/build/esm/components/AsideHeader/__playwright__/DecorationExample.d.ts +7 -0
- package/build/esm/components/AsideHeader/__playwright__/QuickAccessOverflowExample.d.ts +8 -0
- package/build/esm/components/AsideHeader/__playwright__/currentIndicatorPaint.d.ts +21 -0
- package/build/esm/components/AsideHeader/__playwright__/transitionTestUtils.d.ts +4 -0
- package/build/esm/components/AsideHeader/__stories__/fullNavigationMoc.d.ts +6 -0
- package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +3 -5
- package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -1
- package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js +7 -2
- package/build/esm/components/AsideHeader/components/AllPagesPanel/AllPagesPanel.js.map +1 -1
- package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js +1 -3
- package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/en.json.js.map +1 -1
- package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/index.d.ts +4 -4
- package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js +2 -4
- package/build/esm/components/AsideHeader/components/AllPagesPanel/i18n/ru.json.js.map +1 -1
- package/build/esm/components/AsideHeader/components/AsideDivider.d.ts +7 -0
- package/build/esm/components/AsideHeader/components/AsideDivider.js +11 -0
- package/build/esm/components/AsideHeader/components/AsideDivider.js.map +1 -0
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.css +1 -1
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.d.ts +3 -1
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js +12 -8
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.module.scss.js +1 -1
- package/build/esm/components/AsideHeader/components/CollapseButton/useCollapseAnchor.d.ts +20 -0
- package/build/esm/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js +167 -0
- package/build/esm/components/AsideHeader/components/CollapseButton/useCollapseAnchor.js.map +1 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.css +3 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.d.ts +13 -2
- package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.js +54 -40
- package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/CompositeBar.module.scss.js +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.css +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js +4 -2
- package/build/esm/components/AsideHeader/components/CompositeBar/HighlightedItem/HighlightedItem.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.css +33 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.js +164 -46
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.module.scss.js +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/Item.types.d.ts +27 -4
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.d.ts +19 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js +139 -23
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemPopup.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.d.ts +7 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js +23 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/ItemQuickAccessPin.js.map +1 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.d.ts +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js +5 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/Item/renderItemTitle.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.css +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.d.ts +4 -6
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js +15 -6
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/ScrollableWithScrollbar.module.scss.js +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.d.ts +8 -8
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js +68 -33
- package/build/esm/components/AsideHeader/components/CompositeBar/ScrollableWithScrollbar/useScrollableScrollbarSync.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/constants.d.ts +1 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/constants.js +2 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/constants.js.map +1 -1
- package/build/esm/components/AsideHeader/components/CompositeBar/presentationCurrent.d.ts +24 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/presentationCurrent.js +36 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/presentationCurrent.js.map +1 -0
- package/build/esm/components/AsideHeader/components/CompositeBar/utils.d.ts +12 -7
- package/build/esm/components/AsideHeader/components/CompositeBar/utils.js +44 -35
- package/build/esm/components/AsideHeader/components/CompositeBar/utils.js.map +1 -1
- package/build/esm/components/AsideHeader/components/FirstPanel.js +131 -12
- package/build/esm/components/AsideHeader/components/FirstPanel.js.map +1 -1
- package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.css +1 -1
- package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.js +18 -2
- package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.js.map +1 -1
- package/build/esm/components/AsideHeader/components/FooterItem/FooterItem.module.scss.js +1 -1
- package/build/esm/components/AsideHeader/components/Header.js +7 -4
- package/build/esm/components/AsideHeader/components/Header.js.map +1 -1
- package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.css +11 -1
- package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.d.ts +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.js +13 -7
- package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.js.map +1 -1
- package/build/esm/components/AsideHeader/components/PageLayout/AsideLayoutTransition.d.ts +80 -0
- package/build/esm/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js +598 -0
- package/build/esm/components/AsideHeader/components/PageLayout/AsideLayoutTransition.js.map +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.d.ts +14 -0
- package/build/esm/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js +162 -0
- package/build/esm/components/AsideHeader/components/PageLayout/CurrentIndicatorTransition.js.map +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.d.ts +14 -0
- package/build/esm/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js +92 -0
- package/build/esm/components/AsideHeader/components/PageLayout/CurrentPresentationObserver.js.map +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.css +11 -1
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.d.ts +1 -1
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js +15 -6
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -1
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.css +11 -1
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.d.ts +1 -1
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js +5 -2
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -1
- package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorDom.d.ts +7 -0
- package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorDom.js +17 -0
- package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorDom.js.map +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorModel.d.ts +25 -0
- package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorModel.js +84 -0
- package/build/esm/components/AsideHeader/components/PageLayout/currentIndicatorModel.js.map +1 -0
- package/build/esm/components/AsideHeader/components/Panels.js +3 -3
- package/build/esm/components/AsideHeader/components/Panels.js.map +1 -1
- package/build/esm/components/AsideHeader/density.d.ts +22 -0
- package/build/esm/components/AsideHeader/density.js +63 -0
- package/build/esm/components/AsideHeader/density.js.map +1 -0
- package/build/esm/components/AsideHeader/i18n/__mocks__/index.d.ts +1 -0
- package/build/esm/components/AsideHeader/i18n/en.json.js +8 -2
- package/build/esm/components/AsideHeader/i18n/en.json.js.map +1 -1
- package/build/esm/components/AsideHeader/i18n/index.d.ts +4 -4
- package/build/esm/components/AsideHeader/i18n/ru.json.js +8 -2
- package/build/esm/components/AsideHeader/i18n/ru.json.js.map +1 -1
- package/build/esm/components/AsideHeader/index.d.ts +1 -0
- package/build/esm/components/AsideHeader/quickAccess.d.ts +9 -0
- package/build/esm/components/AsideHeader/quickAccess.js +27 -0
- package/build/esm/components/AsideHeader/quickAccess.js.map +1 -0
- package/build/esm/components/AsideHeader/types.d.ts +50 -5
- package/build/esm/components/AsideHeader/types.js.map +1 -1
- package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js +18 -3
- package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -1
- package/build/esm/components/AsideHeader/utils.d.ts +1 -0
- package/build/esm/components/AsideHeader/utils.js +2 -1
- package/build/esm/components/AsideHeader/utils.js.map +1 -1
- package/build/esm/components/Footer/desktop/Footer.css +1 -1
- package/build/esm/components/Footer/mobile/Footer.css +1 -1
- package/build/esm/components/HotkeysPanel/HotkeysPanel.css +1 -1
- package/build/esm/components/HotkeysPanel/HotkeysPanel.js +1 -1
- package/build/esm/components/HotkeysPanel/HotkeysPanel.js.map +1 -1
- package/build/esm/components/HotkeysPanel/HotkeysPanel.module.scss.js +1 -1
- package/build/esm/components/Logo/Logo.css +1 -1
- package/build/esm/components/Logo/Logo.d.ts +1 -0
- package/build/esm/components/Logo/Logo.js +4 -4
- package/build/esm/components/Logo/Logo.js.map +1 -1
- package/build/esm/components/constants.d.ts +5 -0
- package/build/esm/components/constants.js +6 -1
- package/build/esm/components/constants.js.map +1 -1
- package/build/esm/components/types.d.ts +4 -4
- package/package.json +1 -1
- package/build/cjs/assets/icons/control-menu-button.svg.js +0 -41
- package/build/cjs/assets/icons/control-menu-button.svg.js.map +0 -1
- package/build/esm/assets/icons/control-menu-button.svg.js +0 -18
- package/build/esm/assets/icons/control-menu-button.svg.js.map +0 -1
|
@@ -3,13 +3,22 @@ import { DrawerProps, PopupProps, QAProps } from '@gravity-ui/uikit';
|
|
|
3
3
|
import { RenderContentType } from '../Content';
|
|
4
4
|
import { LogoProps, MenuGroup, MenuItem, OpenModalSubscriber, TopAlertProps } from '../types';
|
|
5
5
|
import { AsideHeaderContextType } from './AsideHeaderContext';
|
|
6
|
+
import { AsideHeaderMenuDensity } from './density';
|
|
6
7
|
export interface PanelItemProps extends DrawerProps {
|
|
7
8
|
id: string;
|
|
8
9
|
}
|
|
9
10
|
export interface LayoutProps {
|
|
10
11
|
compact: boolean;
|
|
12
|
+
/** Animate compact layout changes. @default true */
|
|
13
|
+
compactTransition?: boolean;
|
|
11
14
|
className?: string;
|
|
12
15
|
topAlert?: TopAlertProps;
|
|
16
|
+
/**
|
|
17
|
+
* Menu item density. `compact` reduces item height, icon size, spacing, and aside width
|
|
18
|
+
* without changing navigation behavior.
|
|
19
|
+
* @default 'default'
|
|
20
|
+
*/
|
|
21
|
+
menuDensity?: AsideHeaderMenuDensity;
|
|
13
22
|
}
|
|
14
23
|
interface EditMenuProps {
|
|
15
24
|
onOpenEditMode?: () => void;
|
|
@@ -24,12 +33,13 @@ interface EditMenuProps {
|
|
|
24
33
|
onToggleMenuGroup?: (changedGroup: MenuGroup) => void;
|
|
25
34
|
}
|
|
26
35
|
/**
|
|
27
|
-
* Menu overflow behavior.
|
|
28
|
-
* - `collapse` — extra items collapse under a "More" popup (default).
|
|
29
|
-
* - `scroll` — all items remain visible inside a scrollable
|
|
36
|
+
* Menu overflow behavior for menu items.
|
|
37
|
+
* - `collapse` — extra menu items collapse under a "More" popup (default).
|
|
38
|
+
* - `scroll` — all menu items remain visible inside a scrollable column with a native thin scrollbar.
|
|
30
39
|
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
40
|
+
* The distinction applies to menu items only: quick access and the menu always share a single
|
|
41
|
+
* scroll container that scrolls when the column does not fit the available height. In compact
|
|
42
|
+
* mode menu items still fall back to `collapse` regardless of this value.
|
|
33
43
|
*/
|
|
34
44
|
export type AsideHeaderMenuOverflow = 'collapse' | 'scroll';
|
|
35
45
|
interface AsideHeaderGeneralProps extends QAProps {
|
|
@@ -70,6 +80,11 @@ interface AsideHeaderDefaultProps {
|
|
|
70
80
|
subheaderItems?: AsideHeaderItem[];
|
|
71
81
|
menuItems?: AsideHeaderItem[];
|
|
72
82
|
menuGroups?: MenuGroup[];
|
|
83
|
+
/**
|
|
84
|
+
* Shows icons for child items in inline groups and group popups.
|
|
85
|
+
* @default true
|
|
86
|
+
*/
|
|
87
|
+
menuGroupNestedIcons?: boolean;
|
|
73
88
|
/**
|
|
74
89
|
* Called only from **All pages** edit mode when the user toggles visibility of a **menu group** (group header pin), updating `menuGroup.hidden`.
|
|
75
90
|
* Use with controlled `menuGroups`; not emitted for programmatic `menuGroups` changes outside All pages.
|
|
@@ -77,7 +92,27 @@ interface AsideHeaderDefaultProps {
|
|
|
77
92
|
onMenuGroupsChanged?: (menuGroups: MenuGroup[]) => void;
|
|
78
93
|
defaultMenuItems?: AsideHeaderItem[];
|
|
79
94
|
onMenuItemsChanged?: (items: AsideHeaderItem[]) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Enables the quick access section and pin controls for eligible leaf menu items.
|
|
97
|
+
* The state remains controlled by `menuItems`; use `onQuickAccessChange` to update it.
|
|
98
|
+
* @default false
|
|
99
|
+
*/
|
|
100
|
+
enableQuickAccess?: boolean;
|
|
101
|
+
/**
|
|
102
|
+
* Keeps the active item highlighted in the main menu when the same item is also
|
|
103
|
+
* rendered in quick access.
|
|
104
|
+
* @default false
|
|
105
|
+
*/
|
|
106
|
+
quickAccessHighlightInMainMenu?: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Called when a user pins or unpins an eligible leaf item. The library does not
|
|
109
|
+
* mutate `menuItems`; the consumer should provide the updated controlled value.
|
|
110
|
+
*/
|
|
111
|
+
onQuickAccessChange?: (item: AsideHeaderItem, quickAccess: boolean) => void;
|
|
80
112
|
headerDecoration?: boolean;
|
|
113
|
+
/** Hides header/footer separators and their spacing; scroll-edge indicators remain visible
|
|
114
|
+
* while content is hidden beyond the respective edge. @default false */
|
|
115
|
+
hideSectionDividers?: boolean;
|
|
81
116
|
/**
|
|
82
117
|
* When provided, the map is the source of truth for which menu groups are collapsed
|
|
83
118
|
* in inline (`menuOverflow: 'scroll'`) layout. Keys are `MenuGroup.id`, values mean collapsed.
|
|
@@ -102,6 +137,16 @@ export declare enum InnerPanels {
|
|
|
102
137
|
/** Menu item id for the All pages row (same value as {@link InnerPanels.AllPages}). */
|
|
103
138
|
export declare const ALL_PAGES_ID = InnerPanels.AllPages;
|
|
104
139
|
export interface AsideHeaderItem extends MenuItem {
|
|
140
|
+
/**
|
|
141
|
+
* Shows an eligible leaf item in the quick access section when quick access is enabled.
|
|
142
|
+
*/
|
|
143
|
+
quickAccess?: boolean;
|
|
144
|
+
/**
|
|
145
|
+
* Maximum number of title lines in the expanded sidebar.
|
|
146
|
+
* Collapsed (icon-only) sidebar and popup rows always use one line.
|
|
147
|
+
* When omitted, the legacy two-line clamp is preserved.
|
|
148
|
+
*/
|
|
149
|
+
titleLines?: 1 | 2;
|
|
105
150
|
enableTooltip?: boolean;
|
|
106
151
|
onItemClick?: (item: AsideHeaderItem, collapsed: boolean, event: React.MouseEvent<HTMLElement, MouseEvent>) => void;
|
|
107
152
|
bringForward?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../../src/components/AsideHeader/types.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {DrawerProps, PopupProps, QAProps} from '@gravity-ui/uikit';\n\nimport {RenderContentType} from '../Content';\nimport {LogoProps, MenuGroup, MenuItem, OpenModalSubscriber, TopAlertProps} from '../types';\n\nimport {AsideHeaderContextType} from './AsideHeaderContext';\n\nexport interface PanelItemProps extends DrawerProps {\n id: string;\n}\n\nexport interface LayoutProps {\n compact: boolean;\n className?: string;\n topAlert?: TopAlertProps;\n}\n\ninterface EditMenuProps {\n onOpenEditMode?: () => void;\n onToggleMenuItem?: (changedItem: AsideHeaderItem) => void;\n onResetSettingsToDefault?: () => void;\n enableSorting?: boolean;\n onChangeItemsOrder?: (changedItem: AsideHeaderItem, oldIndex: number, newIndex: number) => void;\n /**\n * Fired when visibility of a menu group is toggled from the All pages panel (pin on group header).\n * Use with `onMenuGroupsChanged` / controlled `menuGroups`.\n */\n onToggleMenuGroup?: (changedGroup: MenuGroup) => void;\n}\n\n/**\n * Menu overflow behavior.\n * - `collapse` — extra items collapse under a \"More\" popup (default).\n * - `scroll` — all items remain visible inside a scrollable
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../../src/components/AsideHeader/types.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {DrawerProps, PopupProps, QAProps} from '@gravity-ui/uikit';\n\nimport {RenderContentType} from '../Content';\nimport {LogoProps, MenuGroup, MenuItem, OpenModalSubscriber, TopAlertProps} from '../types';\n\nimport {AsideHeaderContextType} from './AsideHeaderContext';\nimport {AsideHeaderMenuDensity} from './density';\n\nexport interface PanelItemProps extends DrawerProps {\n id: string;\n}\n\nexport interface LayoutProps {\n compact: boolean;\n /** Animate compact layout changes. @default true */\n compactTransition?: boolean;\n className?: string;\n topAlert?: TopAlertProps;\n /**\n * Menu item density. `compact` reduces item height, icon size, spacing, and aside width\n * without changing navigation behavior.\n * @default 'default'\n */\n menuDensity?: AsideHeaderMenuDensity;\n}\n\ninterface EditMenuProps {\n onOpenEditMode?: () => void;\n onToggleMenuItem?: (changedItem: AsideHeaderItem) => void;\n onResetSettingsToDefault?: () => void;\n enableSorting?: boolean;\n onChangeItemsOrder?: (changedItem: AsideHeaderItem, oldIndex: number, newIndex: number) => void;\n /**\n * Fired when visibility of a menu group is toggled from the All pages panel (pin on group header).\n * Use with `onMenuGroupsChanged` / controlled `menuGroups`.\n */\n onToggleMenuGroup?: (changedGroup: MenuGroup) => void;\n}\n\n/**\n * Menu overflow behavior for menu items.\n * - `collapse` — extra menu items collapse under a \"More\" popup (default).\n * - `scroll` — all menu items remain visible inside a scrollable column with a native thin scrollbar.\n *\n * The distinction applies to menu items only: quick access and the menu always share a single\n * scroll container that scrolls when the column does not fit the available height. In compact\n * mode menu items still fall back to `collapse` regardless of this value.\n */\nexport type AsideHeaderMenuOverflow = 'collapse' | 'scroll';\n\ninterface AsideHeaderGeneralProps extends QAProps {\n logo?: LogoProps;\n className?: string;\n collapseTitle?: string;\n expandTitle?: string;\n menuMoreTitle?: string;\n /**\n * @see AsideHeaderMenuOverflow\n * @default 'collapse'\n */\n menuOverflow?: AsideHeaderMenuOverflow;\n topAlert?: TopAlertProps;\n customBackground?: React.ReactNode;\n customBackgroundClassName?: string;\n hideCollapseButton?: boolean;\n renderContent?: RenderContentType;\n renderFooter?: (data: {\n size: number;\n compact: boolean;\n asideRef: React.RefObject<HTMLDivElement>;\n }) => React.ReactNode;\n collapseButtonWrapper?: (\n defaultButton: React.ReactNode,\n data: {\n compact: boolean;\n onChangeCompact?: (compact: boolean) => void;\n },\n ) => React.ReactNode;\n editMenuProps?: EditMenuProps;\n onClosePanel?: () => void;\n onChangeCompact?: (compact: boolean) => void;\n onMenuMoreClick?: () => void;\n onAllPagesClick?: () => void;\n openModalSubscriber?: (subscriber: OpenModalSubscriber) => void;\n aboveMenuContent?: React.ReactNode;\n}\n\ninterface AsideHeaderDefaultProps {\n panelItems?: PanelItemProps[];\n subheaderItems?: AsideHeaderItem[];\n menuItems?: AsideHeaderItem[];\n menuGroups?: MenuGroup[];\n /**\n * Shows icons for child items in inline groups and group popups.\n * @default true\n */\n menuGroupNestedIcons?: boolean;\n /**\n * Called only from **All pages** edit mode when the user toggles visibility of a **menu group** (group header pin), updating `menuGroup.hidden`.\n * Use with controlled `menuGroups`; not emitted for programmatic `menuGroups` changes outside All pages.\n */\n onMenuGroupsChanged?: (menuGroups: MenuGroup[]) => void;\n defaultMenuItems?: AsideHeaderItem[];\n onMenuItemsChanged?: (items: AsideHeaderItem[]) => void;\n /**\n * Enables the quick access section and pin controls for eligible leaf menu items.\n * The state remains controlled by `menuItems`; use `onQuickAccessChange` to update it.\n * @default false\n */\n enableQuickAccess?: boolean;\n /**\n * Keeps the active item highlighted in the main menu when the same item is also\n * rendered in quick access.\n * @default false\n */\n quickAccessHighlightInMainMenu?: boolean;\n /**\n * Called when a user pins or unpins an eligible leaf item. The library does not\n * mutate `menuItems`; the consumer should provide the updated controlled value.\n */\n onQuickAccessChange?: (item: AsideHeaderItem, quickAccess: boolean) => void;\n headerDecoration?: boolean;\n /** Hides header/footer separators and their spacing; scroll-edge indicators remain visible\n * while content is hidden beyond the respective edge. @default false */\n hideSectionDividers?: boolean;\n /**\n * When provided, the map is the source of truth for which menu groups are collapsed\n * in inline (`menuOverflow: 'scroll'`) layout. Keys are `MenuGroup.id`, values mean collapsed.\n */\n collapsedMenuGroupIds?: Record<string, boolean>;\n /**\n * Initial collapsed state for groups when `collapsedMenuGroupIds` is not controlled.\n */\n defaultCollapsedMenuGroupIds?: Record<string, boolean>;\n /**\n * Called when the user toggles a group in inline layout. The parent should update\n * `collapsedMenuGroupIds` when using controlled mode.\n */\n onToggleMenuGroupCollapsed?: (groupId: string) => void;\n}\n\nexport type AsideHeaderInnerProps = AsideHeaderGeneralProps &\n AsideHeaderDefaultProps &\n AsideHeaderContextType;\n\nexport interface AsideHeaderProps\n extends AsideHeaderGeneralProps,\n LayoutProps,\n Partial<AsideHeaderDefaultProps> {}\n\nexport enum InnerPanels {\n AllPages = 'all-pages',\n}\n\n/** Menu item id for the All pages row (same value as {@link InnerPanels.AllPages}). */\nexport const ALL_PAGES_ID = InnerPanels.AllPages;\n\nexport interface AsideHeaderItem extends MenuItem {\n /**\n * Shows an eligible leaf item in the quick access section when quick access is enabled.\n */\n quickAccess?: boolean;\n /**\n * Maximum number of title lines in the expanded sidebar.\n * Collapsed (icon-only) sidebar and popup rows always use one line.\n * When omitted, the legacy two-line clamp is preserved.\n */\n titleLines?: 1 | 2;\n /**\n * @internal CompositeBar: group children rendered from the \"More\" overflow popover.\n */\n compositeBarMenuPopupItems?: AsideHeaderItem[];\n /**\n * @internal CompositeBar: optional heading in the overflow popover for a group row.\n */\n compositeBarMenuPopupTitle?: string;\n enableTooltip?: boolean;\n onItemClick?: (\n item: AsideHeaderItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLElement, MouseEvent>,\n ) => void;\n bringForward?: boolean;\n compact?: boolean;\n\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupVisible?: PopupProps['open'];\n /**\n * Floating element anchor ref object\n *\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupRef?: React.RefObject<HTMLElement>;\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupPlacement?: PopupProps['placement'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupOffset?: PopupProps['offset'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n popupKeepMounted?: PopupProps['keepMounted'];\n /**\n * @deprecated Use itemWrapper instead for popup functionality\n */\n renderPopupContent?: () => React.ReactNode;\n /**\n * This callback will be called when Escape key pressed on keyboard, or click outside was made\n * This behaviour could be disabled with `disableEscapeKeyDown`\n * and `disableOutsideClick` options\n *\n * @deprecated Use itemWrapper instead for popup functionality\n */\n onOpenChangePopup?: PopupProps['onOpenChange'];\n}\n"],"names":["InnerPanels"],"mappings":";;AAwJYA;AAAZ,CAAA,UAAY,WAAW,EAAA;AACnB,IAAA,WAAA,CAAA,UAAA,CAAA,GAAA,WAAsB;AAC1B,CAAC,EAFWA,mBAAW,KAAXA,mBAAW,GAEtB,EAAA,CAAA,CAAA;AAED;AACa,MAAA,YAAY,GAAGA,mBAAW,CAAC;;;;"}
|
|
@@ -4,16 +4,19 @@ var React = require('react');
|
|
|
4
4
|
var AllPagesPanel = require('./components/AllPagesPanel/AllPagesPanel.js');
|
|
5
5
|
var constants = require('./components/AllPagesPanel/constants.js');
|
|
6
6
|
require('./AsideHeaderContext.js');
|
|
7
|
+
var quickAccess = require('./quickAccess.js');
|
|
7
8
|
var types = require('./types.js');
|
|
8
9
|
|
|
9
10
|
const EMPTY_MENU_ITEMS = [];
|
|
10
11
|
const useAsideHeaderInnerContextValue = (props) => {
|
|
11
|
-
|
|
12
|
+
var _a;
|
|
13
|
+
const { size, onClosePanel, menuItems, panelItems, onMenuItemsChanged, onAllPagesClick, enableQuickAccess = false, onQuickAccessChange, } = props;
|
|
12
14
|
const [innerVisiblePanel, setInnerVisiblePanel] = React.useState();
|
|
13
15
|
const ALL_PAGES_MENU_ITEM = React.useMemo(() => {
|
|
14
16
|
return constants.getAllPagesMenuItem();
|
|
15
17
|
}, []);
|
|
16
18
|
const allPagesIsAvailable = Boolean(onMenuItemsChanged) && (!menuItems || (menuItems === null || menuItems === undefined ? undefined : menuItems.length) > 0);
|
|
19
|
+
const quickAccessIsAvailable = enableQuickAccess && Boolean(onQuickAccessChange);
|
|
17
20
|
React.useEffect(() => {
|
|
18
21
|
// If any user panel became open we need to switch off all inner panels
|
|
19
22
|
if (panelItems === null || panelItems === undefined ? undefined : panelItems.some((x) => x.open)) {
|
|
@@ -35,6 +38,16 @@ const useAsideHeaderInnerContextValue = (props) => {
|
|
|
35
38
|
}
|
|
36
39
|
(_a = item.onItemClick) === null || _a === undefined ? undefined : _a.call(item, item, collapsed, event);
|
|
37
40
|
}, [innerOnClosePanel, ALL_PAGES_MENU_ITEM, onClosePanel]);
|
|
41
|
+
const onToggleQuickAccess = React.useCallback((item) => {
|
|
42
|
+
if (!quickAccessIsAvailable || !onQuickAccessChange) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
const originalItem = menuItems === null || menuItems === undefined ? undefined : menuItems.find((menuItem) => menuItem.id === item.id);
|
|
46
|
+
if (!originalItem || !quickAccess.isQuickAccessPinEligible(originalItem)) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
onQuickAccessChange(originalItem, !originalItem.quickAccess);
|
|
50
|
+
}, [menuItems, onQuickAccessChange, quickAccessIsAvailable]);
|
|
38
51
|
const innerMenuItems = React.useMemo(() => allPagesIsAvailable
|
|
39
52
|
? [
|
|
40
53
|
...(menuItems || EMPTY_MENU_ITEMS),
|
|
@@ -55,8 +68,10 @@ const useAsideHeaderInnerContextValue = (props) => {
|
|
|
55
68
|
},
|
|
56
69
|
];
|
|
57
70
|
}, [allPagesIsAvailable, panelItems, innerVisiblePanel]);
|
|
58
|
-
return Object.assign(Object.assign({}, props), {
|
|
59
|
-
|
|
71
|
+
return Object.assign(Object.assign({}, props), { menuDensity: (_a = props.menuDensity) !== null && _a !== undefined ? _a : 'default', onClosePanel: innerOnClosePanel, allPagesIsAvailable,
|
|
72
|
+
quickAccessIsAvailable, menuItems: innerMenuItems, panelItems: innerPanelItems, size,
|
|
73
|
+
onItemClick,
|
|
74
|
+
onToggleQuickAccess });
|
|
60
75
|
};
|
|
61
76
|
|
|
62
77
|
exports.useAsideHeaderInnerContextValue = useAsideHeaderInnerContextValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAsideHeaderInnerContextValue.js","sources":["../../../../../src/components/AsideHeader/useAsideHeaderInnerContextValue.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {MenuItem} from '../types';\n\nimport {AsideHeaderInnerContextType} from './AsideHeaderContext';\nimport {AllPagesPanel, getAllPagesMenuItem} from './components/AllPagesPanel';\nimport {AsideHeaderItem, AsideHeaderProps, InnerPanels, PanelItemProps} from './types';\n\nconst EMPTY_MENU_ITEMS: AsideHeaderItem[] = [];\n\nexport const useAsideHeaderInnerContextValue = (\n props: AsideHeaderProps & {size: number},\n): AsideHeaderInnerContextType => {\n const {size
|
|
1
|
+
{"version":3,"file":"useAsideHeaderInnerContextValue.js","sources":["../../../../../src/components/AsideHeader/useAsideHeaderInnerContextValue.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {MenuItem} from '../types';\n\nimport {AsideHeaderInnerContextType} from './AsideHeaderContext';\nimport {AllPagesPanel, getAllPagesMenuItem} from './components/AllPagesPanel';\nimport {isQuickAccessPinEligible} from './quickAccess';\nimport {AsideHeaderItem, AsideHeaderProps, InnerPanels, PanelItemProps} from './types';\n\nconst EMPTY_MENU_ITEMS: AsideHeaderItem[] = [];\n\nexport const useAsideHeaderInnerContextValue = (\n props: AsideHeaderProps & {size: number},\n): AsideHeaderInnerContextType => {\n const {\n size,\n onClosePanel,\n menuItems,\n panelItems,\n onMenuItemsChanged,\n onAllPagesClick,\n enableQuickAccess = false,\n onQuickAccessChange,\n } = props;\n const [innerVisiblePanel, setInnerVisiblePanel] = useState<InnerPanels | undefined>();\n const ALL_PAGES_MENU_ITEM = React.useMemo(() => {\n return getAllPagesMenuItem();\n }, []);\n\n const allPagesIsAvailable =\n Boolean(onMenuItemsChanged) && (!menuItems || menuItems?.length > 0);\n const quickAccessIsAvailable = enableQuickAccess && Boolean(onQuickAccessChange);\n\n useEffect(() => {\n // If any user panel became open we need to switch off all inner panels\n if (panelItems?.some((x) => x.open)) {\n setInnerVisiblePanel(undefined);\n }\n }, [panelItems]);\n\n const innerOnClosePanel = useCallback(() => {\n setInnerVisiblePanel(undefined);\n onClosePanel?.();\n }, [onClosePanel]);\n\n const onItemClick = useCallback(\n (item: MenuItem, collapsed: boolean, event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n if (item.id === ALL_PAGES_MENU_ITEM.id) {\n onClosePanel?.();\n setInnerVisiblePanel((prev) =>\n prev === InnerPanels.AllPages ? undefined : InnerPanels.AllPages,\n );\n } else {\n innerOnClosePanel();\n }\n item.onItemClick?.(item, collapsed, event);\n },\n [innerOnClosePanel, ALL_PAGES_MENU_ITEM, onClosePanel],\n );\n\n const onToggleQuickAccess = useCallback(\n (item: AsideHeaderItem) => {\n if (!quickAccessIsAvailable || !onQuickAccessChange) {\n return;\n }\n\n const originalItem = menuItems?.find((menuItem) => menuItem.id === item.id);\n\n if (!originalItem || !isQuickAccessPinEligible(originalItem)) {\n return;\n }\n\n onQuickAccessChange(originalItem, !originalItem.quickAccess);\n },\n [menuItems, onQuickAccessChange, quickAccessIsAvailable],\n );\n\n const innerMenuItems = useMemo(\n () =>\n allPagesIsAvailable\n ? [\n ...(menuItems || EMPTY_MENU_ITEMS),\n {\n ...ALL_PAGES_MENU_ITEM,\n current: innerVisiblePanel === InnerPanels.AllPages,\n onItemClick: onAllPagesClick,\n },\n ]\n : menuItems || EMPTY_MENU_ITEMS,\n [allPagesIsAvailable, menuItems, innerVisiblePanel, ALL_PAGES_MENU_ITEM, onAllPagesClick],\n );\n\n const innerPanelItems = useMemo<PanelItemProps[] | undefined>(() => {\n if (!allPagesIsAvailable) {\n return panelItems;\n }\n\n return [\n ...(panelItems || []),\n {\n id: InnerPanels.AllPages,\n children: <AllPagesPanel />,\n open: innerVisiblePanel === InnerPanels.AllPages,\n size: 'auto',\n },\n ];\n }, [allPagesIsAvailable, panelItems, innerVisiblePanel]);\n\n return {\n ...props,\n menuDensity: props.menuDensity ?? 'default',\n onClosePanel: innerOnClosePanel,\n allPagesIsAvailable,\n quickAccessIsAvailable,\n menuItems: innerMenuItems,\n panelItems: innerPanelItems,\n size,\n onItemClick,\n onToggleQuickAccess,\n };\n};\n"],"names":["useState","getAllPagesMenuItem","useEffect","useCallback","InnerPanels","isQuickAccessPinEligible","useMemo","AllPagesPanel"],"mappings":";;;;;;;;;AASA,MAAM,gBAAgB,GAAsB,EAAE;AAEjC,MAAA,+BAA+B,GAAG,CAC3C,KAAwC,KACX;;IAC7B,MAAM,EACF,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,iBAAiB,GAAG,KAAK,EACzB,mBAAmB,GACtB,GAAG,KAAK;IACT,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAGA,cAAQ,EAA2B;AACrF,IAAA,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAK;QAC3C,OAAOC,6BAAmB,EAAE;KAC/B,EAAE,EAAE,CAAC;IAEN,MAAM,mBAAmB,GACrB,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,IAAI,CAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAT,SAAA,GAAA,SAAA,GAAA,SAAS,CAAE,MAAM,IAAG,CAAC,CAAC;IACxE,MAAM,sBAAsB,GAAG,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAEhFC,eAAS,CAAC,MAAK;;AAEX,QAAA,IAAI,UAAU,KAAV,IAAA,IAAA,UAAU,6BAAV,UAAU,CAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE;YACjC,oBAAoB,CAAC,SAAS,CAAC;;AAEvC,KAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAEhB,IAAA,MAAM,iBAAiB,GAAGC,iBAAW,CAAC,MAAK;QACvC,oBAAoB,CAAC,SAAS,CAAC;AAC/B,QAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI;AACpB,KAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IAElB,MAAM,WAAW,GAAGA,iBAAW,CAC3B,CAAC,IAAc,EAAE,SAAkB,EAAE,KAAgD,KAAI;;QACrF,IAAI,IAAI,CAAC,EAAE,KAAK,mBAAmB,CAAC,EAAE,EAAE;AACpC,YAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,SAAA,GAAA,SAAA,GAAA,YAAY,EAAI;YAChB,oBAAoB,CAAC,CAAC,IAAI,KACtB,IAAI,KAAKC,iBAAW,CAAC,QAAQ,GAAG,SAAS,GAAGA,iBAAW,CAAC,QAAQ,CACnE;;aACE;AACH,YAAA,iBAAiB,EAAE;;QAEvB,CAAA,EAAA,GAAA,IAAI,CAAC,WAAW,MAAG,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAA,IAAA,CAAA,IAAA,EAAA,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC;KAC7C,EACD,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,YAAY,CAAC,CACzD;AAED,IAAA,MAAM,mBAAmB,GAAGD,iBAAW,CACnC,CAAC,IAAqB,KAAI;AACtB,QAAA,IAAI,CAAC,sBAAsB,IAAI,CAAC,mBAAmB,EAAE;YACjD;;QAGJ,MAAM,YAAY,GAAG,SAAS,KAAA,IAAA,IAAT,SAAS,KAAT,SAAA,GAAA,SAAA,GAAA,SAAS,CAAE,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAE3E,IAAI,CAAC,YAAY,IAAI,CAACE,oCAAwB,CAAC,YAAY,CAAC,EAAE;YAC1D;;QAGJ,mBAAmB,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC;KAC/D,EACD,CAAC,SAAS,EAAE,mBAAmB,EAAE,sBAAsB,CAAC,CAC3D;AAED,IAAA,MAAM,cAAc,GAAGC,aAAO,CAC1B,MACI;AACI,UAAE;AACI,YAAA,IAAI,SAAS,IAAI,gBAAgB,CAAC;4CAE3B,mBAAmB,CAAA,EAAA,EACtB,OAAO,EAAE,iBAAiB,KAAKF,iBAAW,CAAC,QAAQ,EACnD,WAAW,EAAE,eAAe,EAAA,CAAA;AAEnC;AACH,UAAE,SAAS,IAAI,gBAAgB,EACvC,CAAC,mBAAmB,EAAE,SAAS,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAC5F;AAED,IAAA,MAAM,eAAe,GAAGE,aAAO,CAA+B,MAAK;QAC/D,IAAI,CAAC,mBAAmB,EAAE;AACtB,YAAA,OAAO,UAAU;;QAGrB,OAAO;AACH,YAAA,IAAI,UAAU,IAAI,EAAE,CAAC;AACrB,YAAA;gBACI,EAAE,EAAEF,iBAAW,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAC,CAAA,aAAA,CAAAG,2BAAa,EAAG,IAAA,CAAA;AAC3B,gBAAA,IAAI,EAAE,iBAAiB,KAAKH,iBAAW,CAAC,QAAQ;AAChD,gBAAA,IAAI,EAAE,MAAM;AACf,aAAA;SACJ;KACJ,EAAE,CAAC,mBAAmB,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;AAExD,IAAA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACO,KAAK,CAAA,EAAA,EACR,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,EAAA,GAAI,SAAS,EAC3C,YAAY,EAAE,iBAAiB,EAC/B,mBAAmB;QACnB,sBAAsB,EACtB,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,eAAe,EAC3B,IAAI;QACJ,WAAW;AACX,QAAA,mBAAmB,EACrB,CAAA;AACN;;;;"}
|
|
@@ -4,3 +4,4 @@ export declare const b: {
|
|
|
4
4
|
(elemName: string, elemMix?: string | string[] | undefined): string;
|
|
5
5
|
(elemName: string, elemMods?: import("@bem-react/classname").NoStrictEntityMods | null, elemMix?: string | string[] | undefined): string;
|
|
6
6
|
};
|
|
7
|
+
export declare const getCompactTransitionClassName: (enabled?: boolean) => string;
|
|
@@ -4,6 +4,8 @@ var cn = require('../utils/cn.js');
|
|
|
4
4
|
var AsideHeader_module = require('./AsideHeader.module.scss.js');
|
|
5
5
|
|
|
6
6
|
const b = cn.createBlock('aside-header', AsideHeader_module.default);
|
|
7
|
+
const getCompactTransitionClassName = (enabled = true) => b('compact-transition', { disabled: enabled === false });
|
|
7
8
|
|
|
8
9
|
exports.b = b;
|
|
10
|
+
exports.getCompactTransitionClassName = getCompactTransitionClassName;
|
|
9
11
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../../src/components/AsideHeader/utils.ts"],"sourcesContent":["import {createBlock} from '../utils/cn';\n\nimport styles from './AsideHeader.module.scss';\n\nexport const b = createBlock('aside-header', styles);\n"],"names":["createBlock","styles"],"mappings":";;;;;AAIa,MAAA,CAAC,GAAGA,cAAW,CAAC,cAAc,EAAEC,0BAAM
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../../src/components/AsideHeader/utils.ts"],"sourcesContent":["import {createBlock} from '../utils/cn';\n\nimport styles from './AsideHeader.module.scss';\n\nexport const b = createBlock('aside-header', styles);\n\nexport const getCompactTransitionClassName = (enabled = true) =>\n b('compact-transition', {disabled: enabled === false});\n"],"names":["createBlock","styles"],"mappings":";;;;;AAIa,MAAA,CAAC,GAAGA,cAAW,CAAC,cAAc,EAAEC,0BAAM;MAEtC,6BAA6B,GAAG,CAAC,OAAO,GAAG,IAAI,KACxD,CAAC,CAAC,oBAAoB,EAAE,EAAC,QAAQ,EAAE,OAAO,KAAK,KAAK,EAAC;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.Footer-module__gn-footer_desktop___IlV0M{align-items:center;background:var(--g-color-base-background);display:flex;gap:var(--g-spacing-6);height:40px;justify-content:flex-end;padding:0 var(--g-spacing-6) 0 var(--g-spacing-3)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__menu___8c4Ir{align-items:center;align-self:stretch;display:flex;flex:1;min-width:
|
|
1
|
+
.Footer-module__gn-footer_desktop___IlV0M{align-items:center;background:var(--g-color-base-background);display:flex;gap:var(--g-spacing-6);height:40px;justify-content:flex-end;padding:0 var(--g-spacing-6) 0 var(--g-spacing-3)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__menu___8c4Ir{align-items:center;align-self:stretch;display:flex;flex:1;min-width:0;visibility:hidden}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__menu_measured___AHQpx{visibility:visible}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__list___PFCrx[class]{background-color:inherit;display:flex;height:100%;padding:0}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__more-button___mG-VF svg{color:var(--g-color-text-secondary)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__right___-iIxI{align-items:center;display:flex;gap:var(--g-spacing-5)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__copyright___wbuql{color:var(--g-color-text-secondary);font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height);white-space:nowrap}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__copyright_small___wTVXX{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)}.Footer-module__gn-footer_with-divider___YKuYC{border-top:1px solid var(--g-color-line-generic)}.Footer-module__gn-footer_view_clear___ghhFA{background:transparent;z-index:-1}.Footer-module__gn-footer_mobile___czfsi{background:var(--g-color-base-background);display:flex;flex-direction:column;padding:var(--g-spacing-1) var(--g-spacing-6) var(--g-spacing-3) var(--g-spacing-3)}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer_with-divider___8KyBu{border-top:1px solid var(--g-color-line-generic)}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__menu___h88uk{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--g-spacing-1);visibility:hidden}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__menu_measured___V8-X-{visibility:visible}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__list___zCgGf[class]{background-color:inherit;display:flex;padding:0}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__menu-item___WDX0b{box-sizing:border-box;padding:var(--g-spacing-2) var(--g-spacing-3)}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__bottom-row___q-gDQ{align-items:center;display:flex;justify-content:space-between}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__copyright___rqom-{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);padding:0 var(--g-spacing-3);white-space:nowrap}.Footer-module__gn-footer__modal___DUbU- .Footer-module__gn-footer__menu-item___WDX0b{color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);height:48px;line-height:var(--g-text-body-2-line-height)}.Footer-module__gn-footer_view_clear___mHj00{background:transparent;z-index:-1}.Footer-module__gn-footer_view_clear___mHj00 .Footer-module__gn-footer__bottom-row___q-gDQ{justify-content:flex-end}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.Footer-module__gn-footer_desktop___IlV0M{align-items:center;background:var(--g-color-base-background);display:flex;gap:var(--g-spacing-6);height:40px;justify-content:flex-end;padding:0 var(--g-spacing-6) 0 var(--g-spacing-3)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__menu___8c4Ir{align-items:center;align-self:stretch;display:flex;flex:1;min-width:
|
|
1
|
+
.Footer-module__gn-footer_desktop___IlV0M{align-items:center;background:var(--g-color-base-background);display:flex;gap:var(--g-spacing-6);height:40px;justify-content:flex-end;padding:0 var(--g-spacing-6) 0 var(--g-spacing-3)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__menu___8c4Ir{align-items:center;align-self:stretch;display:flex;flex:1;min-width:0;visibility:hidden}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__menu_measured___AHQpx{visibility:visible}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__list___PFCrx[class]{background-color:inherit;display:flex;height:100%;padding:0}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__more-button___mG-VF svg{color:var(--g-color-text-secondary)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__right___-iIxI{align-items:center;display:flex;gap:var(--g-spacing-5)}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__copyright___wbuql{color:var(--g-color-text-secondary);font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height);white-space:nowrap}.Footer-module__gn-footer_desktop___IlV0M .Footer-module__gn-footer__copyright_small___wTVXX{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)}.Footer-module__gn-footer_with-divider___YKuYC{border-top:1px solid var(--g-color-line-generic)}.Footer-module__gn-footer_view_clear___ghhFA{background:transparent;z-index:-1}.Footer-module__gn-footer_mobile___czfsi{background:var(--g-color-base-background);display:flex;flex-direction:column;padding:var(--g-spacing-1) var(--g-spacing-6) var(--g-spacing-3) var(--g-spacing-3)}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer_with-divider___8KyBu{border-top:1px solid var(--g-color-line-generic)}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__menu___h88uk{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--g-spacing-1);visibility:hidden}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__menu_measured___V8-X-{visibility:visible}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__list___zCgGf[class]{background-color:inherit;display:flex;padding:0}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__menu-item___WDX0b{box-sizing:border-box;padding:var(--g-spacing-2) var(--g-spacing-3)}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__bottom-row___q-gDQ{align-items:center;display:flex;justify-content:space-between}.Footer-module__gn-footer_mobile___czfsi .Footer-module__gn-footer__copyright___rqom-{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);padding:0 var(--g-spacing-3);white-space:nowrap}.Footer-module__gn-footer__modal___DUbU- .Footer-module__gn-footer__menu-item___WDX0b{color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);height:48px;line-height:var(--g-text-body-2-line-height)}.Footer-module__gn-footer_view_clear___mHj00{background:transparent;z-index:-1}.Footer-module__gn-footer_view_clear___mHj00 .Footer-module__gn-footer__bottom-row___q-gDQ{justify-content:flex-end}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.HotkeysPanel-module__gn-hotkeys-panel___Aab92{--hotkeys-panel-width:400px;--hotkeys-panel-vertical-padding:18px;--hotkeys-panel-horizontal-padding:var(--g-spacing-6);inset:0;position:fixed}.HotkeysPanel-module__gn-hotkeys-panel__drawer-item___T-3tZ{box-sizing:border-box;
|
|
1
|
+
.HotkeysPanel-module__gn-hotkeys-panel___Aab92{--hotkeys-panel-width:400px;--hotkeys-panel-vertical-padding:18px;--hotkeys-panel-horizontal-padding:var(--g-spacing-6);inset:0;position:fixed}.HotkeysPanel-module__gn-hotkeys-panel__drawer-item___T-3tZ{box-sizing:border-box;display:flex;flex-direction:column;padding:var(--hotkeys-panel-vertical-padding) 0;width:var(--hotkeys-panel-width)}.HotkeysPanel-module__gn-hotkeys-panel__title___dPviy{align-items:baseline;display:flex;gap:var(--g-spacing-2);justify-content:space-between;margin:0 var(--hotkeys-panel-horizontal-padding) var(--g-spacing-4) var(--hotkeys-panel-horizontal-padding)}.HotkeysPanel-module__gn-hotkeys-panel__search___olv3P{box-sizing:border-box;margin-bottom:var(--g-spacing-4);padding:0 var(--hotkeys-panel-horizontal-padding)}.HotkeysPanel-module__gn-hotkeys-panel__list___ToMip{flex:1;overflow-y:auto}.HotkeysPanel-module__gn-hotkeys-panel__item___BKagb[class]{height:auto;margin:0 var(--hotkeys-panel-horizontal-padding);padding:var(--g-spacing-2) 0}.HotkeysPanel-module__gn-hotkeys-panel__item___BKagb[class].g-list__item_active, .HotkeysPanel-module__gn-hotkeys-panel__item___BKagb[class]:hover{background:inherit}.HotkeysPanel-module__gn-hotkeys-panel__item___BKagb[class]:not(:first-child):has(.HotkeysPanel-module__gn-hotkeys-panel__item-content_type_group___q8vt0){border-top:1px solid var(--g-color-line-generic);margin-top:var(--g-spacing-3);padding-top:var(--g-spacing-4)}.HotkeysPanel-module__gn-hotkeys-panel__item-content___Wqp2t{align-items:baseline;color:var(--g-color-text-primary);display:flex;justify-content:space-between;margin:0;width:100%}.HotkeysPanel-module__gn-hotkeys-panel__item-hint___QbgP4{margin-left:var(--g-spacing-1)}.HotkeysPanel-module__gn-hotkeys-panel__item-hint-tooltip___xdDtY{max-width:217px}.HotkeysPanel-module__gn-hotkeys-panel__hotkey___-LPxF{color:var(--g-color-text-complementary)}
|
|
@@ -25,7 +25,7 @@ function HotkeysPanel(_a) {
|
|
|
25
25
|
item.title,
|
|
26
26
|
item.hint && (React.createElement(uikit.HelpMark, { "aria-hidden": true, popoverProps: { className: b('item-hint-tooltip') }, className: b('item-hint') }, item.hint))),
|
|
27
27
|
item.value && (React.createElement(uikit.Hotkey, { className: b('hotkey'), value: item.value, platform: platform })))), [itemContentClassName, platform]);
|
|
28
|
-
const drawerItemContent = (React.createElement(
|
|
28
|
+
const drawerItemContent = (React.createElement(React.Fragment, null,
|
|
29
29
|
React.createElement(uikit.Text, { variant: "subheader-3", as: 'h2', className: b('title', titleClassName) },
|
|
30
30
|
title,
|
|
31
31
|
togglePanelHotkey && React.createElement(uikit.Hotkey, { value: togglePanelHotkey, platform: platform })),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HotkeysPanel.js","sources":["../../../../../src/components/HotkeysPanel/HotkeysPanel.tsx"],"sourcesContent":["import React, {useCallback, useMemo, useState} from 'react';\nimport type {ReactNode} from 'react';\n\nimport {Drawer, HelpMark, Hotkey, List, Text, TextInput} from '@gravity-ui/uikit';\nimport type {DrawerProps, HotkeyProps, ListProps} from '@gravity-ui/uikit';\n\nimport {useSafeAsideHeaderContext} from '../AsideHeader/AsideHeaderContext';\nimport {createBlock} from '../utils/cn';\n\nimport type {HotkeysGroup, HotkeysListItem} from './types';\nimport {filterHotkeys} from './utils/filterHotkeys';\nimport {flattenHotkeyGroups} from './utils/flattenHotkeyGroups';\n\nimport styles from './HotkeysPanel.module.scss';\n\nconst b = createBlock('hotkeys-panel', styles);\n\nexport type HotkeysPanelProps<T> = {\n hotkeys: HotkeysGroup<T>[];\n title?: ReactNode;\n togglePanelHotkey?: string;\n filterable?: boolean;\n filterPlaceholder?: string;\n emptyState?: ReactNode;\n open: boolean;\n onClose?: () => void;\n className?: string;\n drawerItemClassName?: string;\n filterClassName?: string;\n titleClassName?: string;\n itemContentClassName?: string;\n listClassName?: string;\n leftOffset?: number | string;\n topOffset?: number | string;\n style?: React.CSSProperties;\n platform?: HotkeyProps['platform'];\n drawerProps?: Omit<DrawerProps, 'style' | 'contentClassName' | 'open' | 'className'>;\n disableNavigationOffset?: boolean;\n} & Omit<\n ListProps<HotkeysListItem>,\n | 'items'\n | 'emptyPlaceholder'\n | 'className'\n | 'size'\n | 'renderItem'\n | 'filterable'\n | 'autoFocus'\n | 'filterPlaceholder'\n | 'filterClassName'\n | 'filter'\n | 'filterItem'\n | 'onFilterEnd'\n | 'onFilterUpdate'\n>;\n\nexport function HotkeysPanel<T = {}>({\n open,\n onClose,\n leftOffset,\n topOffset,\n className,\n drawerItemClassName,\n filterClassName,\n titleClassName,\n listClassName,\n itemContentClassName,\n hotkeys,\n itemClassName,\n filterable = true,\n filterPlaceholder,\n title,\n togglePanelHotkey,\n emptyState,\n platform,\n drawerProps,\n style: styleProp,\n disableNavigationOffset = false,\n ...listProps\n}: HotkeysPanelProps<T>) {\n const [filter, setFilter] = useState('');\n\n const {size} = useSafeAsideHeaderContext() ?? {size: 0};\n\n const hotkeysList = useMemo(() => {\n const filteredHotkeys = filterHotkeys(hotkeys, filter);\n return flattenHotkeyGroups(filteredHotkeys);\n }, [hotkeys, filter]);\n\n const renderItem = useCallback(\n (item: HotkeysListItem) => (\n <Text\n as={item.group ? ('h3' as const) : ('p' as const)}\n variant={item.group ? 'subheader-2' : 'body-1'}\n className={b(\n 'item-content',\n {type: item.group ? 'group' : 'item'},\n itemContentClassName,\n )}\n key={item.title}\n >\n <span>\n {item.title}\n {item.hint && (\n <HelpMark\n aria-hidden\n popoverProps={{className: b('item-hint-tooltip')}}\n className={b('item-hint')}\n >\n {item.hint}\n </HelpMark>\n )}\n </span>\n {item.value && (\n <Hotkey className={b('hotkey')} value={item.value} platform={platform} />\n )}\n </Text>\n ),\n [itemContentClassName, platform],\n );\n\n const drawerItemContent = (\n <
|
|
1
|
+
{"version":3,"file":"HotkeysPanel.js","sources":["../../../../../src/components/HotkeysPanel/HotkeysPanel.tsx"],"sourcesContent":["import React, {useCallback, useMemo, useState} from 'react';\nimport type {ReactNode} from 'react';\n\nimport {Drawer, HelpMark, Hotkey, List, Text, TextInput} from '@gravity-ui/uikit';\nimport type {DrawerProps, HotkeyProps, ListProps} from '@gravity-ui/uikit';\n\nimport {useSafeAsideHeaderContext} from '../AsideHeader/AsideHeaderContext';\nimport {createBlock} from '../utils/cn';\n\nimport type {HotkeysGroup, HotkeysListItem} from './types';\nimport {filterHotkeys} from './utils/filterHotkeys';\nimport {flattenHotkeyGroups} from './utils/flattenHotkeyGroups';\n\nimport styles from './HotkeysPanel.module.scss';\n\nconst b = createBlock('hotkeys-panel', styles);\n\nexport type HotkeysPanelProps<T> = {\n hotkeys: HotkeysGroup<T>[];\n title?: ReactNode;\n togglePanelHotkey?: string;\n filterable?: boolean;\n filterPlaceholder?: string;\n emptyState?: ReactNode;\n open: boolean;\n onClose?: () => void;\n className?: string;\n drawerItemClassName?: string;\n filterClassName?: string;\n titleClassName?: string;\n itemContentClassName?: string;\n listClassName?: string;\n leftOffset?: number | string;\n topOffset?: number | string;\n style?: React.CSSProperties;\n platform?: HotkeyProps['platform'];\n drawerProps?: Omit<DrawerProps, 'style' | 'contentClassName' | 'open' | 'className'>;\n disableNavigationOffset?: boolean;\n} & Omit<\n ListProps<HotkeysListItem>,\n | 'items'\n | 'emptyPlaceholder'\n | 'className'\n | 'size'\n | 'renderItem'\n | 'filterable'\n | 'autoFocus'\n | 'filterPlaceholder'\n | 'filterClassName'\n | 'filter'\n | 'filterItem'\n | 'onFilterEnd'\n | 'onFilterUpdate'\n>;\n\nexport function HotkeysPanel<T = {}>({\n open,\n onClose,\n leftOffset,\n topOffset,\n className,\n drawerItemClassName,\n filterClassName,\n titleClassName,\n listClassName,\n itemContentClassName,\n hotkeys,\n itemClassName,\n filterable = true,\n filterPlaceholder,\n title,\n togglePanelHotkey,\n emptyState,\n platform,\n drawerProps,\n style: styleProp,\n disableNavigationOffset = false,\n ...listProps\n}: HotkeysPanelProps<T>) {\n const [filter, setFilter] = useState('');\n\n const {size} = useSafeAsideHeaderContext() ?? {size: 0};\n\n const hotkeysList = useMemo(() => {\n const filteredHotkeys = filterHotkeys(hotkeys, filter);\n return flattenHotkeyGroups(filteredHotkeys);\n }, [hotkeys, filter]);\n\n const renderItem = useCallback(\n (item: HotkeysListItem) => (\n <Text\n as={item.group ? ('h3' as const) : ('p' as const)}\n variant={item.group ? 'subheader-2' : 'body-1'}\n className={b(\n 'item-content',\n {type: item.group ? 'group' : 'item'},\n itemContentClassName,\n )}\n key={item.title}\n >\n <span>\n {item.title}\n {item.hint && (\n <HelpMark\n aria-hidden\n popoverProps={{className: b('item-hint-tooltip')}}\n className={b('item-hint')}\n >\n {item.hint}\n </HelpMark>\n )}\n </span>\n {item.value && (\n <Hotkey className={b('hotkey')} value={item.value} platform={platform} />\n )}\n </Text>\n ),\n [itemContentClassName, platform],\n );\n\n const drawerItemContent = (\n <React.Fragment>\n <Text variant=\"subheader-3\" as={'h2' as const} className={b('title', titleClassName)}>\n {title}\n {togglePanelHotkey && <Hotkey value={togglePanelHotkey} platform={platform} />}\n </Text>\n {filterable && (\n <TextInput\n value={filter}\n onUpdate={setFilter}\n placeholder={filterPlaceholder}\n autoFocus\n className={b('search', filterClassName)}\n hasClear\n />\n )}\n <List<HotkeysListItem>\n className={b('list', listClassName)}\n virtualized={false}\n filterable={false}\n items={hotkeysList}\n renderItem={renderItem}\n itemClassName={b('item', itemClassName)}\n emptyPlaceholder={emptyState}\n {...listProps}\n />\n </React.Fragment>\n );\n\n const onOpenChange = useCallback(\n (newOpen: boolean) => {\n if (!newOpen) {\n onClose?.();\n }\n\n drawerProps?.onOpenChange?.(newOpen);\n },\n [drawerProps, onClose],\n );\n\n const style = useMemo<React.CSSProperties>(\n () => ({\n position: 'fixed',\n left: disableNavigationOffset ? undefined : size,\n ...styleProp,\n ...(leftOffset !== undefined && {left: leftOffset}),\n ...(topOffset !== undefined && {top: topOffset}),\n }),\n [disableNavigationOffset, styleProp, leftOffset, size, topOffset],\n );\n\n return (\n <Drawer\n className={b(null, className)}\n open={open}\n onOpenChange={onOpenChange}\n style={style}\n contentClassName={b('drawer-item', drawerItemClassName)}\n {...drawerProps}\n >\n {drawerItemContent}\n </Drawer>\n );\n}\n"],"names":["createBlock","styles","__rest","useState","useSafeAsideHeaderContext","useMemo","filterHotkeys","flattenHotkeyGroups","useCallback","Text","HelpMark","Hotkey","TextInput","List","Drawer"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var styles = {"gn-hotkeys-panel":"HotkeysPanel-module__gn-hotkeys-panel___Aab92","gnHotkeysPanel":"HotkeysPanel-module__gn-hotkeys-panel___Aab92","gn-hotkeys-panel__drawer-item":"HotkeysPanel-module__gn-hotkeys-panel__drawer-item___T-3tZ","gnHotkeysPanelDrawerItem":"HotkeysPanel-module__gn-hotkeys-panel__drawer-item___T-3tZ","gn-hotkeys-
|
|
5
|
+
var styles = {"gn-hotkeys-panel":"HotkeysPanel-module__gn-hotkeys-panel___Aab92","gnHotkeysPanel":"HotkeysPanel-module__gn-hotkeys-panel___Aab92","gn-hotkeys-panel__drawer-item":"HotkeysPanel-module__gn-hotkeys-panel__drawer-item___T-3tZ","gnHotkeysPanelDrawerItem":"HotkeysPanel-module__gn-hotkeys-panel__drawer-item___T-3tZ","gn-hotkeys-panel__title":"HotkeysPanel-module__gn-hotkeys-panel__title___dPviy","gnHotkeysPanelTitle":"HotkeysPanel-module__gn-hotkeys-panel__title___dPviy","gn-hotkeys-panel__search":"HotkeysPanel-module__gn-hotkeys-panel__search___olv3P","gnHotkeysPanelSearch":"HotkeysPanel-module__gn-hotkeys-panel__search___olv3P","gn-hotkeys-panel__list":"HotkeysPanel-module__gn-hotkeys-panel__list___ToMip","gnHotkeysPanelList":"HotkeysPanel-module__gn-hotkeys-panel__list___ToMip","gn-hotkeys-panel__item":"HotkeysPanel-module__gn-hotkeys-panel__item___BKagb","gnHotkeysPanelItem":"HotkeysPanel-module__gn-hotkeys-panel__item___BKagb","gn-hotkeys-panel__item-content_type_group":"HotkeysPanel-module__gn-hotkeys-panel__item-content_type_group___q8vt0","gnHotkeysPanelItemContentTypeGroup":"HotkeysPanel-module__gn-hotkeys-panel__item-content_type_group___q8vt0","gn-hotkeys-panel__item-content":"HotkeysPanel-module__gn-hotkeys-panel__item-content___Wqp2t","gnHotkeysPanelItemContent":"HotkeysPanel-module__gn-hotkeys-panel__item-content___Wqp2t","gn-hotkeys-panel__item-hint":"HotkeysPanel-module__gn-hotkeys-panel__item-hint___QbgP4","gnHotkeysPanelItemHint":"HotkeysPanel-module__gn-hotkeys-panel__item-hint___QbgP4","gn-hotkeys-panel__item-hint-tooltip":"HotkeysPanel-module__gn-hotkeys-panel__item-hint-tooltip___xdDtY","gnHotkeysPanelItemHintTooltip":"HotkeysPanel-module__gn-hotkeys-panel__item-hint-tooltip___xdDtY","gn-hotkeys-panel__hotkey":"HotkeysPanel-module__gn-hotkeys-panel__hotkey___-LPxF","gnHotkeysPanelHotkey":"HotkeysPanel-module__gn-hotkeys-panel__hotkey___-LPxF"};
|
|
6
6
|
|
|
7
7
|
exports.default = styles;
|
|
8
8
|
//# sourceMappingURL=HotkeysPanel.module.scss.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.Logo-module__gn-logo___u7qyb{align-items:center;display:flex;height:40px}.Logo-module__gn-logo__btn-logo___tvsre{align-items:center;cursor:pointer;display:flex;flex-shrink:0;justify-content:flex-start;overflow-wrap:break-word;width:100%;word-break:break-word}.Logo-module__gn-logo__btn-logo___tvsre, .Logo-module__gn-logo__btn-logo___tvsre:active, .Logo-module__gn-logo__btn-logo___tvsre:focus, .Logo-module__gn-logo__btn-logo___tvsre:hover, .Logo-module__gn-logo__btn-logo___tvsre:visited{color:inherit;outline:none;text-decoration:none}.Logo-module__gn-logo__btn-logo___tvsre:focus-visible{outline:solid var(--g-color-line-misc);outline-offset:-2px}.Logo-module__gn-logo__logo-icon-place___HUtrN{align-items:center;display:flex;flex-shrink:0;justify-content:center;width:36px}
|
|
1
|
+
.Logo-module__gn-logo___u7qyb{align-items:center;display:flex;height:var(--_--gn-logo-height,40px)}.Logo-module__gn-logo__btn-logo___tvsre{align-items:center;cursor:pointer;display:flex;flex-shrink:0;justify-content:flex-start;overflow-wrap:break-word;width:100%;word-break:break-word}.Logo-module__gn-logo__btn-logo___tvsre, .Logo-module__gn-logo__btn-logo___tvsre:active, .Logo-module__gn-logo__btn-logo___tvsre:focus, .Logo-module__gn-logo__btn-logo___tvsre:hover, .Logo-module__gn-logo__btn-logo___tvsre:visited{color:inherit;outline:none;text-decoration:none}.Logo-module__gn-logo__btn-logo___tvsre:focus-visible{outline:solid var(--g-color-line-misc);outline-offset:-2px}.Logo-module__gn-logo__logo-icon-place___HUtrN{align-items:center;display:flex;flex-shrink:0;justify-content:center;width:36px}
|
|
@@ -8,7 +8,7 @@ var cn = require('../utils/cn.js');
|
|
|
8
8
|
var Logo_module = require('./Logo.module.scss.js');
|
|
9
9
|
|
|
10
10
|
const b = cn.createBlock('logo', Logo_module.default);
|
|
11
|
-
const Logo = ({ text, icon, iconSrc, iconClassName, iconPlaceClassName, iconSize = 24, textSize = 15, href, target = '_self', wrapper, onClick, compact, className, buttonClassName, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby, }) => {
|
|
11
|
+
const Logo = ({ text, icon, iconSrc, iconClassName, iconPlaceClassName, iconSize = 24, textSize = 15, href, target = '_self', wrapper, onClick, compact, className, buttonClassName, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby, 'data-gn-aside-transition-row': transitionRow, }) => {
|
|
12
12
|
const hasWrapper = typeof wrapper === 'function';
|
|
13
13
|
let buttonIcon;
|
|
14
14
|
if (iconSrc) {
|
|
@@ -23,7 +23,7 @@ const Logo = ({ text, icon, iconSrc, iconClassName, iconPlaceClassName, iconSize
|
|
|
23
23
|
logo = text();
|
|
24
24
|
}
|
|
25
25
|
else {
|
|
26
|
-
logo = (React.createElement("div", { className: b('logo'), style: { fontSize: textSize } }, text));
|
|
26
|
+
logo = (React.createElement("div", { className: b('logo'), "data-gn-aside-part": "title", style: { fontSize: textSize } }, text));
|
|
27
27
|
}
|
|
28
28
|
const _a = href
|
|
29
29
|
? {
|
|
@@ -36,9 +36,9 @@ const Logo = ({ text, icon, iconSrc, iconClassName, iconPlaceClassName, iconSize
|
|
|
36
36
|
}
|
|
37
37
|
: { tag: 'span' }, { tag: Button } = _a, buttonProps = tslib.__rest(_a, ["tag"]);
|
|
38
38
|
const button = (React.createElement(Button, Object.assign({}, buttonProps, { className: b('btn-logo', buttonClassName), onClick: onClick }),
|
|
39
|
-
React.createElement("span", { className: b('logo-icon-place', iconPlaceClassName) }, buttonIcon),
|
|
39
|
+
React.createElement("span", { className: b('logo-icon-place', iconPlaceClassName), "data-gn-aside-part": "icon" }, buttonIcon),
|
|
40
40
|
!compact && logo));
|
|
41
|
-
return (React.createElement("div", { className: b(null, className) }, hasWrapper ? wrapper(button, Boolean(compact)) : button));
|
|
41
|
+
return (React.createElement("div", { className: b(null, className), "data-gn-aside-transition-row": transitionRow }, hasWrapper ? wrapper(button, Boolean(compact)) : button));
|
|
42
42
|
};
|
|
43
43
|
|
|
44
44
|
exports.Logo = Logo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logo.js","sources":["../../../../../src/components/Logo/Logo.tsx"],"sourcesContent":["import React from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {LogoProps} from '../types';\nimport {createBlock} from '../utils/cn';\n\nimport styles from './Logo.module.scss';\n\nconst b = createBlock('logo', styles);\n\nexport const Logo: React.FC<\n LogoProps & {compact?: boolean
|
|
1
|
+
{"version":3,"file":"Logo.js","sources":["../../../../../src/components/Logo/Logo.tsx"],"sourcesContent":["import React from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {LogoProps} from '../types';\nimport {createBlock} from '../utils/cn';\n\nimport styles from './Logo.module.scss';\n\nconst b = createBlock('logo', styles);\n\nexport const Logo: React.FC<\n LogoProps & {\n compact?: boolean;\n buttonClassName?: string;\n iconPlaceClassName?: string;\n 'data-gn-aside-transition-row'?: 'logo';\n }\n> = ({\n text,\n icon,\n iconSrc,\n iconClassName,\n iconPlaceClassName,\n iconSize = 24,\n textSize = 15,\n href,\n target = '_self',\n wrapper,\n onClick,\n compact,\n className,\n buttonClassName,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'data-gn-aside-transition-row': transitionRow,\n}) => {\n const hasWrapper = typeof wrapper === 'function';\n\n let buttonIcon;\n\n if (iconSrc) {\n buttonIcon = (\n <span className={iconClassName}>\n <img alt=\"logo icon\" src={iconSrc} width={iconSize} height={iconSize} />\n </span>\n );\n } else if (icon) {\n buttonIcon = <Icon data={icon} size={iconSize} className={iconClassName} />;\n }\n\n let logo: React.ReactNode;\n\n if (typeof text === 'function') {\n logo = text();\n } else {\n logo = (\n <div className={b('logo')} data-gn-aside-part=\"title\" style={{fontSize: textSize}}>\n {text}\n </div>\n );\n }\n\n const {tag: Button, ...buttonProps} = href\n ? ({\n tag: 'a',\n target,\n rel: target === '_self' ? undefined : 'noreferrer',\n href,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n } as const)\n : ({tag: 'span'} as const);\n\n const button = (\n <Button {...buttonProps} className={b('btn-logo', buttonClassName)} onClick={onClick}>\n <span className={b('logo-icon-place', iconPlaceClassName)} data-gn-aside-part=\"icon\">\n {buttonIcon}\n </span>\n {!compact && logo}\n </Button>\n );\n\n return (\n <div className={b(null, className)} data-gn-aside-transition-row={transitionRow}>\n {hasWrapper ? wrapper(button, Boolean(compact)) : button}\n </div>\n );\n};\n"],"names":["createBlock","styles","Icon","__rest"],"mappings":";;;;;;;;AASA,MAAM,CAAC,GAAGA,cAAW,CAAC,MAAM,EAAEC,mBAAM,CAAC;AAExB,MAAA,IAAI,GAOb,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,QAAQ,GAAG,EAAE,EACb,QAAQ,GAAG,EAAE,EACb,IAAI,EACJ,MAAM,GAAG,OAAO,EAChB,OAAO,EACP,OAAO,EACP,OAAO,EACP,SAAS,EACT,eAAe,EACf,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,8BAA8B,EAAE,aAAa,GAChD,KAAI;AACD,IAAA,MAAM,UAAU,GAAG,OAAO,OAAO,KAAK,UAAU;AAEhD,IAAA,IAAI,UAAU;IAEd,IAAI,OAAO,EAAE;AACT,QAAA,UAAU,IACN,KAAM,CAAA,aAAA,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,aAAa,EAAA;AAC1B,YAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,GAAG,EAAC,WAAW,EAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAI,CAAA,CACrE,CACV;;SACE,IAAI,IAAI,EAAE;AACb,QAAA,UAAU,GAAG,KAAC,CAAA,aAAA,CAAAC,UAAI,EAAC,EAAA,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,GAAI;;AAG/E,IAAA,IAAI,IAAqB;AAEzB,IAAA,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;QAC5B,IAAI,GAAG,IAAI,EAAE;;SACV;QACH,IAAI,IACA,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EAAqB,oBAAA,EAAA,OAAO,EAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAC,EAC5E,EAAA,IAAI,CACH,CACT;;AAGL,IAAA,MAAM,KAAgC;AAClC,UAAG;AACG,YAAA,GAAG,EAAE,GAAG;YACR,MAAM;YACN,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,GAAG,YAAY;YAClD,IAAI;AACJ,YAAA,YAAY,EAAE,SAAS;AACvB,YAAA,iBAAiB,EAAE,cAAc;AAC1B;AACb,UAAG,EAAC,GAAG,EAAE,MAAM,EAAW,EATxB,EAAC,GAAG,EAAE,MAAM,EASY,GAAA,EAAA,EATP,WAAW,GAA5BC,YAAA,CAAA,EAAA,EAAA,CAAA,KAAA,CAA6B,CASL;AAE9B,IAAA,MAAM,MAAM,IACR,oBAAC,MAAM,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,WAAW,EAAE,EAAA,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,OAAO,EAAA,CAAA;AAChF,QAAA,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,CAAC,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,EAAqB,oBAAA,EAAA,MAAM,EAC/E,EAAA,UAAU,CACR;AACN,QAAA,CAAC,OAAO,IAAI,IAAI,CACZ,CACZ;AAED,IAAA,QACI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAA,8BAAA,EAAgC,aAAa,EAAA,EAC1E,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CACtD;AAEd;;;;"}
|
|
@@ -4,3 +4,8 @@ export declare const ASIDE_HEADER_EXPANDED_WIDTH = 236;
|
|
|
4
4
|
export declare const ITEM_HEIGHT = 40;
|
|
5
5
|
export declare const POPUP_REGULAR_ITEM_HEIGHT = 32;
|
|
6
6
|
export declare const HEADER_DIVIDER_HEIGHT = 29;
|
|
7
|
+
/**
|
|
8
|
+
* Duration of the aside collapse/expand width transition.
|
|
9
|
+
* Keep in sync with `$aside-width-transition-duration` in AsideHeader.module.scss.
|
|
10
|
+
*/
|
|
11
|
+
export declare const ASIDE_HEADER_COLLAPSE_TRANSITION_MS = 200;
|
|
@@ -6,7 +6,13 @@ const ASIDE_HEADER_EXPANDED_WIDTH = 236;
|
|
|
6
6
|
const ITEM_HEIGHT = 40;
|
|
7
7
|
const POPUP_REGULAR_ITEM_HEIGHT = 32;
|
|
8
8
|
const HEADER_DIVIDER_HEIGHT = 29;
|
|
9
|
+
/**
|
|
10
|
+
* Duration of the aside collapse/expand width transition.
|
|
11
|
+
* Keep in sync with `$aside-width-transition-duration` in AsideHeader.module.scss.
|
|
12
|
+
*/
|
|
13
|
+
const ASIDE_HEADER_COLLAPSE_TRANSITION_MS = 200;
|
|
9
14
|
|
|
15
|
+
exports.ASIDE_HEADER_COLLAPSE_TRANSITION_MS = ASIDE_HEADER_COLLAPSE_TRANSITION_MS;
|
|
10
16
|
exports.ASIDE_HEADER_COMPACT_WIDTH = ASIDE_HEADER_COMPACT_WIDTH;
|
|
11
17
|
exports.ASIDE_HEADER_EXPANDED_WIDTH = ASIDE_HEADER_EXPANDED_WIDTH;
|
|
12
18
|
exports.ASIDE_HEADER_ICON_SIZE = ASIDE_HEADER_ICON_SIZE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../../src/components/constants.ts"],"sourcesContent":["export const ASIDE_HEADER_ICON_SIZE = 18;\nexport const ASIDE_HEADER_COMPACT_WIDTH = 56;\nexport const ASIDE_HEADER_EXPANDED_WIDTH = 236;\nexport const ITEM_HEIGHT = 40;\nexport const POPUP_REGULAR_ITEM_HEIGHT = 32;\nexport const HEADER_DIVIDER_HEIGHT = 29;\n"],"names":[],"mappings":";;AAAO,MAAM,sBAAsB,GAAG;AAC/B,MAAM,0BAA0B,GAAG;AACnC,MAAM,2BAA2B,GAAG;AACpC,MAAM,WAAW,GAAG;AACpB,MAAM,yBAAyB,GAAG;AAClC,MAAM,qBAAqB,GAAG
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/components/constants.ts"],"sourcesContent":["export const ASIDE_HEADER_ICON_SIZE = 18;\nexport const ASIDE_HEADER_COMPACT_WIDTH = 56;\nexport const ASIDE_HEADER_EXPANDED_WIDTH = 236;\nexport const ITEM_HEIGHT = 40;\nexport const POPUP_REGULAR_ITEM_HEIGHT = 32;\nexport const HEADER_DIVIDER_HEIGHT = 29;\n/**\n * Duration of the aside collapse/expand width transition.\n * Keep in sync with `$aside-width-transition-duration` in AsideHeader.module.scss.\n */\nexport const ASIDE_HEADER_COLLAPSE_TRANSITION_MS = 200;\n"],"names":[],"mappings":";;AAAO,MAAM,sBAAsB,GAAG;AAC/B,MAAM,0BAA0B,GAAG;AACnC,MAAM,2BAA2B,GAAG;AACpC,MAAM,WAAW,GAAG;AACpB,MAAM,yBAAyB,GAAG;AAClC,MAAM,qBAAqB,GAAG;AACrC;;;AAGG;AACI,MAAM,mCAAmC,GAAG;;;;;;;;;;"}
|
|
@@ -56,7 +56,7 @@ export interface MenuGroup {
|
|
|
56
56
|
/** Hide the group from display */
|
|
57
57
|
hidden?: boolean;
|
|
58
58
|
/**
|
|
59
|
-
* Optional title shown
|
|
59
|
+
* Optional title shown in a popup that lists group children.
|
|
60
60
|
* Does not affect the group title displayed anywhere else.
|
|
61
61
|
*/
|
|
62
62
|
popupTitle?: string;
|
|
@@ -75,10 +75,10 @@ export interface MenuGroup {
|
|
|
75
75
|
*/
|
|
76
76
|
href?: string;
|
|
77
77
|
/**
|
|
78
|
-
*
|
|
79
|
-
*
|
|
78
|
+
* Marks the group header row as the current page, like `MenuItem.current`.
|
|
79
|
+
* Only the header row is highlighted; nested items keep their own states.
|
|
80
80
|
*/
|
|
81
|
-
|
|
81
|
+
current?: boolean;
|
|
82
82
|
/**
|
|
83
83
|
* When `true` and the group has its own action (`onItemClick` and/or `href`),
|
|
84
84
|
* the group items are not listed in the All pages panel (view mode) — the group
|