@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,11 +1,11 @@
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
5
  (function (global, factory) {
6
6
  var undef = "undefined";
7
- var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_channel_js_3_0_6_nightly3_2311_04", msMod="__ms$mod__";
8
- var mods={}, modDetail=mods[modName]={}, ver="3.0.6-nightly3.2311-04";
7
+ var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_channel_js_3_0_6_nightly3_2312_02", msMod="__ms$mod__";
8
+ var mods={}, modDetail=mods[modName]={}, ver="3.0.6-nightly3.2312-02";
9
9
  var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
10
10
  // Versioned namespace "Microsoft.ApplicationInsights3"
11
11
  var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
@@ -1783,7 +1783,7 @@ function newId(maxLength) {
1783
1783
  return result;
1784
1784
  }
1785
1785
 
1786
- var version = '3.0.6-nightly3.2311-04';
1786
+ var version = '3.0.6-nightly3.2312-02';
1787
1787
  var instanceName = "." + newId(6);
1788
1788
  var _dataUid = 0;
1789
1789
  function _canAcceptData(target) {
@@ -4795,6 +4795,7 @@ var _DYN_CLEAR_SENT = "clearSent";
4795
4795
  var _DYN_BUFFER_OVERRIDE = "bufferOverride";
4796
4796
  var _DYN__BUFFER__KEY = "BUFFER_KEY";
4797
4797
  var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
4798
+ var _DYN_CONCAT = "concat";
4798
4799
  var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
4799
4800
  var _DYN_SEND_POST = "sendPOST";
4800
4801
  var _DYN_TRIGGER_SEND = "triggerSend";
@@ -4808,12 +4809,14 @@ var _DYN_ALWAYS_USE_XHR_OVERR4 = "alwaysUseXhrOverride";
4808
4809
  var _DYN_ENABLE_SESSION_STORA5 = "enableSessionStorageBuffer";
4809
4810
  var _DYN__BUFFER = "_buffer";
4810
4811
  var _DYN_ONUNLOAD_DISABLE_FET6 = "onunloadDisableFetch";
4812
+ var _DYN_DISABLE_SEND_BEACON_7 = "disableSendBeaconSplit";
4811
4813
  var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
4814
+ var _DYN_UNLOAD_TRANSPORTS = "unloadTransports";
4812
4815
  var _DYN_CONVERT_UNDEFINED = "convertUndefined";
4813
4816
  var _DYN_MAX_BATCH_INTERVAL = "maxBatchInterval";
4814
4817
  var _DYN_BASE_TYPE = "baseType";
4815
4818
  var _DYN_SAMPLE_RATE = "sampleRate";
4816
- var _DYN__XHR_READY_STATE_CHA7 = "_xhrReadyStateChange";
4819
+ var _DYN__XHR_READY_STATE_CHA8 = "_xhrReadyStateChange";
4817
4820
  var _DYN__ON_ERROR = "_onError";
4818
4821
  var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
4819
4822
  var _DYN__ON_SUCCESS = "_onSuccess";
@@ -4934,7 +4937,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
4934
4937
  }
4935
4938
  }
4936
4939
  var EnvelopeCreator = {
4937
- Version: '3.0.6-nightly3.2311-04'
4940
+ Version: '3.0.6-nightly3.2312-02'
4938
4941
  };
4939
4942
  function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
4940
4943
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -5175,7 +5178,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5175
5178
  dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {
5176
5179
  var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ]);
5177
5180
  var notDeliveredItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5178
- var buffer = _self._set(bufferItems.concat(notDeliveredItems));
5181
+ var buffer = _self._set(bufferItems[_DYN_CONCAT ](notDeliveredItems));
5179
5182
  if (buffer[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
5180
5183
  buffer[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
5181
5184
  }
@@ -5202,7 +5205,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5202
5205
  _setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET ]())));
5203
5206
  var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5204
