@webex/internal-plugin-metrics 3.10.0-next.3 → 3.10.0-next.4

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 (34) hide show
  1. package/dist/batcher.js.map +1 -1
  2. package/dist/behavioral-metrics.js +6 -8
  3. package/dist/behavioral-metrics.js.map +1 -1
  4. package/dist/business-metrics.js +6 -8
  5. package/dist/business-metrics.js.map +1 -1
  6. package/dist/call-diagnostic/call-diagnostic-metrics-batcher.js.map +1 -1
  7. package/dist/call-diagnostic/call-diagnostic-metrics-latencies.js +10 -13
  8. package/dist/call-diagnostic/call-diagnostic-metrics-latencies.js.map +1 -1
  9. package/dist/call-diagnostic/call-diagnostic-metrics.js +44 -48
  10. package/dist/call-diagnostic/call-diagnostic-metrics.js.map +1 -1
  11. package/dist/call-diagnostic/call-diagnostic-metrics.util.js +2 -2
  12. package/dist/call-diagnostic/call-diagnostic-metrics.util.js.map +1 -1
  13. package/dist/call-diagnostic/config.js.map +1 -1
  14. package/dist/client-metrics-batcher.js.map +1 -1
  15. package/dist/client-metrics-prelogin-batcher.js.map +1 -1
  16. package/dist/config.js.map +1 -1
  17. package/dist/generic-metrics.js +11 -14
  18. package/dist/generic-metrics.js.map +1 -1
  19. package/dist/index.js +1 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/metrics.js +1 -2
  22. package/dist/metrics.js.map +1 -1
  23. package/dist/metrics.types.js.map +1 -1
  24. package/dist/new-metrics.js +24 -27
  25. package/dist/new-metrics.js.map +1 -1
  26. package/dist/operational-metrics.js +6 -8
  27. package/dist/operational-metrics.js.map +1 -1
  28. package/dist/prelogin-metrics-batcher.js.map +1 -1
  29. package/dist/rtcMetrics/constants.js.map +1 -1
  30. package/dist/rtcMetrics/index.js +2 -4
  31. package/dist/rtcMetrics/index.js.map +1 -1
  32. package/dist/types/call-diagnostic/call-diagnostic-metrics.d.ts +3 -1
  33. package/dist/utils.js.map +1 -1
  34. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"names":["_ipAnonymize","_interopRequireDefault","require","_util","_common","_webexCore","_lodash","_config","_BrowserDetection","BrowserDetection","getOSName","getOSVersion","getBrowserName","getBrowserVersion","anonymizeIPAddress","exports","localIp","anonymize","userAgentToString","_ref","clientName","webexVersion","userAgentOption","browserInfo","clientInfo","util","format","concat","indexOf","toLowerCase","split","osInfo","process","env","NODE_ENV","clearEmptyKeysRecursively","obj","_keys","default","length","forEach","key","_typeof2","_isArray","isEmpty","_toConsumableArray2","filter","x","isLocusServiceErrorCode","errorCode","code","charAt","isMeetingInfoServiceError","rawError","_rawError$body","_rawError$body$data","_rawError$body2","_rawError$body2$url","body","data","meetingInfo","url","includes","WBX_APP_API_URL","isNetworkError","WebexHttpError","NetworkOrCORSError","isUnauthorizedError","Unauthorized","isSdpOfferCreationError","name","ERROR_DESCRIPTIONS","SDP_OFFER_CREATION_ERROR","isBrowserMediaErrorName","errorName","BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP","getBuildType","webex","webClientDomain","_webex$internal$metri","_webex$internal$metri2","markAsTestEvent","arguments","undefined","internal","metrics","config","caBuildType","prepareDiagnosticMetricItem","item","_item$eventPayload","_item$eventPayload$ev","_item$eventPayload$ev2","_item$eventPayload2","_item$eventPayload2$e","_item$eventPayload2$e2","_item$eventPayload3","_item$eventPayload3$e","buildType","eventPayload","event","eventData","upgradeChannel","devicemanager","pairedDevice","getPairedDevice","_pairedDevice$deviceI","_pairedDevice$devices","devicePayload","deviceId","deviceInfo","id","devicePairingType","getPairedMethod","deviceURL","isPersonalDevice","mode","productName","devices","pairingState","origin","networkType","eventName","joinTimes","audioSetupDelay","videoSetupDelay","cdl","newMetrics","callDiagnosticLatencies","downloadTime","getDownloadTimeJMT","pageJmt","getPageJMT","otherAppApiReqResp","getOtherAppApiReqResp","exchangeCITokenJMT","getExchangeCITokenJMT","meetingInfoReqResp","getMeetingInfoReqResp","clickToInterstitial","getClickToInterstitial","refreshCaptchaServiceReqResp","getRefreshCaptchaReqResp","downloadIntelligenceModelsReqResp","getDownloadIntelligenceModelsReqResp","clickToInterstitialWithUserDelay","getClickToInterstitialWithUserDelay","showInterstitialTime","getShowInterstitialTime","registerWDMDeviceJMT","getRegisterWDMDeviceJMT","getU2CTime","getReachabilityClustersReqResp","callInitJoinReq","getCallInitJoinReq","joinReqResp","getJoinReqResp","interstitialToJoinOK","getInterstitialToJoinOK","totalJmt","getTotalJMT","clientJmt","getClientJMT","totalJMTWithUserDelay","getTotalJMTWithUserDelay","ICESetupTime","getICESetupTime","audioICESetupTime","getAudioICESetupTime","videoICESetupTime","getVideoICESetupTime","shareICESetupTime","getShareICESetupTime","localSDPGenRemoteSDPRecv","getLocalSDPGenRemoteSDPRecv","joinRespRxStart","getAudioJoinRespRxStart","getVideoJoinRespRxStart","totalMediaJMT","getTotalMediaJMT","interstitialToMediaOKJMT","getInterstitialToMediaOKJMT","callInitMediaEngineReady","getCallInitMediaEngineReady","stayLobbyTime","getStayLobbyTime","totalMediaJMTWithUserDelay","getTotalMediaJMTWithUserDelay","joinRespTxStart","getAudioJoinRespTxStart","getVideoJoinRespTxStart","merge","_assign","logger","log","_stringify","latencies","Object","fromEntries","latencyTimestamps","setMetricTimings","options","json","_body$metrics","JSON","parse","now","Date","toISOString","metric","originTime","triggered","sent","extractVersionMetadata","version","_version$split","_version$split2","_slicedToArray2","majorVersion","minorVersion","_parseInt2","generateClientErrorCodeForIceFailure","_ref2","signalingState","iceConnected","turnServerUsed","unreachable","ICE_FAILURE_CLIENT_CODE","MISSING_ROAP_ANSWER_CLIENT_CODE","DTLS_HANDSHAKE_FAILED_CLIENT_CODE","ICE_AND_REACHABILITY_FAILED_CLIENT_CODE","ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE","ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE"],"sources":["call-diagnostic-metrics.util.ts"],"sourcesContent":["/* eslint-disable valid-jsdoc */\nimport anonymize from 'ip-anonymize';\nimport util from 'util';\n\nimport {BrowserDetection} from '@webex/common';\nimport {WebexHttpError} from '@webex/webex-core';\nimport {isEmpty, merge} from 'lodash';\nimport {\n ClientEvent,\n Event,\n MediaQualityEventAudioSetupDelayPayload,\n MediaQualityEventVideoSetupDelayPayload,\n MetricEventNames,\n} from '../metrics.types';\nimport {\n BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP,\n DTLS_HANDSHAKE_FAILED_CLIENT_CODE,\n ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE,\n ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE,\n ICE_FAILURE_CLIENT_CODE,\n MISSING_ROAP_ANSWER_CLIENT_CODE,\n WBX_APP_API_URL,\n ERROR_DESCRIPTIONS,\n ICE_AND_REACHABILITY_FAILED_CLIENT_CODE,\n} from './config';\n\nconst {getOSName, getOSVersion, getBrowserName, getBrowserVersion} = BrowserDetection();\n\nexport const anonymizeIPAddress = (localIp) => anonymize(localIp, 28, 96);\n\n/**\n * Returns a formated string of the user agent.\n *\n * @returns {string} formatted user agent information\n */\nexport const userAgentToString = ({clientName, webexVersion}) => {\n let userAgentOption;\n let browserInfo;\n const clientInfo = util.format('client=%s', `${clientName}`);\n\n if (\n ['chrome', 'firefox', 'msie', 'msedge', 'safari'].indexOf(getBrowserName().toLowerCase()) !== -1\n ) {\n browserInfo = util.format(\n 'browser=%s',\n `${getBrowserName().toLowerCase()}/${getBrowserVersion().split('.')[0]}`\n );\n }\n const osInfo = util.format('os=%s', `${getOSName()}/${getOSVersion().split('.')[0]}`);\n\n if (browserInfo) {\n userAgentOption = `(${browserInfo}`;\n }\n if (osInfo) {\n userAgentOption = userAgentOption\n ? `${userAgentOption}; ${clientInfo}; ${osInfo}`\n : `${clientInfo}; (${osInfo}`;\n }\n if (userAgentOption) {\n userAgentOption += ')';\n\n return util.format(\n 'webex-js-sdk/%s %s',\n `${process.env.NODE_ENV}-${webexVersion}`,\n userAgentOption\n );\n }\n\n return util.format('webex-js-sdk/%s', `${process.env.NODE_ENV}-${webexVersion}`);\n};\n\n/**\n * Iterates object recursively and removes any\n * property that returns isEmpty for it's associated value\n * isEmpty = implementation from Lodash.\n *\n * It modifies the object in place (mutable)\n *\n * @param obj - input\n * @returns\n */\nexport const clearEmptyKeysRecursively = (obj: any) => {\n // Check if the object is empty\n if (Object.keys(obj).length === 0) {\n return;\n }\n\n Object.keys(obj).forEach((key) => {\n if (\n (typeof obj[key] === 'object' || typeof obj[key] === 'string' || Array.isArray(obj[key])) &&\n isEmpty(obj[key])\n ) {\n delete obj[key];\n }\n if (Array.isArray(obj[key])) {\n obj[key] = [...obj[key].filter((x) => !!x)];\n }\n if (typeof obj[key] === 'object') {\n clearEmptyKeysRecursively(obj[key]);\n }\n });\n};\n\n/**\n * Locus error codes start with 2. The next three digits are the\n * HTTP status code related to the error code (like 400, 403, 502, etc.)\n * The remaining three digits are just an increasing integer.\n * If it is 7 digits and starts with a 2, it is locus.\n *\n * @param errorCode\n * @returns {boolean}\n */\nexport const isLocusServiceErrorCode = (errorCode: string | number) => {\n const code = `${errorCode}`;\n\n if (code.length === 7 && code.charAt(0) === '2') {\n return true;\n }\n\n return false;\n};\n\n/**\n * MeetingInfo errors sometimes has body.data.meetingInfo object\n * MeetingInfo errors come with a wbxappapi url\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isMeetingInfoServiceError = (rawError: any) => {\n if (rawError.body?.data?.meetingInfo || rawError.body?.url?.includes(WBX_APP_API_URL)) {\n return true;\n }\n\n return false;\n};\n\n/**\n * Returns true if the raw error is a network related error\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isNetworkError = (rawError: any) => {\n if (rawError instanceof WebexHttpError.NetworkOrCORSError) {\n return true;\n }\n\n return false;\n};\n\n/**\n * Returns true if the error is an unauthorized error\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isUnauthorizedError = (rawError: any) => {\n if (rawError instanceof WebexHttpError.Unauthorized) {\n return true;\n }\n\n return false;\n};\n\n/**\n * Returns true if the error is an SdpOfferCreation error\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isSdpOfferCreationError = (rawError: any) => {\n // would LIKE to do rawError instanceof Errors.SdpOfferCreationError\n // but including internal-media-core in plugin-metrics breaks meetings and metrics unit tests\n if (rawError.name === ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR) {\n return true;\n }\n\n return false;\n};\n\n/**\n * MDN Media Devices getUserMedia() method returns a name if it errs\n * Documentation can be found here: https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia\n *\n * @param errorCode\n * @returns\n */\nexport const isBrowserMediaErrorName = (errorName: any) => {\n if (BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP[errorName]) {\n return true;\n }\n\n return false;\n};\n\n/**\n * @param {Object} webex sdk instance\n * @param webClientDomain\n * @returns\n */\nexport const getBuildType = (\n webex,\n webClientDomain,\n markAsTestEvent = false\n): Event['origin']['buildType'] => {\n // used temporary to test pre join in production without creating noise data, SPARK-468456\n if (markAsTestEvent) {\n return 'test';\n }\n\n if (webex.internal.metrics?.config?.caBuildType) {\n return webex.internal.metrics.config.caBuildType;\n }\n\n if (\n webClientDomain?.includes('localhost') ||\n webClientDomain?.includes('127.0.0.1') ||\n process.env.NODE_ENV !== 'production'\n ) {\n return 'test';\n }\n\n return 'prod';\n};\n\n/**\n * Prepare metric item for submission.\n * @param {Object} webex sdk instance\n * @param {Object} item\n * @returns {Object} prepared item\n */\nexport const prepareDiagnosticMetricItem = (webex: any, item: any) => {\n const buildType = getBuildType(\n webex,\n item.eventPayload?.event?.eventData?.webClientDomain,\n item.eventPayload?.event?.eventData?.markAsTestEvent\n );\n\n // Set upgradeChannel to 'gold' if buildType is 'prod', otherwise to the buildType value\n const upgradeChannel = buildType === 'prod' ? 'gold' : buildType;\n if (webex.devicemanager) {\n const pairedDevice = webex.devicemanager.getPairedDevice();\n if (pairedDevice) {\n const devicePayload = {\n deviceId: pairedDevice.deviceInfo?.id,\n devicePairingType: webex.devicemanager.getPairedMethod(),\n deviceURL: pairedDevice.url,\n isPersonalDevice: pairedDevice.mode === 'personal',\n productName: pairedDevice.devices[0]?.productName,\n };\n item.eventPayload.event.pairingState = 'paired';\n item.eventPayload.event.pairedDevice = devicePayload;\n }\n }\n\n const origin: Partial<Event['origin']> = {\n buildType,\n networkType: 'unknown',\n upgradeChannel,\n };\n\n // check event names and append latencies?\n const eventName = item.eventPayload?.event?.name as MetricEventNames;\n const joinTimes: ClientEvent['payload']['joinTimes'] = {};\n const audioSetupDelay: MediaQualityEventAudioSetupDelayPayload = {};\n const videoSetupDelay: MediaQualityEventVideoSetupDelayPayload = {};\n\n const cdl = webex.internal.newMetrics.callDiagnosticLatencies;\n\n switch (eventName) {\n case 'client.webexapp.launched':\n joinTimes.downloadTime = cdl.getDownloadTimeJMT();\n joinTimes.pageJmt = cdl.getPageJMT();\n break;\n case 'client.login.end':\n joinTimes.otherAppApiReqResp = cdl.getOtherAppApiReqResp();\n joinTimes.exchangeCITokenJMT = cdl.getExchangeCITokenJMT();\n break;\n case 'client.interstitial-window.launched':\n joinTimes.meetingInfoReqResp = cdl.getMeetingInfoReqResp();\n joinTimes.clickToInterstitial = cdl.getClickToInterstitial();\n joinTimes.refreshCaptchaServiceReqResp = cdl.getRefreshCaptchaReqResp();\n joinTimes.downloadIntelligenceModelsReqResp = cdl.getDownloadIntelligenceModelsReqResp();\n joinTimes.clickToInterstitialWithUserDelay = cdl.getClickToInterstitialWithUserDelay();\n break;\n\n case 'client.call.initiated':\n joinTimes.meetingInfoReqResp = cdl.getMeetingInfoReqResp();\n joinTimes.showInterstitialTime = cdl.getShowInterstitialTime();\n joinTimes.registerWDMDeviceJMT = cdl.getRegisterWDMDeviceJMT();\n joinTimes.getU2CTime = cdl.getU2CTime();\n joinTimes.getReachabilityClustersReqResp = cdl.getReachabilityClustersReqResp();\n break;\n\n case 'client.locus.join.response':\n joinTimes.meetingInfoReqResp = cdl.getMeetingInfoReqResp();\n joinTimes.callInitJoinReq = cdl.getCallInitJoinReq();\n joinTimes.joinReqResp = cdl.getJoinReqResp();\n joinTimes.pageJmt = cdl.getPageJMT();\n joinTimes.clickToInterstitial = cdl.getClickToInterstitial();\n joinTimes.interstitialToJoinOK = cdl.getInterstitialToJoinOK();\n joinTimes.totalJmt = cdl.getTotalJMT();\n joinTimes.clientJmt = cdl.getClientJMT();\n joinTimes.downloadTime = cdl.getDownloadTimeJMT();\n joinTimes.clickToInterstitialWithUserDelay = cdl.getClickToInterstitialWithUserDelay();\n joinTimes.totalJMTWithUserDelay = cdl.getTotalJMTWithUserDelay();\n break;\n\n case 'client.ice.end':\n joinTimes.ICESetupTime = cdl.getICESetupTime();\n joinTimes.audioICESetupTime = cdl.getAudioICESetupTime();\n joinTimes.videoICESetupTime = cdl.getVideoICESetupTime();\n joinTimes.shareICESetupTime = cdl.getShareICESetupTime();\n break;\n\n case 'client.media.rx.start':\n joinTimes.localSDPGenRemoteSDPRecv = cdl.getLocalSDPGenRemoteSDPRecv();\n audioSetupDelay.joinRespRxStart = cdl.getAudioJoinRespRxStart();\n videoSetupDelay.joinRespRxStart = cdl.getVideoJoinRespRxStart();\n break;\n\n case 'client.media-engine.ready':\n joinTimes.totalMediaJMT = cdl.getTotalMediaJMT();\n joinTimes.interstitialToMediaOKJMT = cdl.getInterstitialToMediaOKJMT();\n joinTimes.callInitMediaEngineReady = cdl.getCallInitMediaEngineReady();\n joinTimes.stayLobbyTime = cdl.getStayLobbyTime();\n joinTimes.totalMediaJMTWithUserDelay = cdl.getTotalMediaJMTWithUserDelay();\n joinTimes.totalJMTWithUserDelay = cdl.getTotalJMTWithUserDelay();\n break;\n\n case 'client.media.tx.start':\n audioSetupDelay.joinRespTxStart = cdl.getAudioJoinRespTxStart();\n videoSetupDelay.joinRespTxStart = cdl.getVideoJoinRespTxStart();\n }\n\n if (!isEmpty(joinTimes)) {\n item.eventPayload.event = merge(item.eventPayload.event, {joinTimes});\n }\n\n if (!isEmpty(audioSetupDelay)) {\n item.eventPayload.event = merge(item.eventPayload.event, {audioSetupDelay});\n }\n\n if (!isEmpty(videoSetupDelay)) {\n item.eventPayload.event = merge(item.eventPayload.event, {videoSetupDelay});\n }\n\n item.eventPayload.origin = Object.assign(origin, item.eventPayload.origin);\n\n webex.logger.log(\n `CallDiagnosticLatencies,prepareDiagnosticMetricItem: ${JSON.stringify({\n latencies: Object.fromEntries(cdl.latencyTimestamps),\n event: item,\n })}`\n );\n\n return item;\n};\n\n/**\n * Sets the originTime value(s) before the request/fetch.\n * This function is only useful if you are about to submit a metrics\n * request using pre-built fetch options;\n *\n * @param {any} options\n * @returns {any} the updated options object\n */\nexport const setMetricTimings = (options) => {\n if (options.body && options.json) {\n const body = JSON.parse(options.body);\n\n const now = new Date().toISOString();\n body.metrics?.forEach((metric) => {\n if (metric.eventPayload) {\n // The event will effectively be triggered and sent at the same time.\n // The existing triggered time is from when the options were built.\n metric.eventPayload.originTime = {\n triggered: now,\n sent: now,\n };\n }\n });\n options.body = JSON.stringify(body);\n }\n\n return options;\n};\n\nexport const extractVersionMetadata = (version: string) => {\n // extract major and minor version\n const [majorVersion, minorVersion] = version.split('.');\n\n return {\n majorVersion: parseInt(majorVersion, 10),\n minorVersion: parseInt(minorVersion, 10),\n };\n};\n\n/**\n * Generates client error codes for specific ice failures\n * that happen when trying to add media in a meeting.\n */\nexport const generateClientErrorCodeForIceFailure = ({\n signalingState,\n iceConnected,\n turnServerUsed,\n unreachable,\n}: {\n signalingState: RTCPeerConnection['signalingState'];\n iceConnected: boolean;\n turnServerUsed: boolean;\n unreachable: boolean;\n}) => {\n let errorCode = ICE_FAILURE_CLIENT_CODE; // default;\n\n if (signalingState === 'have-local-offer') {\n errorCode = MISSING_ROAP_ANSWER_CLIENT_CODE;\n }\n\n if (signalingState === 'stable' && iceConnected) {\n errorCode = DTLS_HANDSHAKE_FAILED_CLIENT_CODE;\n }\n\n if (signalingState !== 'have-local-offer' && !iceConnected) {\n if (turnServerUsed) {\n if (unreachable) {\n errorCode = ICE_AND_REACHABILITY_FAILED_CLIENT_CODE;\n } else {\n errorCode = ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE;\n }\n } else {\n errorCode = ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE;\n }\n }\n\n return errorCode;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_ipAnonymize","_interopRequireDefault","require","_util","_common","_webexCore","_lodash","_config","_BrowserDetection","BrowserDetection","getOSName","getOSVersion","getBrowserName","getBrowserVersion","anonymizeIPAddress","exports","localIp","anonymize","userAgentToString","_ref","clientName","webexVersion","userAgentOption","browserInfo","clientInfo","util","format","concat","indexOf","toLowerCase","split","osInfo","process","env","NODE_ENV","clearEmptyKeysRecursively","obj","_keys","default","length","forEach","key","_typeof2","_isArray","isEmpty","_toConsumableArray2","filter","x","isLocusServiceErrorCode","errorCode","code","charAt","isMeetingInfoServiceError","rawError","_rawError$body","_rawError$body$data","_rawError$body2","_rawError$body2$url","body","data","meetingInfo","url","includes","WBX_APP_API_URL","isNetworkError","WebexHttpError","NetworkOrCORSError","isUnauthorizedError","Unauthorized","isSdpOfferCreationError","name","ERROR_DESCRIPTIONS","SDP_OFFER_CREATION_ERROR","isBrowserMediaErrorName","errorName","BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP","getBuildType","webex","webClientDomain","_webex$internal$metri","_webex$internal$metri2","markAsTestEvent","arguments","undefined","internal","metrics","config","caBuildType","prepareDiagnosticMetricItem","item","_item$eventPayload","_item$eventPayload$ev","_item$eventPayload$ev2","_item$eventPayload2","_item$eventPayload2$e","_item$eventPayload2$e2","_item$eventPayload3","_item$eventPayload3$e","buildType","eventPayload","event","eventData","upgradeChannel","devicemanager","pairedDevice","getPairedDevice","_pairedDevice$deviceI","_pairedDevice$devices","devicePayload","deviceId","deviceInfo","id","devicePairingType","getPairedMethod","deviceURL","isPersonalDevice","mode","productName","devices","pairingState","origin","networkType","eventName","joinTimes","audioSetupDelay","videoSetupDelay","cdl","newMetrics","callDiagnosticLatencies","downloadTime","getDownloadTimeJMT","pageJmt","getPageJMT","otherAppApiReqResp","getOtherAppApiReqResp","exchangeCITokenJMT","getExchangeCITokenJMT","meetingInfoReqResp","getMeetingInfoReqResp","clickToInterstitial","getClickToInterstitial","refreshCaptchaServiceReqResp","getRefreshCaptchaReqResp","downloadIntelligenceModelsReqResp","getDownloadIntelligenceModelsReqResp","clickToInterstitialWithUserDelay","getClickToInterstitialWithUserDelay","showInterstitialTime","getShowInterstitialTime","registerWDMDeviceJMT","getRegisterWDMDeviceJMT","getU2CTime","getReachabilityClustersReqResp","callInitJoinReq","getCallInitJoinReq","joinReqResp","getJoinReqResp","interstitialToJoinOK","getInterstitialToJoinOK","totalJmt","getTotalJMT","clientJmt","getClientJMT","totalJMTWithUserDelay","getTotalJMTWithUserDelay","ICESetupTime","getICESetupTime","audioICESetupTime","getAudioICESetupTime","videoICESetupTime","getVideoICESetupTime","shareICESetupTime","getShareICESetupTime","localSDPGenRemoteSDPRecv","getLocalSDPGenRemoteSDPRecv","joinRespRxStart","getAudioJoinRespRxStart","getVideoJoinRespRxStart","totalMediaJMT","getTotalMediaJMT","interstitialToMediaOKJMT","getInterstitialToMediaOKJMT","callInitMediaEngineReady","getCallInitMediaEngineReady","stayLobbyTime","getStayLobbyTime","totalMediaJMTWithUserDelay","getTotalMediaJMTWithUserDelay","joinRespTxStart","getAudioJoinRespTxStart","getVideoJoinRespTxStart","merge","_assign","logger","log","_stringify","latencies","Object","fromEntries","latencyTimestamps","setMetricTimings","options","json","_body$metrics","JSON","parse","now","Date","toISOString","metric","originTime","triggered","sent","extractVersionMetadata","version","_version$split","_version$split2","_slicedToArray2","majorVersion","minorVersion","_parseInt2","generateClientErrorCodeForIceFailure","_ref2","signalingState","iceConnected","turnServerUsed","unreachable","ICE_FAILURE_CLIENT_CODE","MISSING_ROAP_ANSWER_CLIENT_CODE","DTLS_HANDSHAKE_FAILED_CLIENT_CODE","ICE_AND_REACHABILITY_FAILED_CLIENT_CODE","ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE","ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE"],"sources":["call-diagnostic-metrics.util.ts"],"sourcesContent":["/* eslint-disable valid-jsdoc */\nimport anonymize from 'ip-anonymize';\nimport util from 'util';\n\nimport {BrowserDetection} from '@webex/common';\nimport {WebexHttpError} from '@webex/webex-core';\nimport {isEmpty, merge} from 'lodash';\nimport {\n ClientEvent,\n Event,\n MediaQualityEventAudioSetupDelayPayload,\n MediaQualityEventVideoSetupDelayPayload,\n MetricEventNames,\n} from '../metrics.types';\nimport {\n BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP,\n DTLS_HANDSHAKE_FAILED_CLIENT_CODE,\n ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE,\n ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE,\n ICE_FAILURE_CLIENT_CODE,\n MISSING_ROAP_ANSWER_CLIENT_CODE,\n WBX_APP_API_URL,\n ERROR_DESCRIPTIONS,\n ICE_AND_REACHABILITY_FAILED_CLIENT_CODE,\n} from './config';\n\nconst {getOSName, getOSVersion, getBrowserName, getBrowserVersion} = BrowserDetection();\n\nexport const anonymizeIPAddress = (localIp) => anonymize(localIp, 28, 96);\n\n/**\n * Returns a formated string of the user agent.\n *\n * @returns {string} formatted user agent information\n */\nexport const userAgentToString = ({clientName, webexVersion}) => {\n let userAgentOption;\n let browserInfo;\n const clientInfo = util.format('client=%s', `${clientName}`);\n\n if (\n ['chrome', 'firefox', 'msie', 'msedge', 'safari'].indexOf(getBrowserName().toLowerCase()) !== -1\n ) {\n browserInfo = util.format(\n 'browser=%s',\n `${getBrowserName().toLowerCase()}/${getBrowserVersion().split('.')[0]}`\n );\n }\n const osInfo = util.format('os=%s', `${getOSName()}/${getOSVersion().split('.')[0]}`);\n\n if (browserInfo) {\n userAgentOption = `(${browserInfo}`;\n }\n if (osInfo) {\n userAgentOption = userAgentOption\n ? `${userAgentOption}; ${clientInfo}; ${osInfo}`\n : `${clientInfo}; (${osInfo}`;\n }\n if (userAgentOption) {\n userAgentOption += ')';\n\n return util.format(\n 'webex-js-sdk/%s %s',\n `${process.env.NODE_ENV}-${webexVersion}`,\n userAgentOption\n );\n }\n\n return util.format('webex-js-sdk/%s', `${process.env.NODE_ENV}-${webexVersion}`);\n};\n\n/**\n * Iterates object recursively and removes any\n * property that returns isEmpty for it's associated value\n * isEmpty = implementation from Lodash.\n *\n * It modifies the object in place (mutable)\n *\n * @param obj - input\n * @returns\n */\nexport const clearEmptyKeysRecursively = (obj: any) => {\n // Check if the object is empty\n if (Object.keys(obj).length === 0) {\n return;\n }\n\n Object.keys(obj).forEach((key) => {\n if (\n (typeof obj[key] === 'object' || typeof obj[key] === 'string' || Array.isArray(obj[key])) &&\n isEmpty(obj[key])\n ) {\n delete obj[key];\n }\n if (Array.isArray(obj[key])) {\n obj[key] = [...obj[key].filter((x) => !!x)];\n }\n if (typeof obj[key] === 'object') {\n clearEmptyKeysRecursively(obj[key]);\n }\n });\n};\n\n/**\n * Locus error codes start with 2. The next three digits are the\n * HTTP status code related to the error code (like 400, 403, 502, etc.)\n * The remaining three digits are just an increasing integer.\n * If it is 7 digits and starts with a 2, it is locus.\n *\n * @param errorCode\n * @returns {boolean}\n */\nexport const isLocusServiceErrorCode = (errorCode: string | number) => {\n const code = `${errorCode}`;\n\n if (code.length === 7 && code.charAt(0) === '2') {\n return true;\n }\n\n return false;\n};\n\n/**\n * MeetingInfo errors sometimes has body.data.meetingInfo object\n * MeetingInfo errors come with a wbxappapi url\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isMeetingInfoServiceError = (rawError: any) => {\n if (rawError.body?.data?.meetingInfo || rawError.body?.url?.includes(WBX_APP_API_URL)) {\n return true;\n }\n\n return false;\n};\n\n/**\n * Returns true if the raw error is a network related error\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isNetworkError = (rawError: any) => {\n if (rawError instanceof WebexHttpError.NetworkOrCORSError) {\n return true;\n }\n\n return false;\n};\n\n/**\n * Returns true if the error is an unauthorized error\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isUnauthorizedError = (rawError: any) => {\n if (rawError instanceof WebexHttpError.Unauthorized) {\n return true;\n }\n\n return false;\n};\n\n/**\n * Returns true if the error is an SdpOfferCreation error\n *\n * @param {Object} rawError\n * @returns {boolean}\n */\nexport const isSdpOfferCreationError = (rawError: any) => {\n // would LIKE to do rawError instanceof Errors.SdpOfferCreationError\n // but including internal-media-core in plugin-metrics breaks meetings and metrics unit tests\n if (rawError.name === ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR) {\n return true;\n }\n\n return false;\n};\n\n/**\n * MDN Media Devices getUserMedia() method returns a name if it errs\n * Documentation can be found here: https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia\n *\n * @param errorCode\n * @returns\n */\nexport const isBrowserMediaErrorName = (errorName: any) => {\n if (BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP[errorName]) {\n return true;\n }\n\n return false;\n};\n\n/**\n * @param {Object} webex sdk instance\n * @param webClientDomain\n * @returns\n */\nexport const getBuildType = (\n webex,\n webClientDomain,\n markAsTestEvent = false\n): Event['origin']['buildType'] => {\n // used temporary to test pre join in production without creating noise data, SPARK-468456\n if (markAsTestEvent) {\n return 'test';\n }\n\n if (webex.internal.metrics?.config?.caBuildType) {\n return webex.internal.metrics.config.caBuildType;\n }\n\n if (\n webClientDomain?.includes('localhost') ||\n webClientDomain?.includes('127.0.0.1') ||\n process.env.NODE_ENV !== 'production'\n ) {\n return 'test';\n }\n\n return 'prod';\n};\n\n/**\n * Prepare metric item for submission.\n * @param {Object} webex sdk instance\n * @param {Object} item\n * @returns {Object} prepared item\n */\nexport const prepareDiagnosticMetricItem = (webex: any, item: any) => {\n const buildType = getBuildType(\n webex,\n item.eventPayload?.event?.eventData?.webClientDomain,\n item.eventPayload?.event?.eventData?.markAsTestEvent\n );\n\n // Set upgradeChannel to 'gold' if buildType is 'prod', otherwise to the buildType value\n const upgradeChannel = buildType === 'prod' ? 'gold' : buildType;\n if (webex.devicemanager) {\n const pairedDevice = webex.devicemanager.getPairedDevice();\n if (pairedDevice) {\n const devicePayload = {\n deviceId: pairedDevice.deviceInfo?.id,\n devicePairingType: webex.devicemanager.getPairedMethod(),\n deviceURL: pairedDevice.url,\n isPersonalDevice: pairedDevice.mode === 'personal',\n productName: pairedDevice.devices[0]?.productName,\n };\n item.eventPayload.event.pairingState = 'paired';\n item.eventPayload.event.pairedDevice = devicePayload;\n }\n }\n\n const origin: Partial<Event['origin']> = {\n buildType,\n networkType: 'unknown',\n upgradeChannel,\n };\n\n // check event names and append latencies?\n const eventName = item.eventPayload?.event?.name as MetricEventNames;\n const joinTimes: ClientEvent['payload']['joinTimes'] = {};\n const audioSetupDelay: MediaQualityEventAudioSetupDelayPayload = {};\n const videoSetupDelay: MediaQualityEventVideoSetupDelayPayload = {};\n\n const cdl = webex.internal.newMetrics.callDiagnosticLatencies;\n\n switch (eventName) {\n case 'client.webexapp.launched':\n joinTimes.downloadTime = cdl.getDownloadTimeJMT();\n joinTimes.pageJmt = cdl.getPageJMT();\n break;\n case 'client.login.end':\n joinTimes.otherAppApiReqResp = cdl.getOtherAppApiReqResp();\n joinTimes.exchangeCITokenJMT = cdl.getExchangeCITokenJMT();\n break;\n case 'client.interstitial-window.launched':\n joinTimes.meetingInfoReqResp = cdl.getMeetingInfoReqResp();\n joinTimes.clickToInterstitial = cdl.getClickToInterstitial();\n joinTimes.refreshCaptchaServiceReqResp = cdl.getRefreshCaptchaReqResp();\n joinTimes.downloadIntelligenceModelsReqResp = cdl.getDownloadIntelligenceModelsReqResp();\n joinTimes.clickToInterstitialWithUserDelay = cdl.getClickToInterstitialWithUserDelay();\n break;\n\n case 'client.call.initiated':\n joinTimes.meetingInfoReqResp = cdl.getMeetingInfoReqResp();\n joinTimes.showInterstitialTime = cdl.getShowInterstitialTime();\n joinTimes.registerWDMDeviceJMT = cdl.getRegisterWDMDeviceJMT();\n joinTimes.getU2CTime = cdl.getU2CTime();\n joinTimes.getReachabilityClustersReqResp = cdl.getReachabilityClustersReqResp();\n break;\n\n case 'client.locus.join.response':\n joinTimes.meetingInfoReqResp = cdl.getMeetingInfoReqResp();\n joinTimes.callInitJoinReq = cdl.getCallInitJoinReq();\n joinTimes.joinReqResp = cdl.getJoinReqResp();\n joinTimes.pageJmt = cdl.getPageJMT();\n joinTimes.clickToInterstitial = cdl.getClickToInterstitial();\n joinTimes.interstitialToJoinOK = cdl.getInterstitialToJoinOK();\n joinTimes.totalJmt = cdl.getTotalJMT();\n joinTimes.clientJmt = cdl.getClientJMT();\n joinTimes.downloadTime = cdl.getDownloadTimeJMT();\n joinTimes.clickToInterstitialWithUserDelay = cdl.getClickToInterstitialWithUserDelay();\n joinTimes.totalJMTWithUserDelay = cdl.getTotalJMTWithUserDelay();\n break;\n\n case 'client.ice.end':\n joinTimes.ICESetupTime = cdl.getICESetupTime();\n joinTimes.audioICESetupTime = cdl.getAudioICESetupTime();\n joinTimes.videoICESetupTime = cdl.getVideoICESetupTime();\n joinTimes.shareICESetupTime = cdl.getShareICESetupTime();\n break;\n\n case 'client.media.rx.start':\n joinTimes.localSDPGenRemoteSDPRecv = cdl.getLocalSDPGenRemoteSDPRecv();\n audioSetupDelay.joinRespRxStart = cdl.getAudioJoinRespRxStart();\n videoSetupDelay.joinRespRxStart = cdl.getVideoJoinRespRxStart();\n break;\n\n case 'client.media-engine.ready':\n joinTimes.totalMediaJMT = cdl.getTotalMediaJMT();\n joinTimes.interstitialToMediaOKJMT = cdl.getInterstitialToMediaOKJMT();\n joinTimes.callInitMediaEngineReady = cdl.getCallInitMediaEngineReady();\n joinTimes.stayLobbyTime = cdl.getStayLobbyTime();\n joinTimes.totalMediaJMTWithUserDelay = cdl.getTotalMediaJMTWithUserDelay();\n joinTimes.totalJMTWithUserDelay = cdl.getTotalJMTWithUserDelay();\n break;\n\n case 'client.media.tx.start':\n audioSetupDelay.joinRespTxStart = cdl.getAudioJoinRespTxStart();\n videoSetupDelay.joinRespTxStart = cdl.getVideoJoinRespTxStart();\n }\n\n if (!isEmpty(joinTimes)) {\n item.eventPayload.event = merge(item.eventPayload.event, {joinTimes});\n }\n\n if (!isEmpty(audioSetupDelay)) {\n item.eventPayload.event = merge(item.eventPayload.event, {audioSetupDelay});\n }\n\n if (!isEmpty(videoSetupDelay)) {\n item.eventPayload.event = merge(item.eventPayload.event, {videoSetupDelay});\n }\n\n item.eventPayload.origin = Object.assign(origin, item.eventPayload.origin);\n\n webex.logger.log(\n `CallDiagnosticLatencies,prepareDiagnosticMetricItem: ${JSON.stringify({\n latencies: Object.fromEntries(cdl.latencyTimestamps),\n event: item,\n })}`\n );\n\n return item;\n};\n\n/**\n * Sets the originTime value(s) before the request/fetch.\n * This function is only useful if you are about to submit a metrics\n * request using pre-built fetch options;\n *\n * @param {any} options\n * @returns {any} the updated options object\n */\nexport const setMetricTimings = (options) => {\n if (options.body && options.json) {\n const body = JSON.parse(options.body);\n\n const now = new Date().toISOString();\n body.metrics?.forEach((metric) => {\n if (metric.eventPayload) {\n // The event will effectively be triggered and sent at the same time.\n // The existing triggered time is from when the options were built.\n metric.eventPayload.originTime = {\n triggered: now,\n sent: now,\n };\n }\n });\n options.body = JSON.stringify(body);\n }\n\n return options;\n};\n\nexport const extractVersionMetadata = (version: string) => {\n // extract major and minor version\n const [majorVersion, minorVersion] = version.split('.');\n\n return {\n majorVersion: parseInt(majorVersion, 10),\n minorVersion: parseInt(minorVersion, 10),\n };\n};\n\n/**\n * Generates client error codes for specific ice failures\n * that happen when trying to add media in a meeting.\n */\nexport const generateClientErrorCodeForIceFailure = ({\n signalingState,\n iceConnected,\n turnServerUsed,\n unreachable,\n}: {\n signalingState: RTCPeerConnection['signalingState'];\n iceConnected: boolean;\n turnServerUsed: boolean;\n unreachable: boolean;\n}) => {\n let errorCode = ICE_FAILURE_CLIENT_CODE; // default;\n\n if (signalingState === 'have-local-offer') {\n errorCode = MISSING_ROAP_ANSWER_CLIENT_CODE;\n }\n\n if (signalingState === 'stable' && iceConnected) {\n errorCode = DTLS_HANDSHAKE_FAILED_CLIENT_CODE;\n }\n\n if (signalingState !== 'have-local-offer' && !iceConnected) {\n if (turnServerUsed) {\n if (unreachable) {\n errorCode = ICE_AND_REACHABILITY_FAILED_CLIENT_CODE;\n } else {\n errorCode = ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE;\n }\n } else {\n errorCode = ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE;\n }\n }\n\n return errorCode;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["CALL_DIAGNOSTIC_LOG_IDENTIFIER","exports","CALL_FEATURE_LOG_IDENTIFIER","AUTHENTICATION_FAILED_CODE","NETWORK_ERROR","NEW_LOCUS_ERROR_CLIENT_CODE","MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE","UNKNOWN_ERROR","ICE_FAILURE_CLIENT_CODE","MISSING_ROAP_ANSWER_CLIENT_CODE","DTLS_HANDSHAKE_FAILED_CLIENT_CODE","ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE","ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE","ICE_AND_REACHABILITY_FAILED_CLIENT_CODE","MULTISTREAM_NOT_AVAILABLE_CLIENT_CODE","WBX_APP_API_URL","WEBEX_SUB_SERVICE_TYPES","PMR","SCHEDULED_MEETING","WEBINAR","WEBCAST","BROWSER_MEDIA_ERROR_NAMES","PERMISSION_DENIED_ERROR","NOT_ALLOWED_ERROR","NOT_READABLE_ERROR","ABORT_ERROR","NOT_FOUND_ERROR","OVERCONSTRAINED_ERROR","SECURITY_ERROR","TYPE_ERROR","BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP","_defineProperty2","default","SDP_OFFER_CREATION_ERROR_MAP","GENERAL","SDP_MUNGE_MISSING_CODECS","ERROR_DESCRIPTIONS","UNKNOWN_CALL_FAILURE","LOCUS_RATE_LIMITED_INCOMING","LOCUS_RATE_LIMITED_OUTGOING","LOCUS_UNAVAILABLE","LOCUS_CONFLICT","TIMEOUT","LOCUS_INVALID_SEQUENCE_HASH","AUTHENTICATION_FAILED","UPDATE_MEDIA_FAILED","FAILED_TO_CONNECT_MEDIA","MEDIA_ENGINE_LOST","MEDIA_CONNECTION_LOST","ICE_FAILURE","MEDIA_ENGINE_HANG","ICE_SERVER_REJECTED","CALL_FULL","ROOM_TOO_LARGE","GUEST_ALREADY_ADDED","LOCUS_USER_NOT_AUTHORISED","CLOUDBERRY_UNAVAILABLE","ROOM_TOO_LARGE_FREE_ACCOUNT","MEETING_INACTIVE","MEETING_LOCKED","MEETING_TERMINATING","MODERATOR_PIN_OR_GUEST_REQUIRED","MODERATOR_PIN_OR_GUEST_PIN_REQUIRED","MODERATOR_REQUIRED","USER_NOT_MEMBER_OF_ROOM","NEW_LOCUS_ERROR","NETWORK_UNAVAILABLE","MEETING_UNAVAILABLE","MEETING_ID_INVALID","MEETING_SITE_INVALID","LOCUS_INVALID_JOINTIME","LOBBY_EXPIRED","MEDIA_CONNECTION_LOST_PAIRED","PHONE_NUMBER_NOT_A_NUMBER","PHONE_NUMBER_TOO_LONG","INVALID_DIALABLE_KEY","ONE_ON_ONE_TO_SELF_NOT_ALLOWED","REMOVED_PARTICIPANT","MEETING_LINK_NOT_FOUND","PHONE_NUMBER_TOO_SHORT_AFTER_IDD","INVALID_INVITEE_ADDRESS","PMR_USER_ACCOUNT_LOCKED_OUT","GUEST_FORBIDDEN","PMR_ACCOUNT_SUSPENDED","EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE","CONVERSATION_NOT_FOUND","SIP_CALLEE_BUSY","SIP_CALLEE_NOT_FOUND","START_RECORDING_FAILED","RECORDING_IN_PROGRESS_FAILED","MEETING_INFO_LOOKUP_ERROR","CALL_FULL_ADD_GUEST","REQUIRE_WEBEX_LOGIN","USER_NOT_ALLOWED_ACCESS_MEETING","USER_NEEDS_ACTIVATION","SIGN_UP_INVALID_EMAIL","NO_MEDIA_FOUND","STREAM_ERROR_NO_MEDIA","CAMERA_PERMISSION_DENIED","FRAUD_DETECTION","E2EE_NOT_SUPPORTED","LOCUS_LOBBY_FULL_CMR","USER_NOT_INVITED_TO_JOIN","MISSING_ROAP_ANSWER","DTLS_HANDSHAKE_FAILED","ICE_FAILED_WITHOUT_TURN_TLS","ICE_FAILED_WITH_TURN_TLS","ICE_AND_REACHABILITY_FAILED","MULTISTREAM_NOT_AVAILABLE","SDP_OFFER_CREATION_ERROR","SDP_OFFER_CREATION_ERROR_MISSING_CODEC","WDM_RESTRICTED_REGION","USER_NOT_ALLOWED_JOIN_WEBINAR","SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP","CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD","_CLIENT_ERROR_CODE_TO","errorDescription","category","fatal","name","shownToUser","CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND","CALL_FEATURE_EVENT_FAILED_TO_SEND"],"sources":["config.ts"],"sourcesContent":["/* eslint-disable import/prefer-default-export */\n// Most client error codes are mapped based on\n// https://sqbu-github.cisco.com/WebExSquared/event-dictionary/wiki/Error-codes-for-metric-events\n\nimport {ClientEventError, ClientSubServiceType} from '../metrics.types';\n\nexport const CALL_DIAGNOSTIC_LOG_IDENTIFIER = 'call-diagnostic-events -> ';\nexport const CALL_FEATURE_LOG_IDENTIFIER = 'call-diagnostic-events-feature -> ';\n\nexport const AUTHENTICATION_FAILED_CODE = 1010;\nexport const NETWORK_ERROR = 1026;\nexport const NEW_LOCUS_ERROR_CLIENT_CODE = 4008;\nexport const MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE = 4100;\nexport const UNKNOWN_ERROR = 9999; // Unexpected error that is not a meetingInfo error, locus error or browser media error.\nexport const ICE_FAILURE_CLIENT_CODE = 2004;\nexport const MISSING_ROAP_ANSWER_CLIENT_CODE = 2007;\nexport const DTLS_HANDSHAKE_FAILED_CLIENT_CODE = 2008;\nexport const ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE = 2010;\nexport const ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE = 2009;\nexport const ICE_AND_REACHABILITY_FAILED_CLIENT_CODE = 2011;\nexport const MULTISTREAM_NOT_AVAILABLE_CLIENT_CODE = 2012;\nexport const WBX_APP_API_URL = 'wbxappapi'; // MeetingInfo WebexAppApi response object normally contains a body.url that includes the string 'wbxappapi'\n\nexport const WEBEX_SUB_SERVICE_TYPES: Record<string, ClientSubServiceType> = {\n PMR: 'PMR',\n SCHEDULED_MEETING: 'ScheduledMeeting',\n WEBINAR: 'Webinar',\n WEBCAST: 'Webcast',\n};\n\n// Found in https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia\nconst BROWSER_MEDIA_ERROR_NAMES = {\n PERMISSION_DENIED_ERROR: 'PermissionDeniedError',\n NOT_ALLOWED_ERROR: 'NotAllowedError',\n NOT_READABLE_ERROR: 'NotReadableError',\n ABORT_ERROR: 'AbortError',\n NOT_FOUND_ERROR: 'NotFoundError',\n OVERCONSTRAINED_ERROR: 'OverconstrainedError',\n SECURITY_ERROR: 'SecurityError',\n TYPE_ERROR: 'TypeError',\n};\n\nexport const BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP = {\n [BROWSER_MEDIA_ERROR_NAMES.PERMISSION_DENIED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_ALLOWED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_READABLE_ERROR]: 2729, // Although the user granted permission to use the matching devices, a hardware error occurred at the operating system, browser, or Web page level which prevented access to the device.\n [BROWSER_MEDIA_ERROR_NAMES.ABORT_ERROR]: 2729, // Although the user and operating system both granted access to the hardware device, and no hardware issues occurred that would cause a NotReadableError DOMException, throw if some problem occurred which prevented the device from being used.\n [BROWSER_MEDIA_ERROR_NAMES.NOT_FOUND_ERROR]: 2729, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.OVERCONSTRAINED_ERROR]: 2729, // Thrown if the specified constraints resulted in no candidate devices which met the criteria requested.\n [BROWSER_MEDIA_ERROR_NAMES.SECURITY_ERROR]: 2729, // Thrown if user media support is disabled on the Document on which getUserMedia() was called. The mechanism by which user media support is enabled and disabled is left up to the individual user agent.\n [BROWSER_MEDIA_ERROR_NAMES.TYPE_ERROR]: 2729, // Thrown if the list of constraints specified is empty, or has all constraints set to false. This can also happen if you try to call getUserMedia() in an insecure context, since navigator.mediaDevices is undefined in an insecure context.\n};\n\nexport const SDP_OFFER_CREATION_ERROR_MAP = {\n GENERAL: 2050,\n SDP_MUNGE_MISSING_CODECS: 2051,\n};\n\nexport const ERROR_DESCRIPTIONS = {\n UNKNOWN_CALL_FAILURE: 'UnknownCallFailure',\n LOCUS_RATE_LIMITED_INCOMING: 'LocusRateLimitedIncoming',\n LOCUS_RATE_LIMITED_OUTGOING: 'LocusRateLimitedOutgoing',\n LOCUS_UNAVAILABLE: 'LocusUnavailable',\n LOCUS_CONFLICT: 'LocusConflict',\n TIMEOUT: 'Timeout',\n LOCUS_INVALID_SEQUENCE_HASH: 'LocusInvalidSequenceHash',\n AUTHENTICATION_FAILED: 'AuthenticationFailed',\n NETWORK_ERROR: 'NetworkError',\n UPDATE_MEDIA_FAILED: 'UpdateMediaFailed',\n FAILED_TO_CONNECT_MEDIA: 'FailedToConnectMedia',\n MEDIA_ENGINE_LOST: 'MediaEngineLost',\n MEDIA_CONNECTION_LOST: 'MediaConnectionLost',\n ICE_FAILURE: 'IceFailure',\n MEDIA_ENGINE_HANG: 'MediaEngineHang',\n ICE_SERVER_REJECTED: 'IceServerRejected',\n CALL_FULL: 'CallFull',\n ROOM_TOO_LARGE: 'RoomTooLarge',\n GUEST_ALREADY_ADDED: 'GuestAlreadyAdded',\n LOCUS_USER_NOT_AUTHORISED: 'LocusUserNotAuthorised',\n CLOUDBERRY_UNAVAILABLE: 'CloudberryUnavailable',\n ROOM_TOO_LARGE_FREE_ACCOUNT: 'RoomTooLarge_FreeAccount',\n MEETING_INACTIVE: 'MeetingInactive',\n MEETING_LOCKED: 'MeetingLocked',\n MEETING_TERMINATING: 'MeetingTerminating',\n MODERATOR_PIN_OR_GUEST_REQUIRED: 'Moderator_Pin_Or_Guest_Required',\n MODERATOR_PIN_OR_GUEST_PIN_REQUIRED: 'Moderator_Pin_Or_Guest_PIN_Required',\n MODERATOR_REQUIRED: 'Moderator_Required',\n USER_NOT_MEMBER_OF_ROOM: 'UserNotMemberOfRoom',\n NEW_LOCUS_ERROR: 'NewLocusError',\n NETWORK_UNAVAILABLE: 'NetworkUnavailable',\n MEETING_UNAVAILABLE: 'MeetingUnavailable',\n MEETING_ID_INVALID: 'MeetingIDInvalid',\n MEETING_SITE_INVALID: 'MeetingSiteInvalid',\n LOCUS_INVALID_JOINTIME: 'LocusInvalidJoinTime',\n LOBBY_EXPIRED: 'LobbyExpired',\n MEDIA_CONNECTION_LOST_PAIRED: 'MediaConnectionLostPaired',\n PHONE_NUMBER_NOT_A_NUMBER: 'PhoneNumberNotANumber',\n PHONE_NUMBER_TOO_LONG: 'PhoneNumberTooLong',\n INVALID_DIALABLE_KEY: 'InvalidDialableKey',\n ONE_ON_ONE_TO_SELF_NOT_ALLOWED: 'OneOnOneToSelfNotAllowed',\n REMOVED_PARTICIPANT: 'RemovedParticipant',\n MEETING_LINK_NOT_FOUND: 'MeetingLinkNotFound',\n PHONE_NUMBER_TOO_SHORT_AFTER_IDD: 'PhoneNumberTooShortAfterIdd',\n INVALID_INVITEE_ADDRESS: 'InvalidInviteeAddress',\n PMR_USER_ACCOUNT_LOCKED_OUT: 'PMRUserAccountLockedOut',\n GUEST_FORBIDDEN: 'GuestForbidden',\n PMR_ACCOUNT_SUSPENDED: 'PMRAccountSuspended',\n EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE: 'EmptyPhoneNumberOrCountryCode',\n CONVERSATION_NOT_FOUND: 'ConversationNotFound',\n SIP_CALLEE_BUSY: 'SIPCalleeBusy',\n SIP_CALLEE_NOT_FOUND: 'SIPCalleeNotFound',\n START_RECORDING_FAILED: 'StartRecordingFailed',\n RECORDING_IN_PROGRESS_FAILED: 'RecordingInProgressFailed',\n MEETING_INFO_LOOKUP_ERROR: 'MeetingInfoLookupError',\n CALL_FULL_ADD_GUEST: 'CallFullAddGuest',\n REQUIRE_WEBEX_LOGIN: 'RequireWebexLogin',\n USER_NOT_ALLOWED_ACCESS_MEETING: 'UserNotAllowedAccessMeeting',\n USER_NEEDS_ACTIVATION: 'UserNeedsActivation',\n SIGN_UP_INVALID_EMAIL: 'SignUpInvalidEmail',\n UNKNOWN_ERROR: 'UnknownError',\n NO_MEDIA_FOUND: 'NoMediaFound',\n STREAM_ERROR_NO_MEDIA: 'StreamErrorNoMedia',\n CAMERA_PERMISSION_DENIED: 'CameraPermissionDenied',\n FRAUD_DETECTION: 'FraudDetection',\n E2EE_NOT_SUPPORTED: 'E2EENotSupported',\n LOCUS_LOBBY_FULL_CMR: 'LocusLobbyFullCMR',\n USER_NOT_INVITED_TO_JOIN: 'UserNotInvitedToJoin',\n MISSING_ROAP_ANSWER: 'MissingRoapAnswer',\n DTLS_HANDSHAKE_FAILED: 'DTLSHandshakeFailed',\n ICE_FAILED_WITHOUT_TURN_TLS: 'ICEFailedWithoutTURN_TLS',\n ICE_FAILED_WITH_TURN_TLS: 'ICEFailedWithTURN_TLS',\n ICE_AND_REACHABILITY_FAILED: 'ICEAndReachabilityFailed',\n MULTISTREAM_NOT_AVAILABLE: 'MultistreamNotAvailable',\n SDP_OFFER_CREATION_ERROR: 'SdpOfferCreationError',\n SDP_OFFER_CREATION_ERROR_MISSING_CODEC: 'SdpOfferCreationErrorMissingCodec',\n WDM_RESTRICTED_REGION: 'WdmRestrictedRegion',\n USER_NOT_ALLOWED_JOIN_WEBINAR: 'UserNotAllowedJoinWebinar',\n};\n\nexport const SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP = {\n // ---- Webex API ----\n // Taken from https://wiki.cisco.com/display/HFWEB/MeetingInfo+API and https://sqbu-github.cisco.com/WebExSquared/spark-client-framework/blob/master/spark-client-framework/Services/WebexMeetingService/WebexMeetingModel.h\n // Site not support the URL's domain\n 58400: 4100,\n 99002: 4100,\n // Cannot find the data. Unkown meeting.\n 99009: 4100,\n // Meeting is not allow to cross env\n 58500: 4100,\n // Input parameters contain invalit item\n 400001: 4100,\n // Empty password or token. Meeting is not allow to access since require password\n 403004: 4005,\n // Wrong password. Meeting is not allow to access since password error\n 403028: 4005,\n // meeting is not allow to access since require panelist password\n 403025: 4005,\n // wrong password. Meeting is not allow to access since panelist password error\n 403125: 4005,\n // Wrong or expired permission. Meeting is not allow to access since permissionToken error or expire\n 403032: 4005,\n // Meeting is required login for current user\n 403034: 4036,\n // Meeting is not allow to access since require password or hostKey\n // Empty password or host key\n 403036: 4005,\n // Meeting is not allow to access since password or hostKey error\n // Wrong password or host key\n 403038: 4005,\n // CMR Meeting Not Supported (meeting exists, but not CMR meeting)\n 403040: 4100,\n // Requires Moderator Pin or Guest Pin\n 403041: 4005,\n // Email blocked\n 403047: 4101,\n // Device not authenticated for your organization\n 403408: 4101,\n // Invalid panelist Pin\n 403043: 4005,\n // Device not registered in org. Device not authenticated.\n 403048: 4101,\n // Not allowed to join external meetings. Violate meeting join policy. Your organization settings don't allow you to join this meeting.\n 403049: 4101,\n // Invalid email. Requires sign in meeting's current site.\n 403100: 4101,\n // Enforce sign in: need login before access when policy enforce sign in. GuestForceUserSignInPolicy\n 403101: 4036,\n // Enforce sign in: sign in with your email address that is approved by your organization\n 403102: 4036,\n // Join internal Meeting: need login before access when policy enforce sign in. Guest force user sign in internal meeting policy.\n 403103: 4036,\n // Join internal Meeting: The host's organization policy doesn't allow your account to join this meeting. Try switching to another account\n 403104: 4101,\n 404001: 4101,\n // Site data not found. Unkonwn meeting. Site data not found(or null).\n 404006: 4100,\n // Invalid input with too many requests. Too many requests access, please input captcha code\n 423001: 4005,\n // Wrong password with too many requests. PasswordError too many time, please input captcha code\n 423005: 4005,\n // Wrong password or host key with too many requests\n 423006: 4005,\n // PasswordError with right captcha, please input captcha code\n 423010: 4005,\n // PasswordOrHostKeyError with right captcha, please input captcha code\n 423012: 4005,\n // Unverified or invalid input. Force show captcha. Please input captcha code\"\n 423013: 4005,\n // Too many requests access\n 429005: 4100,\n // Webinar: Meeting registration is required\n 403021: 4104,\n // Webinar: Meeting registration is still pending\n 403022: 4104,\n // Webinar: Meeting registration have been rejected\n 403024: 4104,\n // Webinar: Registration ID verified failure\n 403137: 4104,\n // Webinar: Registration ID input too many time,please input captcha code\n 423007: 4104,\n // Webinar: Need to join meeting via webcast\n 403026: 4104,\n // Webinar: Meeting join required registration ID\n 403037: 4104,\n // Not reach JBH, can't join meeting\n 403003: 4101,\n // Attendee email is required\n 403030: 4101,\n\n // ---- Locus ------\n // FREE_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403001: 3007,\n // PAID_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403002: 3002,\n // SERVICE_MAX_PARTICIPANTS_EXCEEDED\n 2403003: 3002,\n // LOCUS_INACTIVE\n 2403004: 4001,\n // LOCUS_FREE_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403018: 3001,\n // LOCUS_PAID_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403019: 3001,\n // LOCUS_LOCKED\n 2423003: 4002,\n // LOCUS_TERMINATING\n 2423004: 4003,\n // LOCUS_REQUIRES_MODERATOR_PIN_OR_GUEST\n 2423005: 4005,\n 2423006: 4005,\n 2423016: 4005,\n 2423017: 4005,\n 2423018: 4005,\n // LOCUS_OWNER_CONCURRENT_ACTIVE_MEETING_LIMIT_EXCEEDED\n 2423012: 12000,\n // LOCUS_LOBBY_FULL_CMR\n 2423021: 12001,\n // LOCUS_REQUIRES_MODERATOR_ROLE\n 2423007: 4006,\n // LOCUS_JOIN_RESTRICTED_USER_NOT_IN_ROOM\n 2403010: 4007,\n // LOCUS_MEETING_NOT_FOUND\n 2403014: 4011,\n // LOCUS_NOT_WEBEX_SITE\n 2403015: 4012,\n // LOCUS_INVALID_JOIN_TIME\n 2423010: 4013,\n // LOCUS_PHONE_NUMBER_NOT_A_NUMBER\n 2400008: 4016,\n // LOCUS_PHONE_NUMBER_TOO_LONG\n 2400011: 4017,\n // LOCUS_INVALID_DIALABLE_KEY\n 2400012: 4018,\n // LOCUS_ONE_ON_ONE_TO_SELF_NOT_ALLOWED\n 2403007: 4019,\n // LOCUS_REMOVED_PARTICIPANT\n 2401002: 4020,\n // LOCUS_MEETING_LINK_NOT_FOUND\n 2404002: 4021,\n // LOCUS_PHONE_NUMBER_TOO_SHORT_AFTER_IDD\n 2400009: 4022,\n // LOCUS_INVALID_INVITEE_ADDRESS\n 2400025: 4023,\n // LOCUS_PMR_USER_ACCOUNT_LOCKEDOUT\n 2423009: 4024,\n // LOCUS_RESOURCE_GUEST_FORBIDDEN\n 2403022: 4025,\n // LOCUS_PMR_SUSPENDED\n 2423008: 4026,\n // LOCUS_EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE\n 2400006: 4027,\n // LOCUS_INVALID_SINCE_OR_SEQUENCE_HASH_IN_REQUEST\n 2400014: 1006,\n // LOCUS_CONVERSATION_NOT_FOUND\n 2404001: 4028,\n // LOCUS_RECORDING_CONTROL_NOT_SUPPORTED\n 2403025: 4029,\n // LOCUS_RECORDING_NOT_STARTED\n 2405001: 4029,\n // LOCUS_RECORDING_NOT_ENABLED\n 2409005: 4029,\n // E2EE_NOT_SUPPORTED\n 2409062: 12002,\n // LOCUS: ONLY_INVITED_USERS_CAN_ATTEND_THIS_MEETING\n 2423025: 12003,\n\n // ---- U2C Sign in catalog ------\n // The user exists, but hasn't completed activation. Needs to visit Atlas for more processing.\n 100002: 4102,\n // The user exists, had completed activation earlier, but requires re-activation because of change in login strategy.\n // Common example is: user signed up using an OAuth provider, but that OAuth provider was removed by org's admin. Now the user needs to re-activate using alternate login strategies: password-pin, new OAuth provider, SSO, etc.\n 100007: 4102,\n // The user does not exist\n 100001: 4103,\n // The user wasn't found, and the organization used for search is a domain-claimed organization.\n 100006: 4103,\n 100005: 4103, // Depracated because of an issue in the UCF Clients\n // If both email-hash and domain-hash are null or undefined.\n 100004: 4103,\n\n // ---- WDM ----\n // WDM_BLOCKED_ACCESS_BY_COUNTRY_CODE_BANNED_COUNTRY_ERROR_CODE\n 4404002: 13000,\n // WDM_BLOCKED_ACCESS_BY_COUNTRY_CODE_RESTRICTED_COUNTRY_ERROR_CODE\n 4404003: 13000,\n};\n\nexport const CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD: Record<number, Partial<ClientEventError>> = {\n 1000: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_CALL_FAILURE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_INCOMING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1002: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_OUTGOING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1003: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_UNAVAILABLE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1004: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_CONFLICT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1005: {\n errorDescription: ERROR_DESCRIPTIONS.TIMEOUT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1006: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_SEQUENCE_HASH,\n category: 'signaling',\n fatal: true,\n },\n 1007: {\n errorDescription: ERROR_DESCRIPTIONS.UPDATE_MEDIA_FAILED,\n category: 'signaling',\n fatal: true,\n },\n [AUTHENTICATION_FAILED_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.AUTHENTICATION_FAILED,\n category: 'network',\n fatal: true,\n },\n 1026: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_ERROR,\n category: 'network',\n fatal: true,\n },\n 2001: {\n errorDescription: ERROR_DESCRIPTIONS.FAILED_TO_CONNECT_MEDIA,\n category: 'signaling',\n fatal: true,\n },\n 2002: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_LOST,\n category: 'signaling',\n fatal: true,\n },\n 2003: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST,\n category: 'signaling',\n fatal: true,\n },\n [ICE_FAILURE_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILURE,\n category: 'media',\n fatal: true,\n },\n 2005: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_HANG,\n category: 'signaling',\n fatal: true,\n },\n 2006: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_SERVER_REJECTED,\n category: 'signaling',\n fatal: true,\n },\n [MISSING_ROAP_ANSWER_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.MISSING_ROAP_ANSWER,\n category: 'media',\n fatal: true,\n },\n [DTLS_HANDSHAKE_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.DTLS_HANDSHAKE_FAILED,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITHOUT_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITH_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_AND_REACHABILITY_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_AND_REACHABILITY_FAILED,\n category: 'expected',\n fatal: true,\n },\n [MULTISTREAM_NOT_AVAILABLE_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.MULTISTREAM_NOT_AVAILABLE,\n category: 'expected',\n fatal: false,\n },\n 2050: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR,\n category: 'media',\n fatal: true,\n shownToUser: true,\n },\n 2051: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR_MISSING_CODEC,\n category: 'expected',\n fatal: true,\n shownToUser: true,\n },\n 3001: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL,\n category: 'expected',\n fatal: true,\n },\n 3002: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE,\n category: 'expected',\n fatal: true,\n },\n 3004: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_ALREADY_ADDED,\n category: 'expected',\n fatal: false,\n },\n 3005: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_USER_NOT_AUTHORISED,\n category: 'expected',\n fatal: true,\n },\n 3006: {\n errorDescription: ERROR_DESCRIPTIONS.CLOUDBERRY_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 3007: {\n errorDescription: ERROR_DESCRIPTIONS.STREAM_ERROR_NO_MEDIA,\n category: 'expected',\n fatal: true,\n },\n 3013: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE_FREE_ACCOUNT,\n category: 'expected',\n fatal: false,\n },\n 4001: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INACTIVE,\n category: 'expected',\n fatal: true,\n },\n 4002: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LOCKED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4003: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_TERMINATING,\n category: 'expected',\n fatal: true,\n name: 'locus.leave',\n },\n 4004: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4005: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_PIN_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4006: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4007: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_MEMBER_OF_ROOM,\n category: 'expected',\n fatal: true,\n },\n 4008: {\n errorDescription: ERROR_DESCRIPTIONS.NEW_LOCUS_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 4009: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_UNAVAILABLE,\n category: 'network',\n fatal: true,\n },\n 4010: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 4011: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_ID_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4012: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_SITE_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4013: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_JOINTIME,\n category: 'expected',\n fatal: true,\n },\n 4014: {\n errorDescription: ERROR_DESCRIPTIONS.LOBBY_EXPIRED,\n category: 'expected',\n fatal: true,\n },\n 4015: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST_PAIRED,\n category: 'expected',\n fatal: false,\n },\n 4016: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_NOT_A_NUMBER,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4017: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_LONG,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4018: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_DIALABLE_KEY,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4019: {\n errorDescription: ERROR_DESCRIPTIONS.ONE_ON_ONE_TO_SELF_NOT_ALLOWED,\n category: 'expected',\n fatal: true,\n },\n 4020: {\n errorDescription: ERROR_DESCRIPTIONS.REMOVED_PARTICIPANT,\n category: 'expected',\n fatal: true,\n },\n 4021: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LINK_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4022: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_SHORT_AFTER_IDD,\n category: 'expected',\n fatal: true,\n },\n 4023: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_INVITEE_ADDRESS,\n category: 'expected',\n fatal: true,\n },\n 4024: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_USER_ACCOUNT_LOCKED_OUT,\n category: 'expected',\n fatal: true,\n },\n 4025: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_FORBIDDEN,\n category: 'expected',\n fatal: true,\n },\n 4026: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_ACCOUNT_SUSPENDED,\n category: 'expected',\n fatal: true,\n },\n 4027: {\n errorDescription: ERROR_DESCRIPTIONS.EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE,\n category: 'expected',\n fatal: true,\n },\n 4028: {\n errorDescription: ERROR_DESCRIPTIONS.CONVERSATION_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4029: {\n errorDescription: ERROR_DESCRIPTIONS.START_RECORDING_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4030: {\n errorDescription: ERROR_DESCRIPTIONS.RECORDING_IN_PROGRESS_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4032: {\n errorDescription: ERROR_DESCRIPTIONS.CAMERA_PERMISSION_DENIED,\n category: 'expected',\n fatal: true,\n },\n 4036: {\n errorDescription: ERROR_DESCRIPTIONS.REQUIRE_WEBEX_LOGIN,\n category: 'expected',\n fatal: true,\n },\n 5000: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_BUSY,\n category: 'expected',\n fatal: true,\n },\n 5001: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n\n // Webex App API Error Codes\n 4100: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INFO_LOOKUP_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 3003: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL_ADD_GUEST,\n category: 'expected',\n fatal: false,\n },\n 4101: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_ALLOWED_ACCESS_MEETING,\n category: 'expected',\n fatal: true,\n },\n 4102: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NEEDS_ACTIVATION,\n category: 'expected',\n fatal: true,\n },\n 4103: {\n errorDescription: ERROR_DESCRIPTIONS.SIGN_UP_INVALID_EMAIL,\n category: 'expected',\n fatal: true,\n },\n 4104: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_ALLOWED_JOIN_WEBINAR,\n category: 'expected',\n fatal: true,\n },\n 2729: {\n errorDescription: ERROR_DESCRIPTIONS.NO_MEDIA_FOUND,\n category: 'expected',\n fatal: false,\n },\n 9999: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_ERROR,\n category: 'other',\n fatal: true,\n },\n 12000: {\n errorDescription: ERROR_DESCRIPTIONS.FRAUD_DETECTION,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_LOBBY_FULL_CMR,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12002: {\n errorDescription: ERROR_DESCRIPTIONS.E2EE_NOT_SUPPORTED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12003: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_INVITED_TO_JOIN,\n category: 'expected',\n fatal: true,\n },\n 13000: {\n errorDescription: ERROR_DESCRIPTIONS.WDM_RESTRICTED_REGION,\n category: 'expected',\n fatal: true,\n },\n};\n\nexport const CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND = 'js_sdk_call_diagnostic_event_failed_to_send';\n\nexport const CALL_FEATURE_EVENT_FAILED_TO_SEND = 'js_sdk_call_feature_event_failed_to_send';\n"],"mappings":"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"}
1
+ {"version":3,"names":["CALL_DIAGNOSTIC_LOG_IDENTIFIER","exports","CALL_FEATURE_LOG_IDENTIFIER","AUTHENTICATION_FAILED_CODE","NETWORK_ERROR","NEW_LOCUS_ERROR_CLIENT_CODE","MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE","UNKNOWN_ERROR","ICE_FAILURE_CLIENT_CODE","MISSING_ROAP_ANSWER_CLIENT_CODE","DTLS_HANDSHAKE_FAILED_CLIENT_CODE","ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE","ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE","ICE_AND_REACHABILITY_FAILED_CLIENT_CODE","MULTISTREAM_NOT_AVAILABLE_CLIENT_CODE","WBX_APP_API_URL","WEBEX_SUB_SERVICE_TYPES","PMR","SCHEDULED_MEETING","WEBINAR","WEBCAST","BROWSER_MEDIA_ERROR_NAMES","PERMISSION_DENIED_ERROR","NOT_ALLOWED_ERROR","NOT_READABLE_ERROR","ABORT_ERROR","NOT_FOUND_ERROR","OVERCONSTRAINED_ERROR","SECURITY_ERROR","TYPE_ERROR","BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP","_defineProperty2","default","SDP_OFFER_CREATION_ERROR_MAP","GENERAL","SDP_MUNGE_MISSING_CODECS","ERROR_DESCRIPTIONS","UNKNOWN_CALL_FAILURE","LOCUS_RATE_LIMITED_INCOMING","LOCUS_RATE_LIMITED_OUTGOING","LOCUS_UNAVAILABLE","LOCUS_CONFLICT","TIMEOUT","LOCUS_INVALID_SEQUENCE_HASH","AUTHENTICATION_FAILED","UPDATE_MEDIA_FAILED","FAILED_TO_CONNECT_MEDIA","MEDIA_ENGINE_LOST","MEDIA_CONNECTION_LOST","ICE_FAILURE","MEDIA_ENGINE_HANG","ICE_SERVER_REJECTED","CALL_FULL","ROOM_TOO_LARGE","GUEST_ALREADY_ADDED","LOCUS_USER_NOT_AUTHORISED","CLOUDBERRY_UNAVAILABLE","ROOM_TOO_LARGE_FREE_ACCOUNT","MEETING_INACTIVE","MEETING_LOCKED","MEETING_TERMINATING","MODERATOR_PIN_OR_GUEST_REQUIRED","MODERATOR_PIN_OR_GUEST_PIN_REQUIRED","MODERATOR_REQUIRED","USER_NOT_MEMBER_OF_ROOM","NEW_LOCUS_ERROR","NETWORK_UNAVAILABLE","MEETING_UNAVAILABLE","MEETING_ID_INVALID","MEETING_SITE_INVALID","LOCUS_INVALID_JOINTIME","LOBBY_EXPIRED","MEDIA_CONNECTION_LOST_PAIRED","PHONE_NUMBER_NOT_A_NUMBER","PHONE_NUMBER_TOO_LONG","INVALID_DIALABLE_KEY","ONE_ON_ONE_TO_SELF_NOT_ALLOWED","REMOVED_PARTICIPANT","MEETING_LINK_NOT_FOUND","PHONE_NUMBER_TOO_SHORT_AFTER_IDD","INVALID_INVITEE_ADDRESS","PMR_USER_ACCOUNT_LOCKED_OUT","GUEST_FORBIDDEN","PMR_ACCOUNT_SUSPENDED","EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE","CONVERSATION_NOT_FOUND","SIP_CALLEE_BUSY","SIP_CALLEE_NOT_FOUND","START_RECORDING_FAILED","RECORDING_IN_PROGRESS_FAILED","MEETING_INFO_LOOKUP_ERROR","CALL_FULL_ADD_GUEST","REQUIRE_WEBEX_LOGIN","USER_NOT_ALLOWED_ACCESS_MEETING","USER_NEEDS_ACTIVATION","SIGN_UP_INVALID_EMAIL","NO_MEDIA_FOUND","STREAM_ERROR_NO_MEDIA","CAMERA_PERMISSION_DENIED","FRAUD_DETECTION","E2EE_NOT_SUPPORTED","LOCUS_LOBBY_FULL_CMR","USER_NOT_INVITED_TO_JOIN","MISSING_ROAP_ANSWER","DTLS_HANDSHAKE_FAILED","ICE_FAILED_WITHOUT_TURN_TLS","ICE_FAILED_WITH_TURN_TLS","ICE_AND_REACHABILITY_FAILED","MULTISTREAM_NOT_AVAILABLE","SDP_OFFER_CREATION_ERROR","SDP_OFFER_CREATION_ERROR_MISSING_CODEC","WDM_RESTRICTED_REGION","USER_NOT_ALLOWED_JOIN_WEBINAR","SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP","CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD","_CLIENT_ERROR_CODE_TO","errorDescription","category","fatal","name","shownToUser","CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND","CALL_FEATURE_EVENT_FAILED_TO_SEND"],"sources":["config.ts"],"sourcesContent":["/* eslint-disable import/prefer-default-export */\n// Most client error codes are mapped based on\n// https://sqbu-github.cisco.com/WebExSquared/event-dictionary/wiki/Error-codes-for-metric-events\n\nimport {ClientEventError, ClientSubServiceType} from '../metrics.types';\n\nexport const CALL_DIAGNOSTIC_LOG_IDENTIFIER = 'call-diagnostic-events -> ';\nexport const CALL_FEATURE_LOG_IDENTIFIER = 'call-diagnostic-events-feature -> ';\n\nexport const AUTHENTICATION_FAILED_CODE = 1010;\nexport const NETWORK_ERROR = 1026;\nexport const NEW_LOCUS_ERROR_CLIENT_CODE = 4008;\nexport const MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE = 4100;\nexport const UNKNOWN_ERROR = 9999; // Unexpected error that is not a meetingInfo error, locus error or browser media error.\nexport const ICE_FAILURE_CLIENT_CODE = 2004;\nexport const MISSING_ROAP_ANSWER_CLIENT_CODE = 2007;\nexport const DTLS_HANDSHAKE_FAILED_CLIENT_CODE = 2008;\nexport const ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE = 2010;\nexport const ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE = 2009;\nexport const ICE_AND_REACHABILITY_FAILED_CLIENT_CODE = 2011;\nexport const MULTISTREAM_NOT_AVAILABLE_CLIENT_CODE = 2012;\nexport const WBX_APP_API_URL = 'wbxappapi'; // MeetingInfo WebexAppApi response object normally contains a body.url that includes the string 'wbxappapi'\n\nexport const WEBEX_SUB_SERVICE_TYPES: Record<string, ClientSubServiceType> = {\n PMR: 'PMR',\n SCHEDULED_MEETING: 'ScheduledMeeting',\n WEBINAR: 'Webinar',\n WEBCAST: 'Webcast',\n};\n\n// Found in https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia\nconst BROWSER_MEDIA_ERROR_NAMES = {\n PERMISSION_DENIED_ERROR: 'PermissionDeniedError',\n NOT_ALLOWED_ERROR: 'NotAllowedError',\n NOT_READABLE_ERROR: 'NotReadableError',\n ABORT_ERROR: 'AbortError',\n NOT_FOUND_ERROR: 'NotFoundError',\n OVERCONSTRAINED_ERROR: 'OverconstrainedError',\n SECURITY_ERROR: 'SecurityError',\n TYPE_ERROR: 'TypeError',\n};\n\nexport const BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP = {\n [BROWSER_MEDIA_ERROR_NAMES.PERMISSION_DENIED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_ALLOWED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_READABLE_ERROR]: 2729, // Although the user granted permission to use the matching devices, a hardware error occurred at the operating system, browser, or Web page level which prevented access to the device.\n [BROWSER_MEDIA_ERROR_NAMES.ABORT_ERROR]: 2729, // Although the user and operating system both granted access to the hardware device, and no hardware issues occurred that would cause a NotReadableError DOMException, throw if some problem occurred which prevented the device from being used.\n [BROWSER_MEDIA_ERROR_NAMES.NOT_FOUND_ERROR]: 2729, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.OVERCONSTRAINED_ERROR]: 2729, // Thrown if the specified constraints resulted in no candidate devices which met the criteria requested.\n [BROWSER_MEDIA_ERROR_NAMES.SECURITY_ERROR]: 2729, // Thrown if user media support is disabled on the Document on which getUserMedia() was called. The mechanism by which user media support is enabled and disabled is left up to the individual user agent.\n [BROWSER_MEDIA_ERROR_NAMES.TYPE_ERROR]: 2729, // Thrown if the list of constraints specified is empty, or has all constraints set to false. This can also happen if you try to call getUserMedia() in an insecure context, since navigator.mediaDevices is undefined in an insecure context.\n};\n\nexport const SDP_OFFER_CREATION_ERROR_MAP = {\n GENERAL: 2050,\n SDP_MUNGE_MISSING_CODECS: 2051,\n};\n\nexport const ERROR_DESCRIPTIONS = {\n UNKNOWN_CALL_FAILURE: 'UnknownCallFailure',\n LOCUS_RATE_LIMITED_INCOMING: 'LocusRateLimitedIncoming',\n LOCUS_RATE_LIMITED_OUTGOING: 'LocusRateLimitedOutgoing',\n LOCUS_UNAVAILABLE: 'LocusUnavailable',\n LOCUS_CONFLICT: 'LocusConflict',\n TIMEOUT: 'Timeout',\n LOCUS_INVALID_SEQUENCE_HASH: 'LocusInvalidSequenceHash',\n AUTHENTICATION_FAILED: 'AuthenticationFailed',\n NETWORK_ERROR: 'NetworkError',\n UPDATE_MEDIA_FAILED: 'UpdateMediaFailed',\n FAILED_TO_CONNECT_MEDIA: 'FailedToConnectMedia',\n MEDIA_ENGINE_LOST: 'MediaEngineLost',\n MEDIA_CONNECTION_LOST: 'MediaConnectionLost',\n ICE_FAILURE: 'IceFailure',\n MEDIA_ENGINE_HANG: 'MediaEngineHang',\n ICE_SERVER_REJECTED: 'IceServerRejected',\n CALL_FULL: 'CallFull',\n ROOM_TOO_LARGE: 'RoomTooLarge',\n GUEST_ALREADY_ADDED: 'GuestAlreadyAdded',\n LOCUS_USER_NOT_AUTHORISED: 'LocusUserNotAuthorised',\n CLOUDBERRY_UNAVAILABLE: 'CloudberryUnavailable',\n ROOM_TOO_LARGE_FREE_ACCOUNT: 'RoomTooLarge_FreeAccount',\n MEETING_INACTIVE: 'MeetingInactive',\n MEETING_LOCKED: 'MeetingLocked',\n MEETING_TERMINATING: 'MeetingTerminating',\n MODERATOR_PIN_OR_GUEST_REQUIRED: 'Moderator_Pin_Or_Guest_Required',\n MODERATOR_PIN_OR_GUEST_PIN_REQUIRED: 'Moderator_Pin_Or_Guest_PIN_Required',\n MODERATOR_REQUIRED: 'Moderator_Required',\n USER_NOT_MEMBER_OF_ROOM: 'UserNotMemberOfRoom',\n NEW_LOCUS_ERROR: 'NewLocusError',\n NETWORK_UNAVAILABLE: 'NetworkUnavailable',\n MEETING_UNAVAILABLE: 'MeetingUnavailable',\n MEETING_ID_INVALID: 'MeetingIDInvalid',\n MEETING_SITE_INVALID: 'MeetingSiteInvalid',\n LOCUS_INVALID_JOINTIME: 'LocusInvalidJoinTime',\n LOBBY_EXPIRED: 'LobbyExpired',\n MEDIA_CONNECTION_LOST_PAIRED: 'MediaConnectionLostPaired',\n PHONE_NUMBER_NOT_A_NUMBER: 'PhoneNumberNotANumber',\n PHONE_NUMBER_TOO_LONG: 'PhoneNumberTooLong',\n INVALID_DIALABLE_KEY: 'InvalidDialableKey',\n ONE_ON_ONE_TO_SELF_NOT_ALLOWED: 'OneOnOneToSelfNotAllowed',\n REMOVED_PARTICIPANT: 'RemovedParticipant',\n MEETING_LINK_NOT_FOUND: 'MeetingLinkNotFound',\n PHONE_NUMBER_TOO_SHORT_AFTER_IDD: 'PhoneNumberTooShortAfterIdd',\n INVALID_INVITEE_ADDRESS: 'InvalidInviteeAddress',\n PMR_USER_ACCOUNT_LOCKED_OUT: 'PMRUserAccountLockedOut',\n GUEST_FORBIDDEN: 'GuestForbidden',\n PMR_ACCOUNT_SUSPENDED: 'PMRAccountSuspended',\n EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE: 'EmptyPhoneNumberOrCountryCode',\n CONVERSATION_NOT_FOUND: 'ConversationNotFound',\n SIP_CALLEE_BUSY: 'SIPCalleeBusy',\n SIP_CALLEE_NOT_FOUND: 'SIPCalleeNotFound',\n START_RECORDING_FAILED: 'StartRecordingFailed',\n RECORDING_IN_PROGRESS_FAILED: 'RecordingInProgressFailed',\n MEETING_INFO_LOOKUP_ERROR: 'MeetingInfoLookupError',\n CALL_FULL_ADD_GUEST: 'CallFullAddGuest',\n REQUIRE_WEBEX_LOGIN: 'RequireWebexLogin',\n USER_NOT_ALLOWED_ACCESS_MEETING: 'UserNotAllowedAccessMeeting',\n USER_NEEDS_ACTIVATION: 'UserNeedsActivation',\n SIGN_UP_INVALID_EMAIL: 'SignUpInvalidEmail',\n UNKNOWN_ERROR: 'UnknownError',\n NO_MEDIA_FOUND: 'NoMediaFound',\n STREAM_ERROR_NO_MEDIA: 'StreamErrorNoMedia',\n CAMERA_PERMISSION_DENIED: 'CameraPermissionDenied',\n FRAUD_DETECTION: 'FraudDetection',\n E2EE_NOT_SUPPORTED: 'E2EENotSupported',\n LOCUS_LOBBY_FULL_CMR: 'LocusLobbyFullCMR',\n USER_NOT_INVITED_TO_JOIN: 'UserNotInvitedToJoin',\n MISSING_ROAP_ANSWER: 'MissingRoapAnswer',\n DTLS_HANDSHAKE_FAILED: 'DTLSHandshakeFailed',\n ICE_FAILED_WITHOUT_TURN_TLS: 'ICEFailedWithoutTURN_TLS',\n ICE_FAILED_WITH_TURN_TLS: 'ICEFailedWithTURN_TLS',\n ICE_AND_REACHABILITY_FAILED: 'ICEAndReachabilityFailed',\n MULTISTREAM_NOT_AVAILABLE: 'MultistreamNotAvailable',\n SDP_OFFER_CREATION_ERROR: 'SdpOfferCreationError',\n SDP_OFFER_CREATION_ERROR_MISSING_CODEC: 'SdpOfferCreationErrorMissingCodec',\n WDM_RESTRICTED_REGION: 'WdmRestrictedRegion',\n USER_NOT_ALLOWED_JOIN_WEBINAR: 'UserNotAllowedJoinWebinar',\n};\n\nexport const SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP = {\n // ---- Webex API ----\n // Taken from https://wiki.cisco.com/display/HFWEB/MeetingInfo+API and https://sqbu-github.cisco.com/WebExSquared/spark-client-framework/blob/master/spark-client-framework/Services/WebexMeetingService/WebexMeetingModel.h\n // Site not support the URL's domain\n 58400: 4100,\n 99002: 4100,\n // Cannot find the data. Unkown meeting.\n 99009: 4100,\n // Meeting is not allow to cross env\n 58500: 4100,\n // Input parameters contain invalit item\n 400001: 4100,\n // Empty password or token. Meeting is not allow to access since require password\n 403004: 4005,\n // Wrong password. Meeting is not allow to access since password error\n 403028: 4005,\n // meeting is not allow to access since require panelist password\n 403025: 4005,\n // wrong password. Meeting is not allow to access since panelist password error\n 403125: 4005,\n // Wrong or expired permission. Meeting is not allow to access since permissionToken error or expire\n 403032: 4005,\n // Meeting is required login for current user\n 403034: 4036,\n // Meeting is not allow to access since require password or hostKey\n // Empty password or host key\n 403036: 4005,\n // Meeting is not allow to access since password or hostKey error\n // Wrong password or host key\n 403038: 4005,\n // CMR Meeting Not Supported (meeting exists, but not CMR meeting)\n 403040: 4100,\n // Requires Moderator Pin or Guest Pin\n 403041: 4005,\n // Email blocked\n 403047: 4101,\n // Device not authenticated for your organization\n 403408: 4101,\n // Invalid panelist Pin\n 403043: 4005,\n // Device not registered in org. Device not authenticated.\n 403048: 4101,\n // Not allowed to join external meetings. Violate meeting join policy. Your organization settings don't allow you to join this meeting.\n 403049: 4101,\n // Invalid email. Requires sign in meeting's current site.\n 403100: 4101,\n // Enforce sign in: need login before access when policy enforce sign in. GuestForceUserSignInPolicy\n 403101: 4036,\n // Enforce sign in: sign in with your email address that is approved by your organization\n 403102: 4036,\n // Join internal Meeting: need login before access when policy enforce sign in. Guest force user sign in internal meeting policy.\n 403103: 4036,\n // Join internal Meeting: The host's organization policy doesn't allow your account to join this meeting. Try switching to another account\n 403104: 4101,\n 404001: 4101,\n // Site data not found. Unkonwn meeting. Site data not found(or null).\n 404006: 4100,\n // Invalid input with too many requests. Too many requests access, please input captcha code\n 423001: 4005,\n // Wrong password with too many requests. PasswordError too many time, please input captcha code\n 423005: 4005,\n // Wrong password or host key with too many requests\n 423006: 4005,\n // PasswordError with right captcha, please input captcha code\n 423010: 4005,\n // PasswordOrHostKeyError with right captcha, please input captcha code\n 423012: 4005,\n // Unverified or invalid input. Force show captcha. Please input captcha code\"\n 423013: 4005,\n // Too many requests access\n 429005: 4100,\n // Webinar: Meeting registration is required\n 403021: 4104,\n // Webinar: Meeting registration is still pending\n 403022: 4104,\n // Webinar: Meeting registration have been rejected\n 403024: 4104,\n // Webinar: Registration ID verified failure\n 403137: 4104,\n // Webinar: Registration ID input too many time,please input captcha code\n 423007: 4104,\n // Webinar: Need to join meeting via webcast\n 403026: 4104,\n // Webinar: Meeting join required registration ID\n 403037: 4104,\n // Not reach JBH, can't join meeting\n 403003: 4101,\n // Attendee email is required\n 403030: 4101,\n\n // ---- Locus ------\n // FREE_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403001: 3007,\n // PAID_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403002: 3002,\n // SERVICE_MAX_PARTICIPANTS_EXCEEDED\n 2403003: 3002,\n // LOCUS_INACTIVE\n 2403004: 4001,\n // LOCUS_FREE_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403018: 3001,\n // LOCUS_PAID_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403019: 3001,\n // LOCUS_LOCKED\n 2423003: 4002,\n // LOCUS_TERMINATING\n 2423004: 4003,\n // LOCUS_REQUIRES_MODERATOR_PIN_OR_GUEST\n 2423005: 4005,\n 2423006: 4005,\n 2423016: 4005,\n 2423017: 4005,\n 2423018: 4005,\n // LOCUS_OWNER_CONCURRENT_ACTIVE_MEETING_LIMIT_EXCEEDED\n 2423012: 12000,\n // LOCUS_LOBBY_FULL_CMR\n 2423021: 12001,\n // LOCUS_REQUIRES_MODERATOR_ROLE\n 2423007: 4006,\n // LOCUS_JOIN_RESTRICTED_USER_NOT_IN_ROOM\n 2403010: 4007,\n // LOCUS_MEETING_NOT_FOUND\n 2403014: 4011,\n // LOCUS_NOT_WEBEX_SITE\n 2403015: 4012,\n // LOCUS_INVALID_JOIN_TIME\n 2423010: 4013,\n // LOCUS_PHONE_NUMBER_NOT_A_NUMBER\n 2400008: 4016,\n // LOCUS_PHONE_NUMBER_TOO_LONG\n 2400011: 4017,\n // LOCUS_INVALID_DIALABLE_KEY\n 2400012: 4018,\n // LOCUS_ONE_ON_ONE_TO_SELF_NOT_ALLOWED\n 2403007: 4019,\n // LOCUS_REMOVED_PARTICIPANT\n 2401002: 4020,\n // LOCUS_MEETING_LINK_NOT_FOUND\n 2404002: 4021,\n // LOCUS_PHONE_NUMBER_TOO_SHORT_AFTER_IDD\n 2400009: 4022,\n // LOCUS_INVALID_INVITEE_ADDRESS\n 2400025: 4023,\n // LOCUS_PMR_USER_ACCOUNT_LOCKEDOUT\n 2423009: 4024,\n // LOCUS_RESOURCE_GUEST_FORBIDDEN\n 2403022: 4025,\n // LOCUS_PMR_SUSPENDED\n 2423008: 4026,\n // LOCUS_EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE\n 2400006: 4027,\n // LOCUS_INVALID_SINCE_OR_SEQUENCE_HASH_IN_REQUEST\n 2400014: 1006,\n // LOCUS_CONVERSATION_NOT_FOUND\n 2404001: 4028,\n // LOCUS_RECORDING_CONTROL_NOT_SUPPORTED\n 2403025: 4029,\n // LOCUS_RECORDING_NOT_STARTED\n 2405001: 4029,\n // LOCUS_RECORDING_NOT_ENABLED\n 2409005: 4029,\n // E2EE_NOT_SUPPORTED\n 2409062: 12002,\n // LOCUS: ONLY_INVITED_USERS_CAN_ATTEND_THIS_MEETING\n 2423025: 12003,\n\n // ---- U2C Sign in catalog ------\n // The user exists, but hasn't completed activation. Needs to visit Atlas for more processing.\n 100002: 4102,\n // The user exists, had completed activation earlier, but requires re-activation because of change in login strategy.\n // Common example is: user signed up using an OAuth provider, but that OAuth provider was removed by org's admin. Now the user needs to re-activate using alternate login strategies: password-pin, new OAuth provider, SSO, etc.\n 100007: 4102,\n // The user does not exist\n 100001: 4103,\n // The user wasn't found, and the organization used for search is a domain-claimed organization.\n 100006: 4103,\n 100005: 4103, // Depracated because of an issue in the UCF Clients\n // If both email-hash and domain-hash are null or undefined.\n 100004: 4103,\n\n // ---- WDM ----\n // WDM_BLOCKED_ACCESS_BY_COUNTRY_CODE_BANNED_COUNTRY_ERROR_CODE\n 4404002: 13000,\n // WDM_BLOCKED_ACCESS_BY_COUNTRY_CODE_RESTRICTED_COUNTRY_ERROR_CODE\n 4404003: 13000,\n};\n\nexport const CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD: Record<number, Partial<ClientEventError>> = {\n 1000: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_CALL_FAILURE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_INCOMING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1002: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_OUTGOING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1003: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_UNAVAILABLE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1004: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_CONFLICT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1005: {\n errorDescription: ERROR_DESCRIPTIONS.TIMEOUT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1006: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_SEQUENCE_HASH,\n category: 'signaling',\n fatal: true,\n },\n 1007: {\n errorDescription: ERROR_DESCRIPTIONS.UPDATE_MEDIA_FAILED,\n category: 'signaling',\n fatal: true,\n },\n [AUTHENTICATION_FAILED_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.AUTHENTICATION_FAILED,\n category: 'network',\n fatal: true,\n },\n 1026: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_ERROR,\n category: 'network',\n fatal: true,\n },\n 2001: {\n errorDescription: ERROR_DESCRIPTIONS.FAILED_TO_CONNECT_MEDIA,\n category: 'signaling',\n fatal: true,\n },\n 2002: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_LOST,\n category: 'signaling',\n fatal: true,\n },\n 2003: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST,\n category: 'signaling',\n fatal: true,\n },\n [ICE_FAILURE_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILURE,\n category: 'media',\n fatal: true,\n },\n 2005: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_HANG,\n category: 'signaling',\n fatal: true,\n },\n 2006: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_SERVER_REJECTED,\n category: 'signaling',\n fatal: true,\n },\n [MISSING_ROAP_ANSWER_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.MISSING_ROAP_ANSWER,\n category: 'media',\n fatal: true,\n },\n [DTLS_HANDSHAKE_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.DTLS_HANDSHAKE_FAILED,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITHOUT_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITH_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_AND_REACHABILITY_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_AND_REACHABILITY_FAILED,\n category: 'expected',\n fatal: true,\n },\n [MULTISTREAM_NOT_AVAILABLE_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.MULTISTREAM_NOT_AVAILABLE,\n category: 'expected',\n fatal: false,\n },\n 2050: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR,\n category: 'media',\n fatal: true,\n shownToUser: true,\n },\n 2051: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR_MISSING_CODEC,\n category: 'expected',\n fatal: true,\n shownToUser: true,\n },\n 3001: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL,\n category: 'expected',\n fatal: true,\n },\n 3002: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE,\n category: 'expected',\n fatal: true,\n },\n 3004: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_ALREADY_ADDED,\n category: 'expected',\n fatal: false,\n },\n 3005: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_USER_NOT_AUTHORISED,\n category: 'expected',\n fatal: true,\n },\n 3006: {\n errorDescription: ERROR_DESCRIPTIONS.CLOUDBERRY_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 3007: {\n errorDescription: ERROR_DESCRIPTIONS.STREAM_ERROR_NO_MEDIA,\n category: 'expected',\n fatal: true,\n },\n 3013: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE_FREE_ACCOUNT,\n category: 'expected',\n fatal: false,\n },\n 4001: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INACTIVE,\n category: 'expected',\n fatal: true,\n },\n 4002: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LOCKED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4003: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_TERMINATING,\n category: 'expected',\n fatal: true,\n name: 'locus.leave',\n },\n 4004: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4005: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_PIN_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4006: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4007: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_MEMBER_OF_ROOM,\n category: 'expected',\n fatal: true,\n },\n 4008: {\n errorDescription: ERROR_DESCRIPTIONS.NEW_LOCUS_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 4009: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_UNAVAILABLE,\n category: 'network',\n fatal: true,\n },\n 4010: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 4011: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_ID_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4012: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_SITE_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4013: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_JOINTIME,\n category: 'expected',\n fatal: true,\n },\n 4014: {\n errorDescription: ERROR_DESCRIPTIONS.LOBBY_EXPIRED,\n category: 'expected',\n fatal: true,\n },\n 4015: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST_PAIRED,\n category: 'expected',\n fatal: false,\n },\n 4016: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_NOT_A_NUMBER,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4017: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_LONG,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4018: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_DIALABLE_KEY,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4019: {\n errorDescription: ERROR_DESCRIPTIONS.ONE_ON_ONE_TO_SELF_NOT_ALLOWED,\n category: 'expected',\n fatal: true,\n },\n 4020: {\n errorDescription: ERROR_DESCRIPTIONS.REMOVED_PARTICIPANT,\n category: 'expected',\n fatal: true,\n },\n 4021: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LINK_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4022: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_SHORT_AFTER_IDD,\n category: 'expected',\n fatal: true,\n },\n 4023: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_INVITEE_ADDRESS,\n category: 'expected',\n fatal: true,\n },\n 4024: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_USER_ACCOUNT_LOCKED_OUT,\n category: 'expected',\n fatal: true,\n },\n 4025: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_FORBIDDEN,\n category: 'expected',\n fatal: true,\n },\n 4026: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_ACCOUNT_SUSPENDED,\n category: 'expected',\n fatal: true,\n },\n 4027: {\n errorDescription: ERROR_DESCRIPTIONS.EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE,\n category: 'expected',\n fatal: true,\n },\n 4028: {\n errorDescription: ERROR_DESCRIPTIONS.CONVERSATION_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4029: {\n errorDescription: ERROR_DESCRIPTIONS.START_RECORDING_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4030: {\n errorDescription: ERROR_DESCRIPTIONS.RECORDING_IN_PROGRESS_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4032: {\n errorDescription: ERROR_DESCRIPTIONS.CAMERA_PERMISSION_DENIED,\n category: 'expected',\n fatal: true,\n },\n 4036: {\n errorDescription: ERROR_DESCRIPTIONS.REQUIRE_WEBEX_LOGIN,\n category: 'expected',\n fatal: true,\n },\n 5000: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_BUSY,\n category: 'expected',\n fatal: true,\n },\n 5001: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n\n // Webex App API Error Codes\n 4100: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INFO_LOOKUP_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 3003: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL_ADD_GUEST,\n category: 'expected',\n fatal: false,\n },\n 4101: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_ALLOWED_ACCESS_MEETING,\n category: 'expected',\n fatal: true,\n },\n 4102: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NEEDS_ACTIVATION,\n category: 'expected',\n fatal: true,\n },\n 4103: {\n errorDescription: ERROR_DESCRIPTIONS.SIGN_UP_INVALID_EMAIL,\n category: 'expected',\n fatal: true,\n },\n 4104: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_ALLOWED_JOIN_WEBINAR,\n category: 'expected',\n fatal: true,\n },\n 2729: {\n errorDescription: ERROR_DESCRIPTIONS.NO_MEDIA_FOUND,\n category: 'expected',\n fatal: false,\n },\n 9999: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_ERROR,\n category: 'other',\n fatal: true,\n },\n 12000: {\n errorDescription: ERROR_DESCRIPTIONS.FRAUD_DETECTION,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_LOBBY_FULL_CMR,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12002: {\n errorDescription: ERROR_DESCRIPTIONS.E2EE_NOT_SUPPORTED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12003: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_INVITED_TO_JOIN,\n category: 'expected',\n fatal: true,\n },\n 13000: {\n errorDescription: ERROR_DESCRIPTIONS.WDM_RESTRICTED_REGION,\n category: 'expected',\n fatal: true,\n },\n};\n\nexport const CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND = 'js_sdk_call_diagnostic_event_failed_to_send';\n\nexport const CALL_FEATURE_EVENT_FAILED_TO_SEND = 'js_sdk_call_feature_event_failed_to_send';\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;;AAIO,IAAMA,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA,GAAG,4BAA4B;AACnE,IAAME,2BAA2B,GAAAD,OAAA,CAAAC,2BAAA,GAAG,oCAAoC;AAExE,IAAMC,0BAA0B,GAAAF,OAAA,CAAAE,0BAAA,GAAG,IAAI;AACvC,IAAMC,aAAa,GAAAH,OAAA,CAAAG,aAAA,GAAG,IAAI;AAC1B,IAAMC,2BAA2B,GAAAJ,OAAA,CAAAI,2BAAA,GAAG,IAAI;AACxC,IAAMC,qCAAqC,GAAAL,OAAA,CAAAK,qCAAA,GAAG,IAAI;AAClD,IAAMC,aAAa,GAAAN,OAAA,CAAAM,aAAA,GAAG,IAAI,CAAC,CAAC;AAC5B,IAAMC,uBAAuB,GAAAP,OAAA,CAAAO,uBAAA,GAAG,IAAI;AACpC,IAAMC,+BAA+B,GAAAR,OAAA,CAAAQ,+BAAA,GAAG,IAAI;AAC5C,IAAMC,iCAAiC,GAAAT,OAAA,CAAAS,iCAAA,GAAG,IAAI;AAC9C,IAAMC,oCAAoC,GAAAV,OAAA,CAAAU,oCAAA,GAAG,IAAI;AACjD,IAAMC,uCAAuC,GAAAX,OAAA,CAAAW,uCAAA,GAAG,IAAI;AACpD,IAAMC,uCAAuC,GAAAZ,OAAA,CAAAY,uCAAA,GAAG,IAAI;AACpD,IAAMC,qCAAqC,GAAAb,OAAA,CAAAa,qCAAA,GAAG,IAAI;AAClD,IAAMC,eAAe,GAAAd,OAAA,CAAAc,eAAA,GAAG,WAAW,CAAC,CAAC;;AAErC,IAAMC,uBAA6D,GAAAf,OAAA,CAAAe,uBAAA,GAAG;EAC3EC,GAAG,EAAE,KAAK;EACVC,iBAAiB,EAAE,kBAAkB;EACrCC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE;AACX,CAAC;;AAED;AACA,IAAMC,yBAAyB,GAAG;EAChCC,uBAAuB,EAAE,uBAAuB;EAChDC,iBAAiB,EAAE,iBAAiB;EACpCC,kBAAkB,EAAE,kBAAkB;EACtCC,WAAW,EAAE,YAAY;EACzBC,eAAe,EAAE,eAAe;EAChCC,qBAAqB,EAAE,sBAAsB;EAC7CC,cAAc,EAAE,eAAe;EAC/BC,UAAU,EAAE;AACd,CAAC;AAEM,IAAMC,kDAAkD,GAAA7B,OAAA,CAAA6B,kDAAA,OAAAC,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAC5DX,yBAAyB,CAACC,uBAAuB,EAAG,IAAI,GACxDD,yBAAyB,CAACE,iBAAiB,EAAG,IAAI,GAClDF,yBAAyB,CAACG,kBAAkB,EAAG,IAAI,GACnDH,yBAAyB,CAACI,WAAW,EAAG,IAAI,GAC5CJ,yBAAyB,CAACK,eAAe,EAAG,IAAI,GAChDL,yBAAyB,CAACM,qBAAqB,EAAG,IAAI,GACtDN,yBAAyB,CAACO,cAAc,EAAG,IAAI,GAC/CP,yBAAyB,CAACQ,UAAU,EAAG,IAAI,CAC7C;AAEM,IAAMI,4BAA4B,GAAAhC,OAAA,CAAAgC,4BAAA,GAAG;EAC1CC,OAAO,EAAE,IAAI;EACbC,wBAAwB,EAAE;AAC5B,CAAC;AAEM,IAAMC,kBAAkB,GAAAnC,OAAA,CAAAmC,kBAAA,GAAG;EAChCC,oBAAoB,EAAE,oBAAoB;EAC1CC,2BAA2B,EAAE,0BAA0B;EACvDC,2BAA2B,EAAE,0BAA0B;EACvDC,iBAAiB,EAAE,kBAAkB;EACrCC,cAAc,EAAE,eAAe;EAC/BC,OAAO,EAAE,SAAS;EAClBC,2BAA2B,EAAE,0BAA0B;EACvDC,qBAAqB,EAAE,sBAAsB;EAC7CxC,aAAa,EAAE,cAAc;EAC7ByC,mBAAmB,EAAE,mBAAmB;EACxCC,uBAAuB,EAAE,sBAAsB;EAC/CC,iBAAiB,EAAE,iBAAiB;EACpCC,qBAAqB,EAAE,qBAAqB;EAC5CC,WAAW,EAAE,YAAY;EACzBC,iBAAiB,EAAE,iBAAiB;EACpCC,mBAAmB,EAAE,mBAAmB;EACxCC,SAAS,EAAE,UAAU;EACrBC,cAAc,EAAE,cAAc;EAC9BC,mBAAmB,EAAE,mBAAmB;EACxCC,yBAAyB,EAAE,wBAAwB;EACnDC,sBAAsB,EAAE,uBAAuB;EAC/CC,2BAA2B,EAAE,0BAA0B;EACvDC,gBAAgB,EAAE,iBAAiB;EACnCC,cAAc,EAAE,eAAe;EAC/BC,mBAAmB,EAAE,oBAAoB;EACzCC,+BAA+B,EAAE,iCAAiC;EAClEC,mCAAmC,EAAE,qCAAqC;EAC1EC,kBAAkB,EAAE,oBAAoB;EACxCC,uBAAuB,EAAE,qBAAqB;EAC9CC,eAAe,EAAE,eAAe;EAChCC,mBAAmB,EAAE,oBAAoB;EACzCC,mBAAmB,EAAE,oBAAoB;EACzCC,kBAAkB,EAAE,kBAAkB;EACtCC,oBAAoB,EAAE,oBAAoB;EAC1CC,sBAAsB,EAAE,sBAAsB;EAC9CC,aAAa,EAAE,cAAc;EAC7BC,4BAA4B,EAAE,2BAA2B;EACzDC,yBAAyB,EAAE,uBAAuB;EAClDC,qBAAqB,EAAE,oBAAoB;EAC3CC,oBAAoB,EAAE,oBAAoB;EAC1CC,8BAA8B,EAAE,0BAA0B;EAC1DC,mBAAmB,EAAE,oBAAoB;EACzCC,sBAAsB,EAAE,qBAAqB;EAC7CC,gCAAgC,EAAE,6BAA6B;EAC/DC,uBAAuB,EAAE,uBAAuB;EAChDC,2BAA2B,EAAE,yBAAyB;EACtDC,eAAe,EAAE,gBAAgB;EACjCC,qBAAqB,EAAE,qBAAqB;EAC5CC,kCAAkC,EAAE,+BAA+B;EACnEC,sBAAsB,EAAE,sBAAsB;EAC9CC,eAAe,EAAE,eAAe;EAChCC,oBAAoB,EAAE,mBAAmB;EACzCC,sBAAsB,EAAE,sBAAsB;EAC9CC,4BAA4B,EAAE,2BAA2B;EACzDC,yBAAyB,EAAE,wBAAwB;EACnDC,mBAAmB,EAAE,kBAAkB;EACvCC,mBAAmB,EAAE,mBAAmB;EACxCC,+BAA+B,EAAE,6BAA6B;EAC9DC,qBAAqB,EAAE,qBAAqB;EAC5CC,qBAAqB,EAAE,oBAAoB;EAC3CxF,aAAa,EAAE,cAAc;EAC7ByF,cAAc,EAAE,cAAc;EAC9BC,qBAAqB,EAAE,oBAAoB;EAC3CC,wBAAwB,EAAE,wBAAwB;EAClDC,eAAe,EAAE,gBAAgB;EACjCC,kBAAkB,EAAE,kBAAkB;EACtCC,oBAAoB,EAAE,mBAAmB;EACzCC,wBAAwB,EAAE,sBAAsB;EAChDC,mBAAmB,EAAE,mBAAmB;EACxCC,qBAAqB,EAAE,qBAAqB;EAC5CC,2BAA2B,EAAE,0BAA0B;EACvDC,wBAAwB,EAAE,uBAAuB;EACjDC,2BAA2B,EAAE,0BAA0B;EACvDC,yBAAyB,EAAE,yBAAyB;EACpDC,wBAAwB,EAAE,uBAAuB;EACjDC,sCAAsC,EAAE,mCAAmC;EAC3EC,qBAAqB,EAAE,qBAAqB;EAC5CC,6BAA6B,EAAE;AACjC,CAAC;AAEM,IAAMC,6CAA6C,GAAAhH,OAAA,CAAAgH,6CAAA,GAAG;EAC3D;EACA;EACA;EACA,KAAK,EAAE,IAAI;EACX,KAAK,EAAE,IAAI;EACX;EACA,KAAK,EAAE,IAAI;EACX;EACA,KAAK,EAAE,IAAI;EACX;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EAEZ;EACA;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE,KAAK;EAEd;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ,MAAM,EAAE,IAAI;EAAE;EACd;EACA,MAAM,EAAE,IAAI;EAEZ;EACA;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE;AACX,CAAC;AAEM,IAAMC,kCAA6E,GAAAjH,OAAA,CAAAiH,kCAAA,IAAAC,qBAAA;EACxF,IAAI,EAAE;IACJC,gBAAgB,EAAEhF,kBAAkB,CAACC,oBAAoB;IACzDgF,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAEhF,kBAAkB,CAACE,2BAA2B;IAChE+E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAEhF,kBAAkB,CAACG,2BAA2B;IAChE8E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAEhF,kBAAkB,CAACI,iBAAiB;IACtD6E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAEhF,kBAAkB,CAACK,cAAc;IACnD4E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAEhF,kBAAkB,CAACM,OAAO;IAC5C2E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAEhF,kBAAkB,CAACO,2BAA2B;IAChE0E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT,CAAC;EACD,IAAI,EAAE;IACJF,gBAAgB,EAAEhF,kBAAkB,CAACS,mBAAmB;IACxDwE,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT;AAAC,OAAAvF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACAhH,0BAA0B,EAAG;EAC5BiH,gBAAgB,EAAEhF,kBAAkB,CAACQ,qBAAqB;EAC1DyE,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAChC,aAAa;EAClDiH,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACU,uBAAuB;EAC5DuE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACW,iBAAiB;EACtDsE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACY,qBAAqB;EAC1DqE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACA9G,uBAAuB,EAAG;EACzB4G,gBAAgB,EAAEhF,kBAAkB,CAACa,WAAW;EAChDoE,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACc,iBAAiB;EACtDmE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACe,mBAAmB;EACxDkE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACA7G,+BAA+B,EAAG;EACjC2G,gBAAgB,EAAEhF,kBAAkB,CAACmE,mBAAmB;EACxDc,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACA5G,iCAAiC,EAAG;EACnC0G,gBAAgB,EAAEhF,kBAAkB,CAACoE,qBAAqB;EAC1Da,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,OAAAvF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACAvG,uCAAuC,EAAG;EACzCwG,gBAAgB,EAAEhF,kBAAkB,CAACqE,2BAA2B;EAChEY,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACA3G,oCAAoC,EAAG;EACtCyG,gBAAgB,EAAEhF,kBAAkB,CAACsE,wBAAwB;EAC7DW,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACAzG,uCAAuC,EAAG;EACzCuG,gBAAgB,EAAEhF,kBAAkB,CAACuE,2BAA2B;EAChEU,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACAxG,qCAAqC,EAAG;EACvCsG,gBAAgB,EAAEhF,kBAAkB,CAACwE,yBAAyB;EAC9DS,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACyE,wBAAwB;EAC7DQ,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE,IAAI;EACXE,WAAW,EAAE;AACf,CAAC,GACD,IAAI,EAAE;EACJJ,gBAAgB,EAAEhF,kBAAkB,CAAC0E,sCAAsC;EAC3EO,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXE,WAAW,EAAE;AACf,CAAC,GACD,IAAI,EAAE;EACJJ,gBAAgB,EAAEhF,kBAAkB,CAACgB,SAAS;EAC9CiE,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACiB,cAAc;EACnDgE,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACkB,mBAAmB;EACxD+D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACmB,yBAAyB;EAC9D8D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAvF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAEhF,kBAAkB,CAACoB,sBAAsB;EAC3D6D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC6D,qBAAqB;EAC1DoB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACqB,2BAA2B;EAChE4D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACsB,gBAAgB;EACrD2D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACuB,cAAc;EACnD0D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAEhF,kBAAkB,CAACwB,mBAAmB;EACxDyD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAEhF,kBAAkB,CAACyB,+BAA+B;EACpEwD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC0B,mCAAmC;EACxEuD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC2B,kBAAkB;EACvDsD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC4B,uBAAuB;EAC5DqD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAvF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAEhF,kBAAkB,CAAC6B,eAAe;EACpDoD,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC8B,mBAAmB;EACxDmD,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC+B,mBAAmB;EACxDkD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACgC,kBAAkB;EACvDiD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACiC,oBAAoB;EACzDgD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACkC,sBAAsB;EAC3D+C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACmC,aAAa;EAClD8C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACoC,4BAA4B;EACjE6C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACqC,yBAAyB;EAC9D4C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAEhF,kBAAkB,CAACsC,qBAAqB;EAC1D2C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,OAAAxF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAEhF,kBAAkB,CAACuC,oBAAoB;EACzD0C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAEhF,kBAAkB,CAACwC,8BAA8B;EACnEyC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACyC,mBAAmB;EACxDwC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC0C,sBAAsB;EAC3DuC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC2C,gCAAgC;EACrEsC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC4C,uBAAuB;EAC5DqC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC6C,2BAA2B;EAChEoC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC8C,eAAe;EACpDmC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC+C,qBAAqB;EAC1DkC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACgD,kCAAkC;EACvEiC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAvF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAEhF,kBAAkB,CAACiD,sBAAsB;EAC3DgC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACoD,sBAAsB;EAC3D6B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACqD,4BAA4B;EACjE4B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC8D,wBAAwB;EAC7DmB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACwD,mBAAmB;EACxDyB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACkD,eAAe;EACpD+B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACmD,oBAAoB;EACzD8B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GAGD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACsD,yBAAyB;EAC9D2B,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACuD,mBAAmB;EACxD0B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAACyD,+BAA+B;EACpEwB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAvF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAmF,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAEhF,kBAAkB,CAAC0D,qBAAqB;EAC1DuB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC2D,qBAAqB;EAC1DsB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC4E,6BAA6B;EAClEK,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC4D,cAAc;EACnDqB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAEhF,kBAAkB,CAAC7B,aAAa;EAClD8G,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACD,KAAK,EAAE;EACLF,gBAAgB,EAAEhF,kBAAkB,CAAC+D,eAAe;EACpDkB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACf,CAAC,GACD,KAAK,EAAE;EACLJ,gBAAgB,EAAEhF,kBAAkB,CAACiE,oBAAoB;EACzDgB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACf,CAAC,GACD,KAAK,EAAE;EACLJ,gBAAgB,EAAEhF,kBAAkB,CAACgE,kBAAkB;EACvDiB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACf,CAAC,GACD,KAAK,EAAE;EACLJ,gBAAgB,EAAEhF,kBAAkB,CAACkE,wBAAwB;EAC7De,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,KAAK,EAAE;EACLF,gBAAgB,EAAEhF,kBAAkB,CAAC2E,qBAAqB;EAC1DM,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,EACF;AAEM,IAAMG,oCAAoC,GAAAxH,OAAA,CAAAwH,oCAAA,GAAG,6CAA6C;AAE1F,IAAMC,iCAAiC,GAAAzH,OAAA,CAAAyH,iCAAA,GAAG,0CAA0C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_batcher","_interopRequireDefault","require","ClientMetricsBatcher","Batcher","extend","namespace","prepareItem","item","_promise","default","resolve","prepareRequest","queue","submitHttpRequest","payload","webex","request","method","service","resource","body","metrics","waitForServiceTimeout","config","_default","exports"],"sources":["client-metrics-batcher.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport Batcher from './batcher';\n\nconst ClientMetricsBatcher = Batcher.extend({\n namespace: 'Metrics',\n\n prepareItem(item) {\n // Add more defaults to payload when the clientmetrics endpoint evolves to support richer payloads\n return Promise.resolve(item);\n },\n\n prepareRequest(queue) {\n return Promise.resolve(queue);\n },\n\n submitHttpRequest(payload) {\n return this.webex.request({\n method: 'POST',\n service: 'metrics',\n resource: 'clientmetrics',\n body: {\n metrics: payload,\n },\n waitForServiceTimeout: this.webex.config.metrics.waitForServiceTimeout,\n });\n },\n});\n\nexport default ClientMetricsBatcher;\n"],"mappings":";;;;;;;;;AAIA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AAJA;AACA;AACA;;AAIA,IAAMC,oBAAoB,GAAGC,gBAAO,CAACC,MAAM,CAAC;EAC1CC,SAAS,EAAE,SAAS;EAEpBC,WAAW,WAAAA,YAACC,IAAI,EAAE;IAChB;IACA,OAAOC,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACH,IAAI,CAAC;EAC9B,CAAC;EAEDI,cAAc,WAAAA,eAACC,KAAK,EAAE;IACpB,OAAOJ,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACE,KAAK,CAAC;EAC/B,CAAC;EAEDC,iBAAiB,WAAAA,kBAACC,OAAO,EAAE;IACzB,OAAO,IAAI,CAACC,KAAK,CAACC,OAAO,CAAC;MACxBC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE,SAAS;MAClBC,QAAQ,EAAE,eAAe;MACzBC,IAAI,EAAE;QACJC,OAAO,EAAEP;MACX,CAAC;MACDQ,qBAAqB,EAAE,IAAI,CAACP,KAAK,CAACQ,MAAM,CAACF,OAAO,CAACC;IACnD,CAAC,CAAC;EACJ;AACF,CAAC,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAhB,OAAA,GAEYP,oBAAoB"}
1
+ {"version":3,"names":["_batcher","_interopRequireDefault","require","ClientMetricsBatcher","Batcher","extend","namespace","prepareItem","item","_promise","default","resolve","prepareRequest","queue","submitHttpRequest","payload","webex","request","method","service","resource","body","metrics","waitForServiceTimeout","config","_default","exports"],"sources":["client-metrics-batcher.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport Batcher from './batcher';\n\nconst ClientMetricsBatcher = Batcher.extend({\n namespace: 'Metrics',\n\n prepareItem(item) {\n // Add more defaults to payload when the clientmetrics endpoint evolves to support richer payloads\n return Promise.resolve(item);\n },\n\n prepareRequest(queue) {\n return Promise.resolve(queue);\n },\n\n submitHttpRequest(payload) {\n return this.webex.request({\n method: 'POST',\n service: 'metrics',\n resource: 'clientmetrics',\n body: {\n metrics: payload,\n },\n waitForServiceTimeout: this.webex.config.metrics.waitForServiceTimeout,\n });\n },\n});\n\nexport default ClientMetricsBatcher;\n"],"mappings":";;;;;;;;;AAIA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AAJA;AACA;AACA;;AAIA,IAAMC,oBAAoB,GAAGC,gBAAO,CAACC,MAAM,CAAC;EAC1CC,SAAS,EAAE,SAAS;EAEpBC,WAAW,WAAXA,WAAWA,CAACC,IAAI,EAAE;IAChB;IACA,OAAOC,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACH,IAAI,CAAC;EAC9B,CAAC;EAEDI,cAAc,WAAdA,cAAcA,CAACC,KAAK,EAAE;IACpB,OAAOJ,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACE,KAAK,CAAC;EAC/B,CAAC;EAEDC,iBAAiB,WAAjBA,iBAAiBA,CAACC,OAAO,EAAE;IACzB,OAAO,IAAI,CAACC,KAAK,CAACC,OAAO,CAAC;MACxBC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE,SAAS;MAClBC,QAAQ,EAAE,eAAe;MACzBC,IAAI,EAAE;QACJC,OAAO,EAAEP;MACX,CAAC;MACDQ,qBAAqB,EAAE,IAAI,CAACP,KAAK,CAACQ,MAAM,CAACF,OAAO,CAACC;IACnD,CAAC,CAAC;EACJ;AACF,CAAC,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAhB,OAAA,GAEYP,oBAAoB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_preloginMetricsBatcher","_interopRequireDefault","require","ClientMetricsPreloginBatcher","PreLoginMetricsBatcher","extend","namespace","prepareItem","item","_promise","default","resolve","prepareRequest","queue","_default","exports"],"sources":["client-metrics-prelogin-batcher.ts"],"sourcesContent":["import PreLoginMetricsBatcher from './prelogin-metrics-batcher';\n\nconst ClientMetricsPreloginBatcher = PreLoginMetricsBatcher.extend({\n namespace: 'Metrics',\n\n /**\n * Prepare item\n * @param {any} item\n * @returns {Promise<any>}\n */\n prepareItem(item) {\n // Add more defaults to payload when the clientmetrics endpoint evolves to support richer payloads\n return Promise.resolve(item);\n },\n\n /**\n * Prepare request, add time sensitive date etc.\n * @param {any[]} queue\n * @returns {Promise<any[]>}\n */\n prepareRequest(queue) {\n return Promise.resolve(queue);\n },\n});\n\nexport default ClientMetricsPreloginBatcher;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAMC,4BAA4B,GAAGC,+BAAsB,CAACC,MAAM,CAAC;EACjEC,SAAS,EAAE,SAAS;EAEpB;AACF;AACA;AACA;AACA;EACEC,WAAW,WAAAA,YAACC,IAAI,EAAE;IAChB;IACA,OAAOC,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACH,IAAI,CAAC;EAC9B,CAAC;EAED;AACF;AACA;AACA;AACA;EACEI,cAAc,WAAAA,eAACC,KAAK,EAAE;IACpB,OAAOJ,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACE,KAAK,CAAC;EAC/B;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAL,OAAA,GAEYP,4BAA4B"}
1
+ {"version":3,"names":["_preloginMetricsBatcher","_interopRequireDefault","require","ClientMetricsPreloginBatcher","PreLoginMetricsBatcher","extend","namespace","prepareItem","item","_promise","default","resolve","prepareRequest","queue","_default","exports"],"sources":["client-metrics-prelogin-batcher.ts"],"sourcesContent":["import PreLoginMetricsBatcher from './prelogin-metrics-batcher';\n\nconst ClientMetricsPreloginBatcher = PreLoginMetricsBatcher.extend({\n namespace: 'Metrics',\n\n /**\n * Prepare item\n * @param {any} item\n * @returns {Promise<any>}\n */\n prepareItem(item) {\n // Add more defaults to payload when the clientmetrics endpoint evolves to support richer payloads\n return Promise.resolve(item);\n },\n\n /**\n * Prepare request, add time sensitive date etc.\n * @param {any[]} queue\n * @returns {Promise<any[]>}\n */\n prepareRequest(queue) {\n return Promise.resolve(queue);\n },\n});\n\nexport default ClientMetricsPreloginBatcher;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAMC,4BAA4B,GAAGC,+BAAsB,CAACC,MAAM,CAAC;EACjEC,SAAS,EAAE,SAAS;EAEpB;AACF;AACA;AACA;AACA;EACEC,WAAW,WAAXA,WAAWA,CAACC,IAAI,EAAE;IAChB;IACA,OAAOC,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACH,IAAI,CAAC;EAC9B,CAAC;EAED;AACF;AACA;AACA;AACA;EACEI,cAAc,WAAdA,cAAcA,CAACC,KAAK,EAAE;IACpB,OAAOJ,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACE,KAAK,CAAC;EAC/B;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAL,OAAA,GAEYP,4BAA4B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_common","require","CLIENT_NAME","exports","_default","default","device","preDiscoveryServices","metricsServiceUrl","process","env","METRICS_SERVICE_URL","metrics","appType","inBrowser","batcherWait","batcherMaxCalls","batcherMaxWait","batcherRetryPlateau","waitForServiceTimeout","OS_NAME","WINDOWS","MAC","IOS","ANDROID","CHROME","LINUX","OTHERS","OSMap","macOS","Windows","iOS","Android","Linux"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {inBrowser} from '@webex/common';\n\nexport const CLIENT_NAME = 'webex-js-sdk';\nexport default {\n device: {\n preDiscoveryServices: {\n metricsServiceUrl:\n process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n metrics: process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n },\n },\n metrics: {\n appType: inBrowser ? 'browser' : 'nodejs',\n batcherWait: 500,\n batcherMaxCalls: 50,\n batcherMaxWait: 1500,\n batcherRetryPlateau: 32000,\n waitForServiceTimeout: 30,\n },\n};\n\nexport const OS_NAME = {\n WINDOWS: 'windows',\n MAC: 'mac',\n IOS: 'ios',\n ANDROID: 'android',\n CHROME: 'chrome',\n LINUX: 'linux',\n OTHERS: 'other',\n};\n\nexport const OSMap = {\n 'Chrome OS': OS_NAME.CHROME,\n macOS: OS_NAME.MAC,\n Windows: OS_NAME.WINDOWS,\n iOS: OS_NAME.IOS,\n Android: OS_NAME.ANDROID,\n Linux: OS_NAME.LINUX,\n};\n"],"mappings":";;;;;;;AAIA,IAAAA,OAAA,GAAAC,OAAA;AAJA;AACA;AACA;;AAIO,IAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,cAAc;AAAC,IAAAE,QAAA,GAAAD,OAAA,CAAAE,OAAA,GAC3B;EACbC,MAAM,EAAE;IACNC,oBAAoB,EAAE;MACpBC,iBAAiB,EACfC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAI,2CAA2C;MAChFC,OAAO,EAAEH,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAI;IAC9C;EACF,CAAC;EACDC,OAAO,EAAE;IACPC,OAAO,EAAEC,iBAAS,GAAG,SAAS,GAAG,QAAQ;IACzCC,WAAW,EAAE,GAAG;IAChBC,eAAe,EAAE,EAAE;IACnBC,cAAc,EAAE,IAAI;IACpBC,mBAAmB,EAAE,KAAK;IAC1BC,qBAAqB,EAAE;EACzB;AACF,CAAC;AAEM,IAAMC,OAAO,GAAAjB,OAAA,CAAAiB,OAAA,GAAG;EACrBC,OAAO,EAAE,SAAS;EAClBC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE,KAAK;EACVC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdC,MAAM,EAAE;AACV,CAAC;AAEM,IAAMC,KAAK,GAAAzB,OAAA,CAAAyB,KAAA,GAAG;EACnB,WAAW,EAAER,OAAO,CAACK,MAAM;EAC3BI,KAAK,EAAET,OAAO,CAACE,GAAG;EAClBQ,OAAO,EAAEV,OAAO,CAACC,OAAO;EACxBU,GAAG,EAAEX,OAAO,CAACG,GAAG;EAChBS,OAAO,EAAEZ,OAAO,CAACI,OAAO;EACxBS,KAAK,EAAEb,OAAO,CAACM;AACjB,CAAC"}
1
+ {"version":3,"names":["_common","require","CLIENT_NAME","exports","_default","default","device","preDiscoveryServices","metricsServiceUrl","process","env","METRICS_SERVICE_URL","metrics","appType","inBrowser","batcherWait","batcherMaxCalls","batcherMaxWait","batcherRetryPlateau","waitForServiceTimeout","OS_NAME","WINDOWS","MAC","IOS","ANDROID","CHROME","LINUX","OTHERS","OSMap","macOS","Windows","iOS","Android","Linux"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {inBrowser} from '@webex/common';\n\nexport const CLIENT_NAME = 'webex-js-sdk';\nexport default {\n device: {\n preDiscoveryServices: {\n metricsServiceUrl:\n process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n metrics: process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n },\n },\n metrics: {\n appType: inBrowser ? 'browser' : 'nodejs',\n batcherWait: 500,\n batcherMaxCalls: 50,\n batcherMaxWait: 1500,\n batcherRetryPlateau: 32000,\n waitForServiceTimeout: 30,\n },\n};\n\nexport const OS_NAME = {\n WINDOWS: 'windows',\n MAC: 'mac',\n IOS: 'ios',\n ANDROID: 'android',\n CHROME: 'chrome',\n LINUX: 'linux',\n OTHERS: 'other',\n};\n\nexport const OSMap = {\n 'Chrome OS': OS_NAME.CHROME,\n macOS: OS_NAME.MAC,\n Windows: OS_NAME.WINDOWS,\n iOS: OS_NAME.IOS,\n Android: OS_NAME.ANDROID,\n Linux: OS_NAME.LINUX,\n};\n"],"mappings":";;;;;;;AAIA,IAAAA,OAAA,GAAAC,OAAA;AAJA;AACA;AACA;;AAIO,IAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,cAAc;AAAC,IAAAE,QAAA,GAAAD,OAAA,CAAAE,OAAA,GAC3B;EACbC,MAAM,EAAE;IACNC,oBAAoB,EAAE;MACpBC,iBAAiB,EACfC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAI,2CAA2C;MAChFC,OAAO,EAAEH,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAI;IAC9C;EACF,CAAC;EACDC,OAAO,EAAE;IACPC,OAAO,EAAEC,iBAAS,GAAG,SAAS,GAAG,QAAQ;IACzCC,WAAW,EAAE,GAAG;IAChBC,eAAe,EAAE,EAAE;IACnBC,cAAc,EAAE,IAAI;IACpBC,mBAAmB,EAAE,KAAK;IAC1BC,qBAAqB,EAAE;EACzB;AACF,CAAC;AAEM,IAAMC,OAAO,GAAAjB,OAAA,CAAAiB,OAAA,GAAG;EACrBC,OAAO,EAAE,SAAS;EAClBC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE,KAAK;EACVC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdC,MAAM,EAAE;AACV,CAAC;AAEM,IAAMC,KAAK,GAAAzB,OAAA,CAAAyB,KAAA,GAAG;EACnB,WAAW,EAAER,OAAO,CAACK,MAAM;EAC3BI,KAAK,EAAET,OAAO,CAACE,GAAG;EAClBQ,OAAO,EAAEV,OAAO,CAACC,OAAO;EACxBU,GAAG,EAAEX,OAAO,CAACG,GAAG;EAChBS,OAAO,EAAEZ,OAAO,CAACI,OAAO;EACxBS,KAAK,EAAEb,OAAO,CAACM;AACjB,CAAC","ignoreList":[]}
@@ -10,18 +10,17 @@ exports.default = void 0;
10
10
  var _now = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/date/now"));
11
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
12
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
13
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
15
13
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
16
14
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
15
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
17
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
18
17
  var _webexCore = require("@webex/webex-core");
19
18
  var _common = require("@webex/common");
20
19
  var _lodash = require("lodash");
21
20
  var _clientMetricsBatcher = _interopRequireDefault(require("./client-metrics-batcher"));
22
21
  var _metrics = require("./metrics");
23
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
24
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
22
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
23
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
25
24
  var _BrowserDetection = (0, _common.BrowserDetection)(),
26
25
  getOSVersion = _BrowserDetection.getOSVersion,
27
26
  getBrowserName = _BrowserDetection.getBrowserName,
@@ -33,8 +32,6 @@ var _BrowserDetection = (0, _common.BrowserDetection)(),
33
32
  * @class GenericMetrics
34
33
  */
35
34
  var GenericMetrics = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
36
- (0, _inherits2.default)(GenericMetrics, _StatelessWebexPlugin);
37
- var _super = _createSuper(GenericMetrics);
38
35
  /**
39
36
  * Constructor
40
37
  * @param {any[]} args
@@ -45,15 +42,15 @@ var GenericMetrics = exports.default = /*#__PURE__*/function (_StatelessWebexPlu
45
42
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
46
43
  args[_key] = arguments[_key];
47
44
  }
48
- _this = _super.call.apply(_super, [this].concat(args));
45
+ _this = _callSuper(this, GenericMetrics, [].concat(args));
49
46
  // @ts-ignore
50
47
  // @ts-ignore
51
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "clientMetricsBatcher", void 0);
52
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "logger", void 0);
48
+ (0, _defineProperty2.default)(_this, "clientMetricsBatcher", void 0);
49
+ (0, _defineProperty2.default)(_this, "logger", void 0);
53
50
  // to avoid adding @ts-ignore everywhere
54
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "device", void 0);
55
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "version", void 0);
56
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "deviceId", '');
51
+ (0, _defineProperty2.default)(_this, "device", void 0);
52
+ (0, _defineProperty2.default)(_this, "version", void 0);
53
+ (0, _defineProperty2.default)(_this, "deviceId", '');
57
54
  _this.logger = _this.webex.logger;
