@microsoft/applicationinsights-dependencies-js 3.0.0-beta.2302-01 → 3.0.0-beta.2302-02

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/browser/applicationinsights-dependencies-js.integrity.json +9 -9
  2. package/browser/applicationinsights-dependencies-js.js +88 -37
  3. package/browser/applicationinsights-dependencies-js.js.map +1 -1
  4. package/browser/applicationinsights-dependencies-js.min.js +2 -2
  5. package/browser/applicationinsights-dependencies-js.min.js.map +1 -1
  6. package/dist/applicationinsights-dependencies-js.api.json +54 -0
  7. package/dist/applicationinsights-dependencies-js.api.md +2 -0
  8. package/dist/applicationinsights-dependencies-js.d.ts +11 -1
  9. package/dist/applicationinsights-dependencies-js.js +88 -37
  10. package/dist/applicationinsights-dependencies-js.js.map +1 -1
  11. package/dist/applicationinsights-dependencies-js.min.js +2 -2
  12. package/dist/applicationinsights-dependencies-js.min.js.map +1 -1
  13. package/dist/applicationinsights-dependencies-js.rollup.d.ts +11 -1
  14. package/dist-esm/DependencyInitializer.js +1 -1
  15. package/dist-esm/DependencyListener.js +1 -1
  16. package/dist-esm/InternalConstants.js +1 -1
  17. package/dist-esm/__DynamicConstants.js +8 -7
  18. package/dist-esm/__DynamicConstants.js.map +1 -1
  19. package/dist-esm/ajax.js +16 -14
  20. package/dist-esm/ajax.js.map +1 -1
  21. package/dist-esm/ajaxRecord.js +18 -12
  22. package/dist-esm/ajaxRecord.js.map +1 -1
  23. package/dist-esm/ajaxUtils.js +1 -1
  24. package/dist-esm/applicationinsights-dependencies-js.js +1 -1
  25. package/package.json +7 -6
  26. package/src/DependencyInitializer.ts +5 -0
  27. package/src/DependencyListener.ts +7 -0
  28. package/src/__DynamicConstants.ts +67 -66
  29. package/src/ajax.ts +40 -38
  30. package/src/ajaxRecord.ts +30 -24
  31. package/src/ajaxUtils.ts +6 -6
  32. package/types/DependencyInitializer.d.ts +4 -0
  33. package/types/DependencyListener.d.ts +6 -0
  34. package/types/__DynamicConstants.d.ts +1 -0
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft Application Insights XHR dependencies plugin, 3.0.0-beta.2302-01
2
+ * Microsoft Application Insights XHR dependencies plugin, 3.0.0-beta.2302-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -186,6 +186,10 @@ export declare interface IDependencyInitializerDetails {
186
186
  context?: {
187
187
  [key: string]: any;
188
188
  };
189
+ /**
190
+ * [Optional] A flag that indicates whether the client request was manually aborted by the `abort()`
191
+ */
192
+ aborted?: boolean;
189
193
  }
190
194
 
