@microsoft/applicationinsights-common 3.3.12-nightly3.2602-20 → 3.4.0-beta

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 (175) hide show
  1. package/README.md +21 -2
  2. package/browser/es5/applicationinsights-common.cjs.js +1089 -289
  3. package/browser/es5/applicationinsights-common.cjs.js.map +1 -1
  4. package/browser/es5/applicationinsights-common.cjs.min.js +2 -2
  5. package/browser/es5/applicationinsights-common.cjs.min.js.map +1 -1
  6. package/browser/es5/applicationinsights-common.gbl.js +1091 -291
  7. package/browser/es5/applicationinsights-common.gbl.js.map +1 -1
  8. package/browser/es5/applicationinsights-common.gbl.min.js +2 -2
  9. package/browser/es5/applicationinsights-common.gbl.min.js.map +1 -1
  10. package/browser/es5/applicationinsights-common.integrity.json +25 -25
  11. package/browser/es5/applicationinsights-common.js +1091 -291
  12. package/browser/es5/applicationinsights-common.js.map +1 -1
  13. package/browser/es5/applicationinsights-common.min.js +2 -2
  14. package/browser/es5/applicationinsights-common.min.js.map +1 -1
  15. package/dist/es5/applicationinsights-common.js +1089 -289
  16. package/dist/es5/applicationinsights-common.js.map +1 -1
  17. package/dist/es5/applicationinsights-common.min.js +2 -2
  18. package/dist/es5/applicationinsights-common.min.js.map +1 -1
  19. package/dist-es5/applicationinsights-common.js +42 -32
  20. package/dist-es5/applicationinsights-common.js.map +1 -1
  21. package/package.json +65 -66
  22. package/types/applicationinsights-common.d.ts +408 -2574
  23. package/types/applicationinsights-common.namespaced.d.ts +2385 -89
  24. package/dist-es5/ConnectionStringParser.js +0 -44
  25. package/dist-es5/ConnectionStringParser.js.map +0 -1
  26. package/dist-es5/Constants.js +0 -22
  27. package/dist-es5/Constants.js.map +0 -1
  28. package/dist-es5/DomHelperFuncs.js +0 -22
  29. package/dist-es5/DomHelperFuncs.js.map +0 -1
  30. package/dist-es5/Enums.js +0 -30
  31. package/dist-es5/Enums.js.map +0 -1
  32. package/dist-es5/HelperFuncs.js +0 -50
  33. package/dist-es5/HelperFuncs.js.map +0 -1
  34. package/dist-es5/Interfaces/ConnectionString.js +0 -6
  35. package/dist-es5/Interfaces/ConnectionString.js.map +0 -1
  36. package/dist-es5/Interfaces/Context/IApplication.js +0 -8
  37. package/dist-es5/Interfaces/Context/IApplication.js.map +0 -1
  38. package/dist-es5/Interfaces/Context/IDevice.js +0 -8
  39. package/dist-es5/Interfaces/Context/IDevice.js.map +0 -1
  40. package/dist-es5/Interfaces/Context/IInternal.js +0 -8
  41. package/dist-es5/Interfaces/Context/IInternal.js.map +0 -1
  42. package/dist-es5/Interfaces/Context/ILocation.js +0 -8
  43. package/dist-es5/Interfaces/Context/ILocation.js.map +0 -1
  44. package/dist-es5/Interfaces/Context/IOperatingSystem.js +0 -8
  45. package/dist-es5/Interfaces/Context/IOperatingSystem.js.map +0 -1
  46. package/dist-es5/Interfaces/Context/ISample.js +0 -8
  47. package/dist-es5/Interfaces/Context/ISample.js.map +0 -1
  48. package/dist-es5/Interfaces/Context/ISession.js +0 -8
  49. package/dist-es5/Interfaces/Context/ISession.js.map +0 -1
  50. package/dist-es5/Interfaces/Context/ISessionManager.js +0 -8
  51. package/dist-es5/Interfaces/Context/ISessionManager.js.map +0 -1
  52. package/dist-es5/Interfaces/Context/ITelemetryTrace.js +0 -8
  53. package/dist-es5/Interfaces/Context/ITelemetryTrace.js.map +0 -1
  54. package/dist-es5/Interfaces/Context/IUser.js +0 -8
  55. package/dist-es5/Interfaces/Context/IUser.js.map +0 -1
  56. package/dist-es5/Interfaces/Context/IWeb.js +0 -8
  57. package/dist-es5/Interfaces/Context/IWeb.js.map +0 -1
  58. package/dist-es5/Interfaces/Contracts/AvailabilityData.js +0 -52
  59. package/dist-es5/Interfaces/Contracts/AvailabilityData.js.map +0 -1
  60. package/dist-es5/Interfaces/Contracts/ContextTagKeys.js +0 -89
  61. package/dist-es5/Interfaces/Contracts/ContextTagKeys.js.map +0 -1
  62. package/dist-es5/Interfaces/Contracts/DataPointType.js +0 -8
  63. package/dist-es5/Interfaces/Contracts/DataPointType.js.map +0 -1
  64. package/dist-es5/Interfaces/Contracts/DependencyKind.js +0 -8
  65. package/dist-es5/Interfaces/Contracts/DependencyKind.js.map +0 -1
  66. package/dist-es5/Interfaces/Contracts/DependencySourceType.js +0 -8
  67. package/dist-es5/Interfaces/Contracts/DependencySourceType.js.map +0 -1
  68. package/dist-es5/Interfaces/Contracts/IBase.js +0 -8
  69. package/dist-es5/Interfaces/Contracts/IBase.js.map +0 -1
  70. package/dist-es5/Interfaces/Contracts/IData.js +0 -8
  71. package/dist-es5/Interfaces/Contracts/IData.js.map +0 -1
  72. package/dist-es5/Interfaces/Contracts/IDataPoint.js +0 -6
  73. package/dist-es5/Interfaces/Contracts/IDataPoint.js.map +0 -1
  74. package/dist-es5/Interfaces/Contracts/IDomain.js +0 -8
  75. package/dist-es5/Interfaces/Contracts/IDomain.js.map +0 -1
  76. package/dist-es5/Interfaces/Contracts/IEnvelope.js +0 -46
  77. package/dist-es5/Interfaces/Contracts/IEnvelope.js.map +0 -1
  78. package/dist-es5/Interfaces/Contracts/IEventData.js +0 -8
  79. package/dist-es5/Interfaces/Contracts/IEventData.js.map +0 -1
  80. package/dist-es5/Interfaces/Contracts/IExceptionData.js +0 -8
  81. package/dist-es5/Interfaces/Contracts/IExceptionData.js.map +0 -1
  82. package/dist-es5/Interfaces/Contracts/IExceptionDetails.js +0 -8
  83. package/dist-es5/Interfaces/Contracts/IExceptionDetails.js.map +0 -1
  84. package/dist-es5/Interfaces/Contracts/IMessageData.js +0 -8
  85. package/dist-es5/Interfaces/Contracts/IMessageData.js.map +0 -1
  86. package/dist-es5/Interfaces/Contracts/IMetricData.js +0 -8
  87. package/dist-es5/Interfaces/Contracts/IMetricData.js.map +0 -1
  88. package/dist-es5/Interfaces/Contracts/IPageViewData.js +0 -8
  89. package/dist-es5/Interfaces/Contracts/IPageViewData.js.map +0 -1
  90. package/dist-es5/Interfaces/Contracts/IPageViewPerfData.js +0 -8
  91. package/dist-es5/Interfaces/Contracts/IPageViewPerfData.js.map +0 -1
  92. package/dist-es5/Interfaces/Contracts/IRemoteDependencyData.js +0 -8
  93. package/dist-es5/Interfaces/Contracts/IRemoteDependencyData.js.map +0 -1
  94. package/dist-es5/Interfaces/Contracts/IStackFrame.js +0 -8
  95. package/dist-es5/Interfaces/Contracts/IStackFrame.js.map +0 -1
  96. package/dist-es5/Interfaces/Contracts/RequestData.js +0 -46
  97. package/dist-es5/Interfaces/Contracts/RequestData.js.map +0 -1
  98. package/dist-es5/Interfaces/Contracts/SeverityLevel.js +0 -18
  99. package/dist-es5/Interfaces/Contracts/SeverityLevel.js.map +0 -1
  100. package/dist-es5/Interfaces/IAppInsights.js +0 -8
  101. package/dist-es5/Interfaces/IAppInsights.js.map +0 -1
  102. package/dist-es5/Interfaces/IConfig.js +0 -26
  103. package/dist-es5/Interfaces/IConfig.js.map +0 -1
  104. package/dist-es5/Interfaces/ICorrelationConfig.js +0 -8
  105. package/dist-es5/Interfaces/ICorrelationConfig.js.map +0 -1
  106. package/dist-es5/Interfaces/IDependencyTelemetry.js +0 -8
  107. package/dist-es5/Interfaces/IDependencyTelemetry.js.map +0 -1
  108. package/dist-es5/Interfaces/IEventTelemetry.js +0 -6
  109. package/dist-es5/Interfaces/IEventTelemetry.js.map +0 -1
  110. package/dist-es5/Interfaces/IExceptionTelemetry.js +0 -8
  111. package/dist-es5/Interfaces/IExceptionTelemetry.js.map +0 -1
  112. package/dist-es5/Interfaces/IMetricTelemetry.js +0 -6
  113. package/dist-es5/Interfaces/IMetricTelemetry.js.map +0 -1
  114. package/dist-es5/Interfaces/IPageViewPerformanceTelemetry.js +0 -6
  115. package/dist-es5/Interfaces/IPageViewPerformanceTelemetry.js.map +0 -1
  116. package/dist-es5/Interfaces/IPageViewTelemetry.js +0 -6
  117. package/dist-es5/Interfaces/IPageViewTelemetry.js.map +0 -1
  118. package/dist-es5/Interfaces/IPartC.js +0 -8
  119. package/dist-es5/Interfaces/IPartC.js.map +0 -1
  120. package/dist-es5/Interfaces/IPropertiesPlugin.js +0 -8
  121. package/dist-es5/Interfaces/IPropertiesPlugin.js.map +0 -1
  122. package/dist-es5/Interfaces/IRequestContext.js +0 -6
  123. package/dist-es5/Interfaces/IRequestContext.js.map +0 -1
  124. package/dist-es5/Interfaces/IStorageBuffer.js +0 -6
  125. package/dist-es5/Interfaces/IStorageBuffer.js.map +0 -1
  126. package/dist-es5/Interfaces/ITelemetryContext.js +0 -8
  127. package/dist-es5/Interfaces/ITelemetryContext.js.map +0 -1
  128. package/dist-es5/Interfaces/IThrottleMgr.js +0 -6
  129. package/dist-es5/Interfaces/IThrottleMgr.js.map +0 -1
  130. package/dist-es5/Interfaces/ITraceTelemetry.js +0 -8
  131. package/dist-es5/Interfaces/ITraceTelemetry.js.map +0 -1
  132. package/dist-es5/Interfaces/PartAExtensions.js +0 -17
  133. package/dist-es5/Interfaces/PartAExtensions.js.map +0 -1
  134. package/dist-es5/Interfaces/Telemetry/IEnvelope.js +0 -8
  135. package/dist-es5/Interfaces/Telemetry/IEnvelope.js.map +0 -1
  136. package/dist-es5/Interfaces/Telemetry/ISerializable.js +0 -8
  137. package/dist-es5/Interfaces/Telemetry/ISerializable.js.map +0 -1
  138. package/dist-es5/Offline.js +0 -137
  139. package/dist-es5/Offline.js.map +0 -1
  140. package/dist-es5/RequestResponseHeaders.js +0 -19
  141. package/dist-es5/RequestResponseHeaders.js.map +0 -1
  142. package/dist-es5/StorageHelperFuncs.js +0 -184
  143. package/dist-es5/StorageHelperFuncs.js.map +0 -1
  144. package/dist-es5/Telemetry/Common/Data.js +0 -25
  145. package/dist-es5/Telemetry/Common/Data.js.map +0 -1
  146. package/dist-es5/Telemetry/Common/DataPoint.js +0 -29
  147. package/dist-es5/Telemetry/Common/DataPoint.js.map +0 -1
  148. package/dist-es5/Telemetry/Common/DataSanitizer.js +0 -129
  149. package/dist-es5/Telemetry/Common/DataSanitizer.js.map +0 -1
  150. package/dist-es5/Telemetry/Common/Envelope.js +0 -38
  151. package/dist-es5/Telemetry/Common/Envelope.js.map +0 -1
  152. package/dist-es5/Telemetry/Event.js +0 -32
  153. package/dist-es5/Telemetry/Event.js.map +0 -1
  154. package/dist-es5/Telemetry/Exception.js +0 -759
  155. package/dist-es5/Telemetry/Exception.js.map +0 -1
  156. package/dist-es5/Telemetry/Metric.js +0 -39
  157. package/dist-es5/Telemetry/Metric.js.map +0 -1
  158. package/dist-es5/Telemetry/PageView.js +0 -41
  159. package/dist-es5/Telemetry/PageView.js.map +0 -1
  160. package/dist-es5/Telemetry/PageViewPerformance.js +0 -48
  161. package/dist-es5/Telemetry/PageViewPerformance.js.map +0 -1
  162. package/dist-es5/Telemetry/RemoteDependencyData.js +0 -62
  163. package/dist-es5/Telemetry/RemoteDependencyData.js.map +0 -1
  164. package/dist-es5/Telemetry/Trace.js +0 -36
  165. package/dist-es5/Telemetry/Trace.js.map +0 -1
  166. package/dist-es5/TelemetryItemCreator.js +0 -65
  167. package/dist-es5/TelemetryItemCreator.js.map +0 -1
  168. package/dist-es5/ThrottleMgr.js +0 -388
  169. package/dist-es5/ThrottleMgr.js.map +0 -1
  170. package/dist-es5/UrlHelperFuncs.js +0 -90
  171. package/dist-es5/UrlHelperFuncs.js.map +0 -1
  172. package/dist-es5/Util.js +0 -198
  173. package/dist-es5/Util.js.map +0 -1
  174. package/dist-es5/__DynamicConstants.js +0 -44
  175. package/dist-es5/__DynamicConstants.js.map +0 -1
