@microsoft/applicationinsights-dependencies-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 (30) hide show
  1. package/browser/es5/applicationinsights-dependencies-js.cjs.js +119 -5
  2. package/browser/es5/applicationinsights-dependencies-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-dependencies-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-dependencies-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-dependencies-js.gbl.js +121 -7
  6. package/browser/es5/applicationinsights-dependencies-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-dependencies-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-dependencies-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-dependencies-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-dependencies-js.js +121 -7
  11. package/browser/es5/applicationinsights-dependencies-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-dependencies-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-dependencies-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-dependencies-js.js +119 -5
  15. package/dist/es5/applicationinsights-dependencies-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-dependencies-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-dependencies-js.min.js.map +1 -1
  18. package/dist-es5/DependencyInitializer.js +1 -1
  19. package/dist-es5/DependencyListener.js +1 -1
  20. package/dist-es5/InternalConstants.js +1 -1
  21. package/dist-es5/__DynamicConstants.js +2 -2
  22. package/dist-es5/__DynamicConstants.js.map +1 -1
  23. package/dist-es5/ajax.js +5 -2
  24. package/dist-es5/ajax.js.map +1 -1
  25. package/dist-es5/ajaxRecord.js +1 -1
  26. package/dist-es5/ajaxUtils.js +1 -1
  27. package/dist-es5/applicationinsights-dependencies-js.js +1 -1
  28. package/package.json +3 -3
  29. package/types/applicationinsights-dependencies-js.d.ts +1 -1
  30. package/types/applicationinsights-dependencies-js.namespaced.d.ts +14 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Dependencies Plugin, 3.3.10-nightly3.2507-07
2
+ * Application Insights JavaScript SDK - Dependencies Plugin, 3.3.10-nightly3.2507-17
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -1160,6 +1160,8 @@
1160
1160
  var _DYN_USER_AGENT = "userAgent";
1161
1161
  var _DYN_SPLIT$1 = "split";
1162
1162
  var _DYN_REPLACE = "replace";
1163
+ var _DYN_SUBSTRING = "substring";
1164
+ var _DYN_INDEX_OF = "indexOf";
1163
1165
  var _DYN_TYPE = "type";
1164
1166
  var _DYN_IS_CHILD_EVT = "isChildEvt";
1165
1167
  var _DYN_GET_CTX = "getCtx";
@@ -1191,6 +1193,8 @@
1191
1193
  var STR_PRIORITY = "priority";
1192
1194
  var STR_GET_PERF_MGR = "getPerfMgr";
1193
1195
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1196
+ var STR_REDACTED = "REDACTED";
1197
+ var DEFAULT_SENSITIVE_PARAMS = ["sig", "Signature", "AWSAccessKeyId", "X-Goog-Signature"];
1194
1198
 
1195
1199
  var strGetPrototypeOf = "getPrototypeOf";
1196
1200
  var rCamelCase = /-([a-z])/g;
@@ -1351,6 +1355,110 @@
1351
1355
  }
1352
1356
  return isSupported;
1353
1357
  }
