@microsoft/applicationinsights-analytics-js 3.3.10-nightly3.2507-07 → 3.3.10-nightly3.2507-17

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 (31) hide show
  1. package/browser/es5/applicationinsights-analytics-js.cjs.js +138 -7
  2. package/browser/es5/applicationinsights-analytics-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-analytics-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-analytics-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-analytics-js.gbl.js +140 -9
  6. package/browser/es5/applicationinsights-analytics-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-analytics-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-analytics-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-analytics-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-analytics-js.js +140 -9
  11. package/browser/es5/applicationinsights-analytics-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-analytics-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-analytics-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-analytics-js.js +138 -7
  15. package/dist/es5/applicationinsights-analytics-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-analytics-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-analytics-js.min.js.map +1 -1
  18. package/dist-es5/JavaScriptSDK/AnalyticsPlugin.js +20 -5
  19. package/dist-es5/JavaScriptSDK/AnalyticsPlugin.js.map +1 -1
  20. package/dist-es5/JavaScriptSDK/Interfaces/IAnalyticsConfig.js +1 -1
  21. package/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js +6 -3
  22. package/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js.map +1 -1
  23. package/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js +1 -1
  24. package/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js +1 -1
  25. package/dist-es5/JavaScriptSDK/Timing.js +1 -1
  26. package/dist-es5/__DynamicConstants.js +4 -2
  27. package/dist-es5/__DynamicConstants.js.map +1 -1
  28. package/dist-es5/applicationinsights-analytics-js.js +1 -1
  29. package/package.json +5 -5
  30. package/types/applicationinsights-analytics-js.d.ts +1 -1
  31. package/types/applicationinsights-analytics-js.namespaced.d.ts +14 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Web Analytics, 3.3.10-nightly3.2507-07
2
+ * Application Insights JavaScript SDK - Web Analytics, 3.3.10-nightly3.2507-17
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -1200,6 +1200,8 @@
1200
1200
  var _DYN_USER_AGENT = "userAgent";
1201
1201
  var _DYN_SPLIT$1 = "split";
1202
1202
  var _DYN_REPLACE = "replace";
1203
+ var _DYN_SUBSTRING = "substring";
1204
+ var _DYN_INDEX_OF = "indexOf";
1203
1205
  var _DYN_TYPE = "type";
1204
1206
  var _DYN_EVT_NAME = "evtName";
1205
1207
  var _DYN_IS_CHILD_EVT = "isChildEvt";
@@ -1234,6 +1236,8 @@
1234
1236
  var STR_DOMAIN = "domain";
1235
1237
  var STR_PATH = "path";
1236
1238
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1239
+ var STR_REDACTED = "REDACTED";
1240
+ var DEFAULT_SENSITIVE_PARAMS = ["sig", "Signature", "AWSAccessKeyId", "X-Goog-Signature"];
1237
1241
 
1238
1242
  var strGetPrototypeOf = "getPrototypeOf";
1239
1243
  var rCamelCase = /-([a-z])/g;
@@ -1361,6 +1365,110 @@
1361
1365
  }
1362
1366
  return _isTrident;
1363
1367
  }
