cloudcommerce 0.36.2 → 0.37.1

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 (174) hide show
  1. package/.github/workflows/test-apps.yml +2 -2
  2. package/.gitmodules +0 -3
  3. package/.vscode/settings.json +0 -1
  4. package/CHANGELOG.md +38 -0
  5. package/action.yml +2 -2
  6. package/ecomplus-stores/barra-doce/functions/many/package.json +3 -3
  7. package/ecomplus-stores/barra-doce/functions/ssr/package.json +6 -6
  8. package/ecomplus-stores/barra-doce/functions/with-apps/package.json +3 -3
  9. package/ecomplus-stores/barra-doce/package.json +2 -2
  10. package/package.json +5 -5
  11. package/packages/api/package.json +1 -1
  12. package/packages/apps/affilate-program/package.json +1 -1
  13. package/packages/apps/correios/package.json +1 -1
  14. package/packages/apps/custom-payment/package.json +1 -1
  15. package/packages/apps/custom-shipping/package.json +1 -1
  16. package/packages/apps/datafrete/package.json +1 -1
  17. package/packages/apps/discounts/package.json +1 -1
  18. package/packages/apps/emails/package.json +1 -1
  19. package/packages/apps/fb-conversions/package.json +2 -2
  20. package/packages/apps/flash-courier/package.json +1 -1
  21. package/packages/apps/frenet/package.json +1 -1
  22. package/packages/apps/galaxpay/package.json +1 -1
  23. package/packages/apps/google-analytics/package.json +1 -1
  24. package/packages/apps/jadlog/package.json +1 -1
  25. package/packages/apps/loyalty-points/package.json +1 -1
  26. package/packages/apps/mandae/package.json +1 -1
  27. package/packages/apps/melhor-envio/package.json +1 -1
  28. package/packages/apps/mercadopago/package.json +1 -1
  29. package/packages/apps/pagarme/package.json +1 -1
  30. package/packages/apps/pagarme-v5/package.json +1 -1
  31. package/packages/apps/paghiper/package.json +1 -1
  32. package/packages/apps/pix/package.json +1 -1
  33. package/packages/apps/tiny-erp/package.json +1 -1
  34. package/packages/apps/webhooks/package.json +1 -1
  35. package/packages/cli/package.json +1 -1
  36. package/packages/config/package.json +1 -1
  37. package/packages/emails/package.json +1 -1
  38. package/packages/eslint/package.json +5 -5
  39. package/packages/events/package.json +1 -1
  40. package/packages/feeds/package.json +1 -1
  41. package/packages/firebase/package.json +1 -1
  42. package/packages/i18n/package.json +1 -1
  43. package/packages/modules/package.json +1 -1
  44. package/packages/passport/package.json +1 -1
  45. package/packages/ssr/package.json +4 -4
  46. package/packages/storefront/package.json +11 -10
  47. package/packages/storefront/src/helpers/sf-utils.ts +8 -5
  48. package/packages/storefront/src/lib/components/CarouselControl.vue +1 -1
  49. package/packages/storefront/src/lib/composables/use-search-modal.ts +90 -0
  50. package/packages/storefront/src/lib/composables/use-shop-header.ts +69 -1
  51. package/packages/storefront/src/lib/state/search-engine.ts +39 -13
  52. package/packages/storefront/src/lib/state/shopping-cart.ts +2 -1
  53. package/packages/storefront/src/lib/state/use-analytics.ts +27 -11
  54. package/packages/test-base/package.json +1 -1
  55. package/packages/types/package.json +1 -1
  56. package/ecomplus-stores/monocard/.devcontainer/devcontainer.json +0 -30
  57. package/ecomplus-stores/monocard/.editorconfig +0 -13
  58. package/ecomplus-stores/monocard/.eslintrc.cjs +0 -3
  59. package/ecomplus-stores/monocard/.firebaserc +0 -5
  60. package/ecomplus-stores/monocard/.github/build-and-deploy +0 -1
  61. package/ecomplus-stores/monocard/.github/renovate.json +0 -5
  62. package/ecomplus-stores/monocard/.github/workflows/build-and-deploy.yml +0 -37
  63. package/ecomplus-stores/monocard/.github/workflows/calibreapp-image-actions.yml +0 -23
  64. package/ecomplus-stores/monocard/.gitpod.yml +0 -12
  65. package/ecomplus-stores/monocard/.idx/dev.nix +0 -24
  66. package/ecomplus-stores/monocard/.nvmrc +0 -1
  67. package/ecomplus-stores/monocard/.vscode/extensions.json +0 -8
  68. package/ecomplus-stores/monocard/.vscode/launch.json +0 -11
  69. package/ecomplus-stores/monocard/.vscode/settings.json +0 -13
  70. package/ecomplus-stores/monocard/LICENSE.md +0 -230
  71. package/ecomplus-stores/monocard/README.md +0 -31
  72. package/ecomplus-stores/monocard/SETUP.md +0 -129
  73. package/ecomplus-stores/monocard/SETUP.pt-BR.md +0 -129
  74. package/ecomplus-stores/monocard/functions/config.json +0 -3
  75. package/ecomplus-stores/monocard/functions/example.env +0 -10
  76. package/ecomplus-stores/monocard/functions/many/index.js +0 -14
  77. package/ecomplus-stores/monocard/functions/many/package.json +0 -22
  78. package/ecomplus-stores/monocard/functions/ssr/.eslintrc.cjs +0 -6
  79. package/ecomplus-stores/monocard/functions/ssr/astro.config.mjs +0 -4
  80. package/ecomplus-stores/monocard/functions/ssr/content/blog/.gitkeep +0 -0
  81. package/ecomplus-stores/monocard/functions/ssr/content/extra-pages/terms.json +0 -11
  82. package/ecomplus-stores/monocard/functions/ssr/content/extra-pages/trocas.json +0 -11
  83. package/ecomplus-stores/monocard/functions/ssr/content/layout.json +0 -52
  84. package/ecomplus-stores/monocard/functions/ssr/content/pages/home.json +0 -20
  85. package/ecomplus-stores/monocard/functions/ssr/content/pages/products.json +0 -18
  86. package/ecomplus-stores/monocard/functions/ssr/content/settings.json +0 -78
  87. package/ecomplus-stores/monocard/functions/ssr/index.js +0 -18
  88. package/ecomplus-stores/monocard/functions/ssr/package.json +0 -36
  89. package/ecomplus-stores/monocard/functions/ssr/public/admin/.gitkeep +0 -0
  90. package/ecomplus-stores/monocard/functions/ssr/public/assets/lotties/img_1.png +0 -0
  91. package/ecomplus-stores/monocard/functions/ssr/public/assets/lotties/img_1.webp +0 -0
  92. package/ecomplus-stores/monocard/functions/ssr/public/assets/lotties/phone-nfc.json +0 -1
  93. package/ecomplus-stores/monocard/functions/ssr/public/img/icon.png +0 -0
  94. package/ecomplus-stores/monocard/functions/ssr/public/img/large-icon.png +0 -0
  95. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/card-phone.png +0 -0
  96. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/devices.jpg +0 -0
  97. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/ecom-icon.png +0 -0
  98. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/edit-suit.jpg +0 -0
  99. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/favicon.png +0 -0
  100. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/icon.png +0 -0
  101. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/large-icon.png +0 -0
  102. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-arcelor-mittal.webp +0 -0
  103. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-azul.webp +0 -0
  104. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-banco-pan.webp +0 -0
  105. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-brinks.webp +0 -0
  106. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-mastercard.webp +0 -0
  107. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-pfizer.webp +0 -0
  108. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-prudential.webp +0 -0
  109. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo-unimed.webp +0 -0
  110. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/logo.webp +0 -0
  111. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/mockup-editar.png +0 -0
  112. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/og-image.png +0 -0
  113. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/padronagem-tilada.png +0 -0
  114. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/qrcode-camera.png +0 -0
  115. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/sua-logo-aqui.png +0 -0
  116. package/ecomplus-stores/monocard/functions/ssr/public/robots.txt +0 -6
  117. package/ecomplus-stores/monocard/functions/ssr/scripts/build.sh +0 -14
  118. package/ecomplus-stores/monocard/functions/ssr/src/assets/card.css +0 -99
  119. package/ecomplus-stores/monocard/functions/ssr/src/assets/style.css +0 -79
  120. package/ecomplus-stores/monocard/functions/ssr/src/components/AccountMenu.vue +0 -97
  121. package/ecomplus-stores/monocard/functions/ssr/src/components/AccountPage.vue +0 -62
  122. package/ecomplus-stores/monocard/functions/ssr/src/components/Banner.vue +0 -59
  123. package/ecomplus-stores/monocard/functions/ssr/src/components/BannersGrid.astro +0 -25
  124. package/ecomplus-stores/monocard/functions/ssr/src/components/Breadcrumbs.astro +0 -44
  125. package/ecomplus-stores/monocard/functions/ssr/src/components/CartItem.vue +0 -64
  126. package/ecomplus-stores/monocard/functions/ssr/src/components/CartSidebar.vue +0 -69
  127. package/ecomplus-stores/monocard/functions/ssr/src/components/CasesGrid.astro +0 -49
  128. package/ecomplus-stores/monocard/functions/ssr/src/components/CheckoutPage.vue +0 -33
  129. package/ecomplus-stores/monocard/functions/ssr/src/components/Collapse.vue +0 -19
  130. package/ecomplus-stores/monocard/functions/ssr/src/components/DemoVideo.vue +0 -10
  131. package/ecomplus-stores/monocard/functions/ssr/src/components/DocDescription.vue +0 -28
  132. package/ecomplus-stores/monocard/functions/ssr/src/components/FeatureTabs.vue +0 -286
  133. package/ecomplus-stores/monocard/functions/ssr/src/components/FeaturesSection.astro +0 -28
  134. package/ecomplus-stores/monocard/functions/ssr/src/components/FooterStamps.vue +0 -63
  135. package/ecomplus-stores/monocard/functions/ssr/src/components/ImagesGallery.vue +0 -154
  136. package/ecomplus-stores/monocard/functions/ssr/src/components/LoginForm.vue +0 -107
  137. package/ecomplus-stores/monocard/functions/ssr/src/components/LottiePhoneNFC.vue +0 -20
  138. package/ecomplus-stores/monocard/functions/ssr/src/components/MonocardCustomizer.vue +0 -261
  139. package/ecomplus-stores/monocard/functions/ssr/src/components/PitchBar.vue +0 -61
  140. package/ecomplus-stores/monocard/functions/ssr/src/components/Prices.vue +0 -95
  141. package/ecomplus-stores/monocard/functions/ssr/src/components/ProductCard.vue +0 -117
  142. package/ecomplus-stores/monocard/functions/ssr/src/components/ProductDetails.vue +0 -122
  143. package/ecomplus-stores/monocard/functions/ssr/src/components/ProductShelf.vue +0 -57
  144. package/ecomplus-stores/monocard/functions/ssr/src/components/ProductSpecifications.vue +0 -42
  145. package/ecomplus-stores/monocard/functions/ssr/src/components/SearchModal.vue +0 -6
  146. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopFooter.vue +0 -71
  147. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopHeader.vue +0 -137
  148. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopHeaderMenu.vue +0 -92
  149. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopSidenav.vue +0 -64
  150. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopSidenavCategory.vue +0 -77
  151. package/ecomplus-stores/monocard/functions/ssr/src/components/SkuSelector.vue +0 -58
  152. package/ecomplus-stores/monocard/functions/ssr/src/env.d.ts +0 -13
  153. package/ecomplus-stores/monocard/functions/ssr/src/layouts/Base.astro +0 -15
  154. package/ecomplus-stores/monocard/functions/ssr/src/layouts/PageFooter.astro +0 -53
  155. package/ecomplus-stores/monocard/functions/ssr/src/layouts/PageHeader.astro +0 -35
  156. package/ecomplus-stores/monocard/functions/ssr/src/main/Fallback.astro +0 -10
  157. package/ecomplus-stores/monocard/functions/ssr/src/main/Home.astro +0 -95
  158. package/ecomplus-stores/monocard/functions/ssr/src/main/Sections.astro +0 -52
  159. package/ecomplus-stores/monocard/functions/ssr/src/main/Wildcard.astro +0 -18
  160. package/ecomplus-stores/monocard/functions/ssr/src/pages/[...slug].astro +0 -42
  161. package/ecomplus-stores/monocard/functions/ssr/src/pages/_vue.ts +0 -10
  162. package/ecomplus-stores/monocard/functions/ssr/src/pages/app/account.astro +0 -34
  163. package/ecomplus-stores/monocard/functions/ssr/src/pages/app/index.astro +0 -62
  164. package/ecomplus-stores/monocard/functions/ssr/src/pages/comprar/index.astro +0 -52
  165. package/ecomplus-stores/monocard/functions/ssr/src/pages/index.astro +0 -32
  166. package/ecomplus-stores/monocard/functions/ssr/src/pages/~fallback.astro +0 -23
  167. package/ecomplus-stores/monocard/functions/ssr/src/scripts/InlineScripts.astro +0 -10
  168. package/ecomplus-stores/monocard/functions/ssr/tailwind.config.cjs +0 -18
  169. package/ecomplus-stores/monocard/functions/ssr/tsconfig.json +0 -12
  170. package/ecomplus-stores/monocard/functions/ssr/uno.config.cjs +0 -5
  171. package/ecomplus-stores/monocard/functions/with-apps/index.js +0 -12
  172. package/ecomplus-stores/monocard/functions/with-apps/package.json +0 -22
  173. package/ecomplus-stores/monocard/package.json +0 -31
  174. package/ecomplus-stores/monocard/scripts/install.sh +0 -24
