cloudcommerce 0.26.5 → 0.26.7

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 (231) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/ecomplus-stores/barra-doce/functions/many/package.json +3 -3
  3. package/ecomplus-stores/barra-doce/functions/ssr/package.json +6 -6
  4. package/ecomplus-stores/barra-doce/functions/ssr/src/components/ShopHeader.vue +4 -1
  5. package/ecomplus-stores/barra-doce/functions/with-apps/package.json +3 -3
  6. package/ecomplus-stores/barra-doce/package.json +2 -2
  7. package/ecomplus-stores/barra-doce/scripts/install.sh +12 -2
  8. package/ecomplus-stores/iluminim/scripts/install.sh +12 -2
  9. package/ecomplus-stores/monocard/.firebaserc +1 -1
  10. package/ecomplus-stores/monocard/.github/build-and-deploy +1 -0
  11. package/ecomplus-stores/monocard/.github/workflows/build-and-deploy.yml +1 -0
  12. package/ecomplus-stores/monocard/README.md +11 -82
  13. package/ecomplus-stores/monocard/SETUP.md +129 -0
  14. package/ecomplus-stores/monocard/{README.pt-BR.md → SETUP.pt-BR.md} +39 -12
  15. package/ecomplus-stores/monocard/functions/config.json +1 -1
  16. package/ecomplus-stores/monocard/functions/{passport → many}/index.js +5 -0
  17. package/ecomplus-stores/monocard/functions/{events → many}/package.json +4 -3
  18. package/ecomplus-stores/monocard/functions/ssr/.eslintrc.cjs +1 -1
  19. package/ecomplus-stores/monocard/functions/ssr/content/blog/.gitkeep +0 -0
  20. package/ecomplus-stores/monocard/functions/ssr/content/extra-pages/contato.json +11 -0
  21. package/ecomplus-stores/monocard/functions/ssr/content/extra-pages/terms.json +11 -0
  22. package/ecomplus-stores/monocard/functions/ssr/content/extra-pages/trocas.json +11 -0
  23. package/ecomplus-stores/monocard/functions/ssr/content/layout.json +25 -10
  24. package/ecomplus-stores/monocard/functions/ssr/content/pages/home.json +63 -0
  25. package/ecomplus-stores/monocard/functions/ssr/content/pages/products.json +19 -0
  26. package/ecomplus-stores/monocard/functions/ssr/content/settings.json +22 -2
  27. package/ecomplus-stores/monocard/functions/ssr/package.json +8 -9
  28. package/ecomplus-stores/monocard/functions/ssr/public/admin/.gitkeep +0 -0
  29. package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/ecom-icon.png +0 -0
  30. package/ecomplus-stores/monocard/functions/ssr/src/assets/card.css +99 -0
  31. package/ecomplus-stores/monocard/functions/ssr/src/assets/style.css +74 -0
  32. package/ecomplus-stores/monocard/functions/ssr/src/components/AccountMenu.vue +5 -14
  33. package/ecomplus-stores/monocard/functions/ssr/src/components/Banner.vue +59 -0
  34. package/ecomplus-stores/monocard/functions/ssr/src/components/BannersGrid.astro +25 -0
  35. package/ecomplus-stores/monocard/functions/ssr/src/components/Breadcrumbs.astro +44 -0
  36. package/ecomplus-stores/monocard/functions/ssr/src/components/CartItem.vue +64 -0
  37. package/ecomplus-stores/monocard/functions/ssr/src/components/CartSidebar.vue +66 -0
  38. package/ecomplus-stores/monocard/functions/ssr/src/components/DemoVideo.vue +8 -3
  39. package/ecomplus-stores/monocard/functions/ssr/src/components/DocDescription.astro +30 -0
  40. package/ecomplus-stores/monocard/functions/ssr/src/components/FeatureTabs.vue +2 -2
  41. package/ecomplus-stores/monocard/functions/ssr/src/components/LottiePhoneNFC.vue +12 -9
  42. package/ecomplus-stores/monocard/functions/ssr/src/components/MonocardCustomizer.vue +8 -105
  43. package/ecomplus-stores/monocard/functions/ssr/src/components/Prices.vue +10 -27
  44. package/ecomplus-stores/monocard/functions/ssr/src/components/ProductCard.vue +117 -0
  45. package/ecomplus-stores/monocard/functions/ssr/src/components/ProductShelf.vue +57 -0
  46. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopFooter.vue +123 -0
  47. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopHeader.vue +85 -32
  48. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopHeaderMenu.vue +1 -1
  49. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopSidenav.vue +3 -3
  50. package/ecomplus-stores/monocard/functions/ssr/src/components/ShopSidenavCategory.vue +2 -2
  51. package/ecomplus-stores/monocard/functions/ssr/src/env.d.ts +9 -1
  52. package/ecomplus-stores/monocard/functions/ssr/src/layouts/Base.astro +9 -44
  53. package/ecomplus-stores/monocard/functions/ssr/src/layouts/PageFooter.astro +52 -0
  54. package/ecomplus-stores/monocard/functions/ssr/src/layouts/PageHeader.astro +35 -0
  55. package/ecomplus-stores/monocard/functions/ssr/src/main/Fallback.astro +0 -5
  56. package/ecomplus-stores/monocard/functions/ssr/src/main/Home.astro +6 -12
  57. package/ecomplus-stores/monocard/functions/ssr/src/main/Sections.astro +38 -0
  58. package/ecomplus-stores/monocard/functions/ssr/src/main/Wildcard.astro +4 -18
  59. package/ecomplus-stores/monocard/functions/ssr/src/pages/[...slug].astro +15 -9
  60. package/ecomplus-stores/monocard/functions/ssr/src/pages/comprar/index.astro +19 -9
  61. package/ecomplus-stores/monocard/functions/ssr/src/pages/index.astro +16 -10
  62. package/ecomplus-stores/monocard/functions/ssr/src/pages/~fallback.astro +25 -0
  63. package/ecomplus-stores/monocard/functions/ssr/src/scripts/InlineScripts.astro +6 -6
  64. package/ecomplus-stores/monocard/functions/ssr/tailwind.config.cjs +1 -11
  65. package/ecomplus-stores/monocard/functions/{modules → with-apps}/index.js +3 -0
  66. package/ecomplus-stores/monocard/functions/{modules → with-apps}/package.json +4 -3
  67. package/ecomplus-stores/monocard/package.json +4 -1
  68. package/ecomplus-stores/monocard/scripts/install.sh +12 -2
  69. package/ecomplus-stores/tia-sonia/scripts/install.sh +12 -2
  70. package/package.json +4 -4
  71. package/packages/api/package.json +1 -1
  72. package/packages/apps/affilate-program/package.json +1 -1
  73. package/packages/apps/correios/package.json +1 -1
  74. package/packages/apps/custom-payment/package.json +1 -1
  75. package/packages/apps/custom-shipping/package.json +1 -1
  76. package/packages/apps/datafrete/package.json +1 -1
  77. package/packages/apps/discounts/package.json +1 -1
  78. package/packages/apps/emails/package.json +1 -1
  79. package/packages/apps/fb-conversions/package.json +2 -2
  80. package/packages/apps/flash-courier/package.json +1 -1
  81. package/packages/apps/frenet/package.json +2 -2
  82. package/packages/apps/galaxpay/package.json +1 -1
  83. package/packages/apps/google-analytics/package.json +1 -1
  84. package/packages/apps/jadlog/package.json +1 -1
  85. package/packages/apps/loyalty-points/package.json +1 -1
  86. package/packages/apps/melhor-envio/package.json +1 -1
  87. package/packages/apps/mercadopago/package.json +1 -1
  88. package/packages/apps/pagarme/package.json +2 -2
  89. package/packages/apps/paghiper/package.json +1 -1
  90. package/packages/apps/pix/package.json +1 -1
  91. package/packages/apps/tiny-erp/package.json +1 -1
  92. package/packages/apps/webhooks/package.json +1 -1
  93. package/packages/cli/package.json +2 -2
  94. package/packages/config/package.json +1 -1
  95. package/packages/emails/package.json +1 -1
  96. package/packages/eslint/package.json +3 -3
  97. package/packages/events/package.json +1 -1
  98. package/packages/feeds/package.json +1 -1
  99. package/packages/firebase/package.json +2 -2
  100. package/packages/i18n/package.json +1 -1
  101. package/packages/modules/package.json +1 -1
  102. package/packages/passport/package.json +1 -1
  103. package/packages/ssr/lib/firebase/serve-storefront.js +23 -8
  104. package/packages/ssr/lib/firebase/serve-storefront.js.map +1 -1
  105. package/packages/ssr/package.json +2 -2
  106. package/packages/ssr/src/firebase/serve-storefront.ts +24 -8
  107. package/packages/storefront/dist/client/_astro/{Carousel.9ad2e1dc.js → Carousel.4bf71bce.js} +1 -1
  108. package/packages/storefront/dist/client/_astro/{CartSidebar.a6c6a885.js → CartSidebar.05b12b39.js} +1 -1
  109. package/packages/storefront/dist/client/_astro/{HeroSlider.ee1e6200.js → HeroSlider.fe108a14.js} +1 -1
  110. package/packages/storefront/dist/client/_astro/{PitchBar.6111676e.js → PitchBar.2c821b77.js} +1 -1
  111. package/packages/storefront/dist/client/_astro/{Prices.04ff8fce.js → Prices.78eb0a61.js} +1 -1
  112. package/packages/storefront/dist/client/_astro/{ProductShelf.085721d6.js → ProductShelf.46d8a51c.js} +1 -1
  113. package/packages/storefront/dist/client/_astro/ShopHeader.3694a82b.js +4 -0
  114. package/packages/storefront/dist/client/_astro/_...slug_.a4a7a874.css +1 -0
  115. package/packages/storefront/dist/client/_astro/ecom-icon_CDmhA.png +0 -0
  116. package/packages/storefront/dist/client/_astro/ecom-icon_Z27EX9f.png +0 -0
  117. package/packages/storefront/dist/client/_astro/ecom-icon_Zo1CLq.png +0 -0
  118. package/packages/storefront/dist/client/_astro/{firebase-app.8c541cce.js → firebase-app.3f59f3c7.js} +3 -3
  119. package/packages/storefront/dist/client/_astro/headphone_1Ekzdh.avif +0 -0
  120. package/packages/storefront/dist/client/_astro/headphone_Z1GbHcH.webp +0 -0
  121. package/packages/storefront/dist/client/_astro/{hoisted.85fdcf03.js → hoisted.648beb9d.js} +1 -1
  122. package/packages/storefront/dist/client/_astro/index.fadf28bd.js +1 -0
  123. package/packages/storefront/dist/client/_astro/logo_144owC.webp +0 -0
  124. package/packages/storefront/dist/client/_astro/logo_1ug3XF.png +0 -0
  125. package/packages/storefront/dist/client/_astro/logo_Z1EIN1I.avif +0 -0
  126. package/packages/storefront/dist/client/_astro/{modules-info.e5d77bf3.js → modules-info.df822732.js} +1 -1
  127. package/packages/storefront/dist/client/_astro/passion_1LvKlp.webp +0 -0
  128. package/packages/storefront/dist/client/_astro/passion_2PSWs.avif +0 -0
  129. package/packages/storefront/dist/client/_astro/rect8589_1A8K2Q.webp +0 -0
  130. package/packages/storefront/dist/client/_astro/rect8589_1ND0he.png +0 -0
  131. package/packages/storefront/dist/client/_astro/rect8589_1mIaKd.png +0 -0
  132. package/packages/storefront/dist/client/_astro/rect8589_LhopI.avif +0 -0
  133. package/packages/storefront/dist/client/_astro/rect8589_Z1NFjiR.avif +0 -0
  134. package/packages/storefront/dist/client/_astro/rect8589_Z2a06Gx.png +0 -0
  135. package/packages/storefront/dist/client/_astro/rect8589_Z2nulUU.webp +0 -0
  136. package/packages/storefront/dist/client/_astro/rect8589_ZH7hsH.avif +0 -0
  137. package/packages/storefront/dist/client/_astro/rect8589_ZorpIx.webp +0 -0
  138. package/packages/storefront/dist/client/_astro/rect859_1CcLjM.avif +0 -0
  139. package/packages/storefront/dist/client/_astro/rect859_1IVKep.png +0 -0
  140. package/packages/storefront/dist/client/_astro/rect859_1zkdb4.webp +0 -0
  141. package/packages/storefront/dist/client/_astro/rect859_299fN7.avif +0 -0
  142. package/packages/storefront/dist/client/_astro/rect859_CnIof.png +0 -0
  143. package/packages/storefront/dist/client/_astro/rect859_Z1OtQaE.avif +0 -0
  144. package/packages/storefront/dist/client/_astro/rect859_flB3g.png +0 -0
  145. package/packages/storefront/dist/client/_astro/rect859_rsWaw.webp +0 -0
  146. package/packages/storefront/dist/client/_astro/rect859_sLbkT.webp +0 -0
  147. package/packages/storefront/dist/client/_astro/rect89_1yf5jS.avif +0 -0
  148. package/packages/storefront/dist/client/_astro/rect89_GQBli.webp +0 -0
  149. package/packages/storefront/dist/client/~fallback.html +67 -0
  150. package/packages/storefront/dist/client/~index.html +113 -0
  151. package/packages/storefront/dist/server/chunks/{CartSidebar.41b20543.mjs → CartSidebar.4179ad81.mjs} +4 -12
  152. package/packages/storefront/dist/server/chunks/{SearchModal.5f5e6a15.mjs → SearchModal.146ce2f7.mjs} +4 -11
  153. package/packages/storefront/dist/server/chunks/{endpoint@_@js.11be892a.mjs → _...05c626ea.mjs} +3 -10
  154. package/packages/storefront/dist/server/chunks/{account@_@astro.204fba92.mjs → account@_@astro.5eaddaf8.mjs} +2 -9
  155. package/packages/storefront/dist/server/chunks/{index@_@astro.19e0f502.mjs → index@_@astro.25a343cc.mjs} +3 -10
  156. package/packages/storefront/dist/server/chunks/{index@_@astro.b37a6ac9.mjs → index@_@astro.2d2f2e33.mjs} +3 -10
  157. package/packages/storefront/dist/server/chunks/pages/{_...slug_.astro.36e8882b.mjs → _...slug_.astro.0808946e.mjs} +1836 -450
  158. package/packages/storefront/dist/server/chunks/pages/index.astro.d4145872.mjs +186 -0
  159. package/packages/storefront/dist/server/chunks/pages/{~fallback.astro.ba4c2475.mjs → ~fallback.astro.84d4765b.mjs} +6 -23
  160. package/packages/storefront/dist/server/chunks/{~fallback@_@astro.6bb4c4b4.mjs → ~fallback@_@astro.86d710c3.mjs} +3 -10
  161. package/packages/storefront/dist/server/entry.mjs +7 -14
  162. package/packages/storefront/dist/server/images.dist.csv +30 -0
  163. package/packages/storefront/dist/server/images.src.csv +11 -0
  164. package/packages/storefront/dist/server/renderers.mjs +2 -9
  165. package/packages/storefront/dist/server/static-builds.csv +51 -0
  166. package/packages/storefront/package.json +3 -3
  167. package/packages/storefront/scripts/build-prod.sh +3 -2
  168. package/packages/storefront/server.d.ts +1 -0
  169. package/packages/storefront/src/lib/assets/base.css +8 -0
  170. package/packages/storefront/src/lib/assets/reset.css +11 -2
  171. package/packages/storefront/src/lib/components/ContentClearfix.astro +4 -1
  172. package/packages/storefront/src/lib/components/Drawer.vue +1 -1
  173. package/packages/storefront/src/lib/layouts/BaseBody.astro +3 -1
  174. package/packages/storefront/src/lib/layouts/BaseHead.astro +8 -3
  175. package/packages/storefront/src/lib/layouts/use-page-header.ts +2 -2
  176. package/packages/test-base/package.json +1 -1
  177. package/packages/types/package.json +1 -1
  178. package/pnpm-workspace.yaml +2 -0
  179. package/ecomplus-stores/monocard/functions/core/index.js +0 -9
  180. package/ecomplus-stores/monocard/functions/core/package.json +0 -20
  181. package/ecomplus-stores/monocard/functions/events/index.js +0 -9
  182. package/ecomplus-stores/monocard/functions/passport/package.json +0 -21
  183. package/ecomplus-stores/monocard/functions/ssr/content/blog.json +0 -18
  184. package/ecomplus-stores/monocard/functions/ssr/content/brands.json +0 -24
  185. package/ecomplus-stores/monocard/functions/ssr/content/categories.json +0 -24
  186. package/ecomplus-stores/monocard/functions/ssr/content/collections.json +0 -24
  187. package/ecomplus-stores/monocard/functions/ssr/content/home.json +0 -45
  188. package/ecomplus-stores/monocard/functions/ssr/content/maintenance.json +0 -6
  189. package/ecomplus-stores/monocard/functions/ssr/content/pages/contato.json +0 -6
  190. package/ecomplus-stores/monocard/functions/ssr/content/pages/entrega.json +0 -6
  191. package/ecomplus-stores/monocard/functions/ssr/content/pages/faq.json +0 -6
  192. package/ecomplus-stores/monocard/functions/ssr/content/pages/pagamentos.json +0 -6
  193. package/ecomplus-stores/monocard/functions/ssr/content/pages/privacidade.json +0 -6
  194. package/ecomplus-stores/monocard/functions/ssr/content/pages/sobre-nos.json +0 -6
  195. package/ecomplus-stores/monocard/functions/ssr/content/pages/termos.json +0 -6
  196. package/ecomplus-stores/monocard/functions/ssr/content/pages/trocas.json +0 -6
  197. package/ecomplus-stores/monocard/functions/ssr/content/posts/esta-loja-e-um-pwa.json +0 -9
  198. package/ecomplus-stores/monocard/functions/ssr/content/products.json +0 -32
  199. package/ecomplus-stores/monocard/functions/ssr/content/search.json +0 -8
  200. package/ecomplus-stores/monocard/functions/ssr/content/widgets/analytics.json +0 -11
  201. package/ecomplus-stores/monocard/functions/ssr/content/widgets/compre-confie.json +0 -11
  202. package/ecomplus-stores/monocard/functions/ssr/content/widgets/ebit.json +0 -11
  203. package/ecomplus-stores/monocard/functions/ssr/content/widgets/fb-pixel.json +0 -12
  204. package/ecomplus-stores/monocard/functions/ssr/content/widgets/gmc-ratings.json +0 -12
  205. package/ecomplus-stores/monocard/functions/ssr/content/widgets/minicart.json +0 -6
  206. package/ecomplus-stores/monocard/functions/ssr/content/widgets/offers-notification.json +0 -11
  207. package/ecomplus-stores/monocard/functions/ssr/content/widgets/opinioes-verificadas.json +0 -18
  208. package/ecomplus-stores/monocard/functions/ssr/content/widgets/product-card.json +0 -10
  209. package/ecomplus-stores/monocard/functions/ssr/content/widgets/product.json +0 -13
  210. package/ecomplus-stores/monocard/functions/ssr/content/widgets/search-engine.json +0 -8
  211. package/ecomplus-stores/monocard/functions/ssr/content/widgets/search.json +0 -6
  212. package/ecomplus-stores/monocard/functions/ssr/content/widgets/tag-manager.json +0 -12
  213. package/ecomplus-stores/monocard/functions/ssr/content/widgets/tawkto.json +0 -12
  214. package/ecomplus-stores/monocard/functions/ssr/content/widgets/trustvox.json +0 -15
  215. package/ecomplus-stores/monocard/functions/ssr/content/widgets/user.json +0 -5
  216. package/ecomplus-stores/monocard/functions/ssr/public/admin/config.json +0 -1
  217. package/ecomplus-stores/monocard/functions/ssr/public/assets/cms-preview.css +0 -274
  218. package/ecomplus-stores/monocard/functions/ssr/public/assets/cms.css +0 -114
  219. package/ecomplus-stores/monocard/functions/ssr/public/assets/cvv.png +0 -0
  220. package/ecomplus-stores/monocard/functions/ssr/public/assets/fonts/FavoritPro-Regular.woff2 +0 -0
  221. package/ecomplus-stores/monocard/functions/ssr/public/assets/fonts/MyriadPro-Regular.woff2 +0 -0
  222. package/ecomplus-stores/monocard/functions/ssr/public/assets/ssl-safe.png +0 -0
  223. package/ecomplus-stores/monocard/functions/ssr/src/layouts/Pages.astro +0 -50
  224. package/ecomplus-stores/monocard/functions/ssr/src/pages/fallback.astro +0 -21
  225. package/packages/storefront/dist/client/_astro/ShopHeader.7e485e35.js +0 -4
  226. package/packages/storefront/dist/client/_astro/_...slug_.b693913e.css +0 -1
  227. package/packages/storefront/dist/client/_astro/index.ea57babe.js +0 -1
  228. package/packages/storefront/dist/server/chunks/_...4a2548d2.mjs +0 -35
  229. package/packages/storefront/dist/server/chunks/pages/endpoint.js.f7a896a1.mjs +0 -119
  230. package/packages/storefront/dist/server/chunks/pages/index.astro.3145bd93.mjs +0 -1649
  231. /package/ecomplus-stores/monocard/functions/ssr/src/components/{FeatureTabs.astro → FeaturesSection.astro} +0 -0
