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
@@ -1,5 +1,5 @@
1
- import { c as createAstro, a as createComponent, r as renderTemplate, b as renderComponent, m as maybeRenderHead, d as addAttribute, u as unescapeHTML, F as Fragment$1 } from '../astro.6adaff02.mjs';
2
- import { c as $$Picture, p as parseShippingPhrase, _ as _export_sfc, C as Carousel, d as CarouselControl, e as addProductToCart, P as Prices, l as loadRouteContext, $ as $$BaseHead, a as $$PageHeader, b as $$Base } from './_...slug_.astro.501582b9.mjs';
1
+ import { c as createAstro, a as createComponent, r as renderTemplate, b as renderComponent, m as maybeRenderHead, d as addAttribute, u as unescapeHTML, F as Fragment$1 } from '../astro.a7611b51.mjs';
2
+ import { $ as $$Picture, p as parseShippingPhrase, _ as _export_sfc, C as Carousel, a as CarouselControl, b as addProductToCart, P as Prices, l as loadRouteContext, c as $$BaseHead, d as $$PageHeader, e as $$Base } from './_...slug_.astro.0f33557e.mjs';
3
3
  import { ref, shallowReactive, computed, useSSRContext, defineComponent, mergeProps, createVNode, resolveDynamicComponent, withCtx, renderSlot, createTextVNode, toDisplayString, withDirectives, vShow, openBlock, createBlock, Fragment, renderList, resolveComponent, createCommentVNode, withModifiers, withAsyncContext } from 'vue';
4
4
  import api from '@cloudcommerce/api';
5
5
  import { inStock, price, name, img, onPromotion } from '@ecomplus/utils';
