@microsoft/applicationinsights-channel-js 3.0.6-nightly3.2311-04 → 3.0.6-nightly3.2312-02

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.js → applicationinsights-channel-js.3.0.6-nightly3.2312-02.cjs.js} +72 -64
  2. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.cjs.js.map → applicationinsights-channel-js.3.0.6-nightly3.2312-02.cjs.js.map} +1 -1
  3. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.cjs.min.js → applicationinsights-channel-js.3.0.6-nightly3.2312-02.cjs.min.js} +3 -3
  4. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.cjs.min.js.map → applicationinsights-channel-js.3.0.6-nightly3.2312-02.cjs.min.js.map} +1 -1
  5. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.gbl.js → applicationinsights-channel-js.3.0.6-nightly3.2312-02.gbl.js} +74 -39
  6. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.gbl.js.map → applicationinsights-channel-js.3.0.6-nightly3.2312-02.gbl.js.map} +1 -1
  7. package/browser/es5/applicationinsights-channel-js.3.0.6-nightly3.2312-02.gbl.min.js +6 -0
  8. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.gbl.min.js.map → applicationinsights-channel-js.3.0.6-nightly3.2312-02.gbl.min.js.map} +1 -1
  9. package/browser/es5/applicationinsights-channel-js.3.0.6-nightly3.2312-02.integrity.json +66 -0
  10. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.cjs.js → applicationinsights-channel-js.3.0.6-nightly3.2312-02.js} +99 -37
  11. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.js.map → applicationinsights-channel-js.3.0.6-nightly3.2312-02.js.map} +1 -1
  12. package/browser/es5/applicationinsights-channel-js.3.0.6-nightly3.2312-02.min.js +6 -0
  13. package/browser/es5/{applicationinsights-channel-js.3.0.6-nightly3.2311-04.min.js.map → applicationinsights-channel-js.3.0.6-nightly3.2312-02.min.js.map} +1 -1
  14. package/browser/es5/applicationinsights-channel-js.3.cjs.js +71 -36
  15. package/browser/es5/applicationinsights-channel-js.3.cjs.js.map +1 -1
  16. package/browser/es5/applicationinsights-channel-js.3.cjs.min.js +2 -2
  17. package/browser/es5/applicationinsights-channel-js.3.cjs.min.js.map +1 -1
  18. package/browser/es5/applicationinsights-channel-js.3.gbl.js +73 -38
  19. package/browser/es5/applicationinsights-channel-js.3.gbl.js.map +1 -1
  20. package/browser/es5/applicationinsights-channel-js.3.gbl.min.js +2 -2
  21. package/browser/es5/applicationinsights-channel-js.3.gbl.min.js.map +1 -1
  22. package/browser/es5/applicationinsights-channel-js.3.integrity.json +25 -25
  23. package/browser/es5/applicationinsights-channel-js.3.js +73 -38
  24. package/browser/es5/applicationinsights-channel-js.3.js.map +1 -1
  25. package/browser/es5/applicationinsights-channel-js.3.min.js +2 -2
  26. package/browser/es5/applicationinsights-channel-js.3.min.js.map +1 -1
  27. package/dist/es5/applicationinsights-channel-js.js +71 -36
  28. package/dist/es5/applicationinsights-channel-js.js.map +1 -1
  29. package/dist/es5/applicationinsights-channel-js.min.js +2 -2
  30. package/dist/es5/applicationinsights-channel-js.min.js.map +1 -1
  31. package/dist-es5/EnvelopeCreator.js +2 -2
  32. package/dist-es5/EnvelopeCreator.js.map +1 -1
  33. package/dist-es5/Interfaces.js +1 -1
  34. package/dist-es5/InternalConstants.js +1 -1
  35. package/dist-es5/SendBuffer.js +4 -4
  36. package/dist-es5/SendBuffer.js.map +1 -1
  37. package/dist-es5/Sender.js +70 -28
  38. package/dist-es5/Sender.js.map +1 -1
  39. package/dist-es5/Serializer.js +1 -1
  40. package/dist-es5/TelemetryProcessors/Sample.js +1 -1
  41. package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js +3 -3
  42. package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js.map +1 -1
  43. package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js +1 -1
  44. package/dist-es5/__DynamicConstants.js +10 -7
  45. package/dist-es5/__DynamicConstants.js.map +1 -1
  46. package/dist-es5/applicationinsights-channel-js.js +1 -1
  47. package/package.json +3 -3
  48. package/types/applicationinsights-channel-js.d.ts +18 -1
  49. package/types/applicationinsights-channel-js.namespaced.d.ts +18 -1
  50. package/browser/es5/applicationinsights-channel-js.3.0.6-nightly3.2311-04.gbl.min.js +0 -6
  51. package/browser/es5/applicationinsights-channel-js.3.0.6-nightly3.2311-04.integrity.json +0 -66
  52. package/browser/es5/applicationinsights-channel-js.3.0.6-nightly3.2311-04.min.js +0 -6