@@ -22,16 +22,31 @@
22
22
  },
23
23
  "alphabetical_sort_submenu": false
24
24
  },
25
- "service_links": [
26
- {
27
- "title": "Edite seu Monocard",
28
- "href": "https://mono.direct/login"
29
- },
30
- {
31
- "title": "Fale conosco",
32
- "href": "https://ajuda.monocard.com.br/"
33
- }
34
- ],
35
25
  "footer": {
26
+ "pages_list": {
27
+ "enabled": true,
28
+ "title": "",
29
+ "links": []
30
+ },
31
+ "stamps": [
32
+ {
33
+ "img": "",
34
+ "alt": "Troca garantida",
35
+ "icon": "exchange",
36
+ "href": "/p/trocas"
37
+ },
38
+ {
39
+ "img": "",
40
+ "alt": "Google Navegação Segura",
41
+ "icon": "check",
42
+ "href": "https://transparencyreport.google.com/safe-browsing/search?url={domain}"
43
+ },
44
+ {
45
+ "img": "",
46
+ "alt": "Conexão SSL",
47
+ "icon": "lock",
48
+ "href": ""
49
+ }
50
+ ]
36
51
  }
37
52
  }
@@ -0,0 +1,63 @@
1
+ {
2
+ "meta_title": "",
3
+ "meta_description": "",
4
+ "hero": {
5
+ "autoplay": 9000,
6
+ "slides": [
7
+ {
8
+ "start": "",
9
+ "end": "",
10
+ "img": "/img/uploads/rect89.webp",
11
+ "alt": "Headset banner",
12
+ "mobile_img": "/img/uploads/headphone.webp",
13
+ "href": "/headset",
14
+ "title": "20% off on first purchase",
15
+ "subtitle": "At demoStore you can shop the best tech of 2023. Enjoy and get 10% off on your first purchase!",
16
+ "button_link": "/",
17
+ "button_text": "See"
18
+ },
19
+ {
20
+ "start": "",
21
+ "end": "",
22
+ "img": "/img/uploads/rect859.png",
23
+ "alt": "",
24
+ "mobile_img": "",
25
+ "href": "",
26
+ "title": "",
27
+ "subtitle": "",
28
+ "button_link": "",
29
+ "button_text": ""
30
+ }
31
+ ]
32
+ },
33
+ "sections": [
34
+ {
35
+ "type": "product-shelf",
36
+ "collection_id": null,
37
+ "sort": "-price_discount",
38
+ "title": "",
39
+ "headless": false,
40
+ "shuffle": false,
41
+ "limit": 12,
42
+ "page": 1
43
+ },
44
+ {
45
+ "type": "banners-grid",
46
+ "banners": [
47
+ {
48
+ "img": "/img/uploads/rect8589.png",
49
+ "href": "/banner-1"
50
+ },
51
+ {
52
+ "img": "/img/uploads/passion.webp",
53
+ "href": "/banner-2"
54
+ },
55
+ {
56
+ "img": "/img/uploads/rect89.webp",
57
+ "href": "/banner-3",
58
+ "mobile_img": "/img/uploads/headphone.webp"
59
+ }
60
+ ]
61
+ }
62
+ ]
63
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "sections": [
3
+ {
4
+ "type": "breadcrumbs"
5
+ },
6
+ {
7
+ "type": "product-details"
8
+ },
9
+ {
10
+ "type": "related-products"
11
+ },
12
+ {
13
+ "type": "doc-description"
14
+ },
15
+ {
16
+ "type": "product-specifications"
17
+ }
18
+ ]
19
+ }
@@ -1,9 +1,9 @@
1
1
  {
2
- "domain": "ecom2-monocard.web.app",
2
+ "domain": "ecom2monocard.web.app",
3
3
  "name": "Monocard",
4
4
  "description": "Monocard - O seu último cartão de visitas",
5
5
  "logo": "/img/uploads/logo.webp",
6
- "icon": "/img/icon.png",
6
+ "icon": "/img/uploads/ecom-icon.png",
7
7
  "primary_color": "#92F7B6",
8
8
  "email": "",
9
9
  "phone": "",
@@ -21,6 +21,26 @@
21
21
  "youtube": "https://www.youtube.com/channel/UCBlIxK5JAub0E1EX_qHdzmA",
22
22
  "tiktok": "",
23
23
  "pinterest": "",
24
+ "threads": "",
25
+ "service_links": [
26
+ {
27
+ "title": "Edite seu Monocard",
28
+ "href": "https://mono.direct/login"
29
+ },
30
+ {
31
+ "title": "Fale conosco",
32
+ "href": "https://ajuda.monocard.com.br/"
33
+ }
34
+ ],
35
+ "payment_methods": [
36
+ "pix",
37
+ "visa",
38
+ "mastercard",
39
+ "elo",
40
+ "amex",
41
+ "hipercard",
42
+ "boleto"
43
+ ],
24
44
  "metafields": {
25
45
  "support_url": "https://ajuda.monocard.com.br/",
26
46
  "business_lp_url": "https://empresas.monocard.com.br/",
@@ -17,19 +17,18 @@
17
17
  },
18
18
  "main": "index.js",
19
19
  "dependencies": {
20
- "@cloudcommerce/api": "^0.10.0",
21
- "@cloudcommerce/firebase": "^0.10.0",
22
- "@cloudcommerce/ssr": "^0.10.0",
20
+ "@cloudcommerce/api": "^0.26.6",
21
+ "@cloudcommerce/firebase": "^0.26.6",
22
+ "@cloudcommerce/ssr": "^0.26.6",
23
23
  "@vueuse/motion": "2.0.0-beta.22"
24
24
  },
25
25
  "devDependencies": {
26
- "@cloudcommerce/i18n": "^0.10.0",
27
- "@cloudcommerce/storefront": "^0.10.0",
28
- "@cloudcommerce/types": "^0.10.0",
29
- "@fontsource/inter": "^4.5.15",
26
+ "@cloudcommerce/i18n": "^0.26.6",
27
+ "@cloudcommerce/storefront": "^0.26.6",
28
+ "@cloudcommerce/types": "^0.26.6",
29
+ "@fontsource-variable/inter": "^5.0.8",
30
30
  "@iconify-json/ri": "^1.1.8",
31
31
  "@iconify-json/wpf": "^1.1.4",
32
- "lottie-web": "^5.11.0",
33
- "lozad": "^1.16.0"
32
+ "lottie-web": "^5.12.2"
34
33
  }
35
34
  }
