@webex/calling 3.10.0-next.14 → 3.10.0-next.15

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.
@@ -46,6 +46,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
46
46
  this.useProdWebexApis = useProdWebexApis;
47
47
  }
48
48
 
49
+ // Removed header caching to align with review: fetch per request instead.
50
+
49
51
  /**
50
52
  * Reads call waiting setting at the backend.
51
53
  */
@@ -173,7 +175,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
173
175
  key: "getCallForwardAlwaysSetting",
174
176
  value: (function () {
175
177
  var _getCallForwardAlwaysSetting = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(directoryNumber) {
176
- var loggerContext, webexApisUrl, resp, _ref, callForwarding, cfa, _response, _response2, response, errorInfo, errorStatus, _t;
178
+ var _this$webex, _this$webex$config;
179
+ var loggerContext, headers, webexApisUrl, requestOptions, resp, _ref, callForwarding, cfa, _response, _response2, response, errorInfo, errorStatus, _t;
177
180
  return _regenerator.default.wrap(function (_context) {
178
181
  while (1) switch (_context.prev = _context.next) {
179
182
  case 0:
@@ -182,18 +185,30 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
182
185
  method: _constants2.METHODS.GET_CALL_FORWARD_ALWAYS_SETTING
183
186
  };
184
187
  _Logger.default.info(directoryNumber ? "".concat(_constants.METHOD_START_MESSAGE, " with ").concat(directoryNumber) : _constants.METHOD_START_MESSAGE, loggerContext);
185
- webexApisUrl = this.useProdWebexApis ? _constants.WEBEX_API_CONFIG_PROD_URL : _constants.WEBEX_API_CONFIG_INT_URL;
186
- _context.prev = 1;
188
+
189
+ // Fetch auth headers per request (no caching) to ensure freshness.
190
+ _context.next = 1;
191
+ return this.getAuthHeaders();
192
+ case 1:
193
+ headers = _context.sent;
194
+ if ((_this$webex = this.webex) !== null && _this$webex !== void 0 && (_this$webex$config = _this$webex.config) !== null && _this$webex$config !== void 0 && _this$webex$config.fedramp) {
195
+ webexApisUrl = _constants.WEBEX_API_CONFIG_FEDRAMP_URL;
196
+ } else {
197
+ webexApisUrl = this.useProdWebexApis ? _constants.WEBEX_API_CONFIG_PROD_URL : _constants.WEBEX_API_CONFIG_INT_URL;
198
+ }
199
+ _context.prev = 2;
187
200
  if (!directoryNumber) {
188
- _context.next = 4;
201
+ _context.next = 5;
189
202
  break;
190
203
  }
191
- _context.next = 2;
192
- return this.webex.request({
204
+ requestOptions = {
193
205
  uri: "".concat(webexApisUrl, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.userId, "/").concat(_constants2.CF_ENDPOINT.toLowerCase(), "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
194
- method: _types.HTTP_METHODS.GET
195
- });
196
- case 2:
206
+ method: _types.HTTP_METHODS.GET,
207
+ headers: headers
208
+ };
209
+ _context.next = 3;
210
+ return this.webex.request(requestOptions);
211
+ case 3:
197
212
  resp = _context.sent;
198
213
  _Logger.default.log("Response code: ".concat(resp.statusCode), loggerContext);
199
214
  _ref = resp.body, callForwarding = _ref.callForwarding;
@@ -201,7 +216,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
201
216
  return item.dn.endsWith(directoryNumber) || item.e164Number.endsWith(directoryNumber);
202
217
  });
203
218
  if (!cfa) {
204
- _context.next = 3;
219
+ _context.next = 4;
205
220
  break;
206
221
  }
207
222
  _response = {
@@ -216,7 +231,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
216
231
  };
217
232
  _Logger.default.log("Successfully retrieved call forward always setting for directory number: ".concat(directoryNumber), loggerContext);
218
233
  return _context.abrupt("return", _response);
219
- case 3:
234
+ case 4:
220
235
  _response2 = {
221
236
  statusCode: 404,
222
237
  message: _constants.FAILURE_MESSAGE,
@@ -225,7 +240,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
225
240
  }
226
241
  };
227
242
  return _context.abrupt("return", _response2);
228
- case 4:
243
+ case 5:
229
244
  response = {
230
245
  statusCode: 400,
231
246
  message: _constants.FAILURE_MESSAGE,
@@ -234,27 +249,60 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
234
249
  }
235
250
  };
236
251
  return _context.abrupt("return", response);
237
- case 5:
238
- _context.prev = 5;
239
- _t = _context["catch"](1);
252
+ case 6:
253
+ _context.prev = 6;
254
+ _t = _context["catch"](2);
240
255
  errorInfo = _t;
241
256
  _Logger.default.error("Failed to get call forward always setting: ".concat((0, _stringify.default)(_t)), loggerContext);
242
- _context.next = 6;
257
+ _context.next = 7;
243
258
  return (0, _Utils.uploadLogs)();
244
- case 6:
259
+ case 7:
245
260
  errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
246
261
  return _context.abrupt("return", errorStatus);
247
- case 7:
262
+ case 8:
248
263
  case "end":
249
264
  return _context.stop();
250
265
  }
251
- }, _callee, this, [[1, 5]]);
266
+ }, _callee, this, [[2, 6]]);
252
267
  }));
253
268
  function getCallForwardAlwaysSetting(_x) {
254
269
  return _getCallForwardAlwaysSetting.apply(this, arguments);
255
270
  }
256
271
  return getCallForwardAlwaysSetting;
257
272
  }())
273
+ }, {
274
+ key: "getAuthHeaders",
275
+ value: function () {
276
+ var _getAuthHeaders = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
277
+ var _this$webex2, _this$webex2$config;
278
+ var headers;
279
+ return _regenerator.default.wrap(function (_context2) {
280
+ while (1) switch (_context2.prev = _context2.next) {
281
+ case 0:
282
+ headers = {}; // Match behavior from WxCallBackendConnector:
283
+ // Only add authorization for FedRAMP, else rely on implicit auth/session.
284
+ // Note: Use lowercase 'authorization' to match SDK's auth interceptor check
285
+ if (!((_this$webex2 = this.webex) !== null && _this$webex2 !== void 0 && (_this$webex2$config = _this$webex2.config) !== null && _this$webex2$config !== void 0 && _this$webex2$config.fedramp)) {
286
+ _context2.next = 2;
287
+ break;
288
+ }
289
+ _context2.next = 1;
290
+ return this.webex.credentials.getUserToken();
291
+ case 1:
292
+ headers.authorization = _context2.sent;
293
+ case 2:
294
+ return _context2.abrupt("return", headers);
295
+ case 3:
296
+ case "end":
297
+ return _context2.stop();
298
+ }
299
+ }, _callee2, this);
300
+ }));
301
+ function getAuthHeaders() {
302
+ return _getAuthHeaders.apply(this, arguments);
303
+ }
304
+ return getAuthHeaders;
305
+ }()
258
306
  }]);
259
307
  }();
