@consta/header 0.3.1 → 0.4.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.
- package/Header/Header.css +1 -1
- package/Header/Header.js +1 -1
- package/Header/Header.js.map +1 -1
- package/Header/types.d.ts +32 -13
- package/Notifications/Notifications.css +1 -1
- package/README.md +3 -3
- package/TileMenu/TileMenu.css +1 -1
- package/VerticalMenu/VerticalMenu.js.map +1 -1
- package/__private__/components/NotificationCard/helpers.js +1 -1
- package/__private__/components/NotificationCard/helpers.js.map +1 -1
- package/package.json +2 -2
package/Header/Header.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.che--Header .che--Layout-Row_botton .che--LayoutRow-Side_position_left{width:100%}.che--Header_fixed{position:fixed;top:0;left:0;width:100%}.che--Header-Logo{flex:none}.che--Header-Menu{flex:1}.che--Header-RowCenterLeft{display:flex;align-items:center;grid-gap:var(--space-2xl);gap:var(--space-2xl)}.che--Header-RowCenterLeft_breakpoint_m{width:100%}.che--Header-RowCenterRight,.che--Header-RowTopRight{display:flex;align-items:center;flex-direction:row-reverse;width:100%;grid-gap:var(--space-l);gap:var(--space-l)}.che--Header-NotificationsList_breakpoint_m,.che--Header-TileMenuList_breakpoint_m{max-height:60vh}.che--Header-RowCenterLeftMobile{display:flex;align-items:center;grid-gap:var(--space-2xl);gap:var(--space-2xl)}.che--Header-MobileMenuHeader{display:flex;flex-wrap:wrap;justify-content:space-between;margin:var(--space-s) var(--space-l);grid-gap:var(--space-s);gap:var(--space-s)}.che--Header-Breadcrumbs,.che--Header-MobileSearchContainer{width:100%}.che--Header-MobileMenuSocialMedia{display:flex;justify-content:center;margin-bottom:var(--space-m)}
|
|
1
|
+
.che--Header .che--Layout-Row_botton .che--LayoutRow-Side_position_left{width:100%}.che--Header_fixed{position:fixed;top:0;left:0;width:100%}.che--Header-Logo{flex:none}.che--Header-Menu{flex:1}.che--Header-RowCenterLeft{display:flex;align-items:center;grid-gap:var(--space-2xl);gap:var(--space-2xl)}.che--Header-RowCenterLeft_breakpoint_m{width:100%}.che--Header-RowCenterRight,.che--Header-RowTopRight{display:flex;align-items:center;flex-direction:row-reverse;width:100%;grid-gap:var(--space-l);gap:var(--space-l)}.che--Header-NotificationsList_breakpoint_m,.che--Header-ThemeToggler_breakpoint_m,.che--Header-TileMenuList_breakpoint_m{max-height:60vh}.che--Header-RowCenterLeftMobile{display:flex;align-items:center;grid-gap:var(--space-2xl);gap:var(--space-2xl)}.che--Header-MobileMenuHeader{display:flex;flex-wrap:wrap;justify-content:space-between;margin:var(--space-s) var(--space-l);grid-gap:var(--space-s);gap:var(--space-s)}.che--Header-Breadcrumbs,.che--Header-MobileSearchContainer{width:100%}.che--Header-MobileMenuSocialMedia{display:flex;justify-content:center;margin-bottom:var(--space-m)}
|
package/Header/Header.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _jsx from"@babel/runtime/helpers/jsx";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import React,{forwardRef,useState}from"react";import{cn}from"../__private__/utils/bem";import{Layout}from"../Layout";import{Menu}from"../Menu";import{HeaderLogo}from"./HeaderLogo";import{HeaderLogin}from"./HeaderLogin";import{HeaderSearch}from"./HeaderSearch";import{Notifications}from"../Notifications";import{TileMenu}from"../TileMenu";import{useBreakpoints}from"@consta/uikit/useBreakpoints";import{MobileMenu}from"../MobileMenu";import{Breadcrumbs}from"@consta/uikit/BreadcrumbsCanary";import{SelectMenu}from"../SelectMenu";import{ButtonMenu}from"../ButtonMenu";import{Languages}from"../Languages";import{getMobileMenu}from"./helpers";import"./Header.css";export const cnHeader=cn("Header");const HeaderRender=(a,b)=>{var c;const{className:d,fixed:e,logo:f,onLogoClick:g,logoHref:h,menu:i,getMenuItemActive:j,getMenuItemHref:k,getMenuItemLabel:l,getMenuItemOnClick:m,getMenuItemSubMenu:n,getMenuItemTarget:o,onMenuItemClick:p,userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v,notifications:w,notificationsDateFormat:x,notificationsTitle:y,notificationsActions:z,notificationsGroupByDay:A,notificationsGroupLabelFormat:B,notificationsGroups:C,getNotificationsItemLabel:D,getNotificationsItemDescription:E,getNotificationsItemImage:F,getNotificationsItemRead:G,getNotificationsItemDate:H,getNotificationsItemBadges:I,getNotificationsItemActions:J,getNotificationsItemGroup:K,getNotificationsItemView:L,getNotificationsActionLabel:M,getNotificationsActionIcon:N,getNotificationsActionOnClick:O,getNotificationsGroupLabel:P,getNotificationsGroupId:Q,tileMenu:R,tileMenuView:S,onTileMenuItemClick:T,getTileMenuItemDescription:U,getTileMenuItemHref:V,getTileMenuItemImage:W,getTileMenuItemOnClick:X,getTileMenuItemLabel:Y,tileMenuTitle:Z,breadcrumbs:$,breadcrumbsOnlyIconRoot:_,onBreadcrumbsItemClick:aa,getBreadcrumbsItemLabel:ba,getBreadcrumbsItemHref:ca,getBreadcrumbsItemIcon:da,getBreadcrumbsItemOnClick:ea,breadcrumbsLastItemIsLink:fa,breadcrumbsFitMode:ga,searchValue:ha,searchOnChange:ia,searchOnSubmit:ja,searchPlaceholder:ka,secondaryMenuLabel:la,secondaryMenu:ma,getSecondaryMenuItemHref:na,getSecondaryMenuItemLabel:oa,getSecondaryMenuItemOnClick:pa,getSecondaryMenuItemSubMenu:qa,getSecondaryMenuItemTarget:ra,socialMedia:sa,getSocialMediaItemHref:ta,getSocialMediaItemIcon:ua,getSocialMediaItemLabel:va,getSocialMediaItemOnClick:wa,getSocialMediaItemTarget:xa,onSocialMediaItemClick:ya,languages:za,languageValue:Aa,getLanguagesItemHref:Ba,getLanguagesItemLabel:Ca,getLanguagesItemOnClick:Da,getLanguagesItemTarget:Ea,onLanguageChange:Fa,additionalButtons:Ga,getAdditionalButtonsItemHref:Ha,getAdditionalButtonsItemIcon:Ia,getAdditionalButtonsItemLabel:Ja,getAdditionalButtonsItemOnClick:Ka,getAdditionalButtonsItemTarget:La,onAdditionalButtonsItemClick:Ma}=a,Na=_objectWithoutProperties(a,["className","fixed","logo","onLogoClick","logoHref","menu","getMenuItemActive","getMenuItemHref","getMenuItemLabel","getMenuItemOnClick","getMenuItemSubMenu","getMenuItemTarget","onMenuItemClick","userName","userAvatar","userInfo","userLogined","onLoginButtonClick","loginButtonLabel","notifications","notificationsDateFormat","notificationsTitle","notificationsActions","notificationsGroupByDay","notificationsGroupLabelFormat","notificationsGroups","getNotificationsItemLabel","getNotificationsItemDescription","getNotificationsItemImage","getNotificationsItemRead","getNotificationsItemDate","getNotificationsItemBadges","getNotificationsItemActions","getNotificationsItemGroup","getNotificationsItemView","getNotificationsActionLabel","getNotificationsActionIcon","getNotificationsActionOnClick","getNotificationsGroupLabel","getNotificationsGroupId","tileMenu","tileMenuView","onTileMenuItemClick","getTileMenuItemDescription","getTileMenuItemHref","getTileMenuItemImage","getTileMenuItemOnClick","getTileMenuItemLabel","tileMenuTitle","breadcrumbs","breadcrumbsOnlyIconRoot","onBreadcrumbsItemClick","getBreadcrumbsItemLabel","getBreadcrumbsItemHref","getBreadcrumbsItemIcon","getBreadcrumbsItemOnClick","breadcrumbsLastItemIsLink","breadcrumbsFitMode","searchValue","searchOnChange","searchOnSubmit","searchPlaceholder","secondaryMenuLabel","secondaryMenu","getSecondaryMenuItemHref","getSecondaryMenuItemLabel","getSecondaryMenuItemOnClick","getSecondaryMenuItemSubMenu","getSecondaryMenuItemTarget","socialMedia","getSocialMediaItemHref","getSocialMediaItemIcon","getSocialMediaItemLabel","getSocialMediaItemOnClick","getSocialMediaItemTarget","onSocialMediaItemClick","languages","languageValue","getLanguagesItemHref","getLanguagesItemLabel","getLanguagesItemOnClick","getLanguagesItemTarget","onLanguageChange","additionalButtons","getAdditionalButtonsItemHref","getAdditionalButtonsItemIcon","getAdditionalButtonsItemLabel","getAdditionalButtonsItemOnClick","getAdditionalButtonsItemTarget","onAdditionalButtonsItemClick"]),Oa=useBreakpoints({s:800,m:1200}),[Pa,Qa]=useState(Aa||(null===za||void 0===za?void 0:za[0])),Ra="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex:void 0;return Oa.m?React.createElement(Layout,Object.assign({},Na,{ref:b,className:cnHeader({fixed:e},[d]),rowTop:{left:la&&(null===ma||void 0===ma?void 0:ma.length)?_jsx(SelectMenu,{label:la,items:ma,getItemHref:na,getItemLabel:oa,getItemOnClick:pa,getItemSubMenu:qa,getItemTarget:ra,style:{zIndex:Ra}}):void 0,center:(null===sa||void 0===sa?void 0:sa.length)?_jsx(ButtonMenu,{items:sa,getItemHref:ta,getItemIcon:ua,getItemLabel:va,getItemOnClick:wa,getItemTarget:xa,onItemClick:ya,view:"clear",onlyIcon:!0,size:"s"}):void 0,right:_jsx("div",{className:cnHeader("RowTopRight")},void 0,[(null===za||void 0===za?void 0:za.length)?_jsx(Languages,{items:za,value:Pa,getItemHref:Ba,getItemLabel:Ca,getItemOnClick:Da,getItemTarget:Ea,onChange:a=>{null===Fa||void 0===Fa?void 0:Fa(a),Qa(a.item)},style:{zIndex:Ra}},"Languages"):void 0,(null===Ga||void 0===Ga?void 0:Ga.length)?_jsx(ButtonMenu,{items:Ga,getItemHref:Ha,getItemIcon:Ia,getItemLabel:Ja,getItemOnClick:Ka,getItemTarget:La,onItemClick:Ma,view:"clear",size:"s"}):void 0])},rowCenter:{left:_jsx("div",{className:cnHeader("RowCenterLeft",{breakpoint:"m"})},void 0,_jsx(HeaderLogo,{className:cnHeader("Logo"),logo:f,href:h}),(ja||ia)&&_jsx(HeaderSearch,{value:ha,onChange:ia,onSubmit:ja,placeholder:ka}),i&&_jsx(Menu,{className:cnHeader("Menu"),items:i,getItemActive:j,getItemHref:k,getItemLabel:l,getItemOnClick:m,getItemSubMenu:n,getItemTarget:o,onItemClick:p,style:{zIndex:Ra}})),right:_jsx("div",{className:cnHeader("RowCenterRight")},void 0,_jsx(HeaderLogin,{userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v}),(null===R||void 0===R?void 0:R.length)&&_jsx(TileMenu,{items:R,view:S,onItemClick:T,getItemDescription:U,getItemHref:V,getItemImage:W,getItemOnClick:X,getItemLabel:Y,listClassName:cnHeader("TileMenuList",{breakpoint:"m"}),title:Z,style:{zIndex:Ra}}),(null===w||void 0===w?void 0:w.length)&&_jsx(Notifications,{listClassName:cnHeader("NotificationsList",{breakpoint:"m"}),items:w,itemDateFormat:x,title:y,actions:z,groupByDay:A,groupLabelFormat:B,groups:C,getItemLabel:D,getItemDescription:E,getItemImage:F,getItemRead:G,getItemDate:H,getItemBadges:I,getItemActions:J,getItemGroup:K,getItemView:L,getActionLabel:M,getActionIcon:N,getActionOnClick:O,getGroupLabel:P,getGroupId:Q,style:{zIndex:Ra}}))},rowBottom:$?_jsx(Breadcrumbs,{className:cnHeader("Breadcrumbs"),items:$,onlyIconRoot:_,size:"m",onItemClick:aa,getItemLabel:ba,getItemHref:ca,getItemIcon:da,getItemOnClick:ea,lastItemIsLink:fa,fitMode:ga}):void 0})):Oa.s?React.createElement(Layout,Object.assign({},Na,{ref:b,className:cnHeader({fixed:e},[d]),rowCenter:{left:_jsx("div",{className:cnHeader("RowCenterLeft")},void 0,i&&_jsx(MobileMenu,{className:cnHeader("Menu"),items:getMobileMenu(a,{languagesValue:Pa,setLanguagesValue:Qa}),getItemActive:j,getItemHref:k,getItemLabel:l,getItemOnClick:m,getItemSubMenu:n,getItemTarget:o,style:{zIndex:Ra},footer:(null===sa||void 0===sa?void 0:sa.length)&&_jsx(ButtonMenu,{className:cnHeader("MobileMenuSocialMedia"),items:sa,getItemHref:ta,getItemIcon:ua,getItemLabel:va,getItemOnClick:wa,getItemTarget:xa,onItemClick:ya,view:"clear",onlyIcon:!0,size:"s"})}),_jsx(HeaderLogo,{className:cnHeader("Logo"),logo:f,href:h}),(ja||ia)&&_jsx(HeaderSearch,{value:ha,onChange:ia,onSubmit:ja,placeholder:ka})),right:_jsx("div",{className:cnHeader("RowCenterRight")},void 0,_jsx(HeaderLogin,{userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v}),(null===R||void 0===R?void 0:R.length)&&_jsx(TileMenu,{items:R,view:S,onItemClick:T,getItemDescription:U,getItemHref:V,getItemImage:W,getItemOnClick:X,getItemLabel:Y,listClassName:cnHeader("TileMenuList"),title:Z,isMobile:!0,style:{zIndex:Ra}}),(null===w||void 0===w?void 0:w.length)&&_jsx(Notifications,{listClassName:cnHeader("NotificationsList"),items:w,itemDateFormat:x,title:y,actions:z,groupByDay:A,groupLabelFormat:B,groups:C,getItemLabel:D,getItemDescription:E,getItemImage:F,getItemRead:G,getItemDate:H,getItemBadges:I,getItemActions:J,getItemGroup:K,getItemView:L,getActionLabel:M,getActionIcon:N,getActionOnClick:O,getGroupLabel:P,getGroupId:Q,isMobile:!0,style:{zIndex:Ra}}))},rowBottom:$?_jsx(Breadcrumbs,{className:cnHeader("Breadcrumbs"),items:$,onlyIconRoot:_,size:"m",onItemClick:aa,getItemLabel:ba,getItemHref:ca,getItemIcon:da,getItemOnClick:ea,lastItemIsLink:fa,fitMode:ga}):void 0})):React.createElement(Layout,Object.assign({},Na,{ref:b,className:cnHeader({fixed:e},[d]),rowCenter:{left:_jsx("div",{className:cnHeader("RowCenterLeft")},void 0,i&&_jsx(MobileMenu,{className:cnHeader("Menu"),items:getMobileMenu(a,{languagesValue:Pa,setLanguagesValue:Qa}),getItemActive:j,getItemHref:k,getItemLabel:l,getItemOnClick:m,getItemSubMenu:n,getItemTarget:o,style:{zIndex:Ra},header:_jsx("div",{className:cnHeader("MobileMenuHeader")},void 0,_jsx("div",{},void 0,_jsx(HeaderLogin,{userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v})),(null===R||void 0===R?void 0:R.length)&&(null===w||void 0===w?void 0:w.length)&&_jsx("div",{},void 0,(null===R||void 0===R?void 0:R.length)&&_jsx(TileMenu,{items:R,view:S,onItemClick:T,getItemDescription:U,getItemHref:V,getItemImage:W,getItemOnClick:X,getItemLabel:Y,listClassName:cnHeader("TileMenuList"),title:Z,isMobile:!0,style:{zIndex:Ra}}),(null===w||void 0===w?void 0:w.length)&&_jsx(Notifications,{listClassName:cnHeader("NotificationsList"),items:w,itemDateFormat:x,title:y,actions:z,groupByDay:A,groupLabelFormat:B,groups:C,getItemLabel:D,getItemDescription:E,getItemImage:F,getItemRead:G,getItemDate:H,getItemBadges:I,getItemActions:J,getItemGroup:K,getItemView:L,getActionLabel:M,getActionIcon:N,getActionOnClick:O,getGroupLabel:P,getGroupId:Q,isMobile:!0,style:{zIndex:Ra}})),_jsx("div",{className:cnHeader("MobileSearchContainer")},void 0,(ja||ia)&&_jsx(HeaderSearch,{value:ha,onChange:ia,onSubmit:ja,placeholder:ka}))),footer:(null===sa||void 0===sa?void 0:sa.length)&&_jsx(ButtonMenu,{className:cnHeader("MobileMenuSocialMedia"),items:sa,getItemHref:ta,getItemIcon:ua,getItemLabel:va,getItemOnClick:wa,getItemTarget:xa,onItemClick:ya,view:"clear",onlyIcon:!0,size:"s"})}),_jsx(HeaderLogo,{className:cnHeader("Logo"),logo:f,href:h}))}}))};export const Header=forwardRef(HeaderRender);export*from"./types";
|
|
1
|
+
import _jsx from"@babel/runtime/helpers/jsx";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import React,{forwardRef,useState}from"react";import{cn}from"../__private__/utils/bem";import{Layout}from"../Layout";import{Menu}from"../Menu";import{HeaderLogo}from"./HeaderLogo";import{HeaderLogin}from"./HeaderLogin";import{HeaderSearch}from"./HeaderSearch";import{Notifications}from"../Notifications";import{TileMenu}from"../TileMenu";import{useBreakpoints}from"@consta/uikit/useBreakpoints";import{MobileMenu}from"../MobileMenu";import{Breadcrumbs}from"@consta/uikit/BreadcrumbsCanary";import{ThemeToggler}from"@consta/uikit/ThemeToggler";import{SelectMenu}from"../SelectMenu";import{ButtonMenu}from"../ButtonMenu";import{Languages}from"../Languages";import{getMobileMenu}from"./helpers";import"./Header.css";export const cnHeader=cn("Header");const HeaderRender=(a,b)=>{var c;const{className:d,fixed:e,logo:f,onLogoClick:g,logoHref:h,menu:i,getMenuItemActive:j,getMenuItemHref:k,getMenuItemLabel:l,getMenuItemOnClick:m,getMenuItemSubMenu:n,getMenuItemTarget:o,onMenuItemClick:p,userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v,notifications:w,notificationsDateFormat:x,notificationsTitle:y,notificationsActions:z,notificationsGroupByDay:A,notificationsGroupLabelFormat:B,notificationsGroups:C,getNotificationsItemLabel:D,getNotificationsItemDescription:E,getNotificationsItemImage:F,getNotificationsItemRead:G,getNotificationsItemDate:H,getNotificationsItemBadges:I,getNotificationsItemActions:J,getNotificationsItemGroup:K,getNotificationsItemView:L,getNotificationsActionLabel:M,getNotificationsActionIcon:N,getNotificationsActionOnClick:O,getNotificationsGroupLabel:P,getNotificationsGroupId:Q,tileMenu:R,tileMenuView:S,onTileMenuItemClick:T,getTileMenuItemDescription:U,getTileMenuItemHref:V,getTileMenuItemImage:W,getTileMenuItemOnClick:X,getTileMenuItemLabel:Y,tileMenuTitle:Z,breadcrumbs:$,breadcrumbsOnlyIconRoot:_,onBreadcrumbsItemClick:aa,getBreadcrumbsItemLabel:ba,getBreadcrumbsItemHref:ca,getBreadcrumbsItemIcon:da,getBreadcrumbsItemOnClick:ea,breadcrumbsLastItemIsLink:fa,breadcrumbsFitMode:ga,searchValue:ha,searchOnChange:ia,searchOnSubmit:ja,searchPlaceholder:ka,secondaryMenuLabel:la,secondaryMenu:ma,getSecondaryMenuItemHref:na,getSecondaryMenuItemLabel:oa,getSecondaryMenuItemOnClick:pa,getSecondaryMenuItemSubMenu:qa,getSecondaryMenuItemTarget:ra,socialMedia:sa,getSocialMediaItemHref:ta,getSocialMediaItemIcon:ua,getSocialMediaItemLabel:va,getSocialMediaItemOnClick:wa,getSocialMediaItemTarget:xa,onSocialMediaItemClick:ya,languages:za,languageValue:Aa,getLanguagesItemHref:Ba,getLanguagesItemLabel:Ca,getLanguagesItemOnClick:Da,getLanguagesItemTarget:Ea,onLanguageChange:Fa,additionalButtons:Ga,getAdditionalButtonsItemHref:Ha,getAdditionalButtonsItemIcon:Ia,getAdditionalButtonsItemLabel:Ja,getAdditionalButtonsItemOnClick:Ka,getAdditionalButtonsItemTarget:La,onAdditionalButtonsItemClick:Ma,themeItems:Na,theme:Oa,getThemeTogglerItemKey:Pa,getThemeTogglerItemLabel:Qa,getThemeTogglerItemIcon:Ra,onThemeChange:Sa}=a,Ta=_objectWithoutProperties(a,["className","fixed","logo","onLogoClick","logoHref","menu","getMenuItemActive","getMenuItemHref","getMenuItemLabel","getMenuItemOnClick","getMenuItemSubMenu","getMenuItemTarget","onMenuItemClick","userName","userAvatar","userInfo","userLogined","onLoginButtonClick","loginButtonLabel","notifications","notificationsDateFormat","notificationsTitle","notificationsActions","notificationsGroupByDay","notificationsGroupLabelFormat","notificationsGroups","getNotificationsItemLabel","getNotificationsItemDescription","getNotificationsItemImage","getNotificationsItemRead","getNotificationsItemDate","getNotificationsItemBadges","getNotificationsItemActions","getNotificationsItemGroup","getNotificationsItemView","getNotificationsActionLabel","getNotificationsActionIcon","getNotificationsActionOnClick","getNotificationsGroupLabel","getNotificationsGroupId","tileMenu","tileMenuView","onTileMenuItemClick","getTileMenuItemDescription","getTileMenuItemHref","getTileMenuItemImage","getTileMenuItemOnClick","getTileMenuItemLabel","tileMenuTitle","breadcrumbs","breadcrumbsOnlyIconRoot","onBreadcrumbsItemClick","getBreadcrumbsItemLabel","getBreadcrumbsItemHref","getBreadcrumbsItemIcon","getBreadcrumbsItemOnClick","breadcrumbsLastItemIsLink","breadcrumbsFitMode","searchValue","searchOnChange","searchOnSubmit","searchPlaceholder","secondaryMenuLabel","secondaryMenu","getSecondaryMenuItemHref","getSecondaryMenuItemLabel","getSecondaryMenuItemOnClick","getSecondaryMenuItemSubMenu","getSecondaryMenuItemTarget","socialMedia","getSocialMediaItemHref","getSocialMediaItemIcon","getSocialMediaItemLabel","getSocialMediaItemOnClick","getSocialMediaItemTarget","onSocialMediaItemClick","languages","languageValue","getLanguagesItemHref","getLanguagesItemLabel","getLanguagesItemOnClick","getLanguagesItemTarget","onLanguageChange","additionalButtons","getAdditionalButtonsItemHref","getAdditionalButtonsItemIcon","getAdditionalButtonsItemLabel","getAdditionalButtonsItemOnClick","getAdditionalButtonsItemTarget","onAdditionalButtonsItemClick","themeItems","theme","getThemeTogglerItemKey","getThemeTogglerItemLabel","getThemeTogglerItemIcon","onThemeChange"]),Ua=useBreakpoints({s:800,m:1200}),[Va,Wa]=useState(Aa||(null===za||void 0===za?void 0:za[0])),Xa="number"==typeof(null===(c=a.style)||void 0===c?void 0:c.zIndex)?a.style.zIndex:void 0;if(Ua.m)return React.createElement(Layout,Object.assign({},Ta,{ref:b,className:cnHeader({fixed:e},[d]),rowTop:((null===Ga||void 0===Ga?void 0:Ga.length)||(null===za||void 0===za?void 0:za.length)||(null===sa||void 0===sa?void 0:sa.length)||(null===ma||void 0===ma?void 0:ma.length)&&la)&&{left:la&&(null===ma||void 0===ma?void 0:ma.length)?_jsx(SelectMenu,{label:la,items:ma,getItemHref:na,getItemLabel:oa,getItemOnClick:pa,getItemSubMenu:qa,getItemTarget:ra,style:{zIndex:Xa}}):void 0,center:(null===sa||void 0===sa?void 0:sa.length)?_jsx(ButtonMenu,{items:sa,getItemHref:ta,getItemIcon:ua,getItemLabel:va,getItemOnClick:wa,getItemTarget:xa,onItemClick:ya,view:"clear",onlyIcon:!0,size:"s"}):void 0,right:_jsx("div",{className:cnHeader("RowTopRight")},void 0,[(null===za||void 0===za?void 0:za.length)?_jsx(Languages,{items:za,value:Va,getItemHref:Ba,getItemLabel:Ca,getItemOnClick:Da,getItemTarget:Ea,onChange:a=>{null===Fa||void 0===Fa?void 0:Fa(a),Wa(a.item)},style:{zIndex:Xa}},"Languages"):void 0,(null===Ga||void 0===Ga?void 0:Ga.length)?_jsx(ButtonMenu,{items:Ga,getItemHref:Ha,getItemIcon:Ia,getItemLabel:Ja,getItemOnClick:Ka,getItemTarget:La,onItemClick:Ma,view:"clear",size:"s"}):void 0])},rowCenter:{left:_jsx("div",{className:cnHeader("RowCenterLeft",{breakpoint:"m"})},void 0,_jsx(HeaderLogo,{className:cnHeader("Logo"),logo:f,href:h}),(ja||ia)&&_jsx(HeaderSearch,{value:ha,onChange:ia,onSubmit:ja,placeholder:ka}),i&&_jsx(Menu,{className:cnHeader("Menu"),items:i,getItemActive:j,getItemHref:k,getItemLabel:l,getItemOnClick:m,getItemSubMenu:n,getItemTarget:o,onItemClick:p,style:{zIndex:Xa}})),right:_jsx("div",{className:cnHeader("RowCenterRight")},void 0,_jsx(HeaderLogin,{userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v}),(null===R||void 0===R?void 0:R.length)&&_jsx(TileMenu,{items:R,view:S,onItemClick:T,getItemDescription:U,getItemHref:V,getItemImage:W,getItemOnClick:X,getItemLabel:Y,listClassName:cnHeader("TileMenuList",{breakpoint:"m"}),title:Z,style:{zIndex:Xa}}),(null===w||void 0===w?void 0:w.length)&&_jsx(Notifications,{listClassName:cnHeader("NotificationsList",{breakpoint:"m"}),items:w,itemDateFormat:x,title:y,actions:z,groupByDay:A,groupLabelFormat:B,groups:C,getItemLabel:D,getItemDescription:E,getItemImage:F,getItemRead:G,getItemDate:H,getItemBadges:I,getItemActions:J,getItemGroup:K,getItemView:L,getActionLabel:M,getActionIcon:N,getActionOnClick:O,getGroupLabel:P,getGroupId:Q,style:{zIndex:Xa}}),Oa&&(null===Na||void 0===Na?void 0:Na.length)&&_jsx(ThemeToggler,{className:cnHeader("ThemeToggler",{breakpoint:"m"}),items:Na,value:Oa,getItemKey:Pa,getItemLabel:Qa,getItemIcon:Ra,size:"s",onChange:a=>null===Sa||void 0===Sa?void 0:Sa(a)}))},rowBottom:$?_jsx(Breadcrumbs,{className:cnHeader("Breadcrumbs"),items:$,onlyIconRoot:_,size:"m",onItemClick:aa,getItemLabel:ba,getItemHref:ca,getItemIcon:da,getItemOnClick:ea,lastItemIsLink:fa,fitMode:ga}):void 0}));if(Ua.s){const c=getMobileMenu(a,{languagesValue:Va,setLanguagesValue:Wa});return React.createElement(Layout,Object.assign({},Ta,{ref:b,className:cnHeader({fixed:e},[d]),rowCenter:{left:_jsx("div",{className:cnHeader("RowCenterLeft")},void 0,(c.length||(null===sa||void 0===sa?void 0:sa.length))&&_jsx(MobileMenu,{className:cnHeader("Menu"),items:c,getItemActive:j,getItemHref:k,getItemLabel:l,getItemOnClick:m,getItemSubMenu:n,getItemTarget:o,style:{zIndex:Xa},footer:(null===sa||void 0===sa?void 0:sa.length)&&_jsx(ButtonMenu,{className:cnHeader("MobileMenuSocialMedia"),items:sa,getItemHref:ta,getItemIcon:ua,getItemLabel:va,getItemOnClick:wa,getItemTarget:xa,onItemClick:ya,view:"clear",onlyIcon:!0,size:"s"})}),_jsx(HeaderLogo,{className:cnHeader("Logo"),logo:f,href:h}),(ja||ia)&&_jsx(HeaderSearch,{value:ha,onChange:ia,onSubmit:ja,placeholder:ka})),right:_jsx("div",{className:cnHeader("RowCenterRight")},void 0,_jsx(HeaderLogin,{userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v}),(null===R||void 0===R?void 0:R.length)&&_jsx(TileMenu,{items:R,view:S,onItemClick:T,getItemDescription:U,getItemHref:V,getItemImage:W,getItemOnClick:X,getItemLabel:Y,listClassName:cnHeader("TileMenuList"),title:Z,isMobile:!0,style:{zIndex:Xa}}),(null===w||void 0===w?void 0:w.length)&&_jsx(Notifications,{listClassName:cnHeader("NotificationsList"),items:w,itemDateFormat:x,title:y,actions:z,groupByDay:A,groupLabelFormat:B,groups:C,getItemLabel:D,getItemDescription:E,getItemImage:F,getItemRead:G,getItemDate:H,getItemBadges:I,getItemActions:J,getItemGroup:K,getItemView:L,getActionLabel:M,getActionIcon:N,getActionOnClick:O,getGroupLabel:P,getGroupId:Q,isMobile:!0,style:{zIndex:Xa}}),Oa&&(null===Na||void 0===Na?void 0:Na.length)&&_jsx(ThemeToggler,{className:cnHeader("ThemeToggler"),items:Na,value:Oa,getItemKey:Pa,getItemLabel:Qa,getItemIcon:Ra,size:"s",onChange:a=>null===Sa||void 0===Sa?void 0:Sa(a)}))},rowBottom:$?_jsx(Breadcrumbs,{className:cnHeader("Breadcrumbs"),items:$,onlyIconRoot:_,size:"m",onItemClick:aa,getItemLabel:ba,getItemHref:ca,getItemIcon:da,getItemOnClick:ea,lastItemIsLink:fa,fitMode:ga}):void 0}))}const Ya=getMobileMenu(a,{languagesValue:Va,setLanguagesValue:Wa});return React.createElement(Layout,Object.assign({},Ta,{ref:b,className:cnHeader({fixed:e},[d]),rowCenter:{left:_jsx("div",{className:cnHeader("RowCenterLeft")},void 0,(Ya.length||q||r||(null===R||void 0===R?void 0:R.length)||(null===w||void 0===w?void 0:w.length)||ja||ia||(null===sa||void 0===sa?void 0:sa.length))&&_jsx(MobileMenu,{className:cnHeader("Menu"),items:getMobileMenu(a,{languagesValue:Va,setLanguagesValue:Wa}),getItemActive:j,getItemHref:k,getItemLabel:l,getItemOnClick:m,getItemSubMenu:n,getItemTarget:o,style:{zIndex:Xa},header:(q||r||(null===R||void 0===R?void 0:R.length)||(null===w||void 0===w?void 0:w.length)||ja||ia)&&_jsx("div",{className:cnHeader("MobileMenuHeader")},void 0,_jsx("div",{},void 0,_jsx(HeaderLogin,{userName:q,userAvatar:r,userInfo:s,userLogined:t,onLoginButtonClick:u,loginButtonLabel:v})),((null===R||void 0===R?void 0:R.length)||(null===w||void 0===w?void 0:w.length)||(null===Na||void 0===Na?void 0:Na.length))&&_jsx("div",{},void 0,Oa&&(null===Na||void 0===Na?void 0:Na.length)&&_jsx(ThemeToggler,{className:cnHeader("ThemeToggler"),items:Na,value:Oa,getItemKey:Pa,getItemLabel:Qa,getItemIcon:Ra,size:"s",onChange:a=>null===Sa||void 0===Sa?void 0:Sa(a)}),(null===R||void 0===R?void 0:R.length)&&_jsx(TileMenu,{items:R,view:S,onItemClick:T,getItemDescription:U,getItemHref:V,getItemImage:W,getItemOnClick:X,getItemLabel:Y,listClassName:cnHeader("TileMenuList"),title:Z,isMobile:!0,style:{zIndex:Xa}}),(null===w||void 0===w?void 0:w.length)&&_jsx(Notifications,{listClassName:cnHeader("NotificationsList"),items:w,itemDateFormat:x,title:y,actions:z,groupByDay:A,groupLabelFormat:B,groups:C,getItemLabel:D,getItemDescription:E,getItemImage:F,getItemRead:G,getItemDate:H,getItemBadges:I,getItemActions:J,getItemGroup:K,getItemView:L,getActionLabel:M,getActionIcon:N,getActionOnClick:O,getGroupLabel:P,getGroupId:Q,isMobile:!0,style:{zIndex:Xa}})),(ja||ia)&&_jsx("div",{className:cnHeader("MobileSearchContainer")},void 0,_jsx(HeaderSearch,{value:ha,onChange:ia,onSubmit:ja,placeholder:ka}))),footer:(null===sa||void 0===sa?void 0:sa.length)&&_jsx(ButtonMenu,{className:cnHeader("MobileMenuSocialMedia"),items:sa,getItemHref:ta,getItemIcon:ua,getItemLabel:va,getItemOnClick:wa,getItemTarget:xa,onItemClick:ya,view:"clear",onlyIcon:!0,size:"s"})}),_jsx(HeaderLogo,{className:cnHeader("Logo"),logo:f,href:h}))}}))};export const Header=forwardRef(HeaderRender);export*from"./types";
|
|
2
2
|
//# sourceMappingURL=Header.js.map
|
package/Header/Header.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Header/Header.tsx"],"names":["React","forwardRef","useState","cn","Layout","Menu","HeaderLogo","HeaderLogin","HeaderSearch","Notifications","TileMenu","useBreakpoints","MobileMenu","Breadcrumbs","SelectMenu","ButtonMenu","Languages","getMobileMenu","cnHeader","HeaderRender","props","ref","className","fixed","logo","onLogoClick","logoHref","menu","getMenuItemActive","getMenuItemHref","getMenuItemLabel","getMenuItemOnClick","getMenuItemSubMenu","getMenuItemTarget","onMenuItemClick","userName","userAvatar","userInfo","userLogined","onLoginButtonClick","loginButtonLabel","notifications","notificationsDateFormat","notificationsTitle","notificationsActions","notificationsGroupByDay","notificationsGroupLabelFormat","notificationsGroups","getNotificationsItemLabel","getNotificationsItemDescription","getNotificationsItemImage","getNotificationsItemRead","getNotificationsItemDate","getNotificationsItemBadges","getNotificationsItemActions","getNotificationsItemGroup","getNotificationsItemView","getNotificationsActionLabel","getNotificationsActionIcon","getNotificationsActionOnClick","getNotificationsGroupLabel","getNotificationsGroupId","tileMenu","tileMenuView","onTileMenuItemClick","getTileMenuItemDescription","getTileMenuItemHref","getTileMenuItemImage","getTileMenuItemOnClick","getTileMenuItemLabel","tileMenuTitle","breadcrumbs","breadcrumbsOnlyIconRoot","onBreadcrumbsItemClick","getBreadcrumbsItemLabel","getBreadcrumbsItemHref","getBreadcrumbsItemIcon","getBreadcrumbsItemOnClick","breadcrumbsLastItemIsLink","breadcrumbsFitMode","searchValue","searchOnChange","searchOnSubmit","searchPlaceholder","secondaryMenuLabel","secondaryMenu","getSecondaryMenuItemHref","getSecondaryMenuItemLabel","getSecondaryMenuItemOnClick","getSecondaryMenuItemSubMenu","getSecondaryMenuItemTarget","socialMedia","getSocialMediaItemHref","getSocialMediaItemIcon","getSocialMediaItemLabel","getSocialMediaItemOnClick","getSocialMediaItemTarget","onSocialMediaItemClick","languages","languageValue","languageValueProp","getLanguagesItemHref","getLanguagesItemLabel","getLanguagesItemOnClick","getLanguagesItemTarget","onLanguageChange","onLanguageChangeProp","additionalButtons","getAdditionalButtonsItemHref","getAdditionalButtonsItemIcon","getAdditionalButtonsItemLabel","getAdditionalButtonsItemOnClick","getAdditionalButtonsItemTarget","onAdditionalButtonsItemClick","otherProps","breakpoints","s","m","languagesValue","setLanguagesValue","elementZIndex","style","zIndex","left","length","center","right","params","item","breakpoint","Header"],"mappings":"kIAAA,MAAOA,CAAAA,KAAP,EAAgBC,UAAhB,CAA4BC,QAA5B,KAA4C,OAA5C,CAEA,OAASC,EAAT,gCAEA,OAASC,MAAT,iBACA,OAASC,IAAT,eACA,OAASC,UAAT,oBACA,OAASC,WAAT,qBACA,OAASC,YAAT,sBACA,OAASC,aAAT,wBACA,OAASC,QAAT,mBACA,OAASC,cAAT,KAA+B,8BAA/B,CACA,OAASC,UAAT,qBACA,OAASC,WAAT,KAA4B,iCAA5B,CACA,OAASC,UAAT,qBACA,OAASC,UAAT,qBACA,OAASC,SAAT,oBAEA,OAASC,aAAT,iBAEA,qBAEA,MAAO,MAAMC,CAAAA,QAAQ,CAAGf,EAAE,CAAC,QAAD,CAAnB,CAEP,KAAMgB,CAAAA,YAAY,CAAG,CAACC,CAAD,CAAqBC,CAArB,GAAwD,YACrE,CACJC,SAAS,CAATA,CADI,CAEJC,KAAK,CAALA,CAFI,CAKJC,IAAI,CAAJA,CALI,CAMJC,WAAW,CAAXA,CANI,CAOJC,QAAQ,CAARA,CAPI,CAUJC,IAAI,CAAJA,CAVI,CAWJC,iBAAiB,CAAjBA,CAXI,CAYJC,eAAe,CAAfA,CAZI,CAaJC,gBAAgB,CAAhBA,CAbI,CAcJC,kBAAkB,CAAlBA,CAdI,CAeJC,kBAAkB,CAAlBA,CAfI,CAgBJC,iBAAiB,CAAjBA,CAhBI,CAiBJC,eAAe,CAAfA,CAjBI,CAoBJC,QAAQ,CAARA,CApBI,CAqBJC,UAAU,CAAVA,CArBI,CAsBJC,QAAQ,CAARA,CAtBI,CAuBJC,WAAW,CAAXA,CAvBI,CAwBJC,kBAAkB,CAAlBA,CAxBI,CAyBJC,gBAAgB,CAAhBA,CAzBI,CA4BJC,aAAa,CAAbA,CA5BI,CA6BJC,uBAAuB,CAAvBA,CA7BI,CA8BJC,kBAAkB,CAAlBA,CA9BI,CA+BJC,oBAAoB,CAApBA,CA/BI,CAgCJC,uBAAuB,CAAvBA,CAhCI,CAiCJC,6BAA6B,CAA7BA,CAjCI,CAkCJC,mBAAmB,CAAnBA,CAlCI,CAmCJC,yBAAyB,CAAzBA,CAnCI,CAoCJC,+BAA+B,CAA/BA,CApCI,CAqCJC,yBAAyB,CAAzBA,CArCI,CAsCJC,wBAAwB,CAAxBA,CAtCI,CAuCJC,wBAAwB,CAAxBA,CAvCI,CAwCJC,0BAA0B,CAA1BA,CAxCI,CAyCJC,2BAA2B,CAA3BA,CAzCI,CA0CJC,yBAAyB,CAAzBA,CA1CI,CA2CJC,wBAAwB,CAAxBA,CA3CI,CA4CJC,2BAA2B,CAA3BA,CA5CI,CA6CJC,0BAA0B,CAA1BA,CA7CI,CA8CJC,6BAA6B,CAA7BA,CA9CI,CA+CJC,0BAA0B,CAA1BA,CA/CI,CAgDJC,uBAAuB,CAAvBA,CAhDI,CAmDJC,QAAQ,CAARA,CAnDI,CAoDJC,YAAY,CAAZA,CApDI,CAqDJC,mBAAmB,CAAnBA,CArDI,CAsDJC,0BAA0B,CAA1BA,CAtDI,CAuDJC,mBAAmB,CAAnBA,CAvDI,CAwDJC,oBAAoB,CAApBA,CAxDI,CAyDJC,sBAAsB,CAAtBA,CAzDI,CA0DJC,oBAAoB,CAApBA,CA1DI,CA2DJC,aAAa,CAAbA,CA3DI,CA8DJC,WAAW,CAAXA,CA9DI,CA+DJC,uBAAuB,CAAvBA,CA/DI,CAgEJC,sBAAsB,CAAtBA,EAhEI,CAiEJC,uBAAuB,CAAvBA,EAjEI,CAkEJC,sBAAsB,CAAtBA,EAlEI,CAmEJC,sBAAsB,CAAtBA,EAnEI,CAoEJC,yBAAyB,CAAzBA,EApEI,CAqEJC,yBAAyB,CAAzBA,EArEI,CAsEJC,kBAAkB,CAAlBA,EAtEI,CAyEJC,WAAW,CAAXA,EAzEI,CA0EJC,cAAc,CAAdA,EA1EI,CA2EJC,cAAc,CAAdA,EA3EI,CA4EJC,iBAAiB,CAAjBA,EA5EI,CA+EJC,kBAAkB,CAAlBA,EA/EI,CAgFJC,aAAa,CAAbA,EAhFI,CAiFJC,wBAAwB,CAAxBA,EAjFI,CAkFJC,yBAAyB,CAAzBA,EAlFI,CAmFJC,2BAA2B,CAA3BA,EAnFI,CAoFJC,2BAA2B,CAA3BA,EApFI,CAqFJC,0BAA0B,CAA1BA,EArFI,CAwFJC,WAAW,CAAXA,EAxFI,CAyFJC,sBAAsB,CAAtBA,EAzFI,CA0FJC,sBAAsB,CAAtBA,EA1FI,CA2FJC,uBAAuB,CAAvBA,EA3FI,CA4FJC,yBAAyB,CAAzBA,EA5FI,CA6FJC,wBAAwB,CAAxBA,EA7FI,CA8FJC,sBAAsB,CAAtBA,EA9FI,CAiGJC,SAAS,CAATA,EAjGI,CAkGJC,aAAa,CAAEC,EAlGX,CAmGJC,oBAAoB,CAApBA,EAnGI,CAoGJC,qBAAqB,CAArBA,EApGI,CAqGJC,uBAAuB,CAAvBA,EArGI,CAsGJC,sBAAsB,CAAtBA,EAtGI,CAuGJC,gBAAgB,CAAEC,EAvGd,CA0GJC,iBAAiB,CAAjBA,EA1GI,CA2GJC,4BAA4B,CAA5BA,EA3GI,CA4GJC,4BAA4B,CAA5BA,EA5GI,CA6GJC,6BAA6B,CAA7BA,EA7GI,CA8GJC,+BAA+B,CAA/BA,EA9GI,CA+GJC,8BAA8B,CAA9BA,EA/GI,CAgHJC,4BAA4B,CAA5BA,EAhHI,EAmHF7F,CApHuE,CAmHtE8F,EAnHsE,0BAoHvE9F,CApHuE,u/DAsHrE+F,EAAW,CAAGxG,cAAc,CAAC,CAAEyG,CAAC,CAAE,GAAL,CAAUC,CAAC,CAAE,IAAb,CAAD,CAtHyC,CAwHrE,CAACC,EAAD,CAAiBC,EAAjB,EAAsCrH,QAAQ,CAClDkG,EAAiB,UAAIF,EAAJ,WAAIA,EAAJ,QAAIA,EAAS,CAAG,CAAH,CAAb,CADiC,CAxHuB,CA4HrEsB,EAAa,CAAkC,QAA/B,mBAAOpG,CAAK,CAACqG,KAAb,qBAAO,EAAaC,MAApB,EAA0CtG,CAAK,CAACqG,KAAN,CAAYC,MAAtD,OA5HqD,OAmIvEP,CAAAA,EAAW,CAACE,CAnI2D,CAqIvE,oBAAC,MAAD,kBACMH,EADN,EAEE,GAAG,CAAE7F,CAFP,CAGE,SAAS,CAAEH,QAAQ,CAAC,CAAEK,KAAK,CAALA,CAAF,CAAD,CAAY,CAACD,CAAD,CAAZ,CAHrB,CAIE,MAAM,CAAE,CACNqG,IAAI,CACFvC,EAAkB,UAAIC,EAAJ,WAAIA,EAAJ,QAAIA,EAAa,CAAEuC,MAAnB,CAAlB,CACE,KAAC,UAAD,EACE,KAAK,CAAExC,EADT,CAEE,KAAK,CAAEC,EAFT,CAGE,WAAW,CAAEC,EAHf,CAIE,YAAY,CAAEC,EAJhB,CAKE,cAAc,CAAEC,EALlB,CAME,cAAc,CAAEC,EANlB,CAOE,aAAa,CAAEC,EAPjB,CAQE,KAAK,CAAE,CAAEgC,MAAM,CAAEF,EAAV,CART,EADF,OAFI,CAgBNK,MAAM,CAAE,QAAAlC,EAAW,WAAXA,UAAAA,EAAW,CAAEiC,MAAb,EACN,KAAC,UAAD,EACE,KAAK,CAAEjC,EADT,CAEE,WAAW,CAAEC,EAFf,CAGE,WAAW,CAAEC,EAHf,CAIE,YAAY,CAAEC,EAJhB,CAKE,cAAc,CAAEC,EALlB,CAME,aAAa,CAAEC,EANjB,CAOE,WAAW,CAAEC,EAPf,CAQE,IAAI,CAAC,OARP,CASE,QAAQ,GATV,CAUE,IAAI,CAAC,GAVP,EADM,OAhBF,CAgCN6B,KAAK,CACH,YAAK,SAAS,CAAE5G,QAAQ,CAAC,aAAD,CAAxB,SACG,CACC,QAAAgF,EAAS,WAATA,UAAAA,EAAS,CAAE0B,MAAX,EACE,KAAC,SAAD,EAEE,KAAK,CAAE1B,EAFT,CAGE,KAAK,CAAEoB,EAHT,CAIE,WAAW,CAAEjB,EAJf,CAKE,YAAY,CAAEC,EALhB,CAME,cAAc,CAAEC,EANlB,CAOE,aAAa,CAAEC,EAPjB,CAQE,QAAQ,CAvDuDuB,CAAM,EAAI,QACzFrB,EADyF,WACzFA,EADyF,QACzFA,EAAoB,CAAGqB,CAAH,CADqE,CAEzFR,EAAiB,CAACQ,CAAM,CAACC,IAAR,CAClB,CA4Ce,CASE,KAAK,CAAE,CAAEN,MAAM,CAAEF,EAAV,CATT,EACM,WADN,CADF,OADD,CAgBC,QAAAb,EAAiB,WAAjBA,UAAAA,EAAiB,CAAEiB,MAAnB,EACE,KAAC,UAAD,EACE,KAAK,CAAEjB,EADT,CAEE,WAAW,CAAEC,EAFf,CAGE,WAAW,CAAEC,EAHf,CAIE,YAAY,CAAEC,EAJhB,CAKE,cAAc,CAAEC,EALlB,CAME,aAAa,CAAEC,EANjB,CAOE,WAAW,CAAEC,EAPf,CAQE,IAAI,CAAC,OARP,CASE,IAAI,CAAC,GATP,EADF,OAhBD,CADH,CAjCI,CAJV,CAyEE,SAAS,CAAE,CACTU,IAAI,CACF,YAAK,SAAS,CAAEzG,QAAQ,CAAC,eAAD,CAAkB,CAAE+G,UAAU,CAAE,GAAd,CAAlB,CAAxB,SACE,KAAC,UAAD,EAAY,SAAS,CAAE/G,QAAQ,CAAC,MAAD,CAA/B,CAAyC,IAAI,CAAEM,CAA/C,CAAqD,IAAI,CAAEE,CAA3D,EADF,CAEG,CAACwD,EAAc,EAAID,EAAnB,GACC,KAAC,YAAD,EACE,KAAK,CAAED,EADT,CAEE,QAAQ,CAAEC,EAFZ,CAGE,QAAQ,CAAEC,EAHZ,CAIE,WAAW,CAAEC,EAJf,EAHJ,CAUGxD,CAAI,EACH,KAAC,IAAD,EACE,SAAS,CAAET,QAAQ,CAAC,MAAD,CADrB,CAEE,KAAK,CAAES,CAFT,CAGE,aAAa,CAAEC,CAHjB,CAIE,WAAW,CAAEC,CAJf,CAKE,YAAY,CAAEC,CALhB,CAME,cAAc,CAAEC,CANlB,CAOE,cAAc,CAAEC,CAPlB,CAQE,aAAa,CAAEC,CARjB,CASE,WAAW,CAAEC,CATf,CAUE,KAAK,CAAE,CAAEwF,MAAM,CAAEF,EAAV,CAVT,EAXJ,CAFO,CA4BTM,KAAK,CACH,YAAK,SAAS,CAAE5G,QAAQ,CAAC,gBAAD,CAAxB,SACE,KAAC,WAAD,EACE,QAAQ,CAAEiB,CADZ,CAEE,UAAU,CAAEC,CAFd,CAGE,QAAQ,CAAEC,CAHZ,CAIE,WAAW,CAAEC,CAJf,CAKE,kBAAkB,CAAEC,CALtB,CAME,gBAAgB,CAAEC,CANpB,EADF,CASG,QAAAsB,CAAQ,WAARA,SAAAA,CAAQ,CAAE8D,MAAV,GACC,KAAC,QAAD,EACE,KAAK,CAAE9D,CADT,CAEE,IAAI,CAAEC,CAFR,CAGE,WAAW,CAAEC,CAHf,CAIE,kBAAkB,CAAEC,CAJtB,CAKE,WAAW,CAAEC,CALf,CAME,YAAY,CAAEC,CANhB,CAOE,cAAc,CAAEC,CAPlB,CAQE,YAAY,CAAEC,CARhB,CASE,aAAa,CAAEnD,QAAQ,CAAC,cAAD,CAAiB,CAAE+G,UAAU,CAAE,GAAd,CAAjB,CATzB,CAUE,KAAK,CAAE3D,CAVT,CAWE,KAAK,CAAE,CAAEoD,MAAM,CAAEF,EAAV,CAXT,EAVJ,CAwBG,QAAA/E,CAAa,WAAbA,SAAAA,CAAa,CAAEmF,MAAf,GACC,KAAC,aAAD,EACE,aAAa,CAAE1G,QAAQ,CAAC,mBAAD,CAAsB,CAAE+G,UAAU,CAAE,GAAd,CAAtB,CADzB,CAEE,KAAK,CAAExF,CAFT,CAGE,cAAc,CAAEC,CAHlB,CAIE,KAAK,CAAEC,CAJT,CAKE,OAAO,CAAEC,CALX,CAME,UAAU,CAAEC,CANd,CAOE,gBAAgB,CAAEC,CAPpB,CAQE,MAAM,CAAEC,CARV,CASE,YAAY,CAAEC,CAThB,CAUE,kBAAkB,CAAEC,CAVtB,CAWE,YAAY,CAAEC,CAXhB,CAYE,WAAW,CAAEC,CAZf,CAaE,WAAW,CAAEC,CAbf,CAcE,aAAa,CAAEC,CAdjB,CAeE,cAAc,CAAEC,CAflB,CAgBE,YAAY,CAAEC,CAhBhB,CAiBE,WAAW,CAAEC,CAjBf,CAkBE,cAAc,CAAEC,CAlBlB,CAmBE,aAAa,CAAEC,CAnBjB,CAoBE,gBAAgB,CAAEC,CApBpB,CAqBE,aAAa,CAAEC,CArBjB,CAsBE,UAAU,CAAEC,CAtBd,CAuBE,KAAK,CAAE,CAAE6D,MAAM,CAAEF,EAAV,CAvBT,EAzBJ,CA7BO,CAzEb,CA4JE,SAAS,CACPjD,CAAW,CACT,KAAC,WAAD,EACE,SAAS,CAAErD,QAAQ,CAAC,aAAD,CADrB,CAEE,KAAK,CAAEqD,CAFT,CAGE,YAAY,CAAEC,CAHhB,CAIE,IAAI,CAAC,GAJP,CAKE,WAAW,CAAEC,EALf,CAME,YAAY,CAAEC,EANhB,CAOE,WAAW,CAAEC,EAPf,CAQE,WAAW,CAAEC,EARf,CASE,cAAc,CAAEC,EATlB,CAUE,cAAc,CAAEC,EAVlB,CAWE,OAAO,CAAEC,EAXX,EADS,OA7Jf,GArIuE,CAwTvEoC,EAAW,CAACC,CAxT2D,CA0TvE,oBAAC,MAAD,kBACMF,EADN,EAEE,GAAG,CAAE7F,CAFP,CAGE,SAAS,CAAEH,QAAQ,CAAC,CAAEK,KAAK,CAALA,CAAF,CAAD,CAAY,CAACD,CAAD,CAAZ,CAHrB,CAIE,SAAS,CAAE,CACTqG,IAAI,CACF,YAAK,SAAS,CAAEzG,QAAQ,CAAC,eAAD,CAAxB,SACGS,CAAI,EACH,KAAC,UAAD,EACE,SAAS,CAAET,QAAQ,CAAC,MAAD,CADrB,CAEE,KAAK,CAAED,aAAa,CAACG,CAAD,CAAQ,CAAEkG,cAAc,CAAdA,EAAF,CAAkBC,iBAAiB,CAAjBA,EAAlB,CAAR,CAFtB,CAGE,aAAa,CAAE3F,CAHjB,CAIE,WAAW,CAAEC,CAJf,CAKE,YAAY,CAAEC,CALhB,CAME,cAAc,CAAEC,CANlB,CAOE,cAAc,CAAEC,CAPlB,CAQE,aAAa,CAAEC,CARjB,CASE,KAAK,CAAE,CAAEyF,MAAM,CAAEF,EAAV,CATT,CAUE,MAAM,CACJ,QAAA7B,EAAW,WAAXA,UAAAA,EAAW,CAAEiC,MAAb,GACE,KAAC,UAAD,EACE,SAAS,CAAE1G,QAAQ,CAAC,uBAAD,CADrB,CAEE,KAAK,CAAEyE,EAFT,CAGE,WAAW,CAAEC,EAHf,CAIE,WAAW,CAAEC,EAJf,CAKE,YAAY,CAAEC,EALhB,CAME,cAAc,CAAEC,EANlB,CAOE,aAAa,CAAEC,EAPjB,CAQE,WAAW,CAAEC,EARf,CASE,IAAI,CAAC,OATP,CAUE,QAAQ,GAVV,CAWE,IAAI,CAAC,GAXP,EAZN,EAFJ,CA+BE,KAAC,UAAD,EAAY,SAAS,CAAE/E,QAAQ,CAAC,MAAD,CAA/B,CAAyC,IAAI,CAAEM,CAA/C,CAAqD,IAAI,CAAEE,CAA3D,EA/BF,CAgCG,CAACwD,EAAc,EAAID,EAAnB,GACC,KAAC,YAAD,EACE,KAAK,CAAED,EADT,CAEE,QAAQ,CAAEC,EAFZ,CAGE,QAAQ,CAAEC,EAHZ,CAIE,WAAW,CAAEC,EAJf,EAjCJ,CAFO,CA4CT2C,KAAK,CACH,YAAK,SAAS,CAAE5G,QAAQ,CAAC,gBAAD,CAAxB,SACE,KAAC,WAAD,EACE,QAAQ,CAAEiB,CADZ,CAEE,UAAU,CAAEC,CAFd,CAGE,QAAQ,CAAEC,CAHZ,CAIE,WAAW,CAAEC,CAJf,CAKE,kBAAkB,CAAEC,CALtB,CAME,gBAAgB,CAAEC,CANpB,EADF,CASG,QAAAsB,CAAQ,WAARA,SAAAA,CAAQ,CAAE8D,MAAV,GACC,KAAC,QAAD,EACE,KAAK,CAAE9D,CADT,CAEE,IAAI,CAAEC,CAFR,CAGE,WAAW,CAAEC,CAHf,CAIE,kBAAkB,CAAEC,CAJtB,CAKE,WAAW,CAAEC,CALf,CAME,YAAY,CAAEC,CANhB,CAOE,cAAc,CAAEC,CAPlB,CAQE,YAAY,CAAEC,CARhB,CASE,aAAa,CAAEnD,QAAQ,CAAC,cAAD,CATzB,CAUE,KAAK,CAAEoD,CAVT,CAWE,QAAQ,GAXV,CAYE,KAAK,CAAE,CAAEoD,MAAM,CAAEF,EAAV,CAZT,EAVJ,CAyBG,QAAA/E,CAAa,WAAbA,SAAAA,CAAa,CAAEmF,MAAf,GACC,KAAC,aAAD,EACE,aAAa,CAAE1G,QAAQ,CAAC,mBAAD,CADzB,CAEE,KAAK,CAAEuB,CAFT,CAGE,cAAc,CAAEC,CAHlB,CAIE,KAAK,CAAEC,CAJT,CAKE,OAAO,CAAEC,CALX,CAME,UAAU,CAAEC,CANd,CAOE,gBAAgB,CAAEC,CAPpB,CAQE,MAAM,CAAEC,CARV,CASE,YAAY,CAAEC,CAThB,CAUE,kBAAkB,CAAEC,CAVtB,CAWE,YAAY,CAAEC,CAXhB,CAYE,WAAW,CAAEC,CAZf,CAaE,WAAW,CAAEC,CAbf,CAcE,aAAa,CAAEC,CAdjB,CAeE,cAAc,CAAEC,CAflB,CAgBE,YAAY,CAAEC,CAhBhB,CAiBE,WAAW,CAAEC,CAjBf,CAkBE,cAAc,CAAEC,CAlBlB,CAmBE,aAAa,CAAEC,CAnBjB,CAoBE,gBAAgB,CAAEC,CApBpB,CAqBE,aAAa,CAAEC,CArBjB,CAsBE,UAAU,CAAEC,CAtBd,CAuBE,QAAQ,GAvBV,CAwBE,KAAK,CAAE,CAAE6D,MAAM,CAAEF,EAAV,CAxBT,EA1BJ,CA7CO,CAJb,CAyGE,SAAS,CACPjD,CAAW,CACT,KAAC,WAAD,EACE,SAAS,CAAErD,QAAQ,CAAC,aAAD,CADrB,CAEE,KAAK,CAAEqD,CAFT,CAGE,YAAY,CAAEC,CAHhB,CAIE,IAAI,CAAC,GAJP,CAKE,WAAW,CAAEC,EALf,CAME,YAAY,CAAEC,EANhB,CAOE,WAAW,CAAEC,EAPf,CAQE,WAAW,CAAEC,EARf,CASE,cAAc,CAAEC,EATlB,CAUE,cAAc,CAAEC,EAVlB,CAWE,OAAO,CAAEC,EAXX,EADS,OA1Gf,GA1TuE,CA2bzE,oBAAC,MAAD,kBACMmC,EADN,EAEE,GAAG,CAAE7F,CAFP,CAGE,SAAS,CAAEH,QAAQ,CAAC,CAAEK,KAAK,CAALA,CAAF,CAAD,CAAY,CAACD,CAAD,CAAZ,CAHrB,CAIE,SAAS,CAAE,CACTqG,IAAI,CACF,YAAK,SAAS,CAAEzG,QAAQ,CAAC,eAAD,CAAxB,SACGS,CAAI,EACH,KAAC,UAAD,EACE,SAAS,CAAET,QAAQ,CAAC,MAAD,CADrB,CAEE,KAAK,CAAED,aAAa,CAACG,CAAD,CAAQ,CAAEkG,cAAc,CAAdA,EAAF,CAAkBC,iBAAiB,CAAjBA,EAAlB,CAAR,CAFtB,CAGE,aAAa,CAAE3F,CAHjB,CAIE,WAAW,CAAEC,CAJf,CAKE,YAAY,CAAEC,CALhB,CAME,cAAc,CAAEC,CANlB,CAOE,cAAc,CAAEC,CAPlB,CAQE,aAAa,CAAEC,CARjB,CASE,KAAK,CAAE,CAAEyF,MAAM,CAAEF,EAAV,CATT,CAUE,MAAM,CACJ,YAAK,SAAS,CAAEtG,QAAQ,CAAC,kBAAD,CAAxB,SACE,qBACE,KAAC,WAAD,EACE,QAAQ,CAAEiB,CADZ,CAEE,UAAU,CAAEC,CAFd,CAGE,QAAQ,CAAEC,CAHZ,CAIE,WAAW,CAAEC,CAJf,CAKE,kBAAkB,CAAEC,CALtB,CAME,gBAAgB,CAAEC,CANpB,EADF,CADF,CAWG,QAAAsB,CAAQ,WAARA,SAAAA,CAAQ,CAAE8D,MAAV,WAAoBnF,CAApB,WAAoBA,CAApB,QAAoBA,CAAa,CAAEmF,MAAnC,GACC,qBACG,QAAA9D,CAAQ,WAARA,SAAAA,CAAQ,CAAE8D,MAAV,GACC,KAAC,QAAD,EACE,KAAK,CAAE9D,CADT,CAEE,IAAI,CAAEC,CAFR,CAGE,WAAW,CAAEC,CAHf,CAIE,kBAAkB,CAAEC,CAJtB,CAKE,WAAW,CAAEC,CALf,CAME,YAAY,CAAEC,CANhB,CAOE,cAAc,CAAEC,CAPlB,CAQE,YAAY,CAAEC,CARhB,CASE,aAAa,CAAEnD,QAAQ,CAAC,cAAD,CATzB,CAUE,KAAK,CAAEoD,CAVT,CAWE,QAAQ,GAXV,CAYE,KAAK,CAAE,CAAEoD,MAAM,CAAEF,EAAV,CAZT,EAFJ,CAiBG,QAAA/E,CAAa,WAAbA,SAAAA,CAAa,CAAEmF,MAAf,GACC,KAAC,aAAD,EACE,aAAa,CAAE1G,QAAQ,CAAC,mBAAD,CADzB,CAEE,KAAK,CAAEuB,CAFT,CAGE,cAAc,CAAEC,CAHlB,CAIE,KAAK,CAAEC,CAJT,CAKE,OAAO,CAAEC,CALX,CAME,UAAU,CAAEC,CANd,CAOE,gBAAgB,CAAEC,CAPpB,CAQE,MAAM,CAAEC,CARV,CASE,YAAY,CAAEC,CAThB,CAUE,kBAAkB,CAAEC,CAVtB,CAWE,YAAY,CAAEC,CAXhB,CAYE,WAAW,CAAEC,CAZf,CAaE,WAAW,CAAEC,CAbf,CAcE,aAAa,CAAEC,CAdjB,CAeE,cAAc,CAAEC,CAflB,CAgBE,YAAY,CAAEC,CAhBhB,CAiBE,WAAW,CAAEC,CAjBf,CAkBE,cAAc,CAAEC,CAlBlB,CAmBE,aAAa,CAAEC,CAnBjB,CAoBE,gBAAgB,CAAEC,CApBpB,CAqBE,aAAa,CAAEC,CArBjB,CAsBE,UAAU,CAAEC,CAtBd,CAuBE,QAAQ,GAvBV,CAwBE,KAAK,CAAE,CAAE6D,MAAM,CAAEF,EAAV,CAxBT,EAlBJ,CAZJ,CA2DE,YAAK,SAAS,CAAEtG,QAAQ,CAAC,uBAAD,CAAxB,SACG,CAACgE,EAAc,EAAID,EAAnB,GACC,KAAC,YAAD,EACE,KAAK,CAAED,EADT,CAEE,QAAQ,CAAEC,EAFZ,CAGE,QAAQ,CAAEC,EAHZ,CAIE,WAAW,CAAEC,EAJf,EAFJ,CA3DF,CAXJ,CAkFE,MAAM,CACJ,QAAAQ,EAAW,WAAXA,UAAAA,EAAW,CAAEiC,MAAb,GACE,KAAC,UAAD,EACE,SAAS,CAAE1G,QAAQ,CAAC,uBAAD,CADrB,CAEE,KAAK,CAAEyE,EAFT,CAGE,WAAW,CAAEC,EAHf,CAIE,WAAW,CAAEC,EAJf,CAKE,YAAY,CAAEC,EALhB,CAME,cAAc,CAAEC,EANlB,CAOE,aAAa,CAAEC,EAPjB,CAQE,WAAW,CAAEC,EARf,CASE,IAAI,CAAC,OATP,CAUE,QAAQ,GAVV,CAWE,IAAI,CAAC,GAXP,EApFN,EAFJ,CAuGE,KAAC,UAAD,EAAY,SAAS,CAAE/E,QAAQ,CAAC,MAAD,CAA/B,CAAyC,IAAI,CAAEM,CAA/C,CAAqD,IAAI,CAAEE,CAA3D,EAvGF,CAFO,CAJb,GAmHH,CA9iBD,CAgjBA,MAAO,MAAMwG,CAAAA,MAAM,CAAGjI,UAAU,CAACkB,YAAD,CAAzB,CAEP","sourcesContent":["import React, { forwardRef, useState } from 'react'\n\nimport { cn } from '@/__private__/utils/bem'\nimport { HeaderProps, HeaderComponent, HeaderDefaultLanguagesItem } from './types'\nimport { Layout } from '@/Layout'\nimport { Menu } from '@/Menu'\nimport { HeaderLogo } from './HeaderLogo'\nimport { HeaderLogin } from './HeaderLogin'\nimport { HeaderSearch } from './HeaderSearch'\nimport { Notifications } from '@/Notifications'\nimport { TileMenu } from '@/TileMenu'\nimport { useBreakpoints } from '@consta/uikit/useBreakpoints'\nimport { MobileMenu } from '@/MobileMenu'\nimport { Breadcrumbs } from '@consta/uikit/BreadcrumbsCanary'\nimport { SelectMenu } from '@/SelectMenu'\nimport { ButtonMenu } from '@/ButtonMenu'\nimport { Languages, LanguagesProps } from '@/Languages'\n\nimport { getMobileMenu } from './helpers'\n\nimport './Header.css'\n\nexport const cnHeader = cn('Header')\n\nconst HeaderRender = (props: HeaderProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n className,\n fixed,\n\n // Logo\n logo,\n onLogoClick,\n logoHref,\n\n // Menu\n menu,\n getMenuItemActive,\n getMenuItemHref,\n getMenuItemLabel,\n getMenuItemOnClick,\n getMenuItemSubMenu,\n getMenuItemTarget,\n onMenuItemClick,\n\n // Login\n userName,\n userAvatar,\n userInfo,\n userLogined,\n onLoginButtonClick,\n loginButtonLabel,\n\n // Notifications\n notifications,\n notificationsDateFormat,\n notificationsTitle,\n notificationsActions,\n notificationsGroupByDay,\n notificationsGroupLabelFormat,\n notificationsGroups,\n getNotificationsItemLabel,\n getNotificationsItemDescription,\n getNotificationsItemImage,\n getNotificationsItemRead,\n getNotificationsItemDate,\n getNotificationsItemBadges,\n getNotificationsItemActions,\n getNotificationsItemGroup,\n getNotificationsItemView,\n getNotificationsActionLabel,\n getNotificationsActionIcon,\n getNotificationsActionOnClick,\n getNotificationsGroupLabel,\n getNotificationsGroupId,\n\n // TileMenu\n tileMenu,\n tileMenuView,\n onTileMenuItemClick,\n getTileMenuItemDescription,\n getTileMenuItemHref,\n getTileMenuItemImage,\n getTileMenuItemOnClick,\n getTileMenuItemLabel,\n tileMenuTitle,\n\n // Breadcrumbs\n breadcrumbs,\n breadcrumbsOnlyIconRoot,\n onBreadcrumbsItemClick,\n getBreadcrumbsItemLabel,\n getBreadcrumbsItemHref,\n getBreadcrumbsItemIcon,\n getBreadcrumbsItemOnClick,\n breadcrumbsLastItemIsLink,\n breadcrumbsFitMode,\n\n // Search\n searchValue,\n searchOnChange,\n searchOnSubmit,\n searchPlaceholder,\n\n // SecondaryMenu\n secondaryMenuLabel,\n secondaryMenu,\n getSecondaryMenuItemHref,\n getSecondaryMenuItemLabel,\n getSecondaryMenuItemOnClick,\n getSecondaryMenuItemSubMenu,\n getSecondaryMenuItemTarget,\n\n // SocialMedia\n socialMedia,\n getSocialMediaItemHref,\n getSocialMediaItemIcon,\n getSocialMediaItemLabel,\n getSocialMediaItemOnClick,\n getSocialMediaItemTarget,\n onSocialMediaItemClick,\n\n // Languages\n languages,\n languageValue: languageValueProp,\n getLanguagesItemHref,\n getLanguagesItemLabel,\n getLanguagesItemOnClick,\n getLanguagesItemTarget,\n onLanguageChange: onLanguageChangeProp,\n\n // AdditionalButtons\n additionalButtons,\n getAdditionalButtonsItemHref,\n getAdditionalButtonsItemIcon,\n getAdditionalButtonsItemLabel,\n getAdditionalButtonsItemOnClick,\n getAdditionalButtonsItemTarget,\n onAdditionalButtonsItemClick,\n\n ...otherProps\n } = props\n\n const breakpoints = useBreakpoints({ s: 800, m: 1200 })\n\n const [languagesValue, setLanguagesValue] = useState<HeaderDefaultLanguagesItem | undefined>(\n languageValueProp || languages?.[0]\n )\n\n const elementZIndex = typeof props.style?.zIndex === 'number' ? props.style.zIndex : undefined\n\n const onLanguageChange: LanguagesProps<HeaderDefaultLanguagesItem>['onChange'] = params => {\n onLanguageChangeProp?.(params)\n setLanguagesValue(params.item)\n }\n\n if (breakpoints.m) {\n return (\n <Layout\n {...otherProps}\n ref={ref}\n className={cnHeader({ fixed }, [className])}\n rowTop={{\n left:\n secondaryMenuLabel && secondaryMenu?.length ? (\n <SelectMenu\n label={secondaryMenuLabel}\n items={secondaryMenu}\n getItemHref={getSecondaryMenuItemHref}\n getItemLabel={getSecondaryMenuItemLabel}\n getItemOnClick={getSecondaryMenuItemOnClick}\n getItemSubMenu={getSecondaryMenuItemSubMenu}\n getItemTarget={getSecondaryMenuItemTarget}\n style={{ zIndex: elementZIndex }}\n />\n ) : (\n undefined\n ),\n center: socialMedia?.length ? (\n <ButtonMenu\n items={socialMedia}\n getItemHref={getSocialMediaItemHref}\n getItemIcon={getSocialMediaItemIcon}\n getItemLabel={getSocialMediaItemLabel}\n getItemOnClick={getSocialMediaItemOnClick}\n getItemTarget={getSocialMediaItemTarget}\n onItemClick={onSocialMediaItemClick}\n view=\"clear\"\n onlyIcon\n size=\"s\"\n />\n ) : (\n undefined\n ),\n right: (\n <div className={cnHeader('RowTopRight')}>\n {[\n languages?.length ? (\n <Languages\n key=\"Languages\"\n items={languages}\n value={languagesValue}\n getItemHref={getLanguagesItemHref}\n getItemLabel={getLanguagesItemLabel}\n getItemOnClick={getLanguagesItemOnClick}\n getItemTarget={getLanguagesItemTarget}\n onChange={onLanguageChange}\n style={{ zIndex: elementZIndex }}\n />\n ) : (\n undefined\n ),\n additionalButtons?.length ? (\n <ButtonMenu\n items={additionalButtons}\n getItemHref={getAdditionalButtonsItemHref}\n getItemIcon={getAdditionalButtonsItemIcon}\n getItemLabel={getAdditionalButtonsItemLabel}\n getItemOnClick={getAdditionalButtonsItemOnClick}\n getItemTarget={getAdditionalButtonsItemTarget}\n onItemClick={onAdditionalButtonsItemClick}\n view=\"clear\"\n size=\"s\"\n />\n ) : (\n undefined\n ),\n ]}\n </div>\n ),\n }}\n rowCenter={{\n left: (\n <div className={cnHeader('RowCenterLeft', { breakpoint: 'm' })}>\n <HeaderLogo className={cnHeader('Logo')} logo={logo} href={logoHref} />\n {(searchOnSubmit || searchOnChange) && (\n <HeaderSearch\n value={searchValue}\n onChange={searchOnChange}\n onSubmit={searchOnSubmit}\n placeholder={searchPlaceholder}\n />\n )}\n {menu && (\n <Menu\n className={cnHeader('Menu')}\n items={menu}\n getItemActive={getMenuItemActive}\n getItemHref={getMenuItemHref}\n getItemLabel={getMenuItemLabel}\n getItemOnClick={getMenuItemOnClick}\n getItemSubMenu={getMenuItemSubMenu}\n getItemTarget={getMenuItemTarget}\n onItemClick={onMenuItemClick}\n style={{ zIndex: elementZIndex }}\n />\n )}\n </div>\n ),\n right: (\n <div className={cnHeader('RowCenterRight')}>\n <HeaderLogin\n userName={userName}\n userAvatar={userAvatar}\n userInfo={userInfo}\n userLogined={userLogined}\n onLoginButtonClick={onLoginButtonClick}\n loginButtonLabel={loginButtonLabel}\n />\n {tileMenu?.length && (\n <TileMenu\n items={tileMenu}\n view={tileMenuView}\n onItemClick={onTileMenuItemClick}\n getItemDescription={getTileMenuItemDescription}\n getItemHref={getTileMenuItemHref}\n getItemImage={getTileMenuItemImage}\n getItemOnClick={getTileMenuItemOnClick}\n getItemLabel={getTileMenuItemLabel}\n listClassName={cnHeader('TileMenuList', { breakpoint: 'm' })}\n title={tileMenuTitle}\n style={{ zIndex: elementZIndex }}\n />\n )}\n {notifications?.length && (\n <Notifications\n listClassName={cnHeader('NotificationsList', { breakpoint: 'm' })}\n items={notifications}\n itemDateFormat={notificationsDateFormat}\n title={notificationsTitle}\n actions={notificationsActions}\n groupByDay={notificationsGroupByDay}\n groupLabelFormat={notificationsGroupLabelFormat}\n groups={notificationsGroups}\n getItemLabel={getNotificationsItemLabel}\n getItemDescription={getNotificationsItemDescription}\n getItemImage={getNotificationsItemImage}\n getItemRead={getNotificationsItemRead}\n getItemDate={getNotificationsItemDate}\n getItemBadges={getNotificationsItemBadges}\n getItemActions={getNotificationsItemActions}\n getItemGroup={getNotificationsItemGroup}\n getItemView={getNotificationsItemView}\n getActionLabel={getNotificationsActionLabel}\n getActionIcon={getNotificationsActionIcon}\n getActionOnClick={getNotificationsActionOnClick}\n getGroupLabel={getNotificationsGroupLabel}\n getGroupId={getNotificationsGroupId}\n style={{ zIndex: elementZIndex }}\n />\n )}\n </div>\n ),\n }}\n rowBottom={\n breadcrumbs ? (\n <Breadcrumbs\n className={cnHeader('Breadcrumbs')}\n items={breadcrumbs}\n onlyIconRoot={breadcrumbsOnlyIconRoot}\n size=\"m\"\n onItemClick={onBreadcrumbsItemClick}\n getItemLabel={getBreadcrumbsItemLabel}\n getItemHref={getBreadcrumbsItemHref}\n getItemIcon={getBreadcrumbsItemIcon}\n getItemOnClick={getBreadcrumbsItemOnClick}\n lastItemIsLink={breadcrumbsLastItemIsLink}\n fitMode={breadcrumbsFitMode}\n />\n ) : (\n undefined\n )\n }\n />\n )\n }\n\n if (breakpoints.s) {\n return (\n <Layout\n {...otherProps}\n ref={ref}\n className={cnHeader({ fixed }, [className])}\n rowCenter={{\n left: (\n <div className={cnHeader('RowCenterLeft')}>\n {menu && (\n <MobileMenu\n className={cnHeader('Menu')}\n items={getMobileMenu(props, { languagesValue, setLanguagesValue })}\n getItemActive={getMenuItemActive}\n getItemHref={getMenuItemHref}\n getItemLabel={getMenuItemLabel}\n getItemOnClick={getMenuItemOnClick}\n getItemSubMenu={getMenuItemSubMenu}\n getItemTarget={getMenuItemTarget}\n style={{ zIndex: elementZIndex }}\n footer={\n socialMedia?.length && (\n <ButtonMenu\n className={cnHeader('MobileMenuSocialMedia')}\n items={socialMedia}\n getItemHref={getSocialMediaItemHref}\n getItemIcon={getSocialMediaItemIcon}\n getItemLabel={getSocialMediaItemLabel}\n getItemOnClick={getSocialMediaItemOnClick}\n getItemTarget={getSocialMediaItemTarget}\n onItemClick={onSocialMediaItemClick}\n view=\"clear\"\n onlyIcon\n size=\"s\"\n />\n )\n }\n />\n )}\n <HeaderLogo className={cnHeader('Logo')} logo={logo} href={logoHref} />\n {(searchOnSubmit || searchOnChange) && (\n <HeaderSearch\n value={searchValue}\n onChange={searchOnChange}\n onSubmit={searchOnSubmit}\n placeholder={searchPlaceholder}\n />\n )}\n </div>\n ),\n right: (\n <div className={cnHeader('RowCenterRight')}>\n <HeaderLogin\n userName={userName}\n userAvatar={userAvatar}\n userInfo={userInfo}\n userLogined={userLogined}\n onLoginButtonClick={onLoginButtonClick}\n loginButtonLabel={loginButtonLabel}\n />\n {tileMenu?.length && (\n <TileMenu\n items={tileMenu}\n view={tileMenuView}\n onItemClick={onTileMenuItemClick}\n getItemDescription={getTileMenuItemDescription}\n getItemHref={getTileMenuItemHref}\n getItemImage={getTileMenuItemImage}\n getItemOnClick={getTileMenuItemOnClick}\n getItemLabel={getTileMenuItemLabel}\n listClassName={cnHeader('TileMenuList')}\n title={tileMenuTitle}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n {notifications?.length && (\n <Notifications\n listClassName={cnHeader('NotificationsList')}\n items={notifications}\n itemDateFormat={notificationsDateFormat}\n title={notificationsTitle}\n actions={notificationsActions}\n groupByDay={notificationsGroupByDay}\n groupLabelFormat={notificationsGroupLabelFormat}\n groups={notificationsGroups}\n getItemLabel={getNotificationsItemLabel}\n getItemDescription={getNotificationsItemDescription}\n getItemImage={getNotificationsItemImage}\n getItemRead={getNotificationsItemRead}\n getItemDate={getNotificationsItemDate}\n getItemBadges={getNotificationsItemBadges}\n getItemActions={getNotificationsItemActions}\n getItemGroup={getNotificationsItemGroup}\n getItemView={getNotificationsItemView}\n getActionLabel={getNotificationsActionLabel}\n getActionIcon={getNotificationsActionIcon}\n getActionOnClick={getNotificationsActionOnClick}\n getGroupLabel={getNotificationsGroupLabel}\n getGroupId={getNotificationsGroupId}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n </div>\n ),\n }}\n rowBottom={\n breadcrumbs ? (\n <Breadcrumbs\n className={cnHeader('Breadcrumbs')}\n items={breadcrumbs}\n onlyIconRoot={breadcrumbsOnlyIconRoot}\n size=\"m\"\n onItemClick={onBreadcrumbsItemClick}\n getItemLabel={getBreadcrumbsItemLabel}\n getItemHref={getBreadcrumbsItemHref}\n getItemIcon={getBreadcrumbsItemIcon}\n getItemOnClick={getBreadcrumbsItemOnClick}\n lastItemIsLink={breadcrumbsLastItemIsLink}\n fitMode={breadcrumbsFitMode}\n />\n ) : (\n undefined\n )\n }\n />\n )\n }\n\n return (\n <Layout\n {...otherProps}\n ref={ref}\n className={cnHeader({ fixed }, [className])}\n rowCenter={{\n left: (\n <div className={cnHeader('RowCenterLeft')}>\n {menu && (\n <MobileMenu\n className={cnHeader('Menu')}\n items={getMobileMenu(props, { languagesValue, setLanguagesValue })}\n getItemActive={getMenuItemActive}\n getItemHref={getMenuItemHref}\n getItemLabel={getMenuItemLabel}\n getItemOnClick={getMenuItemOnClick}\n getItemSubMenu={getMenuItemSubMenu}\n getItemTarget={getMenuItemTarget}\n style={{ zIndex: elementZIndex }}\n header={\n <div className={cnHeader('MobileMenuHeader')}>\n <div>\n <HeaderLogin\n userName={userName}\n userAvatar={userAvatar}\n userInfo={userInfo}\n userLogined={userLogined}\n onLoginButtonClick={onLoginButtonClick}\n loginButtonLabel={loginButtonLabel}\n />\n </div>\n {tileMenu?.length && notifications?.length && (\n <div>\n {tileMenu?.length && (\n <TileMenu\n items={tileMenu}\n view={tileMenuView}\n onItemClick={onTileMenuItemClick}\n getItemDescription={getTileMenuItemDescription}\n getItemHref={getTileMenuItemHref}\n getItemImage={getTileMenuItemImage}\n getItemOnClick={getTileMenuItemOnClick}\n getItemLabel={getTileMenuItemLabel}\n listClassName={cnHeader('TileMenuList')}\n title={tileMenuTitle}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n {notifications?.length && (\n <Notifications\n listClassName={cnHeader('NotificationsList')}\n items={notifications}\n itemDateFormat={notificationsDateFormat}\n title={notificationsTitle}\n actions={notificationsActions}\n groupByDay={notificationsGroupByDay}\n groupLabelFormat={notificationsGroupLabelFormat}\n groups={notificationsGroups}\n getItemLabel={getNotificationsItemLabel}\n getItemDescription={getNotificationsItemDescription}\n getItemImage={getNotificationsItemImage}\n getItemRead={getNotificationsItemRead}\n getItemDate={getNotificationsItemDate}\n getItemBadges={getNotificationsItemBadges}\n getItemActions={getNotificationsItemActions}\n getItemGroup={getNotificationsItemGroup}\n getItemView={getNotificationsItemView}\n getActionLabel={getNotificationsActionLabel}\n getActionIcon={getNotificationsActionIcon}\n getActionOnClick={getNotificationsActionOnClick}\n getGroupLabel={getNotificationsGroupLabel}\n getGroupId={getNotificationsGroupId}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n </div>\n )}\n <div className={cnHeader('MobileSearchContainer')}>\n {(searchOnSubmit || searchOnChange) && (\n <HeaderSearch\n value={searchValue}\n onChange={searchOnChange}\n onSubmit={searchOnSubmit}\n placeholder={searchPlaceholder}\n />\n )}\n </div>\n </div>\n }\n footer={\n socialMedia?.length && (\n <ButtonMenu\n className={cnHeader('MobileMenuSocialMedia')}\n items={socialMedia}\n getItemHref={getSocialMediaItemHref}\n getItemIcon={getSocialMediaItemIcon}\n getItemLabel={getSocialMediaItemLabel}\n getItemOnClick={getSocialMediaItemOnClick}\n getItemTarget={getSocialMediaItemTarget}\n onItemClick={onSocialMediaItemClick}\n view=\"clear\"\n onlyIcon\n size=\"s\"\n />\n )\n }\n />\n )}\n <HeaderLogo className={cnHeader('Logo')} logo={logo} href={logoHref} />\n </div>\n ),\n }}\n />\n )\n}\n\nexport const Header = forwardRef(HeaderRender) as HeaderComponent\n\nexport * from './types'\n"],"file":"Header.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/Header/Header.tsx"],"names":["React","forwardRef","useState","cn","Layout","Menu","HeaderLogo","HeaderLogin","HeaderSearch","Notifications","TileMenu","useBreakpoints","MobileMenu","Breadcrumbs","ThemeToggler","SelectMenu","ButtonMenu","Languages","getMobileMenu","cnHeader","HeaderRender","props","ref","className","fixed","logo","onLogoClick","logoHref","menu","getMenuItemActive","getMenuItemHref","getMenuItemLabel","getMenuItemOnClick","getMenuItemSubMenu","getMenuItemTarget","onMenuItemClick","userName","userAvatar","userInfo","userLogined","onLoginButtonClick","loginButtonLabel","notifications","notificationsDateFormat","notificationsTitle","notificationsActions","notificationsGroupByDay","notificationsGroupLabelFormat","notificationsGroups","getNotificationsItemLabel","getNotificationsItemDescription","getNotificationsItemImage","getNotificationsItemRead","getNotificationsItemDate","getNotificationsItemBadges","getNotificationsItemActions","getNotificationsItemGroup","getNotificationsItemView","getNotificationsActionLabel","getNotificationsActionIcon","getNotificationsActionOnClick","getNotificationsGroupLabel","getNotificationsGroupId","tileMenu","tileMenuView","onTileMenuItemClick","getTileMenuItemDescription","getTileMenuItemHref","getTileMenuItemImage","getTileMenuItemOnClick","getTileMenuItemLabel","tileMenuTitle","breadcrumbs","breadcrumbsOnlyIconRoot","onBreadcrumbsItemClick","getBreadcrumbsItemLabel","getBreadcrumbsItemHref","getBreadcrumbsItemIcon","getBreadcrumbsItemOnClick","breadcrumbsLastItemIsLink","breadcrumbsFitMode","searchValue","searchOnChange","searchOnSubmit","searchPlaceholder","secondaryMenuLabel","secondaryMenu","getSecondaryMenuItemHref","getSecondaryMenuItemLabel","getSecondaryMenuItemOnClick","getSecondaryMenuItemSubMenu","getSecondaryMenuItemTarget","socialMedia","getSocialMediaItemHref","getSocialMediaItemIcon","getSocialMediaItemLabel","getSocialMediaItemOnClick","getSocialMediaItemTarget","onSocialMediaItemClick","languages","languageValue","languageValueProp","getLanguagesItemHref","getLanguagesItemLabel","getLanguagesItemOnClick","getLanguagesItemTarget","onLanguageChange","onLanguageChangeProp","additionalButtons","getAdditionalButtonsItemHref","getAdditionalButtonsItemIcon","getAdditionalButtonsItemLabel","getAdditionalButtonsItemOnClick","getAdditionalButtonsItemTarget","onAdditionalButtonsItemClick","themeItems","theme","getThemeTogglerItemKey","getThemeTogglerItemLabel","getThemeTogglerItemIcon","onThemeChange","otherProps","breakpoints","s","m","languagesValue","setLanguagesValue","elementZIndex","style","zIndex","length","left","center","right","params","item","breakpoint","mobileMenuItems","Header"],"mappings":"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","sourcesContent":["import React, { forwardRef, useState } from 'react'\n\nimport { cn } from '@/__private__/utils/bem'\nimport { HeaderProps, HeaderComponent, HeaderDefaultLanguagesItem } from './types'\nimport { Layout } from '@/Layout'\nimport { Menu } from '@/Menu'\nimport { HeaderLogo } from './HeaderLogo'\nimport { HeaderLogin } from './HeaderLogin'\nimport { HeaderSearch } from './HeaderSearch'\nimport { Notifications } from '@/Notifications'\nimport { TileMenu } from '@/TileMenu'\nimport { useBreakpoints } from '@consta/uikit/useBreakpoints'\nimport { MobileMenu } from '@/MobileMenu'\nimport { Breadcrumbs } from '@consta/uikit/BreadcrumbsCanary'\nimport { ThemeToggler } from '@consta/uikit/ThemeToggler'\nimport { SelectMenu } from '@/SelectMenu'\nimport { ButtonMenu } from '@/ButtonMenu'\nimport { Languages, LanguagesProps } from '@/Languages'\n\nimport { getMobileMenu } from './helpers'\n\nimport './Header.css'\n\nexport const cnHeader = cn('Header')\n\nconst HeaderRender = (props: HeaderProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n className,\n fixed,\n\n // Logo\n logo,\n onLogoClick,\n logoHref,\n\n // Menu\n menu,\n getMenuItemActive,\n getMenuItemHref,\n getMenuItemLabel,\n getMenuItemOnClick,\n getMenuItemSubMenu,\n getMenuItemTarget,\n onMenuItemClick,\n\n // Login\n userName,\n userAvatar,\n userInfo,\n userLogined,\n onLoginButtonClick,\n loginButtonLabel,\n\n // Notifications\n notifications,\n notificationsDateFormat,\n notificationsTitle,\n notificationsActions,\n notificationsGroupByDay,\n notificationsGroupLabelFormat,\n notificationsGroups,\n getNotificationsItemLabel,\n getNotificationsItemDescription,\n getNotificationsItemImage,\n getNotificationsItemRead,\n getNotificationsItemDate,\n getNotificationsItemBadges,\n getNotificationsItemActions,\n getNotificationsItemGroup,\n getNotificationsItemView,\n getNotificationsActionLabel,\n getNotificationsActionIcon,\n getNotificationsActionOnClick,\n getNotificationsGroupLabel,\n getNotificationsGroupId,\n\n // TileMenu\n tileMenu,\n tileMenuView,\n onTileMenuItemClick,\n getTileMenuItemDescription,\n getTileMenuItemHref,\n getTileMenuItemImage,\n getTileMenuItemOnClick,\n getTileMenuItemLabel,\n tileMenuTitle,\n\n // Breadcrumbs\n breadcrumbs,\n breadcrumbsOnlyIconRoot,\n onBreadcrumbsItemClick,\n getBreadcrumbsItemLabel,\n getBreadcrumbsItemHref,\n getBreadcrumbsItemIcon,\n getBreadcrumbsItemOnClick,\n breadcrumbsLastItemIsLink,\n breadcrumbsFitMode,\n\n // Search\n searchValue,\n searchOnChange,\n searchOnSubmit,\n searchPlaceholder,\n\n // SecondaryMenu\n secondaryMenuLabel,\n secondaryMenu,\n getSecondaryMenuItemHref,\n getSecondaryMenuItemLabel,\n getSecondaryMenuItemOnClick,\n getSecondaryMenuItemSubMenu,\n getSecondaryMenuItemTarget,\n\n // SocialMedia\n socialMedia,\n getSocialMediaItemHref,\n getSocialMediaItemIcon,\n getSocialMediaItemLabel,\n getSocialMediaItemOnClick,\n getSocialMediaItemTarget,\n onSocialMediaItemClick,\n\n // Languages\n languages,\n languageValue: languageValueProp,\n getLanguagesItemHref,\n getLanguagesItemLabel,\n getLanguagesItemOnClick,\n getLanguagesItemTarget,\n onLanguageChange: onLanguageChangeProp,\n\n // AdditionalButtons\n additionalButtons,\n getAdditionalButtonsItemHref,\n getAdditionalButtonsItemIcon,\n getAdditionalButtonsItemLabel,\n getAdditionalButtonsItemOnClick,\n getAdditionalButtonsItemTarget,\n onAdditionalButtonsItemClick,\n\n // ThemeToggler\n themeItems,\n theme,\n getThemeTogglerItemKey,\n getThemeTogglerItemLabel,\n getThemeTogglerItemIcon,\n onThemeChange,\n\n ...otherProps\n } = props\n\n const breakpoints = useBreakpoints({ s: 800, m: 1200 })\n\n const [languagesValue, setLanguagesValue] = useState<HeaderDefaultLanguagesItem | undefined>(\n languageValueProp || languages?.[0]\n )\n\n const elementZIndex = typeof props.style?.zIndex === 'number' ? props.style.zIndex : undefined\n\n const onLanguageChange: LanguagesProps<HeaderDefaultLanguagesItem>['onChange'] = params => {\n onLanguageChangeProp?.(params)\n setLanguagesValue(params.item)\n }\n\n if (breakpoints.m) {\n return (\n <Layout\n {...otherProps}\n ref={ref}\n className={cnHeader({ fixed }, [className])}\n rowTop={\n (additionalButtons?.length ||\n languages?.length ||\n socialMedia?.length ||\n (secondaryMenu?.length && secondaryMenuLabel)) && {\n left:\n secondaryMenuLabel && secondaryMenu?.length ? (\n <SelectMenu\n label={secondaryMenuLabel}\n items={secondaryMenu}\n getItemHref={getSecondaryMenuItemHref}\n getItemLabel={getSecondaryMenuItemLabel}\n getItemOnClick={getSecondaryMenuItemOnClick}\n getItemSubMenu={getSecondaryMenuItemSubMenu}\n getItemTarget={getSecondaryMenuItemTarget}\n style={{ zIndex: elementZIndex }}\n />\n ) : (\n undefined\n ),\n center: socialMedia?.length ? (\n <ButtonMenu\n items={socialMedia}\n getItemHref={getSocialMediaItemHref}\n getItemIcon={getSocialMediaItemIcon}\n getItemLabel={getSocialMediaItemLabel}\n getItemOnClick={getSocialMediaItemOnClick}\n getItemTarget={getSocialMediaItemTarget}\n onItemClick={onSocialMediaItemClick}\n view=\"clear\"\n onlyIcon\n size=\"s\"\n />\n ) : (\n undefined\n ),\n right: (\n <div className={cnHeader('RowTopRight')}>\n {[\n languages?.length ? (\n <Languages\n key=\"Languages\"\n items={languages}\n value={languagesValue}\n getItemHref={getLanguagesItemHref}\n getItemLabel={getLanguagesItemLabel}\n getItemOnClick={getLanguagesItemOnClick}\n getItemTarget={getLanguagesItemTarget}\n onChange={onLanguageChange}\n style={{ zIndex: elementZIndex }}\n />\n ) : (\n undefined\n ),\n additionalButtons?.length ? (\n <ButtonMenu\n items={additionalButtons}\n getItemHref={getAdditionalButtonsItemHref}\n getItemIcon={getAdditionalButtonsItemIcon}\n getItemLabel={getAdditionalButtonsItemLabel}\n getItemOnClick={getAdditionalButtonsItemOnClick}\n getItemTarget={getAdditionalButtonsItemTarget}\n onItemClick={onAdditionalButtonsItemClick}\n view=\"clear\"\n size=\"s\"\n />\n ) : (\n undefined\n ),\n ]}\n </div>\n ),\n }\n }\n rowCenter={{\n left: (\n <div className={cnHeader('RowCenterLeft', { breakpoint: 'm' })}>\n <HeaderLogo className={cnHeader('Logo')} logo={logo} href={logoHref} />\n {(searchOnSubmit || searchOnChange) && (\n <HeaderSearch\n value={searchValue}\n onChange={searchOnChange}\n onSubmit={searchOnSubmit}\n placeholder={searchPlaceholder}\n />\n )}\n {menu && (\n <Menu\n className={cnHeader('Menu')}\n items={menu}\n getItemActive={getMenuItemActive}\n getItemHref={getMenuItemHref}\n getItemLabel={getMenuItemLabel}\n getItemOnClick={getMenuItemOnClick}\n getItemSubMenu={getMenuItemSubMenu}\n getItemTarget={getMenuItemTarget}\n onItemClick={onMenuItemClick}\n style={{ zIndex: elementZIndex }}\n />\n )}\n </div>\n ),\n right: (\n <div className={cnHeader('RowCenterRight')}>\n <HeaderLogin\n userName={userName}\n userAvatar={userAvatar}\n userInfo={userInfo}\n userLogined={userLogined}\n onLoginButtonClick={onLoginButtonClick}\n loginButtonLabel={loginButtonLabel}\n />\n {tileMenu?.length && (\n <TileMenu\n items={tileMenu}\n view={tileMenuView}\n onItemClick={onTileMenuItemClick}\n getItemDescription={getTileMenuItemDescription}\n getItemHref={getTileMenuItemHref}\n getItemImage={getTileMenuItemImage}\n getItemOnClick={getTileMenuItemOnClick}\n getItemLabel={getTileMenuItemLabel}\n listClassName={cnHeader('TileMenuList', { breakpoint: 'm' })}\n title={tileMenuTitle}\n style={{ zIndex: elementZIndex }}\n />\n )}\n {notifications?.length && (\n <Notifications\n listClassName={cnHeader('NotificationsList', { breakpoint: 'm' })}\n items={notifications}\n itemDateFormat={notificationsDateFormat}\n title={notificationsTitle}\n actions={notificationsActions}\n groupByDay={notificationsGroupByDay}\n groupLabelFormat={notificationsGroupLabelFormat}\n groups={notificationsGroups}\n getItemLabel={getNotificationsItemLabel}\n getItemDescription={getNotificationsItemDescription}\n getItemImage={getNotificationsItemImage}\n getItemRead={getNotificationsItemRead}\n getItemDate={getNotificationsItemDate}\n getItemBadges={getNotificationsItemBadges}\n getItemActions={getNotificationsItemActions}\n getItemGroup={getNotificationsItemGroup}\n getItemView={getNotificationsItemView}\n getActionLabel={getNotificationsActionLabel}\n getActionIcon={getNotificationsActionIcon}\n getActionOnClick={getNotificationsActionOnClick}\n getGroupLabel={getNotificationsGroupLabel}\n getGroupId={getNotificationsGroupId}\n style={{ zIndex: elementZIndex }}\n />\n )}\n {theme && themeItems?.length && (\n <ThemeToggler\n className={cnHeader('ThemeToggler', { breakpoint: 'm' })}\n items={themeItems}\n value={theme}\n getItemKey={getThemeTogglerItemKey}\n getItemLabel={getThemeTogglerItemLabel}\n getItemIcon={getThemeTogglerItemIcon}\n size=\"s\"\n onChange={params => onThemeChange?.(params)}\n />\n )}\n </div>\n ),\n }}\n rowBottom={\n breadcrumbs ? (\n <Breadcrumbs\n className={cnHeader('Breadcrumbs')}\n items={breadcrumbs}\n onlyIconRoot={breadcrumbsOnlyIconRoot}\n size=\"m\"\n onItemClick={onBreadcrumbsItemClick}\n getItemLabel={getBreadcrumbsItemLabel}\n getItemHref={getBreadcrumbsItemHref}\n getItemIcon={getBreadcrumbsItemIcon}\n getItemOnClick={getBreadcrumbsItemOnClick}\n lastItemIsLink={breadcrumbsLastItemIsLink}\n fitMode={breadcrumbsFitMode}\n />\n ) : (\n undefined\n )\n }\n />\n )\n }\n\n if (breakpoints.s) {\n const mobileMenuItems = getMobileMenu(props, { languagesValue, setLanguagesValue })\n\n return (\n <Layout\n {...otherProps}\n ref={ref}\n className={cnHeader({ fixed }, [className])}\n rowCenter={{\n left: (\n <div className={cnHeader('RowCenterLeft')}>\n {(mobileMenuItems.length || socialMedia?.length) && (\n <MobileMenu\n className={cnHeader('Menu')}\n items={mobileMenuItems}\n getItemActive={getMenuItemActive}\n getItemHref={getMenuItemHref}\n getItemLabel={getMenuItemLabel}\n getItemOnClick={getMenuItemOnClick}\n getItemSubMenu={getMenuItemSubMenu}\n getItemTarget={getMenuItemTarget}\n style={{ zIndex: elementZIndex }}\n footer={\n socialMedia?.length && (\n <ButtonMenu\n className={cnHeader('MobileMenuSocialMedia')}\n items={socialMedia}\n getItemHref={getSocialMediaItemHref}\n getItemIcon={getSocialMediaItemIcon}\n getItemLabel={getSocialMediaItemLabel}\n getItemOnClick={getSocialMediaItemOnClick}\n getItemTarget={getSocialMediaItemTarget}\n onItemClick={onSocialMediaItemClick}\n view=\"clear\"\n onlyIcon\n size=\"s\"\n />\n )\n }\n />\n )}\n <HeaderLogo className={cnHeader('Logo')} logo={logo} href={logoHref} />\n {(searchOnSubmit || searchOnChange) && (\n <HeaderSearch\n value={searchValue}\n onChange={searchOnChange}\n onSubmit={searchOnSubmit}\n placeholder={searchPlaceholder}\n />\n )}\n </div>\n ),\n right: (\n <div className={cnHeader('RowCenterRight')}>\n <HeaderLogin\n userName={userName}\n userAvatar={userAvatar}\n userInfo={userInfo}\n userLogined={userLogined}\n onLoginButtonClick={onLoginButtonClick}\n loginButtonLabel={loginButtonLabel}\n />\n {tileMenu?.length && (\n <TileMenu\n items={tileMenu}\n view={tileMenuView}\n onItemClick={onTileMenuItemClick}\n getItemDescription={getTileMenuItemDescription}\n getItemHref={getTileMenuItemHref}\n getItemImage={getTileMenuItemImage}\n getItemOnClick={getTileMenuItemOnClick}\n getItemLabel={getTileMenuItemLabel}\n listClassName={cnHeader('TileMenuList')}\n title={tileMenuTitle}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n {notifications?.length && (\n <Notifications\n listClassName={cnHeader('NotificationsList')}\n items={notifications}\n itemDateFormat={notificationsDateFormat}\n title={notificationsTitle}\n actions={notificationsActions}\n groupByDay={notificationsGroupByDay}\n groupLabelFormat={notificationsGroupLabelFormat}\n groups={notificationsGroups}\n getItemLabel={getNotificationsItemLabel}\n getItemDescription={getNotificationsItemDescription}\n getItemImage={getNotificationsItemImage}\n getItemRead={getNotificationsItemRead}\n getItemDate={getNotificationsItemDate}\n getItemBadges={getNotificationsItemBadges}\n getItemActions={getNotificationsItemActions}\n getItemGroup={getNotificationsItemGroup}\n getItemView={getNotificationsItemView}\n getActionLabel={getNotificationsActionLabel}\n getActionIcon={getNotificationsActionIcon}\n getActionOnClick={getNotificationsActionOnClick}\n getGroupLabel={getNotificationsGroupLabel}\n getGroupId={getNotificationsGroupId}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n {theme && themeItems?.length && (\n <ThemeToggler\n className={cnHeader('ThemeToggler')}\n items={themeItems}\n value={theme}\n getItemKey={getThemeTogglerItemKey}\n getItemLabel={getThemeTogglerItemLabel}\n getItemIcon={getThemeTogglerItemIcon}\n size=\"s\"\n onChange={params => onThemeChange?.(params)}\n />\n )}\n </div>\n ),\n }}\n rowBottom={\n breadcrumbs ? (\n <Breadcrumbs\n className={cnHeader('Breadcrumbs')}\n items={breadcrumbs}\n onlyIconRoot={breadcrumbsOnlyIconRoot}\n size=\"m\"\n onItemClick={onBreadcrumbsItemClick}\n getItemLabel={getBreadcrumbsItemLabel}\n getItemHref={getBreadcrumbsItemHref}\n getItemIcon={getBreadcrumbsItemIcon}\n getItemOnClick={getBreadcrumbsItemOnClick}\n lastItemIsLink={breadcrumbsLastItemIsLink}\n fitMode={breadcrumbsFitMode}\n />\n ) : (\n undefined\n )\n }\n />\n )\n }\n\n const mobileMenuItems = getMobileMenu(props, { languagesValue, setLanguagesValue })\n\n return (\n <Layout\n {...otherProps}\n ref={ref}\n className={cnHeader({ fixed }, [className])}\n rowCenter={{\n left: (\n <div className={cnHeader('RowCenterLeft')}>\n {(mobileMenuItems.length ||\n userName ||\n userAvatar ||\n tileMenu?.length ||\n notifications?.length ||\n searchOnSubmit ||\n searchOnChange ||\n socialMedia?.length) && (\n <MobileMenu\n className={cnHeader('Menu')}\n items={getMobileMenu(props, { languagesValue, setLanguagesValue })}\n getItemActive={getMenuItemActive}\n getItemHref={getMenuItemHref}\n getItemLabel={getMenuItemLabel}\n getItemOnClick={getMenuItemOnClick}\n getItemSubMenu={getMenuItemSubMenu}\n getItemTarget={getMenuItemTarget}\n style={{ zIndex: elementZIndex }}\n header={\n (userName ||\n userAvatar ||\n tileMenu?.length ||\n notifications?.length ||\n searchOnSubmit ||\n searchOnChange) && (\n <div className={cnHeader('MobileMenuHeader')}>\n <div>\n <HeaderLogin\n userName={userName}\n userAvatar={userAvatar}\n userInfo={userInfo}\n userLogined={userLogined}\n onLoginButtonClick={onLoginButtonClick}\n loginButtonLabel={loginButtonLabel}\n />\n </div>\n {(tileMenu?.length || notifications?.length || themeItems?.length) && (\n <div>\n {theme && themeItems?.length && (\n <ThemeToggler\n className={cnHeader('ThemeToggler')}\n items={themeItems}\n value={theme}\n getItemKey={getThemeTogglerItemKey}\n getItemLabel={getThemeTogglerItemLabel}\n getItemIcon={getThemeTogglerItemIcon}\n size=\"s\"\n onChange={params => onThemeChange?.(params)}\n />\n )}\n {tileMenu?.length && (\n <TileMenu\n items={tileMenu}\n view={tileMenuView}\n onItemClick={onTileMenuItemClick}\n getItemDescription={getTileMenuItemDescription}\n getItemHref={getTileMenuItemHref}\n getItemImage={getTileMenuItemImage}\n getItemOnClick={getTileMenuItemOnClick}\n getItemLabel={getTileMenuItemLabel}\n listClassName={cnHeader('TileMenuList')}\n title={tileMenuTitle}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n {notifications?.length && (\n <Notifications\n listClassName={cnHeader('NotificationsList')}\n items={notifications}\n itemDateFormat={notificationsDateFormat}\n title={notificationsTitle}\n actions={notificationsActions}\n groupByDay={notificationsGroupByDay}\n groupLabelFormat={notificationsGroupLabelFormat}\n groups={notificationsGroups}\n getItemLabel={getNotificationsItemLabel}\n getItemDescription={getNotificationsItemDescription}\n getItemImage={getNotificationsItemImage}\n getItemRead={getNotificationsItemRead}\n getItemDate={getNotificationsItemDate}\n getItemBadges={getNotificationsItemBadges}\n getItemActions={getNotificationsItemActions}\n getItemGroup={getNotificationsItemGroup}\n getItemView={getNotificationsItemView}\n getActionLabel={getNotificationsActionLabel}\n getActionIcon={getNotificationsActionIcon}\n getActionOnClick={getNotificationsActionOnClick}\n getGroupLabel={getNotificationsGroupLabel}\n getGroupId={getNotificationsGroupId}\n isMobile\n style={{ zIndex: elementZIndex }}\n />\n )}\n </div>\n )}\n {(searchOnSubmit || searchOnChange) && (\n <div className={cnHeader('MobileSearchContainer')}>\n <HeaderSearch\n value={searchValue}\n onChange={searchOnChange}\n onSubmit={searchOnSubmit}\n placeholder={searchPlaceholder}\n />\n </div>\n )}\n </div>\n )\n }\n footer={\n socialMedia?.length && (\n <ButtonMenu\n className={cnHeader('MobileMenuSocialMedia')}\n items={socialMedia}\n getItemHref={getSocialMediaItemHref}\n getItemIcon={getSocialMediaItemIcon}\n getItemLabel={getSocialMediaItemLabel}\n getItemOnClick={getSocialMediaItemOnClick}\n getItemTarget={getSocialMediaItemTarget}\n onItemClick={onSocialMediaItemClick}\n view=\"clear\"\n onlyIcon\n size=\"s\"\n />\n )\n }\n />\n )}\n <HeaderLogo className={cnHeader('Logo')} logo={logo} href={logoHref} />\n </div>\n ),\n }}\n />\n )\n}\n\nexport const Header = forwardRef(HeaderRender) as HeaderComponent\n\nexport * from './types'\n"],"file":"Header.js"}
|
package/Header/types.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { IconComponent } from '@consta/uikit/Icon';
|
|
3
3
|
import { MenuDefaultItem, MenuPropOnItemClick, MenuPropGetItemHref, MenuPropGetItemLabel, MenuPropGetItemTarget, MenuPropGetItemActive, MenuPropGetItemOnClick, MenuPropGetItemSubMenu } from "../Menu/index";
|
|
4
|
+
import { ThemeTogglerPropGetItemIcon, ThemeTogglerPropGetItemKey, ThemeTogglerPropGetItemLabel, ThemeTogglerItemDefault, ThemeTogglerPropSetValue } from '@consta/uikit/ThemeToggler';
|
|
4
5
|
import { NotificationsListPropGetItemLabel, NotificationsListPropGetActionIcon, NotificationsListPropGetActionLabel, NotificationsListPropGetActionOnClick, NotificationsListPropGetGroupId, NotificationsListPropGetGroupLabel, NotificationsListPropGetItemActions, NotificationsListPropGetItemBadges, NotificationsListPropGetItemDate, NotificationsListPropGetItemDescription, NotificationsListPropGetItemGroup, NotificationsListPropGetItemImage, NotificationsListPropGetItemRead, NotificationsListPropGetItemView, NotificationsListPropGroupLabelFormat, NotificationsDefaultAction, NotificationsDefaultGroup, NotificationsDefaultItem, NotificationsListPropItemDateFormat } from "../NotificationsList/index";
|
|
5
6
|
import { TileMenuPropGetItemImage, TileMenuPropGetItemDescription, TileMenuPropGetItemHref, TileMenuPropGetItemOnClick, TileMenuPropGetItemLabel, TileMenuOnItemClick, TileMenuPropView, TileMenuDefaultItem } from "../TileMenu/index";
|
|
6
7
|
import { PropsWithHTMLAttributesAndRef } from "../__private__/utils/types/PropsWithHTMLAttributes";
|
|
@@ -21,7 +22,7 @@ export declare type HeaderDefaultTileMenuItem = TileMenuDefaultItem;
|
|
|
21
22
|
export declare type HeaderDefaultBreadcrumbsItem = BreadcrumbsDefaultItem;
|
|
22
23
|
export declare type HeaderDefaultSelectMenuItem = SelectMenuDefaultItem;
|
|
23
24
|
export declare type HeaderDefaultLanguagesItem = LanguagesDefaultItem;
|
|
24
|
-
export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_ITEM = HeaderDefaultNotificationItem, NOTIFICATION_GROUP = HeaderDefaultNotificationGroup, NOTIFICATION_ACTION = HeaderDefaultNotificationAction, NOTIFICATION_GROUP_BY_DAY extends boolean = false, TILE_MENU_ITEM = HeaderDefaultTileMenuItem, BREADCRUMBS_ITEM = HeaderDefaultBreadcrumbsItem, SECONDARY_MENU_ITEM = HeaderDefaultSelectMenuItem, SOCIAL_MEDIA_ITEM = HeaderDefaultSocialMediaItem,
|
|
25
|
+
export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_ITEM = HeaderDefaultNotificationItem, NOTIFICATION_GROUP = HeaderDefaultNotificationGroup, NOTIFICATION_ACTION = HeaderDefaultNotificationAction, NOTIFICATION_GROUP_BY_DAY extends boolean = false, TILE_MENU_ITEM = HeaderDefaultTileMenuItem, BREADCRUMBS_ITEM = HeaderDefaultBreadcrumbsItem, SECONDARY_MENU_ITEM = HeaderDefaultSelectMenuItem, LANGUAGES_ITEM = HeaderDefaultLanguagesItem, SOCIAL_MEDIA_ITEM = HeaderDefaultSocialMediaItem, ADDITIONAL_BUTTONS_ITEM = HeaderDefaultAdditionalButtonsItem, THEME_TOGGLER_ITEM = ThemeTogglerItemDefault> = PropsWithHTMLAttributesAndRef<{
|
|
25
26
|
fixed?: boolean;
|
|
26
27
|
logo?: React.ReactNode;
|
|
27
28
|
onLogoClick?: React.MouseEventHandler;
|
|
@@ -92,13 +93,6 @@ export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_
|
|
|
92
93
|
getSecondaryMenuItemOnClick?: SelectMenuPropGetItemOnClick<SECONDARY_MENU_ITEM>;
|
|
93
94
|
getSecondaryMenuItemSubMenu?: SelectMenuPropGetItemSubMenu<SECONDARY_MENU_ITEM>;
|
|
94
95
|
secondaryMenuLabel?: string;
|
|
95
|
-
socialMedia?: SOCIAL_MEDIA_ITEM[];
|
|
96
|
-
onSocialMediaItemClick?: ButtonMenuPropOnItemClick<SOCIAL_MEDIA_ITEM>;
|
|
97
|
-
getSocialMediaItemHref?: ButtonMenuPropGetItemHref<SOCIAL_MEDIA_ITEM>;
|
|
98
|
-
getSocialMediaItemLabel?: ButtonMenuPropGetItemLabel<SOCIAL_MEDIA_ITEM>;
|
|
99
|
-
getSocialMediaItemTarget?: ButtonMenuPropGetItemTarget<SOCIAL_MEDIA_ITEM>;
|
|
100
|
-
getSocialMediaItemOnClick?: ButtonMenuPropGetItemOnClick<SOCIAL_MEDIA_ITEM>;
|
|
101
|
-
getSocialMediaItemIcon?: ButtonMenuPropGetItemIcon<SOCIAL_MEDIA_ITEM>;
|
|
102
96
|
languages?: LANGUAGES_ITEM[];
|
|
103
97
|
languagesLabel?: string;
|
|
104
98
|
languageValue?: LANGUAGES_ITEM;
|
|
@@ -107,6 +101,13 @@ export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_
|
|
|
107
101
|
getLanguagesItemLabel?: SelectMenuPropGetItemLabel<LANGUAGES_ITEM>;
|
|
108
102
|
getLanguagesItemTarget?: SelectMenuPropGetItemTarget<LANGUAGES_ITEM>;
|
|
109
103
|
getLanguagesItemOnClick?: SelectMenuPropGetItemOnClick<LANGUAGES_ITEM>;
|
|
104
|
+
socialMedia?: SOCIAL_MEDIA_ITEM[];
|
|
105
|
+
onSocialMediaItemClick?: ButtonMenuPropOnItemClick<SOCIAL_MEDIA_ITEM>;
|
|
106
|
+
getSocialMediaItemHref?: ButtonMenuPropGetItemHref<SOCIAL_MEDIA_ITEM>;
|
|
107
|
+
getSocialMediaItemLabel?: ButtonMenuPropGetItemLabel<SOCIAL_MEDIA_ITEM>;
|
|
108
|
+
getSocialMediaItemTarget?: ButtonMenuPropGetItemTarget<SOCIAL_MEDIA_ITEM>;
|
|
109
|
+
getSocialMediaItemOnClick?: ButtonMenuPropGetItemOnClick<SOCIAL_MEDIA_ITEM>;
|
|
110
|
+
getSocialMediaItemIcon?: ButtonMenuPropGetItemIcon<SOCIAL_MEDIA_ITEM>;
|
|
110
111
|
additionalButtons?: ADDITIONAL_BUTTONS_ITEM[];
|
|
111
112
|
onAdditionalButtonsItemClick?: ButtonMenuPropOnItemClick<ADDITIONAL_BUTTONS_ITEM>;
|
|
112
113
|
getAdditionalButtonsItemHref?: ButtonMenuPropGetItemHref<ADDITIONAL_BUTTONS_ITEM>;
|
|
@@ -114,6 +115,12 @@ export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_
|
|
|
114
115
|
getAdditionalButtonsItemTarget?: ButtonMenuPropGetItemTarget<ADDITIONAL_BUTTONS_ITEM>;
|
|
115
116
|
getAdditionalButtonsItemOnClick?: ButtonMenuPropGetItemOnClick<ADDITIONAL_BUTTONS_ITEM>;
|
|
116
117
|
getAdditionalButtonsItemIcon?: ButtonMenuPropGetItemIcon<ADDITIONAL_BUTTONS_ITEM>;
|
|
118
|
+
themeItems?: THEME_TOGGLER_ITEM[];
|
|
119
|
+
theme?: THEME_TOGGLER_ITEM;
|
|
120
|
+
getThemeTogglerItemKey?: ThemeTogglerPropGetItemKey<THEME_TOGGLER_ITEM>;
|
|
121
|
+
getThemeTogglerItemLabel?: ThemeTogglerPropGetItemLabel<THEME_TOGGLER_ITEM>;
|
|
122
|
+
getThemeTogglerItemIcon?: ThemeTogglerPropGetItemIcon<THEME_TOGGLER_ITEM>;
|
|
123
|
+
onThemeChange?: ThemeTogglerPropSetValue<THEME_TOGGLER_ITEM>;
|
|
117
124
|
}, HTMLDivElement> & (MENU_ITEM extends {
|
|
118
125
|
label: HeaderDefaultMenuItem['label'] | unknown;
|
|
119
126
|
} ? {} : {
|
|
@@ -146,6 +153,10 @@ export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_
|
|
|
146
153
|
label: HeaderDefaultSelectMenuItem['label'] | unknown;
|
|
147
154
|
} ? {} : {
|
|
148
155
|
getSecondaryMenuItemLabel: SelectMenuPropGetItemLabel<SECONDARY_MENU_ITEM>;
|
|
156
|
+
}) & (LANGUAGES_ITEM extends {
|
|
157
|
+
label: HeaderDefaultLanguagesItem['label'] | unknown;
|
|
158
|
+
} ? {} : {
|
|
159
|
+
getLanguagesItemLabel: SelectMenuPropGetItemLabel<LANGUAGES_ITEM>;
|
|
149
160
|
}) & (SOCIAL_MEDIA_ITEM extends {
|
|
150
161
|
label: HeaderDefaultSocialMediaItem['label'] | unknown;
|
|
151
162
|
} ? {} : {
|
|
@@ -154,13 +165,21 @@ export declare type HeaderProps<MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_
|
|
|
154
165
|
icon: HeaderDefaultSocialMediaItem['icon'] | unknown;
|
|
155
166
|
} ? {} : {
|
|
156
167
|
getSocialMediaItemIcon: ButtonMenuPropGetItemIcon<SOCIAL_MEDIA_ITEM>;
|
|
157
|
-
}) & (LANGUAGES_ITEM extends {
|
|
158
|
-
label: HeaderDefaultLanguagesItem['label'] | unknown;
|
|
159
|
-
} ? {} : {
|
|
160
|
-
getLanguagesItemLabel: SelectMenuPropGetItemLabel<LANGUAGES_ITEM>;
|
|
161
168
|
}) & (ADDITIONAL_BUTTONS_ITEM extends {
|
|
162
169
|
label: HeaderDefaultAdditionalButtonsItem['label'] | unknown;
|
|
163
170
|
} ? {} : {
|
|
164
171
|
getAdditionalButtonsItemLabel: ButtonMenuPropGetItemLabel<ADDITIONAL_BUTTONS_ITEM>;
|
|
172
|
+
}) & (THEME_TOGGLER_ITEM extends {
|
|
173
|
+
key: ThemeTogglerItemDefault['key'] | unknown;
|
|
174
|
+
} ? {} : {
|
|
175
|
+
getThemeTogglerItemKey: ThemeTogglerPropGetItemKey<THEME_TOGGLER_ITEM>;
|
|
176
|
+
}) & (THEME_TOGGLER_ITEM extends {
|
|
177
|
+
icon: ThemeTogglerItemDefault['icon'] | unknown;
|
|
178
|
+
} ? {} : {
|
|
179
|
+
getThemeTogglerItemIcon: ThemeTogglerPropGetItemIcon<THEME_TOGGLER_ITEM>;
|
|
180
|
+
}) & (THEME_TOGGLER_ITEM extends {
|
|
181
|
+
label: ThemeTogglerItemDefault['label'] | unknown;
|
|
182
|
+
} ? {} : {
|
|
183
|
+
getThemeTogglerItemLabel: ThemeTogglerPropGetItemLabel<THEME_TOGGLER_ITEM>;
|
|
165
184
|
});
|
|
166
|
-
export declare type HeaderComponent = <MENU_ITEM =
|
|
185
|
+
export declare type HeaderComponent = <MENU_ITEM = HeaderDefaultMenuItem, NOTIFICATION_ITEM = HeaderDefaultNotificationItem, NOTIFICATION_GROUP = HeaderDefaultNotificationGroup, NOTIFICATION_ACTION = HeaderDefaultNotificationAction, NOTIFICATION_GROUP_BY_DAY extends boolean = false, TILE_MENU_ITEM = HeaderDefaultTileMenuItem, BREADCRUMBS_ITEM = HeaderDefaultBreadcrumbsItem, SECONDARY_MENU_ITEM = HeaderDefaultSelectMenuItem, LANGUAGES_ITEM = HeaderDefaultLanguagesItem, SOCIAL_MEDIA_ITEM = HeaderDefaultSocialMediaItem, ADDITIONAL_BUTTONS_ITEM = HeaderDefaultAdditionalButtonsItem, THEME_TOGGLER_ITEM = ThemeTogglerItemDefault>(props: HeaderProps<MENU_ITEM, NOTIFICATION_ITEM, NOTIFICATION_GROUP, NOTIFICATION_ACTION, NOTIFICATION_GROUP_BY_DAY, TILE_MENU_ITEM, BREADCRUMBS_ITEM, SECONDARY_MENU_ITEM, LANGUAGES_ITEM, SOCIAL_MEDIA_ITEM, ADDITIONAL_BUTTONS_ITEM, THEME_TOGGLER_ITEM>) => React.ReactElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.che--Notifications-Popover{--popover-bg-color:var(--color-bg-default);--popover-arrow-bg-color:var(--popover-bg-color);
|
|
1
|
+
.che--Notifications-Popover{--popover-bg-color:var(--color-bg-default);--popover-arrow-bg-color:var(--popover-bg-color);width:90vw;max-width:450px;border-radius:var(--control-radius);background:var(--popover-bg-color);box-shadow:var(--shadow-layer)}.che--Notifications-List{height:100%}
|
package/README.md
CHANGED
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
```sh
|
|
8
8
|
# NPM
|
|
9
|
-
$ npm install @consta/
|
|
9
|
+
$ npm install @consta/header
|
|
10
10
|
|
|
11
11
|
# Yarn
|
|
12
|
-
$ yarn add @consta/
|
|
12
|
+
$ yarn add @consta/header
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Подключите зависимости
|
|
@@ -69,7 +69,7 @@ $ yarn test
|
|
|
69
69
|
|
|
70
70
|
## Документация
|
|
71
71
|
|
|
72
|
-
[Посмотреть документацию и примеры](https://
|
|
72
|
+
[Посмотреть документацию и примеры](https://header-consta.vercel.app/)
|
|
73
73
|
|
|
74
74
|
## Контрибьюторам
|
|
75
75
|
|
package/TileMenu/TileMenu.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.che--TileMenu-List{display:grid}.che--TileMenu-List_view_cards{grid-template-columns:repeat(3,1fr);grid-row-gap:var(--space-2xs);grid-column-gap:var(--space-2xs)}.che--TileMenu-List_view_lines{grid-template-columns:repeat(1,1fr)}.che--TileMenu-List_view_twoLines{grid-template-columns:repeat(2,1fr);grid-column-gap:calc(var(--space-xl) + var(--space-2xs))}.che--TileMenu-Popover{--popover-bg-color:var(--color-bg-default);--popover-arrow-bg-color:var(--popover-bg-color);
|
|
1
|
+
.che--TileMenu-List{display:grid}.che--TileMenu-List_view_cards{grid-template-columns:repeat(3,1fr);grid-row-gap:var(--space-2xs);grid-column-gap:var(--space-2xs)}.che--TileMenu-List_view_lines{grid-template-columns:repeat(1,1fr)}.che--TileMenu-List_view_twoLines{grid-template-columns:repeat(2,1fr);grid-column-gap:calc(var(--space-xl) + var(--space-2xs))}.che--TileMenu-Popover{--popover-bg-color:var(--color-bg-default);--popover-arrow-bg-color:var(--popover-bg-color);width:calc(100vw - var(--space-l));max-width:var(--popover-max-width);border-radius:var(--control-radius);background:var(--popover-bg-color);box-shadow:var(--shadow-layer)}.che--TileMenu-Popover_view_cards{--popover-max-width:320px}.che--TileMenu-Popover_view_lines{--popover-max-width:520px}.che--TileMenu-Popover_view_twoLines{--popover-max-width:1000px}.che--TileMenu-ListWrapper{overflow:hidden;border-radius:var(--control-radius)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/VerticalMenu/VerticalMenu.tsx"],"names":["React","useState","useCallback","forwardRef","useEffect","cn","withDefaultGetters","getItemClick","VerticalMenuLevel","TransitionGroup","CSSTransition","cnForCssTransition","useDebounce","useMutableRef","useRefs","cnVerticalMenu","transitionCn","VerticalMenuRender","props","ref","items","className","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","header","onItemClick","getItemGroup","footer","otherProps","levels","setLevels","id","animationBack","setAnimationBack","levelRefs","length","disableAnimationBack","addLevel","level","l","newLevels","Array","from","push","removeLevel","pop","getItemSubMenuRef","getItemLabelRef","keys","split","slice","forEach","index","item","levelItems","current","levelLabel","label","map","levelNum","menuItem","VerticalMenu"],"mappings":"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","sourcesContent":["import React, { useState, useCallback, forwardRef, useEffect } from 'react'\n\nimport { cn } from '@/__private__/utils/bem'\n\nimport { withDefaultGetters } from './helpers'\nimport { getItemClick } from '@/__private__/helpers/getItemClick'\nimport { VerticalMenuComponent, Level, VerticalMenuProps, DefaultItem } from './types'\nimport './VerticalMenu.css'\nimport { VerticalMenuLevel } from './VerticalMenuLevel/VerticalMenuLevel'\nimport { TransitionGroup, CSSTransition } from 'react-transition-group'\nimport { cnForCssTransition } from '@consta/uikit/__internal__/src/utils/cnForCssTransition'\nimport { useDebounce } from '@consta/uikit/useDebounce'\nimport { useMutableRef } from '@consta/uikit/useMutableRef'\nimport { useRefs } from '@consta/uikit/useRefs'\n\nexport const cnVerticalMenu = cn('VerticalMenu')\n\nconst transitionCn = cnForCssTransition(cnVerticalMenu, 'Level')\n\nconst VerticalMenuRender = (props: VerticalMenuProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n items,\n className,\n getItemActive,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n getItemSubMenu,\n header,\n onItemClick,\n getItemGroup,\n footer,\n ...otherProps\n } = withDefaultGetters(props)\n\n const [levels, setLevels] = useState<Array<Level<DefaultItem>>>([{ items, id: '0' }])\n const [animationBack, setAnimationBack] = useState<boolean>(false)\n\n const levelRefs = useRefs<HTMLDivElement>(levels.length)\n\n const disableAnimationBack = useDebounce(() => setAnimationBack(false), 250)\n\n const addLevel = useCallback(\n (level: Level<typeof items[number]>) =>\n setLevels(l => {\n const newLevels = Array.from(l)\n newLevels.push(level)\n return newLevels\n }),\n []\n )\n\n const removeLevel = useCallback(() => {\n setAnimationBack(true)\n setLevels(l => {\n const newLevels = Array.from(l)\n newLevels.pop()\n return newLevels\n })\n disableAnimationBack()\n }, [])\n\n const getItemSubMenuRef = useMutableRef(getItemSubMenu)\n const getItemLabelRef = useMutableRef(getItemLabel)\n\n useEffect(() => {\n // обновляем
|
|
1
|
+
{"version":3,"sources":["../../src/VerticalMenu/VerticalMenu.tsx"],"names":["React","useState","useCallback","forwardRef","useEffect","cn","withDefaultGetters","getItemClick","VerticalMenuLevel","TransitionGroup","CSSTransition","cnForCssTransition","useDebounce","useMutableRef","useRefs","cnVerticalMenu","transitionCn","VerticalMenuRender","props","ref","items","className","getItemActive","getItemHref","getItemLabel","getItemOnClick","getItemTarget","getItemSubMenu","header","onItemClick","getItemGroup","footer","otherProps","levels","setLevels","id","animationBack","setAnimationBack","levelRefs","length","disableAnimationBack","addLevel","level","l","newLevels","Array","from","push","removeLevel","pop","getItemSubMenuRef","getItemLabelRef","keys","split","slice","forEach","index","item","levelItems","current","levelLabel","label","map","levelNum","menuItem","VerticalMenu"],"mappings":"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","sourcesContent":["import React, { useState, useCallback, forwardRef, useEffect } from 'react'\n\nimport { cn } from '@/__private__/utils/bem'\n\nimport { withDefaultGetters } from './helpers'\nimport { getItemClick } from '@/__private__/helpers/getItemClick'\nimport { VerticalMenuComponent, Level, VerticalMenuProps, DefaultItem } from './types'\nimport './VerticalMenu.css'\nimport { VerticalMenuLevel } from './VerticalMenuLevel/VerticalMenuLevel'\nimport { TransitionGroup, CSSTransition } from 'react-transition-group'\nimport { cnForCssTransition } from '@consta/uikit/__internal__/src/utils/cnForCssTransition'\nimport { useDebounce } from '@consta/uikit/useDebounce'\nimport { useMutableRef } from '@consta/uikit/useMutableRef'\nimport { useRefs } from '@consta/uikit/useRefs'\n\nexport const cnVerticalMenu = cn('VerticalMenu')\n\nconst transitionCn = cnForCssTransition(cnVerticalMenu, 'Level')\n\nconst VerticalMenuRender = (props: VerticalMenuProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n items,\n className,\n getItemActive,\n getItemHref,\n getItemLabel,\n getItemOnClick,\n getItemTarget,\n getItemSubMenu,\n header,\n onItemClick,\n getItemGroup,\n footer,\n ...otherProps\n } = withDefaultGetters(props)\n\n const [levels, setLevels] = useState<Array<Level<DefaultItem>>>([{ items, id: '0' }])\n const [animationBack, setAnimationBack] = useState<boolean>(false)\n\n const levelRefs = useRefs<HTMLDivElement>(levels.length)\n\n const disableAnimationBack = useDebounce(() => setAnimationBack(false), 250)\n\n const addLevel = useCallback(\n (level: Level<typeof items[number]>) =>\n setLevels(l => {\n const newLevels = Array.from(l)\n newLevels.push(level)\n return newLevels\n }),\n []\n )\n\n const removeLevel = useCallback(() => {\n setAnimationBack(true)\n setLevels(l => {\n const newLevels = Array.from(l)\n newLevels.pop()\n return newLevels\n })\n disableAnimationBack()\n }, [])\n\n const getItemSubMenuRef = useMutableRef(getItemSubMenu)\n const getItemLabelRef = useMutableRef(getItemLabel)\n\n useEffect(() => {\n // обновляем уровни при смене items\n const keys = levels[levels.length - 1].id.split('-').slice(1)\n\n let id = '0'\n\n const newLevels: Array<Level<DefaultItem>> = [{ items, id }]\n\n keys.forEach(index => {\n const item = newLevels[newLevels.length - 1].items[Number(index)]\n\n if (!item) {\n return\n }\n\n const levelItems = getItemSubMenuRef.current(item)\n const levelLabel = getItemLabelRef.current(item)\n id = `${id}-${index}`\n\n if (!levelItems) {\n return\n }\n\n newLevels.push({ items: levelItems, label: levelLabel, id })\n })\n\n setLevels(newLevels)\n }, [items])\n\n return (\n <div {...otherProps} className={cnVerticalMenu({ animationBack }, [className])} ref={ref}>\n <TransitionGroup enter exit className={cnVerticalMenu('Levels')}>\n {levels.map((level, index) => {\n const levelNum = index + 1\n if (levelNum >= levels.length) {\n return (\n <CSSTransition\n classNames={transitionCn}\n key={levelNum}\n timeout={250}\n nodeRef={levelRefs[index]}\n >\n <VerticalMenuLevel\n ref={levelRefs[index]}\n id={level.id}\n items={level.items}\n label={level.label}\n addLevel={addLevel}\n removeLevel={removeLevel}\n className={cnVerticalMenu('Level', {\n current: levelNum === levels.length,\n })}\n key={levelNum}\n header={index === 0 && header}\n footer={index === 0 && footer}\n getItemActive={getItemActive}\n getItemHref={getItemHref}\n getItemLabel={getItemLabel}\n getItemOnClick={menuItem => getItemClick(menuItem, getItemOnClick, onItemClick)}\n getItemTarget={getItemTarget}\n getItemSubMenu={getItemSubMenu}\n getItemGroup={getItemGroup}\n />\n </CSSTransition>\n )\n }\n })}\n </TransitionGroup>\n </div>\n )\n}\n\nexport const VerticalMenu = forwardRef(VerticalMenuRender) as VerticalMenuComponent\n\nexport * from './types'\n"],"file":"VerticalMenu.js"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import format from"date-fns/format";import formatDistanceToNow from"date-fns/formatDistanceToNow";import ruLocale from"date-fns/locale/ru";export const defaultDateFormat=a=>{const b=new Date;return 36e5>b.getTime()-a.getTime()?formatDistanceToNow(a,{locale:ruLocale,addSuffix:!0}):format(b,"dd.MM.yyyy")===format(a,"dd.MM.yyyy")?format(a,"HH:mm"):format(a,"dd.MM.yyyy HH:mm")};
|
|
2
2
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/__private__/components/NotificationCard/helpers.ts"],"names":["format","formatDistanceToNow","ruLocale","defaultDateFormat","date","currentDate","Date","getTime","locale","addSuffix"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../../src/__private__/components/NotificationCard/helpers.ts"],"names":["format","formatDistanceToNow","ruLocale","defaultDateFormat","date","currentDate","Date","getTime","locale","addSuffix"],"mappings":"AAAA,MAAOA,CAAAA,MAAP,KAAmB,iBAAnB,CACA,MAAOC,CAAAA,mBAAP,KAAgC,8BAAhC,CAEA,MAAOC,CAAAA,QAAP,KAAqB,oBAArB,CAEA,MAAO,MAAMC,CAAAA,iBAAiB,CAAIC,CAAD,EAAwB,CACvD,KAAMC,CAAAA,CAAW,CAAG,GAAIC,CAAAA,IAAxB,CADuD,MAGV,KAAzC,CAAAD,CAAW,CAACE,OAAZ,GAAwBH,CAAI,CAACG,OAAL,EAH2B,CAI9CN,mBAAmB,CAACG,CAAD,CAAO,CAAEI,MAAM,CAAEN,QAAV,CAAoBO,SAAS,GAA7B,CAAP,CAJ2B,CAOnDT,MAAM,CAACK,CAAD,CAAc,YAAd,CAAN,GAAsCL,MAAM,CAACI,CAAD,CAAO,YAAP,CAPO,CAQ9CJ,MAAM,CAACI,CAAD,CAAO,OAAP,CARwC,CAWhDJ,MAAM,CAACI,CAAD,CAAO,kBAAP,CACd,CAZM","sourcesContent":["import format from 'date-fns/format'\nimport formatDistanceToNow from 'date-fns/formatDistanceToNow'\n\nimport ruLocale from 'date-fns/locale/ru'\n\nexport const defaultDateFormat = (date: Date): string => {\n const currentDate = new Date()\n\n if (currentDate.getTime() - date.getTime() < 3600000) {\n return formatDistanceToNow(date, { locale: ruLocale, addSuffix: true })\n }\n\n if (format(currentDate, 'dd.MM.yyyy') === format(date, 'dd.MM.yyyy')) {\n return format(date, 'HH:mm')\n }\n\n return format(date, 'dd.MM.yyyy HH:mm')\n}\n"],"file":"helpers.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@consta/header",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.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.
|
|
21
|
+
"@consta/uikit": "^3.18.1"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@bem-react/classname": "^1.5.8",
|