cloudcommerce 0.0.133 → 0.1.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 (260) hide show
  1. package/.vscode/settings.json +2 -1
  2. package/CHANGELOG.md +25 -0
  3. package/action.yml +13 -5
  4. package/ecomplus-stores/monocard/functions/core/package.json +1 -1
  5. package/ecomplus-stores/monocard/functions/events/package.json +1 -1
  6. package/ecomplus-stores/monocard/functions/modules/package.json +1 -1
  7. package/ecomplus-stores/monocard/functions/passport/package.json +1 -1
  8. package/ecomplus-stores/tia-sonia/functions/core/package.json +1 -1
  9. package/ecomplus-stores/tia-sonia/functions/events/package.json +1 -1
  10. package/ecomplus-stores/tia-sonia/functions/modules/package.json +1 -1
  11. package/ecomplus-stores/tia-sonia/functions/passport/package.json +1 -1
  12. package/package.json +8 -9
  13. package/packages/api/fetch-polyfill.js +1 -1
  14. package/packages/api/package.json +1 -1
  15. package/packages/api/tests/index.test.ts +0 -1
  16. package/packages/apps/correios/package.json +1 -1
  17. package/packages/apps/custom-payment/CHANGELOG.md +1 -0
  18. package/packages/apps/custom-payment/README.md +1 -0
  19. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.d.ts +68 -0
  20. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.js +55 -0
  21. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.js.map +1 -0
  22. package/packages/apps/custom-payment/lib/custom-payment-list-payments.d.ts +3 -0
  23. package/packages/apps/custom-payment/lib/custom-payment-list-payments.js +79 -0
  24. package/packages/apps/custom-payment/lib/custom-payment-list-payments.js.map +1 -0
  25. package/packages/apps/custom-payment/lib/custom-payment.d.ts +68 -0
  26. package/packages/apps/custom-payment/lib/custom-payment.js +11 -0
  27. package/packages/apps/custom-payment/lib/custom-payment.js.map +1 -0
  28. package/packages/apps/custom-payment/lib/index.d.ts +1 -0
  29. package/packages/apps/custom-payment/lib/index.js +2 -0
  30. package/packages/apps/custom-payment/lib/index.js.map +1 -0
  31. package/packages/apps/custom-payment/package.json +27 -0
  32. package/packages/apps/custom-payment/src/custom-payment-create-transaction.ts +67 -0
  33. package/packages/apps/custom-payment/src/custom-payment-list-payments.ts +96 -0
  34. package/packages/apps/custom-payment/src/custom-payment.ts +11 -0
  35. package/packages/apps/custom-payment/src/index.ts +1 -0
  36. package/packages/apps/custom-payment/tsconfig.json +6 -0
  37. package/packages/apps/custom-shipping/package.json +1 -1
  38. package/packages/apps/discounts/package.json +1 -1
  39. package/packages/apps/emails/package.json +2 -2
  40. package/packages/apps/frenet/package.json +1 -1
  41. package/packages/apps/galaxpay/CHANGELOG.md +1 -0
  42. package/packages/apps/galaxpay/README.md +1 -0
  43. package/packages/apps/galaxpay/assets/onload-expression.js +23 -0
  44. package/packages/apps/galaxpay/events.js +1 -0
  45. package/packages/apps/galaxpay/lib/functions-lib/all-parses.d.ts +5 -0
  46. package/packages/apps/galaxpay/lib/functions-lib/all-parses.js +79 -0
  47. package/packages/apps/galaxpay/lib/functions-lib/all-parses.js.map +1 -0
  48. package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.d.ts +3 -0
  49. package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.js +75 -0
  50. package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.js.map +1 -0
  51. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.d.ts +11 -0
  52. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.js +60 -0
  53. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.js.map +1 -0
  54. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-axios.d.ts +2 -0
  55. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-axios.js +20 -0
  56. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-axios.js.map +1 -0
  57. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/gerate-token.d.ts +2 -0
  58. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/gerate-token.js +32 -0
  59. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/gerate-token.js.map +1 -0
  60. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.d.ts +30 -0
  61. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.js +73 -0
  62. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.js.map +1 -0
  63. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.d.ts +8 -0
  64. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.js +56 -0
  65. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.js.map +1 -0
  66. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.d.ts +3 -0
  67. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.js +291 -0
  68. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.js.map +1 -0
  69. package/packages/apps/galaxpay/lib/functions-lib/utils.d.ts +8 -0
  70. package/packages/apps/galaxpay/lib/functions-lib/utils.js +17 -0
  71. package/packages/apps/galaxpay/lib/functions-lib/utils.js.map +1 -0
  72. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.d.ts +71 -0
  73. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js +199 -0
  74. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js.map +1 -0
  75. package/packages/apps/galaxpay/lib/galaxpay-events.d.ts +6 -0
  76. package/packages/apps/galaxpay/lib/galaxpay-events.js +21 -0
  77. package/packages/apps/galaxpay/lib/galaxpay-events.js.map +1 -0
  78. package/packages/apps/galaxpay/lib/galaxpay-list-payments.d.ts +7 -0
  79. package/packages/apps/galaxpay/lib/galaxpay-list-payments.js +105 -0
  80. package/packages/apps/galaxpay/lib/galaxpay-list-payments.js.map +1 -0
  81. package/packages/apps/galaxpay/lib/galaxpay.d.ts +76 -0
  82. package/packages/apps/galaxpay/lib/galaxpay.js +12 -0
  83. package/packages/apps/galaxpay/lib/galaxpay.js.map +1 -0
  84. package/packages/apps/galaxpay/lib/index.d.ts +1 -0
  85. package/packages/apps/galaxpay/lib/index.js +3 -0
  86. package/packages/apps/galaxpay/lib/index.js.map +1 -0
  87. package/packages/apps/galaxpay/package.json +36 -0
  88. package/packages/apps/galaxpay/scripts/build.sh +5 -0
  89. package/packages/apps/galaxpay/src/functions-lib/all-parses.ts +91 -0
  90. package/packages/apps/galaxpay/src/functions-lib/ecom/events-to-galaxpay.ts +85 -0
  91. package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/create-access.ts +80 -0
  92. package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/create-axios.ts +21 -0
  93. package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/gerate-token.ts +36 -0
  94. package/packages/apps/galaxpay/src/functions-lib/galaxpay/handle-plans.ts +92 -0
  95. package/packages/apps/galaxpay/src/functions-lib/galaxpay/update-subscription.ts +73 -0
  96. package/packages/apps/galaxpay/src/functions-lib/galaxpay/webhook.ts +381 -0
  97. package/packages/apps/galaxpay/src/functions-lib/utils.ts +23 -0
  98. package/packages/apps/galaxpay/src/galaxpay-create-transaction.ts +240 -0
  99. package/packages/apps/galaxpay/src/galaxpay-events.ts +28 -0
  100. package/packages/apps/galaxpay/src/galaxpay-list-payments.ts +130 -0
  101. package/packages/apps/galaxpay/src/galaxpay.ts +12 -0
  102. package/packages/apps/galaxpay/src/index.ts +2 -0
  103. package/packages/apps/galaxpay/tsconfig.json +6 -0
  104. package/packages/apps/galaxpay/types/config-app.d.ts +99 -0
  105. package/packages/apps/infinitepay/lib/infinitepay.js +1 -2
  106. package/packages/apps/infinitepay/lib/infinitepay.js.map +1 -1
  107. package/packages/apps/infinitepay/lib/ip-create-transaction.d.ts +1 -2
  108. package/packages/apps/infinitepay/lib/ip-create-transaction.js +3 -2
  109. package/packages/apps/infinitepay/lib/ip-create-transaction.js.map +1 -1
  110. package/packages/apps/infinitepay/lib/ip-list-payments.d.ts +1 -2
  111. package/packages/apps/infinitepay/lib/ip-list-payments.js.map +1 -1
  112. package/packages/apps/infinitepay/package.json +3 -3
  113. package/packages/apps/infinitepay/src/infinitepay.ts +1 -2
  114. package/packages/apps/infinitepay/src/ip-create-transaction.ts +8 -6
  115. package/packages/apps/infinitepay/src/ip-list-payments.ts +5 -3
  116. package/packages/apps/jadlog/CHANGELOG.md +1 -0
  117. package/packages/apps/jadlog/README.md +1 -0
  118. package/packages/apps/jadlog/lib/index.d.ts +1 -0
  119. package/packages/apps/jadlog/lib/index.js +2 -0
  120. package/packages/apps/jadlog/lib/index.js.map +1 -0
  121. package/packages/apps/jadlog/lib/jadlog.d.ts +2 -0
  122. package/packages/apps/jadlog/lib/jadlog.js +6 -0
  123. package/packages/apps/jadlog/lib/jadlog.js.map +1 -0
  124. package/packages/apps/jadlog/lib-mjs/calculate-jadlog.mjs +408 -0
  125. package/packages/apps/jadlog/lib-mjs/deadlines/range-0.mjs +147 -0
  126. package/packages/apps/jadlog/lib-mjs/deadlines/range-1.mjs +1149 -0
  127. package/packages/apps/jadlog/lib-mjs/deadlines/range-2.mjs +1137 -0
  128. package/packages/apps/jadlog/lib-mjs/deadlines/range-3.mjs +1638 -0
  129. package/packages/apps/jadlog/lib-mjs/deadlines/range-4.mjs +1089 -0
  130. package/packages/apps/jadlog/lib-mjs/deadlines/range-5.mjs +1101 -0
  131. package/packages/apps/jadlog/lib-mjs/deadlines/range-6.mjs +1893 -0
  132. package/packages/apps/jadlog/lib-mjs/deadlines/range-7.mjs +1371 -0
  133. package/packages/apps/jadlog/lib-mjs/deadlines/range-8.mjs +1401 -0
  134. package/packages/apps/jadlog/lib-mjs/deadlines/range-9.mjs +963 -0
  135. package/packages/apps/jadlog/lib-mjs/jadlog-get-deadlines.mjs +32 -0
  136. package/packages/apps/jadlog/package.json +28 -0
  137. package/packages/apps/jadlog/src/index.ts +1 -0
  138. package/packages/apps/jadlog/src/jadlog.ts +7 -0
  139. package/packages/apps/jadlog/tsconfig.json +6 -0
  140. package/packages/apps/mercadopago/lib/mercadopago.js +1 -2
  141. package/packages/apps/mercadopago/lib/mercadopago.js.map +1 -1
  142. package/packages/apps/mercadopago/lib/mp-create-transaction.d.ts +1 -2
  143. package/packages/apps/mercadopago/lib/mp-create-transaction.js +3 -2
  144. package/packages/apps/mercadopago/lib/mp-create-transaction.js.map +1 -1
  145. package/packages/apps/mercadopago/lib/mp-list-payments.d.ts +1 -2
  146. package/packages/apps/mercadopago/lib/mp-list-payments.js +2 -1
  147. package/packages/apps/mercadopago/lib/mp-list-payments.js.map +1 -1
  148. package/packages/apps/mercadopago/package.json +3 -3
  149. package/packages/apps/mercadopago/src/mercadopago.ts +1 -2
  150. package/packages/apps/mercadopago/src/mp-create-transaction.ts +12 -10
  151. package/packages/apps/mercadopago/src/mp-list-payments.ts +9 -7
  152. package/packages/apps/pagarme/lib/pagarme-create-transaction.js.map +1 -1
  153. package/packages/apps/pagarme/lib/pagarme-list-payments.d.ts +1 -2
  154. package/packages/apps/pagarme/lib/pagarme-list-payments.js.map +1 -1
  155. package/packages/apps/pagarme/package.json +3 -3
  156. package/packages/apps/pagarme/src/pagarme-create-transaction.ts +5 -3
  157. package/packages/apps/pagarme/src/pagarme-list-payments.ts +5 -3
  158. package/packages/apps/pix/lib/functions-lib/pix-auth/construtor.js +1 -1
  159. package/packages/apps/pix/lib/functions-lib/pix-auth/construtor.js.map +1 -1
  160. package/packages/apps/pix/lib/pix-create-transaction.d.ts +1 -2
  161. package/packages/apps/pix/lib/pix-create-transaction.js +6 -5
  162. package/packages/apps/pix/lib/pix-create-transaction.js.map +1 -1
  163. package/packages/apps/pix/lib/pix-list-payments.d.ts +1 -2
  164. package/packages/apps/pix/lib/pix-list-payments.js.map +1 -1
  165. package/packages/apps/pix/lib/pix-webhook.js +1 -1
  166. package/packages/apps/pix/lib/pix-webhook.js.map +1 -1
  167. package/packages/apps/pix/lib/pix.js +1 -2
  168. package/packages/apps/pix/lib/pix.js.map +1 -1
  169. package/packages/apps/pix/package.json +3 -3
  170. package/packages/apps/pix/src/functions-lib/pix-auth/construtor.ts +1 -1
  171. package/packages/apps/pix/src/pix-create-transaction.ts +10 -9
  172. package/packages/apps/pix/src/pix-list-payments.ts +5 -3
  173. package/packages/apps/pix/src/pix-webhook.ts +1 -1
  174. package/packages/apps/pix/src/pix.ts +1 -2
  175. package/packages/apps/tiny-erp/package.json +3 -3
  176. package/packages/cli/package.json +1 -1
  177. package/packages/config/package.json +1 -1
  178. package/packages/emails/package.json +2 -2
  179. package/packages/events/lib/firebase.js +2 -0
  180. package/packages/events/lib/firebase.js.map +1 -1
  181. package/packages/events/package.json +4 -3
  182. package/packages/events/src/firebase.ts +2 -0
  183. package/packages/firebase/lib/config.d.ts +10 -0
  184. package/packages/firebase/lib/config.js +13 -0
  185. package/packages/firebase/lib/config.js.map +1 -1
  186. package/packages/firebase/lib/init.d.ts +0 -1
  187. package/packages/firebase/lib/init.js +0 -1
  188. package/packages/firebase/lib/init.js.map +1 -1
  189. package/packages/firebase/package.json +3 -4
  190. package/packages/firebase/src/config.ts +14 -0
  191. package/packages/firebase/src/init.ts +0 -1
  192. package/packages/i18n/lib/en_us/i19get$1back.txt +1 -0
  193. package/packages/i18n/lib/en_us.d.ts +1 -0
  194. package/packages/i18n/lib/en_us.js +1 -0
  195. package/packages/i18n/lib/en_us.js.map +1 -1
  196. package/packages/i18n/lib/pt_br/i19get$1back.txt +1 -0
  197. package/packages/i18n/lib/pt_br/i19get.txt +1 -1
  198. package/packages/i18n/lib/pt_br.d.ts +2 -1
  199. package/packages/i18n/lib/pt_br.js +2 -1
  200. package/packages/i18n/lib/pt_br.js.map +1 -1
  201. package/packages/i18n/package.json +1 -1
  202. package/packages/i18n/src/en_us.ts +1 -0
  203. package/packages/i18n/src/pt_br.ts +2 -1
  204. package/packages/modules/lib/firebase/call-app-module.js +71 -51
  205. package/packages/modules/lib/firebase/call-app-module.js.map +1 -1
  206. package/packages/modules/package.json +6 -3
  207. package/packages/modules/src/firebase/call-app-module.ts +37 -24
  208. package/packages/passport/package.json +3 -3
  209. package/packages/ssr/lib/firebase.js +1 -2
  210. package/packages/ssr/lib/firebase.js.map +1 -1
  211. package/packages/ssr/package.json +5 -5
  212. package/packages/ssr/src/firebase.ts +1 -2
  213. package/packages/storefront/.eslintrc.cjs +1 -1
  214. package/packages/storefront/.nvmrc +1 -0
  215. package/packages/storefront/dist/client/HeaderButtons.f1c92fd8.js +1 -0
  216. package/packages/storefront/dist/client/Prices.795d082c.js +1 -0
  217. package/packages/storefront/dist/client/ProductCard.f477b7a1.js +1 -0
  218. package/packages/storefront/dist/client/assets/_...slug_.15766f41.css +1 -0
  219. package/packages/storefront/dist/client/assets/index.e6a09532.css +1 -0
  220. package/packages/storefront/dist/client/assets/server.4d9646d8.css +1 -0
  221. package/packages/storefront/dist/client/chunks/HeaderButtons.27ab2180.js +1 -0
  222. package/packages/storefront/dist/client/chunks/{LoginForm.83fec3a1.js → LoginForm.36774236.js} +1 -1
  223. package/packages/storefront/dist/client/chunks/Prices.vue_vue_type_script_setup_true_lang.522e4ac4.js +1 -0
  224. package/packages/storefront/dist/client/chunks/_plugin-vue_export-helper.979dc9e3.js +1 -0
  225. package/packages/storefront/dist/client/chunks/{price.130e6005.js → price.ecf7fed4.js} +1 -1
  226. package/packages/storefront/dist/client/chunks/runtime-core.esm-bundler.6c012e5d.js +1 -0
  227. package/packages/storefront/dist/client/client.8b4e336b.js +1 -0
  228. package/packages/storefront/dist/client/hoisted.f6ee2883.js +1 -0
  229. package/packages/storefront/dist/client/sw.js +1 -1
  230. package/packages/storefront/dist/server/entry.mjs +704 -70
  231. package/packages/storefront/package.json +12 -9
  232. package/packages/storefront/src/lib/assets/base.css +4 -0
  233. package/packages/storefront/src/lib/components/Prices.vue +165 -0
  234. package/packages/storefront/src/lib/components/ProductCard.vue +36 -0
  235. package/packages/storefront/src/lib/components/globals/Fade.vue +171 -0
  236. package/packages/storefront/src/lib/composables/use-component-variant.ts +13 -0
  237. package/packages/storefront/src/lib/composables/use-prices.ts +172 -0
  238. package/packages/storefront/src/lib/layouts/BaseBody.astro +1 -0
  239. package/packages/storefront/src/lib/pages/_vue.ts +13 -1
  240. package/packages/storefront/src/lib/state/modules-info.ts +1 -1
  241. package/packages/storefront/src/vue-globals.d.ts +9 -2
  242. package/packages/storefront/tailwind.config.cjs +1 -0
  243. package/packages/storefront/uno.config.cjs +1 -0
  244. package/packages/types/package.json +1 -1
  245. package/store.renovate.json +2 -1
  246. package/packages/storefront/dist/client/HeaderButtons.1968a9ac.js +0 -1
  247. package/packages/storefront/dist/client/Price.c4aab3ea.js +0 -1
  248. package/packages/storefront/dist/client/assets/_...slug_.580c5aa4.css +0 -1
  249. package/packages/storefront/dist/client/chunks/HeaderButtons.5a0e371e.js +0 -1
  250. package/packages/storefront/dist/client/chunks/runtime-core.esm-bundler.4dae6bc1.js +0 -1
  251. package/packages/storefront/dist/client/chunks/runtime-dom.esm-bundler.7a999c6c.js +0 -1
  252. package/packages/storefront/dist/client/client.79a40b9d.js +0 -1
  253. package/packages/storefront/dist/client/hoisted.cce93d56.js +0 -1
  254. package/packages/storefront/src/lib/components/Price/PriceCashback.vue +0 -13
  255. package/packages/storefront/src/lib/components/Price/PriceCompare.vue +0 -13
  256. package/packages/storefront/src/lib/components/Price/PriceDiscountLabel.vue +0 -13
  257. package/packages/storefront/src/lib/components/Price/PriceInstallments.vue +0 -13
  258. package/packages/storefront/src/lib/components/Price/PriceSale.vue +0 -13
  259. package/packages/storefront/src/lib/components/Price/PriceWithDiscount.vue +0 -13
  260. package/packages/storefront/src/lib/components/Price.vue +0 -57