@@ -1,32 +1,7 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Channel, 3.0.6-nightly3.2311-04
2
+ * Application Insights JavaScript SDK - Channel, 3.0.6-nightly3.2312-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
- (function (global, factory) {
6
- var undef = "undefined";
7
- typeof exports === "object" && typeof module !== undef ? factory(exports) :
8
- typeof define === "function" && define.amd ? define(["exports"], factory) :
9
- (function(global){
10
- var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_channel_js_3_0_6_nightly3_2311_04", msMod="__ms$mod__";
11
- var mods={}, modDetail=mods[modName]={}, ver="3.0.6-nightly3.2311-04";
12
- var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
13
- // Versioned namespace "Microsoft.ApplicationInsights3"
14
- var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
15
- // Global namespace "Microsoft.ApplicationInsights"
16
- var destNs=baseNs, nsKey="ApplicationInsights", destNs=destNs[nsKey]=(destNs[nsKey]||{});
17
- var expNsDetail=(exportNs[msMod]=(exportNs[msMod] || {})), expNameVer=(expNsDetail["v"]=(expNsDetail["v"] || []));
18
- var destNsDetail=(destNs[msMod]=(destNs[msMod] || {})), destNameVer=(destNsDetail["v"]=(destNsDetail["v"] || []));
19
- (destNsDetail["o"]=(destNsDetail["o"] || [])).push(mods);
20
- factory(theExports);
21
- for(var key in theExports) {
22
- // Always set the imported value into the "export" versioned namespace (last-write wins)
23
- nm="x", exportNs[key]=theExports[key], expNameVer[key]=ver;
24
- // Copy over any named element that is not already present (first-write wins)
25
- typeof destNs[key]===undef ? (nm="n", destNs[key]=theExports[key]) && (destNameVer[key]=ver) : !destNameVer[key] && (destNameVer[key]="---");
26
- (modDetail[nm] = (modDetail[nm] || [])).push(key);
27
- }
28
- })(typeof globalThis !== undef ? globalThis : global || self);
29
- })(this, (function (exports) {
30
5
  'use strict';
31
6
 
32
7
 
@@ -1787,7 +1762,7 @@ function newId(maxLength) {
1787
1762
  return result;
1788
1763
  }
1789
1764
 
1790
- var version = '3.0.6-nightly3.2311-04';
1765
+ var version = '3.0.6-nightly3.2312-02';
1791
1766
  var instanceName = "." + newId(6);
1792
1767
  var _dataUid = 0;
1793
1768
  function _canAcceptData(target) {
@@ -4799,6 +4774,7 @@ var _DYN_CLEAR_SENT = "clearSent";
4799
4774
  var _DYN_BUFFER_OVERRIDE = "bufferOverride";
4800
4775
  var _DYN__BUFFER__KEY = "BUFFER_KEY";
4801
4776
  var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
4777
+ var _DYN_CONCAT = "concat";
4802
4778
  var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
4803
4779
  var _DYN_SEND_POST = "sendPOST";
4804
4780
  var _DYN_TRIGGER_SEND = "triggerSend";
@@ -4812,12 +4788,14 @@ var _DYN_ALWAYS_USE_XHR_OVERR4 = "alwaysUseXhrOverride";
4812
4788
  var _DYN_ENABLE_SESSION_STORA5 = "enableSessionStorageBuffer";
4813
4789
  var _DYN__BUFFER = "_buffer";
4814
4790
  var _DYN_ONUNLOAD_DISABLE_FET6 = "onunloadDisableFetch";
4791
+ var _DYN_DISABLE_SEND_BEACON_7 = "disableSendBeaconSplit";
4815
4792
  var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
4793
+ var _DYN_UNLOAD_TRANSPORTS = "unloadTransports";
4816
4794
  var _DYN_CONVERT_UNDEFINED = "convertUndefined";
4817
4795
  var _DYN_MAX_BATCH_INTERVAL = "maxBatchInterval";
4818
4796
  var _DYN_BASE_TYPE = "baseType";
4819
4797
  var _DYN_SAMPLE_RATE = "sampleRate";
4820
- var _DYN__XHR_READY_STATE_CHA7 = "_xhrReadyStateChange";
4798
+ var _DYN__XHR_READY_STATE_CHA8 = "_xhrReadyStateChange";
4821
4799
  var _DYN__ON_ERROR = "_onError";
4822
4800
  var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
4823
4801
  var _DYN__ON_SUCCESS = "_onSuccess";
@@ -4938,7 +4916,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
4938
4916
  }
4939
4917
  }
4940
4918
  var EnvelopeCreator = {
4941
- Version: '3.0.6-nightly3.2311-04'
4919
+ Version: '3.0.6-nightly3.2312-02'
4942
4920
  };
4943
4921
  function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
4944
4922
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -5179,7 +5157,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5179
5157
  dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {
5180
5158
  var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ]);
5181
5159
  var notDeliveredItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5182
- var buffer = _self._set(bufferItems.concat(notDeliveredItems));
5160
+ var buffer = _self._set(bufferItems[_DYN_CONCAT ](notDeliveredItems));
5183
5161
  if (buffer[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
5184
5162
  buffer[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
5185
5163
  }
@@ -5206,7 +5184,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5206
5184
  _setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET ]())));
