@microsoft/applicationinsights-channel-js 3.0.0-beta.2302-04 → 3.0.0-beta.2302-05

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 (30) hide show
  1. package/browser/applicationinsights-channel-js.integrity.json +9 -9
  2. package/browser/applicationinsights-channel-js.js +146 -65
  3. package/browser/applicationinsights-channel-js.js.map +1 -1
  4. package/browser/applicationinsights-channel-js.min.js +2 -2
  5. package/browser/applicationinsights-channel-js.min.js.map +1 -1
  6. package/dist/applicationinsights-channel-js.d.ts +1 -1
  7. package/dist/applicationinsights-channel-js.js +146 -65
  8. package/dist/applicationinsights-channel-js.js.map +1 -1
  9. package/dist/applicationinsights-channel-js.min.js +2 -2
  10. package/dist/applicationinsights-channel-js.min.js.map +1 -1
  11. package/dist/applicationinsights-channel-js.rollup.d.ts +1 -1
  12. package/dist-esm/EnvelopeCreator.js +2 -2
  13. package/dist-esm/EnvelopeCreator.js.map +1 -1
  14. package/dist-esm/Interfaces.js +1 -1
  15. package/dist-esm/InternalConstants.js +1 -1
  16. package/dist-esm/Offline.js +1 -1
  17. package/dist-esm/SendBuffer.js +1 -1
  18. package/dist-esm/Sender.js +17 -14
  19. package/dist-esm/Sender.js.map +1 -1
  20. package/dist-esm/Serializer.js +1 -1
  21. package/dist-esm/TelemetryProcessors/Sample.js +1 -1
  22. package/dist-esm/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js +1 -1
  23. package/dist-esm/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js +1 -1
  24. package/dist-esm/__DynamicConstants.js +2 -3
  25. package/dist-esm/__DynamicConstants.js.map +1 -1
  26. package/dist-esm/applicationinsights-channel-js.js +1 -1
  27. package/package.json +3 -3
  28. package/src/Sender.ts +18 -14
  29. package/src/__DynamicConstants.ts +1 -2
  30. package/types/__DynamicConstants.d.ts +0 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft Application Insights JavaScript SDK Channel, 3.0.0-beta.2302-04
2
+ * Microsoft Application Insights JavaScript SDK Channel, 3.0.0-beta.2302-05
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Channel, 3.0.0-beta.2302-04
2
+ * Application Insights JavaScript SDK - Channel, 3.0.0-beta.2302-05
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -815,7 +815,7 @@
815
815
  return new Date().getTime();
816
816
  }
817
817
 
818
- var _fnToString$1;
818
+ var _fnToString;
819
819
  var _objCtrFnString;
820
820
  var _gblWindow;
