@rockcarver/frodo-lib 0.12.0 → 0.12.2-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/CHANGELOG.md +22 -2
- package/cjs/api/AuthenticateApi.js +44 -14
- package/cjs/api/AuthenticateApi.js.map +1 -1
- package/cjs/api/BaseApi.js +171 -90
- package/cjs/api/BaseApi.js.map +1 -1
- package/cjs/api/CirclesOfTrustApi.js +87 -31
- package/cjs/api/CirclesOfTrustApi.js.map +1 -1
- package/cjs/api/EmailTemplateApi.js +48 -9
- package/cjs/api/EmailTemplateApi.js.map +1 -1
- package/cjs/api/IdmConfigApi.js +91 -25
- package/cjs/api/IdmConfigApi.js.map +1 -1
- package/cjs/api/LogApi.js +84 -29
- package/cjs/api/LogApi.js.map +1 -1
- package/cjs/api/ManagedObjectApi.js +66 -19
- package/cjs/api/ManagedObjectApi.js.map +1 -1
- package/cjs/api/NodeApi.js +190 -0
- package/cjs/api/NodeApi.js.map +1 -0
- package/cjs/api/NodeApi.test.js.map +1 -0
- package/cjs/api/OAuth2ClientApi.js +73 -27
- package/cjs/api/OAuth2ClientApi.js.map +1 -1
- package/cjs/api/OAuth2OIDCApi.js +82 -31
- package/cjs/api/OAuth2OIDCApi.js.map +1 -1
- package/cjs/api/OAuth2ProviderApi.js +39 -14
- package/cjs/api/OAuth2ProviderApi.js.map +1 -1
- package/cjs/api/RealmApi.js +100 -36
- package/cjs/api/RealmApi.js.map +1 -1
- package/cjs/api/Saml2Api.js +162 -74
- package/cjs/api/Saml2Api.js.map +1 -1
- package/cjs/api/ScriptApi.js +84 -29
- package/cjs/api/ScriptApi.js.map +1 -1
- package/cjs/api/SecretsApi.js +188 -69
- package/cjs/api/SecretsApi.js.map +1 -1
- package/cjs/api/ServerInfoApi.js +48 -14
- package/cjs/api/ServerInfoApi.js.map +1 -1
- package/cjs/api/SocialIdentityProvidersApi.js +103 -37
- package/cjs/api/SocialIdentityProvidersApi.js.map +1 -1
- package/cjs/api/StartupApi.js +74 -26
- package/cjs/api/StartupApi.js.map +1 -1
- package/cjs/api/StartupApi.test.js.map +1 -0
- package/cjs/api/ThemeApi.js +188 -96
- package/cjs/api/ThemeApi.js.map +1 -1
- package/cjs/api/TreeApi.js +96 -113
- package/cjs/api/TreeApi.js.map +1 -1
- package/cjs/api/TreeApi.test.js.map +1 -0
- package/cjs/api/VariablesApi.js +106 -39
- package/cjs/api/VariablesApi.js.map +1 -1
- package/cjs/api/utils/ApiUtils.js +41 -21
- package/cjs/api/utils/ApiUtils.js.map +1 -1
- package/cjs/api/utils/ApiUtils.test.js.map +1 -1
- package/cjs/api/utils/Base64.js +35 -10
- package/cjs/api/utils/Base64.js.map +1 -1
- package/cjs/index.js +126 -41
- package/cjs/index.js.map +1 -1
- package/cjs/index.test.js.map +1 -1
- package/cjs/ops/AdminOps.js +649 -480
- package/cjs/ops/AdminOps.js.map +1 -1
- package/cjs/ops/AuthenticateOps.js +302 -211
- package/cjs/ops/AuthenticateOps.js.map +1 -1
- package/cjs/ops/AuthenticateOps.test.js.map +1 -1
- package/cjs/ops/CirclesOfTrustOps.js +356 -219
- package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
- package/cjs/ops/ConnectionProfileOps.js +200 -122
- package/cjs/ops/ConnectionProfileOps.js.map +1 -1
- package/cjs/ops/ConnectionProfileOps.test.js.map +1 -1
- package/cjs/ops/EmailTemplateOps.js +301 -192
- package/cjs/ops/EmailTemplateOps.js.map +1 -1
- package/cjs/ops/IdmOps.js +190 -121
- package/cjs/ops/IdmOps.js.map +1 -1
- package/cjs/ops/IdpOps.js +327 -196
- package/cjs/ops/IdpOps.js.map +1 -1
- package/cjs/ops/JourneyOps.js +1402 -1131
- package/cjs/ops/JourneyOps.js.map +1 -1
- package/cjs/ops/LogOps.js +125 -75
- package/cjs/ops/LogOps.js.map +1 -1
- package/cjs/ops/ManagedObjectOps.js +43 -16
- package/cjs/ops/ManagedObjectOps.js.map +1 -1
- package/cjs/ops/OAuth2ClientOps.js +155 -87
- package/cjs/ops/OAuth2ClientOps.js.map +1 -1
- package/cjs/ops/OrganizationOps.js +89 -56
- package/cjs/ops/OrganizationOps.js.map +1 -1
- package/cjs/ops/RealmOps.js +131 -83
- package/cjs/ops/RealmOps.js.map +1 -1
- package/cjs/ops/SamlOps.js +497 -331
- package/cjs/ops/SamlOps.js.map +1 -1
- package/cjs/ops/ScriptOps.js +215 -133
- package/cjs/ops/ScriptOps.js.map +1 -1
- package/cjs/ops/SecretsOps.js +269 -156
- package/cjs/ops/SecretsOps.js.map +1 -1
- package/cjs/ops/StartupOps.js +100 -75
- package/cjs/ops/StartupOps.js.map +1 -1
- package/cjs/ops/ThemeOps.js +373 -221
- package/cjs/ops/ThemeOps.js.map +1 -1
- package/cjs/ops/VariablesOps.js +168 -90
- package/cjs/ops/VariablesOps.js.map +1 -1
- package/cjs/ops/utils/Console.js +68 -33
- package/cjs/ops/utils/Console.js.map +1 -1
- package/cjs/ops/utils/DataProtection.js +100 -64
- package/cjs/ops/utils/DataProtection.js.map +1 -1
- package/cjs/ops/utils/DataProtection.test.js.map +1 -1
- package/cjs/ops/utils/ExportImportUtils.js +86 -47
- package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
- package/cjs/ops/utils/ExportImportUtils.test.js.map +1 -1
- package/cjs/ops/utils/OpsUtils.js +47 -20
- package/cjs/ops/utils/OpsUtils.js.map +1 -1
- package/cjs/ops/utils/Wordwrap.js +10 -2
- package/cjs/ops/utils/Wordwrap.js.map +1 -1
- package/cjs/storage/SessionStorage.js +20 -8
- package/cjs/storage/SessionStorage.js.map +1 -1
- package/cjs/storage/StaticStorage.js +26 -10
- package/cjs/storage/StaticStorage.js.map +1 -1
- package/esm/api/BaseApi.mjs +35 -7
- package/esm/api/NodeApi.mjs +114 -0
- package/esm/api/NodeApi.test.mjs +105 -0
- package/esm/api/StartupApi.mjs +18 -8
- package/esm/api/StartupApi.test.mjs +56 -0
- package/esm/api/TreeApi.mjs +27 -99
- package/esm/api/TreeApi.test.mjs +175 -0
- package/esm/index.mjs +7 -5
- package/esm/ops/IdpOps.mjs +1 -1
- package/esm/ops/JourneyOps.mjs +165 -154
- package/esm/ops/StartupOps.mjs +59 -62
- package/esm/ops/utils/Console.mjs +3 -2
- package/package.json +7 -4
- package/types/api/AuthenticateApi.d.ts +2 -0
- package/types/api/AuthenticateApi.d.ts.map +1 -0
- package/types/api/BaseApi.d.ts +50 -0
- package/types/api/BaseApi.d.ts.map +1 -0
- package/types/api/CirclesOfTrustApi.d.ts +24 -0
- package/types/api/CirclesOfTrustApi.d.ts.map +1 -0
- package/types/api/EmailTemplateApi.d.ts +22 -0
- package/types/api/EmailTemplateApi.d.ts.map +1 -0
- package/types/api/IdmConfigApi.d.ts +39 -0
- package/types/api/IdmConfigApi.d.ts.map +1 -0
- package/types/api/LogApi.d.ts +4 -0
- package/types/api/LogApi.d.ts.map +1 -0
- package/types/api/ManagedObjectApi.d.ts +21 -0
- package/types/api/ManagedObjectApi.d.ts.map +1 -0
- package/types/api/NodeApi.d.ts +38 -0
- package/types/api/NodeApi.d.ts.map +1 -0
- package/types/api/OAuth2ClientApi.d.ts +18 -0
- package/types/api/OAuth2ClientApi.d.ts.map +1 -0
- package/types/api/OAuth2OIDCApi.d.ts +22 -0
- package/types/api/OAuth2OIDCApi.d.ts.map +1 -0
- package/types/api/OAuth2ProviderApi.d.ts +5 -0
- package/types/api/OAuth2ProviderApi.d.ts.map +1 -0
- package/types/api/RealmApi.d.ts +30 -0
- package/types/api/RealmApi.d.ts.map +1 -0
- package/types/api/Saml2Api.d.ts +52 -0
- package/types/api/Saml2Api.d.ts.map +1 -0
- package/types/api/ScriptApi.d.ts +24 -0
- package/types/api/ScriptApi.d.ts.map +1 -0
- package/types/api/SecretsApi.d.ts +10 -0
- package/types/api/SecretsApi.d.ts.map +1 -0
- package/types/api/ServerInfoApi.d.ts +10 -0
- package/types/api/ServerInfoApi.d.ts.map +1 -0
- package/types/api/SocialIdentityProvidersApi.d.ts +31 -0
- package/types/api/SocialIdentityProvidersApi.d.ts.map +1 -0
- package/types/api/StartupApi.d.ts +14 -0
- package/types/api/StartupApi.d.ts.map +1 -0
- package/types/api/ThemeApi.d.ts +54 -0
- package/types/api/ThemeApi.d.ts.map +1 -0
- package/types/api/TreeApi.d.ts +24 -0
- package/types/api/TreeApi.d.ts.map +1 -0
- package/types/api/VariablesApi.d.ts +32 -0
- package/types/api/VariablesApi.d.ts.map +1 -0
- package/types/api/utils/ApiUtils.d.ts +29 -0
- package/types/api/utils/ApiUtils.d.ts.map +1 -0
- package/types/api/utils/Base64.d.ts +30 -0
- package/types/api/utils/Base64.d.ts.map +1 -0
- package/types/index.d.ts +26 -0
- package/types/index.d.ts.map +1 -0
- package/types/ops/AdminOps.d.ts +11 -0
- package/types/ops/AdminOps.d.ts.map +1 -0
- package/types/ops/AuthenticateOps.d.ts +6 -0
- package/types/ops/AuthenticateOps.d.ts.map +1 -0
- package/types/ops/CirclesOfTrustOps.d.ts +40 -0
- package/types/ops/CirclesOfTrustOps.d.ts.map +1 -0
- package/types/ops/ConnectionProfileOps.d.ts +47 -0
- package/types/ops/ConnectionProfileOps.d.ts.map +1 -0
- package/types/ops/EmailTemplateOps.d.ts +40 -0
- package/types/ops/EmailTemplateOps.d.ts.map +1 -0
- package/types/ops/IdmOps.d.ts +27 -0
- package/types/ops/IdmOps.d.ts.map +1 -0
- package/types/ops/IdpOps.d.ts +45 -0
- package/types/ops/IdpOps.d.ts.map +1 -0
- package/types/ops/JourneyOps.d.ts +145 -0
- package/types/ops/JourneyOps.d.ts.map +1 -0
- package/types/ops/LogOps.d.ts +5 -0
- package/types/ops/LogOps.d.ts.map +1 -0
- package/types/ops/ManagedObjectOps.d.ts +14 -0
- package/types/ops/ManagedObjectOps.d.ts.map +1 -0
- package/types/ops/OAuth2ClientOps.d.ts +24 -0
- package/types/ops/OAuth2ClientOps.d.ts.map +1 -0
- package/types/ops/OrganizationOps.d.ts +11 -0
- package/types/ops/OrganizationOps.d.ts.map +1 -0
- package/types/ops/RealmOps.d.ts +22 -0
- package/types/ops/RealmOps.d.ts.map +1 -0
- package/types/ops/SamlOps.d.ts +51 -0
- package/types/ops/SamlOps.d.ts.map +1 -0
- package/types/ops/ScriptOps.d.ts +30 -0
- package/types/ops/ScriptOps.d.ts.map +1 -0
- package/types/ops/SecretsOps.d.ts +63 -0
- package/types/ops/SecretsOps.d.ts.map +1 -0
- package/types/ops/StartupOps.d.ts +25 -0
- package/types/ops/StartupOps.d.ts.map +1 -0
- package/types/ops/ThemeOps.d.ts +66 -0
- package/types/ops/ThemeOps.d.ts.map +1 -0
- package/types/ops/VariablesOps.d.ts +39 -0
- package/types/ops/VariablesOps.d.ts.map +1 -0
- package/types/ops/utils/Console.d.ts +63 -0
- package/types/ops/utils/Console.d.ts.map +1 -0
- package/types/ops/utils/DataProtection.d.ts +6 -0
- package/types/ops/utils/DataProtection.d.ts.map +1 -0
- package/types/ops/utils/ExportImportUtils.d.ts +22 -0
- package/types/ops/utils/ExportImportUtils.d.ts.map +1 -0
- package/types/ops/utils/OpsUtils.d.ts +27 -0
- package/types/ops/utils/OpsUtils.d.ts.map +1 -0
- package/types/ops/utils/Wordwrap.d.ts +1 -0
- package/types/ops/utils/Wordwrap.d.ts.map +1 -0
- package/types/storage/SessionStorage.d.ts +47 -0
- package/types/storage/SessionStorage.d.ts.map +1 -0
- package/types/storage/StaticStorage.d.ts +14 -0
- package/types/storage/StaticStorage.d.ts.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectionProfileOps.test.js","names":["
|
|
1
|
+
{"version":3,"file":"ConnectionProfileOps.test.js","names":["describe","test","host","user","password","connectionProfilePath","homedir","state","default","session","setTenant","setUsername","setPassword","setConnectionProfilesPath","ConnectionProfile","saveConnectionProfile","expect","fs","existsSync","toBeTruthy","connections","JSON","parse","readFileSync","username","toEqual","encodedPassword","FRODO_MASTER_KEY_PATH_KEY","process","env","FRODO_CONNECTION_PROFILES_PATH_KEY","getConnectionProfilesPath","FRODO_MASTER_KEY_KEY","masterKey"],"sources":["ops/ConnectionProfileOps.test.ts"],"sourcesContent":["import fs from 'fs';\nimport { homedir } from 'os';\nimport { ConnectionProfile, state } from '../index';\nimport {\n FRODO_CONNECTION_PROFILES_PATH_KEY,\n FRODO_MASTER_KEY_PATH_KEY,\n FRODO_MASTER_KEY_KEY,\n} from '../storage/StaticStorage';\n\ndescribe('ConnectionProfileOps', () => {\n test('saveConnectionProfile() 1: Create connection profiles in location from state field', async () => {\n const host = 'https://openam-tenant-name.forgeblocks.com/am';\n const user = 'frodo.baggins@shire.me';\n const password = 'G@nd@lfTheW153';\n const connectionProfilePath = `${homedir()}/connections1.json`;\n\n state.default.session.setTenant(host);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setConnectionProfilesPath(connectionProfilePath);\n await ConnectionProfile.saveConnectionProfile();\n expect(fs.existsSync(connectionProfilePath)).toBeTruthy();\n const connections = JSON.parse(\n fs.readFileSync(connectionProfilePath, 'utf8')\n );\n expect(connections).toBeTruthy();\n expect(connections[host]).toBeTruthy();\n expect(connections[host].username).toEqual(user);\n expect(connections[host].encodedPassword).toBeTruthy();\n });\n\n test(`saveConnectionProfile() 2: Create connection profiles in location from env ${FRODO_MASTER_KEY_PATH_KEY}`, async () => {\n const host = 'https://openam-tenant-name.forgeblocks.com/am';\n const user = 'frodo.baggins@shire.me';\n const password = 'G@nd@lfTheW153';\n const connectionProfilePath = `${homedir()}/connections2.json`;\n // set the hard-coded master key\n process.env[FRODO_CONNECTION_PROFILES_PATH_KEY] = connectionProfilePath;\n\n state.default.session.setTenant(host);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setConnectionProfilesPath(null);\n await ConnectionProfile.saveConnectionProfile();\n expect(ConnectionProfile.getConnectionProfilesPath()).toEqual(\n connectionProfilePath\n );\n expect(fs.existsSync(connectionProfilePath)).toBeTruthy();\n const connections = JSON.parse(\n fs.readFileSync(connectionProfilePath, 'utf8')\n );\n expect(connections).toBeTruthy();\n expect(connections[host]).toBeTruthy();\n expect(connections[host].username).toEqual(user);\n expect(connections[host].encodedPassword).toBeTruthy();\n });\n\n test(`saveConnectionProfile() 3: Use Master Key from env ${FRODO_MASTER_KEY_KEY}`, async () => {\n const host = 'https://openam-tenant-name.forgeblocks.com/am';\n const user = 'frodo.baggins@shire.me';\n const password = 'G@nd@lfTheW153';\n const connectionProfilePath = `${homedir()}/connections3.json`;\n const masterKey = 'bxnQlhcU5VfyDs+BBPhRhK09yHaNtdIIk85HUMKBnqg=';\n // set the hard-coded master key\n process.env[FRODO_MASTER_KEY_KEY] = masterKey;\n\n state.default.session.setTenant(host);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setConnectionProfilesPath(connectionProfilePath);\n await ConnectionProfile.saveConnectionProfile();\n expect(fs.existsSync(connectionProfilePath)).toBeTruthy();\n const connections = JSON.parse(\n fs.readFileSync(connectionProfilePath, 'utf8')\n );\n expect(connections).toBeTruthy();\n expect(connections[host]).toBeTruthy();\n expect(connections[host].username).toEqual(user);\n expect(connections[host].encodedPassword).toBeTruthy();\n });\n});\n"],"mappings":"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"}
|
|
@@ -1,18 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.exportEmailTemplateToFile = exportEmailTemplateToFile;
|
|
7
|
+
exports.exportEmailTemplatesToFile = exportEmailTemplatesToFile;
|
|
8
|
+
exports.exportEmailTemplatesToFiles = exportEmailTemplatesToFiles;
|
|
9
|
+
exports.importEmailTemplateFromFile = importEmailTemplateFromFile;
|
|
10
|
+
exports.importEmailTemplatesFromFile = importEmailTemplatesFromFile;
|
|
11
|
+
exports.importEmailTemplatesFromFiles = importEmailTemplatesFromFiles;
|
|
12
|
+
exports.importFirstEmailTemplateFromFile = importFirstEmailTemplateFromFile;
|
|
13
|
+
exports.listEmailTemplates = listEmailTemplates;
|
|
14
|
+
|
|
15
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
16
|
+
|
|
17
|
+
var _EmailTemplateApi = require("../api/EmailTemplateApi");
|
|
18
|
+
|
|
19
|
+
var _Console = require("./utils/Console");
|
|
20
|
+
|
|
21
|
+
var _ExportImportUtils = require("./utils/ExportImportUtils");
|
|
22
|
+
|
|
23
|
+
var _Wordwrap = _interopRequireDefault(require("./utils/Wordwrap"));
|
|
24
|
+
|
|
25
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
26
|
+
|
|
27
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
28
|
+
|
|
29
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
30
|
+
|
|
6
31
|
/**
|
|
7
32
|
* Regex to remove email template type from id
|
|
8
33
|
*/
|
|
9
|
-
|
|
10
|
-
const regexEmailTemplateType = new RegExp(`${EMAIL_TEMPLATE_TYPE}/`, 'g');
|
|
34
|
+
var regexEmailTemplateType = new RegExp("".concat(_EmailTemplateApi.EMAIL_TEMPLATE_TYPE, "/"), 'g');
|
|
11
35
|
/**
|
|
12
36
|
* Maintain the file type centrally
|
|
13
37
|
*/
|
|
14
38
|
|
|
15
|
-
|
|
39
|
+
var EMAIL_TEMPLATE_FILE_TYPE = 'template.email'; // use a function vs a template variable to avoid problems in loops
|
|
16
40
|
|
|
17
41
|
function getFileDataTemplate() {
|
|
18
42
|
return {
|
|
@@ -26,35 +50,8 @@ function getFileDataTemplate() {
|
|
|
26
50
|
*/
|
|
27
51
|
|
|
28
52
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
try {
|
|
33
|
-
emailTemplates = (await getEmailTemplates()).data.result;
|
|
34
|
-
} catch (error) {
|
|
35
|
-
printMessage(`${error.message}`, 'error');
|
|
36
|
-
printMessage(error.response.data, 'error');
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
emailTemplates.sort((a, b) => a._id.localeCompare(b._id));
|
|
40
|
-
|
|
41
|
-
if (!long) {
|
|
42
|
-
for (const [, emailTemplate] of emailTemplates.entries()) {
|
|
43
|
-
printMessage(`${emailTemplate._id.replace(`${EMAIL_TEMPLATE_TYPE}/`, '')}`, 'data');
|
|
44
|
-
}
|
|
45
|
-
} else {
|
|
46
|
-
const table = createTable(['Id'['brightCyan'], 'Name'['brightCyan'], 'Status'['brightCyan'], 'Locale(s)'['brightCyan'], 'From'['brightCyan'], 'Subject'['brightCyan']]);
|
|
47
|
-
emailTemplates.forEach(emailTemplate => {
|
|
48
|
-
table.push([// Id
|
|
49
|
-
`${emailTemplate._id.replace(`${EMAIL_TEMPLATE_TYPE}/`, '')}`, // Name
|
|
50
|
-
`${emailTemplate.displayName ? emailTemplate.displayName : ''}`, // Status
|
|
51
|
-
emailTemplate.enabled === false ? 'disabled'['brightRed'] : 'enabled'['brightGreen'], // Locale(s)
|
|
52
|
-
`${emailTemplate.defaultLocale}${Object.keys(emailTemplate.subject).length > 1 ? ` (${Object.keys(emailTemplate.subject).filter(locale => locale !== emailTemplate.defaultLocale).join(',')})` : ''}`, // From
|
|
53
|
-
`${emailTemplate.from ? emailTemplate.from : ''}`, // Subject
|
|
54
|
-
wordwrap(emailTemplate.subject[emailTemplate.defaultLocale], 40)]);
|
|
55
|
-
});
|
|
56
|
-
printMessage(table.toString(), 'data');
|
|
57
|
-
}
|
|
53
|
+
function listEmailTemplates() {
|
|
54
|
+
return _listEmailTemplates.apply(this, arguments);
|
|
58
55
|
}
|
|
59
56
|
/**
|
|
60
57
|
* Export a single email template to file
|
|
@@ -62,81 +59,121 @@ export async function listEmailTemplates(long = false) {
|
|
|
62
59
|
* @param {String} file optional filename
|
|
63
60
|
*/
|
|
64
61
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
62
|
+
|
|
63
|
+
function _listEmailTemplates() {
|
|
64
|
+
_listEmailTemplates = _asyncToGenerator(function* () {
|
|
65
|
+
var long = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
66
|
+
var emailTemplates = [];
|
|
67
|
+
|
|
68
|
+
try {
|
|
69
|
+
emailTemplates = (yield (0, _EmailTemplateApi.getEmailTemplates)()).data.result;
|
|
70
|
+
} catch (error) {
|
|
71
|
+
(0, _Console.printMessage)("".concat(error.message), 'error');
|
|
72
|
+
(0, _Console.printMessage)(error.response.data, 'error');
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
emailTemplates.sort((a, b) => a._id.localeCompare(b._id));
|
|
76
|
+
|
|
77
|
+
if (!long) {
|
|
78
|
+
for (var [, emailTemplate] of emailTemplates.entries()) {
|
|
79
|
+
(0, _Console.printMessage)("".concat(emailTemplate._id.replace("".concat(_EmailTemplateApi.EMAIL_TEMPLATE_TYPE, "/"), '')), 'data');
|
|
80
|
+
}
|
|
81
|
+
} else {
|
|
82
|
+
var table = (0, _Console.createTable)(['Id'['brightCyan'], 'Name'['brightCyan'], 'Status'['brightCyan'], 'Locale(s)'['brightCyan'], 'From'['brightCyan'], 'Subject'['brightCyan']]);
|
|
83
|
+
emailTemplates.forEach(emailTemplate => {
|
|
84
|
+
table.push([// Id
|
|
85
|
+
"".concat(emailTemplate._id.replace("".concat(_EmailTemplateApi.EMAIL_TEMPLATE_TYPE, "/"), '')), // Name
|
|
86
|
+
"".concat(emailTemplate.displayName ? emailTemplate.displayName : ''), // Status
|
|
87
|
+
emailTemplate.enabled === false ? 'disabled'['brightRed'] : 'enabled'['brightGreen'], // Locale(s)
|
|
88
|
+
"".concat(emailTemplate.defaultLocale).concat(Object.keys(emailTemplate.subject).length > 1 ? " (".concat(Object.keys(emailTemplate.subject).filter(locale => locale !== emailTemplate.defaultLocale).join(','), ")") : ''), // From
|
|
89
|
+
"".concat(emailTemplate.from ? emailTemplate.from : ''), // Subject
|
|
90
|
+
(0, _Wordwrap.default)(emailTemplate.subject[emailTemplate.defaultLocale], 40)]);
|
|
91
|
+
});
|
|
92
|
+
(0, _Console.printMessage)(table.toString(), 'data');
|
|
93
|
+
}
|
|
83
94
|
});
|
|
95
|
+
return _listEmailTemplates.apply(this, arguments);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function exportEmailTemplateToFile(_x, _x2) {
|
|
99
|
+
return _exportEmailTemplateToFile.apply(this, arguments);
|
|
84
100
|
}
|
|
85
101
|
/**
|
|
86
102
|
* Export all email templates to file
|
|
87
103
|
* @param {String} file optional filename
|
|
88
104
|
*/
|
|
89
105
|
|
|
90
|
-
export async function exportEmailTemplatesToFile(file) {
|
|
91
|
-
let fileName = file;
|
|
92
|
-
|
|
93
|
-
if (!fileName) {
|
|
94
|
-
fileName = getTypedFilename(`allEmailTemplates`, EMAIL_TEMPLATE_FILE_TYPE);
|
|
95
|
-
}
|
|
96
106
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
createProgressIndicator(response.data.resultCount, 'Exporting email templates');
|
|
107
|
+
function _exportEmailTemplateToFile() {
|
|
108
|
+
_exportEmailTemplateToFile = _asyncToGenerator(function* (templateId, file) {
|
|
109
|
+
var fileName = file;
|
|
101
110
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
updateProgressIndicator(`Exporting ${templateId}`);
|
|
106
|
-
fileData.emailTemplate[templateId] = template;
|
|
111
|
+
if (!fileName) {
|
|
112
|
+
fileName = (0, _ExportImportUtils.getTypedFilename)(templateId, EMAIL_TEMPLATE_FILE_TYPE);
|
|
107
113
|
}
|
|
108
114
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
115
|
+
(0, _Console.createProgressIndicator)(1, "Exporting ".concat(templateId));
|
|
116
|
+
(0, _EmailTemplateApi.getEmailTemplate)(templateId).then( /*#__PURE__*/function () {
|
|
117
|
+
var _ref = _asyncToGenerator(function* (response) {
|
|
118
|
+
var templateData = response.data;
|
|
119
|
+
(0, _Console.updateProgressIndicator)("Writing file ".concat(fileName));
|
|
120
|
+
var fileData = getFileDataTemplate();
|
|
121
|
+
fileData.emailTemplate[templateId] = templateData;
|
|
122
|
+
(0, _ExportImportUtils.saveJsonToFile)(fileData, fileName);
|
|
123
|
+
(0, _Console.stopProgressIndicator)("Exported ".concat(templateId.brightCyan, " to ").concat(fileName.brightCyan, "."));
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
return function (_x8) {
|
|
127
|
+
return _ref.apply(this, arguments);
|
|
128
|
+
};
|
|
129
|
+
}()).catch(err => {
|
|
130
|
+
(0, _Console.stopProgressIndicator)("".concat(err));
|
|
131
|
+
(0, _Console.printMessage)(err, 'error');
|
|
132
|
+
});
|
|
114
133
|
});
|
|
134
|
+
return _exportEmailTemplateToFile.apply(this, arguments);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
function exportEmailTemplatesToFile(_x3) {
|
|
138
|
+
return _exportEmailTemplatesToFile.apply(this, arguments);
|
|
115
139
|
}
|
|
116
140
|
/**
|
|
117
141
|
* Export all email templates to separate files
|
|
118
142
|
*/
|
|
119
143
|
|
|
120
|
-
export async function exportEmailTemplatesToFiles() {
|
|
121
|
-
getEmailTemplates().then(response => {
|
|
122
|
-
const templates = response.data.result;
|
|
123
|
-
createProgressIndicator(response.data.resultCount, 'Exporting email templates');
|
|
124
144
|
|
|
125
|
-
|
|
126
|
-
|
|
145
|
+
function _exportEmailTemplatesToFile() {
|
|
146
|
+
_exportEmailTemplatesToFile = _asyncToGenerator(function* (file) {
|
|
147
|
+
var fileName = file;
|
|
127
148
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
updateProgressIndicator(`Exporting ${templateId}`);
|
|
131
|
-
fileData.emailTemplate[templateId] = template;
|
|
132
|
-
saveJsonToFile(fileData, fileName);
|
|
149
|
+
if (!fileName) {
|
|
150
|
+
fileName = (0, _ExportImportUtils.getTypedFilename)("allEmailTemplates", EMAIL_TEMPLATE_FILE_TYPE);
|
|
133
151
|
}
|
|
134
152
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
153
|
+
var fileData = getFileDataTemplate();
|
|
154
|
+
(0, _EmailTemplateApi.getEmailTemplates)().then(response => {
|
|
155
|
+
var templates = response.data.result;
|
|
156
|
+
(0, _Console.createProgressIndicator)(response.data.resultCount, 'Exporting email templates');
|
|
157
|
+
|
|
158
|
+
for (var template of templates) {
|
|
159
|
+
var templateId = template._id.replace("".concat(_EmailTemplateApi.EMAIL_TEMPLATE_TYPE, "/"), '');
|
|
160
|
+
|
|
161
|
+
(0, _Console.updateProgressIndicator)("Exporting ".concat(templateId));
|
|
162
|
+
fileData.emailTemplate[templateId] = template;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
(0, _ExportImportUtils.saveJsonToFile)(fileData, fileName);
|
|
166
|
+
(0, _Console.stopProgressIndicator)("".concat(response.data.resultCount, " templates exported to ").concat(fileName, "."));
|
|
167
|
+
}).catch(err => {
|
|
168
|
+
(0, _Console.stopProgressIndicator)("".concat(err));
|
|
169
|
+
(0, _Console.printMessage)(err, 'error');
|
|
170
|
+
});
|
|
139
171
|
});
|
|
172
|
+
return _exportEmailTemplatesToFile.apply(this, arguments);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
function exportEmailTemplatesToFiles() {
|
|
176
|
+
return _exportEmailTemplatesToFiles.apply(this, arguments);
|
|
140
177
|
}
|
|
141
178
|
/**
|
|
142
179
|
* Import email template by id from file
|
|
@@ -144,139 +181,211 @@ export async function exportEmailTemplatesToFiles() {
|
|
|
144
181
|
* @param {String} file optional filename
|
|
145
182
|
*/
|
|
146
183
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
stopProgressIndicator(`${putEmailTemplateError}`);
|
|
163
|
-
printMessage(putEmailTemplateError, 'error');
|
|
164
|
-
});
|
|
165
|
-
} else {
|
|
166
|
-
stopProgressIndicator(`Email template ${templateId.brightCyan} not found in ${file.brightCyan}!`);
|
|
167
|
-
printMessage(`Email template ${templateId.brightCyan} not found in ${file.brightCyan}!`, 'error');
|
|
184
|
+
|
|
185
|
+
function _exportEmailTemplatesToFiles() {
|
|
186
|
+
_exportEmailTemplatesToFiles = _asyncToGenerator(function* () {
|
|
187
|
+
(0, _EmailTemplateApi.getEmailTemplates)().then(response => {
|
|
188
|
+
var templates = response.data.result;
|
|
189
|
+
(0, _Console.createProgressIndicator)(response.data.resultCount, 'Exporting email templates');
|
|
190
|
+
|
|
191
|
+
for (var template of templates) {
|
|
192
|
+
var templateId = template._id.replace("".concat(_EmailTemplateApi.EMAIL_TEMPLATE_TYPE, "/"), '');
|
|
193
|
+
|
|
194
|
+
var fileName = (0, _ExportImportUtils.getTypedFilename)(templateId, EMAIL_TEMPLATE_FILE_TYPE);
|
|
195
|
+
var fileData = getFileDataTemplate();
|
|
196
|
+
(0, _Console.updateProgressIndicator)("Exporting ".concat(templateId));
|
|
197
|
+
fileData.emailTemplate[templateId] = template;
|
|
198
|
+
(0, _ExportImportUtils.saveJsonToFile)(fileData, fileName);
|
|
168
199
|
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
}
|
|
200
|
+
|
|
201
|
+
(0, _Console.stopProgressIndicator)("".concat(response.data.resultCount, " templates exported."));
|
|
202
|
+
}).catch(err => {
|
|
203
|
+
(0, _Console.stopProgressIndicator)("".concat(err));
|
|
204
|
+
(0, _Console.printMessage)(err, 'error');
|
|
205
|
+
});
|
|
172
206
|
});
|
|
207
|
+
return _exportEmailTemplatesToFiles.apply(this, arguments);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
function importEmailTemplateFromFile(_x4, _x5) {
|
|
211
|
+
return _importEmailTemplateFromFile.apply(this, arguments);
|
|
173
212
|
}
|
|
174
213
|
/**
|
|
175
214
|
* Import all email templates from file
|
|
176
215
|
* @param {String} file optional filename
|
|
177
216
|
*/
|
|
178
217
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
updateProgressIndicator(
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
218
|
+
|
|
219
|
+
function _importEmailTemplateFromFile() {
|
|
220
|
+
_importEmailTemplateFromFile = _asyncToGenerator(function* (templateId, file) {
|
|
221
|
+
// eslint-disable-next-line no-param-reassign
|
|
222
|
+
templateId = templateId.replaceAll("".concat(_EmailTemplateApi.EMAIL_TEMPLATE_TYPE, "/"), '');
|
|
223
|
+
|
|
224
|
+
_fs.default.readFile(file, 'utf8', (err, data) => {
|
|
225
|
+
if (err) throw err;
|
|
226
|
+
var fileData = JSON.parse(data);
|
|
227
|
+
|
|
228
|
+
if ((0, _ExportImportUtils.validateImport)(fileData.meta)) {
|
|
229
|
+
(0, _Console.createProgressIndicator)(1, "Importing ".concat(templateId));
|
|
230
|
+
|
|
231
|
+
if (fileData.emailTemplate[templateId]) {
|
|
232
|
+
(0, _EmailTemplateApi.putEmailTemplate)(templateId, fileData.emailTemplate[templateId]).then(() => {
|
|
233
|
+
(0, _Console.updateProgressIndicator)("Importing ".concat(templateId));
|
|
234
|
+
(0, _Console.stopProgressIndicator)("Imported ".concat(templateId));
|
|
235
|
+
}).catch(putEmailTemplateError => {
|
|
236
|
+
(0, _Console.stopProgressIndicator)("".concat(putEmailTemplateError));
|
|
237
|
+
(0, _Console.printMessage)(putEmailTemplateError, 'error');
|
|
238
|
+
});
|
|
239
|
+
} else {
|
|
240
|
+
(0, _Console.stopProgressIndicator)("Email template ".concat(templateId.brightCyan, " not found in ").concat(file.brightCyan, "!"));
|
|
241
|
+
(0, _Console.printMessage)("Email template ".concat(templateId.brightCyan, " not found in ").concat(file.brightCyan, "!"), 'error');
|
|
199
242
|
}
|
|
243
|
+
} else {
|
|
244
|
+
(0, _Console.printMessage)('Import validation failed...', 'error');
|
|
200
245
|
}
|
|
201
|
-
|
|
202
|
-
stopProgressIndicator(`Done.`);
|
|
203
|
-
} else {
|
|
204
|
-
printMessage('Import validation failed...', 'error');
|
|
205
|
-
}
|
|
246
|
+
});
|
|
206
247
|
});
|
|
248
|
+
return _importEmailTemplateFromFile.apply(this, arguments);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
function importEmailTemplatesFromFile(_x6) {
|
|
252
|
+
return _importEmailTemplatesFromFile.apply(this, arguments);
|
|
207
253
|
}
|
|
208
254
|
/**
|
|
209
255
|
* Import all email templates from separate files
|
|
210
256
|
*/
|
|
211
257
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
printMessage(`\nError importing ${templateId}`, 'error');
|
|
237
|
-
printMessage(putEmailTemplateError.response.data, 'error');
|
|
258
|
+
|
|
259
|
+
function _importEmailTemplatesFromFile() {
|
|
260
|
+
_importEmailTemplatesFromFile = _asyncToGenerator(function* (file) {
|
|
261
|
+
_fs.default.readFile(file, 'utf8', /*#__PURE__*/function () {
|
|
262
|
+
var _ref2 = _asyncToGenerator(function* (err, data) {
|
|
263
|
+
if (err) throw err;
|
|
264
|
+
var fileData = JSON.parse(data);
|
|
265
|
+
|
|
266
|
+
if ((0, _ExportImportUtils.validateImport)(fileData.meta)) {
|
|
267
|
+
(0, _Console.createProgressIndicator)(Object.keys(fileData.emailTemplate).length, "Importing email templates");
|
|
268
|
+
|
|
269
|
+
for (var id in fileData.emailTemplate) {
|
|
270
|
+
if ({}.hasOwnProperty.call(fileData.emailTemplate, id)) {
|
|
271
|
+
var templateId = id.replace(regexEmailTemplateType, '');
|
|
272
|
+
|
|
273
|
+
try {
|
|
274
|
+
// eslint-disable-next-line no-await-in-loop
|
|
275
|
+
yield (0, _EmailTemplateApi.putEmailTemplate)(templateId, fileData.emailTemplate[templateId]);
|
|
276
|
+
(0, _Console.updateProgressIndicator)("Imported ".concat(templateId));
|
|
277
|
+
} catch (putEmailTemplateError) {
|
|
278
|
+
(0, _Console.printMessage)("\nError importing ".concat(templateId), 'error');
|
|
279
|
+
(0, _Console.printMessage)(putEmailTemplateError.response.data, 'error');
|
|
280
|
+
}
|
|
281
|
+
}
|
|
238
282
|
}
|
|
283
|
+
|
|
284
|
+
(0, _Console.stopProgressIndicator)("Done.");
|
|
285
|
+
} else {
|
|
286
|
+
(0, _Console.printMessage)('Import validation failed...', 'error');
|
|
239
287
|
}
|
|
240
|
-
}
|
|
288
|
+
});
|
|
241
289
|
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
290
|
+
return function (_x9, _x10) {
|
|
291
|
+
return _ref2.apply(this, arguments);
|
|
292
|
+
};
|
|
293
|
+
}());
|
|
294
|
+
});
|
|
295
|
+
return _importEmailTemplatesFromFile.apply(this, arguments);
|
|
296
|
+
}
|
|
248
297
|
|
|
249
|
-
|
|
298
|
+
function importEmailTemplatesFromFiles() {
|
|
299
|
+
return _importEmailTemplatesFromFiles.apply(this, arguments);
|
|
250
300
|
}
|
|
251
301
|
/**
|
|
252
302
|
* Import first email template from file
|
|
253
303
|
* @param {String} file optional filename
|
|
254
304
|
*/
|
|
255
305
|
|
|
256
|
-
export async function importFirstEmailTemplateFromFile(file) {
|
|
257
|
-
fs.readFile(file, 'utf8', (err, data) => {
|
|
258
|
-
if (err) throw err;
|
|
259
|
-
const fileData = JSON.parse(data);
|
|
260
306
|
|
|
261
|
-
|
|
262
|
-
|
|
307
|
+
function _importEmailTemplatesFromFiles() {
|
|
308
|
+
_importEmailTemplatesFromFiles = _asyncToGenerator(function* () {
|
|
309
|
+
var names = _fs.default.readdirSync('.');
|
|
263
310
|
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
311
|
+
var jsonFiles = names.filter(name => name.toLowerCase().endsWith("".concat(EMAIL_TEMPLATE_FILE_TYPE, ".json")));
|
|
312
|
+
(0, _Console.createProgressIndicator)(jsonFiles.length, 'Importing email templates...');
|
|
313
|
+
var total = 0;
|
|
314
|
+
var totalErrors = 0;
|
|
315
|
+
|
|
316
|
+
for (var file of jsonFiles) {
|
|
317
|
+
var data = _fs.default.readFileSync(file, 'utf8');
|
|
318
|
+
|
|
319
|
+
var fileData = JSON.parse(data);
|
|
320
|
+
|
|
321
|
+
if ((0, _ExportImportUtils.validateImport)(fileData.meta)) {
|
|
322
|
+
total += Object.keys(fileData.emailTemplate).length;
|
|
323
|
+
var errors = 0;
|
|
324
|
+
|
|
325
|
+
for (var id in fileData.emailTemplate) {
|
|
326
|
+
if ({}.hasOwnProperty.call(fileData.emailTemplate, id)) {
|
|
327
|
+
var templateId = id.replace(regexEmailTemplateType, '');
|
|
328
|
+
|
|
329
|
+
try {
|
|
330
|
+
// eslint-disable-next-line no-await-in-loop
|
|
331
|
+
yield (0, _EmailTemplateApi.putEmailTemplate)(templateId, fileData.emailTemplate[templateId]);
|
|
332
|
+
} catch (putEmailTemplateError) {
|
|
333
|
+
errors += 1;
|
|
334
|
+
(0, _Console.printMessage)("\nError importing ".concat(templateId), 'error');
|
|
335
|
+
(0, _Console.printMessage)(putEmailTemplateError.response.data, 'error');
|
|
336
|
+
}
|
|
337
|
+
}
|
|
275
338
|
}
|
|
339
|
+
|
|
340
|
+
totalErrors += errors;
|
|
341
|
+
(0, _Console.updateProgressIndicator)("Imported ".concat(file));
|
|
342
|
+
} else {
|
|
343
|
+
(0, _Console.printMessage)("Validation of ".concat(file, " failed!"), 'error');
|
|
276
344
|
}
|
|
277
|
-
} else {
|
|
278
|
-
printMessage('Import validation failed...', 'error');
|
|
279
345
|
}
|
|
346
|
+
|
|
347
|
+
(0, _Console.stopProgressIndicator)("Imported ".concat(total - totalErrors, " of ").concat(total, " email template(s) from ").concat(jsonFiles.length, " file(s)."));
|
|
348
|
+
});
|
|
349
|
+
return _importEmailTemplatesFromFiles.apply(this, arguments);
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
function importFirstEmailTemplateFromFile(_x7) {
|
|
353
|
+
return _importFirstEmailTemplateFromFile.apply(this, arguments);
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
function _importFirstEmailTemplateFromFile() {
|
|
357
|
+
_importFirstEmailTemplateFromFile = _asyncToGenerator(function* (file) {
|
|
358
|
+
_fs.default.readFile(file, 'utf8', (err, data) => {
|
|
359
|
+
if (err) throw err;
|
|
360
|
+
var fileData = JSON.parse(data);
|
|
361
|
+
|
|
362
|
+
if ((0, _ExportImportUtils.validateImport)(fileData.meta)) {
|
|
363
|
+
(0, _Console.createProgressIndicator)(1, "Importing first email template");
|
|
364
|
+
|
|
365
|
+
var _loop = function _loop(id) {
|
|
366
|
+
if ({}.hasOwnProperty.call(fileData.emailTemplate, id)) {
|
|
367
|
+
(0, _EmailTemplateApi.putEmailTemplate)(id.replace(regexEmailTemplateType, ''), fileData.emailTemplate[id]).then(() => {
|
|
368
|
+
(0, _Console.updateProgressIndicator)("Imported ".concat(id));
|
|
369
|
+
(0, _Console.stopProgressIndicator)("Imported ".concat(id));
|
|
370
|
+
}).catch(putEmailTemplateError => {
|
|
371
|
+
(0, _Console.stopProgressIndicator)("Error importing email template ".concat(id));
|
|
372
|
+
(0, _Console.printMessage)("\nError importing email template ".concat(id), 'error');
|
|
373
|
+
(0, _Console.printMessage)(putEmailTemplateError.response.data, 'error');
|
|
374
|
+
});
|
|
375
|
+
return "break";
|
|
376
|
+
}
|
|
377
|
+
};
|
|
378
|
+
|
|
379
|
+
for (var id in fileData.emailTemplate) {
|
|
380
|
+
var _ret = _loop(id);
|
|
381
|
+
|
|
382
|
+
if (_ret === "break") break;
|
|
383
|
+
}
|
|
384
|
+
} else {
|
|
385
|
+
(0, _Console.printMessage)('Import validation failed...', 'error');
|
|
386
|
+
}
|
|
387
|
+
});
|
|
280
388
|
});
|
|
389
|
+
return _importFirstEmailTemplateFromFile.apply(this, arguments);
|
|
281
390
|
}
|
|
282
391
|
//# sourceMappingURL=EmailTemplateOps.js.map
|