@@ -234,8 +234,7 @@ const $$BannerPictures = createComponent(async ($$result, $$props, $$slots) => {
234
234
  if (!mobileWidths?.length) {
235
235
  mobileWidths = [720, 856];
236
236
  }
237
- return renderTemplate`${img && renderTemplate`${renderComponent($$result, "Picture", $$Picture, { "src": img, "alt": alt || "", "widths": widths, "fetchpriority": index === 0 ? "high" : "low", "loading": index === 0 ? "eager" : "lazy", "class": `${mobileImg ? "hidden md:block " : ""}mx-auto ${className}` })}`}
238
- ${mobileImg && renderTemplate`${renderComponent($$result, "Picture", $$Picture, { "src": mobileImg, "alt": alt || "", "widths": mobileWidths, "fetchpriority": index === 0 ? "high" : "low", "loading": index === 0 ? "eager" : "lazy", "class": `md:hidden mx-auto ${mobileClass}` })}`}`;
237
+ return renderTemplate`${img && renderTemplate`${renderComponent($$result, "Picture", $$Picture, { "src": img, "alt": alt || "", "widths": widths, "fetchpriority": index === 0 ? "high" : "low", "loading": index === 0 ? "eager" : "lazy", "class": `${mobileImg ? "hidden md:block " : ""}mx-auto ${className}` })}`}${mobileImg && renderTemplate`${renderComponent($$result, "Picture", $$Picture, { "src": mobileImg, "alt": alt || "", "widths": mobileWidths, "fetchpriority": index === 0 ? "high" : "low", "loading": index === 0 ? "eager" : "lazy", "class": `md:hidden mx-auto ${mobileClass}` })}`}`;
239
238
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/components/BannerPictures.astro", void 0);
240
239
 
241
240
  const useBanner = (props) => {
@@ -492,13 +491,7 @@ const $$BannersGrid = createComponent(async ($$result, $$props, $$slots) => {
492
491
  const Astro2 = $$result.createAstro($$Astro$4, $$props, $$slots);
493
492
  Astro2.self = $$BannersGrid;
494
493
  const { banners } = Astro2.props;
495
- return renderTemplate`${maybeRenderHead()}<section class="ui-section">
496
- <ul class="flex flex-wrap lg:flex-nowrap gap-4">
497
- ${banners.map((banner) => renderTemplate`<li class="lg:flex-1 [&_img]:w-full [&_img]:object-cover">
498
- ${renderComponent($$result, "Banner", Banner, { ...banner }, { "picture": ($$result2) => renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { ...banner, "slot": "picture" })}` })}
499
- </li>`)}
500
- </ul>
501
- </section>`;
494
+ return renderTemplate`${maybeRenderHead()}<section class="ui-section"><ul class="flex flex-wrap lg:flex-nowrap gap-4">${banners.map((banner) => renderTemplate`<li class="lg:flex-1 [&_img]:w-full [&_img]:object-cover">${renderComponent($$result, "Banner", Banner, { ...banner }, { "picture": ($$result2) => renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { ...banner, "slot": "picture" })}` })}</li>`)}</ul></section>`;
502
495
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/BannersGrid.astro", void 0);
503
496
 
504
497
  const useProductCard = (props) => {
@@ -889,8 +882,7 @@ const $$Sections = createComponent(async ($$result, $$props, $$slots) => {
889
882
  return { props: content };
890
883
  }
891
884
  });
892
- return renderTemplate`${maybeRenderHead()}<article class="my-9 md:my-12">
893
- ${sections.map(({ type, props }) => {
885
+ return renderTemplate`${maybeRenderHead()}<article class="my-9 md:my-12">${sections.map(({ type, props }) => {
894
886
  switch (type) {
895
887
  case "product-shelf":
896
888
  return renderTemplate`${renderComponent($$result, "ProductShelf", ProductShelf, { ...props, "client:visible": true, "client:component-hydration": "visible", "client:component-path": "~/components/ProductShelf.vue", "client:component-export": "default" })}`;
@@ -901,8 +893,7 @@ const $$Sections = createComponent(async ($$result, $$props, $$slots) => {
901
893
  default:
902
894
  return renderTemplate`<div${addAttribute(type, "data-section")}></div>`;
903
895
  }
904
- })}
905
- </article>`;
896
+ })}</article>`;
906
897
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/main/Sections.astro", void 0);
907
898
 
908
899
  const $$Astro$2 = createAstro("https://ecom2-demo.web.app");
@@ -912,10 +903,7 @@ const $$Home = createComponent(async ($$result, $$props, $$slots) => {
912
903
  const { routeContext } = Astro2.locals;
913
904
  const { heroSlider } = await usePageHero({ routeContext });
914
905
  const heroSlides = heroSlider.slides;
915
- return renderTemplate`${maybeRenderHead()}<main>
916
- ${heroSlider.slides.length && renderTemplate`${renderComponent($$result, "HeroSlider", HeroSlider, { ...heroSlider, "client:load": true, "client:component-hydration": "load", "client:component-path": "~/components/HeroSlider.vue", "client:component-export": "default" }, { "picture-0": ($$result2) => renderTemplate`${heroSlides[0] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-0", ...heroSlides[0], "index": 0 })}`}`, "picture-1": ($$result2) => renderTemplate`${heroSlides[1] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-1", ...heroSlides[1], "index": 1 })}`}`, "picture-2": ($$result2) => renderTemplate`${heroSlides[2] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-2", ...heroSlides[2], "index": 2 })}`}`, "picture-3": ($$result2) => renderTemplate`${heroSlides[3] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-3", ...heroSlides[3], "index": 3 })}`}`, "picture-4": ($$result2) => renderTemplate`${heroSlides[4] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-4", ...heroSlides[4], "index": 4 })}`}`, "picture-5": ($$result2) => renderTemplate`${heroSlides[5] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-5", ...heroSlides[5], "index": 5 })}`}`, "picture-6": ($$result2) => renderTemplate`${heroSlides[6] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-6", ...heroSlides[6], "index": 6 })}`}`, "picture-7": ($$result2) => renderTemplate`${heroSlides[7] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-7", ...heroSlides[7], "index": 7 })}`}`, "picture-8": ($$result2) => renderTemplate`${heroSlides[8] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-8", ...heroSlides[8], "index": 8 })}`}`, "picture-9": ($$result2) => renderTemplate`${heroSlides[9] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-9", ...heroSlides[9], "index": 9 })}`}` })}`}
917
- ${renderComponent($$result, "Sections", $$Sections, {})}
918
- </main>`;
906
+ return renderTemplate`${maybeRenderHead()}<main>${heroSlider.slides.length && renderTemplate`${renderComponent($$result, "HeroSlider", HeroSlider, { ...heroSlider, "client:load": true, "client:component-hydration": "load", "client:component-path": "~/components/HeroSlider.vue", "client:component-export": "default" }, { "picture-0": ($$result2) => renderTemplate`${heroSlides[0] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-0", ...heroSlides[0], "index": 0 })}`}`, "picture-1": ($$result2) => renderTemplate`${heroSlides[1] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-1", ...heroSlides[1], "index": 1 })}`}`, "picture-2": ($$result2) => renderTemplate`${heroSlides[2] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-2", ...heroSlides[2], "index": 2 })}`}`, "picture-3": ($$result2) => renderTemplate`${heroSlides[3] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-3", ...heroSlides[3], "index": 3 })}`}`, "picture-4": ($$result2) => renderTemplate`${heroSlides[4] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-4", ...heroSlides[4], "index": 4 })}`}`, "picture-5": ($$result2) => renderTemplate`${heroSlides[5] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-5", ...heroSlides[5], "index": 5 })}`}`, "picture-6": ($$result2) => renderTemplate`${heroSlides[6] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-6", ...heroSlides[6], "index": 6 })}`}`, "picture-7": ($$result2) => renderTemplate`${heroSlides[7] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-7", ...heroSlides[7], "index": 7 })}`}`, "picture-8": ($$result2) => renderTemplate`${heroSlides[8] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-8", ...heroSlides[8], "index": 8 })}`}`, "picture-9": ($$result2) => renderTemplate`${heroSlides[9] && renderTemplate`${renderComponent($$result2, "BannerPictures", $$BannerPictures, { "slot": "picture-9", ...heroSlides[9], "index": 9 })}`}` })}`}${renderComponent($$result, "Sections", $$Sections, {})}</main>`;
919
907
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/main/Home.astro", void 0);
920
908
 
921
909
  const $$Astro$1 = createAstro("https://ecom2-demo.web.app");
@@ -932,14 +920,7 @@ const $$Index$1 = createComponent(async ($$result, $$props, $$slots) => {
932
920
  }
933
921
  loadError = err;
934
922
  }
935
- return renderTemplate`<html${addAttribute(routeContext?.lang.replace("_", "-"), "lang")}>
936
- ${routeContext && renderTemplate`${renderComponent($$result, "Base", $$Base, {}, { "base-head": ($$result2) => renderTemplate`${renderComponent($$result2, "BaseHead", $$BaseHead, { "slot": "base-head" })}`, "default": ($$result2) => renderTemplate`
937
-
938
- ${renderComponent($$result2, "PageHeader", $$PageHeader, {})}
939
- ${renderComponent($$result2, "HomeMain", $$Home, {})}
940
- ` })}`}
941
- ${loadError && renderTemplate`${renderComponent($$result, "Fragment", Fragment$1, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(loadError.responseHTML)}` })}`}
942
- </html>`;
923
+ return renderTemplate`<html${addAttribute(routeContext?.lang.replace("_", "-"), "lang")}>${routeContext && renderTemplate`${renderComponent($$result, "Base", $$Base, {}, { "base-head": ($$result2) => renderTemplate`${renderComponent($$result2, "BaseHead", $$BaseHead, { "slot": "base-head" })}`, "default": ($$result2) => renderTemplate`${renderComponent($$result2, "PageHeader", $$PageHeader, {})}${renderComponent($$result2, "HomeMain", $$Home, {})}` })}`}${loadError && renderTemplate`${renderComponent($$result, "Fragment", Fragment$1, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(loadError.responseHTML)}` })}`}</html>`;
943
924
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro", void 0);
944
925
 
945
926
  const $$file$1 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro";
@@ -1,5 +1,5 @@
1
- import { c as createAstro, a as createComponent, r as renderTemplate, m as maybeRenderHead, d as addAttribute, b as renderComponent } from '../astro.6adaff02.mjs';
2
- import { l as loadRouteContext, $ as $$BaseHead, a as $$PageHeader, b as $$Base } from './_...slug_.astro.501582b9.mjs';
1
+ import { c as createAstro, a as createComponent, r as renderTemplate, m as maybeRenderHead, d as addAttribute, b as renderComponent } from '../astro.a7611b51.mjs';
2
+ import { l as loadRouteContext, c as $$BaseHead, d as $$PageHeader, e as $$Base } from './_...slug_.astro.0f33557e.mjs';
3
3
  import 'path-to-regexp';
4
4
  import 'cookie';
5
5
  import '@astrojs/internal-helpers/path';
@@ -10,16 +10,9 @@ import 'node:tls';
10
10
  import 'mime';
11
11
  import 'string-width';
12
12
  import 'html-escaper';
13
- import 'node:fs/promises';
14
- import 'node:path';
15
- import 'node:url';
16
- import 'http-cache-semantics';
17
- import 'node:os';
18
- import 'image-size';
19
- import 'magic-string';
20
- import 'node:stream';
21
13
  import '@cloudcommerce/api';
22
14
  import 'node:events';
15
+ import 'node:path';
23
16
  import '@cloudcommerce/config';
24
17
  import '@ecomplus/utils';
25
18
  /* empty css */import 'vue';
@@ -28,38 +21,28 @@ import 'vue/server-renderer';
28
21
  import '@headlessui/vue';
29
22
 
30
23
  const $$Astro$1 = createAstro("https://ecom2-demo.web.app");
31
- const $$Fallback$1 = createComponent(async ($$result, $$props, $$slots) => {
24
+ const $$Fallback = createComponent(async ($$result, $$props, $$slots) => {
32
25
  const Astro2 = $$result.createAstro($$Astro$1, $$props, $$slots);
33
- Astro2.self = $$Fallback$1;
34
- return renderTemplate`${maybeRenderHead()}<main>
35
- <h1>Error :/</h1>
36
- <p class="instructions">
37
- Check out the <code>src/pages</code> directory to get started.<br>
38
- <strong>Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
39
- </p>
40
- </main>`;
26
+ Astro2.self = $$Fallback;
27
+ return renderTemplate`${maybeRenderHead()}<main><h1>Error :/</h1><p class="instructions">
28
+ Check out the <code>src/pages</code> directory to get started.<br><strong>Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
29
+ </p></main>`;
41
30
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/main/Fallback.astro", void 0);
42
31
 
43
32
  const $$Astro = createAstro("https://ecom2-demo.web.app");
44
- const $$Fallback = createComponent(async ($$result, $$props, $$slots) => {
33
+ const $$fallback = createComponent(async ($$result, $$props, $$slots) => {
45
34
  const Astro2 = $$result.createAstro($$Astro, $$props, $$slots);
46
- Astro2.self = $$Fallback;
35
+ Astro2.self = $$fallback;
47
36
  let routeContext;
48
37
  try {
49
38
  routeContext = await loadRouteContext(Astro2);
50
39
  } catch (err) {
51
40
  return err.astroResponse;
52
41
  }
53
- return renderTemplate`<html${addAttribute(routeContext?.lang.replace("_", "-"), "lang")}>
54
- ${renderComponent($$result, "Base", $$Base, {}, { "base-head": ($$result2) => renderTemplate`${renderComponent($$result2, "BaseHead", $$BaseHead, { "slot": "base-head" })}`, "default": ($$result2) => renderTemplate`
55
-
56
- ${renderComponent($$result2, "PageHeader", $$PageHeader, {})}
57
- ${renderComponent($$result2, "FallbackMain", $$Fallback$1, {})}
58
- ` })}
59
- </html>`;
60
- }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/fallback.astro", void 0);
42
+ return renderTemplate`<html${addAttribute(routeContext?.lang.replace("_", "-"), "lang")}>${renderComponent($$result, "Base", $$Base, {}, { "base-head": ($$result2) => renderTemplate`${renderComponent($$result2, "BaseHead", $$BaseHead, { "slot": "base-head" })}`, "default": ($$result2) => renderTemplate`${renderComponent($$result2, "PageHeader", $$PageHeader, {})}${renderComponent($$result2, "FallbackMain", $$Fallback, {})}` })}</html>`;
43
+ }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/~fallback.astro", void 0);
61
44
 
62
- const $$file = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/fallback.astro";
63
- const $$url = "/fallback";
45
+ const $$file = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/~fallback.astro";
46
+ const $$url = "/~fallback";
64
47
 
65
- export { $$Fallback as default, $$file as file, $$url as url };
48
+ export { $$fallback as default, $$file as file, $$url as url };
@@ -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/fallback.astro.8d1c6076.mjs');
25
+ const page = () => import('./pages/~fallback.astro.bd93f01e.mjs');
33
26
 
34
27
  export { page };
@@ -3,11 +3,12 @@ import { webcrypto } from 'node:crypto';
3
3
  import { ByteLengthQueuingStrategy, CountQueuingStrategy, ReadableByteStreamController, ReadableStream, ReadableStreamBYOBReader, ReadableStreamBYOBRequest, ReadableStreamDefaultController, ReadableStreamDefaultReader, TransformStream, WritableStream, WritableStreamDefaultController, WritableStreamDefaultWriter } from 'node:stream/web';
4
4
  import { File, FormData, Headers, Request, Response, fetch } from 'undici';
5
5
  import { setTimeout as setTimeout$1, clearTimeout as clearTimeout$1 } from 'node:timers';
6
- import { N as NodeApp, g as deserializeManifest } from './chunks/astro.6adaff02.mjs';
6
+ import { N as NodeApp, g as deserializeManifest } from './chunks/astro.a7611b51.mjs';
7
7
  import { Readable } from 'stream';
8
8
  import https from 'https';
9
9
  import path from 'node:path';
10
10
  import { fileURLToPath } from 'node:url';
11
+ import os from 'os';
11
12
  import fs from 'node:fs';
12
13
  import http from 'node:http';
13
14
  import send from 'send';
@@ -24,13 +25,7 @@ import 'html-escaper';
24
25
  import 'vue';
25
26
  import 'vue/server-renderer';
26
27
  import '@ecomplus/utils';
27
- import './chunks/pages/_...slug_.astro.501582b9.mjs';
28
- import 'node:fs/promises';
29
- import 'http-cache-semantics';
30
- import 'node:os';
31
- import 'image-size';
32
- import 'magic-string';
33
- import 'node:stream';
28
+ import './chunks/pages/_...slug_.astro.0f33557e.mjs';
34
29
  import '@cloudcommerce/api';
35
30
  import 'node:events';
36
31
  import '@cloudcommerce/config';
@@ -2677,6 +2672,33 @@ async function writeWebResponse(app, res, webResponse) {
2677
2672
  res.end();
2678
2673
  }
2679
2674
 
2675
+ const wildcardHosts = /* @__PURE__ */ new Set(["0.0.0.0", "::", "0000:0000:0000:0000:0000:0000:0000:0000"]);
2676
+ function getNetworkAddress(protocol = "http", hostname, port, base) {
2677
+ const NetworkAddress = {
2678
+ local: [],
2679
+ network: []
2680
+ };
2681
+ Object.values(os.networkInterfaces()).flatMap((nInterface) => nInterface ?? []).filter(
2682
+ (detail) => detail && detail.address && (detail.family === "IPv4" || // @ts-expect-error Node 18.0 - 18.3 returns number
2683
+ detail.family === 4)
2684
+ ).forEach((detail) => {
2685
+ let host = detail.address.replace(
2686
+ "127.0.0.1",
2687
+ hostname === void 0 || wildcardHosts.has(hostname) ? "localhost" : hostname
2688
+ );
2689
+ if (host.includes(":")) {
2690
+ host = `[${host}]`;
2691
+ }
2692
+ const url = `${protocol}://${host}:${port}${base ? base : ""}`;
2693
+ if (detail.address.includes("127.0.0.1")) {
2694
+ NetworkAddress.local.push(url);
2695
+ } else {
2696
+ NetworkAddress.network.push(url);
2697
+ }
2698
+ });
2699
+ return NetworkAddress;
2700
+ }
2701
+
2680
2702
  function parsePathname(pathname, host, port) {
2681
2703
  try {
2682
2704
  const urlPathname = new URL(pathname, `http://${host}:${port}`).pathname;
@@ -2802,7 +2824,17 @@ function startServer$1(app, options) {
2802
2824
  handler
2803
2825
  );
2804
2826
  const protocol = server.server instanceof https.Server ? "https" : "http";
2805
- console.log(`Server listening on ${protocol}://${host}:${port}`);
2827
+ const address = getNetworkAddress(protocol, host, port);
2828
+ if (host === void 0) {
2829
+ console.log(
2830
+ `Preview server listening on
2831
+ local: ${address.local[0]}
2832
+ network: ${address.network[0]}
2833
+ `
2834
+ );
2835
+ } else {
2836
+ console.log(`Preview server listening on ${address.local[0]}`);
2837
+ }
2806
2838
  return {
2807
2839
  server,
2808
2840
  done: server.closed()
@@ -2833,13 +2865,12 @@ const adapter = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
2833
2865
  start
2834
2866
  }, Symbol.toStringTag, { value: 'Module' }));
