cloudcommerce 0.23.1 → 0.23.2

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.
Files changed (67) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/ecomplus-stores/barra-doce/functions/many/package.json +3 -3
  3. package/ecomplus-stores/barra-doce/functions/ssr/package.json +6 -6
  4. package/ecomplus-stores/barra-doce/functions/with-apps/package.json +3 -3
  5. package/ecomplus-stores/barra-doce/package.json +2 -2
  6. package/ecomplus-stores/iluminim/functions/many/package.json +3 -3
  7. package/ecomplus-stores/iluminim/functions/ssr/package.json +6 -6
  8. package/ecomplus-stores/iluminim/functions/with-apps/package.json +3 -3
  9. package/ecomplus-stores/iluminim/package.json +2 -2
  10. package/package.json +2 -2
  11. package/packages/api/package.json +1 -1
  12. package/packages/apps/affilate-program/package.json +1 -1
  13. package/packages/apps/correios/package.json +1 -1
  14. package/packages/apps/custom-payment/package.json +1 -1
  15. package/packages/apps/custom-shipping/package.json +1 -1
  16. package/packages/apps/datafrete/package.json +1 -1
  17. package/packages/apps/discounts/package.json +1 -1
  18. package/packages/apps/emails/package.json +1 -1
  19. package/packages/apps/fb-conversions/package.json +1 -1
  20. package/packages/apps/flash-courier/package.json +1 -1
  21. package/packages/apps/frenet/package.json +1 -1
  22. package/packages/apps/galaxpay/package.json +1 -1
  23. package/packages/apps/google-analytics/package.json +1 -1
  24. package/packages/apps/jadlog/package.json +1 -1
  25. package/packages/apps/loyalty-points/package.json +1 -1
  26. package/packages/apps/melhor-envio/package.json +1 -1
  27. package/packages/apps/mercadopago/package.json +1 -1
  28. package/packages/apps/pagarme/package.json +1 -1
  29. package/packages/apps/paghiper/package.json +1 -1
  30. package/packages/apps/pix/package.json +1 -1
  31. package/packages/apps/tiny-erp/package.json +1 -1
  32. package/packages/apps/webhooks/package.json +1 -1
  33. package/packages/cli/package.json +1 -1
  34. package/packages/config/package.json +1 -1
  35. package/packages/emails/package.json +1 -1
  36. package/packages/eslint/package.json +1 -1
  37. package/packages/events/package.json +1 -1
  38. package/packages/feeds/package.json +1 -1
  39. package/packages/firebase/package.json +1 -1
  40. package/packages/i18n/package.json +1 -1
  41. package/packages/modules/package.json +1 -1
  42. package/packages/passport/package.json +1 -1
  43. package/packages/ssr/cloudflare/swr-worker.js +16 -8
  44. package/packages/ssr/lib/firebase/serve-storefront.js +13 -0
  45. package/packages/ssr/lib/firebase/serve-storefront.js.map +1 -1
  46. package/packages/ssr/package.json +1 -1
  47. package/packages/ssr/src/cloudflare/swr-worker.ts +18 -10
  48. package/packages/ssr/src/cloudflare/tsconfig.json +2 -1
  49. package/packages/ssr/src/firebase/serve-storefront.ts +14 -0
  50. package/packages/storefront/dist/client/_astro/ShopHeader.2400b065.js +4 -0
  51. package/packages/storefront/dist/client/sw.js +1 -1
  52. package/packages/storefront/dist/server/chunks/{_...d3f15170.mjs → _...c5a36021.mjs} +2 -2
  53. package/packages/storefront/dist/server/chunks/{account@_@astro.38a725e7.mjs → account@_@astro.3e90f29a.mjs} +1 -1
  54. package/packages/storefront/dist/server/chunks/{endpoint@_@js.a92a4584.mjs → endpoint@_@js.b79eed3b.mjs} +2 -2
  55. package/packages/storefront/dist/server/chunks/{fallback@_@astro.4e98328e.mjs → fallback@_@astro.9f73db0f.mjs} +2 -2
  56. package/packages/storefront/dist/server/chunks/{index@_@astro.2dda826c.mjs → index@_@astro.0221a7bd.mjs} +2 -2
  57. package/packages/storefront/dist/server/chunks/{index@_@astro.db07fb09.mjs → index@_@astro.66b84ac2.mjs} +2 -2
  58. package/packages/storefront/dist/server/chunks/pages/{_...slug_.astro.88866aae.mjs → _...slug_.astro.501582b9.mjs} +5 -4
  59. package/packages/storefront/dist/server/chunks/pages/{endpoint.js.a11da4ad.mjs → endpoint.js.4c130895.mjs} +1 -1
  60. package/packages/storefront/dist/server/chunks/pages/{fallback.astro.c1fd06ab.mjs → fallback.astro.8d1c6076.mjs} +1 -1
  61. package/packages/storefront/dist/server/chunks/pages/{index.astro.c45cc893.mjs → index.astro.f1104ab2.mjs} +1 -1
  62. package/packages/storefront/dist/server/entry.mjs +8 -8
  63. package/packages/storefront/dist/server/renderers.mjs +1 -1
  64. package/packages/storefront/package.json +1 -1
  65. package/packages/storefront/src/lib/composables/use-sticky-header.ts +7 -3
  66. package/packages/types/package.json +1 -1
  67. package/packages/storefront/dist/client/_astro/ShopHeader.7ecb7597.js +0 -4
@@ -4,6 +4,7 @@
4
4
  const HEADER_CACHE_CONTROL = 'Cache-Control';
5
5
  const HEADER_SSR_TOOK = 'X-Load-Took';
6
6
  const HEADER_STALE_AT = 'X-Edge-Stale-At';
7
+ const HEADER_STYLE_LINK = 'X-Style-Link';
7
8
 
