@consta/header 0.2.0 → 0.3.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 (102) hide show
  1. package/Badges/Badges.js +1 -1
  2. package/Badges/Badges.js.map +1 -1
  3. package/ButtonMenu/ButtonMenu.css +1 -0
  4. package/ButtonMenu/ButtonMenu.d.ts +5 -0
  5. package/ButtonMenu/ButtonMenu.js +2 -0
  6. package/ButtonMenu/ButtonMenu.js.map +1 -0
  7. package/ButtonMenu/helpers.d.ts +43 -0
  8. package/ButtonMenu/helpers.js +2 -0
  9. package/ButtonMenu/helpers.js.map +1 -0
  10. package/ButtonMenu/index.d.ts +1 -0
  11. package/ButtonMenu/index.js +2 -0
  12. package/ButtonMenu/index.js.map +1 -0
  13. package/ButtonMenu/types.d.ts +38 -0
  14. package/ButtonMenu/types.js +2 -0
  15. package/ButtonMenu/types.js.map +1 -0
  16. package/Header/Header.css +1 -1
  17. package/Header/Header.js +1 -1
  18. package/Header/Header.js.map +1 -1
  19. package/Header/HeaderSearch/HeaderSearch.css +1 -0
  20. package/Header/HeaderSearch/HeaderSearch.d.ts +15 -0
  21. package/Header/HeaderSearch/HeaderSearch.js +2 -0
  22. package/Header/HeaderSearch/HeaderSearch.js.map +1 -0
  23. package/Header/HeaderSearch/index.d.ts +1 -0
  24. package/Header/HeaderSearch/index.js +2 -0
  25. package/Header/HeaderSearch/index.js.map +1 -0
  26. package/Header/helpers.d.ts +9 -0
  27. package/Header/helpers.js +2 -0
  28. package/Header/helpers.js.map +1 -0
  29. package/Header/types.d.ts +68 -5
  30. package/Header/types.js +1 -1
  31. package/Header/types.js.map +1 -1
  32. package/Languages/Languages.d.ts +3 -0
  33. package/Languages/Languages.js +2 -0
  34. package/Languages/Languages.js.map +1 -0
  35. package/Languages/helpers.d.ts +20 -0
  36. package/Languages/helpers.js +2 -0
  37. package/Languages/helpers.js.map +1 -0
  38. package/Languages/index.d.ts +1 -0
  39. package/Languages/index.js +2 -0
  40. package/Languages/index.js.map +1 -0
  41. package/Languages/types.d.ts +23 -0
  42. package/Languages/types.js +2 -0
  43. package/Languages/types.js.map +1 -0
  44. package/Menu/Menu.js +1 -1
  45. package/Menu/Menu.js.map +1 -1
  46. package/Menu/helpers.d.ts +17 -4
  47. package/Menu/helpers.js +1 -1
  48. package/Menu/helpers.js.map +1 -1
  49. package/MobileMenu/MobileMenu.js +1 -1
  50. package/MobileMenu/MobileMenu.js.map +1 -1
  51. package/MobileMenu/types.d.ts +5 -2
  52. package/MobileMenu/types.js +1 -1
  53. package/MobileMenu/types.js.map +1 -1
  54. package/Notifications/Notifications.js +1 -1
  55. package/Notifications/Notifications.js.map +1 -1
  56. package/SelectMenu/SelectMenu.css +1 -0
  57. package/SelectMenu/SelectMenu.d.ts +5 -0
  58. package/SelectMenu/SelectMenu.js +2 -0
  59. package/SelectMenu/SelectMenu.js.map +1 -0
  60. package/SelectMenu/helpers.d.ts +40 -0
  61. package/SelectMenu/helpers.js +2 -0
  62. package/SelectMenu/helpers.js.map +1 -0
  63. package/SelectMenu/index.d.ts +1 -0
  64. package/SelectMenu/index.js +2 -0
  65. package/SelectMenu/index.js.map +1 -0
  66. package/SelectMenu/types.d.ts +33 -0
  67. package/SelectMenu/types.js +2 -0
  68. package/SelectMenu/types.js.map +1 -0
  69. package/TileMenu/TileMenu.js +1 -1
  70. package/TileMenu/TileMenu.js.map +1 -1
  71. package/TileMenu/TileMenuList/TileMenuList.js +1 -1
  72. package/TileMenu/TileMenuList/TileMenuList.js.map +1 -1
  73. package/TileMenu/helpers.d.ts +3 -3
  74. package/TileMenu/helpers.js +1 -1
  75. package/TileMenu/helpers.js.map +1 -1
  76. package/TileMenu/types.d.ts +5 -5
  77. package/TileMenu/types.js.map +1 -1
  78. package/VerticalMenu/VerticalMenu.js +1 -1
  79. package/VerticalMenu/VerticalMenu.js.map +1 -1
  80. package/VerticalMenu/VerticalMenuItem/VerticalMenuItem.js +1 -1
  81. package/VerticalMenu/VerticalMenuItem/VerticalMenuItem.js.map +1 -1
  82. package/VerticalMenu/VerticalMenuLevel/VerticalMenuLevel.css +1 -1
  83. package/VerticalMenu/VerticalMenuLevel/VerticalMenuLevel.js +1 -1
  84. package/VerticalMenu/VerticalMenuLevel/VerticalMenuLevel.js.map +1 -1
  85. package/VerticalMenu/helpers.d.ts +6 -3
  86. package/VerticalMenu/helpers.js +1 -1
  87. package/VerticalMenu/helpers.js.map +1 -1
  88. package/VerticalMenu/types.d.ts +8 -0
  89. package/__private__/AnimatedContextMenu/AnimatedContextMenu.css +1 -1
  90. package/__private__/AnimatedContextMenu/AnimatedContextMenu.js +1 -1
  91. package/__private__/AnimatedContextMenu/AnimatedContextMenu.js.map +1 -1
  92. package/__private__/helpers/getItemClick.d.ts +7 -0
  93. package/__private__/helpers/getItemClick.js +2 -0
  94. package/__private__/helpers/getItemClick.js.map +1 -0
  95. package/package.json +2 -2
  96. package/__private__/hooks/useHideElementsLine.d.ts +0 -8
  97. package/__private__/hooks/useHideElementsLine.js +0 -2
  98. package/__private__/hooks/useHideElementsLine.js.map +0 -1
  99. package/__private__/mixs/MixPopoverAnimate/MixPopoverAnimate.css +0 -1
  100. package/__private__/mixs/MixPopoverAnimate/MixPopoverAnimate.d.ts +0 -4
  101. package/__private__/mixs/MixPopoverAnimate/MixPopoverAnimate.js +0 -2
  102. package/__private__/mixs/MixPopoverAnimate/MixPopoverAnimate.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/VerticalMenu/helpers.ts"],"names":["defaultGetItemLabel","item","label","defaultGetItemActive","active","defaultGetItemHref","href","defaultGetItemOnClick","onClick","defaultGetItemTarget","target","defaultGetItemSubMenu","subMenu","withDefaultGetters","props","getItemLabel","getItemActive","getItemHref","getItemOnClick","getItemTarget","getItemSubMenu","getItemClick","onItemClick","e"],"mappings":"+DAYA,MAAO,MAAMA,CAAAA,mBAA8D,CAAGC,CAAI,EAAIA,CAAI,CAACC,KAApF,CACP,MAAO,MAAMC,CAAAA,oBAAgE,CAAGF,CAAI,EAAIA,CAAI,CAACG,MAAtF,CACP,MAAO,MAAMC,CAAAA,kBAA4D,CAAGJ,CAAI,EAAIA,CAAI,CAACK,IAAlF,CACP,MAAO,MAAMC,CAAAA,qBAAkE,CAAGN,CAAI,EACpFA,CAAI,CAACO,OADA,CAEP,MAAO,MAAMC,CAAAA,oBAAgE,CAAGR,CAAI,EAAIA,CAAI,CAACS,MAAtF,CACP,MAAO,MAAMC,CAAAA,qBAAkE,CAAGV,CAAI,EACpFA,CAAI,CAACW,OADA,CAGP,MAAO,SAASC,CAAAA,kBAAT,CAAkCC,CAAlC,CAAkE,CACvE,wBACKA,CADL,EAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBf,mBAFtC,CAGEgB,aAAa,CAAEF,CAAK,CAACE,aAAN,EAAuBb,oBAHxC,CAIEc,WAAW,CAAEH,CAAK,CAACG,WAAN,EAAqBZ,kBAJpC,CAKEa,cAAc,CAAEJ,CAAK,CAACI,cAAN,EAAwBX,qBAL1C,CAMEY,aAAa,CAAEL,CAAK,CAACK,aAAN,EAAuBV,oBANxC,CAOEW,cAAc,CAAEN,CAAK,CAACM,cAAN,EAAwBT,qBAP1C,EASD,CAED,MAAO,SAASU,CAAAA,YAAT,CACLpB,CADK,CAELiB,CAFK,CAGLI,CAHK,CAIoB,CACzB,MAAOC,CAAAA,CAAC,EAAI,cACVD,CADU,WACVA,CADU,QACVA,CAAW,CAAG,CAAEC,CAAC,CAADA,CAAF,CAAKtB,IAAI,CAAJA,CAAL,CAAH,CADD,WAEViB,CAAc,CAACjB,CAAD,CAFJ,qBAEV,EAAuBsB,CAAvB,CACD,CACF","sourcesContent":["import {\n DefaultItem,\n VerticalMenuProps,\n VerticalMenuPropGetItemActive,\n VerticalMenuPropGetItemHref,\n VerticalMenuPropGetItemLabel,\n VerticalMenuPropGetItemOnClick,\n VerticalMenuPropGetItemSubMenu,\n VerticalMenuPropGetItemTarget,\n VerticalMenuPropOnItemClick,\n} from './types'\n\nexport const defaultGetItemLabel: VerticalMenuPropGetItemLabel<DefaultItem> = item => item.label\nexport const defaultGetItemActive: VerticalMenuPropGetItemActive<DefaultItem> = item => item.active\nexport const defaultGetItemHref: VerticalMenuPropGetItemHref<DefaultItem> = item => item.href\nexport const defaultGetItemOnClick: VerticalMenuPropGetItemOnClick<DefaultItem> = item =>\n item.onClick\nexport const defaultGetItemTarget: VerticalMenuPropGetItemTarget<DefaultItem> = item => item.target\nexport const defaultGetItemSubMenu: VerticalMenuPropGetItemSubMenu<DefaultItem> = item =>\n item.subMenu\n\nexport function withDefaultGetters<ITEM>(props: VerticalMenuProps<ITEM>) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemActive: props.getItemActive || defaultGetItemActive,\n getItemHref: props.getItemHref || defaultGetItemHref,\n getItemOnClick: props.getItemOnClick || defaultGetItemOnClick,\n getItemTarget: props.getItemTarget || defaultGetItemTarget,\n getItemSubMenu: props.getItemSubMenu || defaultGetItemSubMenu,\n }\n}\n\nexport function getItemClick<ITEM>(\n item: ITEM,\n getItemOnClick: VerticalMenuPropGetItemOnClick<ITEM>,\n onItemClick?: VerticalMenuPropOnItemClick<ITEM>\n): React.MouseEventHandler {\n return e => {\n onItemClick?.({ e, item })\n getItemOnClick(item)?.(e)\n }\n}\n"],"file":"helpers.js"}