821
821
  function isPlainObject(value) {
@@ -828,8 +828,8 @@
828
828
  var result = false;
829
829
  if (value !== _gblWindow) {
830
830
  if (!_objCtrFnString) {
831
- _fnToString$1 = Function[PROTOTYPE].toString;
832
- _objCtrFnString = _fnToString$1.call(ObjClass);
831
+ _fnToString = Function[PROTOTYPE].toString;
832
+ _objCtrFnString = _fnToString.call(ObjClass);
833
833
  }
834
834
  try {
835
835
  var proto = objGetPrototypeOf(value);
@@ -838,7 +838,7 @@
838
838
  if (objHasOwnProperty(proto, CONSTRUCTOR)) {
839
839
  proto = proto[CONSTRUCTOR];
840
840
  }
841
- result = proto && typeof proto === FUNCTION && _fnToString$1.call(proto) === _objCtrFnString;
841
+ result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
842
842
  }
843
843
  }
844
844
  catch (ex) {
@@ -928,7 +928,9 @@
928
928
  var createEnumStyle = createEnum;
929
929
  var createValueMap = createTypeMap;
930
930
 
931
+ var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
931
932
  var _DYN_LENGTH$2 = "length";
933
+ var _DYN_RD_ONLY = "rdOnly";
932
934
  var _DYN_NOTIFY = "notify";
933
935
  var _DYN_THROW_INTERNAL = "throwInternal";
934
936
  var _DYN_SET_DF = "setDf";
@@ -965,7 +967,6 @@
965
967
  var _DYN_REPLACE = "replace";
966
968
  var _DYN_ENABLE_DEBUG_EXCEPTI5 = "enableDebugExceptions";
967
969
  var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
968
- var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
969
970
  var _DYN_TYPE = "type";
970
971
  var _DYN_HANDLER = "handler";
971
972
  var _DYN_IS_CHILD_EVT = "isChildEvt";
@@ -1001,9 +1002,6 @@
1001
1002
  var STR_GET_PERF_MGR = "getPerfMgr";
1002
1003
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1003
1004
 
1004
- var strToString = "toString";
1005
- var _fnToString = ObjClass$1[strToString];
1006
- _fnToString.call(ObjClass$1);
1007
1005
  var rCamelCase = /-([a-z])/g;
1008
1006
  var rNormalizeInvalid = /([^\w\d_$])/g;
1009
1007
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -1210,7 +1208,7 @@
1210
1208
  if (userAgentStr === void 0) { userAgentStr = null; }
1211
1209
  if (!userAgentStr) {
1212
1210
  var navigator_1 = getNavigator() || {};
1213
- userAgentStr = navigator_1 ? (navigator_1[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
1211
+ userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
1214
1212
  }
1215
1213
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
1216
1214
  if (strContains(ua, strMsie)) {
@@ -1333,7 +1331,7 @@
1333
1331
  }
1334
1332
 
1335
1333
  var _objDefineProperty = ObjDefineProperty;
1336
- var version = "3.0.0-beta.2302-04";
1334
+ var version = "3.0.0-beta.2302-05";
1337
1335
  var instanceName = "." + newId(6);
1338
1336
  var _dataUid = 0;
1339
1337
  function _createAccessor(target, prop, value) {
@@ -1406,39 +1404,9 @@
1406
1404
  return data;
1407
1405
  }
1408
1406
 
1409
- var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1410
- function _cfgDeepCopy(source) {
1411
- if (source) {
1412
- var target_1;
1413
- if (isArray(source)) {
1414
- target_1 = [];
1415
- target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1416
- }
1417
- else if (isPlainObject(source)) {
1418
- target_1 = {};
1419
- }
1420
- if (target_1) {
1421
- objForEachKey(source, function (key, value) {
1422
- target_1[key] = _cfgDeepCopy(value);
1423
- });
1424
- return target_1;
1425
- }
1426
- }
1427
- return source;
1407
+ function _isConfigDefaults(value) {
1408
+ return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
1428
1409
  }
1429
- function getDynamicConfigHandler(value) {
1430
- if (value) {
1431
- var handler = value[CFG_HANDLER_LINK] || value;
1432
- if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1433
- return handler;
1434
- }
1435
- }
1436
- return null;
1437
- }
1438
- function throwInvalidAccess(message) {
1439
- throwTypeError("InvalidAccess:" + message);
1440
- }
1441
-
1442
1410
  function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1443
1411
  var defValue;
1444
1412
  var isDefaultValid = cfgDefaults.dfVal || isDefined;
@@ -1453,7 +1421,7 @@
1453
1421
  if (isDefaultValid(fbValue)) {
1454
1422
  defValue = fbValue;
1455
1423
  }
1456
- else {
1424
+ else if (dynamicHandler) {
1457
1425
  fbValue = dynamicHandler.cfg[fallback];
1458
1426
  if (isDefaultValid(fbValue)) {
1459
1427
  defValue = fbValue;
@@ -1470,27 +1438,63 @@
1470
1438
  }
1471
1439
  return defValue;
1472
1440
  }
1441
+ function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
1442
+ var theValue = cfgDefaults;
1443
+ if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
1444
+ theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1445
+ }
1446
+ if (theValue) {
1447
+ if (_isConfigDefaults(theValue)) {
1448
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
1449
+ }
1450
+ var newValue_1;
1451
+ if (isArray(theValue)) {
1452
+ newValue_1 = [];
1453
+ newValue_1[_DYN_LENGTH$2 ] = theValue[_DYN_LENGTH$2 ];
1454
+ }
1455
+ else if (isPlainObject(theValue)) {
1456
+ newValue_1 = {};
1457
+ }
1458
+ if (newValue_1) {
1459
+ objForEachKey(theValue, function (key, value) {
1460
+ if (value && _isConfigDefaults(value)) {
1461
+ value = _resolveDefaultValue(dynamicHandler, theConfig, value);
1462
+ }
1463
+ newValue_1[key] = value;
1464
+ });
1465
+ theValue = newValue_1;
1466
+ }
1467
+ }
1468
+ return theValue;
1469
+ }
1473
1470
  function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
1474
1471
  var isValid;
1475
1472
  var setFn;
1476
1473
  var defValue;
1477
1474
  var cfgDefaults = defaultValue;
1478
- if (cfgDefaults && isObject(cfgDefaults) && (cfgDefaults.isVal || cfgDefaults.set || cfgDefaults.fb || objHasOwn(cfgDefaults, "v"))) {
1475
+ var mergeDf;
1476
+ var reference;
1477
+ var readOnly;
1478
+ if (_isConfigDefaults(cfgDefaults)) {
1479
1479
  isValid = cfgDefaults.isVal;
1480
1480
  setFn = cfgDefaults.set;
1481
+ readOnly = cfgDefaults[_DYN_RD_ONLY ];
1482
+ mergeDf = cfgDefaults.mrg;
1483
+ reference = cfgDefaults.ref;
1484
+ if (!reference && isUndefined(reference)) {
1485
+ reference = !!mergeDf;
1486
+ }
1481
1487
  defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1482
1488
  }
1483
1489
  else {
1484
1490
  defValue = defaultValue;
1485
1491
  }
1486
- var theValue = defValue;
1492
+ var theValue;
1487
1493
  var usingDefault = true;
1488
1494
  var cfgValue = theConfig[name];
1489
1495
  if (cfgValue || !isNullOrUndefined(cfgValue)) {
1490
1496
  theValue = cfgValue;
1491
1497
  usingDefault = false;
1492
- }
1493
- if (!usingDefault) {
1494
1498
  if (isValid && theValue !== defValue && !isValid(theValue)) {
1495
1499
  theValue = defValue;
1496
1500
  usingDefault = true;
@@ -1500,10 +1504,61 @@
1500
1504
  usingDefault = theValue === defValue;
1501
1505
  }
1502
1506
  }
1503
- if (theValue && usingDefault && (isPlainObject(theValue) || isArray(theValue))) {
1504
- theValue = _cfgDeepCopy(theValue);
1507
+ if (!usingDefault) {
1508
+ if (isPlainObject(theValue) || isArray(defValue)) {
1509
+ if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
1510
+ objForEachKey(defValue, function (dfName, dfValue) {
1511
+ _applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
1512
+ });
1513
+ }
1514
+ }
1515
+ }
1516
+ else if (defValue) {
1517
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
1518
+ }
1519
+ else {
1520
+ theValue = defValue;
1505
1521
  }
1506
1522
  dynamicHandler.set(theConfig, name, theValue);
1523
+ if (reference) {
1524
+ dynamicHandler.ref(theConfig, name);
1525
+ }
1526
+ if (readOnly) {
1527
+ dynamicHandler[_DYN_RD_ONLY ](theConfig, name);
1528
+ }
1529
+ }
1530
+
1531
+ var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1532
+ function _cfgDeepCopy(source) {
1533
+ if (source) {
1534
+ var target_1;
1535
+ if (isArray(source)) {
1536
+ target_1 = [];
1537
+ target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1538
+ }
1539
+ else if (isPlainObject(source)) {
1540
+ target_1 = {};
1541
+ }
1542
+ if (target_1) {
1543
+ objForEachKey(source, function (key, value) {
1544
+ target_1[key] = _cfgDeepCopy(value);
1545
+ });
1546
+ return target_1;
1547
+ }
1548
+ }
1549
+ return source;
1550
+ }
1551
+ function getDynamicConfigHandler(value) {
1552
+ if (value) {
1553
+ var handler = value[CFG_HANDLER_LINK] || value;
1554
+ if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1555
+ return handler;
1556
+ }
1557
+ }
1558
+ return null;
1559
+ }
1560
+ function throwInvalidAccess(message) {
1561
+ throwTypeError("InvalidAccess:" + message);
1507
1562
  }
1508
1563
 
1509
1564
  var arrayMethodsToPatch = [
@@ -1683,7 +1738,7 @@
1683
1738
  set: cfgHandler.set.bind(cfgHandler),
1684
1739
  setDf: cfgHandler[_DYN_SET_DF ].bind(cfgHandler),
1685
1740
  ref: cfgHandler.ref.bind(cfgHandler),
1686
- rdOnly: cfgHandler.rdOnly.bind(cfgHandler)
1741
+ rdOnly: cfgHandler[_DYN_RD_ONLY ].bind(cfgHandler)
1687
1742
  });
1688
1743
  }
