cloudcommerce 0.16.0 → 0.16.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/package.json +6 -6
  3. package/packages/api/package.json +1 -1
  4. package/packages/apps/affilate-program/package.json +1 -1
  5. package/packages/apps/correios/package.json +1 -1
  6. package/packages/apps/custom-payment/package.json +1 -1
  7. package/packages/apps/custom-shipping/package.json +1 -1
  8. package/packages/apps/datafrete/package.json +1 -1
  9. package/packages/apps/discounts/package.json +1 -1
  10. package/packages/apps/emails/package.json +1 -1
  11. package/packages/apps/fb-conversions/package.json +1 -1
  12. package/packages/apps/flash-courier/package.json +1 -1
  13. package/packages/apps/frenet/package.json +1 -1
  14. package/packages/apps/galaxpay/package.json +1 -1
  15. package/packages/apps/google-analytics/package.json +1 -1
  16. package/packages/apps/infinitepay/package.json +1 -1
  17. package/packages/apps/jadlog/package.json +1 -1
  18. package/packages/apps/loyalty-points/package.json +1 -1
  19. package/packages/apps/melhor-envio/package.json +1 -1
  20. package/packages/apps/mercadopago/package.json +1 -1
  21. package/packages/apps/pagarme/package.json +1 -1
  22. package/packages/apps/paghiper/package.json +1 -1
  23. package/packages/apps/pix/package.json +1 -1
  24. package/packages/apps/tiny-erp/package.json +1 -1
  25. package/packages/apps/webhooks/package.json +1 -1
  26. package/packages/cli/package.json +2 -2
  27. package/packages/config/package.json +1 -1
  28. package/packages/emails/package.json +1 -1
  29. package/packages/events/package.json +1 -1
  30. package/packages/feeds/package.json +1 -1
  31. package/packages/firebase/package.json +1 -1
  32. package/packages/i18n/package.json +1 -1
  33. package/packages/modules/package.json +1 -1
  34. package/packages/modules/tests/modules.test.mjs +1 -1
  35. package/packages/passport/package.json +1 -1
  36. package/packages/ssr/lib/firebase/serve-storefront.js +86 -1
  37. package/packages/ssr/lib/firebase/serve-storefront.js.map +1 -1
  38. package/packages/ssr/package.json +3 -3
  39. package/packages/ssr/src/firebase/serve-storefront.ts +95 -1
  40. package/packages/storefront/dist/client/_astro/Carousel.f39be3c0.js +1 -0
  41. package/packages/storefront/dist/client/_astro/HeroSlider.3d4a1d1c.js +1 -0
  42. package/packages/storefront/dist/client/_astro/PitchBar.c53e6d0b.js +1 -0
  43. package/packages/storefront/dist/client/_astro/Prices.de6df3cb.js +1 -0
  44. package/packages/storefront/dist/client/_astro/ProductShelf.f013b3ee.js +1 -0
  45. package/packages/storefront/dist/client/_astro/ShopHeader.c0ba5061.js +4 -0
  46. package/packages/storefront/dist/client/_astro/{_...slug_.ab554647.css → _...slug_.45bc69ca.css} +1 -1
  47. package/packages/storefront/dist/client/_astro/{_plugin-vue_export-helper.8870d8dc.js → _plugin-vue_export-helper.d3aaeb0d.js} +1 -1
  48. package/packages/storefront/dist/client/_astro/client.2d950540.js +1 -0
  49. package/packages/storefront/dist/client/_astro/{firebase-app.5325b6d5.js → firebase-app.84207480.js} +3 -3
  50. package/packages/storefront/dist/client/_astro/{format-money.3868f219.js → format-money.3b884fcb.js} +1 -1
  51. package/packages/storefront/dist/client/_astro/{hoisted.6aebc438.js → hoisted.9d9d7ac4.js} +1 -1
  52. package/packages/storefront/dist/client/_astro/img.517fec8e.js +1 -0
  53. package/packages/storefront/dist/client/_astro/index.33347cbd.js +1 -0
  54. package/packages/storefront/dist/client/_astro/{modules-info.c65d970c.js → modules-info.ad27b027.js} +1 -1
  55. package/packages/storefront/dist/client/_astro/preload-helper.cf010ec4.js +1 -0
  56. package/packages/storefront/dist/client/_astro/runtime-dom.esm-bundler.00b967e0.js +1 -0
  57. package/packages/storefront/dist/client/sw.js +1 -1
  58. package/packages/storefront/dist/server/chunks/{_...5993f704.mjs → _...06f412d0.mjs} +3 -3
  59. package/packages/storefront/dist/server/chunks/{account@_@astro.f35b9c8d.mjs → account@_@astro.d58b2d34.mjs} +3 -3
  60. package/packages/storefront/dist/server/chunks/{astro.c449fda8.mjs → astro.2df8d1c5.mjs} +284 -292
  61. package/packages/storefront/dist/server/chunks/{endpoint@_@js.c74a899a.mjs → endpoint@_@js.ce919661.mjs} +3 -3
  62. package/packages/storefront/dist/server/chunks/{fallback@_@astro.50cbf3a3.mjs → fallback@_@astro.6c7c4acd.mjs} +3 -3
  63. package/packages/storefront/dist/server/chunks/{index@_@astro.a9e6a560.mjs → index@_@astro.8e359cb4.mjs} +3 -3
  64. package/packages/storefront/dist/server/chunks/{index@_@astro.2a31c91e.mjs → index@_@astro.f7e2409d.mjs} +3 -3
  65. package/packages/storefront/dist/server/chunks/pages/{_...slug_.astro.116acf2f.mjs → _...slug_.astro.f0a57b8d.mjs} +51 -31
  66. package/packages/storefront/dist/server/chunks/pages/{account.astro.7074390b.mjs → account.astro.f630663e.mjs} +1 -1
  67. package/packages/storefront/dist/server/chunks/pages/{endpoint.js.7cc60df6.mjs → endpoint.js.1d889b2f.mjs} +1 -1
  68. package/packages/storefront/dist/server/chunks/pages/{fallback.astro.c8d2f06a.mjs → fallback.astro.42f81a9a.mjs} +3 -3
  69. package/packages/storefront/dist/server/chunks/pages/{index.astro.bf79b1d4.mjs → index.astro.533679e1.mjs} +97 -23
  70. package/packages/storefront/dist/server/entry.mjs +9 -9
  71. package/packages/storefront/dist/server/renderers.mjs +2 -2
  72. package/packages/storefront/package.json +5 -5
  73. package/packages/storefront/src/lib/components/Carousel.vue +34 -14
  74. package/packages/storefront/src/lib/components/CarouselControl.vue +7 -7
  75. package/packages/storefront/src/lib/components/_injection-keys.ts +1 -1
  76. package/packages/types/package.json +1 -1
  77. package/packages/storefront/dist/client/_astro/Carousel.93c2309b.js +0 -1
  78. package/packages/storefront/dist/client/_astro/HeroSlider.c5b673b3.js +0 -1
  79. package/packages/storefront/dist/client/_astro/PitchBar.d0e3362e.js +0 -1
  80. package/packages/storefront/dist/client/_astro/Prices.51598206.js +0 -1
  81. package/packages/storefront/dist/client/_astro/Prices.5186c09f.js +0 -1
  82. package/packages/storefront/dist/client/_astro/ProductShelf.d90bfc6e.js +0 -1
  83. package/packages/storefront/dist/client/_astro/ShopHeader.e88dedbc.js +0 -4
  84. package/packages/storefront/dist/client/_astro/client.06720904.js +0 -1
  85. package/packages/storefront/dist/client/_astro/img.2ae78c70.js +0 -1
  86. package/packages/storefront/dist/client/_astro/index.3de006ba.js +0 -1
  87. package/packages/storefront/dist/client/_astro/preload-helper.101896b7.js +0 -1
  88. package/packages/storefront/dist/client/_astro/runtime-dom.esm-bundler.7a95af90.js +0 -1
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.c449fda8.mjs';
3
+ import './astro.2df8d1c5.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,7 +14,7 @@ import 'string-width';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.116acf2f.mjs';
17
+ import './pages/_...slug_.astro.f0a57b8d.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -30,6 +30,6 @@ import '@cloudcommerce/config';
30
30
  /* empty css */import '@vueuse/core';
