@microsoft/applicationinsights-dependencies-js 3.0.3-nightly3.2308-10 → 3.0.3-nightly3.2308-16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/browser/es5/applicationinsights-dependencies-js.cjs.js +127 -58
  2. package/browser/es5/applicationinsights-dependencies-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-dependencies-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-dependencies-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-dependencies-js.gbl.js +129 -60
  6. package/browser/es5/applicationinsights-dependencies-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-dependencies-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-dependencies-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-dependencies-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-dependencies-js.js +129 -60
  11. package/browser/es5/applicationinsights-dependencies-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-dependencies-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-dependencies-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-dependencies-js.js +127 -58
  15. package/dist/es5/applicationinsights-dependencies-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-dependencies-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-dependencies-js.min.js.map +1 -1
  18. package/dist-es5/DependencyInitializer.js +1 -1
  19. package/dist-es5/DependencyListener.js +1 -1
  20. package/dist-es5/InternalConstants.js +1 -1
  21. package/dist-es5/__DynamicConstants.js +1 -1
  22. package/dist-es5/ajax.js +139 -58
  23. package/dist-es5/ajax.js.map +1 -1
  24. package/dist-es5/ajaxRecord.js +1 -1
  25. package/dist-es5/ajaxUtils.js +1 -1
  26. package/dist-es5/applicationinsights-dependencies-js.js +1 -1
  27. package/package.json +3 -3
  28. package/types/applicationinsights-dependencies-js.d.ts +18 -2
  29. package/types/applicationinsights-dependencies-js.namespaced.d.ts +18 -2
