@gravity-ui/navigation 0.14.0 → 0.16.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 (43) hide show
  1. package/build/cjs/components/AsideHeader/AsideHeader.d.ts +5 -3
  2. package/build/cjs/components/AsideHeader/__stories__/moc.d.ts +2 -0
  3. package/build/cjs/components/AsideHeader/i18n/index.d.ts +2 -0
  4. package/build/cjs/components/CompositeBar/CompositeBar.d.ts +11 -7
  5. package/build/cjs/components/CompositeBar/utils.d.ts +6 -4
  6. package/build/cjs/components/MobileHeader/Burger/Burger.d.ts +5 -2
  7. package/build/cjs/components/MobileHeader/MobileHeader.d.ts +2 -0
  8. package/build/cjs/components/MobileHeader/i18n/index.d.ts +2 -0
  9. package/build/cjs/components/Settings/Settings.d.ts +4 -7
  10. package/build/cjs/components/Settings/i18n/index.d.ts +2 -0
  11. package/build/cjs/components/Title/Title.d.ts +1 -3
  12. package/build/cjs/components/Title/i18n/index.d.ts +2 -0
  13. package/build/cjs/components/constants.d.ts +0 -7
  14. package/build/cjs/components/index.d.ts +1 -0
  15. package/build/cjs/components/types.d.ts +2 -10
  16. package/build/cjs/components/utils/registerKeyset.d.ts +5 -0
  17. package/build/cjs/i18n.d.ts +2 -0
  18. package/build/cjs/index.js +322 -62
  19. package/build/cjs/index.js.map +1 -1
  20. package/build/esm/components/AsideHeader/AsideHeader.d.ts +5 -3
  21. package/build/esm/components/AsideHeader/__stories__/moc.d.ts +2 -0
  22. package/build/esm/components/AsideHeader/i18n/index.d.ts +2 -0
  23. package/build/esm/components/CompositeBar/CompositeBar.d.ts +11 -7
  24. package/build/esm/components/CompositeBar/utils.d.ts +6 -4
  25. package/build/esm/components/MobileHeader/Burger/Burger.d.ts +5 -2
  26. package/build/esm/components/MobileHeader/MobileHeader.d.ts +2 -0
  27. package/build/esm/components/MobileHeader/i18n/index.d.ts +2 -0
  28. package/build/esm/components/Settings/Settings.d.ts +4 -7
  29. package/build/esm/components/Settings/i18n/index.d.ts +2 -0
  30. package/build/esm/components/Title/Title.d.ts +1 -3
  31. package/build/esm/components/Title/i18n/index.d.ts +2 -0
  32. package/build/esm/components/constants.d.ts +0 -7
  33. package/build/esm/components/index.d.ts +1 -0
  34. package/build/esm/components/types.d.ts +2 -10
  35. package/build/esm/components/utils/registerKeyset.d.ts +5 -0
  36. package/build/esm/i18n.d.ts +2 -0
  37. package/build/esm/index.js +322 -63
  38. package/build/esm/index.js.map +1 -1
  39. package/package.json +2 -1
  40. package/build/cjs/components/CompositeBar/__stories__/CompositeBar.stories.d.ts +0 -5
  41. package/build/cjs/components/CompositeBar/__stories__/moc.d.ts +0 -2
  42. package/build/esm/components/CompositeBar/__stories__/CompositeBar.stories.d.ts +0 -5
  43. package/build/esm/components/CompositeBar/__stories__/moc.d.ts +0 -2
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { MenuItem, AsideHeaderDict, LogoProps } from '../types';
2
+ import { MenuItem, LogoProps, SubheaderMenuItem } from '../types';
3
3
  import { DrawerItemProps } from '../Drawer/Drawer';
4
4
  import { RenderContentType } from '../Content';
5
5
  import './AsideHeader.scss';
