{"version":3,"sources":["webpack:///./node_modules/@microsoft/applicationinsights-dependencies-js/dist-esm/ajaxRecord.js","webpack:///./node_modules/@microsoft/applicationinsights-dependencies-js/dist-esm/ajax.js"],"names":["strProperties","_calcPerfDuration","resourceEntry","start","end","result","from","to","_setPerfDuration","props","name","value","_setPerfValue","strPerf","perfData","_populatePerfData","ajaxData","dependency","perfTiming","propsSet","strName","strStart","strEnd","strDomainLookup","strConnect","strRedirect","strRequest","strResponse","strDuration","strStartTime","strDomainLookupStart","strDomainLookupEnd","strConnectStart","strConnectEnd","strRequestStart","strRequestEnd","strResponseStart","strResponseEnd","strRedirectStart","strRedirectEnd","strTransferSize","strEncodedBodySize","strDecodedBodySize","strServerTiming","duration","serverTiming","server_1","idx","newValue","key","val","perfMark","perfAttempts","XHRMonitoringState","self","this","openDone","setRequestHeaderDone","sendDone","abortDone","stateChangeAttached","ajaxRecord","traceID","spanID","logger","_logger","strResponseText","completed","requestHeadersSize","requestHeaders","responseReceivingDuration","callbackDuration","ajaxTotalDuration","aborted","pageUrl","requestUrl","requestSize","method","status","requestSentTime","responseStartedTime","responseFinishedTime","callbackFinishedTime","endTime","xhrMonitoringState","clientFailure","getAbsoluteUrl","getPathName","CreateTrackItem","ajaxType","enableRequestHeaderTracking","getResponse","_a","Math","round","id","target","type","startTime","success","responseCode","HttpMethod","Date","setTime","length","response","correlationContext","headerMap","responseHeaders","errorStatusText","responseType","statusText","JSON","stringify","AJAX_MONITOR_PREFIX","strDiagLog","strAjaxData","strFetch","strTrackDependencyDataInternal","_markCount","_supportsFetch","_global","Request","_supportsAjaxMonitoring","ajaxMonitorInstance","proto","XMLHttpRequest","open","send","abort","ieVer","xhr","theOpen","e","_throwInternalCritical","exception","_getFailedAjaxDiagnosticsMessage","msgId","message","properties","isUserAct","_throwInternalWarning","_createErrorCallbackFunc","internalMessage","args","ajaxDiagnosticsMessage","inst","err","_indexOf","match","indexOf","_super","AjaxMonitor","_fetchInitialized","_xhrInitialized","_currentWindowHost","_config","_enableRequestHeaderTracking","_enableAjaxErrorStatusText","_trackAjaxAttempts","_context","_isUsingW3CHeaders","_isUsingAIHeaders","_markPrefix","_enableAjaxPerfTracking","_maxAjaxCallsPerView","_enableResponseHeaderTracking","_disabledUrls","_disableAjaxTracking","_disableFetchTracking","_excludeRequestFromAutoTrackingPatterns","_addRequestContext","_evtNamespace","_this","call","identifier","priority","_self","_base","_addHook","_initDefaults","location","host","toLowerCase","getEmptyConfig","_populateDefaults","config","ctx","core","defaultConfig","getDefaultConfig","field","getConfig","distributedTracingMode","enableAjaxErrorStatusText","enableAjaxPerfTracking","maxAjaxCallsPerView","enableResponseHeaderTracking","excludeRequestFromAutoTrackingPatterns","addRequestContext","iKey","instrumentationKey","substring","disableAjaxTracking","disableFetchTracking","_populateContext","propExt","getPlugin","plugin","context","_canIncludeHeaders","header","rlt","ignoreHeaders","_instrumentFetch","fetch","global","isPolyfill","polyfill","ns","req","callDetails","input","init","_isDisabledRequest","fetchData","_createFetchRecord","newInit","includeCorrelationHeaders","set","data","rsp","fetchData_1","rslt","then","_reportFetchMetrics","ajaxResponse","_getFetchCorrelationContext","responseHeaderMap_1","headers","forEach","reason","error","hkErr","_hookProto","funcName","callbacks","_instrumentXhr","url","async","_isMonitoredXhrInstance","_openHandler","_attachToOnReadyStateChange","_createMarkId","undefined","request","isDisabled","theUrl","regex","theRegex","RegExp","test","idx2","excludeAjaxDataValidation","ajaxValidation","initialized","telemetryTrace","substr","readyState","_onAjaxComplete","exceptionText","_getResponseText","responseText","_reportXhrError","failedProps","errorProps","_findPerfResourceEntry","_getAjaxCorrelationContext","getAllResponseHeaders","arr","split","responseHeaderMap_2","line","parts","shift","join","responseHeadersString","index","responseHeader","getResponseHeader","getCorrelationContext","performance_1","mark","markId","entries","getEntriesByName","initiatorType","trackCallback","reportError","performance","maxAttempts","maxAjaxPerfLookupAttempts","retryDelay","ajaxPerfLookupDelay","attempt","locateResourceTiming","getEntries","lp","entry","entryType","clearMarks","setTimeout","Headers","_getFailedFetchDiagnosticsMessage","concat","_reportFetchError","get","fetchDiagnosticsMessage","initialize","extensions","pluginChain","isInitialized","evtNamespace","_doTeardown","trackDependencyData","currentWindowHost","canIncludeCorrelationHeader","appId","traceParent","setRequestHeader","systemProperties","item","RemoteDependencyData","dataType","envelopeType","track","disableCorrelationHeaders","correlationHeaderExcludedDomains","correlationHeaderDomains","correlationHeaderExcludePatterns","enableCorsCorrelation","emptyConfig","prototype","processTelemetry","itemCtx","processNext","BaseTelemetryPlugin"],"mappings":"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","file":"js/chunk-vendors~0b7f43b9.0c1c26ca.js","sourcesContent":["/*\n * Application Insights JavaScript SDK - Dependencies Plugin, 2.8.3\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { dataSanitizeUrl, dateTimeUtilsDuration, urlGetAbsoluteUrl, urlGetCompleteUrl, msToTimeSpan } from \"@microsoft/applicationinsights-common\";\r\nimport { objKeys, arrForEach, isNumber, isString, normalizeJsName, objForEachKey } from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nvar strProperties = \"properties\";\r\n/** @ignore */\r\nfunction _calcPerfDuration(resourceEntry, start, end) {\r\n var result = 0;\r\n var from = resourceEntry[start];\r\n var to = resourceEntry[end];\r\n if (from && to) {\r\n result = dateTimeUtilsDuration(from, to);\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _setPerfDuration(props, name, resourceEntry, start, end) {\r\n var result = 0;\r\n var value = _calcPerfDuration(resourceEntry, start, end);\r\n if (value) {\r\n result = _setPerfValue(props, name, msToTimeSpan(value));\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _setPerfValue(props, name, value) {\r\n var strPerf = \"ajaxPerf\";\r\n var result = 0;\r\n if (props && name && value) {\r\n var perfData = props[strPerf] = (props[strPerf] || {});\r\n perfData[name] = value;\r\n result = 1;\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _populatePerfData(ajaxData, dependency) {\r\n /*\r\n * https://developer.mozilla.org/en-US/docs/Web/API/Resource_Timing_API/Using_the_Resource_Timing_API\r\n * | -startTime\r\n * | -redirectStart\r\n * | | -redirectEnd\r\n * | | | -fetchStart\r\n * | | | | -domainLookupStart\r\n * | | | | |- domainLookupEnd\r\n * | | | | | | -connectStart\r\n * | | | | | | | -secureConnectionStart\r\n * | | | | | | | | -connectEnd\r\n * | | | | | | | | | -requestStart\r\n * | | | | | | | | | | | -responseStart\r\n * | | | | | | | | | | | | | -responseEnd\r\n * +------------+-+---+----------------+-+--+--------+-+-----------+-+------------+-+\r\n * |--redirect--| |---|--domainLookup--| |--connect--| |--request--| |--response--| |\r\n * |-------------------networkConnect----------------|\r\n * | |---------sentRequest--------|\r\n * |------------------------------------perfTotal-----------------------------------|\r\n */\r\n var resourceEntry = ajaxData.perfTiming;\r\n var props = dependency[strProperties] || {};\r\n var propsSet = 0;\r\n var strName = \"name\";\r\n var strStart = \"Start\";\r\n var strEnd = \"End\";\r\n var strDomainLookup = \"domainLookup\";\r\n var strConnect = \"connect\";\r\n var strRedirect = \"redirect\";\r\n var strRequest = \"request\";\r\n var strResponse = \"response\";\r\n var strDuration = \"duration\";\r\n var strStartTime = \"startTime\";\r\n var strDomainLookupStart = strDomainLookup + strStart;\r\n var strDomainLookupEnd = strDomainLookup + strEnd;\r\n var strConnectStart = strConnect + strStart;\r\n var strConnectEnd = strConnect + strEnd;\r\n var strRequestStart = strRequest + strStart;\r\n var strRequestEnd = strRequest + strEnd;\r\n var strResponseStart = strResponse + strStart;\r\n var strResponseEnd = strResponse + strEnd;\r\n var strRedirectStart = strRedirect + strStart;\r\n var strRedirectEnd = strRedirect = strEnd;\r\n var strTransferSize = \"transferSize\";\r\n var strEncodedBodySize = \"encodedBodySize\";\r\n var strDecodedBodySize = \"decodedBodySize\";\r\n var strServerTiming = \"serverTiming\";\r\n if (resourceEntry) {\r\n // redirect\r\n propsSet |= _setPerfDuration(props, strRedirect, resourceEntry, strRedirectStart, strRedirectEnd);\r\n // domainLookup\r\n propsSet |= _setPerfDuration(props, strDomainLookup, resourceEntry, strDomainLookupStart, strDomainLookupEnd);\r\n // connect\r\n propsSet |= _setPerfDuration(props, strConnect, resourceEntry, strConnectStart, strConnectEnd);\r\n // request\r\n propsSet |= _setPerfDuration(props, strRequest, resourceEntry, strRequestStart, strRequestEnd);\r\n // response\r\n propsSet |= _setPerfDuration(props, strResponse, resourceEntry, strResponseStart, strResponseEnd);\r\n // Network connection time\r\n propsSet |= _setPerfDuration(props, \"networkConnect\", resourceEntry, strStartTime, strConnectEnd);\r\n // Sent Request\r\n propsSet |= _setPerfDuration(props, \"sentRequest\", resourceEntry, strRequestStart, strResponseEnd);\r\n // PerfTotal / Duration\r\n var duration = resourceEntry[strDuration];\r\n if (!duration) {\r\n duration = _calcPerfDuration(resourceEntry, strStartTime, strResponseEnd) || 0;\r\n }\r\n propsSet |= _setPerfValue(props, strDuration, duration);\r\n propsSet |= _setPerfValue(props, \"perfTotal\", duration);\r\n var serverTiming = resourceEntry[strServerTiming];\r\n if (serverTiming) {\r\n var server_1 = {};\r\n arrForEach(serverTiming, function (value, idx) {\r\n var name = normalizeJsName(value[strName] || \"\" + idx);\r\n var newValue = server_1[name] || {};\r\n objForEachKey(value, function (key, val) {\r\n if (key !== strName && isString(val) || isNumber(val)) {\r\n if (newValue[key]) {\r\n val = newValue[key] + \";\" + val;\r\n }\r\n if (val || !isString(val)) {\r\n // Only set the value if it has a value and it's not an empty string\r\n newValue[key] = val;\r\n }\r\n }\r\n });\r\n server_1[name] = newValue;\r\n });\r\n propsSet |= _setPerfValue(props, strServerTiming, server_1);\r\n }\r\n propsSet |= _setPerfValue(props, strTransferSize, resourceEntry[strTransferSize]);\r\n propsSet |= _setPerfValue(props, strEncodedBodySize, resourceEntry[strEncodedBodySize]);\r\n propsSet |= _setPerfValue(props, strDecodedBodySize, resourceEntry[strDecodedBodySize]);\r\n }\r\n else {\r\n if (ajaxData.perfMark) {\r\n propsSet |= _setPerfValue(props, \"missing\", ajaxData.perfAttempts);\r\n }\r\n }\r\n if (propsSet) {\r\n dependency[strProperties] = props;\r\n }\r\n}\r\nvar XHRMonitoringState = /** @class */ (function () {\r\n function XHRMonitoringState() {\r\n var self = this;\r\n self.openDone = false;\r\n self.setRequestHeaderDone = false;\r\n self.sendDone = false;\r\n self.abortDone = false;\r\n // True, if onreadyStateChangeCallback function attached to xhr, otherwise false\r\n self.stateChangeAttached = false;\r\n }\r\n return XHRMonitoringState;\r\n}());\r\nexport { XHRMonitoringState };\r\nvar ajaxRecord = /** @class */ (function () {\r\n function ajaxRecord(traceID, spanID, logger) {\r\n var self = this;\r\n var _logger = logger;\r\n var strResponseText = \"responseText\";\r\n // Assigning the initial/default values within the constructor to avoid typescript from creating a bunch of\r\n // this.XXXX = null\r\n self.perfMark = null;\r\n self.completed = false;\r\n self.requestHeadersSize = null;\r\n self.requestHeaders = null;\r\n self.responseReceivingDuration = null;\r\n self.callbackDuration = null;\r\n self.ajaxTotalDuration = null;\r\n self.aborted = 0;\r\n self.pageUrl = null;\r\n self.requestUrl = null;\r\n self.requestSize = 0;\r\n self.method = null;\r\n self.status = null;\r\n self.requestSentTime = null;\r\n self.responseStartedTime = null;\r\n self.responseFinishedTime = null;\r\n self.callbackFinishedTime = null;\r\n self.endTime = null;\r\n self.xhrMonitoringState = new XHRMonitoringState();\r\n self.clientFailure = 0;\r\n self.traceID = traceID;\r\n self.spanID = spanID;\r\n dynamicProto(ajaxRecord, self, function (self) {\r\n self.getAbsoluteUrl = function () {\r\n return self.requestUrl ? urlGetAbsoluteUrl(self.requestUrl) : null;\r\n };\r\n self.getPathName = function () {\r\n return self.requestUrl ? dataSanitizeUrl(_logger, urlGetCompleteUrl(self.method, self.requestUrl)) : null;\r\n };\r\n self.CreateTrackItem = function (ajaxType, enableRequestHeaderTracking, getResponse) {\r\n var _a;\r\n // round to 3 decimal points\r\n self.ajaxTotalDuration = Math.round(dateTimeUtilsDuration(self.requestSentTime, self.responseFinishedTime) * 1000) / 1000;\r\n if (self.ajaxTotalDuration < 0) {\r\n return null;\r\n }\r\n var dependency = (_a = {\r\n id: \"|\" + self.traceID + \".\" + self.spanID,\r\n target: self.getAbsoluteUrl(),\r\n name: self.getPathName(),\r\n type: ajaxType,\r\n startTime: null,\r\n duration: self.ajaxTotalDuration,\r\n success: (+(self.status)) >= 200 && (+(self.status)) < 400,\r\n responseCode: (+(self.status)),\r\n method: self.method\r\n },\r\n _a[strProperties] = { HttpMethod: self.method },\r\n _a);\r\n if (self.requestSentTime) {\r\n // Set the correct dependency start time\r\n dependency.startTime = new Date();\r\n dependency.startTime.setTime(self.requestSentTime);\r\n }\r\n // Add Ajax perf details if available\r\n _populatePerfData(self, dependency);\r\n if (enableRequestHeaderTracking) {\r\n if (objKeys(self.requestHeaders).length > 0) {\r\n dependency[strProperties] = dependency[strProperties] || {};\r\n dependency[strProperties].requestHeaders = self.requestHeaders;\r\n }\r\n }\r\n if (getResponse) {\r\n var response = getResponse();\r\n if (response) {\r\n // enrich dependency target with correlation context from the server\r\n var correlationContext = response.correlationContext;\r\n if (correlationContext) {\r\n dependency.correlationContext = /* dependency.target + \" | \" + */ correlationContext;\r\n }\r\n if (response.headerMap) {\r\n if (objKeys(response.headerMap).length > 0) {\r\n dependency[strProperties] = dependency[strProperties] || {};\r\n dependency[strProperties].responseHeaders = response.headerMap;\r\n }\r\n }\r\n if (self.errorStatusText && self.status >= 400) {\r\n var responseType = response.type;\r\n dependency[strProperties] = dependency[strProperties] || {};\r\n if (responseType === \"\" || responseType === \"text\") {\r\n dependency[strProperties][strResponseText] = response[strResponseText] ? response.statusText + \" - \" + response[strResponseText] : response.statusText;\r\n }\r\n if (responseType === \"json\") {\r\n dependency[strProperties][strResponseText] = response.response ? response.statusText + \" - \" + JSON.stringify(response.response) : response.statusText;\r\n }\r\n }\r\n }\r\n }\r\n return dependency;\r\n };\r\n });\r\n }\r\n// Removed Stub for ajaxRecord.prototype.getAbsoluteUrl.\r\n// Removed Stub for ajaxRecord.prototype.getPathName.\r\n// Removed Stub for ajaxRecord.prototype.CreateTrackItem.\r\n return ajaxRecord;\r\n}());\r\nexport { ajaxRecord };\r\n//# sourceMappingURL=ajaxRecord.js.map","/*\n * Application Insights JavaScript SDK - Dependencies Plugin, 2.8.3\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { __assignFn as __assign, __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\nimport { RequestHeaders, CorrelationIdHelper, createTelemetryItem, RemoteDependencyData, dateTimeUtilsNow, DisabledPropertyName, PropertiesPluginIdentifier, isInternalApplicationInsightsEndpoint, formatTraceParent, createTraceParent } from \"@microsoft/applicationinsights-common\";\r\nimport { isNullOrUndefined, arrForEach, isString, strTrim, isFunction, BaseTelemetryPlugin, getLocation, getGlobal, strPrototype, InstrumentFunc, InstrumentProto, getPerformance, objForEachKey, generateW3CId, getIEVersion, dumpObj, isXhrSupported, eventOn, mergeEvtNamespace, createUniqueNamespace, createProcessTelemetryContext, _throwInternal } from \"@microsoft/applicationinsights-core-js\";\r\nimport { ajaxRecord } from \"./ajaxRecord\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nvar AJAX_MONITOR_PREFIX = \"ai.ajxmn.\";\r\nvar strDiagLog = \"diagLog\";\r\nvar strAjaxData = \"ajaxData\";\r\nvar strFetch = \"fetch\";\r\nvar strTrackDependencyDataInternal = \"trackDependencyDataInternal\"; // Using string to help with minification\r\n// Using a global value so that to handle same iKey with multiple app insights instances (mostly for testing)\r\nvar _markCount = 0;\r\n/** @Ignore */\r\nfunction _supportsFetch() {\r\n var _global = getGlobal();\r\n if (!_global ||\r\n isNullOrUndefined(_global.Request) ||\r\n isNullOrUndefined(_global.Request[strPrototype]) ||\r\n isNullOrUndefined(_global[strFetch])) {\r\n return null;\r\n }\r\n return _global[strFetch];\r\n}\r\n/**\r\n * Determines whether ajax monitoring can be enabled on this document\r\n * @returns True if Ajax monitoring is supported on this page, otherwise false\r\n * @ignore\r\n */\r\nfunction _supportsAjaxMonitoring(ajaxMonitorInstance) {\r\n var result = false;\r\n if (isXhrSupported()) {\r\n var proto = XMLHttpRequest[strPrototype];\r\n result = !isNullOrUndefined(proto) &&\r\n !isNullOrUndefined(proto.open) && // eslint-disable-line security/detect-non-literal-fs-filename -- false positive\r\n !isNullOrUndefined(proto.send) &&\r\n !isNullOrUndefined(proto.abort);\r\n }\r\n var ieVer = getIEVersion();\r\n if (ieVer && ieVer < 9) {\r\n result = false;\r\n }\r\n if (result) {\r\n // Disable if the XmlHttpRequest can't be extended or hooked\r\n try {\r\n var xhr = new XMLHttpRequest();\r\n xhr[strAjaxData] = {};\r\n // Check that we can update the prototype\r\n var theOpen = XMLHttpRequest[strPrototype].open;\r\n XMLHttpRequest[strPrototype].open = theOpen;\r\n }\r\n catch (e) {\r\n // We can't decorate the xhr object so disable monitoring\r\n result = false;\r\n _throwInternalCritical(ajaxMonitorInstance, 15 /* FailedMonitorAjaxOpen */, \"Failed to enable XMLHttpRequest monitoring, extension is not supported\", {\r\n exception: dumpObj(e)\r\n });\r\n }\r\n }\r\n return result;\r\n}\r\n/** @Ignore */\r\nfunction _getFailedAjaxDiagnosticsMessage(xhr) {\r\n var result = \"\";\r\n try {\r\n if (!isNullOrUndefined(xhr) &&\r\n !isNullOrUndefined(xhr[strAjaxData]) &&\r\n !isNullOrUndefined(xhr[strAjaxData].requestUrl)) {\r\n result += \"(url: '\" + xhr[strAjaxData].requestUrl + \"')\";\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _throwInternalCritical(ajaxMonitorInstance, msgId, message, properties, isUserAct) {\r\n _throwInternal(ajaxMonitorInstance[strDiagLog](), 1 /* CRITICAL */, msgId, message, properties, isUserAct);\r\n}\r\n/** @ignore */\r\nfunction _throwInternalWarning(ajaxMonitorInstance, msgId, message, properties, isUserAct) {\r\n _throwInternal(ajaxMonitorInstance[strDiagLog](), 2 /* WARNING */, msgId, message, properties, isUserAct);\r\n}\r\n/** @Ignore */\r\nfunction _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, message) {\r\n // tslint:disable-next-line\r\n return function (args) {\r\n _throwInternalCritical(ajaxMonitorInstance, internalMessage, message, {\r\n ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(args.inst),\r\n exception: dumpObj(args.err)\r\n });\r\n };\r\n}\r\nfunction _indexOf(value, match) {\r\n if (value && match) {\r\n return value.indexOf(match);\r\n }\r\n return -1;\r\n}\r\nvar AjaxMonitor = /** @class */ (function (_super) {\r\n __extends(AjaxMonitor, _super);\r\n function AjaxMonitor() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = AjaxMonitor.identifier;\r\n _this.priority = 120;\r\n var _fetchInitialized; // fetch monitoring initialized\r\n var _xhrInitialized; // XHR monitoring initialized\r\n var _currentWindowHost;\r\n var _config;\r\n var _enableRequestHeaderTracking;\r\n var _enableAjaxErrorStatusText;\r\n var _trackAjaxAttempts;\r\n var _context;\r\n var _isUsingW3CHeaders;\r\n var _isUsingAIHeaders;\r\n var _markPrefix;\r\n var _enableAjaxPerfTracking;\r\n var _maxAjaxCallsPerView;\r\n var _enableResponseHeaderTracking;\r\n var _disabledUrls;\r\n var _disableAjaxTracking;\r\n var _disableFetchTracking;\r\n var _excludeRequestFromAutoTrackingPatterns;\r\n var _addRequestContext;\r\n var _evtNamespace;\r\n dynamicProto(AjaxMonitor, _this, function (_self, _base) {\r\n var _addHook = _base._addHook;\r\n _initDefaults();\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (!_self.isInitialized()) {\r\n _base.initialize(config, core, extensions, pluginChain);\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(\"ajax\"), core && core.evtNamespace && core.evtNamespace());\r\n _populateDefaults(config);\r\n _instrumentXhr();\r\n _instrumentFetch();\r\n _populateContext();\r\n }\r\n };\r\n _self._doTeardown = function () {\r\n _initDefaults();\r\n };\r\n _self.trackDependencyData = function (dependency, properties) {\r\n _self[strTrackDependencyDataInternal](dependency, properties);\r\n };\r\n _self.includeCorrelationHeaders = function (ajaxData, input, init, xhr) {\r\n // Test Hook to allow the overriding of the location host\r\n var currentWindowHost = _self[\"_currentWindowHost\"] || _currentWindowHost;\r\n if (input) { // Fetch\r\n if (CorrelationIdHelper.canIncludeCorrelationHeader(_config, ajaxData.getAbsoluteUrl(), currentWindowHost)) {\r\n if (!init) {\r\n init = {};\r\n }\r\n // init headers override original request headers\r\n // so, if they exist use only them, otherwise use request's because they should have been applied in the first place\r\n // not using original request headers will result in them being lost\r\n init.headers = new Headers(init.headers || (input instanceof Request ? (input.headers || {}) : {}));\r\n if (_isUsingAIHeaders) {\r\n var id = \"|\" + ajaxData.traceID + \".\" + ajaxData.spanID;\r\n init.headers.set(RequestHeaders[3 /* requestIdHeader */], id);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData.requestHeaders[RequestHeaders[3 /* requestIdHeader */]] = id;\r\n }\r\n }\r\n var appId = _config.appId || (_context && _context.appId());\r\n if (appId) {\r\n init.headers.set(RequestHeaders[0 /* requestContextHeader */], RequestHeaders[2 /* requestContextAppIdFormat */] + appId);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData.requestHeaders[RequestHeaders[0 /* requestContextHeader */]] = RequestHeaders[2 /* requestContextAppIdFormat */] + appId;\r\n }\r\n }\r\n if (_isUsingW3CHeaders) {\r\n var traceParent = formatTraceParent(createTraceParent(ajaxData.traceID, ajaxData.spanID, 0x01));\r\n init.headers.set(RequestHeaders[4 /* traceParentHeader */], traceParent);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData.requestHeaders[RequestHeaders[4 /* traceParentHeader */]] = traceParent;\r\n }\r\n }\r\n }\r\n return init;\r\n }\r\n else if (xhr) { // XHR\r\n if (CorrelationIdHelper.canIncludeCorrelationHeader(_config, ajaxData.getAbsoluteUrl(), currentWindowHost)) {\r\n if (_isUsingAIHeaders) {\r\n var id = \"|\" + ajaxData.traceID + \".\" + ajaxData.spanID;\r\n xhr.setRequestHeader(RequestHeaders[3 /* requestIdHeader */], id);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData.requestHeaders[RequestHeaders[3 /* requestIdHeader */]] = id;\r\n }\r\n }\r\n var appId = _config.appId || (_context && _context.appId());\r\n if (appId) {\r\n xhr.setRequestHeader(RequestHeaders[0 /* requestContextHeader */], RequestHeaders[2 /* requestContextAppIdFormat */] + appId);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData.requestHeaders[RequestHeaders[0 /* requestContextHeader */]] = RequestHeaders[2 /* requestContextAppIdFormat */] + appId;\r\n }\r\n }\r\n if (_isUsingW3CHeaders) {\r\n var traceParent = formatTraceParent(createTraceParent(ajaxData.traceID, ajaxData.spanID, 0x01));\r\n xhr.setRequestHeader(RequestHeaders[4 /* traceParentHeader */], traceParent);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData.requestHeaders[RequestHeaders[4 /* traceParentHeader */]] = traceParent;\r\n }\r\n }\r\n }\r\n return xhr;\r\n }\r\n return undefined;\r\n };\r\n _self[strTrackDependencyDataInternal] = function (dependency, properties, systemProperties) {\r\n if (_maxAjaxCallsPerView === -1 || _trackAjaxAttempts < _maxAjaxCallsPerView) {\r\n // Hack since expected format in w3c mode is |abc.def.\r\n // Non-w3c format is |abc.def\r\n // @todo Remove if better solution is available, e.g. handle in portal\r\n if ((_config.distributedTracingMode === 2 /* W3C */\r\n || _config.distributedTracingMode === 1 /* AI_AND_W3C */)\r\n && typeof dependency.id === \"string\" && dependency.id[dependency.id.length - 1] !== \".\") {\r\n dependency.id += \".\";\r\n }\r\n if (isNullOrUndefined(dependency.startTime)) {\r\n dependency.startTime = new Date();\r\n }\r\n var item = createTelemetryItem(dependency, RemoteDependencyData.dataType, RemoteDependencyData.envelopeType, _self[strDiagLog](), properties, systemProperties);\r\n _self.core.track(item);\r\n }\r\n else if (_trackAjaxAttempts === _maxAjaxCallsPerView) {\r\n _throwInternalCritical(_self, 55 /* MaxAjaxPerPVExceeded */, \"Maximum ajax per page view limit reached, ajax monitoring is paused until the next trackPageView(). In order to increase the limit set the maxAjaxCallsPerView configuration parameter.\", true);\r\n }\r\n ++_trackAjaxAttempts;\r\n };\r\n function _initDefaults() {\r\n var location = getLocation();\r\n _fetchInitialized = false; // fetch monitoring initialized\r\n _xhrInitialized = false; // XHR monitoring initialized\r\n _currentWindowHost = location && location.host && location.host.toLowerCase();\r\n _config = AjaxMonitor.getEmptyConfig();\r\n _enableRequestHeaderTracking = false;\r\n _enableAjaxErrorStatusText = false;\r\n _trackAjaxAttempts = 0;\r\n _context = null;\r\n _isUsingW3CHeaders = false;\r\n _isUsingAIHeaders = false;\r\n _markPrefix = null;\r\n _enableAjaxPerfTracking = false;\r\n _maxAjaxCallsPerView = 0;\r\n _enableResponseHeaderTracking = false;\r\n _disabledUrls = {};\r\n _disableAjaxTracking = false;\r\n _disableFetchTracking = false;\r\n _excludeRequestFromAutoTrackingPatterns = null;\r\n _addRequestContext = null;\r\n _evtNamespace = null;\r\n }\r\n function _populateDefaults(config) {\r\n var ctx = createProcessTelemetryContext(null, config, _self.core);\r\n // Reset to the empty config\r\n _config = AjaxMonitor.getEmptyConfig();\r\n var defaultConfig = AjaxMonitor.getDefaultConfig();\r\n objForEachKey(defaultConfig, function (field, value) {\r\n _config[field] = ctx.getConfig(AjaxMonitor.identifier, field, value);\r\n });\r\n var distributedTracingMode = _config.distributedTracingMode;\r\n _enableRequestHeaderTracking = _config.enableRequestHeaderTracking;\r\n _enableAjaxErrorStatusText = _config.enableAjaxErrorStatusText;\r\n _enableAjaxPerfTracking = _config.enableAjaxPerfTracking;\r\n _maxAjaxCallsPerView = _config.maxAjaxCallsPerView;\r\n _enableResponseHeaderTracking = _config.enableResponseHeaderTracking;\r\n _excludeRequestFromAutoTrackingPatterns = _config.excludeRequestFromAutoTrackingPatterns;\r\n _addRequestContext = _config.addRequestContext;\r\n _isUsingAIHeaders = distributedTracingMode === 0 /* AI */ || distributedTracingMode === 1 /* AI_AND_W3C */;\r\n _isUsingW3CHeaders = distributedTracingMode === 1 /* AI_AND_W3C */ || distributedTracingMode === 2 /* W3C */;\r\n if (_enableAjaxPerfTracking) {\r\n var iKey = config.instrumentationKey || \"unkwn\";\r\n if (iKey.length > 5) {\r\n _markPrefix = AJAX_MONITOR_PREFIX + iKey.substring(iKey.length - 5) + \".\";\r\n }\r\n else {\r\n _markPrefix = AJAX_MONITOR_PREFIX + iKey + \".\";\r\n }\r\n }\r\n _disableAjaxTracking = !!_config.disableAjaxTracking;\r\n _disableFetchTracking = !!_config.disableFetchTracking;\r\n }\r\n function _populateContext() {\r\n var propExt = _self.core.getPlugin(PropertiesPluginIdentifier);\r\n if (propExt) {\r\n _context = propExt.plugin.context; // we could move IPropertiesPlugin to common as well\r\n }\r\n }\r\n // discard the header if it's defined as ignoreHeaders in ICorrelationConfig\r\n function _canIncludeHeaders(header) {\r\n var rlt = true;\r\n if (header || _config.ignoreHeaders) {\r\n arrForEach(_config.ignoreHeaders, (function (key) {\r\n if (key.toLowerCase() === header.toLowerCase()) {\r\n rlt = false;\r\n return -1;\r\n }\r\n }));\r\n }\r\n return rlt;\r\n }\r\n // Fetch Stuff\r\n function _instrumentFetch() {\r\n var fetch = _supportsFetch();\r\n if (!fetch) {\r\n return;\r\n }\r\n var global = getGlobal();\r\n var isPolyfill = fetch.polyfill;\r\n if (!_disableFetchTracking && !_fetchInitialized) {\r\n _addHook(InstrumentFunc(global, strFetch, {\r\n ns: _evtNamespace,\r\n // Add request hook\r\n req: function (callDetails, input, init) {\r\n var fetchData;\r\n if (!_disableFetchTracking && _fetchInitialized &&\r\n !_isDisabledRequest(null, input, init) &&\r\n // If we have a polyfil and XHR instrumented then let XHR report otherwise we get duplicates\r\n !(isPolyfill && _xhrInitialized)) {\r\n var ctx = callDetails.ctx();\r\n fetchData = _createFetchRecord(input, init);\r\n var newInit = _self.includeCorrelationHeaders(fetchData, input, init);\r\n if (newInit !== init) {\r\n callDetails.set(1, newInit);\r\n }\r\n ctx.data = fetchData;\r\n }\r\n },\r\n rsp: function (callDetails, input) {\r\n if (!_disableFetchTracking) {\r\n var fetchData_1 = callDetails.ctx().data;\r\n if (fetchData_1) {\r\n // Replace the result with the new promise from this code\r\n callDetails.rslt = callDetails.rslt.then(function (response) {\r\n _reportFetchMetrics(callDetails, (response || {}).status, input, response, fetchData_1, function () {\r\n var ajaxResponse = {\r\n statusText: response.statusText,\r\n headerMap: null,\r\n correlationContext: _getFetchCorrelationContext(response)\r\n };\r\n if (_enableResponseHeaderTracking) {\r\n var responseHeaderMap_1 = {};\r\n response.headers.forEach(function (value, name) {\r\n if (_canIncludeHeaders(name)) {\r\n responseHeaderMap_1[name] = value;\r\n }\r\n });\r\n ajaxResponse.headerMap = responseHeaderMap_1;\r\n }\r\n return ajaxResponse;\r\n });\r\n return response;\r\n })[\"catch\"](function (reason) {\r\n _reportFetchMetrics(callDetails, 0, input, null, fetchData_1, null, { error: reason.message });\r\n throw reason;\r\n });\r\n }\r\n }\r\n },\r\n // Create an error callback to report any hook errors\r\n hkErr: _createErrorCallbackFunc(_self, 15 /* FailedMonitorAjaxOpen */, \"Failed to monitor Window.fetch, monitoring data for this fetch call may be incorrect.\")\r\n }));\r\n _fetchInitialized = true;\r\n }\r\n else if (isPolyfill) {\r\n // If fetch is a polyfill we need to capture the request to ensure that we correctly track\r\n // disabled request URLS (i.e. internal urls) to ensure we don't end up in a constant loop\r\n // of reporting ourselves, for example React Native uses a polyfill for fetch\r\n // Note: Polyfill implementations that don't support the \"poyyfill\" tag are not supported\r\n // the workaround is to add a polyfill property to your fetch implementation before initializing\r\n // App Insights\r\n _addHook(InstrumentFunc(global, strFetch, {\r\n ns: _evtNamespace,\r\n req: function (callDetails, input, init) {\r\n // Just call so that we record any disabled URL\r\n _isDisabledRequest(null, input, init);\r\n }\r\n }));\r\n }\r\n if (isPolyfill) {\r\n // retag the instrumented fetch with the same polyfill settings this is mostly for testing\r\n // But also supports multiple App Insights usages\r\n global[strFetch].polyfill = isPolyfill;\r\n }\r\n }\r\n function _hookProto(target, funcName, callbacks) {\r\n _addHook(InstrumentProto(target, funcName, callbacks));\r\n }\r\n function _instrumentXhr() {\r\n if (_supportsAjaxMonitoring(_self) && !_disableAjaxTracking && !_xhrInitialized) {\r\n // Instrument open\r\n _hookProto(XMLHttpRequest, \"open\", {\r\n ns: _evtNamespace,\r\n req: function (args, method, url, async) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = args.inst;\r\n var ajaxData = xhr[strAjaxData];\r\n if (!_isDisabledRequest(xhr, url) && _isMonitoredXhrInstance(xhr, true)) {\r\n if (!ajaxData || !ajaxData.xhrMonitoringState.openDone) {\r\n // Only create a single ajaxData (even when multiple AI instances are running)\r\n _openHandler(xhr, method, url, async);\r\n }\r\n // always attach to the on ready state change (required for handling multiple instances)\r\n _attachToOnReadyStateChange(xhr);\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 15 /* FailedMonitorAjaxOpen */, \"Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.\")\r\n });\r\n // Instrument send\r\n _hookProto(XMLHttpRequest, \"send\", {\r\n ns: _evtNamespace,\r\n req: function (args, context) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = args.inst;\r\n var ajaxData = xhr[strAjaxData];\r\n if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState.sendDone) {\r\n _createMarkId(\"xhr\", ajaxData);\r\n ajaxData.requestSentTime = dateTimeUtilsNow();\r\n _self.includeCorrelationHeaders(ajaxData, undefined, undefined, xhr);\r\n ajaxData.xhrMonitoringState.sendDone = true;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 17 /* FailedMonitorAjaxSend */, \"Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.\")\r\n });\r\n // Instrument abort\r\n _hookProto(XMLHttpRequest, \"abort\", {\r\n ns: _evtNamespace,\r\n req: function (args) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = args.inst;\r\n var ajaxData = xhr[strAjaxData];\r\n if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState.abortDone) {\r\n ajaxData.aborted = 1;\r\n ajaxData.xhrMonitoringState.abortDone = true;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 13 /* FailedMonitorAjaxAbort */, \"Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.\")\r\n });\r\n // Instrument setRequestHeader\r\n _hookProto(XMLHttpRequest, \"setRequestHeader\", {\r\n ns: _evtNamespace,\r\n req: function (args, header, value) {\r\n if (!_disableAjaxTracking && _enableRequestHeaderTracking) {\r\n var xhr = args.inst;\r\n if (_isMonitoredXhrInstance(xhr) && _canIncludeHeaders(header)) {\r\n xhr[strAjaxData].requestHeaders[header] = value;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 71 /* FailedMonitorAjaxSetRequestHeader */, \"Failed to monitor XMLHttpRequest.setRequestHeader, monitoring data for this ajax call may be incorrect.\")\r\n });\r\n _xhrInitialized = true;\r\n }\r\n }\r\n function _isDisabledRequest(xhr, request, init) {\r\n var isDisabled = false;\r\n var theUrl = ((!isString(request) ? (request || {}).url || \"\" : request) || \"\").toLowerCase();\r\n // check excludeRequestFromAutoTrackingPatterns before stripping off any query string\r\n arrForEach(_excludeRequestFromAutoTrackingPatterns, function (regex) {\r\n var theRegex = regex;\r\n if (isString(regex)) {\r\n theRegex = new RegExp(regex);\r\n }\r\n if (!isDisabled) {\r\n isDisabled = theRegex.test(theUrl);\r\n }\r\n });\r\n // if request url matches with exclude regex pattern, return true and no need to check for headers\r\n if (isDisabled) {\r\n return isDisabled;\r\n }\r\n var idx = _indexOf(theUrl, \"?\");\r\n var idx2 = _indexOf(theUrl, \"#\");\r\n if (idx === -1 || (idx2 !== -1 && idx2 < idx)) {\r\n idx = idx2;\r\n }\r\n if (idx !== -1) {\r\n // Strip off any Query string\r\n theUrl = theUrl.substring(0, idx);\r\n }\r\n // check that this instance is not not used by ajax call performed inside client side monitoring to send data to collector\r\n if (!isNullOrUndefined(xhr)) {\r\n // Look on the XMLHttpRequest of the URL string value\r\n isDisabled = xhr[DisabledPropertyName] === true || theUrl[DisabledPropertyName] === true;\r\n }\r\n else if (!isNullOrUndefined(request)) { // fetch\r\n // Look for DisabledPropertyName in either Request or RequestInit\r\n isDisabled = (typeof request === \"object\" ? request[DisabledPropertyName] === true : false) ||\r\n (init ? init[DisabledPropertyName] === true : false);\r\n }\r\n // Also add extra check just in case the XHR or fetch objects where not decorated with the DisableProperty due to sealing or freezing\r\n if (!isDisabled && theUrl && isInternalApplicationInsightsEndpoint(theUrl)) {\r\n isDisabled = true;\r\n }\r\n if (isDisabled) {\r\n // Add the disabled url if not present\r\n if (!_disabledUrls[theUrl]) {\r\n _disabledUrls[theUrl] = 1;\r\n }\r\n }\r\n else {\r\n // Check to see if the url is listed as disabled\r\n if (_disabledUrls[theUrl]) {\r\n isDisabled = true;\r\n }\r\n }\r\n return isDisabled;\r\n }\r\n /// Verifies that particalar instance of XMLHttpRequest needs to be monitored\r\n /// Optional parameter. True if ajaxData must be excluded from verification\r\n /// True if instance needs to be monitored, otherwise false\r\n function _isMonitoredXhrInstance(xhr, excludeAjaxDataValidation) {\r\n var ajaxValidation = true;\r\n var initialized = _xhrInitialized;\r\n if (!isNullOrUndefined(xhr)) {\r\n ajaxValidation = excludeAjaxDataValidation === true || !isNullOrUndefined(xhr[strAjaxData]);\r\n }\r\n // checking to see that all interested functions on xhr were instrumented\r\n return initialized\r\n // checking on ajaxData to see that it was not removed in user code\r\n && ajaxValidation;\r\n }\r\n function _openHandler(xhr, method, url, async) {\r\n var traceID = (_context && _context.telemetryTrace && _context.telemetryTrace.traceID) || generateW3CId();\r\n var spanID = generateW3CId().substr(0, 16);\r\n var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog]());\r\n ajaxData.method = method;\r\n ajaxData.requestUrl = url;\r\n ajaxData.xhrMonitoringState.openDone = true;\r\n ajaxData.requestHeaders = {};\r\n ajaxData.async = async;\r\n ajaxData.errorStatusText = _enableAjaxErrorStatusText;\r\n xhr[strAjaxData] = ajaxData;\r\n }\r\n function _attachToOnReadyStateChange(xhr) {\r\n xhr[strAjaxData].xhrMonitoringState.stateChangeAttached = eventOn(xhr, \"readystatechange\", function () {\r\n try {\r\n if (xhr && xhr.readyState === 4 && _isMonitoredXhrInstance(xhr)) {\r\n _onAjaxComplete(xhr);\r\n }\r\n }\r\n catch (e) {\r\n var exceptionText = dumpObj(e);\r\n // ignore messages with c00c023f, as this a known IE9 XHR abort issue\r\n if (!exceptionText || _indexOf(exceptionText.toLowerCase(), \"c00c023f\") === -1) {\r\n _throwInternalCritical(_self, 16 /* FailedMonitorAjaxRSC */, \"Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.\", {\r\n ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(xhr),\r\n exception: exceptionText\r\n });\r\n }\r\n }\r\n }, _evtNamespace);\r\n }\r\n function _getResponseText(xhr) {\r\n try {\r\n var responseType = xhr.responseType;\r\n if (responseType === \"\" || responseType === \"text\") {\r\n // As per the specification responseText is only valid if the type is an empty string or \"text\"\r\n return xhr.responseText;\r\n }\r\n }\r\n catch (e) {\r\n // This shouldn't happen because of the above check -- but just in case, so just ignore\r\n }\r\n return null;\r\n }\r\n function _onAjaxComplete(xhr) {\r\n var ajaxData = xhr[strAjaxData];\r\n ajaxData.responseFinishedTime = dateTimeUtilsNow();\r\n ajaxData.status = xhr.status;\r\n function _reportXhrError(e, failedProps) {\r\n var errorProps = failedProps || {};\r\n errorProps[\"ajaxDiagnosticsMessage\"] = _getFailedAjaxDiagnosticsMessage(xhr);\r\n if (e) {\r\n errorProps[\"exception\"] = dumpObj(e);\r\n }\r\n _throwInternalWarning(_self, 14 /* FailedMonitorAjaxDur */, \"Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.\", errorProps);\r\n }\r\n _findPerfResourceEntry(\"xmlhttprequest\", ajaxData, function () {\r\n try {\r\n var dependency = ajaxData.CreateTrackItem(\"Ajax\", _enableRequestHeaderTracking, function () {\r\n var ajaxResponse = {\r\n statusText: xhr.statusText,\r\n headerMap: null,\r\n correlationContext: _getAjaxCorrelationContext(xhr),\r\n type: xhr.responseType,\r\n responseText: _getResponseText(xhr),\r\n response: xhr.response\r\n };\r\n if (_enableResponseHeaderTracking) {\r\n var headers = xhr.getAllResponseHeaders();\r\n if (headers) {\r\n // xhr.getAllResponseHeaders() method returns all the response headers, separated by CRLF, as a string or null\r\n // the regex converts the header string into an array of individual headers\r\n var arr = strTrim(headers).split(/[\\r\\n]+/);\r\n var responseHeaderMap_2 = {};\r\n arrForEach(arr, function (line) {\r\n var parts = line.split(\": \");\r\n var header = parts.shift();\r\n var value = parts.join(\": \");\r\n if (_canIncludeHeaders(header)) {\r\n responseHeaderMap_2[header] = value;\r\n }\r\n });\r\n ajaxResponse.headerMap = responseHeaderMap_2;\r\n }\r\n }\r\n return ajaxResponse;\r\n });\r\n var properties = void 0;\r\n try {\r\n if (!!_addRequestContext) {\r\n properties = _addRequestContext({ status: xhr.status, xhr: xhr });\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 104 /* FailedAddingCustomDefinedRequestContext */, \"Failed to add custom defined request context as configured call back may missing a null check.\");\r\n }\r\n if (dependency) {\r\n if (properties !== undefined) {\r\n dependency.properties = __assign(__assign({}, dependency.properties), properties);\r\n }\r\n _self[strTrackDependencyDataInternal](dependency);\r\n }\r\n else {\r\n _reportXhrError(null, {\r\n requestSentTime: ajaxData.requestSentTime,\r\n responseFinishedTime: ajaxData.responseFinishedTime\r\n });\r\n }\r\n }\r\n finally {\r\n // cleanup telemetry data\r\n try {\r\n xhr[strAjaxData] = null;\r\n }\r\n catch (e) {\r\n // May throw in environments that prevent extension or freeze xhr\r\n }\r\n }\r\n }, function (e) {\r\n _reportXhrError(e, null);\r\n });\r\n }\r\n function _getAjaxCorrelationContext(xhr) {\r\n try {\r\n var responseHeadersString = xhr.getAllResponseHeaders();\r\n if (responseHeadersString !== null) {\r\n var index = _indexOf(responseHeadersString.toLowerCase(), RequestHeaders[8 /* requestContextHeaderLowerCase */]);\r\n if (index !== -1) {\r\n var responseHeader = xhr.getResponseHeader(RequestHeaders[0 /* requestContextHeader */]);\r\n return CorrelationIdHelper.getCorrelationContext(responseHeader);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 18 /* FailedMonitorAjaxGetCorrelationHeader */, \"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.\", {\r\n ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(xhr),\r\n exception: dumpObj(e)\r\n });\r\n }\r\n }\r\n function _createMarkId(type, ajaxData) {\r\n if (ajaxData.requestUrl && _markPrefix && _enableAjaxPerfTracking) {\r\n var performance_1 = getPerformance();\r\n if (performance_1 && isFunction(performance_1.mark)) {\r\n _markCount++;\r\n var markId = _markPrefix + type + \"#\" + _markCount;\r\n performance_1.mark(markId);\r\n var entries = performance_1.getEntriesByName(markId);\r\n if (entries && entries.length === 1) {\r\n ajaxData.perfMark = entries[0];\r\n }\r\n }\r\n }\r\n }\r\n function _findPerfResourceEntry(initiatorType, ajaxData, trackCallback, reportError) {\r\n var perfMark = ajaxData.perfMark;\r\n var performance = getPerformance();\r\n var maxAttempts = _config.maxAjaxPerfLookupAttempts;\r\n var retryDelay = _config.ajaxPerfLookupDelay;\r\n var requestUrl = ajaxData.requestUrl;\r\n var attempt = 0;\r\n (function locateResourceTiming() {\r\n try {\r\n if (performance && perfMark) {\r\n attempt++;\r\n var perfTiming = null;\r\n var entries = performance.getEntries();\r\n for (var lp = entries.length - 1; lp >= 0; lp--) {\r\n var entry = entries[lp];\r\n if (entry) {\r\n if (entry.entryType === \"resource\") {\r\n if (entry.initiatorType === initiatorType &&\r\n (_indexOf(entry.name, requestUrl) !== -1 || _indexOf(requestUrl, entry.name) !== -1)) {\r\n perfTiming = entry;\r\n }\r\n }\r\n else if (entry.entryType === \"mark\" && entry.name === perfMark.name) {\r\n // We hit the start event\r\n ajaxData.perfTiming = perfTiming;\r\n break;\r\n }\r\n if (entry.startTime < perfMark.startTime - 1000) {\r\n // Fallback to try and reduce the time spent looking for the perf entry\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n if (!perfMark || // - we don't have a perfMark or\r\n ajaxData.perfTiming || // - we have not found the perf entry or\r\n attempt >= maxAttempts || // - we have tried too many attempts or\r\n ajaxData.async === false) { // - this is a sync request\r\n if (perfMark && isFunction(performance.clearMarks)) {\r\n // Remove the mark so we don't fill up the performance resources too much\r\n performance.clearMarks(perfMark.name);\r\n }\r\n ajaxData.perfAttempts = attempt;\r\n // just continue and report the track event\r\n trackCallback();\r\n }\r\n else {\r\n // We need to wait for the browser to populate the window.performance entry\r\n // This needs to be at least 1ms as waiting <= 1 (on firefox) is not enough time for fetch or xhr,\r\n // this is a scheduling issue for the browser implementation\r\n setTimeout(locateResourceTiming, retryDelay);\r\n }\r\n }\r\n catch (e) {\r\n reportError(e);\r\n }\r\n })();\r\n }\r\n function _createFetchRecord(input, init) {\r\n var traceID = (_context && _context.telemetryTrace && _context.telemetryTrace.traceID) || generateW3CId();\r\n var spanID = generateW3CId().substr(0, 16);\r\n var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog]());\r\n ajaxData.requestSentTime = dateTimeUtilsNow();\r\n ajaxData.errorStatusText = _enableAjaxErrorStatusText;\r\n if (input instanceof Request) {\r\n ajaxData.requestUrl = input ? input.url : \"\";\r\n }\r\n else {\r\n ajaxData.requestUrl = input;\r\n }\r\n var method = \"GET\";\r\n if (init && init.method) {\r\n method = init.method;\r\n }\r\n else if (input && input instanceof Request) {\r\n method = input.method;\r\n }\r\n ajaxData.method = method;\r\n var requestHeaders = {};\r\n if (_enableRequestHeaderTracking) {\r\n var headers = new Headers((init ? init.headers : 0) || (input instanceof Request ? (input.headers || {}) : {}));\r\n headers.forEach(function (value, key) {\r\n if (_canIncludeHeaders(key)) {\r\n requestHeaders[key] = value;\r\n }\r\n });\r\n }\r\n ajaxData.requestHeaders = requestHeaders;\r\n _createMarkId(\"fetch\", ajaxData);\r\n return ajaxData;\r\n }\r\n function _getFailedFetchDiagnosticsMessage(input) {\r\n var result = \"\";\r\n try {\r\n if (!isNullOrUndefined(input)) {\r\n if (typeof (input) === \"string\") {\r\n result += \"(url: '\".concat(input, \"')\");\r\n }\r\n else {\r\n result += \"(url: '\".concat(input.url, \"')\");\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalCritical(_self, 15 /* FailedMonitorAjaxOpen */, \"Failed to grab failed fetch diagnostics message\", { exception: dumpObj(e) });\r\n }\r\n return result;\r\n }\r\n function _reportFetchMetrics(callDetails, status, input, response, ajaxData, getResponse, properties) {\r\n if (!ajaxData) {\r\n return;\r\n }\r\n function _reportFetchError(msgId, e, failedProps) {\r\n var errorProps = failedProps || {};\r\n errorProps[\"fetchDiagnosticsMessage\"] = _getFailedFetchDiagnosticsMessage(input);\r\n if (e) {\r\n errorProps[\"exception\"] = dumpObj(e);\r\n }\r\n _throwInternalWarning(_self, msgId, \"Failed to calculate the duration of the fetch call, monitoring data for this fetch call won't be sent.\", errorProps);\r\n }\r\n ajaxData.responseFinishedTime = dateTimeUtilsNow();\r\n ajaxData.status = status;\r\n _findPerfResourceEntry(\"fetch\", ajaxData, function () {\r\n var dependency = ajaxData.CreateTrackItem(\"Fetch\", _enableRequestHeaderTracking, getResponse);\r\n var properties;\r\n try {\r\n if (!!_addRequestContext) {\r\n properties = _addRequestContext({ status: status, request: input, response: response });\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 104 /* FailedAddingCustomDefinedRequestContext */, \"Failed to add custom defined request context as configured call back may missing a null check.\");\r\n }\r\n if (dependency) {\r\n if (properties !== undefined) {\r\n dependency.properties = __assign(__assign({}, dependency.properties), properties);\r\n }\r\n _self[strTrackDependencyDataInternal](dependency);\r\n }\r\n else {\r\n _reportFetchError(14 /* FailedMonitorAjaxDur */, null, {\r\n requestSentTime: ajaxData.requestSentTime,\r\n responseFinishedTime: ajaxData.responseFinishedTime\r\n });\r\n }\r\n }, function (e) {\r\n _reportFetchError(18 /* FailedMonitorAjaxGetCorrelationHeader */, e, null);\r\n });\r\n }\r\n function _getFetchCorrelationContext(response) {\r\n if (response && response.headers) {\r\n try {\r\n var responseHeader = response.headers.get(RequestHeaders[0 /* requestContextHeader */]);\r\n return CorrelationIdHelper.getCorrelationContext(responseHeader);\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 18 /* FailedMonitorAjaxGetCorrelationHeader */, \"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.\", {\r\n fetchDiagnosticsMessage: _getFailedFetchDiagnosticsMessage(response),\r\n exception: dumpObj(e)\r\n });\r\n }\r\n }\r\n }\r\n });\r\n return _this;\r\n }\r\n AjaxMonitor.getDefaultConfig = function () {\r\n var config = {\r\n maxAjaxCallsPerView: 500,\r\n disableAjaxTracking: false,\r\n disableFetchTracking: false,\r\n excludeRequestFromAutoTrackingPatterns: undefined,\r\n disableCorrelationHeaders: false,\r\n distributedTracingMode: 1 /* AI_AND_W3C */,\r\n correlationHeaderExcludedDomains: [\r\n \"*.blob.core.windows.net\",\r\n \"*.blob.core.chinacloudapi.cn\",\r\n \"*.blob.core.cloudapi.de\",\r\n \"*.blob.core.usgovcloudapi.net\"\r\n ],\r\n correlationHeaderDomains: undefined,\r\n correlationHeaderExcludePatterns: undefined,\r\n appId: undefined,\r\n enableCorsCorrelation: false,\r\n enableRequestHeaderTracking: false,\r\n enableResponseHeaderTracking: false,\r\n enableAjaxErrorStatusText: false,\r\n enableAjaxPerfTracking: false,\r\n maxAjaxPerfLookupAttempts: 3,\r\n ajaxPerfLookupDelay: 25,\r\n ignoreHeaders: [\r\n \"Authorization\",\r\n \"X-API-Key\",\r\n \"WWW-Authenticate\"\r\n ],\r\n addRequestContext: undefined\r\n };\r\n return config;\r\n };\r\n AjaxMonitor.getEmptyConfig = function () {\r\n var emptyConfig = this.getDefaultConfig();\r\n objForEachKey(emptyConfig, function (value) {\r\n emptyConfig[value] = undefined;\r\n });\r\n return emptyConfig;\r\n };\r\n// Removed Stub for AjaxMonitor.prototype.initialize.\r\n AjaxMonitor.prototype.processTelemetry = function (item, itemCtx) {\r\n this.processNext(item, itemCtx);\r\n };\r\n// Removed Stub for AjaxMonitor.prototype.trackDependencyData.\r\n// Removed Stub for AjaxMonitor.prototype.includeCorrelationHeaders.\r\n// Removed Stub for AjaxMonitor.prototype.trackDependencyDataInternal.\r\n AjaxMonitor.identifier = \"AjaxDependencyPlugin\";\r\n return AjaxMonitor;\r\n}(BaseTelemetryPlugin));\r\nexport { AjaxMonitor };\r\n//# sourceMappingURL=ajax.js.map"],"sourceRoot":""}