"use strict";(self.webpackChunkmattermost_webapp=self.webpackChunkmattermost_webapp||[]).push([[5319],{45319:(e,t,a)=>{a.r(t),a.d(t,{default:()=>z}),a(14078);var n=a(70314),r=a(9448),s=a(36891),i=a(17086),o=a(43618),m=a(19601),l=a(83905),c=a(11298),d=a(17534),u=a(1983),p=a(60693),h=a(23712),b=(a(92189),a(48410),a(32081),a(60042)),g=a.n(b),f=a(84390),T=a.n(f),y=a(66795),v=a(27998),E=a(72060),I=a(52173),w=a(51750),O=a(23615),N=a.n(O),_=(a(95289),a(40895),a(28176)),C=a(3063),P=a(34575),S=a(19699),D=a(47816);const K=["btnClass","url","displayName","order","unread","mentions","teamIconUrl","isDraggable","switchTeam","teamIndex","teamId","tip"];const M=(0,E.defineMessages)({nameUndefined:{id:"team.button.name_undefined",defaultMessage:"This team does not have a name"}});function U(e){let{btnClass:t,url:a,displayName:n,order:s,unread:i,mentions:o,teamIconUrl:m,isDraggable:l=!1,switchTeam:c,teamIndex:d,teamId:u,tip:p}=e,h=function(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},s=Object.keys(e);for(n=0;n=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}(e,K);const{formatMessage:b}=(0,E.useIntl)(),v=(0,f.useCallback)((e=>{(0,_.B1)(D.vc.TeamLinkClicked),e.preventDefault(),c(a),setTimeout((()=>{(0,_.L9)("ui","ui_team_sidebar_switch_team")}),0)}),[c,a]);let I=h.active?"active":"";const w=!a.endsWith("create_team")&&!a.endsWith("select_team");let O,N=b({id:"team.button.ariaLabel",defaultMessage:"{teamName} team"},{teamName:n});I||(i&&!h.isInProduct?(I="unread",O=T().createElement("span",{"data-testid":"team-badge-"+u,className:"unread-badge"})):I=w?"":"special",N=b({id:"team.button.unread.ariaLabel",defaultMessage:"{teamName} team unread"},{teamName:n}),o&&(N=b({id:"team.button.mentions.ariaLabel",defaultMessage:"{teamName} team, {mentionCount} mentions"},{teamName:n,mentionCount:o}),O=T().createElement("span",{"data-testid":"team-badge-"+u,className:g()("badge badge-max-number pull-right small",{urgent:h.hasUrgent})},o>99?"99+":o))),N=N.toLowerCase();const P=T().createElement(C.Z,{className:I,withHover:!0,content:h.content||n||"",url:m});let S;void 0!==s&&s<10&&h.showOrder&&(S=T().createElement("div",{className:"order-indicator"},s));const M=T().createElement(k,{order:s,tip:p,url:a},T().createElement("div",{className:"team-btn "+t},!h.isInProduct&&O,P)),U=T().createElement(r.Link,{id:"".concat(a.slice(1),"TeamButton"),"aria-label":N,to:a,onClick:v},M);return l?T().createElement(y.Draggable,{draggableId:u,index:d},((e,t)=>T().createElement("div",Object.assign({className:"draggable-team-container",ref:e.innerRef},e.draggableProps,e.dragHandleProps,{tabIndex:-1}),T().createElement("div",{className:g()(["team-container ".concat(I),{isDragging:t.isDragging}])},U,S)))):T().createElement("div",{"data-testid":"team-container-"+u,className:"team-container ".concat(I)},U,S)}function k(e){let{order:t,tip:a,url:n,children:r}=e;const s=(0,E.useIntl)(),i=(0,f.useMemo)((()=>{if(t&&!(t>=10))return{default:[S.P.ctrl,S.P.alt,t.toString()],mac:[S.P.cmd,S.P.option,t.toString()]}}),[t]);return T().createElement(P.Z,{id:"tooltip-".concat(n),title:a||s.formatMessage(M.nameUndefined),shortcut:i,placement:"right"},r)}U.propTypes={btnClass:N().string,url:N().string.isRequired,displayName:N().string,content:N().node,tip:N().oneOfType([N().string,N().element]).isRequired,order:N().number,showOrder:N().bool,active:N().bool,unread:N().bool,mentions:N().number,placement:N().oneOf(["left","right","top","bottom"]),teamIconUrl:N().oneOfType([N().string,N().oneOf([null])]),switchTeam:N().func.isRequired,isDraggable:N().bool,teamIndex:N().number,teamId:N().string,isInProduct:N().bool,hasUrgent:N().bool};var x=a(95159),j=a(26742),L=a(35887),H=a(49562),R=a(94699),Z=a(70174);function W(e,t,a){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var a=e[Symbol.toPrimitive];if(void 0!==a){var n=a.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function F(e){return T().createElement("div",Object.assign({},e,{className:"scrollbar--view"}))}function B(e){return T().createElement("div",Object.assign({},e,{className:"scrollbar--horizontal"}))}function V(e){return T().createElement("div",Object.assign({},e,{className:"scrollbar--vertical"}))}class A extends T().PureComponent{constructor(e){super(e),W(this,"switchToPrevOrNextTeam",((e,t,a)=>{if(L.p(e,h.Constants.KeyCodes.UP)||L.p(e,h.Constants.KeyCodes.DOWN)){e.preventDefault();const n=L.p(e,h.Constants.KeyCodes.DOWN)?1:-1,r=a.findIndex((e=>e.id===t)),s=r+n;let i;return i=-1===s?a[a.length-1]:s===a.length?a[0]:a[s],this.props.actions.switchTeam("/".concat(i.name)),!0}return!1})),W(this,"switchToTeamByNumber",((e,t,a)=>{const n=[h.Constants.KeyCodes.ONE,h.Constants.KeyCodes.TWO,h.Constants.KeyCodes.THREE,h.Constants.KeyCodes.FOUR,h.Constants.KeyCodes.FIVE,h.Constants.KeyCodes.SIX,h.Constants.KeyCodes.SEVEN,h.Constants.KeyCodes.EIGHT,h.Constants.KeyCodes.NINE,h.Constants.KeyCodes.ZERO];for(const r in n)if(L.p(e,n[r])&&parseInt(r,10){if((e.ctrlKey||e.metaKey)&&e.altKey){const{currentTeamId:t}=this.props,a=(0,R.Z)(this.props.myTeams,this.props.locale,this.props.userTeamsOrderPreference);if(this.switchToPrevOrNextTeam(e,t,a))return;if(this.switchToTeamByNumber(e,t,a))return;this.setState({showOrder:!0})}})),W(this,"handleKeyUp",(e=>{(e.ctrlKey||e.metaKey)&&e.altKey||this.setState({showOrder:!1})})),W(this,"onDragEnd",(e=>{const{updateTeamsOrderForUser:t}=this.props.actions;if(!e.destination)return;const a=(0,R.Z)(this.props.myTeams,this.props.locale,this.props.userTeamsOrderPreference),n=e.source.index,r=e.destination.index,s=((e,t,n)=>[...e.slice(0,t),a.find((e=>e.id===n)),...e.slice(t,e.length)])((o=n,[...(i=a).slice(0,o),...i.slice(o+1,i.length)]),r,e.draggableId);var i,o;t(s.map((e=>e.id))),this.setState({teamsOrder:s})})),this.state={showOrder:!1,teamsOrder:[]}}componentDidUpdate(e){e.currentTeamId!==this.props.currentTeamId&&this.props.enableWebSocketEventScope&&x.Z.updateActiveTeam(this.props.currentTeamId)}componentDidMount(){this.props.actions.getTeams(0,200),document.addEventListener("keydown",this.handleKeyDown),document.addEventListener("keyup",this.handleKeyUp)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown),document.removeEventListener("keyup",this.handleKeyUp)}render(){const e=document.querySelector("#root");if(this.props.myTeams.length<=1)return e.classList.remove("multi-teams"),null;e.classList.add("multi-teams");const t=[],a=(0,R.Z)(this.props.myTeams,this.props.locale,this.props.userTeamsOrderPreference),n=(0,H.PJ)(this.props.products,this.props.location.pathname);if(n&&!n.showTeamSidebar)return null;const r=a.map(((e,t)=>T().createElement(U,{key:"switch_team_"+e.name,url:"/".concat(e.name),tip:e.display_name,active:e.id===this.props.currentTeamId,displayName:e.display_name,order:t+1,showOrder:this.state.showOrder,unread:this.props.unreadTeamsSet.has(e.id),mentions:this.props.mentionsInTeamMap.has(e.id)?this.props.mentionsInTeamMap.get(e.id):0,hasUrgent:!!this.props.teamHasUrgentMap.has(e.id)&&this.props.teamHasUrgentMap.get(e.id),teamIconUrl:Z.uZ(e),switchTeam:t=>this.props.actions.switchTeam(t,n?e:void 0),isDraggable:!0,teamId:e.id,teamIndex:t,isInProduct:Boolean(n)}))),s=[],i=T().createElement("i",{className:"icon icon-plus",role:"img","aria-label":Z._u({id:"sidebar.team_menu.button.plusIcon",defaultMessage:"Plus Icon"})});return this.props.moreTeamsToJoin&&!this.props.experimentalPrimaryTeam?s.push(T().createElement(U,{btnClass:"team-btn__add",key:"more_teams",url:"/select_team",tip:T().createElement(E.FormattedMessage,{id:"team_sidebar.join",defaultMessage:"Other teams you can join"}),content:i,switchTeam:this.props.actions.switchTeam})):s.push(T().createElement(w.Z,{permissions:[I.Z.CREATE_TEAM],key:"more_teams"},T().createElement(U,{btnClass:"team-btn__add",url:"/create_team",tip:T().createElement(E.FormattedMessage,{id:"navbar_dropdown.create",defaultMessage:"Create a Team"}),content:i,switchTeam:this.props.actions.switchTeam}))),!n&&t.push(T().createElement("div",{key:"team-sidebar-bottom-plugin",className:"team-sidebar-bottom-plugin is-empty"},T().createElement(j.default,{pluggableName:"BottomTeamSidebar"}))),T().createElement("div",{className:g()("team-sidebar",{"move--right":this.props.isOpen}),role:"navigation","aria-labelledby":"teamSidebarWrapper"},T().createElement("div",{className:"team-wrapper",id:"teamSidebarWrapper"},T().createElement(v.ZP,{autoHide:!0,autoHideTimeout:500,autoHideDuration:500,renderThumbHorizontal:B,renderThumbVertical:V,renderView:F},T().createElement(y.DragDropContext,{onDragEnd:this.onDragEnd},T().createElement(y.Droppable,{droppableId:"my_teams",type:"TEAM_BUTTON"},(e=>T().createElement("div",Object.assign({ref:e.innerRef},e.droppableProps),r,e.placeholder)))),s)),t)}}const q=(0,n.connect)((function(e){const t=(0,m.iE)(e),a=t.ExperimentalPrimaryTeam,n=(0,c.O5)(e),r=n&&n.length>0,s=e.plugins.components.Product||[],[i,d,b]=(0,o.Fq)(e),g="true"===t.FeatureFlagWebSocketEventScope;return{currentTeamId:(0,c.ev)(e),myTeams:(0,c.Dc)(e),isOpen:(0,p.wo)(e),experimentalPrimaryTeam:a,locale:(0,u.B)(e),moreTeamsToJoin:r,userTeamsOrderPreference:(0,l.U2)(e,h.uP.TEAMS_ORDER,"",""),products:s,unreadTeamsSet:i,mentionsInTeamMap:d,teamHasUrgentMap:b,enableWebSocketEventScope:g}}),(function(e){return{actions:(0,s.bindActionCreators)({getTeams:i.LK,switchTeam:d.Xr,updateTeamsOrderForUser:d.A6},e)}})),z=(0,r.withRouter)(q(A))},3063:(e,t,a)=>{a.d(t,{Z:()=>p});var n=a(23615),r=a.n(n),s=(a(52077),a(911),a(92189),a(60042)),i=a.n(s),o=a(84390),m=a.n(o),l=a(72060),c=a(70174);function d(e,t,a){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var a=e[Symbol.toPrimitive];if(void 0!==a){var n=a.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}class u extends m().PureComponent{render(){const{content:e,url:t,size:a,withHover:n,className:r}=this.props,s=n?"":"no-hover",{formatMessage:o}=this.props.intl,l=t||(0,c.uZ)({display_name:e});let d;return d="string"==typeof e?l?m().createElement("div",{"data-testid":"teamIconImage",className:"TeamIcon__image TeamIcon__".concat(a),"aria-label":o({id:"sidebar.team_menu.button.teamImage",defaultMessage:"{teamName} Team Image"},{teamName:e}),style:{backgroundImage:"url('".concat(l,"')")},role:"img"}):m().createElement("div",{"data-testid":"teamIconInitial",className:"TeamIcon__initials TeamIcon__initials__".concat(a),"aria-label":o({id:"sidebar.team_menu.button.teamInitials",defaultMessage:"{teamName} Team Initials"},{teamName:e}),role:"img"},e?e.replace(/\s/g,"").substring(0,2):"??"):e,m().createElement("div",{className:i()("TeamIcon TeamIcon__".concat(a),{withImage:l},r,s)},m().createElement("div",{className:"TeamIcon__content ".concat(s)},d))}}d(u,"propTypes",{url:r().oneOfType([r().string,r().oneOf([null])]),content:r().node.isRequired,size:r().oneOf(["sm","lg"]),withHover:r().bool,className:r().string}),d(u,"defaultProps",{size:"sm"});const p=(0,l.injectIntl)(u)},60693:(e,t,a)=>{a.d(t,{It:()=>i,f2:()=>m,wo:()=>s});var n=a(4500),r=a(83905);function s(e){return e.views.lhs.isOpen}function i(e){return e.views.lhs.currentStaticPageId}const o=(0,a(35658).v)(),m=(0,n.P1)("getVisibleSidebarStaticPages",r.ym,o,((e,t)=>{const a=[];return e&&a.push({id:"threads",isVisible:!0}),a.push({id:"drafts",isVisible:t>0}),a.filter((e=>e.isVisible))}))}}]); //# sourceMappingURL=5319.a1f00d620b4f313dc01d.js.map