cloudcommerce 0.0.67 → 0.0.68

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 (89) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/package.json +1 -1
  3. package/packages/api/lib/api.js +8 -8
  4. package/packages/api/lib/api.js.map +1 -1
  5. package/packages/api/package.json +1 -1
  6. package/packages/api/src/api.ts +8 -8
  7. package/packages/apps/correios/package.json +3 -3
  8. package/packages/apps/custom-shipping/package.json +3 -3
  9. package/packages/apps/discounts/package.json +1 -1
  10. package/packages/apps/tiny-erp/package.json +1 -1
  11. package/packages/cli/config/firebase.json +6 -6
  12. package/packages/cli/package.json +1 -1
  13. package/packages/config/lib/config.js +4 -1
  14. package/packages/config/lib/config.js.map +1 -1
  15. package/packages/config/lib/env.js +4 -1
  16. package/packages/config/lib/env.js.map +1 -1
  17. package/packages/config/package.json +1 -1
  18. package/packages/config/src/config.ts +7 -3
  19. package/packages/config/src/env.ts +4 -1
  20. package/packages/events/package.json +1 -1
  21. package/packages/firebase/package.json +1 -1
  22. package/packages/modules/package.json +1 -1
  23. package/packages/passport/package.json +1 -1
  24. package/packages/ssr/lib/firebase/serve-storefront.js +67 -0
  25. package/packages/ssr/lib/firebase/serve-storefront.js.map +1 -0
  26. package/packages/ssr/lib/firebase.js +4 -3
  27. package/packages/ssr/lib/firebase.js.map +1 -1
  28. package/packages/ssr/lib/index.js +3 -0
  29. package/packages/ssr/lib/index.js.map +1 -1
  30. package/packages/ssr/package.json +1 -2
  31. package/packages/ssr/src/firebase/serve-storefront.ts +78 -0
  32. package/packages/ssr/src/firebase.ts +4 -3
  33. package/packages/ssr/src/index.ts +3 -0
  34. package/packages/storefront/dist/client/assets/{_...d4aa8aff.css → 404-_...d4aa8aff.css} +0 -0
  35. package/packages/storefront/dist/client/assets/404-index.d9230d24.css +1 -0
  36. package/packages/storefront/dist/client/assets/{_...0b5ebd52.css → 404.530428e5.css} +1 -1
  37. package/packages/storefront/dist/client/assets/_...fae19676.css +1 -0
  38. package/packages/storefront/dist/client/assets/index.53a3a3e0.css +1 -0
  39. package/packages/storefront/dist/server/entry.mjs +271 -134
  40. package/packages/storefront/example.env +2 -0
  41. package/packages/storefront/package.json +4 -1
  42. package/packages/storefront/src/pages/404.astro +74 -0
  43. package/packages/storefront/src/pages/[...slug].astro +11 -5
  44. package/packages/{ssr/src/firebase/.gitkeep → storefront/src/pages/app/index.astro} +0 -0
  45. package/packages/storefront/src/pages/index.astro +2 -2
  46. package/packages/storefront/src/storefront-config.ts +31 -20
  47. package/packages/types/package.json +1 -1
  48. package/packages/storefront/content/blog.json +0 -18
  49. package/packages/storefront/content/brands.json +0 -24
  50. package/packages/storefront/content/categories.json +0 -24
  51. package/packages/storefront/content/code.json +0 -5
  52. package/packages/storefront/content/collections.json +0 -24
  53. package/packages/storefront/content/contacts.json +0 -13
  54. package/packages/storefront/content/footer.json +0 -46
  55. package/packages/storefront/content/header.json +0 -27
  56. package/packages/storefront/content/home.json +0 -45
  57. package/packages/storefront/content/info.json +0 -18
  58. package/packages/storefront/content/maintenance.json +0 -6
  59. package/packages/storefront/content/menu.json +0 -6
  60. package/packages/storefront/content/pages/contato.json +0 -6
  61. package/packages/storefront/content/pages/entrega.json +0 -6
  62. package/packages/storefront/content/pages/faq.json +0 -6
  63. package/packages/storefront/content/pages/pagamentos.json +0 -6
  64. package/packages/storefront/content/pages/privacidade.json +0 -6
  65. package/packages/storefront/content/pages/sobre-nos.json +0 -6
  66. package/packages/storefront/content/pages/termos.json +0 -6
  67. package/packages/storefront/content/pages/trocas.json +0 -6
  68. package/packages/storefront/content/posts/esta-loja-e-um-pwa.json +0 -9
  69. package/packages/storefront/content/products.json +0 -32
  70. package/packages/storefront/content/search.json +0 -8
  71. package/packages/storefront/content/settings.json +0 -25
  72. package/packages/storefront/content/social.json +0 -5
  73. package/packages/storefront/content/widgets/analytics.json +0 -11
  74. package/packages/storefront/content/widgets/compre-confie.json +0 -11
  75. package/packages/storefront/content/widgets/ebit.json +0 -11
  76. package/packages/storefront/content/widgets/fb-pixel.json +0 -12
  77. package/packages/storefront/content/widgets/gmc-ratings.json +0 -12
  78. package/packages/storefront/content/widgets/minicart.json +0 -6
  79. package/packages/storefront/content/widgets/offers-notification.json +0 -11
  80. package/packages/storefront/content/widgets/opinioes-verificadas.json +0 -18
  81. package/packages/storefront/content/widgets/product-card.json +0 -10
  82. package/packages/storefront/content/widgets/product.json +0 -13
  83. package/packages/storefront/content/widgets/search-engine.json +0 -8
  84. package/packages/storefront/content/widgets/search.json +0 -6
  85. package/packages/storefront/content/widgets/tag-manager.json +0 -12
  86. package/packages/storefront/content/widgets/tawkto.json +0 -12
  87. package/packages/storefront/content/widgets/trustvox.json +0 -15
  88. package/packages/storefront/content/widgets/user.json +0 -5
  89. package/packages/storefront/dist/client/assets/index.5608ba47.css +0 -1
