PageSourceSearch

https://avrce.nslunch.ca/chunk-5RYDAGHF.js

js nslunch.ca collected 2026-10-01 15:29:22 UTC 62,135 bytes, 3 lines download raw bytes

1import{a as hi,b as _i,e as k}from"./chunk-2RUIWOA5.js";import{a as Mi}from"./chunk-KTETVNQQ.js";import{a as Bt,b as Ii}from"./chunk-OCWBAQVZ.js";import{a as ke,b as Fe}from"./chunk-OTE7M4B4.js";import{a as yi}from"./chunk-6W7QHKR2.js";import{a as Wt}from"./chunk-RRWC3X3Z.js";import{$ as Pe,D as bt,E as Te,F as fe,G as he,H as _e,J as Ce,K as ve,M as xe,N as Se,P as ge,Q as ye,S as Ie,U as Me,X as vi,Z as xi,ba as Si,ea as wt,fa as Tt,ha as gi,la as Rt,m as Ci,n as yt,oa as Et,r as $t,s as It}from"./chunk-23SNUJD7.js";import{$ as Jt,$a as v,$d as Nt,$g as ui,A as Ft,Ac as ei,Bg as vt,Cb as ot,Cf as ri,Cg as ie,Db as nt,Df as _t,Dg as mi,Eb as Kt,Eg as oe,Fa as o,Fc as ti,Gg as ue,Ib as s,Ig as ne,Jb as m,K as Yt,Kb as V,Kf as ai,Kg as re,Lb as rt,Lc as $,Mf as Y,Mg as ae,Nf as J,O as Pt,Ob as q,Od as ii,Og as ci,Pa as P,Pb as O,Pe as me,Pg as pi,Qb as W,Qg as Ot,Sd as lt,Se as j,Sf as qt,Ta as L,Ua as I,Ud as U,Vf as li,W as be,Wd as Ee,Wg as xt,Xb as Xt,Xd as Be,Yb as at,Yf as K,Yg as St,Zb as Zt,Zd as st,Zg as gt,_d as we,ae as D,ag as X,bb as x,bc as d,be as dt,bg as si,bh as le,cc as c,ce as Ue,ch as fi,da as S,db as N,dc as A,dh as Mt,eb as E,fb as B,gb as f,hb as a,ia as _,ib as r,ja as C,jb as b,ke as oi,le as ni,lg as Z,mc as Ne,mg as De,nb as T,nf as mt,ng as ee,ob as R,of as ct,pf as pt,pg as ce,qb as w,qf as ut,qg as Ct,r as it,re as Ve,rf as ft,rg as di,sb as g,sf as ht,te as H,tf as z,ub as u,ue as G,v as Qt,va as Re,vf as Ae,wa as Lt,wf as Q,wg as pe,xg as te}from"./chunk-QZT25E7N.js";var se=(()=>{class t extends li{getApiEndpoint(){return"api/Role"}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=Re(t)))(n||t)}})()}static{this.\u0275prov=Jt({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Di=t=>["/users/rolesSimple",t];function ki(t,l){t&1&&(a(0,"th",10),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Name")))}function Fi(t,l){if(t&1&&(a(0,"td",11)(1,"a",12),s(2),d(3,"getLangText"),r()()),t&2){let e=l.$implicit;o(),f("routerLink",at(5,Di,e.id)),o(),m(A(3,2,e,"name"))}}function Pi(t,l){t&1&&b(0,"th",13)}function Li(t,l){if(t&1){let e=w();a(0,"td",14)(1,"button",15),g("click",function(){let n=_(e).$implicit,p=u(2);return C(p.deleteEntity(n))}),a(2,"mat-icon",16),s(3,"delete"),r(),a(4,"span",17),s(5),d(6,"transloco"),r()()()}if(t&2){let e=u(2);f("pathActionColumn",e.isCompact),o(5),m(c(6,2,"common.Delete"))}}function Ni(t,l){t&1&&b(0,"tr",18)}function qi(t,l){t&1&&b(0,"tr",19)}function Oi(t,l){if(t&1&&(a(0,"table",1),T(1,2),I(2,ki,3,3,"th",3)(3,Fi,4,7,"td",4),R(),T(4,5),I(5,Pi,1,0,"th",6)(6,Li,7,4,"td",7),R(),I(7,Ni,1,0,"tr",8)(8,qi,1,0,"tr",9),r()),t&2){let e=u();f("dataSource",e.entities),o(7),f("matHeaderRowDef",e.getDisplayedColumns()),o(),f("matRowDefColumns",e.getDisplayedColumns())}}var wi=(()=>{class t extends Et{constructor(){super(),this.entityService=S(se),this.title="common.Roles",this.buttons=[{icon:"add",text:"user.AddRole",link:["/users/rolesSimple/add"],color:"primary"}],this.columnDefinitions=[{name:"common.Name",code:"name",visible:!0},this.ACTION_COLUMN],this.defaultSort={active:"name",direction:"asc"},this.runAutocomplete=!1}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=P({type:t,selectors:[["path-role-list"]],features:[L],decls:2,vars:2,consts:[[3,"controller"],["mat-table","",1,"table",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","actions","stickyEnd",""],["mat-header-cell","","pathActionHeader","",4,"matHeaderCellDef"],["mat-cell","",3,"pathActionColumn",4,"matCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],[1,"",3,"routerLink"],["mat-header-cell","","pathActionHeader",""],["mat-cell","",3,"pathActionColumn"],["matButton","text","color","warn",3,"click"],["aria-label","Delete Icon"],[1,"button-text"],["mat-header-row",""],["mat-row",""]],template:function(i,n){i&1&&(a(0,"path-list-template",0),v(1,Oi,9,3,"table",1),r()),i&2&&(f("controller",n),o(),x(n.entities?1:-1))},dependencies:[$,H,G,X,K,Z,ee,z,te,Q,Ae,ie,j,oe,ne,re,J,ae,Me,fe,_e,Se,Ce,he,ge,ve,xe,ye,Ie,Pe,wt,Tt,Rt,_t,Y,le],encapsulation:2})}}return t})();
1function Wi(t,l){if(t&1&&(a(0,"span"),s(1),r()),t&2){let e=u().$implicit;o(),V("\u2022 ",e.name)}}function $i(t,l){if(t&1&&(a(0,"div",2),v(1,Wi,2,1,"span"),r()),t&2){let e=l.$implicit,i=u();o(),x(i.isOmitted(e)?-1:1)}}var Ti=(()=>{class t extends yt{constructor(){super(...arguments),this.data=S(mt)}get dialogSize(){return{w:"33%"}}isOmitted(e){return!!(this.data.omitId??[]).find(i=>i===e.id)}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=Re(t)))(n||t)}})()}static{this.\u0275cmp=P({type:t,selectors:[["path-confirm-list"]],features:[L],decls:16,vars:14,consts:[["mat-dialog-title",""],[1,"confirm-list__message"],[1,"confirm-list__item"],["align","end"],["matButton","outlined","mat-dialog-close",""],["matButton","","pathFocus","",3,"mat-dialog-close"]],template:function(i,n){i&1&&(a(0,"h2",0),s(1),d(2,"transloco"),r(),a(3,"mat-dialog-content")(4,"div",1),s(5),d(6,"transloco"),r(),E(7,$i,2,1,"div",2,N),r(),a(9,"mat-dialog-actions",3)(10,"button",4),s(11),d(12,"transloco"),r(),a(13,"button",5),s(14),d(15,"transloco"),r()()),i&2&&(o(),m(c(2,5,n.data.title??"")),o(4),m(A(6,7,n.data.message??"",n.data.messageParams)),o(2),B(n.data.list),o(4),m(c(12,10,n.data.buttonCancelText??"common.Cancel")),o(2),f("mat-dialog-close",n.data.list),o(),m(c(15,12,n.data.buttonOkText??"common.Confirm")))},dependencies:[$,H,G,X,K,Z,ee,z,pt,ut,ht,ft,te,Q,ie,j,oe,ne,re,J,ae,Ci,Y],styles:[".radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;margin:15px 0}.radio-button[_ngcontent-%COMP%]{margin:5px}.confirm-list__message[_ngcontent-%COMP%]{margin-bottom:10px}.confirm-list__item[_ngcontent-%COMP%]{margin-bottom:3px}"]})}}return t})();var M=(function(t){return t[t.Inherited=1]="Inherited",t[t.All=2]="All",t[t.Selected=3]="Selected",t[t.FromRole=4]="FromRole",t})(M||{});var Vt=class extends fi{},de=class{};var At=class{};var Hi=["tableContainer"],Gi=(t,l)=>({compact:t,scrolling:l});function ji(t,l){if(t&1&&(a(0,"mat-option",7),s(1),r()),t&2){let e=l.$implicit;f("value",e.id),o(),m(e.name)}}function zi(t,l){t&1&&(a(0,"mat-hint"),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"roles.AddVendorPermissionToSelectVendors")))}function Qi(t,l){if(t&1&&(a(0,"mat-option",7),s(1),r()),t&2){let e=l.$implicit;f("value",e.id),o(),m(e.name)}}function Yi(t,l){t&1&&(a(0,"mat-hint"),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"roles.AddSchoolPermissionToSelectSchools")))}function Ji(t,l){t&1&&b(0,"th",26)}function Ki(t,l){if(t&1){let e=w();a(0,"td",27)(1,"mat-checkbox",28),g("click",function(){let n=_(e).$implicit,p=u(2);return C(p.tryTogglePermission(n))}),r()()}if(t&2){let e=l.$implicit,i=u(2);o(),f("checked",i.selectedPermissions.isSelected(e.id))("disabled",!i.canEdit())}}function Xi(t,l){t&1&&(a(0,"th",26),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Name")))}function Zi(t,l){if(t&1&&(a(0,"td",27),s(1),d(2,"getLangText"),r()),t&2){let e=l.$implicit;o(),m(A(2,1,e,"name"))}}function eo(t,l){t&1&&(a(0,"th",26),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Description")))}function to(t,l){if(t&1&&(a(0,"td",29),s(1),d(2,"getLangText"),r()),t&2){let e=l.$implicit;o(),m(A(2,1,e,"description"))}}function io(t,l){t&1&&(a(0,"th",26),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Feature")))}function oo(t,l){if(t&1&&(a(0,"td",29),s(1),d(2,"getLangText"),r()),t&2){let e=l.$implicit;o(),m(A(2,1,e.feature,"name"))}}function no(t,l){t&1&&(a(0,"th",26),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"roles.VendorSpecific")))}function ro(t,l){if(t&1&&(a(0,"td",27),b(1,"path-boolean-format",30),r()),t&2){let e=l.$implicit;o(),f("boolean",e.vendorSpecific)}}function ao(t,l){t&1&&(a(0,"th",26),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"roles.SchoolSpecific")))}function lo(t,l){if(t&1&&(a(0,"td",27),b(1,"path-boolean-format",30),r()),t&2){let e=l.$implicit;o(),f("boolean",e.schoolSpecific)}}function so(t,l){t&1&&b(0,"tr",31)}function mo(t,l){t&1&&b(0,"tr",32)}function co(t,l){if(t&1){let e=w();a(0,"button",33),g("click",function(){_(e);let n=u(2);return C(n.save())}),s(1),d(2,"transloco"),r()}t&2&&(o(),m(c(2,1,"common.Save")))}function po(t,l){if(t&1){let e=w();a(0,"div")(1,"form",2,0)(3,"div",3)(4,"mat-form-field")(5,"mat-label"),s(6),d(7,"transloco"),r(),a(8,"input",4),W("ngModelChange",function(n){_(e);let p=u();return O(p.entity.name,n)||(p.entity.name=n),C(n)}),r()(),a(9,"mat-form-field")(10,"mat-label"),s(11),d(12,"transloco"),r(),a(13,"input",5),W("ngModelChange",function(n){_(e);let p=u();return O(p.entity.name_fr,n)||(p.entity.name_fr=n),C(n)}),r()(),a(14,"mat-form-field")(15,"mat-label"),s(16),d(17,"transloco"),r(),a(18,"mat-select",6),W("ngModelChange",function(n){_(e);let p=u();return O(p.entity.filters.vendorIds,n)||(p.entity.filters.vendorIds=n),C(n)}),g("selectionChange",function(){_(e);let n=u();
1return C(n.roleVendorChanged())}),a(19,"mat-option",7),s(20),d(21,"transloco"),r(),a(22,"mat-option",7),s(23),d(24,"transloco"),r(),E(25,ji,2,2,"mat-option",7,N),r(),v(27,zi,3,3,"mat-hint"),r(),a(28,"mat-form-field")(29,"mat-label"),s(30),d(31,"transloco"),r(),a(32,"mat-select",8),W("ngModelChange",function(n){_(e);let p=u();return O(p.entity.filters.schoolIds,n)||(p.entity.filters.schoolIds=n),C(n)}),g("selectionChange",function(){_(e);let n=u();return C(n.roleSchoolChanged())}),a(33,"mat-option",7),s(34),d(35,"transloco"),r(),a(36,"mat-option",7),s(37),d(38,"transloco"),r(),E(39,Qi,2,2,"mat-option",7,N),r(),v(41,Yi,3,3,"mat-hint"),r()(),a(42,"h3",9),s(43),d(44,"transloco"),r(),a(45,"div",10,1)(47,"table",11),T(48,12),I(49,Ji,1,0,"th",13)(50,Ki,2,2,"td",14),R(),T(51,15),I(52,Xi,3,3,"th",13)(53,Zi,3,4,"td",14),R(),T(54,16),I(55,eo,3,3,"th",13)(56,to,3,4,"td",17),R(),T(57,18),I(58,io,3,3,"th",13)(59,oo,3,4,"td",17),R(),T(60,19),I(61,no,3,3,"th",13)(62,ro,2,1,"td",14),R(),T(63,20),I(64,ao,3,3,"th",13)(65,lo,2,1,"td",14),R(),I(66,so,1,0,"tr",21)(67,mo,1,0,"tr",22),r()(),a(68,"div",23)(69,"button",24),g("click",function(){_(e);let n=u();return C(n.goBack())}),s(70),d(71,"transloco"),r(),v(72,co,3,3,"button",25),r()()()}if(t&2){let e=u();o(6),m(c(7,29,"common.Name")),o(2),q("ngModel",e.entity.name),f("disabled",!e.canEdit()),o(3),m(c(12,31,"common.NameFrench")),o(2),q("ngModel",e.entity.name_fr),f("disabled",!e.canEdit()),o(3),m(c(17,33,"common.Vendors")),o(2),f("disabled",!e.hasVendorPermissions()),q("ngModel",e.entity.filters.vendorIds),o(),f("value",-1),o(),m(c(21,35,"common.All")),o(2),f("value",-2),o(),m(c(24,37,"roles.InheritedFromUser")),o(2),B(e.vendors),o(2),x(e.hasVendorPermissions()?-1:27),o(3),m(c(31,39,"common.Schools")),o(2),f("disabled",!e.hasSchoolPermissions()),q("ngModel",e.entity.filters.schoolIds),o(),f("value",-1),o(),m(c(35,41,"common.All")),o(2),f("value",-2),o(),m(c(38,43,"roles.InheritedFromUser")),o(2),B(e.schools),o(2),x(e.hasSchoolPermissions()?-1:41),o(2),V("",c(44,45,"roles.Permissions"),"\xA0"),o(2),f("ngClass",Zt(49,Gi,e.isCompact(),e.isScrolling())),o(2),f("dataSource",e.getPermissions()),o(19),f("matHeaderRowDef",e.getDisplayedColumns()),o(),f("matRowDefColumns",e.getDisplayedColumns()),o(3),m(c(71,47,"common.GoBack")),o(2),x(e.canEdit()?72:-1)}}var Gt=(()=>{class t extends It{constructor(){super(...arguments),this.entityService=S(se),this.listService=S(xt),this.companyService=S(bt),this.featureService=S(gt),this.vendorService=S(ke),this.schoolService=S(Fe),this.dialog=S(ct),this.PermissionMode=M,this.selectedPermissions=new ii(!0),this.isCompactBool=!1,this.tableContainerWidth=0,this.tableWidth=0,this.compactBreakpoint=0,this.isScrollingBool=!1,this.formRs=Ne(we),this.tableContainer=Ne("tableContainer",{read:Lt})}ngOnInit(){this.permissionService.hasAllCompaniesPermission("Users").subscribe(e=>{this.allCompanies=e,this.getEntity().subscribe(i=>{i.filters||(i.filters=new de),i.filters.schoolIds||(i.filters.schoolIds=[]),i.filters.vendorIds||(i.filters.vendorIds=[]),i.filters.schoolMode===M.All&&(i.filters.schoolIds=[-1]),i.filters.schoolMode===M.Inherited&&(i.filters.schoolIds=[-2]),i.filters.vendorMode===M.All&&(i.filters.vendorIds=[-1]),i.filters.vendorMode===M.Inherited&&(i.filters.vendorIds=[-2]),this.previousRoleSchoolIds=i.filters.schoolIds,this.previousRoleVendorIds=i.filters.vendorIds,i.permissions.forEach(n=>this.selectedPermissions.select(n.permissionId))})}),this.listService.getPermissions$().subscribe(e=>{this.permissions=e.sort((i,n)=>{let p=i.feature.id===3?0:i.feature.id,h=n.feature.id===3?0:n.feature.id;return p<h?-1:p>h?1:i.name.localeCompare(n.name)})}),this.permissionService.getAllowedCompanyIds("Users").subscribe(e=>{let i=new Mi;i.ids=e,this.companyService.filteredList(i).subscribe(n=>{this.companies=n.list})}),this.listService.getRequiredPermissions().subscribe(e=>this.requiredPermissions=e),this.companyService.currentCompany$.pipe(be(this.destroyed$)).subscribe(e=>{this.entity&&this.entity.companyId!==e.id&&(this.entity.companyId=e.id)}),this.vendorService.listAll().subscribe(e=>this.vendors=e),this.schoolService.listAll().subscribe(e=>this.schools=e)}tryTogglePermission(e){if(this.selectedPermissions.isSelected(e.id)){let i=this.getRequiredByPermissionIds(e.id),n=this.selectedPermissions.selected.filter(p=>i.find(h=>h===p));n.length>0?this.confirmRequiredPermissions("roles.RemovingPermissionRequiresPermission",this.permissionName(e),"roles.RemoveAll",this.toDialogList(this.permissions.filter(p=>n.find(h=>p.id===h)||p.id===e.id)),[e.id]):this.selectedPermissions.toggle(e.id)}else{let n=this.getRequiredPermissionIds(e.id).filter(p=>!this.selectedPermissions.selected.find(h=>h===p));n.length>0?this.confirmRequiredPermissions("roles.AddingPermissionRequiresPermission",this.permissionName(e),"roles.AddAll",this.toDialogList(this.permissions.filter(p=>n.find(h=>p.id===h)||p.id===e.id)),[e.id]):this.selectedPermissions.toggle(e.id)}}permissionName(e){return this.translocoService.getActiveLang()==="en"?e.name:e.name_fr||e.name}toDialogList(e){return e.map(i=>({id:i.id,name:this.permissionName(i)}))}confirmRequiredPermissions(e,i,n,p,h){this.dialog.open(Ti,{data:{title:"roles.MissingRequiredPermissions",message:e,messageParams:{permission:i},list:p,omitId:h,buttonOkText:n},disableClose:!0}).afterClosed().subscribe(y=>{y&&this.togglePermissions(y)})}togglePermissions(e){for(let i=0,n=e.length;i<n;i++)this.selectedPermissions.toggle(e[i].id)}getRequiredPermissionIds(e,i=new Set){let n=this.requiredPermissions.filter(h=>h.permissionId===e).map(h=>h.requiredPermissionId),p=[];
1return n.forEach(h=>{i.has(h)||(i.add(h),p.push(h,...this.getRequiredPermissionIds(h,i)))}),p}getRequiredByPermissionIds(e,i=new Set){let n=this.requiredPermissions.filter(h=>h.requiredPermissionId===e).map(h=>h.permissionId),p=[];return n.forEach(h=>{i.has(h)||(i.add(h),p.push(h,...this.getRequiredByPermissionIds(h,i)))}),p}getDisplayedColumns(){let e=["select","name","description","feature","vendorSpecific","schoolSpecfic"];return this.featureService.hasFeature("core.multiCompany")&&e.push("companySpecific"),e}getPermissions(){return this.permissions.filter(e=>e.feature.enabled||this.selectedPermissions.isSelected(e.id))}roleSchoolChanged(){this.previousRoleSchoolIds.includes(-1)&&this.entity.filters.schoolIds.includes(-1)?this.entity.filters.schoolIds=this.entity.filters.schoolIds.filter(e=>e!==-1):this.previousRoleSchoolIds.includes(-2)&&this.entity.filters.schoolIds.includes(-2)?this.entity.filters.schoolIds=this.entity.filters.schoolIds.filter(e=>e!==-2):this.entity.filters.schoolIds.includes(-1)?this.entity.filters.schoolIds=[-1]:this.entity.filters.schoolIds.includes(-2)&&(this.entity.filters.schoolIds=[-2]),this.previousRoleSchoolIds=[...this.entity.filters.schoolIds],this.entity.filters.schoolIds===void 0||this.entity.filters.schoolIds.length===0?this.entity.filters.schoolMode=null:this.entity.filters.schoolIds.length===1&&this.entity.filters.schoolIds[0]===-1?this.entity.filters.schoolMode=M.All:this.entity.filters.schoolIds.length===1&&this.entity.filters.schoolIds[0]===-2?this.entity.filters.schoolMode=M.Inherited:this.entity.filters.schoolMode=M.Selected}roleVendorChanged(){this.previousRoleVendorIds.includes(-1)&&this.entity.filters.vendorIds.includes(-1)?this.entity.filters.vendorIds=this.entity.filters.vendorIds.filter(e=>e!==-1):this.previousRoleVendorIds.includes(-2)&&this.entity.filters.vendorIds.includes(-2)?this.entity.filters.vendorIds=this.entity.filters.vendorIds.filter(e=>e!==-2):this.entity.filters.vendorIds.includes(-1)?this.entity.filters.vendorIds=[-1]:this.entity.filters.vendorIds.includes(-2)&&(this.entity.filters.vendorIds=[-2]),this.previousRoleVendorIds=[...this.entity.filters.vendorIds],this.entity.filters.vendorIds===void 0||this.entity.filters.vendorIds.length===0?this.entity.filters.vendorMode=null:this.entity.filters.vendorIds.length===1&&this.entity.filters.vendorIds[0]===-1?this.entity.filters.vendorMode=M.All:this.entity.filters.vendorIds.length===1&&this.entity.filters.vendorIds[0]===-2?this.entity.filters.vendorMode=M.Inherited:this.entity.filters.vendorMode=M.Selected}hasSchoolPermissions(){return this.selectedPermissions&&this.permissions.some(e=>this.selectedPermissions.isSelected(e.id)&&e.schoolSpecific)&&this.canEdit()}hasVendorPermissions(){return this.selectedPermissions&&this.permissions.some(e=>this.selectedPermissions.isSelected(e.id)&&e.vendorSpecific)&&this.canEdit()}canEdit(){return this.permissionService.hasPermission("RoleEditor")}isCompact(){let e,i=this.tableContainer();return i&&i.nativeElement.querySelector("table")&&(this.table=i.nativeElement.querySelector("table"),this.table=i.nativeElement.querySelector("table"),this.tableContainerWidth=i.nativeElement.clientWidth,this.tableWidth=this.table.clientWidth,this.tableWidth>this.tableContainerWidth?(this.compactBreakpoint===0&&(this.compactBreakpoint=this.tableWidth+20),e=!0):this.tableContainerWidth>this.compactBreakpoint&&(e=!1)),e!==void 0&&this.isCompactBool!==e&&(this.isCompactBool=e),this.isCompactBool}isScrolling(){let e=this.isCompactBool&&this.tableWidth>this.tableContainerWidth;return this.isScrollingBool!==e&&(this.isScrollingBool=e),e}newEntity(){let e=new Vt;return e.filters=new de,e.filters.schoolIds=[],e.filters.vendorIds=[],e}beforeSave(){return this.formRs().valid?(this.entity.filters.schoolIds=this.entity.filters.schoolIds.filter(e=>e>0),this.entity.filters.vendorIds=this.entity.filters.vendorIds.filter(e=>e>0),this.entity.permissions=[],this.selectedPermissions.selected.forEach(e=>{let i=new At;i.permissionId=e,this.entity.permissions.push(i)}),!0):!1}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=Re(t)))(n||t)}})()}static{this.\u0275cmp=P({type:t,selectors:[["path-role-simple"]],viewQuery:function(i,n){i&1&&ot(n.formRs,we,5)(n.tableContainer,Hi,5,Lt),i&2&&nt(2)},features:[L],decls:1,vars:1,consts:[["form","ngForm"],["tableContainer",""],[1,"form"],[1,"form__row-container","mb-2"],["matInput","","name","name","required","",3,"ngModelChange","ngModel","disabled"],["matInput","","name","name_fr","required","",3,"ngModelChange","ngModel","disabled"],["multiple","","name","roleVendorIds","required","",3,"ngModelChange","selectionChange","disabled","ngModel"],[3,"value"],["multiple","","name","roleSchoolIds","required","",3,"ngModelChange","selectionChange","disabled","ngModel"],[1,"m-0"],[1,"table-container","mb-3",3,"ngClass"],["mat-table","",1,"mb-3",3,"dataSource"],["matColumnDef","select"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","name"],["matColumnDef","description"],["mat-cell","","class","role-simple__wrap-cell",4,"matCellDef"],["matColumnDef","feature"],["matColumnDef","vendorSpecific"],["matColumnDef","schoolSpecfic"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[1,"button-container"],["matButton","outlined",3,"click"],["matButton","","color","confirm"],["mat-header-cell",""],["mat-cell",""],[3,"click","checked","disabled"],["mat-cell","",1,"role-simple__wrap-cell"],[3,"boolean"],["mat-header-row",""],["mat-row",""],["matButton","","color","confirm",3,"click"]],template:function(i,n){i&1&&v(0,po,73,52,"div"),i&2&&x(n.entity?0:-1)},dependencies:[$,ei,H,Ue,lt,Ee,Be,Ve,dt,we,G,X,K,Z,ee,De,z,te,pe,ce,di,Q,ie,vt,j,me,oe,ne,ue,re,J,ae,Bt,Me,fe,_e,Se,Ce,he,ge,ve,xe,ye,Ie,Y,le],styles:[".role-simple__wrap-cell[_ngcontent-%COMP%]{white-space:normal;max-width:20rem;min-width:18.5rem}"]})}}return t})();var uo=["matMenu"],fo=()=>["common.FullName","user.UserEmail"],ho=t=>[t],Ri=(t,l)=>l.id;function _o(t,l){t&1&&(a(0,"th",19),s(1),d(2,"transloco"),r()),t&2&&(o(),V(" ",c(2,1,"common.FullName")))}function Co(t,l){if(t&1&&(a(0,"td",20)(1,"a",21),s(2),r()()),t&2){let e=l.$implicit;o(),f("routerLink",at(3,ho,e.id)),o(),rt("",e.firstName," ",e.lastName)}}function vo(t,l){t&1&&(a(0,"th",19),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"user.UserEmail")))}
1function xo(t,l){if(t&1&&(a(0,"td",20),s(1),r()),t&2){let e=l.$implicit;o(),m(e.email)}}function So(t,l){t&1&&(a(0,"th",22),s(1,"Roles"),r())}function go(t,l){t&1&&s(0," | ")}function yo(t,l){if(t&1&&(a(0,"span"),s(1),d(2,"getLangText"),v(3,go,1,0),r()),t&2){let e=l.$implicit,i=l.$index,n=l.$count;o(),V("",A(2,2,e,"name")," "),o(2),x(i!==n-1?3:-1)}}function Io(t,l){if(t&1&&(a(0,"td",20),E(1,yo,4,5,"span",null,Ri),r()),t&2){let e=l.$implicit;o(),B(e.roles)}}function Mo(t,l){if(t&1){let e=w();a(0,"th",19)(1,"mat-form-field",23)(2,"mat-label"),s(3),d(4,"transloco"),r(),a(5,"mat-select",24),W("valueChange",function(n){_(e);let p=u(2);return O(p._filters.includeInactive,n)||(p._filters.includeInactive=n),C(n)}),g("selectionChange",function(){_(e);let n=u(2);return C(n.updateList())}),a(6,"mat-option",25),s(7),d(8,"transloco"),r(),a(9,"mat-option",25),s(10),d(11,"transloco"),r(),a(12,"mat-option",25),s(13),d(14,"transloco"),r()()()()}if(t&2){let e=u(2);o(3),m(c(4,8,"user.ActiveStatus")),o(2),q("value",e._filters.includeInactive),o(),f("value",e.ActiveStatus.Active),o(),m(c(8,10,"common.Active")),o(2),f("value",e.ActiveStatus.Inactive),o(),m(c(11,12,"common.Inactive")),o(2),f("value",e.ActiveStatus.All),o(),m(c(14,14,"common.All"))}}function bo(t,l){if(t&1&&(a(0,"td",20),b(1,"path-boolean-format",26),r()),t&2){let e=l.$implicit;o(),f("boolean",e.active)}}function wo(t,l){t&1&&b(0,"th",27)}function To(t,l){if(t&1){let e=w();a(0,"button",33),g("click",function(){_(e);let n=u().$implicit,p=u(2);return C(p.openViewAs(n.id))}),a(1,"mat-icon",34),s(2,"visibility"),r(),a(3,"span",32),s(4),d(5,"transloco"),r()()}t&2&&(o(4),m(c(5,1,"user.ViewAsParent")))}function Ro(t,l){if(t&1){let e=w();a(0,"td",28),v(1,To,6,3,"button",29),a(2,"button",30),g("click",function(){let n=_(e).$implicit,p=u(2);return C(p.deleteEntity(n))}),a(3,"mat-icon",31),s(4,"delete"),r(),a(5,"span",32),s(6),d(7,"transloco"),r()()()}if(t&2){let e=l.$implicit,i=u(2);f("pathActionColumn",i.isCompact),o(),x(e.roles!=null&&e.roles.length?-1:1),o(5),m(c(7,3,"common.Delete"))}}function Eo(t,l){t&1&&b(0,"tr",35)}function Bo(t,l){t&1&&b(0,"tr",36)}function Uo(t,l){if(t&1){let e=w();a(0,"table",6),g("matSortChange",function(n){_(e);let p=u();return C(p.sortChanged(n))}),T(1,7),I(2,_o,3,3,"th",8)(3,Co,3,5,"td",9),R(),T(4,10),I(5,vo,3,3,"th",8)(6,xo,2,1,"td",9),R(),T(7,11),I(8,So,2,0,"th",12)(9,Io,3,0,"td",9),R(),T(10,13),I(11,Mo,15,16,"th",8)(12,bo,2,1,"td",9),R(),T(13,14),I(14,wo,1,0,"th",15)(15,Ro,8,5,"td",16),R(),I(16,Eo,1,0,"tr",17)(17,Bo,1,0,"tr",18),r()}if(t&2){let e=u();f("dataSource",e.entities)("matSortActive",e.activeSort==null?null:e.activeSort.active)("matSortDirection",e.activeSort==null?null:e.activeSort.direction),o(16),f("matHeaderRowDef",e.getDisplayedColumns()),o(),f("matRowDefColumns",e.getDisplayedColumns())}}function Vo(t,l){if(t&1){let e=w();a(0,"mat-checkbox",37),g("click",function(n){return n.stopPropagation()})("change",function(n){let p=_(e).$implicit,h=u();return C(h.updateRoles(n.checked,p.id))}),s(1),d(2,"getLangText"),r(),b(3,"br")}if(t&2){let e=l.$implicit,i=u();f("checked",i._filters.roleIds&&i._filters.roleIds.includes(e.id)),o(),V(" ",A(2,2,e,"name")," ")}}var Ei=(()=>{class t extends Et{constructor(){super(),this.entityService=S(St),this.companyService=S(bt),this.configService=S(Mt),this.roleService=S(se),this.ActiveStatus=Ot,this.roles=[],this.menu=Ne("matMenu"),this.title="common.Users",this.buttons=[{svgIcon:"reset-filter",text:"common.ResetFilters",onClick:"resetFilters",args:[!0],buttonAppearance:"outlined"},{icon:"expand_more",text:"common.Filter",badgeValue:0,buttonAppearance:"outlined"},{icon:"view_week",text:"common.Columns",onClick:"columnsClicked",buttonAppearance:"outlined"},this.getImportExportButton("SystemAdmin","dataImport.users")],this.permissionService.hasPermission("RoleEditor")&&this.buttons.push({icon:"recent_actors",text:"user.ManageRoles",link:["/users/roles"]}),this.columnDefinitions=[{name:"Full Name",code:"fullName",visible:!0},{name:"User Email",code:"email",visible:!0},{name:"Role",code:"userRole",visible:!0},{name:"Active",code:"active",visible:!1},this.ACTION_COLUMN]}openViewAs(e){window.open("/view-as/"+e,"_blank")}ngOnInit(){this.roleService.list().subscribe(e=>this.roles=e.list),this.defaultSort={active:"fullName",direction:"asc"},this._filters.includeInactive=Ot.Active,this.defaultFilters.includeRoles=!0,this._filters.includeRoles=!0,this.runAutocomplete=!1,super.ngOnInit(),this.companyService.currentCompany$.pipe(be(this.destroyed$)).subscribe(e=>{this._filters.companyId=e.id,this.updateList()}),this.entityService.getloggedinUser().superAdmin&&(this.buttons.push({icon:"add",text:"user.AddUser",color:"primary",link:["/users/add"]}),this.configService.getByCode$("food.txtSquad.*enabled").subscribe(e=>{e.intValue===1&&this.buttons.unshift({icon:"autorenew",text:"user.UpdateTxtSquad",onClick:"updateTxtSquad"})}),this.configService.getByCode$("food.mailChimp.*enabled").subscribe(e=>{e.intValue===1&&this.buttons.unshift({icon:"autorenew",text:"user.UpdateMailchimp",onClick:"updateMailChimp"})}),this.configService.getByCode$("food.envoke.*enabled").subscribe(e=>{e.intValue===1&&this.buttons.unshift({icon:"autorenew",text:"user.UpdateEnvoke",onClick:"updateEnvoke"})}))}ngAfterViewInit(){let e=this.buttons.find(i=>i.text==="common.Filter");e&&(e.menuTrigger=this.menu()),super.ngAfterViewInit()}updateMailChimp(){this.snackBarService.open(this.translocoService.translate("user.MailChimpUpdateTriggered"),null,5e3),this.entityService.updateMailChimp().subscribe()}updateTxtSquad(){this.snackBarService.open(this.translocoService.translate("user.TxtSquadUpdateTriggered"),null,5e3),this.entityService.updateTxtSquad().subscribe()}updateRoles(e,i){this._filters.roleIds=this._filters.roleIds||[],e?this._filters.roleIds.push(i):this._filters.roleIds=this._filters.roleIds.filter(n=>n!==i),this.updateList()}updateEnvoke(){this.snackBarService.open(this.translocoService.translate("user.EnvokeUpdateTriggered"),null,5e3),this.entityService.updateEnvoke().subscribe()}afterUpdateList(){this.buttons.find(e=>
1e.text==="common.Filter").badgeValue=this._filters.roleIds?.length}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=P({type:t,selectors:[["path-user-list"]],viewQuery:function(i,n){i&1&&ot(n.menu,uo,5),i&2&&nt()},features:[L],decls:9,vars:6,consts:[["matMenu","matMenu"],[3,"controller"],["mat-table","","matSort","",1,"table",3,"dataSource","matSortActive","matSortDirection"],[1,"search"],[3,"valueChange","searchEvent","value","loading","searchFields"],[1,"user-list__role-filter"],["mat-table","","matSort","",1,"table",3,"matSortChange","dataSource","matSortActive","matSortDirection"],["matColumnDef","fullName"],["path-header-template","","class","mat-header-cell",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","email"],["matColumnDef","userRole"],["mat-header-cell","",4,"matHeaderCellDef"],["matColumnDef","active"],["matColumnDef","actions","stickyEnd",""],["mat-header-cell","","pathActionHeader","",4,"matHeaderCellDef"],["mat-cell","",3,"pathActionColumn",4,"matCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["path-header-template","",1,"mat-header-cell"],["mat-cell",""],[1,"",3,"routerLink"],["mat-header-cell",""],[1,"table__header-filter"],[3,"valueChange","selectionChange","value"],[3,"value"],[3,"boolean"],["mat-header-cell","","pathActionHeader",""],["mat-cell","",3,"pathActionColumn"],["matButton","text"],["matButton","text","color","warn",3,"click"],["aria-label","Delete Icon"],[1,"button-text"],["matButton","text",3,"click"],["aria-label","View As Parent Icon"],["mat-header-row",""],["mat-row",""],[3,"click","change","checked"]],template:function(i,n){if(i&1){let p=w();a(0,"path-list-template",1),v(1,Uo,18,5,"table",2),a(2,"div",3)(3,"path-search-input",4),W("valueChange",function(y){return _(p),O(n._filters.search,y)||(n._filters.search=y),C(y)}),g("searchEvent",function(){return n.updateList()}),r()(),a(4,"mat-menu",null,0)(6,"div",5),E(7,Vo,4,5,null,null,Ri),r()()()}i&2&&(f("controller",n),o(),x(n.entities?1:-1),o(2),q("value",n._filters.search),f("loading",n.listLoading)("searchFields",Xt(5,fo)),o(4),B(n.roles))},dependencies:[$,H,G,X,K,Z,ee,De,z,te,pe,ce,Q,Ae,ie,j,me,oe,ne,ue,re,J,ae,Me,fe,_e,Se,Ce,he,ge,ve,xe,ye,Ie,Pe,xi,wt,Tt,gi,Rt,Bt,yi,Si,_t,Y,le],styles:[".user-list__role-filter[_ngcontent-%COMP%]{margin:0 15px;background-color:var(--surface)}"]})}}return t})();var Dt=class extends ci{};var kt=class{};function Ao(t,l){if(t&1&&(a(0,"mat-option",10),s(1),d(2,"getLangText"),r()),t&2){let e=l.$implicit;f("value",e),o(),m(A(2,2,e,"name"))}}function Do(t,l){if(t&1&&(a(0,"div",11),s(1),r()),t&2){let e=u(2);o(),V(" ",e.complianceWarning," ")}}function ko(t,l){if(t&1&&(a(0,"mat-option",10),s(1),r()),t&2){let e=l.$implicit;f("value",e.id),o(),m(e.name)}}function Fo(t,l){if(t&1&&(a(0,"mat-option",10),s(1),r()),t&2){let e=l.$implicit;f("value",e.id),o(),m(e.name)}}function Po(t,l){if(t&1){let e=w();a(0,"div",4)(1,"mat-form-field",8)(2,"mat-label"),s(3),d(4,"transloco"),r(),a(5,"mat-select",9),W("ngModelChange",function(n){_(e);let p=u();return O(p.selectedRole,n)||(p.selectedRole=n),C(n)}),g("ngModelChange",function(){_(e);let n=u();return C(n.onRoleSelected())}),a(6,"mat-option"),s(7),d(8,"transloco"),r(),E(9,Ao,3,5,"mat-option",10,N),r()(),v(11,Do,2,1,"div",11),a(12,"mat-form-field",8)(13,"mat-label"),s(14),d(15,"transloco"),r(),a(16,"mat-select",12),W("ngModelChange",function(n){_(e);let p=u();return O(p.entity.filters.vendorIds,n)||(p.entity.filters.vendorIds=n),C(n)}),g("selectionChange",function(){_(e);let n=u();return C(n.vendorChanged())}),a(17,"mat-option",10),s(18),d(19,"transloco"),r(),E(20,ko,2,2,"mat-option",10,N),r(),a(22,"mat-error"),s(23),d(24,"transloco"),r()(),a(25,"mat-form-field",8)(26,"mat-label"),s(27),d(28,"transloco"),r(),a(29,"mat-select",13),W("ngModelChange",function(n){_(e);let p=u();return O(p.entity.filters.schoolIds,n)||(p.entity.filters.schoolIds=n),C(n)}),g("selectionChange",function(){_(e);let n=u();return C(n.schoolChanged())}),a(30,"mat-option",10),s(31),d(32,"transloco"),r(),E(33,Fo,2,2,"mat-option",10,N),r(),a(35,"mat-error"),s(36),d(37,"transloco"),r()()()}if(t&2){let e=u();o(3),m(c(4,16,"common.Role")),o(2),q("ngModel",e.selectedRole),o(2),m(c(8,18,"common.Select")),o(2),B(e.roles),o(2),x(e.complianceWarning?11:-1),o(3),m(c(15,20,"common.Vendors")),o(2),f("disabled",(e.selectedRole==null||e.selectedRole.filters==null?null:e.selectedRole.filters.vendorMode)!==e.PermissionMode.Inherited||!e.roleCollectsVendorSchools&&(e.entity==null||e.entity.filters==null||e.entity.filters.schoolIds==null?null:e.entity.filters.schoolIds.length)>0||e.userIsSchool),q("ngModel",e.entity.filters.vendorIds),o(),f("value",-1),o(),m(c(19,22,"common.All")),o(2),B(e.vendors),o(3),m(c(24,24,"roles.VendorRequired")),o(4),m(c(28,26,"common.Schools")),o(2),f("disabled",(e.selectedRole==null||e.selectedRole.filters==null?null:e.selectedRole.filters.schoolMode)!==e.PermissionMode.Inherited||(e.roleCollectsVendorSchools?!((e.entity==null||e.entity.filters==null||e.entity.filters.vendorIds==null?null:e.entity.filters.vendorIds.length)>0):(e.entity==null||e.entity.filters==null||e.entity.filters.vendorIds==null?null:e.entity.filters.vendorIds.length)>0||e.userIsVendor)),q("ngModel",e.entity.filters.schoolIds),o(),f("value",-1),o(),m(c(32,28,"common.All")),o(2),B(e.schools),o(3),m(c(37,30,"roles.SchoolRequired"))}}var jt=(()=>{class t extends yt{get dialogSize(){return{w:"600px"}}constructor(){super(),this.roleService=S(se),this.vendorService=S(ke),this.schoolService=S(Fe),this.translocoService=S(ai),this.data=S(mt),this.userRoles=this.data.userRoles,this.isEdit=!!this.data.editRole,this.PermissionMode=M,this.complianceWarning=null,this.userIsVendor=!1,this.userIsSchool=!1,this.roleCollectsVendorSchools=!1,this.roleForm=new st({selectedRole:new Nt(null,{validators:[U.required]}),companyIds:new Nt(null,{validators:[U.required]})}),this.previousRoleVendorIds=[],this.previousRoleSchoolIds=[],this.appliedRoleId=null,this.allVendors=[],this.allSchools=[],this.userRolePermissions=new Map,this.entity=new kt,this.entity.filters=new de,this.data.editRole&&(Object.assign(this.entity,this.data.editRole),this.entity.filters=Object.assign(new de,this.data.editRole.filters,{vendorIds:[...this.data.editRole.filters?.vendorIds??[]],schoolIds:[...this.data.editRole.filters?.schoolIds??[]]}),this.previousRoleVendorIds=[...this.entity.filters.vendorIds],this.previousRoleSchoolIds=[...this.entity.filters.schoolIds],this.appliedRoleId=this.data.editRole.roleId)}ngOnInit(){let e=[...new Set(this.userRoles.map(i=>i.roleId))];Ft({vendors:this.vendorService.listAll(),schools:this.schoolService.listAll(),roles:this.roleService.list(),userFullRoles:e.length>0?Ft(e.map(i=>this.roleService.get(i))):it([])}).subscribe(({vendors:i,schools:n,roles:p,userFullRoles:h})=>{this.allVendors=i,this.vendors=i,this.allSchools=n,this.schools=n,this.roles=p.list.filter(y=>this.userRoles.every(F=>F.roleId!==y.id)),h.forEach(y=>this.userRolePermissions.set(y.id,y.permissions||[])),this.userIsVendor=this.getUserScopeIds(k.VendorDashboard,"vend
1orIds","vendorMode")!==null,this.userIsSchool=this.getUserScopeIds(k.SchoolDashboard,"schoolIds","schoolMode")!==null,this.data.editRole&&(this.selectedRole=this.roles.find(y=>y.id===this.data.editRole.roleId),this.onRoleSelected())})}save(){this.entity.roleId=this.selectedRole.id,this.entity.name=this.selectedRole.name,this.entity.name_fr=this.selectedRole.name_fr,this.close(this.entity)}onRoleSelected(){this.complianceWarning=null,this.roleCollectsVendorSchools=!1,this.vendors=this.allVendors,this.schools=this.allSchools,(this.selectedRole?.id??null)!==this.appliedRoleId&&(this.entity.filters=new de,this.previousRoleVendorIds=[],this.previousRoleSchoolIds=[]),this.appliedRoleId=this.selectedRole?.id??null,this.selectedRole&&(this.selectedRole.permissions?(this.applyDashboardGuards(),this.applyWorkflowGuards()):this.roleService.get(this.selectedRole.id).subscribe(e=>{this.selectedRole.permissions=e.permissions,this.applyDashboardGuards(),this.applyWorkflowGuards()}))}applyDashboardGuards(){let e=this.selectedRole.permissions?.some(n=>n.permissionId===k.VendorDashboard),i=this.selectedRole.permissions?.some(n=>n.permissionId===k.SchoolDashboard);this.roleCollectsVendorSchools=e&&!i,this.roleCollectsVendorSchools&&this.filterSchoolsToSelectedVendors(),e&&this.userIsSchool?this.complianceWarning=this.translocoService.translate("roles.DashboardConflictHasSchool"):i&&this.userIsVendor&&(this.complianceWarning=this.translocoService.translate("roles.DashboardConflictHasVendor"))}applyWorkflowGuards(){let e=this.selectedRole.permissions?.some(F=>F.permissionId===k.WorkflowAdmin),i=this.selectedRole.permissions?.some(F=>F.permissionId===k.QcVerify),n=this.selectedRole.permissions?.some(F=>[k.WorkflowBasic,k.WorkflowSelected].includes(F.permissionId));if(!e&&!i&&!n)return;if(e){this.entity.filters.vendorIds=[-1],this.entity.filters.vendorMode=M.All,this.entity.filters.schoolIds=[-1],this.entity.filters.schoolMode=M.All;return}let p,h,y;if(i?(p=this.getUserScopeIds(k.WorkflowBasic,"vendorIds","vendorMode"),h=this.getUserScopeIds(k.WorkflowBasic,"schoolIds","schoolMode"),y=this.translocoService.translate("roles.RequiresQaBasic")):(p=this.getUserScopeIds(k.VendorDashboard,"vendorIds","vendorMode"),h=this.getUserScopeIds(k.SchoolDashboard,"schoolIds","schoolMode"),y=this.translocoService.translate("roles.RequiresDashboardForQa")),p===null&&h===null){this.complianceWarning=y;return}p!==null&&p.length>0&&(this.vendors=this.allVendors.filter(F=>p.includes(F.id))),h!==null&&h.length>0&&(this.schools=this.allSchools.filter(F=>h.includes(F.id)))}vendorChanged(){if(this.previousRoleVendorIds.includes(-1)&&this.entity.filters.vendorIds.includes(-1)?this.entity.filters.vendorIds=this.entity.filters.vendorIds.filter(e=>e!==-1):this.entity.filters.vendorIds.includes(-1)&&(this.entity.filters.vendorIds=[-1],this.entity.filters.vendorMode=M.All),this.previousRoleVendorIds=[...this.entity.filters.vendorIds],this.entity.filters.vendorIds===void 0||this.entity.filters.vendorIds.length===0?this.entity.filters.vendorMode=M.All:this.entity.filters.vendorIds.length===1&&this.entity.filters.vendorIds[0]===-1?this.entity.filters.vendorMode=M.All:this.entity.filters.vendorMode=M.Selected,this.roleCollectsVendorSchools){this.filterSchoolsToSelectedVendors();return}this.entity.filters.vendorIds?.length>0&&(this.entity.filters.schoolIds=[],this.entity.filters.schoolMode=M.Inherited,this.previousRoleSchoolIds=[])}schoolChanged(){this.previousRoleSchoolIds.includes(-1)&&this.entity.filters.schoolIds.includes(-1)?this.entity.filters.schoolIds=this.entity.filters.schoolIds.filter(e=>e!==-1):this.entity.filters.schoolIds.includes(-1)&&(this.entity.filters.schoolIds=[-1],this.entity.filters.schoolMode=M.All),this.previousRoleSchoolIds=[...this.entity.filters.schoolIds],this.updateSchoolMode(),!this.roleCollectsVendorSchools&&this.entity.filters.schoolIds?.length>0&&(this.entity.filters.vendorIds=[],this.entity.filters.vendorMode=M.Inherited,this.previousRoleVendorIds=[])}updateSchoolMode(){let e=this.entity.filters.schoolIds;!e||e.length===0?this.entity.filters.schoolMode=M.All:e.length===1&&e[0]===-1?this.entity.filters.schoolMode=M.All:this.entity.filters.schoolMode=M.Selected}filterSchoolsToSelectedVendors(){let e=this.entity.filters.vendorIds??[];this.schools=e.includes(-1)?this.allSchools:this.allSchools.filter(n=>e.includes(n.vendorId));let i=new Set(this.schools.map(n=>n.id));this.entity.filters.schoolIds=(this.entity.filters.schoolIds??[]).filter(n=>n===-1||i.has(n)),this.previousRoleSchoolIds=[...this.entity.filters.schoolIds],this.updateSchoolMode()}getUserScopeIds(e,i,n){let p=this.userRoles.filter(y=>this.userRolePermissions.get(y.roleId)?.some(Bi=>Bi.permissionId===e));if(p.length===0)return null;if(p.some(y=>y.filters?.[n]===M.All))return[];let h=p.flatMap(y=>y.filters?.[i]||[]).filter(y=>y>0);return h.length>0?[...new Set(h)]:[]}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=P({type:t,selectors:[["path-add-role-modal"]],features:[L],decls:15,vars:11,consts:[["roleForm","ngForm"],["mat-dialog-title",""],[1,"form__container","form__container--sidebar"],[1,"form"],[1,"form--regular"],["align","end"],["matButton","outlined","mat-dialog-close",""],["matButton","","color","confirm",3,"click","disabled"],[1,"form__row"],["name","selectedRole","required","",3,"ngModelChange","ngModel"],[3,"value"],[1,"form__row","form__warning","add-role-modal__warning"],["multiple","","name","vendorIds","required","",3,"ngModelChange","selectionChange","disabled","ngModel"],["multiple","","name","schoolIds","required","",3,"ngModelChange","selectionChange","disabled","ngModel"]],template:function(i,n){if(i&1&&(a(0,"h2",1),s(1),d(2,"transloco"),r(),a(3,"mat-dialog-content")(4,"div",2)(5,"form",3,0),v(7,Po,38,32,"div",4),r()()(),a(8,"mat-dialog-actions",5)(9,"button",6),s(10),d(11,"transloco"),r(),a(12,"button",7),g("click",function(){return n.save()}),s(13),d(14,"transloco"),r()()),i&2){let p=Kt(6);o(),m(c(2,5,n.isEdit?"user.EditRole":"user.AddRole")),o(6),x(n.entity?7:-1),o(3),m(c(11,7,"common.Cancel")),o(2),f("disabled",!p.valid||n.complianceWarning),o(),m(c(14,9,n.isEdit?"common.Save":"common.Add"))}},dependencies:[$,H,Ue,Ee,Be,Ve,dt,we,G,X,K,Z,ee,z,pt,ut,ht,ft,Ct,te,pe,ce,Q,ie,j,me,oe,ne,ue,re,J,ae,Y,le],styles:[".add-role-modal__warning[_ngcontent-%COMP%]{color:var(--alert-900);padding:8px 0}"]})}}return t})();var tt=(t,l)=>l.id;function Lo(t,l){if(t&1&&(a(0,"h2"),s(1),d(2,"userName"),d(3,"async"),d(4,"transloco"),r()),t&2){let e=u(2);o(),rt("",c(3,4,c(2,2,e.entity))," - ",c(4,6,"common.Details"))}}function No(t,l){t&1&&(a(0,"h2"),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"user.AddUser")))}function qo(t,l){t&1&&(s(0),d(1,"transloco")),t&2&&V(" ",c(1,1,"common.FirstNameRequired")," ")}function Oo(t,l){t&1&&(s(0),d(1,"transloco")),t&2&&V(" ",c(1,1,"common.LastNameRequired")," ")}function Wo(t,l){if(t&1&&(a(0,"mat-option",7),s(1),d(2,"transloco"),r()),t&2){let e=l.$implicit;f("value",e.id),o(),m(c(2,2,"UserLanguage."+e.name))}}function $o(t,l){t&1&&(s(0),d(1,"transloco")),t&2&&V(" ",c(1,1,"user.EmailAddressInUse")," ")}function Ho(t,l){t&1&&(s(0),d(1,"transloco")),t&2&&V(" ",c(1,1,"userProfile.InvalidPhoneNumber")," ")}function Go(t,l){if(t&1){let e=w();a(0,"div",13)(1,"mat-checkbox",33),g("change",function(n){_(e);let p=u(2);return C(n?p.ssoToggle(n):null)}),s(2),d(3,"transloco"),r()()}t&2&&(o(2),m(c(3,1,"user.SSOEnabled")))}function jo(t,l){t&1&&(a(0,"mat-form-field")(1,"mat-label"),s(2),d(3,"transloco"),r(),b(4,"input",34),r()),t&2&&(o(2),m(c(3,1,"user.Password")))}function zo(t,l){t&1&&(a(0,"mat-form-field")(1,"mat-label"),s(2),d(3,"transloco"),r(),b(4,"input",35),r()),t&2&&(o(2),m(c(3,1,"user.OpenId")))}function Qo(t,l){if(t&1&&(a(0,"mat-option",7),s(1),d(2,"transloco"),r()),t&2){let e=l.$implicit;f("value",e.id),o(),m(c(2,2,"UserTypeId."+e.name))}}function Yo(t,l){t&1&&(a(0,"div",9)(1,"mat-checkbox",36),s(2),d(3,"transloco"),r()()),t&2&&(o(2),m(c(3,1,"user.ActiveUser")))}function Jo(t,l){t&1&&(a(0,"div",9)(1,"mat-checkbox",37),s(2,"Super Admin"),r()())}function Ko(t,l){if(t&1){let e=w();a(0,"button",44),g("click",function(){_(e);let n=u(3);return C(n.removeUserTwoFactor())}),s(1),d(2,"transloco"),r()}if(t&2){let e=u(3);f("disabled",e.securityBusy),o(),m(c(2,2,"accountSecurity.Remove"))}}function Xo(t,l){if(t&1){let e=w();a(0,"button",41),g("click",function(){_(e);let n=u(3);return C(n.setupUserTwoFactor())}),s(1),d(2,"transloco"),r()}if(t&2){let e=u(3);f("disabled",e.securityBusy),o(),m(c(2,2,"accountSecurity.SetUp"))}}function Zo(t,l){if(t&1){let e=w();a(0,"mat-card",16)(1,"h3",38),s(2),d(3,"transloco"),r(),a(4,"div",39)(5,"span",40),s(6),d(7,"transloco"),r(),a(8,"button",41),g("click",function(){_(e);let n=u(2);return C(n.resetUserPassword())}),s(9),d(10,"transloco"),r()(),a(11,"div",39)(12,"span",40),s(13),d(14,"transloco"),r(),v(15,Ko,3,4,"button",42)(16,Xo,3,4,"button",43),r()()}if(t&2){let e=u(2);o(2),m(c(3,6,"accountSecurity.Title")),o(4),m(c(7,8,"accountSecurity.PasswordTitle")),o(2),f("disabled",e.securityBusy),o(),m(c(10,10,"accountSecurity.ResetPassword")),o(4),m(c(14,12,"accountSecurity.TwoFactorTitle")),o(2),x(e.userTwoFactorEnabled?15:16)}}function en(t,l){if(t&1){let e=w();a(0,"button",45),g("click",function(){_(e);let n=u(2);return C(n.addRole())}),s(1),d(2,"transloco"),r()}if(t&2){let e=u(2);f("hidden",e.isAnonymizedUser),o(),m(c(2,2,"user.AddRole"))}}function tn(t,l){t&1&&(a(0,"th",46),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Role")))}function on(t,l){if(t&1&&(a(0,"td",47),s(1),d(2,"getLangText"),r()),t&2){let e=l.$implicit;o(),m(A(2,1,e,"name"))}}function nn(t,l){t&1&&(a(0,"th",46),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Schools")))}function rn(t,l){if(t&1&&(a(0,"tr")(1,"td"),s(2),r()()),t&2){let e=l.$implicit,i=u(3);o(2),m(i.getSchool(e))}}function an(t,l){if(t&1&&(a(0,"td",47)(1,"table"),E(2,rn,3,1,"tr",null,N),r()()),t&2){let e=l.$implicit;o(2),B(e.filters==null?null:e.filters.schoolIds)}}function ln(t,l){t&1&&(a(0,"th",46),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Vendors")))}function sn(t,l){if(t&1&&(a(0,"tr")(1,"td"),s(2),r()()),t&2){let e=l.$implicit,i=u(3);o(2),m(i.getVendor(e))}}function dn(t,l){if(t&1&&(a(0,"td",47)(1,"table"),E(2,sn,3,1,"tr",null,N),r()()),t&2){let e=l.$implicit;o(2),B(e.filters==null?null:e.filters.vendorIds)}}function mn(t,l){t&1&&(a(0,"th",46),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.Actions")))}function cn(t,l){if(t&1){let e=w();a(0,"button",48),g("click",function(){_(e);let n=u().$implicit,p=u(2);return C(p.editRole(n))}),a(1,"mat-icon",49),s(2,"edit"),r(),a(3,"span",50),s(4),d(5,"transloco"),r()(),a(6,"button",51),g("click",function(){_(e);let n=u().$implicit,p=u(2);return C(p.removeItem(n))}),a(7,"mat-icon",52),s(8,"delete"),r(),a(9,"span",50),s(10),d(11,"transloco"),r()()}t&2&&(o(4),m(c(5,2,"common.Edit")),o(6),m(c(11,4,"common.Delete")))}function pn(t,l){if(t&1&&(a(0,"td",47),v(1,cn,12,6),r()),t&2){let e=u(2);o(),x(e.isAnonymizedUser?-1:1)}}function un(t,l){t&1&&b(0,"tr",53)}function fn(t,l){t&1&&b(0,"tr",54)}
1function hn(t,l){if(t&1&&(a(0,"th",60),s(1),r()),t&2){let e=l.$implicit;o(),m(e.name)}}function _n(t,l){if(t&1){let e=w();a(0,"td",63)(1,"mat-checkbox",64),g("click",function(n){return n.stopPropagation()})("change",function(n){let p=_(e).$implicit,h=u().$implicit,y=u(3);return C(n?y.selectedGroups[p.id].toggle(h.id):null)}),r()()}if(t&2){let e=l.$implicit,i=u().$implicit,n=u(3);o(),f("checked",n.selectedGroups[e.id].isSelected(i.id))}}function Cn(t,l){if(t&1&&(a(0,"tr",61)(1,"td",62),s(2),r(),a(3,"td",62),s(4),r(),E(5,_n,2,1,"td",63,tt),r()),t&2){let e=l.$implicit,i=u(3);o(2),m(e.name),o(2),m(e.description),o(),B(i.companies)}}function vn(t,l){if(t&1&&(a(0,"h3",55),s(1,"Groups"),r(),a(2,"div",56)(3,"table",57)(4,"thead")(5,"tr",58)(6,"th",59),s(7,"Name"),r(),a(8,"th",60),s(9,"description"),r(),E(10,hn,2,1,"th",60,tt),r()(),a(12,"tbody"),E(13,Cn,7,2,"tr",61,tt),r()()()),t&2){let e=u(2);o(10),B(e.companies),o(3),B(e.groups)}}function xn(t,l){if(t&1&&b(0,"path-audit-info",27),t&2){let e=u(2);f("entity",e.entity)}}function Sn(t,l){if(t&1){let e=w();a(0,"button",67),g("click",function(){_(e);let n=u(4);return C(n.redactUser())}),a(1,"mat-icon"),s(2,"person_off"),r(),s(3),d(4,"transloco"),r()}t&2&&(o(3),V("",c(4,1,"user.RedactUser")," "))}function gn(t,l){if(t&1&&(T(0),v(1,Sn,5,3,"button",66),R()),t&2){let e=u(3);o(),x(e.entity.id&&!e.entity.redacted?1:-1)}}function yn(t,l){t&1&&I(0,gn,2,1,"ng-container",65),t&2&&f("pathPermission","SystemAdmin")}function In(t,l){if(t&1){let e=w();a(0,"button",69),g("click",function(){_(e);let n=u(3);return C(n.openViewAs())}),a(1,"mat-icon"),s(2,"visibility"),r(),s(3),d(4,"transloco"),r()}t&2&&(o(3),V("",c(4,1,"user.ViewAsParent")," "))}function Mn(t,l){t&1&&I(0,In,5,3,"button",68),t&2&&f("pathPermission","SchoolFoodAdmin")}function bn(t,l){if(t&1){let e=w();a(0,"button",70),g("click",function(){_(e);let n=u(2);return C(n.saveUser())}),s(1),d(2,"transloco"),r()}t&2&&(o(),m(c(2,1,"common.Save")))}function wn(t,l){t&1&&(a(0,"span",32),s(1),d(2,"transloco"),r()),t&2&&(o(),m(c(2,1,"common.UnsavedChanges")))}function Tn(t,l){if(t&1){let e=w();v(0,Lo,5,8,"h2")(1,No,3,3,"h2"),a(2,"div",1)(3,"form",2)(4,"div",3)(5,"mat-form-field")(6,"mat-label"),s(7),d(8,"transloco"),r(),b(9,"input",4),a(10,"mat-error"),v(11,qo,2,3),r()(),a(12,"mat-form-field")(13,"mat-label"),s(14),d(15,"transloco"),r(),b(16,"input",5),a(17,"mat-error"),v(18,Oo,2,3),r()(),a(19,"mat-form-field")(20,"mat-label"),s(21),d(22,"transloco"),r(),a(23,"mat-select",6),E(24,Wo,3,4,"mat-option",7,tt),d(26,"async"),r()(),a(27,"mat-form-field")(28,"mat-label"),s(29),d(30,"transloco"),r(),b(31,"input",8),a(32,"mat-error"),v(33,$o,2,3),r()(),a(34,"div",9)(35,"mat-checkbox",10),s(36),d(37,"transloco"),r()(),a(38,"mat-form-field")(39,"mat-label"),s(40),d(41,"transloco"),r(),b(42,"input",11),a(43,"mat-error"),v(44,Ho,2,3),r()(),a(45,"div",9)(46,"mat-checkbox",12),s(47),d(48,"transloco"),r()(),v(49,Go,4,3,"div",13),v(50,jo,5,3,"mat-form-field"),v(51,zo,5,3,"mat-form-field"),a(52,"mat-form-field")(53,"mat-label"),s(54),d(55,"transloco"),r(),a(56,"mat-select",14),E(57,Qo,3,4,"mat-option",7,tt),d(59,"async"),r()(),I(60,Yo,4,3,"div",15),v(61,Jo,3,0,"div",9),r()(),v(62,Zo,17,14,"mat-card",16),r(),I(63,en,3,4,"button",17),a(64,"table",18),T(65,19),I(66,tn,3,3,"th",20)(67,on,3,4,"td",21),R(),T(68,22),I(69,nn,3,3,"th",20)(70,an,4,0,"td",21),R(),T(71,23),I(72,ln,3,3,"th",20)(73,dn,4,0,"td",21),R(),T(74,24),I(75,mn,3,3,"th",20)(76,pn,2,1,"td",21),R(),I(77,un,1,0,"tr",25)(78,fn,1,0,"tr",26),r(),v(79,vn,15,0),v(80,xn,1,1,"path-audit-info",27),a(81,"div",28),v(82,yn,1,1,"ng-container"),v(83,Mn,1,1,"button",29),a(84,"button",30),g("click",function(){_(e);let n=u();return C(n.goBack())}),s(85),d(86,"transloco"),r(),v(87,bn,3,3,"button",31),v(88,wn,3,3,"span",32),r()}if(t&2){let e=u();x(e.entity.firstName?0:1),o(3),f("formGroup",e.form),o(4),m(c(8,31,"common.FirstName")),o(4),x(e.form.controls.firstName.hasError("required")?11:-1),o(3),m(c(15,33,"common.LastName")),o(4),x(e.form.controls.lastName.hasError("required")?18:-1),o(3),m(c(22,35,"common.Language")),o(3),B(c(26,37,e.userLanguages$)),o(5),m(c(30,39,"common.Email")),o(4),x(e.form.controls.email.hasError("exists")?33:-1),o(3),m(c(37,41,"user.EmailNotifications")),o(4),m(c(41,43,"common.Phone")),o(4),x(e.form.controls.phone.hasError("minlength")||e.form.controls.phone.hasError("maxlength")?44:-1),o(3),m(c(48,45,"user.TextNotifications")),o(2),x(e.ssoEnabled?49:-1),o(),x(!e.entity.id&&!e.form.controls.sso.value?50:-1),o(),x(e.form.controls.sso.value?51:-1),o(3),m(c(55,47,"common.Type")),o(3),B(c(59,49,e.userTypes$)),o(3),f("pathPermission","SchoolFoodAdmin"),o(),x(e.isSuperAdmin?61:-1),o(),x(e.showAccountSecurity?62:-1),o(),f("pathPermission","RoleEditor"),o(),f("dataSource",e.entity.roles),o(13),f("matHeaderRowDef",e.getDisplayedUserRoleColumns()),o(),f("matRowDefColumns",e.getDisplayedUserRoleColumns()),o(),x(e.groups&&e.groups.length>0?79:-1),o(),x(e.entity.id?80:-1),o(2),x(e.isAnonymizedUser?-1:82),o(),x(e.entity.id&&!(e.entity.roles!=null&&e.entity.roles.length)&&!e.isAnonymizedUser?83:-1),o(2),m(c(86,51,"common.GoBack")),o(2),x(e.isAnonymizedUser?-1:87),o(),x(e.hasChanges()?88:-1)}}function Rn(t,l){t&1&&b(0,"mat-progress-bar",0)}var zt=(()=>{class t extends It{constructor(){super(),this.entityService=S(St),this.listService=S(xt),this.router=S(ri),this.configurationService=S(Mt),this.vendorService=S(ke),this.roleService=S(se),this.schoolService=S(Fe),this.accountSecurityService=S(_i),this.featureService=S(gt),this.dialog=S(ct),this.userTwoFactorEnabled=!1,this.securityBusy=!1,this.currentUserCompanies=[],this.isSuperAdmin=!1,this.selectedGroups=[],this.form=new st({firstName:new D({value:"",disabled:qt.client!=="pei"},{validators:[U.required,U.maxLength(50)]}),lastName:new D({value:"",disabled:qt.client!=="pei"},{validators:[U.required,U.maxLength(50)]}),email:new D({value:"",disabled:!0},{validators:[this.emailExistsValidator(),U.email,U.maxLength(50)]}
1),emailNotifications:new D(!1),phone:new D(null,{validators:[U.minLength(10),U.maxLength(10),U.pattern("^[0-9]*$")]}),textNotifications:new D(!1),userTypeId:new D(2,{validators:[U.required]}),defaultLanguageId:new D(1,{validators:[U.required]}),password:new D,active:new D(!0),sso:new D(!1),openId:new D({value:"",disabled:!0}),superAdmin:new D(!1)})}ngOnInit(){this.route.params.pipe(Pt(),be(this.destroyed$)).subscribe(()=>{this.refreshEntity()}),this.configurationService.ssoEnabled().subscribe(e=>this.ssoEnabled=e),this.userTypes$=this.entityService.getSelectableUserTypes(),this.userLanguages$=this.listService.getUserLanguages(),this.isSuperAdmin=this.entityService.getloggedinUser().superAdmin,this.vendorService.listAll().subscribe(e=>this.vendors=e),this.roleService.list().subscribe(e=>this.roles=e.list),this.schoolService.list().subscribe(e=>this.schools=e.list),this.setInitialFormState()}saveUser(){super.save(!1).subscribe()}openViewAs(){window.open("/view-as/"+this.entity.id,"_blank")}addRole(){this.entity.roles||(this.entity.roles=[]);let e={userRoles:this.entity.roles};this.dialog.open(jt,{data:e,autoFocus:!1}).afterClosed().subscribe(i=>{i&&(this.entity.roles||(this.entity.roles=[]),this.hasUnsavedFormChanges=!0,this.entity.roles=this.entity.roles.concat([i]))})}editRole(e){let i={userRoles:this.entity.roles.filter(n=>n!==e),editRole:e};this.dialog.open(jt,{data:i,autoFocus:!1}).afterClosed().subscribe(n=>{n&&(this.hasUnsavedFormChanges=!0,this.entity.roles=this.entity.roles.map(p=>p===e?n:p))})}hasUnsavedChanges(){return this.hasChanges()?this.confirmModalService.openYesNo(this.translocoService.translate("common.UnsavedChanges"),this.translocoService.translate("common.UnsavedChangesWarning")).pipe(Qt(e=>!e)):it(!1)}hasChanges(){return this.hasChangeDetection&&this.hasUnsavedFormChanges}removeItem(e){this.hasUnsavedFormChanges=!0,this.entity.roles=this.entity.roles.filter(i=>i!==e)}getDisplayedUserRoleColumns(){let e=["role","schools","vendors"];return this.permissionService.hasPermission("RoleEditor")&&e.push("actions"),e}ssoToggle(e){!this.entity.id&&!e.checked?(this.form.controls.password.setValidators([U.required,U.maxLength(255)]),this.form.controls.openId.setValidators([])):(this.form.controls.password.setValidators([]),this.form.controls.openId.setValidators([U.required,U.maxLength(255)])),this.form.controls.password.updateValueAndValidity(),this.form.controls.openId.updateV
1alueAndValidity()}getRole(e){return this.roles?this.roles.find(i=>i.id===e):null}getSchool(e){return e===-1?this.translocoService.translate("common.All"):this.schools?.find(i=>i.id===e)?.name??""}getVendor(e){return e===-1?this.translocoService.translate("common.All"):this.vendors?.find(i=>i.id===e)?.name??""}redactUser(){this.entityService.hasUndeliveredOrders(this.entity.id).subscribe(e=>{let i=e?this.translocoService.translate("common.CannotBeUndone")+`
2
3`+this.translocoService.translate("user.RedactUserUndeliveredWarning"):"common.CannotBeUndone";this.confirmModalService.openConfirm("user.RedactUserTitle","user.RedactUserMessage","user.RedactUserConfirm","common.Cancel",i).subscribe(()=>{this.entityService.redactUser(this.entity.id).subscribe(n=>{this.snackBarService.open(this.translocoService.translate("user.RedactUserSuccess"),this.translocoService.translate("common.Close"),-1),this.router.navigate(["/food/admin/redaction-logs",n])})})})}get isAnonymizedUser(){return this.entity?.userTypeId===Wt.Anonymized}get showAccountSecurity(){return this.featureService.hasFeature("schoolFood.accountSecurity")&&!!this.entity?.id&&!!this.entity?.sso&&!this.isAnonymizedUser}resetUserPassword(){this.securityBusy=!0,this.accountSecurityService.sendUserPasswordReset(this.entity.id).subscribe({next:()=>{this.securityBusy=!1,this.openSecurityDialog("accountSecurity.AdminResetSent")},error:()=>this.securityBusy=!1})}setupUserTwoFactor(){this.securityBusy=!0,this.accountSecurityService.setupUserTwoFactor(this.entity.id).subscribe({next:()=>{this.securityBusy=!1,this.openSecurityDialog("accountSecurity.AdminSetupSent")},error:()=>this.securityBusy=!1})}removeUserTwoFactor(){this.securityBusy=!0,this.accountSecurityService.removeUserTwoFactor(this.entity.id).subscribe({next:()=>{this.securityBusy=!1,this.userTwoFactorEnabled=!1,this.snackBarService.open(this.translocoService.translate("accountSecurity.TwoFactorRemoved"),null,6e3)},error:()=>this.securityBusy=!1})}openSecurityDialog(e){this.dialog.open(hi,{data:{messageKey:e,email:this.entity.email}})}loadUserSecurityStatus(){this.showAccountSecurity&&this.accountSecurityService.getUserStatus(this.entity.id).subscribe({next:e=>this.userTwoFactorEnabled=e.twoFactorEnabled})}beforeSave(){return this.form.markAllAsTouched(),Object.assign(this.entity,this.form.value),this.entity.claims=[],this.entity.groups=[],this.entity.sso?this.entity.password=null:this.entity.openId=null,this.form.valid||this.logFormValidationErrors(),this.form.valid}refreshEntity(){this.getEntity().subscribe(e=>{if(this.updateRoles(),this.form.patchValue(e),this.loadUserSecurityStatus(),e.userTypeId===Wt.Anonymized){this.form.disable();return}this.form.controls.email&&this.form.controls.email.valueChanges.pipe(Yt(100),Pt(),be(this.destroyed$)).subscribe(i=>{this.checkExistingEmail(i)}),e.id||this.form.controls.sso.setValue("true")})}updateRoles(){let e=new Dt;e.ids=this.entity.roles?.map(i=>i.roleId),this.roleService.filteredList(e).subscribe(i=>this.roles=i.list),this.hasUnsavedFormChanges=!0}checkExistingEmail(e){if(e){let i=new pi;i.email=e,this.entityService.filteredList(i).subscribe(n=>{if(n.totalCount>0){this.emailExists=!0;let p=n.list.filter(h=>h.companyIds.length===0||this.currentUserCompanies.some(y=>h.companyIds.includes(y.id)));p.length===1?p[0].id!==this.entity?.id?this.confirmModalService.openYesNo("Email Exists","A user with that email exists. Would you like to edit that user?").subscribe(h=>{h&&this.router.navigateByUrl("/users/"+p[0].id,{skipLocationChange:!0})}):this.emailExists=!1:this.snackBarService.open("A user with that email already exists that you do not have access to.")}else this.emailExists=!1;this.form.controls.email.updateValueAndValidity()})}else this.emailExists=!1,this.form.controls.email.updateValueAndValidity()}emailExistsValidator(){return e=>this.emailExists?{exists:!0}:null}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=P({type:t,selectors:[["path-user"]],features:[L],decls:2,vars:2,consts:[["mode","indeterminate",1,"loading-bar"],[1,"user-detail__top"],[1,"form",3,"formGroup"],[1,"form__narrow-wrapper"],["matInput","","formControlName","firstName","name","firstName","data-lpignore","true","required",""],["matInput","","formControlName","lastName","name","lastName","data-lpignore","true","required",""],["formControlName","defaultLanguageId"],[3,"value"],["matInput","","formControlName","email","name","email","data-lpignore","true"],[1,"form__row","field-input-c
3heckbox"],["matInput","","formControlName","emailNotifications"],["matInput","","formControlName","phone","name","phone"],["matInput","","formControlName","textNotifications"],[1,"field-input-checkbox"],["formControlName","userTypeId"],["class","form__row field-input-checkbox",4,"pathPermission"],[1,"user-security"],["matButton","","class","mb-2",3,"hidden","click",4,"pathPermission"],["mat-table","",1,"mb-3",3,"dataSource"],["matColumnDef","role"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","schools"],["matColumnDef","vendors"],["matColumnDef","actions","stickyEnd",""],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[3,"entity"],[1,"button-container"],["matButton",""],["matButton","outlined",3,"click"],["matButton","","color","confirm"],[1,"has-changes"],["matInput","","formControlName","sso",3,"change"],["matInput","","formControlName","password","name","password","type","password","data-lpignore","true","required",""],["matInput","","formControlName","openId","name","openId","data-lpignore","true","required",""],["matInput","","formControlName","active"],["matInput","","formControlName","superAdmin"],[1,"user-security__title"],[1,"user-security__row"],[1,"user-security__label"],["matButton","outlined",3,"click","disabled"],["matButton","outlined","color","warn",3,"disabled"],["matButton","outlined",3,"disabled"],["matButton","outlined","color","warn",3,"click","disabled"],["matButton","",1,"mb-2",3,"click","hidden"],["mat-header-cell",""],["mat-cell",""],["matButton","text",3,"click"],["aria-label","Edit Icon"],[1,"button-text"],["matButton","text","color","warn",3,"click"],["aria-label","Delete Icon"],["mat-header-row",""],["mat-row",""],[1,"mt-2","mb-0"],[1,"table-container","mb-2","w-auto"],["role","grid",1,"table","mat-table"],["role","row",1,"mat-header-row"],["align","left","role","columnheader",1,"mat-header-cell"],[1,"mat-header-cell"],["role","row",1,"mat-row"],[1,"mat-cell"],["align","center","role","gridcell",1,"mat-cell"],[3,"click","change","checked"],[4,"pathPermission"],["matButton","","color","warn",1,"warn-filled"],["matButton","","color","warn",1,"warn-filled",3,"click"],["matButton","",3,"click",4,"pathPermission"],["matButton","",3,"click"],["matButton","","color","confirm",3,"click"]],template:function(i,n){i&1&&(v(0,Tn,89,53),v(1,Rn,1,0,"mat-progress-bar",0)),i&2&&(x(n.entity?0:-1),o(),x(n.entity?-1:1))},dependencies:[$,H,Ue,lt,Ee,Be,Ve,G,ni,oi,X,K,Z,si,ee,De,z,Ct,te,pe,ce,Q,Ae,ie,vt,j,me,oe,mi,ne,ue,re,J,ae,ui,Me,fe,_e,Se,Ce,he,ge,ve,xe,ye,Ie,Pe,vi,ti,Y,le,Ii],styles:[".user-detail__top[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 40px}.user-detail__top[_ngcontent-%COMP%] > .form[_ngcontent-%COMP%]{flex:0 1 24rem}.user-security[_ngcontent-%COMP%]{flex:1 1 320px;max-width:480px;padding:16px 20px}.user-security__title[_ngcontent-%COMP%]{margin-bottom:8px}.user-security__row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--neutral-200)}.user-security__label[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}"]})}}return t})();var $a=[{path:"roles",component:wi,canActivate:[Te],data:{listRoute:!0,permission:"RoleEditor",companyLocked:!1}},{path:"rolesSimple/add",component:Gt,canActivate:[Te],data:{permission:"RoleEditor"}},{path:"rolesSimple/:id",component:Gt,canActivate:[Te],data:{permission:"RoleEditor"}},{path:"",component:Ei,canActivate:[Te],data:{listRoute:!0,permission:"Users",companyLocked:!1}},{path:"add",component:zt,canActivate:[Te],canDeactivate:[$t],data:{permission:"Users"}},{path:":id",component:zt,canActivate:[Te],canDeactivate:[$t],data:{permission:"Users"}}];export{$a as USERS_ROUTES};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.