1368
+ function redactUserInfo(url) {
1369
+ return url.replace(/^([a-zA-Z][a-zA-Z0-9+.-]*:\/\/)([^:@]{1,200}):([^@]{1,200})@(.*)$/, "$1REDACTED:REDACTED@$4");
1370
+ }
1371
+ function redactQueryParameters(url, config) {
1372
+ var sensitiveParams;
1373
+ var questionMarkIndex = strIndexOf(url, "?");
1374
+ if (questionMarkIndex === -1) {
1375
+ return url;
1376
+ }
1377
+ if (config && config.redactQueryParams) {
1378
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS.concat(config.redactQueryParams);
1379
+ }
1380
+ else {
1381
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS;
1382
+ }
1383
+ var baseUrl = strSubstring(url, 0, questionMarkIndex + 1);
1384
+ var queryString = strSubstring(url, questionMarkIndex + 1);
1385
+ var fragment = STR_EMPTY;
1386
+ var hashIndex = strIndexOf(queryString, "#");
1387
+ if (hashIndex !== -1) {
1388
+ fragment = strSubstring(queryString, hashIndex);
1389
+ queryString = strSubstring(queryString, 0, hashIndex);
1390
+ }
1391
+ var hasPotentialSensitiveParam = false;
1392
+ for (var i = 0; i < sensitiveParams[_DYN_LENGTH$2 ]; i++) {
1393
+ var paramCheck = sensitiveParams[i] + "=";
1394
+ if (strIndexOf(queryString, paramCheck) !== -1) {
1395
+ hasPotentialSensitiveParam = true;
1396
+ break;
1397
+ }
1398
+ }
1399
+ if (!hasPotentialSensitiveParam) {
1400
+ return url;
1401
+ }
1402
+ var resultParts = [];
1403
+ var anyParamRedacted = false;
1404
+ if (queryString && queryString[_DYN_LENGTH$2 ]) {
1405
+ var pairs = queryString[_DYN_SPLIT$1 ]("&");
1406
+ for (var i = 0; i < pairs[_DYN_LENGTH$2 ]; i++) {
1407
+ var pair = pairs[i];
1408
+ if (!pair) {
1409
+ continue;
1410
+ }
1411
+ var equalsIndex = strIndexOf(pair, "=");
1412
+ if (equalsIndex === -1) {
1413
+ resultParts[_DYN_PUSH ](pair);
1414
+ }
1415
+ else {
1416
+ var paramName = pair[_DYN_SUBSTRING ](0, equalsIndex);
1417
+ var paramValue = pair[_DYN_SUBSTRING ](equalsIndex + 1);
1418
+ if (paramValue === STR_EMPTY) {
1419
+ resultParts[_DYN_PUSH ](pair);
1420
+ }
1421
+ else {
1422
+ var shouldRedact = false;
1423
+ for (var j = 0; j < sensitiveParams[_DYN_LENGTH$2 ]; j++) {
1424
+ if (paramName === sensitiveParams[j]) {
1425
+ shouldRedact = true;
1426
+ anyParamRedacted = true;
1427
+ break;
1428
+ }
1429
+ }
1430
+ if (shouldRedact) {
1431
+ resultParts[_DYN_PUSH ](paramName + "=" + STR_REDACTED);
1432
+ }
1433
+ else {
1434
+ resultParts[_DYN_PUSH ](pair);
1435
+ }
1436
+ }
1437
+ }
1438
+ }
1439
+ }
1440
+ if (!anyParamRedacted) {
1441
+ return url;
1442
+ }
1443
+ return baseUrl + resultParts.join("&") + fragment;
1444
+ }
1445
+ function fieldRedaction(input, config) {
1446
+ if (!input || input[_DYN_INDEX_OF ](" ") !== -1) {
1447
+ return input;
1448
+ }
1449
+ var isRedactionDisabled = config && config.redactUrls === false;
1450
+ if (isRedactionDisabled) {
1451
+ return input;
1452
+ }
1453
+ var hasCredentials = strIndexOf(input, "@") !== -1;
1454
+ var hasQueryParams = strIndexOf(input, "?") !== -1;
1455
+ if (!hasCredentials && !hasQueryParams) {
1456
+ return input;
1457
+ }
1458
+ try {
1459
+ var result = input;
1460
+ if (hasCredentials) {
1461
+ result = redactUserInfo(input);
1462
+ }
1463
+ if (hasQueryParams) {
1464
+ result = redactQueryParameters(result, config);
1465
+ }
1466
+ return result;
1467
+ }
1468
+ catch (e) {
1469
+ return input;
1470
+ }
1471
+ }
1364
1472
 
1365
1473
  var UInt32Mask = 0x100000000;
1366
1474
  var MaxUInt32 = 0xffffffff;
@@ -1432,7 +1540,7 @@
1432
1540
  return result;
1433
1541
  }
1434
1542
 
1435
- var version = '3.3.10-nightly3.2507-07';
1543
+ var version = '3.3.10-nightly3.2507-17';
1436
1544
  var instanceName = "." + newId(6);
1437
1545
  var _dataUid = 0;
1438
1546
  function _canAcceptData(target) {
@@ -3738,7 +3846,10 @@
3738
3846
  }
3739
3847
  return valueTrunc || value;
3740
3848
  }
3741
- function dataSanitizeUrl(logger, url) {
3849
+ function dataSanitizeUrl(logger, url, config) {
3850
+ if (isString(url)) {
3851
+ url = fieldRedaction(url, config);
3852
+ }
3742
3853
  return dataSanitizeInput(logger, url, 2048 , 66 );
3743
3854
  }
3744
3855
  function dataSanitizeMessage(logger, message) {
@@ -3939,10 +4050,10 @@
3939
4050
  };
3940
4051
  }
3941
4052
 
3942
- var StorageType = createEnumStyle({
4053
+ var StorageType = ( /* @__PURE__ */createEnumStyle({
3943
4054
  LocalStorage: 0 ,
3944
4055
  SessionStorage: 1
3945
- });
4056
+ }));
3946
4057
 
3947
4058
  var _canUseLocalStorage = undefined;
3948
4059
  var _canUseSessionStorage = undefined;
@@ -4887,8 +4998,10 @@
4887
4998
  var _DYN_DIAG_LOG = "diagLog";
4888
4999
  var _DYN_TRACK = "track";
4889
5000
  var _DYN_TRACK_PAGE_VIEW = "trackPageView";
5001
+ var _DYN_CONFIG = "config";
4890
5002
  var _DYN_TRACK_PREVIOUS_PAGE_1 = "trackPreviousPageVisit";
