1import{f as M,a as N}from"./report-COuas1Ni.js";import{e as re}from"./exportReportPdf-BjYvMwDl.js";import ie from"./GeneratedAt-LKW3gPYc.js";import{t as ue,a as de,d as ce}from"./useLaytimeTypes-Cjj-QqMY.js";import pe from"./PortPerformanceMap-BvwwvcYG.js";import{q as o,t as n,v as e,M as R,C as s,z as h,I as me,N as T,y as Q,F as g,K as k,R as w,_ as D,T as ve,b,a as P}from"./@vue-CA-SgnMH.js";import"./axios-C44AX5GR.js";import"./overviewReport-BC7DPPgq.js";import"./chartTheme-CLEhRkIk.js";import"./BandBadge-BN-YnVvh.js";import"./pusher-js-B1ji4th-.js";const xe=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],he={"Arrived at Pilot Station":"EOSP",EOSP:"EOSP",COSP:"COSP","NOR Tendered":"NOR","NOR Tendered & Received":"NOR","NOR Accepted":"NOR","Pilot on Board":"POB","First Line":"F/L","All Fast":"A/F","Loading Commenced":"LOAD","Discharging Commenced":"DISCH","Operations Commenced":"OPS","Loading Completed":"COMP","Discharging Completed":"COMP","Operations Completed":"COMP",Sailed:"COSP"},C=c=>{if(!c)return null;const i=new Date(String(c).replace(" ","T"));return Number.isNaN(i.getTime())?null:i},O=c=>{const i=C(c);if(!i)return c?String(c):"-";const a=String(i.getDate()).padStart(2,"0"),l=String(i.getHours()).padStart(2,"0"),v=String(i.getMinutes()).padStart(2,"0");return`${a}-${xe[i.getMonth()]} ${l}:${v}`},Z=c=>{if(c==null)return"";const i=Math.floor(c);return c>=24?`${i}h (${(c/24).toFixed(1)}d)`:`${i}h ${String(Math.round(c%1*60)).padStart(2,"0")}m`},I=c=>{const i=ue(c),a=i===null?null:de[i];return{code:i,label:a?.label??"Unknown",color:a?.hex??ce.hex}},ee=c=>{const i=[];for(const v of c??[]){const m=C(v?.from),d=C(v?.to);m&&i.push(m.getTime()),d&&i.push(d.getTime())}if(!i.length)return null;const a=Math.min(...i),l=Math.max(...i);return l>a?{min:a,span:l-a}:null},be=c=>{const i=ee(c);return i?(c??[]).map(a=>{const l=C(a?.from),v=C(a?.to);if(!l||!v)return null;const m=I(a.type);return{left:(l.getTime()-i.min)/i.span*100,width:Math.max((v.getTime()-l.getTime())/i.span*100,.3),type:m.code,color:m.color,label:m.label,remarks:a.remarks??"",port:a.port??null,from:O(a.from),to:O(a.to),hours:(v.getTime()-l.getTime())/36e5}}).filter(Boolean):[]},_e=(c,i)=>{const a=ee(c);if(!a)return[];const l=m=>{const d=C(m);if(!d)return null;const x=(d.getTime()-a.min)/a.span*100;return Math.min(Math.max(x,0),100)},v=[];for(const m of i??[]){const d=String(m?.event??""),x=l(m?.datetime);if(x===null)continue;const p=he[d];p?v.push({label:p,position:x,isMilestone:!0}):d.toLowerCase().includes("shift")&&v.push({label:"SHFT",position:x,isMilestone:!1})}return v.sort((m,d)=>m.position-d.position)},ye=(c,i=3)=>{const a=(c??[]).filter(v=>v.isMilestone),l=[];for(let v=0;v<a.length-1;v++){const m=a[v],d=a[v+1],x=d.position-m.position;if(x<i)continue;let p=`${m.label}-${d.label}`;d.label==="COMP"?p=`Operations (${m.label}-${d.label})`:m.label==="COMP"&&d.label==="COSP"?p=`Departure (${m.label}-${d.label})`:m.label==="EOSP"&&(d.label==="LOAD"||d.label==="DISCH")&&(p=`Waiting (${m.label}-${d.label})`),l.push({left:m.position,width:x,label:p})}return l},fe=c=>{const i=new Map;for(const a of c??[]){const l=i.get(a.type);if(l){l.hours+=a.hours;continue}i.set(a.type,{type:a.type,label:a.label,color:a.color,hours:a.hours})}return[...i.values()].sort((a,l)=>(a.type??99)-(l.type??99))},ge=(c,i)=>{const a=C(i);if(!a)return null;for(const l of c??[]){const v=C(l?.from),m=C(l?.to);if(!(!v||!m)&&a.getTime()>=v.getTime()&&a.getTime()<m.getTime())return I(l.type)}return null},ke=(c,i)=>{const a=i??[];return a.map((l,v)=>{const m=a[v+1],d=ge(c,l?.datetime);return{event:l?.event??"",from:O(l?.datetime),to:O(m?m.datetime:l?.datetime),typeLabel:d?.label??null,typeColor:d?.color??null}})},Se=(c,i)=>{const a=[];for(const l of c??[]){const v=I(l?.type);a.push({kind:"sof",sortKey:String(l?.from??""),remarks:l?.remarks||"-",from:O(l?.from),to:O(l?.to),type:v.code,typeLabel:v.label,typeColor:v.color})}for(const l of i??[])a.push({kind:"event",sortKey:String(l?.datetime??""),event:l?.event??"",datetime:O(l?.datetime)});return a.sort((l,v)=>
1l.sortKey.localeCompare(v.sortKey))},Te={class:"overflow-y-auto bg-[#d9d9d9]",style:{"scrollbar-gutter":"stable"}},Ce={class:"flex items-baseline justify-between"},Me={class:"text-lg font-bold tracking-tight text-slate-900"},we={key:0,class:"ml-2 text-xs font-normal text-slate-500"},Oe={class:"grid grid-cols-2 divide-slate-200 rounded-lg border border-slate-200 bg-white sm:grid-cols-4 sm:divide-x"},$e={class:"px-4 py-3"},De={class:"text-[10px] font-medium text-slate-400"},Le={key:0,class:"text-[10px] text-slate-400"},Ne={class:"px-4 py-3"},Re={class:"mt-0.5 text-lg font-bold text-slate-900"},Pe={class:"text-[10px] text-slate-500"},Fe={key:0,class:"text-[10px] text-slate-400"},Ee={class:"px-4 py-3"},Ae={class:"text-[10px] font-medium text-slate-400"},Be={class:"mt-0.5 text-lg font-bold text-slate-900"},He={class:"text-[10px] text-slate-400"},Ie={class:"px-4 py-3"},Ve={key:0,class:"text-[10px] text-slate-400"},je={key:1,class:"rounded-lg border border-slate-200 bg-white px-4 py-3"},ze={class:"relative mt-8 mb-5"},qe={class:"relative h-4"},Ke={class:"inline-block -translate-x-1/2 -rotate-35 text-[9px] font-semibold whitespace-nowrap text-slate-500"},Xe={class:"relative h-8 w-full overflow-hidden rounded bg-slate-100"},Je=["onMouseenter"],Ue={key:0,class:"absolute inset-0 flex items-center overflow-hidden px-1 text-[9px] font-medium text-white drop-shadow-sm"},Ye={class:"relative mt-0.5 h-4"},We={class:"flex flex-wrap items-center gap-2"},Ge=["onClick"],Qe={key:0,class:"font-bold"},Ze={key:2,class:"rounded-lg border border-slate-200 bg-white"},et={class:"overflow-x-auto"},tt={key:0,class:"w-full text-xs"},lt={class:"divide-y divide-slate-50"},st={class:"px-4 py-2 text-slate-700"},at={class:"px-4 py-2 text-slate-600 tabular-nums"},ot={class:"px-4 py-2 text-slate-600 tabular-nums"},nt={class:"px-4 py-2"},rt={key:0,class:"flex items-center gap-1"},it={class:"text-slate-600"},ut={key:1,class:"text-slate-300"},dt={key:1,class:"w-full text-xs"},ct={class:"divide-y divide-slate-50"},pt={class:"max-w-xs truncate px-4 py-2 text-slate-700"},mt={class:"px-4 py-2 text-slate-600 tabular-nums"},vt={class:"px-4 py-2 text-slate-600 tabular-nums"},xt={class:"px-4 py-2"},ht={class:"flex items-center gap-1"},bt={class:"text-slate-600"},_t={key:1,class:"bg-blue-50/40"},yt={class:"px-4 py-2 font-semibold text-blue-700",colspan:"2"},ft={class:"px-4 py-2 text-slate-600 tabular-nums"},gt={key:0,class:"border-t border-slate-100 px-4 py-2"},kt={key:3,class:"rounded-lg border border-slate-200 bg-white"},St={class:"flex items-center justify-between border-b border-slate-100 px-4 py-2.5"},Tt={key:0,class:"text-[10px] text-slate-400"},Ct={key:0,class:"grid grid-cols-3 divide-x divide-slate-100"},Mt={class:"text-[10px] font-medium text-slate-400"},wt={class:"mt-0.5 text-sm font-bold text-slate-900 tabular-nums"},Ot={key:1,class:"border-t border-slate-100 px-4 py-2.5"},$t={class:"text-slate-600 capitalize"},Dt={class:"text-slate-800 tabular-nums"},Lt={key:2,class:"overflow-x-auto border-t border-slate-100"},Nt={class:"w-full text-xs"},Rt={class:"divide-y divide-slate-50"},Pt={class:"px-4 py-2 text-slate-700"},Ft={class:"px-4 py-2 text-slate-600"},Et={class:"px-4 py-2 text-slate-600 capitalize"},At={class:"px-4 py-2 text-right text-slate-700 tabular-nums"},Bt={class:"px-4 py-2 text-right text-slate-700 tabular-nums"},Ht={class:"grid grid-cols-1 gap-4 lg:grid-cols-2"},It={key:0,class:"rounded-lg border border-slate-200 bg-white"},Vt={class:"grid grid-cols-2 gap-2 p-4 sm:grid-cols-3"},jt={class:"text-[10px] font-medium text-slate-400"},zt={class:"mt-0.5 text-xs font-semibold text-slate-800 tabular-nums"},qt={key:0,class:"border-t border-slate-100 px-4 py-2 text-[10px] text-slate-400"},Kt={key:1,class:"rounded-lg border border-slate-200 bg-white"},Xt={class:"w-full text-xs"},Jt={class:"divide-y divide-slate-50"},Ut={key:4,class:"rounded-lg border border-slate-200 bg-white px-4 py-3"},Yt={class:"mt-1.5 text-xs leading-relaxed whitespace-pre-wrap text-slate-600"},Wt={class:"font-medium text-slate-700"},Gt={class:"mt-0.5 text-slate-400"},Qt={class:"mt-0.5 text-slate-400"},cl={__name:"SingleReportView",props:{report:{type:Object,required:!0},reportId:{type:[Number,String],default:null},generatedAt:{type:[String,Number],default:null},portMap:{type:Object,default:null}},setup(c,{expose:i}){const a=c,l=b(()=>a.report?.cover??{}),v=b(()=>a.report?.turnaround_timeline??[]),m=b(()=>a.report?.sof_timeline??[]),d=b(()=>a.report?.delay_analysis??{}),x=b(()=>
1a.report?.efficiency_metrics??{}),p=b(()=>a.report?.financial_exposure??{}),V=b(()=>a.report?.remarks),j=b(()=>{const u=[],r=l.value.ports||l.value.load_port||l.value.discharge_port;r&&u.push(r);const t=l.value.cargo_quantity,_=l.value.cargo,H=x.value.cargo_unit||"MT";return t&&_?u.push(`${Number(t).toLocaleString()} ${H} ${_}`):_&&u.push(_),u.join(" - ")}),z=b(()=>{const u=[];return l.value.cargo_quantity&&u.push(`${Number(l.value.cargo_quantity).toLocaleString()} ${x.value.cargo_unit||"MT"}`),(p.value.laytime_terms||l.value.laytime_terms)&&u.push(p.value.laytime_terms||l.value.laytime_terms),l.value.shex_terms&&u.push(l.value.shex_terms),u.join(" ")||null}),L=b(()=>{const u=p.value.headline_over_under_days??p.value.time_lost;return u==null?null:{value:Math.abs(u).toFixed(2),isOver:u>0}}),F=b(()=>{const u=p.value.demurrage_due??0,r=p.value.despatch_earned??0;return u>0?{label:"Total Demurrage",amount:u,isCost:!0}:r>0?{label:"Total Despatch",amount:r,isCost:!1}:{label:"Net Balance",amount:p.value.net_balance??0,isCost:!1}}),q=b(()=>(d.value.productive_time_hours??0)+(d.value.delay_time_hours??0)),E=b(()=>be(m.value)),K=b(()=>_e(m.value,v.value)),te=b(()=>ye(K.value)),X=b(()=>fe(E.value)),J=b(()=>ke(m.value,v.value)),le=b(()=>Se(m.value,v.value)),$=P(!1),y=P(null),se=u=>{y.value=y.value===u?null:u},U=b(()=>y.value==null?null:X.value.find(u=>u.type===y.value)?.hours??null),f=P({show:!1,x:0,y:0,segment:null}),ae=(u,r)=>{f.value={show:!0,x:u.clientX,y:u.clientY,segment:r}},oe=u=>{f.value.show&&(f.value.x=u.clientX,f.value.y=u.clientY)},ne=()=>{f.value.show=!1},S=u=>{if(u==null)return"-";const r=Math.abs(u).toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2});return u<0?`-$${r}`:`$${r}`},A=(u,r="")=>{if(u==null)return"-";const t=u.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2});return r?`${t} ${r}`:t},B=b(()=>[{label:"Shore-side",value:d.value.shore_delays},{label:"Vessel",value:d.value.vessel_delays},{label:"Operational",value:d.value.operational_delays}].filter(u=>u.value)),Y=b(()=>[{label:"Operation time",value:x.value.operation_hours!=null?M(x.value.operation_hours):null},{label:"Delayed time",value:x.value.delay_hours!=null?M(x.value.delay_hours):null},{label:"Shifting",value:x.value.shifting_hours!=null?M(x.value.shifting_hours):null},{label:"SHEX",value:x.value.shex_hours!=null?M(x.value.shex_hours):null},{label:"Pre-notice",value:x.value.pre_notice_hours!=null?M(x.value.pre_notice_hours):null},{label:"Duration",value:x.value.total_loading_duration!=null?N(x.value.total_loading_duration):null},{label:"Cargo moved",value:x.value.cargo_loaded!=null?A(x.value.cargo_loaded,x.value.cargo_unit||"MT"):null},{label:"Avg rate",value:x.value.average_loading_rate!=null?A(x.value.average_loading_rate,"MT/day"):null},{label:"Contract rate",value:x.value.contractual_rate!=null?A(x.value.contractual_rate,"MT/day"):null}].filter(u=>u.value)),W=b(()=>[{label:"Allowed laytime",value:N(p.value.allowed_laytime)},{label:"Used laytime",value:N(p.value.used_laytime)},{label:"Time over",value:N(p.value.time_lost),highlight:p.value.time_lost>0?"negative":null},{label:"Demurrage due",value:S(p.value.demurrage_due),highlight:p.value.demurrage_due>0?"negative":null},{label:"Despatch earned",value:S(p.value.despatch_earned),highlight:p.value.despatch_earned>0?"positive":null},{label:"Net balance",value:S(p.value.net_balance),highlight:(p.value.net_balance??0)>=0?"positive":"negative",bold:!0},{label:"Demurrage rate",value:p.value.demurrage_rate!=null?`${S(p.value.demurrage_rate)} / day`:null},{label:"Despatch rate",value:p.value.despatch_rate!=null?`${S(p.value.despatch_rate)} / day`:null},{label:"Commission",value:p.value.commission_due_usd!=null?`${S(p.value.commission_due_usd)}${p.value.commission_pct!=null?` (${p.value.commission_pct}%)`:""}`:null},{label:"Laytime terms",value:p.value.laytime_terms||l.value.laytime_terms||null}].filter(u=>u.value!=null)),G=P(null);return i({exportPdf:()=>re(G.value,{title:l.value.vessel||"Voyage Report",reportId:a.reportId})}),(u,r)=>(o(),n("div",Te,[e("div",{ref_key:"contentRef",ref:G,class:"mx-auto max-w-6xl space-y-4 p-4 sm:p-6"},[e("div",Ce,[e("h1",Me,[R(s(l.value.vessel??"Vessel")+" ",1),j.value?(o(),n("span",we,s(j.value),1)):h("",!0)]),me(ie,{value:c.generatedAt||c.report.generated_at},null,8,["value"])]),e("div",Oe,[e("div",$e,[e("p",De,s(F.value.label),1),e("p",{class:T(["mt-0.5 text-lg font-bold",F.value.isCost?"text-red-500":"text-slate-900"])}
1,s(S(F.value.amount)),3),l.value.demurrage_rate?(o(),n("p",Le,"Rate "+s(S(l.value.demurrage_rate))+" / day",1)):h("",!0)]),e("div",Ne,[r[4]||(r[4]=e("p",{class:"text-[10px] font-medium text-slate-400"},"Laytime",-1)),e("p",Re,[R(s(p.value.allowed_laytime??"-"),1),r[2]||(r[2]=e("span",{class:"text-sm font-normal text-slate-400"},"d",-1)),r[3]||(r[3]=e("span",{class:"ml-1 text-sm font-normal text-slate-400"},"allowed",-1))]),e("p",Pe,[R(s(p.value.used_laytime??"-")+"d used ",1),L.value?(o(),n("span",{key:0,class:T(["font-semibold",L.value.isOver?"text-red-500":"text-emerald-500"])}," ("+s(L.value.isOver?"+":"-")+s(L.value.value)+"d) ",3)):h("",!0)]),z.value?(o(),n("p",Fe,s(z.value),1)):h("",!0)]),e("div",Ee,[e("p",Ae,s(l.value.action==="discharging"?"Discharge rate":"Loading rate"),1),e("p",Be,s(x.value.loading_rate_per_hour??"-"),1),e("p",He,s(x.value.cargo_unit||"MT")+"/hr",1)]),e("div",Ie,[r[5]||(r[5]=e("p",{class:"text-[10px] font-medium text-slate-400"},"Delay impact",-1)),e("p",{class:T(["mt-0.5 text-lg font-bold",(d.value.delay_impact_pct??0)>10?"text-red-500":"text-slate-900"])},s(d.value.delay_impact_pct!=null?d.value.delay_impact_pct+"%":"-"),3),q.value>0?(o(),n("p",Ve," ~"+s(Math.round(d.value.delay_time_hours??0))+"h of "+s(Math.round(q.value))+"h ",1)):h("",!0)])]),c.portMap?.ports?.length||c.portMap?.unmapped?.length?(o(),Q(pe,{key:0,class:"bg-white",compact:"",ports:c.portMap?.ports??[],unmapped:c.portMap?.unmapped??[],subtitle:"This voyage"},null,8,["ports","unmapped"])):h("",!0),E.value.length?(o(),n("div",je,[r[6]||(r[6]=e("div",{class:"flex items-center justify-between"},[e("h2",{class:"text-xs font-semibold text-slate-900"},"Voyage timeline & delay analysis"),e("span",{class:"text-[10px] text-slate-400"},"Hover a block for details")],-1)),e("div",ze,[e("div",qe,[(o(!0),n(g,null,k(K.value,(t,_)=>(o(),n("div",{key:_,class:"absolute bottom-0 origin-bottom-left",style:w({left:t.position+"%"})},[e("span",Ke,s(t.label),1)],4))),128))]),e("div",Xe,[(o(!0),n(g,null,k(E.value,(t,_)=>(o(),n("div",{key:_,class:T(["absolute top-0 h-full cursor-pointer transition-opacity",y.value!=null&&y.value!==t.type?"opacity-15":"hover:opacity-80"]),style:w({left:t.left+"%",width:t.width+"%",backgroundColor:t.color}),onMouseenter:H=>ae(H,t),onMousemove:oe,onMouseleave:ne},[t.width>8&&t.remarks?(o(),n("span",Ue,s(t.remarks.length>18?t.remarks.substring(0,16)+"...":t.remarks),1)):h("",!0)],46,Je))),128))]),e("div",Ye,[(o(!0),n(g,null,k(te.value,(t,_)=>(o(),n("div",{key:_,class:"absolute top-0 overflow-hidden text-center text-[9px] text-slate-400",style:w({left:t.left+"%",width:t.width+"%"})},s(t.label),5))),128))])]),e("div",We,[(o(!0),n(g,null,k(X.value,t=>(o(),n("button",{key:t.type??t.label,type:"button",class:T(["flex items-center gap-1 rounded-full border px-2 py-0.5 text-[10px] transition-[background-color,border-color,opacity]",[y.value===t.type?"border-slate-400 bg-slate-100 text-slate-800":"border-transparent text-slate-500 hover:bg-slate-50",y.value!=null&&y.value!==t.type?"opacity-40":""]]),onClick:_=>se(t.type)},[e("span",{class:"inline-block h-2 w-2 rounded-sm",style:w({backgroundColor:t.color})},null,4),e("span",null,s(t.label),1),y.value===t.type&&U.value!=null?(o(),n("span",Qe,s(D(Z)(U.value)),1)):h("",!0)],10,Ge))),128)),y.value!=null?(o(),n("button",{key:0,type:"button",class:"text-[10px] text-slate-400 hover:text-slate-600",onClick:r[0]||(r[0]=t=>y.value=null)}," Clear ")):h("",!0)])])):h("",!0),J.value.length||m.value.length?(o(),n("div",Ze,[e("div",et,[$.value?(o(),n("table",dt,[r[9]||(r[9]=e("thead",null,[e("tr",{class:"border-b border-slate-100"},[e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Event"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"From"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"To"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Counts as")])],-1)),e("tbody",ct,[(o(!0),n(g,null,k(le.value,(t,_)=>(o(),n(g,{key:_},[t.kind==="sof"?(o(),n("tr",{key:0,class:T(["transition-opacity",[y.value!=null&&t.type===y.value?"bg-yellow-50":"hover:bg-slate-50/50",y.value!=null&&t.type!==y.value?"opacity-30":""]])},[e("td",pt,s(t.remarks),1),e("td",mt,s(t.from),1),e("td",vt,s(t.to),1),e("td",xt,[e("span",ht,[e("span",{class:"inline-block h-1.5 w-1.5 rounded-full",style:w({backgroundColor:t.typeColor})},null,4),e("span",bt,s(t.typeLabel),1)])])],2)):(o(),n("tr",_t,[e("td",yt,s(t.event),1),e("td",ft,s(t.datetime),1),r[8]||(r[8]=e("td",null,null,-1))]))],64))),128))])])):(o(),n("table",tt,[r[7]||
1(r[7]=e("thead",null,[e("tr",{class:"border-b border-slate-100"},[e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Event"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"From"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"To"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Counts as")])],-1)),e("tbody",lt,[(o(!0),n(g,null,k(J.value,(t,_)=>(o(),n("tr",{key:_,class:"hover:bg-slate-50/50"},[e("td",st,s(t.event),1),e("td",at,s(t.from),1),e("td",ot,s(t.to),1),e("td",nt,[t.typeLabel?(o(),n("span",rt,[e("span",{class:"inline-block h-1.5 w-1.5 rounded-full",style:w({backgroundColor:t.typeColor})},null,4),e("span",it,s(t.typeLabel),1)])):(o(),n("span",ut,"â"))])]))),128))])]))]),m.value.length?(o(),n("div",gt,[e("button",{type:"button",class:"flex items-center gap-1 text-[10px] text-slate-400 hover:text-slate-600",onClick:r[1]||(r[1]=t=>$.value=!$.value)},[R(s($.value?"Hide":"Show")+" full statement of facts ",1),(o(),n("svg",{class:T(["h-3 w-3 transition-transform",$.value?"rotate-180":""]),viewBox:"0 0 20 20",fill:"currentColor"},[...r[10]||(r[10]=[e("path",{"fill-rule":"evenodd",d:"M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z","clip-rule":"evenodd"},null,-1)])],2))])])):h("",!0)])):h("",!0),B.value.length||(d.value.delay_entries??[]).length?(o(),n("div",kt,[e("div",St,[r[11]||(r[11]=e("h2",{class:"text-xs font-semibold text-slate-900"},"Delay accountability",-1)),d.value.delay_time_hours?(o(),n("span",Tt,s(D(M)(d.value.delay_time_hours))+" lost ",1)):h("",!0)]),B.value.length?(o(),n("div",Ct,[(o(!0),n(g,null,k(B.value,t=>(o(),n("div",{key:t.label,class:"px-4 py-3"},[e("p",Mt,s(t.label),1),e("p",wt,s(t.value),1)]))),128))])):h("",!0),(d.value.delay_totals??[]).length?(o(),n("div",Ot,[(o(!0),n(g,null,k(d.value.delay_totals,t=>(o(),n("div",{key:t.label,class:"flex items-center justify-between py-0.5 text-[11px]"},[e("span",$t,s(t.label),1),e("span",Dt,s(D(M)(t.lost_hours))+" · "+s(S(t.est_impact_usd))+" ("+s(t.count)+") ",1)]))),128))])):h("",!0),(d.value.delay_entries??[]).length?(o(),n("div",Lt,[e("table",Nt,[r[12]||(r[12]=e("thead",null,[e("tr",{class:"border-b border-slate-100"},[e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Remark"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Category"),e("th",{class:"px-4 py-2 text-left text-[10px] font-medium text-slate-400"},"Accountability"),e("th",{class:"px-4 py-2 text-right text-[10px] font-medium text-slate-400"},"Lost"),e("th",{class:"px-4 py-2 text-right text-[10px] font-medium text-slate-400"},"Est. USD")])],-1)),e("tbody",Rt,[(o(!0),n(g,null,k(d.value.delay_entries,(t,_)=>(o(),n("tr",{key:_,class:"hover:bg-slate-50/50"},[e("td",Pt,s(t.remark||"-"),1),e("td",Ft,s(t.category||"-"),1),e("td",Et,s(t.controllability||"-"),1),e("td",At,s(D(M)(t.hours)),1),e("td",Bt,s(S(t.usd)),1)]))),128))])])])):h("",!0)])):h("",!0),e("div",Ht,[Y.value.length?(o(),n("div",It,[r[13]||(r[13]=e("div",{class:"border-b border-slate-100 px-4 py-2.5"},[e("h2",{class:"text-xs font-semibold text-slate-900"},"Efficiency")],-1)),e("div",Vt,[(o(!0),n(g,null,k(Y.value,t=>(o(),n("div",{key:t.label,class:"rounded-md border border-slate-100 bg-slate-50/60 px-2.5 py-2"},[e("p",jt,s(t.label),1),e("p",zt,s(t.value),1)]))),128))]),x.value.shex_description?(o(),n("p",qt," SHEX: "+s(x.value.shex_description),1)):h("",!0)])):h("",!0),W.value.length?(o(),n("div",Kt,[r[14]||(r[14]=e("div",{class:"border-b border-slate-100 px-4 py-2.5"},[e("h2",{class:"text-xs font-semibold text-slate-900"},"Financial exposure")],-1)),e("table",Xt,[e("tbody",Jt,[(o(!0),n(g,null,k(W.value,(t,_)=>(o(),n("tr",{key:_,class:T(t.bold?"bg-slate-50/60":"")},[e("td",{class:T(["px-4 py-2 text-slate-500",t.bold?"font-semibold text-slate-900":""])},s(t.label),3),e("td",{class:T(["px-4 py-2 text-right tabular-nums",[t.bold?"font-semibold":"font-medium",t.highlight==="positive"?"text-emerald-600":"",t.highlight==="negative"?"text-red-600":"",t.highlight?"":"text-slate-900"]])},s(t.value),3)],2))),128))])])])):h("",!0)]),V.value?(o(),n("div",Ut,[r[15]||(r[15]=e("h2",{class:"text-xs font-semibold text-slate-900"},"Remarks",-1)),e("p",Yt,s(V.value),1)])):h("",!0)],512),(o(),Q(ve,{to:"body"},[f.value.show&&f.value.segment?(o(),n("div",{key:0,class:"pointer-events-none fixed z-50 rounded border border-slate-200 bg-white px-2 py-1.5 text-[10px] shadow-lg",style:w({left:f.value.x+12+"px",to
1p:f.value.y-10+"px"})},[e("p",Wt,s(f.value.segment.remarks||f.value.segment.label),1),e("p",Gt,s(f.value.segment.from)+" â "+s(f.value.segment.to),1),e("p",Qt,s(f.value.segment.label)+" · "+s(D(Z)(f.value.segment.hours)),1)],4)):h("",!0)]))]))}};export{cl as default}; 2//# sourceMappingURL=SingleReportView-BN2qb_nu.js.map
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.