@rockcarver/frodo-lib 0.14.1 → 0.15.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.
- package/CHANGELOG.md +21 -1
- package/cjs/api/BaseApi.js +30 -0
- package/cjs/api/BaseApi.js.map +1 -1
- package/cjs/index.js +30 -34
- package/cjs/index.js.map +1 -1
- package/cjs/ops/utils/Version.js +46 -0
- package/cjs/ops/utils/Version.js.map +1 -0
- package/cjs/ops/utils/Version.test.js.map +1 -0
- package/esm/api/BaseApi.mjs +24 -0
- package/esm/index.mjs +12 -19
- package/esm/ops/utils/Version.mjs +21 -0
- package/esm/{index.test.mjs → ops/utils/Version.test.mjs} +4 -4
- package/package.json +1 -1
- package/types/api/BaseApi.d.ts +8 -0
- package/types/api/BaseApi.d.ts.map +1 -1
- package/types/index.d.ts +9 -7
- package/types/index.d.ts.map +1 -1
- package/types/ops/utils/Version.d.ts +2 -0
- package/types/ops/utils/Version.d.ts.map +1 -0
- package/cjs/index.test.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.15.0] - 2022-10-14
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- rockcarver/frodo-cli#82: Added version update checking
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- Exposed more api layer modules
|
|
19
|
+
|
|
20
|
+
## [0.14.2-0] - 2022-10-11
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- rockcarver/frodo-cli#82: Added version update checking
|
|
25
|
+
|
|
10
26
|
## [0.14.1] - 2022-10-11
|
|
11
27
|
|
|
12
28
|
### Changed
|
|
@@ -623,7 +639,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
623
639
|
- Fixed problem with adding connection profiles
|
|
624
640
|
- Miscellaneous bug fixes
|
|
625
641
|
|
|
626
|
-
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.
|
|
642
|
+
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.15.0...HEAD
|
|
643
|
+
|
|
644
|
+
[0.15.0]: https://github.com/rockcarver/frodo-lib/compare/v0.14.2-0...v0.15.0
|
|
645
|
+
|
|
646
|
+
[0.14.2-0]: https://github.com/rockcarver/frodo-lib/compare/v0.14.1...v0.14.2-0
|
|
627
647
|
|
|
628
648
|
[0.14.1]: https://github.com/rockcarver/frodo-lib/compare/v0.14.0...v0.14.1
|
|
629
649
|
|
package/cjs/api/BaseApi.js
CHANGED
|
@@ -9,6 +9,7 @@ exports.generateIdmApi = generateIdmApi;
|
|
|
9
9
|
exports.generateLogApi = generateLogApi;
|
|
10
10
|
exports.generateLogKeysApi = generateLogKeysApi;
|
|
11
11
|
exports.generateOauth2Api = generateOauth2Api;
|
|
12
|
+
exports.generateReleaseApi = generateReleaseApi;
|
|
12
13
|
|
|
13
14
|
var _agentkeepalive = _interopRequireDefault(require("agentkeepalive"));
|
|
14
15
|
|
|
@@ -319,4 +320,33 @@ function generateESVApi(resource) {
|
|
|
319
320
|
|
|
320
321
|
return request;
|
|
321
322
|
}
|
|
323
|
+
/**
|
|
324
|
+
* Generates a release (Github or Npm) Axios API instance
|
|
325
|
+
* @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add
|
|
326
|
+
* on extra information or override default properties https://github.com/axios/axios#request-config
|
|
327
|
+
*
|
|
328
|
+
* @returns {AxiosInstance}
|
|
329
|
+
*/
|
|
330
|
+
|
|
331
|
+
|
|
332
|
+
function generateReleaseApi(baseUrl) {
|
|
333
|
+
var requestOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
334
|
+
|
|
335
|
+
var requestDetails = _objectSpread(_objectSpread({
|
|
336
|
+
baseURL: baseUrl,
|
|
337
|
+
timeout,
|
|
338
|
+
headers: {
|
|
339
|
+
'User-Agent': userAgent,
|
|
340
|
+
'Content-Type': 'application/json'
|
|
341
|
+
}
|
|
342
|
+
}, requestOverride), {}, {
|
|
343
|
+
httpAgent: getHttpAgent(),
|
|
344
|
+
httpsAgent: getHttpsAgent(),
|
|
345
|
+
proxy: getProxy()
|
|
346
|
+
});
|
|
347
|
+
|
|
348
|
+
var request = _axios.default.create(requestDetails);
|
|
349
|
+
|
|
350
|
+
return request;
|
|
351
|
+
}
|
|
322
352
|
//# sourceMappingURL=BaseApi.js.map
|
package/cjs/api/BaseApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseApi.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","axiosRetry","axios","retries","shouldResetTimeout","retryCondition","_error","timeout","maxSockets","maxFreeSockets","freeSocketTimeout","userAgent","name","version","httpAgent","httpsAgent","getHttpAgent","Agent","getHttpsAgent","options","rejectUnauthorized","storage","session","getAllowInsecureConnection","httpsProxy","process","env","HTTPS_PROXY","https_proxy","console","error","parsed","url","hostname","port","protocol","HttpsProxyAgent","HttpsAgent","getProxy","generateAmApi","resource","requestOverride","headers","apiVersion","Cookie","getCookieName","getCookieValue","requestDetails","baseURL","getTenant","getAuthenticationHeaderOverrides","proxy","request","create","generateOauth2Api","raw","generateIdmApi","getTenantURL","getBearerToken","generateLogKeysApi","generateLogApi","getLogApiKey","getLogApiSecret","generateESVApi"],"sources":["api/BaseApi.ts"],"sourcesContent":["import Agent from 'agentkeepalive';\nimport axios, { AxiosProxyConfig } from 'axios';\nimport axiosRetry from 'axios-retry';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport storage from '../storage/SessionStorage';\nimport { getTenantURL } from './utils/ApiUtils';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8')\n);\n\naxiosRetry(axios, {\n retries: 3,\n shouldResetTimeout: true,\n retryCondition: (_error) => true, // retry no matter what\n});\n\n// all agents\nconst timeout = 30000;\n\n// agentkeepalive\nconst maxSockets = 100;\nconst maxFreeSockets = 10;\nconst freeSocketTimeout = 30000;\n\nconst userAgent = `${pkg.name}/${pkg.version}`;\nlet httpAgent, httpsAgent;\n\nfunction getHttpAgent() {\n if (httpAgent) return httpAgent;\n httpAgent = new Agent({\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpAgent;\n}\n\n/**\n * Helper method to create properly configured httpsAgent\n * @returns {any} appropriate httpsAgent\n */\nfunction getHttpsAgent() {\n if (httpsAgent) return httpsAgent;\n const options = {\n rejectUnauthorized: !storage.session.getAllowInsecureConnection(),\n };\n const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;\n if (httpsProxy) {\n // https://github.com/axios/axios/issues/3459\n console.error(`Using proxy ${httpsProxy}`['yellow']);\n const parsed = url.parse(httpsProxy);\n options['host'] = parsed.hostname;\n options['port'] = parsed.port;\n options['protocol'] = parsed.protocol;\n options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();\n httpsAgent = HttpsProxyAgent(options);\n return httpsAgent;\n }\n httpsAgent = new Agent.HttpsAgent({\n ...options,\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpsAgent;\n}\n\n/**\n * Get Proxy config\n * @returns {AxiosProxyConfig | false} axios proxy config or false\n */\nfunction getProxy(): AxiosProxyConfig | false {\n if (process.env.HTTPS_PROXY || process.env.https_proxy) return false;\n return null;\n}\n\n/**\n * Generates an AM Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateAmApi(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json`,\n timeout,\n ...requestOverride,\n headers: {\n ...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 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 ...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 return request;\n}\n\n/**\n * Generates an IDM Axios API instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateIdmApi(requestOverride = {}) {\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers: {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n },\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a LogKeys API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogKeysApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a Log API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'X-API-Key': storage.session.getLogApiKey(),\n 'X-API-Secret': storage.session.getLogApiSecret(),\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an ESV Axios API instance for Environment Secrets and Variables\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateESVApi(resource, requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseApi.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","axiosRetry","axios","retries","shouldResetTimeout","retryCondition","_error","timeout","maxSockets","maxFreeSockets","freeSocketTimeout","userAgent","name","version","httpAgent","httpsAgent","getHttpAgent","Agent","getHttpsAgent","options","rejectUnauthorized","storage","session","getAllowInsecureConnection","httpsProxy","process","env","HTTPS_PROXY","https_proxy","console","error","parsed","url","hostname","port","protocol","HttpsProxyAgent","HttpsAgent","getProxy","generateAmApi","resource","requestOverride","headers","apiVersion","Cookie","getCookieName","getCookieValue","requestDetails","baseURL","getTenant","getAuthenticationHeaderOverrides","proxy","request","create","generateOauth2Api","raw","generateIdmApi","getTenantURL","getBearerToken","generateLogKeysApi","generateLogApi","getLogApiKey","getLogApiSecret","generateESVApi","generateReleaseApi","baseUrl"],"sources":["api/BaseApi.ts"],"sourcesContent":["import Agent from 'agentkeepalive';\nimport axios, { AxiosProxyConfig } from 'axios';\nimport axiosRetry from 'axios-retry';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport storage from '../storage/SessionStorage';\nimport { getTenantURL } from './utils/ApiUtils';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8')\n);\n\naxiosRetry(axios, {\n retries: 3,\n shouldResetTimeout: true,\n retryCondition: (_error) => true, // retry no matter what\n});\n\n// all agents\nconst timeout = 30000;\n\n// agentkeepalive\nconst maxSockets = 100;\nconst maxFreeSockets = 10;\nconst freeSocketTimeout = 30000;\n\nconst userAgent = `${pkg.name}/${pkg.version}`;\nlet httpAgent, httpsAgent;\n\nfunction getHttpAgent() {\n if (httpAgent) return httpAgent;\n httpAgent = new Agent({\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpAgent;\n}\n\n/**\n * Helper method to create properly configured httpsAgent\n * @returns {any} appropriate httpsAgent\n */\nfunction getHttpsAgent() {\n if (httpsAgent) return httpsAgent;\n const options = {\n rejectUnauthorized: !storage.session.getAllowInsecureConnection(),\n };\n const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;\n if (httpsProxy) {\n // https://github.com/axios/axios/issues/3459\n console.error(`Using proxy ${httpsProxy}`['yellow']);\n const parsed = url.parse(httpsProxy);\n options['host'] = parsed.hostname;\n options['port'] = parsed.port;\n options['protocol'] = parsed.protocol;\n options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();\n httpsAgent = HttpsProxyAgent(options);\n return httpsAgent;\n }\n httpsAgent = new Agent.HttpsAgent({\n ...options,\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpsAgent;\n}\n\n/**\n * Get Proxy config\n * @returns {AxiosProxyConfig | false} axios proxy config or false\n */\nfunction getProxy(): AxiosProxyConfig | false {\n if (process.env.HTTPS_PROXY || process.env.https_proxy) return false;\n return null;\n}\n\n/**\n * Generates an AM Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateAmApi(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json`,\n timeout,\n ...requestOverride,\n headers: {\n ...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 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 ...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 return request;\n}\n\n/**\n * Generates an IDM Axios API instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateIdmApi(requestOverride = {}) {\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers: {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n },\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a LogKeys API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogKeysApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a Log API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'X-API-Key': storage.session.getLogApiKey(),\n 'X-API-Secret': storage.session.getLogApiSecret(),\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an ESV Axios API instance for Environment Secrets and Variables\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateESVApi(resource, requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\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 return request;\n}\n"],"mappings":"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"}
|
package/cjs/index.js
CHANGED
|
@@ -3,49 +3,41 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.VariablesRaw = exports.Variables = exports.Utils = exports.TypesRaw = exports.Types = exports.TreeRaw = exports.ThemeRaw = exports.Theme = exports.StartupRaw = exports.Startup = exports.SecretsRaw = exports.Secrets = exports.Script = exports.Saml2 = exports.Realm = exports.Organization = exports.OAuth2OIDCApi = exports.OAuth2Client = exports.NodeRaw = exports.Node = exports.ManagedObject = exports.Log = exports.Journey = exports.Idp = exports.Idm = exports.EmailTemplate = exports.ConnectionProfile = exports.CirclesOfTrust = exports.Authenticate = exports.Admin = void 0;
|
|
7
|
-
exports.getVersion = getVersion;
|
|
8
|
-
exports.state = void 0;
|
|
9
|
-
|
|
10
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
11
|
-
|
|
12
|
-
var _path = _interopRequireDefault(require("path"));
|
|
13
|
-
|
|
14
|
-
var _url = require("url");
|
|
6
|
+
exports.state = exports.VariablesRaw = exports.Variables = exports.Utils = exports.TypesRaw = exports.Types = exports.TreeRaw = exports.ThemeRaw = exports.Theme = exports.StartupRaw = exports.Startup = exports.SecretsRaw = exports.Secrets = exports.Script = exports.Saml2 = exports.Realm = exports.Organization = exports.OAuth2OIDCApi = exports.OAuth2Client = exports.NodeRaw = exports.Node = exports.ManagedObject = exports.Log = exports.LibVersion = exports.Journey = exports.Idp = exports.Idm = exports.ExportImportUtils = exports.EmailTemplateRaw = exports.EmailTemplate = exports.ConnectionProfile = exports.CirclesOfTrust = exports.Authenticate = exports.Admin = void 0;
|
|
15
7
|
|
|
16
8
|
var _colors = _interopRequireDefault(require("colors"));
|
|
17
9
|
|
|
18
|
-
var
|
|
10
|
+
var _EmailTemplateRaw = _interopRequireWildcard(require("./api/EmailTemplateApi"));
|
|
19
11
|
|
|
20
|
-
exports.
|
|
12
|
+
exports.EmailTemplateRaw = _EmailTemplateRaw;
|
|
21
13
|
|
|
22
14
|
var _NodeRaw = _interopRequireWildcard(require("./api/NodeApi"));
|
|
23
15
|
|
|
24
16
|
exports.NodeRaw = _NodeRaw;
|
|
25
17
|
|
|
26
|
-
var
|
|
18
|
+
var _SecretsRaw = _interopRequireWildcard(require("./api/SecretsApi"));
|
|
27
19
|
|
|
28
|
-
exports.
|
|
20
|
+
exports.SecretsRaw = _SecretsRaw;
|
|
29
21
|
|
|
30
22
|
var _StartupRaw = _interopRequireWildcard(require("./api/StartupApi"));
|
|
31
23
|
|
|
32
24
|
exports.StartupRaw = _StartupRaw;
|
|
33
25
|
|
|
34
|
-
var
|
|
26
|
+
var _ThemeRaw = _interopRequireWildcard(require("./api/ThemeApi"));
|
|
35
27
|
|
|
36
|
-
exports.
|
|
28
|
+
exports.ThemeRaw = _ThemeRaw;
|
|
37
29
|
|
|
38
|
-
var
|
|
30
|
+
var _TreeRaw = _interopRequireWildcard(require("./api/TreeApi"));
|
|
39
31
|
|
|
40
|
-
exports.
|
|
32
|
+
exports.TreeRaw = _TreeRaw;
|
|
41
33
|
|
|
42
|
-
var
|
|
34
|
+
var _TypesRaw = _interopRequireWildcard(require("./api/ApiTypes"));
|
|
43
35
|
|
|
44
|
-
exports.
|
|
36
|
+
exports.TypesRaw = _TypesRaw;
|
|
45
37
|
|
|
46
|
-
var
|
|
38
|
+
var _VariablesRaw = _interopRequireWildcard(require("./api/VariablesApi"));
|
|
47
39
|
|
|
48
|
-
exports.
|
|
40
|
+
exports.VariablesRaw = _VariablesRaw;
|
|
49
41
|
|
|
50
42
|
var _Admin = _interopRequireWildcard(require("./ops/AdminOps"));
|
|
51
43
|
|
|
@@ -87,6 +79,10 @@ var _ManagedObject = _interopRequireWildcard(require("./ops/ManagedObjectOps"));
|
|
|
87
79
|
|
|
88
80
|
exports.ManagedObject = _ManagedObject;
|
|
89
81
|
|
|
82
|
+
var _Node = _interopRequireWildcard(require("./ops/NodeOps"));
|
|
83
|
+
|
|
84
|
+
exports.Node = _Node;
|
|
85
|
+
|
|
90
86
|
var _OAuth2Client = _interopRequireWildcard(require("./ops/OAuth2ClientOps"));
|
|
91
87
|
|
|
92
88
|
exports.OAuth2Client = _OAuth2Client;
|
|
@@ -95,10 +91,6 @@ var _Organization = _interopRequireWildcard(require("./ops/OrganizationOps"));
|
|
|
95
91
|
|
|
96
92
|
exports.Organization = _Organization;
|
|
97
93
|
|
|
98
|
-
var _Node = _interopRequireWildcard(require("./ops/NodeOps"));
|
|
99
|
-
|
|
100
|
-
exports.Node = _Node;
|
|
101
|
-
|
|
102
94
|
var _Realm = _interopRequireWildcard(require("./ops/RealmOps"));
|
|
103
95
|
|
|
104
96
|
exports.Realm = _Realm;
|
|
@@ -123,6 +115,10 @@ var _Theme = _interopRequireWildcard(require("./ops/ThemeOps"));
|
|
|
123
115
|
|
|
124
116
|
exports.Theme = _Theme;
|
|
125
117
|
|
|
118
|
+
var _Types = _interopRequireWildcard(require("./ops/OpsTypes"));
|
|
119
|
+
|
|
120
|
+
exports.Types = _Types;
|
|
121
|
+
|
|
126
122
|
var _Variables = _interopRequireWildcard(require("./ops/VariablesOps"));
|
|
127
123
|
|
|
128
124
|
exports.Variables = _Variables;
|
|
@@ -131,6 +127,14 @@ var _Utils = _interopRequireWildcard(require("./ops/utils/OpsUtils"));
|
|
|
131
127
|
|
|
132
128
|
exports.Utils = _Utils;
|
|
133
129
|
|
|
130
|
+
var _LibVersion = _interopRequireWildcard(require("./ops/utils/Version"));
|
|
131
|
+
|
|
132
|
+
exports.LibVersion = _LibVersion;
|
|
133
|
+
|
|
134
|
+
var _ExportImportUtils = _interopRequireWildcard(require("./ops/utils/ExportImportUtils"));
|
|
135
|
+
|
|
136
|
+
exports.ExportImportUtils = _ExportImportUtils;
|
|
137
|
+
|
|
134
138
|
var _state = _interopRequireWildcard(require("./storage/SessionStorage"));
|
|
135
139
|
|
|
136
140
|
exports.state = _state;
|
|
@@ -145,13 +149,5 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
145
149
|
|
|
146
150
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
147
151
|
|
|
148
|
-
_colors.default.enable();
|
|
149
|
-
|
|
150
|
-
var _dirname = _path.default.dirname((0, _url.fileURLToPath)(require('url').pathToFileURL(__filename).toString()));
|
|
151
|
-
|
|
152
|
-
var pkg = JSON.parse(_fs.default.readFileSync(_path.default.resolve(_dirname, '../package.json'), 'utf8'));
|
|
153
|
-
|
|
154
|
-
function getVersion() {
|
|
155
|
-
return "v".concat(pkg.version);
|
|
156
|
-
} // Api Layer
|
|
152
|
+
_colors.default.enable(); // Api Layer
|
|
157
153
|
//# sourceMappingURL=index.js.map
|
package/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Color","enable"
|
|
1
|
+
{"version":3,"file":"index.js","names":["Color","enable"],"sources":["index.ts"],"sourcesContent":["import Color from 'colors';\n\nColor.enable();\n\n// Api Layer\nexport * as EmailTemplateRaw from './api/EmailTemplateApi';\nexport * as NodeRaw from './api/NodeApi';\nexport * as SecretsRaw from './api/SecretsApi';\nexport * as StartupRaw from './api/StartupApi';\nexport * as ThemeRaw from './api/ThemeApi';\nexport * as TreeRaw from './api/TreeApi';\nexport * as TypesRaw from './api/ApiTypes';\nexport * as VariablesRaw from './api/VariablesApi';\n\n// Ops Layer\nexport * as Admin from './ops/AdminOps';\nexport * as Authenticate from './ops/AuthenticateOps';\nexport * as CirclesOfTrust from './ops/CirclesOfTrustOps';\nexport * as ConnectionProfile from './ops/ConnectionProfileOps';\nexport * as EmailTemplate from './ops/EmailTemplateOps';\nexport * as Idm from './ops/IdmOps';\nexport * as Idp from './ops/IdpOps';\nexport * as Journey from './ops/JourneyOps';\nexport * as Log from './ops/LogOps';\nexport * as ManagedObject from './ops/ManagedObjectOps';\nexport * as Node from './ops/NodeOps';\nexport * as OAuth2Client from './ops/OAuth2ClientOps';\nexport * as Organization from './ops/OrganizationOps';\nexport * as Realm from './ops/RealmOps';\nexport * as Saml2 from './ops/Saml2Ops';\nexport * as Script from './ops/ScriptOps';\nexport * as Secrets from './ops/SecretsOps';\nexport * as Startup from './ops/StartupOps';\nexport * as Theme from './ops/ThemeOps';\nexport * as Types from './ops/OpsTypes';\nexport * as Variables from './ops/VariablesOps';\n// TODO: revisit if there are better ways\nexport * as Utils from './ops/utils/OpsUtils';\nexport * as LibVersion from './ops/utils/Version';\nexport * as ExportImportUtils from './ops/utils/ExportImportUtils';\n// TODO: reconsider the aproach to pass in state from client\n// lib should be stateless, an aplication should own its state\nexport * as state from './storage/SessionStorage';\n// TODO: need to figure out if this is the right approach or if we should even\n// use a public oauth2/oidc library. might be ok for now since there is only\n// one place where the cli needs to execute an oauth flow.\nexport * as OAuth2OIDCApi from './api/OAuth2OIDCApi';\n"],"mappings":";;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEAA,eAAA,CAAMC,MAAN,G,CAEA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getAllVersions = getAllVersions;
|
|
7
|
+
exports.getVersion = getVersion;
|
|
8
|
+
|
|
9
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
10
|
+
|
|
11
|
+
var _path = _interopRequireDefault(require("path"));
|
|
12
|
+
|
|
13
|
+
var _BaseApi = require("../../api/BaseApi");
|
|
14
|
+
|
|
15
|
+
var _url = require("url");
|
|
16
|
+
|
|
17
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
|
+
|
|
19
|
+
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); } }
|
|
20
|
+
|
|
21
|
+
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); }); }; }
|
|
22
|
+
|
|
23
|
+
var _dirname = _path.default.dirname((0, _url.fileURLToPath)(require('url').pathToFileURL(__filename).toString()));
|
|
24
|
+
|
|
25
|
+
var pkg = JSON.parse(_fs.default.readFileSync(_path.default.resolve(_dirname, '../../../package.json'), 'utf8')); // const userAgent = `${pkg.name}/${pkg.version}`;
|
|
26
|
+
|
|
27
|
+
function getVersion() {
|
|
28
|
+
return "".concat(pkg.version);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function getAllVersions(_x) {
|
|
32
|
+
return _getAllVersions.apply(this, arguments);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function _getAllVersions() {
|
|
36
|
+
_getAllVersions = _asyncToGenerator(function* (endpoints) {
|
|
37
|
+
var reqPromises = [];
|
|
38
|
+
endpoints.forEach(item => {
|
|
39
|
+
reqPromises.push((0, _BaseApi.generateReleaseApi)(item.base).get(item.path));
|
|
40
|
+
});
|
|
41
|
+
var result = yield Promise.allSettled(reqPromises);
|
|
42
|
+
return result;
|
|
43
|
+
});
|
|
44
|
+
return _getAllVersions.apply(this, arguments);
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=Version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Version.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","getVersion","version","getAllVersions","endpoints","reqPromises","forEach","item","push","generateReleaseApi","base","get","result","Promise","allSettled"],"sources":["ops/utils/Version.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { generateReleaseApi } from '../../api/BaseApi';\n\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// const userAgent = `${pkg.name}/${pkg.version}`;\n\nexport function getVersion() {\n return `${pkg.version}`;\n}\n\nexport async function getAllVersions(endpoints) {\n const reqPromises = [];\n endpoints.forEach((item) => {\n reqPromises.push(generateReleaseApi(item.base).get(item.path));\n });\n const result = await Promise.allSettled(reqPromises);\n return result;\n}\n"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;AAEA;;;;;;;;AAEA,IAAMA,QAAS,GAAGC,aAAA,CAAKC,OAAL,CAAa,IAAAC,kBAAA,sDAAb,CAAlB;;AAEA,IAAMC,GAAG,GAAGC,IAAI,CAACC,KAAL,CACVC,WAAA,CAAGC,YAAH,CAAgBP,aAAA,CAAKQ,OAAL,CAAaT,QAAb,EAAwB,uBAAxB,CAAhB,EAAkE,MAAlE,CADU,CAAZ,C,CAGA;;AAEO,SAASU,UAAT,GAAsB;EAC3B,iBAAUN,GAAG,CAACO,OAAd;AACD;;SAEqBC,c;;;;;sCAAf,WAA8BC,SAA9B,EAAyC;IAC9C,IAAMC,WAAW,GAAG,EAApB;IACAD,SAAS,CAACE,OAAV,CAAmBC,IAAD,IAAU;MAC1BF,WAAW,CAACG,IAAZ,CAAiB,IAAAC,2BAAA,EAAmBF,IAAI,CAACG,IAAxB,EAA8BC,GAA9B,CAAkCJ,IAAI,CAACf,IAAvC,CAAjB;IACD,CAFD;IAGA,IAAMoB,MAAM,SAASC,OAAO,CAACC,UAAR,CAAmBT,WAAnB,CAArB;IACA,OAAOO,MAAP;EACD,C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Version.test.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","describe","test","result","getVersion","expect","toEqual","version"],"sources":["ops/utils/Version.test.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { getVersion } from './Version';\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\ndescribe('index', () => {\n test('get library version', () => {\n const result = getVersion();\n expect(result).toEqual(`${pkg.version}`);\n });\n});\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,QAAS,GAAGC,aAAA,CAAKC,OAAL,CAAa,IAAAC,kBAAA,sDAAb,CAAlB;;AAEA,IAAMC,GAAG,GAAGC,IAAI,CAACC,KAAL,CACVC,WAAA,CAAGC,YAAH,CAAgBP,aAAA,CAAKQ,OAAL,CAAaT,QAAb,EAAwB,uBAAxB,CAAhB,EAAkE,MAAlE,CADU,CAAZ;AAIAU,QAAQ,CAAC,OAAD,EAAU,MAAM;EACtBC,IAAI,CAAC,qBAAD,EAAwB,MAAM;IAChC,IAAMC,MAAM,GAAG,IAAAC,mBAAA,GAAf;IACAC,MAAM,CAACF,MAAD,CAAN,CAAeG,OAAf,WAA0BX,GAAG,CAACY,OAA9B;EACD,CAHG,CAAJ;AAID,CALO,CAAR"}
|
package/esm/api/BaseApi.mjs
CHANGED
|
@@ -270,4 +270,28 @@ export function generateESVApi(resource, requestOverride = {}) {
|
|
|
270
270
|
const request = axios.create(requestDetails);
|
|
271
271
|
return request;
|
|
272
272
|
}
|
|
273
|
+
/**
|
|
274
|
+
* Generates a release (Github or Npm) Axios API instance
|
|
275
|
+
* @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add
|
|
276
|
+
* on extra information or override default properties https://github.com/axios/axios#request-config
|
|
277
|
+
*
|
|
278
|
+
* @returns {AxiosInstance}
|
|
279
|
+
*/
|
|
280
|
+
|
|
281
|
+
export function generateReleaseApi(baseUrl, requestOverride = {}) {
|
|
282
|
+
const requestDetails = {
|
|
283
|
+
baseURL: baseUrl,
|
|
284
|
+
timeout,
|
|
285
|
+
headers: {
|
|
286
|
+
'User-Agent': userAgent,
|
|
287
|
+
'Content-Type': 'application/json'
|
|
288
|
+
},
|
|
289
|
+
...requestOverride,
|
|
290
|
+
httpAgent: getHttpAgent(),
|
|
291
|
+
httpsAgent: getHttpsAgent(),
|
|
292
|
+
proxy: getProxy()
|
|
293
|
+
};
|
|
294
|
+
const request = axios.create(requestDetails);
|
|
295
|
+
return request;
|
|
296
|
+
}
|
|
273
297
|
//# sourceMappingURL=BaseApi.js.map
|
package/esm/index.mjs
CHANGED
|
@@ -1,25 +1,15 @@
|
|
|
1
|
-
import fs from 'fs';
|
|
2
|
-
import path from 'path';
|
|
3
|
-
import { fileURLToPath } from 'url';
|
|
4
1
|
import Color from 'colors';
|
|
5
|
-
Color.enable();
|
|
2
|
+
Color.enable(); // Api Layer
|
|
6
3
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const pkg = JSON.parse(fs.readFileSync(path.resolve(__dirname, '../package.json'), 'utf8'));
|
|
10
|
-
export function getVersion() {
|
|
11
|
-
return `v${pkg.version}`;
|
|
12
|
-
} // Api Layer
|
|
13
|
-
|
|
14
|
-
export * as TypesRaw from './api/ApiTypes';
|
|
4
|
+
export * as EmailTemplateRaw from './api/EmailTemplateApi';
|
|
15
5
|
export * as NodeRaw from './api/NodeApi';
|
|
16
|
-
export * as TreeRaw from './api/TreeApi';
|
|
17
|
-
export * as StartupRaw from './api/StartupApi';
|
|
18
6
|
export * as SecretsRaw from './api/SecretsApi';
|
|
19
|
-
export * as
|
|
20
|
-
export * as ThemeRaw from './api/ThemeApi';
|
|
7
|
+
export * as StartupRaw from './api/StartupApi';
|
|
8
|
+
export * as ThemeRaw from './api/ThemeApi';
|
|
9
|
+
export * as TreeRaw from './api/TreeApi';
|
|
10
|
+
export * as TypesRaw from './api/ApiTypes';
|
|
11
|
+
export * as VariablesRaw from './api/VariablesApi'; // Ops Layer
|
|
21
12
|
|
|
22
|
-
export * as Types from './ops/OpsTypes';
|
|
23
13
|
export * as Admin from './ops/AdminOps';
|
|
24
14
|
export * as Authenticate from './ops/AuthenticateOps';
|
|
25
15
|
export * as CirclesOfTrust from './ops/CirclesOfTrustOps';
|
|
@@ -30,18 +20,21 @@ export * as Idp from './ops/IdpOps';
|
|
|
30
20
|
export * as Journey from './ops/JourneyOps';
|
|
31
21
|
export * as Log from './ops/LogOps';
|
|
32
22
|
export * as ManagedObject from './ops/ManagedObjectOps';
|
|
23
|
+
export * as Node from './ops/NodeOps';
|
|
33
24
|
export * as OAuth2Client from './ops/OAuth2ClientOps';
|
|
34
25
|
export * as Organization from './ops/OrganizationOps';
|
|
35
|
-
export * as Node from './ops/NodeOps';
|
|
36
26
|
export * as Realm from './ops/RealmOps';
|
|
37
27
|
export * as Saml2 from './ops/Saml2Ops';
|
|
38
28
|
export * as Script from './ops/ScriptOps';
|
|
39
29
|
export * as Secrets from './ops/SecretsOps';
|
|
40
30
|
export * as Startup from './ops/StartupOps';
|
|
41
31
|
export * as Theme from './ops/ThemeOps';
|
|
32
|
+
export * as Types from './ops/OpsTypes';
|
|
42
33
|
export * as Variables from './ops/VariablesOps'; // TODO: revisit if there are better ways
|
|
43
34
|
|
|
44
|
-
export * as Utils from './ops/utils/OpsUtils';
|
|
35
|
+
export * as Utils from './ops/utils/OpsUtils';
|
|
36
|
+
export * as LibVersion from './ops/utils/Version';
|
|
37
|
+
export * as ExportImportUtils from './ops/utils/ExportImportUtils'; // TODO: reconsider the aproach to pass in state from client
|
|
45
38
|
// lib should be stateless, an aplication should own its state
|
|
46
39
|
|
|
47
40
|
export * as state from './storage/SessionStorage'; // TODO: need to figure out if this is the right approach or if we should even
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { generateReleaseApi } from '../../api/BaseApi';
|
|
4
|
+
import { fileURLToPath } from 'url';
|
|
5
|
+
|
|
6
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
7
|
+
|
|
8
|
+
const pkg = JSON.parse(fs.readFileSync(path.resolve(__dirname, '../../../package.json'), 'utf8')); // const userAgent = `${pkg.name}/${pkg.version}`;
|
|
9
|
+
|
|
10
|
+
export function getVersion() {
|
|
11
|
+
return `${pkg.version}`;
|
|
12
|
+
}
|
|
13
|
+
export async function getAllVersions(endpoints) {
|
|
14
|
+
const reqPromises = [];
|
|
15
|
+
endpoints.forEach(item => {
|
|
16
|
+
reqPromises.push(generateReleaseApi(item.base).get(item.path));
|
|
17
|
+
});
|
|
18
|
+
const result = await Promise.allSettled(reqPromises);
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=Version.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
|
-
import { getVersion } from '
|
|
3
|
+
import { getVersion } from './Version';
|
|
4
4
|
import { fileURLToPath } from 'url';
|
|
5
5
|
|
|
6
6
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
7
7
|
|
|
8
|
-
const pkg = JSON.parse(fs.readFileSync(path.resolve(__dirname, '
|
|
8
|
+
const pkg = JSON.parse(fs.readFileSync(path.resolve(__dirname, '../../../package.json'), 'utf8'));
|
|
9
9
|
describe('index', () => {
|
|
10
10
|
test('get library version', () => {
|
|
11
11
|
const result = getVersion();
|
|
12
|
-
expect(result).toEqual(
|
|
12
|
+
expect(result).toEqual(`${pkg.version}`);
|
|
13
13
|
});
|
|
14
14
|
});
|
|
15
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=Version.test.js.map
|
package/package.json
CHANGED
package/types/api/BaseApi.d.ts
CHANGED
|
@@ -48,3 +48,11 @@ export declare function generateLogApi(requestOverride?: {}): import("axios").Ax
|
|
|
48
48
|
* @returns {AxiosInstance}
|
|
49
49
|
*/
|
|
50
50
|
export declare function generateESVApi(resource: any, requestOverride?: {}): import("axios").AxiosInstance;
|
|
51
|
+
/**
|
|
52
|
+
* Generates a release (Github or Npm) Axios API instance
|
|
53
|
+
* @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add
|
|
54
|
+
* on extra information or override default properties https://github.com/axios/axios#request-config
|
|
55
|
+
*
|
|
56
|
+
* @returns {AxiosInstance}
|
|
57
|
+
*/
|
|
58
|
+
export declare function generateReleaseApi(baseUrl: any, requestOverride?: {}): import("axios").AxiosInstance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/api/BaseApi.ts"],"names":[],"mappings":"AAqFA;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,QAAQ,KAAA,EAAE,eAAe,KAAK,iCA8B3D;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,KAAA,EAAE,eAAe,KAAK,iCA6B/D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,eAAe,KAAK,iCAuBlD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,eAAe,KAAK,iCAwBtD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,eAAe,KAAK,iCAmBlD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,KAAA,EAAE,eAAe,KAAK,iCAyB5D","file":"BaseApi.d.ts","sourcesContent":["import Agent from 'agentkeepalive';\nimport axios, { AxiosProxyConfig } from 'axios';\nimport axiosRetry from 'axios-retry';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport storage from '../storage/SessionStorage';\nimport { getTenantURL } from './utils/ApiUtils';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8')\n);\n\naxiosRetry(axios, {\n retries: 3,\n shouldResetTimeout: true,\n retryCondition: (_error) => true, // retry no matter what\n});\n\n// all agents\nconst timeout = 30000;\n\n// agentkeepalive\nconst maxSockets = 100;\nconst maxFreeSockets = 10;\nconst freeSocketTimeout = 30000;\n\nconst userAgent = `${pkg.name}/${pkg.version}`;\nlet httpAgent, httpsAgent;\n\nfunction getHttpAgent() {\n if (httpAgent) return httpAgent;\n httpAgent = new Agent({\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpAgent;\n}\n\n/**\n * Helper method to create properly configured httpsAgent\n * @returns {any} appropriate httpsAgent\n */\nfunction getHttpsAgent() {\n if (httpsAgent) return httpsAgent;\n const options = {\n rejectUnauthorized: !storage.session.getAllowInsecureConnection(),\n };\n const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;\n if (httpsProxy) {\n // https://github.com/axios/axios/issues/3459\n console.error(`Using proxy ${httpsProxy}`['yellow']);\n const parsed = url.parse(httpsProxy);\n options['host'] = parsed.hostname;\n options['port'] = parsed.port;\n options['protocol'] = parsed.protocol;\n options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();\n httpsAgent = HttpsProxyAgent(options);\n return httpsAgent;\n }\n httpsAgent = new Agent.HttpsAgent({\n ...options,\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpsAgent;\n}\n\n/**\n * Get Proxy config\n * @returns {AxiosProxyConfig | false} axios proxy config or false\n */\nfunction getProxy(): AxiosProxyConfig | false {\n if (process.env.HTTPS_PROXY || process.env.https_proxy) return false;\n return null;\n}\n\n/**\n * Generates an AM Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateAmApi(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json`,\n timeout,\n ...requestOverride,\n headers: {\n ...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 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 ...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 return request;\n}\n\n/**\n * Generates an IDM Axios API instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateIdmApi(requestOverride = {}) {\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers: {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n },\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a LogKeys API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogKeysApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a Log API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'X-API-Key': storage.session.getLogApiKey(),\n 'X-API-Secret': storage.session.getLogApiSecret(),\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an ESV Axios API instance for Environment Secrets and Variables\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateESVApi(resource, requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/api/BaseApi.ts"],"names":[],"mappings":"AAqFA;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,QAAQ,KAAA,EAAE,eAAe,KAAK,iCA8B3D;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,KAAA,EAAE,eAAe,KAAK,iCA6B/D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,eAAe,KAAK,iCAuBlD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,eAAe,KAAK,iCAwBtD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,eAAe,KAAK,iCAmBlD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,KAAA,EAAE,eAAe,KAAK,iCAyB5D;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,KAAA,EAAE,eAAe,KAAK,iCAiB/D","file":"BaseApi.d.ts","sourcesContent":["import Agent from 'agentkeepalive';\nimport axios, { AxiosProxyConfig } from 'axios';\nimport axiosRetry from 'axios-retry';\nimport HttpsProxyAgent from 'https-proxy-agent';\nimport url from 'url';\nimport fs from 'fs';\nimport storage from '../storage/SessionStorage';\nimport { getTenantURL } from './utils/ApiUtils';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../../package.json'), 'utf8')\n);\n\naxiosRetry(axios, {\n retries: 3,\n shouldResetTimeout: true,\n retryCondition: (_error) => true, // retry no matter what\n});\n\n// all agents\nconst timeout = 30000;\n\n// agentkeepalive\nconst maxSockets = 100;\nconst maxFreeSockets = 10;\nconst freeSocketTimeout = 30000;\n\nconst userAgent = `${pkg.name}/${pkg.version}`;\nlet httpAgent, httpsAgent;\n\nfunction getHttpAgent() {\n if (httpAgent) return httpAgent;\n httpAgent = new Agent({\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpAgent;\n}\n\n/**\n * Helper method to create properly configured httpsAgent\n * @returns {any} appropriate httpsAgent\n */\nfunction getHttpsAgent() {\n if (httpsAgent) return httpsAgent;\n const options = {\n rejectUnauthorized: !storage.session.getAllowInsecureConnection(),\n };\n const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;\n if (httpsProxy) {\n // https://github.com/axios/axios/issues/3459\n console.error(`Using proxy ${httpsProxy}`['yellow']);\n const parsed = url.parse(httpsProxy);\n options['host'] = parsed.hostname;\n options['port'] = parsed.port;\n options['protocol'] = parsed.protocol;\n options.rejectUnauthorized = !storage.session.getAllowInsecureConnection();\n httpsAgent = HttpsProxyAgent(options);\n return httpsAgent;\n }\n httpsAgent = new Agent.HttpsAgent({\n ...options,\n maxSockets,\n maxFreeSockets,\n timeout,\n freeSocketTimeout,\n });\n return httpsAgent;\n}\n\n/**\n * Get Proxy config\n * @returns {AxiosProxyConfig | false} axios proxy config or false\n */\nfunction getProxy(): AxiosProxyConfig | false {\n if (process.env.HTTPS_PROXY || process.env.https_proxy) return false;\n return null;\n}\n\n/**\n * Generates an AM Axios API instance\n * @param {object} resource Takes an object takes a resource object. example:\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either\n * add on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateAmApi(resource, requestOverride = {}) {\n let headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n Cookie: `${storage.session.getCookieName()}=${storage.session.getCookieValue()}`,\n };\n if (requestOverride['headers']) {\n headers = {\n ...headers,\n ...requestOverride['headers'],\n };\n }\n\n const requestDetails = {\n baseURL: `${storage.session.getTenant()}/json`,\n timeout,\n ...requestOverride,\n headers: {\n ...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 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 ...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 return request;\n}\n\n/**\n * Generates an IDM Axios API instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateIdmApi(requestOverride = {}) {\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers: {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n },\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a LogKeys API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogKeysApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates a Log API Axios instance\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateLogApi(requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'X-API-Key': storage.session.getLogApiKey(),\n 'X-API-Secret': storage.session.getLogApiSecret(),\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\n/**\n * Generates an ESV Axios API instance for Environment Secrets and Variables\n * @param {object} requestOverride Takes an object of AXIOS parameters that can be used to either add\n * on extra information or override default properties https://github.com/axios/axios#request-config\n *\n * @returns {AxiosInstance}\n */\nexport function generateESVApi(resource, requestOverride = {}) {\n const headers = {\n 'User-Agent': userAgent,\n 'Content-Type': 'application/json',\n 'Accept-API-Version': resource.apiVersion,\n };\n const requestDetails = {\n baseURL: getTenantURL(storage.session.getTenant()),\n timeout,\n headers,\n ...requestOverride,\n httpAgent: getHttpAgent(),\n httpsAgent: getHttpsAgent(),\n proxy: getProxy(),\n };\n\n if (storage.session.getBearerToken()) {\n requestDetails.headers[\n 'Authorization'\n ] = `Bearer ${storage.session.getBearerToken()}`;\n }\n\n const request = axios.create(requestDetails);\n\n return request;\n}\n\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 return request;\n}\n"]}
|
package/types/index.d.ts
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
export
|
|
2
|
-
export * as TypesRaw from './api/ApiTypes';
|
|
1
|
+
export * as EmailTemplateRaw from './api/EmailTemplateApi';
|
|
3
2
|
export * as NodeRaw from './api/NodeApi';
|
|
4
|
-
export * as TreeRaw from './api/TreeApi';
|
|
5
|
-
export * as StartupRaw from './api/StartupApi';
|
|
6
3
|
export * as SecretsRaw from './api/SecretsApi';
|
|
7
|
-
export * as
|
|
4
|
+
export * as StartupRaw from './api/StartupApi';
|
|
8
5
|
export * as ThemeRaw from './api/ThemeApi';
|
|
9
|
-
export * as
|
|
6
|
+
export * as TreeRaw from './api/TreeApi';
|
|
7
|
+
export * as TypesRaw from './api/ApiTypes';
|
|
8
|
+
export * as VariablesRaw from './api/VariablesApi';
|
|
10
9
|
export * as Admin from './ops/AdminOps';
|
|
11
10
|
export * as Authenticate from './ops/AuthenticateOps';
|
|
12
11
|
export * as CirclesOfTrust from './ops/CirclesOfTrustOps';
|
|
@@ -17,16 +16,19 @@ export * as Idp from './ops/IdpOps';
|
|
|
17
16
|
export * as Journey from './ops/JourneyOps';
|
|
18
17
|
export * as Log from './ops/LogOps';
|
|
19
18
|
export * as ManagedObject from './ops/ManagedObjectOps';
|
|
19
|
+
export * as Node from './ops/NodeOps';
|
|
20
20
|
export * as OAuth2Client from './ops/OAuth2ClientOps';
|
|
21
21
|
export * as Organization from './ops/OrganizationOps';
|
|
22
|
-
export * as Node from './ops/NodeOps';
|
|
23
22
|
export * as Realm from './ops/RealmOps';
|
|
24
23
|
export * as Saml2 from './ops/Saml2Ops';
|
|
25
24
|
export * as Script from './ops/ScriptOps';
|
|
26
25
|
export * as Secrets from './ops/SecretsOps';
|
|
27
26
|
export * as Startup from './ops/StartupOps';
|
|
28
27
|
export * as Theme from './ops/ThemeOps';
|
|
28
|
+
export * as Types from './ops/OpsTypes';
|
|
29
29
|
export * as Variables from './ops/VariablesOps';
|
|
30
30
|
export * as Utils from './ops/utils/OpsUtils';
|
|
31
|
+
export * as LibVersion from './ops/utils/Version';
|
|
32
|
+
export * as ExportImportUtils from './ops/utils/ExportImportUtils';
|
|
31
33
|
export * as state from './storage/SessionStorage';
|
|
32
34
|
export * as OAuth2OIDCApi from './api/OAuth2OIDCApi';
|
package/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AAGnD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,iBAAiB,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,iBAAiB,MAAM,+BAA+B,CAAC;AAGnE,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAIlD,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC","file":"index.d.ts","sourcesContent":["import Color from 'colors';\n\nColor.enable();\n\n// Api Layer\nexport * as EmailTemplateRaw from './api/EmailTemplateApi';\nexport * as NodeRaw from './api/NodeApi';\nexport * as SecretsRaw from './api/SecretsApi';\nexport * as StartupRaw from './api/StartupApi';\nexport * as ThemeRaw from './api/ThemeApi';\nexport * as TreeRaw from './api/TreeApi';\nexport * as TypesRaw from './api/ApiTypes';\nexport * as VariablesRaw from './api/VariablesApi';\n\n// Ops Layer\nexport * as Admin from './ops/AdminOps';\nexport * as Authenticate from './ops/AuthenticateOps';\nexport * as CirclesOfTrust from './ops/CirclesOfTrustOps';\nexport * as ConnectionProfile from './ops/ConnectionProfileOps';\nexport * as EmailTemplate from './ops/EmailTemplateOps';\nexport * as Idm from './ops/IdmOps';\nexport * as Idp from './ops/IdpOps';\nexport * as Journey from './ops/JourneyOps';\nexport * as Log from './ops/LogOps';\nexport * as ManagedObject from './ops/ManagedObjectOps';\nexport * as Node from './ops/NodeOps';\nexport * as OAuth2Client from './ops/OAuth2ClientOps';\nexport * as Organization from './ops/OrganizationOps';\nexport * as Realm from './ops/RealmOps';\nexport * as Saml2 from './ops/Saml2Ops';\nexport * as Script from './ops/ScriptOps';\nexport * as Secrets from './ops/SecretsOps';\nexport * as Startup from './ops/StartupOps';\nexport * as Theme from './ops/ThemeOps';\nexport * as Types from './ops/OpsTypes';\nexport * as Variables from './ops/VariablesOps';\n// TODO: revisit if there are better ways\nexport * as Utils from './ops/utils/OpsUtils';\nexport * as LibVersion from './ops/utils/Version';\nexport * as ExportImportUtils from './ops/utils/ExportImportUtils';\n// TODO: reconsider the aproach to pass in state from client\n// lib should be stateless, an aplication should own its state\nexport * as state from './storage/SessionStorage';\n// TODO: need to figure out if this is the right approach or if we should even\n// use a public oauth2/oidc library. might be ok for now since there is only\n// one place where the cli needs to execute an oauth flow.\nexport * as OAuth2OIDCApi from './api/OAuth2OIDCApi';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ops/utils/Version.ts"],"names":[],"mappings":"AAaA,wBAAgB,UAAU,WAEzB;AAED,wBAAsB,cAAc,CAAC,SAAS,KAAA,wCAO7C","file":"Version.d.ts","sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { generateReleaseApi } from '../../api/BaseApi';\n\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// const userAgent = `${pkg.name}/${pkg.version}`;\n\nexport function getVersion() {\n return `${pkg.version}`;\n}\n\nexport async function getAllVersions(endpoints) {\n const reqPromises = [];\n endpoints.forEach((item) => {\n reqPromises.push(generateReleaseApi(item.base).get(item.path));\n });\n const result = await Promise.allSettled(reqPromises);\n return result;\n}\n"]}
|
package/cjs/index.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","describe","test","result","getVersion","expect","toEqual","version"],"sources":["index.test.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { getVersion } from '.';\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\ndescribe('index', () => {\n test('get library version', () => {\n const result = getVersion();\n expect(result).toEqual(`v${pkg.version}`);\n });\n});\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,QAAS,GAAGC,aAAA,CAAKC,OAAL,CAAa,IAAAC,kBAAA,sDAAb,CAAlB;;AAEA,IAAMC,GAAG,GAAGC,IAAI,CAACC,KAAL,CACVC,WAAA,CAAGC,YAAH,CAAgBP,aAAA,CAAKQ,OAAL,CAAaT,QAAb,EAAwB,iBAAxB,CAAhB,EAA4D,MAA5D,CADU,CAAZ;AAIAU,QAAQ,CAAC,OAAD,EAAU,MAAM;EACtBC,IAAI,CAAC,qBAAD,EAAwB,MAAM;IAChC,IAAMC,MAAM,GAAG,IAAAC,YAAA,GAAf;IACAC,MAAM,CAACF,MAAD,CAAN,CAAeG,OAAf,YAA2BX,GAAG,CAACY,OAA/B;EACD,CAHG,CAAJ;AAID,CALO,CAAR"}
|