@microsoft/applicationinsights-common 3.3.5-nightly3.2501-06 → 3.3.5-nightly3.2501-08

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 (101) hide show
  1. package/browser/es5/applicationinsights-common.cjs.js +247 -136
  2. package/browser/es5/applicationinsights-common.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-common.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-common.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-common.gbl.js +249 -138
  6. package/browser/es5/applicationinsights-common.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-common.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-common.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-common.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-common.js +249 -138
  11. package/browser/es5/applicationinsights-common.js.map +1 -1
  12. package/browser/es5/applicationinsights-common.min.js +2 -2
  13. package/browser/es5/applicationinsights-common.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-common.js +247 -136
  15. package/dist/es5/applicationinsights-common.js.map +1 -1
  16. package/dist/es5/applicationinsights-common.min.js +2 -2
  17. package/dist/es5/applicationinsights-common.min.js.map +1 -1
  18. package/dist-es5/ConnectionStringParser.js +1 -1
  19. package/dist-es5/Constants.js +1 -1
  20. package/dist-es5/DomHelperFuncs.js +1 -1
  21. package/dist-es5/Enums.js +1 -1
  22. package/dist-es5/HelperFuncs.js +1 -1
  23. package/dist-es5/Interfaces/ConnectionString.js +1 -1
  24. package/dist-es5/Interfaces/Context/IApplication.js +1 -1
  25. package/dist-es5/Interfaces/Context/IDevice.js +1 -1
  26. package/dist-es5/Interfaces/Context/IInternal.js +1 -1
  27. package/dist-es5/Interfaces/Context/ILocation.js +1 -1
  28. package/dist-es5/Interfaces/Context/IOperatingSystem.js +1 -1
  29. package/dist-es5/Interfaces/Context/ISample.js +1 -1
  30. package/dist-es5/Interfaces/Context/ISession.js +1 -1
  31. package/dist-es5/Interfaces/Context/ISessionManager.js +1 -1
  32. package/dist-es5/Interfaces/Context/ITelemetryTrace.js +1 -1
  33. package/dist-es5/Interfaces/Context/IUser.js +1 -1
  34. package/dist-es5/Interfaces/Context/IWeb.js +1 -1
  35. package/dist-es5/Interfaces/Contracts/AvailabilityData.js +1 -1
  36. package/dist-es5/Interfaces/Contracts/ContextTagKeys.js +1 -1
  37. package/dist-es5/Interfaces/Contracts/DataPointType.js +1 -1
  38. package/dist-es5/Interfaces/Contracts/DependencyKind.js +1 -1
  39. package/dist-es5/Interfaces/Contracts/DependencySourceType.js +1 -1
  40. package/dist-es5/Interfaces/Contracts/IBase.js +1 -1
  41. package/dist-es5/Interfaces/Contracts/IData.js +1 -1
  42. package/dist-es5/Interfaces/Contracts/IDataPoint.js +1 -1
  43. package/dist-es5/Interfaces/Contracts/IDomain.js +1 -1
  44. package/dist-es5/Interfaces/Contracts/IEnvelope.js +1 -1
  45. package/dist-es5/Interfaces/Contracts/IEventData.js +1 -1
  46. package/dist-es5/Interfaces/Contracts/IExceptionData.js +1 -1
  47. package/dist-es5/Interfaces/Contracts/IExceptionDetails.js +1 -1
  48. package/dist-es5/Interfaces/Contracts/IMessageData.js +1 -1
  49. package/dist-es5/Interfaces/Contracts/IMetricData.js +1 -1
  50. package/dist-es5/Interfaces/Contracts/IPageViewData.js +1 -1
  51. package/dist-es5/Interfaces/Contracts/IPageViewPerfData.js +1 -1
  52. package/dist-es5/Interfaces/Contracts/IRemoteDependencyData.js +1 -1
  53. package/dist-es5/Interfaces/Contracts/IStackFrame.js +1 -1
  54. package/dist-es5/Interfaces/Contracts/RequestData.js +1 -1
  55. package/dist-es5/Interfaces/Contracts/SeverityLevel.js +1 -1
  56. package/dist-es5/Interfaces/IAppInsights.js +1 -1
  57. package/dist-es5/Interfaces/IConfig.js +1 -1
  58. package/dist-es5/Interfaces/ICorrelationConfig.js +1 -1
  59. package/dist-es5/Interfaces/IDependencyTelemetry.js +1 -1
  60. package/dist-es5/Interfaces/IEventTelemetry.js +1 -1
  61. package/dist-es5/Interfaces/IExceptionTelemetry.js +1 -1
  62. package/dist-es5/Interfaces/IMetricTelemetry.js +1 -1
  63. package/dist-es5/Interfaces/IPageViewPerformanceTelemetry.js +1 -1
  64. package/dist-es5/Interfaces/IPageViewTelemetry.js +1 -1
  65. package/dist-es5/Interfaces/IPartC.js +1 -1
  66. package/dist-es5/Interfaces/IPropertiesPlugin.js +1 -1
  67. package/dist-es5/Interfaces/IRequestContext.js +1 -1
  68. package/dist-es5/Interfaces/IStorageBuffer.js +1 -1
  69. package/dist-es5/Interfaces/ITelemetryContext.js +1 -1
  70. package/dist-es5/Interfaces/IThrottleMgr.js +1 -1
  71. package/dist-es5/Interfaces/ITraceTelemetry.js +1 -1
  72. package/dist-es5/Interfaces/PartAExtensions.js +1 -1
  73. package/dist-es5/Interfaces/Telemetry/IEnvelope.js +1 -1
  74. package/dist-es5/Interfaces/Telemetry/ISerializable.js +1 -1
  75. package/dist-es5/Offline.js +1 -1
  76. package/dist-es5/RequestResponseHeaders.js +1 -1
  77. package/dist-es5/StorageHelperFuncs.js +1 -1
  78. package/dist-es5/Telemetry/Common/Data.js +1 -1
  79. package/dist-es5/Telemetry/Common/DataPoint.js +1 -1
  80. package/dist-es5/Telemetry/Common/DataSanitizer.js +1 -1
  81. package/dist-es5/Telemetry/Common/Envelope.js +3 -3
  82. package/dist-es5/Telemetry/Common/Envelope.js.map +1 -1
  83. package/dist-es5/Telemetry/Event.js +1 -1
  84. package/dist-es5/Telemetry/Exception.js +371 -137
  85. package/dist-es5/Telemetry/Exception.js.map +1 -1
  86. package/dist-es5/Telemetry/Metric.js +1 -1
  87. package/dist-es5/Telemetry/PageView.js +1 -1
  88. package/dist-es5/Telemetry/PageViewPerformance.js +1 -1
  89. package/dist-es5/Telemetry/RemoteDependencyData.js +1 -1
  90. package/dist-es5/Telemetry/Trace.js +1 -1
  91. package/dist-es5/TelemetryItemCreator.js +1 -1
  92. package/dist-es5/ThrottleMgr.js +1 -1
  93. package/dist-es5/UrlHelperFuncs.js +4 -4
  94. package/dist-es5/UrlHelperFuncs.js.map +1 -1
  95. package/dist-es5/Util.js +1 -1
  96. package/dist-es5/__DynamicConstants.js +13 -12
  97. package/dist-es5/__DynamicConstants.js.map +1 -1
  98. package/dist-es5/applicationinsights-common.js +1 -1
  99. package/package.json +3 -3
  100. package/types/applicationinsights-common.d.ts +1 -1
  101. package/types/applicationinsights-common.namespaced.d.ts +6 -6
