1import{z as j,a as I,ac as O,k as t,m as d,l,j as o,e as s,V as D,t as p,v as m,O as F,r as N,ae as B,aK as C,F as $,q as b,y as T}from"./_TN_iw76.js";import{_ as R}from"./L-BANBGf.js";import{_ as L}from"./DuCIFoNU.js";import{u as E}from"./TN4wxhGq.js";import"./CtTPxd-E.js";import"./BKPbwrKY.js";import"./BnCGYE6B.js";import"./BhmuO0PS.js";import"./CnD8f0RC.js";const n={pdf:"application/pdf",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",xls:"application/vnd.ms-excel",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",ppt:"application/vnd.ms-powerpoint",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",txt:"text/plain",csv:"text/csv",jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",gif:"image/gif",svg:"image/svg+xml",zip:"application/zip",rar:"application/vnd.rar",xml:"application/xml",json:"application/json",html:"text/html",htm:"text/html"},G={key:0,class:"list-group-item"},M={class:"doc-icon"},S={class:"doc-info"},U={class:"doc-title"},V={class:"doc-details"},q={key:0},A={key:1},K={key:2},z={key:3},P={class:"doc-actions"},W=["disabled"],X=j({__name:"file",props:{order:{type:Object,required:!0},file:{type:Object,required:!0}},setup(e){const{t:w}=I(),x=O(),{formatDate:h}=E(),v=e,k=a=>a<1024?`${a} B`:a<1024*1024?`${(a/1024).toFixed(1)} KB`:a<1024*1024*1024?`${(a/(1024*1024)).toFixed(1)} MB`:`${(a/(1024*1024*1024)).toFixed(1)} GB`,u=N(!1),r=async a=>{if(!u.value){u.value=!0;try{const i=await fetch(`/api/oscar/portal/salesorder/${v.order.salesOrderCode}/files/${a.fileId}`);if(!i.ok)throw new Error("Download failed");const c=await i.blob(),g=window.URL.createObjectURL(c),y=document.createElement("a");y.href=g,y.download=a.fileName,document.body.appendChild(y),y.click(),setTimeout(()=>{window.URL.revokeObjectURL(g),y.remove()},100)}catch{x.add(w("error"),B.DANGER)}finally{u.value=!1}}},f=a=>v.order.salesOrderRows?.find(i=>i.itemCode===a);return(a,i)=>{const c=D,g=R,y=L;return e.file?(t(),d("li",G,[l("div",M,[e.file.mimeType===o(n).pdf?(t(),s(c,{key:0,icon:"far fa-file-pdf"})):e.file.mimeType===o(n).doc||e.file.mimeType===o(n).docx?(t(),s(c,{key:1,icon:"far fa-file-word"})):e.file.mimeType===o(n).xls||e.file.mimeType===o(n).xlsx||e.file.mimeType===o(n).csv?(t(),s(c,{key:2,icon:"far fa-file-excel"})):e.file.mimeType===o(n).ppt||e.file.mimeType===o(n).pptx?(t(),s(c,{key:3,icon:"far fa-file-powerpoint"})):e.file.mimeType===o(n).zip||e.file.mimeType===o(n).rar?(t(),s(c,{key:4,icon:"far fa-file-archive"})):e.file.mimeType===o(n).xml||e.file.mimeType===o(n).json?(t(),s(c,{key:5,icon:"far fa-file-code"})):e.file.mimeType===o(n).txt?(t(),s(c,{key:6,icon:"far fa-file-alt"})):e.file.mimeType.startsWith("image/")?(t(),s(c,{key:7,icon:"far fa-file-image"})):(t(),s(c,{key:8,icon:"far fa-file"}))]),l("div",S,[l("span",U,p(e.file.fileName),1),i[1]||(i[1]=l("br",null,null,-1)),l("span",V,[e.file.fileSize?(t(),d("span",q,p(k(e.f
1ile.fileSize)),1)):m("",!0),e.file.changeDate?(t(),d("span",A,p(o(h)(e.file.changeDate)),1)):e.file.createDate?(t(),d("span",K,p(o(h)(e.file.createDate)),1)):m("",!0),e.file.oscarType=="NI"?(t(),d("span",z,p(e.file.oscarId),1)):m("",!0)]),e.file.oscarType=="NI"&&f(e.file.oscarId)?(t(),s(g,{key:0,row:f(e.file.oscarId),order:e.order,"on-documents":!0},null,8,["row","order"])):m("",!0)]),l("div",P,[l("button",{type:"button",class:"btn btn-sm btn-outline-primary icon-btn",disabled:!!o(u),onClick:i[0]||(i[0]=ae=>r(e.file))},[o(u)?(t(),s(y,{key:0})):(t(),s(c,{key:1,icon:"fas fa-download"})),F(" "+p(a.$t("v1.views.portal.order.documents.download")),1)],8,W)])])):m("",!0)}}}),Z={key:0,class:"portal-card","data-portal-component":"order-documents"},H={key:0,class:"card portal-card"},J={class:"card-header"},Q={class:"card-body"},Y={key:0,class:"list-group"},_={key:1,class:"card portal-card"},ee={class:"card-header"},te={class:"card-body"},oe={key:0,class:"list-group"},ue=j({__name:"documents",props:{order:{type:Object,required:!0}},setup(e){const w=e,{data:x,pending:h}=C(`/api/oscar/portal/salesorder/${w.order.salesOrderCode}/files`,{method:"GET"},"$GXlAGKx18X"),v=T(()=>x.value?x.value.map(r=>{let f=r.mimeType.trim();if(!f){const a=r.fileName.match(/\.([a-zA-Z0-9]+)$/);if(a){const i=a[1].toLowerCase();f=n[i]||""}}return{...r,mimeType:f}}):[]),k=T(()=>v.value.filter(r=>r.oscarType==="MT")),u=T(()=>v.value.filter(r=>r.oscarType==="NI").sort((r,f)=>r.oscarId.localeCompare(f.oscarId)));return(r,f)=>{const a=X;return e.order?(t(),d("div",Z,[o(k).length>0?(t(),d("div",H,[l("div",J,[l("h2",null,p(r.$t("v1.views.portal.order.documents.projectDocuments")),1)]),l("div",Q,[o(h)?m("",!0):(t(),d("ul",Y,[(t(!0),d($,null,b(o(k),i=>(t(),s(a,{key:i.fileId,order:e.order,file:i},null,8,["order","file"]))),128))]))])])):m("",!0),o(u).length>0?(t(),d("div",_,[l("div",ee,[l("h2",null,p(r.$t("v1.views.portal.order.documents.rowDocuments")),1)]),l("div",te,[o(h)?m("",!0):(t(),d("ul",oe,[(t(!0),d($,null,b(o(u),i=>(t(),s(a,{key:i.fileId,order:e.order,file:i},null,8,["order","file"]))),128))]))])])):m("",!0)])):m("",!0)}}});export{ue 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.