@microsoft/applicationinsights-core-js 3.3.10-nightly3.2507-28 → 3.3.10-nightly3.2508-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 (104) hide show
  1. package/browser/es5/applicationinsights-core-js.cjs.js +132 -49
  2. package/browser/es5/applicationinsights-core-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-core-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-core-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-core-js.gbl.js +134 -51
  6. package/browser/es5/applicationinsights-core-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-core-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-core-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-core-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-core-js.js +134 -51
  11. package/browser/es5/applicationinsights-core-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-core-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-core-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-core-js.js +132 -49
  15. package/dist/es5/applicationinsights-core-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-core-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-core-js.min.js.map +1 -1
  18. package/dist-es5/Config/ConfigDefaultHelpers.js +1 -1
  19. package/dist-es5/Config/ConfigDefaults.js +1 -1
  20. package/dist-es5/Config/DynamicConfig.js +1 -1
  21. package/dist-es5/Config/DynamicProperty.js +1 -1
  22. package/dist-es5/Config/DynamicState.js +1 -1
  23. package/dist-es5/Config/DynamicSupport.js +1 -1
  24. package/dist-es5/Config/IConfigDefaults.js +1 -1
  25. package/dist-es5/Config/IDynamicConfigHandler.js +1 -1
  26. package/dist-es5/Config/IDynamicPropertyHandler.js +1 -1
  27. package/dist-es5/Config/IDynamicWatcher.js +1 -1
  28. package/dist-es5/Config/_IDynamicConfigHandlerState.js +1 -1
  29. package/dist-es5/JavaScriptSDK/AggregationError.js +1 -1
  30. package/dist-es5/JavaScriptSDK/AppInsightsCore.js +1 -1
  31. package/dist-es5/JavaScriptSDK/AsyncUtils.js +1 -1
  32. package/dist-es5/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  33. package/dist-es5/JavaScriptSDK/Constants.js +1 -1
  34. package/dist-es5/JavaScriptSDK/CookieMgr.js +172 -58
  35. package/dist-es5/JavaScriptSDK/CookieMgr.js.map +1 -1
  36. package/dist-es5/JavaScriptSDK/CoreUtils.js +1 -1
  37. package/dist-es5/JavaScriptSDK/DataCacheHelper.js +2 -2
  38. package/dist-es5/JavaScriptSDK/DataCacheHelper.js.map +1 -1
  39. package/dist-es5/JavaScriptSDK/DbgExtensionUtils.js +1 -1
  40. package/dist-es5/JavaScriptSDK/DiagnosticLogger.js +1 -1
  41. package/dist-es5/JavaScriptSDK/EnvUtils.js +1 -1
  42. package/dist-es5/JavaScriptSDK/EventHelpers.js +1 -1
  43. package/dist-es5/JavaScriptSDK/HelperFuncs.js +1 -1
  44. package/dist-es5/JavaScriptSDK/InstrumentHooks.js +1 -1
  45. package/dist-es5/JavaScriptSDK/InternalConstants.js +1 -1
  46. package/dist-es5/JavaScriptSDK/NotificationManager.js +1 -1
  47. package/dist-es5/JavaScriptSDK/PerfManager.js +1 -1
  48. package/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js +1 -1
  49. package/dist-es5/JavaScriptSDK/RandomHelper.js +1 -1
  50. package/dist-es5/JavaScriptSDK/ResponseHelpers.js +1 -1
  51. package/dist-es5/JavaScriptSDK/SenderPostManager.js +1 -1
  52. package/dist-es5/JavaScriptSDK/StatsBeat.js +1 -1
  53. package/dist-es5/JavaScriptSDK/TelemetryHelpers.js +1 -1
  54. package/dist-es5/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  55. package/dist-es5/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  56. package/dist-es5/JavaScriptSDK/UnloadHookContainer.js +1 -1
  57. package/dist-es5/JavaScriptSDK/W3cTraceParent.js +1 -1
  58. package/dist-es5/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  59. package/dist-es5/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
  60. package/dist-es5/JavaScriptSDK.Enums/FeatureOptInEnums.js +1 -1
  61. package/dist-es5/JavaScriptSDK.Enums/InitActiveStatusEnum.js +1 -1
  62. package/dist-es5/JavaScriptSDK.Enums/LoggingEnums.js +1 -1
  63. package/dist-es5/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  64. package/dist-es5/JavaScriptSDK.Enums/StatsType.js +1 -1
  65. package/dist-es5/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  66. package/dist-es5/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  67. package/dist-es5/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  68. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  69. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControlsHost.js +1 -1
  70. package/dist-es5/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
  71. package/dist-es5/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  72. package/dist-es5/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  73. package/dist-es5/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  74. package/dist-es5/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  75. package/dist-es5/JavaScriptSDK.Interfaces/IExceptionConfig.js +1 -1
  76. package/dist-es5/JavaScriptSDK.Interfaces/IFeatureOptIn.js +1 -1
  77. package/dist-es5/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  78. package/dist-es5/JavaScriptSDK.Interfaces/INetworkStatsbeat.js +1 -1
  79. package/dist-es5/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  80. package/dist-es5/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  81. package/dist-es5/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  82. package/dist-es5/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  83. package/dist-es5/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  84. package/dist-es5/JavaScriptSDK.Interfaces/ISenderPostManager.js +1 -1
  85. package/dist-es5/JavaScriptSDK.Interfaces/IStatsBeat.js +1 -1
  86. package/dist-es5/JavaScriptSDK.Interfaces/IStatsEventData.js +1 -1
  87. package/dist-es5/JavaScriptSDK.Interfaces/IStatsMgr.js +1 -1
  88. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  89. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  90. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  91. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  92. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  93. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  94. package/dist-es5/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  95. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  96. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  97. package/dist-es5/JavaScriptSDK.Interfaces/IXDomainRequest.js +1 -1
  98. package/dist-es5/JavaScriptSDK.Interfaces/IXHROverride.js +1 -1
  99. package/dist-es5/__DynamicConstants.js +4 -4
  100. package/dist-es5/__DynamicConstants.js.map +1 -1
  101. package/dist-es5/applicationinsights-core-js.js +1 -1
  102. package/package.json +1 -1
  103. package/types/applicationinsights-core-js.d.ts +9 -1
  104. package/types/applicationinsights-core-js.namespaced.d.ts +9 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.3.10-nightly3.2507-28