260
308
  //# sourceMappingURL=UcmBackendConnector.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_Logger","_interopRequireDefault","require","_SDKConnector","_Utils","_constants","_types","_constants2","UcmBackendConnector","exports","webex","logger","useProdWebexApis","arguments","length","undefined","_classCallCheck2","default","_defineProperty2","sdkConnector","SDKConnector","getWebex","setWebex","log","setLogger","level","UCM_CONNECTOR_FILE","userId","internal","device","orgId","_createClass2","key","value","getCallWaitingSetting","loggerContext","file","method","METHODS","GET_CALL_WAITING_SETTING","info","METHOD_START_MESSAGE","getMethodNotSupportedResponse","getDoNotDisturbSetting","GET_DO_NOT_DISTURB_SETTING","setDoNotDisturbSetting","SET_DO_NOT_DISTURB_SETTING","getCallForwardSetting","GET_CALL_FORWARD_SETTING","setCallForwardSetting","SET_CALL_FORWARD_SETTING","getVoicemailSetting","GET_VOICEMAIL_SETTING","setVoicemailSetting","SET_VOICEMAIL_SETTING","GET_METHOD_NOT_SUPPORTED_RESPONSE","response","serviceErrorCodeHandler","statusCode","_promise","resolve","_getCallForwardAlwaysSetting","_asyncToGenerator2","_regenerator","mark","_callee","directoryNumber","webexApisUrl","resp","_ref","callForwarding","cfa","_response","_response2","errorInfo","errorStatus","_t","wrap","_context","prev","next","GET_CALL_FORWARD_ALWAYS_SETTING","concat","WEBEX_API_CONFIG_PROD_URL","WEBEX_API_CONFIG_INT_URL","request","uri","PEOPLE_ENDPOINT","CF_ENDPOINT","toLowerCase","ORG_ENDPOINT","HTTP_METHODS","GET","sent","body","always","find","item","dn","endsWith","e164Number","Number","STATUS_CODE","message","SUCCESS_MESSAGE","data","callSetting","enabled","destinationVoicemailEnabled","destination","VOICEMAIL","abrupt","FAILURE_MESSAGE","error","_stringify","uploadLogs","stop","getCallForwardAlwaysSetting","_x","apply"],"sources":["UcmBackendConnector.ts"],"sourcesContent":["import log from '../Logger';\nimport SDKConnector from '../SDKConnector';\nimport {ISDKConnector, WebexSDK} from '../SDKConnector/types';\nimport {serviceErrorCodeHandler, uploadLogs} from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n METHOD_START_MESSAGE,\n STATUS_CODE,\n SUCCESS_MESSAGE,\n UCM_CONNECTOR_FILE,\n VOICEMAIL,\n WEBEX_API_CONFIG_INT_URL,\n WEBEX_API_CONFIG_PROD_URL,\n} from '../common/constants';\nimport {HTTP_METHODS, WebexRequestPayload} from '../common/types';\nimport {CF_ENDPOINT, METHODS, ORG_ENDPOINT, PEOPLE_ENDPOINT} from './constants';\nimport {\n CallForwardAlwaysSetting,\n CallForwardingSettingsUCM,\n CallSettingResponse,\n IUcmBackendConnector,\n LoggerInterface,\n} from './types';\n\n/**\n * This Connector class will implement child interface of ICallSettings and\n * has methods for the CCUC with UCM backend.\n */\nexport class UcmBackendConnector implements IUcmBackendConnector {\n private sdkConnector: ISDKConnector;\n\n private webex: WebexSDK;\n\n private userId: string;\n\n private orgId: string;\n\n private useProdWebexApis: boolean;\n\n /**\n * @param useProdWebexApis - default value is true\n */\n constructor(webex: WebexSDK, logger: LoggerInterface, useProdWebexApis = true) {\n this.sdkConnector = SDKConnector;\n\n if (!this.sdkConnector.getWebex()) {\n SDKConnector.setWebex(webex);\n }\n\n this.webex = this.sdkConnector.getWebex();\n log.setLogger(logger.level, UCM_CONNECTOR_FILE);\n this.userId = this.webex.internal.device.userId;\n this.orgId = this.webex.internal.device.orgId;\n this.useProdWebexApis = useProdWebexApis;\n }\n\n /**\n * Reads call waiting setting at the backend.\n */\n public getCallWaitingSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_WAITING_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads DND setting at the backend.\n */\n public getDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_DO_NOT_DISTURB_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates DND setting at the backend.\n */\n public setDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_DO_NOT_DISTURB_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads Call Forward setting at the backend.\n */\n public getCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_FORWARD_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates Call Forward setting at the backend.\n */\n public setCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_CALL_FORWARD_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads Voicemail setting at the backend.\n */\n public getVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_VOICEMAIL_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates Voicemail setting at the backend.\n */\n public setVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_VOICEMAIL_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Returns a default error response for unsupported methods.\n */\n private getMethodNotSupportedResponse(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_METHOD_NOT_SUPPORTED_RESPONSE,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n const response = serviceErrorCodeHandler({statusCode: 501}, loggerContext);\n\n return Promise.resolve(response);\n }\n\n /**\n * Reads the Call Forwarding Always settings at the backend.\n * This will also check if CFA is set to Voicemail.\n * If CFA is set to destination, that will take precedence.\n * For UCM backend, relevant fields in the response are `enabled` & `destination`.\n *\n * @param directoryNumber - Directory number for which CFA needs to returned.\n */\n public async getCallForwardAlwaysSetting(directoryNumber?: string): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_FORWARD_ALWAYS_SETTING,\n };\n\n log.info(\n directoryNumber ? `${METHOD_START_MESSAGE} with ${directoryNumber}` : METHOD_START_MESSAGE,\n loggerContext\n );\n\n const webexApisUrl = this.useProdWebexApis\n ? WEBEX_API_CONFIG_PROD_URL\n : WEBEX_API_CONFIG_INT_URL;\n\n try {\n if (directoryNumber) {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${webexApisUrl}/${PEOPLE_ENDPOINT}/${\n this.userId\n }/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.GET,\n });\n\n log.log(`Response code: ${resp.statusCode}`, loggerContext);\n\n const {callForwarding} = resp.body as CallForwardingSettingsUCM;\n const cfa = callForwarding.always.find(\n (item) => item.dn.endsWith(directoryNumber) || item.e164Number.endsWith(directoryNumber)\n );\n\n if (cfa) {\n const response = {\n statusCode: Number(resp[STATUS_CODE]),\n message: SUCCESS_MESSAGE,\n data: {\n callSetting: {\n enabled: cfa.destinationVoicemailEnabled || !!cfa.destination,\n destination: cfa.destinationVoicemailEnabled ? VOICEMAIL : cfa.destination,\n } as CallForwardAlwaysSetting,\n },\n };\n\n log.log(\n `Successfully retrieved call forward always setting for directory number: ${directoryNumber}`,\n loggerContext\n );\n\n return response;\n }\n const response = {\n statusCode: 404,\n message: FAILURE_MESSAGE,\n data: {\n error: 'Directory Number is not assigned to the user',\n },\n };\n\n return response;\n }\n const response = {\n statusCode: 400,\n message: FAILURE_MESSAGE,\n data: {\n error: 'Directory Number is mandatory for UCM backend',\n },\n };\n\n return response;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n log.error(`Failed to get call forward always setting: ${JSON.stringify(err)}`, loggerContext);\n await uploadLogs();\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_Logger","_interopRequireDefault","require","_SDKConnector","_Utils","_constants","_types","_constants2","UcmBackendConnector","exports","webex","logger","useProdWebexApis","arguments","length","undefined","_classCallCheck2","default","_defineProperty2","sdkConnector","SDKConnector","getWebex","setWebex","log","setLogger","level","UCM_CONNECTOR_FILE","userId","internal","device","orgId","_createClass2","key","value","getCallWaitingSetting","loggerContext","file","method","METHODS","GET_CALL_WAITING_SETTING","info","METHOD_START_MESSAGE","getMethodNotSupportedResponse","getDoNotDisturbSetting","GET_DO_NOT_DISTURB_SETTING","setDoNotDisturbSetting","SET_DO_NOT_DISTURB_SETTING","getCallForwardSetting","GET_CALL_FORWARD_SETTING","setCallForwardSetting","SET_CALL_FORWARD_SETTING","getVoicemailSetting","GET_VOICEMAIL_SETTING","setVoicemailSetting","SET_VOICEMAIL_SETTING","GET_METHOD_NOT_SUPPORTED_RESPONSE","response","serviceErrorCodeHandler","statusCode","_promise","resolve","_getCallForwardAlwaysSetting","_asyncToGenerator2","_regenerator","mark","_callee","directoryNumber","_this$webex","_this$webex$config","headers","webexApisUrl","requestOptions","resp","_ref","callForwarding","cfa","_response","_response2","errorInfo","errorStatus","_t","wrap","_context","prev","next","GET_CALL_FORWARD_ALWAYS_SETTING","concat","getAuthHeaders","sent","config","fedramp","WEBEX_API_CONFIG_FEDRAMP_URL","WEBEX_API_CONFIG_PROD_URL","WEBEX_API_CONFIG_INT_URL","uri","PEOPLE_ENDPOINT","CF_ENDPOINT","toLowerCase","ORG_ENDPOINT","HTTP_METHODS","GET","request","body","always","find","item","dn","endsWith","e164Number","Number","STATUS_CODE","message","SUCCESS_MESSAGE","data","callSetting","enabled","destinationVoicemailEnabled","destination","VOICEMAIL","abrupt","FAILURE_MESSAGE","error","_stringify","uploadLogs","stop","getCallForwardAlwaysSetting","_x","apply","_getAuthHeaders","_callee2","_this$webex2","_this$webex2$config","_context2","credentials","getUserToken","authorization"],"sources":["UcmBackendConnector.ts"],"sourcesContent":["import log from '../Logger';\nimport SDKConnector from '../SDKConnector';\nimport {ISDKConnector, WebexSDK} from '../SDKConnector/types';\nimport {serviceErrorCodeHandler, uploadLogs} from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n METHOD_START_MESSAGE,\n STATUS_CODE,\n SUCCESS_MESSAGE,\n UCM_CONNECTOR_FILE,\n VOICEMAIL,\n WEBEX_API_CONFIG_INT_URL,\n WEBEX_API_CONFIG_PROD_URL,\n WEBEX_API_CONFIG_FEDRAMP_URL,\n} from '../common/constants';\nimport {HTTP_METHODS, WebexRequestPayload} from '../common/types';\nimport {CF_ENDPOINT, METHODS, ORG_ENDPOINT, PEOPLE_ENDPOINT} from './constants';\nimport {\n CallForwardAlwaysSetting,\n CallForwardingSettingsUCM,\n CallSettingResponse,\n IUcmBackendConnector,\n LoggerInterface,\n} from './types';\n\n/**\n * This Connector class will implement child interface of ICallSettings and\n * has methods for the CCUC with UCM backend.\n */\nexport class UcmBackendConnector implements IUcmBackendConnector {\n private sdkConnector: ISDKConnector;\n\n private webex: WebexSDK;\n\n private userId: string;\n\n private orgId: string;\n\n private useProdWebexApis: boolean;\n\n /**\n * @param useProdWebexApis - default value is true\n */\n constructor(webex: WebexSDK, logger: LoggerInterface, useProdWebexApis = true) {\n this.sdkConnector = SDKConnector;\n\n if (!this.sdkConnector.getWebex()) {\n SDKConnector.setWebex(webex);\n }\n\n this.webex = this.sdkConnector.getWebex();\n log.setLogger(logger.level, UCM_CONNECTOR_FILE);\n this.userId = this.webex.internal.device.userId;\n this.orgId = this.webex.internal.device.orgId;\n this.useProdWebexApis = useProdWebexApis;\n }\n\n // Removed header caching to align with review: fetch per request instead.\n\n /**\n * Reads call waiting setting at the backend.\n */\n public getCallWaitingSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_WAITING_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads DND setting at the backend.\n */\n public getDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_DO_NOT_DISTURB_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates DND setting at the backend.\n */\n public setDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_DO_NOT_DISTURB_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads Call Forward setting at the backend.\n */\n public getCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_FORWARD_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates Call Forward setting at the backend.\n */\n public setCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_CALL_FORWARD_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads Voicemail setting at the backend.\n */\n public getVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_VOICEMAIL_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates Voicemail setting at the backend.\n */\n public setVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_VOICEMAIL_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Returns a default error response for unsupported methods.\n */\n private getMethodNotSupportedResponse(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_METHOD_NOT_SUPPORTED_RESPONSE,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n const response = serviceErrorCodeHandler({statusCode: 501}, loggerContext);\n\n return Promise.resolve(response);\n }\n\n /**\n * Reads the Call Forwarding Always settings at the backend.\n * This will also check if CFA is set to Voicemail.\n * If CFA is set to destination, that will take precedence.\n * For UCM backend, relevant fields in the response are `enabled` & `destination`.\n *\n * @param directoryNumber - Directory number for which CFA needs to returned.\n */\n public async getCallForwardAlwaysSetting(directoryNumber?: string): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_FORWARD_ALWAYS_SETTING,\n };\n\n log.info(\n directoryNumber ? `${METHOD_START_MESSAGE} with ${directoryNumber}` : METHOD_START_MESSAGE,\n loggerContext\n );\n\n // Fetch auth headers per request (no caching) to ensure freshness.\n const headers = await this.getAuthHeaders();\n\n let webexApisUrl: string;\n if (this.webex?.config?.fedramp) {\n webexApisUrl = WEBEX_API_CONFIG_FEDRAMP_URL;\n } else {\n webexApisUrl = this.useProdWebexApis ? WEBEX_API_CONFIG_PROD_URL : WEBEX_API_CONFIG_INT_URL;\n }\n\n try {\n if (directoryNumber) {\n const requestOptions: WebexRequestPayload = {\n uri: `${webexApisUrl}/${PEOPLE_ENDPOINT}/${\n this.userId\n }/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.GET,\n headers,\n };\n\n const resp = <WebexRequestPayload>await this.webex.request(requestOptions);\n\n log.log(`Response code: ${resp.statusCode}`, loggerContext);\n\n const {callForwarding} = resp.body as CallForwardingSettingsUCM;\n const cfa = callForwarding.always.find(\n (item) => item.dn.endsWith(directoryNumber) || item.e164Number.endsWith(directoryNumber)\n );\n\n if (cfa) {\n const response = {\n statusCode: Number(resp[STATUS_CODE]),\n message: SUCCESS_MESSAGE,\n data: {\n callSetting: {\n enabled: cfa.destinationVoicemailEnabled || !!cfa.destination,\n destination: cfa.destinationVoicemailEnabled ? VOICEMAIL : cfa.destination,\n } as CallForwardAlwaysSetting,\n },\n };\n\n log.log(\n `Successfully retrieved call forward always setting for directory number: ${directoryNumber}`,\n loggerContext\n );\n\n return response;\n }\n const response = {\n statusCode: 404,\n message: FAILURE_MESSAGE,\n data: {\n error: 'Directory Number is not assigned to the user',\n },\n };\n\n return response;\n }\n const response = {\n statusCode: 400,\n message: FAILURE_MESSAGE,\n data: {\n error: 'Directory Number is mandatory for UCM backend',\n },\n };\n\n return response;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n log.error(`Failed to get call forward always setting: ${JSON.stringify(err)}`, loggerContext);\n await uploadLogs();\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n private async getAuthHeaders(): Promise<Record<string, string>> {\n const headers: Record<string, string> = {};\n\n // Match behavior from WxCallBackendConnector:\n // Only add authorization for FedRAMP, else rely on implicit auth/session.\n // Note: Use lowercase 'authorization' to match SDK's auth interceptor check\n if (this.webex?.config?.fedramp) {\n headers.authorization = await this.webex.credentials.getUserToken();\n }\n\n return headers;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -80,9 +80,11 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
