cloudcommerce 0.23.2 → 0.24.0

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 (166) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/ecomplus-stores/barra-doce/functions/many/package.json +3 -3
  3. package/ecomplus-stores/barra-doce/functions/ssr/content/layout.json +0 -6
  4. package/ecomplus-stores/barra-doce/functions/ssr/content/settings.json +17 -0
  5. package/ecomplus-stores/barra-doce/functions/ssr/package.json +6 -6
  6. package/ecomplus-stores/barra-doce/functions/ssr/public/robots.txt +2 -4
  7. package/ecomplus-stores/barra-doce/functions/ssr/src/components/AccountMenu.vue +1 -10
  8. package/ecomplus-stores/barra-doce/functions/ssr/src/components/Banner.vue +4 -6
  9. package/ecomplus-stores/barra-doce/functions/ssr/src/components/PitchBar.vue +2 -3
  10. package/ecomplus-stores/barra-doce/functions/ssr/src/components/ProductCard.vue +4 -5
  11. package/ecomplus-stores/barra-doce/functions/ssr/src/components/ProductShelf.vue +1 -4
  12. package/ecomplus-stores/barra-doce/functions/ssr/src/components/ShopHeader.vue +2 -7
  13. package/ecomplus-stores/barra-doce/functions/ssr/tailwind.config.cjs +1 -1
  14. package/ecomplus-stores/barra-doce/functions/with-apps/package.json +3 -3
  15. package/ecomplus-stores/barra-doce/package.json +2 -2
  16. package/ecomplus-stores/iluminim/functions/many/package.json +3 -3
  17. package/ecomplus-stores/iluminim/functions/ssr/content/layout.json +0 -6
  18. package/ecomplus-stores/iluminim/functions/ssr/content/settings.json +16 -0
  19. package/ecomplus-stores/iluminim/functions/ssr/package.json +6 -6
  20. package/ecomplus-stores/iluminim/functions/ssr/public/robots.txt +2 -4
  21. package/ecomplus-stores/iluminim/functions/ssr/src/components/AccountMenu.vue +1 -10
  22. package/ecomplus-stores/iluminim/functions/ssr/src/components/Banner.vue +4 -6
  23. package/ecomplus-stores/iluminim/functions/ssr/src/components/PitchBar.vue +2 -3
  24. package/ecomplus-stores/iluminim/functions/ssr/src/components/ProductCard.vue +4 -5
  25. package/ecomplus-stores/iluminim/functions/ssr/src/components/ProductShelf.vue +1 -4
  26. package/ecomplus-stores/iluminim/functions/ssr/src/components/ShopHeader.vue +2 -7
  27. package/ecomplus-stores/iluminim/functions/ssr/tailwind.config.cjs +1 -1
  28. package/ecomplus-stores/iluminim/functions/with-apps/package.json +3 -3
  29. package/ecomplus-stores/iluminim/package.json +2 -2
  30. package/package.json +8 -8
  31. package/packages/api/package.json +1 -1
  32. package/packages/api/tests/index.test.ts +0 -2
  33. package/packages/apps/affilate-program/package.json +1 -1
  34. package/packages/apps/correios/package.json +1 -1
  35. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.js +1 -1
  36. package/packages/apps/custom-payment/lib/custom-payment-list-payments.js +1 -1
  37. package/packages/apps/custom-payment/package.json +1 -1
  38. package/packages/apps/custom-shipping/package.json +1 -1
  39. package/packages/apps/datafrete/package.json +1 -1
  40. package/packages/apps/discounts/package.json +1 -1
  41. package/packages/apps/emails/package.json +1 -1
  42. package/packages/apps/fb-conversions/package.json +2 -2
  43. package/packages/apps/flash-courier/package.json +1 -1
  44. package/packages/apps/frenet/package.json +1 -1
  45. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js +1 -1
  46. package/packages/apps/galaxpay/lib/galaxpay-list-payments.js +1 -1
  47. package/packages/apps/galaxpay/package.json +1 -1
  48. package/packages/apps/google-analytics/package.json +1 -1
  49. package/packages/apps/jadlog/package.json +1 -1
  50. package/packages/apps/loyalty-points/lib/loyalty-create-transaction.js +1 -1
  51. package/packages/apps/loyalty-points/lib/loyalty-list-payments.js +1 -1
  52. package/packages/apps/loyalty-points/package.json +1 -1
  53. package/packages/apps/melhor-envio/package.json +1 -1
  54. package/packages/apps/mercadopago/lib/mp-create-transaction.js +1 -1
  55. package/packages/apps/mercadopago/lib/mp-list-payments.js +1 -1
  56. package/packages/apps/mercadopago/package.json +1 -1
  57. package/packages/apps/pagarme/lib/pagarme-create-transaction.js +1 -1
  58. package/packages/apps/pagarme/lib/pagarme-list-payments.js +1 -1
  59. package/packages/apps/pagarme/package.json +1 -1
  60. package/packages/apps/paghiper/lib/paghiper-create-transaction.js +1 -1
  61. package/packages/apps/paghiper/lib/paghiper-list-payments.js +1 -1
  62. package/packages/apps/paghiper/package.json +1 -1
  63. package/packages/apps/pix/lib/pix-create-transaction.js +1 -1
  64. package/packages/apps/pix/lib/pix-list-payments.js +1 -1
  65. package/packages/apps/pix/package.json +1 -1
  66. package/packages/apps/tiny-erp/package.json +1 -1
  67. package/packages/apps/webhooks/package.json +1 -1
  68. package/packages/cli/package.json +1 -1
  69. package/packages/config/package.json +1 -1
  70. package/packages/emails/package.json +1 -1
  71. package/packages/emails/tests/sendgrid.test.ts +0 -1
  72. package/packages/emails/tests/smtp.test.ts +0 -1
  73. package/packages/eslint/base.eslintrc.cjs +23 -0
  74. package/packages/eslint/package.json +5 -5
  75. package/packages/events/package.json +1 -1
  76. package/packages/feeds/package.json +1 -1
  77. package/packages/firebase/package.json +1 -1
  78. package/packages/i18n/package.json +1 -1
  79. package/packages/modules/package.json +1 -1
  80. package/packages/passport/package.json +1 -1
  81. package/packages/ssr/cloudflare/swr-worker.js +94 -26
  82. package/packages/ssr/lib/firebase/serve-storefront.js +22 -28
  83. package/packages/ssr/lib/firebase/serve-storefront.js.map +1 -1
  84. package/packages/ssr/package.json +4 -4
  85. package/packages/ssr/src/cloudflare/swr-worker.ts +99 -26
  86. package/packages/ssr/src/firebase/serve-storefront.ts +24 -28
  87. package/packages/storefront/config/storefront.tailwind.cjs +41 -27
  88. package/packages/storefront/config/storefront.unocss.cjs +9 -23
  89. package/packages/storefront/dist/client/_astro/{_...slug_.07c1fa58.css → _...slug_.a786e016.css} +1 -1
  90. package/packages/storefront/dist/client/_astro/ecom-icon_CDmhA.png +0 -0
  91. package/packages/storefront/dist/client/_astro/ecom-icon_Z27EX9f.png +0 -0
  92. package/packages/storefront/dist/client/_astro/ecom-icon_Zo1CLq.png +0 -0
  93. package/packages/storefront/dist/client/_astro/headphone_22qtrt.avif +0 -0
  94. package/packages/storefront/dist/client/_astro/headphone_247ud8.avif +0 -0
  95. package/packages/storefront/dist/client/_astro/headphone_Z1hoMcQ.webp +0 -0
  96. package/packages/storefront/dist/client/_astro/headphone_Z1j5MXv.webp +0 -0
  97. package/packages/storefront/dist/client/_astro/logo_144owC.webp +0 -0
  98. package/packages/storefront/dist/client/_astro/logo_1ug3XF.png +0 -0
  99. package/packages/storefront/dist/client/_astro/logo_Z1EIN1I.avif +0 -0
  100. package/packages/storefront/dist/client/_astro/passion_29BEzB.webp +0 -0
  101. package/packages/storefront/dist/client/_astro/passion_2sykkb.avif +0 -0
  102. package/packages/storefront/dist/client/_astro/passion_HYj6i.webp +0 -0
  103. package/packages/storefront/dist/client/_astro/passion_Z18ANwS.avif +0 -0
  104. package/packages/storefront/dist/client/_astro/passion_ZK2FPz.webp +0 -0
  105. package/packages/storefront/dist/client/_astro/passion_pVNbE.avif +0 -0
  106. package/packages/storefront/dist/client/_astro/rect8589_1EUYOa.webp +0 -0
  107. package/packages/storefront/dist/client/_astro/rect8589_1Sqf3x.png +0 -0
  108. package/packages/storefront/dist/client/_astro/rect8589_1VeSii.avif +0 -0
  109. package/packages/storefront/dist/client/_astro/rect8589_2wFECM.png +0 -0
  110. package/packages/storefront/dist/client/_astro/rect8589_7mg8W.png +0 -0
  111. package/packages/storefront/dist/client/_astro/rect8589_Kv492.webp +0 -0
  112. package/packages/storefront/dist/client/_astro/rect8589_Z1DNkkN.webp +0 -0
  113. package/packages/storefront/dist/client/_astro/rect8589_Z1IS4wy.avif +0 -0
  114. package/packages/storefront/dist/client/_astro/rect8589_Zt4vbx.avif +0 -0
  115. package/packages/storefront/dist/client/_astro/rect859_1Bqr36.webp +0 -0
  116. package/packages/storefront/dist/client/_astro/rect859_1pj5UP.png +0 -0
  117. package/packages/storefront/dist/client/_astro/rect859_2dVuzq.avif +0 -0
  118. package/packages/storefront/dist/client/_astro/rect859_HaXay.png +0 -0
  119. package/packages/storefront/dist/client/_astro/rect859_Z100iy0.png +0 -0
  120. package/packages/storefront/dist/client/_astro/rect859_Z2i1RBz.avif +0 -0
  121. package/packages/storefront/dist/client/_astro/rect859_ZMRWqJ.webp +0 -0
  122. package/packages/storefront/dist/client/_astro/rect859_mPQHw.avif +0 -0
  123. package/packages/storefront/dist/client/_astro/rect859_xyq7d.webp +0 -0
  124. package/packages/storefront/dist/client/_astro/rect89_1DkX0O.webp +0 -0
  125. package/packages/storefront/dist/client/_astro/rect89_2uIqYp.avif +0 -0
  126. package/packages/storefront/dist/client/_astro/rect89_Z1rGPGT.webp +0 -0
  127. package/packages/storefront/dist/client/_astro/rect89_ZAjmIj.avif +0 -0
  128. package/packages/storefront/dist/client/robots.txt +2 -4
  129. package/packages/storefront/dist/client/sw.js +1 -1
  130. package/packages/storefront/dist/client/~fallback.html +98 -0
  131. package/packages/storefront/dist/client/~index.html +134 -0
  132. package/packages/storefront/dist/server/chunks/{_...c5a36021.mjs → _...5323ec5a.mjs} +4 -11
  133. package/packages/storefront/dist/server/chunks/{account@_@astro.3e90f29a.mjs → account@_@astro.a02ffb0b.mjs} +4 -11
  134. package/packages/storefront/dist/server/chunks/{astro.6adaff02.mjs → astro.a7611b51.mjs} +11 -18
  135. package/packages/storefront/dist/server/chunks/{index@_@astro.66b84ac2.mjs → index@_@astro.42c693b9.mjs} +4 -11
  136. package/packages/storefront/dist/server/chunks/{index@_@astro.0221a7bd.mjs → index@_@astro.d898498a.mjs} +4 -11
  137. package/packages/storefront/dist/server/chunks/pages/{_...slug_.astro.501582b9.mjs → _...slug_.astro.0f33557e.mjs} +103 -309
  138. package/packages/storefront/dist/server/chunks/pages/{account.astro.53400a42.mjs → account.astro.9325adb2.mjs} +1 -1
  139. package/packages/storefront/dist/server/chunks/pages/{index.astro.f1104ab2.mjs → index.astro.0f31fa39.mjs} +8 -27
  140. package/packages/storefront/dist/server/chunks/pages/{fallback.astro.8d1c6076.mjs → ~fallback.astro.bd93f01e.mjs} +15 -32
  141. package/packages/storefront/dist/server/chunks/{fallback@_@astro.9f73db0f.mjs → ~fallback@_@astro.d17419ae.mjs} +4 -11
  142. package/packages/storefront/dist/server/entry.mjs +47 -16
  143. package/packages/storefront/dist/server/images.dist.csv +38 -0
  144. package/packages/storefront/dist/server/images.src.csv +11 -0
  145. package/packages/storefront/dist/server/renderers.mjs +3 -10
  146. package/packages/storefront/dist/server/stylesheets.csv +1 -0
  147. package/packages/storefront/package.json +7 -6
  148. package/packages/storefront/scripts/build-prod.sh +2 -0
  149. package/packages/storefront/src/env.d.ts +0 -2
  150. package/packages/storefront/src/helpers/server-data.ts +9 -2
  151. package/packages/storefront/src/lib/components/BannerPictures.astro +2 -2
  152. package/packages/storefront/src/lib/components/Drawer.vue +1 -1
  153. package/packages/storefront/src/lib/components/PaymentMethodFlag.vue +36 -0
  154. package/packages/storefront/src/lib/components/SocialNetworkIcon.vue +1 -0
  155. package/packages/storefront/src/lib/components/globals/ALink.vue +5 -3
  156. package/packages/storefront/src/lib/composables/use-sticky-header.ts +1 -1
  157. package/packages/storefront/src/lib/layouts/BaseHead.astro +1 -1
  158. package/packages/storefront/src/lib/layouts/use-page-header.ts +2 -9
  159. package/packages/storefront/src/lib/ssr-context.ts +31 -25
  160. package/packages/storefront/src/vue-globals.d.ts +0 -1
  161. package/packages/types/index.ts +16 -0
  162. package/packages/types/package.json +1 -1
  163. package/packages/storefront/dist/server/chunks/endpoint@_@js.b79eed3b.mjs +0 -34
  164. package/packages/storefront/dist/server/chunks/pages/endpoint.js.4c130895.mjs +0 -119
  165. /package/ecomplus-stores/barra-doce/functions/ssr/src/pages/{fallback.astro → ~fallback.astro} +0 -0
  166. /package/ecomplus-stores/iluminim/functions/ssr/src/pages/{fallback.astro → ~fallback.astro} +0 -0
