import{S as A}from"./f8S86ZmY.js";const d=(e,t)=>e.filter(r=>r[0]===t).map(r=>r.slice(1)),a=(e,t,r="")=>e.find(n=>n[0]===t)?.[1]||r,P=e=>{const t=e.find(n=>n[0]==="price");if(!t)return{amount:0,currency:"SATS",display:"0 SATS"};const r=Number(t[1]||0),o=(t[2]||"SATS").toUpperCase();return{amount:Number.isFinite(r)?r:0,currency:o,display:`${t[1]||"0"} ${o}`}},T=e=>d(e,"image").map(t=>({url:t[0],dimensions:t[1]||"",order:Number(t[2]||999)})).filter(t=>!!t.url).sort((t,r)=>t.order-r.order),f=e=>{const t=e.tags||[],r=a(t,"d");if(!r)return null;const o=a(t,"title","Untitled Product"),n=a(t,"summary",""),c=a(t,"visibility","on-sale");if(c==="hidden")return null;const i=t.find(s=>s[0]==="type"),u=i?.[1]||"simple",p=i?.[2]||"digital",l=a(t,"stock",""),y=l?Number(l):null,g=d(t,"spec").map(s=>({key:s[0]||"",value:s[1]||""})).filter(s=>s.key&&s.value),k=d(t,"shipping_option").map(s=>({ref:s[0],extraCost:s[1]||null})).filter(s=>s.ref),S=d(t,"t").map(s=>s[0]).filter(Boolean),m=T(t),b=m[0]?.url||"",h=P(t);return{id:e.id,d:r,reference:`30402:${e.pubkey}:${r}`,pubkey:e.pubkey,title:o,summary:n,description:e.content||"",visibility:c,productType:u,format:p,stock:y,specs:g,shippingOptions:k,categories:S,images:m,image:b,price:h,createdAt:e.created_at}},w=()=>{const e=new A;return{fetchProducts:async({merchantPubkey:o,relays:n})=>(await e.querySync(n,{kinds:[30402],authors:[o],limit:300})).map(f).filter(Boolean).sort((i,u)=>u.createdAt-i.createdAt),fetchProductByD:async({merchantPubkey:o,dTag:n,relays:c})=>(await e.querySync(c,{kinds:[30402],authors:[o],"#d":[n],limit:10})).map(f).filter(Boolean).sort((p,l)=>l.createdAt-p.createdAt)[0]||null}};export{w as u};