2835
2867
 
2836
- const _page0 = () => import('./chunks/endpoint@_@js.b79eed3b.mjs');
2837
- const _page1 = () => import('./chunks/index@_@astro.66b84ac2.mjs');
2838
- const _page2 = () => import('./chunks/fallback@_@astro.9f73db0f.mjs');
2839
- const _page3 = () => import('./chunks/index@_@astro.0221a7bd.mjs');
2840
- const _page4 = () => import('./chunks/account@_@astro.3e90f29a.mjs');
2841
- const _page5 = () => import('./chunks/_...c5a36021.mjs');const pageMap = new Map([["../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint.js", _page0],["src/pages/index.astro", _page1],["src/pages/fallback.astro", _page2],["src/pages/app/index.astro", _page3],["src/pages/app/account.astro", _page4],["src/pages/[...slug].astro", _page5]]);
2842
- const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"endpoint","route":"/_image","pattern":"^\\/_image$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/","type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/fallback","type":"page","pattern":"^\\/fallback\\/?$","segments":[[{"content":"fallback","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/fallback.astro","pathname":"/fallback","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app","type":"page","pattern":"^\\/app\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/index.astro","pathname":"/app","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app/account","type":"page","pattern":"^\\/app\\/account\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}],[{"content":"account","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/account.astro","pathname":"/app/account","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.07c1fa58.css"}],"routeData":{"route":"/[...slug]","type":"page","pattern":"^(?:\\/(.*?))?\\/?$","segments":[[{"content":"...slug","dynamic":true,"spread":true}]],"params":["...slug"],"component":"src/pages/[...slug].astro","prerender":false,"_meta":{"trailingSlash":"ignore"}}}],"site":"https://ecom2-demo.web.app","base":"/","compressHTML":false,"markdown":{"drafts":false,"syntaxHighlight":"shiki","shikiConfig":{"langs":[],"theme":"github-dark","wrap":false},"remarkPlugins":[],"rehypePlugins":[],"remarkRehype":{},"gfm":true,"smartypants":true},"componentMetadata":[["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/fallback.astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var i=t=>{let e=async()=>{await(await t())()};\"requestIdleCallback\"in window?window.requestIdleCallback(e):setTimeout(e,200)};(self.Astro||(self.Astro={})).idle=i;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var s=(i,t)=>{let a=async()=>{await(await i())()};if(t.value){let e=matchMedia(t.value);e.matches?a():e.addEventListener(\"change\",a,{once:!0})}};(self.Astro||(self.Astro={})).media=s;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var r=(i,c,n)=>{let s=async()=>{await(await i())()},t=new IntersectionObserver(e=>{for(let o of e)if(o.isIntersecting){t.disconnect(),s();break}});for(let e of n.children)t.observe(e)};(self.Astro||(self.Astro={})).visible=r;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000@astrojs-ssr-virtual-entry":"_@astrojs-ssr-virtual-entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000empty-middleware":"_empty-middleware.mjs","/src/pages/app/account.astro":"chunks/pages/account.astro.53400a42.mjs","/src/pages/fallback.astro":"chunks/pages/fallback.astro.8d1c6076.mjs","\u0000@astro-page:../../node_modules/.pnpm/@astrojs+image@0.17.3_astro@2.10.2_sharp@0.32.4/node_modules/@astrojs/image/dist/endpoint@_@js":"chunks/endpoint@_@js.b79eed3b.mjs","\u0000@astro-page:src/pages/index@_@astro":"chunks/index@_@astro.66b84ac2.mjs","\u0000@astro-page:src/pages/fallback@_@astro":"chunks/fallback@_@astro.9f73db0f.mjs","\u0000@astro-page:src/pages/app/index@_@astro":"chunks/index@_@astro.0221a7bd.mjs","\u0000@astro-page:src/pages/app/account@_@astro":"chunks/account@_@astro.3e90f29a.mjs","\u0000@astro-page:src/pages/[...slug]@_@astro":"chunks/_...c5a36021.mjs","~/components/PitchBar.vue":"_astro/PitchBar.c2a2ad79.js","~/components/ProductShelf.vue":"_astro/ProductShelf.4a105932.js","@astrojs/vue/client.js":"_astro/client.9dbf6b61.js","~/components/HeroSlider.vue":"_astro/HeroSlider.8d2ea532.js","/astro/hoisted.js?q=0":"_astro/hoisted.572313d6.js","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"_astro/workbox-window.prod.es5.a7b12eab.js","~/components/ShopHeader.vue":"_astro/ShopHeader.2400b065.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/scripts/firebase-app.ts":"_astro/firebase-app.1df8af9a.js","astro:scripts/before-hydration.js":""},"assets":["/_astro/_...slug_.07c1fa58.css","/manifest.webmanifest","/robots.txt","/sw.js","/workbox-5e0bf4e4.js","/_astro/Carousel.63d511ab.js","/_astro/HeroSlider.8d2ea532.js","/_astro/PitchBar.c2a2ad79.js","/_astro/Prices.8572765c.js","/_astro/ProductShelf.4a105932.js","/_astro/ShopHeader.2400b065.js","/_astro/_plugin-vue_export-helper.48e557ba.js","/_astro/client.9dbf6b61.js","/_astro/firebase-app.1df8af9a.js","/_astro/hoisted.572313d6.js","/_astro/img.7def76a1.js","/_astro/index.c0c35ead.js","/_astro/preload-helper.cf010ec4.js","/_astro/session-utm.744b0db3.js","/_astro/workbox-window.prod.es5.a7b12eab.js","/img/icon.png","/img/large-icon.png","/img/uploads/banner2.webp","/img/uploads/ecom-icon.png","/img/uploads/headphone.webp","/img/uploads/logo.png","/img/uploads/og-image.png","/img/uploads/passion.webp","/img/uploads/rect8589.png","/img/uploads/rect859.png","/img/uploads/rect89.webp"]}), {
2868
+ const _page0 = () => import('./chunks/index@_@astro.42c693b9.mjs');
2869
+ const _page1 = () => import('./chunks/~fallback@_@astro.d17419ae.mjs');
2870
+ const _page2 = () => import('./chunks/index@_@astro.d898498a.mjs');
2871
+ const _page3 = () => import('./chunks/account@_@astro.a02ffb0b.mjs');
2872
+ const _page4 = () => import('./chunks/_...5323ec5a.mjs');const pageMap = new Map([["src/pages/index.astro", _page0],["src/pages/~fallback.astro", _page1],["src/pages/app/index.astro", _page2],["src/pages/app/account.astro", _page3],["src/pages/[...slug].astro", _page4]]);
2873
+ const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.a786e016.css"}],"routeData":{"route":"/","type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.a786e016.css"}],"routeData":{"route":"/~fallback","type":"page","pattern":"^\\/~fallback\\/?$","segments":[[{"content":"~fallback","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/~fallback.astro","pathname":"/~fallback","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app","type":"page","pattern":"^\\/app\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/index.astro","pathname":"/app","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/app/account","type":"page","pattern":"^\\/app\\/account\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}],[{"content":"account","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/account.astro","pathname":"/app/account","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.572313d6.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.a786e016.css"}],"routeData":{"route":"/[...slug]","type":"page","pattern":"^(?:\\/(.*?))?\\/?$","segments":[[{"content":"...slug","dynamic":true,"spread":true}]],"params":["...slug"],"component":"src/pages/[...slug].astro","prerender":false,"_meta":{"trailingSlash":"ignore"}}}],"site":"https://ecom2-demo.web.app","base":"/","compressHTML":true,"markdown":{"drafts":false,"syntaxHighlight":"shiki","shikiConfig":{"langs":[],"theme":"github-dark","wrap":false},"remarkPlugins":[],"rehypePlugins":[],"remarkRehype":{},"gfm":true,"smartypants":true},"componentMetadata":[["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro",{"propagation":"none","containsHead":true}],["/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/~fallback.astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var i=t=>{let e=async()=>{await(await t())()};\"requestIdleCallback\"in window?window.requestIdleCallback(e):setTimeout(e,200)};(self.Astro||(self.Astro={})).idle=i;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var s=(i,t)=>{let a=async()=>{await(await i())()};if(t.value){let e=matchMedia(t.value);e.matches?a():e.addEventListener(\"change\",a,{once:!0})}};(self.Astro||(self.Astro={})).media=s;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var r=(i,c,n)=>{let s=async()=>{await(await i())()},t=new IntersectionObserver(e=>{for(let o of e)if(o.isIntersecting){t.disconnect(),s();break}});for(let e of n.children)t.observe(e)};(self.Astro||(self.Astro={})).visible=r;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000@astrojs-ssr-virtual-entry":"_@astrojs-ssr-virtual-entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000empty-middleware":"_empty-middleware.mjs","/src/pages/app/account.astro":"chunks/pages/account.astro.9325adb2.mjs","/src/pages/~fallback.astro":"chunks/pages/~fallback.astro.bd93f01e.mjs","\u0000@astro-page:src/pages/index@_@astro":"chunks/index@_@astro.42c693b9.mjs","\u0000@astro-page:src/pages/~fallback@_@astro":"chunks/~fallback@_@astro.d17419ae.mjs","\u0000@astro-page:src/pages/app/index@_@astro":"chunks/index@_@astro.d898498a.mjs","\u0000@astro-page:src/pages/app/account@_@astro":"chunks/account@_@astro.a02ffb0b.mjs","\u0000@astro-page:src/pages/[...slug]@_@astro":"chunks/_...5323ec5a.mjs","~/components/PitchBar.vue":"_astro/PitchBar.c2a2ad79.js","@astrojs/vue/client.js":"_astro/client.9dbf6b61.js","~/components/HeroSlider.vue":"_astro/HeroSlider.8d2ea532.js","~/components/ProductShelf.vue":"_astro/ProductShelf.4a105932.js","/astro/hoisted.js?q=0":"_astro/hoisted.572313d6.js","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"_astro/workbox-window.prod.es5.a7b12eab.js","~/components/ShopHeader.vue":"_astro/ShopHeader.2400b065.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/scripts/firebase-app.ts":"_astro/firebase-app.1df8af9a.js","astro:scripts/before-hydration.js":""},"assets":["/_astro/_...slug_.a786e016.css","/manifest.webmanifest","/robots.txt","/sw.js","/workbox-5e0bf4e4.js","/_astro/Carousel.63d511ab.js","/_astro/HeroSlider.8d2ea532.js","/_astro/PitchBar.c2a2ad79.js","/_astro/Prices.8572765c.js","/_astro/ProductShelf.4a105932.js","/_astro/ShopHeader.2400b065.js","/_astro/_plugin-vue_export-helper.48e557ba.js","/_astro/client.9dbf6b61.js","/_astro/firebase-app.1df8af9a.js","/_astro/hoisted.572313d6.js","/_astro/img.7def76a1.js","/_astro/index.c0c35ead.js","/_astro/preload-helper.cf010ec4.js","/_astro/session-utm.744b0db3.js","/_astro/workbox-window.prod.es5.a7b12eab.js","/img/icon.png","/img/large-icon.png","/img/uploads/banner2.webp","/img/uploads/ecom-icon.png","/img/uploads/headphone.webp","/img/uploads/logo.png","/img/uploads/og-image.png","/img/uploads/passion.webp","/img/uploads/rect8589.png","/img/uploads/rect859.png","/img/uploads/rect89.webp"]}), {
2843
2874
  pageMap,
2844
2875
  renderers,
2845
2876
  });