@@ -0,0 +1,98 @@
1
+ <!DOCTYPE html>
2
+ <html lang="pt-br">
3
+ <head>
4
+
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width">
7
+ <meta name="theme-color" content="#37003c">
8
+ <link rel="icon" type="image/png" href="/_image?f=png&#38;w=32&#38;h=32&#38;href=%2Fimg%2Fuploads%2Fecom-icon.png&#38;V=_" sizes="32x32">
9
+ <link rel="icon" type="image/png" href="/_image?f=png&#38;w=192&#38;h=192&#38;href=%2Fimg%2Fuploads%2Fecom-icon.png&#38;V=_" sizes="192x192">
10
+ <title>E-Com Plus demoStore</title>
11
+ <meta name="description" content="My PWA Shop">
12
+ <meta name="author" content="E-Com Plus demoStore">
13
+ <meta name="generator" content="Astro v2.10.7">
14
+ <link rel="canonical" href="https://ecom2-demo.web.app/~fallback/">
15
+ <link rel="apple-touch-icon" href="/_image?f=png&#38;w=192&#38;h=192&#38;href=%2Fimg%2Fuploads%2Fecom-icon.png&#38;V=_">
16
+ <meta name="apple-mobile-web-app-capable" content="yes">
17
+ <meta name="apple-mobile-web-app-status-bar-style" content="default">
18
+ <meta property="og:site_name" content="E-Com Plus demoStore">
19
+ <meta property="og:url" content="https://ecom2-demo.web.app/~fallback/">
20
+ <meta property="og:title" content="E-Com Plus demoStore">
21
+ <meta property="og:description" content="My PWA Shop">
22
+ <meta property="og:type" content="website">
23
+ <meta property="og:locale" content="ptBR">
24
+
25
+
26
+ <meta name="twitter:card" content="summary">
27
+
28
+ <meta name="ecom-store-id" content="1011">
29
+
30
+ <link rel="manifest" href="/manifest.webmanifest">
31
+
32
+
33
+ <script>
34
+ window.ECOM_STORE_ID = 1011;
35
+ window.ECOM_LANG = 'pt_br';
36
+ window.ECOM_CURRENCY = 'BRL';
37
+ window.ECOM_CURRENCY_SYMBOL = 'R$';
38
+ window.ECOM_COUNTRY_CODE = 'R$';
39
+ window.$storefront = {"settings":{"domain":"ecom2-demo.web.app","name":"E-Com Plus demoStore","description":"My PWA Shop","logo":"/img/uploads/logo.png","icon":"/img/uploads/ecom-icon.png","primary_color":"#37003c","email":"","phone":"","address":"","corporate_name":"","doc_number":"","lang":"pt_br","currency":"BRL","currency_symbol":"R$","country_code":"BR","whatsapp":"(31) 9 8272-1558","instagram":"https://www.instagram.com/ecomclub/","facebook":"https://www.facebook.com/ecom.clubpage/","twitter":"","youtube":"https://www.youtube.com/channel/UCBlIxK5JAub0E1EX_qHdzmA","tiktok":"","pinterest":"","modules":{"list_payments":{"installments_option":{"max_number":null,"monthly_interest":null,"min_installment":null},"discount_option":{"label":null,"apply_at":null,"type":null,"value":null},"loyalty_points_program":{"id":null,"name":null,"ratio":null,"earn_percentage":null}},"calculate_shipping":{"free_shipping_from_value":150}}},"data":{}};</script>
40
+ <script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","name":"E-Com Plus demoStore","url":"https://ecom2-demo.web.app/","logo":"https://ecom2-demo.web.app/img/uploads/logo.png"}</script>
41
+
42
+
43
+
44
+
45
+ <script>
46
+ window.$firebaseConfig = {
47
+ apiKey: "AIzaSyCnvm7QrPKzSBrUi09Z3zTgjDST0t4Yikg",
48
+ authDomain: "ecom2-demo.firebaseapp.com",
49
+ projectId: "ecom2-demo",
50
+ storageBucket: "ecom2-demo.appspot.com",
51
+ messagingSenderId: "70369627313",
52
+ appId: "1:70369627313:web:06634033b9c6208fe7e690"
53
+ };
54
+ </script>
55
+ <link rel="stylesheet" href="/_astro/_...slug_.07c1fa58.css" /><script type="module" src="/_astro/hoisted.572313d6.js"></script></head>
56
+ <body>
57
+ <div id="teleported-overlap" class="relative z-[59]"></div>
58
+ <div id="teleported-top" class="relative z-[19]"></div>
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+ <style>astro-island,astro-slot,astro-static-slot{display:contents}</style><script>(()=>{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"));})();;(()=>{var d;{let p={0:t=>u(t),1:t=>l(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(l(t)),5:t=>new Set(l(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t)},h=t=>{let[e,n]=t;return e in p?p[e](n):void 0},l=t=>t.map(h),u=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([e,n])=>[e,h(n)]));customElements.get("astro-island")||customElements.define("astro-island",(d=class extends HTMLElement{constructor(){super(...arguments);this.hydrate=async()=>{var i;if(!this.hydrator||!this.isConnected)return;let e=(i=this.parentElement)==null?void 0:i.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let n=this.querySelectorAll("astro-slot"),o={},a=this.querySelectorAll("template[data-astro-template]");for(let r of a){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(o[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of n){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(o[r.getAttribute("name")||"default"]=r.innerHTML)}let c;try{c=this.hasAttribute("props")?u(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",y=this.getAttribute("component-export");throw y&&(s+=` (export ${y})`),console.error(`[hydrate] Error parsing props for component ${s}`,this.getAttribute("props"),r),r}await this.hydrator(this)(this.Component,c,o,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))}}connectedCallback(){!this.hasAttribute("await-children")||this.firstChild?this.childrenConnectedCallback():new MutationObserver((e,n)=>{n.disconnect(),setTimeout(()=>this.childrenConnectedCallback(),0)}).observe(this,{childList:!0})}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}start(){let e=JSON.parse(this.getAttribute("opts")),n=this.getAttribute("client");if(Astro[n]===void 0){window.addEventListener(`astro:${n}`,()=>this.start(),{once:!0});return}Astro[n](async()=>{let o=this.getAttribute("renderer-url"),[a,{default:c}]=await Promise.all([import(this.getAttribute("component-url")),o?import(o):()=>()=>{}]),i=this.getAttribute("component-export")||"default";if(!i.includes("."))this.Component=a[i];else{this.Component=a;for(let r of i.split("."))this.Component=this.Component[r]}return this.hydrator=c,this.hydrate},e,this)}attributeChangedCallback(){this.hydrate()}},d.observedAttributes=["props"],d))}})();</script><astro-island uid="qn081" component-url="/_astro/PitchBar.c2a2ad79.js" component-export="default" renderer-url="/_astro/client.9dbf6b61.js" props="{&quot;slides&quot;:[1,[[0,{&quot;href&quot;:[0,&quot;/promotion&quot;],&quot;html&quot;:[0,&quot;Aproveite nossos descontos de até 50%!&quot;]}],[0,{&quot;href&quot;:[0,&quot;&quot;],&quot;html&quot;:[0,&quot;&lt;b&gt;Frete grátis&lt;/b&gt; &lt;d-md&gt;para todo Brasil&lt;/d-md&gt; a partir de {free_shipping_from_value}&quot;]}]]]}" ssr="" client="idle" opts="{&quot;name&quot;:&quot;PitchBar&quot;,&quot;value&quot;:true}" await-children=""><div class="bg-base-100 relative z-20"><div class="container md:w-2/3 mx-auto px-3 py-1"><div class="relative" data-carousel><ul class="flex overflow-x-scroll overflow-y-hidden list-none m-0 p-0 snap-x snap-mandatory scroll-smooth [&amp;&gt;*]:snap-start [&amp;&gt;*]:outline-none" style="scrollbar-width:none;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;" data-carousel-wrapper><!--[--><!--[--><li class="shrink-0 basis-full h-full text-center"><a href="/promotion" class="inline-block px-8 hover:underline"><!--[--><span class="prose text-sm text-base-800">Aproveite nossos descontos de até 50%!</span><!--]--></a></li><li class="shrink-0 basis-full h-full text-center"><span href class="inline-block px-8"><span class="prose text-sm text-base-800"><b>Frete grátis</b> <d-md>para todo Brasil</d-md> a partir de R$ 150,00</span></span></li><!--]--><!--]--></ul><!--[--><div style="" class="text-xl leading-none text-base-400"><button type="button" aria-label="Anterior" class="group absolute top-0 z-1 left-0 pr-2 bg-base-100 hover:text-base-700" data-carousel-control="previous"><!--[--><i class="i-chevron-left group-active:-translate-x-1 m-0"></i><!--]--></button><button type="button" aria-label="Próximo" class="group absolute top-0 z-1 right-0 pl-2 bg-base-100 hover:text-base-700" data-carousel-control="next"><!--[--><i class="i-chevron-right group-active:translate-x-1 m-0"></i><!--]--></button></div><!--]--></div></div></div></astro-island>
67
+
68
+
69
+ <script>
70
+ window.$storefront.data['categories'] = [{"name":"Monitores","slug":"monitores","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007322374-rect836.png"}},{"name":"Monitores Gamer","parent":{"slug":"monitores"},"slug":"monitores-gamer","pictures":[]},{"name":"Monitores Convencionais","parent":{"slug":"monitores"},"slug":"monitores-convencionais"},{"name":"Monitores TV","parent":{"slug":"monitores"},"slug":"monitores-tv"},{"name":"Notebooks","slug":"notebooks","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007351112-comp.png"}},{"name":"Notebooks gamers","parent":{"slug":"notebooks"},"slug":"notebooks-gamers"},{"name":"MacBook","parent":{"slug":"ultrabook"},"slug":"macbook","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1566932713325-macbook.jfif","size":"233x216"},"pictures":[{}]},{"name":"Periféricos","slug":"perifericos","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007328003-keyb.png"},"pictures":[],"parent":{"slug":"fisicos"}},{"name":"Teclados","parent":{"slug":"perifericos"},"slug":"teclados"},{"name":"Mouses","parent":{"slug":"perifericos"},"slug":"mouses"},{"name":"Caixas de Som","parent":{"slug":"perifericos"},"slug":"caixas-de-som"},{"name":"Headset","parent":{"slug":"perifericos"},"slug":"headset"},{"name":"Cadeira Gamer","parent":{"slug":"perifericos"},"slug":"cadeira-gamer"},{"name":"Smartphones","slug":"smartphones","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007321218-smartphone.png"}},{"name":"Jogo","slug":"jogos/","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007332353-game.png"},"pictures":[]},{"name":"Físicos","parent":{"slug":"jogos/"},"slug":"fisicos"},{"name":"Digitais","parent":{"slug":"jogos/"},"slug":"digitais"},{"name":"Usados","parent":{"slug":"jogos/"},"slug":"usados"},{"name":"Promoções","slug":"promocoes","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007326827-mony.png"},"pictures":[{}]},{"name":"Ultrabook","parent":{"slug":"notebooks"},"slug":"ultrabook"},{"name":"Brasileiro"},{"name":"smartwatch"},{"name":"São Paulo","slug":"sao-paulo"},{"name":"MacBook Pro"},{"name":"Mac Stop"},{"name":"capinhas"}];</script>
71
+ <script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();</script><astro-island uid="ZkTKLw" component-url="/_astro/ShopHeader.2400b065.js" component-export="default" renderer-url="/_astro/client.9dbf6b61.js" props="{&quot;menuCategorySlugs&quot;:[1,[]],&quot;menuRandomCategories&quot;:[0,7],&quot;isAlphabeticalSortSubmenu&quot;:[0,false],&quot;serviceLinks&quot;:[1,[[0,{&quot;title&quot;:[0,&quot;Fale conosco&quot;],&quot;href&quot;:[0,&quot;/pages/contato&quot;]}]]]}" ssr="" client="load" opts="{&quot;name&quot;:&quot;ShopHeader&quot;,&quot;value&quot;:true}" await-children=""><header class="relative top-0 z-50 transition-colors bg-white py-3 sm:py-4 md:py-5"><div 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"><div class="basis-1/4 lg:hidden"><button class="px-2 my-1" aria-label="Abrir/fechar menu"><i class="i-bars-3-bottom-left text-base-500 text-3xl"></i></button></div><!--[--><astro-slot name="logo">
72
+ <a href="/">
73
+ <h2><picture>
74
+ <source type="image/avif" srcset="/_astro/logo_Z1EIN1I.avif 300w" sizes="150px"><source type="image/webp" srcset="/_astro/logo_144owC.webp 300w" sizes="150px"><source type="image/png" srcset="/_astro/logo_1ug3XF.png 300w" sizes="150px">
75
+ <img alt="E-Com Plus demoStore" src="/_astro/logo_1ug3XF.png" loading="eager" decoding="async" slot="logo-picture" fetchpriority="high" class="hover:drop-shadow-sm max-w-[150px] mx-auto" width="411" height="97">
76
+ </picture></h2>
77
+ </a>
78
+ </astro-slot><!--]--><nav class="hidden lg:block"><ul class="text-base flex gap-4 xl:gap-5 text-base-700"><!--[--><li><!--[--><div data-headlessui-state><!--[--><button class="outline-none" id="headlessui-popover-button-18" type="button" aria-expanded="false" data-headlessui-state><!--[--><span class="hover:text-primary group"><h3 class="group-hover:underline inline decoration-2">Monitores</h3><i class="i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle"></i></span><!--]--></button><!----><!--]--><div class="relative"><!----></div></div><!--]--></li><li><!--[--><div data-headlessui-state><!--[--><button class="outline-none" id="headlessui-popover-button-23" type="button" aria-expanded="false" data-headlessui-state><!--[--><span class="hover:text-primary group"><h3 class="group-hover:underline inline decoration-2">Notebooks</h3><i class="i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle"></i></span><!--]--></button><!----><!--]--><div class="relative"><!----></div></div><!--]--></li><li><a href="/smartphones" class="decoration-2 hover:text-primary hover:underline"><h3 class="inline">Smartphones</h3></a></li><li><!--[--><div data-headlessui-state><!--[--><button class="outline-none" id="headlessui-popover-button-28" type="button" aria-expanded="false" data-headlessui-state><!--[--><span class="hover:text-primary group"><h3 class="group-hover:underline inline decoration-2">Jogo</h3><i class="i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle"></i></span><!--]--></button><!----><!--]--><div class="relative"><!----></div></div><!--]--></li><li><a href="/promocoes" class="decoration-2 hover:text-primary hover:underline"><h3 class="inline">Promoções</h3></a></li><li><a href="/sao-paulo" class="decoration-2 hover:text-primary hover:underline"><h3 class="inline">São Paulo</h3></a></li><!--]--></ul></nav><div class="basis-1/4 px-2 flex justify-end items-center gap-3 lg:gap-4 text-base-800"><button aria-label="Buscar produtos"><i class="i-magnifying-glass w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"></i></button><div data-headlessui-state class="relative text-center text-sm text-base-800 hidden sm:block"><!----><button id="headlessui-menu-button-33" type="button" aria-haspopup="menu" aria-expanded="false" data-headlessui-state class="outline-none" aria-label="Minha conta"><!--[--><i class="i-user-circle w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"></i><!--]--></button><!----></div><button aria-label="Abrir carrinho" class="relative group"><i class="i-shopping-bag w-7 h-7 group-hover:text-primary group-hover:scale-110 group-active:scale-125"></i><!----></button></div></div><!----><!----><!----></header></astro-island>
79
+ <main>
80
+ <h1>Error :/</h1>
81
+ <p class="instructions">
82
+ Check out the <code>src/pages</code> directory to get started.<br>
83
+ <strong>Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
84
+ </p>
85
+ </main>
86
+
87
+
88
+
89
+
90
+
91
+
92
+ <div id="teleported-bottom" class="relative z-[19]"></div>
93
+ <picture data-alt="Icon" class="hidden absolute" style="bottom: -1000px">
94
+ <source type="image/png" srcset="/_astro/ecom-icon_Zo1CLq.png 32w,/_astro/ecom-icon_CDmhA.png 192w,/_astro/ecom-icon_Z27EX9f.png 512w" sizes="32px">
95
+
96
+ </picture>
97
+ </body>
98
+ </html>
@@ -0,0 +1,134 @@
1
+ <!DOCTYPE html>
2
+ <html lang="pt-br">
3
+ <head>
4
+
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width">
7
+ <meta name="theme-color" content="#37003c">
8
+ <link rel="icon" type="image/png" href="/_image?f=png&#38;w=32&#38;h=32&#38;href=%2Fimg%2Fuploads%2Fecom-icon.png&#38;V=_" sizes="32x32">
9
+ <link rel="icon" type="image/png" href="/_image?f=png&#38;w=192&#38;h=192&#38;href=%2Fimg%2Fuploads%2Fecom-icon.png&#38;V=_" sizes="192x192">
10
+ <title>E-Com Plus demoStore</title>
11
+ <meta name="description" content="My PWA Shop">
12
+ <meta name="author" content="E-Com Plus demoStore">
13
+ <meta name="generator" content="Astro v2.10.7">
14
+ <link rel="canonical" href="https://ecom2-demo.web.app/">
15
+ <link rel="apple-touch-icon" href="/_image?f=png&#38;w=192&#38;h=192&#38;href=%2Fimg%2Fuploads%2Fecom-icon.png&#38;V=_">
16
+ <meta name="apple-mobile-web-app-capable" content="yes">
17
+ <meta name="apple-mobile-web-app-status-bar-style" content="default">
18
+ <meta property="og:site_name" content="E-Com Plus demoStore">
19
+ <meta property="og:url" content="https://ecom2-demo.web.app/">
20
+ <meta property="og:title" content="E-Com Plus demoStore">
21
+ <meta property="og:description" content="My PWA Shop">
22
+ <meta property="og:type" content="website">
23
+ <meta property="og:locale" content="ptBR">
24
+
25
+
26
+ <meta name="twitter:card" content="summary">
27
+
28
+ <meta name="ecom-store-id" content="1011">
29
+
30
+ <link rel="manifest" href="/manifest.webmanifest">
31
+
32
+
33
+ <script>
34
+ window.ECOM_STORE_ID = 1011;
35
+ window.ECOM_LANG = 'pt_br';
36
+ window.ECOM_CURRENCY = 'BRL';
37
+ window.ECOM_CURRENCY_SYMBOL = 'R$';
38
+ window.ECOM_COUNTRY_CODE = 'R$';
39
+ window.$storefront = {"settings":{"domain":"ecom2-demo.web.app","name":"E-Com Plus demoStore","description":"My PWA Shop","logo":"/img/uploads/logo.png","icon":"/img/uploads/ecom-icon.png","primary_color":"#37003c","email":"","phone":"","address":"","corporate_name":"","doc_number":"","lang":"pt_br","currency":"BRL","currency_symbol":"R$","country_code":"BR","whatsapp":"(31) 9 8272-1558","instagram":"https://www.instagram.com/ecomclub/","facebook":"https://www.facebook.com/ecom.clubpage/","twitter":"","youtube":"https://www.youtube.com/channel/UCBlIxK5JAub0E1EX_qHdzmA","tiktok":"","pinterest":"","modules":{"list_payments":{"installments_option":{"max_number":null,"monthly_interest":null,"min_installment":null},"discount_option":{"label":null,"apply_at":null,"type":null,"value":null},"loyalty_points_program":{"id":null,"name":null,"ratio":null,"earn_percentage":null}},"calculate_shipping":{"free_shipping_from_value":150}}},"data":{}};</script>
40
+ <script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","name":"E-Com Plus demoStore","url":"https://ecom2-demo.web.app/","logo":"https://ecom2-demo.web.app/img/uploads/logo.png"}</script>
41
+
42
+
43
+
44
+
45
+ <script>
46
+ window.$firebaseConfig = {
47
+ apiKey: "AIzaSyCnvm7QrPKzSBrUi09Z3zTgjDST0t4Yikg",
48
+ authDomain: "ecom2-demo.firebaseapp.com",
49
+ projectId: "ecom2-demo",
50
+ storageBucket: "ecom2-demo.appspot.com",
51
+ messagingSenderId: "70369627313",
52
+ appId: "1:70369627313:web:06634033b9c6208fe7e690"
53
+ };
54
+ </script>
55
+ <link rel="stylesheet" href="/_astro/_...slug_.07c1fa58.css" /><script type="module" src="/_astro/hoisted.572313d6.js"></script></head>
56
+ <body>
57
+ <div id="teleported-overlap" class="relative z-[59]"></div>
58
+ <div id="teleported-top" class="relative z-[19]"></div>
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+ <style>astro-island,astro-slot,astro-static-slot{display:contents}</style><script>(()=>{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"));})();;(()=>{var d;{let p={0:t=>u(t),1:t=>l(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(l(t)),5:t=>new Set(l(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t)},h=t=>{let[e,n]=t;return e in p?p[e](n):void 0},l=t=>t.map(h),u=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([e,n])=>[e,h(n)]));customElements.get("astro-island")||customElements.define("astro-island",(d=class extends HTMLElement{constructor(){super(...arguments);this.hydrate=async()=>{var i;if(!this.hydrator||!this.isConnected)return;let e=(i=this.parentElement)==null?void 0:i.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let n=this.querySelectorAll("astro-slot"),o={},a=this.querySelectorAll("template[data-astro-template]");for(let r of a){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(o[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of n){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(o[r.getAttribute("name")||"default"]=r.innerHTML)}let c;try{c=this.hasAttribute("props")?u(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",y=this.getAttribute("component-export");throw y&&(s+=` (export ${y})`),console.error(`[hydrate] Error parsing props for component ${s}`,this.getAttribute("props"),r),r}await this.hydrator(this)(this.Component,c,o,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))}}connectedCallback(){!this.hasAttribute("await-children")||this.firstChild?this.childrenConnectedCallback():new MutationObserver((e,n)=>{n.disconnect(),setTimeout(()=>this.childrenConnectedCallback(),0)}).observe(this,{childList:!0})}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}start(){let e=JSON.parse(this.getAttribute("opts")),n=this.getAttribute("client");if(Astro[n]===void 0){window.addEventListener(`astro:${n}`,()=>this.start(),{once:!0});return}Astro[n](async()=>{let o=this.getAttribute("renderer-url"),[a,{default:c}]=await Promise.all([import(this.getAttribute("component-url")),o?import(o):()=>()=>{}]),i=this.getAttribute("component-export")||"default";if(!i.includes("."))this.Component=a[i];else{this.Component=a;for(let r of i.split("."))this.Component=this.Component[r]}return this.hydrator=c,this.hydrate},e,this)}attributeChangedCallback(){this.hydrate()}},d.observedAttributes=["props"],d))}})();</script><astro-island uid="qn081" component-url="/_astro/PitchBar.c2a2ad79.js" component-export="default" renderer-url="/_astro/client.9dbf6b61.js" props="{&quot;slides&quot;:[1,[[0,{&quot;href&quot;:[0,&quot;/promotion&quot;],&quot;html&quot;:[0,&quot;Aproveite nossos descontos de até 50%!&quot;]}],[0,{&quot;href&quot;:[0,&quot;&quot;],&quot;html&quot;:[0,&quot;&lt;b&gt;Frete grátis&lt;/b&gt; &lt;d-md&gt;para todo Brasil&lt;/d-md&gt; a partir de {free_shipping_from_value}&quot;]}]]]}" ssr="" client="idle" opts="{&quot;name&quot;:&quot;PitchBar&quot;,&quot;value&quot;:true}" await-children=""><div class="bg-base-100 relative z-20"><div class="container md:w-2/3 mx-auto px-3 py-1"><div class="relative" data-carousel><ul class="flex overflow-x-scroll overflow-y-hidden list-none m-0 p-0 snap-x snap-mandatory scroll-smooth [&amp;&gt;*]:snap-start [&amp;&gt;*]:outline-none" style="scrollbar-width:none;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;" data-carousel-wrapper><!--[--><!--[--><li class="shrink-0 basis-full h-full text-center"><a href="/promotion" class="inline-block px-8 hover:underline"><!--[--><span class="prose text-sm text-base-800">Aproveite nossos descontos de até 50%!</span><!--]--></a></li><li class="shrink-0 basis-full h-full text-center"><span href class="inline-block px-8"><span class="prose text-sm text-base-800"><b>Frete grátis</b> <d-md>para todo Brasil</d-md> a partir de R$ 150,00</span></span></li><!--]--><!--]--></ul><!--[--><div style="" class="text-xl leading-none text-base-400"><button type="button" aria-label="Anterior" class="group absolute top-0 z-1 left-0 pr-2 bg-base-100 hover:text-base-700" data-carousel-control="previous"><!--[--><i class="i-chevron-left group-active:-translate-x-1 m-0"></i><!--]--></button><button type="button" aria-label="Próximo" class="group absolute top-0 z-1 right-0 pl-2 bg-base-100 hover:text-base-700" data-carousel-control="next"><!--[--><i class="i-chevron-right group-active:translate-x-1 m-0"></i><!--]--></button></div><!--]--></div></div></div></astro-island>
67
+
68
+
69
+ <script>
70
+ window.$storefront.data['categories'] = [{"name":"Monitores","slug":"monitores","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007322374-rect836.png"}},{"name":"Monitores Gamer","parent":{"slug":"monitores"},"slug":"monitores-gamer","pictures":[]},{"name":"Monitores Convencionais","parent":{"slug":"monitores"},"slug":"monitores-convencionais"},{"name":"Monitores TV","parent":{"slug":"monitores"},"slug":"monitores-tv"},{"name":"Notebooks","slug":"notebooks","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007351112-comp.png"}},{"name":"Notebooks gamers","parent":{"slug":"notebooks"},"slug":"notebooks-gamers"},{"name":"MacBook","parent":{"slug":"ultrabook"},"slug":"macbook","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1566932713325-macbook.jfif","size":"233x216"},"pictures":[{}]},{"name":"Periféricos","slug":"perifericos","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007328003-keyb.png"},"pictures":[],"parent":{"slug":"fisicos"}},{"name":"Teclados","parent":{"slug":"perifericos"},"slug":"teclados"},{"name":"Mouses","parent":{"slug":"perifericos"},"slug":"mouses"},{"name":"Caixas de Som","parent":{"slug":"perifericos"},"slug":"caixas-de-som"},{"name":"Headset","parent":{"slug":"perifericos"},"slug":"headset"},{"name":"Cadeira Gamer","parent":{"slug":"perifericos"},"slug":"cadeira-gamer"},{"name":"Smartphones","slug":"smartphones","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007321218-smartphone.png"}},{"name":"Jogo","slug":"jogos/","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007332353-game.png"},"pictures":[]},{"name":"Físicos","parent":{"slug":"jogos/"},"slug":"fisicos"},{"name":"Digitais","parent":{"slug":"jogos/"},"slug":"digitais"},{"name":"Usados","parent":{"slug":"jogos/"},"slug":"usados"},{"name":"Promoções","slug":"promocoes","icon":{"url":"https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/@1567007326827-mony.png"},"pictures":[{}]},{"name":"Ultrabook","parent":{"slug":"notebooks"},"slug":"ultrabook"},{"name":"Brasileiro"},{"name":"smartwatch"},{"name":"São Paulo","slug":"sao-paulo"},{"name":"MacBook Pro"},{"name":"Mac Stop"},{"name":"capinhas"}];</script>
71
+ <script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();</script><astro-island uid="Z1hQxAT" component-url="/_astro/ShopHeader.2400b065.js" component-export="default" renderer-url="/_astro/client.9dbf6b61.js" props="{&quot;menuCategorySlugs&quot;:[1,[]],&quot;menuRandomCategories&quot;:[0,7],&quot;isAlphabeticalSortSubmenu&quot;:[0,false],&quot;serviceLinks&quot;:[1,[[0,{&quot;title&quot;:[0,&quot;Fale conosco&quot;],&quot;href&quot;:[0,&quot;/pages/contato&quot;]}]]]}" ssr="" client="load" opts="{&quot;name&quot;:&quot;ShopHeader&quot;,&quot;value&quot;:true}" await-children=""><header class="relative top-0 z-50 transition-colors bg-white py-3 sm:py-4 md:py-5"><div 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"><div class="basis-1/4 lg:hidden"><button class="px-2 my-1" aria-label="Abrir/fechar menu"><i class="i-bars-3-bottom-left text-base-500 text-3xl"></i></button></div><!--[--><astro-slot name="logo">
72
+ <a href="/">
73
+ <h1><picture>
74
+ <source type="image/avif" srcset="/_astro/logo_Z1EIN1I.avif 300w" sizes="150px"><source type="image/webp" srcset="/_astro/logo_144owC.webp 300w" sizes="150px"><source type="image/png" srcset="/_astro/logo_1ug3XF.png 300w" sizes="150px">
75
+ <img alt="E-Com Plus demoStore" src="/_astro/logo_1ug3XF.png" loading="eager" decoding="async" slot="logo-picture" fetchpriority="high" class="hover:drop-shadow-sm max-w-[150px] mx-auto" width="411" height="97">
76
+ </picture></h1>
77
+ </a>
78
+ </astro-slot><!--]--><nav class="hidden lg:block"><ul class="text-base flex gap-4 xl:gap-5 text-base-700"><!--[--><li><!--[--><div data-headlessui-state><!--[--><button class="outline-none" id="headlessui-popover-button-1" type="button" aria-expanded="false" data-headlessui-state><!--[--><span class="hover:text-primary group"><h3 class="group-hover:underline inline decoration-2">Monitores</h3><i class="i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle"></i></span><!--]--></button><!----><!--]--><div class="relative"><!----></div></div><!--]--></li><li><!--[--><div data-headlessui-state><!--[--><button class="outline-none" id="headlessui-popover-button-6" type="button" aria-expanded="false" data-headlessui-state><!--[--><span class="hover:text-primary group"><h3 class="group-hover:underline inline decoration-2">Notebooks</h3><i class="i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle"></i></span><!--]--></button><!----><!--]--><div class="relative"><!----></div></div><!--]--></li><li><a href="/smartphones" class="decoration-2 hover:text-primary hover:underline"><h3 class="inline">Smartphones</h3></a></li><li><!--[--><div data-headlessui-state><!--[--><button class="outline-none" id="headlessui-popover-button-11" type="button" aria-expanded="false" data-headlessui-state><!--[--><span class="hover:text-primary group"><h3 class="group-hover:underline inline decoration-2">Jogo</h3><i class="i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle"></i></span><!--]--></button><!----><!--]--><div class="relative"><!----></div></div><!--]--></li><li><a href="/promocoes" class="decoration-2 hover:text-primary hover:underline"><h3 class="inline">Promoções</h3></a></li><li><a href="/sao-paulo" class="decoration-2 hover:text-primary hover:underline"><h3 class="inline">São Paulo</h3></a></li><!--]--></ul></nav><div class="basis-1/4 px-2 flex justify-end items-center gap-3 lg:gap-4 text-base-800"><button aria-label="Buscar produtos"><i class="i-magnifying-glass w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"></i></button><div data-headlessui-state class="relative text-center text-sm text-base-800 hidden sm:block"><!----><button id="headlessui-menu-button-16" type="button" aria-haspopup="menu" aria-expanded="false" data-headlessui-state class="outline-none" aria-label="Minha conta"><!--[--><i class="i-user-circle w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"></i><!--]--></button><!----></div><button aria-label="Abrir carrinho" class="relative group"><i class="i-shopping-bag w-7 h-7 group-hover:text-primary group-hover:scale-110 group-active:scale-125"></i><!----></button></div></div><!----><!----><!----></header></astro-island>
79
+ <main>
80
+ <astro-island uid="1modps" component-url="/_astro/HeroSlider.8d2ea532.js" component-export="default" renderer-url="/_astro/client.9dbf6b61.js" props="{&quot;slides&quot;:[1,[[0,{&quot;alt&quot;:[0,&quot;Headset banner&quot;],&quot;href&quot;:[0,&quot;/headset&quot;],&quot;title&quot;:[0,&quot;20% off on first purchase&quot;],&quot;subtitle&quot;:[0,&quot;At demoStore you can shop the best tech of 2023. Enjoy and get 10% off on your first purchase!&quot;],&quot;img&quot;:[0,&quot;/img/uploads/rect89.webp&quot;],&quot;mobileImg&quot;:[0,&quot;/img/uploads/headphone.webp&quot;],&quot;buttonLink&quot;:[0,&quot;/&quot;],&quot;buttonText&quot;:[0,&quot;See&quot;]}],[0,{&quot;alt&quot;:[0,&quot;&quot;],&quot;href&quot;:[0,&quot;&quot;],&quot;title&quot;:[0,&quot;&quot;],&quot;subtitle&quot;:[0,&quot;&quot;],&quot;img&quot;:[0,&quot;/img/uploads/rect859.png&quot;],&quot;mobileImg&quot;:[0,&quot;&quot;],&quot;buttonLink&quot;:[0,&quot;&quot;],&quot;buttonText&quot;:[0,&quot;&quot;]}]]],&quot;autoplay&quot;:[0,9000]}" ssr="" client="load" opts="{&quot;name&quot;:&quot;HeroSlider&quot;,&quot;value&quot;:true}" await-children=""><section class="relative mx-auto"><div class="relative secondary [&amp;&gt;*]:items-center" data-carousel><ul class="flex overflow-x-scroll overflow-y-hidden list-none m-0 p-0 snap-x snap-mandatory scroll-smooth [&amp;&gt;*]:snap-start [&amp;&gt;*]:outline-none" style="scrollbar-width:none;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;" data-carousel-wrapper><!--[--><!--[--><li class="shrink-0 basis-full"><div class="mx-auto overflow-x-hidden grid grid-cols-1 sm:grid-cols-2 items-center w-screen max-w-screen-2xl"><a href="/headset" class="sm:order-last [&amp;_img]:max-w-full sm:[&amp;_img]:max-w-none [&amp;_img]:aspect-video sm:[&amp;_img]:aspect-[2.5] [&amp;_img]:object-cover"><!--[--><!--[--><!--[--><astro-slot name="picture-0"><picture>
81
+ <source type="image/avif" srcset="/_astro/rect89_ZAjmIj.avif 1536w,/_astro/rect89_2uIqYp.avif 2048w" sizes="1536px"><source type="image/webp" srcset="/_astro/rect89_Z1rGPGT.webp 1536w,/_astro/rect89_1DkX0O.webp 2048w" sizes="1536px">
82
+ <img alt="Headset banner" src="/_astro/rect89_1DkX0O.webp" loading="eager" decoding="async" fetchpriority="high" class="hidden md:block mx-auto max-w-screen-2xl" width="1201" height="311">
83
+ </picture>
84
+ <picture>
85
+ <source type="image/avif" srcset="/_astro/headphone_247ud8.avif 720w,/_astro/headphone_22qtrt.avif 856w" sizes="640px"><source type="image/webp" srcset="/_astro/headphone_Z1hoMcQ.webp 720w,/_astro/headphone_Z1j5MXv.webp 856w" sizes="640px">
86
+ <img alt="Headset banner" src="/_astro/headphone_Z1j5MXv.webp" loading="eager" decoding="async" fetchpriority="high" class="md:hidden mx-auto max-w-screen-sm" width="480" height="320">
87
+ </picture></astro-slot><!--]--><!--]--><!--]--></a><div class="p-12 xl:ps-32 mb-3 sm:mb-0"><h2 class="ui-title mt-1">20% off on first purchase</h2><p class="text-lg mt-4 md:mt-6">At demoStore you can shop the best tech of 2023. Enjoy and get 10% off on your first purchase!</p><a href="/" class="ui-btn-lg ui-btn-contrast min-w-[150px] mt-7 md:mt-10"><!--[-->See<!--]--></a></div></div></li><li class="shrink-0 basis-full"><div class="mx-auto overflow-x-hidden w-screen max-w-screen-2xl"><span href class="[&amp;_img]:max-w-full"><!--[--><!--[--><astro-slot name="picture-1"><picture>
88
+ <source type="image/avif" srcset="/_astro/rect859_2dVuzq.avif 856w,/_astro/rect859_mPQHw.avif 1536w,/_astro/rect859_Z2i1RBz.avif 2048w" sizes="1536px"><source type="image/webp" srcset="/_astro/rect859_xyq7d.webp 856w,/_astro/rect859_ZMRWqJ.webp 1536w,/_astro/rect859_1Bqr36.webp 2048w" sizes="1536px"><source type="image/png" srcset="/_astro/rect859_HaXay.png 856w,/_astro/rect859_Z100iy0.png 1536w,/_astro/rect859_1pj5UP.png 2048w" sizes="1536px">
89
+ <img alt="" src="/_astro/rect859_1pj5UP.png" loading="lazy" decoding="async" fetchpriority="low" class="mx-auto max-w-screen-2xl" width="1500" height="373">
90
+ </picture>
91
+ </astro-slot><!--]--><!--]--></span><!----></div></li><!--]--><!--]--></ul><!--[--><div style="" class="absolute z-10 bottom-5 flex justify-end items-center w-screen right-5 xl:right-auto xl:max-w-screen-xl xl:left-1/2 xl:-ms-[640px]"><div class="relative w-20 h-10 rounded-full bg-white/50 text-primary shadow-sm ring-1 ring-black/5"><button type="button" aria-label="Anterior" class="group absolute top-0 z-1 left-0 w-10 h-10 rounded-full hover:bg-primary/10" data-carousel-control="previous"><!--[--><i class="i-arrow-left"></i><!--]--></button><button type="button" aria-label="Próximo" class="group absolute top-0 z-1 right-0 w-10 h-10 rounded-full hover:bg-primary/10" data-carousel-control="next"><!--[--><i class="i-arrow-right"></i><!--]--></button></div></div><!--]--></div></section><template data-astro-template="picture-2"></template><template data-astro-template="picture-3"></template><template data-astro-template="picture-4"></template><template data-astro-template="picture-5"></template><template data-astro-template="picture-6"></template><template data-astro-template="picture-7"></template><template data-astro-template="picture-8"></template><template data-astro-template="picture-9"></template></astro-island>
92
+ <article class="my-9 md:my-12">
93
+ <script>(()=>{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"));})();</script><astro-island uid="y9qVa" component-url="/_astro/ProductShelf.4a105932.js" component-export="default" renderer-url="/_astro/client.9dbf6b61.js" props="{&quot;sort&quot;:[0,&quot;-price_discount&quot;],&quot;title&quot;:[0,&quot;&quot;],&quot;limit&quot;:[0,12],&quot;page&quot;:[0,1],&quot;collectionId&quot;:[0,null],&quot;searchQuery&quot;:[0],&quot;titleLink&quot;:[0],&quot;isShuffle&quot;:[0,false],&quot;products&quot;:[1,[[0,{&quot;_id&quot;:[0,&quot;5cdf0e8f887ef430f1f6d0a7&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;name&quot;:[0,&quot;TV LG UHD 55” Q6FN - Tizen Conversor Digital Modo Ambiente Linha 2018&quot;],&quot;sku&quot;:[0,&quot;ZFA2236&quot;],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/imgs/400px/@1558199359597-133718358_2sz.jpg&quot;]}]}]]],&quot;price&quot;:[0,10000],&quot;quantity&quot;:[0,130],&quot;slug&quot;:[0,&quot;lot-of-pictures-product&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;inventory&quot;:[0,{&quot;MG&quot;:[0,20],&quot;SP&quot;:[0,10],&quot;SELIA&quot;:[0,100]}],&quot;base_price&quot;:[0,10000],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;6255815c2e405e04ff3a4cc7&quot;],&quot;sku&quot;:[0,&quot;s-MP_2B4&quot;],&quot;name&quot;:[0,&quot;Mens Pique Polo Shirt&quot;],&quot;slug&quot;:[0,&quot;mens-pique-polo-shirt&quot;],&quot;price&quot;:[0,60],&quot;base_price&quot;:[0,60],&quot;quantity&quot;:[0,100],&quot;available&quot;:[0,true],&quot;visible&quot;:[0,true],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;62557d252e405e04ff3a3d00&quot;],&quot;sku&quot;:[0,&quot;s-MP_2B4&quot;],&quot;name&quot;:[0,&quot;Mens Pique Polo Shirt&quot;],&quot;slug&quot;:[0,&quot;mens-pique-polo-shirt&quot;],&quot;price&quot;:[0,60],&quot;base_price&quot;:[0,60],&quot;quantity&quot;:[0,100],&quot;available&quot;:[0,true],&quot;visible&quot;:[0,true],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;62557d322e405e04ff3a3d30&quot;],&quot;sku&quot;:[0,&quot;s-MP_2B4&quot;],&quot;name&quot;:[0,&quot;Mens Pique Polo Shirt&quot;],&quot;slug&quot;:[0,&quot;mens-pique-polo-shirt&quot;],&quot;price&quot;:[0,60],&quot;base_price&quot;:[0,60],&quot;quantity&quot;:[0,100],&quot;available&quot;:[0,true],&quot;visible&quot;:[0,true],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;62557d302e405e04ff3a3d22&quot;],&quot;sku&quot;:[0,&quot;s-MP_2B4&quot;],&quot;name&quot;:[0,&quot;Mens Pique Polo Shirt&quot;],&quot;slug&quot;:[0,&quot;mens-pique-polo-shirt&quot;],&quot;price&quot;:[0,60],&quot;base_price&quot;:[0,60],&quot;quantity&quot;:[0,100],&quot;available&quot;:[0,true],&quot;visible&quot;:[0,true],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c700cbfc626be23430d4f9a&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;name&quot;:[0,&quot;Teclado Gamer Fortrek Mecânico K5 RGB Outemu Blue Preto&quot;],&quot;sku&quot;:[0,&quot;tcl-frt-6980&quot;],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1550848813715-teclado-gamer-mecanico-k5-rgb-fortrek.gif&quot;]}]}]]],&quot;price&quot;:[0,178.19],&quot;quantity&quot;:[0,1112],&quot;slug&quot;:[0,&quot;teclado-gamer-fortrek-mecanico-k5-rgb-outemu-blue-preto&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;base_price&quot;:[0,178.19],&quot;inventory&quot;:[0,{&quot;SELIA&quot;:[0,12],&quot;SALVADOR&quot;:[0,100],&quot;FABRICA&quot;:[0,1000]}],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c700beac626be23430d4f93&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;name&quot;:[0,&quot;Combo Teclado e Mouse Thermaltake KB-CMC-PLBLPB-01 Preto&quot;],&quot;sku&quot;:[0,&quot;tcl-trm-6215&quot;],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/imgs/normal/@v2-1594851344426-kb-cmc-plblpb-012123.jpg.webp&quot;],&quot;size&quot;:[0,&quot;350x350&quot;],&quot;alt&quot;:[0,&quot;kb-cmc-plblpb-012123&quot;]}]}],[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/imgs/normal/@v2-1594851352949-kb-cmc-plblpb-012122.jpg.webp&quot;],&quot;size&quot;:[0,&quot;350x350&quot;],&quot;alt&quot;:[0,&quot;kb-cmc-plblpb-012122&quot;]}]}]]],&quot;quantity&quot;:[0,110],&quot;slug&quot;:[0,&quot;combo-teclado-e-mouse-thermaltake-kb-cmc-plblpb-01-preto&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;base_price&quot;:[0,155.71],&quot;price&quot;:[0,155.71],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c768e21c626be23430d5086&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1551273294352-tela-smartphone-xiaomi-redmi-mi-a2-64gb-preto.jpg&quot;]}]}]]],&quot;name&quot;:[0,&quot;Smartphone Xiaomi Redmi MI A2 64GB Versão Global Desbloqueado Preto&quot;],&quot;sku&quot;:[0,&quot;smtp-xomi-9746&quot;],&quot;price&quot;:[0,1070.11],&quot;base_price&quot;:[0,1070.11],&quot;quantity&quot;:[0,109],&quot;slug&quot;:[0,&quot;smartphone-xiaomi-redmi-mi-a2-64gb-versao-global-desbloqueado-preto&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c768f22c626be23430d508b&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;sku&quot;:[0,&quot;smtp-xomi-231w&quot;],&quot;price&quot;:[0,1070.11],&quot;base_price&quot;:[0,1070.11],&quot;quantity&quot;:[0,111],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1551273667806-frontal-smartphone-xiaomi-redmi-note-5-64gb.jpg&quot;]}]}]]],&quot;name&quot;:[0,&quot;Smartphone Xiaomi Redmi Note 5 64GB Versão Global Desbloqueado Preto&quot;],&quot;slug&quot;:[0,&quot;smartphone-xiaomi-redmi-note-5-64gb-versao-global-desbloqueado-preto&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c768fcfc626be23430d5090&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1551273794995-completo-smartphone-xiaomi-redmi-s2-32gb-4g-prata.jpg&quot;]}]}]]],&quot;name&quot;:[0,&quot;Smartphone Xiaomi Redmi S2 64GB Versão Global Desbloqueado&quot;],&quot;sku&quot;:[0,&quot;smtp-xomi-09876&quot;],&quot;price&quot;:[0,841.33],&quot;base_price&quot;:[0,841.33],&quot;quantity&quot;:[0,110],&quot;slug&quot;:[0,&quot;smartphone-xiaomi-redmi-s2-64gb-versao-global-desbloqueado&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,false],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c70290cc626be23430d5001&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;name&quot;:[0,&quot;Cadeira Gamer PcYes Mad Racer V8 MADV8&quot;],&quot;sku&quot;:[0,&quot;cd-pcy-1256&quot;],&quot;quantity&quot;:[0,331],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1550854259186-borda-cadeira-gamer-pcyes-mad-racer-v8-azul.jpg&quot;]}]}]]],&quot;price&quot;:[0,1012.77],&quot;base_price&quot;:[0,1012.77],&quot;slug&quot;:[0,&quot;cadeira-gamer-pcyes-mad-racer-v8-madv8-azul&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;has_variations&quot;:[0,true],&quot;_score&quot;:[0,2]}],[0,{&quot;_id&quot;:[0,&quot;5c701f1ec626be23430d4ff2&quot;],&quot;visible&quot;:[0,true],&quot;available&quot;:[0,true],&quot;name&quot;:[0,&quot;Headset Stereo Logitech H110 Cinza&quot;],&quot;sku&quot;:[0,&quot;hd-lgt-6652&quot;],&quot;price&quot;:[0,53.2],&quot;quantity&quot;:[0,111],&quot;pictures&quot;:[1,[[0,{&quot;normal&quot;:[0,{&quot;url&quot;:[0,&quot;https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1550851599586-headset-stereo-logitech-h110.gif&quot;]}]}]]],&quot;slug&quot;:[0,&quot;headset-stereo-logitech-h110-cinza&quot;],&quot;condition&quot;:[0,&quot;new&quot;],&quot;base_price&quot;:[0,53.2],&quot;has_variations&quot;:[0,true],&quot;_score&quot;:[0,2]}]]]}" ssr="" client="visible" opts="{&quot;name&quot;:&quot;ProductShelf&quot;,&quot;value&quot;:true}" await-children=""><section class="ui-section"><!----><div class="relative group/shelf" data-carousel><ul class="flex overflow-x-scroll overflow-y-hidden list-none m-0 p-0 snap-x snap-mandatory scroll-smooth [&amp;&gt;*]:snap-start [&amp;&gt;*]:outline-none" style="scrollbar-width:none;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;" data-carousel-wrapper><!--[--><!--[--><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="ZFA2236" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/lot-of-pictures-product" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/imgs/400px/@1558199359597-133718358_2sz.jpg" alt="TV LG UHD 55” Q6FN - Tizen Conversor Digital Modo Ambiente Linha 2018" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">TV LG UHD 55” Q6FN - Tizen Conversor Digital Modo Ambiente Linha 2018</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 10.000,00</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="s-MP_2B4" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/mens-pique-polo-shirt" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><div class="w-full h-full bg-gradient-to-br from-base-50/20 to-base-100"></div></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Mens Pique Polo Shirt</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 60,00</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="s-MP_2B4" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/mens-pique-polo-shirt" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><div class="w-full h-full bg-gradient-to-br from-base-50/20 to-base-100"></div></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Mens Pique Polo Shirt</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 60,00</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="s-MP_2B4" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/mens-pique-polo-shirt" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><div class="w-full h-full bg-gradient-to-br from-base-50/20 to-base-100"></div></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Mens Pique Polo Shirt</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 60,00</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="s-MP_2B4" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/mens-pique-polo-shirt" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><div class="w-full h-full bg-gradient-to-br from-base-50/20 to-base-100"></div></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Mens Pique Polo Shirt</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 60,00</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="tcl-frt-6980" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/teclado-gamer-fortrek-mecanico-k5-rgb-outemu-blue-preto" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1550848813715-teclado-gamer-mecanico-k5-rgb-fortrek.gif" alt="Teclado Gamer Fortrek Mecânico K5 RGB Outemu Blue Preto" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Teclado Gamer Fortrek Mecânico K5 RGB Outemu Blue Preto</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 178,19</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="tcl-trm-6215" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/combo-teclado-e-mouse-thermaltake-kb-cmc-plblpb-01-preto" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-jvxboxzk.sfo2.digitaloceanspaces.com/imgs/normal/@v2-1594851344426-kb-cmc-plblpb-012123.jpg.webp" alt="kb-cmc-plblpb-012123" width="350" height="350" loading="lazy" decoding="async" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Combo Teclado e Mouse Thermaltake KB-CMC-PLBLPB-01 Preto</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 155,71</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="smtp-xomi-9746" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/smartphone-xiaomi-redmi-mi-a2-64gb-versao-global-desbloqueado-preto" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1551273294352-tela-smartphone-xiaomi-redmi-mi-a2-64gb-preto.jpg" alt="Smartphone Xiaomi Redmi MI A2 64GB Versão Global Desbloqueado Preto" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Smartphone Xiaomi Redmi MI A2 64GB Versão Global Desbloqueado Preto</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 1.070,11</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="smtp-xomi-231w" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/smartphone-xiaomi-redmi-note-5-64gb-versao-global-desbloqueado-preto" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1551273667806-frontal-smartphone-xiaomi-redmi-note-5-64gb.jpg" alt="Smartphone Xiaomi Redmi Note 5 64GB Versão Global Desbloqueado Preto" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Smartphone Xiaomi Redmi Note 5 64GB Versão Global Desbloqueado Preto</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 1.070,11</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="smtp-xomi-09876" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/smartphone-xiaomi-redmi-s2-64gb-versao-global-desbloqueado" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1551273794995-completo-smartphone-xiaomi-redmi-s2-32gb-4g-prata.jpg" alt="Smartphone Xiaomi Redmi S2 64GB Versão Global Desbloqueado" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Smartphone Xiaomi Redmi S2 64GB Versão Global Desbloqueado</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 841,33</strong><!----><!----><!----></div></div></div><button class="uno-3suct9 ui-btn-sm ui-btn-primary"><span class="inline-block h-4 w-4 leading-none text-base text-center bg-on-primary text-primary opacity-80 rounded-full mr-1"> + </span> Adicionar ao carrinho</button></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="cd-pcy-1256" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/cadeira-gamer-pcyes-mad-racer-v8-madv8-azul" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1550854259186-borda-cadeira-gamer-pcyes-mad-racer-v8-azul.jpg" alt="Cadeira Gamer PcYes Mad Racer V8 MADV8" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Cadeira Gamer PcYes Mad Racer V8 MADV8</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 1.012,77</strong><!----><!----><!----></div></div></div><!----></div><!--]--></a></article></li><li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"><article data-sku="hd-lgt-6652" class="relative h-full max-w-[350px] mx-auto py-3 group"><a href="/headset-stereo-logitech-h110-cinza" class="flex flex-col h-full rounded overflow-hidden group-hover:shadow group-hover:ring-1 ring-black/5"><!--[--><div class="aspect-square p-2 motion-safe:group-hover:scale-110 transition-transform"><div class="relative w-full h-full bg-white rounded overflow-hidden group-hover:rounded-none"><!--[--><img src="https://ecom-ptqgjveg.nyc3.digitaloceanspaces.com/imgs/400px/@1550851599586-headset-stereo-logitech-h110.gif" alt="Headset Stereo Logitech H110 Cinza" loading="lazy" class="absolute top-0 left-0 block w-full h-full object-cover"><!----><!--]--></div></div><!----><div class="relative flex flex-col grow justify-between p-4 group-hover:backdrop-blur-md bg-white/40 z-10"><h3 class="ui-link no-underline line-clamp-2 text-base-700 group-hover:underline group-hover:text-primary">Headset Stereo Logitech H110 Cinza</h3><div class="pt-2"><div><div class="text-base-600 [&amp;&gt;div]:[font-size:90%] [&amp;_small]:lowercase [&amp;_small]:[font-size:92%]" data-prices><!----><strong class="inline-block text-base-800"><!----> R$ 53,20</strong><!----><!----><!----></div></div></div><!----></div><!--]--></a></article></li><!--]--><!--]--></ul><!--[--><div style="" class="text-3xl lg:text-2xl leading-none text-primary lg:opacity-0 group-hover/shelf:opacity-90 transition-opacity"><button type="button" aria-label="Anterior" class="group absolute top-0 z-1 left-0 !top-1/2 !-left-4 w-12 h-12 bg-transparent lg:bg-white/80 lg:hover:bg-primary-300/60 rounded-full lg:shadow-sm lg:ring-1 ring-black/5" data-carousel-control="previous"><!--[--><i class="i-chevron-left group-active:-translate-x-1 m-0"></i><!--]--></button><button type="button" aria-label="Próximo" class="group absolute top-0 z-1 right-0 !top-1/2 !-right-4 w-12 h-12 bg-transparent lg:bg-white/80 lg:hover:bg-primary-300/60 rounded-full lg:shadow-sm lg:ring-1 ring-black/5" data-carousel-control="next"><!--[--><i class="i-chevron-right group-active:translate-x-1 m-0"></i><!--]--></button></div><!--]--></div></section></astro-island><section class="ui-section">
94
+ <ul class="flex flex-wrap lg:flex-nowrap gap-4">
95
+ <li class="lg:flex-1 [&_img]:w-full [&_img]:object-cover">
96
+ <div class="mx-auto overflow-x-hidden"><a href="/banner-1" class="[&amp;_img]:max-w-full"><!--[--><!--[--><picture>
97
+ <source type="image/avif" srcset="/_astro/rect8589_Z1IS4wy.avif 856w,/_astro/rect8589_Zt4vbx.avif 1536w,/_astro/rect8589_1VeSii.avif 2048w" sizes="1536px"><source type="image/webp" srcset="/_astro/rect8589_1EUYOa.webp 856w,/_astro/rect8589_Z1DNkkN.webp 1536w,/_astro/rect8589_Kv492.webp 2048w" sizes="1536px"><source type="image/png" srcset="/_astro/rect8589_1Sqf3x.png 856w,/_astro/rect8589_7mg8W.png 1536w,/_astro/rect8589_2wFECM.png 2048w" sizes="1536px">
98
+ <img alt="" src="/_astro/rect8589_2wFECM.png" loading="lazy" decoding="async" fetchpriority="low" class="mx-auto max-w-screen-2xl" width="1500" height="373">
99
+ </picture>
100
+ <!--]--><!--]--></a><!----></div>
101
+ </li><li class="lg:flex-1 [&_img]:w-full [&_img]:object-cover">
102
+ <div class="mx-auto overflow-x-hidden"><a href="/banner-2" class="[&amp;_img]:max-w-full"><!--[--><!--[--><picture>
103
+ <source type="image/avif" srcset="/_astro/passion_pVNbE.avif 856w,/_astro/passion_Z18ANwS.avif 1536w,/_astro/passion_2sykkb.avif 2048w" sizes="1536px"><source type="image/webp" srcset="/_astro/passion_29BEzB.webp 856w,/_astro/passion_HYj6i.webp 1536w,/_astro/passion_ZK2FPz.webp 2048w" sizes="1536px">
104
+ <img alt="" src="/_astro/passion_ZK2FPz.webp" loading="lazy" decoding="async" fetchpriority="low" class="mx-auto max-w-screen-2xl" width="480" height="320">
105
+ </picture>
106
+ <!--]--><!--]--></a><!----></div>
107
+ </li><li class="lg:flex-1 [&_img]:w-full [&_img]:object-cover">
108
+ <div class="mx-auto overflow-x-hidden"><a href="/banner-3" class="[&amp;_img]:max-w-full"><!--[--><!--[--><picture>
109
+ <source type="image/avif" srcset="/_astro/rect89_ZAjmIj.avif 1536w,/_astro/rect89_2uIqYp.avif 2048w" sizes="1536px"><source type="image/webp" srcset="/_astro/rect89_Z1rGPGT.webp 1536w,/_astro/rect89_1DkX0O.webp 2048w" sizes="1536px">
110
+ <img alt="" src="/_astro/rect89_1DkX0O.webp" loading="lazy" decoding="async" fetchpriority="low" class="hidden md:block mx-auto max-w-screen-2xl" width="1201" height="311">
111
+ </picture>
112
+ <picture>
113
+ <source type="image/avif" srcset="/_astro/headphone_247ud8.avif 720w,/_astro/headphone_22qtrt.avif 856w" sizes="640px"><source type="image/webp" srcset="/_astro/headphone_Z1hoMcQ.webp 720w,/_astro/headphone_Z1j5MXv.webp 856w" sizes="640px">
114
+ <img alt="" src="/_astro/headphone_Z1j5MXv.webp" loading="lazy" decoding="async" fetchpriority="low" class="md:hidden mx-auto max-w-screen-sm" width="480" height="320">
115
+ </picture><!--]--><!--]--></a><!----></div>
116
+ </li>
117
+ </ul>
118
+ </section>
119
+ </article>
120
+ </main>
121
+
122
+
123
+
124
+
125
+
126
+
127
+ <div id="teleported-bottom" class="relative z-[19]"></div>
128
+ <picture data-alt="Icon" class="hidden absolute" style="bottom: -1000px">
129
+ <source type="image/png" srcset="/_astro/ecom-icon_Zo1CLq.png 32w,/_astro/ecom-icon_CDmhA.png 192w,/_astro/ecom-icon_Z27EX9f.png 512w" sizes="32px">
130
+
131
+ </picture>
132
+ </body>
133
+
134
+ </html>
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.6adaff02.mjs';
3
+ import './astro.a7611b51.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,21 +14,14 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.501582b9.mjs';
18
- import 'node:fs/promises';
19
- import 'node:path';
20
- import 'node:url';
21
- import 'http-cache-semantics';
22
- import 'node:os';
23
- import 'image-size';
24
- import 'magic-string';
25
- import 'node:stream';
17
+ import './pages/_...slug_.astro.0f33557e.mjs';
26
18
  import '@cloudcommerce/api';
