@rockcarver/frodo-lib 0.12.0 → 0.12.1-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/CHANGELOG.md +13 -1
  2. package/cjs/api/AuthenticateApi.js +44 -14
  3. package/cjs/api/AuthenticateApi.js.map +1 -1
  4. package/cjs/api/BaseApi.js +141 -88
  5. package/cjs/api/BaseApi.js.map +1 -1
  6. package/cjs/api/CirclesOfTrustApi.js +87 -31
  7. package/cjs/api/CirclesOfTrustApi.js.map +1 -1
  8. package/cjs/api/EmailTemplateApi.js +48 -9
  9. package/cjs/api/EmailTemplateApi.js.map +1 -1
  10. package/cjs/api/IdmConfigApi.js +91 -25
  11. package/cjs/api/IdmConfigApi.js.map +1 -1
  12. package/cjs/api/LogApi.js +84 -29
  13. package/cjs/api/LogApi.js.map +1 -1
  14. package/cjs/api/ManagedObjectApi.js +66 -19
  15. package/cjs/api/ManagedObjectApi.js.map +1 -1
  16. package/cjs/api/OAuth2ClientApi.js +73 -27
  17. package/cjs/api/OAuth2ClientApi.js.map +1 -1
  18. package/cjs/api/OAuth2OIDCApi.js +82 -31
  19. package/cjs/api/OAuth2OIDCApi.js.map +1 -1
  20. package/cjs/api/OAuth2ProviderApi.js +39 -14
  21. package/cjs/api/OAuth2ProviderApi.js.map +1 -1
  22. package/cjs/api/RealmApi.js +100 -36
  23. package/cjs/api/RealmApi.js.map +1 -1
  24. package/cjs/api/Saml2Api.js +162 -74
  25. package/cjs/api/Saml2Api.js.map +1 -1
  26. package/cjs/api/ScriptApi.js +84 -29
  27. package/cjs/api/ScriptApi.js.map +1 -1
  28. package/cjs/api/SecretsApi.js +188 -69
  29. package/cjs/api/SecretsApi.js.map +1 -1
  30. package/cjs/api/ServerInfoApi.js +48 -14
  31. package/cjs/api/ServerInfoApi.js.map +1 -1
  32. package/cjs/api/SocialIdentityProvidersApi.js +103 -37
  33. package/cjs/api/SocialIdentityProvidersApi.js.map +1 -1
  34. package/cjs/api/StartupApi.js +59 -24
  35. package/cjs/api/StartupApi.js.map +1 -1
  36. package/cjs/api/ThemeApi.js +188 -96
  37. package/cjs/api/ThemeApi.js.map +1 -1
  38. package/cjs/api/TreeApi.js +181 -65
  39. package/cjs/api/TreeApi.js.map +1 -1
  40. package/cjs/api/VariablesApi.js +106 -39
  41. package/cjs/api/VariablesApi.js.map +1 -1
  42. package/cjs/api/utils/ApiUtils.js +41 -21
  43. package/cjs/api/utils/ApiUtils.js.map +1 -1
  44. package/cjs/api/utils/ApiUtils.test.js.map +1 -1
  45. package/cjs/api/utils/Base64.js +35 -10
  46. package/cjs/api/utils/Base64.js.map +1 -1
  47. package/cjs/index.js +110 -35
  48. package/cjs/index.js.map +1 -1
  49. package/cjs/index.test.js.map +1 -1
  50. package/cjs/ops/AdminOps.js +649 -480
  51. package/cjs/ops/AdminOps.js.map +1 -1
  52. package/cjs/ops/AuthenticateOps.js +302 -211
  53. package/cjs/ops/AuthenticateOps.js.map +1 -1
  54. package/cjs/ops/AuthenticateOps.test.js.map +1 -1
  55. package/cjs/ops/CirclesOfTrustOps.js +356 -219
  56. package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
  57. package/cjs/ops/ConnectionProfileOps.js +200 -122
  58. package/cjs/ops/ConnectionProfileOps.js.map +1 -1
  59. package/cjs/ops/ConnectionProfileOps.test.js.map +1 -1
  60. package/cjs/ops/EmailTemplateOps.js +301 -192
  61. package/cjs/ops/EmailTemplateOps.js.map +1 -1
  62. package/cjs/ops/IdmOps.js +190 -121
  63. package/cjs/ops/IdmOps.js.map +1 -1
  64. package/cjs/ops/IdpOps.js +327 -196
  65. package/cjs/ops/IdpOps.js.map +1 -1
  66. package/cjs/ops/JourneyOps.js +1383 -1111
  67. package/cjs/ops/JourneyOps.js.map +1 -1
  68. package/cjs/ops/LogOps.js +125 -75
  69. package/cjs/ops/LogOps.js.map +1 -1
  70. package/cjs/ops/ManagedObjectOps.js +43 -16
  71. package/cjs/ops/ManagedObjectOps.js.map +1 -1
  72. package/cjs/ops/OAuth2ClientOps.js +155 -87
  73. package/cjs/ops/OAuth2ClientOps.js.map +1 -1
  74. package/cjs/ops/OrganizationOps.js +89 -56
  75. package/cjs/ops/OrganizationOps.js.map +1 -1
  76. package/cjs/ops/RealmOps.js +131 -83
  77. package/cjs/ops/RealmOps.js.map +1 -1
  78. package/cjs/ops/SamlOps.js +497 -331
  79. package/cjs/ops/SamlOps.js.map +1 -1
  80. package/cjs/ops/ScriptOps.js +215 -133
  81. package/cjs/ops/ScriptOps.js.map +1 -1
  82. package/cjs/ops/SecretsOps.js +269 -156
  83. package/cjs/ops/SecretsOps.js.map +1 -1
  84. package/cjs/ops/StartupOps.js +101 -66
  85. package/cjs/ops/StartupOps.js.map +1 -1
  86. package/cjs/ops/ThemeOps.js +373 -221
  87. package/cjs/ops/ThemeOps.js.map +1 -1
  88. package/cjs/ops/VariablesOps.js +168 -90
  89. package/cjs/ops/VariablesOps.js.map +1 -1
  90. package/cjs/ops/utils/Console.js +65 -31
  91. package/cjs/ops/utils/Console.js.map +1 -1
  92. package/cjs/ops/utils/DataProtection.js +100 -64
  93. package/cjs/ops/utils/DataProtection.js.map +1 -1
  94. package/cjs/ops/utils/DataProtection.test.js.map +1 -1
  95. package/cjs/ops/utils/ExportImportUtils.js +86 -47
  96. package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
  97. package/cjs/ops/utils/ExportImportUtils.test.js.map +1 -1
  98. package/cjs/ops/utils/OpsUtils.js +47 -20
  99. package/cjs/ops/utils/OpsUtils.js.map +1 -1
  100. package/cjs/ops/utils/Wordwrap.js +10 -2
  101. package/cjs/ops/utils/Wordwrap.js.map +1 -1
  102. package/cjs/storage/SessionStorage.js +20 -8
  103. package/cjs/storage/SessionStorage.js.map +1 -1
  104. package/cjs/storage/StaticStorage.js +26 -10
  105. package/cjs/storage/StaticStorage.js.map +1 -1
  106. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -7,8 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.12.1-0] - 2022-08-27