1689
1744
  catch (e) {
@@ -1833,7 +1888,7 @@
1833
1888
  _a[_DYN_SET_DF ] = _applyDefaults,
1834
1889
  _a[_DYN_WATCH ] = _watch,
1835
1890
  _a.ref = _ref,
1836
- _a.rdOnly = _rdOnly,
1891
+ _a[_DYN_RD_ONLY ] = _rdOnly,
1837
1892
  _a._block = _block,
1838
1893
  _a);
1839
1894
  objDefineProp(cfgHandler, "uid", (_b = {},
@@ -1871,6 +1926,30 @@
1871
1926
  createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
1872
1927
  }
1873
1928
 
1929
+ function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
1930
+ if (!theValue && isNullOrUndefined(theValue)) {
1931
+ return defaultValue;
1932
+ }
1933
+ if (isBoolean(theValue)) {
1934
+ return theValue;
1935
+ }
1936
+ return asString(theValue)[_DYN_TO_LOWER_CASE$1 ]() === "true";
1937
+ }
1938
+ function cfgDfValidate(validator, defaultValue, fallBackName) {
1939
+ return {
1940
+ fb: fallBackName,
1941
+ isVal: validator,
1942
+ v: defaultValue
1943
+ };
1944
+ }
1945
+ function cfgDfBoolean(defaultValue, fallBackName) {
1946
+ return {
1947
+ fb: fallBackName,
1948
+ set: _stringToBoolOrDefault,
1949
+ v: !!defaultValue
1950
+ };
1951
+ }
1952
+
1874
1953
  var _aiNamespace = null;