58
55
  // @ts-ignore
59
56
  _this.clientMetricsBatcher = new _clientMetricsBatcher.default({}, {
@@ -73,7 +70,8 @@ var GenericMetrics = exports.default = /*#__PURE__*/function (_StatelessWebexPlu
73
70
  * @param {object} event
74
71
  * @returns {Promise<any>}
75
72
  */
76
- (0, _createClass2.default)(GenericMetrics, [{
73
+ (0, _inherits2.default)(GenericMetrics, _StatelessWebexPlugin);
74
+ return (0, _createClass2.default)(GenericMetrics, [{
77
75
  key: "submitEvent",
78
76
  value: function submitEvent(_ref) {
79
77
  var kind = _ref.kind,
@@ -179,6 +177,5 @@ var GenericMetrics = exports.default = /*#__PURE__*/function (_StatelessWebexPlu
179
177
  return event;
180
178
  }
181
179
  }]);
182
- return GenericMetrics;
183
180
  }(_webexCore.StatelessWebexPlugin);
184
181
  //# sourceMappingURL=generic-metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_webexCore","require","_common","_lodash","_clientMetricsBatcher","_interopRequireDefault","_metrics","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","_BrowserDetection","BrowserDetection","getOSVersion","getBrowserName","getBrowserVersion","GenericMetrics","exports","_StatelessWebexPlugin","_inherits2","_super","_this","_classCallCheck2","_len","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","logger","webex","clientMetricsBatcher","ClientMetricsBatcher","parent","device","internal","version","_createClass2","key","value","submitEvent","_ref","kind","name","event","log","request","getDeviceId","deviceId","url","n","lastIndexOf","substring","getContext","app","id","locale","window","navigator","language","os","getOSNameInternal","getBrowserDetails","browser","browserHeight","innerHeight","browserVersion","browserWidth","innerWidth","domain","location","hostname","inIframe","self","top","isReadyToSubmitEvents","createTaggedEventObject","_ref2","type","payload","allTags","merge","context","metricName","tags","timestamp","_now","StatelessWebexPlugin"],"sources":["generic-metrics.ts"],"sourcesContent":["import {StatelessWebexPlugin} from '@webex/webex-core';\nimport {BrowserDetection} from '@webex/common';\nimport {merge} from 'lodash';\nimport ClientMetricsBatcher from './client-metrics-batcher';\nimport {getOSNameInternal} from './metrics';\nimport {DeviceContext, TaggedEvent, EventPayload, MetricType} from './metrics.types';\n\nconst {getOSVersion, getBrowserName, getBrowserVersion} = BrowserDetection();\n\n/**\n * @description top-level abstract class to handle Metrics and common routines.\n * @export\n * @class GenericMetrics\n */\nexport default abstract class GenericMetrics extends StatelessWebexPlugin {\n // @ts-ignore\n private clientMetricsBatcher: ClientMetricsBatcher;\n private logger: any; // to avoid adding @ts-ignore everywhere\n private device: any;\n private version: string;\n private deviceId = '';\n\n /**\n * Constructor\n * @param {any[]} args\n */\n constructor(...args) {\n super(...args);\n // @ts-ignore\n this.logger = this.webex.logger;\n // @ts-ignore\n this.clientMetricsBatcher = new ClientMetricsBatcher({}, {parent: this.webex});\n // @ts-ignore\n this.device = this.webex.internal.device;\n // @ts-ignore\n this.version = this.webex.version;\n }\n\n /**\n * Submit a business metric to our metrics endpoint.\n * @param {string} kind of metric for logging\n * @param {string} name of the metric\n * @param {object} event\n * @returns {Promise<any>}\n */\n protected submitEvent({kind, name, event}: {kind: string; name: string; event: object}) {\n this.logger.log(kind, `@submitEvent. Submit event: ${name}`);\n\n return this.clientMetricsBatcher.request(event);\n }\n\n /**\n * Returns the deviceId from our registration with WDM.\n * @returns {string} deviceId or empty string\n */\n protected getDeviceId(): string {\n if (this.deviceId === '') {\n const {url} = this.device;\n if (url && url.length !== 0) {\n const n = url.lastIndexOf('/');\n if (n !== -1) {\n this.deviceId = url.substring(n + 1);\n }\n }\n }\n\n return this.deviceId;\n }\n\n /**\n * Returns the context object to be submitted with all metrics.\n * @returns {DeviceContext}\n */\n protected getContext(): DeviceContext {\n return {\n app: {\n version: this.version,\n },\n device: {\n id: this.getDeviceId(),\n },\n locale: window.navigator.language,\n os: {\n name: getOSNameInternal(),\n version: getOSVersion(),\n },\n };\n }\n\n /**\n * Returns the browser details to be included with all metrics.\n * @returns {object}\n */\n protected getBrowserDetails(): object {\n return {\n browser: getBrowserName(),\n browserHeight: window.innerHeight,\n browserVersion: getBrowserVersion(),\n browserWidth: window.innerWidth,\n domain: window.location.hostname,\n inIframe: window.self !== window.top,\n locale: window.navigator.language,\n os: getOSNameInternal(),\n };\n }\n\n /**\n * Returns true once we have the deviceId we need to submit behavioral/operational/business events\n * @returns {boolean}\n */\n public isReadyToSubmitEvents(): boolean {\n const deviceId = this.getDeviceId();\n\n return deviceId && deviceId.length !== 0;\n }\n\n /**\n * Creates the object to send to our metrics endpoint for a tagged event (i.e. behavoral or operational)\n * @param {[MetricType]} list of event type (i.e. ['behavioral'], ['operational', 'behavioral'])\n * @param {string} metric name\n * @param {EventPayload} user payload\n * @returns {EventPayload}\n */\n protected createTaggedEventObject({\n type,\n name,\n payload,\n }: {\n type: [MetricType];\n name: string;\n payload: EventPayload;\n }): TaggedEvent {\n let allTags: EventPayload = payload;\n allTags = merge(allTags, this.getBrowserDetails());\n\n const event = {\n context: this.getContext(),\n metricName: name,\n tags: allTags,\n timestamp: Date.now(),\n type,\n };\n\n return event;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_webexCore","require","_common","_lodash","_clientMetricsBatcher","_interopRequireDefault","_metrics","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","constructor","apply","Boolean","prototype","valueOf","call","_BrowserDetection","BrowserDetection","getOSVersion","getBrowserName","getBrowserVersion","GenericMetrics","exports","_StatelessWebexPlugin","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","logger","webex","clientMetricsBatcher","ClientMetricsBatcher","parent","device","internal","version","_inherits2","_createClass2","key","value","submitEvent","_ref","kind","name","event","log","request","getDeviceId","deviceId","url","n","lastIndexOf","substring","getContext","app","id","locale","window","navigator","language","os","getOSNameInternal","getBrowserDetails","browser","browserHeight","innerHeight","browserVersion","browserWidth","innerWidth","domain","location","hostname","inIframe","self","top","isReadyToSubmitEvents","createTaggedEventObject","_ref2","type","payload","allTags","merge","context","metricName","tags","timestamp","_now","StatelessWebexPlugin"],"sources":["generic-metrics.ts"],"sourcesContent":["import {StatelessWebexPlugin} from '@webex/webex-core';\nimport {BrowserDetection} from '@webex/common';\nimport {merge} from 'lodash';\nimport ClientMetricsBatcher from './client-metrics-batcher';\nimport {getOSNameInternal} from './metrics';\nimport {DeviceContext, TaggedEvent, EventPayload, MetricType} from './metrics.types';\n\nconst {getOSVersion, getBrowserName, getBrowserVersion} = BrowserDetection();\n\n/**\n * @description top-level abstract class to handle Metrics and common routines.\n * @export\n * @class GenericMetrics\n */\nexport default abstract class GenericMetrics extends StatelessWebexPlugin {\n // @ts-ignore\n private clientMetricsBatcher: ClientMetricsBatcher;\n private logger: any; // to avoid adding @ts-ignore everywhere\n private device: any;\n private version: string;\n private deviceId = '';\n\n /**\n * Constructor\n * @param {any[]} args\n */\n constructor(...args) {\n super(...args);\n // @ts-ignore\n this.logger = this.webex.logger;\n // @ts-ignore\n this.clientMetricsBatcher = new ClientMetricsBatcher({}, {parent: this.webex});\n // @ts-ignore\n this.device = this.webex.internal.device;\n // @ts-ignore\n this.version = this.webex.version;\n }\n\n /**\n * Submit a business metric to our metrics endpoint.\n * @param {string} kind of metric for logging\n * @param {string} name of the metric\n * @param {object} event\n * @returns {Promise<any>}\n */\n protected submitEvent({kind, name, event}: {kind: string; name: string; event: object}) {\n this.logger.log(kind, `@submitEvent. Submit event: ${name}`);\n\n return this.clientMetricsBatcher.request(event);\n }\n\n /**\n * Returns the deviceId from our registration with WDM.\n * @returns {string} deviceId or empty string\n */\n protected getDeviceId(): string {\n if (this.deviceId === '') {\n const {url} = this.device;\n if (url && url.length !== 0) {\n const n = url.lastIndexOf('/');\n if (n !== -1) {\n this.deviceId = url.substring(n + 1);\n }\n }\n }\n\n return this.deviceId;\n }\n\n /**\n * Returns the context object to be submitted with all metrics.\n * @returns {DeviceContext}\n */\n protected getContext(): DeviceContext {\n return {\n app: {\n version: this.version,\n },\n device: {\n id: this.getDeviceId(),\n },\n locale: window.navigator.language,\n os: {\n name: getOSNameInternal(),\n version: getOSVersion(),\n },\n };\n }\n\n /**\n * Returns the browser details to be included with all metrics.\n * @returns {object}\n */\n protected getBrowserDetails(): object {\n return {\n browser: getBrowserName(),\n browserHeight: window.innerHeight,\n browserVersion: getBrowserVersion(),\n browserWidth: window.innerWidth,\n domain: window.location.hostname,\n inIframe: window.self !== window.top,\n locale: window.navigator.language,\n os: getOSNameInternal(),\n };\n }\n\n /**\n * Returns true once we have the deviceId we need to submit behavioral/operational/business events\n * @returns {boolean}\n */\n public isReadyToSubmitEvents(): boolean {\n const deviceId = this.getDeviceId();\n\n return deviceId && deviceId.length !== 0;\n }\n\n /**\n * Creates the object to send to our metrics endpoint for a tagged event (i.e. behavoral or operational)\n * @param {[MetricType]} list of event type (i.e. ['behavioral'], ['operational', 'behavioral'])\n * @param {string} metric name\n * @param {EventPayload} user payload\n * @returns {EventPayload}\n */\n protected createTaggedEventObject({\n type,\n name,\n payload,\n }: {\n type: [MetricType];\n name: string;\n payload: EventPayload;\n }): TaggedEvent {\n let allTags: EventPayload = payload;\n allTags = merge(allTags, this.getBrowserDetails());\n\n const event = {\n context: this.getContext(),\n metricName: name,\n tags: allTags,\n timestamp: Date.now(),\n type,\n };\n\n return event;\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/dist/index.js CHANGED
@@ -87,8 +87,7 @@ var _behavioralMetrics = _interopRequireDefault(require("./behavioral-metrics"))
87
87
  var _operationalMetrics = _interopRequireDefault(require("./operational-metrics"));
88
88
  var _businessMetrics = _interopRequireDefault(require("./business-metrics"));
89
89
  var _rtcMetrics = _interopRequireDefault(require("./rtcMetrics"));
90
- function _getRequireWildcardCache(e) { if ("function" != typeof _WeakMap) return null; var r = new _WeakMap(), t = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
91
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? _Object$getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? _Object$defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
90
+ function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
92
91
  /*!
93
92
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
94
93
  */