31
31
  import '@headlessui/vue';
32
32
 
33
- const page = () => import('./pages/endpoint.js.7cc60df6.mjs').then(n => n.e);
33
+ const page = () => import('./pages/endpoint.js.1d889b2f.mjs').then(n => n.e);
34
34
 
35
35
  export { page };
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.c449fda8.mjs';
3
+ import './astro.2df8d1c5.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,7 +14,7 @@ import 'string-width';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.116acf2f.mjs';
17
+ import './pages/_...slug_.astro.f0a57b8d.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -30,6 +30,6 @@ import '@cloudcommerce/config';
30
30
  /* empty css */import '@vueuse/core';
31
31
  import '@headlessui/vue';
32
32
 
33
- const page = () => import('./pages/fallback.astro.c8d2f06a.mjs');
33
+ const page = () => import('./pages/fallback.astro.42f81a9a.mjs');
34
34
 
35
35
  export { page };
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.c449fda8.mjs';
3
+ import './astro.2df8d1c5.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,7 +14,7 @@ import 'string-width';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.116acf2f.mjs';
17
+ import './pages/_...slug_.astro.f0a57b8d.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -30,6 +30,6 @@ import '@cloudcommerce/config';
30
30
  /* empty css */import '@vueuse/core';
31
31
  import '@headlessui/vue';
32
32
 
33
- const page = () => import('./pages/index.astro.bf79b1d4.mjs').then(n => n.i);
33
+ const page = () => import('./pages/index.astro.533679e1.mjs').then(n => n.i);
34
34
 
35
35
  export { page };
@@ -1,6 +1,6 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
  export { onRequest } from '../_empty-middleware.mjs';
3
- import './astro.c449fda8.mjs';
3
+ import './astro.2df8d1c5.mjs';
4
4
  import 'path-to-regexp';
5
5
  import 'cookie';
6
6
  import '@astrojs/internal-helpers/path';
@@ -14,7 +14,7 @@ import 'string-width';
14
14
  import 'vue';
15
15
  import 'vue/server-renderer';
16
16
  import '@ecomplus/utils';
17
- import './pages/_...slug_.astro.116acf2f.mjs';
17
+ import './pages/_...slug_.astro.f0a57b8d.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'node:path';
20
20
  import 'node:url';
@@ -30,6 +30,6 @@ import '@cloudcommerce/config';
30
30
  /* empty css */import '@vueuse/core';
31
31
  import '@headlessui/vue';
32
32
 
33
- const page = () => import('./pages/index.astro.bf79b1d4.mjs').then(n => n.a);
33
+ const page = () => import('./pages/index.astro.533679e1.mjs').then(n => n.a);
34
34
 
35
35
  export { page };
@@ -8,7 +8,7 @@ import sizeOf from 'image-size';
8
8
  import 'magic-string';
9
9
  import mime from 'mime';
10
10
  import 'node:stream';
11
- import { c as createAstro, a as createComponent, r as renderTemplate, b as addAttribute, d as renderComponent, u as unescapeHTML, F as Fragment, m as maybeRenderHead, s as spreadAttributes, e as renderSlot, f as renderHead } from '../astro.c449fda8.mjs';
11
+ import { c as createAstro, a as createComponent, r as renderTemplate, b as addAttribute, d as renderComponent, u as unescapeHTML, F as Fragment, m as maybeRenderHead, s as spreadAttributes, e as renderSlot, f as renderHead } from '../astro.2df8d1c5.mjs';
12
12
  import api from '@cloudcommerce/api';
13
13
  import { EventEmitter } from 'node:events';
14
14
  import fs from 'node:fs';
@@ -615,7 +615,7 @@ async function getImage(transform) {
615
615
  }
616
616
  let loader = (_a = globalThis.astroImage) == null ? void 0 : _a.loader;
