{"version":3,"file":"static/js/8953_87b62be7f90e845c0af3.js","mappings":"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","sources":["file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@microsoft+applicationinsights-dependencies-js@3.0.7_tslib@2.8.1/node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/InternalConstants.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@microsoft+applicationinsights-dependencies-js@3.0.7_tslib@2.8.1/node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/__DynamicConstants.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@microsoft+applicationinsights-dependencies-js@3.0.7_tslib@2.8.1/node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/ajaxRecord.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@microsoft+applicationinsights-dependencies-js@3.0.7_tslib@2.8.1/node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/ajax.js"],"sourcesContent":["/*\n * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.7\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\n// ###################################################################################################################################################\r\n// Note: DON'T Export these const from the package as we are still targeting IE/ES5 this will export a mutable variables that someone could change ###\r\n// ###################################################################################################################################################\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nexport var STR_DURATION = \"duration\";\r\nexport var STR_PROPERTIES = \"properties\";\r\n//# sourceMappingURL=InternalConstants.js.map","/*\n * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.7\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_REQUEST_URL = \"requestUrl\"; // Count: 11\r\nexport var _DYN_INST = \"inst\"; // Count: 5\r\nexport var _DYN_LENGTH = \"length\"; // Count: 10\r\nexport var _DYN_TRACE_ID = \"traceID\"; // Count: 9\r\nexport var _DYN_SPAN_ID = \"spanID\"; // Count: 8\r\nexport var _DYN_TRACE_FLAGS = \"traceFlags\"; // Count: 13\r\nexport var _DYN_CONTEXT = \"context\"; // Count: 7\r\nexport var _DYN_ABORTED = \"aborted\"; // Count: 7\r\nexport var _DYN_TRACE_ID0 = \"traceId\"; // Count: 5\r\nexport var _DYN_SPAN_ID1 = \"spanId\"; // Count: 5\r\nexport var _DYN__ADD_HOOK = \"_addHook\"; // Count: 4\r\nexport var _DYN_CORE = \"core\"; // Count: 8\r\nexport var _DYN_INCLUDE_CORRELATION_2 = \"includeCorrelationHeaders\"; // Count: 4\r\nexport var _DYN_GET_ABSOLUTE_URL = \"getAbsoluteUrl\"; // Count: 3\r\nexport var _DYN_HEADERS = \"headers\"; // Count: 6\r\nexport var _DYN_REQUEST_HEADERS = \"requestHeaders\"; // Count: 13\r\nexport var _DYN_SET_REQUEST_HEADER = \"setRequestHeader\"; // Count: 3\r\nexport var _DYN_TRACK_DEPENDENCY_DAT3 = \"trackDependencyDataInternal\"; // Count: 2\r\nexport var _DYN_START_TIME = \"startTime\"; // Count: 6\r\nexport var _DYN_TO_LOWER_CASE = \"toLowerCase\"; // Count: 6\r\nexport var _DYN_ENABLE_REQUEST_HEADE4 = \"enableRequestHeaderTracking\"; // Count: 3\r\nexport var _DYN_ENABLE_AJAX_ERROR_ST5 = \"enableAjaxErrorStatusText\"; // Count: 2\r\nexport var _DYN_ENABLE_AJAX_PERF_TRA6 = \"enableAjaxPerfTracking\"; // Count: 2\r\nexport var _DYN_MAX_AJAX_CALLS_PER_V7 = \"maxAjaxCallsPerView\"; // Count: 2\r\nexport var _DYN_EXCLUDE_REQUEST_FROM8 = \"excludeRequestFromAutoTrackingPatterns\"; // Count: 2\r\nexport var _DYN_ADD_REQUEST_CONTEXT = \"addRequestContext\"; // Count: 2\r\nexport var _DYN_DISABLE_AJAX_TRACKIN9 = \"disableAjaxTracking\"; // Count: 3\r\nexport var _DYN_AJAX_PERF_LOOKUP_DEL10 = \"ajaxPerfLookupDelay\"; // Count: 2\r\nexport var _DYN_DISABLE_FETCH_TRACKI11 = \"disableFetchTracking\"; // Count: 2\r\nexport var _DYN_ENABLE_RESPONSE_HEAD12 = \"enableResponseHeaderTracking\"; // Count: 2\r\nexport var _DYN_STATUS = \"status\"; // Count: 11\r\nexport var _DYN_STATUS_TEXT = \"statusText\"; // Count: 9\r\nexport var _DYN_HEADER_MAP = \"headerMap\"; // Count: 8\r\nexport var _DYN_OPEN_DONE = \"openDone\"; // Count: 3\r\nexport var _DYN_SEND_DONE = \"sendDone\"; // Count: 3\r\nexport var _DYN_REQUEST_SENT_TIME = \"requestSentTime\"; // Count: 9\r\nexport var _DYN_ABORT_DONE = \"abortDone\"; // Count: 3\r\nexport var _DYN_GET_TRACE_ID = \"getTraceId\"; // Count: 3\r\nexport var _DYN_GET_TRACE_FLAGS = \"getTraceFlags\"; // Count: 3\r\nexport var _DYN_METHOD = \"method\"; // Count: 8\r\nexport var _DYN_ERROR_STATUS_TEXT = \"errorStatusText\"; // Count: 3\r\nexport var _DYN_STATE_CHANGE_ATTACHE13 = \"stateChangeAttached\"; // Count: 2\r\nexport var _DYN_RESPONSE_TEXT = \"responseText\"; // Count: 6\r\nexport var _DYN_RESPONSE_FINISHED_TI14 = \"responseFinishedTime\"; // Count: 7\r\nexport var _DYN__CREATE_TRACK_ITEM = \"CreateTrackItem\"; // Count: 3\r\nexport var _DYN_RESPONSE = \"response\"; // Count: 4\r\nexport var _DYN_GET_ALL_RESPONSE_HEA15 = \"getAllResponseHeaders\"; // Count: 2\r\nexport var _DYN_GET_PART_APROPS = \"getPartAProps\"; // Count: 3\r\nexport var _DYN_PERF_MARK = \"perfMark\"; // Count: 4\r\nexport var _DYN_NAME = \"name\"; // Count: 6\r\nexport var _DYN_PERF_TIMING = \"perfTiming\"; // Count: 3\r\nexport var _DYN_EXCEPTION = \"exception\"; // Count: 5\r\nexport var _DYN_AJAX_DIAGNOSTICS_MES16 = \"ajaxDiagnosticsMessage\"; // Count: 3\r\nexport var _DYN_CORRELATION_CONTEXT = \"correlationContext\"; // Count: 3\r\nexport var _DYN_AJAX_TOTAL_DURATION = \"ajaxTotalDuration\"; // Count: 3\r\nexport var _DYN_EVENT_TRACE_CTX = \"eventTraceCtx\"; // Count: 3\r\n//# sourceMappingURL=__DynamicConstants.js.map","/*\n * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.7\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { Extensions, dataSanitizeUrl, dateTimeUtilsDuration, msToTimeSpan, urlGetAbsoluteUrl, urlGetCompleteUrl } from \"@microsoft/applicationinsights-common\";\r\nimport { arrForEach, isNullOrUndefined, isNumber, isString, normalizeJsName, objForEachKey, objKeys } from \"@microsoft/applicationinsights-core-js\";\r\nimport { STR_DURATION, STR_PROPERTIES } from \"./InternalConstants\";\r\nimport { _DYN_ABORTED, _DYN_ABORT_DONE, _DYN_AJAX_TOTAL_DURATION, _DYN_CORRELATION_CONTEXT, _DYN_ERROR_STATUS_TEXT, _DYN_EVENT_TRACE_CTX, _DYN_GET_ABSOLUTE_URL, _DYN_GET_PART_APROPS, _DYN_GET_TRACE_FLAGS, _DYN_GET_TRACE_ID, _DYN_HEADER_MAP, _DYN_LENGTH, _DYN_METHOD, _DYN_NAME, _DYN_OPEN_DONE, _DYN_PERF_MARK, _DYN_PERF_TIMING, _DYN_REQUEST_HEADERS, _DYN_REQUEST_SENT_TIME, _DYN_REQUEST_URL, _DYN_RESPONSE, _DYN_RESPONSE_FINISHED_TI14, _DYN_SEND_DONE, _DYN_SPAN_ID, _DYN_SPAN_ID1, _DYN_START_TIME, _DYN_STATE_CHANGE_ATTACHE13, _DYN_STATUS, _DYN_STATUS_TEXT, _DYN_TRACE_FLAGS, _DYN_TRACE_ID, _DYN_TRACE_ID0, _DYN__CREATE_TRACK_ITEM } from \"./__DynamicConstants\";\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[_DYN_PERF_TIMING /* @min:%2eperfTiming */];\r\n var props = dependency[STR_PROPERTIES /* @min:%2eproperties */] || {};\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 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[STR_DURATION /* @min:%2eduration */];\r\n if (!duration) {\r\n duration = _calcPerfDuration(resourceEntry, strStartTime, strResponseEnd) || 0;\r\n }\r\n propsSet |= _setPerfValue(props, STR_DURATION, 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[_DYN_PERF_MARK /* @min:%2eperfMark */]) {\r\n propsSet |= _setPerfValue(props, \"missing\", ajaxData.perfAttempts);\r\n }\r\n }\r\n if (propsSet) {\r\n dependency[STR_PROPERTIES /* @min:%2eproperties */] = props;\r\n }\r\n}\r\nvar XHRMonitoringState = /** @class */ (function () {\r\n function XHRMonitoringState() {\r\n var self = this;\r\n self[_DYN_OPEN_DONE /* @min:%2eopenDone */] = false;\r\n self.setRequestHeaderDone = false;\r\n self[_DYN_SEND_DONE /* @min:%2esendDone */] = false;\r\n self[_DYN_ABORT_DONE /* @min:%2eabortDone */] = false;\r\n // True, if onreadyStateChangeCallback function attached to xhr, otherwise false\r\n self[_DYN_STATE_CHANGE_ATTACHE13 /* @min:%2estateChangeAttached */] = false;\r\n }\r\n return XHRMonitoringState;\r\n}());\r\nexport { XHRMonitoringState };\r\nvar ajaxRecord = /** @class */ (function () {\r\n function ajaxRecord(traceId, spanId, logger, traceCtx) {\r\n var _a;\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[_DYN_PERF_MARK /* @min:%2eperfMark */] = null;\r\n self.completed = false;\r\n self.requestHeadersSize = null;\r\n self[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = null;\r\n self.responseReceivingDuration = null;\r\n self.callbackDuration = null;\r\n self[_DYN_AJAX_TOTAL_DURATION /* @min:%2eajaxTotalDuration */] = null;\r\n self[_DYN_ABORTED /* @min:%2eaborted */] = 0;\r\n self.pageUrl = null;\r\n self[_DYN_REQUEST_URL /* @min:%2erequestUrl */] = null;\r\n self.requestSize = 0;\r\n self[_DYN_METHOD /* @min:%2emethod */] = null;\r\n self[_DYN_STATUS /* @min:%2estatus */] = null;\r\n self[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */] = null;\r\n self.responseStartedTime = null;\r\n self[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = 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[_DYN_TRACE_ID /* @min:%2etraceID */] = traceId;\r\n self[_DYN_SPAN_ID /* @min:%2espanID */] = spanId;\r\n self[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = traceCtx === null || traceCtx === void 0 ? void 0 : traceCtx.getTraceFlags();\r\n if (traceCtx) {\r\n self[_DYN_EVENT_TRACE_CTX /* @min:%2eeventTraceCtx */] = (_a = {},\r\n _a[_DYN_TRACE_ID0 /* @min:traceId */] = traceCtx[_DYN_GET_TRACE_ID /* @min:%2egetTraceId */](),\r\n _a[_DYN_SPAN_ID1 /* @min:spanId */] = traceCtx.getSpanId(),\r\n _a[_DYN_TRACE_FLAGS /* @min:traceFlags */] = traceCtx[_DYN_GET_TRACE_FLAGS /* @min:%2egetTraceFlags */](),\r\n _a);\r\n }\r\n else {\r\n self[_DYN_EVENT_TRACE_CTX /* @min:%2eeventTraceCtx */] = null;\r\n }\r\n dynamicProto(ajaxRecord, self, function (self) {\r\n self.getAbsoluteUrl = function () {\r\n return self[_DYN_REQUEST_URL /* @min:%2erequestUrl */] ? urlGetAbsoluteUrl(self[_DYN_REQUEST_URL /* @min:%2erequestUrl */]) : null;\r\n };\r\n self.getPathName = function () {\r\n return self[_DYN_REQUEST_URL /* @min:%2erequestUrl */] ? dataSanitizeUrl(_logger, urlGetCompleteUrl(self[_DYN_METHOD /* @min:%2emethod */], self[_DYN_REQUEST_URL /* @min:%2erequestUrl */])) : null;\r\n };\r\n self[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */] = 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[_DYN_AJAX_TOTAL_DURATION /* @min:%2eajaxTotalDuration */] < 0) {\r\n return null;\r\n }\r\n var dependency = (_a = {\r\n id: \"|\" + self[_DYN_TRACE_ID /* @min:%2etraceID */] + \".\" + self[_DYN_SPAN_ID /* @min:%2espanID */],\r\n target: self[_DYN_GET_ABSOLUTE_URL /* @min:%2egetAbsoluteUrl */]()\r\n },\r\n _a[_DYN_NAME /* @min:name */] = self.getPathName(),\r\n _a.type = ajaxType,\r\n _a[_DYN_START_TIME /* @min:startTime */] = null,\r\n _a.duration = self[_DYN_AJAX_TOTAL_DURATION /* @min:%2eajaxTotalDuration */],\r\n _a.success = (+(self[_DYN_STATUS /* @min:%2estatus */])) >= 200 && (+(self[_DYN_STATUS /* @min:%2estatus */])) < 400,\r\n _a.responseCode = (+(self[_DYN_STATUS /* @min:%2estatus */])),\r\n _a[STR_PROPERTIES] = { HttpMethod: self[_DYN_METHOD /* @min:%2emethod */] },\r\n _a);\r\n var props = dependency[STR_PROPERTIES];\r\n if (self[_DYN_ABORTED /* @min:%2eaborted */]) {\r\n props[_DYN_ABORTED /* @min:%2eaborted */] = true;\r\n }\r\n if (self[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */]) {\r\n // Set the correct dependency start time\r\n dependency[_DYN_START_TIME /* @min:%2estartTime */] = new Date();\r\n dependency[_DYN_START_TIME /* @min:%2estartTime */].setTime(self[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */]);\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)[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n props[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = self[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */];\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[_DYN_CORRELATION_CONTEXT /* @min:%2ecorrelationContext */];\r\n if (correlationContext) {\r\n dependency.correlationContext = /* dependency.target + \" | \" + */ correlationContext;\r\n }\r\n if (response[_DYN_HEADER_MAP /* @min:%2eheaderMap */]) {\r\n if (objKeys(response.headerMap)[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n props.responseHeaders = response[_DYN_HEADER_MAP /* @min:%2eheaderMap */];\r\n }\r\n }\r\n if (self[_DYN_ERROR_STATUS_TEXT /* @min:%2eerrorStatusText */]) {\r\n if (self[_DYN_STATUS /* @min:%2estatus */] >= 400) {\r\n var responseType = response.type;\r\n if (responseType === \"\" || responseType === \"text\") {\r\n props.responseText = response.responseText ? response[_DYN_STATUS_TEXT /* @min:%2estatusText */] + \" - \" + response[strResponseText] : response[_DYN_STATUS_TEXT /* @min:%2estatusText */];\r\n }\r\n if (responseType === \"json\") {\r\n props.responseText = response.response ? response[_DYN_STATUS_TEXT /* @min:%2estatusText */] + \" - \" + JSON.stringify(response[_DYN_RESPONSE /* @min:%2eresponse */]) : response[_DYN_STATUS_TEXT /* @min:%2estatusText */];\r\n }\r\n }\r\n else if (self[_DYN_STATUS /* @min:%2estatus */] === 0) {\r\n props.responseText = response[_DYN_STATUS_TEXT /* @min:%2estatusText */] || \"\";\r\n }\r\n }\r\n }\r\n }\r\n return dependency;\r\n };\r\n self[_DYN_GET_PART_APROPS /* @min:%2egetPartAProps */] = function () {\r\n var _a;\r\n var partA = null;\r\n var traceCtx = self[_DYN_EVENT_TRACE_CTX /* @min:%2eeventTraceCtx */];\r\n if (traceCtx && (traceCtx[_DYN_TRACE_ID0 /* @min:%2etraceId */] || traceCtx[_DYN_SPAN_ID1 /* @min:%2espanId */])) {\r\n partA = {};\r\n var traceExt = partA[Extensions.TraceExt] = (_a = {},\r\n _a[_DYN_TRACE_ID /* @min:traceID */] = traceCtx[_DYN_TRACE_ID0 /* @min:%2etraceId */],\r\n _a.parentID = traceCtx[_DYN_SPAN_ID1 /* @min:%2espanId */],\r\n _a);\r\n if (!isNullOrUndefined(traceCtx[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */])) {\r\n traceExt[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = traceCtx[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n }\r\n }\r\n return partA;\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// Removed Stub for ajaxRecord.prototype.getPartAProps.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n ajaxRecord.__ieDyn=1;\n\n return ajaxRecord;\r\n}());\r\nexport { ajaxRecord };\r\n//# sourceMappingURL=ajaxRecord.js.map","/*\n * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.7\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nvar _a;\r\nimport { __assignFn as __assign, __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { DisabledPropertyName, PropertiesPluginIdentifier, RemoteDependencyData, RequestHeaders, correlationIdCanIncludeCorrelationHeader, correlationIdGetCorrelationContext, createDistributedTraceContextFromTrace, createTelemetryItem, createTraceParent, dateTimeUtilsNow, formatTraceParent, isInternalApplicationInsightsEndpoint } from \"@microsoft/applicationinsights-common\";\r\nimport { BaseTelemetryPlugin, InstrumentFunc, InstrumentProto, _throwInternal, arrForEach, createProcessTelemetryContext, createUniqueNamespace, dumpObj, eventOn, generateW3CId, getExceptionName, getGlobal, getIEVersion, getLocation, getPerformance, isFunction, isNullOrUndefined, isString, isXhrSupported, mergeEvtNamespace, onConfigChange, strPrototype, strTrim } from \"@microsoft/applicationinsights-core-js\";\r\nimport { isWebWorker, objFreeze, scheduleTimeout, strIndexOf, strSplit, strSubstr, strSubstring } from \"@nevware21/ts-utils\";\r\nimport { STR_PROPERTIES } from \"./InternalConstants\";\r\nimport { _DYN_ABORTED, _DYN_ABORT_DONE, _DYN_ADD_REQUEST_CONTEXT, _DYN_AJAX_DIAGNOSTICS_MES16, _DYN_AJAX_PERF_LOOKUP_DEL10, _DYN_CONTEXT, _DYN_CORE, _DYN_CORRELATION_CONTEXT, _DYN_DISABLE_AJAX_TRACKIN9, _DYN_DISABLE_FETCH_TRACKI11, _DYN_ENABLE_AJAX_ERROR_ST5, _DYN_ENABLE_AJAX_PERF_TRA6, _DYN_ENABLE_REQUEST_HEADE4, _DYN_ENABLE_RESPONSE_HEAD12, _DYN_ERROR_STATUS_TEXT, _DYN_EXCEPTION, _DYN_EXCLUDE_REQUEST_FROM8, _DYN_GET_ABSOLUTE_URL, _DYN_GET_ALL_RESPONSE_HEA15, _DYN_GET_PART_APROPS, _DYN_GET_TRACE_FLAGS, _DYN_GET_TRACE_ID, _DYN_HEADERS, _DYN_HEADER_MAP, _DYN_INCLUDE_CORRELATION_2, _DYN_INST, _DYN_LENGTH, _DYN_MAX_AJAX_CALLS_PER_V7, _DYN_METHOD, _DYN_NAME, _DYN_OPEN_DONE, _DYN_PERF_MARK, _DYN_PERF_TIMING, _DYN_REQUEST_HEADERS, _DYN_REQUEST_SENT_TIME, _DYN_REQUEST_URL, _DYN_RESPONSE, _DYN_RESPONSE_FINISHED_TI14, _DYN_RESPONSE_TEXT, _DYN_SEND_DONE, _DYN_SET_REQUEST_HEADER, _DYN_SPAN_ID, _DYN_SPAN_ID1, _DYN_START_TIME, _DYN_STATE_CHANGE_ATTACHE13, _DYN_STATUS, _DYN_STATUS_TEXT, _DYN_TO_LOWER_CASE, _DYN_TRACE_FLAGS, _DYN_TRACE_ID, _DYN_TRACE_ID0, _DYN_TRACK_DEPENDENCY_DAT3, _DYN__ADD_HOOK, _DYN__CREATE_TRACK_ITEM } from \"./__DynamicConstants\";\r\nimport { ajaxRecord } from \"./ajaxRecord\";\r\nvar AJAX_MONITOR_PREFIX = \"ai.ajxmn.\";\r\nvar strDiagLog = \"diagLog\";\r\nvar AJAX_DATA_CONTAINER = \"_ajaxData\";\r\nvar STR_FETCH = \"fetch\";\r\nvar ERROR_HEADER = \"Failed to monitor XMLHttpRequest\";\r\nvar ERROR_PREFIX = \", monitoring data for this ajax call \";\r\nvar ERROR_POSTFIX = ERROR_PREFIX + \"may be incorrect.\";\r\nvar ERROR_NOT_SENT = ERROR_PREFIX + \"won't be sent.\";\r\nvar CORRELATION_HEADER_ERROR = \"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.\";\r\nvar CUSTOM_REQUEST_CONTEXT_ERROR = \"Failed to add custom defined request context as configured call back may missing a null check.\";\r\nvar FAILED_TO_CALCULATE_DURATION_ERROR = \"Failed to calculate the duration of the \";\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[STR_FETCH])) {\r\n return null;\r\n }\r\n return _global[STR_FETCH];\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, ajaxDataId) {\r\n var _a, _b;\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 var xhrData = {\r\n xh: [],\r\n i: (_a = {},\r\n _a[ajaxDataId] = {},\r\n _a)\r\n };\r\n xhr[AJAX_DATA_CONTAINER] = xhrData;\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 /* _eInternalMessageId.FailedMonitorAjaxOpen */, \"Failed to enable XMLHttpRequest monitoring, extension is not supported\", (_b = {},\r\n _b[_DYN_EXCEPTION /* @min:exception */] = dumpObj(e),\r\n _b));\r\n }\r\n }\r\n return result;\r\n}\r\n/**\r\n * Internal helper to fetch the SDK instance tracking data for this XHR request\r\n * @param xhr\r\n * @param ajaxDataId\r\n * @returns\r\n */\r\nvar _getAjaxData = function (xhr, ajaxDataId) {\r\n if (xhr && ajaxDataId && xhr[AJAX_DATA_CONTAINER]) {\r\n return (xhr[AJAX_DATA_CONTAINER].i || {})[ajaxDataId];\r\n }\r\n return null;\r\n};\r\n/**\r\n * @ignore\r\n * Internal helper to track the singleton shared tracking headers, so we can attempt to not create headers\r\n * that might cause an issue if multiple values are populated.\r\n * @param xhr - The instrumented XHR instance\r\n */\r\nvar _addSharedXhrHeaders = function (xhr, name, value) {\r\n if (xhr) {\r\n var headers = (xhr[AJAX_DATA_CONTAINER] || {}).xh;\r\n if (headers) {\r\n headers.push({\r\n n: name,\r\n v: value\r\n });\r\n }\r\n }\r\n};\r\nvar _isHeaderSet = function (xhr, name) {\r\n var isPresent = false;\r\n if (xhr) {\r\n var headers = (xhr[AJAX_DATA_CONTAINER] || {}).xh;\r\n if (headers) {\r\n arrForEach(headers, function (header) {\r\n if (header.n === name) {\r\n isPresent = true;\r\n return -1;\r\n }\r\n });\r\n }\r\n }\r\n return isPresent;\r\n};\r\n/** @Ignore */\r\nfunction _getFailedAjaxDiagnosticsMessage(xhr, ajaxDataId) {\r\n var result = \"\";\r\n try {\r\n var ajaxData = _getAjaxData(xhr, ajaxDataId);\r\n if (ajaxData && ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */]) {\r\n result += \"(url: '\" + ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] + \"')\";\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 /* eLoggingSeverity.CRITICAL */, msgId, message, properties, isUserAct);\r\n}\r\n/** @ignore */\r\nfunction _throwInternalWarning(ajaxMonitorInstance, msgId, message, properties, isUserAct) {\r\n _throwInternal(ajaxMonitorInstance[strDiagLog](), 2 /* eLoggingSeverity.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 (callDetails) {\r\n var _a;\r\n _throwInternalCritical(ajaxMonitorInstance, internalMessage, message, (_a = {\r\n ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(callDetails[_DYN_INST /* @min:%2einst */], ajaxMonitorInstance._ajaxDataId)\r\n },\r\n _a[_DYN_EXCEPTION /* @min:exception */] = dumpObj(callDetails.err),\r\n _a));\r\n };\r\n}\r\nfunction _indexOf(value, match) {\r\n if (value && match) {\r\n return strIndexOf(value, match);\r\n }\r\n return -1;\r\n}\r\nfunction _addHandler(container, id, theFunc) {\r\n var theHandler = {\r\n id: id,\r\n fn: theFunc\r\n };\r\n container.push(theHandler);\r\n return {\r\n remove: function () {\r\n arrForEach(container, function (initializer, idx) {\r\n if (initializer.id === theHandler.id) {\r\n container.splice(idx, 1);\r\n return -1;\r\n }\r\n });\r\n }\r\n };\r\n}\r\nfunction _processDependencyContainer(core, container, details, message) {\r\n var result = true;\r\n arrForEach(container, function (theFunc, idx) {\r\n try {\r\n if (theFunc.fn.call(null, details) === false) {\r\n result = false;\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(core && core.logger, 1 /* eLoggingSeverity.CRITICAL */, 64 /* _eInternalMessageId.TelemetryInitializerFailed */, \"Dependency \" + message + \" [#\" + idx + \"] failed: \" + getExceptionName(e), { exception: dumpObj(e) }, true);\r\n }\r\n });\r\n return result;\r\n}\r\nfunction _processDependencyListeners(listeners, core, ajaxData, xhr, input, init) {\r\n var _a;\r\n var initializersCount = listeners[_DYN_LENGTH /* @min:%2elength */];\r\n if (initializersCount > 0) {\r\n var details = (_a = {},\r\n _a[_DYN_CORE /* @min:core */] = core,\r\n _a.xhr = xhr,\r\n _a.input = input,\r\n _a.init = init,\r\n _a.traceId = ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */],\r\n _a.spanId = ajaxData[_DYN_SPAN_ID /* @min:%2espanID */],\r\n _a.traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */],\r\n _a.context = ajaxData[_DYN_CONTEXT /* @min:%2econtext */] || {},\r\n _a.aborted = !!ajaxData[_DYN_ABORTED /* @min:%2eaborted */],\r\n _a);\r\n _processDependencyContainer(core, listeners, details, \"listener\");\r\n ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] = details[_DYN_TRACE_ID0 /* @min:%2etraceId */];\r\n ajaxData[_DYN_SPAN_ID /* @min:%2espanID */] = details[_DYN_SPAN_ID1 /* @min:%2espanId */];\r\n ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = details[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n ajaxData[_DYN_CONTEXT /* @min:%2econtext */] = details[_DYN_CONTEXT /* @min:%2econtext */];\r\n }\r\n}\r\nvar BLOB_CORE = \"*.blob.core.\";\r\nexport var DfltAjaxCorrelationHeaderExDomains = objFreeze([\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\nvar _internalExcludeEndpoints = [\r\n /https:\\/\\/[^\\/]*(\\.pipe\\.aria|aria\\.pipe|events\\.data|collector\\.azure)\\.[^\\/]+\\/(OneCollector\\/1|Collector\\/3)\\.0/i\r\n];\r\nvar _defaultConfig = objFreeze((_a = {},\r\n _a[_DYN_MAX_AJAX_CALLS_PER_V7 /* @min:maxAjaxCallsPerView */] = 500,\r\n _a[_DYN_DISABLE_AJAX_TRACKIN9 /* @min:disableAjaxTracking */] = false,\r\n _a[_DYN_DISABLE_FETCH_TRACKI11 /* @min:disableFetchTracking */] = false,\r\n _a[_DYN_EXCLUDE_REQUEST_FROM8 /* @min:excludeRequestFromAutoTrackingPatterns */] = undefined,\r\n _a.disableCorrelationHeaders = false,\r\n _a.distributedTracingMode = 1 /* eDistributedTracingModes.AI_AND_W3C */,\r\n _a.correlationHeaderExcludedDomains = DfltAjaxCorrelationHeaderExDomains,\r\n _a.correlationHeaderDomains = undefined,\r\n _a.correlationHeaderExcludePatterns = undefined,\r\n _a.appId = undefined,\r\n _a.enableCorsCorrelation = false,\r\n _a[_DYN_ENABLE_REQUEST_HEADE4 /* @min:enableRequestHeaderTracking */] = false,\r\n _a[_DYN_ENABLE_RESPONSE_HEAD12 /* @min:enableResponseHeaderTracking */] = false,\r\n _a[_DYN_ENABLE_AJAX_ERROR_ST5 /* @min:enableAjaxErrorStatusText */] = false,\r\n _a[_DYN_ENABLE_AJAX_PERF_TRA6 /* @min:enableAjaxPerfTracking */] = false,\r\n _a.maxAjaxPerfLookupAttempts = 3,\r\n _a[_DYN_AJAX_PERF_LOOKUP_DEL10 /* @min:ajaxPerfLookupDelay */] = 25,\r\n _a.ignoreHeaders = [\r\n \"Authorization\",\r\n \"X-API-Key\",\r\n \"WWW-Authenticate\"\r\n ],\r\n _a[_DYN_ADD_REQUEST_CONTEXT /* @min:addRequestContext */] = undefined,\r\n _a.addIntEndpoints = true,\r\n _a));\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 _extensionConfig;\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 var _ajaxDataId;\r\n var _dependencyHandlerId;\r\n var _dependencyListeners;\r\n var _dependencyInitializers;\r\n var _ignoreHeaders;\r\n var _maxAjaxPerfLookupAttempts;\r\n var _ajaxPerfLookupDelay;\r\n var _distributedTracingMode;\r\n var _appId;\r\n var _polyfillInitialized;\r\n dynamicProto(AjaxMonitor, _this, function (_self, _base) {\r\n var _addHook = _base[_DYN__ADD_HOOK /* @min:%2e_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 _reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE /* @min:%2ecore */], null, dependency, properties);\r\n };\r\n _self[_DYN_INCLUDE_CORRELATION_2 /* @min:%2eincludeCorrelationHeaders */] = 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 _processDependencyListeners(_dependencyListeners, _self[_DYN_CORE /* @min:%2ecore */], ajaxData, xhr, input, init);\r\n if (input || input === \"\") { // Fetch\r\n if (correlationIdCanIncludeCorrelationHeader(_extensionConfig, ajaxData[_DYN_GET_ABSOLUTE_URL /* @min:%2egetAbsoluteUrl */](), 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 var headers = new Headers(init[_DYN_HEADERS /* @min:%2eheaders */] || (input instanceof Request ? (input[_DYN_HEADERS /* @min:%2eheaders */] || {}) : {}));\r\n if (_isUsingAIHeaders) {\r\n var id = \"|\" + ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] + \".\" + ajaxData[_DYN_SPAN_ID /* @min:%2espanID */];\r\n headers.set(RequestHeaders[3 /* eRequestHeaders.requestIdHeader */], id);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[3 /* eRequestHeaders.requestIdHeader */]] = id;\r\n }\r\n }\r\n var appId = _appId || (_context && _context.appId());\r\n if (appId) {\r\n headers.set(RequestHeaders[0 /* eRequestHeaders.requestContextHeader */], RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]] = RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId;\r\n }\r\n }\r\n if (_isUsingW3CHeaders) {\r\n var traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n if (isNullOrUndefined(traceFlags)) {\r\n traceFlags = 0x01;\r\n }\r\n var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */], ajaxData[_DYN_SPAN_ID /* @min:%2espanID */], traceFlags));\r\n headers.set(RequestHeaders[4 /* eRequestHeaders.traceParentHeader */], traceParent);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[4 /* eRequestHeaders.traceParentHeader */]] = traceParent;\r\n }\r\n }\r\n init[_DYN_HEADERS /* @min:%2eheaders */] = headers;\r\n }\r\n return init;\r\n }\r\n else if (xhr) { // XHR\r\n if (correlationIdCanIncludeCorrelationHeader(_extensionConfig, ajaxData[_DYN_GET_ABSOLUTE_URL /* @min:%2egetAbsoluteUrl */](), currentWindowHost)) {\r\n if (_isUsingAIHeaders) {\r\n if (!_isHeaderSet(xhr, RequestHeaders[3 /* eRequestHeaders.requestIdHeader */])) {\r\n var id = \"|\" + ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] + \".\" + ajaxData[_DYN_SPAN_ID /* @min:%2espanID */];\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](RequestHeaders[3 /* eRequestHeaders.requestIdHeader */], id);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[3 /* eRequestHeaders.requestIdHeader */]] = id;\r\n }\r\n }\r\n else {\r\n _throwInternalWarning(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, \"Unable to set [\" + RequestHeaders[3 /* eRequestHeaders.requestIdHeader */] + \"] as it has already been set by another instance\");\r\n }\r\n }\r\n var appId = _appId || (_context && _context.appId());\r\n if (appId) {\r\n if (!_isHeaderSet(xhr, RequestHeaders[0 /* eRequestHeaders.requestContextHeader */])) {\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](RequestHeaders[0 /* eRequestHeaders.requestContextHeader */], RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]] = RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId;\r\n }\r\n }\r\n else {\r\n _throwInternalWarning(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, \"Unable to set [\" + RequestHeaders[0 /* eRequestHeaders.requestContextHeader */] + \"] as it has already been set by another instance\");\r\n }\r\n }\r\n if (_isUsingW3CHeaders) {\r\n var traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n if (isNullOrUndefined(traceFlags)) {\r\n traceFlags = 0x01;\r\n }\r\n if (!_isHeaderSet(xhr, RequestHeaders[4 /* eRequestHeaders.traceParentHeader */])) {\r\n var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */], ajaxData[_DYN_SPAN_ID /* @min:%2espanID */], traceFlags));\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](RequestHeaders[4 /* eRequestHeaders.traceParentHeader */], traceParent);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[4 /* eRequestHeaders.traceParentHeader */]] = traceParent;\r\n }\r\n }\r\n else {\r\n _throwInternalWarning(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, \"Unable to set [\" + RequestHeaders[4 /* eRequestHeaders.traceParentHeader */] + \"] as it has already been set by another instance\");\r\n }\r\n }\r\n }\r\n return xhr;\r\n }\r\n return undefined;\r\n };\r\n _self[_DYN_TRACK_DEPENDENCY_DAT3 /* @min:%2etrackDependencyDataInternal */] = 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 ((_distributedTracingMode === 2 /* eDistributedTracingModes.W3C */\r\n || _distributedTracingMode === 1 /* eDistributedTracingModes.AI_AND_W3C */)\r\n && typeof dependency.id === \"string\" && dependency.id[dependency.id[_DYN_LENGTH /* @min:%2elength */] - 1] !== \".\") {\r\n dependency.id += \".\";\r\n }\r\n if (isNullOrUndefined(dependency[_DYN_START_TIME /* @min:%2estartTime */])) {\r\n dependency[_DYN_START_TIME /* @min:%2estartTime */] = new Date();\r\n }\r\n var item = createTelemetryItem(dependency, RemoteDependencyData.dataType, RemoteDependencyData.envelopeType, _self[strDiagLog](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */].track(item);\r\n }\r\n else if (_trackAjaxAttempts === _maxAjaxCallsPerView) {\r\n _throwInternalCritical(_self, 55 /* _eInternalMessageId.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 _self.addDependencyListener = function (dependencyListener) {\r\n return _addHandler(_dependencyListeners, _dependencyHandlerId++, dependencyListener);\r\n };\r\n _self.addDependencyInitializer = function (dependencyInitializer) {\r\n return _addHandler(_dependencyInitializers, _dependencyHandlerId++, dependencyInitializer);\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 _polyfillInitialized = false; // polyfill monitoring initialized\r\n _currentWindowHost = location && location.host && location.host[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n _extensionConfig = null;\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 _dependencyHandlerId = 0;\r\n _dependencyListeners = [];\r\n _dependencyInitializers = [];\r\n _ajaxDataId = createUniqueNamespace(\"ajaxData\");\r\n _self._ajaxDataId = _ajaxDataId;\r\n _ignoreHeaders = null;\r\n _maxAjaxPerfLookupAttempts = 1;\r\n _ajaxPerfLookupDelay = 1;\r\n _distributedTracingMode = 1 /* eDistributedTracingModes.AI_AND_W3C */;\r\n _appId = null;\r\n }\r\n function _populateDefaults(config) {\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(config, function (details) {\r\n var config = details.cfg;\r\n var ctx = createProcessTelemetryContext(null, config, _self[_DYN_CORE /* @min:%2ecore */]);\r\n _extensionConfig = ctx.getExtCfg(AjaxMonitor.identifier, _defaultConfig);\r\n _distributedTracingMode = _extensionConfig.distributedTracingMode;\r\n _enableRequestHeaderTracking = _extensionConfig[_DYN_ENABLE_REQUEST_HEADE4 /* @min:%2eenableRequestHeaderTracking */];\r\n _enableAjaxErrorStatusText = _extensionConfig[_DYN_ENABLE_AJAX_ERROR_ST5 /* @min:%2eenableAjaxErrorStatusText */];\r\n _enableAjaxPerfTracking = _extensionConfig[_DYN_ENABLE_AJAX_PERF_TRA6 /* @min:%2eenableAjaxPerfTracking */];\r\n _maxAjaxCallsPerView = _extensionConfig[_DYN_MAX_AJAX_CALLS_PER_V7 /* @min:%2emaxAjaxCallsPerView */];\r\n _excludeRequestFromAutoTrackingPatterns = [].concat(_extensionConfig[_DYN_EXCLUDE_REQUEST_FROM8 /* @min:%2eexcludeRequestFromAutoTrackingPatterns */] || [], _extensionConfig.addIntEndpoints !== false ? _internalExcludeEndpoints : []);\r\n _addRequestContext = _extensionConfig[_DYN_ADD_REQUEST_CONTEXT /* @min:%2eaddRequestContext */];\r\n _isUsingAIHeaders = _distributedTracingMode === 0 /* eDistributedTracingModes.AI */ || _distributedTracingMode === 1 /* eDistributedTracingModes.AI_AND_W3C */;\r\n _isUsingW3CHeaders = _distributedTracingMode === 1 /* eDistributedTracingModes.AI_AND_W3C */ || _distributedTracingMode === 2 /* eDistributedTracingModes.W3C */;\r\n if (_enableAjaxPerfTracking) {\r\n var iKey = config.instrumentationKey || \"unkwn\";\r\n if (iKey[_DYN_LENGTH /* @min:%2elength */] > 5) {\r\n _markPrefix = AJAX_MONITOR_PREFIX + strSubstring(iKey, iKey[_DYN_LENGTH /* @min:%2elength */] - 5) + \".\";\r\n }\r\n else {\r\n _markPrefix = AJAX_MONITOR_PREFIX + iKey + \".\";\r\n }\r\n }\r\n _disableAjaxTracking = !!_extensionConfig[_DYN_DISABLE_AJAX_TRACKIN9 /* @min:%2edisableAjaxTracking */];\r\n _maxAjaxPerfLookupAttempts = _extensionConfig.maxAjaxPerfLookupAttempts;\r\n _ajaxPerfLookupDelay = _extensionConfig[_DYN_AJAX_PERF_LOOKUP_DEL10 /* @min:%2eajaxPerfLookupDelay */];\r\n _ignoreHeaders = _extensionConfig.ignoreHeaders;\r\n _appId = _extensionConfig.appId;\r\n }));\r\n }\r\n function _populateContext() {\r\n var propExt = _self[_DYN_CORE /* @min:%2ecore */].getPlugin(PropertiesPluginIdentifier);\r\n if (propExt) {\r\n _context = propExt.plugin[_DYN_CONTEXT /* @min:%2econtext */]; // 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 || _ignoreHeaders) {\r\n arrForEach(_ignoreHeaders, (function (key) {\r\n if (key[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() === header[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]()) {\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 _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extensionConfig, function () {\r\n _disableFetchTracking = !!_extensionConfig[_DYN_DISABLE_FETCH_TRACKI11 /* @min:%2edisableFetchTracking */];\r\n _enableResponseHeaderTracking = _extensionConfig[_DYN_ENABLE_RESPONSE_HEAD12 /* @min:%2eenableResponseHeaderTracking */];\r\n if (!_disableFetchTracking && !_fetchInitialized) {\r\n _addHook(InstrumentFunc(global, STR_FETCH, {\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[_DYN_INCLUDE_CORRELATION_2 /* @min:%2eincludeCorrelationHeaders */](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 || {})[_DYN_STATUS /* @min:%2estatus */], input, response, fetchData_1, function () {\r\n var _a;\r\n var ajaxResponse = (_a = {\r\n statusText: (response || {})[_DYN_STATUS_TEXT /* @min:%2estatusText */]\r\n },\r\n _a[_DYN_HEADER_MAP /* @min:headerMap */] = null,\r\n _a[_DYN_CORRELATION_CONTEXT /* @min:correlationContext */] = _getFetchCorrelationContext(response),\r\n _a);\r\n if (_enableResponseHeaderTracking && response) {\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[_DYN_HEADER_MAP /* @min:%2eheaderMap */] = responseHeaderMap_1;\r\n }\r\n return ajaxResponse;\r\n });\r\n return response;\r\n })\r\n .catch(function (reason) {\r\n _reportFetchMetrics(callDetails, 0, input, null, fetchData_1, null, { error: reason.message || dumpObj(reason) });\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 /* _eInternalMessageId.FailedMonitorAjaxOpen */, \"Failed to monitor Window.fetch\" + ERROR_POSTFIX)\r\n }, true, isWebWorker()));\r\n _fetchInitialized = true;\r\n }\r\n else if (isPolyfill && !_polyfillInitialized) {\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 \"polyfill\" 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, STR_FETCH, {\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 _polyfillInitialized = true;\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[STR_FETCH].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, _ajaxDataId)) {\r\n return;\r\n }\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extensionConfig, function () {\r\n _disableAjaxTracking = !!_extensionConfig[_DYN_DISABLE_AJAX_TRACKIN9 /* @min:%2edisableAjaxTracking */];\r\n _enableRequestHeaderTracking = _extensionConfig[_DYN_ENABLE_REQUEST_HEADE4 /* @min:%2eenableRequestHeaderTracking */];\r\n if (!_disableAjaxTracking && !_xhrInitialized) {\r\n // Instrument open\r\n _hookProto(XMLHttpRequest, \"open\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails, method, url, async) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (!_isDisabledRequest(xhr, url) && _isMonitoredXhrInstance(xhr, ajaxData, true)) {\r\n if (!ajaxData || !ajaxData.xhrMonitoringState[_DYN_OPEN_DONE /* @min:%2eopenDone */]) {\r\n // Only create a single ajaxData (even when multiple AI instances are running)\r\n ajaxData = _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, ajaxData);\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 15 /* _eInternalMessageId.FailedMonitorAjaxOpen */, ERROR_HEADER + \".open\" + ERROR_POSTFIX)\r\n });\r\n // Instrument send\r\n _hookProto(XMLHttpRequest, \"send\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails, context) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (_isMonitoredXhrInstance(xhr, ajaxData) && !ajaxData.xhrMonitoringState[_DYN_SEND_DONE /* @min:%2esendDone */]) {\r\n _createMarkId(\"xhr\", ajaxData);\r\n ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */] = dateTimeUtilsNow();\r\n _self[_DYN_INCLUDE_CORRELATION_2 /* @min:%2eincludeCorrelationHeaders */](ajaxData, undefined, undefined, xhr);\r\n ajaxData.xhrMonitoringState[_DYN_SEND_DONE /* @min:%2esendDone */] = true;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 17 /* _eInternalMessageId.FailedMonitorAjaxSend */, ERROR_HEADER + ERROR_POSTFIX)\r\n });\r\n // Instrument abort\r\n _hookProto(XMLHttpRequest, \"abort\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (_isMonitoredXhrInstance(xhr, ajaxData) && !ajaxData.xhrMonitoringState[_DYN_ABORT_DONE /* @min:%2eabortDone */]) {\r\n ajaxData[_DYN_ABORTED /* @min:%2eaborted */] = 1;\r\n ajaxData.xhrMonitoringState[_DYN_ABORT_DONE /* @min:%2eabortDone */] = true;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 13 /* _eInternalMessageId.FailedMonitorAjaxAbort */, ERROR_HEADER + \".abort\" + ERROR_POSTFIX)\r\n });\r\n // Instrument setRequestHeader\r\n _hookProto(XMLHttpRequest, \"setRequestHeader\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails, header, value) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (ajaxData && _isMonitoredXhrInstance(xhr, ajaxData)) {\r\n _addSharedXhrHeaders(xhr, header, value);\r\n if (_enableRequestHeaderTracking && _canIncludeHeaders(header)) {\r\n if (ajaxData) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][header] = value;\r\n }\r\n }\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, ERROR_HEADER + \".setRequestHeader\" + ERROR_POSTFIX)\r\n });\r\n _xhrInitialized = true;\r\n }\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) || \"\")[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\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 particular 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, ajaxData, excludeAjaxDataValidation) {\r\n var ajaxValidation = true;\r\n var initialized = _xhrInitialized;\r\n if (!isNullOrUndefined(xhr)) {\r\n ajaxValidation = excludeAjaxDataValidation === true || !isNullOrUndefined(ajaxData);\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 _getDistributedTraceCtx() {\r\n var distributedTraceCtx = null;\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */].getTraceCtx) {\r\n distributedTraceCtx = _self[_DYN_CORE /* @min:%2ecore */].getTraceCtx(false);\r\n }\r\n // Fall back\r\n if (!distributedTraceCtx && _context && _context.telemetryTrace) {\r\n distributedTraceCtx = createDistributedTraceContextFromTrace(_context.telemetryTrace);\r\n }\r\n return distributedTraceCtx;\r\n }\r\n function _openHandler(xhr, method, url, async) {\r\n var _a;\r\n var distributedTraceCtx = _getDistributedTraceCtx();\r\n var traceID = (distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_ID /* @min:%2egetTraceId */]()) || generateW3CId();\r\n var spanID = strSubstr(generateW3CId(), 0, 16);\r\n var xhrRequestData = xhr[AJAX_DATA_CONTAINER] = (xhr[AJAX_DATA_CONTAINER] || { xh: [], i: {} });\r\n var ajaxDataCntr = xhrRequestData.i = (xhrRequestData.i || {});\r\n var ajaxData = ajaxDataCntr[_ajaxDataId] = (ajaxDataCntr[_ajaxDataId] || new ajaxRecord(traceID, spanID, _self[strDiagLog](), (_a = _self.core) === null || _a === void 0 ? void 0 : _a.getTraceCtx()));\r\n ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_FLAGS /* @min:%2egetTraceFlags */]();\r\n ajaxData[_DYN_METHOD /* @min:%2emethod */] = method;\r\n ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] = url;\r\n ajaxData.xhrMonitoringState[_DYN_OPEN_DONE /* @min:%2eopenDone */] = true;\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = {};\r\n ajaxData.async = async;\r\n ajaxData[_DYN_ERROR_STATUS_TEXT /* @min:%2eerrorStatusText */] = _enableAjaxErrorStatusText;\r\n return ajaxData;\r\n }\r\n function _attachToOnReadyStateChange(xhr, ajaxData) {\r\n ajaxData.xhrMonitoringState[_DYN_STATE_CHANGE_ATTACHE13 /* @min:%2estateChangeAttached */] = eventOn(xhr, \"readystatechange\", function () {\r\n var _a;\r\n try {\r\n if (xhr && xhr.readyState === 4 && _isMonitoredXhrInstance(xhr, ajaxData)) {\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[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */](), \"c00c023f\") === -1) {\r\n _throwInternalCritical(_self, 16 /* _eInternalMessageId.FailedMonitorAjaxRSC */, ERROR_HEADER + \" 'readystatechange' event handler\" + ERROR_POSTFIX, (_a = {},\r\n _a[_DYN_AJAX_DIAGNOSTICS_MES16 /* @min:ajaxDiagnosticsMessage */] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId),\r\n _a[_DYN_EXCEPTION /* @min:exception */] = exceptionText,\r\n _a));\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[_DYN_RESPONSE_TEXT /* @min:%2eresponseText */];\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 = _getAjaxData(xhr, _ajaxDataId);\r\n ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = dateTimeUtilsNow();\r\n ajaxData[_DYN_STATUS /* @min:%2estatus */] = xhr[_DYN_STATUS /* @min:%2estatus */];\r\n function _reportXhrError(e, failedProps) {\r\n var errorProps = failedProps || {};\r\n errorProps[\"ajaxDiagnosticsMessage\"] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId);\r\n if (e) {\r\n errorProps[\"exception\"] = dumpObj(e);\r\n }\r\n _throwInternalWarning(_self, 14 /* _eInternalMessageId.FailedMonitorAjaxDur */, FAILED_TO_CALCULATE_DURATION_ERROR + \"ajax call\" + ERROR_NOT_SENT, errorProps);\r\n }\r\n _findPerfResourceEntry(\"xmlhttprequest\", ajaxData, function () {\r\n try {\r\n var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */](\"Ajax\", _enableRequestHeaderTracking, function () {\r\n var _a;\r\n var ajaxResponse = (_a = {\r\n statusText: xhr[_DYN_STATUS_TEXT /* @min:%2estatusText */]\r\n },\r\n _a[_DYN_HEADER_MAP /* @min:headerMap */] = null,\r\n _a[_DYN_CORRELATION_CONTEXT /* @min:correlationContext */] = _getAjaxCorrelationContext(xhr),\r\n _a.type = xhr.responseType,\r\n _a[_DYN_RESPONSE_TEXT /* @min:responseText */] = _getResponseText(xhr),\r\n _a.response = xhr[_DYN_RESPONSE /* @min:%2eresponse */],\r\n _a);\r\n if (_enableResponseHeaderTracking) {\r\n var headers = xhr[_DYN_GET_ALL_RESPONSE_HEA15 /* @min:%2egetAllResponseHeaders */]();\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[_DYN_HEADER_MAP /* @min:%2eheaderMap */] = 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[_DYN_STATUS /* @min:%2estatus */], xhr: xhr });\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 104 /* _eInternalMessageId.FailedAddingCustomDefinedRequestContext */, CUSTOM_REQUEST_CONTEXT_ERROR);\r\n }\r\n if (dependency) {\r\n if (properties !== undefined) {\r\n dependency[STR_PROPERTIES /* @min:%2eproperties */] = __assign(__assign({}, dependency.properties), properties);\r\n }\r\n var sysProperties = ajaxData[_DYN_GET_PART_APROPS /* @min:%2egetPartAProps */]();\r\n _reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE /* @min:%2ecore */], ajaxData, dependency, null, sysProperties);\r\n }\r\n else {\r\n _reportXhrError(null, {\r\n requestSentTime: ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */],\r\n responseFinishedTime: ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */]\r\n });\r\n }\r\n }\r\n finally {\r\n // cleanup telemetry data\r\n try {\r\n var xhrRequestData = (xhr[AJAX_DATA_CONTAINER] || { i: {} });\r\n var ajaxDataCntr = (xhrRequestData.i || {});\r\n if (ajaxDataCntr[_ajaxDataId]) {\r\n ajaxDataCntr[_ajaxDataId] = null;\r\n }\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 var _a;\r\n try {\r\n var responseHeadersString = xhr[_DYN_GET_ALL_RESPONSE_HEA15 /* @min:%2egetAllResponseHeaders */]();\r\n if (responseHeadersString !== null) {\r\n var index = _indexOf(responseHeadersString[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */](), RequestHeaders[8 /* eRequestHeaders.requestContextHeaderLowerCase */]);\r\n if (index !== -1) {\r\n var responseHeader = xhr.getResponseHeader(RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]);\r\n return correlationIdGetCorrelationContext(responseHeader);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 18 /* _eInternalMessageId.FailedMonitorAjaxGetCorrelationHeader */, CORRELATION_HEADER_ERROR, (_a = {},\r\n _a[_DYN_AJAX_DIAGNOSTICS_MES16 /* @min:ajaxDiagnosticsMessage */] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId),\r\n _a[_DYN_EXCEPTION /* @min:exception */] = dumpObj(e),\r\n _a));\r\n }\r\n }\r\n function _createMarkId(type, ajaxData) {\r\n if (ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] && _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[_DYN_LENGTH /* @min:%2elength */] === 1) {\r\n ajaxData[_DYN_PERF_MARK /* @min:%2eperfMark */] = entries[0];\r\n }\r\n }\r\n }\r\n }\r\n function _findPerfResourceEntry(initiatorType, ajaxData, trackCallback, reportError) {\r\n var perfMark = ajaxData[_DYN_PERF_MARK /* @min:%2eperfMark */];\r\n var performance = getPerformance();\r\n var maxAttempts = _maxAjaxPerfLookupAttempts;\r\n var retryDelay = _ajaxPerfLookupDelay;\r\n var requestUrl = ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */];\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[_DYN_LENGTH /* @min:%2elength */] - 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[_DYN_NAME /* @min:%2ename */], requestUrl) !== -1 || _indexOf(requestUrl, entry[_DYN_NAME /* @min:%2ename */]) !== -1)) {\r\n perfTiming = entry;\r\n }\r\n }\r\n else if (entry.entryType === \"mark\" && entry[_DYN_NAME /* @min:%2ename */] === perfMark[_DYN_NAME /* @min:%2ename */]) {\r\n // We hit the start event\r\n ajaxData[_DYN_PERF_TIMING /* @min:%2eperfTiming */] = perfTiming;\r\n break;\r\n }\r\n if (entry[_DYN_START_TIME /* @min:%2estartTime */] < perfMark[_DYN_START_TIME /* @min:%2estartTime */] - 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[_DYN_PERF_TIMING /* @min:%2eperfTiming */] || // - 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[_DYN_NAME /* @min:%2ename */]);\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 scheduleTimeout(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 _a;\r\n var distributedTraceCtx = _getDistributedTraceCtx();\r\n var traceID = (distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_ID /* @min:%2egetTraceId */]()) || generateW3CId();\r\n var spanID = strSubstr(generateW3CId(), 0, 16);\r\n var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog](), (_a = _self.core) === null || _a === void 0 ? void 0 : _a.getTraceCtx());\r\n ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_FLAGS /* @min:%2egetTraceFlags */]();\r\n ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */] = dateTimeUtilsNow();\r\n ajaxData[_DYN_ERROR_STATUS_TEXT /* @min:%2eerrorStatusText */] = _enableAjaxErrorStatusText;\r\n var requestUrl;\r\n if (input instanceof Request) {\r\n requestUrl = (input || {}).url || \"\";\r\n }\r\n else {\r\n requestUrl = input;\r\n }\r\n if (requestUrl === \"\") {\r\n var location_1 = getLocation();\r\n if (location_1 && location_1.href) {\r\n requestUrl = strSplit(location_1.href, \"#\")[0];\r\n }\r\n }\r\n ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] = requestUrl;\r\n var method = \"GET\";\r\n if (init && init[_DYN_METHOD /* @min:%2emethod */]) {\r\n method = init[_DYN_METHOD /* @min:%2emethod */];\r\n }\r\n else if (input && input instanceof Request) {\r\n method = input[_DYN_METHOD /* @min:%2emethod */];\r\n }\r\n ajaxData[_DYN_METHOD /* @min:%2emethod */] = method;\r\n var requestHeaders = {};\r\n if (_enableRequestHeaderTracking) {\r\n var headers = new Headers((init ? init[_DYN_HEADERS /* @min:%2eheaders */] : 0) || (input instanceof Request ? (input[_DYN_HEADERS /* @min:%2eheaders */] || {}) : {}));\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[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = requestHeaders;\r\n _createMarkId(STR_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 /* _eInternalMessageId.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_DURATION_ERROR + \"fetch call\" + ERROR_NOT_SENT, errorProps);\r\n }\r\n ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = dateTimeUtilsNow();\r\n ajaxData[_DYN_STATUS /* @min:%2estatus */] = status;\r\n _findPerfResourceEntry(STR_FETCH, ajaxData, function () {\r\n var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */](\"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 /* _eInternalMessageId.FailedAddingCustomDefinedRequestContext */, CUSTOM_REQUEST_CONTEXT_ERROR);\r\n }\r\n if (dependency) {\r\n if (properties !== undefined) {\r\n dependency[STR_PROPERTIES /* @min:%2eproperties */] = __assign(__assign({}, dependency.properties), properties);\r\n }\r\n var sysProperties = ajaxData[_DYN_GET_PART_APROPS /* @min:%2egetPartAProps */]();\r\n _reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE /* @min:%2ecore */], ajaxData, dependency, null, sysProperties);\r\n }\r\n else {\r\n _reportFetchError(14 /* _eInternalMessageId.FailedMonitorAjaxDur */, null, {\r\n requestSentTime: ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */],\r\n responseFinishedTime: ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */]\r\n });\r\n }\r\n }, function (e) {\r\n _reportFetchError(18 /* _eInternalMessageId.FailedMonitorAjaxGetCorrelationHeader */, e, null);\r\n });\r\n }\r\n function _getFetchCorrelationContext(response) {\r\n var _a;\r\n if (response && response[_DYN_HEADERS /* @min:%2eheaders */]) {\r\n try {\r\n var responseHeader = response[_DYN_HEADERS /* @min:%2eheaders */].get(RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]);\r\n return correlationIdGetCorrelationContext(responseHeader);\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 18 /* _eInternalMessageId.FailedMonitorAjaxGetCorrelationHeader */, CORRELATION_HEADER_ERROR, (_a = {\r\n fetchDiagnosticsMessage: _getFailedFetchDiagnosticsMessage(response)\r\n },\r\n _a[_DYN_EXCEPTION /* @min:exception */] = dumpObj(e),\r\n _a));\r\n }\r\n }\r\n }\r\n function _reportDependencyInternal(initializers, core, ajaxData, dependency, properties, systemProperties) {\r\n var _a;\r\n var result = true;\r\n var initializersCount = initializers[_DYN_LENGTH /* @min:%2elength */];\r\n if (initializersCount > 0) {\r\n var details = (_a = {\r\n item: dependency\r\n },\r\n _a[STR_PROPERTIES /* @min:properties */] = properties,\r\n _a.sysProperties = systemProperties,\r\n _a.context = ajaxData ? ajaxData[_DYN_CONTEXT /* @min:%2econtext */] : null,\r\n _a.aborted = ajaxData ? !!ajaxData[_DYN_ABORTED /* @min:%2eaborted */] : false,\r\n _a);\r\n result = _processDependencyContainer(core, initializers, details, \"initializer\");\r\n }\r\n if (result) {\r\n _self[_DYN_TRACK_DEPENDENCY_DAT3 /* @min:%2etrackDependencyDataInternal */](dependency, properties, systemProperties);\r\n }\r\n }\r\n });\r\n return _this;\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.addDependencyListener.\r\n /**\r\n * Add an dependency telemetry initializer callback function to allow populating additional properties or drop the request.\r\n * It is called after the dependency call has completed and any available performance details are available. A dependency\r\n * initializer is similar to the TelemetryInitializer function but it allows you to block the reporting of the dependency\r\n * request so that it doesn't count against the `maxAjaxCallsPerView`.\r\n * @param dependencyInitializer - The Dependency Telemetry Initializer function\r\n * @returns - A IDependencyInitializerHandler to enable the initializer to be removed\r\n */\r\n AjaxMonitor.prototype.addDependencyInitializer = function (dependencyInitializer) {\r\n return null;\r\n };\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"],"names":["STR_DURATION","STR_PROPERTIES","_DYN_REQUEST_URL","_DYN_INST","_DYN_LENGTH","_DYN_TRACE_ID","_DYN_SPAN_ID","_DYN_TRACE_FLAGS","_DYN_CONTEXT","_DYN_ABORTED","_DYN_TRACE_ID0","_DYN_SPAN_ID1","_DYN__ADD_HOOK","_DYN_CORE","_DYN_INCLUDE_CORRELATION_2","_DYN_GET_ABSOLUTE_URL","_DYN_HEADERS","_DYN_REQUEST_HEADERS","_DYN_SET_REQUEST_HEADER","_DYN_TRACK_DEPENDENCY_DAT3","_DYN_START_TIME","_DYN_TO_LOWER_CASE","_DYN_ENABLE_REQUEST_HEADE4","_DYN_ENABLE_AJAX_ERROR_ST5","_DYN_ENABLE_AJAX_PERF_TRA6","_DYN_MAX_AJAX_CALLS_PER_V7","_DYN_EXCLUDE_REQUEST_FROM8","_DYN_ADD_REQUEST_CONTEXT","_DYN_DISABLE_AJAX_TRACKIN9","_DYN_AJAX_PERF_LOOKUP_DEL10","_DYN_DISABLE_FETCH_TRACKI11","_DYN_ENABLE_RESPONSE_HEAD12","_DYN_STATUS","_DYN_STATUS_TEXT","_DYN_HEADER_MAP","_DYN_OPEN_DONE","_DYN_SEND_DONE","_DYN_REQUEST_SENT_TIME","_DYN_ABORT_DONE","_DYN_GET_TRACE_ID","_DYN_GET_TRACE_FLAGS","_DYN_METHOD","_DYN_ERROR_STATUS_TEXT","_DYN_STATE_CHANGE_ATTACHE13","_DYN_RESPONSE_TEXT","_DYN_RESPONSE_FINISHED_TI14","_DYN__CREATE_TRACK_ITEM","_DYN_RESPONSE","_DYN_GET_ALL_RESPONSE_HEA15","_DYN_GET_PART_APROPS","_DYN_PERF_MARK","_DYN_NAME","_DYN_PERF_TIMING","_DYN_EXCEPTION","_DYN_AJAX_DIAGNOSTICS_MES16","_DYN_CORRELATION_CONTEXT","_DYN_AJAX_TOTAL_DURATION","_DYN_EVENT_TRACE_CTX","_calcPerfDuration","resourceEntry","start","end","result","from","to","_setPerfDuration","props","name","value","_setPerfValue","strPerf","_a","XHRMonitoringState","self","this","setRequestHeaderDone","ajaxRecord","traceId","spanId","logger","traceCtx","_logger","completed","requestHeadersSize","responseReceivingDuration","callbackDuration","pageUrl","requestSize","responseStartedTime","callbackFinishedTime","endTime","xhrMonitoringState","clientFailure","getTraceFlags","getSpanId","getAbsoluteUrl","getPathName","ajaxType","enableRequestHeaderTracking","getResponse","ajaxTotalDuration","Math","round","requestSentTime","responseFinishedTime","dependency","id","target","type","duration","success","responseCode","HttpMethod","Date","setTime","ajaxData","propsSet","strName","strStart","strEnd","strDomainLookup","strConnect","strRedirect","strRequest","strResponse","strStartTime","strDomainLookupStart","strDomainLookupEnd","strConnectStart","strConnectEnd","strRequestStart","strRequestEnd","strResponseStart","strResponseEnd","strRedirectStart","strRedirectEnd","strTransferSize","strEncodedBodySize","strDecodedBodySize","strServerTiming","serverTiming","server_1","idx","newValue","key","val","perfAttempts","_populatePerfData","requestHeaders","response","correlationContext","headerMap","responseHeaders","responseType","responseText","JSON","stringify","partA","traceExt","parentID","__ieDyn","AJAX_MONITOR_PREFIX","strDiagLog","AJAX_DATA_CONTAINER","STR_FETCH","ERROR_HEADER","ERROR_PREFIX","ERROR_POSTFIX","ERROR_NOT_SENT","CORRELATION_HEADER_ERROR","CUSTOM_REQUEST_CONTEXT_ERROR","FAILED_TO_CALCULATE_DURATION_ERROR","_markCount","_getAjaxData","xhr","ajaxDataId","i","_isHeaderSet","isPresent","headers","xh","header","n","_getFailedAjaxDiagnosticsMessage","e","_throwInternalCritical","ajaxMonitorInstance","msgId","message","properties","isUserAct","_throwInternalWarning","_createErrorCallbackFunc","internalMessage","callDetails","ajaxDiagnosticsMessage","_ajaxDataId","err","_indexOf","match","_addHandler","container","theFunc","theHandler","fn","push","remove","initializer","splice","_processDependencyContainer","core","details","call","exception","BLOB_CORE","DfltAjaxCorrelationHeaderExDomains","_internalExcludeEndpoints","_defaultConfig","undefined","disableCorrelationHeaders","distributedTracingMode","correlationHeaderExcludedDomains","correlationHeaderDomains","correlationHeaderExcludePatterns","appId","enableCorsCorrelation","maxAjaxPerfLookupAttempts","ignoreHeaders","addIntEndpoints","AjaxMonitor","_super","_fetchInitialized","_xhrInitialized","_currentWindowHost","_extensionConfig","_enableRequestHeaderTracking","_enableAjaxErrorStatusText","_trackAjaxAttempts","_context","_isUsingW3CHeaders","_isUsingAIHeaders","_markPrefix","_enableAjaxPerfTracking","_maxAjaxCallsPerView","_enableResponseHeaderTracking","_disabledUrls","_disableAjaxTracking","_disableFetchTracking","_excludeRequestFromAutoTrackingPatterns","_addRequestContext","_evtNamespace","_dependencyHandlerId","_dependencyListeners","_dependencyInitializers","_ignoreHeaders","_maxAjaxPerfLookupAttempts","_ajaxPerfLookupDelay","_distributedTracingMode","_appId","_polyfillInitialized","_this","identifier","priority","_self","_base","_addHook","_initDefaults","location","host","_canIncludeHeaders","rlt","_hookProto","funcName","callbacks","_isDisabledRequest","request","init","isDisabled","theUrl","url","regex","theRegex","RegExp","test","idx2","substring","_isMonitoredXhrInstance","excludeAjaxDataValidation","ajaxValidation","initialized","_getDistributedTraceCtx","distributedTraceCtx","getTraceCtx","telemetryTrace","_createMarkId","performance_1","mark","markId","entries","getEntriesByName","_findPerfResourceEntry","initiatorType","trackCallback","reportError","perfMark","performance","maxAttempts","retryDelay","requestUrl","attempt","locateResourceTiming","perfTiming","getEntries","lp","entry","entryType","async","clearMarks","_getFailedFetchDiagnosticsMessage","input","concat","_reportFetchMetrics","status","_reportFetchError","failedProps","errorProps","sysProperties","_reportDependencyInternal","initializers","systemProperties","item","context","aborted","initialize","config","extensions","pluginChain","propExt","isInitialized","evtNamespace","cfg","ctx","getExtCfg","iKey","instrumentationKey","_populateDefaults","_b","proto","XMLHttpRequest","open","send","abort","ieVer","xhrData","theOpen","_supportsAjaxMonitoring","ns","req","method","traceID","spanID","xhrRequestData","ajaxDataCntr","_openHandler","readyState","_reportXhrError","ajaxResponse","statusText","responseHeadersString","responseHeader","getResponseHeader","_getAjaxCorrelationContext","_getResponseText","arr","split","responseHeaderMap_2","line","parts","shift","join","_onAjaxComplete","exceptionText","_attachToOnReadyStateChange","hkErr","v","_addSharedXhrHeaders","_instrumentXhr","fetch","_global","Request","global","isPolyfill","polyfill","fetchData","location_1","href","Headers","forEach","_createFetchRecord","newInit","set","data","rsp","fetchData_1","rslt","then","get","fetchDiagnosticsMessage","_getFetchCorrelationContext","responseHeaderMap_1","catch","reason","error","_instrumentFetch","getPlugin","plugin","_doTeardown","trackDependencyData","currentWindowHost","listeners","traceFlags","_processDependencyListeners","traceParent","RemoteDependencyData","track","addDependencyListener","dependencyListener","addDependencyInitializer","dependencyInitializer","prototype","processTelemetry","itemCtx","processNext","BaseTelemetryPlugin"],"sourceRoot":""}