@@ -1,53 +0,0 @@
1
- ---
2
- import {
3
- type Props as ShopFooterProps,
4
- default as ShopFooter,
5
- } from '~/components/ShopFooter.vue';
6
-
7
- const { routeContext } = Astro.locals;
8
- const { settings, getContent, isHomepage } = routeContext;
9
- const LogoHeading = isHomepage ? 'h2' : 'h3';
10
- const layoutContent = await getContent('layout');
11
- const {
12
- footer: {
13
- stamps,
14
- pagesList,
15
- },
16
- } = layoutContent;
17
- let pageLinks: ShopFooterProps['pageLinks'];
18
- if (pagesList?.isActive) {
19
- if (pagesList.links?.length) {
20
- pageLinks = pagesList.links;
21
- } else {
22
- pageLinks = settings.serviceLinks || [];
23
- const pageSlugs = await getContent('extra-pages/');
24
- for (let i = 0; i < pageSlugs.length; i++) {
25
- const { title } = await getContent(`extra-pages/${pageSlugs[i]}`);
26
- const href = `/p/${pageSlugs[i]}`;
27
- if (title && !pageLinks.find((pageLink) => pageLink.href === href)) {
28
- pageLinks.push({ title, href });
29
- }
30
- }
31
- }
32
- }
33
- ---
34
-
35
- <ShopFooter
36
- {stamps}
37
- {pageLinks}
38
- pagesColTitle={pagesList?.title}
39
- >
40
- <Fragment slot="logo">
41
- <a href="/">
42
- <LogoHeading>
43
- <img
44
- src={settings.logo}
45
- alt={settings.name}
46
- width="150"
47
- height="24.5"
48
- loading="lazy"
49
- />
50
- </LogoHeading>
51
- </a>
52
- </Fragment>
53
- </ShopFooter>
@@ -1,35 +0,0 @@
1
- ---
2
- import usePageHeader from '@@sf/layouts/use-page-header';
3
- import PitchBar from '~/components/PitchBar.vue';
4
- import ShopHeader from '~/components/ShopHeader.vue';
5
-
6
- const { routeContext } = Astro.locals;
7
- const { settings, isHomepage } = routeContext;
8
- const LogoHeading = isHomepage ? 'h1' : 'h2';
9
- const { pitchBar, shopHeader } = await usePageHeader({
10
- routeContext,
11
- listedCategoryFields: null,
12
- });
13
- ---
14
-
15
- <slot name="pitch-bar">
16
- {pitchBar.slides.length > 1 && <PitchBar {...pitchBar} client:idle />}
17
- {pitchBar.slides.length === 1 && <PitchBar {...pitchBar} />}
18
- </slot>
19
- <ShopHeader {...shopHeader} client:context>
20
- <Fragment slot="logo">
21
- <a href="/">
22
- <LogoHeading>
23
- <img
24
- src={settings.logo}
25
- alt={settings.name}
26
- width="150"
27
- height="24.5"
28
- fetchpriority="high"
29
- loading="eager"
30
- class="hover:drop-shadow-sm mx-auto"
31
- />
32
- </LogoHeading>
33
- </a>
34
- </Fragment>
35
- </ShopHeader>
@@ -1,10 +0,0 @@
1
- ---
2
- ---
3
-
4
- <main>
5
- <h1>Error :/</h1>
6
- <p class="instructions">
7
- Check out the <code>src/pages</code> directory to get started.<br/>
8
- <strong>Code Challenge:</strong> Tweak the "Welcome to Astro" message above.
9
- </p>
10
- </main>
@@ -1,95 +0,0 @@
1
- ---
2
- import LottiePhoneNFC from '~/components/LottiePhoneNFC.vue';
3
- import CasesGrid from '~/components/CasesGrid.astro';
4
- import FeaturesSection from '~/components/FeaturesSection.astro';
5
- import Sections from '~/main/Sections.astro';
6
-
7
- const { routeContext } = Astro.locals;
8
- const { settings } = routeContext;
9
- ---
10
-
11
- <main>
12
- <section class="bg-white">
13
- <article class="container mx-auto px-8">
14
- <div class="grid grid-cols-1 lg:grid-cols-7">
15
- <div class="lg:col-span-3 pt-5 lg:py-18 xl:py-20 lg:text-right prose">
16
- <h3 class="text-5xl lg:text-6xl xl:text-7xl 2xl:text-8xl font-bold mt-7">
17
- A melhor forma de se
18
- <span class="text-transparent bg-clip-text bg-gradient-to-br
19
- from-base-900 to-secondary-500">
20
- conectar</span>
21
- </h3>
22
- <h2 class="text-lg lg:text-lg 2xl:text-2xl font-medium">
23
- O Monocard é o cartão de visitas tecnológico e digital
24
- perfeito para pessoas e empresas
25
- </h2>
26
- <div class="not-prose mt-5 flex gap-3 lg:gap-4 text-center lg:justify-end
27
- text-lg sm:text-xl lg:text-2xl xl:text-3xl font-brand lowercase">
28
- <a role="button" href="/#produtos"
29
- class="primary lg:border-4 border-primary
30
- hover:border-primary-bold active:primary-bold
31
- basis-1/2 lg:basis-auto rounded-full px-4 py-2.5 xl:px-7 xl:py-4">
32
- Compre agora
33
- </a>
34
- <a role="button" href={settings.metafields.businessLpUrl}
35
- class="bg-primary/40 text-primary-900 lg:border-4 border-primary/20
36
- hover:primary hover:border-primary-bold active:primary-bold
37
- basis-1/2 lg:basis-auto rounded-full px-4 py-2.5 xl:px-7 xl:py-4">
38
- <i class="i-chat-1-line"></i> Empresas
39
- </a>
40
- </div>
41
- <div class="hidden lg:block pt-7 xl:pt-10 text-sm">
42
- <div class="flex items-center lg:justify-end">
43
- <b class="text-lg">Instantâneo</b>
44
- <i class="i-wpf:define-location text-2xl ml-2"></i>
45
- </div>
46
- <div class="mt-2 mb-4">Compartilhe suas informações com um toque</div>
47
- <div class="flex items-center lg:justify-end">
48
- <b class="text-lg">Fácil e compatível</b>
49
- <i class="i-wpf:nfc-checkpoint text-2xl ml-2"></i>
50
- <i class="i-wpf:android text-2xl ml-1"></i>
51
- <i class="i-wpf:iphone text-2xl ml-1"></i>
52
- </div>
53
- <div class="mt-2">
54
- Seus prospects não precisam de app
55
- <br>Funciona em Android e iPhone
56
- </div>
57
- </div>
58
- <div class="lg:hidden pt-5 flex gap-2 justify-between items-center">
59
- <div>Instantâneo, fácil e compatível</div>
60
- <div class="text-2xl">
61
- <i class="i-wpf:nfc-checkpoint"></i>
62
- <i class="i-wpf:android"></i>
63
- <i class="i-wpf:iphone"></i>
64
- </div>
65
- </div>
66
- </div>
67
- <div class="lg:col-span-4 mt-5 lg:mt-7 h-96 sm:h-auto">
68
- <LottiePhoneNFC client:idle />
69
- </div>
70
- </div>
71
- </article>
72
- </section>
73
- <section id="cases" class="bg-white pb-9">
74
- <CasesGrid />
75
- <div class="max-w-lg mx-auto mt-7">
76
- <a href="/#avaliacoes" class="text-lg text-primary-600 hover:text-primary-800
77
- font-brand lowercase flex gap-1 sm:gap-2 items-center justify-center">
78
- <i class="i-arrow-down-s-line text-3xl animate-bounce -mb-1.5"></i>
79
- <span class="underline underline-offset-4 decoration-primary">
80
- O que profissionais e times dizem</span>
81
- <div class="hidden sm:flex gap-0.5 text-xs text-yellow-400">
82
- <i class="i-star-fill"></i>
83
- <i class="i-star-fill"></i>
84
- <i class="i-star-fill"></i>
85
- <i class="i-star-fill"></i>
86
- <i class="i-star-fill"></i>
87
- </div>
88
- </a>
89
- </div>
90
- </section>
91
- <section class="bg-gradient-to-br from-white to-base-100 py-9">
92
- <FeaturesSection />
93
- </section>
94
- <Sections id="produtos" />
95
- </main>
@@ -1,52 +0,0 @@
1
- ---
2
- import { usePageSections } from '@@sf/layouts/use-page-main';
3
- import BannersGrid from '~/components/BannersGrid.astro';
4
- import ProductShelf from '~/components/ProductShelf.vue';
5
- import Breadcrumbs from '~/components/Breadcrumbs.astro';
6
- import DocDescription from '~/components/DocDescription.vue';
7
- import ProductDetails from '~/components/ProductDetails.vue';
8
- import ProductSpecifications from '~/components/ProductSpecifications.vue';
9
-
10
- const { routeContext } = Astro.locals;
11
- const { sections } = await usePageSections({
12
- routeContext,
13
- handleCustomSection: async (type, content) => {
14
- if (type === 'c:foo') return { props: { ...content, foo: 'bar' } };
15
- return { props: content };
16
- },
17
- });
18
- const { isHomepage } = routeContext;
19
- /* `apiContext` is surelly set here (from Wildcard.astro)
20
- cause route resource is required to define sections from content. */
21
- ---
22
-
23
- <article class="my-9 md:my-12">
24
- {sections.map(async ({ type, props }) => {
25
- switch (type) {
26
- case 'product-shelf':
27
- return isHomepage
28
- ? <ProductShelf {...props} client:idle />
29
- : <ProductShelf {...props} client:visible />
30
- case 'banners-grid':
31
- return <BannersGrid {...props} />
32
- case 'breadcrumbs':
33
- return <Breadcrumbs />
34
- case 'doc-description':
35
- return <DocDescription />
36
- case 'product-details':
37
- const { hasDescription, hasSpecifications, ...detailsProps } = props;
38
- return <>
39
- <ProductDetails {...detailsProps} client:context>
40
- <Fragment slot="description">
41
- {hasDescription && <DocDescription />}
42
- {hasSpecifications && <ProductSpecifications />}
43
- </Fragment>
44
- </ProductDetails>
45
- </>
46
- case 'c:foo':
47
- return <div data-foo={props.foo}></div>
48
- default:
49
- return <div data-section={type}></div>
50
- }
51
- })}
52
- </article>
@@ -1,18 +0,0 @@
1
- ---
2
- import api from '@cloudcommerce/api';
3
- import SharedData from '@@sf/components/SharedData.astro';
4
- import Sections from '~/main/Sections.astro';
5
-
6
- const { fetchingApiContext } = Astro.locals.routeContext;
7
- const [
8
- { data: { result: grids } },
9
- ] = await Promise.all([
10
- api.get('grids'),
11
- fetchingApiContext,
12
- ]);
13
- ---
14
-
15
- <main>
16
- <SharedData field="grids" value={grids} />
17
- <Sections />
18
- </main>
@@ -1,42 +0,0 @@
1
- ---
2
- import api from '@cloudcommerce/api';
3
- import loadRouteContext, { RouteContext } from '@@sf/ssr-context';
4
- import BaseHead from '@@sf/layouts/BaseHead.astro';
5
- import Base from '~/layouts/Base.astro';
6
- import PageHeader from '~/layouts/PageHeader.astro';
7
- import PageFooter from '~/layouts/PageFooter.astro';
8
- import WildcardMain from '~/main/Wildcard.astro';
9
-
10
- if (String(Astro.params.slug).endsWith('.css.map')) {
11
- return new Response(null, { status: 404 });
12
- }
13
-
14
- let routeContext: RouteContext | undefined;
15
- let loadError: any;
16
- try {
17
- routeContext = await loadRouteContext(Astro);
18
- } catch (err: any) {
19
- if (err.astroResponse) {
20
- return err.astroResponse;
21
- }
22
- loadError = err;
23
- }
24
-
25
- export async function getStaticPaths() {
26
- return (await api.get('products?sort=-sales&limit=4&fields=slug'))
27
- .data.result.map(({ slug }) => ({ params: { slug } }));
28
- }
29
- ---
30
-
31
- <!DOCTYPE html>
32
- <html lang={routeContext?.lang.replace('_', '-')}>
33
- {routeContext &&
34
- <Base>
35
- <BaseHead slot="base-head" />
36
- <PageHeader />
37
- <WildcardMain />
38
- <PageFooter />
39
- </Base>
40
- }
41
- {loadError && <Fragment set:html={loadError.responseHTML} />}
42
- </html>
@@ -1,10 +0,0 @@
1
- import type { App } from 'vue';
2
- import { MotionPlugin } from '@vueuse/motion';
3
- import _createApp from '@@sf/pages/_vue';
4
-
5
- const createApp = (app: App) => {
6
- app.use(MotionPlugin);
7
- return _createApp(app);
8
- };
9
-
10
- export default createApp;
@@ -1,34 +0,0 @@
1
- ---
2
- import loadRouteContext, { RouteContext } from '@@sf/ssr-context';
3
- import BaseHead from '@@sf/layouts/BaseHead.astro';
4
- import Base from '~/layouts/Base.astro';
5
- import AccountPage from '~/components/AccountPage.vue';
6
-
7
- let routeContext: RouteContext;
8
- try {
9
- routeContext = await loadRouteContext(Astro);
10
- } catch (err: any) {
11
- return err.astroResponse;
12
- }
13
- const { settings } = routeContext;
14
- ---
15
-
16
- <!DOCTYPE html>
17
- <html lang={routeContext.lang.replace('_', '-')}>
18
- <Base>
19
- <BaseHead slot="base-head" />
20
- <main>
21
- <AccountPage client:only>
22
- <img
23
- slot="logo"
24
- src={settings.logo}
25
- alt={settings.name}
26
- width="150"
27
- height="24.5"
28
- fetchpriority="high"
29
- loading="eager"
30
- />
31
- </AccountPage>
32
- </main>
33
- </Base>
34
- </html>
@@ -1,62 +0,0 @@
1
- ---
2
- import loadRouteContext, { RouteContext } from '@@sf/ssr-context';
3
- import BaseHead from '@@sf/layouts/BaseHead.astro';
4
- import Base from '~/layouts/Base.astro';
5
- import CheckoutPage from '~/components/CheckoutPage.vue';
6
-
7
- let routeContext: RouteContext;
8
- try {
9
- routeContext = await loadRouteContext(Astro);
10
- } catch (err: any) {
11
- return err.astroResponse;
12
- }
13
- const layoutContent = await routeContext.getContent('layout');
14
- const { footer: { stamps } } = layoutContent;
15
- ---
16
-
17
- <!DOCTYPE html>
18
- <html lang={routeContext.lang.replace('_', '-')}>
19
- <Base>
20
- <Fragment slot="base-head">
21
- <BaseHead />
22
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@ecomplus/storefront-twbs@7/dist/cdn/storefront-twbs.min.css">
23
- <style is:inline>
24
- body {
25
- --primary: var(--c-primary);
26
- --primary-yiq: var(--c-on-primary);
27
- --primary-rgb: var(--rgb-primary);
28
- --primary-darken: var(--c-primary);
29
- --primary-darken-yiq: var(--c-on-primary);
30
- --primary-darken-rgb: var(--rgb-primary);
31
- --primary-dark: var(--c-primary-bold);
32
- --primary-dark-yiq: var(--c-on-primary-bold);
33
- --primary-dark-rgb: var(--rgb-primary-bold);
34
- --primary-darker: var(--c-primary-bold);
35
- --primary-darker-yiq: var(--c-on-primary-bold);
36
- --primary-darker-rgb: var(--rgb-primary-bold);
37
- --primary-darkest: rgb(var(--rgb-primary-900));
38
- --primary-darkest-yiq: var(--c-on-dark);
39
- --primary-darkest-rgb: var(--rgb-primary-900);
40
- --primary-black: rgb(var(--rgb-primary-950));
41
- --primary-lighten: var(--c-primary);
42
- --primary-lighten-yiq: var(--c-on-primary);
43
- --primary-lighten-rgb: var(--rgb-primary);
44
- --primary-light: var(--c-primary-subtle);
45
- --primary-light-yiq: var(--c-on-primary-subtle);
46
- --primary-light-rgb: var(--rgb-primary-subtle);
47
- --primary-lighter: var(--c-primary-subtle);
48
- --primary-lighter-yiq: var(--c-on-primary-subtle);
49
- --primary-lighter-rgb: var(--rgb-primary-subtle);
50
- --primary-lightest: rgb(var(--rgb-primary-200));
51
- --primary-lightest-yiq: var(--c-on-light);
52
- --primary-lightest-rgb: var(--rgb-primary-200);
53
- }
54
- .lead {
55
- margin-bottom: 1.25rem;
56
- }
57
- </style>
58
- </Fragment>
59
- <CheckoutPage footerStamps={stamps} />
60
- <script src="@@sf/scripts/vbeta-app"></script>
61
- </Base>
62
- </html>
@@ -1,52 +0,0 @@
1
- ---
2
- import loadRouteContext, { RouteContext } from '@@sf/ssr-context';
3
- import BaseHead from '@@sf/layouts/BaseHead.astro';
4
- import Base from '~/layouts/Base.astro';
5
- import PageHeader from '~/layouts/PageHeader.astro';
6
- import PageFooter from '~/layouts/PageFooter.astro';
7
- import MonocardCustomizer from '~/components/MonocardCustomizer.vue';
8
- import DemoVideo from '~/components/DemoVideo.vue';
9
- import cardCSS from '~/assets/card.css?raw';
10
-
11
- let routeContext: RouteContext | undefined;
12
- let loadError: any;
13
- try {
14
- routeContext = await loadRouteContext(Astro);
15
- } catch (err: any) {
16
- if (err.astroResponse) {
17
- return err.astroResponse;
18
- }
19
- loadError = err;
20
- }
21
- const monocard = await (await fetch('https://ioapi.ecvol.com/51301/v1/products/634830dc73321213f8aa199f.json')).json();
22
- const monocardWithLogo = await (await fetch('https://ioapi.ecvol.com/51301/v1/products/62eab3eaeb85911216a3c430.json')).json();
23
- const inlineClientJS = `
24
- window.monocard = ${JSON.stringify(monocard)};
25
- window.monocardWithLogo = ${JSON.stringify(monocardWithLogo)};`;
26
- ---
27
-
28
- <!DOCTYPE html>
29
- <html lang={routeContext?.lang.replace('_', '-')}>
30
- {routeContext &&
31
- <Base>
32
- <Fragment slot="base-head">
33
- <BaseHead />
34
- <style is:inline set:html={cardCSS}></style>
35
- </Fragment>
36
- <PageHeader />
37
- <script is:inline set:html={inlineClientJS} />
38
- <MonocardCustomizer client:load {monocard} />
39
- <div class="max-w-3xl mx-auto mt-14">
40
- <div class="my-10 text-center">
41
- <a id="como-funciona"></a>
42
- <DemoVideo width="900" />
43
- <a href="#comprar" role="button" class="text-xl mt-10">
44
- Crie seu Monocard
45
- </a>
46
- </div>
47
- </div>
48
- <PageFooter />
49
- </Base>
50
- }
51
- {loadError && <Fragment set:html={loadError.responseHTML} />}
52
- </html>
@@ -1,32 +0,0 @@
1
- ---
2
- import loadRouteContext, { RouteContext } from '@@sf/ssr-context';
3
- import BaseHead from '@@sf/layouts/BaseHead.astro';
4
- import Base from '~/layouts/Base.astro';
5
- import PageHeader from '~/layouts/PageHeader.astro';
6
- import PageFooter from '~/layouts/PageFooter.astro';
7
- import HomeMain from '~/main/Home.astro';
8
-
9
- let routeContext: RouteContext | undefined;
10
- let loadError: any;
11
- try {
12
- routeContext = await loadRouteContext(Astro);
13
- } catch (err: any) {
14
- if (err.astroResponse) {
15
- return err.astroResponse;
16
- }
17
- loadError = err;
18
- }
19
- ---
20
-
21
- <!DOCTYPE html>
22
- <html lang={routeContext?.lang.replace('_', '-')}>
23
- {routeContext &&
24
- <Base>
25
- <BaseHead slot="base-head" />
26
- <PageHeader />
27
- <HomeMain />
28
- <PageFooter />
29
- </Base>
30
- }
31
- {loadError && <Fragment set:html={loadError.responseHTML} />}
32
- </html>
@@ -1,23 +0,0 @@
1
- ---
2
- import loadRouteContext, { RouteContext } from '@@sf/ssr-context';
3
- import BaseHead from '@@sf/layouts/BaseHead.astro';
4
- import Base from '~/layouts/Base.astro';
5
- import PageHeader from '~/layouts/PageHeader.astro';
6
- import FallbackMain from '~/main/Fallback.astro';
7
-
8
- let routeContext: RouteContext;
9
- try {
10
- routeContext = await loadRouteContext(Astro);
11
- } catch (err: any) {
12
- return err.astroResponse;
13
- }
14
- ---
15
-
16
- <!DOCTYPE html>
17
- <html lang={routeContext?.lang.replace('_', '-')}>
18
- <Base>
19
- <BaseHead slot="base-head" />
20
- <PageHeader />
21
- <FallbackMain />
22
- </Base>
23
- </html>
@@ -1,10 +0,0 @@
1
- <script is:inline>
2
- window.$firebaseConfig = {
3
- apiKey: "AIzaSyARN-7-wRzEtgEa1j7fpV4x2bLaqcs9Kco",
4
- authDomain: "ecom2monocard.firebaseapp.com",
5
- projectId: "ecom2monocard",
6
- storageBucket: "ecom2monocard.appspot.com",
7
- messagingSenderId: "328381577936",
8
- appId: "1:328381577936:web:bd04a59a1646f988923cd5"
9
- };
10
- </script>
@@ -1,18 +0,0 @@
1
- process.env.STOREFRONT_BASE_DIR = __dirname;
2
-
3
- // eslint-disable-next-line import/no-extraneous-dependencies
4
- const { genTailwindConfig } = require('@cloudcommerce/storefront/config/storefront.tailwind.cjs');
5
-
6
- const themeOptions = {
7
- baseColor: 'gray',
8
- generalIconSets: ['ri'],
9
- iconAliases: {
10
- close: 'close-fill',
11
- 'chevron-right': 'arrow-right-s-line',
12
- },
13
- };
14
-
15
- module.exports = {
16
- ...genTailwindConfig(themeOptions),
17
- themeOptions,
18
- };
@@ -1,12 +0,0 @@
1
- {
2
- "extends": "@cloudcommerce/storefront/tsconfig.json",
3
- "compilerOptions": {
4
- "baseUrl": ".",
5
- "paths": {
6
- "@@i18n": ["./node_modules/@cloudcommerce/i18n/src/pt_br.ts"],
7
- "@@sf/*": ["./node_modules/@cloudcommerce/storefront/src/lib/*"],
8
- "~/*": ["./src/*"],
9
- "content/*": ["./content/*"],
10
- }
11
- }
12
- }
@@ -1,5 +0,0 @@
1
- // eslint-disable-next-line import/no-extraneous-dependencies
2
- const { genUnoCSSConfig } = require('@cloudcommerce/storefront/config/storefront.unocss.cjs');
3
- const tailwindConfig = require('./tailwind.config.cjs');
4
-
5
- export default genUnoCSSConfig(tailwindConfig);
@@ -1,12 +0,0 @@
1
- import '@cloudcommerce/firebase/lib/init';
2
- import config from '@cloudcommerce/firebase/config';
3
- import mergeConfig from './config.json' assert { type: 'json' };
4
-
5
- config.set({
6
- ...mergeConfig,
7
- hello: 'from store',
8
- });
9
-
10
- export * from '@cloudcommerce/modules/firebase';
11
-
12
- export * from '@cloudcommerce/events/firebase';
@@ -1,22 +0,0 @@
1
- {
2
- "name": "monocard-with-apps",
3
- "private": true,
4
- "type": "module",
5
- "scripts": {
6
- "build": "echo '>> Run build from repository root'",
7
- "serve": "firebase emulators:start --only functions",
8
- "shell": "firebase functions:shell",
9
- "start": "npm run shell",
10
- "deploy": "firebase deploy --only functions",
11
- "logs": "firebase functions:log"
12
- },
13
- "engines": {
14
- "node": "18"
15
- },
16
- "main": "index.js",
17
- "dependencies": {
18
- "@cloudcommerce/events": "^0.33.4",
19
- "@cloudcommerce/firebase": "^0.33.4",
20
- "@cloudcommerce/modules": "^0.33.4"
21
- }
22
- }
@@ -1,31 +0,0 @@
1
- {
2
- "name": "@ecomplus-stores/monocard",
3
- "private": true,
4
- "type": "module",
5
- "description": "E-Com Plus Cloud Commerce starter store",
6
- "scripts": {
7
- "dev": "cloudcommerce",
8
- "logs": "cloudcommerce logs",
9
- "serve": "cloudcommerce serve",
10
- "shell": "cloudcommerce shell",
11
- "start": "cloudcommerce start",
12
- "build": "cloudcommerce build",
13
- "predeploy": "cloudcommerce predeploy",
14
- "deploy": "cloudcommerce deploy",
15
- "login": "cloudcommerce login",
16
- "setup": "bash scripts/install.sh && cloudcommerce setup",
17
- "setup:quiet": "cloudcommerce setup --no-deploy --no-commit"
18
- },
19
- "main": "functions/index.js",
20
- "author": "E-Com Club Softwares para E-commerce <ti@e-com.club>",
21
- "license": "Apache 2.0 with Commons Clause",
22
- "bugs": {
23
- "url": "https://github.com/ecomplus/cloud-commerce/issues"
24
- },
25
- "dependencies": {
26
- "@cloudcommerce/cli": "^0.33.4"
27
- },
28
- "devDependencies": {
29
- "@cloudcommerce/eslint": "^0.33.4"
30
- }
31
- }