@@ -16,10 +16,11 @@ import { fileURLToPath } from 'url';
16
16
  import http from 'http';
17
17
  import https from 'https';
18
18
  import send from 'send';
19
- import { defineComponent, h as h$2, createSSRApp, mergeProps, createVNode as createVNode$1, resolveDynamicComponent, withCtx, createTextVNode, toDisplayString, useSSRContext, toRefs, unref, ref, watch, toRef, computed, defineAsyncComponent, renderSlot as renderSlot$1, openBlock, createBlock, Fragment as Fragment$1, createCommentVNode, renderList, reactive, getCurrentInstance } from 'vue';
20
- import { renderToString as renderToString$1, ssrRenderAttrs, ssrRenderSlot, ssrRenderVNode, ssrInterpolate, ssrRenderList, ssrRenderAttr, ssrRenderComponent, ssrRenderClass, ssrIncludeBooleanAttr } from 'vue/server-renderer';
21
- import { i18n, formatMoney, img, price } from '@ecomplus/utils';
22
- import sizeOf from 'image-size';
19
+ import { defineComponent, computed, unref, useSSRContext, h as h$2, createSSRApp, mergeProps, createVNode as createVNode$1, resolveDynamicComponent, withCtx, createTextVNode, toDisplayString, toRefs, ref, watch, toRef, defineAsyncComponent, renderSlot as renderSlot$1, openBlock, createBlock, Fragment as Fragment$1, createCommentVNode, renderList, reactive, resolveComponent, resolveDirective, withDirectives } from 'vue';
20
+ import { ssrRenderSlotInner, renderToString as renderToString$1, ssrRenderAttrs, ssrRenderSlot, ssrRenderVNode, ssrInterpolate, ssrRenderList, ssrRenderAttr, ssrRenderComponent, ssrRenderClass, ssrIncludeBooleanAttr, ssrGetDirectiveProps } from 'vue/server-renderer';
21
+ import { i18n, formatMoney, img, price, onPromotion } from '@ecomplus/utils';
22
+ import { VTooltip } from 'floating-vue';
23
+ /* empty css */import sizeOf from 'image-size';
23
24
  import fs$1 from 'node:fs/promises';
