import{r as M,aY as ce,c as O,m as ke,l as He,o as Re,s as qe,v as $e,i as H,w as v,g,b as o,d as i,e,F as _,n as Je,k as z,a as b,j as V,h as re,t as D,aS as We,aW as Ye,ae as ue,aV as de}from"./index-QAlcqU00.js";import{u as xe}from"./customers-Gpmak2fJ.js";import{u as Ze}from"./useFormAutoSave-BrW9Wl2Q.js";import{F as Ge,a as Qe}from"./FPPageHeader-CFIwZZgQ.js";import{F as P}from"./FPInput-D5RURom0.js";import{F as oe}from"./FPCheckbox-DcRYwN3n.js";import{F as R}from"./FPSelect-j7n_x8eB.js";import{F as Xe}from"./FPStats-DOY0PQQF.js";import{F as Ke}from"./FPTable-CWvngIYd.js";import{F as et}from"./FPModal-DMoPysvU.js";import{F as me}from"./FPBadge-DvOitM1C.js";import{F as be}from"./FPTabs-qq-Tmb7J.js";import{_ as tt}from"./FormRestoreNotification-2Wflg1mH.js";import"./FPCard-AB6NRXg5.js";function st(){const I=xe(),{success:A,error:S}=He(),d=M(!1),r=M(!1),u=ce({search:"",type:"",priority:"",status:"",sortBy:"name",sortOrder:"asc"}),k=ce({page:1,itemsPerPage:25,total:0}),N=O(()=>{let l=[...I.customers||[]];if(u.search){const p=u.search.toLowerCase();l=l.filter(m=>{var h;return m&&((m.name||"").toLowerCase().includes(p)||(m.email||"").toLowerCase().includes(p)||(m.customerCode||"").toLowerCase().includes(p)||(((h=m.primaryContact)==null?void 0:h.name)||"").toLowerCase().includes(p))})}u.type&&(l=l.filter(p=>p&&p.type===u.type)),u.priority&&(l=l.filter(p=>p&&p.priority===u.priority)),u.status&&(l=l.filter(p=>p&&p.status===u.status)),r.value&&(l=l.filter(p=>p&&p.status==="active")),l.sort((p,m)=>{if(!p&&!m)return 0;if(!p)return 1;if(!m)return-1;let h=p[u.sortBy],L=m[u.sortBy];if(u.sortBy.includes(".")){const B=u.sortBy.split(".");h=B.reduce((F,w)=>F==null?void 0:F[w],p),L=B.reduce((F,w)=>F==null?void 0:F[w],m)}if(!h&&!L)return 0;if(!h)return 1;if(!L)return-1;h=h.toString().toLowerCase(),L=L.toString().toLowerCase();const c=h.localeCompare(L);return u.sortOrder==="desc"?-c:c}),l=l.filter(p=>p!=null),k.total=l.length;const y=(k.page-1)*k.itemsPerPage,x=y+k.itemsPerPage;return l.slice(y,x)}),E=O(()=>[{label:"Total Customers",value:I.totalCustomers,change:"+12%",changeType:"positive"},{label:"Active Customers",value:I.activeCustomersCount,change:"+8%",changeType:"positive"},{label:"High Priority",value:I.highPriorityCustomersCount,change:"+3",changeType:"neutral"},{label:"Avg Response Time",value:I.averageResponseTime||"N/A",change:"-15min",changeType:"positive"}]),Y=l=>{u.search=l,k.page=1},T=()=>{},Z=()=>{Object.assign(u,{search:"",type:"",priority:"",status:"",sortBy:"name",sortOrder:"asc"}),r.value=!1,k.page=1},G=()=>{r.value=!r.value,k.page=1},q=l=>{k.page=l},Q=l=>{u.sortBy===l.key?u.sortOrder=u.sortOrder==="asc"?"desc":"asc":(u.sortBy=l.key,u.sortOrder="asc"),k.page=1},X=async()=>{d.value=!0;try{await I.fetchCustomers(),A("Customer list has been updated successfully","Data refreshed")}catch(l){console.error("Failed to refresh customers:",l),S("Failed to refresh customer data","Refresh failed")}finally{d.value=!1}},K=async(l="csv")=>{d.value=!0;try{const y=N.value;if(l==="csv"){const x=f(y);j(x,`customers_${new Date().toISOString().split("T")[0]}.csv`,"text/csv")}else if(l==="json"){const x=JSON.stringify(y,null,2);j(x,`customers_${new Date().toISOString().split("T")[0]}.json`,"application/json")}A(`${y.length} customers exported successfully`,"Export completed")}catch(y){console.error("Export failed:",y),S("Failed to export customer data","Export failed")}finally{d.value=!1}},ee=async l=>{try{const y=l.status==="active"?"inactive":"active";await I.updateCustomer(l.id,{...l,status:y}),A(`Customer "${l.name}" has been ${y==="active"?"activated":"deactivated"}`,"Status updated")}catch(y){console.error("Failed to toggle customer status:",y),S("Failed to update customer status","Update failed")}},n=async l=>{try{await I.deleteCustomer(l.id),A(`Customer "${l.name}" has been removed`,"Customer deleted")}catch(y){console.error("Failed to delete customer:",y),S("Failed to delete customer","Delete failed")}},a=async(l,y)=>{d.value=!0;try{const x=l.map(p=>I.updateCustomer(p,y));await Promise.all(x),A(`${l.length} customers updated successfully`,"Bulk update completed")}catch(x){console.error("Bulk update failed:",x),S("Failed to update customers","Bulk update failed")}finally{d.value=!1}},f=l=>{if(!l||l.length===0)return"";const y=["Customer Code","Name","Email","Phone","Type","Priority","Status","Response Time SLA","Resolution Time SLA","Primary Contact","Address","Created Date"],x=l.map(m=>{var h,L,c,B,F,w,ae;return[m.customerCode||"",m.name||"",m.email||"",m.phone||"",m.type||"",m.priority||"",m.status||"",((h=m.sla)==null?void 0:h.responseTime)||"",((L=m.sla)==null?void 0:L.resolutionTime)||"",((c=m.primaryContact)==null?void 0:c.name)||"",[(B=m.address)==null?void 0:B.street,(F=m.address)==null?void 0:F.city,(w=m.address)==null?void 0:w.state,(ae=m.address)==null?void 0:ae.zipCode].filter(Boolean).join(", "),m.createdAt?new Date(m.createdAt).toLocaleDateString():""]});return[y,...x].map(m=>m.map(h=>`"${h}"`).join(",")).join(` `)},j=(l,y,x)=>{const p=new Blob([l],{type:x}),m=URL.createObjectURL(p),h=document.createElement("a");h.href=m,h.download=y,document.body.appendChild(h),h.click(),document.body.removeChild(h),URL.revokeObjectURL(m)},te=async l=>{d.value=!0;try{return await I.searchCustomers(l)}catch(y){return console.error("Search failed:",y),S("Failed to search customers","Search failed"),[]}finally{d.value=!1}};return ke(()=>[u.search,u.type,u.priority,u.status],()=>{k.page=1}),{loading:d,filters:u,pagination:k,showActiveOnly:r,filteredCustomers:N,customerStatsFormatted:E,handleSearch:Y,applyFilters:T,clearAllFilters:Z,toggleActiveFilter:G,handlePageChange:q,handleSortChange:Q,refreshData:X,exportCustomers:K,toggleCustomerStatus:ee,deleteCustomer:n,bulkUpdateCustomers:a,searchCustomers:te}}function at(){const I=M(!1),A=M(!1),S=M(!1),d=M("basic"),r=ce({id:null,name:"",email:"",phone:"",type:"",priority:"medium",customerCode:"",description:"",status:"active",sla:{responseTime:"",resolutionTime:"",availability:"",notes:""},serviceHours:"24x7",notifications:{email:!0,sms:!1,phone:!1,portal:!0},primaryContact:{name:"",title:"",email:"",phone:""},address:{street:"",city:"",state:"",zipCode:""},notes:"",createdAt:null,updatedAt:null}),u=[{key:"basic",label:"Basic Information",icon:"info",required:["name","email","type"]},{key:"service",label:"SLA & Service",icon:"clock",required:[]},{key:"contact",label:"Contact & Location",icon:"map",required:[]}],k=()=>{const n=[r.name,r.email,r.phone,r.type,r.priority,r.description,r.sla.responseTime,r.sla.resolutionTime,r.primaryContact.name,r.primaryContact.email,r.address.street,r.address.city],a=n.filter(f=>f&&f.toString().trim()!=="").length;return Math.round(a/n.length*100)},N=n=>{const a=u.find(f=>f.key===n);return!a||!a.required?!0:a.required.every(f=>{if(f.includes(".")){const[j,te]=f.split(".");return r[j]&&r[j][te]}return r[f]&&r[f].toString().trim()!==""})},E=()=>u.findIndex(n=>n.key===d.value),Y=()=>{const n=E();n{const n=E();n>0&&(d.value=u[n-1].key)},Z=n=>{const a=u.findIndex(j=>j.key===n),f=E();(a<=f||N(d.value))&&(d.value=n)},G=()=>{S.value=!0},q=()=>{const n={};if((!r.name||r.name.trim()==="")&&(n.name="Customer name is required"),!r.email||r.email.trim()===""?n.email="Email address is required":/\S+@\S+\.\S+/.test(r.email)||(n.email="Please enter a valid email address"),r.type||(n.type="Customer type is required"),r.phone&&!/^\+?[\d\s\-\(\)]+$/.test(r.phone)&&(n.phone="Please enter a valid phone number"),r.sla.availability){const a=parseFloat(r.sla.availability);(isNaN(a)||a<0||a>100)&&(n.availability="Availability must be between 0 and 100")}return r.primaryContact.email&&!/\S+@\S+\.\S+/.test(r.primaryContact.email)&&(n.primaryContactEmail="Please enter a valid primary contact email"),{isValid:Object.keys(n).length===0,errors:n}},Q=()=>{Object.assign(r,{id:null,name:"",email:"",phone:"",type:"",priority:"medium",customerCode:"",description:"",status:"active",sla:{responseTime:"",resolutionTime:"",availability:"",notes:""},serviceHours:"24x7",notifications:{email:!0,sms:!1,phone:!1,portal:!0},primaryContact:{name:"",title:"",email:"",phone:""},address:{street:"",city:"",state:"",zipCode:""},notes:"",createdAt:null,updatedAt:null}),d.value="basic",S.value=!1,A.value=!1,I.value=!1},X=n=>{Object.assign(r,{...n,sla:{responseTime:"",resolutionTime:"",availability:"",notes:"",...n.sla},notifications:{email:!0,sms:!1,phone:!1,portal:!0,...n.notifications},primaryContact:{name:"",title:"",email:"",phone:"",...n.primaryContact},address:{street:"",city:"",state:"",zipCode:"",...n.address}}),A.value=!0,S.value=!1},K=n=>({customerCode:"Auto-generated unique identifier for the customer",priority:"Determines service level and response priority",responseTime:"Maximum time to acknowledge service requests",resolutionTime:"Target time to resolve issues",availability:"Uptime service level agreement percentage",serviceHours:"When support is available for this customer"})[n]||"",ee=()=>{const n={...r};return Object.keys(n).forEach(a=>{typeof n[a]=="object"&&n[a]!==null?Object.keys(n[a]).forEach(f=>{n[a][f]===""&&(n[a][f]=null)}):n[a]===""&&(n[a]=null)}),n.sla.availability&&(n.sla.availability=parseFloat(n.sla.availability)),A.value||(n.createdAt=new Date().toISOString()),n.updatedAt=new Date().toISOString(),n};return{customerForm:r,currentFormTab:d,formTabs:u,saving:I,isEditing:A,hasUnsavedChanges:S,completionPercentage:O(()=>k()),isCurrentTabValid:O(()=>N(d.value)),nextTab:Y,previousTab:T,goToTab:Z,handleFormInput:G,validateCustomer:q,resetForm:Q,loadCustomer:X,getCompletionPercentage:k,getFieldHelper:K,formatForSubmission:ee,isTabValid:N}}const ot={class:"p-6"},lt={class:"mb-6 grid grid-cols-1 md:grid-cols-4 gap-4"},nt={class:"flex space-x-2"},it={key:0,class:"flex items-center space-x-2"},rt={class:"font-mono text-sm font-medium"},ut={key:0,class:"flex items-center space-x-3"},dt={class:"font-medium text-gray-900"},mt={class:"text-sm text-gray-500"},ct={key:0,class:"text-sm"},pt={class:"font-medium"},vt={class:"text-gray-500"},ft={key:0,class:"text-sm"},yt={class:"text-gray-900"},gt={class:"text-gray-500"},Ct={key:0,class:"flex items-center space-x-2"},ht={key:0,class:"w-4 h-4 text-red-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},bt={key:1,class:"w-4 h-4 text-green-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},kt={class:"flex items-center justify-between"},xt={class:"text-lg font-medium text-gray-900"},Vt={class:"flex items-center space-x-2"},St={key:0,class:"text-xs text-amber-600 bg-amber-50 px-2 py-1 rounded"},Tt={key:1,class:"text-xs text-gray-500"},Ft={key:0,class:"space-y-4"},It={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Ut={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Pt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},At={key:1,class:"space-y-4"},Dt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},_t={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Ot={class:"space-y-3"},Lt={class:"grid grid-cols-2 md:grid-cols-4 gap-3"},zt={key:2,class:"space-y-4"},Bt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Mt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Nt={class:"space-y-3"},jt={class:"grid grid-cols-1 md:grid-cols-3 gap-4"},wt={class:"flex items-center justify-between"},Et={class:"flex items-center space-x-4"},Ht={key:0,class:"flex items-center text-sm text-gray-500"},Rt={key:0,class:"w-4 h-4 mr-2 text-amber-500 animate-pulse",fill:"currentColor",viewBox:"0 0 20 20"},qt={key:1,class:"w-4 h-4 mr-2 text-green-500",fill:"currentColor",viewBox:"0 0 20 20"},$t={key:2},Jt={key:3},Wt={class:"flex space-x-2"},rs={__name:"CustomersListView",setup(I){const A=qe(),S=$e(),d=xe(),{exportCustomers:r,refreshData:u,toggleCustomerStatus:k,loading:N,filteredCustomers:E,customerStatsFormatted:Y,filters:T,pagination:Z,handleSearch:G,applyFilters:q,handlePageChange:Q,handleSortChange:X,clearAllFilters:K,showActiveOnly:ee,toggleActiveFilter:n}=st(),{customerForm:a,currentFormTab:f,formTabs:j,hasUnsavedChanges:te,isEditing:l,saving:y,resetForm:x,loadCustomer:p,getCompletionPercentage:m,nextTab:h,previousTab:L,handleFormInput:c}=at(),{hasUnsavedChanges:B,lastSaveTime:F,saveNow:w,restoreFormData:ae,clearSavedData:pe,hasSavedData:le,getSavedDataInfo:ve,markUserInteraction:Ve,finishInitialization:fe}=Ze(a,{storageKey:"atlas_customer_form_data",saveInterval:3e3,excludeFields:[]}),$=M(!1),J=M(null),Se=O(()=>{if(!F.value)return"";const C=new Date,s=F.value,t=Math.floor((C-s)/(1e3*60));if(t<1)return"just now";if(t===1)return"1 minute ago";if(t<60)return`${t} minutes ago`;const U=Math.floor(t/60);return U===1?"1 hour ago":U<24?`${U} hours ago`:s.toLocaleDateString()}),W=M(!1),ne=M("all"),Te=O(()=>d.customerTypeOptions),ye=O(()=>d.priorityOptions),Fe=O(()=>d.responseTimeOptions),Ie=O(()=>d.resolutionTimeOptions),Ue=O(()=>d.serviceHoursOptions),Pe=O(()=>d.customerTypeOptions),Ae=[{key:"customerCode",label:"Code",sortable:!0,width:"12%"},{key:"name",label:"Customer",sortable:!0,width:"20%"},{key:"type",label:"Type",sortable:!0,width:"12%"},{key:"priority",label:"Priority",sortable:!0,width:"10%"},{key:"sla",label:"SLA",width:"12%"},{key:"status",label:"Status",sortable:!0,width:"10%"},{key:"lastContact",label:"Last Contact",sortable:!0,width:"14%"},{key:"actions",label:"Actions",width:"10%",align:"center"}],De=O(()=>[{key:"all",label:"All Customers",count:d.totalCustomers||0},{key:"active",label:"Active",count:d.activeCustomersCount||0},{key:"inactive",label:"Inactive",count:d.inactiveCustomersCount||0},{key:"high-priority",label:"High Priority",count:d.highPriorityCustomersCount||0}]),_e=()=>{ae(),$.value=!1,J.value=null},Oe=()=>{pe(),$.value=!1,J.value=null},ge=()=>{l.value=!1,Le(),le()||x(),W.value=!0,f.value="basic",setTimeout(()=>{fe()},100)},Le=()=>{!l.value&&le()&&(J.value=ve(),$.value=!0)},Ce=C=>{p(C),W.value=!0,f.value="basic",le()&&(J.value=ve(),$.value=!0),setTimeout(()=>{fe()},100)},he=C=>{S.push(`/customers/${C.id}`)},ie=()=>{B.value&&w(),W.value=!1,$.value=!1,J.value=null,x()},ze=async()=>{y.value=!0;try{l.value?await d.updateCustomer(a.id,a):await d.createCustomer(a),pe(),ie(),await u()}catch(C){console.error("Error saving customer:",C)}finally{y.value=!1}},Be=C=>{switch(ne.value=C,C){case"active":T.value.status="active";break;case"inactive":T.value.status="inactive";break;case"high-priority":T.value.priority="high";break;default:T.value.status="",T.value.priority=""}},Me=C=>({internal:"blue",external:"green",partner:"purple",government:"gray"})[C]||"gray",Ne=C=>({high:"red",medium:"yellow",low:"green"})[C]||"gray",je=C=>({active:"green",inactive:"gray",suspended:"red"})[C]||"gray",we=C=>C?new Date(C).toLocaleDateString():"Never";Re(async()=>{d.loadMockData(),await u();const C=A.query.edit;C&&setTimeout(()=>{const t=d.customers.find(U=>U.id===parseInt(C));t&&Ce(t),S.replace({path:"/customers"})},500),A.query.create==="true"&&setTimeout(()=>{ge(),S.replace({path:"/customers"})},500)});const Ee=()=>{Ve()};return ke(a,()=>{W.value&&Ee()},{deep:!0}),(C,s)=>(g(),H(Ge,null,{header:v(()=>[i(Qe,{title:"Customers",description:"Manage customers and service recipients",breadcrumbs:[{text:"Customers",to:null}]},{actions:v(()=>[i(e(_),{variant:"outline",size:"sm",onClick:e(r)},{default:v(()=>s[34]||(s[34]=[o("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 10v6m0 0l-3-3m3 3l3-3m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),z(" Export ",-1)])),_:1,__:[34]},8,["onClick"]),i(e(_),{variant:"outline",size:"sm",onClick:e(u)},{default:v(()=>s[35]||(s[35]=[o("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("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),z(" Refresh ",-1)])),_:1,__:[35]},8,["onClick"]),i(e(_),{variant:"primary",size:"sm",onClick:ge},{default:v(()=>s[36]||(s[36]=[o("svg",{class:"w-4 h-4 mr-2",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1),z(" Add Customer ",-1)])),_:1,__:[36]})]),stats:v(()=>[i(e(Xe),{stats:e(Y)},null,8,["stats"])]),tabs:v(()=>[i(e(be),{modelValue:ne.value,"onUpdate:modelValue":s[0]||(s[0]=t=>ne.value=t),tabs:De.value,onTabChange:Be},null,8,["modelValue","tabs"])]),_:1})]),default:v(()=>[o("div",ot,[o("div",lt,[i(e(P),{modelValue:e(T).search,"onUpdate:modelValue":s[1]||(s[1]=t=>e(T).search=t),placeholder:"Search customers...",onInput:e(G)},{prepend:v(()=>s[37]||(s[37]=[o("svg",{class:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("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","onInput"]),i(e(R),{modelValue:e(T).type,"onUpdate:modelValue":[s[2]||(s[2]=t=>e(T).type=t),e(q)],placeholder:"Filter by Type",options:Te.value},null,8,["modelValue","options","onUpdate:modelValue"]),i(e(R),{modelValue:e(T).priority,"onUpdate:modelValue":[s[3]||(s[3]=t=>e(T).priority=t),e(q)],placeholder:"Filter by Priority",options:ye.value},null,8,["modelValue","options","onUpdate:modelValue"]),o("div",nt,[i(e(_),{variant:"outline",size:"sm",class:Je({"bg-primary-50 border-primary-300 text-primary-700":e(ee)}),onClick:e(n),title:"Show active customers only"},{default:v(()=>s[38]||(s[38]=[o("svg",{class:"w-4 h-4 mr-1",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1),z(" Active ",-1)])),_:1,__:[38]},8,["class","onClick"]),i(e(_),{variant:"outline",size:"sm",onClick:e(K),title:"Clear all filters"},{default:v(()=>s[39]||(s[39]=[z(" Clear ",-1)])),_:1,__:[39]},8,["onClick"])])]),i(e(Ke),{columns:Ae,data:e(E),loading:e(N),pagination:e(Z),onRowClick:he,onPageChange:e(Q),onSortChange:e(X)},{customerCode:v(({row:t})=>[t?(g(),b("div",it,[i(e(me),{variant:Me(t==null?void 0:t.type),size:"xs",class:"w-2 h-2 rounded-full p-0"},null,8,["variant"]),o("span",rt,D((t==null?void 0:t.customerCode)||"N/A"),1)])):V("",!0)]),name:v(({row:t})=>{var U,se;return[t?(g(),b("div",ut,[i(e(We),{user:{firstName:((U=t==null?void 0:t.name)==null?void 0:U.split(" ")[0])||"N",lastName:((se=t==null?void 0:t.name)==null?void 0:se.split(" ")[1])||"A"},size:"sm"},null,8,["user"]),o("div",null,[o("div",dt,D((t==null?void 0:t.name)||"Unknown"),1),o("div",mt,D((t==null?void 0:t.email)||"No email"),1)])])):V("",!0)]}),priority:v(({row:t})=>[t?(g(),H(e(me),{key:0,variant:Ne(t==null?void 0:t.priority)},{default:v(()=>[z(D((t==null?void 0:t.priority)||"Unknown"),1)]),_:2},1032,["variant"])):V("",!0)]),sla:v(({row:t})=>{var U,se;return[t?(g(),b("div",ct,[o("div",pt,D(((U=t==null?void 0:t.sla)==null?void 0:U.responseTime)||"N/A"),1),o("div",vt,D(((se=t==null?void 0:t.sla)==null?void 0:se.resolutionTime)||"N/A"),1)])):V("",!0)]}),status:v(({row:t})=>[t?(g(),H(e(me),{key:0,variant:je((t==null?void 0:t.status)||"inactive")},{default:v(()=>[z(D((t==null?void 0:t.status)||"Unknown"),1)]),_:2},1032,["variant"])):V("",!0)]),lastContact:v(({row:t})=>[t?(g(),b("div",ft,[o("div",yt,D(we(t==null?void 0:t.lastContactDate)),1),o("div",gt,D((t==null?void 0:t.lastContactMethod)||"Unknown"),1)])):V("",!0)]),actions:v(({row:t})=>[t?(g(),b("div",Ct,[i(e(_),{variant:"ghost",size:"xs",onClick:re(U=>he(t),["stop"]),title:"View Customer"},{default:v(()=>s[40]||(s[40]=[o("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"}),o("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)])),_:2,__:[40]},1032,["onClick"]),i(e(_),{variant:"ghost",size:"xs",onClick:re(U=>Ce(t),["stop"]),title:"Edit Customer"},{default:v(()=>s[41]||(s[41]=[o("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[o("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)])),_:2,__:[41]},1032,["onClick"]),t?(g(),H(e(_),{key:0,variant:"ghost",size:"xs",onClick:re(U=>e(k)(t),["stop"]),title:(t==null?void 0:t.status)==="active"?"Deactivate Customer":"Activate Customer"},{default:v(()=>[(t==null?void 0:t.status)==="active"?(g(),b("svg",ht,s[42]||(s[42]=[o("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)]))):(g(),b("svg",bt,s[43]||(s[43]=[o("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])))]),_:2},1032,["onClick","title"])):V("",!0)])):V("",!0)]),_:1},8,["data","loading","pagination","onPageChange","onSortChange"])]),i(e(et),{modelValue:W.value,"onUpdate:modelValue":s[33]||(s[33]=t=>W.value=t),size:"xl",onCancel:ie},{header:v(()=>[o("div",kt,[o("h3",xt,D(e(l)?"Edit Customer":"Create Customer"),1),o("div",Vt,[e(l)&&e(te)?(g(),b("span",St," Auto-saving... ")):V("",!0),e(f)!=="basic"?(g(),b("span",Tt,D(e(m)())+"% complete ",1)):V("",!0)])])]),footer:v(()=>[o("div",wt,[o("div",Et,[e(B)||e(F)?(g(),b("div",Ht,[e(B)?(g(),b("svg",Rt,s[49]||(s[49]=[o("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm1-12a1 1 0 10-2 0v4a1 1 0 00.293.707l2.828 2.829a1 1 0 101.415-1.415L11 9.586V6z","clip-rule":"evenodd"},null,-1)]))):(g(),b("svg",qt,s[50]||(s[50]=[o("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"},null,-1)]))),e(B)?(g(),b("span",$t,"Auto-saving...")):e(F)?(g(),b("span",Jt,"Last saved "+D(Se.value),1)):V("",!0)])):V("",!0),e(f)!=="basic"?(g(),H(e(_),{key:1,variant:"outline",size:"sm",onClick:e(L)},{default:v(()=>s[51]||(s[51]=[z(" ← Previous ",-1)])),_:1,__:[51]},8,["onClick"])):V("",!0)]),o("div",Wt,[i(e(_),{variant:"outline",onClick:ie},{default:v(()=>s[52]||(s[52]=[z(" Cancel ",-1)])),_:1,__:[52]}),e(f)!=="contact"?(g(),H(e(_),{key:0,variant:"primary",onClick:e(h)},{default:v(()=>s[53]||(s[53]=[z(" Next ",-1)])),_:1,__:[53]},8,["onClick"])):(g(),H(e(_),{key:1,variant:"primary",loading:e(y),onClick:ze},{default:v(()=>[z(D(e(l)?"Update Customer":"Create Customer"),1)]),_:1},8,["loading"]))])])]),default:v(()=>[i(e(tt),{visible:$.value,"saved-data-info":J.value,onRestore:_e,onDismiss:Oe},null,8,["visible","saved-data-info"]),i(e(be),{modelValue:e(f),"onUpdate:modelValue":s[4]||(s[4]=t=>Ye(f)?f.value=t:null),tabs:e(j),class:"mb-6"},null,8,["modelValue","tabs"]),e(f)==="basic"?(g(),b("div",Ft,[o("div",It,[i(e(P),{modelValue:e(a).name,"onUpdate:modelValue":s[5]||(s[5]=t=>e(a).name=t),label:"Customer Name",placeholder:"Enter customer name",required:"",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(P),{modelValue:e(a).email,"onUpdate:modelValue":s[6]||(s[6]=t=>e(a).email=t),label:"Email Address",type:"email",placeholder:"customer@example.com",required:"",onInput:e(c)},null,8,["modelValue","onInput"])]),o("div",Ut,[i(e(P),{modelValue:e(a).phone,"onUpdate:modelValue":s[7]||(s[7]=t=>e(a).phone=t),label:"Phone Number",placeholder:"+1 (555) 123-4567",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(R),{modelValue:e(a).type,"onUpdate:modelValue":[s[8]||(s[8]=t=>e(a).type=t),e(c)],label:"Customer Type",options:Pe.value,placeholder:"Select customer type",required:""},null,8,["modelValue","options","onUpdate:modelValue"])]),o("div",Pt,[i(e(R),{modelValue:e(a).priority,"onUpdate:modelValue":[s[9]||(s[9]=t=>e(a).priority=t),e(c)],label:"Priority Level",options:ye.value,placeholder:"Select priority"},null,8,["modelValue","options","onUpdate:modelValue"]),i(e(P),{modelValue:e(a).customerCode,"onUpdate:modelValue":s[10]||(s[10]=t=>e(a).customerCode=t),label:"Customer Code",placeholder:"Auto-generated",disabled:e(l),onInput:e(c)},null,8,["modelValue","disabled","onInput"])]),o("div",null,[s[44]||(s[44]=o("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Description",-1)),ue(o("textarea",{"onUpdate:modelValue":s[11]||(s[11]=t=>e(a).description=t),placeholder:"Brief description of the customer...",rows:"3",class:"w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm",onInput:s[12]||(s[12]=(...t)=>e(c)&&e(c)(...t))},null,544),[[de,e(a).description]])])])):V("",!0),e(f)==="service"?(g(),b("div",At,[o("div",Dt,[i(e(R),{modelValue:e(a).sla.responseTime,"onUpdate:modelValue":[s[13]||(s[13]=t=>e(a).sla.responseTime=t),e(c)],label:"Response Time SLA",options:Fe.value,placeholder:"Select response time"},null,8,["modelValue","options","onUpdate:modelValue"]),i(e(R),{modelValue:e(a).sla.resolutionTime,"onUpdate:modelValue":[s[14]||(s[14]=t=>e(a).sla.resolutionTime=t),e(c)],label:"Resolution Time SLA",options:Ie.value,placeholder:"Select resolution time"},null,8,["modelValue","options","onUpdate:modelValue"])]),o("div",_t,[i(e(P),{modelValue:e(a).sla.availability,"onUpdate:modelValue":s[15]||(s[15]=t=>e(a).sla.availability=t),label:"Availability Target (%)",type:"number",min:"0",max:"100",placeholder:"99.9",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(R),{modelValue:e(a).serviceHours,"onUpdate:modelValue":[s[16]||(s[16]=t=>e(a).serviceHours=t),e(c)],label:"Service Hours",options:Ue.value,placeholder:"Select service hours"},null,8,["modelValue","options","onUpdate:modelValue"])]),o("div",Ot,[s[45]||(s[45]=o("label",{class:"block text-sm font-medium text-gray-700"},"Notification Preferences",-1)),o("div",Lt,[i(e(oe),{modelValue:e(a).notifications.email,"onUpdate:modelValue":s[17]||(s[17]=t=>e(a).notifications.email=t),label:"Email",onChange:e(c)},null,8,["modelValue","onChange"]),i(e(oe),{modelValue:e(a).notifications.sms,"onUpdate:modelValue":s[18]||(s[18]=t=>e(a).notifications.sms=t),label:"SMS",onChange:e(c)},null,8,["modelValue","onChange"]),i(e(oe),{modelValue:e(a).notifications.phone,"onUpdate:modelValue":s[19]||(s[19]=t=>e(a).notifications.phone=t),label:"Phone",onChange:e(c)},null,8,["modelValue","onChange"]),i(e(oe),{modelValue:e(a).notifications.portal,"onUpdate:modelValue":s[20]||(s[20]=t=>e(a).notifications.portal=t),label:"Portal",onChange:e(c)},null,8,["modelValue","onChange"])])]),o("div",null,[s[46]||(s[46]=o("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"SLA Notes",-1)),ue(o("textarea",{"onUpdate:modelValue":s[21]||(s[21]=t=>e(a).sla.notes=t),placeholder:"Additional SLA requirements or notes...",rows:"3",class:"w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm",onInput:s[22]||(s[22]=(...t)=>e(c)&&e(c)(...t))},null,544),[[de,e(a).sla.notes]])])])):V("",!0),e(f)==="contact"?(g(),b("div",zt,[o("div",Bt,[i(e(P),{modelValue:e(a).primaryContact.name,"onUpdate:modelValue":s[23]||(s[23]=t=>e(a).primaryContact.name=t),label:"Primary Contact Name",placeholder:"John Doe",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(P),{modelValue:e(a).primaryContact.title,"onUpdate:modelValue":s[24]||(s[24]=t=>e(a).primaryContact.title=t),label:"Primary Contact Title",placeholder:"Facility Manager",onInput:e(c)},null,8,["modelValue","onInput"])]),o("div",Mt,[i(e(P),{modelValue:e(a).primaryContact.email,"onUpdate:modelValue":s[25]||(s[25]=t=>e(a).primaryContact.email=t),label:"Primary Contact Email",type:"email",placeholder:"john.doe@customer.com",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(P),{modelValue:e(a).primaryContact.phone,"onUpdate:modelValue":s[26]||(s[26]=t=>e(a).primaryContact.phone=t),label:"Primary Contact Phone",placeholder:"+1 (555) 123-4567",onInput:e(c)},null,8,["modelValue","onInput"])]),o("div",Nt,[s[47]||(s[47]=o("label",{class:"block text-sm font-medium text-gray-700"},"Address",-1)),i(e(P),{modelValue:e(a).address.street,"onUpdate:modelValue":s[27]||(s[27]=t=>e(a).address.street=t),placeholder:"Street Address",onInput:e(c)},null,8,["modelValue","onInput"]),o("div",jt,[i(e(P),{modelValue:e(a).address.city,"onUpdate:modelValue":s[28]||(s[28]=t=>e(a).address.city=t),placeholder:"City",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(P),{modelValue:e(a).address.state,"onUpdate:modelValue":s[29]||(s[29]=t=>e(a).address.state=t),placeholder:"State/Province",onInput:e(c)},null,8,["modelValue","onInput"]),i(e(P),{modelValue:e(a).address.zipCode,"onUpdate:modelValue":s[30]||(s[30]=t=>e(a).address.zipCode=t),placeholder:"ZIP Code",onInput:e(c)},null,8,["modelValue","onInput"])])]),o("div",null,[s[48]||(s[48]=o("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Customer Notes",-1)),ue(o("textarea",{"onUpdate:modelValue":s[31]||(s[31]=t=>e(a).notes=t),placeholder:"Additional notes about this customer...",rows:"4",class:"w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm",onInput:s[32]||(s[32]=(...t)=>e(c)&&e(c)(...t))},null,544),[[de,e(a).notes]])])])):V("",!0)]),_:1},8,["modelValue"])]),_:1}))}};export{rs as default};