@@ -0,0 +1,38 @@
1
+ ecom-icon_CDmhA.png,192,192
2
+ ecom-icon_Z27EX9f.png,512,512
3
+ ecom-icon_Zo1CLq.png,32,32
4
+ logo_1ug3XF.png,300,71
5
+ rect8589_1Sqf3x.png,856,213
6
+ rect8589_2wFECM.png,2048,509
7
+ rect8589_7mg8W.png,1536,382
8
+ rect859_1pj5UP.png,2048,509
9
+ rect859_HaXay.png,856,213
10
+ rect859_Z100iy0.png,1536,382
11
+ headphone_Z1hoMcQ.webp,720,480
12
+ headphone_Z1j5MXv.webp,856,571
13
+ logo_144owC.webp,300,71
14
+ passion_29BEzB.webp,856,571
15
+ passion_HYj6i.webp,1536,1024
16
+ passion_ZK2FPz.webp,2048,1365
17
+ rect8589_1EUYOa.webp,856,213
18
+ rect8589_Kv492.webp,2048,509
19
+ rect8589_Z1DNkkN.webp,1536,382
20
+ rect859_1Bqr36.webp,2048,509
21
+ rect859_xyq7d.webp,856,213
22
+ rect859_ZMRWqJ.webp,1536,382
23
+ rect89_1DkX0O.webp,2048,530
24
+ rect89_Z1rGPGT.webp,1536,398
25
+ headphone_22qtrt.avif,856,571
26
+ headphone_247ud8.avif,720,480
27
+ logo_Z1EIN1I.avif,300,71
28
+ passion_2sykkb.avif,2048,1365
29
+ passion_pVNbE.avif,856,571
30
+ passion_Z18ANwS.avif,1536,1024
31
+ rect8589_1VeSii.avif,2048,509
32
+ rect8589_Z1IS4wy.avif,856,213
33
+ rect8589_Zt4vbx.avif,1536,382
34
+ rect859_2dVuzq.avif,856,213
35
+ rect859_mPQHw.avif,1536,382
36
+ rect859_Z2i1RBz.avif,2048,509
37
+ rect89_2uIqYp.avif,2048,530
38
+ rect89_ZAjmIj.avif,1536,398
@@ -0,0 +1,11 @@
1
+ img/icon.png,512,512
2
+ img/large-icon.png,1024,1024
3
+ img/uploads/ecom-icon.png,1024,1024
4
+ img/uploads/logo.png,411,97
5
+ img/uploads/og-image.png,1200,1200
6
+ img/uploads/rect8589.png,1500,373
7
+ img/uploads/rect859.png,1500,373
8
+ img/uploads/banner2.webp,1200,311
9
+ img/uploads/headphone.webp,480,320
10
+ img/uploads/passion.webp,480,320
11
+ img/uploads/rect89.webp,1201,311
@@ -1,8 +1,8 @@
1
- import { h as server_default } from './chunks/astro.6adaff02.mjs';
1
+ import { h as server_default } from './chunks/astro.a7611b51.mjs';
2
2
  import { useSSRContext, defineComponent, computed, mergeProps, h, createSSRApp } from 'vue';