24
25
  import { fileURLToPath as fileURLToPath$1 } from 'node:url';
25
26
  import api from '@cloudcommerce/api';
@@ -29,7 +30,7 @@ import 'node:os';
29
30
  import 'node:path';
30
31
  import 'magic-string';
31
32
  import 'slash';
32
- /* empty css */import { compile } from 'path-to-regexp';
33
+ /* empty css *//* empty css */import { compile } from 'path-to-regexp';
33
34
 
34
35
  /** Returns the function bound to the given object. */
35
36
  const __function_bind = Function.bind.bind(Function.call);
@@ -7302,6 +7303,9 @@ class AstroCookies {
7302
7303
  const serializeOptions = {
7303
7304
  expires: DELETED_EXPIRATION
7304
7305
  };
7306
+ if (options == null ? void 0 : options.domain) {
7307
+ serializeOptions.domain = options.domain;
7308
+ }
7305
7309
  if (options == null ? void 0 : options.path) {
7306
7310
  serializeOptions.path = options.path;
7307
7311
  }
@@ -7431,7 +7435,7 @@ function createComponent(arg1, moduleId) {
7431
7435
  }
7432
7436
  }
7433
7437
 
7434
- const ASTRO_VERSION = "1.6.14";
7438
+ const ASTRO_VERSION = "1.7.1";
7435
7439
 
