@webex/webex-core 3.0.0-beta.7 → 3.0.0-beta.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/dist/config.js +1 -11
  2. package/dist/config.js.map +1 -1
  3. package/dist/credentials-config.js +44 -64
  4. package/dist/credentials-config.js.map +1 -1
  5. package/dist/index.js +0 -76
  6. package/dist/index.js.map +1 -1
  7. package/dist/interceptors/auth.js +22 -55
  8. package/dist/interceptors/auth.js.map +1 -1
  9. package/dist/interceptors/default-options.js +0 -20
  10. package/dist/interceptors/default-options.js.map +1 -1
  11. package/dist/interceptors/embargo.js +0 -21
  12. package/dist/interceptors/embargo.js.map +1 -1
  13. package/dist/interceptors/network-timing.js +2 -21
  14. package/dist/interceptors/network-timing.js.map +1 -1
  15. package/dist/interceptors/payload-transformer.js +2 -22
  16. package/dist/interceptors/payload-transformer.js.map +1 -1
  17. package/dist/interceptors/rate-limit.js +25 -57
  18. package/dist/interceptors/rate-limit.js.map +1 -1
  19. package/dist/interceptors/redirect.js +4 -33
  20. package/dist/interceptors/redirect.js.map +1 -1
  21. package/dist/interceptors/request-event.js +3 -30
  22. package/dist/interceptors/request-event.js.map +1 -1
  23. package/dist/interceptors/request-logger.js +1 -30
  24. package/dist/interceptors/request-logger.js.map +1 -1
  25. package/dist/interceptors/request-timing.js +3 -22
  26. package/dist/interceptors/request-timing.js.map +1 -1
  27. package/dist/interceptors/response-logger.js +2 -31
  28. package/dist/interceptors/response-logger.js.map +1 -1
  29. package/dist/interceptors/user-agent.js +2 -29
  30. package/dist/interceptors/user-agent.js.map +1 -1
  31. package/dist/interceptors/webex-tracking-id.js +5 -28
  32. package/dist/interceptors/webex-tracking-id.js.map +1 -1
  33. package/dist/interceptors/webex-user-agent.js +5 -38
  34. package/dist/interceptors/webex-user-agent.js.map +1 -1
  35. package/dist/lib/batcher.js +3 -51
  36. package/dist/lib/batcher.js.map +1 -1
  37. package/dist/lib/credentials/credentials.js +39 -119
  38. package/dist/lib/credentials/credentials.js.map +1 -1
  39. package/dist/lib/credentials/grant-errors.js +0 -49
  40. package/dist/lib/credentials/grant-errors.js.map +1 -1
  41. package/dist/lib/credentials/index.js +1 -13
  42. package/dist/lib/credentials/index.js.map +1 -1
  43. package/dist/lib/credentials/scope.js +1 -7
  44. package/dist/lib/credentials/scope.js.map +1 -1
  45. package/dist/lib/credentials/token-collection.js +1 -7
  46. package/dist/lib/credentials/token-collection.js.map +1 -1
  47. package/dist/lib/credentials/token.js +39 -118
  48. package/dist/lib/credentials/token.js.map +1 -1
  49. package/dist/lib/page.js +13 -26
  50. package/dist/lib/page.js.map +1 -1
  51. package/dist/lib/services/constants.js +0 -2
  52. package/dist/lib/services/constants.js.map +1 -1
  53. package/dist/lib/services/index.js +1 -28
  54. package/dist/lib/services/index.js.map +1 -1
  55. package/dist/lib/services/interceptors/server-error.js +2 -23
  56. package/dist/lib/services/interceptors/server-error.js.map +1 -1
  57. package/dist/lib/services/interceptors/service.js +12 -34
  58. package/dist/lib/services/interceptors/service.js.map +1 -1
  59. package/dist/lib/services/metrics.js +0 -2
  60. package/dist/lib/services/metrics.js.map +1 -1
  61. package/dist/lib/services/service-catalog.js +10 -90
  62. package/dist/lib/services/service-catalog.js.map +1 -1
  63. package/dist/lib/services/service-fed-ramp.js +0 -2
  64. package/dist/lib/services/service-fed-ramp.js.map +1 -1
  65. package/dist/lib/services/service-host.js +47 -62
  66. package/dist/lib/services/service-host.js.map +1 -1
  67. package/dist/lib/services/service-registry.js +78 -90
  68. package/dist/lib/services/service-registry.js.map +1 -1
  69. package/dist/lib/services/service-state.js +3 -15
  70. package/dist/lib/services/service-state.js.map +1 -1
  71. package/dist/lib/services/service-url.js +4 -25
  72. package/dist/lib/services/service-url.js.map +1 -1
  73. package/dist/lib/services/services.js +122 -238
  74. package/dist/lib/services/services.js.map +1 -1
  75. package/dist/lib/stateless-webex-plugin.js +5 -28
  76. package/dist/lib/stateless-webex-plugin.js.map +1 -1
  77. package/dist/lib/storage/decorators.js +19 -62
  78. package/dist/lib/storage/decorators.js.map +1 -1
  79. package/dist/lib/storage/errors.js +0 -23
  80. package/dist/lib/storage/errors.js.map +1 -1
  81. package/dist/lib/storage/index.js +2 -16
  82. package/dist/lib/storage/index.js.map +1 -1
  83. package/dist/lib/storage/make-webex-plugin-store.js +11 -41
  84. package/dist/lib/storage/make-webex-plugin-store.js.map +1 -1
  85. package/dist/lib/storage/make-webex-store.js +8 -30
  86. package/dist/lib/storage/make-webex-store.js.map +1 -1
  87. package/dist/lib/storage/memory-store-adapter.js +1 -19
  88. package/dist/lib/storage/memory-store-adapter.js.map +1 -1
  89. package/dist/lib/webex-core-plugin-mixin.js +9 -29
  90. package/dist/lib/webex-core-plugin-mixin.js.map +1 -1
  91. package/dist/lib/webex-http-error.js +1 -31
  92. package/dist/lib/webex-http-error.js.map +1 -1
  93. package/dist/lib/webex-internal-core-plugin-mixin.js +9 -29
  94. package/dist/lib/webex-internal-core-plugin-mixin.js.map +1 -1
  95. package/dist/lib/webex-plugin.js +6 -40
  96. package/dist/lib/webex-plugin.js.map +1 -1
  97. package/dist/plugins/logger.js +3 -17
  98. package/dist/plugins/logger.js.map +1 -1
  99. package/dist/webex-core.js +79 -203
  100. package/dist/webex-core.js.map +1 -1
  101. package/dist/webex-internal-core.js +0 -10
  102. package/dist/webex-internal-core.js.map +1 -1
  103. package/package.json +14 -14
  104. package/src/config.js +9 -11
  105. package/src/credentials-config.js +110 -72
  106. package/src/index.js +4 -14
  107. package/src/interceptors/auth.js +36 -37
  108. package/src/interceptors/default-options.js +0 -1
  109. package/src/interceptors/embargo.js +1 -1
  110. package/src/interceptors/payload-transformer.js +1 -2
  111. package/src/interceptors/rate-limit.js +8 -5
  112. package/src/interceptors/redirect.js +14 -8
  113. package/src/interceptors/request-event.js +4 -8
  114. package/src/interceptors/request-logger.js +8 -5
  115. package/src/interceptors/response-logger.js +11 -8
  116. package/src/interceptors/user-agent.js +1 -2
  117. package/src/interceptors/webex-user-agent.js +3 -9
  118. package/src/lib/batcher.js +70 -69
  119. package/src/lib/credentials/credentials.js +112 -122
  120. package/src/lib/credentials/grant-errors.js +6 -7
  121. package/src/lib/credentials/index.js +1 -4
  122. package/src/lib/credentials/scope.js +1 -4
  123. package/src/lib/credentials/token-collection.js +1 -1
  124. package/src/lib/credentials/token.js +86 -80
  125. package/src/lib/page.js +10 -11
  126. package/src/lib/services/constants.js +3 -13
  127. package/src/lib/services/index.js +2 -2
  128. package/src/lib/services/interceptors/server-error.js +12 -7
  129. package/src/lib/services/interceptors/service.js +6 -5
  130. package/src/lib/services/metrics.js +1 -1
  131. package/src/lib/services/service-catalog.js +110 -100
  132. package/src/lib/services/service-fed-ramp.js +1 -2
  133. package/src/lib/services/service-host.js +10 -17
  134. package/src/lib/services/service-registry.js +69 -96
  135. package/src/lib/services/service-state.js +4 -6
  136. package/src/lib/services/service-url.js +24 -23
  137. package/src/lib/services/services.js +260 -251
  138. package/src/lib/stateless-webex-plugin.js +4 -2
  139. package/src/lib/storage/decorators.js +68 -66
  140. package/src/lib/storage/index.js +4 -6
  141. package/src/lib/storage/make-webex-plugin-store.js +34 -21
  142. package/src/lib/storage/make-webex-store.js +6 -7
  143. package/src/lib/storage/memory-store-adapter.js +3 -3
  144. package/src/lib/webex-core-plugin-mixin.js +10 -7
  145. package/src/lib/webex-http-error.js +7 -8
  146. package/src/lib/webex-internal-core-plugin-mixin.js +9 -6
  147. package/src/lib/webex-plugin.js +41 -34
  148. package/src/plugins/logger.js +8 -3
  149. package/src/webex-core.js +185 -116
  150. package/src/webex-internal-core.js +15 -9
  151. package/test/integration/spec/credentials/credentials.js +26 -30
  152. package/test/integration/spec/credentials/token.js +36 -33
  153. package/test/integration/spec/services/service-catalog.js +177 -156
  154. package/test/integration/spec/services/services.js +313 -304
  155. package/test/integration/spec/webex-core.js +98 -86
  156. package/test/unit/spec/_setup.js +26 -18
  157. package/test/unit/spec/credentials/credentials.js +189 -154
  158. package/test/unit/spec/credentials/token.js +94 -76
  159. package/test/unit/spec/interceptors/auth.js +291 -243
  160. package/test/unit/spec/interceptors/default-options.js +36 -24
  161. package/test/unit/spec/interceptors/embargo.js +32 -27
  162. package/test/unit/spec/interceptors/network-timing.js +2 -2
  163. package/test/unit/spec/interceptors/payload-transformer.js +61 -52
  164. package/test/unit/spec/interceptors/rate-limit.js +104 -75
  165. package/test/unit/spec/interceptors/redirect.js +22 -20
  166. package/test/unit/spec/interceptors/request-timing.js +18 -22
  167. package/test/unit/spec/interceptors/user-agent.js +28 -16
  168. package/test/unit/spec/interceptors/webex-tracking-id.js +14 -8
  169. package/test/unit/spec/interceptors/webex-user-agent.js +83 -37
  170. package/test/unit/spec/lib/batcher.js +36 -32
  171. package/test/unit/spec/lib/page.js +36 -32
  172. package/test/unit/spec/lib/webex-plugin.js +1 -1
  173. package/test/unit/spec/services/interceptors/server-error.js +67 -90
  174. package/test/unit/spec/services/interceptors/service.js +17 -28
  175. package/test/unit/spec/services/service-catalog.js +19 -27
  176. package/test/unit/spec/services/service-host.js +29 -26
  177. package/test/unit/spec/services/service-registry.js +128 -170
  178. package/test/unit/spec/services/service-state.js +13 -22
  179. package/test/unit/spec/services/service-url.js +24 -43
  180. package/test/unit/spec/services/services.js +85 -41
  181. package/test/unit/spec/storage/persist.js +6 -9
  182. package/test/unit/spec/storage/wait-for-value.js +22 -21
  183. package/test/unit/spec/webex-core.js +78 -57
  184. package/test/unit/spec/webex-internal-core.js +56 -31
