1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4196],{60736:(t,e,n)=>{n.r(e),n.d(e,{default:()=>o});var i=n(6029);n(55729);var l=n(90798),r=n(94638),a=n(34696);function o(t){let{products:e}=t;return(0,i.jsx)(l.A,{display:"grid",gap:r.STORE_GRID_GAP,gridTemplateColumns:r.STORE_GRID_COLUMNS,alignItems:"stretch",children:e.map(t=>(0,i.jsx)(a.A,{product:t,sizes:a.y},t.id))})}},87410:(t,e,n)=>{n.d(e,{AP:()=>y,EJ:()=>c,Jm:()=>d,Xe:()=>f,Xw:()=>p,ZD:()=>u,cw:()=>h,dK:()=>g,hi:()=>o,pE:()=>s,ry:()=>m});var i=n(55729),l=n(59396),r=n(75466),a=n(16259);let o=1,u=99;function s(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u;return Number.isFinite(t)?Math.min(Math.max(e,o),Math.max(o,Math.round(t))):o}function c(t){let{minCents:e,maxCents:n}=t.priceRange;return e===n?(0,r.A)(e):`From ${(0,r.A)(e)}`}function d(t){let e=(t.categories??[]).map(t=>t.name.trim()).filter(Boolean);return e.length?e.join(", "):void 0}function p(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.storeCatalog??{};return{title:n.title||t.nameInNav||"Store",subtitle:n.subtitle??e.subtitle,body:n.body??t.seo?.description,backgroundColor:n.backgroundColor||void 0}}function h(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:160;if(!t)return;let n=(0,l.A)(t).replace(/\s+/g," ").trim();if(!n)return;if(n.length<=e)return n;let i=n.slice(0,e-1),r=i.lastIndexOf(" ");return`${(r>e/2?i.slice(0,r):i).trimEnd()}â¦`}function y(t,e){let n=(0,a.A)(),[l,r]=(0,i.useState)(o),[c,d]=(0,i.useState)(null),p=e?n.lines.find(t=>t.variantId===e.id)?.quantity??0:0,h=e&&null!==e.inventoryQuantity?Math.max(0,e.inventoryQuantity-p):u,y=(0,i.useCallback)(t=>r(s(t,h)),[h]);(0,i.useEffect)(()=>{r(t=>s(t,h))},[h]);let f=(0,i.useCallback)(()=>{e&&e.inStock&&!(h<=0)&&(n.add({variantId:e.id,productId:t.id,slug:t.slug,name:t.name,variantLabel:e.label,image:e.imageUrl??t.images[0]??null,unitPriceCents:e.priceCents},s(l,h)),d(e.id))},[n,t,e,l,h]);return{quantity:l,setQuantity:y,add:f,maxQuantity:h,alreadyInCart:p,justAdded:null!==c&&c===e?.id}}function f(t,e,n,i){return t&&t.inStock&&null!==t.inventoryQuantity&&!(e<n)?n<=0?`You already have all ${t.inventoryQuantity} in stock in your cart.`:i>0?`Only ${n} more available â you already have ${i} in your cart.`:`Only ${t.inventoryQuantity} in stock.`:null}function g(t,e){if(!e||e.inStock||!t.anyInStock)return null;let n=[t.optionNames.one,t.optionNames.two].filter(t=>null!==t).map(t=>t.toLowerCase()),i=e.label??"This option";return n.length?`${i} is sold out. Try another ${n.join(" or ")}.`:`${i} is sold out.`}function m(t,e,n){let i=[];if(t.requiresShipping&&n?.standardShippingEnabled&&i.push(null!==n.freeShippingThreshold&&n.freeShippingThreshold>0?`Ships to you â free shipping over ${(0,r.A)(n.freeShippingThreshold)}`:"Ships to you"),n?.localPickupEnabled){let t=n.pickupNotes?.trim().replace(/\s*\n\s*/g," \xb7 ");i.push(t?`Local pickup available \xb7 ${t}`:"Local pickup available")}if(e){let n=[];e.sku&&n.push(`SKU ${e.sku}`),t.trackInventory&&null!==e.inventoryQuantity&&e.inventoryQuantity>0&&n.push(`${e.inventoryQuantity} in stock`),n.length&&i.push(n.join(" \xb7 "))}return i}}}]);
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.