7436
7440
  function createDeprecatedFetchContentFn() {
7437
7441
  return () => {
@@ -7856,7 +7860,7 @@ const AstroErrorData = defineErrors({
7856
7860
  OnlyResponseCanBeReturned: {
7857
7861
  title: "Invalid type returned by Astro page.",
7858
7862
  code: 3005,
7859
- message: (route, returnedValue) => `Route ${route ? route : ""} returned a \`${returnedValue}\`. Only a Response can be returned from Astro files.`,
7863
+ message: (route, returnedValue) => `Route \`${route ? route : ""}\` returned a \`${returnedValue}\`. Only a [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) can be returned from Astro files.`,
7860
7864
  hint: "See https://docs.astro.build/en/guides/server-side-rendering/#response for more information."
7861
7865
  },
7862
7866
  MissingMediaQueryDirective: {
@@ -7943,6 +7947,21 @@ See https://docs.astro.build/en/guides/server-side-rendering/ for more informati
7943
7947
  message: (componentName) => `Could not render \`${componentName}\`. No matching import has been found for \`${componentName}\`.`,
7944
7948
  hint: "Please make sure the component is properly imported."
7945
7949
  },
7950
+ InvalidPrerenderExport: {
7951
+ title: "Invalid prerender export.",
7952
+ code: 3019,
7953
+ message: (prefix, suffix) => {
7954
+ let msg = `A \`prerender\` export has been detected, but its value cannot be statically analyzed.`;
7955
+ if (prefix !== "const")
7956
+ msg += `
7957
+ Expected \`const\` declaration but got \`${prefix}\`.`;
7958
+ if (suffix !== "true")
7959
+ msg += `
7960
+ Expected \`true\` value but got \`${suffix}\`.`;
7961
+ return msg;
7962
+ },
7963
+ hint: "Mutable values declared at runtime are not supported. Please make sure to use exactly `export const prerender = true`."
7964
+ },
7946
7965
  UnknownViteError: {
7947
7966
  title: "Unknown Vite Error.",
7948
7967
  code: 4e3
@@ -7975,6 +7994,17 @@ See https://docs.astro.build/en/guides/server-side-rendering/ for more informati
7975
7994
  title: "Failed to parse Markdown frontmatter.",
7976
7995
  code: 6001
7977
7996
  },
7997
+ MarkdownContentSchemaValidationError: {
7998
+ title: "Content collection frontmatter invalid.",
7999
+ code: 6002,
8000
+ message: (collection, entryId, error) => {
8001
+ return [
8002
+ `${String(collection)} \u2192 ${String(entryId)} frontmatter does not match collection schema.`,
8003
+ ...error.errors.map((zodError) => zodError.message)
8004
+ ].join("\n");
8005
+ },
8006
+ hint: "See https://docs.astro.build/en/guides/content-collections for more information on content schemas."
8007
+ },
7978
8008
  UnknownConfigError: {
7979
8009
  title: "Unknown configuration error.",
7980
8010
  code: 7e3
@@ -8047,7 +8077,7 @@ class AstroError extends Error {
8047
8077
  this.type = "AstroError";
8048
8078
  const { code, name, title, message, stack, location, hint, frame } = props;
8049
8079
  this.errorCode = code;
8050
- if (name) {
8080
+ if (name && name !== "Error") {
8051
8081
  this.name = name;
8052
8082
  } else {
8053
8083
  this.name = ((_a = getErrorDataByCode(this.errorCode)) == null ? void 0 : _a.name) ?? "UnknownError";
@@ -8061,9 +8091,7 @@ class AstroError extends Error {
8061
8091
  this.frame = frame;
8062
8092
  }
8063
8093
  setErrorCode(errorCode) {
8064
- var _a;
8065
8094
  this.errorCode = errorCode;
8066
- this.name = ((_a = getErrorDataByCode(this.errorCode)) == null ? void 0 : _a.name) ?? "UnknownError";
8067
8095
  }
8068
8096
  setLocation(location) {
8069
8097
  this.loc = location;
@@ -8294,11 +8322,14 @@ class AstroComponentInstance {
8294
8322
  this[_a$2] = true;
8295
8323
  this.result = result;
8296
8324
  this.props = props;
8297
- this.slots = slots;
8298
8325
  this.factory = factory;
8326
+ this.slotValues = {};
8327
+ for (const name in slots) {
8328
+ this.slotValues[name] = slots[name]();
8329
+ }
8299
8330
  }
8300
8331
  async init() {
8301
- this.returnValue = this.factory(this.result, this.props, this.slots);
8332
+ this.returnValue = this.factory(this.result, this.props, this.slotValues);
8302
8333
  return this.returnValue;
8303
8334
  }
8304
8335
  async *render() {
@@ -9027,10 +9058,11 @@ If you're still stuck, please open an issue on GitHub or join us at https://astr
9027
9058
  });
9028
9059
  }
9029
9060
  if (!html && typeof Component === "string") {
9061
+ const Tag = sanitizeElementName(Component);
9030
9062
  const childSlots = Object.values(children).join("");
9031
9063
  const iterable = renderAstroTemplateResult(
9032
- await renderTemplate`<${Component}${internalSpreadAttributes(props)}${markHTMLString(
9033
- childSlots === "" && voidElementNames.test(Component) ? `/>` : `>${childSlots}</${Component}>`
9064
+ await renderTemplate`<${Tag}${internalSpreadAttributes(props)}${markHTMLString(
9065
+ childSlots === "" && voidElementNames.test(Tag) ? `/>` : `>${childSlots}</${Tag}>`
9034
9066
  )}`
9035
9067
  );
9036
9068
  html = "";
@@ -9090,6 +9122,12 @@ ${serializeProps(
9090
9122
  }
9091
9123
  return renderAll();
9092
9124
  }
9125
+ function sanitizeElementName(tag) {
9126
+ const unsafe = /[&<>'"\s]+/g;
9127
+ if (!unsafe.test(tag))
9128
+ return tag;
9129
+ return tag.trim().split(unsafe)[0].trim();
9130
+ }
9093
9131
  async function renderFragmentComponent(result, slots = {}) {
9094
9132
  const children = await renderSlot(result, slots == null ? void 0 : slots.default);
9095
9133
  if (children == null) {
@@ -9634,7 +9672,8 @@ class Slots {
9634
9672
  `Expected second parameter to be an array, received a ${typeof args}. If you're trying to pass an array as a single argument and getting unexpected results, make sure you're passing your array as a item of an array. Ex: Astro.slots.render('default', [["Hello", "World"]])`
9635
9673
  );
9636
9674
  } else if (args.length > 0) {
9637
- const component = await __privateGet$1(this, _slots)[name]();
9675
+ const slotValue = __privateGet$1(this, _slots)[name];
9676
+ const component = typeof slotValue === "function" ? await slotValue() : await slotValue;
9638
9677
  const expression = getFunctionExpression(component);
9639
9678
  if (expression) {
9640
9679
  const slot = expression(...args);
@@ -10212,6 +10251,18 @@ function createModuleScriptElementWithSrc(src, site) {
10212
10251
  function matchRoute(pathname, manifest) {
10213
10252
  return manifest.routes.find((route) => route.pattern.test(pathname));
10214
10253
  }
10254
+ function matchAssets(route, assets) {
10255
+ for (const asset of assets) {
10256
+ if (!asset.endsWith(".html"))
10257
+ continue;
10258
+ if (route.pattern.test(asset)) {
10259
+ return asset;
10260
+ }
10261
+ if (route.pattern.test(asset.replace(/index\.html$/, ""))) {
10262
+ return asset;
10263
+ }
10264
+ }
10265
+ }
10215
10266
 
10216
10267
  var __accessCheck = (obj, member, msg) => {
10217
10268
  if (!member.has(obj))
@@ -10299,6 +10350,9 @@ class App {
10299
10350
  let pathname = "/" + this.removeBase(url.pathname);
10300
10351
  let routeData = matchRoute(pathname, __privateGet(this, _manifestData));
10301
10352
  if (routeData) {
10353
+ const asset = matchAssets(routeData, __privateGet(this, _manifest$1).assets);
10354
+ if (asset)
10355
+ return void 0;
10302
10356
  return routeData;
10303
10357
  } else if (matchNotFound) {
10304
10358
  return matchRoute("/404", __privateGet(this, _manifestData));
@@ -10816,15 +10870,131 @@ const adapter = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
10816
10870
  start
10817
10871
  }, Symbol.toStringTag, { value: 'Module' }));
10818
10872
 
10873
+ const _sfc_main$a = /* @__PURE__ */ defineComponent({
10874
+ __name: "Fade",
10875
+ __ssrInlineRender: true,
10876
+ props: {
10877
+ speed: { default: "default" },
10878
+ slide: null,
10879
+ isLeaveTo: { type: Boolean, default: true },
10880
+ isEnterFrom: { type: Boolean, default: true }
10881
+ },
10882
+ setup(__props) {
10883
+ const props = __props;
10884
+ const duration = computed(() => {
10885
+ if (props.speed === "default")
10886
+ return "var(--transition, .2s linear)";
10887
+ return `var(--transition-${props.speed}, .4s linear)`;
10888
+ });
10889
+ const transform = computed(() => {
10890
+ switch (props.slide) {
10891
+ case "down":
10892
+ return "translate3d(0, -100%, 0)";
10893
+ case "left":
10894
+ return "translate3d(-100%, 0, 0)";
10895
+ case "right":
10896
+ return "translate3d(100%, 0, 0)";
10897
+ case "up":
10898
+ return "translate3d(0, 100%, 0)";
10899
+ default:
10900
+ return "none";
10901
+ }
10902
+ });
10903
+ const opacity = computed(() => {
10904
+ return transform.value !== "none" ? 0.1 : 0;
10905
+ });
10906
+ const enterFromOpacity = computed(() => {
10907
+ return props.isEnterFrom ? opacity.value : 1;
10908
+ });
10909
+ const leaveToOpacity = computed(() => {
10910
+ return props.isLeaveTo ? opacity.value : 1;
10911
+ });
10912
+ const enterFromTransform = computed(() => {
10913
+ return props.isEnterFrom ? transform.value : "none";
10914
+ });
10915
+ const leaveToTransform = computed(() => {
10916
+ return props.isLeaveTo ? transform.value : "none";
10917
+ });
10918
+ const isSlideY = computed(() => {
10919
+ return props.slide === "down" || props.slide === "up";
10920
+ });
10921
+ const height = computed(() => {
10922
+ return isSlideY.value ? 0 : "auto";
10923
+ });
10924
+ const width = computed(() => {
10925
+ return props.slide && !isSlideY.value ? 0 : "auto";
10926
+ });
10927
+ const enterFromHeight = computed(() => {
10928
+ return props.isEnterFrom ? height.value : "auto";
10929
+ });
10930
+ const leaveToHeight = computed(() => {
10931
+ return props.isLeaveTo ? height.value : "auto";
10932
+ });
10933
+ const enterFromWidth = computed(() => {
10934
+ return props.isEnterFrom ? width.value : "auto";
10935
+ });
10936
+ const leaveToWidth = computed(() => {
10937
+ return props.isLeaveTo ? width.value : "auto";
10938
+ });
10939
+ const willChange = computed(() => {
10940
+ let properties = "opacity";
10941
+ if (transform.value !== "none")
10942
+ properties += ", transform";
10943
+ if (height.value !== "auto")
10944
+ properties += ", height";
10945
+ if (width.value !== "auto")
10946
+ properties += ", width";
10947
+ return properties;
10948
+ });
10949
+ return (_ctx, _push, _parent, _attrs) => {
10950
+ ({ style: {
10951
+ "--de1ebbd6": unref(willChange),
10952
+ "--fb017372": unref(duration),
10953
+ "--a7913688": unref(enterFromOpacity),
10954
+ "--44556fdd": unref(enterFromTransform),
10955
+ "--b31f6b54": unref(enterFromHeight),
10956
+ "--77b9da92": unref(enterFromWidth),
10957
+ "--764bb2e8": unref(leaveToOpacity),
10958
+ "--816204a6": unref(leaveToTransform),
10959
+ "--5ef3e2f4": unref(leaveToHeight),
10960
+ "--7b2c0887": unref(leaveToWidth)
10961
+ } });
10962
+ ssrRenderSlotInner(_ctx.$slots, "default", {}, null, _push, _parent, null, true);
10963
+ };
10964
+ }
10965
+ });
10966
+
10967
+ const _export_sfc = (sfc, props) => {
10968
+ const target = sfc.__vccOpts || sfc;
10969
+ for (const [key, val] of props) {
10970
+ target[key] = val;
10971
+ }
10972
+ return target;
10973
+ };
10974
+
10975
+ const _sfc_setup$a = _sfc_main$a.setup;
10976
+ _sfc_main$a.setup = (props, ctx) => {
10977
+ const ssrContext = useSSRContext();
10978
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("src/lib/components/globals/Fade.vue");
10979
+ return _sfc_setup$a ? _sfc_setup$a(props, ctx) : void 0;
10980
+ };
10981
+ const Fade = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-f3719df1"]]);
10982
+
10983
+ const formatPercentage = (value, digits = 1) => {
10984
+ return Number.isInteger(value) ? `${value}%` : `${value.toFixed(digits)}%`;
10985
+ };
10819
10986
  const createApp = (app) => {
10820
10987
  app.use({
10821
10988
  install: (app2, options) => {
10822
10989
  app2.config.globalProperties.$t = (dict, lang) => {
10823
10990
  return i18n(dict, lang || options?.lang);
10824
10991
  };
10825
- app2.config.globalProperties.$formatMoney = formatMoney;
10992
+ app2.config.globalProperties.$money = formatMoney;
10993
+ app2.config.globalProperties.$percentage = formatPercentage;
10826
10994
  }
10827
10995
  });
10996
+ app.directive("tooltip", VTooltip);
10997
+ app.component("Fade", Fade);
10828
10998
  };
10829
10999
 
10830
11000
  /**
@@ -11894,14 +12064,6 @@ _sfc_main$8.setup = (props, ctx) => {
11894
12064
  return _sfc_setup$8 ? _sfc_setup$8(props, ctx) : void 0;
11895
12065
  };
11896
12066
 
11897
- const _export_sfc = (sfc, props) => {
11898
- const target = sfc.__vccOpts || sfc;
11899
- for (const [key, val] of props) {
11900
- target[key] = val;
11901
- }
11902
- return target;
11903
- };
11904
-
11905
12067
  const _sfc_main$7 = {};
11906
12068
 
11907
12069
  function _sfc_ssrRender$1(_ctx, _push, _parent, _attrs) {
@@ -12332,14 +12494,416 @@ const emptyInfo = {
12332
12494
  };
12333
12495
  const modulesInfo = reactive(emptyInfo);
12334
12496
 
12497
+ const getPriceWithDiscount = (price, discount) => {
12498
+ const { type, value } = discount;
12499
+ let priceWithDiscount;
12500
+ if (value) {
12501
+ if (type === "percentage") {
12502
+ priceWithDiscount = price * ((100 - value) / 100);
12503
+ } else {
12504
+ priceWithDiscount = price - value;
12505
+ }
12506
+ return priceWithDiscount > 0 ? priceWithDiscount : 0;
12507
+ }
12508
+ return price;
12509
+ };
12510
+ const usePrices = (props) => {
12511
+ const _product = computed(() => {
12512
+ return props.product || {
12513
+ price: props.price || 0,
12514
+ base_price: props.basePrice
12515
+ };
12516
+ });
12517
+ const hasVariedPrices = computed(() => {
12518
+ const { variations } = _product.value;
12519
+ if (variations) {
12520
+ const productPrice = price(_product.value);
12521
+ for (let i = 0; i < variations.length; i++) {
12522
+ const price$1 = price({
12523
+ ..._product.value,
12524
+ ...variations[i]
12525
+ });
12526
+ if (price$1 > productPrice) {
12527
+ return true;
12528
+ }
12529
+ }
12530
+ }
12531
+ return false;
12532
+ });
12533
+ const extraDiscount = computed(() => {
12534
+ return modulesInfo.apply_discount.available_extra_discount;
12535
+ });
12536
+ const salePrice = computed(() => {
12537
+ const price$1 = price(_product.value);
12538
+ const discount = extraDiscount.value;
12539
+ if (discount && (!discount.min_amount || price$1 > discount.min_amount)) {
12540
+ return getPriceWithDiscount(price$1, discount);
12541
+ }
12542
+ return price$1;
12543
+ });
12544
+ const comparePrice = computed(() => {
12545
+ if (onPromotion(_product.value)) {
12546
+ return _product.value.base_price;
12547
+ }
12548
+ const price$1 = price(_product.value);
12549
+ if (price$1 > salePrice.value) {
12550
+ return price$1;
12551
+ }
12552
+ return 0;
12553
+ });
12554
+ const installmentsObject = computed(() => {
12555
+ return props.installmentsOption || modulesInfo.list_payments.installments_option || { max_number: 1 };
12556
+ });
12557
+ const installmentsNumber = computed(() => {
12558
+ if (installmentsObject.value.max_number <= 1) {
12559
+ return 1;
12560
+ }
12561
+ const minInstallment = installmentsObject.value.min_installment || 5;
12562
+ const maxInstallmentsNumber = Math.round(salePrice.value / minInstallment);
12563
+ return Math.min(maxInstallmentsNumber, installmentsObject.value.max_number);
12564
+ });
12565
+ const monthlyInterest = computed(() => {
12566
+ return installmentsObject.value.monthly_interest || 0;
12567
+ });
12568
+ const installmentValue = computed(() => {
12569
+ if (installmentsNumber.value >= 2) {
12570
+ if (monthlyInterest.value) {
12571
+ return salePrice.value / installmentsNumber.value;
12572
+ }
12573
+ const interest = monthlyInterest.value / 100;
12574
+ return salePrice.value * interest / (1 - (1 + interest) ** -installmentsNumber.value);
12575
+ }
12576
+ return 0;
12577
+ });
12578
+ const discountObject = computed(() => {
12579
+ const discount = props.discountOption || modulesInfo.list_payments.discount_option;
12580
+ if (discount && (!discount.min_amount || discount.min_amount <= salePrice.value) && (!props.isAmountTotal || discount.apply_at === "total")) {
12581
+ return discount;
12582
+ }
12583
+ return {};
12584
+ });
12585
+ const discountLabel = computed(() => {
12586
+ return discountObject.value.label || "";
12587
+ });
12588
+ const priceWithDiscount = computed(() => {
12589
+ return getPriceWithDiscount(salePrice.value, discountObject.value);
12590
+ });
12591
+ const pointsProgramObject = computed(() => {
12592
+ if (props.loyaltyPointsProgram) {
12593
+ return props.loyaltyPointsProgram;
12594
+ }
12595
+ const pointsPrograms = modulesInfo.list_payments.loyalty_points_programs;
12596
+ if (pointsPrograms) {
12597
+ const programIds = Object.keys(pointsPrograms);
12598
+ for (let i = 0; i < programIds.length; i++) {
12599
+ const program = pointsPrograms[i];
12600
+ if (program && program.earn_percentage > 0) {
12601
+ return program;
12602
+ }
12603
+ }
12604
+ }
12605
+ return { ratio: 0 };
12606
+ });
12607
+ const pointsMinPrice = computed(() => {
12608
+ return pointsProgramObject.value.min_subtotal_to_earn || 0;
12609
+ });
12610
+ const pointsProgramName = computed(() => {
12611
+ return pointsProgramObject.value.name || "";
12612
+ });
12613
+ const earnPointsPercentage = computed(() => {
12614
+ return pointsProgramObject.value.earn_percentage || 0;
12615
+ });
12616
+ const earnPointsFactor = computed(() => {
12617
+ return earnPointsPercentage.value / 100;
12618
+ });
12619
+ const pointsCashback = computed(() => {
12620
+ return earnPointsFactor.value > 0 ? salePrice.value * earnPointsFactor.value : 0;
12621
+ });
12622
+ return {
12623
+ hasVariedPrices,
12624
+ salePrice,
12625
+ comparePrice,
12626
+ installmentsObject,
12627
+ installmentsNumber,
12628
+ monthlyInterest,
12629
+ installmentValue,
12630
+ discountObject,
12631
+ discountLabel,
12632
+ priceWithDiscount,
12633
+ pointsProgramObject,
12634
+ pointsMinPrice,
12635
+ pointsProgramName,
12636
+ earnPointsPercentage,
12637
+ earnPointsFactor,
12638
+ pointsCashback
12639
+ };
12640
+ };
12641
+
12642
+ const useComponentVariant = (props) => {
12643
+ return computed(() => {
12644
+ let variantName = "";
12645
+ Object.keys(props).forEach((prop) => {
12646
+ if (props[prop] === true) {
12647
+ variantName += ` ${prop.replace(/^(is|has)/, "")}`;
12648
+ }
12649
+ });
12650
+ return variantName.slice(1);
12651
+ });
12652
+ };
12653
+
12335
12654
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
12336
- __name: "PriceSale",
12655
+ __name: "Prices",
12337
12656
  __ssrInlineRender: true,
12657
+ props: {
12658
+ product: null,
12659
+ price: null,
12660
+ basePrice: null,
12661
+ isAmountTotal: { type: Boolean },
12662
+ installmentsOption: null,
12663
+ discountOption: null,
12664
+ isBig: { type: Boolean },
12665
+ isLiteral: { type: Boolean },
12666
+ hasCashback: { type: Boolean, default: true },
12667
+ hasPriceOptions: { type: Boolean, default: true }
12668
+ },
12338
12669
  setup(__props) {
12339
- const instance = getCurrentInstance();
12340
- const price = instance.parent.exposed.salePrice;
12670
+ const props = __props;
12671
+ const prices = usePrices(props);
12672
+ const {
12673
+ hasVariedPrices,
12674
+ salePrice,
12675
+ comparePrice,
12676
+ earnPointsPercentage,
12677
+ pointsCashback,
12678
+ installmentsNumber,
12679
+ monthlyInterest,
12680
+ installmentValue,
12681
+ priceWithDiscount,
12682
+ discountLabel
12683
+ } = prices;
12684
+ const componentVariant = useComponentVariant(props);
12685
+ const isFade = ref(false);
12686
+ setTimeout(() => {
12687
+ isFade.value = true;
12688
+ setTimeout(() => {
12689
+ isFade.value = false;
12690
+ }, 5e3);
12691
+ }, 5e3);
12341
12692
  return (_ctx, _push, _parent, _attrs) => {
12342
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "price-sale" }, _attrs))}>${ssrInterpolate(unref(price))}</div>`);
12693
+ const _component_Fade = resolveComponent("Fade");
12694
+ const _directive_tooltip = resolveDirective("tooltip");
12695
+ ssrRenderSlot(_ctx.$slots, "default", unref(prices), () => {
12696
+ _push(`<div${ssrRenderAttr("data-sf-prices", unref(componentVariant))} class="text-base-600">`);
12697
+ if (unref(comparePrice)) {
12698
+ ssrRenderSlot(_ctx.$slots, "compare", unref(prices), () => {
12699
+ _push(`<span${ssrRenderAttr("data-sf-prices-compare", unref(comparePrice))} class="text-base-500 mr-1">`);
12700
+ ssrRenderSlot(_ctx.$slots, "compare-pre", {}, () => {
12701
+ if (__props.isLiteral) {
12702
+ _push(`<small>${ssrInterpolate(`${"De"} `)}</small>`);
12703
+ } else {
12704
+ _push(`<!---->`);
12705
+ }
12706
+ }, _push, _parent);
12707
+ ssrRenderSlot(_ctx.$slots, "compare-value", unref(prices), () => {
12708
+ _push(`<s>${ssrInterpolate(_ctx.$money(unref(comparePrice)))}</s>`);
12709
+ }, _push, _parent);
12710
+ ssrRenderSlot(_ctx.$slots, "compare-post", {}, () => {
12711
+ if (__props.isLiteral) {
12712
+ _push(`<small>${ssrInterpolate(` ${"Por"}`)}</small>`);
12713
+ } else {
12714
+ _push(`<!---->`);
12715
+ }
12716
+ }, _push, _parent);
12717
+ _push(`</span>`);
12718
+ }, _push, _parent);
12719
+ } else {
12720
+ _push(`<!---->`);
12721
+ }
12722
+ ssrRenderSlot(_ctx.$slots, "sale", unref(prices), () => {
12723
+ _push(`<strong${ssrRenderAttr("data-sf-prices-sale", unref(salePrice))} class="inline-block text-base-800">`);
12724
+ ssrRenderSlot(_ctx.$slots, "sale-pre", {}, () => {
12725
+ if (unref(hasVariedPrices)) {
12726
+ _push(`<small>${ssrInterpolate(`${"A partir de"} `)}</small>`);
12727
+ } else {
12728
+ _push(`<!---->`);
12729
+ }
12730
+ }, _push, _parent);
12731
+ ssrRenderSlot(_ctx.$slots, "sale-value", unref(prices), () => {
12732
+ _push(`${ssrInterpolate(_ctx.$money(unref(salePrice)))}`);
12733
+ }, _push, _parent);
12734
+ ssrRenderSlot(_ctx.$slots, "sale-post", {}, null, _push, _parent);
12735
+ _push(`</strong>`);
12736
+ }, _push, _parent);
12737
+ if (unref(pointsCashback)) {
12738
+ ssrRenderSlot(_ctx.$slots, "cashback", unref(prices), () => {
12739
+ _push(ssrRenderComponent(_component_Fade, { slide: "down" }, {
12740
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
12741
+ if (_push2) {
12742
+ if (__props.hasCashback) {
12743
+ _push2(`<div${ssrRenderAttr("data-sf-prices-cashback", unref(pointsCashback))}${_scopeId}><span${ssrRenderAttrs(ssrGetDirectiveProps(_ctx, _directive_tooltip, "Receba $1 de volta".replace("$1", _ctx.$percentage(unref(earnPointsPercentage))), void 0, { bottom: true }))}${_scopeId}>`);
12744
+ ssrRenderSlot(_ctx.$slots, "cashback-pre", {}, () => {
12745
+ _push2(`<i class="i-arrow-uturn-left mr-1"${_scopeId}></i>`);
12746
+ }, _push2, _parent2, _scopeId);
12747
+ ssrRenderSlot(_ctx.$slots, "cashback-value", unref(prices), () => {
12748
+ _push2(`<span class="font-medium"${_scopeId}>${ssrInterpolate(_ctx.$money(unref(pointsCashback)))}</span>`);
12749
+ }, _push2, _parent2, _scopeId);
12750
+ ssrRenderSlot(_ctx.$slots, "cashback-post", {}, () => {
12751
+ _push2(`<small${_scopeId}> cashback</small>`);
12752
+ }, _push2, _parent2, _scopeId);
12753
+ _push2(`</span></div>`);
12754
+ } else {
12755
+ _push2(`<!---->`);
12756
+ }
12757
+ } else {
12758
+ return [
12759
+ __props.hasCashback ? (openBlock(), createBlock("div", {
12760
+ key: 0,
12761
+ "data-sf-prices-cashback": unref(pointsCashback)
12762
+ }, [
12763
+ withDirectives((openBlock(), createBlock("span", null, [
12764
+ renderSlot$1(_ctx.$slots, "cashback-pre", {}, () => [
12765
+ createVNode$1("i", { class: "i-arrow-uturn-left mr-1" })
12766
+ ]),
12767
+ renderSlot$1(_ctx.$slots, "cashback-value", unref(prices), () => [
12768
+ createVNode$1("span", { class: "font-medium" }, toDisplayString(_ctx.$money(unref(pointsCashback))), 1)
12769
+ ]),
12770
+ renderSlot$1(_ctx.$slots, "cashback-post", {}, () => [
12771
+ createVNode$1("small", null, " cashback")
12772
+ ])
12773
+ ])), [
12774
+ [
12775
+ _directive_tooltip,
12776
+ "Receba $1 de volta".replace("$1", _ctx.$percentage(unref(earnPointsPercentage))),
12777
+ void 0,
12778
+ { bottom: true }
12779
+ ]
12780
+ ])
12781
+ ], 8, ["data-sf-prices-cashback"])) : createCommentVNode("", true)
12782
+ ];
12783
+ }
12784
+ }),
12785
+ _: 3
12786
+ }, _parent));
12787
+ }, _push, _parent);
12788
+ } else {
12789
+ _push(`<!---->`);
12790
+ }
12791
+ if (unref(installmentValue)) {
12792
+ ssrRenderSlot(_ctx.$slots, "installment", unref(prices), () => {
12793
+ _push(ssrRenderComponent(_component_Fade, { slide: "down" }, {
12794
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
12795
+ if (_push2) {
12796
+ if (__props.hasPriceOptions) {
12797
+ _push2(`<div${ssrRenderAttr("data-sf-prices-installment", unref(installmentValue))}${_scopeId}>`);
12798
+ ssrRenderSlot(_ctx.$slots, "installment-pre", {}, () => {
12799
+ if (__props.isLiteral) {
12800
+ _push2(`<small${_scopeId}>${ssrInterpolate(`${"At\xE9"} `)}</small>`);
12801
+ } else {
12802
+ _push2(`<!---->`);
12803
+ }
12804
+ }, _push2, _parent2, _scopeId);
12805
+ ssrRenderSlot(_ctx.$slots, "installment-value", unref(prices), () => {
12806
+ _push2(`${ssrInterpolate(unref(installmentsNumber))}x `);
12807
+ if (__props.isLiteral) {
12808
+ _push2(`<small${_scopeId}>${ssrInterpolate(` ${"De"} `)}</small>`);
12809
+ } else {
12810
+ _push2(`<!---->`);
12811
+ }
12812
+ _push2(`<span${_scopeId}>${ssrInterpolate(_ctx.$money(unref(installmentValue)))}</span>`);
12813
+ }, _push2, _parent2, _scopeId);
12814
+ ssrRenderSlot(_ctx.$slots, "installment-post", {}, () => {
12815
+ if (!unref(monthlyInterest) && __props.isLiteral) {
12816
+ _push2(`<small${_scopeId}>${ssrInterpolate("Sem juros")}</small>`);
12817
+ } else {
12818
+ _push2(`<!---->`);
12819
+ }
12820
+ }, _push2, _parent2, _scopeId);
12821
+ _push2(`</div>`);
12822
+ } else {
12823
+ _push2(`<!---->`);
12824
+ }
12825
+ } else {
12826
+ return [
12827
+ __props.hasPriceOptions ? (openBlock(), createBlock("div", {
12828
+ key: 0,
12829
+ "data-sf-prices-installment": unref(installmentValue)
12830
+ }, [
12831
+ renderSlot$1(_ctx.$slots, "installment-pre", {}, () => [
12832
+ __props.isLiteral ? (openBlock(), createBlock("small", { key: 0 }, toDisplayString(`${"At\xE9"} `))) : createCommentVNode("", true)
12833
+ ]),
12834
+ renderSlot$1(_ctx.$slots, "installment-value", unref(prices), () => [
12835
+ createTextVNode(toDisplayString(unref(installmentsNumber)) + "x ", 1),
12836
+ __props.isLiteral ? (openBlock(), createBlock("small", { key: 0 }, toDisplayString(` ${"De"} `))) : createCommentVNode("", true),
12837
+ createVNode$1("span", null, toDisplayString(_ctx.$money(unref(installmentValue))), 1)
12838
+ ]),
12839
+ renderSlot$1(_ctx.$slots, "installment-post", {}, () => [
12840
+ !unref(monthlyInterest) && __props.isLiteral ? (openBlock(), createBlock("small", { key: 0 }, toDisplayString("Sem juros"))) : createCommentVNode("", true)
12841
+ ])
12842
+ ], 8, ["data-sf-prices-installment"])) : createCommentVNode("", true)
12843
+ ];
12844
+ }
12845
+ }),
12846
+ _: 3
12847
+ }, _parent));
12848
+ }, _push, _parent);
12849
+ } else {
12850
+ _push(`<!---->`);
12851
+ }
12852
+ if (unref(priceWithDiscount) < unref(salePrice)) {
12853
+ ssrRenderSlot(_ctx.$slots, "discount", unref(prices), () => {
12854
+ _push(ssrRenderComponent(_component_Fade, { slide: "down" }, {
12855
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
12856
+ if (_push2) {
12857
+ if (__props.hasPriceOptions) {
12858
+ _push2(`<div${ssrRenderAttr("data-sf-prices-discount", unref(priceWithDiscount))}${_scopeId}>`);
12859
+ ssrRenderSlot(_ctx.$slots, "discount-pre", {}, () => {
12860
+ if (!unref(discountLabel)) {
12861
+ _push2(`<small${_scopeId}>${ssrInterpolate(`${"A partir de"} `)}</small>`);
12862
+ } else {
12863
+ _push2(`<!---->`);
12864
+ }
12865
+ }, _push2, _parent2, _scopeId);
12866
+ ssrRenderSlot(_ctx.$slots, "discount-value", unref(prices), () => {
12867
+ _push2(`<span${_scopeId}>${ssrInterpolate(_ctx.$money(unref(priceWithDiscount)))}</span>`);
12868
+ }, _push2, _parent2, _scopeId);
12869
+ ssrRenderSlot(_ctx.$slots, "discount-post", {}, () => {
12870
+ if (unref(discountLabel)) {
12871
+ _push2(`<small${_scopeId}>${ssrInterpolate(` ${unref(discountLabel)}`)}</small>`);
12872
+ } else {
12873
+ _push2(`<!---->`);
12874
+ }
12875
+ }, _push2, _parent2, _scopeId);
12876
+ _push2(`</div>`);
12877
+ } else {
12878
+ _push2(`<!---->`);
12879
+ }
12880
+ } else {
12881
+ return [
12882
+ __props.hasPriceOptions ? (openBlock(), createBlock("div", {
12883
+ key: 0,
12884
+ "data-sf-prices-discount": unref(priceWithDiscount)
12885
+ }, [
12886
+ renderSlot$1(_ctx.$slots, "discount-pre", {}, () => [
12887
+ !unref(discountLabel) ? (openBlock(), createBlock("small", { key: 0 }, toDisplayString(`${"A partir de"} `))) : createCommentVNode("", true)
12888
+ ]),
12889
+ renderSlot$1(_ctx.$slots, "discount-value", unref(prices), () => [
12890
+ createVNode$1("span", null, toDisplayString(_ctx.$money(unref(priceWithDiscount))), 1)
12891
+ ]),
12892
+ renderSlot$1(_ctx.$slots, "discount-post", {}, () => [
12893
+ unref(discountLabel) ? (openBlock(), createBlock("small", { key: 0 }, toDisplayString(` ${unref(discountLabel)}`), 1)) : createCommentVNode("", true)
12894
+ ])
12895
+ ], 8, ["data-sf-prices-discount"])) : createCommentVNode("", true)
12896
+ ];
12897
+ }
12898
+ }),
12899
+ _: 3
12900
+ }, _parent));
12901
+ }, _push, _parent);
12902
+ } else {
12903
+ _push(`<!---->`);
12904
+ }
12905
+ _push(`</div>`);
12906
+ }, _push, _parent);
12343
12907
  };
12344
12908
  }