3
3
  import { ssrRenderSlotInner, ssrRenderAttrs, ssrRenderSlot, renderToString } from 'vue/server-renderer';
4
4
  import { img, imgSizes, i18n, formatMoney } from '@ecomplus/utils';
5
- import { _ as _export_sfc } from './chunks/pages/_...slug_.astro.501582b9.mjs';
5
+ import { _ as _export_sfc } from './chunks/pages/_...slug_.astro.0f33557e.mjs';
6
6
  import 'path-to-regexp';
7
7
  import 'cookie';
8
8
  import '@astrojs/internal-helpers/path';
@@ -13,16 +13,9 @@ import 'node:tls';
13
13
  import 'mime';
14
14
  import 'string-width';
15
15
  import 'html-escaper';
16
- import 'node:fs/promises';
17
- import 'node:path';
18
- import 'node:url';
19
- import 'http-cache-semantics';
20
- import 'node:os';
21
- import 'image-size';
22
- import 'magic-string';
23
- import 'node:stream';
24
16
  import '@cloudcommerce/api';
25
17
  import 'node:events';
18
+ import 'node:path';
26
19
  import '@cloudcommerce/config';
27
20
  /* empty css */import '@vueuse/core';
28
21
  import '@headlessui/vue';
@@ -0,0 +1 @@
1
+ ./dist/client/_astro/_...slug_.a786e016.css
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/storefront",
3
3
  "type": "module",