27
19
  import 'node:events';
20
+ import 'node:path';
28
21
  import '@cloudcommerce/config';
29
22
  /* empty css */import '@vueuse/core';
30
23
  import '@headlessui/vue';
31
24
 
32
- const page = () => import('./pages/_...slug_.astro.501582b9.mjs').then(n => n.f);
25
+ const page = () => import('./pages/_...slug_.astro.0f33557e.mjs').then(n => n.f);
33
26
 
34
27
  export { page };
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.6adaff02.mjs';
3
+ import './astro.a7611b51.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,21 +14,14 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.501582b9.mjs';
18
- import 'node:fs/promises';
19
- import 'node:path';
20
- import 'node:url';
21
- import 'http-cache-semantics';
22
- import 'node:os';
23
- import 'image-size';
24
- import 'magic-string';
25
- import 'node:stream';
17
+ import './pages/_...slug_.astro.0f33557e.mjs';
26
18
  import '@cloudcommerce/api';
27
19
  import 'node:events';
20
+ import 'node:path';
28
21
  import '@cloudcommerce/config';
29
22
  /* empty css */import '@vueuse/core';
30
23
  import '@headlessui/vue';
31
24
 
32
- const page = () => import('./pages/account.astro.53400a42.mjs');
25
+ const page = () => import('./pages/account.astro.9325adb2.mjs');
33
26
 