@@ -0,0 +1 @@
1
+ :root{--link-gradient: linear-gradient(45deg, #4F39FA, #DA62C4 30%, var(--color-border) 60%)}.link-card:where(.astro-ASCHB54V){list-style:none;display:flex;padding:.15rem;background-image:var(--link-gradient);background-size:400%;border-radius:.5rem;background-position:100%;transition:background-position .6s cubic-bezier(.22,1,.36,1)}.link-card:where(.astro-ASCHB54V)>a:where(.astro-ASCHB54V){width:100%;text-decoration:none;line-height:1.4;padding:1em 1.3em;border-radius:.35rem;color:var(--text-color);background-color:#fff;opacity:.8}h2:where(.astro-ASCHB54V){margin:0;transition:color .6s cubic-bezier(.22,1,.36,1)}p:where(.astro-ASCHB54V){margin-top:.75rem;margin-bottom:0}h2:where(.astro-ASCHB54V) span:where(.astro-ASCHB54V){display:inline-block;transition:transform .3s cubic-bezier(.22,1,.36,1)}.link-card:where(.astro-ASCHB54V):is(:hover,:focus-within){background-position:0}.link-card:where(.astro-ASCHB54V):is(:hover,:focus-within) h2:where(.astro-ASCHB54V){color:#4f39fa}.link-card:where(.astro-ASCHB54V):is(:hover,:focus-within) h2:where(.astro-ASCHB54V) span:where(.astro-ASCHB54V){transform:translate(2px)}
@@ -1 +1 @@
1
- :root{--astro-gradient: linear-gradient(0deg,#4F39FA, #DA62C4)}h1:where(.astro-QB6KRBZ4){margin:2rem 0}main:where(.astro-QB6KRBZ4){margin:auto;padding:1em;max-width:60ch}.text-gradient:where(.astro-QB6KRBZ4){font-weight:900;background-image:var(--astro-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:100% 200%;background-position-y:100%;border-radius:.4rem;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{background-position-y:0%}50%{background-position-y:80%}}.instructions:where(.astro-QB6KRBZ4){line-height:1.6;margin:1rem 0;background:#4F39FA;padding:1rem;border-radius:.4rem;color:var(--color-bg)}.instructions:where(.astro-QB6KRBZ4) code:where(.astro-QB6KRBZ4){font-size:.875em;border:.1em solid var(--color-border);border-radius:4px;padding:.15em .25em}.link-card-grid:where(.astro-QB6KRBZ4){display:grid;grid-template-columns:repeat(auto-fit,minmax(24ch,1fr));gap:1rem;padding:0}
1
+ :root{--astro-gradient: linear-gradient(0deg,#4F39FA, #DA62C4)}h1:where(.astro-7FYMG5AV){margin:2rem 0}main:where(.astro-7FYMG5AV){margin:auto;padding:1em;max-width:60ch}.text-gradient:where(.astro-7FYMG5AV){font-weight:900;background-image:var(--astro-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:100% 200%;background-position-y:100%;border-radius:.4rem;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{background-position-y:0%}50%{background-position-y:80%}}.instructions:where(.astro-7FYMG5AV){line-height:1.6;margin:1rem 0;background:#4F39FA;padding:1rem;border-radius:.4rem;color:var(--color-bg)}.instructions:where(.astro-7FYMG5AV) code:where(.astro-7FYMG5AV){font-size:.875em;border:.1em solid var(--color-border);border-radius:4px;padding:.15em .25em}.link-card-grid:where(.astro-7FYMG5AV){display:grid;grid-template-columns:repeat(auto-fit,minmax(24ch,1fr));gap:1rem;padding:0}
@@ -0,0 +1 @@
1
+ :root{--astro-gradient: linear-gradient(0deg,#4F39FA, #DA62C4)}h1:where(.astro-NJCM7BMR){margin:2rem 0}main:where(.astro-NJCM7BMR){margin:auto;padding:1em;max-width:60ch}.text-gradient:where(.astro-NJCM7BMR){font-weight:900;background-image:var(--astro-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:100% 200%;background-position-y:100%;border-radius:.4rem;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{background-position-y:0%}50%{background-position-y:80%}}.instructions:where(.astro-NJCM7BMR){line-height:1.6;margin:1rem 0;background:#4F39FA;padding:1rem;border-radius:.4rem;color:var(--color-bg)}.instructions:where(.astro-NJCM7BMR) code:where(.astro-NJCM7BMR){font-size:.875em;border:.1em solid var(--color-border);border-radius:4px;padding:.15em .25em}.link-card-grid:where(.astro-NJCM7BMR){display:grid;grid-template-columns:repeat(auto-fit,minmax(24ch,1fr));gap:1rem;padding:0}
@@ -0,0 +1 @@
1
+ :root{--astro-gradient: linear-gradient(0deg,#4F39FA, #DA62C4)}h1:where(.astro-C3E44E3K){margin:2rem 0}main:where(.astro-C3E44E3K){margin:auto;padding:1em;max-width:60ch}.text-gradient:where(.astro-C3E44E3K){font-weight:900;background-image:var(--astro-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:100% 200%;background-position-y:100%;border-radius:.4rem;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{background-position-y:0%}50%{background-position-y:80%}}.instructions:where(.astro-C3E44E3K){line-height:1.6;margin:1rem 0;background:#4F39FA;padding:1rem;border-radius:.4rem;color:var(--color-bg)}.instructions:where(.astro-C3E44E3K) code:where(.astro-C3E44E3K){font-size:.875em;border:.1em solid var(--color-border);border-radius:4px;padding:.15em .25em}.link-card-grid:where(.astro-C3E44E3K){display:grid;grid-template-columns:repeat(auto-fit,minmax(24ch,1fr));gap:1rem;padding:0}
@@ -2,7 +2,11 @@ import * as adapter from '@astrojs/node/server.js';
2
2
  import { defineComponent, h, createSSRApp } from 'vue';
3
3
  import { renderToString as renderToString$1 } from 'vue/server-renderer';
4
4
  import { escape } from 'html-escaper';
5
- /* empty css *//* empty css *//* empty css */import 'mime';
5
+ /* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import { fileURLToPath } from 'url';
6
+ import { readFileSync } from 'fs';
7
+ import { resolve } from 'path';
8
+ import Deepmerge from '@fastify/deepmerge';
9
+ import 'mime';
6
10
  import 'kleur/colors';
7
11
  import 'string-width';
8
12
  import 'path-browserify';
@@ -1262,120 +1266,10 @@ var server_default = {
1262
1266
  renderToStaticMarkup
1263
1267
  };
1264
1268
 
1265
- const $$metadata$3 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/layouts/Layout.astro", { modules: [], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1266
- const $$Astro$3 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/layouts/Layout.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1267
- const $$Layout = createComponent(async ($$result, $$props, $$slots) => {
1268
- const Astro2 = $$result.createAstro($$Astro$3, $$props, $$slots);
1269
- Astro2.self = $$Layout;
1270
- const { title } = Astro2.props;
1271
- const STYLES = [];
1272
- for (const STYLE of STYLES)
1273
- $$result.styles.add(STYLE);
1274
- return renderTemplate`<html lang="en" class="astro-ZMK4NUBX">
1275
- <head>
1276
- <meta charset="UTF-8">
1277
- <meta name="viewport" content="width=device-width">
1278
- <link rel="icon" type="image/x-icon" href="/favicon.ico">
1279
- <title>${title}</title>
1280
- ${renderHead($$result)}</head>
1281
- <body class="astro-ZMK4NUBX">
1282
- ${renderSlot($$result, $$slots["default"])}
1283
-
1284
- </body></html>`;
1285
- });
1286
-
1287
- const $$file$3 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/layouts/Layout.astro";
1288
- const $$url$3 = undefined;
1289
-
1290
- const $$module2$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1291
- __proto__: null,
1292
- $$metadata: $$metadata$3,
1293
- default: $$Layout,
1294
- file: $$file$3,
1295
- url: $$url$3
1296
- }, Symbol.toStringTag, { value: 'Module' }));
1297
-
1298
- const $$metadata$2 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/Card.astro", { modules: [], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1299
- const $$Astro$2 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/Card.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1300
- const $$Card = createComponent(async ($$result, $$props, $$slots) => {
1301
- const Astro2 = $$result.createAstro($$Astro$2, $$props, $$slots);
1302
- Astro2.self = $$Card;
1303
- const { href, title, body } = Astro2.props;
1304
- const STYLES = [];
1305
- for (const STYLE of STYLES)
1306
- $$result.styles.add(STYLE);
1307
- return renderTemplate`${maybeRenderHead($$result)}<li class="link-card astro-ASCHB54V">
1308
- <a${addAttribute(href, "href")} class="astro-ASCHB54V">
1309
- <h2 class="astro-ASCHB54V">
1310
- ${title}
1311
- <span class="astro-ASCHB54V">&rarr;</span>
1312
- </h2>
1313
- <p class="astro-ASCHB54V">
1314
- ${body}
1315
- </p>
1316
- </a>
1317
- </li>
1318
- `;
1319
- });
1320
-
1321
- const $$file$2 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/Card.astro";
1322
- const $$url$2 = undefined;
1323
-
1324
- const $$module2 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1325
- __proto__: null,
1326
- $$metadata: $$metadata$2,
1327
- default: $$Card,
1328
- file: $$file$2,
1329
- url: $$url$2
1330
- }, Symbol.toStringTag, { value: 'Module' }));
1331
-
1332
- const $$metadata$1 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro", { modules: [{ module: $$module2$1, specifier: "../layouts/Layout.astro", assert: {} }, { module: $$module2, specifier: "../components/Card.astro", assert: {} }], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1333
- const $$Astro$1 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1334
- const $$Index = createComponent(async ($$result, $$props, $$slots) => {
1335
- const Astro2 = $$result.createAstro($$Astro$1, $$props, $$slots);
1336
- Astro2.self = $$Index;
1337
- const fetchingProducts = await fetch("https://ecomplus.io/v2/:1056/products");
1338
- const products = (await fetchingProducts.json()).result;
1339
- const STYLES = [];
1340
- for (const STYLE of STYLES)
1341
- $$result.styles.add(STYLE);
1342
- return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Welcome to Astro.", "class": "astro-2COIDAMR" }, { "default": () => renderTemplate`${maybeRenderHead($$result)}<main class="astro-2COIDAMR">
1343
- <h1 class="astro-2COIDAMR">Welcome to <span class="text-gradient astro-2COIDAMR">Astro</span></h1>
1344
- <p class="instructions astro-2COIDAMR">
1345
- Check out the <code class="astro-2COIDAMR">src/pages</code> directory to get started.<br class="astro-2COIDAMR">
1346
- <strong class="astro-2COIDAMR">Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
1347
- </p>
1348
- <ul role="list" class="link-card-grid astro-2COIDAMR">
1349
- ${renderComponent($$result, "Card", $$Card, { "href": "https://docs.astro.build/", "title": "Documentation", "body": "Learn how Astro works and explore the official API docs.", "class": "astro-2COIDAMR" })}
1350
- ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/integrations/", "title": "Integrations", "body": "Supercharge your project with new frameworks and libraries.", "class": "astro-2COIDAMR" })}
1351
- ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/themes/", "title": "Themes", "body": "Explore a galaxy of community-built starter themes.", "class": "astro-2COIDAMR" })}
1352
- ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/chat/", "title": "Chat", "body": "Come say hi to our amazing Discord community. \u2764\uFE0F", "class": "astro-2COIDAMR" })}
1353
- </ul>
1354
- <ul role="list" class="mt-3 fs-20 astro-2COIDAMR">
1355
- ${products.map((product) => renderTemplate`<li class="astro-2COIDAMR">
1356
- <a${addAttribute(`/${product.slug}`, "href")} class="astro-2COIDAMR">${product.sku}</a>
1357
- </li>`)}
1358
- </ul>
1359
- </main>` })}
1360
-
1361
- `;
1362
- });
1363
-
1364
- const $$file$1 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro";
1365
- const $$url$1 = "";
1366
-
1367
- const _page0 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1368
- __proto__: null,
1369
- $$metadata: $$metadata$1,
1370
- default: $$Index,
1371
- file: $$file$1,
1372
- url: $$url$1
1373
- }, Symbol.toStringTag, { value: 'Module' }));
1374
-
1375
1269
  // @ts-ignore
1376
- const env = (typeof window === 'object' && window)
1377
- || (typeof process === 'object' && process && process.env)
1378
- || {};
1270
+ const _env$1 = (Object.assign({"BASE_URL":"/","MODE":"production","DEV":false,"PROD":true},{LANG:process.env.LANG,ECOM_STORE_ID:"1011",BASE_URL:'/',}))
1271
+ || (typeof process === 'object' && process?.env)
1272
+ || globalThis;
1379
1273
  class ApiError extends Error {
1380
1274
  constructor(config, response, msg, isTimeout = false) {
1381
1275
  if (response) {
@@ -1398,8 +1292,8 @@ const def = {
1398
1292
  // eslint-disable-next-line dot-notation
1399
1293
  headers['Authorization'] = `Bearer ${config.accessToken}`;
1400
1294
  } else {
1401
- const authenticationId = config.authenticationId || env.ECOM_AUTHENTICATION_ID;
1402
- const apiKey = config.apiKey || env.ECOM_API_KEY;
1295
+ const authenticationId = config.authenticationId || _env$1.ECOM_AUTHENTICATION_ID;
1296
+ const apiKey = config.apiKey || _env$1.ECOM_API_KEY;
1403
1297
  if (authenticationId && apiKey) {
1404
1298
  const rawAuth = `${authenticationId}:${apiKey}`;
1405
1299
  const base64Auth = typeof Buffer === 'function'
@@ -1409,18 +1303,18 @@ const def = {
1409
1303
  }
1410
1304
  }
1411
1305
  }
1412
- let url = config.baseUrl || env.API_BASE_URL || 'https://ecomplus.io/v2';
1306
+ let url = config.baseUrl || _env$1.API_BASE_URL || 'https://ecomplus.io/v2';
1413
1307
  const { endpoint, params } = config;
1414
1308
  if (endpoint !== 'login'
1415
1309
  && endpoint !== 'authenticate'
1416
1310
  && endpoint !== 'ask-auth-callback'
1417
1311
  && endpoint !== 'check-username') {
1418
- const storeId = config.storeId || env.ECOM_STORE_ID;
1312
+ const storeId = config.storeId || _env$1.ECOM_STORE_ID;
1419
1313
  if (!storeId) {
1420
1314
  throw new Error('`storeId` must be set in config or `ECOM_STORE_ID` env var');
1421
1315
  }
1422
1316
  url += `/:${storeId}`;
1423
- const lang = config.lang || env.ECOM_LANG;
1317
+ const lang = config.lang || _env$1.ECOM_LANG;
1424
1318
  if (lang) {
1425
1319
  url += `,lang:${lang}`;
1426
1320
  }
@@ -1548,26 +1442,269 @@ const $$module1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty(
1548
1442
  ApiError
1549
1443
  }, Symbol.toStringTag, { value: 'Module' }));
1550
1444
 
1551
- const $$metadata = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro", { modules: [{ module: $$module1, specifier: "@cloudcommerce/api", assert: {} }, { module: $$module2$1, specifier: "../layouts/Layout.astro", assert: {} }], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1445
+ const $$metadata$5 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/layouts/Layout.astro", { modules: [], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1446
+ const $$Astro$5 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/layouts/Layout.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1447
+ const $$Layout = createComponent(async ($$result, $$props, $$slots) => {
1448
+ const Astro2 = $$result.createAstro($$Astro$5, $$props, $$slots);
1449
+ Astro2.self = $$Layout;
1450
+ const { title } = Astro2.props;
1451
+ const STYLES = [];
1452
+ for (const STYLE of STYLES)
1453
+ $$result.styles.add(STYLE);
1454
+ return renderTemplate`<html lang="en" class="astro-ZMK4NUBX">
1455
+ <head>
1456
+ <meta charset="UTF-8">
1457
+ <meta name="viewport" content="width=device-width">
1458
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
1459
+ <title>${title}</title>
1460
+ ${renderHead($$result)}</head>
1461
+ <body class="astro-ZMK4NUBX">
1462
+ ${renderSlot($$result, $$slots["default"])}
1463
+
1464
+ </body></html>`;
1465
+ });
1466
+
1467
+ const $$file$5 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/layouts/Layout.astro";
1468
+ const $$url$5 = undefined;
1469
+
1470
+ const $$module3 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1471
+ __proto__: null,
1472
+ $$metadata: $$metadata$5,
1473
+ default: $$Layout,
1474
+ file: $$file$5,
1475
+ url: $$url$5
1476
+ }, Symbol.toStringTag, { value: 'Module' }));
1477
+
1478
+ const $$metadata$4 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/Card.astro", { modules: [], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1479
+ const $$Astro$4 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/Card.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1480
+ const $$Card = createComponent(async ($$result, $$props, $$slots) => {
1481
+ const Astro2 = $$result.createAstro($$Astro$4, $$props, $$slots);
1482
+ Astro2.self = $$Card;
1483
+ const { href, title, body } = Astro2.props;
1484
+ const STYLES = [];
1485
+ for (const STYLE of STYLES)
1486
+ $$result.styles.add(STYLE);
1487
+ return renderTemplate`${maybeRenderHead($$result)}<li class="link-card astro-ASCHB54V">
1488
+ <a${addAttribute(href, "href")} class="astro-ASCHB54V">
1489
+ <h2 class="astro-ASCHB54V">
1490
+ ${title}
1491
+ <span class="astro-ASCHB54V">&rarr;</span>
1492
+ </h2>
1493
+ <p class="astro-ASCHB54V">
1494
+ ${body}
1495
+ </p>
1496
+ </a>
1497
+ </li>
1498
+ `;
1499
+ });
1500
+
1501
+ const $$file$4 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/components/Card.astro";
1502
+ const $$url$4 = undefined;
1503
+
1504
+ const $$module2$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1505
+ __proto__: null,
1506
+ $$metadata: $$metadata$4,
1507
+ default: $$Card,
1508
+ file: $$file$4,
1509
+ url: $$url$4
1510
+ }, Symbol.toStringTag, { value: 'Module' }));
1511
+
1512
+ const $$metadata$3 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro", { modules: [{ module: $$module1, specifier: "@cloudcommerce/api", assert: {} }, { module: $$module3, specifier: "../layouts/Layout.astro", assert: {} }, { module: $$module2$1, specifier: "../components/Card.astro", assert: {} }], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1513
+ const $$Astro$3 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1514
+ const $$Index$1 = createComponent(async ($$result, $$props, $$slots) => {
1515
+ const Astro2 = $$result.createAstro($$Astro$3, $$props, $$slots);
1516
+ Astro2.self = $$Index$1;
1517
+ const products = (await api.get("products")).data.result;
1518
+ const STYLES = [];
1519
+ for (const STYLE of STYLES)
1520
+ $$result.styles.add(STYLE);
1521
+ return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Welcome to Astro.", "class": "astro-C3E44E3K" }, { "default": () => renderTemplate`${maybeRenderHead($$result)}<main class="astro-C3E44E3K">
1522
+ <h1 class="astro-C3E44E3K">Welcome to <span class="text-gradient astro-C3E44E3K">Astro</span></h1>
1523
+ <p class="instructions astro-C3E44E3K">
1524
+ Check out the <code class="astro-C3E44E3K">src/pages</code> directory to get started.<br class="astro-C3E44E3K">
1525
+ <strong class="astro-C3E44E3K">Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
1526
+ </p>
1527
+ <ul role="list" class="link-card-grid astro-C3E44E3K">
1528
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://docs.astro.build/", "title": "Documentation", "body": "Learn how Astro works and explore the official API docs.", "class": "astro-C3E44E3K" })}
1529
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/integrations/", "title": "Integrations", "body": "Supercharge your project with new frameworks and libraries.", "class": "astro-C3E44E3K" })}
1530
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/themes/", "title": "Themes", "body": "Explore a galaxy of community-built starter themes.", "class": "astro-C3E44E3K" })}
1531
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/chat/", "title": "Chat", "body": "Come say hi to our amazing Discord community. \u2764\uFE0F", "class": "astro-C3E44E3K" })}
1532
+ </ul>
1533
+ <ul role="list" class="mt-3 fs-20 astro-C3E44E3K">
1534
+ ${products.map((product) => renderTemplate`<li class="astro-C3E44E3K">
1535
+ <a${addAttribute(`/${product.slug}`, "href")} class="astro-C3E44E3K">${product.sku}</a>
1536
+ </li>`)}
1537
+ </ul>
1538
+ </main>` })}
1539
+
1540
+ `;
1541
+ });
1542
+
1543
+ const $$file$3 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/index.astro";
1544
+ const $$url$3 = "";
1545
+
1546
+ const _page0 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1547
+ __proto__: null,
1548
+ $$metadata: $$metadata$3,
1549
+ default: $$Index$1,
1550
+ file: $$file$3,
1551
+ url: $$url$3
1552
+ }, Symbol.toStringTag, { value: 'Module' }));
1553
+
1554
+ const $$metadata$2 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/404.astro", { modules: [{ module: $$module3, specifier: "../layouts/Layout.astro", assert: {} }, { module: $$module2$1, specifier: "../components/Card.astro", assert: {} }], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1555
+ const $$Astro$2 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/404.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1556
+ const $$404 = createComponent(async ($$result, $$props, $$slots) => {
1557
+ const Astro2 = $$result.createAstro($$Astro$2, $$props, $$slots);
1558
+ Astro2.self = $$404;
1559
+ const STYLES = [];
1560
+ for (const STYLE of STYLES)
1561
+ $$result.styles.add(STYLE);
1562
+ return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Welcome to Astro.", "class": "astro-7FYMG5AV" }, { "default": () => renderTemplate`${maybeRenderHead($$result)}<main class="astro-7FYMG5AV">
1563
+ <h1 class="astro-7FYMG5AV">404</h1>
1564
+ <p class="instructions astro-7FYMG5AV">
1565
+ Check out the <code class="astro-7FYMG5AV">src/pages</code> directory to get started.<br class="astro-7FYMG5AV">
1566
+ <strong class="astro-7FYMG5AV">Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
1567
+ </p>
1568
+ <ul role="list" class="link-card-grid astro-7FYMG5AV">
1569
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://docs.astro.build/", "title": "Documentation", "body": "Learn how Astro works and explore the official API docs.", "class": "astro-7FYMG5AV" })}
1570
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/integrations/", "title": "Integrations", "body": "Supercharge your project with new frameworks and libraries.", "class": "astro-7FYMG5AV" })}
1571
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/themes/", "title": "Themes", "body": "Explore a galaxy of community-built starter themes.", "class": "astro-7FYMG5AV" })}
1572
+ ${renderComponent($$result, "Card", $$Card, { "href": "https://astro.build/chat/", "title": "Chat", "body": "Come say hi to our amazing Discord community. \u2764\uFE0F", "class": "astro-7FYMG5AV" })}
1573
+ </ul>
1574
+ </main>` })}
1575
+
1576
+ `;
1577
+ });
1578
+
1579
+ const $$file$2 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/404.astro";
1580
+ const $$url$2 = "/404";
1581
+
1582
+ const _page1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1583
+ __proto__: null,
1584
+ $$metadata: $$metadata$2,
1585
+ default: $$404,
1586
+ file: $$file$2,
1587
+ url: $$url$2
1588
+ }, Symbol.toStringTag, { value: 'Module' }));
1589
+
1590
+ const $$metadata$1 = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/app/index.astro", { modules: [], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1591
+ const $$Astro$1 = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/app/index.astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1592
+ const $$Index = createComponent(async ($$result, $$props, $$slots) => {
1593
+ const Astro2 = $$result.createAstro($$Astro$1, $$props, $$slots);
1594
+ Astro2.self = $$Index;
1595
+ return renderTemplate``;
1596
+ });
1597
+
1598
+ const $$file$1 = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/app/index.astro";
1599
+ const $$url$1 = "/app";
1600
+
1601
+ const _page2 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1602
+ __proto__: null,
1603
+ $$metadata: $$metadata$1,
1604
+ default: $$Index,
1605
+ file: $$file$1,
1606
+ url: $$url$1
1607
+ }, Symbol.toStringTag, { value: 'Module' }));
1608
+
1609
+ const DEFAULT_LANG = 'pt_br';
1610
+
1611
+ const DEFAULT_CURRENCY = 'BRL';
1612
+
1613
+ const DEFAULT_CURRENCY_SYMBOL = 'R$';
1614
+
1615
+ const DEFAULT_COUNTRY_CODE = 'BR';
1616
+ // # sourceMappingURL=defaults.js.map
1617
+
1618
+ // @ts-ignore
1619
+ const _env = (Object.assign({"BASE_URL":"/","MODE":"production","DEV":false,"PROD":true},{LANG:process.env.LANG,ECOM_STORE_ID:"1011",}))
1620
+ || (typeof process === 'object' && process?.env)
1621
+ || globalThis;
1622
+ const deepmerge = Deepmerge();
1623
+ const self = globalThis.__cloudCommerce || {
1624
+ config: {
1625
+ lang: _env.ECOM_LANG || DEFAULT_LANG,
1626
+ currency: _env.ECOM_CURRENCY || DEFAULT_CURRENCY,
1627
+ currencySymbol: _env.ECOM_CURRENCY_SYMBOL || DEFAULT_CURRENCY_SYMBOL,
1628
+ countryCode: _env.ECOM_COUNTRY_CODE || DEFAULT_COUNTRY_CODE,
1629
+ storeId: Number(_env.ECOM_STORE_ID),
1630
+ },
1631
+ };
1632
+ globalThis.__cloudCommerce = self;
1633
+
1634
+ const config = {
1635
+ get() {
1636
+ return self.config;
1637
+ },
1638
+ set(config) {
1639
+ self.config = deepmerge(self.config, config);
1640
+ if (config.storeId) {
1641
+ _env.ECOM_STORE_ID = config.storeId;
1642
+ }
1643
+ },
1644
+ };
1645
+ // # sourceMappingURL=config.js.map
1646
+
1647
+ const {
1648
+ STOREFRONT_BASE_DIR,
1649
+ VITE_ECOM_STORE_ID
1650
+ } = Object.assign({"BASE_URL":"/","MODE":"production","DEV":false,"PROD":true}, { STOREFRONT_BASE_DIR: "../../../store/functions/ssr/", ECOM_STORE_ID: "1011" });
1651
+ let baseDir;
1652
+ if (STOREFRONT_BASE_DIR) {
1653
+ const currentDir = fileURLToPath(new URL(".", import.meta.url));
1654
+ baseDir = resolve(currentDir, STOREFRONT_BASE_DIR);
1655
+ } else {
1656
+ baseDir = process.cwd();
1657
+ }
1658
+ const dirContent = resolve(baseDir, "content");
1659
+ if (VITE_ECOM_STORE_ID) {
1660
+ config.set({ storeId: Number(VITE_ECOM_STORE_ID) });
1661
+ }
1662
+ const settings = JSON.parse(
1663
+ readFileSync(resolve(dirContent, "settings.json"), "utf8")
1664
+ );
1665
+ const primaryColor = settings.primary_color || "#20c997";
1666
+ const secondaryColor = settings.secondary_color || "#343a40";
1667
+ const storefrontConfig = () => {
1668
+ const { storeId, lang } = config.get();
1669
+ return {
1670
+ settings,
1671
+ lang,
1672
+ storeId,
1673
+ primaryColor,
1674
+ secondaryColor
1675
+ };
1676
+ };
1677
+
1678
+ const $$module2 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1679
+ __proto__: null,
1680
+ default: storefrontConfig
1681
+ }, Symbol.toStringTag, { value: 'Module' }));
1682
+
1683
+ const $$metadata = createMetadata("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro", { modules: [{ module: $$module1, specifier: "@cloudcommerce/api", assert: {} }, { module: $$module2, specifier: "../storefront-config", assert: {} }, { module: $$module3, specifier: "../layouts/Layout.astro", assert: {} }], hydratedComponents: [], clientOnlyComponents: [], hydrationDirectives: /* @__PURE__ */ new Set([]), hoisted: [] });
1552
1684
  const $$Astro = createAstro("/@fs/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro", "", "file:///home/leo/code/ecomplus/cloud-commerce/packages/storefront/");
1553
1685
  const $$ = createComponent(async ($$result, $$props, $$slots) => {
1554
1686
  const Astro2 = $$result.createAstro($$Astro, $$props, $$slots);
1555
1687
  Astro2.self = $$;
1556
1688
  const { slug } = Astro2.params;
1557
- const { data: { resource, doc } } = await api.get(`slugs/${slug}`, {
1558
- storeId: 1056,
1559
- fetch
1560
- });
1689
+ let resource;
1690
+ let doc;
1691
+ try {
1692
+ const { data } = await api.get(`slugs/${slug}`, { fetch });
1693
+ resource = data.resource;
1694
+ doc = data.doc;
1695
+ } catch {
1696
+ return Astro2.redirect(`/404?url=${encodeURIComponent(`/${slug}`)}`);
1697
+ }
1561
1698
  const STYLES = [];
1562
1699
  for (const STYLE of STYLES)
1563
1700
  $$result.styles.add(STYLE);
1564
- return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": doc.name, "class": "astro-QB6KRBZ4" }, { "default": () => renderTemplate`${maybeRenderHead($$result)}<main class="astro-QB6KRBZ4">
1565
- <h1 class="astro-QB6KRBZ4">Hello <span class="text-gradient astro-QB6KRBZ4">${doc.name}</span></h1>
1566
- <hr class="astro-QB6KRBZ4">
1567
- <div class="mt-3 astro-QB6KRBZ4">
1568
- <mark class="astro-QB6KRBZ4">${doc._id}</mark> from <i class="astro-QB6KRBZ4">${resource}</i>
1569
- <p class="astro-QB6KRBZ4">${Math.random()}</p>
1570
- <em class="astro-QB6KRBZ4">Lorem ipsum dolor sit amet</em>
1701
+ return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": doc.name, "class": "astro-NJCM7BMR" }, { "default": () => renderTemplate`${maybeRenderHead($$result)}<main class="astro-NJCM7BMR">
1702
+ <h1 class="astro-NJCM7BMR">Hello <span class="text-gradient astro-NJCM7BMR">${doc.name}</span></h1>
1703
+ <hr class="astro-NJCM7BMR">
1704
+ <div class="mt-3 astro-NJCM7BMR">
1705
+ <mark class="astro-NJCM7BMR">${doc._id}</mark> from <i class="astro-NJCM7BMR">${resource}</i>
1706
+ <p class="astro-NJCM7BMR">${Math.random()}</p>
1707
+ <em class="astro-NJCM7BMR">Lorem ipsum dolor sit amet</em>
1571
1708
  </div>
1572
1709
  </main>` })}
1573
1710
 
@@ -1577,7 +1714,7 @@ const $$ = createComponent(async ($$result, $$props, $$slots) => {
1577
1714
  const $$file = "/home/leo/code/ecomplus/cloud-commerce/packages/storefront/src/pages/[...slug].astro";
1578
1715
  const $$url = "/[...slug]";
1579
1716
 
1580
- const _page1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1717
+ const _page3 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1581
1718
  __proto__: null,
1582
1719
  $$metadata,
1583
1720
  default: $$,
@@ -1585,7 +1722,7 @@ const _page1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
1585
1722
  url: $$url
1586
1723
  }, Symbol.toStringTag, { value: 'Module' }));
1587
1724
 
1588
- const pageMap = new Map([['src/pages/index.astro', _page0],['src/pages/[...slug].astro', _page1],]);
1725
+ const pageMap = new Map([['src/pages/index.astro', _page0],['src/pages/404.astro', _page1],['src/pages/app/index.astro', _page2],['src/pages/[...slug].astro', _page3],]);
1589
1726
  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 }),];
1590
1727
 
1591
1728
  if (typeof process !== "undefined") {
@@ -1657,7 +1794,7 @@ function deserializeManifest(serializedManifest) {
1657
1794
  };
1658
1795
  }
1659
1796
 
1660
- const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":["assets/_...d4aa8aff.css","assets/index.5608ba47.css"],"scripts":[{"type":"external","value":"page.3aa82516.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.4.5 - 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.4.5\":\"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/_...d4aa8aff.css","assets/_...0b5ebd52.css"],"scripts":[{"type":"external","value":"page.3aa82516.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.4.5 - 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.4.5\":\"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"}}}],"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","@astrojs/vue/client.js":"client.6d48c590.js","astro:scripts/page.js":"page.3aa82516.js","astro:scripts/before-hydration.js":"data:text/javascript;charset=utf-8,//[no before-hydration script]"},"assets":["/assets/_...0b5ebd52.css","/assets/_...d4aa8aff.css","/assets/index.5608ba47.css","/client.6d48c590.js","/favicon.ico","/page.3aa82516.js","/page.3aa82516.js","/~partytown/partytown-atomics.js","/~partytown/partytown-media.js","/~partytown/partytown-sw.js","/~partytown/partytown.js"]}), {
1797
+ const _manifest = Object.assign(deserializeManifest({"adapterName":"@astrojs/node","routes":[{"file":"","links":["assets/404-_...d4aa8aff.css","assets/404-index.d9230d24.css","assets/index.53a3a3e0.css"],"scripts":[{"type":"external","value":"page.3aa82516.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.4.5 - 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.4.5\":\"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/404-_...d4aa8aff.css","assets/404-index.d9230d24.css","assets/404.530428e5.css"],"scripts":[{"type":"external","value":"page.3aa82516.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.4.5 - 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.4.5\":\"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":"/404","type":"page","pattern":"^\\/404\\/?$","segments":[[{"content":"404","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/404.astro","pathname":"/404","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[{"type":"external","value":"page.3aa82516.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.4.5 - 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.4.5\":\"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":["assets/404-_...d4aa8aff.css","assets/_...fae19676.css"],"scripts":[{"type":"external","value":"page.3aa82516.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.4.5 - 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.4.5\":\"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"}}}],"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","@astrojs/vue/client.js":"client.6d48c590.js","astro:scripts/page.js":"page.3aa82516.js","astro:scripts/before-hydration.js":"data:text/javascript;charset=utf-8,//[no before-hydration script]"},"assets":["/assets/404.530428e5.css","/assets/404-_...d4aa8aff.css","/assets/404-index.d9230d24.css","/assets/_...fae19676.css","/assets/index.53a3a3e0.css","/client.6d48c590.js","/favicon.ico","/page.3aa82516.js","/page.3aa82516.js","/~partytown/partytown-atomics.js","/~partytown/partytown-media.js","/~partytown/partytown-sw.js","/~partytown/partytown.js"]}), {
1661
1798
  pageMap: pageMap,
1662
1799
  renderers: renderers
1663
1800
  });
@@ -0,0 +1,2 @@
1
+ STOREFRONT_BASE_DIR=../../../store/functions/ssr/
2
+ ECOM_STORE_ID=1011
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/storefront",
3
3
  "type": "module",
4
- "version": "0.0.67",
4
+ "version": "0.0.68",
5
5
  "description": "E-Com Plus Cloud Commerce storefront with Astro",
6
6
  "main": "src/index.js",
7
7
  "repository": {
@@ -29,8 +29,11 @@
29
29
  "@astrojs/sitemap": "^1.0.0",
30
30
  "@astrojs/vue": "^1.0.0",
31
31
  "@cloudcommerce/api": "workspace:*",
32
+ "@cloudcommerce/config": "workspace:*",
33
+ "@nanostores/vue": "^0.6.0",
32
34
  "@picocss/pico": "^1.5.3",
33
35
  "astro": "^1.1.5",
36
+ "nanostores": "^0.6.0",
34
37
  "rollup": "^2.79.0",
35
38
  "unocss": "^0.45.15",
36
39
  "vite": "^3.1.0",