@microsoft/applicationinsights-analytics-js 3.3.5-nightly3.2501-07 → 3.3.5-nightly3.2502-02

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 (32) hide show
  1. package/browser/es5/applicationinsights-analytics-js.cjs.js +289 -169
  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 +291 -171
  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 +291 -171
  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 +289 -169
  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 +38 -27
  19. package/dist-es5/JavaScriptSDK/AnalyticsPlugin.js.map +1 -1
  20. package/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js +6 -6
  21. package/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js.map +1 -1
  22. package/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js +7 -7
  23. package/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js.map +1 -1
  24. package/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js +4 -4
  25. package/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js.map +1 -1
  26. package/dist-es5/JavaScriptSDK/Timing.js +1 -1
  27. package/dist-es5/__DynamicConstants.js +12 -11
  28. package/dist-es5/__DynamicConstants.js.map +1 -1
  29. package/dist-es5/applicationinsights-analytics-js.js +1 -1
  30. package/package.json +6 -6
  31. package/types/applicationinsights-analytics-js.d.ts +12 -12
  32. package/types/applicationinsights-analytics-js.namespaced.d.ts +17 -17
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Web Analytics, 3.3.5-nightly3.2501-07
2
+ * Application Insights JavaScript SDK - Web Analytics, 3.3.5-nightly3.2502-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -1345,7 +1345,7 @@
1345
1345
  return result;
1346
1346
  }
1347
1347
 
1348
- var version = '3.3.5-nightly3.2501-07';
1348
+ var version = '3.3.5-nightly3.2502-02';
1349
1349
  var instanceName = "." + newId(6);
1350
1350
  var _dataUid = 0;
