import{r as L,aX as ce,c as _,m as he,l as je,o as Re,s as Ee,v as He,i as H,w as v,g as h,b as o,d as i,e,F as P,n as qe,k as B,a as A,j as T,h as re,t as D,aR as we,aV as $e,ae as ue,aU as de}from"./index-BUdRbiwj.js";import{u as be}from"./customers-BwQm3paR.js";import{u as Je}from"./useFormAutoSave-Jaawgo91.js";import{F as We,a as Xe}from"./FPPageHeader-CTG2L28r.js";import{F}from"./FPInput-CzR_dWoe.js";import{F as oe}from"./FPCheckbox-Bu8jNAEW.js";import{F as q}from"./FPSelect-C7p47Ma2.js";import{F as Ze}from"./FPStats-BGfZcDZc.js";import{F as Ge}from"./FPTable-CU8C_NYc.js";import{F as Qe}from"./FPModal-DWGF1LV8.js";import{F as me}from"./FPBadge-BKY5dPnL.js";import{F as Ce}from"./FPTabs-R71V25QN.js";import{_ as Ye}from"./FormRestoreNotification-DYBlXhOP.js";import"./FPCard-qHzcEQAE.js";function Ke(){const S=be(),{success:U,error:V}=je(),d=L(!1),r=L(!1),u=ce({search:"",type:"",priority:"",status:"",sortBy:"name",sortOrder:"asc"}),b=ce({page:1,itemsPerPage:25,total:0}),z=_(()=>{let l=[...S.customers||[]];if(u.search){const p=u.search.toLowerCase();l=l.filter(m=>{var g;return m&&((m.name||"").toLowerCase().includes(p)||(m.email||"").toLowerCase().includes(p)||(m.customerCode||"").toLowerCase().includes(p)||(((g=m.primaryContact)==null?void 0:g.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 g=p[u.sortBy],O=m[u.sortBy];if(u.sortBy.includes(".")){const E=u.sortBy.split(".");g=E.reduce((I,j)=>I==null?void 0:I[j],p),O=E.reduce((I,j)=>I==null?void 0:I[j],m)}if(!g&&!O)return 0;if(!g)return 1;if(!O)return-1;g=g.toString().toLowerCase(),O=O.toString().toLowerCase();const c=g.localeCompare(O);return u.sortOrder==="desc"?-c:c}),l=l.filter(p=>p!=null),b.total=l.length;const f=(b.page-1)*b.itemsPerPage,k=f+b.itemsPerPage;return l.slice(f,k)}),R=_(()=>[{label:"Total Customers",value:S.totalCustomers,change:"+12%",changeType:"positive"},{label:"Active Customers",value:S.activeCustomersCount,change:"+8%",changeType:"positive"},{label:"High Priority",value:S.highPriorityCustomersCount,change:"+3",changeType:"neutral"},{label:"Avg Response Time",value:S.averageResponseTime||"N/A",change:"-15min",changeType:"positive"}]),X=l=>{u.search=l,b.page=1},x=()=>{},Z=()=>{Object.assign(u,{search:"",type:"",priority:"",status:"",sortBy:"name",sortOrder:"asc"}),r.value=!1,b.page=1},G=()=>{r.value=!r.value,b.page=1},w=l=>{b.page=l},Q=l=>{u.sortBy===l.key?u.sortOrder=u.sortOrder==="asc"?"desc":"asc":(u.sortBy=l.key,u.sortOrder="asc"),b.page=1},Y=async()=>{d.value=!0;try{await S.fetchCustomers(),U("Customer list has been updated successfully","Data refreshed")}catch(l){console.error("Failed to refresh customers:",l),V("Failed to refresh customer data","Refresh failed")}finally{d.value=!1}},K=async(l="csv")=>{d.value=!0;try{const f=z.value;if(l==="csv"){const k=y(f);M(k,`customers_${new Date().toISOString().split("T")[0]}.csv`,"text/csv")}else if(l==="json"){const k=JSON.stringify(f,null,2);M(k,`customers_${new Date().toISOString().split("T")[0]}.json`,"application/json")}U(`${f.length} customers exported successfully`,"Export completed")}catch(f){console.error("Export failed:",f),V("Failed to export customer data","Export failed")}finally{d.value=!1}},ee=async l=>{try{const f=l.status==="active"?"inactive":"active";await S.updateCustomer(l.id,{...l,status:f}),U(`Customer "${l.name}" has been ${f==="active"?"activated":"deactivated"}`,"Status updated")}catch(f){console.error("Failed to toggle customer status:",f),V("Failed to update customer status","Update failed")}},n=async l=>{try{await S.deleteCustomer(l.id),U(`Customer "${l.name}" has been removed`,"Customer deleted")}catch(f){console.error("Failed to delete customer:",f),V("Failed to delete customer","Delete failed")}},a=async(l,f)=>{d.value=!0;try{const k=l.map(p=>S.updateCustomer(p,f));await Promise.all(k),U(`${l.length} customers updated successfully`,"Bulk update completed")}catch(k){console.error("Bulk update failed:",k),V("Failed to update customers","Bulk update failed")}finally{d.value=!1}},y=l=>{if(!l||l.length===0)return"";const f=["Customer Code","Name","Email","Phone","Type","Priority","Status","Response Time SLA","Resolution Time SLA","Primary Contact","Address","Created Date"],k=l.map(m=>{var g,O,c,E,I,j,se;return[m.customerCode||"",m.name||"",m.email||"",m.phone||"",m.type||"",m.priority||"",m.status||"",((g=m.sla)==null?void 0:g.responseTime)||"",((O=m.sla)==null?void 0:O.resolutionTime)||"",((c=m.primaryContact)==null?void 0:c.name)||"",[(E=m.address)==null?void 0:E.street,(I=m.address)==null?void 0:I.city,(j=m.address)==null?void 0:j.state,(se=m.address)==null?void 0:se.zipCode].filter(Boolean).join(", "),m.createdAt?new Date(m.createdAt).toLocaleDateString():""]});return[f,...k].map(m=>m.map(g=>`"${g}"`).join(",")).join(` `)},M=(l,f,k)=>{const p=new Blob([l],{type:k}),m=URL.createObjectURL(p),g=document.createElement("a");g.href=m,g.download=f,document.body.appendChild(g),g.click(),document.body.removeChild(g),URL.revokeObjectURL(m)},te=async l=>{d.value=!0;try{return await S.searchCustomers(l)}catch(f){return console.error("Search failed:",f),V("Failed to search customers","Search failed"),[]}finally{d.value=!1}};return he(()=>[u.search,u.type,u.priority,u.status],()=>{b.page=1}),{loading:d,filters:u,pagination:b,showActiveOnly:r,filteredCustomers:z,customerStatsFormatted:R,handleSearch:X,applyFilters:x,clearAllFilters:Z,toggleActiveFilter:G,handlePageChange:w,handleSortChange:Q,refreshData:Y,exportCustomers:K,toggleCustomerStatus:ee,deleteCustomer:n,bulkUpdateCustomers:a,searchCustomers:te}}function et(){const S=L(!1),U=L(!1),V=L(!1),d=L("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:[]}],b=()=>{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(y=>y&&y.toString().trim()!=="").length;return Math.round(a/n.length*100)},z=n=>{const a=u.find(y=>y.key===n);return!a||!a.required?!0:a.required.every(y=>{if(y.includes(".")){const[M,te]=y.split(".");return r[M]&&r[M][te]}return r[y]&&r[y].toString().trim()!==""})},R=()=>u.findIndex(n=>n.key===d.value),X=()=>{const n=R();n{const n=R();n>0&&(d.value=u[n-1].key)},Z=n=>{const a=u.findIndex(M=>M.key===n),y=R();(a<=y||z(d.value))&&(d.value=n)},G=()=>{V.value=!0},w=()=>{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",V.value=!1,U.value=!1,S.value=!1},Y=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}}),U.value=!0,V.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(y=>{n[a][y]===""&&(n[a][y]=null)}):n[a]===""&&(n[a]=null)}),n.sla.availability&&(n.sla.availability=parseFloat(n.sla.availability)),U.value||(n.createdAt=new Date().toISOString()),n.updatedAt=new Date().toISOString(),n};return{customerForm:r,currentFormTab:d,formTabs:u,saving:S,isEditing:U,hasUnsavedChanges:V,completionPercentage:_(()=>b()),isCurrentTabValid:_(()=>z(d.value)),nextTab:X,previousTab:x,goToTab:Z,handleFormInput:G,validateCustomer:w,resetForm:Q,loadCustomer:Y,getCompletionPercentage:b,getFieldHelper:K,formatForSubmission:ee,isTabValid:z}}const tt={class:"p-6"},st={class:"mb-6 grid grid-cols-1 md:grid-cols-4 gap-4"},at={class:"flex space-x-2"},ot={key:0,class:"flex items-center space-x-2"},lt={class:"font-mono text-sm font-medium"},nt={key:0,class:"flex items-center space-x-3"},it={class:"font-medium text-gray-900"},rt={class:"text-sm text-gray-500"},ut={key:0,class:"text-sm"},dt={class:"font-medium"},mt={class:"text-gray-500"},ct={key:0,class:"text-sm"},pt={class:"text-gray-900"},vt={class:"text-gray-500"},yt={key:0,class:"flex items-center space-x-2"},ft={key:0,class:"w-4 h-4 text-red-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},gt={key:1,class:"w-4 h-4 text-green-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},Ct={class:"flex items-center justify-between"},ht={class:"text-lg font-medium text-gray-900"},bt={class:"flex items-center space-x-2"},kt={key:0,class:"text-xs text-amber-600 bg-amber-50 px-2 py-1 rounded"},Vt={key:1,class:"text-xs text-gray-500"},xt={key:0,class:"space-y-4"},St={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Tt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Ft={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Ut={key:1,class:"space-y-4"},It={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Pt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},At={class:"space-y-3"},Dt={class:"grid grid-cols-2 md:grid-cols-4 gap-3"},Ot={key:2,class:"space-y-4"},Bt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},_t={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Nt={class:"space-y-3"},Lt={class:"grid grid-cols-1 md:grid-cols-3 gap-4"},zt={class:"flex justify-between"},Mt={class:"flex space-x-2"},jt={class:"flex space-x-2"},es={__name:"CustomersListView",setup(S){const U=Ee(),V=He(),d=be(),{exportCustomers:r,refreshData:u,toggleCustomerStatus:b,loading:z,filteredCustomers:R,customerStatsFormatted:X,filters:x,pagination:Z,handleSearch:G,applyFilters:w,handlePageChange:Q,handleSortChange:Y,clearAllFilters:K,showActiveOnly:ee,toggleActiveFilter:n}=Ke(),{customerForm:a,currentFormTab:y,formTabs:M,hasUnsavedChanges:te,isEditing:l,saving:f,resetForm:k,loadCustomer:p,getCompletionPercentage:m,nextTab:g,previousTab:O,handleFormInput:c}=et(),{hasUnsavedChanges:E,saveNow:I,restoreFormData:j,clearSavedData:se,hasSavedData:le,getSavedDataInfo:pe,markUserInteraction:ke}=Je(a,{storageKey:"atlas_customer_form_data",saveInterval:3e3,excludeFields:[]}),$=L(!1),J=L(null),W=L(!1),ne=L("all"),Ve=_(()=>d.customerTypeOptions),ve=_(()=>d.priorityOptions),xe=_(()=>d.responseTimeOptions),Se=_(()=>d.resolutionTimeOptions),Te=_(()=>d.serviceHoursOptions),Fe=_(()=>d.customerTypeOptions),Ue=[{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"}],Ie=_(()=>[{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}]),Pe=()=>{j(),$.value=!1,J.value=null},Ae=()=>{se(),$.value=!1,J.value=null},ye=()=>{l.value=!1,De(),le()||k(),W.value=!0,y.value="basic"},De=()=>{!l.value&&le()&&(J.value=pe(),$.value=!0)},fe=C=>{p(C),W.value=!0,y.value="basic",le()&&(J.value=pe(),$.value=!0)},ge=C=>{V.push(`/customers/${C.id}`)},ie=()=>{E.value&&I(),W.value=!1,$.value=!1,J.value=null,k()},Oe=async()=>{f.value=!0;try{l.value?await d.updateCustomer(a.id,a):await d.createCustomer(a),se(),ie(),await u()}catch(C){console.error("Error saving customer:",C)}finally{f.value=!1}},Be=C=>{switch(ne.value=C,C){case"active":x.value.status="active";break;case"inactive":x.value.status="inactive";break;case"high-priority":x.value.priority="high";break;default:x.value.status="",x.value.priority=""}},_e=C=>({internal:"blue",external:"green",partner:"purple",government:"gray"})[C]||"gray",Ne=C=>({high:"red",medium:"yellow",low:"green"})[C]||"gray",Le=C=>({active:"green",inactive:"gray",suspended:"red"})[C]||"gray",ze=C=>C?new Date(C).toLocaleDateString():"Never";Re(async()=>{d.loadMockData(),await u();const C=U.query.edit;C&&setTimeout(()=>{const t=d.customers.find(N=>N.id===parseInt(C));t&&fe(t),V.replace({path:"/customers"})},500),U.query.create==="true"&&setTimeout(()=>{ye(),V.replace({path:"/customers"})},500)});const Me=()=>{ke()};return he(a,()=>{W.value&&Me()},{deep:!0}),(C,s)=>(h(),H(We,null,{header:v(()=>[i(Xe,{title:"Customers",description:"Manage customers and service recipients",breadcrumbs:[{text:"Customers",to:null}]},{actions:v(()=>[i(e(P),{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),B(" Export ",-1)])),_:1,__:[34]},8,["onClick"]),i(e(P),{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),B(" Refresh ",-1)])),_:1,__:[35]},8,["onClick"]),i(e(P),{variant:"primary",size:"sm",onClick:ye},{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),B(" Add Customer ",-1)])),_:1,__:[36]})]),stats:v(()=>[i(e(Ze),{stats:e(X)},null,8,["stats"])]),tabs:v(()=>[i(e(Ce),{modelValue:ne.value,"onUpdate:modelValue":s[0]||(s[0]=t=>ne.value=t),tabs:Ie.value,onTabChange:Be},null,8,["modelValue","tabs"])]),_:1})]),default:v(()=>[o("div",tt,[o("div",st,[i(e(F),{modelValue:e(x).search,"onUpdate:modelValue":s[1]||(s[1]=t=>e(x).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(q),{modelValue:e(x).type,"onUpdate:modelValue":[s[2]||(s[2]=t=>e(x).type=t),e(w)],placeholder:"Filter by Type",options:Ve.value},null,8,["modelValue","options","onUpdate:modelValue"]),i(e(q),{modelValue:e(x).priority,"onUpdate:modelValue":[s[3]||(s[3]=t=>e(x).priority=t),e(w)],placeholder:"Filter by Priority",options:ve.value},null,8,["modelValue","options","onUpdate:modelValue"]),o("div",at,[i(e(P),{variant:"outline",size:"sm",class:qe({"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),B(" Active ",-1)])),_:1,__:[38]},8,["class","onClick"]),i(e(P),{variant:"outline",size:"sm",onClick:e(K),title:"Clear all filters"},{default:v(()=>s[39]||(s[39]=[B(" Clear ",-1)])),_:1,__:[39]},8,["onClick"])])]),i(e(Ge),{columns:Ue,data:e(R),loading:e(z),pagination:e(Z),onRowClick:ge,onPageChange:e(Q),onSortChange:e(Y)},{customerCode:v(({row:t})=>[t?(h(),A("div",ot,[i(e(me),{variant:_e(t==null?void 0:t.type),size:"xs",class:"w-2 h-2 rounded-full p-0"},null,8,["variant"]),o("span",lt,D((t==null?void 0:t.customerCode)||"N/A"),1)])):T("",!0)]),name:v(({row:t})=>{var N,ae;return[t?(h(),A("div",nt,[i(e(we),{user:{firstName:((N=t==null?void 0:t.name)==null?void 0:N.split(" ")[0])||"N",lastName:((ae=t==null?void 0:t.name)==null?void 0:ae.split(" ")[1])||"A"},size:"sm"},null,8,["user"]),o("div",null,[o("div",it,D((t==null?void 0:t.name)||"Unknown"),1),o("div",rt,D((t==null?void 0:t.email)||"No email"),1)])])):T("",!0)]}),priority:v(({row:t})=>[t?(h(),H(e(me),{key:0,variant:Ne(t==null?void 0:t.priority)},{default:v(()=>[B(D((t==null?void 0:t.priority)||"Unknown"),1)]),_:2},1032,["variant"])):T("",!0)]),sla:v(({row:t})=>{var N,ae;return[t?(h(),A("div",ut,[o("div",dt,D(((N=t==null?void 0:t.sla)==null?void 0:N.responseTime)||"N/A"),1),o("div",mt,D(((ae=t==null?void 0:t.sla)==null?void 0:ae.resolutionTime)||"N/A"),1)])):T("",!0)]}),status:v(({row:t})=>[t?(h(),H(e(me),{key:0,variant:Le((t==null?void 0:t.status)||"inactive")},{default:v(()=>[B(D((t==null?void 0:t.status)||"Unknown"),1)]),_:2},1032,["variant"])):T("",!0)]),lastContact:v(({row:t})=>[t?(h(),A("div",ct,[o("div",pt,D(ze(t==null?void 0:t.lastContactDate)),1),o("div",vt,D((t==null?void 0:t.lastContactMethod)||"Unknown"),1)])):T("",!0)]),actions:v(({row:t})=>[t?(h(),A("div",yt,[i(e(P),{variant:"ghost",size:"xs",onClick:re(N=>ge(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(P),{variant:"ghost",size:"xs",onClick:re(N=>fe(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?(h(),H(e(P),{key:0,variant:"ghost",size:"xs",onClick:re(N=>e(b)(t),["stop"]),title:(t==null?void 0:t.status)==="active"?"Deactivate Customer":"Activate Customer"},{default:v(()=>[(t==null?void 0:t.status)==="active"?(h(),A("svg",ft,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)]))):(h(),A("svg",gt,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"])):T("",!0)])):T("",!0)]),_:1},8,["data","loading","pagination","onPageChange","onSortChange"])]),i(e(Qe),{modelValue:W.value,"onUpdate:modelValue":s[33]||(s[33]=t=>W.value=t),size:"xl",onCancel:ie},{header:v(()=>[o("div",Ct,[o("h3",ht,D(e(l)?"Edit Customer":"Create Customer"),1),o("div",bt,[e(l)&&e(te)?(h(),A("span",kt," Auto-saving... ")):T("",!0),e(y)!=="basic"?(h(),A("span",Vt,D(e(m)())+"% complete ",1)):T("",!0)])])]),footer:v(()=>[o("div",zt,[o("div",Mt,[e(y)!=="basic"?(h(),H(e(P),{key:0,variant:"outline",onClick:e(O)},{default:v(()=>s[49]||(s[49]=[B(" Previous ",-1)])),_:1,__:[49]},8,["onClick"])):T("",!0)]),o("div",jt,[i(e(P),{variant:"outline",onClick:ie},{default:v(()=>s[50]||(s[50]=[B(" Cancel ",-1)])),_:1,__:[50]}),e(y)!=="contact"?(h(),H(e(P),{key:0,variant:"primary",onClick:e(g)},{default:v(()=>s[51]||(s[51]=[B(" Next ",-1)])),_:1,__:[51]},8,["onClick"])):(h(),H(e(P),{key:1,variant:"primary",loading:e(f),onClick:Oe},{default:v(()=>[B(D(e(l)?"Update Customer":"Create Customer"),1)]),_:1},8,["loading"]))])])]),default:v(()=>[i(e(Ye),{visible:$.value,"saved-data-info":J.value,onRestore:Pe,onDismiss:Ae},null,8,["visible","saved-data-info"]),i(e(Ce),{modelValue:e(y),"onUpdate:modelValue":s[4]||(s[4]=t=>$e(y)?y.value=t:null),tabs:e(M),class:"mb-6"},null,8,["modelValue","tabs"]),e(y)==="basic"?(h(),A("div",xt,[o("div",St,[i(e(F),{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(F),{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",Tt,[i(e(F),{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(q),{modelValue:e(a).type,"onUpdate:modelValue":[s[8]||(s[8]=t=>e(a).type=t),e(c)],label:"Customer Type",options:Fe.value,placeholder:"Select customer type",required:""},null,8,["modelValue","options","onUpdate:modelValue"])]),o("div",Ft,[i(e(q),{modelValue:e(a).priority,"onUpdate:modelValue":[s[9]||(s[9]=t=>e(a).priority=t),e(c)],label:"Priority Level",options:ve.value,placeholder:"Select priority"},null,8,["modelValue","options","onUpdate:modelValue"]),i(e(F),{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]])])])):T("",!0),e(y)==="service"?(h(),A("div",Ut,[o("div",It,[i(e(q),{modelValue:e(a).sla.responseTime,"onUpdate:modelValue":[s[13]||(s[13]=t=>e(a).sla.responseTime=t),e(c)],label:"Response Time SLA",options:xe.value,placeholder:"Select response time"},null,8,["modelValue","options","onUpdate:modelValue"]),i(e(q),{modelValue:e(a).sla.resolutionTime,"onUpdate:modelValue":[s[14]||(s[14]=t=>e(a).sla.resolutionTime=t),e(c)],label:"Resolution Time SLA",options:Se.value,placeholder:"Select resolution time"},null,8,["modelValue","options","onUpdate:modelValue"])]),o("div",Pt,[i(e(F),{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(q),{modelValue:e(a).serviceHours,"onUpdate:modelValue":[s[16]||(s[16]=t=>e(a).serviceHours=t),e(c)],label:"Service Hours",options:Te.value,placeholder:"Select service hours"},null,8,["modelValue","options","onUpdate:modelValue"])]),o("div",At,[s[45]||(s[45]=o("label",{class:"block text-sm font-medium text-gray-700"},"Notification Preferences",-1)),o("div",Dt,[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]])])])):T("",!0),e(y)==="contact"?(h(),A("div",Ot,[o("div",Bt,[i(e(F),{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(F),{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",_t,[i(e(F),{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(F),{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(F),{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",Lt,[i(e(F),{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(F),{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(F),{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]])])])):T("",!0)]),_:1},8,["modelValue"])]),_:1}))}};export{es as default};