@gravity-ui/navigation 3.0.0-beta.1 → 3.0.0-beta.3
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/README.md +1 -1
- package/build/cjs/_virtual/_commonjsHelpers.js +11 -0
- package/build/cjs/_virtual/_commonjsHelpers.js.map +1 -0
- package/build/cjs/_virtual/debounce.js +10 -0
- package/build/cjs/_virtual/debounce.js.map +1 -0
- package/build/cjs/_virtual/identity.js +10 -0
- package/build/cjs/_virtual/identity.js.map +1 -0
- package/build/cjs/_virtual/index.js +10 -0
- package/build/cjs/_virtual/index.js.map +1 -0
- package/build/cjs/_virtual/index2.js +6 -0
- package/build/cjs/{index2.js.map → _virtual/index2.js.map} +1 -1
- package/build/cjs/_virtual/index3.js +6 -0
- package/build/{esm → cjs/_virtual}/index3.js.map +1 -1
- package/build/cjs/_virtual/react-is.development.js +6 -0
- package/build/cjs/_virtual/react-is.development.js.map +1 -0
- package/build/cjs/_virtual/react-is.production.min.js +6 -0
- package/build/cjs/_virtual/react-is.production.min.js.map +1 -0
- package/build/cjs/assets/icons/control-menu-button.svg.js +39 -0
- package/build/cjs/assets/icons/control-menu-button.svg.js.map +1 -0
- package/build/cjs/{divider-collapsed-b743122e.js → assets/icons/divider-collapsed.svg.js} +7 -9
- package/build/cjs/assets/icons/divider-collapsed.svg.js.map +1 -0
- package/build/cjs/components/ActionBar/ActionBar.d.ts +3 -3
- package/build/cjs/components/ActionBar/ActionBar.js +24 -0
- package/build/cjs/components/ActionBar/ActionBar.js.map +1 -0
- package/build/cjs/components/ActionBar/ActionBar.scss.js +9 -0
- package/build/cjs/components/ActionBar/ActionBar.scss.js.map +1 -0
- package/build/cjs/components/ActionBar/Group/ActionBarGroup.js +14 -0
- package/build/cjs/components/ActionBar/Group/ActionBarGroup.js.map +1 -0
- package/build/cjs/components/ActionBar/Group/ActionBarGroup.scss.js +9 -0
- package/build/cjs/components/ActionBar/Group/ActionBarGroup.scss.js.map +1 -0
- package/build/cjs/components/ActionBar/Item/ActionBarItem.js +14 -0
- package/build/cjs/components/ActionBar/Item/ActionBarItem.js.map +1 -0
- package/build/cjs/components/ActionBar/Item/ActionBarItem.scss.js +9 -0
- package/build/cjs/components/ActionBar/Item/ActionBarItem.scss.js.map +1 -0
- package/build/cjs/components/ActionBar/Section/ActionBarSection.js +14 -0
- package/build/cjs/components/ActionBar/Section/ActionBarSection.js.map +1 -0
- package/build/cjs/components/ActionBar/Section/ActionBarSection.scss.js +9 -0
- package/build/cjs/components/ActionBar/Section/ActionBarSection.scss.js.map +1 -0
- package/build/cjs/components/ActionBar/Separator/ActionBarSeparator.js +14 -0
- package/build/cjs/components/ActionBar/Separator/ActionBarSeparator.js.map +1 -0
- package/build/cjs/components/ActionBar/Separator/ActionBarSeparator.scss.js +9 -0
- package/build/cjs/components/ActionBar/Separator/ActionBarSeparator.scss.js.map +1 -0
- package/build/cjs/components/ActionBar/__stories__/ActionBar.stories.d.ts +17 -0
- package/build/cjs/components/ActionBar/__stories__/ActionBarShowcase.d.ts +2 -0
- package/build/cjs/components/ActionBar/__stories__/ActionBarSingleSection.d.ts +2 -0
- package/build/cjs/components/ActionBar/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/ActionBar/index.js +8 -0
- package/build/cjs/components/ActionBar/index.js.map +1 -0
- package/build/cjs/components/ActionBar/types.d.ts +1 -1
- package/build/cjs/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +32 -0
- package/build/cjs/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.scss.js +9 -0
- package/build/cjs/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.scss.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/AllPagesPanel.js +101 -0
- package/build/cjs/components/AllPagesPanel/AllPagesPanel.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/AllPagesPanel.scss.js +9 -0
- package/build/cjs/components/AllPagesPanel/AllPagesPanel.scss.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/constants.js +18 -0
- package/build/cjs/components/AllPagesPanel/constants.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/i18n/en.json.js +12 -0
- package/build/cjs/components/AllPagesPanel/i18n/en.json.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/i18n/index.d.ts +5 -1
- package/build/cjs/components/AllPagesPanel/i18n/index.js +12 -0
- package/build/cjs/components/AllPagesPanel/i18n/index.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/i18n/ru.json.js +12 -0
- package/build/cjs/components/AllPagesPanel/i18n/ru.json.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/useGroupedMenuItems.js +33 -0
- package/build/cjs/components/AllPagesPanel/useGroupedMenuItems.js.map +1 -0
- package/build/cjs/components/AllPagesPanel/useVisibleMenuItems.js +29 -0
- package/build/cjs/components/AllPagesPanel/useVisibleMenuItems.js.map +1 -0
- package/build/cjs/components/AsideHeader/AsideHeader.js +17 -0
- package/build/cjs/components/AsideHeader/AsideHeader.js.map +1 -0
- package/build/cjs/components/AsideHeader/AsideHeader.scss.js +9 -0
- package/build/cjs/components/AsideHeader/AsideHeader.scss.js.map +1 -0
- package/build/cjs/components/AsideHeader/AsideHeaderContext.d.ts +1 -1
- package/build/cjs/{AsideHeaderContext.js → components/AsideHeader/AsideHeaderContext.js} +4 -10
- package/build/cjs/components/AsideHeader/AsideHeaderContext.js.map +1 -0
- package/build/cjs/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +18 -0
- package/build/cjs/components/AsideHeader/__stories__/AsideHeaderShowcase.d.ts +14 -0
- package/build/cjs/components/AsideHeader/__stories__/getAsideHeaderWrapper.d.ts +3 -0
- package/build/cjs/components/AsideHeader/__stories__/moc.d.ts +6 -0
- package/build/cjs/components/AsideHeader/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js +25 -0
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.scss.js +9 -0
- package/build/cjs/components/AsideHeader/components/CollapseButton/CollapseButton.scss.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/FirstPanel.js +42 -0
- package/build/cjs/components/AsideHeader/components/FirstPanel.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/Header.js +28 -0
- package/build/cjs/components/AsideHeader/components/Header.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js +23 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/AsideFallback.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js +29 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js +17 -0
- package/build/cjs/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/Panels.js +14 -0
- package/build/cjs/components/AsideHeader/components/Panels.js.map +1 -0
- package/build/cjs/components/AsideHeader/components/index.d.ts +0 -1
- package/build/cjs/components/AsideHeader/i18n/en.json.js +18 -0
- package/build/cjs/components/AsideHeader/i18n/en.json.js.map +1 -0
- package/build/cjs/components/AsideHeader/i18n/index.d.ts +5 -1
- package/build/cjs/components/AsideHeader/i18n/index.js +12 -0
- package/build/cjs/components/AsideHeader/i18n/index.js.map +1 -0
- package/build/cjs/components/AsideHeader/i18n/ru.json.js +18 -0
- package/build/cjs/components/AsideHeader/i18n/ru.json.js.map +1 -0
- package/build/cjs/components/AsideHeader/types.d.ts +3 -4
- package/build/cjs/components/AsideHeader/types.js +7 -0
- package/build/cjs/components/AsideHeader/types.js.map +1 -0
- package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js +62 -0
- package/build/cjs/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -0
- package/build/cjs/components/AsideHeader/utils.js +8 -0
- package/build/cjs/components/AsideHeader/utils.js.map +1 -0
- package/build/cjs/components/CompositeBar/CompositeBar.d.ts +1 -1
- package/build/cjs/components/CompositeBar/CompositeBar.js +154 -0
- package/build/cjs/components/CompositeBar/CompositeBar.js.map +1 -0
- package/build/cjs/components/CompositeBar/CompositeBar.scss.js +9 -0
- package/build/cjs/components/CompositeBar/CompositeBar.scss.js.map +1 -0
- package/build/cjs/components/CompositeBar/HighlightedItem/HighlightedItem.d.ts +1 -1
- package/build/cjs/components/CompositeBar/HighlightedItem/HighlightedItem.js +53 -0
- package/build/cjs/components/CompositeBar/HighlightedItem/HighlightedItem.js.map +1 -0
- package/build/cjs/components/CompositeBar/HighlightedItem/HighlightedItem.scss.js +9 -0
- package/build/cjs/components/CompositeBar/HighlightedItem/HighlightedItem.scss.js.map +1 -0
- package/build/cjs/components/CompositeBar/Item/Item.d.ts +15 -2
- package/build/cjs/components/CompositeBar/Item/Item.js +178 -0
- package/build/cjs/components/CompositeBar/Item/Item.js.map +1 -0
- package/build/cjs/components/CompositeBar/Item/Item.scss.js +9 -0
- package/build/cjs/components/CompositeBar/Item/Item.scss.js.map +1 -0
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltip.js +32 -0
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltip.js.map +1 -0
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltip.scss.js +9 -0
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltip.scss.js.map +1 -0
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js +29 -0
- package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js.map +1 -0
- package/build/cjs/components/CompositeBar/constants.js +12 -0
- package/build/cjs/components/CompositeBar/constants.js.map +1 -0
- package/build/cjs/components/CompositeBar/utils.js +107 -0
- package/build/cjs/components/CompositeBar/utils.js.map +1 -0
- package/build/cjs/components/Content/Content.js +16 -0
- package/build/cjs/components/Content/Content.js.map +1 -0
- package/build/cjs/components/Drawer/Drawer.d.ts +0 -5
- package/build/cjs/components/Drawer/Drawer.js +83 -0
- package/build/cjs/components/Drawer/Drawer.js.map +1 -0
- package/build/cjs/components/Drawer/Drawer.scss.js +9 -0
- package/build/cjs/components/Drawer/Drawer.scss.js.map +1 -0
- package/build/cjs/components/Drawer/__stories__/DisablePortal.d.ts +3 -0
- package/build/cjs/components/Drawer/__stories__/Drawer.stories.d.ts +7 -0
- package/build/cjs/components/Drawer/__stories__/DrawerShowcase.d.ts +3 -0
- package/build/cjs/components/Drawer/__stories__/HideVeil.d.ts +3 -0
- package/build/cjs/components/Drawer/__stories__/ResizableItem.d.ts +3 -0
- package/build/cjs/components/Drawer/__stories__/moc.d.ts +2 -0
- package/build/cjs/components/Drawer/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/Drawer/utils.d.ts +2 -2
- package/build/cjs/components/Drawer/utils.js +109 -0
- package/build/cjs/components/Drawer/utils.js.map +1 -0
- package/build/cjs/components/Footer/MenuItem/MenuItem.js +16 -0
- package/build/cjs/components/Footer/MenuItem/MenuItem.js.map +1 -0
- package/build/cjs/components/Footer/MenuItem/MenuItem.scss.js +9 -0
- package/build/cjs/components/Footer/MenuItem/MenuItem.scss.js.map +1 -0
- package/build/cjs/components/Footer/desktop/Footer.js +40 -0
- package/build/cjs/components/Footer/desktop/Footer.js.map +1 -0
- package/build/cjs/components/Footer/desktop/Footer.scss.js +9 -0
- package/build/cjs/components/Footer/desktop/Footer.scss.js.map +1 -0
- package/build/cjs/components/Footer/desktop/__stories__/Footer.stories.d.ts +8 -0
- package/build/cjs/components/Footer/desktop/__stories__/FooterShowcase.d.ts +4 -0
- package/build/cjs/components/Footer/desktop/__stories__/moc.d.ts +3 -0
- package/build/cjs/components/Footer/desktop/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/Footer/desktop/constants/moreItemsPopupProps.js +8 -0
- package/build/cjs/components/Footer/desktop/constants/moreItemsPopupProps.js.map +1 -0
- package/build/cjs/components/Footer/mobile/Footer.js +47 -0
- package/build/cjs/components/Footer/mobile/Footer.js.map +1 -0
- package/build/cjs/components/Footer/mobile/Footer.scss.js +9 -0
- package/build/cjs/components/Footer/mobile/Footer.scss.js.map +1 -0
- package/build/cjs/components/Footer/mobile/__stories__/MobileFooter.stories.d.ts +8 -0
- package/build/cjs/components/Footer/mobile/__stories__/MobileFooterShowcase.d.ts +4 -0
- package/build/cjs/components/Footer/mobile/__stories__/moc.d.ts +3 -0
- package/build/cjs/components/Footer/mobile/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/FooterItem/FooterItem.js +17 -0
- package/build/cjs/components/FooterItem/FooterItem.js.map +1 -0
- package/build/cjs/components/FooterItem/FooterItem.scss.js +9 -0
- package/build/cjs/components/FooterItem/FooterItem.scss.js.map +1 -0
- package/build/cjs/components/FooterItem/__stories__/FooterItem.stories.d.ts +6 -0
- package/build/cjs/components/FooterItem/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.d.ts +1 -3
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.js +35 -0
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.js.map +1 -0
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.scss.js +9 -0
- package/build/cjs/components/HotkeysPanel/HotkeysPanel.scss.js.map +1 -0
- package/build/cjs/components/HotkeysPanel/__stories__/HotkeysPanel.stories.d.ts +5 -0
- package/build/cjs/components/HotkeysPanel/__stories__/HotkeysPanelShowcase.d.ts +6 -0
- package/build/cjs/components/HotkeysPanel/__stories__/moc.d.ts +2 -0
- package/build/cjs/components/HotkeysPanel/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/HotkeysPanel/index.js +8 -0
- package/build/cjs/components/HotkeysPanel/index.js.map +1 -0
- package/build/cjs/components/HotkeysPanel/utils/filterHotkeys.js +19 -0
- package/build/cjs/components/HotkeysPanel/utils/filterHotkeys.js.map +1 -0
- package/build/cjs/components/HotkeysPanel/utils/flattenHotkeyGroups.js +16 -0
- package/build/cjs/components/HotkeysPanel/utils/flattenHotkeyGroups.js.map +1 -0
- package/build/cjs/components/Logo/Logo.d.ts +1 -1
- package/build/cjs/components/Logo/Logo.js +33 -0
- package/build/cjs/components/Logo/Logo.js.map +1 -0
- package/build/cjs/components/Logo/Logo.scss.js +9 -0
- package/build/cjs/components/Logo/Logo.scss.js.map +1 -0
- package/build/cjs/components/Logo/__stories__/Logo.stories.d.ts +6 -0
- package/build/cjs/components/Logo/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/MobileHeader/Burger/Burger.js +14 -0
- package/build/cjs/components/MobileHeader/Burger/Burger.js.map +1 -0
- package/build/cjs/components/MobileHeader/Burger/Burger.scss.js +9 -0
- package/build/cjs/components/MobileHeader/Burger/Burger.scss.js.map +1 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.js +39 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.js.map +1 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.scss.js +9 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.scss.js.map +1 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerMenu.js +20 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerMenu.js.map +1 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerMenu.scss.js +9 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/BurgerMenu.scss.js.map +1 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/__stories__/BurgerMenu.stories.d.ts +6 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/__stories__/moc.d.ts +2 -0
- package/build/cjs/components/MobileHeader/BurgerMenu/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/MobileHeader/FooterItem/FooterItem.js +27 -0
- package/build/cjs/components/MobileHeader/FooterItem/FooterItem.js.map +1 -0
- package/build/cjs/components/MobileHeader/FooterItem/FooterItem.scss.js +9 -0
- package/build/cjs/components/MobileHeader/FooterItem/FooterItem.scss.js.map +1 -0
- package/build/cjs/components/MobileHeader/MobileHeader.d.ts +2 -1
- package/build/cjs/components/MobileHeader/MobileHeader.js +148 -0
- package/build/cjs/components/MobileHeader/MobileHeader.js.map +1 -0
- package/build/cjs/components/MobileHeader/MobileHeader.scss.js +9 -0
- package/build/cjs/components/MobileHeader/MobileHeader.scss.js.map +1 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.js +28 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.js.map +1 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.scss.js +9 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/OverlapPanel.scss.js.map +1 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/__stories__/OverlapPanel.stories.d.ts +6 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/__stories__/moc.d.ts +2 -0
- package/build/cjs/components/MobileHeader/OverlapPanel/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/MobileHeader/__stories__/MobileHeader.stories.d.ts +4 -0
- package/build/cjs/components/MobileHeader/__stories__/MobileHeaderShowcase.d.ts +3 -0
- package/build/cjs/components/MobileHeader/__stories__/moc.d.ts +1 -0
- package/build/cjs/components/MobileHeader/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/MobileHeader/constants.js +22 -0
- package/build/cjs/components/MobileHeader/constants.js.map +1 -0
- package/build/cjs/components/MobileHeader/i18n/en.json.js +18 -0
- package/build/cjs/components/MobileHeader/i18n/en.json.js.map +1 -0
- package/build/cjs/components/MobileHeader/i18n/index.d.ts +5 -1
- package/build/cjs/components/MobileHeader/i18n/index.js +12 -0
- package/build/cjs/components/MobileHeader/i18n/index.js.map +1 -0
- package/build/cjs/components/MobileHeader/i18n/ru.json.js +18 -0
- package/build/cjs/components/MobileHeader/i18n/ru.json.js.map +1 -0
- package/build/cjs/components/MobileHeader/index.js +14 -0
- package/build/cjs/components/MobileHeader/index.js.map +1 -0
- package/build/cjs/components/MobileHeader/types.d.ts +0 -1
- package/build/cjs/components/MobileHeader/utils.js +24 -0
- package/build/cjs/components/MobileHeader/utils.js.map +1 -0
- package/build/cjs/components/MobileLogo/MobileLogo.js +32 -0
- package/build/cjs/components/MobileLogo/MobileLogo.js.map +1 -0
- package/build/cjs/components/MobileLogo/MobileLogo.scss.js +9 -0
- package/build/cjs/components/MobileLogo/MobileLogo.scss.js.map +1 -0
- package/build/cjs/components/MobileLogo/__stories__/MobileLogo.stories.d.ts +6 -0
- package/build/cjs/components/MobileLogo/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/Settings/Selection/context.js +26 -0
- package/build/cjs/components/Settings/Selection/context.js.map +1 -0
- package/build/cjs/components/Settings/Selection/utils.js +22 -0
- package/build/cjs/components/Settings/Selection/utils.js.map +1 -0
- package/build/cjs/components/Settings/Settings.d.ts +1 -3
- package/build/cjs/components/Settings/Settings.js +192 -0
- package/build/cjs/components/Settings/Settings.js.map +1 -0
- package/build/cjs/components/Settings/Settings.scss.js +9 -0
- package/build/cjs/components/Settings/Settings.scss.js.map +1 -0
- package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.js +81 -0
- package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.js.map +1 -0
- package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.scss.js +9 -0
- package/build/cjs/components/Settings/SettingsMenu/SettingsMenu.scss.js.map +1 -0
- package/build/cjs/components/Settings/SettingsMenuMobile/SettingsMenuMobile.js +37 -0
- package/build/cjs/components/Settings/SettingsMenuMobile/SettingsMenuMobile.js.map +1 -0
- package/build/cjs/components/Settings/SettingsMenuMobile/SettingsMenuMobile.scss.js +9 -0
- package/build/cjs/components/Settings/SettingsMenuMobile/SettingsMenuMobile.scss.js.map +1 -0
- package/build/cjs/components/Settings/SettingsSearch/SettingsSearch.js +25 -0
- package/build/cjs/components/Settings/SettingsSearch/SettingsSearch.js.map +1 -0
- package/build/cjs/components/Settings/__stories__/Settings.stories.d.ts +5 -0
- package/build/cjs/components/Settings/__stories__/SettingsDemo.d.ts +14 -0
- package/build/cjs/components/Settings/__stories__/SettingsMobileDemo.d.ts +8 -0
- package/build/cjs/components/Settings/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/cjs/components/Settings/collect-settings.d.ts +0 -2
- package/build/cjs/components/Settings/collect-settings.js +147 -0
- package/build/cjs/components/Settings/collect-settings.js.map +1 -0
- package/build/cjs/components/Settings/helpers.js +57 -0
- package/build/cjs/components/Settings/helpers.js.map +1 -0
- package/build/cjs/components/Settings/i18n/en.json.js +17 -0
- package/build/cjs/components/Settings/i18n/en.json.js.map +1 -0
- package/build/cjs/components/Settings/i18n/index.d.ts +5 -1
- package/build/cjs/components/Settings/i18n/index.js +12 -0
- package/build/cjs/components/Settings/i18n/index.js.map +1 -0
- package/build/cjs/components/Settings/i18n/ru.json.js +17 -0
- package/build/cjs/components/Settings/i18n/ru.json.js.map +1 -0
- package/build/cjs/components/Settings/index.js +11 -0
- package/build/cjs/components/Settings/index.js.map +1 -0
- package/build/cjs/components/Title/Title.js +20 -0
- package/build/cjs/components/Title/Title.js.map +1 -0
- package/build/cjs/components/Title/Title.scss.js +9 -0
- package/build/cjs/components/Title/Title.scss.js.map +1 -0
- package/build/cjs/components/Title/i18n/en.json.js +12 -0
- package/build/cjs/components/Title/i18n/en.json.js.map +1 -0
- package/build/cjs/components/Title/i18n/index.d.ts +5 -1
- package/build/cjs/components/Title/i18n/index.js +12 -0
- package/build/cjs/components/Title/i18n/index.js.map +1 -0
- package/build/cjs/components/Title/i18n/ru.json.js +12 -0
- package/build/cjs/components/Title/i18n/ru.json.js.map +1 -0
- package/build/cjs/components/Title/index.js +8 -0
- package/build/cjs/components/Title/index.js.map +1 -0
- package/build/cjs/components/TopAlert/TopAlert.d.ts +10 -0
- package/build/cjs/components/TopAlert/TopAlert.js +33 -0
- package/build/cjs/components/TopAlert/TopAlert.js.map +1 -0
- package/build/cjs/components/TopAlert/TopAlert.scss.js +9 -0
- package/build/cjs/components/TopAlert/TopAlert.scss.js.map +1 -0
- package/build/cjs/components/TopAlert/index.d.ts +1 -0
- package/build/cjs/components/TopAlert/index.js +8 -0
- package/build/cjs/components/TopAlert/index.js.map +1 -0
- package/build/cjs/components/TopAlert/useTopAlertHeight.d.ts +10 -0
- package/build/cjs/components/TopAlert/useTopAlertHeight.js +37 -0
- package/build/cjs/components/TopAlert/useTopAlertHeight.js.map +1 -0
- package/build/cjs/{constants-d81c3867.js → components/constants.js} +1 -1
- package/build/cjs/components/constants.js.map +1 -0
- package/build/cjs/components/types.d.ts +9 -5
- package/build/cjs/{cn-9933321a.js → components/utils/cn.js} +1 -1
- package/build/cjs/components/utils/cn.js.map +1 -0
- package/build/cjs/hooks/useForwardRef.d.ts +1 -1
- package/build/cjs/hooks/useForwardRef.js +21 -0
- package/build/cjs/hooks/useForwardRef.js.map +1 -0
- package/build/cjs/hooks/useOverflowingHorizontalListItems/useOverflowingHorizontalListItems.js +66 -0
- package/build/cjs/hooks/useOverflowingHorizontalListItems/useOverflowingHorizontalListItems.js.map +1 -0
- package/build/cjs/index.js +30 -180
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +14 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +10 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js.map +1 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +14 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +10 -0
- package/build/cjs/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -0
- package/build/cjs/node_modules/dom-helpers/esm/addClass.js +17 -0
- package/build/cjs/node_modules/dom-helpers/esm/addClass.js.map +1 -0
- package/build/cjs/node_modules/dom-helpers/esm/hasClass.js +15 -0
- package/build/cjs/node_modules/dom-helpers/esm/hasClass.js.map +1 -0
- package/build/cjs/node_modules/dom-helpers/esm/removeClass.js +25 -0
- package/build/cjs/node_modules/dom-helpers/esm/removeClass.js.map +1 -0
- package/build/cjs/node_modules/lodash/_Symbol.js +21 -0
- package/build/cjs/node_modules/lodash/_Symbol.js.map +1 -0
- package/build/cjs/node_modules/lodash/_baseGetTag.js +45 -0
- package/build/cjs/node_modules/lodash/_baseGetTag.js.map +1 -0
- package/build/cjs/node_modules/lodash/_baseTrim.js +34 -0
- package/build/cjs/node_modules/lodash/_baseTrim.js.map +1 -0
- package/build/cjs/node_modules/lodash/_freeGlobal.js +20 -0
- package/build/cjs/node_modules/lodash/_freeGlobal.js.map +1 -0
- package/build/cjs/node_modules/lodash/_getRawTag.js +61 -0
- package/build/cjs/node_modules/lodash/_getRawTag.js.map +1 -0
- package/build/cjs/node_modules/lodash/_objectToString.js +36 -0
- package/build/cjs/node_modules/lodash/_objectToString.js.map +1 -0
- package/build/cjs/node_modules/lodash/_root.js +24 -0
- package/build/cjs/node_modules/lodash/_root.js.map +1 -0
- package/build/cjs/node_modules/lodash/_trimmedEndIndex.js +33 -0
- package/build/cjs/node_modules/lodash/_trimmedEndIndex.js.map +1 -0
- package/build/cjs/node_modules/lodash/debounce.js +208 -0
- package/build/cjs/node_modules/lodash/debounce.js.map +1 -0
- package/build/cjs/node_modules/lodash/identity.js +35 -0
- package/build/cjs/node_modules/lodash/identity.js.map +1 -0
- package/build/cjs/node_modules/lodash/isObject.js +45 -0
- package/build/cjs/node_modules/lodash/isObject.js.map +1 -0
- package/build/cjs/node_modules/lodash/isObjectLike.js +43 -0
- package/build/cjs/node_modules/lodash/isObjectLike.js.map +1 -0
- package/build/cjs/node_modules/lodash/isSymbol.js +45 -0
- package/build/cjs/node_modules/lodash/isSymbol.js.map +1 -0
- package/build/cjs/node_modules/lodash/now.js +38 -0
- package/build/cjs/node_modules/lodash/now.js.map +1 -0
- package/build/cjs/node_modules/lodash/toNumber.js +81 -0
- package/build/cjs/node_modules/lodash/toNumber.js.map +1 -0
- package/build/cjs/node_modules/object-assign/index.js +102 -0
- package/build/cjs/node_modules/object-assign/index.js.map +1 -0
- package/build/cjs/node_modules/prop-types/checkPropTypes.js +118 -0
- package/build/cjs/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/build/cjs/node_modules/prop-types/factoryWithThrowingShims.js +77 -0
- package/build/cjs/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/build/cjs/node_modules/prop-types/factoryWithTypeCheckers.js +628 -0
- package/build/cjs/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/build/cjs/node_modules/prop-types/index.js +36 -0
- package/build/cjs/node_modules/prop-types/index.js.map +1 -0
- package/build/cjs/node_modules/prop-types/lib/ReactPropTypesSecret.js +24 -0
- package/build/cjs/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/build/cjs/node_modules/prop-types/lib/has.js +14 -0
- package/build/cjs/node_modules/prop-types/lib/has.js.map +1 -0
- package/build/cjs/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +193 -0
- package/build/cjs/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/build/cjs/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +29 -0
- package/build/cjs/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/build/cjs/node_modules/prop-types/node_modules/react-is/index.js +22 -0
- package/build/cjs/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
- package/build/cjs/node_modules/react-transition-group/esm/CSSTransition.js +416 -0
- package/build/cjs/node_modules/react-transition-group/esm/CSSTransition.js.map +1 -0
- package/build/cjs/node_modules/react-transition-group/esm/Transition.js +637 -0
- package/build/cjs/node_modules/react-transition-group/esm/Transition.js.map +1 -0
- package/build/cjs/node_modules/react-transition-group/esm/TransitionGroupContext.js +8 -0
- package/build/cjs/node_modules/react-transition-group/esm/TransitionGroupContext.js.map +1 -0
- package/build/cjs/node_modules/react-transition-group/esm/config.js +8 -0
- package/build/cjs/node_modules/react-transition-group/esm/config.js.map +1 -0
- package/build/cjs/node_modules/react-transition-group/esm/utils/PropTypes.js +25 -0
- package/build/cjs/node_modules/react-transition-group/esm/utils/PropTypes.js.map +1 -0
- package/build/cjs/node_modules/react-transition-group/esm/utils/reflow.js +8 -0
- package/build/cjs/node_modules/react-transition-group/esm/utils/reflow.js.map +1 -0
- package/build/cjs/node_modules/react-virtualized-auto-sizer/dist/react-virtualized-auto-sizer.esm.js +385 -0
- package/build/cjs/node_modules/react-virtualized-auto-sizer/dist/react-virtualized-auto-sizer.esm.js.map +1 -0
- package/build/cjs/{style-inject.es-dcee06b6.js → node_modules/style-inject/dist/style-inject.es.js} +3 -3
- package/build/cjs/node_modules/style-inject/dist/style-inject.es.js.map +1 -0
- package/build/cjs/{tslib.es6-705c6589.js → node_modules/tslib/tslib.es6.js} +33 -31
- package/build/cjs/node_modules/tslib/tslib.es6.js.map +1 -0
- package/build/esm/_virtual/_commonjsHelpers.js +8 -0
- package/build/esm/_virtual/_commonjsHelpers.js.map +1 -0
- package/build/esm/_virtual/debounce.js +8 -0
- package/build/esm/_virtual/debounce.js.map +1 -0
- package/build/esm/_virtual/identity.js +8 -0
- package/build/esm/_virtual/identity.js.map +1 -0
- package/build/esm/_virtual/index.js +8 -0
- package/build/esm/_virtual/index.js.map +1 -0
- package/build/esm/_virtual/index2.js +4 -0
- package/build/esm/_virtual/index3.js +4 -0
- package/build/{cjs → esm/_virtual}/index3.js.map +1 -1
- package/build/esm/_virtual/react-is.development.js +4 -0
- package/build/esm/_virtual/react-is.development.js.map +1 -0
- package/build/esm/_virtual/react-is.production.min.js +4 -0
- package/build/esm/_virtual/react-is.production.min.js.map +1 -0
- package/build/esm/assets/icons/control-menu-button.svg.js +18 -0
- package/build/esm/assets/icons/control-menu-button.svg.js.map +1 -0
- package/build/esm/{divider-collapsed-a0ef54c3.js → assets/icons/divider-collapsed.svg.js} +4 -5
- package/build/esm/assets/icons/divider-collapsed.svg.js.map +1 -0
- package/build/esm/components/ActionBar/ActionBar.d.ts +3 -3
- package/build/esm/components/ActionBar/ActionBar.js +22 -0
- package/build/esm/components/ActionBar/ActionBar.js.map +1 -0
- package/build/esm/components/ActionBar/ActionBar.scss.js +7 -0
- package/build/esm/components/ActionBar/ActionBar.scss.js.map +1 -0
- package/build/esm/components/ActionBar/Group/ActionBarGroup.js +12 -0
- package/build/esm/components/ActionBar/Group/ActionBarGroup.js.map +1 -0
- package/build/esm/components/ActionBar/Group/ActionBarGroup.scss.js +7 -0
- package/build/esm/components/ActionBar/Group/ActionBarGroup.scss.js.map +1 -0
- package/build/esm/components/ActionBar/Item/ActionBarItem.js +12 -0
- package/build/esm/components/ActionBar/Item/ActionBarItem.js.map +1 -0
- package/build/esm/components/ActionBar/Item/ActionBarItem.scss.js +7 -0
- package/build/esm/components/ActionBar/Item/ActionBarItem.scss.js.map +1 -0
- package/build/esm/components/ActionBar/Section/ActionBarSection.js +12 -0
- package/build/esm/components/ActionBar/Section/ActionBarSection.js.map +1 -0
- package/build/esm/components/ActionBar/Section/ActionBarSection.scss.js +7 -0
- package/build/esm/components/ActionBar/Section/ActionBarSection.scss.js.map +1 -0
- package/build/esm/components/ActionBar/Separator/ActionBarSeparator.js +12 -0
- package/build/esm/components/ActionBar/Separator/ActionBarSeparator.js.map +1 -0
- package/build/esm/components/ActionBar/Separator/ActionBarSeparator.scss.js +7 -0
- package/build/esm/components/ActionBar/Separator/ActionBarSeparator.scss.js.map +1 -0
- package/build/esm/components/ActionBar/__stories__/ActionBar.stories.d.ts +17 -0
- package/build/esm/components/ActionBar/__stories__/ActionBarShowcase.d.ts +2 -0
- package/build/esm/components/ActionBar/__stories__/ActionBarSingleSection.d.ts +2 -0
- package/build/esm/components/ActionBar/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/ActionBar/index.js +2 -0
- package/build/esm/components/ActionBar/index.js.map +1 -0
- package/build/esm/components/ActionBar/types.d.ts +1 -1
- package/build/esm/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js +30 -0
- package/build/esm/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.js.map +1 -0
- package/build/esm/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.scss.js +7 -0
- package/build/esm/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.scss.js.map +1 -0
- package/build/esm/components/AllPagesPanel/AllPagesPanel.js +99 -0
- package/build/esm/components/AllPagesPanel/AllPagesPanel.js.map +1 -0
- package/build/esm/components/AllPagesPanel/AllPagesPanel.scss.js +7 -0
- package/build/esm/components/AllPagesPanel/AllPagesPanel.scss.js.map +1 -0
- package/build/esm/components/AllPagesPanel/constants.js +15 -0
- package/build/esm/components/AllPagesPanel/constants.js.map +1 -0
- package/build/esm/components/AllPagesPanel/i18n/en.json.js +10 -0
- package/build/esm/components/AllPagesPanel/i18n/en.json.js.map +1 -0
- package/build/esm/components/AllPagesPanel/i18n/index.d.ts +5 -1
- package/build/esm/components/AllPagesPanel/i18n/index.js +10 -0
- package/build/esm/components/AllPagesPanel/i18n/index.js.map +1 -0
- package/build/esm/components/AllPagesPanel/i18n/ru.json.js +10 -0
- package/build/esm/components/AllPagesPanel/i18n/ru.json.js.map +1 -0
- package/build/esm/components/AllPagesPanel/useGroupedMenuItems.js +31 -0
- package/build/esm/components/AllPagesPanel/useGroupedMenuItems.js.map +1 -0
- package/build/esm/components/AllPagesPanel/useVisibleMenuItems.js +27 -0
- package/build/esm/components/AllPagesPanel/useVisibleMenuItems.js.map +1 -0
- package/build/esm/components/AsideHeader/AsideHeader.js +15 -0
- package/build/esm/components/AsideHeader/AsideHeader.js.map +1 -0
- package/build/esm/components/AsideHeader/AsideHeader.scss.js +7 -0
- package/build/esm/components/AsideHeader/AsideHeader.scss.js.map +1 -0
- package/build/esm/components/AsideHeader/AsideHeaderContext.d.ts +1 -1
- package/build/esm/components/AsideHeader/AsideHeaderContext.js.map +1 -0
- package/build/esm/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +18 -0
- package/build/esm/components/AsideHeader/__stories__/AsideHeaderShowcase.d.ts +14 -0
- package/build/esm/components/AsideHeader/__stories__/getAsideHeaderWrapper.d.ts +3 -0
- package/build/esm/components/AsideHeader/__stories__/moc.d.ts +6 -0
- package/build/esm/components/AsideHeader/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js +23 -0
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.js.map +1 -0
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.scss.js +7 -0
- package/build/esm/components/AsideHeader/components/CollapseButton/CollapseButton.scss.js.map +1 -0
- package/build/esm/components/AsideHeader/components/FirstPanel.js +40 -0
- package/build/esm/components/AsideHeader/components/FirstPanel.js.map +1 -0
- package/build/esm/components/AsideHeader/components/Header.js +26 -0
- package/build/esm/components/AsideHeader/components/Header.js.map +1 -0
- package/build/esm/{AsideFallback.js → components/AsideHeader/components/PageLayout/AsideFallback.js} +5 -7
- package/build/esm/components/AsideHeader/components/PageLayout/AsideFallback.js.map +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js +27 -0
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayout.js.map +1 -0
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js +15 -0
- package/build/esm/components/AsideHeader/components/PageLayout/PageLayoutAside.js.map +1 -0
- package/build/esm/components/AsideHeader/components/Panels.js +12 -0
- package/build/esm/components/AsideHeader/components/Panels.js.map +1 -0
- package/build/esm/components/AsideHeader/components/index.d.ts +0 -1
- package/build/esm/components/AsideHeader/i18n/en.json.js +11 -0
- package/build/esm/components/AsideHeader/i18n/en.json.js.map +1 -0
- package/build/esm/components/AsideHeader/i18n/index.d.ts +5 -1
- package/build/esm/components/AsideHeader/i18n/index.js +10 -0
- package/build/esm/components/AsideHeader/i18n/index.js.map +1 -0
- package/build/esm/components/AsideHeader/i18n/ru.json.js +11 -0
- package/build/esm/components/AsideHeader/i18n/ru.json.js.map +1 -0
- package/build/esm/components/AsideHeader/types.d.ts +3 -4
- package/build/esm/components/AsideHeader/types.js +7 -0
- package/build/esm/components/AsideHeader/types.js.map +1 -0
- package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js +60 -0
- package/build/esm/components/AsideHeader/useAsideHeaderInnerContextValue.js.map +1 -0
- package/build/esm/components/AsideHeader/utils.js +6 -0
- package/build/esm/components/AsideHeader/utils.js.map +1 -0
- package/build/esm/components/CompositeBar/CompositeBar.d.ts +1 -1
- package/build/esm/components/CompositeBar/CompositeBar.js +152 -0
- package/build/esm/components/CompositeBar/CompositeBar.js.map +1 -0
- package/build/esm/components/CompositeBar/CompositeBar.scss.js +7 -0
- package/build/esm/components/CompositeBar/CompositeBar.scss.js.map +1 -0
- package/build/esm/components/CompositeBar/HighlightedItem/HighlightedItem.d.ts +1 -1
- package/build/esm/components/CompositeBar/HighlightedItem/HighlightedItem.js +51 -0
- package/build/esm/components/CompositeBar/HighlightedItem/HighlightedItem.js.map +1 -0
- package/build/esm/components/CompositeBar/HighlightedItem/HighlightedItem.scss.js +7 -0
- package/build/esm/components/CompositeBar/HighlightedItem/HighlightedItem.scss.js.map +1 -0
- package/build/esm/components/CompositeBar/Item/Item.d.ts +15 -2
- package/build/esm/components/CompositeBar/Item/Item.js +174 -0
- package/build/esm/components/CompositeBar/Item/Item.js.map +1 -0
- package/build/esm/components/CompositeBar/Item/Item.scss.js +7 -0
- package/build/esm/components/CompositeBar/Item/Item.scss.js.map +1 -0
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltip.js +30 -0
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltip.js.map +1 -0
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltip.scss.js +7 -0
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltip.scss.js.map +1 -0
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js +26 -0
- package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.js.map +1 -0
- package/build/esm/components/CompositeBar/constants.js +7 -0
- package/build/esm/components/CompositeBar/constants.js.map +1 -0
- package/build/esm/components/CompositeBar/utils.js +98 -0
- package/build/esm/components/CompositeBar/utils.js.map +1 -0
- package/build/esm/{Content-f94ba85d.js → components/Content/Content.js} +2 -2
- package/build/esm/components/Content/Content.js.map +1 -0
- package/build/esm/components/Drawer/Drawer.d.ts +0 -5
- package/build/esm/components/Drawer/Drawer.js +80 -0
- package/build/esm/components/Drawer/Drawer.js.map +1 -0
- package/build/esm/components/Drawer/Drawer.scss.js +7 -0
- package/build/esm/components/Drawer/Drawer.scss.js.map +1 -0
- package/build/esm/components/Drawer/__stories__/DisablePortal.d.ts +3 -0
- package/build/esm/components/Drawer/__stories__/Drawer.stories.d.ts +7 -0
- package/build/esm/components/Drawer/__stories__/DrawerShowcase.d.ts +3 -0
- package/build/esm/components/Drawer/__stories__/HideVeil.d.ts +3 -0
- package/build/esm/components/Drawer/__stories__/ResizableItem.d.ts +3 -0
- package/build/esm/components/Drawer/__stories__/moc.d.ts +2 -0
- package/build/esm/components/Drawer/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/Drawer/utils.d.ts +2 -2
- package/build/esm/components/Drawer/utils.js +84 -0
- package/build/esm/components/Drawer/utils.js.map +1 -0
- package/build/esm/components/Footer/MenuItem/MenuItem.js +14 -0
- package/build/esm/components/Footer/MenuItem/MenuItem.js.map +1 -0
- package/build/esm/components/Footer/MenuItem/MenuItem.scss.js +7 -0
- package/build/esm/components/Footer/MenuItem/MenuItem.scss.js.map +1 -0
- package/build/esm/components/Footer/desktop/Footer.js +38 -0
- package/build/esm/components/Footer/desktop/Footer.js.map +1 -0
- package/build/esm/components/Footer/desktop/Footer.scss.js +7 -0
- package/build/esm/components/Footer/desktop/Footer.scss.js.map +1 -0
- package/build/esm/components/Footer/desktop/__stories__/Footer.stories.d.ts +8 -0
- package/build/esm/components/Footer/desktop/__stories__/FooterShowcase.d.ts +4 -0
- package/build/esm/components/Footer/desktop/__stories__/moc.d.ts +3 -0
- package/build/esm/components/Footer/desktop/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/Footer/desktop/constants/moreItemsPopupProps.js +6 -0
- package/build/esm/components/Footer/desktop/constants/moreItemsPopupProps.js.map +1 -0
- package/build/esm/components/Footer/mobile/Footer.js +45 -0
- package/build/esm/components/Footer/mobile/Footer.js.map +1 -0
- package/build/esm/components/Footer/mobile/Footer.scss.js +7 -0
- package/build/esm/components/Footer/mobile/Footer.scss.js.map +1 -0
- package/build/esm/components/Footer/mobile/__stories__/MobileFooter.stories.d.ts +8 -0
- package/build/esm/components/Footer/mobile/__stories__/MobileFooterShowcase.d.ts +4 -0
- package/build/esm/components/Footer/mobile/__stories__/moc.d.ts +3 -0
- package/build/esm/components/Footer/mobile/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/FooterItem/FooterItem.js +15 -0
- package/build/esm/components/FooterItem/FooterItem.js.map +1 -0
- package/build/esm/components/FooterItem/FooterItem.scss.js +7 -0
- package/build/esm/components/FooterItem/FooterItem.scss.js.map +1 -0
- package/build/esm/components/FooterItem/__stories__/FooterItem.stories.d.ts +6 -0
- package/build/esm/components/FooterItem/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/HotkeysPanel/HotkeysPanel.d.ts +1 -3
- package/build/esm/components/HotkeysPanel/HotkeysPanel.js +33 -0
- package/build/esm/components/HotkeysPanel/HotkeysPanel.js.map +1 -0
- package/build/esm/components/HotkeysPanel/HotkeysPanel.scss.js +7 -0
- package/build/esm/components/HotkeysPanel/HotkeysPanel.scss.js.map +1 -0
- package/build/esm/components/HotkeysPanel/__stories__/HotkeysPanel.stories.d.ts +5 -0
- package/build/esm/components/HotkeysPanel/__stories__/HotkeysPanelShowcase.d.ts +6 -0
- package/build/esm/components/HotkeysPanel/__stories__/moc.d.ts +2 -0
- package/build/esm/components/HotkeysPanel/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/HotkeysPanel/index.js +2 -0
- package/build/esm/components/HotkeysPanel/index.js.map +1 -0
- package/build/esm/components/HotkeysPanel/utils/filterHotkeys.js +17 -0
- package/build/esm/components/HotkeysPanel/utils/filterHotkeys.js.map +1 -0
- package/build/esm/components/HotkeysPanel/utils/flattenHotkeyGroups.js +14 -0
- package/build/esm/components/HotkeysPanel/utils/flattenHotkeyGroups.js.map +1 -0
- package/build/esm/components/Logo/Logo.d.ts +1 -1
- package/build/esm/components/Logo/Logo.js +31 -0
- package/build/esm/components/Logo/Logo.js.map +1 -0
- package/build/esm/components/Logo/Logo.scss.js +7 -0
- package/build/esm/components/Logo/Logo.scss.js.map +1 -0
- package/build/esm/components/Logo/__stories__/Logo.stories.d.ts +6 -0
- package/build/esm/components/Logo/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/MobileHeader/Burger/Burger.js +12 -0
- package/build/esm/components/MobileHeader/Burger/Burger.js.map +1 -0
- package/build/esm/components/MobileHeader/Burger/Burger.scss.js +7 -0
- package/build/esm/components/MobileHeader/Burger/Burger.scss.js.map +1 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.js +37 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.js.map +1 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.scss.js +7 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.scss.js.map +1 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerMenu.js +18 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerMenu.js.map +1 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerMenu.scss.js +7 -0
- package/build/esm/components/MobileHeader/BurgerMenu/BurgerMenu.scss.js.map +1 -0
- package/build/esm/components/MobileHeader/BurgerMenu/__stories__/BurgerMenu.stories.d.ts +6 -0
- package/build/esm/components/MobileHeader/BurgerMenu/__stories__/moc.d.ts +2 -0
- package/build/esm/components/MobileHeader/BurgerMenu/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/MobileHeader/FooterItem/FooterItem.js +25 -0
- package/build/esm/components/MobileHeader/FooterItem/FooterItem.js.map +1 -0
- package/build/esm/components/MobileHeader/FooterItem/FooterItem.scss.js +7 -0
- package/build/esm/components/MobileHeader/FooterItem/FooterItem.scss.js.map +1 -0
- package/build/esm/components/MobileHeader/MobileHeader.d.ts +2 -1
- package/build/esm/components/MobileHeader/MobileHeader.js +146 -0
- package/build/esm/components/MobileHeader/MobileHeader.js.map +1 -0
- package/build/esm/components/MobileHeader/MobileHeader.scss.js +7 -0
- package/build/esm/components/MobileHeader/MobileHeader.scss.js.map +1 -0
- package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.js +26 -0
- package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.js.map +1 -0
- package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.scss.js +7 -0
- package/build/esm/components/MobileHeader/OverlapPanel/OverlapPanel.scss.js.map +1 -0
- package/build/esm/components/MobileHeader/OverlapPanel/__stories__/OverlapPanel.stories.d.ts +6 -0
- package/build/esm/components/MobileHeader/OverlapPanel/__stories__/moc.d.ts +2 -0
- package/build/esm/components/MobileHeader/OverlapPanel/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/MobileHeader/__stories__/MobileHeader.stories.d.ts +4 -0
- package/build/esm/components/MobileHeader/__stories__/MobileHeaderShowcase.d.ts +3 -0
- package/build/esm/components/MobileHeader/__stories__/moc.d.ts +1 -0
- package/build/esm/components/MobileHeader/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/MobileHeader/constants.js +14 -0
- package/build/esm/components/MobileHeader/constants.js.map +1 -0
- package/build/esm/components/MobileHeader/i18n/en.json.js +11 -0
- package/build/esm/components/MobileHeader/i18n/en.json.js.map +1 -0
- package/build/esm/components/MobileHeader/i18n/index.d.ts +5 -1
- package/build/esm/components/MobileHeader/i18n/index.js +10 -0
- package/build/esm/components/MobileHeader/i18n/index.js.map +1 -0
- package/build/esm/components/MobileHeader/i18n/ru.json.js +11 -0
- package/build/esm/components/MobileHeader/i18n/ru.json.js.map +1 -0
- package/build/esm/components/MobileHeader/index.js +5 -0
- package/build/esm/components/MobileHeader/index.js.map +1 -0
- package/build/esm/components/MobileHeader/types.d.ts +0 -1
- package/build/esm/components/MobileHeader/utils.js +20 -0
- package/build/esm/components/MobileHeader/utils.js.map +1 -0
- package/build/esm/components/MobileLogo/MobileLogo.js +30 -0
- package/build/esm/components/MobileLogo/MobileLogo.js.map +1 -0
- package/build/esm/components/MobileLogo/MobileLogo.scss.js +7 -0
- package/build/esm/components/MobileLogo/MobileLogo.scss.js.map +1 -0
- package/build/esm/components/MobileLogo/__stories__/MobileLogo.stories.d.ts +6 -0
- package/build/esm/components/MobileLogo/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/Settings/Selection/context.js +22 -0
- package/build/esm/components/Settings/Selection/context.js.map +1 -0
- package/build/esm/components/Settings/Selection/utils.js +20 -0
- package/build/esm/components/Settings/Selection/utils.js.map +1 -0
- package/build/esm/components/Settings/Settings.d.ts +1 -3
- package/build/esm/components/Settings/Settings.js +189 -0
- package/build/esm/components/Settings/Settings.js.map +1 -0
- package/build/esm/components/Settings/Settings.scss.js +7 -0
- package/build/esm/components/Settings/Settings.scss.js.map +1 -0
- package/build/esm/components/Settings/SettingsMenu/SettingsMenu.js +79 -0
- package/build/esm/components/Settings/SettingsMenu/SettingsMenu.js.map +1 -0
- package/build/esm/components/Settings/SettingsMenu/SettingsMenu.scss.js +7 -0
- package/build/esm/components/Settings/SettingsMenu/SettingsMenu.scss.js.map +1 -0
- package/build/esm/components/Settings/SettingsMenuMobile/SettingsMenuMobile.js +35 -0
- package/build/esm/components/Settings/SettingsMenuMobile/SettingsMenuMobile.js.map +1 -0
- package/build/esm/components/Settings/SettingsMenuMobile/SettingsMenuMobile.scss.js +7 -0
- package/build/esm/components/Settings/SettingsMenuMobile/SettingsMenuMobile.scss.js.map +1 -0
- package/build/esm/components/Settings/SettingsSearch/SettingsSearch.js +23 -0
- package/build/esm/components/Settings/SettingsSearch/SettingsSearch.js.map +1 -0
- package/build/esm/components/Settings/__stories__/Settings.stories.d.ts +5 -0
- package/build/esm/components/Settings/__stories__/SettingsDemo.d.ts +14 -0
- package/build/esm/components/Settings/__stories__/SettingsMobileDemo.d.ts +8 -0
- package/build/esm/components/Settings/__tests__/helpersPlaywright.d.ts +1 -1
- package/build/esm/components/Settings/collect-settings.d.ts +0 -2
- package/build/esm/components/Settings/collect-settings.js +144 -0
- package/build/esm/components/Settings/collect-settings.js.map +1 -0
- package/build/esm/components/Settings/helpers.js +33 -0
- package/build/esm/components/Settings/helpers.js.map +1 -0
- package/build/esm/components/Settings/i18n/en.json.js +11 -0
- package/build/esm/components/Settings/i18n/en.json.js.map +1 -0
- package/build/esm/components/Settings/i18n/index.d.ts +5 -1
- package/build/esm/components/Settings/i18n/index.js +10 -0
- package/build/esm/components/Settings/i18n/index.js.map +1 -0
- package/build/esm/components/Settings/i18n/ru.json.js +11 -0
- package/build/esm/components/Settings/i18n/ru.json.js.map +1 -0
- package/build/esm/components/Settings/index.js +3 -0
- package/build/esm/components/Settings/index.js.map +1 -0
- package/build/esm/components/Title/Title.js +18 -0
- package/build/esm/components/Title/Title.js.map +1 -0
- package/build/esm/components/Title/Title.scss.js +7 -0
- package/build/esm/components/Title/Title.scss.js.map +1 -0
- package/build/esm/components/Title/i18n/en.json.js +7 -0
- package/build/esm/components/Title/i18n/en.json.js.map +1 -0
- package/build/esm/components/Title/i18n/index.d.ts +5 -1
- package/build/esm/components/Title/i18n/index.js +10 -0
- package/build/esm/components/Title/i18n/index.js.map +1 -0
- package/build/esm/components/Title/i18n/ru.json.js +7 -0
- package/build/esm/components/Title/i18n/ru.json.js.map +1 -0
- package/build/esm/components/Title/index.js +2 -0
- package/build/esm/components/Title/index.js.map +1 -0
- package/build/esm/components/TopAlert/TopAlert.d.ts +10 -0
- package/build/esm/components/TopAlert/TopAlert.js +31 -0
- package/build/esm/components/TopAlert/TopAlert.js.map +1 -0
- package/build/esm/components/TopAlert/TopAlert.scss.js +7 -0
- package/build/esm/components/TopAlert/TopAlert.scss.js.map +1 -0
- package/build/esm/components/TopAlert/index.d.ts +1 -0
- package/build/esm/components/TopAlert/index.js +2 -0
- package/build/esm/components/TopAlert/index.js.map +1 -0
- package/build/esm/components/TopAlert/useTopAlertHeight.d.ts +10 -0
- package/build/esm/components/TopAlert/useTopAlertHeight.js +35 -0
- package/build/esm/components/TopAlert/useTopAlertHeight.js.map +1 -0
- package/build/esm/components/constants.js +8 -0
- package/build/esm/components/constants.js.map +1 -0
- package/build/esm/components/types.d.ts +9 -5
- package/build/esm/{cn-ffe5e9f5.js → components/utils/cn.js} +2 -2
- package/build/esm/components/utils/cn.js.map +1 -0
- package/build/esm/hooks/useForwardRef.d.ts +1 -1
- package/build/esm/hooks/useForwardRef.js +19 -0
- package/build/esm/hooks/useForwardRef.js.map +1 -0
- package/build/esm/hooks/useOverflowingHorizontalListItems/useOverflowingHorizontalListItems.js +64 -0
- package/build/esm/hooks/useOverflowingHorizontalListItems/useOverflowingHorizontalListItems.js.map +1 -0
- package/build/esm/index.js +20 -169
- package/build/esm/index.js.map +1 -1
- package/build/esm/node_modules/@babel/runtime/helpers/esm/extends.js +12 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +8 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js.map +1 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +12 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +8 -0
- package/build/esm/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -0
- package/build/esm/node_modules/dom-helpers/esm/addClass.js +15 -0
- package/build/esm/node_modules/dom-helpers/esm/addClass.js.map +1 -0
- package/build/esm/node_modules/dom-helpers/esm/hasClass.js +13 -0
- package/build/esm/node_modules/dom-helpers/esm/hasClass.js.map +1 -0
- package/build/esm/node_modules/dom-helpers/esm/removeClass.js +23 -0
- package/build/esm/node_modules/dom-helpers/esm/removeClass.js.map +1 -0
- package/build/esm/node_modules/lodash/_Symbol.js +19 -0
- package/build/esm/node_modules/lodash/_Symbol.js.map +1 -0
- package/build/esm/node_modules/lodash/_baseGetTag.js +43 -0
- package/build/esm/node_modules/lodash/_baseGetTag.js.map +1 -0
- package/build/esm/node_modules/lodash/_baseTrim.js +32 -0
- package/build/esm/node_modules/lodash/_baseTrim.js.map +1 -0
- package/build/esm/node_modules/lodash/_freeGlobal.js +18 -0
- package/build/esm/node_modules/lodash/_freeGlobal.js.map +1 -0
- package/build/esm/node_modules/lodash/_getRawTag.js +59 -0
- package/build/esm/node_modules/lodash/_getRawTag.js.map +1 -0
- package/build/esm/node_modules/lodash/_objectToString.js +34 -0
- package/build/esm/node_modules/lodash/_objectToString.js.map +1 -0
- package/build/esm/node_modules/lodash/_root.js +22 -0
- package/build/esm/node_modules/lodash/_root.js.map +1 -0
- package/build/esm/node_modules/lodash/_trimmedEndIndex.js +31 -0
- package/build/esm/node_modules/lodash/_trimmedEndIndex.js.map +1 -0
- package/build/esm/node_modules/lodash/debounce.js +206 -0
- package/build/esm/node_modules/lodash/debounce.js.map +1 -0
- package/build/esm/node_modules/lodash/identity.js +33 -0
- package/build/esm/node_modules/lodash/identity.js.map +1 -0
- package/build/esm/node_modules/lodash/isObject.js +43 -0
- package/build/esm/node_modules/lodash/isObject.js.map +1 -0
- package/build/esm/node_modules/lodash/isObjectLike.js +41 -0
- package/build/esm/node_modules/lodash/isObjectLike.js.map +1 -0
- package/build/esm/node_modules/lodash/isSymbol.js +43 -0
- package/build/esm/node_modules/lodash/isSymbol.js.map +1 -0
- package/build/esm/node_modules/lodash/now.js +36 -0
- package/build/esm/node_modules/lodash/now.js.map +1 -0
- package/build/esm/node_modules/lodash/toNumber.js +79 -0
- package/build/esm/node_modules/lodash/toNumber.js.map +1 -0
- package/build/esm/node_modules/object-assign/index.js +100 -0
- package/build/esm/node_modules/object-assign/index.js.map +1 -0
- package/build/esm/node_modules/prop-types/checkPropTypes.js +116 -0
- package/build/esm/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/build/esm/node_modules/prop-types/factoryWithThrowingShims.js +75 -0
- package/build/esm/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/build/esm/node_modules/prop-types/factoryWithTypeCheckers.js +626 -0
- package/build/esm/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/build/esm/node_modules/prop-types/index.js +34 -0
- package/build/esm/node_modules/prop-types/index.js.map +1 -0
- package/build/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +22 -0
- package/build/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/build/esm/node_modules/prop-types/lib/has.js +12 -0
- package/build/esm/node_modules/prop-types/lib/has.js.map +1 -0
- package/build/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +191 -0
- package/build/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/build/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +27 -0
- package/build/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/build/esm/node_modules/prop-types/node_modules/react-is/index.js +20 -0
- package/build/esm/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
- package/build/esm/node_modules/react-transition-group/esm/CSSTransition.js +414 -0
- package/build/esm/node_modules/react-transition-group/esm/CSSTransition.js.map +1 -0
- package/build/esm/node_modules/react-transition-group/esm/Transition.js +628 -0
- package/build/esm/node_modules/react-transition-group/esm/Transition.js.map +1 -0
- package/build/esm/node_modules/react-transition-group/esm/TransitionGroupContext.js +6 -0
- package/build/esm/node_modules/react-transition-group/esm/TransitionGroupContext.js.map +1 -0
- package/build/esm/node_modules/react-transition-group/esm/config.js +6 -0
- package/build/esm/node_modules/react-transition-group/esm/config.js.map +1 -0
- package/build/esm/node_modules/react-transition-group/esm/utils/PropTypes.js +22 -0
- package/build/esm/node_modules/react-transition-group/esm/utils/PropTypes.js.map +1 -0
- package/build/esm/node_modules/react-transition-group/esm/utils/reflow.js +6 -0
- package/build/esm/node_modules/react-transition-group/esm/utils/reflow.js.map +1 -0
- package/build/esm/node_modules/react-virtualized-auto-sizer/dist/react-virtualized-auto-sizer.esm.js +383 -0
- package/build/esm/node_modules/react-virtualized-auto-sizer/dist/react-virtualized-auto-sizer.esm.js.map +1 -0
- package/build/esm/{style-inject.es-1f59c1d0.js → node_modules/style-inject/dist/style-inject.es.js} +3 -3
- package/build/esm/node_modules/style-inject/dist/style-inject.es.js.map +1 -0
- package/build/esm/{tslib.es6-3cd4e99f.js → node_modules/tslib/tslib.es6.js} +34 -32
- package/build/esm/node_modules/tslib/tslib.es6.js.map +1 -0
- package/package.json +48 -45
- package/build/cjs/ActionBar-3c6cdf57.js +0 -63
- package/build/cjs/ActionBar-3c6cdf57.js.map +0 -1
- package/build/cjs/AsideFallback.js +0 -31
- package/build/cjs/AsideFallback.js.map +0 -1
- package/build/cjs/AsideHeader.js +0 -38
- package/build/cjs/AsideHeader.js.map +0 -1
- package/build/cjs/AsideHeaderContext.js.map +0 -1
- package/build/cjs/Content-64d5738a.js +0 -20
- package/build/cjs/Content-64d5738a.js.map +0 -1
- package/build/cjs/Drawer.js +0 -3197
- package/build/cjs/Drawer.js.map +0 -1
- package/build/cjs/FooterItem-de603636.js +0 -336
- package/build/cjs/FooterItem-de603636.js.map +0 -1
- package/build/cjs/FooterItem.js +0 -31
- package/build/cjs/FooterItem.js.map +0 -1
- package/build/cjs/HotkeysPanel-1ed9fc32.js +0 -67
- package/build/cjs/HotkeysPanel-1ed9fc32.js.map +0 -1
- package/build/cjs/Item-ff6bc440.js +0 -303
- package/build/cjs/Item-ff6bc440.js.map +0 -1
- package/build/cjs/PageLayout.js +0 -40
- package/build/cjs/PageLayout.js.map +0 -1
- package/build/cjs/PageLayoutAside-30f2015c.js +0 -1008
- package/build/cjs/PageLayoutAside-30f2015c.js.map +0 -1
- package/build/cjs/PageLayoutAside.js +0 -25
- package/build/cjs/PageLayoutAside.js.map +0 -1
- package/build/cjs/Settings-8dc2a8ee.js +0 -579
- package/build/cjs/Settings-8dc2a8ee.js.map +0 -1
- package/build/cjs/Title-54580605.js +0 -42
- package/build/cjs/Title-54580605.js.map +0 -1
- package/build/cjs/TopPanel-c6b83157.js +0 -82
- package/build/cjs/TopPanel-c6b83157.js.map +0 -1
- package/build/cjs/cn-9933321a.js.map +0 -1
- package/build/cjs/components/AsideHeader/components/TopPanel.d.ts +0 -7
- package/build/cjs/components/AsideHeader/useAsideHeaderTopPanel.d.ts +0 -10
- package/build/cjs/constants-d81c3867.js.map +0 -1
- package/build/cjs/debounce-8772fd80.js +0 -545
- package/build/cjs/debounce-8772fd80.js.map +0 -1
- package/build/cjs/divider-collapsed-b743122e.js.map +0 -1
- package/build/cjs/index2.js +0 -14
- package/build/cjs/index3.js +0 -17
- package/build/cjs/index4.js +0 -18
- package/build/cjs/index4.js.map +0 -1
- package/build/cjs/index5.js +0 -22
- package/build/cjs/index5.js.map +0 -1
- package/build/cjs/index6.js +0 -23
- package/build/cjs/index6.js.map +0 -1
- package/build/cjs/style-inject.es-dcee06b6.js.map +0 -1
- package/build/cjs/tslib.es6-705c6589.js.map +0 -1
- package/build/cjs/utils-db3e03c2.js +0 -8
- package/build/cjs/utils-db3e03c2.js.map +0 -1
- package/build/esm/ActionBar-834b178a.js +0 -57
- package/build/esm/ActionBar-834b178a.js.map +0 -1
- package/build/esm/AsideFallback.js.map +0 -1
- package/build/esm/AsideHeader.js +0 -30
- package/build/esm/AsideHeader.js.map +0 -1
- package/build/esm/AsideHeaderContext.js.map +0 -1
- package/build/esm/Content-f94ba85d.js.map +0 -1
- package/build/esm/Drawer.js +0 -3169
- package/build/esm/Drawer.js.map +0 -1
- package/build/esm/FooterItem-3cc816a3.js +0 -326
- package/build/esm/FooterItem-3cc816a3.js.map +0 -1
- package/build/esm/FooterItem.js +0 -23
- package/build/esm/FooterItem.js.map +0 -1
- package/build/esm/HotkeysPanel-0576deee.js +0 -61
- package/build/esm/HotkeysPanel-0576deee.js.map +0 -1
- package/build/esm/Item-55899ec8.js +0 -289
- package/build/esm/Item-55899ec8.js.map +0 -1
- package/build/esm/PageLayout.js +0 -32
- package/build/esm/PageLayout.js.map +0 -1
- package/build/esm/PageLayoutAside-5d010e96.js +0 -983
- package/build/esm/PageLayoutAside-5d010e96.js.map +0 -1
- package/build/esm/PageLayoutAside.js +0 -17
- package/build/esm/PageLayoutAside.js.map +0 -1
- package/build/esm/Settings-e660a4c5.js +0 -553
- package/build/esm/Settings-e660a4c5.js.map +0 -1
- package/build/esm/Title-03b4255a.js +0 -36
- package/build/esm/Title-03b4255a.js.map +0 -1
- package/build/esm/TopPanel-cd270f27.js +0 -76
- package/build/esm/TopPanel-cd270f27.js.map +0 -1
- package/build/esm/cn-ffe5e9f5.js.map +0 -1
- package/build/esm/components/AsideHeader/components/TopPanel.d.ts +0 -7
- package/build/esm/components/AsideHeader/useAsideHeaderTopPanel.d.ts +0 -10
- package/build/esm/constants-b1604ff5.js +0 -8
- package/build/esm/constants-b1604ff5.js.map +0 -1
- package/build/esm/debounce-64cd2b4c.js +0 -543
- package/build/esm/debounce-64cd2b4c.js.map +0 -1
- package/build/esm/divider-collapsed-a0ef54c3.js.map +0 -1
- package/build/esm/index2.js +0 -6
- package/build/esm/index3.js +0 -9
- package/build/esm/index4.js +0 -10
- package/build/esm/index4.js.map +0 -1
- package/build/esm/index5.js +0 -12
- package/build/esm/index5.js.map +0 -1
- package/build/esm/index6.js +0 -12
- package/build/esm/index6.js.map +0 -1
- package/build/esm/style-inject.es-1f59c1d0.js.map +0 -1
- package/build/esm/tslib.es6-3cd4e99f.js.map +0 -1
- package/build/esm/utils-117463a5.js +0 -6
- package/build/esm/utils-117463a5.js.map +0 -1
- /package/build/esm/{index2.js.map → _virtual/index2.js.map} +0 -0
- /package/build/esm/{AsideHeaderContext.js → components/AsideHeader/AsideHeaderContext.js} +0 -0
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { Icon, Popup, List, ActionTooltip, Button } from '@gravity-ui/uikit';
|
|
3
|
+
import { useAsideHeaderContext } from '../../AsideHeader/AsideHeaderContext.js';
|
|
4
|
+
import { ASIDE_HEADER_ICON_SIZE } from '../../constants.js';
|
|
5
|
+
import { block } from '../../utils/cn.js';
|
|
6
|
+
import { HighlightedItem } from '../HighlightedItem/HighlightedItem.js';
|
|
7
|
+
import { ITEM_TYPE_REGULAR, COLLAPSE_ITEM_ID, POPUP_PLACEMENT, POPUP_ITEM_HEIGHT } from '../constants.js';
|
|
8
|
+
import { getSelectedItemIndex } from '../utils.js';
|
|
9
|
+
import './Item.scss.js';
|
|
10
|
+
|
|
11
|
+
const b = block('composite-bar-item');
|
|
12
|
+
function renderItemTitle(item) {
|
|
13
|
+
let titleNode = React__default.createElement("div", { className: b('title-text') }, item.title);
|
|
14
|
+
if (item.rightAdornment) {
|
|
15
|
+
titleNode = (React__default.createElement(React__default.Fragment, null,
|
|
16
|
+
titleNode,
|
|
17
|
+
React__default.createElement("div", { className: b('title-adornment') }, item.rightAdornment)));
|
|
18
|
+
}
|
|
19
|
+
return titleNode;
|
|
20
|
+
}
|
|
21
|
+
const defaultPopupPlacement = ['right-end'];
|
|
22
|
+
const defaultPopupOffset = { mainAxis: -20, crossAxis: 8 };
|
|
23
|
+
const Item = (props) => {
|
|
24
|
+
const { item, className, collapseItems, onMouseLeave, onMouseEnter, enableTooltip = true, popupVisible = false, popupAnchor, popupAnchorElement, popupPlacement = defaultPopupPlacement, popupOffset = defaultPopupOffset, popupKeepMounted, renderPopupContent, onClosePopup, onOpenChangePopup, onItemClick, onItemClickCapture, onCollapseItemClick, bringForward, } = props;
|
|
25
|
+
const { compact } = useAsideHeaderContext();
|
|
26
|
+
const [open, toggleOpen] = React__default.useState(false);
|
|
27
|
+
const ref = React__default.useRef(null);
|
|
28
|
+
const anchorRef = popupAnchorElement ? { current: popupAnchorElement } : popupAnchor || ref;
|
|
29
|
+
const highlightedRef = React__default.useRef(null);
|
|
30
|
+
const type = item.type || ITEM_TYPE_REGULAR;
|
|
31
|
+
const current = item.current || false;
|
|
32
|
+
const tooltipText = item.tooltipText || item.title;
|
|
33
|
+
const icon = item.icon;
|
|
34
|
+
const iconSize = item.iconSize || ASIDE_HEADER_ICON_SIZE;
|
|
35
|
+
const iconQa = item.iconQa;
|
|
36
|
+
const collapsedItem = item.id === COLLAPSE_ITEM_ID;
|
|
37
|
+
const handleClosePopup = React__default.useCallback((event) => {
|
|
38
|
+
var _a;
|
|
39
|
+
if (event instanceof MouseEvent &&
|
|
40
|
+
event.target &&
|
|
41
|
+
((_a = ref.current) === null || _a === undefined ? undefined : _a.contains(event.target))) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
onClosePopup === null || onClosePopup === undefined ? undefined : onClosePopup();
|
|
45
|
+
}, [onClosePopup]);
|
|
46
|
+
if (item.type === 'divider') {
|
|
47
|
+
return React__default.createElement("div", { className: b('menu-divider') });
|
|
48
|
+
}
|
|
49
|
+
const makeIconNode = (iconEl) => {
|
|
50
|
+
return compact ? (React__default.createElement(ActionTooltip, { title: "", description: tooltipText, disabled: !enableTooltip || (collapsedItem && open) || popupVisible, placement: "right", className: b('icon-tooltip', { 'item-type': type }) },
|
|
51
|
+
React__default.createElement("div", { onMouseEnter: () => onMouseEnter === null || onMouseEnter === undefined ? undefined : onMouseEnter(), onMouseLeave: () => onMouseLeave === null || onMouseLeave === undefined ? undefined : onMouseLeave(), className: b('btn-icon') }, iconEl))) : (iconEl);
|
|
52
|
+
};
|
|
53
|
+
const makeNode = ({ icon: iconEl, title: titleEl }) => {
|
|
54
|
+
const [Tag, tagProps] = item.link
|
|
55
|
+
? ['a', { href: item.link }]
|
|
56
|
+
: ['button', {}];
|
|
57
|
+
const handleMouseEnter = () => {
|
|
58
|
+
if (!compact) {
|
|
59
|
+
onMouseEnter === null || onMouseEnter === undefined ? undefined : onMouseEnter();
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
const handleMouseLeave = () => {
|
|
63
|
+
if (!compact) {
|
|
64
|
+
onMouseLeave === null || onMouseLeave === undefined ? undefined : onMouseLeave();
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
const handleClick = (event) => {
|
|
68
|
+
const target = event.currentTarget;
|
|
69
|
+
if (collapsedItem) {
|
|
70
|
+
/**
|
|
71
|
+
* If we call onItemClick for collapsedItem then:
|
|
72
|
+
* - User get unexpected item in onItemClick callback
|
|
73
|
+
* - onClosePanel calls twice for each popuped item, as result it will prevent opening of panelItems
|
|
74
|
+
*/
|
|
75
|
+
toggleOpen(!open);
|
|
76
|
+
}
|
|
77
|
+
else if (target instanceof HTMLDivElement) {
|
|
78
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, false, event);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const renderActionButton = () => (React__default.createElement("div", { className: compact ? b('action-container-compact') : b('action-container') },
|
|
82
|
+
React__default.createElement(Button, Object.assign({ onClick: handleClick, className: b('action', { compact, collapse: !compact }, className), ref: ref, "data-qa": item.qa, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, size: "l", view: "raised", type: "button", pin: "circle-circle" }, item.extraButtonProps),
|
|
83
|
+
React__default.createElement("div", { className: b('action-btn-container') },
|
|
84
|
+
React__default.createElement("div", { className: b('action-icon') }, makeIconNode(iconEl)),
|
|
85
|
+
!compact && (React__default.createElement("div", { className: b('title'), title: typeof item.title === 'string' ? item.title : undefined }, titleEl))))));
|
|
86
|
+
const renderTagContainer = () => (React__default.createElement(Tag, Object.assign({}, tagProps, { className: b({ type, current, compact }, className), ref: ref, "data-qa": item.qa, onClick: (event) => {
|
|
87
|
+
if (collapsedItem) {
|
|
88
|
+
/**
|
|
89
|
+
* If we call onItemClick for collapsedItem then:
|
|
90
|
+
* - User get unexpected item in onItemClick callback
|
|
91
|
+
* - onClosePanel calls twice for each popuped item, as result it will prevent opening of panelItems
|
|
92
|
+
*/
|
|
93
|
+
toggleOpen(!open);
|
|
94
|
+
onCollapseItemClick === null || onCollapseItemClick === undefined ? undefined : onCollapseItemClick();
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, false, event);
|
|
98
|
+
}
|
|
99
|
+
}, onClickCapture: onItemClickCapture, onMouseEnter: () => {
|
|
100
|
+
if (!compact) {
|
|
101
|
+
onMouseEnter === null || onMouseEnter === undefined ? undefined : onMouseEnter();
|
|
102
|
+
}
|
|
103
|
+
}, onMouseLeave: () => {
|
|
104
|
+
if (!compact) {
|
|
105
|
+
onMouseLeave === null || onMouseLeave === undefined ? undefined : onMouseLeave();
|
|
106
|
+
}
|
|
107
|
+
} }),
|
|
108
|
+
React__default.createElement("div", { className: b('icon-place'), ref: highlightedRef }, makeIconNode(iconEl)),
|
|
109
|
+
React__default.createElement("div", { className: b('title'), title: typeof item.title === 'string' ? item.title : undefined }, titleEl)));
|
|
110
|
+
const createdNode = (React__default.createElement(React__default.Fragment, null,
|
|
111
|
+
type === 'action' ? renderActionButton() : renderTagContainer(),
|
|
112
|
+
renderPopupContent && (anchorRef === null || anchorRef === undefined ? undefined : anchorRef.current) && (React__default.createElement(Popup, { open: popupVisible, keepMounted: popupKeepMounted, placement: popupPlacement, offset: popupOffset, anchorRef: anchorRef, onClose: handleClosePopup, onOpenChange: onOpenChangePopup }, renderPopupContent()))));
|
|
113
|
+
if (item.link) {
|
|
114
|
+
return (React__default.createElement("a", { href: item.link, className: b('link') }, createdNode));
|
|
115
|
+
}
|
|
116
|
+
return createdNode;
|
|
117
|
+
};
|
|
118
|
+
const iconNode = icon ? (React__default.createElement(Icon, { qa: iconQa, data: icon, size: iconSize, className: b('icon') })) : null;
|
|
119
|
+
const titleNode = renderItemTitle(item);
|
|
120
|
+
const params = { icon: iconNode, title: titleNode };
|
|
121
|
+
let highlightedNode = null;
|
|
122
|
+
let node;
|
|
123
|
+
const opts = { compact: Boolean(compact), collapsed: false, item, ref };
|
|
124
|
+
if (typeof item.itemWrapper === 'function') {
|
|
125
|
+
node = item.itemWrapper(params, makeNode, opts);
|
|
126
|
+
highlightedNode =
|
|
127
|
+
bringForward &&
|
|
128
|
+
item.itemWrapper(params, ({ icon: iconEl }) => makeIconNode(iconEl), opts);
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
node = makeNode(params);
|
|
132
|
+
highlightedNode = bringForward && makeIconNode(iconNode);
|
|
133
|
+
}
|
|
134
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
135
|
+
bringForward && (React__default.createElement(HighlightedItem, { iconNode: highlightedNode, iconRef: highlightedRef, onClick: (event) => onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, false, event), onClickCapture: onItemClickCapture })),
|
|
136
|
+
node,
|
|
137
|
+
open && collapsedItem && (collapseItems === null || collapseItems === undefined ? undefined : collapseItems.length) && Boolean(anchorRef === null || anchorRef === undefined ? undefined : anchorRef.current) && (React__default.createElement(CollapsedPopup, Object.assign({}, props, { anchorRef: ref, onClose: () => toggleOpen(false) })))));
|
|
138
|
+
};
|
|
139
|
+
Item.displayName = 'Item';
|
|
140
|
+
function CollapsedPopup({ onItemClick, collapseItems, anchorRef, onClose, }) {
|
|
141
|
+
const { compact } = useAsideHeaderContext();
|
|
142
|
+
return (collapseItems === null || collapseItems === undefined ? undefined : collapseItems.length) ? (React__default.createElement(Popup, { placement: POPUP_PLACEMENT, open: true, anchorRef: anchorRef, onClose: onClose },
|
|
143
|
+
React__default.createElement("div", { className: b('collapse-items-popup-content') },
|
|
144
|
+
React__default.createElement(List, { itemClassName: b('root-collapse-item'), items: collapseItems, selectedItemIndex: getSelectedItemIndex(collapseItems), itemHeight: POPUP_ITEM_HEIGHT, itemsHeight: collapseItems.length * POPUP_ITEM_HEIGHT, virtualized: false, filterable: false, sortable: false, onItemClick: onClose, renderItem: (collapseItem) => {
|
|
145
|
+
const makeCollapseNode = ({ title: titleEl, icon: iconEl, }) => {
|
|
146
|
+
const [Tag, tagProps] = collapseItem.link
|
|
147
|
+
? ['a', { href: collapseItem.link }]
|
|
148
|
+
: ['button', {}];
|
|
149
|
+
return (React__default.createElement(Tag, Object.assign({}, tagProps, { className: b('collapse-item'), onClick: (event) => {
|
|
150
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(collapseItem, true, event);
|
|
151
|
+
} }),
|
|
152
|
+
iconEl,
|
|
153
|
+
titleEl));
|
|
154
|
+
};
|
|
155
|
+
const titleNode = renderItemTitle(collapseItem);
|
|
156
|
+
const iconNode = collapseItem.icon && (React__default.createElement(Icon, { data: collapseItem.icon, size: 14, className: b('collapse-item-icon') }));
|
|
157
|
+
const params = { title: titleNode, icon: iconNode };
|
|
158
|
+
const opts = {
|
|
159
|
+
compact: Boolean(compact),
|
|
160
|
+
collapsed: true,
|
|
161
|
+
item: collapseItem,
|
|
162
|
+
ref: anchorRef,
|
|
163
|
+
};
|
|
164
|
+
if (typeof collapseItem.itemWrapper === 'function') {
|
|
165
|
+
return collapseItem.itemWrapper(params, makeCollapseNode, opts);
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
return makeCollapseNode(params);
|
|
169
|
+
}
|
|
170
|
+
} })))) : null;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
export { Item, defaultPopupOffset, defaultPopupPlacement };
|
|
174
|
+
//# sourceMappingURL=Item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Item.js","sources":["../../../../../../src/components/CompositeBar/Item/Item.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n ActionTooltip,\n Button,\n Icon,\n List,\n Popup,\n PopupPlacement,\n PopupProps,\n} from '@gravity-ui/uikit';\n\nimport {useAsideHeaderContext} from '../../AsideHeader/AsideHeaderContext';\nimport {ASIDE_HEADER_ICON_SIZE} from '../../constants';\nimport {MakeItemParams, MenuItem} from '../../types';\nimport {block} from '../../utils/cn';\nimport {HighlightedItem} from '../HighlightedItem/HighlightedItem';\nimport {\n COLLAPSE_ITEM_ID,\n ITEM_TYPE_REGULAR,\n POPUP_ITEM_HEIGHT,\n POPUP_PLACEMENT,\n} from '../constants';\nimport {getSelectedItemIndex} from '../utils';\n\nimport './Item.scss';\n\nconst b = block('composite-bar-item');\n\ninterface ItemPopup {\n popupVisible?: PopupProps['open'];\n /**\n * floating element anchor ref object\n *\n * @deprecated Use `popupAnchorElement` instead\n * */\n popupAnchor?: PopupProps['anchorRef'];\n popupAnchorElement?: PopupProps['anchorElement'];\n popupPlacement?: PopupProps['placement'];\n popupOffset?: PopupProps['offset'];\n popupKeepMounted?: PopupProps['keepMounted'];\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 `onOpenChangePopup` instead\n */\n onClosePopup?: () => void;\n onOpenChangePopup?: PopupProps['onOpenChange'];\n}\n\nexport interface ItemProps extends ItemPopup {\n item: MenuItem;\n enableTooltip?: boolean;\n onItemClick?: (\n item: MenuItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLElement, MouseEvent>,\n ) => void;\n onItemClickCapture?: (event: React.SyntheticEvent) => void;\n onCollapseItemClick?: () => void;\n bringForward?: boolean;\n}\n\ninterface ItemInnerProps extends ItemProps {\n className?: string;\n collapseItems?: MenuItem[];\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n}\n\nfunction renderItemTitle(item: MenuItem) {\n let titleNode = <div className={b('title-text')}>{item.title}</div>;\n\n if (item.rightAdornment) {\n titleNode = (\n <React.Fragment>\n {titleNode}\n <div className={b('title-adornment')}>{item.rightAdornment}</div>\n </React.Fragment>\n );\n }\n\n return titleNode;\n}\n\nexport const defaultPopupPlacement: PopupPlacement = ['right-end'];\nexport const defaultPopupOffset: NonNullable<PopupProps['offset']> = {mainAxis: -20, crossAxis: 8};\n\nexport const Item: React.FC<ItemInnerProps> = (props) => {\n const {\n item,\n className,\n collapseItems,\n onMouseLeave,\n onMouseEnter,\n enableTooltip = true,\n popupVisible = false,\n popupAnchor,\n popupAnchorElement,\n popupPlacement = defaultPopupPlacement,\n popupOffset = defaultPopupOffset,\n popupKeepMounted,\n renderPopupContent,\n onClosePopup,\n onOpenChangePopup,\n onItemClick,\n onItemClickCapture,\n onCollapseItemClick,\n bringForward,\n } = props;\n\n const {compact} = useAsideHeaderContext();\n\n const [open, toggleOpen] = React.useState<boolean>(false);\n\n const ref = React.useRef<HTMLAnchorElement & HTMLButtonElement>(null);\n const anchorRef = popupAnchorElement ? {current: popupAnchorElement} : popupAnchor || ref;\n const highlightedRef = React.useRef<HTMLDivElement>(null);\n\n const type = item.type || ITEM_TYPE_REGULAR;\n const current = item.current || false;\n const tooltipText = item.tooltipText || item.title;\n const icon = item.icon;\n const iconSize = item.iconSize || ASIDE_HEADER_ICON_SIZE;\n const iconQa = item.iconQa;\n const collapsedItem = item.id === COLLAPSE_ITEM_ID;\n\n const handleClosePopup = React.useCallback(\n (event: MouseEvent | KeyboardEvent) => {\n if (\n event instanceof MouseEvent &&\n event.target &&\n ref.current?.contains(event.target as Node)\n ) {\n return;\n }\n onClosePopup?.();\n },\n [onClosePopup],\n );\n\n if (item.type === 'divider') {\n return <div className={b('menu-divider')} />;\n }\n\n const makeIconNode = (iconEl: React.ReactNode): React.ReactNode => {\n return compact ? (\n <ActionTooltip\n title=\"\"\n description={tooltipText}\n disabled={!enableTooltip || (collapsedItem && open) || popupVisible}\n placement=\"right\"\n className={b('icon-tooltip', {'item-type': type})}\n >\n <div\n onMouseEnter={() => onMouseEnter?.()}\n onMouseLeave={() => onMouseLeave?.()}\n className={b('btn-icon')}\n >\n {iconEl}\n </div>\n </ActionTooltip>\n ) : (\n iconEl\n );\n };\n\n const makeNode = ({icon: iconEl, title: titleEl}: MakeItemParams) => {\n const [Tag, tagProps] = item.link\n ? ['a' as const, {href: item.link}]\n : ['button' as const, {}];\n\n const handleMouseEnter = () => {\n if (!compact) {\n onMouseEnter?.();\n }\n };\n\n const handleMouseLeave = () => {\n if (!compact) {\n onMouseLeave?.();\n }\n };\n\n const handleClick = (\n event: React.MouseEvent<\n HTMLAnchorElement | HTMLButtonElement | HTMLDivElement,\n MouseEvent\n >,\n ) => {\n const target = event.currentTarget;\n if (collapsedItem) {\n /**\n * If we call onItemClick for collapsedItem then:\n * - User get unexpected item in onItemClick callback\n * - onClosePanel calls twice for each popuped item, as result it will prevent opening of panelItems\n */\n toggleOpen(!open);\n } else if (target instanceof HTMLDivElement) {\n onItemClick?.(item, false, event as React.MouseEvent<HTMLDivElement, MouseEvent>);\n }\n };\n\n const renderActionButton = () => (\n <div className={compact ? b('action-container-compact') : b('action-container')}>\n <Button\n onClick={handleClick}\n className={b('action', {compact, collapse: !compact}, className)}\n ref={ref}\n data-qa={item.qa}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n size=\"l\"\n view=\"raised\"\n type=\"button\"\n pin=\"circle-circle\"\n {...item.extraButtonProps}\n >\n <div className={b('action-btn-container')}>\n <div className={b('action-icon')}>{makeIconNode(iconEl)}</div>\n\n {!compact && (\n <div\n className={b('title')}\n title={typeof item.title === 'string' ? item.title : undefined}\n >\n {titleEl}\n </div>\n )}\n </div>\n </Button>\n </div>\n );\n\n const renderTagContainer = () => (\n <Tag\n {...tagProps}\n className={b({type, current, compact}, className)}\n ref={ref}\n data-qa={item.qa}\n onClick={(event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n if (collapsedItem) {\n /**\n * If we call onItemClick for collapsedItem then:\n * - User get unexpected item in onItemClick callback\n * - onClosePanel calls twice for each popuped item, as result it will prevent opening of panelItems\n */\n toggleOpen(!open);\n onCollapseItemClick?.();\n } else {\n onItemClick?.(item, false, event);\n }\n }}\n onClickCapture={onItemClickCapture}\n onMouseEnter={() => {\n if (!compact) {\n onMouseEnter?.();\n }\n }}\n onMouseLeave={() => {\n if (!compact) {\n onMouseLeave?.();\n }\n }}\n >\n <div className={b('icon-place')} ref={highlightedRef}>\n {makeIconNode(iconEl)}\n </div>\n\n <div\n className={b('title')}\n title={typeof item.title === 'string' ? item.title : undefined}\n >\n {titleEl}\n </div>\n </Tag>\n );\n\n const createdNode = (\n <React.Fragment>\n {type === 'action' ? renderActionButton() : renderTagContainer()}\n {renderPopupContent && anchorRef?.current && (\n <Popup\n open={popupVisible}\n keepMounted={popupKeepMounted}\n placement={popupPlacement}\n offset={popupOffset}\n anchorRef={anchorRef}\n onClose={handleClosePopup}\n onOpenChange={onOpenChangePopup}\n >\n {renderPopupContent()}\n </Popup>\n )}\n </React.Fragment>\n );\n\n if (item.link) {\n return (\n <a href={item.link} className={b('link')}>\n {createdNode}\n </a>\n );\n }\n\n return createdNode;\n };\n\n const iconNode = icon ? (\n <Icon qa={iconQa} data={icon} size={iconSize} className={b('icon')} />\n ) : null;\n\n const titleNode = renderItemTitle(item);\n const params = {icon: iconNode, title: titleNode};\n let highlightedNode = null;\n let node;\n\n const opts = {compact: Boolean(compact), collapsed: false, item, ref};\n\n if (typeof item.itemWrapper === 'function') {\n node = item.itemWrapper(params, makeNode, opts) as React.ReactElement;\n highlightedNode =\n bringForward &&\n (item.itemWrapper(\n params,\n ({icon: iconEl}) => makeIconNode(iconEl),\n opts,\n ) as React.ReactElement);\n } else {\n node = makeNode(params);\n highlightedNode = bringForward && makeIconNode(iconNode);\n }\n\n return (\n <React.Fragment>\n {bringForward && (\n <HighlightedItem\n iconNode={highlightedNode}\n iconRef={highlightedRef}\n onClick={(event: React.MouseEvent<HTMLElement, MouseEvent>) =>\n onItemClick?.(item, false, event)\n }\n onClickCapture={onItemClickCapture}\n />\n )}\n {node}\n {open && collapsedItem && collapseItems?.length && Boolean(anchorRef?.current) && (\n <CollapsedPopup {...props} anchorRef={ref} onClose={() => toggleOpen(false)} />\n )}\n </React.Fragment>\n );\n};\n\nItem.displayName = 'Item';\n\ninterface CollapsedPopupProps {\n anchorRef: React.RefObject<HTMLElement>;\n onClose: () => void;\n}\n\nfunction CollapsedPopup({\n onItemClick,\n collapseItems,\n anchorRef,\n onClose,\n}: ItemInnerProps & CollapsedPopupProps) {\n const {compact} = useAsideHeaderContext();\n return collapseItems?.length ? (\n <Popup placement={POPUP_PLACEMENT} open={true} anchorRef={anchorRef} onClose={onClose}>\n <div className={b('collapse-items-popup-content')}>\n <List\n itemClassName={b('root-collapse-item')}\n items={collapseItems}\n selectedItemIndex={getSelectedItemIndex(collapseItems)}\n itemHeight={POPUP_ITEM_HEIGHT}\n itemsHeight={collapseItems.length * POPUP_ITEM_HEIGHT}\n virtualized={false}\n filterable={false}\n sortable={false}\n onItemClick={onClose}\n renderItem={(collapseItem) => {\n const makeCollapseNode = ({\n title: titleEl,\n icon: iconEl,\n }: MakeItemParams) => {\n const [Tag, tagProps] = collapseItem.link\n ? ['a' as const, {href: collapseItem.link}]\n : ['button' as const, {}];\n\n return (\n <Tag\n {...tagProps}\n className={b('collapse-item')}\n onClick={(event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n onItemClick?.(collapseItem, true, event);\n }}\n >\n {iconEl}\n {titleEl}\n </Tag>\n );\n };\n\n const titleNode = renderItemTitle(collapseItem);\n const iconNode = collapseItem.icon && (\n <Icon\n data={collapseItem.icon}\n size={14}\n className={b('collapse-item-icon')}\n />\n );\n\n const params = {title: titleNode, icon: iconNode};\n const opts = {\n compact: Boolean(compact),\n collapsed: true,\n item: collapseItem,\n ref: anchorRef,\n };\n if (typeof collapseItem.itemWrapper === 'function') {\n return collapseItem.itemWrapper(params, makeCollapseNode, opts);\n } else {\n return makeCollapseNode(params);\n }\n }}\n />\n </div>\n </Popup>\n ) : null;\n}\n"],"names":["React"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import styleInject from '../../../node_modules/style-inject/dist/style-inject.es.js';
|
|
2
|
+
|
|
3
|
+
var css_248z = ".gn-composite-bar-item{--gn-composite-bar-item-action-size:36px;--_--horizontal-divider-line-color:var(--g-color-line-generic);--_--item-background-color-hover:var(--gn-ah-hovered-item-background-color);--_--item-general-icon-color:var(--g-color-text-primary);--_--item-icon-color:var(--g-color-text-complementary);--_--item-text-color:var(--g-color-text-primary);--_--item-collapsed-radius:7px;--_--item-selected-text-color:var(--g-color-text-primary);--_--item-selected-background-color:var(--gn-ah-selected-item-background-color);align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;font:inherit;height:100%;min-width:0;outline:inherit;padding:0;text-decoration:inherit;width:100%}.gn-composite-bar-item:focus-visible{outline:solid var(--g-color-line-misc);outline-offset:-2px}.gn-composite-bar-item__action{align-items:center;cursor:pointer;display:flex;height:100%;min-width:0;width:100%}.gn-composite-bar-item__action_collapse{display:flex;width:216px}.gn-composite-bar-item__action-btn-container{display:flex}.gn-composite-bar-item__icon{color:var(--gn-aside-header-item-icon-color,var(--_--item-icon-color))}.gn-composite-bar-item_current .gn-composite-bar-item__icon{color:var(--gn-aside-header-item-current-icon-color,var(--gn-aside-header-item-icon-color,var(--_--item-icon-color)))}.gn-composite-bar-highlighted-item .gn-composite-bar-item__icon,.gn-composite-bar_subheader .gn-composite-bar-item__icon,.gn-footer-item .gn-composite-bar-item__icon{color:var(--gn-aside-header-general-item-icon-color,var(--_--item-general-icon-color))}.gn-composite-bar-highlighted-item.gn-composite-bar-item_current .gn-composite-bar-item__icon,.gn-composite-bar_subheader .gn-composite-bar-item_current .gn-composite-bar-item__icon,.gn-footer-item.gn-composite-bar-item_current .gn-composite-bar-item__icon{color:var(--gn-aside-header-item-current-icon-color,var(--gn-aside-header-general-item-icon-color,var(--_--item-general-icon-color)))}.gn-composite-bar-item__icon-tooltip .g-action-tooltip__description{color:var(--g-color-text-light-primary);margin-block-start:0}.gn-composite-bar-item__icon-place{align-items:center;display:flex;flex-shrink:0;height:100%;justify-content:center;width:var(--gn-aside-header-min-width)}.gn-composite-bar-item__action-icon{align-items:center;color:var(--gn-aside-header-item-icon-color,var(--g-color-text-complementary));display:flex;flex-shrink:0;justify-content:center;width:var(--gn-composite-bar-item-action-size,36px)}.gn-composite-bar-item__title{align-items:center;display:flex;margin-right:16px;overflow:hidden}.gn-composite-bar-item__title-text{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--gn-aside-header-item-text-color,var(--_--item-text-color));display:-webkit-box;overflow:hidden;text-align:start}.gn-composite-bar-item_current .gn-composite-bar-item__title-text{color:var(--gn-aside-header-item-current-text-color,var(--_--item-selected-text-color))}.gn-composite-bar-item__title-adornment{margin:0 10px}.gn-composite-bar-item__collapse-item{--_--item-icon-color:var(--g-color-text-misc);align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;font:inherit;height:100%;outline:inherit;padding:0 16px;text-decoration:inherit;width:100%}.gn-composite-bar-item__collapse-item:focus-visible{outline:solid var(--g-color-line-misc);outline-offset:-2px}.gn-composite-bar-item__collapse-item-icon{color:var(--gn-aside-header-item-icon-color,var(--_--item-icon-color));margin-right:10px}.gn-composite-bar-item__collapse-item .gn-composite-bar-item__title-adornment{margin-right:0}.gn-composite-bar-item__menu-divider{border-top:1px solid var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));cursor:default;margin:0 8px;width:100%}.gn-composite-bar-item__collapse-items-popup-content{padding:4px 0}.gn-composite-bar-item__link{align-items:center;display:flex;height:100%;width:100%}.gn-composite-bar-item__link,.gn-composite-bar-item__link:active,.gn-composite-bar-item__link:focus,.gn-composite-bar-item__link:hover,.gn-composite-bar-item__link:visited{color:inherit;outline:none;text-decoration:none}.gn-composite-bar-item__btn-icon{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.gn-composite-bar-item__action-container{margin:0 10px 8px;width:100%}.gn-composite-bar-item__action-container-compact{height:var(--gn-composite-bar-item-action-size,36px);margin:0 10px 8px;width:var(--gn-composite-bar-item-action-size,36px)}.gn-composite-bar-item__icon-tooltip_item-type_action{margin-left:10px}.gn-composite-bar-item:not(.gn-composite-bar-item_compact).gn-composite-bar-item_current.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color));border-radius:var(--gn-aside-header-item-expanded-radius)}.gn-composite-bar-item:not(.gn-composite-bar-item_compact):hover.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-current-background-color-hover,var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color)));border-radius:var(--gn-aside-header-item-expanded-radius)}.gn-composite-bar-item:not(.gn-composite-bar-item_compact):not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover));border-radius:var(--gn-aside-header-item-expanded-radius)}.gn-composite-bar-item_compact.gn-composite-bar-item_type_action{width:var(--gn-composite-bar-item-action-size)}.gn-composite-bar-item_compact.gn-composite-bar-item_type_action .gn-composite-bar-item__title{margin:0}.gn-composite-bar-item_compact.gn-composite-bar-item_current.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact.gn-composite-bar-item_current.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color));border-radius:var(--gn-aside-header-item-collapsed-radius,var(--_--item-collapsed-radius));content:\"\";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}.gn-composite-bar-item_compact:hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact:hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-current-background-color-hover,var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color)));border-radius:var(--gn-aside-header-item-collapsed-radius,var(--_--item-collapsed-radius));content:\"\";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}.gn-composite-bar-item_compact:not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact:not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover));border-radius:var(--gn-aside-header-item-collapsed-radius,var(--_--item-collapsed-radius));content:\"\";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}";
|
|
4
|
+
styleInject(css_248z);
|
|
5
|
+
|
|
6
|
+
export { css_248z as default };
|
|
7
|
+
//# sourceMappingURL=Item.scss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Item.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { Popup } from '@gravity-ui/uikit';
|
|
3
|
+
import { block } from '../../utils/cn.js';
|
|
4
|
+
import { COLLAPSE_ITEM_ID } from '../constants.js';
|
|
5
|
+
import { MultipleTooltipContext } from './MultipleTooltipContext.js';
|
|
6
|
+
import './MultipleTooltip.scss.js';
|
|
7
|
+
|
|
8
|
+
const b = block('multiple-tooltip');
|
|
9
|
+
const POPUP_OFFSET = { mainAxis: -32, crossAxis: 4 };
|
|
10
|
+
const MultipleTooltip = ({ items, open, anchorRef, placement, }) => {
|
|
11
|
+
const { activeIndex, hideCollapseItemTooltip } = React__default.useContext(MultipleTooltipContext);
|
|
12
|
+
const activeItem = activeIndex === undefined ? null : items[activeIndex];
|
|
13
|
+
return (React__default.createElement(Popup, { open: open, anchorRef: anchorRef, placement: placement, offset: POPUP_OFFSET },
|
|
14
|
+
React__default.createElement("div", { className: b() }, items
|
|
15
|
+
.filter(({ type = 'regular', id }) => !hideCollapseItemTooltip ||
|
|
16
|
+
(id !== COLLAPSE_ITEM_ID && type !== 'action'))
|
|
17
|
+
.map((item, idx) => {
|
|
18
|
+
switch (item.type) {
|
|
19
|
+
case 'divider':
|
|
20
|
+
return (React__default.createElement("div", { className: b('item', { divider: true }), key: idx }, item.title));
|
|
21
|
+
default:
|
|
22
|
+
return (React__default.createElement("div", { className: b('item', {
|
|
23
|
+
active: item === activeItem,
|
|
24
|
+
}), key: idx }, item.title));
|
|
25
|
+
}
|
|
26
|
+
}))));
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export { MultipleTooltip };
|
|
30
|
+
//# sourceMappingURL=MultipleTooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultipleTooltip.js","sources":["../../../../../../src/components/CompositeBar/MultipleTooltip/MultipleTooltip.tsx"],"sourcesContent":["import React from 'react';\n\nimport {Popup, PopupProps} from '@gravity-ui/uikit';\n\nimport {MenuItem} from '../../types';\nimport {block} from '../../utils/cn';\nimport {COLLAPSE_ITEM_ID} from '../constants';\n\nimport {MultipleTooltipContext} from './MultipleTooltipContext';\n\nimport './MultipleTooltip.scss';\n\nconst b = block('multiple-tooltip');\n\nconst POPUP_OFFSET: PopupProps['offset'] = {mainAxis: -32, crossAxis: 4};\n\nexport type MultipleTooltipProps = Pick<PopupProps, 'open' | 'anchorRef' | 'placement'> & {\n items: MenuItem[];\n};\n\nexport const MultipleTooltip: React.FC<MultipleTooltipProps> = ({\n items,\n open,\n anchorRef,\n placement,\n}) => {\n const {activeIndex, hideCollapseItemTooltip} = React.useContext(MultipleTooltipContext);\n const activeItem = activeIndex === undefined ? null : items[activeIndex];\n\n return (\n <Popup open={open} anchorRef={anchorRef} placement={placement} offset={POPUP_OFFSET}>\n <div className={b()}>\n {items\n .filter(\n ({type = 'regular', id}) =>\n !hideCollapseItemTooltip ||\n (id !== COLLAPSE_ITEM_ID && type !== 'action'),\n )\n .map((item, idx) => {\n switch (item.type) {\n case 'divider':\n return (\n <div className={b('item', {divider: true})} key={idx}>\n {item.title}\n </div>\n );\n default:\n return (\n <div\n className={b('item', {\n active: item === activeItem,\n })}\n key={idx}\n >\n {item.title}\n </div>\n );\n }\n })}\n </div>\n </Popup>\n );\n};\n"],"names":["React"],"mappings":";;;;;;;AAYA,MAAM,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC;AAEnC,MAAM,YAAY,GAAyB,EAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAC;AAMjE,MAAM,eAAe,GAAmC,CAAC,EAC5D,KAAK,EACL,IAAI,EACJ,SAAS,EACT,SAAS,GACZ,KAAI;AACD,IAAA,MAAM,EAAC,WAAW,EAAE,uBAAuB,EAAC,GAAGA,cAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC;AACvF,IAAA,MAAM,UAAU,GAAG,WAAW,KAAK,SAAS,GAAG,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC;AAExE,IAAA,QACIA,cAAC,CAAA,aAAA,CAAA,KAAK,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAA;AAC/E,QAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAC,EAAE,IACd;AACI,aAAA,MAAM,CACH,CAAC,EAAC,IAAI,GAAG,SAAS,EAAE,EAAE,EAAC,KACnB,CAAC,uBAAuB;aACvB,EAAE,KAAK,gBAAgB,IAAI,IAAI,KAAK,QAAQ,CAAC;AAErD,aAAA,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,KAAI;AACf,YAAA,QAAQ,IAAI,CAAC,IAAI;AACb,gBAAA,KAAK,SAAS;oBACV,QACIA,cAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAA,EAC/C,IAAI,CAAC,KAAK,CACT;AAEd,gBAAA;AACI,oBAAA,QACIA,cACI,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;4BACjB,MAAM,EAAE,IAAI,KAAK,UAAU;yBAC9B,CAAC,EACF,GAAG,EAAE,GAAG,EAAA,EAEP,IAAI,CAAC,KAAK,CACT;;AAGtB,SAAC,CAAC,CACJ,CACF;AAEhB;;;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import styleInject from '../../../node_modules/style-inject/dist/style-inject.es.js';
|
|
2
|
+
|
|
3
|
+
var css_248z = ".g-root_theme_dark .gn-multiple-tooltip,.g-root_theme_dark-hc .gn-multiple-tooltip{--multiple-tooltip-item-bg-color:var(\n --g-color-base-float-medium,var(--g-color-private-white-100-solid)\n );--multiple-tooltip-item-active-bg-color:var(--g-color-base-float-heavy);--multiple-tooltip-backdrop-background:linear-gradient(90deg,var(--g-color-base-background) 50%,transparent);--multiple-tooltip-backdrop-filter:blur(16px)}.g-root_theme_dark-hc .gn-multiple-tooltip{--multiple-tooltip-item-bg-color:var(\n --g-color-base-float-medium,var(--g-color-private-white-150-solid)\n )}.g-root_theme_light .gn-multiple-tooltip,.g-root_theme_light-hc .gn-multiple-tooltip{--multiple-tooltip-item-bg-color:var(\n --g-color-base-float-medium,var(--g-color-private-black-550-solid)\n );--multiple-tooltip-item-active-bg-color:var(--g-color-base-float-heavy);--multiple-tooltip-backdrop-background:linear-gradient(90deg,var(--g-color-base-background) 50%,transparent);--multiple-tooltip-backdrop-filter:blur(12px)}.gn-multiple-tooltip.gn-multiple-tooltip{background-color:transparent;box-shadow:none}.gn-multiple-tooltip:before{background:var(--multiple-tooltip-backdrop-background);box-shadow:none;content:\"\";filter:var(--multiple-tooltip-backdrop-filter);height:100%;opacity:.7;position:absolute;width:100%;z-index:-1}.gn-multiple-tooltip__items-container{align-items:flex-start;display:flex;flex-direction:column;padding:32px 40px 32px 12px}.gn-multiple-tooltip__item{align-items:center;background-color:var(--multiple-tooltip-item-bg-color);border-radius:5px;box-sizing:border-box;color:var(--g-color-text-light-primary);display:flex;height:30px;margin-bottom:5px;padding:8px 12px;position:relative;transition:transform .1s ease-in-out}.gn-multiple-tooltip__item:first-child,.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider)+.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider){margin-top:5px}.gn-multiple-tooltip__item_divider+.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider){margin-top:4px}.gn-multiple-tooltip__item_active{background-color:var(--multiple-tooltip-item-active-bg-color);transform:translateX(-12px)}.gn-multiple-tooltip__item_divider{height:15px;margin:0;visibility:hidden}";
|
|
4
|
+
styleInject(css_248z);
|
|
5
|
+
|
|
6
|
+
export { css_248z as default };
|
|
7
|
+
//# sourceMappingURL=MultipleTooltip.scss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultipleTooltip.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
|
|
3
|
+
const multipleTooltipContextDefaults = {
|
|
4
|
+
active: false,
|
|
5
|
+
activeIndex: undefined,
|
|
6
|
+
hideCollapseItemTooltip: false,
|
|
7
|
+
lastClickedItemIndex: undefined,
|
|
8
|
+
setValue: () => { },
|
|
9
|
+
};
|
|
10
|
+
const MultipleTooltipContext = React__default.createContext(multipleTooltipContextDefaults);
|
|
11
|
+
class MultipleTooltipProvider extends React__default.PureComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.state = Object.assign({}, multipleTooltipContextDefaults);
|
|
15
|
+
this.setValue = (value) => {
|
|
16
|
+
this.setState(Object.assign({}, value));
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
render() {
|
|
20
|
+
const { children } = this.props;
|
|
21
|
+
return (React__default.createElement(MultipleTooltipContext.Provider, { value: Object.assign(Object.assign({}, this.state), { setValue: this.setValue }) }, children));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { MultipleTooltipContext, MultipleTooltipProvider };
|
|
26
|
+
//# sourceMappingURL=MultipleTooltipContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultipleTooltipContext.js","sources":["../../../../../../src/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.tsx"],"sourcesContent":["import React from 'react';\n\ninterface MultipleTooltipContextProps {\n active: boolean;\n activeIndex: number | undefined;\n hideCollapseItemTooltip: boolean;\n lastClickedItemIndex: number | undefined;\n setValue<K extends keyof Omit<MultipleTooltipContextProps, 'setValue'>>(\n value:\n | Pick<Omit<MultipleTooltipContextProps, 'setValue'>, K>\n | Omit<MultipleTooltipContextProps, 'setValue'>,\n ): void;\n}\n\nconst multipleTooltipContextDefaults = {\n active: false,\n activeIndex: undefined,\n hideCollapseItemTooltip: false,\n lastClickedItemIndex: undefined,\n setValue: () => {},\n};\n\nexport const MultipleTooltipContext = React.createContext<MultipleTooltipContextProps>(\n multipleTooltipContextDefaults,\n);\n\ntype MultipleTooltipProviderState = Omit<MultipleTooltipContextProps, 'setValue'>;\n\nexport class MultipleTooltipProvider extends React.PureComponent<\n {children: React.ReactNode},\n MultipleTooltipProviderState\n> {\n state = {\n ...multipleTooltipContextDefaults,\n };\n\n setValue: MultipleTooltipContextProps['setValue'] = (value) => {\n this.setState({...value});\n };\n\n render() {\n const {children} = this.props;\n\n return (\n <MultipleTooltipContext.Provider value={{...this.state, setValue: this.setValue}}>\n {children}\n </MultipleTooltipContext.Provider>\n );\n }\n}\n"],"names":["React"],"mappings":";;AAcA,MAAM,8BAA8B,GAAG;AACnC,IAAA,MAAM,EAAE,KAAK;AACb,IAAA,WAAW,EAAE,SAAS;AACtB,IAAA,uBAAuB,EAAE,KAAK;AAC9B,IAAA,oBAAoB,EAAE,SAAS;AAC/B,IAAA,QAAQ,EAAE,MAAK,GAAG;CACrB;AAEY,MAAA,sBAAsB,GAAGA,cAAK,CAAC,aAAa,CACrD,8BAA8B;AAKrB,MAAA,uBAAwB,SAAQA,cAAK,CAAC,aAGlD,CAAA;AAHD,IAAA,WAAA,GAAA;;QAII,IAAK,CAAA,KAAA,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACE,8BAA8B,CACnC;AAEF,QAAA,IAAA,CAAA,QAAQ,GAA4C,CAAC,KAAK,KAAI;AAC1D,YAAA,IAAI,CAAC,QAAQ,CAAK,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,EAAE;AAC7B,SAAC;;IAED,MAAM,GAAA;AACF,QAAA,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,KAAK;QAE7B,QACIA,6BAAC,sBAAsB,CAAC,QAAQ,EAAC,EAAA,KAAK,kCAAM,IAAI,CAAC,KAAK,CAAE,EAAA,EAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAC1E,CAAA,EAAA,EAAA,QAAQ,CACqB;;AAG7C;;;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const ITEM_TYPE_REGULAR = 'regular';
|
|
2
|
+
const COLLAPSE_ITEM_ID = 'collapse-item-id';
|
|
3
|
+
const POPUP_PLACEMENT = ['right-start', 'right-end', 'right'];
|
|
4
|
+
const POPUP_ITEM_HEIGHT = 28;
|
|
5
|
+
|
|
6
|
+
export { COLLAPSE_ITEM_ID, ITEM_TYPE_REGULAR, POPUP_ITEM_HEIGHT, POPUP_PLACEMENT };
|
|
7
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../../src/components/CompositeBar/constants.ts"],"sourcesContent":["import {PopupPlacement} from '@gravity-ui/uikit';\n\nexport const ITEM_TYPE_REGULAR = 'regular';\nexport const COLLAPSE_ITEM_ID = 'collapse-item-id';\n\nexport const POPUP_PLACEMENT: PopupPlacement = ['right-start', 'right-end', 'right'];\nexport const POPUP_ITEM_HEIGHT = 28;\n"],"names":[],"mappings":"AAEO,MAAM,iBAAiB,GAAG;AAC1B,MAAM,gBAAgB,GAAG;AAEnB,MAAA,eAAe,GAAmB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO;AAC5E,MAAM,iBAAiB,GAAG;;;;"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Ellipsis } from '@gravity-ui/icons';
|
|
2
|
+
import { ITEM_HEIGHT } from '../constants.js';
|
|
3
|
+
import { COLLAPSE_ITEM_ID } from './constants.js';
|
|
4
|
+
|
|
5
|
+
function getItemHeight(item) {
|
|
6
|
+
if (!isMenuItem(item)) {
|
|
7
|
+
return ITEM_HEIGHT;
|
|
8
|
+
}
|
|
9
|
+
switch (item.type) {
|
|
10
|
+
case 'action':
|
|
11
|
+
return 50;
|
|
12
|
+
case 'divider':
|
|
13
|
+
return 15;
|
|
14
|
+
default:
|
|
15
|
+
return ITEM_HEIGHT;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function getItemsHeight(items) {
|
|
19
|
+
return items.reduce((sum, item) => sum + getItemHeight(item), 0);
|
|
20
|
+
}
|
|
21
|
+
function getSelectedItemIndex(items) {
|
|
22
|
+
const index = items.findIndex(({ current }) => Boolean(current));
|
|
23
|
+
return index === -1 ? undefined : index;
|
|
24
|
+
}
|
|
25
|
+
function getPinnedItems(items) {
|
|
26
|
+
const pinnedItems = [];
|
|
27
|
+
for (const item of items) {
|
|
28
|
+
if (item.pinned) {
|
|
29
|
+
pinnedItems.push(item);
|
|
30
|
+
}
|
|
31
|
+
else if (item.type === 'divider') {
|
|
32
|
+
if (pinnedItems.length > 0 && pinnedItems[pinnedItems.length - 1].type !== 'divider') {
|
|
33
|
+
pinnedItems.push(item);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return pinnedItems;
|
|
38
|
+
}
|
|
39
|
+
function getItemsMinHeight(items) {
|
|
40
|
+
const pinnedItems = getPinnedItems(items);
|
|
41
|
+
const afterMoreButtonItems = items.filter((item) => item.afterMoreButton);
|
|
42
|
+
return (getItemsHeight(pinnedItems) +
|
|
43
|
+
getItemsHeight(afterMoreButtonItems) +
|
|
44
|
+
(pinnedItems.length === items.length ? 0 : ITEM_HEIGHT));
|
|
45
|
+
}
|
|
46
|
+
function getMoreButtonItem(menuMoreTitle) {
|
|
47
|
+
return {
|
|
48
|
+
id: COLLAPSE_ITEM_ID,
|
|
49
|
+
title: menuMoreTitle,
|
|
50
|
+
icon: Ellipsis,
|
|
51
|
+
iconSize: 18,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
function getAutosizeListItems(items, height, collapseItem) {
|
|
55
|
+
var _a, _b, _c;
|
|
56
|
+
const afterMoreButtonItems = items.filter((item) => item.afterMoreButton);
|
|
57
|
+
const regularItems = items.filter((item) => !item.afterMoreButton);
|
|
58
|
+
const listItems = [...regularItems, ...afterMoreButtonItems];
|
|
59
|
+
const allItemsHeight = getItemsHeight(listItems);
|
|
60
|
+
if (allItemsHeight <= height) {
|
|
61
|
+
return { listItems, collapseItems: [] };
|
|
62
|
+
}
|
|
63
|
+
const collapseItemHeight = getItemHeight(collapseItem);
|
|
64
|
+
listItems.splice(regularItems.length, 0, collapseItem);
|
|
65
|
+
const collapseItems = [];
|
|
66
|
+
let listHeight = allItemsHeight + collapseItemHeight;
|
|
67
|
+
let index = listItems.length;
|
|
68
|
+
while (listHeight > height) {
|
|
69
|
+
if (index === 0) {
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
index--;
|
|
73
|
+
const item = listItems[index];
|
|
74
|
+
if (item.pinned || item.id === COLLAPSE_ITEM_ID || item.afterMoreButton) {
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
if (item.type === 'divider') {
|
|
78
|
+
if (index + 1 < listItems.length && ((_a = listItems[index + 1]) === null || _a === undefined ? undefined : _a.type) === 'divider') {
|
|
79
|
+
listHeight -= getItemHeight(item);
|
|
80
|
+
listItems.splice(index, 1);
|
|
81
|
+
}
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
listHeight -= getItemHeight(item);
|
|
85
|
+
collapseItems.unshift(...listItems.splice(index, 1));
|
|
86
|
+
}
|
|
87
|
+
if (((_b = listItems[index]) === null || _b === undefined ? undefined : _b.type) === 'divider' &&
|
|
88
|
+
(index === 0 || ((_c = listItems[index - 1]) === null || _c === undefined ? undefined : _c.type) === 'divider')) {
|
|
89
|
+
listItems.splice(index, 1);
|
|
90
|
+
}
|
|
91
|
+
return { listItems, collapseItems };
|
|
92
|
+
}
|
|
93
|
+
function isMenuItem(item) {
|
|
94
|
+
return (item === null || item === undefined ? undefined : item.id) !== undefined;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export { getAutosizeListItems, getItemHeight, getItemsHeight, getItemsMinHeight, getMoreButtonItem, getPinnedItems, getSelectedItemIndex, isMenuItem };
|
|
98
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../../src/components/CompositeBar/utils.ts"],"sourcesContent":["import {Ellipsis} from '@gravity-ui/icons';\n\nimport {CompositeBarItem} from '../CompositeBar/CompositeBar';\nimport {ITEM_HEIGHT} from '../constants';\n\nimport {MenuItem} from './../types';\nimport {COLLAPSE_ITEM_ID} from './constants';\n\nexport function getItemHeight(item: CompositeBarItem) {\n if (!isMenuItem(item)) {\n return ITEM_HEIGHT;\n }\n\n switch (item.type) {\n case 'action':\n return 50;\n case 'divider':\n return 15;\n\n default:\n return ITEM_HEIGHT;\n }\n}\n\nexport function getItemsHeight<T extends CompositeBarItem>(items: T[]) {\n return items.reduce((sum, item) => sum + getItemHeight(item), 0);\n}\n\nexport function getSelectedItemIndex(items: MenuItem[]) {\n const index = items.findIndex(({current}) => Boolean(current));\n return index === -1 ? undefined : index;\n}\n\nexport function getPinnedItems(items: MenuItem[]) {\n const pinnedItems: MenuItem[] = [];\n for (const item of items) {\n if (item.pinned) {\n pinnedItems.push(item);\n } else if (item.type === 'divider') {\n if (pinnedItems.length > 0 && pinnedItems[pinnedItems.length - 1].type !== 'divider') {\n pinnedItems.push(item);\n }\n }\n }\n return pinnedItems;\n}\n\nexport function getItemsMinHeight(items: MenuItem[]) {\n const pinnedItems = getPinnedItems(items);\n const afterMoreButtonItems = items.filter((item) => item.afterMoreButton);\n\n return (\n getItemsHeight(pinnedItems) +\n getItemsHeight(afterMoreButtonItems) +\n (pinnedItems.length === items.length ? 0 : ITEM_HEIGHT)\n );\n}\n\nexport function getMoreButtonItem(menuMoreTitle?: string): MenuItem {\n return {\n id: COLLAPSE_ITEM_ID,\n title: menuMoreTitle,\n icon: Ellipsis,\n iconSize: 18,\n };\n}\n\nexport function getAutosizeListItems(\n items: MenuItem[],\n height: number,\n collapseItem: MenuItem,\n): {\n listItems: MenuItem[];\n collapseItems: MenuItem[];\n} {\n const afterMoreButtonItems = items.filter((item) => item.afterMoreButton);\n const regularItems = items.filter((item) => !item.afterMoreButton);\n const listItems = [...regularItems, ...afterMoreButtonItems];\n\n const allItemsHeight = getItemsHeight(listItems);\n if (allItemsHeight <= height) {\n return {listItems, collapseItems: []};\n }\n\n const collapseItemHeight = getItemHeight(collapseItem);\n\n listItems.splice(regularItems.length, 0, collapseItem);\n const collapseItems: MenuItem[] = [];\n\n let listHeight = allItemsHeight + collapseItemHeight;\n let index = listItems.length;\n while (listHeight > height) {\n if (index === 0) {\n break;\n }\n index--;\n\n const item = listItems[index];\n if (item.pinned || item.id === COLLAPSE_ITEM_ID || item.afterMoreButton) {\n continue;\n }\n if (item.type === 'divider') {\n if (index + 1 < listItems.length && listItems[index + 1]?.type === 'divider') {\n listHeight -= getItemHeight(item);\n listItems.splice(index, 1);\n }\n continue;\n }\n listHeight -= getItemHeight(item);\n collapseItems.unshift(...listItems.splice(index, 1));\n }\n if (\n listItems[index]?.type === 'divider' &&\n (index === 0 || listItems[index - 1]?.type === 'divider')\n ) {\n listItems.splice(index, 1);\n }\n\n return {listItems, collapseItems};\n}\n\nexport function isMenuItem(item: CompositeBarItem): item is MenuItem {\n return (item as MenuItem)?.id !== undefined;\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -10,5 +10,5 @@ className, cssSizeVariableName = '--gn-aside-header-size', renderContent, childr
|
|
|
10
10
|
return (React__default.createElement("div", { className: className, style: Object.assign({}, { [cssSizeVariableName]: `${size}px` }) }, typeof renderContent === 'function' ? (React__default.createElement(RenderContent, { size: size, renderContent: renderContent })) : (children)));
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
export { Content
|
|
14
|
-
//# sourceMappingURL=Content
|
|
13
|
+
export { Content };
|
|
14
|
+
//# sourceMappingURL=Content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Content.js","sources":["../../../../../src/components/Content/Content.tsx"],"sourcesContent":["/* Used by renderContent AsideHeader prop */\n\nimport React from 'react';\n\nexport type RenderContentType = (data: {size: number}) => React.ReactNode;\n\nexport interface ContentProps {\n size: number;\n className?: string;\n cssSizeVariableName?: string;\n renderContent?: RenderContentType;\n children?: React.ReactNode;\n}\n\ninterface RenderContentProps {\n renderContent: RenderContentType;\n size: number;\n}\n\nconst RenderContent: React.FC<RenderContentProps> = React.memo(({renderContent, size}) => {\n return <React.Fragment>{renderContent({size})}</React.Fragment>;\n});\n\nRenderContent.displayName = 'RenderContent';\n\nexport const Content: React.FC<ContentProps> = ({\n size, // TODO: move to context when MobileHeader will support it\n className,\n cssSizeVariableName = '--gn-aside-header-size',\n renderContent,\n children,\n}) => {\n return (\n <div\n className={className}\n style={{...({[cssSizeVariableName]: `${size}px`} as React.CSSProperties)}}\n >\n {typeof renderContent === 'function' ? (\n <RenderContent size={size} renderContent={renderContent} />\n ) : (\n children\n )}\n </div>\n );\n};\n"],"names":["React"],"mappings":";;AAAA;AAmBA,MAAM,aAAa,GAAiCA,cAAK,CAAC,IAAI,CAAC,CAAC,EAAC,aAAa,EAAE,IAAI,EAAC,KAAI;AACrF,IAAA,OAAOA,cAAC,CAAA,aAAA,CAAAA,cAAK,CAAC,QAAQ,EAAE,IAAA,EAAA,aAAa,CAAC,EAAC,IAAI,EAAC,CAAC,CAAkB;AACnE,CAAC,CAAC;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe;MAE9B,OAAO,GAA2B,CAAC,EAC5C,IAAI;AACJ,SAAS,EACT,mBAAmB,GAAG,wBAAwB,EAC9C,aAAa,EACb,QAAQ,GACX,KAAI;IACD,QACIA,sCACI,SAAS,EAAE,SAAS,EACpB,KAAK,oBAAO,EAAC,CAAC,mBAAmB,GAAG,GAAG,IAAI,CAAA,EAAA,CAAI,EAAyB,CAEvE,EAAA,EAAA,OAAO,aAAa,KAAK,UAAU,IAChCA,6BAAC,aAAa,EAAA,EAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAI,CAAA,KAE3D,QAAQ,CACX,CACC;AAEd;;;;"}
|
|
@@ -48,11 +48,6 @@ type DrawerChild = React.ReactElement<DrawerItemProps>;
|
|
|
48
48
|
export interface DrawerProps {
|
|
49
49
|
/** Child components to be rendered within the drawer. This can be a single child or an array of children. */
|
|
50
50
|
children: DrawerChild | DrawerChild[];
|
|
51
|
-
/**
|
|
52
|
-
* Optional flag to prevent the body from scrolling when the drawer is open, `true` by default.
|
|
53
|
-
* @default true
|
|
54
|
-
*/
|
|
55
|
-
preventScrollBody?: boolean;
|
|
56
51
|
/** Optional additional class names to style the drawer component. */
|
|
57
52
|
className?: string;
|
|
58
53
|
/** Optional inline styles to be applied to the drawer component. */
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { useForkRef, Portal } from '@gravity-ui/uikit';
|
|
3
|
+
import { block } from '../utils/cn.js';
|
|
4
|
+
import { useResizableDrawerItem } from './utils.js';
|
|
5
|
+
import './Drawer.scss.js';
|
|
6
|
+
import CSSTransition from '../../node_modules/react-transition-group/esm/CSSTransition.js';
|
|
7
|
+
import Transition from '../../node_modules/react-transition-group/esm/Transition.js';
|
|
8
|
+
|
|
9
|
+
const b = block('drawer');
|
|
10
|
+
const TIMEOUT = 300;
|
|
11
|
+
const DrawerItem = React__default.forwardRef(function DrawerItem(props, ref) {
|
|
12
|
+
const { visible, content, children, direction = 'left', className, resizable, width, minResizeWidth, maxResizeWidth, onResizeStart, onResize, keepMounted = false, } = props;
|
|
13
|
+
const [isInitialRender, setInitialRender] = React__default.useState(true);
|
|
14
|
+
const itemRef = React__default.useRef(null);
|
|
15
|
+
const handleRef = useForkRef(ref, itemRef);
|
|
16
|
+
const cssDirection = direction === 'left' ? undefined : direction;
|
|
17
|
+
const { resizedWidth, resizerHandlers } = useResizableDrawerItem({
|
|
18
|
+
direction,
|
|
19
|
+
width,
|
|
20
|
+
minResizeWidth,
|
|
21
|
+
maxResizeWidth,
|
|
22
|
+
onResizeStart,
|
|
23
|
+
onResize,
|
|
24
|
+
});
|
|
25
|
+
React__default.useEffect(() => {
|
|
26
|
+
setInitialRender(true);
|
|
27
|
+
}, [direction]);
|
|
28
|
+
const resizerElement = resizable ? (React__default.createElement("div", Object.assign({ className: b('resizer', { direction }) }, resizerHandlers),
|
|
29
|
+
React__default.createElement("div", { className: b('resizer-handle') }))) : null;
|
|
30
|
+
return (React__default.createElement(CSSTransition, { in: visible, timeout: TIMEOUT, mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, classNames: b('item-transition', { direction: cssDirection }), nodeRef: itemRef, onEnter: () => setInitialRender(false), onExit: () => setInitialRender(false) },
|
|
31
|
+
React__default.createElement("div", { ref: handleRef, className: b('item', { direction: cssDirection, hidden: isInitialRender && !visible }, [className]), style: { width: resizable ? `${resizedWidth}px` : undefined } },
|
|
32
|
+
resizerElement, children !== null && children !== undefined ? children : content)));
|
|
33
|
+
});
|
|
34
|
+
const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEscape, hideVeil, disablePortal = true, keepMounted = false, }) => {
|
|
35
|
+
let someItemVisible = false;
|
|
36
|
+
React__default.Children.forEach(children, (child) => {
|
|
37
|
+
if (React__default.isValidElement(child) && child.type === DrawerItem) {
|
|
38
|
+
const childVisible = Boolean(child.props.visible);
|
|
39
|
+
if (childVisible) {
|
|
40
|
+
someItemVisible = true;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
React__default.useEffect(() => {
|
|
45
|
+
function onKeyDown(event) {
|
|
46
|
+
if (event.key === 'Escape') {
|
|
47
|
+
onEscape === null || onEscape === undefined ? undefined : onEscape();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (someItemVisible) {
|
|
51
|
+
window.addEventListener('keydown', onKeyDown);
|
|
52
|
+
}
|
|
53
|
+
return () => {
|
|
54
|
+
window.removeEventListener('keydown', onKeyDown);
|
|
55
|
+
};
|
|
56
|
+
}, [onEscape, someItemVisible]);
|
|
57
|
+
const containerRef = React__default.useRef(null);
|
|
58
|
+
const veilRef = React__default.useRef(null);
|
|
59
|
+
const drawer = (React__default.createElement(Transition, { in: someItemVisible, timeout: { enter: 0, exit: TIMEOUT }, mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, nodeRef: containerRef }, (state) => {
|
|
60
|
+
const childrenVisible = someItemVisible && state === 'entered';
|
|
61
|
+
return (React__default.createElement("div", { ref: containerRef, className: b({ hideVeil }, className), style: style },
|
|
62
|
+
React__default.createElement(CSSTransition, { in: childrenVisible, timeout: TIMEOUT, unmountOnExit: true, classNames: b('veil-transition'), nodeRef: veilRef },
|
|
63
|
+
React__default.createElement("div", { ref: veilRef, className: b('veil', { hidden: hideVeil }, veilClassName), onClick: onVeilClick })),
|
|
64
|
+
React__default.Children.map(children, (child) => {
|
|
65
|
+
if (React__default.isValidElement(child) &&
|
|
66
|
+
child.type === DrawerItem) {
|
|
67
|
+
const childVisible = Boolean(child.props.visible);
|
|
68
|
+
return React__default.cloneElement(child, Object.assign(Object.assign({ keepMounted }, child.props), { visible: childVisible && childrenVisible }));
|
|
69
|
+
}
|
|
70
|
+
return child;
|
|
71
|
+
})));
|
|
72
|
+
}));
|
|
73
|
+
if (disablePortal) {
|
|
74
|
+
return drawer;
|
|
75
|
+
}
|
|
76
|
+
return React__default.createElement(Portal, null, drawer);
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
export { Drawer, DrawerItem };
|
|
80
|
+
//# sourceMappingURL=Drawer.js.map
|