@@ -7,8 +7,10 @@ interface AsideHeaderGeneralProps {
7
7
  logo: LogoProps;
8
8
  compact: boolean;
9
9
  multipleTooltip?: boolean;
10
- dict?: AsideHeaderDict;
11
10
  className?: string;
11
+ collapseTitle?: string;
12
+ expandTitle?: string;
13
+ menuMoreTitle?: string;
12
14
  renderContent?: RenderContentType;
13
15
  renderFooter?: (data: {
14
16
  size: number;
@@ -20,7 +22,7 @@ interface AsideHeaderGeneralProps {
20
22
  }
21
23
  interface AsideHeaderDefaultProps {
22
24
  panelItems: DrawerItemProps[];
23
- subheaderItems: MenuItem[];
25
+ subheaderItems: SubheaderMenuItem[];
24
26
  menuItems: MenuItem[];
25
27
  headerDecoration: boolean;
26
28
  }
@@ -1 +1,3 @@
1
+ import { MenuItem } from 'src/components/types';
2
+ export declare const menuItemsShowcase: MenuItem[];
1
3
  export declare const text = "\nDid you attend? He sang by grove ripe -\nThe bard of love, the singer of his mourning.\nWhen fields were silent by the early morning,\nTo sad and simple sounds of a pipe\nDid you attend?\n\nDid you behold in dark of forest leaf\nThe bard of love, the singer of his sadness?\nThe trace of tears, the smile, the utter paleness,\nThe quiet look, full of eternal grief,\nDid you behold?\n\nThen did you sigh when hearing how cries\nThe bard of love, the singer of his dole?\nWhen in the woods you saw the young man, sole,\nAnd met the look of his extinguished eyes,\nThen did you sigh?\n";
@@ -0,0 +1,2 @@
1
+ declare const _default: (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
2
+ export default _default;
@@ -1,14 +1,18 @@
1
1
  import React, { FC } from 'react';
2
- import { AsideHeaderDict, MenuItem } from '../types';
2
+ import { MenuItem, SubheaderMenuItem } from '../types';
3
3
  import './CompositeBar.scss';
4
- interface CompositeBarBaseProps {
4
+ export type CompositeBarItem = MenuItem | SubheaderMenuItem;
5
+ type CompositeBarItems = {
6
+ type: 'menu';
5
7
  items: MenuItem[];
8
+ } | {
9
+ type: 'subheader';
10
+ items: SubheaderMenuItem[];
11
+ };
12
+ export type CompositeBarProps = CompositeBarItems & {
6
13
  onItemClick?: (item: MenuItem, collapsed: boolean, event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
7
14
  multipleTooltip?: boolean;
8
- }
9
- export interface CompositeBarProps extends CompositeBarBaseProps {
10
- enableCollapsing: boolean;
11
- dict?: AsideHeaderDict;
12
- }
15
+ menuMoreTitle?: string;
16
+ };
13
17
  export declare const CompositeBar: FC<CompositeBarProps>;
14
18
  export {};
@@ -1,11 +1,13 @@
1
- import { AsideHeaderDict, MenuItem } from './../types';
2
- export declare function getItemHeight(item: MenuItem): 15 | 40 | 50;
3
- export declare function getItemsHeight(items: MenuItem[]): number;
1
+ import { MenuItem } from './../types';
2
+ import { CompositeBarItem } from '../CompositeBar/CompositeBar';
3
+ export declare function getItemHeight(item: CompositeBarItem): 40 | 15 | 50;
4
+ export declare function getItemsHeight<T extends CompositeBarItem>(items: T[]): number;
4
5
  export declare function getSelectedItemIndex(items: MenuItem[]): number | undefined;
5
6
  export declare function getPinnedItems(items: MenuItem[]): MenuItem[];
6
7
  export declare function getItemsMinHeight(items: MenuItem[]): number;
7
- export declare function getMoreButtonItem(dict?: AsideHeaderDict): MenuItem;
8
+ export declare function getMoreButtonItem(menuMoreTitle?: string): MenuItem;
8
9
  export declare function getAutosizeListItems(items: MenuItem[], height: number, collapseItem: MenuItem): {
9
10
  listItems: MenuItem[];
10
11
  collapseItems: MenuItem[];
11
12
  };
13
+ export declare function isMenuItem(item: CompositeBarItem): item is MenuItem;
@@ -1,8 +1,11 @@
1
1
  import React from 'react';
2
2
  import './Burger.scss';
3
- export interface BurgerProps {
3
+ interface BurgerProps {
4
+ closeTitle: string;
5
+ openTitle: string;
4
6
  opened?: boolean;
5
7
  className?: string;
6
8
  onClick?: (event: React.MouseEvent<HTMLElement>) => void;
7
9
  }
8
- export declare const Burger: React.MemoExoticComponent<({ opened, className, onClick }: BurgerProps) => React.JSX.Element>;
10
+ export declare const Burger: React.MemoExoticComponent<({ closeTitle, openTitle, opened, className, onClick }: BurgerProps) => React.JSX.Element>;
11
+ export {};
@@ -16,6 +16,8 @@ interface PanelItem extends Omit<DrawerItemProps, 'visible'> {
16
16
  export interface MobileHeaderProps {
17
17
  logo: LogoProps;
18
18
  burgerMenu: BurgerMenuProps;
19
+ burgerCloseTitle?: string;
20
+ burgerOpenTitle?: string;
19
21
  panelItems?: PanelItem[];
20
22
  renderContent?: RenderContentType;
21
23
  sideItemRenderContent?: RenderContentType;
@@ -0,0 +1,2 @@
1
+ declare const _default: (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
2
+ export default _default;
@@ -2,18 +2,18 @@ import React from 'react';
2
2
  import { IconProps } from '@gravity-ui/uikit';
3
3
  import './Settings.scss';
4
4
  interface SettingsProps {
5
+ children: React.ReactNode;
6
+ title?: string;
7
+ filterPlaceholder?: string;
8
+ emptyPlaceholder?: string;
5
9
  initialPage?: string;
6
10
  onPageChange?: (page: string | undefined) => void;
7
- children: React.ReactNode;
8
11
  renderNotFound?: () => React.ReactNode;
9
12
  renderLoading?: () => React.ReactNode;
10
13
  loading?: boolean;
11
- dict?: SettingsDict;
12
14
  view?: 'normal' | 'mobile';
13
15
  onClose?: () => void;
14
16
  }
15
- type SettingsDict = Record<SettingsDictKeys, string>;
16
- type SettingsDictKeys = 'heading_settings' | 'placeholder_search' | 'not_found';
17
17
  interface SettingsGroupProps {
18
18
  id?: string;
19
19
  groupTitle: string;
@@ -43,9 +43,6 @@ interface SettingsItemProps {
43
43
  }
44
44
  export declare function Settings({ loading, renderLoading, children, view, ...props }: SettingsProps): React.JSX.Element;
45
45
  export declare namespace Settings {
46
- var defaultProps: {
47
- dict: SettingsDict;
48
- };
49
46
  var Group: ({ children }: SettingsGroupProps) => React.JSX.Element;
50
47
  var Page: ({ children }: SettingsPageProps) => React.JSX.Element;
51
48
  var Section: ({ children }: SettingsSectionProps) => React.JSX.Element;
@@ -0,0 +1,2 @@
1
+ declare const _default: (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
2
+ export default _default;
@@ -1,10 +1,8 @@
1
1
  import React from 'react';
2
2
  import './Title.scss';
3
- type TitleDictKeys = 'close';
4
- type TitleDict = Record<TitleDictKeys, string>;
5
3
  interface TitleProps {
6
4
  hasSeparator?: boolean;
7
- dict?: TitleDict;
5
+ closeTitle?: string;
8
6
  closeIconSize?: number;
9
7
  onClose?: () => void;
10
8
  }
@@ -0,0 +1,2 @@
1
+ declare const _default: (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
2
+ export default _default;
@@ -1,10 +1,3 @@
1
1
  export declare const ASIDE_HEADER_FOOTER_ICON_SIZE = 20;
2
2
  export declare const ASIDE_HEADER_COMPACT_WIDTH = 56;
3
3
  export declare const ASIDE_HEADER_EXPANDED_WIDTH = 236;
4
- export declare const defaultDict: {
5
- button_collapse: string;
6
- button_expand: string;
7
- button_more: string;
8
- "button_close-burger": string;
9
- "button_open-burger": string;
10
- };
@@ -8,3 +8,4 @@ export * from './HotkeysPanel';
8
8
  export * from './Settings';
9
9
  export * from './MobileHeader';
10
10
  export * from './types';
11
+ export { Lang, configure } from './utils/configure';
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { IconProps } from '@gravity-ui/uikit';
3
+ import { ItemProps } from 'src/components/CompositeBar/Item/Item';
3
4
  export type MenuItemType = 'regular' | 'action' | 'divider';
4
5
  export interface MakeItemParams {
5
6
  icon?: React.ReactNode;
@@ -26,16 +27,7 @@ export interface MenuItem {
26
27
  type?: MenuItemType;
27
28
  afterMoreButton?: boolean;
28
29
  }
29
- export declare enum MobileHeaderDict {
30
- CloseBurger = "button_close-burger",
31
- OpenBurger = "button_open-burger"
32
- }
33
- export declare enum Dict {
34
- ExpandButton = "button_expand",
35
- CollapseButton = "button_collapse",
36
- MoreButton = "button_more"
37
- }
38
- export type AsideHeaderDict = Record<Dict, string>;
30
+ export type SubheaderMenuItem = Omit<ItemProps, 'onItemClick' | 'onItemClickCapture'>;
39
31
  export interface LogoProps {
40
32
  text: (() => React.ReactNode) | string;
41
33
  icon?: IconProps['data'];
@@ -0,0 +1,5 @@
1
+ import { i18n } from '../../i18n';
2
+ import { Lang } from './configure';
3
+ type KeysData = Parameters<typeof i18n.registerKeyset>[2];
4
+ export declare function registerKeyset<T extends KeysData>(data: Record<Lang, T>, keysetName: string): (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
5
+ export {};
@@ -0,0 +1,2 @@
1
+ import { I18N } from '@gravity-ui/i18n';
2
+ export declare const i18n: I18N;