@microsoft/applicationinsights-web-basic 3.1.1-nightly3.2402-20 → 3.1.1-nightly3.2403-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.
- package/browser/es5/{aib.3.1.1-nightly3.2402-20.cjs.js → aib.3.1.1-nightly3.2403-02.cjs.js} +617 -348
- package/browser/es5/aib.3.1.1-nightly3.2403-02.cjs.js.map +1 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.cjs.min.js +6 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.cjs.min.js.map +1 -0
- package/browser/es5/{aib.3.1.1-nightly3.2402-20.gbl.js → aib.3.1.1-nightly3.2403-02.gbl.js} +619 -350
- package/browser/es5/aib.3.1.1-nightly3.2403-02.gbl.js.map +1 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.gbl.min.js +6 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.gbl.min.js.map +1 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.integrity.json +66 -0
- package/browser/es5/{aib.3.1.1-nightly3.2402-20.js → aib.3.1.1-nightly3.2403-02.js} +619 -350
- package/browser/es5/aib.3.1.1-nightly3.2403-02.js.map +1 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.min.js +6 -0
- package/browser/es5/aib.3.1.1-nightly3.2403-02.min.js.map +1 -0
- package/browser/es5/aib.3.cjs.js +616 -347
- package/browser/es5/aib.3.cjs.js.map +1 -1
- package/browser/es5/aib.3.cjs.min.js +2 -2
- package/browser/es5/aib.3.cjs.min.js.map +1 -1
- package/browser/es5/aib.3.gbl.js +618 -349
- package/browser/es5/aib.3.gbl.js.map +1 -1
- package/browser/es5/aib.3.gbl.min.js +2 -2
- package/browser/es5/aib.3.gbl.min.js.map +1 -1
- package/browser/es5/aib.3.integrity.json +25 -25
- package/browser/es5/aib.3.js +618 -349
- package/browser/es5/aib.3.js.map +1 -1
- package/browser/es5/aib.3.min.js +2 -2
- package/browser/es5/aib.3.min.js.map +1 -1
- package/dist/es5/applicationinsights-web-basic.js +616 -347
- package/dist/es5/applicationinsights-web-basic.js.map +1 -1
- package/dist/es5/applicationinsights-web-basic.min.js +2 -2
- package/dist/es5/applicationinsights-web-basic.min.js.map +1 -1
- package/dist-es5/__DynamicConstants.js +3 -1
- package/dist-es5/__DynamicConstants.js.map +1 -1
- package/dist-es5/index.js +5 -3
- package/dist-es5/index.js.map +1 -1
- package/package.json +4 -4
- package/types/applicationinsights-web-basic.d.ts +1 -1
- package/types/applicationinsights-web-basic.namespaced.d.ts +44 -1
- package/browser/es5/aib.3.1.1-nightly3.2402-20.cjs.js.map +0 -1
- package/browser/es5/aib.3.1.1-nightly3.2402-20.cjs.min.js +0 -6
- package/browser/es5/aib.3.1.1-nightly3.2402-20.cjs.min.js.map +0 -1
- package/browser/es5/aib.3.1.1-nightly3.2402-20.gbl.js.map +0 -1
- package/browser/es5/aib.3.1.1-nightly3.2402-20.gbl.min.js +0 -6
- package/browser/es5/aib.3.1.1-nightly3.2402-20.gbl.min.js.map +0 -1
- package/browser/es5/aib.3.1.1-nightly3.2402-20.integrity.json +0 -66
- package/browser/es5/aib.3.1.1-nightly3.2402-20.js.map +0 -1
- package/browser/es5/aib.3.1.1-nightly3.2402-20.min.js +0 -6
- package/browser/es5/aib.3.1.1-nightly3.2402-20.min.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript Web SDK - Basic, 3.1.1-nightly3.
|
|
2
|
+
* Application Insights JavaScript Web SDK - Basic, 3.1.1-nightly3.2403-02
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -1320,7 +1320,7 @@
|
|
|
1320
1320
|
var _DYN_SPLICE = "splice";
|
|
1321
1321
|
var _DYN_HDLR = "hdlr";
|
|
1322
1322
|
var _DYN_CANCEL = "cancel";
|
|
1323
|
-
var _DYN_INITIALIZE = "initialize";
|
|
1323
|
+
var _DYN_INITIALIZE$1 = "initialize";
|
|
1324
1324
|
var _DYN_IDENTIFIER = "identifier";
|
|
1325
1325
|
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
1326
1326
|
var _DYN_GET_PLUGIN = "getPlugin";
|
|
@@ -1710,7 +1710,7 @@
|
|
|
1710
1710
|
var createAllPromise = _createAllPromise(createPromise);
|
|
1711
1711
|
|
|
1712
1712
|
var UNDEFINED_VALUE$1 = undefined;
|
|
1713
|
-
var STR_EMPTY = "";
|
|
1713
|
+
var STR_EMPTY$1 = "";
|
|
1714
1714
|
var STR_CHANNELS = "channels";
|
|
1715
1715
|
var STR_CORE = "core";
|
|
1716
1716
|
var STR_CREATE_PERF_MGR = "createPerfMgr";
|
|
@@ -1723,6 +1723,9 @@
|
|
|
1723
1723
|
var STR_EVENTS_DISCARDED = "eventsDiscarded";
|
|
1724
1724
|
var STR_EVENTS_SEND_REQUEST = "eventsSendRequest";
|
|
1725
1725
|
var STR_PERF_EVENT = "perfEvent";
|
|
1726
|
+
var STR_OFFLINE_STORE = "offlineEventsStored";
|
|
1727
|
+
var STR_OFFLINE_SENT = "offlineBatchSent";
|
|
1728
|
+
var STR_OFFLINE_DROP = "offlineBatchDrop";
|
|
1726
1729
|
var STR_GET_PERF_MGR = "getPerfMgr";
|
|
1727
1730
|
var STR_DOMAIN = "domain";
|
|
1728
1731
|
var STR_PATH = "path";
|
|
@@ -1760,7 +1763,7 @@
|
|
|
1760
1763
|
if (isError(object)) {
|
|
1761
1764
|
return object[_DYN_NAME$2 ];
|
|
1762
1765
|
}
|
|
1763
|
-
return STR_EMPTY;
|
|
1766
|
+
return STR_EMPTY$1;
|
|
1764
1767
|
}
|
|
1765
1768
|
function setValue(target, field, value, valChk, srcChk) {
|
|
1766
1769
|
var theValue = value;
|
|
@@ -1963,7 +1966,7 @@
|
|
|
1963
1966
|
var nav = getNavigator();
|
|
1964
1967
|
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
1965
1968
|
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
1966
|
-
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1969
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1967
1970
|
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
1968
1971
|
}
|
|
1969
1972
|
return _isTrident;
|
|
@@ -1972,9 +1975,9 @@
|
|
|
1972
1975
|
if (userAgentStr === void 0) { userAgentStr = null; }
|
|
1973
1976
|
if (!userAgentStr) {
|
|
1974
1977
|
var navigator_1 = getNavigator() || {};
|
|
1975
|
-
userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
|
|
1978
|
+
userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY$1;
|
|
1976
1979
|
}
|
|
1977
|
-
var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1980
|
+
var ua = (userAgentStr || STR_EMPTY$1)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1978
1981
|
if (strContains(ua, strMsie)) {
|
|
1979
1982
|
var doc = getDocument() || {};
|
|
1980
1983
|
return Math.max(parseInt(ua[_DYN_SPLIT$1 ](strMsie)[1]), (doc[strDocumentMode] || 0));
|
|
@@ -2083,7 +2086,7 @@
|
|
|
2083
2086
|
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
2084
2087
|
var number = random32() >>> 0;
|
|
2085
2088
|
var chars = 0;
|
|
2086
|
-
var result = STR_EMPTY;
|
|
2089
|
+
var result = STR_EMPTY$1;
|
|
2087
2090
|
while (result[_DYN_LENGTH$2 ] < maxLength) {
|
|
2088
2091
|
chars++;
|
|
2089
2092
|
result += base64chars.charAt(number & 0x3F);
|
|
@@ -2121,11 +2124,11 @@
|
|
|
2121
2124
|
}
|
|
2122
2125
|
function createUniqueNamespace(name, includeVersion) {
|
|
2123
2126
|
if (includeVersion === void 0) { includeVersion = false; }
|
|
2124
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
2127
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY$1) + instanceName);
|
|
2125
2128
|
}
|
|
2126
2129
|
function createElmNodeData(name) {
|
|
2127
2130
|
var data = {
|
|
2128
|
-
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
2131
|
+
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY$1) + "." + version),
|
|
2129
2132
|
accept: function (target) {
|
|
2130
2133
|
return _canAcceptData(target);
|
|
2131
2134
|
},
|
|
@@ -2878,9 +2881,9 @@
|
|
|
2878
2881
|
_a$4);
|
|
2879
2882
|
function _sanitizeDiagnosticText(text) {
|
|
2880
2883
|
if (text) {
|
|
2881
|
-
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
2884
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY$1) + "\"";
|
|
2882
2885
|
}
|
|
2883
|
-
return STR_EMPTY;
|
|
2886
|
+
return STR_EMPTY$1;
|
|
2884
2887
|
}
|
|
2885
2888
|
function _logToConsole(func, message) {
|
|
2886
2889
|
var theConsole = getConsole();
|
|
@@ -2902,12 +2905,12 @@
|
|
|
2902
2905
|
_self[_DYN_MESSAGE$1 ] =
|
|
2903
2906
|
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
2904
2907
|
msgId;
|
|
2905
|
-
var strProps = STR_EMPTY;
|
|
2908
|
+
var strProps = STR_EMPTY$1;
|
|
2906
2909
|
if (hasJSON()) {
|
|
2907
2910
|
strProps = getJSON().stringify(properties);
|
|
2908
2911
|
}
|
|
2909
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
2910
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
2912
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY$1) +
|
|
2913
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY$1);
|
|
2911
2914
|
_self[_DYN_MESSAGE$1 ] += diagnosticText;
|
|
2912
2915
|
}
|
|
2913
2916
|
_InternalLogMessage.dataType = "MessageData";
|
|
@@ -3146,7 +3149,7 @@
|
|
|
3146
3149
|
var result = false;
|
|
3147
3150
|
if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {
|
|
3148
3151
|
var values = {};
|
|
3149
|
-
var theValue = strTrim(value || STR_EMPTY);
|
|
3152
|
+
var theValue = strTrim(value || STR_EMPTY$1);
|
|
3150
3153
|
var idx = strIndexOf(theValue, ";");
|
|
3151
3154
|
if (idx !== -1) {
|
|
3152
3155
|
theValue = strTrim(strLeft(value, idx));
|
|
@@ -3161,11 +3164,11 @@
|
|
|
3161
3164
|
if (expireMs > 0) {
|
|
3162
3165
|
var expiry = new Date();
|
|
3163
3166
|
expiry.setTime(expireMs);
|
|
3164
|
-
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
|
|
3167
|
+
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY$1, isTruthy);
|
|
3165
3168
|
}
|
|
3166
3169
|
}
|
|
3167
3170
|
if (!_isIE) {
|
|
3168
|
-
setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
|
|
3171
|
+
setValue(values, "max-age", STR_EMPTY$1 + maxAgeSec, null, isUndefined);
|
|
3169
3172
|
}
|
|
3170
3173
|
}
|
|
3171
3174
|
var location_1 = getLocation();
|
|
@@ -3185,7 +3188,7 @@
|
|
|
3185
3188
|
return result;
|
|
3186
3189
|
},
|
|
3187
3190
|
get: function (name) {
|
|
3188
|
-
var value = STR_EMPTY;
|
|
3191
|
+
var value = STR_EMPTY$1;
|
|
3189
3192
|
if (_isMgrEnabled(cookieMgr) && !_isIgnoredCookie(cookieMgrConfig, name)) {
|
|
3190
3193
|
value = _getCookieFn(name);
|
|
3191
3194
|
}
|
|
@@ -3209,7 +3212,7 @@
|
|
|
3209
3212
|
if (!isIE()) {
|
|
3210
3213
|
values["max-age"] = "0";
|
|
3211
3214
|
}
|
|
3212
|
-
_delCookieFn(name, _formatCookieValue(STR_EMPTY, values));
|
|
3215
|
+
_delCookieFn(name, _formatCookieValue(STR_EMPTY$1, values));
|
|
3213
3216
|
result = true;
|
|
3214
3217
|
}
|
|
3215
3218
|
return result;
|
|
@@ -3242,7 +3245,7 @@
|
|
|
3242
3245
|
if (theValue && theValue[_DYN_LENGTH$2 ]) {
|
|
3243
3246
|
var parts = strTrim(theValue)[_DYN_SPLIT$1 ](";");
|
|
3244
3247
|
arrForEach(parts, function (thePart) {
|
|
3245
|
-
thePart = strTrim(thePart || STR_EMPTY);
|
|
3248
|
+
thePart = strTrim(thePart || STR_EMPTY$1);
|
|
3246
3249
|
if (thePart) {
|
|
3247
3250
|
var idx = strIndexOf(thePart, "=");
|
|
3248
3251
|
if (idx === -1) {
|
|
@@ -3263,22 +3266,22 @@
|
|
|
3263
3266
|
return null;
|
|
3264
3267
|
}
|
|
3265
3268
|
function _formatCookieValue(value, values) {
|
|
3266
|
-
var cookieValue = value || STR_EMPTY;
|
|
3269
|
+
var cookieValue = value || STR_EMPTY$1;
|
|
3267
3270
|
objForEachKey(values, function (name, theValue) {
|
|
3268
|
-
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
|
|
3271
|
+
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY$1);
|
|
3269
3272
|
});
|
|
3270
3273
|
return cookieValue;
|
|
3271
3274
|
}
|
|
3272
3275
|
function _getCookieValue(name) {
|
|
3273
|
-
var cookieValue = STR_EMPTY;
|
|
3276
|
+
var cookieValue = STR_EMPTY$1;
|
|
3274
3277
|
!_doc && _getDoc();
|
|
3275
3278
|
if (_doc.v) {
|
|
3276
|
-
var theCookie = _doc.v[strCookie] || STR_EMPTY;
|
|
3279
|
+
var theCookie = _doc.v[strCookie] || STR_EMPTY$1;
|
|
3277
3280
|
if (_parsedCookieValue !== theCookie) {
|
|
3278
3281
|
_cookieCache = _extractParts(theCookie);
|
|
3279
3282
|
_parsedCookieValue = theCookie;
|
|
3280
3283
|
}
|
|
3281
|
-
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
|
|
3284
|
+
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY$1);
|
|
3282
3285
|
}
|
|
3283
3286
|
return cookieValue;
|
|
3284
3287
|
}
|
|
@@ -3385,6 +3388,28 @@
|
|
|
3385
3388
|
}
|
|
3386
3389
|
}
|
|
3387
3390
|
};
|
|
3391
|
+
_self[STR_OFFLINE_STORE ] = function (events) {
|
|
3392
|
+
if (events && events[_DYN_LENGTH$2 ]) {
|
|
3393
|
+
_runListeners(_listeners, STR_OFFLINE_STORE, true, function (listener) {
|
|
3394
|
+
listener[STR_OFFLINE_STORE ](events);
|
|
3395
|
+
});
|
|
3396
|
+
}
|
|
3397
|
+
};
|
|
3398
|
+
_self[STR_OFFLINE_SENT ] = function (batch) {
|
|
3399
|
+
if (batch && batch.data) {
|
|
3400
|
+
_runListeners(_listeners, STR_OFFLINE_SENT, true, function (listener) {
|
|
3401
|
+
listener[STR_OFFLINE_SENT ](batch);
|
|
3402
|
+
});
|
|
3403
|
+
}
|
|
3404
|
+
};
|
|
3405
|
+
_self[STR_OFFLINE_DROP ] = function (cnt, reason) {
|
|
3406
|
+
if (cnt > 0) {
|
|
3407
|
+
var rn_1 = reason || 0;
|
|
3408
|
+
_runListeners(_listeners, STR_OFFLINE_DROP, true, function (listener) {
|
|
3409
|
+
listener[STR_OFFLINE_DROP ](cnt, rn_1);
|
|
3410
|
+
});
|
|
3411
|
+
}
|
|
3412
|
+
};
|
|
3388
3413
|
_self[_DYN_UNLOAD ] = function (isAsync) {
|
|
3389
3414
|
var _finishUnload = function () {
|
|
3390
3415
|
unloadHandler && unloadHandler.rm();
|
|
@@ -3608,7 +3633,7 @@
|
|
|
3608
3633
|
}
|
|
3609
3634
|
arrForEach(initPlugins, function (thePlugin) {
|
|
3610
3635
|
var core = processContext[STR_CORE ]();
|
|
3611
|
-
thePlugin[_DYN_INITIALIZE ](processContext.getCfg(), core, extensions, processContext[_DYN_GET_NEXT ]());
|
|
3636
|
+
thePlugin[_DYN_INITIALIZE$1 ](processContext.getCfg(), core, extensions, processContext[_DYN_GET_NEXT ]());
|
|
3612
3637
|
pluginState = _getPluginState(thePlugin);
|
|
3613
3638
|
if (!thePlugin[STR_CORE] && !pluginState[STR_CORE]) {
|
|
3614
3639
|
pluginState[STR_CORE] = core;
|
|
@@ -3952,7 +3977,7 @@
|
|
|
3952
3977
|
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
3953
3978
|
hasRunContext[chainId] = true;
|
|
3954
3979
|
try {
|
|
3955
|
-
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
3980
|
+
var nextId = nextProxy ? nextProxy._id : STR_EMPTY$1;
|
|
3956
3981
|
if (nextId) {
|
|
3957
3982
|
hasRunContext[nextId] = false;
|
|
3958
3983
|
}
|
|
@@ -4097,7 +4122,7 @@
|
|
|
4097
4122
|
var _hookContainer;
|
|
4098
4123
|
_initDefaults();
|
|
4099
4124
|
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
4100
|
-
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
4125
|
+
_self[_DYN_INITIALIZE$1 ] = function (config, core, extensions, pluginChain) {
|
|
4101
4126
|
_setDefaults(config, core, pluginChain);
|
|
4102
4127
|
_isinitialized = true;
|
|
4103
4128
|
};
|
|
@@ -4316,7 +4341,7 @@
|
|
|
4316
4341
|
var channels = [];
|
|
4317
4342
|
var extPriorities = {};
|
|
4318
4343
|
arrForEach(allExtensions, function (ext) {
|
|
4319
|
-
if (isNullOrUndefined(ext) || isNullOrUndefined(ext[_DYN_INITIALIZE ])) {
|
|
4344
|
+
if (isNullOrUndefined(ext) || isNullOrUndefined(ext[_DYN_INITIALIZE$1 ])) {
|
|
4320
4345
|
throwError(strValidationError);
|
|
4321
4346
|
}
|
|
4322
4347
|
var extPriority = ext[STR_PRIORITY ];
|
|
@@ -4441,7 +4466,7 @@
|
|
|
4441
4466
|
return [_extensions];
|
|
4442
4467
|
};
|
|
4443
4468
|
_self[_DYN_IS_INITIALIZED ] = function () { return _isInitialized; };
|
|
4444
|
-
_self[_DYN_INITIALIZE ] = function (config, extensions, logger, notificationManager) {
|
|
4469
|
+
_self[_DYN_INITIALIZE$1 ] = function (config, extensions, logger, notificationManager) {
|
|
4445
4470
|
if (_isUnloading) {
|
|
4446
4471
|
throwError(strSdkUnloadingError);
|
|
4447
4472
|
}
|
|
@@ -4804,7 +4829,7 @@
|
|
|
4804
4829
|
}
|
|
4805
4830
|
_pluginVersionString = _pluginVersionStringArr.join(";");
|
|
4806
4831
|
}
|
|
4807
|
-
return _pluginVersionString || STR_EMPTY;
|
|
4832
|
+
return _pluginVersionString || STR_EMPTY$1;
|
|
4808
4833
|
}
|
|
4809
4834
|
});
|
|
4810
4835
|
objDefine(_self, "logger", {
|
|
@@ -5117,16 +5142,16 @@
|
|
|
5117
5142
|
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
5118
5143
|
function _normalizeNamespace(name) {
|
|
5119
5144
|
if (name && name[_DYN_REPLACE ]) {
|
|
5120
|
-
return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY);
|
|
5145
|
+
return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY$1);
|
|
5121
5146
|
}
|
|
5122
5147
|
return name;
|
|
5123
5148
|
}
|
|
5124
5149
|
function _getEvtNamespace(eventName, evtNamespace) {
|
|
5125
5150
|
var _a;
|
|
5126
5151
|
if (evtNamespace) {
|
|
5127
|
-
var theNamespace_1 = STR_EMPTY;
|
|
5152
|
+
var theNamespace_1 = STR_EMPTY$1;
|
|
5128
5153
|
if (isArray(evtNamespace)) {
|
|
5129
|
-
theNamespace_1 = STR_EMPTY;
|
|
5154
|
+
theNamespace_1 = STR_EMPTY$1;
|
|
5130
5155
|
arrForEach(evtNamespace, function (name) {
|
|
5131
5156
|
name = _normalizeNamespace(name);
|
|
5132
5157
|
if (name) {
|
|
@@ -5144,13 +5169,13 @@
|
|
|
5144
5169
|
if (theNamespace_1[0] !== ".") {
|
|
5145
5170
|
theNamespace_1 = "." + theNamespace_1;
|
|
5146
5171
|
}
|
|
5147
|
-
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
5172
|
+
eventName = (eventName || STR_EMPTY$1) + theNamespace_1;
|
|
5148
5173
|
}
|
|
5149
5174
|
}
|
|
5150
|
-
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
5175
|
+
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY$1) || []);
|
|
5151
5176
|
return _a = {},
|
|
5152
5177
|
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
5153
|
-
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
5178
|
+
_a.ns = ((parsedEvent[2] || STR_EMPTY$1).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY$1)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
5154
5179
|
_a;
|
|
5155
5180
|
}
|
|
5156
5181
|
function _getRegisteredEvents(target, evtName, addDefault) {
|
|
@@ -5299,15 +5324,21 @@
|
|
|
5299
5324
|
var _DYN_SPLIT = "split";
|
|
5300
5325
|
var _DYN_LENGTH$1 = "length";
|
|
5301
5326
|
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
5327
|
+
var _DYN_LOCATION = "location";
|
|
5302
5328
|
var _DYN_INGESTIONENDPOINT = "ingestionendpoint";
|
|
5303
5329
|
var _DYN_TO_STRING$1 = "toString";
|
|
5304
5330
|
var _DYN_PUSH$1 = "push";
|
|
5331
|
+
var _DYN_URL_STRING = "urlString";
|
|
5332
|
+
var _DYN_DATA$1 = "data";
|
|
5333
|
+
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
5334
|
+
var _DYN_REASON = "reason";
|
|
5335
|
+
var _DYN_MESSAGE = "message";
|
|
5305
5336
|
var _DYN_REMOVE_ITEM = "removeItem";
|
|
5306
5337
|
var _DYN_NAME$1 = "name";
|
|
5307
|
-
var _DYN_MESSAGE = "message";
|
|
5308
5338
|
var _DYN_COUNT$1 = "count";
|
|
5309
5339
|
var _DYN_STRINGIFY$1 = "stringify";
|
|
5310
5340
|
var _DYN_PATHNAME = "pathname";
|
|
5341
|
+
var _DYN_ITEMS_RECEIVED$1 = "itemsReceived";
|
|
5311
5342
|
var _DYN_EXCEPTIONS = "exceptions";
|
|
5312
5343
|
var _DYN_PARSED_STACK = "parsedStack";
|
|
5313
5344
|
var _DYN_PROPERTIES = "properties";
|
|
@@ -5529,6 +5560,54 @@
|
|
|
5529
5560
|
data: data
|
|
5530
5561
|
};
|
|
5531
5562
|
}
|
|
5563
|
+
function getResponseText(xhr) {
|
|
5564
|
+
try {
|
|
5565
|
+
return xhr.responseText;
|
|
5566
|
+
}
|
|
5567
|
+
catch (e) {
|
|
5568
|
+
}
|
|
5569
|
+
return null;
|
|
5570
|
+
}
|
|
5571
|
+
function formatErrorMessageXdr(xdr, message) {
|
|
5572
|
+
if (xdr) {
|
|
5573
|
+
return "XDomainRequest,Response:" + getResponseText(xdr) || "";
|
|
5574
|
+
}
|
|
5575
|
+
return message;
|
|
5576
|
+
}
|
|
5577
|
+
function formatErrorMessageXhr(xhr, message) {
|
|
5578
|
+
if (xhr) {
|
|
5579
|
+
return "XMLHttpRequest,Status:" + xhr.status + ",Response:" + getResponseText(xhr) || xhr.response || "";
|
|
5580
|
+
}
|
|
5581
|
+
return message;
|
|
5582
|
+
}
|
|
5583
|
+
function prependTransports(theTransports, newTransports) {
|
|
5584
|
+
if (newTransports) {
|
|
5585
|
+
if (isNumber(newTransports)) {
|
|
5586
|
+
theTransports = [newTransports].concat(theTransports);
|
|
5587
|
+
}
|
|
5588
|
+
else if (isArray(newTransports)) {
|
|
5589
|
+
theTransports = newTransports.concat(theTransports);
|
|
5590
|
+
}
|
|
5591
|
+
}
|
|
5592
|
+
return theTransports;
|
|
5593
|
+
}
|
|
5594
|
+
function parseResponse(response, diagLog) {
|
|
5595
|
+
try {
|
|
5596
|
+
if (response && response !== "") {
|
|
5597
|
+
var result = getJSON().parse(response);
|
|
5598
|
+
if (result && result[_DYN_ITEMS_RECEIVED$1 ] && result[_DYN_ITEMS_RECEIVED$1 ] >= result.itemsAccepted &&
|
|
5599
|
+
result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH$1 ]) {
|
|
5600
|
+
return result;
|
|
5601
|
+
}
|
|
5602
|
+
}
|
|
5603
|
+
}
|
|
5604
|
+
catch (e) {
|
|
5605
|
+
_throwInternal(diagLog, 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
|
|
5606
|
+
response: response
|
|
5607
|
+
});
|
|
5608
|
+
}
|
|
5609
|
+
return null;
|
|
5610
|
+
}
|
|
5532
5611
|
|
|
5533
5612
|
var StorageType = createEnumStyle({
|
|
5534
5613
|
LocalStorage: 0 ,
|
|
@@ -5617,7 +5696,7 @@
|
|
|
5617
5696
|
}, {});
|
|
5618
5697
|
if (objKeys(result)[_DYN_LENGTH$1 ] > 0) {
|
|
5619
5698
|
if (result.endpointsuffix) {
|
|
5620
|
-
var locationPrefix = result
|
|
5699
|
+
var locationPrefix = result[_DYN_LOCATION ] ? result[_DYN_LOCATION ] + "." : "";
|
|
5621
5700
|
result[_DYN_INGESTIONENDPOINT ] = result[_DYN_INGESTIONENDPOINT ] || ("https://" + locationPrefix + "dc." + result.endpointsuffix);
|
|
5622
5701
|
}
|
|
5623
5702
|
result[_DYN_INGESTIONENDPOINT ] = result[_DYN_INGESTIONENDPOINT ] || DEFAULT_BREEZE_ENDPOINT;
|
|
@@ -5636,7 +5715,7 @@
|
|
|
5636
5715
|
_self.sampleRate = 100.0;
|
|
5637
5716
|
_self.tags = {};
|
|
5638
5717
|
_self[_DYN_NAME$1 ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
5639
|
-
_self
|
|
5718
|
+
_self[_DYN_DATA$1 ] = data;
|
|
5640
5719
|
_self.time = toISOString(new Date());
|
|
5641
5720
|
_self.aiDataContract = {
|
|
5642
5721
|
time: 1 ,
|
|
@@ -5793,8 +5872,8 @@
|
|
|
5793
5872
|
else if (getWindow() && getWindow()["opera"] && errorObj[strMessage]) {
|
|
5794
5873
|
details = _getOperaStack(errorObj[_DYN_MESSAGE ]);
|
|
5795
5874
|
}
|
|
5796
|
-
else if (errorObj["reason"] && errorObj
|
|
5797
|
-
details = _convertStackObj(errorObj
|
|
5875
|
+
else if (errorObj["reason"] && errorObj[_DYN_REASON ][strStack]) {
|
|
5876
|
+
details = _convertStackObj(errorObj[_DYN_REASON ][strStack]);
|
|
5798
5877
|
}
|
|
5799
5878
|
else if (isString(errorObj)) {
|
|
5800
5879
|
details = _convertStackObj(errorObj);
|
|
@@ -6265,7 +6344,7 @@
|
|
|
6265
6344
|
_self.resultCode = resultCode + "";
|
|
6266
6345
|
_self.type = dataSanitizeString(logger, requestAPI);
|
|
6267
6346
|
var dependencyFields = AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName);
|
|
6268
|
-
_self
|
|
6347
|
+
_self[_DYN_DATA$1 ] = dataSanitizeUrl(logger, commandName) || dependencyFields[_DYN_DATA$1 ];
|
|
6269
6348
|
_self.target = dataSanitizeString(logger, dependencyFields.target);
|
|
6270
6349
|
if (correlationContext) {
|
|
6271
6350
|
_self.target = "".concat(_self.target, " | ").concat(correlationContext);
|
|
@@ -6439,6 +6518,360 @@
|
|
|
6439
6518
|
|
|
6440
6519
|
var CtxTagKeys = new ContextTagKeys();
|
|
6441
6520
|
|
|
6521
|
+
var STR_EMPTY = "";
|
|
6522
|
+
var SenderPostManager = /** @class */ (function () {
|
|
6523
|
+
function SenderPostManager() {
|
|
6524
|
+
var _syncFetchPayload = 0;
|
|
6525
|
+
var _enableSendPromise;
|
|
6526
|
+
var _isInitialized;
|
|
6527
|
+
var _diagLog;
|
|
6528
|
+
var _isOneDs;
|
|
6529
|
+
var _onCompleteFuncs;
|
|
6530
|
+
var _disableCredentials;
|
|
6531
|
+
var _fallbackInst;
|
|
6532
|
+
var _disableXhr;
|
|
6533
|
+
var _disableBeacon;
|
|
6534
|
+
var _disableBeaconSync;
|
|
6535
|
+
dynamicProto(SenderPostManager, this, function (_self, _base) {
|
|
6536
|
+
var _sendCredentials = true;
|
|
6537
|
+
_initDefaults();
|
|
6538
|
+
_self.initialize = function (config, diagLog) {
|
|
6539
|
+
_diagLog = diagLog;
|
|
6540
|
+
if (_isInitialized) {
|
|
6541
|
+
_throwInternal(_diagLog, 1 , 28 , "Sender is already initialized");
|
|
6542
|
+
}
|
|
6543
|
+
_self.SetConfig(config);
|
|
6544
|
+
_isInitialized = true;
|
|
6545
|
+
};
|
|
6546
|
+
_self["_getDbgPlgTargets"] = function () {
|
|
6547
|
+
return [_isInitialized, _isOneDs, _disableCredentials, _enableSendPromise];
|
|
6548
|
+
};
|
|
6549
|
+
_self.SetConfig = function (config) {
|
|
6550
|
+
try {
|
|
6551
|
+
_onCompleteFuncs = config.senderOnCompleteCallBack || {};
|
|
6552
|
+
_disableCredentials = !!config.disableCredentials;
|
|
6553
|
+
_isOneDs = !!config.isOneDs;
|
|
6554
|
+
_enableSendPromise = !!config.enableSendPromise;
|
|
6555
|
+
_disableXhr = !!config.disableXhr;
|
|
6556
|
+
_disableBeacon = !!config.disableBeacon;
|
|
6557
|
+
_disableBeaconSync = !!config.disableBeaconSync;
|
|
6558
|
+
_fallbackInst = { sendPOST: _xhrSender };
|
|
6559
|
+
if (_disableCredentials) {
|
|
6560
|
+
var location_1 = getLocation();
|
|
6561
|
+
if (location_1 && location_1.protocol && location_1.protocol[_DYN_TO_LOWER_CASE ]() === "file:") {
|
|
6562
|
+
_sendCredentials = false;
|
|
6563
|
+
}
|
|
6564
|
+
}
|
|
6565
|
+
return true;
|
|
6566
|
+
}
|
|
6567
|
+
catch (e) {
|
|
6568
|
+
}
|
|
6569
|
+
return false;
|
|
6570
|
+
};
|
|
6571
|
+
_self.getSyncFetchPayload = function () {
|
|
6572
|
+
return _syncFetchPayload;
|
|
6573
|
+
};
|
|
6574
|
+
_self.getXhrInst = function (transports, sync) {
|
|
6575
|
+
if (transports && transports[_DYN_LENGTH$1 ]) {
|
|
6576
|
+
return _getSenderInterface(transports, sync);
|
|
6577
|
+
}
|
|
6578
|
+
return null;
|
|
6579
|
+
};
|
|
6580
|
+
_self.getFallbackInst = function () {
|
|
6581
|
+
return _fallbackInst;
|
|
6582
|
+
};
|
|
6583
|
+
_self._doTeardown = function (unloadCtx, unloadState) {
|
|
6584
|
+
_initDefaults();
|
|
6585
|
+
};
|
|
6586
|
+
function _onSuccess(res, onComplete) {
|
|
6587
|
+
_doOnComplete(onComplete, 200, {}, res);
|
|
6588
|
+
}
|
|
6589
|
+
function _onError(message, onComplete) {
|
|
6590
|
+
_throwInternal(_diagLog, 2 , 26 , "Failed to send telemetry.", { message: message });
|
|
6591
|
+
_doOnComplete(onComplete, 400, {});
|
|
6592
|
+
}
|
|
6593
|
+
function _onNoPayloadUrl(onComplete) {
|
|
6594
|
+
_onError("No endpoint url is provided for the batch", onComplete);
|
|
6595
|
+
}
|
|
6596
|
+
function _getSenderInterface(transports, syncSupport) {
|
|
6597
|
+
var transportType = null;
|
|
6598
|
+
var sendPostFunc = null;
|
|
6599
|
+
var lp = 0;
|
|
6600
|
+
while (sendPostFunc == null && lp < transports[_DYN_LENGTH$1 ]) {
|
|
6601
|
+
transportType = transports[lp];
|
|
6602
|
+
if (!_disableXhr && transportType === 1 ) {
|
|
6603
|
+
if (useXDomainRequest()) {
|
|
6604
|
+
sendPostFunc = _xdrSender;
|
|
6605
|
+
}
|
|
6606
|
+
else if (isXhrSupported()) {
|
|
6607
|
+
sendPostFunc = _xhrSender;
|
|
6608
|
+
}
|
|
6609
|
+
}
|
|
6610
|
+
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
6611
|
+
sendPostFunc = _doFetchSender;
|
|
6612
|
+
}
|
|
6613
|
+
else if (transportType === 3 && isBeaconsSupported() && (syncSupport ? !_disableBeaconSync : !_disableBeacon)) {
|
|
6614
|
+
sendPostFunc = _beaconSender;
|
|
6615
|
+
}
|
|
6616
|
+
lp++;
|
|
6617
|
+
}
|
|
6618
|
+
if (sendPostFunc) {
|
|
6619
|
+
return {
|
|
6620
|
+
sendPOST: sendPostFunc
|
|
6621
|
+
};
|
|
6622
|
+
}
|
|
6623
|
+
return null;
|
|
6624
|
+
}
|
|
6625
|
+
function _doOnComplete(oncomplete, status, headers, response) {
|
|
6626
|
+
try {
|
|
6627
|
+
oncomplete && oncomplete(status, headers, response);
|
|
6628
|
+
}
|
|
6629
|
+
catch (e) {
|
|
6630
|
+
}
|
|
6631
|
+
}
|
|
6632
|
+
function _doBeaconSend(payload, oncomplete) {
|
|
6633
|
+
var nav = getNavigator();
|
|
6634
|
+
var url = payload[_DYN_URL_STRING ];
|
|
6635
|
+
if (!url) {
|
|
6636
|
+
_onNoPayloadUrl(oncomplete);
|
|
6637
|
+
return true;
|
|
6638
|
+
}
|
|
6639
|
+
var data = payload[_DYN_DATA$1 ];
|
|
6640
|
+
var plainTextBatch = new Blob([data], { type: "text/plain;charset=UTF-8" });
|
|
6641
|
+
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
6642
|
+
return queued;
|
|
6643
|
+
}
|
|
6644
|
+
function _beaconSender(payload, oncomplete, sync) {
|
|
6645
|
+
var data = payload[_DYN_DATA$1 ];
|
|
6646
|
+
if (data) {
|
|
6647
|
+
if (!_doBeaconSend(payload, oncomplete)) {
|
|
6648
|
+
var onRetry = _onCompleteFuncs && _onCompleteFuncs.beaconOnRetry;
|
|
6649
|
+
if (onRetry && isFunction(onRetry)) {
|
|
6650
|
+
onRetry(payload, oncomplete, _doBeaconSend);
|
|
6651
|
+
}
|
|
6652
|
+
else {
|
|
6653
|
+
_fallbackInst && _fallbackInst.sendPOST(payload, oncomplete, true);
|
|
6654
|
+
_throwInternal(_diagLog, 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
6655
|
+
}
|
|
6656
|
+
}
|
|
6657
|
+
else {
|
|
6658
|
+
_onSuccess(null, oncomplete);
|
|
6659
|
+
}
|
|
6660
|
+
}
|
|
6661
|
+
return;
|
|
6662
|
+
}
|
|
6663
|
+
function _xhrSender(payload, oncomplete, sync) {
|
|
6664
|
+
var thePromise;
|
|
6665
|
+
var resolveFunc;
|
|
6666
|
+
var rejectFunc;
|
|
6667
|
+
var headers = payload.headers || {};
|
|
6668
|
+
if (!sync && _enableSendPromise) {
|
|
6669
|
+
thePromise = createPromise(function (resolve, reject) {
|
|
6670
|
+
resolveFunc = resolve;
|
|
6671
|
+
rejectFunc = reject;
|
|
6672
|
+
});
|
|
6673
|
+
}
|
|
6674
|
+
var xhr = new XMLHttpRequest();
|
|
6675
|
+
var endPointUrl = payload[_DYN_URL_STRING ];
|
|
6676
|
+
if (!endPointUrl) {
|
|
6677
|
+
_onNoPayloadUrl(oncomplete);
|
|
6678
|
+
resolveFunc && resolveFunc(false);
|
|
6679
|
+
return;
|
|
6680
|
+
}
|
|
6681
|
+
try {
|
|
6682
|
+
xhr[DisabledPropertyName] = true;
|
|
6683
|
+
}
|
|
6684
|
+
catch (e) {
|
|
6685
|
+
}
|
|
6686
|
+
xhr.open("POST", endPointUrl, !sync);
|
|
6687
|
+
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
6688
|
+
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
6689
|
+
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
6690
|
+
}
|
|
6691
|
+
arrForEach(objKeys(headers), function (headerName) {
|
|
6692
|
+
xhr[_DYN_SET_REQUEST_HEADER ](headerName, headers[headerName]);
|
|
6693
|
+
});
|
|
6694
|
+
xhr.onreadystatechange = function () {
|
|
6695
|
+
var response = getResponseText(xhr);
|
|
6696
|
+
var onReadyFunc = _onCompleteFuncs && _onCompleteFuncs.xhrOnComplete;
|
|
6697
|
+
var onReadyFuncExist = onReadyFunc && isFunction(onReadyFunc);
|
|
6698
|
+
if (onReadyFuncExist) {
|
|
6699
|
+
onReadyFunc(xhr, oncomplete, payload);
|
|
6700
|
+
}
|
|
6701
|
+
if (xhr.readyState === 4) {
|
|
6702
|
+
if (!onReadyFuncExist) {
|
|
6703
|
+
_doOnComplete(oncomplete, xhr.status, {}, response);
|
|
6704
|
+
}
|
|
6705
|
+
resolveFunc && resolveFunc(true);
|
|
6706
|
+
}
|
|
6707
|
+
};
|
|
6708
|
+
xhr.onerror = function (event) {
|
|
6709
|
+
_doOnComplete(oncomplete, 400, {}, formatErrorMessageXhr(xhr));
|
|
6710
|
+
rejectFunc && rejectFunc(event);
|
|
6711
|
+
};
|
|
6712
|
+
xhr.ontimeout = function () {
|
|
6713
|
+
_doOnComplete(oncomplete, 500, {}, formatErrorMessageXhr(xhr));
|
|
6714
|
+
resolveFunc && resolveFunc(false);
|
|
6715
|
+
};
|
|
6716
|
+
xhr.send(payload[_DYN_DATA$1 ]);
|
|
6717
|
+
return thePromise;
|
|
6718
|
+
}
|
|
6719
|
+
function _doFetchSender(payload, oncomplete, sync) {
|
|
6720
|
+
var _a;
|
|
6721
|
+
var endPointUrl = payload[_DYN_URL_STRING ];
|
|
6722
|
+
var batch = payload[_DYN_DATA$1 ];
|
|
6723
|
+
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
6724
|
+
var thePromise;
|
|
6725
|
+
var resolveFunc;
|
|
6726
|
+
var rejectFunc;
|
|
6727
|
+
var requestHeaders = new Headers();
|
|
6728
|
+
var batchLength = batch[_DYN_LENGTH$1 ];
|
|
6729
|
+
var ignoreResponse = false;
|
|
6730
|
+
var responseHandled = false;
|
|
6731
|
+
var headers = payload.headers || {};
|
|
6732
|
+
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
6733
|
+
requestHeaders.append(RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
6734
|
+
}
|
|
6735
|
+
arrForEach(objKeys(headers), function (headerName) {
|
|
6736
|
+
requestHeaders.append(headerName, headers[headerName]);
|
|
6737
|
+
});
|
|
6738
|
+
var init = (_a = {
|
|
6739
|
+
method: "POST",
|
|
6740
|
+
headers: requestHeaders,
|
|
6741
|
+
body: plainTextBatch
|
|
6742
|
+
},
|
|
6743
|
+
_a[DisabledPropertyName] = true
|
|
6744
|
+
,
|
|
6745
|
+
_a);
|
|
6746
|
+
if (_sendCredentials && _isOneDs) {
|
|
6747
|
+
init.credentials = "include";
|
|
6748
|
+
}
|
|
6749
|
+
if (sync) {
|
|
6750
|
+
init.keepalive = true;
|
|
6751
|
+
ignoreResponse = true;
|
|
6752
|
+
_syncFetchPayload += batchLength;
|
|
6753
|
+
}
|
|
6754
|
+
var request = new Request(endPointUrl, init);
|
|
6755
|
+
try {
|
|
6756
|
+
request[DisabledPropertyName] = true;
|
|
6757
|
+
}
|
|
6758
|
+
catch (e) {
|
|
6759
|
+
}
|
|
6760
|
+
if (!sync && _enableSendPromise) {
|
|
6761
|
+
thePromise = createPromise(function (resolve, reject) {
|
|
6762
|
+
resolveFunc = resolve;
|
|
6763
|
+
rejectFunc = reject;
|
|
6764
|
+
});
|
|
6765
|
+
}
|
|
6766
|
+
if (!endPointUrl) {
|
|
6767
|
+
_onNoPayloadUrl(oncomplete);
|
|
6768
|
+
resolveFunc && resolveFunc(false);
|
|
6769
|
+
return;
|
|
6770
|
+
}
|
|
6771
|
+
try {
|
|
6772
|
+
doAwaitResponse(fetch(request), function (result) {
|
|
6773
|
+
if (sync) {
|
|
6774
|
+
_syncFetchPayload -= batchLength;
|
|
6775
|
+
batchLength = 0;
|
|
6776
|
+
}
|
|
6777
|
+
if (!responseHandled) {
|
|
6778
|
+
responseHandled = true;
|
|
6779
|
+
if (!result.rejected) {
|
|
6780
|
+
var response_1 = result.value;
|
|
6781
|
+
if (!response_1.ok) {
|
|
6782
|
+
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
6783
|
+
resolveFunc && resolveFunc(false);
|
|
6784
|
+
}
|
|
6785
|
+
else {
|
|
6786
|
+
doAwaitResponse(response_1.text(), function (resp) {
|
|
6787
|
+
var status = response_1.status;
|
|
6788
|
+
var onCompleteFunc = _onCompleteFuncs.fetchOnComplete;
|
|
6789
|
+
if (onCompleteFunc && isFunction(onCompleteFunc)) {
|
|
6790
|
+
onCompleteFunc(response_1, oncomplete, resp.value || STR_EMPTY, payload);
|
|
6791
|
+
}
|
|
6792
|
+
else {
|
|
6793
|
+
_doOnComplete(oncomplete, status, {}, resp.value || STR_EMPTY);
|
|
6794
|
+
}
|
|
6795
|
+
resolveFunc && resolveFunc(true);
|
|
6796
|
+
});
|
|
6797
|
+
}
|
|
6798
|
+
}
|
|
6799
|
+
else {
|
|
6800
|
+
_doOnComplete(oncomplete, 400, {}, result[_DYN_REASON ] && result[_DYN_REASON ][_DYN_MESSAGE ]);
|
|
6801
|
+
rejectFunc && rejectFunc(result[_DYN_REASON ]);
|
|
6802
|
+
}
|
|
6803
|
+
}
|
|
6804
|
+
});
|
|
6805
|
+
}
|
|
6806
|
+
catch (e) {
|
|
6807
|
+
if (!responseHandled) {
|
|
6808
|
+
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
6809
|
+
rejectFunc && rejectFunc(e);
|
|
6810
|
+
}
|
|
6811
|
+
}
|
|
6812
|
+
if (ignoreResponse && !responseHandled) {
|
|
6813
|
+
responseHandled = true;
|
|
6814
|
+
_doOnComplete(oncomplete, 200, {});
|
|
6815
|
+
resolveFunc && resolveFunc(true);
|
|
6816
|
+
}
|
|
6817
|
+
return thePromise;
|
|
6818
|
+
}
|
|
6819
|
+
function _xdrSender(payload, oncomplete, sync) {
|
|
6820
|
+
var _window = getWindow();
|
|
6821
|
+
var xdr = new XDomainRequest();
|
|
6822
|
+
var data = payload[_DYN_DATA$1 ];
|
|
6823
|
+
xdr.onload = function () {
|
|
6824
|
+
var response = getResponseText(xdr);
|
|
6825
|
+
var onloadFunc = _onCompleteFuncs && _onCompleteFuncs.xdrOnComplete;
|
|
6826
|
+
if (onloadFunc && isFunction(onloadFunc)) {
|
|
6827
|
+
onloadFunc(xdr, oncomplete, payload);
|
|
6828
|
+
}
|
|
6829
|
+
else {
|
|
6830
|
+
_doOnComplete(oncomplete, 200, {}, response);
|
|
6831
|
+
}
|
|
6832
|
+
};
|
|
6833
|
+
xdr.onerror = function () {
|
|
6834
|
+
_doOnComplete(oncomplete, 400, {}, formatErrorMessageXdr(xdr));
|
|
6835
|
+
};
|
|
6836
|
+
xdr.ontimeout = function () {
|
|
6837
|
+
_doOnComplete(oncomplete, 500, {});
|
|
6838
|
+
};
|
|
6839
|
+
xdr.onprogress = function () { };
|
|
6840
|
+
var hostingProtocol = _window && _window[_DYN_LOCATION ] && _window[_DYN_LOCATION ].protocol || "";
|
|
6841
|
+
var endpoint = payload[_DYN_URL_STRING ];
|
|
6842
|
+
if (!endpoint) {
|
|
6843
|
+
_onNoPayloadUrl(oncomplete);
|
|
6844
|
+
return;
|
|
6845
|
+
}
|
|
6846
|
+
if (endpoint.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
6847
|
+
var msg = "Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.";
|
|
6848
|
+
_throwInternal(_diagLog, 2 , 40 , ". " + msg);
|
|
6849
|
+
_onError(msg, oncomplete);
|
|
6850
|
+
return;
|
|
6851
|
+
}
|
|
6852
|
+
var endpointUrl = endpoint.replace(/^(https?:)/, "");
|
|
6853
|
+
xdr.open("POST", endpointUrl);
|
|
6854
|
+
xdr.send(data);
|
|
6855
|
+
}
|
|
6856
|
+
function _initDefaults() {
|
|
6857
|
+
_syncFetchPayload = 0;
|
|
6858
|
+
_isInitialized = false;
|
|
6859
|
+
_enableSendPromise = false;
|
|
6860
|
+
_diagLog = null;
|
|
6861
|
+
_isOneDs = null;
|
|
6862
|
+
_onCompleteFuncs = null;
|
|
6863
|
+
_disableCredentials = null;
|
|
6864
|
+
_fallbackInst = null;
|
|
6865
|
+
_disableXhr = false;
|
|
6866
|
+
_disableBeacon = false;
|
|
6867
|
+
_disableBeaconSync = false;
|
|
6868
|
+
}
|
|
6869
|
+
});
|
|
6870
|
+
}
|
|
6871
|
+
SenderPostManager.__ieDyn=1;
|
|
6872
|
+
return SenderPostManager;
|
|
6873
|
+
}());
|
|
6874
|
+
|
|
6442
6875
|
function _disableEvents(target, evtNamespace) {
|
|
6443
6876
|
eventOff(target, null, null, evtNamespace);
|
|
6444
6877
|
}
|
|
@@ -6577,43 +7010,42 @@
|
|
|
6577
7010
|
var _DYN_PUSH = "push";
|
|
6578
7011
|
var _DYN_EMIT_LINE_DELIMITED_0 = "emitLineDelimitedJson";
|
|
6579
7012
|
var _DYN_CLEAR = "clear";
|
|
6580
|
-
var _DYN_BATCH_PAYLOADS = "batchPayloads";
|
|
6581
7013
|
var _DYN_CREATE_NEW = "createNew";
|
|
6582
7014
|
var _DYN_MARK_AS_SENT = "markAsSent";
|
|
6583
7015
|
var _DYN_CLEAR_SENT = "clearSent";
|
|
6584
7016
|
var _DYN_BUFFER_OVERRIDE = "bufferOverride";
|
|
6585
7017
|
var _DYN__BUFFER__KEY = "BUFFER_KEY";
|
|
6586
7018
|
var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
|
|
6587
|
-
var _DYN_CONCAT = "concat";
|
|
6588
7019
|
var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
|
|
6589
|
-
var _DYN_SEND_POST = "sendPOST";
|
|
6590
7020
|
var _DYN_TRIGGER_SEND = "triggerSend";
|
|
6591
7021
|
var _DYN_DIAG_LOG = "diagLog";
|
|
7022
|
+
var _DYN_INITIALIZE = "initialize";
|
|
6592
7023
|
var _DYN__SENDER = "_sender";
|
|
6593
7024
|
var _DYN_CUSTOM_HEADERS = "customHeaders";
|
|
6594
7025
|
var _DYN_MAX_BATCH_SIZE_IN_BY1 = "maxBatchSizeInBytes";
|
|
6595
7026
|
var _DYN_ONUNLOAD_DISABLE_BEA2 = "onunloadDisableBeacon";
|
|
6596
7027
|
var _DYN_IS_BEACON_API_DISABL3 = "isBeaconApiDisabled";
|
|
6597
7028
|
var _DYN_ALWAYS_USE_XHR_OVERR4 = "alwaysUseXhrOverride";
|
|
7029
|
+
var _DYN_DISABLE_XHR = "disableXhr";
|
|
6598
7030
|
var _DYN_ENABLE_SESSION_STORA5 = "enableSessionStorageBuffer";
|
|
6599
7031
|
var _DYN__BUFFER = "_buffer";
|
|
6600
7032
|
var _DYN_ONUNLOAD_DISABLE_FET6 = "onunloadDisableFetch";
|
|
6601
7033
|
var _DYN_DISABLE_SEND_BEACON_7 = "disableSendBeaconSplit";
|
|
6602
7034
|
var _DYN_INSTRUMENTATION_KEY$1 = "instrumentationKey";
|
|
7035
|
+
var _DYN_ENABLE_SEND_PROMISE = "enableSendPromise";
|
|
7036
|
+
var _DYN_GET_XHR_INST = "getXhrInst";
|
|
6603
7037
|
var _DYN_UNLOAD_TRANSPORTS = "unloadTransports";
|
|
6604
7038
|
var _DYN_CONVERT_UNDEFINED = "convertUndefined";
|
|
6605
7039
|
var _DYN_MAX_BATCH_INTERVAL = "maxBatchInterval";
|
|
6606
7040
|
var _DYN_SERIALIZE = "serialize";
|
|
6607
|
-
var _DYN__XHR_READY_STATE_CHA8 = "_xhrReadyStateChange";
|
|
6608
7041
|
var _DYN__ON_ERROR = "_onError";
|
|
6609
7042
|
var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
|
|
6610
7043
|
var _DYN__ON_SUCCESS = "_onSuccess";
|
|
6611
7044
|
var _DYN_ITEMS_ACCEPTED = "itemsAccepted";
|
|
6612
7045
|
var _DYN_ITEMS_RECEIVED = "itemsReceived";
|
|
7046
|
+
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
6613
7047
|
var _DYN_BASE_TYPE = "baseType";
|
|
6614
7048
|
var _DYN_SAMPLE_RATE = "sampleRate";
|
|
6615
|
-
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
6616
|
-
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
6617
7049
|
var _DYN_EVENTS_SEND_REQUEST = "eventsSendRequest";
|
|
6618
7050
|
var _DYN_GET_SAMPLING_SCORE = "getSamplingScore";
|
|
6619
7051
|
var _DYN_GET_HASH_CODE_SCORE = "getHashCodeScore";
|
|
@@ -6727,7 +7159,7 @@
|
|
|
6727
7159
|
}
|
|
6728
7160
|
}
|
|
6729
7161
|
var EnvelopeCreator = {
|
|
6730
|
-
Version: '3.1.1-nightly3.
|
|
7162
|
+
Version: '3.1.1-nightly3.2403-02'
|
|
6731
7163
|
};
|
|
6732
7164
|
function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
|
|
6733
7165
|
EnvelopeCreatorInit(logger, telemetryItem);
|
|
@@ -6918,7 +7350,7 @@
|
|
|
6918
7350
|
_self.getItems = function () {
|
|
6919
7351
|
return _buffer.slice(0);
|
|
6920
7352
|
};
|
|
6921
|
-
_self
|
|
7353
|
+
_self.batchPayloads = function (payload) {
|
|
6922
7354
|
if (payload && payload[_DYN_LENGTH ] > 0) {
|
|
6923
7355
|
var batch = config[_DYN_EMIT_LINE_DELIMITED_0 ] ?
|
|
6924
7356
|
payload.join("\n") :
|
|
@@ -6968,7 +7400,7 @@
|
|
|
6968
7400
|
dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {
|
|
6969
7401
|
var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ]);
|
|
6970
7402
|
var notDeliveredItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
|
|
6971
|
-
var buffer = _self._set(bufferItems
|
|
7403
|
+
var buffer = _self._set(bufferItems.concat(notDeliveredItems));
|
|
6972
7404
|
if (buffer[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
|
|
6973
7405
|
buffer[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
|
|
6974
7406
|
}
|
|
@@ -6995,7 +7427,7 @@
|
|
|
6995
7427
|
_setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET ]())));
|
|
6996
7428
|
var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
|
|
6997
7429
|
if (sentElements instanceof Array && payload instanceof Array) {
|
|
6998
|
-
sentElements = sentElements
|
|
7430
|
+
sentElements = sentElements.concat(payload);
|
|
6999
7431
|
if (sentElements[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
|
|
7000
7432
|
_throwInternal(logger, 1 , 67 , "Sent buffer reached its maximum size: " + sentElements[_DYN_LENGTH ], true);
|
|
7001
7433
|
sentElements[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
|
|
@@ -7228,7 +7660,7 @@
|
|
|
7228
7660
|
return 0;
|
|
7229
7661
|
}
|
|
7230
7662
|
while (input[_DYN_LENGTH ] < MIN_INPUT_LENGTH) {
|
|
7231
|
-
input = input
|
|
7663
|
+
input = input.concat(input);
|
|
7232
7664
|
}
|
|
7233
7665
|
var hash = 5381;
|
|
7234
7666
|
for (var i = 0; i < input[_DYN_LENGTH ]; ++i) {
|
|
@@ -7308,18 +7740,7 @@
|
|
|
7308
7740
|
return null;
|
|
7309
7741
|
}
|
|
7310
7742
|
function isOverrideFn(httpXHROverride) {
|
|
7311
|
-
return httpXHROverride && httpXHROverride
|
|
7312
|
-
}
|
|
7313
|
-
function _prependTransports(theTransports, newTransports) {
|
|
7314
|
-
if (newTransports) {
|
|
7315
|
-
if (isNumber(newTransports)) {
|
|
7316
|
-
theTransports = [newTransports][_DYN_CONCAT ](theTransports);
|
|
7317
|
-
}
|
|
7318
|
-
else if (isArray(newTransports)) {
|
|
7319
|
-
theTransports = newTransports[_DYN_CONCAT ](theTransports);
|
|
7320
|
-
}
|
|
7321
|
-
}
|
|
7322
|
-
return theTransports;
|
|
7743
|
+
return httpXHROverride && httpXHROverride.sendPOST;
|
|
7323
7744
|
}
|
|
7324
7745
|
var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
7325
7746
|
endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
|
|
@@ -7332,7 +7753,7 @@
|
|
|
7332
7753
|
_a.isRetryDisabled = cfgDfBoolean(),
|
|
7333
7754
|
_a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
|
|
7334
7755
|
_a[_DYN_DISABLE_SEND_BEACON_7 ] = cfgDfBoolean(true),
|
|
7335
|
-
_a
|
|
7756
|
+
_a[_DYN_DISABLE_XHR ] = cfgDfBoolean(),
|
|
7336
7757
|
_a[_DYN_ONUNLOAD_DISABLE_FET6 ] = cfgDfBoolean(),
|
|
7337
7758
|
_a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
|
|
7338
7759
|
_a[_DYN_INSTRUMENTATION_KEY$1 ] = UNDEFINED_VALUE,
|
|
@@ -7397,6 +7818,7 @@
|
|
|
7397
7818
|
var _xhrSend;
|
|
7398
7819
|
var _fallbackSend;
|
|
7399
7820
|
var _disableBeaconSplit;
|
|
7821
|
+
var _sendPostMgr;
|
|
7400
7822
|
dynamicProto(Sender, _this, function (_self, _base) {
|
|
7401
7823
|
_initDefaults();
|
|
7402
7824
|
_self.pause = function () {
|
|
@@ -7441,11 +7863,11 @@
|
|
|
7441
7863
|
_self.addHeader = function (name, value) {
|
|
7442
7864
|
_headers[name] = value;
|
|
7443
7865
|
};
|
|
7444
|
-
_self
|
|
7866
|
+
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
7445
7867
|
if (_self.isInitialized()) {
|
|
7446
7868
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 28 , "Sender is already initialized");
|
|
7447
7869
|
}
|
|
7448
|
-
_base
|
|
7870
|
+
_base[_DYN_INITIALIZE ](config, core, extensions, pluginChain);
|
|
7449
7871
|
var identifier = _self.identifier;
|
|
7450
7872
|
_serializer = new Serializer(core.logger);
|
|
7451
7873
|
_consecutiveErrors = 0;
|
|
@@ -7480,7 +7902,7 @@
|
|
|
7480
7902
|
_beaconOnUnloadSupported = senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false && isBeaconsSupported();
|
|
7481
7903
|
_beaconNormalSupported = senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false && isBeaconsSupported();
|
|
7482
7904
|
_alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 ];
|
|
7483
|
-
_disableXhr = !!senderConfig
|
|
7905
|
+
_disableXhr = !!senderConfig[_DYN_DISABLE_XHR ];
|
|
7484
7906
|
var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE ];
|
|
7485
7907
|
var canUseSessionStorage = !!senderConfig[_DYN_ENABLE_SESSION_STORA5 ] &&
|
|
7486
7908
|
(!!bufferOverride || utlCanUseSessionStorage());
|
|
@@ -7522,13 +7944,21 @@
|
|
|
7522
7944
|
else {
|
|
7523
7945
|
_customHeaders = null;
|
|
7524
7946
|
}
|
|
7525
|
-
_enableSendPromise = senderConfig
|
|
7947
|
+
_enableSendPromise = senderConfig[_DYN_ENABLE_SEND_PROMISE ];
|
|
7948
|
+
var sendPostConfig = _getSendPostMgrConfig();
|
|
7949
|
+
if (!_sendPostMgr) {
|
|
7950
|
+
_sendPostMgr = new SenderPostManager();
|
|
7951
|
+
_sendPostMgr[_DYN_INITIALIZE ](sendPostConfig, diagLog);
|
|
7952
|
+
}
|
|
7953
|
+
else {
|
|
7954
|
+
_sendPostMgr.SetConfig(sendPostConfig);
|
|
7955
|
+
}
|
|
7526
7956
|
var customInterface = senderConfig.httpXHROverride;
|
|
7527
7957
|
var httpInterface = null;
|
|
7528
7958
|
var syncInterface = null;
|
|
7529
|
-
var theTransports =
|
|
7530
|
-
httpInterface =
|
|
7531
|
-
var xhrInterface =
|
|
7959
|
+
var theTransports = prependTransports([3 , 1 , 2 ], senderConfig.transports);
|
|
7960
|
+
httpInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ](theTransports, false);
|
|
7961
|
+
var xhrInterface = _sendPostMgr && _sendPostMgr.getFallbackInst();
|
|
7532
7962
|
_xhrSend = function (payload, isAsync) {
|
|
7533
7963
|
return _doSend(xhrInterface, payload, isAsync);
|
|
7534
7964
|
};
|
|
@@ -7542,11 +7972,11 @@
|
|
|
7542
7972
|
if (_fetchKeepAlive) {
|
|
7543
7973
|
_syncUnloadSender = _fetchKeepAliveSender;
|
|
7544
7974
|
}
|
|
7545
|
-
var syncTransports =
|
|
7975
|
+
var syncTransports = prependTransports([3 , 1 ], senderConfig[_DYN_UNLOAD_TRANSPORTS ]);
|
|
7546
7976
|
if (!_fetchKeepAlive) {
|
|
7547
7977
|
syncTransports = syncTransports.filter(function (transport) { return transport !== 2 ; });
|
|
7548
7978
|
}
|
|
7549
|
-
syncInterface =
|
|
7979
|
+
syncInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ](syncTransports, true);
|
|
7550
7980
|
syncInterface = _alwaysUseCustomSend ? customInterface : (syncInterface || customInterface);
|
|
7551
7981
|
if ((_alwaysUseCustomSend || senderConfig[_DYN_UNLOAD_TRANSPORTS ] || !_syncUnloadSender) && syncInterface) {
|
|
7552
7982
|
_syncUnloadSender = function (payload, isAsync) {
|
|
@@ -7588,10 +8018,8 @@
|
|
|
7588
8018
|
_self.isCompletelyIdle = function () {
|
|
7589
8019
|
return !_paused && _syncFetchPayload === 0 && _self._buffer[_DYN_COUNT ]() === 0;
|
|
7590
8020
|
};
|
|
7591
|
-
_self
|
|
7592
|
-
|
|
7593
|
-
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, _formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
7594
|
-
}
|
|
8021
|
+
_self._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) {
|
|
8022
|
+
return _xhrReadyStateChange(xhr, payload, countOfItemsInPayload);
|
|
7595
8023
|
};
|
|
7596
8024
|
_self[_DYN_TRIGGER_SEND ] = function (async, forcedSender, sendReason) {
|
|
7597
8025
|
if (async === void 0) { async = true; }
|
|
@@ -7667,7 +8095,7 @@
|
|
|
7667
8095
|
_self[_DYN__ON_SUCCESS ](payload, results[_DYN_ITEMS_ACCEPTED ]);
|
|
7668
8096
|
}
|
|
7669
8097
|
if (failed[_DYN_LENGTH ] > 0) {
|
|
7670
|
-
_self[_DYN__ON_ERROR ](failed,
|
|
8098
|
+
_self[_DYN__ON_ERROR ](failed, formatErrorMessageXhr(null, ["partial success", results[_DYN_ITEMS_ACCEPTED ], "of", results.itemsReceived].join(" ")));
|
|
7671
8099
|
}
|
|
7672
8100
|
if (retry[_DYN_LENGTH ] > 0) {
|
|
7673
8101
|
_resendPayload(retry);
|
|
@@ -7680,22 +8108,89 @@
|
|
|
7680
8108
|
_self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
|
|
7681
8109
|
};
|
|
7682
8110
|
_self._xdrOnLoad = function (xdr, payload) {
|
|
8111
|
+
return _xdrOnLoad(xdr, payload);
|
|
8112
|
+
};
|
|
8113
|
+
function _xdrOnLoad(xdr, payload) {
|
|
7683
8114
|
var responseText = _getResponseText(xdr);
|
|
7684
8115
|
if (xdr && (responseText + "" === "200" || responseText === "")) {
|
|
7685
8116
|
_consecutiveErrors = 0;
|
|
7686
8117
|
_self[_DYN__ON_SUCCESS ](payload, 0);
|
|
7687
8118
|
}
|
|
7688
8119
|
else {
|
|
7689
|
-
var results =
|
|
8120
|
+
var results = parseResponse(responseText);
|
|
7690
8121
|
if (results && results.itemsReceived && results.itemsReceived > results[_DYN_ITEMS_ACCEPTED ]
|
|
7691
8122
|
&& !_isRetryDisabled) {
|
|
7692
8123
|
_self[_DYN__ON_PARTIAL_SUCCESS ](payload, results);
|
|
7693
8124
|
}
|
|
7694
8125
|
else {
|
|
7695
|
-
_self[_DYN__ON_ERROR ](payload,
|
|
8126
|
+
_self[_DYN__ON_ERROR ](payload, formatErrorMessageXdr(xdr));
|
|
7696
8127
|
}
|
|
7697
8128
|
}
|
|
7698
|
-
}
|
|
8129
|
+
}
|
|
8130
|
+
function _getSendPostMgrConfig() {
|
|
8131
|
+
var _a;
|
|
8132
|
+
try {
|
|
8133
|
+
var onCompleteFuncs = {
|
|
8134
|
+
xdrOnComplete: function (xdr, oncomplete, payload) {
|
|
8135
|
+
var data = _getPayloadArr(payload);
|
|
8136
|
+
if (!data) {
|
|
8137
|
+
return;
|
|
8138
|
+
}
|
|
8139
|
+
return _xdrOnLoad(xdr, data);
|
|
8140
|
+
},
|
|
8141
|
+
fetchOnComplete: function (response, onComplete, resValue, payload) {
|
|
8142
|
+
var data = _getPayloadArr(payload);
|
|
8143
|
+
if (!data) {
|
|
8144
|
+
return;
|
|
8145
|
+
}
|
|
8146
|
+
return _checkResponsStatus(response.status, data, response.url, data[_DYN_LENGTH ], response.statusText, resValue || "");
|
|
8147
|
+
},
|
|
8148
|
+
xhrOnComplete: function (request, oncomplete, payload) {
|
|
8149
|
+
var data = _getPayloadArr(payload);
|
|
8150
|
+
if (!data) {
|
|
8151
|
+
return;
|
|
8152
|
+
}
|
|
8153
|
+
return _xhrReadyStateChange(request, data, data[_DYN_LENGTH ]);
|
|
8154
|
+
},
|
|
8155
|
+
beaconOnRetry: function (data, onComplete, canSend) {
|
|
8156
|
+
return _onBeaconRetry(data, onComplete, canSend);
|
|
8157
|
+
}
|
|
8158
|
+
};
|
|
8159
|
+
var config = (_a = {},
|
|
8160
|
+
_a[_DYN_ENABLE_SEND_PROMISE ] = _enableSendPromise,
|
|
8161
|
+
_a.isOneDs = false,
|
|
8162
|
+
_a.disableCredentials = false,
|
|
8163
|
+
_a[_DYN_DISABLE_XHR ] = _disableXhr,
|
|
8164
|
+
_a.disableBeacon = !_beaconNormalSupported,
|
|
8165
|
+
_a.disableBeaconSync = !_beaconOnUnloadSupported,
|
|
8166
|
+
_a.senderOnCompleteCallBack = onCompleteFuncs,
|
|
8167
|
+
_a);
|
|
8168
|
+
return config;
|
|
8169
|
+
}
|
|
8170
|
+
catch (e) {
|
|
8171
|
+
}
|
|
8172
|
+
return null;
|
|
8173
|
+
}
|
|
8174
|
+
function _xhrReadyStateChange(xhr, payload, countOfItemsInPayload) {
|
|
8175
|
+
if (xhr.readyState === 4) {
|
|
8176
|
+
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
8177
|
+
}
|
|
8178
|
+
}
|
|
8179
|
+
function _getPayloadArr(payload) {
|
|
8180
|
+
try {
|
|
8181
|
+
if (payload) {
|
|
8182
|
+
var internalPayload = payload;
|
|
8183
|
+
var arr = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
8184
|
+
if (arr && arr[_DYN_LENGTH ]) {
|
|
8185
|
+
return arr;
|
|
8186
|
+
}
|
|
8187
|
+
return null;
|
|
8188
|
+
}
|
|
8189
|
+
}
|
|
8190
|
+
catch (e) {
|
|
8191
|
+
}
|
|
8192
|
+
return null;
|
|
8193
|
+
}
|
|
7699
8194
|
function _validate(telemetryItem, diagLogger) {
|
|
7700
8195
|
if (_disableTelemetry) {
|
|
7701
8196
|
return false;
|
|
@@ -7791,36 +8286,6 @@
|
|
|
7791
8286
|
function _isSampledIn(envelope) {
|
|
7792
8287
|
return _self._sample.isSampledIn(envelope);
|
|
7793
8288
|
}
|
|
7794
|
-
function _getSenderInterface(transports, syncSupport) {
|
|
7795
|
-
var _a;
|
|
7796
|
-
var transportType = null;
|
|
7797
|
-
var sendPostFunc = null;
|
|
7798
|
-
var lp = 0;
|
|
7799
|
-
while (sendPostFunc == null && lp < transports[_DYN_LENGTH ]) {
|
|
7800
|
-
transportType = transports[lp];
|
|
7801
|
-
if (!_disableXhr && transportType === 1 ) {
|
|
7802
|
-
if (useXDomainRequest()) {
|
|
7803
|
-
sendPostFunc = _xdrSender;
|
|
7804
|
-
}
|
|
7805
|
-
else if (isXhrSupported()) {
|
|
7806
|
-
sendPostFunc = _xhrSender;
|
|
7807
|
-
}
|
|
7808
|
-
}
|
|
7809
|
-
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
7810
|
-
sendPostFunc = _fetchSender;
|
|
7811
|
-
}
|
|
7812
|
-
else if (transportType === 3 && (syncSupport ? _beaconOnUnloadSupported : _beaconNormalSupported)) {
|
|
7813
|
-
sendPostFunc = _beaconSender;
|
|
7814
|
-
}
|
|
7815
|
-
lp++;
|
|
7816
|
-
}
|
|
7817
|
-
if (sendPostFunc) {
|
|
7818
|
-
return _a = {},
|
|
7819
|
-
_a[_DYN_SEND_POST ] = sendPostFunc,
|
|
7820
|
-
_a;
|
|
7821
|
-
}
|
|
7822
|
-
return null;
|
|
7823
|
-
}
|
|
7824
8289
|
function _getOnComplete(payload, status, headers, response) {
|
|
7825
8290
|
if (status === 200 && payload) {
|
|
7826
8291
|
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
@@ -7835,7 +8300,7 @@
|
|
|
7835
8300
|
return _getOnComplete(payload, status, headers, response);
|
|
7836
8301
|
};
|
|
7837
8302
|
var payloadData = _getPayload(payload);
|
|
7838
|
-
var sendPostFunc = sendInterface && sendInterface
|
|
8303
|
+
var sendPostFunc = sendInterface && sendInterface.sendPOST;
|
|
7839
8304
|
if (sendPostFunc && payloadData) {
|
|
7840
8305
|
if (markAsSent) {
|
|
7841
8306
|
_self._buffer[_DYN_MARK_AS_SENT ](payload);
|
|
@@ -7847,7 +8312,7 @@
|
|
|
7847
8312
|
function _getPayload(payload) {
|
|
7848
8313
|
var _a;
|
|
7849
8314
|
if (isArray(payload) && payload[_DYN_LENGTH ] > 0) {
|
|
7850
|
-
var batch = _self
|
|
8315
|
+
var batch = _self[_DYN__BUFFER ].batchPayloads(payload);
|
|
7851
8316
|
var payloadData = (_a = {},
|
|
7852
8317
|
_a[_DYN_DATA ] = batch,
|
|
7853
8318
|
_a.urlString = _endpointUrl,
|
|
@@ -7860,9 +8325,6 @@
|
|
|
7860
8325
|
}
|
|
7861
8326
|
return null;
|
|
7862
8327
|
}
|
|
7863
|
-
function _fetchSender(payload, oncomplete, sync) {
|
|
7864
|
-
return _doFetchSender(payload, oncomplete, false);
|
|
7865
|
-
}
|
|
7866
8328
|
function _checkMaxSize(incomingPayload) {
|
|
7867
8329
|
var incomingSize = incomingPayload ? incomingPayload[_DYN_LENGTH ] : 0;
|
|
7868
8330
|
if ((_self[_DYN__BUFFER ].size() + incomingSize) > _maxBatchSizeInBytes) {
|
|
@@ -7876,7 +8338,7 @@
|
|
|
7876
8338
|
function _checkResponsStatus(status, payload, responseUrl, countOfItemsInPayload, errorMessage, res) {
|
|
7877
8339
|
var response = null;
|
|
7878
8340
|
if (!_self._appId) {
|
|
7879
|
-
response =
|
|
8341
|
+
response = parseResponse(res);
|
|
7880
8342
|
if (response && response.appId) {
|
|
7881
8343
|
_self._appId = response.appId;
|
|
7882
8344
|
}
|
|
@@ -7908,7 +8370,7 @@
|
|
|
7908
8370
|
_checkAndUpdateEndPointUrl(responseUrl);
|
|
7909
8371
|
if (status === 206) {
|
|
7910
8372
|
if (!response) {
|
|
7911
|
-
response =
|
|
8373
|
+
response = parseResponse(res);
|
|
7912
8374
|
}
|
|
7913
8375
|
if (response && !_isRetryDisabled) {
|
|
7914
8376
|
_self[_DYN__ON_PARTIAL_SUCCESS ](payload, response);
|
|
@@ -7936,223 +8398,61 @@
|
|
|
7936
8398
|
}
|
|
7937
8399
|
return false;
|
|
7938
8400
|
}
|
|
7939
|
-
function _doOnComplete(oncomplete, status, headers, response) {
|
|
7940
|
-
try {
|
|
7941
|
-
oncomplete(status, headers, response);
|
|
7942
|
-
}
|
|
7943
|
-
catch (e) {
|
|
7944
|
-
}
|
|
7945
|
-
}
|
|
7946
8401
|
function _doUnloadSend(payload, isAsync) {
|
|
7947
8402
|
if (_syncUnloadSender) {
|
|
7948
8403
|
_syncUnloadSender(payload, false);
|
|
7949
8404
|
}
|
|
7950
8405
|
else {
|
|
7951
|
-
var
|
|
7952
|
-
|
|
7953
|
-
_beaconSender(payloadData);
|
|
7954
|
-
}
|
|
7955
|
-
}
|
|
7956
|
-
function _doBeaconSend(payload, oncomplete) {
|
|
7957
|
-
var nav = getNavigator();
|
|
7958
|
-
var url = _endpointUrl;
|
|
7959
|
-
var buffer = _self[_DYN__BUFFER ];
|
|
7960
|
-
var batch = buffer[_DYN_BATCH_PAYLOADS ](payload);
|
|
7961
|
-
var plainTextBatch = new Blob([batch], { type: "text/plain;charset=UTF-8" });
|
|
7962
|
-
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
7963
|
-
if (queued) {
|
|
7964
|
-
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
8406
|
+
var beaconInst = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ]([3 ], true);
|
|
8407
|
+
return _doSend(beaconInst, payload, isAsync);
|
|
7965
8408
|
}
|
|
7966
|
-
return queued;
|
|
7967
8409
|
}
|
|
7968
|
-
function
|
|
8410
|
+
function _onBeaconRetry(payload, onComplete, canSend) {
|
|
7969
8411
|
var internalPayload = payload;
|
|
7970
8412
|
var data = internalPayload && internalPayload[_DYN_ORI_PAYLOAD ];
|
|
7971
|
-
if (
|
|
7972
|
-
|
|
7973
|
-
|
|
7974
|
-
|
|
7975
|
-
|
|
7976
|
-
|
|
7977
|
-
|
|
7978
|
-
|
|
7979
|
-
}
|
|
7980
|
-
}
|
|
7981
|
-
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
7982
|
-
_fallbackSend && _fallbackSend(droppedPayload, true);
|
|
7983
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
7984
|
-
}
|
|
8413
|
+
if (!_disableBeaconSplit) {
|
|
8414
|
+
var droppedPayload = [];
|
|
8415
|
+
for (var lp = 0; lp < data[_DYN_LENGTH ]; lp++) {
|
|
8416
|
+
var thePayload = data[lp];
|
|
8417
|
+
var arr = [thePayload];
|
|
8418
|
+
var item = _getPayload(arr);
|
|
8419
|
+
if (!canSend(item, onComplete)) {
|
|
8420
|
+
droppedPayload[_DYN_PUSH ](thePayload);
|
|
7985
8421
|
}
|
|
7986
8422
|
else {
|
|
7987
|
-
|
|
7988
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
8423
|
+
_self._onSuccess(arr, arr[_DYN_LENGTH ]);
|
|
7989
8424
|
}
|
|
7990
8425
|
}
|
|
7991
|
-
|
|
7992
|
-
|
|
7993
|
-
|
|
7994
|
-
var internalPayload = payload;
|
|
7995
|
-
var thePromise;
|
|
7996
|
-
var resolveFunc;
|
|
7997
|
-
var rejectFunc;
|
|
7998
|
-
var xhr = new XMLHttpRequest();
|
|
7999
|
-
var endPointUrl = _endpointUrl;
|
|
8000
|
-
try {
|
|
8001
|
-
xhr[DisabledPropertyName] = true;
|
|
8002
|
-
}
|
|
8003
|
-
catch (e) {
|
|
8004
|
-
}
|
|
8005
|
-
xhr.open("POST", endPointUrl, !sync);
|
|
8006
|
-
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
8007
|
-
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
8008
|
-
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
8009
|
-
}
|
|
8010
|
-
arrForEach(objKeys(_headers), function (headerName) {
|
|
8011
|
-
xhr[_DYN_SET_REQUEST_HEADER ](headerName, _headers[headerName]);
|
|
8012
|
-
});
|
|
8013
|
-
xhr.onreadystatechange = function () {
|
|
8014
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
8015
|
-
_self._xhrReadyStateChange(xhr, oriPayload, oriPayload[_DYN_LENGTH ]);
|
|
8016
|
-
if (xhr.readyState === 4) {
|
|
8017
|
-
resolveFunc && resolveFunc(true);
|
|
8426
|
+
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
8427
|
+
_fallbackSend && _fallbackSend(droppedPayload, true);
|
|
8428
|
+
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
8018
8429
|
}
|
|
8019
|
-
};
|
|
8020
|
-
xhr.onerror = function (event) {
|
|
8021
|
-
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXhr(xhr));
|
|
8022
|
-
rejectFunc && rejectFunc(event);
|
|
8023
|
-
};
|
|
8024
|
-
if (!sync && _enableSendPromise) {
|
|
8025
|
-
thePromise = createPromise(function (resolve, reject) {
|
|
8026
|
-
resolveFunc = resolve;
|
|
8027
|
-
rejectFunc = reject;
|
|
8028
|
-
});
|
|
8029
8430
|
}
|
|
8030
|
-
|
|
8031
|
-
|
|
8431
|
+
else {
|
|
8432
|
+
_fallbackSend && _fallbackSend(data, true);
|
|
8433
|
+
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
8434
|
+
}
|
|
8032
8435
|
}
|
|
8033
8436
|
function _fetchKeepAliveSender(payload, isAsync) {
|
|
8034
|
-
var
|
|
8035
|
-
return _getOnComplete(payload, status, headers, response);
|
|
8036
|
-
};
|
|
8437
|
+
var transport = null;
|
|
8037
8438
|
if (isArray(payload)) {
|
|
8038
8439
|
var payloadSize = payload[_DYN_LENGTH ];
|
|
8039
8440
|
for (var lp = 0; lp < payload[_DYN_LENGTH ]; lp++) {
|
|
8040
8441
|
payloadSize += payload[lp][_DYN_LENGTH ];
|
|
8041
8442
|
}
|
|
8042
|
-
var
|
|
8043
|
-
|
|
8044
|
-
|
|
8045
|
-
_doFetchSender(payloadData, onComplete, true);
|
|
8443
|
+
var syncFetchPayload = _sendPostMgr.getSyncFetchPayload();
|
|
8444
|
+
if ((syncFetchPayload + payloadSize) <= FetchSyncRequestSizeLimitBytes) {
|
|
8445
|
+
transport = 2 ;
|
|
8046
8446
|
}
|
|
8047
8447
|
else if (isBeaconsSupported()) {
|
|
8048
|
-
|
|
8448
|
+
transport = 3 ;
|
|
8049
8449
|
}
|
|
8050
8450
|
else {
|
|
8051
|
-
|
|
8451
|
+
transport = 1 ;
|
|
8052
8452
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with xhrSender.");
|
|
8053
8453
|
}
|
|
8054
|
-
|
|
8055
|
-
|
|
8056
|
-
function _doFetchSender(payload, oncomplete, sync) {
|
|
8057
|
-
var _a;
|
|
8058
|
-
var endPointUrl = _endpointUrl;
|
|
8059
|
-
var internalPayload = payload;
|
|
8060
|
-
var batch = internalPayload[_DYN_DATA ];
|
|
8061
|
-
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
8062
|
-
var thePromise;
|
|
8063
|
-
var resolveFunc;
|
|
8064
|
-
var rejectFunc;
|
|
8065
|
-
var requestHeaders = new Headers();
|
|
8066
|
-
var batchLength = batch[_DYN_LENGTH ];
|
|
8067
|
-
var ignoreResponse = false;
|
|
8068
|
-
var responseHandled = false;
|
|
8069
|
-
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
8070
|
-
requestHeaders.append(RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
8071
|
-
}
|
|
8072
|
-
arrForEach(objKeys(_headers), function (headerName) {
|
|
8073
|
-
requestHeaders.append(headerName, _headers[headerName]);
|
|
8074
|
-
});
|
|
8075
|
-
var init = (_a = {
|
|
8076
|
-
method: "POST",
|
|
8077
|
-
headers: requestHeaders,
|
|
8078
|
-
body: plainTextBatch
|
|
8079
|
-
},
|
|
8080
|
-
_a[DisabledPropertyName] = true
|
|
8081
|
-
,
|
|
8082
|
-
_a);
|
|
8083
|
-
if (sync) {
|
|
8084
|
-
init.keepalive = true;
|
|
8085
|
-
ignoreResponse = true;
|
|
8086
|
-
_syncFetchPayload += batchLength;
|
|
8087
|
-
}
|
|
8088
|
-
var request = new Request(endPointUrl, init);
|
|
8089
|
-
try {
|
|
8090
|
-
request[DisabledPropertyName] = true;
|
|
8091
|
-
}
|
|
8092
|
-
catch (e) {
|
|
8093
|
-
}
|
|
8094
|
-
if (!sync && _enableSendPromise) {
|
|
8095
|
-
thePromise = createPromise(function (resolve, reject) {
|
|
8096
|
-
resolveFunc = resolve;
|
|
8097
|
-
rejectFunc = reject;
|
|
8098
|
-
});
|
|
8099
|
-
}
|
|
8100
|
-
try {
|
|
8101
|
-
doAwaitResponse(fetch(request), function (result) {
|
|
8102
|
-
if (sync) {
|
|
8103
|
-
_syncFetchPayload -= batchLength;
|
|
8104
|
-
batchLength = 0;
|
|
8105
|
-
}
|
|
8106
|
-
if (!responseHandled) {
|
|
8107
|
-
responseHandled = true;
|
|
8108
|
-
if (!result.rejected) {
|
|
8109
|
-
var response_1 = result.value;
|
|
8110
|
-
if (!response_1.ok) {
|
|
8111
|
-
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
8112
|
-
resolveFunc && resolveFunc(false);
|
|
8113
|
-
}
|
|
8114
|
-
else {
|
|
8115
|
-
doAwaitResponse(response_1.text(), function (resp) {
|
|
8116
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
8117
|
-
_checkResponsStatus(response_1.status, oriPayload, response_1.url, oriPayload[_DYN_LENGTH ], response_1.statusText, resp.value || "");
|
|
8118
|
-
resolveFunc && resolveFunc(true);
|
|
8119
|
-
});
|
|
8120
|
-
}
|
|
8121
|
-
}
|
|
8122
|
-
else {
|
|
8123
|
-
_doOnComplete(oncomplete, 400, {}, result.reason && result.reason.message);
|
|
8124
|
-
rejectFunc && rejectFunc(result.reason);
|
|
8125
|
-
}
|
|
8126
|
-
}
|
|
8127
|
-
});
|
|
8128
|
-
}
|
|
8129
|
-
catch (e) {
|
|
8130
|
-
if (!responseHandled) {
|
|
8131
|
-
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
8132
|
-
rejectFunc && rejectFunc(e);
|
|
8133
|
-
}
|
|
8134
|
-
}
|
|
8135
|
-
if (ignoreResponse && !responseHandled) {
|
|
8136
|
-
responseHandled = true;
|
|
8137
|
-
_doOnComplete(oncomplete, 200, {});
|
|
8138
|
-
resolveFunc && resolveFunc(true);
|
|
8139
|
-
}
|
|
8140
|
-
return thePromise;
|
|
8141
|
-
}
|
|
8142
|
-
function _parseResponse(response) {
|
|
8143
|
-
try {
|
|
8144
|
-
if (response && response !== "") {
|
|
8145
|
-
var result = getJSON().parse(response);
|
|
8146
|
-
if (result && result.itemsReceived && result.itemsReceived >= result[_DYN_ITEMS_ACCEPTED ] &&
|
|
8147
|
-
result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH ]) {
|
|
8148
|
-
return result;
|
|
8149
|
-
}
|
|
8150
|
-
}
|
|
8151
|
-
}
|
|
8152
|
-
catch (e) {
|
|
8153
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
|
|
8154
|
-
response: response
|
|
8155
|
-
});
|
|
8454
|
+
var inst = _sendPostMgr && _sendPostMgr[_DYN_GET_XHR_INST ]([transport], true);
|
|
8455
|
+
return _doSend(inst, payload, isAsync);
|
|
8156
8456
|
}
|
|
8157
8457
|
return null;
|
|
8158
8458
|
}
|
|
@@ -8211,41 +8511,6 @@
|
|
|
8211
8511
|
|| statusCode === 503
|
|
8212
8512
|
|| statusCode === 504;
|
|
8213
8513
|
}
|
|
8214
|
-
function _formatErrorMessageXhr(xhr, message) {
|
|
8215
|
-
if (xhr) {
|
|
8216
|
-
return "XMLHttpRequest,Status:" + xhr.status + ",Response:" + _getResponseText(xhr) || xhr.response || "";
|
|
8217
|
-
}
|
|
8218
|
-
return message;
|
|
8219
|
-
}
|
|
8220
|
-
function _xdrSender(payload, oncomplete, sync) {
|
|
8221
|
-
var internalPayload = payload;
|
|
8222
|
-
var _window = getWindow();
|
|
8223
|
-
var xdr = new XDomainRequest();
|
|
8224
|
-
var data = internalPayload[_DYN_DATA ];
|
|
8225
|
-
xdr.onload = function () {
|
|
8226
|
-
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
8227
|
-
_self._xdrOnLoad(xdr, oriPayload);
|
|
8228
|
-
};
|
|
8229
|
-
xdr.onerror = function () {
|
|
8230
|
-
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXdr(xdr));
|
|
8231
|
-
};
|
|
8232
|
-
var hostingProtocol = _window && _window.location && _window.location.protocol || "";
|
|
8233
|
-
if (_endpointUrl.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
8234
|
-
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " +
|
|
8235
|
-
"Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.");
|
|
8236
|
-
_self._buffer[_DYN_CLEAR ]();
|
|
8237
|
-
return;
|
|
8238
|
-
}
|
|
8239
|
-
var endpointUrl = _endpointUrl.replace(/^(https?:)/, "");
|
|
8240
|
-
xdr.open("POST", endpointUrl);
|
|
8241
|
-
xdr.send(data);
|
|
8242
|
-
}
|
|
8243
|
-
function _formatErrorMessageXdr(xdr, message) {
|
|
8244
|
-
if (xdr) {
|
|
8245
|
-
return "XDomainRequest,Response:" + _getResponseText(xdr) || "";
|
|
8246
|
-
}
|
|
8247
|
-
return message;
|
|
8248
|
-
}
|
|
8249
8514
|
function _getNotifyMgr() {
|
|
8250
8515
|
var func = "getNotifyMgr";
|
|
8251
8516
|
if (_self.core[func]) {
|
|
@@ -8306,6 +8571,7 @@
|
|
|
8306
8571
|
_disableBeaconSplit = false;
|
|
8307
8572
|
_xhrSend = null;
|
|
8308
8573
|
_fallbackSend = null;
|
|
8574
|
+
_sendPostMgr = null;
|
|
8309
8575
|
objDefine(_self, "_senderConfig", {
|
|
8310
8576
|
g: function () {
|
|
8311
8577
|
return objExtend({}, defaultAppInsightsChannelConfig);
|
|
@@ -8331,6 +8597,8 @@
|
|
|
8331
8597
|
|
|
8332
8598
|
var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
|
|
8333
8599
|
var _DYN_CONNECTION_STRING = "connectionString";
|
|
8600
|
+
var _DYN_ENDPOINT_URL = "endpointUrl";
|
|
8601
|
+
var _DYN_USER_OVERRIDE_ENDPOI0 = "userOverrideEndpointUrl";
|
|
8334
8602
|
|
|
8335
8603
|
var defaultConfigValues = {
|
|
8336
8604
|
diagnosticLogInterval: cfgDfValidate(_chkDiagLevel, 10000)
|
|
@@ -8371,9 +8639,10 @@
|
|
|
8371
8639
|
if (_config[_DYN_CONNECTION_STRING ]) {
|
|
8372
8640
|
var cs = parseConnectionString(_config[_DYN_CONNECTION_STRING ]);
|
|
8373
8641
|
var ingest = cs.ingestionendpoint;
|
|
8374
|
-
_config
|
|
8642
|
+
_config[_DYN_ENDPOINT_URL ] = _config[_DYN_USER_OVERRIDE_ENDPOI0 ] ? _config[_DYN_USER_OVERRIDE_ENDPOI0 ] : (ingest + DEFAULT_BREEZE_PATH);
|
|
8375
8643
|
_config[_DYN_INSTRUMENTATION_KEY ] = cs.instrumentationkey || _config[_DYN_INSTRUMENTATION_KEY ];
|
|
8376
8644
|
}
|
|
8645
|
+
_config[_DYN_ENDPOINT_URL ] = _config[_DYN_USER_OVERRIDE_ENDPOI0 ] ? _config[_DYN_USER_OVERRIDE_ENDPOI0 ] : _config[_DYN_ENDPOINT_URL ];
|
|
8377
8646
|
}));
|
|
8378
8647
|
core.initialize(_config, [new Sender()]);
|
|
8379
8648
|
}
|