@@ -0,0 +1,99 @@
1
+ .card {
2
+ color: var(--color);
3
+ width: 320px;
4
+ height: 190px;
5
+ -webkit-perspective: 600px;
6
+ -moz-perspective: 600px;
7
+ perspective:600px;
8
+ }
9
+ .card__part {
10
+ box-shadow: 1px 1px #aaa3a3;
11
+ top: 0;
12
+ position: absolute;
13
+ z-index: 1000;
14
+ left: 0;
15
+ display: inline-block;
16
+ width: 320px;
17
+ height: 190px;
18
+ background: var(--background-color);
19
+ border-radius: 8px;
20
+ -webkit-transition: all .5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
21
+ -moz-transition: all .5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
22
+ -ms-transition: all .5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
23
+ -o-transition: all .5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
24
+ transition: all .5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
25
+ transform-style: preserve-3d;
26
+ -webkit-transform-style: preserve-3d;
27
+ -moz-transform-style: preserve-3d;
28
+ backface-visibility: hidden;
29
+ -webkit-backface-visibility: hidden;
30
+ -moz-backface-visibility: hidden;
31
+ }
32
+ .card__front {
33
+ padding: 18px;
34
+ transform: rotateY(0);
35
+ -webkit-transform: rotateY(0);
36
+ -moz-transform: rotateY(0);
37
+ }
38
+ .card__back {
39
+ display: flex;
40
+ align-items: center;
41
+ justify-content: space-around;
42
+ transform: rotateY(-180deg);
43
+ -webkit-transform: rotateY(-180deg);
44
+ -moz-transform: rotateY(-180deg);
45
+ }
46
+ .card__back img {
47
+ max-width: 256px;
48
+ max-height: 154px;
49
+ }
50
+ .card__logo {
51
+ height: 16px;
52
+ }
53
+ .card__front-logo{
54
+ position: absolute;
55
+ top: 18px;
56
+ right: 18px;
57
+ }
58
+ .card__square {
59
+ border-radius: 5px;
60
+ height: 30px;
61
+ }
62
+ .card__space-75 {
63
+ margin-top: 100px;
64
+ width: 75%;
65
+ float: left;
66
+ }
67
+ .card__space-25 {
68
+ margin-top: 30px;
69
+ width: 25%;
70
+ float: right;
71
+ text-align: right;
72
+ }
73
+ .card__label {
74
+ font-size: 10px;
75
+ text-transform: uppercase;
76
+ color: rgba(255,255,255,0.8);
77
+ letter-spacing: 1px;
78
+ }
79
+ .card__info {
80
+ margin-bottom: 0;
81
+ margin-top: 5px;
82
+ font-size: 16px;
83
+ line-height: 18px;
84
+ color: var(--color);
85
+ letter-spacing: 1px;
86
+ text-transform: uppercase;
87
+ }
88
+ .card:not(.card--no-back):hover .card__front,
89
+ .card--show-back .card__front {
90
+ transform: rotateY(180deg);
91
+ -webkit-transform: rotateY(180deg);
92
+ -moz-transform: rotateY(180deg);
93
+ }
94
+ .card:not(.card--no-back):hover .card__back,
95
+ .card--show-back .card__back {
96
+ transform: rotateY(0deg);
97
+ -webkit-transform: rotateY(0deg);
98
+ -moz-transform: rotateY(0deg);
99
+ }
@@ -0,0 +1,74 @@
1
+ :root {
2
+ --custom-font-sans: "Inter Variable";
3
+ --c-on-primary: rgb(0, 0, 0);
4
+ --un-prose-links: rgb(var(--rgb-primary-700));
5
+ }
6
+
7
+ html {
8
+ scroll-behavior: smooth;
9
+ }
10
+ body {
11
+ overflow-x: hidden;
12
+ }
13
+ a, button, button > * {
14
+ transition: background-color var(--transition),
15
+ color var(--transition), border-color var(--transition),
16
+ opacity var(--transition), transform var(--transition-fast);
17
+ }
18
+
19
+ .ui-link {
20
+ @apply not-prose font-medium text-primary underline underline-offset-4
21
+ decoration-primary/70 hover:text-primary-bold active:text-primary-subtle;
22
+ }
23
+
24
+ [class*=ui-btn] {
25
+ @apply not-prose inline-block text-base font-medium px-4 py-2 rounded
26
+ border-2 border-transparent focus:ring-1 focus:ring-offset-1 active:ring-2;
27
+ }
28
+ .ui-btn-sm {
29
+ @apply text-sm px-3 py-1.5 border-1;
30
+ }
31
+ .ui-btn-lg {
32
+ @apply font-bold px-6 py-2.5 active:ring-3;
33
+ }
34
+ .ui-btn-primary {
35
+ @apply primary border-primary hover:primary-bold ring-primary/30;
36
+ }
37
+ .ui-btn-secondary {
38
+ @apply bg-secondary-100/50 text-secondary border-secondary
39
+ hover:secondary ring-secondary/30;
40
+ }
41
+ .ui-btn-contrast {
42
+ @apply bg-white text-primary hover:bg-primary-100 ring-white/30;
43
+ }
44
+
45
+ .ui-text-brand, .ui-title {
46
+ @apply font-brand font-black italic;
47
+ }
48
+ .ui-title {
49
+ @apply not-prose text-3xl xl:text-5xl;
50
+ }
51
+
52
+ [class*=ui-badge] {
53
+ @apply text-center px-2.5 py-0.5 rounded-md font-semibold
54
+ inline-block bg-secondary-200 text-secondary-900;
55
+ }
56
+ [class*=ui-badge-pill] {
57
+ @apply py-0 rounded-full;
58
+ }
59
+ .ui-badge-pill-sm {
60
+ @apply text-xs min-w-[1rem] px-0.5;
61
+ }
62
+ .ui-badge-pill-lg {
63
+ @apply text-lg min-w-[1.75rem] px-2;
64
+ }
65
+
66
+ [class*=ui-section] {
67
+ @apply container 2xl:max-w-7xl mx-auto px-4 sm:px-2 my-6 md:my-8;
68
+ }
69
+ .ui-section {
70
+ @apply sm:px-2 my-6 md:my-8;
71
+ }
72
+ .ui-section-slim {
73
+ @apply my-3;
74
+ }
@@ -7,7 +7,7 @@
7
7
  <div v-if="open">
