@faststore/core 3.88.1 → 3.88.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +17 -17
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/prerender-manifest.js +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/948.js +1 -1
- package/.next/server/chunks/9563.js +2 -2
- package/.next/server/chunks/9630.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/api/graphql.js +2 -2
- package/.next/server/pages/en-US/404.html +1 -1
- package/.next/server/pages/en-US/500.html +1 -1
- package/.next/server/pages/en-US/checkout.html +1 -1
- package/.next/server/pages/en-US/login.html +1 -1
- package/.next/server/pages/en-US/s.html +1 -1
- package/.next/server/pages/en-US.html +1 -1
- package/.next/server/pages/pvt/account/orders/[id].js +1 -1
- package/.next/server/pages/pvt/account/orders.js +1 -1
- package/.next/server/pages/pvt/account/profile.js +1 -1
- package/.next/server/pages/pvt/account/security.js +1 -1
- package/.next/server/pages/pvt/account/user-details.js +1 -1
- package/.next/server/pages-manifest.json +1 -1
- package/.next/static/{ek0C2Ms_d9bobks7pNNTT → Yl9s6YO3hFR2wqba4nuSG}/_buildManifest.js +1 -1
- package/.next/static/chunks/9173-228abc549c008914.js +1 -0
- package/.next/trace +137 -137
- package/.turbo/turbo-build.log +7 -7
- package/.turbo/turbo-test.log +5 -5
- package/CHANGELOG.md +10 -0
- package/package.json +3 -3
- package/src/components/account/MyAccountDrawer/OrganizationDrawer/OrganizationDrawer.tsx +1 -1
- package/src/components/account/MyAccountDrawer/ProfileSummary/ProfileSummary.tsx +1 -1
- package/src/pages/pvt/account/orders/[id].tsx +2 -1
- package/src/pages/pvt/account/orders/index.tsx +3 -1
- package/src/pages/pvt/account/profile.tsx +3 -1
- package/src/pages/pvt/account/security.tsx +2 -1
- package/src/pages/pvt/account/user-details.tsx +3 -1
- package/src/utils/utilities.ts +8 -4
- package/.next/static/chunks/9173-2dc082a086a959c3.js +0 -1
- /package/.next/static/{ek0C2Ms_d9bobks7pNNTT → Yl9s6YO3hFR2wqba4nuSG}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";exports.id=9563,exports.ids=[9563],exports.modules={48116:(e,t,a)=>{a.d(t,{Z:()=>r});let r={}},29313:(e,t,a)=>{a.d(t,{Z:()=>r});let r={}},99563:(e,t,a)=>{a.a(e,async(e,r)=>{try{a.d(t,{h:()=>execute});var i=a(99664),n=a(37886),o=a(84656),s=a(36093),l=a(77397),c=a(45774),d=a(36550),u=a(57343),p=a(71017),m=a.n(p),g=a(57565),f=a(48116),h=a(29313),y=a(17486),v=e([i,n,o,s,l,c,d]);[i,n,o,s,l,c,d]=v.then?(await v)():v;let S=new Map(Object.entries(g)),I=(0,l.E9)(y.e),customFormatError=e=>e instanceof u.GraphQLError&&(0,l.T9)(e.originalError)?e:(console.error(e),new u.GraphQLError(`Sorry, something went wrong. ${e}`)),getEnvelop=async()=>(0,i.envelop)({plugins:[(0,i.useEngine)(u),(0,i.useSchema)(function(){let e=(0,c.loadFilesSync)(m().join(process.cwd(),"@generated"),{extensions:["graphql"]}),t=(0,l.yd)(y.e);return(0,d.makeExecutableSchema)({typeDefs:e,resolvers:[t,h.Z,f.Z]})}()),(0,i.useExtendContext)(I),(0,i.useMaskedErrors)({maskError:customFormatError}),(0,n.useGraphQlJit)(),(0,s.useValidationCache)(),(0,o.useParserCache)()]}),C=getEnvelop(),execute=async(e,t={headers:{}})=>{let{operation:a,variables:r,query:i}=e,{operationHash:n,operationName:o}=a.__meta__,s=i??S.get(n);if(null==s)throw new l.oY(`No query found for operationName ${o} and operationHash ${n}.`);let c=await C,{parse:d,contextFactory:u,execute:p,schema:m}=c(t),g=await u(t),{data:f,errors:h}=await p({schema:m,document:d(s),variableValues:r,contextValue:g,operationName:o});return{data:f,errors:h,extensions:{cookies:g.storage.cookies,cacheControl:g.cacheControl}}};r()}catch(e){r(e)}})},17486:(e,t,a)=>{a.d(t,{e:()=>n});var r=a(43412),i=a.n(r);let n={platform:i().platform,account:i().api.storeId,environment:i().api.environment,subDomainPrefix:i().api.subDomainPrefix??["www"],hideUnavailableItems:i().api.hideUnavailableItems,showSponsored:i().api.showSponsored,simulationBehavior:i().api.simulationBehavior,incrementAddress:i().api.incrementAddress,channel:i().session.channel,locale:i().session.locale,flags:{enableOrderFormSync:!0,enableUnavailableItemsOnCart:i().api?.enableUnavailableItemsOnCart??!1}}},48608:(e,t,a)=>{a.a(e,async(e,r)=>{try{a.d(t,{Z:()=>o});var i=a(38722),n=e([i]);i=(n.then?(await n)():n)[0];let min=(e,t)=>"number"==typeof e&&"number"==typeof t?e>t?t:e:"number"==typeof e?e:t,minScope=(e,t)=>"string"==typeof e&&"string"==typeof t?"public"===e&&"public"===t?"public":"private":e||t,o={typeDefs:"directive @cacheControl(sMaxAge: Int, staleWhileRevalidate: Int, scope: String) on FIELD_DEFINITION",transformer:e=>(0,i.mapSchema)(e,{[i.MapperKind.OBJECT_FIELD]:t=>{let a=i.getDirective(e,t,"cacheControl")?.[0];if(a){let{sMaxAge:e,staleWhileRevalidate:r,scope:i}=a,n=t.resolve;t.resolve=(t,a,o,s)=>(o.cacheControl={sMaxAge:min(o.cacheControl?.sMaxAge,e),staleWhileRevalidate:min(o.cacheControl?.staleWhileRevalidate,r),scope:minScope(o.cacheControl?.scope,i)},n?.(t,a,o,s))}return t}})};r()}catch(e){r(e)}})},77397:(e,t,a)=>{a.a(e,async(e,r)=>{try{a.d(t,{E9:()=>getContextFactory,T9:()=>s.T9,XD:()=>s.XD,oY:()=>s.oY,yd:()=>getResolvers});var i=a(61287),n=a(33999),o=a(48608),s=a(90782),l=e([n,o]);[n,o]=l.then?(await l)():l;let c={vtex:{getResolvers:i.y,getContextFactory:i.E}};o.Z;let getResolvers=e=>c[e.platform].getResolvers(e),getContextFactory=e=>c[e.platform].getContextFactory(e);r()}catch(e){r(e)}})},90782:(e,t,a)=>{a.d(t,{T9:()=>isFastStoreError,XD:()=>isNotFoundError,dR:()=>NotFoundError,lY:()=>ForbiddenError,oY:()=>BadRequestError});let FastStoreError=class FastStoreError extends Error{extensions;constructor(e,t){super(t),this.extensions=e,this.name="FastStoreError"}};let BadRequestError=class BadRequestError extends FastStoreError{constructor(e){super({status:400,type:"BadRequestError"},e)}};let NotFoundError=class NotFoundError extends FastStoreError{constructor(e){super({status:404,type:"NotFoundError"},e)}};let ForbiddenError=class ForbiddenError extends FastStoreError{constructor(e){super({status:403,type:"ForbiddenError"},e)}};let isFastStoreError=e=>e?.name==="FastStoreError",isNotFoundError=e=>e?.extensions?.type==="NotFoundError"},61287:(e,t,a)=>{a.d(t,{E:()=>getContextFactory,y:()=>getResolvers});var r=a(84802),i=a(47881),n=a.n(i);let o=JSON.parse('{"u2":"@faststore/api","i8":"3.87.0"}'),s=`${o.u2}@${o.i8}`,fetchAPI=async(e,t,a)=>{let r=await n()(e,{...t,headers:{...t?.headers??{},"User-Agent":s}});if(r.ok)return a?.storeCookies&&a.storeCookies(r.headers),204!==r.status?r.json():void 0;console.error(e,t,r);let i=await r.text();throw Error(i)},l=/^([^=]+)=([^;]*)/,updatesContextStorageCookies=(e,t)=>{let a=t.match(l);if(a){let r=a[1],i=a[2];e.storage.cookies.set(r,{value:i,setCookie:t})}},setCookie=(e,t)=>{t.getSetCookie().forEach(t=>updatesContextStorageCookies(e,t))},getStoreCookie=e=>t=>setCookie(e,t),getUpdatedCookie=e=>{if(!e.headers?.cookie)return null;let t=Array.from(e.storage.cookies.entries());return 0===t.length?e.headers.cookie:t.reduce((e,[t,{value:a}])=>updatesCookieValueByKey(e,t,a),e.headers.cookie)},getWithCookie=e=>function(t){let a=getUpdatedCookie(e);return a?{...t,cookie:a}:t},getAuthCookie=(e,t)=>{let a=(0,r.parse)(e),i=a[`VtexIdclientAutCookie_${t}`];return i||""},getWithAutCookie=e=>{let t=getWithCookie(e);return function(a,r){let i=t({"content-type":"application/json","X-FORWARDED-HOST":a}),n=getAuthCookie(e?.headers?.cookie??"",r);return i.VtexIdclientAutCookie=n,i}},updatesCookieValueByKey=(e,t,a)=>{let r=RegExp(`(${t})=([^;]*)`),i=e.match(r);return i?e.replace(i[0],`${i[1]}=${a}`):`${e};${t}=${a}`};function parseJwt(e){return e?JSON.parse(Buffer.from(e.split(".")[1],"base64").toString()):null}let c={method:"POST",headers:{"content-type":"application/json"}},VtexCommerce=({account:e,environment:t,incrementAddress:a,subDomainPrefix:i},n)=>{let o=`https://${e}.${t}.com.br`,s=getStoreCookie(n),l=getWithCookie(n),d=getWithAutCookie(n),u=new Headers(n.headers).get("x-forwarded-host")??n.headers?.host??"",p=i&&i.map(e=>e+".").find(e=>u.includes(e))||"",m=u.replace(p,"");return{catalog:{salesChannel:e=>fetchAPI(`${o}/api/catalog_system/pub/saleschannel/${e}`,void 0,{storeCookies:s}),brand:{list:()=>fetchAPI(`${o}/api/catalog_system/pub/brand/list`,void 0,{storeCookies:s})},category:{tree:(e=3)=>fetchAPI(`${o}/api/catalog_system/pub/category/tree/${e}`,void 0,{storeCookies:s})},portal:{pagetype:e=>fetchAPI(`${o}/api/catalog_system/pub/portal/pagetype/${e}`,void 0,{storeCookies:s})},products:{crossselling:({type:e,productId:t,groupByProduct:a=!0})=>{let r=new URLSearchParams({sc:n.storage.channel.salesChannel,groupByProduct:a.toString()});return fetchAPI(`${o}/api/catalog_system/pub/products/crossselling/${e}/${t}?${r}`,void 0,{storeCookies:s})}}},checkout:{simulation:(e,{salesChannel:t}=n.storage.channel)=>{let a=new URLSearchParams({sc:t}),r=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForms/simulation?${a.toString()}`,{...c,headers:r,body:JSON.stringify(e)},{storeCookies:s})},shippingData:({id:e,index:t,deliveryMode:r,selectedAddresses:i},n)=>{let d=n?{startDateUtc:r?.deliveryWindow?.startDate,endDateUtc:r?.deliveryWindow?.endDate}:null,u={logisticsInfo:Array.from({length:t},(e,t)=>({itemIndex:t,selectedDeliveryChannel:r?.deliveryChannel||null,selectedSla:r?.deliveryMethod||null,deliveryWindow:d})),selectedAddresses:i,clearAddressIfPostalCodeNotFound:a},p=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForm/${e}/attachments/shippingData`,{...c,headers:p,body:JSON.stringify(u)},{storeCookies:s})},marketingData:({id:e,marketingData:t})=>{let a=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForm/${e}/attachments/marketingData`,{headers:a,body:JSON.stringify(t),method:"POST"},{storeCookies:s})},orderForm:({id:e,refreshOutdatedData:t=!0,channel:a=n.storage.channel})=>{let{salesChannel:r}=a,i=new URLSearchParams({refreshOutdatedData:t.toString(),sc:r}),d=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForm/${e}?${i.toString()}`,{...c,headers:d},{storeCookies:s})},clearOrderFormMessages:({id:e})=>{let t=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForm/${e}/messages/clear`,{...c,headers:t,body:"{}"})},updateOrderFormItems:({id:e,orderItems:t,allowOutdatedData:a="paymentData",salesChannel:r=n.storage.channel.salesChannel,shouldSplitItem:i=!0})=>{let c=new URLSearchParams({allowOutdatedData:a,sc:r}),d=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForm/${e}/items?${c}`,{headers:d,body:JSON.stringify({orderItems:t,noSplitItem:!i}),method:"PATCH"},{storeCookies:s})},setCustomData:({id:e,appId:t,key:a,value:r})=>{let i=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orderForm/${e}/customData/${t}/${a}`,{headers:i,body:JSON.stringify({value:r}),method:"PUT"})},region:async({postalCode:e,geoCoordinates:t,country:a,salesChannel:r})=>{let i=new URLSearchParams({country:a,sc:r??""});e?i.append("postalCode",e):i.append("geoCoordinates",`${t?.longitude};${t?.latitude}`);let n=`${o}/api/checkout/pub/regions/?${i.toString()}`,c=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(n,{headers:c},{storeCookies:s})},address:async({postalCode:e,country:t})=>{let a=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/postal-code/${t}/${e}`,{headers:a},{storeCookies:s})},cancelOrder:({orderId:e,customerEmail:t,reason:a})=>{let r=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/checkout/pub/orders/${e}/user-cancel-request`,{method:"POST",headers:r,body:JSON.stringify({customerEmail:t,reason:a})},{})},pickupPoints:({geoCoordinates:e})=>{if(!e)throw Error("Missing required parameter for listing pickup points.");let t=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/logistics-shipping/pickuppoints/_search`,{method:"POST",headers:t,body:JSON.stringify({coordinate:e})},{storeCookies:s})}},session:e=>{let t=new URLSearchParams(e);t.set("items","profile.id,profile.email,profile.firstName,profile.lastName,shopper.firstName,shopper.lastName,store.channel,store.countryCode,store.cultureInfo,store.currencyCode,store.currencySymbol,authentication.customerId,authentication.storeUserId,authentication.storeUserEmail,authentication.unitId,authentication.unitName,checkout.regionId,public.postalCode");let a=l({"content-type":"application/json"}),i=r.parse(n?.headers?.cookie??"")?.vtex_session;return fetchAPI(`${o}/api/sessions?${t.toString()}`,{method:i?"PATCH":"POST",headers:a,body:"{}"},{storeCookies:s})},subscribeToNewsletter:e=>fetchAPI(`${o}/api/dataentities/NL/documents/`,{...c,body:JSON.stringify({...e,isNewsletterOptIn:!0}),method:"PATCH"},{storeCookies:s}),profile:{addresses:async t=>{let a=d(m,e);return fetchAPI(`${o}/api/profile-system/pvt/profiles/${t}/addresses`,{headers:a},{storeCookies:s})}},oms:{userOrder:({orderId:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/oms/user/orders/${t}`,{method:"GET",headers:a},{storeCookies:s})},listUserOrders:({page:e,status:t,dateInitial:a,dateFinal:r,text:i,clientEmail:n,perPage:c})=>{let d=new URLSearchParams;if(a){let e=new Date(a).setHours(0,0,0,0);a=new Date(e).toISOString()}if(r){let e=new Date(r).setHours(23,59,59,999);r=new Date(e).toISOString()}i&&d.append("text",i),t&&t.length>0&&d.append("status",t.filter(Boolean).join(",")),a&&r?d.append("creation_date",`creationDate:[${a} TO ${r}]`):a?d.append("creation_date",`creationDate:[${a} TO *]`):r&&d.append("creation_date",`creationDate:[* TO ${r}]`),n&&d.append("clientEmail",n),e&&d.append("page",e.toString()),c&&d.append("per_page",c.toString());let u=l({"content-type":"application/json","X-FORWARDED-HOST":m});return fetchAPI(`${o}/api/oms/user/orders?${d.toString()}`,{method:"GET",headers:u},{storeCookies:s})},getCommercialAuthorizationsByOrderId:({orderId:t})=>{let a=d(m,e);return fetchAPI(`${o}/${e}/commercial-authorizations/order/${t}`,{method:"GET",headers:a},{storeCookies:s})},processOrderAuthorization:async({orderAuthorizationId:t,dimensionId:a,ruleId:r,approved:i})=>{let n=d(m,e);return fetchAPI(`${o}/${e}/commercial-authorizations/${t}/callback`,{method:"POST",headers:n,body:JSON.stringify({params:{ruleId:r,dimensionId:a,score:i?100:0}})},{storeCookies:s})}},units:{getUnitByUserId:({userId:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/units/v1/${t}/unit`,{method:"GET",headers:a},{})},getOrgUnitById:({orgUnitId:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/units/v1/${t}`,{method:"GET",headers:a},{})},getScopesByOrgUnit:({orgUnitId:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/units/v1/${t}/scopes`,{method:"GET",headers:a},{})}},licenseManager:{getUserById:({userId:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/license-manager/users/${t}`,{method:"GET",headers:a},{})},getUserByEmail:({email:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/license-manager/pvt/users/${t}`,{method:"GET",headers:a},{})},getUserGrantedResources:({userId:t,resourceKey:a})=>{let r=d(m,e);return fetchAPI(`${o}/api/license-manager/storefront/users/${t}/resources/${a}/granted`,{method:"GET",headers:r},{})}},masterData:{getContractById:({contractId:t})=>{let a=d(m,e);return fetchAPI(`${o}/api/dataentities/CL/documents/${t}?_fields=_all`,{method:"GET",headers:a},{})},getShopperById:({userId:e})=>{if(!e)throw Error("Missing userId to fetch shopper name");let t=process.env.FS_DISCOVERY_APP_KEY??"",a=process.env.FS_DISCOVERY_APP_TOKEN??"";if(!t||!a)throw Error("No authentication AppKey and AppToken passed.");let r=e.replace(/-/g,"");return fetchAPI(`${o}/api/dataentities/shopper/search?_where=(userId=${r} OR userId=${e})&_fields=_all&_schema=v1`,{method:"GET",headers:{Accept:"application/json","content-type":"application/json","X-FORWARDED-HOST":m,"X-VTEX-API-AppKey":t,"X-VTEX-API-AppToken":a}},{})}},vtexid:{validate:()=>{let t=d(m,e);return fetchAPI(`${o}/api/vtexid/credential/validate`,{headers:t,body:JSON.stringify({token:t.VtexIdclientAutCookie}),method:"POST"},{storeCookies:s})}}}},d="trade-policy",u="region-id",p="fuzzy",m="operator",g="pickupPoint",f="shipping",h="delivery-options",y="in-stock",v=new Set([d,u,p,m,g,f,h,y]),isFuzzyFacet=e=>"fuzzy"===e.key&&("0"===e.value||"1"===e.value||"auto"===e.value),isOperatorFacet=e=>"operator"===e.key&&("and"===e.value||"or"===e.value),IntelligentSearch=({account:e,environment:t,hideUnavailableItems:a,simulationBehavior:r,showSponsored:i,subDomainPrefix:n},o)=>{let s=`https://${e}.${t}.com.br/api/io`,l=getWithCookie(o),c=new Headers(o.headers).get("x-forwarded-host")??o.headers?.host??"",S=n&&n.map(e=>e+".").find(e=>c.includes(e))||"",I=c.replace(S,""),C=l({"content-type":"application/json","X-FORWARDED-HOST":I}),getPolicyFacet=()=>{let{salesChannel:e}=o.storage.channel;return e?{key:d,value:e}:null},getRegionFacet=()=>{let{regionId:e,seller:t}=o.storage.channel,a=t?Buffer.from(`SW#${t}`).toString("base64"):null,r=a??e;return r?{key:u,value:r}:null},addDefaultFacets=e=>{let t=e.filter(({key:e})=>!v.has(e)),a=e.find(({key:e,value:t})=>e===f&&"all-delivery-methods"!==t)??null,r=e.find(({key:e,value:t})=>e===h&&"all-delivery-options"!==t)??null,i=e.find(({key:e})=>e===d)??getPolicyFacet(),n=e.find(({key:e})=>e===u)??getRegionFacet();return null!==a&&t.push(a),null!==r&&t.push(r),null!==i&&t.push(i),null!==n&&t.push(n),t},addSearchParamsFacets=(e,t)=>{let a=e.find(({key:e})=>e===p)??null,r=e.find(({key:e})=>e===m)??null,i=e.find(({key:e})=>e===g)??null;a&&isFuzzyFacet(a)&&t.append(p,a.value),r&&isOperatorFacet(r)&&t.append(m,r.value),i&&t.append(g,i.value)},search=({query:e="",page:t,count:n,sort:l="",selectedFacets:c=[],type:d,showInvisibleItems:u,sponsoredCount:p,hideUnavailableItems:m,allowRedirect:g=!1})=>{let f=new URLSearchParams({page:(t+1).toString(),count:0!==n?n.toString():"1",query:e,sort:l,locale:o.storage.locale});if(addSearchParamsFacets(c,f),u&&f.append("show-invisible-items","true"),void 0!==a){let e=c.find(({key:e})=>e===y),t=e?e.value:m?.toString()??a.toString();f.append("hideUnavailableItems",t)}void 0!==r&&f.append("simulationBehavior",r.toString()),void 0!==i&&f.append("showSponsored",i.toString()),void 0!==p&&f.append("sponsoredCount",p.toString()),void 0!==g&&f.append("allowRedirect",g.toString());let h=addDefaultFacets(c).map(({key:e,value:t})=>`${e}/${t}`).join("/");return fetchAPI(`${s}/_v/api/intelligent-search/${d}/${h}?${f.toString()}`,{headers:C})};return{facets:e=>search({...e,type:"facets"}),products:e=>search({...e,type:"product_search"}),suggestedTerms:e=>{let t=new URLSearchParams({query:e.query?.toString()??"",locale:o.storage.locale});return fetchAPI(`${s}/_v/api/intelligent-search/search_suggestions?${t.toString()}`,{headers:C})},topSearches:()=>{let e=new URLSearchParams({locale:o.storage.locale});return fetchAPI(`${s}/_v/api/intelligent-search/top_searches?${e.toString()}`,{headers:C})},productCount:e=>{let t=new URLSearchParams;return e?.query&&t.append("query",e.query.toString()),fetchAPI(`${s}/_v/api/intelligent-search/catalog_count?${t.toString()}`,{headers:C})}}},getClients=(e,t)=>{let a=IntelligentSearch(e,t),r=VtexCommerce(e,t);return{search:a,commerce:r}};var S=a(66464),I=a.n(S);let getSalesChannelLoader=(e,t)=>{let loader=async e=>Promise.all(e.map(e=>t.commerce.catalog.salesChannel(e)));return new(I())(loader)};var C=a(81786),b=a.n(C);let getSimulationLoader=(e,t)=>{let a=b()(1),loader=async e=>{let a=e.reduce((e,{items:t})=>[...e,t],[]),r=[...a.flat()],i=await t.commerce.checkout.simulation({country:e[0].country,postalCode:e[0].postalCode,items:r}),n=i.items.reduce((e,t)=>{let a=t.requestIndex;return"number"==typeof a&&a<e.length&&(e[a]=t),e},Array(r.length).fill(null)),o=a.reduce((e,t)=>[...e,t.length+e[e.length-1]],[0]);return a.map((e,t)=>({...i,items:n.slice(o[t],o[t+1]).filter(e=>!!e)}))},limited=async e=>a(loader,e);return new(I())(limited,{maxBatchSize:50})};var P=a(85442),$=a.n(P);let sanitizeHtml=(e,t)=>$()(e,t),enhanceSku=(e,t)=>({...e,isVariantOf:function(e){return{...e,description:e.description?sanitizeHtml(e.description):e.description}}(t)});var O=a(90782);let getSkuLoader=({flags:e},t)=>{let loader=async a=>{let r=a.map(e=>e.split("-")[0]),i=a.some(e=>"invisibleItems"===e.split("-")[1]),{products:n}=await t.search.products({query:`sku:${r.join(";")}`,page:0,count:r.length,showInvisibleItems:i,...e?.enableUnavailableItemsOnCart&&{hideUnavailableItems:!1}}),o=n.reduce((e,t)=>{for(let a of t.items)e[a.itemId]=enhanceSku(a,t);return e},{}),s=r.map(e=>o[e]),l=r.filter(e=>!o[e]);if(l.length>0)throw new O.dR(`Search API did not found the following skus: ${l.join(",")}`);return s};return new(I())(loader,{maxBatchSize:99})},w=new Set(["brand","category","department","subcategory","collection","cluster"]),isCollectionPageType=e=>"string"==typeof e.pageType&&w.has(e.pageType.toLowerCase()),getCollectionLoader=(e,t)=>{let a=b()(20),loader=async e=>Promise.all(e.map(e=>a(async()=>{let a=await t.commerce.catalog.portal.pagetype(e);if(isCollectionPageType(a))return a;throw new O.dR(`Catalog returned ${a.pageType} for slug: ${e}. This usually happens when there is more than one category with the same name in the same category tree level.`)})));return new(I())(loader,{batch:!1})},getLoaders=(e,{clients:t})=>{let a=getSkuLoader(e,t),r=getSimulationLoader(e,t),i=getCollectionLoader(e,t),n=getSalesChannelLoader(e,t);return{skuLoader:a,simulationLoader:r,collectionLoader:i,salesChannelLoader:n}},inStock=e=>e.AvailableQuantity>0,price=e=>e.spotPrice??0,sellingPrice=e=>e.Price??0,availability=e=>e?"https://schema.org/InStock":"https://schema.org/OutOfStock",bestOfferFirst=(e,t)=>inStock(e)&&!inStock(t)?-1:!inStock(e)&&inStock(t)?1:price(e)-price(t),inStockOrderFormItem=e=>"available"===e,withTax=(e,t=0,a=1)=>Math.round((e+t/a)*100)/100,getHighPrice=(e,t={includeTaxes:!1})=>{let a=e.filter(inStock),r=a[a.length-1],i=r?price(r):0;return t.includeTaxes?withTax(i,r?.Tax,r?.product?.unitMultiplier):i},getLowPrice=(e,t={includeTaxes:!1})=>{let[a]=e.filter(inStock),r=a?price(a):0;return t.includeTaxes?withTax(r,a?.Tax,a?.product?.unitMultiplier):r},k="\xc1\xc4\xc2\xc0\xc3\xc5Č\xc7ĆĎ\xc9Ě\xcb\xc8\xcaẼĔȆ\xcd\xcc\xce\xcfŇ\xd1\xd3\xd6\xd2\xd4\xd5\xd8ŘŔŠŤ\xdaŮ\xdc\xd9\xdb\xddŸŽ\xe1\xe4\xe2\xe0\xe3\xe5č\xe7ćď\xe9ě\xeb\xe8\xeaẽĕȇ\xed\xec\xee\xefň\xf1\xf3\xf6\xf2\xf4\xf5\xf8\xf0řŕšť\xfaů\xfc\xf9\xfb\xfd\xffž\xfe\xdeĐđ\xdf\xc6a",removeDiacritics=e=>{let t=e.slice(0);for(let e=0;e<k.length;e++)t=t.replace(RegExp(k.charAt(e),"g"),"AAAAAACCCDEEEEEEEEIIIINNOOOOOORRSTUUUUUYYZaaaaaacccdeeeeeeeeiiiinnooooooorrstuuuuuyyzbBDdBAa".charAt(e));return t},slugifySpecialCharacters=e=>e.replace(/[·/_,:]/,"-");function slugify(e){let t=e.replace(/,/g,""),a=t.replace(/[*+~.()'"!:@&\[\]`/ %$#?{}><=_^]/g,"-"),r=slugifySpecialCharacters(removeDiacritics(a));return r.toLowerCase()}let isBrand=e=>"brand"===e.type||isCollectionPageType(e)&&"brand"===e.pageType.toLowerCase(),isCollection=e=>isCollectionPageType(e)&&"collection"===e.pageType.toLowerCase(),slugifyRoot=e=>isBrand(e)||isCollection(e)?slugify(e.name):isCollectionPageType(e)?new URL(`https://${e.url}`).pathname.slice(1).toLowerCase():new URL(e.url).pathname.slice(1).toLowerCase(),D={id:({id:e})=>e.toString(),slug:e=>slugifyRoot(e),seo:e=>isBrand(e)||isCollectionPageType(e)?{title:e.title??e.name,description:e.metaTagDescription}:{title:e.Title,description:e.MetaTagDescription},type:e=>isBrand(e)?"Brand":isCollectionPageType(e)?e.pageType:0===e.level?"Department":"Category",meta:e=>{let t=slugifyRoot(e);return isBrand(e)?{selectedFacets:[{key:"brand",value:t}]}:isCollection(e)?{selectedFacets:[{key:"productclusterids",value:e.id}]}:{selectedFacets:t.split("/").map((e,t)=>({key:`category-${t+1}`,value:e}))}},breadcrumbList:async(e,t,a)=>{let{loaders:{collectionLoader:r}}=a,i=slugifyRoot(e),n=i.split("/").filter(e=>!!e),o=n.map((e,t)=>n.slice(0,t+1).join("/")),s=await Promise.all(o.map(async e=>{let t=await r.load(e);return{slug:e,...t}}));return{itemListElement:s.map((e,t)=>({item:isCollection(e)?`/${e.slug}`:new URL(`https://${e.url}`).pathname.toLowerCase(),name:e.name,position:t+1})),numberOfItems:s.length}}},F={buy:"whoboughtalsobought",view:"whosawalsosaw",similars:"similars",viewAndBought:"whosawalsobought",accessories:"accessories",suggestions:"suggestions"},transformSelectedFacet=({key:e,value:t})=>{switch(e){case"price":return{key:e,value:t.replace("-to-",":")};case"channel":case"locale":case"buy":case"view":case"similars":case"viewAndBought":case"accessories":case"suggestions":return[];default:return{key:e,value:t}}},parseRange=e=>{let t=e.split(":").map(Number);return 2!==t.length||Number.isNaN(t[0])||Number.isNaN(t[1])?null:t},isCrossSelling=e=>"string"==typeof F[e],findCrossSelling=e=>{let t=e?.filter(e=>isCrossSelling(e.key));if(Array.isArray(t)&&t.length>1)throw new O.oY(`You passed ${t.length} cross selling facets but only one is allowed. Please leave one of the following facet: ${t.map(e=>e.key).join(",")}`);return t?.[0]??null},findSlug=e=>e?.find(e=>"slug"===e.key)?.value??null,findSkuId=e=>e?.find(e=>"id"===e.key)?.value??null,findLocale=e=>e?.find(e=>"locale"===e.key)?.value??null,findChannel=e=>e?.find(e=>"channel"===e.key)?.value??null,min=(e,t)=>{let a=0;for(let r=1;r<e.length;r++)t(e[a],e[r])>0&&(a=r);return e[a]},cancelOrder=async(e,{data:t},{clients:{commerce:a}})=>{if(!t?.orderId)throw new O.oY("Missing orderId");let r=await a.checkout.cancelOrder(t);return{data:r?.data}};function extractRuleForAuthorization(e){if(!e||"pending"!==e.status)return null;for(let t of e.dimensionStatus){if("pending"!==t.status)continue;let a=t.ruleCollection.find(e=>"pending"===e.status&&e.isUserNextAuthorizer);if(a)return{rule:a,orderAuthorizationId:e.id,dimensionId:t.id}}return null}let processOrderAuthorization=async(e,{data:t},{clients:{commerce:a}})=>{let r=await a.oms.processOrderAuthorization(t),i=extractRuleForAuthorization(r),n=!i&&function(e){if(!e||"pending"!==e.status)return!1;let t=e.dimensionStatus.filter(e=>"pending"===e.status).flatMap(e=>e.ruleCollection).filter(e=>"pending"===e.status);return 0!==t.length&&t.every(e=>!e.isUserNextAuthorizer)}(r);return{isPendingForOtherAuthorizer:n,ruleForAuthorization:i}},subscribeToNewsletter=async(e,{data:t},{clients:{commerce:a}})=>{let r=await a.subscribeToNewsletter(t);return{id:r?.Id}};var x=a(12404),N=a.n(x);let ChannelMarshal=class ChannelMarshal{static parse(e){try{let t=JSON.parse(e);return{seller:t.seller??"",regionId:t.regionId??"",salesChannel:t.salesChannel??"",hasOnlyDefaultSalesChannel:t.hasOnlyDefaultSalesChannel??!0}}catch(e){throw console.error(e),Error("Malformed channel string")}}static stringify(e){return JSON.stringify(e)}};let mutateChannelContext=(e,t)=>{e.storage.channel=ChannelMarshal.parse(t)},mutateLocaleContext=(e,t)=>{e.storage.locale=t};var T=a(6113),A=a.n(T);let md5=e=>A().createHash("md5").update(e).digest("hex"),E={attachment:"ATTACHMENT",specification:"SPECIFICATION",attribute:"ATTRIBUTE"};function attachmentToPropertyValue(e){return{name:e.name,value:e.content,valueReference:E.attachment}}function attributeToPropertyValue(e){return{propertyID:e.id,name:e.name,value:e.value,valueReference:{valueReference:E.attribute,visible:e.visible}}}function getPropertyId(e){return md5(`${e.name}:${JSON.stringify(e.value)}:${e.valueReference}`)}let createNewAddress=e=>{let t=e.postalCode,a=e.geoCoordinates,r={addressType:e.addressType||null,postalCode:t||null,city:null,state:null,country:e.country||null,street:null,number:null,neighborhood:null,complement:null,reference:null,geoCoordinates:[]};if(a){let e="object"==typeof a&&"latitude"in a?a.latitude:null,t="object"==typeof a&&"longitude"in a?a.longitude:null;r.geoCoordinates=null!==e&&null!==t?[t,e]:[]}return[r]},getAddressOrderForm=(e,t,a)=>{let r=t.postalCode,i=t.geoCoordinates,n=e?.shippingData?.availableAddresses??[],o=e?.shippingData?.selectedAddresses??[];if(!a&&o.length>0)return[o[0]];if(a&&n.length>0)for(let e of n){if(r&&i){let t=e.postalCode===r||e.geoCoordinates[0]===i.longitude&&e.geoCoordinates[1]===i.latitude;if(t)return[e]}if(r&&!i){let t=e.postalCode===r;if(t)return[e]}if(i&&!r){let t=e.geoCoordinates[0]===i.longitude&&e.geoCoordinates[1]===i.latitude;if(t)return[e]}}return null},shouldUpdateShippingData=(e,t)=>{if(!hasSessionPostalCodeOrGeoCoordinates(t)||!hasItems(e))return{updateShipping:!1,addressChanged:!1};let[a]=e?.shippingData?.selectedAddresses??[];if(checkPostalCode(a,t.postalCode)||checkGeoCoordinates(a,t.geoCoordinates)||checkAddressType(a,t.addressType))return{updateShipping:!0,addressChanged:!0};let{logisticsInfo:r}=e.shippingData;return shouldUpdateDeliveryInfo(r,t)?{updateShipping:!0,addressChanged:!1}:{updateShipping:!1,addressChanged:!1}},hasSessionPostalCodeOrGeoCoordinates=e=>!!e.postalCode||e.geoCoordinates?.latitude&&e.geoCoordinates?.longitude,checkPostalCode=(e,t)=>"string"==typeof t&&e?.postalCode!==t,checkGeoCoordinates=(e,t)=>"number"==typeof t?.latitude&&"number"==typeof t?.longitude&&(e?.geoCoordinates[0]!==t?.longitude||e?.geoCoordinates[1]!==t?.latitude),checkAddressType=(e,t)=>"string"==typeof t&&e?.addressType!==t,hasItems=e=>0!==e.items.length,shouldUpdateDeliveryInfo=(e,t)=>{let a=t?.deliveryMode?.deliveryChannel,r=t?.deliveryMode?.deliveryMethod,{startDate:i,endDate:n}=t?.deliveryMode?.deliveryWindow||{};return e.some(({selectedDeliveryChannel:e,selectedSla:t,slas:o})=>{let s=a&&e!==a,l=r&&t!==r;return o?.some(e=>!!s&&e.deliveryChannel===a||!!l&&e.id===r||i&&n&&e.deliveryChannel===a&&e.id===r&&(!e?.deliveryWindow||e?.deliveryWindow?.startDateUtc!==i||e?.deliveryWindow?.endDateUtc!==n)&&e.availableDeliveryWindows?.some(e=>e?.startDateUtc===i&&e?.endDateUtc===n))})},isAttachment=e=>e.valueReference===E.attachment,getId=e=>[e.itemOffered.sku,e.seller.identifier,e.price<.01?"Gift":void 0,e.itemOffered.additionalProperty?.filter(isAttachment).map(getPropertyId).join("-")].filter(Boolean).join("::"),orderFormItemToOffer=(e,t)=>({listPrice:e.listPrice/100,price:e.sellingPrice/100,quantity:e.quantity,seller:{identifier:e.seller},itemOffered:{sku:e.id,image:[],name:e.name,additionalProperty:e.attachments.map(attachmentToPropertyValue)},index:t}),offerToOrderItemInput=e=>({quantity:e.quantity,seller:e.seller.identifier,id:e.itemOffered.sku,index:e.index,attachments:(e.itemOffered.additionalProperty?.filter(isAttachment)??[]).map(e=>({name:e.name,content:e.value}))}),groupById=e=>e.reduce((e,t)=>{let a=getId(t);return e.has(a)||e.set(a,[]),e.get(a)?.push(t),e},new Map),equals=(e,t)=>{let pick=(e,t)=>({...e,itemOffered:{sku:e.itemOffered.sku},index:t}),a=t.items.map(orderFormItemToOffer).map(pick),r=e.acceptedOffer.map(pick),i=e.orderNumber===t.orderFormId,n=N()(a,r);return i&&n};function hasChildItem(e,t){return e?.some(a=>null!==a.parentItemIndex&&void 0!==a.parentItemIndex&&e[a.parentItemIndex]?.id===t)}function hasParentItem(e,t){return e?.some(e=>e.id===t&&null!==e.parentItemIndex)}let joinItems=e=>{let t=e.items.reduce((t,a,r)=>{let i=hasParentItem(e.items,a.id)||hasChildItem(e.items,a.id)?`${getId(orderFormItemToOffer(a))}::${r}`:getId(orderFormItemToOffer(a));return t[i]||(t[i]=[]),t[i].push(a),t},{});return{...e,items:Object.values(t).map(e=>{let[t]=e,a=e.reduce((e,t)=>e+t.quantity,0),r=e.reduce((e,t)=>e+(t?.priceDefinition?.total??(t?.quantity??0)*(t?.sellingPrice??0)),0);return{...t,quantity:a,sellingPrice:r/a}})}},orderFormToCart=async(e,t,a)=>({order:{orderNumber:e.orderFormId,acceptedOffer:e.items.map(async e=>({...e,product:await t.load(`${e.id}-invisibleItems`)})),shouldSplitItem:a},messages:e.messages.map(({text:e,status:t})=>({text:e,status:t.toUpperCase()}))}),getOrderFormEtag=({items:e})=>md5(JSON.stringify(e)),setOrderFormEtag=async(e,t)=>{try{let a=await t.checkout.setCustomData({id:e.orderFormId,appId:"faststore",key:"cartEtag",value:getOrderFormEtag(e)});return a}catch(e){throw console.error('Error while setting custom data to orderForm.\n Make sure to add the following custom app to the orderForm: \n{"fields":["cartEtag"],"id":"faststore","major":1}.\n More info at: https://developers.vtex.com/vtex-rest-api/docs/customizable-fields-with-checkout-api'),e}},isOrderFormStale=e=>{let t=e.customData?.customApps.find(e=>"faststore"===e.id),a=t?.fields?.cartEtag;if(null==a)return!0;let r=getOrderFormEtag(e);return r!==a},getOrderForm=async(e,{clients:{commerce:t}})=>t.checkout.orderForm({id:e}),clearOrderFormMessages=async(e,{clients:{commerce:t}})=>t.checkout.clearOrderFormMessages({id:e}),updateOrderFormShippingData=async(e,t,{clients:{commerce:a}})=>{if(!t)return e;let{updateShipping:r,addressChanged:i}=shouldUpdateShippingData(e,t);if(r){let r=getAddressOrderForm(e,t,i),n=r||createNewAddress(t),o=!!t.deliveryMode?.deliveryWindow;return o&&await a.checkout.shippingData({id:e.orderFormId,index:e.items.length,deliveryMode:t.deliveryMode,selectedAddresses:n},!1),a.checkout.shippingData({id:e.orderFormId,index:e.items.length,deliveryMode:t.deliveryMode,selectedAddresses:n},!0)}return e},getCookieCheckoutOrderNumber=(e,t)=>{if(!e)return"";let a=(0,r.parse)(e),i=a[t];return i?i.split("=")[1]:""},validateCart=async(e,{cart:{order:t},session:a},r)=>{let i=getCookieCheckoutOrderNumber(r.headers.cookie,"checkout.vtex.com"),n=""!==i?i:t?.orderNumber,{acceptedOffer:o,shouldSplitItem:s}=t,{clients:{commerce:l},loaders:{skuLoader:c}}=r,d=a?.channel,u=a?.locale;d&&mutateChannelContext(r,d),u&&mutateLocaleContext(r,u);let p=await getOrderForm(n,r);0!==p.messages.length&&await clearOrderFormMessages(n,r);let m=isOrderFormStale(p);if(m){let e=await setOrderFormEtag(p,l).then(joinItems);if(n)return orderFormToCart(e,c,s)}let g=groupById(o),f=groupById(p.items.map(orderFormItemToOffer)),h=Array.from(f.entries()),y=Array.from(g.entries()),{itemsToAdd:v,itemsToUpdate:S}=y.reduce((e,[t,a])=>{let r=f.get(t);if(!r)return a.forEach(t=>e.itemsToAdd.push(t)),e;let[i,...n]=r;if(hasParentItem(p.items,i.itemOffered.sku)||hasChildItem(p.items,i.itemOffered.sku))return e.itemsToUpdate.push(i),e;let o=a.reduce((e,t)=>e+t.quantity,0);return e.itemsToUpdate.push({...i,quantity:o}),n.forEach(t=>e.itemsToUpdate.push({...t,quantity:0})),e},{itemsToAdd:[],itemsToUpdate:[]}),I=h.filter(([e])=>!g.has(e)).flatMap(([,e])=>e.map(e=>({...e,quantity:0}))),C=[...v,...S,...I].map(offerToOrderItemInput);if(0===C.length)return null;let b=await l.checkout.updateOrderFormItems({id:p.orderFormId,orderItems:C,shouldSplitItem:s}).then(e=>updateOrderFormShippingData(e,a,r)).then(e=>{if(a?.marketingData){let t={...e.marketingData,...a.marketingData};return l.checkout.marketingData({id:p.orderFormId,marketingData:t})}return e}).then(e=>setOrderFormEtag(e,l)).then(joinItems),P=N()(p.messages,b.messages);return equals(t,b)&&P?null:orderFormToCart(b,c,s)};async function getPreciseLocationData(e,t,a){try{let r=await e.commerce.checkout.address({postalCode:a,country:t}),[i,n]=r.geoCoordinates;return{city:r.city,geoCoordinates:{latitude:n,longitude:i}}}catch(e){throw console.error(`Error while getting geo coordinates for the current postal code (${a}) and country (${t}).
|
|
2
|
-
`),e}}let validateSession=async(e,{session:t,search:a},{clients:r,headers:i,account:n})=>{let o;let s=ChannelMarshal.parse(t.channel??""),l=String(t.postalCode??""),c=t.country??"",d=t.city??null,u=t.geoCoordinates??null,p=!d||!u;if(p&&""!==l&&""!==c){let e=await getPreciseLocationData(r,c,l);d=e.city,u=e.geoCoordinates}let m=new URLSearchParams(a);m.has("facets")&&m.delete("facets");let g=m.get("sc")??s.salesChannel;m.set("sc",g),l&&m.set("postalCode",l),c&&m.set("country",c),u&&m.set("geoCoordinates",`${u.longitude},${u.latitude}`);let{marketingData:f}=t,h={utmCampaign:m.get("utm_campaign")??f?.utmCampaign??"",utmMedium:m.get("utm_medium")??f?.utmMedium??"",utmSource:m.get("utm_source")??f?.utmSource??"",utmiCampaign:m.get("utmi_cp")??f?.utmiCampaign??"",utmiPage:m.get("utmi_p")??f?.utmiPage??"",utmiPart:m.get("utmi_pc")??f?.utmiPart??""},y=parseJwt(getAuthCookie(i?.cookie??"",n)),v=y?.isRepresentative,S=y?.customerId,I=y?.unitId,C=y?.userId,[b,P]=await Promise.all([r.commerce.session(m.toString()).catch(()=>null),!!C&&r.commerce.licenseManager.getUserGrantedResources({userId:C,resourceKey:"ManageOrganizationAndContract"}).catch(()=>!1)]),$=b?.namespaces.profile??null,O=b?.namespaces.shopper??null,w=b?.namespaces.store??null,k=b?.namespaces.authentication??null,D=b?.namespaces.checkout??null,F=b?.namespaces.public??null;if(s.seller&&(l||u)){let e=await r.commerce.checkout.region({postalCode:l,geoCoordinates:u,country:c,salesChannel:g}),t=e?.[0];o=t?.sellers.find(e=>s.seller===e.id)}let x={...t,currency:{code:w?.currencyCode?.value??t.currency.code,symbol:w?.currencySymbol?.value??t.currency.symbol},country:w?.countryCode?.value??c,channel:ChannelMarshal.stringify({salesChannel:w?.channel?.value??s.salesChannel,regionId:D?.regionId?.value??s.regionId,seller:o?.id,hasOnlyDefaultSalesChannel:!w?.channel?.value}),b2b:v?{isRepresentative:v??!1,customerId:k?.customerId?.value??S??"",unitName:k?.unitName?.value??"",unitId:k?.unitId?.value??I??"",firstName:O?.firstName?.value??"",lastName:O?.lastName?.value??"",userName:`${O?.firstName?.value??""} ${O?.lastName?.value??""}`.trim(),userEmail:k?.storeUserEmail.value??"",savedPostalCode:F?.postalCode?.value??"",permissions:{canManageOrganization:P}}:null,marketingData:h,person:$?.id?{id:$.id?.value??"",email:$.email?.value??"",givenName:$.firstName?.value??"",familyName:$.lastName?.value??""}:null,geoCoordinates:u?.latitude&&u?.longitude&&u||null,city:d};return N()(t,x)?null:x};var V=a(57343),R=a(36548);let M=new V.GraphQLScalarType({name:"ObjectOrString",description:"A string or the string representation of an object (a stringified object).",parseValue:function(e){return"string"==typeof e?getValueAsObjectOrString(e):null},serialize:function(e){return"object"==typeof e?JSON.stringify(e):"string"==typeof e?e:null},parseLiteral:e=>e.kind===R.Kind.STRING?getValueAsObjectOrString(e.value):null});function getValueAsObjectOrString(e){try{return JSON.parse(e)}catch(t){return e}}let isSearchItem=e=>"Price"in e&&"seller"in e&&"product"in e,isOrderFormItem=e=>"skuName"in e,canonicalFromProduct=({linkText:e})=>`/${e}/p`,enhanceCommercialOffer=({offer:e,seller:t,product:a})=>({...e,product:a,seller:t}),U={imageText:"image",imageUrl:"https://storecomponents.vtexassets.com/assets/faststore/images/image___117a6d3e229a96ad0e0d0876352566e2.svg",imageLabel:"label"},getSlug=(e,t)=>`${e}-${t}`,getPath=(e,t)=>`/${getSlug(e,t)}/p`,nonEmptyArray=e=>Array.isArray(e)&&e.length>0?e:null;function removeTrailingSlashes(e){return e.replace(/^\/+|\/+$/g,"")}let findMainTreeIndex=(e,t)=>{let a=e.findIndex(e=>{let a=removeTrailingSlashes(e).split("/").at(-1);return a===t});return a<0?0:a},_=new Set(["allSpecifications"]),pickBestSku=e=>{let t=e.flatMap(e=>e.sellers.map(t=>({offer:t.commertialOffer,sku:e}))),a=min(t,({offer:e},{offer:t})=>bestOfferFirst(e,t));return a?a.sku:e[0]},isValidSkuId=e=>""!==e&&!Number.isNaN(Number(e)),q={price_desc:"price:desc",price_asc:"price:asc",orders_desc:"orders:desc",name_desc:"name:desc",name_asc:"name:asc",release_desc:"release:desc",discount_desc:"discount:desc",score_desc:""},isRootFacet=(e,t,a)=>t?"category-1"===e.key:!!a&&"brand"===e.key,L=["bd","d","h","m"],isUnit=e=>L.includes(e),z={bd:{0:"Today",1:"In 1 business day",other:"Up to # business days"},d:{0:"Today",1:"In 1 day",other:"Up to # days"},h:{0:"Now",1:"In 1 hour",other:"Up to # hours"},m:{0:"Now",1:"In 1 minute",other:"Up to # minutes"}},getLocalizedEstimates=e=>{let[t,a]=[e.split(/\D+/)[0],e.split(/[0-9]+/)[1]],r=""!==t&&!Number.isNaN(Number(t)),i=isUnit(a);if(!r||!i)return"";let n=2>Number(t)?Number(t):"other";return z[a][n].replace("#",t)??""},W="skuvariation";function findSkuVariantImage(e,t){let a=`${W}${t}`.toLowerCase(),r=e.find(e=>e.imageLabel===a);if(r)return r;let i=e.find(e=>e.imageLabel===W);return i||e[0]}function getActiveSkuVariations(e){let t={};return e.forEach(e=>{t[e.name]=e.values[0]}),t}let B={"pickup-in-point":"Pickup",delivery:"Delivery",pickup:"Pickup","take-away":"Take away","":""},j={StoreCollection:D,StoreAggregateOffer:{highPrice:e=>getHighPrice(e),lowPrice:e=>getLowPrice(e),lowPriceWithTaxes:e=>getLowPrice(e,{includeTaxes:!0}),offerCount:e=>e.length,priceCurrency:async(e,t,a)=>{let{loaders:{salesChannelLoader:r},storage:{channel:i}}=a,n=await r.load(i.salesChannel);return n.CurrencyCode??""},offers:e=>e},StoreProduct:{productID:({itemId:e})=>e,name:({isVariantOf:e,name:t})=>t??e.productName,slug:({isVariantOf:{linkText:e},itemId:t})=>getSlug(e,t),description:({isVariantOf:{description:e}})=>e,seo:({isVariantOf:e})=>({title:e.productTitle||e.productName,description:e.metaTagDescription||e.description,canonical:canonicalFromProduct(e)}),brand:({isVariantOf:{brand:e}})=>({name:e}),unitMultiplier:({unitMultiplier:e})=>e,breadcrumbList:({isVariantOf:{categories:e,productName:t,linkText:a,categoryId:r,categoriesIds:i},itemId:n})=>{let o=findMainTreeIndex(i,r),s=e[o],l=removeTrailingSlashes(s).split("/");return{itemListElement:[...l.map((e,t)=>{let a=`/${l.slice(0,t+1).map(slugify).join("/")}/`;return{name:e,item:a,position:t+1}}),{name:t,item:getPath(a,n),position:l.length+1}],numberOfItems:l.length}},image:({images:e},t)=>{let a=(nonEmptyArray(e)??[U]).map(({imageUrl:e,imageText:t,imageLabel:a})=>({alternateName:t??"",url:e.replace("vteximg.com.br","vtexassets.com"),keywords:a}));if("object"!=typeof t)return a;let{context:r,limit:i}=t,n="generic"!==r;i=(i=i||-1)<=-1?void 0:i;let o=n?a.filter(({keywords:e})=>e===r):a;return(o=0===o.length?a:o).slice(0,i)},sku:({itemId:e})=>e,gtin:({ean:e,referenceId:t})=>e||(t[0]?.Value??""),review:()=>[],aggregateRating:()=>({}),offers:e=>e.sellers.map(t=>enhanceCommercialOffer({offer:t.commertialOffer,seller:t,product:e})).sort(bestOfferFirst),isVariantOf:e=>e,additionalProperty:({variations:e=[],attachmentsValues:t=[],attributes:a=[]})=>{let r=e.flatMap(({name:e,values:t})=>t.map(t=>({name:e,value:t,valueReference:E.specification}))),i=t.map(attachmentToPropertyValue),n=a.map(attributeToPropertyValue);return[...r,...i,...n]},hasSpecifications:({isVariantOf:e})=>!!e.skuSpecifications?.length,skuSpecifications:({isVariantOf:{skuSpecifications:e}})=>e??[],specificationGroups:({isVariantOf:{specificationGroups:e}})=>e,releaseDate:({isVariantOf:{releaseDate:e}})=>e??"",advertisement:({isVariantOf:{advertisement:e}})=>e,deliveryPromiseBadges:({isVariantOf:{deliveryPromisesBadges:e}})=>e},StoreSeo:{title:({title:e})=>e??"",description:({description:e})=>e??"",canonical:({canonical:e})=>e??"",titleTemplate:()=>""},StoreFacet:{__resolveType:({type:e,values:t})=>"TEXT"!==e&&"DELIVERY"!==e?"StoreFacetRange":t&&0!==t.length&&t.every(e=>e.range)?"StoreFacetRange":"StoreFacetBoolean"},StoreFacetBoolean:{key:({key:e})=>e,label:({name:e})=>e,values:({values:e})=>e.sort((e,t)=>e.name.localeCompare(t.name))},StoreFacetRange:{key:({key:e})=>e,label:({name:e})=>e,min:({values:e,key:t},a,{storage:{searchArgs:r}})=>{let i=parseRange(r?.selectedFacets?.find(e=>e.key===t)?.value??""),n=min(e,(e,t)=>e.range.from-t.range.from),o=n?.range?.from??0;return{selected:i?.[0]??o,absolute:o}},max:({values:e,key:t},a,{storage:{searchArgs:r}})=>{let i=parseRange(r?.selectedFacets?.find(e=>e.key===t)?.value??""),n=min(e,(e,t)=>t.range.to-e.range.to),o=n?.range?.to??0;return{selected:i?.[1]??o,absolute:o}}},StoreFacetValueBoolean:{value:({value:e})=>e,label:({name:e})=>e||"unknown",selected:({selected:e})=>e,quantity:({quantity:e})=>e},StoreOffer:{priceCurrency:async(e,t,a)=>{let{loaders:{salesChannelLoader:r},storage:{channel:i}}=a,n=await r.load(i.salesChannel);return n.CurrencyCode??""},priceValidUntil:e=>isSearchItem(e)?e.PriceValidUntil??"":isOrderFormItem(e)?e.priceValidUntil??"":null,itemCondition:()=>"https://schema.org/NewCondition",availability:async e=>isSearchItem(e)?availability(inStock(e)):isOrderFormItem(e)?availability(inStockOrderFormItem(e.availability)):null,seller:(e,t,a)=>isSearchItem(e)?{identifier:a.storage.channel?.seller||e.seller.sellerId||""}:isOrderFormItem(e)?{identifier:e.seller}:null,price:e=>isSearchItem(e)?price(e):isOrderFormItem(e)?e.sellingPrice/100:null,priceWithTaxes:e=>isSearchItem(e)?withTax(price(e),e?.Tax,e.product.unitMultiplier):isOrderFormItem(e)?withTax(e.sellingPrice/100,e.tax/100,e.unitMultiplier):null,sellingPrice:e=>isSearchItem(e)?sellingPrice(e):isOrderFormItem(e)?e.sellingPrice/100:null,listPrice:e=>isSearchItem(e)?e.ListPrice??0:isOrderFormItem(e)?e.listPrice/100:null,listPriceWithTaxes:e=>isSearchItem(e)?withTax(e.ListPrice??0,e?.Tax,e.product.unitMultiplier):isOrderFormItem(e)?withTax(e.listPrice/100,e.tax/100,e.unitMultiplier):null,itemOffered:e=>isSearchItem(e)?e.product:isOrderFormItem(e)?{...e.product,attachmentsValues:e.attachments}:null,quantity:e=>isSearchItem(e)?e.AvailableQuantity??0:isOrderFormItem(e)?e.quantity:null},StoreAggregateRating:{ratingValue:()=>5,reviewCount:()=>0},StoreReview:{reviewRating:()=>({ratingValue:5,bestRating:5}),author:()=>({name:""})},StoreProductGroup:{hasVariant:e=>e.isVariantOf.items.map(t=>enhanceSku(t,e.isVariantOf)),productGroupID:({isVariantOf:e})=>e.productId,name:e=>e.isVariantOf.productName,skuVariants:e=>e,additionalProperty:({isVariantOf:{specificationGroups:e}})=>e.filter(e=>!_.has(e.name)).flatMap(({specifications:e})=>e.flatMap(({name:e,values:t})=>t.map(t=>({name:e,value:t,valueReference:E.specification}))))},StoreSearchResult:{suggestions:async(e,t,a)=>{let{clients:{search:r}}=a,{searchArgs:i}=e;if(!i.query){let e=await r.topSearches();return{terms:e.searches.map(e=>({value:e.term,count:e.count})),products:[]}}let{productSearchPromise:n}=e,[o,s]=await Promise.all([r.suggestedTerms(i),n]),l=s.products.map(e=>{let t=pickBestSku(e.items);return t&&enhanceSku(t,e)}).filter(e=>!!e),{searches:c}=o;return{terms:c.map(e=>({value:e.term,count:e.count})),products:l}},products:async({productSearchPromise:e})=>{let t=await e,a=t.products.map(e=>{let t=pickBestSku(e.items);return t&&enhanceSku(t,e)}).filter(e=>!!e);return{pageInfo:{hasNextPage:t.pagination.after.length>0,hasPreviousPage:t.pagination.before.length>0,startCursor:"0",endCursor:t.recordsFiltered.toString(),totalCount:t.recordsFiltered},edges:a.map((e,t)=>({node:e,cursor:t.toString()}))}},facets:async({searchArgs:e},t,a)=>{let{clients:{search:r}}=a;a.storage.searchArgs=e;let{facets:i=[]}=await r.facets(e),n=!e.query,o=!!e.selectedFacets?.length&&"category-1"===e.selectedFacets[0].key,s=!!e.selectedFacets?.length&&"brand"===e.selectedFacets[0].key,l=i.filter(e=>!n||!isRootFacet(e,o,s));return l},metadata:async({productSearchPromise:e})=>{let t=await e;return{isTermMisspelled:t.correction?.misspelled??!1,logicalOperator:t.operator,fuzzy:t.fuzzy}}},StorePropertyValue:{propertyID:e=>e.propertyID||getPropertyId(e),name:({name:e})=>e,value:({value:e})=>e,valueReference:({valueReference:e})=>e},SkuVariants:{activeVariations:e=>getActiveSkuVariations(e.variations),allVariantsByName:e=>(function(e){let t={};return e?.forEach(e=>{t[e.field.originalName??e.field.name]=e.values.map(e=>e.originalName??e.name)}),t})(e.isVariantOf.skuSpecifications),slugsMap:(e,t)=>(function(e,t,a){let r={};return e.forEach(e=>{let i=e.variations;if(0===i.length)return;let n=`${t}-${i.find(e=>e.name===t)?.values[0]??""}`,o=i.reduce((e,a)=>{let r=a.name===t;return r?e:e+`-${a.name}-${a.values[0]}`},n);r[o]=`${a}-${e.itemId}`}),r})(e.isVariantOf.items,t.dominantVariantName??e.variations[0]?.name,e.isVariantOf.linkText),availableVariations:(e,t)=>{let a=t.dominantVariantName??e.variations[0]?.name,r=getActiveSkuVariations(e.variations),i=r[a],n=function(e,t,a){let r={},i=new Set;return e.forEach(e=>{if(0===e.variations.length)return;let n=e.variations.find(e=>e.name===t),o=n?.values[0]===a;if(!o){let a=`${t}-${n?.values[0]}`;if(!n||i.has(a))return;i.add(a);let o=findSkuVariantImage(e.images,t),s={src:o.imageUrl,alt:o.imageLabel??"",label:`${t}: ${n.values[0]}`,value:n.values[0]};r[n.name]?r[n.name].push(s):r[n.name]=[s];return}e.variations.forEach(t=>{let a=`${t.name}-${t.values[0]}`;if(i.has(a))return;i.add(a);let n=findSkuVariantImage(e.images,t.name),o={src:n.imageUrl,alt:n.imageText??"",label:`${t.name}: ${t.values[0]}`,value:t.values[0]};r[t.name]?r[t.name].push(o):r[t.name]=[o]})}),function(e){for(let t in e){let a=e[t].every(e=>!Number.isNaN(Number(e.value)));a&&e[t].sort((e,t)=>{var a,r;return a=e.value,r=t.value,Number.isNaN(Number(a)-Number(r))?a<r?-1:a>r?1:0:Number(a)-Number(r)})}return e}(r)}(e.isVariantOf.items,a,i);return n},allVariantProducts:e=>e.isVariantOf.items.map(t=>enhanceSku(t,e.isVariantOf))},ShippingSLA:{carrier:e=>e?.friendlyName??e?.name??"",price:e=>e?.price?e.price/100:e?.price,localizedEstimates:e=>e?.shippingEstimate?getLocalizedEstimates(e.shippingEstimate):""},UserOrderResult:{deliveryOptionsData:e=>{let{shippingData:t,items:a}=e,r=t?.logisticsInfo||[],i=t?.selectedAddresses||t?.availableAddresses||[t?.address],n=r.reduce((e,t)=>{let r=t?.selectedSla||"",n=t?.selectedDeliveryChannel||t?.deliveryChannel||"",o=t?.deliveryCompany||"",s=t?.deliveryWindow,l=t?.pickupStoreInfo,c=t?.shippingEstimate||"",d=t?.shippingEstimate?getLocalizedEstimates(t?.shippingEstimate):"",u=t?.shippingEstimateDate||"",p=t?.addressId||"",m=t?.itemIndex??0,g=a?.[m],f=g?.seller||"",h=`${r}|${n}|${o}|${f}|${c}|${u}|${p}|${s?.startDateUtc}|${s?.endDateUtc}`,y=i?.find(e=>e?.addressId===p),v=`${B[n]||""} ${d} ${y?.neighborhood?`to ${y?.neighborhood}`:""}`.trim(),S=(g?.sellingPrice??0)*(g?.quantity??0)+(g?.tax??0);return e[h]||(e[h]={selectedSla:r,deliveryChannel:n,deliveryCompany:o,deliveryWindow:s,shippingEstimate:c,shippingEstimateDate:u,seller:f,friendlyShippingEstimate:d,friendlyDeliveryOptionName:v,address:y,pickupStoreInfo:l,quantityOfDifferentItems:0,total:0,items:[]}),e[h]&&(e[h].items?.push({id:g?.id||"",uniqueId:g?.uniqueId||"",name:g?.name||"",quantity:g?.quantity||0,price:g?.price||0,imageUrl:g?.imageUrl||"",tax:g?.tax||0,total:S}),e[h].quantityOfDifferentItems=(e[h].quantityOfDifferentItems??0)+1,e[h].total=(e[h].total??0)+S),e},{}),o=Object.values(n),s=t?.contactInformation?.[0],l={name:`${s?.firstName??""} ${s?.lastName??""}`.trim()||o?.[0]?.address?.receiverName||"",email:s?.email||"",phone:s?.phone||""};return{deliveryOptions:o,contact:l}},customFields:e=>{let t=e?.customData?.customFields||[];return Object.values(t.reduce((e,t)=>{let a=t?.linkedEntity?.type||"",r=t?.linkedEntity?.id||"",i=`${a}|${r||""}`;return e[i]||(e[i]={type:a,id:r,fields:[]}),e[i].fields.push(...t?.fields||[]),e},{}))||[]}},ObjectOrString:M,Query:{product:async(e,{locator:t},a)=>{let r=findChannel(t),i=findLocale(t),n=findSkuId(t),o=findSlug(t);r&&mutateChannelContext(a,r),i&&mutateLocaleContext(a,i);let{loaders:{skuLoader:s},clients:{commerce:l,search:c}}=a;try{let e=n??o?.split("-").pop()??"";if(!isValidSkuId(e))throw Error("Invalid SkuId");let t=await s.load(e);if(o&&t.isVariantOf.linkText&&!o.startsWith(t.isVariantOf.linkText))throw Error(`Slug was set but the fetched sku does not satisfy the slug condition. slug: ${o}, linkText: ${t.isVariantOf.linkText}`);return t}catch(r){if(null==o)throw new O.oY("Missing slug or id");let e=await l.catalog.portal.pagetype(`${o}/p`);if("Product"!==e.pageType||!e.id)throw new O.dR(`No product found for slug ${o}`);let{products:[t]}=await c.products({page:0,count:1,query:`product:${e.id}`,hideUnavailableItems:!1});if(!t)throw new O.dR(`No product found for id ${e.id}`);let a=pickBestSku(t.items);return enhanceSku(a,t)}},collection:(e,{slug:t},a)=>{let{loaders:{collectionLoader:r}}=a;return r.load(t)},search:async(e,{first:t,after:a,sort:r,term:i,selectedFacets:n,sponsoredCount:o},s)=>{let l=findChannel(n),c=findLocale(n),d=findCrossSelling(n);l&&mutateChannelContext(s,l),c&&mutateLocaleContext(s,c);let u=i;if(d){let e=await s.clients.commerce.catalog.products.crossselling({type:F[d.key],productId:d.value});u=`product:${e.map(e=>e.productId).slice(0,t).join(";")}`}let p=a?Number(a):0,m={page:Math.ceil(p/t)||0,count:t,query:u??void 0,sort:q[r??"score_desc"],selectedFacets:n?.flatMap(transformSelectedFacet)??[],sponsoredCount:o??void 0},g=s.clients.search.products(m);return{searchArgs:m,productSearchPromise:g}},allProducts:async(e,{first:t,after:a},r)=>{let{clients:{search:i}}=r,n=a?Number(a):0,o=await i.products({page:Math.ceil(n/t),count:t}),s=o.products.flatMap(e=>e.items.map(t=>enhanceSku(t,e))).filter(e=>e.sellers.length>0);return{pageInfo:{hasNextPage:o.pagination.after.length>0,hasPreviousPage:o.pagination.before.length>0,startCursor:"0",endCursor:o.recordsFiltered.toString(),totalCount:o.recordsFiltered},edges:s.map((e,t)=>({node:e,cursor:(n+t).toString()}))}},products:async(e,{productIds:t},a)=>{let{clients:{search:r}}=a;if(!t.length)return[];let i=`id:${t.join(";")}`,n=await r.products({page:0,count:t.length,query:i});return n.products.flatMap(e=>e.items.map(t=>enhanceSku(t,e))).filter(e=>t.includes(e.itemId)&&e.sellers.length>0)},allCollections:async(e,{first:t,after:a},r)=>{let{clients:{commerce:i}}=r,n=a?Number(a):0,[o,s]=await Promise.all([i.catalog.brand.list(),i.catalog.category.tree()]),l=[],dfs=(e,t)=>{for(let a of(l.push({...e,level:t}),e.children))dfs(a,t+1)};for(let e of s)dfs(e,0);let c=[...o.filter(e=>e.isActive).map(e=>({...e,type:"brand"})),...l],d=c.filter(e=>!!D.slug(e,null,r,null));return{pageInfo:{hasNextPage:d.length-n>t,hasPreviousPage:n>0,startCursor:"0",endCursor:(Math.min(t,d.length-n)-1).toString(),totalCount:d.length},edges:d.slice(n,n+t).map((e,t)=>({node:e,cursor:(n+t).toString()}))}},shipping:async(e,{country:t,items:a,postalCode:r},i)=>{let{loaders:{simulationLoader:n},clients:{commerce:o}}=i,[s,l]=await Promise.all([n.load({country:t,items:a,postalCode:r}),o.checkout.address({postalCode:r,country:t})]);return{...s,address:l}},redirect:async(e,{term:t,selectedFacets:a},r)=>{if(!t&&(!a||!a.length))return null;let{redirect:i}=await r.clients.search.products({page:1,count:1,query:t??void 0,selectedFacets:a?.flatMap(transformSelectedFacet)??[],allowRedirect:!0});return{url:i}},sellers:async(e,{postalCode:t,geoCoordinates:a,country:r,salesChannel:i},n)=>{let{clients:{commerce:o}}=n,s=await o.checkout.region({postalCode:t,geoCoordinates:a,country:r,salesChannel:i}),l=s?.[0],{id:c,sellers:d}=l;return{id:c,sellers:d}},profile:async(e,{id:t},a)=>{let{clients:{commerce:r}}=a,i=await r.profile.addresses(t),n=function(e){return e&&0!==Object.keys(e).length?Object.values(e).map(e=>JSON.parse(e)):[]}(i);return{addresses:n}},productCount:async(e,{term:t},a)=>{let{clients:{search:r}}=a,i=await r.productCount({query:t??void 0});return i},userOrder:async(e,{orderId:t},a)=>{let{clients:{commerce:r}}=a;if(!t)throw new O.oY("Missing orderId");try{let e=await r.oms.userOrder({orderId:t});if(!e)throw new O.dR(`No order found for id ${t}`);let a=null;try{let e=await r.oms.getCommercialAuthorizationsByOrderId({orderId:t});a=extractRuleForAuthorization(e)}catch(e){}let i=await r.masterData.getShopperById({userId:e.purchaseAgentData?.purchaseAgents?.[0]?.userId??""})??[],n=i[0]??{};return{orderId:e.orderId,creationDate:e.creationDate,totals:e.totals,items:e.items,shippingData:e.shippingData,paymentData:e.paymentData,customData:e.customData,status:e.status,statusDescription:e.statusDescription,allowCancellation:e.allowCancellation,storePreferencesData:e.storePreferencesData,clientProfileData:e.clientProfileData,canProcessOrderAuthorization:("waiting-for-confirmation"===e.status||"waiting-for-authorization"===e.status)&&!!a,ruleForAuthorization:a,shopper:{firstName:n?.firstName||"",lastName:n?.lastName||"",email:n?.email||"",phone:n?.phone||""}}}catch(a){let e=JSON.parse(a.message).error;if(e?.message?.toLowerCase()?.includes("order not found"))throw new O.dR(`No order found for id ${t}`);if(e?.message?.toLowerCase()?.includes("acesso negado"))throw new O.lY(`You are forbidden to interact with order with id ${t}`);throw a}},listUserOrders:async(e,t,a)=>{let{clients:{commerce:r}}=a,i=await r.oms.listUserOrders(t);return{list:i.list?.map(e=>({orderId:e.orderId,creationDate:e.creationDate,clientName:e.clientName,items:e.items,totalValue:e.totalValue,status:e.status,statusDescription:e.statusDescription,ShippingEstimatedDate:e.ShippingEstimatedDate,customFields:e.customFields,currencyCode:e.currencyCode})),paging:i.paging}},accountName:async(e,t,a)=>{let{account:r,headers:i,clients:{commerce:n}}=a,o=parseJwt(getAuthCookie(i?.cookie??"",r));if(!o?.userId)return null;if(o?.isRepresentative){let e=await n.session("").catch(()=>null);if(!e)return null;let t=e.namespaces.profile??null;return`${(t?.firstName?.value??"").trim()} ${(t?.lastName?.value??"").trim()}`.trim()||""}let s=await n.licenseManager.getUserById({userId:o?.userId}).catch(()=>null);return s?.name||""},validateUser:async(e,t,a)=>{let{clients:{commerce:r}}=a;try{let e=await r.vtexid.validate();return{isValid:"Success"===e.authStatus}}catch(e){throw new O.lY("You are not allowed to access this resource")}},userDetails:async(e,t,a)=>{let{clients:{commerce:r}}=a,i=await r.session("").catch(()=>null),n=i?.namespaces.shopper??null,o=i?.namespaces.authentication??null;return{name:n?.firstName?.value??"",email:o?.storeUserEmail.value??"",role:["Admin"],orgUnit:o?.unitName?.value??""}},accountProfile:async(e,t,a)=>{let{account:r,headers:i,clients:{commerce:n}}=a,o=parseJwt(getAuthCookie(i?.cookie??"",r));if(!o?.userId)return null;if(o?.isRepresentative){let e=await n.session("").catch(()=>null);if(!e)return null;let t=e.namespaces.profile??null,a=await n.masterData.getContractById({contractId:t?.id?.value??""}),r=a?.corporateName??`${(t?.firstName?.value??"").trim()} ${(t?.lastName?.value??"").trim()}`.trim();return{name:r||"",email:t?.email?.value||"",id:t?.id?.value||""}}let s=await n.licenseManager.getUserById({userId:o?.userId}).catch(()=>null);return{name:s?.name||"",email:s?.email||"",id:s?.id||""}},pickupPoints:async(e,{geoCoordinates:t},a)=>{let{clients:{commerce:r}}=a,i=await r.checkout.pickupPoints({geoCoordinates:t});return i}},Mutation:{validateCart:validateCart,validateSession:validateSession,subscribeToNewsletter:subscribeToNewsletter,cancelOrder:cancelOrder,processOrderAuthorization:processOrderAuthorization}},getContextFactory=e=>t=>(t.storage={channel:ChannelMarshal.parse(e.channel),flags:e.flags??{},locale:e.locale,cookies:new Map},t.clients=getClients(e,t),t.loaders=getLoaders(e,t),t.account=e.account,t),getResolvers=e=>j},33999:(e,t,a)=>{a.a(e,async(e,t)=>{try{var r=a(57343),i=a(45774),n=e([i]);i=(n.then?(await n)():n)[0],(0,i.loadFilesSync)(__dirname,{extensions:[".graphql"]}).map(r.print).join("\n"),t()}catch(e){t(e)}})},57565:e=>{e.exports=JSON.parse('{"47315a3cd26ddd9c7fa963778988464341b8193f":"query ServerAccountPageQuery { accountName }","4b33c5c07f440dc7489e55619dc2211a13786e72":"fragment ServerCollectionPage on Query { collection(slug: $slug) { id } } query ServerCollectionPageQuery($slug: String!) { collection(slug: $slug) { breadcrumbList { itemListElement { item name position } } meta { selectedFacets { key value } } seo { description title } } ...ServerCollectionPage }","e855903879c6504e90269e6e010549bc6de933eb":"fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } fragment ProductDetailsFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } description gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } fragment ServerProduct on Query { product(locator: $locator) { id: productID } } query ServerProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { brand { name } breadcrumbList { itemListElement { item name position } } description gtin image { alternateName url } isVariantOf { productGroupID } name offers { highPrice lowPrice lowPriceWithTaxes offers { availability itemCondition price priceCurrency priceValidUntil seller { identifier } } priceCurrency } id: productID releaseDate seo { canonical description title } sku ...ProductDetailsFragment_product } ...ServerProduct }","2c5dca039e0aa4924e9e583f5afbe522758ca7c4":"query ServerOrderDetailsQuery($orderId: String!) { accountName userOrder(orderId: $orderId) { allowCancellation canProcessOrderAuthorization clientProfileData { corporateName email firstName isCorporate lastName phone } creationDate customFields { fields { name refId value } id type } deliveryOptionsData { contact { email name phone } deliveryOptions { address { addressId addressType city complement country entityId geoCoordinates neighborhood number postalCode receiverName reference state street versionId } deliveryChannel deliveryCompany deliveryWindow { endDateUtc price startDateUtc } friendlyDeliveryOptionName friendlyShippingEstimate items { id imageUrl name price quantity tax total uniqueId } pickupStoreInfo { additionalInfo address { addressId addressType city complement country entityId geoCoordinates neighborhood number postalCode receiverName reference state street versionId } dockId friendlyName isPickupStore } quantityOfDifferentItems selectedSla seller shippingEstimate shippingEstimateDate total } } orderId paymentData { transactions { isActive payments { bankIssuedInvoiceIdentificationNumber connectorResponses { authId } group id installments lastDigits paymentOrigin paymentSystemName redemptionCode referenceValue tid url value } } } ruleForAuthorization { dimensionId orderAuthorizationId rule { authorizationData { authorizers { authorizationDate email id type } requireAllApprovals } authorizedEmails doId id isUserAuthorized isUserNextAuthorizer name notification priority scoreInterval { accept deny } status timeout trigger { condition { conditionType description expression greatherThan lessThan } effect { description effectType funcPath } } } } shopper { email firstName lastName phone } status statusDescription storePreferencesData { currencyCode } totals { id name value } } }","ee84ac3f5b58c5e1950a927a42c5c1dd6012fcc4":"query ServerListOrdersQuery($clientEmail: String, $dateFinal: String, $dateInitial: String, $page: Int, $perPage: Int, $status: [String], $text: String) { accountName listUserOrders( page: $page perPage: $perPage status: $status dateInitial: $dateInitial dateFinal: $dateFinal text: $text clientEmail: $clientEmail ) { list { ShippingEstimatedDate clientName creationDate currencyCode customFields { type value } items { description ean id price productId quantity refId seller sellingPrice } orderId status statusDescription totalValue } paging { currentPage pages perPage total } } }","0ed4b5db8fed122d8418195d01fb91b30261d587":"query ServerProfileQuery { accountName accountProfile { email id name } }","63c6eadbe8b77c0c3c91406589755accba5cf155":"query ServerSecurity { accountName userDetails { email } }","522e5feeb80e67cee931bc98eac9d08ea75c75d2":"query ServerUserDetailsQuery { accountName userDetails { email name orgUnit role } }","e2b06da6840614d3c72768e56579b9d3b8e80802":"mutation CancelOrderMutation($data: IUserOrderCancel!) { cancelOrder(data: $data) { data } }","8c25d37c8d6e7c20ab21bb8a4f4e6a2fe320ea8d":"mutation ProcessOrderAuthorizationMutation($data: IProcessOrderAuthorization!) { processOrderAuthorization(data: $data) { isPendingForOtherAuthorizer ruleForAuthorization { dimensionId orderAuthorizationId rule { authorizationData { authorizers { authorizationDate email id type } requireAllApprovals } authorizedEmails doId id isUserAuthorized isUserNextAuthorizer name notification priority scoreInterval { accept deny } status timeout trigger { condition { conditionType description expression greatherThan lessThan } effect { description effectType funcPath } } } } } }","32f99c73c3de958b64d6bece1afe800469f54548":"query ValidateUser { validateUser { isValid } }","c2b3f8bff73ebf6ac79d758c66cabbc21ba9fcc0":"fragment CartItem on StoreOffer { itemOffered { ...CartProductItem } listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } fragment CartMessage on StoreCartMessage { status text } fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } mutation ValidateCartMutation($cart: IStoreCart!, $session: IStoreSession!) { validateCart(cart: $cart, session: $session) { messages { ...CartMessage } order { acceptedOffer { ...CartItem } orderNumber shouldSplitItem } } }","3fa04e88c811fcb5ece7206fd5aa745bdbc143a8":"query ClientPickupPointsQuery($geoCoordinates: IStoreGeoCoordinates) { pickupPoints(geoCoordinates: $geoCoordinates) { pickupPointDistances { address { city number postalCode state street } distance isActive pickupId pickupName } } }","feb7005103a859e2bc8cf2360d568806fd88deba":"mutation SubscribeToNewsletter($data: IPersonNewsletter!) { subscribeToNewsletter(data: $data) { id } }","dc912e7272e3d9f5ced206837df87f544d39d0a5":"query ClientProductCountQuery($term: String) { productCount(term: $term) { total } }","4039e05f01a2fe449e20e8b82170d0ba94b1fbe9":"fragment ProductSKUMatrixSidebarFragment_product on StoreProduct { isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { additionalProperty { name propertyID value valueReference } image { alternateName url } name offers { highPrice lowPrice lowPriceWithTaxes offerCount offers { availability itemCondition listPrice listPriceWithTaxes price priceCurrency priceValidUntil priceWithTaxes quantity sellingPrice } priceCurrency } sku } availableVariations slugsMap } } id: productID } query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductSKUMatrixSidebarFragment_product } }","e49027bc29aa10cbf7bbb0ed62239af8de1653f0":"fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } query ClientManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $sponsoredCount: Int, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }","bfc40da32b60f9404a4adb96b0856e3fbb04b076":"fragment ClientProductGallery on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { products { pageInfo { totalCount } } } } fragment Filter_facets on StoreFacet { ... on StoreFacetBoolean { __typename key label values { label quantity selected value } } ... on StoreFacetRange { __typename key label max { absolute selected } min { absolute selected } } } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ClientProductGalleryQuery($after: String!, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $term: String!) { redirect(term: $term, selectedFacets: $selectedFacets) { url } search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { facets { ...Filter_facets } metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } } ...ClientProductGallery }","47aa22eb750cb2c529e5eeafb921bfeadb67db71":"fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } fragment ClientProduct on Query { product(locator: $locator) { id: productID } } fragment ProductDetailsFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } description gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } query ClientProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductDetailsFragment_product } ...ClientProduct }","b668777678c137b8c7004297df4d8b8f2b29ee06":"fragment ProductComparisonFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { name } description gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku skuSpecifications { field { id name originalName } values { fieldId id name originalName } } slug specificationGroups { name originalName specifications { name originalName values } } unitMultiplier } query ClientManyProductsSelectedQuery($productIds: [String!]!) { products(productIds: $productIds) { ...ProductComparisonFragment_product } }","34ea14c0d4a57ddf9bc11e4be0cd2b5a6506d3d4":"query ClientProfileQuery($id: String!) { profile(id: $id) { addresses { city country geoCoordinate postalCode } } }","bbaa2ed75c4fb04842189e8d53a1d65481154e2b":"fragment ClientSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ClientSearchSuggestionsQuery($selectedFacets: [IStoreSelectedFacet!], $term: String!) { search(first: 5, term: $term, selectedFacets: $selectedFacets) { metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } suggestions { products { ...ProductSummary_product } terms { value } } } ...ClientSearchSuggestions }","e2385b0f11726d0068f96548f57a8dd441c064e3":"fragment ClientTopSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } query ClientTopSearchSuggestionsQuery($selectedFacets: [IStoreSelectedFacet!], $term: String!) { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } ...ClientTopSearchSuggestions }","15d85b65b36cb2c30fead1c68a01c3492319a819":"mutation ValidateSession($search: String!, $session: IStoreSession!) { validateSession(session: $session, search: $search) { addressType b2b { customerId firstName isRepresentative lastName permissions { canManageOrganization } savedPostalCode unitId unitName userEmail userName } channel city country currency { code symbol } deliveryMode { deliveryChannel deliveryMethod deliveryWindow { endDate startDate } } geoCoordinates { latitude longitude } locale marketingData { utmCampaign utmMedium utmSource utmiCampaign utmiPage utmiPart } person { email familyName givenName id } postalCode refreshAfter } }","c35bad22f67f3eb34fea52bb49efa6b1da6b728d":"fragment ClientShippingSimulation on Query { shipping(items: $items, postalCode: $postalCode, country: $country) { address { city } } } query ClientShippingSimulationQuery($country: String!, $items: [IShippingItem!]!, $postalCode: String!) { shipping(items: $items, postalCode: $postalCode, country: $country) { address { city neighborhood state } logisticsInfo { slas { availableDeliveryWindows { endDateUtc listPrice price startDateUtc } carrier deliveryChannel localizedEstimates price shippingEstimate } } } ...ClientShippingSimulation }","4b769cda49004c85d0d427c601eba36c37a52224":"fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ServerManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $sponsoredCount: Int, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { metadata { ...SearchEvent_metadata } products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }"}')}};
|
|
1
|
+
"use strict";exports.id=9563,exports.ids=[9563],exports.modules={48116:(e,t,r)=>{r.d(t,{Z:()=>a});let a={}},29313:(e,t,r)=>{r.d(t,{Z:()=>a});let a={}},99563:(e,t,r)=>{r.a(e,async(e,a)=>{try{r.d(t,{h:()=>execute});var i=r(99664),n=r(37886),s=r(84656),o=r(36093),l=r(77397),c=r(45774),d=r(36550),u=r(57343),p=r(71017),m=r.n(p),g=r(57565),f=r(48116),h=r(29313),y=r(17486),v=e([i,n,s,o,l,c,d]);[i,n,s,o,l,c,d]=v.then?(await v)():v;let S=new Map(Object.entries(g)),I=(0,l.E9)(y.e),customFormatError=e=>e instanceof u.GraphQLError&&(0,l.T9)(e.originalError)?e:(console.error(e),new u.GraphQLError(`Sorry, something went wrong. ${e}`)),getEnvelop=async()=>(0,i.envelop)({plugins:[(0,i.useEngine)(u),(0,i.useSchema)(function(){let e=(0,c.loadFilesSync)(m().join(process.cwd(),"@generated"),{extensions:["graphql"]}),t=(0,l.yd)(y.e);return(0,d.makeExecutableSchema)({typeDefs:e,resolvers:[t,h.Z,f.Z]})}()),(0,i.useExtendContext)(I),(0,i.useMaskedErrors)({maskError:customFormatError}),(0,n.useGraphQlJit)(),(0,o.useValidationCache)(),(0,s.useParserCache)()]}),b=getEnvelop(),execute=async(e,t={headers:{}})=>{let{operation:r,variables:a,query:i}=e,{operationHash:n,operationName:s}=r.__meta__,o=i??S.get(n);if(null==o)throw new l.oY(`No query found for operationName ${s} and operationHash ${n}.`);let c=await b,{parse:d,contextFactory:u,execute:p,schema:m}=c(t),g=await u(t),{data:f,errors:h}=await p({schema:m,document:d(o),variableValues:a,contextValue:g,operationName:s});return{data:f,errors:h,extensions:{cookies:g.storage.cookies,cacheControl:g.cacheControl}}};a()}catch(e){a(e)}})},17486:(e,t,r)=>{r.d(t,{e:()=>n});var a=r(43412),i=r.n(a);let n={platform:i().platform,account:i().api.storeId,environment:i().api.environment,subDomainPrefix:i().api.subDomainPrefix??["www"],hideUnavailableItems:i().api.hideUnavailableItems,showSponsored:i().api.showSponsored,simulationBehavior:i().api.simulationBehavior,incrementAddress:i().api.incrementAddress,channel:i().session.channel,locale:i().session.locale,flags:{enableOrderFormSync:!0,enableUnavailableItemsOnCart:i().api?.enableUnavailableItemsOnCart??!1}}},48608:(e,t,r)=>{r.a(e,async(e,a)=>{try{r.d(t,{Z:()=>s});var i=r(38722),n=e([i]);i=(n.then?(await n)():n)[0];let min=(e,t)=>"number"==typeof e&&"number"==typeof t?e>t?t:e:"number"==typeof e?e:t,minScope=(e,t)=>"string"==typeof e&&"string"==typeof t?"public"===e&&"public"===t?"public":"private":e||t,s={typeDefs:"directive @cacheControl(sMaxAge: Int, staleWhileRevalidate: Int, scope: String) on FIELD_DEFINITION",transformer:e=>(0,i.mapSchema)(e,{[i.MapperKind.OBJECT_FIELD]:t=>{let r=i.getDirective(e,t,"cacheControl")?.[0];if(r){let{sMaxAge:e,staleWhileRevalidate:a,scope:i}=r,n=t.resolve;t.resolve=(t,r,s,o)=>(s.cacheControl={sMaxAge:min(s.cacheControl?.sMaxAge,e),staleWhileRevalidate:min(s.cacheControl?.staleWhileRevalidate,a),scope:minScope(s.cacheControl?.scope,i)},n?.(t,r,s,o))}return t}})};a()}catch(e){a(e)}})},77397:(e,t,r)=>{r.a(e,async(e,a)=>{try{r.d(t,{E9:()=>getContextFactory,T9:()=>o.T9,XD:()=>o.XD,lY:()=>o.lY,oY:()=>o.oY,yd:()=>getResolvers});var i=r(46919),n=r(33999),s=r(48608),o=r(90782),l=e([i,n,s]);[i,n,s]=l.then?(await l)():l;let c={vtex:{getResolvers:i.y,getContextFactory:i.E}};s.Z;let getResolvers=e=>c[e.platform].getResolvers(e),getContextFactory=e=>c[e.platform].getContextFactory(e);a()}catch(e){a(e)}})},90782:(e,t,r)=>{r.d(t,{QW:()=>isForbiddenError,S9:()=>FastStoreError,T9:()=>isFastStoreError,XD:()=>isNotFoundError,dR:()=>NotFoundError,lY:()=>ForbiddenError,oY:()=>BadRequestError,yj:()=>UnauthorizedError});let FastStoreError=class FastStoreError extends Error{extensions;constructor(e,t){super(t),this.extensions=e,this.name="FastStoreError"}};let BadRequestError=class BadRequestError extends FastStoreError{constructor(e){super({status:400,type:"BadRequestError"},e)}};let UnauthorizedError=class UnauthorizedError extends FastStoreError{constructor(e){super({status:401,type:"UnauthorizedError"},e)}};let ForbiddenError=class ForbiddenError extends FastStoreError{constructor(e){super({status:403,type:"ForbiddenError"},e)}};let NotFoundError=class NotFoundError extends FastStoreError{constructor(e){super({status:404,type:"NotFoundError"},e)}};let isFastStoreError=e=>e?.name==="FastStoreError",isForbiddenError=e=>e?.extensions?.type==="ForbiddenError",isNotFoundError=e=>e?.extensions?.type==="NotFoundError"},39365:(e,t,r)=>{r.a(e,async(e,a)=>{try{r.d(t,{K:()=>VtexCommerce});var i=r(84802),n=r(10602),s=r(77397),o=r(18673),l=e([s]);s=(l.then?(await l)():l)[0];let c={method:"POST",headers:{"content-type":"application/json"}},VtexCommerce=({account:e,environment:t,incrementAddress:r,subDomainPrefix:a},l)=>{let d=`https://${e}.${t}.com.br`,u=(0,o.oc)(l),p=(0,o.H6)(l),m=(0,o.q4)(l),g=new Headers(l.headers).get("x-forwarded-host")??l.headers?.host??"",f=a&&a.map(e=>e+".").find(e=>g.includes(e))||"",h=g.replace(f,"");return{catalog:{salesChannel:e=>(0,n.I)(`${d}/api/catalog_system/pub/saleschannel/${e}`,void 0,{storeCookies:u}),brand:{list:()=>(0,n.I)(`${d}/api/catalog_system/pub/brand/list`,void 0,{storeCookies:u})},category:{tree:(e=3)=>(0,n.I)(`${d}/api/catalog_system/pub/category/tree/${e}`,void 0,{storeCookies:u})},portal:{pagetype:e=>(0,n.I)(`${d}/api/catalog_system/pub/portal/pagetype/${e}`,void 0,{storeCookies:u})},products:{crossselling:({type:e,productId:t,groupByProduct:r=!0})=>{let a=new URLSearchParams({sc:l.storage.channel.salesChannel,groupByProduct:r.toString()});return(0,n.I)(`${d}/api/catalog_system/pub/products/crossselling/${e}/${t}?${a}`,void 0,{storeCookies:u})}}},checkout:{simulation:(e,{salesChannel:t}=l.storage.channel)=>{let r=new URLSearchParams({sc:t}),a=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForms/simulation?${r.toString()}`,{...c,headers:a,body:JSON.stringify(e)},{storeCookies:u})},shippingData:({id:e,index:t,deliveryMode:a,selectedAddresses:i},s)=>{let o=s?{startDateUtc:a?.deliveryWindow?.startDate,endDateUtc:a?.deliveryWindow?.endDate}:null,l={logisticsInfo:Array.from({length:t},(e,t)=>({itemIndex:t,selectedDeliveryChannel:a?.deliveryChannel||null,selectedSla:a?.deliveryMethod||null,deliveryWindow:o})),selectedAddresses:i,clearAddressIfPostalCodeNotFound:r},m=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForm/${e}/attachments/shippingData`,{...c,headers:m,body:JSON.stringify(l)},{storeCookies:u})},marketingData:({id:e,marketingData:t})=>{let r=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForm/${e}/attachments/marketingData`,{headers:r,body:JSON.stringify(t),method:"POST"},{storeCookies:u})},orderForm:({id:e,refreshOutdatedData:t=!0,channel:r=l.storage.channel})=>{let{salesChannel:a}=r,i=new URLSearchParams({refreshOutdatedData:t.toString(),sc:a}),s=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForm/${e}?${i.toString()}`,{...c,headers:s},{storeCookies:u})},clearOrderFormMessages:({id:e})=>{let t=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForm/${e}/messages/clear`,{...c,headers:t,body:"{}"})},updateOrderFormItems:({id:e,orderItems:t,allowOutdatedData:r="paymentData",salesChannel:a=l.storage.channel.salesChannel,shouldSplitItem:i=!0})=>{let s=new URLSearchParams({allowOutdatedData:r,sc:a}),o=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForm/${e}/items?${s}`,{headers:o,body:JSON.stringify({orderItems:t,noSplitItem:!i}),method:"PATCH"},{storeCookies:u})},setCustomData:({id:e,appId:t,key:r,value:a})=>{let i=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orderForm/${e}/customData/${t}/${r}`,{headers:i,body:JSON.stringify({value:a}),method:"PUT"})},region:async({postalCode:e,geoCoordinates:t,country:r,salesChannel:a})=>{let i=new URLSearchParams({country:r,sc:a??""});e?i.append("postalCode",e):i.append("geoCoordinates",`${t?.longitude};${t?.latitude}`);let s=`${d}/api/checkout/pub/regions/?${i.toString()}`,o=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(s,{headers:o},{storeCookies:u})},address:async({postalCode:e,country:t})=>{let r=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/postal-code/${t}/${e}`,{headers:r},{storeCookies:u})},cancelOrder:({orderId:e,customerEmail:t,reason:r})=>{let a=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/checkout/pub/orders/${e}/user-cancel-request`,{method:"POST",headers:a,body:JSON.stringify({customerEmail:t,reason:r})},{})},pickupPoints:({geoCoordinates:e})=>{if(!e)throw Error("Missing required parameter for listing pickup points.");let t=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/logistics-shipping/pickuppoints/_search`,{method:"POST",headers:t,body:JSON.stringify({coordinate:e})},{storeCookies:u})}},session:e=>{let t=new URLSearchParams(e);t.set("items","profile.id,profile.email,profile.firstName,profile.lastName,shopper.firstName,shopper.lastName,store.channel,store.countryCode,store.cultureInfo,store.currencyCode,store.currencySymbol,authentication.customerId,authentication.storeUserId,authentication.storeUserEmail,authentication.unitId,authentication.unitName,checkout.regionId,public.postalCode");let r=p({"content-type":"application/json"}),a=i.parse(l?.headers?.cookie??"")?.vtex_session;return(0,n.I)(`${d}/api/sessions?${t.toString()}`,{method:a?"PATCH":"POST",headers:r,body:"{}"},{storeCookies:u})},subscribeToNewsletter:e=>(0,n.I)(`${d}/api/dataentities/NL/documents/`,{...c,body:JSON.stringify({...e,isNewsletterOptIn:!0}),method:"PATCH"},{storeCookies:u}),profile:{addresses:async t=>{let r=m(h,e);return(0,n.I)(`${d}/api/profile-system/pvt/profiles/${t}/addresses`,{headers:r},{storeCookies:u})}},oms:{userOrder:({orderId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/oms/user/orders/${t}`,{method:"GET",headers:r},{storeCookies:u})},listUserOrders:({page:e,status:t,dateInitial:r,dateFinal:a,text:i,clientEmail:s,perPage:o})=>{let l=new URLSearchParams;if(r){let e=new Date(r).setHours(0,0,0,0);r=new Date(e).toISOString()}if(a){let e=new Date(a).setHours(23,59,59,999);a=new Date(e).toISOString()}i&&l.append("text",i),t&&t.length>0&&l.append("status",t.filter(Boolean).join(",")),r&&a?l.append("creation_date",`creationDate:[${r} TO ${a}]`):r?l.append("creation_date",`creationDate:[${r} TO *]`):a&&l.append("creation_date",`creationDate:[* TO ${a}]`),s&&l.append("clientEmail",s),e&&l.append("page",e.toString()),o&&l.append("per_page",o.toString());let c=p({"content-type":"application/json","X-FORWARDED-HOST":h});return(0,n.I)(`${d}/api/oms/user/orders?${l.toString()}`,{method:"GET",headers:c},{storeCookies:u})},getCommercialAuthorizationsByOrderId:({orderId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/${e}/commercial-authorizations/order/${t}`,{method:"GET",headers:r},{storeCookies:u})},processOrderAuthorization:async({orderAuthorizationId:t,dimensionId:r,ruleId:a,approved:i})=>{let s=m(h,e);return(0,n.I)(`${d}/${e}/commercial-authorizations/${t}/callback`,{method:"POST",headers:s,body:JSON.stringify({params:{ruleId:a,dimensionId:r,score:i?100:0}})},{storeCookies:u})}},units:{getUnitByUserId:({userId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/units/v1/${t}/unit`,{method:"GET",headers:r},{})},getOrgUnitById:({orgUnitId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/units/v1/${t}`,{method:"GET",headers:r},{})},getScopesByOrgUnit:({orgUnitId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/units/v1/${t}/scopes`,{method:"GET",headers:r},{})}},licenseManager:{getUserById:({userId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/license-manager/users/${t}`,{method:"GET",headers:r},{})},getUserByEmail:({email:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/license-manager/pvt/users/${t}`,{method:"GET",headers:r},{})},getUserGrantedResources:({userId:t,resourceKey:r})=>{let a=m(h,e);return(0,n.I)(`${d}/api/license-manager/storefront/users/${t}/resources/${r}/granted`,{method:"GET",headers:a},{})}},masterData:{getContractById:({contractId:t})=>{let r=m(h,e);return(0,n.I)(`${d}/api/dataentities/CL/documents/${t}?_fields=_all`,{method:"GET",headers:r},{})},getShopperById:({userId:e})=>{if(!e)throw new s.oY("Missing userId to fetch shopper name.");let t=process.env.FS_DISCOVERY_APP_KEY??"",r=process.env.FS_DISCOVERY_APP_TOKEN??"";if(!t||!r)throw new s.lY("No authentication AppKey and AppToken passed.");let a=e.replace(/-/g,"");return(0,n.I)(`${d}/api/dataentities/shopper/search?_where=(userId=${a} OR userId=${e})&_fields=_all&_schema=v1`,{method:"GET",headers:{Accept:"application/json","content-type":"application/json","X-FORWARDED-HOST":h,"X-VTEX-API-AppKey":t,"X-VTEX-API-AppToken":r}},{})}},vtexid:{validate:()=>{let t=m(h,e);return(0,n.I)(`${d}/api/vtexid/credential/validate`,{headers:t,body:JSON.stringify({token:t.VtexIdclientAutCookie}),method:"POST"},{storeCookies:u})}}}};a()}catch(e){a(e)}})},10602:(e,t,r)=>{r.d(t,{I:()=>fetchAPI});var a=r(47881),i=r.n(a);let n=JSON.parse('{"u2":"@faststore/api","i8":"3.88.2"}');var s=r(90782);let o=`${n.u2}@${n.i8}`,fetchAPI=async(e,t,r)=>{let a=await i()(e,{...t,headers:{...t?.headers??{},"User-Agent":o}});if(a.ok)return r?.storeCookies&&r.storeCookies(a.headers),204!==a.status?a.json():void 0;console.error(e,t,a);let n=await a.text();if("number"==typeof a?.status)switch(a.status){case 400:throw new s.oY(n);case 401:throw new s.yj(n);case 403:throw new s.lY(n);case 404:throw new s.dR(n);default:throw new s.S9({status:a.status,type:"UnknownError"},n)}throw Error(n)}},73760:(e,t,r)=>{r.a(e,async(e,a)=>{try{r.d(t,{Z:()=>getClients});var i=r(39365),n=r(85295),s=e([i]);i=(s.then?(await s)():s)[0];let getClients=(e,t)=>{let r=(0,n.Z)(e,t),a=(0,i.K)(e,t);return{search:r,commerce:a}};a()}catch(e){a(e)}})},85295:(e,t,r)=>{r.d(t,{Z:()=>IntelligentSearch});var a=r(18673),i=r(10602);let n="trade-policy",s="region-id",o="fuzzy",l="operator",c="pickupPoint",d="shipping",u="delivery-options",p="in-stock",m=new Set([n,s,o,l,c,d,u,p]),isFuzzyFacet=e=>"fuzzy"===e.key&&("0"===e.value||"1"===e.value||"auto"===e.value),isOperatorFacet=e=>"operator"===e.key&&("and"===e.value||"or"===e.value),IntelligentSearch=({account:e,environment:t,hideUnavailableItems:r,simulationBehavior:g,showSponsored:f,subDomainPrefix:h},y)=>{let v=`https://${e}.${t}.com.br/api/io`,S=(0,a.H6)(y),I=new Headers(y.headers).get("x-forwarded-host")??y.headers?.host??"",b=h&&h.map(e=>e+".").find(e=>I.includes(e))||"",C=I.replace(b,""),$=S({"content-type":"application/json","X-FORWARDED-HOST":C}),getPolicyFacet=()=>{let{salesChannel:e}=y.storage.channel;return e?{key:n,value:e}:null},getRegionFacet=()=>{let{regionId:e,seller:t}=y.storage.channel,r=t?Buffer.from(`SW#${t}`).toString("base64"):null,a=r??e;return a?{key:s,value:a}:null},addDefaultFacets=e=>{let t=e.filter(({key:e})=>!m.has(e)),r=e.find(({key:e,value:t})=>e===d&&"all-delivery-methods"!==t)??null,a=e.find(({key:e,value:t})=>e===u&&"all-delivery-options"!==t)??null,i=e.find(({key:e})=>e===n)??getPolicyFacet(),o=e.find(({key:e})=>e===s)??getRegionFacet();return null!==r&&t.push(r),null!==a&&t.push(a),null!==i&&t.push(i),null!==o&&t.push(o),t},addSearchParamsFacets=(e,t)=>{let r=e.find(({key:e})=>e===o)??null,a=e.find(({key:e})=>e===l)??null,i=e.find(({key:e})=>e===c)??null;r&&isFuzzyFacet(r)&&t.append(o,r.value),a&&isOperatorFacet(a)&&t.append(l,a.value),i&&t.append(c,i.value)},search=({query:e="",page:t,count:a,sort:n="",selectedFacets:s=[],type:o,showInvisibleItems:l,sponsoredCount:c,hideUnavailableItems:d,allowRedirect:u=!1})=>{let m=new URLSearchParams({page:(t+1).toString(),count:0!==a?a.toString():"1",query:e,sort:n,locale:y.storage.locale});if(addSearchParamsFacets(s,m),l&&m.append("show-invisible-items","true"),void 0!==r){let e=s.find(({key:e})=>e===p),t=e?e.value:d?.toString()??r.toString();m.append("hideUnavailableItems",t)}void 0!==g&&m.append("simulationBehavior",g.toString()),void 0!==f&&m.append("showSponsored",f.toString()),void 0!==c&&m.append("sponsoredCount",c.toString()),void 0!==u&&m.append("allowRedirect",u.toString());let h=addDefaultFacets(s).map(({key:e,value:t})=>`${e}/${t}`).join("/");return(0,i.I)(`${v}/_v/api/intelligent-search/${o}/${h}?${m.toString()}`,{headers:$})};return{facets:e=>search({...e,type:"facets"}),products:e=>search({...e,type:"product_search"}),suggestedTerms:e=>{let t=new URLSearchParams({query:e.query?.toString()??"",locale:y.storage.locale});return(0,i.I)(`${v}/_v/api/intelligent-search/search_suggestions?${t.toString()}`,{headers:$})},topSearches:()=>{let e=new URLSearchParams({locale:y.storage.locale});return(0,i.I)(`${v}/_v/api/intelligent-search/top_searches?${e.toString()}`,{headers:$})},productCount:e=>{let t=new URLSearchParams;return e?.query&&t.append("query",e.query.toString()),(0,i.I)(`${v}/_v/api/intelligent-search/catalog_count?${t.toString()}`,{headers:$})}}}},46919:(e,t,r)=>{r.a(e,async(e,a)=>{try{r.d(t,{E:()=>getContextFactory,y:()=>getResolvers});var i=r(73760),n=r(11849),s=r(40468),o=r(77760),l=r(18668),c=r(71042),d=r(44452),u=r(95109),p=r(97097),m=r(14685),g=r(72541),f=r(41830),h=r(92584),y=r(1402),v=r(26465),S=r(38064),I=r(28881),b=r(98521),C=r(2146),$=r(13140),P=r(20914),w=e([i]);i=(w.then?(await w)():w)[0];let O={StoreCollection:l.s,StoreAggregateOffer:s.P,StoreProduct:g.M,StoreSeo:I.X,StoreFacet:c.Mj,StoreFacetBoolean:c.fZ,StoreFacetRange:c.Q_,StoreFacetValueBoolean:d.N,StoreOffer:m.u,StoreAggregateRating:o.C,StoreReview:v.e,StoreProductGroup:f.Z,StoreSearchResult:S.R,StorePropertyValue:h.X,SkuVariants:C.w,ShippingSLA:b.x,UserOrderResult:$.r,ObjectOrString:p.P,Query:y.A,Mutation:u.m},getContextFactory=e=>t=>(t.storage={channel:P.Z.parse(e.channel),flags:e.flags??{},locale:e.locale,cookies:new Map},t.clients=(0,i.Z)(e,t),t.loaders=(0,n.R)(e,t),t.account=e.account,t),getResolvers=e=>O;a()}catch(e){a(e)}})},95205:(e,t,r)=>{r.d(t,{i:()=>getCollectionLoader,n:()=>isCollectionPageType});var a=r(66464),i=r.n(a),n=r(81786),s=r.n(n),o=r(90782);let l=new Set(["brand","category","department","subcategory","collection","cluster"]),isCollectionPageType=e=>"string"==typeof e.pageType&&l.has(e.pageType.toLowerCase()),getCollectionLoader=(e,t)=>{let r=s()(20),loader=async e=>Promise.all(e.map(e=>r(async()=>{let r=await t.commerce.catalog.portal.pagetype(e);if(isCollectionPageType(r))return r;throw new o.dR(`Catalog returned ${r.pageType} for slug: ${e}. This usually happens when there is more than one category with the same name in the same category tree level.`)})));return new(i())(loader,{batch:!1})}},11849:(e,t,r)=>{r.d(t,{R:()=>getLoaders});var a=r(66464),i=r.n(a);let getSalesChannelLoader=(e,t)=>{let loader=async e=>Promise.all(e.map(e=>t.commerce.catalog.salesChannel(e)));return new(i())(loader)};var n=r(81786),s=r.n(n);let getSimulationLoader=(e,t)=>{let r=s()(1),loader=async e=>{let r=e.reduce((e,{items:t})=>[...e,t],[]),a=[...r.flat()],i=await t.commerce.checkout.simulation({country:e[0].country,postalCode:e[0].postalCode,items:a}),n=i.items.reduce((e,t)=>{let r=t.requestIndex;return"number"==typeof r&&r<e.length&&(e[r]=t),e},Array(a.length).fill(null)),s=r.reduce((e,t)=>[...e,t.length+e[e.length-1]],[0]);return r.map((e,t)=>({...i,items:n.slice(s[t],s[t+1]).filter(e=>!!e)}))},limited=async e=>r(loader,e);return new(i())(limited,{maxBatchSize:50})};var o=r(96693),l=r(90782);let getSkuLoader=({flags:e},t)=>{let loader=async r=>{let a=r.map(e=>e.split("-")[0]),i=r.some(e=>"invisibleItems"===e.split("-")[1]),{products:n}=await t.search.products({query:`sku:${a.join(";")}`,page:0,count:a.length,showInvisibleItems:i,...e?.enableUnavailableItemsOnCart&&{hideUnavailableItems:!1}}),s=n.reduce((e,t)=>{for(let r of t.items)e[r.itemId]=(0,o.j)(r,t);return e},{}),c=a.map(e=>s[e]),d=a.filter(e=>!s[e]);if(d.length>0)throw new l.dR(`Search API did not found the following skus: ${d.join(",")}`);return c};return new(i())(loader,{maxBatchSize:99})};var c=r(95205);let getLoaders=(e,{clients:t})=>{let r=getSkuLoader(e,t),a=getSimulationLoader(e,t),i=(0,c.i)(e,t),n=getSalesChannelLoader(e,t);return{skuLoader:r,simulationLoader:a,collectionLoader:i,salesChannelLoader:n}}},40468:(e,t,r)=>{r.d(t,{P:()=>n});var a=r(92222),i=r(92170);let getHighPrice=(e,t={includeTaxes:!1})=>{let r=e.filter(a.pz),n=r[r.length-1],s=n?(0,a.nt)(n):0;return t.includeTaxes?(0,i.J)(s,n?.Tax,n?.product?.unitMultiplier):s},getLowPrice=(e,t={includeTaxes:!1})=>{let[r]=e.filter(a.pz),n=r?(0,a.nt)(r):0;return t.includeTaxes?(0,i.J)(n,r?.Tax,r?.product?.unitMultiplier):n},n={highPrice:e=>getHighPrice(e),lowPrice:e=>getLowPrice(e),lowPriceWithTaxes:e=>getLowPrice(e,{includeTaxes:!0}),offerCount:e=>e.length,priceCurrency:async(e,t,r)=>{let{loaders:{salesChannelLoader:a},storage:{channel:i}}=r,n=await a.load(i.salesChannel);return n.CurrencyCode??""},offers:e=>e}},77760:(e,t,r)=>{r.d(t,{C:()=>a});let a={ratingValue:()=>5,reviewCount:()=>0}},18668:(e,t,r)=>{r.d(t,{s:()=>n});var a=r(95205),i=r(60899);let isBrand=e=>"brand"===e.type||(0,a.n)(e)&&"brand"===e.pageType.toLowerCase(),isCollection=e=>(0,a.n)(e)&&"collection"===e.pageType.toLowerCase(),slugifyRoot=e=>isBrand(e)||isCollection(e)?(0,i.l)(e.name):(0,a.n)(e)?new URL(`https://${e.url}`).pathname.slice(1).toLowerCase():new URL(e.url).pathname.slice(1).toLowerCase(),n={id:({id:e})=>e.toString(),slug:e=>slugifyRoot(e),seo:e=>isBrand(e)||(0,a.n)(e)?{title:e.title??e.name,description:e.metaTagDescription}:{title:e.Title,description:e.MetaTagDescription},type:e=>isBrand(e)?"Brand":(0,a.n)(e)?e.pageType:0===e.level?"Department":"Category",meta:e=>{let t=slugifyRoot(e);return isBrand(e)?{selectedFacets:[{key:"brand",value:t}]}:isCollection(e)?{selectedFacets:[{key:"productclusterids",value:e.id}]}:{selectedFacets:t.split("/").map((e,t)=>({key:`category-${t+1}`,value:e}))}},breadcrumbList:async(e,t,r)=>{let{loaders:{collectionLoader:a}}=r,i=slugifyRoot(e),n=i.split("/").filter(e=>!!e),s=n.map((e,t)=>n.slice(0,t+1).join("/")),o=await Promise.all(s.map(async e=>{let t=await a.load(e);return{slug:e,...t}}));return{itemListElement:o.map((e,t)=>({item:isCollection(e)?`/${e.slug}`:new URL(`https://${e.url}`).pathname.toLowerCase(),name:e.name,position:t+1})),numberOfItems:o.length}}}},44452:(e,t,r)=>{r.d(t,{N:()=>a});let a={value:({value:e})=>e,label:({name:e})=>e||"unknown",selected:({selected:e})=>e,quantity:({quantity:e})=>e}},71042:(e,t,r)=>{r.d(t,{Mj:()=>n,Q_:()=>o,fZ:()=>s});var a=r(97911),i=r(7201);let n={__resolveType:({type:e,values:t})=>"TEXT"!==e&&"DELIVERY"!==e?"StoreFacetRange":t&&0!==t.length&&t.every(e=>e.range)?"StoreFacetRange":"StoreFacetBoolean"},s={key:({key:e})=>e,label:({name:e})=>e,values:({values:e})=>e.sort((e,t)=>e.name.localeCompare(t.name))},o={key:({key:e})=>e,label:({name:e})=>e,min:({values:e,key:t},r,{storage:{searchArgs:n}})=>{let s=(0,a.Vz)(n?.selectedFacets?.find(e=>e.key===t)?.value??""),o=(0,i.V)(e,(e,t)=>e.range.from-t.range.from),l=o?.range?.from??0;return{selected:s?.[0]??l,absolute:l}},max:({values:e,key:t},r,{storage:{searchArgs:n}})=>{let s=(0,a.Vz)(n?.selectedFacets?.find(e=>e.key===t)?.value??""),o=(0,i.V)(e,(e,t)=>t.range.to-e.range.to),l=o?.range?.to??0;return{selected:s?.[1]??l,absolute:l}}}},95109:(e,t,r)=>{r.d(t,{m:()=>m});var a=r(90782);let cancelOrder=async(e,{data:t},{clients:{commerce:r}})=>{if(!t?.orderId)throw new a.oY("Missing orderId");let i=await r.checkout.cancelOrder(t);return{data:i?.data}};var i=r(54107);let processOrderAuthorization=async(e,{data:t},{clients:{commerce:r}})=>{let a=await r.oms.processOrderAuthorization(t),n=(0,i.U)(a),s=!n&&(0,i.S)(a);return{isPendingForOtherAuthorizer:s,ruleForAuthorization:n}},subscribeToNewsletter=async(e,{data:t},{clients:{commerce:r}})=>{let a=await r.subscribeToNewsletter(t);return{id:a?.Id}};var n=r(12404),s=r.n(n),o=r(84802),l=r(66037),c=r(43606),d=r(25372);let createNewAddress=e=>{let t=e.postalCode,r=e.geoCoordinates,a={addressType:e.addressType||null,postalCode:t||null,city:null,state:null,country:e.country||null,street:null,number:null,neighborhood:null,complement:null,reference:null,geoCoordinates:[]};if(r){let e="object"==typeof r&&"latitude"in r?r.latitude:null,t="object"==typeof r&&"longitude"in r?r.longitude:null;a.geoCoordinates=null!==e&&null!==t?[t,e]:[]}return[a]},getAddressOrderForm=(e,t,r)=>{let a=t.postalCode,i=t.geoCoordinates,n=e?.shippingData?.availableAddresses??[],s=e?.shippingData?.selectedAddresses??[];if(!r&&s.length>0)return[s[0]];if(r&&n.length>0)for(let e of n){if(a&&i){let t=e.postalCode===a||e.geoCoordinates[0]===i.longitude&&e.geoCoordinates[1]===i.latitude;if(t)return[e]}if(a&&!i){let t=e.postalCode===a;if(t)return[e]}if(i&&!a){let t=e.geoCoordinates[0]===i.longitude&&e.geoCoordinates[1]===i.latitude;if(t)return[e]}}return null},shouldUpdateShippingData=(e,t)=>{if(!hasSessionPostalCodeOrGeoCoordinates(t)||!hasItems(e))return{updateShipping:!1,addressChanged:!1};let[r]=e?.shippingData?.selectedAddresses??[];if(checkPostalCode(r,t.postalCode)||checkGeoCoordinates(r,t.geoCoordinates)||checkAddressType(r,t.addressType))return{updateShipping:!0,addressChanged:!0};let{logisticsInfo:a}=e.shippingData;return shouldUpdateDeliveryInfo(a,t)?{updateShipping:!0,addressChanged:!1}:{updateShipping:!1,addressChanged:!1}},hasSessionPostalCodeOrGeoCoordinates=e=>!!e.postalCode||e.geoCoordinates?.latitude&&e.geoCoordinates?.longitude,checkPostalCode=(e,t)=>"string"==typeof t&&e?.postalCode!==t,checkGeoCoordinates=(e,t)=>"number"==typeof t?.latitude&&"number"==typeof t?.longitude&&(e?.geoCoordinates[0]!==t?.longitude||e?.geoCoordinates[1]!==t?.latitude),checkAddressType=(e,t)=>"string"==typeof t&&e?.addressType!==t,hasItems=e=>0!==e.items.length,shouldUpdateDeliveryInfo=(e,t)=>{let r=t?.deliveryMode?.deliveryChannel,a=t?.deliveryMode?.deliveryMethod,{startDate:i,endDate:n}=t?.deliveryMode?.deliveryWindow||{};return e.some(({selectedDeliveryChannel:e,selectedSla:t,slas:s})=>{let o=r&&e!==r,l=a&&t!==a;return s?.some(e=>!!o&&e.deliveryChannel===r||!!l&&e.id===a||i&&n&&e.deliveryChannel===r&&e.id===a&&(!e?.deliveryWindow||e?.deliveryWindow?.startDateUtc!==i||e?.deliveryWindow?.endDateUtc!==n)&&e.availableDeliveryWindows?.some(e=>e?.startDateUtc===i&&e?.endDateUtc===n))})},isAttachment=e=>e.valueReference===d.Cr.attachment,getId=e=>[e.itemOffered.sku,e.seller.identifier,e.price<.01?"Gift":void 0,e.itemOffered.additionalProperty?.filter(isAttachment).map(d.Ih).join("-")].filter(Boolean).join("::"),orderFormItemToOffer=(e,t)=>({listPrice:e.listPrice/100,price:e.sellingPrice/100,quantity:e.quantity,seller:{identifier:e.seller},itemOffered:{sku:e.id,image:[],name:e.name,additionalProperty:e.attachments.map(d.Vb)},index:t}),offerToOrderItemInput=e=>({quantity:e.quantity,seller:e.seller.identifier,id:e.itemOffered.sku,index:e.index,attachments:(e.itemOffered.additionalProperty?.filter(isAttachment)??[]).map(e=>({name:e.name,content:e.value}))}),groupById=e=>e.reduce((e,t)=>{let r=getId(t);return e.has(r)||e.set(r,[]),e.get(r)?.push(t),e},new Map),equals=(e,t)=>{let pick=(e,t)=>({...e,itemOffered:{sku:e.itemOffered.sku},index:t}),r=t.items.map(orderFormItemToOffer).map(pick),a=e.acceptedOffer.map(pick),i=e.orderNumber===t.orderFormId,n=s()(r,a);return i&&n};function hasChildItem(e,t){return e?.some(r=>null!==r.parentItemIndex&&void 0!==r.parentItemIndex&&e[r.parentItemIndex]?.id===t)}function hasParentItem(e,t){return e?.some(e=>e.id===t&&null!==e.parentItemIndex)}let joinItems=e=>{let t=e.items.reduce((t,r,a)=>{let i=hasParentItem(e.items,r.id)||hasChildItem(e.items,r.id)?`${getId(orderFormItemToOffer(r))}::${a}`:getId(orderFormItemToOffer(r));return t[i]||(t[i]=[]),t[i].push(r),t},{});return{...e,items:Object.values(t).map(e=>{let[t]=e,r=e.reduce((e,t)=>e+t.quantity,0),a=e.reduce((e,t)=>e+(t?.priceDefinition?.total??(t?.quantity??0)*(t?.sellingPrice??0)),0);return{...t,quantity:r,sellingPrice:a/r}})}},orderFormToCart=async(e,t,r)=>({order:{orderNumber:e.orderFormId,acceptedOffer:e.items.map(async e=>({...e,product:await t.load(`${e.id}-invisibleItems`)})),shouldSplitItem:r},messages:e.messages.map(({text:e,status:t})=>({text:e,status:t.toUpperCase()}))}),getOrderFormEtag=({items:e})=>(0,c.F)(JSON.stringify(e)),setOrderFormEtag=async(e,t)=>{try{let r=await t.checkout.setCustomData({id:e.orderFormId,appId:"faststore",key:"cartEtag",value:getOrderFormEtag(e)});return r}catch(e){throw console.error('Error while setting custom data to orderForm.\n Make sure to add the following custom app to the orderForm: \n{"fields":["cartEtag"],"id":"faststore","major":1}.\n More info at: https://developers.vtex.com/vtex-rest-api/docs/customizable-fields-with-checkout-api'),e}},isOrderFormStale=e=>{let t=e.customData?.customApps.find(e=>"faststore"===e.id),r=t?.fields?.cartEtag;if(null==r)return!0;let a=getOrderFormEtag(e);return a!==r},getOrderForm=async(e,{clients:{commerce:t}})=>t.checkout.orderForm({id:e}),clearOrderFormMessages=async(e,{clients:{commerce:t}})=>t.checkout.clearOrderFormMessages({id:e}),updateOrderFormShippingData=async(e,t,{clients:{commerce:r}})=>{if(!t)return e;let{updateShipping:a,addressChanged:i}=shouldUpdateShippingData(e,t);if(a){let a=getAddressOrderForm(e,t,i),n=a||createNewAddress(t),s=!!t.deliveryMode?.deliveryWindow;return s&&await r.checkout.shippingData({id:e.orderFormId,index:e.items.length,deliveryMode:t.deliveryMode,selectedAddresses:n},!1),r.checkout.shippingData({id:e.orderFormId,index:e.items.length,deliveryMode:t.deliveryMode,selectedAddresses:n},!0)}return e},getCookieCheckoutOrderNumber=(e,t)=>{if(!e)return"";let r=(0,o.parse)(e),a=r[t];return a?a.split("=")[1]:""},validateCart=async(e,{cart:{order:t},session:r},a)=>{let i=getCookieCheckoutOrderNumber(a.headers.cookie,"checkout.vtex.com"),n=""!==i?i:t?.orderNumber,{acceptedOffer:o,shouldSplitItem:c}=t,{clients:{commerce:d},loaders:{skuLoader:u}}=a,p=r?.channel,m=r?.locale;p&&(0,l.u)(a,p),m&&(0,l.V)(a,m);let g=await getOrderForm(n,a);0!==g.messages.length&&await clearOrderFormMessages(n,a);let f=isOrderFormStale(g);if(f){let e=await setOrderFormEtag(g,d).then(joinItems);if(n)return orderFormToCart(e,u,c)}let h=groupById(o),y=groupById(g.items.map(orderFormItemToOffer)),v=Array.from(y.entries()),S=Array.from(h.entries()),{itemsToAdd:I,itemsToUpdate:b}=S.reduce((e,[t,r])=>{let a=y.get(t);if(!a)return r.forEach(t=>e.itemsToAdd.push(t)),e;let[i,...n]=a;if(hasParentItem(g.items,i.itemOffered.sku)||hasChildItem(g.items,i.itemOffered.sku))return e.itemsToUpdate.push(i),e;let s=r.reduce((e,t)=>e+t.quantity,0);return e.itemsToUpdate.push({...i,quantity:s}),n.forEach(t=>e.itemsToUpdate.push({...t,quantity:0})),e},{itemsToAdd:[],itemsToUpdate:[]}),C=v.filter(([e])=>!h.has(e)).flatMap(([,e])=>e.map(e=>({...e,quantity:0}))),$=[...I,...b,...C].map(offerToOrderItemInput);if(0===$.length)return null;let P=await d.checkout.updateOrderFormItems({id:g.orderFormId,orderItems:$,shouldSplitItem:c}).then(e=>updateOrderFormShippingData(e,r,a)).then(e=>{if(r?.marketingData){let t={...e.marketingData,...r.marketingData};return d.checkout.marketingData({id:g.orderFormId,marketingData:t})}return e}).then(e=>setOrderFormEtag(e,d)).then(joinItems),w=s()(g.messages,P.messages);return equals(t,P)&&w?null:orderFormToCart(P,u,c)};var u=r(20914),p=r(18673);async function getPreciseLocationData(e,t,r){try{let a=await e.commerce.checkout.address({postalCode:r,country:t}),[i,n]=a.geoCoordinates;return{city:a.city,geoCoordinates:{latitude:n,longitude:i}}}catch(e){throw console.error(`Error while getting geo coordinates for the current postal code (${r}) and country (${t}).
|
|
2
|
+
`),e}}let validateSession=async(e,{session:t,search:r},{clients:a,headers:i,account:n})=>{let o;let l=u.Z.parse(t.channel??""),c=String(t.postalCode??""),d=t.country??"",m=t.city??null,g=t.geoCoordinates??null,f=!m||!g;if(f&&""!==c&&""!==d){let e=await getPreciseLocationData(a,d,c);m=e.city,g=e.geoCoordinates}let h=new URLSearchParams(r);h.has("facets")&&h.delete("facets");let y=h.get("sc")??l.salesChannel;h.set("sc",y),c&&h.set("postalCode",c),d&&h.set("country",d),g&&h.set("geoCoordinates",`${g.longitude},${g.latitude}`);let{marketingData:v}=t,S={utmCampaign:h.get("utm_campaign")??v?.utmCampaign??"",utmMedium:h.get("utm_medium")??v?.utmMedium??"",utmSource:h.get("utm_source")??v?.utmSource??"",utmiCampaign:h.get("utmi_cp")??v?.utmiCampaign??"",utmiPage:h.get("utmi_p")??v?.utmiPage??"",utmiPart:h.get("utmi_pc")??v?.utmiPart??""},I=(0,p.aj)((0,p.w5)(i?.cookie??"",n)),b=I?.isRepresentative,C=I?.customerId,$=I?.unitId,P=I?.userId,[w,O]=await Promise.all([a.commerce.session(h.toString()).catch(()=>null),!!P&&a.commerce.licenseManager.getUserGrantedResources({userId:P,resourceKey:"ManageOrganizationAndContract"}).catch(()=>!1)]),k=w?.namespaces.profile??null,F=w?.namespaces.shopper??null,D=w?.namespaces.store??null,x=w?.namespaces.authentication??null,N=w?.namespaces.checkout??null,T=w?.namespaces.public??null;if(l.seller&&(c||g)){let e=await a.commerce.checkout.region({postalCode:c,geoCoordinates:g,country:d,salesChannel:y}),t=e?.[0];o=t?.sellers.find(e=>l.seller===e.id)}let E={...t,currency:{code:D?.currencyCode?.value??t.currency.code,symbol:D?.currencySymbol?.value??t.currency.symbol},country:D?.countryCode?.value??d,channel:u.Z.stringify({salesChannel:D?.channel?.value??l.salesChannel,regionId:N?.regionId?.value??l.regionId,seller:o?.id,hasOnlyDefaultSalesChannel:!D?.channel?.value}),b2b:b?{isRepresentative:b??!1,customerId:x?.customerId?.value??C??"",unitName:x?.unitName?.value??"",unitId:x?.unitId?.value??$??"",firstName:F?.firstName?.value??"",lastName:F?.lastName?.value??"",userName:`${F?.firstName?.value??""} ${F?.lastName?.value??""}`.trim(),userEmail:x?.storeUserEmail.value??"",savedPostalCode:T?.postalCode?.value??"",permissions:{canManageOrganization:O}}:null,marketingData:S,person:k?.id?{id:k.id?.value??"",email:k.email?.value??"",givenName:k.firstName?.value??"",familyName:k.lastName?.value??""}:null,geoCoordinates:g?.latitude&&g?.longitude&&g||null,city:m};return s()(t,E)?null:E},m={validateCart:validateCart,validateSession:validateSession,subscribeToNewsletter:subscribeToNewsletter,cancelOrder:cancelOrder,processOrderAuthorization:processOrderAuthorization}},97097:(e,t,r)=>{r.d(t,{P:()=>n});var a=r(57343),i=r(36548);let n=new a.GraphQLScalarType({name:"ObjectOrString",description:"A string or the string representation of an object (a stringified object).",parseValue:function(e){return"string"==typeof e?getValueAsObjectOrString(e):null},serialize:function(e){return"object"==typeof e?JSON.stringify(e):"string"==typeof e?e:null},parseLiteral:e=>e.kind===i.Kind.STRING?getValueAsObjectOrString(e.value):null});function getValueAsObjectOrString(e){try{return JSON.parse(e)}catch(t){return e}}},14685:(e,t,r)=>{r.d(t,{u:()=>n});var a=r(92222),i=r(92170);let isSearchItem=e=>"Price"in e&&"seller"in e&&"product"in e,isOrderFormItem=e=>"skuName"in e,n={priceCurrency:async(e,t,r)=>{let{loaders:{salesChannelLoader:a},storage:{channel:i}}=r,n=await a.load(i.salesChannel);return n.CurrencyCode??""},priceValidUntil:e=>isSearchItem(e)?e.PriceValidUntil??"":isOrderFormItem(e)?e.priceValidUntil??"":null,itemCondition:()=>"https://schema.org/NewCondition",availability:async e=>isSearchItem(e)?(0,a.Q1)((0,a.pz)(e)):isOrderFormItem(e)?(0,a.Q1)((0,a.Q0)(e.availability)):null,seller:(e,t,r)=>isSearchItem(e)?{identifier:r.storage.channel?.seller||e.seller.sellerId||""}:isOrderFormItem(e)?{identifier:e.seller}:null,price:e=>isSearchItem(e)?(0,a.nt)(e):isOrderFormItem(e)?e.sellingPrice/100:null,priceWithTaxes:e=>isSearchItem(e)?(0,i.J)((0,a.nt)(e),e?.Tax,e.product.unitMultiplier):isOrderFormItem(e)?(0,i.J)(e.sellingPrice/100,e.tax/100,e.unitMultiplier):null,sellingPrice:e=>isSearchItem(e)?(0,a.Tn)(e):isOrderFormItem(e)?e.sellingPrice/100:null,listPrice:e=>isSearchItem(e)?e.ListPrice??0:isOrderFormItem(e)?e.listPrice/100:null,listPriceWithTaxes:e=>isSearchItem(e)?(0,i.J)(e.ListPrice??0,e?.Tax,e.product.unitMultiplier):isOrderFormItem(e)?(0,i.J)(e.listPrice/100,e.tax/100,e.unitMultiplier):null,itemOffered:e=>isSearchItem(e)?e.product:isOrderFormItem(e)?{...e.product,attachmentsValues:e.attachments}:null,quantity:e=>isSearchItem(e)?e.AvailableQuantity??0:isOrderFormItem(e)?e.quantity:null}},72541:(e,t,r)=>{r.d(t,{M:()=>o});let canonicalFromProduct=({linkText:e})=>`/${e}/p`,enhanceCommercialOffer=({offer:e,seller:t,product:r})=>({...e,product:r,seller:t});var a=r(92222),i=r(25372),n=r(60899);let s={imageText:"image",imageUrl:"https://storecomponents.vtexassets.com/assets/faststore/images/image___117a6d3e229a96ad0e0d0876352566e2.svg",imageLabel:"label"},getSlug=(e,t)=>`${e}-${t}`,getPath=(e,t)=>`/${getSlug(e,t)}/p`,nonEmptyArray=e=>Array.isArray(e)&&e.length>0?e:null;function removeTrailingSlashes(e){return e.replace(/^\/+|\/+$/g,"")}let findMainTreeIndex=(e,t)=>{let r=e.findIndex(e=>{let r=removeTrailingSlashes(e).split("/").at(-1);return r===t});return r<0?0:r},o={productID:({itemId:e})=>e,name:({isVariantOf:e,name:t})=>t??e.productName,slug:({isVariantOf:{linkText:e},itemId:t})=>getSlug(e,t),description:({isVariantOf:{description:e}})=>e,seo:({isVariantOf:e})=>({title:e.productTitle||e.productName,description:e.metaTagDescription||e.description,canonical:canonicalFromProduct(e)}),brand:({isVariantOf:{brand:e}})=>({name:e}),unitMultiplier:({unitMultiplier:e})=>e,breadcrumbList:({isVariantOf:{categories:e,productName:t,linkText:r,categoryId:a,categoriesIds:i},itemId:s})=>{let o=findMainTreeIndex(i,a),l=e[o],c=removeTrailingSlashes(l).split("/");return{itemListElement:[...c.map((e,t)=>{let r=`/${c.slice(0,t+1).map(n.l).join("/")}/`;return{name:e,item:r,position:t+1}}),{name:t,item:getPath(r,s),position:c.length+1}],numberOfItems:c.length}},image:({images:e},t)=>{let r=(nonEmptyArray(e)??[s]).map(({imageUrl:e,imageText:t,imageLabel:r})=>({alternateName:t??"",url:e.replace("vteximg.com.br","vtexassets.com"),keywords:r}));if("object"!=typeof t)return r;let{context:a,limit:i}=t,n="generic"!==a;i=(i=i||-1)<=-1?void 0:i;let o=n?r.filter(({keywords:e})=>e===a):r;return(o=0===o.length?r:o).slice(0,i)},sku:({itemId:e})=>e,gtin:({ean:e,referenceId:t})=>e||(t[0]?.Value??""),review:()=>[],aggregateRating:()=>({}),offers:e=>e.sellers.map(t=>enhanceCommercialOffer({offer:t.commertialOffer,seller:t,product:e})).sort(a.T0),isVariantOf:e=>e,additionalProperty:({variations:e=[],attachmentsValues:t=[],attributes:r=[]})=>{let a=e.flatMap(({name:e,values:t})=>t.map(t=>({name:e,value:t,valueReference:i.Cr.specification}))),n=t.map(i.Vb),s=r.map(i.pl);return[...a,...n,...s]},hasSpecifications:({isVariantOf:e})=>!!e.skuSpecifications?.length,skuSpecifications:({isVariantOf:{skuSpecifications:e}})=>e??[],specificationGroups:({isVariantOf:{specificationGroups:e}})=>e,releaseDate:({isVariantOf:{releaseDate:e}})=>e??"",advertisement:({isVariantOf:{advertisement:e}})=>e,deliveryPromiseBadges:({isVariantOf:{deliveryPromisesBadges:e}})=>e}},41830:(e,t,r)=>{r.d(t,{Z:()=>s});var a=r(96693),i=r(25372);let n=new Set(["allSpecifications"]),s={hasVariant:e=>e.isVariantOf.items.map(t=>(0,a.j)(t,e.isVariantOf)),productGroupID:({isVariantOf:e})=>e.productId,name:e=>e.isVariantOf.productName,skuVariants:e=>e,additionalProperty:({isVariantOf:{specificationGroups:e}})=>e.filter(e=>!n.has(e.name)).flatMap(({specifications:e})=>e.flatMap(({name:e,values:t})=>t.map(t=>({name:e,value:t,valueReference:i.Cr.specification}))))}},92584:(e,t,r)=>{r.d(t,{X:()=>i});var a=r(25372);let i={propertyID:e=>e.propertyID||(0,a.Ih)(e),name:({name:e})=>e,value:({value:e})=>e,valueReference:({valueReference:e})=>e}},1402:(e,t,r)=>{r.d(t,{A:()=>p});var a=r(90782),i=r(54107),n=r(66037),s=r(18673),o=r(96693),l=r(97911),c=r(1191);let d={price_desc:"price:desc",price_asc:"price:asc",orders_desc:"orders:desc",name_desc:"name:desc",name_asc:"name:asc",release_desc:"release:desc",discount_desc:"discount:desc",score_desc:""};var u=r(18668);let p={product:async(e,{locator:t},r)=>{let i=(0,l.mN)(t),s=(0,l.PB)(t),d=(0,l.Gh)(t),u=(0,l.lX)(t);i&&(0,n.u)(r,i),s&&(0,n.V)(r,s);let{loaders:{skuLoader:p},clients:{commerce:m,search:g}}=r;try{let e=d??u?.split("-").pop()??"";if(!(0,c.t)(e))throw Error("Invalid SkuId");let t=await p.load(e);if(u&&t.isVariantOf.linkText&&!u.startsWith(t.isVariantOf.linkText))throw Error(`Slug was set but the fetched sku does not satisfy the slug condition. slug: ${u}, linkText: ${t.isVariantOf.linkText}`);return t}catch(i){if(null==u)throw new a.oY("Missing slug or id");let e=await m.catalog.portal.pagetype(`${u}/p`);if("Product"!==e.pageType||!e.id)throw new a.dR(`No product found for slug ${u}`);let{products:[t]}=await g.products({page:0,count:1,query:`product:${e.id}`,hideUnavailableItems:!1});if(!t)throw new a.dR(`No product found for id ${e.id}`);let r=(0,c.E)(t.items);return(0,o.j)(r,t)}},collection:(e,{slug:t},r)=>{let{loaders:{collectionLoader:a}}=r;return a.load(t)},search:async(e,{first:t,after:r,sort:a,term:i,selectedFacets:s,sponsoredCount:o},c)=>{let u=(0,l.mN)(s),p=(0,l.PB)(s),m=(0,l.iD)(s);u&&(0,n.u)(c,u),p&&(0,n.V)(c,p);let g=i;if(m){let e=await c.clients.commerce.catalog.products.crossselling({type:l.vE[m.key],productId:m.value});g=`product:${e.map(e=>e.productId).slice(0,t).join(";")}`}let f=r?Number(r):0,h={page:Math.ceil(f/t)||0,count:t,query:g??void 0,sort:d[a??"score_desc"],selectedFacets:s?.flatMap(l.S9)??[],sponsoredCount:o??void 0},y=c.clients.search.products(h);return{searchArgs:h,productSearchPromise:y}},allProducts:async(e,{first:t,after:r},a)=>{let{clients:{search:i}}=a,n=r?Number(r):0,s=await i.products({page:Math.ceil(n/t),count:t}),l=s.products.flatMap(e=>e.items.map(t=>(0,o.j)(t,e))).filter(e=>e.sellers.length>0);return{pageInfo:{hasNextPage:s.pagination.after.length>0,hasPreviousPage:s.pagination.before.length>0,startCursor:"0",endCursor:s.recordsFiltered.toString(),totalCount:s.recordsFiltered},edges:l.map((e,t)=>({node:e,cursor:(n+t).toString()}))}},products:async(e,{productIds:t},r)=>{let{clients:{search:a}}=r;if(!t.length)return[];let i=`id:${t.join(";")}`,n=await a.products({page:0,count:t.length,query:i});return n.products.flatMap(e=>e.items.map(t=>(0,o.j)(t,e))).filter(e=>t.includes(e.itemId)&&e.sellers.length>0)},allCollections:async(e,{first:t,after:r},a)=>{let{clients:{commerce:i}}=a,n=r?Number(r):0,[s,o]=await Promise.all([i.catalog.brand.list(),i.catalog.category.tree()]),l=[],dfs=(e,t)=>{for(let r of(l.push({...e,level:t}),e.children))dfs(r,t+1)};for(let e of o)dfs(e,0);let c=[...s.filter(e=>e.isActive).map(e=>({...e,type:"brand"})),...l],d=c.filter(e=>!!u.s.slug(e,null,a,null));return{pageInfo:{hasNextPage:d.length-n>t,hasPreviousPage:n>0,startCursor:"0",endCursor:(Math.min(t,d.length-n)-1).toString(),totalCount:d.length},edges:d.slice(n,n+t).map((e,t)=>({node:e,cursor:(n+t).toString()}))}},shipping:async(e,{country:t,items:r,postalCode:a},i)=>{let{loaders:{simulationLoader:n},clients:{commerce:s}}=i,[o,l]=await Promise.all([n.load({country:t,items:r,postalCode:a}),s.checkout.address({postalCode:a,country:t})]);return{...o,address:l}},redirect:async(e,{term:t,selectedFacets:r},a)=>{if(!t&&(!r||!r.length))return null;let{redirect:i}=await a.clients.search.products({page:1,count:1,query:t??void 0,selectedFacets:r?.flatMap(l.S9)??[],allowRedirect:!0});return{url:i}},sellers:async(e,{postalCode:t,geoCoordinates:r,country:a,salesChannel:i},n)=>{let{clients:{commerce:s}}=n,o=await s.checkout.region({postalCode:t,geoCoordinates:r,country:a,salesChannel:i}),l=o?.[0],{id:c,sellers:d}=l;return{id:c,sellers:d}},profile:async(e,{id:t},r)=>{let{clients:{commerce:a}}=r,i=await a.profile.addresses(t),n=function(e){return e&&0!==Object.keys(e).length?Object.values(e).map(e=>JSON.parse(e)):[]}(i);return{addresses:n}},productCount:async(e,{term:t},r)=>{let{clients:{search:a}}=r,i=await a.productCount({query:t??void 0});return i},userOrder:async(e,{orderId:t},r)=>{let{clients:{commerce:n}}=r;if(!t)throw new a.oY("Missing orderId");try{let e=await n.oms.userOrder({orderId:t});if(!e)throw new a.dR(`No order found for id ${t}`);let r=null;try{let e=await n.oms.getCommercialAuthorizationsByOrderId({orderId:t});r=(0,i.U)(e)}catch(e){}let s=await n.masterData.getShopperById({userId:e.purchaseAgentData?.purchaseAgents?.[0]?.userId??""})??[],o=s[0]??{};return{orderId:e.orderId,creationDate:e.creationDate,totals:e.totals,items:e.items,shippingData:e.shippingData,paymentData:e.paymentData,customData:e.customData,status:e.status,statusDescription:e.statusDescription,allowCancellation:e.allowCancellation,storePreferencesData:e.storePreferencesData,clientProfileData:e.clientProfileData,canProcessOrderAuthorization:("waiting-for-confirmation"===e.status||"waiting-for-authorization"===e.status)&&!!r,ruleForAuthorization:r,shopper:{firstName:o?.firstName||"",lastName:o?.lastName||"",email:o?.email||"",phone:o?.phone||""}}}catch(n){let e=n.message,r={};try{let t=JSON.parse(e);r=t.error||t}catch{r={message:e}}let i=r?.message||e;if((0,a.XD)(n))throw new a.dR(`No order found for id ${t}. ${i}.`);if((0,a.QW)(n))throw new a.lY(`You are forbidden to interact with order with id ${t}. ${i}.`);throw n}},listUserOrders:async(e,t,r)=>{let{clients:{commerce:a}}=r,i=await a.oms.listUserOrders(t);return{list:i.list?.map(e=>({orderId:e.orderId,creationDate:e.creationDate,clientName:e.clientName,items:e.items,totalValue:e.totalValue,status:e.status,statusDescription:e.statusDescription,ShippingEstimatedDate:e.ShippingEstimatedDate,customFields:e.customFields,currencyCode:e.currencyCode})),paging:i.paging}},accountName:async(e,t,r)=>{let{account:a,headers:i,clients:{commerce:n}}=r,o=(0,s.aj)((0,s.w5)(i?.cookie??"",a));if(!o?.userId)return null;if(o?.isRepresentative){let e=await n.session("").catch(()=>null);if(!e)return null;let t=e.namespaces.profile??null;return`${(t?.firstName?.value??"").trim()} ${(t?.lastName?.value??"").trim()}`.trim()||""}let l=await n.licenseManager.getUserById({userId:o?.userId}).catch(()=>null);return l?.name||""},validateUser:async(e,t,r)=>{let{clients:{commerce:i}}=r;try{let e=await i.vtexid.validate();return{isValid:"Success"===e.authStatus}}catch(e){throw new a.lY("You are not allowed to access this resource")}},userDetails:async(e,t,r)=>{let{clients:{commerce:a}}=r,i=await a.session("").catch(()=>null),n=i?.namespaces.shopper??null,s=i?.namespaces.authentication??null;return{name:n?.firstName?.value??"",email:s?.storeUserEmail.value??"",role:["Admin"],orgUnit:s?.unitName?.value??""}},accountProfile:async(e,t,r)=>{let{account:a,headers:i,clients:{commerce:n}}=r,o=(0,s.aj)((0,s.w5)(i?.cookie??"",a));if(!o?.userId)return null;if(o?.isRepresentative){let e=await n.session("").catch(()=>null);if(!e)return null;let t=e.namespaces.profile??null,r=await n.masterData.getContractById({contractId:t?.id?.value??""}),a=r?.corporateName??`${(t?.firstName?.value??"").trim()} ${(t?.lastName?.value??"").trim()}`.trim();return{name:a||"",email:t?.email?.value||"",id:t?.id?.value||""}}let l=await n.licenseManager.getUserById({userId:o?.userId}).catch(()=>null);return{name:l?.name||"",email:l?.email||"",id:l?.id||""}},pickupPoints:async(e,{geoCoordinates:t},r)=>{let{clients:{commerce:a}}=r,i=await a.checkout.pickupPoints({geoCoordinates:t});return i}}},26465:(e,t,r)=>{r.d(t,{e:()=>a});let a={reviewRating:()=>({ratingValue:5,bestRating:5}),author:()=>({name:""})}},38064:(e,t,r)=>{r.d(t,{R:()=>n});var a=r(96693),i=r(1191);let isRootFacet=(e,t,r)=>t?"category-1"===e.key:!!r&&"brand"===e.key,n={suggestions:async(e,t,r)=>{let{clients:{search:n}}=r,{searchArgs:s}=e;if(!s.query){let e=await n.topSearches();return{terms:e.searches.map(e=>({value:e.term,count:e.count})),products:[]}}let{productSearchPromise:o}=e,[l,c]=await Promise.all([n.suggestedTerms(s),o]),d=c.products.map(e=>{let t=(0,i.E)(e.items);return t&&(0,a.j)(t,e)}).filter(e=>!!e),{searches:u}=l;return{terms:u.map(e=>({value:e.term,count:e.count})),products:d}},products:async({productSearchPromise:e})=>{let t=await e,r=t.products.map(e=>{let t=(0,i.E)(e.items);return t&&(0,a.j)(t,e)}).filter(e=>!!e);return{pageInfo:{hasNextPage:t.pagination.after.length>0,hasPreviousPage:t.pagination.before.length>0,startCursor:"0",endCursor:t.recordsFiltered.toString(),totalCount:t.recordsFiltered},edges:r.map((e,t)=>({node:e,cursor:t.toString()}))}},facets:async({searchArgs:e},t,r)=>{let{clients:{search:a}}=r;r.storage.searchArgs=e;let{facets:i=[]}=await a.facets(e),n=!e.query,s=!!e.selectedFacets?.length&&"category-1"===e.selectedFacets[0].key,o=!!e.selectedFacets?.length&&"brand"===e.selectedFacets[0].key,l=i.filter(e=>!n||!isRootFacet(e,s,o));return l},metadata:async({productSearchPromise:e})=>{let t=await e;return{isTermMisspelled:t.correction?.misspelled??!1,logicalOperator:t.operator,fuzzy:t.fuzzy}}}},28881:(e,t,r)=>{r.d(t,{X:()=>a});let a={title:({title:e})=>e??"",description:({description:e})=>e??"",canonical:({canonical:e})=>e??"",titleTemplate:()=>""}},98521:(e,t,r)=>{r.d(t,{_:()=>getLocalizedEstimates,x:()=>n});let a=["bd","d","h","m"],isUnit=e=>a.includes(e),i={bd:{0:"Today",1:"In 1 business day",other:"Up to # business days"},d:{0:"Today",1:"In 1 day",other:"Up to # days"},h:{0:"Now",1:"In 1 hour",other:"Up to # hours"},m:{0:"Now",1:"In 1 minute",other:"Up to # minutes"}},getLocalizedEstimates=e=>{let[t,r]=[e.split(/\D+/)[0],e.split(/[0-9]+/)[1]],a=""!==t&&!Number.isNaN(Number(t)),n=isUnit(r);if(!a||!n)return"";let s=2>Number(t)?Number(t):"other";return i[r][s].replace("#",t)??""},n={carrier:e=>e?.friendlyName??e?.name??"",price:e=>e?.price?e.price/100:e?.price,localizedEstimates:e=>e?.shippingEstimate?getLocalizedEstimates(e.shippingEstimate):""}},2146:(e,t,r)=>{r.d(t,{w:()=>n});var a=r(96693);let i="skuvariation";function findSkuVariantImage(e,t){let r=`${i}${t}`.toLowerCase(),a=e.find(e=>e.imageLabel===r);if(a)return a;let n=e.find(e=>e.imageLabel===i);return n||e[0]}function getActiveSkuVariations(e){let t={};return e.forEach(e=>{t[e.name]=e.values[0]}),t}let n={activeVariations:e=>getActiveSkuVariations(e.variations),allVariantsByName:e=>(function(e){let t={};return e?.forEach(e=>{t[e.field.originalName??e.field.name]=e.values.map(e=>e.originalName??e.name)}),t})(e.isVariantOf.skuSpecifications),slugsMap:(e,t)=>(function(e,t,r){let a={};return e.forEach(e=>{let i=e.variations;if(0===i.length)return;let n=`${t}-${i.find(e=>e.name===t)?.values[0]??""}`,s=i.reduce((e,r)=>{let a=r.name===t;return a?e:e+`-${r.name}-${r.values[0]}`},n);a[s]=`${r}-${e.itemId}`}),a})(e.isVariantOf.items,t.dominantVariantName??e.variations[0]?.name,e.isVariantOf.linkText),availableVariations:(e,t)=>{let r=t.dominantVariantName??e.variations[0]?.name,a=getActiveSkuVariations(e.variations),i=a[r],n=function(e,t,r){let a={},i=new Set;return e.forEach(e=>{if(0===e.variations.length)return;let n=e.variations.find(e=>e.name===t),s=n?.values[0]===r;if(!s){let r=`${t}-${n?.values[0]}`;if(!n||i.has(r))return;i.add(r);let s=findSkuVariantImage(e.images,t),o={src:s.imageUrl,alt:s.imageLabel??"",label:`${t}: ${n.values[0]}`,value:n.values[0]};a[n.name]?a[n.name].push(o):a[n.name]=[o];return}e.variations.forEach(t=>{let r=`${t.name}-${t.values[0]}`;if(i.has(r))return;i.add(r);let n=findSkuVariantImage(e.images,t.name),s={src:n.imageUrl,alt:n.imageText??"",label:`${t.name}: ${t.values[0]}`,value:t.values[0]};a[t.name]?a[t.name].push(s):a[t.name]=[s]})}),function(e){for(let t in e){let r=e[t].every(e=>!Number.isNaN(Number(e.value)));r&&e[t].sort((e,t)=>{var r,a;return r=e.value,a=t.value,Number.isNaN(Number(r)-Number(a))?r<a?-1:r>a?1:0:Number(r)-Number(a)})}return e}(a)}(e.isVariantOf.items,r,i);return n},allVariantProducts:e=>e.isVariantOf.items.map(t=>(0,a.j)(t,e.isVariantOf))}},13140:(e,t,r)=>{r.d(t,{r:()=>n});var a=r(98521);let i={"pickup-in-point":"Pickup",delivery:"Delivery",pickup:"Pickup","take-away":"Take away","":""},n={deliveryOptionsData:e=>{let{shippingData:t,items:r}=e,n=t?.logisticsInfo||[],s=t?.selectedAddresses||t?.availableAddresses||[t?.address],o=n.reduce((e,t)=>{let n=t?.selectedSla||"",o=t?.selectedDeliveryChannel||t?.deliveryChannel||"",l=t?.deliveryCompany||"",c=t?.deliveryWindow,d=t?.pickupStoreInfo,u=t?.shippingEstimate||"",p=t?.shippingEstimate?(0,a._)(t?.shippingEstimate):"",m=t?.shippingEstimateDate||"",g=t?.addressId||"",f=t?.itemIndex??0,h=r?.[f],y=h?.seller||"",v=`${n}|${o}|${l}|${y}|${u}|${m}|${g}|${c?.startDateUtc}|${c?.endDateUtc}`,S=s?.find(e=>e?.addressId===g),I=`${i[o]||""} ${p} ${S?.neighborhood?`to ${S?.neighborhood}`:""}`.trim(),b=(h?.sellingPrice??0)*(h?.quantity??0)+(h?.tax??0);return e[v]||(e[v]={selectedSla:n,deliveryChannel:o,deliveryCompany:l,deliveryWindow:c,shippingEstimate:u,shippingEstimateDate:m,seller:y,friendlyShippingEstimate:p,friendlyDeliveryOptionName:I,address:S,pickupStoreInfo:d,quantityOfDifferentItems:0,total:0,items:[]}),e[v]&&(e[v].items?.push({id:h?.id||"",uniqueId:h?.uniqueId||"",name:h?.name||"",quantity:h?.quantity||0,price:h?.price||0,imageUrl:h?.imageUrl||"",tax:h?.tax||0,total:b}),e[v].quantityOfDifferentItems=(e[v].quantityOfDifferentItems??0)+1,e[v].total=(e[v].total??0)+b),e},{}),l=Object.values(o),c=t?.contactInformation?.[0],d={name:`${c?.firstName??""} ${c?.lastName??""}`.trim()||l?.[0]?.address?.receiverName||"",email:c?.email||"",phone:c?.phone||""};return{deliveryOptions:l,contact:d}},customFields:e=>{let t=e?.customData?.customFields||[];return Object.values(t.reduce((e,t)=>{let r=t?.linkedEntity?.type||"",a=t?.linkedEntity?.id||"",i=`${r}|${a||""}`;return e[i]||(e[i]={type:r,id:a,fields:[]}),e[i].fields.push(...t?.fields||[]),e},{}))||[]}}},20914:(e,t,r)=>{r.d(t,{Z:()=>ChannelMarshal});let ChannelMarshal=class ChannelMarshal{static parse(e){try{let t=JSON.parse(e);return{seller:t.seller??"",regionId:t.regionId??"",salesChannel:t.salesChannel??"",hasOnlyDefaultSalesChannel:t.hasOnlyDefaultSalesChannel??!0}}catch(e){throw console.error(e),Error("Malformed channel string")}}static stringify(e){return JSON.stringify(e)}}},54107:(e,t,r)=>{function extractRuleForAuthorization(e){if(!e||"pending"!==e.status)return null;for(let t of e.dimensionStatus){if("pending"!==t.status)continue;let r=t.ruleCollection.find(e=>"pending"===e.status&&e.isUserNextAuthorizer);if(r)return{rule:r,orderAuthorizationId:e.id,dimensionId:t.id}}return null}function isPendingForOtherAuthorizer(e){if(!e||"pending"!==e.status)return!1;let t=e.dimensionStatus.filter(e=>"pending"===e.status).flatMap(e=>e.ruleCollection).filter(e=>"pending"===e.status);return 0!==t.length&&t.every(e=>!e.isUserNextAuthorizer)}r.d(t,{S:()=>isPendingForOtherAuthorizer,U:()=>extractRuleForAuthorization})},66037:(e,t,r)=>{r.d(t,{V:()=>mutateLocaleContext,u:()=>mutateChannelContext});var a=r(20914);let mutateChannelContext=(e,t)=>{e.storage.channel=a.Z.parse(t)},mutateLocaleContext=(e,t)=>{e.storage.locale=t}},18673:(e,t,r)=>{r.d(t,{H6:()=>getWithCookie,aj:()=>parseJwt,oc:()=>getStoreCookie,q4:()=>getWithAutCookie,w5:()=>getAuthCookie});var a=r(84802);let i=/^([^=]+)=([^;]*)/,updatesContextStorageCookies=(e,t)=>{let r=t.match(i);if(r){let a=r[1],i=r[2];e.storage.cookies.set(a,{value:i,setCookie:t})}},setCookie=(e,t)=>{t.getSetCookie().forEach(t=>updatesContextStorageCookies(e,t))},getStoreCookie=e=>t=>setCookie(e,t),getUpdatedCookie=e=>{if(!e.headers?.cookie)return null;let t=Array.from(e.storage.cookies.entries());return 0===t.length?e.headers.cookie:t.reduce((e,[t,{value:r}])=>updatesCookieValueByKey(e,t,r),e.headers.cookie)},getWithCookie=e=>function(t){let r=getUpdatedCookie(e);return r?{...t,cookie:r}:t},getAuthCookie=(e,t)=>{let r=(0,a.parse)(e),i=r[`VtexIdclientAutCookie_${t}`];return i||""},getWithAutCookie=e=>{let t=getWithCookie(e);return function(r,a){let i=t({"content-type":"application/json","X-FORWARDED-HOST":r}),n=getAuthCookie(e?.headers?.cookie??"",a);return i.VtexIdclientAutCookie=n,i}},updatesCookieValueByKey=(e,t,r)=>{let a=RegExp(`(${t})=([^;]*)`),i=e.match(a);return i?e.replace(i[0],`${i[1]}=${r}`):`${e};${t}=${r}`};function parseJwt(e){return e?JSON.parse(Buffer.from(e.split(".")[1],"base64").toString()):null}},96693:(e,t,r)=>{r.d(t,{j:()=>enhanceSku});var a=r(85442),i=r.n(a);let sanitizeHtml=(e,t)=>i()(e,t),enhanceSku=(e,t)=>({...e,isVariantOf:function(e){return{...e,description:e.description?sanitizeHtml(e.description):e.description}}(t)})},97911:(e,t,r)=>{r.d(t,{Gh:()=>findSkuId,PB:()=>findLocale,S9:()=>transformSelectedFacet,Vz:()=>parseRange,iD:()=>findCrossSelling,lX:()=>findSlug,mN:()=>findChannel,vE:()=>i});var a=r(90782);let i={buy:"whoboughtalsobought",view:"whosawalsosaw",similars:"similars",viewAndBought:"whosawalsobought",accessories:"accessories",suggestions:"suggestions"},transformSelectedFacet=({key:e,value:t})=>{switch(e){case"price":return{key:e,value:t.replace("-to-",":")};case"channel":case"locale":case"buy":case"view":case"similars":case"viewAndBought":case"accessories":case"suggestions":return[];default:return{key:e,value:t}}},parseRange=e=>{let t=e.split(":").map(Number);return 2!==t.length||Number.isNaN(t[0])||Number.isNaN(t[1])?null:t},isCrossSelling=e=>"string"==typeof i[e],findCrossSelling=e=>{let t=e?.filter(e=>isCrossSelling(e.key));if(Array.isArray(t)&&t.length>1)throw new a.oY(`You passed ${t.length} cross selling facets but only one is allowed. Please leave one of the following facet: ${t.map(e=>e.key).join(",")}`);return t?.[0]??null},findSlug=e=>e?.find(e=>"slug"===e.key)?.value??null,findSkuId=e=>e?.find(e=>"id"===e.key)?.value??null,findLocale=e=>e?.find(e=>"locale"===e.key)?.value??null,findChannel=e=>e?.find(e=>"channel"===e.key)?.value??null},43606:(e,t,r)=>{r.d(t,{F:()=>md5});var a=r(6113),i=r.n(a);let md5=e=>i().createHash("md5").update(e).digest("hex")},7201:(e,t,r)=>{r.d(t,{V:()=>min});let min=(e,t)=>{let r=0;for(let a=1;a<e.length;a++)t(e[r],e[a])>0&&(r=a);return e[r]}},92222:(e,t,r)=>{r.d(t,{Q0:()=>inStockOrderFormItem,Q1:()=>availability,T0:()=>bestOfferFirst,Tn:()=>sellingPrice,nt:()=>price,pz:()=>inStock});let inStock=e=>e.AvailableQuantity>0,price=e=>e.spotPrice??0,sellingPrice=e=>e.Price??0,availability=e=>e?"https://schema.org/InStock":"https://schema.org/OutOfStock",bestOfferFirst=(e,t)=>inStock(e)&&!inStock(t)?-1:!inStock(e)&&inStock(t)?1:price(e)-price(t),inStockOrderFormItem=e=>"available"===e},25372:(e,t,r)=>{r.d(t,{Cr:()=>i,Ih:()=>getPropertyId,Vb:()=>attachmentToPropertyValue,pl:()=>attributeToPropertyValue});var a=r(43606);let i={attachment:"ATTACHMENT",specification:"SPECIFICATION",attribute:"ATTRIBUTE"};function attachmentToPropertyValue(e){return{name:e.name,value:e.content,valueReference:i.attachment}}function attributeToPropertyValue(e){return{propertyID:e.id,name:e.name,value:e.value,valueReference:{valueReference:i.attribute,visible:e.visible}}}function getPropertyId(e){return(0,a.F)(`${e.name}:${JSON.stringify(e.value)}:${e.valueReference}`)}},1191:(e,t,r)=>{r.d(t,{E:()=>pickBestSku,t:()=>isValidSkuId});var a=r(7201),i=r(92222);let pickBestSku=e=>{let t=e.flatMap(e=>e.sellers.map(t=>({offer:t.commertialOffer,sku:e}))),r=(0,a.V)(t,({offer:e},{offer:t})=>(0,i.T0)(e,t));return r?r.sku:e[0]},isValidSkuId=e=>""!==e&&!Number.isNaN(Number(e))},60899:(e,t,r)=>{r.d(t,{l:()=>slugify});let a="\xc1\xc4\xc2\xc0\xc3\xc5Č\xc7ĆĎ\xc9Ě\xcb\xc8\xcaẼĔȆ\xcd\xcc\xce\xcfŇ\xd1\xd3\xd6\xd2\xd4\xd5\xd8ŘŔŠŤ\xdaŮ\xdc\xd9\xdb\xddŸŽ\xe1\xe4\xe2\xe0\xe3\xe5č\xe7ćď\xe9ě\xeb\xe8\xeaẽĕȇ\xed\xec\xee\xefň\xf1\xf3\xf6\xf2\xf4\xf5\xf8\xf0řŕšť\xfaů\xfc\xf9\xfb\xfd\xffž\xfe\xdeĐđ\xdf\xc6a",removeDiacritics=e=>{let t=e.slice(0);for(let e=0;e<a.length;e++)t=t.replace(RegExp(a.charAt(e),"g"),"AAAAAACCCDEEEEEEEEIIIINNOOOOOORRSTUUUUUYYZaaaaaacccdeeeeeeeeiiiinnooooooorrstuuuuuyyzbBDdBAa".charAt(e));return t},slugifySpecialCharacters=e=>e.replace(/[·/_,:]/,"-");function slugify(e){let t=e.replace(/,/g,""),r=t.replace(/[*+~.()'"!:@&\[\]`/ %$#?{}><=_^]/g,"-"),a=slugifySpecialCharacters(removeDiacritics(r));return a.toLowerCase()}},92170:(e,t,r)=>{r.d(t,{J:()=>withTax});let withTax=(e,t=0,r=1)=>Math.round((e+t/r)*100)/100},33999:(e,t,r)=>{r.a(e,async(e,t)=>{try{var a=r(57343),i=r(45774),n=e([i]);i=(n.then?(await n)():n)[0],(0,i.loadFilesSync)(__dirname,{extensions:[".graphql"]}).map(a.print).join("\n"),t()}catch(e){t(e)}})},57565:e=>{e.exports=JSON.parse('{"47315a3cd26ddd9c7fa963778988464341b8193f":"query ServerAccountPageQuery { accountName }","4b33c5c07f440dc7489e55619dc2211a13786e72":"fragment ServerCollectionPage on Query { collection(slug: $slug) { id } } query ServerCollectionPageQuery($slug: String!) { collection(slug: $slug) { breadcrumbList { itemListElement { item name position } } meta { selectedFacets { key value } } seo { description title } } ...ServerCollectionPage }","e855903879c6504e90269e6e010549bc6de933eb":"fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } fragment ProductDetailsFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } description gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } fragment ServerProduct on Query { product(locator: $locator) { id: productID } } query ServerProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { brand { name } breadcrumbList { itemListElement { item name position } } description gtin image { alternateName url } isVariantOf { productGroupID } name offers { highPrice lowPrice lowPriceWithTaxes offers { availability itemCondition price priceCurrency priceValidUntil seller { identifier } } priceCurrency } id: productID releaseDate seo { canonical description title } sku ...ProductDetailsFragment_product } ...ServerProduct }","2c5dca039e0aa4924e9e583f5afbe522758ca7c4":"query ServerOrderDetailsQuery($orderId: String!) { accountName userOrder(orderId: $orderId) { allowCancellation canProcessOrderAuthorization clientProfileData { corporateName email firstName isCorporate lastName phone } creationDate customFields { fields { name refId value } id type } deliveryOptionsData { contact { email name phone } deliveryOptions { address { addressId addressType city complement country entityId geoCoordinates neighborhood number postalCode receiverName reference state street versionId } deliveryChannel deliveryCompany deliveryWindow { endDateUtc price startDateUtc } friendlyDeliveryOptionName friendlyShippingEstimate items { id imageUrl name price quantity tax total uniqueId } pickupStoreInfo { additionalInfo address { addressId addressType city complement country entityId geoCoordinates neighborhood number postalCode receiverName reference state street versionId } dockId friendlyName isPickupStore } quantityOfDifferentItems selectedSla seller shippingEstimate shippingEstimateDate total } } orderId paymentData { transactions { isActive payments { bankIssuedInvoiceIdentificationNumber connectorResponses { authId } group id installments lastDigits paymentOrigin paymentSystemName redemptionCode referenceValue tid url value } } } ruleForAuthorization { dimensionId orderAuthorizationId rule { authorizationData { authorizers { authorizationDate email id type } requireAllApprovals } authorizedEmails doId id isUserAuthorized isUserNextAuthorizer name notification priority scoreInterval { accept deny } status timeout trigger { condition { conditionType description expression greatherThan lessThan } effect { description effectType funcPath } } } } shopper { email firstName lastName phone } status statusDescription storePreferencesData { currencyCode } totals { id name value } } }","ee84ac3f5b58c5e1950a927a42c5c1dd6012fcc4":"query ServerListOrdersQuery($clientEmail: String, $dateFinal: String, $dateInitial: String, $page: Int, $perPage: Int, $status: [String], $text: String) { accountName listUserOrders( page: $page perPage: $perPage status: $status dateInitial: $dateInitial dateFinal: $dateFinal text: $text clientEmail: $clientEmail ) { list { ShippingEstimatedDate clientName creationDate currencyCode customFields { type value } items { description ean id price productId quantity refId seller sellingPrice } orderId status statusDescription totalValue } paging { currentPage pages perPage total } } }","0ed4b5db8fed122d8418195d01fb91b30261d587":"query ServerProfileQuery { accountName accountProfile { email id name } }","63c6eadbe8b77c0c3c91406589755accba5cf155":"query ServerSecurity { accountName userDetails { email } }","522e5feeb80e67cee931bc98eac9d08ea75c75d2":"query ServerUserDetailsQuery { accountName userDetails { email name orgUnit role } }","e2b06da6840614d3c72768e56579b9d3b8e80802":"mutation CancelOrderMutation($data: IUserOrderCancel!) { cancelOrder(data: $data) { data } }","8c25d37c8d6e7c20ab21bb8a4f4e6a2fe320ea8d":"mutation ProcessOrderAuthorizationMutation($data: IProcessOrderAuthorization!) { processOrderAuthorization(data: $data) { isPendingForOtherAuthorizer ruleForAuthorization { dimensionId orderAuthorizationId rule { authorizationData { authorizers { authorizationDate email id type } requireAllApprovals } authorizedEmails doId id isUserAuthorized isUserNextAuthorizer name notification priority scoreInterval { accept deny } status timeout trigger { condition { conditionType description expression greatherThan lessThan } effect { description effectType funcPath } } } } } }","32f99c73c3de958b64d6bece1afe800469f54548":"query ValidateUser { validateUser { isValid } }","c2b3f8bff73ebf6ac79d758c66cabbc21ba9fcc0":"fragment CartItem on StoreOffer { itemOffered { ...CartProductItem } listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } fragment CartMessage on StoreCartMessage { status text } fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } mutation ValidateCartMutation($cart: IStoreCart!, $session: IStoreSession!) { validateCart(cart: $cart, session: $session) { messages { ...CartMessage } order { acceptedOffer { ...CartItem } orderNumber shouldSplitItem } } }","3fa04e88c811fcb5ece7206fd5aa745bdbc143a8":"query ClientPickupPointsQuery($geoCoordinates: IStoreGeoCoordinates) { pickupPoints(geoCoordinates: $geoCoordinates) { pickupPointDistances { address { city number postalCode state street } distance isActive pickupId pickupName } } }","feb7005103a859e2bc8cf2360d568806fd88deba":"mutation SubscribeToNewsletter($data: IPersonNewsletter!) { subscribeToNewsletter(data: $data) { id } }","dc912e7272e3d9f5ced206837df87f544d39d0a5":"query ClientProductCountQuery($term: String) { productCount(term: $term) { total } }","4039e05f01a2fe449e20e8b82170d0ba94b1fbe9":"fragment ProductSKUMatrixSidebarFragment_product on StoreProduct { isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { additionalProperty { name propertyID value valueReference } image { alternateName url } name offers { highPrice lowPrice lowPriceWithTaxes offerCount offers { availability itemCondition listPrice listPriceWithTaxes price priceCurrency priceValidUntil priceWithTaxes quantity sellingPrice } priceCurrency } sku } availableVariations slugsMap } } id: productID } query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductSKUMatrixSidebarFragment_product } }","e49027bc29aa10cbf7bbb0ed62239af8de1653f0":"fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } query ClientManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $sponsoredCount: Int, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }","bfc40da32b60f9404a4adb96b0856e3fbb04b076":"fragment ClientProductGallery on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { products { pageInfo { totalCount } } } } fragment Filter_facets on StoreFacet { ... on StoreFacetBoolean { __typename key label values { label quantity selected value } } ... on StoreFacetRange { __typename key label max { absolute selected } min { absolute selected } } } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ClientProductGalleryQuery($after: String!, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $term: String!) { redirect(term: $term, selectedFacets: $selectedFacets) { url } search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { facets { ...Filter_facets } metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } } ...ClientProductGallery }","47aa22eb750cb2c529e5eeafb921bfeadb67db71":"fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } fragment ClientProduct on Query { product(locator: $locator) { id: productID } } fragment ProductDetailsFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } description gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } query ClientProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductDetailsFragment_product } ...ClientProduct }","b668777678c137b8c7004297df4d8b8f2b29ee06":"fragment ProductComparisonFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { name } description gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku skuSpecifications { field { id name originalName } values { fieldId id name originalName } } slug specificationGroups { name originalName specifications { name originalName values } } unitMultiplier } query ClientManyProductsSelectedQuery($productIds: [String!]!) { products(productIds: $productIds) { ...ProductComparisonFragment_product } }","34ea14c0d4a57ddf9bc11e4be0cd2b5a6506d3d4":"query ClientProfileQuery($id: String!) { profile(id: $id) { addresses { city country geoCoordinate postalCode } } }","bbaa2ed75c4fb04842189e8d53a1d65481154e2b":"fragment ClientSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ClientSearchSuggestionsQuery($selectedFacets: [IStoreSelectedFacet!], $term: String!) { search(first: 5, term: $term, selectedFacets: $selectedFacets) { metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } suggestions { products { ...ProductSummary_product } terms { value } } } ...ClientSearchSuggestions }","e2385b0f11726d0068f96548f57a8dd441c064e3":"fragment ClientTopSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } query ClientTopSearchSuggestionsQuery($selectedFacets: [IStoreSelectedFacet!], $term: String!) { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } ...ClientTopSearchSuggestions }","15d85b65b36cb2c30fead1c68a01c3492319a819":"mutation ValidateSession($search: String!, $session: IStoreSession!) { validateSession(session: $session, search: $search) { addressType b2b { customerId firstName isRepresentative lastName permissions { canManageOrganization } savedPostalCode unitId unitName userEmail userName } channel city country currency { code symbol } deliveryMode { deliveryChannel deliveryMethod deliveryWindow { endDate startDate } } geoCoordinates { latitude longitude } locale marketingData { utmCampaign utmMedium utmSource utmiCampaign utmiPage utmiPart } person { email familyName givenName id } postalCode refreshAfter } }","c35bad22f67f3eb34fea52bb49efa6b1da6b728d":"fragment ClientShippingSimulation on Query { shipping(items: $items, postalCode: $postalCode, country: $country) { address { city } } } query ClientShippingSimulationQuery($country: String!, $items: [IShippingItem!]!, $postalCode: String!) { shipping(items: $items, postalCode: $postalCode, country: $country) { address { city neighborhood state } logisticsInfo { slas { availableDeliveryWindows { endDateUtc listPrice price startDateUtc } carrier deliveryChannel localizedEstimates price shippingEstimate } } } ...ClientShippingSimulation }","4b769cda49004c85d0d427c601eba36c37a52224":"fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ServerManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $sponsoredCount: Int, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { metadata { ...SearchEvent_metadata } products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }"}')}};
|
|
@@ -492,4 +492,4 @@ exports.id=9630,exports.ids=[9630],exports.modules={25487:(e,t,r)=>{"use strict"
|
|
|
492
492
|
env: '${o().api.environment}',
|
|
493
493
|
workspace: '${o().api.workspace}'
|
|
494
494
|
});
|
|
495
|
-
`}},"vtexaf-config")]})}},98132:(e,t,r)=>{"use strict";r.d(t,{KS:()=>o,YQ:()=>i,gK:()=>a});let a=12,o=5,i=3e3},19630:(e,t,r)=>{"use strict";r.a(e,async(e,a)=>{try{r.r(t),r.d(t,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var o=r(16641),i=r(40968),n=r.n(i),s=r(33339),l=r(69029),c=r(16652),u=r(61992),d=r(98736),p=r(3571),m=r(13028),f=r(25326),y=r(77938),b=r(45011);r(45276);var g=r(98132),P=r(20997),v=r(16689),h=e([u]);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}u=(h.then?(await h)():h)[0];let __WEBPACK_DEFAULT_EXPORT__=function({Component:e,pageProps:t}){(0,y.Z)();let r=(0,s.useRouter)(),{start:a}=(0,l.R)();return a(r.asPath,{itemsPerPage:g.gK}),(0,P.jsxs)(f.Z,{children:[(0,P.jsxs)(n(),{children:[" ",!process.env.DISABLE_3P_SCRIPTS&&P.jsx(u.Z,{})]}),P.jsx(o.DefaultSeo,_objectSpread({},b.Z)),P.jsx(p.Z,{}),P.jsx(c.ZP,{children:P.jsx(m.L,{children:P.jsx(d.Z,{children:(0,v.createElement)(e,_objectSpread(_objectSpread({},t),{},{key:t?.key}))})})})]})};a()}catch(e){a(e)}})},3571:(e,t,r)=>{"use strict";r.d(t,{Z:()=>__WEBPACK_DEFAULT_EXPORT__});var a=r(28529),o=r(43412),i=r.n(o);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}let __WEBPACK_DEFAULT_EXPORT__=()=>((0,a.W)(e=>{window.dataLayer.push({ecommerce:null});let t=e.isEcommerceEvent?{event:e.name,ecommerce:e.params}:function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({event:e.name},e.params);window.dataLayer.push(t),r(73982)(`./${i().platform}`).then(({default:t})=>{t(e)})}),null)},71041:(e,t,r)=>{"use strict";r.d(t,{i8:()=>y,jD:()=>useCart});var a=r(25487),o=r(29380),i=r(16689),n=r(43412),s=r.n(n),l=r(57440),c=r(97358),u=r(50135);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let d=a.D5,isGift=e=>0===e.price,getItemId=e=>[e.itemOffered.sku,e.seller.identifier,e.itemOffered.additionalProperty?.map(({propertyID:e})=>e).join("-")].filter(Boolean).join("::"),validateCart=async e=>{let{validateCart:t=null}=await (0,l.W)(d,{session:c.Qf.read(),cart:{order:{orderNumber:e.id,shouldSplitItem:e.shouldSplitItem,acceptedOffer:e.items.map(({price:e,listPrice:t,seller:r,quantity:a,itemOffered:o})=>({price:e,listPrice:t,seller:r,quantity:a,itemOffered:{sku:o.sku,image:o.image,name:o.name,additionalProperty:o.additionalProperty}}))}}});return t&&{id:t.order.orderNumber,items:t.order.acceptedOffer.map(e=>_objectSpread(_objectSpread({},e),{},{id:getItemId(e)})),messages:t.messages,shouldSplitItem:t.order.shouldSplitItem}},[p,m]=(0,u.d)(validateCart),f=(0,o.n)(s().cart,m),y=_objectSpread(_objectSpread({},f),{},{addItem:e=>{let t=_objectSpread(_objectSpread({},e),{},{id:getItemId(e)});f.addItem(t)}}),useCart=({useUnitMultiplier:e}={useUnitMultiplier:!1})=>{let t=(0,u.o)(y),r=(0,u.o)(p);return(0,i.useMemo)(()=>{let a=t.items.reduce((t,r)=>{t.total+=r.price*r.quantity,t.totalWithTaxes+=r.priceWithTaxes*r.quantity;let a=e?r.quantity*(r?.itemOffered?.unitMultiplier??1):r.quantity;return t.totalItems+=isGift(r)?0:a,t.subTotal+=r.listPrice*a,t.subTotalWithTaxes+=r.listPriceWithTaxes*a,t},{totalItems:0,total:0,subTotal:0,totalWithTaxes:0,subTotalWithTaxes:0});return _objectSpread(_objectSpread(_objectSpread({},t),a),{},{isValidating:r,messages:t.messages,gifts:t.items.filter(e=>isGift(e)),items:t.items.filter(e=>!isGift(e)),totalUniqueItems:t.items.length})},[t,r,e])}},13028:(e,t,r)=>{"use strict";r.d(t,{L:()=>DeliveryPromiseProvider,P:()=>useDeliveryPromiseContext});var a=r(12404),o=r.n(a),i=r(16689),n=r(97358),s=r(78209),l=r(25487),c=r(43412),u=r(57440);let d=l.Rb,getPickupPoints=async({geoCoordinates:e})=>{if(!c.deliveryPromise.enabled||!e)return[];let t=await (0,u.W)(d,{geoCoordinates:e??void 0});if(!t)return[];let r=t.pickupPoints?.pickupPointDistances?.filter(e=>e.isActive).map(e=>({id:e?.pickupId,name:e?.pickupName,totalItems:t.pickupPoints?.pickupPointDistances?.length??0,address:{street:e?.address?.street,number:e?.address?.number,postalCode:e?.address?.postalCode,city:e?.address?.city,state:e?.address?.state},distance:e?.distance}));return r};var p=r(52011),m=r(20997);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let f=(0,i.createContext)(void 0);function DeliveryPromiseProvider({children:e}){let{postalCode:t,geoCoordinates:r}=(0,n.kP)(),{0:a,1:l}=(0,i.useReducer)(s.pO,void 0,s.wL);(0,i.useEffect)(()=>{t&&a.shouldUpdatePickupPoints&&async function(){let e=await getPickupPoints({geoCoordinates:a.simulatePickupPoints&&a.pickupPointsSimulation?.geoCoordinates?a.pickupPointsSimulation.geoCoordinates:r});if(a.simulatePickupPoints){p.KL.set({pickupPointsSimulation:_objectSpread(_objectSpread({},a.pickupPointsSimulation),{},{pickupPoints:e}),shouldUpdatePickupPoints:!1,simulatePickupPoints:!1});return}if(0!==a.pickupPoints.length&&o()(a.pickupPoints,e))return;let t=e.some(({id:e})=>e===a.globalPickupPoint?.id);p.KL.set({globalPickupPoint:t?a.globalPickupPoint:null,defaultPickupPoint:null,pickupPoints:e,pickupPointsSimulation:s.sd,simulatePickupPoints:!1,shouldUpdatePickupPoints:!1})}()},[a.shouldUpdatePickupPoints,t]);let c=(0,i.useMemo)(()=>_objectSpread(_objectSpread({},a),{},{dispatchDeliveryPromiseAction:l}),[a]);return m.jsx(f.Provider,{value:c,children:e})}function useDeliveryPromiseContext(){let e=(0,i.useContext)(f);if(void 0===e)throw Error("Missing Delivery Promise context on React tree");return e}},78209:(e,t,r)=>{"use strict";function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}r.d(t,{pO:()=>deliveryPromiseReducer,sd:()=>a,wL:()=>initializeDeliveryPromiseState});let a={pickupPoints:[],geoCoordinates:null},initializeDeliveryPromiseState=()=>({pickupPoints:[],defaultPickupPoint:null,globalPickupPoint:null,shouldUpdatePickupPoints:!1,simulatePickupPoints:!1,pickupPointsSimulation:a}),deliveryPromiseReducer=(e,t)=>{let{type:r}=t;switch(r){case"updatePickupPoints":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),{},{defaultPickupPoint:null,globalPickupPoint:null,pickupPoints:r.pickupPoints,shouldUpdatePickupPoints:r.shouldUpdatePickupPoints})}case"onPostalCodeChange":if(t.payload){let{payload:{simulatePickupPoints:r,validatedSession:a}}=t;return _objectSpread(_objectSpread({},e),{},{simulatePickupPoints:r,pickupPointsSimulation:_objectSpread(_objectSpread({},e.pickupPointsSimulation),{},{geoCoordinates:a.geoCoordinates}),shouldUpdatePickupPoints:!0})}return _objectSpread(_objectSpread({},e),{},{pickupPointsSimulation:a,shouldUpdatePickupPoints:!0});case"changePickupPoint":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),{},{defaultPickupPoint:r})}case"changeGlobalPickupPoint":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),{},{globalPickupPoint:r})}case"updateDeliveryPromiseState":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),r)}case"clearPickupPointsSimulation":return _objectSpread(_objectSpread({},e),{},{simulatePickupPoints:!1,pickupPointsSimulation:a});default:throw Error(`Action ${r} not implemented`)}}},52011:(e,t,r)=>{"use strict";r.d(t,{DX:()=>v,KL:()=>w,d:()=>g,gA:()=>f,z0:()=>useDeliveryPromise});var a=r(12404),o=r.n(a),i=r(16689),n=r(49578),s=r(69029),l=r(9664),c=r(97358),u=r(43412),d=r(13028),p=r(78209);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let m="pickupPoint",f="shipping",y="pickup-in-point",b="all-delivery-methods",g="pickup-all",P="all-delivery-options",v="delivery-options",h="dynamic-estimate",_="in-stock",S=(0,n.M)({pickupPoints:[],defaultPickupPoint:null,globalPickupPoint:null,shouldUpdatePickupPoints:!1,pickupPointsSimulation:void 0,simulatePickupPoints:!1},"fs::deliveryPromise"),w=_objectSpread(_objectSpread({},S),{},{set:e=>{let t=S.read(),r=_objectSpread(_objectSpread({},t),e);o()(t,r)||S.set(r)}});function useDeliveryPromise({allFacets:e,selectedFilterFacets:t,deliveryPromiseSettings:r,fallbackToFirstPickupPoint:a=!0,deliveryPromiseBadges:o}={}){let{postalCode:n}=(0,c.kP)(),{state:g,setState:S}=(0,s.R)(),{pickupPoints:j,defaultPickupPoint:k,globalPickupPoint:C,pickupPointsSimulation:D,dispatchDeliveryPromiseAction:E,shouldUpdatePickupPoints:T}=(0,d.P)(),x=u.deliveryPromise.enabled,I=r?.deliveryOptions?.enabled??!0,N=r?.inStock?.enabled??!1,A=(0,i.useMemo)(()=>t??g.selectedFacets,[t,g.selectedFacets]),F=(0,i.useMemo)(()=>A.find(({key:e})=>e===m)?.value,[A]);(0,i.useEffect)(()=>{let e=[w.subscribe(e=>{E({type:"updateDeliveryPromiseState",payload:e})})];return()=>{e.forEach(e=>e())}},[]),(0,i.useEffect)(()=>{0!==j.length&&w.set({defaultPickupPoint:M(F)})},[j,F]),(0,i.useEffect)(()=>{let e=A.some(({key:e})=>e===f),t=!!C&&!e;t&&S({selectedFacets:(0,l.a2)(A,[{key:f,value:y},{key:m,value:C.id}],!0),page:0})},[]);let M=(0,i.useCallback)(e=>{if(!j?.length)return;let t=j?.find(({id:t})=>t===e)??k??C;return a&&!t?j[0]:t},[j,k,C]),R=(0,i.useMemo)(()=>({value:y,label:k?.name??k?.address.street,selected:A?.some(({key:e,value:t})=>t===y||e===m),quantity:k?.totalItems}),[k,A]),L=(0,i.useMemo)(()=>({key:_,label:_,__typename:"StoreFacetBoolean",values:[{value:"true",label:r?.inStock?.label??"In-stock only",selected:A.some(({key:e,value:t})=>e===_&&"true"===t),quantity:null}]}),[r,A]),{0:U,1:K}=(0,i.useMemo)(()=>[{value:b,label:r?.deliveryMethods?.allDeliveryMethods??"All delivery methods",selected:!A.some(({key:e})=>e===f)||A?.some(({key:e,value:t})=>e===f&&t===b),quantity:0},{value:P,label:r?.deliveryOptions?.allDeliveryOptions??"All delivery options",selected:!A.some(({key:e})=>e===v)||A?.some(({key:e,value:t})=>e===v&&t===P),quantity:0}],[A,r,R]),$=(0,i.useCallback)(({facet:e=null,facets:t=[],filterDispatch:r})=>{var a;let o=!0,i=t?.length!==0?t:[e],n=A;if(e?.value===y?i.push({key:m,value:k?.id}):(o="string"==typeof(a=e?.key)&&O.some(e=>e===a),n=n.filter(({key:e})=>e!==m),i.concat(n)),r){r({type:"toggleFacets",payload:{unique:o,facets:i}});return}S({selectedFacets:(0,l.a2)(n,i,o),page:0})},[A,k]),V=(0,i.useMemo)(()=>{if(!e)return[];if(!x||!n)return e.filter(({key:e})=>e!==f&&e!==v&&e!==h);let t=e.filter(({key:e})=>e!==h).filter(({key:e})=>!!I||e!==v);return N&&!t.find(({key:e})=>e===_)&&t.find(({key:e})=>e===f)&&t.push(L),t.map(e=>{if("StoreFacetBoolean"!==e.__typename)return e;if(e.key===v)return e.values=withUniqueFacet(e.values,K),e;if(e.key!==f)return e;e.values=withUniqueFacet(e.values,U);let t=e.values.findIndex(e=>e?.value===y);if(-1===t||k)-1===t&&k?e.values.push(R):e.values[t]&&e.values[t]?.label!==R.label&&(e.values[t]=R);else{let r=A.find(({key:e})=>e===f);if(r){let e=A.filter(({key:e,value:t})=>t===y||e===m);e.length?$({facets:e}):$({facet:r})}e.values=e.values.filter((e,r)=>r!==t)}return e.values=e.values.sort((e,t)=>(e.value??"").localeCompare(t.value??"")),e}).sort((e,t)=>{let getPriority=e=>e===f?0:e===v?1:e===_?2:3;return getPriority(e.key)-getPriority(t.key)})},[U,R,e,k,C,j,A,$,F]),W=(0,i.useCallback)(({simulatePickupPoints:e=!1,validatedSession:t=null}={})=>{let r={country:t?.country,postalCode:t?.postalCode,geoCoordinates:t?.geoCoordinates};E(_objectSpread({type:"onPostalCodeChange"},e?{payload:{simulatePickupPoints:e,validatedSession:_objectSpread({},r)}}:void 0))},[]),B=(0,i.useCallback)(()=>w.set({pickupPointsSimulation:p.sd}),[]),q={[f]:r?.deliveryMethods?.title??"Delivery",[v]:r?.deliveryOptions?.title??"Delivery Option",[_]:r?.inStock?.title??"Availability"};function getBadgeLabel(e,t){let a={delivery:{available:r?.deliveryPromiseBadges?.delivery??"Available for shipping",unavailable:r?.deliveryPromiseBadges?.deliveryUnavailable??"Unavailable for shipping"},"pickup-in-point":{available:r?.deliveryPromiseBadges?.pickupInPoint??"Available for pickup",unavailable:r?.deliveryPromiseBadges?.pickupInPointUnavailable??"Unavailable for pickup"}};return a[e]?t?a[e].available:a[e].unavailable:e}let Q=function(){if(!o||0===o.length)return[];let e=[],t=o?.map(e=>e.typeName),r=t?.includes("delivery"),a=t?.includes("pickup-in-point");return r?e.push({label:getBadgeLabel("delivery",!0),availability:!0}):e.push({label:getBadgeLabel("delivery",!1),availability:!1}),a?e.push({label:getBadgeLabel("pickup-in-point",!0),availability:!0}):e.push({label:getBadgeLabel("pickup-in-point",!1),availability:!1}),e}(),H=!!n&&x&&(r?.deliveryPromiseBadges?.enabled??!0)&&Q.length>0;return{mandatory:u.deliveryPromise.mandatory,isEnabled:x,pickupPoints:j,defaultPickupPoint:k,selectedPickupPointFacet:F,pickupPointsSimulation:D,clearPickupPointsSimulation:B,fetchingPickupPoints:T,changePickupPoint:e=>{w.set({defaultPickupPoint:e})},globalPickupPoint:C,changeGlobalPickupPoint:e=>{w.set({globalPickupPoint:e})},pickupPointByID:M,facets:V,onPostalCodeChange:W,onDeliveryFacetChange:$,labelsMap:q,isPickupAllEnabled:j?.length>0&&(r?.deliveryMethods?.pickupAll?.enabled??!1),shouldDisplayDeliveryButton:x&&!n,shouldDisplayDeliveryPromiseBadges:H,badges:Q}}function withUniqueFacet(e,t){return[t,...e.filter(e=>e.value!==t.value)]}let O=["shipping","pickupPoint","delivery-options"]},25326:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var a=r(16689);let getReloads=()=>Number(window.sessionStorage.getItem("store:reloads")??"0"),setReloads=e=>window.sessionStorage.setItem("store:reloads",`${e}`),canRecover=()=>2>getReloads(),isFrameworkLevelError=e=>e?.name==="ChunkLoadError";let ErrorBoundary=class ErrorBoundary extends a.Component{constructor(...e){super(...e),function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(this,"state",{hasError:!1,error:null})}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){if(console.error(`React Error: ${e.message} ${t.componentStack}`),window.location.pathname.startsWith("/404")||window.location.pathname.startsWith("/500"))return;let r=encodeURIComponent(window.location.pathname),a=e?.extensions?.exception?.status===404;isFrameworkLevelError(e)&&canRecover()?(setReloads(getReloads()+1),window.location.reload()):a?window.location.href=`/404?from=${r}`:window.location.href=`/500?from=${r}&errorId=unknown`}render(){return this.state.hasError?null:this.props.children}};let o=ErrorBoundary},77938:(e,t,r)=>{"use strict";r.d(t,{Z:()=>useGeolocation});var a=r(16689),o=r(43412),i=r(98132),n=r(97358),s=r(17552);function useGeolocation(){(0,a.useEffect)(()=>{o.deliveryPromise.enabled&&setTimeout(()=>{let e=n.Qf.read();e.postalCode&&e.geoCoordinates||(0,s.ne)(e).then(async t=>{if(e===t||(e=n.Qf.read()).postalCode||e.geoCoordinates)return;let r=await (0,n.je)(t);n.Qf.set(r??t)})},i.YQ)},[])}},57440:(e,t,r)=>{"use strict";function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}r.d(t,{W:()=>request});let a={POST:{"Content-Type":"application/json"}},request=async(e,t,r)=>{let{data:a,errors:o}=await baseRequest("/api/graphql",_objectSpread(_objectSpread({},r),{},{variables:t,operation:e}));if(o?.length)throw o[0];return a},baseRequest=async(e,{operation:t,variables:r,fetchOptions:o})=>{let{operationName:i,operationHash:n}=t.__meta__,s=o?.method!==void 0?o.method.toUpperCase():i.endsWith("Query")?"GET":"POST",l=new URLSearchParams(_objectSpread({operationName:i,operationHash:n},"GET"===s&&{variables:JSON.stringify(r)})),c="POST"===s?JSON.stringify({operationName:i,operationHash:n,variables:r}):void 0,u=`${e}?${l.toString()}`,d=await fetch(u,_objectSpread(_objectSpread({method:s,body:c},o),{},{headers:_objectSpread(_objectSpread({},a[s]),o?.headers)}));if(!d.ok){let e=d.statusText;return{errors:[{status:d.status,message:e}],data:void 0}}return d.json()}},97358:(e,t,r)=>{"use strict";r.d(t,{Qf:()=>O,je:()=>validateSession,kP:()=>useSession});var a=r(25487),o=r(88987),i=r(47881),n=r.n(i),s=r(16689),l=r(43412),c=r.n(l),u=r(4018),d=r(71041),p=r(57440),m=r(50135),f=r(17552),y=r(12404),b=r.n(y);let g=["channel"],P=["hasOnlyDefaultSalesChannel"];function _objectWithoutProperties(e,t){if(null==e)return{};var r,a,o=function(e,t){if(null==e)return{};var r,a,o={},i=Object.keys(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let v=`${c().storeUrl}/api/vtexid/refreshtoken/webstore`,h=a.$G,validateSession=async e=>{if(c().deliveryPromise?.enabled&&(!e.postalCode||e.postalCode===c().session.postalCode)){if(e.b2b&&e.b2b?.savedPostalCode)O.set(_objectSpread(_objectSpread({},e),{},{postalCode:e.b2b.savedPostalCode}));else{let t=await (0,f.Ph)(e);t&&O.set(t)}}try{if(!e)return null;let t=await (0,p.W)(h,{session:e,search:window.location.search});return t.validateSession}catch(r){let t=r?.status===401&&c().experimental?.refreshToken;if(t){let t={"content-type":"application/json",Host:`${(0,u.Y1)(c().storeUrl)}`},r=await fetchWithRetry(v,{credentials:"include",headers:t,body:JSON.stringify({}),method:"POST"});if(r?.status?.toLowerCase?.()==="success"){let t=String(Math.floor(new Date(r?.refreshAfter).getTime()/1e3));O.set(_objectSpread(_objectSpread({},e),{},{refreshAfter:t}))}else O.set(_objectSpread(_objectSpread({},e),{},{refreshAfter:String(Math.floor(Date.now()/1e3)+3600)}))}}},[_,S]=(0,m.d)(validateSession),w=(0,o.S)(c().session,S),O=_objectSpread(_objectSpread({},w),{},{set:e=>{!0!==b()(e,w.read())&&(w.set(e),d.i8.set(d.i8.read()))}}),useSession=({filter:e}={filter:!0})=>{let t=O.read()??O.readInitial(),r=(0,m.o)(O),a=(0,m.o)(_),o=r??t,{channel:i}=o,n=_objectWithoutProperties(o,g);if(e){let e=JSON.parse(i),{hasOnlyDefaultSalesChannel:t}=e,r=_objectWithoutProperties(e,P);i=JSON.stringify(r)}return(0,s.useMemo)(()=>_objectSpread(_objectSpread({},n),{},{channel:i,isValidating:a}),[a,n,i])};async function fetchWithRetry(e,t,r=3){for(let a=0;a<r;a++)try{let r=await n()(e,t);if(200!==r.status)continue;let a=await r.json();if(a.status?.toLowerCase?.()==="success")return a}catch{}}},50135:(e,t,r)=>{"use strict";r.d(t,{d:()=>createValidationStore,o:()=>useStore});var a=r(73365),o=r(16689);let useStore=e=>(0,o.useSyncExternalStore)(e.subscribe,e.read,e.readInitial),createValidationStore=e=>{let t=(0,a.M)(!1),onValidate=async r=>{try{return t.set(!0),await e(r)}finally{t.set(!1)}};return[t,onValidate]}},17552:(e,t,r)=>{"use strict";let a,o;r.d(t,{ne:()=>getNavigatorGeolocation,Ph:()=>getPostalCode,MS:()=>useCheckRegionState});var i=r(25487),n=r(57440);let s=i.pR,getAddresses=async e=>{let t=await (0,n.W)(s,{id:e});return t.profile.addresses},getSavedAddress=async e=>{let t=await getAddresses(e);return t?t[0]:null};var l=r(43412),c=r.n(l),u=r(97358),d=r(16689),p=r(16652);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let set=(e,t)=>t&&Object.keys(t).length?_objectSpread(_objectSpread({},e),t):e,getUserSavedAddress=async e=>{if(a)return set(e,a);let t=e?.person;if(!t?.id)return Promise.resolve(e);let{city:r,country:o,geoCoordinate:i,postalCode:n}=await getSavedAddress(t.id)??{};return set(e,a={city:r,country:o,geoCoordinates:{latitude:i?.[1]??null,longitude:i?.[0]??null},postalCode:n})},getNavigatorGeolocation=e=>new Promise(t=>o?t(set(e,{geoCoordinates:o})):navigator&&"geolocation"in navigator?navigator.geolocation.getCurrentPosition(({coords:{latitude:r,longitude:a}})=>t(set(e,{geoCoordinates:o={latitude:r,longitude:a}})),r=>(console.warn("Failed to get navigator location: ",r),t(e)),{timeout:18e4}):e),getPostalCode=async e=>{let t=await getUserSavedAddress(e);if(t!==e)return t;let r=c().session?.postalCode??null;return set(e,{postalCode:r})},{deliveryPromise:m,session:f}=c(),useCheckRegionState=e=>{let{0:t,1:r}=(0,d.useState)("closed"),{openModal:a,openPopover:o,modal:i,closePopover:n}=(0,p.l8)();return(0,d.useEffect)(()=>{if(m.enabled)return u.Qf.subscribe(e=>{if(m.mandatory&&!e?.postalCode&&!i)return a();r(t=>{let r=function(e){let t=!!f.postalCode&&f.postalCode===e?.postalCode,r=!t&&(e?.postalCode||m.mandatory)?"closed":"open";return r}(e);return t!==r?r:t})})},[i]),(0,d.useEffect)(()=>{if("closed"===t){n();return}e&&o({isOpen:!0,triggerRef:e})},[e,t]),{openModal:a,openPopover:o,regionPopoverState:t}}},4018:(e,t,r)=>{"use strict";function textToKebabCase(e){let t=e.replace(/[^\w\s]/gi,"-");return(t=(t=t.replace(/\s+/g,"-")).toLowerCase())??""}function textToTitleCase(e){return e?e.replace(/\S+/g,e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()):""}function camelCaseToTitle(e){if(!e)return"";let t=e.replace(/([a-z])([A-Z])/g,"$1 $2");return t.charAt(0).toUpperCase()+t.slice(1)}function extractStatusFromError(e){if(!e?.message)return;let t=e.message.match(/{.*}$/);if(t)try{let e=JSON.parse(t[0]);if(e.status)return e.status;if(e.message){let t=JSON.parse(e.message);return t.status}}catch{console.error("Failed to parse error message:",t[0])}}function sanitizeHost(e){return e?e.replace(/^https?:\/\//,""):""}r.d(t,{B5:()=>textToKebabCase,E2:()=>extractStatusFromError,GZ:()=>buildFormData,VV:()=>overwriteMerge,Y1:()=>sanitizeHost,_W:()=>textToTitleCase,gi:()=>camelCaseToTitle,qo:()=>toArray});let buildFormData=e=>{let t=new FormData;return Object.keys(e).forEach(r=>{let a=e[r];t.append(r,null===a?"":String(a))}),t},toArray=e=>Array.isArray(e)?e:e?[e]:[],overwriteMerge=(e,t)=>t},45276:()=>{},16652:(e,t,r)=>{"use strict";r.d(t,{ZP:()=>__WEBPACK_DEFAULT_EXPORT__,gK:()=>i,l8:()=>useUI});var a=r(16689),o=r.n(a);let i={setLocation:"setLocation",changeLocation:"changeLocation",changePickupPoint:"changePickupPoint",globalChangePickupPoint:"globalChangePickupPoint"},reducer=(e,t)=>{let{type:r}=t;switch(r){case"open":{let{payload:r}=t;return document.body.classList.add("no-scroll"),{...e,[r]:!0}}case"close":{let{payload:r}=t;return document.body.classList.remove("no-scroll"),{...e,[r]:!1}}case"pushToast":{let r=e.toasts.some(e=>e.message===t.payload.message&&e.status===t.payload.status);if(r)return e;return{...e,toasts:[...e.toasts,t.payload]}}case"popToast":return{...e,toasts:e.toasts.slice(1)};case"openPopover":return{...e,popover:{isOpen:!0,triggerRef:t.payload.triggerRef}};case"closePopover":return{...e,popover:{isOpen:!1,triggerRef:void 0}};case"openRegionSlider":return document.body.classList.add("no-scroll"),{...e,regionSlider:{type:t.payload,isOpen:!0}};case"closeRegionSlider":return e.filter||document.body.classList.remove("no-scroll"),{...e,regionSlider:{type:"none",isOpen:!1}};default:throw Error(`Action ${r} not implemented`)}},initializer=()=>({cart:!1,modal:!1,navbar:!1,filter:!1,toasts:[],popover:{isOpen:!1,triggerRef:void 0},regionSlider:{type:"none",isOpen:!1}}),n=(0,a.createContext)(void 0);function useUI(){let e=(0,a.useContext)(n);if(void 0===e)throw Error("Missing UI context on React tree");return e}let __WEBPACK_DEFAULT_EXPORT__=function({children:e}){let[t,r]=(0,a.useReducer)(reducer,void 0,initializer),i=(0,a.useMemo)(()=>({openFilter:()=>r({type:"open",payload:"filter"}),closeFilter:()=>r({type:"close",payload:"filter"}),openNavbar:()=>r({type:"open",payload:"navbar"}),closeNavbar:()=>r({type:"close",payload:"navbar"}),openCart:()=>r({type:"open",payload:"cart"}),closeCart:()=>r({type:"close",payload:"cart"}),openModal:()=>r({type:"open",payload:"modal"}),closeModal:()=>r({type:"close",payload:"modal"}),pushToast:e=>r({type:"pushToast",payload:e}),popToast:()=>r({type:"popToast"}),openPopover:e=>r({type:"openPopover",payload:e}),closePopover:()=>r({type:"closePopover"}),openRegionSlider:e=>r({type:"openRegionSlider",payload:e}),closeRegionSlider:()=>r({type:"closeRegionSlider"})}),[]),s=(0,a.useMemo)(()=>({...t,...i}),[i,t]);return o().createElement(n.Provider,{value:s},e)}},73982:(e,t,r)=>{var a={"./vtex":[7692,4365,7692],"./vtex/":[7692,4365,7692],"./vtex/index":[7692,4365,7692],"./vtex/index.ts":[7692,4365,7692],"./vtex/rc":[38068,8068],"./vtex/rc.ts":[38068,8068],"./vtex/search":[4365,4365],"./vtex/search.ts":[4365,4365]};function webpackAsyncContext(e){if(!r.o(a,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=a[e],o=t[0];return Promise.all(t.slice(1).map(r.e)).then(()=>r(o))}webpackAsyncContext.keys=()=>Object.keys(a),webpackAsyncContext.id=73982,e.exports=webpackAsyncContext},28529:(e,t,r)=>{"use strict";r.d(t,{W:()=>useAnalyticsEvent});var a=r(16689),o=r(14950);let useAnalyticsEvent=e=>{let t=(0,a.useCallback)(t=>{try{if(t.data.name!==o.vi)return;e((0,o.Wg)(t.data))}catch(e){console.error("Something went wrong while running Analytics handler")}},[e]);(0,a.useEffect)(()=>(window.addEventListener("message",t),()=>window.removeEventListener("message",t)),[t])}},14950:(e,t,r)=>{"use strict";r.d(t,{Mi:()=>a,Wg:()=>unwrap,re:()=>wrap,vi:()=>o});let a="store:",o="AnalyticsEvent",wrap=e=>({name:o,isEcommerceEvent:e.isEcommerceEvent??!0,params:{...e,name:`${a}${e.name}`}}),unwrap=e=>({...e.params,isEcommerceEvent:e.isEcommerceEvent??!0,name:e.params.name.slice(a.length,e.params.name.length)})},29380:(e,t,r)=>{"use strict";r.d(t,{n:()=>createCartStore});var a=r(12254),o=r(49578);let createCartStore=(e,t,r="fs::cart")=>{let i=(0,o.M)(e,r,t),getItem=e=>i.read().items.find(t=>t.id===e);return{...i,getItem,addItem:e=>{if(!e.id)throw new a.q("You must provide an `id` for items");if(e.quantity<0)throw new a.q("Item quantity needs to be higher than zero");let t=i.read(),r=getItem(e.id),o=r?{...e,quantity:r.quantity+e.quantity}:e;i.set({...t,items:r?t.items.map(e=>e===r?o:e):[...t.items,o]})},updateItemQuantity:(e,t)=>{let r=i.read(),o=getItem(e);if(!o)throw new a.q(`Item with id not found: ${e}`);let n={...o,quantity:t};i.set({...r,items:r.items.map(e=>e===o?n:e).filter(e=>e.quantity>0)})},removeItem:e=>{let t=i.read(),r=getItem(e);i.set({...t,items:t.items.filter(e=>e!==r)})},emptyCart:()=>i.set({...i.read(),items:[]}),inCart:e=>!!getItem(e),isEmpty:()=>0===i.read().items.length}}},9664:(e,t,r)=>{"use strict";r.d(t,{Ru:()=>removeFacet,a2:()=>toggleFacets,uL:()=>setFacet,wB:()=>toggleFacet,wb:()=>isSearchSort});var a=r(12254);let o=new Set(["price_desc","price_asc","orders_desc","name_desc","name_asc","release_desc","discount_desc","score_desc"]),isSearchSort=e=>o.has(e),removeFacet=(e,t)=>{let{value:r}=t,o=e.findIndex(e=>e.value===r);if(o<0)throw new a.q(`Cannot remove ${r} from search params`);return e.filter((e,t)=>t!==o)},setFacet=(e,t,r)=>{if(!0===r){let r=e.findIndex(e=>e.key===t.key);if(r>-1)return e.map((e,a)=>a===r?t:e)}return[...e,t]},toggleFacet=(e,t,r)=>{let a=e.find(e=>e.key===t.key&&e.value===t.value);return void 0!==a?removeFacet(e,t):setFacet(e,t,r)},toggleFacets=(e,t,r)=>t.reduce((e,t)=>toggleFacet(e,t,r),e)},86878:(e,t,r)=>{"use strict";r.d(t,{j:()=>initialize,X:()=>c});var a=r(62987),o=r(26142),i=r(72339),n=r(12404),s=r.n(n);let initialize=({sort:e="score_desc",selectedFacets:t=[],term:r=null,base:a="/",page:o=0,passThrough:i=new URLSearchParams}={})=>({sort:e,selectedFacets:t,term:r,base:a,page:o,passThrough:i}),l=(0,a.U)((e,t)=>({state:initialize(),setState:r=>{let a=t().state,o={...a,...r};!1===s()(a,o)&&e({state:o})},appendFacet:t=>e(e=>({state:{...e.state,selectedFacets:[...e.state.selectedFacets.filter(e=>!t.some(t=>t.key===e.key)),...t]}})),itemsPerPage:0,setItemsPerPage:t=>e({itemsPerPage:t}),pages:function(){try{let e=window.history.state?.key;if(!e)return null;let t=getSessionStorageKey(e),r=sessionStorage.getItem(t);return r?JSON.parse(r):null}catch(e){return null}}()??[0],addPrevPage:()=>{let{pages:r}=t(),a=r[0]-1,o=[a,...r];setPagesSessionStorage(o),e({pages:o})},addNextPage:()=>{let{pages:r}=t(),a=Number(r.at(-1))+1,o=[...r,a];setPagesSessionStorage(o),e({pages:o})},resetInfiniteScroll:t=>{let r=[t];setPagesSessionStorage(r),e({pages:r})},parseURL:r=>{let a=(0,o.Q)(r),n=(0,i.Z)(t().state);(0,i.Z)(a).href!==n.href&&e({state:a})},serializedState:()=>(0,i.Z)(t().state),initialized:!1,reset:()=>{e({state:{...initialize({base:t().state.base})}})},start:(r,a)=>{t().initialized||e(e=>({initialized:!0,state:initialize({...e.state,...a,...(0,o.Q)(new URL(r,"http://localhost"))}),itemsPerPage:a.itemsPerPage??e.itemsPerPage,pages:a.pages??e.pages}))}})),c=(e=>{for(let t of(e.use={},Object.keys(e.getState())))e.use[t]=()=>e(e=>e[t]);return e})(l),getSessionStorageKey=e=>`__fs_gallery_page_${e}`;function setPagesSessionStorage(e){try{let t=window.history.state?.key;if(!t)return;let r=getSessionStorageKey(t);sessionStorage.setItem(r,JSON.stringify(e))}catch(e){return}}},26142:(e,t,r)=>{"use strict";r.d(t,{Q:()=>parse});var a=r(12254),o=r(9664),i=r(86878);let parse=({pathname:e,searchParams:t})=>{let r=(0,i.j)({base:e,term:t.get("q")??null,sort:t.get("sort")??void 0,page:Number(t.get("page")??0)});if(!(0,o.wb)(r.sort))throw new a.q(`Uknown sorting option ${r.sort}`);let n=t.get("facets")?.split(",")??[];for(let e of n){let a=t.getAll(e);for(let t of a)r.selectedFacets=(0,o.uL)(r.selectedFacets,{key:e,value:t})}return r.passThrough=function(e,t){let r=new URLSearchParams,a=new Set(t),o=Array.from(e.entries());for(let[e,t]of o)a.has(e)||r.append(e,t);return r}(t,["q","sort","page","facets",...n]),r}},69029:(e,t,r)=>{"use strict";r.d(t,{R:()=>useSearch});var a=r(86878);let useSearch=()=>{let e=(0,a.X)();return e}},88987:(e,t,r)=>{"use strict";r.d(t,{S:()=>createSessionStore});var a=r(49578);let createSessionStore=(e,t,r="fs::session")=>(0,a.M)(e,r,t)},73365:(e,t,r)=>{"use strict";r.d(t,{M:()=>createStore});let createStore=e=>{let t=new Set,r=new Set,a=e;return{set:e=>{a=e,r.forEach(e=>e()),r.clear(),t.forEach(t=>{let a=t(e);"function"==typeof a&&r.add(a)})},read:()=>a,readInitial:()=>e,subscribe:e=>(t.add(e),()=>{t.delete(e)})}}},49578:(e,t,r)=>{"use strict";r.d(t,{M:()=>createStore});var a=r(74375),o=r(25214),i=r(78901),n=r(68956),s=r(73365);let identity=e=>e,createStore=(e,t,r)=>(0,n.q)([t?(0,i.r)(t):identity,t?(0,a.R)(t):identity,r?(0,o.A)(r):identity],(0,s.M)(e))},25214:(e,t,r)=>{"use strict";r.d(t,{A:()=>optimistic});let trivial=async()=>null,optimistic=(e=trivial)=>{let t=Promise.resolve();return r=>(r.subscribe(a=>{let o=!1,handler=async()=>{if(o)return;let t=await e(a);o||null==t||r.set(t)};return t=t.then(handler).catch(e=>{console.error("Error in optimistic validation:",e)}),()=>{o=!0}}),r)}},74375:(e,t,r)=>{"use strict";r.d(t,{R:()=>persisted});var a=r(87337);let getIDB=async e=>{try{return await (0,a.U2)(e)}catch(e){return}},setIDB=async(e,t)=>{try{await (0,a.t8)(e,t)}catch(e){}},debounce=(e,t)=>{let r;return(...a)=>{clearTimeout(r),r=setTimeout(()=>{e(...a)},t)}},persisted=e=>t=>{let handler=async()=>{let r=await getIDB(e);"undefined"!=typeof document&&t.set(r??t.readInitial())},r=debounce(handler,500);return r(),globalThis.addEventListener?.("focus",()=>r()),globalThis.document?.addEventListener("visibilitychange",()=>"visible"===document.visibilityState&&r()),t.subscribe(t=>{setIDB(e,t)}),t}},78901:(e,t,r)=>{"use strict";r.d(t,{r:()=>singleton}),globalThis.faststore_sdk_stores=globalThis.faststore_sdk_stores??new Map;let singleton=e=>t=>{let r=globalThis.faststore_sdk_stores;return r.has(e)||r.set(e,t),r.get(e)}},68956:(e,t,r)=>{"use strict";r.d(t,{q:()=>compose});let compose=(e,t)=>e.reduce((e,t)=>t(e),t)},12254:(e,t,r)=>{"use strict";r.d(t,{q:()=>SDKError});let SDKError=class SDKError extends Error{constructor(e){super(`[sdk]: ${e}`)}}},72339:(e,t,r)=>{"use strict";r.d(t,{Z:()=>__WEBPACK_DEFAULT_EXPORT__});let __WEBPACK_DEFAULT_EXPORT__=e=>{let t=new URL(e.base,"http://localhost"),{page:r,selectedFacets:a,sort:o,term:i,passThrough:n}=e;null!==i&&t.searchParams.set("q",i);let s=new Set;for(let e of a)t.searchParams.append(e.key,e.value),s.add(e.key);if(a.length>0&&t.searchParams.set("facets",Array.from(s).join(",")),t.searchParams.set("sort",o),t.searchParams.set("page",r.toString()),n)for(let[e,r]of n.entries())t.searchParams.append(e,r);return t}}};
|
|
495
|
+
`}},"vtexaf-config")]})}},98132:(e,t,r)=>{"use strict";r.d(t,{KS:()=>o,YQ:()=>i,gK:()=>a});let a=12,o=5,i=3e3},19630:(e,t,r)=>{"use strict";r.a(e,async(e,a)=>{try{r.r(t),r.d(t,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var o=r(16641),i=r(40968),n=r.n(i),s=r(33339),l=r(69029),c=r(16652),u=r(61992),d=r(98736),p=r(3571),m=r(13028),f=r(25326),y=r(77938),b=r(45011);r(45276);var g=r(98132),P=r(20997),v=r(16689),h=e([u]);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}u=(h.then?(await h)():h)[0];let __WEBPACK_DEFAULT_EXPORT__=function({Component:e,pageProps:t}){(0,y.Z)();let r=(0,s.useRouter)(),{start:a}=(0,l.R)();return a(r.asPath,{itemsPerPage:g.gK}),(0,P.jsxs)(f.Z,{children:[(0,P.jsxs)(n(),{children:[" ",!process.env.DISABLE_3P_SCRIPTS&&P.jsx(u.Z,{})]}),P.jsx(o.DefaultSeo,_objectSpread({},b.Z)),P.jsx(p.Z,{}),P.jsx(c.ZP,{children:P.jsx(m.L,{children:P.jsx(d.Z,{children:(0,v.createElement)(e,_objectSpread(_objectSpread({},t),{},{key:t?.key}))})})})]})};a()}catch(e){a(e)}})},3571:(e,t,r)=>{"use strict";r.d(t,{Z:()=>__WEBPACK_DEFAULT_EXPORT__});var a=r(28529),o=r(43412),i=r.n(o);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}let __WEBPACK_DEFAULT_EXPORT__=()=>((0,a.W)(e=>{window.dataLayer.push({ecommerce:null});let t=e.isEcommerceEvent?{event:e.name,ecommerce:e.params}:function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({event:e.name},e.params);window.dataLayer.push(t),r(73982)(`./${i().platform}`).then(({default:t})=>{t(e)})}),null)},71041:(e,t,r)=>{"use strict";r.d(t,{i8:()=>y,jD:()=>useCart});var a=r(25487),o=r(29380),i=r(16689),n=r(43412),s=r.n(n),l=r(57440),c=r(97358),u=r(50135);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let d=a.D5,isGift=e=>0===e.price,getItemId=e=>[e.itemOffered.sku,e.seller.identifier,e.itemOffered.additionalProperty?.map(({propertyID:e})=>e).join("-")].filter(Boolean).join("::"),validateCart=async e=>{let{validateCart:t=null}=await (0,l.W)(d,{session:c.Qf.read(),cart:{order:{orderNumber:e.id,shouldSplitItem:e.shouldSplitItem,acceptedOffer:e.items.map(({price:e,listPrice:t,seller:r,quantity:a,itemOffered:o})=>({price:e,listPrice:t,seller:r,quantity:a,itemOffered:{sku:o.sku,image:o.image,name:o.name,additionalProperty:o.additionalProperty}}))}}});return t&&{id:t.order.orderNumber,items:t.order.acceptedOffer.map(e=>_objectSpread(_objectSpread({},e),{},{id:getItemId(e)})),messages:t.messages,shouldSplitItem:t.order.shouldSplitItem}},[p,m]=(0,u.d)(validateCart),f=(0,o.n)(s().cart,m),y=_objectSpread(_objectSpread({},f),{},{addItem:e=>{let t=_objectSpread(_objectSpread({},e),{},{id:getItemId(e)});f.addItem(t)}}),useCart=({useUnitMultiplier:e}={useUnitMultiplier:!1})=>{let t=(0,u.o)(y),r=(0,u.o)(p);return(0,i.useMemo)(()=>{let a=t.items.reduce((t,r)=>{t.total+=r.price*r.quantity,t.totalWithTaxes+=r.priceWithTaxes*r.quantity;let a=e?r.quantity*(r?.itemOffered?.unitMultiplier??1):r.quantity;return t.totalItems+=isGift(r)?0:a,t.subTotal+=r.listPrice*a,t.subTotalWithTaxes+=r.listPriceWithTaxes*a,t},{totalItems:0,total:0,subTotal:0,totalWithTaxes:0,subTotalWithTaxes:0});return _objectSpread(_objectSpread(_objectSpread({},t),a),{},{isValidating:r,messages:t.messages,gifts:t.items.filter(e=>isGift(e)),items:t.items.filter(e=>!isGift(e)),totalUniqueItems:t.items.length})},[t,r,e])}},13028:(e,t,r)=>{"use strict";r.d(t,{L:()=>DeliveryPromiseProvider,P:()=>useDeliveryPromiseContext});var a=r(12404),o=r.n(a),i=r(16689),n=r(97358),s=r(78209),l=r(25487),c=r(43412),u=r(57440);let d=l.Rb,getPickupPoints=async({geoCoordinates:e})=>{if(!c.deliveryPromise.enabled||!e)return[];let t=await (0,u.W)(d,{geoCoordinates:e??void 0});if(!t)return[];let r=t.pickupPoints?.pickupPointDistances?.filter(e=>e.isActive).map(e=>({id:e?.pickupId,name:e?.pickupName,totalItems:t.pickupPoints?.pickupPointDistances?.length??0,address:{street:e?.address?.street,number:e?.address?.number,postalCode:e?.address?.postalCode,city:e?.address?.city,state:e?.address?.state},distance:e?.distance}));return r};var p=r(52011),m=r(20997);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let f=(0,i.createContext)(void 0);function DeliveryPromiseProvider({children:e}){let{postalCode:t,geoCoordinates:r}=(0,n.kP)(),{0:a,1:l}=(0,i.useReducer)(s.pO,void 0,s.wL);(0,i.useEffect)(()=>{t&&a.shouldUpdatePickupPoints&&async function(){let e=await getPickupPoints({geoCoordinates:a.simulatePickupPoints&&a.pickupPointsSimulation?.geoCoordinates?a.pickupPointsSimulation.geoCoordinates:r});if(a.simulatePickupPoints){p.KL.set({pickupPointsSimulation:_objectSpread(_objectSpread({},a.pickupPointsSimulation),{},{pickupPoints:e}),shouldUpdatePickupPoints:!1,simulatePickupPoints:!1});return}if(0!==a.pickupPoints.length&&o()(a.pickupPoints,e))return;let t=e.some(({id:e})=>e===a.globalPickupPoint?.id);p.KL.set({globalPickupPoint:t?a.globalPickupPoint:null,defaultPickupPoint:null,pickupPoints:e,pickupPointsSimulation:s.sd,simulatePickupPoints:!1,shouldUpdatePickupPoints:!1})}()},[a.shouldUpdatePickupPoints,t]);let c=(0,i.useMemo)(()=>_objectSpread(_objectSpread({},a),{},{dispatchDeliveryPromiseAction:l}),[a]);return m.jsx(f.Provider,{value:c,children:e})}function useDeliveryPromiseContext(){let e=(0,i.useContext)(f);if(void 0===e)throw Error("Missing Delivery Promise context on React tree");return e}},78209:(e,t,r)=>{"use strict";function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}r.d(t,{pO:()=>deliveryPromiseReducer,sd:()=>a,wL:()=>initializeDeliveryPromiseState});let a={pickupPoints:[],geoCoordinates:null},initializeDeliveryPromiseState=()=>({pickupPoints:[],defaultPickupPoint:null,globalPickupPoint:null,shouldUpdatePickupPoints:!1,simulatePickupPoints:!1,pickupPointsSimulation:a}),deliveryPromiseReducer=(e,t)=>{let{type:r}=t;switch(r){case"updatePickupPoints":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),{},{defaultPickupPoint:null,globalPickupPoint:null,pickupPoints:r.pickupPoints,shouldUpdatePickupPoints:r.shouldUpdatePickupPoints})}case"onPostalCodeChange":if(t.payload){let{payload:{simulatePickupPoints:r,validatedSession:a}}=t;return _objectSpread(_objectSpread({},e),{},{simulatePickupPoints:r,pickupPointsSimulation:_objectSpread(_objectSpread({},e.pickupPointsSimulation),{},{geoCoordinates:a.geoCoordinates}),shouldUpdatePickupPoints:!0})}return _objectSpread(_objectSpread({},e),{},{pickupPointsSimulation:a,shouldUpdatePickupPoints:!0});case"changePickupPoint":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),{},{defaultPickupPoint:r})}case"changeGlobalPickupPoint":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),{},{globalPickupPoint:r})}case"updateDeliveryPromiseState":{let{payload:r}=t;return _objectSpread(_objectSpread({},e),r)}case"clearPickupPointsSimulation":return _objectSpread(_objectSpread({},e),{},{simulatePickupPoints:!1,pickupPointsSimulation:a});default:throw Error(`Action ${r} not implemented`)}}},52011:(e,t,r)=>{"use strict";r.d(t,{DX:()=>v,KL:()=>w,d:()=>g,gA:()=>f,z0:()=>useDeliveryPromise});var a=r(12404),o=r.n(a),i=r(16689),n=r(49578),s=r(69029),l=r(9664),c=r(97358),u=r(43412),d=r(13028),p=r(78209);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let m="pickupPoint",f="shipping",y="pickup-in-point",b="all-delivery-methods",g="pickup-all",P="all-delivery-options",v="delivery-options",h="dynamic-estimate",_="in-stock",S=(0,n.M)({pickupPoints:[],defaultPickupPoint:null,globalPickupPoint:null,shouldUpdatePickupPoints:!1,pickupPointsSimulation:void 0,simulatePickupPoints:!1},"fs::deliveryPromise"),w=_objectSpread(_objectSpread({},S),{},{set:e=>{let t=S.read(),r=_objectSpread(_objectSpread({},t),e);o()(t,r)||S.set(r)}});function useDeliveryPromise({allFacets:e,selectedFilterFacets:t,deliveryPromiseSettings:r,fallbackToFirstPickupPoint:a=!0,deliveryPromiseBadges:o}={}){let{postalCode:n}=(0,c.kP)(),{state:g,setState:S}=(0,s.R)(),{pickupPoints:j,defaultPickupPoint:k,globalPickupPoint:C,pickupPointsSimulation:D,dispatchDeliveryPromiseAction:E,shouldUpdatePickupPoints:T}=(0,d.P)(),x=u.deliveryPromise.enabled,I=r?.deliveryOptions?.enabled??!0,N=r?.inStock?.enabled??!1,A=(0,i.useMemo)(()=>t??g.selectedFacets,[t,g.selectedFacets]),F=(0,i.useMemo)(()=>A.find(({key:e})=>e===m)?.value,[A]);(0,i.useEffect)(()=>{let e=[w.subscribe(e=>{E({type:"updateDeliveryPromiseState",payload:e})})];return()=>{e.forEach(e=>e())}},[]),(0,i.useEffect)(()=>{0!==j.length&&w.set({defaultPickupPoint:M(F)})},[j,F]),(0,i.useEffect)(()=>{let e=A.some(({key:e})=>e===f),t=!!C&&!e;t&&S({selectedFacets:(0,l.a2)(A,[{key:f,value:y},{key:m,value:C.id}],!0),page:0})},[]);let M=(0,i.useCallback)(e=>{if(!j?.length)return;let t=j?.find(({id:t})=>t===e)??k??C;return a&&!t?j[0]:t},[j,k,C]),R=(0,i.useMemo)(()=>({value:y,label:k?.name??k?.address.street,selected:A?.some(({key:e,value:t})=>t===y||e===m),quantity:k?.totalItems}),[k,A]),L=(0,i.useMemo)(()=>({key:_,label:_,__typename:"StoreFacetBoolean",values:[{value:"true",label:r?.inStock?.label??"In-stock only",selected:A.some(({key:e,value:t})=>e===_&&"true"===t),quantity:null}]}),[r,A]),{0:U,1:K}=(0,i.useMemo)(()=>[{value:b,label:r?.deliveryMethods?.allDeliveryMethods??"All delivery methods",selected:!A.some(({key:e})=>e===f)||A?.some(({key:e,value:t})=>e===f&&t===b),quantity:0},{value:P,label:r?.deliveryOptions?.allDeliveryOptions??"All delivery options",selected:!A.some(({key:e})=>e===v)||A?.some(({key:e,value:t})=>e===v&&t===P),quantity:0}],[A,r,R]),$=(0,i.useCallback)(({facet:e=null,facets:t=[],filterDispatch:r})=>{var a;let o=!0,i=t?.length!==0?t:[e],n=A;if(e?.value===y?i.push({key:m,value:k?.id}):(o="string"==typeof(a=e?.key)&&O.some(e=>e===a),n=n.filter(({key:e})=>e!==m),i.concat(n)),r){r({type:"toggleFacets",payload:{unique:o,facets:i}});return}S({selectedFacets:(0,l.a2)(n,i,o),page:0})},[A,k]),V=(0,i.useMemo)(()=>{if(!e)return[];if(!x||!n)return e.filter(({key:e})=>e!==f&&e!==v&&e!==h);let t=e.filter(({key:e})=>e!==h).filter(({key:e})=>!!I||e!==v);return N&&!t.find(({key:e})=>e===_)&&t.find(({key:e})=>e===f)&&t.push(L),t.map(e=>{if("StoreFacetBoolean"!==e.__typename)return e;if(e.key===v)return e.values=withUniqueFacet(e.values,K),e;if(e.key!==f)return e;e.values=withUniqueFacet(e.values,U);let t=e.values.findIndex(e=>e?.value===y);if(-1===t||k)-1===t&&k?e.values.push(R):e.values[t]&&e.values[t]?.label!==R.label&&(e.values[t]=R);else{let r=A.find(({key:e})=>e===f);if(r){let e=A.filter(({key:e,value:t})=>t===y||e===m);e.length?$({facets:e}):$({facet:r})}e.values=e.values.filter((e,r)=>r!==t)}return e.values=e.values.sort((e,t)=>(e.value??"").localeCompare(t.value??"")),e}).sort((e,t)=>{let getPriority=e=>e===f?0:e===v?1:e===_?2:3;return getPriority(e.key)-getPriority(t.key)})},[U,R,e,k,C,j,A,$,F]),W=(0,i.useCallback)(({simulatePickupPoints:e=!1,validatedSession:t=null}={})=>{let r={country:t?.country,postalCode:t?.postalCode,geoCoordinates:t?.geoCoordinates};E(_objectSpread({type:"onPostalCodeChange"},e?{payload:{simulatePickupPoints:e,validatedSession:_objectSpread({},r)}}:void 0))},[]),B=(0,i.useCallback)(()=>w.set({pickupPointsSimulation:p.sd}),[]),q={[f]:r?.deliveryMethods?.title??"Delivery",[v]:r?.deliveryOptions?.title??"Delivery Option",[_]:r?.inStock?.title??"Availability"};function getBadgeLabel(e,t){let a={delivery:{available:r?.deliveryPromiseBadges?.delivery??"Available for shipping",unavailable:r?.deliveryPromiseBadges?.deliveryUnavailable??"Unavailable for shipping"},"pickup-in-point":{available:r?.deliveryPromiseBadges?.pickupInPoint??"Available for pickup",unavailable:r?.deliveryPromiseBadges?.pickupInPointUnavailable??"Unavailable for pickup"}};return a[e]?t?a[e].available:a[e].unavailable:e}let Q=function(){if(!o||0===o.length)return[];let e=[],t=o?.map(e=>e.typeName),r=t?.includes("delivery"),a=t?.includes("pickup-in-point");return r?e.push({label:getBadgeLabel("delivery",!0),availability:!0}):e.push({label:getBadgeLabel("delivery",!1),availability:!1}),a?e.push({label:getBadgeLabel("pickup-in-point",!0),availability:!0}):e.push({label:getBadgeLabel("pickup-in-point",!1),availability:!1}),e}(),H=!!n&&x&&(r?.deliveryPromiseBadges?.enabled??!0)&&Q.length>0;return{mandatory:u.deliveryPromise.mandatory,isEnabled:x,pickupPoints:j,defaultPickupPoint:k,selectedPickupPointFacet:F,pickupPointsSimulation:D,clearPickupPointsSimulation:B,fetchingPickupPoints:T,changePickupPoint:e=>{w.set({defaultPickupPoint:e})},globalPickupPoint:C,changeGlobalPickupPoint:e=>{w.set({globalPickupPoint:e})},pickupPointByID:M,facets:V,onPostalCodeChange:W,onDeliveryFacetChange:$,labelsMap:q,isPickupAllEnabled:j?.length>0&&(r?.deliveryMethods?.pickupAll?.enabled??!1),shouldDisplayDeliveryButton:x&&!n,shouldDisplayDeliveryPromiseBadges:H,badges:Q}}function withUniqueFacet(e,t){return[t,...e.filter(e=>e.value!==t.value)]}let O=["shipping","pickupPoint","delivery-options"]},25326:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var a=r(16689);let getReloads=()=>Number(window.sessionStorage.getItem("store:reloads")??"0"),setReloads=e=>window.sessionStorage.setItem("store:reloads",`${e}`),canRecover=()=>2>getReloads(),isFrameworkLevelError=e=>e?.name==="ChunkLoadError";let ErrorBoundary=class ErrorBoundary extends a.Component{constructor(...e){super(...e),function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(this,"state",{hasError:!1,error:null})}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){if(console.error(`React Error: ${e.message} ${t.componentStack}`),window.location.pathname.startsWith("/404")||window.location.pathname.startsWith("/500"))return;let r=encodeURIComponent(window.location.pathname),a=e?.extensions?.exception?.status===404;isFrameworkLevelError(e)&&canRecover()?(setReloads(getReloads()+1),window.location.reload()):a?window.location.href=`/404?from=${r}`:window.location.href=`/500?from=${r}&errorId=unknown`}render(){return this.state.hasError?null:this.props.children}};let o=ErrorBoundary},77938:(e,t,r)=>{"use strict";r.d(t,{Z:()=>useGeolocation});var a=r(16689),o=r(43412),i=r(98132),n=r(97358),s=r(17552);function useGeolocation(){(0,a.useEffect)(()=>{o.deliveryPromise.enabled&&setTimeout(()=>{let e=n.Qf.read();e.postalCode&&e.geoCoordinates||(0,s.ne)(e).then(async t=>{if(e===t||(e=n.Qf.read()).postalCode||e.geoCoordinates)return;let r=await (0,n.je)(t);n.Qf.set(r??t)})},i.YQ)},[])}},57440:(e,t,r)=>{"use strict";function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}r.d(t,{W:()=>request});let a={POST:{"Content-Type":"application/json"}},request=async(e,t,r)=>{let{data:a,errors:o}=await baseRequest("/api/graphql",_objectSpread(_objectSpread({},r),{},{variables:t,operation:e}));if(o?.length)throw o[0];return a},baseRequest=async(e,{operation:t,variables:r,fetchOptions:o})=>{let{operationName:i,operationHash:n}=t.__meta__,s=o?.method!==void 0?o.method.toUpperCase():i.endsWith("Query")?"GET":"POST",l=new URLSearchParams(_objectSpread({operationName:i,operationHash:n},"GET"===s&&{variables:JSON.stringify(r)})),c="POST"===s?JSON.stringify({operationName:i,operationHash:n,variables:r}):void 0,u=`${e}?${l.toString()}`,d=await fetch(u,_objectSpread(_objectSpread({method:s,body:c},o),{},{headers:_objectSpread(_objectSpread({},a[s]),o?.headers)}));if(!d.ok){let e=d.statusText;return{errors:[{status:d.status,message:e}],data:void 0}}return d.json()}},97358:(e,t,r)=>{"use strict";r.d(t,{Qf:()=>O,je:()=>validateSession,kP:()=>useSession});var a=r(25487),o=r(88987),i=r(47881),n=r.n(i),s=r(16689),l=r(43412),c=r.n(l),u=r(4018),d=r(71041),p=r(57440),m=r(50135),f=r(17552),y=r(12404),b=r.n(y);let g=["channel"],P=["hasOnlyDefaultSalesChannel"];function _objectWithoutProperties(e,t){if(null==e)return{};var r,a,o=function(e,t){if(null==e)return{};var r,a,o={},i=Object.keys(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let v=`${c().storeUrl}/api/vtexid/refreshtoken/webstore`,h=a.$G,validateSession=async e=>{if(c().deliveryPromise?.enabled&&(!e.postalCode||e.postalCode===c().session.postalCode)){if(e.b2b&&e.b2b?.savedPostalCode)O.set(_objectSpread(_objectSpread({},e),{},{postalCode:e.b2b.savedPostalCode}));else{let t=await (0,f.Ph)(e);t&&O.set(t)}}try{if(!e)return null;let t=await (0,p.W)(h,{session:e,search:window.location.search});return t.validateSession}catch(r){let t=r?.status===401&&c().experimental?.refreshToken;if(t){let t={"content-type":"application/json",Host:`${(0,u.Y1)(c().storeUrl)}`},r=await fetchWithRetry(v,{credentials:"include",headers:t,body:JSON.stringify({}),method:"POST"});if(r?.status?.toLowerCase?.()==="success"){let t=String(Math.floor(new Date(r?.refreshAfter).getTime()/1e3));O.set(_objectSpread(_objectSpread({},e),{},{refreshAfter:t}))}else O.set(_objectSpread(_objectSpread({},e),{},{refreshAfter:String(Math.floor(Date.now()/1e3)+3600)}))}}},[_,S]=(0,m.d)(validateSession),w=(0,o.S)(c().session,S),O=_objectSpread(_objectSpread({},w),{},{set:e=>{!0!==b()(e,w.read())&&(w.set(e),d.i8.set(d.i8.read()))}}),useSession=({filter:e}={filter:!0})=>{let t=O.read()??O.readInitial(),r=(0,m.o)(O),a=(0,m.o)(_),o=r??t,{channel:i}=o,n=_objectWithoutProperties(o,g);if(e){let e=JSON.parse(i),{hasOnlyDefaultSalesChannel:t}=e,r=_objectWithoutProperties(e,P);i=JSON.stringify(r)}return(0,s.useMemo)(()=>_objectSpread(_objectSpread({},n),{},{channel:i,isValidating:a}),[a,n,i])};async function fetchWithRetry(e,t,r=3){for(let a=0;a<r;a++)try{let r=await n()(e,t);if(200!==r.status)continue;let a=await r.json();if(a.status?.toLowerCase?.()==="success")return a}catch{}}},50135:(e,t,r)=>{"use strict";r.d(t,{d:()=>createValidationStore,o:()=>useStore});var a=r(73365),o=r(16689);let useStore=e=>(0,o.useSyncExternalStore)(e.subscribe,e.read,e.readInitial),createValidationStore=e=>{let t=(0,a.M)(!1),onValidate=async r=>{try{return t.set(!0),await e(r)}finally{t.set(!1)}};return[t,onValidate]}},17552:(e,t,r)=>{"use strict";let a,o;r.d(t,{ne:()=>getNavigatorGeolocation,Ph:()=>getPostalCode,MS:()=>useCheckRegionState});var i=r(25487),n=r(57440);let s=i.pR,getAddresses=async e=>{let t=await (0,n.W)(s,{id:e});return t.profile.addresses},getSavedAddress=async e=>{let t=await getAddresses(e);return t?t[0]:null};var l=r(43412),c=r.n(l),u=r(97358),d=r(16689),p=r(16652);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let set=(e,t)=>t&&Object.keys(t).length?_objectSpread(_objectSpread({},e),t):e,getUserSavedAddress=async e=>{if(a)return set(e,a);let t=e?.person;if(!t?.id)return Promise.resolve(e);let{city:r,country:o,geoCoordinate:i,postalCode:n}=await getSavedAddress(t.id)??{};return set(e,a={city:r,country:o,geoCoordinates:{latitude:i?.[1]??null,longitude:i?.[0]??null},postalCode:n})},getNavigatorGeolocation=e=>new Promise(t=>o?t(set(e,{geoCoordinates:o})):navigator&&"geolocation"in navigator?navigator.geolocation.getCurrentPosition(({coords:{latitude:r,longitude:a}})=>t(set(e,{geoCoordinates:o={latitude:r,longitude:a}})),r=>(console.warn("Failed to get navigator location: ",r),t(e)),{timeout:18e4}):e),getPostalCode=async e=>{let t=await getUserSavedAddress(e);if(t!==e)return t;let r=c().session?.postalCode??null;return set(e,{postalCode:r})},{deliveryPromise:m,session:f}=c(),useCheckRegionState=e=>{let{0:t,1:r}=(0,d.useState)("closed"),{openModal:a,openPopover:o,modal:i,closePopover:n}=(0,p.l8)();return(0,d.useEffect)(()=>{if(m.enabled)return u.Qf.subscribe(e=>{if(m.mandatory&&!e?.postalCode&&!i)return a();r(t=>{let r=function(e){let t=!!f.postalCode&&f.postalCode===e?.postalCode,r=!t&&(e?.postalCode||m.mandatory)?"closed":"open";return r}(e);return t!==r?r:t})})},[i]),(0,d.useEffect)(()=>{if("closed"===t){n();return}e&&o({isOpen:!0,triggerRef:e})},[e,t]),{openModal:a,openPopover:o,regionPopoverState:t}}},4018:(e,t,r)=>{"use strict";function textToKebabCase(e){let t=e.replace(/[^\w\s]/gi,"-");return(t=(t=t.replace(/\s+/g,"-")).toLowerCase())??""}function textToTitleCase(e){return e?e.replace(/\S+/g,e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()):""}function camelCaseToTitle(e){if(!e)return"";let t=e.replace(/([a-z])([A-Z])/g,"$1 $2");return t.charAt(0).toUpperCase()+t.slice(1)}function extractStatusFromError(e){if(e?.extensions?.status)return e.extensions.status;if(!e?.message)return;let t=e.message.match(/{.*}$/);if(t)try{let e=JSON.parse(t[0]);if(e.status)return e.status;if(e.message){let t=JSON.parse(e.message);return t.status}}catch{console.error("Failed to parse error message:",t[0])}}function sanitizeHost(e){return e?e.replace(/^https?:\/\//,""):""}r.d(t,{B5:()=>textToKebabCase,E2:()=>extractStatusFromError,GZ:()=>buildFormData,VV:()=>overwriteMerge,Y1:()=>sanitizeHost,_W:()=>textToTitleCase,gi:()=>camelCaseToTitle,qo:()=>toArray});let buildFormData=e=>{let t=new FormData;return Object.keys(e).forEach(r=>{let a=e[r];t.append(r,null===a?"":String(a))}),t},toArray=e=>Array.isArray(e)?e:e?[e]:[],overwriteMerge=(e,t)=>t},45276:()=>{},16652:(e,t,r)=>{"use strict";r.d(t,{ZP:()=>__WEBPACK_DEFAULT_EXPORT__,gK:()=>i,l8:()=>useUI});var a=r(16689),o=r.n(a);let i={setLocation:"setLocation",changeLocation:"changeLocation",changePickupPoint:"changePickupPoint",globalChangePickupPoint:"globalChangePickupPoint"},reducer=(e,t)=>{let{type:r}=t;switch(r){case"open":{let{payload:r}=t;return document.body.classList.add("no-scroll"),{...e,[r]:!0}}case"close":{let{payload:r}=t;return document.body.classList.remove("no-scroll"),{...e,[r]:!1}}case"pushToast":{let r=e.toasts.some(e=>e.message===t.payload.message&&e.status===t.payload.status);if(r)return e;return{...e,toasts:[...e.toasts,t.payload]}}case"popToast":return{...e,toasts:e.toasts.slice(1)};case"openPopover":return{...e,popover:{isOpen:!0,triggerRef:t.payload.triggerRef}};case"closePopover":return{...e,popover:{isOpen:!1,triggerRef:void 0}};case"openRegionSlider":return document.body.classList.add("no-scroll"),{...e,regionSlider:{type:t.payload,isOpen:!0}};case"closeRegionSlider":return e.filter||document.body.classList.remove("no-scroll"),{...e,regionSlider:{type:"none",isOpen:!1}};default:throw Error(`Action ${r} not implemented`)}},initializer=()=>({cart:!1,modal:!1,navbar:!1,filter:!1,toasts:[],popover:{isOpen:!1,triggerRef:void 0},regionSlider:{type:"none",isOpen:!1}}),n=(0,a.createContext)(void 0);function useUI(){let e=(0,a.useContext)(n);if(void 0===e)throw Error("Missing UI context on React tree");return e}let __WEBPACK_DEFAULT_EXPORT__=function({children:e}){let[t,r]=(0,a.useReducer)(reducer,void 0,initializer),i=(0,a.useMemo)(()=>({openFilter:()=>r({type:"open",payload:"filter"}),closeFilter:()=>r({type:"close",payload:"filter"}),openNavbar:()=>r({type:"open",payload:"navbar"}),closeNavbar:()=>r({type:"close",payload:"navbar"}),openCart:()=>r({type:"open",payload:"cart"}),closeCart:()=>r({type:"close",payload:"cart"}),openModal:()=>r({type:"open",payload:"modal"}),closeModal:()=>r({type:"close",payload:"modal"}),pushToast:e=>r({type:"pushToast",payload:e}),popToast:()=>r({type:"popToast"}),openPopover:e=>r({type:"openPopover",payload:e}),closePopover:()=>r({type:"closePopover"}),openRegionSlider:e=>r({type:"openRegionSlider",payload:e}),closeRegionSlider:()=>r({type:"closeRegionSlider"})}),[]),s=(0,a.useMemo)(()=>({...t,...i}),[i,t]);return o().createElement(n.Provider,{value:s},e)}},73982:(e,t,r)=>{var a={"./vtex":[7692,4365,7692],"./vtex/":[7692,4365,7692],"./vtex/index":[7692,4365,7692],"./vtex/index.ts":[7692,4365,7692],"./vtex/rc":[38068,8068],"./vtex/rc.ts":[38068,8068],"./vtex/search":[4365,4365],"./vtex/search.ts":[4365,4365]};function webpackAsyncContext(e){if(!r.o(a,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=a[e],o=t[0];return Promise.all(t.slice(1).map(r.e)).then(()=>r(o))}webpackAsyncContext.keys=()=>Object.keys(a),webpackAsyncContext.id=73982,e.exports=webpackAsyncContext},28529:(e,t,r)=>{"use strict";r.d(t,{W:()=>useAnalyticsEvent});var a=r(16689),o=r(14950);let useAnalyticsEvent=e=>{let t=(0,a.useCallback)(t=>{try{if(t.data.name!==o.vi)return;e((0,o.Wg)(t.data))}catch(e){console.error("Something went wrong while running Analytics handler")}},[e]);(0,a.useEffect)(()=>(window.addEventListener("message",t),()=>window.removeEventListener("message",t)),[t])}},14950:(e,t,r)=>{"use strict";r.d(t,{Mi:()=>a,Wg:()=>unwrap,re:()=>wrap,vi:()=>o});let a="store:",o="AnalyticsEvent",wrap=e=>({name:o,isEcommerceEvent:e.isEcommerceEvent??!0,params:{...e,name:`${a}${e.name}`}}),unwrap=e=>({...e.params,isEcommerceEvent:e.isEcommerceEvent??!0,name:e.params.name.slice(a.length,e.params.name.length)})},29380:(e,t,r)=>{"use strict";r.d(t,{n:()=>createCartStore});var a=r(12254),o=r(49578);let createCartStore=(e,t,r="fs::cart")=>{let i=(0,o.M)(e,r,t),getItem=e=>i.read().items.find(t=>t.id===e);return{...i,getItem,addItem:e=>{if(!e.id)throw new a.q("You must provide an `id` for items");if(e.quantity<0)throw new a.q("Item quantity needs to be higher than zero");let t=i.read(),r=getItem(e.id),o=r?{...e,quantity:r.quantity+e.quantity}:e;i.set({...t,items:r?t.items.map(e=>e===r?o:e):[...t.items,o]})},updateItemQuantity:(e,t)=>{let r=i.read(),o=getItem(e);if(!o)throw new a.q(`Item with id not found: ${e}`);let n={...o,quantity:t};i.set({...r,items:r.items.map(e=>e===o?n:e).filter(e=>e.quantity>0)})},removeItem:e=>{let t=i.read(),r=getItem(e);i.set({...t,items:t.items.filter(e=>e!==r)})},emptyCart:()=>i.set({...i.read(),items:[]}),inCart:e=>!!getItem(e),isEmpty:()=>0===i.read().items.length}}},9664:(e,t,r)=>{"use strict";r.d(t,{Ru:()=>removeFacet,a2:()=>toggleFacets,uL:()=>setFacet,wB:()=>toggleFacet,wb:()=>isSearchSort});var a=r(12254);let o=new Set(["price_desc","price_asc","orders_desc","name_desc","name_asc","release_desc","discount_desc","score_desc"]),isSearchSort=e=>o.has(e),removeFacet=(e,t)=>{let{value:r}=t,o=e.findIndex(e=>e.value===r);if(o<0)throw new a.q(`Cannot remove ${r} from search params`);return e.filter((e,t)=>t!==o)},setFacet=(e,t,r)=>{if(!0===r){let r=e.findIndex(e=>e.key===t.key);if(r>-1)return e.map((e,a)=>a===r?t:e)}return[...e,t]},toggleFacet=(e,t,r)=>{let a=e.find(e=>e.key===t.key&&e.value===t.value);return void 0!==a?removeFacet(e,t):setFacet(e,t,r)},toggleFacets=(e,t,r)=>t.reduce((e,t)=>toggleFacet(e,t,r),e)},86878:(e,t,r)=>{"use strict";r.d(t,{j:()=>initialize,X:()=>c});var a=r(62987),o=r(26142),i=r(72339),n=r(12404),s=r.n(n);let initialize=({sort:e="score_desc",selectedFacets:t=[],term:r=null,base:a="/",page:o=0,passThrough:i=new URLSearchParams}={})=>({sort:e,selectedFacets:t,term:r,base:a,page:o,passThrough:i}),l=(0,a.U)((e,t)=>({state:initialize(),setState:r=>{let a=t().state,o={...a,...r};!1===s()(a,o)&&e({state:o})},appendFacet:t=>e(e=>({state:{...e.state,selectedFacets:[...e.state.selectedFacets.filter(e=>!t.some(t=>t.key===e.key)),...t]}})),itemsPerPage:0,setItemsPerPage:t=>e({itemsPerPage:t}),pages:function(){try{let e=window.history.state?.key;if(!e)return null;let t=getSessionStorageKey(e),r=sessionStorage.getItem(t);return r?JSON.parse(r):null}catch(e){return null}}()??[0],addPrevPage:()=>{let{pages:r}=t(),a=r[0]-1,o=[a,...r];setPagesSessionStorage(o),e({pages:o})},addNextPage:()=>{let{pages:r}=t(),a=Number(r.at(-1))+1,o=[...r,a];setPagesSessionStorage(o),e({pages:o})},resetInfiniteScroll:t=>{let r=[t];setPagesSessionStorage(r),e({pages:r})},parseURL:r=>{let a=(0,o.Q)(r),n=(0,i.Z)(t().state);(0,i.Z)(a).href!==n.href&&e({state:a})},serializedState:()=>(0,i.Z)(t().state),initialized:!1,reset:()=>{e({state:{...initialize({base:t().state.base})}})},start:(r,a)=>{t().initialized||e(e=>({initialized:!0,state:initialize({...e.state,...a,...(0,o.Q)(new URL(r,"http://localhost"))}),itemsPerPage:a.itemsPerPage??e.itemsPerPage,pages:a.pages??e.pages}))}})),c=(e=>{for(let t of(e.use={},Object.keys(e.getState())))e.use[t]=()=>e(e=>e[t]);return e})(l),getSessionStorageKey=e=>`__fs_gallery_page_${e}`;function setPagesSessionStorage(e){try{let t=window.history.state?.key;if(!t)return;let r=getSessionStorageKey(t);sessionStorage.setItem(r,JSON.stringify(e))}catch(e){return}}},26142:(e,t,r)=>{"use strict";r.d(t,{Q:()=>parse});var a=r(12254),o=r(9664),i=r(86878);let parse=({pathname:e,searchParams:t})=>{let r=(0,i.j)({base:e,term:t.get("q")??null,sort:t.get("sort")??void 0,page:Number(t.get("page")??0)});if(!(0,o.wb)(r.sort))throw new a.q(`Uknown sorting option ${r.sort}`);let n=t.get("facets")?.split(",")??[];for(let e of n){let a=t.getAll(e);for(let t of a)r.selectedFacets=(0,o.uL)(r.selectedFacets,{key:e,value:t})}return r.passThrough=function(e,t){let r=new URLSearchParams,a=new Set(t),o=Array.from(e.entries());for(let[e,t]of o)a.has(e)||r.append(e,t);return r}(t,["q","sort","page","facets",...n]),r}},69029:(e,t,r)=>{"use strict";r.d(t,{R:()=>useSearch});var a=r(86878);let useSearch=()=>{let e=(0,a.X)();return e}},88987:(e,t,r)=>{"use strict";r.d(t,{S:()=>createSessionStore});var a=r(49578);let createSessionStore=(e,t,r="fs::session")=>(0,a.M)(e,r,t)},73365:(e,t,r)=>{"use strict";r.d(t,{M:()=>createStore});let createStore=e=>{let t=new Set,r=new Set,a=e;return{set:e=>{a=e,r.forEach(e=>e()),r.clear(),t.forEach(t=>{let a=t(e);"function"==typeof a&&r.add(a)})},read:()=>a,readInitial:()=>e,subscribe:e=>(t.add(e),()=>{t.delete(e)})}}},49578:(e,t,r)=>{"use strict";r.d(t,{M:()=>createStore});var a=r(74375),o=r(25214),i=r(78901),n=r(68956),s=r(73365);let identity=e=>e,createStore=(e,t,r)=>(0,n.q)([t?(0,i.r)(t):identity,t?(0,a.R)(t):identity,r?(0,o.A)(r):identity],(0,s.M)(e))},25214:(e,t,r)=>{"use strict";r.d(t,{A:()=>optimistic});let trivial=async()=>null,optimistic=(e=trivial)=>{let t=Promise.resolve();return r=>(r.subscribe(a=>{let o=!1,handler=async()=>{if(o)return;let t=await e(a);o||null==t||r.set(t)};return t=t.then(handler).catch(e=>{console.error("Error in optimistic validation:",e)}),()=>{o=!0}}),r)}},74375:(e,t,r)=>{"use strict";r.d(t,{R:()=>persisted});var a=r(87337);let getIDB=async e=>{try{return await (0,a.U2)(e)}catch(e){return}},setIDB=async(e,t)=>{try{await (0,a.t8)(e,t)}catch(e){}},debounce=(e,t)=>{let r;return(...a)=>{clearTimeout(r),r=setTimeout(()=>{e(...a)},t)}},persisted=e=>t=>{let handler=async()=>{let r=await getIDB(e);"undefined"!=typeof document&&t.set(r??t.readInitial())},r=debounce(handler,500);return r(),globalThis.addEventListener?.("focus",()=>r()),globalThis.document?.addEventListener("visibilitychange",()=>"visible"===document.visibilityState&&r()),t.subscribe(t=>{setIDB(e,t)}),t}},78901:(e,t,r)=>{"use strict";r.d(t,{r:()=>singleton}),globalThis.faststore_sdk_stores=globalThis.faststore_sdk_stores??new Map;let singleton=e=>t=>{let r=globalThis.faststore_sdk_stores;return r.has(e)||r.set(e,t),r.get(e)}},68956:(e,t,r)=>{"use strict";r.d(t,{q:()=>compose});let compose=(e,t)=>e.reduce((e,t)=>t(e),t)},12254:(e,t,r)=>{"use strict";r.d(t,{q:()=>SDKError});let SDKError=class SDKError extends Error{constructor(e){super(`[sdk]: ${e}`)}}},72339:(e,t,r)=>{"use strict";r.d(t,{Z:()=>__WEBPACK_DEFAULT_EXPORT__});let __WEBPACK_DEFAULT_EXPORT__=e=>{let t=new URL(e.base,"http://localhost"),{page:r,selectedFacets:a,sort:o,term:i,passThrough:n}=e;null!==i&&t.searchParams.set("q",i);let s=new Set;for(let e of a)t.searchParams.append(e.key,e.value),s.add(e.key);if(a.length>0&&t.searchParams.set("facets",Array.from(s).join(",")),t.searchParams.set("sort",o),t.searchParams.set("page",r.toString()),n)for(let[e,r]of n.entries())t.searchParams.append(e,r);return t}}};
|