5207
  if (sentElements instanceof Array && payload instanceof Array) {
5205
- sentElements = sentElements.concat(payload);
5208
+ sentElements = sentElements[_DYN_CONCAT ](payload);
5206
5209
  if (sentElements[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
5207
5210
  _throwInternal(logger, 1 , 67 , "Sent buffer reached its maximum size: " + sentElements[_DYN_LENGTH ], true);
5208
5211
  sentElements[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
@@ -5440,7 +5443,7 @@ var HashCodeScoreGenerator = /** @class */ (function () {
5440
5443
  return 0;
5441
5444
  }
5442
5445
  while (input[_DYN_LENGTH ] < MIN_INPUT_LENGTH) {
5443
- input = input.concat(input);
5446
+ input = input[_DYN_CONCAT ](input);
5444
5447
  }
5445
5448
  var hash = 5381;
5446
5449
  for (var i = 0; i < input[_DYN_LENGTH ]; ++i) {
@@ -5521,6 +5524,17 @@ function _getResponseText(xhr) {
5521
5524
  function isOverrideFn(httpXHROverride) {
5522
5525
  return httpXHROverride && httpXHROverride[_DYN_SEND_POST ];
5523
5526
  }
5527
+ function _prependTransports(theTransports, newTransports) {
5528
+ if (newTransports) {
5529
+ if (isNumber(newTransports)) {
5530
+ theTransports = [newTransports][_DYN_CONCAT ](theTransports);
5531
+ }
5532
+ else if (isArray(newTransports)) {
5533
+ theTransports = newTransports[_DYN_CONCAT ](theTransports);
5534
+ }
5535
+ }
5536
+ return theTransports;
5537
+ }
5524
5538
  var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
5525
5539
  endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
5526
5540
  },
@@ -5531,6 +5545,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
5531
5545
  _a[_DYN_ENABLE_SESSION_STORA5 ] = cfgDfBoolean(true),
5532
5546
  _a.isRetryDisabled = cfgDfBoolean(),
5533
5547
  _a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
5548
+ _a[_DYN_DISABLE_SEND_BEACON_7 ] = cfgDfBoolean(),
5534
5549
  _a.disableXhr = cfgDfBoolean(),
5535
5550
  _a[_DYN_ONUNLOAD_DISABLE_FET6 ] = cfgDfBoolean(),
5536
5551
  _a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
@@ -5543,6 +5558,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
5543
5558
  _a[_DYN_BUFFER_OVERRIDE ] = false,
5544
5559
  _a.httpXHROverride = { isVal: isOverrideFn, v: UNDEFINED_VALUE },
5545
5560
  _a[_DYN_ALWAYS_USE_XHR_OVERR4 ] = cfgDfBoolean(),
5561
+ _a.transports = UNDEFINED_VALUE,
5546
5562
  _a));
5547
5563
  function _chkSampling(value) {
5548
5564
  return !isNaN(value) && value > 0 && value <= 100;
@@ -5577,6 +5593,8 @@ var Sender = /** @class */ (function (_super) {
5577
5593
  var _orgEndpointUrl;
5578
5594
  var _maxBatchSizeInBytes;
5579
5595
  var _beaconSupported;
5596
+ var _beaconOnUnloadSupported;
5597
+ var _beaconNormalSupported;
5580
5598
  var _customHeaders;
5581
5599
  var _disableTelemetry;
5582
5600
  var _instrumentationKey;
@@ -5591,6 +5609,8 @@ var Sender = /** @class */ (function (_super) {
5591
5609
  var _disableXhr;
5592
5610
  var _fetchKeepAlive;
5593
5611
  var _xhrSend;
5612
+ var _fallbackSend;
5613
+ var _disableBeaconSplit;
5594
5614
  dynamicProto(Sender, _this, function (_self, _base) {
5595
5615
  _initDefaults();
5596
5616
  _self.pause = function () {
@@ -5671,6 +5691,8 @@ var Sender = /** @class */ (function (_super) {
5671
5691
  }
5672
5692
  _maxBatchSizeInBytes = senderConfig[_DYN_MAX_BATCH_SIZE_IN_BY1 ];
5673
5693
  _beaconSupported = (senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false || senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false) && isBeaconsSupported();
5694
+ _beaconOnUnloadSupported = senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 ] === false && isBeaconsSupported();
5695
+ _beaconNormalSupported = senderConfig[_DYN_IS_BEACON_API_DISABL3 ] === false && isBeaconsSupported();
5674
5696
  _alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 ];
5675
5697
  _disableXhr = !!senderConfig.disableXhr;
5676
5698
  var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE ];
@@ -5699,6 +5721,7 @@ var Sender = /** @class */ (function (_super) {
5699
5721
  _sessionStorageUsed = canUseSessionStorage;
5700
5722
  _bufferOverrideUsed = bufferOverride;
5701
5723
  _fetchKeepAlive = !senderConfig[_DYN_ONUNLOAD_DISABLE_FET6 ] && isFetchSupported(true);
5724
+ _disableBeaconSplit = !!senderConfig[_DYN_DISABLE_SEND_BEACON_7 ];
5702
5725
  _self._sample = new Sample(senderConfig.samplingPercentage, diagLog);
5703
5726
  _instrumentationKey = senderConfig[_DYN_INSTRUMENTATION_KEY ];
5704
5727
  if (!_validateInstrumentationKey(_instrumentationKey, config)) {
@@ -5717,14 +5740,15 @@ var Sender = /** @class */ (function (_super) {
5717
5740
  var customInterface = senderConfig.httpXHROverride;
5718
5741
  var httpInterface = null;
5719
5742
  var syncInterface = null;
5720
- httpInterface = _getSenderInterface([1 , 2 ], false);
5743
+ var theTransports = _prependTransports([3 , 1 , 2 ], senderConfig.transports);
5744
+ httpInterface = _getSenderInterface(theTransports, false);
5721
5745
  var xhrInterface = { sendPOST: _xhrSender };
5722
5746
  _xhrSend = function (payload, isAsync) {
5723
5747
  return _doSend(xhrInterface, payload, isAsync);
5724
5748
  };
5725
- if (!senderConfig[_DYN_IS_BEACON_API_DISABL3 ] && isBeaconsSupported()) {
5726
- httpInterface = _getSenderInterface([3 ], false);
5727
- }
5749
+ _fallbackSend = function (payload, isAsync) {
5750
+ return _doSend(xhrInterface, payload, isAsync, false);
5751
+ };
5728
5752
  httpInterface = _alwaysUseCustomSend ? customInterface : (httpInterface || customInterface || xhrInterface);
5729
5753
  _self[_DYN__SENDER ] = function (payload, isAsync) {
5730
5754
  return _doSend(httpInterface, payload, isAsync);
@@ -5732,8 +5756,13 @@ var Sender = /** @class */ (function (_super) {
5732
5756
  if (_fetchKeepAlive) {
5733
5757
  _syncUnloadSender = _fetchKeepAliveSender;
5734
5758
  }
5735
- syncInterface = _alwaysUseCustomSend ? customInterface : (_getSenderInterface([3 , 1 ], true) || customInterface);
5736
- if ((_alwaysUseCustomSend || !_syncUnloadSender) && syncInterface) {
5759
+ var syncTransports = _prependTransports([3 , 1 ], senderConfig[_DYN_UNLOAD_TRANSPORTS ]);
5760
+ if (!_fetchKeepAlive) {
5761
+ syncTransports = syncTransports.filter(function (transport) { return transport !== 2 ; });
5762
+ }
5763
+ syncInterface = _getSenderInterface(syncTransports, true);
5764
+ syncInterface = _alwaysUseCustomSend ? customInterface : (syncInterface || customInterface);
5765
+ if ((_alwaysUseCustomSend || senderConfig[_DYN_UNLOAD_TRANSPORTS ] || !_syncUnloadSender) && syncInterface) {
5737
5766
  _syncUnloadSender = function (payload, isAsync) {
5738
5767
  return _doSend(syncInterface, payload, isAsync);
5739
5768
  };
@@ -5811,7 +5840,7 @@ var Sender = /** @class */ (function (_super) {
5811
5840
  }
5812
5841
  _self.processNext(telemetryItem, itemCtx);
5813
5842
  };
5814
- _self[_DYN__XHR_READY_STATE_CHA7 ] = function (xhr, payload, countOfItemsInPayload) {
5843
+ _self[_DYN__XHR_READY_STATE_CHA8 ] = function (xhr, payload, countOfItemsInPayload) {
5815
5844
  if (xhr.readyState === 4) {
5816
5845
  _checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, _formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
5817
5846
  }
@@ -5925,7 +5954,7 @@ var Sender = /** @class */ (function (_super) {
5925
5954
  else if (transportType === 2 && isFetchSupported(syncSupport)) {
5926
5955
  sendPostFunc = _fetchSender;
5927
5956
  }
5928
- else if (isBeaconsSupported() && transportType === 3 ) {
5957
+ else if (transportType === 3 && (syncSupport ? _beaconOnUnloadSupported : _beaconNormalSupported)) {
5929
5958
  sendPostFunc = _beaconSender;
5930
5959
  }
5931
5960
  lp++;
@@ -5943,14 +5972,17 @@ var Sender = /** @class */ (function (_super) {
5943
5972
  }
5944
5973
  response && _self[_DYN__ON_ERROR ](payload, response);
5945
5974
  }
5946
- function _doSend(sendInterface, payload, isAsync) {
5975
+ function _doSend(sendInterface, payload, isAsync, markAsSent) {
5976
+ if (markAsSent === void 0) { markAsSent = true; }
5947
5977
  var onComplete = function (status, headers, response) {
5948
5978
  return _getOnComplete(payload, status, headers, response);
5949
5979
  };
5950
5980
  var payloadData = _getPayload(payload);
5951
5981
  var sendPostFunc = sendInterface && sendInterface[_DYN_SEND_POST ];
5952
5982
  if (sendPostFunc && payloadData) {
5953
- _self._buffer[_DYN_MARK_AS_SENT ](payload);
5983
+ if (markAsSent) {
5984
+ _self._buffer[_DYN_MARK_AS_SENT ](payload);
5985
+ }
5954
5986
  return sendPostFunc(payloadData, onComplete, !isAsync);
5955
5987
  }
5956
5988
  return null;
@@ -6055,45 +6087,46 @@ var Sender = /** @class */ (function (_super) {
6055
6087
  }
6056
6088
  }
6057
6089
  function _doUnloadSend(payload, isAsync) {
6058
- var onComplete = function (status, headers, response) {
6059
- return _getOnComplete(payload, status, headers, response);
6060
- };
6061
6090
  if (_syncUnloadSender) {
6062
6091
  _syncUnloadSender(payload, false);
6063
6092
  }
6064
6093
  else {
6065
6094
  var payloadData = _getPayload(payload);
6066
- _beaconSender(payloadData, onComplete);
6095
+ _beaconSender(payloadData);
6067
6096
  }
6068
6097
  }
6069
6098
  function _doBeaconSend(payload, oncomplete) {
6070
6099
  var nav = getNavigator();
6071
6100
  var url = _endpointUrl;
6072
- var plainTextBatch = new Blob([payload], { type: "text/plain;charset=UTF-8" });
6101
+ var buffer = _self[_DYN__BUFFER ];
6102
+ var batch = buffer[_DYN_BATCH_PAYLOADS ](payload);
6103
+ var plainTextBatch = new Blob([batch], { type: "text/plain;charset=UTF-8" });
6073
6104
  var queued = nav.sendBeacon(url, plainTextBatch);
6074
6105
  if (queued) {
6075
- oncomplete(200, {}, payload);
6106
+ _self._onSuccess(payload, payload[_DYN_LENGTH ]);
6076
6107
  }
6077
6108
  return queued;
6078
6109
  }
6079
6110
  function _beaconSender(payload, oncomplete, sync) {
6080
6111
  var internalPayload = payload;
6081
- var data = internalPayload && internalPayload[_DYN_DATA ];
6082
- if (isString(data) && data[_DYN_LENGTH ] > 0) {
6083
- if (!_doBeaconSend(data, oncomplete)) {
6084
- var droppedPayload = [];
6085
- var oriPayload = internalPayload[_DYN_ORI_PAYLOAD ];
6086
- if (oriPayload[_DYN_LENGTH ] > 0) {
6112
+ var data = internalPayload && internalPayload[_DYN_ORI_PAYLOAD ];
6113
+ if (isArray(data) && data[_DYN_LENGTH ] > 0) {
6114
+ if (!_doBeaconSend(data)) {
6115
+ if (!_disableBeaconSplit) {
6116
+ var droppedPayload = [];
6087
6117
  for (var lp = 0; lp < data[_DYN_LENGTH ]; lp++) {
6088
- var thePayload = payload[lp];
6089
- var batch = _self._buffer[_DYN_BATCH_PAYLOADS ](thePayload);
6090
- if (!_doBeaconSend(batch, oncomplete)) {
6118
+ var thePayload = data[lp];
6119
+ if (!_doBeaconSend([thePayload])) {
6091
6120
  droppedPayload[_DYN_PUSH ](thePayload);
6092
6121
  }
6093
6122
  }
6123
+ if (droppedPayload[_DYN_LENGTH ] > 0) {
6124
+ _fallbackSend && _fallbackSend(droppedPayload, true);
6125
+ _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
6126
+ }
6094
6127
  }
6095
- if (droppedPayload[_DYN_LENGTH ] > 0) {
6096
- _xhrSend && _xhrSend(droppedPayload, true);
6128
+ else {
6129
+ _fallbackSend && _fallbackSend(data, true);
6097
6130
  _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
6098
6131
  }
6099
6132
  }
@@ -6153,10 +6186,10 @@ var Sender = /** @class */ (function (_super) {
6153
6186
  _doFetchSender(payloadData, onComplete, true);
6154
6187
  }
6155
6188
  else if (isBeaconsSupported()) {
6156
- _beaconSender(payloadData, onComplete);
6189
+ _beaconSender(payloadData);
6157
6190
  }
6158
6191
  else {
6159
- _xhrSend && _xhrSend(payload, true);
6192
+ _fallbackSend && _fallbackSend(payload, true);
6160
6193
  _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with xhrSender.");
6161
6194
  }
6162
6195
  }
@@ -6411,7 +6444,9 @@ var Sender = /** @class */ (function (_super) {
6411
6444
  _namePrefix = UNDEFINED_VALUE;
6412
6445
  _disableXhr = false;
6413
6446
  _fetchKeepAlive = false;
6447
+ _disableBeaconSplit = false;
6414
6448
  _xhrSend = null;
6449
+ _fallbackSend = null;
6415
6450
  objDefine(_self, "_senderConfig", {
6416
6451
  g: function () {
6417
6452
  return objExtend({}, defaultAppInsightsChannelConfig);
@@ -6438,4 +6473,4 @@ var Sender = /** @class */ (function (_super) {
6438
6473
  exports.Sender = Sender;
6439
6474
 
6440
6475
  }));
6441
- //# sourceMappingURL=applicationinsights-channel-js.3.0.6-nightly3.2311-04.gbl.js.map
6476
+ //# sourceMappingURL=applicationinsights-channel-js.3.0.6-nightly3.2312-02.gbl.js.map