8
9
  interface ParsedCacheControl {
9
10
  'max-age'?: number;
@@ -13,7 +14,7 @@ interface ParsedCacheControl {
13
14
 
14
15
  const resolveCacheControl = (response: Response) => {
15
16
  const cacheControl = response.headers.get(HEADER_CACHE_CONTROL);
16
- if (!response.headers.get(HEADER_SSR_TOOK)) {
17
+ if (!cacheControl || !response.headers.get(HEADER_SSR_TOOK)) {
17
18
  return { cacheControl };
18
19
  }
19
20
  const parts = cacheControl.replace(/ +/g, '').split(',');
@@ -23,14 +24,14 @@ const resolveCacheControl = (response: Response) => {
23
24
  'stale-while-revalidate': staleMaxAge,
24
25
  } = parts.reduce((result, part) => {
25
26
  const [key, value] = part.split('=');
26
- result[key] = Number(value) || 0;
27
+ result[key as 'max-age'] = Number(value) || 0;
27
28
  return result;
28
29
  }, {} as ParsedCacheControl);
29
- const edgeMaxAge = typeof sMaxAge === 'number' ? sMaxAge : maxAge;
30
- if (!(edgeMaxAge > 1) || !(staleMaxAge > edgeMaxAge)) {
30
+ const cdnMaxAge = typeof sMaxAge === 'number' ? sMaxAge : maxAge;
31
+ if (!cdnMaxAge || cdnMaxAge <= 1 || !staleMaxAge || staleMaxAge <= cdnMaxAge) {
31
32
  return { cacheControl };
32
33
  }
33
- const staleAt = Date.now() + (edgeMaxAge * 1000);
34
+ const staleAt = Date.now() + (cdnMaxAge * 1000);
34
35
  return {
35
36
  cacheControl: `public, max-age=${maxAge}, must-revalidate`
36
37
  + `, s-maxage=${staleMaxAge}`,
@@ -53,8 +54,8 @@ const addHeaders = (response: Response, headers: Record<string, string | null>)
53
54
  return res;
54
55
  };
55
56
 
56
- const toCacheRes = (response: Response, cacheControl?: string, staleAt?: number) => {
57
- if (!cacheControl) {
57
+ const toCacheRes = (response: Response, cacheControl?: string | null, staleAt?: number) => {
58
+ if (cacheControl === undefined) {
58
59
  const parsedCacheControl = resolveCacheControl(response);
59
60
  cacheControl = parsedCacheControl.cacheControl;
60
61
  staleAt = parsedCacheControl.staleAt;
@@ -83,7 +84,7 @@ const swr = async (event: FetchEvent) => {
83
84
  }
84
85
  const [uri] = event.request.url.split('?', 2);
85
86
  const request = new Request(`${uri}?t=${Date.now()}`, event.request);
86
- const cacheKey = new Request(`${uri}?v=27`, {
87
+ const cacheKey = new Request(`${uri}?v=29`, {
87
88
  method: event.request.method,
88
89
  });
89
90
  const cachedRes = await caches.default.match(cacheKey);
@@ -108,10 +109,17 @@ const swr = async (event: FetchEvent) => {
108
109
  const newCacheRes = toCacheRes(response, cacheControl, staleAt);
109
110
  event.waitUntil(caches.default.put(cacheKey, newCacheRes));
110
111
  }
111
- return addHeaders(response, {
112
+ const headers: Record<string, string | null> = {
112
113
  [HEADER_CACHE_CONTROL]: cacheControl,
113
114
  'x-edge-state': edgeState,
114
- });
115
+ };
116
+ const styleLink = response.headers.get(HEADER_STYLE_LINK);
117
+ if (styleLink) {
118
+ // https://developers.cloudflare.com/workers/examples/103-early-hints/
119
+ headers.link = `</${styleLink}>; rel=preload; as=style`;
120
+ headers[HEADER_STYLE_LINK] = null;
121
+ }
122
+ return addHeaders(response, headers);
115
123
  };
116
124
 
117
125
  // eslint-disable-next-line no-restricted-globals
@@ -3,6 +3,7 @@
3
3
  "target": "esnext",
4
4
  "module": "esnext",
5
5
  "lib": ["esnext"],
6
- "types": ["@cloudflare/workers-types"]
6
+ "types": ["@cloudflare/workers-types"],
7
+ "strict": true,
7
8
  }
8
9
  }
@@ -1,3 +1,4 @@
1
+ import type { OutgoingHttpHeaders } from 'node:http';
1
2
  import type { Request, Response } from 'firebase-functions';
2
3
  import { join as joinPath } from 'node:path';
3
4
  import { readFile } from 'node:fs/promises';
@@ -200,6 +201,19 @@ export default async (req: Request, res: Response) => {
200
201
  });
201
202
  }
202
203
  })();
204
+ /*
205
+ Check Response methods used by Astro Node.js integration:
206
+ https://github.com/withastro/astro/blob/main/packages/integrations/node/src/nodeMiddleware.ts
207
+ */
208
+ const _writeHead = res.writeHead;
209
+ /* eslint-disable prefer-rest-params */
210
+ // @ts-ignore
211
+ res.writeHead = function writeHead(status: number, headers: OutgoingHttpHeaders) {
212
+ if (status === 200 && headers && cssFilename) {
213
+ headers['X-Style-Link'] = cssFilename;
214
+ }
215
+ _writeHead.apply(res, [status, headers]);
216
+ };
203
217
 
204
218
  /*
205
219
  https://github.com/withastro/astro/blob/main/examples/ssr/server/server.mjs
@@ -0,0 +1,4 @@
1
+ import{u as St,a as kt,p as Pt,g as It,r as Mt,P as Ke,s as Ct,t as We}from"./Prices.8572765c.js";import{u as Tt,i as ve,a as Et,w as Ot,b as Ft,c as Lt,r as At,s as Ee,d as $t,f as Nt}from"./index.c0c35ead.js";import{j as S,c as y,k as ne,l as oe,_ as j,d as A,t as Dt,m as Q,o as m,g as N,w as T,a as w,n as $,p as qe,b as d,q as xe,u as V,i as D,T as Ge,e as I,h as Qe,x as M,F as B,r as W,y as R,z as jt,A as Z,B as le,C as ie,D as X,E as ae,G as Oe,H as ge,I as he,J as $e,f as Bt,K as Rt,L as Ne}from"./_plugin-vue_export-helper.48e557ba.js";import{_ as Vt}from"./preload-helper.cf010ec4.js";import{g as Ht}from"./img.7def76a1.js";import"./session-utm.744b0db3.js";const Ut=e=>{if(e){if(e.display_name)return e.display_name;if(e.name&&e.name.given_name)return e.name.given_name}return""},zt=Ut,Kt=e=>{const{header:n,canSetStyles:r,canCreateHeightDiv:t,isShownOnScrollDown:a,isShownOnMobile:l}={canSetStyles:!0,canCreateHeightDiv:!0,...e},{ready:o,start:s}=Tt(100,{controls:!0,immediate:!1}),u=S(0),c=S(0);let i;const{y:_}=l||!ve?Et(document):{y:S(0)},v=S(0);Ot(_,h=>{v.value=h},{debounce:ve?100:50,maxWait:ve?300:150});const f=y(()=>o.value&&v.value>c.value*1.2),b=S("none");ne(f,async h=>{r&&n.value&&(n.value.style.position=h?"fixed":"",n.value.style.width=h?"100vw":""),i&&(i.style.height=h?`${u.value}px`:""),h?(await Ft(300),b.value="opacity var(--transition-slow), transform var(--transition)"):(s(),b.value="none")});const p=S(!1);return ne(v,(h,P)=>{p.value=h>0&&h<P}),oe(()=>{if(!n.value)throw new Error("<header> (props.header) not set");const h=()=>{const x=n.value;u.value=x.offsetHeight,c.value=u.value+window.scrollY+x.getBoundingClientRect().top,s()},P=n.value.getElementsByTagName("IMG");let E=!0;for(let x=0;x<P.length;x++){const F=P[x];(!F.complete||F.naturalHeight===0)&&(E=!1,F.onload=h)}E&&h(),window.addEventListener("resize",Lt(h,300)),r&&(n.value.style.willChange="transform",ne([f,p],([x,F])=>{let k="",C="";x&&(!F||a)&&(k="0",C="translateY(-100%)");const O=n.value;O.style.opacity=k,O.style.transform=C}),ne(b,x=>{n.value.style.transition=x})),t&&(i=document.createElement("div"),n.value.parentElement?.insertBefore(i,n.value))}),{staticHeight:u,staticY:c,isSticky:f,isScrollUp:p,transition:b}},Wt=(e,n)=>{const r=e.filter(({name:t,slug:a,parent:l})=>t&&a&&!l);return n?.length&&r.sort((t,a)=>{const l=n.indexOf(t.slug),o=n.indexOf(a.slug);return l>-1?o===-1||l<o?-1:1:o>-1?1:0}),r},qt=(e,n,r=!1)=>{const t=e.filter(({name:a,slug:l,parent:o})=>a&&l&&o?o._id&&o._id===n._id||o.slug&&o.slug===n.slug:!1);return r&&t.sort((a,l)=>a.name<l.name?-1:1),t},Gt=e=>{const{header:n,categories:r=globalThis.$storefront.data.categories||[],menuCategorySlugs:t,menuRandomCategories:a=7,isAlphabeticalSortSubmenu:l}=e,{isSticky:o,staticHeight:s,staticY:u}=Kt({header:n}),c=y(()=>o.value?n.value?.offsetHeight:u.value),i=Wt(r,t),_=h=>qt(r,h,!!l),v=h=>({...h,subcategories:_(h).map(P=>v(P))}),f=i.map(v);let b=0;const p=f.filter(({slug:h})=>t?.includes(h)?!0:b<a?(b+=1,!0):!1);return{isSticky:o,staticHeight:s,staticY:u,positionY:c,mainCategories:i,getSubcategories:_,getCategoryTree:v,categoryTrees:f,inlineMenuTrees:p}},Qt=A({__name:"Drawer",props:{modelValue:{type:Boolean,default:!1},placement:{default:"start"},position:{default:"fixed"},hasCloseButton:{type:Boolean,default:!0},backdropTarget:{default:"#teleported-top"}},emits:["update:modelValue"],setup(e,{expose:n,emit:r}){n();const t=e,a=()=>r("update:modelValue",!1),l=S(null),o=f=>{l.value?.contains(f.target)||a()},s=f=>{f.key==="Escape"&&a()},u=S(0);ne(Dt(t,"modelValue"),async f=>{f?(u.value=window.innerWidth-document.documentElement.clientWidth,document.body.style.overflow="hidden",document.body.style.paddingRight=`${u.value}px`,setTimeout(()=>{document.addEventListener("click",o,{passive:!0}),document.addEventListener("keydown",s,{passive:!0})},500)):(document.body.style.overflow="",document.body.style.paddingRight="",document.removeEventListener("click",o),document.removeEventListener("keydown",s))});const c=y(()=>{switch(t.placement){case"start":return"left";case"end":return"right";case"top":return"down";default:return"up"}}),i=y(()=>t.position==="fixed"),_=y(()=>t.placement==="start"||t.placement==="end"),v={props:t,emit:r,close:a,drawer:l,outsideClickListener:o,escClickListener:s,scrollbarWidth:u,slideTo:c,isFixed:i,isPlacementX:_};return Object.defineProperty(v,"__isScriptSetup",{enumerable:!1,value:!0}),v}}),Yt=["open","data-drawer"],Xt={class:"relative h-full"},Jt=["onClick"],Zt=d("i",{class:"i-close text-base-400 hover:text-base-600 text-3xl"},null,-1),en={key:0,class:"fixed top-0 left-0 w-screen h-screen bg-black/50 z-40","data-drawer-backdrop":""};function tn(e,n,r,t,a,l){const o=Q("Fade");return m(),N(o,{slide:t.slideTo,speed:"slow","is-floating":""},{default:T(()=>[r.modelValue?(m(),w("dialog",{key:0,ref:"drawer",class:$(["w-screen shadow p-0 m-0 z-50",[r.position,t.isFixed?`top-0 ${t.isPlacementX?"h-screen":""}`:null,t.isFixed&&r.placement!=="end"?"left-0":null,t.isFixed&&r.placement==="end"?"left-auto right-0":null,t.isPlacementX?"max-w-sm":null]]),style:qe({maxWidth:t.isPlacementX?void 0:`calc(100vw - ${t.scrollbarWidth}px)`}),open:r.modelValue,"data-drawer":r.placement},[d("div",Xt,[r.hasCloseButton?(m(),w("button",{key:0,type:"button","aria-label":"Fechar",onClick:xe(t.close,["prevent"]),class:$(["absolute top-2",r.placement==="end"?"left-2":"right-2"]),"data-drawer-close":""},[V(e.$slots,"close",{},()=>[Zt])],10,Jt)):D("",!0),V(e.$slots,"default")]),(m(),N(Ge,{to:r.backdropTarget},[I(o,null,{default:T(()=>[r.modelValue?(m(),w("div",en)):D("",!0)]),_:1})],8,["to"]))],14,Yt)):D("",!0)]),_:3},8,["slide"])}const nn=j(Qt,[["render",tn]]),Ye="ecomSession",Me={customer:{display_name:"",main_email:""},auth:null},z=St(Ye,Me),Fe=y(()=>{const{auth:e}=z;return e&&new Date(e.expires).getTime()-Date.now()>1e3*10}),Xe=y(()=>z.customer),be=y(()=>zt(Xe.value)),De=y({get(){return Xe.value.main_email},set(e){z.customer.main_email=e}});let re;const Je=y(()=>Fe.value||!!re?.currentUser?.emailVerified),Le=()=>{z.auth=Me.auth,z.customer=Me.customer,localStorage.removeItem(Ye),re.signOut()},Ze=(e="Not authenticated")=>{const n=new Error(e);throw n.isNoAuth=!0,n},et=async()=>{const e=await re.currentUser?.getIdToken();if(!e){Ze("Can't get Firebase user ID token");return}const{domain:n}=window.$storefront.settings;try{const r=await fetch(`https://${n}/api/passport/token`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`}});z.auth=await r.json()}catch(r){console.error(r)}},rn=async()=>(Fe.value||await et(),z.auth?z.auth.access_token:Ze()),an=async()=>{const e=await rn(),n=z.auth,{data:r}=await kt.get(`customers/${n.customer_id}`,{accessToken:e});return z.customer=r,r};let je=!1;const tt=(e=!window.location.pathname.startsWith("/app/"))=>{if(je)return;je=!0;const n=()=>Vt(()=>import("./firebase-app.1df8af9a.js"),[]).then(({getAuth:r,onAuthStateChanged:t,isSignInWithEmailLink:a,signInWithEmailLink:l})=>{if(re=r(),t(re,async o=>{if(o){if(o.displayName&&!be.value&&(z.customer.display_name=o.displayName),o.email&&(!De.value||o.emailVerified)&&(z.customer.main_email=o.email),o.emailVerified){const s=o.email!==De.value;(s||!Fe.value)&&(await et(),(s||!be.value)&&await an())}}else Le()}),a(re,window.location.href)){const s=new URLSearchParams(window.location.search).get("email");s&&l(re,s,window.location.href).then(()=>window.localStorage.removeItem("emailForSignIn")).catch(console.error)}}).catch(console.error);e?At(n):n()},on=A({__name:"AccountLink",props:{to:{},accountUrl:{default:globalThis.$storefront.settings.account_url||"/app/account"},returnUrl:{default:globalThis.location?.href},isSignUp:{type:Boolean}},setup(e,{expose:n}){n();const r=e,t=y(()=>{let l=r.accountUrl;if(!r.to)return r.isSignUp?l+="?sign_up&":l+="?",`${l}return_url=${r.returnUrl}`;const{settings:o}=globalThis.$storefront;return r.to==="orders"&&o.orders_url?o.orders_url:r.to==="favorites"&&o.favorites_url?o.favorites_url:`${l}/${r.to}`}),a={props:r,href:t};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}}),ln=["href"];function sn(e,n,r,t,a,l){return m(),w("a",{href:t.href},[V(e.$slots,"default")],8,ln)}const nt=j(on,[["render",sn]]),un=A({__name:"SocialNetworkIcon",props:{as:{default:"i"},network:{}},setup(e,{expose:n}){n();const r=e,t=y(()=>{switch(r.network){case"facebook":return"i-facebook";case"instagram":return"i-instagram";case"whatsapp":return"i-whatsapp";case"youtube":return"i-youtube";case"pinterest":return"i-pinterest";case"tiktok":return"i-tiktok";case"twitter":return"i-twitter";default:return""}}),a={props:r,iconClassName:t};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}});function cn(e,n,r,t,a,l){return m(),N(Qe(r.as),{class:$(t.iconClassName)},null,8,["class"])}const dn=j(un,[["render",cn]]),fn=A({__name:"SocialNetworkLink",props:{network:{},href:{},message:{}},setup(e,{expose:n}){n();const r=e,t=y(()=>{let l=r.href||Ee[r.network]||"";if(r.network==="whatsapp"){const o=l.replace(/[^+\d]/g,"");l=`https://${ve?"api":"web"}.whatsapp.com/send?phone=`+encodeURIComponent(o.charAt(0)==="+"?o:`+55${o}`),r.message&&(l+=`&text=${encodeURIComponent(r.message)}`)}return l}),a={props:r,fixedHref:t,SocialNetworkIcon:dn};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}});function pn(e,n,r,t,a,l){const o=Q("ALink");return m(),N(o,{href:t.fixedHref},{default:T(()=>[V(e.$slots,"default",{},()=>[I(t.SocialNetworkIcon,{network:r.network},null,8,["network"]),V(e.$slots,"append")])]),_:3},8,["href"])}const rt=j(fn,[["render",pn]]),mn=A({__name:"ShopSidenavCategory",props:{categoryTree:{}},setup(e,{expose:n}){n();const r=S(!1),t=S(!0);ne(r,l=>{l?setTimeout(()=>{t.value=!1},25):t.value=!0});const a={isOpen:r,isFaded:t};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}}),vn={class:"text-lg text-base-800"},gn=["href"],hn=["href"],bn={class:"inline"};function _n(e,n,r,t,a,l){const o=Q("AImg"),s=Q("ShopSidenavCategory",!0);return m(),w("li",vn,[r.categoryTree.subcategories.length?(m(),w("details",{key:0,class:"bg-white overflow-y-auto overflow-x-hidden z-10 open:absolute open:top-0 open:left-0 open:w-full open:h-full",onToggle:n[0]||(n[0]=u=>t.isOpen=!t.isOpen)},[d("summary",{class:$(["cursor-pointer list-none px-6 py-3 active:bg-base-100 transition-colors",t.isOpen?"bg-base-100":null])},[d("i",{class:$(t.isOpen?"i-arrow-left text-lg":"i-arrow-right float-right mb-0 mt-1 text-xl text-base-500")},null,2),!t.isOpen&&r.categoryTree.icon?(m(),N(o,{key:0,picture:r.categoryTree.icon,alt:r.categoryTree.name,class:"w-auto h-5 inline mr-3"},null,8,["picture","alt"])):D("",!0),d("h3",{class:$(["inline",t.isOpen?"ml-4 text-base":null])},M(r.categoryTree.name),3)],2),d("ul",{class:$(["mt-2 transition-opacity",t.isFaded?"opacity-20":"opacity-100"]),tabindex:"-1"},[(m(!0),w(B,null,W(r.categoryTree.subcategories,(u,c)=>(m(),N(s,{key:c,"category-tree":u},null,8,["category-tree"]))),128)),d("li",null,[d("a",{href:`/${r.categoryTree.slug}`,class:"block px-6 py-3 text-base underline active:bg-base-200"},M("Ver toda a categoria $1".replace("$1",r.categoryTree.name)),9,gn)])],2)],32)):(m(),w("a",{key:1,href:`/${r.categoryTree.slug}`,class:"block px-6 py-3 active:bg-base-200"},[!t.isOpen&&r.categoryTree.icon?(m(),N(o,{key:0,picture:r.categoryTree.icon,alt:r.categoryTree.name,class:"w-auto h-5 inline mr-3"},null,8,["picture","alt"])):D("",!0),d("h3",bn,M(r.categoryTree.name),1)],8,hn))])}const yn=j(mn,[["render",_n]]),xn=A({__name:"ShopSidenav",props:{categoryTrees:{}},setup(e,{expose:n}){n(),oe(()=>tt());const r={get customerName(){return be},get isLogged(){return Je},get logout(){return Le},get socialNetworks(){return Ee},AccountLink:nt,SocialNetworkLink:rt,ShopSidenavCategory:yn};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),wn={class:"flex flex-col h-full"},Sn={class:"py-4 grow"},kn={class:"relative h-full"},Pn={class:"text-base"},In={class:"flex items-center px-2 py-4 bg-base-100"},Mn=d("i",{class:"i-user-circle text-4xl text-base-500 m-0"},null,-1),Cn={class:"leading-tight"},Tn=d("small",{class:"block lowercase font-semibold text-primary"},M("Meus pedidos")+", "+M("Minha conta"),-1),En=d("span",{class:"text-base-600"},M("Sair"),-1),On=d("i",{class:"i-arrow-right-on-rectangle text-lg ml-1"},null,-1),Fn=[En,On],Ln={class:"flex gap-3 p-4 bg-base-200 text-xl text-base-700"};function An(e,n,r,t,a,l){return m(),w("aside",wn,[d("nav",Sn,[d("ul",kn,[(m(!0),w(B,null,W(r.categoryTrees,(o,s)=>(m(),N(t.ShopSidenavCategory,{key:s,"category-tree":o},null,8,["category-tree"]))),128))])]),d("footer",Pn,[d("div",In,[I(t.AccountLink,{class:"p-2 grow flex items-center gap-3"},{default:T(()=>[Mn,d("span",Cn,[R(M(`Olá ${t.customerName||"Visitante"}`)+" ",1),Tn])]),_:1}),t.isLogged?(m(),w("button",{key:0,onClick:n[0]||(n[0]=(...o)=>t.logout&&t.logout(...o)),class:"p-2 text-right text-base-800"},Fn)):D("",!0)]),d("ul",Ln,[(m(!0),w(B,null,W(t.socialNetworks,(o,s)=>(m(),w("li",{key:s},[I(t.SocialNetworkLink,{network:s,class:"p-1 active:text-primary"},null,8,["network"])]))),128))])])])}const $n=j(xn,[["render",An]]);function q(e,n,...r){if(e in n){let a=n[e];return typeof a=="function"?a(...r):a}let t=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(n).map(a=>`"${a}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,q),t}var ue=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(ue||{}),Nn=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(Nn||{});function te({visible:e=!0,features:n=0,ourProps:r,theirProps:t,...a}){var l;let o=ot(t,r),s=Object.assign(a,{props:o});if(e||n&2&&o.static)return Ie(s);if(n&1){let u=(l=o.unmount)==null||l?0:1;return q(u,{0(){return null},1(){return Ie({...a,props:{...o,hidden:!0,style:{display:"none"}}})}})}return Ie(s)}function Ie({props:e,attrs:n,slots:r,slot:t,name:a}){var l,o;let{as:s,...u}=Dn(e,["unmount","static"]),c=(l=r.default)==null?void 0:l.call(r,t),i={};if(t){let _=!1,v=[];for(let[f,b]of Object.entries(t))typeof b=="boolean"&&(_=!0),b===!0&&v.push(f);_&&(i["data-headlessui-state"]=v.join(" "))}if(s==="template"){if(c=at(c??[]),Object.keys(u).length>0||Object.keys(n).length>0){let[_,...v]=c??[];if(!jn(_)||v.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${a} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(u).concat(Object.keys(n)).map(p=>p.trim()).filter((p,h,P)=>P.indexOf(p)===h).sort((p,h)=>p.localeCompare(h)).map(p=>` - ${p}`).join(`
2
+ `),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(p=>` - ${p}`).join(`
3
+ `)].join(`
4
+ `));let f=ot((o=_.props)!=null?o:{},u),b=jt(_,f);for(let p in f)p.startsWith("on")&&(b.props||(b.props={}),b.props[p]=f[p]);return b}return Array.isArray(c)&&c.length===1?c[0]:c}return Z(s,Object.assign({},u,i),{default:()=>c})}function at(e){return e.flatMap(n=>n.type===B?at(n.children):[n])}function ot(...e){if(e.length===0)return{};if(e.length===1)return e[0];let n={},r={};for(let t of e)for(let a in t)a.startsWith("on")&&typeof t[a]=="function"?(r[a]!=null||(r[a]=[]),r[a].push(t[a])):n[a]=t[a];if(n.disabled||n["aria-disabled"])return Object.assign(n,Object.fromEntries(Object.keys(r).map(t=>[t,void 0])));for(let t in r)Object.assign(n,{[t](a,...l){let o=r[t];for(let s of o){if(a instanceof Event&&a.defaultPrevented)return;s(a,...l)}}});return n}function Dn(e,n=[]){let r=Object.assign({},e);for(let t of n)t in r&&delete r[t];return r}function jn(e){return e==null?!1:typeof e.type=="string"||typeof e.type=="object"||typeof e.type=="function"}let Bn=0;function Rn(){return++Bn}function ee(){return Rn()}var L=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(L||{});function Vn(e){throw new Error("Unexpected object: "+e)}var H=(e=>(e[e.First=0]="First",e[e.Previous=1]="Previous",e[e.Next=2]="Next",e[e.Last=3]="Last",e[e.Specific=4]="Specific",e[e.Nothing=5]="Nothing",e))(H||{});function Hn(e,n){let r=n.resolveItems();if(r.length<=0)return null;let t=n.resolveActiveIndex(),a=t??-1,l=(()=>{switch(e.focus){case 0:return r.findIndex(o=>!n.resolveDisabled(o));case 1:{let o=r.slice().reverse().findIndex((s,u,c)=>a!==-1&&c.length-u-1>=a?!1:!n.resolveDisabled(s));return o===-1?o:r.length-1-o}case 2:return r.findIndex((o,s)=>s<=a?!1:!n.resolveDisabled(o));case 3:{let o=r.slice().reverse().findIndex(s=>!n.resolveDisabled(s));return o===-1?o:r.length-1-o}case 4:return r.findIndex(o=>n.resolveId(o)===e.id);case 5:return null;default:Vn(e)}})();return l===-1?t:l}function g(e){var n;return e==null||e.value==null?null:(n=e.value.$el)!=null?n:e.value}let lt=Symbol("Context");var Y=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(Y||{});function st(){return le(lt,null)}function it(e){ie(lt,e)}function Be(e,n){if(e)return e;let r=n??"button";if(typeof r=="string"&&r.toLowerCase()==="button")return"button"}function ut(e,n){let r=S(Be(e.value.type,e.value.as));return oe(()=>{r.value=Be(e.value.type,e.value.as)}),X(()=>{var t;r.value||g(n)&&g(n)instanceof HTMLButtonElement&&!((t=g(n))!=null&&t.hasAttribute("type"))&&(r.value="button")}),r}var Un=Object.defineProperty,zn=(e,n,r)=>n in e?Un(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r,Re=(e,n,r)=>(zn(e,typeof n!="symbol"?n+"":n,r),r);class Kn{constructor(){Re(this,"current",this.detect()),Re(this,"currentId",0)}set(n){this.current!==n&&(this.currentId=0,this.current=n)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}}let we=new Kn;function se(e){if(we.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e!=null&&e.hasOwnProperty("value")){let n=g(e);if(n)return n.ownerDocument}return document}function Wn({container:e,accept:n,walk:r,enabled:t}){X(()=>{let a=e.value;if(!a||t!==void 0&&!t.value)return;let l=se(e);if(!l)return;let o=Object.assign(u=>n(u),{acceptNode:n}),s=l.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,o,!1);for(;s.nextNode();)r(s.currentNode)})}let Ce=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var K=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(K||{}),_e=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(_e||{}),qn=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(qn||{});function de(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(Ce)).sort((n,r)=>Math.sign((n.tabIndex||Number.MAX_SAFE_INTEGER)-(r.tabIndex||Number.MAX_SAFE_INTEGER)))}var Se=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(Se||{});function ke(e,n=0){var r;return e===((r=se(e))==null?void 0:r.body)?!1:q(n,{0(){return e.matches(Ce)},1(){let t=e;for(;t!==null;){if(t.matches(Ce))return!0;t=t.parentElement}return!1}})}function ct(e){let n=se(e);ae(()=>{n&&!ke(n.activeElement,0)&&Qn(e)})}var Gn=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(Gn||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function Qn(e){e?.focus({preventScroll:!0})}let Yn=["textarea","input"].join(",");function Xn(e){var n,r;return(r=(n=e?.matches)==null?void 0:n.call(e,Yn))!=null?r:!1}function dt(e,n=r=>r){return e.slice().sort((r,t)=>{let a=n(r),l=n(t);if(a===null||l===null)return 0;let o=a.compareDocumentPosition(l);return o&Node.DOCUMENT_POSITION_FOLLOWING?-1:o&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function Jn(e,n){return J(de(),n,{relativeTo:e})}function J(e,n,{sorted:r=!0,relativeTo:t=null,skipElements:a=[]}={}){var l;let o=(l=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e?.ownerDocument)!=null?l:document,s=Array.isArray(e)?r?dt(e):e:de(e);a.length>0&&s.length>1&&(s=s.filter(b=>!a.includes(b))),t=t??o.activeElement;let u=(()=>{if(n&5)return 1;if(n&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),c=(()=>{if(n&1)return 0;if(n&2)return Math.max(0,s.indexOf(t))-1;if(n&4)return Math.max(0,s.indexOf(t))+1;if(n&8)return s.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),i=n&32?{preventScroll:!0}:{},_=0,v=s.length,f;do{if(_>=v||_+v<=0)return 0;let b=c+_;if(n&16)b=(b+v)%v;else{if(b<0)return 3;if(b>=v)return 1}f=s[b],f?.focus(i),_+=u}while(f!==o.activeElement);return n&6&&Xn(f)&&f.select(),2}function me(e,n,r){we.isServer||X(t=>{document.addEventListener(e,n,r),t(()=>document.removeEventListener(e,n,r))})}function ft(e,n,r){we.isServer||X(t=>{window.addEventListener(e,n,r),t(()=>window.removeEventListener(e,n,r))})}function pt(e,n,r=y(()=>!0)){function t(l,o){if(!r.value||l.defaultPrevented)return;let s=o(l);if(s===null||!s.getRootNode().contains(s))return;let u=function c(i){return typeof i=="function"?c(i()):Array.isArray(i)||i instanceof Set?i:[i]}(e);for(let c of u){if(c===null)continue;let i=c instanceof HTMLElement?c:g(c);if(i!=null&&i.contains(s)||l.composed&&l.composedPath().includes(i))return}return!ke(s,Se.Loose)&&s.tabIndex!==-1&&l.preventDefault(),n(l,s)}let a=S(null);me("pointerdown",l=>{var o,s;r.value&&(a.value=((s=(o=l.composedPath)==null?void 0:o.call(l))==null?void 0:s[0])||l.target)},!0),me("mousedown",l=>{var o,s;r.value&&(a.value=((s=(o=l.composedPath)==null?void 0:o.call(l))==null?void 0:s[0])||l.target)},!0),me("click",l=>{a.value&&(t(l,()=>a.value),a.value=null)},!0),me("touchend",l=>t(l,()=>l.target instanceof HTMLElement?l.target:null),!0),ft("blur",l=>t(l,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}var ce=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(ce||{});let ye=A({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(e,{slots:n,attrs:r}){return()=>{let{features:t,...a}=e,l={"aria-hidden":(t&2)===2?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(t&4)===4&&(t&2)!==2&&{display:"none"}}};return te({ourProps:l,theirProps:a,slot:{},attrs:r,slots:n,name:"Hidden"})}}});function Ve(e){return[e.screenX,e.screenY]}function Zn(){let e=S([-1,-1]);return{wasMoved(n){let r=Ve(n);return e.value[0]===r[0]&&e.value[1]===r[1]?!1:(e.value=r,!0)},update(n){e.value=Ve(n)}}}var G=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(G||{});function mt(){let e=S(0);return ft("keydown",n=>{n.key==="Tab"&&(e.value=n.shiftKey?1:0)}),e}function er(e,n,r,t){we.isServer||X(a=>{e=e??window,e.addEventListener(n,r,t),a(()=>e.removeEventListener(n,r,t))})}let He=Symbol("PortalParentContext");function tr(){let e=le(He,null),n=S([]);function r(l){return n.value.push(l),e&&e.register(l),()=>t(l)}function t(l){let o=n.value.indexOf(l);o!==-1&&n.value.splice(o,1),e&&e.unregister(l)}let a={register:r,unregister:t,portals:n};return[n,A({name:"PortalWrapper",setup(l,{slots:o}){return ie(He,a),()=>{var s;return(s=o.default)==null?void 0:s.call(o)}}})]}function nr({defaultContainers:e=[],portals:n}={}){let r=S(null),t=se(r);function a(){var l;let o=[];for(let s of e)s!==null&&(s instanceof HTMLElement?o.push(s):"value"in s&&s.value instanceof HTMLElement&&o.push(s.value));if(n!=null&&n.value)for(let s of n.value)o.push(s);for(let s of(l=t?.querySelectorAll("html > *, body > *"))!=null?l:[])s!==document.body&&s!==document.head&&s instanceof HTMLElement&&s.id!=="headlessui-portal-root"&&(s.contains(g(r))||o.some(u=>s.contains(u))||o.push(s));return o}return{resolveContainers:a,contains(l){return a().some(o=>o.contains(l))},mainTreeNodeRef:r,MainTreeNode(){return Z(ye,{features:ce.Hidden,ref:r})}}}let Ue=/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g;function ze(e){var n,r;let t=(n=e.innerText)!=null?n:"",a=e.cloneNode(!0);if(!(a instanceof HTMLElement))return t;let l=!1;for(let s of a.querySelectorAll('[hidden],[aria-hidden],[role="img"]'))s.remove(),l=!0;let o=l?(r=a.innerText)!=null?r:"":t;return Ue.test(o)&&(o=o.replace(Ue,"")),o}function rr(e){let n=e.getAttribute("aria-label");if(typeof n=="string")return n.trim();let r=e.getAttribute("aria-labelledby");if(r){let t=r.split(" ").map(a=>{let l=document.getElementById(a);if(l){let o=l.getAttribute("aria-label");return typeof o=="string"?o.trim():ze(l).trim()}return null}).filter(Boolean);if(t.length>0)return t.join(", ")}return ze(e).trim()}function ar(e){let n=S(""),r=S("");return()=>{let t=g(e);if(!t)return"";let a=t.innerText;if(n.value===a)return r.value;let l=rr(t).trim().toLowerCase();return n.value=a,r.value=l,l}}var or=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(or||{}),lr=(e=>(e[e.Pointer=0]="Pointer",e[e.Other=1]="Other",e))(lr||{});function sr(e){requestAnimationFrame(()=>requestAnimationFrame(e))}let vt=Symbol("MenuContext");function Pe(e){let n=le(vt,null);if(n===null){let r=new Error(`<${e} /> is missing a parent <Menu /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,Pe),r}return n}let ir=A({name:"Menu",props:{as:{type:[Object,String],default:"template"}},setup(e,{slots:n,attrs:r}){let t=S(1),a=S(null),l=S(null),o=S([]),s=S(""),u=S(null),c=S(1);function i(v=f=>f){let f=u.value!==null?o.value[u.value]:null,b=dt(v(o.value.slice()),h=>g(h.dataRef.domRef)),p=f?b.indexOf(f):null;return p===-1&&(p=null),{items:b,activeItemIndex:p}}let _={menuState:t,buttonRef:a,itemsRef:l,items:o,searchQuery:s,activeItemIndex:u,activationTrigger:c,closeMenu:()=>{t.value=1,u.value=null},openMenu:()=>t.value=0,goToItem(v,f,b){let p=i(),h=Hn(v===H.Specific?{focus:H.Specific,id:f}:{focus:v},{resolveItems:()=>p.items,resolveActiveIndex:()=>p.activeItemIndex,resolveId:P=>P.id,resolveDisabled:P=>P.dataRef.disabled});s.value="",u.value=h,c.value=b??1,o.value=p.items},search(v){let f=s.value!==""?0:1;s.value+=v.toLowerCase();let b=(u.value!==null?o.value.slice(u.value+f).concat(o.value.slice(0,u.value+f)):o.value).find(h=>h.dataRef.textValue.startsWith(s.value)&&!h.dataRef.disabled),p=b?o.value.indexOf(b):-1;p===-1||p===u.value||(u.value=p,c.value=1)},clearSearch(){s.value=""},registerItem(v,f){let b=i(p=>[...p,{id:v,dataRef:f}]);o.value=b.items,u.value=b.activeItemIndex,c.value=1},unregisterItem(v){let f=i(b=>{let p=b.findIndex(h=>h.id===v);return p!==-1&&b.splice(p,1),b});o.value=f.items,u.value=f.activeItemIndex,c.value=1}};return pt([a,l],(v,f)=>{var b;_.closeMenu(),ke(f,Se.Loose)||(v.preventDefault(),(b=g(a))==null||b.focus())},y(()=>t.value===0)),ie(vt,_),it(y(()=>q(t.value,{0:Y.Open,1:Y.Closed}))),()=>{let v={open:t.value===0,close:_.closeMenu};return te({ourProps:{},theirProps:e,slot:v,slots:n,attrs:r,name:"Menu"})}}}),ur=A({name:"MenuButton",props:{disabled:{type:Boolean,default:!1},as:{type:[Object,String],default:"button"},id:{type:String,default:()=>`headlessui-menu-button-${ee()}`}},setup(e,{attrs:n,slots:r,expose:t}){let a=Pe("MenuButton");t({el:a.buttonRef,$el:a.buttonRef});function l(c){switch(c.key){case L.Space:case L.Enter:case L.ArrowDown:c.preventDefault(),c.stopPropagation(),a.openMenu(),ae(()=>{var i;(i=g(a.itemsRef))==null||i.focus({preventScroll:!0}),a.goToItem(H.First)});break;case L.ArrowUp:c.preventDefault(),c.stopPropagation(),a.openMenu(),ae(()=>{var i;(i=g(a.itemsRef))==null||i.focus({preventScroll:!0}),a.goToItem(H.Last)});break}}function o(c){switch(c.key){case L.Space:c.preventDefault();break}}function s(c){e.disabled||(a.menuState.value===0?(a.closeMenu(),ae(()=>{var i;return(i=g(a.buttonRef))==null?void 0:i.focus({preventScroll:!0})})):(c.preventDefault(),a.openMenu(),sr(()=>{var i;return(i=g(a.itemsRef))==null?void 0:i.focus({preventScroll:!0})})))}let u=ut(y(()=>({as:e.as,type:n.type})),a.buttonRef);return()=>{var c;let i={open:a.menuState.value===0},{id:_,...v}=e,f={ref:a.buttonRef,id:_,type:u.value,"aria-haspopup":"menu","aria-controls":(c=g(a.itemsRef))==null?void 0:c.id,"aria-expanded":a.menuState.value===0,onKeydown:l,onKeyup:o,onClick:s};return te({ourProps:f,theirProps:v,slot:i,attrs:n,slots:r,name:"MenuButton"})}}}),cr=A({name:"MenuItems",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:()=>`headlessui-menu-items-${ee()}`}},setup(e,{attrs:n,slots:r,expose:t}){let a=Pe("MenuItems"),l=S(null);t({el:a.itemsRef,$el:a.itemsRef}),Wn({container:y(()=>g(a.itemsRef)),enabled:y(()=>a.menuState.value===0),accept(i){return i.getAttribute("role")==="menuitem"?NodeFilter.FILTER_REJECT:i.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(i){i.setAttribute("role","none")}});function o(i){var _;switch(l.value&&clearTimeout(l.value),i.key){case L.Space:if(a.searchQuery.value!=="")return i.preventDefault(),i.stopPropagation(),a.search(i.key);case L.Enter:if(i.preventDefault(),i.stopPropagation(),a.activeItemIndex.value!==null){let v=a.items.value[a.activeItemIndex.value];(_=g(v.dataRef.domRef))==null||_.click()}a.closeMenu(),ct(g(a.buttonRef));break;case L.ArrowDown:return i.preventDefault(),i.stopPropagation(),a.goToItem(H.Next);case L.ArrowUp:return i.preventDefault(),i.stopPropagation(),a.goToItem(H.Previous);case L.Home:case L.PageUp:return i.preventDefault(),i.stopPropagation(),a.goToItem(H.First);case L.End:case L.PageDown:return i.preventDefault(),i.stopPropagation(),a.goToItem(H.Last);case L.Escape:i.preventDefault(),i.stopPropagation(),a.closeMenu(),ae(()=>{var v;return(v=g(a.buttonRef))==null?void 0:v.focus({preventScroll:!0})});break;case L.Tab:i.preventDefault(),i.stopPropagation(),a.closeMenu(),ae(()=>Jn(g(a.buttonRef),i.shiftKey?K.Previous:K.Next));break;default:i.key.length===1&&(a.search(i.key),l.value=setTimeout(()=>a.clearSearch(),350));break}}function s(i){switch(i.key){case L.Space:i.preventDefault();break}}let u=st(),c=y(()=>u!==null?(u.value&Y.Open)===Y.Open:a.menuState.value===0);return()=>{var i,_;let v={open:a.menuState.value===0},{id:f,...b}=e,p={"aria-activedescendant":a.activeItemIndex.value===null||(i=a.items.value[a.activeItemIndex.value])==null?void 0:i.id,"aria-labelledby":(_=g(a.buttonRef))==null?void 0:_.id,id:f,onKeydown:o,onKeyup:s,role:"menu",tabIndex:0,ref:a.itemsRef};return te({ourProps:p,theirProps:b,slot:v,attrs:n,slots:r,features:ue.RenderStrategy|ue.Static,visible:c.value,name:"MenuItems"})}}}),dr=A({name:"MenuItem",inheritAttrs:!1,props:{as:{type:[Object,String],default:"template"},disabled:{type:Boolean,default:!1},id:{type:String,default:()=>`headlessui-menu-item-${ee()}`}},setup(e,{slots:n,attrs:r,expose:t}){let a=Pe("MenuItem"),l=S(null);t({el:l,$el:l});let o=y(()=>a.activeItemIndex.value!==null?a.items.value[a.activeItemIndex.value].id===e.id:!1),s=ar(l),u=y(()=>({disabled:e.disabled,get textValue(){return s()},domRef:l}));oe(()=>a.registerItem(e.id,u)),Oe(()=>a.unregisterItem(e.id)),X(()=>{a.menuState.value===0&&o.value&&a.activationTrigger.value!==0&&ae(()=>{var p,h;return(h=(p=g(l))==null?void 0:p.scrollIntoView)==null?void 0:h.call(p,{block:"nearest"})})});function c(p){if(e.disabled)return p.preventDefault();a.closeMenu(),ct(g(a.buttonRef))}function i(){if(e.disabled)return a.goToItem(H.Nothing);a.goToItem(H.Specific,e.id)}let _=Zn();function v(p){_.update(p)}function f(p){_.wasMoved(p)&&(e.disabled||o.value||a.goToItem(H.Specific,e.id,0))}function b(p){_.wasMoved(p)&&(e.disabled||o.value&&a.goToItem(H.Nothing))}return()=>{let{disabled:p}=e,h={active:o.value,disabled:p,close:a.closeMenu},{id:P,...E}=e;return te({ourProps:{id:P,ref:l,role:"menuitem",tabIndex:p===!0?void 0:-1,"aria-disabled":p===!0?!0:void 0,disabled:void 0,onClick:c,onFocus:i,onPointerenter:v,onMouseenter:v,onPointermove:f,onMousemove:f,onPointerleave:b,onMouseleave:b},theirProps:{...r,...E},slot:h,attrs:r,slots:n,name:"MenuItem"})}}});var fr=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(fr||{});let gt=Symbol("PopoverContext");function Ae(e){let n=le(gt,null);if(n===null){let r=new Error(`<${e} /> is missing a parent <${_t.name} /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,Ae),r}return n}let pr=Symbol("PopoverGroupContext");function ht(){return le(pr,null)}let bt=Symbol("PopoverPanelContext");function mr(){return le(bt,null)}let _t=A({name:"Popover",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:n,attrs:r,expose:t}){var a;let l=S(null);t({el:l,$el:l});let o=S(1),s=S(null),u=S(null),c=S(null),i=S(null),_=y(()=>se(l)),v=y(()=>{var k,C;if(!g(s)||!g(i))return!1;for(let pe of document.querySelectorAll("body > *"))if(Number(pe?.contains(g(s)))^Number(pe?.contains(g(i))))return!0;let O=de(),U=O.indexOf(g(s)),fe=(U+O.length-1)%O.length,yt=(U+1)%O.length,xt=O[fe],wt=O[yt];return!((k=g(i))!=null&&k.contains(xt))&&!((C=g(i))!=null&&C.contains(wt))}),f={popoverState:o,buttonId:S(null),panelId:S(null),panel:i,button:s,isPortalled:v,beforePanelSentinel:u,afterPanelSentinel:c,togglePopover(){o.value=q(o.value,{0:1,1:0})},closePopover(){o.value!==1&&(o.value=1)},close(k){f.closePopover();let C=(()=>k?k instanceof HTMLElement?k:k.value instanceof HTMLElement?g(k):g(f.button):g(f.button))();C?.focus()}};ie(gt,f),it(y(()=>q(o.value,{0:Y.Open,1:Y.Closed})));let b={buttonId:f.buttonId,panelId:f.panelId,close(){f.closePopover()}},p=ht(),h=p?.registerPopover,[P,E]=tr(),x=nr({portals:P,defaultContainers:[s,i]});function F(){var k,C,O,U;return(U=p?.isFocusWithinPopoverGroup())!=null?U:((k=_.value)==null?void 0:k.activeElement)&&(((C=g(s))==null?void 0:C.contains(_.value.activeElement))||((O=g(i))==null?void 0:O.contains(_.value.activeElement)))}return X(()=>h?.(b)),er((a=_.value)==null?void 0:a.defaultView,"focus",k=>{var C,O;k.target!==window&&k.target instanceof HTMLElement&&o.value===0&&(F()||s&&i&&(x.contains(k.target)||(C=g(f.beforePanelSentinel))!=null&&C.contains(k.target)||(O=g(f.afterPanelSentinel))!=null&&O.contains(k.target)||f.closePopover()))},!0),pt(x.resolveContainers,(k,C)=>{var O;f.closePopover(),ke(C,Se.Loose)||(k.preventDefault(),(O=g(s))==null||O.focus())},y(()=>o.value===0)),()=>{let k={open:o.value===0,close:f.close};return Z(E,{},()=>te({theirProps:{...e,...r},ourProps:{ref:l},slot:k,slots:n,attrs:r,name:"Popover"}))}}}),vr=A({name:"PopoverButton",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:()=>`headlessui-popover-button-${ee()}`}},inheritAttrs:!1,setup(e,{attrs:n,slots:r,expose:t}){let a=Ae("PopoverButton"),l=y(()=>se(a.button));t({el:a.button,$el:a.button}),oe(()=>{a.buttonId.value=e.id}),Oe(()=>{a.buttonId.value=null});let o=ht(),s=o?.closeOthers,u=mr(),c=y(()=>u===null?!1:u.value===a.panelId.value),i=S(null),_=`headlessui-focus-sentinel-${ee()}`;c.value||X(()=>{a.button.value=i.value});let v=ut(y(()=>({as:e.as,type:n.type})),i);function f(x){var F,k,C,O,U;if(c.value){if(a.popoverState.value===1)return;switch(x.key){case L.Space:case L.Enter:x.preventDefault(),(k=(F=x.target).click)==null||k.call(F),a.closePopover(),(C=g(a.button))==null||C.focus();break}}else switch(x.key){case L.Space:case L.Enter:x.preventDefault(),x.stopPropagation(),a.popoverState.value===1&&s?.(a.buttonId.value),a.togglePopover();break;case L.Escape:if(a.popoverState.value!==0)return s?.(a.buttonId.value);if(!g(a.button)||(O=l.value)!=null&&O.activeElement&&!((U=g(a.button))!=null&&U.contains(l.value.activeElement)))return;x.preventDefault(),x.stopPropagation(),a.closePopover();break}}function b(x){c.value||x.key===L.Space&&x.preventDefault()}function p(x){var F,k;e.disabled||(c.value?(a.closePopover(),(F=g(a.button))==null||F.focus()):(x.preventDefault(),x.stopPropagation(),a.popoverState.value===1&&s?.(a.buttonId.value),a.togglePopover(),(k=g(a.button))==null||k.focus()))}function h(x){x.preventDefault(),x.stopPropagation()}let P=mt();function E(){let x=g(a.panel);if(!x)return;function F(){q(P.value,{[G.Forwards]:()=>J(x,K.First),[G.Backwards]:()=>J(x,K.Last)})===_e.Error&&J(de().filter(k=>k.dataset.headlessuiFocusGuard!=="true"),q(P.value,{[G.Forwards]:K.Next,[G.Backwards]:K.Previous}),{relativeTo:g(a.button)})}F()}return()=>{let x=a.popoverState.value===0,F={open:x},{id:k,...C}=e,O=c.value?{ref:i,type:v.value,onKeydown:f,onClick:p}:{ref:i,id:k,type:v.value,"aria-expanded":a.popoverState.value===0,"aria-controls":g(a.panel)?a.panelId.value:void 0,disabled:e.disabled?!0:void 0,onKeydown:f,onKeyup:b,onClick:p,onMousedown:h};return Z(B,[te({ourProps:O,theirProps:{...n,...C},slot:F,attrs:n,slots:r,name:"PopoverButton"}),x&&!c.value&&a.isPortalled.value&&Z(ye,{id:_,features:ce.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:E})])}}}),gr=A({name:"PopoverPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},focus:{type:Boolean,default:!1},id:{type:String,default:()=>`headlessui-popover-panel-${ee()}`}},inheritAttrs:!1,setup(e,{attrs:n,slots:r,expose:t}){let{focus:a}=e,l=Ae("PopoverPanel"),o=y(()=>se(l.panel)),s=`headlessui-focus-sentinel-before-${ee()}`,u=`headlessui-focus-sentinel-after-${ee()}`;t({el:l.panel,$el:l.panel}),oe(()=>{l.panelId.value=e.id}),Oe(()=>{l.panelId.value=null}),ie(bt,l.panelId),X(()=>{var h,P;if(!a||l.popoverState.value!==0||!l.panel)return;let E=(h=o.value)==null?void 0:h.activeElement;(P=g(l.panel))!=null&&P.contains(E)||J(g(l.panel),K.First)});let c=st(),i=y(()=>c!==null?(c.value&Y.Open)===Y.Open:l.popoverState.value===0);function _(h){var P,E;switch(h.key){case L.Escape:if(l.popoverState.value!==0||!g(l.panel)||o.value&&!((P=g(l.panel))!=null&&P.contains(o.value.activeElement)))return;h.preventDefault(),h.stopPropagation(),l.closePopover(),(E=g(l.button))==null||E.focus();break}}function v(h){var P,E,x,F,k;let C=h.relatedTarget;C&&g(l.panel)&&((P=g(l.panel))!=null&&P.contains(C)||(l.closePopover(),((x=(E=g(l.beforePanelSentinel))==null?void 0:E.contains)!=null&&x.call(E,C)||(k=(F=g(l.afterPanelSentinel))==null?void 0:F.contains)!=null&&k.call(F,C))&&C.focus({preventScroll:!0})))}let f=mt();function b(){let h=g(l.panel);if(!h)return;function P(){q(f.value,{[G.Forwards]:()=>{var E;J(h,K.First)===_e.Error&&((E=g(l.afterPanelSentinel))==null||E.focus())},[G.Backwards]:()=>{var E;(E=g(l.button))==null||E.focus({preventScroll:!0})}})}P()}function p(){let h=g(l.panel);if(!h)return;function P(){q(f.value,{[G.Forwards]:()=>{let E=g(l.button),x=g(l.panel);if(!E)return;let F=de(),k=F.indexOf(E),C=F.slice(0,k+1),O=[...F.slice(k+1),...C];for(let U of O.slice())if(U.dataset.headlessuiFocusGuard==="true"||x!=null&&x.contains(U)){let fe=O.indexOf(U);fe!==-1&&O.splice(fe,1)}J(O,K.First,{sorted:!1})},[G.Backwards]:()=>{var E;J(h,K.Previous)===_e.Error&&((E=g(l.button))==null||E.focus())}})}P()}return()=>{let h={open:l.popoverState.value===0,close:l.close},{id:P,focus:E,...x}=e,F={ref:l.panel,id:P,onKeydown:_,onFocusout:a&&l.popoverState.value===0?v:void 0,tabIndex:-1};return te({ourProps:F,theirProps:{...n,...x},attrs:n,slot:h,slots:{...r,default:(...k)=>{var C;return[Z(B,[i.value&&l.isPortalled.value&&Z(ye,{id:s,ref:l.beforePanelSentinel,features:ce.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:b}),(C=r.default)==null?void 0:C.call(r,...k),i.value&&l.isPortalled.value&&Z(ye,{id:u,ref:l.afterPanelSentinel,features:ce.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:p})])]}},features:ue.RenderStrategy|ue.Static,visible:i.value,name:"PopoverPanel"})}}});const hr=e=>{const n=y(()=>{const u=e.categoryTree.pictures?.[0];if(u&&!u.alt)return{alt:e.categoryTree.name,...u}}),r=y(()=>e.categoryTree.subcategories.filter(({subcategories:u})=>u.length)),t=y(()=>{let u=r.value.length;return n.value&&(u+=1),r.value.length<e.categoryTree.subcategories.length&&(u+=1),u}),a=y(()=>(e.megaMenuMaxCols||7)>=t.value),l=y(()=>a.value?e.categoryTree.subcategories.filter(({subcategories:u})=>!u.length):e.categoryTree.subcategories),o=y(()=>a.value?e.categoryTree.subcategories.filter(({subcategories:u})=>u.length):e.categoryTree.subcategories),s=y(()=>a.value?t.value:n.value?2:1);return{categoryPicture:n,isMegaMenu:a,subcategoryLinks:l,subcategoryCols:o,countMenuCols:s}},br=A({__name:"ShopHeaderSubmenu",props:{categoryTree:{},megaMenuMaxCols:{}},setup(e,{expose:n}){n();const r=e,{categoryPicture:t,subcategoryLinks:a,subcategoryCols:l,countMenuCols:o}=hr(r),s={props:r,categoryPicture:t,subcategoryLinks:a,subcategoryCols:l,countMenuCols:o,get Popover(){return _t},get PopoverButton(){return vr},get PopoverPanel(){return gr}};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}}),_r={class:"relative"},yr={class:"flex gap-6 w-full"},xr={key:0,class:"flex-1"},wr=["href"],Sr=["href"],kr={class:"text-sm text-base-600 mt-1 mb-1.5"},Pr=["href"],Ir=["href"];function Mr(e,n,r,t,a,l){const o=Q("AImg"),s=Q("Fade");return m(),N(t.Popover,null,{default:T(({open:u})=>[I(t.PopoverButton,{class:"outline-none"},{default:T(()=>[V(e.$slots,"button",ge(he({open:u})))]),_:2},1024),d("div",_r,[I(s,null,{default:T(()=>[I(t.PopoverPanel,{class:$(["absolute z-20 top-3 left-1/2 -translate-x-1/2 !transform px-6 py-4 rounded backdrop-blur-md shadow bg-white/80 text-base text-base-700",t.countMenuCols===1?"w-60":t.countMenuCols===2?`w-screen ${t.categoryPicture?"max-w-lg":"max-w-sm"}`:t.countMenuCols===3?`w-screen ${t.categoryPicture?"max-w-xl":"max-w-md"}`:t.countMenuCols<6?"w-screen max-w-3xl":"w-screen max-w-5xl"])},{default:T(()=>[d("div",yr,[t.subcategoryLinks.length?(m(),w("ul",xr,[(m(!0),w(B,null,W(t.subcategoryLinks,(c,i)=>(m(),w("li",{key:`link-${i}`,class:$(t.subcategoryLinks.length>10?"text-sm mb-1":"mb-2")},[d("a",{href:`/${c.slug}`,class:"hover:text-primary"},[d("h3",null,M(c.name),1)],8,wr)],2))),128))])):D("",!0),(m(!0),w(B,null,W(t.subcategoryCols,(c,i)=>(m(),w("div",{key:i,class:"flex-1"},[d("a",{href:`/${c.slug}`,class:"hover:text-primary"},[d("h3",null,M(c.name),1)],8,Sr),d("ul",kr,[(m(!0),w(B,null,W(c.subcategories,(_,v)=>(m(),w("li",{key:`${i}-${v}`,class:"mb-0.5"},[d("a",{href:`/${_.slug}`,class:"hover:text-primary hover:underline"},[d("h3",null,M(_.name),1)],8,Pr)]))),128))])]))),128)),t.categoryPicture?(m(),w("div",{key:1,class:$(t.countMenuCols===2?"basis-1/2":t.countMenuCols<5?"basis-2/5":"basis-1/3")},[I(o,{picture:t.categoryPicture,class:"ml-auto rounded"},null,8,["picture"])],2)):D("",!0)]),d("a",{href:`/${r.categoryTree.slug}`,class:"block mt-1 text-xs text-base-600 leading-snug underline"},M("Ver toda a categoria $1".replace("$1",r.categoryTree.name)),9,Ir)]),_:1},8,["class"])]),_:1})])]),_:3})}const Cr=j(br,[["render",Mr]]),Tr=A({__name:"ShopHeaderMenu",props:{inlineMenuTrees:{}},setup(e,{expose:n}){n();const r=e,t=y(()=>!!r.inlineMenuTrees.find(({subcategories:l})=>!l.length)),a={props:r,hasOneLevelSubcategories:t,ShopHeaderSubmenu:Cr};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}}),Er={class:"hover:text-primary group"},Or=["href"],Fr={class:"inline"};function Lr(e,n,r,t,a,l){return m(),w("nav",null,[d("ul",{class:$(["flex gap-4 xl:gap-5 text-base-700",r.inlineMenuTrees.length<7?"text-base":"text-sm"])},[(m(!0),w(B,null,W(r.inlineMenuTrees,(o,s)=>(m(),w("li",{key:s},[o.subcategories.length?(m(),N(t.ShopHeaderSubmenu,{key:0,"category-tree":o},{button:T(({open:u})=>[d("span",Er,[d("h3",{class:$(["group-hover:underline inline",[r.inlineMenuTrees.length<7?"decoration-2":null,u?"underline":null]])},M(o.name),3),t.hasOneLevelSubcategories?(m(),w("i",{key:0,class:$(["i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle",u?"rotate-180":null])},null,2)):D("",!0)])]),_:2},1032,["category-tree"])):(m(),w("a",{key:1,href:`/${o.slug}`,class:$(["hover:text-primary hover:underline",r.inlineMenuTrees.length<7?"decoration-2":null])},[d("h3",Fr,M(o.name),1)],10,Or))]))),128))],2)])}const Ar=j(Tr,[["render",Lr]]),$r={},Nr={class:"w-full h-40 bg-base-300"};function Dr(e,n){return m(),w("div",Nr)}const jr=j($r,[["render",Dr]]),Br=A({__name:"AccountMenu",props:{serviceLinks:{}},setup(e,{expose:n}){n();const r={get Menu(){return ir},get MenuButton(){return ur},get MenuItems(){return cr},get MenuItem(){return dr},get socialNetworks(){return Ee},get customerName(){return be},get initializeFirebaseAuth(){return tt},get isLogged(){return Je},get logout(){return Le},AccountLink:nt,SocialNetworkLink:rt};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),Rr={key:0},Vr={class:"p-3 text-base-600"},Hr={class:"list-none"},Ur=d("i",{class:"i-heart mr-1"},null,-1),zr={class:"flex justify-center gap-2 p-2 text-base-500 text-base"},Kr=d("span",{class:"text-base-600"},M("Sair"),-1),Wr=d("i",{class:"i-arrow-right-on-rectangle text-lg ml-1"},null,-1),qr=[Kr,Wr];function Gr(e,n,r,t,a,l){const o=Q("ALink"),s=Q("Fade");return m(),N(t.Menu,{as:"div",class:"relative text-center text-sm text-base-800"},{default:T(({open:u})=>[u?(m(),w("div",Rr,[n[0]||($e(-1),n[0]=d("span",null,[R(M(t.initializeFirebaseAuth()),1)]),$e(1),n[0])])):D("",!0),I(t.MenuButton,{class:"outline-none","aria-label":"Minha conta"},{default:T(()=>[V(e.$slots,"button",ge(he({open:u})))]),_:2},1024),I(s,null,{default:T(()=>[I(t.MenuItems,{class:"absolute -right-8 mt-2 w-56 rounded shadow ring-1 ring-black/5 bg-white divide-y divide-base-100 focus:outline-none"},{default:T(()=>[d("div",Vr,[R(M(`Olá ${t.customerName||"Visitante"}`)+" ",1),I(t.AccountLink,{role:"button",class:"ui-btn-sm ui-btn-primary block my-1"},{default:T(()=>[R(M("Acessar minha conta"))]),_:1}),t.isLogged?D("",!0):(m(),N(t.AccountLink,{key:0,"is-sign-up":"",class:"ui-link block"},{default:T(()=>[R(M("Criar uma conta"))]),_:1}))]),d("ul",Hr,[I(t.MenuItem,{as:"li"},{default:T(({active:c})=>[I(t.AccountLink,{to:"orders",class:$(["block p-2",c?"bg-base-100 text-primary":null])},{default:T(()=>[R(M("Meus pedidos"))]),_:2},1032,["class"])]),_:1}),I(t.MenuItem,{as:"li"},{default:T(({active:c})=>[I(t.AccountLink,{to:"favorites",class:$(["block p-2",c?"bg-base-100 text-primary":null])},{default:T(()=>[Ur,R(" "+M("Meus favoritos"))]),_:2},1032,["class"])]),_:1}),(m(!0),w(B,null,W(r.serviceLinks,({title:c,href:i},_)=>(m(),N(t.MenuItem,{as:"li",key:`s-${_}`},{default:T(({active:v})=>[I(o,{href:i,class:$(["block p-2",v?"bg-base-100 text-primary":null])},{default:T(()=>[R(M(c),1)]),_:2},1032,["href","class"])]),_:2},1024))),128)),I(t.MenuItem,{as:"li"},{default:T(()=>[d("div",zr,[(m(!0),w(B,null,W(t.socialNetworks,(c,i)=>(m(),w("span",{key:i},[I(t.SocialNetworkLink,{network:i,class:"p-1 hover:text-primary"},null,8,["network"])]))),128))])]),_:1}),t.isLogged?(m(),N(t.MenuItem,{key:0,as:"li"},{default:T(()=>[d("button",{onClick:n[1]||(n[1]=(...c)=>t.logout&&t.logout(...c)),class:"p-2 text-right text-base-800"},qr)]),_:1})):D("",!0)])]),_:1})]),_:1})]),_:3})}const Qr=j(Br,[["render",Gr]]),Yr=A({__name:"CheckoutLink",props:{to:{default:"cart"},cartUrl:{default:globalThis.$storefront.settings.cart_url||"/app/#/cart"},checkoutUrl:{default:globalThis.$storefront.settings.checkout_url||"/app/#/checkout"}},setup(e,{expose:n}){n();const r=e,t=y(()=>r.to==="cart"?r.cartUrl:r.checkoutUrl),a={props:r,href:t};return Object.defineProperty(a,"__isScriptSetup",{enumerable:!1,value:!0}),a}}),Xr=["href"];function Jr(e,n,r,t,a,l){return m(),w("a",{href:t.href},[V(e.$slots,"default")],8,Xr)}const Zr=j(Yr,[["render",Jr]]),ea=e=>{const n=y(()=>!e.item&&e.product?Pt(e.product):null),r=y(()=>e.item||n.value),t=y(()=>It(r.value)),a=y(()=>{const{slug:s}=r.value;return typeof s=="string"?`/${s}`:null}),l=y(()=>{if(r.value.picture)return Ht(r.value.picture,void 0,e.pictureSize||"small")}),o=y(()=>r.value.final_price||r.value.price);return{cartItem:r,title:t,link:a,image:l,finalPrice:o}},ta=A({__name:"QuantitySelectorControl",props:{isMinus:{type:Boolean}},setup(e,{expose:n}){n();const{value:r,isBoundMin:t,isBoundMax:a}=le(Te),l={value:r,isBoundMin:t,isBoundMax:a};return Object.defineProperty(l,"__isScriptSetup",{enumerable:!1,value:!0}),l}}),na=["data-quantity-selector-control","aria-label","disabled"];function ra(e,n,r,t,a,l){return m(),w("button",{type:"button",class:"w-10 h-12 text-xl leading-12 enabled:text-primary enabled:hover:bg-primary-100/70 disabled:opacity-40","data-quantity-selector-control":r.isMinus?"minus":"plus","aria-label":r.isMinus?"Menos":"Mais",disabled:r.isMinus?t.isBoundMin:t.isBoundMax,onClick:n[0]||(n[0]=xe(o=>t.value+=r.isMinus?-1:1,["prevent"]))},[V(e.$slots,"default",{},()=>[r.isMinus?(m(),w(B,{key:0},[R("−")],64)):(m(),w(B,{key:1},[R("+")],64))])],8,na)}const aa=j(ta,[["render",ra]]),Te=Symbol("quantitySelector"),oa=A({__name:"QuantitySelector",props:{modelValue:{default:1},min:{default:1},max:{},step:{},disabled:{type:Boolean},readonly:{type:Boolean}},emits:["update:modelValue"],setup(e,{expose:n,emit:r}){n();const t=e,a=S(null),l=`NInput${$t()}`,o=y({get(){return t.modelValue},set(i){i<t.min&&(i=t.min,a.value.value=`${i}`),t.max&&i>t.max&&(i=t.max,a.value.value=`${i}`),r("update:modelValue",i)}}),s=y(()=>t.min>=o.value),u=y(()=>t.max<=o.value);ie(Te,{value:o,isBoundMin:s,isBoundMax:u});const c={quantitySelectorKey:Te,props:t,emit:r,input:a,inputId:l,value:o,isBoundMin:s,isBoundMax:u,QuantitySelectorControl:aa};return Object.defineProperty(c,"__isScriptSetup",{enumerable:!1,value:!0}),c}}),la={"data-quantity-selector":""},sa={class:"flex items-center"},ia=["min","max","step","disabled","readonly"];function ua(e,n,r,t,a,l){return m(),w("div",la,[V(e.$slots,"label",ge(he({inputId:t.inputId,value:t.value})),()=>[d("label",{for:t.inputId,class:"sr-only"},M("Quantidade"))]),d("div",sa,[Bt(d("input",{ref:"input",type:"number",id:t.inputId,"onUpdate:modelValue":n[0]||(n[0]=o=>t.value=o),min:r.min,max:r.max,step:r.step,disabled:r.disabled,readonly:r.readonly,class:"h-12 w-14 px-2 text-lg border-transparent text-center [-moz-appearance:_textfield] [&::-webkit-outer-spin-button]:m-0 [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:m-0 [&::-webkit-inner-spin-button]:appearance-none"},null,8,ia),[[Rt,t.value]]),V(e.$slots,"controls",ge(he({value:t.value,isBoundMin:t.isBoundMin,isBoundMax:t.isBoundMax})),()=>[I(t.QuantitySelectorControl,{"is-minus":"",class:"order-first"},{default:T(()=>[V(e.$slots,"minus")]),_:3}),I(t.QuantitySelectorControl,{class:"order-last"},{default:T(()=>[V(e.$slots,"plus")]),_:3})])])])}const ca=j(oa,[["render",ua]]),da=A({__name:"CartItem",props:{item:{},product:{},pictureSize:{}},setup(e,{expose:n}){n();const r=e,{cartItem:t,title:a,link:l,image:o,finalPrice:s}=ea(r),u={props:r,cartItem:t,title:a,link:l,image:o,finalPrice:s,get removeCartItem(){return Mt},QuantitySelector:ca,Prices:Ke};return Object.defineProperty(u,"__isScriptSetup",{enumerable:!1,value:!0}),u}}),fa={class:"relative bg-white shadow-sm"},pa={class:"py-2 flex-auto text-sm text-base-700 group-hover:text-base-900 group-hover:underline"},ma=d("span",{class:"w-5 h-5 text-sm leading-none flex flex-col justify-center rounded-full border-3 text-danger-800 border-danger-700/30"},[d("i",{class:"i-close my-0 mx-auto"})],-1),va=[ma],ga={class:"flex justify-between items-center border-t-2 border-base-100"},ha={class:"border-r-2 border-base-100"};function ba(e,n,r,t,a,l){const o=Q("AImg");return m(),w("article",fa,[(m(),N(Qe(t.link?"ALink":"div"),{href:t.link,class:"flex items-center gap-5 p-4 group"},{default:T(()=>[t.image?(m(),N(o,{key:0,picture:t.image,alt:t.title,class:"w-20 h-20 object-cover"},null,8,["picture","alt"])):D("",!0),d("p",pa,M(t.title),1)]),_:1},8,["href"])),t.cartItem._id?(m(),w("button",{key:0,onClick:n[0]||(n[0]=xe(s=>t.removeCartItem(t.cartItem._id),["prevent"])),class:"absolute top-0 right-0 p-2 opacity-70 hover:opacity-100","aria-label":"Remover"},va)):D("",!0),d("div",ga,[d("div",ha,[I(t.QuantitySelector,{modelValue:t.cartItem.quantity,"onUpdate:modelValue":n[1]||(n[1]=s=>t.cartItem.quantity=s),min:t.cartItem.min_quantity,max:t.cartItem.max_quantity},null,8,["modelValue","min","max"])]),I(t.Prices,{"base-price":t.cartItem.base_price,price:t.finalPrice,class:"px-4 py-2.5 text-[95%]"},null,8,["base-price","price"])])])}const _a=j(da,[["render",ba]]),ya=A({__name:"CartSidebar",emits:["close"],setup(e,{expose:n,emit:r}){n();const t={emit:r,get freeShippingFromValue(){return Nt},get shoppingCart(){return Ct},get totalItems(){return We},CheckoutLink:Zr,Prices:Ke,CartItem:_a};return Object.defineProperty(t,"__isScriptSetup",{enumerable:!1,value:!0}),t}}),xa={class:"flex flex-col h-screen bg-white"},wa={class:"px-6 py-4 flex justify-end items-center gap-3 shadow ring-1 ring-black/5 z-10"},Sa=d("span",{class:"text-right text-base text-base-600 font-medium"},M("Meu carrinho de compras"),-1),ka={class:"min-w-[3rem] text-right"},Pa={class:"ui-badge-pill-lg"},Ia={class:"grow overflow-y-auto bg-base-50"},Ma={key:0,class:"text-sm text-center"},Ca={key:0,class:"p-3 secondary-subtle"},Ta=d("strong",{class:"lowercase"},M("Frete grátis"),-1),Ea={key:1,class:"p-3 bg-success-50 text-success-800"},Oa=d("i",{class:"text-success-900 i-check mr-1"},null,-1),Fa={class:"px-4 pt-4 pb-2"},La={class:"px-5 pt-4 pb-3 ring-2 ring-black/5 z-10"},Aa={class:"grid grid-cols-2 gap-3 items-center text-right"},$a=d("div",null,M("Subtotal"),-1),Na=d("i",{class:"i-check mr-2"},null,-1),Da=d("i",{class:"i-arrow-left mr-1"},null,-1);function ja(e,n,r,t,a,l){return m(),w("aside",xa,[d("header",wa,[Sa,d("span",ka,[d("span",Pa,M(t.totalItems),1)])]),d("article",Ia,[t.freeShippingFromValue?(m(),w("div",Ma,[t.freeShippingFromValue>t.shoppingCart.subtotal?(m(),w("div",Ca,[R(M("Adicione $1 para ganhar".replace("$1",e.$money(t.freeShippingFromValue-t.shoppingCart.subtotal)))+" ",1),Ta])):(m(),w("div",Ea,[Oa,R(" "+M("Frete grátis a partir de")+" "+M(e.$money(t.freeShippingFromValue)),1)]))])):D("",!0),d("ul",Fa,[(m(!0),w(B,null,W(t.shoppingCart.items,(o,s)=>(m(),w("li",{key:s},[I(t.CartItem,{item:o,class:"mb-3"},null,8,["item"])]))),128))])]),d("footer",La,[d("div",Aa,[$a,I(t.Prices,{price:t.shoppingCart.subtotal,"is-literal":!0,class:"text-lg"},null,8,["price"])]),I(t.CheckoutLink,{class:"ui-btn-lg ui-btn-primary w-full text-right my-2.5"},{default:T(()=>[Na,R(" "+M("Finalizar compra"))]),_:1}),d("a",{href:"#",onClick:n[0]||(n[0]=xe(o=>t.emit("close"),["prevent"])),class:"ui-link text-base-500 hover:text-base-700 text-sm"},[Da,R(" "+M("Continuar comprando"))])])])}const Ba=j(ya,[["render",ja]]),Ra=A({__name:"ShopHeader",props:{serviceLinks:{},categories:{},menuCategorySlugs:{},menuRandomCategories:{},isAlphabeticalSortSubmenu:{type:Boolean}},setup(e,{expose:n}){n();const r=e,t=S(null),{isSticky:a,positionY:l,categoryTrees:o,inlineMenuTrees:s}=Gt({...r,header:t}),u=S(!1),c=S(!1),i=S(!1),_=S(!1),v=S(0);oe(()=>{_.value=!0,ne(We,(b,p)=>{typeof p=="number"&&p<b&&(i.value=!0),v.value=b},{immediate:!0})});const f={props:r,header:t,isSticky:a,positionY:l,categoryTrees:o,inlineMenuTrees:s,isSidenavOpen:u,isSearchOpen:c,isCartOpen:i,isMounted:_,delayedTotalItems:v,Drawer:nn,ShopSidenav:$n,ShopHeaderMenu:Ar,SearchModal:jr,AccountMenu:Qr,CartSidebar:Ba};return Object.defineProperty(f,"__isScriptSetup",{enumerable:!1,value:!0}),f}}),Va={class:"container 2xl:max-w-7xl mx-auto px-1 lg:pr-3 lg:pl-5 xl:pr-7 xl:pl-9 2xl:pr-0 2xl:pl-2 flex md:grid grid-flow-col grid-cols-3 lg:grid-cols-none lg:auto-cols-max justify-between items-center"},Ha={class:"basis-1/4 lg:hidden"},Ua={class:"basis-1/4 px-2 flex justify-end items-center gap-3 lg:gap-4 text-base-800"},za=d("i",{class:"i-magnifying-glass w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"},null,-1),Ka=[za],Wa=d("i",{class:"i-shopping-bag w-7 h-7 group-hover:text-primary group-hover:scale-110 group-active:scale-125"},null,-1),qa={key:0,class:"ui-badge-pill-sm absolute -top-1 -right-1.5"};function Ga(e,n,r,t,a,l){return m(),w("header",{ref:"header",class:$(["relative top-0 z-50 transition-colors",[t.isSticky&&!t.isSidenavOpen?"bg-white/80":"bg-white",t.isSticky?"backdrop-blur-md shadow py-2 md:py-3":"py-3 sm:py-4 md:py-5"]])},[d("div",Va,[d("div",Ha,[d("button",{class:"px-2 my-1","aria-label":"Abrir/fechar menu",onClick:n[0]||(n[0]=o=>t.isSidenavOpen=!t.isSidenavOpen)},[d("i",{class:$(["text-base-500 text-3xl",t.isSidenavOpen?"i-close":"i-bars-3-bottom-left"])},null,2)])]),V(e.$slots,"logo"),I(t.ShopHeaderMenu,Ne({class:"hidden lg:block"},{inlineMenuTrees:t.inlineMenuTrees}),null,16),d("div",Ua,[d("button",{"aria-label":"Buscar produtos",onClick:n[1]||(n[1]=o=>t.isSearchOpen=!t.isSearchOpen)},Ka),I(t.AccountMenu,{"service-links":r.serviceLinks,class:"hidden sm:block"},{button:T(({open:o})=>[d("i",{class:$(["i-user-circle w-7 h-7 hover:text-primary hover:scale-110 active:scale-125",o?"text-black scale-110":null])},null,2)]),_:1},8,["service-links"]),d("button",{"aria-label":"Abrir carrinho",onClick:n[2]||(n[2]=o=>t.isCartOpen=!t.isCartOpen),class:"relative group"},[Wa,t.delayedTotalItems?(m(),w("span",qa,M(t.delayedTotalItems),1)):D("",!0)])])]),I(t.Drawer,{modelValue:t.isSidenavOpen,"onUpdate:modelValue":n[3]||(n[3]=o=>t.isSidenavOpen=o),"has-close-button":!1,position:"absolute",class:$(t.isSticky?"mt-2 md:mt-3":"mt-3 sm:mt-4 md:mt-5"),style:qe({height:`calc(100vh - ${t.positionY}px + .5rem)`})},{default:T(()=>[I(t.ShopSidenav,Ne({class:"bg-white pt-6"},{categoryTrees:t.categoryTrees}),null,16)]),_:1},8,["modelValue","class","style"]),I(t.Drawer,{modelValue:t.isSearchOpen,"onUpdate:modelValue":n[4]||(n[4]=o=>t.isSearchOpen=o),"has-close-button":!1,placement:"top"},{default:T(()=>[I(t.SearchModal)]),_:1},8,["modelValue"]),t.isMounted?(m(),N(Ge,{key:0,to:"#teleported-overlap"},[I(t.Drawer,{modelValue:t.isCartOpen,"onUpdate:modelValue":n[6]||(n[6]=o=>t.isCartOpen=o),placement:"end","backdrop-target":"#teleported-overlap"},{default:T(()=>[I(t.CartSidebar,{onClose:n[5]||(n[5]=o=>t.isCartOpen=!1)})]),_:1},8,["modelValue"])])):D("",!0)],2)}const to=j(Ra,[["render",Ga]]);export{to as default};
@@ -1 +1 @@
1
- if(!self.define){let e,s={};const r=(r,n)=>(r=new URL(r+".js",n).href,s[r]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=r,e.onload=s,document.head.appendChild(e)}else e=r,importScripts(r),s()})).then((()=>{let e=s[r];if(!e)throw new Error(`Module ${r} didn’t register its module`);return e})));self.define=(n,i)=>{const o=e||("document"in self?document.currentScript.src:"")||location.href;if(s[o])return;let a={};const l=e=>r(e,o),t={module:{uri:o},exports:a,require:l};s[o]=Promise.all(n.map((e=>t[e]||l(e)))).then((e=>(i(...e),a)))}}define(["./workbox-5e0bf4e4"],(function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"_astro/_...slug_.07c1fa58.css",revision:null},{url:"_astro/_plugin-vue_export-helper.48e557ba.js",revision:null},{url:"_astro/Carousel.63d511ab.js",revision:null},{url:"_astro/client.9dbf6b61.js",revision:null},{url:"_astro/firebase-app.1df8af9a.js",revision:null},{url:"_astro/HeroSlider.8d2ea532.js",revision:null},{url:"_astro/hoisted.572313d6.js",revision:null},{url:"_astro/img.7def76a1.js",revision:null},{url:"_astro/index.c0c35ead.js",revision:null},{url:"_astro/PitchBar.c2a2ad79.js",revision:null},{url:"_astro/preload-helper.cf010ec4.js",revision:null},{url:"_astro/Prices.8572765c.js",revision:null},{url:"_astro/ProductShelf.4a105932.js",revision:null},{url:"_astro/session-utm.744b0db3.js",revision:null},{url:"_astro/ShopHeader.7ecb7597.js",revision:null},{url:"_astro/workbox-window.prod.es5.a7b12eab.js",revision:null},{url:"manifest.webmanifest",revision:"138b9c9f495fe815bcec626365e9372e"}],{ignoreURLParametersMatching:[/.*/]}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("/404"))),e.registerRoute(/^\/$/,new e.NetworkFirst,"GET"),e.registerRoute(/\/((?!(?:admin|assets|img)(\/|$))[^.]+)(\.(?!js|css|xml|txt|png|jpg|jpeg|webp|avif|svg|gif)[^.]+)*$/,new e.NetworkFirst({cacheName:"pages",plugins:[new e.ExpirationPlugin({maxEntries:50,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^\/assets\//,new e.StaleWhileRevalidate({cacheName:"assets",plugins:[]}),"GET"),e.registerRoute(/^\/_image$/,new e.StaleWhileRevalidate({cacheName:"optim-images",plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:2592e3,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^\/img\/uploads\/.*\.(?:png|jpg|jpeg|webp|avif|svg|gif)$/,new e.StaleWhileRevalidate({cacheName:"cms-images",plugins:[new e.ExpirationPlugin({maxEntries:20,maxAgeSeconds:2592e3,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^https:\/\/ecomplus\.io/,new e.NetworkFirst({cacheName:"store-api",plugins:[new e.ExpirationPlugin({maxEntries:50,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^https:\/\/(((\w+\.)?ecoms\d)|(ecom[\w-]+(\.\w+)*\.digitaloceanspaces))\.com.*\/imgs\/normal\//,new e.CacheFirst({cacheName:"product-thumbnails",plugins:[new e.ExpirationPlugin({maxEntries:100,maxAgeSeconds:2592e3,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^https:\/\/(((\w+\.)?ecoms\d)|(ecom[\w-]+(\.\w+)*\.digitaloceanspaces))\.com.*\/imgs\/big\//,new e.CacheFirst({cacheName:"product-pictures",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:604800,purgeOnQuotaError:!0})]}),"GET")}));
1
+ if(!self.define){let e,s={};const r=(r,n)=>(r=new URL(r+".js",n).href,s[r]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=r,e.onload=s,document.head.appendChild(e)}else e=r,importScripts(r),s()})).then((()=>{let e=s[r];if(!e)throw new Error(`Module ${r} didn’t register its module`);return e})));self.define=(n,i)=>{const o=e||("document"in self?document.currentScript.src:"")||location.href;if(s[o])return;let a={};const l=e=>r(e,o),t={module:{uri:o},exports:a,require:l};s[o]=Promise.all(n.map((e=>t[e]||l(e)))).then((e=>(i(...e),a)))}}define(["./workbox-5e0bf4e4"],(function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"_astro/_...slug_.07c1fa58.css",revision:null},{url:"_astro/_plugin-vue_export-helper.48e557ba.js",revision:null},{url:"_astro/Carousel.63d511ab.js",revision:null},{url:"_astro/client.9dbf6b61.js",revision:null},{url:"_astro/firebase-app.1df8af9a.js",revision:null},{url:"_astro/HeroSlider.8d2ea532.js",revision:null},{url:"_astro/hoisted.572313d6.js",revision:null},{url:"_astro/img.7def76a1.js",revision:null},{url:"_astro/index.c0c35ead.js",revision:null},{url:"_astro/PitchBar.c2a2ad79.js",revision:null},{url:"_astro/preload-helper.cf010ec4.js",revision:null},{url:"_astro/Prices.8572765c.js",revision:null},{url:"_astro/ProductShelf.4a105932.js",revision:null},{url:"_astro/session-utm.744b0db3.js",revision:null},{url:"_astro/ShopHeader.2400b065.js",revision:null},{url:"_astro/workbox-window.prod.es5.a7b12eab.js",revision:null},{url:"manifest.webmanifest",revision:"138b9c9f495fe815bcec626365e9372e"}],{ignoreURLParametersMatching:[/.*/]}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("/404"))),e.registerRoute(/^\/$/,new e.NetworkFirst,"GET"),e.registerRoute(/\/((?!(?:admin|assets|img)(\/|$))[^.]+)(\.(?!js|css|xml|txt|png|jpg|jpeg|webp|avif|svg|gif)[^.]+)*$/,new e.NetworkFirst({cacheName:"pages",plugins:[new e.ExpirationPlugin({maxEntries:50,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^\/assets\//,new e.StaleWhileRevalidate({cacheName:"assets",plugins:[]}),"GET"),e.registerRoute(/^\/_image$/,new e.StaleWhileRevalidate({cacheName:"optim-images",plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:2592e3,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^\/img\/uploads\/.*\.(?:png|jpg|jpeg|webp|avif|svg|gif)$/,new e.StaleWhileRevalidate({cacheName:"cms-images",plugins:[new e.ExpirationPlugin({maxEntries:20,maxAgeSeconds:2592e3,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^https:\/\/ecomplus\.io/,new e.NetworkFirst({cacheName:"store-api",plugins:[new e.ExpirationPlugin({maxEntries:50,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^https:\/\/(((\w+\.)?ecoms\d)|(ecom[\w-]+(\.\w+)*\.digitaloceanspaces))\.com.*\/imgs\/normal\//,new e.CacheFirst({cacheName:"product-thumbnails",plugins:[new e.ExpirationPlugin({maxEntries:100,maxAgeSeconds:2592e3,purgeOnQuotaError:!0})]}),"GET"),e.registerRoute(/^https:\/\/(((\w+\.)?ecoms\d)|(ecom[\w-]+(\.\w+)*\.digitaloceanspaces))\.com.*\/imgs\/big\//,new e.CacheFirst({cacheName:"product-pictures",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:604800,purgeOnQuotaError:!0})]}),"GET")}));
@@ -14,7 +14,7 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.88866aae.mjs';
17
+ import './pages/_...slug_.astro.501582b9.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -29,6 +29,6 @@ import '@cloudcommerce/config';
29
29
  /* empty css */import '@vueuse/core';
30
30
  import '@headlessui/vue';
31
31
 
32
- const page = () => import('./pages/_...slug_.astro.88866aae.mjs').then(n => n.f);
32
+ const page = () => import('./pages/_...slug_.astro.501582b9.mjs').then(n => n.f);
33
33
 
34
34
  export { page };
@@ -14,7 +14,7 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.88866aae.mjs';
17
+ import './pages/_...slug_.astro.501582b9.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -14,7 +14,7 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.88866aae.mjs';
17
+ import './pages/_...slug_.astro.501582b9.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -29,6 +29,6 @@ import '@cloudcommerce/config';
29
29
  /* empty css */import '@vueuse/core';
30
30
  import '@headlessui/vue';
31
31
 
32
- const page = () => import('./pages/endpoint.js.a11da4ad.mjs').then(n => n.e);
32
+ const page = () => import('./pages/endpoint.js.4c130895.mjs').then(n => n.e);
33
33
 
34
34
  export { page };
@@ -14,7 +14,7 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.88866aae.mjs';
17
+ import './pages/_...slug_.astro.501582b9.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -29,6 +29,6 @@ import '@cloudcommerce/config';
29
29
  /* empty css */import '@vueuse/core';
30
30
  import '@headlessui/vue';
31
31
 
32
- const page = () => import('./pages/fallback.astro.c1fd06ab.mjs');
32
+ const page = () => import('./pages/fallback.astro.8d1c6076.mjs');
33
33
 
34
34
  export { page };
@@ -14,7 +14,7 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.88866aae.mjs';
17
+ import './pages/_...slug_.astro.501582b9.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -29,6 +29,6 @@ import '@cloudcommerce/config';
29
29
  /* empty css */import '@vueuse/core';
30
30
  import '@headlessui/vue';
31
31
 
32
- const page = () => import('./pages/index.astro.c45cc893.mjs').then(n => n.a);
32
+ const page = () => import('./pages/index.astro.f1104ab2.mjs').then(n => n.a);
33
33
 
34
34
  export { page };
@@ -14,7 +14,7 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.88866aae.mjs';
17
+ import './pages/_...slug_.astro.501582b9.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -29,6 +29,6 @@ import '@cloudcommerce/config';
29
29
  /* empty css */import '@vueuse/core';
30
30
  import '@headlessui/vue';
31
31
 
32
- const page = () => import('./pages/index.astro.c45cc893.mjs').then(n => n.i);
32
+ const page = () => import('./pages/index.astro.f1104ab2.mjs').then(n => n.i);
33
33
 
34
34
  export { page };
@@ -601,7 +601,7 @@ async function getImage(transform) {
601
601
  }
602
602
  let loader = (_a = globalThis.astroImage) == null ? void 0 : _a.loader;
603
603
  if (!loader) {
604
- const { default: mod } = await import('./endpoint.js.a11da4ad.mjs').then(n => n.s).catch(() => {
604
+ const { default: mod } = await import('./endpoint.js.4c130895.mjs').then(n => n.s).catch(() => {
605
605
  throw new Error(
606
606
  "[@astrojs/image] Builtin image loader not found. (Did you remember to add the integration to your Astro config?)"
607
607
  );
@@ -1678,7 +1678,8 @@ const useStickyHeader = (props) => {
1678
1678
  header,
1679
1679
  canSetStyles,
1680
1680
  canCreateHeightDiv,
1681
- isShownOnScrollDown
1681
+ isShownOnScrollDown,
1682
+ isShownOnMobile
1682
1683
  } = {
1683
1684
  canSetStyles: true,
1684
1685
  canCreateHeightDiv: true,
@@ -1692,8 +1693,8 @@ const useStickyHeader = (props) => {
1692
1693
  watchDebounced(_y, (nextY) => {
1693
1694
  y.value = nextY;
1694
1695
  }, {
1695
- debounce: isMobile ? 150 : 50,
1696
- maxWait: 600
1696
+ debounce: isMobile ? 100 : 50,
1697
+ maxWait: isMobile ? 300 : 150
1697
1698
  });
1698
1699
  const isSticky = computed(() => ready.value && y.value > staticY.value * 1.2);
1699
1700
  const transition = ref("none");
@@ -1,6 +1,6 @@
1
1
  import mime from 'mime';
2
2
  import sharp$1 from 'sharp';
3
- import { B as BaseSSRService, i as isOutputFormatSupportsAlpha } from './_...slug_.astro.88866aae.mjs';
3
+ import { B as BaseSSRService, i as isOutputFormatSupportsAlpha } from './_...slug_.astro.501582b9.mjs';
4
4
 
5
5
  class SharpService extends BaseSSRService {
6
6
  async transform(inputBuffer, transform) {
@@ -1,5 +1,5 @@
1
1
  import { c as createAstro, a as createComponent, r as renderTemplate, m as maybeRenderHead, d as addAttribute, b as renderComponent } from '../astro.6adaff02.mjs';
2
- import { l as loadRouteContext, $ as $$BaseHead, a as $$PageHeader, b as $$Base } from './_...slug_.astro.88866aae.mjs';
2
+ import { l as loadRouteContext, $ as $$BaseHead, a as $$PageHeader, b as $$Base } from './_...slug_.astro.501582b9.mjs';
3
3
  import 'path-to-regexp';
4
4
  import 'cookie';
5
5
  import '@astrojs/internal-helpers/path';
@@ -1,5 +1,5 @@
1
1
  import { c as createAstro, a as createComponent, r as renderTemplate, b as renderComponent, m as maybeRenderHead, d as addAttribute, u as unescapeHTML, F as Fragment$1 } from '../astro.6adaff02.mjs';
2
- import { c as $$Picture, p as parseShippingPhrase, _ as _export_sfc, C as Carousel, d as CarouselControl, e as addProductToCart, P as Prices, l as loadRouteContext, $ as $$BaseHead, a as $$PageHeader, b as $$Base } from './_...slug_.astro.88866aae.mjs';
2
+ import { c as $$Picture, p as parseShippingPhrase, _ as _export_sfc, C as Carousel, d as CarouselControl, e as addProductToCart, P as Prices, l as loadRouteContext, $ as $$BaseHead, a as $$PageHeader, b as $$Base } from './_...slug_.astro.501582b9.mjs';
3
3
  import { ref, shallowReactive, computed, useSSRContext, defineComponent, mergeProps, createVNode, resolveDynamicComponent, withCtx, renderSlot, createTextVNode, toDisplayString, withDirectives, vShow, openBlock, createBlock, Fragment, renderList, resolveComponent, createCommentVNode, withModifiers, withAsyncContext } from 'vue';
4
4
  import api from '@cloudcommerce/api';
5
5
  import { inStock, price, name, img, onPromotion } from '@ecomplus/utils';
@@ -24,7 +24,7 @@ import 'html-escaper';
24
24
  import 'vue';
25
25
  import 'vue/server-renderer';
26
26
  import '@ecomplus/utils';
27
- import './chunks/pages/_...slug_.astro.88866aae.mjs';
27
+ import './chunks/pages/_...slug_.astro.501582b9.mjs';
28
28
  import 'node:fs/promises';
29
29
  import 'http-cache-semantics';
30
30
  import 'node:os';
@@ -2833,13 +2833,13 @@ const adapter = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
2833
2833
  start
2834
2834
  }, Symbol.toStringTag, { value: 'Module' }));
2835
2835
 
2836
- const _page0 = () => import('./chunks/endpoint@_@js.a92a4584.mjs');
2837
- const _page1 = () => import('./chunks/index@_@astro.db07fb09.mjs');
2838
- const _page2 = () => import('./chunks/fallback@_@astro.4e98328e.mjs');
2839
- const _page3 = () => import('./chunks/index@_@astro.2dda826c.mjs');
2840
- const _page4 = () => import('./chunks/account@_@astro.38a725e7.mjs');
2841
- const _page5 = () => import('./chunks/_...d3f15170.mjs');const pageMap = new Map([["../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint.js", _page0],["src/pages/index.astro", _page1],["src/pages/fallback.astro", _page2],["src/pages/app/index.astro", _page3],["src/pages/app/account.astro", _page4],["src/pages/[...slug].astro", _page5]]);
2842
- const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"endpoint","route":"/_image","pattern":"^\\/_image$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/","type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/fallback","type":"page","pattern":"^\\/fallback\\/?$","segments":[[{"content":"fallback","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/fallback.astro","pathname":"/fallback","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app","type":"page","pattern":"^\\/app\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/index.astro","pathname":"/app","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app/account","type":"page","pattern":"^\\/app\\/account\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}],[{"content":"account","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/account.astro","pathname":"/app/account","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/[...slug]","type":"page","pattern":"^(?:\\/(.*?))?\\/?$","segments":[[{"content":"...slug","dynamic":true,"spread":true}]],"params":["...slug"],"component":"src/pages/[...slug].astro","prerender":false,"_meta":{"trailingSlash":"ignore"}}}],"site":"https://ecom2-demo.web.app","base":"/","compressHTML":false,"markdown":{"drafts":false,"syntaxHighlight":"shiki","shikiConfig":{"langs":[],"theme":"github-dark","wrap":false},"remarkPlugins":[],"rehypePlugins":[],"remarkRehype":{},"gfm":true,"smartypants":true},"componentMetadata":[["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/fallback.astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var i=t=>{let e=async()=>{await(await t())()};\"requestIdleCallback\"in window?window.requestIdleCallback(e):setTimeout(e,200)};(self.Astro||(self.Astro={})).idle=i;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var s=(i,t)=>{let a=async()=>{await(await i())()};if(t.value){let e=matchMedia(t.value);e.matches?a():e.addEventListener(\"change\",a,{once:!0})}};(self.Astro||(self.Astro={})).media=s;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var r=(i,c,n)=>{let s=async()=>{await(await i())()},t=new IntersectionObserver(e=>{for(let o of e)if(o.isIntersecting){t.disconnect(),s();break}});for(let e of n.children)t.observe(e)};(self.Astro||(self.Astro={})).visible=r;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000@astrojs-ssr-virtual-entry":"_@astrojs-ssr-virtual-entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000empty-middleware":"_empty-middleware.mjs","/src/pages/app/account.astro":"chunks/pages/account.astro.53400a42.mjs","/src/pages/fallback.astro":"chunks/pages/fallback.astro.c1fd06ab.mjs","\u0000@astro-page:../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint@_@js":"chunks/endpoint@_@js.a92a4584.mjs","\u0000@astro-page:src/pages/index@_@astro":"chunks/index@_@astro.db07fb09.mjs","\u0000@astro-page:src/pages/fallback@_@astro":"chunks/fallback@_@astro.4e98328e.mjs","\u0000@astro-page:src/pages/app/index@_@astro":"chunks/index@_@astro.2dda826c.mjs","\u0000@astro-page:src/pages/app/account@_@astro":"chunks/account@_@astro.38a725e7.mjs","\u0000@astro-page:src/pages/[...slug]@_@astro":"chunks/_...d3f15170.mjs","~/components/PitchBar.vue":"_astro/PitchBar.c2a2ad79.js","@astrojs/vue/client.js":"_astro/client.9dbf6b61.js","~/components/HeroSlider.vue":"_astro/HeroSlider.8d2ea532.js","/astro/hoisted.js?q=0":"_astro/hoisted.572313d6.js","~/components/ProductShelf.vue":"_astro/ProductShelf.4a105932.js","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"_astro/workbox-window.prod.es5.a7b12eab.js","~/components/ShopHeader.vue":"_astro/ShopHeader.7ecb7597.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/scripts/firebase-app.ts":"_astro/firebase-app.1df8af9a.js","astro:scripts/before-hydration.js":""},"assets":["/_astro/_...slug_.07c1fa58.css","/manifest.webmanifest","/robots.txt","/sw.js","/workbox-5e0bf4e4.js","/_astro/Carousel.63d511ab.js","/_astro/HeroSlider.8d2ea532.js","/_astro/PitchBar.c2a2ad79.js","/_astro/Prices.8572765c.js","/_astro/ProductShelf.4a105932.js","/_astro/ShopHeader.7ecb7597.js","/_astro/_plugin-vue_export-helper.48e557ba.js","/_astro/client.9dbf6b61.js","/_astro/firebase-app.1df8af9a.js","/_astro/hoisted.572313d6.js","/_astro/img.7def76a1.js","/_astro/index.c0c35ead.js","/_astro/preload-helper.cf010ec4.js","/_astro/session-utm.744b0db3.js","/_astro/workbox-window.prod.es5.a7b12eab.js","/img/icon.png","/img/large-icon.png","/img/uploads/banner2.webp","/img/uploads/ecom-icon.png","/img/uploads/headphone.webp","/img/uploads/logo.png","/img/uploads/og-image.png","/img/uploads/passion.webp","/img/uploads/rect8589.png","/img/uploads/rect859.png","/img/uploads/rect89.webp"]}), {
2836
+ const _page0 = () => import('./chunks/endpoint@_@js.b79eed3b.mjs');
2837
+ const _page1 = () => import('./chunks/index@_@astro.66b84ac2.mjs');
2838
+ const _page2 = () => import('./chunks/fallback@_@astro.9f73db0f.mjs');
2839
+ const _page3 = () => import('./chunks/index@_@astro.0221a7bd.mjs');
2840
+ const _page4 = () => import('./chunks/account@_@astro.3e90f29a.mjs');
2841
+ const _page5 = () => import('./chunks/_...c5a36021.mjs');const pageMap = new Map([["../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint.js", _page0],["src/pages/index.astro", _page1],["src/pages/fallback.astro", _page2],["src/pages/app/index.astro", _page3],["src/pages/app/account.astro", _page4],["src/pages/[...slug].astro", _page5]]);
2842
+ const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"endpoint","route":"/_image","pattern":"^\\/_image$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/","type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/fallback","type":"page","pattern":"^\\/fallback\\/?$","segments":[[{"content":"fallback","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/fallback.astro","pathname":"/fallback","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app","type":"page","pattern":"^\\/app\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/index.astro","pathname":"/app","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app/account","type":"page","pattern":"^\\/app\\/account\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}],[{"content":"account","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/account.astro","pathname":"/app/account","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/[...slug]","type":"page","pattern":"^(?:\\/(.*?))?\\/?$","segments":[[{"content":"...slug","dynamic":true,"spread":true}]],"params":["...slug"],"component":"src/pages/[...slug].astro","prerender":false,"_meta":{"trailingSlash":"ignore"}}}],"site":"https://ecom2-demo.web.app","base":"/","compressHTML":false,"markdown":{"drafts":false,"syntaxHighlight":"shiki","shikiConfig":{"langs":[],"theme":"github-dark","wrap":false},"remarkPlugins":[],"rehypePlugins":[],"remarkRehype":{},"gfm":true,"smartypants":true},"componentMetadata":[["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/fallback.astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var i=t=>{let e=async()=>{await(await t())()};\"requestIdleCallback\"in window?window.requestIdleCallback(e):setTimeout(e,200)};(self.Astro||(self.Astro={})).idle=i;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var s=(i,t)=>{let a=async()=>{await(await i())()};if(t.value){let e=matchMedia(t.value);e.matches?a():e.addEventListener(\"change\",a,{once:!0})}};(self.Astro||(self.Astro={})).media=s;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var r=(i,c,n)=>{let s=async()=>{await(await i())()},t=new IntersectionObserver(e=>{for(let o of e)if(o.isIntersecting){t.disconnect(),s();break}});for(let e of n.children)t.observe(e)};(self.Astro||(self.Astro={})).visible=r;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000@astrojs-ssr-virtual-entry":"_@astrojs-ssr-virtual-entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000empty-middleware":"_empty-middleware.mjs","/src/pages/app/account.astro":"chunks/pages/account.astro.53400a42.mjs","/src/pages/fallback.astro":"chunks/pages/fallback.astro.8d1c6076.mjs","\u0000@astro-page:../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint@_@js":"chunks/endpoint@_@js.b79eed3b.mjs","\u0000@astro-page:src/pages/index@_@astro":"chunks/index@_@astro.66b84ac2.mjs","\u0000@astro-page:src/pages/fallback@_@astro":"chunks/fallback@_@astro.9f73db0f.mjs","\u0000@astro-page:src/pages/app/index@_@astro":"chunks/index@_@astro.0221a7bd.mjs","\u0000@astro-page:src/pages/app/account@_@astro":"chunks/account@_@astro.3e90f29a.mjs","\u0000@astro-page:src/pages/[...slug]@_@astro":"chunks/_...c5a36021.mjs","~/components/PitchBar.vue":"_astro/PitchBar.c2a2ad79.js","~/components/ProductShelf.vue":"_astro/ProductShelf.4a105932.js","@astrojs/vue/client.js":"_astro/client.9dbf6b61.js","~/components/HeroSlider.vue":"_astro/HeroSlider.8d2ea532.js","/astro/hoisted.js?q=0":"_astro/hoisted.572313d6.js","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"_astro/workbox-window.prod.es5.a7b12eab.js","~/components/ShopHeader.vue":"_astro/ShopHeader.2400b065.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/scripts/firebase-app.ts":"_astro/firebase-app.1df8af9a.js","astro:scripts/before-hydration.js":""},"assets":["/_astro/_...slug_.07c1fa58.css","/manifest.webmanifest","/robots.txt","/sw.js","/workbox-5e0bf4e4.js","/_astro/Carousel.63d511ab.js","/_astro/HeroSlider.8d2ea532.js","/_astro/PitchBar.c2a2ad79.js","/_astro/Prices.8572765c.js","/_astro/ProductShelf.4a105932.js","/_astro/ShopHeader.2400b065.js","/_astro/_plugin-vue_export-helper.48e557ba.js","/_astro/client.9dbf6b61.js","/_astro/firebase-app.1df8af9a.js","/_astro/hoisted.572313d6.js","/_astro/img.7def76a1.js","/_astro/index.c0c35ead.js","/_astro/preload-helper.cf010ec4.js","/_astro/session-utm.744b0db3.js","/_astro/workbox-window.prod.es5.a7b12eab.js","/img/icon.png","/img/large-icon.png","/img/uploads/banner2.webp","/img/uploads/ecom-icon.png","/img/uploads/headphone.webp","/img/uploads/logo.png","/img/uploads/og-image.png","/img/uploads/passion.webp","/img/uploads/rect8589.png","/img/uploads/rect859.png","/img/uploads/rect89.webp"]}), {
2843
2843
  pageMap,
2844
2844
  renderers,
2845
2845
  });
@@ -2,7 +2,7 @@ import { h as server_default } from './chunks/astro.6adaff02.mjs';
2
2
  import { useSSRContext, defineComponent, computed, mergeProps, h, createSSRApp } from 'vue';
3
3
  import { ssrRenderSlotInner, ssrRenderAttrs, ssrRenderSlot, renderToString } from 'vue/server-renderer';
4
4
  import { img, imgSizes, i18n, formatMoney } from '@ecomplus/utils';
5
- import { _ as _export_sfc } from './chunks/pages/_...slug_.astro.88866aae.mjs';
5
+ import { _ as _export_sfc } from './chunks/pages/_...slug_.astro.501582b9.mjs';
6
6
  import 'path-to-regexp';
7
7
  import 'cookie';
8
8
  import '@astrojs/internal-helpers/path';
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/storefront",
3
3
  "type": "module",
4
- "version": "0.23.1",
4
+ "version": "0.23.2",
5
5
  "description": "E-Com Plus Cloud Commerce storefront with Astro",
6
6
  "bin": {
7
7
  "storefront": "./scripts/build-prod.sh"
@@ -19,6 +19,7 @@ export interface Props {
19
19
  canSetStyles?: boolean;
20
20
  canCreateHeightDiv?: boolean;
21
21
  isShownOnScrollDown?: boolean;
22
+ isShownOnMobile?: boolean;
22
23
  }
23
24
 
24
25
  const useStickyHeader = (props: Props) => {
@@ -27,6 +28,7 @@ const useStickyHeader = (props: Props) => {
27
28
  canSetStyles,
28
29
  canCreateHeightDiv,
29
30
  isShownOnScrollDown,
31
+ isShownOnMobile,
30
32
  } = {
31
33
  canSetStyles: true,
32
34
  canCreateHeightDiv: true,
@@ -36,13 +38,15 @@ const useStickyHeader = (props: Props) => {
36
38
  const staticHeight = ref(0);
37
39
  const staticY = ref(0);
38
40
  let heightDiv: HTMLElement | undefined;
39
- const { y: _y } = !import.meta.env.SSR ? useScroll(document) : { y: ref(0) };
41
+ const { y: _y } = !import.meta.env.SSR && (isShownOnMobile || !isMobile)
42
+ ? useScroll(document)
43
+ : { y: ref(0) };
40
44
  const y = ref(0);
41
45
  watchDebounced(_y, (nextY) => {
42
46
  y.value = nextY;
43
47
  }, {
44
- debounce: isMobile ? 150 : 50,
45
- maxWait: 600,
48
+ debounce: isMobile ? 100 : 50,
49
+ maxWait: isMobile ? 300 : 150,
46
50
  });
47
51
  const isSticky = computed(() => ready.value && y.value > staticY.value * 1.2);
48
52
  const transition = ref('none');
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/types",
3
3
  "type": "module",
4
- "version": "0.23.1",
4
+ "version": "0.23.2",
5
5
  "description": "E-Com Plus Cloud Commerce reusable type definitions",
6
6
  "main": "index.ts",
7
7
  "repository": {