1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./5YcoXZCx.js","./DyU1jJkk.js","./Zj1b2Cnv.js","./10pTMIF3.js","./Dou38YRj.js","./DMzFNdrw.js","./Dv2IU5h_.js","./D8dLLcHV.js","./CkNU-Uab.js","./DElDSxDz.js","./DR1pWzm1.js","./DtfIa5Jc.js","./C2j_0qua.js","./Dc-lgQJ4.js","./BUkYwTem.js","./66tMhgjB.js","./Dk-H-qky.js"])))=>i.map(i=>d[i]); 2import It from"./DPSbF845.js";import{_ as Ot}from"./Din0l90g.js";import{_ as Qt,a as Xt,b as es,c as ts}from"./CWg3oY6R.js";import{_ as ss}from"./BNx6w34K.js";import{_ as ls}from"./CmO_be3b.js";import{_ as as,a as is}from"./BSrbPm9p.js";import{_ as ns}from"./CeBm_HqE.js";import{_ as Et}from"./D5SSDPjj.js";import{_ as Pt,a as Bt,b as Rt,c as Wt}from"./Cpbc4iFD.js";import{a as zt,_ as Gt}from"./xfEJaOGN.js";import{_ as os}from"./D_4bjfrh.js";import{_ as rs,a as ds,b as us,c as cs}from"./BFDII-l6.js";import{_ as Kt,K as ne,a as ms,b as fs,h as ps,c as vs}from"./DyU1jJkk.js";import{d as Mt,q as T,k as N,w as Ct,R as c,I as o,F as M,Z as P,V as s,L as _,K as t,al as H,W as f,X as p,au as Ft,av as _s,H as O,J as a,u as i,M as Dt,x as gs,l as Nt,N as ft}from"./Zj1b2Cnv.js";import{_ as ys,b as hs,c as xs,d as bs,a as ws}from"./Bz_AQWku.js";import{_ as ks,a as $s}from"./C24eEuc-.js";import{_ as Cs,a as Ss,b as Vs,c as As,d as Ts,e as Ds}from"./C9Q7wkh3.js";import{_ as Is}from"./5Y8wkL5X.js";import{_ as Ms}from"./CMsY_mQn.js";import{_ as js}from"./DJaQPwNF.js";import{_ as Us,a as Fs,b as Ns,c as Ls,d as Os}from"./CAf62F9q.js";import{_ as Es}from"./CqYbWtFV.js";import{f as Ps,a as Bs,b as Rs}from"./66tMhgjB.js";import{u as Ht}from"./DR1pWzm1.js";import{_ as Ws,a as zs,b as Gs,c as Ks,d as Hs,e as Ys}from"./Ci25O7Ru.js";import{u as qs,a as Zs,g as Js}from"./Dc-lgQJ4.js";import{u as Qs}from"./D8dLLcHV.js";import{T as Lt}from"./CqexWmx6.js";import"./10pTMIF3.js";import"./Dk-H-qky.js";import"./CwKndF5K.js";import"./DlAUqK2U.js";import"./DI-y1imw.js";import"./QGqtVesT.js";import"./BAsoYNmo.js";import"./KUUcQudN.js";const Xs={key:0,class:"text-sm text-muted-foreground py-4 text-center"},el={key:1,class:"text-sm text-muted-foreground py-4 text-center"},tl={key:2,class:"text-sm text-muted-foreground py-4 text-center"},sl={key:3,class:"space-y-4 pb-3"},ll={class:"flex items-start gap-3"},al={class:"mt-0.5 shrink-0 flex items-center justify-center h-6 w-6 rounded-full bg-muted"},il={class:"min-w-0 flex-1"},nl={class:"text-sm leading-snug"},ol={key:0,class:"text-xs text-muted-foreground mt-0.5"},rl={class:"text-xs text-muted-foreground/60 mt-0.5"},dl=["onClick"],ul=["onClick"],cl={key:0,class:"flex gap-3"},ml={class:"flex-1 space-y-3 pb-1"},fl={key:0,class:"text-xs text-muted-foreground"},pl={class:"text-xs text-muted-foreground/60 mt-0.5"},vl=Mt({__name:"VehicleChangeLog",props:{vin:{}},setup(me){const Oe=me,v=T([]),se=T(!1),q=T(!1),fe=T(new Set),it=N(()=>{const x=[];for(const k of v.value){const U=oe(k),D=X(k),R=`${k.change_type}::${U}::${D}`,d=x[x.length-1];d&&d.key===R?d.entries.push(k):x.push({key:R,entries:[k]})}return x});function Ye(x){fe.value.has(x)?fe.value.delete(x):fe.value.add(x),fe.value=new Set(fe.value)}async function qe(){if(Oe.vin){se.value=!0,q.value=!1;try{const{useSupabaseSession:x}=await Kt(async()=>{const{useSupabaseSession:d}=await import("./5YcoXZCx.js");return{useSupabaseSession:d}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),U=x().value?.access_token,D=U?{Authorization:`Bearer ${U}`}:{},R=await fetch(`https://vehicle-inventory-system.adme-dev.workers.dev/api/audit/${Oe.vin}`,{headers:D});if(R.ok){const d=await R.json();v.value=d.changes||[]}else q.value=!0}catch{q.value=!0}finally{se.value=!1}}}Ct(()=>Oe.vin,qe,{immediate:!0});function be(x){const k=x.replace(" ","T");return new Date(k.endsWith("Z")?k:k+"Z").toLocaleString("en-AU",{day:"numeric",month:"short",hour:"2-digit",minute:"2-digit",timeZone:"Australia/Melbourne"})}function m(x){return x.replace(/_/g," ").replace(/\b\w/g,k=>k.toUpperCase())}function J(x){if(x.change_type==="added")return"i-lucide-plus-circle";if(x.change_type==="pdf_update")return"i-lucide-file-text";if(x.change_type==="withdrawn")return"i-lucide-x-circle";if(x.change_type==="sold")return"i-lucide-check-circle";if(x.change_type==="updated"){const k=x.field_changes||[];return k.includes("images")?"i-lucide-image":k.includes("price_drive_away")||k.includes("price_msrp")?"i-lucide-tag":k.includes("sale_status")?"i-lucide-circle-dot":"i-lucide-pencil"}return"i-lucide-circle"}function oe(x){const k=K(x);switch(x.change_type){case"added":return`${k} added to inventory`;case"pdf_update":{const U=x.oem_match_snapshot;return U?.oem_variant?`${k} matched to ${U.oem_variant}`:`${k} updated from PDF`}case"withdrawn":return`${k} marked as withdrawn`;case"sold":return`${k} marked as sold`;case"updated":{const U=x.field_changes||[];if(U.includes("images"))return`${k} updated photos`;if(U.includes("price_drive_away")||U.includes("price_msrp"))return`${k} updated pricing`;if(U.includes("sale_status")){const D=x.new_values?.sale_status;return D?`${k} changed status to ${D}`:`${k} updated status`}return U.length<=2?`${k} updated ${U.map(m).join(", ").toLowerCase()}`:`${k} updated ${U.length} fields`}default:return x.change_type}}function Z(x){switch(x){case"added":return"text-green-500";case"pdf_update":return"text-blue-500";case"withdrawn":return"text-orange-400";case"sold":return"text-purple-500";case"updated":return"text-muted-foreground";default:return"text-muted-foreground"}}function K(x){return x.change_type==="updated"?x.edited_by_name||x.edited_by||"Unknown user":x.source==="sparkpost"&&x.source_email?x.source_email:x.source==="upload"?"Manual upload":x.filename?x.filename:"System"}function L(x){return x?new Intl.NumberFormat("en-AU",{style:"currency",currency:"AUD",maximumFractionDigits:0}).format(Number(x)):""}function X(x){const k=x.oem_match_snapshot;switch(x.change_type){case"added":{if(k?.oem_variant){const U=k.oem_match_confidence?` · ${Math.round(k.oem_match_confidence*100)}%`:"",D=k.price_drive_away?` · ${L(k.price_drive_away)}`:"";return`${k.oem_variant}${U}${D}`}return""}
2case"pdf_update":{if(k?.oem_variant){const U=k.oem_match_confidence?` · ${Math.round(k.oem_match_confidence*100)}%`:"",D=k.price_drive_away?` · ${L(k.price_drive_away)}`:"";return`${k.oem_variant}${U}${D}`}return""}case"withdrawn":return"";case"sold":return"";case"updated":return(x.field_changes||[]).includes("price_drive_away")&&x.old_values?.price_drive_away?`From: ${L(x.old_values.price_drive_away)} â To: ${L(x.new_values?.price_drive_away)}`:"";default:return""}}return(x,k)=>{const U=It;return o(),c("div",null,[se.value?(o(),c("div",Xs,"Loading...")):q.value?(o(),c("div",el,"Unable to load history.")):v.value.length===0?(o(),c("div",tl,"No history recorded yet.")):(o(),c("div",sl,[(o(!0),c(M,null,P(it.value,D=>(o(),c(M,{key:D.key},[s("div",ll,[s("div",al,[t(U,{name:J(D.entries[0]),class:H(["h-3.5 w-3.5",Z(D.entries[0].change_type)])},null,8,["name","class"])]),s("div",il,[s("p",nl,f(oe(D.entries[0])),1),X(D.entries[0])?(o(),c("p",ol,f(X(D.entries[0])),1)):_("",!0),s("p",rl,f(be(D.entries[0].change_timestamp)),1),D.entries.length>1&&!fe.value.has(D.key)?(o(),c("button",{key:1,class:"mt-1 text-xs text-muted-foreground/60 hover:text-muted-foreground flex items-center gap-1",onClick:R=>Ye(D.key)},[t(U,{name:"i-lucide-chevron-down",class:"h-3 w-3"}),p(" "+f(D.entries.length-1)+" more time"+f(D.entries.length>2?"s":""),1)],8,dl)):D.entries.length>1&&fe.value.has(D.key)?(o(),c("button",{key:2,class:"mt-1 text-xs text-muted-foreground/60 hover:text-muted-foreground flex items-center gap-1",onClick:R=>Ye(D.key)},[t(U,{name:"i-lucide-chevron-up",class:"h-3 w-3"}),k[0]||(k[0]=p(" Collapse ",-1))],8,ul)):_("",!0)])]),fe.value.has(D.key)?(o(),c("div",cl,[k[1]||(k[1]=s("div",{class:"shrink-0 flex justify-center w-6 ml-0"},[s("div",{class:"w-px bg-border h-full"})],-1)),s("div",ml,[(o(!0),c(M,null,P(D.entries.slice(1),R=>(o(),c("div",{key:R.id},[X(R)?(o(),c("p",fl,f(X(R)),1)):_("",!0),s("p",pl,f(be(R.change_timestamp)),1)]))),128))])])):_("",!0)],64))),128))]))])}}}),_l={class:"flex items-center justify-between gap-2 sm:gap-4"},gl={class:"min-w-0"},yl={key:0,class:"text-muted-foreground"},hl={class:"flex items-center gap-2 shrink-0"},xl={class:"hidden sm:inline"},bl={class:"flex-1 overflow-y-auto"},wl={class:"p-3 sm:p-6 space-y-4 sm:space-y-8"},kl={class:"flex items-center justify-between"},$l={key:0,class:"text-xs text-amber-600 dark:text-amber-400 flex items-center gap-1.5 mt-1"},Cl={class:"font-medium"},Sl={key:0,class:"text-xs text-muted-foreground py-3 px-4"},Vl={key:1,class:"text-xs text-muted-foreground py-3 px-4"},Al={class:"text-sm font-medium"},Tl={class:"text-xs text-muted-foreground truncate block"},Dl={class:"text-xs font-medium truncate block"},Il={class:"text-xs text-muted-foreground whitespace-nowrap"},Ml={class:"text-xs text-muted-foreground"},jl={key:0},Ul={key:0,class:"relative group aspect-video bg-muted rounded-lg overflow-hidden border ring-2 ring-primary mb-3 max-w-md"},Fl=["src"],Nl={class:"absolute inset-0 bg-black/60 opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-center gap-2"},Ll={key:1,class:"grid grid-cols-3 sm:grid-cols-4 md:grid-cols-5 lg:grid-cols-6 gap-2"},Ol=["src","alt"],El={class:"absolute inset-0 bg-black/60 opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-center gap-2"},Pl={key:1},Bl={class:"flex flex-wrap gap-2"},Rl={class:"grid grid-cols-1 sm:grid-cols-2 gap-4 sm:gap-6"},Wl={class:"space-y-2"},zl={class:"space-y-2"},Gl={class:"flex gap-2"},Kl={key:0},Hl={class:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-2 sm:gap-4"},Yl=["src","alt"],ql={class:"absolute inset-0 bg-black/60 opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-center gap-2"},Zl={key:1},Jl={class:"flex flex-wrap gap-2"},Ql={class:"grid grid-cols-1 sm:grid-cols-2 gap-4 sm:gap-6"},Xl={class:"space-y-2"},ea={class:"space-y-2"},ta={class:"flex gap-2"},sa={class:"border-t pt-4"},la={class:"space-y-2 mb-3"},aa={key:0,class:"text-sm text-destructive mb-3"},ia={key:1,class:"flex items-center gap-2 text-sm text-muted-foreground py-2"},na={key:2,class:"space-y-3 mb-4"},oa={class:"flex flex-wrap gap-2"},ra=["onClick","title"],da={key:0,class:"w-8 h-8 rounded-sm overflow-hidden"},ua=["src","alt"],ca={key:1,class:"w-8 h-8 rounded-sm overflow-hidden bg-muted"},ma=["src","alt"],fa={key:2,class:"w-8 h-8 rounded-sm bg-muted flex items-center justify-center"},pa={class:"text-[8px] text-muted-foreground"},va={class:"absolute -top-8 left-1/2 -translate-x-1/2 whitespace-nowrap rounded bg-foreground px-2 py-0.5 text-[10px] text-background opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none z-10"},_a={key:0,class:"flex items-center gap-3 p-2 rounded-lg bg-muted/50"},ga={class:"w-20 h-12 rounded overflow-hidden flex-shrink-0"},ya=["src"],ha={class:"text-xs text-muted-foreground"},xa={class:"font-medium text-foreground"},ba={key:3},wa={class:"rounded-lg border overflow-hidden divide-y divide-border"},ka={key:0,class:"px-3 py-2 bg-muted/60 border-b border-border"},$a={class:"text-xs font-semibold uppercase tracking-wide text-foreground"},Ca=["onClick"],Sa={key:1,class:"w-4 shrink-0"},Va={key:2,class:"w-16 h-10 rounded overflow-hidden shrink-0 bg-muted"},Aa=["src","alt"],Ta={class:"flex-1 min-w-0"},Da={class:"text-sm font-medium truncate"},Ia={key:0,class:"text-xs text-muted-foreground truncate"},Ma={key:3,class:"text-sm text-muted-foreground tabular-nums shrink-0"},ja={class:"px-3 pt-2 pb-1"},Ua={class:"text-xs font-semibold uppercase tracking-wide text-muted-foreground"},Fa=["onClick"],Na={key:1,class:"w-4 shrink-0"},La={key:2,class:"w-16 h-10 rounded overflow-hidden shrink-0 bg-muted"},Oa=["src","alt"],Ea={class:"flex-1 min-w-0"},Pa={class:"text-sm truncate"},Ba={key:0,class:"text-xs text-muted-foreground truncate"},Ra={key:3,class:"text-sm text-muted-foreground tabular-nums shrink-0"},Wa={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4 md:gap-x-6 md:gap-y-5"},za={class:"space-y-2"},Ga={key:0,class:"text-xs text-muted-foreground"},Ka={class:"space-y-2"},Ha={class:"space-y-2"},Ya={class:"space-y-2"},qa={class:"sm:col-span-2 lg:col-span-4 space-y-2"},Za={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-5 ga
2p-4 md:gap-x-6 md:gap-y-5"},Ja={class:"space-y-2"},Qa={class:"space-y-2"},Xa={class:"space-y-2"},ei={class:"space-y-2"},ti={class:"space-y-2"},si={class:"space-y-2"},li={class:"space-y-2"},ai={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4 md:gap-x-6 md:gap-y-5"},ii={class:"space-y-2"},ni={class:"space-y-2"},oi={class:"space-y-2"},ri={class:"space-y-2"},di={class:"space-y-2"},ui={class:"space-y-2"},ci={class:"space-y-2 sm:col-span-2 flex items-center gap-3 pt-6"},mi={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4 md:gap-x-6 md:gap-y-5"},fi={class:"space-y-2"},pi={class:"space-y-2"},vi={class:"space-y-2"},_i={class:"relative"},gi={key:0,class:"text-xs text-muted-foreground"},yi={class:"space-y-2"},hi={class:"relative"},xi={key:0,class:"text-xs text-muted-foreground"},bi={class:"space-y-2"},wi={class:"space-y-2"},ki={class:"text-xs text-muted-foreground"},$i={class:"space-y-2"},Ci={class:"text-xs text-muted-foreground"},Si={key:0,class:"flex flex-wrap gap-2"},Vi={class:"flex flex-col sm:flex-row gap-2"},Ai=Mt({__name:"VehicleEditDialog",props:Ft({vehicle:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:Ft(["saved"],["update:open"]),setup(me,{emit:Oe}){const v=me,se=Oe,q=_s(me,"open"),{updateVehicle:fe,resetOverride:it,resetAllOverrides:Ye,uploadImage:qe,loading:be}=Ht(),m=T({stock_number:"",make:"",model:"",oem_variant:"",description:"",body_type:"",transmission:"",fuel_type:"",drivetrain:"",exterior_colour:"",interior_colour:"",base_colour:"",listing_type:"New",sale_status:"For Sale",price_msrp:0,price_drive_away:0,comments:"",additional_comments:"",odometer:0,rego:"",rego_state:"",rego_expiry:"",build_date:"",compliance_date:"",roadworthy:"",has_hail_damage:!1}),J=T([]),oe=T(""),Z=T([]),K=T(""),L=T([]),X=T(!1),x=T("exterior"),k=N(()=>{const n=[];return K.value&&n.push(K.value),n.push(...Z.value.filter(e=>e!==K.value)),n}),U=N(()=>{const n=["Dual Cab Pick-up","Dual Cab Chassis","Single Cab Chassis"],e=A=>{const w=n.findIndex(b=>b.toLowerCase()===A.toLowerCase());return w===-1?99:w},g=new Map;for(const A of Be.value){const w=A.bodyType||"",b=A.variantName||A.title||"Standard",W=b.indexOf(" - ");let G,Q=null;W>0?(G=b.substring(0,W).trim(),Q=b.substring(W+3).trim()):G=b,A.subVariant=Q,g.has(w)||g.set(w,new Map);const B=g.get(w);B.has(G)||B.set(G,[]),B.get(G).push(A)}const $=g.size>1,S=[],y=[...g.keys()].sort((A,w)=>e(A)-e(w));for(const A of y){const w=g.get(A),b=[];for(const[W,G]of w)b.push({grade:W,variants:G});S.push({bodyType:$?A:"",grades:b})}return S});function D(n){K.value===n&&(K.value=Z.value.find(g=>g!==n)||"");const e=Z.value.indexOf(n);e!==-1&&Z.value.splice(e,1),V("images")}const R=T([]),d=T([]),F=T(new Set),nt=N(()=>{if(!v.vehicle?.dealer_overrides)return{};if(typeof v.vehicle.dealer_overrides=="string")try{return JSON.parse(v.vehicle.dealer_overrides)}catch{return{}}return v.vehicle.dealer_overrides}),pt=N(()=>{if(!v.vehicle?.pdf_original)return{};if(typeof v.vehicle.pdf_original=="string")try{return JSON.parse(v.vehicle.pdf_original)}catch{return{}}return v.vehicle.pdf_original}),Ue=N(()=>{if(!v.vehicle?.oem_original)return{};if(typeof v.vehicle.oem_original=="string")try{return JSON.parse(v.vehicle.oem_original)}catch{return{}}return v.vehicle.oem_original}),vt={"GREAT WALL":"GWM","GREAT WALL MOTORS":"GWM",TANK:"GWM",ORA:"GWM",KIA:"Kia",SUZUKI:"Suzuki",FORD:"Ford",TOYOTA:"Toyota",HYUNDAI:"Hyundai",MAZDA:"Mazda",MITSUBISHI:"Mitsubishi",NISSAN:"Nissan",SUBARU:"Subaru",VOLKSWAGEN:"Volkswagen",LDV:"LDV",ISUZU:"Isuzu",KGM:"KGM"};function _t(n){if(!n)return"";const e=n.toUpperCase().trim();return vt[e]||n}function gt(n){const e=n.specifications;if(e?.bodyStyle)return e.bodyStyle;const g=n.body_type;return g?g.replace(/\s+[A-Z]$/,"").trim():""}function Ze(n){const g=n.specifications?.transmission,$=typeof g=="object"&&g?.type?g.type:typeof g=="string"?g:null;if($){const A=$.toLowerCase();return A.includes("single speed")?"Single Speed":A.includes("dct")||A.includes("dual clutch")?"Sports Automatic Dual Clutch":A.includes("cvt")?"CVT":A.includes("automatic")?"Automatic":A.includes("manual")?"Manual":$}const S=n.transmission;if(!S)return"";const y=S.toLowerCase().trim();return y==="a"||y==="auto"?"Automatic":y==="m"||y==="man"?"Manual":S}function ot(n){return n.specifications?.fuelType||n.fuel_type||""}function rt(n){const g=n.specifications?.driveType;if(g){const y=g.toLowerCase();return y==="2wd"||y==="fwd"?"FWD":y==="awd"?"AWD":y==="4wd"||y==="4x4"?"4WD":y==="rwd"?"RWD":g}const $=n.drivetrain;if(!$)return"";const S=$.toLowerCase();return S==="4x2"||S==="2wd"?"FWD":S==="4x4"||S==="awd"?"AWD":$}function Je(n){if(!n)return"";const e=n.toLowerCase();return e.includes("white")||e.includes("pearl")&&e.includes("white")?"White":e.includes("black")||e.includes("obsidian")?"Black":e.includes("silver")||e.includes("platinum")?"Silver":e.includes("grey")||e.includes("gray")||e.includes("titanium")||e.includes("graphite")||e.includes("meteor")?"Grey":e.includes("red")||e.includes("burgundy")||e.includes("ruby")||e.includes("crimson")?"Red":e.includes("blue")||e.includes("navy")||e.includes("sapphire")||e.includes("azure")?"Blue":e.includes("green")||e.includes("olive")||e.includes("emerald")?"Green":e.includes("brown")||e.includes("bronze")||e.includes("mocha")||e.includes("coffee")?"Brown":e.includes("gold")||e.includes("champagne")?"Gold":e.includes("orange")||e.includes("copper")?"Orange":e.includes("yellow")?"Yellow":e.includes("purple")||e.includes("violet")?"Purple":e.includes("beige")||e.includes("cream")||e.includes("sand")||e.includes("ivory")?"Beige":""}Ct(()=>[v.vehicle,q.value],()=>{if(q.value&&v.vehicle){const n=gt(v.vehicle),e=Ze(v.vehicle),g=ot(v.vehicle),$=rt(v.vehicle),S=v.vehicle.base_colour||Je(v.vehicle.exterior_colour);m.value={stock_number:v.vehicle.stock_number||"",make:_t(v.vehicle.make),model:v.vehicle.model||"",oem_variant:v.vehicle.oem_variant||"",description:v.vehicle.description||"",body_type:n,transmission:e,fuel_type:g,drivetrain:$,exterior_colour:v.vehicle.exterior_colour||"",interior_colour:v.vehicle.interior_colour||"",base_colour:S,listing_type:v.vehicle.listing_type||"New",sale_status:v.vehicle.sale_status||"For Sale",price_msrp:v.vehicle.price_msrp||0,price_drive_away:v.vehicle.price_drive_away||0,comments:v.vehicle.comments||"",additional_comments:v.vehicle.additional_comments||"",odometer:v.vehicle.odometer||0,rego:v.vehicle.rego||"",rego_state:v.vehicle.rego_state||"",rego_expiry:v.vehicle.rego_expiry||"",build_date:v.vehicle.build_date||"",compliance_date:v.vehicle.compliance_date||"",roadworthy:v.vehicle.roadworthy||"None",has_hail_damage:v.vehicle.has_hail_damage||!1};const y=v.vehicle.images;y?(K.value=y.r2Hero||y.hero||"",Z.value=(y.r2Gallery?.length?y.r2Gallery:y.gallery)||[],R.value=(y.r2Interior?.length?y.r2Interior:y.interior)||[]):(K.value="",Z.value=[],R.value=[]);const A=v.vehicle.features;if(A&&typeof A=="object"){const w=A.highlighted&&A.highlighted.length>0?A.highlighted:A.list?.slice(0,10)||[];J.value=w.map(b=>typeof b=="string"?b:b&&typeof b=="object"&&b.text?b.text:String(b)).filter(b=>b&&b.trim())}else J.value=[];oe.value="",F.value.clear(),L.value=[],d.value=[],Re.value=!1,Be.value=[],De.value=null,le.value=[],tt.value=null,Le()}},{immediate:!0});function V(n){F.value.add(n)}function Qe(n){return!!nt.value[n]}function yt(n){return["stock_number","make","model","description","body_type","transmission","fuel_type","drivetrain","exterior_colour"].includes(n)?pt.value[n]:Ue.value[n]}async function re(n){if(!v.vehicle)return;const e=await it(v.vehicle.vin,n);e?.success?(ne.success(`Reset ${n} to original value`),e.vehicle&&se("saved",e.vehicle)):ne.error(`Failed to reset ${n}`)}async function Ee(){if(!v.vehicle)return;const n=await Ye(v.vehicle.vin);n?.success?(ne.success("Reset all fields to original values"),n.vehicle&&se("saved",n.vehicle),q.value=!1):ne.error("Failed to reset overrides")}function Ae(n){const e=n.target;e.files&&(L.value=[...L.value,...Array.from(e.files)])}function we(n){L.value.splice(n,1)}function Xe(n){K.value=n,V("images")}const de=T("");function Fe(){de.value.trim()&&(Z.value.push(de.value.trim()),de.value="",V("images"))}function et(n){const e=n.target;e.files&&(d.value=[...d.value,...Array.from(e.files)])}function St(n){d.value.splice(n,1)}function Pe(n){R.value.splice(n,1),V("images")}const Te=T("");function Ne(){Te.value.trim()&&(R.value.push(Te.value.trim()),Te.value="",V("images"))}const le=T([]),Be=T([]),De=T(null),tt=T(null),pe=T(!1),ve=T(null),Re=T(!1);function st(){try{return ms().public.apiBaseUrl||"https://vehicle-inventory-system.adme-dev.workers.dev"}catch{return"https://vehicle-inventory-system.adme-dev.workers.dev"}}async function We(){const{getAccessToken:n}=fs(),e=await n(),g={"Content-Type":"application/json"};return e&&(g.Authorization=`Bearer ${e}`),g}const ht={gwm:"gwm","great wall":"gwm","great wall motors":"gwm",tank:"gwm",ora:"gwm",chery:"chery-au",ford:"ford-au"};async function Ie(){if(v.vehicle?.oem_id)return v.vehicle.oem_id;const n=(v.vehicle?.make||"").toLowerCase();if(!n)return null;const e=ht[n];if(e)return e;const g=st(),$=await We(),S=v.vehicle?.dealer_id?`?dealer_id=${v.vehicle.dealer_id}`:"",y=await fetch(`${g}/api/oem-hub/oems${S}`,{headers:$});return y.ok&&((await y.json()).oems||[]).find(W=>{const G=(W.oem_name||"").toLowerCase(),Q=(W.oem_id||"").toLowerCase().replace(/-au$/,""),B=n;return G===B||Q===B||B.includes(G)||G.includes(B)||B.includes(Q)||Q.includes(B)})?.oem_id||null}async function dt(){pe.value=!0,ve.value=null,le.value=[],Be.value=[],De.value=null,Re.value=!0;try{const n=await Ie();if(!n){ve.value=`No manufacturer data found for "${v.vehicle?.make||"unknown make"}"`;return}const e=st(),g=await We(),$=await fetch(`${e}/api/oem-hub/models?oem_id=${n}`,{headers:g});if(!$.ok)throw new Error("Failed to load OEM models");const y=(await $.json()).models||[],A=(v.vehicle?.model||"").toLowerCase(),w=n==="ford-au"?Ps(y,v.vehicle?.model||"",v.vehicle):y.find(te=>{const xe=(te.modelName||"").toLowerCase();return A.includes(xe)||xe.includes(A)});if(!w){ve.value=`No manufacturer model found matching "${v.vehicle?.model}"`;return}const b=await fetch(`${e}/api/oem-hub/models/${w.id}/variants`,{headers:g});if(!b.ok)throw new Error("Failed to load variants");const G=(await b.json()).variants||[];Be.value=G;const Q=(v.vehicle?.oem_variant||v.vehicle?.description||"").toLowerCase();let B=n==="ford-au"?Bs(G,v.vehicle):G.find(te=>{const xe=(te.variantName||te.title||"").toLowerCase();return Q.includes(xe)||xe.includes(Q)});if(!B&&G.length>0&&n!=="ford-au"&&(B=G[0]),!B){ve.value=G.length?"Select the matching variant below to browse its colours.":"No variants found for this model";return}await ze(B)}catch(n){ve.value=n.message||"Failed to load OEM colours"}finally{pe.value=!1}}async function ze(n,e=!1){De.value=n,le.value=[],pe.value=!0,ve.value=null,ue(n,e);try{const g=st(),$=await We(),S=await fetch(`${g}/api/oem-hub/variants/${n.id}/colors`,{headers:$});if(!S.ok)throw new Error("Failed to load colours");const y=await S.json();if(le.value=y.colors||[],le.value.length===0)ve.value="No colours available for this variant";else if(v.vehicle?.make?.toLowerCase()!=="ford"){const A=(m.value.exterior_colour||"").toLowerCase(),w=le.value.find(b=>A&&(b.colorName||"").toLowerCase().includes(A)||A&&A.includes((b.colorName||"").toLowerCase()))||le.value[0];w&&bt(w,!0)}}catch(g){ve.value=g.message||"Failed to load colours"}finally{pe.value=!1}}function ue(n,e=!1){let g=null;
2if(n.specsJson)try{g=typeof n.specsJson=="string"?JSON.parse(n.specsJson):n.specsJson}catch{}const $=[];function S(w,b){b&&(e||!m.value[w])&&(m.value[w]=b,$.push(w.replace(/_/g," ")),V(w))}if(S("fuel_type",n.fuelType||g?.engine?.type||g?.fuelType),e||!m.value.transmission){const w=n.transmission||g?.transmission;let b="";if(w&&typeof w=="object"){const W=[];w.gears&&w.gears>1&&W.push(`${w.gears}-Speed`),w.type&&W.push(w.type),b=W.join(" ")}else w&&(b=w);b&&(m.value.transmission=b,$.push("transmission"),V("transmission"))}if(S("drivetrain",n.drivetrain||n.drive||g?.transmission?.drive||g?.driveType),S("body_type",n.bodyType||g?.bodyStyle),S("oem_variant",n.variantName||n.title),e){const w=m.value.make||v.vehicle?.make||"",b=m.value.model||v.vehicle?.model||"",W=n.variantName||n.title||"";W&&(m.value.description=`${w} ${b} ${W}`.trim(),V("description"))}const y=(n.priceType||"").toLowerCase();if(v.vehicle?.make?.toLowerCase()!=="ford"&&n.priceAmount&&n.priceAmount>0){const w=y.includes("drive")||y.includes("dap")||y.includes("driveaway");w&&(e||!m.value.price_drive_away)?(m.value.price_drive_away=n.priceAmount,$.push("driveaway price"),V("price_drive_away")):!w&&(e||!m.value.price_msrp)&&(m.value.price_msrp=n.priceAmount,$.push("MSRP"),V("price_msrp")),!m.value.price_drive_away&&!m.value.price_msrp&&(w?(m.value.price_drive_away=n.priceAmount,$.push("driveaway price"),V("price_drive_away")):(m.value.price_msrp=n.priceAmount,$.push("MSRP"),V("price_msrp")))}g&&(tt.value=g,$.push("specifications"),V("specifications"));let A=[];if(n.keyFeatures)try{if(typeof n.keyFeatures=="string"&&n.keyFeatures.includes("<li>"))A=Array.from(n.keyFeatures.matchAll(/<li>(.*?)<\/li>/g),w=>w[1]).filter(Boolean);else{const w=typeof n.keyFeatures=="string"?JSON.parse(n.keyFeatures):n.keyFeatures;Array.isArray(w)&&(A=w.map(b=>typeof b=="string"?b:b?.text||"").filter(Boolean))}}catch{}A.length===0&&g&&(A=ut(g)),A.length>0&&(J.value=A,$.push(`${A.length} features`),V("features")),$.length>0&&ne.success(`Enriched from manufacturer data: ${$.join(", ")}`)}function ut(n){if(!n||typeof n!="object")return[];const e=[];if(n.engine){const g=n.engine;if(g.type==="Electric")g.power_kw&&e.push(`${g.power_kw}kW Electric Motor`),g.battery_kwh&&e.push(`${g.battery_kwh}kWh Battery`);else{const $=[];g.displacement_cc&&$.push(`${(g.displacement_cc/1e3).toFixed(1)}L`),g.cylinders&&$.push(`${g.cylinders}-Cylinder`),g.type&&g.type!=="Petrol"&&$.push(g.type),g.power_kw&&$.push(`${g.power_kw}kW`),$.length>0&&e.push($.join(" "))}g.torque_nm&&e.push(`${g.torque_nm}Nm Torque`)}if(n.transmission){const g=n.transmission,$=[];g.gears&&g.gears>1&&$.push(`${g.gears}-Speed`),g.type&&$.push(g.type),g.drive&&$.push(g.drive),$.length>0&&e.push($.join(" "))}return n.performance&&(n.performance.range_km&&e.push(`${n.performance.range_km}km Range`),n.performance.fuel_combined_l100km&&e.push(`${n.performance.fuel_combined_l100km}L/100km Combined`),n.performance.acceleration_0_100&&e.push(`0-100km/h in ${n.performance.acceleration_0_100}s`),n.performance.top_speed_kmh&&e.push(`${n.performance.top_speed_kmh}km/h Top Speed`)),n.safety&&(n.safety.ancap_stars&&e.push(`${n.safety.ancap_stars}-Star ANCAP Safety`),n.safety.airbags&&e.push(`${n.safety.airbags} Airbags`)),n.wheels&&(n.wheels.size&&n.wheels.type?e.push(`${n.wheels.size} ${n.wheels.type} Wheels`):n.wheels.size&&e.push(`${n.wheels.size} Wheels`)),n.capacity&&(n.capacity.seats&&e.push(`${n.capacity.seats}-Seat`),n.capacity.doors&&e.push(`${n.capacity.doors}-Door`),n.capacity.fuel_tank_litres&&e.push(`${n.capacity.fuel_tank_litres}L Fuel Tank`),n.capacity.cargo_litres&&e.push(`${n.capacity.cargo_litres}L Cargo`)),n.towing?.braked_kg&&n.towing.braked_kg>0&&e.push(`${n.towing.braked_kg}kg Braked Towing`),n.dimensions?.weight_kg&&e.push(`${n.dimensions.weight_kg}kg Kerb Weight`),e}function xt(n){const e=n.variantName||n.title||"";m.value.oem_variant=e,V("oem_variant"),ze(n,!0),ne.success(`Applied variant: ${e}`)}function bt(n,e=!1){n.heroImageUrl&&(K.value=n.heroImageUrl);const g=Array.isArray(n.galleryUrls)?n.galleryUrls:typeof n.galleryUrls=="string"?JSON.parse(n.galleryUrls||"[]"):[];g.length>0&&(Z.value=g),v.vehicle?.make?.toLowerCase()==="ford"&&(K.value=n.heroImageUrl||"",Z.value=g,R.value=Array.isArray(n.interiorUrls)?n.interiorUrls:[]),m.value.exterior_colour=n.colorName||m.value.exterior_colour,V("images"),V("exterior_colour"),e||ne.success(`Applied ${n.colorName} images`)}function wt(){oe.value.trim()&&!J.value.includes(oe.value.trim())&&(J.value.push(oe.value.trim()),oe.value="",V("features"))}function Y(n){J.value.splice(n,1),V("features")}
2async function lt(){if(v.vehicle){X.value=!0;try{let n=0;for(const $ of L.value){const S=await qe(v.vehicle.vin,$);S?.url?Z.value.push(S.url):n++}for(const $ of d.value){const S=await qe(v.vehicle.vin,$);S?.url?R.value.push(S.url):n++}n>0&&ne.warning(`${n} image(s) failed to upload`);const e={};if((F.value.has("stock_number")||m.value.stock_number!==v.vehicle.stock_number)&&(e.stock_number=m.value.stock_number),(F.value.has("make")||m.value.make!==v.vehicle.make)&&(e.make=m.value.make),(F.value.has("model")||m.value.model!==v.vehicle.model)&&(e.model=m.value.model),(F.value.has("oem_variant")||m.value.oem_variant!==v.vehicle.oem_variant)&&(e.oem_variant=m.value.oem_variant),(F.value.has("description")||m.value.description!==v.vehicle.description)&&(e.description=m.value.description),(F.value.has("body_type")||m.value.body_type!==v.vehicle.body_type)&&(e.body_type=m.value.body_type),(F.value.has("transmission")||m.value.transmission!==v.vehicle.transmission)&&(e.transmission=m.value.transmission),(F.value.has("fuel_type")||m.value.fuel_type!==v.vehicle.fuel_type)&&(e.fuel_type=m.value.fuel_type),(F.value.has("drivetrain")||m.value.drivetrain!==v.vehicle.drivetrain)&&(e.drivetrain=m.value.drivetrain),(F.value.has("exterior_colour")||m.value.exterior_colour!==v.vehicle.exterior_colour)&&(e.exterior_colour=m.value.exterior_colour),(F.value.has("listing_type")||m.value.listing_type!==v.vehicle.listing_type)&&(e.listing_type=m.value.listing_type),(F.value.has("sale_status")||m.value.sale_status!==v.vehicle.sale_status)&&(e.sale_status=m.value.sale_status),(F.value.has("price_msrp")||m.value.price_msrp!==v.vehicle.price_msrp)&&(e.price_msrp=m.value.price_msrp),(F.value.has("price_drive_away")||m.value.price_drive_away!==v.vehicle.price_drive_away)&&(e.price_drive_away=m.value.price_drive_away),(F.value.has("comments")||m.value.comments!==(v.vehicle.comments||""))&&(e.comments=m.value.comments),(F.value.has("additional_comments")||m.value.additional_comments!==(v.vehicle.additional_comments||""))&&(e.additional_comments=m.value.additional_comments),(F.value.has("odometer")||m.value.odometer!==(v.vehicle.odometer||0))&&(e.odometer=m.value.odometer),(F.value.has("interior_colour")||m.value.interior_colour!==(v.vehicle.interior_colour||""))&&(e.interior_colour=m.value.interior_colour),(F.value.has("base_colour")||m.value.base_colour!==(v.vehicle.base_colour||""))&&(e.base_colour=m.value.base_colour),(F.value.has("rego")||m.value.rego!==(v.vehicle.rego||""))&&(e.rego=m.value.rego),(F.value.has("rego_state")||m.value.rego_state!==(v.vehicle.rego_state||""))&&(e.rego_state=m.value.rego_state),(F.value.has("rego_expiry")||m.value.rego_expiry!==(v.vehicle.rego_expiry||""))&&(e.rego_expiry=m.value.rego_expiry),(F.value.has("build_date")||m.value.build_date!==(v.vehicle.build_date||""))&&(e.build_date=m.value.build_date),(F.value.has("compliance_date")||m.value.compliance_date!==(v.vehicle.compliance_date||""))&&(e.compliance_date=m.value.compliance_date),(F.value.has("roadworthy")||m.value.roadworthy!==(v.vehicle.roadworthy||"None"))&&(e.roadworthy=m.value.roadworthy==="None"?"":m.value.roadworthy),(F.value.has("has_hail_damage")||m.value.has_hail_damage!==(v.vehicle.has_hail_damage||!1))&&(e.has_hail_damage=m.value.has_hail_damage),F.value.has("features")){const $=v.vehicle.features||{};e.features={...$,highlighted:J.value}}if((F.value.has("images")||L.value.length>0||d.value.length>0)&&(e.images={...v.vehicle.images||{},hero:K.value||Z.value[0]||"",gallery:Z.value,interior:R.value},K.value&&(e.images.hero=K.value),v.vehicle?.make?.toLowerCase()==="ford"&&(e.images=Rs(e.images,m.value.exterior_colour))),F.value.has("specifications")&&tt.value&&(e.specifications=tt.value),Object.keys(e).length===0){ne.info("No changes to save"),q.value=!1;return}const g=await fe(v.vehicle.vin,e);g?.success?(ne.success("Vehicle updated successfully"),se("saved",g.vehicle),q.value=!1):ne.error("Failed to update vehicle")}finally{X.value=!1}}}const ct=["SUV","Sedan","Hatchback","Wagon","Ute","Coupe","Convertible","Van","Cab Chassis","People Mover"],Vt=["Automatic","Manual","DCT","CVT","Sports Automatic","Sports Automatic Dual Clutch","Single Speed"],kt=["Petrol","Diesel","Electric","Hybrid","PHEV","LPG"],$t
2=["FWD","RWD","AWD","4WD"],u=["New","Demo","Used","Fleet"],l=["For Sale","Withdrawn","Sold"],h=["White","Black","Silver","Grey","Red","Blue","Green","Brown","Gold","Orange","Yellow","Purple","Beige"],E=["Black","Grey","Beige","Brown","White","Red","Blue"],ae=["NSW","VIC","QLD","WA","SA","TAS","ACT","NT"],ee=["None","RoadWorthy","Safety Certificate","Not Required"];function ye(n){return new Intl.NumberFormat("en-AU",{style:"currency",currency:"AUD",minimumFractionDigits:0,maximumFractionDigits:0}).format(n)}const Me=N(()=>Object.keys(nt.value).length>0),Ge=N(()=>Object.keys(nt.value)),Ke=N(()=>Ge.value.length),he=T([]),je=T(!1);function He(n,e){if(e==null||e==="")return"â";if(n==="price_drive_away"||n==="price_msrp"){const g=Number(e);if(!isNaN(g))return new Intl.NumberFormat("en-AU",{style:"currency",currency:"AUD",minimumFractionDigits:0}).format(g)}if(n==="images"||n==="features"){if(typeof e=="string")try{e=JSON.parse(e)}catch{return e}if(typeof e=="object")return"(updated)"}return n==="has_hail_damage"?e?"Yes":"No":String(e)}async function Le(){if(v.vehicle?.vin){je.value=!0;try{const{useSupabaseSession:n}=await Kt(async()=>{const{useSupabaseSession:y}=await import("./5YcoXZCx.js");return{useSupabaseSession:y}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),g=n().value?.access_token,$=g?{Authorization:`Bearer ${g}`}:{},S=await fetch(`https://vehicle-inventory-system.adme-dev.workers.dev/api/audit/${v.vehicle.vin}`,{headers:$});if(S.ok){const A=((await S.json()).changes||[]).filter(b=>b.change_type==="updated"),w=[];for(const b of A){const W=b.field_changes||[],G=b.old_values||{},Q=b.new_values||{},B=b.edited_by_name||b.edited_by||"Unknown user";for(const te of W)w.push({field:te,oldValue:He(te,G[te]),newValue:He(te,Q[te]),editedBy:B,timestamp:b.change_timestamp})}he.value=w}}catch{}finally{je.value=!1}}}function at(n){const e=n.replace(" ","T");return new Date(e.endsWith("Z")?e:e+"Z").toLocaleString("en-AU",{day:"numeric",month:"short",hour:"2-digit",minute:"2-digit",timeZone:"Australia/Melbourne"})}function mt(n){return n.replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase())}return(n,e)=>{const g=xs,$=bs,S=Ot,y=It,A=hs,w=$s,b=ks,W=As,G=Vs,Q=Ss,B=Ds,te=Ts,xe=Cs,_e=Gt,ge=zt,C=Et,ce=Rt,At=Bt,I=Is,ie=Ms,jt=Wt,Yt=Pt,Tt=js,ke=Ns,$e=Fs,Ce=Os,Se=Ls,Ve=Us,qt=Es,Zt=ws,Jt=ys;return o(),O(Jt,{open:q.value,"onUpdate:open":e[64]||(e[64]=r=>q.value=r)},{default:a(()=>[t(Zt,{class:"!max-w-none !w-full md:!w-[calc(100vw-var(--sidebar-width,16rem))] !h-screen !max-h-screen !top-0 !left-0 md:!left-auto !right-0 !translate-x-0 !translate-y-0 !rounded-none flex flex-col !gap-0 !p-0 overflow-hidden"},{default:a(()=>[t(A,{class:"px-3 sm:px-6 py-3 sm:py-5 border-b shrink-0 text-left"},{default:a(()=>[s("div",_l,[s("div",gl,[t(g,{class:"text-base sm:text-xl text-left"},{default:a(()=>[...e[65]||(e[65]=[p("Edit Vehicle",-1)])]),_:1}),t($,{class:"text-xs sm:text-base truncate text-left"},{default:a(()=>[p(f(me.vehicle?.vin)+" - "+f(me.vehicle?.make)+" "+f(me.vehicle?.model)+" ",1),me.vehicle?.dealer_name||me.vehicle?.dealer_id?(o(),c("span",yl," · "+f(me.vehicle?.dealer_name||me.vehicle?.dealer_id),1)):_("",!0)]),_:1})]),s("div",hl,[t(S,{variant:"outline",size:"sm",onClick:e[0]||(e[0]=r=>q.value=!1),class:"px-2 sm:px-3"},{default:a(()=>[...e[66]||(e[66]=[p(" Cancel ",-1)])]),_:1}),t(S,{size:"sm",onClick:lt,disabled:i(be)||X.value,class:"px-2 sm:px-3"},{default:a(()=>[i(be)||X.value?(o(),O(y,{key:0,name:"i-lucide-loader-2",class:"h-4 w-4 mr-2 animate-spin"})):_("",!0),s("span",xl,f(i(be)||X.value?"Saving...":"Save Changes"),1),e[67]||(e[67]=s("span",{class:"sm:hidden"},"Save",-1))]),_:1},8,["disabled"])])])]),_:1}),s("div",bl,[s("div",wl,[Me.value||he.value.length>0?(o(),O(ge,{key:0,class:"border-border hidden sm:block"},{default:a(()=>[t(b,{class:"pb-3 pt-4 px-4"},{default:a(()=>[s("div",kl,[t(w,{class:"flex items-center gap-2 text-sm font-semibold"},{default:a(()=>[t(y,{name:"i-lucide-history",class:"h-4 w-4"}),e[68]||(e[68]=p(" Edit History ",-1))]),_:1}),Me.value?(o(),O(S,{key:0,variant:"outline",size:"sm",onClick:Ee,disabled:i(be)},{default:a(()=>[t(y,{name:"i-lucide-rotate-ccw",class:"h-3.5 w-3.5 mr-1.5"}),e[69]||(e[69]=p(" Reset All Overrides ",-1))]),_:1},8,["disabled"])):_("",!0)]),Me.value?(o(),c("p",$l,[t(y,{name:"i-lucide-alert-circle",class:"h-3.5 w-3.5 shrink-0"}),p(" "+f(Ke.value)+" field(s) overriding OEM/PDF data: ",1),s("span",Cl,f(Ge.value.map(mt).join(", ")),1)])):_("",!0)]),_:1}),t(_e,{class:"px-0 pb-0 pt-0"},{default:a(()=>[je.value?(o(),c("div",Sl,"Loading history...")):he.value.length===0?(o(),c("div",Vl,"No manual edits recorded yet.")):(o(),O(xe,{key:2},{default:a(()=>[t(Q,null,{default:a(()=>[t(G,{class:"hover:bg-transparent"},{default:a(()=>[t(W,{class:"pl-4 h-8 text-xs"},{default:a(()=>
2[...e[70]||(e[70]=[p("Field",-1)])]),_:1}),t(W,{class:"h-8 text-xs"},{default:a(()=>[...e[71]||(e[71]=[p("From",-1)])]),_:1}),t(W,{class:"h-8 text-xs"},{default:a(()=>[...e[72]||(e[72]=[p("To",-1)])]),_:1}),t(W,{class:"h-8 text-xs"},{default:a(()=>[...e[73]||(e[73]=[p("By",-1)])]),_:1}),t(W,{class:"pr-4 h-8 text-xs text-right whitespace-nowrap"},{default:a(()=>[...e[74]||(e[74]=[p("Date",-1)])]),_:1})]),_:1})]),_:1}),t(te,null,{default:a(()=>[(o(!0),c(M,null,P(he.value,(r,j)=>(o(),O(G,{key:j,class:"hover:bg-muted/30"},{default:a(()=>[t(B,{class:"pl-4 py-2"},{default:a(()=>[s("span",Al,f(mt(r.field)),1)]),_:2},1024),t(B,{class:"py-2 max-w-[10rem]"},{default:a(()=>[s("span",Tl,f(r.oldValue),1)]),_:2},1024),t(B,{class:"py-2 max-w-[10rem]"},{default:a(()=>[s("span",Dl,f(r.newValue),1)]),_:2},1024),t(B,{class:"py-2"},{default:a(()=>[s("span",Il,f(r.editedBy),1)]),_:2},1024),t(B,{class:"pr-4 py-2 text-right whitespace-nowrap"},{default:a(()=>[s("span",Ml,f(at(r.timestamp)),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1}))]),_:1})]),_:1})):_("",!0),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-image",class:"h-5 w-5"}),e[76]||(e[76]=p(" Images ",-1)),Qe("images")?(o(),O(C,{key:0,variant:"secondary",class:"ml-2"},{default:a(()=>[...e[75]||(e[75]=[p("Edited",-1)])]),_:1})):_("",!0)]),_:1})]),_:1}),t(_e,{class:"space-y-6"},{default:a(()=>[t(Yt,{modelValue:x.value,"onUpdate:modelValue":e[8]||(e[8]=r=>x.value=r),"default-value":"exterior"},{default:a(()=>[t(At,{class:"mb-4"},{default:a(()=>[t(ce,{value:"exterior"},{default:a(()=>[t(y,{name:"i-lucide-car",class:"mr-2 h-4 w-4"}),e[77]||(e[77]=p(" Exterior ",-1)),k.value.length?(o(),O(C,{key:0,variant:"secondary",class:"ml-2"},{default:a(()=>[p(f(k.value.length),1)]),_:1})):_("",!0)]),_:1}),t(ce,{value:"interior"},{default:a(()=>[t(y,{name:"i-lucide-armchair",class:"mr-2 h-4 w-4"}),e[78]||(e[78]=p(" Interior ",-1)),R.value.length?(o(),O(C,{key:0,variant:"secondary",class:"ml-2"},{default:a(()=>[p(f(R.value.length),1)]),_:1})):_("",!0)]),_:1})]),_:1}),t(jt,{value:"exterior",class:"space-y-6"},{default:a(()=>[k.value.length>0?(o(),c("div",jl,[t(I,{class:"text-sm text-muted-foreground mb-3 block"},{default:a(()=>[...e[79]||(e[79]=[p("Current Exterior Images",-1)])]),_:1}),K.value?(o(),c("div",Ul,[s("img",{src:K.value,alt:"Hero",class:"w-full h-full object-contain",onError:e[1]||(e[1]=r=>r.target.style.display="none")},null,40,Fl),s("div",Nl,[t(S,{variant:"destructive",size:"sm",onClick:e[2]||(e[2]=r=>D(K.value))},{default:a(()=>[t(y,{name:"i-lucide-trash-2",class:"h-4 w-4"})]),_:1})]),t(C,{class:"absolute top-2 left-2"},{default:a(()=>[...e[80]||(e[80]=[p("Hero",-1)])]),_:1})])):_("",!0),k.value.length>1?(o(),c("div",Ll,[(o(!0),c(M,null,P(k.value.filter(r=>r!==K.value),(r,j)=>(o(),c("div",{key:r,class:"relative group aspect-video bg-muted rounded-lg overflow-hidden border"},[s("img",{src:r,alt:`Exterior ${j+1}`,class:"w-full h-full object-cover",onError:e[3]||(e[3]=z=>z.target.style.display="none")},null,40,Ol),s("div",El,[t(S,{variant:"secondary",size:"sm",onClick:z=>Xe(r),title:"Set as hero"},{default:a(()=>[t(y,{name:"i-lucide-star",class:"h-4 w-4"})]),_:1},8,["onClick"]),t(S,{variant:"destructive",size:"sm",onClick:z=>D(r)},{default:a(()=>[t(y,{name:"i-lucide-trash-2",class:"h-4 w-4"})]),_:1},8,["onClick"])])]))),128))])):_("",!0)])):_("",!0),L.value.length>0?(o(),c("div",Pl,[t(I,{class:"text-sm text-muted-foreground mb-3 block"},{default:a(()=>[...e[81]||(e[81]=[p("Pending Uploads",-1)])]),_:1}),s("div",Bl,[(o(!0),c(M,null,P(L.value,(r,j)=>(o(),O(C,{key:j,variant:"outline",class:"px-3 py-2"},{default:a(()=>[t(y,{name:"i-lucide-image",class:"h-4 w-4 mr-2"}),p(" "+f(r.name)+" ",1),t(S,{variant:"ghost",size:"sm",class:"h-4 w-4 ml-2 p-0",onClick:z=>we(j)},{default:a(()=>[t(y,{name:"i-lucide-x",class:"h-3 w-3"})]),_:1},8,["onClick"])]),_:2},1024))),128))])])):_("",!0),s("div",Rl,[s("div",Wl,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[82]||(e[82]=[p("Upload Exterior Images",-1)])]),_:1}),s("input",{ref:"exteriorFileInput",type:"file",accept:"image/*",multiple:"",class:"hidden",onChange:Ae},null,544),t(S,{variant:"outline",class:"w-full",onClick:e[4]||(e[4]=r=>n.$refs.exteriorFileInput?.click())},{default:a(()=>[t(y,{name:"i-lucide-upload",class:"h-4 w-4 mr-2"}),e[83]||(e[83]=p(" Choose Files ",-1))]),_:1})]),s("div",zl,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[84]||(e[84]=[p("Add Image URL",-1)])]),_:1}),s("div",Gl,[t(ie,{modelValue:de.value,"onUpdate:modelValue":e[5]||(e[5]=r=>de.value=r),placeholder:"https://example.com/image.jpg",onKeyup:Dt(Fe,["enter"]),class:"flex-1"},null,8,["modelValue"]),t(S,{variant:"outline",onClick:Fe,disabled:!de.value.trim(),size:"icon",class:"shrink-0"},{default:a(()=>[t(y,{name:"i-lucide-plus",class:"h-4 w-4"})]),_:1},8,["disabled"])])])])]),_:1}),t(jt,{value:"interior",class:"space-y-6"},{default:a(()=>[R.value.length>0?(o(),c("div",Kl,[t(I,{class:"text-sm text-muted-foreground mb-3 block"},{default:a(()=>[...e[85]||(e[85]=[p("Current Interior Images",-1)])]),_:1}),s("div",Hl,[(o(!0),c(M,null,P(R.value,(r,j)=>(o(),c("div",{key:j,class:"relative group aspect-video bg-muted rounded-lg overflow-hidden border"},[s("img",{src:r,alt:`Interior ${j+1}`,class:"w-full h-full object-cover"},null,8,Yl),s("div",ql,[t(S,{variant:"destructive",size:"sm",onClick:z=>Pe(j)},{default:a(()=>[t(y,{name:"i-lucide-trash-2",class:"h-4 w-4"})]),_:1},8,["onClick"])])]))),128))])])):_("",!0),d.value.length>0?(o(),c("div",Zl,[t(I,{class:"text-sm text-muted-foreground mb-3 block"},{default:a(()=>[...e[86]||(e[86]=[p("Pending Uploads",-1)])]),_:1}),s("div",Jl,[(o(!0),c(M,null,P(d.value,(r,j)=>(o(),O(C,{key:j,variant:"outline",class:"px-3 py-2"},{default:a(()=>[t(y,{name:"i-lucide-image",class:"h-4 w-4 mr-2"}),p(" "+f(r.name)+" ",1),t(S,{variant:"ghost",size:"sm",class:"h-4 w-4 ml-2 p-0",onClick:z=>St(j)},{default:a(()=>[t(y,{name:"i-lucide-x",class:"h-3 w-3"})]),_:1},8,["onClick"])]),_:2},1024))),128))])])):_("",!0),s("div",Ql,[s("div",Xl,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[87]||(e[87]=[p("Upload Interior Images",-1)])]),_:1}),s("input",{ref:"interiorFileInput",type:"file",accept:"image/*",multiple:"",class:"hidden",onChange:et},null,544),t(S,{variant:"outline",class:"w-full",onClick:e[6]||(e[6]=r=>n.$refs.interiorFileInput?.click())},{default:a(()=>[t(y,{name:"i-lucide-upload",class:"h-4 w-4 mr-2"}),e[88]||(e[88]=p(" Choose Files ",-1))]),_:1})]),s("div",ea,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[89]||(e[89]=[p("Add Image URL",-1)])]),_:1}),s("div",ta,[t(ie,{modelValue:Te.value,"onUpdate:modelValue":e[7]||
2(e[7]=r=>Te.value=r),placeholder:"https://example.com/interior.jpg",onKeyup:Dt(Ne,["enter"]),class:"flex-1"},null,8,["modelValue"]),t(S,{variant:"outline",onClick:Ne,disabled:!Te.value.trim(),size:"icon",class:"shrink-0"},{default:a(()=>[t(y,{name:"i-lucide-plus",class:"h-4 w-4"})]),_:1},8,["disabled"])])])])]),_:1})]),_:1},8,["modelValue"]),s("div",sa,[s("div",la,[s("div",null,[t(I,{class:"text-sm font-medium"},{default:a(()=>[p(f(v.vehicle?.make?.toLowerCase()==="ford"?"MotorStack Variants & Colours":"OEM Variants & Colours"),1)]),_:1}),e[90]||(e[90]=s("p",{class:"text-xs text-muted-foreground"},"Change variant, pricing, specs & colour images from the manufacturer catalogue",-1))]),t(S,{variant:"outline",class:"w-full h-11",onClick:dt,disabled:pe.value},{default:a(()=>[pe.value?(o(),O(y,{key:0,name:"i-lucide-loader-2",class:"h-4 w-4 mr-2 animate-spin"})):(o(),O(y,{key:1,name:"i-lucide-palette",class:"h-4 w-4 mr-2"})),p(" "+f(Re.value?"Refresh":"Browse Variants & Colours"),1)]),_:1},8,["disabled"])]),ve.value?(o(),c("p",aa,f(ve.value),1)):_("",!0),pe.value?(o(),c("div",ia,[t(y,{name:"i-lucide-loader-2",class:"h-4 w-4 animate-spin"}),e[91]||(e[91]=p(" Loading OEM colours... ",-1))])):_("",!0),Re.value&&le.value.length>0&&!pe.value?(o(),c("div",na,[t(I,{class:"text-xs text-muted-foreground block"},{default:a(()=>[...e[92]||(e[92]=[p("Select colour",-1)])]),_:1}),s("div",oa,[(o(!0),c(M,null,P(le.value,r=>(o(),c("button",{key:r.id,onClick:j=>bt(r),title:`Apply ${r.colorName} images`,class:H(["group relative rounded-md border-2 p-1 transition-all hover:scale-105",m.value.exterior_colour===r.colorName?"border-primary ring-1 ring-primary":"border-transparent hover:border-muted-foreground/30"])},[r.swatchUrl?(o(),c("div",da,[s("img",{src:r.swatchUrl,alt:r.colorName,class:"w-full h-full object-cover"},null,8,ua)])):r.heroImageUrl?(o(),c("div",ca,[s("img",{src:r.heroImageUrl,alt:r.colorName,class:"w-full h-full object-contain"},null,8,ma)])):(o(),c("div",fa,[s("span",pa,f((r.colorName||r.colorCode||"?").substring(0,3)),1)])),s("div",va,f(r.colorName),1)],10,ra))),128))]),K.value?(o(),c("div",_a,[s("div",ga,[s("img",{src:K.value,alt:"Current hero",class:"w-full h-full object-contain"},null,8,ya)]),s("div",ha,[s("p",xa,f(m.value.exterior_colour||"No colour set"),1),e[93]||(e[93]=s("p",null,"Current hero image",-1))])])):_("",!0)])):_("",!0),Re.value&&Be.value.length>1&&!pe.value?(o(),c("div",ba,[t(I,{class:"text-xs text-muted-foreground mb-1.5 block"},{default:a(()=>[...e[94]||(e[94]=[p("Select variant â updates pricing, specs & images",-1)])]),_:1}),s("div",wa,[(o(!0),c(M,null,P(U.value,r=>(o(),c(M,{key:r.bodyType||"default"},[r.bodyType?(o(),c("div",ka,[s("span",$a,f(r.bodyType),1)])):_("",!0),(o(!0),c(M,null,P(r.grades,j=>(o(),c(M,{key:j.grade},[j.variants.length===1?(o(),c("div",{key:0,class:H(["flex items-center gap-3 px-3 py-2 cursor-pointer transition-colors",De.value?.id===j.variants[0].id?"bg-primary/10":"hover:bg-muted"]),onClick:z=>xt(j.variants[0])},[De.value?.id===j.variants[0].id?(o(),O(y,{key:0,name:"i-lucide-check",class:"h-4 w-4 text-primary shrink-0"})):(o(),c("div",Sa)),j.variants[0].heroImageUrl?(o(),c("div",Va,[s("img",{src:j.variants[0].heroImageUrl,class:"w-full h-full object-contain",alt:j.grade,onError:e[9]||(e[9]=z=>z.target.style.display="none")},null,40,Aa)])):_("",!0),s("div",Ta,[s("div",Da,f(j.variants[0].title||j.grade),1),j.variants[0].title?(o(),c("div",Ia,f(j.grade),1)):_("",!0)]),j.variants[0].priceAmount?(o(),c("span",Ma,"$"+f(Number(j.variants[0].priceAmount).toLocaleString()),1)):_("",!0)],10,Ca)):(o(),c(M,{key:1},[s("div",ja,[s("span",Ua,f(j.grade),1)]),(o(!0),c(M,null,P(j.variants,z=>(o(),c("div",{key:z.id,class:H(["flex items-center gap-3 px-3 py-2 cursor-pointer transition-colors",De.value?.id===z.id?"bg-primary/10":"hover:bg-muted"]),onClick:Ut=>xt(z)},[De.value?.id===z.id?(o(),O(y,{key:0,name:"i-lucide-check",class:"h-4 w-4 text-primary shrink-0"})):(o(),c("div",Na)),z.heroImageUrl?(o(),c("div",La,[s("img",{src:z.heroImageUrl,class:"w-full h-full object-contain",alt:z.subVariant||z.variantName,onError:e[10]||(e[10]=Ut=>Ut.target.style.display="none")},null,40,Oa)])):_("",!0),s("div",Ea,[s("div",Pa,f(z.title||z.variantName||"Standard"),1),z.title&&z.subVariant?(o(),c("div",Ba,f(z.subVariant),1)):_("",!0)]),z.priceAmount?(o(),c("span",Ra,"$"+f(Number(z.priceAmount).toLocaleStr
2ing()),1)):_("",!0)],10,Fa))),128))],64))],64))),128))],64))),128))])])):_("",!0)]),Qe("images")?(o(),O(S,{key:0,variant:"outline",onClick:e[11]||(e[11]=r=>re("images")),class:"w-full sm:w-auto"},{default:a(()=>[t(y,{name:"i-lucide-rotate-ccw",class:"h-4 w-4 mr-2"}),e[95]||(e[95]=p(" Reset to OEM Images ",-1))]),_:1})):_("",!0)]),_:1})]),_:1}),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-info",class:"h-5 w-5"}),e[96]||(e[96]=p(" Basic Information ",-1))]),_:1})]),_:1}),t(_e,null,{default:a(()=>[s("div",Wa,[s("div",za,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[97]||(e[97]=[p("Stock Number",-1)])]),_:1}),t(ie,{modelValue:m.value.stock_number,"onUpdate:modelValue":e[12]||(e[12]=r=>m.value.stock_number=r),onInput:e[13]||(e[13]=r=>V("stock_number")),placeholder:"Enter stock number"},null,8,["modelValue"]),yt("stock_number")?(o(),c("p",Ga," Original: "+f(yt("stock_number")),1)):_("",!0)]),s("div",Ka,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[98]||(e[98]=[p("Make",-1)])]),_:1}),t(ie,{modelValue:m.value.make,"onUpdate:modelValue":e[14]||(e[14]=r=>m.value.make=r),onInput:e[15]||(e[15]=r=>V("make")),placeholder:"Enter make"},null,8,["modelValue"])]),s("div",Ha,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[99]||(e[99]=[p("Model",-1)])]),_:1}),t(ie,{modelValue:m.value.model,"onUpdate:modelValue":e[16]||(e[16]=r=>m.value.model=r),onInput:e[17]||(e[17]=r=>V("model")),placeholder:"Enter model"},null,8,["modelValue"])]),s("div",Ya,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[100]||(e[100]=[p("Variant / Badge",-1)])]),_:1}),t(ie,{modelValue:m.value.oem_variant,"onUpdate:modelValue":e[18]||(e[18]=r=>m.value.oem_variant=r),onInput:e[19]||(e[19]=r=>V("oem_variant")),placeholder:"Enter variant"},null,8,["modelValue"])]),s("div",qa,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[101]||(e[101]=[p("Description",-1)])]),_:1}),t(Tt,{modelValue:m.value.description,"onUpdate:modelValue":e[20]||(e[20]=r=>m.value.description=r),onInput:e[21]||(e[21]=r=>V("description")),rows:"3",placeholder:"Enter vehicle description"},null,8,["modelValue"])])])]),_:1})]),_:1}),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-settings",class:"h-5 w-5"}),e[102]||(e[102]=p(" Specifications ",-1))]),_:1})]),_:1}),t(_e,null,{default:a(()=>[s("div",Za,[s("div",Ja,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[103]||(e[103]=[p("Body Type",-1)])]),_:1}),t(Ve,{modelValue:m.value.body_type,"onUpdate:modelValue":[e[22]||(e[22]=r=>m.value.body_type=r),e[23]||(e[23]=r=>V("body_type"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select type"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(ct,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",Qa,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[104]||(e[104]=[p("Transmission",-1)])]),_:1}),t(Ve,{modelValue:m.value.transmission,"onUpdate:modelValue":[e[24]||(e[24]=r=>m.value.transmission=r),e[25]||(e[25]=r=>V("transmission"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(Vt,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",Xa,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[105]||(e[105]=[p("Fuel Type",-1)])]),_:1}),t(Ve,{modelValue:m.value.fuel_type,"onUpdate:modelValue":[e[26]||(e[26]=r=>m.value.fuel_type=r),e[27]||(e[27]=r=>V("fuel_type"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(kt,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",ei,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[106]||(e[106]=[p("Drivetrain",-1)])]),_:1}),t(Ve,{modelValue:m.value.drivetrain,"onUpdate:modelValue":[e[28]||(e[28]=r=>m.value.drivetrain=r),e[29]||(e[29]=r=>V("drivetrain"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P($t,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",ti,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[107]||(e[107]=[p("Base Colour",-1)])]),_:1}),t(Ve,{modelValue:m.value.base_colour,"onUpdate:modelValue":[e[30]||(e[30]=r=>m.value.base_colour=r),e[31]||(e[31]=r=>V("base_colour"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select base colour"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(h,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",si,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[108]||(e[108]=[p("Manufacturer Colour",-1)])]),_:1}),t(ie,{modelValue:m.value.exterior_colour,"onUpdate:modelValue":e[32]||(e[32]=r=>m.value.exterior_colour=r),onInput:e[33]||(e[33]=r=>V("exterior_colour")),placeholder:"e.g., Meteor Grey"},null,8,["modelValue"])]),s("div",li,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[109]||(e[109]=[p("Interior Colour",-1)])]),_:1}),t(Ve,{modelValue:m.value.interior_colour,"onUpdate:modelValue":[e[34]||(e[34]=r=>m.value.interior_colour=r),e[35]||(e[35]=r=>V("interior_colour"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select interior colour"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(E,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])])])]),_:1})]),_:1}),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-file-text",class:"h-5 w-5"}),e[110]||(e[110]=p(" Registration & Compliance ",-1))]),_:1})]),_:1}),t(_e,null,{default:a(()=>[s("div",ai,[s("div",ii,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[111]||(e[111]=[p("Registration Plate",-1)])]),_:1}),t(ie,{modelValue:m.value.rego,"onUpdate:modelValue":e[36]||(e[36]=r=>m.value.rego=r),onInput:e[37]||(e[37]=r=>V("rego")),placeholder:"ABC123"},null,8,["modelValue"])]),s("div",ni,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[112]||(e[112]=[p("Registration State",-1)])]),_:1}),t(Ve,{modelValue:m.value.rego_state,"onUpdate:modelValue":[e[38]||(e[38]=r=>m.value.rego_state=r),e[39]||(e[39]=r=>V("rego_state"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select state"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(ae,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",oi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[113]||(e[113]=[p("Registration Expiry",-1)])]),_:1}),t(ie,{modelValue:m.value.rego_expiry,"onUpdate:modelValue":e[40]||(e[40]=r=>m.value.rego_expiry=r),onInput:e[41]||(e[41]=r=>V("rego_expiry")),type:"date"},null,8,["modelValue"])]),s("div",ri,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[114]||(e[114]=[p("Roadworthy Certificate",-1)])]),_:1}),t(Ve,{modelValue:m.value.roadworthy,"onUpdate:modelValue":[e[42]||(e[42]=r=>m.value.roadworthy=r),e[43]||(e[43]=r=>V("roadworthy"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(ee,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",di,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[115]||(e[115]=[p("Build Date",-1)])]),_:1}),t(ie,{modelValue:m.value.build_date,"onUpdate:modelValue":e[44]||(e[44]=r=>m.value.build_date=r),onInput:e[45]||(e[45]=r=>V("build_date")),type:"month",placeholder:"YYYY-MM"},null,8,["modelValue"])]),s("div",ui,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[116]||(e[116]=[p("Compliance Date",-1)])]),_:1}),t(ie,{modelValue:m.value.compliance_date,"onUpdate:modelValue":e[46]||(e[46]=r=>m.value.compliance_date=r),onInput:e[47]||(e[47]=r=>V("compliance_date")),type:"month",placeholder:"YYYY-MM"},null,8,["modelValue"])]),s("div",ci,[t(qt,{id:"has_hail_damage",checked:m.value.has_hail_damage,"onUpdate:checked":e[48]||(e[48]=r=>{m.value.has_hail_damage=r,V("has_hail_damage")})},null,8,["checked"]),t(I,{for:"has_hail_damage",class:"text-sm font-medium cursor-pointer"},{default:a(()=>[...e[117]||(e[117]=[p(" This vehicle has hail damage ",-1)])]),_:1})])])]),_:1})]),_:1}),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-tag",class:"h-5 w-5"}),e[118]||(e[118]=p(" Status & Pricing ",-1))]),_:1})]),_:1}),t(_e,null,{default:a(()=>[s("div",mi,[s("div",fi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[119]||(e[119]=[p("Listing Type",-1)])]),_:1}),t(Ve,{modelValue:m.value.listing_type,"onUpdate:modelValue":[e[49]||(e[49]=r=>m.value.listing_type=r),e[50]||(e[50]=r=>V("listing_type"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(u,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",pi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[120]||(e[120]=[p("Sale Status",-1)])]),_:1}),t(Ve,{modelValue:m.value.sale_status,"onUpdate:modelValue":[e[51]||(e[51]=r=>m.value.sale_status=r),e[52]||(e[52]=r=>V("sale_status"))]},{default:a(()=>[t($e,null,{default:a(()=>[t(ke,{placeholder:"Select"})]),_:1}),t(Se,null,{default:a(()=>[(o(),c(M,null,P(l,r=>t(Ce,{key:r,value:r},{default:a(()=>[p(f(r),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),s("div",vi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[121]||(e[121]=[p("MSRP (Base Price)",-1)])]),_:1}),s("div",_i,[e[122]||(e[122]=s("span",{class:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground text-sm"},"$",-1)),t(ie,{type:"number",modelValue:m.value.price_msrp,"onUpdate:modelValue":e[53]||(e[53]=r=>m.value.price_msrp=r),modelModifiers:{number:!0},onInput:e[54]||(e[54]=r=>V("price_msrp")),class:"pl-7",placeholder:"0"},null,8,["modelValue"])]),Ue.value.price_msrp?(o(),c("p",gi," OEM: "+f(ye(Ue.value.price_msrp)),1)):_("",!0)]),s("div",yi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[123]||(e[123]=[p("Drive Away Price",-1)])]),_:1}),s("div",hi,[e[124]||(e[124]=s("span",{class:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground text-sm"},"$",-1)),t(ie,{type:"number",modelValue:m.value.price_drive_away,"onUpdate:modelValue":e[55]||(e[55]=r=>m.value.price_drive_away=r),modelModifiers:{number:!0},onInput:e[56]||(e[56]=r=>V("price_drive_away")),class:"pl-7",placeholder:"0"},null,8,["modelValue"])]),Ue.value.price_drive_away?(o(),c("p",xi," OEM: "+f(ye(Ue.value.price_drive_away)),1)):_("",!0)]),s("div",bi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[125]||(e[125]=[p("Odometer (km)",-1)])]),_:1}),t(ie,{type:"number",modelValue:m.value.odometer,"onUpdate:modelValue":e[57]||(e[57]=r=>m.value.odometer=r),modelModifiers:{number:!0},onInput:e[58]||(e[58]=r=>V("odometer")),placeholder:"0"},null,8,["modelValue"]),e[126]||(e[126]=s("p",{class:"text-xs text-muted-foreground"}," Leave as 0 for new vehicles ",-1))])])]),_:1})]),_:1}),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-message-square",class:"h-5 w-5"}),e[127]||(e[127]=p(" Dealer Comments ",-1))]),_:1})]),_:1}),t(_e,{class:"space-y-6"},{default:a(()=>[s("div",wi,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[128]||(e[128]=[p("Comments (listing networks & 3rd party websites)",-1)])]),_:1}),t(Tt,{modelValue:m.value.comments,"onUpdate:modelValue":e[59]||(e[59]=r=>m.value.comments=r),onInput:e[60]||(e[60]=r=>V("comments")),rows:"4",placeholder:"e.g., INCLUDES TOURING PACK / PREMIUM TOWING PACK",class:"resize-none"},null,8,["modelValue"]),s("p",ki," Character(s) remaining: "+f(15e3-(m.value.comments?.length||0)),1)]),s("div",$i,[t(I,{class:"text-sm font-medium"},{default:a(()=>[...e[129]||(e[129]=[p("Additional Comments (3rd party websites only)",-1)])]),_:1}),t(Tt,{modelValue:m.value.additional_comments,"onUpdate:modelValue":e[61]||(e[61]=r=>m.value.additional_comments=r),onInput:e[62]||(e[62]=r=>V("additional_comments")),rows:"3",placeholder:"Add your additional comments...",class:"resize-none"},null,8,["modelValue"]),s("p",Ci," Character(s) remaining: "+f(2e3-(m.value.additional_comments?.length||0)),1),e[130]||(e[130]=s("p",{class:"text-xs text-muted-foreground"}," Note: Additional comments will be displayed after your comments on third party and dealer websites only. ",-1))])]),_:1})]),_:1}),t(ge,null,{default:a(()=>[t(b,{class:"pb-4"},{default:a(()=>[t(w,{class:"flex items-center gap-2 text-lg"},{default:a(()=>[t(y,{name:"i-lucide-star",class:"h-5 w-5"}),e[131]||(e[131]=p(" Key Features ",-1)),J.value.length?(o(),O(C,{key:0,variant:"secondary",class:"ml-2"},{default:a(()=>[p(f(J.value.length),1)]),_:1})):_("",!0)]),_:1})]),_:1}),t(_e,{class:"space-y-4"},{default:a(()=>[J.value.length>0?(o(),c("div",Si,[(o(!0),c(M,null,P(J.value,(r,j)=>(o(),O(C,{key:j,variant:"secondary",class:"px-3 py-1.5 text-sm"},{default:a(()=>[p(f(r)+" ",1),t(S,{variant:"ghost",size:"sm",class:"h-4 w-4 ml-2 p-0 hover:bg-destructive hover:text-destructive-foreground rounded-full",onClick:z=>Y(j)},{default:a(()=>[t(y,{name:"i-lucide-x",class:"h-3 w-3"})]),_:1},8,["onClick"])]),_:2},1024))),128))])):_("",!0),s("div",Vi,[t(ie,{modelValue:oe.value,"onUpdate:modelValue":e[63]||(e[63]=r=>oe.value=r),placeholder:"Add a key feature (e.g., Sunroof, Leather Seats)",onKeyup:Dt(wt,["enter"]),class:"flex-1"},null,8,["modelValue"]),t(S,{variant:"outline",onClick:wt,disabled:!oe.value.trim(),class:"w-full sm:w-auto"},{default:a(()=>[t(y,{name:"i-lucide-plus",class:"h-4 w-4 mr-2"}),e[132]||(e[132]=p(" Add ",-1))]),_:1},8,["disabled"])]),e[133]||(e[133]=s("p",{class:"text-xs text-muted-foreground"}
2," Highlight key selling points for this vehicle. These will appear prominently in listings. ",-1))]),_:1})]),_:1})])])]),_:1})]),_:1},8,["open"])}}}),Ti={class:"flex flex-col h-full"},Di={class:"sticky top-0 z-10 bg-background border-b px-3 py-3 sm:px-6 sm:py-4"},Ii={class:"flex flex-col gap-2"},Mi={class:"flex items-start sm:items-center justify-between gap-2"},ji={class:"flex items-start sm:items-center gap-2 sm:gap-4 min-w-0"},Ui={key:0,class:"min-w-0"},Fi={class:"text-lg sm:text-xl font-semibold leading-snug sm:truncate"},Ni={class:"text-sm text-muted-foreground"},Li={key:1},Oi={key:0,class:"hidden sm:flex items-center gap-3 shrink-0"},Ei={key:0,class:"flex sm:hidden items-center gap-3 pl-11"},Pi={key:0,class:"flex flex-1 min-h-[320px] flex-col items-center justify-center gap-5 px-6 py-16 text-center",role:"status","aria-live":"polite","aria-atomic":"true"},Bi={class:"relative flex h-20 w-20 items-center justify-center","aria-hidden":"true"},Ri={class:"space-y-2"},Wi={class:"text-lg font-semibold"},zi={class:"max-w-sm text-sm text-muted-foreground"},Gi={key:1,class:"flex items-center justify-center py-12"},Ki={key:2,class:"p-6"},Hi={key:3,class:"flex items-center justify-center py-12"},Yi={class:"text-center"},qi={class:"text-muted-foreground mb-4"},Zi={key:4,class:"flex-1 overflow-y-auto"},Ji={class:"p-3 sm:p-6"},Qi={key:0,class:"lg:hidden space-y-2 mb-4"},Xi={class:"grid grid-cols-1 lg:grid-cols-3 gap-4 sm:gap-6"},en={class:"lg:col-span-2 flex flex-col gap-6"},tn={class:"flex items-center justify-between mb-3 sm:mb-4"},sn={key:0,class:"text-sm text-muted-foreground"},ln={class:"space-y-4"},an={class:"aspect-[16/9] bg-muted rounded-lg overflow-hidden"},nn=["src","alt"],on={key:0,class:"flex gap-2 overflow-x-auto pb-2"},rn=["onClick"],dn=["src"],un={class:"space-y-4"},cn={class:"aspect-[16/9] bg-muted rounded-lg overflow-hidden"},mn=["src"],fn={key:0,class:"flex gap-2 overflow-x-auto pb-2"},pn=["onClick"],vn=["src"],_n={key:0,class:"text-xs text-muted-foreground mt-4 text-center"},gn={class:"px-3 pt-3 sm:px-4 sm:pt-4"},yn={key:0,class:"mb-5"},hn={class:"text-muted-foreground"},xn={class:"grid grid-cols-1 sm:grid-cols-2 gap-x-8 gap-y-0"},bn={class:"flex justify-between gap-4 py-2.5 border-b"},wn={class:"text-right min-w-0"},kn={class:"font-semibold"},$n={key:0,class:"text-xs text-amber-600"},Cn={class:"flex justify-between gap-4 py-2.5 border-b"},Sn={class:"font-semibold text-right min-w-0"},Vn={key:0,class:"flex justify-between gap-4 py-2.5 border-b"},An={class:"text-right min-w-0"},Tn={class:"flex justify-between gap-4 py-2.5 border-b"},Dn={class:"text-right min-w-0 truncate"},In={class:"flex justify-between gap-4 py-2.5 border-b"},Mn={class:"text-right min-w-0 truncate"},jn={class:"flex justify-between gap-4 py-2.5 border-b"},Un={class:"text-right min-w-0"},Fn={class:"flex justify-between gap-4 py-2.5 border-b"},Nn={class:"text-right min-w-0"},Ln={key:1,class:"flex justify-between gap-4 py-2.5 border-b"},On={class:"text-right min-w-0"},En={class:"flex justify-between gap-4 py-2.5 border-b"},Pn={class:"text-right min-w-0"},Bn={class:"flex justify-between gap-4 py-2.5 border-b"},Rn={class:"text-right min-w-0"},Wn={class:"flex justify-between gap-4 py-2.5 border-b"},zn={class:"text-right min-w-0"},Gn={class:"flex justify-between gap-4 py-2.5 border-b"},Kn={class:"text-right min-w-0"},Hn={class:"flex justify-between gap-4 py-2.5 border-b"},Yn={class:"flex items-center gap-2 min-w-0 justify-end"},qn={class:"truncate"},Zn={key:0,class:"w-2 h-2 rounded-full bg-green-500 shrink-0",title:"Matched to OEM"},Jn={key:2,class:"flex justify-between gap-4 py-2.5 border-b"},Qn={class:"text-right min-w-0"},Xn={key:3,class:"flex justify-between gap-4 py-2.5 border-b"},eo={class:"text-right min-w-0"},to={key:1,class:"mt-6 pt-4 border-t"},so={class:"grid grid-cols-1 sm:grid-cols-2 gap-x-8 gap-y-0"},lo={key:0,class:"flex justify-between gap-4 py-2.5 border-b"},ao={class:"text-right min-w-0"},io={key:1,class:"flex justify-between gap-4 py-2.5 border-b"},no={class:"text-right min-w-0"},oo={key:2,class:"flex justify-between gap-4 py-2.5 border-b"},ro={class:"text-right min-w-0"},uo={key:3,class:"flex justify-between gap-4 py-2.5 border-b"},co={class:"text-right min-w-0"},mo={key:4,class:"flex justify-between gap-4 py-2.5 border-b"},fo={class:"text-right min-w-0"},po={key:5,class:"flex justify-between gap-4 py-2.5 border-b"},vo={class:"text-right min-w-0"},_o={key:6,class:"flex justify-between gap-4 py-2.5 border-b"},go={class:"text-right min-w-0"},yo={key:7,class:"flex justify-between gap-4 py-2.5 border-b"},ho={class:"text-right min-w-0"},xo={key:8,class:"flex justify-between gap-4 py-2.5 border-b"},bo={class:"text-right min-w-0"},wo={key:9,class:"flex justify-between gap-4 py-2.5 border-b"},ko={class:"text-right min-w-0"},$o={key:10,class:"flex justify-between gap-4 py-2.5 border-b"},Co={class:"text-right min-w-0"},So={key:11,class:"flex justify-between gap-4 py-2.5 border-b"},Vo={class:"text-right min-w-0"},Ao={key:12,class:"flex justify-between gap-4 py-2.5 border-b"},To={class:"text-right min-w-0"},Do={key:13,class:"flex justify-between gap-4 py-2.5 border-b"},Io={class:"text-right min-w-0"},Mo={key:14,class:"flex justify-between gap-4 py-2.5 border-b"},jo={class:"text-right min-w-0"},Uo={key:2,class:"mt-6 pt-4 border-t"},Fo={class:"grid grid-cols-1 sm:grid-cols-2 gap-x-8 gap-y-0"},No={key:0,class:"flex justify-between gap-4 py-2.5 border-b"},Lo={class:"text-right min-w-0"},Oo={key:1,class:"flex justify-between gap-4 py-2.5 border-b"},Eo={class:"text-right min-w-0"},Po={key:2,class:"flex justify-between gap-4 py-2.5 border-b"},Bo={class:"text-right min-w-0"},Ro={key:3,class:"flex justify-between gap-4 py-2.5 border-b"},Wo={class:"text-right min-w-0"},zo={key:4,class:"flex justify-between gap-4 py-2.5 border-b"},Go={class:"text-right min-w-0"},Ko={key:3,class:"mt-6 pt-4 border-t"},Ho={key:4,class:"mt-6 pt-4 border-t"},Yo={key:0,class:"text-muted-foreground mb-3"},qo={key:1,class:"text-muted-foreground"},Zo={key:0,class:"space-y-6"},Jo={key:0},Qo={class:"flex flex-wrap gap-2"},Xo={key:1},er={class:"grid grid-cols-2 gap-2"},tr={key:1,class:"text-center py-8 text-muted-foreground"},sr={class:"flex flex-col gap-3 text-sm"},lr={key:0,class:"hidden lg:block space-y-2"},ar={class:"px-4 py-3 space-y-4"},ir={class:"flex items-center justify-between"},nr={key:0,class:"flex gap-2"},or={key:1,class:"flex gap-2"},rr={class:"space-y-3"},dr={class:"text-sm font-semibold"},ur={key:0,class:"text-xs text-muted-foreground"},cr={class:"flex items-center gap-2"},mr={key:0,class:"text-[10px] text-muted-foreground bg-muted px-1.5 py-0.5 rounded"},fr=["disabled","onClick"],pr={class:"px-4 py-3"},vr={class:"flex items-center gap-4"},_r={class:"relative w-20 h-20 shrink-0"},gr={viewBox:"0 0 36 36",class:"w-full h-full -rotate-90"},yr=["stroke-dasharray"],hr={class:"absolute inset-0 flex flex-col items-center justify-center"},xr={class:"flex-1 space-y-2.5"},br={class:"flex justify-between text-xs mb-1"},wr={class:"h-1.5 bg-muted/30 rounded-full overflow-hidden"},kr={class:"flex justify-between text-xs mb-1"},$r={class:"h-1.5 bg-muted/30 rounded-full overflow-hidden"},Cr={class:"flex justify-between text-xs mb-1"},Sr={class:"h-1.5 bg-muted/30 rounded-full overflow-hidden"},Vr={class:"flex items-center gap-2"},Ar={class:"space-y-2.5 pb-3"},Tr={key:0,class:"flex justify-between items-center gap-4"},Dr={class:"text-sm font-medium truncate min-w-0"},Ir={class:"flex justify-between items-center"},Mr={class:"flex items-center gap-2"},jr={key:2,class:"text-muted-foreground"},Ur={class:"flex justify-between items-center"},Fr={class:"flex items-center gap-2"},Nr={class:"text-sm"},Lr={key:0,class:"w-2 h-2 rounded-full bg-green-500"},Or={class:"flex items-center gap-2"},Er={class:"space-y-3 pb-3"},Pr={class:"text-2xl font-black"}
2,Br={key:0,class:"text-xs text-amber-600 dark:text-amber-400 mt-1"},Rr={class:"flex justify-between items-center"},Wr={class:"text-sm font-semibold"},zr={class:"px-4 py-3"},Gr={class:"text-sm font-semibold mb-3 flex items-center gap-2"},Kr={class:"flex justify-end gap-2 mt-4"},Hr={class:"flex justify-end gap-2 mt-4"},Yr={class:"flex justify-end gap-2 mt-4"},Id=Mt({__name:"[vin]",setup(me){const Oe=ps(),v=vs(),se=N(()=>Oe.params.vin),{fetchVehicle:q,updateVehicle:fe,resyncVehicleOEM:it,deleteVehicle:Ye,loading:qe,error:be}=Ht(),{activeDealerId:m,isSuperAdmin:J}=Qs(),{printSalesCard:oe}=qs();function Z(){d.value&&oe({vehicle:d.value,title:We.value,price:de(d.value.price_drive_away),bodyType:Ue.value,transmission:vt.value,fuelType:_t.value,drivetrain:gt.value,engine:Ze.value,seats:V.value,doors:Je.value,paintPrice:Fe.value?.formatted||null})}function K(){if(window.history.length>1)v.back();else{const u={};J.value&&m.value&&(u.dealer=m.value),v.push({path:"/inventory",query:u})}}const L=T(!1),X=T("syncing"),x=T(null),k=T(!1),U=T(!1),D=T(!1);async function R(){D.value=!0;try{await Ye(se.value),U.value=!1,ne.success("Vehicle permanently deleted"),v.push({path:"/inventory",query:m.value?{dealer:m.value}:{}})}catch{ne.error("Failed to delete vehicle")}finally{D.value=!1}}const d=T(null);gs(async()=>{d.value=await q(se.value)}),Ct(se,async u=>{d.value=await q(u)});const F={"GREAT WALL":"GWM","GREAT WALL MOTORS":"GWM",TANK:"GWM",ORA:"GWM",KIA:"Kia",SUZUKI:"Suzuki",FORD:"Ford",TOYOTA:"Toyota",HYUNDAI:"Hyundai",MAZDA:"Mazda",MITSUBISHI:"Mitsubishi",NISSAN:"Nissan",SUBARU:"Subaru",VOLKSWAGEN:"Volkswagen",LDV:"LDV",ISUZU:"Isuzu",KGM:"KGM"};function nt(u){if(!u)return"";const l=u.toUpperCase().trim();return F[l]||u}const pt=N(()=>nt(d.value?.make)),Ue=N(()=>{const u=d.value?.specifications;if(u?.bodyStyle)return u.bodyStyle;const l=d.value?.body_type;return l?l.replace(/\s+[A-Z]$/,"").trim():"-"}),vt=N(()=>{const l=d.value?.specifications?.transmission,h=typeof l=="object"&&l?.type?l.type:typeof l=="string"?l:null;if(h){const E=h.toLowerCase();return E.includes("single speed")?"Single Speed":E.includes("dct")||E.includes("dual clutch")?"Dual Clutch":E.includes("cvt")?"CVT":h}return St(d.value?.transmission)}),_t=N(()=>d.value?.specifications?.fuelType||d.value?.fuel_type||"-"),gt=N(()=>{const l=d.value?.specifications?.driveType;if(l){const ae=l.toLowerCase();return ae==="2wd"||ae==="fwd"?"FWD":ae==="awd"?"AWD":ae==="4wd"||ae==="4x4"?"4WD":l}const h=d.value?.drivetrain;if(!h)return"-";const E=h.toLowerCase();return E==="4x2"||E==="2wd"?"FWD":E==="4x4"||E==="awd"?"AWD":h}),Ze=N(()=>{const u=d.value?.specifications;if(!u)return null;const l=u.engine;if(l){const h=[];return l.displacement_cc&&h.push(`${(l.displacement_cc/1e3).toFixed(1)}L`),l.cylinders&&h.push(`${l.cylinders}-Cylinder`),l.type&&l.type!=="Petrol"&&h.push(l.type),h.length>0?h.join(" "):null}if(u.engines?.length)return u.engines.map(h=>h.name).join(", ");if(u.engineSize){const h=String(u.engineSize);return h.toLowerCase().includes("cc")?h:`${h}cc`}return null}),ot=N(()=>{const u=d.value?.specifications;return u?.engine?.cylinders||u?.cylinders||null}),rt=N(()=>{const u=d.value?.specifications,l=u?.transmission;return(typeof l=="object"&&l?l.gears:null)||u?.gears||null}),Je=N(()=>{const u=d.value?.specifications;return u?.capacity?.doors||u?.doors||null}),V=N(()=>{const u=d.value?.specifications;return u?.capacity?.seats||u?.seats||null}),Qe=N(()=>{const l=d.value?.specifications?.wheels;return l?l.size&&l.type?`${l.size}â³ ${l.type}`:l.size?`${l.size}â³`:null:null}),yt=N(()=>Ze.value||ot.value||rt.value||Je.value||V.value||Qe.value||d.value?.specifications?.engine?.power_kw||d.value?.specifications?.engine?.torque_nm||d.value?.specifications?.performance?.fuel_combined_l100km||d.value?.specifications?.performance?.range_km||d.value?.specifications?.engine?.battery_kwh||d.value?.specifications?.capacity?.fuel_tank_litres||d.value?.specifications?.towing?.braked_kg||d.value?.specifications?.safety?.ancap_stars||d.value?.specifications?.safety?.airbags),re=T(0),Ee=T("exterior"),Ae=N(()=>
2{if(!d.value?.images)return[];const u=d.value.images,l=[],h=u.r2Hero||u.hero;h&&l.push(h);const E=(u.r2Gallery?.length?u.r2Gallery:u.gallery)||[];return l.push(...E.filter(ae=>ae!==h)),l}),we=N(()=>{if(!d.value?.images)return[];const u=d.value.images;return(u.r2Interior?.length?u.r2Interior:u.interior)||[]});Ct(Ee,()=>{re.value=0});function Xe(u){const l=u.target;l.style.display="none";const h=l.parentElement?.querySelector(".image-fallback");h&&(h.style.display="flex")}function de(u){return u?new Intl.NumberFormat("en-AU",{style:"currency",currency:"AUD",minimumFractionDigits:0}).format(u):"POA"}const Fe=N(()=>{const u=d.value?.images;return!u?.paintPrice||u.paintPrice<=0?null:{isMetallic:u.isMetallic||u.paintPrice>0,price:u.paintPrice,formatted:de(u.paintPrice)}}),et=N(()=>d.value?Js(d.value):[]);function St(u){if(!u)return"-";const l=u.toLowerCase().trim();return l==="a"||l==="auto"?"Automatic":l==="m"||l==="man"?"Manual":l==="cvt"?"CVT":l==="dct"?"Dual Clutch":l.includes("automatic")?"Automatic":l.includes("manual")?"Manual":l.includes("dual clutch")?"Dual Clutch":l.includes("sport")?"Automatic":u.charAt(0).toUpperCase()+u.slice(1)}const{loading:Pe,dialogOpen:Te,action:Ne,request:le,execute:Be,title:De,description:tt}=Zs(()=>d.value?.vin,(u,l)=>{d.value&&(d.value={...d.value,...l})});async function pe(){if(!(!d.value||L.value)){L.value=!0,X.value="syncing",x.value=null;try{const u=await it(d.value.vin);u?.success?(x.value={success:!0,message:`Matched to ${u.oemVariant} (${u.confidencePercent}% confidence)`},X.value="refreshing",d.value=await q(se.value)):x.value={success:!1,message:u?.error||"Failed to sync with OEM data"}}catch(u){x.value={success:!1,message:u instanceof Error?u.message:"Sync failed"}}finally{L.value=!1,setTimeout(()=>{x.value=null},5e3)}}}async function ve(u){d.value=await q(se.value)}function Re(u,l){if(!l)return"";if(!u)return l;const h=u.toLowerCase().trim();return l.toLowerCase().trim().startsWith(h)?l.slice(u.length).trim()||"":l}function st(u){if(!u)return"";const l=u.substring(0,4);return/^\d{4}$/.test(l)?l:""}const We=N(()=>{if(!d.value)return"Loading...";const u=st(d.value.build_date),l=d.value.model,h=Re(l,d.value.oem_variant);return[u,pt.value,l,h].filter(Boolean).join(" ")}),ht=N(()=>{const u=d.value?.sale_status||(d.value?.is_active?"For Sale":"Withdrawn");return u==="For Sale"?{variant:"default",class:"bg-green-600"}:u==="Sold"?{variant:"default",class:"bg-blue-600"}:{variant:"secondary",class:""}}),Ie=N(()=>d.value?.sale_status||(d.value?.is_active?"For Sale":"Withdrawn")),dt=T(!1),ze=T(!1),ue=T(null),ut=N(()=>{const u=d.value,l=Ie.value==="For Sale";return[{id:"adme",name:"ADME",field:"publish_adme",active:!0,enabled:l&&(u?.publish_adme??1)===1},{id:"carsales",name:"Carsales",field:"publish_carsales",active:!1,enabled:l&&(u?.publish_carsales??0)===1},{id:"marketplace",name:"Marketplace",field:"publish_marketplace",active:!1,enabled:l&&(u?.publish_marketplace??0)===1}]}),xt=N(()=>ut.value.filter(u=>u.enabled).length);function bt(u){u.active&&(ue.value={id:u.id,name:u.name,field:u.field,currentlyOn:u.enabled},ze.value=!0)}async function wt(){ze.value=!1;const u=ue.value,l=d.value;if(!(!u||!l)){dt.value=!0;try{const h=u.currentlyOn?0:1;await fe(l.vin,{[u.field]:h}),d.value={...l,[u.field]:h},ne.success(h?`Published to ${u.name}`:`Removed from ${u.name}`)}catch{ne.error("Failed to update publishing status")}finally{dt.value=!1,ue.value=null}}}const Y=N(()=>{const u=d.value;if(!u)return null;const l=!!(u.images?.r2Hero||u.images?.hero),h=u.images?.r2Gallery?.length||u.images?.gallery?.length||0,E=(u.images?.r2Interior?.length||u.images?.interior?.length||0)>0,ae=!!u.images?.matchedColour;let ee=0;l&&(ee+=30),h>=1&&(ee+=15),h>=3&&(ee+=15),E&&(ee+=20),ae&&(ee+=20);let ye=0;const Me=[!!u.price_drive_away,!!u.price_msrp,!!u.make,!!u.model,!!u.description,!!u.exterior_colour,!!(u.specifications?.fuelType||u.fuel_type),!!(u.specifications?.transmission||u.transmission),!!(u.oem_variant||u.storyblok_id),!!u.build_date],Ge=Me.filter(Boolean).length;ye=Math.round(Ge/Me.length*100);let Ke=0;const he=[!!(u.specifications?.engine?.power_kw||u.specifications?.engineSize),!!u.specifications?.engine?.torque_nm,!!(u.specifications?.seats||u.specifications?.capacity?.seats),!!(u.specifications?.doors||u.specifications?.capacity?.doors),!!u.specifications?.wheels,!!(u.specifications?.performance?.fuel_combined_l100km||u.specifications?.performance?.range_km),!!u.specifications?.safety?.ancap_stars,!!(u.specifications?.driveType||u.drivetrain)],je=he.filter(Boolean).length;return Ke=Math.round(je/he.length*100),{overall:Math.round(ee*.35+ye*.4+Ke*.25),mediaScore:ee,detailsScore:ye,specsScore:Ke}});function lt(u){return u>=80?"text-green-600":u>=50?"text-amber-500":"text-red-500"}function ct(u){return u>=80?"bg-green-500":u>=50?"bg-amber-500":"bg-red-500"}function Vt(u){return u>=80?"stroke-green-500":u>=50?"stroke-amber-500":"stroke-red-500"}function kt(u){if(typeof u=="string")return u;if(u&&typeof u=="object"){const l=u;if(typeof l.text=="string")return l.text;if(typeof l.name=="string")return l.name;if(typeof l.label=="string")return l.label;
2if(typeof l.title=="string")return l.title}return String(u)}function $t(u,l){if(typeof u=="string")return u;if(u&&typeof u=="object"){const h=u;if(typeof h._uid=="string")return h._uid;if(typeof h.id=="string")return h.id}return`feature-${l}`}return(u,l)=>{const h=It,E=Ot,ae=Xt,ee=ts,ye=ss,Me=es,Ge=Qt,Ke=ls,he=ns,je=is,He=as,Le=Et,at=Rt,mt=Bt,n=Wt,e=Pt,g=Gt,$=zt,S=os,y=us,A=cs,w=ds,b=rs,W=vl,G=Ai,Q=Gs,B=Ks,te=Hs,xe=Ys,_e=zs,ge=Ws;return o(),c("div",Ti,[s("div",Di,[s("div",Ii,[s("div",Mi,[s("div",ji,[t(E,{variant:"ghost",size:"icon",class:"shrink-0 h-9 w-9 mt-0.5 sm:mt-0",onClick:l[0]||(l[0]=C=>K())},{default:a(()=>[t(h,{name:"i-lucide-arrow-left",class:"h-5 w-5"})]),_:1}),i(d)?(o(),c("div",Ui,[s("h1",Fi,f(i(We)),1),s("p",Ni,"Stock #"+f(i(d).stock_number),1)])):(o(),c("div",Li,[...l[16]||(l[16]=[s("h1",{class:"text-lg sm:text-xl font-semibold"},"Vehicle Details",-1)])]))]),i(d)?(o(),c("div",Oi,[t(E,{size:"sm",disabled:i(L),onClick:l[1]||(l[1]=C=>k.value=!0)},{default:a(()=>[t(h,{name:"i-lucide-pencil",class:"h-4 w-4 mr-2"}),l[17]||(l[17]=p(" Edit ",-1))]),_:1},8,["disabled"]),t(Ge,null,{default:a(()=>[t(ae,{"as-child":""},{default:a(()=>[t(E,{variant:"outline",size:"icon",class:"h-9 w-9",disabled:i(L)},{default:a(()=>[t(h,{name:"i-lucide-more-vertical",class:"h-4 w-4"})]),_:1},8,["disabled"])]),_:1}),t(Me,{align:"end"},{default:a(()=>[t(ee,{onClick:Z},{default:a(()=>[t(h,{name:"i-lucide-printer",class:"mr-2 h-4 w-4"}),l[18]||(l[18]=p(" Print Sales Card ",-1))]),_:1}),t(ye),t(ee,{onClick:pe,disabled:i(L)},{default:a(()=>[t(h,{name:i(L)?"i-lucide-loader-2":"i-lucide-refresh-cw",class:H(["mr-2 h-4 w-4",{"animate-spin":i(L)}])},null,8,["name","class"]),p(" "+f(i(L)?"Syncing...":"Resync OEM Data"),1)]),_:1},8,["disabled"]),i(J)?(o(),c(M,{key:0},[t(ye),t(ee,{onClick:l[2]||(l[2]=C=>U.value=!0),class:"text-destructive focus:text-destructive"},{default:a(()=>[t(h,{name:"i-lucide-trash-2",class:"mr-2 h-4 w-4"}),l[19]||(l[19]=p(" Delete Permanently ",-1))]),_:1})],64)):_("",!0)]),_:1})]),_:1})])):_("",!0)]),i(d)?(o(),c("div",Ei,[l[23]||(l[23]=s("div",{class:"flex-1"},null,-1)),t(E,{variant:"outline",size:"sm",class:"h-9 px-4",disabled:i(L),onClick:l[3]||(l[3]=C=>k.value=!0)},{default:a(()=>[t(h,{name:"i-lucide-pencil",class:"h-4 w-4 mr-2"}),l[20]||(l[20]=p(" Edit ",-1))]),_:1},8,["disabled"]),t(Ge,null,{default:a(()=>[t(ae,{"as-child":""},{default:a(()=>[t(E,{variant:"ghost",size:"icon",class:"h-9 w-9",disabled:i(L)},{default:a(()=>[t(h,{name:"i-lucide-more-vertical",class:"h-5 w-5"})]),_:1},8,["disabled"])]),_:1}),t(Me,{align:"end",class:"w-56"},{default:a(()=>[t(ee,{onClick:Z},{default:a(()=>[t(h,{name:"i-lucide-printer",class:"mr-2 h-4 w-4"}),l[21]||(l[21]=p(" Print Sales Card ",-1))]),_:1}),t(ye),t(ee,{onClick:pe,disabled:i(L)},{default:a(()=>[t(h,{name:i(L)?"i-lucide-loader-2":"i-lucide-refresh-cw",class:H(["mr-2 h-4 w-4",{"animate-spin":i(L)}])},null,8,["name","class"]),p(" "+f(i(L)?"Syncing...":"Resync OEM Data"),1)]),_:1},8,["disabled"]),i(J)?(o(),c(M,{key:0},[t(ye),t(ee,{onClick:l[4]||(l[4]=C=>U.value=!0),class:"text-destructive focus:text-destructive"},{default:a(()=>[t(h,{name:"i-lucide-trash-2",class:"mr-2 h-4 w-4"}),l[22]||(l[22]=p(" Delete Permanently ",-1))]),_:1})],64)):_("",!0)]),_:1})]),_:1})])):_("",!0),i(x)&&!i(L)?(o(),c("div",{key:1,class:H(["text-sm p-3 rounded-lg flex items-center gap-2",i(x).success?"bg-green-500/10 text-green-600 border border-green-200":"bg-red-500/10 text-red-600 border border-red-200"])},[t(h,{name:i(x).success?"i-lucide-check-circle":"i-lucide-alert-circle",class:"h-4 w-4 shrink-0"},null,8,["name"]),p(" "+f(i(x).message),1)],2)):_("",!0)])]),i(L)?(o(),c("div",Pi,[s("div",Bi,[l[24]||(l[24]=s("span",{class:"absolute inset-0 rounded-full border-[3px] border-primary/20 border-t-primary motion-safe:animate-spin"},null,-1)),t(Ke,{class:"h-12 w-12"})]),s("div",Ri,[s("h2",Wi,f(i(X)==="refreshing"?"Refreshing vehicle detailsâ¦":"Syncing OEM dataâ¦"),1),s("p",zi,f(i(X)==="refreshing"?"Loading the latest images and specifications.":"Matching this vehicle and updating its images and specifications. This may take a moment."),1)])])):i(qe)?(o(),c("div",Gi,[t(h,{name:"i-lucide-loader-2",class:"h-8 w-8 animate-spin text-muted-foreground"})])):i(be)&&!i(d)?(o(),c("div",Ki,[t(He,{variant:"destructive"},{default:a(()=>[t(h,{name:"i-lucide-alert-circle",class:"h-4 w-4"}),t(he,null,{default:a(()=>[...l[25]||(l[25]=[p("Error",-1)])]),_:1}),t(je,null,{default:a(()=>[p(f(i(be)),1)]),_:1})]),_:1})])):i(d)?(o(),c("div",Zi,[s("div",Ji,[i(et).length?(o(),c("div",Qi,[(o(!0),c(M,null,P(i(et),C=>(o(),O(He,{key:C.type,class:"border-red-200 dark:border-red-800 bg-red-50 dark:bg-red-950/50 text-red-900 dark:text-red-200 grid-cols-[calc(var(--spacing)*4)_1fr] gap-x-3 py-2"},{default:a(()=>[t(i(Lt),{class:"h-4 w-4 text-red-600 dark:text-red-400"}),t(he,{class:"text-sm font-semibold"},{default:a(()=>[p(f(C.title),1)]),_:2},1024),t(je,{class:"text-sm text-red-700 dark:text-red-300"},{default:a(()=>[p(f(C.description),1)]),_:2},1024)]),_:2},1024))),128))])):_("",!0),s("div",Xi,[s("div",en,[t($,{class:"shadow-none"},{default:a(()=>[t(g,{class:"p-2 sm:p-4"},{default:a(()=>[t(e,{modelValue:i(Ee),"onUpdate:modelValue":l[6]||(l[6]=C=>Nt(Ee)?Ee.value=C:null),"default-value":"exterior"},{default:a(()=>[s("div",tn,[t(mt,null,{default:a(()=>[t(at,{value:"exterior"},{default:a(()=>[t(h,{name:"i-lucide-car",class:"h-4 w-4 sm:mr-2"}),l[28]||(l[28]=s("span",{class:"hidden sm:inline"},"Exterior",-1)),i(Ae).length?(o(),O(Le,{key:0,variant:"secondary",class:"ml-1 sm:ml-2"},{default:a(()=>[p(f(i(Ae).length),1)]),_:1})):_("",!0)]),_:1}),t(at,{value:"interior",disabled:!i(we).length},{default:a(()=>[t(h,{name:"i-lucide-armchair",class:"h-4 w-4 sm:mr-2"}),l[29]||(l[29]=s("span",{class:"hidden sm:inline"},"Interior",-1)),i(we).length?(o(),O(Le,{key:0,variant:"secondary",class:"ml-1 sm:ml-2"},{default:a(()=>[p(f(i(we).length),1)]),_:1})):_("",!0)]),_:1},8,["disabled"])]),_:1}),i(Ee)==="interior"&&i(d)?.images?.interiorTrim?(o(),c("div",sn,f(i(d).images.interiorTrim),1)):_("",!0)]),t(n,{value:"exterior",class:"mt-0"},{default:a(()=>[s("div",ln,[s("div",an,[i(Ae)[i(re)]?(o(),c("img",{key:0,src:i(Ae)[i(re)],alt:i(We),class:"w-full h-full object-contain",onError:Xe},null,40,nn)):_("",!0),s("div",{class:"image-fallback w-full h-full flex-col items-center justify-center text-muted-foreground",style:ft({display:i(Ae)[i(re)]?"none":"flex"})},[t(h,{name:"i-lucide-image-off",class:"h-12 w-12 mb-2"}),l[30]||(l[30]=s("p",null,"No exterior images available",-1))],4)]),i(Ae).length>1?(o(),c("div",on,[(o(!0),c(M,null,P(i(Ae),(C,ce)=>(o(),c("button",{key:C,class:H(["flex-shrink-0 w-20 h-20 rounded-md overflow-hidden border-2 transition-colors",ce===i(re)?"border-primary ring-1 ring-primary":"border-transparent hover:border-muted-foreground
2/50"]),onClick:At=>re.value=ce},[s("img",{src:C,alt:"Thumbnail",class:"w-full h-full object-cover",onError:Xe},null,40,dn)],10,rn))),128))])):_("",!0)])]),_:1}),t(n,{value:"interior",class:"mt-0"},{default:a(()=>[s("div",un,[s("div",cn,[i(we)[i(re)]?(o(),c("img",{key:0,src:i(we)[i(re)],alt:"Interior view",class:"w-full h-full object-contain",onError:Xe},null,40,mn)):_("",!0),s("div",{class:"image-fallback w-full h-full flex-col items-center justify-center text-muted-foreground",style:ft({display:i(we)[i(re)]?"none":"flex"})},[t(h,{name:"i-lucide-image-off",class:"h-12 w-12 mb-2"}),l[31]||(l[31]=s("p",null,"No interior images available",-1))],4)]),i(we).length>1?(o(),c("div",fn,[(o(!0),c(M,null,P(i(we),(C,ce)=>(o(),c("button",{key:C,class:H(["flex-shrink-0 w-20 h-20 rounded-md overflow-hidden border-2 transition-colors",ce===i(re)?"border-primary ring-1 ring-primary":"border-transparent hover:border-muted-foreground/50"]),onClick:At=>re.value=ce},[s("img",{src:C,alt:"Thumbnail",class:"w-full h-full object-cover",onError:Xe},null,40,vn)],10,pn))),128))])):_("",!0)])]),_:1})]),_:1},8,["modelValue"]),i(d).images?.imageDisclaimer?(o(),c("p",_n,f(i(d).images.imageDisclaimer),1)):_("",!0),s("p",{class:H(["text-xs text-muted-foreground text-center",i(d).images?.imageDisclaimer?"mt-1":"mt-4"])}," Vehicle images are for illustrative purposes only. Actual vehicle may differ. ",2)]),_:1})]),_:1}),t($,{class:"shadow-none"},{default:a(()=>[t(g,{class:"p-0"},{default:a(()=>[t(e,{"default-value":"details"},{default:a(()=>[s("div",gn,[t(mt,null,{default:a(()=>[t(at,{value:"details"},{default:a(()=>[...l[32]||(l[32]=[p(" Details ",-1)])]),_:1}),t(at,{value:"features"},{default:a(()=>[...l[33]||(l[33]=[p(" Features ",-1)])]),_:1})]),_:1})]),t(n,{value:"details",class:"p-3 sm:p-6 mt-0 text-sm"},{default:a(()=>[i(d).description?(o(),c("div",yn,[s("p",hn,f(i(d).description),1)])):_("",!0),l[73]||(l[73]=s("h3",{class:"font-semibold mb-2"},"Vehicle Details",-1)),s("div",xn,[s("div",bn,[l[34]||(l[34]=s("span",{class:"text-muted-foreground shrink-0"},"DAP Price",-1)),s("div",wn,[s("span",kn,f(de(i(d).price_drive_away)),1),i(Fe)?(o(),c("div",$n," Inc. "+f(i(Fe).formatted)+" metallic paint ",1)):_("",!0)])]),s("div",Cn,[l[35]||(l[35]=s("span",{class:"text-muted-foreground shrink-0"},"MSRP",-1)),s("span",Sn,f(de(i(d).price_msrp)),1)]),i(d).listing_type?(o(),c("div",Vn,[l[36]||(l[36]=s("span",{class:"text-muted-foreground shrink-0"},"Listing Type",-1)),s("span",An,f(i(d).listing_type),1)])):_("",!0),s("div",Tn,[l[37]||(l[37]=s("span",{class:"text-muted-foreground shrink-0"},"Stock Number",-1)),s("span",Dn,f(i(d).stock_number),1)]),s("div",In,[l[38]||(l[38]=s("span",{class:"text-muted-foreground shrink-0"},"VIN",-1)),s("span",Mn,f(i(d).vin),1)]),s("div",jn,[l[39]||(l[39]=s("span",{class:"text-muted-foreground shrink-0"},"Make",-1)),s("span",Un,f(i(pt)),1)]),s("div",Fn,[l[40]||(l[40]=s("span",{class:"text-muted-foreground shrink-0"},"Model",-1)),s("span",Nn,f(i(d).model),1)]),i(d).build_date?(o(),c("div",Ln,[l[41]||(l[41]=s("span",{class:"text-muted-foreground shrink-0"},"Year",-1)),s("span",On,f(st(i(d).build_date)),1)])):_("",!0),s("div",En,[l[42]||(l[42]=s("span",{class:"text-muted-foreground shrink-0"},"Body Type",-1)),s("span",Pn,f(i(Ue)),1)]),s("div",Bn,[l[43]||(l[43]=s("span",{class:"text-muted-foreground shrink-0"},"Transmission",-1)),s("span",Rn,f(i(vt)),1)]),s("div",Wn,[l[44]||(l[44]=s("span",{class:"text-muted-foreground shrink-0"},"Fuel Type",-1)),s("span",zn,f(i(_t)),1)]),s("div",Gn,[l[45]||(l[45]=s("span",{class:"text-muted-foreground shrink-0"},"Drivetrain",-1)),s("span",Kn,f(i(gt)),1)]),s("div",Hn,[l[46]||(l[46]=s("span",{class:"text-muted-foreground shrink-0"},"Exterior Colour",-1)),s("span",Yn,[s("span",qn,f(i(d).exterior_colour||"-"),1),i(d).exterior_colour&&i(d).images?.matchedColour?(o(),c("span",Zn)):_("",!0)])]),i(d).interior_colour?(o(),c("div",Jn,[l[47]||(l[47]=s("span",{class:"text-muted-foreground shrink-0"},"Interior Colour",-1)),s("span",Qn,f(i(d).interior_colour),1)])):_("",!0),i(d).odometer!=null?(o(),c("div",Xn,[l[48]||(l[48]=s("span",{class:"text-muted-foreground shrink-0"}
2,"Odometer",-1)),s("span",eo,f(Number(i(d).odometer).toLocaleString())+" km",1)])):_("",!0)]),i(yt)?(o(),c("div",to,[l[64]||(l[64]=s("h3",{class:"font-semibold mb-2"},"Specifications",-1)),s("div",so,[i(Ze)?(o(),c("div",lo,[l[49]||(l[49]=s("span",{class:"text-muted-foreground shrink-0"},"Engine",-1)),s("span",ao,f(i(Ze)),1)])):_("",!0),i(d).specifications?.engine?.power_kw?(o(),c("div",io,[l[50]||(l[50]=s("span",{class:"text-muted-foreground shrink-0"},"Power",-1)),s("span",no,f(i(d).specifications.engine.power_kw)+"kW",1)])):_("",!0),i(d).specifications?.engine?.torque_nm?(o(),c("div",oo,[l[51]||(l[51]=s("span",{class:"text-muted-foreground shrink-0"},"Torque",-1)),s("span",ro,f(i(d).specifications.engine.torque_nm)+"Nm",1)])):_("",!0),i(ot)?(o(),c("div",uo,[l[52]||(l[52]=s("span",{class:"text-muted-foreground shrink-0"},"Cylinders",-1)),s("span",co,f(i(ot)),1)])):_("",!0),i(rt)?(o(),c("div",mo,[l[53]||(l[53]=s("span",{class:"text-muted-foreground shrink-0"},"Gears",-1)),s("span",fo,f(i(rt))+"-Speed",1)])):_("",!0),i(Je)?(o(),c("div",po,[l[54]||(l[54]=s("span",{class:"text-muted-foreground shrink-0"},"Doors",-1)),s("span",vo,f(i(Je)),1)])):_("",!0),i(V)?(o(),c("div",_o,[l[55]||(l[55]=s("span",{class:"text-muted-foreground shrink-0"},"Seats",-1)),s("span",go,f(i(V)),1)])):_("",!0),i(Qe)?(o(),c("div",yo,[l[56]||(l[56]=s("span",{class:"text-muted-foreground shrink-0"},"Wheels",-1)),s("span",ho,f(i(Qe)),1)])):_("",!0),i(d).specifications?.performance?.fuel_combined_l100km?(o(),c("div",xo,[l[57]||(l[57]=s("span",{class:"text-muted-foreground shrink-0"},"Fuel Economy",-1)),s("span",bo,f(i(d).specifications.performance.fuel_combined_l100km)+"L/100km",1)])):_("",!0),i(d).specifications?.performance?.range_km?(o(),c("div",wo,[l[58]||(l[58]=s("span",{class:"text-muted-foreground shrink-0"},"Range",-1)),s("span",ko,f(i(d).specifications.performance.range_km)+"km",1)])):_("",!0),i(d).specifications?.engine?.battery_kwh?(o(),c("div",$o,[l[59]||(l[59]=s("span",{class:"text-muted-foreground shrink-0"},"Battery",-1)),s("span",Co,f(i(d).specifications.engine.battery_kwh)+"kWh",1)])):_("",!0),i(d).specifications?.capacity?.fuel_tank_litres?(o(),c("div",So,[l[60]||(l[60]=s("span",{class:"text-muted-foreground shrink-0"},"Fuel Tank",-1)),s("span",Vo,f(i(d).specifications.capacity.fuel_tank_litres)+"L",1)])):_("",!0),i(d).specifications?.towing?.braked_kg?(o(),c("div",Ao,[l[61]||(l[61]=s("span",{class:"text-muted-foreground shrink-0"},"Towing (Braked)",-1)),s("span",To,f(i(d).specifications.towing.braked_kg.toLocaleString())+"kg",1)])):_("",!0),i(d).specifications?.safety?.ancap_stars?(o(),c("div",Do,[l[62]||(l[62]=s("span",{class:"text-muted-foreground shrink-0"},"ANCAP Safety",-1)),s("span",Io,f(i(d).specifications.safety.ancap_stars)+" Stars",1)])):_("",!0),i(d).specifications?.safety?.airbags?(o(),c("div",Mo,[l[63]||(l[63]=s("span",{class:"text-muted-foreground shrink-0"},"Airbags",-1)),s("span",jo,f(i(d).specifications.safety.airbags),1)])):_("",!0)])])):_("",!0),i(d).rego||i(d).compliance_date||i(d).roadworthy?(o(),c("div",Uo,[l[70]||(l[70]=s("h3",{class:"font-semibold mb-2"},"Registration & Compliance",-1)),s("div",Fo,[i(d).rego?(o(),c("div",No,[l[65]||(l[65]=s("span",{class:"text-muted-foreground shrink-0"},"Registration",-1)),s("span",Lo,f(i(d).rego),1)])):_("",!0),i(d).rego_state?(o(),c("div",Oo,[l[66]||(l[66]=s("span",{class:"text-muted-foreground shrink-0"},"Rego State",-1)),s("span",Eo,f(i(d).rego_state),1)])):_("",!0),i(d).rego_expiry?(o(),c("div",Po,[l[67]||(l[67]=s("span",{class:"text-muted-foreground shrink-0"},"Rego Expiry",-1)),s("span",Bo,f(i(d).rego_expiry),1)])):_("",!0),i(d).compliance_date?(o(),c("div",Ro,[l[68]||(l[68]=s("span",{class:"text-muted-foreground shrink-0"},"Compliance Date",-1)),s("span",Wo,f(i(d).compliance_date),1)])):_("",!0),i(d).roadworthy?(o(),c("div",zo,[l[69]||(l[69]=s("span",{class:"text-muted-foreground shrink-0"},"Roadworthy",-1)),s("span",Go,f(i(d).roadworthy),1)])):_("",!0)])])):_("",!0),i(d).has_hail_damage?(o(),c("div",Ko,[...l[71]||(l[71]=[s("h3",{class:"font-semibold mb-2"},"Condition",-1),s("div",{class:"grid grid-cols-1 sm:grid-cols-2 gap-x-8 gap-y-0"},[s("div",{class:"flex justify-between gap-4 py-2.5 border-b"},[s("span",{class:"text-muted-foreground shrink-0"},"Hail Damage"),s("span",{class:"text-right min-w-0 text-amber-600"},"Yes")])],-1)])])):_("",!0),i(d).comments||i(d).additional_comments?(o(),c("div",Ho,[l[72]||(l[72]=s("h3",{class:"font-semibold mb-2"},"Dealer Comments",-1)),i(d).comments?(o(),c("div",Yo,f(i(d).comments),1)):_("",!0),i(d).additional_comments?(o(),c("div",qo,f(i(d).additional_comments),1)):_("",!0)])):_("",!0)]),_:1}),t(n,{value:"features",class:"p-3 sm:p-6 mt-0 text-sm"},{default:a(()=>[i(d).features?.list?.length||i(d).features?.highlighted?.length?(o(),c("div",Zo,[i(d).features.highlighted?.length?(o(),c("div",Jo,[l[74]||(l[74]=s("h3",{class:"font-semibold mb-3"},"Highlighted Features",-1)),s("div",Qo,[(o(!0),c(M,null,P(i(d).features.highlighted,(C,ce)=>(o(),O(Le,{key:$t(C,ce),variant:"default"},{default:a(()=>[p(f(kt(C)),1)]),_:2},1024))),128))])])):_("",!0),i(d).features.list?.length?(o(),c("div",Xo,[l[75]||(l[75]=s("h3",{class:"font-semibold mb-3"},"All Features",-1)),s("ul",er,[(o(!0),c(M,null,P(i(d).features.list,(C,ce)=>(o(),c("li",{key:$t(C,ce),class:"flex items-center gap-2"},[t(h,{name:"i-lucide-check",class:"h-4 w-4 text-green-500 flex-shrink-0"}),s("span",null,f(kt(C)),1)]))),128))])])):_("",!0)])):(o(),c("div",tr,[t(h,{name:"i-lucide-list",class:"h-8 w-8 mx-auto mb-2"}),l[76]||(l[76]=s("p",null,"No features available",-1))]))]),_:1})]),_:1})]),_:1})]),_:1})]),s("div",sr,[i(et).length?(o(),c("div",lr,[(o(!0),c(M,null,P(i(et),C=>(o(),O(He,{key:C.type,class:"border-red-200 dark:border-red-800 bg-red-50 dark:bg-red-950/50 text-red-900 dark:text-red-200 grid-cols-[calc(var(--spacing)*4)_1fr] gap-x-3 py-2"},{default:a(()=>[t(i(Lt),{class:"h-4 w-4 text-red-600 dark:text-red-400"}),t(he,{class:"text-xs font-semibold"},{default:a(()=>[p(f(C.title),1)]),_:2},1024),t(je,{class:"text-xs text-red-700 dark:text-red-300"},{default:a(()=>[p(f(C.description),1)]),_:2},1024)]),_:2},1024))),128))])):_("",!0),t($,{class:"border-0 shadow-none"},{default:a(()=>[s("div",ar,[s("div",ir,[l[77]||(l[77]=s("span",{class:"text-sm font-semibold"},"Sale status",-1)),t(Le,{variant:i(ht).variant,class:H([i(ht).class,"text-xs"])},{default:a(()=>[p(f(i(Ie)),1)]),_:1},8,["variant","class"])]),i(Ie)==="For Sale"?(o(),c("div",nr,[t(E,{variant:"outline",class:"flex-1 h-10 text-sm font-medium",disabled:i(Pe),onClick:l[7]||(l[7]=C=>i(le)("Withdrawn"))},{default:a(()=>[...l[78]||(l[78]=[p(" Withdrawn ",-1)])]),_:1},8,["disabled"]),t(E,{class:"flex-1 h-10 text-sm font-medium bg-blue-600 hover:bg-blue-700 text-white",disabled:i(Pe),onClick:l[8]||(l[8]=C=>i(le)("Sold"))},{default:a(()=>[...l[79]||(l[79]=[p(" Sold ",-1)])]),_:1},8,["disabled"])])):(o(),c("div",or,[i(Ie)!=="Withdrawn"?(o(),O(E,{key:0,variant:"outline",class:"flex-1 h-10 text-sm font-medium",disabled:i(Pe),onClick:l[9]||(l[9]=C=>i(le)("Withdrawn"))},{default:a(()=>[...l[80]||(l[80]=[p(" Withdrawn ",-1)])]),_:1},8,["disabled"])):_("",!0),i(Ie)!=="Sold"?(o(),O(E,{key:1,class:"flex-1 h-10 text-sm font-medium bg-blue-600 hover:bg-blue-700 text-white",disabled:i(Pe),onClick:l[10]||(l[10]=C=>i(le)("Sold"))},{default:a(()=>[...l[81]||(l[81]=[p(" Sold ",-1)])]),_:1},8,["disabled"])):_("",!0),t(E,{variant:"outline",class:"flex-1 h-10 text-sm font-medium text-green-600 border-green-200 hover:bg-green-50 dark:hover:bg-green-950/30",disabled:i(Pe),onClick:l[11]||(l[11]=C=>i(le)("For Sale"))},{default:a(()=>[t(h,{name:"i-lucide-rotate-ccw",class:"mr-1.5 h-3.5 w-3.5"}),l[82]||(l[82]=p(" Restore ",-1))]),_:1},8,["disabled"])])),t(S),s("div",rr,[s("span",dr,"Publishing ("+f(i(xt))+"/"+f(i(ut).length)+")",1),i(Ie)!=="For Sale"?(o(),c("p",ur,"Vehicle is "+f(i(Ie)?.toLowerCase())+" and automatically unpublished.",1)):(o(!0),c(M,{key:1},P(i(ut),C=>(o(),c("div",{key:C.id,class:"flex items-center justify-between"},[s("div",cr,[s("span",{class:H(["text-sm",C.enabled?"":"text-muted-foreground"])},f(C.name),3),C.active?_("",!0):(o(),c("span",mr,"Soon"))]),s("button",{type:"button",disabled:i(dt)||!C.active,class:H(["relative h-[26px] w-[46px] rounded-full transition-colors duration-200 disabled:cursor-not-allowed",[C.enabled?"bg-green-500":"bg-gray-300 dark:bg-gray-600",C.active?"cursor-pointer":"opacity-40"]]),onClick:ce=>bt(C)},[s("div",{class:H(["absolute top-[2px] h-[22px] w-[22px] rounded-full bg-white transition-transform duration-200 shadow-sm",C.enabled?"translate-x-[22px]":"translate-x-[2px]"])},null,2)],10,fr)]))),128))])])]),_:1}),i(Y)?(o(),O($,{key:1,class:"border-0 shadow-none"},{default:a(()=>[s("div",pr,[l[88]||(l[88]=s("h3",{class:"text-sm font-semibold mb-3"},"Listing Health",-1)),s("div",vr,[s("div",_r,[(o(),c("svg",gr,[l[83]||(l[83]=s("circle",{cx:"18",cy:"18",r:"15.5",fill:"none",stroke:"currentColor","stroke-width":"3",class:"text-muted/30"},null,-1)),s("circle",{cx:"18",cy:"18",r:"15.5",fill:"none","stroke-width":"3","stroke-linecap":"round",class:H(Vt(i(Y).overall)),"stroke-dasharray":`${i(Y).overall*.974} 100`},null,10,yr)])),s("div",hr,[s("span",{class:H(["text-lg font-bold leading-none",lt(i(Y).overall)])},f(i(Y).overall)+"%",3),l[84]||(l[84]=s("span",{class:"text-[10px] text-muted-foreground"},"Overall",-1))])]),s("div",xr,[s("div",null,[s("div",br,[l[85]||(l[85]=s("span",{class:"text-muted-foreground"},"Media",-1)),s("span",{class:H(lt(i(Y).mediaScore))},f(i(Y).mediaScore)+"%",3)]),s("div",wr,[s("div",{class:H(["h-full rounded-full transition-all",ct(i(Y).mediaScore)]
2),style:ft({width:`${i(Y).mediaScore}%`})},null,6)])]),s("div",null,[s("div",kr,[l[86]||(l[86]=s("span",{class:"text-muted-foreground"},"Details",-1)),s("span",{class:H(lt(i(Y).detailsScore))},f(i(Y).detailsScore)+"%",3)]),s("div",$r,[s("div",{class:H(["h-full rounded-full transition-all",ct(i(Y).detailsScore)]),style:ft({width:`${i(Y).detailsScore}%`})},null,6)])]),s("div",null,[s("div",Cr,[l[87]||(l[87]=s("span",{class:"text-muted-foreground"},"Specs",-1)),s("span",{class:H(lt(i(Y).specsScore))},f(i(Y).specsScore)+"%",3)]),s("div",Sr,[s("div",{class:H(["h-full rounded-full transition-all",ct(i(Y).specsScore)]),style:ft({width:`${i(Y).specsScore}%`})},null,6)])])])])])]),_:1})):_("",!0),t(E,{variant:"outline",class:"w-full h-11 justify-start gap-3 text-sm font-medium",onClick:Z},{default:a(()=>[t(h,{name:"i-lucide-printer",class:"h-4 w-4 text-muted-foreground"}),l[89]||(l[89]=p(" Print Sales Card ",-1))]),_:1}),t($,{class:"overflow-hidden border-0 shadow-none"},{default:a(()=>[t(b,{type:"multiple","default-value":["info","pricing"]},{default:a(()=>[t(w,{value:"info",class:"border-0 px-4"},{default:a(()=>[t(y,{class:"py-3 text-sm font-semibold hover:no-underline"},{default:a(()=>[s("div",Vr,[t(h,{name:"i-lucide-info",class:"h-3.5 w-3.5 text-muted-foreground"}),l[90]||(l[90]=p(" Quick Info ",-1))])]),_:1}),t(A,null,{default:a(()=>[s("div",Ar,[i(d).dealer_name||i(d).dealer_id?(o(),c("div",Tr,[l[91]||(l[91]=s("span",{class:"text-sm text-muted-foreground shrink-0"},"Dealer",-1)),s("span",Dr,f(i(d).dealer_name||i(d).dealer_id),1)])):_("",!0),i(d).dealer_name||i(d).dealer_id?(o(),O(S,{key:1})):_("",!0),s("div",Ir,[l[94]||(l[94]=s("span",{class:"text-sm text-muted-foreground"},"OEM Match",-1)),s("div",Mr,[i(d).oem_variant||i(d).storyblok_id?(o(),O(Le,{key:0,variant:"outline",class:"bg-blue-500/10 text-blue-600 border-blue-200"},{default:a(()=>[...l[92]||(l[92]=[p("Matched",-1)])]),_:1})):(o(),O(Le,{key:1,variant:"outline",class:"text-muted-foreground"},{default:a(()=>[...l[93]||(l[93]=[p("Unmatched",-1)])]),_:1})),i(d).oem_match_confidence?(o(),c("span",jr,f(Math.round(i(d).oem_match_confidence*100))+"% ",1)):_("",!0)])]),t(S),s("div",Ur,[l[95]||(l[95]=s("span",{class:"text-sm text-muted-foreground"},"Colour",-1)),s("div",Fr,[s("span",Nr,f(i(d).images?.matchedColour||i(d).exterior_colour||"-"),1),i(d).images?.matchedColour?(o(),c("span",Lr)):_("",!0)])])])]),_:1})]),_:1}),t(w,{value:"pricing",class:"border-0 px-4"},{default:a(()=>[t(y,{class:"py-3 text-sm font-semibold hover:no-underline"},{default:a(()=>[s("div",Or,[t(h,{name:"i-lucide-tag",class:"h-3.5 w-3.5 text-muted-foreground"}),l[96]||(l[96]=p(" Pricing ",-1))])]),_:1}),t(A,null,{default:a(()=>[s("div",Er,[s("div",null,[l[97]||(l[97]=s("p",{class:"text-xs text-muted-foreground uppercase tracking-wide mb-1"},"Drive away from",-1)),s("span",Pr,f(de(i(d).price_drive_away)),1),i(Fe)?(o(),c("div",Br," Inc. "+f(i(Fe).formatted)+" metallic paint ",1)):_("",!0)]),t(S),s("div",Rr,[l[98]||(l[98]=s("span",{class:"text-sm text-muted-foreground"},"MSRP",-1)),s("span",Wr,f(de(i(d).price_msrp)),1)])])]),_:1})]),_:1})]),_:1})]),_:1}),t($,{class:"border-0 shadow-none"},{default:a(()=>[s("div",zr,[s("h3",Gr,[t(h,{name:"i-lucide-activity",class:"h-3.5 w-3.5 text-muted-foreground"}),l[99]||(l[99]=p(" Recent activity ",-1))]),t(W,{vin:i(d).vin},null,8,["vin"])])]),_:1})])])])])):(o(),c("div",Hi,[s("div",Yi,[t(h,{name:"i-lucide-car",class:"h-12 w-12 mx-auto text-muted-foreground mb-4"}),l[27]||(l[27]=s("h2",{class:"text-lg font-semibold mb-2"},"Vehicle Not Found",-1)),s("p",qi,"No vehicle found with VIN: "+f(i(se)),1),t(E,{onClick:l[5]||(l[5]=C=>K())},{default:a(()=>[...l[26]||(l[26]=[p(" Back to Inventory ",-1)])]),_:1})])])),t(G,{open:i(k),"onUpdate:open":l[12]||(l[12]=C=>Nt(k)?k.value=C:null),vehicle:i(d),onSaved:ve},null,8,["open","vehicle"]),t(ge,{open:i(U),"onUpdate:open":l[13]||(l[13]=C=>U.value=C)},{default:a(()=>[t(_e,null,{default:a(()=>[t(Q,null,{default:a(()=>[...l[100]||(l[100]=[p("Delete Vehicle Permanently?",-1)])]),_:1}),t(B,null,{default:a(()=>[l[101]||(l[101]=p(" This will permanently delete ",-1)),s("strong",null,f(i(d)?.make)+" "+f(i(d)?.model),1),p(" ("+f(i(se))+") and all its audit history from the database. This cannot be undone. ",1)]),_:1}),s("div",Kr,[t(te,null,{default:a(()=>[...l[102]||(l[102]=[p("Cancel",-1)])]),_:1}),t(xe,{class:"bg-destructive hover:bg-destructive/90",disabled:i(D),onClick:R},{default:a(()=>[i(D)?(o(),O(h,{key:0,name:"i-lucide-loader-2",class:"mr-2 h-4 w-4 animate-spin"})):_("",!0),p(" "+f(i(D)?"Deleting...":"Delete Permanently"),1)]),_:1},8,["disabled"])])]),_:1})]),_:1},8,["open"]),t(ge,{open:i(Te),"onUpdate:open":l[14]||(l[14]=C=>Te.value=C)},{default:a(()=>[t(_e,null,{default:a(()=>[t(Q,null,{default:a(()=>[p(f(i(De)),1)]),_:1}),t(B,null,{default:a(()=>[p(f(i(tt)),1)]),_:1}),s("div",Hr,[t(te,null,{default:a(()=>[...l[103]||(l[103]=[p("Cancel",-1)])]),_:1}),t(xe,{class:H({"bg-blue-600 hover:bg-blue-700":i(Ne)==="Sold","bg-destructive hover:bg-destructive/90":i(Ne)==="Withdrawn","bg-green-600 hover:bg-green-700":i(Ne)==="For Sale"}),onClick:i(Be)},{default:a(()=>
2[p(f(i(Ne)==="For Sale"?"Restore":`Mark as ${i(Ne)}`),1)]),_:1},8,["class","onClick"])])]),_:1})]),_:1},8,["open"]),t(ge,{open:i(ze),"onUpdate:open":l[15]||(l[15]=C=>ze.value=C)},{default:a(()=>[t(_e,null,{default:a(()=>[t(Q,null,{default:a(()=>[p(f(i(ue)?.currentlyOn?`Remove from ${i(ue)?.name}?`:`Publish to ${i(ue)?.name}?`),1)]),_:1}),t(B,null,{default:a(()=>[p(f(i(ue)?.currentlyOn?`This vehicle will no longer be visible on ${i(ue)?.name}. You can re-publish it at any time.`:`This vehicle will be published and visible on ${i(ue)?.name}.`),1)]),_:1}),s("div",Yr,[t(te,null,{default:a(()=>[...l[104]||(l[104]=[p("Cancel",-1)])]),_:1}),t(xe,{class:H(i(ue)?.currentlyOn?"bg-red-600 hover:bg-red-700":""),onClick:wt},{default:a(()=>[p(f(i(ue)?.currentlyOn?"Remove":"Publish"),1)]),_:1},8,["class"])])]),_:1})]),_:1},8,["open"])])}}});export{Id as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.