@gravity-ui/navigation 3.0.0-beta.2 → 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/build/cjs/{_commonjsHelpers-BJu3ubxk.js → _virtual/_commonjsHelpers.js} +1 -1
- 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/{esm → cjs/_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-BLSp99lJ.js → assets/icons/divider-collapsed.svg.js} +2 -2
- package/build/cjs/assets/icons/divider-collapsed.svg.js.map +1 -0
- 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/index.js +8 -0
- package/build/cjs/components/ActionBar/index.js.map +1 -0
- 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.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/{PageLayout.js → components/AsideHeader/AsideHeader.scss.js} +4 -29
- package/build/cjs/components/AsideHeader/AsideHeader.scss.js.map +1 -0
- package/build/cjs/components/AsideHeader/AsideHeaderContext.js.map +1 -0
- 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/{AsideFallback.js → components/AsideHeader/components/PageLayout/AsideFallback.js} +5 -7
- 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/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.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.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.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.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.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/{Content-Dy2XkiRi.js → components/Content/Content.js} +1 -1
- package/build/cjs/components/Content/Content.js.map +1 -0
- 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/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/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/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/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/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.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/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/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.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/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.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/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/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.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/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.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.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.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.js +8 -0
- package/build/cjs/components/TopAlert/index.js.map +1 -0
- package/build/cjs/components/TopAlert/useTopAlertHeight.js +37 -0
- package/build/cjs/components/TopAlert/useTopAlertHeight.js.map +1 -0
- package/build/cjs/{constants-B0DLAQY9.js → components/constants.js} +1 -1
- package/build/cjs/components/constants.js.map +1 -0
- package/build/cjs/{cn-DSlPZbcs.js → components/utils/cn.js} +1 -1
- package/build/cjs/components/utils/cn.js.map +1 -0
- 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 +43 -6
- 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-CsU6UJbw.js → node_modules/style-inject/dist/style-inject.es.js} +2 -2
- package/build/cjs/{style-inject.es-CsU6UJbw.js.map → node_modules/style-inject/dist/style-inject.es.js.map} +1 -1
- package/build/cjs/{tslib.es6-D25eJ2i9.js → node_modules/tslib/tslib.es6.js} +1 -1
- package/build/cjs/node_modules/tslib/tslib.es6.js.map +1 -0
- package/build/esm/{_commonjsHelpers-BFTU3MAI.js → _virtual/_commonjsHelpers.js} +2 -2
- 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/{cjs → esm/_virtual}/index2.js.map +1 -1
- 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-BgKmR8h9.js → assets/icons/divider-collapsed.svg.js} +2 -2
- package/build/esm/assets/icons/divider-collapsed.svg.js.map +1 -0
- 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/index.js +2 -0
- package/build/esm/components/ActionBar/index.js.map +1 -0
- 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.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/{PageLayout.js → components/AsideHeader/AsideHeader.scss.js} +3 -28
- package/build/esm/components/AsideHeader/AsideHeader.scss.js.map +1 -0
- package/build/esm/components/AsideHeader/AsideHeaderContext.js.map +1 -0
- 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} +4 -6
- 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/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.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.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.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.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.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-c3e3OunO.js → components/Content/Content.js} +2 -2
- package/build/esm/components/Content/Content.js.map +1 -0
- 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/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/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/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/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/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.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/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/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.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/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.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/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/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.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/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.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.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.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.js +2 -0
- package/build/esm/components/TopAlert/index.js.map +1 -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/{cn-CgiqTV3v.js → components/utils/cn.js} +2 -2
- package/build/esm/components/utils/cn.js.map +1 -0
- 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 -5
- 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-Bff-fD1R.js → node_modules/style-inject/dist/style-inject.es.js} +2 -2
- package/build/esm/{style-inject.es-Bff-fD1R.js.map → node_modules/style-inject/dist/style-inject.es.js.map} +1 -1
- package/build/esm/{tslib.es6-BCqiemNI.js → node_modules/tslib/tslib.es6.js} +2 -2
- package/build/esm/node_modules/tslib/tslib.es6.js.map +1 -0
- package/package.json +1 -1
- package/build/cjs/ActionBar-_qjZ9IMA.js +0 -59
- package/build/cjs/ActionBar-_qjZ9IMA.js.map +0 -1
- package/build/cjs/AsideFallback.js.map +0 -1
- package/build/cjs/AsideHeader.js +0 -33
- package/build/cjs/AsideHeader.js.map +0 -1
- package/build/cjs/AsideHeaderContext.js.map +0 -1
- package/build/cjs/Content-Dy2XkiRi.js.map +0 -1
- package/build/cjs/Drawer.js +0 -2493
- package/build/cjs/Drawer.js.map +0 -1
- package/build/cjs/FooterItem-CLk0aHrc.js +0 -332
- package/build/cjs/FooterItem-CLk0aHrc.js.map +0 -1
- package/build/cjs/FooterItem.js +0 -26
- package/build/cjs/FooterItem.js.map +0 -1
- package/build/cjs/HotkeysPanel-C436myZY.js +0 -63
- package/build/cjs/HotkeysPanel-C436myZY.js.map +0 -1
- package/build/cjs/Item-CLHysLDd.js +0 -328
- package/build/cjs/Item-CLHysLDd.js.map +0 -1
- package/build/cjs/PageLayout.js.map +0 -1
- package/build/cjs/PageLayoutAside-SMHlPBAO.js +0 -979
- package/build/cjs/PageLayoutAside-SMHlPBAO.js.map +0 -1
- package/build/cjs/PageLayoutAside.js +0 -24
- package/build/cjs/PageLayoutAside.js.map +0 -1
- package/build/cjs/Settings-x0a3P0Vr.js +0 -586
- package/build/cjs/Settings-x0a3P0Vr.js.map +0 -1
- package/build/cjs/Title-CzxcSMoP.js +0 -36
- package/build/cjs/Title-CzxcSMoP.js.map +0 -1
- package/build/cjs/_commonjsHelpers-BJu3ubxk.js.map +0 -1
- package/build/cjs/cn-DSlPZbcs.js.map +0 -1
- package/build/cjs/constants-B0DLAQY9.js.map +0 -1
- package/build/cjs/debounce-RFF04eVR.js +0 -660
- package/build/cjs/debounce-RFF04eVR.js.map +0 -1
- package/build/cjs/divider-collapsed-BLSp99lJ.js.map +0 -1
- package/build/cjs/index-B6c8DVdr.js +0 -68
- package/build/cjs/index-B6c8DVdr.js.map +0 -1
- package/build/cjs/index2.js +0 -15
- package/build/cjs/index3.js +0 -17
- package/build/cjs/index4.js +0 -21
- 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 -194
- package/build/cjs/index6.js.map +0 -1
- package/build/cjs/tslib.es6-D25eJ2i9.js.map +0 -1
- package/build/cjs/utils-BrRoop7o.js +0 -8
- package/build/cjs/utils-BrRoop7o.js.map +0 -1
- package/build/esm/ActionBar-BD_roj92.js +0 -57
- package/build/esm/ActionBar-BD_roj92.js.map +0 -1
- package/build/esm/AsideFallback.js.map +0 -1
- package/build/esm/AsideHeader.js +0 -31
- package/build/esm/AsideHeader.js.map +0 -1
- package/build/esm/AsideHeaderContext.js.map +0 -1
- package/build/esm/Content-c3e3OunO.js.map +0 -1
- package/build/esm/Drawer.js +0 -2472
- package/build/esm/Drawer.js.map +0 -1
- package/build/esm/FooterItem-DuFjLZPI.js +0 -326
- package/build/esm/FooterItem-DuFjLZPI.js.map +0 -1
- package/build/esm/FooterItem.js +0 -24
- package/build/esm/FooterItem.js.map +0 -1
- package/build/esm/HotkeysPanel-BWL1Xkqi.js +0 -61
- package/build/esm/HotkeysPanel-BWL1Xkqi.js.map +0 -1
- package/build/esm/Item-BU0M-jfC.js +0 -318
- package/build/esm/Item-BU0M-jfC.js.map +0 -1
- package/build/esm/PageLayout.js.map +0 -1
- package/build/esm/PageLayoutAside-Bd3aJNrH.js +0 -958
- package/build/esm/PageLayoutAside-Bd3aJNrH.js.map +0 -1
- package/build/esm/PageLayoutAside.js +0 -18
- package/build/esm/PageLayoutAside.js.map +0 -1
- package/build/esm/Settings-BC6Kmplf.js +0 -564
- package/build/esm/Settings-BC6Kmplf.js.map +0 -1
- package/build/esm/Title-CRlzgg4r.js +0 -34
- package/build/esm/Title-CRlzgg4r.js.map +0 -1
- package/build/esm/_commonjsHelpers-BFTU3MAI.js.map +0 -1
- package/build/esm/cn-CgiqTV3v.js.map +0 -1
- package/build/esm/constants-ChYDZ5F2.js +0 -8
- package/build/esm/constants-ChYDZ5F2.js.map +0 -1
- package/build/esm/debounce-DW3XyyUs.js +0 -658
- package/build/esm/debounce-DW3XyyUs.js.map +0 -1
- package/build/esm/divider-collapsed-BgKmR8h9.js.map +0 -1
- package/build/esm/index-BLdwsphX.js +0 -66
- package/build/esm/index-BLdwsphX.js.map +0 -1
- package/build/esm/index2.js +0 -9
- package/build/esm/index3.js +0 -11
- package/build/esm/index4.js +0 -13
- package/build/esm/index4.js.map +0 -1
- package/build/esm/index5.js +0 -13
- package/build/esm/index5.js.map +0 -1
- package/build/esm/index6.js +0 -171
- package/build/esm/index6.js.map +0 -1
- package/build/esm/tslib.es6-BCqiemNI.js.map +0 -1
- package/build/esm/utils-D0s6YtvW.js +0 -6
- package/build/esm/utils-D0s6YtvW.js.map +0 -1
- /package/build/cjs/{AsideHeaderContext.js → components/AsideHeader/AsideHeaderContext.js} +0 -0
- /package/build/esm/{AsideHeaderContext.js → components/AsideHeader/AsideHeaderContext.js} +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var AllPagesPanel = require('../AllPagesPanel/AllPagesPanel.js');
|
|
5
|
+
var constants = require('../AllPagesPanel/constants.js');
|
|
6
|
+
require('./AsideHeaderContext.js');
|
|
7
|
+
var types = require('./types.js');
|
|
8
|
+
|
|
9
|
+
const EMPTY_MENU_ITEMS = [];
|
|
10
|
+
const useAsideHeaderInnerContextValue = (props) => {
|
|
11
|
+
const { size, onClosePanel, menuItems, panelItems, onMenuItemsChanged, onAllPagesClick } = props;
|
|
12
|
+
const [innerVisiblePanel, setInnerVisiblePanel] = React.useState();
|
|
13
|
+
const ALL_PAGES_MENU_ITEM = React.useMemo(() => {
|
|
14
|
+
return constants.getAllPagesMenuItem();
|
|
15
|
+
}, []);
|
|
16
|
+
const allPagesIsAvailable = Boolean(onMenuItemsChanged) && (!menuItems || (menuItems === null || menuItems === undefined ? undefined : menuItems.length) > 0);
|
|
17
|
+
React.useEffect(() => {
|
|
18
|
+
// If any user panel became visible we need to switch off all inner panels
|
|
19
|
+
if (panelItems === null || panelItems === undefined ? undefined : panelItems.some((x) => x.visible)) {
|
|
20
|
+
setInnerVisiblePanel(undefined);
|
|
21
|
+
}
|
|
22
|
+
}, [panelItems]);
|
|
23
|
+
const innerOnClosePanel = React.useCallback(() => {
|
|
24
|
+
setInnerVisiblePanel(undefined);
|
|
25
|
+
onClosePanel === null || onClosePanel === undefined ? undefined : onClosePanel();
|
|
26
|
+
}, [onClosePanel]);
|
|
27
|
+
const onItemClick = React.useCallback((item, collapsed, event) => {
|
|
28
|
+
var _a;
|
|
29
|
+
if (item.id === ALL_PAGES_MENU_ITEM.id) {
|
|
30
|
+
onClosePanel === null || onClosePanel === undefined ? undefined : onClosePanel();
|
|
31
|
+
setInnerVisiblePanel((prev) => prev === types.InnerPanels.AllPages ? undefined : types.InnerPanels.AllPages);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
innerOnClosePanel();
|
|
35
|
+
}
|
|
36
|
+
(_a = item.onItemClick) === null || _a === undefined ? undefined : _a.call(item, item, collapsed, event);
|
|
37
|
+
}, [innerOnClosePanel, ALL_PAGES_MENU_ITEM, onClosePanel]);
|
|
38
|
+
const innerMenuItems = React.useMemo(() => allPagesIsAvailable
|
|
39
|
+
? [
|
|
40
|
+
...(menuItems || EMPTY_MENU_ITEMS),
|
|
41
|
+
Object.assign(Object.assign({}, ALL_PAGES_MENU_ITEM), { current: innerVisiblePanel === types.InnerPanels.AllPages, onItemClick: onAllPagesClick }),
|
|
42
|
+
]
|
|
43
|
+
: menuItems || EMPTY_MENU_ITEMS, [allPagesIsAvailable, menuItems, innerVisiblePanel, ALL_PAGES_MENU_ITEM, onAllPagesClick]);
|
|
44
|
+
const innerPanelItems = React.useMemo(() => {
|
|
45
|
+
if (!allPagesIsAvailable) {
|
|
46
|
+
return panelItems;
|
|
47
|
+
}
|
|
48
|
+
return [
|
|
49
|
+
...(panelItems || []),
|
|
50
|
+
{
|
|
51
|
+
id: types.InnerPanels.AllPages,
|
|
52
|
+
content: React.createElement(AllPagesPanel.AllPagesPanel, null),
|
|
53
|
+
visible: innerVisiblePanel === types.InnerPanels.AllPages,
|
|
54
|
+
},
|
|
55
|
+
];
|
|
56
|
+
}, [allPagesIsAvailable, panelItems, innerVisiblePanel]);
|
|
57
|
+
return Object.assign(Object.assign({}, props), { onClosePanel: innerOnClosePanel, allPagesIsAvailable, menuItems: innerMenuItems, panelItems: innerPanelItems, size,
|
|
58
|
+
onItemClick });
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
exports.useAsideHeaderInnerContextValue = useAsideHeaderInnerContextValue;
|
|
62
|
+
//# sourceMappingURL=useAsideHeaderInnerContextValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAsideHeaderInnerContextValue.js","sources":["../../../../../src/components/AsideHeader/useAsideHeaderInnerContextValue.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {AllPagesPanel, getAllPagesMenuItem} from '../AllPagesPanel';\nimport {MenuItem} from '../types';\n\nimport {AsideHeaderInnerContextType} from './AsideHeaderContext';\nimport {AsideHeaderProps, InnerPanels} from './types';\n\nconst EMPTY_MENU_ITEMS: MenuItem[] = [];\n\nexport const useAsideHeaderInnerContextValue = (\n props: AsideHeaderProps & {size: number},\n): AsideHeaderInnerContextType => {\n const {size, onClosePanel, menuItems, panelItems, onMenuItemsChanged, onAllPagesClick} = props;\n const [innerVisiblePanel, setInnerVisiblePanel] = useState<InnerPanels | undefined>();\n const ALL_PAGES_MENU_ITEM = React.useMemo(() => {\n return getAllPagesMenuItem();\n }, []);\n\n const allPagesIsAvailable =\n Boolean(onMenuItemsChanged) && (!menuItems || menuItems?.length > 0);\n\n useEffect(() => {\n // If any user panel became visible we need to switch off all inner panels\n if (panelItems?.some((x) => x.visible)) {\n setInnerVisiblePanel(undefined);\n }\n }, [panelItems]);\n\n const innerOnClosePanel = useCallback(() => {\n setInnerVisiblePanel(undefined);\n onClosePanel?.();\n }, [onClosePanel]);\n\n const onItemClick = useCallback(\n (item: MenuItem, collapsed: boolean, event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n if (item.id === ALL_PAGES_MENU_ITEM.id) {\n onClosePanel?.();\n setInnerVisiblePanel((prev) =>\n prev === InnerPanels.AllPages ? undefined : InnerPanels.AllPages,\n );\n } else {\n innerOnClosePanel();\n }\n item.onItemClick?.(item, collapsed, event);\n },\n [innerOnClosePanel, ALL_PAGES_MENU_ITEM, onClosePanel],\n );\n\n const innerMenuItems = useMemo(\n () =>\n allPagesIsAvailable\n ? [\n ...(menuItems || EMPTY_MENU_ITEMS),\n {\n ...ALL_PAGES_MENU_ITEM,\n current: innerVisiblePanel === InnerPanels.AllPages,\n onItemClick: onAllPagesClick,\n },\n ]\n : menuItems || EMPTY_MENU_ITEMS,\n [allPagesIsAvailable, menuItems, innerVisiblePanel, ALL_PAGES_MENU_ITEM, onAllPagesClick],\n );\n\n const innerPanelItems = useMemo(() => {\n if (!allPagesIsAvailable) {\n return panelItems;\n }\n return [\n ...(panelItems || []),\n {\n id: InnerPanels.AllPages,\n content: <AllPagesPanel />,\n visible: innerVisiblePanel === InnerPanels.AllPages,\n },\n ];\n }, [allPagesIsAvailable, panelItems, innerVisiblePanel]);\n\n return {\n ...props,\n onClosePanel: innerOnClosePanel,\n allPagesIsAvailable,\n menuItems: innerMenuItems,\n panelItems: innerPanelItems,\n size,\n onItemClick,\n };\n};\n"],"names":["useState","getAllPagesMenuItem","useEffect","useCallback","InnerPanels","useMemo","AllPagesPanel"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../../src/components/AsideHeader/utils.ts"],"sourcesContent":["import {block} from '../utils/cn';\n\nexport const b = block('aside-header');\n"],"names":["block"],"mappings":";;;;MAEa,CAAC,GAAGA,QAAK,CAAC,cAAc;;;;"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var uikit = require('@gravity-ui/uikit');
|
|
5
|
+
var reactVirtualizedAutoSizer_esm = require('../../node_modules/react-virtualized-auto-sizer/dist/react-virtualized-auto-sizer.esm.js');
|
|
6
|
+
var AsideHeaderContext = require('../AsideHeader/AsideHeaderContext.js');
|
|
7
|
+
var constants = require('../constants.js');
|
|
8
|
+
var cn = require('../utils/cn.js');
|
|
9
|
+
var Item = require('./Item/Item.js');
|
|
10
|
+
var MultipleTooltip = require('./MultipleTooltip/MultipleTooltip.js');
|
|
11
|
+
var MultipleTooltipContext = require('./MultipleTooltip/MultipleTooltipContext.js');
|
|
12
|
+
var constants$1 = require('./constants.js');
|
|
13
|
+
var utils = require('./utils.js');
|
|
14
|
+
require('./CompositeBar.scss.js');
|
|
15
|
+
|
|
16
|
+
const b = cn.block('composite-bar');
|
|
17
|
+
const CompositeBarView = ({ type, items, onItemClick, onMoreClick, collapseItems, multipleTooltip = false, }) => {
|
|
18
|
+
const ref = React.useRef(null);
|
|
19
|
+
const tooltipRef = React.useRef(null);
|
|
20
|
+
const { setValue: setMultipleTooltipContextValue, active: multipleTooltipActive, activeIndex, lastClickedItemIndex, } = React.useContext(MultipleTooltipContext.MultipleTooltipContext);
|
|
21
|
+
const { compact } = AsideHeaderContext.useAsideHeaderContext();
|
|
22
|
+
React.useEffect(() => {
|
|
23
|
+
function handleBlurWindow() {
|
|
24
|
+
if (multipleTooltip && multipleTooltipActive) {
|
|
25
|
+
setMultipleTooltipContextValue({ active: false });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
window.addEventListener('blur', handleBlurWindow);
|
|
29
|
+
return () => {
|
|
30
|
+
window.removeEventListener('blur', handleBlurWindow);
|
|
31
|
+
};
|
|
32
|
+
}, [multipleTooltip, multipleTooltipActive, setMultipleTooltipContextValue]);
|
|
33
|
+
const onTooltipMouseEnter = React.useCallback((e) => {
|
|
34
|
+
if (multipleTooltip &&
|
|
35
|
+
compact &&
|
|
36
|
+
!multipleTooltipActive &&
|
|
37
|
+
document.hasFocus() &&
|
|
38
|
+
activeIndex !== lastClickedItemIndex &&
|
|
39
|
+
e.clientX <= constants.ASIDE_HEADER_COMPACT_WIDTH) {
|
|
40
|
+
setMultipleTooltipContextValue === null || setMultipleTooltipContextValue === undefined ? undefined : setMultipleTooltipContextValue({
|
|
41
|
+
active: true,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}, [
|
|
45
|
+
multipleTooltip,
|
|
46
|
+
compact,
|
|
47
|
+
multipleTooltipActive,
|
|
48
|
+
activeIndex,
|
|
49
|
+
lastClickedItemIndex,
|
|
50
|
+
setMultipleTooltipContextValue,
|
|
51
|
+
]);
|
|
52
|
+
const onTooltipMouseLeave = React.useCallback(() => {
|
|
53
|
+
if (multipleTooltip && multipleTooltipActive && document.hasFocus()) {
|
|
54
|
+
setMultipleTooltipContextValue === null || setMultipleTooltipContextValue === undefined ? undefined : setMultipleTooltipContextValue({
|
|
55
|
+
active: false,
|
|
56
|
+
lastClickedItemIndex: undefined,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}, [multipleTooltip, multipleTooltipActive, setMultipleTooltipContextValue]);
|
|
60
|
+
const onMouseEnterByIndex = React.useCallback((itemIndex) => () => {
|
|
61
|
+
if (multipleTooltip && document.hasFocus()) {
|
|
62
|
+
let multipleTooltipActiveValue = multipleTooltipActive;
|
|
63
|
+
if (!multipleTooltipActive && itemIndex !== lastClickedItemIndex) {
|
|
64
|
+
multipleTooltipActiveValue = true;
|
|
65
|
+
}
|
|
66
|
+
if (activeIndex === itemIndex &&
|
|
67
|
+
multipleTooltipActive === multipleTooltipActiveValue) {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
setMultipleTooltipContextValue({
|
|
71
|
+
activeIndex: itemIndex,
|
|
72
|
+
active: multipleTooltipActiveValue,
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}, [
|
|
76
|
+
multipleTooltip,
|
|
77
|
+
multipleTooltipActive,
|
|
78
|
+
lastClickedItemIndex,
|
|
79
|
+
activeIndex,
|
|
80
|
+
setMultipleTooltipContextValue,
|
|
81
|
+
]);
|
|
82
|
+
const onMouseLeave = React.useCallback(() => {
|
|
83
|
+
var _a;
|
|
84
|
+
if (compact && document.hasFocus()) {
|
|
85
|
+
(_a = ref.current) === null || _a === undefined ? undefined : _a.activateItem(undefined);
|
|
86
|
+
if (multipleTooltip &&
|
|
87
|
+
(activeIndex !== undefined || lastClickedItemIndex !== undefined)) {
|
|
88
|
+
setMultipleTooltipContextValue({
|
|
89
|
+
activeIndex: undefined,
|
|
90
|
+
lastClickedItemIndex: undefined,
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}, [
|
|
95
|
+
activeIndex,
|
|
96
|
+
compact,
|
|
97
|
+
lastClickedItemIndex,
|
|
98
|
+
multipleTooltip,
|
|
99
|
+
setMultipleTooltipContextValue,
|
|
100
|
+
]);
|
|
101
|
+
const onItemClickByIndex = React.useCallback((itemIndex) => (item, collapsed, event) => {
|
|
102
|
+
if (compact &&
|
|
103
|
+
multipleTooltip &&
|
|
104
|
+
itemIndex !== lastClickedItemIndex &&
|
|
105
|
+
item.id !== constants$1.COLLAPSE_ITEM_ID) {
|
|
106
|
+
setMultipleTooltipContextValue({
|
|
107
|
+
lastClickedItemIndex: itemIndex,
|
|
108
|
+
active: false,
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, collapsed, event);
|
|
112
|
+
}, [
|
|
113
|
+
compact,
|
|
114
|
+
lastClickedItemIndex,
|
|
115
|
+
multipleTooltip,
|
|
116
|
+
onItemClick,
|
|
117
|
+
setMultipleTooltipContextValue,
|
|
118
|
+
]);
|
|
119
|
+
return (React.createElement(React.Fragment, null,
|
|
120
|
+
React.createElement("div", { ref: tooltipRef, onMouseEnter: onTooltipMouseEnter, onMouseLeave: onTooltipMouseLeave },
|
|
121
|
+
React.createElement(uikit.List, { ref: ref, items: items, selectedItemIndex: type === 'menu' ? utils.getSelectedItemIndex(items) : undefined, itemHeight: utils.getItemHeight, itemsHeight: utils.getItemsHeight, itemClassName: b('root-menu-item'), virtualized: false, filterable: false, sortable: false, renderItem: (item, _isItemActive, itemIndex) => {
|
|
122
|
+
const itemExtraProps = utils.isMenuItem(item) ? { item } : item;
|
|
123
|
+
const enableTooltip = utils.isMenuItem(item)
|
|
124
|
+
? !multipleTooltip
|
|
125
|
+
: item.enableTooltip;
|
|
126
|
+
return (React.createElement(Item.Item, Object.assign({}, itemExtraProps, { enableTooltip: enableTooltip, onMouseEnter: onMouseEnterByIndex(itemIndex), onMouseLeave: onMouseLeave, onItemClick: onItemClickByIndex(itemIndex), onCollapseItemClick: onMoreClick, collapseItems: collapseItems })));
|
|
127
|
+
} })),
|
|
128
|
+
type === 'menu' && multipleTooltip && (React.createElement(MultipleTooltip.MultipleTooltip, { open: compact && multipleTooltipActive, anchorRef: tooltipRef, placement: ['right-start'], items: items }))));
|
|
129
|
+
};
|
|
130
|
+
const CompositeBar = ({ type, items, menuMoreTitle, onItemClick, onMoreClick, multipleTooltip = false, }) => {
|
|
131
|
+
if (items.length === 0) {
|
|
132
|
+
return null;
|
|
133
|
+
}
|
|
134
|
+
let node;
|
|
135
|
+
if (type === 'menu') {
|
|
136
|
+
const minHeight = utils.getItemsMinHeight(items);
|
|
137
|
+
const collapseItem = utils.getMoreButtonItem(menuMoreTitle);
|
|
138
|
+
node = (React.createElement("div", { className: b({ autosizer: true }), style: { minHeight } }, items.length !== 0 && (React.createElement(reactVirtualizedAutoSizer_esm, null, (size) => {
|
|
139
|
+
const width = Number.isNaN(size.width) ? 0 : size.width;
|
|
140
|
+
const height = Number.isNaN(size.height) ? 0 : size.height;
|
|
141
|
+
const { listItems, collapseItems } = utils.getAutosizeListItems(items, height, collapseItem);
|
|
142
|
+
return (React.createElement("div", { style: { width, height } },
|
|
143
|
+
React.createElement(CompositeBarView, { type: "menu", items: listItems, onItemClick: onItemClick, onMoreClick: onMoreClick, collapseItems: collapseItems, multipleTooltip: multipleTooltip })));
|
|
144
|
+
}))));
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
node = (React.createElement("div", { className: b({ subheader: true }) },
|
|
148
|
+
React.createElement(CompositeBarView, { type: "subheader", items: items, onItemClick: onItemClick })));
|
|
149
|
+
}
|
|
150
|
+
return React.createElement(MultipleTooltipContext.MultipleTooltipProvider, null, node);
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
exports.CompositeBar = CompositeBar;
|
|
154
|
+
//# sourceMappingURL=CompositeBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompositeBar.js","sources":["../../../../../src/components/CompositeBar/CompositeBar.tsx"],"sourcesContent":["import React, {FC, ReactNode, useCallback, useContext, useRef} from 'react';\n\nimport {List} from '@gravity-ui/uikit';\nimport AutoSizer, {Size} from 'react-virtualized-auto-sizer';\n\nimport {useAsideHeaderContext} from '../AsideHeader/AsideHeaderContext';\nimport {ASIDE_HEADER_COMPACT_WIDTH} from '../constants';\nimport {MenuItem, SubheaderMenuItem} from '../types';\nimport {block} from '../utils/cn';\n\nimport {Item, ItemProps} from './Item/Item';\nimport {MultipleTooltip, MultipleTooltipContext, MultipleTooltipProvider} from './MultipleTooltip';\nimport {COLLAPSE_ITEM_ID} from './constants';\nimport {\n getAutosizeListItems,\n getItemHeight,\n getItemsHeight,\n getItemsMinHeight,\n getMoreButtonItem,\n getSelectedItemIndex,\n isMenuItem,\n} from './utils';\n\nimport './CompositeBar.scss';\n\nconst b = block('composite-bar');\n\nexport type CompositeBarItem = MenuItem | SubheaderMenuItem;\n\ntype CompositeBarItems =\n | {type: 'menu'; items: MenuItem[]}\n | {type: 'subheader'; items: SubheaderMenuItem[]};\n\nexport type CompositeBarProps = CompositeBarItems & {\n onItemClick?: (\n item: MenuItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLElement, MouseEvent>,\n ) => void;\n multipleTooltip?: boolean;\n menuMoreTitle?: string;\n onMoreClick?: () => void;\n};\n\ntype CompositeBarViewProps = CompositeBarProps & {\n collapseItems?: MenuItem[];\n};\n\nconst CompositeBarView: FC<CompositeBarViewProps> = ({\n type,\n items,\n onItemClick,\n onMoreClick,\n collapseItems,\n multipleTooltip = false,\n}) => {\n const ref = useRef<List<CompositeBarItem>>(null);\n const tooltipRef = useRef<HTMLDivElement>(null);\n\n const {\n setValue: setMultipleTooltipContextValue,\n active: multipleTooltipActive,\n activeIndex,\n lastClickedItemIndex,\n } = useContext(MultipleTooltipContext);\n const {compact} = useAsideHeaderContext();\n\n React.useEffect(() => {\n function handleBlurWindow() {\n if (multipleTooltip && multipleTooltipActive) {\n setMultipleTooltipContextValue({active: false});\n }\n }\n\n window.addEventListener('blur', handleBlurWindow);\n\n return () => {\n window.removeEventListener('blur', handleBlurWindow);\n };\n }, [multipleTooltip, multipleTooltipActive, setMultipleTooltipContextValue]);\n\n const onTooltipMouseEnter = useCallback(\n (e: {clientX: number}) => {\n if (\n multipleTooltip &&\n compact &&\n !multipleTooltipActive &&\n document.hasFocus() &&\n activeIndex !== lastClickedItemIndex &&\n e.clientX <= ASIDE_HEADER_COMPACT_WIDTH\n ) {\n setMultipleTooltipContextValue?.({\n active: true,\n });\n }\n },\n [\n multipleTooltip,\n compact,\n multipleTooltipActive,\n activeIndex,\n lastClickedItemIndex,\n setMultipleTooltipContextValue,\n ],\n );\n\n const onTooltipMouseLeave = useCallback(() => {\n if (multipleTooltip && multipleTooltipActive && document.hasFocus()) {\n setMultipleTooltipContextValue?.({\n active: false,\n lastClickedItemIndex: undefined,\n });\n }\n }, [multipleTooltip, multipleTooltipActive, setMultipleTooltipContextValue]);\n\n const onMouseEnterByIndex = useCallback(\n (itemIndex: number) => () => {\n if (multipleTooltip && document.hasFocus()) {\n let multipleTooltipActiveValue = multipleTooltipActive;\n if (!multipleTooltipActive && itemIndex !== lastClickedItemIndex) {\n multipleTooltipActiveValue = true;\n }\n if (\n activeIndex === itemIndex &&\n multipleTooltipActive === multipleTooltipActiveValue\n ) {\n return;\n }\n setMultipleTooltipContextValue({\n activeIndex: itemIndex,\n active: multipleTooltipActiveValue,\n });\n }\n },\n [\n multipleTooltip,\n multipleTooltipActive,\n lastClickedItemIndex,\n activeIndex,\n setMultipleTooltipContextValue,\n ],\n );\n\n const onMouseLeave = useCallback(() => {\n if (compact && document.hasFocus()) {\n ref.current?.activateItem(undefined as unknown as number);\n if (\n multipleTooltip &&\n (activeIndex !== undefined || lastClickedItemIndex !== undefined)\n ) {\n setMultipleTooltipContextValue({\n activeIndex: undefined,\n lastClickedItemIndex: undefined,\n });\n }\n }\n }, [\n activeIndex,\n compact,\n lastClickedItemIndex,\n multipleTooltip,\n setMultipleTooltipContextValue,\n ]);\n\n const onItemClickByIndex = useCallback(\n (itemIndex: number): ItemProps['onItemClick'] =>\n (item, collapsed, event) => {\n if (\n compact &&\n multipleTooltip &&\n itemIndex !== lastClickedItemIndex &&\n item.id !== COLLAPSE_ITEM_ID\n ) {\n setMultipleTooltipContextValue({\n lastClickedItemIndex: itemIndex,\n active: false,\n });\n }\n onItemClick?.(item, collapsed, event);\n },\n [\n compact,\n lastClickedItemIndex,\n multipleTooltip,\n onItemClick,\n setMultipleTooltipContextValue,\n ],\n );\n\n return (\n <React.Fragment>\n <div\n ref={tooltipRef}\n onMouseEnter={onTooltipMouseEnter}\n onMouseLeave={onTooltipMouseLeave}\n >\n <List<CompositeBarItem>\n ref={ref}\n items={items}\n selectedItemIndex={type === 'menu' ? getSelectedItemIndex(items) : undefined}\n itemHeight={getItemHeight}\n itemsHeight={getItemsHeight}\n itemClassName={b('root-menu-item')}\n virtualized={false}\n filterable={false}\n sortable={false}\n renderItem={(item, _isItemActive, itemIndex) => {\n const itemExtraProps = isMenuItem(item) ? {item} : item;\n const enableTooltip = isMenuItem(item)\n ? !multipleTooltip\n : item.enableTooltip;\n\n return (\n <Item\n {...itemExtraProps}\n enableTooltip={enableTooltip}\n onMouseEnter={onMouseEnterByIndex(itemIndex)}\n onMouseLeave={onMouseLeave}\n onItemClick={onItemClickByIndex(itemIndex)}\n onCollapseItemClick={onMoreClick}\n collapseItems={collapseItems}\n />\n );\n }}\n />\n </div>\n {type === 'menu' && multipleTooltip && (\n <MultipleTooltip\n open={compact && multipleTooltipActive}\n anchorRef={tooltipRef}\n placement={['right-start']}\n items={items}\n />\n )}\n </React.Fragment>\n );\n};\n\nexport const CompositeBar: FC<CompositeBarProps> = ({\n type,\n items,\n menuMoreTitle,\n onItemClick,\n onMoreClick,\n multipleTooltip = false,\n}) => {\n if (items.length === 0) {\n return null;\n }\n let node: ReactNode;\n\n if (type === 'menu') {\n const minHeight = getItemsMinHeight(items);\n const collapseItem = getMoreButtonItem(menuMoreTitle);\n node = (\n <div className={b({autosizer: true})} style={{minHeight}}>\n {items.length !== 0 && (\n <AutoSizer>\n {(size: Size) => {\n const width = Number.isNaN(size.width) ? 0 : size.width;\n const height = Number.isNaN(size.height) ? 0 : size.height;\n\n const {listItems, collapseItems} = getAutosizeListItems(\n items,\n height,\n collapseItem,\n );\n return (\n <div style={{width, height}}>\n <CompositeBarView\n type=\"menu\"\n items={listItems}\n onItemClick={onItemClick}\n onMoreClick={onMoreClick}\n collapseItems={collapseItems}\n multipleTooltip={multipleTooltip}\n />\n </div>\n );\n }}\n </AutoSizer>\n )}\n </div>\n );\n } else {\n node = (\n <div className={b({subheader: true})}>\n <CompositeBarView type=\"subheader\" items={items} onItemClick={onItemClick} />\n </div>\n );\n }\n return <MultipleTooltipProvider>{node}</MultipleTooltipProvider>;\n};\n"],"names":["block","useRef","useContext","MultipleTooltipContext","useAsideHeaderContext","useCallback","ASIDE_HEADER_COMPACT_WIDTH","COLLAPSE_ITEM_ID","List","getSelectedItemIndex","getItemHeight","getItemsHeight","isMenuItem","Item","MultipleTooltip","getItemsMinHeight","getMoreButtonItem","AutoSizer","getAutosizeListItems","MultipleTooltipProvider"],"mappings":";;;;;;;;;;;;;;;AAyBA,MAAM,CAAC,GAAGA,QAAK,CAAC,eAAe,CAAC;AAuBhC,MAAM,gBAAgB,GAA8B,CAAC,EACjD,IAAI,EACJ,KAAK,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,eAAe,GAAG,KAAK,GAC1B,KAAI;AACD,IAAA,MAAM,GAAG,GAAGC,YAAM,CAAyB,IAAI,CAAC;AAChD,IAAA,MAAM,UAAU,GAAGA,YAAM,CAAiB,IAAI,CAAC;AAE/C,IAAA,MAAM,EACF,QAAQ,EAAE,8BAA8B,EACxC,MAAM,EAAE,qBAAqB,EAC7B,WAAW,EACX,oBAAoB,GACvB,GAAGC,gBAAU,CAACC,6CAAsB,CAAC;AACtC,IAAA,MAAM,EAAC,OAAO,EAAC,GAAGC,wCAAqB,EAAE;AAEzC,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACjB,QAAA,SAAS,gBAAgB,GAAA;AACrB,YAAA,IAAI,eAAe,IAAI,qBAAqB,EAAE;AAC1C,gBAAA,8BAA8B,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC;;;AAIvD,QAAA,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC;AAEjD,QAAA,OAAO,MAAK;AACR,YAAA,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,CAAC;AACxD,SAAC;KACJ,EAAE,CAAC,eAAe,EAAE,qBAAqB,EAAE,8BAA8B,CAAC,CAAC;AAE5E,IAAA,MAAM,mBAAmB,GAAGC,iBAAW,CACnC,CAAC,CAAoB,KAAI;AACrB,QAAA,IACI,eAAe;YACf,OAAO;AACP,YAAA,CAAC,qBAAqB;YACtB,QAAQ,CAAC,QAAQ,EAAE;AACnB,YAAA,WAAW,KAAK,oBAAoB;AACpC,YAAA,CAAC,CAAC,OAAO,IAAIC,oCAA0B,EACzC;AACE,YAAA,8BAA8B,KAA9B,IAAA,IAAA,8BAA8B,KAA9B,SAAA,GAAA,SAAA,GAAA,8BAA8B,CAAG;AAC7B,gBAAA,MAAM,EAAE,IAAI;AACf,aAAA,CAAC;;AAEV,KAAC,EACD;QACI,eAAe;QACf,OAAO;QACP,qBAAqB;QACrB,WAAW;QACX,oBAAoB;QACpB,8BAA8B;AACjC,KAAA,CACJ;AAED,IAAA,MAAM,mBAAmB,GAAGD,iBAAW,CAAC,MAAK;QACzC,IAAI,eAAe,IAAI,qBAAqB,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE;AACjE,YAAA,8BAA8B,KAA9B,IAAA,IAAA,8BAA8B,KAA9B,SAAA,GAAA,SAAA,GAAA,8BAA8B,CAAG;AAC7B,gBAAA,MAAM,EAAE,KAAK;AACb,gBAAA,oBAAoB,EAAE,SAAS;AAClC,aAAA,CAAC;;KAET,EAAE,CAAC,eAAe,EAAE,qBAAqB,EAAE,8BAA8B,CAAC,CAAC;IAE5E,MAAM,mBAAmB,GAAGA,iBAAW,CACnC,CAAC,SAAiB,KAAK,MAAK;AACxB,QAAA,IAAI,eAAe,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE;YACxC,IAAI,0BAA0B,GAAG,qBAAqB;AACtD,YAAA,IAAI,CAAC,qBAAqB,IAAI,SAAS,KAAK,oBAAoB,EAAE;gBAC9D,0BAA0B,GAAG,IAAI;;YAErC,IACI,WAAW,KAAK,SAAS;gBACzB,qBAAqB,KAAK,0BAA0B,EACtD;gBACE;;AAEJ,YAAA,8BAA8B,CAAC;AAC3B,gBAAA,WAAW,EAAE,SAAS;AACtB,gBAAA,MAAM,EAAE,0BAA0B;AACrC,aAAA,CAAC;;AAEV,KAAC,EACD;QACI,eAAe;QACf,qBAAqB;QACrB,oBAAoB;QACpB,WAAW;QACX,8BAA8B;AACjC,KAAA,CACJ;AAED,IAAA,MAAM,YAAY,GAAGA,iBAAW,CAAC,MAAK;;AAClC,QAAA,IAAI,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE;YAChC,CAAA,EAAA,GAAA,GAAG,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAE,YAAY,CAAC,SAA8B,CAAC;AACzD,YAAA,IACI,eAAe;iBACd,WAAW,KAAK,SAAS,IAAI,oBAAoB,KAAK,SAAS,CAAC,EACnE;AACE,gBAAA,8BAA8B,CAAC;AAC3B,oBAAA,WAAW,EAAE,SAAS;AACtB,oBAAA,oBAAoB,EAAE,SAAS;AAClC,iBAAA,CAAC;;;AAGd,KAAC,EAAE;QACC,WAAW;QACX,OAAO;QACP,oBAAoB;QACpB,eAAe;QACf,8BAA8B;AACjC,KAAA,CAAC;AAEF,IAAA,MAAM,kBAAkB,GAAGA,iBAAW,CAClC,CAAC,SAAiB,KACd,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,KAAI;AACvB,QAAA,IACI,OAAO;YACP,eAAe;AACf,YAAA,SAAS,KAAK,oBAAoB;AAClC,YAAA,IAAI,CAAC,EAAE,KAAKE,4BAAgB,EAC9B;AACE,YAAA,8BAA8B,CAAC;AAC3B,gBAAA,oBAAoB,EAAE,SAAS;AAC/B,gBAAA,MAAM,EAAE,KAAK;AAChB,aAAA,CAAC;;QAEN,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,SAAA,GAAA,SAAA,GAAX,WAAW,CAAG,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC;AACzC,KAAC,EACL;QACI,OAAO;QACP,oBAAoB;QACpB,eAAe;QACf,WAAW;QACX,8BAA8B;AACjC,KAAA,CACJ;AAED,IAAA,QACI,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,QAAQ,EAAA,IAAA;QACX,KACI,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,GAAG,EAAE,UAAU,EACf,YAAY,EAAE,mBAAmB,EACjC,YAAY,EAAE,mBAAmB,EAAA;AAEjC,YAAA,KAAA,CAAA,aAAA,CAACC,UAAI,EAAA,EACD,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,IAAI,KAAK,MAAM,GAAGC,0BAAoB,CAAC,KAAK,CAAC,GAAG,SAAS,EAC5E,UAAU,EAAEC,mBAAa,EACzB,WAAW,EAAEC,oBAAc,EAC3B,aAAa,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAClC,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,KAAK,EACjB,QAAQ,EAAE,KAAK,EACf,UAAU,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,KAAI;AAC3C,oBAAA,MAAM,cAAc,GAAGC,gBAAU,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,EAAC,GAAG,IAAI;AACvD,oBAAA,MAAM,aAAa,GAAGA,gBAAU,CAAC,IAAI;0BAC/B,CAAC;AACH,0BAAE,IAAI,CAAC,aAAa;AAExB,oBAAA,QACI,KAAC,CAAA,aAAA,CAAAC,SAAI,EACG,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,cAAc,IAClB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,mBAAmB,CAAC,SAAS,CAAC,EAC5C,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,kBAAkB,CAAC,SAAS,CAAC,EAC1C,mBAAmB,EAAE,WAAW,EAChC,aAAa,EAAE,aAAa,EAAA,CAAA,CAC9B;AAEV,iBAAC,GACH,CACA;AACL,QAAA,IAAI,KAAK,MAAM,IAAI,eAAe,KAC/B,KAAA,CAAA,aAAA,CAACC,+BAAe,EAAA,EACZ,IAAI,EAAE,OAAO,IAAI,qBAAqB,EACtC,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,CAAC,aAAa,CAAC,EAC1B,KAAK,EAAE,KAAK,EAAA,CACd,CACL,CACY;AAEzB,CAAC;MAEY,YAAY,GAA0B,CAAC,EAChD,IAAI,EACJ,KAAK,EACL,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,GAAG,KAAK,GAC1B,KAAI;AACD,IAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACpB,QAAA,OAAO,IAAI;;AAEf,IAAA,IAAI,IAAe;AAEnB,IAAA,IAAI,IAAI,KAAK,MAAM,EAAE;AACjB,QAAA,MAAM,SAAS,GAAGC,uBAAiB,CAAC,KAAK,CAAC;AAC1C,QAAA,MAAM,YAAY,GAAGC,uBAAiB,CAAC,aAAa,CAAC;AACrD,QAAA,IAAI,IACA,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,EAAE,KAAK,EAAE,EAAC,SAAS,EAAC,EAAA,EACnD,KAAK,CAAC,MAAM,KAAK,CAAC,KACf,oBAACC,6BAAS,EAAA,IAAA,EACL,CAAC,IAAU,KAAI;YACZ,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK;YACvD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;AAE1D,YAAA,MAAM,EAAC,SAAS,EAAE,aAAa,EAAC,GAAGC,0BAAoB,CACnD,KAAK,EACL,MAAM,EACN,YAAY,CACf;YACD,QACI,6BAAK,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,EAAA;AACvB,gBAAA,KAAA,CAAA,aAAA,CAAC,gBAAgB,EAAA,EACb,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAAA,CAClC,CACA;AAEd,SAAC,CACO,CACf,CACC,CACT;;SACE;AACH,QAAA,IAAI,IACA,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,CAAC,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,EAAA;AAChC,YAAA,KAAA,CAAA,aAAA,CAAC,gBAAgB,EAAC,EAAA,IAAI,EAAC,WAAW,EAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAI,CAAA,CAC3E,CACT;;AAEL,IAAA,OAAO,KAAC,CAAA,aAAA,CAAAC,8CAAuB,EAAE,IAAA,EAAA,IAAI,CAA2B;AACpE;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var styleInject_es = require('../../node_modules/style-inject/dist/style-inject.es.js');
|
|
4
|
+
|
|
5
|
+
var css_248z = ".gn-composite-bar{flex:1 0 auto;min-height:40px;width:100%}.gn-composite-bar .gn-composite-bar__root-menu-item[class]{background-color:transparent}";
|
|
6
|
+
styleInject_es(css_248z);
|
|
7
|
+
|
|
8
|
+
module.exports = css_248z;
|
|
9
|
+
//# sourceMappingURL=CompositeBar.scss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompositeBar.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var uikit = require('@gravity-ui/uikit');
|
|
5
|
+
var debounce = require('../../../_virtual/debounce.js');
|
|
6
|
+
var AsideHeaderContext = require('../../AsideHeader/AsideHeaderContext.js');
|
|
7
|
+
var cn = require('../../utils/cn.js');
|
|
8
|
+
require('./HighlightedItem.scss.js');
|
|
9
|
+
|
|
10
|
+
const b = cn.block('composite-bar-highlighted-item');
|
|
11
|
+
const DEBOUNCE_TIME = 200;
|
|
12
|
+
const HighlightedItem = ({ iconRef, iconNode, onClick, onClickCapture, }) => {
|
|
13
|
+
const { openModalSubscriber } = AsideHeaderContext.useAsideHeaderInnerContext();
|
|
14
|
+
const [{ top, left, width, height }, setPosition] = React.useState({
|
|
15
|
+
top: 0,
|
|
16
|
+
left: 0,
|
|
17
|
+
width: 0,
|
|
18
|
+
height: 0,
|
|
19
|
+
});
|
|
20
|
+
const [isModalOpen, setIsModalOpen] = React.useState(false);
|
|
21
|
+
const handleResizeDebounced = React.useMemo(() => debounce(() => {
|
|
22
|
+
var _a;
|
|
23
|
+
const { top = 0, left = 0, width = 0, height = 0, } = ((_a = iconRef === null || iconRef === undefined ? undefined : iconRef.current) === null || _a === undefined ? undefined : _a.getBoundingClientRect()) || {};
|
|
24
|
+
setPosition({
|
|
25
|
+
top: top + window.scrollY,
|
|
26
|
+
left: left + window.scrollX,
|
|
27
|
+
width,
|
|
28
|
+
height,
|
|
29
|
+
});
|
|
30
|
+
}, DEBOUNCE_TIME, { leading: true }), [iconRef]);
|
|
31
|
+
const handleResize = React.useCallback(() => handleResizeDebounced(), [handleResizeDebounced]);
|
|
32
|
+
React.useEffect(() => {
|
|
33
|
+
if (!isModalOpen) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
handleResize();
|
|
37
|
+
window.addEventListener('resize', handleResize);
|
|
38
|
+
return () => window.removeEventListener('resize', handleResize);
|
|
39
|
+
}, [handleResize, isModalOpen]);
|
|
40
|
+
openModalSubscriber === null || openModalSubscriber === undefined ? undefined : openModalSubscriber((open) => {
|
|
41
|
+
setIsModalOpen(open);
|
|
42
|
+
});
|
|
43
|
+
if (!iconNode || !isModalOpen) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
return (React.createElement(uikit.Portal, null,
|
|
47
|
+
React.createElement("div", { className: b(), style: { left, top, width, height }, onClick: onClick, onClickCapture: onClickCapture, "data-toast": true },
|
|
48
|
+
React.createElement("div", { className: b('icon') }, iconNode))));
|
|
49
|
+
};
|
|
50
|
+
HighlightedItem.displayName = 'HighlightedItem';
|
|
51
|
+
|
|
52
|
+
exports.HighlightedItem = HighlightedItem;
|
|
53
|
+
//# sourceMappingURL=HighlightedItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HighlightedItem.js","sources":["../../../../../../src/components/CompositeBar/HighlightedItem/HighlightedItem.tsx"],"sourcesContent":["import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {Portal} from '@gravity-ui/uikit';\nimport debounceFn from 'lodash/debounce';\n\nimport {useAsideHeaderInnerContext} from '../../AsideHeader/AsideHeaderContext';\nimport {block} from '../../utils/cn';\n\nimport './HighlightedItem.scss';\n\nconst b = block('composite-bar-highlighted-item');\n\ninterface ItemInnerProps {\n iconRef: React.RefObject<HTMLDivElement>;\n iconNode: React.ReactNode;\n onClick?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onClickCapture?: (event: React.SyntheticEvent) => void;\n}\n\nconst DEBOUNCE_TIME = 200;\n\nexport const HighlightedItem: React.FC<ItemInnerProps> = ({\n iconRef,\n iconNode,\n onClick,\n onClickCapture,\n}: ItemInnerProps) => {\n const {openModalSubscriber} = useAsideHeaderInnerContext();\n const [{top, left, width, height}, setPosition] = useState({\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n });\n const [isModalOpen, setIsModalOpen] = useState<boolean>(false);\n\n const handleResizeDebounced = useMemo(\n () =>\n debounceFn(\n () => {\n const {\n top = 0,\n left = 0,\n width = 0,\n height = 0,\n } = iconRef?.current?.getBoundingClientRect() || {};\n\n setPosition({\n top: top + window.scrollY,\n left: left + window.scrollX,\n width,\n height,\n });\n },\n DEBOUNCE_TIME,\n {leading: true},\n ),\n [iconRef],\n );\n\n const handleResize = useCallback(() => handleResizeDebounced(), [handleResizeDebounced]);\n\n useEffect(() => {\n if (!isModalOpen) {\n return;\n }\n\n handleResize();\n\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, [handleResize, isModalOpen]);\n\n openModalSubscriber?.((open: boolean) => {\n setIsModalOpen(open);\n });\n\n if (!iconNode || !isModalOpen) {\n return null;\n }\n\n return (\n <Portal>\n <div\n className={b()}\n style={{left, top, width, height}}\n onClick={onClick}\n onClickCapture={onClickCapture}\n data-toast\n >\n <div className={b('icon')}>{iconNode}</div>\n </div>\n </Portal>\n );\n};\n\nHighlightedItem.displayName = 'HighlightedItem';\n"],"names":["block","useAsideHeaderInnerContext","useState","useMemo","debounceFn","useCallback","useEffect","Portal"],"mappings":";;;;;;;;;AAUA,MAAM,CAAC,GAAGA,QAAK,CAAC,gCAAgC,CAAC;AASjD,MAAM,aAAa,GAAG,GAAG;AAElB,MAAM,eAAe,GAA6B,CAAC,EACtD,OAAO,EACP,QAAQ,EACR,OAAO,EACP,cAAc,GACD,KAAI;AACjB,IAAA,MAAM,EAAC,mBAAmB,EAAC,GAAGC,6CAA0B,EAAE;AAC1D,IAAA,MAAM,CAAC,EAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAC,EAAE,WAAW,CAAC,GAAGC,cAAQ,CAAC;AACvD,QAAA,GAAG,EAAE,CAAC;AACN,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,KAAK,EAAE,CAAC;AACR,QAAA,MAAM,EAAE,CAAC;AACZ,KAAA,CAAC;IACF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAGA,cAAQ,CAAU,KAAK,CAAC;IAE9D,MAAM,qBAAqB,GAAGC,aAAO,CACjC,MACIC,QAAU,CACN,MAAK;;AACD,QAAA,MAAM,EACF,GAAG,GAAG,CAAC,EACP,IAAI,GAAG,CAAC,EACR,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,GACb,GAAG,CAAA,CAAA,EAAA,GAAA,OAAO,KAAA,IAAA,IAAP,OAAO,KAAP,SAAA,GAAA,SAAA,GAAA,OAAO,CAAE,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,SAAA,GAAA,SAAA,GAAA,EAAA,CAAA,qBAAqB,EAAE,KAAI,EAAE;AAEnD,QAAA,WAAW,CAAC;AACR,YAAA,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,OAAO;AACzB,YAAA,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,OAAO;YAC3B,KAAK;YACL,MAAM;AACT,SAAA,CAAC;AACN,KAAC,EACD,aAAa,EACb,EAAC,OAAO,EAAE,IAAI,EAAC,CAClB,EACL,CAAC,OAAO,CAAC,CACZ;AAED,IAAA,MAAM,YAAY,GAAGC,iBAAW,CAAC,MAAM,qBAAqB,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC;IAExFC,eAAS,CAAC,MAAK;QACX,IAAI,CAAC,WAAW,EAAE;YACd;;AAGJ,QAAA,YAAY,EAAE;AAEd,QAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC;QAC/C,OAAO,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC;AACnE,KAAC,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAE/B,mBAAmB,KAAA,IAAA,IAAnB,mBAAmB,KAAnB,SAAA,GAAA,SAAA,GAAA,mBAAmB,CAAG,CAAC,IAAa,KAAI;QACpC,cAAc,CAAC,IAAI,CAAC;AACxB,KAAC,CAAC;AAEF,IAAA,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC3B,QAAA,OAAO,IAAI;;IAGf,QACI,oBAACC,YAAM,EAAA,IAAA;QACH,KACI,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAC,EAAE,EACd,KAAK,EAAE,EAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAC,EACjC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA;AAG9B,YAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EAAG,EAAA,QAAQ,CAAO,CACzC,CACD;AAEjB;AAEA,eAAe,CAAC,WAAW,GAAG,iBAAiB;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var styleInject_es = require('../../../node_modules/style-inject/dist/style-inject.es.js');
|
|
4
|
+
|
|
5
|
+
var css_248z = ".gn-composite-bar-highlighted-item{--_--background-color:var(--g-color-base-background);--_--item-icon-background-size:38px;--_--item-background-color-hover:var(--g-color-base-selection-hover);--_--item-selected-background-color-active:var(--g-color-base-selection);display:flex;justify-content:center;position:absolute;z-index:10000}.gn-composite-bar-highlighted-item__icon{align-items:center;background-color:var(--gn-aside-header-background-color,var(--_--background-color));border-radius:7px;box-shadow:0 8px 20px 0 var(--g-color-sfx-shadow);cursor:pointer;display:flex;height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));justify-content:center;overflow:hidden;position:relative;transform:translateY(1px);width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size))}.gn-composite-bar-highlighted-item__icon:before{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active));content:\"\";height:100%;position:absolute;width:100%;z-index:-1}.gn-composite-bar-highlighted-item__icon:hover:before{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover))}";
|
|
6
|
+
styleInject_es(css_248z);
|
|
7
|
+
|
|
8
|
+
module.exports = css_248z;
|
|
9
|
+
//# sourceMappingURL=HighlightedItem.scss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HighlightedItem.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var uikit = require('@gravity-ui/uikit');
|
|
5
|
+
var AsideHeaderContext = require('../../AsideHeader/AsideHeaderContext.js');
|
|
6
|
+
var constants$1 = require('../../constants.js');
|
|
7
|
+
var cn = require('../../utils/cn.js');
|
|
8
|
+
var HighlightedItem = require('../HighlightedItem/HighlightedItem.js');
|
|
9
|
+
var constants = require('../constants.js');
|
|
10
|
+
var utils = require('../utils.js');
|
|
11
|
+
require('./Item.scss.js');
|
|
12
|
+
|
|
13
|
+
const b = cn.block('composite-bar-item');
|
|
14
|
+
function renderItemTitle(item) {
|
|
15
|
+
let titleNode = React.createElement("div", { className: b('title-text') }, item.title);
|
|
16
|
+
if (item.rightAdornment) {
|
|
17
|
+
titleNode = (React.createElement(React.Fragment, null,
|
|
18
|
+
titleNode,
|
|
19
|
+
React.createElement("div", { className: b('title-adornment') }, item.rightAdornment)));
|
|
20
|
+
}
|
|
21
|
+
return titleNode;
|
|
22
|
+
}
|
|
23
|
+
const defaultPopupPlacement = ['right-end'];
|
|
24
|
+
const defaultPopupOffset = { mainAxis: -20, crossAxis: 8 };
|
|
25
|
+
const Item = (props) => {
|
|
26
|
+
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;
|
|
27
|
+
const { compact } = AsideHeaderContext.useAsideHeaderContext();
|
|
28
|
+
const [open, toggleOpen] = React.useState(false);
|
|
29
|
+
const ref = React.useRef(null);
|
|
30
|
+
const anchorRef = popupAnchorElement ? { current: popupAnchorElement } : popupAnchor || ref;
|
|
31
|
+
const highlightedRef = React.useRef(null);
|
|
32
|
+
const type = item.type || constants.ITEM_TYPE_REGULAR;
|
|
33
|
+
const current = item.current || false;
|
|
34
|
+
const tooltipText = item.tooltipText || item.title;
|
|
35
|
+
const icon = item.icon;
|
|
36
|
+
const iconSize = item.iconSize || constants$1.ASIDE_HEADER_ICON_SIZE;
|
|
37
|
+
const iconQa = item.iconQa;
|
|
38
|
+
const collapsedItem = item.id === constants.COLLAPSE_ITEM_ID;
|
|
39
|
+
const handleClosePopup = React.useCallback((event) => {
|
|
40
|
+
var _a;
|
|
41
|
+
if (event instanceof MouseEvent &&
|
|
42
|
+
event.target &&
|
|
43
|
+
((_a = ref.current) === null || _a === undefined ? undefined : _a.contains(event.target))) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
onClosePopup === null || onClosePopup === undefined ? undefined : onClosePopup();
|
|
47
|
+
}, [onClosePopup]);
|
|
48
|
+
if (item.type === 'divider') {
|
|
49
|
+
return React.createElement("div", { className: b('menu-divider') });
|
|
50
|
+
}
|
|
51
|
+
const makeIconNode = (iconEl) => {
|
|
52
|
+
return compact ? (React.createElement(uikit.ActionTooltip, { title: "", description: tooltipText, disabled: !enableTooltip || (collapsedItem && open) || popupVisible, placement: "right", className: b('icon-tooltip', { 'item-type': type }) },
|
|
53
|
+
React.createElement("div", { onMouseEnter: () => onMouseEnter === null || onMouseEnter === undefined ? undefined : onMouseEnter(), onMouseLeave: () => onMouseLeave === null || onMouseLeave === undefined ? undefined : onMouseLeave(), className: b('btn-icon') }, iconEl))) : (iconEl);
|
|
54
|
+
};
|
|
55
|
+
const makeNode = ({ icon: iconEl, title: titleEl }) => {
|
|
56
|
+
const [Tag, tagProps] = item.link
|
|
57
|
+
? ['a', { href: item.link }]
|
|
58
|
+
: ['button', {}];
|
|
59
|
+
const handleMouseEnter = () => {
|
|
60
|
+
if (!compact) {
|
|
61
|
+
onMouseEnter === null || onMouseEnter === undefined ? undefined : onMouseEnter();
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
const handleMouseLeave = () => {
|
|
65
|
+
if (!compact) {
|
|
66
|
+
onMouseLeave === null || onMouseLeave === undefined ? undefined : onMouseLeave();
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
const handleClick = (event) => {
|
|
70
|
+
const target = event.currentTarget;
|
|
71
|
+
if (collapsedItem) {
|
|
72
|
+
/**
|
|
73
|
+
* If we call onItemClick for collapsedItem then:
|
|
74
|
+
* - User get unexpected item in onItemClick callback
|
|
75
|
+
* - onClosePanel calls twice for each popuped item, as result it will prevent opening of panelItems
|
|
76
|
+
*/
|
|
77
|
+
toggleOpen(!open);
|
|
78
|
+
}
|
|
79
|
+
else if (target instanceof HTMLDivElement) {
|
|
80
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, false, event);
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
const renderActionButton = () => (React.createElement("div", { className: compact ? b('action-container-compact') : b('action-container') },
|
|
84
|
+
React.createElement(uikit.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),
|
|
85
|
+
React.createElement("div", { className: b('action-btn-container') },
|
|
86
|
+
React.createElement("div", { className: b('action-icon') }, makeIconNode(iconEl)),
|
|
87
|
+
!compact && (React.createElement("div", { className: b('title'), title: typeof item.title === 'string' ? item.title : undefined }, titleEl))))));
|
|
88
|
+
const renderTagContainer = () => (React.createElement(Tag, Object.assign({}, tagProps, { className: b({ type, current, compact }, className), ref: ref, "data-qa": item.qa, onClick: (event) => {
|
|
89
|
+
if (collapsedItem) {
|
|
90
|
+
/**
|
|
91
|
+
* If we call onItemClick for collapsedItem then:
|
|
92
|
+
* - User get unexpected item in onItemClick callback
|
|
93
|
+
* - onClosePanel calls twice for each popuped item, as result it will prevent opening of panelItems
|
|
94
|
+
*/
|
|
95
|
+
toggleOpen(!open);
|
|
96
|
+
onCollapseItemClick === null || onCollapseItemClick === undefined ? undefined : onCollapseItemClick();
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, false, event);
|
|
100
|
+
}
|
|
101
|
+
}, onClickCapture: onItemClickCapture, onMouseEnter: () => {
|
|
102
|
+
if (!compact) {
|
|
103
|
+
onMouseEnter === null || onMouseEnter === undefined ? undefined : onMouseEnter();
|
|
104
|
+
}
|
|
105
|
+
}, onMouseLeave: () => {
|
|
106
|
+
if (!compact) {
|
|
107
|
+
onMouseLeave === null || onMouseLeave === undefined ? undefined : onMouseLeave();
|
|
108
|
+
}
|
|
109
|
+
} }),
|
|
110
|
+
React.createElement("div", { className: b('icon-place'), ref: highlightedRef }, makeIconNode(iconEl)),
|
|
111
|
+
React.createElement("div", { className: b('title'), title: typeof item.title === 'string' ? item.title : undefined }, titleEl)));
|
|
112
|
+
const createdNode = (React.createElement(React.Fragment, null,
|
|
113
|
+
type === 'action' ? renderActionButton() : renderTagContainer(),
|
|
114
|
+
renderPopupContent && (anchorRef === null || anchorRef === undefined ? undefined : anchorRef.current) && (React.createElement(uikit.Popup, { open: popupVisible, keepMounted: popupKeepMounted, placement: popupPlacement, offset: popupOffset, anchorRef: anchorRef, onClose: handleClosePopup, onOpenChange: onOpenChangePopup }, renderPopupContent()))));
|
|
115
|
+
if (item.link) {
|
|
116
|
+
return (React.createElement("a", { href: item.link, className: b('link') }, createdNode));
|
|
117
|
+
}
|
|
118
|
+
return createdNode;
|
|
119
|
+
};
|
|
120
|
+
const iconNode = icon ? (React.createElement(uikit.Icon, { qa: iconQa, data: icon, size: iconSize, className: b('icon') })) : null;
|
|
121
|
+
const titleNode = renderItemTitle(item);
|
|
122
|
+
const params = { icon: iconNode, title: titleNode };
|
|
123
|
+
let highlightedNode = null;
|
|
124
|
+
let node;
|
|
125
|
+
const opts = { compact: Boolean(compact), collapsed: false, item, ref };
|
|
126
|
+
if (typeof item.itemWrapper === 'function') {
|
|
127
|
+
node = item.itemWrapper(params, makeNode, opts);
|
|
128
|
+
highlightedNode =
|
|
129
|
+
bringForward &&
|
|
130
|
+
item.itemWrapper(params, ({ icon: iconEl }) => makeIconNode(iconEl), opts);
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
node = makeNode(params);
|
|
134
|
+
highlightedNode = bringForward && makeIconNode(iconNode);
|
|
135
|
+
}
|
|
136
|
+
return (React.createElement(React.Fragment, null,
|
|
137
|
+
bringForward && (React.createElement(HighlightedItem.HighlightedItem, { iconNode: highlightedNode, iconRef: highlightedRef, onClick: (event) => onItemClick === null || onItemClick === undefined ? undefined : onItemClick(item, false, event), onClickCapture: onItemClickCapture })),
|
|
138
|
+
node,
|
|
139
|
+
open && collapsedItem && (collapseItems === null || collapseItems === undefined ? undefined : collapseItems.length) && Boolean(anchorRef === null || anchorRef === undefined ? undefined : anchorRef.current) && (React.createElement(CollapsedPopup, Object.assign({}, props, { anchorRef: ref, onClose: () => toggleOpen(false) })))));
|
|
140
|
+
};
|
|
141
|
+
Item.displayName = 'Item';
|
|
142
|
+
function CollapsedPopup({ onItemClick, collapseItems, anchorRef, onClose, }) {
|
|
143
|
+
const { compact } = AsideHeaderContext.useAsideHeaderContext();
|
|
144
|
+
return (collapseItems === null || collapseItems === undefined ? undefined : collapseItems.length) ? (React.createElement(uikit.Popup, { placement: constants.POPUP_PLACEMENT, open: true, anchorRef: anchorRef, onClose: onClose },
|
|
145
|
+
React.createElement("div", { className: b('collapse-items-popup-content') },
|
|
146
|
+
React.createElement(uikit.List, { itemClassName: b('root-collapse-item'), items: collapseItems, selectedItemIndex: utils.getSelectedItemIndex(collapseItems), itemHeight: constants.POPUP_ITEM_HEIGHT, itemsHeight: collapseItems.length * constants.POPUP_ITEM_HEIGHT, virtualized: false, filterable: false, sortable: false, onItemClick: onClose, renderItem: (collapseItem) => {
|
|
147
|
+
const makeCollapseNode = ({ title: titleEl, icon: iconEl, }) => {
|
|
148
|
+
const [Tag, tagProps] = collapseItem.link
|
|
149
|
+
? ['a', { href: collapseItem.link }]
|
|
150
|
+
: ['button', {}];
|
|
151
|
+
return (React.createElement(Tag, Object.assign({}, tagProps, { className: b('collapse-item'), onClick: (event) => {
|
|
152
|
+
onItemClick === null || onItemClick === undefined ? undefined : onItemClick(collapseItem, true, event);
|
|
153
|
+
} }),
|
|
154
|
+
iconEl,
|
|
155
|
+
titleEl));
|
|
156
|
+
};
|
|
157
|
+
const titleNode = renderItemTitle(collapseItem);
|
|
158
|
+
const iconNode = collapseItem.icon && (React.createElement(uikit.Icon, { data: collapseItem.icon, size: 14, className: b('collapse-item-icon') }));
|
|
159
|
+
const params = { title: titleNode, icon: iconNode };
|
|
160
|
+
const opts = {
|
|
161
|
+
compact: Boolean(compact),
|
|
162
|
+
collapsed: true,
|
|
163
|
+
item: collapseItem,
|
|
164
|
+
ref: anchorRef,
|
|
165
|
+
};
|
|
166
|
+
if (typeof collapseItem.itemWrapper === 'function') {
|
|
167
|
+
return collapseItem.itemWrapper(params, makeCollapseNode, opts);
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
return makeCollapseNode(params);
|
|
171
|
+
}
|
|
172
|
+
} })))) : null;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
exports.Item = Item;
|
|
176
|
+
exports.defaultPopupOffset = defaultPopupOffset;
|
|
177
|
+
exports.defaultPopupPlacement = defaultPopupPlacement;
|
|
178
|
+
//# 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":["block","useAsideHeaderContext","ITEM_TYPE_REGULAR","ASIDE_HEADER_ICON_SIZE","COLLAPSE_ITEM_ID","ActionTooltip","Button","Popup","Icon","HighlightedItem","POPUP_PLACEMENT","List","getSelectedItemIndex","POPUP_ITEM_HEIGHT"],"mappings":"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"}
|