12345
12909
  });
@@ -12347,51 +12911,120 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
12347
12911
  const _sfc_setup$1 = _sfc_main$1.setup;
12348
12912
  _sfc_main$1.setup = (props, ctx) => {
12349
12913
  const ssrContext = useSSRContext();
12350
- (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("src/lib/components/Price/PriceSale.vue");
12914
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("src/lib/components/Prices.vue");
12351
12915
  return _sfc_setup$1 ? _sfc_setup$1(props, ctx) : void 0;
12352
12916
  };
12353
12917
 
12354
12918
  const _sfc_main = /* @__PURE__ */ defineComponent({
12355
- __name: "Price",
12919
+ __name: "ProductCard",
12356
12920
  __ssrInlineRender: true,
12357
12921
  props: {
12358
- product: null,
12359
- price: null,
12360
- basePrice: null
12922
+ as: { default: "div" }
12361
12923
  },
12362
- setup(__props, { expose }) {
12363
- const props = __props;
12364
- const getPriceWithDiscount = (price, discount) => {
12365
- const { type, value } = discount;
12366
- let priceWithDiscount;
12367
- if (value) {
12368
- if (type === "percentage") {
12369
- priceWithDiscount = price * ((100 - value) / 100);
12370
- } else {
12371
- priceWithDiscount = price - value;
12372
- }
12373
- return priceWithDiscount > 0 ? priceWithDiscount : 0;
12374
- }
12375
- return price;
12376
- };
12377
- const extraDiscount = computed(() => {
12378
- return modulesInfo.apply_discount.available_extra_discount;
12379
- });
12380
- const salePrice = computed(() => {
12381
- const price$1 = props.price || price(props.product);
12382
- const discount = extraDiscount.value;
12383
- if (discount && (!discount.min_amount || price$1 > discount.min_amount)) {
12384
- return getPriceWithDiscount(price$1, discount);
12385
- }
12386
- return price$1;
12387
- });
12388
- expose({ salePrice });
12924
+ setup(__props) {
12925
+ const price = ref(12);
12926
+ const isBig = ref(false);
12927
+ setTimeout(() => {
12928
+ price.value = 8;
12929
+ isBig.value = true;
12930
+ }, 5e3);
12389
12931
  return (_ctx, _push, _parent, _attrs) => {
12390
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "price" }, _attrs))}>${ssrInterpolate("De")} ${ssrInterpolate("Por".toLowerCase())} ${ssrInterpolate(__props.price)} `);
12391
- ssrRenderSlot(_ctx.$slots, "default", {}, () => {
12392
- _push(ssrRenderComponent(_sfc_main$1, null, null, _parent));
12393
- }, _push, _parent);
12394
- _push(`</div>`);
12932
+ ssrRenderVNode(_push, createVNode$1(resolveDynamicComponent(__props.as), _attrs, {
12933
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
12934
+ if (_push2) {
12935
+ _push2(ssrRenderComponent(_sfc_main$1, null, {
12936
+ default: withCtx(({ salePrice }, _push3, _parent3, _scopeId2) => {
12937
+ if (_push3) {
12938
+ _push3(` ProductCard ${ssrInterpolate(salePrice)}`);
12939
+ } else {
12940
+ return [
12941
+ createTextVNode(" ProductCard " + toDisplayString(salePrice), 1)
12942
+ ];
12943
+ }
12944
+ }),
12945
+ _: 1
12946
+ }, _parent2, _scopeId));
12947
+ _push2(ssrRenderComponent(_sfc_main$1, {
12948
+ product: { price: price.value }
12949
+ }, null, _parent2, _scopeId));
12950
+ _push2(ssrRenderComponent(_sfc_main$1, {
12951
+ price: 12,
12952
+ "base-price": 17
12953
+ }, null, _parent2, _scopeId));
12954
+ _push2(ssrRenderComponent(_sfc_main$1, {
12955
+ price: 12,
12956
+ "base-price": 16,
12957
+ "is-literal": true
12958
+ }, null, _parent2, _scopeId));
12959
+ _push2(ssrRenderComponent(_sfc_main$1, {
12960
+ price: 12,
12961
+ "is-big": isBig.value
12962
+ }, null, _parent2, _scopeId));
12963
+ _push2(ssrRenderComponent(_sfc_main$1, {
12964
+ price: 14,
12965
+ "base-price": 18,
12966
+ "is-big": isBig.value,
12967
+ "is-literal": true
12968
+ }, null, _parent2, _scopeId));
12969
+ _push2(ssrRenderComponent(_sfc_main$1, {
12970
+ price: 12,
12971
+ "base-price": 16
12972
+ }, {
12973
+ "compare-value": withCtx(({ comparePrice }, _push3, _parent3, _scopeId2) => {
12974
+ if (_push3) {
12975
+ _push3(` x${ssrInterpolate(comparePrice)}`);
12976
+ } else {
12977
+ return [
12978
+ createTextVNode(" x" + toDisplayString(comparePrice), 1)
12979
+ ];
12980
+ }
12981
+ }),
12982
+ _: 1
12983
+ }, _parent2, _scopeId));
12984
+ } else {
12985
+ return [
12986
+ createVNode$1(_sfc_main$1, null, {
12987
+ default: withCtx(({ salePrice }) => [
12988
+ createTextVNode(" ProductCard " + toDisplayString(salePrice), 1)
12989
+ ]),
12990
+ _: 1
12991
+ }),
12992
+ createVNode$1(_sfc_main$1, {
12993
+ product: { price: price.value }
12994
+ }, null, 8, ["product"]),
12995
+ createVNode$1(_sfc_main$1, {
12996
+ price: 12,
12997
+ "base-price": 17
12998
+ }),
12999
+ createVNode$1(_sfc_main$1, {
13000
+ price: 12,
13001
+ "base-price": 16,
13002
+ "is-literal": true
13003
+ }),
13004
+ createVNode$1(_sfc_main$1, {
13005
+ price: 12,
13006
+ "is-big": isBig.value
13007
+ }, null, 8, ["is-big"]),
13008
+ createVNode$1(_sfc_main$1, {
13009
+ price: 14,
13010
+ "base-price": 18,
13011
+ "is-big": isBig.value,
13012
+ "is-literal": true
13013
+ }, null, 8, ["is-big"]),
13014
+ createVNode$1(_sfc_main$1, {
13015
+ price: 12,
13016
+ "base-price": 16
13017
+ }, {
13018
+ "compare-value": withCtx(({ comparePrice }) => [
13019
+ createTextVNode(" x" + toDisplayString(comparePrice), 1)
13020
+ ]),
13021
+ _: 1
13022
+ })
13023
+ ];
13024
+ }
13025
+ }),
13026
+ _: 1
13027
+ }), _parent);
12395
13028
  };
12396
13029
  }
12397
13030
  });
@@ -12399,7 +13032,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
12399
13032
  const _sfc_setup = _sfc_main.setup;
12400
13033
  _sfc_main.setup = (props, ctx) => {
12401
13034
  const ssrContext = useSSRContext();
12402
- (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("src/lib/components/Price.vue");
13035
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("src/lib/components/ProductCard.vue");
12403
13036
  return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
12404
13037
  };
12405
13038
 
@@ -12444,11 +13077,12 @@ const $$Home = createComponent(async ($$result, $$props, $$slots) => {
12444
13077
  </label>
12445
13078
  <label class="inline-flex items-center">
12446
13079
  <input type="checkbox" checked>
12447
- <span class="ml-2">Email me news and special offers</span>
13080
+ <span class="ml-2 font-brand">Email me news and special offers</span>
12448
13081
  </label>
12449
13082
  </div>
12450
13083
  </div>
12451
- ${renderComponent($$result, "Price", _sfc_main, { "price": 10, "client:load": true, "client:component-hydration": "load", "client:component-path": "@@sf/components/Price.vue", "client:component-export": "default" })}
13084
+ ${renderComponent($$result, "Prices", _sfc_main$1, { "price": 10, "client:load": true, "client:component-hydration": "load", "client:component-path": "@@sf/components/Prices.vue", "client:component-export": "default" })}
13085
+ ${renderComponent($$result, "ProductCard", _sfc_main, { "client:load": true, "client:component-hydration": "load", "client:component-path": "@@sf/components/ProductCard.vue", "client:component-export": "default" })}
12452
13086
  </main>`;
12453
13087
  }, "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/main/Home.astro");
