PageSourceSearch

https://bizvanguard.ai/assets/index-B2XEQ5uY.js

js bizvanguard.ai collected 2026-10-05 13:48:32 UTC 3,742 bytes, 1 lines download raw bytes

1import{u as F,r as a,t as U,j as e}from"./vendor-react-zwv87yMD.js";import{u as Q}from"./vendor-query-DYq8g7OI.js";import{B as x}from"./button-DlBDuKbo.js";import{b as T}from"./bills-BzfdgZgx.js";import{p as q}from"./receiptImageProcessor-CVGxi5p8.js";import{i as I,E as z}from"./EditorStep-BORTGZhd.js";import{R as K,C as D}from"./ReviewStep-Ds_KXLCB.js";import{C as L,F as V,Q as _,v as G}from"./vendor-icons-bLSWzydc.js";import{c as H}from"./vendor-router-DimZLiZb.js";import"./vendor-charts-CtrTLS4K.js";import"./vendor-i18n-BdYkS11p.js";import"./vendor-ui-CfDMlrKu.js";import"./vendor-pdf-DQuePnfN.js";import"./vendor-state-ByI9XJey.js";import"./vendor-editor-C_dhmuey.js";import"./utils-BXSzAfFa.js";import"./api-client-wl3SCNAO.js";import"./heicConverter-CHdWIaig.js";function de(){const{t:o}=F("bills"),c=H(),g=Q(),[f,r]=a.useState("capture"),[s,d]=a.useState([]),[l,m]=a.useState(0),[b,u]=a.useState(""),C=a.useCallback(n=>{d(t=>[...t,n]),r("review")},[]),j=a.useCallback(()=>{r("capture")},[]),k=a.useCallback(()=>{m(0),r("edit")},[]),v=a.useCallback(n=>{d(t=>{const i=t.filter((h,R)=>R!==n);return i.length===0&&r("capture"),i})},[]),w=a.useCallback(()=>{s.length===0?c("/dashboard/bills"):(d([]),r("capture"))},[s.length,c]),p=a.useCallback(async n=>{r("upload");try{let t;if(n.length===1){u(o("common:camera.progress.enhancing"));const{processedFile:i}=await q(n[0]);t=i}else u(o("common:camera.progress.assembling")),t=await I(n);u(o("common:camera.progress.uploading")),await T.upload(t),g.invalidateQueries({queryKey:["bills"]}),g.invalidateQueries({queryKey:["bills-dashboard"]}),r("done")}catch(t){console.error("Upload failed:",t),U.error(o("common:camera.progress.uploadFailed")),r("review")}},[g,o]),N=a.useCallback(()=>{p(s)},[s,p]),y=a.useCallback(async n=>{const t=s.map((i,h)=>h===l?n:i);d(t),l<s.length-1?m(l+1):await p(t)},[s,l,p]),P=a.useCallback(n=>{d(t=>t.map((i,h)=>h===l?n:i)),m(0),r("capture")},[l]),B=a.useCallback(()=>{l>0?m(l-1):r("review")},[l]),E=a.useCallback(()=>{s.length>0?r("review"):c("/dashboard/bills")},[s.length,c]),S=a.useCallback(()=>{c("/dashboard/bills")},[c]),A=a.useCallback(()=>{d([]),m(0),u(""),r("capture")},[]);switch(f){case"capture":return e.jsx(D,{onCapture:C,onBack:E});case"review":return e.jsx(K,{pages:s,onAddPage:j,onUpload:N,onEditPages:k,onRemovePage:v,onBack:w});case"edit":return s[l]?e.jsx(z,{imageFile:s[l],onConfirm:y,onAddPage:P,onBack:B,pageNumber:s.length>1?l+1:void 0,totalPages:s.length>1?s.length:void 0},l):null;case"upload":return e.jsx("div",{className:"fixed inset-0 z-50 bg-background flex items-center justify-center",children:e.jsxs("div",{className:"text-center px-6",children:[e.jsx(G,{className:"h-12 w-12 animate-spin text-primary mx-auto mb-4"}),e.jsx("h2",{className:"text-lg font-semibold mb-1",children:o("scan.processing")}),e.jsx("p",{className:"text-sm text-muted-foreground",children:b})]})});case"done":return e.jsx("div",{className:"fixed inset-0 z-50 bg-background flex items-center justify-center",children:e.jsxs("div",{className:"text-center px-6 max-w-sm",children:[e.jsx("div",{className:"w-16 h-16 rounded-full bg-green-100 flex items-center justify-center mx-auto mb-4",children:e.jsx(L,{className:"h-8 w-8 text-green-600"})}),e.jsx("h2",{className:"text-xl font-semibold mb-2",children:o("scan.uploaded")}),e.jsx("p",{className:"text-sm text-muted-foreground mb-8",children:o("scan.uploadedBody")}),e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsxs(x,{className:"w-full h-12",onClick:S,children:[e.jsx(V,{className:"h-5 w-5 mr-2"}),o("scan.viewBills")]}),e.jsxs(x,{variant:"outline",className:"w-full h-12",onClick:A,children:[e.jsx(_,{className:"h-5 w-5 mr-2"}),o("scan.scanAnother")]})]})]})})}}export{de 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.