11
+
12
+ ### Fixed
13
+
14
+ - \#22: Fixed a pipeline issue that broke `frodo-cli` binary builds.
15
+
10
16
  ## [0.12.0] - 2022-08-27
11
17
 
18
+ ### Changed
19
+
20
+ - \#4: New status and progress framework (reworked Console.js to be client-independent)
21
+
12
22
  ## [0.11.1-8] - 2022-08-27
13
23
 
14
24
  ### Changed
@@ -439,7 +449,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
439
449
  - Fixed problem with adding connection profiles
440
450
  - Miscellaneous bug fixes
441
451
 
442
- [Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.0...HEAD
452
+ [Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.1-0...HEAD
453
+
454
+ [0.12.1-0]: https://github.com/rockcarver/frodo-lib/compare/v0.12.0...v0.12.1-0
443
455
 
444
456
  [0.12.0]: https://github.com/rockcarver/frodo-lib/compare/v0.11.1-8...v0.12.0
445
457
 
@@ -1,31 +1,61 @@
1
- import util from 'util';
2
- import { generateAmApi } from './BaseApi';
3
- import storage from '../storage/SessionStorage';
4
- const authenticateUrlTemplate = '%s/json%s/authenticate';
5
- const apiVersion = 'resource=2.0, protocol=1.0';
1
+ "use strict";
6
2
 
7
- const getApiConfig = () => ({
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getRealmUrl = getRealmUrl;
7
+ exports.step = step;
8
+
9
+ var _util = _interopRequireDefault(require("util"));
10
+
11
+ var _BaseApi = require("./BaseApi");
12
+
13
+ var _SessionStorage = _interopRequireDefault(require("../storage/SessionStorage"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+
17
+ 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); } }
18
+
19
+ 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); }); }; }
20
+
21
+ var authenticateUrlTemplate = '%s/json%s/authenticate';
22
+ var apiVersion = 'resource=2.0, protocol=1.0';
23
+
24
+ var getApiConfig = () => ({
8
25
  apiVersion
9
26
  });
10
27
 