1
+ {"version":3,"sources":["../../src/VerticalMenu/helpers.ts"],"names":["defaultGetItemLabel","item","label","defaultGetItemActive","active","defaultGetItemHref","href","defaultGetItemOnClick","onClick","defaultGetItemTarget","target","defaultGetItemSubMenu","subMenu","defaultGetItemGroup","groupId","withDefaultGetters","props","getItemLabel","getItemActive","getItemHref","getItemOnClick","getItemTarget","getItemSubMenu","getItemGroup"],"mappings":"+DAYA,MAAO,MAAMA,CAAAA,mBAA8D,CAAGC,CAAI,EAAIA,CAAI,CAACC,KAApF,CACP,MAAO,MAAMC,CAAAA,oBAAgE,CAAGF,CAAI,EAAIA,CAAI,CAACG,MAAtF,CACP,MAAO,MAAMC,CAAAA,kBAA4D,CAAGJ,CAAI,EAAIA,CAAI,CAACK,IAAlF,CACP,MAAO,MAAMC,CAAAA,qBAAkE,CAAGN,CAAI,EACpFA,CAAI,CAACO,OADA,CAEP,MAAO,MAAMC,CAAAA,oBAAgE,CAAGR,CAAI,EAAIA,CAAI,CAACS,MAAtF,CACP,MAAO,MAAMC,CAAAA,qBAAkE,CAAGV,CAAI,EACpFA,CAAI,CAACW,OADA,CAEP,MAAO,MAAMC,CAAAA,mBAA8D,CAAGZ,CAAI,EAAIA,CAAI,CAACa,OAApF,CAEP,MAAO,SAASC,CAAAA,kBAAT,CAAkCC,CAAlC,CAAkE,CACvE,wBACKA,CADL,EAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBjB,mBAFtC,CAGEkB,aAAa,CAAEF,CAAK,CAACE,aAAN,EAAuBf,oBAHxC,CAIEgB,WAAW,CAAEH,CAAK,CAACG,WAAN,EAAqBd,kBAJpC,CAKEe,cAAc,CAAEJ,CAAK,CAACI,cAAN,EAAwBb,qBAL1C,CAMEc,aAAa,CAAEL,CAAK,CAACK,aAAN,EAAuBZ,oBANxC,CAOEa,cAAc,CAAEN,CAAK,CAACM,cAAN,EAAwBX,qBAP1C,CAQEY,YAAY,CAAEP,CAAK,CAACO,YAAN,EAAsBV,mBARtC,EAUD","sourcesContent":["import {\n DefaultItem,\n VerticalMenuProps,\n VerticalMenuPropGetItemActive,\n VerticalMenuPropGetItemHref,\n VerticalMenuPropGetItemLabel,\n VerticalMenuPropGetItemOnClick,\n VerticalMenuPropGetItemSubMenu,\n VerticalMenuPropGetItemTarget,\n VerticalMenuPropGetItemGroup,\n} from './types'\n\nexport const defaultGetItemLabel: VerticalMenuPropGetItemLabel<DefaultItem> = item => item.label\nexport const defaultGetItemActive: VerticalMenuPropGetItemActive<DefaultItem> = item => item.active\nexport const defaultGetItemHref: VerticalMenuPropGetItemHref<DefaultItem> = item => item.href\nexport const defaultGetItemOnClick: VerticalMenuPropGetItemOnClick<DefaultItem> = item =>\n item.onClick\nexport const defaultGetItemTarget: VerticalMenuPropGetItemTarget<DefaultItem> = item => item.target\nexport const defaultGetItemSubMenu: VerticalMenuPropGetItemSubMenu<DefaultItem> = item =>\n item.subMenu\nexport const defaultGetItemGroup: VerticalMenuPropGetItemGroup<DefaultItem> = item => item.groupId\n\nexport function withDefaultGetters<ITEM>(props: VerticalMenuProps<ITEM>) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemActive: props.getItemActive || defaultGetItemActive,\n getItemHref: props.getItemHref || defaultGetItemHref,\n getItemOnClick: props.getItemOnClick || defaultGetItemOnClick,\n getItemTarget: props.getItemTarget || defaultGetItemTarget,\n getItemSubMenu: props.getItemSubMenu || defaultGetItemSubMenu,\n getItemGroup: props.getItemGroup || defaultGetItemGroup,\n }\n}\n"],"file":"helpers.js"}
@@ -7,6 +7,7 @@ export declare type DefaultItem = {
7
7
  active?: boolean;
8
8
  onClick?: React.EventHandler<React.MouseEvent>;
9
9
  subMenu?: DefaultItem[];
10
+ groupId?: string;
10
11
  };
