@microsoft/applicationinsights-channel-js 3.1.3-nightly3.240410-01 → 3.1.3-nightly3.240412-01

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.1.3-nightly3.240410-01.js → applicationinsights-channel-js.3.1.3-nightly3.240412-01.cjs.js} +178 -77
  2. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.cjs.js.map → applicationinsights-channel-js.3.1.3-nightly3.240412-01.cjs.js.map} +1 -1
  3. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.cjs.min.js → applicationinsights-channel-js.3.1.3-nightly3.240412-01.cjs.min.js} +3 -3
  4. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.cjs.min.js.map → applicationinsights-channel-js.3.1.3-nightly3.240412-01.cjs.min.js.map} +1 -1
  5. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.gbl.js → applicationinsights-channel-js.3.1.3-nightly3.240412-01.gbl.js} +180 -52
  6. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.gbl.js.map → applicationinsights-channel-js.3.1.3-nightly3.240412-01.gbl.js.map} +1 -1
  7. package/browser/es5/applicationinsights-channel-js.3.1.3-nightly3.240412-01.gbl.min.js +6 -0
  8. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.gbl.min.js.map → applicationinsights-channel-js.3.1.3-nightly3.240412-01.gbl.min.js.map} +1 -1
  9. package/browser/es5/applicationinsights-channel-js.3.1.3-nightly3.240412-01.integrity.json +66 -0
  10. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.cjs.js → applicationinsights-channel-js.3.1.3-nightly3.240412-01.js} +205 -50
  11. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.js.map → applicationinsights-channel-js.3.1.3-nightly3.240412-01.js.map} +1 -1
  12. package/browser/es5/applicationinsights-channel-js.3.1.3-nightly3.240412-01.min.js +6 -0
  13. package/browser/es5/{applicationinsights-channel-js.3.1.3-nightly3.240410-01.min.js.map → applicationinsights-channel-js.3.1.3-nightly3.240412-01.min.js.map} +1 -1
  14. package/browser/es5/applicationinsights-channel-js.3.cjs.js +177 -49
  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 +179 -51
  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 +179 -51
  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 +177 -49
  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 +98 -19
  36. package/dist-es5/SendBuffer.js.map +1 -1
  37. package/dist-es5/Sender.js +94 -35
  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 +6 -4
  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 +59 -22
  49. package/types/applicationinsights-channel-js.namespaced.d.ts +59 -22
  50. package/browser/es5/applicationinsights-channel-js.3.1.3-nightly3.240410-01.gbl.min.js +0 -6
  51. package/browser/es5/applicationinsights-channel-js.3.1.3-nightly3.240410-01.integrity.json +0 -66
  52. package/browser/es5/applicationinsights-channel-js.3.1.3-nightly3.240410-01.min.js +0 -6
