1import{_ as W,j as y,a as s,c as n,l as i,t as x,x as B,F as z,r as H,G as se,z as A,w as Z,o as ne,k as Q,Z as oe,A as ie,B as re,e as g,b as j,s as R,m as E,v as $,I as de,q as ce}from"./entry-9f6422c3.mjs";import{_ as ue}from"./LazyloadImg-8179c7c4.mjs";import{u as fe}from"./index-88c48717.mjs";import{u as me}from"./index-bea6d12b.mjs";import{S as _e,a as ge}from"./swiper-slide-0e158e2e.mjs";const ve={__name:"SelectDropdown",props:{modelValue:{type:String,default:""},options:{type:Array}},emits:["update:modelValue"],setup(V,{expose:d,emit:l}){d();const{options:a,modelValue:c}=V,u=y(!1),r=y(c);function m(){u.value=!u.value}function k(e){r.value=e,l("update:modelValue",e)}const w={visible:u,emit:l,value:r,toggle:m,select:k};return Object.defineProperty(w,"__isScriptSetup",{enumerable:!1,value:!0}),w}},he=["data-value","data-list"],be={class:"label"},ye=["onClick"];function xe(V,d,l,a,c,u){return s(),n("div",{class:B(["aselect text-xs tracking-wider uppercase",{"z-10":a.visible}]),"data-value":a.value,"data-list":l.options},[i("div",{class:"selector w-ful uppercase",onClick:d[0]||(d[0]=r=>a.toggle())},[i("div",be,[i("span",null,x(a.value),1)]),i("div",{class:B(["arrow",{expanded:a.visible}])},null,2),i("div",{class:B({hidden:!a.visible,visible:a.visible})},[i("ul",null,[(s(!0),n(z,null,H(l.options,r=>(s(),n("li",{class:B({current:r===a.value}),key:r,onClick:m=>a.select(r)},x(r),11,ye))),128))])],2)])],10,he)}var ke=W(ve,[["render",xe],["__scopeId","data-v-8072c672"]]);const we={__name:"GridProducts",props:{blok:Object},setup(V,{expose:d}){d();const{blok:l}=V,{money:a}=fe(),c=se({fullProducts:[]}),u=y("Featured"),r=A(()=>{switch(u.value){case"Price High to Low":case"Price Low to High":return"PRICE";case"Best Selling":return"BEST_SELLING";case"By Brand":return"TITLE";default:return!1}}),m=A(()=>{switch(u.value){case"Price High to Low":return!0;case"Price Low to High":return!1;case"Best Selling":return!1;default:return!1}}),k="ALL BRANDS",w=A(()=>u.value=="Featured"?"filter_featured":""),e=A(()=>b.value&&b.value!==k?c.fullProducts.filter(t=>t.vendor===b.value):c.fullProducts);let v=[],p=1,I=y(!1);const{sortAndPaginationProductsByCollection:G}=me();console.log("blokky",l);let N=[],q=[];const h=y([]),b=y("");async function M(t=N){var D;const C=await Q({query:` 2 query getCollections($ids: [ID!]!) { 3 nodes(ids: $ids) { 4 ... on Collection { 5 id 6 handle 7 title 8 products(first: 250) { 9 edges { 10 node { 11 id 12 title 13 handle 14 vendor 15 } 16 } 17 } 18 } 19 } 20 }`,variables:{ids:t}});console.log("collectionResponseData",C),(D=C.data)==null||D.nodes.forEach(F=>
20{F.products.edges.forEach(f=>{h.value.push(f.node.vendor)})}),h.value=[...new Set(h.value)],h.value=[k,...h.value.sort((F,f)=>F.localeCompare(f))],console.log("allVendors",h.value),b.value=h.value[0]}const U=` 21 query getProducts($ids: [ID!]!) { 22 nodes(ids: $ids) { 23 ... on Product { 24 id 25 title 26 handle 27 vendor 28 metafields(identifiers: [ 29 {namespace: "custom", key: "show_sold_out_message"}, 30 ]) 31 { 32 type 33 namespace 34 key 35 value 36 } 37 variants(first: 50) { 38 edges { 39 node { 40 currentlyNotInStock 41 availableForSale 42 id 43 quantityAvailable 44 } 45 } 46 } 47 priceRange { 48 minVariantPrice { 49 amount 50 currencyCode 51 } 52 } 53 featuredImage { 54 src 55 id 56 height 57 altText 58 width 59 } 60 } 61 } 62 }`,J={ids:q};let S=[];const L=y(0);async function X(t=!1,o=!1){console.log("getCollections"),t?p=p+1:(c.fullProducts=[...S],console.log("Not load more state.fullProducts",c.fullProducts,"individualProducts",S));let _=!1,C=0;for(const D of N){console.log("collectionId",D);const F=l.per_page?l.per_page:50,f=await G(D,b.value,r.value,m.value,t?F:F*p,t?v[C]:null,w);if(f){console.log("productsResponseData",f),v[C]=f.pageInfo.endCursor,f.pageInfo.hasNextPage&&(_=!0),console.log("showingCounts.value",L.value,"loadMore",t,"productsResponseData.edges.length",f.edges.length),(o||t)&&(L.value+=f.edges.length),f.edges.forEac
62h(K=>{O(K.node),c.fullProducts.push(K.node)});const le=c.fullProducts.map(JSON.stringify);c.fullProducts=Array.from(new Set(le)).map(JSON.parse)}C++}console.log("hasNext",_),I.value=_}async function O(t){var o;t.isSoldOutMessage=!1,(o=t==null?void 0:t.metafields)==null||o.forEach(_=>{_&&_.key=="show_sold_out_message"&&(t.isSoldOutMessage=_.value=="true"||_.value==!0)})}Z(u,async(t,o)=>{await X(!1)}),Z(b,async(t,o)=>{await X(!1),console.log(b)}),ne(async()=>{l.products.items.forEach(o=>{o.type=="product"?q.push(o.id):(N.push(o.id),v.push(null))}),console.log("collectionIds",N);const t=await Q({query:U,variables:J});console.log(t),t.data.nodes.length>0&&t.data.nodes.forEach(o=>{o&&(O(o),S.push(o))}),L.value=S==null?void 0:S.length,await M(),await X(!1,!0)});const{addToCart:T}=oe();function ee(t){return!t.availableForSale}const P=y(!1);async function ae(t){P.value!==!0&&(!t.availableForSale||(P.value=!0,await T([{quantity:1,merchandiseId:t.id}]),P.value=!1))}async function te(t){P.value!==!0&&(P.value=!0,await T([{quantity:1,merchandiseId:t}]),P.value=!1)}const Y={money:a,state:c,FilterSelect:u,sortKey:r,reverse:m,defaultFilterVender:k,tags:w,sortedFullProducts:e,pageCursor:v,pages:p,hasNextPage:I,sortAndPaginationProductsByCollection:G,collectionIds:N,ids:q,allVendors:h,FilterVendor:b,getAllProductsForVendor:M,query:U,variables:J,individualProducts:S,showingCounts:L,getCollections:X,productMetafields:O,addToCart:T,is_sold_out:ee,addToCartIsLocked:P,handleAddToCartForm:ae,is_solid_out:te,Swiper:_e,SwiperSlide:ge};return Object.defineProperty(Y,"__isScriptSetup",{enumerable:!1,value:!0}),Y}},pe=["data-id","data-component","id"],Se={class:"flex flex-wrap items-center gap-4 px-4 md:px-8 leading-normal tracking-[2px] mb-7 md-down:mb-0"},Pe={key:0,class:"futura-std-medium heading-xs uppercase"},Ce={key:3,class:"flex-1 text-right text-extra-small"},Fe={key:0,class:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 sm:mt-10 gap-y-10 md:gap-x-6 gap-x-4 grid-layout"},Ve={class:"h-full flex flex-col"},Ie={class:"relative w-full mx-auto four-up__item text-center bg-mp-off-white flex flex-col md-down:pb-4 pb-5 mb-9 flex-1"},Ne={class:"text-xxs mb-3 md-down:mb-2 slug-xs"},De={class:"flex flex-col justify-between flex-1 px-3"},Le={key:0,class:"md-down:text-sm md-down:leading-[1.25rem] uppercase max-h- max-h-[40px] md:max-h-[47px] overflow-hidden"},Xe={class:"text-xs"},Be={class:"item-action mt-auto"},Ae={key:0},Re=$(" Shop Now "),Ee={key:1},qe={key:0,class:"button--disabled w-full uppercase"},Oe={key:0},Te={key:1},je=["onClick"],ze={key:1,class:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 sm:mt-10 gap-y-10 md:gap-x-6 gap-x-4 grid-layout"},He={key:2,class:"pagination flex flex-col items-center justify-center mt-4"},Ge={class:"my-4 text-xs uppercase"};function Me(V,d,l,a,c,u){const r=ke,m=ce,k=ue,w=ie("editable");return l.blok?re((s(),n("section",{key:0,"data-id":l.blok._uid,"data-component":l.blok.component,id:l.blok._uid,class:"pt-10 four-up featured-products tracking-[2px] futura-std-medium pb-[6.25rem] md-down:pb-16"},[i("header",Se,[l.blok.title?(s(),n("h2",Pe,x(l.blok.title),1)):g("",!0),l.blok.hide_filter?g("",!0):(s(),j(r,{key:1,class:"w-full sm:w-[200px]",modelValue:a.FilterSelect,"onUpdate:modelValue":d[0]||(d[0]=e=>a.FilterSelect=e),options:["Featured","Best Selling","Price High to Low","Price Low to High"]},null,8,["modelValue"])),!l.blok.hide_filter&&a.FilterVendor?(s(),j(r,{
62key:2,class:"w-full sm:w-[200px]",modelValue:a.FilterVendor,"onUpdate:modelValue":d[1]||(d[1]=e=>a.FilterVendor=e),options:a.allVendors},null,8,["modelValue","options"])):g("",!0),l.blok.see_all_link?(s(),n("div",Ce,[R(m,{to:l.blok.see_all_link.url?l.blok.see_all_link.url:l.blok.see_all_link.cached_url?"/"+l.blok.see_all_link.cached_url:"/",class:"underline"},{default:E(()=>[$(x(l.blok.see_all_link_text),1)]),_:1},8,["to"])])):g("",!0)]),a.sortedFullProducts.length>0?(s(),n("div",Fe,[(s(!0),n(z,null,H(a.sortedFullProducts,e=>(s(),n("div",{class:"flex-1 relative",key:e==null?void 0:e.id},[i("div",Ve,[i("div",Ie,[R(m,{to:`/product/${e==null?void 0:e.handle}`,class:"block mb-4 md-down:mb-2.5"},{default:E(()=>{var v,p,I;return[(v=e==null?void 0:e.featuredImage)!=null&&v.src?(s(),j(k,{widths:[400,350,300,500],breakpoints:[1200,1024,641,640],key:(p=e==null?void 0:e.featuredImage)==null?void 0:p.src,src:(I=e==null?void 0:e.featuredImage)==null?void 0:I.src,figureClasses:"ratio-container block max-w-full",pictureClasses:"w-full h-full block",imgClasses:"block object-cover",absolute:!0,forceRatio:{force:!0,aspectRatio:.8}},null,8,["src","forceRatio"])):g("",!0)]}),_:2},1032,["to"]),i("p",Ne,x(e==null?void 0:e.vendor),1),i("div",De,[R(m,{to:`/product/${e==null?void 0:e.handle}`,class:"block mb-2 mx-auto max-w-xs xl:max-w-[15rem]"},{default:E(()=>[e!=null&&e.title?(s(),n("div",Le,x(e==null?void 0:e.title),1)):g("",!0)]),_:2},1032,["to"]),i("p",Xe,x(a.money(e==null?void 0:e.priceRange.minVariantPrice)),1)])]),i("div",Be,[(e==null?void 0:e.variants.edges.length)>1?(s(),n("div",Ae,[R(m,{to:`/product/${e==null?void 0:e.handle}`,class:"button--primary w-full uppercase block"},{default:E(()=>[Re]),_:2},1032,["to"])])):(s(),n("div",Ee,[a.is_sold_out(e==null?void 0:e.variants.edges[0].node)?(s(),n("button",qe,[e!=null&&e.isSoldOutMessage?(s(),n("span",Oe," Coming Soon ")):(s(),n("span",Te," Sold Out "))])):(s(),n("button",{key:1,onClick:de(v=>a.handleAddToCartForm(e==null?void 0:e.variants.edges[0].node),["prevent"]),class:"button--primary w-full uppercase"}," Add to Cart ",8,je))]))])])]))),128))])):(s(),n("div",ze,[(s(),n(z,null,H(8,e=>i("div",{key:e,class:"plp-item-placeholder"})),64))])),!l.blok.hide_filter&&a.sortedFullProducts.length>0?(s(),n("div",He,[i("p",Ge,"Showing "+x(a.sortedFullProducts.length)+" products ",1),a.hasNextPage?(s(),n("button",{key:0,class:"button--primary uppercase block w-[200px]",onClick:d[2]||(d[2]=e=>a.getCollections(!0))}," Load More ")):g("",!0)])):g("",!0)],8,pe)),[[w,l.blok]]):g("",!0)}var Qe=W(we,[["render",Me]]);export{Qe 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.