11
- const realmPathTemplate = '/realms/%s';
12
- export function getRealmUrl(realm) {
13
- let localRealm = realm;
28
+ var realmPathTemplate = '/realms/%s';
29
+
30
+ function getRealmUrl(realm) {
31
+ var localRealm = realm;
14
32
 
15
33
  if (localRealm.startsWith('/') && localRealm.length > 1) {
16
34
  localRealm = localRealm.substring(1);
17
35
  }
18
36
 
19
- let realmPath = util.format(realmPathTemplate, 'root');
37
+ var realmPath = _util.default.format(realmPathTemplate, 'root');
20
38
 
21
39
  if (localRealm !== '/') {
22
- realmPath += util.format(realmPathTemplate, localRealm);
40
+ realmPath += _util.default.format(realmPathTemplate, localRealm);
23
41
  }
24
42
 
25
43
  return realmPath;
26
44
  }
27
- export async function step(data = {}, config = {}) {
28
- const urlString = util.format(authenticateUrlTemplate, storage.session.getTenant(), getRealmUrl('/'));
29
- return generateAmApi(getApiConfig()).post(urlString, data, config);
45
+
46
+ function step() {
47
+ return _step.apply(this, arguments);
48
+ }
49
+
50
+ function _step() {
51
+ _step = _asyncToGenerator(function* () {
52
+ var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
53
+ var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
54
+
55
+ var urlString = _util.default.format(authenticateUrlTemplate, _SessionStorage.default.session.getTenant(), getRealmUrl('/'));
56
+
57
+ return (0, _BaseApi.generateAmApi)(getApiConfig()).post(urlString, data, config);
58
+ });
59
+ return _step.apply(this, arguments);
30
60
  }
31
61
  //# sourceMappingURL=AuthenticateApi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AuthenticateApi.js","names":["util","generateAmApi","storage","authenticateUrlTemplate","apiVersion","getApiConfig","realmPathTemplate","getRealmUrl","realm","localRealm","startsWith","length","substring","realmPath","format","step","data","config","urlString","session","getTenant","post"],"sources":["api/AuthenticateApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport storage from '../storage/SessionStorage';\n\nconst authenticateUrlTemplate = '%s/json%s/authenticate';\n\nconst apiVersion = 'resource=2.0, protocol=1.0';\nconst getApiConfig = () => ({\n apiVersion,\n});\n\nconst realmPathTemplate = '/realms/%s';\n\nexport function getRealmUrl(realm) {\n let localRealm = realm;\n if (localRealm.startsWith('/') && localRealm.length > 1) {\n localRealm = localRealm.substring(1);\n }\n let realmPath = util.format(realmPathTemplate, 'root');\n if (localRealm !== '/') {\n realmPath += util.format(realmPathTemplate, localRealm);\n }\n return realmPath;\n}\n\nexport async function step(data = {}, config = {}) {\n const urlString = util.format(\n authenticateUrlTemplate,\n storage.session.getTenant(),\n getRealmUrl('/')\n );\n return generateAmApi(getApiConfig()).post(urlString, data, config);\n}\n"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,MAAjB;AACA,SAASC,aAAT,QAA8B,WAA9B;AACA,OAAOC,OAAP,MAAoB,2BAApB;AAEA,MAAMC,uBAAuB,GAAG,wBAAhC;AAEA,MAAMC,UAAU,GAAG,4BAAnB;;AACA,MAAMC,YAAY,GAAG,OAAO;EAC1BD;AAD0B,CAAP,CAArB;;AAIA,MAAME,iBAAiB,GAAG,YAA1B;AAEA,OAAO,SAASC,WAAT,CAAqBC,KAArB,EAA4B;EACjC,IAAIC,UAAU,GAAGD,KAAjB;;EACA,IAAIC,UAAU,CAACC,UAAX,CAAsB,GAAtB,KAA8BD,UAAU,CAACE,MAAX,GAAoB,CAAtD,EAAyD;IACvDF,UAAU,GAAGA,UAAU,CAACG,SAAX,CAAqB,CAArB,CAAb;EACD;;EACD,IAAIC,SAAS,GAAGb,IAAI,CAACc,MAAL,CAAYR,iBAAZ,EAA+B,MAA/B,CAAhB;;EACA,IAAIG,UAAU,KAAK,GAAnB,EAAwB;IACtBI,SAAS,IAAIb,IAAI,CAACc,MAAL,CAAYR,iBAAZ,EAA+BG,UAA/B,CAAb;EACD;;EACD,OAAOI,SAAP;AACD;AAED,OAAO,eAAeE,IAAf,CAAoBC,IAAI,GAAG,EAA3B,EAA+BC,MAAM,GAAG,EAAxC,EAA4C;EACjD,MAAMC,SAAS,GAAGlB,IAAI,CAACc,MAAL,CAChBX,uBADgB,EAEhBD,OAAO,CAACiB,OAAR,CAAgBC,SAAhB,EAFgB,EAGhBb,WAAW,CAAC,GAAD,CAHK,CAAlB;EAKA,OAAON,aAAa,CAACI,YAAY,EAAb,CAAb,CAA8BgB,IAA9B,CAAmCH,SAAnC,EAA8CF,IAA9C,EAAoDC,MAApD,CAAP;AACD"}
1
+ {"version":3,"file":"AuthenticateApi.js","names":["authenticateUrlTemplate","apiVersion","getApiConfig","realmPathTemplate","getRealmUrl","realm","localRealm","startsWith","length","substring","realmPath","util","format","step","data","config","urlString","storage","session","getTenant","generateAmApi","post"],"sources":["api/AuthenticateApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport storage from '../storage/SessionStorage';\n\nconst authenticateUrlTemplate = '%s/json%s/authenticate';\n\nconst apiVersion = 'resource=2.0, protocol=1.0';\nconst getApiConfig = () => ({\n apiVersion,\n});\n\nconst realmPathTemplate = '/realms/%s';\n\nexport function getRealmUrl(realm) {\n let localRealm = realm;\n if (localRealm.startsWith('/') && localRealm.length > 1) {\n localRealm = localRealm.substring(1);\n }\n let realmPath = util.format(realmPathTemplate, 'root');\n if (localRealm !== '/') {\n realmPath += util.format(realmPathTemplate, localRealm);\n }\n return realmPath;\n}\n\nexport async function step(data = {}, config = {}) {\n const urlString = util.format(\n authenticateUrlTemplate,\n storage.session.getTenant(),\n getRealmUrl('/')\n );\n return generateAmApi(getApiConfig()).post(urlString, data, config);\n}\n"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,uBAAuB,GAAG,wBAAhC;AAEA,IAAMC,UAAU,GAAG,4BAAnB;;AACA,IAAMC,YAAY,GAAG,OAAO;EAC1BD;AAD0B,CAAP,CAArB;;AAIA,IAAME,iBAAiB,GAAG,YAA1B;;AAEO,SAASC,WAAT,CAAqBC,KAArB,EAA4B;EACjC,IAAIC,UAAU,GAAGD,KAAjB;;EACA,IAAIC,UAAU,CAACC,UAAX,CAAsB,GAAtB,KAA8BD,UAAU,CAACE,MAAX,GAAoB,CAAtD,EAAyD;IACvDF,UAAU,GAAGA,UAAU,CAACG,SAAX,CAAqB,CAArB,CAAb;EACD;;EACD,IAAIC,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAAYT,iBAAZ,EAA+B,MAA/B,CAAhB;;EACA,IAAIG,UAAU,KAAK,GAAnB,EAAwB;IACtBI,SAAS,IAAIC,aAAA,CAAKC,MAAL,CAAYT,iBAAZ,EAA+BG,UAA/B,CAAb;EACD;;EACD,OAAOI,SAAP;AACD;;SAEqBG,I;;;;;4BAAf,aAA4C;IAAA,IAAxBC,IAAwB,uEAAjB,EAAiB;IAAA,IAAbC,MAAa,uEAAJ,EAAI;;IACjD,IAAMC,SAAS,GAAGL,aAAA,CAAKC,MAAL,CAChBZ,uBADgB,EAEhBiB,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhBf,WAAW,CAAC,GAAD,CAHK,CAAlB;;IAKA,OAAO,IAAAgB,sBAAA,EAAclB,YAAY,EAA1B,EAA8BmB,IAA9B,CAAmCL,SAAnC,EAA8CF,IAA9C,EAAoDC,MAApD,CAAP;EACD,C"}
@@ -1,26 +1,57 @@
1
- import axios from 'axios';
2
- import axiosRetry from 'axios-retry';
3
- import * as https from 'https';
4
- import HttpsProxyAgent from 'https-proxy-agent';
5
- import url from 'url';
6
- import fs from 'fs';
7
- import storage from '../storage/SessionStorage';
8
- import { getTenantURL } from './utils/ApiUtils';
9
- import path from 'path';
10
- import { fileURLToPath } from 'url';
11
-
12
- const __dirname = path.dirname(fileURLToPath(require('url').pathToFileURL(__filename).toString()));
13
-
14
- const pkg = JSON.parse(fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8'));
15
- axiosRetry(axios, {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.generateAmApi = generateAmApi;
7
+ exports.generateESVApi = generateESVApi;
8
+ exports.generateIdmApi = generateIdmApi;
9
+ exports.generateLogApi = generateLogApi;
10
+ exports.generateLogKeysApi = generateLogKeysApi;
11
+ exports.generateOauth2Api = generateOauth2Api;
12
+
13
+ var _axios = _interopRequireDefault(require("axios"));
14
+
15
+ var _axiosRetry = _interopRequireDefault(require("axios-retry"));
16
+
17
+ var https = _interopRequireWildcard(require("https"));
18
+
19
+ var _httpsProxyAgent = _interopRequireDefault(require("https-proxy-agent"));
20
+
21
+ var _url = _interopRequireWildcard(require("url"));
22
+
23
+ var _fs = _interopRequireDefault(require("fs"));
24
+
25
+ var _SessionStorage = _interopRequireDefault(require("../storage/SessionStorage"));
26
+
27
+ var _ApiUtils = require("./utils/ApiUtils");
28
+
29
+ var _path = _interopRequireDefault(require("path"));
30
+
31
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
32
+
33
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
34
+
35
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
36
+
37
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
38
+
39
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
40
+
41
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
42
+
43
+ var _dirname = _path.default.dirname((0, _url.fileURLToPath)(require('url').pathToFileURL(__filename).toString()));
44
+
45
+ var pkg = JSON.parse(_fs.default.readFileSync(_path.default.resolve(_dirname, '../../package.json'), 'utf8'));
46
+ (0, _axiosRetry.default)(_axios.default, {
16
47
  retries: 3,
17
48
  shouldResetTimeout: true,
18
49
  retryCondition: _error => true // retry no matter what
19
50
 
20
51
  });
21
- const timeout = 30000;
22
- const userAgent = `${pkg.name}/${pkg.version}`;
23
- let httpsAgent;
52
+ var timeout = 30000;
53
+ var userAgent = "".concat(pkg.name, "/").concat(pkg.version);
54
+ var httpsAgent;
24
55
  /**
25
56
  * Helper method to create properly configured httpsAgent
26
57
  * @returns {any} appropriate httpsAgent
@@ -28,20 +59,22 @@ let httpsAgent;
28
59
 
29
60
  function getHttpsAgent() {
30
61
  if (httpsAgent) return httpsAgent;
31
- const options = {
32
- rejectUnauthorized: !storage.session.getAllowInsecureConnection()
62
+ var options = {
63
+ rejectUnauthorized: !_SessionStorage.default.session.getAllowInsecureConnection()
33
64
  };
34
- const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
65
+ var httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
35
66
 
36
67
  if (httpsProxy) {
37
68
  // https://github.com/axios/axios/issues/3459
38
- console.error(`Using proxy ${httpsProxy}`['yellow']);
39
- const parsed = url.parse(httpsProxy);
69
+ console.error("Using proxy ".concat(httpsProxy)['yellow']);
70
+
71
+ var parsed = _url.default.parse(httpsProxy);
72
+
40
73
  options['host'] = parsed.hostname;
41
74
  options['port'] = parsed.port;
42
75
  options['protocol'] = parsed.protocol;
43
- options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();
44
- httpsAgent = HttpsProxyAgent(options);
76
+ options.rejectUnauthorized = !_SessionStorage.default.session.getAllowInsecureConnection();
77
+ httpsAgent = (0, _httpsProxyAgent.default)(options);
45
78
  return httpsAgent;
46
79
  }
47
80
 
@@ -68,29 +101,30 @@ function getProxy() {
68
101
  */
69
102
 
70
103
 
71
- export function generateAmApi(resource, requestOverride = {}) {
72
- let headers = {
104
+ function generateAmApi(resource) {
105
+ var requestOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
106
+ var headers = {
73
107
  'User-Agent': userAgent,
74
108
  'Content-Type': 'application/json',
75
109
  'Accept-API-Version': resource.apiVersion,
76
- Cookie: `${storage.session.raw['cookieName']}=${storage.session.raw['cookieValue']}`
110
+ Cookie: "".concat(_SessionStorage.default.session.raw['cookieName'], "=").concat(_SessionStorage.default.session.raw['cookieValue'])
77
111
  };
78
112
 
79
113
  if (requestOverride['headers']) {
80
- headers = { ...headers,
81
- ...requestOverride['headers']
82
- };
114
+ headers = _objectSpread(_objectSpread({}, headers), requestOverride['headers']);
83
115
  }
84
116
 
85
- const requestDetails = {
86
- baseURL: `${storage.session.getTenant()}/json${resource.path}`,
87
- timeout,
88
- ...requestOverride,
117
+ var requestDetails = _objectSpread(_objectSpread({
118
+ baseURL: "".concat(_SessionStorage.default.session.getTenant(), "/json").concat(resource.path),
119
+ timeout
120
+ }, requestOverride), {}, {
89
121
  headers,
90
122
  httpsAgent: getHttpsAgent(),
91
123
  proxy: getProxy()
92
- };
93
- const request = axios.create(requestDetails);
124
+ });
125
+
126
+ var request = _axios.default.create(requestDetails);
127
+
94
128
  return request;
95
129
  }
96
130
  /**
@@ -102,28 +136,30 @@ export function generateAmApi(resource, requestOverride = {}) {
102
136
  * @returns {AxiosInstance}
103
137
  */
104
138
 
105
- export function generateOauth2Api(resource, requestOverride = {}) {
106
- let headers = {
139
+
140
+ function generateOauth2Api(resource) {
141
+ var requestOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
142
+ var headers = {
107
143
  'User-Agent': userAgent,
108
144
  'Accept-API-Version': resource.apiVersion,
109
- Cookie: `${storage.session.raw['cookieName']}=${storage.session.raw['cookieValue']}`
145
+ Cookie: "".concat(_SessionStorage.default.session.raw['cookieName'], "=").concat(_SessionStorage.default.session.raw['cookieValue'])
110
146
  };
111
147
 
112
148
  if (requestOverride['headers']) {
113
- headers = { ...headers,
114
- ...requestOverride['headers']
115
- };
149
+ headers = _objectSpread(_objectSpread({}, headers), requestOverride['headers']);
116
150
  }
117
151
 
118
- const requestDetails = {
119
- baseURL: `${storage.session.getTenant()}/json${resource.path}`,
120
- timeout,
121
- ...requestOverride,
152
+ var requestDetails = _objectSpread(_objectSpread({
153
+ baseURL: "".concat(_SessionStorage.default.session.getTenant(), "/json").concat(resource.path),
154
+ timeout
155
+ }, requestOverride), {}, {
122
156
  headers,
123
157
  httpsAgent: getHttpsAgent(),
124
158
  proxy: getProxy()
125
- };
126
- const request = axios.create(requestDetails);
159
+ });
160
+
161
+ var request = _axios.default.create(requestDetails);
162
+
127
163
  return request;
128
164
  }
129
165
  /**
@@ -134,24 +170,28 @@ export function generateOauth2Api(resource, requestOverride = {}) {
134
170
  * @returns {AxiosInstance}
135
171
  */
136
172
 
137
- export function generateIdmApi(requestOverride = {}) {
138
- const requestDetails = {
139
- baseURL: getTenantURL(storage.session.getTenant()),
173
+
174
+ function generateIdmApi() {
175
+ var requestOverride = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
176
+
177
+ var requestDetails = _objectSpread(_objectSpread({
178
+ baseURL: (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()),
140
179
  timeout,
141
180
  headers: {
142
181
  'User-Agent': userAgent,
143
182
  'Content-Type': 'application/json'
144
- },
145
- ...requestOverride,
183
+ }
184
+ }, requestOverride), {}, {
146
185
  httpsAgent: getHttpsAgent(),
147
186
  proxy: getProxy()
148
- };
187
+ });
149
188
 
150
- if (storage.session.getBearerToken()) {
151
- requestDetails.headers['Authorization'] = `Bearer ${storage.session.getBearerToken()}`;
189
+ if (_SessionStorage.default.session.getBearerToken()) {
190
+ requestDetails.headers['Authorization'] = "Bearer ".concat(_SessionStorage.default.session.getBearerToken());
152
191
  }
153
192
 
154
- const request = axios.create(requestDetails);
193
+ var request = _axios.default.create(requestDetails);
194
+
155
195
  return request;
156
196
  }
157
197
  /**
@@ -162,25 +202,29 @@ export function generateIdmApi(requestOverride = {}) {
162
202
  * @returns {AxiosInstance}
163
203
  */
164
204
 
165
- export function generateLogKeysApi(requestOverride = {}) {
166
- const headers = {
205
+
206
+ function generateLogKeysApi() {
207
+ var requestOverride = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
208
+ var headers = {
167
209
  'User-Agent': userAgent,
168
210
  'Content-Type': 'application/json'
169
211
  };
170
- const requestDetails = {
171
- baseURL: getTenantURL(storage.session.getTenant()),
212
+
213
+ var requestDetails = _objectSpread(_objectSpread({
214
+ baseURL: (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()),
172
215
  timeout,
173
- headers,
174
- ...requestOverride,
216
+ headers
217
+ }, requestOverride), {}, {
175
218
  httpsAgent: getHttpsAgent(),
176
219
  proxy: getProxy()
177
- };
220
+ });
178
221
 
179
- if (storage.session.getBearerToken()) {
180
- requestDetails.headers['Authorization'] = `Bearer ${storage.session.getBearerToken()}`;
222
+ if (_SessionStorage.default.session.getBearerToken()) {
223
+ requestDetails.headers['Authorization'] = "Bearer ".concat(_SessionStorage.default.session.getBearerToken());
181
224
  }
182
225
 
183
- const request = axios.create(requestDetails);
226
+ var request = _axios.default.create(requestDetails);
227
+
184
228
  return request;
185
229
  }
186
230
  /**
@@ -191,21 +235,26 @@ export function generateLogKeysApi(requestOverride = {}) {
191
235
  * @returns {AxiosInstance}
192
236
  */
193
237
 
194
- export function generateLogApi(requestOverride = {}) {
195
- const headers = {
238
+
239
+ function generateLogApi() {
240
+ var requestOverride = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
241
+ var headers = {
196
242
  'User-Agent': userAgent,
197
- 'X-API-Key': storage.session.getLogApiKey(),
198
- 'X-API-Secret': storage.session.getLogApiSecret()
243
+ 'X-API-Key': _SessionStorage.default.session.getLogApiKey(),
244
+ 'X-API-Secret': _SessionStorage.default.session.getLogApiSecret()
199
245
  };
200
- const requestDetails = {
201
- baseURL: getTenantURL(storage.session.getTenant()),
246
+
247
+ var requestDetails = _objectSpread(_objectSpread({
248
+ baseURL: (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()),
202
249
  timeout,
203
- headers,
204
- ...requestOverride,
250
+ headers
251
+ }, requestOverride), {}, {
205
252
  httpsAgent: getHttpsAgent(),
206
253
  proxy: getProxy()
207
- };
208
- const request = axios.create(requestDetails);
254
+ });
255
+
256
+ var request = _axios.default.create(requestDetails);
257
+
209
258
  return request;
210
259
  }
211
260
  /**
@@ -216,26 +265,30 @@ export function generateLogApi(requestOverride = {}) {
216
265
  * @returns {AxiosInstance}
217
266
  */
218
267
 
219
- export function generateESVApi(resource, requestOverride = {}) {
220
- const headers = {
268
+
269
+ function generateESVApi(resource) {
270
+ var requestOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
271
+ var headers = {
221
272
  'User-Agent': userAgent,
222
273
  'Content-Type': 'application/json',
223
274
  'Accept-API-Version': resource.apiVersion
224
275
  };
225
- const requestDetails = {
226
- baseURL: getTenantURL(storage.session.getTenant()),
276
+
277
+ var requestDetails = _objectSpread(_objectSpread({
278
+ baseURL: (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()),
227
279
  timeout,
228
- headers,
229
- ...requestOverride,
280
+ headers
281
+ }, requestOverride), {}, {
230
282
  httpsAgent: getHttpsAgent(),
231
283
  proxy: getProxy()
232
- };
284
+ });
233
285
 
234
- if (storage.session.getBearerToken()) {
235
- requestDetails.headers['Authorization'] = `Bearer ${storage.session.getBearerToken()}`;
286
+ if (_SessionStorage.default.session.getBearerToken()) {
287
+ requestDetails.headers['Authorization'] = "Bearer ".concat(_SessionStorage.default.session.getBearerToken());
236
288
  }
237
289
 
238
- const request = axios.create(requestDetails);
290
+ var request = _axios.default.create(requestDetails);
291
+
239
292
  return request;
240
293
  }
241
294
  //# sourceMappingURL=BaseApi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseApi.js","names":["axios","axiosRetry","https","HttpsProxyAgent","url","fs","storage","getTenantURL","path","fileURLToPath","__dirname","dirname","pkg","JSON","parse","readFileSync","resolve","retries","shouldResetTimeout","retryCondition","_error","timeout","userAgent","name","version","httpsAgent","getHttpsAgent","options","rejectUnauthorized","session","getAllowInsecureConnection","httpsProxy","process","env","HTTPS_PROXY","https_proxy","console","error","parsed","hostname","port","protocol","Agent","getProxy","generateAmApi","resource","requestOverride","headers","apiVersion","Cookie","raw","requestDetails","baseURL","getTenant","proxy","request","create","generateOauth2Api","generateIdmApi","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":"AAAA,OAAOA,KAAP,MAAwC,OAAxC;AACA,OAAOC,UAAP,MAAuB,aAAvB;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,OAAOC,eAAP,MAA4B,mBAA5B;AACA,OAAOC,GAAP,MAAgB,KAAhB;AACA,OAAOC,EAAP,MAAe,IAAf;AACA,OAAOC,OAAP,MAAoB,2BAApB;AACA,SAASC,YAAT,QAA6B,kBAA7B;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,aAAT,QAA8B,KAA9B;;AAEA,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAL,CAAaF,aAAa,qDAA1B,CAAlB;;AAEA,MAAMG,GAAG,GAAGC,IAAI,CAACC,KAAL,CACVT,EAAE,CAACU,YAAH,CAAgBP,IAAI,CAACQ,OAAL,CAAaN,SAAb,EAAwB,oBAAxB,CAAhB,EAA+D,MAA/D,CADU,CAAZ;AAIAT,UAAU,CAACD,KAAD,EAAQ;EAChBiB,OAAO,EAAE,CADO;EAEhBC,kBAAkB,EAAE,IAFJ;EAGhBC,cAAc,EAAGC,MAAD,IAAY,IAHZ,CAGkB;;AAHlB,CAAR,CAAV;AAMA,MAAMC,OAAO,GAAG,KAAhB;AACA,MAAMC,SAAS,GAAI,GAAEV,GAAG,CAACW,IAAK,IAAGX,GAAG,CAACY,OAAQ,EAA7C;AACA,IAAIC,UAAJ;AAEA;AACA;AACA;AACA;;AACA,SAASC,aAAT,GAAyB;EACvB,IAAID,UAAJ,EAAgB,OAAOA,UAAP;EAChB,MAAME,OAAO,GAAG;IACdC,kBAAkB,EAAE,CAACtB,OAAO,CAACuB,OAAR,CAAgBC,0BAAhB;EADP,CAAhB;EAGA,MAAMC,UAAU,GAAGC,OAAO,CAACC,GAAR,CAAYC,WAAZ,IAA2BF,OAAO,CAACC,GAAR,CAAYE,WAA1D;;EACA,IAAIJ,UAAJ,EAAgB;IACd;IACAK,OAAO,CAACC,KAAR,CAAe,eAAcN,UAAW,EAA1B,CAA4B,QAA5B,CAAd;IACA,MAAMO,MAAM,GAAGlC,GAAG,CAACU,KAAJ,CAAUiB,UAAV,CAAf;IACAJ,OAAO,CAAC,MAAD,CAAP,GAAkBW,MAAM,CAACC,QAAzB;IACAZ,OAAO,CAAC,MAAD,CAAP,GAAkBW,MAAM,CAACE,IAAzB;IACAb,OAAO,CAAC,UAAD,CAAP,GAAsBW,MAAM,CAACG,QAA7B;IACAd,OAAO,CAACC,kBAAR,GAA6B,CAACtB,OAAO,CAACuB,OAAR,CAAgBC,0BAAhB,EAA9B;IACAL,UAAU,GAAGtB,eAAe,CAACwB,OAAD,CAA5B;IACA,OAAOF,UAAP;EACD;;EACDA,UAAU,GAAG,IAAIvB,KAAK,CAACwC,KAAV,CAAgBf,OAAhB,CAAb;EACA,OAAOF,UAAP;AACD;AAED;AACA;AACA;AACA;;;AACA,SAASkB,QAAT,GAA8C;EAC5C,IAAIX,OAAO,CAACC,GAAR,CAAYC,WAAZ,IAA2BF,OAAO,CAACC,GAAR,CAAYE,WAA3C,EAAwD,OAAO,KAAP;EACxD,OAAO,IAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,SAASS,aAAT,CAAuBC,QAAvB,EAAiCC,eAAe,GAAG,EAAnD,EAAuD;EAC5D,IAAIC,OAAO,GAAG;IACZ,cAAczB,SADF;IAEZ,gBAAgB,kBAFJ;IAGZ,sBAAsBuB,QAAQ,CAACG,UAHnB;IAIZC,MAAM,EAAG,GAAE3C,OAAO,CAACuB,OAAR,CAAgBqB,GAAhB,CAAoB,YAApB,CAAkC,IAAG5C,OAAO,CAACuB,OAAR,CAAgBqB,GAAhB,CAAoB,aAApB,CAAmC;EAJvE,CAAd;;EAMA,IAAIJ,eAAe,CAAC,SAAD,CAAnB,EAAgC;IAC9BC,OAAO,GAAG,EACR,GAAGA,OADK;MAER,GAAGD,eAAe,CAAC,SAAD;IAFV,CAAV;EAID;;EAED,MAAMK,cAAc,GAAG;IACrBC,OAAO,EAAG,GAAE9C,OAAO,CAACuB,OAAR,CAAgBwB,SAAhB,EAA4B,QAAOR,QAAQ,CAACrC,IAAK,EADxC;IAErBa,OAFqB;IAGrB,GAAGyB,eAHkB;IAIrBC,OAJqB;IAKrBtB,UAAU,EAAEC,aAAa,EALJ;IAMrB4B,KAAK,EAAEX,QAAQ;EANM,CAAvB;EASA,MAAMY,OAAO,GAAGvD,KAAK,CAACwD,MAAN,CAAaL,cAAb,CAAhB;EAEA,OAAOI,OAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASE,iBAAT,CAA2BZ,QAA3B,EAAqCC,eAAe,GAAG,EAAvD,EAA2D;EAChE,IAAIC,OAAO,GAAG;IACZ,cAAczB,SADF;IAEZ,sBAAsBuB,QAAQ,CAACG,UAFnB;IAGZC,MAAM,EAAG,GAAE3C,OAAO,CAACuB,OAAR,CAAgBqB,GAAhB,CAAoB,YAApB,CAAkC,IAAG5C,OAAO,CAACuB,OAAR,CAAgBqB,GAAhB,CAAoB,aAApB,CAAmC;EAHvE,CAAd;;EAKA,IAAIJ,eAAe,CAAC,SAAD,CAAnB,EAAgC;IAC9BC,OAAO,GAAG,EACR,GAAGA,OADK;MAER,GAAGD,eAAe,CAAC,SAAD;IAFV,CAAV;EAID;;EAED,MAAMK,cAAc,GAAG;IACrBC,OAAO,EAAG,GAAE9C,OAAO,CAACuB,OAAR,CAAgBwB,SAAhB,EAA4B,QAAOR,QAAQ,CAACrC,IAAK,EADxC;IAErBa,OAFqB;IAGrB,GAAGyB,eAHkB;IAIrBC,OAJqB;IAKrBtB,UAAU,EAAEC,aAAa,EALJ;IAMrB4B,KAAK,EAAEX,QAAQ;EANM,CAAvB;EASA,MAAMY,OAAO,GAAGvD,KAAK,CAACwD,MAAN,CAAaL,cAAb,CAAhB;EAEA,OAAOI,OAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASG,cAAT,CAAwBZ,eAAe,GAAG,EAA1C,EAA8C;EACnD,MAAMK,cAAc,GAAG;IACrBC,OAAO,EAAE7C,YAAY,CAACD,OAAO,CAACuB,OAAR,CAAgBwB,SAAhB,EAAD,CADA;IAErBhC,OAFqB;IAGrB0B,OAAO,EAAE;MACP,cAAczB,SADP;MAEP,gBAAgB;IAFT,CAHY;IAOrB,GAAGwB,eAPkB;IAQrBrB,UAAU,EAAEC,aAAa,EARJ;IASrB4B,KAAK,EAAEX,QAAQ;EATM,CAAvB;;EAYA,IAAIrC,OAAO,CAACuB,OAAR,CAAgB8B,cAAhB,EAAJ,EAAsC;IACpCR,cAAc,CAACJ,OAAf,CACE,eADF,IAEK,UAASzC,OAAO,CAACuB,OAAR,CAAgB8B,cAAhB,EAAiC,EAF/C;EAGD;;EAED,MAAMJ,OAAO,GAAGvD,KAAK,CAACwD,MAAN,CAAaL,cAAb,CAAhB;EAEA,OAAOI,OAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASK,kBAAT,CAA4Bd,eAAe,GAAG,EAA9C,EAAkD;EACvD,MAAMC,OAAO,GAAG;IACd,cAAczB,SADA;IAEd,gBAAgB;EAFF,CAAhB;EAIA,MAAM6B,cAAc,GAAG;IACrBC,OAAO,EAAE7C,YAAY,CAACD,OAAO,CAACuB,OAAR,CAAgBwB,SAAhB,EAAD,CADA;IAErBhC,OAFqB;IAGrB0B,OAHqB;IAIrB,GAAGD,eAJkB;IAKrBrB,UAAU,EAAEC,aAAa,EALJ;IAMrB4B,KAAK,EAAEX,QAAQ;EANM,CAAvB;;EASA,IAAIrC,OAAO,CAACuB,OAAR,CAAgB8B,cAAhB,EAAJ,EAAsC;IACpCR,cAAc,CAACJ,OAAf,CACE,eADF,IAEK,UAASzC,OAAO,CAACuB,OAAR,CAAgB8B,cAAhB,EAAiC,EAF/C;EAGD;;EAED,MAAMJ,OAAO,GAAGvD,KAAK,CAACwD,MAAN,CAAaL,cAAb,CAAhB;EAEA,OAAOI,OAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASM,cAAT,CAAwBf,eAAe,GAAG,EAA1C,EAA8C;EACnD,MAAMC,OAAO,GAAG;IACd,cAAczB,SADA;IAEd,aAAahB,OAAO,CAACuB,OAAR,CAAgBiC,YAAhB,EAFC;IAGd,gBAAgBxD,OAAO,CAACuB,OAAR,CAAgBkC,eAAhB;EAHF,CAAhB;EAKA,MAAMZ,cAAc,GAAG;IACrBC,OAAO,EAAE7C,YAAY,CAACD,OAAO,CAACuB,OAAR,CAAgBwB,SAAhB,EAAD,CADA;IAErBhC,OAFqB;IAGrB0B,OAHqB;IAIrB,GAAGD,eAJkB;IAKrBrB,UAAU,EAAEC,aAAa,EALJ;IAMrB4B,KAAK,EAAEX,QAAQ;EANM,CAAvB;EASA,MAAMY,OAAO,GAAGvD,KAAK,CAACwD,MAAN,CAAaL,cAAb,CAAhB;EAEA,OAAOI,OAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASS,cAAT,CAAwBnB,QAAxB,EAAkCC,eAAe,GAAG,EAApD,EAAwD;EAC7D,MAAMC,OAAO,GAAG;IACd,cAAczB,SADA;IAEd,gBAAgB,kBAFF;IAGd,sBAAsBuB,QAAQ,CAACG;EAHjB,CAAhB;EAKA,MAAMG,cAAc,GAAG;IACrBC,OAAO,EAAE7C,YAAY,CAACD,OAAO,CAACuB,OAAR,CAAgBwB,SAAhB,EAAD,CADA;IAErBhC,OAFqB;IAGrB0B,OAHqB;IAIrB,GAAGD,eAJkB;IAKrBrB,UAAU,EAAEC,aAAa,EALJ;IAMrB4B,KAAK,EAAEX,QAAQ;EANM,CAAvB;;EASA,IAAIrC,OAAO,CAACuB,OAAR,CAAgB8B,cAAhB,EAAJ,EAAsC;IACpCR,cAAc,CAACJ,OAAf,CACE,eADF,IAEK,UAASzC,OAAO,CAACuB,OAAR,CAAgB8B,cAAhB,EAAiC,EAF/C;EAGD;;EAED,MAAMJ,OAAO,GAAGvD,KAAK,CAACwD,MAAN,CAAaL,cAAb,CAAhB;EAEA,OAAOI,OAAP;AACD"}
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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"}