@@ -0,0 +1,66 @@
1
+ {
2
+ "name": "applicationinsights-channel-js",
3
+ "version": "3.1.3-nightly3.240412-01",
4
+ "ext": {
5
+ "@cjs.js": {
6
+ "file": "applicationinsights-channel-js.3.1.3-nightly3.240412-01.cjs.js",
7
+ "type": "text/javascript; charset=utf-8",
8
+ "integrity": "sha256-SVUYf0MHBfTeH4W749OcH8D6LgnWVB9cm+3HhFf/Bsg= sha384-gGzbpAOR574TDs8abHu3jOTk1vFTbf1yhlfBwHXaw+a1nZ2zdEaPBCqP52TNL6df sha512-SJA4C4tw3hgRRUTgVIv/emtX0RPDXW3zM5KkMCQUI90L44J0IkI9xg2sYuUibOg4qDruNM+VovRmx1s3cqZoNg==",
9
+ "hashes": {
10
+ "sha256": "SVUYf0MHBfTeH4W749OcH8D6LgnWVB9cm+3HhFf/Bsg=",
11
+ "sha384": "gGzbpAOR574TDs8abHu3jOTk1vFTbf1yhlfBwHXaw+a1nZ2zdEaPBCqP52TNL6df",
12
+ "sha512": "SJA4C4tw3hgRRUTgVIv/emtX0RPDXW3zM5KkMCQUI90L44J0IkI9xg2sYuUibOg4qDruNM+VovRmx1s3cqZoNg=="
13
+ }
14
+ },
15
+ "@cjs.min.js": {
16
+ "file": "applicationinsights-channel-js.3.1.3-nightly3.240412-01.cjs.min.js",
17
+ "type": "text/javascript; charset=utf-8",
18
+ "integrity": "sha256-8ZeuXYpy8S8jqd+RORFCVGPom7IMIDxjxTdk9SPevWg= sha384-VAtVPWhWpmZEqKeP7AK46RAACGlZCv4imuRIchdzcEX/a0qKl4YorpIyFaEVakSt sha512-QwbdKo7iTnsnxbF1kwdhwx7Kr7F7X+kcA2N0noXZmsZD9uEIrtEizWIzakrBq6BnmRBXG/Mzn4FYVR3icMWu3A==",
19
+ "hashes": {
20
+ "sha256": "8ZeuXYpy8S8jqd+RORFCVGPom7IMIDxjxTdk9SPevWg=",
21
+ "sha384": "VAtVPWhWpmZEqKeP7AK46RAACGlZCv4imuRIchdzcEX/a0qKl4YorpIyFaEVakSt",
22
+ "sha512": "QwbdKo7iTnsnxbF1kwdhwx7Kr7F7X+kcA2N0noXZmsZD9uEIrtEizWIzakrBq6BnmRBXG/Mzn4FYVR3icMWu3A=="
23
+ }
24
+ },
25
+ "@gbl.js": {
26
+ "file": "applicationinsights-channel-js.3.1.3-nightly3.240412-01.gbl.js",
27
+ "type": "text/javascript; charset=utf-8",
28
+ "integrity": "sha256-IqnEQ9Hsi4upHtMEIMfB1fx2i8ZfzJBgvqSRbJIHDr0= sha384-p92q7MAAPdfj6xRKVvdfuD5n8Du3mU/0xS+6Zjky2VDUCNGeNLwRnJfDrm+etXM9 sha512-vs8Ef9j480MJKQZdsLb2HP02GKnaxH+NYD8bIW63lxw2mD8fMG51+8ioQDZL/INyd+/ljc4TI3bBn4wvQR9+ow==",
29
+ "hashes": {
30
+ "sha256": "IqnEQ9Hsi4upHtMEIMfB1fx2i8ZfzJBgvqSRbJIHDr0=",
31
+ "sha384": "p92q7MAAPdfj6xRKVvdfuD5n8Du3mU/0xS+6Zjky2VDUCNGeNLwRnJfDrm+etXM9",
32
+ "sha512": "vs8Ef9j480MJKQZdsLb2HP02GKnaxH+NYD8bIW63lxw2mD8fMG51+8ioQDZL/INyd+/ljc4TI3bBn4wvQR9+ow=="
33
+ }
34
+ },
35
+ "@gbl.min.js": {
36
+ "file": "applicationinsights-channel-js.3.1.3-nightly3.240412-01.gbl.min.js",
37
+ "type": "text/javascript; charset=utf-8",
38
+ "integrity": "sha256-TGxH0zkp5L05GQwJWztOF4DYzGQVNY3LKDQwnutcw5I= sha384-bQea9MaopGbnTADD87d684loDjFIsFc9ZyPSUDVqujAn9UreVfiib3WGD9yLRlAM sha512-6CfMEKWdUI3hVMcfoxJu0PIVB3sAfWd/ZppWNwpRTcUI8XWYMzy2gIPttOCCg6iyEyZuZHHjnN64jjF1Rmqcgg==",
39
+ "hashes": {
40
+ "sha256": "TGxH0zkp5L05GQwJWztOF4DYzGQVNY3LKDQwnutcw5I=",
41
+ "sha384": "bQea9MaopGbnTADD87d684loDjFIsFc9ZyPSUDVqujAn9UreVfiib3WGD9yLRlAM",
42
+ "sha512": "6CfMEKWdUI3hVMcfoxJu0PIVB3sAfWd/ZppWNwpRTcUI8XWYMzy2gIPttOCCg6iyEyZuZHHjnN64jjF1Rmqcgg=="
43
+ }
44
+ },
45
+ "@js": {
46
+ "file": "applicationinsights-channel-js.3.1.3-nightly3.240412-01.js",
47
+ "type": "text/javascript; charset=utf-8",
48
+ "integrity": "sha256-IXHxbLP3H5UI4O+5huH44Es6r9YWAsPrFCxjn+wnNLE= sha384-3vCWqXMDTQcFHDlPJnr7u1gQhUtUcrw4RKRVFfcDMdUQOYLPIugOVwNmLgfzswq3 sha512-Pag5Jhr4GoAAcZ5dwXIkVcl47glGlbtSft68W9sThqSv9lchjGm21dfb7igSr9FVwg+CAVvkQ105SLm6E3tTlQ==",
49
+ "hashes": {
50
+ "sha256": "IXHxbLP3H5UI4O+5huH44Es6r9YWAsPrFCxjn+wnNLE=",
51
+ "sha384": "3vCWqXMDTQcFHDlPJnr7u1gQhUtUcrw4RKRVFfcDMdUQOYLPIugOVwNmLgfzswq3",
52
+ "sha512": "Pag5Jhr4GoAAcZ5dwXIkVcl47glGlbtSft68W9sThqSv9lchjGm21dfb7igSr9FVwg+CAVvkQ105SLm6E3tTlQ=="
53
+ }
54
+ },
55
+ "@min.js": {
56
+ "file": "applicationinsights-channel-js.3.1.3-nightly3.240412-01.min.js",
57
+ "type": "text/javascript; charset=utf-8",
58
+ "integrity": "sha256-S6s2U8XChbsintj/dYe+d0xSY+KD8u65rvOtLPfy6JA= sha384-qXEplCA5hrni7vlVR67YfXKMinb/4AFmFlXJRj1q5WVySr3/8X1qETtalvyPR5wE sha512-vfJahms15MaJmXKu23DY3wY9wZj9kz7xuKhEyqPooFeS/cakABtNz8EPxNGXEZH+wJNDqI3jVDVmsAa0O8oHpg==",
59
+ "hashes": {
60
+ "sha256": "S6s2U8XChbsintj/dYe+d0xSY+KD8u65rvOtLPfy6JA=",
61
+ "sha384": "qXEplCA5hrni7vlVR67YfXKMinb/4AFmFlXJRj1q5WVySr3/8X1qETtalvyPR5wE",
62
+ "sha512": "vfJahms15MaJmXKu23DY3wY9wZj9kz7xuKhEyqPooFeS/cakABtNz8EPxNGXEZH+wJNDqI3jVDVmsAa0O8oHpg=="
63
+ }
64
+ }
65
+ }
66
+ }
@@ -1,7 +1,32 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Channel, 3.1.3-nightly3.240410-01
2
+ * Application Insights JavaScript SDK - Channel, 3.1.3-nightly3.240412-01
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_1_3_nightly3_240412_01", msMod="__ms$mod__";
11
+ var mods={}, modDetail=mods[modName]={}, ver="3.1.3-nightly3.240412-01";
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) {
5
30
  'use strict';
6
31
 
7
32
 
@@ -4459,6 +4484,20 @@ function utlSetSessionStorage(logger, name, data) {
4459
4484
  }
4460
4485
  return false;
4461
4486
  }
