cloudcommerce 2.14.1 → 2.14.2
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 +10 -0
- package/ecomplus-stores/barradoce/functions/many/package.json +3 -3
- package/ecomplus-stores/barradoce/functions/ssr/package.json +6 -6
- package/ecomplus-stores/barradoce/functions/ssr/src/components/ShopHeader.vue +0 -2
- package/ecomplus-stores/barradoce/functions/with-apps/package.json +3 -3
- package/ecomplus-stores/barradoce/package.json +2 -2
- package/package.json +2 -2
- package/packages/api/package.json +1 -1
- package/packages/apps/affiliate-program/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/flash-courier/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/jadlog/package.json +1 -1
- package/packages/apps/loyalty-points/package.json +1 -1
- package/packages/apps/mandae/package.json +1 -1
- package/packages/apps/melhor-envio/package.json +1 -1
- package/packages/apps/mercadopago/package.json +1 -1
- package/packages/apps/pagaleve/package.json +1 -1
- package/packages/apps/pagarme/package.json +1 -1
- package/packages/apps/pagarme-v5/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/ci/bunny-config-base.sh +1 -2
- package/packages/cli/config/firebase.json +0 -5
- package/packages/cli/package.json +1 -1
- package/packages/config/package.json +1 -1
- package/packages/emails/lib/index.js +11 -10
- package/packages/emails/lib/index.js.map +1 -1
- package/packages/emails/lib/providers/smtp/index.js +5 -17
- package/packages/emails/lib/providers/smtp/index.js.map +1 -1
- package/packages/emails/package.json +1 -1
- package/packages/emails/src/index.ts +11 -18
- package/packages/emails/src/providers/smtp/index.ts +6 -29
- package/packages/eslint/package.json +1 -1
- package/packages/events/package.json +1 -1
- package/packages/feeds/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 +2 -2
- package/packages/storefront/package.json +2 -2
- package/packages/storefront/scripts/build-prod.sh +2 -0
- package/packages/storefront/src/lib/scripts/decap-cms.ts +1 -1
- package/packages/test-base/package.json +1 -1
- package/packages/types/package.json +1 -1
- package/ecomplus-stores/barradoce/functions/ssr/public/admin/.gitkeep +0 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,16 @@
|
|
|
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
|
+
### [2.14.2](https://github.com/ecomplus/cloud-commerce/compare/v2.14.1...v2.14.2) (2024-04-17)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **cli:** Fix bunny.net CI to bypass perma-cache for /app/ (SPA) routes ([739caec](https://github.com/ecomplus/cloud-commerce/commit/739caec3dc0c0e8659f98317d89d6e2faaea05b1))
|
|
11
|
+
* **emails:** Properly settings default email sender (from) and mask sender ([e199706](https://github.com/ecomplus/cloud-commerce/commit/e19970613b66ec258a98024ba5f7f3ac7bd69322))
|
|
12
|
+
* **storefront:** Bump Vue to latest v3.4.23 ([553572d](https://github.com/ecomplus/cloud-commerce/commit/553572d10b30828df207db45024cb123b515ae4f))
|
|
13
|
+
* **storefront:** Minor fix Decap CMS `backend.api_root` with no trailing slash ([81abc3c](https://github.com/ecomplus/cloud-commerce/commit/81abc3c7976d4e596dbc2306b791234bb52ee7d4))
|
|
14
|
+
|
|
5
15
|
### [2.14.1](https://github.com/ecomplus/cloud-commerce/compare/v2.14.0...v2.14.1) (2024-04-16)
|
|
6
16
|
|
|
7
17
|
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
},
|
|
16
16
|
"main": "index.js",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@cloudcommerce/feeds": "^2.14.
|
|
19
|
-
"@cloudcommerce/firebase": "^2.14.
|
|
20
|
-
"@cloudcommerce/passport": "^2.14.
|
|
18
|
+
"@cloudcommerce/feeds": "^2.14.1",
|
|
19
|
+
"@cloudcommerce/firebase": "^2.14.1",
|
|
20
|
+
"@cloudcommerce/passport": "^2.14.1"
|
|
21
21
|
}
|
|
22
22
|
}
|
|
@@ -19,16 +19,16 @@
|
|
|
19
19
|
},
|
|
20
20
|
"main": "index.js",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@cloudcommerce/api": "^2.14.
|
|
23
|
-
"@cloudcommerce/firebase": "^2.14.
|
|
24
|
-
"@cloudcommerce/ssr": "^2.14.
|
|
22
|
+
"@cloudcommerce/api": "^2.14.1",
|
|
23
|
+
"@cloudcommerce/firebase": "^2.14.1",
|
|
24
|
+
"@cloudcommerce/ssr": "^2.14.1",
|
|
25
25
|
"@headlessui/vue": "^1.7.18",
|
|
26
26
|
"micromark": "^4.0.0"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@cloudcommerce/i18n": "^2.14.
|
|
30
|
-
"@cloudcommerce/storefront": "^2.14.
|
|
31
|
-
"@cloudcommerce/types": "^2.14.
|
|
29
|
+
"@cloudcommerce/i18n": "^2.14.1",
|
|
30
|
+
"@cloudcommerce/storefront": "^2.14.1",
|
|
31
|
+
"@cloudcommerce/types": "^2.14.1",
|
|
32
32
|
"@iconify-json/mingcute": "^1.1.16",
|
|
33
33
|
"photoswipe": "^5.4.3"
|
|
34
34
|
}
|
|
@@ -39,8 +39,6 @@
|
|
|
39
39
|
opacity-0 transition-opacity lg:z-auto lg:flex lg:opacity-100"
|
|
40
40
|
:class="isSearchOpen ? 'flex opacity-100' : '-z-10'"
|
|
41
41
|
>
|
|
42
|
-
<div class="hidden w-12 bg-gradient-to-r from-transparent
|
|
43
|
-
to-white sm:block"></div>
|
|
44
42
|
<input
|
|
45
43
|
ref="searchInput"
|
|
46
44
|
type="search"
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
},
|
|
16
16
|
"main": "index.js",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@cloudcommerce/events": "^2.14.
|
|
19
|
-
"@cloudcommerce/firebase": "^2.14.
|
|
20
|
-
"@cloudcommerce/modules": "^2.14.
|
|
18
|
+
"@cloudcommerce/events": "^2.14.1",
|
|
19
|
+
"@cloudcommerce/firebase": "^2.14.1",
|
|
20
|
+
"@cloudcommerce/modules": "^2.14.1"
|
|
21
21
|
}
|
|
22
22
|
}
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
"url": "https://github.com/ecomplus/cloud-commerce/issues"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@cloudcommerce/cli": "^2.14.
|
|
29
|
+
"@cloudcommerce/cli": "^2.14.1"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@cloudcommerce/eslint": "^2.14.
|
|
32
|
+
"@cloudcommerce/eslint": "^2.14.1",
|
|
33
33
|
"husky": "^9.0.10",
|
|
34
34
|
"lint-staged": "^15.2.2"
|
|
35
35
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cloudcommerce",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.14.
|
|
4
|
+
"version": "2.14.2",
|
|
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>",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"vite": "^5.2.8",
|
|
37
37
|
"vitest": "^1.5.0",
|
|
38
38
|
"zx": "^7.2.3",
|
|
39
|
-
"@cloudcommerce/eslint": "2.14.
|
|
39
|
+
"@cloudcommerce/eslint": "2.14.2"
|
|
40
40
|
},
|
|
41
41
|
"scripts": {
|
|
42
42
|
"fix-install": "bash scripts/pre-install.sh && pnpm i",
|
|
@@ -154,7 +154,6 @@ configure_edge_rule "APIs bypass CDN cache" '
|
|
|
154
154
|
"PatternMatches": [
|
|
155
155
|
"*/_api/*",
|
|
156
156
|
"*.xml",
|
|
157
|
-
"*/.*/git/*",
|
|
158
157
|
"*/admin/*",
|
|
159
158
|
"*/~*"
|
|
160
159
|
],
|
|
@@ -179,7 +178,7 @@ configure_edge_rule "APIs bypass perma-cache" '
|
|
|
179
178
|
"PatternMatches": [
|
|
180
179
|
"*/_api/*",
|
|
181
180
|
"*.xml",
|
|
182
|
-
"
|
|
181
|
+
"*/app/*",
|
|
183
182
|
"*/admin/*",
|
|
184
183
|
"*/~*"
|
|
185
184
|
],
|
|
@@ -11,18 +11,13 @@ const sendEmail = (emailData) => {
|
|
|
11
11
|
const {
|
|
12
12
|
MAIL_SENDER, MAIL_SENDER_NAME, MAIL_REPLY_TO, SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASS, SMTP_TLS, SENDGRID_API_KEY,
|
|
13
13
|
} = process.env;
|
|
14
|
+
const { settingsContent } = config.get();
|
|
14
15
|
const {
|
|
15
16
|
templateData, templateId, template, to, subject, cc, sender, bcc, text, html,
|
|
16
17
|
} = emailData;
|
|
17
|
-
const { settingsContent } = config.get();
|
|
18
|
-
const senderEmail = MAIL_SENDER || settingsContent.email;
|
|
19
|
-
const senderName = MAIL_SENDER_NAME || settingsContent.name;
|
|
20
18
|
if (!templateId && !template && !html) {
|
|
21
19
|
throw new Error('TemplateId, template or html not found');
|
|
22
20
|
}
|
|
23
|
-
if (!senderEmail) {
|
|
24
|
-
throw new Error('Sender email not configured');
|
|
25
|
-
}
|
|
26
21
|
const emailHeaders = {
|
|
27
22
|
to,
|
|
28
23
|
subject,
|
|
@@ -30,13 +25,19 @@ const sendEmail = (emailData) => {
|
|
|
30
25
|
sender,
|
|
31
26
|
bcc,
|
|
32
27
|
from: {
|
|
33
|
-
name:
|
|
34
|
-
email:
|
|
28
|
+
name: MAIL_SENDER_NAME || settingsContent.name,
|
|
29
|
+
email: MAIL_SENDER || 'lojas@e-com.plus',
|
|
35
30
|
},
|
|
36
31
|
};
|
|
32
|
+
if (!MAIL_SENDER && !emailHeaders.sender) {
|
|
33
|
+
emailHeaders.sender = {
|
|
34
|
+
email: settingsContent.email,
|
|
35
|
+
name: settingsContent.name,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
37
38
|
if (MAIL_REPLY_TO) {
|
|
38
39
|
emailHeaders.replyTo = {
|
|
39
|
-
name:
|
|
40
|
+
name: settingsContent.name,
|
|
40
41
|
email: MAIL_REPLY_TO,
|
|
41
42
|
};
|
|
42
43
|
}
|
|
@@ -68,7 +69,7 @@ const sendEmail = (emailData) => {
|
|
|
68
69
|
template,
|
|
69
70
|
});
|
|
70
71
|
}
|
|
71
|
-
throw new Error('Provider settings or
|
|
72
|
+
throw new Error('Provider settings or SMTP not found');
|
|
72
73
|
};
|
|
73
74
|
const sendGrid = {
|
|
74
75
|
send: sendEmailSendGrid,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,MAAM,MAAM,oCAAoC,CAAC;AACxD,OAAO,aAAa,EAAE,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,iBAAiB,MAAM,4BAA4B,CAAC;AAE3D,0CAA0C;AAC1C,IAAI,UAAkC,CAAC;AAEvC,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC3C,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,MAAM,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAChB,SAWC,EACD,EAAE;IACF,MAAM,EACJ,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,GAAG,OAAO,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,36 +32,24 @@ const sendEmail = async (emailHeaders, dataOptions) => {
|
|
|
32
32
|
if (!html) {
|
|
33
33
|
throw new Error(`Email body for template: #${template}, not found`);
|
|
34
34
|
}
|
|
35
|
-
// send mail with defined transport object
|
|
36
35
|
const mailOptions = {
|
|
37
36
|
from: `"${from.name}" <${from.email}>`,
|
|
38
37
|
to: parseEmailsToString(to),
|
|
39
38
|
subject: emailHeaders.subject,
|
|
40
39
|
html,
|
|
40
|
+
text,
|
|
41
41
|
};
|
|
42
|
-
if (text) {
|
|
43
|
-
Object.assign(mailOptions, text);
|
|
44
|
-
}
|
|
45
42
|
if (emailHeaders.sender) {
|
|
46
|
-
|
|
47
|
-
sender: `"${emailHeaders.sender.name}" <${emailHeaders.sender.email}>`,
|
|
48
|
-
});
|
|
43
|
+
mailOptions.sender = `"${emailHeaders.sender.name}" <${emailHeaders.sender.email}>`;
|
|
49
44
|
}
|
|
50
45
|
if (emailHeaders.cc) {
|
|
51
|
-
|
|
52
|
-
cc: parseEmailsToString(emailHeaders.cc),
|
|
53
|
-
});
|
|
46
|
+
mailOptions.cc = parseEmailsToString(emailHeaders.cc);
|
|
54
47
|
}
|
|
55
48
|
if (emailHeaders.bcc) {
|
|
56
|
-
|
|
57
|
-
bcc: parseEmailsToString(emailHeaders.bcc),
|
|
58
|
-
});
|
|
49
|
+
mailOptions.bcc = parseEmailsToString(emailHeaders.bcc);
|
|
59
50
|
}
|
|
60
51
|
if (emailHeaders.replyTo) {
|
|
61
|
-
|
|
62
|
-
Object.assign(mailOptions, {
|
|
63
|
-
replyTo,
|
|
64
|
-
});
|
|
52
|
+
mailOptions.replyTo = parseEmailsToString(emailHeaders.replyTo);
|
|
65
53
|
}
|
|
66
54
|
if (!transporter && smtpConfig) {
|
|
67
55
|
setConfigSmtp(smtpConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/smtp/index.ts"],"names":[],"mappings":"AAQA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAE/D,MAAM,mBAAmB,GAAG,CAAC,MAAqC,EAAE,EAAE;IACpE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,YAA0B,EAAE,EAAE;YACjE,OAAO,GAAG,KAAK,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;QAC3C,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IACD,OAAO,IAAI,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,KAAK,GAAG,CAAC;AAC9C,CAAC,CAAC;AAEF,IAAI,UAAkC,CAAC;AAEvC,IAAI,WAA8E,CAAC;AAEnF,MAAM,aAAa,GAAG,CAAC,MAAkB,EAAE,EAAE;IAC3C,UAAU,GAAG,MAAM,CAAC;IACpB,sEAAsE;IACtE,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,EACrB,YAA0B,EAC1B,WAKC,EACD,EAAE;IACF,MAAM,EACJ,IAAI,EACJ,YAAY,EACZ,QAAQ,GACT,GAAG,WAAW,CAAC;IAChB,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IAC3B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/smtp/index.ts"],"names":[],"mappings":"AAQA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAE/D,MAAM,mBAAmB,GAAG,CAAC,MAAqC,EAAE,EAAE;IACpE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,YAA0B,EAAE,EAAE;YACjE,OAAO,GAAG,KAAK,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;QAC3C,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IACD,OAAO,IAAI,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,KAAK,GAAG,CAAC;AAC9C,CAAC,CAAC;AAEF,IAAI,UAAkC,CAAC;AAEvC,IAAI,WAA8E,CAAC;AAEnF,MAAM,aAAa,GAAG,CAAC,MAAkB,EAAE,EAAE;IAC3C,UAAU,GAAG,MAAM,CAAC;IACpB,sEAAsE;IACtE,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,EACrB,YAA0B,EAC1B,WAKC,EACD,EAAE;IACF,MAAM,EACJ,IAAI,EACJ,YAAY,EACZ,QAAQ,GACT,GAAG,WAAW,CAAC;IAChB,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IAC3B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,YAAY,CAAC;IAClC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,QAAQ,IAAI,YAAY,EAAE,CAAC;QAC7B,IAAI,GAAG,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,aAAa,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,WAAW,GAA8B;QAC7C,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,GAAG;QACtC,EAAE,EAAE,mBAAmB,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,YAAY,CAAC,OAAO;QAC7B,IAAI;QACJ,IAAI;KACL,CAAC;IACF,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,WAAW,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC;IACtF,CAAC;IACD,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC;QACpB,WAAW,CAAC,EAAE,GAAG,mBAAmB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,YAAY,CAAC,GAAG,EAAE,CAAC;QACrB,WAAW,CAAC,GAAG,GAAG,mBAAmB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;QACzB,WAAW,CAAC,OAAO,GAAG,mBAAmB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,WAAW,IAAI,UAAU,EAAE,CAAC;QAC/B,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACrD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;IACnE,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,OAAO,EACL,aAAa,GACd,CAAC"}
|
|
@@ -41,7 +41,7 @@ const sendEmail = (
|
|
|
41
41
|
SMTP_TLS,
|
|
42
42
|
SENDGRID_API_KEY,
|
|
43
43
|
} = process.env;
|
|
44
|
-
|
|
44
|
+
const { settingsContent } = config.get();
|
|
45
45
|
const {
|
|
46
46
|
templateData,
|
|
47
47
|
templateId,
|
|
@@ -54,18 +54,9 @@ const sendEmail = (
|
|
|
54
54
|
text,
|
|
55
55
|
html,
|
|
56
56
|
} = emailData;
|
|
57
|
-
|
|
58
|
-
const { settingsContent } = config.get();
|
|
59
|
-
const senderEmail = MAIL_SENDER || settingsContent.email;
|
|
60
|
-
const senderName = MAIL_SENDER_NAME || settingsContent.name;
|
|
61
|
-
|
|
62
57
|
if (!templateId && !template && !html) {
|
|
63
58
|
throw new Error('TemplateId, template or html not found');
|
|
64
59
|
}
|
|
65
|
-
if (!senderEmail) {
|
|
66
|
-
throw new Error('Sender email not configured');
|
|
67
|
-
}
|
|
68
|
-
|
|
69
60
|
const emailHeaders: EmailHeaders = {
|
|
70
61
|
to,
|
|
71
62
|
subject,
|
|
@@ -73,17 +64,22 @@ const sendEmail = (
|
|
|
73
64
|
sender,
|
|
74
65
|
bcc,
|
|
75
66
|
from: {
|
|
76
|
-
name:
|
|
77
|
-
email:
|
|
67
|
+
name: MAIL_SENDER_NAME || settingsContent.name,
|
|
68
|
+
email: MAIL_SENDER || 'lojas@e-com.plus',
|
|
78
69
|
},
|
|
79
70
|
};
|
|
71
|
+
if (!MAIL_SENDER && !emailHeaders.sender) {
|
|
72
|
+
emailHeaders.sender = {
|
|
73
|
+
email: settingsContent.email,
|
|
74
|
+
name: settingsContent.name,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
80
77
|
if (MAIL_REPLY_TO) {
|
|
81
78
|
emailHeaders.replyTo = {
|
|
82
|
-
name:
|
|
79
|
+
name: settingsContent.name,
|
|
83
80
|
email: MAIL_REPLY_TO,
|
|
84
81
|
};
|
|
85
82
|
}
|
|
86
|
-
|
|
87
83
|
if ((templateId || template || html) && SENDGRID_API_KEY) {
|
|
88
84
|
return sendEmailSendGrid(
|
|
89
85
|
emailHeaders,
|
|
@@ -95,7 +91,6 @@ const sendEmail = (
|
|
|
95
91
|
},
|
|
96
92
|
);
|
|
97
93
|
}
|
|
98
|
-
|
|
99
94
|
if (!smtpConfig && SMTP_HOST && SMTP_PORT && SMTP_USER && SMTP_PASS) {
|
|
100
95
|
const port = parseInt(SMTP_PORT, 10);
|
|
101
96
|
const secure = SMTP_TLS && SMTP_TLS.toUpperCase() === 'TRUE' ? true : port === 465;
|
|
@@ -108,7 +103,6 @@ const sendEmail = (
|
|
|
108
103
|
};
|
|
109
104
|
setConfigSmtp(smtpConfig);
|
|
110
105
|
}
|
|
111
|
-
|
|
112
106
|
if ((template || html) && smtpConfig) {
|
|
113
107
|
return sendEmailSmpt(
|
|
114
108
|
emailHeaders,
|
|
@@ -120,8 +114,7 @@ const sendEmail = (
|
|
|
120
114
|
},
|
|
121
115
|
);
|
|
122
116
|
}
|
|
123
|
-
|
|
124
|
-
throw new Error('Provider settings or smtp not found');
|
|
117
|
+
throw new Error('Provider settings or SMTP not found');
|
|
125
118
|
};
|
|
126
119
|
|
|
127
120
|
const sendGrid = {
|
|
@@ -44,63 +44,40 @@ const sendEmail = async (
|
|
|
44
44
|
} = dataOptions;
|
|
45
45
|
let { html } = dataOptions;
|
|
46
46
|
const { from, to } = emailHeaders;
|
|
47
|
-
|
|
48
47
|
if (!template && !html) {
|
|
49
48
|
throw new Error('Template or html not found');
|
|
50
49
|
}
|
|
51
|
-
|
|
52
50
|
if (template && !templateData) {
|
|
53
51
|
throw new Error('Data for template not found');
|
|
54
52
|
}
|
|
55
|
-
|
|
56
53
|
if (template && templateData) {
|
|
57
54
|
html = parseTemplateToHtml(templateData, template);
|
|
58
55
|
}
|
|
59
|
-
|
|
60
56
|
if (!html) {
|
|
61
57
|
throw new Error(`Email body for template: #${template}, not found`);
|
|
62
58
|
}
|
|
63
|
-
|
|
64
|
-
// send mail with defined transport object
|
|
65
|
-
const mailOptions = {
|
|
59
|
+
const mailOptions: SMTPTransport.MailOptions = {
|
|
66
60
|
from: `"${from.name}" <${from.email}>`,
|
|
67
61
|
to: parseEmailsToString(to),
|
|
68
62
|
subject: emailHeaders.subject,
|
|
69
63
|
html,
|
|
64
|
+
text,
|
|
70
65
|
};
|
|
71
|
-
if (text) {
|
|
72
|
-
Object.assign(mailOptions, text);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
66
|
if (emailHeaders.sender) {
|
|
76
|
-
|
|
77
|
-
sender: `"${emailHeaders.sender.name}" <${emailHeaders.sender.email}>`,
|
|
78
|
-
});
|
|
67
|
+
mailOptions.sender = `"${emailHeaders.sender.name}" <${emailHeaders.sender.email}>`;
|
|
79
68
|
}
|
|
80
|
-
|
|
81
69
|
if (emailHeaders.cc) {
|
|
82
|
-
|
|
83
|
-
cc: parseEmailsToString(emailHeaders.cc),
|
|
84
|
-
});
|
|
70
|
+
mailOptions.cc = parseEmailsToString(emailHeaders.cc);
|
|
85
71
|
}
|
|
86
|
-
|
|
87
72
|
if (emailHeaders.bcc) {
|
|
88
|
-
|
|
89
|
-
bcc: parseEmailsToString(emailHeaders.bcc),
|
|
90
|
-
});
|
|
73
|
+
mailOptions.bcc = parseEmailsToString(emailHeaders.bcc);
|
|
91
74
|
}
|
|
92
|
-
|
|
93
75
|
if (emailHeaders.replyTo) {
|
|
94
|
-
|
|
95
|
-
Object.assign(mailOptions, {
|
|
96
|
-
replyTo,
|
|
97
|
-
});
|
|
76
|
+
mailOptions.replyTo = parseEmailsToString(emailHeaders.replyTo);
|
|
98
77
|
}
|
|
99
|
-
|
|
100
78
|
if (!transporter && smtpConfig) {
|
|
101
79
|
setConfigSmtp(smtpConfig);
|
|
102
80
|
}
|
|
103
|
-
|
|
104
81
|
if (transporter) {
|
|
105
82
|
const info = await transporter.sendMail(mailOptions);
|
|
106
83
|
return { status: 202, message: `messageId: #${info.messageId}` };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/ssr",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.14.
|
|
4
|
+
"version": "2.14.2",
|
|
5
5
|
"description": "e-com.plus Cloud Commerce storefront SSR",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"exports": {
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"firebase-admin": "^12.0.0",
|
|
45
45
|
"firebase-functions": "^4.9.0",
|
|
46
46
|
"mitt": "^3.0.1",
|
|
47
|
-
"vue": "^3.4.
|
|
47
|
+
"vue": "^3.4.23",
|
|
48
48
|
"yaml": "^2.4.1"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/storefront",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.14.
|
|
4
|
+
"version": "2.14.2",
|
|
5
5
|
"description": "e-com.plus Cloud Commerce storefront with Astro",
|
|
6
6
|
"bin": {
|
|
7
7
|
"storefront": "./scripts/build-prod.sh"
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"tailwindcss": "^3.4.3",
|
|
66
66
|
"unocss": "^0.58.9",
|
|
67
67
|
"unplugin-auto-import": "^0.17.5",
|
|
68
|
-
"vue": "^3.4.
|
|
68
|
+
"vue": "^3.4.23",
|
|
69
69
|
"wade": "0.3.3",
|
|
70
70
|
"yaml": "^2.4.1"
|
|
71
71
|
},
|
|
@@ -11,6 +11,8 @@ mv ./.cloudcommerce/sf-tmp-dist/_astro/*.{png,jpg,jpeg,webp,avif,svg} \
|
|
|
11
11
|
2>/dev/null
|
|
12
12
|
mv ./.cloudcommerce/sf-tmp-dist/~fallback/index.html ./dist/client/~fallback.html
|
|
13
13
|
mv ./.cloudcommerce/sf-tmp-dist/index.html ./dist/client/~index.html
|
|
14
|
+
mv ./.cloudcommerce/sf-tmp-dist/app/ ./dist/client/
|
|
15
|
+
mv ./.cloudcommerce/sf-tmp-dist/admin/ ./dist/client/
|
|
14
16
|
rm -rf ./.cloudcommerce/sf-tmp-dist
|
|
15
17
|
|
|
16
18
|
identify -format "%f,%w,%h\n" \
|
|
@@ -64,7 +64,7 @@ const authAndInitCms = async () => {
|
|
|
64
64
|
}
|
|
65
65
|
cmsConfig.backend = {
|
|
66
66
|
repo: GIT_REPO || '_owner/_name',
|
|
67
|
-
api_root: `https://ecomplus.app/api/${ECOM_STORE_ID}/git/github
|
|
67
|
+
api_root: `https://ecomplus.app/api/${ECOM_STORE_ID}/git/github`,
|
|
68
68
|
name: 'github',
|
|
69
69
|
base_url: `https://${location.hostname}`,
|
|
70
70
|
auth_endpoint: location.pathname, // self
|