@gravity-ui/navigation 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/build/cjs/components/AsideHeader/AsideHeader.d.ts +1 -0
  3. package/build/cjs/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +2 -0
  4. package/build/cjs/components/AsideHeader/__stories__/AsideHeaderShowcase.d.ts +7 -2
  5. package/build/cjs/components/CompositeBar/CompositeBar.d.ts +7 -15
  6. package/build/cjs/components/CompositeBar/Item/Item.d.ts +1 -1
  7. package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltip.d.ts +8 -0
  8. package/build/cjs/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.d.ts +24 -0
  9. package/build/cjs/components/CompositeBar/MultipleTooltip/index.d.ts +3 -0
  10. package/build/cjs/components/CompositeBar/utils.d.ts +6 -1
  11. package/build/cjs/index.js +223 -148
  12. package/build/cjs/index.js.map +1 -1
  13. package/build/esm/components/AsideHeader/AsideHeader.d.ts +1 -0
  14. package/build/esm/components/AsideHeader/__stories__/AsideHeader.stories.d.ts +2 -0
  15. package/build/esm/components/AsideHeader/__stories__/AsideHeaderShowcase.d.ts +7 -2
  16. package/build/esm/components/CompositeBar/CompositeBar.d.ts +7 -15
  17. package/build/esm/components/CompositeBar/Item/Item.d.ts +1 -1
  18. package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltip.d.ts +8 -0
  19. package/build/esm/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.d.ts +24 -0
  20. package/build/esm/components/CompositeBar/MultipleTooltip/index.d.ts +3 -0
  21. package/build/esm/components/CompositeBar/utils.d.ts +6 -1
  22. package/build/esm/index.js +225 -150
  23. package/build/esm/index.js.map +1 -1
  24. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.10.0](https://github.com/gravity-ui/navigation/compare/v0.9.0...v0.10.0) (2023-07-25)
4
+
5
+
6
+ ### Features
7
+
8
+ * added MultipleTooltip ([#69](https://github.com/gravity-ui/navigation/issues/69)) ([ab35916](https://github.com/gravity-ui/navigation/commit/ab35916366457a1bc8cd81cd8c6d9811d3f2d82c))
9
+ * **CompositeBar:** rewritten to FC ([#67](https://github.com/gravity-ui/navigation/issues/67)) ([78f43b0](https://github.com/gravity-ui/navigation/commit/78f43b04c8eaa155a44e6953130476a85d0a4b40))
10
+ * **Item:** forward event to onItemClick ([#70](https://github.com/gravity-ui/navigation/issues/70)) ([ac571dc](https://github.com/gravity-ui/navigation/commit/ac571dca9cfec5fb3d919fee3a3cd4744c52a8e1))
11
+
3
12
  ## [0.9.0](https://github.com/gravity-ui/navigation/compare/v0.8.1...v0.9.0) (2023-07-04)
4
13
 
5
14
 
@@ -6,6 +6,7 @@ import './AsideHeader.scss';
6
6
  interface AsideHeaderGeneralProps {
7
7
  logo: LogoProps;
8
8
  compact: boolean;
9
+ multipleTooltip?: boolean;
9
10
  dict?: AsideHeaderDict;
10
11
  className?: string;
11
12
  renderContent?: RenderContentType;
@@ -2,3 +2,5 @@ import { Meta, Story } from '@storybook/react/types-6-0';
2
2
  declare const _default: Meta<import("@storybook/react/types-6-0").Args>;
3
3
  export default _default;
4
4
  export declare const Showcase: Story<import("@storybook/react/types-6-0").Args>;
5
+ export declare const Compact: Story<import("@storybook/react/types-6-0").Args>;
6
+ export declare const MultipleTooltip: Story<import("@storybook/react/types-6-0").Args>;
@@ -1,3 +1,8 @@
1
- /// <reference types="react" />
1
+ import { FC } from 'react';
2
2
  import './AsideHeaderShowcase.scss';
3
- export declare function AsideHeaderShowcase(): JSX.Element;
3
+ interface AsideHeaderShowcaseProps {
4
+ multipleTooltip?: boolean;
5
+ initialCompact?: boolean;
6
+ }
7
+ export declare const AsideHeaderShowcase: FC<AsideHeaderShowcaseProps>;
8
+ export {};
@@ -1,23 +1,15 @@
1
- import React from 'react';
1
+ import { FC } from 'react';
2
2
  import { AsideHeaderDict, MenuItem } from './../types';
3
3
  import './CompositeBar.scss';
4
- export interface CompositeBarProps {
4
+ interface CompositeBarBaseProps {
5
5
  items: MenuItem[];
6
6
  compact: boolean;
7
- enableCollapsing: boolean;
8
- dict?: AsideHeaderDict;
9
7
  onItemClick?: (item: MenuItem, collapsed: boolean) => void;
8
+ multipleTooltip?: boolean;
10
9
  }
11
- interface CompositeBarState {
12
- activeItemIndex?: number;
13
- }
14
- export declare class CompositeBar extends React.Component<CompositeBarProps> {
15
- state: CompositeBarState;
16
- private listRef;
17
- render(): JSX.Element | null;
18
- private renderAutosizeMenu;
19
- private renderMenu;
20
- private getMoreButtonItem;
21
- private getAutosizeListItems;
10
+ export interface CompositeBarProps extends CompositeBarBaseProps {
11
+ enableCollapsing: boolean;
12
+ dict?: AsideHeaderDict;
22
13
  }
14
+ export declare const CompositeBar: FC<CompositeBarProps>;
23
15
  export {};
@@ -14,7 +14,7 @@ interface ItemPopup {
14
14
  export interface ItemProps extends ItemPopup {
15
15
  item: MenuItem;
16
16
  enableTooltip?: boolean;
17
- onItemClick?: (item: MenuItem, collapsed: boolean) => void;
17
+ onItemClick?: (item: MenuItem, collapsed: boolean, event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
18
18
  }
19
19
  interface ItemInnerProps extends ItemProps {
20
20
  compact: boolean;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { PopupProps } from '@gravity-ui/uikit';
3
+ import { MenuItem } from '../../types';
4
+ import './MultipleTooltip.scss';
5
+ export declare type MultipleTooltipProps = Pick<PopupProps, 'open' | 'anchorRef' | 'placement'> & {
6
+ items: MenuItem[];
7
+ };
8
+ export declare const MultipleTooltip: React.FC<MultipleTooltipProps>;
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ interface MultipleTooltipContextProps {
3
+ active: boolean;
4
+ activeIndex: number | undefined;
5
+ hideCollapseItemTooltip: boolean;
6
+ lastClickedItemIndex: number | undefined;
7
+ setValue<K extends keyof Omit<MultipleTooltipContextProps, 'setValue'>>(value: Pick<Omit<MultipleTooltipContextProps, 'setValue'>, K> | Omit<MultipleTooltipContextProps, 'setValue'>): void;
8
+ }
9
+ export declare const MultipleTooltipContext: React.Context<MultipleTooltipContextProps>;
10
+ declare type MultipleTooltipProviderState = Omit<MultipleTooltipContextProps, 'setValue'>;
11
+ export declare class MultipleTooltipProvider extends React.PureComponent<{
12
+ children: React.ReactNode;
13
+ }, MultipleTooltipProviderState> {
14
+ state: {
15
+ active: boolean;
16
+ activeIndex: undefined;
17
+ hideCollapseItemTooltip: boolean;
18
+ lastClickedItemIndex: undefined;
19
+ setValue: () => void;
20
+ };
21
+ setValue: MultipleTooltipContextProps['setValue'];
22
+ render(): JSX.Element;
23
+ }
24
+ export {};
@@ -0,0 +1,3 @@
1
+ export type { MultipleTooltipProps } from './MultipleTooltip';
2
+ export { MultipleTooltip } from './MultipleTooltip';
3
+ export { MultipleTooltipContext, MultipleTooltipProvider } from './MultipleTooltipContext';
@@ -1,6 +1,11 @@
1
- import { MenuItem } from './../types';
1
+ import { AsideHeaderDict, MenuItem } from './../types';
2
2
  export declare function getItemHeight(item: MenuItem): 15 | 40 | 50;
3
3
  export declare function getItemsHeight(items: MenuItem[]): number;
4
4
  export declare function getSelectedItemIndex(items: MenuItem[]): number | undefined;
5
5
  export declare function getPinnedItems(items: MenuItem[]): MenuItem[];
6
6
  export declare function getItemsMinHeight(items: MenuItem[]): number;
7
+ export declare function getMoreButtonItem(dict?: AsideHeaderDict): MenuItem;
8
+ export declare function getAutosizeListItems(items: MenuItem[], height: number, collapseItem: MenuItem): {
9
+ listItems: MenuItem[];
10
+ collapseItems: MenuItem[];
11
+ };