@microsoft/applicationinsights-properties-js 2.8.5-nightly.2206-04 → 2.8.5-nightly.2207-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.
- package/browser/applicationinsights-properties-js.integrity.json +9 -9
- package/browser/applicationinsights-properties-js.js +676 -526
- package/browser/applicationinsights-properties-js.js.map +1 -1
- package/browser/applicationinsights-properties-js.min.js +2 -2
- package/browser/applicationinsights-properties-js.min.js.map +1 -1
- package/dist/applicationinsights-properties-js.api.json +11 -2
- package/dist/applicationinsights-properties-js.d.ts +1 -1
- package/dist/applicationinsights-properties-js.js +676 -526
- package/dist/applicationinsights-properties-js.js.map +1 -1
- package/dist/applicationinsights-properties-js.min.js +2 -2
- package/dist/applicationinsights-properties-js.min.js.map +1 -1
- package/dist/applicationinsights-properties-js.rollup.d.ts +1 -1
- package/dist-esm/Context/Application.js +1 -1
- package/dist-esm/Context/Device.js +1 -1
- package/dist-esm/Context/Internal.js +4 -3
- package/dist-esm/Context/Internal.js.map +1 -1
- package/dist-esm/Context/Location.js +1 -1
- package/dist-esm/Context/Session.js +36 -35
- package/dist-esm/Context/Session.js.map +1 -1
- package/dist-esm/Context/TelemetryTrace.js +1 -1
- package/dist-esm/Context/User.js +32 -31
- package/dist-esm/Context/User.js.map +1 -1
- package/dist-esm/Interfaces/IPropTelemetryContext.js +1 -1
- package/dist-esm/Interfaces/ITelemetryConfig.js +1 -1
- package/dist-esm/PropertiesPlugin.js +65 -56
- package/dist-esm/PropertiesPlugin.js.map +1 -1
- package/dist-esm/TelemetryContext.js +27 -26
- package/dist-esm/TelemetryContext.js.map +1 -1
- package/dist-esm/__DynamicConstants.js +48 -0
- package/dist-esm/__DynamicConstants.js.map +1 -0
- package/dist-esm/applicationinsights-properties-js.js +1 -1
- package/package.json +7 -4
- package/src/Context/Internal.ts +8 -8
- package/src/Context/Session.ts +11 -11
- package/src/Context/TelemetryTrace.ts +3 -3
- package/src/Context/User.ts +11 -10
- package/src/PropertiesPlugin.ts +57 -46
- package/src/TelemetryContext.ts +25 -19
- package/src/__DynamicConstants.ts +46 -0
- package/types/Context/User.d.ts +1 -1
- package/types/PropertiesPlugin.d.ts +5 -5
- package/types/TelemetryContext.d.ts +6 -6
- package/types/__DynamicConstants.d.ts +34 -0
- package/types/tsdoc-metadata.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Properties Plugin, 2.8.5-nightly.
|
|
2
|
+
* Application Insights JavaScript SDK - Properties Plugin, 2.8.5-nightly.2207-02
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -333,14 +333,56 @@
|
|
|
333
333
|
};
|
|
334
334
|
dynamicProto[DynProtoDefaultOptions] = perfDefaults;
|
|
335
335
|
|
|
336
|
-
var
|
|
337
|
-
var
|
|
338
|
-
var
|
|
339
|
-
var
|
|
340
|
-
var
|
|
341
|
-
var
|
|
342
|
-
var
|
|
343
|
-
var
|
|
336
|
+
var _DYN_INITIALIZE = "initialize";
|
|
337
|
+
var _DYN_NAME$1 = "name";
|
|
338
|
+
var _DYN_IDENTIFIER = "identifier";
|
|
339
|
+
var _DYN_PUSH = "push";
|
|
340
|
+
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
341
|
+
var _DYN_CONFIG$1 = "config";
|
|
342
|
+
var _DYN_LOGGER = "logger";
|
|
343
|
+
var _DYN_LENGTH$2 = "length";
|
|
344
|
+
var _DYN_TIME = "time";
|
|
345
|
+
var _DYN_PROCESS_NEXT = "processNext";
|
|
346
|
+
var _DYN_GET_PROCESS_TEL_CONT0 = "getProcessTelContext";
|
|
347
|
+
var _DYN_GET_PLUGIN = "getPlugin";
|
|
348
|
+
var _DYN_TEARDOWN = "teardown";
|
|
349
|
+
var _DYN_MESSAGE_ID = "messageId";
|
|
350
|
+
var _DYN_MESSAGE = "message";
|
|
351
|
+
var _DYN_IS_ASYNC = "isAsync";
|
|
352
|
+
var _DYN__DO_TEARDOWN = "_doTeardown";
|
|
353
|
+
var _DYN_UPDATE$1 = "update";
|
|
354
|
+
var _DYN_GET_NEXT = "getNext";
|
|
355
|
+
var _DYN_DIAG_LOG = "diagLog";
|
|
356
|
+
var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
|
|
357
|
+
var _DYN_CREATE_NEW = "createNew";
|
|
358
|
+
var _DYN_COOKIE_CFG = "cookieCfg";
|
|
359
|
+
var _DYN_INDEX_OF = "indexOf";
|
|
360
|
+
var _DYN_SUBSTRING$1 = "substring";
|
|
361
|
+
var _DYN_USER_AGENT = "userAgent";
|
|
362
|
+
var _DYN_SPLIT = "split";
|
|
363
|
+
var _DYN_SET_ENABLED = "setEnabled";
|
|
364
|
+
var _DYN_REPLACE = "replace";
|
|
365
|
+
var _DYN_SUBSTR = "substr";
|
|
366
|
+
var _DYN_NODE_TYPE = "nodeType";
|
|
367
|
+
var _DYN_APPLY = "apply";
|
|
368
|
+
var _DYN_ENABLE_DEBUG_EXCEPTI4 = "enableDebugExceptions";
|
|
369
|
+
var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
|
|
370
|
+
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
371
|
+
var _DYN_CALL = "call";
|
|
372
|
+
var _DYN_IS_CHILD_EVT = "isChildEvt";
|
|
373
|
+
var _DYN_GET_CTX = "getCtx";
|
|
374
|
+
var _DYN_SET_CTX = "setCtx";
|
|
375
|
+
var _DYN_COMPLETE = "complete";
|
|
376
|
+
|
|
377
|
+
var STR_EMPTY = "";
|
|
378
|
+
var STR_CORE = "core";
|
|
379
|
+
var STR_DISABLED = "disabled";
|
|
380
|
+
var STR_EXTENSION_CONFIG = "extensionConfig";
|
|
381
|
+
var STR_PROCESS_TELEMETRY = "processTelemetry";
|
|
382
|
+
var STR_PRIORITY = "priority";
|
|
383
|
+
var STR_ERROR_TO_CONSOLE = "errorToConsole";
|
|
384
|
+
var STR_WARN_TO_CONSOLE = "warnToConsole";
|
|
385
|
+
var STR_GET_PERF_MGR = "getPerfMgr";
|
|
344
386
|
|
|
345
387
|
var strToISOString = "toISOString";
|
|
346
388
|
var cStrEndsWith = "endsWith";
|
|
@@ -359,7 +401,7 @@
|
|
|
359
401
|
var _isArray = Array.isArray;
|
|
360
402
|
var _objToString = ObjProto[strToString];
|
|
361
403
|
var _fnToString = ObjHasOwnProperty[strToString];
|
|
362
|
-
var _objFunctionString = _fnToString
|
|
404
|
+
var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass);
|
|
363
405
|
var rCamelCase = /-([a-z])/g;
|
|
364
406
|
var rNormalizeInvalid = /([^\w\d_$])/g;
|
|
365
407
|
var rLeadingNumeric = /^(\d+[\w\d_$])/;
|
|
@@ -394,11 +436,11 @@
|
|
|
394
436
|
function normalizeJsName(name) {
|
|
395
437
|
var value = name;
|
|
396
438
|
if (value && isString(value)) {
|
|
397
|
-
value = value
|
|
439
|
+
value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
|
|
398
440
|
return letter.toUpperCase();
|
|
399
441
|
});
|
|
400
|
-
value = value
|
|
401
|
-
value = value
|
|
442
|
+
value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
|
|
443
|
+
value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
|
|
402
444
|
return "_" + match;
|
|
403
445
|
});
|
|
404
446
|
}
|
|
@@ -407,8 +449,8 @@
|
|
|
407
449
|
function objForEachKey(target, callbackfn) {
|
|
408
450
|
if (target) {
|
|
409
451
|
for (var prop in target) {
|
|
410
|
-
if (ObjHasOwnProperty
|
|
411
|
-
callbackfn
|
|
452
|
+
if (ObjHasOwnProperty[_DYN_CALL ](target, prop)) {
|
|
453
|
+
callbackfn[_DYN_CALL ](target, prop, target[prop]);
|
|
412
454
|
}
|
|
413
455
|
}
|
|
414
456
|
}
|
|
@@ -422,8 +464,8 @@
|
|
|
422
464
|
}
|
|
423
465
|
function _strEndsWithPoly(value, search) {
|
|
424
466
|
var result = false;
|
|
425
|
-
var searchLen = search ? search
|
|
426
|
-
var valLen = value ? value
|
|
467
|
+
var searchLen = search ? search[_DYN_LENGTH$2 ] : 0;
|
|
468
|
+
var valLen = value ? value[_DYN_LENGTH$2 ] : 0;
|
|
427
469
|
if (searchLen && valLen && valLen >= searchLen && !(result = value === search)) {
|
|
428
470
|
var pos = valLen - 1;
|
|
429
471
|
for (var lp = searchLen - 1; lp >= 0; lp--) {
|
|
@@ -438,16 +480,16 @@
|
|
|
438
480
|
}
|
|
439
481
|
function strContains(value, search) {
|
|
440
482
|
if (value && search) {
|
|
441
|
-
return value
|
|
483
|
+
return value[_DYN_INDEX_OF ](search) !== -1;
|
|
442
484
|
}
|
|
443
485
|
return false;
|
|
444
486
|
}
|
|
445
487
|
var isArray = _isArray || _isArrayPoly;
|
|
446
488
|
function _isArrayPoly(obj) {
|
|
447
|
-
return !!(obj && _objToString
|
|
489
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Array]");
|
|
448
490
|
}
|
|
449
491
|
function isError(obj) {
|
|
450
|
-
return !!(obj && _objToString
|
|
492
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Error]");
|
|
451
493
|
}
|
|
452
494
|
function isString(value) {
|
|
453
495
|
return typeof value === "string";
|
|
@@ -463,10 +505,10 @@
|
|
|
463
505
|
result = true;
|
|
464
506
|
}
|
|
465
507
|
else {
|
|
466
|
-
if (proto[strConstructor] && ObjHasOwnProperty
|
|
508
|
+
if (proto[strConstructor] && ObjHasOwnProperty[_DYN_CALL ](proto, strConstructor)) {
|
|
467
509
|
proto = proto[strConstructor];
|
|
468
510
|
}
|
|
469
|
-
result = typeof proto === strShimFunction && _fnToString
|
|
511
|
+
result = typeof proto === strShimFunction && _fnToString[_DYN_CALL ](proto) === _objFunctionString;
|
|
470
512
|
}
|
|
471
513
|
}
|
|
472
514
|
return result;
|
|
@@ -480,7 +522,7 @@
|
|
|
480
522
|
if (date && date.getUTCFullYear) {
|
|
481
523
|
var pad = function (num) {
|
|
482
524
|
var r = String(num);
|
|
483
|
-
if (r
|
|
525
|
+
if (r[_DYN_LENGTH$2 ] === 1) {
|
|
484
526
|
r = "0" + r;
|
|
485
527
|
}
|
|
486
528
|
return r;
|
|
@@ -496,11 +538,11 @@
|
|
|
496
538
|
}
|
|
497
539
|
}
|
|
498
540
|
function arrForEach(arr, callbackfn, thisArg) {
|
|
499
|
-
var len = arr
|
|
541
|
+
var len = arr[_DYN_LENGTH$2 ];
|
|
500
542
|
try {
|
|
501
543
|
for (var idx = 0; idx < len; idx++) {
|
|
502
544
|
if (idx in arr) {
|
|
503
|
-
if (callbackfn
|
|
545
|
+
if (callbackfn[_DYN_CALL ](thisArg || arr, arr[idx], idx, arr) === -1) {
|
|
504
546
|
break;
|
|
505
547
|
}
|
|
506
548
|
}
|
|
@@ -511,7 +553,7 @@
|
|
|
511
553
|
}
|
|
512
554
|
function strTrim(str) {
|
|
513
555
|
if (str) {
|
|
514
|
-
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str
|
|
556
|
+
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str[_DYN_REPLACE ] ? str[_DYN_REPLACE ](/^\s+|\s+$/g, STR_EMPTY) : str);
|
|
515
557
|
}
|
|
516
558
|
return str;
|
|
517
559
|
}
|
|
@@ -535,15 +577,15 @@
|
|
|
535
577
|
}
|
|
536
578
|
var result = [];
|
|
537
579
|
for (var prop in obj) {
|
|
538
|
-
if (obj && ObjHasOwnProperty
|
|
539
|
-
result
|
|
580
|
+
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop)) {
|
|
581
|
+
result[_DYN_PUSH ](prop);
|
|
540
582
|
}
|
|
541
583
|
}
|
|
542
584
|
if (_objKeysHasDontEnumBug) {
|
|
543
|
-
var dontEnumsLength = _objKeysDontEnums
|
|
585
|
+
var dontEnumsLength = _objKeysDontEnums[_DYN_LENGTH$2 ];
|
|
544
586
|
for (var lp = 0; lp < dontEnumsLength; lp++) {
|
|
545
|
-
if (obj && ObjHasOwnProperty
|
|
546
|
-
result
|
|
587
|
+
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, _objKeysDontEnums[lp])) {
|
|
588
|
+
result[_DYN_PUSH ](_objKeysDontEnums[lp]);
|
|
547
589
|
}
|
|
548
590
|
}
|
|
549
591
|
}
|
|
@@ -590,9 +632,9 @@
|
|
|
590
632
|
}
|
|
591
633
|
function getExceptionName(object) {
|
|
592
634
|
if (isError(object)) {
|
|
593
|
-
return object
|
|
635
|
+
return object[_DYN_NAME$1 ];
|
|
594
636
|
}
|
|
595
|
-
return
|
|
637
|
+
return STR_EMPTY;
|
|
596
638
|
}
|
|
597
639
|
function setValue(target, field, value, valChk, srcChk) {
|
|
598
640
|
var theValue = value;
|
|
@@ -619,6 +661,9 @@
|
|
|
619
661
|
}
|
|
620
662
|
return theValue;
|
|
621
663
|
}
|
|
664
|
+
function getCfgValue(theValue, defaultValue) {
|
|
665
|
+
return !isNullOrUndefined(theValue) ? theValue : defaultValue;
|
|
666
|
+
}
|
|
622
667
|
function isTruthy(value) {
|
|
623
668
|
return !!value;
|
|
624
669
|
}
|
|
@@ -637,7 +682,7 @@
|
|
|
637
682
|
src = srcFunc();
|
|
638
683
|
}
|
|
639
684
|
if (src) {
|
|
640
|
-
return src[funcName]
|
|
685
|
+
return src[funcName][_DYN_APPLY ](src, originalArguments);
|
|
641
686
|
}
|
|
642
687
|
};
|
|
643
688
|
}
|
|
@@ -664,7 +709,7 @@
|
|
|
664
709
|
function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
|
|
665
710
|
var theArgs = arguments;
|
|
666
711
|
var extended = theArgs[0] || {};
|
|
667
|
-
var argLen = theArgs
|
|
712
|
+
var argLen = theArgs[_DYN_LENGTH$2 ];
|
|
668
713
|
var deep = false;
|
|
669
714
|
var idx = 1;
|
|
670
715
|
if (argLen > 0 && isBoolean(extended)) {
|
|
@@ -680,7 +725,7 @@
|
|
|
680
725
|
var isArgArray = isArray(arg);
|
|
681
726
|
var isArgObj = isObject(arg);
|
|
682
727
|
for (var prop in arg) {
|
|
683
|
-
var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty
|
|
728
|
+
var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty[_DYN_CALL ](arg, prop)));
|
|
684
729
|
if (!propOk) {
|
|
685
730
|
continue;
|
|
686
731
|
}
|
|
@@ -794,18 +839,18 @@
|
|
|
794
839
|
}
|
|
795
840
|
function isIE() {
|
|
796
841
|
var nav = getNavigator();
|
|
797
|
-
if (nav && (nav
|
|
798
|
-
_navUserAgentCheck = nav
|
|
799
|
-
var userAgent = (_navUserAgentCheck ||
|
|
842
|
+
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
843
|
+
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
844
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
|
|
800
845
|
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
801
846
|
}
|
|
802
847
|
return _isTrident;
|
|
803
848
|
}
|
|
804
849
|
function dumpObj(object) {
|
|
805
|
-
var objectTypeDump = Object[strShimPrototype].toString
|
|
806
|
-
var propertyValueDump =
|
|
850
|
+
var objectTypeDump = Object[strShimPrototype].toString[_DYN_CALL ](object);
|
|
851
|
+
var propertyValueDump = STR_EMPTY;
|
|
807
852
|
if (objectTypeDump === "[object Error]") {
|
|
808
|
-
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object
|
|
853
|
+
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object[_DYN_NAME$1 ] + "'";
|
|
809
854
|
}
|
|
810
855
|
else if (hasJSON()) {
|
|
811
856
|
propertyValueDump = getJSON().stringify(object);
|
|
@@ -832,13 +877,11 @@
|
|
|
832
877
|
var AiNonUserActionablePrefix = "AI (Internal): ";
|
|
833
878
|
var AiUserActionablePrefix = "AI: ";
|
|
834
879
|
var AIInternalMessagePrefix = "AITR_";
|
|
835
|
-
var strErrorToConsole = "errorToConsole";
|
|
836
|
-
var strWarnToConsole = "warnToConsole";
|
|
837
880
|
function _sanitizeDiagnosticText(text) {
|
|
838
881
|
if (text) {
|
|
839
|
-
return "\"" + text
|
|
882
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
840
883
|
}
|
|
841
|
-
return
|
|
884
|
+
return STR_EMPTY;
|
|
842
885
|
}
|
|
843
886
|
function _logToConsole(func, message) {
|
|
844
887
|
var theConsole = getConsole();
|
|
@@ -856,23 +899,23 @@
|
|
|
856
899
|
function _InternalLogMessage(msgId, msg, isUserAct, properties) {
|
|
857
900
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
858
901
|
var _self = this;
|
|
859
|
-
_self
|
|
860
|
-
_self
|
|
902
|
+
_self[_DYN_MESSAGE_ID ] = msgId;
|
|
903
|
+
_self[_DYN_MESSAGE ] =
|
|
861
904
|
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
862
905
|
msgId;
|
|
863
|
-
var strProps =
|
|
906
|
+
var strProps = STR_EMPTY;
|
|
864
907
|
if (hasJSON()) {
|
|
865
908
|
strProps = getJSON().stringify(properties);
|
|
866
909
|
}
|
|
867
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) :
|
|
868
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) :
|
|
869
|
-
_self
|
|
910
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
911
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
912
|
+
_self[_DYN_MESSAGE ] += diagnosticText;
|
|
870
913
|
}
|
|
871
914
|
_InternalLogMessage.dataType = "MessageData";
|
|
872
915
|
return _InternalLogMessage;
|
|
873
916
|
}());
|
|
874
917
|
function safeGetLogger(core, config) {
|
|
875
|
-
return (core || {})
|
|
918
|
+
return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
|
|
876
919
|
}
|
|
877
920
|
var DiagnosticLogger = /** @class */ (function () {
|
|
878
921
|
function DiagnosticLogger(config) {
|
|
@@ -880,48 +923,49 @@
|
|
|
880
923
|
this.queue = [];
|
|
881
924
|
var _messageCount = 0;
|
|
882
925
|
var _messageLogged = {};
|
|
926
|
+
var _loggingLevelConsole;
|
|
927
|
+
var _loggingLevelTelemetry;
|
|
928
|
+
var _maxInternalMessageLimit;
|
|
929
|
+
var _enableDebugExceptions;
|
|
883
930
|
dynamicProto(DiagnosticLogger, this, function (_self) {
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
}
|
|
887
|
-
_self.
|
|
888
|
-
_self
|
|
889
|
-
_self.maxInternalMessageLimit = function () { return _getConfigValue("maxMessageLimit", 25); };
|
|
890
|
-
_self.enableDebugExceptions = function () { return _getConfigValue("enableDebugExceptions", false); };
|
|
931
|
+
_setDefaultsFromConfig(config || {});
|
|
932
|
+
_self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
|
|
933
|
+
_self.telemetryLoggingLevel = function () { return _loggingLevelTelemetry; };
|
|
934
|
+
_self.maxInternalMessageLimit = function () { return _maxInternalMessageLimit; };
|
|
935
|
+
_self[_DYN_ENABLE_DEBUG_EXCEPTI4 ] = function () { return _enableDebugExceptions; };
|
|
891
936
|
_self.throwInternal = function (severity, msgId, msg, properties, isUserAct) {
|
|
892
937
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
893
938
|
var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
|
|
894
|
-
if (
|
|
939
|
+
if (_enableDebugExceptions) {
|
|
895
940
|
throw dumpObj(message);
|
|
896
941
|
}
|
|
897
942
|
else {
|
|
898
|
-
var logFunc = severity === 1 ?
|
|
899
|
-
if (!isUndefined(message
|
|
900
|
-
var logLevel = _self.consoleLoggingLevel();
|
|
943
|
+
var logFunc = severity === 1 ? STR_ERROR_TO_CONSOLE : STR_WARN_TO_CONSOLE;
|
|
944
|
+
if (!isUndefined(message[_DYN_MESSAGE ])) {
|
|
901
945
|
if (isUserAct) {
|
|
902
|
-
var messageKey = +message
|
|
903
|
-
if (!_messageLogged[messageKey] &&
|
|
904
|
-
_self[logFunc](message
|
|
946
|
+
var messageKey = +message[_DYN_MESSAGE_ID ];
|
|
947
|
+
if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
|
|
948
|
+
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
905
949
|
_messageLogged[messageKey] = true;
|
|
906
950
|
}
|
|
907
951
|
}
|
|
908
952
|
else {
|
|
909
|
-
if (
|
|
910
|
-
_self[logFunc](message
|
|
953
|
+
if (_loggingLevelConsole >= severity) {
|
|
954
|
+
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
911
955
|
}
|
|
912
956
|
}
|
|
913
|
-
|
|
957
|
+
_logInternalMessage(severity, message);
|
|
914
958
|
}
|
|
915
959
|
else {
|
|
916
960
|
_debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
|
|
917
961
|
}
|
|
918
962
|
}
|
|
919
963
|
};
|
|
920
|
-
_self
|
|
964
|
+
_self[STR_WARN_TO_CONSOLE ] = function (message) {
|
|
921
965
|
_logToConsole("warn", message);
|
|
922
966
|
_debugExtMsg("warning", message);
|
|
923
967
|
};
|
|
924
|
-
_self
|
|
968
|
+
_self[STR_ERROR_TO_CONSOLE ] = function (message) {
|
|
925
969
|
_logToConsole("error", message);
|
|
926
970
|
_debugExtMsg("error", message);
|
|
927
971
|
};
|
|
@@ -929,12 +973,13 @@
|
|
|
929
973
|
_messageCount = 0;
|
|
930
974
|
_messageLogged = {};
|
|
931
975
|
};
|
|
932
|
-
_self
|
|
976
|
+
_self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
|
|
977
|
+
function _logInternalMessage(severity, message) {
|
|
933
978
|
if (_areInternalMessagesThrottled()) {
|
|
934
979
|
return;
|
|
935
980
|
}
|
|
936
981
|
var logMessage = true;
|
|
937
|
-
var messageKey = AIInternalMessagePrefix + message
|
|
982
|
+
var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
|
|
938
983
|
if (_messageLogged[messageKey]) {
|
|
939
984
|
logMessage = false;
|
|
940
985
|
}
|
|
@@ -942,38 +987,37 @@
|
|
|
942
987
|
_messageLogged[messageKey] = true;
|
|
943
988
|
}
|
|
944
989
|
if (logMessage) {
|
|
945
|
-
if (severity <=
|
|
946
|
-
_self.queue
|
|
990
|
+
if (severity <= _loggingLevelTelemetry) {
|
|
991
|
+
_self.queue[_DYN_PUSH ](message);
|
|
947
992
|
_messageCount++;
|
|
948
993
|
_debugExtMsg((severity === 1 ? "error" : "warn"), message);
|
|
949
994
|
}
|
|
950
|
-
if (_messageCount ===
|
|
995
|
+
if (_messageCount === _maxInternalMessageLimit) {
|
|
951
996
|
var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
|
|
952
997
|
var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
|
|
953
|
-
_self.queue
|
|
998
|
+
_self.queue[_DYN_PUSH ](throttleMessage);
|
|
954
999
|
if (severity === 1 ) {
|
|
955
|
-
_self
|
|
1000
|
+
_self[STR_ERROR_TO_CONSOLE ](throttleLimitMessage);
|
|
956
1001
|
}
|
|
957
1002
|
else {
|
|
958
|
-
_self
|
|
1003
|
+
_self[STR_WARN_TO_CONSOLE ](throttleLimitMessage);
|
|
959
1004
|
}
|
|
960
1005
|
}
|
|
961
1006
|
}
|
|
962
|
-
}
|
|
963
|
-
function
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
return defValue;
|
|
1007
|
+
}
|
|
1008
|
+
function _setDefaultsFromConfig(config) {
|
|
1009
|
+
_loggingLevelConsole = getCfgValue(config.loggingLevelConsole, 0);
|
|
1010
|
+
_loggingLevelTelemetry = getCfgValue(config.loggingLevelTelemetry, 1);
|
|
1011
|
+
_maxInternalMessageLimit = getCfgValue(config.maxMessageLimit, 25);
|
|
1012
|
+
_enableDebugExceptions = getCfgValue(config[_DYN_ENABLE_DEBUG_EXCEPTI4 ], false);
|
|
969
1013
|
}
|
|
970
1014
|
function _areInternalMessagesThrottled() {
|
|
971
|
-
return _messageCount >=
|
|
1015
|
+
return _messageCount >= _maxInternalMessageLimit;
|
|
972
1016
|
}
|
|
973
1017
|
function _debugExtMsg(name, data) {
|
|
974
|
-
var dbgExt = getDebugExt(config);
|
|
975
|
-
if (dbgExt && dbgExt
|
|
976
|
-
dbgExt
|
|
1018
|
+
var dbgExt = getDebugExt(config || {});
|
|
1019
|
+
if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
|
|
1020
|
+
dbgExt[_DYN_DIAG_LOG ](name, data);
|
|
977
1021
|
}
|
|
978
1022
|
}
|
|
979
1023
|
});
|
|
@@ -986,21 +1030,23 @@
|
|
|
986
1030
|
}
|
|
987
1031
|
function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
|
|
988
1032
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
989
|
-
(logger
|
|
1033
|
+
_getLogger(logger).throwInternal(severity, msgId, msg, properties, isUserAct);
|
|
990
1034
|
}
|
|
991
1035
|
function _logInternalMessage(logger, severity, message) {
|
|
992
|
-
_getLogger(logger)
|
|
1036
|
+
_getLogger(logger)[_DYN_LOG_INTERNAL_MESSAGE ](severity, message);
|
|
993
1037
|
}
|
|
994
1038
|
|
|
995
1039
|
var strExecutionContextKey = "ctx";
|
|
1040
|
+
var strParentContextKey = "ParentContextKey";
|
|
1041
|
+
var strChildrenContextKey = "ChildrenContextKey";
|
|
996
1042
|
var PerfEvent = /** @class */ (function () {
|
|
997
1043
|
function PerfEvent(name, payloadDetails, isAsync) {
|
|
998
1044
|
var _self = this;
|
|
999
1045
|
var accessorDefined = false;
|
|
1000
1046
|
_self.start = dateNow();
|
|
1001
|
-
_self
|
|
1002
|
-
_self
|
|
1003
|
-
_self
|
|
1047
|
+
_self[_DYN_NAME$1 ] = name;
|
|
1048
|
+
_self[_DYN_IS_ASYNC ] = isAsync;
|
|
1049
|
+
_self[_DYN_IS_CHILD_EVT ] = function () { return false; };
|
|
1004
1050
|
if (isFunction(payloadDetails)) {
|
|
1005
1051
|
var theDetails_1;
|
|
1006
1052
|
accessorDefined = objDefineAccessors(_self, "payload", function () {
|
|
@@ -1011,24 +1057,24 @@
|
|
|
1011
1057
|
return theDetails_1;
|
|
1012
1058
|
});
|
|
1013
1059
|
}
|
|
1014
|
-
_self
|
|
1060
|
+
_self[_DYN_GET_CTX ] = function (key) {
|
|
1015
1061
|
if (key) {
|
|
1016
|
-
if (key === PerfEvent
|
|
1062
|
+
if (key === PerfEvent[strParentContextKey] || key === PerfEvent[strChildrenContextKey]) {
|
|
1017
1063
|
return _self[key];
|
|
1018
1064
|
}
|
|
1019
1065
|
return (_self[strExecutionContextKey] || {})[key];
|
|
1020
1066
|
}
|
|
1021
1067
|
return null;
|
|
1022
1068
|
};
|
|
1023
|
-
_self
|
|
1069
|
+
_self[_DYN_SET_CTX ] = function (key, value) {
|
|
1024
1070
|
if (key) {
|
|
1025
|
-
if (key === PerfEvent
|
|
1071
|
+
if (key === PerfEvent[strParentContextKey]) {
|
|
1026
1072
|
if (!_self[key]) {
|
|
1027
|
-
_self
|
|
1073
|
+
_self[_DYN_IS_CHILD_EVT ] = function () { return true; };
|
|
1028
1074
|
}
|
|
1029
1075
|
_self[key] = value;
|
|
1030
1076
|
}
|
|
1031
|
-
else if (key === PerfEvent
|
|
1077
|
+
else if (key === PerfEvent[strChildrenContextKey]) {
|
|
1032
1078
|
_self[key] = value;
|
|
1033
1079
|
}
|
|
1034
1080
|
else {
|
|
@@ -1037,20 +1083,20 @@
|
|
|
1037
1083
|
}
|
|
1038
1084
|
}
|
|
1039
1085
|
};
|
|
1040
|
-
_self
|
|
1086
|
+
_self[_DYN_COMPLETE ] = function () {
|
|
1041
1087
|
var childTime = 0;
|
|
1042
|
-
var childEvts = _self
|
|
1088
|
+
var childEvts = _self[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
1043
1089
|
if (isArray(childEvts)) {
|
|
1044
|
-
for (var lp = 0; lp < childEvts
|
|
1090
|
+
for (var lp = 0; lp < childEvts[_DYN_LENGTH$2 ]; lp++) {
|
|
1045
1091
|
var childEvt = childEvts[lp];
|
|
1046
1092
|
if (childEvt) {
|
|
1047
|
-
childTime += childEvt
|
|
1093
|
+
childTime += childEvt[_DYN_TIME ];
|
|
1048
1094
|
}
|
|
1049
1095
|
}
|
|
1050
1096
|
}
|
|
1051
|
-
_self
|
|
1052
|
-
_self.exTime = _self
|
|
1053
|
-
_self
|
|
1097
|
+
_self[_DYN_TIME ] = dateNow() - _self.start;
|
|
1098
|
+
_self.exTime = _self[_DYN_TIME ] - childTime;
|
|
1099
|
+
_self[_DYN_COMPLETE ] = function () { };
|
|
1054
1100
|
if (!accessorDefined && isFunction(payloadDetails)) {
|
|
1055
1101
|
_self.payload = payloadDetails();
|
|
1056
1102
|
}
|
|
@@ -1064,40 +1110,40 @@
|
|
|
1064
1110
|
function doPerf(mgrSource, getSource, func, details, isAsync) {
|
|
1065
1111
|
if (mgrSource) {
|
|
1066
1112
|
var perfMgr = mgrSource;
|
|
1067
|
-
if (
|
|
1068
|
-
perfMgr = perfMgr[
|
|
1113
|
+
if (perfMgr[STR_GET_PERF_MGR]) {
|
|
1114
|
+
perfMgr = perfMgr[STR_GET_PERF_MGR]();
|
|
1069
1115
|
}
|
|
1070
1116
|
if (perfMgr) {
|
|
1071
1117
|
var perfEvt = void 0;
|
|
1072
|
-
var currentActive = perfMgr
|
|
1118
|
+
var currentActive = perfMgr[_DYN_GET_CTX ](doPerfActiveKey);
|
|
1073
1119
|
try {
|
|
1074
1120
|
perfEvt = perfMgr.create(getSource(), details, isAsync);
|
|
1075
1121
|
if (perfEvt) {
|
|
1076
|
-
if (currentActive && perfEvt
|
|
1077
|
-
perfEvt
|
|
1078
|
-
if (currentActive
|
|
1079
|
-
var children = currentActive
|
|
1122
|
+
if (currentActive && perfEvt[_DYN_SET_CTX ]) {
|
|
1123
|
+
perfEvt[_DYN_SET_CTX ](PerfEvent[strParentContextKey], currentActive);
|
|
1124
|
+
if (currentActive[_DYN_GET_CTX ] && currentActive[_DYN_SET_CTX ]) {
|
|
1125
|
+
var children = currentActive[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
1080
1126
|
if (!children) {
|
|
1081
1127
|
children = [];
|
|
1082
|
-
currentActive
|
|
1128
|
+
currentActive[_DYN_SET_CTX ](PerfEvent[strChildrenContextKey], children);
|
|
1083
1129
|
}
|
|
1084
|
-
children
|
|
1130
|
+
children[_DYN_PUSH ](perfEvt);
|
|
1085
1131
|
}
|
|
1086
1132
|
}
|
|
1087
|
-
perfMgr
|
|
1133
|
+
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, perfEvt);
|
|
1088
1134
|
return func(perfEvt);
|
|
1089
1135
|
}
|
|
1090
1136
|
}
|
|
1091
1137
|
catch (ex) {
|
|
1092
|
-
if (perfEvt && perfEvt
|
|
1093
|
-
perfEvt
|
|
1138
|
+
if (perfEvt && perfEvt[_DYN_SET_CTX ]) {
|
|
1139
|
+
perfEvt[_DYN_SET_CTX ]("exception", ex);
|
|
1094
1140
|
}
|
|
1095
1141
|
}
|
|
1096
1142
|
finally {
|
|
1097
1143
|
if (perfEvt) {
|
|
1098
1144
|
perfMgr.fire(perfEvt);
|
|
1099
1145
|
}
|
|
1100
|
-
perfMgr
|
|
1146
|
+
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, currentActive);
|
|
1101
1147
|
}
|
|
1102
1148
|
}
|
|
1103
1149
|
}
|
|
@@ -1159,8 +1205,8 @@
|
|
|
1159
1205
|
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
1160
1206
|
var number = random32() >>> 0;
|
|
1161
1207
|
var chars = 0;
|
|
1162
|
-
var result =
|
|
1163
|
-
while (result
|
|
1208
|
+
var result = STR_EMPTY;
|
|
1209
|
+
while (result[_DYN_LENGTH$2 ] < maxLength) {
|
|
1164
1210
|
chars++;
|
|
1165
1211
|
result += base64chars.charAt(number & 0x3F);
|
|
1166
1212
|
number >>>= 6;
|
|
@@ -1173,7 +1219,7 @@
|
|
|
1173
1219
|
}
|
|
1174
1220
|
|
|
1175
1221
|
var _objDefineProperty = ObjDefineProperty;
|
|
1176
|
-
var version = "2.8.5-nightly.
|
|
1222
|
+
var version = "2.8.5-nightly.2207-02";
|
|
1177
1223
|
var instanceName = "." + newId(6);
|
|
1178
1224
|
var _dataUid = 0;
|
|
1179
1225
|
function _createAccessor(target, prop, value) {
|
|
@@ -1192,7 +1238,7 @@
|
|
|
1192
1238
|
return false;
|
|
1193
1239
|
}
|
|
1194
1240
|
function _canAcceptData(target) {
|
|
1195
|
-
return target
|
|
1241
|
+
return target[_DYN_NODE_TYPE ] === 1 || target[_DYN_NODE_TYPE ] === 9 || !(+target[_DYN_NODE_TYPE ]);
|
|
1196
1242
|
}
|
|
1197
1243
|
function _getCache(data, target) {
|
|
1198
1244
|
var theCache = target[data.id];
|
|
@@ -1212,11 +1258,11 @@
|
|
|
1212
1258
|
}
|
|
1213
1259
|
function createUniqueNamespace(name, includeVersion) {
|
|
1214
1260
|
if (includeVersion === void 0) { includeVersion = false; }
|
|
1215
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version :
|
|
1261
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
1216
1262
|
}
|
|
1217
1263
|
function createElmNodeData(name) {
|
|
1218
1264
|
var data = {
|
|
1219
|
-
id: createUniqueNamespace("_aiData-" + (name ||
|
|
1265
|
+
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
1220
1266
|
accept: function (target) {
|
|
1221
1267
|
return _canAcceptData(target);
|
|
1222
1268
|
},
|
|
@@ -1273,7 +1319,7 @@
|
|
|
1273
1319
|
return true;
|
|
1274
1320
|
}
|
|
1275
1321
|
function _createCookieMgrConfig(rootConfig) {
|
|
1276
|
-
var cookieMgrCfg = rootConfig
|
|
1322
|
+
var cookieMgrCfg = rootConfig[_DYN_COOKIE_CFG ] = rootConfig[_DYN_COOKIE_CFG ] || {};
|
|
1277
1323
|
setValue(cookieMgrCfg, "domain", rootConfig.cookieDomain, isNotNullOrUndefined, isNullOrUndefined);
|
|
1278
1324
|
setValue(cookieMgrCfg, "path", rootConfig.cookiePath || "/", null, isNullOrUndefined);
|
|
1279
1325
|
if (isNullOrUndefined(cookieMgrCfg[strEnabled])) {
|
|
@@ -1294,7 +1340,7 @@
|
|
|
1294
1340
|
cookieMgr = core.getCookieMgr();
|
|
1295
1341
|
}
|
|
1296
1342
|
else if (config) {
|
|
1297
|
-
var cookieCfg = config
|
|
1343
|
+
var cookieCfg = config[_DYN_COOKIE_CFG ];
|
|
1298
1344
|
if (cookieCfg[strConfigCookieMgr]) {
|
|
1299
1345
|
cookieMgr = cookieCfg[strConfigCookieMgr];
|
|
1300
1346
|
}
|
|
@@ -1303,36 +1349,38 @@
|
|
|
1303
1349
|
}
|
|
1304
1350
|
}
|
|
1305
1351
|
if (!cookieMgr) {
|
|
1306
|
-
cookieMgr = _gblCookieMgr(config, (core || {})
|
|
1352
|
+
cookieMgr = _gblCookieMgr(config, (core || {})[_DYN_LOGGER ]);
|
|
1307
1353
|
}
|
|
1308
1354
|
return cookieMgr;
|
|
1309
1355
|
}
|
|
1310
1356
|
function createCookieMgr(rootConfig, logger) {
|
|
1357
|
+
var _a;
|
|
1311
1358
|
var cookieMgrConfig = _createCookieMgrConfig(rootConfig || _globalCookieConfig);
|
|
1312
1359
|
var _path = cookieMgrConfig.path || "/";
|
|
1313
1360
|
var _domain = cookieMgrConfig.domain;
|
|
1314
1361
|
var _enabled = cookieMgrConfig[strEnabled] !== false;
|
|
1315
|
-
var cookieMgr = {
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1362
|
+
var cookieMgr = (_a = {
|
|
1363
|
+
isEnabled: function () {
|
|
1364
|
+
var enabled = _enabled && areCookiesSupported(logger);
|
|
1365
|
+
var gblManager = _globalCookieConfig[strConfigCookieMgr];
|
|
1366
|
+
if (enabled && gblManager && cookieMgr !== gblManager) {
|
|
1367
|
+
enabled = _isMgrEnabled(gblManager);
|
|
1368
|
+
}
|
|
1369
|
+
return enabled;
|
|
1370
|
+
}
|
|
1323
1371
|
},
|
|
1324
|
-
|
|
1372
|
+
_a[_DYN_SET_ENABLED ] = function (value) {
|
|
1325
1373
|
_enabled = value !== false;
|
|
1326
1374
|
},
|
|
1327
|
-
set
|
|
1375
|
+
_a.set = function (name, value, maxAgeSec, domain, path) {
|
|
1328
1376
|
var result = false;
|
|
1329
1377
|
if (_isMgrEnabled(cookieMgr)) {
|
|
1330
1378
|
var values = {};
|
|
1331
|
-
var theValue = strTrim(value ||
|
|
1332
|
-
var idx = theValue
|
|
1379
|
+
var theValue = strTrim(value || STR_EMPTY);
|
|
1380
|
+
var idx = theValue[_DYN_INDEX_OF ](";");
|
|
1333
1381
|
if (idx !== -1) {
|
|
1334
|
-
theValue = strTrim(value
|
|
1335
|
-
values = _extractParts(value
|
|
1382
|
+
theValue = strTrim(value[_DYN_SUBSTRING$1 ](0, idx));
|
|
1383
|
+
values = _extractParts(value[_DYN_SUBSTRING$1 ](idx + 1));
|
|
1336
1384
|
}
|
|
1337
1385
|
setValue(values, "domain", domain || _domain, isTruthy, isUndefined);
|
|
1338
1386
|
if (!isNullOrUndefined(maxAgeSec)) {
|
|
@@ -1343,18 +1391,18 @@
|
|
|
1343
1391
|
if (expireMs > 0) {
|
|
1344
1392
|
var expiry = new Date();
|
|
1345
1393
|
expiry.setTime(expireMs);
|
|
1346
|
-
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) ||
|
|
1394
|
+
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
|
|
1347
1395
|
}
|
|
1348
1396
|
}
|
|
1349
1397
|
if (!_isIE) {
|
|
1350
|
-
setValue(values, "max-age",
|
|
1398
|
+
setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
|
|
1351
1399
|
}
|
|
1352
1400
|
}
|
|
1353
1401
|
var location_1 = getLocation();
|
|
1354
1402
|
if (location_1 && location_1.protocol === "https:") {
|
|
1355
1403
|
setValue(values, "secure", null, null, isUndefined);
|
|
1356
1404
|
if (_allowUaSameSite === null) {
|
|
1357
|
-
_allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})
|
|
1405
|
+
_allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
|
|
1358
1406
|
}
|
|
1359
1407
|
if (_allowUaSameSite) {
|
|
1360
1408
|
setValue(values, "SameSite", "None", null, isUndefined);
|
|
@@ -1367,21 +1415,21 @@
|
|
|
1367
1415
|
}
|
|
1368
1416
|
return result;
|
|
1369
1417
|
},
|
|
1370
|
-
get
|
|
1371
|
-
var value =
|
|
1418
|
+
_a.get = function (name) {
|
|
1419
|
+
var value = STR_EMPTY;
|
|
1372
1420
|
if (_isMgrEnabled(cookieMgr)) {
|
|
1373
1421
|
value = (cookieMgrConfig.getCookie || _getCookieValue)(name);
|
|
1374
1422
|
}
|
|
1375
1423
|
return value;
|
|
1376
1424
|
},
|
|
1377
|
-
del
|
|
1425
|
+
_a.del = function (name, path) {
|
|
1378
1426
|
var result = false;
|
|
1379
1427
|
if (_isMgrEnabled(cookieMgr)) {
|
|
1380
1428
|
result = cookieMgr.purge(name, path);
|
|
1381
1429
|
}
|
|
1382
1430
|
return result;
|
|
1383
1431
|
},
|
|
1384
|
-
purge
|
|
1432
|
+
_a.purge = function (name, path) {
|
|
1385
1433
|
var _a;
|
|
1386
1434
|
var result = false;
|
|
1387
1435
|
if (areCookiesSupported(logger)) {
|
|
@@ -1393,12 +1441,12 @@
|
|
|
1393
1441
|
values["max-age"] = "0";
|
|
1394
1442
|
}
|
|
1395
1443
|
var delCookie = cookieMgrConfig.delCookie || _setCookieValue;
|
|
1396
|
-
delCookie(name, _formatCookieValue(
|
|
1444
|
+
delCookie(name, _formatCookieValue(STR_EMPTY, values));
|
|
1397
1445
|
result = true;
|
|
1398
1446
|
}
|
|
1399
1447
|
return result;
|
|
1400
|
-
}
|
|
1401
|
-
|
|
1448
|
+
},
|
|
1449
|
+
_a);
|
|
1402
1450
|
cookieMgr[strConfigCookieMgr] = cookieMgr;
|
|
1403
1451
|
return cookieMgr;
|
|
1404
1452
|
}
|
|
@@ -1417,17 +1465,17 @@
|
|
|
1417
1465
|
}
|
|
1418
1466
|
function _extractParts(theValue) {
|
|
1419
1467
|
var values = {};
|
|
1420
|
-
if (theValue && theValue
|
|
1421
|
-
var parts = strTrim(theValue)
|
|
1468
|
+
if (theValue && theValue[_DYN_LENGTH$2 ]) {
|
|
1469
|
+
var parts = strTrim(theValue)[_DYN_SPLIT ](";");
|
|
1422
1470
|
arrForEach(parts, function (thePart) {
|
|
1423
|
-
thePart = strTrim(thePart ||
|
|
1471
|
+
thePart = strTrim(thePart || STR_EMPTY);
|
|
1424
1472
|
if (thePart) {
|
|
1425
|
-
var idx = thePart
|
|
1473
|
+
var idx = thePart[_DYN_INDEX_OF ]("=");
|
|
1426
1474
|
if (idx === -1) {
|
|
1427
1475
|
values[thePart] = null;
|
|
1428
1476
|
}
|
|
1429
1477
|
else {
|
|
1430
|
-
values[strTrim(thePart
|
|
1478
|
+
values[strTrim(thePart[_DYN_SUBSTRING$1 ](0, idx))] = strTrim(thePart[_DYN_SUBSTRING$1 ](idx + 1));
|
|
1431
1479
|
}
|
|
1432
1480
|
}
|
|
1433
1481
|
});
|
|
@@ -1441,21 +1489,21 @@
|
|
|
1441
1489
|
return null;
|
|
1442
1490
|
}
|
|
1443
1491
|
function _formatCookieValue(value, values) {
|
|
1444
|
-
var cookieValue = value ||
|
|
1492
|
+
var cookieValue = value || STR_EMPTY;
|
|
1445
1493
|
objForEachKey(values, function (name, theValue) {
|
|
1446
|
-
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue :
|
|
1494
|
+
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
|
|
1447
1495
|
});
|
|
1448
1496
|
return cookieValue;
|
|
1449
1497
|
}
|
|
1450
1498
|
function _getCookieValue(name) {
|
|
1451
|
-
var cookieValue =
|
|
1499
|
+
var cookieValue = STR_EMPTY;
|
|
1452
1500
|
if (_doc) {
|
|
1453
|
-
var theCookie = _doc[strCookie] ||
|
|
1501
|
+
var theCookie = _doc[strCookie] || STR_EMPTY;
|
|
1454
1502
|
if (_parsedCookieValue !== theCookie) {
|
|
1455
1503
|
_cookieCache = _extractParts(theCookie);
|
|
1456
1504
|
_parsedCookieValue = theCookie;
|
|
1457
1505
|
}
|
|
1458
|
-
cookieValue = strTrim(_cookieCache[name] ||
|
|
1506
|
+
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
|
|
1459
1507
|
}
|
|
1460
1508
|
return cookieValue;
|
|
1461
1509
|
}
|
|
@@ -1491,7 +1539,7 @@
|
|
|
1491
1539
|
|
|
1492
1540
|
function generateW3CId() {
|
|
1493
1541
|
var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
1494
|
-
var oct =
|
|
1542
|
+
var oct = STR_EMPTY, tmp;
|
|
1495
1543
|
for (var a = 0; a < 4; a++) {
|
|
1496
1544
|
tmp = random32();
|
|
1497
1545
|
oct +=
|
|
@@ -1505,13 +1553,13 @@
|
|
|
1505
1553
|
hexValues[tmp >> 28 & 0xF];
|
|
1506
1554
|
}
|
|
1507
1555
|
var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
|
|
1508
|
-
return oct
|
|
1556
|
+
return oct[_DYN_SUBSTR ](0, 8) + oct[_DYN_SUBSTR ](9, 4) + "4" + oct[_DYN_SUBSTR ](13, 3) + clockSequenceHi + oct[_DYN_SUBSTR ](16, 3) + oct[_DYN_SUBSTR ](19, 12);
|
|
1509
1557
|
}
|
|
1510
1558
|
|
|
1511
1559
|
var INVALID_TRACE_ID = "00000000000000000000000000000000";
|
|
1512
1560
|
var INVALID_SPAN_ID = "0000000000000000";
|
|
1513
1561
|
function _isValid(value, len, invalidValue) {
|
|
1514
|
-
if (value && value
|
|
1562
|
+
if (value && value[_DYN_LENGTH$2 ] === len && value !== invalidValue) {
|
|
1515
1563
|
return !!value.match(/^[\da-f]*$/);
|
|
1516
1564
|
}
|
|
1517
1565
|
return false;
|
|
@@ -1534,12 +1582,12 @@
|
|
|
1534
1582
|
var _chainId = 0;
|
|
1535
1583
|
function _getNextProxyStart(proxy, core, startAt) {
|
|
1536
1584
|
while (proxy) {
|
|
1537
|
-
if (proxy
|
|
1585
|
+
if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
|
|
1538
1586
|
return proxy;
|
|
1539
1587
|
}
|
|
1540
|
-
proxy = proxy
|
|
1588
|
+
proxy = proxy[_DYN_GET_NEXT ]();
|
|
1541
1589
|
}
|
|
1542
|
-
return createTelemetryProxyChain([startAt], core
|
|
1590
|
+
return createTelemetryProxyChain([startAt], core[_DYN_CONFIG$1 ] || {}, core);
|
|
1543
1591
|
}
|
|
1544
1592
|
function _createInternalContext(telemetryChain, config, core, startAt) {
|
|
1545
1593
|
var _nextProxy = null;
|
|
@@ -1580,7 +1628,7 @@
|
|
|
1580
1628
|
args[_i - 2] = arguments[_i];
|
|
1581
1629
|
}
|
|
1582
1630
|
if (onComplete) {
|
|
1583
|
-
_onComplete
|
|
1631
|
+
_onComplete[_DYN_PUSH ]({
|
|
1584
1632
|
func: onComplete,
|
|
1585
1633
|
self: !isUndefined(that) ? that : context.ctx,
|
|
1586
1634
|
args: args
|
|
@@ -1589,16 +1637,16 @@
|
|
|
1589
1637
|
}
|
|
1590
1638
|
function _moveNext() {
|
|
1591
1639
|
var nextProxy = _nextProxy;
|
|
1592
|
-
_nextProxy = nextProxy ? nextProxy
|
|
1640
|
+
_nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT ]() : null;
|
|
1593
1641
|
if (!nextProxy) {
|
|
1594
1642
|
var onComplete = _onComplete;
|
|
1595
|
-
if (onComplete && onComplete
|
|
1643
|
+
if (onComplete && onComplete[_DYN_LENGTH$2 ] > 0) {
|
|
1596
1644
|
arrForEach(onComplete, function (completeDetails) {
|
|
1597
1645
|
try {
|
|
1598
|
-
completeDetails.func
|
|
1646
|
+
completeDetails.func[_DYN_CALL ](completeDetails.self, completeDetails.args);
|
|
1599
1647
|
}
|
|
1600
1648
|
catch (e) {
|
|
1601
|
-
_throwInternal(core
|
|
1649
|
+
_throwInternal(core[_DYN_LOGGER ], 2 , 73 , "Unexpected Exception during onComplete - " + dumpObj(e));
|
|
1602
1650
|
}
|
|
1603
1651
|
});
|
|
1604
1652
|
_onComplete = [];
|
|
@@ -1611,7 +1659,7 @@
|
|
|
1611
1659
|
if (mergeDefault === void 0) { mergeDefault = 0 ; }
|
|
1612
1660
|
var theConfig;
|
|
1613
1661
|
if (config) {
|
|
1614
|
-
var extConfig = config
|
|
1662
|
+
var extConfig = config[STR_EXTENSION_CONFIG ];
|
|
1615
1663
|
if (extConfig && identifier) {
|
|
1616
1664
|
theConfig = extConfig[identifier];
|
|
1617
1665
|
}
|
|
@@ -1652,7 +1700,7 @@
|
|
|
1652
1700
|
function _iterateChain(cb) {
|
|
1653
1701
|
var nextPlugin;
|
|
1654
1702
|
while (!!(nextPlugin = context._next())) {
|
|
1655
|
-
var plugin = nextPlugin
|
|
1703
|
+
var plugin = nextPlugin[_DYN_GET_PLUGIN ]();
|
|
1656
1704
|
if (plugin) {
|
|
1657
1705
|
cb(plugin);
|
|
1658
1706
|
}
|
|
@@ -1665,7 +1713,7 @@
|
|
|
1665
1713
|
var context = internalContext.ctx;
|
|
1666
1714
|
function _processNext(env) {
|
|
1667
1715
|
var nextPlugin = internalContext._next();
|
|
1668
|
-
nextPlugin && nextPlugin
|
|
1716
|
+
nextPlugin && nextPlugin[STR_PROCESS_TELEMETRY ](env, context);
|
|
1669
1717
|
return !nextPlugin;
|
|
1670
1718
|
}
|
|
1671
1719
|
function _createNew(plugins, startAt) {
|
|
@@ -1673,14 +1721,14 @@
|
|
|
1673
1721
|
if (isArray(plugins)) {
|
|
1674
1722
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
1675
1723
|
}
|
|
1676
|
-
return createProcessTelemetryContext(plugins || context
|
|
1724
|
+
return createProcessTelemetryContext(plugins || context[_DYN_GET_NEXT ](), config, core, startAt);
|
|
1677
1725
|
}
|
|
1678
|
-
context
|
|
1679
|
-
context
|
|
1726
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
1727
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
1680
1728
|
return context;
|
|
1681
1729
|
}
|
|
1682
1730
|
function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {
|
|
1683
|
-
var config = core
|
|
1731
|
+
var config = core[_DYN_CONFIG$1 ] || {};
|
|
1684
1732
|
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
1685
1733
|
var context = internalContext.ctx;
|
|
1686
1734
|
function _processNext(unloadState) {
|
|
@@ -1693,20 +1741,20 @@
|
|
|
1693
1741
|
if (isArray(plugins)) {
|
|
1694
1742
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
1695
1743
|
}
|
|
1696
|
-
return createProcessTelemetryUnloadContext(plugins || context
|
|
1744
|
+
return createProcessTelemetryUnloadContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
1697
1745
|
}
|
|
1698
|
-
context
|
|
1699
|
-
context
|
|
1746
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
1747
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
1700
1748
|
return context;
|
|
1701
1749
|
}
|
|
1702
1750
|
function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {
|
|
1703
|
-
var config = core
|
|
1751
|
+
var config = core[_DYN_CONFIG$1 ] || {};
|
|
1704
1752
|
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
1705
1753
|
var context = internalContext.ctx;
|
|
1706
1754
|
function _processNext(updateState) {
|
|
1707
1755
|
return context.iterate(function (plugin) {
|
|
1708
|
-
if (isFunction(plugin
|
|
1709
|
-
plugin
|
|
1756
|
+
if (isFunction(plugin[_DYN_UPDATE$1 ])) {
|
|
1757
|
+
plugin[_DYN_UPDATE$1 ](context, updateState);
|
|
1710
1758
|
}
|
|
1711
1759
|
});
|
|
1712
1760
|
}
|
|
@@ -1715,22 +1763,22 @@
|
|
|
1715
1763
|
if (isArray(plugins)) {
|
|
1716
1764
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
1717
1765
|
}
|
|
1718
|
-
return createProcessTelemetryUpdateContext(plugins || context
|
|
1766
|
+
return createProcessTelemetryUpdateContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
1719
1767
|
}
|
|
1720
|
-
context
|
|
1721
|
-
context
|
|
1768
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
1769
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
1722
1770
|
return context;
|
|
1723
1771
|
}
|
|
1724
1772
|
function createTelemetryProxyChain(plugins, config, core, startAt) {
|
|
1725
1773
|
var firstProxy = null;
|
|
1726
1774
|
var add = startAt ? false : true;
|
|
1727
|
-
if (isArray(plugins) && plugins
|
|
1775
|
+
if (isArray(plugins) && plugins[_DYN_LENGTH$2 ] > 0) {
|
|
1728
1776
|
var lastProxy_1 = null;
|
|
1729
1777
|
arrForEach(plugins, function (thePlugin) {
|
|
1730
1778
|
if (!add && startAt === thePlugin) {
|
|
1731
1779
|
add = true;
|
|
1732
1780
|
}
|
|
1733
|
-
if (add && thePlugin && isFunction(thePlugin
|
|
1781
|
+
if (add && thePlugin && isFunction(thePlugin[STR_PROCESS_TELEMETRY ])) {
|
|
1734
1782
|
var newProxy = createTelemetryPluginProxy(thePlugin, config, core);
|
|
1735
1783
|
if (!firstProxy) {
|
|
1736
1784
|
firstProxy = newProxy;
|
|
@@ -1749,11 +1797,11 @@
|
|
|
1749
1797
|
}
|
|
1750
1798
|
function createTelemetryPluginProxy(plugin, config, core) {
|
|
1751
1799
|
var nextProxy = null;
|
|
1752
|
-
var hasProcessTelemetry = isFunction(plugin
|
|
1753
|
-
var hasSetNext = isFunction(plugin
|
|
1800
|
+
var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY ]);
|
|
1801
|
+
var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN ]);
|
|
1754
1802
|
var chainId;
|
|
1755
1803
|
if (plugin) {
|
|
1756
|
-
chainId = plugin
|
|
1804
|
+
chainId = plugin[_DYN_IDENTIFIER ] + "-" + plugin[STR_PRIORITY ] + "-" + _chainId++;
|
|
1757
1805
|
}
|
|
1758
1806
|
else {
|
|
1759
1807
|
chainId = "Unknown-0-" + _chainId++;
|
|
@@ -1785,17 +1833,17 @@
|
|
|
1785
1833
|
}
|
|
1786
1834
|
function _processChain(itemCtx, processPluginFn, name, details, isAsync) {
|
|
1787
1835
|
var hasRun = false;
|
|
1788
|
-
var identifier = plugin ? plugin
|
|
1836
|
+
var identifier = plugin ? plugin[_DYN_IDENTIFIER ] : strTelemetryPluginChain;
|
|
1789
1837
|
var hasRunContext = itemCtx[strHasRunFlags];
|
|
1790
1838
|
if (!hasRunContext) {
|
|
1791
1839
|
hasRunContext = itemCtx[strHasRunFlags] = {};
|
|
1792
1840
|
}
|
|
1793
1841
|
itemCtx.setNext(nextProxy);
|
|
1794
1842
|
if (plugin) {
|
|
1795
|
-
doPerf(itemCtx[
|
|
1843
|
+
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
1796
1844
|
hasRunContext[chainId] = true;
|
|
1797
1845
|
try {
|
|
1798
|
-
var nextId = nextProxy ? nextProxy._id :
|
|
1846
|
+
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
1799
1847
|
if (nextId) {
|
|
1800
1848
|
hasRunContext[nextId] = false;
|
|
1801
1849
|
}
|
|
@@ -1807,7 +1855,7 @@
|
|
|
1807
1855
|
hasRun = true;
|
|
1808
1856
|
}
|
|
1809
1857
|
if (!nextProxy || !hasNextRun) {
|
|
1810
|
-
_throwInternal(itemCtx
|
|
1858
|
+
_throwInternal(itemCtx[_DYN_DIAG_LOG ](), 1 , 73 , "Plugin [" + identifier + "] failed during " + name + " - " + dumpObj(error) + ", run flags: " + dumpObj(hasRunContext));
|
|
1811
1859
|
}
|
|
1812
1860
|
}
|
|
1813
1861
|
}, details, isAsync);
|
|
@@ -1821,17 +1869,17 @@
|
|
|
1821
1869
|
return false;
|
|
1822
1870
|
}
|
|
1823
1871
|
var pluginState = _getPluginState(plugin);
|
|
1824
|
-
if (pluginState
|
|
1872
|
+
if (pluginState[_DYN_TEARDOWN ] || pluginState[STR_DISABLED]) {
|
|
1825
1873
|
return false;
|
|
1826
1874
|
}
|
|
1827
1875
|
if (hasSetNext) {
|
|
1828
|
-
plugin
|
|
1876
|
+
plugin[_DYN_SET_NEXT_PLUGIN ](nextProxy);
|
|
1829
1877
|
}
|
|
1830
|
-
plugin
|
|
1878
|
+
plugin[STR_PROCESS_TELEMETRY ](env, itemCtx);
|
|
1831
1879
|
return true;
|
|
1832
1880
|
}
|
|
1833
1881
|
if (!_processChain(itemCtx, _callProcessTelemetry, "processTelemetry", function () { return ({ item: env }); }, !(env.sync))) {
|
|
1834
|
-
itemCtx
|
|
1882
|
+
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
1835
1883
|
}
|
|
1836
1884
|
}
|
|
1837
1885
|
function _unloadPlugin(unloadCtx, unloadState) {
|
|
@@ -1839,20 +1887,20 @@
|
|
|
1839
1887
|
var hasRun = false;
|
|
1840
1888
|
if (plugin) {
|
|
1841
1889
|
var pluginState = _getPluginState(plugin);
|
|
1842
|
-
var pluginCore = plugin[
|
|
1843
|
-
if (plugin && (!pluginCore || pluginCore === unloadCtx
|
|
1844
|
-
pluginState[
|
|
1845
|
-
pluginState[
|
|
1846
|
-
pluginState[
|
|
1847
|
-
if (plugin[
|
|
1890
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
1891
|
+
if (plugin && (!pluginCore || pluginCore === unloadCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
1892
|
+
pluginState[STR_CORE ] = null;
|
|
1893
|
+
pluginState[_DYN_TEARDOWN ] = true;
|
|
1894
|
+
pluginState[_DYN_IS_INITIALIZED ] = false;
|
|
1895
|
+
if (plugin[_DYN_TEARDOWN ] && plugin[_DYN_TEARDOWN ](unloadCtx, unloadState) === true) {
|
|
1848
1896
|
hasRun = true;
|
|
1849
1897
|
}
|
|
1850
1898
|
}
|
|
1851
1899
|
}
|
|
1852
1900
|
return hasRun;
|
|
1853
1901
|
}
|
|
1854
|
-
if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState
|
|
1855
|
-
unloadCtx
|
|
1902
|
+
if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState[_DYN_IS_ASYNC ])) {
|
|
1903
|
+
unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
1856
1904
|
}
|
|
1857
1905
|
}
|
|
1858
1906
|
function _updatePlugin(updateCtx, updateState) {
|
|
@@ -1860,9 +1908,9 @@
|
|
|
1860
1908
|
var hasRun = false;
|
|
1861
1909
|
if (plugin) {
|
|
1862
1910
|
var pluginState = _getPluginState(plugin);
|
|
1863
|
-
var pluginCore = plugin[
|
|
1864
|
-
if (plugin && (!pluginCore || pluginCore === updateCtx
|
|
1865
|
-
if (plugin[
|
|
1911
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
1912
|
+
if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
1913
|
+
if (plugin[_DYN_UPDATE$1 ] && plugin[_DYN_UPDATE$1 ](updateCtx, updateState) === true) {
|
|
1866
1914
|
hasRun = true;
|
|
1867
1915
|
}
|
|
1868
1916
|
}
|
|
@@ -1870,19 +1918,17 @@
|
|
|
1870
1918
|
return hasRun;
|
|
1871
1919
|
}
|
|
1872
1920
|
if (!_processChain(updateCtx, _callUpdate, "update", function () { }, false)) {
|
|
1873
|
-
updateCtx
|
|
1921
|
+
updateCtx[_DYN_PROCESS_NEXT ](updateState);
|
|
1874
1922
|
}
|
|
1875
1923
|
}
|
|
1876
1924
|
return objFreeze(proxyChain);
|
|
1877
1925
|
}
|
|
1878
1926
|
|
|
1879
|
-
var strExtensionConfig = "extensionConfig";
|
|
1880
|
-
|
|
1881
1927
|
function createUnloadHandlerContainer() {
|
|
1882
1928
|
var handlers = [];
|
|
1883
1929
|
function _addHandler(handler) {
|
|
1884
1930
|
if (handler) {
|
|
1885
|
-
handlers
|
|
1931
|
+
handlers[_DYN_PUSH ](handler);
|
|
1886
1932
|
}
|
|
1887
1933
|
}
|
|
1888
1934
|
function _runHandlers(unloadCtx, unloadState) {
|
|
@@ -1891,7 +1937,7 @@
|
|
|
1891
1937
|
handler(unloadCtx, unloadState);
|
|
1892
1938
|
}
|
|
1893
1939
|
catch (e) {
|
|
1894
|
-
_throwInternal(unloadCtx
|
|
1940
|
+
_throwInternal(unloadCtx[_DYN_DIAG_LOG ](), 2 , 73 , "Unexpected error calling unload handler - " + dumpObj(e));
|
|
1895
1941
|
}
|
|
1896
1942
|
});
|
|
1897
1943
|
handlers = [];
|
|
@@ -1913,37 +1959,40 @@
|
|
|
1913
1959
|
var _hooks;
|
|
1914
1960
|
_initDefaults();
|
|
1915
1961
|
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
1916
|
-
_self
|
|
1962
|
+
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
1917
1963
|
_setDefaults(config, core, pluginChain);
|
|
1918
1964
|
_isinitialized = true;
|
|
1919
1965
|
};
|
|
1920
|
-
_self
|
|
1921
|
-
var
|
|
1922
|
-
|
|
1966
|
+
_self[_DYN_TEARDOWN ] = function (unloadCtx, unloadState) {
|
|
1967
|
+
var _a;
|
|
1968
|
+
var core = _self[STR_CORE ];
|
|
1969
|
+
if (!core || (unloadCtx && core !== unloadCtx[STR_CORE ]())) {
|
|
1923
1970
|
return;
|
|
1924
1971
|
}
|
|
1925
1972
|
var result;
|
|
1926
1973
|
var unloadDone = false;
|
|
1927
1974
|
var theUnloadCtx = unloadCtx || createProcessTelemetryUnloadContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);
|
|
1928
|
-
var theUnloadState = unloadState || {
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1975
|
+
var theUnloadState = unloadState || (_a = {
|
|
1976
|
+
reason: 0
|
|
1977
|
+
},
|
|
1978
|
+
_a[_DYN_IS_ASYNC ] = false,
|
|
1979
|
+
_a);
|
|
1932
1980
|
function _unloadCallback() {
|
|
1933
1981
|
if (!unloadDone) {
|
|
1934
1982
|
unloadDone = true;
|
|
1935
1983
|
_unloadHandlerContainer.run(theUnloadCtx, unloadState);
|
|
1936
|
-
|
|
1984
|
+
var oldHooks = _hooks;
|
|
1985
|
+
_hooks = [];
|
|
1986
|
+
arrForEach(oldHooks, function (fn) {
|
|
1937
1987
|
fn.rm();
|
|
1938
1988
|
});
|
|
1939
|
-
_hooks = [];
|
|
1940
1989
|
if (result === true) {
|
|
1941
|
-
theUnloadCtx
|
|
1990
|
+
theUnloadCtx[_DYN_PROCESS_NEXT ](theUnloadState);
|
|
1942
1991
|
}
|
|
1943
1992
|
_initDefaults();
|
|
1944
1993
|
}
|
|
1945
1994
|
}
|
|
1946
|
-
if (!_self[
|
|
1995
|
+
if (!_self[_DYN__DO_TEARDOWN ] || _self[_DYN__DO_TEARDOWN ](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {
|
|
1947
1996
|
_unloadCallback();
|
|
1948
1997
|
}
|
|
1949
1998
|
else {
|
|
@@ -1951,9 +2000,9 @@
|
|
|
1951
2000
|
}
|
|
1952
2001
|
return result;
|
|
1953
2002
|
};
|
|
1954
|
-
_self
|
|
1955
|
-
var core = _self
|
|
1956
|
-
if (!core || (updateCtx && core !== updateCtx
|
|
2003
|
+
_self[_DYN_UPDATE$1 ] = function (updateCtx, updateState) {
|
|
2004
|
+
var core = _self[STR_CORE ];
|
|
2005
|
+
if (!core || (updateCtx && core !== updateCtx[STR_CORE ]())) {
|
|
1957
2006
|
return;
|
|
1958
2007
|
}
|
|
1959
2008
|
var result;
|
|
@@ -1965,7 +2014,7 @@
|
|
|
1965
2014
|
function _updateCallback() {
|
|
1966
2015
|
if (!updateDone) {
|
|
1967
2016
|
updateDone = true;
|
|
1968
|
-
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx
|
|
2017
|
+
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx[_DYN_GET_NEXT ]());
|
|
1969
2018
|
}
|
|
1970
2019
|
}
|
|
1971
2020
|
if (!_self._doUpdate || _self._doUpdate(theUpdateCtx, theUpdateState, _updateCallback) !== true) {
|
|
@@ -1982,30 +2031,30 @@
|
|
|
1982
2031
|
_hooks = _hooks.concat(hooks);
|
|
1983
2032
|
}
|
|
1984
2033
|
else {
|
|
1985
|
-
_hooks
|
|
2034
|
+
_hooks[_DYN_PUSH ](hooks);
|
|
1986
2035
|
}
|
|
1987
2036
|
}
|
|
1988
2037
|
};
|
|
1989
2038
|
proxyFunctionAs(_self, "_addUnloadCb", function () { return _unloadHandlerContainer; }, "add");
|
|
1990
2039
|
});
|
|
1991
|
-
_self
|
|
1992
|
-
return _getTelCtx(itemCtx)
|
|
2040
|
+
_self[_DYN_DIAG_LOG ] = function (itemCtx) {
|
|
2041
|
+
return _getTelCtx(itemCtx)[_DYN_DIAG_LOG ]();
|
|
1993
2042
|
};
|
|
1994
|
-
_self[
|
|
2043
|
+
_self[_DYN_IS_INITIALIZED ] = function () {
|
|
1995
2044
|
return _isinitialized;
|
|
1996
2045
|
};
|
|
1997
2046
|
_self.setInitialized = function (isInitialized) {
|
|
1998
2047
|
_isinitialized = isInitialized;
|
|
1999
2048
|
};
|
|
2000
|
-
_self[
|
|
2049
|
+
_self[_DYN_SET_NEXT_PLUGIN ] = function (next) {
|
|
2001
2050
|
_nextPlugin = next;
|
|
2002
2051
|
};
|
|
2003
|
-
_self
|
|
2052
|
+
_self[_DYN_PROCESS_NEXT ] = function (env, itemCtx) {
|
|
2004
2053
|
if (itemCtx) {
|
|
2005
|
-
itemCtx
|
|
2054
|
+
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
2006
2055
|
}
|
|
2007
|
-
else if (_nextPlugin && isFunction(_nextPlugin
|
|
2008
|
-
_nextPlugin
|
|
2056
|
+
else if (_nextPlugin && isFunction(_nextPlugin[STR_PROCESS_TELEMETRY ])) {
|
|
2057
|
+
_nextPlugin[STR_PROCESS_TELEMETRY ](env, null);
|
|
2009
2058
|
}
|
|
2010
2059
|
};
|
|
2011
2060
|
_self._getTelCtx = _getTelCtx;
|
|
@@ -2013,33 +2062,33 @@
|
|
|
2013
2062
|
if (currentCtx === void 0) { currentCtx = null; }
|
|
2014
2063
|
var itemCtx = currentCtx;
|
|
2015
2064
|
if (!itemCtx) {
|
|
2016
|
-
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self
|
|
2065
|
+
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self[STR_CORE ]);
|
|
2017
2066
|
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
2018
|
-
itemCtx = rootCtx
|
|
2067
|
+
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin[strGetPlugin]);
|
|
2019
2068
|
}
|
|
2020
2069
|
else {
|
|
2021
|
-
itemCtx = rootCtx
|
|
2070
|
+
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin);
|
|
2022
2071
|
}
|
|
2023
2072
|
}
|
|
2024
2073
|
return itemCtx;
|
|
2025
2074
|
}
|
|
2026
2075
|
function _setDefaults(config, core, pluginChain) {
|
|
2027
2076
|
if (config) {
|
|
2028
|
-
setValue(config,
|
|
2077
|
+
setValue(config, STR_EXTENSION_CONFIG, [], null, isNullOrUndefined);
|
|
2029
2078
|
}
|
|
2030
2079
|
if (!pluginChain && core) {
|
|
2031
|
-
pluginChain = core
|
|
2080
|
+
pluginChain = core[_DYN_GET_PROCESS_TEL_CONT0 ]()[_DYN_GET_NEXT ]();
|
|
2032
2081
|
}
|
|
2033
2082
|
var nextPlugin = _nextPlugin;
|
|
2034
2083
|
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
2035
2084
|
nextPlugin = _nextPlugin[strGetPlugin]();
|
|
2036
2085
|
}
|
|
2037
|
-
_self
|
|
2086
|
+
_self[STR_CORE ] = core;
|
|
2038
2087
|
_rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
|
|
2039
2088
|
}
|
|
2040
2089
|
function _initDefaults() {
|
|
2041
2090
|
_isinitialized = false;
|
|
2042
|
-
_self
|
|
2091
|
+
_self[STR_CORE ] = null;
|
|
2043
2092
|
_rootCtx = null;
|
|
2044
2093
|
_nextPlugin = null;
|
|
2045
2094
|
_hooks = [];
|
|
@@ -2050,96 +2099,21 @@
|
|
|
2050
2099
|
return BaseTelemetryPlugin;
|
|
2051
2100
|
}());
|
|
2052
2101
|
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
var nameTrunc;
|
|
2069
|
-
if (name) {
|
|
2070
|
-
name = strTrim(name.toString());
|
|
2071
|
-
if (name.length > 150 ) {
|
|
2072
|
-
nameTrunc = name.substring(0, 150 );
|
|
2073
|
-
_throwInternal(logger, 2 , 57 , "name is too long. It has been truncated to " + 150 + " characters.", { name: name }, true);
|
|
2074
|
-
}
|
|
2075
|
-
}
|
|
2076
|
-
return nameTrunc || name;
|
|
2077
|
-
}
|
|
2078
|
-
function dataSanitizeString(logger, value, maxLength) {
|
|
2079
|
-
if (maxLength === void 0) { maxLength = 1024 ; }
|
|
2080
|
-
var valueTrunc;
|
|
2081
|
-
if (value) {
|
|
2082
|
-
maxLength = maxLength ? maxLength : 1024 ;
|
|
2083
|
-
value = strTrim(value);
|
|
2084
|
-
if (value.toString().length > maxLength) {
|
|
2085
|
-
valueTrunc = value.toString().substring(0, maxLength);
|
|
2086
|
-
_throwInternal(logger, 2 , 61 , "string value is too long. It has been truncated to " + maxLength + " characters.", { value: value }, true);
|
|
2087
|
-
}
|
|
2088
|
-
}
|
|
2089
|
-
return valueTrunc || value;
|
|
2090
|
-
}
|
|
2091
|
-
function dataSanitizeUrl(logger, url) {
|
|
2092
|
-
return dataSanitizeInput(logger, url, 2048 , 66 );
|
|
2093
|
-
}
|
|
2094
|
-
function dataSanitizeProperties(logger, properties) {
|
|
2095
|
-
if (properties) {
|
|
2096
|
-
var tempProps_1 = {};
|
|
2097
|
-
objForEachKey(properties, function (prop, value) {
|
|
2098
|
-
if (isObject(value) && hasJSON()) {
|
|
2099
|
-
try {
|
|
2100
|
-
value = getJSON().stringify(value);
|
|
2101
|
-
}
|
|
2102
|
-
catch (e) {
|
|
2103
|
-
_throwInternal(logger, 2 , 49 , "custom property is not valid", { exception: e }, true);
|
|
2104
|
-
}
|
|
2105
|
-
}
|
|
2106
|
-
value = dataSanitizeString(logger, value, 8192 );
|
|
2107
|
-
prop = dataSanitizeKeyAndAddUniqueness(logger, prop, tempProps_1);
|
|
2108
|
-
tempProps_1[prop] = value;
|
|
2109
|
-
});
|
|
2110
|
-
properties = tempProps_1;
|
|
2111
|
-
}
|
|
2112
|
-
return properties;
|
|
2113
|
-
}
|
|
2114
|
-
function dataSanitizeMeasurements(logger, measurements) {
|
|
2115
|
-
if (measurements) {
|
|
2116
|
-
var tempMeasurements_1 = {};
|
|
2117
|
-
objForEachKey(measurements, function (measure, value) {
|
|
2118
|
-
measure = dataSanitizeKeyAndAddUniqueness(logger, measure, tempMeasurements_1);
|
|
2119
|
-
tempMeasurements_1[measure] = value;
|
|
2120
|
-
});
|
|
2121
|
-
measurements = tempMeasurements_1;
|
|
2122
|
-
}
|
|
2123
|
-
return measurements;
|
|
2124
|
-
}
|
|
2125
|
-
function dataSanitizeId(logger, id) {
|
|
2126
|
-
return id ? dataSanitizeInput(logger, id, 128 , 69 ).toString() : id;
|
|
2127
|
-
}
|
|
2128
|
-
function dataSanitizeInput(logger, input, maxLength, _msgId) {
|
|
2129
|
-
var inputTrunc;
|
|
2130
|
-
if (input) {
|
|
2131
|
-
input = strTrim(input);
|
|
2132
|
-
if (input.length > maxLength) {
|
|
2133
|
-
inputTrunc = input.substring(0, maxLength);
|
|
2134
|
-
_throwInternal(logger, 2 , _msgId, "input is too long, it has been truncated to " + maxLength + " characters.", { data: input }, true);
|
|
2135
|
-
}
|
|
2136
|
-
}
|
|
2137
|
-
return inputTrunc || input;
|
|
2138
|
-
}
|
|
2139
|
-
function dsPadNumber(num) {
|
|
2140
|
-
var s = "00" + num;
|
|
2141
|
-
return s.substr(s.length - 3);
|
|
2142
|
-
}
|
|
2102
|
+
var strNotSpecified = "not_specified";
|
|
2103
|
+
|
|
2104
|
+
var _DYN_LENGTH$1 = "length";
|
|
2105
|
+
var _DYN_TO_STRING = "toString";
|
|
2106
|
+
var _DYN_REMOVE_ITEM = "removeItem";
|
|
2107
|
+
var _DYN_NAME = "name";
|
|
2108
|
+
var _DYN_PROPERTIES = "properties";
|
|
2109
|
+
var _DYN_MEASUREMENTS = "measurements";
|
|
2110
|
+
var _DYN_STRINGIFY = "stringify";
|
|
2111
|
+
var _DYN_DURATION = "duration";
|
|
2112
|
+
var _DYN_SUBSTRING = "substring";
|
|
2113
|
+
var _DYN_SANITIZE_KEY_AND_ADD2 = "sanitizeKeyAndAddUniqueness";
|
|
2114
|
+
var _DYN_SANITIZE_EXCEPTION = "sanitizeException";
|
|
2115
|
+
var _DYN_SANITIZE_PROPERTIES = "sanitizeProperties";
|
|
2116
|
+
var _DYN_SANITIZE_MEASUREMENT3 = "sanitizeMeasurements";
|
|
2143
2117
|
|
|
2144
2118
|
var strEmpty = "";
|
|
2145
2119
|
function msToTimeSpan(totalms) {
|
|
@@ -2152,15 +2126,13 @@
|
|
|
2152
2126
|
var min = strEmpty + Math.floor(totalms / (1000 * 60)) % 60;
|
|
2153
2127
|
var hour = strEmpty + Math.floor(totalms / (1000 * 60 * 60)) % 24;
|
|
2154
2128
|
var days = Math.floor(totalms / (1000 * 60 * 60 * 24));
|
|
2155
|
-
ms = ms
|
|
2156
|
-
sec = sec
|
|
2157
|
-
min = min
|
|
2158
|
-
hour = hour
|
|
2129
|
+
ms = ms[_DYN_LENGTH$1 ] === 1 ? "00" + ms : ms[_DYN_LENGTH$1 ] === 2 ? "0" + ms : ms;
|
|
2130
|
+
sec = sec[_DYN_LENGTH$1 ] < 2 ? "0" + sec : sec;
|
|
2131
|
+
min = min[_DYN_LENGTH$1 ] < 2 ? "0" + min : min;
|
|
2132
|
+
hour = hour[_DYN_LENGTH$1 ] < 2 ? "0" + hour : hour;
|
|
2159
2133
|
return (days > 0 ? days + "." : strEmpty) + hour + ":" + min + ":" + sec + "." + ms;
|
|
2160
2134
|
}
|
|
2161
2135
|
|
|
2162
|
-
var strNotSpecified = "not_specified";
|
|
2163
|
-
|
|
2164
2136
|
var StorageType = createEnumStyle({
|
|
2165
2137
|
LocalStorage: 0 ,
|
|
2166
2138
|
SessionStorage: 1
|
|
@@ -2183,11 +2155,11 @@
|
|
|
2183
2155
|
if (isNullOrUndefined(getGlobal())) {
|
|
2184
2156
|
return null;
|
|
2185
2157
|
}
|
|
2186
|
-
var uid = (new Date)
|
|
2158
|
+
var uid = (new Date)[_DYN_TO_STRING ]();
|
|
2187
2159
|
var storage = getGlobalInst(storageType === StorageType.LocalStorage ? "localStorage" : "sessionStorage");
|
|
2188
2160
|
storage.setItem(uid, uid);
|
|
2189
2161
|
var fail = storage.getItem(uid) !== uid;
|
|
2190
|
-
storage
|
|
2162
|
+
storage[_DYN_REMOVE_ITEM ](uid);
|
|
2191
2163
|
if (!fail) {
|
|
2192
2164
|
return storage;
|
|
2193
2165
|
}
|
|
@@ -2233,7 +2205,7 @@
|
|
|
2233
2205
|
var storage = _getLocalStorageObject();
|
|
2234
2206
|
if (storage !== null) {
|
|
2235
2207
|
try {
|
|
2236
|
-
storage
|
|
2208
|
+
storage[_DYN_REMOVE_ITEM ](name);
|
|
2237
2209
|
return true;
|
|
2238
2210
|
}
|
|
2239
2211
|
catch (e) {
|
|
@@ -2244,15 +2216,150 @@
|
|
|
2244
2216
|
return false;
|
|
2245
2217
|
}
|
|
2246
2218
|
|
|
2219
|
+
var _a;
|
|
2220
|
+
function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
|
|
2221
|
+
var origLength = key[_DYN_LENGTH$1 ];
|
|
2222
|
+
var field = dataSanitizeKey(logger, key);
|
|
2223
|
+
if (field[_DYN_LENGTH$1 ] !== origLength) {
|
|
2224
|
+
var i = 0;
|
|
2225
|
+
var uniqueField = field;
|
|
2226
|
+
while (map[uniqueField] !== undefined) {
|
|
2227
|
+
i++;
|
|
2228
|
+
uniqueField = field[_DYN_SUBSTRING ](0, 150 - 3) + dsPadNumber(i);
|
|
2229
|
+
}
|
|
2230
|
+
field = uniqueField;
|
|
2231
|
+
}
|
|
2232
|
+
return field;
|
|
2233
|
+
}
|
|
2234
|
+
function dataSanitizeKey(logger, name) {
|
|
2235
|
+
var nameTrunc;
|
|
2236
|
+
if (name) {
|
|
2237
|
+
name = strTrim(name[_DYN_TO_STRING ]());
|
|
2238
|
+
if (name[_DYN_LENGTH$1 ] > 150 ) {
|
|
2239
|
+
nameTrunc = name[_DYN_SUBSTRING ](0, 150 );
|
|
2240
|
+
_throwInternal(logger, 2 , 57 , "name is too long. It has been truncated to " + 150 + " characters.", { name: name }, true);
|
|
2241
|
+
}
|
|
2242
|
+
}
|
|
2243
|
+
return nameTrunc || name;
|
|
2244
|
+
}
|
|
2245
|
+
function dataSanitizeString(logger, value, maxLength) {
|
|
2246
|
+
if (maxLength === void 0) { maxLength = 1024 ; }
|
|
2247
|
+
var valueTrunc;
|
|
2248
|
+
if (value) {
|
|
2249
|
+
maxLength = maxLength ? maxLength : 1024 ;
|
|
2250
|
+
value = strTrim(value);
|
|
2251
|
+
if (value.toString()[_DYN_LENGTH$1 ] > maxLength) {
|
|
2252
|
+
valueTrunc = value[_DYN_TO_STRING ]()[_DYN_SUBSTRING ](0, maxLength);
|
|
2253
|
+
_throwInternal(logger, 2 , 61 , "string value is too long. It has been truncated to " + maxLength + " characters.", { value: value }, true);
|
|
2254
|
+
}
|
|
2255
|
+
}
|
|
2256
|
+
return valueTrunc || value;
|
|
2257
|
+
}
|
|
2258
|
+
function dataSanitizeUrl(logger, url) {
|
|
2259
|
+
return dataSanitizeInput(logger, url, 2048 , 66 );
|
|
2260
|
+
}
|
|
2261
|
+
function dataSanitizeMessage(logger, message) {
|
|
2262
|
+
var messageTrunc;
|
|
2263
|
+
if (message) {
|
|
2264
|
+
if (message[_DYN_LENGTH$1 ] > 32768 ) {
|
|
2265
|
+
messageTrunc = message[_DYN_SUBSTRING ](0, 32768 );
|
|
2266
|
+
_throwInternal(logger, 2 , 56 , "message is too long, it has been truncated to " + 32768 + " characters.", { message: message }, true);
|
|
2267
|
+
}
|
|
2268
|
+
}
|
|
2269
|
+
return messageTrunc || message;
|
|
2270
|
+
}
|
|
2271
|
+
function dataSanitizeException(logger, exception) {
|
|
2272
|
+
var exceptionTrunc;
|
|
2273
|
+
if (exception) {
|
|
2274
|
+
var value = "" + exception;
|
|
2275
|
+
if (value[_DYN_LENGTH$1 ] > 32768 ) {
|
|
2276
|
+
exceptionTrunc = value[_DYN_SUBSTRING ](0, 32768 );
|
|
2277
|
+
_throwInternal(logger, 2 , 52 , "exception is too long, it has been truncated to " + 32768 + " characters.", { exception: exception }, true);
|
|
2278
|
+
}
|
|
2279
|
+
}
|
|
2280
|
+
return exceptionTrunc || exception;
|
|
2281
|
+
}
|
|
2282
|
+
function dataSanitizeProperties(logger, properties) {
|
|
2283
|
+
if (properties) {
|
|
2284
|
+
var tempProps_1 = {};
|
|
2285
|
+
objForEachKey(properties, function (prop, value) {
|
|
2286
|
+
if (isObject(value) && hasJSON()) {
|
|
2287
|
+
try {
|
|
2288
|
+
value = getJSON()[_DYN_STRINGIFY ](value);
|
|
2289
|
+
}
|
|
2290
|
+
catch (e) {
|
|
2291
|
+
_throwInternal(logger, 2 , 49 , "custom property is not valid", { exception: e }, true);
|
|
2292
|
+
}
|
|
2293
|
+
}
|
|
2294
|
+
value = dataSanitizeString(logger, value, 8192 );
|
|
2295
|
+
prop = dataSanitizeKeyAndAddUniqueness(logger, prop, tempProps_1);
|
|
2296
|
+
tempProps_1[prop] = value;
|
|
2297
|
+
});
|
|
2298
|
+
properties = tempProps_1;
|
|
2299
|
+
}
|
|
2300
|
+
return properties;
|
|
2301
|
+
}
|
|
2302
|
+
function dataSanitizeMeasurements(logger, measurements) {
|
|
2303
|
+
if (measurements) {
|
|
2304
|
+
var tempMeasurements_1 = {};
|
|
2305
|
+
objForEachKey(measurements, function (measure, value) {
|
|
2306
|
+
measure = dataSanitizeKeyAndAddUniqueness(logger, measure, tempMeasurements_1);
|
|
2307
|
+
tempMeasurements_1[measure] = value;
|
|
2308
|
+
});
|
|
2309
|
+
measurements = tempMeasurements_1;
|
|
2310
|
+
}
|
|
2311
|
+
return measurements;
|
|
2312
|
+
}
|
|
2313
|
+
function dataSanitizeId(logger, id) {
|
|
2314
|
+
return id ? dataSanitizeInput(logger, id, 128 , 69 )[_DYN_TO_STRING ]() : id;
|
|
2315
|
+
}
|
|
2316
|
+
function dataSanitizeInput(logger, input, maxLength, _msgId) {
|
|
2317
|
+
var inputTrunc;
|
|
2318
|
+
if (input) {
|
|
2319
|
+
input = strTrim(input);
|
|
2320
|
+
if (input[_DYN_LENGTH$1 ] > maxLength) {
|
|
2321
|
+
inputTrunc = input[_DYN_SUBSTRING ](0, maxLength);
|
|
2322
|
+
_throwInternal(logger, 2 , _msgId, "input is too long, it has been truncated to " + maxLength + " characters.", { data: input }, true);
|
|
2323
|
+
}
|
|
2324
|
+
}
|
|
2325
|
+
return inputTrunc || input;
|
|
2326
|
+
}
|
|
2327
|
+
function dsPadNumber(num) {
|
|
2328
|
+
var s = "00" + num;
|
|
2329
|
+
return s.substr(s[_DYN_LENGTH$1 ] - 3);
|
|
2330
|
+
}
|
|
2331
|
+
(_a = {
|
|
2332
|
+
MAX_NAME_LENGTH: 150 ,
|
|
2333
|
+
MAX_ID_LENGTH: 128 ,
|
|
2334
|
+
MAX_PROPERTY_LENGTH: 8192 ,
|
|
2335
|
+
MAX_STRING_LENGTH: 1024 ,
|
|
2336
|
+
MAX_URL_LENGTH: 2048 ,
|
|
2337
|
+
MAX_MESSAGE_LENGTH: 32768 ,
|
|
2338
|
+
MAX_EXCEPTION_LENGTH: 32768
|
|
2339
|
+
},
|
|
2340
|
+
_a[_DYN_SANITIZE_KEY_AND_ADD2 ] = dataSanitizeKeyAndAddUniqueness,
|
|
2341
|
+
_a.sanitizeKey = dataSanitizeKey,
|
|
2342
|
+
_a.sanitizeString = dataSanitizeString,
|
|
2343
|
+
_a.sanitizeUrl = dataSanitizeUrl,
|
|
2344
|
+
_a.sanitizeMessage = dataSanitizeMessage,
|
|
2345
|
+
_a[_DYN_SANITIZE_EXCEPTION ] = dataSanitizeException,
|
|
2346
|
+
_a[_DYN_SANITIZE_PROPERTIES ] = dataSanitizeProperties,
|
|
2347
|
+
_a[_DYN_SANITIZE_MEASUREMENT3 ] = dataSanitizeMeasurements,
|
|
2348
|
+
_a.sanitizeId = dataSanitizeId,
|
|
2349
|
+
_a.sanitizeInput = dataSanitizeInput,
|
|
2350
|
+
_a.padNumber = dsPadNumber,
|
|
2351
|
+
_a.trim = strTrim,
|
|
2352
|
+
_a);
|
|
2353
|
+
|
|
2247
2354
|
function createDistributedTraceContextFromTrace(telemetryTrace, parentCtx) {
|
|
2248
2355
|
var trace = telemetryTrace || {};
|
|
2249
2356
|
return {
|
|
2250
2357
|
getName: function () {
|
|
2251
|
-
return trace
|
|
2358
|
+
return trace[_DYN_NAME ];
|
|
2252
2359
|
},
|
|
2253
2360
|
setName: function (newValue) {
|
|
2254
2361
|
parentCtx && parentCtx.setName(newValue);
|
|
2255
|
-
trace
|
|
2362
|
+
trace[_DYN_NAME ] = newValue;
|
|
2256
2363
|
},
|
|
2257
2364
|
getTraceId: function () {
|
|
2258
2365
|
return trace.traceID;
|
|
@@ -2297,12 +2404,12 @@
|
|
|
2297
2404
|
_self.ver = 2;
|
|
2298
2405
|
_self.id = dataSanitizeId(logger, id);
|
|
2299
2406
|
_self.url = dataSanitizeUrl(logger, url);
|
|
2300
|
-
_self
|
|
2407
|
+
_self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
2301
2408
|
if (!isNaN(durationMs)) {
|
|
2302
|
-
_self
|
|
2409
|
+
_self[_DYN_DURATION ] = msToTimeSpan(durationMs);
|
|
2303
2410
|
}
|
|
2304
|
-
_self
|
|
2305
|
-
_self
|
|
2411
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
2412
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
2306
2413
|
}
|
|
2307
2414
|
PageView.envelopeType = "Microsoft.ApplicationInsights.{0}.Pageview";
|
|
2308
2415
|
PageView.dataType = "PageviewData";
|
|
@@ -2404,6 +2511,69 @@
|
|
|
2404
2511
|
var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
|
|
2405
2512
|
var BreezeChannelIdentifier = "AppInsightsChannelPlugin";
|
|
2406
2513
|
|
|
2514
|
+
var Application = /** @class */ (function () {
|
|
2515
|
+
function Application() {
|
|
2516
|
+
}
|
|
2517
|
+
return Application;
|
|
2518
|
+
}());
|
|
2519
|
+
|
|
2520
|
+
var Device = /** @class */ (function () {
|
|
2521
|
+
function Device() {
|
|
2522
|
+
this.id = "browser";
|
|
2523
|
+
this.deviceClass = "Browser";
|
|
2524
|
+
}
|
|
2525
|
+
return Device;
|
|
2526
|
+
}());
|
|
2527
|
+
|
|
2528
|
+
var _DYN_SESSION_MANAGER = "sessionManager";
|
|
2529
|
+
var _DYN_UPDATE = "update";
|
|
2530
|
+
var _DYN_IS_USER_COOKIE_SET = "isUserCookieSet";
|
|
2531
|
+
var _DYN_IS_NEW_USER = "isNewUser";
|
|
2532
|
+
var _DYN_GET_TRACE_CTX = "getTraceCtx";
|
|
2533
|
+
var _DYN_TELEMETRY_TRACE = "telemetryTrace";
|
|
2534
|
+
var _DYN_APPLY_SESSION_CONTEX0 = "applySessionContext";
|
|
2535
|
+
var _DYN_APPLY_APPLICATION_CO1 = "applyApplicationContext";
|
|
2536
|
+
var _DYN_APPLY_DEVICE_CONTEXT = "applyDeviceContext";
|
|
2537
|
+
var _DYN_APPLY_OPERATION_CONT2 = "applyOperationContext";
|
|
2538
|
+
var _DYN_APPLY_USER_CONTEXT = "applyUserContext";
|
|
2539
|
+
var _DYN_APPLY_OPERATING_SYST3 = "applyOperatingSystemContxt";
|
|
2540
|
+
var _DYN_APPLY_LOCATION_CONTE4 = "applyLocationContext";
|
|
2541
|
+
var _DYN_APPLY_INTERNAL_CONTE5 = "applyInternalContext";
|
|
2542
|
+
var _DYN_ACCOUNT_ID = "accountId";
|
|
2543
|
+
var _DYN_SDK_EXTENSION = "sdkExtension";
|
|
2544
|
+
var _DYN_GET_SESSION_ID = "getSessionId";
|
|
2545
|
+
var _DYN_NAME_PREFIX = "namePrefix";
|
|
2546
|
+
var _DYN_SESSION_COOKIE_POSTF6 = "sessionCookiePostfix";
|
|
2547
|
+
var _DYN_USER_COOKIE_POSTFIX = "userCookiePostfix";
|
|
2548
|
+
var _DYN_ID_LENGTH = "idLength";
|
|
2549
|
+
var _DYN_GET_NEW_ID = "getNewId";
|
|
2550
|
+
var _DYN_LENGTH = "length";
|
|
2551
|
+
var _DYN_AUTOMATIC_SESSION = "automaticSession";
|
|
2552
|
+
var _DYN_AUTHENTICATED_ID = "authenticatedId";
|
|
2553
|
+
var _DYN_SESSION_EXPIRATION_M7 = "sessionExpirationMs";
|
|
2554
|
+
var _DYN_SESSION_RENEWAL_MS = "sessionRenewalMs";
|
|
2555
|
+
var _DYN_CONFIG = "config";
|
|
2556
|
+
var _DYN_ACQUISITION_DATE = "acquisitionDate";
|
|
2557
|
+
var _DYN_RENEWAL_DATE = "renewalDate";
|
|
2558
|
+
var _DYN_COOKIE_DOMAIN = "cookieDomain";
|
|
2559
|
+
var _DYN_JOIN = "join";
|
|
2560
|
+
var _DYN_COOKIE_SEPARATOR = "cookieSeparator";
|
|
2561
|
+
var _DYN_AUTH_USER_COOKIE_NAM8 = "authUserCookieName";
|
|
2562
|
+
|
|
2563
|
+
var Version = "2.8.5-nightly.2207-02";
|
|
2564
|
+
var Internal = /** @class */ (function () {
|
|
2565
|
+
function Internal(config) {
|
|
2566
|
+
this.sdkVersion = (config[_DYN_SDK_EXTENSION ] && config[_DYN_SDK_EXTENSION ]() ? config[_DYN_SDK_EXTENSION ]() + "_" : "") + "javascript:" + Version;
|
|
2567
|
+
}
|
|
2568
|
+
return Internal;
|
|
2569
|
+
}());
|
|
2570
|
+
|
|
2571
|
+
var Location = /** @class */ (function () {
|
|
2572
|
+
function Location() {
|
|
2573
|
+
}
|
|
2574
|
+
return Location;
|
|
2575
|
+
}());
|
|
2576
|
+
|
|
2407
2577
|
var cookieNameConst = "ai_session";
|
|
2408
2578
|
var Session = /** @class */ (function () {
|
|
2409
2579
|
function Session() {
|
|
@@ -2421,30 +2591,30 @@
|
|
|
2421
2591
|
if (!config) {
|
|
2422
2592
|
config = {};
|
|
2423
2593
|
}
|
|
2424
|
-
if (!isFunction(config
|
|
2425
|
-
config
|
|
2594
|
+
if (!isFunction(config[_DYN_SESSION_EXPIRATION_M7 ])) {
|
|
2595
|
+
config[_DYN_SESSION_EXPIRATION_M7 ] = function () { return _SessionManager.acquisitionSpan; };
|
|
2426
2596
|
}
|
|
2427
|
-
if (!isFunction(config
|
|
2428
|
-
config
|
|
2597
|
+
if (!isFunction(config[_DYN_SESSION_RENEWAL_MS ])) {
|
|
2598
|
+
config[_DYN_SESSION_RENEWAL_MS ] = function () { return _SessionManager.renewalSpan; };
|
|
2429
2599
|
}
|
|
2430
|
-
_self
|
|
2431
|
-
var sessionCookiePostfix = (_self.config
|
|
2432
|
-
_self.config
|
|
2433
|
-
((_self.config
|
|
2600
|
+
_self[_DYN_CONFIG ] = config;
|
|
2601
|
+
var sessionCookiePostfix = (_self.config[_DYN_SESSION_COOKIE_POSTF6 ] && _self[_DYN_CONFIG ][_DYN_SESSION_COOKIE_POSTF6 ]()) ?
|
|
2602
|
+
_self.config[_DYN_SESSION_COOKIE_POSTF6 ]() :
|
|
2603
|
+
((_self.config[_DYN_NAME_PREFIX ] && _self[_DYN_CONFIG ][_DYN_NAME_PREFIX ]()) ? _self[_DYN_CONFIG ][_DYN_NAME_PREFIX ]() : "");
|
|
2434
2604
|
_storageNamePrefix = function () { return cookieNameConst + sessionCookiePostfix; };
|
|
2435
|
-
_self
|
|
2436
|
-
_self
|
|
2605
|
+
_self[_DYN_AUTOMATIC_SESSION ] = new Session();
|
|
2606
|
+
_self[_DYN_UPDATE ] = function () {
|
|
2437
2607
|
var nowMs = dateNow();
|
|
2438
2608
|
var isExpired = false;
|
|
2439
|
-
var session = _self
|
|
2609
|
+
var session = _self[_DYN_AUTOMATIC_SESSION ];
|
|
2440
2610
|
if (!session.id) {
|
|
2441
2611
|
isExpired = !_initializeAutomaticSession(session);
|
|
2442
2612
|
}
|
|
2443
|
-
var sessionExpirationMs = _self.config
|
|
2613
|
+
var sessionExpirationMs = _self.config[_DYN_SESSION_EXPIRATION_M7 ]();
|
|
2444
2614
|
if (!isExpired && sessionExpirationMs > 0) {
|
|
2445
|
-
var sessionRenewalMs = _self.config
|
|
2446
|
-
var timeSinceAcqMs = nowMs - session
|
|
2447
|
-
var timeSinceRenewalMs = nowMs - session
|
|
2615
|
+
var sessionRenewalMs = _self.config[_DYN_SESSION_RENEWAL_MS ]();
|
|
2616
|
+
var timeSinceAcqMs = nowMs - session[_DYN_ACQUISITION_DATE ];
|
|
2617
|
+
var timeSinceRenewalMs = nowMs - session[_DYN_RENEWAL_DATE ];
|
|
2448
2618
|
isExpired = timeSinceAcqMs < 0 || timeSinceRenewalMs < 0;
|
|
2449
2619
|
isExpired = isExpired || timeSinceAcqMs > sessionExpirationMs;
|
|
2450
2620
|
isExpired = isExpired || timeSinceRenewalMs > sessionRenewalMs;
|
|
@@ -2459,8 +2629,8 @@
|
|
|
2459
2629
|
}
|
|
2460
2630
|
};
|
|
2461
2631
|
_self.backup = function () {
|
|
2462
|
-
var session = _self
|
|
2463
|
-
_setStorage(session.id, session
|
|
2632
|
+
var session = _self[_DYN_AUTOMATIC_SESSION ];
|
|
2633
|
+
_setStorage(session.id, session[_DYN_ACQUISITION_DATE ], session[_DYN_RENEWAL_DATE ]);
|
|
2464
2634
|
};
|
|
2465
2635
|
function _initializeAutomaticSession(session, now) {
|
|
2466
2636
|
var isValid = false;
|
|
@@ -2480,7 +2650,7 @@
|
|
|
2480
2650
|
var isValid = false;
|
|
2481
2651
|
var sessionReset = ", session will be reset";
|
|
2482
2652
|
var tokens = sessionData.split("|");
|
|
2483
|
-
if (tokens
|
|
2653
|
+
if (tokens[_DYN_LENGTH ] >= 2) {
|
|
2484
2654
|
try {
|
|
2485
2655
|
var acqMs = +tokens[1] || 0;
|
|
2486
2656
|
var renewalMs = +tokens[2] || 0;
|
|
@@ -2492,8 +2662,8 @@
|
|
|
2492
2662
|
}
|
|
2493
2663
|
else if (tokens[0]) {
|
|
2494
2664
|
session.id = tokens[0];
|
|
2495
|
-
session
|
|
2496
|
-
session
|
|
2665
|
+
session[_DYN_ACQUISITION_DATE ] = acqMs;
|
|
2666
|
+
session[_DYN_RENEWAL_DATE ] = renewalMs;
|
|
2497
2667
|
isValid = true;
|
|
2498
2668
|
}
|
|
2499
2669
|
}
|
|
@@ -2504,21 +2674,21 @@
|
|
|
2504
2674
|
return isValid;
|
|
2505
2675
|
}
|
|
2506
2676
|
function _renew(nowMs) {
|
|
2507
|
-
var theConfig = (_self
|
|
2508
|
-
var getNewId = (theConfig
|
|
2509
|
-
_self.automaticSession.id = getNewId(theConfig
|
|
2510
|
-
_self
|
|
2511
|
-
_setCookie(_self
|
|
2677
|
+
var theConfig = (_self[_DYN_CONFIG ] || {});
|
|
2678
|
+
var getNewId = (theConfig[_DYN_GET_NEW_ID ] ? theConfig[_DYN_GET_NEW_ID ]() : null) || newId;
|
|
2679
|
+
_self.automaticSession.id = getNewId(theConfig[_DYN_ID_LENGTH ] ? theConfig[_DYN_ID_LENGTH ]() : 22);
|
|
2680
|
+
_self[_DYN_AUTOMATIC_SESSION ][_DYN_ACQUISITION_DATE ] = nowMs;
|
|
2681
|
+
_setCookie(_self[_DYN_AUTOMATIC_SESSION ], nowMs);
|
|
2512
2682
|
if (!utlCanUseLocalStorage()) {
|
|
2513
2683
|
_throwInternal(_logger, 2 , 0 , "Browser does not support local storage. Session durations will be inaccurate.");
|
|
2514
2684
|
}
|
|
2515
2685
|
}
|
|
2516
2686
|
function _setCookie(session, nowMs) {
|
|
2517
|
-
var acq = session
|
|
2518
|
-
session
|
|
2519
|
-
var config = _self
|
|
2520
|
-
var renewalPeriodMs = config
|
|
2521
|
-
var acqTimeLeftMs = (acq + config
|
|
2687
|
+
var acq = session[_DYN_ACQUISITION_DATE ];
|
|
2688
|
+
session[_DYN_RENEWAL_DATE ] = nowMs;
|
|
2689
|
+
var config = _self[_DYN_CONFIG ];
|
|
2690
|
+
var renewalPeriodMs = config[_DYN_SESSION_RENEWAL_MS ]();
|
|
2691
|
+
var acqTimeLeftMs = (acq + config[_DYN_SESSION_EXPIRATION_M7 ]()) - nowMs;
|
|
2522
2692
|
var cookie = [session.id, acq, nowMs];
|
|
2523
2693
|
var maxAgeSec = 0;
|
|
2524
2694
|
if (acqTimeLeftMs < renewalPeriodMs) {
|
|
@@ -2527,12 +2697,12 @@
|
|
|
2527
2697
|
else {
|
|
2528
2698
|
maxAgeSec = renewalPeriodMs / 1000;
|
|
2529
2699
|
}
|
|
2530
|
-
var cookieDomain = config
|
|
2531
|
-
_cookieManager.set(_storageNamePrefix(), cookie.join("|"), config
|
|
2700
|
+
var cookieDomain = config[_DYN_COOKIE_DOMAIN ] ? config[_DYN_COOKIE_DOMAIN ]() : null;
|
|
2701
|
+
_cookieManager.set(_storageNamePrefix(), cookie.join("|"), config[_DYN_SESSION_EXPIRATION_M7 ]() > 0 ? maxAgeSec : null, cookieDomain);
|
|
2532
2702
|
_cookieUpdatedTimestamp = nowMs;
|
|
2533
2703
|
}
|
|
2534
2704
|
function _setStorage(guid, acq, renewal) {
|
|
2535
|
-
utlSetLocalStorage(_logger, _storageNamePrefix(), [guid, acq, renewal]
|
|
2705
|
+
utlSetLocalStorage(_logger, _storageNamePrefix(), [guid, acq, renewal][_DYN_JOIN ]("|"));
|
|
2536
2706
|
}
|
|
2537
2707
|
});
|
|
2538
2708
|
}
|
|
@@ -2542,26 +2712,18 @@
|
|
|
2542
2712
|
return _SessionManager;
|
|
2543
2713
|
}());
|
|
2544
2714
|
|
|
2545
|
-
var
|
|
2546
|
-
function
|
|
2547
|
-
|
|
2548
|
-
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
2555
|
-
}
|
|
2556
|
-
return Device;
|
|
2557
|
-
}());
|
|
2558
|
-
|
|
2559
|
-
var Version = "2.8.5-nightly.2206-04";
|
|
2560
|
-
var Internal = /** @class */ (function () {
|
|
2561
|
-
function Internal(config) {
|
|
2562
|
-
this.sdkVersion = (config.sdkExtension && config.sdkExtension() ? config.sdkExtension() + "_" : "") + "javascript:" + Version;
|
|
2715
|
+
var TelemetryTrace = /** @class */ (function () {
|
|
2716
|
+
function TelemetryTrace(id, parentId, name, logger) {
|
|
2717
|
+
var _self = this;
|
|
2718
|
+
_self.traceID = id || generateW3CId();
|
|
2719
|
+
_self.parentID = parentId;
|
|
2720
|
+
var location = getLocation();
|
|
2721
|
+
if (!name && location && location.pathname) {
|
|
2722
|
+
name = location.pathname;
|
|
2723
|
+
}
|
|
2724
|
+
_self.name = dataSanitizeString(logger, name);
|
|
2563
2725
|
}
|
|
2564
|
-
return
|
|
2726
|
+
return TelemetryTrace;
|
|
2565
2727
|
}());
|
|
2566
2728
|
|
|
2567
2729
|
function _validateUserInput(id) {
|
|
@@ -2580,52 +2742,52 @@
|
|
|
2580
2742
|
var _cookieManager = safeGetCookieMgr(core);
|
|
2581
2743
|
var _storageNamePrefix;
|
|
2582
2744
|
dynamicProto(User, this, function (_self) {
|
|
2583
|
-
_self
|
|
2584
|
-
var userCookiePostfix = (_self.config
|
|
2745
|
+
_self[_DYN_CONFIG ] = config;
|
|
2746
|
+
var userCookiePostfix = (_self.config[_DYN_USER_COOKIE_POSTFIX ] && _self[_DYN_CONFIG ][_DYN_USER_COOKIE_POSTFIX ]()) ? _self[_DYN_CONFIG ][_DYN_USER_COOKIE_POSTFIX ]() : "";
|
|
2585
2747
|
_storageNamePrefix = function () { return User.userCookieName + userCookiePostfix; };
|
|
2586
2748
|
var cookie = _cookieManager.get(_storageNamePrefix());
|
|
2587
2749
|
if (cookie) {
|
|
2588
|
-
_self
|
|
2589
|
-
var params = cookie.split(User
|
|
2590
|
-
if (params
|
|
2750
|
+
_self[_DYN_IS_NEW_USER ] = false;
|
|
2751
|
+
var params = cookie.split(User[_DYN_COOKIE_SEPARATOR ]);
|
|
2752
|
+
if (params[_DYN_LENGTH ] > 0) {
|
|
2591
2753
|
_self.id = params[0];
|
|
2592
|
-
_self
|
|
2754
|
+
_self[_DYN_IS_USER_COOKIE_SET ] = !!_self.id;
|
|
2593
2755
|
}
|
|
2594
2756
|
}
|
|
2595
2757
|
function _generateNewId() {
|
|
2596
2758
|
var theConfig = (config || {});
|
|
2597
|
-
var getNewId = (theConfig
|
|
2598
|
-
var id = getNewId(theConfig
|
|
2759
|
+
var getNewId = (theConfig[_DYN_GET_NEW_ID ] ? theConfig[_DYN_GET_NEW_ID ]() : null) || newId;
|
|
2760
|
+
var id = getNewId(theConfig[_DYN_ID_LENGTH ] ? config[_DYN_ID_LENGTH ]() : 22);
|
|
2599
2761
|
return id;
|
|
2600
2762
|
}
|
|
2601
2763
|
function _generateNewCookie(userId) {
|
|
2602
2764
|
var acqStr = toISOString(new Date());
|
|
2603
2765
|
_self.accountAcquisitionDate = acqStr;
|
|
2604
|
-
_self
|
|
2766
|
+
_self[_DYN_IS_NEW_USER ] = true;
|
|
2605
2767
|
var newCookie = [userId, acqStr];
|
|
2606
2768
|
return newCookie;
|
|
2607
2769
|
}
|
|
2608
2770
|
function _setUserCookie(cookie) {
|
|
2609
2771
|
var oneYear = 31536000;
|
|
2610
|
-
_self
|
|
2772
|
+
_self[_DYN_IS_USER_COOKIE_SET ] = _cookieManager.set(_storageNamePrefix(), cookie, oneYear);
|
|
2611
2773
|
}
|
|
2612
2774
|
if (!_self.id) {
|
|
2613
2775
|
_self.id = _generateNewId();
|
|
2614
2776
|
var newCookie = _generateNewCookie(_self.id);
|
|
2615
|
-
_setUserCookie(newCookie
|
|
2616
|
-
var name_1 = config
|
|
2777
|
+
_setUserCookie(newCookie[_DYN_JOIN ](User[_DYN_COOKIE_SEPARATOR ]));
|
|
2778
|
+
var name_1 = config[_DYN_NAME_PREFIX ] && config[_DYN_NAME_PREFIX ]() ? config[_DYN_NAME_PREFIX ]() + "ai_session" : "ai_session";
|
|
2617
2779
|
utlRemoveStorage(_logger, name_1);
|
|
2618
2780
|
}
|
|
2619
|
-
_self
|
|
2620
|
-
var authCookie = _cookieManager.get(User
|
|
2781
|
+
_self[_DYN_ACCOUNT_ID ] = config[_DYN_ACCOUNT_ID ] ? config[_DYN_ACCOUNT_ID ]() : undefined;
|
|
2782
|
+
var authCookie = _cookieManager.get(User[_DYN_AUTH_USER_COOKIE_NAM8 ]);
|
|
2621
2783
|
if (authCookie) {
|
|
2622
2784
|
authCookie = decodeURI(authCookie);
|
|
2623
|
-
var authCookieString = authCookie.split(User
|
|
2785
|
+
var authCookieString = authCookie.split(User[_DYN_COOKIE_SEPARATOR ]);
|
|
2624
2786
|
if (authCookieString[0]) {
|
|
2625
|
-
_self
|
|
2787
|
+
_self[_DYN_AUTHENTICATED_ID ] = authCookieString[0];
|
|
2626
2788
|
}
|
|
2627
|
-
if (authCookieString
|
|
2628
|
-
_self
|
|
2789
|
+
if (authCookieString[_DYN_LENGTH ] > 1 && authCookieString[1]) {
|
|
2790
|
+
_self[_DYN_ACCOUNT_ID ] = authCookieString[1];
|
|
2629
2791
|
}
|
|
2630
2792
|
}
|
|
2631
2793
|
_self.setAuthenticatedUserContext = function (authenticatedUserId, accountId, storeInCookie) {
|
|
@@ -2636,26 +2798,26 @@
|
|
|
2636
2798
|
"User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars.", true);
|
|
2637
2799
|
return;
|
|
2638
2800
|
}
|
|
2639
|
-
_self
|
|
2640
|
-
var authCookie = _self
|
|
2801
|
+
_self[_DYN_AUTHENTICATED_ID ] = authenticatedUserId;
|
|
2802
|
+
var authCookie = _self[_DYN_AUTHENTICATED_ID ];
|
|
2641
2803
|
if (accountId) {
|
|
2642
|
-
_self
|
|
2643
|
-
authCookie = [_self
|
|
2804
|
+
_self[_DYN_ACCOUNT_ID ] = accountId;
|
|
2805
|
+
authCookie = [_self[_DYN_AUTHENTICATED_ID ], _self.accountId][_DYN_JOIN ](User[_DYN_COOKIE_SEPARATOR ]);
|
|
2644
2806
|
}
|
|
2645
2807
|
if (storeInCookie) {
|
|
2646
|
-
_cookieManager.set(User
|
|
2808
|
+
_cookieManager.set(User[_DYN_AUTH_USER_COOKIE_NAM8 ], encodeURI(authCookie));
|
|
2647
2809
|
}
|
|
2648
2810
|
};
|
|
2649
2811
|
_self.clearAuthenticatedUserContext = function () {
|
|
2650
|
-
_self
|
|
2651
|
-
_self
|
|
2652
|
-
_cookieManager.del(User
|
|
2812
|
+
_self[_DYN_AUTHENTICATED_ID ] = null;
|
|
2813
|
+
_self[_DYN_ACCOUNT_ID ] = null;
|
|
2814
|
+
_cookieManager.del(User[_DYN_AUTH_USER_COOKIE_NAM8 ]);
|
|
2653
2815
|
};
|
|
2654
|
-
_self
|
|
2655
|
-
if (_self.id !== userId || !_self
|
|
2816
|
+
_self[_DYN_UPDATE ] = function (userId) {
|
|
2817
|
+
if (_self.id !== userId || !_self[_DYN_IS_USER_COOKIE_SET ]) {
|
|
2656
2818
|
var user_id = userId ? userId : _generateNewId();
|
|
2657
2819
|
var user_cookie = _generateNewCookie(user_id);
|
|
2658
|
-
_setUserCookie(user_cookie
|
|
2820
|
+
_setUserCookie(user_cookie[_DYN_JOIN ](User[_DYN_COOKIE_SEPARATOR ]));
|
|
2659
2821
|
}
|
|
2660
2822
|
};
|
|
2661
2823
|
});
|
|
@@ -2666,30 +2828,10 @@
|
|
|
2666
2828
|
return User;
|
|
2667
2829
|
}());
|
|
2668
2830
|
|
|
2669
|
-
var Location = /** @class */ (function () {
|
|
2670
|
-
function Location() {
|
|
2671
|
-
}
|
|
2672
|
-
return Location;
|
|
2673
|
-
}());
|
|
2674
|
-
|
|
2675
|
-
var TelemetryTrace = /** @class */ (function () {
|
|
2676
|
-
function TelemetryTrace(id, parentId, name, logger) {
|
|
2677
|
-
var _self = this;
|
|
2678
|
-
_self.traceID = id || generateW3CId();
|
|
2679
|
-
_self.parentID = parentId;
|
|
2680
|
-
var location = getLocation();
|
|
2681
|
-
if (!name && location && location.pathname) {
|
|
2682
|
-
name = location.pathname;
|
|
2683
|
-
}
|
|
2684
|
-
_self.name = dataSanitizeString(logger, name);
|
|
2685
|
-
}
|
|
2686
|
-
return TelemetryTrace;
|
|
2687
|
-
}());
|
|
2688
|
-
|
|
2689
2831
|
var strExt = "ext";
|
|
2690
2832
|
var strTags = "tags";
|
|
2691
2833
|
function _removeEmpty(target, name) {
|
|
2692
|
-
if (target && target[name] && objKeys(target[name])
|
|
2834
|
+
if (target && target[name] && objKeys(target[name])[_DYN_LENGTH ] === 0) {
|
|
2693
2835
|
delete target[name];
|
|
2694
2836
|
}
|
|
2695
2837
|
}
|
|
@@ -2698,12 +2840,12 @@
|
|
|
2698
2840
|
var _this = this;
|
|
2699
2841
|
var logger = core.logger;
|
|
2700
2842
|
this.appId = function () { return null; };
|
|
2701
|
-
this
|
|
2843
|
+
this[_DYN_GET_SESSION_ID ] = function () { return null; };
|
|
2702
2844
|
dynamicProto(TelemetryContext, this, function (_self) {
|
|
2703
2845
|
_self.application = new Application();
|
|
2704
2846
|
_self.internal = new Internal(defaultConfig);
|
|
2705
2847
|
if (hasWindow()) {
|
|
2706
|
-
_self
|
|
2848
|
+
_self[_DYN_SESSION_MANAGER ] = new _SessionManager(defaultConfig, core);
|
|
2707
2849
|
_self.device = new Device();
|
|
2708
2850
|
_self.location = new Location();
|
|
2709
2851
|
_self.user = new User(defaultConfig, core);
|
|
@@ -2715,28 +2857,28 @@
|
|
|
2715
2857
|
parentId = previousTraceCtx.getSpanId();
|
|
2716
2858
|
name_1 = previousTraceCtx.getName();
|
|
2717
2859
|
}
|
|
2718
|
-
_self
|
|
2860
|
+
_self[_DYN_TELEMETRY_TRACE ] = new TelemetryTrace(traceId, parentId, name_1, logger);
|
|
2719
2861
|
_self.session = new Session();
|
|
2720
2862
|
}
|
|
2721
|
-
_self
|
|
2863
|
+
_self[_DYN_GET_SESSION_ID ] = function () {
|
|
2722
2864
|
var session = _self.session;
|
|
2723
2865
|
var sesId = null;
|
|
2724
2866
|
if (session && isString(session.id)) {
|
|
2725
2867
|
sesId = session.id;
|
|
2726
2868
|
}
|
|
2727
2869
|
else {
|
|
2728
|
-
var autoSession = (_self
|
|
2870
|
+
var autoSession = (_self[_DYN_SESSION_MANAGER ] || {})[_DYN_AUTOMATIC_SESSION ];
|
|
2729
2871
|
sesId = autoSession && isString(autoSession.id) ? autoSession.id : null;
|
|
2730
2872
|
}
|
|
2731
2873
|
return sesId;
|
|
2732
2874
|
};
|
|
2733
|
-
_self
|
|
2734
|
-
setValue(getSetValue(evt.ext, Extensions.AppExt), "sesId", _self
|
|
2875
|
+
_self[_DYN_APPLY_SESSION_CONTEX0 ] = function (evt, itemCtx) {
|
|
2876
|
+
setValue(getSetValue(evt.ext, Extensions.AppExt), "sesId", _self[_DYN_GET_SESSION_ID ](), isString);
|
|
2735
2877
|
};
|
|
2736
|
-
_self
|
|
2878
|
+
_self[_DYN_APPLY_OPERATING_SYST3 ] = function (evt, itemCtx) {
|
|
2737
2879
|
setValue(evt.ext, Extensions.OSExt, _self.os);
|
|
2738
2880
|
};
|
|
2739
|
-
_self
|
|
2881
|
+
_self[_DYN_APPLY_APPLICATION_CO1 ] = function (evt, itemCtx) {
|
|
2740
2882
|
var application = _self.application;
|
|
2741
2883
|
if (application) {
|
|
2742
2884
|
var tags = getSetValue(evt, strTags);
|
|
@@ -2744,7 +2886,7 @@
|
|
|
2744
2886
|
setValue(tags, CtxTagKeys.applicationBuild, application.build, isString);
|
|
2745
2887
|
}
|
|
2746
2888
|
};
|
|
2747
|
-
_self
|
|
2889
|
+
_self[_DYN_APPLY_DEVICE_CONTEXT ] = function (evt, itemCtx) {
|
|
2748
2890
|
var device = _self.device;
|
|
2749
2891
|
if (device) {
|
|
2750
2892
|
var extDevice = getSetValue(getSetValue(evt, strExt), Extensions.DeviceExt);
|
|
@@ -2754,7 +2896,7 @@
|
|
|
2754
2896
|
setValue(extDevice, "deviceClass", device.deviceClass, isString);
|
|
2755
2897
|
}
|
|
2756
2898
|
};
|
|
2757
|
-
_self
|
|
2899
|
+
_self[_DYN_APPLY_INTERNAL_CONTE5 ] = function (evt, itemCtx) {
|
|
2758
2900
|
var internal = _self.internal;
|
|
2759
2901
|
if (internal) {
|
|
2760
2902
|
var tags = getSetValue(evt, strTags);
|
|
@@ -2766,14 +2908,14 @@
|
|
|
2766
2908
|
}
|
|
2767
2909
|
}
|
|
2768
2910
|
};
|
|
2769
|
-
_self
|
|
2911
|
+
_self[_DYN_APPLY_LOCATION_CONTE4 ] = function (evt, itemCtx) {
|
|
2770
2912
|
var location = _this.location;
|
|
2771
2913
|
if (location) {
|
|
2772
2914
|
setValue(getSetValue(evt, strTags, []), CtxTagKeys.locationIp, location.ip, isString);
|
|
2773
2915
|
}
|
|
2774
2916
|
};
|
|
2775
|
-
_self
|
|
2776
|
-
var telemetryTrace = _self
|
|
2917
|
+
_self[_DYN_APPLY_OPERATION_CONT2 ] = function (evt, itemCtx) {
|
|
2918
|
+
var telemetryTrace = _self[_DYN_TELEMETRY_TRACE ];
|
|
2777
2919
|
if (telemetryTrace) {
|
|
2778
2920
|
var extTrace = getSetValue(getSetValue(evt, strExt), Extensions.TraceExt, { traceID: undefined, parentID: undefined });
|
|
2779
2921
|
setValue(extTrace, "traceID", telemetryTrace.traceID, isString);
|
|
@@ -2787,14 +2929,14 @@
|
|
|
2787
2929
|
setValue(getSetValue(evt, strExt), Extensions.WebExt, web);
|
|
2788
2930
|
}
|
|
2789
2931
|
};
|
|
2790
|
-
_self
|
|
2932
|
+
_self[_DYN_APPLY_USER_CONTEXT ] = function (evt, itemCtx) {
|
|
2791
2933
|
var user = _self.user;
|
|
2792
2934
|
if (user) {
|
|
2793
2935
|
var tags = getSetValue(evt, strTags, []);
|
|
2794
|
-
setValue(tags, CtxTagKeys.userAccountId, user
|
|
2936
|
+
setValue(tags, CtxTagKeys.userAccountId, user[_DYN_ACCOUNT_ID ], isString);
|
|
2795
2937
|
var extUser = getSetValue(getSetValue(evt, strExt), Extensions.UserExt);
|
|
2796
2938
|
setValue(extUser, "id", user.id, isString);
|
|
2797
|
-
setValue(extUser, "authId", user
|
|
2939
|
+
setValue(extUser, "authId", user[_DYN_AUTHENTICATED_ID ], isString);
|
|
2798
2940
|
}
|
|
2799
2941
|
};
|
|
2800
2942
|
_self.cleanUp = function (evt, itemCtx) {
|
|
@@ -2827,22 +2969,7 @@
|
|
|
2827
2969
|
_initDefaults();
|
|
2828
2970
|
_self.initialize = function (config, core, extensions, pluginChain) {
|
|
2829
2971
|
_base.initialize(config, core, extensions, pluginChain);
|
|
2830
|
-
|
|
2831
|
-
var identifier = _self.identifier;
|
|
2832
|
-
var defaultConfig = PropertiesPlugin.getDefaultConfig();
|
|
2833
|
-
_extensionConfig = _extensionConfig || {};
|
|
2834
|
-
objForEachKey(defaultConfig, function (field, value) {
|
|
2835
|
-
_extensionConfig[field] = function () { return ctx.getConfig(identifier, field, value()); };
|
|
2836
|
-
});
|
|
2837
|
-
_previousTraceCtx = core.getTraceCtx(false);
|
|
2838
|
-
_self.context = new TelemetryContext(core, _extensionConfig, _previousTraceCtx);
|
|
2839
|
-
_distributedTraceCtx = createDistributedTraceContextFromTrace(_self.context.telemetryTrace, _previousTraceCtx);
|
|
2840
|
-
core.setTraceCtx(_distributedTraceCtx);
|
|
2841
|
-
_self.context.appId = function () {
|
|
2842
|
-
var breezeChannel = core.getPlugin(BreezeChannelIdentifier);
|
|
2843
|
-
return breezeChannel ? breezeChannel.plugin["_appId"] : null;
|
|
2844
|
-
};
|
|
2845
|
-
_self["_extConfig"] = _extensionConfig;
|
|
2972
|
+
_populateDefaults(config);
|
|
2846
2973
|
};
|
|
2847
2974
|
_self.processTelemetry = function (event, itemCtx) {
|
|
2848
2975
|
if (isNullOrUndefined(event)) ;
|
|
@@ -2853,17 +2980,17 @@
|
|
|
2853
2980
|
}
|
|
2854
2981
|
var theContext = (_self.context || {});
|
|
2855
2982
|
if (theContext.session) {
|
|
2856
|
-
if (typeof _self.context.session.id !== "string" && theContext
|
|
2857
|
-
theContext
|
|
2983
|
+
if (typeof _self.context.session.id !== "string" && theContext[_DYN_SESSION_MANAGER ]) {
|
|
2984
|
+
theContext[_DYN_SESSION_MANAGER ][_DYN_UPDATE ]();
|
|
2858
2985
|
}
|
|
2859
2986
|
}
|
|
2860
2987
|
var userCtx = theContext.user;
|
|
2861
|
-
if (userCtx && !userCtx
|
|
2862
|
-
userCtx
|
|
2988
|
+
if (userCtx && !userCtx[_DYN_IS_USER_COOKIE_SET ]) {
|
|
2989
|
+
userCtx[_DYN_UPDATE ](theContext.user.id);
|
|
2863
2990
|
}
|
|
2864
2991
|
_processTelemetryInternal(event, itemCtx);
|
|
2865
|
-
if (userCtx && userCtx
|
|
2866
|
-
userCtx
|
|
2992
|
+
if (userCtx && userCtx[_DYN_IS_NEW_USER ]) {
|
|
2993
|
+
userCtx[_DYN_IS_NEW_USER ] = false;
|
|
2867
2994
|
var message = new _InternalLogMessage(72 , ((getNavigator() || {}).userAgent || ""));
|
|
2868
2995
|
_logInternalMessage(itemCtx.diagLog(), 1 , message);
|
|
2869
2996
|
}
|
|
@@ -2872,8 +2999,8 @@
|
|
|
2872
2999
|
};
|
|
2873
3000
|
_self._doTeardown = function (unloadCtx, unloadState) {
|
|
2874
3001
|
var core = (unloadCtx || {}).core();
|
|
2875
|
-
if (core && core
|
|
2876
|
-
var traceCtx = core
|
|
3002
|
+
if (core && core[_DYN_GET_TRACE_CTX ]) {
|
|
3003
|
+
var traceCtx = core[_DYN_GET_TRACE_CTX ](false);
|
|
2877
3004
|
if (traceCtx === _distributedTraceCtx) {
|
|
2878
3005
|
core.setTraceCtx(_previousTraceCtx);
|
|
2879
3006
|
}
|
|
@@ -2885,42 +3012,65 @@
|
|
|
2885
3012
|
_distributedTraceCtx = null;
|
|
2886
3013
|
_previousTraceCtx = null;
|
|
2887
3014
|
}
|
|
3015
|
+
function _populateDefaults(config) {
|
|
3016
|
+
var identifier = _self.identifier;
|
|
3017
|
+
var core = _self.core;
|
|
3018
|
+
var ctx = createProcessTelemetryContext(null, config, core);
|
|
3019
|
+
var defaultConfig = PropertiesPlugin.getDefaultConfig();
|
|
3020
|
+
_extensionConfig = _extensionConfig || {};
|
|
3021
|
+
objForEachKey(defaultConfig, function (field, value) {
|
|
3022
|
+
_extensionConfig[field] = function () { return ctx.getConfig(identifier, field, value()); };
|
|
3023
|
+
});
|
|
3024
|
+
_previousTraceCtx = core[_DYN_GET_TRACE_CTX ](false);
|
|
3025
|
+
_self.context = new TelemetryContext(core, _extensionConfig, _previousTraceCtx);
|
|
3026
|
+
_distributedTraceCtx = createDistributedTraceContextFromTrace(_self.context[_DYN_TELEMETRY_TRACE ], _previousTraceCtx);
|
|
3027
|
+
core.setTraceCtx(_distributedTraceCtx);
|
|
3028
|
+
_self.context.appId = function () {
|
|
3029
|
+
var breezeChannel = core.getPlugin(BreezeChannelIdentifier);
|
|
3030
|
+
return breezeChannel ? breezeChannel.plugin["_appId"] : null;
|
|
3031
|
+
};
|
|
3032
|
+
_self["_extConfig"] = _extensionConfig;
|
|
3033
|
+
}
|
|
2888
3034
|
function _processTelemetryInternal(evt, itemCtx) {
|
|
2889
3035
|
getSetValue(evt, "tags", []);
|
|
2890
3036
|
getSetValue(evt, "ext", {});
|
|
2891
3037
|
var ctx = _self.context;
|
|
2892
|
-
ctx
|
|
2893
|
-
ctx
|
|
2894
|
-
ctx
|
|
2895
|
-
ctx
|
|
2896
|
-
ctx
|
|
2897
|
-
ctx
|
|
3038
|
+
ctx[_DYN_APPLY_SESSION_CONTEX0 ](evt, itemCtx);
|
|
3039
|
+
ctx[_DYN_APPLY_APPLICATION_CO1 ](evt, itemCtx);
|
|
3040
|
+
ctx[_DYN_APPLY_DEVICE_CONTEXT ](evt, itemCtx);
|
|
3041
|
+
ctx[_DYN_APPLY_OPERATION_CONT2 ](evt, itemCtx);
|
|
3042
|
+
ctx[_DYN_APPLY_USER_CONTEXT ](evt, itemCtx);
|
|
3043
|
+
ctx[_DYN_APPLY_OPERATING_SYST3 ](evt, itemCtx);
|
|
2898
3044
|
ctx.applyWebContext(evt, itemCtx);
|
|
2899
|
-
ctx
|
|
2900
|
-
ctx
|
|
3045
|
+
ctx[_DYN_APPLY_LOCATION_CONTE4 ](evt, itemCtx);
|
|
3046
|
+
ctx[_DYN_APPLY_INTERNAL_CONTE5 ](evt, itemCtx);
|
|
2901
3047
|
ctx.cleanUp(evt, itemCtx);
|
|
2902
3048
|
}
|
|
2903
3049
|
});
|
|
2904
3050
|
return _this;
|
|
2905
3051
|
}
|
|
2906
3052
|
PropertiesPlugin.getDefaultConfig = function () {
|
|
2907
|
-
var
|
|
2908
|
-
|
|
2909
|
-
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
2919
|
-
|
|
2920
|
-
|
|
2921
|
-
|
|
2922
|
-
|
|
2923
|
-
|
|
3053
|
+
var _a;
|
|
3054
|
+
var defaultValue;
|
|
3055
|
+
var nullValue = null;
|
|
3056
|
+
var defaultConfig = (_a = {
|
|
3057
|
+
instrumentationKey: function () { return defaultValue; }
|
|
3058
|
+
},
|
|
3059
|
+
_a[_DYN_ACCOUNT_ID ] = function () { return nullValue; },
|
|
3060
|
+
_a.sessionRenewalMs = function () { return 30 * 60 * 1000; },
|
|
3061
|
+
_a.samplingPercentage = function () { return 100; },
|
|
3062
|
+
_a.sessionExpirationMs = function () { return 24 * 60 * 60 * 1000; },
|
|
3063
|
+
_a[_DYN_COOKIE_DOMAIN ] = function () { return nullValue; },
|
|
3064
|
+
_a[_DYN_SDK_EXTENSION ] = function () { return nullValue; },
|
|
3065
|
+
_a.isBrowserLinkTrackingEnabled = function () { return false; },
|
|
3066
|
+
_a.appId = function () { return nullValue; },
|
|
3067
|
+
_a[_DYN_GET_SESSION_ID ] = function () { return nullValue; },
|
|
3068
|
+
_a[_DYN_NAME_PREFIX ] = function () { return defaultValue; },
|
|
3069
|
+
_a[_DYN_SESSION_COOKIE_POSTF6 ] = function () { return defaultValue; },
|
|
3070
|
+
_a[_DYN_USER_COOKIE_POSTFIX ] = function () { return defaultValue; },
|
|
3071
|
+
_a[_DYN_ID_LENGTH ] = function () { return 22; },
|
|
3072
|
+
_a[_DYN_GET_NEW_ID ] = function () { return nullValue; },
|
|
3073
|
+
_a);
|
|
2924
3074
|
return defaultConfig;
|
|
2925
3075
|
};
|
|
2926
3076
|
return PropertiesPlugin;
|