8
8
  <span v-once>{{ initializeFirebaseAuth() }}</span>
9
9
  </div>
10
- <MenuButton class="outline-none">
10
+ <MenuButton class="outline-none" :aria-label="$t.i19myAccount">
11
11
  <slot name="button" v-bind="{ open }" />
12
12
  </MenuButton>
13
13
  <Fade>
@@ -16,7 +16,7 @@
16
16
  divide-y divide-base-100 focus:outline-none">
17
17
  <div class="p-3 text-base-600">
18
18
  {{ `${$t.i19hello} ${customerName || $t.i19visitor}` }}
19
- <AccountLink class="block py-1.5 rounded primary hover:primary-bold my-1">
19
+ <AccountLink role="button" class="ui-btn-sm ui-btn-primary block my-1">
20
20
  {{ $t.i19accessMyAccount }}
21
21
  </AccountLink>
22
22
  <AccountLink
@@ -40,7 +40,7 @@
40
40
  <MenuItem
41
41
  as="li"
42
42
  v-slot="{ active }"
43
- v-for="({ title, href }, i) in serviceLinks"
43
+ v-for="({ title, href }, i) in $settings.service_links"
44
44
  :key="`s-${i}`"
45
45
  >
46
46
  <ALink
@@ -67,7 +67,7 @@
67
67
  <MenuItem v-if="isLogged" as="li">
