@microsoft/applicationinsights-core-js 3.3.10-nightly3.2507-29 → 3.3.10-nightly3.2508-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 (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-29
2
+ * Application Insights JavaScript SDK - Core, 3.3.10-nightly3.2508-01
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -2661,7 +2661,7 @@
2661
2661
  return result;
2662
2662
  }
2663
2663
 
2664
- var version = '3.3.10-nightly3.2507-29';
2664
+ var version = '3.3.10-nightly3.2508-01';
2665
2665
  var instanceName = "." + newId(6);
2666
2666
  var _dataUid = 0;
2667
2667
  function _canAcceptData(target) {
@@ -3665,6 +3665,7 @@
3665
3665
  _b.enabled = UNDEFINED_VALUE,
3666
3666
  _b.ignoreCookies = UNDEFINED_VALUE,
3667
3667
  _b.blockedCookies = UNDEFINED_VALUE,
3668
+ _b.disableCookieDefer = false,
3668
3669
  _b)),
3669
3670
  cookieDomain: UNDEFINED_VALUE,
3670
3671
  cookiePath: UNDEFINED_VALUE
@@ -3744,16 +3745,99 @@
3744
3745
  var _getCookieFn;
3745
3746
  var _setCookieFn;
3746
3747
  var _delCookieFn;
3748
+ var _pendingCookies = [];
3749
+ function _formatDeletionValue(path) {
3750
+ var _a;
3751
+ var values = (_a = {},
3752
+ _a[STR_PATH] = path ? path : "/",
3753
+ _a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
3754
+ _a);
3755
+ if (!isIE()) {
3756
+ values["max-age"] = "0";
3757
+ }
3758
+ return _formatCookieValue(STR_EMPTY$1, values);
3759
+ }
3760
+ function _formatSetCookieValue(value, maxAgeSec, domain, path) {
3761
+ var values = {};
3762
+ var theValue = strTrim(value || STR_EMPTY$1);
3763
+ var idx = strIndexOf(theValue, ";");
3764
+ if (idx !== -1) {
3765
+ theValue = strTrim(strLeft(value, idx));
3766
+ values = _extractParts(strSubstring(value, idx + 1));
3767
+ }
3768
+ setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);
3769
+ if (!isNullOrUndefined(maxAgeSec)) {
3770
+ var _isIE = isIE();
3771
+ if (isUndefined(values[strExpires])) {
3772
+ var nowMs = utcNow();
3773
+ var expireMs = nowMs + (maxAgeSec * 1000);
3774
+ if (expireMs > 0) {
3775
+ var expiry = new Date();
3776
+ expiry.setTime(expireMs);
3777
+ setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY$1, isTruthy);
3778
+ }
3779
+ }
3780
+ if (!_isIE) {
3781
+ setValue(values, "max-age", STR_EMPTY$1 + maxAgeSec, null, isUndefined);
3782
+ }
3783
+ }
3784
+ var location = getLocation();
3785
+ if (location && location.protocol === "https:") {
3786
+ setValue(values, "secure", null, null, isUndefined);
3787
+ if (_allowUaSameSite === null) {
3788
+ _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
3789
+ }
3790
+ if (_allowUaSameSite) {
3791
+ setValue(values, "SameSite", "None", null, isUndefined);
3792
+ }
3793
+ }
3794
+ setValue(values, STR_PATH, path || _path, null, isUndefined);
3795
+ return _formatCookieValue(theValue, values);
3796
+ }
3797
+ function _removePendingCookie(name) {
3798
+ if (_pendingCookies) {
3799
+ for (var i = _pendingCookies[_DYN_LENGTH ] - 1; i >= 0; i--) {
3800
+ if (_pendingCookies[i].n === name) {
3801
+ _pendingCookies[_DYN_SPLICE ](i, 1);
3802
+ }
3803
+ }
3804
+ }
3805
+ }
3806
+ function _flushPendingCookies() {
3807
+ if (areCookiesSupported(logger) && _pendingCookies) {
3808
+ arrForEach(_pendingCookies, function (pendingData) {
3809
+ if (!_isBlockedCookie(cookieMgrConfig, pendingData.n)) {
3810
+ if (pendingData.o === 0 ) {
3811
+ _setCookieFn(pendingData.n, pendingData.v);
3812
+ }
3813
+ else if (pendingData.o === 1 ) {
3814
+ _delCookieFn(pendingData.n, pendingData.v);
3815
+ }
3816
+ }
3817
+ });
3818
+ _pendingCookies = [];
3819
+ }
3820
+ }
3747
3821
  rootConfig = createDynamicConfig(rootConfig || _globalCookieConfig, null, logger).cfg;
