@webex/webex-core 2.60.0-next.8 → 2.60.1
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/dist/config.js +2 -1
- package/dist/config.js.map +1 -1
- package/dist/credentials-config.js +2 -1
- package/dist/credentials-config.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/interceptors/auth.js +3 -4
- package/dist/interceptors/auth.js.map +1 -1
- package/dist/interceptors/default-options.js +3 -4
- package/dist/interceptors/default-options.js.map +1 -1
- package/dist/interceptors/embargo.js +3 -4
- package/dist/interceptors/embargo.js.map +1 -1
- package/dist/interceptors/network-timing.js +3 -4
- package/dist/interceptors/network-timing.js.map +1 -1
- package/dist/interceptors/payload-transformer.js +3 -4
- package/dist/interceptors/payload-transformer.js.map +1 -1
- package/dist/interceptors/rate-limit.js +3 -4
- package/dist/interceptors/rate-limit.js.map +1 -1
- package/dist/interceptors/redirect.js +6 -7
- package/dist/interceptors/redirect.js.map +1 -1
- package/dist/interceptors/request-event.js +8 -9
- package/dist/interceptors/request-event.js.map +1 -1
- package/dist/interceptors/request-logger.js +15 -12
- package/dist/interceptors/request-logger.js.map +1 -1
- package/dist/interceptors/request-timing.js +3 -4
- package/dist/interceptors/request-timing.js.map +1 -1
- package/dist/interceptors/response-logger.js +10 -10
- package/dist/interceptors/response-logger.js.map +1 -1
- package/dist/interceptors/user-agent.js +7 -8
- package/dist/interceptors/user-agent.js.map +1 -1
- package/dist/interceptors/webex-tracking-id.js +3 -4
- package/dist/interceptors/webex-tracking-id.js.map +1 -1
- package/dist/interceptors/webex-user-agent.js +8 -9
- package/dist/interceptors/webex-user-agent.js.map +1 -1
- package/dist/lib/batcher.js +5 -8
- package/dist/lib/batcher.js.map +1 -1
- package/dist/lib/credentials/credentials.js +35 -73
- package/dist/lib/credentials/credentials.js.map +1 -1
- package/dist/lib/credentials/grant-errors.js +5 -5
- package/dist/lib/credentials/grant-errors.js.map +1 -1
- package/dist/lib/credentials/scope.js +2 -21
- package/dist/lib/credentials/scope.js.map +1 -1
- package/dist/lib/credentials/token-collection.js +2 -1
- package/dist/lib/credentials/token-collection.js.map +1 -1
- package/dist/lib/credentials/token.js +10 -11
- package/dist/lib/credentials/token.js.map +1 -1
- package/dist/lib/page.js +2 -1
- package/dist/lib/page.js.map +1 -1
- package/dist/lib/services/constants.js +6 -3
- package/dist/lib/services/constants.js.map +1 -1
- package/dist/lib/services/index.js +2 -2
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/interceptors/server-error.js +3 -4
- package/dist/lib/services/interceptors/server-error.js.map +1 -1
- package/dist/lib/services/interceptors/service.js +5 -8
- package/dist/lib/services/interceptors/service.js.map +1 -1
- package/dist/lib/services/metrics.js +2 -1
- package/dist/lib/services/metrics.js.map +1 -1
- package/dist/lib/services/service-catalog.js +5 -5
- package/dist/lib/services/service-catalog.js.map +1 -1
- package/dist/lib/services/service-fed-ramp.js +2 -1
- package/dist/lib/services/service-fed-ramp.js.map +1 -1
- package/dist/lib/services/service-host.js +2 -1
- package/dist/lib/services/service-host.js.map +1 -1
- package/dist/lib/services/service-registry.js +4 -3
- package/dist/lib/services/service-registry.js.map +1 -1
- package/dist/lib/services/service-state.js +2 -1
- package/dist/lib/services/service-state.js.map +1 -1
- package/dist/lib/services/service-url.js +2 -1
- package/dist/lib/services/service-url.js.map +1 -1
- package/dist/lib/services/services.js +9 -7
- package/dist/lib/services/services.js.map +1 -1
- package/dist/lib/stateless-webex-plugin.js +2 -1
- package/dist/lib/stateless-webex-plugin.js.map +1 -1
- package/dist/lib/storage/decorators.js +16 -18
- package/dist/lib/storage/decorators.js.map +1 -1
- package/dist/lib/storage/errors.js +5 -5
- package/dist/lib/storage/errors.js.map +1 -1
- package/dist/lib/storage/make-webex-plugin-store.js +10 -8
- package/dist/lib/storage/make-webex-plugin-store.js.map +1 -1
- package/dist/lib/storage/make-webex-store.js.map +1 -1
- package/dist/lib/storage/memory-store-adapter.js +2 -1
- package/dist/lib/storage/memory-store-adapter.js.map +1 -1
- package/dist/lib/webex-core-plugin-mixin.js +14 -13
- package/dist/lib/webex-core-plugin-mixin.js.map +1 -1
- package/dist/lib/webex-http-error.js +3 -4
- package/dist/lib/webex-http-error.js.map +1 -1
- package/dist/lib/webex-internal-core-plugin-mixin.js +14 -13
- package/dist/lib/webex-internal-core-plugin-mixin.js.map +1 -1
- package/dist/lib/webex-plugin.js +8 -5
- package/dist/lib/webex-plugin.js.map +1 -1
- package/dist/plugins/logger.js +3 -2
- package/dist/plugins/logger.js.map +1 -1
- package/dist/webex-core.js +38 -37
- package/dist/webex-core.js.map +1 -1
- package/dist/webex-internal-core.js +2 -1
- package/dist/webex-internal-core.js.map +1 -1
- package/package.json +20 -21
- package/src/lib/credentials/credentials.js +40 -82
- package/src/lib/credentials/scope.js +2 -19
- package/src/lib/services/interceptors/service.js +2 -2
- package/src/lib/services/service-catalog.js +1 -3
- package/src/lib/services/services.js +0 -1
- package/src/webex-core.js +1 -13
- package/test/unit/spec/credentials/credentials.js +13 -169
- package/test/unit/spec/interceptors/auth.js +0 -3
- package/test/unit/spec/interceptors/webex-user-agent.js +6 -6
- package/test/unit/spec/services/interceptors/service.js +3 -9
- package/test/unit/spec/webex-core.js +0 -12
- package/dist/lib/constants.js +0 -13
- package/dist/lib/constants.js.map +0 -1
- package/src/lib/constants.js +0 -6
- package/test/unit/spec/credentials/scope.js +0 -55
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_httpCore","require","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","requestHeaderName","responseHeaderName","LOCUS_REDIRECT_ERROR","RedirectInterceptor","_Interceptor","_inherits2","_super","_classCallCheck2","_createClass2","key","value","onRequest","options","uri","includes","webex","config","credentials","samlUrl","tokenUrl","authorizeUrl","headers","_deleteProperty","$redirectCount","onResponse","response","_clone2","maxAppLevelRedirects","_promise","reject","Error","request","body","errorCode","location","logger","warn","qs","newUrl","split","maxLocusRedirects","create","Interceptor","exports"],"sources":["redirect.js"],"sourcesContent":["/* eslint-disable prefer-destructuring */\n\n/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {clone} from 'lodash';\nimport {Interceptor} from '@webex/http-core';\n\nconst requestHeaderName = 'cisco-no-http-redirect';\nconst responseHeaderName = 'cisco-location';\nconst LOCUS_REDIRECT_ERROR = 2000002;\n\n/**\n * @class\n */\nexport default class RedirectInterceptor extends Interceptor {\n /**\n * @returns {RedirectInterceptor}\n */\n static create() {\n return new RedirectInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n if (options && options.uri && typeof options.uri === 'string') {\n if (\n options.uri.includes('https://idbroker') ||\n options.uri.includes(this.webex.config.credentials.samlUrl) ||\n options.uri.includes(this.webex.config.credentials.tokenUrl) ||\n options.uri.includes(this.webex.config.credentials.authorizeUrl)\n ) {\n return options;\n }\n }\n\n // If cisco-no-http-redirect is already set, don't overwrite it\n if (requestHeaderName in options.headers) {\n // If cisco-no-http-redirect is set to null, false, or undefined, delete\n // it to prevent a CORS preflight.\n if (!options.headers[requestHeaderName]) {\n Reflect.deleteProperty(options.headers, requestHeaderName);\n }\n\n return options;\n }\n options.headers[requestHeaderName] = true;\n options.$redirectCount = options.$redirectCount || 0;\n\n return options;\n }\n\n /**\n * @see Interceptor#onResponse\n * @param {Object} options\n * @param {HttpResponse} response\n * @returns {Object}\n */\n onResponse(options, response) {\n /* eslint-disable no-else-return */\n if (response.headers && response.headers[responseHeaderName]) {\n options = clone(options);\n options.uri = response.headers[responseHeaderName];\n options.$redirectCount += 1;\n if (options.$redirectCount > this.webex.config.maxAppLevelRedirects) {\n return Promise.reject(new Error('Maximum redirects exceeded'));\n }\n\n return this.webex.request(options);\n } else if (\n response.headers &&\n response.body &&\n response.body.errorCode === LOCUS_REDIRECT_ERROR &&\n response.body.location\n ) {\n options = clone(options);\n\n this.webex.logger.warn('redirect: url redirects needed from', options.uri);\n if (response.options && response.options.qs) {\n // for POST requests\n const newUrl = response.body.location.split('?');\n\n options.uri = newUrl[0]; // params are already present in the qs\n } else {\n // for GET requests\n options.uri = response.body.location;\n }\n\n this.webex.logger.warn('redirect: url redirects needed to', options.uri);\n options.$redirectCount += 1;\n if (options.$redirectCount > this.webex.config.maxLocusRedirects) {\n return Promise.reject(new Error('Maximum redirects exceeded'));\n }\n\n return this.webex.request(options);\n }\n /* eslint-enable no-else-return */\n\n return response;\n }\n}\n"],"mappings":"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"}
|
|
@@ -13,16 +13,14 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpe
|
|
|
13
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
14
14
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
|
|
15
15
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
16
|
-
var
|
|
16
|
+
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
17
17
|
var _httpCore = require("@webex/http-core");
|
|
18
18
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
19
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
20
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
21
|
-
*/
|
|
19
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
22
20
|
/**
|
|
23
21
|
* @class
|
|
24
22
|
*/
|
|
25
|
-
var RequestEventInterceptor =
|
|
23
|
+
var RequestEventInterceptor = /*#__PURE__*/function (_Interceptor) {
|
|
26
24
|
(0, _inherits2.default)(RequestEventInterceptor, _Interceptor);
|
|
27
25
|
var _super = _createSuper(RequestEventInterceptor);
|
|
28
26
|
function RequestEventInterceptor() {
|
|
@@ -38,7 +36,7 @@ var RequestEventInterceptor = exports.default = /*#__PURE__*/function (_Intercep
|
|
|
38
36
|
* @returns {Object}
|
|
39
37
|
*/
|
|
40
38
|
function onRequest(options) {
|
|
41
|
-
var logger = (0,
|
|
39
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
42
40
|
try {
|
|
43
41
|
this.webex.trigger('request:start', options);
|
|
44
42
|
} catch (error) {
|
|
@@ -58,7 +56,7 @@ var RequestEventInterceptor = exports.default = /*#__PURE__*/function (_Intercep
|
|
|
58
56
|
value: function onRequestError(options, reason) {
|
|
59
57
|
// We need to do the normal onRequest logging, but then log how the request
|
|
60
58
|
// failed since the response logger won't be called.
|
|
61
|
-
var logger = (0,
|
|
59
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
62
60
|
try {
|
|
63
61
|
this.webex.trigger('request:end', options, reason);
|
|
64
62
|
this.webex.trigger('request:failure', options, reason);
|
|
@@ -77,7 +75,7 @@ var RequestEventInterceptor = exports.default = /*#__PURE__*/function (_Intercep
|
|
|
77
75
|
}, {
|
|
78
76
|
key: "onResponse",
|
|
79
77
|
value: function onResponse(options, response) {
|
|
80
|
-
var logger = (0,
|
|
78
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
81
79
|
try {
|
|
82
80
|
this.webex.trigger('request:success', response.options, response);
|
|
83
81
|
} catch (error) {
|
|
@@ -95,7 +93,7 @@ var RequestEventInterceptor = exports.default = /*#__PURE__*/function (_Intercep
|
|
|
95
93
|
}, {
|
|
96
94
|
key: "onResponseError",
|
|
97
95
|
value: function onResponseError(options, reason) {
|
|
98
|
-
var logger = (0,
|
|
96
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
99
97
|
try {
|
|
100
98
|
this.webex.trigger('request:end', options, reason);
|
|
101
99
|
this.webex.trigger('request:failure', options, reason);
|
|
@@ -118,4 +116,5 @@ var RequestEventInterceptor = exports.default = /*#__PURE__*/function (_Intercep
|
|
|
118
116
|
}]);
|
|
119
117
|
return RequestEventInterceptor;
|
|
120
118
|
}(_httpCore.Interceptor);
|
|
119
|
+
exports.default = RequestEventInterceptor;
|
|
121
120
|
//# sourceMappingURL=request-event.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_httpCore","require","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","RequestEventInterceptor","_Interceptor","_inherits2","_super","_classCallCheck2","_createClass2","key","value","onRequest","options","logger","_get2","console","webex","trigger","error","warn","_promise","resolve","onRequestError","reason","reject","onResponse","response","onResponseError","create","Interceptor","exports"],"sources":["request-event.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {get} from 'lodash';\nimport {Interceptor} from '@webex/http-core';\n\n/**\n * @class\n */\nexport default class RequestEventInterceptor extends Interceptor {\n /**\n * @returns {RequestEventInterceptor}\n */\n static create() {\n return new RequestEventInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n const logger = get(this, 'webex.logger', console);\n\n try {\n this.webex.trigger('request:start', options);\n } catch (error) {\n logger.warn('event handler for request:start failed ', error);\n }\n\n return Promise.resolve(options);\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @param {Error} reason\n * @returns {Object}\n */\n onRequestError(options, reason) {\n // We need to do the normal onRequest logging, but then log how the request\n // failed since the response logger won't be called.\n const logger = get(this, 'webex.logger', console);\n\n try {\n this.webex.trigger('request:end', options, reason);\n this.webex.trigger('request:failure', options, reason);\n } catch (error) {\n logger.warn('event handler for request:end failed ', error);\n }\n\n return Promise.reject(reason);\n }\n\n /**\n * @see Interceptor#onResponse\n * @param {Object} options\n * @param {HttpResponse} response\n * @returns {Object}\n */\n onResponse(options, response) {\n const logger = get(this, 'webex.logger', console);\n\n try {\n this.webex.trigger('request:success', response.options, response);\n } catch (error) {\n logger.warn('event handler for request:success failed ', error);\n }\n\n return Promise.resolve(response);\n }\n\n /**\n * @see Interceptor#onResponseError\n * @param {Object} options\n * @param {Error} reason\n * @returns {Object}\n */\n onResponseError(options, reason) {\n const logger = get(this, 'webex.logger', console);\n\n try {\n this.webex.trigger('request:end', options, reason);\n this.webex.trigger('request:failure', options, reason);\n } catch (error) {\n logger.warn('event handler for request:failure failed ', error);\n }\n\n return Promise.reject(reason);\n }\n}\n"],"mappings":"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"}
|
|
@@ -13,17 +13,19 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpe
|
|
|
13
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
14
14
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
|
|
15
15
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
16
|
+
var _omit2 = _interopRequireDefault(require("lodash/omit"));
|
|
17
|
+
var _isString2 = _interopRequireDefault(require("lodash/isString"));
|
|
18
|
+
var _isArray2 = _interopRequireDefault(require("lodash/isArray"));
|
|
19
|
+
var _has2 = _interopRequireDefault(require("lodash/has"));
|
|
20
|
+
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
16
21
|
var _util = _interopRequireDefault(require("util"));
|
|
17
|
-
var _lodash = require("lodash");
|
|
18
22
|
var _httpCore = require("@webex/http-core");
|
|
19
23
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
20
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
21
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
22
|
-
*/
|
|
24
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
23
25
|
/**
|
|
24
26
|
* @class
|
|
25
27
|
*/
|
|
26
|
-
var RequestLoggerInterceptor =
|
|
28
|
+
var RequestLoggerInterceptor = /*#__PURE__*/function (_Interceptor) {
|
|
27
29
|
(0, _inherits2.default)(RequestLoggerInterceptor, _Interceptor);
|
|
28
30
|
var _super = _createSuper(RequestLoggerInterceptor);
|
|
29
31
|
function RequestLoggerInterceptor() {
|
|
@@ -39,13 +41,13 @@ var RequestLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interce
|
|
|
39
41
|
* @returns {Object}
|
|
40
42
|
*/
|
|
41
43
|
function onRequest(options) {
|
|
42
|
-
var logger = (0,
|
|
44
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
43
45
|
logger.info('/**********************************************************************\\ ');
|
|
44
46
|
logger.info('Request:', options.method || 'GET', options.uri);
|
|
45
|
-
logger.info('WEBEX_TRACKINGID: ', (0,
|
|
47
|
+
logger.info('WEBEX_TRACKINGID: ', (0, _get2.default)(options, 'headers.trackingid'));
|
|
46
48
|
/* istanbul ignore next */
|
|
47
|
-
if ((0,
|
|
48
|
-
logger.info('X-Trans-ID: ', (0,
|
|
49
|
+
if ((0, _has2.default)(options, 'headers.x-trans-id')) {
|
|
50
|
+
logger.info('X-Trans-ID: ', (0, _get2.default)(options, 'headers.x-trans-id'));
|
|
49
51
|
}
|
|
50
52
|
var now = new Date();
|
|
51
53
|
if (process.env.ENABLE_VERBOSE_NETWORK_LOGGING) {
|
|
@@ -53,8 +55,8 @@ var RequestLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interce
|
|
|
53
55
|
try {
|
|
54
56
|
// Determine if body is a buffer without relying on Buffer to avoid
|
|
55
57
|
// node/browser conflicts.
|
|
56
|
-
if (options.body && options.body.length && !(0,
|
|
57
|
-
logger.info('Request Options:', _util.default.inspect((0,
|
|
58
|
+
if (options.body && options.body.length && !(0, _isArray2.default)(options.body) && !(0, _isString2.default)(options.body)) {
|
|
59
|
+
logger.info('Request Options:', _util.default.inspect((0, _omit2.default)(options, 'body'), {
|
|
58
60
|
depth: null
|
|
59
61
|
}));
|
|
60
62
|
} else {
|
|
@@ -81,7 +83,7 @@ var RequestLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interce
|
|
|
81
83
|
// We need to do the normal onRequest logging, but then log how the request
|
|
82
84
|
// failed since the response logger won't be called.
|
|
83
85
|
this.onRequest(options);
|
|
84
|
-
var logger = (0,
|
|
86
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
85
87
|
logger.error('Request Failed: ', reason.stack);
|
|
86
88
|
logger.info('\\**********************************************************************/');
|
|
87
89
|
return _promise.default.reject(reason);
|
|
@@ -100,4 +102,5 @@ var RequestLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interce
|
|
|
100
102
|
}]);
|
|
101
103
|
return RequestLoggerInterceptor;
|
|
102
104
|
}(_httpCore.Interceptor);
|
|
105
|
+
exports.default = RequestLoggerInterceptor;
|
|
103
106
|
//# sourceMappingURL=request-logger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_util","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_util","_interopRequireDefault","require","_httpCore","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","RequestLoggerInterceptor","_Interceptor","_inherits2","_super","_classCallCheck2","_createClass2","key","value","onRequest","options","logger","_get2","console","info","method","uri","_has2","now","Date","process","env","ENABLE_VERBOSE_NETWORK_LOGGING","getTime","toISOString","body","length","_isArray2","_isString2","util","inspect","_omit2","depth","warn","_promise","resolve","onRequestError","reason","error","stack","reject","create","webex","Interceptor","exports"],"sources":["request-logger.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport util from 'util';\n\nimport {get, has, isArray, isString, omit} from 'lodash';\nimport {Interceptor} from '@webex/http-core';\n\n/**\n * @class\n */\nexport default class RequestLoggerInterceptor extends Interceptor {\n /**\n * @returns {RequestLoggerInterceptor}\n */\n static create() {\n return new RequestLoggerInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n const logger = get(this, 'webex.logger', console);\n\n logger.info('/**********************************************************************\\\\ ');\n logger.info('Request:', options.method || 'GET', options.uri);\n logger.info('WEBEX_TRACKINGID: ', get(options, 'headers.trackingid'));\n /* istanbul ignore next */\n if (has(options, 'headers.x-trans-id')) {\n logger.info('X-Trans-ID: ', get(options, 'headers.x-trans-id'));\n }\n const now = new Date();\n\n if (process.env.ENABLE_VERBOSE_NETWORK_LOGGING) {\n logger.info('timestamp (start): ', now.getTime(), now.toISOString());\n try {\n // Determine if body is a buffer without relying on Buffer to avoid\n // node/browser conflicts.\n if (\n options.body &&\n options.body.length &&\n !isArray(options.body) &&\n !isString(options.body)\n ) {\n logger.info('Request Options:', util.inspect(omit(options, 'body'), {depth: null}));\n } else {\n logger.info('Request Options:', util.inspect(options, {depth: null}));\n }\n } catch (e) {\n logger.warn('Could not stringify request options:', e);\n }\n }\n\n return Promise.resolve(options);\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @param {Error} reason\n * @returns {Object}\n */\n onRequestError(options, reason) {\n // We need to do the normal onRequest logging, but then log how the request\n // failed since the response logger won't be called.\n this.onRequest(options);\n const logger = get(this, 'webex.logger', console);\n\n logger.error('Request Failed: ', reason.stack);\n logger.info('\\\\**********************************************************************/');\n\n return Promise.reject(reason);\n }\n}\n"],"mappings":"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"}
|
|
@@ -16,13 +16,11 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
16
16
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
17
17
|
var _httpCore = require("@webex/http-core");
|
|
18
18
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
19
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
20
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
21
|
-
*/
|
|
19
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
22
20
|
/**
|
|
23
21
|
* @class
|
|
24
22
|
*/
|
|
25
|
-
var RequestTimingInterceptor =
|
|
23
|
+
var RequestTimingInterceptor = /*#__PURE__*/function (_Interceptor) {
|
|
26
24
|
(0, _inherits2.default)(RequestTimingInterceptor, _Interceptor);
|
|
27
25
|
var _super = _createSuper(RequestTimingInterceptor);
|
|
28
26
|
function RequestTimingInterceptor() {
|
|
@@ -93,4 +91,5 @@ var RequestTimingInterceptor = exports.default = /*#__PURE__*/function (_Interce
|
|
|
93
91
|
}]);
|
|
94
92
|
return RequestTimingInterceptor;
|
|
95
93
|
}(_httpCore.Interceptor);
|
|
94
|
+
exports.default = RequestTimingInterceptor;
|
|
96
95
|
//# sourceMappingURL=request-timing.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_httpCore","require","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","RequestTimingInterceptor","
|
|
1
|
+
{"version":3,"names":["_httpCore","require","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","RequestTimingInterceptor","_Interceptor","_inherits2","_super","_classCallCheck2","_createClass2","key","value","onRequest","options","$timings","requestStart","_now","onRequestError","requestEnd","requestFail","_promise","reject","onResponse","response","resolve","onResponseError","reason","create","Interceptor","exports"],"sources":["request-timing.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {Interceptor} from '@webex/http-core';\n\n/**\n * @class\n */\nexport default class RequestTimingInterceptor extends Interceptor {\n /**\n * @param {Object} options\n * @returns {RequestTimingInterceptor}\n */\n static create(options) {\n return new RequestTimingInterceptor(this, options);\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n options.$timings = options.$timings || {};\n options.$timings.requestStart = Date.now();\n\n return options;\n }\n\n /**\n * @see Interceptor#onRequestError\n * @param {Object} options\n * @returns {Object}\n */\n onRequestError(options) {\n options.$timings.requestEnd = options.$timings.requestFail = Date.now();\n\n return Promise.reject(options);\n }\n\n /**\n * @see Interceptor#onResponse\n * @param {Object} options\n * @param {HttpResponse} response\n * @returns {Object}\n */\n onResponse(options, response) {\n options.$timings.requestEnd = Date.now();\n\n return Promise.resolve(response);\n }\n\n /**\n * @see Interceptor#onResponseError\n * @param {Object} options\n * @param {Error} reason\n * @returns {Object}\n */\n onResponseError(options, reason) {\n options.$timings.requestEnd = options.$timings.requestFail = Date.now();\n\n return Promise.reject(reason);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAIA,IAAAA,SAAA,GAAAC,OAAA;AAA6C,SAAAC,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,CAAAC,OAAA,EAAAN,OAAA,GAAAO,MAAA,MAAAN,yBAAA,QAAAO,SAAA,OAAAH,gBAAA,CAAAC,OAAA,QAAAG,WAAA,EAAAF,MAAA,GAAAG,kBAAA,CAAAN,KAAA,EAAAO,SAAA,EAAAH,SAAA,YAAAD,MAAA,GAAAH,KAAA,CAAAQ,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,CAAAP,OAAA,QAAAC,MAAA;AAAA,SAAAL,0BAAA,eAAAY,OAAA,qBAAAJ,kBAAA,oBAAAA,kBAAA,CAAAK,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,kBAAA,CAAAO,OAAA,8CAAAI,CAAA;AAE7C;AACA;AACA;AAFA,IAGqBC,wBAAwB,0BAAAC,YAAA;EAAA,IAAAC,UAAA,CAAAlB,OAAA,EAAAgB,wBAAA,EAAAC,YAAA;EAAA,IAAAE,MAAA,GAAA1B,YAAA,CAAAuB,wBAAA;EAAA,SAAAA,yBAAA;IAAA,IAAAI,gBAAA,CAAApB,OAAA,QAAAgB,wBAAA;IAAA,OAAAG,MAAA,CAAAb,KAAA,OAAAD,SAAA;EAAA;EAAA,IAAAgB,aAAA,CAAArB,OAAA,EAAAgB,wBAAA;IAAAM,GAAA;IAAAC,KAAA;IAS3C;AACF;AACA;AACA;AACA;IACE,SAAAC,UAAUC,OAAO,EAAE;MACjBA,OAAO,CAACC,QAAQ,GAAGD,OAAO,CAACC,QAAQ,IAAI,CAAC,CAAC;MACzCD,OAAO,CAACC,QAAQ,CAACC,YAAY,GAAG,IAAAC,IAAA,CAAA5B,OAAA,GAAU;MAE1C,OAAOyB,OAAO;IAChB;;IAEA;AACF;AACA;AACA;AACA;EAJE;IAAAH,GAAA;IAAAC,KAAA,EAKA,SAAAM,eAAeJ,OAAO,EAAE;MACtBA,OAAO,CAACC,QAAQ,CAACI,UAAU,GAAGL,OAAO,CAACC,QAAQ,CAACK,WAAW,GAAG,IAAAH,IAAA,CAAA5B,OAAA,GAAU;MAEvE,OAAOgC,QAAA,CAAAhC,OAAA,CAAQiC,MAAM,CAACR,OAAO,CAAC;IAChC;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAAH,GAAA;IAAAC,KAAA,EAMA,SAAAW,WAAWT,OAAO,EAAEU,QAAQ,EAAE;MAC5BV,OAAO,CAACC,QAAQ,CAACI,UAAU,GAAG,IAAAF,IAAA,CAAA5B,OAAA,GAAU;MAExC,OAAOgC,QAAA,CAAAhC,OAAA,CAAQoC,OAAO,CAACD,QAAQ,CAAC;IAClC;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAAb,GAAA;IAAAC,KAAA,EAMA,SAAAc,gBAAgBZ,OAAO,EAAEa,MAAM,EAAE;MAC/Bb,OAAO,CAACC,QAAQ,CAACI,UAAU,GAAGL,OAAO,CAACC,QAAQ,CAACK,WAAW,GAAG,IAAAH,IAAA,CAAA5B,OAAA,GAAU;MAEvE,OAAOgC,QAAA,CAAAhC,OAAA,CAAQiC,MAAM,CAACK,MAAM,CAAC;IAC/B;EAAC;IAAAhB,GAAA;IAAAC,KAAA;IArDD;AACF;AACA;AACA;IACE,SAAAgB,OAAcd,OAAO,EAAE;MACrB,OAAO,IAAIT,wBAAwB,CAAC,IAAI,EAAES,OAAO,CAAC;IACpD;EAAC;EAAA,OAAAT,wBAAA;AAAA,EAPmDwB,qBAAW;AAAAC,OAAA,CAAAzC,OAAA,GAAAgB,wBAAA"}
|
|
@@ -14,18 +14,17 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpe
|
|
|
14
14
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
15
15
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
|
|
16
16
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
17
|
+
var _omit2 = _interopRequireDefault(require("lodash/omit"));
|
|
18
|
+
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
17
19
|
var _util = _interopRequireDefault(require("util"));
|
|
18
|
-
var _lodash = require("lodash");
|
|
19
20
|
var _httpCore = require("@webex/http-core");
|
|
20
21
|
var _common = require("@webex/common");
|
|
21
22
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
22
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
23
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
24
|
-
*/
|
|
23
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
25
24
|
/**
|
|
26
25
|
* @class
|
|
27
26
|
*/
|
|
28
|
-
var ResponseLoggerInterceptor =
|
|
27
|
+
var ResponseLoggerInterceptor = /*#__PURE__*/function (_Interceptor) {
|
|
29
28
|
(0, _inherits2.default)(ResponseLoggerInterceptor, _Interceptor);
|
|
30
29
|
var _super = _createSuper(ResponseLoggerInterceptor);
|
|
31
30
|
function ResponseLoggerInterceptor() {
|
|
@@ -44,14 +43,14 @@ var ResponseLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interc
|
|
|
44
43
|
function onResponse(options, response) {
|
|
45
44
|
var now = new Date();
|
|
46
45
|
this.printResponseHeader(options, response);
|
|
47
|
-
var logger = (0,
|
|
46
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
48
47
|
if (process.env.ENABLE_VERBOSE_NETWORK_LOGGING) {
|
|
49
48
|
logger.info('timestamp (end): ', now.getTime(), now.toISOString());
|
|
50
49
|
if (typeof response.body === 'string' || (0, _common.isBuffer)(response.body)) {
|
|
51
50
|
logger.info('Response: ', 'Not printed, it`s probably a file');
|
|
52
51
|
} else if ((0, _typeof2.default)(response.body) === 'object') {
|
|
53
52
|
try {
|
|
54
|
-
logger.info('Response: ', _util.default.inspect((0,
|
|
53
|
+
logger.info('Response: ', _util.default.inspect((0, _omit2.default)(response.body, 'features'), {
|
|
55
54
|
depth: null
|
|
56
55
|
}));
|
|
57
56
|
} catch (err) {
|
|
@@ -74,7 +73,7 @@ var ResponseLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interc
|
|
|
74
73
|
value: function onResponseError(options, reason) {
|
|
75
74
|
var now = new Date();
|
|
76
75
|
this.printResponseHeader(options, reason);
|
|
77
|
-
var logger = (0,
|
|
76
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
78
77
|
if (process.env.ENABLE_VERBOSE_NETWORK_LOGGING) {
|
|
79
78
|
logger.info('timestamp (end): ', now.getTime(), now.toISOString());
|
|
80
79
|
try {
|
|
@@ -98,9 +97,9 @@ var ResponseLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interc
|
|
|
98
97
|
}, {
|
|
99
98
|
key: "printResponseHeader",
|
|
100
99
|
value: function printResponseHeader(options, response) {
|
|
101
|
-
var logger = (0,
|
|
100
|
+
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
102
101
|
logger.info('Status Code:', response.statusCode);
|
|
103
|
-
logger.info('WEBEX_TRACKINGID:', (0,
|
|
102
|
+
logger.info('WEBEX_TRACKINGID:', (0, _get2.default)(options, 'headers.trackingid') || (0, _get2.default)(response, 'headers.trackingid'));
|
|
104
103
|
logger.info('Network duration:', options.$timings.networkEnd - options.$timings.networkStart);
|
|
105
104
|
logger.info('Processing duration:', options.$timings.requestEnd - options.$timings.requestStart);
|
|
106
105
|
}
|
|
@@ -118,4 +117,5 @@ var ResponseLoggerInterceptor = exports.default = /*#__PURE__*/function (_Interc
|
|
|
118
117
|
}]);
|
|
119
118
|
return ResponseLoggerInterceptor;
|
|
120
119
|
}(_httpCore.Interceptor);
|
|
120
|
+
exports.default = ResponseLoggerInterceptor;
|
|
121
121
|
//# sourceMappingURL=response-logger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_util","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_util","_interopRequireDefault","require","_httpCore","_common","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","ResponseLoggerInterceptor","_Interceptor","_inherits2","_super","_classCallCheck2","_createClass2","key","value","onResponse","options","response","now","Date","printResponseHeader","logger","_get2","console","process","env","ENABLE_VERBOSE_NETWORK_LOGGING","info","getTime","toISOString","body","isBuffer","_typeof2","util","inspect","_omit2","depth","err","onResponseError","reason","error","_promise","reject","statusCode","$timings","networkEnd","networkStart","requestEnd","requestStart","create","webex","Interceptor","exports"],"sources":["response-logger.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport util from 'util';\n\nimport {get, omit} from 'lodash';\nimport {Interceptor} from '@webex/http-core';\nimport {isBuffer} from '@webex/common';\n\n/**\n * @class\n */\nexport default class ResponseLoggerInterceptor extends Interceptor {\n /**\n * @returns {ResponseLoggerInterceptor}\n */\n static create() {\n return new ResponseLoggerInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @param {HttpResponse} response\n * @returns {Object}\n */\n onResponse(options, response) {\n const now = new Date();\n\n this.printResponseHeader(options, response);\n\n const logger = get(this, 'webex.logger', console);\n\n if (process.env.ENABLE_VERBOSE_NETWORK_LOGGING) {\n logger.info('timestamp (end): ', now.getTime(), now.toISOString());\n if (typeof response.body === 'string' || isBuffer(response.body)) {\n logger.info('Response: ', 'Not printed, it`s probably a file');\n } else if (typeof response.body === 'object') {\n try {\n logger.info('Response: ', util.inspect(omit(response.body, 'features'), {depth: null}));\n } catch (err) {\n logger.info('Response: ', '[Not Serializable]', err);\n }\n }\n }\n logger.info('\\\\**********************************************************************/');\n\n return response;\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @param {Object} reason\n * @returns {Object}\n */\n onResponseError(options, reason) {\n const now = new Date();\n\n this.printResponseHeader(options, reason);\n\n const logger = get(this, 'webex.logger', console);\n\n if (process.env.ENABLE_VERBOSE_NETWORK_LOGGING) {\n logger.info('timestamp (end): ', now.getTime(), now.toISOString());\n try {\n logger.error('Response: ', util.inspect(reason.body, {depth: null}));\n } catch (err) {\n logger.error('Response: ', reason.body);\n }\n }\n logger.info('\\\\**********************************************************************/');\n\n return Promise.reject(reason);\n }\n\n /**\n * Prints the basic header\n * @param {Object} options\n * @param {HttpResponse|WebexHttpError} response\n * @returns {undefined}\n */\n printResponseHeader(options, response) {\n const logger = get(this, 'webex.logger', console);\n\n logger.info('Status Code:', response.statusCode);\n logger.info(\n 'WEBEX_TRACKINGID:',\n get(options, 'headers.trackingid') || get(response, 'headers.trackingid')\n );\n logger.info('Network duration:', options.$timings.networkEnd - options.$timings.networkStart);\n logger.info(\n 'Processing duration:',\n options.$timings.requestEnd - options.$timings.requestStart\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -7,20 +7,18 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
7
7
|
value: true
|
|
8
8
|
});
|
|
9
9
|
exports.default = void 0;
|
|
10
|
+
var _weakMap = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/weak-map"));
|
|
10
11
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
|
|
11
12
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
12
13
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
|
|
13
14
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
14
15
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
|
|
15
16
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
16
|
-
var
|
|
17
|
+
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
17
18
|
var _common = require("@webex/common");
|
|
18
19
|
var _httpCore = require("@webex/http-core");
|
|
19
|
-
var _lodash = require("lodash");
|
|
20
20
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
21
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
22
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
23
|
-
*/
|
|
21
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
24
22
|
var strings = new _weakMap.default();
|
|
25
23
|
|
|
26
24
|
/**
|
|
@@ -42,7 +40,7 @@ var strings = new _weakMap.default();
|
|
|
42
40
|
* }
|
|
43
41
|
* });
|
|
44
42
|
*/
|
|
45
|
-
var UserAgentInterceptor =
|
|
43
|
+
var UserAgentInterceptor = /*#__PURE__*/function (_Interceptor) {
|
|
46
44
|
(0, _inherits2.default)(UserAgentInterceptor, _Interceptor);
|
|
47
45
|
var _super = _createSuper(UserAgentInterceptor);
|
|
48
46
|
/**
|
|
@@ -55,8 +53,8 @@ var UserAgentInterceptor = exports.default = /*#__PURE__*/function (_Interceptor
|
|
|
55
53
|
var _this;
|
|
56
54
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
57
55
|
(0, _classCallCheck2.default)(this, UserAgentInterceptor);
|
|
58
|
-
var appName = (0,
|
|
59
|
-
var appVersion = (0,
|
|
56
|
+
var appName = (0, _get2.default)(options, 'webex.config.appName');
|
|
57
|
+
var appVersion = (0, _get2.default)(options, 'webex.config.appVersion') || '0.0';
|
|
60
58
|
_this = _super.call(this, options);
|
|
61
59
|
if (appName) {
|
|
62
60
|
strings.set((0, _assertThisInitialized2.default)(_this), "".concat(appName, "/").concat(appVersion));
|
|
@@ -99,4 +97,5 @@ var UserAgentInterceptor = exports.default = /*#__PURE__*/function (_Interceptor
|
|
|
99
97
|
}]);
|
|
100
98
|
return UserAgentInterceptor;
|
|
101
99
|
}(_httpCore.Interceptor);
|
|
100
|
+
exports.default = UserAgentInterceptor;
|
|
102
101
|
//# sourceMappingURL=user-agent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_common","require","_httpCore","
|
|
1
|
+
{"version":3,"names":["_common","require","_httpCore","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","strings","_weakMap","UserAgentInterceptor","_Interceptor","_inherits2","_super","_this","options","length","undefined","_classCallCheck2","appName","_get2","appVersion","set","_assertThisInitialized2","concat","_createClass2","key","value","onRequest","inBrowser","headers","get","create","webex","Interceptor","exports"],"sources":["user-agent.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {inBrowser} from '@webex/common';\nimport {Interceptor} from '@webex/http-core';\nimport {get} from 'lodash';\n\nconst strings = new WeakMap();\n\n/**\n * Sets a 'user-agent' header on all requests if one is not present.\n * Defaults to '@webex/http-core' though a custom user-agent can be set\n * using the appName and appVersion configuration. e.g.\n *\n * webex = WebexSdk.init({\n * credentials: {\n * supertoken: superToken\n * },\n * config: {\n * credentials: {\n * client_id,\n * client_secret\n * },\n * appName: 'custom-user-agent',\n * appVersion: '1.0',\n * }\n * });\n */\nexport default class UserAgentInterceptor extends Interceptor {\n /**\n * @param {Object} [options={}]\n * @param {WebexCore} [options.webex]\n * @private\n * @returns {UserAgentInterceptor}\n */\n constructor(options = {}) {\n const appName = get(options, 'webex.config.appName');\n const appVersion = get(options, 'webex.config.appVersion') || '0.0';\n\n super(options);\n if (appName) {\n strings.set(this, `${appName}/${appVersion}`);\n } else {\n strings.set(this, '@webex/http-core'); // Using the traditional default from http-core\n }\n }\n\n /**\n * @returns {UserAgentInterceptor}\n */\n static create() {\n return new UserAgentInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n // Do not set a custom user-agent for browsers\n if (inBrowser) {\n return options;\n }\n\n options.headers = options.headers || {};\n\n if ('user-agent' in options.headers && options.headers['spark-user-agent']) {\n return options;\n }\n\n options.headers['user-agent'] = strings.get(this);\n\n return options;\n }\n}\n"],"mappings":"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"}
|
|
@@ -16,15 +16,13 @@ var _weakMap = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/we
|
|
|
16
16
|
var _deleteProperty = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/reflect/delete-property"));
|
|
17
17
|
var _httpCore = require("@webex/http-core");
|
|
18
18
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
19
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
20
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
21
|
-
*/
|
|
19
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
22
20
|
var sequenceNumbers = new _weakMap.default();
|
|
23
21
|
|
|
24
22
|
/**
|
|
25
23
|
* @class
|
|
26
24
|
*/
|
|
27
|
-
var WebexTrackingIdInterceptor =
|
|
25
|
+
var WebexTrackingIdInterceptor = /*#__PURE__*/function (_Interceptor) {
|
|
28
26
|
(0, _inherits2.default)(WebexTrackingIdInterceptor, _Interceptor);
|
|
29
27
|
var _super = _createSuper(WebexTrackingIdInterceptor);
|
|
30
28
|
function WebexTrackingIdInterceptor() {
|
|
@@ -98,4 +96,5 @@ var WebexTrackingIdInterceptor = exports.default = /*#__PURE__*/function (_Inter
|
|
|
98
96
|
}]);
|
|
99
97
|
return WebexTrackingIdInterceptor;
|
|
100
98
|
}(_httpCore.Interceptor);
|
|
99
|
+
exports.default = WebexTrackingIdInterceptor;
|
|
101
100
|
//# sourceMappingURL=webex-tracking-id.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_httpCore","require","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","sequenceNumbers","_weakMap","WebexTrackingIdInterceptor","
|
|
1
|
+
{"version":3,"names":["_httpCore","require","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","sequenceNumbers","_weakMap","WebexTrackingIdInterceptor","_Interceptor","_inherits2","_super","_classCallCheck2","_createClass2","key","get","sq","set","value","onRequest","options","headers","trackingid","_deleteProperty","requiresTrackingId","concat","webex","sessionId","sequence","replayCount","tid","split","join","create","Interceptor","exports"],"sources":["webex-tracking-id.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {Interceptor} from '@webex/http-core';\n\nconst sequenceNumbers = new WeakMap();\n\n/**\n * @class\n */\nexport default class WebexTrackingIdInterceptor extends Interceptor {\n /**\n * Sequence number; increments on access\n * @type {Number}\n */\n get sequence() {\n let sq = sequenceNumbers.get(this) || 0;\n\n sq += 1;\n sequenceNumbers.set(this, sq);\n\n return sq;\n }\n\n /**\n * @returns {WebexTrackingIdInterceptor}\n */\n static create() {\n return new WebexTrackingIdInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n options.headers = options.headers || {};\n // If trackingid is already set, don't overwrite it\n if ('trackingid' in options.headers) {\n // If trackingid is set to null, false, or undefined, delete it to\n // prevent a CORS preflight.\n if (!options.headers.trackingid) {\n Reflect.deleteProperty(options.headers, 'trackingid');\n }\n\n return options;\n }\n\n if (this.requiresTrackingId(options)) {\n options.headers.trackingid = `${this.webex.sessionId}_${this.sequence}`;\n }\n\n if (options.headers.trackingid && options.replayCount) {\n const tid = options.headers.trackingid.split('+');\n\n tid[1] = options.replayCount;\n options.headers.trackingid = tid.join('+');\n }\n\n return options;\n }\n\n /**\n * Determines whether or not include a tracking id\n * @param {Object} options\n * @returns {boolean}\n */\n requiresTrackingId(options) {\n return !options.headers.trackingid;\n }\n}\n"],"mappings":"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"}
|