617
617
  if (!loader) {
618
- const { default: mod } = await import('./endpoint.js.7cc60df6.mjs').then(n => n.s).catch(() => {
618
+ const { default: mod } = await import('./endpoint.js.1d889b2f.mjs').then(n => n.s).catch(() => {
619
619
  throw new Error(
620
620
  "[@astrojs/image] Builtin image loader not found. (Did you remember to add the integration to your Astro config?)"
621
621
  );
@@ -876,7 +876,7 @@ const $$Picture = createComponent(async ($$result, $$props, $$slots) => {
876
876
  if (imgAttrs) {
877
877
  imgAttrs.src += versionSuffix;
878
878
  }
879
- return renderTemplate`${maybeRenderHead($$result)}<picture${spreadAttributes(pictureAttrs)}>
879
+ return renderTemplate`${maybeRenderHead()}<picture${spreadAttributes(pictureAttrs)}>
880
880
  ${sources.map((attrs) => {
881
881
  if (versionSuffix) {
882
882
  attrs.srcset = attrs.srcset.replace(/\s(\w+)$/, `${versionSuffix} $1`);
@@ -892,7 +892,7 @@ const $$BaseBody = createComponent(async ($$result, $$props, $$slots) => {
892
892
  const Astro2 = $$result.createAstro($$Astro$6, $$props, $$slots);
893
893
  Astro2.self = $$BaseBody;
894
894
  const { settings } = Astro2.locals.routeContext;
895
- return renderTemplate`${maybeRenderHead($$result)}<body>
895
+ return renderTemplate`${maybeRenderHead()}<body>
896
896
  <div id="teleported-overlap" class="relative z-50"></div>
897
897
  <div id="teleported-top" class="relative z-10"></div>
898
898
  ${renderSlot($$result, $$slots["default"])}
@@ -916,7 +916,7 @@ const $$Base$1 = createComponent(async ($$result, $$props, $$slots) => {
916
916
  ${customCodeContent?.html_head && renderTemplate`${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(customCodeContent.html_head)}` })}`}
917
917
  ${renderSlot($$result, $$slots["base-head-scripts"])}
918
918
  ${renderSlot($$result, $$slots["before-head-end"])}
919
- ${renderHead($$result)}</head>
919
+ ${renderHead()}</head>
920
920
  ${renderComponent($$result, "BaseBody", $$BaseBody, {}, { "default": ($$result2) => renderTemplate`
921
921
  ${renderSlot($$result2, $$slots["default"])}
922
922
  ${customCodeContent?.html_body && renderTemplate`${renderComponent($$result2, "Fragment", Fragment, {}, { "default": ($$result3) => renderTemplate`${unescapeHTML(customCodeContent.html_body)}` })}`}${renderSlot($$result2, $$slots["base-body-scripts"])}
@@ -1080,7 +1080,7 @@ const carouselKey = Symbol("carousel");
1080
1080
  const _sfc_main$d = /* @__PURE__ */ defineComponent({
1081
1081
  __name: "CarouselControl",
1082
1082
  props: {
1083
- direction: { default: 1 }
1083
+ isPrev: { type: Boolean, default: false }
1084
1084
  },
1085
1085
  setup(__props, { expose: __expose }) {
1086
1086
  __expose();
@@ -1093,12 +1093,12 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
1093
1093
  function _sfc_ssrRender$d(_ctx, _push, _parent, _attrs, $props, $setup, $data, $options) {
1094
1094
  _push(`<button${ssrRenderAttrs(mergeProps({
1095
1095
  type: "button",
1096
- "aria-label": $props.direction > 0 ? "Pr\xF3ximo" : "Anterior",
1097
- class: ["group absolute top-0 z-1", $props.direction > 0 ? "right-0" : "left-0"],
1098
- "data-carousel-control": $props.direction > 0 ? "next" : "previous"
1096
+ "aria-label": !$props.isPrev ? "Pr\xF3ximo" : "Anterior",
1097
+ class: ["group absolute top-0 z-1", !$props.isPrev ? "right-0" : "left-0"],
1098
+ "data-carousel-control": !$props.isPrev ? "next" : "previous"
1099
1099
  }, _attrs))}>`);
1100
1100
  ssrRenderSlot(_ctx.$slots, "default", {}, () => {
1101
- _push(`<i class="${ssrRenderClass([$props.direction > 0 ? "i-chevron-right group-active:translate-x-1" : "i-chevron-left group-active:-translate-x-1", "m-0"])}"></i>`);
1101
+ _push(`<i class="${ssrRenderClass([!$props.isPrev ? "i-chevron-right group-active:translate-x-1" : "i-chevron-left group-active:-translate-x-1", "m-0"])}"></i>`);
1102
1102
  }, _push, _parent);
1103
1103
  _push(`</button>`);
1104
1104
  }
@@ -1158,20 +1158,19 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
1158
1158
  width: node.offsetWidth
1159
1159
  }));
1160
1160
  };
1161
- const calcNextWidth = (direction) => {
1161
+ const calcNextOffsetLeft = (direction) => {
1162
1162
  let nextSlideIndex = currentIndex.value + direction;
1163
1163
  if (nextSlideIndex >= slidesWidth.value.length) {
1164
- nextSlideIndex = 0;
1165
- direction = -direction;
1166
- } else if (nextSlideIndex < 0) {
1167
- nextSlideIndex = slidesWidth.value.length - 1;
1168
- direction = -direction;
1164
+ return 0;
1165
+ }
1166
+ if (nextSlideIndex < 0) {
1167
+ nextSlideIndex = slidesWidth.value.length + nextSlideIndex;
1169
1168
  }
1170
- const width = slidesWidth.value[nextSlideIndex]?.width || 0;
1169
+ const { offsetLeft, width } = slidesWidth.value[nextSlideIndex] || {};
1171
1170
  if (!width) {
1172
1171
  return 0;
1173
1172
  }
1174
- return width * direction;
1173
+ return offsetLeft;
1175
1174
  };
1176
1175
  const calcCurrentIndex = () => {
1177
1176
  const getCurrentIndex = slidesWidth.value.findIndex((slide) => {
@@ -1194,12 +1193,33 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
1194
1193
  }, props.autoplay);
1195
1194
  }
1196
1195
  };
1197
- const changeSlide = (direction) => {
1198
- const nextSlideWidth = calcNextWidth(direction);
1199
- if (nextSlideWidth) {
1200
- wrapper.value?.scrollBy({ left: nextSlideWidth, behavior: "smooth" });
1201
- restartAutoplay();
1196
+ const changeSlide = (direction, isPageScroll = true) => {
1197
+ if (slidesWidth.value.length < 2) {
1198
+ return;
1199
+ }
1200
+ if (isPageScroll && (direction === 1 || direction === -1)) {
1201
+ let pageStep = 0;
1202
+ let pageStepWidth = 0;
1203
+ for (let i = currentIndex.value; i < slidesWidth.value.length; i++) {
1204
+ const { width } = slidesWidth.value[i] || {};
1205
+ if (width) {
1206
+ pageStep += 1;
1207
+ pageStepWidth += width;
1208
+ if (pageStepWidth >= wrapperVisibleWidth.value) {
1209
+ break;
1210
+ }
1211
+ }
1212
+ }
1213
+ if (pageStep) {
1214
+ direction = direction > 0 ? pageStep : -pageStep;
1215
+ }
1216
+ }
1217
+ if (!props.autoplay) {
1218
+ console.log({ direction }, currentIndex.value, slidesWidth.value.length);
1202
1219
  }
1220
+ const nextOffsetLeft = calcNextOffsetLeft(direction);
1221
+ wrapper.value?.scrollTo({ left: nextOffsetLeft, behavior: "smooth" });
1222
+ restartAutoplay();
1203
1223
  };
1204
1224
  watch(isScrolling, (_isScrolling) => {
1205
1225
  if (_isScrolling) {
@@ -1245,7 +1265,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
1245
1265
  isBoundLeft,
1246
1266
  isBoundRight
1247
1267
  });
1248
- const __returned__ = { props, emit, currentIndex, wrapper, currentPos, isScrolling, arrivedState, isBoundLeft, isBoundRight, slidesWidth, wrapperScrollWidth, wrapperVisibleWidth, indexCount, calcWrapperWidth, calcSlidesWidth, calcNextWidth, calcCurrentIndex, calcIndexCount, get autoplayTimer() {
1268
+ const __returned__ = { props, emit, currentIndex, wrapper, currentPos, isScrolling, arrivedState, isBoundLeft, isBoundRight, slidesWidth, wrapperScrollWidth, wrapperVisibleWidth, indexCount, calcWrapperWidth, calcSlidesWidth, calcNextOffsetLeft, calcCurrentIndex, calcIndexCount, get autoplayTimer() {
1249
1269
  return autoplayTimer;
1250
1270
  }, set autoplayTimer(v) {
1251
1271
  autoplayTimer = v;
@@ -1284,7 +1304,7 @@ function _sfc_ssrRender$c(_ctx, _push, _parent, _attrs, $props, $setup, $data, $
1284
1304
  currentPage: $setup.currentIndex + 1,
1285
1305
  pageCount: $setup.indexCount + 1
1286
1306
  }, () => {
1287
- _push(ssrRenderComponent($setup["CarouselControl"], { direction: -1 }, {
1307
+ _push(ssrRenderComponent($setup["CarouselControl"], { "is-prev": "" }, {
1288
1308
  default: withCtx((_, _push2, _parent2, _scopeId) => {
1289
1309
  if (_push2) {
1290
1310
  ssrRenderSlot(_ctx.$slots, "previous", {}, null, _push2, _parent2, _scopeId);
@@ -1345,8 +1365,8 @@ function _sfc_ssrRender$b(_ctx, _push, _parent, _attrs, $props, $setup, $data, $
1345
1365
  if (_push2) {
1346
1366
  _push2(`<div style="${ssrRenderStyle($setup.countValidSlides > 1 ? null : { display: "none" })}" class="text-xl leading-none text-base-400"${_scopeId}>`);
1347
1367
  _push2(ssrRenderComponent($setup["CarouselControl"], {
1348
- direction: -1,
1349
- class: "pr-2 bg-base-100 hover:text-base-700"
1368
+ class: "pr-2 bg-base-100 hover:text-base-700",
1369
+ "is-prev": ""
1350
1370
  }, null, _parent2, _scopeId));
1351
1371
  _push2(ssrRenderComponent($setup["CarouselControl"], { class: "pl-2 bg-base-100 hover:text-base-700" }, null, _parent2, _scopeId));
1352
1372
  _push2(`</div>`);
@@ -1354,8 +1374,8 @@ function _sfc_ssrRender$b(_ctx, _push, _parent, _attrs, $props, $setup, $data, $
1354
1374
  return [
1355
1375
  withDirectives(createVNode("div", { class: "text-xl leading-none text-base-400" }, [
1356
1376
  createVNode($setup["CarouselControl"], {
1357
- direction: -1,
1358
- class: "pr-2 bg-base-100 hover:text-base-700"
1377
+ class: "pr-2 bg-base-100 hover:text-base-700",
1378
+ "is-prev": ""
1359
1379
  }),
1360
1380
  createVNode($setup["CarouselControl"], { class: "pl-2 bg-base-100 hover:text-base-700" })
1361
1381
  ], 512), [
@@ -3302,7 +3322,7 @@ const $$Pages = createComponent(async ($$result, $$props, $$slots) => {
3302
3322
  ${pitchBar.slides.length === 1 && renderTemplate`${renderComponent($$result2, "PitchBar", PitchBar, { ...pitchBar })}`}
3303
3323
  `)}
3304
3324
  ${renderComponent($$result2, "ShopHeader", ShopHeader, { ...shopHeader, "client:load": true, "client:component-hydration": "load", "client:component-path": "~/components/ShopHeader.vue", "client:component-export": "default" }, { "logo": ($$result3) => renderTemplate`${renderComponent($$result3, "Fragment", Fragment, { "slot": "logo" }, { "default": ($$result4) => renderTemplate`
3305
- ${maybeRenderHead($$result4)}<a href="/">
3325
+ ${maybeRenderHead()}<a href="/">
3306
3326
  ${renderComponent($$result4, "LogoHeading", LogoHeading, {}, { "logo-picture": ($$result5) => renderTemplate`${renderComponent($$result5, "Picture", $$Picture, { "slot": "logo-picture", "src": settings.logo, "alt": settings.name, "widths": [300], "fetchpriority": "high", "loading": "eager", "class": "hover:drop-shadow-sm max-w-[150px] mx-auto" })}` })}
3307
3327
  </a>
3308
3328
  ` })}` })}
@@ -3316,7 +3336,7 @@ const $$Wildcard = createComponent(async ($$result, $$props, $$slots) => {
3316
3336
  const Astro2 = $$result.createAstro($$Astro$1, $$props, $$slots);
3317
3337
  Astro2.self = $$Wildcard;
3318
3338
  const { apiResource, apiDoc } = Astro2.locals.routeContext;
3319
- return renderTemplate`${maybeRenderHead($$result)}<main>
3339
+ return renderTemplate`${maybeRenderHead()}<main>
3320
3340
  ${apiDoc && renderTemplate`<h1>Hello <span class="text-gradient">${apiDoc.name}</span></h1><hr><div class="mt-3">
3321
3341
  <mark>${apiDoc._id}</mark> from <i>${apiResource}</i>
3322
3342
  <p>${Math.random()}</p>
@@ -1,4 +1,4 @@
1
- import { c as createAstro, a as createComponent, r as renderTemplate } from '../astro.c449fda8.mjs';
1
+ import { c as createAstro, a as createComponent, r as renderTemplate } from '../astro.2df8d1c5.mjs';
2
2
  import 'path-to-regexp';
3
3
  import 'cookie';
4
4
  import '@astrojs/internal-helpers/path';
@@ -1,6 +1,6 @@
1
1
  import mime from 'mime';
2
2
  import sharp$1 from 'sharp';
3
- import { B as BaseSSRService, i as isOutputFormatSupportsAlpha } from './_...slug_.astro.116acf2f.mjs';
3
+ import { B as BaseSSRService, i as isOutputFormatSupportsAlpha } from './_...slug_.astro.f0a57b8d.mjs';
4
4
 
5
5
  class SharpService extends BaseSSRService {
6
6
  async transform(inputBuffer, transform) {
@@ -1,5 +1,5 @@
1
- import { c as createAstro, a as createComponent, r as renderTemplate, m as maybeRenderHead, b as addAttribute, d as renderComponent } from '../astro.c449fda8.mjs';
2
- import { l as loadRouteContext, $ as $$Pages } from './_...slug_.astro.116acf2f.mjs';
1
+ import { c as createAstro, a as createComponent, r as renderTemplate, m as maybeRenderHead, b as addAttribute, d as renderComponent } from '../astro.2df8d1c5.mjs';
2
+ import { l as loadRouteContext, $ as $$Pages } from './_...slug_.astro.f0a57b8d.mjs';
3
3
  import 'path-to-regexp';
4
4
  import 'cookie';
5
5
  import '@astrojs/internal-helpers/path';
@@ -32,7 +32,7 @@ const $$Astro$1 = createAstro("https://ecom2-demo.web.app");
32
32
  const $$Fallback$1 = createComponent(async ($$result, $$props, $$slots) => {
33
33
  const Astro2 = $$result.createAstro($$Astro$1, $$props, $$slots);
34
34
  Astro2.self = $$Fallback$1;
35
- return renderTemplate`${maybeRenderHead($$result)}<main>
35
+ return renderTemplate`${maybeRenderHead()}<main>
36
36
  <h1>Error :/</h1>
37
37
  <p class="instructions">
38
38
  Check out the <code>src/pages</code> directory to get started.<br>
@@ -1,7 +1,7 @@
1
- import { c as createAstro, a as createComponent, r as renderTemplate, d as renderComponent, m as maybeRenderHead, b as addAttribute, u as unescapeHTML, F as Fragment$1 } from '../astro.c449fda8.mjs';
2
- import { a as $$Picture, p as parseShippingPhrase, _ as _export_sfc, C as Carousel, b as CarouselControl, m as modulesInfo, l as loadRouteContext, $ as $$Pages } from './_...slug_.astro.116acf2f.mjs';
1
+ import { c as createAstro, a as createComponent, r as renderTemplate, d as renderComponent, m as maybeRenderHead, b as addAttribute, u as unescapeHTML, F as Fragment$1 } from '../astro.2df8d1c5.mjs';
2
+ import { a as $$Picture, p as parseShippingPhrase, _ as _export_sfc, C as Carousel, b as CarouselControl, m as modulesInfo, l as loadRouteContext, $ as $$Pages } from './_...slug_.astro.f0a57b8d.mjs';
3
3
  import api from '@cloudcommerce/api';
4
- import { computed, useSSRContext, defineComponent, mergeProps, withCtx, withDirectives, createVNode, vShow, resolveDynamicComponent, createTextVNode, toDisplayString, openBlock, createBlock, Fragment, renderList, renderSlot, createCommentVNode, ref, shallowReactive, resolveComponent, withAsyncContext } from 'vue';
4
+ import { computed, useSSRContext, defineComponent, mergeProps, withCtx, createVNode, withDirectives, vShow, resolveDynamicComponent, createTextVNode, toDisplayString, openBlock, createBlock, Fragment, renderList, renderSlot, createCommentVNode, ref, shallowReactive, resolveComponent, withAsyncContext } from 'vue';
5
5
  import { ssrRenderAttrs, ssrRenderComponent, ssrRenderStyle, ssrRenderList, ssrRenderClass, ssrRenderAttr, ssrRenderSlot, ssrRenderVNode, ssrInterpolate } from 'vue/server-renderer';
6
6
  import { inStock, price, name, img, onPromotion } from '@ecomplus/utils';
7
7
  import { useElementHover, watchOnce } from '@vueuse/core';
@@ -111,22 +111,54 @@ function _sfc_ssrRender$3(_ctx, _push, _parent, _attrs, $props, $setup, $data, $
111
111
  _push(ssrRenderComponent($setup["Carousel"], { autoplay: $props.autoplay }, {
112
112
  controls: withCtx((_, _push2, _parent2, _scopeId) => {
113
113
  if (_push2) {
114
- _push2(`<div style="${ssrRenderStyle($setup.parsedSlides.length > 1 ? null : { display: "none" })}" class="absolute z-10 bottom-5 flex justify-end items-center w-screen xl:max-w-screen-xl xl:left-1/2 -ms-[640px]"${_scopeId}><div class="relative w-20 h-10 rounded-full bg-white/50 text-primary shadow-sm ring-1 ring-black/5"${_scopeId}>`);
114
+ _push2(`<div style="${ssrRenderStyle($setup.parsedSlides.length > 1 ? null : { display: "none" })}" 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]"${_scopeId}><div class="relative w-20 h-10 rounded-full bg-white/50 text-primary shadow-sm ring-1 ring-black/5"${_scopeId}>`);
115
115
  _push2(ssrRenderComponent($setup["CarouselControl"], {
116
- direction: -1,
117
- class: "w-10 h-10 rounded-full hover:bg-primary/10"
118
- }, null, _parent2, _scopeId));
119
- _push2(ssrRenderComponent($setup["CarouselControl"], { class: "w-10 h-10 rounded-full hover:bg-primary/10" }, null, _parent2, _scopeId));
116
+ class: "w-10 h-10 rounded-full hover:bg-primary/10",
117
+ "is-prev": ""
118
+ }, {
119
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
120
+ if (_push3) {
121
+ _push3(`<i class="i-arrow-left"${_scopeId2}></i>`);
122
+ } else {
123
+ return [
124
+ createVNode("i", { class: "i-arrow-left" })
125
+ ];
126
+ }
127
+ }),
128
+ _: 1
129
+ }, _parent2, _scopeId));
130
+ _push2(ssrRenderComponent($setup["CarouselControl"], { class: "w-10 h-10 rounded-full hover:bg-primary/10" }, {
131
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
132
+ if (_push3) {
133
+ _push3(`<i class="i-arrow-right"${_scopeId2}></i>`);
134
+ } else {
135
+ return [
136
+ createVNode("i", { class: "i-arrow-right" })
137
+ ];
138
+ }
139
+ }),
140
+ _: 1
141
+ }, _parent2, _scopeId));
120
142
  _push2(`</div></div>`);
121
143
  } else {
122
144
  return [
123
- withDirectives(createVNode("div", { class: "absolute z-10 bottom-5 flex justify-end items-center w-screen xl:max-w-screen-xl xl:left-1/2 -ms-[640px]" }, [
145
+ withDirectives(createVNode("div", { 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]" }, [
124
146
  createVNode("div", { class: "relative w-20 h-10 rounded-full bg-white/50 text-primary shadow-sm ring-1 ring-black/5" }, [
125
147
  createVNode($setup["CarouselControl"], {
126
- direction: -1,
127
- class: "w-10 h-10 rounded-full hover:bg-primary/10"
148
+ class: "w-10 h-10 rounded-full hover:bg-primary/10",
149
+ "is-prev": ""
150
+ }, {
151
+ default: withCtx(() => [
152
+ createVNode("i", { class: "i-arrow-left" })
153
+ ]),
154
+ _: 1
128
155
  }),
129
- createVNode($setup["CarouselControl"], { class: "w-10 h-10 rounded-full hover:bg-primary/10" })
156
+ createVNode($setup["CarouselControl"], { class: "w-10 h-10 rounded-full hover:bg-primary/10" }, {
157
+ default: withCtx(() => [
158
+ createVNode("i", { class: "i-arrow-right" })
159
+ ]),
160
+ _: 1
161
+ })
130
162
  ])
131
163
  ], 512), [
132
164
  [vShow, $setup.parsedSlides.length > 1]
@@ -927,14 +959,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
927
959
  {
928
960
  [__temp, __restore] = withAsyncContext(() => fetching), await __temp, __restore();
929
961
  }
930
- const __returned__ = { props, title, titleLink, fetching, products, ProductCard };
962
+ const __returned__ = { props, title, titleLink, fetching, products, Carousel, CarouselControl, ProductCard };
931
963
  Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
932
964
  return __returned__;
933
965
  }
934
966
  });
935
967
  function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $options) {
936
968
  const _component_ALink = resolveComponent("ALink");
937
- _push(`<section${ssrRenderAttrs(_attrs)}>`);
969
+ _push(`<section${ssrRenderAttrs(mergeProps({ class: "container mx-auto" }, _attrs))}>`);
938
970
  if ($setup.title) {
939
971
  _push(`<h2>`);
940
972
  if ($setup.titleLink) {
@@ -957,13 +989,55 @@ function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $op
957
989
  } else {
958
990
  _push(`<!---->`);
959
991
  }
960
- _push(`<ul class="grid grid-cols-4"><!--[-->`);
961
- ssrRenderList($setup.products, (product) => {
962
- _push(`<li>`);
963
- _push(ssrRenderComponent($setup["ProductCard"], { product }, null, _parent));
964
- _push(`</li>`);
965
- });
966
- _push(`<!--]--></ul></section>`);
992
+ _push(ssrRenderComponent($setup["Carousel"], { class: "group/shelf" }, {
993
+ controls: withCtx((_, _push2, _parent2, _scopeId) => {
994
+ if (_push2) {
995
+ _push2(`<div style="${ssrRenderStyle($setup.products.length > 2 ? null : { display: "none" })}" class="text-3xl lg:text-xl leading-none text-primary lg:opacity-0 group-hover/shelf:opacity-90 transition-opacity"${_scopeId}>`);
996
+ _push2(ssrRenderComponent($setup["CarouselControl"], {
997
+ class: "!top-1/2 lg:-left-2 w-10 h-10 bg-transparent lg:bg-white/80 lg:hover:bg-primary/10 rounded-full lg:shadow-sm lg:ring-1 ring-black/5",
998
+ "is-prev": ""
999
+ }, null, _parent2, _scopeId));
1000
+ _push2(ssrRenderComponent($setup["CarouselControl"], { class: "!top-1/2 lg:-right-2 w-10 h-10 bg-transparent lg:bg-white/80 lg:hover:bg-primary/10 rounded-full lg:shadow-sm lg:ring-1 ring-black/5" }, null, _parent2, _scopeId));
1001
+ _push2(`</div>`);
1002
+ } else {
1003
+ return [
1004
+ withDirectives(createVNode("div", { class: "text-3xl lg:text-xl leading-none text-primary lg:opacity-0 group-hover/shelf:opacity-90 transition-opacity" }, [
1005
+ createVNode($setup["CarouselControl"], {
1006
+ class: "!top-1/2 lg:-left-2 w-10 h-10 bg-transparent lg:bg-white/80 lg:hover:bg-primary/10 rounded-full lg:shadow-sm lg:ring-1 ring-black/5",
1007
+ "is-prev": ""
1008
+ }),
1009
+ createVNode($setup["CarouselControl"], { class: "!top-1/2 lg:-right-2 w-10 h-10 bg-transparent lg:bg-white/80 lg:hover:bg-primary/10 rounded-full lg:shadow-sm lg:ring-1 ring-black/5" })
1010
+ ], 512), [
1011
+ [vShow, $setup.products.length > 2]
1012
+ ])
1013
+ ];
1014
+ }
1015
+ }),
1016
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
1017
+ if (_push2) {
1018
+ _push2(`<!--[-->`);
1019
+ ssrRenderList($setup.products, (product) => {
1020
+ _push2(`<li class="basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"${_scopeId}>`);
1021
+ _push2(ssrRenderComponent($setup["ProductCard"], { product }, null, _parent2, _scopeId));
1022
+ _push2(`</li>`);
1023
+ });
1024
+ _push2(`<!--]-->`);
1025
+ } else {
1026
+ return [
1027
+ (openBlock(true), createBlock(Fragment, null, renderList($setup.products, (product) => {
1028
+ return openBlock(), createBlock("li", {
1029
+ key: product._id,
1030
+ class: "basis-1/2 md:basis-1/3 lg:basis-1/4 shrink-0"
1031
+ }, [
1032
+ createVNode($setup["ProductCard"], { product }, null, 8, ["product"])
1033
+ ]);
1034
+ }), 128))
1035
+ ];
1036
+ }
1037
+ }),
1038
+ _: 1
1039
+ }, _parent));
1040
+ _push(`</section>`);
967
1041
  }
968
1042
  const _sfc_setup = _sfc_main.setup;
969
1043
  _sfc_main.setup = (props, ctx) => {
@@ -979,7 +1053,7 @@ const $$Sections = createComponent(async ($$result, $$props, $$slots) => {
979
1053
  Astro2.self = $$Sections;
980
1054
  const { routeContext } = Astro2.locals;
981
1055
  const { sections } = await usePageSections({ routeContext });
982
- return renderTemplate`${maybeRenderHead($$result)}<article class="my-12">
1056
+ return renderTemplate`${maybeRenderHead()}<article class="my-9 md:my-12">
983
1057
  ${sections.map(({ type, props }) => {
984
1058
  switch (type) {
985
1059
  case "product-shelf":
@@ -999,7 +1073,7 @@ const $$Home = createComponent(async ($$result, $$props, $$slots) => {
999
1073
  const { heroSlider } = await usePageHero({ routeContext });
1000
1074
  const heroSlides = heroSlider.slides;
1001
1075
  const products = (await api.get("products")).data.result;
1002
- return renderTemplate`${maybeRenderHead($$result)}<main>
1076
+ return renderTemplate`${maybeRenderHead()}<main>
1003
1077
  ${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, "HeroPicture", $$HeroPicture, { "slot": "picture-0", ...heroSlides[0], "index": 0 })}`}`, "picture-1": ($$result2) => renderTemplate`${heroSlides[1] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-1", ...heroSlides[1], "index": 1 })}`}`, "picture-2": ($$result2) => renderTemplate`${heroSlides[2] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-2", ...heroSlides[2], "index": 2 })}`}`, "picture-3": ($$result2) => renderTemplate`${heroSlides[3] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-3", ...heroSlides[3], "index": 3 })}`}`, "picture-4": ($$result2) => renderTemplate`${heroSlides[4] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-4", ...heroSlides[4], "index": 4 })}`}`, "picture-5": ($$result2) => renderTemplate`${heroSlides[5] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-5", ...heroSlides[5], "index": 5 })}`}`, "picture-6": ($$result2) => renderTemplate`${heroSlides[6] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-6", ...heroSlides[6], "index": 6 })}`}`, "picture-7": ($$result2) => renderTemplate`${heroSlides[7] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-7", ...heroSlides[7], "index": 7 })}`}`, "picture-8": ($$result2) => renderTemplate`${heroSlides[8] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-8", ...heroSlides[8], "index": 8 })}`}`, "picture-9": ($$result2) => renderTemplate`${heroSlides[9] && renderTemplate`${renderComponent($$result2, "HeroPicture", $$HeroPicture, { "slot": "picture-9", ...heroSlides[9], "index": 9 })}`}` })}`}
1004
1078
  ${renderComponent($$result, "Sections", $$Sections, {})}
1005
1079
 
@@ -3,7 +3,7 @@ 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.c449fda8.mjs';
6
+ import { N as NodeApp, g as deserializeManifest } from './chunks/astro.2df8d1c5.mjs';
7
7
  import { Readable } from 'stream';
8
8
  import https from 'https';
9
9
  import path from 'path';
@@ -24,7 +24,7 @@ import 'string-width';
24
24
  import 'vue';
25
25
  import 'vue/server-renderer';
26
26
  import '@ecomplus/utils';
27
- import './chunks/pages/_...slug_.astro.116acf2f.mjs';
27
+ import './chunks/pages/_...slug_.astro.f0a57b8d.mjs';
28
28
  import 'node:fs/promises';
29
29
  import 'node:path';
30
30
  import 'node:url';
@@ -2824,13 +2824,13 @@ const adapter = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
2824
2824
  start
2825
2825
  }, Symbol.toStringTag, { value: 'Module' }));
2826
2826
 
2827
- const _page0 = () => import('./chunks/endpoint@_@js.c74a899a.mjs');
2828
- const _page1 = () => import('./chunks/index@_@astro.a9e6a560.mjs');
2829
- const _page2 = () => import('./chunks/fallback@_@astro.50cbf3a3.mjs');
2830
- const _page3 = () => import('./chunks/index@_@astro.2a31c91e.mjs');
2831
- const _page4 = () => import('./chunks/account@_@astro.f35b9c8d.mjs');
2832
- const _page5 = () => import('./chunks/_...5993f704.mjs');const pageMap = new Map([["../../node_modules/.pnpm/@astrojs+image@0.17.2_astro@2.7.3_sharp@0.32.1/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]]);
2833
- 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.2_astro@2.7.3_sharp@0.32.1/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.6aebc438.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.ab554647.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.6aebc438.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.ab554647.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.6aebc438.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.ab554647.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=(s,c,i)=>{let o=async()=>{await(await s())()},n=new IntersectionObserver(e=>{for(let t of e)if(t.isIntersecting){n.disconnect(),o();break}});for(let e=0;e<i.children.length;e++){let t=i.children[e];n.observe(t)}};(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.7074390b.mjs","/src/pages/fallback.astro":"chunks/pages/fallback.astro.c8d2f06a.mjs","\u0000@astro-page:../../node_modules/.pnpm/@astrojs+image@0.17.2_astro@2.7.3_sharp@0.32.1/node_modules/@astrojs/image/dist/endpoint@_@js":"chunks/endpoint@_@js.c74a899a.mjs","\u0000@astro-page:src/pages/index@_@astro":"chunks/index@_@astro.a9e6a560.mjs","\u0000@astro-page:src/pages/fallback@_@astro":"chunks/fallback@_@astro.50cbf3a3.mjs","\u0000@astro-page:src/pages/app/index@_@astro":"chunks/index@_@astro.2a31c91e.mjs","\u0000@astro-page:src/pages/app/account@_@astro":"chunks/account@_@astro.f35b9c8d.mjs","\u0000@astro-page:src/pages/[...slug]@_@astro":"chunks/_...5993f704.mjs","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"_astro/workbox-window.prod.es5.a7b12eab.js","~/components/PitchBar.vue":"_astro/PitchBar.d0e3362e.js","~/components/Prices.vue":"_astro/Prices.5186c09f.js","~/components/ProductShelf.vue":"_astro/ProductShelf.d90bfc6e.js","~/components/HeroSlider.vue":"_astro/HeroSlider.c5b673b3.js","@astrojs/vue/client.js":"_astro/client.06720904.js","/astro/hoisted.js?q=0":"_astro/hoisted.6aebc438.js","~/components/ShopHeader.vue":"_astro/ShopHeader.e88dedbc.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/scripts/firebase-app.ts":"_astro/firebase-app.5325b6d5.js","astro:scripts/before-hydration.js":""},"assets":["/_astro/_...slug_.ab554647.css","/manifest.webmanifest","/robots.txt","/sw.js","/workbox-5e0bf4e4.js","/_astro/Carousel.93c2309b.js","/_astro/HeroSlider.c5b673b3.js","/_astro/PitchBar.d0e3362e.js","/_astro/Prices.51598206.js","/_astro/Prices.5186c09f.js","/_astro/ProductShelf.d90bfc6e.js","/_astro/ShopHeader.e88dedbc.js","/_astro/_plugin-vue_export-helper.8870d8dc.js","/_astro/api.7f62c1ff.js","/_astro/client.06720904.js","/_astro/firebase-app.5325b6d5.js","/_astro/format-money.3868f219.js","/_astro/hoisted.6aebc438.js","/_astro/idle-callback.889bf0ea.js","/_astro/img.2ae78c70.js","/_astro/index.3de006ba.js","/_astro/modules-info.c65d970c.js","/_astro/preload-helper.101896b7.js","/_astro/runtime-dom.esm-bundler.7a95af90.js","/_astro/session-utm.744b0db3.js","/_astro/workbox-window.prod.es5.a7b12eab.js","/assets/cms-preview.css","/assets/cms.css","/assets/cvv.png","/assets/img-placeholder.png","/assets/payments.png","/assets/ssl-safe.png","/img/icon.png","/img/large-icon.png","/img/uploads/banner1.png","/img/uploads/banner2.png","/img/uploads/banner2.webp","/img/uploads/ecom-icon.png","/img/uploads/favicon.png","/img/uploads/headless.png","/img/uploads/headphone.png","/img/uploads/headphone.webp","/img/uploads/logo.png","/img/uploads/og-image.png","/img/uploads/passion.png","/img/uploads/passion.webp","/img/uploads/pwa-reliable.png","/img/uploads/rect8589.png","/img/uploads/rect859.png","/img/uploads/rect89.png","/img/uploads/rect89.webp","/img/uploads/ssl-safe.png"]}), {
2827
+ const _page0 = () => import('./chunks/endpoint@_@js.ce919661.mjs');
2828
+ const _page1 = () => import('./chunks/index@_@astro.8e359cb4.mjs');
2829
+ const _page2 = () => import('./chunks/fallback@_@astro.6c7c4acd.mjs');
2830
+ const _page3 = () => import('./chunks/index@_@astro.f7e2409d.mjs');
2831
+ const _page4 = () => import('./chunks/account@_@astro.d58b2d34.mjs');
2832
+ const _page5 = () => import('./chunks/_...06f412d0.mjs');const pageMap = new Map([["../../node_modules/.pnpm/@astrojs+image@0.17.2_astro@2.8.0_sharp@0.32.1/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]]);
2833
+ 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.2_astro@2.8.0_sharp@0.32.1/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","prerender":false,"_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"/_astro/hoisted.9d9d7ac4.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.45bc69ca.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.9d9d7ac4.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.45bc69ca.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.9d9d7ac4.js"}],"styles":[{"type":"external","src":"/_astro/_...slug_.45bc69ca.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.f630663e.mjs","/src/pages/fallback.astro":"chunks/pages/fallback.astro.42f81a9a.mjs","\u0000@astro-page:../../node_modules/.pnpm/@astrojs+image@0.17.2_astro@2.8.0_sharp@0.32.1/node_modules/@astrojs/image/dist/endpoint@_@js":"chunks/endpoint@_@js.ce919661.mjs","\u0000@astro-page:src/pages/index@_@astro":"chunks/index@_@astro.8e359cb4.mjs","\u0000@astro-page:src/pages/fallback@_@astro":"chunks/fallback@_@astro.6c7c4acd.mjs","\u0000@astro-page:src/pages/app/index@_@astro":"chunks/index@_@astro.f7e2409d.mjs","\u0000@astro-page:src/pages/app/account@_@astro":"chunks/account@_@astro.d58b2d34.mjs","\u0000@astro-page:src/pages/[...slug]@_@astro":"chunks/_...06f412d0.mjs","~/components/HeroSlider.vue":"_astro/HeroSlider.3d4a1d1c.js","/astro/hoisted.js?q=0":"_astro/hoisted.9d9d7ac4.js","~/components/PitchBar.vue":"_astro/PitchBar.c53e6d0b.js","~/components/ProductShelf.vue":"_astro/ProductShelf.f013b3ee.js","@astrojs/vue/client.js":"_astro/client.2d950540.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/Prices.vue":"_astro/Prices.de6df3cb.js","~/components/ShopHeader.vue":"_astro/ShopHeader.c0ba5061.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/scripts/firebase-app.ts":"_astro/firebase-app.84207480.js","astro:scripts/before-hydration.js":""},"assets":["/_astro/_...slug_.45bc69ca.css","/manifest.webmanifest","/robots.txt","/sw.js","/workbox-5e0bf4e4.js","/_astro/Carousel.f39be3c0.js","/_astro/HeroSlider.3d4a1d1c.js","/_astro/PitchBar.c53e6d0b.js","/_astro/Prices.de6df3cb.js","/_astro/ProductShelf.f013b3ee.js","/_astro/ShopHeader.c0ba5061.js","/_astro/_plugin-vue_export-helper.d3aaeb0d.js","/_astro/api.7f62c1ff.js","/_astro/client.2d950540.js","/_astro/firebase-app.84207480.js","/_astro/format-money.3b884fcb.js","/_astro/hoisted.9d9d7ac4.js","/_astro/idle-callback.889bf0ea.js","/_astro/img.517fec8e.js","/_astro/index.33347cbd.js","/_astro/modules-info.ad27b027.js","/_astro/preload-helper.cf010ec4.js","/_astro/runtime-dom.esm-bundler.00b967e0.js","/_astro/session-utm.744b0db3.js","/_astro/workbox-window.prod.es5.a7b12eab.js","/assets/cms-preview.css","/assets/cms.css","/assets/cvv.png","/assets/img-placeholder.png","/assets/payments.png","/assets/ssl-safe.png","/img/icon.png","/img/large-icon.png","/img/uploads/banner1.png","/img/uploads/banner2.png","/img/uploads/banner2.webp","/img/uploads/ecom-icon.png","/img/uploads/favicon.png","/img/uploads/headless.png","/img/uploads/headphone.png","/img/uploads/headphone.webp","/img/uploads/logo.png","/img/uploads/og-image.png","/img/uploads/passion.png","/img/uploads/passion.webp","/img/uploads/pwa-reliable.png","/img/uploads/rect8589.png","/img/uploads/rect859.png","/img/uploads/rect89.png","/img/uploads/rect89.webp","/img/uploads/ssl-safe.png"]}), {
2834
2834
  pageMap,
2835
2835
  renderers,
2836
2836
  });
@@ -1,8 +1,8 @@
1
- import { h as server_default } from './chunks/astro.c449fda8.mjs';
1
+ import { h as server_default } from './chunks/astro.2df8d1c5.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.116acf2f.mjs';
5
+ import { _ as _export_sfc } from './chunks/pages/_...slug_.astro.f0a57b8d.mjs';
6
6
  import 'path-to-regexp';
7
7
  import 'cookie';
8
8
  import '@astrojs/internal-helpers/path';