4487
+ function utlRemoveSessionStorage(logger, name) {
4488
+ var storage = _getSessionStorageObject();
4489
+ if (storage !== null) {
4490
+ try {
4491
+ storage[_DYN_REMOVE_ITEM ](name);
4492
+ return true;
4493
+ }
4494
+ catch (e) {
4495
+ _canUseSessionStorage = false;
4496
+ _throwInternal(logger, 2 , 6 , "Browser failed removal of session storage item. " + getExceptionName(e), { exception: dumpObj(e) });
4497
+ }
4498
+ }
4499
+ return false;
4500
+ }
4462
4501
 
4463
4502
  var Envelope = /** @class */ (function () {
4464
4503
  function Envelope(logger, data, name) {
@@ -5399,6 +5438,7 @@ var _DYN_ENQUEUE = "enqueue";
5399
5438
  var _DYN_COUNT = "count";
5400
5439
  var _DYN_EVENTS_LIMIT_IN_MEM = "eventsLimitInMem";
5401
5440
  var _DYN_PUSH = "push";
5441
+ var _DYN_ITEM = "item";
5402
5442
  var _DYN_EMIT_LINE_DELIMITED_0 = "emitLineDelimitedJson";
5403
5443
  var _DYN_CLEAR = "clear";
5404
5444
  var _DYN_CREATE_NEW = "createNew";
@@ -5407,6 +5447,7 @@ var _DYN_CLEAR_SENT = "clearSent";
5407
5447
  var _DYN_BUFFER_OVERRIDE = "bufferOverride";
5408
5448
  var _DYN__BUFFER__KEY = "BUFFER_KEY";
5409
5449
  var _DYN__SENT__BUFFER__KEY = "SENT_BUFFER_KEY";
5450
+ var _DYN_CONCAT = "concat";
5410
5451
  var _DYN__MAX__BUFFER__SIZE = "MAX_BUFFER_SIZE";
5411
5452
  var _DYN_TRIGGER_SEND = "triggerSend";
5412
5453
  var _DYN_DIAG_LOG = "diagLog";
@@ -5432,8 +5473,8 @@ var _DYN_SERIALIZE = "serialize";
5432
5473
  var _DYN__ON_ERROR = "_onError";
5433
5474
  var _DYN__ON_PARTIAL_SUCCESS = "_onPartialSuccess";
5434
5475
  var _DYN__ON_SUCCESS = "_onSuccess";
5435
- var _DYN_ITEMS_ACCEPTED = "itemsAccepted";
5436
5476
  var _DYN_ITEMS_RECEIVED = "itemsReceived";
5477
+ var _DYN_ITEMS_ACCEPTED = "itemsAccepted";
5437
5478
  var _DYN_ORI_PAYLOAD = "oriPayload";
5438
5479
  var _DYN_BASE_TYPE = "baseType";
5439
5480
  var _DYN_SAMPLE_RATE = "sampleRate";
@@ -5551,7 +5592,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
5551
5592
  }
5552
5593
  }
5553
5594
  var EnvelopeCreator = {
5554
- Version: '3.1.3-nightly3.240410-01'
5595
+ Version: '3.1.3-nightly3.240412-01'
5555
5596
  };
5556
5597
  function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
5557
5598
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -5704,6 +5745,7 @@ var BaseSendBuffer = /** @class */ (function () {
5704
5745
  function BaseSendBuffer(logger, config) {
5705
5746
  var _buffer = [];
5706
5747
  var _bufferFullMessageSent = false;
5748
+ var _maxRetryCnt = config.maxRetryCnt;
5707
5749
  this[_DYN__GET ] = function () {
5708
5750
  return _buffer;
5709
5751
  };
@@ -5720,7 +5762,14 @@ var BaseSendBuffer = /** @class */ (function () {
5720
5762
  }
5721
5763
  return;
5722
5764
  }
5765
+ payload.cnt = payload.cnt || 0;
5766
+ if (!isNullOrUndefined(_maxRetryCnt)) {
5767
+ if (payload.cnt > _maxRetryCnt) {
5768
+ return;
5769
+ }
5770
+ }
5723
5771
  _buffer[_DYN_PUSH ](payload);
5772
+ return;
5724
5773
  };
5725
5774
  _self[_DYN_COUNT ] = function () {
5726
5775
  return _buffer[_DYN_LENGTH ];
@@ -5728,7 +5777,7 @@ var BaseSendBuffer = /** @class */ (function () {
5728
5777
  _self.size = function () {
5729
5778
  var size = _buffer[_DYN_LENGTH ];
5730
5779
  for (var lp = 0; lp < _buffer[_DYN_LENGTH ]; lp++) {
5731
- size += _buffer[lp][_DYN_LENGTH ];
5780
+ size += (_buffer[lp].item)[_DYN_LENGTH ];
5732
5781
  }
5733
5782
  if (!config[_DYN_EMIT_LINE_DELIMITED_0 ]) {
5734
5783
  size += 2;
@@ -5742,11 +5791,15 @@ var BaseSendBuffer = /** @class */ (function () {
5742
5791
  _self.getItems = function () {
5743
5792
  return _buffer.slice(0);
5744
5793
  };
5745
- _self.batchPayloads = function (payload) {
5746
- if (payload && payload[_DYN_LENGTH ] > 0) {
5794
+ _self.batchPayloads = function (payloads) {
5795
+ if (payloads && payloads[_DYN_LENGTH ] > 0) {
5796
+ var payloadStr_1 = [];
5797
+ arrForEach(payloads, function (payload) {
5798
+ payloadStr_1[_DYN_PUSH ](payload[_DYN_ITEM ]);
5799
+ });
5747
5800
  var batch = config[_DYN_EMIT_LINE_DELIMITED_0 ] ?
5748
- payload.join("\n") :
5749
- "[" + payload.join(",") + "]";
5801
+ payloadStr_1.join("\n") :
5802
+ "[" + payloadStr_1.join(",") + "]";
5750
5803
  return batch;
5751
5804
  }
5752
5805
  return null;
@@ -5782,17 +5835,21 @@ var ArraySendBuffer = /** @class */ (function (_super) {
5782
5835
  ArraySendBuffer.__ieDyn=1;
5783
5836
  return ArraySendBuffer;
5784
5837
  }(BaseSendBuffer));
5838
+ var PREVIOUS_KEYS = ["AI_buffer", "AI_sentBuffer"];
5785
5839
  var SessionStorageSendBuffer = /** @class */ (function (_super) {
5786
5840
  __extendsFn(SessionStorageSendBuffer, _super);
5787
5841
  function SessionStorageSendBuffer(logger, config) {
5788
5842
  var _this = _super.call(this, logger, config) || this;
5789
5843
  var _bufferFullMessageSent = false;
5790
5844
  var _namePrefix = config === null || config === void 0 ? void 0 : config.namePrefix;
5791
- var _a = config[_DYN_BUFFER_OVERRIDE ] || { getItem: utlGetSessionStorage, setItem: utlSetSessionStorage }, getItem = _a.getItem, setItem = _a.setItem;
5845
+ var _b = config[_DYN_BUFFER_OVERRIDE ] || { getItem: utlGetSessionStorage, setItem: utlSetSessionStorage }, getItem = _b.getItem, setItem = _b.setItem;
5846
+ var _maxRetryCnt = config.maxRetryCnt;
5792
5847
  dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {
5793
5848
  var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ]);
5794
- var notDeliveredItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5795
- var buffer = _self._set(bufferItems.concat(notDeliveredItems));
5849
+ var itemsInSentBuffer = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5850
+ var previousItems = _getPreviousEvents();
5851
+ var notDeliveredItems = itemsInSentBuffer[_DYN_CONCAT ](previousItems);
5852
+ var buffer = _self._set(bufferItems[_DYN_CONCAT ](notDeliveredItems));
5796
5853
  if (buffer[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
5797
5854
  buffer[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
5798
5855
  }
@@ -5806,6 +5863,12 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5806
5863
  }
5807
5864
  return;
5808
5865
  }
5866
+ payload.cnt = payload.cnt || 0;
5867
+ if (!isNullOrUndefined(_maxRetryCnt)) {
5868
+ if (payload.cnt > _maxRetryCnt) {
5869
+ return;
5870
+ }
5871
+ }
5809
5872
  _base[_DYN_ENQUEUE ](payload);
5810
5873
  _setBuffer(SessionStorageSendBuffer.BUFFER_KEY, _self[_DYN__GET ]());
5811
5874
  };
@@ -5819,7 +5882,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5819
5882
  _setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY ], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET ]())));
5820
5883
  var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY ]);
5821
5884
  if (sentElements instanceof Array && payload instanceof Array) {
5822
- sentElements = sentElements.concat(payload);
5885
+ sentElements = sentElements[_DYN_CONCAT ](payload);
5823
5886
  if (sentElements[_DYN_LENGTH ] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ]) {
5824
5887
  _throwInternal(logger, 1 , 67 , "Sent buffer reached its maximum size: " + sentElements[_DYN_LENGTH ], true);
5825
5888
  sentElements[_DYN_LENGTH ] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE ];
@@ -5850,8 +5913,12 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5850
5913
  };
5851
5914
  function _removePayloadsFromBuffer(payloads, buffer) {
5852
5915
  var remaining = [];
5916
+ var payloadStr = [];
5917
+ arrForEach(payloads, function (payload) {
5918
+ payloadStr[_DYN_PUSH ](payload[_DYN_ITEM ]);
5919
+ });
5853
5920
  arrForEach(buffer, function (value) {
5854
- if (!isFunction(value) && arrIndexOf(payloads, value) === -1) {
5921
+ if (!isFunction(value) && arrIndexOf(payloadStr, value[_DYN_ITEM ]) === -1) {
5855
5922
  remaining[_DYN_PUSH ](value);
5856
5923
  }
5857
5924
  });
@@ -5859,9 +5926,12 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5859
5926
  }
5860
5927
  function _getBuffer(key) {
5861
5928
  var prefixedKey = key;
5929
+ prefixedKey = _namePrefix ? _namePrefix + "_" + prefixedKey : prefixedKey;
5930
+ return _getBufferBase(prefixedKey);
5931
+ }
5932
+ function _getBufferBase(key) {
5862
5933
  try {
5863
- prefixedKey = _namePrefix ? _namePrefix + "_" + prefixedKey : prefixedKey;
5864
- var bufferJson = getItem(logger, prefixedKey);
5934
+ var bufferJson = getItem(logger, key);
5865
5935
  if (bufferJson) {
5866
5936
  var buffer_1 = getJSON().parse(bufferJson);
5867
5937
  if (isString(buffer_1)) {
@@ -5873,7 +5943,7 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5873
5943
  }
5874
5944
  }
5875
5945
  catch (e) {
5876
- _throwInternal(logger, 1 , 42 , " storage key: " + prefixedKey + ", " + getExceptionName(e), { exception: dumpObj(e) });
5946
+ _throwInternal(logger, 1 , 42 , " storage key: " + key + ", " + getExceptionName(e), { exception: dumpObj(e) });
5877
5947
  }
5878
5948
  return [];
5879
5949
  }
@@ -5889,11 +5959,51 @@ var SessionStorageSendBuffer = /** @class */ (function (_super) {
5889
5959
  _throwInternal(logger, 2 , 41 , " storage key: " + prefixedKey + ", " + getExceptionName(e) + ". Buffer cleared", { exception: dumpObj(e) });
5890
5960
  }
5891
5961
  }
5962
+ function _getPreviousEvents() {
5963
+ var items = [];
5964
+ try {
5965
+ arrForEach(PREVIOUS_KEYS, function (key) {
5966
+ var events = _getItemsFromPreviousKey(key);
5967
+ items = items[_DYN_CONCAT ](events);
5968
+ if (_namePrefix) {
5969
+ var prefixedKey = _namePrefix + "_" + key;
5970
+ var prefixEvents = _getItemsFromPreviousKey(prefixedKey);
5971
+ items = items[_DYN_CONCAT ](prefixEvents);
5972
+ }
5973
+ });
5974
+ return items;
5975
+ }
5976
+ catch (e) {
5977
+ _throwInternal(logger, 2 , 41 , "Transfer events from previous buffers: " + getExceptionName(e) + ". previous Buffer items can not be removed", { exception: dumpObj(e) });
5978
+ }
5979
+ return [];
5980
+ }
5981
+ function _getItemsFromPreviousKey(key) {
5982
+ try {
5983
+ var items = _getBufferBase(key);
5984
+ var transFormedItems_1 = [];
5985
+ arrForEach(items, function (item) {
5986
+ var internalItem = {
5987
+ item: item,
5988
+ cnt: 0
5989
+ };
5990
+ transFormedItems_1[_DYN_PUSH ](internalItem);
5991
+ });
5992
+ utlRemoveSessionStorage(logger, key);
5993
+ return transFormedItems_1;
5994
+ }
5995
+ catch (e) {
5996
+ }
5997
+ return [];
5998
+ }
5892
5999
  });
5893
6000
  return _this;
5894
6001
  }
5895
- SessionStorageSendBuffer.BUFFER_KEY = "AI_buffer";
5896
- SessionStorageSendBuffer.SENT_BUFFER_KEY = "AI_sentBuffer";
6002
+ var _a;
6003
+ _a = SessionStorageSendBuffer;
6004
+ SessionStorageSendBuffer.VERSION = "_1";
6005
+ SessionStorageSendBuffer.BUFFER_KEY = "AI_buffer" + _a.VERSION;
6006
+ SessionStorageSendBuffer.SENT_BUFFER_KEY = "AI_sentBuffer" + _a.VERSION;
5897
6007
  SessionStorageSendBuffer.MAX_BUFFER_SIZE = 2000;
5898
6008
  return SessionStorageSendBuffer;
5899
6009
  }(BaseSendBuffer));
@@ -6052,7 +6162,7 @@ var HashCodeScoreGenerator = /** @class */ (function () {
6052
6162
  return 0;
6053
6163
  }
6054
6164
  while (input[_DYN_LENGTH ] < MIN_INPUT_LENGTH) {
6055
- input = input.concat(input);
6165
+ input = input[_DYN_CONCAT ](input);
6056
6166
  }
6057
6167
  var hash = 5381;
6058
6168
  for (var i = 0; i < input[_DYN_LENGTH ]; ++i) {
@@ -6159,6 +6269,7 @@ var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
6159
6269
  _a[_DYN_ALWAYS_USE_XHR_OVERR4 ] = cfgDfBoolean(),
6160
6270
  _a.transports = UNDEFINED_VALUE,
6161
6271
  _a.retryCodes = UNDEFINED_VALUE,
6272
+ _a.maxRetryCnt = { isVal: isNumber, v: 10 },
6162
6273
  _a));
6163
6274
  function _chkSampling(value) {
6164
6275
  return !isNaN(value) && value > 0 && value <= 100;
@@ -6388,6 +6499,7 @@ var Sender = /** @class */ (function (_super) {
6388
6499
  }));
6389
6500
  };
6390
6501
  _self.processTelemetry = function (telemetryItem, itemCtx) {
6502
+ var _a;
6391
6503
  itemCtx = _self._getTelCtx(itemCtx);
6392
6504
  var diagLogger = itemCtx[_DYN_DIAG_LOG ]();
6393
6505
  try {
@@ -6402,7 +6514,12 @@ var Sender = /** @class */ (function (_super) {
6402
6514
  var payload = _serializer[_DYN_SERIALIZE ](aiEnvelope);
6403
6515
  var buffer = _self[_DYN__BUFFER ];
6404
6516
  _checkMaxSize(payload);
6405
- buffer[_DYN_ENQUEUE ](payload);
6517
+ var payloadItem = (_a = {},
6518
+ _a[_DYN_ITEM ] = payload,
6519
+ _a.cnt = 0
6520
+ ,
6521
+ _a);
6522
+ buffer[_DYN_ENQUEUE ](payloadItem);
6406
6523
  _setupTimer();
6407
6524
  }
6408
6525
  catch (e) {
@@ -6414,6 +6531,9 @@ var Sender = /** @class */ (function (_super) {
6414
6531
  return !_paused && _syncFetchPayload === 0 && _self._buffer[_DYN_COUNT ]() === 0;
6415
6532
  };
6416
6533
  _self._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) {
6534
+ if (_isStringArr(payload)) {
6535
+ return;
6536
+ }
6417
6537
  return _xhrReadyStateChange(xhr, payload, countOfItemsInPayload);
6418
6538
  };
6419
6539
  _self[_DYN_TRIGGER_SEND ] = function (async, forcedSender, sendReason) {
@@ -6469,40 +6589,27 @@ var Sender = /** @class */ (function (_super) {
6469
6589
  _initDefaults();
6470
6590
  };
6471
6591
  _self[_DYN__ON_ERROR ] = function (payload, message, event) {
6472
- _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 26 , "Failed to send telemetry.", { message: message });
6473
- _self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
6592
+ if (_isStringArr(payload)) {
6593
+ return;
6594
+ }
6595
+ return _onError(payload, message);
6474
6596
  };
6475
6597
  _self[_DYN__ON_PARTIAL_SUCCESS ] = function (payload, results) {
6476
- var failed = [];
6477
- var retry = [];
6478
- var errors = results.errors.reverse();
6479
- for (var _i = 0, errors_1 = errors; _i < errors_1.length; _i++) {
6480
- var error = errors_1[_i];
6481
- var extracted = payload.splice(error.index, 1)[0];
6482
- if (_isRetriable(error.statusCode)) {
6483
- retry[_DYN_PUSH ](extracted);
6484
- }
6485
- else {
6486
- failed[_DYN_PUSH ](extracted);
6487
- }
6488
- }
6489
- if (payload[_DYN_LENGTH ] > 0) {
6490
- _self[_DYN__ON_SUCCESS ](payload, results[_DYN_ITEMS_ACCEPTED ]);
6491
- }
6492
- if (failed[_DYN_LENGTH ] > 0) {
6493
- _self[_DYN__ON_ERROR ](failed, formatErrorMessageXhr(null, ["partial success", results[_DYN_ITEMS_ACCEPTED ], "of", results.itemsReceived].join(" ")));
6494
- }
6495
- if (retry[_DYN_LENGTH ] > 0) {
6496
- _resendPayload(retry);
6497
- _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , "Partial success. " +
6498
- "Delivered: " + payload[_DYN_LENGTH ] + ", Failed: " + failed[_DYN_LENGTH ] +
6499
- ". Will retry to send " + retry[_DYN_LENGTH ] + " our of " + results[_DYN_ITEMS_RECEIVED ] + " items");
6598
+ if (_isStringArr(payload)) {
6599
+ return;
6500
6600
  }
6601
+ return _onPartialSuccess(payload, results);
6501
6602
  };
6502
6603
  _self[_DYN__ON_SUCCESS ] = function (payload, countOfItemsInPayload) {
6503
- _self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
6604
+ if (_isStringArr(payload)) {
6605
+ return;
6606
+ }
6607
+ return _onSuccess(payload);
6504
6608
  };
6505
6609
  _self._xdrOnLoad = function (xdr, payload) {
6610
+ if (_isStringArr(payload)) {
6611
+ return;
6612
+ }
6506
6613
  return _xdrOnLoad(xdr, payload);
6507
6614
  };
6508
6615
  function _xdrOnLoad(xdr, payload) {
@@ -6513,7 +6620,7 @@ var Sender = /** @class */ (function (_super) {
6513
6620
  }
6514
6621
  else {
6515
6622
  var results = parseResponse(responseText);
6516
- if (results && results.itemsReceived && results.itemsReceived > results[_DYN_ITEMS_ACCEPTED ]
6623
+ if (results && results[_DYN_ITEMS_RECEIVED ] && results[_DYN_ITEMS_RECEIVED ] > results[_DYN_ITEMS_ACCEPTED ]
6517
6624
  && !_isRetryDisabled) {
6518
6625
  _self[_DYN__ON_PARTIAL_SUCCESS ](payload, results);
6519
6626
  }
@@ -6571,6 +6678,40 @@ var Sender = /** @class */ (function (_super) {
6571
6678
  _checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);
6572
6679
  }
6573
6680
  }
6681
+ function _onError(payload, message, event) {
6682
+ _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 26 , "Failed to send telemetry.", { message: message });
6683
+ _self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
6684
+ }
6685
+ function _onPartialSuccess(payload, results) {
6686
+ var failed = [];
6687
+ var retry = [];
6688
+ var errors = results.errors.reverse();
6689
+ for (var _i = 0, errors_1 = errors; _i < errors_1.length; _i++) {
6690
+ var error = errors_1[_i];
6691
+ var extracted = payload.splice(error.index, 1)[0];
6692
+ if (_isRetriable(error.statusCode)) {
6693
+ retry[_DYN_PUSH ](extracted);
6694
+ }
6695
+ else {
6696
+ failed[_DYN_PUSH ](extracted);
6697
+ }
6698
+ }
6699
+ if (payload[_DYN_LENGTH ] > 0) {
6700
+ _self[_DYN__ON_SUCCESS ](payload, results[_DYN_ITEMS_ACCEPTED ]);
6701
+ }
6702
+ if (failed[_DYN_LENGTH ] > 0) {
6703
+ _self[_DYN__ON_ERROR ](failed, formatErrorMessageXhr(null, ["partial success", results[_DYN_ITEMS_ACCEPTED ], "of", results.itemsReceived].join(" ")));
6704
+ }
6705
+ if (retry[_DYN_LENGTH ] > 0) {
6706
+ _resendPayload(retry);
6707
+ _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , "Partial success. " +
6708
+ "Delivered: " + payload[_DYN_LENGTH ] + ", Failed: " + failed[_DYN_LENGTH ] +
6709
+ ". Will retry to send " + retry[_DYN_LENGTH ] + " our of " + results[_DYN_ITEMS_RECEIVED ] + " items");
6710
+ }
6711
+ }
6712
+ function _onSuccess(payload, countOfItemsInPayload) {
6713
+ _self._buffer && _self._buffer[_DYN_CLEAR_SENT ](payload);
6714
+ }
6574
6715
  function _getPayloadArr(payload) {
6575
6716
  try {
6576
6717
  if (payload) {
@@ -6838,12 +6979,22 @@ var Sender = /** @class */ (function (_super) {
6838
6979
  _throwInternal(_self[_DYN_DIAG_LOG ](), 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
6839
6980
  }
6840
6981
  }
6982
+ function _isStringArr(arr) {
6983
+ try {
6984
+ if (arr && arr[_DYN_LENGTH ]) {
6985
+ return (isString(arr[0]));
6986
+ }
6987
+ }
6988
+ catch (e) {
6989
+ }
6990
+ return null;
6991
+ }
6841
6992
  function _fetchKeepAliveSender(payload, isAsync) {
6842
6993
  var transport = null;
6843
6994
  if (isArray(payload)) {
6844
6995
  var payloadSize = payload[_DYN_LENGTH ];
6845
6996
  for (var lp = 0; lp < payload[_DYN_LENGTH ]; lp++) {
6846
- payloadSize += payload[lp][_DYN_LENGTH ];
6997
+ payloadSize += payload[lp].item[_DYN_LENGTH ];
6847
6998
  }
6848
6999
  var syncFetchPayload = _sendPostMgr.getSyncFetchPayload();
6849
7000
  if ((syncFetchPayload + payloadSize) <= FetchSyncRequestSizeLimitBytes) {
@@ -6871,6 +7022,8 @@ var Sender = /** @class */ (function (_super) {
6871
7022
  _consecutiveErrors++;
6872
7023
  for (var _i = 0, payload_1 = payload; _i < payload_1.length; _i++) {
6873
7024
  var item = payload_1[_i];
7025
+ item.cnt = item.cnt || 0;
7026
+ item.cnt++;
6874
7027
  buffer[_DYN_ENQUEUE ](item);
6875
7028
  }
6876
7029
  _setRetryTime(linearFactor);
@@ -7003,4 +7156,6 @@ var Sender = /** @class */ (function (_super) {
7003
7156
  }(BaseTelemetryPlugin));
7004
7157
 
7005
7158
  exports.Sender = Sender;
7006
- //# sourceMappingURL=applicationinsights-channel-js.3.1.3-nightly3.240410-01.cjs.js.map
7159
+
7160
+ }));
7161
+ //# sourceMappingURL=applicationinsights-channel-js.3.1.3-nightly3.240412-01.js.map