@strapi/email 0.0.0-experimental.a65a85fdea97faae8679d3ffc5f9d79af61abd26 → 0.0.0
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/README.md +1 -3
- package/package.json +3 -80
- package/dist/_chunks/Settings-BDuq6QQN.mjs +0 -279
- package/dist/_chunks/Settings-BDuq6QQN.mjs.map +0 -1
- package/dist/_chunks/Settings-Bt_OomWk.js +0 -300
- package/dist/_chunks/Settings-Bt_OomWk.js.map +0 -1
- package/dist/_chunks/ar-Bf9XlLLo.mjs +0 -5
- package/dist/_chunks/ar-Bf9XlLLo.mjs.map +0 -1
- package/dist/_chunks/ar-C_tQu1XS.js +0 -5
- package/dist/_chunks/ar-C_tQu1XS.js.map +0 -1
- package/dist/_chunks/cs-B0QZJTah.mjs +0 -5
- package/dist/_chunks/cs-B0QZJTah.mjs.map +0 -1
- package/dist/_chunks/cs-CPKIUWLp.js +0 -5
- package/dist/_chunks/cs-CPKIUWLp.js.map +0 -1
- package/dist/_chunks/de-B9kiAC-s.mjs +0 -5
- package/dist/_chunks/de-B9kiAC-s.mjs.map +0 -1
- package/dist/_chunks/de-K6IYQk2d.js +0 -5
- package/dist/_chunks/de-K6IYQk2d.js.map +0 -1
- package/dist/_chunks/dk-31mOPYpI.js +0 -26
- package/dist/_chunks/dk-31mOPYpI.js.map +0 -1
- package/dist/_chunks/dk-DqrbgSkv.mjs +0 -26
- package/dist/_chunks/dk-DqrbgSkv.mjs.map +0 -1
- package/dist/_chunks/en-BCu4d6-o.js +0 -29
- package/dist/_chunks/en-BCu4d6-o.js.map +0 -1
- package/dist/_chunks/en-DF4KtAAC.mjs +0 -29
- package/dist/_chunks/en-DF4KtAAC.mjs.map +0 -1
- package/dist/_chunks/es-BNo7eLLJ.mjs +0 -26
- package/dist/_chunks/es-BNo7eLLJ.mjs.map +0 -1
- package/dist/_chunks/es-Dl2HVmwz.js +0 -26
- package/dist/_chunks/es-Dl2HVmwz.js.map +0 -1
- package/dist/_chunks/fr-C8Qw4iPZ.js +0 -5
- package/dist/_chunks/fr-C8Qw4iPZ.js.map +0 -1
- package/dist/_chunks/fr-hkSxFuzl.mjs +0 -5
- package/dist/_chunks/fr-hkSxFuzl.mjs.map +0 -1
- package/dist/_chunks/id-CHtAzAUz.mjs +0 -5
- package/dist/_chunks/id-CHtAzAUz.mjs.map +0 -1
- package/dist/_chunks/id-CvE5f0zz.js +0 -5
- package/dist/_chunks/id-CvE5f0zz.js.map +0 -1
- package/dist/_chunks/index-DMIgejZc.js +0 -80
- package/dist/_chunks/index-DMIgejZc.js.map +0 -1
- package/dist/_chunks/index-N4Dmk_PI.mjs +0 -81
- package/dist/_chunks/index-N4Dmk_PI.mjs.map +0 -1
- package/dist/_chunks/it-C7z82V3g.mjs +0 -5
- package/dist/_chunks/it-C7z82V3g.mjs.map +0 -1
- package/dist/_chunks/it-DYpuAHa5.js +0 -5
- package/dist/_chunks/it-DYpuAHa5.js.map +0 -1
- package/dist/_chunks/ja-CiekkoEN.mjs +0 -26
- package/dist/_chunks/ja-CiekkoEN.mjs.map +0 -1
- package/dist/_chunks/ja-PL3WilO7.js +0 -26
- package/dist/_chunks/ja-PL3WilO7.js.map +0 -1
- package/dist/_chunks/ko-CJBkZ375.mjs +0 -26
- package/dist/_chunks/ko-CJBkZ375.mjs.map +0 -1
- package/dist/_chunks/ko-CL2BB_w_.js +0 -26
- package/dist/_chunks/ko-CL2BB_w_.js.map +0 -1
- package/dist/_chunks/ms-BGlHkuJz.js +0 -5
- package/dist/_chunks/ms-BGlHkuJz.js.map +0 -1
- package/dist/_chunks/ms-C1wNkEQw.mjs +0 -5
- package/dist/_chunks/ms-C1wNkEQw.mjs.map +0 -1
- package/dist/_chunks/nl-BuofSsmb.js +0 -5
- package/dist/_chunks/nl-BuofSsmb.js.map +0 -1
- package/dist/_chunks/nl-C79CwB4e.mjs +0 -5
- package/dist/_chunks/nl-C79CwB4e.mjs.map +0 -1
- package/dist/_chunks/pl-DXcJCevg.mjs +0 -26
- package/dist/_chunks/pl-DXcJCevg.mjs.map +0 -1
- package/dist/_chunks/pl-DdtXf3SH.js +0 -26
- package/dist/_chunks/pl-DdtXf3SH.js.map +0 -1
- package/dist/_chunks/pt-BR-B_ii8U63.js +0 -5
- package/dist/_chunks/pt-BR-B_ii8U63.js.map +0 -1
- package/dist/_chunks/pt-BR-DjINUWGk.mjs +0 -5
- package/dist/_chunks/pt-BR-DjINUWGk.mjs.map +0 -1
- package/dist/_chunks/pt-CzRDvk6c.js +0 -29
- package/dist/_chunks/pt-CzRDvk6c.js.map +0 -1
- package/dist/_chunks/pt-DEVCt2mt.mjs +0 -29
- package/dist/_chunks/pt-DEVCt2mt.mjs.map +0 -1
- package/dist/_chunks/ru-C_7wBr9e.mjs +0 -5
- package/dist/_chunks/ru-C_7wBr9e.mjs.map +0 -1
- package/dist/_chunks/ru-Dc-rSPqb.js +0 -5
- package/dist/_chunks/ru-Dc-rSPqb.js.map +0 -1
- package/dist/_chunks/sk-Cnpb4YOK.js +0 -5
- package/dist/_chunks/sk-Cnpb4YOK.js.map +0 -1
- package/dist/_chunks/sk-i1gQKUBN.mjs +0 -5
- package/dist/_chunks/sk-i1gQKUBN.mjs.map +0 -1
- package/dist/_chunks/th-BXTLF08M.js +0 -5
- package/dist/_chunks/th-BXTLF08M.js.map +0 -1
- package/dist/_chunks/th-D-MxpWKr.mjs +0 -5
- package/dist/_chunks/th-D-MxpWKr.mjs.map +0 -1
- package/dist/_chunks/tr-BXu41MLY.mjs +0 -29
- package/dist/_chunks/tr-BXu41MLY.mjs.map +0 -1
- package/dist/_chunks/tr-DwBySNgJ.js +0 -29
- package/dist/_chunks/tr-DwBySNgJ.js.map +0 -1
- package/dist/_chunks/uk-C_1qrLRM.mjs +0 -5
- package/dist/_chunks/uk-C_1qrLRM.mjs.map +0 -1
- package/dist/_chunks/uk-CxIePjBD.js +0 -5
- package/dist/_chunks/uk-CxIePjBD.js.map +0 -1
- package/dist/_chunks/vi-B4uqmjm6.js +0 -5
- package/dist/_chunks/vi-B4uqmjm6.js.map +0 -1
- package/dist/_chunks/vi-BfZkgFxI.mjs +0 -5
- package/dist/_chunks/vi-BfZkgFxI.mjs.map +0 -1
- package/dist/_chunks/zh-BS-XJCSt.mjs +0 -29
- package/dist/_chunks/zh-BS-XJCSt.mjs.map +0 -1
- package/dist/_chunks/zh-DsMIjTgu.js +0 -29
- package/dist/_chunks/zh-DsMIjTgu.js.map +0 -1
- package/dist/_chunks/zh-Hans-BLEEaLoN.mjs +0 -21
- package/dist/_chunks/zh-Hans-BLEEaLoN.mjs.map +0 -1
- package/dist/_chunks/zh-Hans-CmL3sY9o.js +0 -21
- package/dist/_chunks/zh-Hans-CmL3sY9o.js.map +0 -1
- package/dist/admin/index.js +0 -4
- package/dist/admin/index.js.map +0 -1
- package/dist/admin/index.mjs +0 -5
- package/dist/admin/index.mjs.map +0 -1
- package/dist/admin/src/constants.d.ts +0 -6
- package/dist/admin/src/index.d.ts +0 -3
- package/dist/admin/src/pages/Settings.d.ts +0 -1
- package/dist/admin/src/utils/getYupInnerErrors.d.ts +0 -7
- package/dist/admin/src/utils/prefixPluginTranslations.d.ts +0 -3
- package/dist/admin/src/utils/schema.d.ts +0 -8
- package/dist/server/index.js +0 -209
- package/dist/server/index.js.map +0 -1
- package/dist/server/index.mjs +0 -191
- package/dist/server/index.mjs.map +0 -1
- package/dist/server/src/bootstrap.d.ts +0 -5
- package/dist/server/src/bootstrap.d.ts.map +0 -1
- package/dist/server/src/config.d.ts +0 -3
- package/dist/server/src/config.d.ts.map +0 -1
- package/dist/server/src/controllers/email.d.ts +0 -13
- package/dist/server/src/controllers/email.d.ts.map +0 -1
- package/dist/server/src/controllers/index.d.ts +0 -9
- package/dist/server/src/controllers/index.d.ts.map +0 -1
- package/dist/server/src/index.d.ts +0 -49
- package/dist/server/src/index.d.ts.map +0 -1
- package/dist/server/src/routes/admin.d.ts +0 -18
- package/dist/server/src/routes/admin.d.ts.map +0 -1
- package/dist/server/src/routes/content-api.d.ts +0 -10
- package/dist/server/src/routes/content-api.d.ts.map +0 -1
- package/dist/server/src/routes/index.d.ts +0 -27
- package/dist/server/src/routes/index.d.ts.map +0 -1
- package/dist/server/src/services/email.d.ts +0 -8
- package/dist/server/src/services/email.d.ts.map +0 -1
- package/dist/server/src/services/index.d.ts +0 -8
- package/dist/server/src/services/index.d.ts.map +0 -1
- package/dist/server/src/types.d.ts +0 -38
- package/dist/server/src/types.d.ts.map +0 -1
- package/dist/shared/types.d.ts +0 -11
- package/dist/shared/types.d.ts.map +0 -1
- package/strapi-server.js +0 -3
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
const link = "Bağlantı";
|
|
2
|
-
const tr = {
|
|
3
|
-
link,
|
|
4
|
-
"Settings.email.plugin.button.test-email": "Deneme e-postası gönder",
|
|
5
|
-
"Settings.email.plugin.label.defaultFrom": "Varsayılan gönderim adresi",
|
|
6
|
-
"Settings.email.plugin.label.defaultReplyTo": "Varsayılan yanıt adresi",
|
|
7
|
-
"Settings.email.plugin.label.provider": "E-Posta sağlayıcı",
|
|
8
|
-
"Settings.email.plugin.label.testAddress": "Alıcı e-posta adresi",
|
|
9
|
-
"Settings.email.plugin.notification.config.error": "E-posta ayarlarını okuma hatası",
|
|
10
|
-
"Settings.email.plugin.notification.data.loaded": "E-posta ayarları yüklendi",
|
|
11
|
-
"Settings.email.plugin.notification.test.error": "{to} adresine deneme e-postası gönderimi başarısız oldu",
|
|
12
|
-
"Settings.email.plugin.notification.test.success": "E-posta denemesi başarılı. {to} adresinin posta kutusunu kontrol edin",
|
|
13
|
-
"Settings.email.plugin.placeholder.defaultFrom": "ör: Strapi Yanıtlama <yanitlama@strapi.io>",
|
|
14
|
-
"Settings.email.plugin.placeholder.defaultReplyTo": "ör: Strapi <ornek@strapi.io>",
|
|
15
|
-
"Settings.email.plugin.placeholder.testAddress": "ör: gelistirici@example.com",
|
|
16
|
-
"Settings.email.plugin.subTitle": "E-posta eklentisinin ayarlarını deneyin",
|
|
17
|
-
"Settings.email.plugin.text.configuration": "Plugin {file} dosyası üzerinden ayarlanıyor. Detaylar için şu bağlantıya bakın: {link}",
|
|
18
|
-
"Settings.email.plugin.title": "Kurulum",
|
|
19
|
-
"Settings.email.plugin.title.config": "Kurulum",
|
|
20
|
-
"Settings.email.plugin.title.test": "E-posta gönderimini dene",
|
|
21
|
-
"SettingsNav.link.settings": "Ayarlar",
|
|
22
|
-
"SettingsNav.section-label": "E-posta eklentisi",
|
|
23
|
-
"components.Input.error.validation.email": "Geçersiz e-posta adresi"
|
|
24
|
-
};
|
|
25
|
-
export {
|
|
26
|
-
tr as default,
|
|
27
|
-
link
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=tr-BXu41MLY.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tr-BXu41MLY.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const link = "Bağlantı";
|
|
4
|
-
const tr = {
|
|
5
|
-
link,
|
|
6
|
-
"Settings.email.plugin.button.test-email": "Deneme e-postası gönder",
|
|
7
|
-
"Settings.email.plugin.label.defaultFrom": "Varsayılan gönderim adresi",
|
|
8
|
-
"Settings.email.plugin.label.defaultReplyTo": "Varsayılan yanıt adresi",
|
|
9
|
-
"Settings.email.plugin.label.provider": "E-Posta sağlayıcı",
|
|
10
|
-
"Settings.email.plugin.label.testAddress": "Alıcı e-posta adresi",
|
|
11
|
-
"Settings.email.plugin.notification.config.error": "E-posta ayarlarını okuma hatası",
|
|
12
|
-
"Settings.email.plugin.notification.data.loaded": "E-posta ayarları yüklendi",
|
|
13
|
-
"Settings.email.plugin.notification.test.error": "{to} adresine deneme e-postası gönderimi başarısız oldu",
|
|
14
|
-
"Settings.email.plugin.notification.test.success": "E-posta denemesi başarılı. {to} adresinin posta kutusunu kontrol edin",
|
|
15
|
-
"Settings.email.plugin.placeholder.defaultFrom": "ör: Strapi Yanıtlama <yanitlama@strapi.io>",
|
|
16
|
-
"Settings.email.plugin.placeholder.defaultReplyTo": "ör: Strapi <ornek@strapi.io>",
|
|
17
|
-
"Settings.email.plugin.placeholder.testAddress": "ör: gelistirici@example.com",
|
|
18
|
-
"Settings.email.plugin.subTitle": "E-posta eklentisinin ayarlarını deneyin",
|
|
19
|
-
"Settings.email.plugin.text.configuration": "Plugin {file} dosyası üzerinden ayarlanıyor. Detaylar için şu bağlantıya bakın: {link}",
|
|
20
|
-
"Settings.email.plugin.title": "Kurulum",
|
|
21
|
-
"Settings.email.plugin.title.config": "Kurulum",
|
|
22
|
-
"Settings.email.plugin.title.test": "E-posta gönderimini dene",
|
|
23
|
-
"SettingsNav.link.settings": "Ayarlar",
|
|
24
|
-
"SettingsNav.section-label": "E-posta eklentisi",
|
|
25
|
-
"components.Input.error.validation.email": "Geçersiz e-posta adresi"
|
|
26
|
-
};
|
|
27
|
-
exports.default = tr;
|
|
28
|
-
exports.link = link;
|
|
29
|
-
//# sourceMappingURL=tr-DwBySNgJ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tr-DwBySNgJ.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uk-C_1qrLRM.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uk-CxIePjBD.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vi-B4uqmjm6.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vi-BfZkgFxI.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
const link = "連結";
|
|
2
|
-
const zh = {
|
|
3
|
-
link,
|
|
4
|
-
"Settings.email.plugin.button.test-email": "寄送測試電子郵件",
|
|
5
|
-
"Settings.email.plugin.label.defaultFrom": "預設寄送電子郵件地址",
|
|
6
|
-
"Settings.email.plugin.label.defaultReplyTo": "預設回應電子郵件地址",
|
|
7
|
-
"Settings.email.plugin.label.provider": "電子郵件供應者",
|
|
8
|
-
"Settings.email.plugin.label.testAddress": "收件者電子郵件地址",
|
|
9
|
-
"Settings.email.plugin.notification.config.error": "無法取得電子郵件設定",
|
|
10
|
-
"Settings.email.plugin.notification.data.loaded": "已載入電子郵件設定資料",
|
|
11
|
-
"Settings.email.plugin.notification.test.error": "無法將測試郵件寄送至 {to}",
|
|
12
|
-
"Settings.email.plugin.notification.test.success": "電子郵件測試成功,請檢查 {to} 收件匣",
|
|
13
|
-
"Settings.email.plugin.placeholder.defaultFrom": "例如:Strapi No-Reply <no-reply@strapi.io>",
|
|
14
|
-
"Settings.email.plugin.placeholder.defaultReplyTo": "例如:Strapi <example@strapi.io>",
|
|
15
|
-
"Settings.email.plugin.placeholder.testAddress": "例如:developer@example.com",
|
|
16
|
-
"Settings.email.plugin.subTitle": "測試電子郵件外掛程式的設定",
|
|
17
|
-
"Settings.email.plugin.text.configuration": "此外掛程式是透過 {file} 檔案來設定,請查閱此說明文件:{link}。",
|
|
18
|
-
"Settings.email.plugin.title": "設定",
|
|
19
|
-
"Settings.email.plugin.title.config": "設定",
|
|
20
|
-
"Settings.email.plugin.title.test": "測試電子郵件寄送",
|
|
21
|
-
"SettingsNav.link.settings": "設定",
|
|
22
|
-
"SettingsNav.section-label": "Email 外掛程式",
|
|
23
|
-
"components.Input.error.validation.email": "此電子郵件無效"
|
|
24
|
-
};
|
|
25
|
-
export {
|
|
26
|
-
zh as default,
|
|
27
|
-
link
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=zh-BS-XJCSt.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zh-BS-XJCSt.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const link = "連結";
|
|
4
|
-
const zh = {
|
|
5
|
-
link,
|
|
6
|
-
"Settings.email.plugin.button.test-email": "寄送測試電子郵件",
|
|
7
|
-
"Settings.email.plugin.label.defaultFrom": "預設寄送電子郵件地址",
|
|
8
|
-
"Settings.email.plugin.label.defaultReplyTo": "預設回應電子郵件地址",
|
|
9
|
-
"Settings.email.plugin.label.provider": "電子郵件供應者",
|
|
10
|
-
"Settings.email.plugin.label.testAddress": "收件者電子郵件地址",
|
|
11
|
-
"Settings.email.plugin.notification.config.error": "無法取得電子郵件設定",
|
|
12
|
-
"Settings.email.plugin.notification.data.loaded": "已載入電子郵件設定資料",
|
|
13
|
-
"Settings.email.plugin.notification.test.error": "無法將測試郵件寄送至 {to}",
|
|
14
|
-
"Settings.email.plugin.notification.test.success": "電子郵件測試成功,請檢查 {to} 收件匣",
|
|
15
|
-
"Settings.email.plugin.placeholder.defaultFrom": "例如:Strapi No-Reply <no-reply@strapi.io>",
|
|
16
|
-
"Settings.email.plugin.placeholder.defaultReplyTo": "例如:Strapi <example@strapi.io>",
|
|
17
|
-
"Settings.email.plugin.placeholder.testAddress": "例如:developer@example.com",
|
|
18
|
-
"Settings.email.plugin.subTitle": "測試電子郵件外掛程式的設定",
|
|
19
|
-
"Settings.email.plugin.text.configuration": "此外掛程式是透過 {file} 檔案來設定,請查閱此說明文件:{link}。",
|
|
20
|
-
"Settings.email.plugin.title": "設定",
|
|
21
|
-
"Settings.email.plugin.title.config": "設定",
|
|
22
|
-
"Settings.email.plugin.title.test": "測試電子郵件寄送",
|
|
23
|
-
"SettingsNav.link.settings": "設定",
|
|
24
|
-
"SettingsNav.section-label": "Email 外掛程式",
|
|
25
|
-
"components.Input.error.validation.email": "此電子郵件無效"
|
|
26
|
-
};
|
|
27
|
-
exports.default = zh;
|
|
28
|
-
exports.link = link;
|
|
29
|
-
//# sourceMappingURL=zh-DsMIjTgu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zh-DsMIjTgu.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
const link = "链接";
|
|
2
|
-
const zhHans = {
|
|
3
|
-
link,
|
|
4
|
-
"Settings.email.plugin.button.test-email": "发送测试邮件",
|
|
5
|
-
"Settings.email.plugin.label.defaultFrom": "默认发件地址",
|
|
6
|
-
"Settings.email.plugin.label.defaultReplyTo": "默认回复地址",
|
|
7
|
-
"Settings.email.plugin.label.provider": "电子邮件供应商",
|
|
8
|
-
"Settings.email.plugin.title.test": "测试电子邮件发送",
|
|
9
|
-
"Settings.email.plugin.label.testAddress": "收件地址",
|
|
10
|
-
"SettingsNav.link.settings": "电子邮件设置",
|
|
11
|
-
"SettingsNav.section-label": "电子邮件插件",
|
|
12
|
-
"Settings.email.plugin.title": "配置",
|
|
13
|
-
"Settings.email.plugin.subTitle": "测试电子邮件插件的配置",
|
|
14
|
-
"Settings.email.plugin.title.config": "配置",
|
|
15
|
-
"Settings.email.plugin.text.configuration": "通过 {file} 文件来配置插件,打开 {link} 查看文档。"
|
|
16
|
-
};
|
|
17
|
-
export {
|
|
18
|
-
zhHans as default,
|
|
19
|
-
link
|
|
20
|
-
};
|
|
21
|
-
//# sourceMappingURL=zh-Hans-BLEEaLoN.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zh-Hans-BLEEaLoN.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const link = "链接";
|
|
4
|
-
const zhHans = {
|
|
5
|
-
link,
|
|
6
|
-
"Settings.email.plugin.button.test-email": "发送测试邮件",
|
|
7
|
-
"Settings.email.plugin.label.defaultFrom": "默认发件地址",
|
|
8
|
-
"Settings.email.plugin.label.defaultReplyTo": "默认回复地址",
|
|
9
|
-
"Settings.email.plugin.label.provider": "电子邮件供应商",
|
|
10
|
-
"Settings.email.plugin.title.test": "测试电子邮件发送",
|
|
11
|
-
"Settings.email.plugin.label.testAddress": "收件地址",
|
|
12
|
-
"SettingsNav.link.settings": "电子邮件设置",
|
|
13
|
-
"SettingsNav.section-label": "电子邮件插件",
|
|
14
|
-
"Settings.email.plugin.title": "配置",
|
|
15
|
-
"Settings.email.plugin.subTitle": "测试电子邮件插件的配置",
|
|
16
|
-
"Settings.email.plugin.title.config": "配置",
|
|
17
|
-
"Settings.email.plugin.text.configuration": "通过 {file} 文件来配置插件,打开 {link} 查看文档。"
|
|
18
|
-
};
|
|
19
|
-
exports.default = zhHans;
|
|
20
|
-
exports.link = link;
|
|
21
|
-
//# sourceMappingURL=zh-Hans-CmL3sY9o.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zh-Hans-CmL3sY9o.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
|
package/dist/admin/index.js
DELETED
package/dist/admin/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
package/dist/admin/index.mjs
DELETED
package/dist/admin/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const ProtectedSettingsPage: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { MessageDescriptor, PrimitiveType } from 'react-intl';
|
|
2
|
-
import type { ValidationError } from 'yup';
|
|
3
|
-
interface TranslationMessage extends MessageDescriptor {
|
|
4
|
-
values?: Record<string, PrimitiveType>;
|
|
5
|
-
}
|
|
6
|
-
declare const getYupInnerErrors: (error: ValidationError) => Record<string, TranslationMessage>;
|
|
7
|
-
export { getYupInnerErrors };
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as yup from 'yup';
|
|
2
|
-
export declare const schema: yup.default<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
3
|
-
email: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
|
|
4
|
-
}>, Record<string, any>, import("yup/lib/object").TypeOfShape<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
5
|
-
email: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
|
|
6
|
-
}>>, import("yup/lib/object").AssertsShape<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
7
|
-
email: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
|
|
8
|
-
}>>>;
|
package/dist/server/index.js
DELETED
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const _ = require("lodash");
|
|
3
|
-
const utils = require("@strapi/utils");
|
|
4
|
-
const fp = require("lodash/fp");
|
|
5
|
-
function _interopNamespace(e) {
|
|
6
|
-
if (e && e.__esModule)
|
|
7
|
-
return e;
|
|
8
|
-
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
9
|
-
if (e) {
|
|
10
|
-
for (const k in e) {
|
|
11
|
-
if (k !== "default") {
|
|
12
|
-
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: () => e[k]
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
n.default = e;
|
|
21
|
-
return Object.freeze(n);
|
|
22
|
-
}
|
|
23
|
-
const ___namespace = /* @__PURE__ */ _interopNamespace(_);
|
|
24
|
-
const createProvider = (emailConfig) => {
|
|
25
|
-
const providerName = emailConfig.provider.toLowerCase();
|
|
26
|
-
let provider;
|
|
27
|
-
let modulePath;
|
|
28
|
-
try {
|
|
29
|
-
modulePath = require.resolve(`@strapi/provider-email-${providerName}`);
|
|
30
|
-
} catch (error) {
|
|
31
|
-
if (error instanceof Error && "code" in error && error.code === "MODULE_NOT_FOUND") {
|
|
32
|
-
modulePath = providerName;
|
|
33
|
-
} else {
|
|
34
|
-
throw error;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
try {
|
|
38
|
-
provider = require(modulePath);
|
|
39
|
-
} catch (err) {
|
|
40
|
-
throw new Error(`Could not load email provider "${providerName}".`);
|
|
41
|
-
}
|
|
42
|
-
return provider.init(emailConfig.providerOptions, emailConfig.settings);
|
|
43
|
-
};
|
|
44
|
-
const bootstrap = async ({ strapi: strapi2 }) => {
|
|
45
|
-
const emailConfig = strapi2.config.get("plugin::email");
|
|
46
|
-
strapi2.plugin("email").provider = createProvider(emailConfig);
|
|
47
|
-
const actions = [
|
|
48
|
-
{
|
|
49
|
-
section: "settings",
|
|
50
|
-
category: "email",
|
|
51
|
-
displayName: "Access the Email Settings page",
|
|
52
|
-
uid: "settings.read",
|
|
53
|
-
pluginName: "email"
|
|
54
|
-
}
|
|
55
|
-
];
|
|
56
|
-
await strapi2.service("admin::permission").actionProvider.registerMany(actions);
|
|
57
|
-
};
|
|
58
|
-
const { createStrictInterpolationRegExp } = utils.template;
|
|
59
|
-
const getProviderSettings = () => strapi.config.get("plugin::email");
|
|
60
|
-
const send = async (options) => strapi.plugin("email").provider.send(options);
|
|
61
|
-
const sendTemplatedEmail = (emailOptions, emailTemplate, data) => {
|
|
62
|
-
const attributes = ["subject", "text", "html"];
|
|
63
|
-
const missingAttributes = ___namespace.difference(attributes, Object.keys(emailTemplate));
|
|
64
|
-
if (missingAttributes.length > 0) {
|
|
65
|
-
throw new Error(
|
|
66
|
-
`Following attributes are missing from your email template : ${missingAttributes.join(", ")}`
|
|
67
|
-
);
|
|
68
|
-
}
|
|
69
|
-
const allowedInterpolationVariables = utils.objects.keysDeep(data);
|
|
70
|
-
const interpolate = createStrictInterpolationRegExp(allowedInterpolationVariables, "g");
|
|
71
|
-
const templatedAttributes = attributes.reduce(
|
|
72
|
-
(compiled, attribute) => emailTemplate[attribute] ? Object.assign(compiled, {
|
|
73
|
-
[attribute]: ___namespace.template(emailTemplate[attribute], {
|
|
74
|
-
interpolate
|
|
75
|
-
})(data)
|
|
76
|
-
}) : compiled,
|
|
77
|
-
{}
|
|
78
|
-
);
|
|
79
|
-
return strapi.plugin("email").provider.send({ ...emailOptions, ...templatedAttributes });
|
|
80
|
-
};
|
|
81
|
-
const emailService = () => ({
|
|
82
|
-
getProviderSettings,
|
|
83
|
-
send,
|
|
84
|
-
sendTemplatedEmail
|
|
85
|
-
});
|
|
86
|
-
const services = { email: emailService };
|
|
87
|
-
const admin = {
|
|
88
|
-
type: "admin",
|
|
89
|
-
routes: [
|
|
90
|
-
{
|
|
91
|
-
method: "POST",
|
|
92
|
-
path: "/",
|
|
93
|
-
handler: "email.send",
|
|
94
|
-
config: {
|
|
95
|
-
policies: ["admin::isAuthenticatedAdmin"]
|
|
96
|
-
}
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
method: "POST",
|
|
100
|
-
path: "/test",
|
|
101
|
-
handler: "email.test",
|
|
102
|
-
config: {
|
|
103
|
-
policies: [
|
|
104
|
-
"admin::isAuthenticatedAdmin",
|
|
105
|
-
{ name: "admin::hasPermissions", config: { actions: ["plugin::email.settings.read"] } }
|
|
106
|
-
]
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
method: "GET",
|
|
111
|
-
path: "/settings",
|
|
112
|
-
handler: "email.getSettings",
|
|
113
|
-
config: {
|
|
114
|
-
policies: [
|
|
115
|
-
"admin::isAuthenticatedAdmin",
|
|
116
|
-
{ name: "admin::hasPermissions", config: { actions: ["plugin::email.settings.read"] } }
|
|
117
|
-
]
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
]
|
|
121
|
-
};
|
|
122
|
-
const contentApi = {
|
|
123
|
-
type: "content-api",
|
|
124
|
-
routes: [
|
|
125
|
-
{
|
|
126
|
-
method: "POST",
|
|
127
|
-
path: "/",
|
|
128
|
-
handler: "email.send"
|
|
129
|
-
}
|
|
130
|
-
]
|
|
131
|
-
};
|
|
132
|
-
const routes = {
|
|
133
|
-
admin,
|
|
134
|
-
"content-api": contentApi
|
|
135
|
-
};
|
|
136
|
-
const { ApplicationError } = utils.errors;
|
|
137
|
-
const emailController = {
|
|
138
|
-
async send(ctx) {
|
|
139
|
-
const options = ctx.request.body;
|
|
140
|
-
try {
|
|
141
|
-
await strapi.plugin("email").service("email").send(options);
|
|
142
|
-
} catch (error) {
|
|
143
|
-
if (error instanceof Error) {
|
|
144
|
-
if ("statusCode" in error && error.statusCode === 400) {
|
|
145
|
-
throw new ApplicationError(error.message);
|
|
146
|
-
} else {
|
|
147
|
-
throw new Error(`Couldn't send email: ${error.message}.`);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
ctx.send({});
|
|
152
|
-
},
|
|
153
|
-
async test(ctx) {
|
|
154
|
-
const { to } = ctx.request.body;
|
|
155
|
-
if (!to) {
|
|
156
|
-
throw new ApplicationError("No recipient(s) are given");
|
|
157
|
-
}
|
|
158
|
-
const email = {
|
|
159
|
-
to,
|
|
160
|
-
subject: `Strapi test mail to: ${to}`,
|
|
161
|
-
text: `Great! You have correctly configured the Strapi email plugin with the ${strapi.config.get(
|
|
162
|
-
"plugin::email.provider"
|
|
163
|
-
)} provider. \r
|
|
164
|
-
For documentation on how to use the email plugin checkout: https://docs.strapi.io/developer-docs/latest/plugins/email.html`
|
|
165
|
-
};
|
|
166
|
-
try {
|
|
167
|
-
await strapi.plugin("email").service("email").send(email);
|
|
168
|
-
} catch (error) {
|
|
169
|
-
if (error instanceof Error) {
|
|
170
|
-
if ("statusCode" in error && error.statusCode === 400) {
|
|
171
|
-
throw new ApplicationError(error.message);
|
|
172
|
-
} else {
|
|
173
|
-
throw new Error(`Couldn't send test email: ${error.message}.`);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
ctx.send({});
|
|
178
|
-
},
|
|
179
|
-
async getSettings(ctx) {
|
|
180
|
-
const config2 = strapi.plugin("email").service("email").getProviderSettings();
|
|
181
|
-
ctx.send({
|
|
182
|
-
config: fp.pick(
|
|
183
|
-
["provider", "settings.defaultFrom", "settings.defaultReplyTo", "settings.testAddress"],
|
|
184
|
-
config2
|
|
185
|
-
)
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
};
|
|
189
|
-
const controllers = { email: emailController };
|
|
190
|
-
const config = {
|
|
191
|
-
default: {
|
|
192
|
-
provider: "sendmail",
|
|
193
|
-
providerOptions: {},
|
|
194
|
-
settings: {
|
|
195
|
-
defaultFrom: "Strapi <no-reply@strapi.io>"
|
|
196
|
-
}
|
|
197
|
-
},
|
|
198
|
-
validator() {
|
|
199
|
-
}
|
|
200
|
-
};
|
|
201
|
-
const index = {
|
|
202
|
-
bootstrap,
|
|
203
|
-
services,
|
|
204
|
-
routes,
|
|
205
|
-
controllers,
|
|
206
|
-
config
|
|
207
|
-
};
|
|
208
|
-
module.exports = index;
|
|
209
|
-
//# sourceMappingURL=index.js.map
|
package/dist/server/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../server/src/bootstrap.ts","../../server/src/services/email.ts","../../server/src/services/index.ts","../../server/src/routes/admin.ts","../../server/src/routes/content-api.ts","../../server/src/routes/index.ts","../../server/src/controllers/email.ts","../../server/src/controllers/index.ts","../../server/src/config.ts","../../server/src/index.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { EmailConfig, SendOptions } from './types';\n\ninterface EmailProvider {\n send: (options: SendOptions) => Promise<any>;\n}\n\ninterface EmailProviderModule {\n init: (\n options: EmailConfig['providerOptions'],\n settings: EmailConfig['settings']\n ) => EmailProvider;\n name?: string;\n provider?: string;\n}\n\nconst createProvider = (emailConfig: EmailConfig) => {\n const providerName = emailConfig.provider.toLowerCase();\n let provider: EmailProviderModule;\n\n let modulePath: string;\n try {\n modulePath = require.resolve(`@strapi/provider-email-${providerName}`);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = providerName;\n } else {\n throw error;\n }\n }\n\n try {\n provider = require(modulePath);\n } catch (err) {\n throw new Error(`Could not load email provider \"${providerName}\".`);\n }\n\n return provider.init(emailConfig.providerOptions, emailConfig.settings);\n};\n\nexport const bootstrap = async ({ strapi }: { strapi: Core.Strapi }) => {\n const emailConfig: EmailConfig = strapi.config.get('plugin::email');\n strapi.plugin('email').provider = createProvider(emailConfig);\n\n // Add permissions\n const actions = [\n {\n section: 'settings',\n category: 'email',\n displayName: 'Access the Email Settings page',\n uid: 'settings.read',\n pluginName: 'email',\n },\n ];\n\n await strapi.service('admin::permission').actionProvider.registerMany(actions);\n};\n","import * as _ from 'lodash';\nimport { objects, template } from '@strapi/utils';\n\nimport type {\n EmailConfig,\n EmailOptions,\n EmailTemplate,\n EmailTemplateData,\n SendOptions,\n} from '../types';\n\nconst { createStrictInterpolationRegExp } = template;\n\nconst getProviderSettings = (): EmailConfig => strapi.config.get('plugin::email');\n\nconst send = async (options: SendOptions) => strapi.plugin('email').provider.send(options);\n\n/**\n * fill subject, text and html using lodash template\n * @param {object} emailOptions - to, from and replyto...\n * @param {object} emailTemplate - object containing attributes to fill\n * @param {object} data - data used to fill the template\n * @returns {{ subject, text, subject }}\n */\nconst sendTemplatedEmail = (\n emailOptions: EmailOptions,\n emailTemplate: EmailTemplate,\n data: EmailTemplateData\n) => {\n const attributes = ['subject', 'text', 'html'];\n const missingAttributes = _.difference(attributes, Object.keys(emailTemplate));\n\n if (missingAttributes.length > 0) {\n throw new Error(\n `Following attributes are missing from your email template : ${missingAttributes.join(', ')}`\n );\n }\n\n const allowedInterpolationVariables = objects.keysDeep(data);\n const interpolate = createStrictInterpolationRegExp(allowedInterpolationVariables, 'g');\n\n const templatedAttributes = attributes.reduce(\n (compiled, attribute) =>\n emailTemplate[attribute]\n ? Object.assign(compiled, {\n [attribute]: _.template(emailTemplate[attribute], {\n interpolate,\n })(data),\n })\n : compiled,\n {}\n );\n\n return strapi.plugin('email').provider.send({ ...emailOptions, ...templatedAttributes });\n};\n\nconst emailService = () => ({\n getProviderSettings,\n send,\n sendTemplatedEmail,\n});\n\nexport default emailService;\n","import email from './email';\n\nexport const services = { email };\n","export default {\n type: 'admin',\n routes: [\n {\n method: 'POST',\n path: '/',\n handler: 'email.send',\n config: {\n policies: ['admin::isAuthenticatedAdmin'],\n },\n },\n {\n method: 'POST',\n path: '/test',\n handler: 'email.test',\n config: {\n policies: [\n 'admin::isAuthenticatedAdmin',\n { name: 'admin::hasPermissions', config: { actions: ['plugin::email.settings.read'] } },\n ],\n },\n },\n {\n method: 'GET',\n path: '/settings',\n handler: 'email.getSettings',\n config: {\n policies: [\n 'admin::isAuthenticatedAdmin',\n { name: 'admin::hasPermissions', config: { actions: ['plugin::email.settings.read'] } },\n ],\n },\n },\n ],\n};\n","export default {\n type: 'content-api',\n routes: [\n {\n method: 'POST',\n path: '/',\n handler: 'email.send',\n },\n ],\n};\n","import admin from './admin';\nimport contentApi from './content-api';\n\nexport const routes = {\n admin,\n 'content-api': contentApi,\n};\n","import { pick } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\n\nimport type Koa from 'koa';\nimport type {} from 'koa-body';\nimport type { EmailConfig, SendOptions } from '../types';\n\nconst { ApplicationError } = errors;\n\n/**\n * Email.js controller\n *\n * @description: A set of functions called \"actions\" of the `email` plugin.\n */\nconst emailController = {\n async send(ctx: Koa.Context) {\n const options = ctx.request.body as SendOptions;\n\n try {\n await strapi.plugin('email').service('email').send(options);\n } catch (error) {\n if (error instanceof Error) {\n if ('statusCode' in error && error.statusCode === 400) {\n throw new ApplicationError(error.message);\n } else {\n throw new Error(`Couldn't send email: ${error.message}.`);\n }\n }\n }\n\n // Send 200 `ok`\n ctx.send({});\n },\n\n async test(ctx: Koa.Context) {\n const { to } = ctx.request.body as Pick<SendOptions, 'to'>;\n\n if (!to) {\n throw new ApplicationError('No recipient(s) are given');\n }\n\n const email: SendOptions = {\n to,\n subject: `Strapi test mail to: ${to}`,\n text: `Great! You have correctly configured the Strapi email plugin with the ${strapi.config.get(\n 'plugin::email.provider'\n )} provider. \\r\\nFor documentation on how to use the email plugin checkout: https://docs.strapi.io/developer-docs/latest/plugins/email.html`,\n };\n\n try {\n await strapi.plugin('email').service('email').send(email);\n } catch (error) {\n if (error instanceof Error) {\n if ('statusCode' in error && error.statusCode === 400) {\n throw new ApplicationError(error.message);\n } else {\n throw new Error(`Couldn't send test email: ${error.message}.`);\n }\n }\n }\n\n // Send 200 `ok`\n ctx.send({});\n },\n\n async getSettings(ctx: Koa.Context) {\n const config: EmailConfig = strapi.plugin('email').service('email').getProviderSettings();\n\n ctx.send({\n config: pick(\n ['provider', 'settings.defaultFrom', 'settings.defaultReplyTo', 'settings.testAddress'],\n config\n ),\n });\n },\n};\n\nexport default emailController;\n","import email from './email';\n\nexport const controllers = { email };\n","import type { StrapiConfig } from './types';\n\nexport const config: StrapiConfig = {\n default: {\n provider: 'sendmail',\n providerOptions: {},\n settings: {\n defaultFrom: 'Strapi <no-reply@strapi.io>',\n },\n },\n validator() {},\n};\n","import { bootstrap } from './bootstrap';\nimport { services } from './services';\nimport { routes } from './routes';\nimport { controllers } from './controllers';\nimport { config } from './config';\n\nexport default {\n bootstrap,\n services,\n routes,\n controllers,\n config,\n};\n"],"names":["strapi","template","_","objects","email","errors","config","pick"],"mappings":"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"}
|