@rockcarver/frodo-lib 0.12.1 → 0.12.2-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 (159) hide show
  1. package/CHANGELOG.md +13 -1
  2. package/cjs/api/BaseApi.js +36 -8
  3. package/cjs/api/BaseApi.js.map +1 -1
  4. package/cjs/api/NodeApi.js +190 -0
  5. package/cjs/api/NodeApi.js.map +1 -0
  6. package/cjs/api/NodeApi.test.js.map +1 -0
  7. package/cjs/api/OAuth2ClientApi.js +3 -1
  8. package/cjs/api/OAuth2ClientApi.js.map +1 -1
  9. package/cjs/api/SecretsApi.js +59 -29
  10. package/cjs/api/SecretsApi.js.map +1 -1
  11. package/cjs/api/StartupApi.js +21 -8
  12. package/cjs/api/StartupApi.js.map +1 -1
  13. package/cjs/api/StartupApi.test.js.map +1 -0
  14. package/cjs/api/TreeApi.js +30 -161
  15. package/cjs/api/TreeApi.js.map +1 -1
  16. package/cjs/api/TreeApi.test.js.map +1 -0
  17. package/cjs/api/VariablesApi.js +35 -20
  18. package/cjs/api/VariablesApi.js.map +1 -1
  19. package/cjs/index.js +15 -5
  20. package/cjs/index.js.map +1 -1
  21. package/cjs/ops/AuthenticateOps.js +1 -1
  22. package/cjs/ops/AuthenticateOps.js.map +1 -1
  23. package/cjs/ops/IdpOps.js +1 -1
  24. package/cjs/ops/IdpOps.js.map +1 -1
  25. package/cjs/ops/JourneyOps.js +233 -204
  26. package/cjs/ops/JourneyOps.js.map +1 -1
  27. package/cjs/ops/OAuth2ClientOps.js +27 -20
  28. package/cjs/ops/OAuth2ClientOps.js.map +1 -1
  29. package/cjs/ops/SecretsOps.js +9 -7
  30. package/cjs/ops/SecretsOps.js.map +1 -1
  31. package/cjs/ops/StartupOps.js +61 -71
  32. package/cjs/ops/StartupOps.js.map +1 -1
  33. package/cjs/ops/VariablesOps.js +3 -3
  34. package/cjs/ops/VariablesOps.js.map +1 -1
  35. package/cjs/ops/utils/Console.js +3 -2
  36. package/cjs/ops/utils/Console.js.map +1 -1
  37. package/cjs/ops/utils/ExportImportUtils.js +1 -0
  38. package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
  39. package/esm/api/BaseApi.mjs +35 -7
  40. package/esm/api/NodeApi.mjs +114 -0
  41. package/esm/api/NodeApi.test.mjs +105 -0
  42. package/esm/api/OAuth2ClientApi.mjs +4 -2
  43. package/esm/api/SecretsApi.mjs +59 -29
  44. package/esm/api/StartupApi.mjs +18 -8
  45. package/esm/api/StartupApi.test.mjs +56 -0
  46. package/esm/api/TreeApi.mjs +29 -99
  47. package/esm/api/TreeApi.test.mjs +175 -0
  48. package/esm/api/VariablesApi.mjs +35 -20
  49. package/esm/index.mjs +7 -5
  50. package/esm/ops/AuthenticateOps.mjs +1 -1
  51. package/esm/ops/IdpOps.mjs +1 -1
  52. package/esm/ops/JourneyOps.mjs +186 -154
  53. package/esm/ops/OAuth2ClientOps.mjs +9 -4
  54. package/esm/ops/SecretsOps.mjs +9 -7
  55. package/esm/ops/StartupOps.mjs +59 -62
  56. package/esm/ops/VariablesOps.mjs +3 -3
  57. package/esm/ops/utils/Console.mjs +3 -2
  58. package/esm/ops/utils/ExportImportUtils.mjs +1 -0
  59. package/package.json +7 -4
  60. package/types/api/AuthenticateApi.d.ts +2 -0
  61. package/types/api/AuthenticateApi.d.ts.map +1 -0
  62. package/types/api/BaseApi.d.ts +50 -0
  63. package/types/api/BaseApi.d.ts.map +1 -0
  64. package/types/api/CirclesOfTrustApi.d.ts +24 -0
  65. package/types/api/CirclesOfTrustApi.d.ts.map +1 -0
  66. package/types/api/EmailTemplateApi.d.ts +22 -0
  67. package/types/api/EmailTemplateApi.d.ts.map +1 -0
  68. package/types/api/IdmConfigApi.d.ts +39 -0
  69. package/types/api/IdmConfigApi.d.ts.map +1 -0
  70. package/types/api/LogApi.d.ts +4 -0
  71. package/types/api/LogApi.d.ts.map +1 -0
  72. package/types/api/ManagedObjectApi.d.ts +21 -0
  73. package/types/api/ManagedObjectApi.d.ts.map +1 -0
  74. package/types/api/NodeApi.d.ts +38 -0
  75. package/types/api/NodeApi.d.ts.map +1 -0
  76. package/types/api/OAuth2ClientApi.d.ts +18 -0
  77. package/types/api/OAuth2ClientApi.d.ts.map +1 -0
  78. package/types/api/OAuth2OIDCApi.d.ts +22 -0
  79. package/types/api/OAuth2OIDCApi.d.ts.map +1 -0
  80. package/types/api/OAuth2ProviderApi.d.ts +5 -0
  81. package/types/api/OAuth2ProviderApi.d.ts.map +1 -0
  82. package/types/api/RealmApi.d.ts +30 -0
  83. package/types/api/RealmApi.d.ts.map +1 -0
  84. package/types/api/Saml2Api.d.ts +52 -0
  85. package/types/api/Saml2Api.d.ts.map +1 -0
  86. package/types/api/ScriptApi.d.ts +24 -0
  87. package/types/api/ScriptApi.d.ts.map +1 -0
  88. package/types/api/SecretsApi.d.ts +10 -0
  89. package/types/api/SecretsApi.d.ts.map +1 -0
  90. package/types/api/ServerInfoApi.d.ts +10 -0
  91. package/types/api/ServerInfoApi.d.ts.map +1 -0
  92. package/types/api/SocialIdentityProvidersApi.d.ts +31 -0
  93. package/types/api/SocialIdentityProvidersApi.d.ts.map +1 -0
  94. package/types/api/StartupApi.d.ts +14 -0
  95. package/types/api/StartupApi.d.ts.map +1 -0
  96. package/types/api/ThemeApi.d.ts +54 -0
  97. package/types/api/ThemeApi.d.ts.map +1 -0
  98. package/types/api/TreeApi.d.ts +24 -0
  99. package/types/api/TreeApi.d.ts.map +1 -0
  100. package/types/api/VariablesApi.d.ts +32 -0
  101. package/types/api/VariablesApi.d.ts.map +1 -0
  102. package/types/api/utils/ApiUtils.d.ts +29 -0
  103. package/types/api/utils/ApiUtils.d.ts.map +1 -0
  104. package/types/api/utils/Base64.d.ts +30 -0
  105. package/types/api/utils/Base64.d.ts.map +1 -0
  106. package/types/index.d.ts +26 -0
  107. package/types/index.d.ts.map +1 -0
  108. package/types/ops/AdminOps.d.ts +11 -0
  109. package/types/ops/AdminOps.d.ts.map +1 -0
  110. package/types/ops/AuthenticateOps.d.ts +6 -0
  111. package/types/ops/AuthenticateOps.d.ts.map +1 -0
  112. package/types/ops/CirclesOfTrustOps.d.ts +40 -0
  113. package/types/ops/CirclesOfTrustOps.d.ts.map +1 -0
  114. package/types/ops/ConnectionProfileOps.d.ts +47 -0
  115. package/types/ops/ConnectionProfileOps.d.ts.map +1 -0
  116. package/types/ops/EmailTemplateOps.d.ts +40 -0
  117. package/types/ops/EmailTemplateOps.d.ts.map +1 -0
  118. package/types/ops/IdmOps.d.ts +27 -0
  119. package/types/ops/IdmOps.d.ts.map +1 -0
  120. package/types/ops/IdpOps.d.ts +45 -0
  121. package/types/ops/IdpOps.d.ts.map +1 -0
  122. package/types/ops/JourneyOps.d.ts +151 -0
  123. package/types/ops/JourneyOps.d.ts.map +1 -0
  124. package/types/ops/LogOps.d.ts +5 -0
  125. package/types/ops/LogOps.d.ts.map +1 -0
  126. package/types/ops/ManagedObjectOps.d.ts +14 -0
  127. package/types/ops/ManagedObjectOps.d.ts.map +1 -0
  128. package/types/ops/OAuth2ClientOps.d.ts +24 -0
  129. package/types/ops/OAuth2ClientOps.d.ts.map +1 -0
  130. package/types/ops/OrganizationOps.d.ts +11 -0
  131. package/types/ops/OrganizationOps.d.ts.map +1 -0
  132. package/types/ops/RealmOps.d.ts +22 -0
  133. package/types/ops/RealmOps.d.ts.map +1 -0
  134. package/types/ops/SamlOps.d.ts +51 -0
  135. package/types/ops/SamlOps.d.ts.map +1 -0
  136. package/types/ops/ScriptOps.d.ts +30 -0
  137. package/types/ops/ScriptOps.d.ts.map +1 -0
  138. package/types/ops/SecretsOps.d.ts +63 -0
  139. package/types/ops/SecretsOps.d.ts.map +1 -0
  140. package/types/ops/StartupOps.d.ts +25 -0
  141. package/types/ops/StartupOps.d.ts.map +1 -0
  142. package/types/ops/ThemeOps.d.ts +66 -0
  143. package/types/ops/ThemeOps.d.ts.map +1 -0
  144. package/types/ops/VariablesOps.d.ts +39 -0
  145. package/types/ops/VariablesOps.d.ts.map +1 -0
  146. package/types/ops/utils/Console.d.ts +63 -0
  147. package/types/ops/utils/Console.d.ts.map +1 -0
  148. package/types/ops/utils/DataProtection.d.ts +6 -0
  149. package/types/ops/utils/DataProtection.d.ts.map +1 -0
  150. package/types/ops/utils/ExportImportUtils.d.ts +22 -0
  151. package/types/ops/utils/ExportImportUtils.d.ts.map +1 -0
  152. package/types/ops/utils/OpsUtils.d.ts +27 -0
  153. package/types/ops/utils/OpsUtils.d.ts.map +1 -0
  154. package/types/ops/utils/Wordwrap.d.ts +1 -0
  155. package/types/ops/utils/Wordwrap.d.ts.map +1 -0
  156. package/types/storage/SessionStorage.d.ts +47 -0
  157. package/types/storage/SessionStorage.d.ts.map +1 -0
  158. package/types/storage/StaticStorage.d.ts +14 -0
  159. package/types/storage/StaticStorage.d.ts.map +1 -0
