1import{d as O,o as r,k as c,F as U,l as K,m as p,t as f,n as R,e as u,p as fe,f as a,q as ye,s as Y,v as T,u as he,a as ke,x as be,y as Ce,z as $e,A as Se,S as l,c as E,b as $,B as we,h as B,P as Ae,C as Me,D as H,E as Ne,G as Ee,H as Re,I as Pe,i as n,j as _,J as Fe}from"./CJ2ECs1y.js";import{_ as xe}from"./B-8-YdGj.js";import{_ as Ve}from"./CFlzu7Kv.js";import{_ as Ge}from"./BHSzqmd8.js";import{u as Ie}from"./BA6cBib6.js";import"./DeoFBUQw.js";import"./CP4pYQNi.js";const qe={class:"skeleton-grid"},De={class:"skeleton-card__content"},Le={class:"skeleton-card__name"},Qe={class:"skeleton-card__meta"},Be={class:"skeleton-card__image"},He=O({__name:"product-card-skeleton",setup(S){const m=y=>({id:y,name:Math.random().toString(36).substring(2,15).toUpperCase(),price:"â¬"+(Math.floor(Math.random()*1e3)+10),partner:{name:Math.random().toString(36).substring(2,10).toUpperCase(),id:Math.random().toString(36).substring(2,10)},slug:"#",is_skeleton:!0}),{skeletons:s}=ye(6,m);return(y,h)=>{const w=fe;return r(),c("div",qe,[(r(!0),c(U,null,K(a(s),o=>(r(),c("div",{key:o.id,class:"skeleton-card"},[p("div",De,[p("div",Le,f(o.name),1),p("div",Qe,[R(f(o.price)+" ",1),h[0]||(h[0]=p("span",{class:"skeleton-card__dot"},null,-1)),R(" "+f(o.partner.name),1)])]),p("div",Be,[u(w,{icon:"picture",class:"text-grey-300",size:32})])]))),128))])}}}),Oe=Object.assign(Y(He,[["__scopeId","data-v-69a2e30f"]]),{__name:"ProductCardSkeleton"});function Ue(){return T("public/webshop/categories",{params:{has_products:!0}})}function Ke({hasProducts:S,resource:m}={hasProducts:!0,resource:"slim"}){return T("public/partners",{params:{has_products:S,resource:m}})}const Ye={key:1,class:"product-grid"},Te={key:0,class:"product-grid__load-more"},je={key:2},ze={key:3,class:"typo-body text-grey-600"},Je=O({__name:"single-discovery-products",emits:["update-tabs"],setup(S,{emit:m}){const{t:s}=he(),y=ke(),h=m,w=be(),{quickViewProduct:o,openQuickView:j,closeQuickView:z,onQuickViewAdded:J,addToCart:P,confirmConflict:W,cancelConflict:X,showConflictModal:F}=Ce();function x(e){return(e.variants_count??0)>1}async function Z(e){if(x(e)){j(e);return}if(!e.default_variant_id){w.push({name:H(e.slug)});return}await P(e.default_variant_id,1,e.partner.legacy_id)&&(Re({event:"add_to_cart",metadata:{type:"product",products:[{name:e.name,product_id:e.id,price:e.price,quantity:1}]},posthogEvent:{name:"Product added to cart",properties:{url:window.location.href}}}),Pe({text:s("product_page.added_x_to_cart",{name:e.name}),duration:3e3,link:{label:s("cart.go_to_cart"),to:{name:"cart"}}}))}const V=_([]),G=n(()=>V.value?.data?.data.map(e=>({label:e.name,value:e.id,children:e.subcategories.map(t=>({label:t.name,value:t.id}))}))||[]),ee=n(()=>G.value.map(e=>({label:e.label,value:e.value,children:e.children.map(t=>({label:t.label,value:t.value}))}))),te=n(()=>{const e=d.value.category_id;return Array.isArray(e)?e[0]??null:e||null});function ae(e){C({category_id:e?[e]:[]},!0)}const I=_([]),re=n(()=>I.value?.data?.data.map(e=>({label:e.name,value:e.id}))||[]),q=n(()=>({category_id:G.value,partner_id:re.value}));async function oe(){V.value=await Ue(),I.value=await Ke()}oe();const d=n(()=>ce()),ne=n(()=>(d.value.category_id?.length??0)+d.value.partner_id.length);function se({key:e,value:t}){ue(e,t)}function D(){C({category_id:[],partner_id:[]},!0)}const k=_(20),ie=n(()=>v.value?.data?.meta?v.value?.data?.meta?.total_entities.products>k.value:!1),b=_(!1);async function le(){b.value||(b.value=!0,k.value+=20,await Q(!0),b.value=!1)}const{getFiltersFromQuery:ce,setFiltersToQuery:C,getURLSearchParams:de,removeFromQuery:ue}=Ie([{key:"category_id",multiple:!0},{key:"partner_id",multiple:!0},{key:"search"},{key:"order"},{key:"order_by"}],Q),v=_(null),L=n(()=>v.value?.data?.data||[]),A=_(!0);async function Q(e){e||(A.value=!0,k.value=20);const t=de();t.append("per_page",k.value.toString()),v.value=await Fe(t),A.value=!1,h("update-tabs",v.value?.data?.meta)}const M=[{value:"",label:s("search.sorting.alphabetical"),query:{order_by:void 0,order:void 0}},{value:"price-asc",label:s("search.sorting.price_low_to_high"),query:{order_by:"price",order:"asc"}},{value:"price-desc",label:s("search.sorting.price_high_to_low"),query:{order_by:"price",order:"desc"}}],_e=n(()=>M.find(e=>e.query.order_by===d.value.order_by&&e.query.order===d.value.order)?.value);function pe(e){const t=M.find(N=>N.value===e);t&&C({order:t.query.order,order_by:t.query.order_by},!0)}
1const g=$e().origin,me={title:s("search.discover_products_title"),description:s("search.discover_products_description"),canonical_url:`${g}${y.path}`,locales:{da:`/${l.DENMARK_DANISH}/udforsk/produkter`,en:`/${l.DENMARK_ENGLISH}/discover/products`,de:`/${l.GERMANY_GERMAN}/entdecken/produkte`,de_en:`/${l.GERMANY_ENGLISH}/discover/products`},locales_absolute:{da:`${g}/${l.DENMARK_DANISH}/udforsk/produkter`,en:`${g}/${l.DENMARK_ENGLISH}/discover/products`,de:`${g}/${l.GERMANY_GERMAN}/entdecken/produkte`,de_en:`${g}/${l.GERMANY_ENGLISH}/discover/products`}};return Se(me),(e,t)=>{const N=Me,ve=Ne,ge=Oe;return r(),E(Ve,{"enabled-filters-count":ne.value,onClearFilters:D},{filters:$(()=>[u(Ee,{categories:ee.value,selected:te.value,class:"mb-6",onSelect:ae},null,8,["categories","selected"]),u(Ge,{"model-value":d.value,options:q.value,"onUpdate:modelValue":t[0]||(t[0]=i=>a(C)(i,!0))},null,8,["model-value","options"])]),header:$(()=>[u(xe,{filters:{partner_id:d.value.partner_id},"filter-options":{partner_id:q.value.partner_id},sorting:_e.value,"sorting-options":M,"onUpdate:sorting":pe,onClearFilter:se,onClearAllFilters:D},null,8,["filters","filter-options","sorting"])]),content:$(()=>[p("div",null,[a(F)?(r(),E(we,{key:0,value:a(F),onConfirm:a(W),onCancel:a(X)},null,8,["value","onConfirm","onCancel"])):B("",!0),u(Ae,{open:!!a(o),"product-id":a(o)?.id??"","partner-id":a(o)?.partner?.legacy_id??"","partner-name":a(o)?.partner?.name??"","partner-logo":a(o)?.partner?.images?.logo??void 0,"add-to-cart":a(P),onClose:a(z),onAdded:a(J)},null,8,["open","product-id","partner-id","partner-name","partner-logo","add-to-cart","onClose","onAdded"]),L.value?.length?(r(),c("div",Ye,[(r(!0),c(U,null,K(L.value||[],i=>(r(),E(N,{key:i.slug,product:i,to:{name:a(H)(i.slug)},"vendor-name":i.partner.name,"show-from-price":x(i),onAdd:()=>Z(i)},null,8,["product","to","vendor-name","show-from-price","onAdd"]))),128)),ie.value?(r(),c("div",Te,[u(ve,{type:"link",disabled:a(b),onClick:le},{default:$(()=>[R(f(e.$t("search.load_more")),1)]),_:1},8,["disabled"])])):B("",!0)])):a(A)?(r(),c("div",je,[u(ge)])):(r(),c("div",ze,f(e.$t("search.no_products_match_your_filters")),1))])]),_:1},8,["enabled-filters-count"])}}}),ot=Y(Je,[["__scopeId","data-v-b16e91c6"]]);export{ot as default}; 2//# sourceMappingURL=DKRLCTEP.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.