@@ -1,11 +1,11 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Common, 3.3.5-nightly3.2501-06
2
+ * Application Insights JavaScript SDK - Common, 3.3.5-nightly3.2501-08
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
6
6
  var undef = "undefined";
7
- var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_common_3_3_5_nightly3_2501_06", msMod="__ms$mod__";
8
- var mods={}, modDetail=mods[modName]={}, ver="3.3.5-nightly3.2501-06";
7
+ var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_common_3_3_5_nightly3_2501_08", msMod="__ms$mod__";
8
+ var mods={}, modDetail=mods[modName]={}, ver="3.3.5-nightly3.2501-08";
9
9
  var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
10
10
  // Versioned namespace "Microsoft.ApplicationInsights3"
11
11
  var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
@@ -1206,7 +1206,7 @@ function newId(maxLength) {
1206
1206
  return result;
1207
1207
  }
1208
1208
 
1209
- var version = '3.3.5-nightly3.2501-06';
1209
+ var version = '3.3.5-nightly3.2501-08';
1210
1210
  var instanceName = "." + newId(6);
1211
1211
  var _dataUid = 0;
1212
1212
  function _canAcceptData(target) {
@@ -2446,6 +2446,7 @@ var _DYN_DATE = "date";
2446
2446
  var _DYN_GET_UTCDATE = "getUTCDate";
2447
2447
  var _DYN_STRINGIFY = "stringify";
2448
2448
  var _DYN_PATHNAME = "pathname";
2449
+ var _DYN_MATCH = "match";
2449
2450
  var _DYN_CORRELATION_HEADER_E0 = "correlationHeaderExcludePatterns";
2450
2451
  var _DYN_EXTENSION_CONFIG = "extensionConfig";
2451
2452
  var _DYN_EXCEPTIONS = "exceptions";
@@ -2457,13 +2458,13 @@ var _DYN_TYPE_NAME = "typeName";
2457
2458
  var _DYN_SEVERITY_LEVEL = "severityLevel";
2458
2459
  var _DYN_PROBLEM_GROUP = "problemGroup";
2459
2460
  var _DYN_IS_MANUAL = "isManual";
2460
- var _DYN__CREATE_FROM_INTERFA1 = "CreateFromInterface";
2461
+ var _DYN_HAS_FULL_STACK = "hasFullStack";
2461
2462
  var _DYN_ASSEMBLY = "assembly";
2462
2463
  var _DYN_FILE_NAME = "fileName";
2463
- var _DYN_HAS_FULL_STACK = "hasFullStack";
2464
- var _DYN_LEVEL = "level";
2465
- var _DYN_METHOD = "method";
2466
2464
  var _DYN_LINE = "line";
2465
+ var _DYN_METHOD = "method";
2466
+ var _DYN_LEVEL = "level";
2467
+ var _DYN_AI_DATA_CONTRACT = "aiDataContract";
2467
2468
  var _DYN_DURATION = "duration";
2468
2469
  var _DYN_RECEIVED_RESPONSE = "receivedResponse";
2469
2470
 
@@ -2625,7 +2626,7 @@ function urlGetCompleteUrl(method, absoluteUrl) {
2625
2626
  function urlParseHost(url, inclPort) {
2626
2627
  var fullHost = urlParseFullHost(url, inclPort) || "";
2627
2628
  if (fullHost) {
2628
- var match = fullHost.match(/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);
2629
+ var match = fullHost[_DYN_MATCH ](/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);
2629
2630
  if (match != null && match[_DYN_LENGTH ] > 3 && isString(match[2]) && match[2][_DYN_LENGTH ] > 0) {
2630
2631
  return match[2] + (match[3] || "");
2631
2632
  }
@@ -2635,7 +2636,7 @@ function urlParseHost(url, inclPort) {
2635
2636
  function urlParseFullHost(url, inclPort) {
2636
2637
  var result = null;
2637
2638
  if (url) {
2638
- var match = url.match(/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);
2639
+ var match = url[_DYN_MATCH ](/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);
2639
2640
  if (match != null && match[_DYN_LENGTH ] > 2 && isString(match[2]) && match[2][_DYN_LENGTH ] > 0) {
2640
2641
  result = match[2] || "";
2641
2642
  if (inclPort && match[_DYN_LENGTH ] > 2) {
@@ -3342,7 +3343,7 @@ var Envelope = /** @class */ (function () {
3342
3343
  _self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
3343
3344
  _self.data = data;
3344
3345
  _self.time = toISOString(new Date());
3345
- _self.aiDataContract = {
3346
+ _self[_DYN_AI_DATA_CONTRACT ] = {
3346
3347
  time: 1 ,
3347
3348
  iKey: 1 ,
3348
3349
  name: 1 ,
@@ -3375,6 +3376,14 @@ var Event$1 = /** @class */ (function () {
3375
3376
  return Event;
3376
3377
  }());
3377
3378
 
3379
+ var STACKFRAME_BASE_SIZE = 58;
3380
+ 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\?]+)?)/;
3381
+ 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\?]+)\)?$/;
3382
+ var FULL_STACK_FRAME_2 = /^(?:\s{0,50}at)?\s{0,50}([^\@\()\s]+)?\s{0,50}(?:\s|\@|\()\s{0,5}([^\(\s\n\]]+):([0-9\?]+)\)?$/;
3383
+ var FULL_STACK_FRAME_3 = /^(?:\s{0,50}at)?\s{0,50}([^\@\()\s]+)?\s{0,50}(?:\s|\@|\()\s{0,5}([^\(\s\n\)\]]+)\)?$/;
3384
+ var EXTRACT_FILENAME = /(?:^|\(|\s{0,10}[\w\)]+\@)?([^\(\n\s\]\)]+)(?:\:([0-9]+)(?:\:([0-9]+))?)?\)?(?:,|$)/;
3385
+ var PARSE_FILENAME_LINE_COL = /([^\(\s\n]+):([0-9]+):([0-9]+)$/;
3386
+ var PARSE_FILENAME_LINE_ONLY = /([^\(\s\n]+):([0-9]+)$/;
3378
3387
  var NoMethod = "<no_method>";
3379
3388
  var strError = "error";
3380
3389
  var strStack = "stack";
@@ -3382,6 +3391,18 @@ var strStackDetails = "stackDetails";
3382
3391
  var strErrorSrc = "errorSrc";
3383
3392
  var strMessage = "message";
3384
3393
  var strDescription = "description";
3394
+ var _parseSequence = [
3395
+ { re: FULL_STACK_FRAME_1, len: 5, m: 1, fn: 2, ln: 3, col: 4 },
3396
+ { chk: _ignoreNative, pre: _scrubAnonymous, re: FULL_STACK_FRAME_2, len: 4, m: 1, fn: 2, ln: 3 },
3397
+ { re: FULL_STACK_FRAME_3, len: 3, m: 1, fn: 2, hdl: _handleFilename },
3398
+ { re: EXTRACT_FILENAME, len: 2, fn: 1, hdl: _handleFilename }
3399
+ ];
3400
+ function _scrubAnonymous(frame) {
3401
+ return frame.replace(/(\(anonymous\))/, "<anonymous>");
3402
+ }
3403
+ function _ignoreNative(frame) {
3404
+ return strIndexOf(frame, "[native") < 0;
3405
+ }
3385
3406
  function _stringify(value, convertToString) {
3386
3407
  var result = value;
3387
3408
  if (result && !isString(result)) {
@@ -3529,9 +3550,7 @@ function _formatStackTrace(stackDetails) {
3529
3550
  var stack = "";
3530
3551
  if (stackDetails) {
3531
3552
  if (stackDetails.obj) {
3532
- arrForEach(stackDetails.obj, function (entry) {
3533
- stack += entry + "\n";
3534
- });
3553
+ stack = stackDetails.obj.join("\n");
3535
3554
  }
3536
3555
  else {
3537
3556
  stack = stackDetails.src || "";
@@ -3545,13 +3564,18 @@ function _parseStack(stack) {
3545
3564
  if (frames && frames[_DYN_LENGTH ] > 0) {
3546
3565
  parsedStack = [];
3547
3566
  var level_1 = 0;
3567
+ var foundStackStart_1 = false;
3548
3568
  var totalSizeInBytes_1 = 0;
3549
3569
  arrForEach(frames, function (frame) {
3550
- var theFrame = frame[_DYN_TO_STRING ]();
3551
- if (_StackFrame.regex.test(theFrame)) {
3552
- var parsedFrame = new _StackFrame(theFrame, level_1++);
3553
- totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES ];
3554
- parsedStack[_DYN_PUSH ](parsedFrame);
3570
+ if (foundStackStart_1 || _isStackFrame(frame)) {
3571
+ var theFrame = asString(frame);
3572
+ foundStackStart_1 = true;
3573
+ var parsedFrame = _extractStackFrame(theFrame, level_1);
3574
+ if (parsedFrame) {
3575
+ totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES ];
3576
+ parsedStack[_DYN_PUSH ](parsedFrame);
3577
+ level_1++;
3578
+ }
3555
3579
  }
3556
3580
  });
3557
3581
  var exceptionParsedStackThreshold = 32 * 1024;
@@ -3637,7 +3661,7 @@ var Exception = /** @class */ (function () {
3637
3661
  if (id) {
3638
3662
  properties.id = id;
3639
3663
  }
3640
- _self[_DYN_EXCEPTIONS ] = [new _ExceptionDetails(logger, exception, properties)];
3664
+ _self[_DYN_EXCEPTIONS ] = [_createExceptionDetails(logger, exception, properties)];
3641
3665
  _self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
3642
3666
  _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
3643
3667
  if (severityLevel) {
@@ -3683,7 +3707,7 @@ var Exception = /** @class */ (function () {
3683
3707
  };
3684
3708
  Exception.CreateFromInterface = function (logger, exception, properties, measurements) {
3685
3709
  var exceptions = exception[_DYN_EXCEPTIONS ]
3686
- && arrMap(exception[_DYN_EXCEPTIONS ], function (ex) { return _ExceptionDetails[_DYN__CREATE_FROM_INTERFA1 ](logger, ex); });
3710
+ && arrMap(exception[_DYN_EXCEPTIONS ], function (ex) { return _createExDetailsFromInterface(logger, ex); });
3687
3711
  var exceptionData = new Exception(logger, __assignFn(__assignFn({}, exception), { exceptions: exceptions }), properties, measurements);
3688
3712
  return exceptionData;
3689
3713
  };
@@ -3723,131 +3747,218 @@ var Exception = /** @class */ (function () {
3723
3747
  Exception.formatError = _formatErrorCode;
3724
3748
  return Exception;
3725
3749
  }());
3726
- var _ExceptionDetails = /** @class */ (function () {
3727
- function _ExceptionDetails(logger, exception, properties) {
3728
- this.aiDataContract = {
3729
- id: 0 ,
3730
- outerId: 0 ,
3731
- typeName: 1 ,
3732
- message: 1 ,
3733
- hasFullStack: 0 ,
3734
- stack: 0 ,
3735
- parsedStack: 2
3736
- };
3737
- var _self = this;
3738
- if (!_isExceptionDetailsInternal(exception)) {
3739
- var error = exception;
3740
- var evt = error && error.evt;
3741
- if (!isError(error)) {
3742
- error = error[strError] || evt || error;
3743
- }
3744
- _self[_DYN_TYPE_NAME ] = dataSanitizeString(logger, _getErrorType(error)) || strNotSpecified;
3745
- _self[_DYN_MESSAGE ] = dataSanitizeMessage(logger, _formatMessage(exception || error, _self[_DYN_TYPE_NAME ])) || strNotSpecified;
3746
- var stack = exception[strStackDetails] || _getStackFromErrorObj(exception);
3747
- _self[_DYN_PARSED_STACK ] = _parseStack(stack);
3748
- if (isArray(_self[_DYN_PARSED_STACK ])) {
3749
- arrMap(_self[_DYN_PARSED_STACK ], function (frame) {
3750
- frame[_DYN_ASSEMBLY ] = dataSanitizeString(logger, frame[_DYN_ASSEMBLY ]);
3751
- frame[_DYN_FILE_NAME ] = dataSanitizeString(logger, frame[_DYN_FILE_NAME ]);
3752
- });
3753
- }
3754
- _self[strStack] = dataSanitizeException(logger, _formatStackTrace(stack));
3755
- _self.hasFullStack = isArray(_self.parsedStack) && _self.parsedStack[_DYN_LENGTH ] > 0;
3756
- if (properties) {
3757
- properties[_DYN_TYPE_NAME ] = properties[_DYN_TYPE_NAME ] || _self[_DYN_TYPE_NAME ];
3758
- }
3750
+ var exDetailsAiDataContract = objFreeze({
3751
+ id: 0 ,
3752
+ outerId: 0 ,
3753
+ typeName: 1 ,
3754
+ message: 1 ,
3755
+ hasFullStack: 0 ,
3756
+ stack: 0 ,
3757
+ parsedStack: 2
3758
+ });
3759
+ function _toInterface() {
3760
+ var _a;
3761
+ var _self = this;
3762
+ var parsedStack = isArray(_self[_DYN_PARSED_STACK ])
3763
+ && arrMap(_self[_DYN_PARSED_STACK ], function (frame) { return _parsedFrameToInterface(frame); });
3764
+ var exceptionDetailsInterface = (_a = {
3765
+ id: _self.id,
3766
+ outerId: _self.outerId,
3767
+ typeName: _self[_DYN_TYPE_NAME ],
3768
+ message: _self[_DYN_MESSAGE ],
3769
+ hasFullStack: _self[_DYN_HAS_FULL_STACK ],
3770
+ stack: _self[strStack]
3771
+ },
3772
+ _a[_DYN_PARSED_STACK ] = parsedStack || undefined,
3773
+ _a);
3774
+ return exceptionDetailsInterface;
3775
+ }
3776
+ function _createExceptionDetails(logger, exception, properties) {
3777
+ var _a;
3778
+ var id;
3779
+ var outerId;
3780
+ var typeName;
3781
+ var message;
3782
+ var hasFullStack;
3783
+ var theStack;
3784
+ var parsedStack;
3785
+ if (!_isExceptionDetailsInternal(exception)) {
3786
+ var error = exception;
3787
+ var evt = error && error.evt;
3788
+ if (!isError(error)) {
3789
+ error = error[strError] || evt || error;
3790
+ }
3791
+ typeName = dataSanitizeString(logger, _getErrorType(error)) || strNotSpecified;
3792
+ message = dataSanitizeMessage(logger, _formatMessage(exception || error, typeName)) || strNotSpecified;
3793
+ var stack = exception[strStackDetails] || _getStackFromErrorObj(exception);
3794
+ parsedStack = _parseStack(stack);
3795
+ if (isArray(parsedStack)) {
3796
+ arrMap(parsedStack, function (frame) {
3797
+ frame[_DYN_ASSEMBLY ] = dataSanitizeString(logger, frame[_DYN_ASSEMBLY ]);
3798
+ frame[_DYN_FILE_NAME ] = dataSanitizeString(logger, frame[_DYN_FILE_NAME ]);
3799
+ });
3800
+ }
3801
+ theStack = dataSanitizeException(logger, _formatStackTrace(stack));
3802
+ hasFullStack = isArray(parsedStack) && parsedStack[_DYN_LENGTH ] > 0;
3803
+ if (properties) {
3804
+ properties[_DYN_TYPE_NAME ] = properties[_DYN_TYPE_NAME ] || typeName;
3805
+ }
3806
+ }
3807
+ else {
3808
+ typeName = exception[_DYN_TYPE_NAME ];
3809
+ message = exception[_DYN_MESSAGE ];
3810
+ theStack = exception[strStack];
3811
+ parsedStack = exception[_DYN_PARSED_STACK ] || [];
3812
+ hasFullStack = exception[_DYN_HAS_FULL_STACK ];
3813
+ }
3814
+ return _a = {},
3815
+ _a[_DYN_AI_DATA_CONTRACT ] = exDetailsAiDataContract,
3816
+ _a.id = id,
3817
+ _a.outerId = outerId,
3818
+ _a[_DYN_TYPE_NAME ] = typeName,
3819
+ _a[_DYN_MESSAGE ] = message,
3820
+ _a[_DYN_HAS_FULL_STACK ] = hasFullStack,
3821
+ _a.stack = theStack,
3822
+ _a[_DYN_PARSED_STACK ] = parsedStack,
3823
+ _a.toInterface = _toInterface,
3824
+ _a;
3825
+ }
3826
+ function _createExDetailsFromInterface(logger, exception) {
3827
+ var parsedStack = (isArray(exception[_DYN_PARSED_STACK ])
3828
+ && arrMap(exception[_DYN_PARSED_STACK ], function (frame) { return _stackFrameFromInterface(frame); }))
3829
+ || exception[_DYN_PARSED_STACK ];
3830
+ var exceptionDetails = _createExceptionDetails(logger, __assignFn(__assignFn({}, exception), { parsedStack: parsedStack }));
3831
+ return exceptionDetails;
3832
+ }
3833
+ function _parseFilename(theFrame, fileName) {
3834
+ var lineCol = fileName[_DYN_MATCH ](PARSE_FILENAME_LINE_COL);
3835
+ if (lineCol && lineCol[_DYN_LENGTH ] >= 4) {
3836
+ theFrame[_DYN_FILE_NAME ] = lineCol[1];
3837
+ theFrame[_DYN_LINE ] = parseInt(lineCol[2]);
3838
+ }
3839
+ else {
3840
+ var lineNo = fileName[_DYN_MATCH ](PARSE_FILENAME_LINE_ONLY);
3841
+ if (lineNo && lineNo[_DYN_LENGTH ] >= 3) {
3842
+ theFrame[_DYN_FILE_NAME ] = lineNo[1];
3843
+ theFrame[_DYN_LINE ] = parseInt(lineNo[2]);
3759
3844
  }
3760
3845
  else {
3761
- _self[_DYN_TYPE_NAME ] = exception[_DYN_TYPE_NAME ];
3762
- _self[_DYN_MESSAGE ] = exception[_DYN_MESSAGE ];
3763
- _self[strStack] = exception[strStack];
3764
- _self[_DYN_PARSED_STACK ] = exception[_DYN_PARSED_STACK ] || [];
3765
- _self[_DYN_HAS_FULL_STACK ] = exception[_DYN_HAS_FULL_STACK ];
3846
+ theFrame[_DYN_FILE_NAME ] = fileName;
3766
3847
  }
3767
3848
  }
3768
- _ExceptionDetails.prototype.toInterface = function () {
3769
- var _a;
3770
- var _self = this;
3771
- var parsedStack = _self[_DYN_PARSED_STACK ] instanceof Array
3772
- && arrMap(_self[_DYN_PARSED_STACK ], function (frame) { return frame.toInterface(); });
3773
- var exceptionDetailsInterface = (_a = {
3774
- id: _self.id,
3775
- outerId: _self.outerId,
3776
- typeName: _self[_DYN_TYPE_NAME ],
3777
- message: _self[_DYN_MESSAGE ],
3778
- hasFullStack: _self[_DYN_HAS_FULL_STACK ],
3779
- stack: _self[strStack]
3780
- },
3781
- _a[_DYN_PARSED_STACK ] = parsedStack || undefined,
3849
+ }
3850
+ function _handleFilename(theFrame, sequence, matches) {
3851
+ var filename = theFrame[_DYN_FILE_NAME ];
3852
+ if (sequence.fn && matches && matches[_DYN_LENGTH ] > sequence.fn) {
3853
+ if (sequence.ln && matches[_DYN_LENGTH ] > sequence.ln) {
3854
+ filename = strTrim(matches[sequence.fn] || "");
3855
+ theFrame[_DYN_LINE ] = parseInt(strTrim(matches[sequence.ln] || "")) || 0;
3856
+ }
3857
+ else {
3858
+ filename = strTrim(matches[sequence.fn] || "");
3859
+ }
3860
+ }
3861
+ if (filename) {
3862
+ _parseFilename(theFrame, filename);
3863
+ }
3864
+ }
3865
+ function _isStackFrame(frame) {
3866
+ var result = false;
3867
+ if (frame && isString(frame)) {
3868
+ var trimmedFrame = strTrim(frame);
3869
+ if (trimmedFrame) {
3870
+ result = IS_FRAME.test(trimmedFrame);
3871
+ }
3872
+ }
3873
+ return result;
3874
+ }
3875
+ var stackFrameAiDataContract = objFreeze({
3876
+ level: 1 ,
3877
+ method: 1 ,
3878
+ assembly: 0 ,
3879
+ fileName: 0 ,
3880
+ line: 0
3881
+ });
3882
+ function _extractStackFrame(frame, level) {
3883
+ var _a;
3884
+ var theFrame;
3885
+ if (frame && isString(frame) && strTrim(frame)) {
3886
+ theFrame = (_a = {},
3887
+ _a[_DYN_AI_DATA_CONTRACT ] = stackFrameAiDataContract,
3888
+ _a[_DYN_LEVEL ] = level,
3889
+ _a[_DYN_ASSEMBLY ] = strTrim(frame),
3890
+ _a[_DYN_METHOD ] = NoMethod,
3891
+ _a.fileName = "",
3892
+ _a.line = 0,
3893
+ _a[_DYN_SIZE_IN_BYTES ] = 0,
3782
3894
  _a);
3783
- return exceptionDetailsInterface;
3784
- };
3785
- _ExceptionDetails.CreateFromInterface = function (logger, exception) {
3786
- var parsedStack = (exception[_DYN_PARSED_STACK ] instanceof Array
3787
- && arrMap(exception[_DYN_PARSED_STACK ], function (frame) { return _StackFrame[_DYN__CREATE_FROM_INTERFA1 ](frame); }))
3788
- || exception[_DYN_PARSED_STACK ];
3789
- var exceptionDetails = new _ExceptionDetails(logger, __assignFn(__assignFn({}, exception), { parsedStack: parsedStack }));
3790
- return exceptionDetails;
3791
- };
3792
- return _ExceptionDetails;
3793
- }());
3794
- var _StackFrame = /** @class */ (function () {
3795
- function _StackFrame(sourceFrame, level) {
3796
- this.aiDataContract = {
3797
- level: 1 ,
3798
- method: 1 ,
3799
- assembly: 0 ,
3800
- fileName: 0 ,
3801
- line: 0
3802
- };
3803
- var _self = this;
3804
- _self[_DYN_SIZE_IN_BYTES ] = 0;
3805
- if (typeof sourceFrame === "string") {
3806
- var frame = sourceFrame;
3807
- _self[_DYN_LEVEL ] = level;
3808
- _self[_DYN_METHOD ] = NoMethod;
3809
- _self[_DYN_ASSEMBLY ] = strTrim(frame);
3810
- _self[_DYN_FILE_NAME ] = "";
3811
- _self[_DYN_LINE ] = 0;
3812
- var matches = frame.match(_StackFrame.regex);
3813
- if (matches && matches[_DYN_LENGTH ] >= 5) {
3814
- _self[_DYN_METHOD ] = strTrim(matches[2]) || _self[_DYN_METHOD ];
3815
- _self[_DYN_FILE_NAME ] = strTrim(matches[4]);
3816
- _self[_DYN_LINE ] = parseInt(matches[5]) || 0;
3895
+ var idx = 0;
3896
+ while (idx < _parseSequence[_DYN_LENGTH ]) {
3897
+ var sequence = _parseSequence[idx];
3898
+ if (sequence.chk && !sequence.chk(frame)) {
3899
+ break;
3900
+ }
3901
+ if (sequence.pre) {
3902
+ frame = sequence.pre(frame);
3817
3903
  }
3904
+ var matches = frame[_DYN_MATCH ](sequence.re);
3905
+ if (matches && matches[_DYN_LENGTH ] >= sequence.len) {
3906
+ if (sequence.m) {
3907
+ theFrame[_DYN_METHOD ] = strTrim(matches[sequence.m] || NoMethod);
3908
+ }
3909
+ if (sequence.hdl) {
3910
+ sequence.hdl(theFrame, sequence, matches);
3911
+ }
3912
+ else if (sequence.fn) {
3913
+ if (sequence.ln) {
3914
+ theFrame[_DYN_FILE_NAME ] = strTrim(matches[sequence.fn] || "");
3915
+ theFrame[_DYN_LINE ] = parseInt(strTrim(matches[sequence.ln] || "")) || 0;
3916
+ }
3917
+ else {
3918
+ _parseFilename(theFrame, matches[sequence.fn] || "");
3919
+ }
3920
+ }
3921
+ break;
3922
+ }
3923
+ idx++;
3818
3924
  }
3819
- else {
3820
- _self[_DYN_LEVEL ] = sourceFrame[_DYN_LEVEL ];
3821
- _self[_DYN_METHOD ] = sourceFrame[_DYN_METHOD ];
3822
- _self[_DYN_ASSEMBLY ] = sourceFrame[_DYN_ASSEMBLY ];
3823
- _self[_DYN_FILE_NAME ] = sourceFrame[_DYN_FILE_NAME ];
3824
- _self[_DYN_LINE ] = sourceFrame[_DYN_LINE ];
3825
- _self[_DYN_SIZE_IN_BYTES ] = 0;
3826
- }
3827
- _self.sizeInBytes += _self.method[_DYN_LENGTH ];
3828
- _self.sizeInBytes += _self.fileName[_DYN_LENGTH ];
3829
- _self.sizeInBytes += _self.assembly[_DYN_LENGTH ];
3830
- _self[_DYN_SIZE_IN_BYTES ] += _StackFrame.baseSize;
3831
- _self.sizeInBytes += _self.level.toString()[_DYN_LENGTH ];
3832
- _self.sizeInBytes += _self.line.toString()[_DYN_LENGTH ];
3833
- }
3834
- _StackFrame.CreateFromInterface = function (frame) {
3835
- return new _StackFrame(frame, null );
3836
- };
3837
- _StackFrame.prototype.toInterface = function () {
3838
- var _self = this;
3839
- return {
3840
- level: _self[_DYN_LEVEL ],
3841
- method: _self[_DYN_METHOD ],
3842
- assembly: _self[_DYN_ASSEMBLY ],
3843
- fileName: _self[_DYN_FILE_NAME ],
3844
- line: _self[_DYN_LINE ]
3845
- };
3925
+ }
3926
+ return _populateFrameSizeInBytes(theFrame);
3927
+ }
3928
+ function _stackFrameFromInterface(frame) {
3929
+ var _a;
3930
+ var parsedFrame = (_a = {},
3931
+ _a[_DYN_AI_DATA_CONTRACT ] = stackFrameAiDataContract,
3932
+ _a.level = frame[_DYN_LEVEL ],
3933
+ _a.method = frame[_DYN_METHOD ],
3934
+ _a.assembly = frame[_DYN_ASSEMBLY ],
3935
+ _a.fileName = frame[_DYN_FILE_NAME ],
3936
+ _a.line = frame[_DYN_LINE ],
3937
+ _a[_DYN_SIZE_IN_BYTES ] = 0,
3938
+ _a);
3939
+ return _populateFrameSizeInBytes(parsedFrame);
3940
+ }
3941
+ function _populateFrameSizeInBytes(frame) {
3942
+ var sizeInBytes = STACKFRAME_BASE_SIZE;
3943
+ if (frame) {
3944
+ sizeInBytes += frame.method[_DYN_LENGTH ];
3945
+ sizeInBytes += frame.assembly[_DYN_LENGTH ];
3946
+ sizeInBytes += frame.fileName[_DYN_LENGTH ];
3947
+ sizeInBytes += frame.level.toString()[_DYN_LENGTH ];
3948
+ sizeInBytes += frame.line.toString()[_DYN_LENGTH ];
3949
+ frame[_DYN_SIZE_IN_BYTES ] = sizeInBytes;
3950
+ }
3951
+ return frame;
3952
+ }
3953
+ function _parsedFrameToInterface(frame) {
3954
+ return {
3955
+ level: frame[_DYN_LEVEL ],
3956
+ method: frame[_DYN_METHOD ],
3957
+ assembly: frame[_DYN_ASSEMBLY ],
3958
+ fileName: frame[_DYN_FILE_NAME ],
3959
+ line: frame[_DYN_LINE ]
3846
3960
  };
3847
- _StackFrame.regex = /^([\s]+at)?[\s]{0,50}([^\@\()]+?)[\s]{0,50}(\@|\()([^\(\n]+):([0-9]+):([0-9]+)(\)?)$/;
3848
- _StackFrame.baseSize = 58;
3849
- return _StackFrame;
3850
- }());
3961
+ }
3851
3962
 
3852
3963
  var DataPoint = /** @class */ (function () {
3853
3964
  function DataPoint() {