@webex/webex-core 1.159.5 → 1.161.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/dist/config.js.map +1 -1
- package/dist/credentials-config.js.map +1 -1
- package/dist/index.js +88 -88
- package/dist/index.js.map +1 -1
- package/dist/interceptors/auth.js.map +1 -1
- package/dist/interceptors/default-options.js.map +1 -1
- package/dist/interceptors/embargo.js.map +1 -1
- package/dist/interceptors/network-timing.js.map +1 -1
- package/dist/interceptors/payload-transformer.js.map +1 -1
- package/dist/interceptors/rate-limit.js.map +1 -1
- package/dist/interceptors/redirect.js.map +1 -1
- package/dist/interceptors/request-event.js.map +1 -1
- package/dist/interceptors/request-logger.js.map +1 -1
- package/dist/interceptors/request-timing.js.map +1 -1
- package/dist/interceptors/response-logger.js.map +1 -1
- package/dist/interceptors/user-agent.js.map +1 -1
- package/dist/interceptors/webex-tracking-id.js.map +1 -1
- package/dist/interceptors/webex-user-agent.js.map +1 -1
- package/dist/lib/batcher.js +1 -1
- package/dist/lib/batcher.js.map +1 -1
- package/dist/lib/credentials/credentials.js +1 -1
- package/dist/lib/credentials/credentials.js.map +1 -1
- package/dist/lib/credentials/grant-errors.js +6 -6
- package/dist/lib/credentials/grant-errors.js.map +1 -1
- package/dist/lib/credentials/index.js +8 -8
- package/dist/lib/credentials/index.js.map +1 -1
- package/dist/lib/credentials/scope.js +1 -1
- package/dist/lib/credentials/scope.js.map +1 -1
- package/dist/lib/credentials/token-collection.js.map +1 -1
- package/dist/lib/credentials/token.js +1 -1
- package/dist/lib/credentials/token.js.map +1 -1
- package/dist/lib/page.js.map +1 -1
- package/dist/lib/services/constants.js +1 -1
- package/dist/lib/services/constants.js.map +1 -1
- package/dist/lib/services/index.js +12 -12
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/interceptors/server-error.js.map +1 -1
- package/dist/lib/services/interceptors/service.js +1 -1
- package/dist/lib/services/interceptors/service.js.map +1 -1
- package/dist/lib/services/metrics.js.map +1 -1
- package/dist/lib/services/service-catalog.js +2 -2
- package/dist/lib/services/service-catalog.js.map +1 -1
- package/dist/lib/services/service-fed-ramp.js.map +1 -1
- package/dist/lib/services/service-host.js.map +1 -1
- package/dist/lib/services/service-registry.js +2 -2
- package/dist/lib/services/service-registry.js.map +1 -1
- package/dist/lib/services/service-state.js.map +1 -1
- package/dist/lib/services/service-url.js.map +1 -1
- package/dist/lib/services/services.js +3 -3
- package/dist/lib/services/services.js.map +1 -1
- package/dist/lib/stateless-webex-plugin.js.map +1 -1
- package/dist/lib/storage/decorators.js.map +1 -1
- package/dist/lib/storage/errors.js +5 -3
- package/dist/lib/storage/errors.js.map +1 -1
- package/dist/lib/storage/index.js +12 -12
- package/dist/lib/storage/index.js.map +1 -1
- 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.map +1 -1
- package/dist/lib/webex-core-plugin-mixin.js.map +1 -1
- package/dist/lib/webex-http-error.js +1 -1
- package/dist/lib/webex-http-error.js.map +1 -1
- package/dist/lib/webex-internal-core-plugin-mixin.js.map +1 -1
- package/dist/lib/webex-plugin.js.map +1 -1
- package/dist/plugins/logger.js +1 -1
- package/dist/plugins/logger.js.map +1 -1
- package/dist/webex-core.js +6 -6
- package/dist/webex-core.js.map +1 -1
- package/dist/webex-internal-core.js.map +1 -1
- package/package.json +5 -5
- package/src/lib/services/interceptors/service.js +1 -1
- package/src/lib/stateless-webex-plugin.js +1 -1
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["maxAppLevelRedirects","maxLocusRedirects","maxAuthenticationReplays","maxReconnectAttempts","onBeforeLogout","trackingIdPrefix","trackingIdSuffix","AlternateLogger","undefined","credentials","CredentialsConfig","fedramp","process","env","ENABLE_FEDRAMP","services","discovery","hydra","HYDRA_SERVICE_URL","u2c","U2C_SERVICE_URL","validateDomains","servicesNotNeedValidation","allowedDomains","device","preDiscoveryServices","hydraServiceUrl","whitelistedServiceDomains","metrics","type","payloadTransformer","predicates","transforms","storage","boundedAdapter","MemoryStoreAdapter","unboundedAdapter"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\n/* eslint camelcase: [0] */\n\nimport {MemoryStoreAdapter} from './lib/storage';\nimport CredentialsConfig from './credentials-config';\n\nexport default {\n maxAppLevelRedirects: 10,\n maxLocusRedirects: 5,\n maxAuthenticationReplays: 1,\n maxReconnectAttempts: 1,\n onBeforeLogout: [],\n trackingIdPrefix: 'webex-js-sdk',\n trackingIdSuffix: '',\n AlternateLogger: undefined,\n credentials: new CredentialsConfig(),\n fedramp: process.env.ENABLE_FEDRAMP || false,\n services: {\n /**\n * A list of services that are available prior to catalog collection.\n *\n * @type {Object}\n */\n discovery: {\n /**\n * The hydra discovery url.\n *\n * @type {string}\n */\n hydra: process.env.HYDRA_SERVICE_URL || 'https://api.ciscospark.com/v1',\n\n /**\n * The u2c discovery url\n *\n * @type {string}\n */\n u2c: process.env.U2C_SERVICE_URL || 'https://u2c.wbx2.com/u2c/api/v1'\n },\n\n /**\n * When true, considers all urls in `allowedDomains` as safe for auth tokens\n *\n * @type {boolean}\n */\n validateDomains: true,\n\n /**\n * services that don't need auth validation\n */\n\n servicesNotNeedValidation: [\n 'webex-appapi-service'\n ],\n\n /**\n * Contains a list of allowed domain host addresses.\n *\n * @type {Array<string>}\n */\n allowedDomains: [\n 'wbx2.com',\n 'ciscospark.com',\n 'webex.com',\n 'webexapis.com'\n ]\n },\n device: {\n preDiscoveryServices: {\n hydra: process.env.HYDRA_SERVICE_URL || 'https://api.ciscospark.com/v1',\n hydraServiceUrl: process.env.HYDRA_SERVICE_URL || 'https://api.ciscospark.com/v1'\n },\n validateDomains: true,\n // It is okay to pass the auth token to the following domains:\n whitelistedServiceDomains: [\n 'wbx2.com',\n 'ciscospark.com',\n 'webex.com'\n ]\n },\n metrics: {\n type: ['behavioral', 'operational']\n },\n payloadTransformer: {\n predicates: [],\n transforms: []\n },\n storage: {\n boundedAdapter: MemoryStoreAdapter,\n unboundedAdapter: MemoryStoreAdapter\n }\n};\n"],"mappings":";;;;;;;;;;;;AAMA;;AACA;;AAPA;AACA;AACA;;AAEA;eAKe;EACbA,oBAAoB,EAAE,EADT;EAEbC,iBAAiB,EAAE,CAFN;EAGbC,wBAAwB,EAAE,CAHb;EAIbC,oBAAoB,EAAE,CAJT;EAKbC,cAAc,EAAE,EALH;EAMbC,gBAAgB,EAAE,cANL;EAObC,gBAAgB,EAAE,EAPL;EAQbC,eAAe,EAAEC,SARJ;EASbC,WAAW,EAAE,IAAIC,0BAAJ,EATA;EAUbC,OAAO,EAAEC,OAAO,CAACC,GAAR,CAAYC,cAAZ,IAA8B,KAV1B;EAWbC,QAAQ,EAAE;IACR;AACJ;AACA;AACA;AACA;IACIC,SAAS,EAAE;MACT;AACN;AACA;AACA;AACA;MACMC,KAAK,EAAEL,OAAO,CAACC,GAAR,CAAYK,iBAAZ,IAAiC,+BAN/B;;MAQT;AACN;AACA;AACA;AACA;MACMC,GAAG,EAAEP,OAAO,CAACC,GAAR,CAAYO,eAAZ,IAA+B;IAb3B,CANH;;IAsBR;AACJ;AACA;AACA;AACA;IACIC,eAAe,EAAE,IA3BT;;IA6BR;AACJ;AACA;IAEIC,yBAAyB,EAAE,CACzB,sBADyB,CAjCnB;;IAqCR;AACJ;AACA;AACA;AACA;IACIC,cAAc,EAAE,CACd,UADc,EAEd,gBAFc,EAGd,WAHc,EAId,eAJc;EA1CR,CAXG;EA4DbC,MAAM,EAAE;IACNC,oBAAoB,EAAE;MACpBR,KAAK,EAAEL,OAAO,CAACC,GAAR,CAAYK,iBAAZ,IAAiC,+BADpB;MAEpBQ,eAAe,EAAEd,OAAO,CAACC,GAAR,CAAYK,iBAAZ,IAAiC;IAF9B,CADhB;IAKNG,eAAe,EAAE,IALX;IAMN;IACAM,yBAAyB,EAAE,CACzB,UADyB,EAEzB,gBAFyB,EAGzB,WAHyB;EAPrB,CA5DK;EAyEbC,OAAO,EAAE;IACPC,IAAI,EAAE,CAAC,YAAD,EAAe,aAAf;EADC,CAzEI;EA4EbC,kBAAkB,EAAE;IAClBC,UAAU,EAAE,EADM;IAElBC,UAAU,EAAE;EAFM,CA5EP;EAgFbC,OAAO,EAAE;IACPC,cAAc,EAAEC,2BADT;IAEPC,gBAAgB,EAAED;EAFX;AAhFI,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["CredentialsConfig","AmpState","extend","extraProperties","props","idbroker","url","process","env","IDBROKER_BASE_URL","identity","IDENTITY_BASE_URL","authorizationString","WEBEX_AUTHORIZATION_STRING","AUTHORIZATION_STRING","authorizeUrl","WEBEX_AUTHORIZE_URL","client_id","WEBEX_CLIENT_ID","COMMON_IDENTITY_CLIENT_ID","CLIENT_ID","client_secret","WEBEX_CLIENT_SECRET","COMMON_IDENTITY_CLIENT_SECRET","CLIENT_SECRET","redirect_uri","WEBEX_REDIRECT_URI","COMMON_IDENTITY_REDIRECT_URI","REDIRECT_URI","scope","WEBEX_SCOPE","WEBEX_SCOPES","COMMON_IDENTITY_SCOPE","SCOPE","cisService","derived","activationUrl","deps","fn","cache","generateOtpUrl","validateOtpUrl","tokenUrl","TOKEN_URL","revokeUrl","REVOKE_URL","logoutUrl","setPasswordUrl"],"sources":["credentials-config.js"],"sourcesContent":["import AmpState from 'ampersand-state';\n\n// The credentials config which includes the CI server info and derived\n// URL properties from them for the various CI services. The URL's\n// will be updated when the CI changes.\nconst CredentialsConfig = AmpState.extend({\n\n // we need to allow extra props for dynamic props like jwtRefreshCallback\n extraProperties: 'allow',\n\n props: {\n /**\n * The idbroker base host name\n * @returns {object}\n */\n idbroker: ['object', false, (() => ({\n url: process.env.IDBROKER_BASE_URL || 'https://idbroker.webex.com'\n }))],\n\n /**\n * The identity base host name\n * @returns {object}\n */\n identity: ['object', false, (() => ({\n url: process.env.IDENTITY_BASE_URL || 'https://identity.webex.com'\n }))],\n\n /**\n * This is the authorization url displayed on the\n * {@link developer portal|https://developer.webex.com}\n * @type {string}\n */\n authorizationString: ['string', false, process.env.WEBEX_AUTHORIZATION_STRING || process.env.AUTHORIZATION_STRING],\n\n /**\n * Authorization URL which prompts for user's password. Inferred from\n * {@link config.credentials.authorizationString}. This config value will\n * be automatically set if `authorizationString` config value is specified.\n *\n * @type {string}\n */\n authorizeUrl: [\n 'string',\n false,\n process.env.WEBEX_AUTHORIZE_URL ||\n `${process.env.IDBROKER_BASE_URL || 'https://idbroker.webex.com'}/idb/oauth2/v1/authorize`\n ],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n client_id: ['string', false, process.env.WEBEX_CLIENT_ID || process.env.COMMON_IDENTITY_CLIENT_ID || process.env.CLIENT_ID],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n client_secret: ['string', false, process.env.WEBEX_CLIENT_SECRET || process.env.COMMON_IDENTITY_CLIENT_SECRET || process.env.CLIENT_SECRET],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n redirect_uri: ['string', false, process.env.WEBEX_REDIRECT_URI || process.env.COMMON_IDENTITY_REDIRECT_URI || process.env.REDIRECT_URI],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n scope: ['string', false, process.env.WEBEX_SCOPE || process.env.WEBEX_SCOPES || process.env.COMMON_IDENTITY_SCOPE || process.env.SCOPE],\n\n /**\n * Controls the UI of the CI login page.\n * @private\n * @type {string}\n */\n cisService: ['string', false, 'webex']\n },\n\n derived: {\n /**\n * User activation URL\n * {@link config.credentials.activationUrl}\n * @type {string}\n */\n activationUrl: {\n deps: ['idbroker.url'],\n fn() {\n return `${this.idbroker.url || 'https://idbroker.webex.com'}/idb/token/v1/actions/UserActivation/invoke`;\n },\n cache: false\n },\n\n /**\n * Generate OTP URL\n * {@link config.credentials.generateOtpUrl}\n * @type {string}\n */\n generateOtpUrl: {\n deps: ['idbroker.url'],\n fn() {\n return `${this.idbroker.url || 'https://idbroker.webex.com'}/idb/token/v1/actions/UserOTP/Generate/invoke`;\n },\n cache: false\n },\n\n /**\n * Validate OTP URL\n * {@link config.credentials.validateOtpUrl}\n * @type {string}\n */\n validateOtpUrl: {\n deps: ['idbroker.url'],\n fn() {\n return `${this.idbroker.url || 'https://idbroker.webex.com'}/idb/token/v1/actions/UserOTP/Validate/invoke`;\n },\n cache: false\n },\n\n // TODO does hydra also have an access_token endpoint?\n /**\n * Token URL used for token refresh and auth code exchange\n * @type {string}\n */\n tokenUrl: {\n deps: ['idbroker.url'],\n fn() {\n return process.env.TOKEN_URL || `${this.idbroker.url}/idb/oauth2/v1/access_token`;\n },\n cache: false\n },\n\n /**\n * URL to revoke token\n * @type {string}\n */\n revokeUrl: {\n deps: ['idbroker.url'],\n fn() {\n return process.env.REVOKE_URL || `${this.idbroker.url}/idb/oauth2/v1/revoke`;\n },\n cache: false\n },\n\n /**\n * URL to load when the app logs out\n * @type {string}\n */\n logoutUrl: {\n deps: ['idbroker.url'],\n fn() {\n return `${this.idbroker.url}/idb/oauth2/v1/logout`;\n },\n cache: false\n },\n\n /**\n * Set password URL\n * @type {string}\n */\n setPasswordUrl: {\n deps: ['identity.url'],\n fn() {\n return `${this.identity.url || 'https://identity.webex.com'}/identity/scim/v1/Users`;\n },\n cache: false\n }\n\n }\n\n});\n\nexport default CredentialsConfig;\n"],"mappings":";;;;;;;;;;;;AAAA;;AAEA;AACA;AACA;AACA,IAAMA,iBAAiB,GAAGC,wBAASC,MAAT,CAAgB;EAExC;EACAC,eAAe,EAAE,OAHuB;EAKxCC,KAAK,EAAE;IACL;AACJ;AACA;AACA;IACIC,QAAQ,EAAE,CAAC,QAAD,EAAW,KAAX,EAAmB;MAAA,OAAO;QAClCC,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,iBAAZ,IAAiC;MADJ,CAAP;IAAA,CAAnB,CALL;;IASL;AACJ;AACA;AACA;IACIC,QAAQ,EAAE,CAAC,QAAD,EAAW,KAAX,EAAmB;MAAA,OAAO;QAClCJ,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYG,iBAAZ,IAAiC;MADJ,CAAP;IAAA,CAAnB,CAbL;;IAiBL;AACJ;AACA;AACA;AACA;IACIC,mBAAmB,EAAE,CAAC,QAAD,EAAW,KAAX,EAAkBL,OAAO,CAACC,GAAR,CAAYK,0BAAZ,IAA0CN,OAAO,CAACC,GAAR,CAAYM,oBAAxE,CAtBhB;;IAwBL;AACJ;AACA;AACA;AACA;AACA;AACA;IACIC,YAAY,EAAE,CACZ,QADY,EAEZ,KAFY,EAGZR,OAAO,CAACC,GAAR,CAAYQ,mBAAZ,cACIT,OAAO,CAACC,GAAR,CAAYC,iBAAZ,IAAiC,4BADrC,6BAHY,CA/BT;;IAsCL;AACJ;AACA;AACA;IACIQ,SAAS,EAAE,CAAC,QAAD,EAAW,KAAX,EAAkBV,OAAO,CAACC,GAAR,CAAYU,eAAZ,IAA+BX,OAAO,CAACC,GAAR,CAAYW,yBAA3C,IAAwEZ,OAAO,CAACC,GAAR,CAAYY,SAAtG,CA1CN;;IA4CL;AACJ;AACA;AACA;IACIC,aAAa,EAAE,CAAC,QAAD,EAAW,KAAX,EAAkBd,OAAO,CAACC,GAAR,CAAYc,mBAAZ,IAAmCf,OAAO,CAACC,GAAR,CAAYe,6BAA/C,IAAgFhB,OAAO,CAACC,GAAR,CAAYgB,aAA9G,CAhDV;;IAkDL;AACJ;AACA;AACA;IACIC,YAAY,EAAE,CAAC,QAAD,EAAW,KAAX,EAAkBlB,OAAO,CAACC,GAAR,CAAYkB,kBAAZ,IAAkCnB,OAAO,CAACC,GAAR,CAAYmB,4BAA9C,IAA8EpB,OAAO,CAACC,GAAR,CAAYoB,YAA5G,CAtDT;;IAwDL;AACJ;AACA;AACA;IACIC,KAAK,EAAE,CAAC,QAAD,EAAW,KAAX,EAAkBtB,OAAO,CAACC,GAAR,CAAYsB,WAAZ,IAA2BvB,OAAO,CAACC,GAAR,CAAYuB,YAAvC,IAAuDxB,OAAO,CAACC,GAAR,CAAYwB,qBAAnE,IAA4FzB,OAAO,CAACC,GAAR,CAAYyB,KAA1H,CA5DF;;IA8DL;AACJ;AACA;AACA;AACA;IACIC,UAAU,EAAE,CAAC,QAAD,EAAW,KAAX,EAAkB,OAAlB;EAnEP,CALiC;EA2ExCC,OAAO,EAAE;IACP;AACJ;AACA;AACA;AACA;IACIC,aAAa,EAAE;MACbC,IAAI,EAAE,CAAC,cAAD,CADO;MAEbC,EAFa,gBAER;QACH,iBAAU,KAAKjC,QAAL,CAAcC,GAAd,IAAqB,4BAA/B;MACD,CAJY;MAKbiC,KAAK,EAAE;IALM,CANR;;IAcP;AACJ;AACA;AACA;AACA;IACIC,cAAc,EAAE;MACdH,IAAI,EAAE,CAAC,cAAD,CADQ;MAEdC,EAFc,gBAET;QACH,iBAAU,KAAKjC,QAAL,CAAcC,GAAd,IAAqB,4BAA/B;MACD,CAJa;MAKdiC,KAAK,EAAE;IALO,CAnBT;;IA2BP;AACJ;AACA;AACA;AACA;IACIE,cAAc,EAAE;MACdJ,IAAI,EAAE,CAAC,cAAD,CADQ;MAEdC,EAFc,gBAET;QACH,iBAAU,KAAKjC,QAAL,CAAcC,GAAd,IAAqB,4BAA/B;MACD,CAJa;MAKdiC,KAAK,EAAE;IALO,CAhCT;IAwCP;;IACA;AACJ;AACA;AACA;IACIG,QAAQ,EAAE;MACRL,IAAI,EAAE,CAAC,cAAD,CADE;MAERC,EAFQ,gBAEH;QACH,OAAO/B,OAAO,CAACC,GAAR,CAAYmC,SAAZ,cAA4B,KAAKtC,QAAL,CAAcC,GAA1C,gCAAP;MACD,CAJO;MAKRiC,KAAK,EAAE;IALC,CA7CH;;IAqDP;AACJ;AACA;AACA;IACIK,SAAS,EAAE;MACTP,IAAI,EAAE,CAAC,cAAD,CADG;MAETC,EAFS,gBAEJ;QACH,OAAO/B,OAAO,CAACC,GAAR,CAAYqC,UAAZ,cAA6B,KAAKxC,QAAL,CAAcC,GAA3C,0BAAP;MACD,CAJQ;MAKTiC,KAAK,EAAE;IALE,CAzDJ;;IAiEP;AACJ;AACA;AACA;IACIO,SAAS,EAAE;MACTT,IAAI,EAAE,CAAC,cAAD,CADG;MAETC,EAFS,gBAEJ;QACH,iBAAU,KAAKjC,QAAL,CAAcC,GAAxB;MACD,CAJQ;MAKTiC,KAAK,EAAE;IALE,CArEJ;;IA6EP;AACJ;AACA;AACA;IACIQ,cAAc,EAAE;MACdV,IAAI,EAAE,CAAC,cAAD,CADQ;MAEdC,EAFc,gBAET;QACH,iBAAU,KAAK5B,QAAL,CAAcJ,GAAd,IAAqB,4BAA/B;MACD,CAJa;MAKdiC,KAAK,EAAE;IALO;EAjFT;AA3E+B,CAAhB,CAA1B;;eAwKevC,iB"}
|
package/dist/index.js
CHANGED
|
@@ -14,311 +14,311 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
14
14
|
value: true
|
|
15
15
|
});
|
|
16
16
|
|
|
17
|
-
_Object$defineProperty(exports, "
|
|
17
|
+
_Object$defineProperty(exports, "AuthInterceptor", {
|
|
18
18
|
enumerable: true,
|
|
19
19
|
get: function get() {
|
|
20
|
-
return
|
|
20
|
+
return _auth.default;
|
|
21
21
|
}
|
|
22
22
|
});
|
|
23
23
|
|
|
24
|
-
_Object$defineProperty(exports, "
|
|
24
|
+
_Object$defineProperty(exports, "Batcher", {
|
|
25
25
|
enumerable: true,
|
|
26
26
|
get: function get() {
|
|
27
|
-
return
|
|
27
|
+
return _batcher.default;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
|
|
31
|
-
_Object$defineProperty(exports, "
|
|
31
|
+
_Object$defineProperty(exports, "Credentials", {
|
|
32
32
|
enumerable: true,
|
|
33
33
|
get: function get() {
|
|
34
|
-
return _credentials.
|
|
34
|
+
return _credentials.Credentials;
|
|
35
35
|
}
|
|
36
36
|
});
|
|
37
37
|
|
|
38
|
-
_Object$defineProperty(exports, "
|
|
38
|
+
_Object$defineProperty(exports, "DefaultOptionsInterceptor", {
|
|
39
39
|
enumerable: true,
|
|
40
40
|
get: function get() {
|
|
41
|
-
return
|
|
41
|
+
return _defaultOptions.default;
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
44
|
|
|
45
|
-
_Object$defineProperty(exports, "
|
|
45
|
+
_Object$defineProperty(exports, "EmbargoInterceptor", {
|
|
46
46
|
enumerable: true,
|
|
47
47
|
get: function get() {
|
|
48
|
-
return
|
|
48
|
+
return _embargo.default;
|
|
49
49
|
}
|
|
50
50
|
});
|
|
51
51
|
|
|
52
|
-
_Object$defineProperty(exports, "
|
|
52
|
+
_Object$defineProperty(exports, "MemoryStoreAdapter", {
|
|
53
53
|
enumerable: true,
|
|
54
54
|
get: function get() {
|
|
55
|
-
return
|
|
55
|
+
return _storage.MemoryStoreAdapter;
|
|
56
56
|
}
|
|
57
57
|
});
|
|
58
58
|
|
|
59
|
-
_Object$defineProperty(exports, "
|
|
59
|
+
_Object$defineProperty(exports, "NetworkTimingInterceptor", {
|
|
60
60
|
enumerable: true,
|
|
61
61
|
get: function get() {
|
|
62
|
-
return
|
|
62
|
+
return _networkTiming.default;
|
|
63
63
|
}
|
|
64
64
|
});
|
|
65
65
|
|
|
66
|
-
_Object$defineProperty(exports, "
|
|
66
|
+
_Object$defineProperty(exports, "NotFoundError", {
|
|
67
67
|
enumerable: true,
|
|
68
68
|
get: function get() {
|
|
69
|
-
return
|
|
69
|
+
return _storage.NotFoundError;
|
|
70
70
|
}
|
|
71
71
|
});
|
|
72
72
|
|
|
73
|
-
_Object$defineProperty(exports, "
|
|
73
|
+
_Object$defineProperty(exports, "Page", {
|
|
74
74
|
enumerable: true,
|
|
75
75
|
get: function get() {
|
|
76
|
-
return
|
|
76
|
+
return _page.default;
|
|
77
77
|
}
|
|
78
78
|
});
|
|
79
79
|
|
|
80
|
-
_Object$defineProperty(exports, "
|
|
80
|
+
_Object$defineProperty(exports, "PayloadTransformerInterceptor", {
|
|
81
81
|
enumerable: true,
|
|
82
82
|
get: function get() {
|
|
83
|
-
return
|
|
83
|
+
return _payloadTransformer.default;
|
|
84
84
|
}
|
|
85
85
|
});
|
|
86
86
|
|
|
87
|
-
_Object$defineProperty(exports, "
|
|
87
|
+
_Object$defineProperty(exports, "RateLimitInterceptor", {
|
|
88
88
|
enumerable: true,
|
|
89
89
|
get: function get() {
|
|
90
|
-
return
|
|
90
|
+
return _rateLimit.default;
|
|
91
91
|
}
|
|
92
92
|
});
|
|
93
93
|
|
|
94
|
-
_Object$defineProperty(exports, "
|
|
94
|
+
_Object$defineProperty(exports, "RedirectInterceptor", {
|
|
95
95
|
enumerable: true,
|
|
96
96
|
get: function get() {
|
|
97
|
-
return
|
|
97
|
+
return _redirect.default;
|
|
98
98
|
}
|
|
99
99
|
});
|
|
100
100
|
|
|
101
|
-
_Object$defineProperty(exports, "
|
|
101
|
+
_Object$defineProperty(exports, "RequestEventInterceptor", {
|
|
102
102
|
enumerable: true,
|
|
103
103
|
get: function get() {
|
|
104
|
-
return
|
|
104
|
+
return _requestEvent.default;
|
|
105
105
|
}
|
|
106
106
|
});
|
|
107
107
|
|
|
108
|
-
_Object$defineProperty(exports, "
|
|
108
|
+
_Object$defineProperty(exports, "RequestLoggerInterceptor", {
|
|
109
109
|
enumerable: true,
|
|
110
110
|
get: function get() {
|
|
111
|
-
return
|
|
111
|
+
return _requestLogger.default;
|
|
112
112
|
}
|
|
113
113
|
});
|
|
114
114
|
|
|
115
|
-
_Object$defineProperty(exports, "
|
|
115
|
+
_Object$defineProperty(exports, "RequestTimingInterceptor", {
|
|
116
116
|
enumerable: true,
|
|
117
117
|
get: function get() {
|
|
118
|
-
return
|
|
118
|
+
return _requestTiming.default;
|
|
119
119
|
}
|
|
120
120
|
});
|
|
121
121
|
|
|
122
|
-
_Object$defineProperty(exports, "
|
|
122
|
+
_Object$defineProperty(exports, "ResponseLoggerInterceptor", {
|
|
123
123
|
enumerable: true,
|
|
124
124
|
get: function get() {
|
|
125
|
-
return
|
|
125
|
+
return _responseLogger.default;
|
|
126
126
|
}
|
|
127
127
|
});
|
|
128
128
|
|
|
129
|
-
_Object$defineProperty(exports, "
|
|
129
|
+
_Object$defineProperty(exports, "ServerErrorInterceptor", {
|
|
130
130
|
enumerable: true,
|
|
131
131
|
get: function get() {
|
|
132
|
-
return
|
|
132
|
+
return _services.ServerErrorInterceptor;
|
|
133
133
|
}
|
|
134
134
|
});
|
|
135
135
|
|
|
136
|
-
_Object$defineProperty(exports, "
|
|
136
|
+
_Object$defineProperty(exports, "ServiceCatalog", {
|
|
137
137
|
enumerable: true,
|
|
138
138
|
get: function get() {
|
|
139
|
-
return
|
|
139
|
+
return _services.ServiceCatalog;
|
|
140
140
|
}
|
|
141
141
|
});
|
|
142
142
|
|
|
143
|
-
_Object$defineProperty(exports, "
|
|
143
|
+
_Object$defineProperty(exports, "ServiceHost", {
|
|
144
144
|
enumerable: true,
|
|
145
145
|
get: function get() {
|
|
146
|
-
return
|
|
146
|
+
return _services.ServiceHost;
|
|
147
147
|
}
|
|
148
148
|
});
|
|
149
149
|
|
|
150
|
-
_Object$defineProperty(exports, "
|
|
150
|
+
_Object$defineProperty(exports, "ServiceInterceptor", {
|
|
151
151
|
enumerable: true,
|
|
152
152
|
get: function get() {
|
|
153
|
-
return
|
|
153
|
+
return _services.ServiceInterceptor;
|
|
154
154
|
}
|
|
155
155
|
});
|
|
156
156
|
|
|
157
|
-
_Object$defineProperty(exports, "
|
|
157
|
+
_Object$defineProperty(exports, "ServiceRegistry", {
|
|
158
158
|
enumerable: true,
|
|
159
159
|
get: function get() {
|
|
160
|
-
return
|
|
160
|
+
return _services.ServiceRegistry;
|
|
161
161
|
}
|
|
162
162
|
});
|
|
163
163
|
|
|
164
|
-
_Object$defineProperty(exports, "
|
|
164
|
+
_Object$defineProperty(exports, "ServiceState", {
|
|
165
165
|
enumerable: true,
|
|
166
166
|
get: function get() {
|
|
167
|
-
return
|
|
167
|
+
return _services.ServiceState;
|
|
168
168
|
}
|
|
169
169
|
});
|
|
170
170
|
|
|
171
|
-
_Object$defineProperty(exports, "
|
|
171
|
+
_Object$defineProperty(exports, "ServiceUrl", {
|
|
172
172
|
enumerable: true,
|
|
173
173
|
get: function get() {
|
|
174
|
-
return
|
|
174
|
+
return _services.ServiceUrl;
|
|
175
175
|
}
|
|
176
176
|
});
|
|
177
177
|
|
|
178
|
-
_Object$defineProperty(exports, "
|
|
178
|
+
_Object$defineProperty(exports, "Services", {
|
|
179
179
|
enumerable: true,
|
|
180
180
|
get: function get() {
|
|
181
|
-
return
|
|
181
|
+
return _services.Services;
|
|
182
182
|
}
|
|
183
183
|
});
|
|
184
184
|
|
|
185
|
-
_Object$defineProperty(exports, "
|
|
185
|
+
_Object$defineProperty(exports, "StatelessWebexPlugin", {
|
|
186
186
|
enumerable: true,
|
|
187
187
|
get: function get() {
|
|
188
|
-
return
|
|
188
|
+
return _statelessWebexPlugin.default;
|
|
189
189
|
}
|
|
190
190
|
});
|
|
191
191
|
|
|
192
|
-
_Object$defineProperty(exports, "
|
|
192
|
+
_Object$defineProperty(exports, "StorageError", {
|
|
193
193
|
enumerable: true,
|
|
194
194
|
get: function get() {
|
|
195
|
-
return
|
|
195
|
+
return _storage.StorageError;
|
|
196
196
|
}
|
|
197
197
|
});
|
|
198
198
|
|
|
199
|
-
_Object$defineProperty(exports, "
|
|
199
|
+
_Object$defineProperty(exports, "Token", {
|
|
200
200
|
enumerable: true,
|
|
201
201
|
get: function get() {
|
|
202
|
-
return
|
|
202
|
+
return _credentials.Token;
|
|
203
203
|
}
|
|
204
204
|
});
|
|
205
205
|
|
|
206
|
-
_Object$defineProperty(exports, "
|
|
206
|
+
_Object$defineProperty(exports, "UserAgentInterceptor", {
|
|
207
207
|
enumerable: true,
|
|
208
208
|
get: function get() {
|
|
209
|
-
return
|
|
209
|
+
return _userAgent.default;
|
|
210
210
|
}
|
|
211
211
|
});
|
|
212
212
|
|
|
213
|
-
_Object$defineProperty(exports, "
|
|
213
|
+
_Object$defineProperty(exports, "WebexHttpError", {
|
|
214
214
|
enumerable: true,
|
|
215
215
|
get: function get() {
|
|
216
|
-
return
|
|
216
|
+
return _webexHttpError.default;
|
|
217
217
|
}
|
|
218
218
|
});
|
|
219
219
|
|
|
220
|
-
_Object$defineProperty(exports, "
|
|
220
|
+
_Object$defineProperty(exports, "WebexPlugin", {
|
|
221
221
|
enumerable: true,
|
|
222
222
|
get: function get() {
|
|
223
|
-
return
|
|
223
|
+
return _webexPlugin.default;
|
|
224
224
|
}
|
|
225
225
|
});
|
|
226
226
|
|
|
227
|
-
_Object$defineProperty(exports, "
|
|
227
|
+
_Object$defineProperty(exports, "WebexTrackingIdInterceptor", {
|
|
228
228
|
enumerable: true,
|
|
229
229
|
get: function get() {
|
|
230
|
-
return
|
|
230
|
+
return _webexTrackingId.default;
|
|
231
231
|
}
|
|
232
232
|
});
|
|
233
233
|
|
|
234
|
-
_Object$defineProperty(exports, "
|
|
234
|
+
_Object$defineProperty(exports, "WebexUserAgentInterceptor", {
|
|
235
235
|
enumerable: true,
|
|
236
236
|
get: function get() {
|
|
237
|
-
return
|
|
237
|
+
return _webexUserAgent.default;
|
|
238
238
|
}
|
|
239
239
|
});
|
|
240
240
|
|
|
241
|
-
_Object$defineProperty(exports, "
|
|
241
|
+
_Object$defineProperty(exports, "config", {
|
|
242
242
|
enumerable: true,
|
|
243
243
|
get: function get() {
|
|
244
|
-
return
|
|
244
|
+
return _config.default;
|
|
245
245
|
}
|
|
246
246
|
});
|
|
247
247
|
|
|
248
|
-
_Object$defineProperty(exports, "
|
|
248
|
+
_Object$defineProperty(exports, "default", {
|
|
249
249
|
enumerable: true,
|
|
250
250
|
get: function get() {
|
|
251
|
-
return
|
|
251
|
+
return _webexCore.default;
|
|
252
252
|
}
|
|
253
253
|
});
|
|
254
254
|
|
|
255
|
-
_Object$defineProperty(exports, "
|
|
255
|
+
_Object$defineProperty(exports, "filterScope", {
|
|
256
256
|
enumerable: true,
|
|
257
257
|
get: function get() {
|
|
258
|
-
return
|
|
258
|
+
return _credentials.filterScope;
|
|
259
259
|
}
|
|
260
260
|
});
|
|
261
261
|
|
|
262
|
-
_Object$defineProperty(exports, "
|
|
262
|
+
_Object$defineProperty(exports, "grantErrors", {
|
|
263
263
|
enumerable: true,
|
|
264
264
|
get: function get() {
|
|
265
|
-
return
|
|
265
|
+
return _credentials.grantErrors;
|
|
266
266
|
}
|
|
267
267
|
});
|
|
268
268
|
|
|
269
|
-
_Object$defineProperty(exports, "
|
|
269
|
+
_Object$defineProperty(exports, "makeWebexPluginStore", {
|
|
270
270
|
enumerable: true,
|
|
271
271
|
get: function get() {
|
|
272
|
-
return
|
|
272
|
+
return _storage.makeWebexPluginStore;
|
|
273
273
|
}
|
|
274
274
|
});
|
|
275
275
|
|
|
276
|
-
_Object$defineProperty(exports, "
|
|
276
|
+
_Object$defineProperty(exports, "makeWebexStore", {
|
|
277
277
|
enumerable: true,
|
|
278
278
|
get: function get() {
|
|
279
|
-
return
|
|
279
|
+
return _storage.makeWebexStore;
|
|
280
280
|
}
|
|
281
281
|
});
|
|
282
282
|
|
|
283
|
-
_Object$defineProperty(exports, "
|
|
283
|
+
_Object$defineProperty(exports, "persist", {
|
|
284
284
|
enumerable: true,
|
|
285
285
|
get: function get() {
|
|
286
|
-
return
|
|
286
|
+
return _storage.persist;
|
|
287
287
|
}
|
|
288
288
|
});
|
|
289
289
|
|
|
290
|
-
_Object$defineProperty(exports, "
|
|
290
|
+
_Object$defineProperty(exports, "registerInternalPlugin", {
|
|
291
291
|
enumerable: true,
|
|
292
292
|
get: function get() {
|
|
293
|
-
return
|
|
293
|
+
return _webexCore.registerInternalPlugin;
|
|
294
294
|
}
|
|
295
295
|
});
|
|
296
296
|
|
|
297
|
-
_Object$defineProperty(exports, "
|
|
297
|
+
_Object$defineProperty(exports, "registerPlugin", {
|
|
298
298
|
enumerable: true,
|
|
299
299
|
get: function get() {
|
|
300
|
-
return
|
|
300
|
+
return _webexCore.registerPlugin;
|
|
301
301
|
}
|
|
302
302
|
});
|
|
303
303
|
|
|
304
|
-
_Object$defineProperty(exports, "
|
|
304
|
+
_Object$defineProperty(exports, "serviceConstants", {
|
|
305
305
|
enumerable: true,
|
|
306
306
|
get: function get() {
|
|
307
|
-
return
|
|
307
|
+
return _services.constants;
|
|
308
308
|
}
|
|
309
309
|
});
|
|
310
310
|
|
|
311
|
-
_Object$defineProperty(exports, "
|
|
311
|
+
_Object$defineProperty(exports, "sortScope", {
|
|
312
312
|
enumerable: true,
|
|
313
313
|
get: function get() {
|
|
314
|
-
return
|
|
314
|
+
return _credentials.sortScope;
|
|
315
315
|
}
|
|
316
316
|
});
|
|
317
317
|
|
|
318
|
-
_Object$defineProperty(exports, "
|
|
318
|
+
_Object$defineProperty(exports, "waitForValue", {
|
|
319
319
|
enumerable: true,
|
|
320
320
|
get: function get() {
|
|
321
|
-
return
|
|
321
|
+
return _storage.waitForValue;
|
|
322
322
|
}
|
|
323
323
|
});
|
|
324
324
|
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":[],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n *\n * Services is currently a part of webex-core due to how the contents of\n * the original internal-plugin-services needed to be accessed when webex-core\n * is initialized. As a plugin outside of webex-core, it would initialize after\n * credentials, causing all requests prior to its initialization to fail\n * federation requirements, and instead send requests to the environmentally-\n * assigned urls.\n */\n\nimport './plugins/logger';\nimport './lib/credentials';\nimport './lib/services';\n\nexport {\n Credentials,\n filterScope,\n grantErrors,\n sortScope,\n Token\n} from './lib/credentials';\n\nexport {\n constants as serviceConstants,\n ServiceCatalog,\n ServiceRegistry,\n ServiceState,\n ServiceInterceptor,\n ServerErrorInterceptor,\n Services,\n ServiceHost,\n ServiceUrl\n} from './lib/services';\n\nexport {\n makeWebexStore,\n makeWebexPluginStore,\n MemoryStoreAdapter,\n NotFoundError,\n persist,\n StorageError,\n waitForValue\n} from './lib/storage';\n\nexport {\n default,\n registerPlugin,\n registerInternalPlugin\n} from './webex-core';\n\nexport {default as WebexHttpError} from './lib/webex-http-error';\nexport {default as StatelessWebexPlugin} from './lib/stateless-webex-plugin';\nexport {default as WebexPlugin} from './lib/webex-plugin';\nexport {default as AuthInterceptor} from './interceptors/auth';\nexport {default as NetworkTimingInterceptor} from './interceptors/network-timing';\nexport {default as PayloadTransformerInterceptor} from './interceptors/payload-transformer';\nexport {default as RedirectInterceptor} from './interceptors/redirect';\nexport {default as ResponseLoggerInterceptor} from './interceptors/response-logger';\nexport {default as RequestEventInterceptor} from './interceptors/request-event';\nexport {default as RequestLoggerInterceptor} from './interceptors/request-logger';\nexport {default as RequestTimingInterceptor} from './interceptors/request-timing';\nexport {default as UserAgentInterceptor} from './interceptors/user-agent';\nexport {default as WebexTrackingIdInterceptor} from './interceptors/webex-tracking-id';\nexport {default as WebexUserAgentInterceptor} from './interceptors/webex-user-agent';\nexport {default as RateLimitInterceptor} from './interceptors/rate-limit';\nexport {default as EmbargoInterceptor} from './interceptors/embargo';\nexport {default as DefaultOptionsInterceptor} from './interceptors/default-options';\n\nexport {default as Batcher} from './lib/batcher';\nexport {default as Page} from './lib/page';\nexport {default as config} from './config';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA;;AACA;;AACA;;AAsBA;;AAUA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["AuthInterceptor","options","headers","authorization","resolve","requiresCredentials","then","requires","webex","credentials","getUserToken","token","toString","addAuthHeader","internal","services","details","getServiceFromUrl","uri","name","resource","service","api","includes","validateDomains","hasAllowedDomains","isAllowedDomainUrl","waitForService","url","detectedUrl","catch","error","logger","warn","reason","shouldAttemptReauth","info","canRefresh","refresh","replay","reject","replayCount","config","maxAuthenticationReplays","Error","request","shouldRefreshAccessToken","statusCode","Interceptor"],"sources":["auth.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 AuthInterceptor extends Interceptor {\n /**\n * @returns {AuthInterceptor}\n */\n static create() {\n return new AuthInterceptor({webex: this});\n }\n\n /**\n * @see {@link Interceptor#onRequest}\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n options.headers = options.headers || {};\n\n // If Authorizations is already set, don't overwrite it\n if ('authorization' in options.headers || 'auth' in options) {\n // If Authorization is set to null, false, or undefined, delete it to\n // prevent a CORS preflight.\n if (!options.headers.authorization) {\n Reflect.deleteProperty(options.headers, 'authorization');\n }\n\n return Promise.resolve(options);\n }\n\n return this.requiresCredentials(options)\n .then((requires) => {\n if (!requires) {\n return options;\n }\n\n return this.webex.credentials.getUserToken()\n .then((token) => {\n options.headers.authorization = token.toString();\n\n return options;\n });\n });\n }\n\n /**\n * Determines if the provided options object needs an authorization header.\n *\n * @param {Object} options\n * @returns {Promise<boolean>}\n */\n requiresCredentials(options) {\n // Validate that authorization is necessary.\n if (options.addAuthHeader === false) {\n return Promise.resolve(false);\n }\n\n // Validate that the services plugin has been loaded before proceeding.\n if (!this.webex.internal.services) {\n return Promise.resolve(false);\n }\n\n // Destructure webex instance to isolate services plugin.\n const {services} = this.webex.internal;\n\n // Store the current service details if available and destructure details.\n const details = services.getServiceFromUrl(options.uri || '');\n const {name} = details || {};\n const {resource, uri} = options;\n const service = options.service || options.api;\n\n // Unique validation for the u2c service.\n if ((service && service === 'u2c') || (name && name === 'u2c')) {\n if (\n (resource && resource.includes('limited')) ||\n (uri && uri.includes('limited'))\n ) {\n return Promise.resolve(false);\n }\n\n return Promise.resolve(true);\n }\n\n\n // Validate that the allowed domains can be utilized.\n if (services.validateDomains &&\n services.hasAllowedDomains() &&\n (uri && services.isAllowedDomainUrl(uri))) {\n return Promise.resolve(true);\n }\n\n // Perform an additional validation in case the service does not exist yet.\n return services.waitForService({name: service, url: uri})\n .then((detectedUrl) => {\n // Validate that the url exists in the catalog.\n if (services.getServiceFromUrl(detectedUrl)) {\n return true;\n }\n\n // Return false to indicate authentication is not required.\n return false;\n })\n .catch((error) => {\n this.webex.logger.warn(\n 'auth-interceptor: failed to validate service exists in catalog',\n error\n );\n\n return false;\n });\n }\n\n /**\n * @see {@link Interceptor#onResponseError}\n * @param {Object} options\n * @param {Error} reason\n * @returns {Object}\n */\n onResponseError(options, reason) {\n return this.shouldAttemptReauth(reason, options)\n .then((shouldAttemptReauth) => {\n if (shouldAttemptReauth) {\n this.webex.logger.info('auth: received 401, attempting to reauthenticate');\n\n if (reason.options.headers) {\n Reflect.deleteProperty(reason.options.headers, 'authorization');\n }\n\n if (this.webex.credentials.canRefresh) {\n return this.webex.credentials.refresh()\n .then(() => this.replay(options));\n }\n }\n\n return Promise.reject(reason);\n });\n }\n\n /**\n * Replays the request\n * @param {Object} options\n * @returns {Object}\n */\n replay(options) {\n if (options.replayCount) {\n options.replayCount += 1;\n }\n else {\n options.replayCount = 1;\n }\n\n if (options.replayCount > this.webex.config.maxAuthenticationReplays) {\n this.webex.logger.error(`auth: failed after ${this.webex.config.maxAuthenticationReplays} replay attempts`);\n\n return Promise.reject(new Error(`Failed after ${this.webex.config.maxAuthenticationReplays} replay attempts`));\n }\n\n this.webex.logger.info(`auth: replaying request ${options.replayCount} time`);\n\n return this.webex.request(options);\n }\n\n /**\n * Indicates whether or not the current request should refresh its access\n * token in event of a 401\n * @param {Error} reason\n * @param {Object} options\n * @returns {Promise<boolean>}\n */\n shouldAttemptReauth(reason, options) {\n if (options && options.shouldRefreshAccessToken === false) {\n return Promise.resolve(false);\n }\n\n if (reason.statusCode === 401) {\n return Promise.resolve(true);\n }\n\n return Promise.resolve(false);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["DefaultOptionsInterceptor","options","defaultOptions","webex","config","defaultRequestOptions","forEach","key","includes","Interceptor"],"sources":["default-options.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {Interceptor} from '@webex/http-core';\n\n\n/**\n * Allows the user of the SDK to set default options that apply every http request made by the SDK\n * For example a default timeout could be set for all requests like this :\n *\n * webex = WebexSdk.init({\n * credentials: {\n * supertoken: superToken\n * },\n * config: {\n * credentials: {\n * client_id,\n * client_secret\n * },\n * defaultRequestOptions: {\n * timeout: 15000\n * }\n * }\n * });\n */\nexport default class DefaultOptionsInterceptor extends Interceptor {\n /**\n * @returns {DefaultOptionsInterceptor}\n */\n static create() {\n return new DefaultOptionsInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n const {defaultRequestOptions: defaultOptions} = this.webex.config;\n\n if (!defaultOptions) {\n return options;\n }\n\n Object.keys(defaultOptions).forEach((key) => {\n // don't override any existing option properties\n if (!Object.keys(options).includes(key)) {\n options[key] = defaultOptions[key];\n }\n });\n\n return options;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACqBA,yB;;;;;;;;;;;;;IAQnB;AACF;AACA;AACA;AACA;IACE,mBAAUC,OAAV,EAAmB;MACjB,IAA8BC,cAA9B,GAAgD,KAAKC,KAAL,CAAWC,MAA3D,CAAOC,qBAAP;;MAEA,IAAI,CAACH,cAAL,EAAqB;QACnB,OAAOD,OAAP;MACD;;MAED,mBAAYC,cAAZ,EAA4BI,OAA5B,CAAoC,UAACC,GAAD,EAAS;QAC3C;QACA,IAAI,CAAC,mBAAYN,OAAZ,EAAqBO,QAArB,CAA8BD,GAA9B,CAAL,EAAyC;UACvCN,OAAO,CAACM,GAAD,CAAP,GAAeL,cAAc,CAACK,GAAD,CAA7B;QACD;MACF,CALD;MAOA,OAAON,OAAP;IACD;;;;IA3BD;AACF;AACA;IACE,kBAAgB;MACd,OAAO,IAAID,yBAAJ,CAA8B;QAACG,KAAK,EAAE;MAAR,CAA9B,CAAP;IACD;;;EANoDM,qB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["EmbargoInterceptor","options","reason","statusCode","device","webex","internal","loggerMessage","join","clear","credentials","logger","info","reject","Interceptor"],"sources":["embargo.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 EmbargoInterceptor extends Interceptor {\n /**\n * @returns {EmbargoInterceptor}\n */\n static create() {\n /* eslint no-invalid-this: [0] */\n return new EmbargoInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onResponseError\n * @param {Object} options\n * @param {Error} reason\n * @returns {Promise}\n */\n onResponseError(options, reason) {\n if (reason.statusCode === 451) {\n const {device} = this.webex.internal;\n const loggerMessage = [\n 'Received `HTTP 451 Unavailable For Legal Reasons`, ',\n 'discarding credentials and device registration'\n ].join('');\n\n if (device) {\n this.webex.internal.device.clear();\n }\n\n this.webex.credentials.clear();\n this.webex.logger.info(loggerMessage);\n }\n\n return Promise.reject(reason);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;;;;;AAEA;AACA;AACA;IACqBA,kB;;;;;;;;;;;;;IASnB;AACF;AACA;AACA;AACA;AACA;IACE,yBAAgBC,OAAhB,EAAyBC,MAAzB,EAAiC;MAC/B,IAAIA,MAAM,CAACC,UAAP,KAAsB,GAA1B,EAA+B;QAC7B,IAAOC,MAAP,GAAiB,KAAKC,KAAL,CAAWC,QAA5B,CAAOF,MAAP;QACA,IAAMG,aAAa,GAAG,CACpB,qDADoB,EAEpB,gDAFoB,EAGpBC,IAHoB,CAGf,EAHe,CAAtB;;QAKA,IAAIJ,MAAJ,EAAY;UACV,KAAKC,KAAL,CAAWC,QAAX,CAAoBF,MAApB,CAA2BK,KAA3B;QACD;;QAED,KAAKJ,KAAL,CAAWK,WAAX,CAAuBD,KAAvB;QACA,KAAKJ,KAAL,CAAWM,MAAX,CAAkBC,IAAlB,CAAuBL,aAAvB;MACD;;MAED,OAAO,iBAAQM,MAAR,CAAeX,MAAf,CAAP;IACD;;;;IA/BD;AACF;AACA;IACE,kBAAgB;MACd;MACA,OAAO,IAAIF,kBAAJ,CAAuB;QAACK,KAAK,EAAE;MAAR,CAAvB,CAAP;IACD;;;EAP6CS,qB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["NetworkTimingInterceptor","options","$timings","networkStart","response","networkEnd","reason","reject","Interceptor"],"sources":["network-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 NetworkTimingInterceptor extends Interceptor {\n /**\n * @param {Object} options\n * @returns {NetworkTimingInterceptor}\n */\n static create(options) {\n return new NetworkTimingInterceptor(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.networkStart = Date.now();\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 options.$timings.networkEnd = Date.now();\n\n return 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.networkEnd = Date.now();\n\n return Promise.reject(reason);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;;;;;AAEA;AACA;AACA;IACqBA,wB;;;;;;;;;;;;;IASnB;AACF;AACA;AACA;AACA;IACE,mBAAUC,OAAV,EAAmB;MACjBA,OAAO,CAACC,QAAR,GAAmBD,OAAO,CAACC,QAAR,IAAoB,EAAvC;MACAD,OAAO,CAACC,QAAR,CAAiBC,YAAjB,GAAgC,mBAAhC;MAEA,OAAOF,OAAP;IACD;IAED;AACF;AACA;AACA;AACA;AACA;;;;WACE,oBAAWA,OAAX,EAAoBG,QAApB,EAA8B;MAC5BH,OAAO,CAACC,QAAR,CAAiBG,UAAjB,GAA8B,mBAA9B;MAEA,OAAOD,QAAP;IACD;IAED;AACF;AACA;AACA;AACA;AACA;;;;WACE,yBAAgBH,OAAhB,EAAyBK,MAAzB,EAAiC;MAC/BL,OAAO,CAACC,QAAR,CAAiBG,UAAjB,GAA8B,mBAA9B;MAEA,OAAO,iBAAQE,MAAR,CAAeD,MAAf,CAAP;IACD;;;;IA1CD;AACF;AACA;AACA;IACE,gBAAcL,OAAd,EAAuB;MACrB,OAAO,IAAID,wBAAJ,CAA6B,IAA7B,EAAmCC,OAAnC,CAAP;IACD;;;EAPmDO,qB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["PayloadTransformerInterceptor","options","noTransform","webex","transform","response","disableTransform","reason","then","r","reject","Interceptor"],"sources":["payload-transformer.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 PayloadTransformerInterceptor extends Interceptor {\n /**\n * @param {Object} options\n * @returns {PayloadTransformerInterceptor}\n */\n static create() {\n return new PayloadTransformerInterceptor({webex: this});\n }\n\n /**\n * @see Interceptor#onRequest\n * @param {Object} options\n * @returns {Object}\n */\n onRequest(options) {\n if (options.noTransform) {\n return options;\n }\n\n return this.webex.transform('outbound', 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 if (options.disableTransform) {\n return response;\n }\n\n return this.webex.transform('inbound', 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 return this.webex.transform('inbound', reason)\n .then((r) => Promise.reject(r || reason));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;;;;;AAEA;AACA;AACA;IACqBA,6B;;;;;;;;;;;;;IASnB;AACF;AACA;AACA;AACA;IACE,mBAAUC,OAAV,EAAmB;MACjB,IAAIA,OAAO,CAACC,WAAZ,EAAyB;QACvB,OAAOD,OAAP;MACD;;MAED,OAAO,KAAKE,KAAL,CAAWC,SAAX,CAAqB,UAArB,EAAiCH,OAAjC,CAAP;IACD;IAED;AACF;AACA;AACA;AACA;AACA;;;;WACE,oBAAWA,OAAX,EAAoBI,QAApB,EAA8B;MAC5B,IAAIJ,OAAO,CAACK,gBAAZ,EAA8B;QAC5B,OAAOD,QAAP;MACD;;MAED,OAAO,KAAKF,KAAL,CAAWC,SAAX,CAAqB,SAArB,EAAgCC,QAAhC,CAAP;IACD;IAED;AACF;AACA;AACA;AACA;AACA;;;;WACE,yBAAgBJ,OAAhB,EAAyBM,MAAzB,EAAiC;MAC/B,OAAO,KAAKJ,KAAL,CAAWC,SAAX,CAAqB,SAArB,EAAgCG,MAAhC,EACJC,IADI,CACC,UAACC,CAAD;QAAA,OAAO,iBAAQC,MAAR,CAAeD,CAAC,IAAIF,MAApB,CAAP;MAAA,CADD,CAAP;IAED;;;;IA5CD;AACF;AACA;AACA;IACE,kBAAgB;MACd,OAAO,IAAIP,6BAAJ,CAAkC;QAACG,KAAK,EAAE;MAAR,CAAlC,CAAP;IACD;;;EAPwDQ,qB"}
|