@@ -1,65 +1,65 @@
1
1
  {
2
2
  "name": "applicationinsights-dependencies-js",
3
- "version": "3.0.3-nightly3.2308-10",
3
+ "version": "3.0.3-nightly3.2308-16",
4
4
  "ext": {
5
5
  "@cjs.js": {
6
6
  "file": "applicationinsights-dependencies-js.cjs.js",
7
7
  "type": "text/javascript; charset=utf-8",
8
- "integrity": "sha256-8rTkRnHZOmRliQhA4OCi3Wds1tk2rx5M67s6MLitZZc= sha384-rPB/16XuQM3LVXgoAw5UIPWLlNGaMMVHo6bmuA7XkPsehztbTJ6GKwGHKU+vzHnS sha512-Om2o+YELfJwok3MAOlg5oOZ3ffC65oYUmPIcNhPRRkKn6m9ga7JtgNXS8rgtDCoi/artgi6u+KQ93h6bwgKr6A==",
8
+ "integrity": "sha256-4PQ73wCI8102m2Az69niR40rehQyCIaNhZ1fSGdtGog= sha384-OFgsubmjBm+3nzyANb4aOasB9prNgLB0RL7cFROaGXzaNum9jzfOCpT/zY87WM39 sha512-hADe6QbhOhWOuZ6dWvWHDbFXzo9S0kKFWbhBsYMsScKjNRM16wra7yCUBl6iw9mJ8bWhCNy5jYHpULAhUCbvlQ==",
9
9
  "hashes": {
10
- "sha256": "8rTkRnHZOmRliQhA4OCi3Wds1tk2rx5M67s6MLitZZc=",
11
- "sha384": "rPB/16XuQM3LVXgoAw5UIPWLlNGaMMVHo6bmuA7XkPsehztbTJ6GKwGHKU+vzHnS",
12
- "sha512": "Om2o+YELfJwok3MAOlg5oOZ3ffC65oYUmPIcNhPRRkKn6m9ga7JtgNXS8rgtDCoi/artgi6u+KQ93h6bwgKr6A=="
10
+ "sha256": "4PQ73wCI8102m2Az69niR40rehQyCIaNhZ1fSGdtGog=",
11
+ "sha384": "OFgsubmjBm+3nzyANb4aOasB9prNgLB0RL7cFROaGXzaNum9jzfOCpT/zY87WM39",
12
+ "sha512": "hADe6QbhOhWOuZ6dWvWHDbFXzo9S0kKFWbhBsYMsScKjNRM16wra7yCUBl6iw9mJ8bWhCNy5jYHpULAhUCbvlQ=="
13
13
  }
14
14
  },
15
15
  "@cjs.min.js": {
16
16
  "file": "applicationinsights-dependencies-js.cjs.min.js",
17
17
  "type": "text/javascript; charset=utf-8",
18
- "integrity": "sha256-K/rqR49wZ8ASqLvSXZeuhSFbvJ/LMulJ3RkeNNyBLFo= sha384-Fa6kTqgBmC2qFx/vpQiKpdbesUV5InwZUB3nLQ2fmwwBioZ7quNUNAzMRumh3OF8 sha512-QxWs/DFw/vDeB2xqDP0Atys7GWtg6gg24pHtZ5oA1SEAJSI5ORuhVcwwYrnmXriuolJIVWZ4In3TrfZQ0EP/fg==",
18
+ "integrity": "sha256-wgVL0X7QTZeSUo1EK79zVSbc4I/qHWZFGp67vo0g1qI= sha384-xV8hHLQza6ZGUzBzKBu8fJQi0GQNhtIYfO4wOpQt4lsuKUpRYqsfmEgAfDoiywa/ sha512-2mC0RN61HCw7vcF7BObqDWHop5xiN67tUpVZVUEs4UMoZI/1JdikIdA13xBk3UyZHYu/vzgjGO+weBjDP/fXQw==",
19
19
  "hashes": {
20
- "sha256": "K/rqR49wZ8ASqLvSXZeuhSFbvJ/LMulJ3RkeNNyBLFo=",
21
- "sha384": "Fa6kTqgBmC2qFx/vpQiKpdbesUV5InwZUB3nLQ2fmwwBioZ7quNUNAzMRumh3OF8",
22
- "sha512": "QxWs/DFw/vDeB2xqDP0Atys7GWtg6gg24pHtZ5oA1SEAJSI5ORuhVcwwYrnmXriuolJIVWZ4In3TrfZQ0EP/fg=="
20
+ "sha256": "wgVL0X7QTZeSUo1EK79zVSbc4I/qHWZFGp67vo0g1qI=",
21
+ "sha384": "xV8hHLQza6ZGUzBzKBu8fJQi0GQNhtIYfO4wOpQt4lsuKUpRYqsfmEgAfDoiywa/",
22
+ "sha512": "2mC0RN61HCw7vcF7BObqDWHop5xiN67tUpVZVUEs4UMoZI/1JdikIdA13xBk3UyZHYu/vzgjGO+weBjDP/fXQw=="
23
23
  }
24
24
  },
25
25
  "@gbl.js": {
26
26
  "file": "applicationinsights-dependencies-js.gbl.js",
27
27
  "type": "text/javascript; charset=utf-8",
28
- "integrity": "sha256-u4UaSOi6xohdgK7I87DUbRQ41cLju0IuyXYXqAIlYvs= sha384-kP+fGiOGq75q4DfItwg6gIfCBfx9nYTBwthH9lyRfsSgG1uR2om4jBLMvgTd1WbC sha512-1nx+1AA4YcA6I77ae3FHVP0chAzQBCXOdbx3PAEIY6NXBwV7zseXDnhLgXzs0SomhoPMGB9LV/C2Jou2eQx4tA==",
28
+ "integrity": "sha256-JQpKY/duJndWyTMbfGMCHQKYUejMSQRbMDXcneTP/lk= sha384-4UJV/7+3OQgHoS3/BxTG2dYVoKIvSjsqUfs96ITxIjpY195S3p6Ifd8nFNtCUoso sha512-QVO5AGJGqGiHjgPzdKJOPk24NkY3GAxmajkgJhoEi6/Zx4a+q9lcG0TWXFjXCrdKRzetyL63qN+wmUyqtucixw==",
29
29
  "hashes": {
30
- "sha256": "u4UaSOi6xohdgK7I87DUbRQ41cLju0IuyXYXqAIlYvs=",
31
- "sha384": "kP+fGiOGq75q4DfItwg6gIfCBfx9nYTBwthH9lyRfsSgG1uR2om4jBLMvgTd1WbC",
32
- "sha512": "1nx+1AA4YcA6I77ae3FHVP0chAzQBCXOdbx3PAEIY6NXBwV7zseXDnhLgXzs0SomhoPMGB9LV/C2Jou2eQx4tA=="
30
+ "sha256": "JQpKY/duJndWyTMbfGMCHQKYUejMSQRbMDXcneTP/lk=",
31
+ "sha384": "4UJV/7+3OQgHoS3/BxTG2dYVoKIvSjsqUfs96ITxIjpY195S3p6Ifd8nFNtCUoso",
32
+ "sha512": "QVO5AGJGqGiHjgPzdKJOPk24NkY3GAxmajkgJhoEi6/Zx4a+q9lcG0TWXFjXCrdKRzetyL63qN+wmUyqtucixw=="
33
33
  }
34
34
  },
35
35
  "@gbl.min.js": {
36
36
  "file": "applicationinsights-dependencies-js.gbl.min.js",
37
37
  "type": "text/javascript; charset=utf-8",
38
- "integrity": "sha256-GXA8jK6AYHa+Rv89fGZvHMVsxxUFFrq5wzsdkDgWtyo= sha384-fh5IdFXkdb7RMrJSD7YToO5x8HAqK0lerpPf33MC3gVe1HYhnekkk0Vhgsn9T7vl sha512-x19DGONS+zlnzoFI5YtSKVLDf0KL5fsViHfY31kIV6idYASitnWa76QBZ94oe4zd9FhHq4nca3dkZiTi6u1RHw==",
38
+ "integrity": "sha256-KPxnPjEPiWxVrzWE8BzWPRjCbik3TLoVVuq7FNK5Ezc= sha384-dQYEIru08SzwMUKZpDF9aOj1dvAYceO43UI3Kuq6Yqp3xZ2911wcIMJxktXk0DRw sha512-Mf5qhtd+ozO6xBp6lnxXydQqPzHgFWOANfAYs8sI5c2aCf9uNH7uL2l3s4V53ZJ4DZEGpvjugaVrp3HoWag0oA==",
39
39
  "hashes": {
40
- "sha256": "GXA8jK6AYHa+Rv89fGZvHMVsxxUFFrq5wzsdkDgWtyo=",
41
- "sha384": "fh5IdFXkdb7RMrJSD7YToO5x8HAqK0lerpPf33MC3gVe1HYhnekkk0Vhgsn9T7vl",
42
- "sha512": "x19DGONS+zlnzoFI5YtSKVLDf0KL5fsViHfY31kIV6idYASitnWa76QBZ94oe4zd9FhHq4nca3dkZiTi6u1RHw=="
40
+ "sha256": "KPxnPjEPiWxVrzWE8BzWPRjCbik3TLoVVuq7FNK5Ezc=",
41
+ "sha384": "dQYEIru08SzwMUKZpDF9aOj1dvAYceO43UI3Kuq6Yqp3xZ2911wcIMJxktXk0DRw",
42
+ "sha512": "Mf5qhtd+ozO6xBp6lnxXydQqPzHgFWOANfAYs8sI5c2aCf9uNH7uL2l3s4V53ZJ4DZEGpvjugaVrp3HoWag0oA=="
43
43
  }
44
44
  },
45
45
  "@js": {
46
46
  "file": "applicationinsights-dependencies-js.js",
47
47
  "type": "text/javascript; charset=utf-8",
48
- "integrity": "sha256-TD0tXTgNed3lS69wVfuqXU/UIflpCNIT3gSGuZs0j44= sha384-77z/cgKYZd0R65IfOTQib6CItgFinuZ2ehsRRKGmTpy4XD8TGIR5zXtUwctfputx sha512-7MSLArlxjch8wEaX/jUC7ZvF38vaT3HMYpB+SnX+GVLCUkmidp6ku3zW7TkrxoyKLYMgtHMY+PtoXCW2V77IQw==",
48
+ "integrity": "sha256-g/JpVCg2CsooG+mr/pWeze7wvz4Nq8p9pDBm4B5+WDw= sha384-PPnglfaVFHqjSFnclUsdg2pZQ3i1f0KBEyVg1cz5JWjnUnHfipa83OA2meIYnU+d sha512-/32NFJw5mwf58kVs1ZtMiNfUGk3dRJiZ0UdOuvStZMwKjNG+u6bt+WvoQzGLXEOpeL2KNerqeclJk9O4nMzDlA==",
49
49
  "hashes": {
50
- "sha256": "TD0tXTgNed3lS69wVfuqXU/UIflpCNIT3gSGuZs0j44=",
51
- "sha384": "77z/cgKYZd0R65IfOTQib6CItgFinuZ2ehsRRKGmTpy4XD8TGIR5zXtUwctfputx",
52
- "sha512": "7MSLArlxjch8wEaX/jUC7ZvF38vaT3HMYpB+SnX+GVLCUkmidp6ku3zW7TkrxoyKLYMgtHMY+PtoXCW2V77IQw=="
50
+ "sha256": "g/JpVCg2CsooG+mr/pWeze7wvz4Nq8p9pDBm4B5+WDw=",
51
+ "sha384": "PPnglfaVFHqjSFnclUsdg2pZQ3i1f0KBEyVg1cz5JWjnUnHfipa83OA2meIYnU+d",
52
+ "sha512": "/32NFJw5mwf58kVs1ZtMiNfUGk3dRJiZ0UdOuvStZMwKjNG+u6bt+WvoQzGLXEOpeL2KNerqeclJk9O4nMzDlA=="
53
53
  }
54
54
  },
55
55
  "@min.js": {
56
56
  "file": "applicationinsights-dependencies-js.min.js",
57
57
  "type": "text/javascript; charset=utf-8",
58
- "integrity": "sha256-zuKrkqDzq1hUYSdA+dXFl9bGMhTpKDOjDgXGBRG6aNU= sha384-72EFH/F5k0jnRoX01XdWku0XQmqq3cdN5JhpKTisF9S5WwkhoCRGrW6MnLHWTbus sha512-nIPTmUB5v7RxD7CPJnjU7VVOnnppCrmwlOCksEDjfwXJxCKfpyiCXYw4NDqR2pemW+ri7ZR+c9wngXSTicGWkw==",
58
+ "integrity": "sha256-O1WiWOfY/ZlRqnDJjMsbum1euCy5HTbM3Llyhy2I6/E= sha384-RaW0pxIPRAQY98J2MA4nkj8n+ww9aZT9++KQtWmNwZb7IXpbAN6I2hDzz8mHUbZv sha512-Q6XAhOqr0OUKA2C7xOPEW2rjBOQ33p8Z/OnJWhT/ZEk9yfWwwtGiUHtSTzc/QnnVSWeCHEcCDXq3kMx52Xo6VQ==",
59
59
  "hashes": {
60
- "sha256": "zuKrkqDzq1hUYSdA+dXFl9bGMhTpKDOjDgXGBRG6aNU=",
61
- "sha384": "72EFH/F5k0jnRoX01XdWku0XQmqq3cdN5JhpKTisF9S5WwkhoCRGrW6MnLHWTbus",
62
- "sha512": "nIPTmUB5v7RxD7CPJnjU7VVOnnppCrmwlOCksEDjfwXJxCKfpyiCXYw4NDqR2pemW+ri7ZR+c9wngXSTicGWkw=="
60
+ "sha256": "O1WiWOfY/ZlRqnDJjMsbum1euCy5HTbM3Llyhy2I6/E=",
61
+ "sha384": "RaW0pxIPRAQY98J2MA4nkj8n+ww9aZT9++KQtWmNwZb7IXpbAN6I2hDzz8mHUbZv",
62
+ "sha512": "Q6XAhOqr0OUKA2C7xOPEW2rjBOQ33p8Z/OnJWhT/ZEk9yfWwwtGiUHtSTzc/QnnVSWeCHEcCDXq3kMx52Xo6VQ=="
63
63
  }
64
64
  }
65
65
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.3-nightly3.2308-10
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.3-nightly3.2308-16
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -7,8 +7,8 @@
7
7
  typeof exports === "object" && typeof module !== undef ? factory(exports) :
8
8
  typeof define === "function" && define.amd ? define(["exports"], factory) :
9
9
  (function(global){
10
- var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_dependencies_js_3_0_3_nightly3_2308_10", msMod="__ms$mod__";
11
- var mods={}, modDetail=mods[modName]={}, ver="3.0.3-nightly3.2308-10";
10
+ var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_dependencies_js_3_0_3_nightly3_2308_16", msMod="__ms$mod__";
11
+ var mods={}, modDetail=mods[modName]={}, ver="3.0.3-nightly3.2308-16";
12
12
  var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
13
13
  // Versioned namespace "Microsoft.ApplicationInsights3"
14
14
  var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
@@ -1387,7 +1387,7 @@ function newId(maxLength) {
1387
1387
  return result;
1388
1388
  }
1389
1389
 
1390
- var version = '3.0.3-nightly3.2308-10';
1390
+ var version = '3.0.3-nightly3.2308-16';
1391
1391
  var instanceName = "." + newId(6);
1392
1392
  var _dataUid = 0;
1393
1393
  function _canAcceptData(target) {
@@ -4092,7 +4092,7 @@ var ajaxRecord = /** @class */ (function () {
4092
4092
  var _a;
4093
4093
  var AJAX_MONITOR_PREFIX = "ai.ajxmn.";
4094
4094
  var strDiagLog = "diagLog";
4095
- var strAjaxData = "ajaxData";
4095
+ var AJAX_DATA_CONTAINER = "_ajaxData";
4096
4096
  var STR_FETCH = "fetch";
4097
4097
  var ERROR_HEADER = "Failed to monitor XMLHttpRequest";
4098
4098
  var ERROR_PREFIX = ", monitoring data for this ajax call ";
@@ -4112,8 +4112,8 @@ function _supportsFetch() {
4112
4112
  }
4113
4113
  return _global[STR_FETCH];
4114
4114
  }
4115
- function _supportsAjaxMonitoring(ajaxMonitorInstance) {
4116
- var _a;
4115
+ function _supportsAjaxMonitoring(ajaxMonitorInstance, ajaxDataId) {
4116
+ var _a, _b;
4117
4117
  var result = false;
4118
4118
  if (isXhrSupported()) {
4119
4119
  var proto = XMLHttpRequest[strShimPrototype];
@@ -4129,24 +4129,63 @@ function _supportsAjaxMonitoring(ajaxMonitorInstance) {
4129
4129
  if (result) {
4130
4130
  try {
4131
4131
  var xhr = new XMLHttpRequest();
4132
- xhr[strAjaxData] = {};
4132
+ var xhrData = {
4133
+ xh: [],
4134
+ i: (_a = {},
4135
+ _a[ajaxDataId] = {},
4136
+ _a)
4137
+ };
4138
+ xhr[AJAX_DATA_CONTAINER] = xhrData;
4133
4139
  var theOpen = XMLHttpRequest[strShimPrototype].open;
4134
4140
  XMLHttpRequest[strShimPrototype].open = theOpen;
4135
4141
  }
4136
4142
  catch (e) {
4137
4143
  result = false;
4138
- _throwInternalCritical(ajaxMonitorInstance, 15 , "Failed to enable XMLHttpRequest monitoring, extension is not supported", (_a = {},
4139
- _a[_DYN_EXCEPTION ] = dumpObj(e),
4140
- _a));
4144
+ _throwInternalCritical(ajaxMonitorInstance, 15 , "Failed to enable XMLHttpRequest monitoring, extension is not supported", (_b = {},
4145
+ _b[_DYN_EXCEPTION ] = dumpObj(e),
4146
+ _b));
4141
4147
  }
4142
4148
  }
4143
4149
  return result;
4144
4150
  }
4145
- function _getFailedAjaxDiagnosticsMessage(xhr) {
4151
+ var _getAjaxData = function (xhr, ajaxDataId) {
4152
+ if (xhr && ajaxDataId && xhr[AJAX_DATA_CONTAINER]) {
4153
+ return (xhr[AJAX_DATA_CONTAINER].i || {})[ajaxDataId];
4154
+ }
4155
+ return null;
4156
+ };
4157
+ var _addSharedXhrHeaders = function (xhr, name, value) {
4158
+ if (xhr) {
4159
+ var headers = (xhr[AJAX_DATA_CONTAINER] || {}).xh;
4160
+ if (headers) {
4161
+ headers.push({
4162
+ n: name,
4163
+ v: value
4164
+ });
4165
+ }
4166
+ }
4167
+ };
4168
+ var _isHeaderSet = function (xhr, name) {
4169
+ var isPresent = false;
4170
+ if (xhr) {
4171
+ var headers = (xhr[AJAX_DATA_CONTAINER] || {}).xh;
4172
+ if (headers) {
4173
+ arrForEach(headers, function (header) {
4174
+ if (header.n === name) {
4175
+ isPresent = true;
4176
+ return -1;
4177
+ }
4178
+ });
4179
+ }
4180
+ }
4181
+ return isPresent;
4182
+ };
4183
+ function _getFailedAjaxDiagnosticsMessage(xhr, ajaxDataId) {
4146
4184
  var result = "";
4147
4185
  try {
4148
- if (xhr && xhr[strAjaxData] && xhr[strAjaxData][_DYN_REQUEST_URL ]) {
4149
- result += "(url: '" + xhr[strAjaxData][_DYN_REQUEST_URL ] + "')";
4186
+ var ajaxData = _getAjaxData(xhr, ajaxDataId);
4187
+ if (ajaxData && ajaxData[_DYN_REQUEST_URL ]) {
4188
+ result += "(url: '" + ajaxData[_DYN_REQUEST_URL ] + "')";
4150
4189
  }
4151
4190
  }
4152
4191
  catch (e) {
@@ -4160,12 +4199,12 @@ function _throwInternalWarning(ajaxMonitorInstance, msgId, message, properties,
4160
4199
  _throwInternal(ajaxMonitorInstance[strDiagLog](), 2 , msgId, message, properties, isUserAct);
4161
4200
  }
4162
4201
  function _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, message) {
4163
- return function (args) {
4202
+ return function (callDetails) {
4164
4203
  var _a;
4165
4204
  _throwInternalCritical(ajaxMonitorInstance, internalMessage, message, (_a = {
4166
- ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(args[_DYN_INST ])
4205
+ ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(callDetails[_DYN_INST ], ajaxMonitorInstance._ajaxDataId)
4167
4206
  },
4168
- _a[_DYN_EXCEPTION ] = dumpObj(args.err),
4207
+ _a[_DYN_EXCEPTION ] = dumpObj(callDetails.err),
4169
4208
  _a));
4170
4209
  };
4171
4210
  }
@@ -4290,6 +4329,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
4290
4329
  var _excludeRequestFromAutoTrackingPatterns;
4291
4330
  var _addRequestContext;
4292
4331
  var _evtNamespace;
4332
+ var _ajaxDataId;
4293
4333
  var _dependencyHandlerId;
4294
4334
  var _dependencyListeners;
4295
4335
  var _dependencyInitializers;
@@ -4359,17 +4399,27 @@ var AjaxMonitor = /** @class */ (function (_super) {
4359
4399
  else if (xhr) {
4360
4400
  if (correlationIdCanIncludeCorrelationHeader(_extensionConfig, ajaxData[_DYN_GET_ABSOLUTE_URL ](), currentWindowHost)) {
4361
4401
  if (_isUsingAIHeaders) {
4362
- var id = "|" + ajaxData[_DYN_TRACE_ID ] + "." + ajaxData[_DYN_SPAN_ID ];
4363
- xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[3 ], id);
4364
- if (_enableRequestHeaderTracking) {
4365
- ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[3 ]] = id;
4402
+ if (!_isHeaderSet(xhr, RequestHeaders[3 ])) {
4403
+ var id = "|" + ajaxData[_DYN_TRACE_ID ] + "." + ajaxData[_DYN_SPAN_ID ];
4404
+ xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[3 ], id);
4405
+ if (_enableRequestHeaderTracking) {
4406
+ ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[3 ]] = id;
4407
+ }
4408
+ }
4409
+ else {
4410
+ _throwInternalWarning(_self, 71 , "Unable to set [" + RequestHeaders[3 ] + "] as it has already been set by another instance");
4366
4411
  }
4367
4412
  }
4368
4413
  var appId = _appId || (_context && _context.appId());
4369
4414
  if (appId) {
4370
- xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[0 ], RequestHeaders[2 ] + appId);
4371
- if (_enableRequestHeaderTracking) {
4372
- ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[0 ]] = RequestHeaders[2 ] + appId;
4415
+ if (!_isHeaderSet(xhr, RequestHeaders[0 ])) {
4416
+ xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[0 ], RequestHeaders[2 ] + appId);
4417
+ if (_enableRequestHeaderTracking) {
4418
+ ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[0 ]] = RequestHeaders[2 ] + appId;
4419
+ }
4420
+ }
4421
+ else {
4422
+ _throwInternalWarning(_self, 71 , "Unable to set [" + RequestHeaders[0 ] + "] as it has already been set by another instance");
4373
4423
  }
4374
4424
  }
4375
4425
  if (_isUsingW3CHeaders) {
@@ -4377,10 +4427,15 @@ var AjaxMonitor = /** @class */ (function (_super) {
4377
4427
  if (isNullOrUndefined(traceFlags)) {
4378
4428
  traceFlags = 0x01;
4379
4429
  }
4380
- var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID ], ajaxData[_DYN_SPAN_ID ], traceFlags));
4381
- xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[4 ], traceParent);
4382
- if (_enableRequestHeaderTracking) {
4383
- ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[4 ]] = traceParent;
4430
+ if (!_isHeaderSet(xhr, RequestHeaders[4 ])) {
4431
+ var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID ], ajaxData[_DYN_SPAN_ID ], traceFlags));
4432
+ xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[4 ], traceParent);
4433
+ if (_enableRequestHeaderTracking) {
4434
+ ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[4 ]] = traceParent;
4435
+ }
4436
+ }
4437
+ else {
4438
+ _throwInternalWarning(_self, 71 , "Unable to set [" + RequestHeaders[4 ] + "] as it has already been set by another instance");
4384
4439
  }
4385
4440
  }
4386
4441
  }
@@ -4438,6 +4493,8 @@ var AjaxMonitor = /** @class */ (function (_super) {
4438
4493
  _dependencyHandlerId = 0;
4439
4494
  _dependencyListeners = [];
4440
4495
  _dependencyInitializers = [];
4496
+ _ajaxDataId = createUniqueNamespace("ajaxData");
4497
+ _self._ajaxDataId = _ajaxDataId;
4441
4498
  _ignoreHeaders = null;
4442
4499
  _maxAjaxPerfLookupAttempts = 1;
4443
4500
  _ajaxPerfLookupDelay = 1;
@@ -4574,7 +4631,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
4574
4631
  _addHook(InstrumentProto(target, funcName, callbacks));
4575
4632
  }
4576
4633
  function _instrumentXhr() {
4577
- if (!_supportsAjaxMonitoring(_self)) {
4634
+ if (!_supportsAjaxMonitoring(_self, _ajaxDataId)) {
4578
4635
  return;
4579
4636
  }
4580
4637
  _self[_DYN__ADD_HOOK ](onConfigChange(_extensionConfig, function () {
@@ -4583,15 +4640,15 @@ var AjaxMonitor = /** @class */ (function (_super) {
4583
4640
  if (!_disableAjaxTracking && !_xhrInitialized) {
4584
4641
  _hookProto(XMLHttpRequest, "open", {
4585
4642
  ns: _evtNamespace,
4586
- req: function (args, method, url, async) {
4643
+ req: function (callDetails, method, url, async) {
4587
4644
  if (!_disableAjaxTracking) {
4588
- var xhr = args[_DYN_INST ];
4589
- var ajaxData = xhr[strAjaxData];
4590
- if (!_isDisabledRequest(xhr, url) && _isMonitoredXhrInstance(xhr, true)) {
4645
+ var xhr = callDetails[_DYN_INST ];
4646
+ var ajaxData = _getAjaxData(xhr, _ajaxDataId);
4647
+ if (!_isDisabledRequest(xhr, url) && _isMonitoredXhrInstance(xhr, ajaxData, true)) {
4591
4648
  if (!ajaxData || !ajaxData.xhrMonitoringState[_DYN_OPEN_DONE ]) {
4592
- _openHandler(xhr, method, url, async);
4649
+ ajaxData = _openHandler(xhr, method, url, async);
4593
4650
  }
4594
- _attachToOnReadyStateChange(xhr);
4651
+ _attachToOnReadyStateChange(xhr, ajaxData);
4595
4652
  }
4596
4653
  }
4597
4654
  },
@@ -4599,11 +4656,11 @@ var AjaxMonitor = /** @class */ (function (_super) {
4599
4656
  });
4600
4657
  _hookProto(XMLHttpRequest, "send", {
4601
4658
  ns: _evtNamespace,
4602
- req: function (args, context) {
4659
+ req: function (callDetails, context) {
4603
4660
  if (!_disableAjaxTracking) {
4604
- var xhr = args[_DYN_INST ];
4605
- var ajaxData = xhr[strAjaxData];
4606
- if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState[_DYN_SEND_DONE ]) {
4661
+ var xhr = callDetails[_DYN_INST ];
4662
+ var ajaxData = _getAjaxData(xhr, _ajaxDataId);
4663
+ if (_isMonitoredXhrInstance(xhr, ajaxData) && !ajaxData.xhrMonitoringState[_DYN_SEND_DONE ]) {
4607
4664
  _createMarkId("xhr", ajaxData);
4608
4665
  ajaxData[_DYN_REQUEST_SENT_TIME ] = dateTimeUtilsNow();
4609
4666
  _self[_DYN_INCLUDE_CORRELATION_2 ](ajaxData, undefined, undefined, xhr);
@@ -4615,11 +4672,11 @@ var AjaxMonitor = /** @class */ (function (_super) {
4615
4672
  });
4616
4673
  _hookProto(XMLHttpRequest, "abort", {
4617
4674
  ns: _evtNamespace,
4618
- req: function (args) {
4675
+ req: function (callDetails) {
4619
4676
  if (!_disableAjaxTracking) {
4620
- var xhr = args[_DYN_INST ];
4621
- var ajaxData = xhr[strAjaxData];
4622
- if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState[_DYN_ABORT_DONE ]) {
4677
+ var xhr = callDetails[_DYN_INST ];
4678
+ var ajaxData = _getAjaxData(xhr, _ajaxDataId);
4679
+ if (_isMonitoredXhrInstance(xhr, ajaxData) && !ajaxData.xhrMonitoringState[_DYN_ABORT_DONE ]) {
4623
4680
  ajaxData[_DYN_ABORTED ] = 1;
4624
4681
  ajaxData.xhrMonitoringState[_DYN_ABORT_DONE ] = true;
4625
4682
  }
@@ -4629,11 +4686,17 @@ var AjaxMonitor = /** @class */ (function (_super) {
4629
4686
  });
4630
4687
  _hookProto(XMLHttpRequest, "setRequestHeader", {
4631
4688
  ns: _evtNamespace,
4632
- req: function (args, header, value) {
4633
- if (!_disableAjaxTracking && _enableRequestHeaderTracking) {
4634
- var xhr = args[_DYN_INST ];
4635
- if (_isMonitoredXhrInstance(xhr) && _canIncludeHeaders(header)) {
4636
- xhr[strAjaxData][_DYN_REQUEST_HEADERS ][header] = value;
4689
+ req: function (callDetails, header, value) {
4690
+ if (!_disableAjaxTracking) {
4691
+ var xhr = callDetails[_DYN_INST ];
4692
+ var ajaxData = _getAjaxData(xhr, _ajaxDataId);
4693
+ if (ajaxData && _isMonitoredXhrInstance(xhr, ajaxData)) {
4694
+ _addSharedXhrHeaders(xhr, header, value);
4695
+ if (_enableRequestHeaderTracking && _canIncludeHeaders(header)) {
4696
+ if (ajaxData) {
4697
+ ajaxData[_DYN_REQUEST_HEADERS ][header] = value;
4698
+ }
4699
+ }
4637
4700
  }
4638
4701
  }
4639
4702
  },
@@ -4688,11 +4751,11 @@ var AjaxMonitor = /** @class */ (function (_super) {
4688
4751
  }
4689
4752
  return isDisabled;
4690
4753
  }
4691
- function _isMonitoredXhrInstance(xhr, excludeAjaxDataValidation) {
4754
+ function _isMonitoredXhrInstance(xhr, ajaxData, excludeAjaxDataValidation) {
4692
4755
  var ajaxValidation = true;
4693
4756
  var initialized = _xhrInitialized;
4694
4757
  if (!isNullOrUndefined(xhr)) {
4695
- ajaxValidation = excludeAjaxDataValidation === true || !isNullOrUndefined(xhr[strAjaxData]);
4758
+ ajaxValidation = excludeAjaxDataValidation === true || !isNullOrUndefined(ajaxData);
4696
4759
  }
4697
4760
  return initialized
4698
4761
  && ajaxValidation;
@@ -4712,7 +4775,9 @@ var AjaxMonitor = /** @class */ (function (_super) {
4712
4775
  var distributedTraceCtx = _getDistributedTraceCtx();
4713
4776
  var traceID = (distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_ID ]()) || generateW3CId();
4714
4777
  var spanID = strSubstr(generateW3CId(), 0, 16);
4715
- var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog](), (_a = _self.core) === null || _a === void 0 ? void 0 : _a.getTraceCtx());
4778
+ var xhrRequestData = xhr[AJAX_DATA_CONTAINER] = (xhr[AJAX_DATA_CONTAINER] || { xh: [], i: {} });
4779
+ var ajaxDataCntr = xhrRequestData.i = (xhrRequestData.i || {});
4780
+ var ajaxData = ajaxDataCntr[_ajaxDataId] = (ajaxDataCntr[_ajaxDataId] || new ajaxRecord(traceID, spanID, _self[strDiagLog](), (_a = _self.core) === null || _a === void 0 ? void 0 : _a.getTraceCtx()));
4716
4781
  ajaxData[_DYN_TRACE_FLAGS ] = distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_FLAGS ]();
4717
4782
  ajaxData[_DYN_METHOD ] = method;
4718
4783
  ajaxData[_DYN_REQUEST_URL ] = url;
@@ -4720,13 +4785,13 @@ var AjaxMonitor = /** @class */ (function (_super) {
4720
4785
  ajaxData[_DYN_REQUEST_HEADERS ] = {};
4721
4786
  ajaxData.async = async;
4722
4787
  ajaxData[_DYN_ERROR_STATUS_TEXT ] = _enableAjaxErrorStatusText;
4723
- xhr[strAjaxData] = ajaxData;
4788
+ return ajaxData;
4724
4789
  }
4725
- function _attachToOnReadyStateChange(xhr) {
4726
- xhr[strAjaxData].xhrMonitoringState[_DYN_STATE_CHANGE_ATTACHE13 ] = eventOn(xhr, "readystatechange", function () {
4790
+ function _attachToOnReadyStateChange(xhr, ajaxData) {
4791
+ ajaxData.xhrMonitoringState[_DYN_STATE_CHANGE_ATTACHE13 ] = eventOn(xhr, "readystatechange", function () {
4727
4792
  var _a;
4728
4793
  try {
4729
- if (xhr && xhr.readyState === 4 && _isMonitoredXhrInstance(xhr)) {
4794
+ if (xhr && xhr.readyState === 4 && _isMonitoredXhrInstance(xhr, ajaxData)) {
4730
4795
  _onAjaxComplete(xhr);
4731
4796
  }
4732
4797
  }
@@ -4734,7 +4799,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
4734
4799
  var exceptionText = dumpObj(e);
4735
4800
  if (!exceptionText || _indexOf(exceptionText[_DYN_TO_LOWER_CASE ](), "c00c023f") === -1) {
4736
4801
  _throwInternalCritical(_self, 16 , ERROR_HEADER + " 'readystatechange' event handler" + ERROR_POSTFIX, (_a = {},
4737
- _a[_DYN_AJAX_DIAGNOSTICS_MES16 ] = _getFailedAjaxDiagnosticsMessage(xhr),
4802
+ _a[_DYN_AJAX_DIAGNOSTICS_MES16 ] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId),
4738
4803
  _a[_DYN_EXCEPTION ] = exceptionText,
4739
4804
  _a));
4740
4805
  }
@@ -4753,12 +4818,12 @@ var AjaxMonitor = /** @class */ (function (_super) {
4753
4818
  return null;
4754
4819
  }
4755
4820
  function _onAjaxComplete(xhr) {
4756
- var ajaxData = xhr[strAjaxData];
4821
+ var ajaxData = _getAjaxData(xhr, _ajaxDataId);
4757
4822
  ajaxData[_DYN_RESPONSE_FINISHED_TI14 ] = dateTimeUtilsNow();
4758
4823
  ajaxData[_DYN_STATUS ] = xhr[_DYN_STATUS ];
4759
4824
  function _reportXhrError(e, failedProps) {
4760
4825
  var errorProps = failedProps || {};
4761
- errorProps["ajaxDiagnosticsMessage"] = _getFailedAjaxDiagnosticsMessage(xhr);
4826
+ errorProps["ajaxDiagnosticsMessage"] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId);
4762
4827
  if (e) {
4763
4828
  errorProps["exception"] = dumpObj(e);
4764
4829
  }
@@ -4820,7 +4885,11 @@ var AjaxMonitor = /** @class */ (function (_super) {
4820
4885
  }
4821
4886
  finally {
4822
4887
  try {
4823
- xhr[strAjaxData] = null;
4888
+ var xhrRequestData = (xhr[AJAX_DATA_CONTAINER] || { i: {} });
4889
+ var ajaxDataCntr = (xhrRequestData.i || {});
4890
+ if (ajaxDataCntr[_ajaxDataId]) {
4891
+ ajaxDataCntr[_ajaxDataId] = null;
4892
+ }
4824
4893
  }
4825
4894
  catch (e) {
4826
4895
  }
@@ -4843,7 +4912,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
4843
4912
  }
4844
4913
  catch (e) {
4845
4914
  _throwInternalWarning(_self, 18 , CORRELATION_HEADER_ERROR, (_a = {},
4846
- _a[_DYN_AJAX_DIAGNOSTICS_MES16 ] = _getFailedAjaxDiagnosticsMessage(xhr),
4915
+ _a[_DYN_AJAX_DIAGNOSTICS_MES16 ] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId),
4847
4916
  _a[_DYN_EXCEPTION ] = dumpObj(e),
4848
4917
  _a));
4849
4918
  }