5207
5185
  var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5208
5186
  if (sentElements instanceof Array && payload instanceof Array) {
5209
- sentElements = sentElements.concat(payload);
5187
+ sentElements = sentElements[_DYN_CONCAT ](payload);
5210
5188
  if (sentElements[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
5211
5189
  _throwInternal(logger, 1 , 67 , "Sent buffer reached its maximum size: " + sentElements[_DYN_LENGTH ], true);
5212
5190
  sentElements[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
@@ -5444,7 +5422,7 @@ var HashCodeScoreGenerator = /** @class */ (function () {
5444
5422
  return 0;
5445
5423
  }
5446
5424
  while (input[_DYN_LENGTH ] < MIN_INPUT_LENGTH) {
5447
- input = input.concat(input);
5425
+ input = input[_DYN_CONCAT ](input);
5448
5426
  }
5449
5427
  var hash = 5381;
5450
5428
  for (var i = 0; i < input[_DYN_LENGTH ]; ++i) {
@@ -5525,6 +5503,17 @@ function _getResponseText(xhr) {
5525
5503
  function isOverrideFn(httpXHROverride) {
5526
5504
  return httpXHROverride && httpXHROverride[_DYN_SEND_POST ];
5527
5505
  }
5506
+ function _prependTransports(theTransports, newTransports) {
5507
+ if (newTransports) {
5508
+ if (isNumber(newTransports)) {
5509
+ theTransports = [newTransports][_DYN_CONCAT ](theTransports);
5510
+ }
5511
+ else if (isArray(newTransports)) {
5512
+ theTransports = newTransports[_DYN_CONCAT ](theTransports);
5513
+ }
5514
+ }
5515
+ return theTransports;
5516
+ }
5528
5517
  var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
5529
5518
  endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
5530
5519
  },
@@ -5535,6 +5524,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
5535
5524
  _a[_DYN_ENABLE_SESSION_STORA5 ] = cfgDfBoolean(true),
5536
5525
  _a.isRetryDisabled = cfgDfBoolean(),
5537
5526
  _a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
5527
+ _a[_DYN_DISABLE_SEND_BEACON_7 ] = cfgDfBoolean(),
5538
5528
  _a.disableXhr = cfgDfBoolean(),
5539
5529
  _a[_DYN_ONUNLOAD_DISABLE_FET6 ] = cfgDfBoolean(),
5540
5530
  _a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
@@ -5547,6 +5537,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
5547
5537
  _a[_DYN_BUFFER_OVERRIDE ] = false,
5548
5538
  _a.httpXHROverride = { isVal: isOverrideFn, v: UNDEFINED_VALUE },
5549
5539
  _a[_DYN_ALWAYS_USE_XHR_OVERR4 ] = cfgDfBoolean(),
5540
+ _a.transports = UNDEFINED_VALUE,
5550
5541
  _a));
5551
5542
  function _chkSampling(value) {
5552
5543
  return !isNaN(value) && value > 0 && value <= 100;
@@ -5581,6 +5572,8 @@ var Sender = /** @class */ (function (_super) {
5581
5572
  var _orgEndpointUrl;
5582
5573
  var _maxBatchSizeInBytes;
5583
5574
  var _beaconSupported;
5575
+ var _beaconOnUnloadSupported;
5576
+ var _beaconNormalSupported;
5584
5577
  var _customHeaders;
5585
5578
  var _disableTelemetry;
5586
5579
  var _instrumentationKey;
@@ -5595,6 +5588,8 @@ var Sender = /** @class */ (function (_super) {
5595
5588
  var _disableXhr;
5596
5589
  var _fetchKeepAlive;
5597
5590
  var _xhrSend;
5591
+ var _fallbackSend;
5592
+ var _disableBeaconSplit;
5598
5593
  dynamicProto(Sender, _this, function (_self, _base) {
5599
5594
  _initDefaults();
5600
5595
  _self.pause = function () {
@@ -5675,6 +5670,8 @@ var Sender = /** @class */ (function (_super) {
5675
5670
  }
5676
5671
  _maxBatchSizeInBytes = senderConfig[_DYN_MAX_BATCH_SIZE_IN_BY1 ];
5677
5672
  _beaconSupported = (senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false || senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false) && isBeaconsSupported();
5673
+ _beaconOnUnloadSupported = senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false && isBeaconsSupported();
5674
+ _beaconNormalSupported = senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false && isBeaconsSupported();
5678
5675
  _alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 ];
5679
5676
  _disableXhr = !!senderConfig.disableXhr;
5680
5677
  var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE ];
@@ -5703,6 +5700,7 @@ var Sender = /** @class */ (function (_super) {
5703
5700
  _sessionStorageUsed = canUseSessionStorage;
5704
5701
  _bufferOverrideUsed = bufferOverride;
5705
5702
  _fetchKeepAlive = !senderConfig[_DYN_ONUNLOAD_DISABLE_FET6 ] && isFetchSupported(true);
5703
+ _disableBeaconSplit = !!senderConfig[_DYN_DISABLE_SEND_BEACON_7 ];
5706
5704
  _self._sample = new Sample(senderConfig.samplingPercentage, diagLog);
5707
5705
  _instrumentationKey = senderConfig[_DYN_INSTRUMENTATION_KEY ];
5708
5706
  if (!_validateInstrumentationKey(_instrumentationKey, config)) {
@@ -5721,14 +5719,15 @@ var Sender = /** @class */ (function (_super) {
5721
5719
  var customInterface = senderConfig.httpXHROverride;
5722
5720
  var httpInterface = null;
5723
5721
  var syncInterface = null;
5724
- httpInterface = _getSenderInterface([1 , 2 ], false);
5722
+ var theTransports = _prependTransports([3 , 1 , 2 ], senderConfig.transports);
5723
+ httpInterface = _getSenderInterface(theTransports, false);
5725
5724
  var xhrInterface = { sendPOST: _xhrSender };
5726
5725
  _xhrSend = function (payload, isAsync) {
5727
5726
  return _doSend(xhrInterface, payload, isAsync);
5728
5727
  };
5729
- if (!senderConfig[_DYN_IS_BEACON_API_DISABL3 ] && isBeaconsSupported()) {
5730
- httpInterface = _getSenderInterface([3 ], false);
5731
- }
5728
+ _fallbackSend = function (payload, isAsync) {
5729
+ return _doSend(xhrInterface, payload, isAsync, false);
5730
+ };
5732
5731
  httpInterface = _alwaysUseCustomSend ? customInterface : (httpInterface || customInterface || xhrInterface);
5733
5732
  _self[_DYN__SENDER ] = function (payload, isAsync) {
5734
5733
  return _doSend(httpInterface, payload, isAsync);
@@ -5736,8 +5735,13 @@ var Sender = /** @class */ (function (_super) {
5736
5735
  if (_fetchKeepAlive) {
5737
5736
  _syncUnloadSender = _fetchKeepAliveSender;
5738
5737
  }
5739
- syncInterface = _alwaysUseCustomSend ? customInterface : (_getSenderInterface([3 , 1 ], true) || customInterface);
5740
- if ((_alwaysUseCustomSend || !_syncUnloadSender) && syncInterface) {
5738
+ var syncTransports = _prependTransports([3 , 1 ], senderConfig[_DYN_UNLOAD_TRANSPORTS ]);
5739
+ if (!_fetchKeepAlive) {
5740
+ syncTransports = syncTransports.filter(function (transport) { return transport !== 2 ; });
5741
+ }
5742
+ syncInterface = _getSenderInterface(syncTransports, true);
5743
+ syncInterface = _alwaysUseCustomSend ? customInterface : (syncInterface || customInterface);
5744
+ if ((_alwaysUseCustomSend || senderConfig[_DYN_UNLOAD_TRANSPORTS ] || !_syncUnloadSender) && syncInterface) {
5741
5745
  _syncUnloadSender = function (payload, isAsync) {
5742
5746
  return _doSend(syncInterface, payload, isAsync);
5743
5747
  };
@@ -5815,7 +5819,7 @@ var Sender = /** @class */ (function (_super) {
5815
5819
  }
5816
5820
  _self.processNext(telemetryItem, itemCtx);
5817
5821
  };
5818
- _self[_DYN__XHR_READY_STATE_CHA7 ] = function (xhr, payload, countOfItemsInPayload) {
5822
+ _self[_DYN__XHR_READY_STATE_CHA8 ] = function (xhr, payload, countOfItemsInPayload) {
5819
5823
  if (xhr.readyState === 4) {
5820
5824
  _checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, _formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
5821
5825
  }
@@ -5929,7 +5933,7 @@ var Sender = /** @class */ (function (_super) {
5929
5933
  else if (transportType === 2 && isFetchSupported(syncSupport)) {
5930
5934
  sendPostFunc = _fetchSender;
5931
5935
  }
5932
- else if (isBeaconsSupported() && transportType === 3 ) {
5936
+ else if (transportType === 3 && (syncSupport ? _beaconOnUnloadSupported : _beaconNormalSupported)) {
5933
5937
  sendPostFunc = _beaconSender;
5934
5938
  }
5935
5939
  lp++;
@@ -5947,14 +5951,17 @@ var Sender = /** @class */ (function (_super) {
5947
5951
  }
5948
5952
  response && _self[_DYN__ON_ERROR ](payload, response);
5949
5953
  }
5950
- function _doSend(sendInterface, payload, isAsync) {
5954
+ function _doSend(sendInterface, payload, isAsync, markAsSent) {
5955
+ if (markAsSent === void 0) { markAsSent = true; }
5951
5956
  var onComplete = function (status, headers, response) {
5952
5957
  return _getOnComplete(payload, status, headers, response);
5953
5958
  };
5954
5959
  var payloadData = _getPayload(payload);
5955
5960
  var sendPostFunc = sendInterface && sendInterface[_DYN_SEND_POST ];
5956
5961
  if (sendPostFunc && payloadData) {
5957
- _self._buffer[_DYN_MARK_AS_SENT ](payload);
5962
+ if (markAsSent) {
5963
+ _self._buffer[_DYN_MARK_AS_SENT ](payload);
5964
+ }
5958
5965
  return sendPostFunc(payloadData, onComplete, !isAsync);
5959
5966
  }
5960
5967
  return null;
@@ -6059,45 +6066,46 @@ var Sender = /** @class */ (function (_super) {
6059
6066
  }
6060
6067
  }
6061
6068
  function _doUnloadSend(payload, isAsync) {
6062
- var onComplete = function (status, headers, response) {
6063
- return _getOnComplete(payload, status, headers, response);
6064
- };
6065
6069
  if (_syncUnloadSender) {
6066
6070
  _syncUnloadSender(payload, false);
6067
6071
  }
6068
6072
  else {
6069
6073
  var payloadData = _getPayload(payload);
6070
- _beaconSender(payloadData, onComplete);
6074
+ _beaconSender(payloadData);
6071
6075
  }
6072
6076
  }
6073
6077
  function _doBeaconSend(payload, oncomplete) {
6074
6078
  var nav = getNavigator();
6075
6079
  var url = _endpointUrl;
6076
- var plainTextBatch = new Blob([payload], { type: "text/plain;charset=UTF-8" });
6080
+ var buffer = _self[_DYN__BUFFER ];
6081
+ var batch = buffer[_DYN_BATCH_PAYLOADS ](payload);
6082
+ var plainTextBatch = new Blob([batch], { type: "text/plain;charset=UTF-8" });
6077
6083
  var queued = nav.sendBeacon(url, plainTextBatch);
6078
6084
  if (queued) {
6079
- oncomplete(200, {}, payload);
6085
+ _self._onSuccess(payload, payload[_DYN_LENGTH ]);
6080
6086
  }
6081
6087
  return queued;
6082
6088
  }
6083
6089
  function _beaconSender(payload, oncomplete, sync) {
6084
6090
  var internalPayload = payload;
6085
- var data = internalPayload && internalPayload[_DYN_DATA ];
6086
- if (isString(data) && data[_DYN_LENGTH ] > 0) {
6087
- if (!_doBeaconSend(data, oncomplete)) {
6088
- var droppedPayload = [];
6089
- var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
6090
- if (oriPayload[_DYN_LENGTH ] > 0) {
6091
+ var data = internalPayload && internalPayload[_DYN_ORI_PAYLOAD ];
6092
+ if (isArray(data) && data[_DYN_LENGTH ] > 0) {
6093
+ if (!_doBeaconSend(data)) {
6094
+ if (!_disableBeaconSplit) {
6095
+ var droppedPayload = [];
6091
6096
  for (var lp = 0; lp < data[_DYN_LENGTH ]; lp++) {
6092
- var thePayload = payload[lp];
6093
- var batch = _self._buffer[_DYN_BATCH_PAYLOADS ](thePayload);
6094
- if (!_doBeaconSend(batch, oncomplete)) {
6097
+ var thePayload = data[lp];
6098
+ if (!_doBeaconSend([thePayload])) {
6095
6099
  droppedPayload[_DYN_PUSH ](thePayload);
6096
6100
  }
6097
6101
  }
6102
+ if (droppedPayload[_DYN_LENGTH ] > 0) {
6103
+ _fallbackSend && _fallbackSend(droppedPayload, true);
6104
+ _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
6105
+ }
6098
6106
  }
6099
- if (droppedPayload[_DYN_LENGTH ] > 0) {
6100
- _xhrSend && _xhrSend(droppedPayload, true);
6107
+ else {
6108
+ _fallbackSend && _fallbackSend(data, true);
6101
6109
  _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
6102
6110
  }
6103
6111
  }
@@ -6157,10 +6165,10 @@ var Sender = /** @class */ (function (_super) {
6157
6165
  _doFetchSender(payloadData, onComplete, true);
6158
6166
  }
6159
6167
  else if (isBeaconsSupported()) {
6160
- _beaconSender(payloadData, onComplete);
6168
+ _beaconSender(payloadData);
6161
6169
  }
6162
6170
  else {
6163
- _xhrSend && _xhrSend(payload, true);
6171
+ _fallbackSend && _fallbackSend(payload, true);
6164
6172
  _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with xhrSender.");
6165
6173
  }
6166
6174
  }
@@ -6415,7 +6423,9 @@ var Sender = /** @class */ (function (_super) {
6415
6423
  _namePrefix = UNDEFINED_VALUE;
6416
6424
  _disableXhr = false;
6417
6425
  _fetchKeepAlive = false;
6426
+ _disableBeaconSplit = false;
6418
6427
  _xhrSend = null;
6428
+ _fallbackSend = null;
6419
6429
  objDefine(_self, "_senderConfig", {
6420
6430
  g: function () {
6421
6431
  return objExtend({}, defaultAppInsightsChannelConfig);
@@ -6440,6 +6450,4 @@ var Sender = /** @class */ (function (_super) {
6440
6450
  }(BaseTelemetryPlugin));
6441
6451
 
6442
6452
  exports.Sender = Sender;
6443
-
6444
- }));
6445
- //# sourceMappingURL=applicationinsights-channel-js.3.0.6-nightly3.2311-04.js.map
6453
+ //# sourceMappingURL=applicationinsights-channel-js.3.0.6-nightly3.2312-02.cjs.js.map