@sync-in/server 1.3.0 → 1.3.1
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/CHANGELOG.md +9 -0
- package/environment/environment.dist.yaml +1 -1
- package/package.json +1 -1
- package/server/configuration/config.loader.js +1 -1
- package/server/configuration/config.loader.js.map +1 -1
- package/server/configuration/config.validation.js +2 -0
- package/server/configuration/config.validation.js.map +1 -1
- package/static/{chunk-UV4UIX6J.js → chunk-2CQOSX2Q.js} +1 -1
- package/static/{chunk-7WRQICEB.js → chunk-2QEYCCHN.js} +1 -1
- package/static/{chunk-QFRQQ4K3.js → chunk-2SX3MVH3.js} +1 -1
- package/static/{chunk-GWUCWOVK.js → chunk-2XXS272C.js} +1 -1
- package/static/{chunk-ZVPX26RB.js → chunk-3RLZPQMJ.js} +1 -1
- package/static/{chunk-3V7XYPSJ.js → chunk-5JDPARJT.js} +1 -1
- package/static/{chunk-2EBPSJJT.js → chunk-5OIPLRAE.js} +1 -1
- package/static/{chunk-7PCJMNDR.js → chunk-7U66TR6P.js} +1 -1
- package/static/{chunk-IFJD2ISM.js → chunk-AA6ZTGRW.js} +1 -1
- package/static/{chunk-WTPZUBNX.js → chunk-AXITQYVN.js} +1 -1
- package/static/{chunk-OWGR4BYT.js → chunk-AYEOHGUD.js} +1 -1
- package/static/{chunk-NPLV4M2H.js → chunk-CTWOQLAR.js} +1 -1
- package/static/{chunk-O4CXCITB.js → chunk-EWY4ALVF.js} +1 -1
- package/static/{chunk-5RFOYHL3.js → chunk-FBG4NUDE.js} +1 -1
- package/static/{chunk-ATFX6EIO.js → chunk-GI2LXVWQ.js} +1 -1
- package/static/{chunk-NU3TPXFY.js → chunk-HDDBV3QQ.js} +1 -1
- package/static/{chunk-I644MKAO.js → chunk-HQC3W7BS.js} +1 -1
- package/static/{chunk-4IYQWOGR.js → chunk-LHKO5Y4A.js} +1 -1
- package/static/{chunk-MQZEETHL.js → chunk-NCIAR3N4.js} +1 -1
- package/static/{chunk-VBD7QTEP.js → chunk-R4USKWW6.js} +1 -1
- package/static/{chunk-XI72YZ2M.js → chunk-RGONEEJE.js} +1 -1
- package/static/{chunk-AKM2LQUU.js → chunk-TFBTBTPR.js} +1 -1
- package/static/{chunk-RUNMEQOV.js → chunk-VIL6L67B.js} +1 -1
- package/static/{chunk-Z6IHRUVL.js → chunk-WA3LPP4G.js} +1 -1
- package/static/{chunk-MEKYVWV4.js → chunk-WQPVP63E.js} +1 -1
- package/static/{chunk-ATLT5DK5.js → chunk-Y6IYSEKU.js} +1 -1
- package/static/{chunk-IUUTIYHF.js → chunk-ZS5YIDNI.js} +1 -1
- package/static/{chunk-VQRN7HFP.js → chunk-ZSMTUPAP.js} +1 -1
- package/static/{chunk-RAVRSB6R.js → chunk-ZZGFGD5E.js} +1 -1
- package/static/index.html +1 -1
- package/static/{main-ILCPT3IK.js → main-7IVUWYWM.js} +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as ht}from"./chunk-7WRQICEB.js";import{a as Ct,b as G,c as bt}from"./chunk-NPLV4M2H.js";import{a as q,b as Fe,c as ot,e as te}from"./chunk-ATFX6EIO.js";import{a as vt}from"./chunk-2EBPSJJT.js";import{d as Ce}from"./chunk-O4CXCITB.js";import"./chunk-JXZCNFW7.js";import{a as gt}from"./chunk-RUNMEQOV.js";import{a as ee,b as he,c as ve,d as be,f as Se,i as ye}from"./chunk-3V7XYPSJ.js";import{a as Ie,b as ke,c as _t,d as ft}from"./chunk-Z6IHRUVL.js";import{a as H,b as xe}from"./chunk-UV4UIX6J.js";import"./chunk-ATLT5DK5.js";import{f as dt,g as ut}from"./chunk-RAVRSB6R.js";import{Cb as mt,Db as pt,Eb as ct,J as it,K as z,M as nt,Q as ge,Sb as M,gb as at,v as je,xb as rt,yb as st,zb as lt}from"./chunk-NU3TPXFY.js";import{b as Re,d as Le}from"./chunk-UGSGMP2I.js";import{Ad as Z,Bb as R,Bd as V,Dc as le,Dd as P,Eb as u,Ec as Ge,Fb as c,Ff as et,Gf as tt,L as Q,Ma as K,Mb as ne,Nb as oe,Nf as fe,Ob as ae,Oe as Xe,Qb as s,Qd as qe,Rb as h,Sa as a,Sb as T,Tb as L,Te as _e,Xa as v,Xc as J,Yc as me,_c as D,_d as He,ab as I,ad as O,bc as C,bd as B,cc as y,cd as X,db as se,dc as U,eb as Pe,ed as w,fb as f,fd as Oe,fe as Qe,jd as $,kd as Y,lb as m,ld as pe,mb as De,md as ce,nb as A,nd as de,ne as ze,ob as Ee,oe as Ke,pa as b,pb as k,pf as Ye,qa as x,qb as Me,rb as g,re as ue,sb as W,sd as Be,tb as E,td as j,ub as F,ud as N,vb as n,ve as We,wa as re,wb as o,wd as $e,wf as Ze,xb as d,xe as Je}from"./chunk-FPEGN42P.js";import"./chunk-GAL4ENT6.js";function At(t,l){if(t&1&&(d(0,"fa-icon",42),n(1,"span"),s(2),o()),t&2){let e=c();m("icon",e.icons.faPen),a(2),h(e.guest.fullName)}}function Ut(t,l){if(t&1&&(d(0,"fa-icon",42),n(1,"span",43),s(2,"New guest"),o()),t&2){let e=c();m("icon",e.icons.faPlus)}}function Dt(t,l){if(t&1&&d(0,"fa-icon",2),t&2){let e=c();m("icon",e.icons.faSpinner)}}function Et(t,l){t&1&&(n(0,"h4",3)(1,"span",43),s(2,"Edit guest"),o()())}function Ft(t,l){if(t&1&&(d(0,"fa-icon",44),n(1,"span",45),s(2,"Account"),o()),t&2){let e=c();m("icon",e.icons.faAddressCard)}}function It(t,l){if(t&1&&d(0,"app-password-strength-bar",22),t&2){let e=c();m("passwordToCheck",e.guestForm.value.password)}}function kt(t,l){if(t&1&&(n(0,"option",26),s(1),o()),t&2){let e=l.$implicit;m("ngValue",e),a(),h(e)}}function Nt(t,l){if(t&1&&(n(0,"option",34),s(1),o()),t&2){let e=l.$implicit,r=c();m("ngValue",r.allNotifications.indexOf(e)),a(),h(e)}}function Vt(t,l){if(t&1&&(n(0,"div"),s(1),C(2,"amDateFormat"),o(),n(3,"div"),s(4),C(5,"amDateFormat"),o()),t&2){let e=c(2);a(),L("",y(2,4,e.guest.currentAccess)," - ",e.guest.currentIp,""),a(3),L("",y(5,6,e.guest.lastAccess)," - ",e.guest.lastIp,"")}}function Pt(t,l){t&1&&(n(0,"span",37),s(1,"never"),o())}function Mt(t,l){if(t&1&&(n(0,"div",11)(1,"div",12)(2,"label",46),s(3,"Creation date"),o(),n(4,"div",47),s(5),C(6,"amDateFormat"),o()(),n(7,"div",48)(8,"label",49),s(9,"Last accesses"),o(),n(10,"div",50),f(11,Vt,6,8)(12,Pt,2,0,"span",37),o()()()),t&2){let e=c();a(5),h(y(6,2,e.guest.createdAt)),a(6),g(e.guest.lastAccess?11:12)}}function Gt(t,l){if(t&1&&(d(0,"fa-icon",44),n(1,"span",51),s(2,"Managers"),o(),n(3,"span"),s(4),o()),t&2){let e=c();m("icon",e.icons.faUsersGear),a(4),T("(",e.guestForm.value.managers.length||0,")")}}function Rt(t,l){t&1&&(n(0,"small",37),s(1,"At least one manager is required"),o())}function Lt(t,l){if(t&1){let e=R();n(0,"button",52),u("click",function(){b(e);let i=c();return x(i.confirmDeletion=!0)}),s(1," Remove "),o()}if(t&2){let e=c();m("disabled",e.confirmDeletion)}}var Ne=(()=>{class t extends ht{constructor(e,r,i,p){super(e,r,i),this.adminService=p}searchMembers(e){let r={search:e,ignoreUserIds:this.guestForm.value.managers.map(i=>i.id),usersRole:z.USER,onlyUsers:!0};return this.adminService.searchMembers(r)}onSubmit(){if(this.submitted=!0,this.confirmDeletion)this.adminService.deleteUser(this.guest.id,null,!0).subscribe({next:()=>{this.guestChange.emit(["delete",this.guest]),this.layout.sendNotification("success","Guest deleted",this.guest.login),this.layout.closeDialog()},error:e=>this.onError(e)});else if(!this.guest)this.adminService.createUser(this.makeDto(!0),!0).subscribe({next:e=>{this.guestChange.emit(["add",e]),this.layout.sendNotification("success","Guest created",this.guestForm.value.login),this.layout.closeDialog()},error:e=>this.onError(e)});else{let e=this.makeDto();if(!Object.keys(e).length){this.loading=!1,this.submitted=!1;return}this.adminService.updateUser(this.guest.id,e,!0).subscribe({next:r=>{r?this.guestChange.emit(["update",r]):this.guestChange.emit(["delete",this.guest]),this.layout.sendNotification("success","Guest updated",this.guestForm.value.login),this.layout.closeDialog()},error:r=>this.onError(r)})}}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(dt),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-guest-dialog"]],features:[Pe],decls:70,vars:40,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],["type","pills",3,"justified"],[1,"my-3"],["customClass","tab-dialog form-validation",3,"selectTab"],["tabHeading",""],[1,"d-flex","flex-column"],[1,"d-flex","col-12","pb-3"],[1,"flex-fill","col-6","pe-4"],["for","login","l10nTranslate",""],["id","login","appAutofocus","","formControlName","login","autocomplete","off","type","text",1,"form-control","form-control-sm",3,"autoSelect"],[1,"flex-fill","col-6","ps-4"],["for","email","l10nTranslate",""],["id","email","formControlName","email","autocomplete","off","type","email",1,"form-control","form-control-sm"],["for","firstName","l10nTranslate",""],["id","firstName","formControlName","firstName","autocomplete","off","type","text",1,"form-control","form-control-sm"],["for","lastName","l10nTranslate",""],["id","lastName","formControlName","lastName","autocomplete","off","type","text",1,"form-control","form-control-sm"],[1,"position-absolute","pe-4",2,"right","50%","padding-top","6px",3,"passwordToCheck"],["id","password","placeholder","Set a password",3,"passwordChange","password","showGenerator","showLabel","isRequired"],["for","language","l10nTranslate",""],["id","language","formControlName","language",1,"form-control","form-select","form-select-sm"],[3,"ngValue"],[1,"d-flex","flex-column","col-6","pe-4"],["for","account","l10nTranslate",""],["id","account",1,"form-check","form-switch","form-check-inline"],["for","isActive",1,"form-check-label"],["formControlName","isActive","id","isActive","type","checkbox",1,"form-check-input"],["for","notification","l10nTranslate",""],["id","notification","formControlName","notification",1,"form-control","form-select","form-select-sm"],["l10nTranslate","",3,"ngValue"],["customClass","tab-dialog",3,"selectTab"],[3,"membersChange","members","withPermissions","customPlaceholder","searchFunction"],["l10nTranslate","",1,"text-danger"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"disabled"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",3,"click","disabled"],[1,"me-2",3,"icon"],["l10nTranslate",""],[3,"icon"],["l10nTranslate","",1,"ms-2"],["for","created","l10nTranslate",""],["id","created"],[1,"d-flex","flex-column","align-items-end","col-6","ps-4"],["for","access","l10nTranslate",""],["id","access",1,"text-align-end"],["l10nTranslate","",1,"ms-2","me-1"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),f(2,At,3,2)(3,Ut,3,1)(4,Dt,1,1,"fa-icon",2),o(),f(5,Et,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.layout.closeDialog()}),o()(),n(7,"div",5)(8,"tabset",6),d(9,"hr",7),n(10,"tab",8),u("selectTab",function(){return i.tabView=null}),f(11,Ft,3,1,"ng-template",9),n(12,"div",10)(13,"div",11)(14,"div",12)(15,"label",13),s(16,"Login"),o(),d(17,"input",14),o(),n(18,"div",15)(19,"label",16),s(20,"Email"),o(),d(21,"input",17),o()(),n(22,"div",11)(23,"div",12)(24,"label",18),s(25,"First name"),o(),d(26,"input",19),o(),n(27,"div",15)(28,"label",20),s(29,"Last name"),o(),d(30,"input",21),o()(),n(31,"div",11)(32,"div",12),f(33,It,1,1,"app-password-strength-bar",22),n(34,"app-input-password",23),u("passwordChange",function(_){return i.updatePassword(_)}),o()(),n(35,"div",15)(36,"label",24),s(37,"Language"),o(),n(38,"select",25),E(39,kt,2,2,"option",26,W),o()()(),n(41,"div",11)(42,"div",27)(43,"label",28),s(44,"Account status"),o(),n(45,"div",29)(46,"label",30),d(47,"input",31),n(48,"span"),s(49),C(50,"translate"),C(51,"titlecase"),o()()()(),n(52,"div",15)(53,"label",32),s(54,"Notification"),o(),n(55,"select",33),E(56,Nt,2,2,"option",34,W),o()()(),f(58,Mt,13,4,"div",11),o()(),n(59,"tab",35),u("selectTab",function(){return i.tabView="managers"}),f(60,Gt,5,2,"ng-template",9),n(61,"div",7)(62,"app-user-search",36),u("membersChange",function(_){return i.updateManagers(_)}),o(),f(63,Rt,2,0,"small",37),o()()()(),n(64,"div",38),f(65,Lt,2,1,"button",39),n(66,"button",40),u("click",function(){return i.onCancel()}),s(67,"Cancel"),o(),n(68,"button",41),u("click",function(){return i.onSubmit()}),s(69),o()()),r&2&&(a(2),g(i.guest?2:3),a(2),g(i.loading?4:-1),a(),g(i.guest?5:-1),a(),k("btn-close btn-close-white ",i.guest?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.guestForm),a(),m("justified",!0),a(9),A("is-invalid",i.guestForm.controls.login.invalid),m("autoSelect",!1),a(4),A("is-invalid",i.guestForm.controls.email.invalid),a(5),A("is-invalid",i.guestForm.controls.firstName.invalid),a(7),g(i.guestForm.value.password!==i.defaultPassword?33:-1),a(),m("password",i.guestForm.value.password)("showGenerator",!0)("showLabel",!0)("isRequired",!0),a(5),F(i.languages),a(9),A("text-danger",!i.guestForm.value.isActive),a(),T(" ",y(51,38,U(50,35,i.guestForm.value.isActive?"active":"suspended",i.locale.language))," "),a(7),F(i.allNotifications),a(2),g(i.guest?58:-1),a(4),m("members",i.guestForm.value.managers)("withPermissions",!1)("customPlaceholder","Type to search for managers to add")("searchFunction",i.searchMembers.bind(i)),a(),g(i.guestForm.value.managers.length?-1:63),a(2),g(i.guest!=null&&i.guest.id?65:-1),a(3),k("btn btn-sm ",i.confirmDeletion?"btn-danger":"btn-primary",""),m("disabled",i.guestForm.invalid||i.submitted),a(),T(" ",i.confirmDeletion?"Confirm deletion":"Confirm"," "))},dependencies:[P,V,ee,j,ce,de,me,J,pe,O,B,$,Y,H,xe,Se,Z,le,ye,he,ve,be],encapsulation:2})}}return t})();function Bt(t,l){t&1&&(n(0,"h4",3)(1,"span",13),s(2,"Impersonate identity"),o()())}var xt=(()=>{class t{constructor(e,r,i){this.locale=e,this.layout=r,this.adminService=i,this.submitted=!1,this.icons={faUserSecret:_e},this.passwordMinLength=8,this.impersonateUserForm=new X({password:new w("",D.required)})}onSubmit(){this.submitted=!0,this.adminService.impersonateUser(this.user.id,{password:this.impersonateUserForm.value.password}).subscribe({next:e=>{this.layout.closeDialog(),setTimeout(()=>this.adminService.initImpersonateUser(e),500)},error:e=>{this.submitted=!1,this.layout.sendNotification("error","Impersonate identity",this.user.login,e)}})}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-impersonate-user-dialog"]],inputs:{user:"user"},decls:19,vars:16,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],[1,"d-flex","align-items-center","avatar","mb-3"],["alt","",1,"avatar-img",3,"src"],[1,"fw-bold","mx-2"],["id","password","placeholder","Enter your password to confirm",3,"passwordChange","password","passwordMinLength","isRequired","focus"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"],["l10nTranslate",""]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),n(3,"span"),s(4),o()(),f(5,Bt,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.layout.closeDialog()}),o()(),n(7,"div",5)(8,"div",6),d(9,"img",7),n(10,"span",8),s(11),C(12,"capitalize"),o()(),n(13,"app-input-password",9),u("passwordChange",function(_){return i.impersonateUserForm.controls.password.setValue(_)}),o()(),n(14,"div",10)(15,"button",11),u("click",function(){return i.layout.closeDialog()}),s(16,"Cancel"),o(),n(17,"button",12),u("click",function(){return i.onSubmit()}),s(18," Confirm "),o()()),r&2&&(a(2),m("icon",i.icons.faUserSecret),a(2),h(i.user.fullName),a(),g(i.user?5:-1),a(),k("btn-close btn-close-white ",i.user?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.impersonateUserForm),a(2),m("src",i.user.avatarUrl,K),a(2),h(y(12,14,i.user.login)),a(2),m("password",i.impersonateUserForm.value.password)("passwordMinLength",i.passwordMinLength)("isRequired",!0)("focus",!0),a(4),m("disabled",i.impersonateUserForm.invalid||i.submitted))},dependencies:[P,V,j,B,$,te,H],encapsulation:2})}}return t})();var St=(()=>{class t{constructor(e){this.translate=e}transform(e,r=!1,i=null,p=", "){return e.length?(i?e.map(S=>S[i]):e.concat()).sort().map(S=>new te().transform(r?this.translate.translate(S):S)).join(p):""}static{this.\u0275fac=function(r){return new(r||t)(v($e,16))}}static{this.\u0275pipe=se({name:"join",type:t,pure:!0})}}return t})();var yt=(()=>{class t{transform(e,r=","){return e?.length?e.split(r):[]}static{this.\u0275fac=function(r){return new(r||t)}}static{this.\u0275pipe=se({name:"split",type:t,pure:!0})}}return t})();function $t(t,l){t&1&&(n(0,"h4",3)(1,"span",9),s(2,"Delete user"),o()())}var wt=(()=>{class t{constructor(e,r,i){this.locale=e,this.layout=r,this.adminService=i,this.wasDeleted=new re,this.submitted=!1,this.icons={faUserMinus:Ke},this.deleteUserForm=new X({adminPassword:new w("",D.required),deleteSpace:new w(!1)})}onClose(){this.wasDeleted.emit(!1),this.layout.closeDialog()}onSubmit(){this.submitted=!0,this.adminService.deleteUser(this.user.id,{adminPassword:this.deleteUserForm.value.adminPassword,deleteSpace:this.deleteUserForm.value.deleteSpace}).subscribe({next:()=>{this.wasDeleted.emit(!0),this.layout.sendNotification("success","Delete user",this.user.login),this.onClose()},error:e=>{this.submitted=!1,this.layout.sendNotification("error","Delete user",this.user.login,e)}})}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-user-delete-dialog"]],inputs:{user:"user"},outputs:{wasDeleted:"wasDeleted"},decls:27,vars:15,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],[1,"d-flex","align-items-center","avatar","mb-3"],["alt","",1,"avatar-img",3,"src"],[1,"fw-bold","mx-2"],["l10nTranslate",""],["id","password","placeholder","Enter your password to confirm",3,"passwordChange","password","isRequired","focus"],[1,"form-check","form-check-inline","mt-3"],[1,"d-flex"],["for","deleteSpace",1,"form-check-label"],["formControlName","deleteSpace","id","deleteSpace","type","checkbox",1,"form-check-input"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),n(3,"span"),s(4),o()(),f(5,$t,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.onClose()}),o()(),n(7,"div",5)(8,"div",6),d(9,"img",7),n(10,"span",8),s(11),C(12,"capitalize"),o(),n(13,"span",9),s(14,"will be permanently removed"),o()(),n(15,"app-input-password",10),u("passwordChange",function(_){return i.deleteUserForm.controls.adminPassword.setValue(_)}),o(),n(16,"div",11)(17,"div",12)(18,"label",13),d(19,"input",14),n(20,"span",9),s(21,"Delete all user files"),o()()()()(),n(22,"div",15)(23,"button",16),u("click",function(){return i.onClose()}),s(24,"Cancel"),o(),n(25,"button",17),u("click",function(){return i.onSubmit()}),s(26," Confirm "),o()()),r&2&&(a(2),m("icon",i.icons.faUserMinus),a(2),h(i.user.fullName),a(),g(i.user?5:-1),a(),k("btn-close btn-close-white ",i.user?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.deleteUserForm),a(2),m("src",i.user.avatarUrl,K),a(2),h(y(12,13,i.user.login)),a(4),m("password",i.deleteUserForm.value.adminPassword)("isRequired",!0)("focus",!0),a(10),m("disabled",i.deleteUserForm.invalid||i.submitted))},dependencies:[P,V,j,J,O,B,$,Y,te,H],encapsulation:2})}}return t})();var jt=(t,l)=>l.id;function qt(t,l){if(t&1&&(d(0,"fa-icon",47),n(1,"span"),s(2),o()),t&2){let e=c();m("icon",e.icons.faUserPen),a(2),h(e.user.fullName)}}function Ht(t,l){if(t&1&&(d(0,"fa-icon",47),n(1,"span",40),s(2,"New user"),o()),t&2){let e=c();m("icon",e.icons.faUserPlus)}}function Qt(t,l){if(t&1&&d(0,"fa-icon",2),t&2){let e=c();m("icon",e.icons.faSpinner)}}function zt(t,l){t&1&&(n(0,"h4",3)(1,"span",40),s(2,"Edit user"),o()())}function Kt(t,l){if(t&1&&(d(0,"fa-icon",48),n(1,"span",49),s(2,"Account"),o()),t&2){let e=c();m("icon",e.icons.faAddressCard)}}function Wt(t,l){if(t&1&&d(0,"app-password-strength-bar",22),t&2){let e=c();m("passwordToCheck",e.userForm.value.password)}}function Jt(t,l){if(t&1&&(n(0,"option",26),s(1),o()),t&2){let e=l.$implicit;m("ngValue",e),a(),h(e)}}function Xt(t,l){if(t&1&&(n(0,"option",30),s(1),o()),t&2){let e=l.$implicit,r=c();m("ngValue",r.allNotifications.indexOf(e)),a(),h(e)}}function Yt(t,l){if(t&1&&(n(0,"div",11)(1,"div",12)(2,"label",50),s(3,"Storage Usage"),o(),d(4,"app-storage-usage",51),o(),d(5,"div",15),o()),t&2){let e=c();a(4),m("item",e.user)}}function Zt(t,l){if(t&1&&(n(0,"div"),s(1),C(2,"amDateFormat"),o(),n(3,"div"),s(4),C(5,"amDateFormat"),o()),t&2){let e=c(2);a(),L("",y(2,4,e.user.currentAccess)," - ",e.user.currentIp,""),a(3),L("",y(5,6,e.user.lastAccess)," - ",e.user.lastIp,"")}}function ei(t,l){t&1&&(n(0,"span",57),s(1,"never"),o())}function ti(t,l){if(t&1&&(n(0,"div",11)(1,"div",12)(2,"label",52),s(3,"Creation date"),o(),n(4,"div",53),s(5),C(6,"amDateFormat"),o()(),n(7,"div",54)(8,"label",55),s(9,"Last accesses"),o(),n(10,"div",56),f(11,Zt,6,8)(12,ei,2,0,"span",57),o()()()),t&2){let e=c();a(5),h(y(6,2,e.user.createdAt)),a(6),g(e.user.lastAccess?11:12)}}function ii(t,l){if(t&1&&(d(0,"fa-icon",48),n(1,"span",49),s(2,"Permissions"),o()),t&2){let e=c();m("icon",e.icons.faShieldHalved)}}function ni(t,l){if(t&1&&(n(0,"div",60)(1,"div",61),d(2,"fa-icon",62),n(3,"span"),s(4),o()(),n(5,"div",63),s(6),C(7,"split"),C(8,"join"),o()()),t&2){let e=c().$implicit,r=c(2);a(2),m("icon",r.icons.GROUPS),a(2),h(e.name),a(2),h(U(8,5,y(7,3,e.permissions),!0))}}function oi(t,l){if(t&1&&f(0,ni,9,8,"div",60),t&2){let e=l.$implicit;g(e.permissions?0:-1)}}function ai(t,l){if(t&1&&(n(0,"div",32)(1,"label",58),s(2,"Permissions inherited from groups"),o(),n(3,"div",59),E(4,oi,1,1,null,null,jt),o()()),t&2){let e=c();a(4),F(e.userForm.value.groups)}}function ri(t,l){if(t&1&&(d(0,"fa-icon",48),n(1,"span",64),s(2,"Groups"),o(),n(3,"span"),s(4),o()),t&2){let e=c();m("icon",e.icons.faUsers),a(4),T("(",e.userForm.value.groups.length||0,")")}}function si(t,l){if(t&1){let e=R();n(0,"button",65),u("click",function(){b(e);let i=c();return x(i.confirmDeletion=!0)}),s(1," Remove "),o()}if(t&2){let e=c();m("disabled",e.confirmDeletion)}}var Ve=(()=>{class t{constructor(e,r,i){this.locale=e,this.layout=r,this.adminService=i,this.user=null,this.userChange=new re,this.submitted=!1,this.loading=!1,this.confirmDeletion=!1,this.icons={GROUPS:rt.GROUPS,faUserPlus:fe,faUserPen:ue,faSpinner:tt,faAddressCard:We,faUsers:He,faShieldHalved:Je},this.allNotifications=Object.values(ge),this.defaultPassword=this.layout.translateString(st),this.languages=this.layout.getLanguages(!0)}ngOnInit(){this.userForm=new X({login:new w(this.user?.login||"",[D.required,D.pattern(it)]),email:new w(this.user?.email||"",[D.required,D.maxLength(255),D.email]),firstName:new w(this.user?.firstName||"",[D.required,D.maxLength(255)]),lastName:new w(this.user?.lastName||"",D.maxLength(255)),password:new w(this.user?this.defaultPassword:"",D.maxLength(255)),language:new w(this.user?.language||null),notification:new w(this.user?.notification||Object.values(ge).indexOf(ge.APPLICATION_EMAIL)),isActive:new w(this.user?this.user.isActive:!0),isAdmin:new w(this.user?this.user.isAdmin:!1),storageQuota:new w(this.user?.storageQuota||null),groups:new w(this.user?.groups||[]),applications:new w(this.user?.applications||[])})}searchMembers(e){let r={search:e,onlyGroups:!0,excludePersonalGroups:!0,withPermissions:!0,ignoreGroupIds:this.userForm.value.groups.map(i=>i.id)};return this.adminService.searchMembers(r)}updateApplications(e){this.userForm.controls.applications.setValue(e),this.userForm.controls.applications.markAsDirty()}updatePassword(e){this.userForm.controls.password.setValue(e),this.userForm.controls.password.markAsDirty()}updateMembers(e){this.userForm.controls.groups.setValue(e),this.userForm.controls.groups.markAsDirty()}updateQuota(e){this.userForm.controls.storageQuota.setValue(e),this.userForm.controls.storageQuota.markAsDirty()}onCancel(){this.confirmDeletion?this.confirmDeletion=!1:this.layout.closeDialog()}onSubmit(){this.submitted=!0,this.confirmDeletion?this.layout.openDialog(wt,"sm",{initialState:{user:this.user}}).content.wasDeleted.pipe(Q(1)).subscribe(r=>{r?(this.userChange.emit(["delete",this.user]),this.layout.closeDialog()):(this.confirmDeletion=!1,this.submitted=!1)}):this.user?this.adminService.updateUser(this.user.id,this.makeDto()).subscribe({next:e=>{this.userChange.emit(["update",e]),this.layout.sendNotification("success","User updated",this.userForm.value.login),this.layout.closeDialog()},error:e=>this.onError(e)}):this.adminService.createUser(this.makeDto(!0)).subscribe({next:e=>{this.userChange.emit(["add",e]),this.layout.sendNotification("success","User created",this.userForm.value.login),this.layout.closeDialog()},error:e=>this.onError(e)})}makeDto(e=!1){let r={};if(e)r=this.userForm.value;else for(let i in this.userForm.controls)this.userForm.controls[i].dirty&&(r[i]=this.userForm.controls[i].value);for(let i in r)switch(i){case"language":r[i]=r[i]===lt?null:r[i];break;case"isAdmin":r.role=r[i]?z.ADMINISTRATOR:z.USER;break;case"applications":r.permissions=r[i].join(nt);break;case"groups":r[i]=r[i].map(p=>p.id);break}return r}onError(e){this.layout.sendNotification("error","Group error",this.userForm.value.login,e),this.submitted=!1}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-user-dialog"]],inputs:{user:"user"},outputs:{userChange:"userChange"},decls:82,vars:44,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],["type","pills",3,"justified"],[1,"my-3"],["customClass","tab-dialog form-validation",3,"selectTab"],["tabHeading",""],[1,"d-flex","flex-column"],[1,"d-flex","col-12","pb-3"],[1,"flex-fill","col-6","pe-4"],["for","login","l10nTranslate",""],["id","login","appAutofocus","","formControlName","login","autocomplete","off","type","text",1,"form-control","form-control-sm",3,"autoSelect"],[1,"flex-fill","col-6","ps-4"],["for","email","l10nTranslate",""],["id","email","formControlName","email","autocomplete","off","type","email",1,"form-control","form-control-sm"],["for","firstName","l10nTranslate",""],["id","firstName","formControlName","firstName","autocomplete","off","type","text",1,"form-control","form-control-sm"],["for","lastName","l10nTranslate",""],["id","lastName","formControlName","lastName","autocomplete","off","type","text",1,"form-control","form-control-sm"],[1,"position-absolute","pe-4",2,"right","50%","padding-top","6px",3,"passwordToCheck"],["id","password","placeholder","Set a password",3,"passwordChange","password","showGenerator","showLabel","isRequired"],["for","language","l10nTranslate",""],["id","language","formControlName","language",1,"form-control","form-select","form-select-sm"],[3,"ngValue"],[3,"quotaChange","quota","fullWidth"],["for","notification","l10nTranslate",""],["id","notification","formControlName","notification",1,"form-control","form-select","form-select-sm"],["l10nTranslate","",3,"ngValue"],["customClass","tab-dialog",3,"selectTab"],[1,"d-flex","flex-column","col-12","pb-3"],["for","account","l10nTranslate",""],["id","account",1,"form-check","form-switch","form-check-inline"],[1,"d-flex"],["for","isActive",1,"form-check-label"],["formControlName","isActive","id","isActive","type","checkbox",1,"form-check-input"],["for","isAdmin",1,"form-check-label"],["formControlName","isAdmin","id","isAdmin","type","checkbox",1,"form-check-input"],["l10nTranslate",""],[3,"permissionsChange","permissions"],[3,"membersChange","members","withPermissions","customPlaceholder","searchFunction"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"disabled"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",3,"click","disabled"],[1,"me-2",3,"icon"],[3,"icon"],["l10nTranslate","",1,"ms-2"],["for","storage","l10nTranslate",""],["id","storage",3,"item"],["for","created","l10nTranslate",""],["id","created"],[1,"d-flex","flex-column","align-items-end","col-6","ps-4"],["for","access","l10nTranslate",""],["id","access",1,"text-align-end"],["l10nTranslate","",1,"text-danger"],["for","groups_permissions","l10nTranslate",""],["id","groups_permissions"],[1,"d-flex","align-items-center","mb-1"],[1,"d-flex","align-items-center","me-5"],[1,"circle-primary-icon","me-2",3,"icon"],[1,"d-flex","fs-xxs","ms-auto"],["l10nTranslate","",1,"ms-2","me-1"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),f(2,qt,3,2)(3,Ht,3,1)(4,Qt,1,1,"fa-icon",2),o(),f(5,zt,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.layout.closeDialog()}),o()(),n(7,"div",5)(8,"tabset",6),d(9,"hr",7),n(10,"tab",8),u("selectTab",function(){return i.tabView=null}),f(11,Kt,3,1,"ng-template",9),n(12,"div",10)(13,"div",11)(14,"div",12)(15,"label",13),s(16,"Login"),o(),d(17,"input",14),o(),n(18,"div",15)(19,"label",16),s(20,"Email"),o(),d(21,"input",17),o()(),n(22,"div",11)(23,"div",12)(24,"label",18),s(25,"First name"),o(),d(26,"input",19),o(),n(27,"div",15)(28,"label",20),s(29,"Last name"),o(),d(30,"input",21),o()(),n(31,"div",11)(32,"div",12),f(33,Wt,1,1,"app-password-strength-bar",22),n(34,"app-input-password",23),u("passwordChange",function(_){return i.updatePassword(_)}),o()(),n(35,"div",15)(36,"label",24),s(37,"Language"),o(),n(38,"select",25),E(39,Jt,2,2,"option",26,W),o()()(),n(41,"div",11)(42,"div",12)(43,"app-storage-quota",27),u("quotaChange",function(_){return i.updateQuota(_)}),o()(),n(44,"div",15)(45,"label",28),s(46,"Notification"),o(),n(47,"select",29),E(48,Xt,2,2,"option",30,W),o()()(),f(50,Yt,6,1,"div",11),o(),f(51,ti,13,4,"div",11),o(),n(52,"tab",31),u("selectTab",function(){return i.tabView="permissions"}),f(53,ii,3,1,"ng-template",9),n(54,"div",32)(55,"label",33),s(56,"Account status"),o(),n(57,"div",34)(58,"div",35)(59,"label",36),d(60,"input",37),n(61,"span"),s(62),C(63,"translate"),C(64,"titlecase"),o()()(),n(65,"div",35)(66,"label",38),d(67,"input",39),n(68,"span",40),s(69,"Administrator"),o()()()()(),n(70,"app-admin-permissions",41),u("permissionsChange",function(_){return i.updateApplications(_)}),o(),f(71,ai,6,0,"div",32),o(),n(72,"tab",31),u("selectTab",function(){return i.tabView="groups"}),f(73,ri,5,2,"ng-template",9),n(74,"div",7)(75,"app-user-search",42),u("membersChange",function(_){return i.updateMembers(_)}),o()()()()(),n(76,"div",43),f(77,si,2,1,"button",44),n(78,"button",45),u("click",function(){return i.onCancel()}),s(79,"Cancel"),o(),n(80,"button",46),u("click",function(){return i.onSubmit()}),s(81),o()()),r&2&&(a(2),g(i.user?2:3),a(2),g(i.loading?4:-1),a(),g(i.user?5:-1),a(),k("btn-close btn-close-white ",i.user?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.userForm),a(),m("justified",!0),a(9),A("is-invalid",i.userForm.controls.login.invalid),m("autoSelect",!1),a(4),A("is-invalid",i.userForm.controls.email.invalid),a(5),A("is-invalid",i.userForm.controls.firstName.invalid),a(7),g(i.userForm.value.password!==i.defaultPassword?33:-1),a(),m("password",i.userForm.value.password)("showGenerator",!0)("showLabel",!0)("isRequired",!0),a(5),F(i.languages),a(4),m("quota",i.userForm.value.storageQuota)("fullWidth",!0),a(5),F(i.allNotifications),a(2),g(i.user&&i.user.storageUsage?50:-1),a(),g(i.user?51:-1),a(10),A("text-danger",!i.userForm.value.isActive),a(),T(" ",y(64,42,U(63,39,i.userForm.value.isActive?"active":"suspended",i.locale.language))," "),a(8),m("permissions",i.userForm.value.applications),a(),g(i.userForm.value.groups.length?71:-1),a(4),m("members",i.userForm.value.groups)("withPermissions",!1)("customPlaceholder","Type to search for groups to add")("searchFunction",i.searchMembers.bind(i)),a(2),g(i.user!=null&&i.user.id?77:-1),a(3),k("btn btn-sm ",i.confirmDeletion?"btn-danger":"btn-primary",""),m("disabled",i.userForm.invalid||i.submitted),a(),T(" ",i.confirmDeletion?"Confirm deletion":"Confirm"," "))},dependencies:[P,V,ve,be,he,j,ce,de,me,J,pe,O,B,$,Y,H,xe,le,Z,Ce,vt,yt,St,ye,Se,bt,ee],encapsulation:2})}}return t})();var li=["MainContextMenu"],mi=["TargetContextMenu"],Tt=(t,l)=>l.key,pi=(t,l)=>l.id,ci=(t,l)=>l.mid;function di(t,l){if(t&1&&d(0,"fa-icon",24),t&2){let e=c(3);m("icon",e.sortTable.sortParam.asc?e.icons.faArrowDown:e.icons.faArrowUp)("fixedWidth",!1)}}function ui(t,l){if(t&1){let e=R();n(0,"th",23),u("click",function(){b(e);let i=c().$implicit,p=c();return x(p.sortBy(i.key))}),s(1),f(2,di,1,2,"fa-icon",24),o()}if(t&2){let e=c().$implicit,r=c();Ee(e.value.class),De("width",e.value.width,"%"),A("text-align-center",e.value.textCenter)("cursor-pointer",e.value.sortable),a(),T(" ",e.value.label," "),a(),g(r.sortTable.sortParam.column===e.key?2:-1)}}function _i(t,l){if(t&1&&f(0,ui,3,11,"th",22),t&2){let e=l.$implicit;g(e.value.show?0:-1)}}function fi(t,l){if(t&1&&d(0,"fa-icon",32),t&2){let e=c(5);m("icon",e.icons.faKey)}}function gi(t,l){if(t&1&&(n(0,"div",27),d(1,"img",30),n(2,"div",28)(3,"span",31),s(4),f(5,fi,1,1,"fa-icon",32),o(),n(6,"span",33),s(7),o()()()),t&2){let e=c(3).$implicit;a(),m("src",e.avatarUrl,K),a(3),T(" ",e.login," "),a(),g(e.isAdmin?5:-1),a(2),h(e.email)}}function Ci(t,l){if(t&1&&(n(0,"span",34),s(1),o()),t&2){let e=c(4).$implicit;a(),h(e.userRoleText)}}function hi(t,l){if(t&1&&(n(0,"div",28)(1,"span",31),s(2),o(),f(3,Ci,2,1,"span",34),o()),t&2){let e=c(3).$implicit;a(2),h(e.fullName),a(),g(e.isAdmin?3:-1)}}function vi(t,l){if(t&1&&d(0,"app-user-avatar",35),t&2){let e=l.$implicit;m("user",e)("isMember",!0)}}function bi(t,l){if(t&1&&E(0,vi,1,2,"app-user-avatar",35,ci),t&2){let e=c(3).$implicit;F(e.managers)}}function xi(t,l){if(t&1&&d(0,"app-storage-usage",36),t&2){let e=c(4).$implicit;m("item",e)}}function Si(t,l){if(t&1&&f(0,xi,1,1,"app-storage-usage",36),t&2){let e=c(3).$implicit;g(e.storageUsage?0:-1)}}function yi(t,l){if(t&1&&(n(0,"div",28)(1,"div"),s(2),o(),n(3,"div"),s(4),o()()),t&2){let e=c(3).$implicit;a(2),h(e.currentIp),a(2),h(e.lastIp)}}function wi(t,l){t&1&&s(0," too many login attempts ")}function Ti(t,l){if(t&1&&s(0),t&2){let e=c(4).$implicit;T(" ",e.userIsActiveText," ")}}function Ai(t,l){if(t&1&&(n(0,"span",11),f(1,wi,1,0)(2,Ti,1,1),o()),t&2){let e=c(3).$implicit;Ee(e.isActive?"text-success":"text-danger"),a(),g(!e.isActive&&e.passwordAttempts?1:2)}}function Ui(t,l){if(t&1&&(n(0,"div",28)(1,"div"),s(2),C(3,"amDateFormat"),o(),n(4,"div"),s(5),C(6,"amDateFormat"),o()()),t&2){let e=c(5).$implicit;a(2),h(y(3,2,e.currentAccess)),a(3),h(y(6,4,e.lastAccess))}}function Di(t,l){if(t&1&&s(0),t&2){let e=c(5).$implicit;T(" ",e.hTimeAgo," ")}}function Ei(t,l){if(t&1){let e=R();n(0,"div",38),u("mouseover",function(){b(e);let i=c(4).$implicit;return x(i.currentAccessHover=!0)})("focus",function(){b(e);let i=c(4).$implicit;return x(i.currentAccessHover=!0)})("mouseleave",function(){b(e);let i=c(4).$implicit;return x(i.currentAccessHover=!1)}),f(1,Ui,7,6,"div",28)(2,Di,1,1),o()}if(t&2){let e=c(4).$implicit;a(),g(e.currentAccessHover?1:2)}}function Fi(t,l){t&1&&(n(0,"span",11),s(1,"never"),o())}function Ii(t,l){if(t&1&&f(0,Ei,3,1,"div",37)(1,Fi,2,0,"span",11),t&2){let e=c(3).$implicit;g(e.currentAccess?0:1)}}function ki(t,l){if(t&1&&(n(0,"td"),f(1,gi,8,4,"div",27)(2,hi,4,2,"div",28)(3,bi,2,0)(4,Si,1,1)(5,yi,5,2,"div",28)(6,Ai,3,4,"span",29)(7,Ii,2,1),o()),t&2){let e,r=c().$implicit,i=c().$implicit;Me("",r.value.class," ",r.value.newly?"prop-newly-"+i[r.value.newly]:"",""),De("width",r.value.width,"%"),A("text-align-center",r.value.textCenter),a(),g((e=r.key)==="login"?1:e==="fullName"?2:e==="managers"?3:e==="storage"?4:e==="currentIp"?5:e==="isActive"?6:e==="currentAccess"?7:-1)}}function Ni(t,l){if(t&1&&f(0,ki,8,9,"td",26),t&2){let e=l.$implicit;g(e.value.show?0:-1)}}function Vi(t,l){if(t&1){let e=R();n(0,"tr",25),u("click",function(){let i=b(e).$implicit,p=c();return x(p.onSelect(i))})("contextmenu",function(i){let p=b(e).$implicit,_=c();return x(_.onTargetContextMenu(i,p))})("pressup",function(i){let p=b(e).$implicit,_=c();return x(_.onTargetContextMenu(i,p))})("tap",function(){b(e);let i=c();return x(i.openDialog())}),E(1,Ni,1,1,null,null,Tt),C(3,"keyvalue"),o()}if(t&2){let e=l.$implicit,r=c();A("disabled",!e.isActive)("selected",e.id===(r.selected==null?null:r.selected.id)),a(),F(U(3,4,r.tableHeaders,r.originalOrderKeyValue))}}function Pi(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2),o()),t&2){let e=c();a(),m("icon",e.icons.faUserPlus),a(),T("New ",e.guestsView?"guest":"user","")}}function Mi(t,l){}function Gi(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2,"Refresh"),o()),t&2){let e=c();a(),m("icon",e.icons.faArrowRotateRight)}}function Ri(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2),o()),t&2){let e=c();a(),m("icon",e.icons.faUserPen),a(),T("Edit ",e.guestsView?"guest":"user","")}}function Li(t,l){}function Oi(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2,"Impersonate identity"),o()),t&2){let e=c();a(),m("icon",e.icons.faUserSecret)}}var wo=(()=>{class t{constructor(e,r,i,p,_){this.locale=e,this.router=r,this.activatedRoute=i,this.layout=p,this.adminService=_,this.originalOrderKeyValue=at,this.icons={faRotate:et,faUserPlus:fe,faUserPen:ue,faArrowDown:Ye,faArrowUp:Ze,faKey:Qe,faUserSecret:_e,faArrowRotateRight:Xe,faToggleOn:ze,faToggleOff:qe},this.tableHeaders={login:{label:"Login",width:30,textCenter:!1,class:"",show:!0,sortable:!0},fullName:{label:"Full name",width:15,class:"",textCenter:!1,show:!0,sortable:!0},managers:{label:"Managers",width:15,class:"d-none d-md-table-cell",textCenter:!0,show:!1,sortable:!0},storage:{label:"Storage Space",width:15,class:"d-none d-md-table-cell",textCenter:!0,show:!0,sortable:!0},isActive:{label:"Status",width:10,textCenter:!0,class:"d-none d-lg-table-cell",show:!0,sortable:!0},currentIp:{label:"IP",width:10,textCenter:!1,class:"d-none d-lg-table-cell",show:!0},currentAccess:{label:"Seen",width:12,textCenter:!0,class:"d-none d-lg-table-cell",newly:"newly",show:!0,sortable:!0}},this.sortSettings={default:[{prop:"login",type:"string"}],login:[{prop:"login",type:"string"}],fullName:[{prop:"fullName",type:"string"}],managers:[{prop:"managers",type:"length"}],storage:[{prop:"storageUsage",type:"number"}],currentAccess:[{prop:"currentAccess",type:"date"}],isActive:[{prop:"isActive",type:"number"}]},this.sortTable=new ft(this.constructor.name,this.sortSettings),this.guestsView=!1,this.loading=!1,this.selected=null,this.users=[],this.layout.setBreadcrumbIcon(ot.USERS),this.activatedRoute.data.subscribe(S=>{this.guestsView=S.type===z.GUEST,this.setEnv()})}setEnv(){this.tableHeaders.managers.show=this.guestsView,this.tableHeaders.storage.show=!this.guestsView,this.loadUsersOrGuests(),this.layout.setBreadcrumbNav({url:this.guestsView?`/${q.BASE}/${q.GUESTS}/${Fe.GUESTS}`:`/${q.BASE}/${q.USERS}/${Fe.USERS}`,splicing:2,translating:!0,sameLink:!0})}loadUsersOrGuests(){this.loading=!0,this.onSelect(),this.adminService.listUsers(this.guestsView).subscribe({next:e=>{this.sortBy(this.sortTable.sortParam.column,!1,e),this.scrollView.scrollInto(-1),this.loading=!1},error:e=>{this.users=[],this.layout.sendNotification("error",this.guestsView?"Guests":"Users","Unable to load",e),this.loading=!1}})}onSelect(e=null){this.selected=e}onGuestsView(e){this.guestsView=e,this.router.navigate([q.BASE,e?q.GUESTS:q.USERS]).catch(r=>console.error(r))}onContextMenu(e){e.preventDefault(),e.stopPropagation(),this.layout.openContextMenu(e,this.mainContextMenu)}onTargetContextMenu(e,r){e.preventDefault(),e.type==="contextmenu"&&e.stopPropagation(),this.onSelect(r),this.layout.openContextMenu(e,this.targetContextMenu)}sortBy(e,r=!0,i){this.users=this.sortTable.sortBy(e,r,i||this.users)}openDialog(e=!1){this.guestsView?this.openGuestDialog(e):this.openUserDialog(e)}openUserDialog(e=!1){e?this.layout.openDialog(Ve,"md").content.userChange.pipe(Q(1)).subscribe(i=>{let[p,_]=i;p==="add"&&(this.sortBy(this.sortTable.sortParam.column,!1,[...this.users,_]),this.onSelect(_))}):this.adminService.getUser(this.selected.id).subscribe({next:r=>{this.layout.openDialog(Ve,"md",{initialState:{user:r}}).content.userChange.pipe(Q(1)).subscribe(p=>{let[_,S]=p;_==="update"?this.selected=Object.assign(this.selected,S):_==="delete"&&(this.onSelect(),this.sortBy(this.sortTable.sortParam.column,!1,this.users.filter(Ue=>Ue.id!==S.id)))})},error:r=>this.layout.sendNotification("error","Edit group",this.selected.login,r)})}openGuestDialog(e=!1){e?this.layout.openDialog(Ne,"md").content.guestChange.pipe(Q(1)).subscribe(i=>{let[p,_]=i,S=new Ct(_);p==="add"&&(this.sortBy(this.sortTable.sortParam.column,!1,[...this.users,S]),this.onSelect(S))}):this.adminService.getUser(this.selected.id,!0).subscribe({next:r=>{this.layout.openDialog(Ne,"md",{initialState:{guest:r}}).content.guestChange.pipe(Q(1)).subscribe(p=>{let[_,S]=p;_==="update"?this.selected=Object.assign(this.selected,S):_==="delete"&&(this.onSelect(),this.sortBy(this.sortTable.sortParam.column,!1,this.users.filter(Ue=>Ue.id!==S.id)))})},error:r=>this.layout.sendNotification("error","Guest error",this.selected.fullName,r)})}impersonateIdentity(){this.layout.openDialog(xt,"sm",{initialState:{user:this.selected}})}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(Le),v(Re),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-users"]],viewQuery:function(r,i){if(r&1&&(ne(ke,5),ne(Ie,7),ne(li,7),ne(mi,7)),r&2){let p;oe(p=ae())&&(i.scrollView=p.first),oe(p=ae())&&(i.inputFilter=p.first),oe(p=ae())&&(i.mainContextMenu=p.first),oe(p=ae())&&(i.targetContextMenu=p.first)}},decls:47,vars:40,consts:[["MainContextMenu",""],["TargetContextMenu",""],[1,"app-top-menu"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","tooltip"],[3,"icon","animation"],[3,"icon"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","disabled","tooltip"],[1,"ms-auto"],["btnCheckbox","","type","button",1,"btn","btn-sm","btn-custom","me-1",3,"ngModelChange","ngModel"],[1,"d-flex","align-items-center"],[1,"me-2",3,"icon"],["l10nTranslate",""],[1,"btn-group","btn-group-sm"],[1,"d-none","d-sm-block"],[1,"app-table"],[3,"contextmenu","bufferAmount","items"],["tabindex","-1"],[3,"disabled","selected"],[1,"app-foot-menu"],[1,"mx-auto"],["contextMenuItem","",3,"execute"],["contextMenuItem","",3,"divider"],["l10nTranslate","",3,"width","text-align-center","cursor-pointer","class"],["l10nTranslate","",3,"click"],[3,"icon","fixedWidth"],[3,"click","contextmenu","pressup","tap"],[3,"width","text-align-center","class"],[1,"d-flex","align-items-center","avatar"],[1,"d-flex","flex-column"],["l10nTranslate","",3,"class"],["alt","",1,"avatar-img",3,"src"],["draggable","false",1,"no-pointer-events"],[1,"m-0",3,"icon"],["draggable","false",1,"no-pointer-events","text-muted","fs-xxxs"],["draggable","false","l10nTranslate","",1,"no-pointer-events","text-muted","fs-xxxs"],[3,"user","isMember"],[3,"item"],[1,"d-flex","justify-content-center"],[1,"d-flex","justify-content-center",3,"mouseover","focus","mouseleave"]],template:function(r,i){if(r&1){let p=R();n(0,"div",2)(1,"button",3),C(2,"translate"),u("click",function(){return b(p),x(i.loadUsersOrGuests())}),d(3,"fa-icon",4),o(),n(4,"button",3),C(5,"translate"),u("click",function(){return b(p),x(i.openDialog(!0))}),d(6,"fa-icon",5),o(),n(7,"button",6),C(8,"translate"),u("click",function(){return b(p),x(i.openDialog())}),d(9,"fa-icon",5),o(),n(10,"button",6),C(11,"translate"),u("click",function(){return b(p),x(i.impersonateIdentity())}),d(12,"fa-icon",5),o(),n(13,"div",7)(14,"button",8),u("ngModelChange",function(S){return b(p),x(i.onGuestsView(S))}),n(15,"div",9),d(16,"fa-icon",10),n(17,"span",11),s(18,"Guests"),o()()(),n(19,"div",12),d(20,"app-input-filter",13),o()()(),n(21,"table",14)(22,"thead")(23,"tr"),E(24,_i,1,1,null,null,Tt),C(26,"keyvalue"),o()()(),n(27,"app-virtual-scroll",15),C(28,"searchFilter"),u("contextmenu",function(S){return b(p),x(i.onContextMenu(S))}),n(29,"table",14)(30,"tbody",16),E(31,Vi,4,7,"tr",17,pi),o()()(),n(33,"div",18)(34,"span",19),s(35),C(36,"translate"),o()(),n(37,"context-menu",null,0),f(39,Pi,3,2,"ng-template",20),u("execute",function(){return b(p),x(i.openDialog(!0))}),f(40,Mi,0,0,"ng-template",21)(41,Gi,3,1,"ng-template",20),u("execute",function(){return b(p),x(i.loadUsersOrGuests())}),o(),n(42,"context-menu",null,1),f(44,Ri,3,2,"ng-template",20),u("execute",function(){return b(p),x(i.openDialog())}),f(45,Li,0,0,"ng-template",21)(46,Oi,3,1,"ng-template",20),u("execute",function(){return b(p),x(i.impersonateIdentity())}),o()}r&2&&(a(),m("tooltip",U(2,19,"Refresh",i.locale.language)),a(2),m("icon",i.icons.faRotate)("animation",i.loading?"spin":null),a(),m("tooltip",U(5,22,i.guestsView?"New guest":"New user",i.locale.language)),a(2),m("icon",i.icons.faUserPlus),a(),m("disabled",!i.selected)("tooltip",U(8,25,i.guestsView?"Edit guest":"Edit user",i.locale.language)),a(2),m("icon",i.icons.faUserPen),a(),m("disabled",!i.selected)("tooltip",U(11,28,"Impersonate identity",i.locale.language)),a(2),m("icon",i.icons.faUserSecret),a(2),m("ngModel",i.guestsView),a(2),m("icon",i.guestsView?i.icons.faToggleOn:i.icons.faToggleOff),a(8),F(U(26,31,i.tableHeaders,i.originalOrderKeyValue)),a(3),m("bufferAmount",5)("items",U(28,34,i.users,i.inputFilter.search())),a(4),F(i.scrollView==null?null:i.scrollView.viewPortItems),a(4),L("",i.users.length," ",U(36,37,i.guestsView?"guests":"users",i.locale.language),""),a(5),m("divider",!0),a(5),m("divider",!0))},dependencies:[P,Z,Ie,je,Ge,V,ke,_t,Ce,ee,ct,pt,mt,ut,Be,O,Oe,gt],encapsulation:2})}}return t})();export{wo as AdminUsersComponent};
|
|
1
|
+
import{a as ht}from"./chunk-2QEYCCHN.js";import{a as Ct,b as G,c as bt}from"./chunk-CTWOQLAR.js";import{a as q,b as Fe,c as ot,e as te}from"./chunk-GI2LXVWQ.js";import{a as vt}from"./chunk-5OIPLRAE.js";import{d as Ce}from"./chunk-EWY4ALVF.js";import"./chunk-JXZCNFW7.js";import{a as gt}from"./chunk-VIL6L67B.js";import{a as ee,b as he,c as ve,d as be,f as Se,i as ye}from"./chunk-5JDPARJT.js";import{a as Ie,b as ke,c as _t,d as ft}from"./chunk-WA3LPP4G.js";import{a as H,b as xe}from"./chunk-2CQOSX2Q.js";import"./chunk-Y6IYSEKU.js";import{f as dt,g as ut}from"./chunk-ZZGFGD5E.js";import{Cb as mt,Db as pt,Eb as ct,J as it,K as z,M as nt,Q as ge,Sb as M,gb as at,v as je,xb as rt,yb as st,zb as lt}from"./chunk-HDDBV3QQ.js";import{b as Re,d as Le}from"./chunk-UGSGMP2I.js";import{Ad as Z,Bb as R,Bd as V,Dc as le,Dd as P,Eb as u,Ec as Ge,Fb as c,Ff as et,Gf as tt,L as Q,Ma as K,Mb as ne,Nb as oe,Nf as fe,Ob as ae,Oe as Xe,Qb as s,Qd as qe,Rb as h,Sa as a,Sb as T,Tb as L,Te as _e,Xa as v,Xc as J,Yc as me,_c as D,_d as He,ab as I,ad as O,bc as C,bd as B,cc as y,cd as X,db as se,dc as U,eb as Pe,ed as w,fb as f,fd as Oe,fe as Qe,jd as $,kd as Y,lb as m,ld as pe,mb as De,md as ce,nb as A,nd as de,ne as ze,ob as Ee,oe as Ke,pa as b,pb as k,pf as Ye,qa as x,qb as Me,rb as g,re as ue,sb as W,sd as Be,tb as E,td as j,ub as F,ud as N,vb as n,ve as We,wa as re,wb as o,wd as $e,wf as Ze,xb as d,xe as Je}from"./chunk-FPEGN42P.js";import"./chunk-GAL4ENT6.js";function At(t,l){if(t&1&&(d(0,"fa-icon",42),n(1,"span"),s(2),o()),t&2){let e=c();m("icon",e.icons.faPen),a(2),h(e.guest.fullName)}}function Ut(t,l){if(t&1&&(d(0,"fa-icon",42),n(1,"span",43),s(2,"New guest"),o()),t&2){let e=c();m("icon",e.icons.faPlus)}}function Dt(t,l){if(t&1&&d(0,"fa-icon",2),t&2){let e=c();m("icon",e.icons.faSpinner)}}function Et(t,l){t&1&&(n(0,"h4",3)(1,"span",43),s(2,"Edit guest"),o()())}function Ft(t,l){if(t&1&&(d(0,"fa-icon",44),n(1,"span",45),s(2,"Account"),o()),t&2){let e=c();m("icon",e.icons.faAddressCard)}}function It(t,l){if(t&1&&d(0,"app-password-strength-bar",22),t&2){let e=c();m("passwordToCheck",e.guestForm.value.password)}}function kt(t,l){if(t&1&&(n(0,"option",26),s(1),o()),t&2){let e=l.$implicit;m("ngValue",e),a(),h(e)}}function Nt(t,l){if(t&1&&(n(0,"option",34),s(1),o()),t&2){let e=l.$implicit,r=c();m("ngValue",r.allNotifications.indexOf(e)),a(),h(e)}}function Vt(t,l){if(t&1&&(n(0,"div"),s(1),C(2,"amDateFormat"),o(),n(3,"div"),s(4),C(5,"amDateFormat"),o()),t&2){let e=c(2);a(),L("",y(2,4,e.guest.currentAccess)," - ",e.guest.currentIp,""),a(3),L("",y(5,6,e.guest.lastAccess)," - ",e.guest.lastIp,"")}}function Pt(t,l){t&1&&(n(0,"span",37),s(1,"never"),o())}function Mt(t,l){if(t&1&&(n(0,"div",11)(1,"div",12)(2,"label",46),s(3,"Creation date"),o(),n(4,"div",47),s(5),C(6,"amDateFormat"),o()(),n(7,"div",48)(8,"label",49),s(9,"Last accesses"),o(),n(10,"div",50),f(11,Vt,6,8)(12,Pt,2,0,"span",37),o()()()),t&2){let e=c();a(5),h(y(6,2,e.guest.createdAt)),a(6),g(e.guest.lastAccess?11:12)}}function Gt(t,l){if(t&1&&(d(0,"fa-icon",44),n(1,"span",51),s(2,"Managers"),o(),n(3,"span"),s(4),o()),t&2){let e=c();m("icon",e.icons.faUsersGear),a(4),T("(",e.guestForm.value.managers.length||0,")")}}function Rt(t,l){t&1&&(n(0,"small",37),s(1,"At least one manager is required"),o())}function Lt(t,l){if(t&1){let e=R();n(0,"button",52),u("click",function(){b(e);let i=c();return x(i.confirmDeletion=!0)}),s(1," Remove "),o()}if(t&2){let e=c();m("disabled",e.confirmDeletion)}}var Ne=(()=>{class t extends ht{constructor(e,r,i,p){super(e,r,i),this.adminService=p}searchMembers(e){let r={search:e,ignoreUserIds:this.guestForm.value.managers.map(i=>i.id),usersRole:z.USER,onlyUsers:!0};return this.adminService.searchMembers(r)}onSubmit(){if(this.submitted=!0,this.confirmDeletion)this.adminService.deleteUser(this.guest.id,null,!0).subscribe({next:()=>{this.guestChange.emit(["delete",this.guest]),this.layout.sendNotification("success","Guest deleted",this.guest.login),this.layout.closeDialog()},error:e=>this.onError(e)});else if(!this.guest)this.adminService.createUser(this.makeDto(!0),!0).subscribe({next:e=>{this.guestChange.emit(["add",e]),this.layout.sendNotification("success","Guest created",this.guestForm.value.login),this.layout.closeDialog()},error:e=>this.onError(e)});else{let e=this.makeDto();if(!Object.keys(e).length){this.loading=!1,this.submitted=!1;return}this.adminService.updateUser(this.guest.id,e,!0).subscribe({next:r=>{r?this.guestChange.emit(["update",r]):this.guestChange.emit(["delete",this.guest]),this.layout.sendNotification("success","Guest updated",this.guestForm.value.login),this.layout.closeDialog()},error:r=>this.onError(r)})}}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(dt),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-guest-dialog"]],features:[Pe],decls:70,vars:40,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],["type","pills",3,"justified"],[1,"my-3"],["customClass","tab-dialog form-validation",3,"selectTab"],["tabHeading",""],[1,"d-flex","flex-column"],[1,"d-flex","col-12","pb-3"],[1,"flex-fill","col-6","pe-4"],["for","login","l10nTranslate",""],["id","login","appAutofocus","","formControlName","login","autocomplete","off","type","text",1,"form-control","form-control-sm",3,"autoSelect"],[1,"flex-fill","col-6","ps-4"],["for","email","l10nTranslate",""],["id","email","formControlName","email","autocomplete","off","type","email",1,"form-control","form-control-sm"],["for","firstName","l10nTranslate",""],["id","firstName","formControlName","firstName","autocomplete","off","type","text",1,"form-control","form-control-sm"],["for","lastName","l10nTranslate",""],["id","lastName","formControlName","lastName","autocomplete","off","type","text",1,"form-control","form-control-sm"],[1,"position-absolute","pe-4",2,"right","50%","padding-top","6px",3,"passwordToCheck"],["id","password","placeholder","Set a password",3,"passwordChange","password","showGenerator","showLabel","isRequired"],["for","language","l10nTranslate",""],["id","language","formControlName","language",1,"form-control","form-select","form-select-sm"],[3,"ngValue"],[1,"d-flex","flex-column","col-6","pe-4"],["for","account","l10nTranslate",""],["id","account",1,"form-check","form-switch","form-check-inline"],["for","isActive",1,"form-check-label"],["formControlName","isActive","id","isActive","type","checkbox",1,"form-check-input"],["for","notification","l10nTranslate",""],["id","notification","formControlName","notification",1,"form-control","form-select","form-select-sm"],["l10nTranslate","",3,"ngValue"],["customClass","tab-dialog",3,"selectTab"],[3,"membersChange","members","withPermissions","customPlaceholder","searchFunction"],["l10nTranslate","",1,"text-danger"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"disabled"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",3,"click","disabled"],[1,"me-2",3,"icon"],["l10nTranslate",""],[3,"icon"],["l10nTranslate","",1,"ms-2"],["for","created","l10nTranslate",""],["id","created"],[1,"d-flex","flex-column","align-items-end","col-6","ps-4"],["for","access","l10nTranslate",""],["id","access",1,"text-align-end"],["l10nTranslate","",1,"ms-2","me-1"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),f(2,At,3,2)(3,Ut,3,1)(4,Dt,1,1,"fa-icon",2),o(),f(5,Et,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.layout.closeDialog()}),o()(),n(7,"div",5)(8,"tabset",6),d(9,"hr",7),n(10,"tab",8),u("selectTab",function(){return i.tabView=null}),f(11,Ft,3,1,"ng-template",9),n(12,"div",10)(13,"div",11)(14,"div",12)(15,"label",13),s(16,"Login"),o(),d(17,"input",14),o(),n(18,"div",15)(19,"label",16),s(20,"Email"),o(),d(21,"input",17),o()(),n(22,"div",11)(23,"div",12)(24,"label",18),s(25,"First name"),o(),d(26,"input",19),o(),n(27,"div",15)(28,"label",20),s(29,"Last name"),o(),d(30,"input",21),o()(),n(31,"div",11)(32,"div",12),f(33,It,1,1,"app-password-strength-bar",22),n(34,"app-input-password",23),u("passwordChange",function(_){return i.updatePassword(_)}),o()(),n(35,"div",15)(36,"label",24),s(37,"Language"),o(),n(38,"select",25),E(39,kt,2,2,"option",26,W),o()()(),n(41,"div",11)(42,"div",27)(43,"label",28),s(44,"Account status"),o(),n(45,"div",29)(46,"label",30),d(47,"input",31),n(48,"span"),s(49),C(50,"translate"),C(51,"titlecase"),o()()()(),n(52,"div",15)(53,"label",32),s(54,"Notification"),o(),n(55,"select",33),E(56,Nt,2,2,"option",34,W),o()()(),f(58,Mt,13,4,"div",11),o()(),n(59,"tab",35),u("selectTab",function(){return i.tabView="managers"}),f(60,Gt,5,2,"ng-template",9),n(61,"div",7)(62,"app-user-search",36),u("membersChange",function(_){return i.updateManagers(_)}),o(),f(63,Rt,2,0,"small",37),o()()()(),n(64,"div",38),f(65,Lt,2,1,"button",39),n(66,"button",40),u("click",function(){return i.onCancel()}),s(67,"Cancel"),o(),n(68,"button",41),u("click",function(){return i.onSubmit()}),s(69),o()()),r&2&&(a(2),g(i.guest?2:3),a(2),g(i.loading?4:-1),a(),g(i.guest?5:-1),a(),k("btn-close btn-close-white ",i.guest?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.guestForm),a(),m("justified",!0),a(9),A("is-invalid",i.guestForm.controls.login.invalid),m("autoSelect",!1),a(4),A("is-invalid",i.guestForm.controls.email.invalid),a(5),A("is-invalid",i.guestForm.controls.firstName.invalid),a(7),g(i.guestForm.value.password!==i.defaultPassword?33:-1),a(),m("password",i.guestForm.value.password)("showGenerator",!0)("showLabel",!0)("isRequired",!0),a(5),F(i.languages),a(9),A("text-danger",!i.guestForm.value.isActive),a(),T(" ",y(51,38,U(50,35,i.guestForm.value.isActive?"active":"suspended",i.locale.language))," "),a(7),F(i.allNotifications),a(2),g(i.guest?58:-1),a(4),m("members",i.guestForm.value.managers)("withPermissions",!1)("customPlaceholder","Type to search for managers to add")("searchFunction",i.searchMembers.bind(i)),a(),g(i.guestForm.value.managers.length?-1:63),a(2),g(i.guest!=null&&i.guest.id?65:-1),a(3),k("btn btn-sm ",i.confirmDeletion?"btn-danger":"btn-primary",""),m("disabled",i.guestForm.invalid||i.submitted),a(),T(" ",i.confirmDeletion?"Confirm deletion":"Confirm"," "))},dependencies:[P,V,ee,j,ce,de,me,J,pe,O,B,$,Y,H,xe,Se,Z,le,ye,he,ve,be],encapsulation:2})}}return t})();function Bt(t,l){t&1&&(n(0,"h4",3)(1,"span",13),s(2,"Impersonate identity"),o()())}var xt=(()=>{class t{constructor(e,r,i){this.locale=e,this.layout=r,this.adminService=i,this.submitted=!1,this.icons={faUserSecret:_e},this.passwordMinLength=8,this.impersonateUserForm=new X({password:new w("",D.required)})}onSubmit(){this.submitted=!0,this.adminService.impersonateUser(this.user.id,{password:this.impersonateUserForm.value.password}).subscribe({next:e=>{this.layout.closeDialog(),setTimeout(()=>this.adminService.initImpersonateUser(e),500)},error:e=>{this.submitted=!1,this.layout.sendNotification("error","Impersonate identity",this.user.login,e)}})}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-impersonate-user-dialog"]],inputs:{user:"user"},decls:19,vars:16,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],[1,"d-flex","align-items-center","avatar","mb-3"],["alt","",1,"avatar-img",3,"src"],[1,"fw-bold","mx-2"],["id","password","placeholder","Enter your password to confirm",3,"passwordChange","password","passwordMinLength","isRequired","focus"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"],["l10nTranslate",""]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),n(3,"span"),s(4),o()(),f(5,Bt,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.layout.closeDialog()}),o()(),n(7,"div",5)(8,"div",6),d(9,"img",7),n(10,"span",8),s(11),C(12,"capitalize"),o()(),n(13,"app-input-password",9),u("passwordChange",function(_){return i.impersonateUserForm.controls.password.setValue(_)}),o()(),n(14,"div",10)(15,"button",11),u("click",function(){return i.layout.closeDialog()}),s(16,"Cancel"),o(),n(17,"button",12),u("click",function(){return i.onSubmit()}),s(18," Confirm "),o()()),r&2&&(a(2),m("icon",i.icons.faUserSecret),a(2),h(i.user.fullName),a(),g(i.user?5:-1),a(),k("btn-close btn-close-white ",i.user?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.impersonateUserForm),a(2),m("src",i.user.avatarUrl,K),a(2),h(y(12,14,i.user.login)),a(2),m("password",i.impersonateUserForm.value.password)("passwordMinLength",i.passwordMinLength)("isRequired",!0)("focus",!0),a(4),m("disabled",i.impersonateUserForm.invalid||i.submitted))},dependencies:[P,V,j,B,$,te,H],encapsulation:2})}}return t})();var St=(()=>{class t{constructor(e){this.translate=e}transform(e,r=!1,i=null,p=", "){return e.length?(i?e.map(S=>S[i]):e.concat()).sort().map(S=>new te().transform(r?this.translate.translate(S):S)).join(p):""}static{this.\u0275fac=function(r){return new(r||t)(v($e,16))}}static{this.\u0275pipe=se({name:"join",type:t,pure:!0})}}return t})();var yt=(()=>{class t{transform(e,r=","){return e?.length?e.split(r):[]}static{this.\u0275fac=function(r){return new(r||t)}}static{this.\u0275pipe=se({name:"split",type:t,pure:!0})}}return t})();function $t(t,l){t&1&&(n(0,"h4",3)(1,"span",9),s(2,"Delete user"),o()())}var wt=(()=>{class t{constructor(e,r,i){this.locale=e,this.layout=r,this.adminService=i,this.wasDeleted=new re,this.submitted=!1,this.icons={faUserMinus:Ke},this.deleteUserForm=new X({adminPassword:new w("",D.required),deleteSpace:new w(!1)})}onClose(){this.wasDeleted.emit(!1),this.layout.closeDialog()}onSubmit(){this.submitted=!0,this.adminService.deleteUser(this.user.id,{adminPassword:this.deleteUserForm.value.adminPassword,deleteSpace:this.deleteUserForm.value.deleteSpace}).subscribe({next:()=>{this.wasDeleted.emit(!0),this.layout.sendNotification("success","Delete user",this.user.login),this.onClose()},error:e=>{this.submitted=!1,this.layout.sendNotification("error","Delete user",this.user.login,e)}})}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-user-delete-dialog"]],inputs:{user:"user"},outputs:{wasDeleted:"wasDeleted"},decls:27,vars:15,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],[1,"d-flex","align-items-center","avatar","mb-3"],["alt","",1,"avatar-img",3,"src"],[1,"fw-bold","mx-2"],["l10nTranslate",""],["id","password","placeholder","Enter your password to confirm",3,"passwordChange","password","isRequired","focus"],[1,"form-check","form-check-inline","mt-3"],[1,"d-flex"],["for","deleteSpace",1,"form-check-label"],["formControlName","deleteSpace","id","deleteSpace","type","checkbox",1,"form-check-input"],[1,"modal-footer"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),d(2,"fa-icon",2),n(3,"span"),s(4),o()(),f(5,$t,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.onClose()}),o()(),n(7,"div",5)(8,"div",6),d(9,"img",7),n(10,"span",8),s(11),C(12,"capitalize"),o(),n(13,"span",9),s(14,"will be permanently removed"),o()(),n(15,"app-input-password",10),u("passwordChange",function(_){return i.deleteUserForm.controls.adminPassword.setValue(_)}),o(),n(16,"div",11)(17,"div",12)(18,"label",13),d(19,"input",14),n(20,"span",9),s(21,"Delete all user files"),o()()()()(),n(22,"div",15)(23,"button",16),u("click",function(){return i.onClose()}),s(24,"Cancel"),o(),n(25,"button",17),u("click",function(){return i.onSubmit()}),s(26," Confirm "),o()()),r&2&&(a(2),m("icon",i.icons.faUserMinus),a(2),h(i.user.fullName),a(),g(i.user?5:-1),a(),k("btn-close btn-close-white ",i.user?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.deleteUserForm),a(2),m("src",i.user.avatarUrl,K),a(2),h(y(12,13,i.user.login)),a(4),m("password",i.deleteUserForm.value.adminPassword)("isRequired",!0)("focus",!0),a(10),m("disabled",i.deleteUserForm.invalid||i.submitted))},dependencies:[P,V,j,J,O,B,$,Y,te,H],encapsulation:2})}}return t})();var jt=(t,l)=>l.id;function qt(t,l){if(t&1&&(d(0,"fa-icon",47),n(1,"span"),s(2),o()),t&2){let e=c();m("icon",e.icons.faUserPen),a(2),h(e.user.fullName)}}function Ht(t,l){if(t&1&&(d(0,"fa-icon",47),n(1,"span",40),s(2,"New user"),o()),t&2){let e=c();m("icon",e.icons.faUserPlus)}}function Qt(t,l){if(t&1&&d(0,"fa-icon",2),t&2){let e=c();m("icon",e.icons.faSpinner)}}function zt(t,l){t&1&&(n(0,"h4",3)(1,"span",40),s(2,"Edit user"),o()())}function Kt(t,l){if(t&1&&(d(0,"fa-icon",48),n(1,"span",49),s(2,"Account"),o()),t&2){let e=c();m("icon",e.icons.faAddressCard)}}function Wt(t,l){if(t&1&&d(0,"app-password-strength-bar",22),t&2){let e=c();m("passwordToCheck",e.userForm.value.password)}}function Jt(t,l){if(t&1&&(n(0,"option",26),s(1),o()),t&2){let e=l.$implicit;m("ngValue",e),a(),h(e)}}function Xt(t,l){if(t&1&&(n(0,"option",30),s(1),o()),t&2){let e=l.$implicit,r=c();m("ngValue",r.allNotifications.indexOf(e)),a(),h(e)}}function Yt(t,l){if(t&1&&(n(0,"div",11)(1,"div",12)(2,"label",50),s(3,"Storage Usage"),o(),d(4,"app-storage-usage",51),o(),d(5,"div",15),o()),t&2){let e=c();a(4),m("item",e.user)}}function Zt(t,l){if(t&1&&(n(0,"div"),s(1),C(2,"amDateFormat"),o(),n(3,"div"),s(4),C(5,"amDateFormat"),o()),t&2){let e=c(2);a(),L("",y(2,4,e.user.currentAccess)," - ",e.user.currentIp,""),a(3),L("",y(5,6,e.user.lastAccess)," - ",e.user.lastIp,"")}}function ei(t,l){t&1&&(n(0,"span",57),s(1,"never"),o())}function ti(t,l){if(t&1&&(n(0,"div",11)(1,"div",12)(2,"label",52),s(3,"Creation date"),o(),n(4,"div",53),s(5),C(6,"amDateFormat"),o()(),n(7,"div",54)(8,"label",55),s(9,"Last accesses"),o(),n(10,"div",56),f(11,Zt,6,8)(12,ei,2,0,"span",57),o()()()),t&2){let e=c();a(5),h(y(6,2,e.user.createdAt)),a(6),g(e.user.lastAccess?11:12)}}function ii(t,l){if(t&1&&(d(0,"fa-icon",48),n(1,"span",49),s(2,"Permissions"),o()),t&2){let e=c();m("icon",e.icons.faShieldHalved)}}function ni(t,l){if(t&1&&(n(0,"div",60)(1,"div",61),d(2,"fa-icon",62),n(3,"span"),s(4),o()(),n(5,"div",63),s(6),C(7,"split"),C(8,"join"),o()()),t&2){let e=c().$implicit,r=c(2);a(2),m("icon",r.icons.GROUPS),a(2),h(e.name),a(2),h(U(8,5,y(7,3,e.permissions),!0))}}function oi(t,l){if(t&1&&f(0,ni,9,8,"div",60),t&2){let e=l.$implicit;g(e.permissions?0:-1)}}function ai(t,l){if(t&1&&(n(0,"div",32)(1,"label",58),s(2,"Permissions inherited from groups"),o(),n(3,"div",59),E(4,oi,1,1,null,null,jt),o()()),t&2){let e=c();a(4),F(e.userForm.value.groups)}}function ri(t,l){if(t&1&&(d(0,"fa-icon",48),n(1,"span",64),s(2,"Groups"),o(),n(3,"span"),s(4),o()),t&2){let e=c();m("icon",e.icons.faUsers),a(4),T("(",e.userForm.value.groups.length||0,")")}}function si(t,l){if(t&1){let e=R();n(0,"button",65),u("click",function(){b(e);let i=c();return x(i.confirmDeletion=!0)}),s(1," Remove "),o()}if(t&2){let e=c();m("disabled",e.confirmDeletion)}}var Ve=(()=>{class t{constructor(e,r,i){this.locale=e,this.layout=r,this.adminService=i,this.user=null,this.userChange=new re,this.submitted=!1,this.loading=!1,this.confirmDeletion=!1,this.icons={GROUPS:rt.GROUPS,faUserPlus:fe,faUserPen:ue,faSpinner:tt,faAddressCard:We,faUsers:He,faShieldHalved:Je},this.allNotifications=Object.values(ge),this.defaultPassword=this.layout.translateString(st),this.languages=this.layout.getLanguages(!0)}ngOnInit(){this.userForm=new X({login:new w(this.user?.login||"",[D.required,D.pattern(it)]),email:new w(this.user?.email||"",[D.required,D.maxLength(255),D.email]),firstName:new w(this.user?.firstName||"",[D.required,D.maxLength(255)]),lastName:new w(this.user?.lastName||"",D.maxLength(255)),password:new w(this.user?this.defaultPassword:"",D.maxLength(255)),language:new w(this.user?.language||null),notification:new w(this.user?.notification||Object.values(ge).indexOf(ge.APPLICATION_EMAIL)),isActive:new w(this.user?this.user.isActive:!0),isAdmin:new w(this.user?this.user.isAdmin:!1),storageQuota:new w(this.user?.storageQuota||null),groups:new w(this.user?.groups||[]),applications:new w(this.user?.applications||[])})}searchMembers(e){let r={search:e,onlyGroups:!0,excludePersonalGroups:!0,withPermissions:!0,ignoreGroupIds:this.userForm.value.groups.map(i=>i.id)};return this.adminService.searchMembers(r)}updateApplications(e){this.userForm.controls.applications.setValue(e),this.userForm.controls.applications.markAsDirty()}updatePassword(e){this.userForm.controls.password.setValue(e),this.userForm.controls.password.markAsDirty()}updateMembers(e){this.userForm.controls.groups.setValue(e),this.userForm.controls.groups.markAsDirty()}updateQuota(e){this.userForm.controls.storageQuota.setValue(e),this.userForm.controls.storageQuota.markAsDirty()}onCancel(){this.confirmDeletion?this.confirmDeletion=!1:this.layout.closeDialog()}onSubmit(){this.submitted=!0,this.confirmDeletion?this.layout.openDialog(wt,"sm",{initialState:{user:this.user}}).content.wasDeleted.pipe(Q(1)).subscribe(r=>{r?(this.userChange.emit(["delete",this.user]),this.layout.closeDialog()):(this.confirmDeletion=!1,this.submitted=!1)}):this.user?this.adminService.updateUser(this.user.id,this.makeDto()).subscribe({next:e=>{this.userChange.emit(["update",e]),this.layout.sendNotification("success","User updated",this.userForm.value.login),this.layout.closeDialog()},error:e=>this.onError(e)}):this.adminService.createUser(this.makeDto(!0)).subscribe({next:e=>{this.userChange.emit(["add",e]),this.layout.sendNotification("success","User created",this.userForm.value.login),this.layout.closeDialog()},error:e=>this.onError(e)})}makeDto(e=!1){let r={};if(e)r=this.userForm.value;else for(let i in this.userForm.controls)this.userForm.controls[i].dirty&&(r[i]=this.userForm.controls[i].value);for(let i in r)switch(i){case"language":r[i]=r[i]===lt?null:r[i];break;case"isAdmin":r.role=r[i]?z.ADMINISTRATOR:z.USER;break;case"applications":r.permissions=r[i].join(nt);break;case"groups":r[i]=r[i].map(p=>p.id);break}return r}onError(e){this.layout.sendNotification("error","Group error",this.userForm.value.login,e),this.submitted=!1}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-user-dialog"]],inputs:{user:"user"},outputs:{userChange:"userChange"},decls:82,vars:44,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["aria-label","Close","type","button",3,"click"],[1,"modal-body",3,"formGroup"],["type","pills",3,"justified"],[1,"my-3"],["customClass","tab-dialog form-validation",3,"selectTab"],["tabHeading",""],[1,"d-flex","flex-column"],[1,"d-flex","col-12","pb-3"],[1,"flex-fill","col-6","pe-4"],["for","login","l10nTranslate",""],["id","login","appAutofocus","","formControlName","login","autocomplete","off","type","text",1,"form-control","form-control-sm",3,"autoSelect"],[1,"flex-fill","col-6","ps-4"],["for","email","l10nTranslate",""],["id","email","formControlName","email","autocomplete","off","type","email",1,"form-control","form-control-sm"],["for","firstName","l10nTranslate",""],["id","firstName","formControlName","firstName","autocomplete","off","type","text",1,"form-control","form-control-sm"],["for","lastName","l10nTranslate",""],["id","lastName","formControlName","lastName","autocomplete","off","type","text",1,"form-control","form-control-sm"],[1,"position-absolute","pe-4",2,"right","50%","padding-top","6px",3,"passwordToCheck"],["id","password","placeholder","Set a password",3,"passwordChange","password","showGenerator","showLabel","isRequired"],["for","language","l10nTranslate",""],["id","language","formControlName","language",1,"form-control","form-select","form-select-sm"],[3,"ngValue"],[3,"quotaChange","quota","fullWidth"],["for","notification","l10nTranslate",""],["id","notification","formControlName","notification",1,"form-control","form-select","form-select-sm"],["l10nTranslate","",3,"ngValue"],["customClass","tab-dialog",3,"selectTab"],[1,"d-flex","flex-column","col-12","pb-3"],["for","account","l10nTranslate",""],["id","account",1,"form-check","form-switch","form-check-inline"],[1,"d-flex"],["for","isActive",1,"form-check-label"],["formControlName","isActive","id","isActive","type","checkbox",1,"form-check-input"],["for","isAdmin",1,"form-check-label"],["formControlName","isAdmin","id","isAdmin","type","checkbox",1,"form-check-input"],["l10nTranslate",""],[3,"permissionsChange","permissions"],[3,"membersChange","members","withPermissions","customPlaceholder","searchFunction"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"disabled"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",3,"click","disabled"],[1,"me-2",3,"icon"],[3,"icon"],["l10nTranslate","",1,"ms-2"],["for","storage","l10nTranslate",""],["id","storage",3,"item"],["for","created","l10nTranslate",""],["id","created"],[1,"d-flex","flex-column","align-items-end","col-6","ps-4"],["for","access","l10nTranslate",""],["id","access",1,"text-align-end"],["l10nTranslate","",1,"text-danger"],["for","groups_permissions","l10nTranslate",""],["id","groups_permissions"],[1,"d-flex","align-items-center","mb-1"],[1,"d-flex","align-items-center","me-5"],[1,"circle-primary-icon","me-2",3,"icon"],[1,"d-flex","fs-xxs","ms-auto"],["l10nTranslate","",1,"ms-2","me-1"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-danger",3,"click","disabled"]],template:function(r,i){r&1&&(n(0,"div",0)(1,"h4",1),f(2,qt,3,2)(3,Ht,3,1)(4,Qt,1,1,"fa-icon",2),o(),f(5,zt,3,0,"h4",3),n(6,"button",4),u("click",function(){return i.layout.closeDialog()}),o()(),n(7,"div",5)(8,"tabset",6),d(9,"hr",7),n(10,"tab",8),u("selectTab",function(){return i.tabView=null}),f(11,Kt,3,1,"ng-template",9),n(12,"div",10)(13,"div",11)(14,"div",12)(15,"label",13),s(16,"Login"),o(),d(17,"input",14),o(),n(18,"div",15)(19,"label",16),s(20,"Email"),o(),d(21,"input",17),o()(),n(22,"div",11)(23,"div",12)(24,"label",18),s(25,"First name"),o(),d(26,"input",19),o(),n(27,"div",15)(28,"label",20),s(29,"Last name"),o(),d(30,"input",21),o()(),n(31,"div",11)(32,"div",12),f(33,Wt,1,1,"app-password-strength-bar",22),n(34,"app-input-password",23),u("passwordChange",function(_){return i.updatePassword(_)}),o()(),n(35,"div",15)(36,"label",24),s(37,"Language"),o(),n(38,"select",25),E(39,Jt,2,2,"option",26,W),o()()(),n(41,"div",11)(42,"div",12)(43,"app-storage-quota",27),u("quotaChange",function(_){return i.updateQuota(_)}),o()(),n(44,"div",15)(45,"label",28),s(46,"Notification"),o(),n(47,"select",29),E(48,Xt,2,2,"option",30,W),o()()(),f(50,Yt,6,1,"div",11),o(),f(51,ti,13,4,"div",11),o(),n(52,"tab",31),u("selectTab",function(){return i.tabView="permissions"}),f(53,ii,3,1,"ng-template",9),n(54,"div",32)(55,"label",33),s(56,"Account status"),o(),n(57,"div",34)(58,"div",35)(59,"label",36),d(60,"input",37),n(61,"span"),s(62),C(63,"translate"),C(64,"titlecase"),o()()(),n(65,"div",35)(66,"label",38),d(67,"input",39),n(68,"span",40),s(69,"Administrator"),o()()()()(),n(70,"app-admin-permissions",41),u("permissionsChange",function(_){return i.updateApplications(_)}),o(),f(71,ai,6,0,"div",32),o(),n(72,"tab",31),u("selectTab",function(){return i.tabView="groups"}),f(73,ri,5,2,"ng-template",9),n(74,"div",7)(75,"app-user-search",42),u("membersChange",function(_){return i.updateMembers(_)}),o()()()()(),n(76,"div",43),f(77,si,2,1,"button",44),n(78,"button",45),u("click",function(){return i.onCancel()}),s(79,"Cancel"),o(),n(80,"button",46),u("click",function(){return i.onSubmit()}),s(81),o()()),r&2&&(a(2),g(i.user?2:3),a(2),g(i.loading?4:-1),a(),g(i.user?5:-1),a(),k("btn-close btn-close-white ",i.user?"ms-2":"ms-auto"," ms-2"),a(),m("formGroup",i.userForm),a(),m("justified",!0),a(9),A("is-invalid",i.userForm.controls.login.invalid),m("autoSelect",!1),a(4),A("is-invalid",i.userForm.controls.email.invalid),a(5),A("is-invalid",i.userForm.controls.firstName.invalid),a(7),g(i.userForm.value.password!==i.defaultPassword?33:-1),a(),m("password",i.userForm.value.password)("showGenerator",!0)("showLabel",!0)("isRequired",!0),a(5),F(i.languages),a(4),m("quota",i.userForm.value.storageQuota)("fullWidth",!0),a(5),F(i.allNotifications),a(2),g(i.user&&i.user.storageUsage?50:-1),a(),g(i.user?51:-1),a(10),A("text-danger",!i.userForm.value.isActive),a(),T(" ",y(64,42,U(63,39,i.userForm.value.isActive?"active":"suspended",i.locale.language))," "),a(8),m("permissions",i.userForm.value.applications),a(),g(i.userForm.value.groups.length?71:-1),a(4),m("members",i.userForm.value.groups)("withPermissions",!1)("customPlaceholder","Type to search for groups to add")("searchFunction",i.searchMembers.bind(i)),a(2),g(i.user!=null&&i.user.id?77:-1),a(3),k("btn btn-sm ",i.confirmDeletion?"btn-danger":"btn-primary",""),m("disabled",i.userForm.invalid||i.submitted),a(),T(" ",i.confirmDeletion?"Confirm deletion":"Confirm"," "))},dependencies:[P,V,ve,be,he,j,ce,de,me,J,pe,O,B,$,Y,H,xe,le,Z,Ce,vt,yt,St,ye,Se,bt,ee],encapsulation:2})}}return t})();var li=["MainContextMenu"],mi=["TargetContextMenu"],Tt=(t,l)=>l.key,pi=(t,l)=>l.id,ci=(t,l)=>l.mid;function di(t,l){if(t&1&&d(0,"fa-icon",24),t&2){let e=c(3);m("icon",e.sortTable.sortParam.asc?e.icons.faArrowDown:e.icons.faArrowUp)("fixedWidth",!1)}}function ui(t,l){if(t&1){let e=R();n(0,"th",23),u("click",function(){b(e);let i=c().$implicit,p=c();return x(p.sortBy(i.key))}),s(1),f(2,di,1,2,"fa-icon",24),o()}if(t&2){let e=c().$implicit,r=c();Ee(e.value.class),De("width",e.value.width,"%"),A("text-align-center",e.value.textCenter)("cursor-pointer",e.value.sortable),a(),T(" ",e.value.label," "),a(),g(r.sortTable.sortParam.column===e.key?2:-1)}}function _i(t,l){if(t&1&&f(0,ui,3,11,"th",22),t&2){let e=l.$implicit;g(e.value.show?0:-1)}}function fi(t,l){if(t&1&&d(0,"fa-icon",32),t&2){let e=c(5);m("icon",e.icons.faKey)}}function gi(t,l){if(t&1&&(n(0,"div",27),d(1,"img",30),n(2,"div",28)(3,"span",31),s(4),f(5,fi,1,1,"fa-icon",32),o(),n(6,"span",33),s(7),o()()()),t&2){let e=c(3).$implicit;a(),m("src",e.avatarUrl,K),a(3),T(" ",e.login," "),a(),g(e.isAdmin?5:-1),a(2),h(e.email)}}function Ci(t,l){if(t&1&&(n(0,"span",34),s(1),o()),t&2){let e=c(4).$implicit;a(),h(e.userRoleText)}}function hi(t,l){if(t&1&&(n(0,"div",28)(1,"span",31),s(2),o(),f(3,Ci,2,1,"span",34),o()),t&2){let e=c(3).$implicit;a(2),h(e.fullName),a(),g(e.isAdmin?3:-1)}}function vi(t,l){if(t&1&&d(0,"app-user-avatar",35),t&2){let e=l.$implicit;m("user",e)("isMember",!0)}}function bi(t,l){if(t&1&&E(0,vi,1,2,"app-user-avatar",35,ci),t&2){let e=c(3).$implicit;F(e.managers)}}function xi(t,l){if(t&1&&d(0,"app-storage-usage",36),t&2){let e=c(4).$implicit;m("item",e)}}function Si(t,l){if(t&1&&f(0,xi,1,1,"app-storage-usage",36),t&2){let e=c(3).$implicit;g(e.storageUsage?0:-1)}}function yi(t,l){if(t&1&&(n(0,"div",28)(1,"div"),s(2),o(),n(3,"div"),s(4),o()()),t&2){let e=c(3).$implicit;a(2),h(e.currentIp),a(2),h(e.lastIp)}}function wi(t,l){t&1&&s(0," too many login attempts ")}function Ti(t,l){if(t&1&&s(0),t&2){let e=c(4).$implicit;T(" ",e.userIsActiveText," ")}}function Ai(t,l){if(t&1&&(n(0,"span",11),f(1,wi,1,0)(2,Ti,1,1),o()),t&2){let e=c(3).$implicit;Ee(e.isActive?"text-success":"text-danger"),a(),g(!e.isActive&&e.passwordAttempts?1:2)}}function Ui(t,l){if(t&1&&(n(0,"div",28)(1,"div"),s(2),C(3,"amDateFormat"),o(),n(4,"div"),s(5),C(6,"amDateFormat"),o()()),t&2){let e=c(5).$implicit;a(2),h(y(3,2,e.currentAccess)),a(3),h(y(6,4,e.lastAccess))}}function Di(t,l){if(t&1&&s(0),t&2){let e=c(5).$implicit;T(" ",e.hTimeAgo," ")}}function Ei(t,l){if(t&1){let e=R();n(0,"div",38),u("mouseover",function(){b(e);let i=c(4).$implicit;return x(i.currentAccessHover=!0)})("focus",function(){b(e);let i=c(4).$implicit;return x(i.currentAccessHover=!0)})("mouseleave",function(){b(e);let i=c(4).$implicit;return x(i.currentAccessHover=!1)}),f(1,Ui,7,6,"div",28)(2,Di,1,1),o()}if(t&2){let e=c(4).$implicit;a(),g(e.currentAccessHover?1:2)}}function Fi(t,l){t&1&&(n(0,"span",11),s(1,"never"),o())}function Ii(t,l){if(t&1&&f(0,Ei,3,1,"div",37)(1,Fi,2,0,"span",11),t&2){let e=c(3).$implicit;g(e.currentAccess?0:1)}}function ki(t,l){if(t&1&&(n(0,"td"),f(1,gi,8,4,"div",27)(2,hi,4,2,"div",28)(3,bi,2,0)(4,Si,1,1)(5,yi,5,2,"div",28)(6,Ai,3,4,"span",29)(7,Ii,2,1),o()),t&2){let e,r=c().$implicit,i=c().$implicit;Me("",r.value.class," ",r.value.newly?"prop-newly-"+i[r.value.newly]:"",""),De("width",r.value.width,"%"),A("text-align-center",r.value.textCenter),a(),g((e=r.key)==="login"?1:e==="fullName"?2:e==="managers"?3:e==="storage"?4:e==="currentIp"?5:e==="isActive"?6:e==="currentAccess"?7:-1)}}function Ni(t,l){if(t&1&&f(0,ki,8,9,"td",26),t&2){let e=l.$implicit;g(e.value.show?0:-1)}}function Vi(t,l){if(t&1){let e=R();n(0,"tr",25),u("click",function(){let i=b(e).$implicit,p=c();return x(p.onSelect(i))})("contextmenu",function(i){let p=b(e).$implicit,_=c();return x(_.onTargetContextMenu(i,p))})("pressup",function(i){let p=b(e).$implicit,_=c();return x(_.onTargetContextMenu(i,p))})("tap",function(){b(e);let i=c();return x(i.openDialog())}),E(1,Ni,1,1,null,null,Tt),C(3,"keyvalue"),o()}if(t&2){let e=l.$implicit,r=c();A("disabled",!e.isActive)("selected",e.id===(r.selected==null?null:r.selected.id)),a(),F(U(3,4,r.tableHeaders,r.originalOrderKeyValue))}}function Pi(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2),o()),t&2){let e=c();a(),m("icon",e.icons.faUserPlus),a(),T("New ",e.guestsView?"guest":"user","")}}function Mi(t,l){}function Gi(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2,"Refresh"),o()),t&2){let e=c();a(),m("icon",e.icons.faArrowRotateRight)}}function Ri(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2),o()),t&2){let e=c();a(),m("icon",e.icons.faUserPen),a(),T("Edit ",e.guestsView?"guest":"user","")}}function Li(t,l){}function Oi(t,l){if(t&1&&(n(0,"span",11),d(1,"fa-icon",5),s(2,"Impersonate identity"),o()),t&2){let e=c();a(),m("icon",e.icons.faUserSecret)}}var wo=(()=>{class t{constructor(e,r,i,p,_){this.locale=e,this.router=r,this.activatedRoute=i,this.layout=p,this.adminService=_,this.originalOrderKeyValue=at,this.icons={faRotate:et,faUserPlus:fe,faUserPen:ue,faArrowDown:Ye,faArrowUp:Ze,faKey:Qe,faUserSecret:_e,faArrowRotateRight:Xe,faToggleOn:ze,faToggleOff:qe},this.tableHeaders={login:{label:"Login",width:30,textCenter:!1,class:"",show:!0,sortable:!0},fullName:{label:"Full name",width:15,class:"",textCenter:!1,show:!0,sortable:!0},managers:{label:"Managers",width:15,class:"d-none d-md-table-cell",textCenter:!0,show:!1,sortable:!0},storage:{label:"Storage Space",width:15,class:"d-none d-md-table-cell",textCenter:!0,show:!0,sortable:!0},isActive:{label:"Status",width:10,textCenter:!0,class:"d-none d-lg-table-cell",show:!0,sortable:!0},currentIp:{label:"IP",width:10,textCenter:!1,class:"d-none d-lg-table-cell",show:!0},currentAccess:{label:"Seen",width:12,textCenter:!0,class:"d-none d-lg-table-cell",newly:"newly",show:!0,sortable:!0}},this.sortSettings={default:[{prop:"login",type:"string"}],login:[{prop:"login",type:"string"}],fullName:[{prop:"fullName",type:"string"}],managers:[{prop:"managers",type:"length"}],storage:[{prop:"storageUsage",type:"number"}],currentAccess:[{prop:"currentAccess",type:"date"}],isActive:[{prop:"isActive",type:"number"}]},this.sortTable=new ft(this.constructor.name,this.sortSettings),this.guestsView=!1,this.loading=!1,this.selected=null,this.users=[],this.layout.setBreadcrumbIcon(ot.USERS),this.activatedRoute.data.subscribe(S=>{this.guestsView=S.type===z.GUEST,this.setEnv()})}setEnv(){this.tableHeaders.managers.show=this.guestsView,this.tableHeaders.storage.show=!this.guestsView,this.loadUsersOrGuests(),this.layout.setBreadcrumbNav({url:this.guestsView?`/${q.BASE}/${q.GUESTS}/${Fe.GUESTS}`:`/${q.BASE}/${q.USERS}/${Fe.USERS}`,splicing:2,translating:!0,sameLink:!0})}loadUsersOrGuests(){this.loading=!0,this.onSelect(),this.adminService.listUsers(this.guestsView).subscribe({next:e=>{this.sortBy(this.sortTable.sortParam.column,!1,e),this.scrollView.scrollInto(-1),this.loading=!1},error:e=>{this.users=[],this.layout.sendNotification("error",this.guestsView?"Guests":"Users","Unable to load",e),this.loading=!1}})}onSelect(e=null){this.selected=e}onGuestsView(e){this.guestsView=e,this.router.navigate([q.BASE,e?q.GUESTS:q.USERS]).catch(r=>console.error(r))}onContextMenu(e){e.preventDefault(),e.stopPropagation(),this.layout.openContextMenu(e,this.mainContextMenu)}onTargetContextMenu(e,r){e.preventDefault(),e.type==="contextmenu"&&e.stopPropagation(),this.onSelect(r),this.layout.openContextMenu(e,this.targetContextMenu)}sortBy(e,r=!0,i){this.users=this.sortTable.sortBy(e,r,i||this.users)}openDialog(e=!1){this.guestsView?this.openGuestDialog(e):this.openUserDialog(e)}openUserDialog(e=!1){e?this.layout.openDialog(Ve,"md").content.userChange.pipe(Q(1)).subscribe(i=>{let[p,_]=i;p==="add"&&(this.sortBy(this.sortTable.sortParam.column,!1,[...this.users,_]),this.onSelect(_))}):this.adminService.getUser(this.selected.id).subscribe({next:r=>{this.layout.openDialog(Ve,"md",{initialState:{user:r}}).content.userChange.pipe(Q(1)).subscribe(p=>{let[_,S]=p;_==="update"?this.selected=Object.assign(this.selected,S):_==="delete"&&(this.onSelect(),this.sortBy(this.sortTable.sortParam.column,!1,this.users.filter(Ue=>Ue.id!==S.id)))})},error:r=>this.layout.sendNotification("error","Edit group",this.selected.login,r)})}openGuestDialog(e=!1){e?this.layout.openDialog(Ne,"md").content.guestChange.pipe(Q(1)).subscribe(i=>{let[p,_]=i,S=new Ct(_);p==="add"&&(this.sortBy(this.sortTable.sortParam.column,!1,[...this.users,S]),this.onSelect(S))}):this.adminService.getUser(this.selected.id,!0).subscribe({next:r=>{this.layout.openDialog(Ne,"md",{initialState:{guest:r}}).content.guestChange.pipe(Q(1)).subscribe(p=>{let[_,S]=p;_==="update"?this.selected=Object.assign(this.selected,S):_==="delete"&&(this.onSelect(),this.sortBy(this.sortTable.sortParam.column,!1,this.users.filter(Ue=>Ue.id!==S.id)))})},error:r=>this.layout.sendNotification("error","Guest error",this.selected.fullName,r)})}impersonateIdentity(){this.layout.openDialog(xt,"sm",{initialState:{user:this.selected}})}static{this.\u0275fac=function(r){return new(r||t)(v(N),v(Le),v(Re),v(M),v(G))}}static{this.\u0275cmp=I({type:t,selectors:[["app-admin-users"]],viewQuery:function(r,i){if(r&1&&(ne(ke,5),ne(Ie,7),ne(li,7),ne(mi,7)),r&2){let p;oe(p=ae())&&(i.scrollView=p.first),oe(p=ae())&&(i.inputFilter=p.first),oe(p=ae())&&(i.mainContextMenu=p.first),oe(p=ae())&&(i.targetContextMenu=p.first)}},decls:47,vars:40,consts:[["MainContextMenu",""],["TargetContextMenu",""],[1,"app-top-menu"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","tooltip"],[3,"icon","animation"],[3,"icon"],["container","body","type","button",1,"btn","btn-sm","btn-secondary","me-1",3,"click","disabled","tooltip"],[1,"ms-auto"],["btnCheckbox","","type","button",1,"btn","btn-sm","btn-custom","me-1",3,"ngModelChange","ngModel"],[1,"d-flex","align-items-center"],[1,"me-2",3,"icon"],["l10nTranslate",""],[1,"btn-group","btn-group-sm"],[1,"d-none","d-sm-block"],[1,"app-table"],[3,"contextmenu","bufferAmount","items"],["tabindex","-1"],[3,"disabled","selected"],[1,"app-foot-menu"],[1,"mx-auto"],["contextMenuItem","",3,"execute"],["contextMenuItem","",3,"divider"],["l10nTranslate","",3,"width","text-align-center","cursor-pointer","class"],["l10nTranslate","",3,"click"],[3,"icon","fixedWidth"],[3,"click","contextmenu","pressup","tap"],[3,"width","text-align-center","class"],[1,"d-flex","align-items-center","avatar"],[1,"d-flex","flex-column"],["l10nTranslate","",3,"class"],["alt","",1,"avatar-img",3,"src"],["draggable","false",1,"no-pointer-events"],[1,"m-0",3,"icon"],["draggable","false",1,"no-pointer-events","text-muted","fs-xxxs"],["draggable","false","l10nTranslate","",1,"no-pointer-events","text-muted","fs-xxxs"],[3,"user","isMember"],[3,"item"],[1,"d-flex","justify-content-center"],[1,"d-flex","justify-content-center",3,"mouseover","focus","mouseleave"]],template:function(r,i){if(r&1){let p=R();n(0,"div",2)(1,"button",3),C(2,"translate"),u("click",function(){return b(p),x(i.loadUsersOrGuests())}),d(3,"fa-icon",4),o(),n(4,"button",3),C(5,"translate"),u("click",function(){return b(p),x(i.openDialog(!0))}),d(6,"fa-icon",5),o(),n(7,"button",6),C(8,"translate"),u("click",function(){return b(p),x(i.openDialog())}),d(9,"fa-icon",5),o(),n(10,"button",6),C(11,"translate"),u("click",function(){return b(p),x(i.impersonateIdentity())}),d(12,"fa-icon",5),o(),n(13,"div",7)(14,"button",8),u("ngModelChange",function(S){return b(p),x(i.onGuestsView(S))}),n(15,"div",9),d(16,"fa-icon",10),n(17,"span",11),s(18,"Guests"),o()()(),n(19,"div",12),d(20,"app-input-filter",13),o()()(),n(21,"table",14)(22,"thead")(23,"tr"),E(24,_i,1,1,null,null,Tt),C(26,"keyvalue"),o()()(),n(27,"app-virtual-scroll",15),C(28,"searchFilter"),u("contextmenu",function(S){return b(p),x(i.onContextMenu(S))}),n(29,"table",14)(30,"tbody",16),E(31,Vi,4,7,"tr",17,pi),o()()(),n(33,"div",18)(34,"span",19),s(35),C(36,"translate"),o()(),n(37,"context-menu",null,0),f(39,Pi,3,2,"ng-template",20),u("execute",function(){return b(p),x(i.openDialog(!0))}),f(40,Mi,0,0,"ng-template",21)(41,Gi,3,1,"ng-template",20),u("execute",function(){return b(p),x(i.loadUsersOrGuests())}),o(),n(42,"context-menu",null,1),f(44,Ri,3,2,"ng-template",20),u("execute",function(){return b(p),x(i.openDialog())}),f(45,Li,0,0,"ng-template",21)(46,Oi,3,1,"ng-template",20),u("execute",function(){return b(p),x(i.impersonateIdentity())}),o()}r&2&&(a(),m("tooltip",U(2,19,"Refresh",i.locale.language)),a(2),m("icon",i.icons.faRotate)("animation",i.loading?"spin":null),a(),m("tooltip",U(5,22,i.guestsView?"New guest":"New user",i.locale.language)),a(2),m("icon",i.icons.faUserPlus),a(),m("disabled",!i.selected)("tooltip",U(8,25,i.guestsView?"Edit guest":"Edit user",i.locale.language)),a(2),m("icon",i.icons.faUserPen),a(),m("disabled",!i.selected)("tooltip",U(11,28,"Impersonate identity",i.locale.language)),a(2),m("icon",i.icons.faUserSecret),a(2),m("ngModel",i.guestsView),a(2),m("icon",i.guestsView?i.icons.faToggleOn:i.icons.faToggleOff),a(8),F(U(26,31,i.tableHeaders,i.originalOrderKeyValue)),a(3),m("bufferAmount",5)("items",U(28,34,i.users,i.inputFilter.search())),a(4),F(i.scrollView==null?null:i.scrollView.viewPortItems),a(4),L("",i.users.length," ",U(36,37,i.guestsView?"guests":"users",i.locale.language),""),a(5),m("divider",!0),a(5),m("divider",!0))},dependencies:[P,Z,Ie,je,Ge,V,ke,_t,Ce,ee,ct,pt,mt,ut,Be,O,Oe,gt],encapsulation:2})}}return t})();export{wo as AdminUsersComponent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as ne}from"./chunk-
|
|
1
|
+
import{e as ne}from"./chunk-GI2LXVWQ.js";import{f as se}from"./chunk-Y6IYSEKU.js";import{b as re,c as E}from"./chunk-ZZGFGD5E.js";import{$a as ee,K as g,M as S,N as W,da as A,ea as h,f as z,fa as J,fb as te,ga as l,ha as K,ia as o,ja as Q,ka as X,la as Y,ma as Z,rb as ie,tb as u,vb as v}from"./chunk-HDDBV3QQ.js";import{d as F}from"./chunk-UGSGMP2I.js";import{Ad as V,Bb as G,Bd as q,Eb as y,Fb as I,G as P,Mc as B,Qb as U,Sa as d,Sb as j,Xa as T,ab as C,bc as $,ca as R,cc as k,dc as L,ha as f,lb as O,pa as M,qa as w,sb as N,tb as b,ub as D,ud as H,v as n,vb as _,wa as x,wb as c}from"./chunk-FPEGN42P.js";var a=class{constructor(r){this.isAdmin=!1,this.newly=0,this.applications=[],this.currentAccessHover=!1,this.setGroups(r),this.setManagers(r),Object.assign(this,r),this.isAdmin=r.role===g.ADMINISTRATOR,this.userRoleText=te(g[r.role]),this.avatarUrl=ie(r.login),this.userIsActiveText=this.isActive?"active":"suspended",this.hTimeAgo=(0,z.default)(this.currentAccess).fromNow(!0),this.newly=ee(this.currentAccess),this.permissions&&(this.applications=this.permissions.split(S))}setGroups(r){r?.groups&&(r.groups=r.groups.map(e=>new u(e)))}setManagers(r){r?.managers&&(r.managers=r.managers.map(e=>new u(e)))}};var m=class{constructor(r){Object.assign(this,r),this.permissions&&(this.applications=this.permissions.split(S))}};var we=(()=>{class s{constructor(e,t,i){this.http=e,this.router=t,this.authService=i}listUsers(e=!1){return this.http.get(e?K:J).pipe(n(t=>t.map(i=>new a(i))))}getUser(e,t=!1){return this.http.get(`${t?l:h}/${e}`).pipe(n(i=>t?new E(i):new a(i)))}createUser(e,t=!1){return this.http.post(t?l:h,e).pipe(n(i=>t?new E(i):new a(i)))}updateUser(e,t,i=!1){return this.http.put(`${i?l:h}/${e}`,t).pipe(n(p=>i?new E(p):new a(p)))}deleteUser(e,t,i=!1){return i?this.http.delete(`${l}/${e}`):this.http.request("delete",`${h}/${e}`,{body:t})}browseGroup(e,t=!1){return this.http.get(`${t?X:Q}${e?`/${e}`:""}`).pipe(n(i=>new re(i)))}getGroup(e){return this.http.get(`${o}/${e}`).pipe(n(t=>new m(t)))}createGroup(e){return this.http.post(o,e).pipe(n(t=>new m(t)))}updateGroup(e,t){return this.http.put(`${o}/${e}`,t).pipe(n(i=>new m(i)))}deleteGroup(e){return this.http.delete(`${o}/${e}`)}addUsersToGroup(e,t){return this.http.patch(`${o}/${e}/${A.USERS}`,t)}updateUserFromGroup(e,t,i){return this.http.patch(`${o}/${e}/${A.USERS}/${t}`,i)}removeUserFromGroup(e,t){return this.http.delete(`${o}/${e}/${A.USERS}/${t}`)}searchMembers(e,t=!1){return this.http.request("search",Y,{body:e}).pipe(n(i=>i.map(p=>(t&&delete p.description,new u(p)))),P(()=>[]))}impersonateUser(e,t){return this.http.post(`${Z}/${e}`,t)}initImpersonateUser(e){this.authService.initUserFromResponse(e,!0),this.router.navigate([v.BASE,v.ACCOUNT]).catch(t=>console.error(t))}static{this.\u0275fac=function(t){return new(t||s)(f(B),f(F),f(se))}}static{this.\u0275prov=R({token:s,factory:s.\u0275fac,providedIn:"root"})}}return s})();function ae(s,r){if(s&1){let e=G();_(0,"div",3)(1,"label",4)(2,"input",5),y("change",function(i){let p=M(e).$implicit,oe=I();return w(oe.updatePermissions(p,i))}),c(),U(3),$(4,"translate"),$(5,"capitalize"),c()()}if(s&2){let e=r.$implicit,t=I();d(2),O("checked",t.permissions.indexOf(e)>-1)("value",e),d(),j(" ",k(5,6,L(4,3,e,t.locale.language))," ")}}var je=(()=>{class s{constructor(e){this.locale=e,this.permissions=[],this.permissionsChange=new x,this.allApplications=Object.values(W)}updatePermissions(e,t){t.target.checked?this.permissions.push(e):this.permissions.splice(this.permissions.indexOf(e),1),this.permissionsChange.emit(this.permissions)}static{this.\u0275fac=function(t){return new(t||s)(T(H))}}static{this.\u0275cmp=C({type:s,selectors:[["app-admin-permissions"]],inputs:{permissions:"permissions"},outputs:{permissionsChange:"permissionsChange"},decls:6,vars:0,consts:[[1,"d-flex","flex-column","col-12","pb-3"],["for","permissions","l10nTranslate",""],["id","permissions",1,"form-check","form-switch","form-check-inline"],[1,"d-flex"],[1,"form-check-label"],["type","checkbox",1,"form-check-input",3,"change","checked","value"]],template:function(t,i){t&1&&(_(0,"div",0)(1,"label",1),U(2,"Permissions"),c(),_(3,"div",2),b(4,ae,6,8,"div",3,N),c()()),t&2&&(d(4),D(i.allApplications))},dependencies:[ne,q,V],encapsulation:2})}}return s})();export{a,we as b,je as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as O}from"./chunk-
|
|
1
|
+
import{_a as O}from"./chunk-HDDBV3QQ.js";import{Ab as F,Fb as r,Gb as y,Hb as x,Pb as C,Qb as d,Rb as f,Sa as l,Tb as U,Wa as P,Xa as u,ab as m,bb as D,bc as g,ca as T,cc as k,da as I,db as M,ec as _,fb as c,fc as b,kb as h,lb as a,mb as E,nb as v,oa as S,rb as j,vb as o,wb as p,xc as w,yc as N,za as B}from"./chunk-FPEGN42P.js";var $=["*"];function z(t,s){t&1&&F(0)}function G(t,s){if(t&1&&(o(0,"bar",3),x(1),p()),t&2){let e=r();a("type",e.type)("value",e._value)("max",e.max)("animate",e.animate)("striped",e.striped)}}function J(t,s){if(t&1&&(o(0,"bar",3),d(1),p()),t&2){let e=s.$implicit,i=r(2);a("type",e.type)("value",e.value)("max",e.max||i.max)("animate",i.animate)("striped",i.striped),l(),f(e.label)}}function K(t,s){if(t&1&&c(0,J,2,6,"bar",4),t&2){let e=r();a("ngForOf",e._values)}}var L=(()=>{class t{constructor(e,i){this.el=e,this.renderer=i,this.max=100,this.value=0,this.animate=!1,this.striped=!1,this.type="info",this.percent=100}ngOnChanges(e){(e.value||e.max)&&(this.percent=100*(Number(e.value?.currentValue||this.value)/Number(e.max?.currentValue||this.max||100))),e.type&&this.applyTypeClasses()}applyTypeClasses(){if(this._prevType){let e=`progress-bar-${this._prevType}`,i=`bg-${this._prevType}`;this.renderer.removeClass(this.el.nativeElement,e),this.renderer.removeClass(this.el.nativeElement,i),this._prevType=void 0}if(this.type){let e=`progress-bar-${this.type}`,i=`bg-${this.type}`;this.renderer.addClass(this.el.nativeElement,e),this.renderer.addClass(this.el.nativeElement,i),this._prevType=this.type}}static{this.\u0275fac=function(i){return new(i||t)(u(B),u(P))}}static{this.\u0275cmp=m({type:t,selectors:[["bar"]],hostAttrs:["role","progressbar","aria-valuemin","0"],hostVars:13,hostBindings:function(i,n){i&2&&(h("aria-valuenow",n.value)("aria-valuetext",n.percent?n.percent.toFixed(0)+"%":"")("aria-valuemax",n.max),E("height","100","%")("width",n.percent,"%"),v("progress-bar",!0)("progress-bar-animated",n.animate)("progress-bar-striped",n.striped))},inputs:{max:"max",value:"value",animate:"animate",striped:"striped",type:"type"},features:[S],ngContentSelectors:$,decls:1,vars:0,template:function(i,n){i&1&&(y(),x(0))},encapsulation:2,changeDetection:0})}}return t})(),W=(()=>{class t{constructor(){this.animate=!1,this.max=100}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=T({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),Q=(()=>{class t{set value(e){this.isStacked=Array.isArray(e),typeof e=="number"?(this._value=e,this._values=void 0):(this._value=void 0,this._values=e)}constructor(e){this.max=100,this.animate=!1,this.striped=!1,this.isStacked=!1,this._value=0,Object.assign(this,e)}static{this.\u0275fac=function(i){return new(i||t)(u(W))}}static{this.\u0275cmp=m({type:t,selectors:[["progressbar"]],hostVars:3,hostBindings:function(i,n){i&2&&(h("max",n.max),v("progress",!0))},inputs:{max:"max",animate:"animate",striped:"striped",type:"type",value:"value"},ngContentSelectors:$,decls:5,vars:3,consts:[["NotStacked",""],["Stacked",""],[4,"ngIf","ngIfThen","ngIfElse"],[3,"type","value","max","animate","striped"],[3,"type","value","max","animate","striped",4,"ngFor","ngForOf"]],template:function(i,n){if(i&1&&(y(),c(0,z,1,0,"ng-container",2)(1,G,2,5,"ng-template",null,0,b)(3,K,1,1,"ng-template",null,1,b)),i&2){let H=C(2),q=C(4);a("ngIf",!n.isStacked)("ngIfThen",H)("ngIfElse",q)}},dependencies:[N,L,w],styles:["[_nghost-%COMP%]{width:100%;display:flex}"],changeDetection:0})}}return t})(),V=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=D({type:t})}static{this.\u0275inj=I({})}}return t})();var A=(()=>{class t{transform(e,i=0,n=!1){return O(e,i,n)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275pipe=M({name:"toBytes",type:t,pure:!0})}}return t})();function Y(t,s){if(t&1&&(o(0,"progressbar",0)(1,"span",1),d(2),g(3,"toBytes"),g(4,"toBytes"),p()()),t&2){let e=r();a("max",e.item.storageQuota)("value",e.item.storageUsage)("type",null),l(2),U("",_(3,5,e.item.storageUsage,2,!0)," / ",k(4,9,e.item.storageQuota),"")}}function Z(t,s){if(t&1&&(o(0,"progressbar",0)(1,"span",1),d(2),g(3,"toBytes"),p()()),t&2){let e=r();a("max",e.item.storageUsage)("value",e.item.storageUsage)("type",null),l(2),f(_(3,4,e.item.storageUsage,2,!0))}}var re=(()=>{class t{constructor(){this.item={storageUsage:0,storageQuota:null}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=m({type:t,selectors:[["app-storage-usage"]],inputs:{item:"item"},decls:2,vars:1,consts:[[1,"bg-black",3,"max","value","type"],[1,"ms-1","me-1"]],template:function(i,n){i&1&&c(0,Y,5,11,"progressbar",0)(1,Z,4,8,"progressbar",0),i&2&&j(n.item.storageQuota>0?0:1)},dependencies:[V,Q,A],encapsulation:2})}}return t})();export{Q as a,V as b,A as c,re as d};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{x as xe,z as Ce}from"./chunk-WTPZUBNX.js";import{a as _e}from"./chunk-RUNMEQOV.js";import{h as be}from"./chunk-3V7XYPSJ.js";import{g as ge}from"./chunk-QFRQQ4K3.js";import{g as he,h as fe}from"./chunk-RAVRSB6R.js";import{Ea as re,Ga as le,Ja as ce,Oa as pe,Sb as ue,gb as me,mb as v,qb as de,v as ee,w as te}from"./chunk-NU3TPXFY.js";import{Ad as J,Bb as R,Bd as Z,Bf as ne,Dd as E,Df as oe,Eb as u,Ec as q,Fb as s,Gf as ae,Kf as se,L as A,Ma as B,Mb as N,Me as ie,Nb as $,Ob as L,Qb as d,Rb as b,Sa as o,Ub as W,Vb as K,Wa as U,Wb as H,Xa as h,ab as y,ad as Q,bc as g,cb as V,cc as X,dc as x,f as O,fb as f,fd as z,lb as c,nb as F,pa as C,pb as P,qa as S,rb as _,sd as Y,tb as T,ub as w,ud as G,vb as a,wa as I,wb as r,xb as m,za as j}from"./chunk-FPEGN42P.js";import{a as k,b as D}from"./chunk-GAL4ENT6.js";var ve=(()=>{class i{constructor(e,t){this.elementRef=e,this.renderer=t,this.inputField="name",this.fullWidth=!1,this.textCenter=!1,this.disableOnBlur=!0,this.disableFocus=!1,this.disableKeyboard=!1,this.updateObject=new I(!0),this.renamingInProgress=new I(!0),this.dangerColor="#dd4b39",this.primaryColor="#3c8dbc"}ngOnInit(){this.initStyles(),this.renamingInProgress.emit(!0),this.elementRef.nativeElement.value=this.inputObject[this.inputField],setTimeout(()=>{this.setParentDraggable("false"),this.disableFocus||(this.elementRef.nativeElement.focus(),this.elementRef.nativeElement.select())},5)}onBlur(){this.disableOnBlur&&this.disableEdit()}onEnter(){this.disableKeyboard||(this.elementRef.nativeElement.value?this.elementRef.nativeElement.value===this.inputObject[this.inputField]?(this.setCorrectForm(),this.disableEdit()):(this.setCorrectForm(),this.updateObject.next({object:this.inputObject,name:this.elementRef.nativeElement.value}),this.disableEdit()):this.setIncorrectForm())}onEscape(){this.disableKeyboard||this.disableEdit()}initStyles(){this.renderer.setStyle(this.elementRef.nativeElement,"display","inline"),this.renderer.setStyle(this.elementRef.nativeElement,"height","100%"),this.renderer.setStyle(this.elementRef.nativeElement,"min-height","20px"),this.renderer.addClass(this.elementRef.nativeElement,"form-control"),this.renderer.addClass(this.elementRef.nativeElement,"form-control-sm"),this.textCenter?(this.renderer.addClass(this.elementRef.nativeElement,"text-center"),this.renderer.setStyle(this.elementRef.nativeElement,"padding","0")):this.renderer.setStyle(this.elementRef.nativeElement,"padding","2px"),this.fullWidth?this.renderer.addClass(this.elementRef.nativeElement,"w-100"):this.renderer.addClass(this.elementRef.nativeElement,"w-75")}setIncorrectForm(){this.renderer.addClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.dangerColor)}setCorrectForm(){this.renderer.removeClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.primaryColor)}disableEdit(){this.setParentDraggable("true"),this.renamingInProgress.emit(!1),setTimeout(()=>this.inputObject.isRenamed=!1,100)}setParentDraggable(e){this.renderer.setAttribute(this.elementRef.nativeElement.parentElement,"draggable",e)}static{this.\u0275fac=function(t){return new(t||i)(h(j),h(U))}}static{this.\u0275dir=V({type:i,selectors:[["","appInputEdit",""]],hostBindings:function(t,n){t&1&&u("blur",function(){return n.onBlur()})("keyup.enter",function(){return n.onEnter()})("keyup.esc",function(){return n.onEscape()})},inputs:{inputObject:"inputObject",inputField:"inputField",fullWidth:"fullWidth",textCenter:"textCenter",disableOnBlur:"disableOnBlur",disableFocus:"disableFocus",disableKeyboard:"disableKeyboard"},outputs:{updateObject:"updateObject",renamingInProgress:"renamingInProgress"}})}}return i})();var Re=["InputRename"],Ee=(i,p)=>p.alias,Ie=(i,p)=>p.key;function Fe(i,p){if(i&1&&m(0,"app-user-avatar",15)(1,"div",10),i&2){let e=s().$implicit;c("user",e.owner)}}function Pe(i,p){if(i&1){let e=R();a(0,"input",16,0),u("updateObject",function(n){C(e);let l=s(2);return S(l.onRenameRoot(n))}),r()}if(i&2){let e=s().$implicit;c("inputObject",e)("fullWidth",!0)}}function Te(i,p){if(i&1&&(a(0,"span"),d(1),r()),i&2){let e=s(2).$implicit;o(),b(e.externalPath)}}function we(i,p){if(i&1&&(a(0,"span"),d(1),g(2,"pathSlice"),r()),i&2){let e=s(2).$implicit;o(),b(x(2,1,e.file.path,-2))}}function Me(i,p){if(i&1&&(a(0,"div",17)(1,"span"),d(2),r()(),a(3,"div",18),f(4,Te,2,1,"span")(5,we,3,4,"span"),r()),i&2){let e=s().$implicit,t=s();o(2),b(e.name),o(2),_(t.user.isAdmin&&e.externalPath?4:5)}}function ke(i,p){if(i&1){let e=R();a(0,"button",21),g(1,"translate"),H("ngModelChange",function(n){C(e);let l=s().$implicit,M=s().$implicit;return K(M.hPerms[l.key],n)||(M.hPerms[l.key]=n),S(n)}),u("ngModelChange",function(){C(e);let n=s(2).$implicit,l=s();return S(l.onPermissionChange(n))}),m(2,"fa-icon",22),r()}if(i&2){let e=s().$implicit,t=s().$implicit,n=s();P("btn btn-sm btn-custom ",!t.isDir&&(e.key==="a"||e.key==="d")?"disabled":"",""),W("ngModel",t.hPerms[e.key]),c("tooltip",x(1,6,n.SPACES_PERMISSIONS_TEXT[e.key].text,n.locale.language)),o(2),c("icon",n.SPACES_PERMISSIONS_TEXT[e.key].icon)}}function De(i,p){if(i&1&&(a(0,"button",23),g(1,"translate"),m(2,"fa-icon",22),r()),i&2){let e=s().$implicit,t=s().$implicit,n=s();F("active",t.hPerms[e.key]),c("tooltip",x(1,4,n.SPACES_PERMISSIONS_TEXT[e.key].text,n.locale.language)),o(2),c("icon",n.SPACES_PERMISSIONS_TEXT[e.key].icon)}}function Oe(i,p){if(i&1&&f(0,ke,3,9,"button",19)(1,De,3,7,"button",20),i&2){let e=s().$implicit,t=s();_(!(e.owner!=null&&e.owner.id)&&t.user.isAdmin||(e.owner==null?null:e.owner.id)===t.user.id?0:1)}}function Ae(i,p){if(i&1){let e=R();a(0,"div",1)(1,"div",2)(2,"div",3),f(3,Fe,2,1),m(4,"img",4),a(5,"div",5),f(6,Pe,2,2,"input",6)(7,Me,6,2),r()(),a(8,"div",7)(9,"div",8),d(10),r(),a(11,"div",8),d(12),g(13,"amTimeAgo"),r()(),a(14,"div",9),m(15,"div",10),T(16,Oe,2,1,null,null,Ie),g(18,"keyvalue"),m(19,"div",11),a(20,"button",12),g(21,"translate"),u("click",function(){let n=C(e).$implicit,l=s();return S(l.setRenamed(n))}),m(22,"fa-icon",13),r(),a(23,"button",14),g(24,"translate"),u("click",function(){let n=C(e).$implicit,l=s();return S(l.removeRoot(n))}),m(25,"fa-icon",13),r()()()()}if(i&2){let e=p.$implicit,t=s();o(3),_(t.showUsers?3:-1),o(),F("cursor-pointer",!!e.file.path),c("src",e.file.mimeUrl,B)("tooltip",e.file.path),o(2),_(e.isRenamed?6:7),o(4),b(e.alias),o(2),b(X(13,15,e.createdAt)),o(4),w(x(18,17,e.hPerms,t.originalOrderKeyValue)),o(4),P("btn btn-sm ",e.isRenamed?"btn-success":"btn-custom"," me-2"),c("tooltip",x(21,20,"Rename",t.locale.language)),o(2),c("icon",t.icons.faPen),o(),c("tooltip",x(24,23,"Remove",t.locale.language)),o(2),c("icon",t.icons.faTimes)}}var ye=(()=>{class i{constructor(e){this.locale=e,this.showUsers=!0,this.addRootFile=null,this.subscription=null,this.icons={faTimes:oe,faPen:ie},this.SPACES_PERMISSIONS_TEXT=le,this.originalOrderKeyValue=me}ngOnInit(){this.addRootFile&&(this.subscription=this.addRootFile.subscribe(e=>this.addRoot(e)))}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}addRoot(e){let t={id:0,alias:v(e.name,"alias",this.space.roots).toLowerCase(),name:v(e.name,"name",this.space.roots),permissions:"",createdAt:new Date};e.externalPath?(t.externalPath=e.externalPath,t.owner={id:null,login:null,email:null,fullName:null},t.file={id:0,path:null,mime:null}):(t.externalPath=null,t.owner={id:this.user.id,login:this.user.login,email:this.user.email,fullName:this.user.fullName},t.file={id:e.id,path:e.path,mime:e.mime}),this.space.addRoot(t,!0)}removeRoot(e){this.space.roots=this.space.roots.filter(t=>e.alias!==t.alias)}onRenameRoot(e){let t=e.object;t.alias=v(pe(e.name,!0),"alias",this.space.roots.filter(n=>n.id!==t.id)).toLowerCase(),t.name=v(e.name.replace(ce,""),"name",this.space.roots.filter(n=>n.id!==t.id))}onPermissionChange(e){e.permissions=de(e.hPerms)}setRenamed(e){e.isRenamed?(this.onRenameRoot({object:e,name:this.inputRename.nativeElement.value}),e.isRenamed=!1):e.isRenamed=!0}static{this.\u0275fac=function(t){return new(t||i)(h(G))}}static{this.\u0275cmp=y({type:i,selectors:[["app-space-manage-roots"]],viewQuery:function(t,n){if(t&1&&N(Re,5),t&2){let l;$(l=L())&&(n.inputRename=l.first)}},inputs:{space:"space",user:"user",showUsers:"showUsers",addRootFile:"addRootFile"},decls:2,vars:0,consts:[["InputRename",""],[1,"bg-theme","mb-1","p-2",2,"border-radius","4px"],[1,"d-flex","align-items-center","text-truncate","no-select","fs-xs",2,"height","32px"],[1,"d-flex","align-items-center","text-truncate","me-auto"],["draggable","false","height","30","width","30","alt","",3,"src","tooltip"],[1,"d-flex","flex-column","text-truncate","ms-2"],["appInputEdit","","type","text","required","",3,"inputObject","fullWidth"],[1,"d-flex","flex-column","fs-xxxs","text-muted","d-none","d-lg-block","ms-3"],[1,"d-flex","justify-content-end"],[1,"d-flex","no-select"],[1,"vr","mx-2"],[1,"vr","ms-1","me-2"],["type","button",3,"click","tooltip"],[3,"icon"],["type","button",1,"btn","btn-sm","btn-danger",3,"click","tooltip"],["tooltipPlacement","bottom",3,"user"],["appInputEdit","","type","text","required","",3,"updateObject","inputObject","fullWidth"],[1,"text-truncate"],[1,"d-none","d-lg-block","fs-xxxs","text-truncate"],["btnCheckbox","","type","button",3,"ngModel","tooltip","class"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip","active"],["btnCheckbox","","type","button",3,"ngModelChange","ngModel","tooltip"],["size","lg",3,"icon"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip"]],template:function(t,n){t&1&&T(0,Ae,26,26,"div",1,Ee),t&2&&w(n.space.roots)},dependencies:[fe,he,E,q,J,be,_e,te,ee,Y,Q,z,ve,xe],encapsulation:2})}}return i})();function je(i,p){if(i&1&&m(0,"fa-icon",3),i&2){let e=s();c("icon",e.icons.faSpinner)}}function Be(i,p){i&1&&(a(0,"span",5),d(1,"You have no files anchored on this space"),r())}var xt=(()=>{class i{constructor(e,t){this.layout=e,this.spacesService=t,this.addRootFileEvent=new O,this.icons={faAnchor:se,faPlus:ne,faSpinner:ae,SPACES:re.SPACES},this.submitted=!1,this.loading=!1}ngOnInit(){this.space?.roots.length&&(this.space.roots=[]),this.spacesService.getUserSpaceRoots(this.space.id).subscribe({next:e=>this.setSpaceRoots(e),error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message)}})}openSelectRootDialog(){this.layout.openDialog(Ce,"xl",{initialState:{currentRoots:this.space.roots.filter(t=>t.owner.id===this.user.id)}}).content.submitEvent.pipe(A(1)).subscribe(t=>this.addRootFileEvent.next(t))}onSubmit(){this.loading=!0,this.submitted=!0,this.spacesService.updateUserSpaceRoots(this.space.id,this.space.roots.map(e=>({id:e.id,alias:e.alias,name:e.name,permissions:e.permissions,file:{id:e.file.id,path:e.file.path,mime:e.file.mime}}))).subscribe({next:e=>{this.setSpaceRoots(e),this.layout.closeDialog()},error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message),this.submitted=!1,this.loading=!1}})}setSpaceRoots(e){this.space.roots=[];for(let t of e)this.space.addRoot(D(k({},t),{owner:this.user}),!0);this.space.counts.roots=this.space.roots.length}static{this.\u0275fac=function(t){return new(t||i)(h(ue),h(ge))}}static{this.\u0275cmp=y({type:i,selectors:[["app-space-user-anchors-dialog"]],inputs:{space:"space",user:"user"},decls:22,vars:11,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[3,"space","user","showUsers","addRootFile"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-success",3,"click"],[3,"icon"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(t,n){t&1&&(a(0,"div",0)(1,"h4",1),m(2,"fa-icon",2),a(3,"span"),d(4),r()(),f(5,je,1,1,"fa-icon",3),a(6,"h4",4)(7,"span",5),d(8,"Manage my anchored files"),r()(),a(9,"button",6),u("click",function(){return n.layout.closeDialog()}),r()(),a(10,"div",7),m(11,"app-space-manage-roots",8),f(12,Be,2,0,"span",5),r(),a(13,"div",9)(14,"button",10),u("click",function(){return n.openSelectRootDialog()}),m(15,"fa-icon",11)(16,"fa-icon",11),d(17," File "),r(),a(18,"button",12),u("click",function(){return n.layout.closeDialog()}),d(19,"Cancel"),r(),a(20,"button",13),u("click",function(){return n.onSubmit()}),d(21," Confirm "),r()()),t&2&&(o(2),c("icon",n.icons.SPACES),o(2),b(n.space.name),o(),_(n.loading?5:-1),o(6),c("space",n.space)("user",n.user)("showUsers",!1)("addRootFile",n.addRootFileEvent),o(),_(n.space.roots.length?-1:12),o(3),c("icon",n.icons.faPlus),o(),c("icon",n.icons.faAnchor),o(4),c("disabled",n.submitted))},dependencies:[E,Z,ye],encapsulation:2})}}return i})();export{ve as a,ye as b,xt as c};
|
|
1
|
+
import{x as xe,z as Ce}from"./chunk-AXITQYVN.js";import{a as _e}from"./chunk-VIL6L67B.js";import{h as be}from"./chunk-5JDPARJT.js";import{g as ge}from"./chunk-2SX3MVH3.js";import{g as he,h as fe}from"./chunk-ZZGFGD5E.js";import{Ea as re,Ga as le,Ja as ce,Oa as pe,Sb as ue,gb as me,mb as v,qb as de,v as ee,w as te}from"./chunk-HDDBV3QQ.js";import{Ad as J,Bb as R,Bd as Z,Bf as ne,Dd as E,Df as oe,Eb as u,Ec as q,Fb as s,Gf as ae,Kf as se,L as A,Ma as B,Mb as N,Me as ie,Nb as $,Ob as L,Qb as d,Rb as b,Sa as o,Ub as W,Vb as K,Wa as U,Wb as H,Xa as h,ab as y,ad as Q,bc as g,cb as V,cc as X,dc as x,f as O,fb as f,fd as z,lb as c,nb as F,pa as C,pb as P,qa as S,rb as _,sd as Y,tb as T,ub as w,ud as G,vb as a,wa as I,wb as r,xb as m,za as j}from"./chunk-FPEGN42P.js";import{a as k,b as D}from"./chunk-GAL4ENT6.js";var ve=(()=>{class i{constructor(e,t){this.elementRef=e,this.renderer=t,this.inputField="name",this.fullWidth=!1,this.textCenter=!1,this.disableOnBlur=!0,this.disableFocus=!1,this.disableKeyboard=!1,this.updateObject=new I(!0),this.renamingInProgress=new I(!0),this.dangerColor="#dd4b39",this.primaryColor="#3c8dbc"}ngOnInit(){this.initStyles(),this.renamingInProgress.emit(!0),this.elementRef.nativeElement.value=this.inputObject[this.inputField],setTimeout(()=>{this.setParentDraggable("false"),this.disableFocus||(this.elementRef.nativeElement.focus(),this.elementRef.nativeElement.select())},5)}onBlur(){this.disableOnBlur&&this.disableEdit()}onEnter(){this.disableKeyboard||(this.elementRef.nativeElement.value?this.elementRef.nativeElement.value===this.inputObject[this.inputField]?(this.setCorrectForm(),this.disableEdit()):(this.setCorrectForm(),this.updateObject.next({object:this.inputObject,name:this.elementRef.nativeElement.value}),this.disableEdit()):this.setIncorrectForm())}onEscape(){this.disableKeyboard||this.disableEdit()}initStyles(){this.renderer.setStyle(this.elementRef.nativeElement,"display","inline"),this.renderer.setStyle(this.elementRef.nativeElement,"height","100%"),this.renderer.setStyle(this.elementRef.nativeElement,"min-height","20px"),this.renderer.addClass(this.elementRef.nativeElement,"form-control"),this.renderer.addClass(this.elementRef.nativeElement,"form-control-sm"),this.textCenter?(this.renderer.addClass(this.elementRef.nativeElement,"text-center"),this.renderer.setStyle(this.elementRef.nativeElement,"padding","0")):this.renderer.setStyle(this.elementRef.nativeElement,"padding","2px"),this.fullWidth?this.renderer.addClass(this.elementRef.nativeElement,"w-100"):this.renderer.addClass(this.elementRef.nativeElement,"w-75")}setIncorrectForm(){this.renderer.addClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.dangerColor)}setCorrectForm(){this.renderer.removeClass(this.elementRef.nativeElement,"is-invalid"),this.renderer.setStyle(this.elementRef.nativeElement,"border-color",this.primaryColor)}disableEdit(){this.setParentDraggable("true"),this.renamingInProgress.emit(!1),setTimeout(()=>this.inputObject.isRenamed=!1,100)}setParentDraggable(e){this.renderer.setAttribute(this.elementRef.nativeElement.parentElement,"draggable",e)}static{this.\u0275fac=function(t){return new(t||i)(h(j),h(U))}}static{this.\u0275dir=V({type:i,selectors:[["","appInputEdit",""]],hostBindings:function(t,n){t&1&&u("blur",function(){return n.onBlur()})("keyup.enter",function(){return n.onEnter()})("keyup.esc",function(){return n.onEscape()})},inputs:{inputObject:"inputObject",inputField:"inputField",fullWidth:"fullWidth",textCenter:"textCenter",disableOnBlur:"disableOnBlur",disableFocus:"disableFocus",disableKeyboard:"disableKeyboard"},outputs:{updateObject:"updateObject",renamingInProgress:"renamingInProgress"}})}}return i})();var Re=["InputRename"],Ee=(i,p)=>p.alias,Ie=(i,p)=>p.key;function Fe(i,p){if(i&1&&m(0,"app-user-avatar",15)(1,"div",10),i&2){let e=s().$implicit;c("user",e.owner)}}function Pe(i,p){if(i&1){let e=R();a(0,"input",16,0),u("updateObject",function(n){C(e);let l=s(2);return S(l.onRenameRoot(n))}),r()}if(i&2){let e=s().$implicit;c("inputObject",e)("fullWidth",!0)}}function Te(i,p){if(i&1&&(a(0,"span"),d(1),r()),i&2){let e=s(2).$implicit;o(),b(e.externalPath)}}function we(i,p){if(i&1&&(a(0,"span"),d(1),g(2,"pathSlice"),r()),i&2){let e=s(2).$implicit;o(),b(x(2,1,e.file.path,-2))}}function Me(i,p){if(i&1&&(a(0,"div",17)(1,"span"),d(2),r()(),a(3,"div",18),f(4,Te,2,1,"span")(5,we,3,4,"span"),r()),i&2){let e=s().$implicit,t=s();o(2),b(e.name),o(2),_(t.user.isAdmin&&e.externalPath?4:5)}}function ke(i,p){if(i&1){let e=R();a(0,"button",21),g(1,"translate"),H("ngModelChange",function(n){C(e);let l=s().$implicit,M=s().$implicit;return K(M.hPerms[l.key],n)||(M.hPerms[l.key]=n),S(n)}),u("ngModelChange",function(){C(e);let n=s(2).$implicit,l=s();return S(l.onPermissionChange(n))}),m(2,"fa-icon",22),r()}if(i&2){let e=s().$implicit,t=s().$implicit,n=s();P("btn btn-sm btn-custom ",!t.isDir&&(e.key==="a"||e.key==="d")?"disabled":"",""),W("ngModel",t.hPerms[e.key]),c("tooltip",x(1,6,n.SPACES_PERMISSIONS_TEXT[e.key].text,n.locale.language)),o(2),c("icon",n.SPACES_PERMISSIONS_TEXT[e.key].icon)}}function De(i,p){if(i&1&&(a(0,"button",23),g(1,"translate"),m(2,"fa-icon",22),r()),i&2){let e=s().$implicit,t=s().$implicit,n=s();F("active",t.hPerms[e.key]),c("tooltip",x(1,4,n.SPACES_PERMISSIONS_TEXT[e.key].text,n.locale.language)),o(2),c("icon",n.SPACES_PERMISSIONS_TEXT[e.key].icon)}}function Oe(i,p){if(i&1&&f(0,ke,3,9,"button",19)(1,De,3,7,"button",20),i&2){let e=s().$implicit,t=s();_(!(e.owner!=null&&e.owner.id)&&t.user.isAdmin||(e.owner==null?null:e.owner.id)===t.user.id?0:1)}}function Ae(i,p){if(i&1){let e=R();a(0,"div",1)(1,"div",2)(2,"div",3),f(3,Fe,2,1),m(4,"img",4),a(5,"div",5),f(6,Pe,2,2,"input",6)(7,Me,6,2),r()(),a(8,"div",7)(9,"div",8),d(10),r(),a(11,"div",8),d(12),g(13,"amTimeAgo"),r()(),a(14,"div",9),m(15,"div",10),T(16,Oe,2,1,null,null,Ie),g(18,"keyvalue"),m(19,"div",11),a(20,"button",12),g(21,"translate"),u("click",function(){let n=C(e).$implicit,l=s();return S(l.setRenamed(n))}),m(22,"fa-icon",13),r(),a(23,"button",14),g(24,"translate"),u("click",function(){let n=C(e).$implicit,l=s();return S(l.removeRoot(n))}),m(25,"fa-icon",13),r()()()()}if(i&2){let e=p.$implicit,t=s();o(3),_(t.showUsers?3:-1),o(),F("cursor-pointer",!!e.file.path),c("src",e.file.mimeUrl,B)("tooltip",e.file.path),o(2),_(e.isRenamed?6:7),o(4),b(e.alias),o(2),b(X(13,15,e.createdAt)),o(4),w(x(18,17,e.hPerms,t.originalOrderKeyValue)),o(4),P("btn btn-sm ",e.isRenamed?"btn-success":"btn-custom"," me-2"),c("tooltip",x(21,20,"Rename",t.locale.language)),o(2),c("icon",t.icons.faPen),o(),c("tooltip",x(24,23,"Remove",t.locale.language)),o(2),c("icon",t.icons.faTimes)}}var ye=(()=>{class i{constructor(e){this.locale=e,this.showUsers=!0,this.addRootFile=null,this.subscription=null,this.icons={faTimes:oe,faPen:ie},this.SPACES_PERMISSIONS_TEXT=le,this.originalOrderKeyValue=me}ngOnInit(){this.addRootFile&&(this.subscription=this.addRootFile.subscribe(e=>this.addRoot(e)))}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}addRoot(e){let t={id:0,alias:v(e.name,"alias",this.space.roots).toLowerCase(),name:v(e.name,"name",this.space.roots),permissions:"",createdAt:new Date};e.externalPath?(t.externalPath=e.externalPath,t.owner={id:null,login:null,email:null,fullName:null},t.file={id:0,path:null,mime:null}):(t.externalPath=null,t.owner={id:this.user.id,login:this.user.login,email:this.user.email,fullName:this.user.fullName},t.file={id:e.id,path:e.path,mime:e.mime}),this.space.addRoot(t,!0)}removeRoot(e){this.space.roots=this.space.roots.filter(t=>e.alias!==t.alias)}onRenameRoot(e){let t=e.object;t.alias=v(pe(e.name,!0),"alias",this.space.roots.filter(n=>n.id!==t.id)).toLowerCase(),t.name=v(e.name.replace(ce,""),"name",this.space.roots.filter(n=>n.id!==t.id))}onPermissionChange(e){e.permissions=de(e.hPerms)}setRenamed(e){e.isRenamed?(this.onRenameRoot({object:e,name:this.inputRename.nativeElement.value}),e.isRenamed=!1):e.isRenamed=!0}static{this.\u0275fac=function(t){return new(t||i)(h(G))}}static{this.\u0275cmp=y({type:i,selectors:[["app-space-manage-roots"]],viewQuery:function(t,n){if(t&1&&N(Re,5),t&2){let l;$(l=L())&&(n.inputRename=l.first)}},inputs:{space:"space",user:"user",showUsers:"showUsers",addRootFile:"addRootFile"},decls:2,vars:0,consts:[["InputRename",""],[1,"bg-theme","mb-1","p-2",2,"border-radius","4px"],[1,"d-flex","align-items-center","text-truncate","no-select","fs-xs",2,"height","32px"],[1,"d-flex","align-items-center","text-truncate","me-auto"],["draggable","false","height","30","width","30","alt","",3,"src","tooltip"],[1,"d-flex","flex-column","text-truncate","ms-2"],["appInputEdit","","type","text","required","",3,"inputObject","fullWidth"],[1,"d-flex","flex-column","fs-xxxs","text-muted","d-none","d-lg-block","ms-3"],[1,"d-flex","justify-content-end"],[1,"d-flex","no-select"],[1,"vr","mx-2"],[1,"vr","ms-1","me-2"],["type","button",3,"click","tooltip"],[3,"icon"],["type","button",1,"btn","btn-sm","btn-danger",3,"click","tooltip"],["tooltipPlacement","bottom",3,"user"],["appInputEdit","","type","text","required","",3,"updateObject","inputObject","fullWidth"],[1,"text-truncate"],[1,"d-none","d-lg-block","fs-xxxs","text-truncate"],["btnCheckbox","","type","button",3,"ngModel","tooltip","class"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip","active"],["btnCheckbox","","type","button",3,"ngModelChange","ngModel","tooltip"],["size","lg",3,"icon"],["type","button",1,"btn","btn-sm","btn-custom","disabled",3,"tooltip"]],template:function(t,n){t&1&&T(0,Ae,26,26,"div",1,Ee),t&2&&w(n.space.roots)},dependencies:[fe,he,E,q,J,be,_e,te,ee,Y,Q,z,ve,xe],encapsulation:2})}}return i})();function je(i,p){if(i&1&&m(0,"fa-icon",3),i&2){let e=s();c("icon",e.icons.faSpinner)}}function Be(i,p){i&1&&(a(0,"span",5),d(1,"You have no files anchored on this space"),r())}var xt=(()=>{class i{constructor(e,t){this.layout=e,this.spacesService=t,this.addRootFileEvent=new O,this.icons={faAnchor:se,faPlus:ne,faSpinner:ae,SPACES:re.SPACES},this.submitted=!1,this.loading=!1}ngOnInit(){this.space?.roots.length&&(this.space.roots=[]),this.spacesService.getUserSpaceRoots(this.space.id).subscribe({next:e=>this.setSpaceRoots(e),error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message)}})}openSelectRootDialog(){this.layout.openDialog(Ce,"xl",{initialState:{currentRoots:this.space.roots.filter(t=>t.owner.id===this.user.id)}}).content.submitEvent.pipe(A(1)).subscribe(t=>this.addRootFileEvent.next(t))}onSubmit(){this.loading=!0,this.submitted=!0,this.spacesService.updateUserSpaceRoots(this.space.id,this.space.roots.map(e=>({id:e.id,alias:e.alias,name:e.name,permissions:e.permissions,file:{id:e.file.id,path:e.file.path,mime:e.file.mime}}))).subscribe({next:e=>{this.setSpaceRoots(e),this.layout.closeDialog()},error:e=>{this.layout.sendNotification("error","Manage my anchored files",e.error.message),this.submitted=!1,this.loading=!1}})}setSpaceRoots(e){this.space.roots=[];for(let t of e)this.space.addRoot(D(k({},t),{owner:this.user}),!0);this.space.counts.roots=this.space.roots.length}static{this.\u0275fac=function(t){return new(t||i)(h(ue),h(ge))}}static{this.\u0275cmp=y({type:i,selectors:[["app-space-user-anchors-dialog"]],inputs:{space:"space",user:"user"},decls:22,vars:11,consts:[[1,"modal-header","align-items-center"],[1,"modal-title"],[1,"me-2",3,"icon"],["animation","spin","size","sm",1,"ms-2",3,"icon"],[1,"modal-title","ms-auto"],["l10nTranslate",""],["aria-label","Close","type","button",1,"btn-close","btn-close-white","ms-2",3,"click"],[1,"modal-body"],[3,"space","user","showUsers","addRootFile"],[1,"modal-footer"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-success",3,"click"],[3,"icon"],["data-dismiss","modal","type","button","l10nTranslate","",1,"btn","btn-sm","btn-secondary","ms-auto",3,"click"],["type","button","l10nTranslate","",1,"btn","btn-sm","btn-primary",3,"click","disabled"]],template:function(t,n){t&1&&(a(0,"div",0)(1,"h4",1),m(2,"fa-icon",2),a(3,"span"),d(4),r()(),f(5,je,1,1,"fa-icon",3),a(6,"h4",4)(7,"span",5),d(8,"Manage my anchored files"),r()(),a(9,"button",6),u("click",function(){return n.layout.closeDialog()}),r()(),a(10,"div",7),m(11,"app-space-manage-roots",8),f(12,Be,2,0,"span",5),r(),a(13,"div",9)(14,"button",10),u("click",function(){return n.openSelectRootDialog()}),m(15,"fa-icon",11)(16,"fa-icon",11),d(17," File "),r(),a(18,"button",12),u("click",function(){return n.layout.closeDialog()}),d(19,"Cancel"),r(),a(20,"button",13),u("click",function(){return n.onSubmit()}),d(21," Confirm "),r()()),t&2&&(o(2),c("icon",n.icons.SPACES),o(2),b(n.space.name),o(),_(n.loading?5:-1),o(6),c("space",n.space)("user",n.user)("showUsers",!1)("addRootFile",n.addRootFileEvent),o(),_(n.space.roots.length?-1:12),o(3),c("icon",n.icons.faPlus),o(),c("icon",n.icons.faAnchor),o(4),c("disabled",n.submitted))},dependencies:[E,Z,ye],encapsulation:2})}}return i})();export{ve as a,ye as b,xt as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Qa as E}from"./chunk-
|
|
1
|
+
import{Qa as E}from"./chunk-HDDBV3QQ.js";import{Re as n,Ze as o,_f as p,db as s}from"./chunk-FPEGN42P.js";var e={BASE:"admin",USERS:"users",GUESTS:"guests",GROUPS:"groups",PGROUPS:"personal_groups"},r={ADMIN:"Administration",USERS:"Users",GROUPS:"Groups",GUESTS:"Guests",PGROUPS:"Personal groups"},i={BASE:o,USERS:n,GROUPS:p},R={title:r.ADMIN,link:`${e.BASE}/${e.USERS}`,icon:i.BASE,matchLink:new RegExp(`^${e.BASE}`),level:12,checks:[{prop:"user",value:"isAdmin"}],submenus:[{title:r.USERS,icon:i.USERS,link:`${e.BASE}/${e.USERS}`,matchLink:RegExp(`^${e.BASE}/${e.USERS}$|^${e.BASE}/${e.GUESTS}$`)},{title:r.GROUPS,icon:i.GROUPS,link:`${e.BASE}/${e.GROUPS}`,matchLink:RegExp(`^${e.BASE}/${e.GROUPS}|^${e.BASE}/${e.PGROUPS}`)}]};var P=(()=>{class t{transform(S){return S&&E(S)}static{this.\u0275fac=function(a){return new(a||t)}}static{this.\u0275pipe=s({name:"capitalize",type:t,pure:!0})}}return t})();export{e as a,r as b,i as c,R as d,P as e};
|