package/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.12.2-2] - 2022-09-09
11
+
12
+ ## [0.12.2-1] - 2022-09-08
13
+
14
+ ## [0.12.2-0] - 2022-09-02
15
+
10
16
  ## [0.12.1] - 2022-08-27
11
17
 
12
18
  ### Changed
@@ -451,7 +457,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
451
457
  - Fixed problem with adding connection profiles
452
458
  - Miscellaneous bug fixes
453
459
 
454
- [Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.1...HEAD
460
+ [Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-2...HEAD
461
+
462
+ [0.12.2-2]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-1...v0.12.2-2
463
+
464
+ [0.12.2-1]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-0...v0.12.2-1
465
+
466
+ [0.12.2-0]: https://github.com/rockcarver/frodo-lib/compare/v0.12.1...v0.12.2-0
455
467
 
456
468
  [0.12.1]: https://github.com/rockcarver/frodo-lib/compare/v0.12.1-0...v0.12.1
457
469
 
@@ -10,12 +10,12 @@ exports.generateLogApi = generateLogApi;
10
10
  exports.generateLogKeysApi = generateLogKeysApi;
11
11
  exports.generateOauth2Api = generateOauth2Api;
12
12
 
13
+ var _agentkeepalive = _interopRequireDefault(require("agentkeepalive"));
14
+
13
15
  var _axios = _interopRequireDefault(require("axios"));
14
16
 
15
17
  var _axiosRetry = _interopRequireDefault(require("axios-retry"));
16
18
 
17
- var https = _interopRequireWildcard(require("https"));
18
-
19
19
  var _httpsProxyAgent = _interopRequireDefault(require("https-proxy-agent"));
20
20
 
21
21
  var _url = _interopRequireWildcard(require("url"));
@@ -48,15 +48,32 @@ var pkg = JSON.parse(_fs.default.readFileSync(_path.default.resolve(_dirname, '.
48
48
  shouldResetTimeout: true,
49
49
  retryCondition: _error => true // retry no matter what
50
50
 
51
- });
52
- var timeout = 30000;
51
+ }); // all agents
52
+
53
+ var timeout = 30000; // agentkeepalive
54
+
55
+ var maxSockets = 100;
56
+ var maxFreeSockets = 10;
57
+ var freeSocketTimeout = 30000;
53
58
  var userAgent = "".concat(pkg.name, "/").concat(pkg.version);
54
- var httpsAgent;
59
+ var httpAgent, httpsAgent;
60
+
61
+ function getHttpAgent() {
62
+ if (httpAgent) return httpAgent;
63
+ httpAgent = new _agentkeepalive.default({
64
+ maxSockets,
65
+ maxFreeSockets,
66
+ timeout,
67
+ freeSocketTimeout
68
+ });
69
+ return httpAgent;
70
+ }
55
71
  /**
56
72
  * Helper method to create properly configured httpsAgent
57
73
  * @returns {any} appropriate httpsAgent
58
74
  */
59
75
 
76
+
60
77
  function getHttpsAgent() {
61
78
  if (httpsAgent) return httpsAgent;
62
79
  var options = {
@@ -78,7 +95,12 @@ function getHttpsAgent() {
78
95
  return httpsAgent;
79
96
  }
80
97
 
81
- httpsAgent = new https.Agent(options);
98
+ httpsAgent = new _agentkeepalive.default.HttpsAgent(_objectSpread(_objectSpread({}, options), {}, {
99
+ maxSockets,
100
+ maxFreeSockets,
101
+ timeout,
102
+ freeSocketTimeout
103
+ }));
82
104
  return httpsAgent;
83
105
  }
84
106
  /**
@@ -107,7 +129,7 @@ function generateAmApi(resource) {
107
129
  'User-Agent': userAgent,
108
130
  'Content-Type': 'application/json',
109
131
  'Accept-API-Version': resource.apiVersion,
110
- Cookie: "".concat(_SessionStorage.default.session.raw['cookieName'], "=").concat(_SessionStorage.default.session.raw['cookieValue'])
132
+ Cookie: "".concat(_SessionStorage.default.session.getCookieName(), "=").concat(_SessionStorage.default.session.getCookieValue())
111
133
  };
112
134
 
113
135
  if (requestOverride['headers']) {
@@ -115,10 +137,11 @@ function generateAmApi(resource) {
115
137
  }
116
138
 
117
139
  var requestDetails = _objectSpread(_objectSpread({
118
- baseURL: "".concat(_SessionStorage.default.session.getTenant(), "/json").concat(resource.path),
140
+ baseURL: "".concat(_SessionStorage.default.session.getTenant(), "/json"),
119
141
  timeout
120
142
  }, requestOverride), {}, {
121
143
  headers,
144
+ httpAgent: getHttpAgent(),
122
145
  httpsAgent: getHttpsAgent(),
123
146
  proxy: getProxy()
124
147
  });
@@ -154,6 +177,7 @@ function generateOauth2Api(resource) {
154
177
  timeout
155
178
  }, requestOverride), {}, {
156
179
  headers,
180
+ httpAgent: getHttpAgent(),
157
181
  httpsAgent: getHttpsAgent(),
158
182
  proxy: getProxy()
159
183
  });
@@ -182,6 +206,7 @@ function generateIdmApi() {
182
206
  'Content-Type': 'application/json'
183
207
  }
184
208
  }, requestOverride), {}, {
209
+ httpAgent: getHttpAgent(),
185
210
  httpsAgent: getHttpsAgent(),
186
211
  proxy: getProxy()
187
212
  });
@@ -215,6 +240,7 @@ function generateLogKeysApi() {
215
240
  timeout,
216
241
  headers
217
242
  }, requestOverride), {}, {
243
+ httpAgent: getHttpAgent(),
218
244
  httpsAgent: getHttpsAgent(),
219
245
  proxy: getProxy()
220
246
  });
@@ -249,6 +275,7 @@ function generateLogApi() {
249
275
  timeout,
250
276
  headers
251
277
  }, requestOverride), {}, {
278
+ httpAgent: getHttpAgent(),
252
279
  httpsAgent: getHttpsAgent(),
253
280
  proxy: getProxy()
254
281
  });
@@ -279,6 +306,7 @@ function generateESVApi(resource) {
279
306
  timeout,
280
307
  headers
281
308
  }, requestOverride), {}, {
309
+ httpAgent: getHttpAgent(),
282
310
  httpsAgent: getHttpsAgent(),
283
311
  proxy: getProxy()
284
312
  });
@@ -1 +1 @@
1
- {"version":3,"file":"BaseApi.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","axiosRetry","axios","retries","shouldResetTimeout","retryCondition","_error","timeout","userAgent","name","version","httpsAgent","getHttpsAgent","options","rejectUnauthorized","storage","session","getAllowInsecureConnection","httpsProxy","process","env","HTTPS_PROXY","https_proxy","console","error","parsed","url","hostname","port","protocol","HttpsProxyAgent","https","Agent","getProxy","generateAmApi","resource","requestOverride","headers","apiVersion","Cookie","raw","requestDetails","baseURL","getTenant","proxy","request","create","generateOauth2Api","generateIdmApi","getTenantURL","getBearerToken","generateLogKeysApi","generateLogApi","getLogApiKey","getLogApiSecret","generateESVApi"],"sources":["api/BaseApi.ts"],"sourcesContent":["import axios, { AxiosProxyConfig } from 'axios';\nimport axiosRetry from 'axios-retry';\nimport * as https from 'https';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport storage from '../storage/SessionStorage';\nimport { getTenantURL } from './utils/ApiUtils';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8')\n);\n\naxiosRetry(axios, {\n retries: 3,\n shouldResetTimeout: true,\n retryCondition: (_error) => true, // retry no matter what\n});\n\nconst timeout = 30000;\nconst userAgent = `${pkg.name}/${pkg.version}`;\nlet httpsAgent;\n\n/**\n * Helper method to create properly configured httpsAgent\n * @returns {any} appropriate httpsAgent\n */\nfunction getHttpsAgent() {\n if (httpsAgent) return httpsAgent;\n const options = {\n rejectUnauthorized: !storage.session.getAllowInsecureConnection(),\n };\n const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;\n if (httpsProxy) {\n // https://github.com/axios/axios/issues/3459\n console.error(`Using proxy ${httpsProxy}`['yellow']);\n const parsed = url.parse(httpsProxy);\n options['host'] = parsed.hostname;\n options['port'] = parsed.port;\n options['protocol'] = parsed.protocol;\n options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();\n httpsAgent = HttpsProxyAgent(options);\n return httpsAgent;\n }\n httpsAgent = new https.Agent(options);\n return httpsAgent;\n}\n\n/**\n * Get Proxy config\n * @returns {AxiosProxyConfig | false} axios proxy config or false\n */\nfunction getProxy(): AxiosProxyConfig | false {\n if (process.env.HTTPS_PROXY || process.env.https_proxy) return false;\n return null;\n}\n\n/**\n * Generates an AM Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateAmApi(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.raw['cookieName']}=${storage.session.raw['cookieValue']}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json${resource.path}`,\n timeout,\n ...requestOverride,\n headers,\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an OAuth2 Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateOauth2Api(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.raw['cookieName']}=${storage.session.raw['cookieValue']}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json${resource.path}`,\n timeout,\n ...requestOverride,\n headers,\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an IDM Axios API instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateIdmApi(requestOverride = {}) {\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers: {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n },\n ...requestOverride,\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a LogKeys API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogKeysApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a Log API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'X-API-Key': storage.session.getLogApiKey(),\n 'X-API-Secret': storage.session.getLogApiSecret(),\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an ESV Axios API instance for Environment Secrets and Variables\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateESVApi(resource, requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"BaseApi.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","axiosRetry","axios","retries","shouldResetTimeout","retryCondition","_error","timeout","maxSockets","maxFreeSockets","freeSocketTimeout","userAgent","name","version","httpAgent","httpsAgent","getHttpAgent","Agent","getHttpsAgent","options","rejectUnauthorized","storage","session","getAllowInsecureConnection","httpsProxy","process","env","HTTPS_PROXY","https_proxy","console","error","parsed","url","hostname","port","protocol","HttpsProxyAgent","HttpsAgent","getProxy","generateAmApi","resource","requestOverride","headers","apiVersion","Cookie","getCookieName","getCookieValue","requestDetails","baseURL","getTenant","proxy","request","create","generateOauth2Api","raw","generateIdmApi","getTenantURL","getBearerToken","generateLogKeysApi","generateLogApi","getLogApiKey","getLogApiSecret","generateESVApi"],"sources":["api/BaseApi.ts"],"sourcesContent":["import Agent from 'agentkeepalive';\nimport axios, { AxiosProxyConfig } from 'axios';\nimport axiosRetry from 'axios-retry';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport storage from '../storage/SessionStorage';\nimport { getTenantURL } from './utils/ApiUtils';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8')\n);\n\naxiosRetry(axios, {\n retries: 3,\n shouldResetTimeout: true,\n retryCondition: (_error) => true, // retry no matter what\n});\n\n// all agents\nconst timeout = 30000;\n\n// agentkeepalive\nconst maxSockets = 100;\nconst maxFreeSockets = 10;\nconst freeSocketTimeout = 30000;\n\nconst userAgent = `${pkg.name}/${pkg.version}`;\nlet httpAgent, httpsAgent;\n\nfunction getHttpAgent() {\n if (httpAgent) return httpAgent;\n httpAgent = new Agent({\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpAgent;\n}\n\n/**\n * Helper method to create properly configured httpsAgent\n * @returns {any} appropriate httpsAgent\n */\nfunction getHttpsAgent() {\n if (httpsAgent) return httpsAgent;\n const options = {\n rejectUnauthorized: !storage.session.getAllowInsecureConnection(),\n };\n const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;\n if (httpsProxy) {\n // https://github.com/axios/axios/issues/3459\n console.error(`Using proxy ${httpsProxy}`['yellow']);\n const parsed = url.parse(httpsProxy);\n options['host'] = parsed.hostname;\n options['port'] = parsed.port;\n options['protocol'] = parsed.protocol;\n options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();\n httpsAgent = HttpsProxyAgent(options);\n return httpsAgent;\n }\n httpsAgent = new Agent.HttpsAgent({\n ...options,\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpsAgent;\n}\n\n/**\n * Get Proxy config\n * @returns {AxiosProxyConfig | false} axios proxy config or false\n */\nfunction getProxy(): AxiosProxyConfig | false {\n if (process.env.HTTPS_PROXY || process.env.https_proxy) return false;\n return null;\n}\n\n/**\n * Generates an AM Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateAmApi(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json`,\n timeout,\n ...requestOverride,\n headers,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an OAuth2 Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateOauth2Api(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.raw['cookieName']}=${storage.session.raw['cookieValue']}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json${resource.path}`,\n timeout,\n ...requestOverride,\n headers,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an IDM Axios API instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateIdmApi(requestOverride = {}) {\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers: {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n },\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a LogKeys API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogKeysApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a Log API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'X-API-Key': storage.session.getLogApiKey(),\n 'X-API-Secret': storage.session.getLogApiSecret(),\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an ESV Axios API instance for Environment Secrets and Variables\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateESVApi(resource, requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n"],"mappings":"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"}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.deleteNode = deleteNode;
7
+ exports.getNode = getNode;
8
+ exports.getNodeTypes = getNodeTypes;
9
+ exports.getNodes = getNodes;
10
+ exports.getNodesByType = getNodesByType;
11
+ exports.putNode = putNode;
12
+
13
+ var _util = _interopRequireDefault(require("util"));
14
+
15
+ var _ApiUtils = require("./utils/ApiUtils");
16
+
17
+ var _BaseApi = require("./BaseApi");
18
+
19
+ var _SessionStorage = _interopRequireDefault(require("../storage/SessionStorage"));
20
+
21
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+
23
+ 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); } }
24
+
25
+ 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); }); }; }
26
+
27
+ var queryAllNodeTypesURLTemplate = '%s/json%s/realm-config/authentication/authenticationtrees/nodes?_action=getAllTypes';
28
+ var queryAllNodesByTypeURLTemplate = '%s/json%s/realm-config/authentication/authenticationtrees/nodes/%s?_queryFilter=true';
29
+ var queryAllNodesURLTemplate = '%s/json%s/realm-config/authentication/authenticationtrees/nodes?_action=nextdescendents';
30
+ var nodeURLTemplate = '%s/json%s/realm-config/authentication/authenticationtrees/nodes/%s/%s';
31
+ var apiVersion = 'protocol=2.1,resource=1.0';
32
+
33
+ var getNodeApiConfig = () => {
34
+ var configPath = (0, _ApiUtils.getCurrentRealmPath)();
35
+ return {
36
+ path: "".concat(configPath, "/authentication/authenticationtrees"),
37
+ apiVersion
38
+ };
39
+ };
40
+ /**
41
+ * Get all node types
42
+ * @returns {Promise} a promise that resolves to an array of node type objects
43
+ */
44
+
45
+
46
+ function getNodeTypes() {
47
+ return _getNodeTypes.apply(this, arguments);
48
+ }
49
+ /**
50
+ * Get all nodes
51
+ * @returns {Promise} a promise that resolves to an array of node objects
52
+ */
53
+
54
+
55
+ function _getNodeTypes() {
56
+ _getNodeTypes = _asyncToGenerator(function* () {
57
+ var urlString = _util.default.format(queryAllNodeTypesURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)());
58
+
59
+ var response = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).post(urlString, {}, {
60
+ withCredentials: true,
61
+ headers: {
62
+ 'Accept-Encoding': 'gzip, deflate, br'
63
+ }
64
+ });
65
+ return response.data.result;
66
+ });
67
+ return _getNodeTypes.apply(this, arguments);
68
+ }
69
+
70
+ function getNodes() {
71
+ return _getNodes.apply(this, arguments);
72
+ }
73
+ /**
74
+ * Get all nodes by type
75
+ * @param {string} nodeType node type
76
+ * @returns {Promise} a promise that resolves to an array of node objects of the requested type
77
+ */
78
+
79
+
80
+ function _getNodes() {
81
+ _getNodes = _asyncToGenerator(function* () {
82
+ var urlString = _util.default.format(queryAllNodesURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)());
83
+
84
+ var response = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).post(urlString, {}, {
85
+ withCredentials: true,
86
+ headers: {
87
+ 'Accept-Encoding': 'gzip, deflate, br'
88
+ }
89
+ });
90
+ return response.data.result;
91
+ });
92
+ return _getNodes.apply(this, arguments);
93
+ }
94
+
95
+ function getNodesByType(_x) {
96
+ return _getNodesByType.apply(this, arguments);
97
+ }
98
+ /**
99
+ * Get node by uuid and type
100
+ * @param {String} nodeId node uuid
101
+ * @param {String} nodeType node type
102
+ * @returns {Promise} a promise that resolves to a node object
103
+ */
104
+
105
+
106
+ function _getNodesByType() {
107
+ _getNodesByType = _asyncToGenerator(function* (nodeType) {
108
+ var urlString = _util.default.format(queryAllNodesByTypeURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), nodeType);
109
+
110
+ var response = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).get(urlString, {
111
+ withCredentials: true
112
+ });
113
+ return response.data.result;
114
+ });
115
+ return _getNodesByType.apply(this, arguments);
116
+ }
117
+
118
+ function getNode(_x2, _x3) {
119
+ return _getNode.apply(this, arguments);
120
+ }
121
+ /**
122
+ * Put node by uuid and type
123
+ * @param {String} nodeId node uuid
124
+ * @param {String} nodeType node type
125
+ * @param {Object} nodeData node object
126
+ * @returns {Promise} a promise that resolves to an object containing a node object
127
+ */
128
+
129
+
130
+ function _getNode() {
131
+ _getNode = _asyncToGenerator(function* (nodeId, nodeType) {
132
+ var urlString = _util.default.format(nodeURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), nodeType, nodeId);
133
+
134
+ var {
135
+ data
136
+ } = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).get(urlString, {
137
+ withCredentials: true
138
+ });
139
+ return data;
140
+ });
141
+ return _getNode.apply(this, arguments);
142
+ }
143
+
144
+ function putNode(_x4, _x5, _x6) {
145
+ return _putNode.apply(this, arguments);
146
+ }
147
+ /**
148
+ * Delete node by uuid and type
149
+ * @param {String} nodeId node uuid
150
+ * @param {String} nodeType node type
151
+ * @returns {Promise} a promise that resolves to an object containing a node object
152
+ */
153
+
154
+
155
+ function _putNode() {
156
+ _putNode = _asyncToGenerator(function* (nodeId, nodeType, nodeData) {
157
+ // until we figure out a way to use transport keys in Frodo,
158
+ // we'll have to drop those encrypted attributes.
159
+ var cleanData = (0, _ApiUtils.deleteDeepByKey)(nodeData, '-encrypted');
160
+
161
+ var urlString = _util.default.format(nodeURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), nodeType, nodeId);
162
+
163
+ var {
164
+ data
165
+ } = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).put(urlString, cleanData, {
166
+ withCredentials: true
167
+ });
168
+ return data;
169
+ });
170
+ return _putNode.apply(this, arguments);
171
+ }
172
+
173
+ function deleteNode(_x7, _x8) {
174
+ return _deleteNode.apply(this, arguments);
175
+ }
176
+
177
+ function _deleteNode() {
178
+ _deleteNode = _asyncToGenerator(function* (nodeId, nodeType) {
179
+ var urlString = _util.default.format(nodeURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), nodeType, nodeId);
180
+
181
+ var {
182
+ data
183
+ } = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).delete(urlString, {
184
+ withCredentials: true
185
+ });
186
+ return data;
187
+ });
188
+ return _deleteNode.apply(this, arguments);
189
+ }
190
+ //# sourceMappingURL=NodeApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeApi.js","names":["queryAllNodeTypesURLTemplate","queryAllNodesByTypeURLTemplate","queryAllNodesURLTemplate","nodeURLTemplate","apiVersion","getNodeApiConfig","configPath","getCurrentRealmPath","path","getNodeTypes","urlString","util","format","storage","session","getTenant","response","generateAmApi","post","withCredentials","headers","data","result","getNodes","getNodesByType","nodeType","get","getNode","nodeId","putNode","nodeData","cleanData","deleteDeepByKey","put","deleteNode","delete"],"sources":["api/NodeApi.ts"],"sourcesContent":["import util from 'util';\nimport { deleteDeepByKey, getCurrentRealmPath } from './utils/ApiUtils';\nimport { generateAmApi } from './BaseApi';\nimport storage from '../storage/SessionStorage';\n\nconst queryAllNodeTypesURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes?_action=getAllTypes';\nconst queryAllNodesByTypeURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes/%s?_queryFilter=true';\nconst queryAllNodesURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes?_action=nextdescendents';\nconst nodeURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes/%s/%s';\n\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getNodeApiConfig = () => {\n const configPath = getCurrentRealmPath();\n return {\n path: `${configPath}/authentication/authenticationtrees`,\n apiVersion,\n };\n};\n\n/**\n * Get all node types\n * @returns {Promise} a promise that resolves to an array of node type objects\n */\nexport async function getNodeTypes() {\n const urlString = util.format(\n queryAllNodeTypesURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const response = await generateAmApi(getNodeApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n headers: { 'Accept-Encoding': 'gzip, deflate, br' },\n }\n );\n return response.data.result;\n}\n\n/**\n * Get all nodes\n * @returns {Promise} a promise that resolves to an array of node objects\n */\nexport async function getNodes() {\n const urlString = util.format(\n queryAllNodesURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const response = await generateAmApi(getNodeApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n headers: { 'Accept-Encoding': 'gzip, deflate, br' },\n }\n );\n return response.data.result;\n}\n\n/**\n * Get all nodes by type\n * @param {string} nodeType node type\n * @returns {Promise} a promise that resolves to an array of node objects of the requested type\n */\nexport async function getNodesByType(nodeType: string) {\n const urlString = util.format(\n queryAllNodesByTypeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType\n );\n const response = await generateAmApi(getNodeApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return response.data.result;\n}\n\n/**\n * Get node by uuid and type\n * @param {String} nodeId node uuid\n * @param {String} nodeType node type\n * @returns {Promise} a promise that resolves to a node object\n */\nexport async function getNode(nodeId: string, nodeType: string) {\n const urlString = util.format(\n nodeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType,\n nodeId\n );\n const { data } = await generateAmApi(getNodeApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Put node by uuid and type\n * @param {String} nodeId node uuid\n * @param {String} nodeType node type\n * @param {Object} nodeData node object\n * @returns {Promise} a promise that resolves to an object containing a node object\n */\nexport async function putNode(nodeId: string, nodeType: string, nodeData) {\n // until we figure out a way to use transport keys in Frodo,\n // we'll have to drop those encrypted attributes.\n const cleanData = deleteDeepByKey(nodeData, '-encrypted');\n const urlString = util.format(\n nodeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType,\n nodeId\n );\n const { data } = await generateAmApi(getNodeApiConfig()).put(\n urlString,\n cleanData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Delete node by uuid and type\n * @param {String} nodeId node uuid\n * @param {String} nodeType node type\n * @returns {Promise} a promise that resolves to an object containing a node object\n */\nexport async function deleteNode(nodeId: string, nodeType: string) {\n const urlString = util.format(\n nodeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType,\n nodeId\n );\n const { data } = await generateAmApi(getNodeApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeApi.test.js","names":["__dirname","path","dirname","fileURLToPath","mock","MockAdapter","axios","state","default","session","setTenant","setRealm","setCookieName","setCookieValue","describe","test","response","JSON","parse","fs","readFileSync","resolve","onPost","reply","types","NodeRaw","getNodeTypes","expect","toBeTruthy","length","toBe","onGet","nodes","getNodesByType","node","getNode","toMatchObject","code","reason","message","assertions","error","data","nodeData","onPut","putNode","onDelete","deleteNode","_id","toEqual"],"sources":["api/NodeApi.test.ts"],"sourcesContent":["import axios from 'axios';\nimport MockAdapter from 'axios-mock-adapter';\nimport { NodeRaw, state } from '../index';\nimport fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst mock = new MockAdapter(axios);\n\nstate.default.session.setTenant('');\nstate.default.session.setRealm('alpha');\nstate.default.session.setCookieName('cookieName');\nstate.default.session.setCookieValue('cookieValue');\n\ndescribe('NodeApi - getNodeTypes()', () => {\n test('getNodeTypes() 1: Get all node types', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/getNodeTypes/types.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes?_action=getAllTypes'\n )\n .reply(200, response);\n const types = await NodeRaw.getNodeTypes();\n expect(types).toBeTruthy();\n expect(types.length).toBe(99);\n });\n});\n\ndescribe('NodeApi - getNodesByType()', () => {\n test('getNodesByType() 1: Get all page nodes', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/getNodesByType/PageNode.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode?_queryFilter=true'\n )\n .reply(200, response);\n const nodes = await NodeRaw.getNodesByType('PageNode');\n expect(nodes).toBeTruthy();\n expect(nodes.length).toBe(161);\n });\n});\n\ndescribe('NodeApi - getNode()', () => {\n test('getNode() 1: Get existing page node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/getNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, response);\n const node = await NodeRaw.getNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode'\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(response);\n });\n\n test('getNode() 2: Get non-existing page node [00000000-0000-0000-0000-000000000000]', async () => {\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/00000000-0000-0000-0000-000000000000'\n )\n .reply(404, {\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n expect.assertions(2);\n try {\n await NodeRaw.getNode('00000000-0000-0000-0000-000000000000', 'PageNode');\n } catch (error) {\n expect(error.response).toBeTruthy();\n expect(error.response.data).toMatchObject({\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n }\n });\n});\n\ndescribe('NodeApi - putNode()', () => {\n test('putNode() 1: Create page node [0ad90971-d08a-4af3-86f3-01729572dc8f]', async () => {\n const nodeData = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/putNode/PageNode_0ad90971-d08a-4af3-86f3-01729572dc8f.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/0ad90971-d08a-4af3-86f3-01729572dc8f'\n )\n .reply(201, nodeData);\n const node = await NodeRaw.putNode(\n '0ad90971-d08a-4af3-86f3-01729572dc8f',\n 'PageNode',\n nodeData\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(nodeData);\n });\n\n test('putNode() 1: Update existing page node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const nodeData = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/putNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, nodeData);\n const node = await NodeRaw.putNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode',\n nodeData\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(nodeData);\n });\n});\n\ndescribe('NodeApi - deleteNode()', () => {\n test('deleteNode() 1: Delete existing node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/deleteNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, response);\n const node = await NodeRaw.deleteNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode'\n );\n expect(node).toBeTruthy();\n expect(node._id).toEqual('1aea363f-d8d2-4711-b88d-d58fff92dbae');\n });\n\n test('deleteNode() 2: Delete non-existing node [00000000-0000-0000-0000-000000000000]', async () => {\n mock\n .onDelete(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/00000000-0000-0000-0000-000000000000'\n )\n .reply(404, {\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n expect.assertions(2);\n try {\n await NodeRaw.deleteNode(\n '00000000-0000-0000-0000-000000000000',\n 'PageNode'\n );\n } catch (error) {\n expect(error.response).toBeTruthy();\n expect(error.response.data).toMatchObject({\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n }\n });\n});\n"],"mappings":"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"}
@@ -87,7 +87,9 @@ function putOAuth2Client(_x2, _x3) {
87
87
 
88
88
  function _putOAuth2Client() {
89
89
  _putOAuth2Client = _asyncToGenerator(function* (id, data) {
90
- var client = data;
90
+ // until we figure out a way to use transport keys in Frodo,
91
+ // we'll have to drop those encrypted attributes.
92
+ var client = (0, _ApiUtils.deleteDeepByKey)(data, '-encrypted');
91
93
  delete client._provider;
92
94
  delete client._rev;
93
95
 
@@ -1 +1 @@
1
- {"version":3,"file":"OAuth2ClientApi.js","names":["oauth2ClientURLTemplate","oauth2ClientListURLTemplate","apiVersion","getApiConfig","configPath","getCurrentRealmPath","path","getOAuth2Clients","urlString","util","format","storage","session","getTenant","generateAmApi","get","withCredentials","getOAuth2Client","id","putOAuth2Client","data","client","_provider","_rev","put"],"sources":["api/OAuth2ClientApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport { getCurrentRealmPath } from './utils/ApiUtils';\nimport storage from '../storage/SessionStorage';\n\nconst oauth2ClientURLTemplate = '%s/json%s/realm-config/agents/OAuth2Client/%s';\nconst oauth2ClientListURLTemplate =\n '%s/json%s/realm-config/agents/OAuth2Client?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n const configPath = getCurrentRealmPath();\n return {\n path: `${configPath}/realm-config/agents/OAuth2Client`,\n apiVersion,\n };\n};\n\n/**\n * Get OAuth2 Clients\n * @returns {Promise} a promise that resolves to an object containing an array of oauth2client objects\n */\nexport async function getOAuth2Clients() {\n const urlString = util.format(\n oauth2ClientListURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n return generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n}\n\n/**\n * Get OAuth2 Client\n * @param {String} id client id\n * @returns {Promise} a promise that resolves to an object containing an oauth2client object\n */\nexport async function getOAuth2Client(id) {\n const urlString = util.format(\n oauth2ClientURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n id\n );\n return generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n}\n\n/**\n * Put OAuth2 Client\n * @param {String} id client id\n * @param {Object} data oauth2client object\n * @returns {Promise} a promise that resolves to an object containing an oauth2client object\n */\nexport async function putOAuth2Client(id, data) {\n const client = data;\n delete client._provider;\n delete client._rev;\n const urlString = util.format(\n oauth2ClientURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n id\n );\n return generateAmApi(getApiConfig()).put(urlString, client, {\n withCredentials: true,\n });\n}\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,uBAAuB,GAAG,+CAAhC;AACA,IAAMC,2BAA2B,GAC/B,8DADF;AAEA,IAAMC,UAAU,GAAG,2BAAnB;;AACA,IAAMC,YAAY,GAAG,MAAM;EACzB,IAAMC,UAAU,GAAG,IAAAC,6BAAA,GAAnB;EACA,OAAO;IACLC,IAAI,YAAKF,UAAL,sCADC;IAELF;EAFK,CAAP;AAID,CAND;AAQA;AACA;AACA;AACA;;;SACsBK,gB;;;AAWtB;AACA;AACA;AACA;AACA;;;;wCAfO,aAAkC;IACvC,IAAMC,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBT,2BADgB,EAEhBU,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAR,6BAAA,GAHgB,CAAlB;;IAKA,OAAO,IAAAS,sBAAA,EAAcX,YAAY,EAA1B,EAA8BY,GAA9B,CAAkCP,SAAlC,EAA6C;MAClDQ,eAAe,EAAE;IADiC,CAA7C,CAAP;EAGD,C;;;;SAOqBC,e;;;AAYtB;AACA;AACA;AACA;AACA;AACA;;;;uCAjBO,WAA+BC,EAA/B,EAAmC;IACxC,IAAMV,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBV,uBADgB,EAEhBW,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAR,6BAAA,GAHgB,EAIhBa,EAJgB,CAAlB;;IAMA,OAAO,IAAAJ,sBAAA,EAAcX,YAAY,EAA1B,EAA8BY,GAA9B,CAAkCP,SAAlC,EAA6C;MAClDQ,eAAe,EAAE;IADiC,CAA7C,CAAP;EAGD,C;;;;SAQqBG,e;;;;;uCAAf,WAA+BD,EAA/B,EAAmCE,IAAnC,EAAyC;IAC9C,IAAMC,MAAM,GAAGD,IAAf;IACA,OAAOC,MAAM,CAACC,SAAd;IACA,OAAOD,MAAM,CAACE,IAAd;;IACA,IAAMf,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBV,uBADgB,EAEhBW,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAR,6BAAA,GAHgB,EAIhBa,EAJgB,CAAlB;;IAMA,OAAO,IAAAJ,sBAAA,EAAcX,YAAY,EAA1B,EAA8BqB,GAA9B,CAAkChB,SAAlC,EAA6Ca,MAA7C,EAAqD;MAC1DL,eAAe,EAAE;IADyC,CAArD,CAAP;EAGD,C"}
1
+ {"version":3,"file":"OAuth2ClientApi.js","names":["oauth2ClientURLTemplate","oauth2ClientListURLTemplate","apiVersion","getApiConfig","configPath","getCurrentRealmPath","path","getOAuth2Clients","urlString","util","format","storage","session","getTenant","generateAmApi","get","withCredentials","getOAuth2Client","id","putOAuth2Client","data","client","deleteDeepByKey","_provider","_rev","put"],"sources":["api/OAuth2ClientApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport { deleteDeepByKey, getCurrentRealmPath } from './utils/ApiUtils';\nimport storage from '../storage/SessionStorage';\n\nconst oauth2ClientURLTemplate = '%s/json%s/realm-config/agents/OAuth2Client/%s';\nconst oauth2ClientListURLTemplate =\n '%s/json%s/realm-config/agents/OAuth2Client?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n const configPath = getCurrentRealmPath();\n return {\n path: `${configPath}/realm-config/agents/OAuth2Client`,\n apiVersion,\n };\n};\n\n/**\n * Get OAuth2 Clients\n * @returns {Promise} a promise that resolves to an object containing an array of oauth2client objects\n */\nexport async function getOAuth2Clients() {\n const urlString = util.format(\n oauth2ClientListURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n return generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n}\n\n/**\n * Get OAuth2 Client\n * @param {String} id client id\n * @returns {Promise} a promise that resolves to an object containing an oauth2client object\n */\nexport async function getOAuth2Client(id) {\n const urlString = util.format(\n oauth2ClientURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n id\n );\n return generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n}\n\n/**\n * Put OAuth2 Client\n * @param {String} id client id\n * @param {Object} data oauth2client object\n * @returns {Promise} a promise that resolves to an object containing an oauth2client object\n */\nexport async function putOAuth2Client(id, data) {\n // until we figure out a way to use transport keys in Frodo,\n // we'll have to drop those encrypted attributes.\n const client = deleteDeepByKey(data, '-encrypted');\n delete client._provider;\n delete client._rev;\n const urlString = util.format(\n oauth2ClientURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n id\n );\n return generateAmApi(getApiConfig()).put(urlString, client, {\n withCredentials: true,\n });\n}\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,uBAAuB,GAAG,+CAAhC;AACA,IAAMC,2BAA2B,GAC/B,8DADF;AAEA,IAAMC,UAAU,GAAG,2BAAnB;;AACA,IAAMC,YAAY,GAAG,MAAM;EACzB,IAAMC,UAAU,GAAG,IAAAC,6BAAA,GAAnB;EACA,OAAO;IACLC,IAAI,YAAKF,UAAL,sCADC;IAELF;EAFK,CAAP;AAID,CAND;AAQA;AACA;AACA;AACA;;;SACsBK,gB;;;AAWtB;AACA;AACA;AACA;AACA;;;;wCAfO,aAAkC;IACvC,IAAMC,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBT,2BADgB,EAEhBU,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAR,6BAAA,GAHgB,CAAlB;;IAKA,OAAO,IAAAS,sBAAA,EAAcX,YAAY,EAA1B,EAA8BY,GAA9B,CAAkCP,SAAlC,EAA6C;MAClDQ,eAAe,EAAE;IADiC,CAA7C,CAAP;EAGD,C;;;;SAOqBC,e;;;AAYtB;AACA;AACA;AACA;AACA;AACA;;;;uCAjBO,WAA+BC,EAA/B,EAAmC;IACxC,IAAMV,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBV,uBADgB,EAEhBW,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAR,6BAAA,GAHgB,EAIhBa,EAJgB,CAAlB;;IAMA,OAAO,IAAAJ,sBAAA,EAAcX,YAAY,EAA1B,EAA8BY,GAA9B,CAAkCP,SAAlC,EAA6C;MAClDQ,eAAe,EAAE;IADiC,CAA7C,CAAP;EAGD,C;;;;SAQqBG,e;;;;;uCAAf,WAA+BD,EAA/B,EAAmCE,IAAnC,EAAyC;IAC9C;IACA;IACA,IAAMC,MAAM,GAAG,IAAAC,yBAAA,EAAgBF,IAAhB,EAAsB,YAAtB,CAAf;IACA,OAAOC,MAAM,CAACE,SAAd;IACA,OAAOF,MAAM,CAACG,IAAd;;IACA,IAAMhB,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBV,uBADgB,EAEhBW,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAR,6BAAA,GAHgB,EAIhBa,EAJgB,CAAlB;;IAMA,OAAO,IAAAJ,sBAAA,EAAcX,YAAY,EAA1B,EAA8BsB,GAA9B,CAAkCjB,SAAlC,EAA6Ca,MAA7C,EAAqD;MAC1DL,eAAe,EAAE;IADyC,CAArD,CAAP;EAGD,C"}