68
68
  <button @click="logout" class="p-2 text-right text-base-800">
69
69
  <span class="text-base-600">{{ $t.i19logout }}</span>
70
- <i class="i-logout text-lg ml-1"></i>
70
+ <i class="i-logout-circle-r-line text-lg ml-1"></i>
71
71
  </button>
72
72
  </MenuItem>
73
73
  </ul>
@@ -83,7 +83,7 @@ import {
83
83
  MenuItems,
84
84
  MenuItem,
85
85
  } from '@headlessui/vue';
86
- import { socialNetworks } from '@@sf/server-data';
86
+ import { socialNetworks } from '@@sf/sf-lib';
87
87
  import {
88
88
  customerName,
89
89
  initializeFirebaseAuth,
@@ -92,13 +92,4 @@ import {
92
92
  } from '@@sf/state/customer-session';
93
93
  import AccountLink from '@@sf/components/AccountLink.vue';
94
94
  import SocialNetworkLink from '@@sf/components/SocialNetworkLink.vue';
95
-
96
- export interface Props {
97
- serviceLinks?: Array<{
98
- title: string;
99
- href: string;
100
- }>;
101
- }
102
-
103
- defineProps<Props>();
104
95
  </script>
@@ -0,0 +1,59 @@
1
+ <template>
2
+ <div
3
+ class="mx-auto overflow-x-hidden"
4
+ :class="hasHeader ? 'grid grid-cols-1 sm:grid-cols-2 items-center' : null"
5
+ >
6
+ <ALink
7
+ :href="href"
8
+ :class="hasHeader
9
+ ? 'sm:order-last [&_img]:max-w-full sm:[&_img]:max-w-none'
10
+ + ' [&_img]:aspect-video sm:[&_img]:aspect-[2.5] [&_img]:object-cover'
11
+ : '[&_img]:max-w-full'"
12
+ >
13
+ <slot name="picture" />
14
+ </ALink>
15
+ <div
16
+ v-if="hasHeader"
17
+ class="p-12 xl:ps-32 mb-3 sm:mb-0"
18
+ >
19
+ <Component
20
+ v-if="parsedTitle"
21
+ :is="headingTag"
22
+ class="ui-title mt-1"
23
+ >
24
+ {{ parsedTitle }}
25
+ </Component>
26
+ <p v-if="parsedSubtitle" class="text-lg mt-4 md:mt-6">
27
+ {{ parsedSubtitle }}
28
+ </p>
29
+ <ALink
30
+ v-if="parsedButtonText"
31
+ :href="buttonLink"
32
+ class="ui-btn-lg ui-btn-contrast min-w-[150px] mt-7 md:mt-10"
33
+ >
34
+ {{ parsedButtonText }}
35
+ </ALink>
36
+ </div>
37
+ </div>
38
+ </template>
39
+
40
+ <script setup lang="ts">
41
+ import {
42
+ type Props as UseBannerProps,
43
+ useBanner,
44
+ } from '@@sf/composables/use-banner';
45
+
46
+ export type Props = UseBannerProps & {
47
+ headingTag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
48
+ }
49
+
50
+ const props = withDefaults(defineProps<Props>(), {
51
+ headingTag: 'h3',
52
+ });
53
+ const {
54
+ hasHeader,
55
+ parsedTitle,
56
+ parsedSubtitle,
57
+ parsedButtonText,
58
+ } = useBanner(props);
59
+ </script>
@@ -0,0 +1,25 @@
1
+ ---
2
+ import type { Props as UseBannerProps } from '@@sf/composables/use-banner';
3
+ import BannerPictures from '@@sf/components/BannerPictures.astro';
4
+ import Banner from '~/components/Banner.vue';
5
+
6
+ export type Props = {
7
+ title?: string;
8
+ titleLink?: string;
9
+ banners: UseBannerProps[];
10
+ }
11
+
12
+ const { banners } = Astro.props;
13
+ ---
14
+
15
+ <section class="ui-section">
16
+ <ul class="flex flex-wrap lg:flex-nowrap gap-4">
17
+ {banners.map((banner) => (
18
+ <li class="lg:flex-1 [&_img]:w-full [&_img]:object-cover">
19
+ <Banner {...banner}>
20
+ <BannerPictures {...banner} slot="picture" />
21
+ </Banner>
22
+ </li>
23
+ ))}
24
+ </ul>
25
+ </section>
@@ -0,0 +1,44 @@
1
+ ---
2
+ import {
3
+ type Props as UseBreadcrumbsProps,
4
+ useBreadcrumbs,
5
+ } from '@@sf/composables/use-breadcrumbs';
6
+
7
+ export interface Props extends UseBreadcrumbsProps {}
8
+
9
+ const { breadcrumbs, inlineJSONLd } = await useBreadcrumbs(Astro.props);
10
+ ---
11
+
12
+ {breadcrumbs.length > 0 &&
13
+ <section class="ui-section-slim">
14
+ <nav aria-label="Breadcrumb" class="w-full overflow-hidden text-lg md:text-sm">
15
+ <ol class="flex items-center gap-1 text-base-600">
16
+ <li>
17
+ <a href="/" class="hover:text-primary">
18
+ <span class="sr-only"> Home </span>
19
+ <i class="i-home"></i>
20
+ </a>
21
+ </li>
22
+ {breadcrumbs.map(({ name, link }, i) =>
23
+ <>
24
+ {i + 1 < breadcrumbs.length
25
+ ? <li class="text-base-300">
26
+ <i class="i-chevron-right"></i>
27
+ </li>
28
+ <li class="whitespace-nowrap">
29
+ <a href={link} class="hover:text-primary">{name}</a>
30
+ </li>
31
+ : <li class="hidden lg:block text-base-300">
32
+ <i class="i-chevron-right"></i>
33
+ </li>
34
+ <li class="hidden lg:block whitespace-nowrap overflow-hidden text-ellipsis">
35
+ <span class="text-base-500">{name}</span>
36
+ </li>
37
+ }
38
+ </>
39
+ )}
40
+ </ol>
41
+ </nav>
42
+ {inlineJSONLd && <script type="application/ld+json" set:html={inlineJSONLd} />}
43
+ </section>
44
+ }
@@ -0,0 +1,64 @@
1
+ <template>
2
+ <article class="relative bg-white shadow-sm">
3
+ <ALink :href="link" class="flex items-center gap-5 p-4 group">
4
+ <AImg
5
+ v-if="image"
6
+ :picture="image"
7
+ :alt="title"
8
+ class="w-20 h-20 object-cover"
9
+ />
10
+ <p class="py-2 flex-auto text-sm text-base-700
11
+ group-hover:text-base-900 group-hover:underline">
12
+ {{ title }}
13
+ </p>
14
+ </ALink>
15
+ <button
16
+ v-if="cartItem._id"
17
+ @click.stop="removeCartItem(cartItem._id)"
18
+ class="absolute top-0 right-0 p-2 opacity-70 hover:opacity-100"
19
+ :aria-label="$t.i19remove"
20
+ >
21
+ <span class="w-5 h-5 text-sm leading-none flex flex-col justify-center
22
+ rounded-full border-3 text-danger-800 border-danger-700/30">
23
+ <i class="i-close my-0 mx-auto"></i>
24
+ </span>
25
+ </button>
26
+ <div class="flex justify-between items-center border-t-2 border-base-100">
27
+ <div class="border-r-2 border-base-100">
28
+ <QuantitySelector
29
+ v-model="cartItem.quantity"
30
+ :min="cartItem.min_quantity"
31
+ :max="cartItem.max_quantity"
32
+ />
33
+ </div>
34
+ <Prices
35
+ :base-price="cartItem.base_price"
36
+ :price="finalPrice"
37
+ :has-cashback="false"
38
+ :has-price-options="false"
39
+ class="px-4 py-2.5 text-[95%] text-right"
40
+ />
41
+ </div>
42
+ </article>
43
+ </template>
44
+
45
+ <script setup lang="ts">
46
+ import { removeCartItem } from '@@sf/state/shopping-cart';
47
+ import {
48
+ type Props as UseCartItemProps,
49
+ useCartItem,
50
+ } from '@@sf/composables/use-cart-item';
51
+ import QuantitySelector from '@@sf/components/QuantitySelector.vue';
52
+ import Prices from '~/components/Prices.vue';
53
+
54
+ export type Props = UseCartItemProps;
55
+
56
+ const props = defineProps<Props>();
57
+ const {
58
+ cartItem,
59
+ title,
60
+ link,
61
+ image,
62
+ finalPrice,
63
+ } = useCartItem(props);
64
+ </script>