1875
1954
  function _getExtensionNamespace() {
1876
1955
  var target = getInst("Microsoft");
@@ -4054,7 +4133,6 @@
4054
4133
  var _DYN_IS_BEACON_API_DISABL3 = "isBeaconApiDisabled";
4055
4134
  var _DYN_ENABLE_SESSION_STORA4 = "enableSessionStorageBuffer";
4056
4135
  var _DYN__BUFFER = "_buffer";
4057
- var _DYN_SAMPLING_PERCENTAGE = "samplingPercentage";
4058
4136
  var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
4059
4137
  var _DYN_DISABLE_XHR = "disableXhr";
4060
4138
  var _DYN_ONUNLOAD_DISABLE_FET5 = "onunloadDisableFetch";
@@ -4182,7 +4260,7 @@
4182
4260
  }
4183
4261
  }
4184
4262
  var EnvelopeCreator = {
4185
- Version: "3.0.0-beta.2302-04"
4263
+ Version: "3.0.0-beta.2302-05"
4186
4264
  };
4187
4265
  function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
4188
4266
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -4842,25 +4920,28 @@
4842
4920
  return null;
4843
4921
  }
4844
4922
  var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
4845
- endpointUrl: { isVal: isTruthy, v: DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH }
4923
+ endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
4846
4924
  },
4847
- _a[_DYN_EMIT_LINE_DELIMITED_0 ] = false,
4925
+ _a[_DYN_EMIT_LINE_DELIMITED_0 ] = cfgDfBoolean(),
4848
4926
  _a[_DYN_MAX_BATCH_INTERVAL ] = 15000,
4849
4927
  _a[_DYN_MAX_BATCH_SIZE_IN_BY1 ] = 102400,
4850
- _a.disableTelemetry = false,
4851
- _a[_DYN_ENABLE_SESSION_STORA4 ] = true,
4852
- _a.isRetryDisabled = false,
4853
- _a.isBeaconApiDisabled = true,
4854
- _a[_DYN_DISABLE_XHR ] = false,
4855
- _a[_DYN_ONUNLOAD_DISABLE_FET5 ] = false,
4856
- _a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = false,
4928
+ _a.disableTelemetry = cfgDfBoolean(),
4929
+ _a[_DYN_ENABLE_SESSION_STORA4 ] = cfgDfBoolean(true),
4930
+ _a.isRetryDisabled = cfgDfBoolean(),
4931
+ _a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
4932
+ _a[_DYN_DISABLE_XHR ] = cfgDfBoolean(),
4933
+ _a[_DYN_ONUNLOAD_DISABLE_FET5 ] = cfgDfBoolean(),
4934
+ _a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
4857
4935
  _a[_DYN_INSTRUMENTATION_KEY ] = UNDEFINED_VALUE,
4858
4936
  _a.namePrefix = UNDEFINED_VALUE,
4859
- _a[_DYN_SAMPLING_PERCENTAGE ] = 100,
4937
+ _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),
4860
4938
  _a[_DYN_CUSTOM_HEADERS ] = UNDEFINED_VALUE,
4861
4939
  _a[_DYN_CONVERT_UNDEFINED ] = UNDEFINED_VALUE,
4862
4940
  _a[_DYN_EVENTS_LIMIT_IN_MEM ] = 10000,
4863
4941
  _a));
4942
+ function _chkSampling(value) {
4943
+ return !isNaN(value) && value > 0 && value <= 100;
4944
+ }
4864
4945
  var EnvelopeTypeCreator = (_b = {},
4865
4946
  _b[Event.dataType] = EventEnvelopeCreator,
4866
4947
  _b[Trace.dataType] = TraceEnvelopeCreator,
@@ -5002,7 +5083,7 @@
5002
5083
  }
5003
5084
  _namePrefix = namePrefix;
5004
5085
  _sessionStorageUsed = canUseSessionStorage;
5005
- _self._sample = new Sample(senderConfig[_DYN_SAMPLING_PERCENTAGE ], diagLog);
5086
+ _self._sample = new Sample(senderConfig.samplingPercentage, diagLog);
5006
5087
  _instrumentationKey = senderConfig[_DYN_INSTRUMENTATION_KEY ];
5007
5088
  if (!_validateInstrumentationKey(_instrumentationKey, config)) {
5008
5089
  _throwInternal(diagLog, 1 , 100 , "Invalid Instrumentation key " + _instrumentationKey);