12454
13088
 
@@ -12614,7 +13248,7 @@ const _page5 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
12614
13248
  const pageMap = new Map([['../../node_modules/.pnpm/@astrojs+image@0.12.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],]);
12615
13249
  const renderers = [Object.assign({"name":"astro:jsx","serverEntrypoint":"astro/jsx/server.js","jsxImportSource":"astro"}, { ssr: server_default }),Object.assign({"name":"@astrojs/vue","clientEntrypoint":"@astrojs/vue/client.js","serverEntrypoint":"@astrojs/vue/server.js"}, { ssr: _renderer1 }),];
12616
13250
 
12617
- const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"type":"endpoint","route":"/_image","pattern":"^\\/_image$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../../node_modules/.pnpm/@astrojs+image@0.12.1/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":["assets/_...slug_.580c5aa4.css"],"scripts":[{"type":"external","value":"hoisted.cce93d56.js"},{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/","type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":["assets/_...slug_.580c5aa4.css"],"scripts":[{"type":"external","value":"hoisted.cce93d56.js"},{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/fallback","type":"page","pattern":"^\\/fallback\\/?$","segments":[[{"content":"fallback","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/fallback.astro","pathname":"/fallback","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/app","type":"page","pattern":"^\\/app\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/index.astro","pathname":"/app","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"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","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":["assets/_...slug_.580c5aa4.css"],"scripts":[{"type":"external","value":"hoisted.cce93d56.js"},{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/[...slug]","type":"page","pattern":"^(?:\\/(.*?))?\\/?$","segments":[[{"content":"...slug","dynamic":true,"spread":true}]],"params":["...slug"],"component":"src/pages/[...slug].astro","_meta":{"trailingSlash":"ignore"}}}],"site":"https://ecom2-002.web.app/","base":"/","markdown":{"drafts":false,"syntaxHighlight":"shiki","shikiConfig":{"langs":[],"theme":"github-dark","wrap":false},"remarkPlugins":[],"rehypePlugins":[],"remarkRehype":{},"extendDefaultPlugins":false,"isAstroFlavoredMd":false},"pageMap":null,"renderers":[],"entryModules":{"\u0000@astrojs-ssr-virtual-entry":"entry.mjs","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/node_modules/@astrojs/image/dist/vendor/squoosh/image-pool.js":"chunks/image-pool.abfa6f7b.mjs","@@sf/components/Price.vue":"Price.c4aab3ea.js","@astrojs/vue/client.js":"client.79a40b9d.js","/astro/hoisted.js?q=0":"hoisted.cce93d56.js","astro:scripts/page.js":"page.5a6f3db5.js","@@components/header/HeaderButtons.vue":"HeaderButtons.1968a9ac.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/components/LoginForm.vue":"chunks/LoginForm.83fec3a1.js","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"chunks/workbox-window.prod.es5.10f2e5ac.js","astro:scripts/before-hydration.js":""},"assets":["/assets/_...slug_.580c5aa4.css","/manifest.webmanifest","/registerSW.js","/HeaderButtons.1968a9ac.js","/Price.c4aab3ea.js","/client.79a40b9d.js","/hoisted.cce93d56.js","/page.5a6f3db5.js","/robots.txt","/sw.js","/workbox-abdc68aa.js","/admin/config.json","/assets/cms-preview.css","/assets/cms.css","/assets/cvv.png","/assets/img-placeholder.png","/assets/payments.png","/assets/ssl-safe.png","/chunks/HeaderButtons.5a0e371e.js","/chunks/LoginForm.83fec3a1.js","/chunks/ecom-utils.b0a26608.js","/chunks/preload-helper.1de719f8.js","/chunks/price.130e6005.js","/chunks/runtime-core.esm-bundler.4dae6bc1.js","/chunks/runtime-dom.esm-bundler.7a999c6c.js","/chunks/session-utm.2de8b604.js","/chunks/workbox-window.prod.es5.10f2e5ac.js","/img/icon.png","/img/large-icon.png","/img/uploads/banner1.png","/img/uploads/banner2.png","/img/uploads/banner2.webp","/img/uploads/favicon.png","/img/uploads/headless.png","/img/uploads/headphone.png","/img/uploads/headphone.webp","/img/uploads/icon.png","/img/uploads/large-icon.png","/img/uploads/logo.png","/img/uploads/logo.webp","/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","/assets/icons/feather-icons/font/storefront-icons.woff2","/assets/icons/bootstrap-icons/font/storefront-icons.woff2","/assets/icons/font-awesome/font/storefront-icons.woff2","/assets/icons/line-awesome/font/storefront-icons.woff2","/assets/icons/tabler-icons/font/storefront-icons.woff2","/page.5a6f3db5.js","/~partytown/partytown-atomics.js","/~partytown/partytown-media.js","/~partytown/partytown-sw.js","/~partytown/partytown.js"]}), {
13251
+ const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"type":"endpoint","route":"/_image","pattern":"^\\/_image$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../../node_modules/.pnpm/@astrojs+image@0.12.1/node_modules/@astrojs/image/dist/endpoint.js","pathname":"/_image","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":["assets/_...slug_.15766f41.css","assets/index.e6a09532.css"],"scripts":[{"type":"external","value":"hoisted.f6ee2883.js"},{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/","type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":["assets/_...slug_.15766f41.css"],"scripts":[{"type":"external","value":"hoisted.f6ee2883.js"},{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/fallback","type":"page","pattern":"^\\/fallback\\/?$","segments":[[{"content":"fallback","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/fallback.astro","pathname":"/fallback","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/app","type":"page","pattern":"^\\/app\\/?$","segments":[[{"content":"app","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/app/index.astro","pathname":"/app","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"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","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":["assets/_...slug_.15766f41.css"],"scripts":[{"type":"external","value":"hoisted.f6ee2883.js"},{"type":"external","value":"page.5a6f3db5.js"},{"stage":"head-inline","children":"!(function(w,p,f,c){c=w[p]=Object.assign(w[p]||{},{\"lib\":\"/~partytown/\",\"debug\":false});c[f]=(c[f]||[])})(window,'partytown','forward');/* Partytown 0.7.1 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\"/\"==(a=(o.lib||\"/~partytown/\")+(o.debug?\"debug/\":\"\"))[0]&&(s=e.querySelectorAll('script[type=\"text/partytown\"]'),i!=t?i.dispatchEvent(new CustomEvent(\"pt1\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\"pt0\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\"partytown-sw.js\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\"statechange\",(function(t){\"activated\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\"script\":\"iframe\"),t||(c.setAttribute(\"style\",\"display:block;width:0;height:0;border:0;visibility:hidden\"),c.setAttribute(\"aria-hidden\",!0)),c.src=a+\"partytown-\"+(t?\"atomics.js?v=0.7.1\":\"sandbox-sw.html?\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement(\"script\")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\".\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\"push\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\"complete\"==e.readyState?u():(t.addEventListener(\"DOMContentLoaded\",u),t.addEventListener(\"load\",u))}(window,document,navigator,top,window.crossOriginIsolated);"}],"routeData":{"route":"/[...slug]","type":"page","pattern":"^(?:\\/(.*?))?\\/?$","segments":[[{"content":"...slug","dynamic":true,"spread":true}]],"params":["...slug"],"component":"src/pages/[...slug].astro","_meta":{"trailingSlash":"ignore"}}}],"site":"https://ecom2-002.web.app/","base":"/","markdown":{"drafts":false,"syntaxHighlight":"shiki","shikiConfig":{"langs":[],"theme":"github-dark","wrap":false},"remarkPlugins":[],"rehypePlugins":[],"remarkRehype":{},"extendDefaultPlugins":false,"isAstroFlavoredMd":false},"pageMap":null,"renderers":[],"entryModules":{"\u0000@astrojs-ssr-virtual-entry":"entry.mjs","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/node_modules/@astrojs/image/dist/vendor/squoosh/image-pool.js":"chunks/image-pool.abfa6f7b.mjs","@@sf/components/Prices.vue":"Prices.795d082c.js","@@sf/components/ProductCard.vue":"ProductCard.f477b7a1.js","@astrojs/vue/client.js":"client.8b4e336b.js","/astro/hoisted.js?q=0":"hoisted.f6ee2883.js","astro:scripts/page.js":"page.5a6f3db5.js","@@components/header/HeaderButtons.vue":"HeaderButtons.f1c92fd8.js","/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/lib/components/LoginForm.vue":"chunks/LoginForm.36774236.js","/home/leo/code/ecomplus/cloud-commerce/node_modules/workbox-window/build/workbox-window.prod.es5.mjs":"chunks/workbox-window.prod.es5.10f2e5ac.js","astro:scripts/before-hydration.js":""},"assets":["/assets/index.e6a09532.css","/assets/server.4d9646d8.css","/assets/_...slug_.15766f41.css","/manifest.webmanifest","/registerSW.js","/HeaderButtons.f1c92fd8.js","/Prices.795d082c.js","/ProductCard.f477b7a1.js","/client.8b4e336b.js","/hoisted.f6ee2883.js","/page.5a6f3db5.js","/robots.txt","/sw.js","/workbox-abdc68aa.js","/admin/config.json","/assets/cms-preview.css","/assets/cms.css","/assets/cvv.png","/assets/img-placeholder.png","/assets/payments.png","/assets/ssl-safe.png","/chunks/HeaderButtons.27ab2180.js","/chunks/LoginForm.36774236.js","/chunks/Prices.vue_vue_type_script_setup_true_lang.522e4ac4.js","/chunks/_plugin-vue_export-helper.979dc9e3.js","/chunks/ecom-utils.b0a26608.js","/chunks/preload-helper.1de719f8.js","/chunks/price.ecf7fed4.js","/chunks/runtime-core.esm-bundler.6c012e5d.js","/chunks/session-utm.2de8b604.js","/chunks/workbox-window.prod.es5.10f2e5ac.js","/img/icon.png","/img/large-icon.png","/img/uploads/banner1.png","/img/uploads/banner2.png","/img/uploads/banner2.webp","/img/uploads/favicon.png","/img/uploads/headless.png","/img/uploads/headphone.png","/img/uploads/headphone.webp","/img/uploads/icon.png","/img/uploads/large-icon.png","/img/uploads/logo.png","/img/uploads/logo.webp","/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","/assets/icons/bootstrap-icons/font/storefront-icons.woff2","/assets/icons/feather-icons/font/storefront-icons.woff2","/assets/icons/font-awesome/font/storefront-icons.woff2","/assets/icons/line-awesome/font/storefront-icons.woff2","/assets/icons/tabler-icons/font/storefront-icons.woff2","/page.5a6f3db5.js","/~partytown/partytown-atomics.js","/~partytown/partytown-media.js","/~partytown/partytown-sw.js","/~partytown/partytown.js"]}), {
12618
13252
  pageMap: pageMap,
12619
13253
  renderers: renderers
12620
13254
  });
@@ -12628,4 +13262,4 @@ if(_start in adapter) {
12628
13262
  adapter[_start](_manifest, _args);
12629
13263
  }
12630
13264
 
12631
- export { handler };
13265
+ export { handler, pageMap, renderers };