cloudcommerce 0.6.11 → 0.6.13
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.
- package/CHANGELOG.md +4 -0
- package/ecomplus-stores/monocard/functions/core/package.json +1 -1
- package/ecomplus-stores/monocard/functions/events/package.json +2 -2
- package/ecomplus-stores/monocard/functions/modules/package.json +2 -2
- package/ecomplus-stores/monocard/functions/passport/package.json +2 -2
- package/ecomplus-stores/monocard/functions/ssr/package.json +6 -6
- package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/devices.jpg +0 -0
- package/ecomplus-stores/monocard/functions/ssr/public/img/uploads/edit-suit.jpg +0 -0
- package/ecomplus-stores/monocard/functions/ssr/src/components/ShopHeaderMenu.vue +1 -1
- package/ecomplus-stores/monocard/functions/ssr/src/components/UsageSteps.astro +21 -0
- package/ecomplus-stores/monocard/functions/ssr/src/components/UsageSteps.vue +155 -0
- package/ecomplus-stores/monocard/functions/ssr/src/layouts/Pages.astro +3 -3
- package/ecomplus-stores/monocard/functions/ssr/src/main/Home.astro +19 -3
- package/ecomplus-stores/monocard/package.json +1 -1
- package/package.json +1 -1
- package/packages/api/package.json +1 -1
- package/packages/apps/correios/package.json +1 -1
- package/packages/apps/custom-payment/package.json +1 -1
- package/packages/apps/custom-shipping/package.json +1 -1
- package/packages/apps/datafrete/package.json +1 -1
- package/packages/apps/discounts/package.json +1 -1
- package/packages/apps/emails/package.json +1 -1
- package/packages/apps/fb-conversions/package.json +1 -1
- package/packages/apps/frenet/package.json +1 -1
- package/packages/apps/galaxpay/package.json +1 -1
- package/packages/apps/google-analytics/package.json +1 -1
- package/packages/apps/infinitepay/package.json +1 -1
- package/packages/apps/jadlog/package.json +1 -1
- package/packages/apps/loyalty-points/package.json +1 -1
- package/packages/apps/melhor-envio/package.json +1 -1
- package/packages/apps/mercadopago/package.json +1 -1
- package/packages/apps/pagarme/package.json +1 -1
- package/packages/apps/paghiper/package.json +1 -1
- package/packages/apps/pix/package.json +1 -1
- package/packages/apps/tiny-erp/package.json +1 -1
- package/packages/apps/webhooks/package.json +1 -1
- package/packages/cli/package.json +1 -1
- package/packages/config/package.json +1 -1
- package/packages/emails/package.json +1 -1
- package/packages/events/package.json +1 -1
- package/packages/firebase/package.json +1 -1
- package/packages/i18n/package.json +1 -1
- package/packages/modules/package.json +1 -1
- package/packages/passport/package.json +1 -1
- package/packages/ssr/package.json +1 -2
- package/packages/storefront/astro.config.mjs +2 -4
- package/packages/storefront/dist/client/sw.js +1 -1
- package/packages/storefront/dist/server/chunks/avif/avif_node_dec.wasm +0 -0
- package/packages/storefront/dist/server/chunks/avif/avif_node_enc.wasm +0 -0
- package/packages/storefront/dist/server/chunks/image-pool.78b6d784.mjs +10645 -0
- package/packages/storefront/dist/server/chunks/mozjpeg/mozjpeg_node_dec.wasm +0 -0
- package/packages/storefront/dist/server/chunks/mozjpeg/mozjpeg_node_enc.wasm +0 -0
- package/packages/storefront/dist/server/chunks/pages/{all.726ca7f4.mjs → all.f49a350f.mjs} +172 -58
- package/packages/storefront/dist/server/chunks/png/squoosh_oxipng_bg.wasm +0 -0
- package/packages/storefront/dist/server/chunks/png/squoosh_png_bg.wasm +0 -0
- package/packages/storefront/dist/server/chunks/resize/squoosh_resize_bg.wasm +0 -0
- package/packages/storefront/dist/server/chunks/rotate/rotate.wasm +0 -0
- package/packages/storefront/dist/server/chunks/webp/webp_node_dec.wasm +0 -0
- package/packages/storefront/dist/server/chunks/webp/webp_node_enc.wasm +0 -0
- package/packages/storefront/dist/server/entry.mjs +5 -6
- package/packages/storefront/package.json +1 -2
- package/packages/types/package.json +1 -1
- package/ecomplus-stores/monocard/functions/ssr/src/components/MotionFade.vue +0 -17
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [0.6.13](https://github.com/ecomplus/cloud-commerce/compare/v0.6.12...v0.6.13) (2023-03-02)
|
|
6
|
+
|
|
7
|
+
### [0.6.12](https://github.com/ecomplus/cloud-commerce/compare/v0.6.11...v0.6.12) (2023-03-02)
|
|
8
|
+
|
|
5
9
|
### [0.6.11](https://github.com/ecomplus/cloud-commerce/compare/v0.6.10...v0.6.11) (2023-03-01)
|
|
6
10
|
|
|
7
11
|
|
|
@@ -19,15 +19,15 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@astrojs/image": "^0.15.1",
|
|
21
21
|
"@astrojs/node": "^5.0.4",
|
|
22
|
-
"@cloudcommerce/api": "^0.6.
|
|
23
|
-
"@cloudcommerce/firebase": "^0.6.
|
|
24
|
-
"@cloudcommerce/ssr": "^0.6.
|
|
22
|
+
"@cloudcommerce/api": "^0.6.11",
|
|
23
|
+
"@cloudcommerce/firebase": "^0.6.11",
|
|
24
|
+
"@cloudcommerce/ssr": "^0.6.11",
|
|
25
25
|
"@vueuse/motion": "2.0.0-beta.22"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@cloudcommerce/i18n": "^0.6.
|
|
29
|
-
"@cloudcommerce/storefront": "^0.6.
|
|
30
|
-
"@cloudcommerce/types": "^0.6.
|
|
28
|
+
"@cloudcommerce/i18n": "^0.6.11",
|
|
29
|
+
"@cloudcommerce/storefront": "^0.6.11",
|
|
30
|
+
"@cloudcommerce/types": "^0.6.11",
|
|
31
31
|
"@fontsource/inter": "^4.5.15",
|
|
32
32
|
"@iconify-json/ri": "^1.1.5",
|
|
33
33
|
"@iconify-json/wpf": "^1.1.4",
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
import Picture from '@@sf/ssr/Picture.astro';
|
|
3
|
+
import UsageSteps from '~/components/UsageSteps.vue';
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<UsageSteps client:visible>
|
|
7
|
+
<Picture
|
|
8
|
+
slot="picture-devices"
|
|
9
|
+
src={'/img/uploads/devices.jpg'}
|
|
10
|
+
alt="Produtos Monocard: clássico, personalizado e Monodot."
|
|
11
|
+
widths={[400, 600]}
|
|
12
|
+
sizes="(max-width: 500px) 200px, 300px"
|
|
13
|
+
/>
|
|
14
|
+
<Picture
|
|
15
|
+
slot="picture-edit"
|
|
16
|
+
src={'/img/uploads/edit-suit.jpg'}
|
|
17
|
+
alt="Configure seu perfil e Monolink com facilidade."
|
|
18
|
+
widths={[400, 600]}
|
|
19
|
+
sizes="(max-width: 500px) 200px, 300px"
|
|
20
|
+
/>
|
|
21
|
+
</UsageSteps>
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<article class="container px-8 my-4 mx-auto text-center">
|
|
3
|
+
<h3
|
|
4
|
+
ref="title"
|
|
5
|
+
class="text-xl lg:text-2xl font-semibold text-base-700
|
|
6
|
+
inline-block lg:text-left"
|
|
7
|
+
:style="{ minWidth: titleMinWidth, minHeight: titleMinHeight }"
|
|
8
|
+
>
|
|
9
|
+
<span class="block lg:inline">
|
|
10
|
+
Uma ferramenta poderosa para
|
|
11
|
+
</span>
|
|
12
|
+
<Fade>
|
|
13
|
+
<span
|
|
14
|
+
v-if="copyKeyword"
|
|
15
|
+
class="text-2xl font-bold text-transparent bg-clip-text bg-gradient-to-tr
|
|
16
|
+
from-secondary-600 to-secondary-900"
|
|
17
|
+
>
|
|
18
|
+
{{ copyKeyword }}
|
|
19
|
+
</span>
|
|
20
|
+
</Fade>
|
|
21
|
+
</h3>
|
|
22
|
+
<TabGroup as="div" class="max-w-3xl mx-auto">
|
|
23
|
+
<TabList class="flex space-x-1 rounded-md bg-base-100/70 p-1 mt-8">
|
|
24
|
+
<Tab
|
|
25
|
+
as="template"
|
|
26
|
+
v-for="([step, icon], i) in [
|
|
27
|
+
['Escolha o seu Mono', 'i-qr-code-line'],
|
|
28
|
+
['Configure seu perfil', 'i-paint-brush-fill'],
|
|
29
|
+
['Compartilhe onde quiser', 'i-share-forward-2-fill'],
|
|
30
|
+
]"
|
|
31
|
+
:key="i"
|
|
32
|
+
v-slot="{ selected }"
|
|
33
|
+
>
|
|
34
|
+
<button
|
|
35
|
+
class="w-full rounded-sm p-2.5 text-sm md:text-base
|
|
36
|
+
font-medium leading-5 text-base-900
|
|
37
|
+
ring-primary-100 ring-opacity-60 ring-offset-2 ring-offset-primary-400
|
|
38
|
+
focus:outline-none focus:ring-2 block relative"
|
|
39
|
+
:class="selected ? 'bg-primary-100/30 text-black' : null"
|
|
40
|
+
>
|
|
41
|
+
<i
|
|
42
|
+
:class="[
|
|
43
|
+
icon,
|
|
44
|
+
selected ? 'bg-primary-400/70' : 'bg-base-300/70 md:bg-base-400/70',
|
|
45
|
+
]"
|
|
46
|
+
class="w-8 h-8 absolute left-2 top-1/2 -mt-4"
|
|
47
|
+
></i>
|
|
48
|
+
<span class="z-10 relative">{{ step }}</span>
|
|
49
|
+
</button>
|
|
50
|
+
</Tab>
|
|
51
|
+
</TabList>
|
|
52
|
+
<TabPanels class="text-left w-64 mx-auto sm:w-auto sm:px-5 mt-4">
|
|
53
|
+
<TabPanel
|
|
54
|
+
class="flex flex-wrap md:flex-nowrap items-start justify-between"
|
|
55
|
+
v-motion-fade-visible
|
|
56
|
+
>
|
|
57
|
+
<div class="md:order-last rounded-xl overflow-hidden shadow-lg
|
|
58
|
+
mt-4 md:mt-5 mb-2 md:mb-0 mx-auto md:mx-0 h-44 md:h-auto">
|
|
59
|
+
<slot name="picture-devices" />
|
|
60
|
+
</div>
|
|
61
|
+
<div class="md:basis-1/2 prose">
|
|
62
|
+
<h4>Cartão clássico, personalizado ou dot</h4>
|
|
63
|
+
<p>
|
|
64
|
+
No momento da compra você decide o dispositivo que
|
|
65
|
+
mais combina com você ou sua empresa.
|
|
66
|
+
Opte pelo Monocard clássico, personalizado com seu logo ou Monodot.
|
|
67
|
+
</p>
|
|
68
|
+
<p class="bg-base-200 px-4 py-2 rounded">
|
|
69
|
+
<a :href="`/${$settings.metafields.monocardSlug}`">Monocard</a>
|
|
70
|
+
conecta por aproximação com
|
|
71
|
+
<span class="inline-block">NFC <i class="i-signal-tower-fill mr-1"></i></span>,
|
|
72
|
+
escaneamento de
|
|
73
|
+
<span class="inline-block">QR Code <i class="i-qr-code-line"></i></span>
|
|
74
|
+
e Monolink (URL do seu perfil).
|
|
75
|
+
</p>
|
|
76
|
+
<p class="bg-base-200/70 px-4 py-2 rounded">
|
|
77
|
+
<a :href="`/${$settings.metafields.monodotSlug}`">Monodot</a>
|
|
78
|
+
pode ser colado no smartphone e conecta por
|
|
79
|
+
<span class="inline-block">QR Code <i class="i-qr-code-line"></i></span>
|
|
80
|
+
e Monolink.
|
|
81
|
+
</p>
|
|
82
|
+
</div>
|
|
83
|
+
</TabPanel>
|
|
84
|
+
<TabPanel
|
|
85
|
+
class="flex flex-wrap md:flex-nowrap items-start justify-between"
|
|
86
|
+
v-motion-fade-visible
|
|
87
|
+
>
|
|
88
|
+
<div class="md:order-last rounded-xl overflow-hidden shadow-lg
|
|
89
|
+
mt-4 md:mt-5 mb-2 md:mb-0 mx-auto md:mx-0 h-44 md:h-auto">
|
|
90
|
+
<slot name="picture-edit" />
|
|
91
|
+
</div>
|
|
92
|
+
<div class="md:basis-1/2 prose">
|
|
93
|
+
<h4>Editar o perfil é rápido e fácil</h4>
|
|
94
|
+
<p>
|
|
95
|
+
Adicione sua foto ou o logo de sua empresa em seu perfil.
|
|
96
|
+
Disponibilize todos os contatos que desejar, WhatsApp,
|
|
97
|
+
LinkedIn, Instagram, TikTok, Twitter, loja, website
|
|
98
|
+
e até mesmo Pix.
|
|
99
|
+
</p>
|
|
100
|
+
<p class="font-medium">
|
|
101
|
+
Tudo em um único link para bio,
|
|
102
|
+
apontado diretamente pelo seu cartão de visitas inteligente.
|
|
103
|
+
</p>
|
|
104
|
+
</div>
|
|
105
|
+
</TabPanel>
|
|
106
|
+
<TabPanel v-motion-fade-visible>Content 3</TabPanel>
|
|
107
|
+
</TabPanels>
|
|
108
|
+
</TabGroup>
|
|
109
|
+
</article>
|
|
110
|
+
</template>
|
|
111
|
+
|
|
112
|
+
<script setup lang="ts">
|
|
113
|
+
import {
|
|
114
|
+
ref,
|
|
115
|
+
nextTick,
|
|
116
|
+
onMounted,
|
|
117
|
+
onBeforeUnmount,
|
|
118
|
+
} from 'vue';
|
|
119
|
+
import { useDebounceFn } from '@vueuse/core';
|
|
120
|
+
import {
|
|
121
|
+
TabGroup,
|
|
122
|
+
TabList,
|
|
123
|
+
Tab,
|
|
124
|
+
TabPanels,
|
|
125
|
+
TabPanel,
|
|
126
|
+
} from '@headlessui/vue';
|
|
127
|
+
|
|
128
|
+
const title = ref<null | HTMLHeadingElement>(null);
|
|
129
|
+
const titleMinWidth = ref<null | string>(null);
|
|
130
|
+
const titleMinHeight = ref<null | string>(null);
|
|
131
|
+
const fixTitleSize = () => {
|
|
132
|
+
titleMinWidth.value = `${title.value.offsetWidth}px`;
|
|
133
|
+
titleMinHeight.value = `${title.value.offsetHeight}px`;
|
|
134
|
+
};
|
|
135
|
+
const onResize = useDebounceFn(() => fixTitleSize(), 400);
|
|
136
|
+
const copyKeyword = ref<null | string>('networking');
|
|
137
|
+
let keywordInterval: null | ReturnType<typeof setInterval> = null;
|
|
138
|
+
onMounted(() => {
|
|
139
|
+
keywordInterval = setInterval(() => {
|
|
140
|
+
fixTitleSize();
|
|
141
|
+
const oldValue = copyKeyword.value;
|
|
142
|
+
nextTick(() => {
|
|
143
|
+
copyKeyword.value = null;
|
|
144
|
+
setTimeout(() => {
|
|
145
|
+
copyKeyword.value = oldValue === 'networking' ? 'negócios' : 'networking';
|
|
146
|
+
}, 300);
|
|
147
|
+
});
|
|
148
|
+
}, 3000);
|
|
149
|
+
window.addEventListener('resize', onResize);
|
|
150
|
+
});
|
|
151
|
+
onBeforeUnmount(() => {
|
|
152
|
+
clearInterval(keywordInterval);
|
|
153
|
+
window.removeEventListener('resize', onResize);
|
|
154
|
+
});
|
|
155
|
+
</script>
|
|
@@ -16,12 +16,12 @@ const { settings } = pageContext;
|
|
|
16
16
|
<Base pageContext={pageContext} title={title}>
|
|
17
17
|
<slot name="header">
|
|
18
18
|
<Header pageContext={pageContext}>
|
|
19
|
-
<
|
|
19
|
+
<img
|
|
20
20
|
slot="logo-picture"
|
|
21
21
|
src={settings.logo}
|
|
22
22
|
alt={settings.name}
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
width="150"
|
|
24
|
+
height="24.5"
|
|
25
25
|
fetchpriority="high"
|
|
26
26
|
loading="eager"
|
|
27
27
|
class="hover:drop-shadow-sm"
|
|
@@ -3,6 +3,7 @@ import type { PageContext } from '@@sf/ssr-context';
|
|
|
3
3
|
import api from '@cloudcommerce/api';
|
|
4
4
|
import LottiePhoneNFC from '~/components/LottiePhoneNFC.vue';
|
|
5
5
|
import CasesGrid from '~/components/CasesGrid.astro';
|
|
6
|
+
import UsageSteps from '~/components/UsageSteps.astro';
|
|
6
7
|
|
|
7
8
|
export interface Props {
|
|
8
9
|
pageContext: PageContext;
|
|
@@ -74,11 +75,26 @@ const products = (await api.get('products')).data.result;
|
|
|
74
75
|
</div>
|
|
75
76
|
</article>
|
|
76
77
|
</section>
|
|
77
|
-
<section class="bg-white pb-9">
|
|
78
|
+
<section id="cases" class="bg-white pb-9">
|
|
78
79
|
<CasesGrid />
|
|
80
|
+
<div class="max-w-lg mx-auto mt-7">
|
|
81
|
+
<a href="/#avaliacoes" class="text-lg text-primary-600 hover:text-primary-800
|
|
82
|
+
font-brand lowercase flex gap-1 sm:gap-2 items-center justify-center">
|
|
83
|
+
<i class="i-chevron-down text-3xl animate-bounce -mb-1.5"></i>
|
|
84
|
+
<span class="underline underline-offset-4 decoration-primary">
|
|
85
|
+
O que profissionais e times dizem</span>
|
|
86
|
+
<div class="hidden sm:flex gap-0.5 text-xs text-yellow-400">
|
|
87
|
+
<i class="i-star-fill"></i>
|
|
88
|
+
<i class="i-star-fill"></i>
|
|
89
|
+
<i class="i-star-fill"></i>
|
|
90
|
+
<i class="i-star-fill"></i>
|
|
91
|
+
<i class="i-star-fill"></i>
|
|
92
|
+
</div>
|
|
93
|
+
</a>
|
|
94
|
+
</div>
|
|
79
95
|
</section>
|
|
80
|
-
<section class="bg-gradient-to-br from-
|
|
81
|
-
|
|
96
|
+
<section class="bg-gradient-to-br from-white to-base-100 py-9">
|
|
97
|
+
<UsageSteps />
|
|
82
98
|
</section>
|
|
83
99
|
<section id="produtos"></section>
|
|
84
100
|
</main>
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cloudcommerce",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.6.
|
|
4
|
+
"version": "0.6.13",
|
|
5
5
|
"description": "Open fair-code headless commerce platform: API-first, microservices based, event driven and cloud native",
|
|
6
6
|
"main": "packages/api/lib/index.js",
|
|
7
7
|
"author": "E-Com Club Softwares para E-commerce <ti@e-com.club>",
|