4
- "version": "0.23.2",
4
+ "version": "0.24.0",
5
5
  "description": "E-Com Plus Cloud Commerce storefront with Astro",
6
6
  "bin": {
7
7
  "storefront": "./scripts/build-prod.sh"
@@ -21,7 +21,7 @@
21
21
  "scripts": {
22
22
  "dev": "astro dev",
23
23
  "start": "astro dev --host",
24
- "build": "astro build",
24
+ "build:ssr": "astro build",
25
25
  "build:static": "BUILD_OUTPUT=static astro build",
26
26
  "build:prod": "bash scripts/build-prod.sh",
27
27
  "preview": "astro preview",
@@ -30,7 +30,7 @@
30
30
  },
31
31
  "dependencies": {
32
32
  "@astrojs/image": "0.17.3",
33
- "@astrojs/node": "5.3.2",
33
+ "@astrojs/node": "5.3.4",
34
34
  "@astrojs/vue": "2.2.1",
35
35
  "@cloudcommerce/api": "workspace:*",
36
36
  "@cloudcommerce/config": "workspace:*",
@@ -43,7 +43,7 @@
43
43
  "@iconify-json/logos": "^1.1.34",
44
44
  "@vite-pwa/astro": "^0.1.1",
45
45
  "@vueuse/core": "10.3.0",
46
- "astro": "2.10.2",
46
+ "astro": "2.10.9",
47
47
  "chroma-js": "^2.4.2",
48
48
  "dotenv": "^16.3.1",
49
49
  "firebase": "^10.1.0",
@@ -52,13 +52,14 @@
52
52
  "semver": "^7.5.4",
53
53
  "sharp": "^0.32.4",
54
54
  "tailwindcss": "^3.3.3",
55
- "unocss": "^0.54.2",
55
+ "unocss": "^0.55.0",
56
56
  "vite": "^4.4.9",
57
57
  "vite-plugin-pwa": "^0.16.4",
58
58
  "vue": "^3.3.4"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@cloudcommerce/eslint": "workspace:*",
62
- "@cloudcommerce/types": "workspace:*"
62
+ "@cloudcommerce/types": "workspace:*",
63
+ "@vue/runtime-core": "^3.3.4"
63
64
  }
64
65
  }