1358
+ function redactUserInfo(url) {
1359
+ return url.replace(/^([a-zA-Z][a-zA-Z0-9+.-]*:\/\/)([^:@]{1,200}):([^@]{1,200})@(.*)$/, "$1REDACTED:REDACTED@$4");
1360
+ }
1361
+ function redactQueryParameters(url, config) {
1362
+ var sensitiveParams;
1363
+ var questionMarkIndex = strIndexOf(url, "?");
1364
+ if (questionMarkIndex === -1) {
1365
+ return url;
1366
+ }
1367
+ if (config && config.redactQueryParams) {
1368
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS.concat(config.redactQueryParams);
1369
+ }
1370
+ else {
1371
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS;
1372
+ }
1373
+ var baseUrl = strSubstring(url, 0, questionMarkIndex + 1);
1374
+ var queryString = strSubstring(url, questionMarkIndex + 1);
1375
+ var fragment = STR_EMPTY;
1376
+ var hashIndex = strIndexOf(queryString, "#");
1377
+ if (hashIndex !== -1) {
1378
+ fragment = strSubstring(queryString, hashIndex);
1379
+ queryString = strSubstring(queryString, 0, hashIndex);
1380
+ }
1381
+ var hasPotentialSensitiveParam = false;
1382
+ for (var i = 0; i < sensitiveParams[_DYN_LENGTH$2 ]; i++) {
1383
+ var paramCheck = sensitiveParams[i] + "=";
1384
+ if (strIndexOf(queryString, paramCheck) !== -1) {
1385
+ hasPotentialSensitiveParam = true;
1386
+ break;
1387
+ }
1388
+ }
1389
+ if (!hasPotentialSensitiveParam) {
1390
+ return url;
1391
+ }
1392
+ var resultParts = [];
1393
+ var anyParamRedacted = false;
1394
+ if (queryString && queryString[_DYN_LENGTH$2 ]) {
1395
+ var pairs = queryString[_DYN_SPLIT$1 ]("&");
1396
+ for (var i = 0; i < pairs[_DYN_LENGTH$2 ]; i++) {
1397
+ var pair = pairs[i];
1398
+ if (!pair) {
1399
+ continue;
1400
+ }
1401
+ var equalsIndex = strIndexOf(pair, "=");
1402
+ if (equalsIndex === -1) {
1403
+ resultParts[_DYN_PUSH ](pair);
1404
+ }
1405
+ else {
1406
+ var paramName = pair[_DYN_SUBSTRING ](0, equalsIndex);
1407
+ var paramValue = pair[_DYN_SUBSTRING ](equalsIndex + 1);
1408
+ if (paramValue === STR_EMPTY) {
1409
+ resultParts[_DYN_PUSH ](pair);
1410
+ }
1411
+ else {
1412
+ var shouldRedact = false;
1413
+ for (var j = 0; j < sensitiveParams[_DYN_LENGTH$2 ]; j++) {
1414
+ if (paramName === sensitiveParams[j]) {
1415
+ shouldRedact = true;
1416
+ anyParamRedacted = true;
1417
+ break;
1418
+ }
1419
+ }
1420
+ if (shouldRedact) {
1421
+ resultParts[_DYN_PUSH ](paramName + "=" + STR_REDACTED);
1422
+ }
1423
+ else {
1424
+ resultParts[_DYN_PUSH ](pair);
1425
+ }
1426
+ }
1427
+ }
1428
+ }
1429
+ }
1430
+ if (!anyParamRedacted) {
1431
+ return url;
1432
+ }
1433
+ return baseUrl + resultParts.join("&") + fragment;
1434
+ }
1435
+ function fieldRedaction(input, config) {
1436
+ if (!input || input[_DYN_INDEX_OF ](" ") !== -1) {
1437
+ return input;
1438
+ }
1439
+ var isRedactionDisabled = config && config.redactUrls === false;
1440
+ if (isRedactionDisabled) {
1441
+ return input;
1442
+ }
1443
+ var hasCredentials = strIndexOf(input, "@") !== -1;
1444
+ var hasQueryParams = strIndexOf(input, "?") !== -1;
1445
+ if (!hasCredentials && !hasQueryParams) {
1446
+ return input;
1447
+ }
1448
+ try {
1449
+ var result = input;
1450
+ if (hasCredentials) {
1451
+ result = redactUserInfo(input);
1452
+ }
1453
+ if (hasQueryParams) {
1454
+ result = redactQueryParameters(result, config);
1455
+ }
1456
+ return result;
1457
+ }
1458
+ catch (e) {
1459
+ return input;
1460
+ }
1461
+ }
1354
1462
 
1355
1463
  var UInt32Mask = 0x100000000;
1356
1464
  var MaxUInt32 = 0xffffffff;
@@ -1422,7 +1530,7 @@
1422
1530
  return result;
1423
1531
  }
1424
1532
 
1425
- var version = '3.3.10-nightly3.2507-07';
1533
+ var version = '3.3.10-nightly3.2507-17';
1426
1534
  var instanceName = "." + newId(6);
1427
1535
  var _dataUid = 0;
1428
1536
  function _canAcceptData(target) {
@@ -3289,7 +3397,7 @@
3289
3397
  var strNotSpecified = "not_specified";
3290
3398
  var strIkey = "iKey";
3291
3399
 
3292
- var RequestHeaders = createValueMap({
3400
+ var RequestHeaders = ( /* @__PURE__ */createValueMap({
3293
3401
  requestContextHeader: [0 , "Request-Context"],
3294
3402
  requestContextTargetKey: [1 , "appId"],
3295
3403
  requestContextAppIdFormat: [2 , "appId=cid-v1:"],
@@ -3299,7 +3407,7 @@
3299
3407
  sdkContextHeader: [6 , "Sdk-Context"],
3300
3408
  sdkContextHeaderAppIdRequest: [7 , "appId"],
3301
3409
  requestContextHeaderLowerCase: [8 , "request-context"]
3302
- });
3410
+ }));
3303
3411
 
3304
3412
  var _DYN_SPLIT = "split";
3305
3413
  var _DYN_LENGTH$1 = "length";
@@ -3351,7 +3459,10 @@
3351
3459
  }
3352
3460
  return valueTrunc || value;
3353
3461
  }
3354
- function dataSanitizeUrl(logger, url) {
3462
+ function dataSanitizeUrl(logger, url, config) {
3463
+ if (isString(url)) {
3464
+ url = fieldRedaction(url, config);
3465
+ }
3355
3466
  return dataSanitizeInput(logger, url, 2048 , 66 );
3356
3467
  }
3357
3468
  function dataSanitizeProperties(logger, properties) {
@@ -5008,6 +5119,9 @@
5008
5119
  requestUrl = strSplit(location_1.href, "#")[0];
5009
5120
  }
5010
5121
  }
5122
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ].config) {
5123
+ requestUrl = fieldRedaction(requestUrl, _self[_DYN_CORE ].config);
5124
+ }
5011
5125
  ajaxData[_DYN_REQUEST_URL ] = requestUrl;
5012
5126
  var method = "GET";
5013
5127
  if (init && init[_DYN_METHOD ]) {