@rockcarver/frodo-lib 2.0.0-1 → 2.0.0-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/cjs/api/ApiTypes.js.map +1 -1
  3. package/cjs/index.js +1 -105
  4. package/cjs/index.js.map +1 -1
  5. package/cjs/lib/FrodoLib.js +20 -20
  6. package/cjs/lib/FrodoLib.js.map +1 -1
  7. package/cjs/ops/AgentOps.js +8 -0
  8. package/cjs/ops/AgentOps.js.map +1 -1
  9. package/cjs/ops/AuthenticateOps.js +33 -6
  10. package/cjs/ops/AuthenticateOps.js.map +1 -1
  11. package/cjs/ops/CirclesOfTrustOps.js +36 -10
  12. package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
  13. package/cjs/ops/ConnectionProfileOps.js +13 -126
  14. package/cjs/ops/ConnectionProfileOps.js.map +1 -1
  15. package/cjs/ops/IdmOps.js.map +1 -1
  16. package/cjs/ops/JourneyOps.js.map +1 -1
  17. package/cjs/ops/OAuth2OidcOps.js +84 -0
  18. package/cjs/ops/OAuth2OidcOps.js.map +1 -0
  19. package/cjs/ops/ResourceTypeOps.js +65 -49
  20. package/cjs/ops/ResourceTypeOps.js.map +1 -1
  21. package/cjs/ops/ServiceOps.js +3 -0
  22. package/cjs/ops/ServiceOps.js.map +1 -1
  23. package/cjs/ops/ThemeOps.js +28 -14
  24. package/cjs/ops/ThemeOps.js.map +1 -1
  25. package/cjs/ops/cloud/LogOps.js +3 -13
  26. package/cjs/ops/cloud/LogOps.js.map +1 -1
  27. package/cjs/ops/utils/Console.js +7 -7
  28. package/cjs/ops/utils/Console.js.map +1 -1
  29. package/cjs/ops/utils/ExportImportUtils.js +109 -0
  30. package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
  31. package/cjs/ops/utils/ExportImportUtils.test.js.map +1 -1
  32. package/cjs/ops/utils/Version.js +29 -6
  33. package/cjs/ops/utils/Version.js.map +1 -1
  34. package/cjs/ops/utils/Version.test.js.map +1 -1
  35. package/cjs/shared/State.js +0 -2
  36. package/cjs/shared/State.js.map +1 -1
  37. package/esm/index.mjs +1 -59
  38. package/esm/lib/FrodoLib.mjs +19 -18
  39. package/esm/ops/AgentOps.mjs +8 -0
  40. package/esm/ops/AuthenticateOps.mjs +24 -4
  41. package/esm/ops/CirclesOfTrustOps.mjs +18 -2
  42. package/esm/ops/ConnectionProfileOps.mjs +1 -105
  43. package/esm/ops/OAuth2OidcOps.mjs +40 -0
  44. package/esm/ops/ResourceTypeOps.mjs +14 -4
  45. package/esm/ops/ServiceOps.mjs +3 -0
  46. package/esm/ops/ThemeOps.mjs +7 -7
  47. package/esm/ops/cloud/LogOps.mjs +3 -13
  48. package/esm/ops/utils/Console.mjs +8 -8
  49. package/esm/ops/utils/ExportImportUtils.mjs +101 -0
  50. package/esm/ops/utils/ExportImportUtils.test.mjs +15 -2
  51. package/esm/ops/utils/Version.mjs +21 -4
  52. package/esm/ops/utils/Version.test.mjs +4 -1
  53. package/esm/shared/State.mjs +0 -2
  54. package/package.json +1 -1
  55. package/types/api/ApiTypes.d.ts +11 -11
  56. package/types/api/ApiTypes.d.ts.map +1 -1
  57. package/types/index.d.ts +1 -48
  58. package/types/index.d.ts.map +1 -1
  59. package/types/lib/FrodoLib.d.ts +13 -9
  60. package/types/lib/FrodoLib.d.ts.map +1 -1
  61. package/types/ops/AgentOps.d.ts +5 -0
  62. package/types/ops/AgentOps.d.ts.map +1 -1
  63. package/types/ops/AuthenticateOps.d.ts +11 -1
  64. package/types/ops/AuthenticateOps.d.ts.map +1 -1
  65. package/types/ops/CirclesOfTrustOps.d.ts +16 -2
  66. package/types/ops/CirclesOfTrustOps.d.ts.map +1 -1
  67. package/types/ops/ConnectionProfileOps.d.ts +0 -19
  68. package/types/ops/ConnectionProfileOps.d.ts.map +1 -1
  69. package/types/ops/IdmOps.d.ts +1 -1
  70. package/types/ops/IdmOps.d.ts.map +1 -1
  71. package/types/ops/JourneyOps.d.ts +2 -2
  72. package/types/ops/JourneyOps.d.ts.map +1 -1
  73. package/types/ops/OAuth2OidcOps.d.ts +11 -0
  74. package/types/ops/OAuth2OidcOps.d.ts.map +1 -0
  75. package/types/ops/ResourceTypeOps.d.ts +3 -3
  76. package/types/ops/ResourceTypeOps.d.ts.map +1 -1
  77. package/types/ops/ServiceOps.d.ts +1 -0
  78. package/types/ops/ServiceOps.d.ts.map +1 -1
  79. package/types/ops/ThemeOps.d.ts +14 -14
  80. package/types/ops/ThemeOps.d.ts.map +1 -1
  81. package/types/ops/cloud/LogOps.d.ts +1 -1
  82. package/types/ops/cloud/LogOps.d.ts.map +1 -1
  83. package/types/ops/utils/Console.d.ts.map +1 -1
  84. package/types/ops/utils/ExportImportUtils.d.ts +43 -0
  85. package/types/ops/utils/ExportImportUtils.d.ts.map +1 -1
  86. package/types/ops/utils/Version.d.ts +16 -2
  87. package/types/ops/utils/Version.d.ts.map +1 -1
  88. package/types/shared/State.d.ts.map +1 -1
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "accessToken", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _OAuth2OIDCApi.accessToken;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "authorize", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _OAuth2OIDCApi.authorize;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "clientCredentialsGrant", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _OAuth2OIDCApi.clientCredentialsGrant;
22
+ }
23
+ });
24
+ exports.default = void 0;
25
+ Object.defineProperty(exports, "getTokenInfo", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _OAuth2OIDCApi.getTokenInfo;
29
+ }
30
+ });
31
+ var _OAuth2OIDCApi = require("../api/OAuth2OIDCApi");
32
+ 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); } }
33
+ 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); }); }; }
34
+ class OAuth2OidcOps {
35
+ constructor(state) {
36
+ this.state = state;
37
+ }
38
+ authorize(amBaseUrl, data, config) {
39
+ var _this = this;
40
+ return _asyncToGenerator(function* () {
41
+ return (0, _OAuth2OIDCApi.authorize)({
42
+ amBaseUrl,
43
+ data,
44
+ config,
45
+ state: _this.state
46
+ });
47
+ })();
48
+ }
49
+ accessToken(amBaseUrl, data, config) {
50
+ var _this2 = this;
51
+ return _asyncToGenerator(function* () {
52
+ return (0, _OAuth2OIDCApi.accessToken)({
53
+ amBaseUrl,
54
+ config,
55
+ data,
56
+ state: _this2.state
57
+ });
58
+ })();
59
+ }
60
+ getTokenInfo(amBaseUrl, config) {
61
+ var _this3 = this;
62
+ return _asyncToGenerator(function* () {
63
+ return (0, _OAuth2OIDCApi.getTokenInfo)({
64
+ amBaseUrl,
65
+ config,
66
+ state: _this3.state
67
+ });
68
+ })();
69
+ }
70
+ clientCredentialsGrant(amBaseUrl, clientId, clientSecret, scope) {
71
+ var _this4 = this;
72
+ return _asyncToGenerator(function* () {
73
+ return (0, _OAuth2OIDCApi.clientCredentialsGrant)({
74
+ amBaseUrl,
75
+ clientId,
76
+ clientSecret,
77
+ scope,
78
+ state: _this4.state
79
+ });
80
+ })();
81
+ }
82
+ }
83
+ exports.default = OAuth2OidcOps;
84
+ //# sourceMappingURL=OAuth2OidcOps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OAuth2OidcOps.js","names":["_OAuth2OIDCApi","require","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","OAuth2OidcOps","constructor","state","authorize","amBaseUrl","data","config","_this","accessToken","_this2","getTokenInfo","_this3","clientCredentialsGrant","clientId","clientSecret","scope","_this4","exports","default"],"sources":["ops/OAuth2OidcOps.ts"],"sourcesContent":["import State from '../shared/State';\nimport {\n accessToken,\n authorize,\n clientCredentialsGrant,\n getTokenInfo,\n} from '../api/OAuth2OIDCApi';\nimport { AxiosRequestConfig } from 'axios';\n\nexport {\n accessToken,\n authorize,\n clientCredentialsGrant,\n getTokenInfo,\n} from '../api/OAuth2OIDCApi';\n\nexport default class OAuth2OidcOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n async authorize(amBaseUrl: string, data: string, config: AxiosRequestConfig) {\n return authorize({\n amBaseUrl,\n data,\n config,\n state: this.state,\n });\n }\n\n async accessToken(amBaseUrl: string, data: any, config: AxiosRequestConfig) {\n return accessToken({ amBaseUrl, config, data, state: this.state });\n }\n\n async getTokenInfo(amBaseUrl: string, config: AxiosRequestConfig) {\n return getTokenInfo({\n amBaseUrl,\n config,\n state: this.state,\n });\n }\n\n async clientCredentialsGrant(\n amBaseUrl: string,\n clientId: string,\n clientSecret: string,\n scope: string\n ) {\n return clientCredentialsGrant({\n amBaseUrl,\n clientId,\n clientSecret,\n scope,\n state: this.state,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAK8B,SAAAC,mBAAAC,GAAA,EAAAC,OAAA,EAAAC,MAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,GAAA,EAAAC,GAAA,cAAAC,IAAA,GAAAP,GAAA,CAAAK,GAAA,EAAAC,GAAA,OAAAE,KAAA,GAAAD,IAAA,CAAAC,KAAA,WAAAC,KAAA,IAAAP,MAAA,CAAAO,KAAA,iBAAAF,IAAA,CAAAG,IAAA,IAAAT,OAAA,CAAAO,KAAA,YAAAG,OAAA,CAAAV,OAAA,CAAAO,KAAA,EAAAI,IAAA,CAAAT,KAAA,EAAAC,MAAA;AAAA,SAAAS,kBAAAC,EAAA,6BAAAC,IAAA,SAAAC,IAAA,GAAAC,SAAA,aAAAN,OAAA,WAAAV,OAAA,EAAAC,MAAA,QAAAF,GAAA,GAAAc,EAAA,CAAAI,KAAA,CAAAH,IAAA,EAAAC,IAAA,YAAAb,MAAAK,KAAA,IAAAT,kBAAA,CAAAC,GAAA,EAAAC,OAAA,EAAAC,MAAA,EAAAC,KAAA,EAAAC,MAAA,UAAAI,KAAA,cAAAJ,OAAAe,GAAA,IAAApB,kBAAA,CAAAC,GAAA,EAAAC,OAAA,EAAAC,MAAA,EAAAC,KAAA,EAAAC,MAAA,WAAAe,GAAA,KAAAhB,KAAA,CAAAiB,SAAA;AAUf,MAAMC,aAAa,CAAC;EAEjCC,WAAWA,CAACC,KAAY,EAAE;IACxB,IAAI,CAACA,KAAK,GAAGA,KAAK;EACpB;EACMC,SAASA,CAACC,SAAiB,EAAEC,IAAY,EAAEC,MAA0B,EAAE;IAAA,IAAAC,KAAA;IAAA,OAAAf,iBAAA;MAC3E,OAAO,IAAAW,wBAAS,EAAC;QACfC,SAAS;QACTC,IAAI;QACJC,MAAM;QACNJ,KAAK,EAAEK,KAAI,CAACL;MACd,CAAC,CAAC;IAAC;EACL;EAEMM,WAAWA,CAACJ,SAAiB,EAAEC,IAAS,EAAEC,MAA0B,EAAE;IAAA,IAAAG,MAAA;IAAA,OAAAjB,iBAAA;MAC1E,OAAO,IAAAgB,0BAAW,EAAC;QAAEJ,SAAS;QAAEE,MAAM;QAAED,IAAI;QAAEH,KAAK,EAAEO,MAAI,CAACP;MAAM,CAAC,CAAC;IAAC;EACrE;EAEMQ,YAAYA,CAACN,SAAiB,EAAEE,MAA0B,EAAE;IAAA,IAAAK,MAAA;IAAA,OAAAnB,iBAAA;MAChE,OAAO,IAAAkB,2BAAY,EAAC;QAClBN,SAAS;QACTE,MAAM;QACNJ,KAAK,EAAES,MAAI,CAACT;MACd,CAAC,CAAC;IAAC;EACL;EAEMU,sBAAsBA,CAC1BR,SAAiB,EACjBS,QAAgB,EAChBC,YAAoB,EACpBC,KAAa,EACb;IAAA,IAAAC,MAAA;IAAA,OAAAxB,iBAAA;MACA,OAAO,IAAAoB,qCAAsB,EAAC;QAC5BR,SAAS;QACTS,QAAQ;QACRC,YAAY;QACZC,KAAK;QACLb,KAAK,EAAEc,MAAI,CAACd;MACd,CAAC,CAAC;IAAC;EACL;AACF;AAACe,OAAA,CAAAC,OAAA,GAAAlB,aAAA"}
@@ -42,20 +42,27 @@ class ResourceTypeOps {
42
42
  constructor(state) {
43
43
  this.state = state;
44
44
  }
45
+ getResourceType(resourceTypeUuid) {
46
+ var _this = this;
47
+ return _asyncToGenerator(function* () {
48
+ return (0, _ResourceTypesApi.getResourceType)({
49
+ resourceTypeUuid,
50
+ state: _this.state
51
+ });
52
+ })();
53
+ }
45
54
 
46
55
  /**
47
56
  * Get all resource types
48
57
  * @returns {Promise} a promise that resolves to an array of resource type objects
49
58
  */
50
- getResourceTypes(_ref) {
59
+ getResourceTypes() {
60
+ var _this2 = this;
51
61
  return _asyncToGenerator(function* () {
52
- var {
53
- state
54
- } = _ref;
55
62
  var {
56
63
  result
57
64
  } = yield (0, _ResourceTypesApi.getResourceTypes)({
58
- state
65
+ state: _this2.state
59
66
  });
60
67
  return result;
61
68
  })();
@@ -67,11 +74,11 @@ class ResourceTypeOps {
67
74
  * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object
68
75
  */
69
76
  getResourceTypeByName(resourceTypeName) {
70
- var _this = this;
77
+ var _this3 = this;
71
78
  return _asyncToGenerator(function* () {
72
79
  return getResourceTypeByName({
73
80
  resourceTypeName,
74
- state: _this.state
81
+ state: _this3.state
75
82
  });
76
83
  })();
77
84
  }
@@ -82,12 +89,21 @@ class ResourceTypeOps {
82
89
  * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object
83
90
  */
84
91
  updateResourceType(resourceTypeUuid, resourceTypeData) {
85
- var _this2 = this;
92
+ var _this4 = this;
86
93
  return _asyncToGenerator(function* () {
87
94
  return updateResourceType({
88
95
  resourceTypeUuid,
89
96
  resourceTypeData,
90
- state: _this2.state
97
+ state: _this4.state
98
+ });
99
+ })();
100
+ }
101
+ deleteResourceType(resourceTypeUuid) {
102
+ var _this5 = this;
103
+ return _asyncToGenerator(function* () {
104
+ return (0, _ResourceTypesApi.deleteResourceType)({
105
+ resourceTypeUuid,
106
+ state: _this5.state
91
107
  });
92
108
  })();
93
109
  }
@@ -98,11 +114,11 @@ class ResourceTypeOps {
98
114
  * @returns {Promise<ResourceTypeSkeleton>} Promise resolvig to a resource type object
99
115
  */
100
116
  deleteResourceTypeByName(resourceTypeName) {
101
- var _this3 = this;
117
+ var _this6 = this;
102
118
  return _asyncToGenerator(function* () {
103
119
  return deleteResourceTypeByName({
104
120
  resourceTypeName,
105
- state: _this3.state
121
+ state: _this6.state
106
122
  });
107
123
  })();
108
124
  }
@@ -113,11 +129,11 @@ class ResourceTypeOps {
113
129
  * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object
114
130
  */
115
131
  exportResourceType(resourceTypeUuid) {
116
- var _this4 = this;
132
+ var _this7 = this;
117
133
  return _asyncToGenerator(function* () {
118
134
  return exportResourceType({
119
135
  resourceTypeUuid,
120
- state: _this4.state
136
+ state: _this7.state
121
137
  });
122
138
  })();
123
139
  }
@@ -128,11 +144,11 @@ class ResourceTypeOps {
128
144
  * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object
129
145
  */
130
146
  exportResourceTypeByName(resourceTypeName) {
131
- var _this5 = this;
147
+ var _this8 = this;
132
148
  return _asyncToGenerator(function* () {
133
149
  return exportResourceTypeByName({
134
150
  resourceTypeName,
135
- state: _this5.state
151
+ state: _this8.state
136
152
  });
137
153
  })();
138
154
  }
@@ -142,10 +158,10 @@ class ResourceTypeOps {
142
158
  * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object
143
159
  */
144
160
  exportResourceTypes() {
145
- var _this6 = this;
161
+ var _this9 = this;
146
162
  return _asyncToGenerator(function* () {
147
163
  return exportResourceTypes({
148
- state: _this6.state
164
+ state: _this9.state
149
165
  });
150
166
  })();
151
167
  }
@@ -156,12 +172,12 @@ class ResourceTypeOps {
156
172
  * @param {ResourceTypeExportInterface} importData import data
157
173
  */
158
174
  importResourceType(resourceTypeUuid, importData) {
159
- var _this7 = this;
175
+ var _this10 = this;
160
176
  return _asyncToGenerator(function* () {
161
177
  return importResourceType({
162
178
  resourceTypeUuid,
163
179
  importData,
164
- state: _this7.state
180
+ state: _this10.state
165
181
  });
166
182
  })();
167
183
  }
@@ -172,12 +188,12 @@ class ResourceTypeOps {
172
188
  * @param {ResourceTypeExportInterface} importData import data
173
189
  */
174
190
  importResourceTypeByName(resourceTypeName, importData) {
175
- var _this8 = this;
191
+ var _this11 = this;
176
192
  return _asyncToGenerator(function* () {
177
193
  return importResourceTypeByName({
178
194
  resourceTypeName,
179
195
  importData,
180
- state: _this8.state
196
+ state: _this11.state
181
197
  });
182
198
  })();
183
199
  }
@@ -187,11 +203,11 @@ class ResourceTypeOps {
187
203
  * @param {ResourceTypeExportInterface} importData import data
188
204
  */
189
205
  importFirstResourceType(importData) {
190
- var _this9 = this;
206
+ var _this12 = this;
191
207
  return _asyncToGenerator(function* () {
192
208
  return importFirstResourceType({
193
209
  importData,
194
- state: _this9.state
210
+ state: _this12.state
195
211
  });
196
212
  })();
197
213
  }
@@ -201,11 +217,11 @@ class ResourceTypeOps {
201
217
  * @param {ResourceTypeExportInterface} importData import data
202
218
  */
203
219
  importResourceTypes(importData) {
204
- var _this10 = this;
220
+ var _this13 = this;
205
221
  return _asyncToGenerator(function* () {
206
222
  return importResourceTypes({
207
223
  importData,
208
- state: _this10.state
224
+ state: _this13.state
209
225
  });
210
226
  })();
211
227
  }
@@ -215,10 +231,10 @@ exports.default = ResourceTypeOps;
215
231
  * Create an empty export template
216
232
  * @returns {ResourceTypeExportInterface} an empty export template
217
233
  */
218
- function createResourceTypeExportTemplate(_ref2) {
234
+ function createResourceTypeExportTemplate(_ref) {
219
235
  var {
220
236
  state
221
- } = _ref2;
237
+ } = _ref;
222
238
  return {
223
239
  meta: (0, _ExportImportUtils.getMetadata)({
224
240
  state
@@ -243,10 +259,10 @@ function getResourceTypes(_x) {
243
259
  * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object
244
260
  */
245
261
  function _getResourceTypes2() {
246
- _getResourceTypes2 = _asyncToGenerator(function* (_ref3) {
262
+ _getResourceTypes2 = _asyncToGenerator(function* (_ref2) {
247
263
  var {
248
264
  state
249
- } = _ref3;
265
+ } = _ref2;
250
266
  var {
251
267
  result
252
268
  } = yield (0, _ResourceTypesApi.getResourceTypes)({
@@ -265,11 +281,11 @@ function getResourceTypeByName(_x2) {
265
281
  * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object
266
282
  */
267
283
  function _getResourceTypeByName2() {
268
- _getResourceTypeByName2 = _asyncToGenerator(function* (_ref4) {
284
+ _getResourceTypeByName2 = _asyncToGenerator(function* (_ref3) {
269
285
  var {
270
286
  resourceTypeName,
271
287
  state
272
- } = _ref4;
288
+ } = _ref3;
273
289
  var {
274
290
  result
275
291
  } = yield (0, _ResourceTypesApi.getResourceTypeByName)({
@@ -296,12 +312,12 @@ function updateResourceType(_x3) {
296
312
  * @returns {Promise<ResourceTypeSkeleton>} Promise resolvig to a resource type object
297
313
  */
298
314
  function _updateResourceType() {
299
- _updateResourceType = _asyncToGenerator(function* (_ref5) {
315
+ _updateResourceType = _asyncToGenerator(function* (_ref4) {
300
316
  var {
301
317
  resourceTypeUuid,
302
318
  resourceTypeData,
303
319
  state
304
- } = _ref5;
320
+ } = _ref4;
305
321
  return (0, _ResourceTypesApi.putResourceType)({
306
322
  resourceTypeUuid,
307
323
  resourceTypeData,
@@ -319,11 +335,11 @@ function deleteResourceTypeByName(_x4) {
319
335
  * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object
320
336
  */
321
337
  function _deleteResourceTypeByName() {
322
- _deleteResourceTypeByName = _asyncToGenerator(function* (_ref6) {
338
+ _deleteResourceTypeByName = _asyncToGenerator(function* (_ref5) {
323
339
  var {
324
340
  resourceTypeName,
325
341
  state
326
- } = _ref6;
342
+ } = _ref5;
327
343
  var resourceTypeUuid = (yield getResourceTypeByName({
328
344
  resourceTypeName,
329
345
  state
@@ -344,11 +360,11 @@ function exportResourceType(_x5) {
344
360
  * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object
345
361
  */
346
362
  function _exportResourceType() {
347
- _exportResourceType = _asyncToGenerator(function* (_ref7) {
363
+ _exportResourceType = _asyncToGenerator(function* (_ref6) {
348
364
  var {
349
365
  resourceTypeUuid,
350
366
  state
351
- } = _ref7;
367
+ } = _ref6;
352
368
  (0, _Console.debugMessage)("ResourceTypeOps.exportResourceType: start");
353
369
  var exportData = createResourceTypeExportTemplate({
354
370
  state
@@ -388,11 +404,11 @@ function exportResourceTypeByName(_x6) {
388
404
  * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object
389
405
  */
390
406
  function _exportResourceTypeByName() {
391
- _exportResourceTypeByName = _asyncToGenerator(function* (_ref8) {
407
+ _exportResourceTypeByName = _asyncToGenerator(function* (_ref7) {
392
408
  var {
393
409
  resourceTypeName,
394
410
  state
395
- } = _ref8;
411
+ } = _ref7;
396
412
  (0, _Console.debugMessage)("ResourceTypeOps.exportResourceTypeByName: start");
397
413
  var exportData = createResourceTypeExportTemplate({
398
414
  state
@@ -425,10 +441,10 @@ function exportResourceTypes(_x7) {
425
441
  * @param {ResourceTypeExportInterface} importData import data
426
442
  */
427
443
  function _exportResourceTypes() {
428
- _exportResourceTypes = _asyncToGenerator(function* (_ref9) {
444
+ _exportResourceTypes = _asyncToGenerator(function* (_ref8) {
429
445
  var {
430
446
  state
431
- } = _ref9;
447
+ } = _ref8;
432
448
  (0, _Console.debugMessage)("ResourceTypeOps.exportResourceType: start");
433
449
  var exportData = createResourceTypeExportTemplate({
434
450
  state
@@ -462,12 +478,12 @@ function importResourceType(_x8) {
462
478
  * @param {ResourceTypeExportInterface} importData import data
463
479
  */
464
480
  function _importResourceType() {
465
- _importResourceType = _asyncToGenerator(function* (_ref10) {
481
+ _importResourceType = _asyncToGenerator(function* (_ref9) {
466
482
  var {
467
483
  resourceTypeUuid,
468
484
  importData,
469
485
  state
470
- } = _ref10;
486
+ } = _ref9;
471
487
  var response = null;
472
488
  var errors = [];
473
489
  var imported = [];
@@ -517,12 +533,12 @@ function importResourceTypeByName(_x9) {
517
533
  * @param {ResourceTypeExportInterface} importData import data
518
534
  */
519
535
  function _importResourceTypeByName() {
520
- _importResourceTypeByName = _asyncToGenerator(function* (_ref11) {
536
+ _importResourceTypeByName = _asyncToGenerator(function* (_ref10) {
521
537
  var {
522
538
  resourceTypeName,
523
539
  importData,
524
540
  state
525
- } = _ref11;
541
+ } = _ref10;
526
542
  var response = null;
527
543
  var errors = [];
528
544
  var imported = [];
@@ -572,11 +588,11 @@ function importFirstResourceType(_x10) {
572
588
  * @param {ResourceTypeExportInterface} importData import data
573
589
  */
574
590
  function _importFirstResourceType() {
575
- _importFirstResourceType = _asyncToGenerator(function* (_ref12) {
591
+ _importFirstResourceType = _asyncToGenerator(function* (_ref11) {
576
592
  var {
577
593
  importData,
578
594
  state
579
- } = _ref12;
595
+ } = _ref11;
580
596
  var response = null;
581
597
  var errors = [];
582
598
  var imported = [];
@@ -622,11 +638,11 @@ function importResourceTypes(_x11) {
622
638
  return _importResourceTypes.apply(this, arguments);
623
639
  }
624
640
  function _importResourceTypes() {
625
- _importResourceTypes = _asyncToGenerator(function* (_ref13) {
641
+ _importResourceTypes = _asyncToGenerator(function* (_ref12) {
626
642
  var {
627
643
  importData,
628
644
  state
629
- } = _ref13;
645
+ } = _ref12;
630
646
  var response = [];
631
647
  var errors = [];
632
648
  var imported = [];
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceTypeOps.js","names":["_ResourceTypesApi","require","_ExportImportUtils","_Console","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","ResourceTypeOps","constructor","state","getResourceTypes","_ref","result","_getResourceTypes","getResourceTypeByName","resourceTypeName","_this","updateResourceType","resourceTypeUuid","resourceTypeData","_this2","deleteResourceTypeByName","_this3","exportResourceType","_this4","exportResourceTypeByName","_this5","exportResourceTypes","_this6","importResourceType","importData","_this7","importResourceTypeByName","_this8","importFirstResourceType","_this9","importResourceTypes","_this10","exports","default","createResourceTypeExportTemplate","_ref2","meta","getMetadata","script","policy","policyset","resourcetype","_x","_getResourceTypes2","_ref3","_x2","_getResourceTypeByName2","_ref4","_getResourceTypeByName","length","Error","concat","getRealm","_x3","_updateResourceType","_ref5","putResourceType","_x4","_deleteResourceTypeByName","_ref6","uuid","deleteResourceType","_x5","_exportResourceType","_ref7","debugMessage","exportData","errors","getResourceType","push","errorMessages","map","_error$response","response","status","_error$response2","_error$response2$data","data","message","join","_x6","_exportResourceTypeByName","_ref8","_x7","_exportResourceTypes","_ref9","resourceTypes","_x8","_importResourceType","_ref10","imported","id","Object","keys","_rev","createResourceType","createError","_createError$response","_error$response3","_error$response3$data","_x9","_importResourceTypeByName","_ref11","name","_createError$response2","_error$response4","_error$response4$data","_x10","_importFirstResourceType","_ref12","_provider","_createError$response3","_error$response5","_error$response5$data","_x11","_importResourceTypes","_ref13","_createError$response4","_error$response6","_error$response6$data"],"sources":["ops/ResourceTypeOps.ts"],"sourcesContent":["import {\n deleteResourceType,\n getResourceTypes as _getResourceTypes,\n getResourceType,\n getResourceTypeByName as _getResourceTypeByName,\n createResourceType,\n putResourceType,\n} from '../api/ResourceTypesApi';\nimport { ExportMetaData } from './OpsTypes';\nimport { ResourceTypeSkeleton } from '../api/ApiTypes';\nimport { getMetadata } from './utils/ExportImportUtils';\nimport { debugMessage } from './utils/Console';\nimport State from '../shared/State';\n\nexport default class ResourceTypeOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n /**\n * Get all resource types\n * @returns {Promise} a promise that resolves to an array of resource type objects\n */\n async getResourceTypes({\n state,\n }: {\n state: State;\n }): Promise<ResourceTypeSkeleton[]> {\n const { result } = await _getResourceTypes({ state });\n return result;\n }\n\n /**\n * Get resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\n async getResourceTypeByName(\n resourceTypeName: string\n ): Promise<ResourceTypeSkeleton> {\n return getResourceTypeByName({ resourceTypeName, state: this.state });\n }\n\n /**\n * Update resource type\n * @param {string} resourceTypeData resource type id\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\n async updateResourceType(\n resourceTypeUuid: string,\n resourceTypeData: ResourceTypeSkeleton\n ): Promise<ResourceTypeSkeleton> {\n return updateResourceType({\n resourceTypeUuid,\n resourceTypeData,\n state: this.state,\n });\n }\n\n /**\n * Delete resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} Promise resolvig to a resource type object\n */\n async deleteResourceTypeByName(\n resourceTypeName: string\n ): Promise<ResourceTypeSkeleton> {\n return deleteResourceTypeByName({ resourceTypeName, state: this.state });\n }\n\n /**\n * Export resource type\n * @param {string} resourceTypeUuid resource type uuid\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\n async exportResourceType(\n resourceTypeUuid: string\n ): Promise<ResourceTypeExportInterface> {\n return exportResourceType({ resourceTypeUuid, state: this.state });\n }\n\n /**\n * Export resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\n async exportResourceTypeByName(\n resourceTypeName: string\n ): Promise<ResourceTypeExportInterface> {\n return exportResourceTypeByName({ resourceTypeName, state: this.state });\n }\n\n /**\n * Export resource types\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\n async exportResourceTypes(): Promise<ResourceTypeExportInterface> {\n return exportResourceTypes({ state: this.state });\n }\n\n /**\n * Import resource type by uuid\n * @param {string} resourceTypeUuid client uuid\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importResourceType(\n resourceTypeUuid: string,\n importData: ResourceTypeExportInterface\n ) {\n return importResourceType({\n resourceTypeUuid,\n importData,\n state: this.state,\n });\n }\n\n /**\n * Import resource type by name\n * @param {string} resourceTypeName client id\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importResourceTypeByName(\n resourceTypeName: string,\n importData: ResourceTypeExportInterface\n ) {\n return importResourceTypeByName({\n resourceTypeName,\n importData,\n state: this.state,\n });\n }\n\n /**\n * Import first resource type\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importFirstResourceType(importData: ResourceTypeExportInterface) {\n return importFirstResourceType({ importData, state: this.state });\n }\n\n /**\n * Import resource types\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importResourceTypes(importData: ResourceTypeExportInterface) {\n return importResourceTypes({ importData, state: this.state });\n }\n}\n\nexport interface ResourceTypeExportInterface {\n meta?: ExportMetaData;\n resourcetype: Record<string, ResourceTypeSkeleton>;\n}\n\n/**\n * Create an empty export template\n * @returns {ResourceTypeExportInterface} an empty export template\n */\nfunction createResourceTypeExportTemplate({\n state,\n}: {\n state: State;\n}): ResourceTypeExportInterface {\n return {\n meta: getMetadata({ state }),\n script: {},\n policy: {},\n policyset: {},\n resourcetype: {},\n } as ResourceTypeExportInterface;\n}\n\n/**\n * Get all resource types\n * @returns {Promise} a promise that resolves to an array of resource type objects\n */\nexport async function getResourceTypes({\n state,\n}: {\n state: State;\n}): Promise<ResourceTypeSkeleton[]> {\n const { result } = await _getResourceTypes({ state });\n return result;\n}\n\n/**\n * Get resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\nexport async function getResourceTypeByName({\n resourceTypeName,\n state,\n}: {\n resourceTypeName: string;\n state: State;\n}): Promise<ResourceTypeSkeleton> {\n const { result } = await _getResourceTypeByName({ resourceTypeName, state });\n switch (result.length) {\n case 1:\n return result[0];\n case 0:\n throw new Error(\n `Resource Type with name ${resourceTypeName} does not exist in realm ${state.getRealm()}`\n );\n default:\n throw new Error(\n `${result.length} resource types '${resourceTypeName}' found`\n );\n }\n}\n\n/**\n * Update resource type\n * @param {string} resourceTypeData resource type id\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\nexport async function updateResourceType({\n resourceTypeUuid,\n resourceTypeData,\n state,\n}: {\n resourceTypeUuid: string;\n resourceTypeData: ResourceTypeSkeleton;\n state: State;\n}): Promise<ResourceTypeSkeleton> {\n return putResourceType({ resourceTypeUuid, resourceTypeData, state });\n}\n\n/**\n * Delete resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} Promise resolvig to a resource type object\n */\nexport async function deleteResourceTypeByName({\n resourceTypeName,\n state,\n}: {\n resourceTypeName: string;\n state: State;\n}): Promise<ResourceTypeSkeleton> {\n const resourceTypeUuid = (\n await getResourceTypeByName({ resourceTypeName, state })\n ).uuid;\n return deleteResourceType({ resourceTypeUuid, state });\n}\n\n/**\n * Export resource type\n * @param {string} resourceTypeUuid resource type uuid\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\nexport async function exportResourceType({\n resourceTypeUuid,\n state,\n}: {\n resourceTypeUuid: string;\n state: State;\n}): Promise<ResourceTypeExportInterface> {\n debugMessage(`ResourceTypeOps.exportResourceType: start`);\n const exportData = createResourceTypeExportTemplate({ state });\n const errors = [];\n try {\n const resourceTypeData = await getResourceType({\n resourceTypeUuid,\n state,\n });\n exportData.resourcetype[resourceTypeData.uuid] = resourceTypeData;\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => {\n if (error.response?.status === 404) {\n return `Resource Type with uuid ${resourceTypeUuid} does not exist in realm ${state.getRealm()}`;\n } else {\n return error.response?.data?.message || error.message;\n }\n })\n .join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`ResourceTypeOps.exportResourceType: end`);\n return exportData;\n}\n\n/**\n * Export resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\nexport async function exportResourceTypeByName({\n resourceTypeName,\n state,\n}: {\n resourceTypeName: string;\n state: State;\n}): Promise<ResourceTypeExportInterface> {\n debugMessage(`ResourceTypeOps.exportResourceTypeByName: start`);\n const exportData = createResourceTypeExportTemplate({ state });\n const errors = [];\n try {\n const resourceTypeData = await getResourceTypeByName({\n resourceTypeName,\n state,\n });\n exportData.resourcetype[resourceTypeData.uuid] = resourceTypeData;\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`ResourceTypeOps.exportResourceTypeByName: end`);\n return exportData;\n}\n\n/**\n * Export resource types\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\nexport async function exportResourceTypes({\n state,\n}: {\n state: State;\n}): Promise<ResourceTypeExportInterface> {\n debugMessage(`ResourceTypeOps.exportResourceType: start`);\n const exportData = createResourceTypeExportTemplate({ state });\n const errors = [];\n try {\n const resourceTypes = await getResourceTypes({ state });\n for (const resourceTypeData of resourceTypes) {\n exportData.resourcetype[resourceTypeData.uuid] = resourceTypeData;\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`ResourceTypeOps.exportResourceType: end`);\n return exportData;\n}\n\n/**\n * Import resource type by uuid\n * @param {string} resourceTypeUuid client uuid\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importResourceType({\n resourceTypeUuid,\n importData,\n state,\n}: {\n resourceTypeUuid: string;\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n if (id === resourceTypeUuid) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._rev;\n try {\n response = await createResourceType({ resourceTypeData, state });\n } catch (createError) {\n if (createError.response?.status === 409)\n response = await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n });\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(\n `Import error:\\n${resourceTypeUuid} not found in import data!`\n );\n }\n return response;\n}\n\n/**\n * Import resource type by name\n * @param {string} resourceTypeName client id\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importResourceTypeByName({\n resourceTypeName,\n importData,\n state,\n}: {\n resourceTypeName: string;\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n if (importData.resourcetype[id].name === resourceTypeName) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._rev;\n try {\n response = await createResourceType({ resourceTypeData, state });\n } catch (createError) {\n if (createError.response?.status === 409)\n response = await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n });\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(\n `Import error:\\n${resourceTypeName} not found in import data!`\n );\n }\n return response;\n}\n\n/**\n * Import first resource type\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importFirstResourceType({\n importData,\n state,\n}: {\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._provider;\n delete resourceTypeData._rev;\n try {\n response = await createResourceType({ resourceTypeData, state });\n } catch (createError) {\n if (createError.response?.status === 409)\n response = await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n });\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n break;\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo resource types found in import data!`);\n }\n return response;\n}\n\n/**\n * Import resource types\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importResourceTypes({\n importData,\n state,\n}: {\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n const response = [];\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._rev;\n try {\n response.push(await createResourceType({ resourceTypeData, state }));\n } catch (createError) {\n if (createError.response?.status === 409)\n response.push(\n await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n })\n );\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo resource types found in import data!`);\n }\n return response;\n}\n\nexport { getResourceType, createResourceType, deleteResourceType };\n"],"mappings":"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"}
1
+ {"version":3,"file":"ResourceTypeOps.js","names":["_ResourceTypesApi","require","_ExportImportUtils","_Console","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","ResourceTypeOps","constructor","state","getResourceType","resourceTypeUuid","_this","getResourceTypes","_this2","result","_getResourceTypes","getResourceTypeByName","resourceTypeName","_this3","updateResourceType","resourceTypeData","_this4","deleteResourceType","_this5","deleteResourceTypeByName","_this6","exportResourceType","_this7","exportResourceTypeByName","_this8","exportResourceTypes","_this9","importResourceType","importData","_this10","importResourceTypeByName","_this11","importFirstResourceType","_this12","importResourceTypes","_this13","exports","default","createResourceTypeExportTemplate","_ref","meta","getMetadata","script","policy","policyset","resourcetype","_x","_getResourceTypes2","_ref2","_x2","_getResourceTypeByName2","_ref3","_getResourceTypeByName","length","Error","concat","getRealm","_x3","_updateResourceType","_ref4","putResourceType","_x4","_deleteResourceTypeByName","_ref5","uuid","_x5","_exportResourceType","_ref6","debugMessage","exportData","errors","push","errorMessages","map","_error$response","response","status","_error$response2","_error$response2$data","data","message","join","_x6","_exportResourceTypeByName","_ref7","_x7","_exportResourceTypes","_ref8","resourceTypes","_x8","_importResourceType","_ref9","imported","id","Object","keys","_rev","createResourceType","createError","_createError$response","_error$response3","_error$response3$data","_x9","_importResourceTypeByName","_ref10","name","_createError$response2","_error$response4","_error$response4$data","_x10","_importFirstResourceType","_ref11","_provider","_createError$response3","_error$response5","_error$response5$data","_x11","_importResourceTypes","_ref12","_createError$response4","_error$response6","_error$response6$data"],"sources":["ops/ResourceTypeOps.ts"],"sourcesContent":["import {\n deleteResourceType,\n getResourceTypes as _getResourceTypes,\n getResourceType,\n getResourceTypeByName as _getResourceTypeByName,\n createResourceType,\n putResourceType,\n} from '../api/ResourceTypesApi';\nimport { ExportMetaData } from './OpsTypes';\nimport { ResourceTypeSkeleton } from '../api/ApiTypes';\nimport { getMetadata } from './utils/ExportImportUtils';\nimport { debugMessage } from './utils/Console';\nimport State from '../shared/State';\n\nexport default class ResourceTypeOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n async getResourceType(resourceTypeUuid: string) {\n return getResourceType({ resourceTypeUuid, state: this.state });\n }\n\n /**\n * Get all resource types\n * @returns {Promise} a promise that resolves to an array of resource type objects\n */\n async getResourceTypes(): Promise<ResourceTypeSkeleton[]> {\n const { result } = await _getResourceTypes({ state: this.state });\n return result;\n }\n\n /**\n * Get resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\n async getResourceTypeByName(\n resourceTypeName: string\n ): Promise<ResourceTypeSkeleton> {\n return getResourceTypeByName({ resourceTypeName, state: this.state });\n }\n\n /**\n * Update resource type\n * @param {string} resourceTypeData resource type id\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\n async updateResourceType(\n resourceTypeUuid: string,\n resourceTypeData: ResourceTypeSkeleton\n ): Promise<ResourceTypeSkeleton> {\n return updateResourceType({\n resourceTypeUuid,\n resourceTypeData,\n state: this.state,\n });\n }\n\n async deleteResourceType(resourceTypeUuid: string) {\n return deleteResourceType({ resourceTypeUuid, state: this.state });\n }\n\n /**\n * Delete resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} Promise resolvig to a resource type object\n */\n async deleteResourceTypeByName(\n resourceTypeName: string\n ): Promise<ResourceTypeSkeleton> {\n return deleteResourceTypeByName({ resourceTypeName, state: this.state });\n }\n\n /**\n * Export resource type\n * @param {string} resourceTypeUuid resource type uuid\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\n async exportResourceType(\n resourceTypeUuid: string\n ): Promise<ResourceTypeExportInterface> {\n return exportResourceType({ resourceTypeUuid, state: this.state });\n }\n\n /**\n * Export resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\n async exportResourceTypeByName(\n resourceTypeName: string\n ): Promise<ResourceTypeExportInterface> {\n return exportResourceTypeByName({ resourceTypeName, state: this.state });\n }\n\n /**\n * Export resource types\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\n async exportResourceTypes(): Promise<ResourceTypeExportInterface> {\n return exportResourceTypes({ state: this.state });\n }\n\n /**\n * Import resource type by uuid\n * @param {string} resourceTypeUuid client uuid\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importResourceType(\n resourceTypeUuid: string,\n importData: ResourceTypeExportInterface\n ) {\n return importResourceType({\n resourceTypeUuid,\n importData,\n state: this.state,\n });\n }\n\n /**\n * Import resource type by name\n * @param {string} resourceTypeName client id\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importResourceTypeByName(\n resourceTypeName: string,\n importData: ResourceTypeExportInterface\n ) {\n return importResourceTypeByName({\n resourceTypeName,\n importData,\n state: this.state,\n });\n }\n\n /**\n * Import first resource type\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importFirstResourceType(importData: ResourceTypeExportInterface) {\n return importFirstResourceType({ importData, state: this.state });\n }\n\n /**\n * Import resource types\n * @param {ResourceTypeExportInterface} importData import data\n */\n async importResourceTypes(importData: ResourceTypeExportInterface) {\n return importResourceTypes({ importData, state: this.state });\n }\n}\n\nexport interface ResourceTypeExportInterface {\n meta?: ExportMetaData;\n resourcetype: Record<string, ResourceTypeSkeleton>;\n}\n\n/**\n * Create an empty export template\n * @returns {ResourceTypeExportInterface} an empty export template\n */\nfunction createResourceTypeExportTemplate({\n state,\n}: {\n state: State;\n}): ResourceTypeExportInterface {\n return {\n meta: getMetadata({ state }),\n script: {},\n policy: {},\n policyset: {},\n resourcetype: {},\n } as ResourceTypeExportInterface;\n}\n\n/**\n * Get all resource types\n * @returns {Promise} a promise that resolves to an array of resource type objects\n */\nexport async function getResourceTypes({\n state,\n}: {\n state: State;\n}): Promise<ResourceTypeSkeleton[]> {\n const { result } = await _getResourceTypes({ state });\n return result;\n}\n\n/**\n * Get resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\nexport async function getResourceTypeByName({\n resourceTypeName,\n state,\n}: {\n resourceTypeName: string;\n state: State;\n}): Promise<ResourceTypeSkeleton> {\n const { result } = await _getResourceTypeByName({ resourceTypeName, state });\n switch (result.length) {\n case 1:\n return result[0];\n case 0:\n throw new Error(\n `Resource Type with name ${resourceTypeName} does not exist in realm ${state.getRealm()}`\n );\n default:\n throw new Error(\n `${result.length} resource types '${resourceTypeName}' found`\n );\n }\n}\n\n/**\n * Update resource type\n * @param {string} resourceTypeData resource type id\n * @returns {Promise<ResourceTypeSkeleton>} a promise that resolves to a resource type object\n */\nexport async function updateResourceType({\n resourceTypeUuid,\n resourceTypeData,\n state,\n}: {\n resourceTypeUuid: string;\n resourceTypeData: ResourceTypeSkeleton;\n state: State;\n}): Promise<ResourceTypeSkeleton> {\n return putResourceType({ resourceTypeUuid, resourceTypeData, state });\n}\n\n/**\n * Delete resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeSkeleton>} Promise resolvig to a resource type object\n */\nexport async function deleteResourceTypeByName({\n resourceTypeName,\n state,\n}: {\n resourceTypeName: string;\n state: State;\n}): Promise<ResourceTypeSkeleton> {\n const resourceTypeUuid = (\n await getResourceTypeByName({ resourceTypeName, state })\n ).uuid;\n return deleteResourceType({ resourceTypeUuid, state });\n}\n\n/**\n * Export resource type\n * @param {string} resourceTypeUuid resource type uuid\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\nexport async function exportResourceType({\n resourceTypeUuid,\n state,\n}: {\n resourceTypeUuid: string;\n state: State;\n}): Promise<ResourceTypeExportInterface> {\n debugMessage(`ResourceTypeOps.exportResourceType: start`);\n const exportData = createResourceTypeExportTemplate({ state });\n const errors = [];\n try {\n const resourceTypeData = await getResourceType({\n resourceTypeUuid,\n state,\n });\n exportData.resourcetype[resourceTypeData.uuid] = resourceTypeData;\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => {\n if (error.response?.status === 404) {\n return `Resource Type with uuid ${resourceTypeUuid} does not exist in realm ${state.getRealm()}`;\n } else {\n return error.response?.data?.message || error.message;\n }\n })\n .join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`ResourceTypeOps.exportResourceType: end`);\n return exportData;\n}\n\n/**\n * Export resource type by name\n * @param {string} resourceTypeName resource type name\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\nexport async function exportResourceTypeByName({\n resourceTypeName,\n state,\n}: {\n resourceTypeName: string;\n state: State;\n}): Promise<ResourceTypeExportInterface> {\n debugMessage(`ResourceTypeOps.exportResourceTypeByName: start`);\n const exportData = createResourceTypeExportTemplate({ state });\n const errors = [];\n try {\n const resourceTypeData = await getResourceTypeByName({\n resourceTypeName,\n state,\n });\n exportData.resourcetype[resourceTypeData.uuid] = resourceTypeData;\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`ResourceTypeOps.exportResourceTypeByName: end`);\n return exportData;\n}\n\n/**\n * Export resource types\n * @returns {Promise<ResourceTypeExportInterface>} a promise that resolves to an ResourceTypeExportInterface object\n */\nexport async function exportResourceTypes({\n state,\n}: {\n state: State;\n}): Promise<ResourceTypeExportInterface> {\n debugMessage(`ResourceTypeOps.exportResourceType: start`);\n const exportData = createResourceTypeExportTemplate({ state });\n const errors = [];\n try {\n const resourceTypes = await getResourceTypes({ state });\n for (const resourceTypeData of resourceTypes) {\n exportData.resourcetype[resourceTypeData.uuid] = resourceTypeData;\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`ResourceTypeOps.exportResourceType: end`);\n return exportData;\n}\n\n/**\n * Import resource type by uuid\n * @param {string} resourceTypeUuid client uuid\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importResourceType({\n resourceTypeUuid,\n importData,\n state,\n}: {\n resourceTypeUuid: string;\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n if (id === resourceTypeUuid) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._rev;\n try {\n response = await createResourceType({ resourceTypeData, state });\n } catch (createError) {\n if (createError.response?.status === 409)\n response = await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n });\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(\n `Import error:\\n${resourceTypeUuid} not found in import data!`\n );\n }\n return response;\n}\n\n/**\n * Import resource type by name\n * @param {string} resourceTypeName client id\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importResourceTypeByName({\n resourceTypeName,\n importData,\n state,\n}: {\n resourceTypeName: string;\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n if (importData.resourcetype[id].name === resourceTypeName) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._rev;\n try {\n response = await createResourceType({ resourceTypeData, state });\n } catch (createError) {\n if (createError.response?.status === 409)\n response = await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n });\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(\n `Import error:\\n${resourceTypeName} not found in import data!`\n );\n }\n return response;\n}\n\n/**\n * Import first resource type\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importFirstResourceType({\n importData,\n state,\n}: {\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._provider;\n delete resourceTypeData._rev;\n try {\n response = await createResourceType({ resourceTypeData, state });\n } catch (createError) {\n if (createError.response?.status === 409)\n response = await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n });\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n break;\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo resource types found in import data!`);\n }\n return response;\n}\n\n/**\n * Import resource types\n * @param {ResourceTypeExportInterface} importData import data\n */\nexport async function importResourceTypes({\n importData,\n state,\n}: {\n importData: ResourceTypeExportInterface;\n state: State;\n}) {\n const response = [];\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.resourcetype)) {\n try {\n const resourceTypeData = importData.resourcetype[id];\n delete resourceTypeData._rev;\n try {\n response.push(await createResourceType({ resourceTypeData, state }));\n } catch (createError) {\n if (createError.response?.status === 409)\n response.push(\n await putResourceType({\n resourceTypeUuid: id,\n resourceTypeData,\n state,\n })\n );\n else throw createError;\n }\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo resource types found in import data!`);\n }\n return response;\n}\n\nexport { getResourceType, createResourceType, deleteResourceType };\n"],"mappings":"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"}
@@ -26,6 +26,9 @@ class ServiceOps {
26
26
  constructor(state) {
27
27
  this.state = state;
28
28
  }
29
+ createServiceExportTemplate() {
30
+ return createServiceExportTemplate();
31
+ }
29
32
 
30
33
  /**
31
34
  * Get list of services