mirror of
https://github.com/InvoiceShelf/InvoiceShelf.git
synced 2026-04-14 08:44:06 +00:00
2 lines
7.8 KiB
JavaScript
2 lines
7.8 KiB
JavaScript
import{F as ne,as as ie,a7 as de,M as ue,v as ce,f,L as me,e as fe,H as pe,k as B,z as _e,P as ve,r as n,o as u,c as k,a,m as y,w as l,b as i,l as I,Q as j,p as A,t as v,K as g,N as R,O as ye,J as ge}from"./main-WMXHPsTs.js";import{_ as be}from"./EstimateIndexDropdown-3kRrr45C.js";import{_ as he}from"./SendEstimateModal-ZGAnoJhC.js";import{L as xe}from"./LoadingIcon--U35iTrM.js";import"./mail-driver-pKOn2Cq7.js";const Be={class:"mr-3 text-sm"},ke={class:"fixed top-0 left-0 hidden h-full pt-16 pb-[6.4rem] ml-56 bg-white xl:ml-64 w-88 xl:block"},Se={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},we={class:"mb-6"},Ee={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},Te={class:"px-4 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},Ie={class:"flex-2"},Fe={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},Ve={class:"flex-1 whitespace-nowrap right"},De={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},$e={key:0,class:"flex justify-center p-4 items-center"},Le={key:1,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Ne={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},Ae=["src"],Re={__name:"View",setup(Me){const H=ne(),F=ie(),O=de(),M=ue(),{t:p}=ce.useI18n(),r=f(null),b=me();fe();const S=f(!1),h=f(!1),w=f(!1),d=f(null),x=f(1),V=f(1),z=f(null),t=pe({orderBy:null,orderByField:null,searchText:null}),G=B(()=>r.value.estimate_number),C=B(()=>t.orderBy==="asc"||t.orderBy==null);B(()=>C.value?p("general.ascending"):p("general.descending"));const q=B(()=>`/estimates/pdf/${r.value.unique_hash}`);B(()=>r.value&&r.value.id?estimate.value.id:null),_e(b,(e,o)=>{e.name==="estimates.view"&&P()}),E(),P(),m=ve.debounce(m,500);function J(e){return b.params.id==e}async function E(e,o=!1){if(h.value)return;let c={};t.searchText!==""&&t.searchText!==null&&t.searchText!==void 0&&(c.search=t.searchText),t.orderBy!==null&&t.orderBy!==void 0&&(c.orderBy=t.orderBy),t.orderByField!==null&&t.orderByField!==void 0&&(c.orderByField=t.orderByField),h.value=!0;let T=await F.fetchEstimates({page:e,...c});h.value=!1,d.value=d.value?d.value:[],d.value=[...d.value,...T.data.data],x.value=e||1,V.value=T.data.meta.last_page;let _=d.value.find(D=>D.id==b.params.id);o==!1&&!_&&x.value<V.value&&Object.keys(c).length===0&&E(++x.value),_&&setTimeout(()=>{o==!1&&K()},500)}function K(){const e=document.getElementById(`estimate-${b.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"),Q())}function Q(){z.value.addEventListener("scroll",e=>{e.target.scrollTop>0&&e.target.scrollTop+e.target.clientHeight>e.target.scrollHeight-200&&x.value<V.value&&E(++x.value,!0)})}async function P(){w.value=!0;let e=await F.fetchEstimate(b.params.id);e.data&&(w.value=!1,r.value={...e.data.data})}async function m(){d.value=[],E()}function W(){return t.orderBy==="asc"?(t.orderBy="desc",m(),!0):(t.orderBy="asc",m(),!0)}async function X(){O.openDialog({title:p("general.are_you_sure"),message:p("estimates.confirm_mark_as_sent"),yesLabel:p("general.ok"),noLabel:p("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(e=>{S.value=!1,e&&(F.markAsSent({id:r.value.id,status:"SENT"}),r.value.status="SENT",S.value=!0),S.value=!1})}async function Y(e){H.openModal({title:p("estimates.send_estimate"),componentName:"SendEstimateModal",id:r.value.id,data:r.value})}function Z(){let e=d.value.findIndex(o=>o.id===r.value.id);d.value[e]&&(d.value[e].status="SENT",r.value.status="SENT")}return(e,o)=>{const c=n("BaseButton"),T=n("BasePageHeader"),_=n("BaseIcon"),D=n("BaseInput"),$=n("BaseRadio"),L=n("BaseInputGroup"),N=n("BaseDropdownItem"),ee=n("BaseDropdown"),te=n("BaseText"),ae=n("BaseEstimateStatusBadge"),se=n("BaseFormatMoney"),le=n("router-link"),oe=n("BasePage");return u(),k(R,null,[a(he,{onUpdate:Z}),r.value?(u(),y(oe,{key:0,class:"xl:pl-96 xl:ml-8"},{default:l(()=>{var U;return[a(T,{title:G.value},{actions:l(()=>[i("div",Be,[r.value.status==="DRAFT"&&I(M).hasAbilities(I(j).EDIT_ESTIMATE)?(u(),y(c,{key:0,disabled:S.value,"content-loading":w.value,variant:"primary-outline",onClick:X},{default:l(()=>[A(v(e.$t("estimates.mark_as_sent")),1)]),_:1},8,["disabled","content-loading"])):g("",!0)]),r.value.status==="DRAFT"&&I(M).hasAbilities(I(j).SEND_ESTIMATE)?(u(),y(c,{key:0,"content-loading":w.value,variant:"primary",class:"text-sm",onClick:Y},{default:l(()=>[A(v(e.$t("estimates.send_estimate")),1)]),_:1},8,["content-loading"])):g("",!0),a(be,{class:"ml-3",row:r.value},null,8,["row"])]),_:1},8,["title"]),i("div",ke,[i("div",Se,[i("div",we,[a(D,{modelValue:t.searchText,"onUpdate:modelValue":o[0]||(o[0]=s=>t.searchText=s),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:o[1]||(o[1]=s=>m())},{right:l(()=>[a(_,{name:"SearchIcon",class:"text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),i("div",Ee,[a(ee,{class:"ml-3",position:"bottom-start","width-class":"w-45","position-class":"left-0"},{activator:l(()=>[a(c,{size:"md",variant:"gray"},{default:l(()=>[a(_,{name:"FilterIcon"})]),_:1})]),default:l(()=>[i("div",Te,v(e.$t("general.sort_by")),1),a(N,{class:"flex px-4 py-2 cursor-pointer"},{default:l(()=>[a(L,{class:"-mt-3 font-normal"},{default:l(()=>[a($,{id:"filter_estimate_date",modelValue:t.orderByField,"onUpdate:modelValue":[o[2]||(o[2]=s=>t.orderByField=s),m],label:e.$t("reports.estimates.estimate_date"),size:"sm",name:"filter",value:"estimate_date"},null,8,["modelValue","label"])]),_:1})]),_:1}),a(N,{class:"flex px-4 py-2 cursor-pointer"},{default:l(()=>[a(L,{class:"-mt-3 font-normal"},{default:l(()=>[a($,{id:"filter_due_date",modelValue:t.orderByField,"onUpdate:modelValue":[o[3]||(o[3]=s=>t.orderByField=s),m],label:e.$t("estimates.due_date"),value:"expiry_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1}),a(N,{class:"flex px-4 py-2 cursor-pointer"},{default:l(()=>[a(L,{class:"-mt-3 font-normal"},{default:l(()=>[a($,{id:"filter_estimate_number",modelValue:t.orderByField,"onUpdate:modelValue":[o[4]||(o[4]=s=>t.orderByField=s),m],label:e.$t("estimates.estimate_number"),value:"estimate_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),a(c,{class:"ml-1",size:"md",variant:"gray",onClick:W},{default:l(()=>[C.value?(u(),y(_,{key:0,name:"SortAscendingIcon"})):(u(),y(_,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),i("div",{ref_key:"estimateListSection",ref:z,class:"h-full overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},[(u(!0),k(R,null,ye(d.value,(s,re)=>(u(),k("div",{key:re},[s?(u(),y(le,{key:0,id:"estimate-"+s.id,to:`/admin/estimates/${s.id}/view`,class:ge(["flex justify-between side-estimate p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":J(s.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:l(()=>[i("div",Ie,[a(te,{text:s.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),i("div",Fe,v(s.estimate_number),1),a(ae,{status:s.status,class:"px-1 text-xs"},{default:l(()=>[A(v(s.status),1)]),_:2},1032,["status"])]),i("div",Ve,[a(se,{amount:s.total,currency:s.customer.currency,class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900"},null,8,["amount","currency"]),i("div",De,v(s.formatted_estimate_date),1)])]),_:2},1032,["id","to","class"])):g("",!0)]))),128)),h.value?(u(),k("div",$e,[a(xe,{class:"h-6 m-1 animate-spin text-primary-400"})])):g("",!0),!((U=d.value)!=null&&U.length)&&!h.value?(u(),k("p",Le,v(e.$t("estimates.no_matching_estimates")),1)):g("",!0)],512)]),i("div",Ne,[i("iframe",{src:`${q.value}`,class:"flex-1 border border-gray-400 border-solid rounded-md bg-white frame-style"},null,8,Ae)])]}),_:1})):g("",!0)],64)}}};export{Re as default};
|