34
27
  export { page };
@@ -261,7 +261,7 @@ function createComponent(arg1, moduleId, propagation) {
261
261
  }
262
262
  }
263
263
 
264
- const ASTRO_VERSION = "2.10.2";
264
+ const ASTRO_VERSION = "2.10.7";
265
265
 
266
266
  function createAstroGlobFn() {
267
267
  const globHandler = (importMetaGlobResult) => {
@@ -461,6 +461,7 @@ function unescapeHTML(str) {
461
461
  const PROP_TYPE = {
462
462
  Value: 0,
463
463
  JSON: 1,
464
+ // Actually means Array
464
465
  RegExp: 2,
465
466
  Date: 3,
466
467
  Map: 4,
@@ -509,16 +510,10 @@ function convertToSerializedForm(value, metadata = {}, parents = /* @__PURE__ */
509
510
  return [PROP_TYPE.RegExp, value.source];
510
511
  }
511
512
  case "[object Map]": {
512
- return [
513
- PROP_TYPE.Map,
514
- JSON.stringify(serializeArray(Array.from(value), metadata, parents))
515
- ];
513
+ return [PROP_TYPE.Map, serializeArray(Array.from(value), metadata, parents)];
516
514
  }
517
515
  case "[object Set]": {
518
- return [
519
- PROP_TYPE.Set,
520
- JSON.stringify(serializeArray(Array.from(value), metadata, parents))
521
- ];
516
+ return [PROP_TYPE.Set, serializeArray(Array.from(value), metadata, parents)];
522
517
  }
523
518
  case "[object BigInt]": {
524
519
  return [PROP_TYPE.BigInt, value.toString()];
@@ -527,16 +522,16 @@ function convertToSerializedForm(value, metadata = {}, parents = /* @__PURE__ */
527
522
  return [PROP_TYPE.URL, value.toString()];
528
523
  }
529
524
  case "[object Array]": {
530
- return [PROP_TYPE.JSON, JSON.stringify(serializeArray(value, metadata, parents))];
525
+ return [PROP_TYPE.JSON, serializeArray(value, metadata, parents)];
531
526
  }
532
527
  case "[object Uint8Array]": {
533
- return [PROP_TYPE.Uint8Array, JSON.stringify(Array.from(value))];
528
+ return [PROP_TYPE.Uint8Array, Array.from(value)];
534
529
  }
535
530
  case "[object Uint16Array]": {
536
- return [PROP_TYPE.Uint16Array, JSON.stringify(Array.from(value))];
531
+ return [PROP_TYPE.Uint16Array, Array.from(value)];
537
532
  }
538
533
  case "[object Uint32Array]": {
539
- return [PROP_TYPE.Uint32Array, JSON.stringify(Array.from(value))];
534
+ return [PROP_TYPE.Uint32Array, Array.from(value)];
540
535
  }
541
536
  default: {
542
537
  if (value !== null && typeof value === "object") {
@@ -744,7 +739,7 @@ function isHeadAndContent(obj) {
744
739
  return typeof obj === "object" && !!obj[headAndContentSym];
745
740
  }
746
741
 
747
- var astro_island_prebuilt_default = `(()=>{var d;{let p={0:t=>t,1:t=>JSON.parse(t,a),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(JSON.parse(t,a)),5:t=>new Set(JSON.parse(t,a)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(JSON.parse(t)),9:t=>new Uint16Array(JSON.parse(t)),10:t=>new Uint32Array(JSON.parse(t))},a=(t,r)=>{if(t===""||!Array.isArray(r))return r;let[s,i]=r;return s in p?p[s](i):void 0};customElements.get("astro-island")||customElements.define("astro-island",(d=class extends HTMLElement{constructor(){super(...arguments);this.hydrate=async()=>{var o;if(!this.hydrator||!this.isConnected)return;let r=(o=this.parentElement)==null?void 0:o.closest("astro-island[ssr]");if(r){r.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let s=this.querySelectorAll("astro-slot"),i={},c=this.querySelectorAll("template[data-astro-template]");for(let e of c){let n=e.closest(this.tagName);n!=null&&n.isSameNode(this)&&(i[e.getAttribute("data-astro-template")||"default"]=e.innerHTML,e.remove())}for(let e of s){let n=e.closest(this.tagName);n!=null&&n.isSameNode(this)&&(i[e.getAttribute("name")||"default"]=e.innerHTML)}let l;try{l=this.hasAttribute("props")?JSON.parse(this.getAttribute("props"),a):{}}catch(e){let n=this.getAttribute("component-url")||"<unknown>",h=this.getAttribute("component-export");throw h&&(n+=\` (export \${h})\`),console.error(\`[hydrate] Error parsing props for component \${n}\`,this.getAttribute("props"),e),e}await this.hydrator(this)(this.Component,l,i,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))}}connectedCallback(){!this.hasAttribute("await-children")||this.firstChild?this.childrenConnectedCallback():new MutationObserver((r,s)=>{s.disconnect(),setTimeout(()=>this.childrenConnectedCallback(),0)}).observe(this,{childList:!0})}async childrenConnectedCallback(){let r=this.getAttribute("before-hydration-url");r&&await import(r),this.start()}start(){let r=JSON.parse(this.getAttribute("opts")),s=this.getAttribute("client");if(Astro[s]===void 0){window.addEventListener(\`astro:\${s}\`,()=>this.start(),{once:!0});return}Astro[s](async()=>{let i=this.getAttribute("renderer-url"),[c,{default:l}]=await Promise.all([import(this.getAttribute("component-url")),i?import(i):()=>()=>{}]),o=this.getAttribute("component-export")||"default";if(!o.includes("."))this.Component=c[o];else{this.Component=c;for(let e of o.split("."))this.Component=this.Component[e]}return this.hydrator=l,this.hydrate},r,this)}attributeChangedCallback(){this.hydrate()}},d.observedAttributes=["props"],d))}})();`;
742
+ var astro_island_prebuilt_default = `(()=>{var d;{let p={0:t=>u(t),1:t=>l(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(l(t)),5:t=>new Set(l(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t)},h=t=>{let[e,n]=t;return e in p?p[e](n):void 0},l=t=>t.map(h),u=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([e,n])=>[e,h(n)]));customElements.get("astro-island")||customElements.define("astro-island",(d=class extends HTMLElement{constructor(){super(...arguments);this.hydrate=async()=>{var i;if(!this.hydrator||!this.isConnected)return;let e=(i=this.parentElement)==null?void 0:i.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let n=this.querySelectorAll("astro-slot"),o={},a=this.querySelectorAll("template[data-astro-template]");for(let r of a){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(o[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of n){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(o[r.getAttribute("name")||"default"]=r.innerHTML)}let c;try{c=this.hasAttribute("props")?u(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",y=this.getAttribute("component-export");throw y&&(s+=\` (export \${y})\`),console.error(\`[hydrate] Error parsing props for component \${s}\`,this.getAttribute("props"),r),r}await this.hydrator(this)(this.Component,c,o,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))}}connectedCallback(){!this.hasAttribute("await-children")||this.firstChild?this.childrenConnectedCallback():new MutationObserver((e,n)=>{n.disconnect(),setTimeout(()=>this.childrenConnectedCallback(),0)}).observe(this,{childList:!0})}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}start(){let e=JSON.parse(this.getAttribute("opts")),n=this.getAttribute("client");if(Astro[n]===void 0){window.addEventListener(\`astro:\${n}\`,()=>this.start(),{once:!0});return}Astro[n](async()=>{let o=this.getAttribute("renderer-url"),[a,{default:c}]=await Promise.all([import(this.getAttribute("component-url")),o?import(o):()=>()=>{}]),i=this.getAttribute("component-export")||"default";if(!i.includes("."))this.Component=a[i];else{this.Component=a;for(let r of i.split("."))this.Component=this.Component[r]}return this.hydrator=c,this.hydrate},e,this)}attributeChangedCallback(){this.hydrate()}},d.observedAttributes=["props"],d))}})();`;
748
743
 
749
744
  const ISLAND_STYLES = `<style>astro-island,astro-slot,astro-static-slot{display:contents}</style>`;
750
745
  function determineIfNeedsHydrationScript(result) {
@@ -2649,9 +2644,8 @@ async function callEndpoint(mod, env, ctx, onRequest) {
2649
2644
  }
2650
2645
  }
2651
2646
  return {
2647
+ ...response,
2652
2648
  type: "simple",
2653
- body: response.body,
2654
- encoding: response.encoding,
2655
2649
  cookies: context.cookies
2656
2650
  };
2657
2651
  }
@@ -3456,7 +3450,6 @@ class App {
3456
3450
  }
3457
3451
  return response.response;
3458
3452
  } else {
3459
- const body = response.body;
3460
3453
  const headers = new Headers();
3461
3454
  const mimeType = mime.getType(url.pathname);
3462
3455
  if (mimeType) {
@@ -3464,7 +3457,7 @@ class App {
3464
3457
  } else {
3465
3458
  headers.set("Content-Type", "text/plain;charset=utf-8");
3466
3459
  }
3467
- const bytes = this.#encoder.encode(body);
3460
+ const bytes = response.encoding !== "binary" ? this.#encoder.encode(response.body) : response.body;
3468
3461
  headers.set("Content-Length", bytes.byteLength.toString());
3469
3462
  const newResponse = new Response(bytes, {
3470
3463
  status: 200,
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.6adaff02.mjs';
3
+ import './astro.a7611b51.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,21 +14,14 @@ import 'html-escaper';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.501582b9.mjs';
18
- import 'node:fs/promises';
19
- import 'node:path';
20
- import 'node:url';
21
- import 'http-cache-semantics';
22
- import 'node:os';
23
- import 'image-size';
24
- import 'magic-string';
25
- import 'node:stream';
17
+ import './pages/_...slug_.astro.0f33557e.mjs';
26
18
  import '@cloudcommerce/api';
27
19
  import 'node:events';
20
+ import 'node:path';
28
21
  import '@cloudcommerce/config';
29
22
  /* empty css */import '@vueuse/core';
30
23
  import '@headlessui/vue';
31
24
 
32
- const page = () => import('./pages/index.astro.f1104ab2.mjs').then(n => n.i);
25
+ const page = () => import('./pages/index.astro.0f31fa39.mjs').then(n => n.i);
33
26
 
34
27
  export { page };