3748
3822
  unloadHandler = onConfigChange(rootConfig, function (details) {
3749
3823
  details.setDf(details.cfg, rootDefaultConfig);
3750
3824
  cookieMgrConfig = details.ref(details.cfg, "cookieCfg");
3751
3825
  _path = cookieMgrConfig[STR_PATH ] || "/";
3752
3826
  _domain = cookieMgrConfig[STR_DOMAIN ];
3827
+ if (cookieMgrConfig.disableCookieDefer) {
3828
+ _pendingCookies = null;
3829
+ }
3830
+ else if (_pendingCookies === null) {
3831
+ _pendingCookies = [];
3832
+ }
3833
+ var wasEnabled = _enabled;
3753
3834
  _enabled = _isCfgEnabled(rootConfig, cookieMgrConfig) !== false;
3754
3835
  _getCookieFn = cookieMgrConfig.getCookie || _getCookieValue;
3755
3836
  _setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;
3756
3837
  _delCookieFn = cookieMgrConfig.delCookie || _setCookieValue;
3838
+ if (!wasEnabled && _enabled && _pendingCookies) {
3839
+ _flushPendingCookies();
3840
+ }
3757
3841
  }, logger);
3758
3842
  var cookieMgr = {
3759
3843
  isEnabled: function () {
@@ -3765,55 +3849,52 @@
3765
3849
  return enabled;
3766
3850
  },
3767
3851
  setEnabled: function (value) {
3768
- _enabled = value !== false;
3769
3852
  cookieMgrConfig[_DYN_ENABLED ] = value;
3853
+ if (!isUndefined(rootConfig[strDisableCookiesUsage])) {
3854
+ rootConfig[strDisableCookiesUsage] = !value;
3855
+ }
3770
3856
  },
3771
3857
  set: function (name, value, maxAgeSec, domain, path) {
3772
3858
  var result = false;
3773
- if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {
3774
- var values = {};
3775
- var theValue = strTrim(value || STR_EMPTY$1);
3776
- var idx = strIndexOf(theValue, ";");
3777
- if (idx !== -1) {
3778
- theValue = strTrim(strLeft(value, idx));
3779
- values = _extractParts(strSubstring(value, idx + 1));
3780
- }
3781
- setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);
3782
- if (!isNullOrUndefined(maxAgeSec)) {
3783
- var _isIE = isIE();
3784
- if (isUndefined(values[strExpires])) {
3785
- var nowMs = utcNow();
3786
- var expireMs = nowMs + (maxAgeSec * 1000);
3787
- if (expireMs > 0) {
3788
- var expiry = new Date();
3789
- expiry.setTime(expireMs);
3790
- setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY$1, isTruthy);
3791
- }
3792
- }
3793
- if (!_isIE) {
3794
- setValue(values, "max-age", STR_EMPTY$1 + maxAgeSec, null, isUndefined);
3795
- }
3859
+ var isBlocked = _isBlockedCookie(cookieMgrConfig, name);
3860
+ if (!isBlocked) {
3861
+ var cookieValue = _formatSetCookieValue(value, maxAgeSec, domain, path);
3862
+ if (_isMgrEnabled(cookieMgr)) {
3863
+ _setCookieFn(name, cookieValue);
3864
+ result = true;
3796
3865
  }
3797
- var location_1 = getLocation();
3798
- if (location_1 && location_1.protocol === "https:") {
3799
- setValue(values, "secure", null, null, isUndefined);
3800
- if (_allowUaSameSite === null) {
3801
- _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
3802
- }
3803
- if (_allowUaSameSite) {
3804
- setValue(values, "SameSite", "None", null, isUndefined);
3805
- }
3866
+ else if (_pendingCookies) {
3867
+ _removePendingCookie(name);
3868
+ _pendingCookies[_DYN_PUSH ]({
3869
+ n: name,
3870
+ o: 0 ,
3871
+ v: cookieValue
3872
+ });
3873
+ result = true;
3806
3874
  }
3807
- setValue(values, STR_PATH, path || _path, null, isUndefined);
3808
- _setCookieFn(name, _formatCookieValue(theValue, values));
3809
- result = true;
3810
3875
  }
3811
3876
  return result;
3812
3877
  },
3813
3878
  get: function (name) {
3814
3879
  var value = STR_EMPTY$1;
3815
- if (_isMgrEnabled(cookieMgr) && !_isIgnoredCookie(cookieMgrConfig, name)) {
3816
- value = _getCookieFn(name);
3880
+ var isIgnored = _isIgnoredCookie(cookieMgrConfig, name);
3881
+ if (!isIgnored) {
3882
+ if (_isMgrEnabled(cookieMgr)) {
3883
+ value = _getCookieFn(name);
3884
+ }
3885
+ else if (_pendingCookies) {
3886
+ for (var i = _pendingCookies[_DYN_LENGTH ] - 1; i >= 0; i--) {
3887
+ var pendingData = _pendingCookies[i];
3888
+ if (pendingData.n === name) {
3889
+ if (pendingData.o === 0 ) {
3890
+ var cookieValue = pendingData.v;
3891
+ var idx = strIndexOf(cookieValue, ";");
3892
+ value = idx !== -1 ? strTrim(strLeft(cookieValue, idx)) : strTrim(cookieValue);
3893
+ }
3894
+ break;
3895
+ }
3896
+ }
3897
+ }
3817
3898
  }
3818
3899
  return value;
3819
3900
  },
@@ -3822,20 +3903,21 @@
3822
3903
  if (_isMgrEnabled(cookieMgr)) {
3823
3904
  result = cookieMgr.purge(name, path);
3824
3905
  }
3906
+ else if (_pendingCookies) {
3907
+ _removePendingCookie(name);
3908
+ _pendingCookies[_DYN_PUSH ]({
3909
+ n: name,
3910
+ o: 1 ,
3911
+ v: _formatDeletionValue(path)
3912
+ });
3913
+ result = true;
3914
+ }
3825
3915
  return result;
3826
3916
  },
3827
3917
  purge: function (name, path) {
3828
- var _a;
3829
3918
  var result = false;
3830
3919
  if (areCookiesSupported(logger)) {
3831
- var values = (_a = {},
3832
- _a[STR_PATH] = path ? path : "/",
3833
- _a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
3834
- _a);
3835
- if (!isIE()) {
3836
- values["max-age"] = "0";
3837
- }
3838
- _delCookieFn(name, _formatCookieValue(STR_EMPTY$1, values));
3920
+ _delCookieFn(name, _formatDeletionValue(path));
3839
3921
  result = true;
3840
3922
  }
3841
3923
  return result;
@@ -3843,6 +3925,7 @@
3843
3925
  unload: function (isAsync) {
3844
3926
  unloadHandler && unloadHandler.rm();
3845
3927
  unloadHandler = null;
3928
+ _pendingCookies = null;
3846
3929
  }
3847
3930
  };
3848
3931
  cookieMgr[strConfigCookieMgr] = cookieMgr;