package/dist/config.js CHANGED
@@ -1,23 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
-
7
5
  _Object$defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
-
11
8
  exports.default = void 0;
12
-
13
9
  var _storage = require("./lib/storage");
14
-
15
10
  var _credentialsConfig = _interopRequireDefault(require("./credentials-config"));
16
-
17
11
  /*!
18
12
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
19
13
  */
20
-
21
14
  /* eslint camelcase: [0] */
22
15
  var _default = {
23
16
  maxAppLevelRedirects: 10,
@@ -43,7 +36,6 @@ var _default = {
43
36
  * @type {string}
44
37
  */
45
38
  hydra: process.env.HYDRA_SERVICE_URL || 'https://api.ciscospark.com/v1',
46
-
47
39
  /**
48
40
  * The u2c discovery url
49
41
  *
@@ -51,19 +43,17 @@ var _default = {
51
43
  */
52
44
  u2c: process.env.U2C_SERVICE_URL || 'https://u2c.wbx2.com/u2c/api/v1'
53
45
  },
54
-
55
46
  /**
56
47
  * When true, considers all urls in `allowedDomains` as safe for auth tokens
57
48
  *
58
49
  * @type {boolean}
59
50
  */
60
51
  validateDomains: true,
61
-
62
52
  /**
63
53
  * services that don't need auth validation
64
54
  */
65
- servicesNotNeedValidation: ['webex-appapi-service'],
66
55
 
56
+ servicesNotNeedValidation: ['webex-appapi-service'],
67
57
  /**
68
58
  * Contains a list of allowed domain host addresses.
69
59
  *
@@ -1 +1 @@
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","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 'broadcloudpbx.com',\n 'broadcloud.eu',\n 'broadcloud.com.au',\n 'broadcloudpbx.net'\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 },\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,EAKd,mBALc,EAMd,eANc,EAOd,mBAPc,EAQd,mBARc;EA1CR,CAXG;EAgEbC,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;EALX,CAhEK;EAuEbM,OAAO,EAAE;IACPC,IAAI,EAAE,CAAC,YAAD,EAAe,aAAf;EADC,CAvEI;EA0EbC,kBAAkB,EAAE;IAClBC,UAAU,EAAE,EADM;IAElBC,UAAU,EAAE;EAFM,CA1EP;EA8EbC,OAAO,EAAE;IACPC,cAAc,EAAEC,2BADT;IAEPC,gBAAgB,EAAED;EAFX;AA9EI,C"}
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","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: ['webex-appapi-service'],\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 'broadcloudpbx.com',\n 'broadcloud.eu',\n 'broadcloud.com.au',\n 'broadcloudpbx.net',\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 },\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;AAAA,eAKe;EACbA,oBAAoB,EAAE,EAAE;EACxBC,iBAAiB,EAAE,CAAC;EACpBC,wBAAwB,EAAE,CAAC;EAC3BC,oBAAoB,EAAE,CAAC;EACvBC,cAAc,EAAE,EAAE;EAClBC,gBAAgB,EAAE,cAAc;EAChCC,gBAAgB,EAAE,EAAE;EACpBC,eAAe,EAAEC,SAAS;EAC1BC,WAAW,EAAE,IAAIC,0BAAiB,EAAE;EACpCC,OAAO,EAAEC,OAAO,CAACC,GAAG,CAACC,cAAc,IAAI,KAAK;EAC5CC,QAAQ,EAAE;IACR;AACJ;AACA;AACA;AACA;IACIC,SAAS,EAAE;MACT;AACN;AACA;AACA;AACA;MACMC,KAAK,EAAEL,OAAO,CAACC,GAAG,CAACK,iBAAiB,IAAI,+BAA+B;MAEvE;AACN;AACA;AACA;AACA;MACMC,GAAG,EAAEP,OAAO,CAACC,GAAG,CAACO,eAAe,IAAI;IACtC,CAAC;IAED;AACJ;AACA;AACA;AACA;IACIC,eAAe,EAAE,IAAI;IAErB;AACJ;AACA;;IAEIC,yBAAyB,EAAE,CAAC,sBAAsB,CAAC;IAEnD;AACJ;AACA;AACA;AACA;IACIC,cAAc,EAAE,CACd,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,mBAAmB;EAEvB,CAAC;EACDC,MAAM,EAAE;IACNC,oBAAoB,EAAE;MACpBR,KAAK,EAAEL,OAAO,CAACC,GAAG,CAACK,iBAAiB,IAAI,+BAA+B;MACvEQ,eAAe,EAAEd,OAAO,CAACC,GAAG,CAACK,iBAAiB,IAAI;IACpD,CAAC;IACDG,eAAe,EAAE;EACnB,CAAC;EACDM,OAAO,EAAE;IACPC,IAAI,EAAE,CAAC,YAAY,EAAE,aAAa;EACpC,CAAC;EACDC,kBAAkB,EAAE;IAClBC,UAAU,EAAE,EAAE;IACdC,UAAU,EAAE;EACd,CAAC;EACDC,OAAO,EAAE;IACPC,cAAc,EAAEC,2BAAkB;IAClCC,gBAAgB,EAAED;EACpB;AACF,CAAC;AAAA"}
@@ -1,17 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
-
7
5
  _Object$defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
-
11
8
  exports.default = void 0;
12
-
13
9
  var _ampersandState = _interopRequireDefault(require("ampersand-state"));
14
-
15
10
  // The credentials config which includes the CI server info and derived
16
11
  // URL properties from them for the various CI services. The URL's
17
12
  // will be updated when the CI changes.
@@ -28,7 +23,6 @@ var CredentialsConfig = _ampersandState.default.extend({
28
23
  url: process.env.IDBROKER_BASE_URL || 'https://idbroker.webex.com'
29
24
  };
30
25
  }],
31
-
32
26
  /**
33
27
  * The identity base host name
34
28
  * @returns {object}
@@ -38,14 +32,12 @@ var CredentialsConfig = _ampersandState.default.extend({
38
32
  url: process.env.IDENTITY_BASE_URL || 'https://identity.webex.com'
39
33
  };
40
34
  }],
41
-
42
35
  /**
43
- * This is the authorization url displayed on the
44
- * {@link developer portal|https://developer.webex.com}
45
- * @type {string}
46
- */
36
+ * This is the authorization url displayed on the
37
+ * {@link developer portal|https://developer.webex.com}
38
+ * @type {string}
39
+ */
47
40
  authorizationString: ['string', false, process.env.WEBEX_AUTHORIZATION_STRING || process.env.AUTHORIZATION_STRING],
48
-
49
41
  /**
50
42
  * Authorization URL which prompts for user's password. Inferred from
51
43
  * {@link config.credentials.authorizationString}. This config value will
@@ -54,44 +46,39 @@ var CredentialsConfig = _ampersandState.default.extend({
54
46
  * @type {string}
55
47
  */
56
48
  authorizeUrl: ['string', false, process.env.WEBEX_AUTHORIZE_URL || "".concat(process.env.IDBROKER_BASE_URL || 'https://idbroker.webex.com', "/idb/oauth2/v1/authorize")],
57
-
58
49
  /**
59
- * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
60
- * @type {string}
61
- */
50
+ * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
51
+ * @type {string}
52
+ */
62
53
  client_id: ['string', false, process.env.WEBEX_CLIENT_ID || process.env.COMMON_IDENTITY_CLIENT_ID || process.env.CLIENT_ID],
63
-
64
54
  /**
65
- * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
66
- * @type {string}
67
- */
55
+ * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
56
+ * @type {string}
57
+ */
68
58
  client_secret: ['string', false, process.env.WEBEX_CLIENT_SECRET || process.env.COMMON_IDENTITY_CLIENT_SECRET || process.env.CLIENT_SECRET],
69
-
70
59
  /**
71
- * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
72
- * @type {string}
73
- */
60
+ * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
61
+ * @type {string}
62
+ */
74
63
  redirect_uri: ['string', false, process.env.WEBEX_REDIRECT_URI || process.env.COMMON_IDENTITY_REDIRECT_URI || process.env.REDIRECT_URI],
75
-
76
64
  /**
77
- * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
78
- * @type {string}
79
- */
65
+ * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}
66
+ * @type {string}
67
+ */
80
68
  scope: ['string', false, process.env.WEBEX_SCOPE || process.env.WEBEX_SCOPES || process.env.COMMON_IDENTITY_SCOPE || process.env.SCOPE],
81
-
82
69
  /**
83
- * Controls the UI of the CI login page.
84
- * @private
85
- * @type {string}
86
- */
70
+ * Controls the UI of the CI login page.
71
+ * @private
72
+ * @type {string}
73
+ */
87
74
  cisService: ['string', false, 'webex']
88
75
  },