191
195
  export declare interface IDependencyInitializerHandler extends IDependencyHandler {
@@ -244,6 +248,12 @@ export declare interface IDependencyListenerDetails {
244
248
  context?: {
245
249
  [key: string]: any;
246
250
  };
251
+ /**
252
+ * [Optional] A flag that indicates whether the client request was manually aborted by the `abort()`,
253
+ * as listeners are called just before the request is sent it is unlikely that an application would have
254
+ * called `abort` before `send` this is also available in the dependency initializer.
255
+ */
256
+ aborted?: boolean;
247
257
  }
248
258
 
249
259
  export declare interface IDependencyListenerHandler extends IDependencyHandler {
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-01
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  export {};
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-01
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-01
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-01
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -8,9 +8,9 @@
8
8
  // ##############################################################
9
9
  // AUTO GENERATED FILE: This file is Auto Generated during build.
10
10
  // ##############################################################
11
- // ###########################################################################################################################################
12
- // Note: DON'T Export these const from the package as we are still targeting IE this will export a mutable variables that someone could change
13
- // ###########################################################################################################################################
11
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
+ // 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!!!
13
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14
14
  export var _DYN_REQUEST_URL = "requestUrl"; // Count: 12
15
15
  export var _DYN_INST = "inst"; // Count: 5
16
16
  export var _DYN_LENGTH = "length"; // Count: 10
@@ -18,6 +18,7 @@ export var _DYN_TRACE_ID = "traceID"; // Count: 9
18
18
  export var _DYN_SPAN_ID = "spanID"; // Count: 8
19
19
  export var _DYN_TRACE_FLAGS = "traceFlags"; // Count: 13
20
20
  export var _DYN_CONTEXT = "context"; // Count: 7
21
+ export var _DYN_ABORTED = "aborted"; // Count: 7
21
22
  export var _DYN_TRACE_ID0 = "traceId"; // Count: 5
22
23
  export var _DYN_SPAN_ID1 = "spanId"; // Count: 5
23
24
  export var _DYN__ADD_HOOK = "_addHook"; // Count: 4
@@ -40,8 +41,8 @@ export var _DYN_DISABLE_AJAX_TRACKIN9 = "disableAjaxTracking"; // Count: 3
40
41
  export var _DYN_AJAX_PERF_LOOKUP_DEL10 = "ajaxPerfLookupDelay"; // Count: 2
41
42
  export var _DYN_DISABLE_FETCH_TRACKI11 = "disableFetchTracking"; // Count: 2
42
43
  export var _DYN_ENABLE_RESPONSE_HEAD12 = "enableResponseHeaderTracking"; // Count: 2
43
- export var _DYN_STATUS = "status"; // Count: 10
44
- export var _DYN_STATUS_TEXT = "statusText"; // Count: 8
44
+ export var _DYN_STATUS = "status"; // Count: 11
45
+ export var _DYN_STATUS_TEXT = "statusText"; // Count: 9
45
46
  export var _DYN_HEADER_MAP = "headerMap"; // Count: 8
46
47
  export var _DYN_OPEN_DONE = "openDone"; // Count: 3
47
48
  export var _DYN_SEND_DONE = "sendDone"; // Count: 3
@@ -52,7 +53,7 @@ export var _DYN_GET_TRACE_FLAGS = "getTraceFlags"; // Count: 3
52
53
  export var _DYN_METHOD = "method"; // Count: 10
53
54
  export var _DYN_ERROR_STATUS_TEXT = "errorStatusText"; // Count: 3
54
55
  export var _DYN_STATE_CHANGE_ATTACHE13 = "stateChangeAttached"; // Count: 2
55
- export var _DYN_RESPONSE_TEXT = "responseText"; // Count: 5
56
+ export var _DYN_RESPONSE_TEXT = "responseText"; // Count: 6
56
57
  export var _DYN_RESPONSE_FINISHED_TI14 = "responseFinishedTime"; // Count: 7
57
58
  export var _DYN__CREATE_TRACK_ITEM = "CreateTrackItem"; // Count: 3
58
59
  export var _DYN_RESPONSE = "response"; // Count: 4
@@ -1 +1 @@
1
- {"version":3,"file":"__DynamicConstants.js.map","sources":["__DynamicConstants.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\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 IE this will export a mutable variables that someone could change\r\n// ###########################################################################################################################################\r\nexport var _DYN_REQUEST_URL = \"requestUrl\"; // Count: 12\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_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: 10\r\nexport var _DYN_STATUS_TEXT = \"statusText\"; // Count: 8\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: 10\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: 5\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_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"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"__DynamicConstants.js.map","sources":["__DynamicConstants.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\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: 12\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: 10\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_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"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
package/dist-esm/ajax.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-01
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.0.0-beta.2302-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -11,12 +11,12 @@ import { DisabledPropertyName, PropertiesPluginIdentifier, RemoteDependencyData,
11
11
  import { 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";
12
12
  import { objFreeze, scheduleTimeout, strIndexOf } from "@nevware21/ts-utils";
13
13
  import { STR_PROPERTIES } from "./InternalConstants";
14
- import { _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_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";
14
+ import { _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_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";
15
15
  import { ajaxRecord } from "./ajaxRecord";
16
16
  var AJAX_MONITOR_PREFIX = "ai.ajxmn.";
17
17
  var strDiagLog = "diagLog";
18
18
  var strAjaxData = "ajaxData";
19
- var strFetch = "fetch";
19
+ var STR_FETCH = "fetch";
20
20
  var ERROR_HEADER = "Failed to monitor XMLHttpRequest";
21
21
  var ERROR_PREFIX = ", monitoring data for this ajax call ";
22
22
  var ERROR_POSTFIX = ERROR_PREFIX + "may be incorrect.";
@@ -32,10 +32,10 @@ function _supportsFetch() {
32
32
  if (!_global ||
33
33
  isNullOrUndefined(_global.Request) ||
34
34
  isNullOrUndefined(_global.Request[strPrototype]) ||
35
- isNullOrUndefined(_global[strFetch])) {
35
+ isNullOrUndefined(_global[STR_FETCH])) {
36
36
  return null;
37
37
  }
38
- return _global[strFetch];
38
+ return _global[STR_FETCH];
39
39
  }
40
40
  /**
41
41
  * Determines whether ajax monitoring can be enabled on this document
@@ -155,6 +155,7 @@ function _processDependencyListeners(listeners, core, ajaxData, xhr, input, init
155
155
  _a.spanId = ajaxData[_DYN_SPAN_ID /* @min:%2espanID */],
156
156
  _a.traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */],
157
157
  _a.context = ajaxData[_DYN_CONTEXT /* @min:%2econtext */] || {},
158
+ _a.aborted = !!ajaxData[_DYN_ABORTED /* @min:%2eaborted */],
158
159
  _a);
159
160
  _processDependencyContainer(core, listeners, details, "listener");
160
161
  ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] = details[_DYN_TRACE_ID0 /* @min:%2etraceId */];
@@ -447,7 +448,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
447
448
  _disableFetchTracking = !!_extensionConfig[_DYN_DISABLE_FETCH_TRACKI11 /* @min:%2edisableFetchTracking */];
448
449
  _enableResponseHeaderTracking = _extensionConfig[_DYN_ENABLE_RESPONSE_HEAD12 /* @min:%2eenableResponseHeaderTracking */];
449
450
  if (!_disableFetchTracking && !_fetchInitialized) {
450
- _addHook(InstrumentFunc(global, strFetch, {
451
+ _addHook(InstrumentFunc(global, STR_FETCH, {
451
452
  ns: _evtNamespace,
452
453
  // Add request hook
453
454
  req: function (callDetails, input, init) {
@@ -474,12 +475,12 @@ var AjaxMonitor = /** @class */ (function (_super) {
474
475
  _reportFetchMetrics(callDetails, (response || {})[_DYN_STATUS /* @min:%2estatus */], input, response, fetchData_1, function () {
475
476
  var _a;
476
477
  var ajaxResponse = (_a = {
477
- statusText: response[_DYN_STATUS_TEXT /* @min:%2estatusText */]
478
+ statusText: (response || {})[_DYN_STATUS_TEXT /* @min:%2estatusText */]
478
479
  },
479
480
  _a[_DYN_HEADER_MAP /* @min:headerMap */] = null,
480
481
  _a[_DYN_CORRELATION_CONTEXT /* @min:correlationContext */] = _getFetchCorrelationContext(response),
481
482
  _a);
482
- if (_enableResponseHeaderTracking) {
483
+ if (_enableResponseHeaderTracking && response) {
483
484
  var responseHeaderMap_1 = {};
484
485
  response.headers.forEach(function (value, name) {
485
486
  if (_canIncludeHeaders(name)) {
@@ -493,7 +494,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
493
494
  return response;
494
495
  })
495
496
  .catch(function (reason) {
496
- _reportFetchMetrics(callDetails, 0, input, null, fetchData_1, null, { error: reason.message });
497
+ _reportFetchMetrics(callDetails, 0, input, null, fetchData_1, null, { error: reason.message || dumpObj(reason) });
497
498
  throw reason;
498
499
  });
499
500
  }
@@ -511,7 +512,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
511
512
  // Note: Polyfill implementations that don't support the "polyfill" tag are not supported
512
513
  // the workaround is to add a polyfill property to your fetch implementation before initializing
513
514
  // App Insights
514
- _addHook(InstrumentFunc(global, strFetch, {
515
+ _addHook(InstrumentFunc(global, STR_FETCH, {
515
516
  ns: _evtNamespace,
516
517
  req: function (callDetails, input, init) {
517
518
  // Just call so that we record any disabled URL
@@ -524,7 +525,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
524
525
  if (isPolyfill) {
525
526
  // retag the instrumented fetch with the same polyfill settings this is mostly for testing
526
527
  // But also supports multiple App Insights usages
527
- global[strFetch].polyfill = isPolyfill;
528
+ global[STR_FETCH].polyfill = isPolyfill;
528
529
  }
529
530
  }
530
531
  function _hookProto(target, funcName, callbacks) {
@@ -582,7 +583,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
582
583
  var xhr = args[_DYN_INST /* @min:%2einst */];
583
584
  var ajaxData = xhr[strAjaxData];
584
585
  if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState[_DYN_ABORT_DONE /* @min:%2eabortDone */]) {
585
- ajaxData.aborted = 1;
586
+ ajaxData[_DYN_ABORTED /* @min:%2eaborted */] = 1;
586
587
  ajaxData.xhrMonitoringState[_DYN_ABORT_DONE /* @min:%2eabortDone */] = true;
587
588
  }
588
589
  }
@@ -938,7 +939,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
938
939
  });
939
940
  }
940
941
  ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = requestHeaders;
941
- _createMarkId("fetch", ajaxData);
942
+ _createMarkId(STR_FETCH, ajaxData);
942
943
  return ajaxData;
943
944
  }
944
945
  function _getFailedFetchDiagnosticsMessage(input) {
@@ -972,7 +973,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
972
973
  }
973
974
  ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = dateTimeUtilsNow();
974
975
  ajaxData[_DYN_STATUS /* @min:%2estatus */] = status;
975
- _findPerfResourceEntry("fetch", ajaxData, function () {
976
+ _findPerfResourceEntry(STR_FETCH, ajaxData, function () {
976
977
  var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */]("Fetch", _enableRequestHeaderTracking, getResponse);
977
978
  var properties;
978
979
  try {
@@ -1025,6 +1026,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
1025
1026
  _a[STR_PROPERTIES /* @min:properties */] = properties,
1026
1027
  _a.sysProperties = systemProperties,
1027
1028
  _a.context = ajaxData ? ajaxData[_DYN_CONTEXT /* @min:%2econtext */] : null,
1029
+ _a.aborted = ajaxData ? !!ajaxData[_DYN_ABORTED /* @min:%2eaborted */] : false,
1028
1030
  _a);
1029
1031
  result = _processDependencyContainer(core, initializers, details, "initializer");
1030
1032
  }