2
+ * Application Insights JavaScript SDK - Core, 3.3.10-nightly3.2508-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  'use strict';
@@ -2658,7 +2658,7 @@ function newId(maxLength) {
2658
2658
  return result;
2659
2659
  }
2660
2660
 
2661
- var version = '3.3.10-nightly3.2507-28';
2661
+ var version = '3.3.10-nightly3.2508-02';
2662
2662
  var instanceName = "." + newId(6);
2663
2663
  var _dataUid = 0;
2664
2664
  function _canAcceptData(target) {
@@ -3662,6 +3662,7 @@ var rootDefaultConfig = (_a$2 = {
3662
3662
  _b.enabled = UNDEFINED_VALUE,
3663
3663
  _b.ignoreCookies = UNDEFINED_VALUE,
3664
3664
  _b.blockedCookies = UNDEFINED_VALUE,
3665
+ _b.disableCookieDefer = false,
3665
3666
  _b)),
3666
3667
  cookieDomain: UNDEFINED_VALUE,
3667
3668
  cookiePath: UNDEFINED_VALUE
@@ -3741,16 +3742,99 @@ function createCookieMgr(rootConfig, logger) {
3741
3742
  var _getCookieFn;
3742
3743
  var _setCookieFn;
3743
3744
  var _delCookieFn;
3745
+ var _pendingCookies = [];
3746
+ function _formatDeletionValue(path) {
3747
+ var _a;
3748
+ var values = (_a = {},
3749
+ _a[STR_PATH] = path ? path : "/",
3750
+ _a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
3751
+ _a);
3752
+ if (!isIE()) {
3753
+ values["max-age"] = "0";
3754
+ }
3755
+ return _formatCookieValue(STR_EMPTY$1, values);
3756
+ }
3757
+ function _formatSetCookieValue(value, maxAgeSec, domain, path) {
3758
+ var values = {};
3759
+ var theValue = strTrim(value || STR_EMPTY$1);
3760
+ var idx = strIndexOf(theValue, ";");
3761
+ if (idx !== -1) {
3762
+ theValue = strTrim(strLeft(value, idx));
3763
+ values = _extractParts(strSubstring(value, idx + 1));
3764
+ }
3765
+ setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);
3766
+ if (!isNullOrUndefined(maxAgeSec)) {
3767
+ var _isIE = isIE();
3768
+ if (isUndefined(values[strExpires])) {
3769
+ var nowMs = utcNow();
3770
+ var expireMs = nowMs + (maxAgeSec * 1000);
3771
+ if (expireMs > 0) {
3772
+ var expiry = new Date();
3773
+ expiry.setTime(expireMs);
3774
+ setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY$1, isTruthy);
3775
+ }
3776
+ }
3777
+ if (!_isIE) {
3778
+ setValue(values, "max-age", STR_EMPTY$1 + maxAgeSec, null, isUndefined);
3779
+ }
3780
+ }
3781
+ var location = getLocation();
3782
+ if (location && location.protocol === "https:") {
3783
+ setValue(values, "secure", null, null, isUndefined);
3784
+ if (_allowUaSameSite === null) {
3785
+ _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
3786
+ }
3787
+ if (_allowUaSameSite) {
3788
+ setValue(values, "SameSite", "None", null, isUndefined);
3789
+ }
3790
+ }
3791
+ setValue(values, STR_PATH, path || _path, null, isUndefined);
3792
+ return _formatCookieValue(theValue, values);
3793
+ }
3794
+ function _removePendingCookie(name) {
3795
+ if (_pendingCookies) {
3796
+ for (var i = _pendingCookies[_DYN_LENGTH ] - 1; i >= 0; i--) {
3797
+ if (_pendingCookies[i].n === name) {
3798
+ _pendingCookies[_DYN_SPLICE ](i, 1);
3799
+ }
3800
+ }
3801
+ }
3802
+ }
3803
+ function _flushPendingCookies() {
3804
+ if (areCookiesSupported(logger) && _pendingCookies) {
3805
+ arrForEach(_pendingCookies, function (pendingData) {
3806
+ if (!_isBlockedCookie(cookieMgrConfig, pendingData.n)) {
3807
+ if (pendingData.o === 0 ) {
3808
+ _setCookieFn(pendingData.n, pendingData.v);
3809
+ }
3810
+ else if (pendingData.o === 1 ) {
3811
+ _delCookieFn(pendingData.n, pendingData.v);
3812
+ }
3813
+ }
3814
+ });
3815
+ _pendingCookies = [];
3816
+ }
3817
+ }
3744
3818
  rootConfig = createDynamicConfig(rootConfig || _globalCookieConfig, null, logger).cfg;
