@rockcarver/frodo-lib 0.16.2-15 → 0.16.2-16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +5 -1
- package/cjs/api/AgentApi.js +11 -9
- package/cjs/api/AgentApi.js.map +1 -1
- package/cjs/api/AuthenticateApi.js +4 -2
- package/cjs/api/AuthenticateApi.js.map +1 -1
- package/cjs/api/BaseApi.js +28 -42
- package/cjs/api/BaseApi.js.map +1 -1
- package/cjs/api/CirclesOfTrustApi.js +7 -5
- package/cjs/api/CirclesOfTrustApi.js.map +1 -1
- package/cjs/api/IdmConfigApi.js +8 -6
- package/cjs/api/IdmConfigApi.js.map +1 -1
- package/cjs/api/LogApi.js +8 -6
- package/cjs/api/LogApi.js.map +1 -1
- package/cjs/api/ManagedObjectApi.js +7 -5
- package/cjs/api/ManagedObjectApi.js.map +1 -1
- package/cjs/api/NodeApi.js +9 -7
- package/cjs/api/NodeApi.js.map +1 -1
- package/cjs/api/OAuth2ClientApi.js +6 -4
- package/cjs/api/OAuth2ClientApi.js.map +1 -1
- package/cjs/api/OAuth2OIDCApi.js +7 -5
- package/cjs/api/OAuth2OIDCApi.js.map +1 -1
- package/cjs/api/OAuth2ProviderApi.js +4 -2
- package/cjs/api/OAuth2ProviderApi.js.map +1 -1
- package/cjs/api/RealmApi.js +7 -5
- package/cjs/api/RealmApi.js.map +1 -1
- package/cjs/api/Saml2Api.js +14 -12
- package/cjs/api/Saml2Api.js.map +1 -1
- package/cjs/api/ScriptApi.js +7 -5
- package/cjs/api/ScriptApi.js.map +1 -1
- package/cjs/api/SecretsApi.js +13 -11
- package/cjs/api/SecretsApi.js.map +1 -1
- package/cjs/api/ServerInfoApi.js +5 -3
- package/cjs/api/ServerInfoApi.js.map +1 -1
- package/cjs/api/ServiceApi.js +10 -8
- package/cjs/api/ServiceApi.js.map +1 -1
- package/cjs/api/SocialIdentityProvidersApi.js +8 -6
- package/cjs/api/SocialIdentityProvidersApi.js.map +1 -1
- package/cjs/api/StartupApi.js +5 -3
- package/cjs/api/StartupApi.js.map +1 -1
- package/cjs/api/TreeApi.js +7 -5
- package/cjs/api/TreeApi.js.map +1 -1
- package/cjs/api/VariablesApi.js +8 -6
- package/cjs/api/VariablesApi.js.map +1 -1
- package/cjs/api/utils/ApiUtils.js +5 -4
- package/cjs/api/utils/ApiUtils.js.map +1 -1
- package/cjs/api/utils/ApiUtils.test.js.map +1 -1
- package/cjs/index.js +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/ops/AuthenticateOps.js +41 -68
- package/cjs/ops/AuthenticateOps.js.map +1 -1
- package/cjs/ops/ConnectionProfileOps.js +24 -37
- package/cjs/ops/ConnectionProfileOps.js.map +1 -1
- package/cjs/ops/JoseOps.test.js.map +1 -1
- package/cjs/ops/JourneyOps.js +9 -9
- package/cjs/ops/JourneyOps.js.map +1 -1
- package/cjs/ops/LogOps.js +3 -4
- package/cjs/ops/LogOps.js.map +1 -1
- package/cjs/ops/NodeOps.js +4 -2
- package/cjs/ops/NodeOps.js.map +1 -1
- package/cjs/ops/OAuth2ClientOps.js +4 -2
- package/cjs/ops/OAuth2ClientOps.js.map +1 -1
- package/cjs/ops/OpsTypes.js.map +1 -1
- package/cjs/ops/OrganizationOps.js +5 -4
- package/cjs/ops/OrganizationOps.js.map +1 -1
- package/cjs/ops/ScriptOps.js +4 -2
- package/cjs/ops/ScriptOps.js.map +1 -1
- package/cjs/ops/utils/Console.js +10 -8
- package/cjs/ops/utils/Console.js.map +1 -1
- package/cjs/ops/utils/DataProtection.js +2 -2
- package/cjs/ops/utils/DataProtection.js.map +1 -1
- package/cjs/ops/utils/ExportImportUtils.js +10 -8
- package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
- package/cjs/ops/utils/OpsUtils.js +4 -4
- package/cjs/ops/utils/OpsUtils.js.map +1 -1
- package/cjs/ops/utils/OpsUtils.test.js.map +1 -1
- package/cjs/shared/State.js +230 -0
- package/cjs/shared/State.js.map +1 -0
- package/cjs/utils/AutoSetupPolly.js +2 -2
- package/cjs/utils/AutoSetupPolly.js.map +1 -1
- package/esm/api/AgentApi.mjs +9 -9
- package/esm/api/AuthenticateApi.mjs +2 -2
- package/esm/api/BaseApi.mjs +28 -42
- package/esm/api/CirclesOfTrustApi.mjs +5 -5
- package/esm/api/IdmConfigApi.mjs +6 -6
- package/esm/api/LogApi.mjs +6 -6
- package/esm/api/ManagedObjectApi.mjs +5 -5
- package/esm/api/NodeApi.mjs +7 -7
- package/esm/api/OAuth2ClientApi.mjs +4 -4
- package/esm/api/OAuth2OIDCApi.mjs +5 -5
- package/esm/api/OAuth2ProviderApi.mjs +2 -2
- package/esm/api/RealmApi.mjs +5 -5
- package/esm/api/Saml2Api.mjs +12 -12
- package/esm/api/ScriptApi.mjs +5 -5
- package/esm/api/SecretsApi.mjs +11 -11
- package/esm/api/ServerInfoApi.mjs +3 -3
- package/esm/api/ServiceApi.mjs +8 -8
- package/esm/api/SocialIdentityProvidersApi.mjs +6 -6
- package/esm/api/StartupApi.mjs +3 -3
- package/esm/api/TreeApi.mjs +5 -5
- package/esm/api/VariablesApi.mjs +6 -6
- package/esm/api/utils/ApiUtils.mjs +3 -3
- package/esm/api/utils/ApiUtils.test.mjs +6 -6
- package/esm/index.mjs +1 -1
- package/esm/ops/AuthenticateOps.mjs +41 -68
- package/esm/ops/ConnectionProfileOps.mjs +22 -37
- package/esm/ops/JoseOps.test.mjs +5 -0
- package/esm/ops/JourneyOps.mjs +9 -9
- package/esm/ops/LogOps.mjs +3 -3
- package/esm/ops/NodeOps.mjs +2 -2
- package/esm/ops/OAuth2ClientOps.mjs +2 -2
- package/esm/ops/OrganizationOps.mjs +3 -3
- package/esm/ops/ScriptOps.mjs +2 -2
- package/esm/ops/utils/Console.mjs +8 -8
- package/esm/ops/utils/DataProtection.mjs +2 -2
- package/esm/ops/utils/ExportImportUtils.mjs +8 -8
- package/esm/ops/utils/OpsUtils.mjs +3 -3
- package/esm/ops/utils/OpsUtils.test.mjs +9 -9
- package/esm/shared/State.mjs +156 -0
- package/esm/utils/AutoSetupPolly.mjs +2 -2
- package/package.json +1 -1
- package/types/api/AgentApi.d.ts.map +1 -1
- package/types/api/AuthenticateApi.d.ts.map +1 -1
- package/types/api/BaseApi.d.ts.map +1 -1
- package/types/api/CirclesOfTrustApi.d.ts.map +1 -1
- package/types/api/IdmConfigApi.d.ts.map +1 -1
- package/types/api/LogApi.d.ts.map +1 -1
- package/types/api/ManagedObjectApi.d.ts.map +1 -1
- package/types/api/NodeApi.d.ts.map +1 -1
- package/types/api/OAuth2ClientApi.d.ts.map +1 -1
- package/types/api/OAuth2OIDCApi.d.ts.map +1 -1
- package/types/api/OAuth2ProviderApi.d.ts.map +1 -1
- package/types/api/RealmApi.d.ts.map +1 -1
- package/types/api/Saml2Api.d.ts.map +1 -1
- package/types/api/ScriptApi.d.ts.map +1 -1
- package/types/api/SecretsApi.d.ts.map +1 -1
- package/types/api/ServerInfoApi.d.ts.map +1 -1
- package/types/api/ServiceApi.d.ts.map +1 -1
- package/types/api/SocialIdentityProvidersApi.d.ts.map +1 -1
- package/types/api/StartupApi.d.ts.map +1 -1
- package/types/api/TreeApi.d.ts.map +1 -1
- package/types/api/VariablesApi.d.ts.map +1 -1
- package/types/api/utils/ApiUtils.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/ops/AuthenticateOps.d.ts.map +1 -1
- package/types/ops/ConnectionProfileOps.d.ts.map +1 -1
- package/types/ops/JourneyOps.d.ts.map +1 -1
- package/types/ops/LogOps.d.ts.map +1 -1
- package/types/ops/NodeOps.d.ts.map +1 -1
- package/types/ops/OAuth2ClientOps.d.ts.map +1 -1
- package/types/ops/OpsTypes.d.ts +1 -1
- package/types/ops/OpsTypes.d.ts.map +1 -1
- package/types/ops/OrganizationOps.d.ts.map +1 -1
- package/types/ops/ScriptOps.d.ts.map +1 -1
- package/types/ops/utils/Console.d.ts +1 -1
- package/types/ops/utils/Console.d.ts.map +1 -1
- package/types/ops/utils/DataProtection.d.ts.map +1 -1
- package/types/ops/utils/ExportImportUtils.d.ts +1 -1
- package/types/ops/utils/ExportImportUtils.d.ts.map +1 -1
- package/types/ops/utils/OpsUtils.d.ts.map +1 -1
- package/types/shared/State.d.ts +181 -0
- package/types/shared/State.d.ts.map +1 -0
- package/types/utils/AutoSetupPolly.d.ts.map +1 -1
- package/cjs/storage/SessionStorage.js +0 -91
- package/cjs/storage/SessionStorage.js.map +0 -1
- package/esm/storage/SessionStorage.mjs +0 -83
- package/types/storage/SessionStorage.d.ts +0 -78
- package/types/storage/SessionStorage.d.ts.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.16.2-16] - 2022-12-12
|
|
11
|
+
|
|
10
12
|
## [0.16.2-15] - 2022-12-10
|
|
11
13
|
|
|
12
14
|
## [0.16.2-14] - 2022-12-01
|
|
@@ -716,7 +718,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
716
718
|
- Fixed problem with adding connection profiles
|
|
717
719
|
- Miscellaneous bug fixes
|
|
718
720
|
|
|
719
|
-
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.16.2-
|
|
721
|
+
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.16.2-16...HEAD
|
|
722
|
+
|
|
723
|
+
[0.16.2-16]: https://github.com/rockcarver/frodo-lib/compare/v0.16.2-15...v0.16.2-16
|
|
720
724
|
|
|
721
725
|
[0.16.2-15]: https://github.com/rockcarver/frodo-lib/compare/v0.16.2-14...v0.16.2-15
|
|
722
726
|
|
package/cjs/api/AgentApi.js
CHANGED
|
@@ -14,8 +14,10 @@ exports.putAgentByTypeAndId = putAgentByTypeAndId;
|
|
|
14
14
|
var _util = _interopRequireDefault(require("util"));
|
|
15
15
|
var _BaseApi = require("./BaseApi");
|
|
16
16
|
var _ApiUtils = require("./utils/ApiUtils");
|
|
17
|
-
var
|
|
17
|
+
var state = _interopRequireWildcard(require("../shared/State"));
|
|
18
18
|
var _Console = require("../ops/utils/Console");
|
|
19
|
+
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); }
|
|
20
|
+
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; }
|
|
19
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
22
|
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); } }
|
|
21
23
|
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); }); }; }
|
|
@@ -49,7 +51,7 @@ function getAgentTypes() {
|
|
|
49
51
|
function _getAgentTypes() {
|
|
50
52
|
_getAgentTypes = _asyncToGenerator(function* () {
|
|
51
53
|
(0, _Console.debugMessage)("AgentApi.getAgentTypes: start");
|
|
52
|
-
var urlString = _util.default.format(getAgentTypesURLTemplate,
|
|
54
|
+
var urlString = _util.default.format(getAgentTypesURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
53
55
|
var {
|
|
54
56
|
data
|
|
55
57
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -70,7 +72,7 @@ function getAgentsByType(_x) {
|
|
|
70
72
|
function _getAgentsByType() {
|
|
71
73
|
_getAgentsByType = _asyncToGenerator(function* (agentType) {
|
|
72
74
|
(0, _Console.debugMessage)("AgentApi.getAgentsByType: start");
|
|
73
|
-
var urlString = _util.default.format(agentListURLTemplate,
|
|
75
|
+
var urlString = _util.default.format(agentListURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), agentType);
|
|
74
76
|
var {
|
|
75
77
|
data
|
|
76
78
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -92,7 +94,7 @@ function getAgents() {
|
|
|
92
94
|
function _getAgents() {
|
|
93
95
|
_getAgents = _asyncToGenerator(function* () {
|
|
94
96
|
(0, _Console.debugMessage)("AgentApi.getAgents: start");
|
|
95
|
-
var urlString = _util.default.format(getAllAgentsURLTemplate,
|
|
97
|
+
var urlString = _util.default.format(getAllAgentsURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
96
98
|
var {
|
|
97
99
|
data
|
|
98
100
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).post(urlString, {}, {
|
|
@@ -115,7 +117,7 @@ function findAgentById(_x2) {
|
|
|
115
117
|
function _findAgentById() {
|
|
116
118
|
_findAgentById = _asyncToGenerator(function* (agentId) {
|
|
117
119
|
(0, _Console.debugMessage)("AgentApi.findAgentById: start");
|
|
118
|
-
var urlString = _util.default.format(queryAgentURLTemplate,
|
|
120
|
+
var urlString = _util.default.format(queryAgentURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), agentId);
|
|
119
121
|
var {
|
|
120
122
|
data
|
|
121
123
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -138,7 +140,7 @@ function findAgentByTypeAndId(_x3, _x4) {
|
|
|
138
140
|
function _findAgentByTypeAndId() {
|
|
139
141
|
_findAgentByTypeAndId = _asyncToGenerator(function* (agentType, agentId) {
|
|
140
142
|
(0, _Console.debugMessage)("AgentApi.findAgentById: start");
|
|
141
|
-
var urlString = _util.default.format(queryAgentByTypeURLTemplate,
|
|
143
|
+
var urlString = _util.default.format(queryAgentByTypeURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), agentType, agentId);
|
|
142
144
|
var {
|
|
143
145
|
data
|
|
144
146
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -162,7 +164,7 @@ function getAgentByTypeAndId(_x5, _x6) {
|
|
|
162
164
|
function _getAgentByTypeAndId() {
|
|
163
165
|
_getAgentByTypeAndId = _asyncToGenerator(function* (agentType, agentId) {
|
|
164
166
|
(0, _Console.debugMessage)("AgentApi.getAgentByTypeAndId: start");
|
|
165
|
-
var urlString = _util.default.format(agentURLTemplate,
|
|
167
|
+
var urlString = _util.default.format(agentURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), agentType, agentId);
|
|
166
168
|
var {
|
|
167
169
|
data
|
|
168
170
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -190,7 +192,7 @@ function _putAgentByTypeAndId() {
|
|
|
190
192
|
var agent = (0, _ApiUtils.deleteDeepByKey)(agentData, '-encrypted');
|
|
191
193
|
delete agent._provider;
|
|
192
194
|
delete agent._rev;
|
|
193
|
-
var urlString = _util.default.format(agentURLTemplate,
|
|
195
|
+
var urlString = _util.default.format(agentURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), agentType, agentId);
|
|
194
196
|
var {
|
|
195
197
|
data
|
|
196
198
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).put(urlString, agent, {
|
|
@@ -207,7 +209,7 @@ function deleteAgentByTypeAndId(_x10, _x11) {
|
|
|
207
209
|
function _deleteAgentByTypeAndId() {
|
|
208
210
|
_deleteAgentByTypeAndId = _asyncToGenerator(function* (agentType, agentId) {
|
|
209
211
|
(0, _Console.debugMessage)("AgentApi.deleteAgentByTypeAndId: start");
|
|
210
|
-
var urlString = _util.default.format(agentURLTemplate,
|
|
212
|
+
var urlString = _util.default.format(agentURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), agentType, agentId);
|
|
211
213
|
var {
|
|
212
214
|
data
|
|
213
215
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).delete(urlString, {
|
package/cjs/api/AgentApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentApi.js","names":["getAgentTypesURLTemplate","getAllAgentsURLTemplate","queryAgentURLTemplate","queryAgentByTypeURLTemplate","agentURLTemplate","agentListURLTemplate","apiVersion","getApiConfig","configPath","getCurrentRealmPath","path","getAgentTypes","debugMessage","urlString","util","format","storage","session","getTenant","data","generateAmApi","get","withCredentials","getAgentsByType","agentType","getAgents","post","findAgentById","agentId","result","findAgentByTypeAndId","getAgentByTypeAndId","putAgentByTypeAndId","agentData","agent","deleteDeepByKey","_provider","_rev","put","deleteAgentByTypeAndId","delete"],"sources":["api/AgentApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport { deleteDeepByKey, getCurrentRealmPath } from './utils/ApiUtils';\nimport storage from '../storage/SessionStorage';\nimport { debugMessage } from '../ops/utils/Console';\n\nconst getAgentTypesURLTemplate =\n '%s/json%s/realm-config/agents?_action=getAllTypes';\nconst getAllAgentsURLTemplate =\n '%s/json%s/realm-config/agents?_action=nextdescendents';\nconst queryAgentURLTemplate =\n \"%s/json%s/realm-config/agents?_queryFilter=_id+eq+'%s'\";\nconst queryAgentByTypeURLTemplate =\n \"%s/json%s/realm-config/agents/%s?_queryFilter=_id+eq+'%s'\";\nconst agentURLTemplate = '%s/json%s/realm-config/agents/%s/%s';\nconst agentListURLTemplate =\n '%s/json%s/realm-config/agents/%s?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n const configPath = getCurrentRealmPath();\n return {\n path: `${configPath}/realm-config/agents`,\n apiVersion,\n };\n};\n\n/**\n * Get agent types\n * @returns {Promise} a promise that resolves to an object containing an array of agent types\n */\nexport async function getAgentTypes() {\n debugMessage(`AgentApi.getAgentTypes: start`);\n const urlString = util.format(\n getAgentTypesURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.getAgentTypes: end`);\n return data;\n}\n\n/**\n * Get agents\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @returns {Promise} a promise that resolves to an object containing an array of agent objects of the specified type\n */\nexport async function getAgentsByType(agentType: string) {\n debugMessage(`AgentApi.getAgentsByType: start`);\n const urlString = util.format(\n agentListURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n agentType\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.getAgentsByType: end`);\n return data;\n}\n\n/**\n * Get all agents\n * @returns {Promise} a promise that resolves to an object containing an array of agent objects\n */\nexport async function getAgents() {\n debugMessage(`AgentApi.getAgents: start`);\n const urlString = util.format(\n getAllAgentsURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n }\n );\n debugMessage(`AgentApi.getAgents: end`);\n return data;\n}\n\n/**\n * Find agent by id\n * @param {string} agentId agent id\n * @returns {Promise} a promise that resolves to an array with one or zero agent objects\n */\nexport async function findAgentById(agentId: string) {\n debugMessage(`AgentApi.findAgentById: start`);\n const urlString = util.format(\n queryAgentURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.findAgentById: end`);\n return data.result;\n}\n\n/**\n * Find agent by id\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param {string} agentId agent id\n * @returns {Promise} a promise that resolves to an array with one or zero agent objects\n */\nexport async function findAgentByTypeAndId(agentType: string, agentId: string) {\n debugMessage(`AgentApi.findAgentById: start`);\n const urlString = util.format(\n queryAgentByTypeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.findAgentById: end`);\n return data.result;\n}\n\n/**\n * Get agent\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param {string} agentId agent id\n * @returns {Promise} a promise that resolves to an object containing an agent object of the specified type\n */\nexport async function getAgentByTypeAndId(agentType: string, agentId: string) {\n debugMessage(`AgentApi.getAgentByTypeAndId: start`);\n const urlString = util.format(\n agentURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.getAgentByTypeAndId: end`);\n return data;\n}\n\n/**\n * Put agent\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param {string} agentId agent id\n * @param {Object} agentData agent object\n * @returns {Promise} a promise that resolves to an object containing an agent object\n */\nexport async function putAgentByTypeAndId(\n agentType: string,\n agentId: string,\n agentData\n) {\n debugMessage(`AgentApi.putAgentByTypeAndId: start`);\n // until we figure out a way to use transport keys in Frodo,\n // we'll have to drop those encrypted attributes.\n const agent = deleteDeepByKey(agentData, '-encrypted');\n delete agent._provider;\n delete agent._rev;\n const urlString = util.format(\n agentURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).put(urlString, agent, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.putAgentByTypeAndId: end`);\n return data;\n}\n\n/**\n * Delete agent\n * @param agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param agentId agent id\n * @returns a promise that resolves to an object containing an agent object\n */\nexport async function deleteAgentByTypeAndId(\n agentType: string,\n agentId: string\n) {\n debugMessage(`AgentApi.deleteAgentByTypeAndId: start`);\n const urlString = util.format(\n agentURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.deleteAgentByTypeAndId: end`);\n return data;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentApi.js","names":["getAgentTypesURLTemplate","getAllAgentsURLTemplate","queryAgentURLTemplate","queryAgentByTypeURLTemplate","agentURLTemplate","agentListURLTemplate","apiVersion","getApiConfig","configPath","getCurrentRealmPath","path","getAgentTypes","debugMessage","urlString","util","format","state","getHost","data","generateAmApi","get","withCredentials","getAgentsByType","agentType","getAgents","post","findAgentById","agentId","result","findAgentByTypeAndId","getAgentByTypeAndId","putAgentByTypeAndId","agentData","agent","deleteDeepByKey","_provider","_rev","put","deleteAgentByTypeAndId","delete"],"sources":["api/AgentApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport { deleteDeepByKey, getCurrentRealmPath } from './utils/ApiUtils';\nimport * as state from '../shared/State';\nimport { debugMessage } from '../ops/utils/Console';\n\nconst getAgentTypesURLTemplate =\n '%s/json%s/realm-config/agents?_action=getAllTypes';\nconst getAllAgentsURLTemplate =\n '%s/json%s/realm-config/agents?_action=nextdescendents';\nconst queryAgentURLTemplate =\n \"%s/json%s/realm-config/agents?_queryFilter=_id+eq+'%s'\";\nconst queryAgentByTypeURLTemplate =\n \"%s/json%s/realm-config/agents/%s?_queryFilter=_id+eq+'%s'\";\nconst agentURLTemplate = '%s/json%s/realm-config/agents/%s/%s';\nconst agentListURLTemplate =\n '%s/json%s/realm-config/agents/%s?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n const configPath = getCurrentRealmPath();\n return {\n path: `${configPath}/realm-config/agents`,\n apiVersion,\n };\n};\n\n/**\n * Get agent types\n * @returns {Promise} a promise that resolves to an object containing an array of agent types\n */\nexport async function getAgentTypes() {\n debugMessage(`AgentApi.getAgentTypes: start`);\n const urlString = util.format(\n getAgentTypesURLTemplate,\n state.getHost(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.getAgentTypes: end`);\n return data;\n}\n\n/**\n * Get agents\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @returns {Promise} a promise that resolves to an object containing an array of agent objects of the specified type\n */\nexport async function getAgentsByType(agentType: string) {\n debugMessage(`AgentApi.getAgentsByType: start`);\n const urlString = util.format(\n agentListURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n agentType\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.getAgentsByType: end`);\n return data;\n}\n\n/**\n * Get all agents\n * @returns {Promise} a promise that resolves to an object containing an array of agent objects\n */\nexport async function getAgents() {\n debugMessage(`AgentApi.getAgents: start`);\n const urlString = util.format(\n getAllAgentsURLTemplate,\n state.getHost(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n }\n );\n debugMessage(`AgentApi.getAgents: end`);\n return data;\n}\n\n/**\n * Find agent by id\n * @param {string} agentId agent id\n * @returns {Promise} a promise that resolves to an array with one or zero agent objects\n */\nexport async function findAgentById(agentId: string) {\n debugMessage(`AgentApi.findAgentById: start`);\n const urlString = util.format(\n queryAgentURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.findAgentById: end`);\n return data.result;\n}\n\n/**\n * Find agent by id\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param {string} agentId agent id\n * @returns {Promise} a promise that resolves to an array with one or zero agent objects\n */\nexport async function findAgentByTypeAndId(agentType: string, agentId: string) {\n debugMessage(`AgentApi.findAgentById: start`);\n const urlString = util.format(\n queryAgentByTypeURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.findAgentById: end`);\n return data.result;\n}\n\n/**\n * Get agent\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param {string} agentId agent id\n * @returns {Promise} a promise that resolves to an object containing an agent object of the specified type\n */\nexport async function getAgentByTypeAndId(agentType: string, agentId: string) {\n debugMessage(`AgentApi.getAgentByTypeAndId: start`);\n const urlString = util.format(\n agentURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.getAgentByTypeAndId: end`);\n return data;\n}\n\n/**\n * Put agent\n * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param {string} agentId agent id\n * @param {Object} agentData agent object\n * @returns {Promise} a promise that resolves to an object containing an agent object\n */\nexport async function putAgentByTypeAndId(\n agentType: string,\n agentId: string,\n agentData\n) {\n debugMessage(`AgentApi.putAgentByTypeAndId: start`);\n // until we figure out a way to use transport keys in Frodo,\n // we'll have to drop those encrypted attributes.\n const agent = deleteDeepByKey(agentData, '-encrypted');\n delete agent._provider;\n delete agent._rev;\n const urlString = util.format(\n agentURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).put(urlString, agent, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.putAgentByTypeAndId: end`);\n return data;\n}\n\n/**\n * Delete agent\n * @param agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)\n * @param agentId agent id\n * @returns a promise that resolves to an object containing an agent object\n */\nexport async function deleteAgentByTypeAndId(\n agentType: string,\n agentId: string\n) {\n debugMessage(`AgentApi.deleteAgentByTypeAndId: start`);\n const urlString = util.format(\n agentURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n agentType,\n agentId\n );\n const { data } = await generateAmApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n debugMessage(`AgentApi.deleteAgentByTypeAndId: end`);\n return data;\n}\n"],"mappings":"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"}
|
|
@@ -7,7 +7,9 @@ exports.getRealmUrl = getRealmUrl;
|
|
|
7
7
|
exports.step = step;
|
|
8
8
|
var _util = _interopRequireDefault(require("util"));
|
|
9
9
|
var _BaseApi = require("./BaseApi");
|
|
10
|
-
var
|
|
10
|
+
var state = _interopRequireWildcard(require("../shared/State"));
|
|
11
|
+
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); }
|
|
12
|
+
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; }
|
|
11
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
14
|
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); } }
|
|
13
15
|
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); }); }; }
|
|
@@ -36,7 +38,7 @@ function _step() {
|
|
|
36
38
|
_step = _asyncToGenerator(function* () {
|
|
37
39
|
var body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
38
40
|
var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
39
|
-
var urlString =
|
|
41
|
+
var urlString = state.getAuthenticationService() ? _util.default.format(authenticateWithServiceUrlTemplate, state.getHost(), getRealmUrl('/'), state.getAuthenticationService()) : _util.default.format(authenticateUrlTemplate, state.getHost(), getRealmUrl('/'));
|
|
40
42
|
var {
|
|
41
43
|
data
|
|
42
44
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).post(urlString, body, config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthenticateApi.js","names":["authenticateUrlTemplate","authenticateWithServiceUrlTemplate","apiVersion","getApiConfig","realmPathTemplate","getRealmUrl","realm","localRealm","startsWith","length","substring","realmPath","util","format","step","body","config","urlString","
|
|
1
|
+
{"version":3,"file":"AuthenticateApi.js","names":["authenticateUrlTemplate","authenticateWithServiceUrlTemplate","apiVersion","getApiConfig","realmPathTemplate","getRealmUrl","realm","localRealm","startsWith","length","substring","realmPath","util","format","step","body","config","urlString","state","getAuthenticationService","getHost","data","generateAmApi","post"],"sources":["api/AuthenticateApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateAmApi } from './BaseApi';\nimport * as state from '../shared/State';\n\nconst authenticateUrlTemplate = '%s/json%s/authenticate';\nconst authenticateWithServiceUrlTemplate = `${authenticateUrlTemplate}?authIndexType=service&authIndexValue=%s`;\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(body = {}, config = {}) {\n const urlString = state.getAuthenticationService()\n ? util.format(\n authenticateWithServiceUrlTemplate,\n state.getHost(),\n getRealmUrl('/'),\n state.getAuthenticationService()\n )\n : util.format(authenticateUrlTemplate, state.getHost(), getRealmUrl('/'));\n const { data } = await generateAmApi(getApiConfig()).post(\n urlString,\n body,\n config\n );\n return data;\n}\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AAAyC;AAAA;AAAA;AAAA;AAAA;AAEzC,IAAMA,uBAAuB,GAAG,wBAAwB;AACxD,IAAMC,kCAAkC,aAAMD,uBAAuB,6CAA0C;AAE/G,IAAME,UAAU,GAAG,4BAA4B;AAC/C,IAAMC,YAAY,GAAG,OAAO;EAC1BD;AACF,CAAC,CAAC;AAEF,IAAME,iBAAiB,GAAG,YAAY;AAE/B,SAASC,WAAW,CAACC,KAAK,EAAE;EACjC,IAAIC,UAAU,GAAGD,KAAK;EACtB,IAAIC,UAAU,CAACC,UAAU,CAAC,GAAG,CAAC,IAAID,UAAU,CAACE,MAAM,GAAG,CAAC,EAAE;IACvDF,UAAU,GAAGA,UAAU,CAACG,SAAS,CAAC,CAAC,CAAC;EACtC;EACA,IAAIC,SAAS,GAAGC,aAAI,CAACC,MAAM,CAACT,iBAAiB,EAAE,MAAM,CAAC;EACtD,IAAIG,UAAU,KAAK,GAAG,EAAE;IACtBI,SAAS,IAAIC,aAAI,CAACC,MAAM,CAACT,iBAAiB,EAAEG,UAAU,CAAC;EACzD;EACA,OAAOI,SAAS;AAClB;AAAC,SAEqBG,IAAI;EAAA;AAAA;AAAA;EAAA,0BAAnB,aAA4C;IAAA,IAAxBC,IAAI,uEAAG,CAAC,CAAC;IAAA,IAAEC,MAAM,uEAAG,CAAC,CAAC;IAC/C,IAAMC,SAAS,GAAGC,KAAK,CAACC,wBAAwB,EAAE,GAC9CP,aAAI,CAACC,MAAM,CACTZ,kCAAkC,EAClCiB,KAAK,CAACE,OAAO,EAAE,EACff,WAAW,CAAC,GAAG,CAAC,EAChBa,KAAK,CAACC,wBAAwB,EAAE,CACjC,GACDP,aAAI,CAACC,MAAM,CAACb,uBAAuB,EAAEkB,KAAK,CAACE,OAAO,EAAE,EAAEf,WAAW,CAAC,GAAG,CAAC,CAAC;IAC3E,IAAM;MAAEgB;IAAK,CAAC,SAAS,IAAAC,sBAAa,EAACnB,YAAY,EAAE,CAAC,CAACoB,IAAI,CACvDN,SAAS,EACTF,IAAI,EACJC,MAAM,CACP;IACD,OAAOK,IAAI;EACb,CAAC;EAAA;AAAA"}
|
package/cjs/api/BaseApi.js
CHANGED
|
@@ -18,7 +18,7 @@ var _axiosRetry = _interopRequireDefault(require("axios-retry"));
|
|
|
18
18
|
var _httpsProxyAgent = _interopRequireDefault(require("https-proxy-agent"));
|
|
19
19
|
var _url = _interopRequireWildcard(require("url"));
|
|
20
20
|
var _fs = _interopRequireDefault(require("fs"));
|
|
21
|
-
var
|
|
21
|
+
var state = _interopRequireWildcard(require("../shared/State"));
|
|
22
22
|
var _path = _interopRequireDefault(require("path"));
|
|
23
23
|
var _Console = require("../ops/utils/Console");
|
|
24
24
|
var _curlirize2 = _interopRequireDefault(require("../ext/axios-curlirize/curlirize"));
|
|
@@ -71,7 +71,7 @@ function getHttpAgent() {
|
|
|
71
71
|
function getHttpsAgent() {
|
|
72
72
|
if (httpsAgent) return httpsAgent;
|
|
73
73
|
var options = {
|
|
74
|
-
rejectUnauthorized: !
|
|
74
|
+
rejectUnauthorized: !state.getAllowInsecureConnection()
|
|
75
75
|
};
|
|
76
76
|
var httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
|
|
77
77
|
if (httpsProxy) {
|
|
@@ -81,7 +81,7 @@ function getHttpsAgent() {
|
|
|
81
81
|
options['host'] = parsed.hostname;
|
|
82
82
|
options['port'] = parsed.port;
|
|
83
83
|
options['protocol'] = parsed.protocol;
|
|
84
|
-
options.rejectUnauthorized = !
|
|
84
|
+
options.rejectUnauthorized = !state.getAllowInsecureConnection();
|
|
85
85
|
httpsAgent = (0, _httpsProxyAgent.default)(options);
|
|
86
86
|
return httpsAgent;
|
|
87
87
|
}
|
|
@@ -136,10 +136,10 @@ function generateAmApi(resource) {
|
|
|
136
136
|
'Content-Type': 'application/json'
|
|
137
137
|
}, resource.apiVersion && {
|
|
138
138
|
'Accept-API-Version': resource.apiVersion
|
|
139
|
-
}), !
|
|
140
|
-
Cookie: "".concat(
|
|
141
|
-
}),
|
|
142
|
-
Authorization: "Bearer ".concat(
|
|
139
|
+
}), !state.getUseBearerTokenForAmApis() && state.getCookieName() && state.getCookieValue() && {
|
|
140
|
+
Cookie: "".concat(state.getCookieName(), "=").concat(state.getCookieValue())
|
|
141
|
+
}), state.getUseBearerTokenForAmApis() && state.getBearerToken() && {
|
|
142
|
+
Authorization: "Bearer ".concat(state.getBearerToken())
|
|
143
143
|
});
|
|
144
144
|
if (requestOverride['headers']) {
|
|
145
145
|
headers = _objectSpread(_objectSpread({}, headers), requestOverride['headers']);
|
|
@@ -148,7 +148,7 @@ function generateAmApi(resource) {
|
|
|
148
148
|
// baseURL: `${storage.session.getTenant()}/json`,
|
|
149
149
|
timeout
|
|
150
150
|
}, requestOverride), {}, {
|
|
151
|
-
headers: _objectSpread(_objectSpread({}, headers),
|
|
151
|
+
headers: _objectSpread(_objectSpread({}, headers), state.getAuthenticationHeaderOverrides()),
|
|
152
152
|
httpAgent: getHttpAgent(),
|
|
153
153
|
httpsAgent: getHttpsAgent(),
|
|
154
154
|
proxy: getProxy()
|
|
@@ -156,7 +156,7 @@ function generateAmApi(resource) {
|
|
|
156
156
|
var request = _axios.default.create(requestDetails);
|
|
157
157
|
|
|
158
158
|
// enable curlirizer output in debug mode
|
|
159
|
-
if (
|
|
159
|
+
if (state.getCurlirize()) {
|
|
160
160
|
curlirize(request);
|
|
161
161
|
}
|
|
162
162
|
return request;
|
|
@@ -177,10 +177,10 @@ function generateOauth2Api(resource) {
|
|
|
177
177
|
'X-ForgeRock-TransactionId': transactionId
|
|
178
178
|
}, resource.apiVersion && {
|
|
179
179
|
'Accept-API-Version': resource.apiVersion
|
|
180
|
-
}), !
|
|
181
|
-
Cookie: "".concat(
|
|
182
|
-
}),
|
|
183
|
-
Authorization: "Bearer ".concat(
|
|
180
|
+
}), !state.getUseBearerTokenForAmApis() && state.getCookieName() && state.getCookieValue() && {
|
|
181
|
+
Cookie: "".concat(state.getCookieName(), "=").concat(state.getCookieValue())
|
|
182
|
+
}), state.getUseBearerTokenForAmApis() && state.getBearerToken() && {
|
|
183
|
+
Authorization: "Bearer ".concat(state.getBearerToken())
|
|
184
184
|
});
|
|
185
185
|
if (requestOverride['headers']) {
|
|
186
186
|
headers = _objectSpread(_objectSpread({}, headers), requestOverride['headers']);
|
|
@@ -189,7 +189,7 @@ function generateOauth2Api(resource) {
|
|
|
189
189
|
// baseURL: `${storage.session.getTenant()}/json${resource.path}`,
|
|
190
190
|
timeout
|
|
191
191
|
}, requestOverride), {}, {
|
|
192
|
-
headers: _objectSpread(_objectSpread({}, headers),
|
|
192
|
+
headers: _objectSpread(_objectSpread({}, headers), state.getAuthenticationHeaderOverrides()),
|
|
193
193
|
httpAgent: getHttpAgent(),
|
|
194
194
|
httpsAgent: getHttpsAgent(),
|
|
195
195
|
proxy: getProxy()
|
|
@@ -197,7 +197,7 @@ function generateOauth2Api(resource) {
|
|
|
197
197
|
var request = _axios.default.create(requestDetails);
|
|
198
198
|
|
|
199
199
|
// enable curlirizer output in debug mode
|
|
200
|
-
if (
|
|
200
|
+
if (state.getCurlirize()) {
|
|
201
201
|
curlirize(request);
|
|
202
202
|
}
|
|
203
203
|
return request;
|
|
@@ -219,8 +219,8 @@ function generateIdmApi() {
|
|
|
219
219
|
'User-Agent': userAgent,
|
|
220
220
|
'X-ForgeRock-TransactionId': transactionId,
|
|
221
221
|
'Content-Type': 'application/json'
|
|
222
|
-
},
|
|
223
|
-
Authorization: "Bearer ".concat(
|
|
222
|
+
}, state.getBearerToken() && {
|
|
223
|
+
Authorization: "Bearer ".concat(state.getBearerToken())
|
|
224
224
|
})
|
|
225
225
|
}, requestOverride), {}, {
|
|
226
226
|
httpAgent: getHttpAgent(),
|
|
@@ -237,7 +237,7 @@ function generateIdmApi() {
|
|
|
237
237
|
var request = _axios.default.create(requestDetails);
|
|
238
238
|
|
|
239
239
|
// enable curlirizer output in debug mode
|
|
240
|
-
if (
|
|
240
|
+
if (state.getCurlirize()) {
|
|
241
241
|
curlirize(request);
|
|
242
242
|
}
|
|
243
243
|
return request;
|
|
@@ -255,8 +255,8 @@ function generateLogKeysApi() {
|
|
|
255
255
|
var headers = _objectSpread({
|
|
256
256
|
'User-Agent': userAgent,
|
|
257
257
|
'Content-Type': 'application/json'
|
|
258
|
-
},
|
|
259
|
-
Authorization: "Bearer ".concat(
|
|
258
|
+
}, state.getBearerToken() && {
|
|
259
|
+
Authorization: "Bearer ".concat(state.getBearerToken())
|
|
260
260
|
});
|
|
261
261
|
var requestDetails = _objectSpread(_objectSpread({
|
|
262
262
|
// baseURL: getTenantURL(storage.session.getTenant()),
|
|
@@ -267,17 +267,10 @@ function generateLogKeysApi() {
|
|
|
267
267
|
httpsAgent: getHttpsAgent(),
|
|
268
268
|
proxy: getProxy()
|
|
269
269
|
});
|
|
270
|
-
|
|
271
|
-
// if (storage.session.getBearerToken()) {
|
|
272
|
-
// requestDetails.headers[
|
|
273
|
-
// 'Authorization'
|
|
274
|
-
// ] = `Bearer ${storage.session.getBearerToken()}`;
|
|
275
|
-
// }
|
|
276
|
-
|
|
277
270
|
var request = _axios.default.create(requestDetails);
|
|
278
271
|
|
|
279
272
|
// enable curlirizer output in debug mode
|
|
280
|
-
if (
|
|
273
|
+
if (state.getCurlirize()) {
|
|
281
274
|
curlirize(request);
|
|
282
275
|
}
|
|
283
276
|
return request;
|
|
@@ -294,8 +287,8 @@ function generateLogApi() {
|
|
|
294
287
|
var requestOverride = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
295
288
|
var headers = {
|
|
296
289
|
'User-Agent': userAgent,
|
|
297
|
-
'X-API-Key':
|
|
298
|
-
'X-API-Secret':
|
|
290
|
+
'X-API-Key': state.getLogApiKey(),
|
|
291
|
+
'X-API-Secret': state.getLogApiSecret()
|
|
299
292
|
};
|
|
300
293
|
var requestDetails = _objectSpread(_objectSpread({
|
|
301
294
|
// baseURL: getTenantURL(storage.session.getTenant()),
|
|
@@ -309,7 +302,7 @@ function generateLogApi() {
|
|
|
309
302
|
var request = _axios.default.create(requestDetails);
|
|
310
303
|
|
|
311
304
|
// enable curlirizer output in debug mode
|
|
312
|
-
if (
|
|
305
|
+
if (state.getCurlirize()) {
|
|
313
306
|
curlirize(request);
|
|
314
307
|
}
|
|
315
308
|
return request;
|
|
@@ -329,8 +322,8 @@ function generateESVApi(resource) {
|
|
|
329
322
|
'Content-Type': 'application/json'
|
|
330
323
|
}, resource.apiVersion && {
|
|
331
324
|
'Accept-API-Version': resource.apiVersion
|
|
332
|
-
}),
|
|
333
|
-
Authorization: "Bearer ".concat(
|
|
325
|
+
}), state.getBearerToken() && {
|
|
326
|
+
Authorization: "Bearer ".concat(state.getBearerToken())
|
|
334
327
|
});
|
|
335
328
|
var requestDetails = _objectSpread(_objectSpread({
|
|
336
329
|
// baseURL: getTenantURL(storage.session.getTenant()),
|
|
@@ -341,17 +334,10 @@ function generateESVApi(resource) {
|
|
|
341
334
|
httpsAgent: getHttpsAgent(),
|
|
342
335
|
proxy: getProxy()
|
|
343
336
|
});
|
|
344
|
-
|
|
345
|
-
// if (storage.session.getBearerToken()) {
|
|
346
|
-
// requestDetails.headers[
|
|
347
|
-
// 'Authorization'
|
|
348
|
-
// ] = `Bearer ${storage.session.getBearerToken()}`;
|
|
349
|
-
// }
|
|
350
|
-
|
|
351
337
|
var request = _axios.default.create(requestDetails);
|
|
352
338
|
|
|
353
339
|
// enable curlirizer output in debug mode
|
|
354
|
-
if (
|
|
340
|
+
if (state.getCurlirize()) {
|
|
355
341
|
curlirize(request);
|
|
356
342
|
}
|
|
357
343
|
return request;
|
|
@@ -381,7 +367,7 @@ function generateReleaseApi(baseUrl) {
|
|
|
381
367
|
var request = _axios.default.create(requestDetails);
|
|
382
368
|
|
|
383
369
|
// enable curlirizer output in debug mode
|
|
384
|
-
if (
|
|
370
|
+
if (state.getCurlirize()) {
|
|
385
371
|
curlirize(request);
|
|
386
372
|
}
|
|
387
373
|
return request;
|
package/cjs/api/BaseApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseApi.js","names":["FrodoMockAdapter","process","env","FRODO_MOCK","frodo_mock","MockAdapter","axios","undefined","mockAll","__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","axiosRetry","retries","shouldResetTimeout","retryCondition","_error","timeout","maxSockets","maxFreeSockets","freeSocketTimeout","userAgent","name","version","transactionId","randomUUID","httpAgent","httpsAgent","getHttpAgent","Agent","getHttpsAgent","options","rejectUnauthorized","storage","session","getAllowInsecureConnection","httpsProxy","HTTPS_PROXY","https_proxy","console","error","parsed","url","hostname","port","protocol","HttpsProxyAgent","HttpsAgent","getProxy","curlirize","request","_curlirize","result","err","command","printMessage","curlirizeMessage","generateAmApi","resource","requestOverride","headers","apiVersion","getUseBearerTokenForAmApis","getCookieName","getCookieValue","Cookie","getBearerToken","Authorization","requestDetails","getAuthenticationHeaderOverrides","proxy","create","getCurlirize","generateOauth2Api","generateIdmApi","generateLogKeysApi","generateLogApi","getLogApiKey","getLogApiSecret","generateESVApi","generateReleaseApi","baseUrl","baseURL"],"sources":["api/BaseApi.ts"],"sourcesContent":["import axios, { AxiosProxyConfig } from 'axios';\nimport MockAdapter from 'axios-mock-adapter';\nimport Agent from 'agentkeepalive';\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 path from 'path';\nimport { fileURLToPath } from 'url';\nimport { curlirizeMessage, printMessage } from '../ops/utils/Console';\nimport _curlirize from '../ext/axios-curlirize/curlirize';\nimport { randomUUID } from 'crypto';\nimport { mockAll } from '../test/mocks/ForgeRockApiMockEngine';\n\n// this has to be the first statement after the imports for mocking to work\nexport const FrodoMockAdapter =\n process.env.FRODO_MOCK || process.env.frodo_mock\n ? new MockAdapter(axios)\n : undefined;\n\nif (FrodoMockAdapter) mockAll(FrodoMockAdapter);\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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\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}`;\nconst transactionId = `frodo-${randomUUID()}`;\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 * Customize curlirize output\n * @param request axios request object\n */\nfunction curlirize(request) {\n _curlirize(request, (result, err) => {\n const { command } = result;\n if (err) {\n printMessage(err, 'error');\n } else {\n curlirizeMessage(command);\n }\n });\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 'X-ForgeRock-TransactionId': transactionId,\n 'Content-Type': 'application/json',\n // only add API version if we have it\n ...(resource.apiVersion && { 'Accept-API-Version': resource.apiVersion }),\n // only send session cookie if we know its name and value and we are not instructed to use the bearer token for AM APIs\n ...(!storage.session.getUseBearerTokenForAmApis() &&\n storage.session.getCookieName() &&\n storage.session.getCookieValue() && {\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n }),\n // only add authorization header if we have a bearer token and are instructed to use it for AM APIs\n ...(storage.session.getUseBearerTokenForAmApis() &&\n storage.session.getBearerToken() && {\n Authorization: `Bearer ${storage.session.getBearerToken()}`,\n }),\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 ...headers,\n ...storage.session.getAuthenticationHeaderOverrides(),\n },\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\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 'X-ForgeRock-TransactionId': transactionId,\n // only add API version if we have it\n ...(resource.apiVersion && { 'Accept-API-Version': resource.apiVersion }),\n // only send session cookie if we know its name and value and we are not instructed to use the bearer token for AM APIs\n ...(!storage.session.getUseBearerTokenForAmApis() &&\n storage.session.getCookieName() &&\n storage.session.getCookieValue() && {\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n }),\n // only add authorization header if we have a bearer token and are instructed to use it for AM APIs\n ...(storage.session.getUseBearerTokenForAmApis() &&\n storage.session.getBearerToken() && {\n Authorization: `Bearer ${storage.session.getBearerToken()}`,\n }),\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 ...headers,\n ...storage.session.getAuthenticationHeaderOverrides(),\n },\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\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 'X-ForgeRock-TransactionId': transactionId,\n 'Content-Type': 'application/json',\n // only add authorization header if we have a bearer token\n ...(storage.session.getBearerToken() && {\n Authorization: `Bearer ${storage.session.getBearerToken()}`,\n }),\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 // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\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 // only add authorization header if we have a bearer token\n ...(storage.session.getBearerToken() && {\n Authorization: `Bearer ${storage.session.getBearerToken()}`,\n }),\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 // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\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 // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\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 // only add API version if we have it\n ...(resource.apiVersion && { 'Accept-API-Version': resource.apiVersion }),\n // only add authorization header if we have a bearer token\n ...(storage.session.getBearerToken() && {\n Authorization: `Bearer ${storage.session.getBearerToken()}`,\n }),\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 // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\n\n return request;\n}\n\n/**\n * Generates a release (Github or Npm) 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 generateReleaseApi(baseUrl, requestOverride = {}) {\n const requestDetails = {\n baseURL: baseUrl,\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 const request = axios.create(requestDetails);\n\n // enable curlirizer output in debug mode\n if (storage.session.getCurlirize()) {\n curlirize(request);\n }\n\n return request;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseApi.js","names":["FrodoMockAdapter","process","env","FRODO_MOCK","frodo_mock","MockAdapter","axios","undefined","mockAll","__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","axiosRetry","retries","shouldResetTimeout","retryCondition","_error","timeout","maxSockets","maxFreeSockets","freeSocketTimeout","userAgent","name","version","transactionId","randomUUID","httpAgent","httpsAgent","getHttpAgent","Agent","getHttpsAgent","options","rejectUnauthorized","state","getAllowInsecureConnection","httpsProxy","HTTPS_PROXY","https_proxy","console","error","parsed","url","hostname","port","protocol","HttpsProxyAgent","HttpsAgent","getProxy","curlirize","request","_curlirize","result","err","command","printMessage","curlirizeMessage","generateAmApi","resource","requestOverride","headers","apiVersion","getUseBearerTokenForAmApis","getCookieName","getCookieValue","Cookie","getBearerToken","Authorization","requestDetails","getAuthenticationHeaderOverrides","proxy","create","getCurlirize","generateOauth2Api","generateIdmApi","generateLogKeysApi","generateLogApi","getLogApiKey","getLogApiSecret","generateESVApi","generateReleaseApi","baseUrl","baseURL"],"sources":["api/BaseApi.ts"],"sourcesContent":["import axios, { AxiosProxyConfig } from 'axios';\nimport MockAdapter from 'axios-mock-adapter';\nimport Agent from 'agentkeepalive';\nimport axiosRetry from 'axios-retry';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport * as state from '../shared/State';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\nimport { curlirizeMessage, printMessage } from '../ops/utils/Console';\nimport _curlirize from '../ext/axios-curlirize/curlirize';\nimport { randomUUID } from 'crypto';\nimport { mockAll } from '../test/mocks/ForgeRockApiMockEngine';\n\n// this has to be the first statement after the imports for mocking to work\nexport const FrodoMockAdapter =\n process.env.FRODO_MOCK || process.env.frodo_mock\n ? new MockAdapter(axios)\n : undefined;\n\nif (FrodoMockAdapter) mockAll(FrodoMockAdapter);\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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\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}`;\nconst transactionId = `frodo-${randomUUID()}`;\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: !state.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 = !state.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 * Customize curlirize output\n * @param request axios request object\n */\nfunction curlirize(request) {\n _curlirize(request, (result, err) => {\n const { command } = result;\n if (err) {\n printMessage(err, 'error');\n } else {\n curlirizeMessage(command);\n }\n });\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 'X-ForgeRock-TransactionId': transactionId,\n 'Content-Type': 'application/json',\n // only add API version if we have it\n ...(resource.apiVersion && { 'Accept-API-Version': resource.apiVersion }),\n // only send session cookie if we know its name and value and we are not instructed to use the bearer token for AM APIs\n ...(!state.getUseBearerTokenForAmApis() &&\n state.getCookieName() &&\n state.getCookieValue() && {\n Cookie: `${state.getCookieName()}=${state.getCookieValue()}`,\n }),\n // only add authorization header if we have a bearer token and are instructed to use it for AM APIs\n ...(state.getUseBearerTokenForAmApis() &&\n state.getBearerToken() && {\n Authorization: `Bearer ${state.getBearerToken()}`,\n }),\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 ...headers,\n ...state.getAuthenticationHeaderOverrides(),\n },\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\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 'X-ForgeRock-TransactionId': transactionId,\n // only add API version if we have it\n ...(resource.apiVersion && { 'Accept-API-Version': resource.apiVersion }),\n // only send session cookie if we know its name and value and we are not instructed to use the bearer token for AM APIs\n ...(!state.getUseBearerTokenForAmApis() &&\n state.getCookieName() &&\n state.getCookieValue() && {\n Cookie: `${state.getCookieName()}=${state.getCookieValue()}`,\n }),\n // only add authorization header if we have a bearer token and are instructed to use it for AM APIs\n ...(state.getUseBearerTokenForAmApis() &&\n state.getBearerToken() && {\n Authorization: `Bearer ${state.getBearerToken()}`,\n }),\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 ...headers,\n ...state.getAuthenticationHeaderOverrides(),\n },\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\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 'X-ForgeRock-TransactionId': transactionId,\n 'Content-Type': 'application/json',\n // only add authorization header if we have a bearer token\n ...(state.getBearerToken() && {\n Authorization: `Bearer ${state.getBearerToken()}`,\n }),\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 // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\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 // only add authorization header if we have a bearer token\n ...(state.getBearerToken() && {\n Authorization: `Bearer ${state.getBearerToken()}`,\n }),\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 // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\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': state.getLogApiKey(),\n 'X-API-Secret': state.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 // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\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 // only add API version if we have it\n ...(resource.apiVersion && { 'Accept-API-Version': resource.apiVersion }),\n // only add authorization header if we have a bearer token\n ...(state.getBearerToken() && {\n Authorization: `Bearer ${state.getBearerToken()}`,\n }),\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 // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\n\n return request;\n}\n\n/**\n * Generates a release (Github or Npm) 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 generateReleaseApi(baseUrl, requestOverride = {}) {\n const requestDetails = {\n baseURL: baseUrl,\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 const request = axios.create(requestDetails);\n\n // enable curlirizer output in debug mode\n if (state.getCurlirize()) {\n curlirize(request);\n }\n\n return request;\n}\n"],"mappings":"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"}
|
|
@@ -11,7 +11,9 @@ var _util = _interopRequireDefault(require("util"));
|
|
|
11
11
|
var _lodash = _interopRequireDefault(require("lodash"));
|
|
12
12
|
var _BaseApi = require("./BaseApi");
|
|
13
13
|
var _ApiUtils = require("./utils/ApiUtils");
|
|
14
|
-
var
|
|
14
|
+
var state = _interopRequireWildcard(require("../shared/State"));
|
|
15
|
+
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); }
|
|
16
|
+
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; }
|
|
15
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
18
|
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); } }
|
|
17
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); }); }; }
|
|
@@ -40,7 +42,7 @@ function getCirclesOfTrust() {
|
|
|
40
42
|
*/
|
|
41
43
|
function _getCirclesOfTrust() {
|
|
42
44
|
_getCirclesOfTrust = _asyncToGenerator(function* () {
|
|
43
|
-
var urlString = _util.default.format(queryAllCirclesOfTrustURLTemplate,
|
|
45
|
+
var urlString = _util.default.format(queryAllCirclesOfTrustURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
44
46
|
var {
|
|
45
47
|
data
|
|
46
48
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -60,7 +62,7 @@ function getCircleOfTrust(_x) {
|
|
|
60
62
|
*/
|
|
61
63
|
function _getCircleOfTrust() {
|
|
62
64
|
_getCircleOfTrust = _asyncToGenerator(function* (cotId) {
|
|
63
|
-
var urlString = _util.default.format(circleOfTrustByIdURLTemplate,
|
|
65
|
+
var urlString = _util.default.format(circleOfTrustByIdURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), cotId);
|
|
64
66
|
var {
|
|
65
67
|
data
|
|
66
68
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
@@ -82,7 +84,7 @@ function createCircleOfTrust(_x2) {
|
|
|
82
84
|
function _createCircleOfTrust() {
|
|
83
85
|
_createCircleOfTrust = _asyncToGenerator(function* (cotData) {
|
|
84
86
|
var postData = _lodash.default.cloneDeep(cotData);
|
|
85
|
-
var urlString = _util.default.format(createCircleOfTrustURLTemplate,
|
|
87
|
+
var urlString = _util.default.format(createCircleOfTrustURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
86
88
|
var {
|
|
87
89
|
data
|
|
88
90
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).post(urlString, postData, {
|
|
@@ -97,7 +99,7 @@ function updateCircleOfTrust(_x3, _x4) {
|
|
|
97
99
|
}
|
|
98
100
|
function _updateCircleOfTrust() {
|
|
99
101
|
_updateCircleOfTrust = _asyncToGenerator(function* (cotId, cotData) {
|
|
100
|
-
var urlString = _util.default.format(circleOfTrustByIdURLTemplate,
|
|
102
|
+
var urlString = _util.default.format(circleOfTrustByIdURLTemplate, state.getHost(), (0, _ApiUtils.getCurrentRealmPath)(), cotId);
|
|
101
103
|
var {
|
|
102
104
|
data
|
|
103
105
|
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).put(urlString, cotData, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CirclesOfTrustApi.js","names":["circleOfTrustByIdURLTemplate","createCircleOfTrustURLTemplate","queryAllCirclesOfTrustURLTemplate","apiVersion","getApiConfig","path","getCurrentRealmPath","getCirclesOfTrust","urlString","util","format","
|
|
1
|
+
{"version":3,"file":"CirclesOfTrustApi.js","names":["circleOfTrustByIdURLTemplate","createCircleOfTrustURLTemplate","queryAllCirclesOfTrustURLTemplate","apiVersion","getApiConfig","path","getCurrentRealmPath","getCirclesOfTrust","urlString","util","format","state","getHost","data","generateAmApi","get","withCredentials","getCircleOfTrust","cotId","createCircleOfTrust","cotData","postData","_","cloneDeep","post","updateCircleOfTrust","put"],"sources":["api/CirclesOfTrustApi.ts"],"sourcesContent":["import util from 'util';\nimport _ from 'lodash';\nimport { generateAmApi } from './BaseApi';\nimport { getCurrentRealmPath } from './utils/ApiUtils';\nimport * as state from '../shared/State';\n\nconst circleOfTrustByIdURLTemplate =\n '%s/json%s/realm-config/federation/circlesoftrust/%s';\nconst createCircleOfTrustURLTemplate =\n '%s/json%s/realm-config/federation/circlesoftrust/?_action=create';\nconst queryAllCirclesOfTrustURLTemplate =\n '%s/json%s/realm-config/federation/circlesoftrust?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n return {\n path: `/json${getCurrentRealmPath()}/realm-config/federation/circlesoftrust`,\n apiVersion,\n };\n};\n\n/**\n * Get all SAML2 circles of trust\n * @returns {Promise} a promise that resolves to an array of circles of trust objects\n */\nexport async function getCirclesOfTrust() {\n const urlString = util.format(\n queryAllCirclesOfTrustURLTemplate,\n state.getHost(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get SAML2 circle of trust by id/name\n * @param {String} cotId Circle of trust id/name\n * @returns {Promise} a promise that resolves to a saml2 circle of trust object\n */\nexport async function getCircleOfTrust(cotId) {\n const urlString = util.format(\n circleOfTrustByIdURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n cotId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Create a SAML2 circle of trust\n * @param {Object} cotData Object representing a SAML circle of trust\n * @returns {Promise} a promise that resolves to a saml2 circle of trust object\n */\nexport async function createCircleOfTrust(cotData) {\n const postData = _.cloneDeep(cotData);\n const urlString = util.format(\n createCircleOfTrustURLTemplate,\n state.getHost(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).post(\n urlString,\n postData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Update SAML2 circle of trust\n * @param {String} cotId Entity provider location (hosted or remote)\n * @param {Object} cotData Object representing a SAML2 circle of trust\n * @returns {Promise} a promise that resolves to a saml2 circle of trust object\n */\nexport async function updateCircleOfTrust(cotId, cotData) {\n const urlString = util.format(\n circleOfTrustByIdURLTemplate,\n state.getHost(),\n getCurrentRealmPath(),\n cotId\n );\n const { data } = await generateAmApi(getApiConfig()).put(urlString, cotData, {\n withCredentials: true,\n });\n return data;\n}\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAAyC;AAAA;AAAA;AAAA;AAAA;AAEzC,IAAMA,4BAA4B,GAChC,qDAAqD;AACvD,IAAMC,8BAA8B,GAClC,kEAAkE;AACpE,IAAMC,iCAAiC,GACrC,oEAAoE;AACtE,IAAMC,UAAU,GAAG,2BAA2B;AAC9C,IAAMC,YAAY,GAAG,MAAM;EACzB,OAAO;IACLC,IAAI,iBAAU,IAAAC,6BAAmB,GAAE,4CAAyC;IAC5EH;EACF,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AAHA,SAIsBI,iBAAiB;EAAA;AAAA;AAYvC;AACA;AACA;AACA;AACA;AAJA;EAAA,uCAZO,aAAmC;IACxC,IAAMC,SAAS,GAAGC,aAAI,CAACC,MAAM,CAC3BR,iCAAiC,EACjCS,KAAK,CAACC,OAAO,EAAE,EACf,IAAAN,6BAAmB,GAAE,CACtB;IACD,IAAM;MAAEO;IAAK,CAAC,SAAS,IAAAC,sBAAa,EAACV,YAAY,EAAE,CAAC,CAACW,GAAG,CAACP,SAAS,EAAE;MAClEQ,eAAe,EAAE;IACnB,CAAC,CAAC;IACF,OAAOH,IAAI;EACb,CAAC;EAAA;AAAA;AAAA,SAOqBI,gBAAgB;EAAA;AAAA;AAatC;AACA;AACA;AACA;AACA;AAJA;EAAA,sCAbO,WAAgCC,KAAK,EAAE;IAC5C,IAAMV,SAAS,GAAGC,aAAI,CAACC,MAAM,CAC3BV,4BAA4B,EAC5BW,KAAK,CAACC,OAAO,EAAE,EACf,IAAAN,6BAAmB,GAAE,EACrBY,KAAK,CACN;IACD,IAAM;MAAEL;IAAK,CAAC,SAAS,IAAAC,sBAAa,EAACV,YAAY,EAAE,CAAC,CAACW,GAAG,CAACP,SAAS,EAAE;MAClEQ,eAAe,EAAE;IACnB,CAAC,CAAC;IACF,OAAOH,IAAI;EACb,CAAC;EAAA;AAAA;AAAA,SAOqBM,mBAAmB;EAAA;AAAA;AAiBzC;AACA;AACA;AACA;AACA;AACA;AALA;EAAA,yCAjBO,WAAmCC,OAAO,EAAE;IACjD,IAAMC,QAAQ,GAAGC,eAAC,CAACC,SAAS,CAACH,OAAO,CAAC;IACrC,IAAMZ,SAAS,GAAGC,aAAI,CAACC,MAAM,CAC3BT,8BAA8B,EAC9BU,KAAK,CAACC,OAAO,EAAE,EACf,IAAAN,6BAAmB,GAAE,CACtB;IACD,IAAM;MAAEO;IAAK,CAAC,SAAS,IAAAC,sBAAa,EAACV,YAAY,EAAE,CAAC,CAACoB,IAAI,CACvDhB,SAAS,EACTa,QAAQ,EACR;MACEL,eAAe,EAAE;IACnB,CAAC,CACF;IACD,OAAOH,IAAI;EACb,CAAC;EAAA;AAAA;AAAA,SAQqBY,mBAAmB;EAAA;AAAA;AAAA;EAAA,yCAAlC,WAAmCP,KAAK,EAAEE,OAAO,EAAE;IACxD,IAAMZ,SAAS,GAAGC,aAAI,CAACC,MAAM,CAC3BV,4BAA4B,EAC5BW,KAAK,CAACC,OAAO,EAAE,EACf,IAAAN,6BAAmB,GAAE,EACrBY,KAAK,CACN;IACD,IAAM;MAAEL;IAAK,CAAC,SAAS,IAAAC,sBAAa,EAACV,YAAY,EAAE,CAAC,CAACsB,GAAG,CAAClB,SAAS,EAAEY,OAAO,EAAE;MAC3EJ,eAAe,EAAE;IACnB,CAAC,CAAC;IACF,OAAOH,IAAI;EACb,CAAC;EAAA;AAAA"}
|