89
76
  derived: {
90
77
  /**
91
- * User activation URL
92
- * {@link config.credentials.activationUrl}
93
- * @type {string}
94
- */
78
+ * User activation URL
79
+ * {@link config.credentials.activationUrl}
80
+ * @type {string}
81
+ */
95
82
  activationUrl: {
96
83
  deps: ['idbroker.url'],
97
84
  fn: function fn() {
@@ -99,12 +86,11 @@ var CredentialsConfig = _ampersandState.default.extend({
99
86
  },
100
87
  cache: false
101
88
  },
102
-
103
89
  /**
104
- * Generate OTP URL
105
- * {@link config.credentials.generateOtpUrl}
106
- * @type {string}
107
- */
90
+ * Generate OTP URL
91
+ * {@link config.credentials.generateOtpUrl}
92
+ * @type {string}
93
+ */
108
94
  generateOtpUrl: {
109
95
  deps: ['idbroker.url'],
110
96
  fn: function fn() {
@@ -112,12 +98,11 @@ var CredentialsConfig = _ampersandState.default.extend({
112
98
  },
113
99
  cache: false
114
100
  },
115
-
116
101
  /**
117
- * Validate OTP URL
118
- * {@link config.credentials.validateOtpUrl}
119
- * @type {string}
120
- */
102
+ * Validate OTP URL
103
+ * {@link config.credentials.validateOtpUrl}
104
+ * @type {string}
105
+ */
121
106
  validateOtpUrl: {
122
107
  deps: ['idbroker.url'],
123
108
  fn: function fn() {
@@ -126,11 +111,10 @@ var CredentialsConfig = _ampersandState.default.extend({
126
111
  cache: false
127
112
  },
128
113
  // TODO does hydra also have an access_token endpoint?
129
-
130
114
  /**
131
- * Token URL used for token refresh and auth code exchange
132
- * @type {string}
133
- */
115
+ * Token URL used for token refresh and auth code exchange
116
+ * @type {string}
117
+ */
134
118
  tokenUrl: {
135
119
  deps: ['idbroker.url'],
136
120
  fn: function fn() {
@@ -138,11 +122,10 @@ var CredentialsConfig = _ampersandState.default.extend({
138
122
  },
139
123
  cache: false
140
124
  },
141
-
142
125
  /**
143
- * URL to revoke token
144
- * @type {string}
145
- */
126
+ * URL to revoke token
127
+ * @type {string}
128
+ */
146
129
  revokeUrl: {
147
130
  deps: ['idbroker.url'],
148
131
  fn: function fn() {
@@ -150,11 +133,10 @@ var CredentialsConfig = _ampersandState.default.extend({
150
133
  },
151
134
  cache: false
152
135
  },
153
-
154
136
  /**
155
- * URL to load when the app logs out
156
- * @type {string}
157
- */
137
+ * URL to load when the app logs out
138
+ * @type {string}
139
+ */
158
140
  logoutUrl: {
159
141
  deps: ['idbroker.url'],
160
142
  fn: function fn() {
@@ -162,11 +144,10 @@ var CredentialsConfig = _ampersandState.default.extend({
162
144
  },
163
145
  cache: false
164
146
  },
165
-
166
147
  /**
167
- * Set password URL
168
- * @type {string}
169
- */
148
+ * Set password URL
149
+ * @type {string}
150
+ */
170
151
  setPasswordUrl: {
171
152
  deps: ['identity.url'],
172
153
  fn: function fn() {
@@ -176,7 +157,6 @@ var CredentialsConfig = _ampersandState.default.extend({
176
157
  }
177
158
  }
178
159
  });
179
-
180
160
  var _default = CredentialsConfig;
181
161
  exports.default = _default;
182
162
  //# sourceMappingURL=credentials-config.js.map
@@ -1 +1 @@
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,uBAAA,CAASC,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"}
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 // 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: [\n 'object',\n false,\n () => ({\n url: process.env.IDBROKER_BASE_URL || 'https://idbroker.webex.com',\n }),\n ],\n\n /**\n * The identity base host name\n * @returns {object}\n */\n identity: [\n 'object',\n false,\n () => ({\n url: process.env.IDENTITY_BASE_URL || 'https://identity.webex.com',\n }),\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: [\n 'string',\n false,\n process.env.WEBEX_AUTHORIZATION_STRING || process.env.AUTHORIZATION_STRING,\n ],\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: [\n 'string',\n false,\n process.env.WEBEX_CLIENT_ID || process.env.COMMON_IDENTITY_CLIENT_ID || process.env.CLIENT_ID,\n ],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n client_secret: [\n 'string',\n false,\n process.env.WEBEX_CLIENT_SECRET ||\n process.env.COMMON_IDENTITY_CLIENT_SECRET ||\n process.env.CLIENT_SECRET,\n ],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n redirect_uri: [\n 'string',\n false,\n process.env.WEBEX_REDIRECT_URI ||\n process.env.COMMON_IDENTITY_REDIRECT_URI ||\n process.env.REDIRECT_URI,\n ],\n\n /**\n * {@see https://tools.ietf.org/html/rfc6749#section-4.1.4}\n * @type {string}\n */\n scope: [\n 'string',\n false,\n process.env.WEBEX_SCOPE ||\n process.env.WEBEX_SCOPES ||\n process.env.COMMON_IDENTITY_SCOPE ||\n process.env.SCOPE,\n ],\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 `${\n this.idbroker.url || 'https://idbroker.webex.com'\n }/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 `${\n this.idbroker.url || 'https://idbroker.webex.com'\n }/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 `${\n this.idbroker.url || 'https://idbroker.webex.com'\n }/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\nexport default CredentialsConfig;\n"],"mappings":"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"}