11
12
  export declare type VerticalMenuPropGetItemLabel<ITEM> = (item: ITEM) => string;
12
13
  export declare type VerticalMenuPropGetItemHref<ITEM> = (item: ITEM) => string | undefined;
@@ -18,6 +19,7 @@ export declare type VerticalMenuPropOnItemClick<ITEM> = (props: {
18
19
  e: React.MouseEvent;
19
20
  item: ITEM;
20
21
  }) => void;
22
+ export declare type VerticalMenuPropGetItemGroup<ITEM> = (item: ITEM) => string | number | undefined;
21
23
  export declare type VerticalMenuProps<ITEM = DefaultItem> = PropsWithHTMLAttributes<{
22
24
  items: ITEM[];
23
25
  getItemHref?: VerticalMenuPropGetItemHref<ITEM>;
@@ -27,7 +29,9 @@ export declare type VerticalMenuProps<ITEM = DefaultItem> = PropsWithHTMLAttribu
27
29
  getItemOnClick?: VerticalMenuPropGetItemOnClick<ITEM>;
28
30
  getItemSubMenu?: VerticalMenuPropGetItemSubMenu<ITEM>;
29
31
  onItemClick?: VerticalMenuPropOnItemClick<ITEM>;
32
+ getItemGroup?: VerticalMenuPropGetItemGroup<ITEM>;
30
33
  header?: React.ReactNode;
34
+ footer?: React.ReactNode;
31
35
  }, HTMLDivElement> & (ITEM extends {
32
36
  label: DefaultItem['label'];
33
37
  } ? {} : {
@@ -36,9 +40,11 @@ export declare type VerticalMenuProps<ITEM = DefaultItem> = PropsWithHTMLAttribu
36
40
  export declare type VerticalMenuComponent = <ITEM = DefaultItem>(props: VerticalMenuProps<ITEM>) => React.ReactElement | null;
37
41
  export declare type Level<ITEM> = {
38
42
  items: ITEM[];
43
+ id: string;
39
44
  label?: string;
40
45
  };
41
46
  export declare type VerticalMenuLevelProps<ITEM = DefaultItem> = PropsWithHTMLAttributesAndRef<{
47
+ id: string;
42
48
  items: ITEM[];
43
49
  getItemHref: VerticalMenuPropGetItemHref<ITEM>;
44
50
  getItemLabel: VerticalMenuPropGetItemLabel<ITEM>;
@@ -46,10 +52,12 @@ export declare type VerticalMenuLevelProps<ITEM = DefaultItem> = PropsWithHTMLAt
46
52
  getItemActive: VerticalMenuPropGetItemActive<ITEM>;
47
53
  getItemOnClick: VerticalMenuPropGetItemOnClick<ITEM>;
48
54
  getItemSubMenu: VerticalMenuPropGetItemSubMenu<ITEM>;
55
+ getItemGroup: VerticalMenuPropGetItemGroup<ITEM>;
49
56
  addLevel: (level: Level<ITEM>) => void;
50
57
  removeLevel: () => void;
51
58
  label?: string;
52
59
  header?: React.ReactNode;
60
+ footer?: React.ReactNode;
53
61
  }, HTMLDivElement>;
54
62
  export declare type VerticalMenuLevelComponent = <ITEM = DefaultItem>(props: VerticalMenuLevelProps<ITEM>) => React.ReactElement | null;
55
63
  export declare type VerticalMenuItemProps = PropsWithHTMLAttributes<{
@@ -1 +1 @@
1
- .che--AnimatedContextMenu_exit.ContextMenuLevel{pointer-events:none;opacity:0!important;transition:opacity .2s,transform .2s!important;transform:translateY(var(--space-s))!important}
1
+ .che--AnimatedContextMenu_exit.ContextMenuLevel{pointer-events:none;opacity:0!important;transition:opacity .2s,transform .2s!important;transform:var(--mix-dropdown-animate-transform)!important}
@@ -1,2 +1,2 @@
1
- import _jsx from"@babel/runtime/helpers/jsx";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import React from"react";import{useFlag}from"@consta/uikit/useFlag";import{CSSTransition}from"react-transition-group";import{cnMixPopoverAnimateForCssTransition,animateTimeout}from"../mixs/MixPopoverAnimate/MixPopoverAnimate";import{cn}from"../utils/bem";import{ContextMenu}from"@consta/uikit/ContextMenu";import"./AnimatedContextMenu.css";export const cnAnimatedContextMenu=cn("AnimatedContextMenu");export const AnimatedContextMenu=a=>{const{isOpen:b,className:c}=a,d=_objectWithoutProperties(a,["isOpen","className"]),[e,f]=useFlag();return _jsx(CSSTransition,{in:b,classNames:cnMixPopoverAnimateForCssTransition,unmountOnExit:!0,timeout:animateTimeout,onEnter:f.off,onExit:f.on},void 0,React.createElement(ContextMenu,Object.assign({},d,{className:cnAnimatedContextMenu({exit:e},[c])})))};
1
+ import _jsx from"@babel/runtime/helpers/jsx";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import React,{useState}from"react";import{useFlag}from"@consta/uikit/useFlag";import{Transition}from"react-transition-group";import{cnMixPopoverAnimate,animateTimeout}from"@consta/uikit/MixPopoverAnimate";import{cn}from"../utils/bem";import{ContextMenu}from"@consta/uikit/ContextMenu";import"./AnimatedContextMenu.css";export const cnAnimatedContextMenu=cn("AnimatedContextMenu");export const AnimatedContextMenu=a=>{const{isOpen:b,className:c,onSetDirection:e}=a,f=_objectWithoutProperties(a,["isOpen","className","onSetDirection"]),[g,h]=useFlag(),[i,j]=useState();return _jsx(Transition,{in:b,unmountOnExit:!0,timeout:animateTimeout,onEnter:h.off,onExit:h.on},void 0,a=>React.createElement(ContextMenu,Object.assign({},f,{className:cnAnimatedContextMenu({exit:g},[c,cnMixPopoverAnimate({animate:a,direction:i})]),onSetDirection:a=>{j(a),null===e||void 0===e?void 0:e(a)}})))};
2
2
  //# sourceMappingURL=AnimatedContextMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/__private__/AnimatedContextMenu/AnimatedContextMenu.tsx"],"names":["React","useFlag","CSSTransition","cnMixPopoverAnimateForCssTransition","animateTimeout","cn","ContextMenu","cnAnimatedContextMenu","AnimatedContextMenu","props","isOpen","className","otherProps","exitAnimation","setExitAnimation","off","on","exit"],"mappings":"kIAAA,MAAOA,CAAAA,KAAP,KAAkB,OAAlB,CACA,OAASC,OAAT,KAAwB,uBAAxB,CACA,OAASC,aAAT,KAA8B,wBAA9B,CACA,OACEC,mCADF,CAEEC,cAFF,mDAIA,OAASC,EAAT,oBACA,OAASC,WAAT,KAA4B,2BAA5B,CAGA,kCAMA,MAAO,MAAMC,CAAAA,qBAAqB,CAAGF,EAAE,CAAC,qBAAD,CAAhC,CAEP,MAAO,MAAMG,CAAAA,mBAAiD,CAAGC,CAAK,EAAI,MAClE,CAAEC,MAAM,CAANA,CAAF,CAAUC,SAAS,CAATA,CAAV,EAAuCF,CAD2B,CAC1CG,CAD0C,0BAC3BH,CAD2B,yBAElE,CAACI,CAAD,CAAgBC,CAAhB,EAAoCb,OAAO,EAFuB,CAIxE,MACE,MAAC,aAAD,EACE,EAAE,CAAES,CADN,CAEE,UAAU,CAAEP,mCAFd,CAGE,aAAa,GAHf,CAIE,OAAO,CAAEC,cAJX,CAKE,OAAO,CAAEU,CAAgB,CAACC,GAL5B,CAME,MAAM,CAAED,CAAgB,CAACE,EAN3B,SAQE,oBAAC,WAAD,kBACMJ,CADN,EAEE,SAAS,CAAEL,qBAAqB,CAAC,CAAEU,IAAI,CAAEJ,CAAR,CAAD,CAA0B,CAACF,CAAD,CAA1B,CAFlC,GARF,CAcH,CAnBM","sourcesContent":["import React from 'react'\nimport { useFlag } from '@consta/uikit/useFlag'\nimport { CSSTransition } from 'react-transition-group'\nimport {\n cnMixPopoverAnimateForCssTransition,\n animateTimeout,\n} from '@/__private__/mixs/MixPopoverAnimate/MixPopoverAnimate'\nimport { cn } from '@/__private__/utils/bem'\nimport { ContextMenu } from '@consta/uikit/ContextMenu'\nimport { ContextMenuProps } from '@consta/uikit/__internal__/src/components/ContextMenu/helpers'\n\nimport './AnimatedContextMenu.css'\n\nexport type AnimatedContextMenuComponent = <ITEM>(\n props: ContextMenuProps<ITEM> & { isOpen?: boolean }\n) => React.ReactElement | null\n\nexport const cnAnimatedContextMenu = cn('AnimatedContextMenu')\n\nexport const AnimatedContextMenu: AnimatedContextMenuComponent = props => {\n const { isOpen, className, ...otherProps } = props\n const [exitAnimation, setExitAnimation] = useFlag()\n\n return (\n <CSSTransition\n in={isOpen}\n classNames={cnMixPopoverAnimateForCssTransition}\n unmountOnExit\n timeout={animateTimeout}\n onEnter={setExitAnimation.off}\n onExit={setExitAnimation.on}\n >\n <ContextMenu\n {...otherProps}\n className={cnAnimatedContextMenu({ exit: exitAnimation }, [className])}\n />\n </CSSTransition>\n )\n}\n"],"file":"AnimatedContextMenu.js"}
1
+ {"version":3,"sources":["../../../src/__private__/AnimatedContextMenu/AnimatedContextMenu.tsx"],"names":["React","useState","useFlag","Transition","cnMixPopoverAnimate","animateTimeout","cn","ContextMenu","cnAnimatedContextMenu","AnimatedContextMenu","props","isOpen","className","onSetDirection","otherProps","exitAnimation","setExitAnimation","direction","setDirection","off","on","animate","exit","d"],"mappings":"kIAAA,MAAOA,CAAAA,KAAP,EAAgBC,QAAhB,KAAgC,OAAhC,CACA,OAASC,OAAT,KAAwB,uBAAxB,CACA,OAASC,UAAT,KAA2B,wBAA3B,CACA,OAASC,mBAAT,CAA8BC,cAA9B,KAAoD,iCAApD,CACA,OAASC,EAAT,oBACA,OAASC,WAAT,KAA4B,2BAA5B,CAGA,kCAMA,MAAO,MAAMC,CAAAA,qBAAqB,CAAGF,EAAE,CAAC,qBAAD,CAAhC,CAEP,MAAO,MAAMG,CAAAA,mBAAiD,CAAGC,CAAK,EAAI,MAClE,CAAEC,MAAM,CAANA,CAAF,CAAUC,SAAS,CAATA,CAAV,CAAqBC,cAAc,CAAdA,CAArB,EAAuDH,CADW,CAC1BI,CAD0B,0BACXJ,CADW,0CAElE,CAACK,CAAD,CAAgBC,CAAhB,EAAoCd,OAAO,EAFuB,CAGlE,CAACe,CAAD,CAAYC,CAAZ,EAA4BjB,QAAQ,EAH8B,CAKxE,MACE,MAAC,UAAD,EACE,EAAE,CAAEU,CADN,CAEE,aAAa,GAFf,CAGE,OAAO,CAAEN,cAHX,CAIE,OAAO,CAAEW,CAAgB,CAACG,GAJ5B,CAKE,MAAM,CAAEH,CAAgB,CAACI,EAL3B,SAOGC,CAAO,EACN,oBAAC,WAAD,kBACMP,CADN,EAEE,SAAS,CAAEN,qBAAqB,CAAC,CAAEc,IAAI,CAAEP,CAAR,CAAD,CAA0B,CACxDH,CADwD,CAExDR,mBAAmB,CAAC,CAAEiB,OAAO,CAAPA,CAAF,CAAWJ,SAAS,CAATA,CAAX,CAAD,CAFqC,CAA1B,CAFlC,CAME,cAAc,CAAEM,CAAC,EAAI,CACnBL,CAAY,CAACK,CAAD,CADO,QAEnBV,CAFmB,WAEnBA,CAFmB,QAEnBA,CAAc,CAAGU,CAAH,CACf,CATH,GARJ,CAsBH,CA5BM","sourcesContent":["import React, { useState } from 'react'\nimport { useFlag } from '@consta/uikit/useFlag'\nimport { Transition } from 'react-transition-group'\nimport { cnMixPopoverAnimate, animateTimeout } from '@consta/uikit/MixPopoverAnimate'\nimport { cn } from '@/__private__/utils/bem'\nimport { ContextMenu } from '@consta/uikit/ContextMenu'\nimport { ContextMenuProps } from '@consta/uikit/__internal__/src/components/ContextMenu/helpers'\n\nimport './AnimatedContextMenu.css'\n\nexport type AnimatedContextMenuComponent = <ITEM>(\n props: ContextMenuProps<ITEM> & { isOpen?: boolean }\n) => React.ReactElement | null\n\nexport const cnAnimatedContextMenu = cn('AnimatedContextMenu')\n\nexport const AnimatedContextMenu: AnimatedContextMenuComponent = props => {\n const { isOpen, className, onSetDirection, ...otherProps } = props\n const [exitAnimation, setExitAnimation] = useFlag()\n const [direction, setDirection] = useState<typeof otherProps.direction>()\n\n return (\n <Transition\n in={isOpen}\n unmountOnExit\n timeout={animateTimeout}\n onEnter={setExitAnimation.off}\n onExit={setExitAnimation.on}\n >\n {animate => (\n <ContextMenu\n {...otherProps}\n className={cnAnimatedContextMenu({ exit: exitAnimation }, [\n className,\n cnMixPopoverAnimate({ animate, direction }),\n ])}\n onSetDirection={d => {\n setDirection(d)\n onSetDirection?.(d)\n }}\n />\n )}\n </Transition>\n )\n}\n"],"file":"AnimatedContextMenu.js"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export declare type GetItemOnClick<ITEM> = (item: ITEM) => React.EventHandler<React.MouseEvent> | undefined;
3
+ export declare type OnItemClick<ITEM> = (props: {
4
+ e: React.MouseEvent;
5
+ item: ITEM;
6
+ }) => void;
7
+ export declare const getItemClick: <ITEM>(item: ITEM, getItemOnClick: GetItemOnClick<ITEM>, onItemClick?: OnItemClick<ITEM> | undefined) => React.MouseEventHandler;
@@ -0,0 +1,2 @@
1
+ export const getItemClick=(a,b,c)=>d=>{var e;null===c||void 0===c?void 0:c({e:d,item:a}),null===(e=b(a))||void 0===e?void 0:e(d)};
2
+ //# sourceMappingURL=getItemClick.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/__private__/helpers/getItemClick.ts"],"names":["getItemClick","item","getItemOnClick","onItemClick","e"],"mappings":"AAGA,MAAO,MAAMA,CAAAA,YAAY,CAAG,CAC1BC,CAD0B,CAE1BC,CAF0B,CAG1BC,CAH0B,GAIEC,CAAC,EAAI,cACjCD,CADiC,WACjCA,CADiC,QACjCA,CAAW,CAAG,CAAEC,CAAC,CAADA,CAAF,CAAKH,IAAI,CAAJA,CAAL,CAAH,CADsB,WAEjCC,CAAc,CAACD,CAAD,CAFmB,qBAEjC,EAAuBG,CAAvB,CACD,CAPM","sourcesContent":["export type GetItemOnClick<ITEM> = (item: ITEM) => React.EventHandler<React.MouseEvent> | undefined\nexport type OnItemClick<ITEM> = (props: { e: React.MouseEvent; item: ITEM }) => void\n\nexport const getItemClick = <ITEM>(\n item: ITEM,\n getItemOnClick: GetItemOnClick<ITEM>,\n onItemClick?: OnItemClick<ITEM>\n): React.MouseEventHandler => e => {\n onItemClick?.({ e, item })\n getItemOnClick(item)?.(e)\n}\n"],"file":"getItemClick.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@consta/header",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "files": [
5
5
  "*",
6
6
  "!*.css.d.ts",
@@ -18,7 +18,7 @@
18
18
  "access": "public"
19
19
  },
20
20
  "peerDependencies": {
21
- "@consta/uikit": "^3.15.0"
21
+ "@consta/uikit": "^3.16.0"
22
22
  },
23
23
  "dependencies": {
24
24
  "@bem-react/classname": "^1.5.8",
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const useHideElementsLine: <ELEMENT extends HTMLElement, WRAPPER_ELEMENT extends HTMLElement, ITEM>(items: ITEM[]) => {
3
- visibleItems: ITEM[];
4
- hiddenItems: ITEM[];
5
- itemsRefs: import("react").RefObject<ELEMENT>[];
6
- wrapperRef: import("react").RefObject<WRAPPER_ELEMENT>;
7
- moreRef: import("react").RefObject<ELEMENT> | undefined;
8
- };
@@ -1,2 +0,0 @@
1
- import{createRef,useMemo,useRef}from"react";import{useResizeObserved}from"@consta/uikit/useResizeObserved";import{useComponentSize}from"@consta/uikit/useComponentSize";const useCreateRefs=a=>useMemo(()=>Array(a.length+1).fill(null).map(()=>createRef()),[a]);export const useHideElementsLine=a=>{const b=useCreateRefs(a),c=useRef(null),d=useComponentSize(c).width,e=[...b],f=e.pop(),g=useResizeObserved(b,a=>({size:(null===a||void 0===a?void 0:a.offsetWidth)||0,gap:a?parseInt(getComputedStyle(a).marginRight,10):0})),h=[],i=[];if(d){var j;let b=(null===(j=g[g.length-1])||void 0===j?void 0:j.size)||0;for(let c=0;c<g.length;c++){if(b=b+g[c].size+g[c].gap,b>=d){a[c]&&i.push(a[c]);continue}h.push(a[c])}}return{visibleItems:h,hiddenItems:i,itemsRefs:e,wrapperRef:c,moreRef:f}};
2
- //# sourceMappingURL=useHideElementsLine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/__private__/hooks/useHideElementsLine.ts"],"names":["createRef","useMemo","useRef","useResizeObserved","useComponentSize","useCreateRefs","items","Array","length","fill","map","useHideElementsLine","refs","wrapperRef","wrapperWidth","width","itemsRefs","moreRef","pop","itemsDimensions","el","size","offsetWidth","gap","parseInt","getComputedStyle","marginRight","visibleItems","hiddenItems","calcWidth","index","push"],"mappings":"AAAA,OAASA,SAAT,CAAoBC,OAApB,CAA6BC,MAA7B,KAA2C,OAA3C,CAEA,OAASC,iBAAT,KAAkC,iCAAlC,CACA,OAASC,gBAAT,KAAiC,gCAAjC,CAEA,KAAMC,CAAAA,aAAa,CAAiCC,CAA9B,EACpBL,OAAO,CAAC,IAAUM,KAAJ,CAAUD,CAAK,CAACE,MAAN,CAAe,CAAzB,EAA4BC,IAA5B,CAAiC,IAAjC,EAAuCC,GAAvC,CAA2C,IAAMV,SAAS,EAA1D,CAAP,CAA+E,CAACM,CAAD,CAA/E,CADT,CAQA,MAAO,MAAMK,CAAAA,mBAAmB,CAK9BL,CALiC,EAY9B,MACGM,CAAAA,CAAI,CAAGP,aAAa,CAAUC,CAAV,CADvB,CAEGO,CAAU,CAAGX,MAAM,CAAkB,IAAlB,CAFtB,CAGGY,CAAY,CAAGV,gBAAgB,CAACS,CAAD,CAAhB,CAA6BE,KAH/C,CAIGC,CAAS,CAAG,CAAC,GAAGJ,CAAJ,CAJf,CAKGK,CAAO,CAAGD,CAAS,CAACE,GAAV,EALb,CAOGC,CAAe,CAAGhB,iBAAiB,CACvCS,CADuC,CAEtCQ,CAAD,GACS,CACLC,IAAI,CAAE,QAAAD,CAAE,WAAFA,SAAAA,CAAE,CAAEE,WAAJ,GAAmB,CADpB,CAELC,GAAG,CAAEH,CAAE,CAAGI,QAAQ,CAACC,gBAAgB,CAACL,CAAD,CAAhB,CAAqBM,WAAtB,CAAmC,EAAnC,CAAX,CAAoD,CAFtD,CADT,CAFuC,CAPtC,CAiBGC,CAAoB,CAAG,EAjB1B,CAkBGC,CAAmB,CAAG,EAlBzB,CAoBH,GAAId,CAAJ,CAAkB,OAChB,GAAIe,CAAAA,CAAS,CAAG,WAAAV,CAAe,CAACA,CAAe,CAACX,MAAhB,CAAyB,CAA1B,CAAf,uBAA6Ca,IAA7C,GAAqD,CAArE,CAEA,IAAK,GAAIS,CAAAA,CAAK,CAAG,CAAjB,CAAoBA,CAAK,CAAGX,CAAe,CAACX,MAA5C,CAAoDsB,CAAK,EAAzD,CAA6D,CAG3D,GAFAD,CAAS,CAAGA,CAAS,CAAGV,CAAe,CAACW,CAAD,CAAf,CAAuBT,IAAnC,CAA0CF,CAAe,CAACW,CAAD,CAAf,CAAuBP,GAE7E,CAAIM,CAAS,EAAIf,CAAjB,CAA+B,CAC7BR,CAAK,CAACwB,CAAD,CAAL,EAAgBF,CAAW,CAACG,IAAZ,CAAiBzB,CAAK,CAACwB,CAAD,CAAtB,CADa,CAE7B,QACD,CACDH,CAAY,CAACI,IAAb,CAAkBzB,CAAK,CAACwB,CAAD,CAAvB,CACD,CACF,CAED,MAAO,CAAEH,YAAY,CAAZA,CAAF,CAAgBC,WAAW,CAAXA,CAAhB,CAA6BZ,SAAS,CAATA,CAA7B,CAAwCH,UAAU,CAAVA,CAAxC,CAAoDI,OAAO,CAAPA,CAApD,CACR,CA/CM","sourcesContent":["import { createRef, useMemo, useRef } from 'react'\n\nimport { useResizeObserved } from '@consta/uikit/useResizeObserved'\nimport { useComponentSize } from '@consta/uikit/useComponentSize'\n\nconst useCreateRefs = <ELEMENT extends HTMLElement>(items: unknown[]) =>\n useMemo(() => new Array(items.length + 1).fill(null).map(() => createRef<ELEMENT>()), [items])\n\ntype ItemDimensions = {\n size: number\n gap: number\n}\n\nexport const useHideElementsLine = <\n ELEMENT extends HTMLElement,\n WRAPPER_ELEMENT extends HTMLElement,\n ITEM\n>(\n items: ITEM[]\n): {\n visibleItems: ITEM[]\n hiddenItems: ITEM[]\n itemsRefs: Array<React.RefObject<ELEMENT>>\n wrapperRef: React.RefObject<WRAPPER_ELEMENT>\n moreRef: React.RefObject<ELEMENT> | undefined\n} => {\n const refs = useCreateRefs<ELEMENT>(items)\n const wrapperRef = useRef<WRAPPER_ELEMENT>(null)\n const wrapperWidth = useComponentSize(wrapperRef).width\n const itemsRefs = [...refs]\n const moreRef = itemsRefs.pop()\n\n const itemsDimensions = useResizeObserved(\n refs,\n (el): ItemDimensions => {\n return {\n size: el?.offsetWidth || 0,\n gap: el ? parseInt(getComputedStyle(el).marginRight, 10) : 0,\n }\n }\n )\n\n const visibleItems: ITEM[] = []\n const hiddenItems: ITEM[] = []\n\n if (wrapperWidth) {\n let calcWidth = itemsDimensions[itemsDimensions.length - 1]?.size || 0\n\n for (let index = 0; index < itemsDimensions.length; index++) {\n calcWidth = calcWidth + itemsDimensions[index].size + itemsDimensions[index].gap\n\n if (calcWidth >= wrapperWidth) {\n items[index] && hiddenItems.push(items[index])\n continue\n }\n visibleItems.push(items[index])\n }\n }\n\n return { visibleItems, hiddenItems, itemsRefs, wrapperRef, moreRef }\n}\n"],"file":"useHideElementsLine.js"}
@@ -1 +0,0 @@
1
- .che--MixPopoverAnimate_animate_enter,.che--MixPopoverAnimate_animate_enterActive{opacity:0;transform:translateY(var(--space-s))}.che--MixPopoverAnimate_animate_enterDone{opacity:1;transition:opacity .2s,transform .2s;transform:translate(0)}.che--MixPopoverAnimate_animate_exit{opacity:1;transform:translate(0)}.che--MixPopoverAnimate_animate_exitActive,.che--MixPopoverAnimate_animate_exitDone{opacity:0;transition:opacity .2s,transform .2s;transform:translateY(var(--space-s))}
@@ -1,4 +0,0 @@
1
- import './MixPopoverAnimate.css';
2
- export declare const cnMixPopoverAnimate: import("@bem-react/classname").ClassNameFormatter;
3
- export declare const cnMixPopoverAnimateForCssTransition: import("@consta/uikit/__internal__/src/utils/cnForCssTransition").CSSTransitionClassNames;
4
- export declare const animateTimeout = 200;
@@ -1,2 +0,0 @@
1
- import"./MixPopoverAnimate.css";import{cnForCssTransition}from"@consta/uikit/__internal__/src/utils/cnForCssTransition";import{cn}from"../../utils/bem";export const cnMixPopoverAnimate=cn("MixPopoverAnimate");export const cnMixPopoverAnimateForCssTransition=cnForCssTransition(cnMixPopoverAnimate);export const animateTimeout=200;
2
- //# sourceMappingURL=MixPopoverAnimate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/__private__/mixs/MixPopoverAnimate/MixPopoverAnimate.tsx"],"names":["cnForCssTransition","cn","cnMixPopoverAnimate","cnMixPopoverAnimateForCssTransition","animateTimeout"],"mappings":"AAAA,gCACA,OAASA,kBAAT,KAAmC,yDAAnC,CAEA,OAASC,EAAT,uBAEA,MAAO,MAAMC,CAAAA,mBAAmB,CAAGD,EAAE,CAAC,mBAAD,CAA9B,CACP,MAAO,MAAME,CAAAA,mCAAmC,CAAGH,kBAAkB,CAACE,mBAAD,CAA9D,CACP,MAAO,MAAME,CAAAA,cAAc,CAAG,GAAvB","sourcesContent":["import './MixPopoverAnimate.css'\nimport { cnForCssTransition } from '@consta/uikit/__internal__/src/utils/cnForCssTransition'\n\nimport { cn } from '@/__private__/utils/bem'\n\nexport const cnMixPopoverAnimate = cn('MixPopoverAnimate')\nexport const cnMixPopoverAnimateForCssTransition = cnForCssTransition(cnMixPopoverAnimate)\nexport const animateTimeout = 200\n"],"file":"MixPopoverAnimate.js"}