1import{S as e}from"./BuTL8m_w.js";import{g as t,vn as n}from"./Ib1jYPSS.js";import{r}from"./DcRNSiJ4.js";import{t as i}from"./cxze5nri.js";import{k as a}from"./CLTmCMlN.js";var o=r(`visual-search`,()=>{let{$api:r}=e(),o=i(),s=n(),c=n(!1),l=n(new Map),u=n(),d=n(),f=n(!1),p=t(()=>{if(u.value!==void 0)return l.value.get(u.value)}),m=t(()=>{if(!(u.value===void 0||!s.value))return s.value[u.value]}),h=t(()=>o.visualSearch?.image),g=()=>{b(),S()},_=async e=>{if(!s.value||!s.value[e])return;if(l.value.has(e)){u.value=e;return}let{offers:t}=s.value[e];await y(t,e)},v=async e=>{if(!m.value?.offers)return;let t=btoa(JSON.stringify(e)),{bb_tags:n,prob:r,sku:i,...a}=m.value.offers;if(!a)return;let o={...a,crop:t,force_cats:`general`},s=l.value.size;await y(o,s)},y=async(e,t)=>{let n=new URLSearchParams(e),i=await r(`/v1/visual-search/offers?${n.toString()}`).catch(()=>void 0);return i&&Array.isArray(i)&&(l.value.set(t,i),u.value=t),i},b=()=>{s.value=void 0,l.value.clear(),u.value=void 0,d.value&&d.value.startsWith(`blob:`)&&URL.revokeObjectURL(d.value),d.value=void 0},x=async e=>{if(f.value)return;f.value=!0;let t;if(s.value=[],e instanceof File)t=r(`/v1/visual-search/bounds`,{method:`POST`,body:e}),d.value=URL.createObjectURL(e);else{c.value||=!0;let n=e.img.replace(`{size}`,`400`),i=new URLSearchParams({sku:e.sku,img:n});t=r(`/v1/visual-search/bounds?${i.toString()}`),d.value=n}let n=await t.catch(()=>void 0);if(n)return u.value=n.findIndex(e=>e.active),n[u.value]?.articles&&(l.value.clear(),l.value.set(u.value,n[u.value].articles)),s.value=n,f.value=!1,n},S=()=>{c.value=!1};return{bounds:s,activeBounds:u,currentBounds:m,articles:p,visible:c,previewImage:d,searching:f,image:h,clear:g,fetchBounds:_,fetchCoordinates:v,hide:S,reset:b,show:e=>{c.value=!0,e&&x(e)},search:x,upload:async(e,t,n)=>{let r=await x(e);if(r?.length){let e;m.value?e=m.value:s.value&&s.value[0]&&(e=s.value[0]);let t=e?e.label:``;a(`visual search`,n,e?.articles?.length,t)}return r}}});export{o as t}; 2//# sourceMappingURL=B5UwkLOd2.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.