4891
5003
  var _DYN_SEND_PAGE_VIEW_INTER2 = "sendPageViewInternal";
5004
+ var _DYN_REF_URI = "refUri";
4892
5005
  var _DYN_START_TIME = "startTime";
4893
5006
  var _DYN_PROPERTIES = "properties";
4894
5007
  var _DYN_DURATION = "duration";
@@ -4977,6 +5090,9 @@
4977
5090
  var location_1 = getLocation();
4978
5091
  uri = pageView.uri = location_1 && location_1[_DYN_HREF ] || "";
4979
5092
  }
5093
+ if (core && core[_DYN_CONFIG ]) {
5094
+ uri = pageView.uri = fieldRedaction(pageView.uri, core[_DYN_CONFIG ]);
5095
+ }
4980
5096
  if (!firstPageViewSent) {
4981
5097
  var perf = getPerformance();
4982
5098
  var navigationEntries = (perf && perf[_DYN_GET_ENTRIES_BY_TYPE ] && perf[_DYN_GET_ENTRIES_BY_TYPE ]("navigation"));
@@ -5436,6 +5552,9 @@
5436
5552
  _self[_DYN_TRACK_PAGE_VIEW ] = function (pageView, customProperties) {
5437
5553
  try {
5438
5554
  var inPv = pageView || {};
5555
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ][_DYN_CONFIG ]) {
5556
+ inPv.uri = fieldRedaction(inPv.uri, _self[_DYN_CORE ][_DYN_CONFIG ]);
5557
+ }
5439
5558
  _pageViewManager[_DYN_TRACK_PAGE_VIEW ](inPv, __assignFn(__assignFn(__assignFn({}, inPv.properties), inPv.measurements), customProperties));
5440
5559
  if (_autoTrackPageVisitTime) {
5441
5560
  _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 ](inPv.name, inPv.uri);
@@ -5448,7 +5567,10 @@
5448
5567
  _self[_DYN_SEND_PAGE_VIEW_INTER2 ] = function (pageView, properties, systemProperties) {
5449
5568
  var doc = getDocument();
5450
5569
  if (doc) {
5451
- pageView.refUri = pageView.refUri === undefined ? doc.referrer : pageView.refUri;
5570
+ pageView[_DYN_REF_URI ] = pageView[_DYN_REF_URI ] === undefined ? doc.referrer : pageView[_DYN_REF_URI ];
5571
+ }
5572
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ][_DYN_CONFIG ]) {
5573
+ pageView.refUri = fieldRedaction(pageView.refUri, _self[_DYN_CORE ][_DYN_CONFIG ]);
5452
5574
  }
5453
5575
  if (isNullOrUndefined(pageView[_DYN_START_TIME ])) {
5454
5576
  var duration = ((properties || pageView[_DYN_PROPERTIES ] || {})[_DYN_DURATION ] || 0);
@@ -5493,6 +5615,9 @@
5493
5615
  var loc = getLocation();
5494
5616
  url = loc && loc[_DYN_HREF ] || "";
5495
5617
  }
5618
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ][_DYN_CONFIG ]) {
5619
+ url = fieldRedaction(url, _self[_DYN_CORE ][_DYN_CONFIG ]);
5620
+ }
5496
5621
  _pageTracking.stop(name, url, properties, measurement);
5497
5622
  if (_autoTrackPageVisitTime) {
5498
5623
  _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 ](name, url);
@@ -5759,6 +5884,9 @@
5759
5884
  else {
5760
5885
  _currUri = locn && locn[_DYN_HREF ] || "";
5761
5886
  }
5887
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ][_DYN_CONFIG ]) {
5888
+ _currUri = fieldRedaction(_currUri, _self[_DYN_CORE ][_DYN_CONFIG ]);
5889
+ }
5762
5890
  if (_enableAutoRouteTracking) {
5763
5891
  var distributedTraceCtx = _getDistributedTraceCtx();
5764
5892
  if (distributedTraceCtx) {
@@ -5835,6 +5963,9 @@
5835
5963
  _autoTrackPageVisitTime = false;
5836
5964
  var location = getLocation(true);
5837
5965
  _prevUri = location && location[_DYN_HREF ] || "";
5966
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ][_DYN_CONFIG ]) {
5967
+ _prevUri = fieldRedaction(_prevUri, _self[_DYN_CORE ][_DYN_CONFIG ]);
5968
+ }
5838
5969
  _currUri = null;
5839
5970
  _evtNamespace = null;
5840
5971
  _extConfig = null;
@@ -5850,7 +5981,7 @@
5850
5981
  });
5851
5982
  return _this;
5852
5983
  }
5853
- AnalyticsPlugin.Version = '3.3.10-nightly3.2507-07';
5984
+ AnalyticsPlugin.Version = '3.3.10-nightly3.2507-17';
5854
5985
  return AnalyticsPlugin;
5855
5986
  }(BaseTelemetryPlugin));
5856
5987