PageSourceSearch

https://studio--billsense-nprrn.us-central1.hosted.app/_next/stati…/app/receipts/add/page-b3e15440691c02b7.js

js studio--billsense-nprrn.us-central1.hosted.app collected 2026-10-03 05:34:32 UTC 6,611 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4890],{4598:(e,t,r)=>{Promise.resolve().then(r.bind(r,91776))},79749:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});let a={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};for(var s,n=new Uint8Array(16),i=[],c=0;c<256;++c)i.push((c+256).toString(16).slice(1));let l=function(e,t,r){if(a.randomUUID&&!t&&!e)return a.randomUUID();var c=(e=e||{}).random||(e.rng||function(){if(!s&&!(s="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return s(n)})();if(c[6]=15&c[6]|64,c[8]=63&c[8]|128,t){r=r||0;for(var l=0;l<16;++l)t[r+l]=c[l];return t}return function(e,t=0){return(i[e[t+0]]+i[e[t+1]]+i[e[t+2]]+i[e[t+3]]+"-"+i[e[t+4]]+i[e[t+5]]+"-"+i[e[t+6]]+i[e[t+7]]+"-"+i[e[t+8]]+i[e[t+9]]+"-"+i[e[t+10]]+i[e[t+11]]+i[e[t+12]]+i[e[t+13]]+i[e[t+14]]+i[e[t+15]]).toLowerCase()}(c)}},91776:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>k});var a=r(95155),s=r(76046),n=r(65423),i=r(50572),c=r(73312),l=r(67396),o=r(41598),d=r(22783),u=r(76426),p=r(65564),m=r(12115),f=r(87081),x=r(44595),h=r(80333),j=r(79749),b=r(66104),g=r(75828);let y=(0,g.createServerReference)("60452ac993ff4a24d4b9ce6cfc020ff9e502a9a88e",g.callServer,void 0,g.findSourceMapURL,"runAssetSuggestion");var v=r(46087),w=r(12687);function N(){let e=(0,s.useRouter)(),{toast:t}=(0,p.dj)(),{user:r,loading:g}=(0,n.A)(),[N,k]=(0,m.useState)(!1),[U,S]=(0,m.useState)(null),[A,R]=(0,m.useState)(!0);(0,m.useEffect)(()=>{g||r||e.push("/login")},[r,g,e]),(0,m.useEffect)(()=>{(async()=>{let e=await (0,b.Jt)("pending-upload-data");if(e)try{"receipt"===e.type?(S(e),0===Object.keys(e.details||{}).length&&t({variant:"destructive",title:"Extraction Failed",description:"Could not extract details. Please enter them manually."})):S({type:"receipt",imageUri:e.imageUri,contentType:e.contentType})}catch(e){console.error("Failed to process pending upload data",e)}finally{await (0,b.yH)("pending-upload-data"),R(!1)}else R(!1)})()},[t]);let E=async(a,s)=>{if(!r)return;k(!0);let n=s;if(n&&n.startsWith("data:")){let e=(0,h.KR)(x.IG,"receipts/".concat(r.uid,"/").concat((0,j.A)())),t=await (0,h.ls)(e,n,"data_url");n=await (0,h.qk)(t.ref)}let{initialNote:i,tags:c,...l}=a,o={...l,imageUrl:n,userId:r.uid,notes:[],assetSuggestionCheckPerformed:!1};i&&o.notes.push({text:i,createdAt:new Date});let d=await (0,w.pp)(r.uid,"receipts",o,c||[]);if(d.success){(0,v.no)(),y(d.docId,r.uid);let t="Receipt from ".concat(a.vendor," has been successfully added.");e.push("/?tab=receipts&newReceiptId=".concat(d.docId,"&confirmation=").concat(encodeURIComponent(t)))}else t({variant:"destructive",title:"Save Failed",description:d.error||"Could not save the receipt and its tags."}),k(!1)};return g||A||!r?(0,a.jsxs)("div",{className:"min-h-screen bg-muted/40",children:[(0,a.jsx)("header",{className:"px-4 py-2 md:py-4 border-b bg-card/80 backdrop-blur-sm sticky top-0 z-30 pt-[calc(0.5rem+env(safe-area-inset-top))] md:pt-[calc(1rem+env(safe-area-inset-top))]",children:(0,a.jsx)("div",{className:"container mx-auto flex items-center justify-between gap-3 px-4",children:(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)(c.$,{variant:"outline",size:"icon",asChild:!0,children:(0,a.jsx)(l.default,{href:"/",children:(0,a.jsx)(o.A,{})})}),(0,a.jsx)("h1",{className:"text-xl font-semibold text-foreground",children:"Add Receipt"})]})})}),(0,a.jsx)("main",{className:"px-4 md:px-6 pt-6 pb-24 max-w-2xl mx-auto",children:(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsx)(f.E,{className:"h-48 w-full"}),(0,a.jsx)(f.E,{className:"h-10 w-full"}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-6",children:[(0,a.jsx)(f.E,{className:"h-10 w-full"}),(0,a.jsx)(f.E,{className:"h-10 w-full"})]}),(0,a.jsx)(f.E,{className:"h-10 w-full"})]})})]}):(0,a.jsx)(i.F,{onSubmit:E,isSubmitting:N,initialDataFromUpload:U,children:t=>{let{form:r,isSubmitting:s}=t;return(0,a.jsxs)("div",{className:"min-h-screen bg-muted/40 flex flex-col",children:[(0,a.jsx)("header",{className:"px-4 py-2 md:py-4 border-b bg-card/80 backdrop-blur-sm sticky top-0 z-30 pt-[calc(0.5rem+env(safe-area-inset-top))] md:pt-[calc(1rem+env(safe-area-inset-top))]",children:(0,a.jsx)("div",{className:"container mx-auto flex items-center justify-between gap-3 px-4",children:(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)(c.$,{variant:"outline",size:"icon",asChild:!0,children:(0,a.jsx)(l.default,{href:"/",children:(0,a.jsx)(o.A,{})})}),(0,a.jsx)("h1",{className:"text-xl font-semibold text-foreground",children:"Add Receipt"})]})})}),(0,a.jsx)("main",{className:"flex-1 overflow-y-auto",children:(0,a.jsxs)("div",{className:"px-4 md:px-6 pt-6 pb-24 max-w-2xl mx-auto",children:[(0,a.jsx)("div",{className:"text-center mb-6",children:(0,a.jsx)(c.$,{variant:"link",onClick:()=>e.push("/bills/add"),children:"Wrong document type? Add as a Bill instead."})}),(0,a.jsx)(i.C,{form:r,isProcessing:s})]})}),(0,a.jsx)("footer",{className:"p-4 border-t bg-card/80 backdrop-blur-sm sticky bottom-0 z-30 flex justify-center pb-[calc(1rem+env(safe-area-inset-bottom))]",children:(0,a.jsx)(c.$,{type:"submit",className:"w-full max-w-2xl",size:"lg",disabled:s,children:s?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.A,{className:"mr-2 h-4 w-4 animate-spin"}),"Saving..."]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(u.A,{className:"mr-2 h-4 w-4"}),"Add Receipt"]})})})]})}})}function k(){return(0,a.jsx)(N,{})}},66104:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>s,hZ:()=>n,yH:()=>i});var a=r(67792);function s(e){return(0,a.Jt)(e)}function n(e,t){return(0,a.hZ)(e,t)}function i(e){return(0,a.yH)(e)}},67792:(e,t,r)=>{"use strict";let a;function s(e){return new Promise((t,r)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>r(e.error)})}function n(){return a||(a=function(e,t){let r;let a=()=>
1{if(r)return r;let a=indexedDB.open(e);return a.onupgradeneeded=()=>a.result.createObjectStore(t),(r=s(a)).then(e=>{e.onclose=()=>r=void 0},()=>{}),r};return(e,r)=>a().then(a=>r(a.transaction(t,e).objectStore(t)))}("keyval-store","keyval")),a}function i(e,t=n()){return t("readonly",t=>s(t.get(e)))}function c(e,t,r=n()){return r("readwrite",r=>(r.put(t,e),s(r.transaction)))}function l(e,t=n()){return t("readwrite",t=>(t.delete(e),s(t.transaction)))}r.d(t,{Jt:()=>i,hZ:()=>c,yH:()=>l})}},e=>{var t=t=>e(e.s=t);e.O(0,[2992,3644,4324,69,4900,9122,5565,4722,40,4621,8150,8207,5424,8441,8590,7358],()=>t(4598)),_N_E=e.O()}]);

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.