@microsoft/applicationinsights-channel-js 3.0.4-nightly3.2309-09 → 3.0.4-nightly3.2309-10
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/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.cjs.js → applicationinsights-channel-js.3.0.4-nightly3.2309-10.cjs.js} +187 -88
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.cjs.js.map → applicationinsights-channel-js.3.0.4-nightly3.2309-10.cjs.js.map} +1 -1
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.cjs.min.js → applicationinsights-channel-js.3.0.4-nightly3.2309-10.cjs.min.js} +3 -3
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.cjs.min.js.map → applicationinsights-channel-js.3.0.4-nightly3.2309-10.cjs.min.js.map} +1 -1
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.gbl.js → applicationinsights-channel-js.3.0.4-nightly3.2309-10.gbl.js} +189 -90
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.gbl.js.map → applicationinsights-channel-js.3.0.4-nightly3.2309-10.gbl.js.map} +1 -1
- package/browser/es5/applicationinsights-channel-js.3.0.4-nightly3.2309-10.gbl.min.js +6 -0
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.gbl.min.js.map → applicationinsights-channel-js.3.0.4-nightly3.2309-10.gbl.min.js.map} +1 -1
- package/browser/es5/applicationinsights-channel-js.3.0.4-nightly3.2309-10.integrity.json +66 -0
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.js → applicationinsights-channel-js.3.0.4-nightly3.2309-10.js} +189 -90
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.js.map → applicationinsights-channel-js.3.0.4-nightly3.2309-10.js.map} +1 -1
- package/browser/es5/applicationinsights-channel-js.3.0.4-nightly3.2309-10.min.js +6 -0
- package/browser/es5/{applicationinsights-channel-js.3.0.4-nightly3.2309-09.min.js.map → applicationinsights-channel-js.3.0.4-nightly3.2309-10.min.js.map} +1 -1
- package/browser/es5/applicationinsights-channel-js.3.cjs.js +186 -87
- package/browser/es5/applicationinsights-channel-js.3.cjs.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.cjs.min.js +2 -2
- package/browser/es5/applicationinsights-channel-js.3.cjs.min.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.gbl.js +188 -89
- package/browser/es5/applicationinsights-channel-js.3.gbl.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.gbl.min.js +2 -2
- package/browser/es5/applicationinsights-channel-js.3.gbl.min.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.integrity.json +25 -25
- package/browser/es5/applicationinsights-channel-js.3.js +188 -89
- package/browser/es5/applicationinsights-channel-js.3.js.map +1 -1
- package/browser/es5/applicationinsights-channel-js.3.min.js +2 -2
- package/browser/es5/applicationinsights-channel-js.3.min.js.map +1 -1
- package/dist/es5/applicationinsights-channel-js.js +186 -87
- package/dist/es5/applicationinsights-channel-js.js.map +1 -1
- package/dist/es5/applicationinsights-channel-js.min.js +2 -2
- package/dist/es5/applicationinsights-channel-js.min.js.map +1 -1
- package/dist-es5/EnvelopeCreator.js +2 -2
- package/dist-es5/EnvelopeCreator.js.map +1 -1
- package/dist-es5/Interfaces.js +1 -1
- package/dist-es5/InternalConstants.js +1 -1
- package/dist-es5/Offline.js +1 -1
- package/dist-es5/SendBuffer.js +1 -1
- package/dist-es5/Sender.js +198 -98
- package/dist-es5/Sender.js.map +1 -1
- package/dist-es5/Serializer.js +1 -1
- package/dist-es5/TelemetryProcessors/Sample.js +1 -1
- package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js +1 -1
- package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js +1 -1
- package/dist-es5/__DynamicConstants.js +14 -12
- package/dist-es5/__DynamicConstants.js.map +1 -1
- package/dist-es5/applicationinsights-channel-js.js +1 -1
- package/package.json +3 -3
- package/types/applicationinsights-channel-js.d.ts +22 -1
- package/types/applicationinsights-channel-js.namespaced.d.ts +22 -1
- package/browser/es5/applicationinsights-channel-js.3.0.4-nightly3.2309-09.gbl.min.js +0 -6
- package/browser/es5/applicationinsights-channel-js.3.0.4-nightly3.2309-09.integrity.json +0 -66
- package/browser/es5/applicationinsights-channel-js.3.0.4-nightly3.2309-09.min.js +0 -6
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Channel, 3.0.4-nightly3.2309-
|
|
2
|
+
* Application Insights JavaScript SDK - Channel, 3.0.4-nightly3.2309-10
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
typeof exports === "object" && typeof module !== undef ? factory(exports) :
|
|
8
8
|
typeof define === "function" && define.amd ? define(["exports"], factory) :
|
|
9
9
|
(function(global){
|
|
10
|
-
var nsKey, key, nm, theExports = {}, modName = "
|
|
11
|
-
var mods={}, modDetail=mods[modName]={}, ver="3.0.4-nightly3.2309-
|
|
10
|
+
var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_channel_js_3_0_4_nightly3_2309_10", msMod="__ms$mod__";
|
|
11
|
+
var mods={}, modDetail=mods[modName]={}, ver="3.0.4-nightly3.2309-10";
|
|
12
12
|
var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
|
|
13
13
|
// Versioned namespace "Microsoft.ApplicationInsights3"
|
|
14
14
|
var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
|
|
@@ -1787,7 +1787,7 @@ function newId(maxLength) {
|
|
|
1787
1787
|
return result;
|
|
1788
1788
|
}
|
|
1789
1789
|
|
|
1790
|
-
var version = '3.0.4-nightly3.2309-
|
|
1790
|
+
var version = '3.0.4-nightly3.2309-10';
|
|
1791
1791
|
var instanceName = "." + newId(6);
|
|
1792
1792
|
var _dataUid = 0;
|
|
1793
1793
|
function _canAcceptData(target) {
|
|
@@ -4685,6 +4685,7 @@ var _DYN_BUFFER_OVERRIDE = "bufferOverride";
|
|
|
4685
4685
|
var _DYN__BUFFER__KEY = "BUFFER_KEY";
|
|
4686
4686
|
var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
|
|
4687
4687
|
var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
|
|
4688
|
+
var _DYN_SEND_POST = "sendPOST";
|
|
4688
4689
|
var _DYN_TRIGGER_SEND = "triggerSend";
|
|
4689
4690
|
var _DYN_DIAG_LOG = "diagLog";
|
|
4690
4691
|
var _DYN__SENDER = "_sender";
|
|
@@ -4692,21 +4693,22 @@ var _DYN_CUSTOM_HEADERS = "customHeaders";
|
|
|
4692
4693
|
var _DYN_MAX_BATCH_SIZE_IN_BY1 = "maxBatchSizeInBytes";
|
|
4693
4694
|
var _DYN_ONUNLOAD_DISABLE_BEA2 = "onunloadDisableBeacon";
|
|
4694
4695
|
var _DYN_IS_BEACON_API_DISABL3 = "isBeaconApiDisabled";
|
|
4695
|
-
var
|
|
4696
|
+
var _DYN_ALWAYS_USE_XHR_OVERR4 = "alwaysUseXhrOverride";
|
|
4697
|
+
var _DYN_ENABLE_SESSION_STORA5 = "enableSessionStorageBuffer";
|
|
4696
4698
|
var _DYN__BUFFER = "_buffer";
|
|
4699
|
+
var _DYN_ONUNLOAD_DISABLE_FET6 = "onunloadDisableFetch";
|
|
4697
4700
|
var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
|
|
4698
|
-
var _DYN_DISABLE_XHR = "disableXhr";
|
|
4699
|
-
var _DYN_ONUNLOAD_DISABLE_FET5 = "onunloadDisableFetch";
|
|
4700
4701
|
var _DYN_CONVERT_UNDEFINED = "convertUndefined";
|
|
4701
4702
|
var _DYN_MAX_BATCH_INTERVAL = "maxBatchInterval";
|
|
4702
4703
|
var _DYN_BASE_TYPE = "baseType";
|
|
4703
4704
|
var _DYN_SAMPLE_RATE = "sampleRate";
|
|
4704
|
-
var
|
|
4705
|
+
var _DYN__XHR_READY_STATE_CHA7 = "_xhrReadyStateChange";
|
|
4705
4706
|
var _DYN__ON_ERROR = "_onError";
|
|
4706
4707
|
var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
|
|
4707
4708
|
var _DYN__ON_SUCCESS = "_onSuccess";
|
|
4708
4709
|
var _DYN_ITEMS_ACCEPTED = "itemsAccepted";
|
|
4709
4710
|
var _DYN_ITEMS_RECEIVED = "itemsReceived";
|
|
4711
|
+
var _DYN_ORI_PAYLOAD = "oriPayload";
|
|
4710
4712
|
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
4711
4713
|
var _DYN_EVENTS_SEND_REQUEST = "eventsSendRequest";
|
|
4712
4714
|
var _DYN_GET_SAMPLING_SCORE = "getSamplingScore";
|
|
@@ -4821,7 +4823,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
|
|
|
4821
4823
|
}
|
|
4822
4824
|
}
|
|
4823
4825
|
var EnvelopeCreator = {
|
|
4824
|
-
Version: '3.0.4-nightly3.2309-
|
|
4826
|
+
Version: '3.0.4-nightly3.2309-10'
|
|
4825
4827
|
};
|
|
4826
4828
|
function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
|
|
4827
4829
|
EnvelopeCreatorInit(logger, telemetryItem);
|
|
@@ -5482,6 +5484,9 @@ function _getResponseText(xhr) {
|
|
|
5482
5484
|
}
|
|
5483
5485
|
return null;
|
|
5484
5486
|
}
|
|
5487
|
+
function isOverrideFn(httpXHROverride) {
|
|
5488
|
+
return httpXHROverride && httpXHROverride[_DYN_SEND_POST ];
|
|
5489
|
+
}
|
|
5485
5490
|
var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
5486
5491
|
endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
|
|
5487
5492
|
},
|
|
@@ -5489,11 +5494,11 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
|
5489
5494
|
_a[_DYN_MAX_BATCH_INTERVAL ] = 15000,
|
|
5490
5495
|
_a[_DYN_MAX_BATCH_SIZE_IN_BY1 ] = 102400,
|
|
5491
5496
|
_a.disableTelemetry = cfgDfBoolean(),
|
|
5492
|
-
_a[
|
|
5497
|
+
_a[_DYN_ENABLE_SESSION_STORA5 ] = cfgDfBoolean(true),
|
|
5493
5498
|
_a.isRetryDisabled = cfgDfBoolean(),
|
|
5494
5499
|
_a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
|
|
5495
|
-
_a
|
|
5496
|
-
_a[
|
|
5500
|
+
_a.disableXhr = cfgDfBoolean(),
|
|
5501
|
+
_a[_DYN_ONUNLOAD_DISABLE_FET6 ] = cfgDfBoolean(),
|
|
5497
5502
|
_a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
|
|
5498
5503
|
_a[_DYN_INSTRUMENTATION_KEY ] = UNDEFINED_VALUE,
|
|
5499
5504
|
_a.namePrefix = UNDEFINED_VALUE,
|
|
@@ -5502,6 +5507,8 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
|
|
|
5502
5507
|
_a[_DYN_CONVERT_UNDEFINED ] = UNDEFINED_VALUE,
|
|
5503
5508
|
_a[_DYN_EVENTS_LIMIT_IN_MEM ] = 10000,
|
|
5504
5509
|
_a[_DYN_BUFFER_OVERRIDE ] = false,
|
|
5510
|
+
_a.httpXHROverride = { isVal: isOverrideFn, v: UNDEFINED_VALUE },
|
|
5511
|
+
_a[_DYN_ALWAYS_USE_XHR_OVERR4 ] = cfgDfBoolean(),
|
|
5505
5512
|
_a));
|
|
5506
5513
|
function _chkSampling(value) {
|
|
5507
5514
|
return !isNaN(value) && value > 0 && value <= 100;
|
|
@@ -5529,7 +5536,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5529
5536
|
var _stamp_specific_redirects;
|
|
5530
5537
|
var _headers;
|
|
5531
5538
|
var _syncFetchPayload = 0;
|
|
5532
|
-
var _fallbackSender;
|
|
5533
5539
|
var _syncUnloadSender;
|
|
5534
5540
|
var _offlineListener;
|
|
5535
5541
|
var _evtNamespace;
|
|
@@ -5547,6 +5553,10 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5547
5553
|
var _bufferOverrideUsed;
|
|
5548
5554
|
var _namePrefix;
|
|
5549
5555
|
var _enableSendPromise;
|
|
5556
|
+
var _alwaysUseCustomSend;
|
|
5557
|
+
var _disableXhr;
|
|
5558
|
+
var _fetchKeepAlive;
|
|
5559
|
+
var _xhrSend;
|
|
5550
5560
|
dynamicProto(Sender, _this, function (_self, _base) {
|
|
5551
5561
|
_initDefaults();
|
|
5552
5562
|
_self.pause = function () {
|
|
@@ -5575,7 +5585,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5575
5585
|
};
|
|
5576
5586
|
_self.onunloadFlush = function () {
|
|
5577
5587
|
if (!_paused) {
|
|
5578
|
-
if (_beaconSupported) {
|
|
5588
|
+
if (_beaconSupported || _alwaysUseCustomSend) {
|
|
5579
5589
|
try {
|
|
5580
5590
|
return _self[_DYN_TRIGGER_SEND ](true, _doUnloadSend, 2 );
|
|
5581
5591
|
}
|
|
@@ -5627,8 +5637,10 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5627
5637
|
}
|
|
5628
5638
|
_maxBatchSizeInBytes = senderConfig[_DYN_MAX_BATCH_SIZE_IN_BY1 ];
|
|
5629
5639
|
_beaconSupported = (senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false || senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false) && isBeaconsSupported();
|
|
5640
|
+
_alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 ];
|
|
5641
|
+
_disableXhr = !!senderConfig.disableXhr;
|
|
5630
5642
|
var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE ];
|
|
5631
|
-
var canUseSessionStorage = !!senderConfig[
|
|
5643
|
+
var canUseSessionStorage = !!senderConfig[_DYN_ENABLE_SESSION_STORA5 ] &&
|
|
5632
5644
|
(!!bufferOverride || utlCanUseSessionStorage());
|
|
5633
5645
|
var namePrefix = senderConfig.namePrefix;
|
|
5634
5646
|
var shouldUpdate = (canUseSessionStorage !== _sessionStorageUsed)
|
|
@@ -5652,6 +5664,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5652
5664
|
_namePrefix = namePrefix;
|
|
5653
5665
|
_sessionStorageUsed = canUseSessionStorage;
|
|
5654
5666
|
_bufferOverrideUsed = bufferOverride;
|
|
5667
|
+
_fetchKeepAlive = !senderConfig[_DYN_ONUNLOAD_DISABLE_FET6 ] && isFetchSupported(true);
|
|
5655
5668
|
_self._sample = new Sample(senderConfig.samplingPercentage, diagLog);
|
|
5656
5669
|
_instrumentationKey = senderConfig[_DYN_INSTRUMENTATION_KEY ];
|
|
5657
5670
|
if (!_validateInstrumentationKey(_instrumentationKey, config)) {
|
|
@@ -5667,35 +5680,32 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5667
5680
|
_customHeaders = null;
|
|
5668
5681
|
}
|
|
5669
5682
|
_enableSendPromise = senderConfig.enableSendPromise;
|
|
5670
|
-
var
|
|
5671
|
-
|
|
5672
|
-
|
|
5673
|
-
|
|
5674
|
-
|
|
5675
|
-
|
|
5676
|
-
|
|
5677
|
-
|
|
5678
|
-
sendPostFunc = _fetchSender;
|
|
5679
|
-
}
|
|
5680
|
-
_fallbackSender = sendPostFunc || _xhrSender;
|
|
5683
|
+
var customInterface = senderConfig.httpXHROverride;
|
|
5684
|
+
var httpInterface = null;
|
|
5685
|
+
var syncInterface = null;
|
|
5686
|
+
httpInterface = _getSenderInterface([1 , 2 ], false);
|
|
5687
|
+
var xhrInterface = { sendPOST: _xhrSender };
|
|
5688
|
+
_xhrSend = function (payload, isAsync) {
|
|
5689
|
+
return _doSend(xhrInterface, payload, isAsync);
|
|
5690
|
+
};
|
|
5681
5691
|
if (!senderConfig[_DYN_IS_BEACON_API_DISABL3 ] && isBeaconsSupported()) {
|
|
5682
|
-
|
|
5692
|
+
httpInterface = _getSenderInterface([3 ], false);
|
|
5683
5693
|
}
|
|
5684
|
-
|
|
5685
|
-
|
|
5694
|
+
httpInterface = _alwaysUseCustomSend ? customInterface : (httpInterface || customInterface || xhrInterface);
|
|
5695
|
+
_self[_DYN__SENDER ] = function (payload, isAsync) {
|
|
5696
|
+
return _doSend(httpInterface, payload, isAsync);
|
|
5697
|
+
};
|
|
5698
|
+
if (_fetchKeepAlive) {
|
|
5686
5699
|
_syncUnloadSender = _fetchKeepAliveSender;
|
|
5687
5700
|
}
|
|
5688
|
-
|
|
5689
|
-
|
|
5701
|
+
syncInterface = _alwaysUseCustomSend ? customInterface : (_getSenderInterface([3 , 1 ], true) || customInterface);
|
|
5702
|
+
if ((_alwaysUseCustomSend || !_syncUnloadSender) && syncInterface) {
|
|
5703
|
+
_syncUnloadSender = function (payload, isAsync) {
|
|
5704
|
+
return _doSend(syncInterface, payload, isAsync);
|
|
5705
|
+
};
|
|
5690
5706
|
}
|
|
5691
|
-
|
|
5692
|
-
_syncUnloadSender =
|
|
5693
|
-
}
|
|
5694
|
-
else if (!senderConfig[_DYN_DISABLE_XHR ] && isXhrSupported()) {
|
|
5695
|
-
_syncUnloadSender = _xhrSender;
|
|
5696
|
-
}
|
|
5697
|
-
else {
|
|
5698
|
-
_syncUnloadSender = _fallbackSender;
|
|
5707
|
+
if (!_syncUnloadSender) {
|
|
5708
|
+
_syncUnloadSender = _xhrSend;
|
|
5699
5709
|
}
|
|
5700
5710
|
_disableTelemetry = senderConfig.disableTelemetry;
|
|
5701
5711
|
_convertUndefined = senderConfig[_DYN_CONVERT_UNDEFINED ] || UNDEFINED_VALUE;
|
|
@@ -5767,7 +5777,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5767
5777
|
}
|
|
5768
5778
|
_self.processNext(telemetryItem, itemCtx);
|
|
5769
5779
|
};
|
|
5770
|
-
_self[
|
|
5780
|
+
_self[_DYN__XHR_READY_STATE_CHA7 ] = function (xhr, payload, countOfItemsInPayload) {
|
|
5771
5781
|
if (xhr.readyState === 4) {
|
|
5772
5782
|
_checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, _formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
|
|
5773
5783
|
}
|
|
@@ -5863,6 +5873,73 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5863
5873
|
function _isSampledIn(envelope) {
|
|
5864
5874
|
return _self._sample.isSampledIn(envelope);
|
|
5865
5875
|
}
|
|
5876
|
+
function _getSenderInterface(transports, syncSupport) {
|
|
5877
|
+
var _a;
|
|
5878
|
+
var transportType = null;
|
|
5879
|
+
var sendPostFunc = null;
|
|
5880
|
+
var lp = 0;
|
|
5881
|
+
while (sendPostFunc == null && lp < transports[_DYN_LENGTH ]) {
|
|
5882
|
+
transportType = transports[lp];
|
|
5883
|
+
if (!_disableXhr && transportType === 1 ) {
|
|
5884
|
+
if (useXDomainRequest()) {
|
|
5885
|
+
sendPostFunc = _xdrSender;
|
|
5886
|
+
}
|
|
5887
|
+
else if (isXhrSupported()) {
|
|
5888
|
+
sendPostFunc = _xhrSender;
|
|
5889
|
+
}
|
|
5890
|
+
}
|
|
5891
|
+
else if (transportType === 2 && isFetchSupported(syncSupport)) {
|
|
5892
|
+
sendPostFunc = _fetchSender;
|
|
5893
|
+
}
|
|
5894
|
+
else if (isBeaconsSupported() && transportType === 3 ) {
|
|
5895
|
+
sendPostFunc = _beaconSender;
|
|
5896
|
+
}
|
|
5897
|
+
lp++;
|
|
5898
|
+
}
|
|
5899
|
+
if (sendPostFunc) {
|
|
5900
|
+
return _a = {},
|
|
5901
|
+
_a[_DYN_SEND_POST ] = sendPostFunc,
|
|
5902
|
+
_a;
|
|
5903
|
+
}
|
|
5904
|
+
return null;
|
|
5905
|
+
}
|
|
5906
|
+
function _getOnComplete(payload, status, headers, response) {
|
|
5907
|
+
if (status === 200 && payload) {
|
|
5908
|
+
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
5909
|
+
}
|
|
5910
|
+
response && _self[_DYN__ON_ERROR ](payload, response);
|
|
5911
|
+
}
|
|
5912
|
+
function _doSend(sendInterface, payload, isAsync) {
|
|
5913
|
+
var onComplete = function (status, headers, response) {
|
|
5914
|
+
return _getOnComplete(payload, status, headers, response);
|
|
5915
|
+
};
|
|
5916
|
+
var payloadData = _getPayload(payload);
|
|
5917
|
+
var sendPostFunc = sendInterface && sendInterface[_DYN_SEND_POST ];
|
|
5918
|
+
if (sendPostFunc && payloadData) {
|
|
5919
|
+
_self._buffer[_DYN_MARK_AS_SENT ](payload);
|
|
5920
|
+
return sendPostFunc(payloadData, onComplete, !isAsync);
|
|
5921
|
+
}
|
|
5922
|
+
return null;
|
|
5923
|
+
}
|
|
5924
|
+
function _getPayload(payload) {
|
|
5925
|
+
var _a;
|
|
5926
|
+
if (isArray(payload) && payload[_DYN_LENGTH ] > 0) {
|
|
5927
|
+
var batch = _self._buffer[_DYN_BATCH_PAYLOADS ](payload);
|
|
5928
|
+
var payloadData = (_a = {},
|
|
5929
|
+
_a[_DYN_DATA ] = batch,
|
|
5930
|
+
_a.urlString = _endpointUrl,
|
|
5931
|
+
_a.headers = _headers,
|
|
5932
|
+
_a.disableXhrSync = _disableXhr,
|
|
5933
|
+
_a.disableFetchKeepAlive = !_fetchKeepAlive,
|
|
5934
|
+
_a[_DYN_ORI_PAYLOAD ] = payload,
|
|
5935
|
+
_a);
|
|
5936
|
+
return payloadData;
|
|
5937
|
+
}
|
|
5938
|
+
return null;
|
|
5939
|
+
}
|
|
5940
|
+
function _fetchSender(payload, oncomplete, sync) {
|
|
5941
|
+
return _doFetchSender(payload, oncomplete, false);
|
|
5942
|
+
}
|
|
5866
5943
|
function _checkMaxSize(incomingPayload) {
|
|
5867
5944
|
var incomingSize = incomingPayload ? incomingPayload[_DYN_LENGTH ] : 0;
|
|
5868
5945
|
if ((_self[_DYN__BUFFER ].size() + incomingSize) > _maxBatchSizeInBytes) {
|
|
@@ -5936,45 +6013,60 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5936
6013
|
}
|
|
5937
6014
|
return false;
|
|
5938
6015
|
}
|
|
6016
|
+
function _doOnComplete(oncomplete, status, headers, response) {
|
|
6017
|
+
try {
|
|
6018
|
+
oncomplete(status, headers, response);
|
|
6019
|
+
}
|
|
6020
|
+
catch (e) {
|
|
6021
|
+
}
|
|
6022
|
+
}
|
|
5939
6023
|
function _doUnloadSend(payload, isAsync) {
|
|
6024
|
+
var onComplete = function (status, headers, response) {
|
|
6025
|
+
return _getOnComplete(payload, status, headers, response);
|
|
6026
|
+
};
|
|
5940
6027
|
if (_syncUnloadSender) {
|
|
5941
6028
|
_syncUnloadSender(payload, false);
|
|
5942
6029
|
}
|
|
5943
6030
|
else {
|
|
5944
|
-
|
|
6031
|
+
var payloadData = _getPayload(payload);
|
|
6032
|
+
_beaconSender(payloadData, onComplete);
|
|
5945
6033
|
}
|
|
5946
6034
|
}
|
|
5947
|
-
function _doBeaconSend(payload) {
|
|
6035
|
+
function _doBeaconSend(payload, oncomplete) {
|
|
5948
6036
|
var nav = getNavigator();
|
|
5949
|
-
var buffer = _self[_DYN__BUFFER ];
|
|
5950
6037
|
var url = _endpointUrl;
|
|
5951
|
-
var
|
|
5952
|
-
var plainTextBatch = new Blob([batch], { type: "text/plain;charset=UTF-8" });
|
|
6038
|
+
var plainTextBatch = new Blob([payload], { type: "text/plain;charset=UTF-8" });
|
|
5953
6039
|
var queued = nav.sendBeacon(url, plainTextBatch);
|
|
5954
6040
|
if (queued) {
|
|
5955
|
-
|
|
5956
|
-
_self._onSuccess(payload, payload[_DYN_LENGTH ]);
|
|
6041
|
+
oncomplete(200, {}, payload);
|
|
5957
6042
|
}
|
|
5958
6043
|
return queued;
|
|
5959
6044
|
}
|
|
5960
|
-
function _beaconSender(payload,
|
|
5961
|
-
|
|
5962
|
-
|
|
6045
|
+
function _beaconSender(payload, oncomplete, sync) {
|
|
6046
|
+
var internalPayload = payload;
|
|
6047
|
+
var data = internalPayload && internalPayload[_DYN_DATA ];
|
|
6048
|
+
if (isString(data) && data[_DYN_LENGTH ] > 0) {
|
|
6049
|
+
if (!_doBeaconSend(data, oncomplete)) {
|
|
5963
6050
|
var droppedPayload = [];
|
|
5964
|
-
|
|
5965
|
-
|
|
5966
|
-
|
|
5967
|
-
|
|
6051
|
+
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6052
|
+
if (oriPayload[_DYN_LENGTH ] > 0) {
|
|
6053
|
+
for (var lp = 0; lp < data[_DYN_LENGTH ]; lp++) {
|
|
6054
|
+
var thePayload = payload[lp];
|
|
6055
|
+
var batch = _self._buffer[_DYN_BATCH_PAYLOADS ](thePayload);
|
|
6056
|
+
if (!_doBeaconSend(batch, oncomplete)) {
|
|
6057
|
+
droppedPayload[_DYN_PUSH ](thePayload);
|
|
6058
|
+
}
|
|
5968
6059
|
}
|
|
5969
6060
|
}
|
|
5970
6061
|
if (droppedPayload[_DYN_LENGTH ] > 0) {
|
|
5971
|
-
|
|
6062
|
+
_xhrSend && _xhrSend(droppedPayload, true);
|
|
5972
6063
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
|
|
5973
6064
|
}
|
|
5974
6065
|
}
|
|
5975
6066
|
}
|
|
5976
6067
|
}
|
|
5977
|
-
function _xhrSender(payload,
|
|
6068
|
+
function _xhrSender(payload, oncomplete, sync) {
|
|
6069
|
+
var internalPayload = payload;
|
|
5978
6070
|
var thePromise;
|
|
5979
6071
|
var resolveFunc;
|
|
5980
6072
|
var rejectFunc;
|
|
@@ -5985,7 +6077,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5985
6077
|
}
|
|
5986
6078
|
catch (e) {
|
|
5987
6079
|
}
|
|
5988
|
-
xhr.open("POST", endPointUrl,
|
|
6080
|
+
xhr.open("POST", endPointUrl, !sync);
|
|
5989
6081
|
xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
|
|
5990
6082
|
if (isInternalApplicationInsightsEndpoint(endPointUrl)) {
|
|
5991
6083
|
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[6 ], RequestHeaders[7 ]);
|
|
@@ -5994,51 +6086,52 @@ var Sender = /** @class */ (function (_super) {
|
|
|
5994
6086
|
xhr[_DYN_SET_REQUEST_HEADER ](headerName, _headers[headerName]);
|
|
5995
6087
|
});
|
|
5996
6088
|
xhr.onreadystatechange = function () {
|
|
5997
|
-
|
|
6089
|
+
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6090
|
+
_self._xhrReadyStateChange(xhr, oriPayload, oriPayload[_DYN_LENGTH ]);
|
|
5998
6091
|
if (xhr.readyState === 4) {
|
|
5999
6092
|
resolveFunc && resolveFunc(true);
|
|
6000
6093
|
}
|
|
6001
6094
|
};
|
|
6002
6095
|
xhr.onerror = function (event) {
|
|
6003
|
-
|
|
6096
|
+
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXhr(xhr));
|
|
6004
6097
|
rejectFunc && rejectFunc(event);
|
|
6005
6098
|
};
|
|
6006
|
-
if (
|
|
6099
|
+
if (!sync && _enableSendPromise) {
|
|
6007
6100
|
thePromise = createPromise(function (resolve, reject) {
|
|
6008
6101
|
resolveFunc = resolve;
|
|
6009
6102
|
rejectFunc = reject;
|
|
6010
6103
|
});
|
|
6011
6104
|
}
|
|
6012
|
-
|
|
6013
|
-
xhr.send(batch);
|
|
6014
|
-
_self._buffer[_DYN_MARK_AS_SENT ](payload);
|
|
6105
|
+
xhr.send(payload[_DYN_DATA ]);
|
|
6015
6106
|
return thePromise;
|
|
6016
6107
|
}
|
|
6017
6108
|
function _fetchKeepAliveSender(payload, isAsync) {
|
|
6109
|
+
var onComplete = function (status, headers, response) {
|
|
6110
|
+
return _getOnComplete(payload, status, headers, response);
|
|
6111
|
+
};
|
|
6018
6112
|
if (isArray(payload)) {
|
|
6019
6113
|
var payloadSize = payload[_DYN_LENGTH ];
|
|
6020
6114
|
for (var lp = 0; lp < payload[_DYN_LENGTH ]; lp++) {
|
|
6021
6115
|
payloadSize += payload[lp][_DYN_LENGTH ];
|
|
6022
6116
|
}
|
|
6117
|
+
var payloadData = _getPayload(payload);
|
|
6023
6118
|
if ((_syncFetchPayload + payloadSize) <= FetchSyncRequestSizeLimitBytes) {
|
|
6024
|
-
_doFetchSender(
|
|
6119
|
+
_doFetchSender(payloadData, onComplete, true);
|
|
6025
6120
|
}
|
|
6026
6121
|
else if (isBeaconsSupported()) {
|
|
6027
|
-
_beaconSender(
|
|
6122
|
+
_beaconSender(payloadData, onComplete);
|
|
6028
6123
|
}
|
|
6029
6124
|
else {
|
|
6030
|
-
|
|
6125
|
+
_xhrSend && _xhrSend(payload, true);
|
|
6031
6126
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with xhrSender.");
|
|
6032
6127
|
}
|
|
6033
6128
|
}
|
|
6034
6129
|
}
|
|
6035
|
-
function
|
|
6036
|
-
return _doFetchSender(payload, true);
|
|
6037
|
-
}
|
|
6038
|
-
function _doFetchSender(payload, isAsync) {
|
|
6130
|
+
function _doFetchSender(payload, oncomplete, sync) {
|
|
6039
6131
|
var _a;
|
|
6040
6132
|
var endPointUrl = _endpointUrl;
|
|
6041
|
-
var
|
|
6133
|
+
var internalPayload = payload;
|
|
6134
|
+
var batch = internalPayload[_DYN_DATA ];
|
|
6042
6135
|
var plainTextBatch = new Blob([batch], { type: "application/json" });
|
|
6043
6136
|
var thePromise;
|
|
6044
6137
|
var resolveFunc;
|
|
@@ -6061,7 +6154,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6061
6154
|
_a[DisabledPropertyName] = true
|
|
6062
6155
|
,
|
|
6063
6156
|
_a);
|
|
6064
|
-
if (
|
|
6157
|
+
if (sync) {
|
|
6065
6158
|
init.keepalive = true;
|
|
6066
6159
|
ignoreResponse = true;
|
|
6067
6160
|
_syncFetchPayload += batchLength;
|
|
@@ -6072,8 +6165,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6072
6165
|
}
|
|
6073
6166
|
catch (e) {
|
|
6074
6167
|
}
|
|
6075
|
-
|
|
6076
|
-
if (isAsync && _enableSendPromise) {
|
|
6168
|
+
if (!sync && _enableSendPromise) {
|
|
6077
6169
|
thePromise = createPromise(function (resolve, reject) {
|
|
6078
6170
|
resolveFunc = resolve;
|
|
6079
6171
|
rejectFunc = reject;
|
|
@@ -6081,7 +6173,7 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6081
6173
|
}
|
|
6082
6174
|
try {
|
|
6083
6175
|
doAwaitResponse(fetch(request), function (result) {
|
|
6084
|
-
if (
|
|
6176
|
+
if (sync) {
|
|
6085
6177
|
_syncFetchPayload -= batchLength;
|
|
6086
6178
|
batchLength = 0;
|
|
6087
6179
|
}
|
|
@@ -6090,18 +6182,19 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6090
6182
|
if (!result.rejected) {
|
|
6091
6183
|
var response_1 = result.value;
|
|
6092
6184
|
if (!response_1.ok) {
|
|
6093
|
-
|
|
6185
|
+
_doOnComplete(oncomplete, 400, {}, response_1.statusText);
|
|
6094
6186
|
resolveFunc && resolveFunc(false);
|
|
6095
6187
|
}
|
|
6096
6188
|
else {
|
|
6097
6189
|
doAwaitResponse(response_1.text(), function (resp) {
|
|
6098
|
-
|
|
6190
|
+
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6191
|
+
_checkResponsStatus(response_1.status, oriPayload, response_1.url, oriPayload[_DYN_LENGTH ], response_1.statusText, resp.value || "");
|
|
6099
6192
|
resolveFunc && resolveFunc(true);
|
|
6100
6193
|
});
|
|
6101
6194
|
}
|
|
6102
6195
|
}
|
|
6103
6196
|
else {
|
|
6104
|
-
|
|
6197
|
+
_doOnComplete(oncomplete, 400, {}, result.reason && result.reason.message);
|
|
6105
6198
|
rejectFunc && rejectFunc(result.reason);
|
|
6106
6199
|
}
|
|
6107
6200
|
}
|
|
@@ -6109,13 +6202,13 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6109
6202
|
}
|
|
6110
6203
|
catch (e) {
|
|
6111
6204
|
if (!responseHandled) {
|
|
6112
|
-
|
|
6205
|
+
_doOnComplete(oncomplete, 400, {}, dumpObj(e));
|
|
6113
6206
|
rejectFunc && rejectFunc(e);
|
|
6114
6207
|
}
|
|
6115
6208
|
}
|
|
6116
6209
|
if (ignoreResponse && !responseHandled) {
|
|
6117
6210
|
responseHandled = true;
|
|
6118
|
-
|
|
6211
|
+
_doOnComplete(oncomplete, 200, {});
|
|
6119
6212
|
resolveFunc && resolveFunc(true);
|
|
6120
6213
|
}
|
|
6121
6214
|
return thePromise;
|
|
@@ -6198,24 +6291,28 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6198
6291
|
}
|
|
6199
6292
|
return message;
|
|
6200
6293
|
}
|
|
6201
|
-
function _xdrSender(payload,
|
|
6202
|
-
var
|
|
6294
|
+
function _xdrSender(payload, oncomplete, sync) {
|
|
6295
|
+
var internalPayload = payload;
|
|
6203
6296
|
var _window = getWindow();
|
|
6204
6297
|
var xdr = new XDomainRequest();
|
|
6205
|
-
|
|
6206
|
-
xdr.
|
|
6298
|
+
var data = internalPayload[_DYN_DATA ];
|
|
6299
|
+
xdr.onload = function () {
|
|
6300
|
+
var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
|
|
6301
|
+
_self._xdrOnLoad(xdr, oriPayload);
|
|
6302
|
+
};
|
|
6303
|
+
xdr.onerror = function () {
|
|
6304
|
+
_doOnComplete(oncomplete, 400, {}, _formatErrorMessageXdr(xdr));
|
|
6305
|
+
};
|
|
6207
6306
|
var hostingProtocol = _window && _window.location && _window.location.protocol || "";
|
|
6208
6307
|
if (_endpointUrl.lastIndexOf(hostingProtocol, 0) !== 0) {
|
|
6209
6308
|
_throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " +
|
|
6210
6309
|
"Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.");
|
|
6211
|
-
|
|
6310
|
+
_self._buffer[_DYN_CLEAR ]();
|
|
6212
6311
|
return;
|
|
6213
6312
|
}
|
|
6214
6313
|
var endpointUrl = _endpointUrl.replace(/^(https?:)/, "");
|
|
6215
6314
|
xdr.open("POST", endpointUrl);
|
|
6216
|
-
|
|
6217
|
-
xdr.send(batch);
|
|
6218
|
-
buffer[_DYN_MARK_AS_SENT ](payload);
|
|
6315
|
+
xdr.send(data);
|
|
6219
6316
|
}
|
|
6220
6317
|
function _formatErrorMessageXdr(xdr, message) {
|
|
6221
6318
|
if (xdr) {
|
|
@@ -6265,7 +6362,6 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6265
6362
|
_serializer = null;
|
|
6266
6363
|
_stamp_specific_redirects = 0;
|
|
6267
6364
|
_syncFetchPayload = 0;
|
|
6268
|
-
_fallbackSender = null;
|
|
6269
6365
|
_syncUnloadSender = null;
|
|
6270
6366
|
_evtNamespace = null;
|
|
6271
6367
|
_endpointUrl = null;
|
|
@@ -6279,6 +6375,9 @@ var Sender = /** @class */ (function (_super) {
|
|
|
6279
6375
|
_isRetryDisabled = false;
|
|
6280
6376
|
_sessionStorageUsed = null;
|
|
6281
6377
|
_namePrefix = UNDEFINED_VALUE;
|
|
6378
|
+
_disableXhr = false;
|
|
6379
|
+
_fetchKeepAlive = false;
|
|
6380
|
+
_xhrSend = null;
|
|
6282
6381
|
objDefine(_self, "_senderConfig", {
|
|
6283
6382
|
g: function () {
|
|
6284
6383
|
return objExtend({}, defaultAppInsightsChannelConfig);
|