@microsoft/applicationinsights-common 3.0.0-beta.2301-20 → 3.0.0-beta.2302-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 (97) hide show
  1. package/browser/applicationinsights-common.integrity.json +9 -9
  2. package/browser/applicationinsights-common.js +44 -17
  3. package/browser/applicationinsights-common.js.map +1 -1
  4. package/browser/applicationinsights-common.min.js +2 -2
  5. package/browser/applicationinsights-common.min.js.map +1 -1
  6. package/dist/applicationinsights-common.api.json +8 -8
  7. package/dist/applicationinsights-common.api.md +1 -1
  8. package/dist/applicationinsights-common.d.ts +7 -7
  9. package/dist/applicationinsights-common.js +44 -17
  10. package/dist/applicationinsights-common.js.map +1 -1
  11. package/dist/applicationinsights-common.min.js +2 -2
  12. package/dist/applicationinsights-common.min.js.map +1 -1
  13. package/dist/applicationinsights-common.rollup.d.ts +7 -7
  14. package/dist-esm/ConnectionStringParser.js +1 -1
  15. package/dist-esm/Constants.js +1 -1
  16. package/dist-esm/DomHelperFuncs.js +1 -1
  17. package/dist-esm/Enums.js +1 -1
  18. package/dist-esm/HelperFuncs.js +1 -1
  19. package/dist-esm/Interfaces/ConnectionString.js +1 -1
  20. package/dist-esm/Interfaces/Context/IApplication.js +1 -1
  21. package/dist-esm/Interfaces/Context/IDevice.js +1 -1
  22. package/dist-esm/Interfaces/Context/IInternal.js +1 -1
  23. package/dist-esm/Interfaces/Context/ILocation.js +1 -1
  24. package/dist-esm/Interfaces/Context/IOperatingSystem.js +1 -1
  25. package/dist-esm/Interfaces/Context/ISample.js +1 -1
  26. package/dist-esm/Interfaces/Context/ISession.js +1 -1
  27. package/dist-esm/Interfaces/Context/ITelemetryTrace.js +1 -1
  28. package/dist-esm/Interfaces/Context/IUser.js +1 -1
  29. package/dist-esm/Interfaces/Context/IWeb.js +1 -1
  30. package/dist-esm/Interfaces/Contracts/AvailabilityData.js +1 -1
  31. package/dist-esm/Interfaces/Contracts/ContextTagKeys.js +1 -1
  32. package/dist-esm/Interfaces/Contracts/DataPointType.js +1 -1
  33. package/dist-esm/Interfaces/Contracts/DependencyKind.js +1 -1
  34. package/dist-esm/Interfaces/Contracts/DependencySourceType.js +1 -1
  35. package/dist-esm/Interfaces/Contracts/IBase.js +1 -1
  36. package/dist-esm/Interfaces/Contracts/IData.js +1 -1
  37. package/dist-esm/Interfaces/Contracts/IDataPoint.js +1 -1
  38. package/dist-esm/Interfaces/Contracts/IDomain.js +1 -1
  39. package/dist-esm/Interfaces/Contracts/IEnvelope.js +1 -1
  40. package/dist-esm/Interfaces/Contracts/IEventData.js +1 -1
  41. package/dist-esm/Interfaces/Contracts/IExceptionData.js +1 -1
  42. package/dist-esm/Interfaces/Contracts/IExceptionDetails.js +1 -1
  43. package/dist-esm/Interfaces/Contracts/IMessageData.js +1 -1
  44. package/dist-esm/Interfaces/Contracts/IMetricData.js +1 -1
  45. package/dist-esm/Interfaces/Contracts/IPageViewData.js +1 -1
  46. package/dist-esm/Interfaces/Contracts/IPageViewPerfData.js +1 -1
  47. package/dist-esm/Interfaces/Contracts/IRemoteDependencyData.js +1 -1
  48. package/dist-esm/Interfaces/Contracts/IStackFrame.js +1 -1
  49. package/dist-esm/Interfaces/Contracts/RequestData.js +1 -1
  50. package/dist-esm/Interfaces/Contracts/SeverityLevel.js +1 -1
  51. package/dist-esm/Interfaces/IAppInsights.js +1 -1
  52. package/dist-esm/Interfaces/IChannelControlsAI.js +1 -1
  53. package/dist-esm/Interfaces/IConfig.js +1 -1
  54. package/dist-esm/Interfaces/ICorrelationConfig.js +1 -1
  55. package/dist-esm/Interfaces/IDependencyTelemetry.js +1 -1
  56. package/dist-esm/Interfaces/IEventTelemetry.js +1 -1
  57. package/dist-esm/Interfaces/IExceptionTelemetry.js +1 -1
  58. package/dist-esm/Interfaces/IMetricTelemetry.js +1 -1
  59. package/dist-esm/Interfaces/IPageViewPerformanceTelemetry.js +1 -1
  60. package/dist-esm/Interfaces/IPageViewTelemetry.js +1 -1
  61. package/dist-esm/Interfaces/IPartC.js +1 -1
  62. package/dist-esm/Interfaces/IPropertiesPlugin.js +1 -1
  63. package/dist-esm/Interfaces/IRequestContext.js +1 -1
  64. package/dist-esm/Interfaces/ITelemetryContext.js +1 -1
  65. package/dist-esm/Interfaces/IThrottleMgr.js +1 -1
  66. package/dist-esm/Interfaces/ITraceTelemetry.js +1 -1
  67. package/dist-esm/Interfaces/PartAExtensions.js +1 -1
  68. package/dist-esm/Interfaces/Telemetry/IEnvelope.js +1 -1
  69. package/dist-esm/Interfaces/Telemetry/ISerializable.js +1 -1
  70. package/dist-esm/RequestResponseHeaders.js +1 -1
  71. package/dist-esm/StorageHelperFuncs.js +1 -1
  72. package/dist-esm/Telemetry/Common/Data.js +1 -1
  73. package/dist-esm/Telemetry/Common/DataPoint.js +1 -1
  74. package/dist-esm/Telemetry/Common/DataSanitizer.js +1 -1
  75. package/dist-esm/Telemetry/Common/Envelope.js +1 -1
  76. package/dist-esm/Telemetry/Event.js +1 -1
  77. package/dist-esm/Telemetry/Exception.js +1 -1
  78. package/dist-esm/Telemetry/Metric.js +1 -1
  79. package/dist-esm/Telemetry/PageView.js +1 -1
  80. package/dist-esm/Telemetry/PageViewPerformance.js +1 -1
  81. package/dist-esm/Telemetry/RemoteDependencyData.js +1 -1
  82. package/dist-esm/Telemetry/Trace.js +1 -1
  83. package/dist-esm/TelemetryItemCreator.js +1 -1
  84. package/dist-esm/ThrottleMgr.js +46 -19
  85. package/dist-esm/ThrottleMgr.js.map +1 -1
  86. package/dist-esm/UrlHelperFuncs.js +1 -1
  87. package/dist-esm/Util.js +1 -1
  88. package/dist-esm/__DynamicConstants.js +3 -2
  89. package/dist-esm/__DynamicConstants.js.map +1 -1
  90. package/dist-esm/applicationinsights-common.js +1 -1
  91. package/package.json +2 -2
  92. package/src/Interfaces/IThrottleMgr.ts +6 -6
  93. package/src/ThrottleMgr.ts +46 -14
  94. package/src/__DynamicConstants.ts +2 -1
  95. package/types/Interfaces/IThrottleMgr.d.ts +6 -6
  96. package/types/__DynamicConstants.d.ts +2 -1
  97. package/types/tsdoc-metadata.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "metadata": {
3
3
  "toolPackage": "@microsoft/api-extractor",
4
- "toolVersion": "7.34.0",
4
+ "toolVersion": "7.34.2",
5
5
  "schemaVersion": 1011,
6
6
  "oldestForwardsCompatibleVersion": 1001,
7
7
  "tsdocConfig": {
@@ -13591,7 +13591,7 @@
13591
13591
  {
13592
13592
  "kind": "PropertySignature",
13593
13593
  "canonicalReference": "@microsoft/applicationinsights-common!IThrottleInterval#dayInterval:member",
13594
- "docComment": "/**\n * Identifies days that items can be sent within a month Default: 28\n */\n",
13594
+ "docComment": "/**\n * Identifies days Interval from start date that items can be sent Default: undefined\n */\n",
13595
13595
  "excerptTokens": [
13596
13596
  {
13597
13597
  "kind": "Content",
@@ -13617,16 +13617,16 @@
13617
13617
  },
13618
13618
  {
13619
13619
  "kind": "PropertySignature",
13620
- "canonicalReference": "@microsoft/applicationinsights-common!IThrottleInterval#maxTimesPerMonth:member",
13621
- "docComment": "/**\n * Identifies max times items can be sent within a month Default: 1\n */\n",
13620
+ "canonicalReference": "@microsoft/applicationinsights-common!IThrottleInterval#daysOfMonth:member",
13621
+ "docComment": "/**\n * Identifies days within each month that items can be sent If both monthInterval and dayInterval are undefined, it will be default to [28]\n */\n",
13622
13622
  "excerptTokens": [
13623
13623
  {
13624
13624
  "kind": "Content",
13625
- "text": "maxTimesPerMonth?: "
13625
+ "text": "daysOfMonth?: "
13626
13626
  },
13627
13627
  {
13628
13628
  "kind": "Content",
13629
- "text": "number"
13629
+ "text": "number[]"
13630
13630
  },
13631
13631
  {
13632
13632
  "kind": "Content",
@@ -13636,7 +13636,7 @@
13636
13636
  "isReadonly": false,
13637
13637
  "isOptional": true,
13638
13638
  "releaseTag": "Public",
13639
- "name": "maxTimesPerMonth",
13639
+ "name": "daysOfMonth",
13640
13640
  "propertyTypeTokenRange": {
13641
13641
  "startIndex": 1,
13642
13642
  "endIndex": 2
@@ -13645,7 +13645,7 @@
13645
13645
  {
13646
13646
  "kind": "PropertySignature",
13647
13647
  "canonicalReference": "@microsoft/applicationinsights-common!IThrottleInterval#monthInterval:member",
13648
- "docComment": "/**\n * Identifies month interval that items can be sent For example, if it is set to 2 and start date is in Jan, items will be sent out every two months (Jan, March, May etc.) Default: 3\n */\n",
13648
+ "docComment": "/**\n * Identifies month interval that items can be sent For example, if it is set to 2 and start date is in Jan, items will be sent out every two months (Jan, March, May etc.) If both monthInterval and dayInterval are undefined, it will be set to 3\n */\n",
13649
13649
  "excerptTokens": [
13650
13650
  {
13651
13651
  "kind": "Content",
@@ -843,7 +843,7 @@ export interface ITelemetryTrace {
843
843
  // @public
844
844
  export interface IThrottleInterval {
845
845
  dayInterval?: number;
846
- maxTimesPerMonth?: number;
846
+ daysOfMonth?: number[];
847
847
  monthInterval?: number;
848
848
  }
849
849
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft Application Insights Common JavaScript Library, 3.0.0-beta.2301-20
2
+ * Microsoft Application Insights Common JavaScript Library, 3.0.0-beta.2302-01
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -1965,19 +1965,19 @@ declare namespace ApplicationInsights {
1965
1965
  /**
1966
1966
  * Identifies month interval that items can be sent
1967
1967
  * For example, if it is set to 2 and start date is in Jan, items will be sent out every two months (Jan, March, May etc.)
1968
- * Default: 3
1968
+ * If both monthInterval and dayInterval are undefined, it will be set to 3
1969
1969
  */
1970
1970
  monthInterval?: number;
1971
1971
  /**
1972
- * Identifies days that items can be sent within a month
1973
- * Default: 28
1972
+ * Identifies days Interval from start date that items can be sent
1973
+ * Default: undefined
1974
1974
  */
1975
1975
  dayInterval?: number;
1976
1976
  /**
1977
- * Identifies max times items can be sent within a month
1978
- * Default: 1
1977
+ * Identifies days within each month that items can be sent
1978
+ * If both monthInterval and dayInterval are undefined, it will be default to [28]
1979
1979
  */
1980
- maxTimesPerMonth?: number;
1980
+ daysOfMonth?: number[];
1981
1981
  }
1982
1982
 
1983
1983
  /**
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Common, 3.0.0-beta.2301-20
2
+ * Application Insights JavaScript SDK - Common, 3.0.0-beta.2302-01
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -1146,7 +1146,7 @@
1146
1146
  return result;
1147
1147
  }
1148
1148
 
1149
- var version = "3.0.0-beta.2301-20";
1149
+ var version = "3.0.0-beta.2302-01";
1150
1150
  var instanceName = "." + newId(6);
1151
1151
  var _dataUid = 0;
1152
1152
  function createUniqueNamespace(name, includeVersion) {
@@ -1947,9 +1947,10 @@
1947
1947
  var _DYN_COUNT = "count";
1948
1948
  var _DYN_PRE_TRIGGER_DATE = "preTriggerDate";
1949
1949
  var _DYN_DISABLED = "disabled";
1950
+ var _DYN_INTERVAL = "interval";
1951
+ var _DYN_DAYS_OF_MONTH = "daysOfMonth";
1950
1952
  var _DYN_DATE = "date";
1951
1953
  var _DYN_GET_UTCDATE = "getUTCDate";
1952
- var _DYN_MAX_TIMES_PER_MONTH = "maxTimesPerMonth";
1953
1954
  var _DYN_STRINGIFY = "stringify";
1954
1955
  var _DYN_PATHNAME = "pathname";
1955
1956
  var _DYN_CORRELATION_HEADER_E0 = "correlationHeaderExcludePatterns";
@@ -2487,6 +2488,7 @@
2487
2488
  var _namePrefix;
2488
2489
  var _queue;
2489
2490
  var _isReady = false;
2491
+ var _isSpecificDaysGiven = false;
2490
2492
  _initConfig();
2491
2493
  _self.getConfig = function () {
2492
2494
  return _config;
@@ -2560,7 +2562,7 @@
2560
2562
  return null;
2561
2563
  };
2562
2564
  function _initConfig() {
2563
- var _a, _b, _c, _d, _e;
2565
+ var _a, _b;
2564
2566
  _canUseLocalStorage = utlCanUseLocalStorage();
2565
2567
  _logger = safeGetLogger(core);
2566
2568
  _isTriggered = false;
@@ -2570,15 +2572,12 @@
2570
2572
  _config = {};
2571
2573
  _config[_DYN_DISABLED ] = !!configMgr[_DYN_DISABLED ];
2572
2574
  _config.msgKey = configMgr.msgKey;
2573
- var interval = {
2574
- monthInterval: ((_a = configMgr.interval) === null || _a === void 0 ? void 0 : _a.monthInterval) || 3,
2575
- dayInterval: ((_b = configMgr.interval) === null || _b === void 0 ? void 0 : _b.dayInterval) || 28,
2576
- maxTimesPerMonth: ((_c = configMgr.interval) === null || _c === void 0 ? void 0 : _c.maxTimesPerMonth) || 1
2577
- };
2578
- _config.interval = interval;
2575
+ var configInterval = configMgr[_DYN_INTERVAL ] || {};
2576
+ _isSpecificDaysGiven = (configInterval === null || configInterval === void 0 ? void 0 : configInterval.daysOfMonth) && (configInterval === null || configInterval === void 0 ? void 0 : configInterval.daysOfMonth[_DYN_LENGTH ]) > 0;
2577
+ _config[_DYN_INTERVAL ] = _getIntervalConfig(configInterval);
2579
2578
  var limit = {
2580
- samplingRate: ((_d = configMgr.limit) === null || _d === void 0 ? void 0 : _d.samplingRate) || 100,
2581
- maxSendNumber: ((_e = configMgr.limit) === null || _e === void 0 ? void 0 : _e.maxSendNumber) || 1
2579
+ samplingRate: ((_a = configMgr.limit) === null || _a === void 0 ? void 0 : _a.samplingRate) || 100,
2580
+ maxSendNumber: ((_b = configMgr.limit) === null || _b === void 0 ? void 0 : _b.maxSendNumber) || 1
2582
2581
  };
2583
2582
  _config.limit = limit;
2584
2583
  _localStorageName = _getLocalStorageName(_config.msgKey, _namePrefix);
@@ -2589,15 +2588,43 @@
2589
2588
  _isTriggered = _isTriggeredOnCurDate(_localStorageObj[_DYN_PRE_TRIGGER_DATE ]);
2590
2589
  }
2591
2590
  }
2591
+ function _getIntervalConfig(interval) {
2592
+ interval = interval || {};
2593
+ var monthInterval = interval === null || interval === void 0 ? void 0 : interval.monthInterval;
2594
+ var dayInterval = interval === null || interval === void 0 ? void 0 : interval.dayInterval;
2595
+ if (isNullOrUndefined(monthInterval) && isNullOrUndefined(dayInterval)) {
2596
+ interval.monthInterval = 3;
2597
+ if (!_isSpecificDaysGiven) {
2598
+ interval[_DYN_DAYS_OF_MONTH ] = [28];
2599
+ _isSpecificDaysGiven = true;
2600
+ }
2601
+ }
2602
+ interval = {
2603
+ monthInterval: interval === null || interval === void 0 ? void 0 : interval.monthInterval,
2604
+ dayInterval: interval === null || interval === void 0 ? void 0 : interval.dayInterval,
2605
+ daysOfMonth: interval === null || interval === void 0 ? void 0 : interval.daysOfMonth
2606
+ };
2607
+ return interval;
2608
+ }
2592
2609
  function _canThrottle(config, canUseLocalStorage, localStorageObj) {
2593
2610
  if (!config[_DYN_DISABLED ] && canUseLocalStorage && isNotNullOrUndefined(localStorageObj)) {
2594
2611
  var curDate = _getThrottleDate();
2595
2612
  var date = localStorageObj[_DYN_DATE ];
2596
- var interval = config.interval;
2597
- var monthExpand = (curDate.getUTCFullYear() - date.getUTCFullYear()) * 12 + curDate.getUTCMonth() - date.getUTCMonth();
2598
- var monthCheck = _checkInterval(interval.monthInterval, 0, monthExpand);
2599
- var dayCheck = _checkInterval(interval.dayInterval, 0, curDate[_DYN_GET_UTCDATE ]()) - 1;
2600
- return monthCheck >= 0 && dayCheck >= 0 && dayCheck <= config.interval[_DYN_MAX_TIMES_PER_MONTH ];
2613
+ var interval = config[_DYN_INTERVAL ];
2614
+ var monthCheck = 1;
2615
+ if (interval === null || interval === void 0 ? void 0 : interval.monthInterval) {
2616
+ var monthExpand = (curDate.getUTCFullYear() - date.getUTCFullYear()) * 12 + curDate.getUTCMonth() - date.getUTCMonth();
2617
+ monthCheck = _checkInterval(interval.monthInterval, 0, monthExpand);
2618
+ }
2619
+ var dayCheck = 1;
2620
+ if (_isSpecificDaysGiven) {
2621
+ dayCheck = arrIndexOf(interval[_DYN_DAYS_OF_MONTH ], curDate[_DYN_GET_UTCDATE ]());
2622
+ }
2623
+ else if (interval === null || interval === void 0 ? void 0 : interval.dayInterval) {
2624
+ var daySpan = Math.floor((curDate.getTime() - date.getTime()) / 86400000);
2625
+ dayCheck = _checkInterval(interval.dayInterval, 0, daySpan);
2626
+ }
2627
+ return monthCheck >= 0 && dayCheck >= 0;
2601
2628
  }
2602
2629
  return false;
2603
2630
  }