@@ -8,6 +8,8 @@ DEPLOY_RUNTIME=serverless npx astro build
8
8
  mv ./.cloudcommerce/sf-tmp-dist/_astro/*.{png,jpg,jpeg,webp,avif,svg} \
9
9
  ./dist/client/_astro/ \
10
10
  2>/dev/null
11
+ mv ./.cloudcommerce/sf-tmp-dist/~fallback/index.html ./dist/client/~fallback.html
12
+ mv ./.cloudcommerce/sf-tmp-dist/index.html ./dist/client/~index.html
11
13
  rm -rf ./.cloudcommerce/sf-tmp-dist
12
14
 
13
15
  identify -format "%f,%w,%h\n" \
@@ -4,8 +4,6 @@
4
4
  /// <reference types="../client" />
5
5
  /// <reference types="../server" />
6
6
 
7
- /* eslint-disable import/newline-after-import */
8
-
9
7
  declare module '*.vue' {
10
8
  import { type DefineComponent } from 'vue';
11
9
  const component: DefineComponent<{}, {}, any>;
@@ -11,8 +11,11 @@ const networkNames = [
11
11
  'youtube',
12
12
  'tiktok',
13
13
  'pinterest',
14
+ 'threads',
14
15
  ] as const;
15
- type NetworkName = typeof networkNames[number];
16
+
17
+ export type NetworkName = typeof networkNames[number];
18
+
16
19
  const socialNetworks: Partial<Record<NetworkName, string>> = {};
17
20
  networkNames.forEach((network: NetworkName) => {
18
21
  if (settings[network]) {
@@ -22,4 +25,8 @@ networkNames.forEach((network: NetworkName) => {
22
25
 
23
26
  export { settings, apiContext, socialNetworks };
24
27
 
25
- export type { NetworkName };
28
+ export const serviceLinks = settings.service_links;
29
+
30
+ export const paymentMethodFlags = settings.payment_methods;
31
+
32
+ export type PaymentMethodFlag = Exclude<typeof paymentMethodFlags, undefined>[number];
@@ -45,7 +45,7 @@ if (!mobileWidths?.length) {
45
45
  widths={widths}
46
46
  fetchpriority={index === 0 ? 'high' : 'low'}
47
47
  loading={index === 0 ? 'eager' : 'lazy'}
48
- class={`${(mobileImg ? 'hidden md:block ' : '')}mx-auto ${className}`}
48
+ class={`${(mobileImg ? 'hidden md:block ' : '')}mx-auto text-sm text-opacity-70 ${className}`}
49
49
  />
50
50
  }
51
51
  {mobileImg &&
@@ -55,6 +55,6 @@ if (!mobileWidths?.length) {
55
55
  widths={mobileWidths}
56
56
  fetchpriority={index === 0 ? 'high' : 'low'}
57
57
  loading={index === 0 ? 'eager' : 'lazy'}
58
- class={`md:hidden mx-auto ${mobileClass}`}
58
+ class={`md:hidden mx-auto text-sm text-opacity-70 ${mobileClass}`}
59
59
  />
60
60
  }
@@ -94,7 +94,7 @@ const isPlacementX = computed(() => {
94
94
  type="button"
95
95
  :aria-label="$t.i19close"
96
96
  @click.prevent="close"
97
- class="absolute top-2"
97
+ class="absolute top-2 z-30"
98
98
  :class="placement === 'end' ? 'left-2' : 'right-2'"
99
99
  data-drawer-close
100
100
  >
@@ -0,0 +1,36 @@
1
+ <script setup lang="ts">
2
+ import type { PaymentMethodFlag } from '@@sf/sf-lib';
3
+ import { computed } from 'vue';
4
+
5
+ export interface Props {
6
+ as?: string;
7
+ flag: PaymentMethodFlag;
8
+ }
9
+
10
+ const props = withDefaults(defineProps<Props>(), {
11
+ as: 'i',
12
+ });
13
+ const iconClassName = computed(() => {
14
+ switch (props.flag) {
15
+ case 'pix': return 'i-pix text-[#77B6A8]';
16
+ case 'visa': return 'i-visa';
17
+ case 'mastercard': return 'i-mastercard';
18
+ case 'elo': return 'i-elo';
19
+ case 'amex': return 'i-amex';
20
+ case 'hipercard': return 'i-hipercard';
21
+ case 'diners': return 'i-dinersclub';
22
+ case 'discover': return 'i-discover';
23
+ default: return '';
24
+ }
25
+ });
26
+ </script>
27
+
28
+ <template>
29
+ <b
30
+ v-if="!iconClassName"
31
+ class="tracking-tighter leading-none mb-1 text-black text-[57%]"
32
+ >
33
+ {{ props.flag }}
34
+ </b>
35
+ <component v-else :is="as" :class="iconClassName" />
36
+ </template>
@@ -19,6 +19,7 @@ const iconClassName = computed(() => {
19
19
  case 'pinterest': return 'i-pinterest';
20
20
  case 'tiktok': return 'i-tiktok';
21
21
  case 'twitter': return 'i-twitter';
22
+ case 'threads': return 'i-threads';
22
23
  default: return '';
23
24
  }
24
25
  });