@strapi/email 0.0.0-next.e61eff51f9834ffdef16bdc236aecab5f837723b → 0.0.0-next.e822ba8a3443f5fce869d85539f9fdaa02e10639
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/dist/admin/constants.js +17 -0
- package/dist/admin/constants.js.map +1 -0
- package/dist/admin/constants.mjs +15 -0
- package/dist/admin/constants.mjs.map +1 -0
- package/dist/admin/index.js +86 -2
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +87 -1
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/{chunks/Settings-BBq0I4Nx.js → pages/Settings.js} +21 -38
- package/dist/admin/pages/Settings.js.map +1 -0
- package/dist/admin/{chunks/Settings-PuQuVXHu.mjs → pages/Settings.mjs} +18 -35
- package/dist/admin/pages/Settings.mjs.map +1 -0
- package/dist/admin/translations/ar.json.js +6 -0
- package/dist/admin/translations/ar.json.js.map +1 -0
- package/dist/admin/translations/ar.json.mjs +4 -0
- package/dist/admin/translations/ar.json.mjs.map +1 -0
- package/dist/admin/translations/cs.json.js +6 -0
- package/dist/admin/translations/cs.json.js.map +1 -0
- package/dist/admin/translations/cs.json.mjs +4 -0
- package/dist/admin/translations/cs.json.mjs.map +1 -0
- package/dist/admin/translations/de.json.js +6 -0
- package/dist/admin/translations/de.json.js.map +1 -0
- package/dist/admin/translations/de.json.mjs +4 -0
- package/dist/admin/translations/de.json.mjs.map +1 -0
- package/dist/admin/{chunks/dk-DW7WecjY.js → translations/dk.json.js} +2 -2
- package/dist/admin/translations/dk.json.js.map +1 -0
- package/dist/admin/{chunks/dk-B5IuEReS.mjs → translations/dk.json.mjs} +1 -1
- package/dist/admin/translations/dk.json.mjs.map +1 -0
- package/dist/admin/{chunks/en-DacnIsXb.js → translations/en.json.js} +3 -1
- package/dist/admin/translations/en.json.js.map +1 -0
- package/dist/admin/{chunks/en-Dxg2wKLN.mjs → translations/en.json.mjs} +1 -1
- package/dist/admin/translations/en.json.mjs.map +1 -0
- package/dist/admin/{chunks/es-DxWi6BKM.js → translations/es.json.js} +2 -2
- package/dist/admin/translations/es.json.js.map +1 -0
- package/dist/admin/{chunks/es-fdc21M_E.mjs → translations/es.json.mjs} +1 -1
- package/dist/admin/translations/es.json.mjs.map +1 -0
- package/dist/admin/translations/fr.json.js +6 -0
- package/dist/admin/translations/fr.json.js.map +1 -0
- package/dist/admin/translations/fr.json.mjs +4 -0
- package/dist/admin/translations/fr.json.mjs.map +1 -0
- package/dist/admin/translations/id.json.js +6 -0
- package/dist/admin/translations/id.json.js.map +1 -0
- package/dist/admin/translations/id.json.mjs +4 -0
- package/dist/admin/translations/id.json.mjs.map +1 -0
- package/dist/admin/translations/it.json.js +6 -0
- package/dist/admin/translations/it.json.js.map +1 -0
- package/dist/admin/translations/it.json.mjs +4 -0
- package/dist/admin/translations/it.json.mjs.map +1 -0
- package/dist/admin/{chunks/ja-DdOPbVbe.js → translations/ja.json.js} +2 -2
- package/dist/admin/translations/ja.json.js.map +1 -0
- package/dist/admin/{chunks/ja-CVosbw2M.mjs → translations/ja.json.mjs} +1 -1
- package/dist/admin/translations/ja.json.mjs.map +1 -0
- package/dist/admin/{chunks/ko-CaWqWfC8.js → translations/ko.json.js} +2 -2
- package/dist/admin/translations/ko.json.js.map +1 -0
- package/dist/admin/{chunks/ko-B8SR--vZ.mjs → translations/ko.json.mjs} +1 -1
- package/dist/admin/translations/ko.json.mjs.map +1 -0
- package/dist/admin/translations/ms.json.js +6 -0
- package/dist/admin/translations/ms.json.js.map +1 -0
- package/dist/admin/translations/ms.json.mjs +4 -0
- package/dist/admin/translations/ms.json.mjs.map +1 -0
- package/dist/admin/translations/nl.json.js +6 -0
- package/dist/admin/translations/nl.json.js.map +1 -0
- package/dist/admin/translations/nl.json.mjs +4 -0
- package/dist/admin/translations/nl.json.mjs.map +1 -0
- package/dist/admin/{chunks/pl-CO-R08qV.js → translations/pl.json.js} +2 -2
- package/dist/admin/translations/pl.json.js.map +1 -0
- package/dist/admin/{chunks/pl-Bve39qfV.mjs → translations/pl.json.mjs} +1 -1
- package/dist/admin/translations/pl.json.mjs.map +1 -0
- package/dist/admin/translations/pt-BR.json.js +6 -0
- package/dist/admin/translations/pt-BR.json.js.map +1 -0
- package/dist/admin/{chunks/pt-BR-DPqDE4wA.mjs → translations/pt-BR.json.mjs} +1 -1
- package/dist/admin/translations/pt-BR.json.mjs.map +1 -0
- package/dist/admin/{chunks/pt-BzFac2P5.js → translations/pt.json.js} +3 -1
- package/dist/admin/translations/pt.json.js.map +1 -0
- package/dist/admin/{chunks/pt-DLqF-Sb4.mjs → translations/pt.json.mjs} +1 -1
- package/dist/admin/translations/pt.json.mjs.map +1 -0
- package/dist/admin/translations/ru.json.js +32 -0
- package/dist/admin/translations/ru.json.js.map +1 -0
- package/dist/admin/translations/ru.json.mjs +27 -0
- package/dist/admin/translations/ru.json.mjs.map +1 -0
- package/dist/admin/translations/sk.json.js +6 -0
- package/dist/admin/translations/sk.json.js.map +1 -0
- package/dist/admin/translations/sk.json.mjs +4 -0
- package/dist/admin/translations/sk.json.mjs.map +1 -0
- package/dist/admin/translations/th.json.js +6 -0
- package/dist/admin/translations/th.json.js.map +1 -0
- package/dist/admin/translations/th.json.mjs +4 -0
- package/dist/admin/translations/th.json.mjs.map +1 -0
- package/dist/admin/{chunks/tr-n7J_y4Bh.js → translations/tr.json.js} +3 -1
- package/dist/admin/translations/tr.json.js.map +1 -0
- package/dist/admin/{chunks/tr-BmrcZCoj.mjs → translations/tr.json.mjs} +1 -1
- package/dist/admin/translations/tr.json.mjs.map +1 -0
- package/dist/admin/{chunks/uk-DWA4QHtk.js → translations/uk.json.js} +3 -1
- package/dist/admin/translations/uk.json.js.map +1 -0
- package/dist/admin/{chunks/uk-Dsq-0GyK.mjs → translations/uk.json.mjs} +1 -1
- package/dist/admin/translations/uk.json.mjs.map +1 -0
- package/dist/admin/translations/vi.json.js +6 -0
- package/dist/admin/translations/vi.json.js.map +1 -0
- package/dist/admin/translations/vi.json.mjs +4 -0
- package/dist/admin/translations/vi.json.mjs.map +1 -0
- package/dist/admin/{chunks/zh-Hans-D0bb9tfC.js → translations/zh-Hans.json.js} +3 -1
- package/dist/admin/translations/zh-Hans.json.js.map +1 -0
- package/dist/admin/{chunks/zh-Hans-ChWc00HT.mjs → translations/zh-Hans.json.mjs} +1 -1
- package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
- package/dist/admin/{chunks/zh-9wNbbqde.js → translations/zh.json.js} +3 -1
- package/dist/admin/translations/zh.json.js.map +1 -0
- package/dist/admin/{chunks/zh-CZQ4DV5L.mjs → translations/zh.json.mjs} +1 -1
- package/dist/admin/translations/zh.json.mjs.map +1 -0
- package/dist/admin/utils/getYupInnerErrors.js +23 -0
- package/dist/admin/utils/getYupInnerErrors.js.map +1 -0
- package/dist/admin/utils/getYupInnerErrors.mjs +21 -0
- package/dist/admin/utils/getYupInnerErrors.mjs.map +1 -0
- package/dist/admin/utils/prefixPluginTranslations.js +11 -0
- package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
- package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
- package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
- package/dist/admin/utils/schema.js +30 -0
- package/dist/admin/utils/schema.js.map +1 -0
- package/dist/admin/utils/schema.mjs +9 -0
- package/dist/admin/utils/schema.mjs.map +1 -0
- package/dist/server/bootstrap.js +44 -0
- package/dist/server/bootstrap.js.map +1 -0
- package/dist/server/bootstrap.mjs +42 -0
- package/dist/server/bootstrap.mjs.map +1 -0
- package/dist/server/config.js +15 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/config.mjs +13 -0
- package/dist/server/config.mjs.map +1 -0
- package/dist/server/controllers/email.js +66 -0
- package/dist/server/controllers/email.js.map +1 -0
- package/dist/server/controllers/email.mjs +64 -0
- package/dist/server/controllers/email.mjs.map +1 -0
- package/dist/server/controllers/index.js +10 -0
- package/dist/server/controllers/index.js.map +1 -0
- package/dist/server/controllers/index.mjs +8 -0
- package/dist/server/controllers/index.mjs.map +1 -0
- package/dist/server/index.js +12 -281
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +6 -256
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/middlewares/index.js +13 -0
- package/dist/server/middlewares/index.js.map +1 -0
- package/dist/server/middlewares/index.mjs +8 -0
- package/dist/server/middlewares/index.mjs.map +1 -0
- package/dist/server/middlewares/rateLimit.js +37 -0
- package/dist/server/middlewares/rateLimit.js.map +1 -0
- package/dist/server/middlewares/rateLimit.mjs +35 -0
- package/dist/server/middlewares/rateLimit.mjs.map +1 -0
- package/dist/server/routes/admin.js +56 -0
- package/dist/server/routes/admin.js.map +1 -0
- package/dist/server/routes/admin.mjs +54 -0
- package/dist/server/routes/admin.mjs.map +1 -0
- package/dist/server/routes/content-api.js +24 -0
- package/dist/server/routes/content-api.js.map +1 -0
- package/dist/server/routes/content-api.mjs +22 -0
- package/dist/server/routes/content-api.mjs.map +1 -0
- package/dist/server/routes/index.js +12 -0
- package/dist/server/routes/index.js.map +1 -0
- package/dist/server/routes/index.mjs +10 -0
- package/dist/server/routes/index.mjs.map +1 -0
- package/dist/server/routes/validation/email.js +46 -0
- package/dist/server/routes/validation/email.js.map +1 -0
- package/dist/server/routes/validation/email.mjs +25 -0
- package/dist/server/routes/validation/email.mjs.map +1 -0
- package/dist/server/services/email.js +63 -0
- package/dist/server/services/email.js.map +1 -0
- package/dist/server/services/email.mjs +42 -0
- package/dist/server/services/email.mjs.map +1 -0
- package/dist/server/services/index.js +10 -0
- package/dist/server/services/index.js.map +1 -0
- package/dist/server/services/index.mjs +8 -0
- package/dist/server/services/index.mjs.map +1 -0
- package/dist/server/src/bootstrap.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +3 -7
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/routes/content-api.d.ts +5 -8
- package/dist/server/src/routes/content-api.d.ts.map +1 -1
- package/dist/server/src/routes/index.d.ts +3 -7
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/routes/validation/email.d.ts +18 -0
- package/dist/server/src/routes/validation/email.d.ts.map +1 -0
- package/dist/server/src/routes/validation/index.d.ts +2 -0
- package/dist/server/src/routes/validation/index.d.ts.map +1 -0
- package/package.json +12 -11
- package/dist/admin/chunks/Settings-BBq0I4Nx.js.map +0 -1
- package/dist/admin/chunks/Settings-PuQuVXHu.mjs.map +0 -1
- package/dist/admin/chunks/ar-BDHMRt_b.js +0 -6
- package/dist/admin/chunks/ar-BDHMRt_b.js.map +0 -1
- package/dist/admin/chunks/ar-JWJKrFM-.mjs +0 -4
- package/dist/admin/chunks/ar-JWJKrFM-.mjs.map +0 -1
- package/dist/admin/chunks/cs-BZCMeXgq.mjs +0 -4
- package/dist/admin/chunks/cs-BZCMeXgq.mjs.map +0 -1
- package/dist/admin/chunks/cs-DrOn3eR2.js +0 -6
- package/dist/admin/chunks/cs-DrOn3eR2.js.map +0 -1
- package/dist/admin/chunks/de-BlqtkWR3.js +0 -6
- package/dist/admin/chunks/de-BlqtkWR3.js.map +0 -1
- package/dist/admin/chunks/de-CGlAhulB.mjs +0 -4
- package/dist/admin/chunks/de-CGlAhulB.mjs.map +0 -1
- package/dist/admin/chunks/dk-B5IuEReS.mjs.map +0 -1
- package/dist/admin/chunks/dk-DW7WecjY.js.map +0 -1
- package/dist/admin/chunks/en-DacnIsXb.js.map +0 -1
- package/dist/admin/chunks/en-Dxg2wKLN.mjs.map +0 -1
- package/dist/admin/chunks/es-DxWi6BKM.js.map +0 -1
- package/dist/admin/chunks/es-fdc21M_E.mjs.map +0 -1
- package/dist/admin/chunks/fr-BsENAPSS.js +0 -6
- package/dist/admin/chunks/fr-BsENAPSS.js.map +0 -1
- package/dist/admin/chunks/fr-DZjvYp6C.mjs +0 -4
- package/dist/admin/chunks/fr-DZjvYp6C.mjs.map +0 -1
- package/dist/admin/chunks/id-BORUwKHm.js +0 -6
- package/dist/admin/chunks/id-BORUwKHm.js.map +0 -1
- package/dist/admin/chunks/id-C1eDxX9W.mjs +0 -4
- package/dist/admin/chunks/id-C1eDxX9W.mjs.map +0 -1
- package/dist/admin/chunks/index-BPAZGe7V.mjs +0 -105
- package/dist/admin/chunks/index-BPAZGe7V.mjs.map +0 -1
- package/dist/admin/chunks/index-uY5sPjIN.js +0 -108
- package/dist/admin/chunks/index-uY5sPjIN.js.map +0 -1
- package/dist/admin/chunks/it-DVlJ2EhA.mjs +0 -4
- package/dist/admin/chunks/it-DVlJ2EhA.mjs.map +0 -1
- package/dist/admin/chunks/it-eAGyIQ1x.js +0 -6
- package/dist/admin/chunks/it-eAGyIQ1x.js.map +0 -1
- package/dist/admin/chunks/ja-CVosbw2M.mjs.map +0 -1
- package/dist/admin/chunks/ja-DdOPbVbe.js.map +0 -1
- package/dist/admin/chunks/ko-B8SR--vZ.mjs.map +0 -1
- package/dist/admin/chunks/ko-CaWqWfC8.js.map +0 -1
- package/dist/admin/chunks/ms-CrRuDILn.js +0 -6
- package/dist/admin/chunks/ms-CrRuDILn.js.map +0 -1
- package/dist/admin/chunks/ms-DLngEN2_.mjs +0 -4
- package/dist/admin/chunks/ms-DLngEN2_.mjs.map +0 -1
- package/dist/admin/chunks/nl-B6Q0VF48.mjs +0 -4
- package/dist/admin/chunks/nl-B6Q0VF48.mjs.map +0 -1
- package/dist/admin/chunks/nl-BMsBb10t.js +0 -6
- package/dist/admin/chunks/nl-BMsBb10t.js.map +0 -1
- package/dist/admin/chunks/pl-Bve39qfV.mjs.map +0 -1
- package/dist/admin/chunks/pl-CO-R08qV.js.map +0 -1
- package/dist/admin/chunks/pt-BR-CBzJhkyg.js +0 -6
- package/dist/admin/chunks/pt-BR-CBzJhkyg.js.map +0 -1
- package/dist/admin/chunks/pt-BR-DPqDE4wA.mjs.map +0 -1
- package/dist/admin/chunks/pt-BzFac2P5.js.map +0 -1
- package/dist/admin/chunks/pt-DLqF-Sb4.mjs.map +0 -1
- package/dist/admin/chunks/ru-DnqOAZDX.js +0 -6
- package/dist/admin/chunks/ru-DnqOAZDX.js.map +0 -1
- package/dist/admin/chunks/ru-rmFYdvwh.mjs +0 -4
- package/dist/admin/chunks/ru-rmFYdvwh.mjs.map +0 -1
- package/dist/admin/chunks/sk-DDJmUHcx.mjs +0 -4
- package/dist/admin/chunks/sk-DDJmUHcx.mjs.map +0 -1
- package/dist/admin/chunks/sk-N47IGfwH.js +0 -6
- package/dist/admin/chunks/sk-N47IGfwH.js.map +0 -1
- package/dist/admin/chunks/th-BqTCSpUc.mjs +0 -4
- package/dist/admin/chunks/th-BqTCSpUc.mjs.map +0 -1
- package/dist/admin/chunks/th-OW3_QVEZ.js +0 -6
- package/dist/admin/chunks/th-OW3_QVEZ.js.map +0 -1
- package/dist/admin/chunks/tr-BmrcZCoj.mjs.map +0 -1
- package/dist/admin/chunks/tr-n7J_y4Bh.js.map +0 -1
- package/dist/admin/chunks/uk-DWA4QHtk.js.map +0 -1
- package/dist/admin/chunks/uk-Dsq-0GyK.mjs.map +0 -1
- package/dist/admin/chunks/vi-CO9gCtmD.mjs +0 -4
- package/dist/admin/chunks/vi-CO9gCtmD.mjs.map +0 -1
- package/dist/admin/chunks/vi-DjJBc-ms.js +0 -6
- package/dist/admin/chunks/vi-DjJBc-ms.js.map +0 -1
- package/dist/admin/chunks/zh-9wNbbqde.js.map +0 -1
- package/dist/admin/chunks/zh-CZQ4DV5L.mjs.map +0 -1
- package/dist/admin/chunks/zh-Hans-ChWc00HT.mjs.map +0 -1
- package/dist/admin/chunks/zh-Hans-D0bb9tfC.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vi.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
3
5
|
var link = "链接";
|
|
4
6
|
var zhHans = {
|
|
5
7
|
link: link,
|
|
@@ -19,4 +21,4 @@ var zhHans = {
|
|
|
19
21
|
|
|
20
22
|
exports.default = zhHans;
|
|
21
23
|
exports.link = link;
|
|
22
|
-
//# sourceMappingURL=zh-Hans
|
|
24
|
+
//# sourceMappingURL=zh-Hans.json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh-Hans.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh-Hans.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
3
5
|
var link = "連結";
|
|
4
6
|
var zh = {
|
|
5
7
|
link: link,
|
|
@@ -27,4 +29,4 @@ var zh = {
|
|
|
27
29
|
|
|
28
30
|
exports.default = zh;
|
|
29
31
|
exports.link = link;
|
|
30
|
-
//# sourceMappingURL=zh
|
|
32
|
+
//# sourceMappingURL=zh.json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const extractValuesFromYupError = (errorType, errorParams)=>{
|
|
4
|
+
if (!errorType || !errorParams) {
|
|
5
|
+
return {};
|
|
6
|
+
}
|
|
7
|
+
return {
|
|
8
|
+
[errorType]: errorParams[errorType]
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
const getYupInnerErrors = (error)=>(error?.inner || []).reduce((acc, currentError)=>{
|
|
12
|
+
if (currentError.path) {
|
|
13
|
+
acc[currentError.path.split('[').join('.').split(']').join('')] = {
|
|
14
|
+
id: currentError.message,
|
|
15
|
+
defaultMessage: currentError.message,
|
|
16
|
+
values: extractValuesFromYupError(currentError?.type, currentError?.params)
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
return acc;
|
|
20
|
+
}, {});
|
|
21
|
+
|
|
22
|
+
exports.getYupInnerErrors = getYupInnerErrors;
|
|
23
|
+
//# sourceMappingURL=getYupInnerErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getYupInnerErrors.js","sources":["../../../admin/src/utils/getYupInnerErrors.ts"],"sourcesContent":["import type { MessageDescriptor, PrimitiveType } from 'react-intl';\nimport type { ValidationError } from 'yup';\n\ninterface TranslationMessage extends MessageDescriptor {\n values?: Record<string, PrimitiveType>;\n}\n\nconst extractValuesFromYupError = (\n errorType?: string | undefined,\n errorParams?: Record<string, any> | undefined\n) => {\n if (!errorType || !errorParams) {\n return {};\n }\n\n return {\n [errorType]: errorParams[errorType],\n };\n};\n\nconst getYupInnerErrors = (error: ValidationError) =>\n (error?.inner || []).reduce<Record<string, TranslationMessage>>((acc, currentError) => {\n if (currentError.path) {\n acc[currentError.path.split('[').join('.').split(']').join('')] = {\n id: currentError.message,\n defaultMessage: currentError.message,\n values: extractValuesFromYupError(currentError?.type, currentError?.params),\n };\n }\n\n return acc;\n }, {});\n\nexport { getYupInnerErrors };\n"],"names":["extractValuesFromYupError","errorType","errorParams","getYupInnerErrors","error","inner","reduce","acc","currentError","path","split","join","id","message","defaultMessage","values","type","params"],"mappings":";;AAOA,MAAMA,yBAAAA,GAA4B,CAChCC,SACAC,EAAAA,WAAAA,GAAAA;IAEA,IAAI,CAACD,SAAa,IAAA,CAACC,WAAa,EAAA;AAC9B,QAAA,OAAO,EAAC;AACV;IAEA,OAAO;AACL,QAAA,CAACD,SAAU,GAAEC,WAAW,CAACD,SAAU;AACrC,KAAA;AACF,CAAA;AAEA,MAAME,iBAAoB,GAAA,CAACC,KACzB,GAACA,CAAAA,KAAAA,EAAOC,KAAS,IAAA,EAAE,EAAEC,MAAM,CAAqC,CAACC,GAAKC,EAAAA,YAAAA,GAAAA;QACpE,IAAIA,YAAAA,CAAaC,IAAI,EAAE;AACrBF,YAAAA,GAAG,CAACC,YAAaC,CAAAA,IAAI,CAACC,KAAK,CAAC,GAAKC,CAAAA,CAAAA,IAAI,CAAC,GAAA,CAAA,CAAKD,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,IAAI,GAAG;AAChEC,gBAAAA,EAAAA,EAAIJ,aAAaK,OAAO;AACxBC,gBAAAA,cAAAA,EAAgBN,aAAaK,OAAO;gBACpCE,MAAQf,EAAAA,yBAAAA,CAA0BQ,YAAcQ,EAAAA,IAAAA,EAAMR,YAAcS,EAAAA,MAAAA;AACtE,aAAA;AACF;QAEA,OAAOV,GAAAA;AACT,KAAA,EAAG,EAAC;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const extractValuesFromYupError = (errorType, errorParams)=>{
|
|
2
|
+
if (!errorType || !errorParams) {
|
|
3
|
+
return {};
|
|
4
|
+
}
|
|
5
|
+
return {
|
|
6
|
+
[errorType]: errorParams[errorType]
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
const getYupInnerErrors = (error)=>(error?.inner || []).reduce((acc, currentError)=>{
|
|
10
|
+
if (currentError.path) {
|
|
11
|
+
acc[currentError.path.split('[').join('.').split(']').join('')] = {
|
|
12
|
+
id: currentError.message,
|
|
13
|
+
defaultMessage: currentError.message,
|
|
14
|
+
values: extractValuesFromYupError(currentError?.type, currentError?.params)
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
return acc;
|
|
18
|
+
}, {});
|
|
19
|
+
|
|
20
|
+
export { getYupInnerErrors };
|
|
21
|
+
//# sourceMappingURL=getYupInnerErrors.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getYupInnerErrors.mjs","sources":["../../../admin/src/utils/getYupInnerErrors.ts"],"sourcesContent":["import type { MessageDescriptor, PrimitiveType } from 'react-intl';\nimport type { ValidationError } from 'yup';\n\ninterface TranslationMessage extends MessageDescriptor {\n values?: Record<string, PrimitiveType>;\n}\n\nconst extractValuesFromYupError = (\n errorType?: string | undefined,\n errorParams?: Record<string, any> | undefined\n) => {\n if (!errorType || !errorParams) {\n return {};\n }\n\n return {\n [errorType]: errorParams[errorType],\n };\n};\n\nconst getYupInnerErrors = (error: ValidationError) =>\n (error?.inner || []).reduce<Record<string, TranslationMessage>>((acc, currentError) => {\n if (currentError.path) {\n acc[currentError.path.split('[').join('.').split(']').join('')] = {\n id: currentError.message,\n defaultMessage: currentError.message,\n values: extractValuesFromYupError(currentError?.type, currentError?.params),\n };\n }\n\n return acc;\n }, {});\n\nexport { getYupInnerErrors };\n"],"names":["extractValuesFromYupError","errorType","errorParams","getYupInnerErrors","error","inner","reduce","acc","currentError","path","split","join","id","message","defaultMessage","values","type","params"],"mappings":"AAOA,MAAMA,yBAAAA,GAA4B,CAChCC,SACAC,EAAAA,WAAAA,GAAAA;IAEA,IAAI,CAACD,SAAa,IAAA,CAACC,WAAa,EAAA;AAC9B,QAAA,OAAO,EAAC;AACV;IAEA,OAAO;AACL,QAAA,CAACD,SAAU,GAAEC,WAAW,CAACD,SAAU;AACrC,KAAA;AACF,CAAA;AAEA,MAAME,iBAAoB,GAAA,CAACC,KACzB,GAACA,CAAAA,KAAAA,EAAOC,KAAS,IAAA,EAAE,EAAEC,MAAM,CAAqC,CAACC,GAAKC,EAAAA,YAAAA,GAAAA;QACpE,IAAIA,YAAAA,CAAaC,IAAI,EAAE;AACrBF,YAAAA,GAAG,CAACC,YAAaC,CAAAA,IAAI,CAACC,KAAK,CAAC,GAAKC,CAAAA,CAAAA,IAAI,CAAC,GAAA,CAAA,CAAKD,KAAK,CAAC,GAAA,CAAA,CAAKC,IAAI,CAAC,IAAI,GAAG;AAChEC,gBAAAA,EAAAA,EAAIJ,aAAaK,OAAO;AACxBC,gBAAAA,cAAAA,EAAgBN,aAAaK,OAAO;gBACpCE,MAAQf,EAAAA,yBAAAA,CAA0BQ,YAAcQ,EAAAA,IAAAA,EAAMR,YAAcS,EAAAA,MAAAA;AACtE,aAAA;AACF;QAEA,OAAOV,GAAAA;AACT,KAAA,EAAG,EAAC;;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const prefixPluginTranslations = (trad, pluginId)=>{
|
|
4
|
+
return Object.keys(trad).reduce((acc, current)=>{
|
|
5
|
+
acc[`${pluginId}.${current}`] = trad[current];
|
|
6
|
+
return acc;
|
|
7
|
+
}, {});
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
exports.prefixPluginTranslations = prefixPluginTranslations;
|
|
11
|
+
//# sourceMappingURL=prefixPluginTranslations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prefixPluginTranslations.js","sources":["../../../admin/src/utils/prefixPluginTranslations.ts"],"sourcesContent":["type TradOptions = Record<string, string>;\n\nconst prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n return acc;\n }, {} as TradOptions);\n};\n\nexport { prefixPluginTranslations };\n"],"names":["prefixPluginTranslations","trad","pluginId","Object","keys","reduce","acc","current"],"mappings":";;AAEMA,MAAAA,wBAAAA,GAA2B,CAACC,IAAmBC,EAAAA,QAAAA,GAAAA;AAInD,IAAA,OAAOC,OAAOC,IAAI,CAACH,MAAMI,MAAM,CAAC,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;QACpCD,GAAG,CAAC,CAAGJ,EAAAA,QAAAA,CAAS,CAAC,EAAEK,SAAS,CAAC,GAAGN,IAAI,CAACM,OAAQ,CAAA;QAC7C,OAAOD,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const prefixPluginTranslations = (trad, pluginId)=>{
|
|
2
|
+
return Object.keys(trad).reduce((acc, current)=>{
|
|
3
|
+
acc[`${pluginId}.${current}`] = trad[current];
|
|
4
|
+
return acc;
|
|
5
|
+
}, {});
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export { prefixPluginTranslations };
|
|
9
|
+
//# sourceMappingURL=prefixPluginTranslations.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prefixPluginTranslations.mjs","sources":["../../../admin/src/utils/prefixPluginTranslations.ts"],"sourcesContent":["type TradOptions = Record<string, string>;\n\nconst prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n return acc;\n }, {} as TradOptions);\n};\n\nexport { prefixPluginTranslations };\n"],"names":["prefixPluginTranslations","trad","pluginId","Object","keys","reduce","acc","current"],"mappings":"AAEMA,MAAAA,wBAAAA,GAA2B,CAACC,IAAmBC,EAAAA,QAAAA,GAAAA;AAInD,IAAA,OAAOC,OAAOC,IAAI,CAACH,MAAMI,MAAM,CAAC,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;QACpCD,GAAG,CAAC,CAAGJ,EAAAA,QAAAA,CAAS,CAAC,EAAEK,SAAS,CAAC,GAAGN,IAAI,CAACM,OAAQ,CAAA;QAC7C,OAAOD,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var strapiAdmin = require('@strapi/admin/strapi-admin');
|
|
4
|
+
var yup = require('yup');
|
|
5
|
+
|
|
6
|
+
function _interopNamespaceDefault(e) {
|
|
7
|
+
var n = Object.create(null);
|
|
8
|
+
if (e) {
|
|
9
|
+
Object.keys(e).forEach(function (k) {
|
|
10
|
+
if (k !== 'default') {
|
|
11
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
12
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () { return e[k]; }
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
n.default = e;
|
|
20
|
+
return Object.freeze(n);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
|
|
24
|
+
|
|
25
|
+
const schema = yup__namespace.object().shape({
|
|
26
|
+
email: yup__namespace.string().email(strapiAdmin.translatedErrors.email.id).required(strapiAdmin.translatedErrors.required.id)
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
exports.schema = schema;
|
|
30
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sources":["../../../admin/src/utils/schema.ts"],"sourcesContent":["import { translatedErrors } from '@strapi/admin/strapi-admin';\nimport * as yup from 'yup';\n\nexport const schema = yup.object().shape({\n email: yup.string().email(translatedErrors.email.id).required(translatedErrors.required.id),\n});\n"],"names":["schema","yup","object","shape","email","string","translatedErrors","id","required"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;MAGaA,MAASC,GAAAA,cAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AACvCC,IAAAA,KAAAA,EAAOH,cAAII,CAAAA,MAAM,EAAGD,CAAAA,KAAK,CAACE,4BAAiBF,CAAAA,KAAK,CAACG,EAAE,EAAEC,QAAQ,CAACF,4BAAiBE,CAAAA,QAAQ,CAACD,EAAE;AAC5F,CAAG;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { translatedErrors } from '@strapi/admin/strapi-admin';
|
|
2
|
+
import * as yup from 'yup';
|
|
3
|
+
|
|
4
|
+
const schema = yup.object().shape({
|
|
5
|
+
email: yup.string().email(translatedErrors.email.id).required(translatedErrors.required.id)
|
|
6
|
+
});
|
|
7
|
+
|
|
8
|
+
export { schema };
|
|
9
|
+
//# sourceMappingURL=schema.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.mjs","sources":["../../../admin/src/utils/schema.ts"],"sourcesContent":["import { translatedErrors } from '@strapi/admin/strapi-admin';\nimport * as yup from 'yup';\n\nexport const schema = yup.object().shape({\n email: yup.string().email(translatedErrors.email.id).required(translatedErrors.required.id),\n});\n"],"names":["schema","yup","object","shape","email","string","translatedErrors","id","required"],"mappings":";;;MAGaA,MAASC,GAAAA,GAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AACvCC,IAAAA,KAAAA,EAAOH,GAAII,CAAAA,MAAM,EAAGD,CAAAA,KAAK,CAACE,gBAAiBF,CAAAA,KAAK,CAACG,EAAE,EAAEC,QAAQ,CAACF,gBAAiBE,CAAAA,QAAQ,CAACD,EAAE;AAC5F,CAAG;;;;"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const createProvider = (emailConfig)=>{
|
|
4
|
+
const providerName = emailConfig.provider.toLowerCase();
|
|
5
|
+
let provider;
|
|
6
|
+
let modulePath;
|
|
7
|
+
try {
|
|
8
|
+
modulePath = require.resolve(`@strapi/provider-email-${providerName}`);
|
|
9
|
+
} catch (error) {
|
|
10
|
+
if (error !== null && typeof error === 'object' && 'code' in error && error.code === 'MODULE_NOT_FOUND') {
|
|
11
|
+
modulePath = providerName;
|
|
12
|
+
} else {
|
|
13
|
+
throw error;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
try {
|
|
17
|
+
provider = require(modulePath);
|
|
18
|
+
} catch (err) {
|
|
19
|
+
const newError = new Error(`Could not load email provider "${providerName}".`);
|
|
20
|
+
if (err instanceof Error) {
|
|
21
|
+
newError.stack = err.stack;
|
|
22
|
+
}
|
|
23
|
+
throw newError;
|
|
24
|
+
}
|
|
25
|
+
return provider.init(emailConfig.providerOptions, emailConfig.settings);
|
|
26
|
+
};
|
|
27
|
+
const bootstrap = async ({ strapi })=>{
|
|
28
|
+
const emailConfig = strapi.config.get('plugin::email');
|
|
29
|
+
strapi.plugin('email').provider = createProvider(emailConfig);
|
|
30
|
+
// Add permissions
|
|
31
|
+
const actions = [
|
|
32
|
+
{
|
|
33
|
+
section: 'settings',
|
|
34
|
+
category: 'email',
|
|
35
|
+
displayName: 'Access the Email Settings page',
|
|
36
|
+
uid: 'settings.read',
|
|
37
|
+
pluginName: 'email'
|
|
38
|
+
}
|
|
39
|
+
];
|
|
40
|
+
await strapi.service('admin::permission').actionProvider.registerMany(actions);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
exports.bootstrap = bootstrap;
|
|
44
|
+
//# sourceMappingURL=bootstrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sources":["../../server/src/bootstrap.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 (\n error !== null &&\n typeof error === 'object' &&\n 'code' in error &&\n error.code === 'MODULE_NOT_FOUND'\n ) {\n modulePath = providerName;\n } else {\n throw error;\n }\n }\n\n try {\n provider = require(modulePath);\n } catch (err) {\n const newError = new Error(`Could not load email provider \"${providerName}\".`);\n if (err instanceof Error) {\n newError.stack = err.stack;\n }\n throw newError;\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"],"names":["createProvider","emailConfig","providerName","provider","toLowerCase","modulePath","require","resolve","error","code","err","newError","Error","stack","init","providerOptions","settings","bootstrap","strapi","config","get","plugin","actions","section","category","displayName","uid","pluginName","service","actionProvider","registerMany"],"mappings":";;AAgBA,MAAMA,iBAAiB,CAACC,WAAAA,GAAAA;AACtB,IAAA,MAAMC,YAAeD,GAAAA,WAAAA,CAAYE,QAAQ,CAACC,WAAW,EAAA;IACrD,IAAID,QAAAA;IAEJ,IAAIE,UAAAA;IACJ,IAAI;AACFA,QAAAA,UAAAA,GAAaC,QAAQC,OAAO,CAAC,CAAC,uBAAuB,EAAEL,YAAc,CAAA,CAAA,CAAA;AACvE,KAAA,CAAE,OAAOM,KAAO,EAAA;QACd,IACEA,KAAAA,KAAU,IACV,IAAA,OAAOA,KAAU,KAAA,QAAA,IACjB,UAAUA,KACVA,IAAAA,KAAAA,CAAMC,IAAI,KAAK,kBACf,EAAA;YACAJ,UAAaH,GAAAA,YAAAA;SACR,MAAA;YACL,MAAMM,KAAAA;AACR;AACF;IAEA,IAAI;AACFL,QAAAA,QAAAA,GAAWG,OAAQD,CAAAA,UAAAA,CAAAA;AACrB,KAAA,CAAE,OAAOK,GAAK,EAAA;QACZ,MAAMC,QAAAA,GAAW,IAAIC,KAAM,CAAA,CAAC,+BAA+B,EAAEV,YAAAA,CAAa,EAAE,CAAC,CAAA;AAC7E,QAAA,IAAIQ,eAAeE,KAAO,EAAA;YACxBD,QAASE,CAAAA,KAAK,GAAGH,GAAAA,CAAIG,KAAK;AAC5B;QACA,MAAMF,QAAAA;AACR;AAEA,IAAA,OAAOR,SAASW,IAAI,CAACb,YAAYc,eAAe,EAAEd,YAAYe,QAAQ,CAAA;AACxE,CAAA;AAEaC,MAAAA,SAAAA,GAAY,OAAO,EAAEC,MAAM,EAA2B,GAAA;AACjE,IAAA,MAAMjB,WAA2BiB,GAAAA,MAAAA,CAAOC,MAAM,CAACC,GAAG,CAAC,eAAA,CAAA;AACnDF,IAAAA,MAAAA,CAAOG,MAAM,CAAC,OAASlB,CAAAA,CAAAA,QAAQ,GAAGH,cAAeC,CAAAA,WAAAA,CAAAA;;AAGjD,IAAA,MAAMqB,OAAU,GAAA;AACd,QAAA;YACEC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,OAAA;YACVC,WAAa,EAAA,gCAAA;YACbC,GAAK,EAAA,eAAA;YACLC,UAAY,EAAA;AACd;AACD,KAAA;AAED,IAAA,MAAMT,OAAOU,OAAO,CAAC,qBAAqBC,cAAc,CAACC,YAAY,CAACR,OAAAA,CAAAA;AACxE;;;;"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const createProvider = (emailConfig)=>{
|
|
2
|
+
const providerName = emailConfig.provider.toLowerCase();
|
|
3
|
+
let provider;
|
|
4
|
+
let modulePath;
|
|
5
|
+
try {
|
|
6
|
+
modulePath = require.resolve(`@strapi/provider-email-${providerName}`);
|
|
7
|
+
} catch (error) {
|
|
8
|
+
if (error !== null && typeof error === 'object' && 'code' in error && error.code === 'MODULE_NOT_FOUND') {
|
|
9
|
+
modulePath = providerName;
|
|
10
|
+
} else {
|
|
11
|
+
throw error;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
try {
|
|
15
|
+
provider = require(modulePath);
|
|
16
|
+
} catch (err) {
|
|
17
|
+
const newError = new Error(`Could not load email provider "${providerName}".`);
|
|
18
|
+
if (err instanceof Error) {
|
|
19
|
+
newError.stack = err.stack;
|
|
20
|
+
}
|
|
21
|
+
throw newError;
|
|
22
|
+
}
|
|
23
|
+
return provider.init(emailConfig.providerOptions, emailConfig.settings);
|
|
24
|
+
};
|
|
25
|
+
const bootstrap = async ({ strapi })=>{
|
|
26
|
+
const emailConfig = strapi.config.get('plugin::email');
|
|
27
|
+
strapi.plugin('email').provider = createProvider(emailConfig);
|
|
28
|
+
// Add permissions
|
|
29
|
+
const actions = [
|
|
30
|
+
{
|
|
31
|
+
section: 'settings',
|
|
32
|
+
category: 'email',
|
|
33
|
+
displayName: 'Access the Email Settings page',
|
|
34
|
+
uid: 'settings.read',
|
|
35
|
+
pluginName: 'email'
|
|
36
|
+
}
|
|
37
|
+
];
|
|
38
|
+
await strapi.service('admin::permission').actionProvider.registerMany(actions);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export { bootstrap };
|
|
42
|
+
//# sourceMappingURL=bootstrap.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.mjs","sources":["../../server/src/bootstrap.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 (\n error !== null &&\n typeof error === 'object' &&\n 'code' in error &&\n error.code === 'MODULE_NOT_FOUND'\n ) {\n modulePath = providerName;\n } else {\n throw error;\n }\n }\n\n try {\n provider = require(modulePath);\n } catch (err) {\n const newError = new Error(`Could not load email provider \"${providerName}\".`);\n if (err instanceof Error) {\n newError.stack = err.stack;\n }\n throw newError;\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"],"names":["createProvider","emailConfig","providerName","provider","toLowerCase","modulePath","require","resolve","error","code","err","newError","Error","stack","init","providerOptions","settings","bootstrap","strapi","config","get","plugin","actions","section","category","displayName","uid","pluginName","service","actionProvider","registerMany"],"mappings":"AAgBA,MAAMA,iBAAiB,CAACC,WAAAA,GAAAA;AACtB,IAAA,MAAMC,YAAeD,GAAAA,WAAAA,CAAYE,QAAQ,CAACC,WAAW,EAAA;IACrD,IAAID,QAAAA;IAEJ,IAAIE,UAAAA;IACJ,IAAI;AACFA,QAAAA,UAAAA,GAAaC,QAAQC,OAAO,CAAC,CAAC,uBAAuB,EAAEL,YAAc,CAAA,CAAA,CAAA;AACvE,KAAA,CAAE,OAAOM,KAAO,EAAA;QACd,IACEA,KAAAA,KAAU,IACV,IAAA,OAAOA,KAAU,KAAA,QAAA,IACjB,UAAUA,KACVA,IAAAA,KAAAA,CAAMC,IAAI,KAAK,kBACf,EAAA;YACAJ,UAAaH,GAAAA,YAAAA;SACR,MAAA;YACL,MAAMM,KAAAA;AACR;AACF;IAEA,IAAI;AACFL,QAAAA,QAAAA,GAAWG,OAAQD,CAAAA,UAAAA,CAAAA;AACrB,KAAA,CAAE,OAAOK,GAAK,EAAA;QACZ,MAAMC,QAAAA,GAAW,IAAIC,KAAM,CAAA,CAAC,+BAA+B,EAAEV,YAAAA,CAAa,EAAE,CAAC,CAAA;AAC7E,QAAA,IAAIQ,eAAeE,KAAO,EAAA;YACxBD,QAASE,CAAAA,KAAK,GAAGH,GAAAA,CAAIG,KAAK;AAC5B;QACA,MAAMF,QAAAA;AACR;AAEA,IAAA,OAAOR,SAASW,IAAI,CAACb,YAAYc,eAAe,EAAEd,YAAYe,QAAQ,CAAA;AACxE,CAAA;AAEaC,MAAAA,SAAAA,GAAY,OAAO,EAAEC,MAAM,EAA2B,GAAA;AACjE,IAAA,MAAMjB,WAA2BiB,GAAAA,MAAAA,CAAOC,MAAM,CAACC,GAAG,CAAC,eAAA,CAAA;AACnDF,IAAAA,MAAAA,CAAOG,MAAM,CAAC,OAASlB,CAAAA,CAAAA,QAAQ,GAAGH,cAAeC,CAAAA,WAAAA,CAAAA;;AAGjD,IAAA,MAAMqB,OAAU,GAAA;AACd,QAAA;YACEC,OAAS,EAAA,UAAA;YACTC,QAAU,EAAA,OAAA;YACVC,WAAa,EAAA,gCAAA;YACbC,GAAK,EAAA,eAAA;YACLC,UAAY,EAAA;AACd;AACD,KAAA;AAED,IAAA,MAAMT,OAAOU,OAAO,CAAC,qBAAqBC,cAAc,CAACC,YAAY,CAACR,OAAAA,CAAAA;AACxE;;;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const config = {
|
|
4
|
+
default: {
|
|
5
|
+
provider: 'sendmail',
|
|
6
|
+
providerOptions: {},
|
|
7
|
+
settings: {
|
|
8
|
+
defaultFrom: 'Strapi <no-reply@strapi.io>'
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
validator () {}
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.config = config;
|
|
15
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sources":["../../server/src/config.ts"],"sourcesContent":["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"],"names":["config","default","provider","providerOptions","settings","defaultFrom","validator"],"mappings":";;MAEaA,MAAuB,GAAA;IAClCC,OAAS,EAAA;QACPC,QAAU,EAAA,UAAA;AACVC,QAAAA,eAAAA,EAAiB,EAAC;QAClBC,QAAU,EAAA;YACRC,WAAa,EAAA;AACf;AACF,KAAA;IACAC,SAAa,CAAA,GAAA;AACf;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.mjs","sources":["../../server/src/config.ts"],"sourcesContent":["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"],"names":["config","default","provider","providerOptions","settings","defaultFrom","validator"],"mappings":"MAEaA,MAAuB,GAAA;IAClCC,OAAS,EAAA;QACPC,QAAU,EAAA,UAAA;AACVC,QAAAA,eAAAA,EAAiB,EAAC;QAClBC,QAAU,EAAA;YACRC,WAAa,EAAA;AACf;AACF,KAAA;IACAC,SAAa,CAAA,GAAA;AACf;;;;"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fp = require('lodash/fp');
|
|
4
|
+
var utils = require('@strapi/utils');
|
|
5
|
+
|
|
6
|
+
const { ApplicationError } = utils.errors;
|
|
7
|
+
/**
|
|
8
|
+
* Email.js controller
|
|
9
|
+
*
|
|
10
|
+
* @description: A set of functions called "actions" of the `email` plugin.
|
|
11
|
+
*/ const emailController = {
|
|
12
|
+
async send (ctx) {
|
|
13
|
+
const options = ctx.request.body;
|
|
14
|
+
try {
|
|
15
|
+
await strapi.plugin('email').service('email').send(options);
|
|
16
|
+
} catch (error) {
|
|
17
|
+
if (error instanceof Error) {
|
|
18
|
+
if ('statusCode' in error && error.statusCode === 400) {
|
|
19
|
+
throw new ApplicationError(error.message);
|
|
20
|
+
} else {
|
|
21
|
+
throw new Error(`Couldn't send email: ${error.message}.`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
// Send 200 `ok`
|
|
26
|
+
ctx.send({});
|
|
27
|
+
},
|
|
28
|
+
async test (ctx) {
|
|
29
|
+
const { to } = ctx.request.body;
|
|
30
|
+
if (!to) {
|
|
31
|
+
throw new ApplicationError('No recipient(s) are given');
|
|
32
|
+
}
|
|
33
|
+
const email = {
|
|
34
|
+
to,
|
|
35
|
+
subject: `Strapi test mail to: ${to}`,
|
|
36
|
+
text: `Great! You have correctly configured the Strapi email plugin with the ${strapi.config.get('plugin::email.provider')} provider. \r\nFor documentation on how to use the email plugin checkout: https://docs.strapi.io/developer-docs/latest/plugins/email.html`
|
|
37
|
+
};
|
|
38
|
+
try {
|
|
39
|
+
await strapi.plugin('email').service('email').send(email);
|
|
40
|
+
} catch (error) {
|
|
41
|
+
if (error instanceof Error) {
|
|
42
|
+
if ('statusCode' in error && error.statusCode === 400) {
|
|
43
|
+
throw new ApplicationError(error.message);
|
|
44
|
+
} else {
|
|
45
|
+
throw new Error(`Couldn't send test email: ${error.message}.`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Send 200 `ok`
|
|
50
|
+
ctx.send({});
|
|
51
|
+
},
|
|
52
|
+
async getSettings (ctx) {
|
|
53
|
+
const config = strapi.plugin('email').service('email').getProviderSettings();
|
|
54
|
+
ctx.send({
|
|
55
|
+
config: fp.pick([
|
|
56
|
+
'provider',
|
|
57
|
+
'settings.defaultFrom',
|
|
58
|
+
'settings.defaultReplyTo',
|
|
59
|
+
'settings.testAddress'
|
|
60
|
+
], config)
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
module.exports = emailController;
|
|
66
|
+
//# sourceMappingURL=email.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.js","sources":["../../../server/src/controllers/email.ts"],"sourcesContent":["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"],"names":["ApplicationError","errors","emailController","send","ctx","options","request","body","strapi","plugin","service","error","Error","statusCode","message","test","to","email","subject","text","config","get","getSettings","getProviderSettings","pick"],"mappings":";;;;;AAOA,MAAM,EAAEA,gBAAgB,EAAE,GAAGC,YAAAA;AAE7B;;;;AAIC,UACKC,eAAkB,GAAA;AACtB,IAAA,MAAMC,MAAKC,GAAgB,EAAA;AACzB,QAAA,MAAMC,OAAUD,GAAAA,GAAAA,CAAIE,OAAO,CAACC,IAAI;QAEhC,IAAI;YACF,MAAMC,MAAAA,CAAOC,MAAM,CAAC,OAAA,CAAA,CAASC,OAAO,CAAC,OAAA,CAAA,CAASP,IAAI,CAACE,OAAAA,CAAAA;AACrD,SAAA,CAAE,OAAOM,KAAO,EAAA;AACd,YAAA,IAAIA,iBAAiBC,KAAO,EAAA;AAC1B,gBAAA,IAAI,YAAgBD,IAAAA,KAAAA,IAASA,KAAME,CAAAA,UAAU,KAAK,GAAK,EAAA;oBACrD,MAAM,IAAIb,gBAAiBW,CAAAA,KAAAA,CAAMG,OAAO,CAAA;iBACnC,MAAA;oBACL,MAAM,IAAIF,MAAM,CAAC,qBAAqB,EAAED,KAAMG,CAAAA,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1D;AACF;AACF;;QAGAV,GAAID,CAAAA,IAAI,CAAC,EAAC,CAAA;AACZ,KAAA;AAEA,IAAA,MAAMY,MAAKX,GAAgB,EAAA;AACzB,QAAA,MAAM,EAAEY,EAAE,EAAE,GAAGZ,GAAIE,CAAAA,OAAO,CAACC,IAAI;AAE/B,QAAA,IAAI,CAACS,EAAI,EAAA;AACP,YAAA,MAAM,IAAIhB,gBAAiB,CAAA,2BAAA,CAAA;AAC7B;AAEA,QAAA,MAAMiB,KAAqB,GAAA;AACzBD,YAAAA,EAAAA;YACAE,OAAS,EAAA,CAAC,qBAAqB,EAAEF,EAAI,CAAA,CAAA;YACrCG,IAAM,EAAA,CAAC,sEAAsE,EAAEX,MAAOY,CAAAA,MAAM,CAACC,GAAG,CAC9F,wBACA,CAAA,CAAA,yIAAyI;AAC7I,SAAA;QAEA,IAAI;YACF,MAAMb,MAAAA,CAAOC,MAAM,CAAC,OAAA,CAAA,CAASC,OAAO,CAAC,OAAA,CAAA,CAASP,IAAI,CAACc,KAAAA,CAAAA;AACrD,SAAA,CAAE,OAAON,KAAO,EAAA;AACd,YAAA,IAAIA,iBAAiBC,KAAO,EAAA;AAC1B,gBAAA,IAAI,YAAgBD,IAAAA,KAAAA,IAASA,KAAME,CAAAA,UAAU,KAAK,GAAK,EAAA;oBACrD,MAAM,IAAIb,gBAAiBW,CAAAA,KAAAA,CAAMG,OAAO,CAAA;iBACnC,MAAA;oBACL,MAAM,IAAIF,MAAM,CAAC,0BAA0B,EAAED,KAAMG,CAAAA,OAAO,CAAC,CAAC,CAAC,CAAA;AAC/D;AACF;AACF;;QAGAV,GAAID,CAAAA,IAAI,CAAC,EAAC,CAAA;AACZ,KAAA;AAEA,IAAA,MAAMmB,aAAYlB,GAAgB,EAAA;QAChC,MAAMgB,MAAAA,GAAsBZ,OAAOC,MAAM,CAAC,SAASC,OAAO,CAAC,SAASa,mBAAmB,EAAA;AAEvFnB,QAAAA,GAAAA,CAAID,IAAI,CAAC;AACPiB,YAAAA,MAAAA,EAAQI,OACN,CAAA;AAAC,gBAAA,UAAA;AAAY,gBAAA,sBAAA;AAAwB,gBAAA,yBAAA;AAA2B,gBAAA;aAAuB,EACvFJ,MAAAA;AAEJ,SAAA,CAAA;AACF;AACF;;;;"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { pick } from 'lodash/fp';
|
|
2
|
+
import { errors } from '@strapi/utils';
|
|
3
|
+
|
|
4
|
+
const { ApplicationError } = errors;
|
|
5
|
+
/**
|
|
6
|
+
* Email.js controller
|
|
7
|
+
*
|
|
8
|
+
* @description: A set of functions called "actions" of the `email` plugin.
|
|
9
|
+
*/ const emailController = {
|
|
10
|
+
async send (ctx) {
|
|
11
|
+
const options = ctx.request.body;
|
|
12
|
+
try {
|
|
13
|
+
await strapi.plugin('email').service('email').send(options);
|
|
14
|
+
} catch (error) {
|
|
15
|
+
if (error instanceof Error) {
|
|
16
|
+
if ('statusCode' in error && error.statusCode === 400) {
|
|
17
|
+
throw new ApplicationError(error.message);
|
|
18
|
+
} else {
|
|
19
|
+
throw new Error(`Couldn't send email: ${error.message}.`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
// Send 200 `ok`
|
|
24
|
+
ctx.send({});
|
|
25
|
+
},
|
|
26
|
+
async test (ctx) {
|
|
27
|
+
const { to } = ctx.request.body;
|
|
28
|
+
if (!to) {
|
|
29
|
+
throw new ApplicationError('No recipient(s) are given');
|
|
30
|
+
}
|
|
31
|
+
const email = {
|
|
32
|
+
to,
|
|
33
|
+
subject: `Strapi test mail to: ${to}`,
|
|
34
|
+
text: `Great! You have correctly configured the Strapi email plugin with the ${strapi.config.get('plugin::email.provider')} provider. \r\nFor documentation on how to use the email plugin checkout: https://docs.strapi.io/developer-docs/latest/plugins/email.html`
|
|
35
|
+
};
|
|
36
|
+
try {
|
|
37
|
+
await strapi.plugin('email').service('email').send(email);
|
|
38
|
+
} catch (error) {
|
|
39
|
+
if (error instanceof Error) {
|
|
40
|
+
if ('statusCode' in error && error.statusCode === 400) {
|
|
41
|
+
throw new ApplicationError(error.message);
|
|
42
|
+
} else {
|
|
43
|
+
throw new Error(`Couldn't send test email: ${error.message}.`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// Send 200 `ok`
|
|
48
|
+
ctx.send({});
|
|
49
|
+
},
|
|
50
|
+
async getSettings (ctx) {
|
|
51
|
+
const config = strapi.plugin('email').service('email').getProviderSettings();
|
|
52
|
+
ctx.send({
|
|
53
|
+
config: pick([
|
|
54
|
+
'provider',
|
|
55
|
+
'settings.defaultFrom',
|
|
56
|
+
'settings.defaultReplyTo',
|
|
57
|
+
'settings.testAddress'
|
|
58
|
+
], config)
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export { emailController as default };
|
|
64
|
+
//# sourceMappingURL=email.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.mjs","sources":["../../../server/src/controllers/email.ts"],"sourcesContent":["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"],"names":["ApplicationError","errors","emailController","send","ctx","options","request","body","strapi","plugin","service","error","Error","statusCode","message","test","to","email","subject","text","config","get","getSettings","getProviderSettings","pick"],"mappings":";;;AAOA,MAAM,EAAEA,gBAAgB,EAAE,GAAGC,MAAAA;AAE7B;;;;AAIC,UACKC,eAAkB,GAAA;AACtB,IAAA,MAAMC,MAAKC,GAAgB,EAAA;AACzB,QAAA,MAAMC,OAAUD,GAAAA,GAAAA,CAAIE,OAAO,CAACC,IAAI;QAEhC,IAAI;YACF,MAAMC,MAAAA,CAAOC,MAAM,CAAC,OAAA,CAAA,CAASC,OAAO,CAAC,OAAA,CAAA,CAASP,IAAI,CAACE,OAAAA,CAAAA;AACrD,SAAA,CAAE,OAAOM,KAAO,EAAA;AACd,YAAA,IAAIA,iBAAiBC,KAAO,EAAA;AAC1B,gBAAA,IAAI,YAAgBD,IAAAA,KAAAA,IAASA,KAAME,CAAAA,UAAU,KAAK,GAAK,EAAA;oBACrD,MAAM,IAAIb,gBAAiBW,CAAAA,KAAAA,CAAMG,OAAO,CAAA;iBACnC,MAAA;oBACL,MAAM,IAAIF,MAAM,CAAC,qBAAqB,EAAED,KAAMG,CAAAA,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1D;AACF;AACF;;QAGAV,GAAID,CAAAA,IAAI,CAAC,EAAC,CAAA;AACZ,KAAA;AAEA,IAAA,MAAMY,MAAKX,GAAgB,EAAA;AACzB,QAAA,MAAM,EAAEY,EAAE,EAAE,GAAGZ,GAAIE,CAAAA,OAAO,CAACC,IAAI;AAE/B,QAAA,IAAI,CAACS,EAAI,EAAA;AACP,YAAA,MAAM,IAAIhB,gBAAiB,CAAA,2BAAA,CAAA;AAC7B;AAEA,QAAA,MAAMiB,KAAqB,GAAA;AACzBD,YAAAA,EAAAA;YACAE,OAAS,EAAA,CAAC,qBAAqB,EAAEF,EAAI,CAAA,CAAA;YACrCG,IAAM,EAAA,CAAC,sEAAsE,EAAEX,MAAOY,CAAAA,MAAM,CAACC,GAAG,CAC9F,wBACA,CAAA,CAAA,yIAAyI;AAC7I,SAAA;QAEA,IAAI;YACF,MAAMb,MAAAA,CAAOC,MAAM,CAAC,OAAA,CAAA,CAASC,OAAO,CAAC,OAAA,CAAA,CAASP,IAAI,CAACc,KAAAA,CAAAA;AACrD,SAAA,CAAE,OAAON,KAAO,EAAA;AACd,YAAA,IAAIA,iBAAiBC,KAAO,EAAA;AAC1B,gBAAA,IAAI,YAAgBD,IAAAA,KAAAA,IAASA,KAAME,CAAAA,UAAU,KAAK,GAAK,EAAA;oBACrD,MAAM,IAAIb,gBAAiBW,CAAAA,KAAAA,CAAMG,OAAO,CAAA;iBACnC,MAAA;oBACL,MAAM,IAAIF,MAAM,CAAC,0BAA0B,EAAED,KAAMG,CAAAA,OAAO,CAAC,CAAC,CAAC,CAAA;AAC/D;AACF;AACF;;QAGAV,GAAID,CAAAA,IAAI,CAAC,EAAC,CAAA;AACZ,KAAA;AAEA,IAAA,MAAMmB,aAAYlB,GAAgB,EAAA;QAChC,MAAMgB,MAAAA,GAAsBZ,OAAOC,MAAM,CAAC,SAASC,OAAO,CAAC,SAASa,mBAAmB,EAAA;AAEvFnB,QAAAA,GAAAA,CAAID,IAAI,CAAC;AACPiB,YAAAA,MAAAA,EAAQI,IACN,CAAA;AAAC,gBAAA,UAAA;AAAY,gBAAA,sBAAA;AAAwB,gBAAA,yBAAA;AAA2B,gBAAA;aAAuB,EACvFJ,MAAAA;AAEJ,SAAA,CAAA;AACF;AACF;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../server/src/controllers/index.ts"],"sourcesContent":["import email from './email';\n\nexport const controllers = { email };\n"],"names":["controllers","email"],"mappings":";;;;MAEaA,WAAc,GAAA;AAAEC,IAAAA;AAAM;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../server/src/controllers/index.ts"],"sourcesContent":["import email from './email';\n\nexport const controllers = { email };\n"],"names":["controllers","email"],"mappings":";;MAEaA,WAAc,GAAA;AAAEC,WAAAA;AAAM;;;;"}
|