3745
3819
  unloadHandler = onConfigChange(rootConfig, function (details) {
3746
3820
  details.setDf(details.cfg, rootDefaultConfig);
3747
3821
  cookieMgrConfig = details.ref(details.cfg, "cookieCfg");
3748
3822
  _path = cookieMgrConfig[STR_PATH ] || "/";
3749
3823
  _domain = cookieMgrConfig[STR_DOMAIN ];
3824
+ if (cookieMgrConfig.disableCookieDefer) {
3825
+ _pendingCookies = null;
3826
+ }
3827
+ else if (_pendingCookies === null) {
3828
+ _pendingCookies = [];
3829
+ }
3830
+ var wasEnabled = _enabled;
3750
3831
  _enabled = _isCfgEnabled(rootConfig, cookieMgrConfig) !== false;
3751
3832
  _getCookieFn = cookieMgrConfig.getCookie || _getCookieValue;
3752
3833
  _setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;
3753
3834
  _delCookieFn = cookieMgrConfig.delCookie || _setCookieValue;
3835
+ if (!wasEnabled && _enabled && _pendingCookies) {
3836
+ _flushPendingCookies();
3837
+ }
3754
3838
  }, logger);
3755
3839
  var cookieMgr = {
3756
3840
  isEnabled: function () {
@@ -3762,55 +3846,52 @@ function createCookieMgr(rootConfig, logger) {
3762
3846
  return enabled;
3763
3847
  },
3764
3848
  setEnabled: function (value) {
3765
- _enabled = value !== false;
3766
3849
  cookieMgrConfig[_DYN_ENABLED ] = value;
3850
+ if (!isUndefined(rootConfig[strDisableCookiesUsage])) {
3851
+ rootConfig[strDisableCookiesUsage] = !value;
3852
+ }
3767
3853
  },
3768
3854
  set: function (name, value, maxAgeSec, domain, path) {
3769
3855
  var result = false;
3770
- if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {
3771
- var values = {};
3772
- var theValue = strTrim(value || STR_EMPTY$1);
3773
- var idx = strIndexOf(theValue, ";");
3774
- if (idx !== -1) {
3775
- theValue = strTrim(strLeft(value, idx));
3776
- values = _extractParts(strSubstring(value, idx + 1));
3777
- }
3778
- setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);
3779
- if (!isNullOrUndefined(maxAgeSec)) {
3780
- var _isIE = isIE();
3781
- if (isUndefined(values[strExpires])) {
3782
- var nowMs = utcNow();
3783
- var expireMs = nowMs + (maxAgeSec * 1000);
3784
- if (expireMs > 0) {
3785
- var expiry = new Date();
3786
- expiry.setTime(expireMs);
3787
- setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY$1, isTruthy);
3788
- }
3789
- }
3790
- if (!_isIE) {
3791
- setValue(values, "max-age", STR_EMPTY$1 + maxAgeSec, null, isUndefined);
3792
- }
3856
+ var isBlocked = _isBlockedCookie(cookieMgrConfig, name);
3857
+ if (!isBlocked) {
3858
+ var cookieValue = _formatSetCookieValue(value, maxAgeSec, domain, path);
3859
+ if (_isMgrEnabled(cookieMgr)) {
3860
+ _setCookieFn(name, cookieValue);
3861
+ result = true;
3793
3862
  }
3794
- var location_1 = getLocation();
3795
- if (location_1 && location_1.protocol === "https:") {
3796
- setValue(values, "secure", null, null, isUndefined);
3797
- if (_allowUaSameSite === null) {
3798
- _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
3799
- }
3800
- if (_allowUaSameSite) {
3801
- setValue(values, "SameSite", "None", null, isUndefined);
3802
- }
3863
+ else if (_pendingCookies) {
3864
+ _removePendingCookie(name);
3865
+ _pendingCookies[_DYN_PUSH ]({
3866
+ n: name,
3867
+ o: 0 ,
3868
+ v: cookieValue
3869
+ });
3870
+ result = true;
3803
3871
  }
3804
- setValue(values, STR_PATH, path || _path, null, isUndefined);
3805
- _setCookieFn(name, _formatCookieValue(theValue, values));
3806
- result = true;
3807
3872
  }
3808
3873
  return result;
3809
3874
  },
3810
3875
  get: function (name) {
3811
3876
  var value = STR_EMPTY$1;
3812
- if (_isMgrEnabled(cookieMgr) && !_isIgnoredCookie(cookieMgrConfig, name)) {
3813
- value = _getCookieFn(name);
3877
+ var isIgnored = _isIgnoredCookie(cookieMgrConfig, name);
3878
+ if (!isIgnored) {
3879
+ if (_isMgrEnabled(cookieMgr)) {
3880
+ value = _getCookieFn(name);
3881
+ }
3882
+ else if (_pendingCookies) {
3883
+ for (var i = _pendingCookies[_DYN_LENGTH ] - 1; i >= 0; i--) {
3884
+ var pendingData = _pendingCookies[i];
3885
+ if (pendingData.n === name) {
3886
+ if (pendingData.o === 0 ) {
3887
+ var cookieValue = pendingData.v;
3888
+ var idx = strIndexOf(cookieValue, ";");
3889
+ value = idx !== -1 ? strTrim(strLeft(cookieValue, idx)) : strTrim(cookieValue);
3890
+ }
3891
+ break;
3892
+ }
3893
+ }
3894
+ }
3814
3895
  }
3815
3896
  return value;
3816
3897
  },
@@ -3819,20 +3900,21 @@ function createCookieMgr(rootConfig, logger) {
3819
3900
  if (_isMgrEnabled(cookieMgr)) {
3820
3901
  result = cookieMgr.purge(name, path);
3821
3902
  }
3903
+ else if (_pendingCookies) {
3904
+ _removePendingCookie(name);
3905
+ _pendingCookies[_DYN_PUSH ]({
3906
+ n: name,
3907
+ o: 1 ,
3908
+ v: _formatDeletionValue(path)
3909
+ });
3910
+ result = true;
3911
+ }
3822
3912
  return result;
3823
3913
  },
3824
3914
  purge: function (name, path) {
3825
- var _a;
3826
3915
  var result = false;
3827
3916
  if (areCookiesSupported(logger)) {
3828
- var values = (_a = {},
3829
- _a[STR_PATH] = path ? path : "/",
3830
- _a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
3831
- _a);
3832
- if (!isIE()) {
3833
- values["max-age"] = "0";
3834
- }
3835
- _delCookieFn(name, _formatCookieValue(STR_EMPTY$1, values));
3917
+ _delCookieFn(name, _formatDeletionValue(path));
3836
3918
  result = true;
3837
3919
  }
3838
3920
  return result;
@@ -3840,6 +3922,7 @@ function createCookieMgr(rootConfig, logger) {
3840
3922
  unload: function (isAsync) {
3841
3923
  unloadHandler && unloadHandler.rm();
3842
3924
  unloadHandler = null;
3925
+ _pendingCookies = null;
3843
3926
  }
3844
3927
  };
3845
3928
  cookieMgr[strConfigCookieMgr] = cookieMgr;