80
80
  expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
81
81
  expect(callForwardSetting.enabled).toEqual(true);
82
82
  expect(callForwardSetting.destination).toEqual('8004');
83
- expect(webex.request).toBeCalledOnceWith({
83
+ expect(webex.request).toHaveBeenCalledTimes(1);
84
+ expect(webex.request).toHaveBeenCalledWith({
84
85
  method: _types2.HTTP_METHODS.GET,
85
- uri: callForwardingUri
86
+ uri: callForwardingUri,
87
+ headers: {}
86
88
  });
87
89
  expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8001', {
88
90
  file: _constants.UCM_CONNECTOR_FILE,
@@ -113,9 +115,11 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
113
115
  expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
114
116
  expect(callForwardSetting.enabled).toEqual(true);
115
117
  expect(callForwardSetting.destination).toEqual('VOICEMAIL');
116
- expect(webex.request).toBeCalledOnceWith({
118
+ expect(webex.request).toHaveBeenCalledTimes(1);
119
+ expect(webex.request).toHaveBeenCalledWith({
117
120
  method: _types2.HTTP_METHODS.GET,
118
- uri: callForwardingUri
121
+ uri: callForwardingUri,
122
+ headers: {}
119
123
  });
120
124
  expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8002', {
121
125
  file: _constants.UCM_CONNECTOR_FILE,
@@ -146,9 +150,11 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
146
150
  expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
147
151
  expect(callForwardSetting.enabled).toEqual(false);
148
152
  expect(callForwardSetting.destination).toBeFalsy();
149
- expect(webex.request).toBeCalledOnceWith({
153
+ expect(webex.request).toHaveBeenCalledTimes(1);
154
+ expect(webex.request).toHaveBeenCalledWith({
150
155
  method: _types2.HTTP_METHODS.GET,
151
- uri: callForwardingUri
156
+ uri: callForwardingUri,
157
+ headers: {}
152
158
  });
153
159
  expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8003', {
154
160
  file: _constants.UCM_CONNECTOR_FILE,
@@ -179,9 +185,11 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
179
185
  expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
180
186
  expect(callForwardSetting.enabled).toEqual(true);
181
187
  expect(callForwardSetting.destination).toEqual('8007');
182
- expect(webex.request).toBeCalledOnceWith({
188
+ expect(webex.request).toHaveBeenCalledTimes(1);
189
+ expect(webex.request).toHaveBeenCalledWith({
183
190
  method: _types2.HTTP_METHODS.GET,
184
- uri: callForwardingUri
191
+ uri: callForwardingUri,
192
+ headers: {}
185
193
  });
186
194
  expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8006', {
187
195
  file: _constants.UCM_CONNECTOR_FILE,
@@ -216,11 +224,14 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
216
224
  expect(response.statusCode).toEqual(503);
217
225
  expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
218
226
  expect(response.data.error).toEqual('Unable to establish a connection with the server');
219
- expect(webex.request).toBeCalledOnceWith({
227
+ expect(webex.request).toHaveBeenCalledTimes(1);
228
+ expect(webex.request).toHaveBeenCalledWith({
220
229
  method: _types2.HTTP_METHODS.GET,
221
- uri: callForwardingUri
230
+ uri: callForwardingUri,
231
+ headers: {}
222
232
  });
223
- expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(responsePayload, {
233
+ expect(serviceErrorCodeHandlerSpy).toHaveBeenCalledTimes(1);
234
+ expect(serviceErrorCodeHandlerSpy).toHaveBeenCalledWith(responsePayload, {
224
235
  file: _constants.UCM_CONNECTOR_FILE,
225
236
  method: callSettingsClient.getCallForwardAlwaysSetting.name
226
237
  });
@@ -251,9 +262,11 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
251
262
  expect(response.statusCode).toEqual(404);
252
263
  expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
253
264
  expect(response.data.error).toEqual('Directory Number is not assigned to the user');
254
- expect(webex.request).toBeCalledOnceWith({
265
+ expect(webex.request).toHaveBeenCalledTimes(1);
266
+ expect(webex.request).toHaveBeenCalledWith({
255
267
  method: _types2.HTTP_METHODS.GET,
256
- uri: callForwardingUri
268
+ uri: callForwardingUri,
269
+ headers: {}
257
270
  });
258
271
  expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8005', {
259
272
  file: _constants.UCM_CONNECTOR_FILE,
@@ -278,7 +291,7 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
278
291
  expect(response.statusCode).toEqual(400);
279
292
  expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
280
293
  expect(response.data.error).toEqual('Directory Number is mandatory for UCM backend');
281
- expect(webex.request).not.toBeCalled();
294
+ expect(webex.request).not.toHaveBeenCalled();
282
295
  expect(_Logger.default.info).toHaveBeenCalledWith('invoking', {
283
296
  file: _constants.UCM_CONNECTOR_FILE,
284
297
  method: 'getCallForwardAlwaysSetting'
@@ -305,7 +318,7 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
305
318
  expect(response.statusCode).toEqual(501);
306
319
  expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
307
320
  expect(response.data.error).toEqual('Method is not implemented at the backend');
308
- expect(webex.request).not.toBeCalled();
321
+ expect(webex.request).not.toHaveBeenCalled();
309
322
  case 2:
310
323
  case "end":
311
324
  return _context8.stop();
@@ -318,5 +331,81 @@ describe('Call Settings Client Tests for UcmBackendConnector', function () {
318
331
  }());
319
332
  });
320
333
  });
334
+ describe('FedRAMP Call Forward Always test', function () {
335
+ var callSettingsClient;
336
+ var MOCK_AUTH_TOKEN = 'mockAuthToken';
337
+ var callForwardPayload = {
338
+ callForwarding: {
339
+ always: [{
340
+ dn: '8001',
341
+ destination: '8004',
342
+ destinationVoicemailEnabled: false,
343
+ e164Number: '+14922999903'
344
+ }]
345
+ }
346
+ };
347
+ var callForwardingUriFedRamp = "".concat(_constants.WEBEX_API_CONFIG_FEDRAMP_URL, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(userId, "/").concat(_constants2.CF_ENDPOINT.toLowerCase(), "?").concat(_constants2.ORG_ENDPOINT, "=").concat(orgId);
348
+ beforeAll(function () {
349
+ webex.config.fedramp = true;
350
+ webex.credentials.getUserToken.mockResolvedValue(MOCK_AUTH_TOKEN);
351
+ callSettingsClient = new _UcmBackendConnector.UcmBackendConnector(webex, {
352
+ level: _types.LOGGER.INFO
353
+ }, true);
354
+ });
355
+ afterAll(function () {
356
+ webex.config.fedramp = false;
357
+ });
358
+ beforeEach(function () {
359
+ var responsePayload = {
360
+ statusCode: 200,
361
+ body: callForwardPayload
362
+ };
363
+ webex.request.mockClear();
364
+ webex.request.mockResolvedValue(responsePayload);
365
+
366
+ // Setup log spies
367
+ jest.spyOn(_Logger.default, 'log').mockImplementation(function () {});
368
+ jest.spyOn(_Logger.default, 'info').mockImplementation(function () {});
369
+ jest.spyOn(_Logger.default, 'warn').mockImplementation(function () {});
370
+ jest.spyOn(_Logger.default, 'error').mockImplementation(function () {});
371
+ });
372
+ it('Success: Get Call Forward Always setting with FedRAMP URL and authorization header', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9() {
373
+ var response, callForwardSetting;
374
+ return _regenerator.default.wrap(function (_context9) {
375
+ while (1) switch (_context9.prev = _context9.next) {
376
+ case 0:
377
+ _context9.next = 1;
378
+ return callSettingsClient.getCallForwardAlwaysSetting('8001');
379
+ case 1:
380
+ response = _context9.sent;
381
+ callForwardSetting = response.data.callSetting;
382
+ expect(response.statusCode).toEqual(200);
383
+ expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
384
+ expect(callForwardSetting.enabled).toEqual(true);
385
+ expect(callForwardSetting.destination).toEqual('8004');
386
+ expect(webex.request).toHaveBeenCalledTimes(1);
387
+ expect(webex.request).toHaveBeenCalledWith({
388
+ method: _types2.HTTP_METHODS.GET,
389
+ uri: callForwardingUriFedRamp,
390
+ headers: {
391
+ authorization: MOCK_AUTH_TOKEN
392
+ }
393
+ });
394
+ expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8001', {
395
+ file: _constants.UCM_CONNECTOR_FILE,
396
+ method: 'getCallForwardAlwaysSetting'
397
+ });
398
+ expect(_Logger.default.log).toHaveBeenCalledWith('Successfully retrieved call forward always setting for directory number: 8001', {
399
+ file: _constants.UCM_CONNECTOR_FILE,
400
+ method: 'getCallForwardAlwaysSetting'
401
+ });
402
+ expect(_Logger.default.error).not.toHaveBeenCalled();
403
+ case 2:
404
+ case "end":
405
+ return _context9.stop();
406
+ }
407
+ }, _callee9);
408
+ })));
409
+ });
321
410
  });
322
411
  //# sourceMappingURL=UcmBackendConnector.test.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_Logger","_interopRequireDefault","utils","_interopRequireWildcard","_constants","_testUtil","_types2","_UcmBackendConnector","_constants2","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","jest","spyOn","mockResolvedValue","undefined","describe","webex","getTestUtilsWebex","userId","orgId","callSettingsClient","callForwardPayload","callForwarding","always","dn","destination","destinationVoicemailEnabled","e164Number","callForwardingUri","concat","WEBEX_API_CONFIG_INT_URL","PEOPLE_ENDPOINT","CF_ENDPOINT","toLowerCase","ORG_ENDPOINT","beforeAll","UcmBackendConnector","level","LOGGER","INFO","beforeEach","responsePayload","statusCode","body","request","log","mockImplementation","it","_asyncToGenerator2","_regenerator","mark","_callee","response","callForwardSetting","wrap","_context","prev","next","getCallForwardAlwaysSetting","sent","data","callSetting","expect","toEqual","message","SUCCESS_MESSAGE","enabled","toBeCalledOnceWith","method","HTTP_METHODS","GET","uri","info","toHaveBeenCalledWith","file","UCM_CONNECTOR_FILE","error","not","toHaveBeenCalled","stop","_callee2","_context2","_callee3","_context3","toBeFalsy","_callee4","_context4","_callee5","serviceErrorCodeHandlerSpy","_context5","mockClear","mockRejectedValue","FAILURE_MESSAGE","name","_stringify","_callee6","_context6","_callee7","_context7","toBeCalled","unsupportedMethods","each","_ref8","_callee8","methodName","_context8","_x","apply","arguments"],"sources":["UcmBackendConnector.test.ts"],"sourcesContent":["import {LOGGER} from '../Logger/types';\nimport log from '../Logger';\nimport * as utils from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n SUCCESS_MESSAGE,\n UCM_CONNECTOR_FILE,\n WEBEX_API_CONFIG_INT_URL,\n} from '../common/constants';\nimport {getTestUtilsWebex} from '../common/testUtil';\nimport {HTTP_METHODS, WebexRequestPayload} from '../common/types';\nimport {UcmBackendConnector} from './UcmBackendConnector';\nimport {CF_ENDPOINT, ORG_ENDPOINT, PEOPLE_ENDPOINT} from './constants';\nimport {CallForwardAlwaysSetting, CallForwardingSettingsUCM, IUcmBackendConnector} from './types';\n\njest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);\n\ndescribe('Call Settings Client Tests for UcmBackendConnector', () => {\n const webex = getTestUtilsWebex();\n\n const userId = '8a67806f-fc4d-446b-a131-31e71ea5b0e9';\n const orgId = '1704d30d-a131-4bc7-9449-948487643793';\n\n describe('Call Forward Always test', () => {\n let callSettingsClient: IUcmBackendConnector;\n const callForwardPayload: CallForwardingSettingsUCM = {\n callForwarding: {\n always: [\n {\n dn: '8001',\n destination: '8004',\n destinationVoicemailEnabled: false,\n e164Number: '+14922999903',\n },\n {\n dn: '8002',\n destinationVoicemailEnabled: true,\n e164Number: '',\n },\n {\n dn: '8003',\n destinationVoicemailEnabled: false,\n e164Number: '',\n },\n {\n dn: '8000',\n destination: '8007',\n destinationVoicemailEnabled: false,\n e164Number: '8006',\n },\n ],\n },\n };\n\n const callForwardingUri = `${WEBEX_API_CONFIG_INT_URL}/${PEOPLE_ENDPOINT}/${userId}/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${orgId}`;\n\n beforeAll(() => {\n callSettingsClient = new UcmBackendConnector(webex, {level: LOGGER.INFO}, false);\n });\n\n beforeEach(() => {\n const responsePayload = <WebexRequestPayload>(<unknown>{\n statusCode: 200,\n body: callForwardPayload,\n });\n\n webex.request.mockResolvedValue(responsePayload);\n\n // Setup log spies\n jest.spyOn(log, 'log').mockImplementation(() => {});\n jest.spyOn(log, 'info').mockImplementation(() => {});\n jest.spyOn(log, 'warn').mockImplementation(() => {});\n jest.spyOn(log, 'error').mockImplementation(() => {});\n });\n\n it('Success: Get Call Forward Always setting when set to destination', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8001');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('8004');\n expect(webex.request).toBeCalledOnceWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8001', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8001',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Success: Get Call Forward Always setting when set to voicemail', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8002');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('VOICEMAIL');\n expect(webex.request).toBeCalledOnceWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8002', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8002',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Success: Get Call Forward Always setting when not set', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8003');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(false);\n expect(callForwardSetting.destination).toBeFalsy();\n expect(webex.request).toBeCalledOnceWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8003', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8003',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Success: Get Call Forward Always setting when directory num matching with e16number and set to destination', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8006');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('8007');\n expect(webex.request).toBeCalledOnceWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8006', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8006',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Failure: Get Call Forward Always setting fails', async () => {\n const responsePayload = <WebexRequestPayload>(<unknown>{\n statusCode: 503,\n });\n\n webex.request.mockClear();\n webex.request.mockRejectedValue(responsePayload);\n const serviceErrorCodeHandlerSpy = jest.spyOn(utils, 'serviceErrorCodeHandler');\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8002');\n\n expect(response.statusCode).toEqual(503);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Unable to establish a connection with the server');\n expect(webex.request).toBeCalledOnceWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n });\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(responsePayload, {\n file: UCM_CONNECTOR_FILE,\n method: callSettingsClient.getCallForwardAlwaysSetting.name,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8002', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.error).toHaveBeenCalledWith(\n `Failed to get call forward always setting: ${JSON.stringify(responsePayload)}`,\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.log).not.toHaveBeenCalled();\n });\n\n it('Failure: Get Call Forward Always setting fails - wrong directoryNumber', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8005');\n\n expect(response.statusCode).toEqual(404);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Directory Number is not assigned to the user');\n expect(webex.request).toBeCalledOnceWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8005', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Failure: Get Call Forward Always setting fails when no directoryNumberProvided', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting();\n\n expect(response.statusCode).toEqual(400);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Directory Number is mandatory for UCM backend');\n expect(webex.request).not.toBeCalled();\n\n expect(log.info).toHaveBeenCalledWith('invoking', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.error).not.toHaveBeenCalled();\n });\n\n describe('Unsupported methods return failure', () => {\n const unsupportedMethods = [\n 'getCallWaitingSetting',\n 'getDoNotDisturbSetting',\n 'setDoNotDisturbSetting',\n 'getCallForwardSetting',\n 'setCallForwardSetting',\n 'getVoicemailSetting',\n 'setVoicemailSetting',\n ];\n\n it.each(unsupportedMethods)('%s', async (methodName) => {\n const response = await callSettingsClient[methodName]();\n\n expect(response.statusCode).toEqual(501);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Method is not implemented at the backend');\n expect(webex.request).not.toBeCalled();\n });\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_types","require","_Logger","_interopRequireDefault","utils","_interopRequireWildcard","_constants","_testUtil","_types2","_UcmBackendConnector","_constants2","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","jest","spyOn","mockResolvedValue","undefined","describe","webex","getTestUtilsWebex","userId","orgId","callSettingsClient","callForwardPayload","callForwarding","always","dn","destination","destinationVoicemailEnabled","e164Number","callForwardingUri","concat","WEBEX_API_CONFIG_INT_URL","PEOPLE_ENDPOINT","CF_ENDPOINT","toLowerCase","ORG_ENDPOINT","beforeAll","UcmBackendConnector","level","LOGGER","INFO","beforeEach","responsePayload","statusCode","body","request","log","mockImplementation","it","_asyncToGenerator2","_regenerator","mark","_callee","response","callForwardSetting","wrap","_context","prev","next","getCallForwardAlwaysSetting","sent","data","callSetting","expect","toEqual","message","SUCCESS_MESSAGE","enabled","toHaveBeenCalledTimes","toHaveBeenCalledWith","method","HTTP_METHODS","GET","uri","headers","info","file","UCM_CONNECTOR_FILE","error","not","toHaveBeenCalled","stop","_callee2","_context2","_callee3","_context3","toBeFalsy","_callee4","_context4","_callee5","serviceErrorCodeHandlerSpy","_context5","mockClear","mockRejectedValue","FAILURE_MESSAGE","name","_stringify","_callee6","_context6","_callee7","_context7","unsupportedMethods","each","_ref8","_callee8","methodName","_context8","_x","apply","arguments","MOCK_AUTH_TOKEN","callForwardingUriFedRamp","WEBEX_API_CONFIG_FEDRAMP_URL","config","fedramp","credentials","getUserToken","afterAll","_callee9","_context9","authorization"],"sources":["UcmBackendConnector.test.ts"],"sourcesContent":["import {LOGGER} from '../Logger/types';\nimport log from '../Logger';\nimport * as utils from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n SUCCESS_MESSAGE,\n UCM_CONNECTOR_FILE,\n WEBEX_API_CONFIG_INT_URL,\n WEBEX_API_CONFIG_FEDRAMP_URL,\n} from '../common/constants';\nimport {getTestUtilsWebex} from '../common/testUtil';\nimport {HTTP_METHODS, WebexRequestPayload} from '../common/types';\nimport {UcmBackendConnector} from './UcmBackendConnector';\nimport {CF_ENDPOINT, ORG_ENDPOINT, PEOPLE_ENDPOINT} from './constants';\nimport {CallForwardAlwaysSetting, CallForwardingSettingsUCM, IUcmBackendConnector} from './types';\n\njest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);\n\ndescribe('Call Settings Client Tests for UcmBackendConnector', () => {\n const webex = getTestUtilsWebex();\n\n const userId = '8a67806f-fc4d-446b-a131-31e71ea5b0e9';\n const orgId = '1704d30d-a131-4bc7-9449-948487643793';\n\n describe('Call Forward Always test', () => {\n let callSettingsClient: IUcmBackendConnector;\n const callForwardPayload: CallForwardingSettingsUCM = {\n callForwarding: {\n always: [\n {\n dn: '8001',\n destination: '8004',\n destinationVoicemailEnabled: false,\n e164Number: '+14922999903',\n },\n {\n dn: '8002',\n destinationVoicemailEnabled: true,\n e164Number: '',\n },\n {\n dn: '8003',\n destinationVoicemailEnabled: false,\n e164Number: '',\n },\n {\n dn: '8000',\n destination: '8007',\n destinationVoicemailEnabled: false,\n e164Number: '8006',\n },\n ],\n },\n };\n\n const callForwardingUri = `${WEBEX_API_CONFIG_INT_URL}/${PEOPLE_ENDPOINT}/${userId}/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${orgId}`;\n\n beforeAll(() => {\n callSettingsClient = new UcmBackendConnector(webex, {level: LOGGER.INFO}, false);\n });\n\n beforeEach(() => {\n const responsePayload = <WebexRequestPayload>(<unknown>{\n statusCode: 200,\n body: callForwardPayload,\n });\n\n webex.request.mockResolvedValue(responsePayload);\n\n // Setup log spies\n jest.spyOn(log, 'log').mockImplementation(() => {});\n jest.spyOn(log, 'info').mockImplementation(() => {});\n jest.spyOn(log, 'warn').mockImplementation(() => {});\n jest.spyOn(log, 'error').mockImplementation(() => {});\n });\n\n it('Success: Get Call Forward Always setting when set to destination', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8001');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('8004');\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n headers: {},\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8001', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8001',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Success: Get Call Forward Always setting when set to voicemail', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8002');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('VOICEMAIL');\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n headers: {},\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8002', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8002',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Success: Get Call Forward Always setting when not set', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8003');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(false);\n expect(callForwardSetting.destination).toBeFalsy();\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n headers: {},\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8003', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8003',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Success: Get Call Forward Always setting when directory num matching with e16number and set to destination', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8006');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('8007');\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n headers: {},\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8006', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8006',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Failure: Get Call Forward Always setting fails', async () => {\n const responsePayload = <WebexRequestPayload>(<unknown>{\n statusCode: 503,\n });\n\n webex.request.mockClear();\n webex.request.mockRejectedValue(responsePayload);\n const serviceErrorCodeHandlerSpy = jest.spyOn(utils, 'serviceErrorCodeHandler');\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8002');\n\n expect(response.statusCode).toEqual(503);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Unable to establish a connection with the server');\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n headers: {},\n });\n expect(serviceErrorCodeHandlerSpy).toHaveBeenCalledTimes(1);\n expect(serviceErrorCodeHandlerSpy).toHaveBeenCalledWith(responsePayload, {\n file: UCM_CONNECTOR_FILE,\n method: callSettingsClient.getCallForwardAlwaysSetting.name,\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8002', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.error).toHaveBeenCalledWith(\n `Failed to get call forward always setting: ${JSON.stringify(responsePayload)}`,\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.log).not.toHaveBeenCalled();\n });\n\n it('Failure: Get Call Forward Always setting fails - wrong directoryNumber', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8005');\n\n expect(response.statusCode).toEqual(404);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Directory Number is not assigned to the user');\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUri,\n headers: {},\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8005', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.error).not.toHaveBeenCalled();\n });\n\n it('Failure: Get Call Forward Always setting fails when no directoryNumberProvided', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting();\n\n expect(response.statusCode).toEqual(400);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Directory Number is mandatory for UCM backend');\n expect(webex.request).not.toHaveBeenCalled();\n\n expect(log.info).toHaveBeenCalledWith('invoking', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.error).not.toHaveBeenCalled();\n });\n\n describe('Unsupported methods return failure', () => {\n const unsupportedMethods = [\n 'getCallWaitingSetting',\n 'getDoNotDisturbSetting',\n 'setDoNotDisturbSetting',\n 'getCallForwardSetting',\n 'setCallForwardSetting',\n 'getVoicemailSetting',\n 'setVoicemailSetting',\n ];\n\n it.each(unsupportedMethods)('%s', async (methodName) => {\n const response = await callSettingsClient[methodName]();\n\n expect(response.statusCode).toEqual(501);\n expect(response.message).toEqual(FAILURE_MESSAGE);\n expect(response.data.error).toEqual('Method is not implemented at the backend');\n expect(webex.request).not.toHaveBeenCalled();\n });\n });\n });\n\n describe('FedRAMP Call Forward Always test', () => {\n let callSettingsClient: IUcmBackendConnector;\n const MOCK_AUTH_TOKEN = 'mockAuthToken';\n const callForwardPayload: CallForwardingSettingsUCM = {\n callForwarding: {\n always: [\n {\n dn: '8001',\n destination: '8004',\n destinationVoicemailEnabled: false,\n e164Number: '+14922999903',\n },\n ],\n },\n };\n\n const callForwardingUriFedRamp = `${WEBEX_API_CONFIG_FEDRAMP_URL}/${PEOPLE_ENDPOINT}/${userId}/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${orgId}`;\n\n beforeAll(() => {\n webex.config.fedramp = true;\n webex.credentials.getUserToken.mockResolvedValue(MOCK_AUTH_TOKEN);\n callSettingsClient = new UcmBackendConnector(webex, {level: LOGGER.INFO}, true);\n });\n\n afterAll(() => {\n webex.config.fedramp = false;\n });\n\n beforeEach(() => {\n const responsePayload = <WebexRequestPayload>(<unknown>{\n statusCode: 200,\n body: callForwardPayload,\n });\n\n webex.request.mockClear();\n webex.request.mockResolvedValue(responsePayload);\n\n // Setup log spies\n jest.spyOn(log, 'log').mockImplementation(() => {});\n jest.spyOn(log, 'info').mockImplementation(() => {});\n jest.spyOn(log, 'warn').mockImplementation(() => {});\n jest.spyOn(log, 'error').mockImplementation(() => {});\n });\n\n it('Success: Get Call Forward Always setting with FedRAMP URL and authorization header', async () => {\n const response = await callSettingsClient.getCallForwardAlwaysSetting('8001');\n\n const callForwardSetting = response.data.callSetting as CallForwardAlwaysSetting;\n\n expect(response.statusCode).toEqual(200);\n expect(response.message).toEqual(SUCCESS_MESSAGE);\n expect(callForwardSetting.enabled).toEqual(true);\n expect(callForwardSetting.destination).toEqual('8004');\n expect(webex.request).toHaveBeenCalledTimes(1);\n expect(webex.request).toHaveBeenCalledWith({\n method: HTTP_METHODS.GET,\n uri: callForwardingUriFedRamp,\n headers: {\n authorization: MOCK_AUTH_TOKEN,\n },\n });\n\n expect(log.info).toHaveBeenCalledWith('invoking with 8001', {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n });\n expect(log.log).toHaveBeenCalledWith(\n 'Successfully retrieved call forward always setting for directory number: 8001',\n {\n file: UCM_CONNECTOR_FILE,\n method: 'getCallForwardAlwaysSetting',\n }\n );\n expect(log.error).not.toHaveBeenCalled();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/defi
4
4
  _Object$defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.XSI_ACTION_ENDPOINT_ORG_URL_PARAM = exports.XSI_ACTION_ENDPOINT = exports.XML_TYPE = exports.WEBEX_CALLING_CONNECTOR_FILE = exports.WEBEX_API_PROD = exports.WEBEX_API_CONFIG_PROD_URL = exports.WEBEX_API_CONFIG_INT_URL = exports.WEBEX_API_BTS = exports.VOICEMAIL = exports.VALUES = exports.USER_SESSIONS = exports.USERS = exports.USER = exports.UNPROCESSABLE_CONTENT_CODE = exports.UCM_CONNECTOR_FILE = exports.TRANSCRIPT = exports.TOKEN = exports.TIME = exports.SUCCESS_STATUS_CODE = exports.SUCCESS_MESSAGE = exports.STATUS_CODE = exports.SETTINGS = exports.SERVICES_ENDPOINT = exports.SCIM_WEBEXIDENTITY_USER = exports.SCIM_USER_FILTER = exports.SCIM_ENTERPRISE_USER = exports.SCIM_ENDPOINT_RESOURCE = exports.RESPONSE_MESSAGE = exports.RESPONSE_DATA = exports.RESPONSE = exports.RAW_REQUEST = exports.PLACEHOLDER_KEY = exports.OBJECT = exports.NATIVE_WEBEX_TEAMS_CALLING = exports.NATIVE_SIP_CALL_TO_UCM = exports.METHOD_START_MESSAGE = exports.KEY = exports.ITEMS = exports.INFER_ID_CONSTANT = exports.IDENTITY_ENDPOINT_RESOURCE = exports.FAILURE_MESSAGE = exports.ENTITLEMENT_STANDARD = exports.ENTITLEMENT_BROADWORKS_CONN = exports.ENTITLEMENT_BASIC = exports.DEVICES = exports.CONTENT = exports.BW_XSI_URL = exports.BW_XSI_ENDPOINT_VERSION_WITH_SLASH = exports.BW_XSI_ENDPOINT_VERSION = exports.BINARY = exports.BEARER = exports.BASE64 = void 0;
7
+ exports.XSI_ACTION_ENDPOINT_ORG_URL_PARAM = exports.XSI_ACTION_ENDPOINT = exports.XML_TYPE = exports.WEBEX_CALLING_CONNECTOR_FILE = exports.WEBEX_API_PROD = exports.WEBEX_API_FEDRAMP = exports.WEBEX_API_CONFIG_PROD_URL = exports.WEBEX_API_CONFIG_INT_URL = exports.WEBEX_API_CONFIG_FEDRAMP_URL = exports.WEBEX_API_BTS = exports.VOICEMAIL = exports.VALUES = exports.USER_SESSIONS = exports.USERS = exports.USER = exports.UNPROCESSABLE_CONTENT_CODE = exports.UCM_CONNECTOR_FILE = exports.TRANSCRIPT = exports.TOKEN = exports.TIME = exports.SUCCESS_STATUS_CODE = exports.SUCCESS_MESSAGE = exports.STATUS_CODE = exports.SETTINGS = exports.SERVICES_ENDPOINT = exports.SCIM_WEBEXIDENTITY_USER = exports.SCIM_USER_FILTER = exports.SCIM_ENTERPRISE_USER = exports.SCIM_ENDPOINT_RESOURCE = exports.RESPONSE_MESSAGE = exports.RESPONSE_DATA = exports.RESPONSE = exports.RAW_REQUEST = exports.PLACEHOLDER_KEY = exports.OBJECT = exports.NATIVE_WEBEX_TEAMS_CALLING = exports.NATIVE_SIP_CALL_TO_UCM = exports.METHOD_START_MESSAGE = exports.KEY = exports.ITEMS = exports.INFER_ID_CONSTANT = exports.IDENTITY_ENDPOINT_RESOURCE = exports.FAILURE_MESSAGE = exports.ENTITLEMENT_STANDARD = exports.ENTITLEMENT_BROADWORKS_CONN = exports.ENTITLEMENT_BASIC = exports.DEVICES = exports.CONTENT = exports.BW_XSI_URL = exports.BW_XSI_ENDPOINT_VERSION_WITH_SLASH = exports.BW_XSI_ENDPOINT_VERSION = exports.BINARY = exports.BEARER = exports.BASE64 = void 0;
8
8
  var BASE64 = exports.BASE64 = 'base64';
9
9
  var BEARER = exports.BEARER = 'bearer';
10
10
  var BINARY = exports.BINARY = 'binary';
@@ -54,7 +54,9 @@ var SCIM_WEBEXIDENTITY_USER = exports.SCIM_WEBEXIDENTITY_USER = 'urn:scim:schema
54
54
  var SCIM_ENTERPRISE_USER = exports.SCIM_ENTERPRISE_USER = 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User';
55
55
  var WEBEX_API_PROD = exports.WEBEX_API_PROD = 'https://webexapis.com';
56
56
  var WEBEX_API_BTS = exports.WEBEX_API_BTS = 'https://integration.webexapis.com';
57
+ var WEBEX_API_FEDRAMP = exports.WEBEX_API_FEDRAMP = 'https://api-usgov.webex.com';
57
58
  var WEBEX_API_CONFIG_INT_URL = exports.WEBEX_API_CONFIG_INT_URL = "".concat(WEBEX_API_BTS, "/v1/uc/config");
58
59
  var WEBEX_API_CONFIG_PROD_URL = exports.WEBEX_API_CONFIG_PROD_URL = "".concat(WEBEX_API_PROD, "/v1/uc/config");
60
+ var WEBEX_API_CONFIG_FEDRAMP_URL = exports.WEBEX_API_CONFIG_FEDRAMP_URL = "".concat(WEBEX_API_FEDRAMP, "/v1/uc/config");
59
61
  var METHOD_START_MESSAGE = exports.METHOD_START_MESSAGE = 'invoking';
60
62
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BASE64","exports","BEARER","BINARY","CONTENT","DEVICES","FAILURE_MESSAGE","IDENTITY_ENDPOINT_RESOURCE","ITEMS","KEY","OBJECT","PLACEHOLDER_KEY","RAW_REQUEST","RESPONSE","RESPONSE_DATA","RESPONSE_MESSAGE","SCIM_ENDPOINT_RESOURCE","SCIM_USER_FILTER","SETTINGS","STATUS_CODE","SUCCESS_MESSAGE","SUCCESS_STATUS_CODE","UNPROCESSABLE_CONTENT_CODE","TIME","TOKEN","TRANSCRIPT","USER","USERS","USER_SESSIONS","VALUES","XML_TYPE","XSI_ACTION_ENDPOINT","XSI_ACTION_ENDPOINT_ORG_URL_PARAM","SERVICES_ENDPOINT","INFER_ID_CONSTANT","ENTITLEMENT_BASIC","ENTITLEMENT_BROADWORKS_CONN","ENTITLEMENT_STANDARD","NATIVE_SIP_CALL_TO_UCM","NATIVE_WEBEX_TEAMS_CALLING","BW_XSI_ENDPOINT_VERSION","BW_XSI_ENDPOINT_VERSION_WITH_SLASH","BW_XSI_URL","WEBEX_CALLING_CONNECTOR_FILE","UCM_CONNECTOR_FILE","VOICEMAIL","SCIM_WEBEXIDENTITY_USER","SCIM_ENTERPRISE_USER","WEBEX_API_PROD","WEBEX_API_BTS","WEBEX_API_CONFIG_INT_URL","concat","WEBEX_API_CONFIG_PROD_URL","METHOD_START_MESSAGE"],"sources":["constants.ts"],"sourcesContent":["export const BASE64 = 'base64';\nexport const BEARER = 'bearer';\nexport const BINARY = 'binary';\nexport const CONTENT = 'content';\nexport const DEVICES = 'devices';\nexport const FAILURE_MESSAGE = 'FAILURE';\nexport const IDENTITY_ENDPOINT_RESOURCE = 'identity';\nexport const ITEMS = 'items';\nexport const KEY = 'key';\nexport const OBJECT = 'object';\nexport const PLACEHOLDER_KEY = '$';\nexport const RAW_REQUEST = 'rawRequest';\nexport const RESPONSE = 'response';\nexport const RESPONSE_DATA = 'responseData';\nexport const RESPONSE_MESSAGE = 'responseMessage';\nexport const SCIM_ENDPOINT_RESOURCE = 'scim';\nexport const SCIM_USER_FILTER = 'v2/Users?filter=';\nexport const SETTINGS = 'settings';\nexport const STATUS_CODE = 'statusCode';\nexport const SUCCESS_MESSAGE = 'SUCCESS';\nexport const SUCCESS_STATUS_CODE = 200;\nexport const UNPROCESSABLE_CONTENT_CODE = 422;\nexport const TIME = 'time';\nexport const TOKEN = 'token';\nexport const TRANSCRIPT = 'transcript';\nexport const USER = 'user';\nexport const USERS = 'users';\nexport const USER_SESSIONS = 'userSessions';\nexport const VALUES = '_values';\nexport const XML_TYPE = 'text/xml';\nexport const XSI_ACTION_ENDPOINT = 'xsiActionsEndpoint';\nexport const XSI_ACTION_ENDPOINT_ORG_URL_PARAM = 'organizations?callingData=true';\nexport const SERVICES_ENDPOINT = 'services';\nexport const INFER_ID_CONSTANT = 'ciscospark://us';\nexport const ENTITLEMENT_BASIC = 'bc-sp-basic';\nexport const ENTITLEMENT_BROADWORKS_CONN = 'broadworks-connector';\nexport const ENTITLEMENT_STANDARD = 'bc-sp-standard';\nexport const NATIVE_SIP_CALL_TO_UCM = 'NATIVE_SIP_CALL_TO_UCM';\nexport const NATIVE_WEBEX_TEAMS_CALLING = 'NATIVE_WEBEX_TEAMS_CALLING';\nexport const BW_XSI_ENDPOINT_VERSION = 'v2.0';\nexport const BW_XSI_ENDPOINT_VERSION_WITH_SLASH = 'v2.0/';\nexport const BW_XSI_URL = 'broadworksXsiActionsUrl';\nexport const WEBEX_CALLING_CONNECTOR_FILE = 'WxCallBackendConnector';\nexport const UCM_CONNECTOR_FILE = 'UcmBackendConnector';\nexport const VOICEMAIL = 'VOICEMAIL';\nexport const SCIM_WEBEXIDENTITY_USER = 'urn:scim:schemas:extension:cisco:webexidentity:2.0:User';\nexport const SCIM_ENTERPRISE_USER = 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User';\nexport const WEBEX_API_PROD = 'https://webexapis.com';\nexport const WEBEX_API_BTS = 'https://integration.webexapis.com';\nexport const WEBEX_API_CONFIG_INT_URL = `${WEBEX_API_BTS}/v1/uc/config`;\nexport const WEBEX_API_CONFIG_PROD_URL = `${WEBEX_API_PROD}/v1/uc/config`;\nexport const METHOD_START_MESSAGE = 'invoking';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BASE64","exports","BEARER","BINARY","CONTENT","DEVICES","FAILURE_MESSAGE","IDENTITY_ENDPOINT_RESOURCE","ITEMS","KEY","OBJECT","PLACEHOLDER_KEY","RAW_REQUEST","RESPONSE","RESPONSE_DATA","RESPONSE_MESSAGE","SCIM_ENDPOINT_RESOURCE","SCIM_USER_FILTER","SETTINGS","STATUS_CODE","SUCCESS_MESSAGE","SUCCESS_STATUS_CODE","UNPROCESSABLE_CONTENT_CODE","TIME","TOKEN","TRANSCRIPT","USER","USERS","USER_SESSIONS","VALUES","XML_TYPE","XSI_ACTION_ENDPOINT","XSI_ACTION_ENDPOINT_ORG_URL_PARAM","SERVICES_ENDPOINT","INFER_ID_CONSTANT","ENTITLEMENT_BASIC","ENTITLEMENT_BROADWORKS_CONN","ENTITLEMENT_STANDARD","NATIVE_SIP_CALL_TO_UCM","NATIVE_WEBEX_TEAMS_CALLING","BW_XSI_ENDPOINT_VERSION","BW_XSI_ENDPOINT_VERSION_WITH_SLASH","BW_XSI_URL","WEBEX_CALLING_CONNECTOR_FILE","UCM_CONNECTOR_FILE","VOICEMAIL","SCIM_WEBEXIDENTITY_USER","SCIM_ENTERPRISE_USER","WEBEX_API_PROD","WEBEX_API_BTS","WEBEX_API_FEDRAMP","WEBEX_API_CONFIG_INT_URL","concat","WEBEX_API_CONFIG_PROD_URL","WEBEX_API_CONFIG_FEDRAMP_URL","METHOD_START_MESSAGE"],"sources":["constants.ts"],"sourcesContent":["export const BASE64 = 'base64';\nexport const BEARER = 'bearer';\nexport const BINARY = 'binary';\nexport const CONTENT = 'content';\nexport const DEVICES = 'devices';\nexport const FAILURE_MESSAGE = 'FAILURE';\nexport const IDENTITY_ENDPOINT_RESOURCE = 'identity';\nexport const ITEMS = 'items';\nexport const KEY = 'key';\nexport const OBJECT = 'object';\nexport const PLACEHOLDER_KEY = '$';\nexport const RAW_REQUEST = 'rawRequest';\nexport const RESPONSE = 'response';\nexport const RESPONSE_DATA = 'responseData';\nexport const RESPONSE_MESSAGE = 'responseMessage';\nexport const SCIM_ENDPOINT_RESOURCE = 'scim';\nexport const SCIM_USER_FILTER = 'v2/Users?filter=';\nexport const SETTINGS = 'settings';\nexport const STATUS_CODE = 'statusCode';\nexport const SUCCESS_MESSAGE = 'SUCCESS';\nexport const SUCCESS_STATUS_CODE = 200;\nexport const UNPROCESSABLE_CONTENT_CODE = 422;\nexport const TIME = 'time';\nexport const TOKEN = 'token';\nexport const TRANSCRIPT = 'transcript';\nexport const USER = 'user';\nexport const USERS = 'users';\nexport const USER_SESSIONS = 'userSessions';\nexport const VALUES = '_values';\nexport const XML_TYPE = 'text/xml';\nexport const XSI_ACTION_ENDPOINT = 'xsiActionsEndpoint';\nexport const XSI_ACTION_ENDPOINT_ORG_URL_PARAM = 'organizations?callingData=true';\nexport const SERVICES_ENDPOINT = 'services';\nexport const INFER_ID_CONSTANT = 'ciscospark://us';\nexport const ENTITLEMENT_BASIC = 'bc-sp-basic';\nexport const ENTITLEMENT_BROADWORKS_CONN = 'broadworks-connector';\nexport const ENTITLEMENT_STANDARD = 'bc-sp-standard';\nexport const NATIVE_SIP_CALL_TO_UCM = 'NATIVE_SIP_CALL_TO_UCM';\nexport const NATIVE_WEBEX_TEAMS_CALLING = 'NATIVE_WEBEX_TEAMS_CALLING';\nexport const BW_XSI_ENDPOINT_VERSION = 'v2.0';\nexport const BW_XSI_ENDPOINT_VERSION_WITH_SLASH = 'v2.0/';\nexport const BW_XSI_URL = 'broadworksXsiActionsUrl';\nexport const WEBEX_CALLING_CONNECTOR_FILE = 'WxCallBackendConnector';\nexport const UCM_CONNECTOR_FILE = 'UcmBackendConnector';\nexport const VOICEMAIL = 'VOICEMAIL';\nexport const SCIM_WEBEXIDENTITY_USER = 'urn:scim:schemas:extension:cisco:webexidentity:2.0:User';\nexport const SCIM_ENTERPRISE_USER = 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User';\nexport const WEBEX_API_PROD = 'https://webexapis.com';\nexport const WEBEX_API_BTS = 'https://integration.webexapis.com';\nexport const WEBEX_API_FEDRAMP = 'https://api-usgov.webex.com';\nexport const WEBEX_API_CONFIG_INT_URL = `${WEBEX_API_BTS}/v1/uc/config`;\nexport const WEBEX_API_CONFIG_PROD_URL = `${WEBEX_API_PROD}/v1/uc/config`;\nexport const WEBEX_API_CONFIG_FEDRAMP_URL = `${WEBEX_API_FEDRAMP}/v1/uc/config`;\nexport const METHOD_START_MESSAGE = 'invoking';\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import log from '../Logger';
2
2
  import SDKConnector from '../SDKConnector';
3
3
  import { serviceErrorCodeHandler, uploadLogs } from '../common/Utils';
4
- import { FAILURE_MESSAGE, METHOD_START_MESSAGE, STATUS_CODE, SUCCESS_MESSAGE, UCM_CONNECTOR_FILE, VOICEMAIL, WEBEX_API_CONFIG_INT_URL, WEBEX_API_CONFIG_PROD_URL, } from '../common/constants';
4
+ import { FAILURE_MESSAGE, METHOD_START_MESSAGE, STATUS_CODE, SUCCESS_MESSAGE, UCM_CONNECTOR_FILE, VOICEMAIL, WEBEX_API_CONFIG_INT_URL, WEBEX_API_CONFIG_PROD_URL, WEBEX_API_CONFIG_FEDRAMP_URL, } from '../common/constants';
5
5
  import { HTTP_METHODS } from '../common/types';
6
6
  import { CF_ENDPOINT, METHODS, ORG_ENDPOINT, PEOPLE_ENDPOINT } from './constants';
7
7
  export class UcmBackendConnector {
@@ -92,15 +92,22 @@ export class UcmBackendConnector {
92
92
  method: METHODS.GET_CALL_FORWARD_ALWAYS_SETTING,
93
93
  };
94
94
  log.info(directoryNumber ? `${METHOD_START_MESSAGE} with ${directoryNumber}` : METHOD_START_MESSAGE, loggerContext);
95
- const webexApisUrl = this.useProdWebexApis
96
- ? WEBEX_API_CONFIG_PROD_URL
97
- : WEBEX_API_CONFIG_INT_URL;
95
+ const headers = await this.getAuthHeaders();
96
+ let webexApisUrl;
97
+ if (this.webex?.config?.fedramp) {
98
+ webexApisUrl = WEBEX_API_CONFIG_FEDRAMP_URL;
99
+ }
100
+ else {
101
+ webexApisUrl = this.useProdWebexApis ? WEBEX_API_CONFIG_PROD_URL : WEBEX_API_CONFIG_INT_URL;
102
+ }
98
103
  try {
99
104
  if (directoryNumber) {
100
- const resp = await this.webex.request({
105
+ const requestOptions = {
101
106
  uri: `${webexApisUrl}/${PEOPLE_ENDPOINT}/${this.userId}/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${this.orgId}`,
102
107
  method: HTTP_METHODS.GET,
103
- });
108
+ headers,
109
+ };
110
+ const resp = await this.webex.request(requestOptions);
104
111
  log.log(`Response code: ${resp.statusCode}`, loggerContext);
105
112
  const { callForwarding } = resp.body;
106
113
  const cfa = callForwarding.always.find((item) => item.dn.endsWith(directoryNumber) || item.e164Number.endsWith(directoryNumber));
@@ -144,4 +151,11 @@ export class UcmBackendConnector {
144
151
  return errorStatus;
145
152
  }
146
153
  }
154
+ async getAuthHeaders() {
155
+ const headers = {};
156
+ if (this.webex?.config?.fedramp) {
157
+ headers.authorization = await this.webex.credentials.getUserToken();
158
+ }
159
+ return headers;
160
+ }
147
161
  }
@@ -47,6 +47,8 @@ export const SCIM_WEBEXIDENTITY_USER = 'urn:scim:schemas:extension:cisco:webexid
47
47
  export const SCIM_ENTERPRISE_USER = 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User';
48
48
  export const WEBEX_API_PROD = 'https://webexapis.com';
49
49
  export const WEBEX_API_BTS = 'https://integration.webexapis.com';
50
+ export const WEBEX_API_FEDRAMP = 'https://api-usgov.webex.com';
50
51
  export const WEBEX_API_CONFIG_INT_URL = `${WEBEX_API_BTS}/v1/uc/config`;
51
52
  export const WEBEX_API_CONFIG_PROD_URL = `${WEBEX_API_PROD}/v1/uc/config`;
53
+ export const WEBEX_API_CONFIG_FEDRAMP_URL = `${WEBEX_API_FEDRAMP}/v1/uc/config`;
52
54
  export const METHOD_START_MESSAGE = 'invoking';
@@ -16,5 +16,6 @@ export declare class UcmBackendConnector implements IUcmBackendConnector {
16
16
  setVoicemailSetting(): Promise<CallSettingResponse>;
17
17
  private getMethodNotSupportedResponse;
18
18
  getCallForwardAlwaysSetting(directoryNumber?: string): Promise<CallSettingResponse>;
19
+ private getAuthHeaders;
19
20
  }
20
21
  //# sourceMappingURL=UcmBackendConnector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UcmBackendConnector.d.ts","sourceRoot":"","sources":["../../../src/CallSettings/UcmBackendConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAc9D,OAAO,EAGL,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EAChB,MAAM,SAAS,CAAC;AAMjB,qBAAa,mBAAoB,YAAW,oBAAoB;IAC9D,OAAO,CAAC,YAAY,CAAgB;IAEpC,OAAO,CAAC,KAAK,CAAW;IAExB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,KAAK,CAAS;IAEtB,OAAO,CAAC,gBAAgB,CAAU;gBAKtB,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,UAAO;IAiBtE,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcrD,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IActD,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IActD,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcrD,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcrD,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcnD,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAc1D,OAAO,CAAC,6BAA6B;IAqBxB,2BAA2B,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;CA8EjG"}
1
+ {"version":3,"file":"UcmBackendConnector.d.ts","sourceRoot":"","sources":["../../../src/CallSettings/UcmBackendConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAe9D,OAAO,EAGL,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EAChB,MAAM,SAAS,CAAC;AAMjB,qBAAa,mBAAoB,YAAW,oBAAoB;IAC9D,OAAO,CAAC,YAAY,CAAgB;IAEpC,OAAO,CAAC,KAAK,CAAW;IAExB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,KAAK,CAAS;IAEtB,OAAO,CAAC,gBAAgB,CAAU;gBAKtB,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,UAAO;IAmBtE,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcrD,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IActD,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IActD,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcrD,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcrD,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcnD,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAc1D,OAAO,CAAC,6BAA6B;IAqBxB,2BAA2B,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAwFlF,cAAc;CAY7B"}
@@ -47,7 +47,9 @@ export declare const SCIM_WEBEXIDENTITY_USER = "urn:scim:schemas:extension:cisco
47
47
  export declare const SCIM_ENTERPRISE_USER = "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User";
48
48
  export declare const WEBEX_API_PROD = "https://webexapis.com";
49
49
  export declare const WEBEX_API_BTS = "https://integration.webexapis.com";
50
+ export declare const WEBEX_API_FEDRAMP = "https://api-usgov.webex.com";
50
51
  export declare const WEBEX_API_CONFIG_INT_URL: string;
51
52
  export declare const WEBEX_API_CONFIG_PROD_URL: string;
53
+ export declare const WEBEX_API_CONFIG_FEDRAMP_URL: string;
52
54
  export declare const METHOD_START_MESSAGE = "invoking";
53
55
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/common/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,eAAe,YAAY,CAAC;AACzC,eAAO,MAAM,0BAA0B,aAAa,CAAC;AACrD,eAAO,MAAM,KAAK,UAAU,CAAC;AAC7B,eAAO,MAAM,GAAG,QAAQ,CAAC;AACzB,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAC5C,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAClD,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,eAAe,YAAY,CAAC;AACzC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,IAAI,SAAS,CAAC;AAC3B,eAAO,MAAM,KAAK,UAAU,CAAC;AAC7B,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,IAAI,SAAS,CAAC;AAC3B,eAAO,MAAM,KAAK,UAAU,CAAC;AAC7B,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAC5C,eAAO,MAAM,MAAM,YAAY,CAAC;AAChC,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AACxD,eAAO,MAAM,iCAAiC,mCAAmC,CAAC;AAClF,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAC5C,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,2BAA2B,yBAAyB,CAAC;AAClE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AACvE,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAC9C,eAAO,MAAM,kCAAkC,UAAU,CAAC;AAC1D,eAAO,MAAM,UAAU,4BAA4B,CAAC;AACpD,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AACrE,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AACxD,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,uBAAuB,4DAA4D,CAAC;AACjG,eAAO,MAAM,oBAAoB,+DAA+D,CAAC;AACjG,eAAO,MAAM,cAAc,0BAA0B,CAAC;AACtD,eAAO,MAAM,aAAa,sCAAsC,CAAC;AACjE,eAAO,MAAM,wBAAwB,QAAkC,CAAC;AACxE,eAAO,MAAM,yBAAyB,QAAmC,CAAC;AAC1E,eAAO,MAAM,oBAAoB,aAAa,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/common/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,eAAe,YAAY,CAAC;AACzC,eAAO,MAAM,0BAA0B,aAAa,CAAC;AACrD,eAAO,MAAM,KAAK,UAAU,CAAC;AAC7B,eAAO,MAAM,GAAG,QAAQ,CAAC;AACzB,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAC5C,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAClD,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,eAAe,YAAY,CAAC;AACzC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,IAAI,SAAS,CAAC;AAC3B,eAAO,MAAM,KAAK,UAAU,CAAC;AAC7B,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,IAAI,SAAS,CAAC;AAC3B,eAAO,MAAM,KAAK,UAAU,CAAC;AAC7B,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAC5C,eAAO,MAAM,MAAM,YAAY,CAAC;AAChC,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AACxD,eAAO,MAAM,iCAAiC,mCAAmC,CAAC;AAClF,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAC5C,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,2BAA2B,yBAAyB,CAAC;AAClE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AACvE,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAC9C,eAAO,MAAM,kCAAkC,UAAU,CAAC;AAC1D,eAAO,MAAM,UAAU,4BAA4B,CAAC;AACpD,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AACrE,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AACxD,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,uBAAuB,4DAA4D,CAAC;AACjG,eAAO,MAAM,oBAAoB,+DAA+D,CAAC;AACjG,eAAO,MAAM,cAAc,0BAA0B,CAAC;AACtD,eAAO,MAAM,aAAa,sCAAsC,CAAC;AACjE,eAAO,MAAM,iBAAiB,gCAAgC,CAAC;AAC/D,eAAO,MAAM,wBAAwB,QAAkC,CAAC;AACxE,eAAO,MAAM,yBAAyB,QAAmC,CAAC;AAC1E,eAAO,MAAM,4BAA4B,QAAsC,CAAC;AAChF,eAAO,MAAM,oBAAoB,aAAa,CAAC"}
package/package.json CHANGED
@@ -132,5 +132,5 @@
132
132
  "staticpath": "docs",
133
133
  "noprompt": true
134
134
  },
135
- "version": "3.10.0-next.14"
135
+ "version": "3.10.0-next.15"
136
136
  }