import{q as $e,r as c,c as f,o as He,i as P,w as s,s as Oe,v as qe,g as i,b as a,d as n,a as p,j as b,ae as O,t as d,e as o,F as g,k as u,af as Z,aQ as ee,ai as Ge,ba as le}from"./index-BUdRbiwj.js";import{F as Qe,a as We}from"./FPPageHeader-CTG2L28r.js";import{F as B}from"./FPInput-CzR_dWoe.js";import{F as q}from"./FPSelect-C7p47Ma2.js";import{F as Ye}from"./FPStats-BGfZcDZc.js";import{F as Je}from"./FPTable-CU8C_NYc.js";import{F as G}from"./FPModal-DWGF1LV8.js";import{F as V}from"./FPBadge-BKY5dPnL.js";import{F as Ke}from"./FPTabs-R71V25QN.js";import{u as Xe}from"./users-DxH_c7oY.js";import{u as Ze,a as el}from"./roles-f1XEGBFr.js";import"./FPCard-qHzcEQAE.js";const ll={class:"p-6"},al={key:0,class:"flex justify-center py-12"},tl={key:1,class:"bg-red-50 border border-red-200 rounded-lg p-6 mb-6"},sl={class:"flex items-start"},ol={class:"text-red-700 mb-4"},nl={class:"mb-6 grid grid-cols-1 md:grid-cols-4 gap-4"},rl={class:"flex items-center"},il={class:"w-10 h-10 rounded-full bg-primary-100 flex items-center justify-center mr-3"},ul={class:"text-sm font-medium text-primary-600"},dl={class:"font-medium text-gray-900"},vl={class:"text-sm text-gray-600"},ml={key:0,class:"flex flex-wrap gap-1"},cl={key:1,class:"text-sm text-gray-400"},pl={key:0,class:"text-sm text-gray-900"},gl={key:1,class:"text-sm text-gray-400"},fl={class:"flex items-center space-x-2"},bl={key:0},yl={key:0},kl={key:0},xl={key:0},hl={key:0,class:"space-y-6"},wl={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Cl={class:"md:col-span-2"},Ul={class:"flex justify-end space-x-2"},Vl={key:0,class:"space-y-4"},Ml={class:"text-sm text-gray-600"},Sl={class:"flex justify-end space-x-2"},Fl={key:0,class:"space-y-4"},_l={class:"text-sm text-gray-600"},Rl={key:0,class:"flex flex-wrap gap-2"},Tl={key:1,class:"text-sm text-gray-400"},zl={class:"space-y-3"},Nl={class:"flex items-center space-x-3"},Il={class:"flex items-center space-x-3"},Pl={class:"flex items-center space-x-3"},Ll={class:"flex justify-end space-x-2"},jl={class:"space-y-6"},El={key:0,class:"space-y-1"},Al={class:"text-sm"},Bl={class:"flex justify-end space-x-2"},ea={__name:"PeopleListView",setup(Dl){const ae=Oe(),Q=qe(),te=$e(),v=Xe(),ce=Ze(),h=el(),L=c("all"),M=c(""),w=c(""),C=c("all"),j=c(!1),R=c(!1),E=c(!1),A=c(!1),U=c("view"),r=c(null),D=c(window.innerWidth<768),k=c(""),y=c([]),S=c(""),F=c(""),x=c([]),T=c(!1),z=c(!1);c(!1);const N=c(!1);let se=null;const W=f(()=>v.loading),oe=f(()=>v.error);f(()=>h.userPermissions.canViewUsers),f(()=>h.userPermissions.canCreateUsers);const I=f(()=>h.userPermissions.canEditUsers);f(()=>h.userPermissions.canDeleteUsers);const pe=f(()=>h.userPermissions.canCreateUsers),ge=f(()=>M.value||w.value||C.value!=="all"),fe=f(()=>{const t=v.users.content||[];return[{name:"Total Users",value:v.users.totalElements||t.length,variant:"primary"},{name:"Active",value:t.filter(e=>e.enabled).length,variant:"success"},{name:"Inactive",value:t.filter(e=>!e.enabled).length,variant:"error"},{name:"Pending",value:t.filter(e=>e.status==="PENDING").length,variant:"warning"}]}),be=f(()=>{const t=v.users.content||[];return[{key:"all",label:"All Users",count:t.length},{key:"active",label:"Active",count:t.filter(e=>e.enabled).length},{key:"inactive",label:"Inactive",count:t.filter(e=>!e.enabled).length},{key:"pending",label:"Pending",count:t.filter(e=>e.status==="PENDING").length}]}),Y=f(()=>{const t=h.roles||[];return[{value:"",label:"All Roles"},...t.map(e=>({value:e.code,label:e.name}))]}),ye=[{value:"all",label:"All Status"},{value:"enabled",label:"Active"},{value:"disabled",label:"Inactive"}],$=f(()=>{let t=v.users.content||[];if(M.value){const e=M.value.toLowerCase();t=t.filter(l=>{var m,X,de,ve,me;return((m=l.firstName)==null?void 0:m.toLowerCase().includes(e))||((X=l.lastName)==null?void 0:X.toLowerCase().includes(e))||((de=l.email)==null?void 0:de.toLowerCase().includes(e))||((ve=l.phone)==null?void 0:ve.toLowerCase().includes(e))||((me=l.jobTitle)==null?void 0:me.toLowerCase().includes(e))})}return w.value&&(t=t.filter(e=>{var l;return((l=e.role)==null?void 0:l.code)===w.value})),C.value==="enabled"?t=t.filter(e=>e.enabled):C.value==="disabled"&&(t=t.filter(e=>!e.enabled)),L.value==="active"?t=t.filter(e=>e.enabled):L.value==="inactive"?t=t.filter(e=>!e.enabled):L.value==="pending"&&(t=t.filter(e=>e.status==="PENDING")),t}),ke=[{key:"user",label:"User",sortable:!0},{key:"role",label:"Role",sortable:!0},{key:"status",label:"Status",sortable:!0},{key:"teams",label:"Teams",sortable:!1},{key:"lastLogin",label:"Last Login",sortable:!0}],xe=f(()=>({currentPage:v.users.currentPage+1,total:v.users.totalElements,pageSize:v.users.pageSize||10})),ne=async()=>{try{console.log("Initializing user management data..."),te.user&&h.setCurrentUser(te.user),await Promise.all([v.searchUsers(),h.loadRoles(),ce.loadTeams()]),console.log("User management data loaded successfully")}catch(t){console.error("Failed to initialize data:",t)}},H=async()=>{console.log("Refreshing user data..."),await v.searchUsers()},he=async()=>{try{await ne()}catch(t){console.error("Retry failed:",t)}},we=()=>{clearTimeout(se),se=setTimeout(async()=>{await v.searchUsers({searchValue:M.value,page:0})},300)},Ce=async()=>{await v.searchUsers({filterFields:w.value?[{field:"role.code",value:w.value}]:[],page:0})},Ue=async()=>{const t=C.value==="enabled"?!0:C.value==="disabled"?!1:null;await v.searchUsers({filterFields:t!==null?[{field:"enabled",value:t}]:[],page:0})},Ve=async()=>{M.value="",w.value="",C.value="all",await v.searchUsers({page:0})},Me=async({column:t,direction:e})=>{console.log("Sort:",t,e);const m={user:"lastName",role:"role.name",status:"enabled",lastLogin:"lastLogin"}[t]||t;await v.searchUsers({sortBy:m,direction:e.toUpperCase()})},Se=async t=>{console.log("Page change:",t),await v.searchUsers({page:t-1})},Fe=()=>{},_e=t=>{re(t)},re=t=>{r.value={...t},U.value="view",R.value=!0},ie=t=>{I.value&&(r.value={...t},U.value="edit",R.value=!0)},Re=t=>{I.value&&(r.value={...t},F.value="",E.value=!0)},Te=t=>{if(!I.value)return;r.value={...t};const e=_(t.id);x.value=e.map(l=>l.name==="Engineering"?"engineering":l.name==="Maintenance"?"maintenance":l.name==="Operations"?"operations":l.name.toLowerCase()),A.value=!0},ue=()=>{k.value="",y.value=[],S.value="",j.value=!0},ze=()=>{k.value&&Ae(k.value)&&!y.value.includes(k.value)&&(y.value.push(k.value),k.value="")},Ne=t=>{y.value.splice(t,1)},Ie=async()=>{try{N.value=!0,console.log("Sending invites to:",y.value,"with role:",S.value),await v.inviteUsers({emails:y.value,roleCode:S.value}),j.value=!1,y.value=[],k.value="",S.value="",await H()}catch(t){console.error("Failed to send invites:",t)}finally{N.value=!1}},Pe=async()=>{try{T.value=!0,console.log("Saving user changes:",r.value),await v.updateUserProfile(r.value.id,{firstName:r.value.firstName,lastName:r.value.lastName,email:r.value.email,phone:r.value.phone,jobTitle:r.value.jobTitle}),R.value=!1,await H()}catch(t){console.error("Failed to save user:",t)}finally{T.value=!1}},Le=async()=>{try{z.value=!0,console.log("Changing role for user:",r.value.email,"to:",F.value),await v.updateUserRole(r.value.id,F.value),E.value=!1,F.value="",await H()}catch(t){console.error("Failed to change user role:",t)}finally{z.value=!1}},je=()=>{console.log("Saving team assignments for user:",r.value.email),console.log("Selected teams:",x.value),A.value=!1,x.value=[]},Ee=(t,e)=>`${(t==null?void 0:t.charAt(0))||""}${(e==null?void 0:e.charAt(0))||""}`.toUpperCase(),Ae=t=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t),_=t=>{var l;const e=(l=v.users.content)==null?void 0:l.find(m=>m.id===t);return(e==null?void 0:e.teams)||[]},J=t=>{switch(t==null?void 0:t.code){case"ADMIN":return"error";case"TECHNICIAN":return"primary";case"VIEW_ONLY":return"secondary";default:return"secondary"}},K=t=>(t==null?void 0:t.name)||"Unknown",Be=t=>t?new Date(t).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"}):"",De=()=>{const t=ae.query.edit;t&&setTimeout(()=>{const l=mockUsers.value.find(m=>m.id===parseInt(t));l&&ie(l),Q.replace({path:"/people"})},500),ae.query.invite==="true"&&setTimeout(()=>{ue(),Q.replace({path:"/people"})},500)};return He(async()=>{await ne(),De()}),(t,e)=>(i(),P(Qe,null,{header:s(()=>[n(We,{title:"People & Teams",description:"Manage users, roles, and team assignments",breadcrumbs:[{text:"People",to:null}]},{actions:s(()=>[n(o(g),{variant:"outline",size:"sm",onClick:e[0]||(e[0]=l=>o(Q).push("/people/teams"))},{default:s(()=>e[22]||(e[22]=[a("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"})],-1),u(" Manage Teams ",-1)])),_:1,__:[22]}),n(o(g),{variant:"outline",size:"sm",onClick:H},{default:s(()=>e[23]||(e[23]=[a("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),u(" Refresh ",-1)])),_:1,__:[23]}),n(o(g),{variant:"primary",size:"sm",onClick:ue,disabled:!pe.value},{default:s(()=>e[24]||(e[24]=[a("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1),u(" Invite Users ",-1)])),_:1,__:[24]},8,["disabled"])]),stats:s(()=>[n(o(Ye),{stats:fe.value},null,8,["stats"])]),tabs:s(()=>[n(o(Ke),{modelValue:L.value,"onUpdate:modelValue":e[1]||(e[1]=l=>L.value=l),tabs:be.value,onTabChange:Fe},null,8,["modelValue","tabs"])]),_:1})]),default:s(()=>[a("div",ll,[W.value&&!$.value.length?(i(),p("div",al,e[25]||(e[25]=[a("div",{class:"text-center"},[a("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary-600 mx-auto mb-4"}),a("p",{class:"text-gray-600"},"Loading users...")],-1)]))):oe.value&&!$.value.length?(i(),p("div",tl,[a("div",sl,[e[28]||(e[28]=a("svg",{class:"w-6 h-6 text-red-400 mr-3 mt-1",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-2.5L13.732 4c-.77-.833-1.728-.833-2.498 0L4.316 16.5c-.77.833.192 2.5 1.732 2.5z"})],-1)),a("div",null,[e[27]||(e[27]=a("h3",{class:"text-lg font-medium text-red-800 mb-2"},"Failed to Load Users",-1)),a("p",ol,d(oe.value),1),n(o(g),{variant:"outline",size:"sm",onClick:he},{default:s(()=>e[26]||(e[26]=[a("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),u(" Retry ",-1)])),_:1,__:[26]})])])])):b("",!0),O(a("div",null,[a("div",nl,[n(o(B),{modelValue:M.value,"onUpdate:modelValue":e[2]||(e[2]=l=>M.value=l),placeholder:"Search users...",onInput:we},{prepend:s(()=>e[29]||(e[29]=[a("svg",{class:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1)])),_:1},8,["modelValue"]),n(o(q),{modelValue:w.value,"onUpdate:modelValue":[e[3]||(e[3]=l=>w.value=l),Ce],placeholder:"Filter by Role",options:Y.value},null,8,["modelValue","options"]),n(o(q),{modelValue:C.value,"onUpdate:modelValue":[e[4]||(e[4]=l=>C.value=l),Ue],placeholder:"Filter by Status",options:ye},null,8,["modelValue"]),ge.value?(i(),P(o(g),{key:0,variant:"outline",size:"sm",onClick:Ve},{default:s(()=>e[30]||(e[30]=[a("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1),u(" Clear Filters ",-1)])),_:1,__:[30]})):b("",!0)]),n(o(Je),{columns:ke,data:$.value,loading:W.value,pagination:xe.value,"empty-message":"No users found",onSortChange:Me,onPageChange:Se,onRowClick:_e},{"column-user":s(({row:l})=>[a("div",rl,[a("div",il,[a("span",ul,d(Ee(l.firstName,l.lastName)),1)]),a("div",null,[a("h4",dl,d(`${l.firstName} ${l.lastName}`),1),a("p",vl,d(l.email),1)])])]),"column-role":s(({row:l})=>[n(o(V),{variant:J(l.role)},{default:s(()=>[u(d(K(l.role)),1)]),_:2},1032,["variant"])]),"column-status":s(({row:l})=>[n(o(V),{variant:l.enabled?"success":"error"},{default:s(()=>[u(d(l.enabled?"Active":"Inactive"),1)]),_:2},1032,["variant"])]),"column-teams":s(({row:l})=>[_(l.id).length>0?(i(),p("div",ml,[(i(!0),p(Z,null,ee(_(l.id).slice(0,2),m=>(i(),P(o(V),{key:m.id,variant:"info",size:"sm"},{default:s(()=>[u(d(m.name),1)]),_:2},1024))),128)),_(l.id).length>2?(i(),P(o(V),{key:0,variant:"secondary",size:"sm"},{default:s(()=>[u(" +"+d(_(l.id).length-2),1)]),_:2},1024)):b("",!0)])):(i(),p("span",cl,"No teams"))]),"column-lastLogin":s(({row:l})=>[l.lastLogin?(i(),p("div",pl,d(Be(l.lastLogin)),1)):(i(),p("span",gl,"Never"))]),"row-actions":s(({row:l})=>[a("div",fl,[n(o(g),{variant:"ghost",size:"sm",onClick:m=>re(l),title:"View Details"},{default:s(()=>[e[31]||(e[31]=a("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"}),a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"})],-1)),D.value?b("",!0):(i(),p("span",bl,"View"))]),_:2,__:[31]},1032,["onClick"]),n(o(g),{variant:"ghost",size:"sm",onClick:m=>ie(l),title:"Edit User",disabled:!I.value},{default:s(()=>[e[32]||(e[32]=a("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"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-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})],-1)),D.value?b("",!0):(i(),p("span",yl,"Edit"))]),_:2,__:[32]},1032,["onClick","disabled"]),n(o(g),{variant:"ghost",size:"sm",onClick:m=>Re(l),title:"Change Role",disabled:!I.value},{default:s(()=>[e[33]||(e[33]=a("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 7a2 2 0 012 2m4 0a6 6 0 01-7.743 5.743L11 17H9v-2L2.257 8.257a6 6 0 018.486-8.486L18 7z"})],-1)),D.value?b("",!0):(i(),p("span",kl,"Role"))]),_:2,__:[33]},1032,["onClick","disabled"]),n(o(g),{variant:"ghost",size:"sm",onClick:m=>Te(l),title:"Manage Teams",disabled:!I.value},{default:s(()=>[e[34]||(e[34]=a("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[a("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"})],-1)),D.value?b("",!0):(i(),p("span",xl,"Teams"))]),_:2,__:[34]},1032,["onClick","disabled"])])]),_:1},8,["data","loading","pagination"])],512),[[Ge,!W.value||$.value.length]])]),n(o(G),{modelValue:R.value,"onUpdate:modelValue":e[9]||(e[9]=l=>R.value=l),title:U.value==="view"?"User Details":"Edit User",size:"lg"},{footer:s(()=>[a("div",Ul,[n(o(g),{variant:"outline",onClick:e[8]||(e[8]=l=>R.value=!1),disabled:T.value},{default:s(()=>[u(d(U.value==="view"?"Close":"Cancel"),1)]),_:1},8,["disabled"]),U.value==="edit"?(i(),P(o(g),{key:0,variant:"primary",onClick:Pe,loading:T.value,disabled:T.value},{default:s(()=>[u(d(T.value?"Saving...":"Save Changes"),1)]),_:1},8,["loading","disabled"])):b("",!0)])]),default:s(()=>[r.value?(i(),p("div",hl,[a("div",wl,[a("div",null,[e[35]||(e[35]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"First Name",-1)),n(o(B),{modelValue:r.value.firstName,"onUpdate:modelValue":e[5]||(e[5]=l=>r.value.firstName=l),readonly:U.value==="view"},null,8,["modelValue","readonly"])]),a("div",null,[e[36]||(e[36]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Last Name",-1)),n(o(B),{modelValue:r.value.lastName,"onUpdate:modelValue":e[6]||(e[6]=l=>r.value.lastName=l),readonly:U.value==="view"},null,8,["modelValue","readonly"])]),a("div",Cl,[e[37]||(e[37]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Email",-1)),n(o(B),{modelValue:r.value.email,"onUpdate:modelValue":e[7]||(e[7]=l=>r.value.email=l),readonly:U.value==="view"},null,8,["modelValue","readonly"])]),a("div",null,[e[38]||(e[38]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Role",-1)),n(o(V),{variant:J(r.value.role)},{default:s(()=>[u(d(K(r.value.role)),1)]),_:1},8,["variant"])]),a("div",null,[e[39]||(e[39]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Status",-1)),n(o(V),{variant:r.value.enabled?"success":"error"},{default:s(()=>[u(d(r.value.enabled?"Active":"Inactive"),1)]),_:1},8,["variant"])])])])):b("",!0)]),_:1},8,["modelValue","title"]),n(o(G),{modelValue:E.value,"onUpdate:modelValue":e[12]||(e[12]=l=>E.value=l),title:"Change User Role",size:"md"},{footer:s(()=>[a("div",Sl,[n(o(g),{variant:"outline",onClick:e[11]||(e[11]=l=>E.value=!1),disabled:z.value},{default:s(()=>e[43]||(e[43]=[u("Cancel",-1)])),_:1,__:[43]},8,["disabled"]),n(o(g),{variant:"primary",onClick:Le,disabled:!F.value||z.value,loading:z.value},{default:s(()=>[u(d(z.value?"Changing...":"Change Role"),1)]),_:1},8,["disabled","loading"])])]),default:s(()=>[r.value?(i(),p("div",Vl,[a("p",Ml,[e[40]||(e[40]=u(" Change role for ",-1)),a("strong",null,d(r.value.firstName)+" "+d(r.value.lastName),1)]),a("div",null,[e[41]||(e[41]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Current Role",-1)),n(o(V),{variant:J(r.value.role)},{default:s(()=>[u(d(K(r.value.role)),1)]),_:1},8,["variant"])]),a("div",null,[e[42]||(e[42]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"New Role",-1)),n(o(q),{modelValue:F.value,"onUpdate:modelValue":e[10]||(e[10]=l=>F.value=l),options:Y.value.filter(l=>{var m;return l.value!==((m=r.value.role)==null?void 0:m.code)}),placeholder:"Select new role"},null,8,["modelValue","options"])])])):b("",!0)]),_:1},8,["modelValue"]),n(o(G),{modelValue:A.value,"onUpdate:modelValue":e[17]||(e[17]=l=>A.value=l),title:"Manage User Teams",size:"md"},{footer:s(()=>[a("div",Ll,[n(o(g),{variant:"outline",onClick:e[16]||(e[16]=l=>A.value=!1)},{default:s(()=>e[50]||(e[50]=[u("Cancel",-1)])),_:1,__:[50]}),n(o(g),{variant:"primary",onClick:je},{default:s(()=>e[51]||(e[51]=[u(" Save Teams ",-1)])),_:1,__:[51]})])]),default:s(()=>[r.value?(i(),p("div",Fl,[a("p",_l,[e[44]||(e[44]=u(" Manage team assignments for ",-1)),a("strong",null,d(r.value.firstName)+" "+d(r.value.lastName),1)]),a("div",null,[e[45]||(e[45]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Current Teams",-1)),_(r.value.id).length>0?(i(),p("div",Rl,[(i(!0),p(Z,null,ee(_(r.value.id),l=>(i(),P(o(V),{key:l.id,variant:"info"},{default:s(()=>[u(d(l.name),1)]),_:2},1024))),128))])):(i(),p("p",Tl,"No teams assigned"))]),a("div",null,[e[49]||(e[49]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Available Teams",-1)),a("div",zl,[a("div",Nl,[O(a("input",{type:"checkbox",id:"engineering",class:"w-5 h-5 rounded border-3 border-gray-800 text-primary-600 focus:ring-primary-500 focus:border-primary-600 bg-white",style:{"border-width":"3px !important","border-color":"#374151 !important"},"onUpdate:modelValue":e[13]||(e[13]=l=>x.value=l),value:"engineering"},null,512),[[le,x.value]]),e[46]||(e[46]=a("label",{for:"engineering",class:"text-sm font-medium text-gray-700 cursor-pointer"},"Engineering",-1))]),a("div",Il,[O(a("input",{type:"checkbox",id:"maintenance",class:"w-5 h-5 rounded border-3 border-gray-800 text-primary-600 focus:ring-primary-500 focus:border-primary-600 bg-white",style:{"border-width":"3px !important","border-color":"#374151 !important"},"onUpdate:modelValue":e[14]||(e[14]=l=>x.value=l),value:"maintenance"},null,512),[[le,x.value]]),e[47]||(e[47]=a("label",{for:"maintenance",class:"text-sm font-medium text-gray-700 cursor-pointer"},"Maintenance",-1))]),a("div",Pl,[O(a("input",{type:"checkbox",id:"operations",class:"w-5 h-5 rounded border-3 border-gray-800 text-primary-600 focus:ring-primary-500 focus:border-primary-600 bg-white",style:{"border-width":"3px !important","border-color":"#374151 !important"},"onUpdate:modelValue":e[15]||(e[15]=l=>x.value=l),value:"operations"},null,512),[[le,x.value]]),e[48]||(e[48]=a("label",{for:"operations",class:"text-sm font-medium text-gray-700 cursor-pointer"},"Operations",-1))])])])])):b("",!0)]),_:1},8,["modelValue"]),n(o(G),{modelValue:j.value,"onUpdate:modelValue":e[21]||(e[21]=l=>j.value=l),title:"Invite Users",size:"lg"},{footer:s(()=>[a("div",Bl,[n(o(g),{variant:"outline",onClick:e[20]||(e[20]=l=>j.value=!1),disabled:N.value},{default:s(()=>e[57]||(e[57]=[u("Cancel",-1)])),_:1,__:[57]},8,["disabled"]),n(o(g),{variant:"primary",onClick:Ie,disabled:y.value.length===0||!S.value||N.value,loading:N.value},{default:s(()=>[u(d(N.value?"Sending...":`Send ${y.value.length>1?"Invitations":"Invitation"}`),1)]),_:1},8,["disabled","loading"])])]),default:s(()=>[a("div",jl,[a("div",null,[e[54]||(e[54]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Email Addresses",-1)),n(o(B),{modelValue:k.value,"onUpdate:modelValue":e[18]||(e[18]=l=>k.value=l),type:"email",placeholder:"Enter email address",class:"mb-2"},null,8,["modelValue"]),y.value.length>0?(i(),p("div",El,[(i(!0),p(Z,null,ee(y.value,(l,m)=>(i(),p("div",{key:m,class:"flex items-center justify-between bg-gray-50 px-3 py-2 rounded"},[a("span",Al,d(l),1),n(o(g),{variant:"ghost",size:"sm",onClick:X=>Ne(m)},{default:s(()=>e[52]||(e[52]=[u("×",-1)])),_:2,__:[52]},1032,["onClick"])]))),128))])):b("",!0),n(o(g),{variant:"outline",size:"sm",onClick:ze,class:"mt-2"},{default:s(()=>e[53]||(e[53]=[u(" Add Email ",-1)])),_:1,__:[53]})]),a("div",null,[e[55]||(e[55]=a("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Assign Role",-1)),n(o(q),{modelValue:S.value,"onUpdate:modelValue":e[19]||(e[19]=l=>S.value=l),options:Y.value,placeholder:"Select role for invited users"},null,8,["modelValue","options"])]),e[56]||(e[56]=a("div",{class:"bg-blue-50 p-3 rounded"},[a("p",{class:"text-sm text-blue-800"}," Users will receive an email invitation to join the system ")],-1))])]),_:1},8,["modelValue"])]),_:1}))}};export{ea as default};