13 lines
24 KiB
JavaScript
13 lines
24 KiB
JavaScript
import{a as q}from"./chunk-SMVD5LRJ.js";import{a as oe}from"./chunk-YEESETR2.js";import{c as H,d as $,e as J,f as K,g as Q,h as X,k as Y,l as Z,n as ee,p as te,r as ie,s as ne,t as re}from"./chunk-UDFQV3WY.js";import"./chunk-ZEULGWAI.js";import"./chunk-MBEC6LK4.js";import{Eb as a,Fa as s,Fb as h,Gb as N,Hb as D,Jb as w,Kb as S,Lb as y,Oa as T,Ob as L,R as c,Rb as F,S as u,T as C,Ta as R,U as M,Ya as P,ca as v,db as _,fb as g,gb as A,hb as k,ib as V,jb as x,kb as i,lb as n,mb as f,nb as j,ob as I,pc as B,qb as b,qc as O,rb as p,rc as W,sb as d,sc as z,xc as G}from"./chunk-TVKQFRWX.js";import{a as E,b as U}from"./chunk-DAQOROHW.js";var se=()=>({"background-color":"#00843B","border-color":"#00843B"}),le=()=>({}),de=(o,t,e)=>({"bg-green-50 border-green-500 text-green-700":o,"bg-red-50 border-red-500 text-red-700":t,"bg-blue-50 border-blue-500 text-blue-700":e}),me=(o,t)=>t.id;function ce(o,t){o&1&&(i(0,"div",8),f(1,"div",14),n())}function ue(o,t){o&1&&(i(0,"div",8),C(),i(1,"svg",15),f(2,"path",16),n(),M(),i(3,"p",3),a(4,"Aucun utilisateur"),n()())}function pe(o,t){if(o&1&&(i(0,"span",28),a(1),n()),o&2){let e=t.$implicit,l=d(3);s(),h(l.getRoleLabel(e))}}function _e(o,t){o&1&&(i(0,"span",29),a(1,"Mot de passe temporaire"),n())}function ge(o,t){o&1&&(i(0,"span",30),a(1,"Actif"),n())}function fe(o,t){o&1&&(i(0,"span",31),a(1,"Inactif"),n())}function xe(o,t){if(o&1){let e=b();i(0,"button",41),p("click",function(){c(e);let r=d(2).$implicit,m=d(2);return u(m.resetPassword(r))}),C(),i(1,"svg",42),f(2,"path",43),n()()}}function he(o,t){o&1&&(C(),i(0,"svg",39),f(1,"path",44),n())}function Ce(o,t){o&1&&(C(),i(0,"svg",40),f(1,"path",45),n())}function ve(o,t){if(o&1){let e=b();i(0,"button",34),p("click",function(){c(e);let r=d().$implicit,m=d(2);return u(m.editUser(r))}),C(),i(1,"svg",35),f(2,"path",36),n()(),_(3,xe,3,0,"button",37),M(),i(4,"button",38),p("click",function(){c(e);let r=d().$implicit,m=d(2);return u(m.toggleUserStatus(r))}),_(5,he,2,0,":svg:svg",39)(6,Ce,2,0,":svg:svg",40),n()}if(o&2){let e=d().$implicit,l=d(2);s(3),g(l.isCurrentUser(e)?-1:3),s(),x("title",e.enabled?"D\xE9sactiver":"Activer")("ngClass",e.enabled?"border-secondary-500 hover:bg-secondary-50":"border-green-500 hover:bg-green-50"),s(),g(e.enabled?5:6)}}function be(o,t){if(o&1){let e=b();i(0,"button",46),p("click",function(){c(e);let r=d().$implicit,m=d(2);return u(m.deleteUser(r))}),C(),i(1,"svg",47),f(2,"path",48),n()()}}function we(o,t){if(o&1&&(i(0,"tr")(1,"td")(2,"div",22)(3,"div",23)(4,"span",24),a(5),n()(),i(6,"div")(7,"p",25),a(8),n(),i(9,"p",26),a(10),n()()()(),i(11,"td",27),a(12),n(),i(13,"td",27),a(14),n(),i(15,"td"),k(16,pe,2,1,"span",28,A),n(),i(18,"td"),_(19,_e,2,0,"span",29),_(20,ge,2,0,"span",30)(21,fe,2,0,"span",31),n(),i(22,"td",18)(23,"div",32),_(24,ve,7,4),_(25,be,3,0,"button",33),n()()()),o&2){let e=t.$implicit,l=d(2);s(5),h((e.firstName==null?null:e.firstName.charAt(0))||"U"),s(3),D("",e.firstName," ",e.lastName),s(2),h(e.username),s(2),h(e.email),s(2),h(e.department||"Non renseign\xE9"),s(2),V(e.roles),s(3),g(e.mustChangePassword?19:-1),s(),g(e.enabled?20:21),s(4),g(l.canManage(e)?24:-1),s(),g(l.authService.isAdmin()?25:-1)}}function Se(o,t){if(o&1){let e=b();j(0),i(1,"button",49),p("click",function(){let r=c(e).$implicit,m=d(2);return u(m.goToPage(r))}),a(2),n(),I()}if(o&2){let e=t.$implicit,l=d(2);s(),x("ngClass",l.currentPage()===e?"px-3 py-1 border rounded text-white":"px-3 py-1 border border-gray-300 rounded hover:bg-gray-100 transition-colors")("ngStyle",l.currentPage()===e?L(3,se):L(4,le)),s(),N(" ",e," ")}}function ye(o,t){if(o&1){let e=b();i(0,"div",9)(1,"table",17)(2,"thead")(3,"tr")(4,"th"),a(5,"Utilisateur"),n(),i(6,"th"),a(7,"Email"),n(),i(8,"th"),a(9,"D\xE9partement"),n(),i(10,"th"),a(11,"R\xF4les"),n(),i(12,"th"),a(13,"Statut"),n(),i(14,"th",18),a(15,"Actions"),n()()(),i(16,"tbody"),k(17,we,26,10,"tr",null,me),n()(),i(19,"div",19)(20,"button",20),p("click",function(){c(e);let r=d();return u(r.prevPage())}),a(21," \xAB Pr\xE9c\xE9dent "),n(),P(22,Se,3,5,"ng-container",21),i(23,"button",20),p("click",function(){c(e);let r=d();return u(r.nextPage())}),a(24," Suivant \xBB "),n()()()}if(o&2){let e=d();s(17),V(e.users()),s(3),x("disabled",e.currentPage()===1),s(2),x("ngForOf",e.pages()),s(),x("disabled",e.currentPage()===e.totalPages())}}function Me(o,t){if(o&1){let e=b();i(0,"div")(1,"div",71)(2,"label",72),a(3,"Mot de passe temporaire "),i(4,"span",56),a(5,"*"),n()(),i(6,"button",73),p("click",function(){c(e);let r=d(2);return u(r.regeneratePassword())}),a(7,"G\xE9n\xE9rer un autre"),n()(),i(8,"div",74)(9,"input",75),y("ngModelChange",function(r){c(e);let m=d(2);return S(m.form.password,r)||(m.form.password=r),u(r)}),n(),i(10,"button",76),p("click",function(){c(e);let r=d(2);return u(r.showTemporaryPassword.set(!r.showTemporaryPassword()))}),a(11),n()(),i(12,"p",77),a(13,"L\u2019utilisateur devra obligatoirement remplacer ce mot de passe lors de sa premi\xE8re connexion."),n()()}if(o&2){let e=d(2);s(9),x("type",e.showTemporaryPassword()?"text":"password"),w("ngModel",e.form.password),s(2),h(e.showTemporaryPassword()?"Cacher":"Voir")}}function Ee(o,t){if(o&1&&(i(0,"option",63),a(1),n()),o&2){let e=t.$implicit;x("value",e),s(),h(e)}}function Ue(o,t){o&1&&f(0,"div",70)}function ke(o,t){if(o&1){let e=b();i(0,"div",10)(1,"div",50)(2,"div",51)(3,"h2",52),a(4),n()(),i(5,"form",53),p("ngSubmit",function(){c(e);let r=d();return u(r.saveUser())}),i(6,"div",54)(7,"div")(8,"label",55),a(9,"Pr\xE9nom "),i(10,"span",56),a(11,"*"),n()(),i(12,"input",57),y("ngModelChange",function(r){c(e);let m=d();return S(m.form.firstName,r)||(m.form.firstName=r),u(r)}),n()(),i(13,"div")(14,"label",55),a(15,"Nom "),i(16,"span",56),a(17,"*"),n()(),i(18,"input",58),y("ngModelChange",function(r){c(e);let m=d();return S(m.form.lastName,r)||(m.form.lastName=r),u(r)}),n()()(),i(19,"div")(20,"label",55),a(21,"Nom d'utilisateur "),i(22,"span",56),a(23,"*"),n()(),i(24,"input",59),y("ngModelChange",function(r){c(e);let m=d();return S(m.form.username,r)||(m.form.username=r),u(r)}),n()(),i(25,"div")(26,"label",55),a(27,"Email "),i(28,"span",56),a(29,"*"),n()(),i(30,"input",60),y("ngModelChange",function(r){c(e);let m=d();return S(m.form.email,r)||(m.form.email=r),u(r)}),n()(),_(31,Me,14,3,"div"),i(32,"div")(33,"label",55),a(34,"D\xE9partement "),i(35,"span",56),a(36,"*"),n()(),i(37,"select",61),y("ngModelChange",function(r){c(e);let m=d();return S(m.form.department,r)||(m.form.department=r),u(r)}),i(38,"option",62),a(39,"S\xE9lectionner un d\xE9partement"),n(),k(40,Ee,2,2,"option",63,A),n()(),i(42,"div")(43,"label",55),a(44,"R\xF4le "),i(45,"span",56),a(46,"*"),n()(),i(47,"select",64),y("ngModelChange",function(r){c(e);let m=d();return S(m.form.role,r)||(m.form.role=r),u(r)}),i(48,"option",65),a(49,"\xC9diteur de contenu"),n(),i(50,"option",66),a(51,"Administrateur"),n()()(),i(52,"div",67)(53,"button",68),p("click",function(){c(e);let r=d();return u(r.closeModal())}),a(54,"Annuler"),n(),i(55,"button",69),_(56,Ue,1,0,"div",70),a(57),n()()()()()}if(o&2){let e=d();s(4),N("",e.editingUser()?"Modifier l'utilisateur":"Nouvel utilisateur"," "),s(8),w("ngModel",e.form.firstName),s(6),w("ngModel",e.form.lastName),s(6),w("ngModel",e.form.username),s(6),w("ngModel",e.form.email),s(),g(e.editingUser()?-1:31),s(6),w("ngModel",e.form.department),s(3),V(e.departments),s(7),w("ngModel",e.form.role),s(8),x("disabled",e.saving()),s(),g(e.saving()?56:-1),s(),N(" ",e.editingUser()?"Mettre \xE0 jour":"Cr\xE9er"," ")}}function Ve(o,t){if(o&1){let e=b();i(0,"div",11)(1,"div",78)(2,"div",79),C(),i(3,"svg",80),f(4,"path",81),n()(),M(),i(5,"h2",82),a(6),n(),i(7,"p",83),a(8,"Copiez ces informations maintenant. Le mot de passe temporaire ne sera plus affich\xE9 apr\xE8s la fermeture de cette fen\xEAtre."),n(),i(9,"div",84)(10,"div")(11,"span",85),a(12,"Nom d\u2019utilisateur"),n(),i(13,"p",86),a(14),n()(),i(15,"div")(16,"span",85),a(17,"Mot de passe temporaire"),n(),i(18,"p",87),a(19),n()()(),i(20,"div",88)(21,"button",89),p("click",function(){c(e);let r=d();return u(r.copyCredentials())}),a(22,"Copier"),n(),i(23,"button",90),p("click",function(){c(e);let r=d();return u(r.temporaryCredentials.set(null))}),a(24,"J\u2019ai copi\xE9"),n()()()()}if(o&2){let e=t;s(6),h(e.title),s(8),h(e.username),s(5),h(e.password)}}function Ne(o,t){o&1&&(C(),i(0,"svg",94),f(1,"path",81),n())}function Te(o,t){o&1&&(C(),i(0,"svg",94),f(1,"path",95),n())}function Pe(o,t){o&1&&(C(),i(0,"svg",94),f(1,"path",96),n())}function Ae(o,t){if(o&1&&(i(0,"div",12)(1,"div",91),P(2,Ne,2,0,"svg",92)(3,Te,2,0,"svg",92)(4,Pe,2,0,"svg",92),i(5,"span",93),a(6),n()()()),o&2){let e=d();s(),x("ngClass",F(5,de,e.notification().type==="success",e.notification().type==="error",e.notification().type==="info")),s(),x("ngIf",e.notification().type==="success"),s(),x("ngIf",e.notification().type==="error"),s(),x("ngIf",e.notification().type==="info"),s(2),h(e.notification().message)}}function Le(o,t){if(o&1){let e=b();i(0,"div",13)(1,"div",97)(2,"h3",98),a(3,"Confirmation"),n(),i(4,"p",99),a(5),n(),i(6,"div",100)(7,"button",101),p("click",function(){c(e);let r=d();return u(r.closeConfirmModal())}),a(8," Annuler "),n(),i(9,"button",102),p("click",function(){c(e);let r=d();return u(r.confirmModal().onConfirm())}),a(10," Supprimer "),n()()()()}if(o&2){let e=d();s(5),h(e.confirmModal().message)}}var ae=class o{constructor(t,e){this.apiService=t;this.authService=e}notification=v({show:!1,message:"",type:"success"});users=v([]);loading=v(!0);showModal=v(!1);editingUser=v(null);saving=v(!1);showTemporaryPassword=v(!1);temporaryCredentials=v(null);currentPage=v(1);pageSize=7;totalPages=v(1);departments=["Secr\xE9tariat technique du RSU","Service administratif et financier","D\xE9partement syst\xE8me d\u2019information","D\xE9partement des op\xE9rations","D\xE9partement de la communication et du plaidoyer"];form={firstName:"",lastName:"",username:"",email:"",password:"",department:"",role:"ROLE_MODERATOR"};ngOnInit(){this.loadUsers()}loadUsers(t=0){this.apiService.getAllUsers(t,this.pageSize).subscribe({next:e=>{e.success&&(this.users.set(e.data.content),this.totalPages.set(e.data.totalPages),this.currentPage.set(t+1)),this.loading.set(!1)},error:()=>this.loading.set(!1)})}nextPage(){this.currentPage()<this.totalPages()&&this.loadUsers(this.currentPage())}prevPage(){this.currentPage()>1&&this.loadUsers(this.currentPage()-2)}goToPage(t){this.loadUsers(t-1)}pages(){return Array.from({length:this.totalPages()},(t,e)=>e+1)}openModal(){this.form={firstName:"",lastName:"",username:"",email:"",password:this.generatePassword(),department:"",role:"ROLE_MODERATOR"},this.showTemporaryPassword.set(!1),this.editingUser.set(null),this.showModal.set(!0)}closeModal(){this.showModal.set(!1),this.editingUser.set(null)}editUser1(t){this.form={firstName:t.firstName||"",lastName:t.lastName||"",username:t.username,email:t.email,password:"",department:t.department||"",role:t.roles[0]||"ROLE_USER"},this.editingUser.set(t),this.showModal.set(!0)}editUser(t){let e=Array.isArray(t.roles)&&t.roles.length>0?String(t.roles[0]):"ROLE_MODERATOR";this.form={firstName:t.firstName||"",lastName:t.lastName||"",username:t.username,email:t.email,password:"",department:t.department||"",role:e},this.editingUser.set(t),this.showModal.set(!0)}saveUser(){if(!this.form.firstName||!this.form.lastName||!this.form.username||!this.form.email||!this.form.department)return;this.saving.set(!0);let t=this.editingUser();if(t)this.apiService.updateUser(t.id,{username:this.form.username.trim(),firstName:this.form.firstName,lastName:this.form.lastName,email:this.form.email,department:this.form.department,roles:[this.form.role]}).subscribe({next:e=>{e.success&&(this.loadUsers(),this.closeModal()),this.saving.set(!1),this.showNotification("Utilisateur mis \xE0 avec succ\xE8s","success")},error:e=>{console.error("Erreur lors de la sauvegarde",e),this.saving.set(!1),this.showNotification(this.errorMessage(e,"Erreur lors de la sauvegarde"),"error")}});else{let e=this.form.password,l=this.form.username.trim();this.apiService.createUser(U(E({},this.form),{username:this.form.username.trim(),roles:[this.form.role]})).subscribe({next:r=>{r.success&&(this.loadUsers(),this.closeModal(),this.temporaryCredentials.set({title:"Compte cr\xE9\xE9",username:l,password:e})),this.saving.set(!1),this.showNotification("Utilisateur cr\xE9\xE9 avec succ\xE8s","success")},error:r=>{console.error("Erreur lors de la sauvegarde",r),this.saving.set(!1),this.showNotification(this.errorMessage(r,"Erreur lors de la sauvegarde"),"error")}})}}toggleUserStatus(t){let e=t.enabled?"d\xE9sactiver":"activer";confirm(`Voulez-vous ${e} l'utilisateur "${t.username}" ?`)&&this.apiService.toggleUserStatus(t.id).subscribe({next:()=>this.loadUsers()})}resetPassword(t){this.openConfirmModal(`R\xE9initialiser le mot de passe de \xAB ${t.username} \xBB ? Ses connexions actuelles seront ferm\xE9es.`,()=>{this.apiService.resetUserPassword(t.id).subscribe({next:e=>{this.closeConfirmModal(),this.loadUsers(this.currentPage()-1),this.temporaryCredentials.set({title:"Mot de passe r\xE9initialis\xE9",username:t.username,password:e.data.temporaryPassword})},error:e=>{this.closeConfirmModal(),this.showNotification(this.errorMessage(e,"La r\xE9initialisation a \xE9chou\xE9"),"error")}})})}isCurrentUser(t){return this.authService.currentUser()?.id===t.id}regeneratePassword(){this.form.password=this.generatePassword(),this.showTemporaryPassword.set(!0)}copyCredentials(){let t=this.temporaryCredentials();t&&navigator.clipboard.writeText(`Nom d'utilisateur : ${t.username}
|
|
Mot de passe temporaire : ${t.password}`).then(()=>this.showNotification("Identifiants temporaires copi\xE9s","success")).catch(()=>this.showNotification("La copie automatique a \xE9chou\xE9","error"))}generatePassword(){let t="ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz23456789!@#$%&*?",e=new Uint32Array(10);crypto.getRandomValues(e);let l=Array.from(e,r=>t[r%t.length]).join("");return`Rsu!${String.fromCharCode(65+e[0]%26)}${String.fromCharCode(97+e[1]%26)}${e[2]%10}${l}`}getRoleLabel(t){return{ROLE_USER:"Sans acc\xE8s \xE0 l\u2019administration",ROLE_MODERATOR:"\xC9diteur",ROLE_ADMIN:"Administrateur",ROLE_SUPER_ADMIN:"Administrateur"}[t]||t}canManage(t){return this.authService.isAdmin()}confirmModal=v({show:!1,message:"",onConfirm:()=>{}});openConfirmModal(t,e){this.confirmModal.set({show:!0,message:t,onConfirm:e})}closeConfirmModal(){this.confirmModal.update(t=>U(E({},t),{show:!1}))}deleteUser(t){this.openConfirmModal(`Voulez-vous vraiment supprimer l'utilisateur "${t.username}" ?`,()=>{this.apiService.deleteUser(t.id).subscribe({next:()=>{this.loadUsers(),this.closeConfirmModal(),this.showNotification("Utilisateur supprim\xE9 avec succ\xE8s","success")},error:e=>{this.showNotification(this.errorMessage(e,"Erreur lors de la suppression"),"error"),this.closeConfirmModal()}})})}errorMessage(t,e){return t?.error?.message||t?.error?.error||e}showNotification(t,e="success",l=2e3){this.notification.set({show:!0,message:t,type:e}),setTimeout(()=>this.notification.update(r=>U(E({},r),{show:!1})),l)}static \u0275fac=function(e){return new(e||o)(T(oe),T(q))};static \u0275cmp=R({type:o,selectors:[["app-users"]],decls:19,vars:5,consts:[[1,"space-y-6"],[1,"flex","flex-col","sm:flex-row","sm:items-center","sm:justify-between","gap-4"],[1,"text-2xl","font-bold","text-neutral-900"],[1,"text-neutral-500"],[1,"btn-primary",2,"background-color","#00843B",3,"click"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"w-5","h-5","mr-2"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d","M12 6v6m0 0v6m0-6h6m-6 0H6"],[1,"card","p-0"],[1,"p-8","text-center"],[1,"table-container"],[1,"fixed","inset-0","bg-black/50","flex","items-center","justify-center","z-50","p-4"],[1,"fixed","inset-0","z-[60]","flex","items-center","justify-center","bg-black/50","p-4"],[1,"fixed","top-4","right-4","z-50","pointer-events-none"],[1,"fixed","inset-0","bg-black/30","flex","items-center","justify-center","z-50","p-4"],[1,"spinner","w-8","h-8","mx-auto"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"w-12","h-12","text-neutral-300","mx-auto","mb-4"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d","M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197M13 7a4 4 0 11-8 0 4 4 0 018 0z"],[1,"table"],[1,"text-right"],[1,"flex","justify-end","items-center","mt-2","px-6","py-2","gap-2","border-t","border-gray-200","bg-gray-50","rounded-b-lg"],[1,"px-3","py-1","border","border-gray-300","rounded","hover:bg-gray-100","disabled:opacity-50","transition-colors",3,"click","disabled"],[4,"ngFor","ngForOf"],[1,"flex","items-center","gap-3"],[1,"w-10","h-10","bg-primary-100","rounded-full","flex","items-center","justify-center"],[1,"text-primary-600","font-medium"],[1,"font-medium","text-neutral-900"],[1,"text-xs","text-neutral-400"],[1,"text-sm","text-neutral-600"],[1,""],[1,"mb-1","inline-flex","rounded-full","bg-amber-100","px-2.5","py-1","text-xs","font-semibold","text-amber-800"],[1,"badge-primary","mr-1"],[1,"badge","bg-neutral-100","text-neutral-600"],[1,"flex","justify-end","gap-2"],["title","Supprimer",1,"flex","items-center","justify-center","p-2","border-2","border-red-500","rounded-full","bg-white","hover:bg-red-50","transition-colors"],["title","Modifier",1,"flex","items-center","justify-center","p-2","border-2","rounded-full","bg-white","hover:bg-green-50","transition-colors",2,"border-color","#00843B",3,"click"],["fill","none","stroke","#00843B","viewBox","0 0 24 24",1,"w-4","h-4"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d",`M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5
|
|
m-1.414-9.414a2 2 0 112.828 2.828
|
|
L11.828 15H9v-2.828l8.586-8.586z`],["title","R\xE9initialiser le mot de passe",1,"flex","items-center","justify-center","rounded-full","border-2","border-amber-500","bg-white","p-2","transition-colors","hover:bg-amber-50"],[1,"flex","items-center","justify-center","p-2","border-2","rounded-full","bg-white","transition-colors",3,"click","title","ngClass"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"w-4","h-4","text-secondary-500"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"w-4","h-4","text-green-500"],["title","R\xE9initialiser le mot de passe",1,"flex","items-center","justify-center","rounded-full","border-2","border-amber-500","bg-white","p-2","transition-colors","hover:bg-amber-50",3,"click"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"h-4","w-4","text-amber-600"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d","M15 7a4 4 0 11-7.75 1.37L3 12.62V16h3v3h3v2h4l4.63-4.63A4 4 0 0015 7z"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d",`M18.364 18.364A9 9 0 005.636 5.636
|
|
m12.728 12.728A9 9 0 015.636 5.636
|
|
m12.728 12.728L5.636 5.636`],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d",`M9 12l2 2 4-4
|
|
m6 2a9 9 0 11-18 0
|
|
9 9 0 0118 0z`],["title","Supprimer",1,"flex","items-center","justify-center","p-2","border-2","border-red-500","rounded-full","bg-white","hover:bg-red-50","transition-colors",3,"click"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"w-4","h-4","text-red-500"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d",`M19 7l-.867 12.142A2 2 0 0116.138 21
|
|
H7.862a2 2 0 01-1.995-1.858L5 7
|
|
m5 4v6m4-6v6
|
|
m1-10V4a1 1 0 00-1-1h-4
|
|
a1 1 0 00-1 1v3M4 7h16`],[3,"click","ngClass","ngStyle"],[1,"bg-white","rounded-2xl","shadow-xl","w-full","max-w-lg","max-h-[90vh]","overflow-y-auto"],[1,"p-6","border-b","border-neutral-200"],[1,"text-xl","font-semibold","text-neutral-900"],[1,"p-6","space-y-5",3,"ngSubmit"],[1,"grid","grid-cols-2","gap-4"],[1,"label"],[1,"text-danger-500"],["type","text","name","firstName","required","",1,"input",3,"ngModelChange","ngModel"],["type","text","name","lastName","required","",1,"input",3,"ngModelChange","ngModel"],["type","text","name","username","minlength","3","maxlength","50","required","",1,"input",3,"ngModelChange","ngModel"],["type","email","name","email","required","",1,"input",3,"ngModelChange","ngModel"],["name","department","required","",1,"input",3,"ngModelChange","ngModel"],["value","","disabled",""],[3,"value"],["name","role",1,"input",3,"ngModelChange","ngModel"],["value","ROLE_MODERATOR"],["value","ROLE_ADMIN"],[1,"flex","justify-end","gap-3","pt-4","border-t","border-neutral-200"],["type","button",1,"px-4","py-2","rounded-lg","border","border-red-500","text-red-500","hover:bg-red-50","transition-colors","font-medium",3,"click"],["type","submit",1,"btn-primary",3,"disabled"],[1,"spinner","w-4","h-4","mr-2"],[1,"mb-2","flex","items-center","justify-between","gap-3"],[1,"label","mb-0"],["type","button",1,"text-xs","font-semibold","text-primary-700","hover:underline",3,"click"],[1,"relative"],["name","password","minlength","10","required","",1,"input","pr-16",3,"ngModelChange","type","ngModel"],["type","button",1,"absolute","inset-y-0","right-0","px-4","text-xs","font-bold","text-primary-700",3,"click"],[1,"mt-2","text-xs","leading-5","text-slate-500"],[1,"w-full","max-w-md","rounded-2xl","bg-white","p-7","shadow-2xl"],[1,"flex","h-12","w-12","items-center","justify-center","rounded-full","bg-emerald-100","text-emerald-700"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"h-6","w-6"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d","M5 13l4 4L19 7"],[1,"mt-5","text-2xl","font-bold","text-slate-900"],[1,"mt-2","text-sm","leading-6","text-slate-600"],[1,"mt-5","space-y-3","rounded-xl","bg-slate-50","p-4"],[1,"text-xs","font-bold","uppercase","tracking-wide","text-slate-500"],[1,"mt-1","break-all","font-mono","font-semibold","text-slate-900"],[1,"mt-1","break-all","font-mono","text-lg","font-bold","text-primary-800"],[1,"mt-6","flex","justify-end","gap-3"],["type","button",1,"rounded-lg","border","border-primary-700","px-4","py-2","font-semibold","text-primary-700","hover:bg-primary-50",3,"click"],["type","button",1,"btn-primary",3,"click"],[1,"pointer-events-auto","border-l-4","rounded-lg","shadow-lg","p-6","max-w-sm","w-full","flex","items-center","gap-4","animate-fade-in",3,"ngClass"],["class","w-6 h-6 flex-shrink-0","fill","none","stroke","currentColor","viewBox","0 0 24 24",4,"ngIf"],[1,"text-sm","font-medium"],["fill","none","stroke","currentColor","viewBox","0 0 24 24",1,"w-6","h-6","flex-shrink-0"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d","M6 18L18 6M6 6l12 12"],["stroke-linecap","round","stroke-linejoin","round","stroke-width","2","d","M13 16h-1v-4h-1m1-4h.01M12 20a8 8 0 100-16 8 8 0 000 16z"],[1,"bg-white","rounded-2xl","shadow-xl","w-full","max-w-md","p-6","space-y-4"],[1,"text-lg","font-semibold","text-neutral-900"],[1,"text-neutral-700"],[1,"flex","justify-end","gap-3","mt-4"],[1,"px-4","py-2","rounded-lg","border","border-gray-300","text-gray-700","hover:bg-gray-100","transition-colors","font-medium",3,"click"],[1,"px-4","py-2","rounded-lg","bg-red-600","text-white","hover:bg-red-700","transition-colors","font-medium",3,"click"]],template:function(e,l){if(e&1&&(i(0,"div",0)(1,"div",1)(2,"div")(3,"h1",2),a(4,"Utilisateurs"),n(),i(5,"p",3),a(6,"G\xE9rez les comptes utilisateurs"),n()(),i(7,"button",4),p("click",function(){return l.openModal()}),C(),i(8,"svg",5),f(9,"path",6),n(),a(10," Nouvel utilisateur "),n()(),M(),i(11,"div",7),_(12,ce,2,0,"div",8)(13,ue,5,0,"div",8)(14,ye,25,3,"div",9),n(),_(15,ke,58,11,"div",10),n(),_(16,Ve,25,3,"div",11),_(17,Ae,7,9,"div",12),_(18,Le,11,1,"div",13)),e&2){let r;s(12),g(l.loading()?12:l.users().length===0?13:14),s(3),g(l.showModal()?15:-1),s(),g((r=l.temporaryCredentials())?16:-1,r),s(),g(l.notification().show?17:-1),s(),g(l.confirmModal().show?18:-1)}},dependencies:[G,B,O,W,z,re,X,Z,ee,H,Y,$,J,te,ie,ne,Q,K],encapsulation:2})};export{ae as UsersComponent};
|