1import{b as E,ba as ve,jb as Ce}from"./chunk-JQO2TWQ6.js";import{A as ae,C as le,I as ce,w as re,z as se}from"./chunk-FJGCPGIF.js";import{a as Se}from"./chunk-7ZMQM2WN.js";import{B as me,E as ue,R as fe,S as he,T as _e,g as de,v as pe}from"./chunk-6BME2YS5.js";import{$a as q,Ab as x,B as L,Bb as y,C as V,D as w,Fb as W,Hb as T,Jb as m,Lc as te,Nb as K,Ob as X,Pb as Y,R as D,Ra as o,Rc as ie,T as U,Ub as f,V as N,Vb as b,Wb as F,Z as G,_a as z,a as k,b as O,ba as I,db as J,ia as P,ja as h,lc as c,mb as S,mc as u,nc as Z,ob as v,qa as $,ra as j,t as p,ta as _,tb as l,ub as s,v as B,vb as a,vc as ee,wa as H,wb as C,wd as ne,x as g,xa as Q,xd as oe}from"./chunk-BUIIXSYE.js";var ye=new j("favorites-management.config"),Te="myFavorites",be="myNotes";var Fe={navigationPanelInfo:[{headerIconName:"folder-favorite",panelId:Te,panelTitle:"favorites.my_favorites",permissions:E.FAVORITES_PANEL},{headerIconName:"note-folder",panelId:be,panelTitle:"favorites.my_notes",permissions:E.FAVORITES_PANEL}]},De=(()=>{class n{static{this.\u0275fac=function(t){return new(t||n)}}static{this.\u0275mod=q({type:n})}static{this.\u0275inj=$({providers:[{provide:ye,useValue:Fe}]})}}return n})();var Ee=["searchInput"];function Ae(n,d){n&1&&C(0,"app-spinner")}function Me(n,d){if(n&1&&(s(0,"p",10),f(1),c(2,"transloco"),a()),n&2){let e=m(2);o(),F(" ",u(2,1,e.infoTextGroupHint)," ")}}function Re(n,d){if(n&1&&(s(0,"p",10),f(1),c(2,"transloco"),a()),n&2){let e=m(2);o(),b(u(2,1,e.infoText))}}function ke(n,d){if(n&1&&(s(0,"div",3)(1,"p",9),f(2),c(3,"transloco"),a(),S(4,Me,3,3,"p",10)(5,Re,3,3,"p",10),a()),n&2){let e=m();o(2),b(u(3,2,"common.hint")),o(2),v((e.shareInformation==null||e.shareInformation.userGroupRights==null?null:e.shareInformation.userGroupRights.length)>0&&(e.shareInformation==null||e.shareInformation.userRights==null?null:e.shareInformation.userRights.length)<1?4:5)}}function Oe(n,d){if(n&1){let e=W();x(0),s(1,"div",11)(2,"label",12),f(3),c(4,"truncate"),a(),s(5,"input",13),T("change",function(){let i=H(e).$implicit,r=m();return Q(r.onSelectUser(i.id))}),a()(),y()}if(n&2){let e=d.$implicit,t=d.index,i=m();o(2),l("for","user"+t)("title",i.buildLabelString(e)),o(),F(" ",Z(4,7,i.buildLabelString(e),55)),o(2),l("disabled",e.isReadOnly)("id","user"+t)("value",e.id)("checked",e.id===i.formSelectUser.controls.selectedUserId.value)}}var lt=(()=>{class n{constructor(){this._changeDetectorRef=_(ee),this._formBuilder=_(me),this.modalService=_(fe),this.isPending=!1,this._componentActive=!0,this._users=[],this._allUsers=[],this._subscriptions=[],this.saveButtonText="common.save",this.disableReadOnly=!1,this.loadShareInfoFn=()=>p({})}set searchInput(e){e&&!this._searchInput&&(this._searchInput=e,this._changeDetectorRef.detectChanges(),this.subscribeToSearchInput())}get searchInput(){return this._searchInput}init(){this.formSelectUser=this._formBuilder.group({selectedUserId:""}),this.isPending=!0,this.displayUsers$=this.loadUsersFn().pipe(g(e=>{let t=e.map(i=>O(k({},i),{isReadOnly:this.disableReadOnly?i.roles?.length===1&&i.roles[0]?.name==="ReadOnly":!1}));this._users=t,this._allUsers=Ce.clone(t);for(let i of t)if(!i.isReadOnly){this.onSelectUser(i.id);break}return t}),I()),this.shareInformation$=L(()=>this.getShareInfo()).pipe(h(e=>this.shareInformation=e)),V([this.shareInformation$.pipe(U(1)),this.displayUsers$.pipe(U(1))]).pipe(G(()=>{this.isPending=!1})).subscribe()}ngOnDestroy(){this._componentActive=!1,this._subscriptions.forEach(e=>e.unsubscribe())}onSelectUser(e){this._users.find(i=>i.id===e)?.isReadOnly||this.formSelectUser.controls.selectedUserId.setValue(e)}onReturnSelectedUser(){let e=this._users.find(t=>t.id===this.formSelectUser.controls.selectedUserId.value);this.onSelectUser(""),this.modalService.close({passedUser:e})}buildLabelString(e){return e?.forename&&e?.surname&&e?.username?`${e.surname}, ${e.forename} (${e.username})`:""}resetUnloadedSelectedUser(){this.formSelectUser.controls.selectedUserId.value!==""&&(this._users.some(e=>e.id===this.formSelectUser.controls.selectedUserId.value)||this.onSelectUser(""))}getShareInfo(){let e=this.loadShareInfoFn();return typeof e=="function"?e():B(e)?e:p(null)}
1subscribeToSearchInput(){this._subscriptions.push(w(this.searchInput.nativeElement,"keyup").pipe(D(800),g(e=>e.target.value),N(),h(e=>{this._changeDetectorRef.markForCheck(),this.displayUsers$=this.filterUsers(e.toLocaleLowerCase()).pipe(I(),h(t=>{this._users=t,this.resetUnloadedSelectedUser()}))}),P(()=>this._componentActive)).subscribe())}filterUsers(e){if(e){let t=e.split(/\s+/);return t.length>1?p(this._allUsers.filter(i=>this.filterForeAndSurname(i,t,e))):p(this._allUsers.filter(i=>this.filterValue(i,e)))}else return p(this._allUsers)}filterValue(e,t){return e.forename.toLocaleLowerCase().includes(t)||e.surname.toLocaleLowerCase().includes(t)||e.username.toLocaleLowerCase().includes(t)}filterForeAndSurname(e,t,i){if(t.length<2||!t[0]||!t[1])return!1;let[r,A]=t.map(Ie=>Ie.toLocaleLowerCase()),M=e.forename.toLocaleLowerCase(),R=e.surname.toLocaleLowerCase(),ge=M.includes(r)&&R.includes(A),Ue=M.includes(A)&&R.includes(r);return ge||Ue||this.filterValue(e,i)}static{this.\u0275fac=function(t){return new(t||n)}}static{this.\u0275cmp=z({type:n,selectors:[["app-select-single-user-modal"]],viewQuery:function(t,i){if(t&1&&K(Ee,5),t&2){let r;X(r=Y())&&(i.searchInput=r.first)}},inputs:{saveButtonText:"saveButtonText",title:"title",infoText:"infoText",infoTextGroupHint:"infoTextGroupHint",disableReadOnly:"disableReadOnly",loadUsersFn:"loadUsersFn",loadShareInfoFn:"loadShareInfoFn"},decls:12,vars:14,consts:[["searchInput",""],[3,"modalTitle","border"],[1,"modal-body"],["data-cy","infoBox",1,"box-info"],["name","userSearchInput","type","text","data-cy","searchUser",3,"appAutoFocus","placeholder"],["itemSize","20","data-cy","userList",1,"scroll-box"],[3,"formGroup"],[4,"cdkVirtualFor","cdkVirtualForOf"],[3,"cancelButtonClick","saveButtonClick","isSaveButtonDisabled","saveButtonText"],["data-cy","infoTitle",1,"box-title"],["data-cy","infoText",1,"box-content"],["data-cy","sharedUser",1,"form-check"],[1,"form-check-label",3,"for","title"],["type","radio","name","selectedUserId",1,"form-check-input",3,"change","disabled","id","value","checked"]],template:function(t,i){t&1&&(S(0,Ae,1,0,"app-spinner"),C(1,"app-modal-header",1),s(2,"div",2),S(3,ke,6,4,"div",3),C(4,"input",4,0),c(6,"transloco"),s(7,"cdk-virtual-scroll-viewport",5),x(8,6),J(9,Oe,6,10,"ng-container",7),c(10,"async"),y(),a()(),s(11,"app-modal-footer",8),T("cancelButtonClick",function(){return i.modalService.dismiss()})("saveButtonClick",function(){return i.onReturnSelectedUser()}),a()),t&2&&(v(i.isPending?0:-1),o(),l("modalTitle",i.title)("border",!0),o(2),v(i.infoText?3:-1),o(),l("appAutoFocus",!0)("placeholder",u(6,10,"user_management.search_users")),o(4),l("formGroup",i.formSelectUser),o(),l("cdkVirtualForOf",u(10,12,i.displayUsers$)),o(2),l("isSaveButtonDisabled",i.formSelectUser.controls.selectedUserId.value==="")("saveButtonText",i.saveButtonText))},dependencies:[Se,se,ie,he,_e,ue,de,pe,le,re,ae,ce,oe,te,ne,ve],encapsulation:2,changeDetection:0})}}return n})();var Be=(function(n){return n.FAVORITES="favorites",n.NOTES="notes",n})(Be||{});export{lt as a,Be as b,ye as c,Te as d,be as e,De as f};
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.