package/dist-es5/Util.js DELETED
@@ -1,198 +0,0 @@
1
- /*
2
- * Application Insights JavaScript SDK - Common, 3.3.12-nightly3.2602-20
3
- * Copyright (c) Microsoft and contributors. All rights reserved.
4
- */
5
-
6
-
7
- import { arrForEach, arrIndexOf, dateNow, getPerformance, isNullOrUndefined, isValidSpanId, isValidTraceId } from "@microsoft/applicationinsights-core-js";
8
- import { strIndexOf } from "@nevware21/ts-utils";
9
- import { DEFAULT_BREEZE_ENDPOINT, DEFAULT_BREEZE_PATH } from "./Constants";
10
- import { RequestHeaders } from "./RequestResponseHeaders";
11
- import { dataSanitizeString } from "./Telemetry/Common/DataSanitizer";
12
- import { urlParseFullHost, urlParseUrl } from "./UrlHelperFuncs";
13
- import { _DYN_CORRELATION_HEADER_E0, _DYN_LENGTH, _DYN_NAME, _DYN_PATHNAME, _DYN_SPLIT, _DYN_TO_LOWER_CASE } from "./__DynamicConstants";
14
- // listing only non-geo specific locations
15
- var _internalEndpoints = [
16
- DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH,
17
- "https://breeze.aimon.applicationinsights.io" + DEFAULT_BREEZE_PATH,
18
- "https://dc-int.services.visualstudio.com" + DEFAULT_BREEZE_PATH
19
- ];
20
- var _correlationIdPrefix = "cid-v1:";
21
- export function isInternalApplicationInsightsEndpoint(endpointUrl) {
22
- return arrIndexOf(_internalEndpoints, endpointUrl[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]()) !== -1;
23
- }
24
- export function correlationIdSetPrefix(prefix) {
25
- _correlationIdPrefix = prefix;
26
- }
27
- export function correlationIdGetPrefix() {
28
- return _correlationIdPrefix;
29
- }
30
- /**
31
- * Checks if a request url is not on a excluded domain list and if it is safe to add correlation headers.
32
- * Headers are always included if the current domain matches the request domain. If they do not match (CORS),
33
- * they are regex-ed across correlationHeaderDomains and correlationHeaderExcludedDomains to determine if headers are included.
34
- * Some environments don't give information on currentHost via window.location.host (e.g. Cordova). In these cases, the user must
35
- * manually supply domains to include correlation headers on. Else, no headers will be included at all.
36
- */
37
- export function correlationIdCanIncludeCorrelationHeader(config, requestUrl, currentHost) {
38
- if (!requestUrl || (config && config.disableCorrelationHeaders)) {
39
- return false;
40
- }
41
- if (config && config[_DYN_CORRELATION_HEADER_E0 /* @min:%2ecorrelationHeaderExcludePatterns */]) {
42
- for (var i = 0; i < config.correlationHeaderExcludePatterns[_DYN_LENGTH /* @min:%2elength */]; i++) {
43
- if (config[_DYN_CORRELATION_HEADER_E0 /* @min:%2ecorrelationHeaderExcludePatterns */][i].test(requestUrl)) {
44
- return false;
45
- }
46
- }
47
- }
48
- var requestHost = urlParseUrl(requestUrl).host[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();
49
- if (requestHost && (strIndexOf(requestHost, ":443") !== -1 || strIndexOf(requestHost, ":80") !== -1)) {
50
- // [Bug #1260] IE can include the port even for http and https URLs so if present
51
- // try and parse it to remove if it matches the default protocol port
52
- requestHost = (urlParseFullHost(requestUrl, true) || "")[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();
53
- }
54
- if ((!config || !config.enableCorsCorrelation) && (requestHost && requestHost !== currentHost)) {
55
- return false;
56
- }
57
- var includedDomains = config && config.correlationHeaderDomains;
58
- if (includedDomains) {
59
- var matchExists_1;
60
- arrForEach(includedDomains, function (domain) {
61
- var regex = new RegExp(domain.toLowerCase().replace(/\\/g, "\\\\").replace(/\./g, "\\.").replace(/\*/g, ".*"));
62
- matchExists_1 = matchExists_1 || regex.test(requestHost);
63
- });
64
- if (!matchExists_1) {
65
- return false;
66
- }
67
- }
68
- var excludedDomains = config && config.correlationHeaderExcludedDomains;
69
- if (!excludedDomains || excludedDomains[_DYN_LENGTH /* @min:%2elength */] === 0) {
70
- return true;
71
- }
72
- for (var i = 0; i < excludedDomains[_DYN_LENGTH /* @min:%2elength */]; i++) {
73
- var regex = new RegExp(excludedDomains[i].toLowerCase().replace(/\\/g, "\\\\").replace(/\./g, "\\.").replace(/\*/g, ".*"));
74
- if (regex.test(requestHost)) {
75
- return false;
76
- }
77
- }
78
- // if we don't know anything about the requestHost, require the user to use included/excludedDomains.
79
- // Previously we always returned false for a falsy requestHost
80
- return requestHost && requestHost[_DYN_LENGTH /* @min:%2elength */] > 0;
81
- }
82
- /**
83
- * Combines target appId and target role name from response header.
84
- */
85
- export function correlationIdGetCorrelationContext(responseHeader) {
86
- if (responseHeader) {
87
- var correlationId = correlationIdGetCorrelationContextValue(responseHeader, RequestHeaders[1 /* eRequestHeaders.requestContextTargetKey */]);
88
- if (correlationId && correlationId !== _correlationIdPrefix) {
89
- return correlationId;
90
- }
91
- }
92
- }
93
- /**
94
- * Gets key from correlation response header
95
- */
96
- export function correlationIdGetCorrelationContextValue(responseHeader, key) {
97
- if (responseHeader) {
98
- var keyValues = responseHeader[_DYN_SPLIT /* @min:%2esplit */](",");
99
- for (var i = 0; i < keyValues[_DYN_LENGTH /* @min:%2elength */]; ++i) {
100
- var keyValue = keyValues[i][_DYN_SPLIT /* @min:%2esplit */]("=");
101
- if (keyValue[_DYN_LENGTH /* @min:%2elength */] === 2 && keyValue[0] === key) {
102
- return keyValue[1];
103
- }
104
- }
105
- }
106
- }
107
- export function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName) {
108
- var target, name = commandName, data = commandName;
109
- if (absoluteUrl && absoluteUrl[_DYN_LENGTH /* @min:%2elength */] > 0) {
110
- var parsedUrl = urlParseUrl(absoluteUrl);
111
- target = parsedUrl.host;
112
- if (!name) {
113
- if (parsedUrl[_DYN_PATHNAME /* @min:%2epathname */] != null) {
114
- var pathName = (parsedUrl.pathname[_DYN_LENGTH /* @min:%2elength */] === 0) ? "/" : parsedUrl[_DYN_PATHNAME /* @min:%2epathname */];
115
- if (pathName.charAt(0) !== "/") {
116
- pathName = "/" + pathName;
117
- }
118
- data = parsedUrl[_DYN_PATHNAME /* @min:%2epathname */];
119
- name = dataSanitizeString(logger, method ? method + " " + pathName : pathName);
120
- }
121
- else {
122
- name = dataSanitizeString(logger, absoluteUrl);
123
- }
124
- }
125
- }
126
- else {
127
- target = commandName;
128
- name = commandName;
129
- }
130
- return {
131
- target: target,
132
- name: name,
133
- data: data
134
- };
135
- }
136
- export function dateTimeUtilsNow() {
137
- // returns the window or webworker performance object
138
- var perf = getPerformance();
139
- if (perf && perf.now && perf.timing) {
140
- var now = perf.now() + perf.timing.navigationStart;
141
- // Known issue with IE where this calculation can be negative, so if it is then ignore and fallback
142
- if (now > 0) {
143
- return now;
144
- }
145
- }
146
- return dateNow();
147
- }
148
- export function dateTimeUtilsDuration(start, end) {
149
- var result = null;
150
- if (start !== 0 && end !== 0 && !isNullOrUndefined(start) && !isNullOrUndefined(end)) {
151
- result = end - start;
152
- }
153
- return result;
154
- }
155
- /**
156
- * Creates a IDistributedTraceContext from an optional telemetryTrace
157
- * @param telemetryTrace - The telemetryTrace instance that is being wrapped
158
- * @param parentCtx - An optional parent distributed trace instance, almost always undefined as this scenario is only used in the case of multiple property handlers.
159
- * @returns A new IDistributedTraceContext instance that is backed by the telemetryTrace or temporary object
160
- */
161
- export function createDistributedTraceContextFromTrace(telemetryTrace, parentCtx) {
162
- var trace = telemetryTrace || {};
163
- return {
164
- getName: function () {
165
- return trace[_DYN_NAME /* @min:%2ename */];
166
- },
167
- setName: function (newValue) {
168
- parentCtx && parentCtx.setName(newValue);
169
- trace[_DYN_NAME /* @min:%2ename */] = newValue;
170
- },
171
- getTraceId: function () {
172
- return trace.traceID;
173
- },
174
- setTraceId: function (newValue) {
175
- parentCtx && parentCtx.setTraceId(newValue);
176
- if (isValidTraceId(newValue)) {
177
- trace.traceID = newValue;
178
- }
179
- },
180
- getSpanId: function () {
181
- return trace.parentID;
182
- },
183
- setSpanId: function (newValue) {
184
- parentCtx && parentCtx.setSpanId(newValue);
185
- if (isValidSpanId(newValue)) {
186
- trace.parentID = newValue;
187
- }
188
- },
189
- getTraceFlags: function () {
190
- return trace.traceFlags;
191
- },
192
- setTraceFlags: function (newTraceFlags) {
193
- parentCtx && parentCtx.setTraceFlags(newTraceFlags);
194
- trace.traceFlags = newTraceFlags;
195
- }
196
- };
197
- }
198
- //# sourceMappingURL=Util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Util.js.map","sources":["Util.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, dateNow, getPerformance, isNullOrUndefined, isValidSpanId, isValidTraceId } from \"@microsoft/applicationinsights-core-js\";\r\nimport { strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { DEFAULT_BREEZE_ENDPOINT, DEFAULT_BREEZE_PATH } from \"./Constants\";\r\nimport { RequestHeaders } from \"./RequestResponseHeaders\";\r\nimport { dataSanitizeString } from \"./Telemetry/Common/DataSanitizer\";\r\nimport { urlParseFullHost, urlParseUrl } from \"./UrlHelperFuncs\";\r\nimport { _DYN_CORRELATION_HEADER_E0, _DYN_LENGTH, _DYN_NAME, _DYN_PATHNAME, _DYN_SPLIT, _DYN_TO_LOWER_CASE } from \"./__DynamicConstants\";\r\n// listing only non-geo specific locations\r\nvar _internalEndpoints = [\r\n DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH,\r\n \"https://breeze.aimon.applicationinsights.io\" + DEFAULT_BREEZE_PATH,\r\n \"https://dc-int.services.visualstudio.com\" + DEFAULT_BREEZE_PATH\r\n];\r\nvar _correlationIdPrefix = \"cid-v1:\";\r\nexport function isInternalApplicationInsightsEndpoint(endpointUrl) {\r\n return arrIndexOf(_internalEndpoints, endpointUrl[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]()) !== -1;\r\n}\r\nexport function correlationIdSetPrefix(prefix) {\r\n _correlationIdPrefix = prefix;\r\n}\r\nexport function correlationIdGetPrefix() {\r\n return _correlationIdPrefix;\r\n}\r\n/**\r\n * Checks if a request url is not on a excluded domain list and if it is safe to add correlation headers.\r\n * Headers are always included if the current domain matches the request domain. If they do not match (CORS),\r\n * they are regex-ed across correlationHeaderDomains and correlationHeaderExcludedDomains to determine if headers are included.\r\n * Some environments don't give information on currentHost via window.location.host (e.g. Cordova). In these cases, the user must\r\n * manually supply domains to include correlation headers on. Else, no headers will be included at all.\r\n */\r\nexport function correlationIdCanIncludeCorrelationHeader(config, requestUrl, currentHost) {\r\n if (!requestUrl || (config && config.disableCorrelationHeaders)) {\r\n return false;\r\n }\r\n if (config && config[_DYN_CORRELATION_HEADER_E0 /* @min:%2ecorrelationHeaderExcludePatterns */]) {\r\n for (var i = 0; i < config.correlationHeaderExcludePatterns[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (config[_DYN_CORRELATION_HEADER_E0 /* @min:%2ecorrelationHeaderExcludePatterns */][i].test(requestUrl)) {\r\n return false;\r\n }\r\n }\r\n }\r\n var requestHost = urlParseUrl(requestUrl).host[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n if (requestHost && (strIndexOf(requestHost, \":443\") !== -1 || strIndexOf(requestHost, \":80\") !== -1)) {\r\n // [Bug #1260] IE can include the port even for http and https URLs so if present\r\n // try and parse it to remove if it matches the default protocol port\r\n requestHost = (urlParseFullHost(requestUrl, true) || \"\")[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n }\r\n if ((!config || !config.enableCorsCorrelation) && (requestHost && requestHost !== currentHost)) {\r\n return false;\r\n }\r\n var includedDomains = config && config.correlationHeaderDomains;\r\n if (includedDomains) {\r\n var matchExists_1;\r\n arrForEach(includedDomains, function (domain) {\r\n var regex = new RegExp(domain.toLowerCase().replace(/\\\\/g, \"\\\\\\\\\").replace(/\\./g, \"\\\\.\").replace(/\\*/g, \".*\"));\r\n matchExists_1 = matchExists_1 || regex.test(requestHost);\r\n });\r\n if (!matchExists_1) {\r\n return false;\r\n }\r\n }\r\n var excludedDomains = config && config.correlationHeaderExcludedDomains;\r\n if (!excludedDomains || excludedDomains[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n return true;\r\n }\r\n for (var i = 0; i < excludedDomains[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n var regex = new RegExp(excludedDomains[i].toLowerCase().replace(/\\\\/g, \"\\\\\\\\\").replace(/\\./g, \"\\\\.\").replace(/\\*/g, \".*\"));\r\n if (regex.test(requestHost)) {\r\n return false;\r\n }\r\n }\r\n // if we don't know anything about the requestHost, require the user to use included/excludedDomains.\r\n // Previously we always returned false for a falsy requestHost\r\n return requestHost && requestHost[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n}\r\n/**\r\n * Combines target appId and target role name from response header.\r\n */\r\nexport function correlationIdGetCorrelationContext(responseHeader) {\r\n if (responseHeader) {\r\n var correlationId = correlationIdGetCorrelationContextValue(responseHeader, RequestHeaders[1 /* eRequestHeaders.requestContextTargetKey */]);\r\n if (correlationId && correlationId !== _correlationIdPrefix) {\r\n return correlationId;\r\n }\r\n }\r\n}\r\n/**\r\n * Gets key from correlation response header\r\n */\r\nexport function correlationIdGetCorrelationContextValue(responseHeader, key) {\r\n if (responseHeader) {\r\n var keyValues = responseHeader[_DYN_SPLIT /* @min:%2esplit */](\",\");\r\n for (var i = 0; i < keyValues[_DYN_LENGTH /* @min:%2elength */]; ++i) {\r\n var keyValue = keyValues[i][_DYN_SPLIT /* @min:%2esplit */](\"=\");\r\n if (keyValue[_DYN_LENGTH /* @min:%2elength */] === 2 && keyValue[0] === key) {\r\n return keyValue[1];\r\n }\r\n }\r\n }\r\n}\r\nexport function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName) {\r\n var target, name = commandName, data = commandName;\r\n if (absoluteUrl && absoluteUrl[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var parsedUrl = urlParseUrl(absoluteUrl);\r\n target = parsedUrl.host;\r\n if (!name) {\r\n if (parsedUrl[_DYN_PATHNAME /* @min:%2epathname */] != null) {\r\n var pathName = (parsedUrl.pathname[_DYN_LENGTH /* @min:%2elength */] === 0) ? \"/\" : parsedUrl[_DYN_PATHNAME /* @min:%2epathname */];\r\n if (pathName.charAt(0) !== \"/\") {\r\n pathName = \"/\" + pathName;\r\n }\r\n data = parsedUrl[_DYN_PATHNAME /* @min:%2epathname */];\r\n name = dataSanitizeString(logger, method ? method + \" \" + pathName : pathName);\r\n }\r\n else {\r\n name = dataSanitizeString(logger, absoluteUrl);\r\n }\r\n }\r\n }\r\n else {\r\n target = commandName;\r\n name = commandName;\r\n }\r\n return {\r\n target: target,\r\n name: name,\r\n data: data\r\n };\r\n}\r\nexport function dateTimeUtilsNow() {\r\n // returns the window or webworker performance object\r\n var perf = getPerformance();\r\n if (perf && perf.now && perf.timing) {\r\n var now = perf.now() + perf.timing.navigationStart;\r\n // Known issue with IE where this calculation can be negative, so if it is then ignore and fallback\r\n if (now > 0) {\r\n return now;\r\n }\r\n }\r\n return dateNow();\r\n}\r\nexport function dateTimeUtilsDuration(start, end) {\r\n var result = null;\r\n if (start !== 0 && end !== 0 && !isNullOrUndefined(start) && !isNullOrUndefined(end)) {\r\n result = end - start;\r\n }\r\n return result;\r\n}\r\n/**\r\n * Creates a IDistributedTraceContext from an optional telemetryTrace\r\n * @param telemetryTrace - The telemetryTrace instance that is being wrapped\r\n * @param parentCtx - An optional parent distributed trace instance, almost always undefined as this scenario is only used in the case of multiple property handlers.\r\n * @returns A new IDistributedTraceContext instance that is backed by the telemetryTrace or temporary object\r\n */\r\nexport function createDistributedTraceContextFromTrace(telemetryTrace, parentCtx) {\r\n var trace = telemetryTrace || {};\r\n return {\r\n getName: function () {\r\n return trace[_DYN_NAME /* @min:%2ename */];\r\n },\r\n setName: function (newValue) {\r\n parentCtx && parentCtx.setName(newValue);\r\n trace[_DYN_NAME /* @min:%2ename */] = newValue;\r\n },\r\n getTraceId: function () {\r\n return trace.traceID;\r\n },\r\n setTraceId: function (newValue) {\r\n parentCtx && parentCtx.setTraceId(newValue);\r\n if (isValidTraceId(newValue)) {\r\n trace.traceID = newValue;\r\n }\r\n },\r\n getSpanId: function () {\r\n return trace.parentID;\r\n },\r\n setSpanId: function (newValue) {\r\n parentCtx && parentCtx.setSpanId(newValue);\r\n if (isValidSpanId(newValue)) {\r\n trace.parentID = newValue;\r\n }\r\n },\r\n getTraceFlags: function () {\r\n return trace.traceFlags;\r\n },\r\n setTraceFlags: function (newTraceFlags) {\r\n parentCtx && parentCtx.setTraceFlags(newTraceFlags);\r\n trace.traceFlags = newTraceFlags;\r\n }\r\n };\r\n}\r\n//# sourceMappingURL=Util.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;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;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;AACA;AACA;AACA;AACA;AACA"}
@@ -1,44 +0,0 @@
1
- /*
2
- * Application Insights JavaScript SDK - Common, 3.3.12-nightly3.2602-20
3
- * Copyright (c) Microsoft and contributors. All rights reserved.
4
- */
5
-
6
-
7
- // @skip-file-minify
8
- // ##############################################################
9
- // AUTO GENERATED FILE: This file is Auto Generated during build.
10
- // ##############################################################
11
- // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
- // Note: DON'T Export these const from the package as we are still targeting ES5 which can result in a mutable variables that someone could change!!!
13
- // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14
- export var _DYN_SPLIT = "split"; // Count: 6
15
- export var _DYN_LENGTH = "length"; // Count: 46
16
- export var _DYN_TO_LOWER_CASE = "toLowerCase"; // Count: 6
17
- export var _DYN_INGESTIONENDPOINT = "ingestionendpoint"; // Count: 6
18
- export var _DYN_TO_STRING = "toString"; // Count: 8
19
- export var _DYN_REMOVE_ITEM = "removeItem"; // Count: 3
20
- export var _DYN_MESSAGE = "message"; // Count: 5
21
- export var _DYN_COUNT = "count"; // Count: 6
22
- export var _DYN_PRE_TRIGGER_DATE = "preTriggerDate"; // Count: 4
23
- export var _DYN_GET_UTCDATE = "getUTCDate"; // Count: 3
24
- export var _DYN_STRINGIFY = "stringify"; // Count: 4
25
- export var _DYN_PATHNAME = "pathname"; // Count: 4
26
- export var _DYN_MATCH = "match"; // Count: 5
27
- export var _DYN_CORRELATION_HEADER_E0 = "correlationHeaderExcludePatterns"; // Count: 2
28
- export var _DYN_NAME = "name"; // Count: 10
29
- export var _DYN_EXTENSION_CONFIG = "extensionConfig"; // Count: 4
30
- export var _DYN_PROPERTIES = "properties"; // Count: 10
31
- export var _DYN_MEASUREMENTS = "measurements"; // Count: 9
32
- export var _DYN_SIZE_IN_BYTES = "sizeInBytes"; // Count: 4
33
- export var _DYN_TYPE_NAME = "typeName"; // Count: 5
34
- export var _DYN_EXCEPTIONS = "exceptions"; // Count: 5
35
- export var _DYN_SEVERITY_LEVEL = "severityLevel"; // Count: 5
36
- export var _DYN_PROBLEM_GROUP = "problemGroup"; // Count: 3
37
- export var _DYN_PARSED_STACK = "parsedStack"; // Count: 6
38
- export var _DYN_HAS_FULL_STACK = "hasFullStack"; // Count: 5
39
- export var _DYN_ASSEMBLY = "assembly"; // Count: 4
40
- export var _DYN_FILE_NAME = "fileName"; // Count: 9
41
- export var _DYN_LINE = "line"; // Count: 6
42
- export var _DYN_AI_DATA_CONTRACT = "aiDataContract"; // Count: 4
43
- export var _DYN_DURATION = "duration"; // Count: 4
44
- //# sourceMappingURL=__DynamicConstants.js.map
@@ -1 +0,0 @@
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 ES5 which can result in a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_SPLIT = \"split\"; // Count: 6\r\nexport var _DYN_LENGTH = \"length\"; // Count: 46\r\nexport var _DYN_TO_LOWER_CASE = \"toLowerCase\"; // Count: 6\r\nexport var _DYN_INGESTIONENDPOINT = \"ingestionendpoint\"; // Count: 6\r\nexport var _DYN_TO_STRING = \"toString\"; // Count: 8\r\nexport var _DYN_REMOVE_ITEM = \"removeItem\"; // Count: 3\r\nexport var _DYN_MESSAGE = \"message\"; // Count: 5\r\nexport var _DYN_COUNT = \"count\"; // Count: 6\r\nexport var _DYN_PRE_TRIGGER_DATE = \"preTriggerDate\"; // Count: 4\r\nexport var _DYN_GET_UTCDATE = \"getUTCDate\"; // Count: 3\r\nexport var _DYN_STRINGIFY = \"stringify\"; // Count: 4\r\nexport var _DYN_PATHNAME = \"pathname\"; // Count: 4\r\nexport var _DYN_MATCH = \"match\"; // Count: 5\r\nexport var _DYN_CORRELATION_HEADER_E0 = \"correlationHeaderExcludePatterns\"; // Count: 2\r\nexport var _DYN_NAME = \"name\"; // Count: 10\r\nexport var _DYN_EXTENSION_CONFIG = \"extensionConfig\"; // Count: 4\r\nexport var _DYN_PROPERTIES = \"properties\"; // Count: 10\r\nexport var _DYN_MEASUREMENTS = \"measurements\"; // Count: 9\r\nexport var _DYN_SIZE_IN_BYTES = \"sizeInBytes\"; // Count: 4\r\nexport var _DYN_TYPE_NAME = \"typeName\"; // Count: 5\r\nexport var _DYN_EXCEPTIONS = \"exceptions\"; // Count: 5\r\nexport var _DYN_SEVERITY_LEVEL = \"severityLevel\"; // Count: 5\r\nexport var _DYN_PROBLEM_GROUP = \"problemGroup\"; // Count: 3\r\nexport var _DYN_PARSED_STACK = \"parsedStack\"; // Count: 6\r\nexport var _DYN_HAS_FULL_STACK = \"hasFullStack\"; // Count: 5\r\nexport var _DYN_ASSEMBLY = \"assembly\"; // Count: 4\r\nexport var _DYN_FILE_NAME = \"fileName\"; // Count: 9\r\nexport var _DYN_LINE = \"line\"; // Count: 6\r\nexport var _DYN_AI_DATA_CONTRACT = \"aiDataContract\"; // Count: 4\r\nexport var _DYN_DURATION = \"duration\"; // Count: 4\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"}