1351
1351
  function _canAcceptData(target) {
@@ -3610,6 +3610,7 @@
3610
3610
  var _DYN_COUNT = "count";
3611
3611
  var _DYN_STRINGIFY = "stringify";
3612
3612
  var _DYN_PATHNAME = "pathname";
3613
+ var _DYN_MATCH = "match";
3613
3614
  var _DYN_EXCEPTIONS = "exceptions";
3614
3615
  var _DYN_PARSED_STACK = "parsedStack";
3615
3616
  var _DYN_PROPERTIES$1 = "properties";
@@ -3619,13 +3620,13 @@
3619
3620
  var _DYN_SEVERITY_LEVEL = "severityLevel";
3620
3621
  var _DYN_PROBLEM_GROUP = "problemGroup";
3621
3622
  var _DYN_IS_MANUAL = "isManual";
3622
- var _DYN__CREATE_FROM_INTERFA1 = "CreateFromInterface";
3623
+ var _DYN_HAS_FULL_STACK = "hasFullStack";
3623
3624
  var _DYN_ASSEMBLY = "assembly";
3624
3625
  var _DYN_FILE_NAME = "fileName";
3625
- var _DYN_HAS_FULL_STACK = "hasFullStack";
3626
- var _DYN_LEVEL = "level";
3627
- var _DYN_METHOD = "method";
3628
3626
  var _DYN_LINE = "line";
3627
+ var _DYN_METHOD = "method";
3628
+ var _DYN_LEVEL = "level";
3629
+ var _DYN_AI_DATA_CONTRACT = "aiDataContract";
3629
3630
  var _DYN_DURATION$1 = "duration";
3630
3631
  var _DYN_RECEIVED_RESPONSE = "receivedResponse";
3631
3632
 
@@ -3765,7 +3766,7 @@
3765
3766
  function urlParseHost(url, inclPort) {
3766
3767
  var fullHost = urlParseFullHost(url, inclPort) || "";
3767
3768
  if (fullHost) {
3768
- var match = fullHost.match(/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);
3769
+ var match = fullHost[_DYN_MATCH ](/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);
3769
3770
  if (match != null && match[_DYN_LENGTH$1 ] > 3 && isString(match[2]) && match[2][_DYN_LENGTH$1 ] > 0) {
3770
3771
  return match[2] + (match[3] || "");
3771
3772
  }
@@ -3775,7 +3776,7 @@
3775
3776
  function urlParseFullHost(url, inclPort) {
3776
3777
  var result = null;
3777
3778
  if (url) {
3778
- var match = url.match(/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);
3779
+ var match = url[_DYN_MATCH ](/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);
3779
3780
  if (match != null && match[_DYN_LENGTH$1 ] > 2 && isString(match[2]) && match[2][_DYN_LENGTH$1 ] > 0) {
3780
3781
  result = match[2] || "";
3781
3782
  if (inclPort && match[_DYN_LENGTH$1 ] > 2) {
@@ -3985,6 +3986,14 @@
3985
3986
  return Event;
3986
3987
  }());
3987
3988
 
3989
+ var STACKFRAME_BASE_SIZE = 58;
3990
+ var IS_FRAME = /^\s{0,50}(from\s|at\s|Line\s{1,5}\d{1,10}\s{1,5}of|\w{1,50}@\w{1,80}|[^\(\s\n]+:[0-9\?]+(?::[0-9\?]+)?)/;
3991
+ var FULL_STACK_FRAME_1 = /^(?:\s{0,50}at)?\s{0,50}([^\@\()\s]+)?\s{0,50}(?:\s|\@|\()\s{0,5}([^\(\s\n\]]+):([0-9\?]+):([0-9\?]+)\)?$/;
3992
+ var FULL_STACK_FRAME_2 = /^(?:\s{0,50}at)?\s{0,50}([^\@\()\s]+)?\s{0,50}(?:\s|\@|\()\s{0,5}([^\(\s\n\]]+):([0-9\?]+)\)?$/;
3993
+ var FULL_STACK_FRAME_3 = /^(?:\s{0,50}at)?\s{0,50}([^\@\()\s]+)?\s{0,50}(?:\s|\@|\()\s{0,5}([^\(\s\n\)\]]+)\)?$/;
3994
+ var EXTRACT_FILENAME = /(?:^|\(|\s{0,10}[\w\)]+\@)?([^\(\n\s\]\)]+)(?:\:([0-9]+)(?:\:([0-9]+))?)?\)?(?:,|$)/;
3995
+ var PARSE_FILENAME_LINE_COL = /([^\(\s\n]+):([0-9]+):([0-9]+)$/;
3996
+ var PARSE_FILENAME_LINE_ONLY = /([^\(\s\n]+):([0-9]+)$/;
3988
3997
  var NoMethod = "<no_method>";
3989
3998
  var strError = "error";
3990
3999
  var strStack = "stack";
@@ -3992,6 +4001,18 @@
3992
4001
  var strErrorSrc = "errorSrc";
3993
4002
  var strMessage = "message";
3994
4003
  var strDescription = "description";
4004
+ var _parseSequence = [
4005
+ { re: FULL_STACK_FRAME_1, len: 5, m: 1, fn: 2, ln: 3, col: 4 },
4006
+ { chk: _ignoreNative, pre: _scrubAnonymous, re: FULL_STACK_FRAME_2, len: 4, m: 1, fn: 2, ln: 3 },
4007
+ { re: FULL_STACK_FRAME_3, len: 3, m: 1, fn: 2, hdl: _handleFilename },
4008
+ { re: EXTRACT_FILENAME, len: 2, fn: 1, hdl: _handleFilename }
4009
+ ];
4010
+ function _scrubAnonymous(frame) {
4011
+ return frame.replace(/(\(anonymous\))/, "<anonymous>");
4012
+ }
4013
+ function _ignoreNative(frame) {
4014
+ return strIndexOf(frame, "[native") < 0;
4015
+ }
3995
4016
  function _stringify(value, convertToString) {
3996
4017
  var result = value;
3997
4018
  if (result && !isString(result)) {
@@ -4139,9 +4160,7 @@
4139
4160
  var stack = "";
4140
4161
  if (stackDetails) {
4141
4162
  if (stackDetails.obj) {
4142
- arrForEach(stackDetails.obj, function (entry) {
4143
- stack += entry + "\n";
4144
- });
4163
+ stack = stackDetails.obj.join("\n");
4145
4164
  }
4146
4165
  else {
4147
4166
  stack = stackDetails.src || "";
@@ -4155,13 +4174,18 @@
4155
4174
  if (frames && frames[_DYN_LENGTH$1 ] > 0) {
4156
4175
  parsedStack = [];
4157
4176
  var level_1 = 0;
4177
+ var foundStackStart_1 = false;
4158
4178
  var totalSizeInBytes_1 = 0;
4159
4179
  arrForEach(frames, function (frame) {
4160
- var theFrame = frame[_DYN_TO_STRING$1 ]();
4161
- if (_StackFrame.regex.test(theFrame)) {
4162
- var parsedFrame = new _StackFrame(theFrame, level_1++);
4163
- totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES ];
4164
- parsedStack[_DYN_PUSH ](parsedFrame);
4180
+ if (foundStackStart_1 || _isStackFrame(frame)) {
4181
+ var theFrame = asString(frame);
4182
+ foundStackStart_1 = true;
4183
+ var parsedFrame = _extractStackFrame(theFrame, level_1);
4184
+ if (parsedFrame) {
4185
+ totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES ];
4186
+ parsedStack[_DYN_PUSH ](parsedFrame);
4187
+ level_1++;
4188
+ }
4165
4189
  }
4166
4190
  });
4167
4191
  var exceptionParsedStackThreshold = 32 * 1024;
@@ -4247,7 +4271,7 @@
4247
4271
  if (id) {
4248
4272
  properties.id = id;
4249
4273
  }
4250
- _self[_DYN_EXCEPTIONS ] = [new _ExceptionDetails(logger, exception, properties)];
4274
+ _self[_DYN_EXCEPTIONS ] = [_createExceptionDetails(logger, exception, properties)];
4251
4275
  _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
4252
4276
  _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
4253
4277
  if (severityLevel) {
@@ -4293,7 +4317,7 @@
4293
4317
  };
4294
4318
  Exception.CreateFromInterface = function (logger, exception, properties, measurements) {
4295
4319
  var exceptions = exception[_DYN_EXCEPTIONS ]
4296
- && arrMap(exception[_DYN_EXCEPTIONS ], function (ex) { return _ExceptionDetails[_DYN__CREATE_FROM_INTERFA1 ](logger, ex); });
4320
+ && arrMap(exception[_DYN_EXCEPTIONS ], function (ex) { return _createExDetailsFromInterface(logger, ex); });
4297
4321
  var exceptionData = new Exception(logger, __assignFn(__assignFn({}, exception), { exceptions: exceptions }), properties, measurements);
4298
4322
  return exceptionData;
4299
4323
  };
@@ -4333,131 +4357,218 @@
4333
4357
  Exception.formatError = _formatErrorCode;
4334
4358
  return Exception;
4335
4359
  }());
4336
- var _ExceptionDetails = /** @class */ (function () {
4337
- function _ExceptionDetails(logger, exception, properties) {
4338
- this.aiDataContract = {
4339
- id: 0 ,
4340
- outerId: 0 ,
4341
- typeName: 1 ,
4342
- message: 1 ,
4343
- hasFullStack: 0 ,
4344
- stack: 0 ,
4345
- parsedStack: 2
4346
- };
4347
- var _self = this;
4348
- if (!_isExceptionDetailsInternal(exception)) {
4349
- var error = exception;
4350
- var evt = error && error.evt;
4351
- if (!isError(error)) {
4352
- error = error[strError] || evt || error;
4353
- }
4354
- _self[_DYN_TYPE_NAME ] = dataSanitizeString(logger, _getErrorType(error)) || strNotSpecified;
4355
- _self[_DYN_MESSAGE$1 ] = dataSanitizeMessage(logger, _formatMessage(exception || error, _self[_DYN_TYPE_NAME ])) || strNotSpecified;
4356
- var stack = exception[strStackDetails] || _getStackFromErrorObj(exception);
4357
- _self[_DYN_PARSED_STACK ] = _parseStack(stack);
4358
- if (isArray(_self[_DYN_PARSED_STACK ])) {
4359
- arrMap(_self[_DYN_PARSED_STACK ], function (frame) {
4360
- frame[_DYN_ASSEMBLY ] = dataSanitizeString(logger, frame[_DYN_ASSEMBLY ]);
4361
- frame[_DYN_FILE_NAME ] = dataSanitizeString(logger, frame[_DYN_FILE_NAME ]);
4362
- });
4363
- }
4364
- _self[strStack] = dataSanitizeException(logger, _formatStackTrace(stack));
4365
- _self.hasFullStack = isArray(_self.parsedStack) && _self.parsedStack[_DYN_LENGTH$1 ] > 0;
4366
- if (properties) {
4367
- properties[_DYN_TYPE_NAME ] = properties[_DYN_TYPE_NAME ] || _self[_DYN_TYPE_NAME ];
4368
- }
4360
+ var exDetailsAiDataContract = objFreeze({
4361
+ id: 0 ,
4362
+ outerId: 0 ,
4363
+ typeName: 1 ,
4364
+ message: 1 ,
4365
+ hasFullStack: 0 ,
4366
+ stack: 0 ,
4367
+ parsedStack: 2
4368
+ });
4369
+ function _toInterface() {
4370
+ var _a;
4371
+ var _self = this;
4372
+ var parsedStack = isArray(_self[_DYN_PARSED_STACK ])
4373
+ && arrMap(_self[_DYN_PARSED_STACK ], function (frame) { return _parsedFrameToInterface(frame); });
4374
+ var exceptionDetailsInterface = (_a = {
4375
+ id: _self.id,
4376
+ outerId: _self.outerId,
4377
+ typeName: _self[_DYN_TYPE_NAME ],
4378
+ message: _self[_DYN_MESSAGE$1 ],
4379
+ hasFullStack: _self[_DYN_HAS_FULL_STACK ],
4380
+ stack: _self[strStack]
4381
+ },
4382
+ _a[_DYN_PARSED_STACK ] = parsedStack || undefined,
4383
+ _a);
4384
+ return exceptionDetailsInterface;
4385
+ }
4386
+ function _createExceptionDetails(logger, exception, properties) {
4387
+ var _a;
4388
+ var id;
4389
+ var outerId;
4390
+ var typeName;
4391
+ var message;
4392
+ var hasFullStack;
4393
+ var theStack;
4394
+ var parsedStack;
4395
+ if (!_isExceptionDetailsInternal(exception)) {
4396
+ var error = exception;
4397
+ var evt = error && error.evt;
4398
+ if (!isError(error)) {
4399
+ error = error[strError] || evt || error;
4400
+ }
4401
+ typeName = dataSanitizeString(logger, _getErrorType(error)) || strNotSpecified;
4402
+ message = dataSanitizeMessage(logger, _formatMessage(exception || error, typeName)) || strNotSpecified;
4403
+ var stack = exception[strStackDetails] || _getStackFromErrorObj(exception);
4404
+ parsedStack = _parseStack(stack);
4405
+ if (isArray(parsedStack)) {
4406
+ arrMap(parsedStack, function (frame) {
4407
+ frame[_DYN_ASSEMBLY ] = dataSanitizeString(logger, frame[_DYN_ASSEMBLY ]);
4408
+ frame[_DYN_FILE_NAME ] = dataSanitizeString(logger, frame[_DYN_FILE_NAME ]);
4409
+ });
4410
+ }
4411
+ theStack = dataSanitizeException(logger, _formatStackTrace(stack));
4412
+ hasFullStack = isArray(parsedStack) && parsedStack[_DYN_LENGTH$1 ] > 0;
4413
+ if (properties) {
4414
+ properties[_DYN_TYPE_NAME ] = properties[_DYN_TYPE_NAME ] || typeName;
4415
+ }
4416
+ }
4417
+ else {
4418
+ typeName = exception[_DYN_TYPE_NAME ];
4419
+ message = exception[_DYN_MESSAGE$1 ];
4420
+ theStack = exception[strStack];
4421
+ parsedStack = exception[_DYN_PARSED_STACK ] || [];
4422
+ hasFullStack = exception[_DYN_HAS_FULL_STACK ];
4423
+ }
4424
+ return _a = {},
4425
+ _a[_DYN_AI_DATA_CONTRACT ] = exDetailsAiDataContract,
4426
+ _a.id = id,
4427
+ _a.outerId = outerId,
4428
+ _a[_DYN_TYPE_NAME ] = typeName,
4429
+ _a[_DYN_MESSAGE$1 ] = message,
4430
+ _a[_DYN_HAS_FULL_STACK ] = hasFullStack,
4431
+ _a.stack = theStack,
4432
+ _a[_DYN_PARSED_STACK ] = parsedStack,
4433
+ _a.toInterface = _toInterface,
4434
+ _a;
4435
+ }
4436
+ function _createExDetailsFromInterface(logger, exception) {
4437
+ var parsedStack = (isArray(exception[_DYN_PARSED_STACK ])
4438
+ && arrMap(exception[_DYN_PARSED_STACK ], function (frame) { return _stackFrameFromInterface(frame); }))
4439
+ || exception[_DYN_PARSED_STACK ];
4440
+ var exceptionDetails = _createExceptionDetails(logger, __assignFn(__assignFn({}, exception), { parsedStack: parsedStack }));
4441
+ return exceptionDetails;
4442
+ }
4443
+ function _parseFilename(theFrame, fileName) {
4444
+ var lineCol = fileName[_DYN_MATCH ](PARSE_FILENAME_LINE_COL);
4445
+ if (lineCol && lineCol[_DYN_LENGTH$1 ] >= 4) {
4446
+ theFrame[_DYN_FILE_NAME ] = lineCol[1];
4447
+ theFrame[_DYN_LINE ] = parseInt(lineCol[2]);
4448
+ }
4449
+ else {
4450
+ var lineNo = fileName[_DYN_MATCH ](PARSE_FILENAME_LINE_ONLY);
4451
+ if (lineNo && lineNo[_DYN_LENGTH$1 ] >= 3) {
4452
+ theFrame[_DYN_FILE_NAME ] = lineNo[1];
4453
+ theFrame[_DYN_LINE ] = parseInt(lineNo[2]);
4369
4454
  }
4370
4455
  else {
4371
- _self[_DYN_TYPE_NAME ] = exception[_DYN_TYPE_NAME ];
4372
- _self[_DYN_MESSAGE$1 ] = exception[_DYN_MESSAGE$1 ];
4373
- _self[strStack] = exception[strStack];
4374
- _self[_DYN_PARSED_STACK ] = exception[_DYN_PARSED_STACK ] || [];
4375
- _self[_DYN_HAS_FULL_STACK ] = exception[_DYN_HAS_FULL_STACK ];
4456
+ theFrame[_DYN_FILE_NAME ] = fileName;
4376
4457
  }
4377
4458
  }
4378
- _ExceptionDetails.prototype.toInterface = function () {
4379
- var _a;
4380
- var _self = this;
4381
- var parsedStack = _self[_DYN_PARSED_STACK ] instanceof Array
4382
- && arrMap(_self[_DYN_PARSED_STACK ], function (frame) { return frame.toInterface(); });
4383
- var exceptionDetailsInterface = (_a = {
4384
- id: _self.id,
4385
- outerId: _self.outerId,
4386
- typeName: _self[_DYN_TYPE_NAME ],
4387
- message: _self[_DYN_MESSAGE$1 ],
4388
- hasFullStack: _self[_DYN_HAS_FULL_STACK ],
4389
- stack: _self[strStack]
4390
- },
4391
- _a[_DYN_PARSED_STACK ] = parsedStack || undefined,
4459
+ }
4460
+ function _handleFilename(theFrame, sequence, matches) {
4461
+ var filename = theFrame[_DYN_FILE_NAME ];
4462
+ if (sequence.fn && matches && matches[_DYN_LENGTH$1 ] > sequence.fn) {
4463
+ if (sequence.ln && matches[_DYN_LENGTH$1 ] > sequence.ln) {
4464
+ filename = strTrim(matches[sequence.fn] || "");
4465
+ theFrame[_DYN_LINE ] = parseInt(strTrim(matches[sequence.ln] || "")) || 0;
4466
+ }
4467
+ else {
4468
+ filename = strTrim(matches[sequence.fn] || "");
4469
+ }
4470
+ }
4471
+ if (filename) {
4472
+ _parseFilename(theFrame, filename);
4473
+ }
4474
+ }
4475
+ function _isStackFrame(frame) {
4476
+ var result = false;
4477
+ if (frame && isString(frame)) {
4478
+ var trimmedFrame = strTrim(frame);
4479
+ if (trimmedFrame) {
4480
+ result = IS_FRAME.test(trimmedFrame);
4481
+ }
4482
+ }
4483
+ return result;
4484
+ }
4485
+ var stackFrameAiDataContract = objFreeze({
4486
+ level: 1 ,
4487
+ method: 1 ,
4488
+ assembly: 0 ,
4489
+ fileName: 0 ,
4490
+ line: 0
4491
+ });
4492
+ function _extractStackFrame(frame, level) {
4493
+ var _a;
4494
+ var theFrame;
4495
+ if (frame && isString(frame) && strTrim(frame)) {
4496
+ theFrame = (_a = {},
4497
+ _a[_DYN_AI_DATA_CONTRACT ] = stackFrameAiDataContract,
4498
+ _a[_DYN_LEVEL ] = level,
4499
+ _a[_DYN_ASSEMBLY ] = strTrim(frame),
4500
+ _a[_DYN_METHOD ] = NoMethod,
4501
+ _a.fileName = "",
4502
+ _a.line = 0,
4503
+ _a[_DYN_SIZE_IN_BYTES ] = 0,
4392
4504
  _a);
4393
- return exceptionDetailsInterface;
4394
- };
4395
- _ExceptionDetails.CreateFromInterface = function (logger, exception) {
4396
- var parsedStack = (exception[_DYN_PARSED_STACK ] instanceof Array
4397
- && arrMap(exception[_DYN_PARSED_STACK ], function (frame) { return _StackFrame[_DYN__CREATE_FROM_INTERFA1 ](frame); }))
4398
- || exception[_DYN_PARSED_STACK ];
4399
- var exceptionDetails = new _ExceptionDetails(logger, __assignFn(__assignFn({}, exception), { parsedStack: parsedStack }));
4400
- return exceptionDetails;
4401
- };
4402
- return _ExceptionDetails;
4403
- }());
4404
- var _StackFrame = /** @class */ (function () {
4405
- function _StackFrame(sourceFrame, level) {
4406
- this.aiDataContract = {
4407
- level: 1 ,
4408
- method: 1 ,
4409
- assembly: 0 ,
4410
- fileName: 0 ,
4411
- line: 0
4412
- };
4413
- var _self = this;
4414
- _self[_DYN_SIZE_IN_BYTES ] = 0;
4415
- if (typeof sourceFrame === "string") {
4416
- var frame = sourceFrame;
4417
- _self[_DYN_LEVEL ] = level;
4418
- _self[_DYN_METHOD ] = NoMethod;
4419
- _self[_DYN_ASSEMBLY ] = strTrim(frame);
4420
- _self[_DYN_FILE_NAME ] = "";
4421
- _self[_DYN_LINE ] = 0;
4422
- var matches = frame.match(_StackFrame.regex);
4423
- if (matches && matches[_DYN_LENGTH$1 ] >= 5) {
4424
- _self[_DYN_METHOD ] = strTrim(matches[2]) || _self[_DYN_METHOD ];
4425
- _self[_DYN_FILE_NAME ] = strTrim(matches[4]);
4426
- _self[_DYN_LINE ] = parseInt(matches[5]) || 0;
4505
+ var idx = 0;
4506
+ while (idx < _parseSequence[_DYN_LENGTH$1 ]) {
4507
+ var sequence = _parseSequence[idx];
4508
+ if (sequence.chk && !sequence.chk(frame)) {
4509
+ break;
4510
+ }
4511
+ if (sequence.pre) {
4512
+ frame = sequence.pre(frame);
4427
4513
  }
4514
+ var matches = frame[_DYN_MATCH ](sequence.re);
4515
+ if (matches && matches[_DYN_LENGTH$1 ] >= sequence.len) {
4516
+ if (sequence.m) {
4517
+ theFrame[_DYN_METHOD ] = strTrim(matches[sequence.m] || NoMethod);
4518
+ }
4519
+ if (sequence.hdl) {
4520
+ sequence.hdl(theFrame, sequence, matches);
4521
+ }
4522
+ else if (sequence.fn) {
4523
+ if (sequence.ln) {
4524
+ theFrame[_DYN_FILE_NAME ] = strTrim(matches[sequence.fn] || "");
4525
+ theFrame[_DYN_LINE ] = parseInt(strTrim(matches[sequence.ln] || "")) || 0;
4526
+ }
4527
+ else {
4528
+ _parseFilename(theFrame, matches[sequence.fn] || "");
4529
+ }
4530
+ }
4531
+ break;
4532
+ }
4533
+ idx++;
4428
4534
  }
4429
- else {
4430
- _self[_DYN_LEVEL ] = sourceFrame[_DYN_LEVEL ];
4431
- _self[_DYN_METHOD ] = sourceFrame[_DYN_METHOD ];
4432
- _self[_DYN_ASSEMBLY ] = sourceFrame[_DYN_ASSEMBLY ];
4433
- _self[_DYN_FILE_NAME ] = sourceFrame[_DYN_FILE_NAME ];
4434
- _self[_DYN_LINE ] = sourceFrame[_DYN_LINE ];
4435
- _self[_DYN_SIZE_IN_BYTES ] = 0;
4436
- }
4437
- _self.sizeInBytes += _self.method[_DYN_LENGTH$1 ];
4438
- _self.sizeInBytes += _self.fileName[_DYN_LENGTH$1 ];
4439
- _self.sizeInBytes += _self.assembly[_DYN_LENGTH$1 ];
4440
- _self[_DYN_SIZE_IN_BYTES ] += _StackFrame.baseSize;
4441
- _self.sizeInBytes += _self.level.toString()[_DYN_LENGTH$1 ];
4442
- _self.sizeInBytes += _self.line.toString()[_DYN_LENGTH$1 ];
4443
- }
4444
- _StackFrame.CreateFromInterface = function (frame) {
4445
- return new _StackFrame(frame, null );
4446
- };
4447
- _StackFrame.prototype.toInterface = function () {
4448
- var _self = this;
4449
- return {
4450
- level: _self[_DYN_LEVEL ],
4451
- method: _self[_DYN_METHOD ],
4452
- assembly: _self[_DYN_ASSEMBLY ],
4453
- fileName: _self[_DYN_FILE_NAME ],
4454
- line: _self[_DYN_LINE ]
4455
- };
4535
+ }
4536
+ return _populateFrameSizeInBytes(theFrame);
4537
+ }
4538
+ function _stackFrameFromInterface(frame) {
4539
+ var _a;
4540
+ var parsedFrame = (_a = {},
4541
+ _a[_DYN_AI_DATA_CONTRACT ] = stackFrameAiDataContract,
4542
+ _a.level = frame[_DYN_LEVEL ],
4543
+ _a.method = frame[_DYN_METHOD ],
4544
+ _a.assembly = frame[_DYN_ASSEMBLY ],
4545
+ _a.fileName = frame[_DYN_FILE_NAME ],
4546
+ _a.line = frame[_DYN_LINE ],
4547
+ _a[_DYN_SIZE_IN_BYTES ] = 0,
4548
+ _a);
4549
+ return _populateFrameSizeInBytes(parsedFrame);
4550
+ }
4551
+ function _populateFrameSizeInBytes(frame) {
4552
+ var sizeInBytes = STACKFRAME_BASE_SIZE;
4553
+ if (frame) {
4554
+ sizeInBytes += frame.method[_DYN_LENGTH$1 ];
4555
+ sizeInBytes += frame.assembly[_DYN_LENGTH$1 ];
4556
+ sizeInBytes += frame.fileName[_DYN_LENGTH$1 ];
4557
+ sizeInBytes += frame.level.toString()[_DYN_LENGTH$1 ];
4558
+ sizeInBytes += frame.line.toString()[_DYN_LENGTH$1 ];
4559
+ frame[_DYN_SIZE_IN_BYTES ] = sizeInBytes;
4560
+ }
4561
+ return frame;
4562
+ }
4563
+ function _parsedFrameToInterface(frame) {
4564
+ return {
4565
+ level: frame[_DYN_LEVEL ],
4566
+ method: frame[_DYN_METHOD ],
4567
+ assembly: frame[_DYN_ASSEMBLY ],
4568
+ fileName: frame[_DYN_FILE_NAME ],
4569
+ line: frame[_DYN_LINE ]
4456
4570
  };
4457
- _StackFrame.regex = /^([\s]+at)?[\s]{0,50}([^\@\()]+?)[\s]{0,50}(\@|\()([^\(\n]+):([0-9]+):([0-9]+)(\)?)$/;
4458
- _StackFrame.baseSize = 58;
4459
- return _StackFrame;
4460
- }());
4571
+ }
4461
4572
 
4462
4573
  var DataPoint = /** @class */ (function () {
4463
4574
  function DataPoint() {
@@ -4732,24 +4843,25 @@
4732
4843
  var _DYN__CREATE_AUTO_EXCEPTI6 = "CreateAutoException";
4733
4844
  var _DYN_ADD_TELEMETRY_INITIA7 = "addTelemetryInitializer";
4734
4845
  var _DYN_OVERRIDE_PAGE_VIEW_D8 = "overridePageViewDuration";
4735
- var _DYN_AUTO_TRACK_PAGE_VISI9 = "autoTrackPageVisitTime";
4736
- var _DYN_IS_BROWSER_LINK_TRAC10 = "isBrowserLinkTrackingEnabled";
4846
+ var _DYN_AUTO_EXCEPTION_INSTR9 = "autoExceptionInstrumented";
4847
+ var _DYN_AUTO_TRACK_PAGE_VISI10 = "autoTrackPageVisitTime";
4848
+ var _DYN_IS_BROWSER_LINK_TRAC11 = "isBrowserLinkTrackingEnabled";
4737
4849
  var _DYN_LENGTH = "length";
4738
- var _DYN_ENABLE_AUTO_ROUTE_TR11 = "enableAutoRouteTracking";
4739
- var _DYN_ENABLE_UNHANDLED_PRO12 = "enableUnhandledPromiseRejectionTracking";
4740
- var _DYN_AUTO_UNHANDLED_PROMI13 = "autoUnhandledPromiseInstrumented";
4850
+ var _DYN_ENABLE_AUTO_ROUTE_TR12 = "enableAutoRouteTracking";
4851
+ var _DYN_ENABLE_UNHANDLED_PRO13 = "enableUnhandledPromiseRejectionTracking";
4852
+ var _DYN_AUTO_UNHANDLED_PROMI14 = "autoUnhandledPromiseInstrumented";
4741
4853
  var _DYN_GET_ENTRIES_BY_TYPE = "getEntriesByType";
4742
- var _DYN_IS_PERFORMANCE_TIMIN14 = "isPerformanceTimingSupported";
4743
- var _DYN_GET_PERFORMANCE_TIMI15 = "getPerformanceTiming";
4854
+ var _DYN_IS_PERFORMANCE_TIMIN15 = "isPerformanceTimingSupported";
4855
+ var _DYN_GET_PERFORMANCE_TIMI16 = "getPerformanceTiming";
4744
4856
  var _DYN_NAVIGATION_START = "navigationStart";
4745
- var _DYN_SHOULD_COLLECT_DURAT16 = "shouldCollectDuration";
4746
- var _DYN_IS_PERFORMANCE_TIMIN17 = "isPerformanceTimingDataReady";
4857
+ var _DYN_SHOULD_COLLECT_DURAT17 = "shouldCollectDuration";
4858
+ var _DYN_IS_PERFORMANCE_TIMIN18 = "isPerformanceTimingDataReady";
4747
4859
  var _DYN_RESPONSE_START = "responseStart";
4748
4860
  var _DYN_REQUEST_START = "requestStart";
4749
4861
  var _DYN_LOAD_EVENT_END = "loadEventEnd";
4750
4862
  var _DYN_RESPONSE_END = "responseEnd";
4751
4863
  var _DYN_CONNECT_END = "connectEnd";
4752
- var _DYN_PAGE_VISIT_START_TIM18 = "pageVisitStartTime";
4864
+ var _DYN_PAGE_VISIT_START_TIM19 = "pageVisitStartTime";
4753
4865
 
4754
4866
  var PageViewManager = /** @class */ (function () {
4755
4867
  function PageViewManager(appInsights, overridePageViewDuration, core, pageViewPerformanceManager) {
@@ -4820,7 +4932,7 @@
4820
4932
  }
4821
4933
  firstPageViewSent = true;
4822
4934
  }
4823
- if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN14 ]()) {
4935
+ if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN15 ]()) {
4824
4936
  appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
4825
4937
  _flushChannels(true);
4826
4938
  if (!isWebWorker()) {
@@ -4830,10 +4942,10 @@
4830
4942
  }
4831
4943
  var pageViewSent = false;
4832
4944
  var customDuration;
4833
- var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI15 ]()[_DYN_NAVIGATION_START ];
4945
+ var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI16 ]()[_DYN_NAVIGATION_START ];
4834
4946
  if (start > 0) {
4835
4947
  customDuration = dateTimeUtilsDuration(start, +new Date);
4836
- if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT16 ](customDuration)) {
4948
+ if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT17 ](customDuration)) {
4837
4949
  customDuration = undefined;
4838
4950
  }
4839
4951
  }
@@ -4860,7 +4972,7 @@
4860
4972
  _addQueue(function () {
4861
4973
  var processed = false;
4862
4974
  try {
4863
- if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN17 ]()) {
4975
+ if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN18 ]()) {
4864
4976
  processed = true;
4865
4977
  var pageViewPerformance = {
4866
4978
  name: name,
@@ -5004,7 +5116,7 @@
5004
5116
  if (total === 0) {
5005
5117
  _throwInternal(_logger, 2 , 10 , "error calculating page view performance.", { total: total, network: network, request: request, response: response, dom: dom });
5006
5118
  }
5007
- else if (!_self[_DYN_SHOULD_COLLECT_DURAT16 ](total, network, request, response, dom)) {
5119
+ else if (!_self[_DYN_SHOULD_COLLECT_DURAT17 ](total, network, request, response, dom)) {
5008
5120
  _throwInternal(_logger, 2 , 45 , "Invalid page load duration value. Browser perf data won't be sent.", { total: total, network: network, request: request, response: response, dom: dom });
5009
5121
  }
5010
5122
  else if (total < Math.floor(network) + Math.floor(request) + Math.floor(response) + Math.floor(dom)) {
@@ -5021,10 +5133,10 @@
5021
5133
  }
5022
5134
  }
5023
5135
  };
5024
- _self[_DYN_GET_PERFORMANCE_TIMI15 ] = _getPerformanceTiming;
5025
- _self[_DYN_IS_PERFORMANCE_TIMIN14 ] = _isPerformanceTimingSupported;
5026
- _self[_DYN_IS_PERFORMANCE_TIMIN17 ] = _isPerformanceTimingDataReady;
5027
- _self[_DYN_SHOULD_COLLECT_DURAT16 ] = _shouldCollectDuration;
5136
+ _self[_DYN_GET_PERFORMANCE_TIMI16 ] = _getPerformanceTiming;
5137
+ _self[_DYN_IS_PERFORMANCE_TIMIN15 ] = _isPerformanceTimingSupported;
5138
+ _self[_DYN_IS_PERFORMANCE_TIMIN18 ] = _isPerformanceTimingDataReady;
5139
+ _self[_DYN_SHOULD_COLLECT_DURAT17 ] = _shouldCollectDuration;
5028
5140
  });
5029
5141
  }
5030
5142
  PageViewPerformanceManager.__ieDyn=1;
@@ -5072,7 +5184,7 @@
5072
5184
  var pageVisitDataJsonStr = utlGetSessionStorage(logger, prevPageVisitDataKeyName);
5073
5185
  if (pageVisitDataJsonStr && hasJSON()) {
5074
5186
  prevPageVisitData = getJSON().parse(pageVisitDataJsonStr);
5075
- prevPageVisitData.pageVisitTime = pageVisitEndTime - prevPageVisitData[_DYN_PAGE_VISIT_START_TIM18 ];
5187
+ prevPageVisitData.pageVisitTime = pageVisitEndTime - prevPageVisitData[_DYN_PAGE_VISIT_START_TIM19 ];
5076
5188
  utlRemoveSessionStorage(logger, prevPageVisitDataKeyName);
5077
5189
  }
5078
5190
  }
@@ -5092,7 +5204,7 @@
5092
5204
  }());
5093
5205
  var PageVisitData = /** @class */ (function () {
5094
5206
  function PageVisitData(pageName, pageUrl) {
5095
- this[_DYN_PAGE_VISIT_START_TIM18 ] = utcNow();
5207
+ this[_DYN_PAGE_VISIT_START_TIM19 ] = utcNow();
5096
5208
  this.pageName = pageName;
5097
5209
  this.pageUrl = pageUrl;
5098
5210
  }
@@ -5149,14 +5261,14 @@
5149
5261
  sessionExpirationMs: cfgDfSet(_chkConfigMilliseconds, 24 * 60 * 60 * 1000),
5150
5262
  disableExceptionTracking: cfgDfBoolean()
5151
5263
  },
5152
- _a[_DYN_AUTO_TRACK_PAGE_VISI9 ] = cfgDfBoolean(),
5264
+ _a[_DYN_AUTO_TRACK_PAGE_VISI10 ] = cfgDfBoolean(),
5153
5265
  _a[_DYN_OVERRIDE_PAGE_VIEW_D8 ] = cfgDfBoolean(),
5154
- _a[_DYN_ENABLE_UNHANDLED_PRO12 ] = cfgDfBoolean(),
5155
- _a[_DYN_AUTO_UNHANDLED_PROMI13 ] = false,
5266
+ _a[_DYN_ENABLE_UNHANDLED_PRO13 ] = cfgDfBoolean(),
5267
+ _a[_DYN_AUTO_UNHANDLED_PROMI14 ] = false,
5156
5268
  _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),
5157
5269
  _a[_DYN_IS_STORAGE_USE_DISAB0 ] = cfgDfBoolean(),
5158
- _a[_DYN_IS_BROWSER_LINK_TRAC10 ] = cfgDfBoolean(),
5159
- _a[_DYN_ENABLE_AUTO_ROUTE_TR11 ] = cfgDfBoolean(),
5270
+ _a[_DYN_IS_BROWSER_LINK_TRAC11 ] = cfgDfBoolean(),
5271
+ _a[_DYN_ENABLE_AUTO_ROUTE_TR12 ] = cfgDfBoolean(),
5160
5272
  _a.namePrefix = cfgDfString(),
5161
5273
  _a.enableDebug = cfgDfBoolean(),
5162
5274
  _a.disableFlushOnBeforeUnload = cfgDfBoolean(),
@@ -5210,6 +5322,7 @@
5210
5322
  var _prevUri;
5211
5323
  var _currUri;
5212
5324
  var _evtNamespace;
5325
+ var _errorHookCnt;
5213
5326
  dynamicProto(AnalyticsPlugin, _this, function (_self, _base) {
5214
5327
  var _addHook = _base[_DYN__ADD_HOOK ];
5215
5328
  _initDefaults();
@@ -5467,19 +5580,23 @@
5467
5580
  eventOff(window, null, null, _evtNamespace);
5468
5581
  _initDefaults();
5469
5582
  };
5583
+ _self["_getDbgPlgTargets"] = function () {
5584
+ return [_errorHookCnt, _autoExceptionInstrumented];
5585
+ };
5470
5586
  function _populateDefaults(config) {
5471
5587
  var identifier = _self.identifier;
5472
5588
  var core = _self[_DYN_CORE ];
5473
5589
  _self[_DYN__ADD_HOOK ](onConfigChange(config, function () {
5474
5590
  var ctx = createProcessTelemetryContext(null, config, core);
5475
5591
  _extConfig = ctx.getExtCfg(identifier, defaultValues);
5592
+ _autoExceptionInstrumented = _autoExceptionInstrumented || config[_DYN_AUTO_EXCEPTION_INSTR9 ] || _extConfig[_DYN_AUTO_EXCEPTION_INSTR9 ];
5476
5593
  _expCfg = _extConfig.expCfg;
5477
- _autoTrackPageVisitTime = _extConfig[_DYN_AUTO_TRACK_PAGE_VISI9 ];
5594
+ _autoTrackPageVisitTime = _extConfig[_DYN_AUTO_TRACK_PAGE_VISI10 ];
5478
5595
  if (config.storagePrefix) {
5479
5596
  utlSetStoragePrefix(config.storagePrefix);
5480
5597
  }
5481
5598
  _updateStorageUsage(_extConfig);
5482
- _isBrowserLinkTrackingEnabled = _extConfig[_DYN_IS_BROWSER_LINK_TRAC10 ];
5599
+ _isBrowserLinkTrackingEnabled = _extConfig[_DYN_IS_BROWSER_LINK_TRAC11 ];
5483
5600
  _addDefaultTelemetryInitializers();
5484
5601
  }));
5485
5602
  }
@@ -5522,7 +5639,7 @@
5522
5639
  var locn = getLocation(true);
5523
5640
  _self[_DYN__ADD_HOOK ](onConfigChange(_extConfig, function () {
5524
5641
  _disableExceptionTracking = _extConfig.disableExceptionTracking;
5525
- if (!_disableExceptionTracking && !_autoExceptionInstrumented && !_extConfig.autoExceptionInstrumented) {
5642
+ if (!_disableExceptionTracking && !_autoExceptionInstrumented && !_extConfig[_DYN_AUTO_EXCEPTION_INSTR9 ]) {
5526
5643
  _addHook(InstrumentEvent(_window, "onerror", {
5527
5644
  ns: _evtNamespace,
5528
5645
  rsp: function (callDetails, message, url, lineNumber, columnNumber, error) {
@@ -5531,6 +5648,7 @@
5531
5648
  }
5532
5649
  }
5533
5650
  }, false));
5651
+ _errorHookCnt++;
5534
5652
  _autoExceptionInstrumented = true;
5535
5653
  }
5536
5654
  }));
@@ -5540,7 +5658,7 @@
5540
5658
  var win = getWindow();
5541
5659
  var locn = getLocation(true);
5542
5660
  _self[_DYN__ADD_HOOK ](onConfigChange(_extConfig, function () {
5543
- _enableAutoRouteTracking = _extConfig[_DYN_ENABLE_AUTO_ROUTE_TR11 ] === true;
5661
+ _enableAutoRouteTracking = _extConfig[_DYN_ENABLE_AUTO_ROUTE_TR12 ] === true;
5544
5662
  if (win && _enableAutoRouteTracking && !_historyListenerAdded && hasHistory()) {
5545
5663
  var _history = getHistory();
5546
5664
  if (isFunction(_history.pushState) && isFunction(_history.replaceState) && typeof Event !== strShimUndefined) {
@@ -5622,8 +5740,8 @@
5622
5740
  }
5623
5741
  function _addUnhandledPromiseRejectionTracking(_window, _location) {
5624
5742
  _self[_DYN__ADD_HOOK ](onConfigChange(_extConfig, function () {
5625
- _enableUnhandledPromiseRejectionTracking = _extConfig[_DYN_ENABLE_UNHANDLED_PRO12 ] === true;
5626
- _autoExceptionInstrumented = _autoExceptionInstrumented || _extConfig[_DYN_AUTO_UNHANDLED_PROMI13 ];
5743
+ _enableUnhandledPromiseRejectionTracking = _extConfig[_DYN_ENABLE_UNHANDLED_PRO13 ] === true;
5744
+ _autoExceptionInstrumented = _autoExceptionInstrumented || _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 ];
5627
5745
  if (_enableUnhandledPromiseRejectionTracking && !_autoUnhandledPromiseInstrumented) {
5628
5746
  _addHook(InstrumentEvent(_window, "onunhandledrejection", {
5629
5747
  ns: _evtNamespace,
@@ -5633,7 +5751,8 @@
5633
5751
  }
5634
5752
  }
5635
5753
  }, false));
5636
- _extConfig[_DYN_AUTO_UNHANDLED_PROMI13 ] = _autoUnhandledPromiseInstrumented = true;
5754
+ _errorHookCnt++;
5755
+ _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 ] = _autoUnhandledPromiseInstrumented = true;
5637
5756
  }
5638
5757
  }));
5639
5758
  }
@@ -5661,6 +5780,7 @@
5661
5780
  _currUri = null;
5662
5781
  _evtNamespace = null;
5663
5782
  _extConfig = null;
5783
+ _errorHookCnt = 0;
5664
5784
  objDefine(_self, "config", {
5665
5785
  g: function () { return _extConfig; }
5666
5786
  });
@@ -5672,7 +5792,7 @@
5672
5792
  });
5673
5793
  return _this;
5674
5794
  }
5675
- AnalyticsPlugin.Version = '3.3.5-nightly3.2501-07';
5795
+ AnalyticsPlugin.Version = '3.3.5-nightly3.2502-02';
5676
5796
  return AnalyticsPlugin;
5677
5797
  }(BaseTelemetryPlugin));
5678
5798