@rockcarver/frodo-lib 2.0.0-2 → 2.0.0-4
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 +9 -1
- package/cjs/api/AgentApi.js +64 -16
- package/cjs/api/AgentApi.js.map +1 -1
- package/cjs/api/ApiTypes.js +0 -55
- package/cjs/api/ApiTypes.js.map +1 -1
- package/cjs/api/BaseApi.js +21 -11
- package/cjs/api/BaseApi.js.map +1 -1
- package/cjs/api/cloud/SecretsApi.js +7 -14
- package/cjs/api/cloud/SecretsApi.js.map +1 -1
- package/cjs/api/cloud/SecretsApi.test.js.map +1 -1
- package/cjs/index.js +6 -0
- package/cjs/index.js.map +1 -1
- package/cjs/ops/AdminOps.js +254 -60
- package/cjs/ops/AdminOps.js.map +1 -1
- package/cjs/ops/AgentOps.js +352 -108
- package/cjs/ops/AgentOps.js.map +1 -1
- package/cjs/ops/AuthenticateOps.js +262 -65
- package/cjs/ops/AuthenticateOps.js.map +1 -1
- package/cjs/ops/CirclesOfTrustOps.js +16 -4
- package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
- package/cjs/ops/ConnectionProfileOps.js +163 -40
- package/cjs/ops/ConnectionProfileOps.js.map +1 -1
- package/cjs/ops/EmailTemplateOps.js +7 -1
- package/cjs/ops/EmailTemplateOps.js.map +1 -1
- package/cjs/ops/IdpOps.js +55 -12
- package/cjs/ops/IdpOps.js.map +1 -1
- package/cjs/ops/JourneyOps.js +645 -136
- package/cjs/ops/JourneyOps.js.map +1 -1
- package/cjs/ops/NodeOps.js +96 -24
- package/cjs/ops/NodeOps.js.map +1 -1
- package/cjs/ops/OAuth2ClientOps.js +45 -11
- package/cjs/ops/OAuth2ClientOps.js.map +1 -1
- package/cjs/ops/OpsTypes.js +0 -23
- package/cjs/ops/OpsTypes.js.map +1 -1
- package/cjs/ops/OrganizationOps.js +44 -10
- package/cjs/ops/OrganizationOps.js.map +1 -1
- package/cjs/ops/PolicyOps.js +86 -24
- package/cjs/ops/PolicyOps.js.map +1 -1
- package/cjs/ops/PolicySetOps.js +72 -18
- package/cjs/ops/PolicySetOps.js.map +1 -1
- package/cjs/ops/ResourceTypeOps.js +24 -6
- package/cjs/ops/ResourceTypeOps.js.map +1 -1
- package/cjs/ops/Saml2Ops.js +121 -42
- package/cjs/ops/Saml2Ops.js.map +1 -1
- package/cjs/ops/Saml2Ops.test.js.map +1 -1
- package/cjs/ops/ScriptOps.js +73 -17
- package/cjs/ops/ScriptOps.js.map +1 -1
- package/cjs/ops/ServiceOps.js +152 -35
- package/cjs/ops/ServiceOps.js.map +1 -1
- package/cjs/ops/ThemeOps.js +20 -5
- package/cjs/ops/ThemeOps.js.map +1 -1
- package/cjs/ops/cloud/FeatureOps.js +4 -1
- package/cjs/ops/cloud/FeatureOps.js.map +1 -1
- package/cjs/ops/cloud/SecretsOps.js.map +1 -1
- package/cjs/ops/cloud/ServiceAccountOps.js +24 -6
- package/cjs/ops/cloud/ServiceAccountOps.js.map +1 -1
- package/cjs/ops/cloud/StartupOps.js +55 -11
- package/cjs/ops/cloud/StartupOps.js.map +1 -1
- package/cjs/ops/utils/Console.js +47 -22
- package/cjs/ops/utils/Console.js.map +1 -1
- package/cjs/ops/utils/DataProtection.js +12 -5
- 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 +15 -8
- package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
- package/cjs/ops/utils/ScriptValidationUtils.js +33 -8
- package/cjs/ops/utils/ScriptValidationUtils.js.map +1 -1
- package/cjs/ops/utils/ScriptValidationUtils.test.js.map +1 -1
- package/cjs/utils/SetupPollyForFrodoLib.js +67 -19
- package/cjs/utils/SetupPollyForFrodoLib.js.map +1 -1
- package/esm/api/AgentApi.mjs +64 -16
- package/esm/api/ApiTypes.mjs +1 -50
- package/esm/api/BaseApi.mjs +21 -11
- package/esm/api/cloud/SecretsApi.mjs +0 -5
- package/esm/api/cloud/SecretsApi.test.mjs +3 -3
- package/esm/index.mjs +1 -1
- package/esm/ops/AdminOps.mjs +254 -60
- package/esm/ops/AgentOps.mjs +352 -104
- package/esm/ops/AuthenticateOps.mjs +262 -65
- package/esm/ops/CirclesOfTrustOps.mjs +16 -4
- package/esm/ops/ConnectionProfileOps.mjs +163 -40
- package/esm/ops/EmailTemplateOps.mjs +5 -0
- package/esm/ops/IdpOps.mjs +55 -12
- package/esm/ops/JourneyOps.mjs +639 -132
- package/esm/ops/NodeOps.mjs +90 -19
- package/esm/ops/OAuth2ClientOps.mjs +45 -11
- package/esm/ops/OpsTypes.mjs +1 -22
- package/esm/ops/OrganizationOps.mjs +44 -10
- package/esm/ops/PolicyOps.mjs +86 -24
- package/esm/ops/PolicySetOps.mjs +72 -18
- package/esm/ops/ResourceTypeOps.mjs +24 -6
- package/esm/ops/Saml2Ops.mjs +120 -39
- package/esm/ops/Saml2Ops.test.mjs +10 -11
- package/esm/ops/ScriptOps.mjs +73 -17
- package/esm/ops/ServiceOps.mjs +152 -35
- package/esm/ops/ThemeOps.mjs +20 -5
- package/esm/ops/cloud/FeatureOps.mjs +4 -1
- package/esm/ops/cloud/ServiceAccountOps.mjs +24 -6
- package/esm/ops/cloud/StartupOps.mjs +55 -11
- package/esm/ops/utils/Console.mjs +33 -9
- package/esm/ops/utils/DataProtection.mjs +9 -2
- package/esm/ops/utils/DataProtection.test.mjs +8 -2
- package/esm/ops/utils/ExportImportUtils.mjs +15 -8
- package/esm/ops/utils/ScriptValidationUtils.mjs +30 -8
- package/esm/ops/utils/ScriptValidationUtils.test.mjs +14 -3
- package/esm/utils/SetupPollyForFrodoLib.mjs +64 -18
- package/package.json +1 -1
- package/types/api/AgentApi.d.ts +6 -6
- package/types/api/AgentApi.d.ts.map +1 -1
- package/types/api/ApiTypes.d.ts +12 -49
- package/types/api/ApiTypes.d.ts.map +1 -1
- package/types/api/BaseApi.d.ts.map +1 -1
- package/types/api/cloud/SecretsApi.d.ts +1 -4
- package/types/api/cloud/SecretsApi.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/ops/AdminOps.d.ts.map +1 -1
- package/types/ops/AgentOps.d.ts +3 -6
- package/types/ops/AgentOps.d.ts.map +1 -1
- package/types/ops/AuthenticateOps.d.ts.map +1 -1
- package/types/ops/CirclesOfTrustOps.d.ts.map +1 -1
- package/types/ops/ConnectionProfileOps.d.ts.map +1 -1
- package/types/ops/EmailTemplateOps.d.ts +4 -0
- package/types/ops/EmailTemplateOps.d.ts.map +1 -1
- package/types/ops/IdpOps.d.ts.map +1 -1
- package/types/ops/JourneyOps.d.ts +10 -5
- package/types/ops/JourneyOps.d.ts.map +1 -1
- package/types/ops/NodeOps.d.ts +10 -4
- package/types/ops/NodeOps.d.ts.map +1 -1
- package/types/ops/OAuth2ClientOps.d.ts.map +1 -1
- package/types/ops/OpsTypes.d.ts +2 -12
- package/types/ops/OpsTypes.d.ts.map +1 -1
- package/types/ops/OrganizationOps.d.ts.map +1 -1
- package/types/ops/PolicyOps.d.ts.map +1 -1
- package/types/ops/PolicySetOps.d.ts.map +1 -1
- package/types/ops/ResourceTypeOps.d.ts.map +1 -1
- package/types/ops/Saml2Ops.d.ts +0 -6
- package/types/ops/Saml2Ops.d.ts.map +1 -1
- package/types/ops/ScriptOps.d.ts.map +1 -1
- package/types/ops/ServiceOps.d.ts.map +1 -1
- package/types/ops/ThemeOps.d.ts.map +1 -1
- package/types/ops/cloud/FeatureOps.d.ts.map +1 -1
- package/types/ops/cloud/SecretsOps.d.ts +1 -1
- package/types/ops/cloud/SecretsOps.d.ts.map +1 -1
- package/types/ops/cloud/ServiceAccountOps.d.ts.map +1 -1
- package/types/ops/cloud/StartupOps.d.ts.map +1 -1
- package/types/ops/utils/Console.d.ts +34 -7
- package/types/ops/utils/Console.d.ts.map +1 -1
- package/types/ops/utils/DataProtection.d.ts +5 -1
- package/types/ops/utils/DataProtection.d.ts.map +1 -1
- package/types/ops/utils/ExportImportUtils.d.ts.map +1 -1
- package/types/ops/utils/ScriptValidationUtils.d.ts +14 -4
- package/types/ops/utils/ScriptValidationUtils.d.ts.map +1 -1
- package/types/utils/SetupPollyForFrodoLib.d.ts +5 -1
- package/types/utils/SetupPollyForFrodoLib.d.ts.map +1 -1
package/cjs/ops/ServiceOps.js
CHANGED
|
@@ -205,12 +205,18 @@ function _getListOfServices2() {
|
|
|
205
205
|
globalConfig = false,
|
|
206
206
|
state
|
|
207
207
|
} = _ref;
|
|
208
|
-
(0, _Console.debugMessage)(
|
|
208
|
+
(0, _Console.debugMessage)({
|
|
209
|
+
message: "ServiceOps.getListOfServices: start",
|
|
210
|
+
state
|
|
211
|
+
});
|
|
209
212
|
var services = (yield (0, _ServiceApi.getListOfServices)({
|
|
210
213
|
globalConfig,
|
|
211
214
|
state
|
|
212
215
|
})).result;
|
|
213
|
-
(0, _Console.debugMessage)(
|
|
216
|
+
(0, _Console.debugMessage)({
|
|
217
|
+
message: "ServiceOps.getListOfServices: end",
|
|
218
|
+
state
|
|
219
|
+
});
|
|
214
220
|
return services;
|
|
215
221
|
});
|
|
216
222
|
return _getListOfServices2.apply(this, arguments);
|
|
@@ -231,7 +237,10 @@ function _getFullServices() {
|
|
|
231
237
|
globalConfig = false,
|
|
232
238
|
state
|
|
233
239
|
} = _ref2;
|
|
234
|
-
(0, _Console.debugMessage)(
|
|
240
|
+
(0, _Console.debugMessage)({
|
|
241
|
+
message: "ServiceOps.getFullServices: start, globalConfig=".concat(globalConfig),
|
|
242
|
+
state
|
|
243
|
+
});
|
|
235
244
|
var serviceList = (yield (0, _ServiceApi.getListOfServices)({
|
|
236
245
|
globalConfig,
|
|
237
246
|
state
|
|
@@ -256,7 +265,11 @@ function _getFullServices() {
|
|
|
256
265
|
if (!(((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 403 && ((_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : (_error$response2$data = _error$response2.data) === null || _error$response2$data === void 0 ? void 0 : _error$response2$data.message) === 'This operation is not available in ForgeRock Identity Cloud.')) {
|
|
257
266
|
var _error$response3, _error$response3$data;
|
|
258
267
|
var message = (_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : (_error$response3$data = _error$response3.data) === null || _error$response3$data === void 0 ? void 0 : _error$response3$data.message;
|
|
259
|
-
(0, _Console.printMessage)(
|
|
268
|
+
(0, _Console.printMessage)({
|
|
269
|
+
message: "Unable to retrieve data for ".concat(listItem._id, " with error: ").concat(message),
|
|
270
|
+
type: 'error',
|
|
271
|
+
state
|
|
272
|
+
});
|
|
260
273
|
}
|
|
261
274
|
}
|
|
262
275
|
});
|
|
@@ -264,7 +277,10 @@ function _getFullServices() {
|
|
|
264
277
|
return _ref11.apply(this, arguments);
|
|
265
278
|
};
|
|
266
279
|
}()));
|
|
267
|
-
(0, _Console.debugMessage)(
|
|
280
|
+
(0, _Console.debugMessage)({
|
|
281
|
+
message: "ServiceOps.getFullServices: end",
|
|
282
|
+
state
|
|
283
|
+
});
|
|
268
284
|
return fullServiceData.filter(data => !!data); // make sure to filter out any undefined objects
|
|
269
285
|
});
|
|
270
286
|
return _getFullServices.apply(this, arguments);
|
|
@@ -288,14 +304,20 @@ function _putFullService() {
|
|
|
288
304
|
globalConfig = false,
|
|
289
305
|
state
|
|
290
306
|
} = _ref3;
|
|
291
|
-
(0, _Console.debugMessage)(
|
|
307
|
+
(0, _Console.debugMessage)({
|
|
308
|
+
message: "ServiceOps.putFullService: start, serviceId=".concat(serviceId, ", globalConfig=").concat(globalConfig),
|
|
309
|
+
state
|
|
310
|
+
});
|
|
292
311
|
var nextDescendents = fullServiceData.nextDescendents;
|
|
293
312
|
delete fullServiceData.nextDescendents;
|
|
294
313
|
delete fullServiceData._rev;
|
|
295
314
|
delete fullServiceData.enabled;
|
|
296
315
|
if (clean) {
|
|
297
316
|
try {
|
|
298
|
-
(0, _Console.debugMessage)(
|
|
317
|
+
(0, _Console.debugMessage)({
|
|
318
|
+
message: "ServiceOps.putFullService: clean",
|
|
319
|
+
state
|
|
320
|
+
});
|
|
299
321
|
yield deleteFullService({
|
|
300
322
|
serviceId,
|
|
301
323
|
globalConfig,
|
|
@@ -306,7 +328,11 @@ function _putFullService() {
|
|
|
306
328
|
if (!(((_error$response4 = error.response) === null || _error$response4 === void 0 ? void 0 : _error$response4.status) === 404 && ((_error$response5 = error.response) === null || _error$response5 === void 0 ? void 0 : (_error$response5$data = _error$response5.data) === null || _error$response5$data === void 0 ? void 0 : _error$response5$data.message) === 'Not Found')) {
|
|
307
329
|
var _error$response6, _error$response6$data;
|
|
308
330
|
var message = (_error$response6 = error.response) === null || _error$response6 === void 0 ? void 0 : (_error$response6$data = _error$response6.data) === null || _error$response6$data === void 0 ? void 0 : _error$response6$data.message;
|
|
309
|
-
(0, _Console.printMessage)(
|
|
331
|
+
(0, _Console.printMessage)({
|
|
332
|
+
message: "Error deleting service '".concat(serviceId, "' before import: ").concat(message),
|
|
333
|
+
type: 'error',
|
|
334
|
+
state
|
|
335
|
+
});
|
|
310
336
|
}
|
|
311
337
|
}
|
|
312
338
|
}
|
|
@@ -321,7 +347,10 @@ function _putFullService() {
|
|
|
321
347
|
|
|
322
348
|
// return fast if no next descendents supplied
|
|
323
349
|
if (nextDescendents.length === 0) {
|
|
324
|
-
(0, _Console.debugMessage)(
|
|
350
|
+
(0, _Console.debugMessage)({
|
|
351
|
+
message: "ServiceOps.putFullService: end (w/o descendents)",
|
|
352
|
+
state
|
|
353
|
+
});
|
|
325
354
|
return result;
|
|
326
355
|
}
|
|
327
356
|
|
|
@@ -330,7 +359,10 @@ function _putFullService() {
|
|
|
330
359
|
var _ref12 = _asyncToGenerator(function* (descendent) {
|
|
331
360
|
var type = descendent._type._id;
|
|
332
361
|
var descendentId = descendent._id;
|
|
333
|
-
(0, _Console.debugMessage)(
|
|
362
|
+
(0, _Console.debugMessage)({
|
|
363
|
+
message: "ServiceOps.putFullService: descendentId=".concat(descendentId),
|
|
364
|
+
state
|
|
365
|
+
});
|
|
334
366
|
var result = undefined;
|
|
335
367
|
try {
|
|
336
368
|
result = yield (0, _ServiceApi.putServiceNextDescendent)({
|
|
@@ -344,7 +376,11 @@ function _putFullService() {
|
|
|
344
376
|
} catch (error) {
|
|
345
377
|
var _error$response7, _error$response7$data;
|
|
346
378
|
var _message = (_error$response7 = error.response) === null || _error$response7 === void 0 ? void 0 : (_error$response7$data = _error$response7.data) === null || _error$response7$data === void 0 ? void 0 : _error$response7$data.message;
|
|
347
|
-
(0, _Console.printMessage)(
|
|
379
|
+
(0, _Console.printMessage)({
|
|
380
|
+
message: "Put descendent '".concat(descendentId, "' of service '").concat(serviceId, "': ").concat(_message),
|
|
381
|
+
type: 'error',
|
|
382
|
+
state
|
|
383
|
+
});
|
|
348
384
|
}
|
|
349
385
|
return result;
|
|
350
386
|
});
|
|
@@ -352,7 +388,10 @@ function _putFullService() {
|
|
|
352
388
|
return _ref12.apply(this, arguments);
|
|
353
389
|
};
|
|
354
390
|
}()));
|
|
355
|
-
(0, _Console.debugMessage)(
|
|
391
|
+
(0, _Console.debugMessage)({
|
|
392
|
+
message: "ServiceOps.putFullService: end (w/ descendents)",
|
|
393
|
+
state
|
|
394
|
+
});
|
|
356
395
|
});
|
|
357
396
|
return _putFullService.apply(this, arguments);
|
|
358
397
|
}
|
|
@@ -372,7 +411,10 @@ function _putFullServices() {
|
|
|
372
411
|
globalConfig = false,
|
|
373
412
|
state
|
|
374
413
|
} = _ref4;
|
|
375
|
-
(0, _Console.debugMessage)(
|
|
414
|
+
(0, _Console.debugMessage)({
|
|
415
|
+
message: "ServiceOps.putFullServices: start, globalConfig=".concat(globalConfig),
|
|
416
|
+
state
|
|
417
|
+
});
|
|
376
418
|
var results = [];
|
|
377
419
|
for (var [id, data] of serviceEntries) {
|
|
378
420
|
try {
|
|
@@ -384,18 +426,33 @@ function _putFullServices() {
|
|
|
384
426
|
state
|
|
385
427
|
});
|
|
386
428
|
results.push(result);
|
|
387
|
-
(0, _Console.printMessage)(
|
|
429
|
+
(0, _Console.printMessage)({
|
|
430
|
+
message: "Imported: ".concat(id),
|
|
431
|
+
type: 'info',
|
|
432
|
+
state
|
|
433
|
+
});
|
|
388
434
|
} catch (error) {
|
|
389
435
|
var _error$response8, _error$response8$data, _error$response9, _error$response9$data;
|
|
390
436
|
var message = (_error$response8 = error.response) === null || _error$response8 === void 0 ? void 0 : (_error$response8$data = _error$response8.data) === null || _error$response8$data === void 0 ? void 0 : _error$response8$data.message;
|
|
391
437
|
var detail = (_error$response9 = error.response) === null || _error$response9 === void 0 ? void 0 : (_error$response9$data = _error$response9.data) === null || _error$response9$data === void 0 ? void 0 : _error$response9$data.detail;
|
|
392
|
-
(0, _Console.printMessage)(
|
|
438
|
+
(0, _Console.printMessage)({
|
|
439
|
+
message: "Import service '".concat(id, "': ").concat(message),
|
|
440
|
+
type: 'error',
|
|
441
|
+
state
|
|
442
|
+
});
|
|
393
443
|
if (detail) {
|
|
394
|
-
(0, _Console.printMessage)(
|
|
444
|
+
(0, _Console.printMessage)({
|
|
445
|
+
message: "Details: ".concat(JSON.stringify(detail)),
|
|
446
|
+
type: 'error',
|
|
447
|
+
state
|
|
448
|
+
});
|
|
395
449
|
}
|
|
396
450
|
}
|
|
397
451
|
}
|
|
398
|
-
(0, _Console.debugMessage)(
|
|
452
|
+
(0, _Console.debugMessage)({
|
|
453
|
+
message: "ServiceOps.putFullServices: end",
|
|
454
|
+
state
|
|
455
|
+
});
|
|
399
456
|
return results;
|
|
400
457
|
});
|
|
401
458
|
return _putFullServices.apply(this, arguments);
|
|
@@ -414,7 +471,10 @@ function _deleteFullService() {
|
|
|
414
471
|
globalConfig = false,
|
|
415
472
|
state
|
|
416
473
|
} = _ref5;
|
|
417
|
-
(0, _Console.debugMessage)(
|
|
474
|
+
(0, _Console.debugMessage)({
|
|
475
|
+
message: "ServiceOps.deleteFullService: start, globalConfig=".concat(globalConfig),
|
|
476
|
+
state
|
|
477
|
+
});
|
|
418
478
|
var serviceNextDescendentData = yield (0, _ServiceApi.getServiceDescendents)({
|
|
419
479
|
serviceId,
|
|
420
480
|
globalConfig,
|
|
@@ -432,7 +492,10 @@ function _deleteFullService() {
|
|
|
432
492
|
globalConfig,
|
|
433
493
|
state
|
|
434
494
|
});
|
|
435
|
-
(0, _Console.debugMessage)(
|
|
495
|
+
(0, _Console.debugMessage)({
|
|
496
|
+
message: "ServiceOps.deleteFullService: end",
|
|
497
|
+
state
|
|
498
|
+
});
|
|
436
499
|
});
|
|
437
500
|
return _deleteFullService.apply(this, arguments);
|
|
438
501
|
}
|
|
@@ -451,7 +514,10 @@ function _deleteFullServices() {
|
|
|
451
514
|
globalConfig = false,
|
|
452
515
|
state
|
|
453
516
|
} = _ref6;
|
|
454
|
-
(0, _Console.debugMessage)(
|
|
517
|
+
(0, _Console.debugMessage)({
|
|
518
|
+
message: "ServiceOps.deleteFullServices: start, globalConfig=".concat(globalConfig),
|
|
519
|
+
state
|
|
520
|
+
});
|
|
455
521
|
try {
|
|
456
522
|
var serviceList = (yield (0, _ServiceApi.getListOfServices)({
|
|
457
523
|
globalConfig,
|
|
@@ -470,7 +536,11 @@ function _deleteFullServices() {
|
|
|
470
536
|
if (!(((_error$response10 = error.response) === null || _error$response10 === void 0 ? void 0 : _error$response10.status) === 403 && ((_error$response11 = error.response) === null || _error$response11 === void 0 ? void 0 : (_error$response11$dat = _error$response11.data) === null || _error$response11$dat === void 0 ? void 0 : _error$response11$dat.message) === 'This operation is not available in ForgeRock Identity Cloud.')) {
|
|
471
537
|
var _error$response12, _error$response12$dat;
|
|
472
538
|
var message = (_error$response12 = error.response) === null || _error$response12 === void 0 ? void 0 : (_error$response12$dat = _error$response12.data) === null || _error$response12$dat === void 0 ? void 0 : _error$response12$dat.message;
|
|
473
|
-
(0, _Console.printMessage)(
|
|
539
|
+
(0, _Console.printMessage)({
|
|
540
|
+
message: "Delete service '".concat(serviceListItem._id, "': ").concat(message),
|
|
541
|
+
state,
|
|
542
|
+
type: 'error'
|
|
543
|
+
});
|
|
474
544
|
}
|
|
475
545
|
}
|
|
476
546
|
});
|
|
@@ -481,9 +551,16 @@ function _deleteFullServices() {
|
|
|
481
551
|
} catch (error) {
|
|
482
552
|
var _error$response13, _error$response13$dat;
|
|
483
553
|
var message = (_error$response13 = error.response) === null || _error$response13 === void 0 ? void 0 : (_error$response13$dat = _error$response13.data) === null || _error$response13$dat === void 0 ? void 0 : _error$response13$dat.message;
|
|
484
|
-
(0, _Console.printMessage)(
|
|
554
|
+
(0, _Console.printMessage)({
|
|
555
|
+
message: "Delete services: ".concat(message),
|
|
556
|
+
type: 'error',
|
|
557
|
+
state
|
|
558
|
+
});
|
|
485
559
|
}
|
|
486
|
-
(0, _Console.debugMessage)(
|
|
560
|
+
(0, _Console.debugMessage)({
|
|
561
|
+
message: "ServiceOps.deleteFullServices: end",
|
|
562
|
+
state
|
|
563
|
+
});
|
|
487
564
|
});
|
|
488
565
|
return _deleteFullServices.apply(this, arguments);
|
|
489
566
|
}
|
|
@@ -501,7 +578,10 @@ function _exportService() {
|
|
|
501
578
|
globalConfig = false,
|
|
502
579
|
state
|
|
503
580
|
} = _ref7;
|
|
504
|
-
(0, _Console.debugMessage)(
|
|
581
|
+
(0, _Console.debugMessage)({
|
|
582
|
+
message: "ServiceOps.exportService: start, globalConfig=".concat(globalConfig),
|
|
583
|
+
state
|
|
584
|
+
});
|
|
505
585
|
var exportData = createServiceExportTemplate();
|
|
506
586
|
try {
|
|
507
587
|
var service = yield (0, _ServiceApi.getService)({
|
|
@@ -518,9 +598,16 @@ function _exportService() {
|
|
|
518
598
|
} catch (error) {
|
|
519
599
|
var _error$response14, _error$response14$dat;
|
|
520
600
|
var message = (_error$response14 = error.response) === null || _error$response14 === void 0 ? void 0 : (_error$response14$dat = _error$response14.data) === null || _error$response14$dat === void 0 ? void 0 : _error$response14$dat.message;
|
|
521
|
-
(0, _Console.printMessage)(
|
|
601
|
+
(0, _Console.printMessage)({
|
|
602
|
+
message: "Export service '".concat(serviceId, "': ").concat(message),
|
|
603
|
+
type: 'error',
|
|
604
|
+
state
|
|
605
|
+
});
|
|
522
606
|
}
|
|
523
|
-
(0, _Console.debugMessage)(
|
|
607
|
+
(0, _Console.debugMessage)({
|
|
608
|
+
message: "ServiceOps.exportService: end",
|
|
609
|
+
state
|
|
610
|
+
});
|
|
524
611
|
return exportData;
|
|
525
612
|
});
|
|
526
613
|
return _exportService.apply(this, arguments);
|
|
@@ -542,7 +629,10 @@ function _exportServices() {
|
|
|
542
629
|
globalConfig = false,
|
|
543
630
|
state
|
|
544
631
|
} = _ref8;
|
|
545
|
-
(0, _Console.debugMessage)(
|
|
632
|
+
(0, _Console.debugMessage)({
|
|
633
|
+
message: "ServiceOps.exportServices: start, globalConfig=".concat(globalConfig),
|
|
634
|
+
state
|
|
635
|
+
});
|
|
546
636
|
var exportData = createServiceExportTemplate();
|
|
547
637
|
try {
|
|
548
638
|
var services = yield getFullServices({
|
|
@@ -555,9 +645,16 @@ function _exportServices() {
|
|
|
555
645
|
} catch (error) {
|
|
556
646
|
var _error$response15, _error$response15$dat;
|
|
557
647
|
var message = (_error$response15 = error.response) === null || _error$response15 === void 0 ? void 0 : (_error$response15$dat = _error$response15.data) === null || _error$response15$dat === void 0 ? void 0 : _error$response15$dat.message;
|
|
558
|
-
(0, _Console.printMessage)(
|
|
648
|
+
(0, _Console.printMessage)({
|
|
649
|
+
message: "Export servics: ".concat(message),
|
|
650
|
+
type: 'error',
|
|
651
|
+
state
|
|
652
|
+
});
|
|
559
653
|
}
|
|
560
|
-
(0, _Console.debugMessage)(
|
|
654
|
+
(0, _Console.debugMessage)({
|
|
655
|
+
message: "ServiceOps.exportServices: end",
|
|
656
|
+
state
|
|
657
|
+
});
|
|
561
658
|
return exportData;
|
|
562
659
|
});
|
|
563
660
|
return _exportServices.apply(this, arguments);
|
|
@@ -580,7 +677,10 @@ function _importService() {
|
|
|
580
677
|
globalConfig = false,
|
|
581
678
|
state
|
|
582
679
|
} = _ref9;
|
|
583
|
-
(0, _Console.debugMessage)(
|
|
680
|
+
(0, _Console.debugMessage)({
|
|
681
|
+
message: "ServiceOps.importService: start, globalConfig=".concat(globalConfig),
|
|
682
|
+
state
|
|
683
|
+
});
|
|
584
684
|
var serviceData = importData.service[serviceId];
|
|
585
685
|
var result = yield putFullService({
|
|
586
686
|
serviceId,
|
|
@@ -589,7 +689,10 @@ function _importService() {
|
|
|
589
689
|
globalConfig,
|
|
590
690
|
state
|
|
591
691
|
});
|
|
592
|
-
(0, _Console.debugMessage)(
|
|
692
|
+
(0, _Console.debugMessage)({
|
|
693
|
+
message: "ServiceOps.importService: end",
|
|
694
|
+
state
|
|
695
|
+
});
|
|
593
696
|
return result;
|
|
594
697
|
});
|
|
595
698
|
return _importService.apply(this, arguments);
|
|
@@ -605,7 +708,10 @@ function _importServices() {
|
|
|
605
708
|
globalConfig = false,
|
|
606
709
|
state
|
|
607
710
|
} = _ref10;
|
|
608
|
-
(0, _Console.debugMessage)(
|
|
711
|
+
(0, _Console.debugMessage)({
|
|
712
|
+
message: "ServiceOps.importServices: start, globalConfig=".concat(globalConfig),
|
|
713
|
+
state
|
|
714
|
+
});
|
|
609
715
|
try {
|
|
610
716
|
var result = yield putFullServices({
|
|
611
717
|
serviceEntries: Object.entries(importData.service),
|
|
@@ -613,15 +719,26 @@ function _importServices() {
|
|
|
613
719
|
globalConfig,
|
|
614
720
|
state
|
|
615
721
|
});
|
|
616
|
-
(0, _Console.debugMessage)(
|
|
722
|
+
(0, _Console.debugMessage)({
|
|
723
|
+
message: "ServiceOps.importServices: end",
|
|
724
|
+
state
|
|
725
|
+
});
|
|
617
726
|
return result;
|
|
618
727
|
} catch (error) {
|
|
619
728
|
var _error$response16, _error$response16$dat, _error$response17, _error$response17$dat;
|
|
620
729
|
var message = (_error$response16 = error.response) === null || _error$response16 === void 0 ? void 0 : (_error$response16$dat = _error$response16.data) === null || _error$response16$dat === void 0 ? void 0 : _error$response16$dat.message;
|
|
621
730
|
var detail = (_error$response17 = error.response) === null || _error$response17 === void 0 ? void 0 : (_error$response17$dat = _error$response17.data) === null || _error$response17$dat === void 0 ? void 0 : _error$response17$dat.detail;
|
|
622
|
-
(0, _Console.printMessage)(
|
|
731
|
+
(0, _Console.printMessage)({
|
|
732
|
+
message: "Unable to import services: error: ".concat(message),
|
|
733
|
+
type: 'error',
|
|
734
|
+
state
|
|
735
|
+
});
|
|
623
736
|
if (detail) {
|
|
624
|
-
(0, _Console.printMessage)(
|
|
737
|
+
(0, _Console.printMessage)({
|
|
738
|
+
message: "Details: ".concat(JSON.stringify(detail)),
|
|
739
|
+
type: 'error',
|
|
740
|
+
state
|
|
741
|
+
});
|
|
625
742
|
}
|
|
626
743
|
throw error;
|
|
627
744
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceOps.js","names":["_ServiceApi","require","_Console","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","asyncGeneratorStep","gen","resolve","reject","_next","_throw","info","error","done","Promise","then","_asyncToGenerator","fn","self","args","err","ServiceOps","constructor","state","createServiceExportTemplate","getListOfServices","_arguments","_this","globalConfig","getFullServices","_arguments2","_this2","deleteFullService","serviceId","_arguments3","_this3","deleteFullServices","_arguments4","_this4","exportService","_arguments5","_this5","exportServices","_arguments6","_this6","importService","importData","clean","_arguments7","_this7","importServices","_arguments8","_this8","exports","default","meta","service","_x","_getListOfServices2","_ref","debugMessage","services","_getListOfServices","result","_x2","_getFullServices","_ref2","concat","serviceList","fullServiceData","all","map","_ref11","listItem","nextDescendents","getService","_id","getServiceDescendents","_error$response","_error$response2","_error$response2$data","response","status","data","message","_error$response3","_error$response3$data","printMessage","_x11","putFullService","_x3","_putFullService","_ref3","_rev","enabled","_error$response4","_error$response5","_error$response5$data","_error$response6","_error$response6$data","putService","serviceData","_ref12","descendent","type","_type","descendentId","putServiceNextDescendent","serviceType","serviceNextDescendentId","serviceNextDescendentData","_error$response7","_error$response7$data","_x12","putFullServices","_x4","_putFullServices","_ref4","serviceEntries","results","id","_error$response8","_error$response8$data","_error$response9","_error$response9$data","detail","JSON","stringify","_x5","_deleteFullService","_ref5","nextDescendent","deleteServiceNextDescendent","deleteService","_x6","_deleteFullServices","_ref6","_ref13","serviceListItem","_error$response10","_error$response11","_error$response11$dat","_error$response12","_error$response12$dat","_x13","_error$response13","_error$response13$dat","_x7","_exportService","_ref7","exportData","_error$response14","_error$response14$dat","_x8","_exportServices","_ref8","_error$response15","_error$response15$dat","_x9","_importService","_ref9","_x10","_importServices","_ref10","entries","_error$response16","_error$response16$dat","_error$response17","_error$response17$dat"],"sources":["ops/ServiceOps.ts"],"sourcesContent":["import { AmServiceSkeleton } from '../api/ApiTypes';\nimport {\n deleteService,\n deleteServiceNextDescendent,\n getService,\n getListOfServices as _getListOfServices,\n getServiceDescendents,\n putService,\n putServiceNextDescendent,\n ServiceNextDescendent,\n} from '../api/ServiceApi';\nimport State from '../shared/State';\nimport { ServiceExportInterface } from './OpsTypes';\nimport { debugMessage, printMessage } from './utils/Console';\n\nexport default class ServiceOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n createServiceExportTemplate(): ServiceExportInterface {\n return createServiceExportTemplate();\n }\n\n /**\n * Get list of services\n * @param {boolean} globalConfig true if the list of global services is requested, false otherwise. Default: false.\n */\n async getListOfServices(globalConfig = false) {\n return getListOfServices({ globalConfig, state: this.state });\n }\n\n /**\n * Get all services including their descendents.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving to an array of services with their descendants\n */\n async getFullServices(globalConfig = false): Promise<FullService[]> {\n return getFullServices({ globalConfig, state: this.state });\n }\n\n /**\n * Deletes the specified service\n * @param {string} serviceId The service to delete\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async deleteFullService(serviceId: string, globalConfig = false) {\n return deleteFullService({ serviceId, globalConfig, state: this.state });\n }\n\n /**\n * Deletes all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async deleteFullServices(globalConfig = false) {\n return deleteFullServices({ globalConfig, state: this.state });\n }\n\n /**\n * Export service. The response can be saved to file as is.\n * @param serviceId service id/name\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns {Promise<ServiceExportInterface>} Promise resolving to a ServiceExportInterface object.\n */\n async exportService(\n serviceId: string,\n globalConfig = false\n ): Promise<ServiceExportInterface> {\n return exportService({ serviceId, globalConfig, state: this.state });\n }\n\n /**\n * Export all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async exportServices(globalConfig = false): Promise<ServiceExportInterface> {\n return exportServices({ globalConfig, state: this.state });\n }\n\n /**\n * Imports a single service using a reference to the service and a file to read the data from. Optionally clean (remove) an existing service first\n * @param {string} serviceId The service id/name to add\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove a possible existing service with the same id first.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving when the service has been imported\n */\n async importService(\n serviceId: string,\n importData: ServiceExportInterface,\n clean: boolean,\n globalConfig = false\n ): Promise<AmServiceSkeleton> {\n return importService({\n serviceId,\n importData,\n clean,\n globalConfig,\n state: this.state,\n });\n }\n\n /**\n * Imports multiple services from the same file. Optionally clean (remove) existing services first\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove possible existing services first\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async importServices(\n importData: ServiceExportInterface,\n clean: boolean,\n globalConfig = false\n ) {\n return importServices({\n importData,\n clean,\n globalConfig,\n state: this.state,\n });\n }\n}\n\ninterface FullService extends AmServiceSkeleton {\n nextDescendents?: ServiceNextDescendent[];\n}\n\n/**\n * Create an empty service export template\n * @returns {SingleTreeExportInterface} an empty service export template\n */\nexport function createServiceExportTemplate(): ServiceExportInterface {\n return {\n meta: {},\n service: {},\n } as ServiceExportInterface;\n}\n\n/**\n * Get list of services\n * @param {boolean} globalConfig true if the list of global services is requested, false otherwise. Default: false.\n */\nexport async function getListOfServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage(`ServiceOps.getListOfServices: start`);\n const services = (await _getListOfServices({ globalConfig, state })).result;\n debugMessage(`ServiceOps.getListOfServices: end`);\n return services;\n}\n\n/**\n * Get all services including their descendents.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving to an array of services with their descendants\n */\nexport async function getFullServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}): Promise<FullService[]> {\n debugMessage(\n `ServiceOps.getFullServices: start, globalConfig=${globalConfig}`\n );\n const serviceList = (await _getListOfServices({ globalConfig, state }))\n .result;\n\n const fullServiceData = await Promise.all(\n serviceList.map(async (listItem) => {\n try {\n const [service, nextDescendents] = await Promise.all([\n getService({ serviceId: listItem._id, globalConfig, state }),\n getServiceDescendents({\n serviceId: listItem._id,\n globalConfig,\n state,\n }),\n ]);\n\n return {\n ...service,\n nextDescendents,\n };\n } catch (error) {\n if (\n !(\n error.response?.status === 403 &&\n error.response?.data?.message ===\n 'This operation is not available in ForgeRock Identity Cloud.'\n )\n ) {\n const message = error.response?.data?.message;\n printMessage(\n `Unable to retrieve data for ${listItem._id} with error: ${message}`,\n 'error'\n );\n }\n }\n })\n );\n\n debugMessage(`ServiceOps.getFullServices: end`);\n return fullServiceData.filter((data) => !!data); // make sure to filter out any undefined objects\n}\n\n/**\n * Saves a service using the provide id and data, including descendents\n * @param {string} serviceId the service id / name\n * @param {string} fullServiceData service object including descendants\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns promise resolving to a service object\n */\nasync function putFullService({\n serviceId,\n fullServiceData,\n clean,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n fullServiceData: FullService;\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}): Promise<AmServiceSkeleton> {\n debugMessage(\n `ServiceOps.putFullService: start, serviceId=${serviceId}, globalConfig=${globalConfig}`\n );\n const nextDescendents = fullServiceData.nextDescendents;\n\n delete fullServiceData.nextDescendents;\n delete fullServiceData._rev;\n delete fullServiceData.enabled;\n\n if (clean) {\n try {\n debugMessage(`ServiceOps.putFullService: clean`);\n await deleteFullService({ serviceId, globalConfig, state });\n } catch (error) {\n if (\n !(\n error.response?.status === 404 &&\n error.response?.data?.message === 'Not Found'\n )\n ) {\n const message = error.response?.data?.message;\n printMessage(\n `Error deleting service '${serviceId}' before import: ${message}`,\n 'error'\n );\n }\n }\n }\n\n // create service first\n const result = await putService({\n serviceId,\n serviceData: fullServiceData,\n globalConfig,\n state,\n });\n\n // return fast if no next descendents supplied\n if (nextDescendents.length === 0) {\n debugMessage(`ServiceOps.putFullService: end (w/o descendents)`);\n return result;\n }\n\n // now create next descendents\n await Promise.all(\n nextDescendents.map(async (descendent) => {\n const type = descendent._type._id;\n const descendentId = descendent._id;\n debugMessage(`ServiceOps.putFullService: descendentId=${descendentId}`);\n let result = undefined;\n try {\n result = await putServiceNextDescendent({\n serviceId,\n serviceType: type,\n serviceNextDescendentId: descendentId,\n serviceNextDescendentData: descendent,\n globalConfig,\n state,\n });\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage(\n `Put descendent '${descendentId}' of service '${serviceId}': ${message}`,\n 'error'\n );\n }\n return result;\n })\n );\n debugMessage(`ServiceOps.putFullService: end (w/ descendents)`);\n}\n\n/**\n * Saves multiple services using the serviceEntries which contain both id and data with descendants\n * @param {[string, FullService][]} serviceEntries The services to add\n * @param {boolean} clean Indicates whether to remove possible existing services first\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns {Promise<AmService[]>} promise resolving to an array of service objects\n */\nasync function putFullServices({\n serviceEntries,\n clean,\n globalConfig = false,\n state,\n}: {\n serviceEntries: [string, FullService][];\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}): Promise<AmServiceSkeleton[]> {\n debugMessage(\n `ServiceOps.putFullServices: start, globalConfig=${globalConfig}`\n );\n const results: AmServiceSkeleton[] = [];\n for (const [id, data] of serviceEntries) {\n try {\n const result = await putFullService({\n serviceId: id,\n fullServiceData: data,\n clean,\n globalConfig,\n state,\n });\n results.push(result);\n printMessage(`Imported: ${id}`, 'info');\n } catch (error) {\n const message = error.response?.data?.message;\n const detail = error.response?.data?.detail;\n printMessage(`Import service '${id}': ${message}`, 'error');\n if (detail) {\n printMessage(`Details: ${JSON.stringify(detail)}`, 'error');\n }\n }\n }\n debugMessage(`ServiceOps.putFullServices: end`);\n return results;\n}\n\n/**\n * Deletes the specified service\n * @param {string} serviceId The service to delete\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function deleteFullService({\n serviceId,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage(\n `ServiceOps.deleteFullService: start, globalConfig=${globalConfig}`\n );\n const serviceNextDescendentData = await getServiceDescendents({\n serviceId,\n globalConfig,\n state,\n });\n\n await Promise.all(\n serviceNextDescendentData.map((nextDescendent) =>\n deleteServiceNextDescendent({\n serviceId,\n serviceType: nextDescendent._type._id,\n serviceNextDescendentId: nextDescendent._id,\n globalConfig,\n state,\n })\n )\n );\n\n await deleteService({ serviceId, globalConfig, state });\n debugMessage(`ServiceOps.deleteFullService: end`);\n}\n\n/**\n * Deletes all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function deleteFullServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage(\n `ServiceOps.deleteFullServices: start, globalConfig=${globalConfig}`\n );\n try {\n const serviceList = (await _getListOfServices({ globalConfig, state }))\n .result;\n\n await Promise.all(\n serviceList.map(async (serviceListItem) => {\n try {\n await deleteFullService({\n serviceId: serviceListItem._id,\n globalConfig,\n state,\n });\n } catch (error) {\n if (\n !(\n error.response?.status === 403 &&\n error.response?.data?.message ===\n 'This operation is not available in ForgeRock Identity Cloud.'\n )\n ) {\n const message = error.response?.data?.message;\n printMessage(\n `Delete service '${serviceListItem._id}': ${message}`,\n 'error'\n );\n }\n }\n })\n );\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage(`Delete services: ${message}`, 'error');\n }\n debugMessage(`ServiceOps.deleteFullServices: end`);\n}\n\n/**\n * Export service. The response can be saved to file as is.\n * @param serviceId service id/name\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns {Promise<ServiceExportInterface>} Promise resolving to a ServiceExportInterface object.\n */\nexport async function exportService({\n serviceId,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n globalConfig: boolean;\n state: State;\n}): Promise<ServiceExportInterface> {\n debugMessage(`ServiceOps.exportService: start, globalConfig=${globalConfig}`);\n const exportData = createServiceExportTemplate();\n try {\n const service = await getService({ serviceId, globalConfig, state });\n service.nextDescendents = await getServiceDescendents({\n serviceId,\n globalConfig,\n state,\n });\n exportData.service[serviceId] = service;\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage(`Export service '${serviceId}': ${message}`, 'error');\n }\n debugMessage(`ServiceOps.exportService: end`);\n return exportData;\n}\n\n/**\n * Export all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function exportServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}): Promise<ServiceExportInterface> {\n debugMessage(\n `ServiceOps.exportServices: start, globalConfig=${globalConfig}`\n );\n const exportData = createServiceExportTemplate();\n try {\n const services = await getFullServices({ globalConfig, state });\n for (const service of services) {\n exportData.service[service._type._id] = service;\n }\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage(`Export servics: ${message}`, 'error');\n }\n debugMessage(`ServiceOps.exportServices: end`);\n return exportData;\n}\n\n/**\n * Imports a single service using a reference to the service and a file to read the data from. Optionally clean (remove) an existing service first\n * @param {string} serviceId The service id/name to add\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove a possible existing service with the same id first.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving when the service has been imported\n */\nexport async function importService({\n serviceId,\n importData,\n clean,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n importData: ServiceExportInterface;\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}): Promise<AmServiceSkeleton> {\n debugMessage(`ServiceOps.importService: start, globalConfig=${globalConfig}`);\n const serviceData = importData.service[serviceId];\n const result = await putFullService({\n serviceId,\n fullServiceData: serviceData,\n clean,\n globalConfig,\n state,\n });\n debugMessage(`ServiceOps.importService: end`);\n return result;\n}\n\n/**\n * Imports multiple services from the same file. Optionally clean (remove) existing services first\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove possible existing services first\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function importServices({\n importData,\n clean,\n globalConfig = false,\n state,\n}: {\n importData: ServiceExportInterface;\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage(\n `ServiceOps.importServices: start, globalConfig=${globalConfig}`\n );\n try {\n const result = await putFullServices({\n serviceEntries: Object.entries(importData.service),\n clean,\n globalConfig,\n state,\n });\n debugMessage(`ServiceOps.importServices: end`);\n return result;\n } catch (error) {\n const message = error.response?.data?.message;\n const detail = error.response?.data?.detail;\n printMessage(`Unable to import services: error: ${message}`, 'error');\n if (detail) {\n printMessage(`Details: ${JSON.stringify(detail)}`, 'error');\n }\n throw error;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ServiceOps.js","names":["_ServiceApi","require","_Console","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","asyncGeneratorStep","gen","resolve","reject","_next","_throw","info","error","done","Promise","then","_asyncToGenerator","fn","self","args","err","ServiceOps","constructor","state","createServiceExportTemplate","getListOfServices","_arguments","_this","globalConfig","getFullServices","_arguments2","_this2","deleteFullService","serviceId","_arguments3","_this3","deleteFullServices","_arguments4","_this4","exportService","_arguments5","_this5","exportServices","_arguments6","_this6","importService","importData","clean","_arguments7","_this7","importServices","_arguments8","_this8","exports","default","meta","service","_x","_getListOfServices2","_ref","debugMessage","message","services","_getListOfServices","result","_x2","_getFullServices","_ref2","concat","serviceList","fullServiceData","all","map","_ref11","listItem","nextDescendents","getService","_id","getServiceDescendents","_error$response","_error$response2","_error$response2$data","response","status","data","_error$response3","_error$response3$data","printMessage","type","_x11","putFullService","_x3","_putFullService","_ref3","_rev","enabled","_error$response4","_error$response5","_error$response5$data","_error$response6","_error$response6$data","putService","serviceData","_ref12","descendent","_type","descendentId","putServiceNextDescendent","serviceType","serviceNextDescendentId","serviceNextDescendentData","_error$response7","_error$response7$data","_x12","putFullServices","_x4","_putFullServices","_ref4","serviceEntries","results","id","_error$response8","_error$response8$data","_error$response9","_error$response9$data","detail","JSON","stringify","_x5","_deleteFullService","_ref5","nextDescendent","deleteServiceNextDescendent","deleteService","_x6","_deleteFullServices","_ref6","_ref13","serviceListItem","_error$response10","_error$response11","_error$response11$dat","_error$response12","_error$response12$dat","_x13","_error$response13","_error$response13$dat","_x7","_exportService","_ref7","exportData","_error$response14","_error$response14$dat","_x8","_exportServices","_ref8","_error$response15","_error$response15$dat","_x9","_importService","_ref9","_x10","_importServices","_ref10","entries","_error$response16","_error$response16$dat","_error$response17","_error$response17$dat"],"sources":["ops/ServiceOps.ts"],"sourcesContent":["import { AmServiceSkeleton } from '../api/ApiTypes';\nimport {\n deleteService,\n deleteServiceNextDescendent,\n getService,\n getListOfServices as _getListOfServices,\n getServiceDescendents,\n putService,\n putServiceNextDescendent,\n ServiceNextDescendent,\n} from '../api/ServiceApi';\nimport State from '../shared/State';\nimport { ServiceExportInterface } from './OpsTypes';\nimport { debugMessage, printMessage } from './utils/Console';\n\nexport default class ServiceOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n createServiceExportTemplate(): ServiceExportInterface {\n return createServiceExportTemplate();\n }\n\n /**\n * Get list of services\n * @param {boolean} globalConfig true if the list of global services is requested, false otherwise. Default: false.\n */\n async getListOfServices(globalConfig = false) {\n return getListOfServices({ globalConfig, state: this.state });\n }\n\n /**\n * Get all services including their descendents.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving to an array of services with their descendants\n */\n async getFullServices(globalConfig = false): Promise<FullService[]> {\n return getFullServices({ globalConfig, state: this.state });\n }\n\n /**\n * Deletes the specified service\n * @param {string} serviceId The service to delete\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async deleteFullService(serviceId: string, globalConfig = false) {\n return deleteFullService({ serviceId, globalConfig, state: this.state });\n }\n\n /**\n * Deletes all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async deleteFullServices(globalConfig = false) {\n return deleteFullServices({ globalConfig, state: this.state });\n }\n\n /**\n * Export service. The response can be saved to file as is.\n * @param serviceId service id/name\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns {Promise<ServiceExportInterface>} Promise resolving to a ServiceExportInterface object.\n */\n async exportService(\n serviceId: string,\n globalConfig = false\n ): Promise<ServiceExportInterface> {\n return exportService({ serviceId, globalConfig, state: this.state });\n }\n\n /**\n * Export all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async exportServices(globalConfig = false): Promise<ServiceExportInterface> {\n return exportServices({ globalConfig, state: this.state });\n }\n\n /**\n * Imports a single service using a reference to the service and a file to read the data from. Optionally clean (remove) an existing service first\n * @param {string} serviceId The service id/name to add\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove a possible existing service with the same id first.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving when the service has been imported\n */\n async importService(\n serviceId: string,\n importData: ServiceExportInterface,\n clean: boolean,\n globalConfig = false\n ): Promise<AmServiceSkeleton> {\n return importService({\n serviceId,\n importData,\n clean,\n globalConfig,\n state: this.state,\n });\n }\n\n /**\n * Imports multiple services from the same file. Optionally clean (remove) existing services first\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove possible existing services first\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\n async importServices(\n importData: ServiceExportInterface,\n clean: boolean,\n globalConfig = false\n ) {\n return importServices({\n importData,\n clean,\n globalConfig,\n state: this.state,\n });\n }\n}\n\ninterface FullService extends AmServiceSkeleton {\n nextDescendents?: ServiceNextDescendent[];\n}\n\n/**\n * Create an empty service export template\n * @returns {SingleTreeExportInterface} an empty service export template\n */\nexport function createServiceExportTemplate(): ServiceExportInterface {\n return {\n meta: {},\n service: {},\n } as ServiceExportInterface;\n}\n\n/**\n * Get list of services\n * @param {boolean} globalConfig true if the list of global services is requested, false otherwise. Default: false.\n */\nexport async function getListOfServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage({ message: `ServiceOps.getListOfServices: start`, state });\n const services = (await _getListOfServices({ globalConfig, state })).result;\n debugMessage({ message: `ServiceOps.getListOfServices: end`, state });\n return services;\n}\n\n/**\n * Get all services including their descendents.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving to an array of services with their descendants\n */\nexport async function getFullServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}): Promise<FullService[]> {\n debugMessage({\n message: `ServiceOps.getFullServices: start, globalConfig=${globalConfig}`,\n state,\n });\n const serviceList = (await _getListOfServices({ globalConfig, state }))\n .result;\n\n const fullServiceData = await Promise.all(\n serviceList.map(async (listItem) => {\n try {\n const [service, nextDescendents] = await Promise.all([\n getService({ serviceId: listItem._id, globalConfig, state }),\n getServiceDescendents({\n serviceId: listItem._id,\n globalConfig,\n state,\n }),\n ]);\n\n return {\n ...service,\n nextDescendents,\n };\n } catch (error) {\n if (\n !(\n error.response?.status === 403 &&\n error.response?.data?.message ===\n 'This operation is not available in ForgeRock Identity Cloud.'\n )\n ) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Unable to retrieve data for ${listItem._id} with error: ${message}`,\n type: 'error',\n state,\n });\n }\n }\n })\n );\n\n debugMessage({ message: `ServiceOps.getFullServices: end`, state });\n return fullServiceData.filter((data) => !!data); // make sure to filter out any undefined objects\n}\n\n/**\n * Saves a service using the provide id and data, including descendents\n * @param {string} serviceId the service id / name\n * @param {string} fullServiceData service object including descendants\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns promise resolving to a service object\n */\nasync function putFullService({\n serviceId,\n fullServiceData,\n clean,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n fullServiceData: FullService;\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}): Promise<AmServiceSkeleton> {\n debugMessage({\n message: `ServiceOps.putFullService: start, serviceId=${serviceId}, globalConfig=${globalConfig}`,\n state,\n });\n const nextDescendents = fullServiceData.nextDescendents;\n\n delete fullServiceData.nextDescendents;\n delete fullServiceData._rev;\n delete fullServiceData.enabled;\n\n if (clean) {\n try {\n debugMessage({ message: `ServiceOps.putFullService: clean`, state });\n await deleteFullService({ serviceId, globalConfig, state });\n } catch (error) {\n if (\n !(\n error.response?.status === 404 &&\n error.response?.data?.message === 'Not Found'\n )\n ) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Error deleting service '${serviceId}' before import: ${message}`,\n type: 'error',\n state,\n });\n }\n }\n }\n\n // create service first\n const result = await putService({\n serviceId,\n serviceData: fullServiceData,\n globalConfig,\n state,\n });\n\n // return fast if no next descendents supplied\n if (nextDescendents.length === 0) {\n debugMessage({\n message: `ServiceOps.putFullService: end (w/o descendents)`,\n state,\n });\n return result;\n }\n\n // now create next descendents\n await Promise.all(\n nextDescendents.map(async (descendent) => {\n const type = descendent._type._id;\n const descendentId = descendent._id;\n debugMessage({\n message: `ServiceOps.putFullService: descendentId=${descendentId}`,\n state,\n });\n let result = undefined;\n try {\n result = await putServiceNextDescendent({\n serviceId,\n serviceType: type,\n serviceNextDescendentId: descendentId,\n serviceNextDescendentData: descendent,\n globalConfig,\n state,\n });\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Put descendent '${descendentId}' of service '${serviceId}': ${message}`,\n type: 'error',\n state,\n });\n }\n return result;\n })\n );\n debugMessage({\n message: `ServiceOps.putFullService: end (w/ descendents)`,\n state,\n });\n}\n\n/**\n * Saves multiple services using the serviceEntries which contain both id and data with descendants\n * @param {[string, FullService][]} serviceEntries The services to add\n * @param {boolean} clean Indicates whether to remove possible existing services first\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns {Promise<AmService[]>} promise resolving to an array of service objects\n */\nasync function putFullServices({\n serviceEntries,\n clean,\n globalConfig = false,\n state,\n}: {\n serviceEntries: [string, FullService][];\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}): Promise<AmServiceSkeleton[]> {\n debugMessage({\n message: `ServiceOps.putFullServices: start, globalConfig=${globalConfig}`,\n state,\n });\n const results: AmServiceSkeleton[] = [];\n for (const [id, data] of serviceEntries) {\n try {\n const result = await putFullService({\n serviceId: id,\n fullServiceData: data,\n clean,\n globalConfig,\n state,\n });\n results.push(result);\n printMessage({ message: `Imported: ${id}`, type: 'info', state });\n } catch (error) {\n const message = error.response?.data?.message;\n const detail = error.response?.data?.detail;\n printMessage({\n message: `Import service '${id}': ${message}`,\n type: 'error',\n state,\n });\n if (detail) {\n printMessage({\n message: `Details: ${JSON.stringify(detail)}`,\n type: 'error',\n state,\n });\n }\n }\n }\n debugMessage({ message: `ServiceOps.putFullServices: end`, state });\n return results;\n}\n\n/**\n * Deletes the specified service\n * @param {string} serviceId The service to delete\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function deleteFullService({\n serviceId,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage({\n message: `ServiceOps.deleteFullService: start, globalConfig=${globalConfig}`,\n state,\n });\n const serviceNextDescendentData = await getServiceDescendents({\n serviceId,\n globalConfig,\n state,\n });\n\n await Promise.all(\n serviceNextDescendentData.map((nextDescendent) =>\n deleteServiceNextDescendent({\n serviceId,\n serviceType: nextDescendent._type._id,\n serviceNextDescendentId: nextDescendent._id,\n globalConfig,\n state,\n })\n )\n );\n\n await deleteService({ serviceId, globalConfig, state });\n debugMessage({ message: `ServiceOps.deleteFullService: end`, state });\n}\n\n/**\n * Deletes all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function deleteFullServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage({\n message: `ServiceOps.deleteFullServices: start, globalConfig=${globalConfig}`,\n state,\n });\n try {\n const serviceList = (await _getListOfServices({ globalConfig, state }))\n .result;\n\n await Promise.all(\n serviceList.map(async (serviceListItem) => {\n try {\n await deleteFullService({\n serviceId: serviceListItem._id,\n globalConfig,\n state,\n });\n } catch (error) {\n if (\n !(\n error.response?.status === 403 &&\n error.response?.data?.message ===\n 'This operation is not available in ForgeRock Identity Cloud.'\n )\n ) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Delete service '${serviceListItem._id}': ${message}`,\n state,\n type: 'error',\n });\n }\n }\n })\n );\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Delete services: ${message}`,\n type: 'error',\n state,\n });\n }\n debugMessage({ message: `ServiceOps.deleteFullServices: end`, state });\n}\n\n/**\n * Export service. The response can be saved to file as is.\n * @param serviceId service id/name\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns {Promise<ServiceExportInterface>} Promise resolving to a ServiceExportInterface object.\n */\nexport async function exportService({\n serviceId,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n globalConfig: boolean;\n state: State;\n}): Promise<ServiceExportInterface> {\n debugMessage({\n message: `ServiceOps.exportService: start, globalConfig=${globalConfig}`,\n state,\n });\n const exportData = createServiceExportTemplate();\n try {\n const service = await getService({ serviceId, globalConfig, state });\n service.nextDescendents = await getServiceDescendents({\n serviceId,\n globalConfig,\n state,\n });\n exportData.service[serviceId] = service;\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Export service '${serviceId}': ${message}`,\n type: 'error',\n state,\n });\n }\n debugMessage({ message: `ServiceOps.exportService: end`, state });\n return exportData;\n}\n\n/**\n * Export all services\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function exportServices({\n globalConfig = false,\n state,\n}: {\n globalConfig: boolean;\n state: State;\n}): Promise<ServiceExportInterface> {\n debugMessage({\n message: `ServiceOps.exportServices: start, globalConfig=${globalConfig}`,\n state,\n });\n const exportData = createServiceExportTemplate();\n try {\n const services = await getFullServices({ globalConfig, state });\n for (const service of services) {\n exportData.service[service._type._id] = service;\n }\n } catch (error) {\n const message = error.response?.data?.message;\n printMessage({\n message: `Export servics: ${message}`,\n type: 'error',\n state,\n });\n }\n debugMessage({ message: `ServiceOps.exportServices: end`, state });\n return exportData;\n}\n\n/**\n * Imports a single service using a reference to the service and a file to read the data from. Optionally clean (remove) an existing service first\n * @param {string} serviceId The service id/name to add\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove a possible existing service with the same id first.\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n * @returns Promise resolving when the service has been imported\n */\nexport async function importService({\n serviceId,\n importData,\n clean,\n globalConfig = false,\n state,\n}: {\n serviceId: string;\n importData: ServiceExportInterface;\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}): Promise<AmServiceSkeleton> {\n debugMessage({\n message: `ServiceOps.importService: start, globalConfig=${globalConfig}`,\n state,\n });\n const serviceData = importData.service[serviceId];\n const result = await putFullService({\n serviceId,\n fullServiceData: serviceData,\n clean,\n globalConfig,\n state,\n });\n debugMessage({ message: `ServiceOps.importService: end`, state });\n return result;\n}\n\n/**\n * Imports multiple services from the same file. Optionally clean (remove) existing services first\n * @param {ServiceExportInterface} importData The service configuration export data to import\n * @param {boolean} clean Indicates whether to remove possible existing services first\n * @param {boolean} globalConfig true if the global service is the target of the operation, false otherwise. Default: false.\n */\nexport async function importServices({\n importData,\n clean,\n globalConfig = false,\n state,\n}: {\n importData: ServiceExportInterface;\n clean: boolean;\n globalConfig: boolean;\n state: State;\n}) {\n debugMessage({\n message: `ServiceOps.importServices: start, globalConfig=${globalConfig}`,\n state,\n });\n try {\n const result = await putFullServices({\n serviceEntries: Object.entries(importData.service),\n clean,\n globalConfig,\n state,\n });\n debugMessage({ message: `ServiceOps.importServices: end`, state });\n return result;\n } catch (error) {\n const message = error.response?.data?.message;\n const detail = error.response?.data?.detail;\n printMessage({\n message: `Unable to import services: error: ${message}`,\n type: 'error',\n state,\n });\n if (detail) {\n printMessage({\n message: `Details: ${JSON.stringify(detail)}`,\n type: 'error',\n state,\n });\n }\n throw error;\n }\n}\n"],"mappings":"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"}
|
package/cjs/ops/ThemeOps.js
CHANGED
|
@@ -445,7 +445,10 @@ function _putThemes() {
|
|
|
445
445
|
realm = null,
|
|
446
446
|
state
|
|
447
447
|
} = _ref7;
|
|
448
|
-
(0, _Console.debugMessage)(
|
|
448
|
+
(0, _Console.debugMessage)({
|
|
449
|
+
message: "ThemeApi.putThemes: start",
|
|
450
|
+
state
|
|
451
|
+
});
|
|
449
452
|
realm = realm ? realm : (0, _ApiUtils.getCurrentRealmName)(state);
|
|
450
453
|
var themes = yield (0, _IdmConfigApi.getConfigEntity)({
|
|
451
454
|
entityId: THEMEREALM_ID,
|
|
@@ -460,7 +463,10 @@ function _putThemes() {
|
|
|
460
463
|
realm
|
|
461
464
|
}).map(theme => {
|
|
462
465
|
if (themeMap[theme._id]) {
|
|
463
|
-
(0, _Console.debugMessage)(
|
|
466
|
+
(0, _Console.debugMessage)({
|
|
467
|
+
message: "Update theme: ".concat(theme._id, " - ").concat(theme.name),
|
|
468
|
+
state
|
|
469
|
+
});
|
|
464
470
|
existingThemeIDs.push(theme._id);
|
|
465
471
|
// remember the id of the last default theme
|
|
466
472
|
if (themeMap[theme._id].isDefault) defaultThemeId = theme._id;
|
|
@@ -471,7 +477,10 @@ function _putThemes() {
|
|
|
471
477
|
var newThemeIDs = allThemeIDs.filter(id => !existingThemeIDs.includes(id));
|
|
472
478
|
// add new themes
|
|
473
479
|
newThemeIDs.forEach(themeId => {
|
|
474
|
-
(0, _Console.debugMessage)(
|
|
480
|
+
(0, _Console.debugMessage)({
|
|
481
|
+
message: "Add theme: ".concat(themeMap[themeId]._id, " - ").concat(themeMap[themeId].name),
|
|
482
|
+
state
|
|
483
|
+
});
|
|
475
484
|
// remember the id of the last default theme
|
|
476
485
|
if (themeMap[themeId].isDefault) defaultThemeId = themeId;
|
|
477
486
|
realmThemes.push(themeMap[themeId]);
|
|
@@ -492,8 +501,14 @@ function _putThemes() {
|
|
|
492
501
|
}),
|
|
493
502
|
realm
|
|
494
503
|
}).map(theme => [theme._id, theme]));
|
|
495
|
-
(0, _Console.debugMessage)(
|
|
496
|
-
|
|
504
|
+
(0, _Console.debugMessage)({
|
|
505
|
+
message: updatedThemes,
|
|
506
|
+
state
|
|
507
|
+
});
|
|
508
|
+
(0, _Console.debugMessage)({
|
|
509
|
+
message: "ThemeApi.putThemes: finished",
|
|
510
|
+
state
|
|
511
|
+
});
|
|
497
512
|
return updatedThemes;
|
|
498
513
|
});
|
|
499
514
|
return _putThemes.apply(this, arguments);
|