@microsoft/applicationinsights-react-js 19.4.2-nightly.2608-06 → 19.4.2
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/README.md +42 -3
- package/browser/applicationinsights-react-js.js +39 -2519
- package/browser/applicationinsights-react-js.js.map +1 -1
- package/browser/applicationinsights-react-js.min.js +2 -2
- package/browser/applicationinsights-react-js.min.js.map +1 -1
- package/dist/applicationinsights-react-js.api.json +1 -1
- package/dist/applicationinsights-react-js.d.ts +1 -1
- package/dist/applicationinsights-react-js.js +39 -2519
- package/dist/applicationinsights-react-js.js.map +1 -1
- package/dist/applicationinsights-react-js.min.js +2 -2
- package/dist/applicationinsights-react-js.min.js.map +1 -1
- package/dist/applicationinsights-react-js.rollup.d.ts +1 -1
- package/dist-esm/AppInsightsContext.js +1 -1
- package/dist-esm/AppInsightsErrorBoundary.js +1 -1
- package/dist-esm/Interfaces/IReactExtensionConfig.js +1 -1
- package/dist-esm/ReactPlugin.js +1 -1
- package/dist-esm/applicationinsights-react-js.js +1 -1
- package/dist-esm/useTrackEvent.js +1 -1
- package/dist-esm/useTrackMetric.js +1 -1
- package/dist-esm/withAITracking.js +1 -1
- package/package.json +81 -83
- package/types/tsdoc-metadata.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - React Plugin, 19.4.2
|
|
2
|
+
* Application Insights JavaScript SDK - React Plugin, 19.4.2
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
6
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :
|
|
7
|
-
typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) :
|
|
8
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.Microsoft = global.Microsoft || {}, global.Microsoft.ApplicationInsights = global.Microsoft.ApplicationInsights || {}), global.React));
|
|
9
|
-
})(this, (function (exports, React) { 'use strict';
|
|
6
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@microsoft/applicationinsights-core-js'), require('react')) :
|
|
7
|
+
typeof define === 'function' && define.amd ? define(['exports', '@microsoft/applicationinsights-core-js', 'react'], factory) :
|
|
8
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.Microsoft = global.Microsoft || {}, global.Microsoft.ApplicationInsights = global.Microsoft.ApplicationInsights || {}), global.Microsoft.ApplicationInsights, global.React));
|
|
9
|
+
})(this, (function (exports, applicationinsightsCoreJs, React) { 'use strict';
|
|
10
10
|
|
|
11
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
12
|
|
|
@@ -32,13 +32,11 @@
|
|
|
32
32
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
33
33
|
|
|
34
34
|
var strShimFunction = "function";
|
|
35
|
-
var strShimObject = "object";
|
|
36
|
-
var strShimUndefined = "undefined";
|
|
37
35
|
var strShimPrototype = "prototype";
|
|
38
36
|
var ObjClass$1 = Object;
|
|
39
37
|
var ObjProto$1 = ObjClass$1[strShimPrototype];
|
|
40
38
|
|
|
41
|
-
/*! https://github.com/nevware21/ts-utils v0.
|
|
39
|
+
/*! https://github.com/nevware21/ts-utils v0.15.0 */
|
|
42
40
|
function _pureAssign(func1, func2) {
|
|
43
41
|
return func1 || func2;
|
|
44
42
|
}
|
|
@@ -53,10 +51,8 @@
|
|
|
53
51
|
var PROTOTYPE = "prototype";
|
|
54
52
|
var __PROTO__ = "__proto__";
|
|
55
53
|
var UNDEFINED = "undefined";
|
|
56
|
-
var CONSTRUCTOR = "constructor";
|
|
57
54
|
var SYMBOL = "Symbol";
|
|
58
55
|
var LENGTH = "length";
|
|
59
|
-
var NAME = "name";
|
|
60
56
|
var CALL = "call";
|
|
61
57
|
var TO_STRING = "toString";
|
|
62
58
|
var GET_OWN_PROPERTY_DESCRIPTOR = "getOwnPropertyDescriptor";
|
|
@@ -94,10 +90,6 @@
|
|
|
94
90
|
return { e: e };
|
|
95
91
|
}
|
|
96
92
|
}
|
|
97
|
-
function safeGet(cb, defValue, argArray) {
|
|
98
|
-
var result = safe(cb, argArray);
|
|
99
|
-
return result.e ? defValue : result.v;
|
|
100
|
-
}
|
|
101
93
|
function _createIs(theType) {
|
|
102
94
|
return function (value) {
|
|
103
95
|
return typeof value === theType;
|
|
@@ -124,9 +116,6 @@
|
|
|
124
116
|
function isStrictNullOrUndefined(value) {
|
|
125
117
|
return value === NULL_VALUE || value === UNDEF_VALUE;
|
|
126
118
|
}
|
|
127
|
-
function isDefined(arg) {
|
|
128
|
-
return !!arg || arg !== UNDEF_VALUE;
|
|
129
|
-
}
|
|
130
119
|
var isString = (_createIs("string"));
|
|
131
120
|
var isFunction = (_createIs(FUNCTION));
|
|
132
121
|
function isObject(value) {
|
|
@@ -141,10 +130,6 @@
|
|
|
141
130
|
}
|
|
142
131
|
var isNumber = (_createIs("number"));
|
|
143
132
|
var isRegExp = (_createObjIs("RegExp"));
|
|
144
|
-
var isError = (_createObjIs("Error"));
|
|
145
|
-
function isTruthy(value) {
|
|
146
|
-
return !(!value || safeGet(function () { return !(value && (0 + value)); }, !value));
|
|
147
|
-
}
|
|
148
133
|
function _returnNothing() {
|
|
149
134
|
return;
|
|
150
135
|
}
|
|
@@ -347,7 +332,7 @@
|
|
|
347
332
|
return value[__PROTO__] || NULL_VALUE;
|
|
348
333
|
}
|
|
349
334
|
var objAssign = (_pureRef(ObjClass, "assign"));
|
|
350
|
-
|
|
335
|
+
(_pureRef(ObjClass, "keys"));
|
|
351
336
|
function _deepFreeze(val, visited) {
|
|
352
337
|
if ((isArray(val) || isObject(val) || isFunction(val)) && !objIsFrozen(val)) {
|
|
353
338
|
for (var lp = 0; lp < visited.length; lp++) {
|
|
@@ -368,13 +353,10 @@
|
|
|
368
353
|
}
|
|
369
354
|
var objFreeze = (_pureAssign(_objFreeze, _doNothing));
|
|
370
355
|
(_pureAssign((_pureRef(ObjClass, "seal")), _doNothing));
|
|
371
|
-
|
|
356
|
+
(_pureAssign((_pureRef(ObjClass, "getPrototypeOf")), _getProto));
|
|
372
357
|
(_pureAssign((_pureRef(ObjClass, "entries")), polyObjEntries));
|
|
373
358
|
(_pureAssign((_pureRef(ObjClass, "values")), polyObjValues));
|
|
374
359
|
(_pureAssign((_pureRef(ObjClass, "is")), polyObjIs));
|
|
375
|
-
function createEnum(values) {
|
|
376
|
-
return _createKeyValueMap(values, 1 , 0 , objFreeze);
|
|
377
|
-
}
|
|
378
360
|
function createEnumKeyMap(values) {
|
|
379
361
|
return _createKeyValueMap(values, 0 , 0 , objFreeze);
|
|
380
362
|
}
|
|
@@ -437,9 +419,6 @@
|
|
|
437
419
|
}
|
|
438
420
|
return strSlice(value, start, start + length);
|
|
439
421
|
}
|
|
440
|
-
function strLeft(value, count) {
|
|
441
|
-
return strSubstring(value, 0, count);
|
|
442
|
-
}
|
|
443
422
|
function _tagAsPolyfill(target, polyfillTypeName) {
|
|
444
423
|
if (target) {
|
|
445
424
|
safe(function () {
|
|
@@ -526,17 +505,8 @@
|
|
|
526
505
|
value = value.substring(0, 16);
|
|
527
506
|
return value;
|
|
528
507
|
}));
|
|
529
|
-
var UNIQUE_REGISTRY_ID = "_urid";
|
|
530
508
|
var POLY_SYM = "$nw21sym";
|
|
531
|
-
var _polySymbols;
|
|
532
509
|
var _polyId = 0;
|
|
533
|
-
function _globalSymbolRegistry() {
|
|
534
|
-
if (!_polySymbols) {
|
|
535
|
-
var gblCfg = _getGlobalConfig();
|
|
536
|
-
_polySymbols = gblCfg.gblSym = gblCfg.gblSym || { k: {}, s: {} };
|
|
537
|
-
}
|
|
538
|
-
return _polySymbols;
|
|
539
|
-
}
|
|
540
510
|
var _wellKnownSymbolCache;
|
|
541
511
|
function polyNewSymbol(description) {
|
|
542
512
|
var uniqueId = "_" + _polyId++ + "_" + _uniqueInstanceId.v;
|
|
@@ -556,17 +526,6 @@
|
|
|
556
526
|
_setProp("_uid", uniqueId);
|
|
557
527
|
return _tagAsPolyfill(theSymbol, "symbol");
|
|
558
528
|
}
|
|
559
|
-
function polySymbolFor(key) {
|
|
560
|
-
var registry = _globalSymbolRegistry();
|
|
561
|
-
if (!objHasOwn(registry.k, key)) {
|
|
562
|
-
var newSymbol_1 = polyNewSymbol(key);
|
|
563
|
-
var regId_1 = objKeys(registry.s).length;
|
|
564
|
-
newSymbol_1[UNIQUE_REGISTRY_ID] = function () { return regId_1 + "_" + newSymbol_1[TO_STRING](); };
|
|
565
|
-
registry.k[key] = newSymbol_1;
|
|
566
|
-
registry.s[newSymbol_1[UNIQUE_REGISTRY_ID]()] = asString(key);
|
|
567
|
-
}
|
|
568
|
-
return registry.k[key];
|
|
569
|
-
}
|
|
570
529
|
function polyGetKnownSymbol(name) {
|
|
571
530
|
!_wellKnownSymbolCache && (_wellKnownSymbolCache = {});
|
|
572
531
|
var result;
|
|
@@ -583,16 +542,6 @@
|
|
|
583
542
|
}
|
|
584
543
|
var WINDOW = "window";
|
|
585
544
|
var _cachedGlobal;
|
|
586
|
-
function _getGlobalInstFn(getFn, theArgs) {
|
|
587
|
-
var cachedValue;
|
|
588
|
-
return function () {
|
|
589
|
-
!_globalLazyTestHooks && _initTestHooks();
|
|
590
|
-
if (!cachedValue || _globalLazyTestHooks.lzy) {
|
|
591
|
-
cachedValue = createCachedValue(safe(getFn, theArgs).v);
|
|
592
|
-
}
|
|
593
|
-
return cachedValue.v;
|
|
594
|
-
};
|
|
595
|
-
}
|
|
596
545
|
function getGlobal(useCached) {
|
|
597
546
|
!_globalLazyTestHooks && _initTestHooks();
|
|
598
547
|
if (!_cachedGlobal || useCached === false || _globalLazyTestHooks.lzy) {
|
|
@@ -620,38 +569,17 @@
|
|
|
620
569
|
}
|
|
621
570
|
return NULL_VALUE;
|
|
622
571
|
}
|
|
623
|
-
var getDocument = (_getGlobalInstFn(getInst, ["document"]));
|
|
624
|
-
function hasWindow() {
|
|
625
|
-
return !!getWindow();
|
|
626
|
-
}
|
|
627
|
-
var getWindow = (_getGlobalInstFn(getInst, [WINDOW]));
|
|
628
|
-
var getNavigator = (_getGlobalInstFn(getInst, ["navigator"]));
|
|
629
572
|
var _symbol;
|
|
630
|
-
var _symbolFor;
|
|
631
573
|
function _initSymbol() {
|
|
632
574
|
_symbol = (createCachedValue(safe((getInst), [SYMBOL]).v));
|
|
633
575
|
return _symbol;
|
|
634
576
|
}
|
|
635
|
-
function _getSymbolKey(key) {
|
|
636
|
-
var gblSym = ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol());
|
|
637
|
-
return (gblSym.v ? gblSym.v[key] : UNDEF_VALUE);
|
|
638
|
-
}
|
|
639
577
|
function getKnownSymbol(name, noPoly) {
|
|
640
578
|
var knownName = _wellKnownSymbolMap[name];
|
|
641
579
|
!_globalLazyTestHooks && _initTestHooks();
|
|
642
580
|
var sym = ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol());
|
|
643
581
|
return sym.v ? sym.v[knownName || name] : (!noPoly ? polyGetKnownSymbol(name) : UNDEF_VALUE);
|
|
644
582
|
}
|
|
645
|
-
function newSymbol(description, noPoly) {
|
|
646
|
-
!_globalLazyTestHooks && _initTestHooks();
|
|
647
|
-
var sym = ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol());
|
|
648
|
-
return sym.v ? sym.v(description) : (!noPoly ? polyNewSymbol(description) : NULL_VALUE);
|
|
649
|
-
}
|
|
650
|
-
function symbolFor(key) {
|
|
651
|
-
!_globalLazyTestHooks && _initTestHooks();
|
|
652
|
-
_symbolFor = ((!_globalLazyTestHooks.lzy ? _symbolFor : 0) || (createCachedValue(safe((_getSymbolKey), ["for"]).v)));
|
|
653
|
-
return (_symbolFor.v || polySymbolFor)(key);
|
|
654
|
-
}
|
|
655
583
|
function isIterator(value) {
|
|
656
584
|
return !!value && isFunction(value.next);
|
|
657
585
|
}
|
|
@@ -699,22 +627,6 @@
|
|
|
699
627
|
}
|
|
700
628
|
}
|
|
701
629
|
}
|
|
702
|
-
function arrAppend(target, elms) {
|
|
703
|
-
if (!isUndefined(elms) && target) {
|
|
704
|
-
if (isArray(elms)) {
|
|
705
|
-
fnApply(target.push, target, elms);
|
|
706
|
-
}
|
|
707
|
-
else if (isIterator(elms) || isIterable(elms)) {
|
|
708
|
-
iterForOf(elms, function (elm) {
|
|
709
|
-
target.push(elm);
|
|
710
|
-
});
|
|
711
|
-
}
|
|
712
|
-
else {
|
|
713
|
-
target.push(elms);
|
|
714
|
-
}
|
|
715
|
-
}
|
|
716
|
-
return target;
|
|
717
|
-
}
|
|
718
630
|
(_unwrapFunction("concat", ArrProto));
|
|
719
631
|
_unwrapFunctionWithPoly("at", ArrProto, polyArrAt);
|
|
720
632
|
function polyArrAt(theArray, index) {
|
|
@@ -942,57 +854,13 @@
|
|
|
942
854
|
return result;
|
|
943
855
|
}
|
|
944
856
|
var _isProtoArray;
|
|
945
|
-
|
|
857
|
+
(_pureAssign((_pureRef(ObjClass, "setPrototypeOf")), _polyObjSetPrototypeOf));
|
|
946
858
|
function _polyObjSetPrototypeOf(obj, proto) {
|
|
947
859
|
var _a;
|
|
948
860
|
!_isProtoArray && (_isProtoArray = createCachedValue((_a = {}, _a[__PROTO__] = [], _a) instanceof Array));
|
|
949
861
|
_isProtoArray.v ? obj[__PROTO__] = proto : objForEachKey(proto, function (key, value) { return obj[key] = value; });
|
|
950
862
|
return obj;
|
|
951
863
|
}
|
|
952
|
-
function _createCustomError(name, d, b) {
|
|
953
|
-
safe(objDefine, [d, NAME, { v: name, c: true, e: false }]);
|
|
954
|
-
d = objSetPrototypeOf(d, b);
|
|
955
|
-
function __() {
|
|
956
|
-
this[CONSTRUCTOR] = d;
|
|
957
|
-
safe(objDefine, [this, NAME, { v: name, c: true, e: false }]);
|
|
958
|
-
}
|
|
959
|
-
d[PROTOTYPE] = b === NULL_VALUE ? objCreate(b) : (__[PROTOTYPE] = b[PROTOTYPE], new __());
|
|
960
|
-
return d;
|
|
961
|
-
}
|
|
962
|
-
function _setName(baseClass, name) {
|
|
963
|
-
name && (baseClass[NAME] = name);
|
|
964
|
-
}
|
|
965
|
-
function createCustomError(name, constructCb, errorBase, superArgsFn) {
|
|
966
|
-
var theBaseClass = errorBase || Error;
|
|
967
|
-
var orgName = theBaseClass[PROTOTYPE][NAME];
|
|
968
|
-
var captureFn = Error.captureStackTrace;
|
|
969
|
-
var ctorFn = function () {
|
|
970
|
-
var _this = this;
|
|
971
|
-
var theArgs = arguments;
|
|
972
|
-
var isOwnInstance = _this[CONSTRUCTOR] === ctorFn;
|
|
973
|
-
try {
|
|
974
|
-
safe(_setName, [theBaseClass, name]);
|
|
975
|
-
var _self = fnApply(theBaseClass, _this, superArgsFn ? superArgsFn(theArgs) : ArrSlice[CALL](theArgs)) || _this;
|
|
976
|
-
if (_self !== _this) {
|
|
977
|
-
var orgProto = objGetPrototypeOf(_this);
|
|
978
|
-
if (orgProto !== objGetPrototypeOf(_self)) {
|
|
979
|
-
objSetPrototypeOf(_self, orgProto);
|
|
980
|
-
}
|
|
981
|
-
}
|
|
982
|
-
if (isOwnInstance) {
|
|
983
|
-
captureFn && captureFn(_self, ctorFn);
|
|
984
|
-
}
|
|
985
|
-
if (constructCb) {
|
|
986
|
-
fnCall(constructCb, _self, _self, theArgs, isOwnInstance);
|
|
987
|
-
}
|
|
988
|
-
return _self;
|
|
989
|
-
}
|
|
990
|
-
finally {
|
|
991
|
-
safe(_setName, [theBaseClass, orgName]);
|
|
992
|
-
}
|
|
993
|
-
};
|
|
994
|
-
return _createCustomError(name, ctorFn, theBaseClass);
|
|
995
|
-
}
|
|
996
864
|
var strReplace = (_unwrapFunction("replace", StrProto));
|
|
997
865
|
function _createTrimFn(exp) {
|
|
998
866
|
return function _doTrim(value) {
|
|
@@ -1007,7 +875,7 @@
|
|
|
1007
875
|
var polyStrTrim = (_createTrimFn(/^\s+|(?=\s)\s+$/g));
|
|
1008
876
|
var polyStrTrimStart = (_createTrimFn(/^\s+/g));
|
|
1009
877
|
var polyStrTrimEnd = (_createTrimFn(/(?=\s)\s+$/g));
|
|
1010
|
-
|
|
878
|
+
(_unwrapFunctionWithPoly("trim", StrProto, polyStrTrim));
|
|
1011
879
|
(_unwrapFunctionWithPoly("trimStart", StrProto, polyStrTrimStart));
|
|
1012
880
|
(_unwrapFunctionWithPoly("trimEnd", StrProto, polyStrTrimEnd));
|
|
1013
881
|
(_unwrapFunction("toUpperCase", StrProto));
|
|
@@ -1103,41 +971,10 @@
|
|
|
1103
971
|
}
|
|
1104
972
|
return result;
|
|
1105
973
|
}
|
|
1106
|
-
|
|
974
|
+
(_pureAssign((_pureRef(ObjClass, GET_OWN_PROPERTY_DESCRIPTOR)), _returnNothing));
|
|
1107
975
|
(_pureAssign((_pureRef(ObjClass, "getOwnPropertyDescriptors")), polyObjGetOwnPropertyDescriptors));
|
|
1108
976
|
(_pureAssign((_pureRef(ObjClass, GET_OWN_PROPERTY_NAMES)), _returnEmptyArray));
|
|
1109
977
|
(_pureAssign((_pureRef(ObjClass, GET_OWN_PROPERTY_SYMBOLS)), _returnEmptyArray));
|
|
1110
|
-
var _fnToString;
|
|
1111
|
-
var _objCtrFnString;
|
|
1112
|
-
var _gblWindow;
|
|
1113
|
-
function isPlainObject(value) {
|
|
1114
|
-
if (!value || typeof value !== OBJECT) {
|
|
1115
|
-
return false;
|
|
1116
|
-
}
|
|
1117
|
-
if (!_gblWindow) {
|
|
1118
|
-
_gblWindow = hasWindow() ? getWindow() : true;
|
|
1119
|
-
}
|
|
1120
|
-
var result = false;
|
|
1121
|
-
if (value !== _gblWindow) {
|
|
1122
|
-
if (!_objCtrFnString) {
|
|
1123
|
-
_fnToString = Function[PROTOTYPE][TO_STRING];
|
|
1124
|
-
_objCtrFnString = _fnToString[CALL](ObjClass);
|
|
1125
|
-
}
|
|
1126
|
-
try {
|
|
1127
|
-
var proto = objGetPrototypeOf(value);
|
|
1128
|
-
result = !proto;
|
|
1129
|
-
if (!result) {
|
|
1130
|
-
if (objHasOwnProperty(proto, CONSTRUCTOR)) {
|
|
1131
|
-
proto = proto[CONSTRUCTOR];
|
|
1132
|
-
}
|
|
1133
|
-
result = !!(proto && typeof proto === FUNCTION && _fnToString[CALL](proto) === _objCtrFnString);
|
|
1134
|
-
}
|
|
1135
|
-
}
|
|
1136
|
-
catch (ex) {
|
|
1137
|
-
}
|
|
1138
|
-
}
|
|
1139
|
-
return result;
|
|
1140
|
-
}
|
|
1141
978
|
function polyStrSymSplit(value, splitter, limit) {
|
|
1142
979
|
var splitFn = splitter ? splitter[getKnownSymbol(9 )] : UNDEF_VALUE;
|
|
1143
980
|
return splitFn ? splitFn(value, limit) : [value];
|
|
@@ -1204,7 +1041,7 @@
|
|
|
1204
1041
|
_throwIfNullOrUndefined(value);
|
|
1205
1042
|
return polyArrAt(asString(value), mathToInt(index));
|
|
1206
1043
|
}
|
|
1207
|
-
|
|
1044
|
+
(_unwrapFunctionWithPoly("endsWith", StrProto, polyStrEndsWith));
|
|
1208
1045
|
function polyStrEndsWith(value, searchString, length) {
|
|
1209
1046
|
_throwIfNotString(value);
|
|
1210
1047
|
var searchValue = isString(searchString) ? searchString : asString(searchString);
|
|
@@ -1319,110 +1156,6 @@
|
|
|
1319
1156
|
var pos = position > 0 ? position : 0;
|
|
1320
1157
|
return strSubstring(value, pos, pos + searchValue[LENGTH]) === searchValue;
|
|
1321
1158
|
}
|
|
1322
|
-
var REF = "ref";
|
|
1323
|
-
var UNREF = "unref";
|
|
1324
|
-
var HAS_REF = "hasRef";
|
|
1325
|
-
var ENABLED = "enabled";
|
|
1326
|
-
function _createTimerHandler(startTimer, refreshFn, cancelFn) {
|
|
1327
|
-
var ref = true;
|
|
1328
|
-
var timerId = startTimer ? refreshFn(NULL_VALUE) : NULL_VALUE;
|
|
1329
|
-
var theTimerHandler;
|
|
1330
|
-
function _unref() {
|
|
1331
|
-
ref = false;
|
|
1332
|
-
timerId && timerId[UNREF] && timerId[UNREF]();
|
|
1333
|
-
return theTimerHandler;
|
|
1334
|
-
}
|
|
1335
|
-
function _cancel() {
|
|
1336
|
-
timerId && cancelFn(timerId);
|
|
1337
|
-
timerId = NULL_VALUE;
|
|
1338
|
-
}
|
|
1339
|
-
function _refresh() {
|
|
1340
|
-
timerId = refreshFn(timerId);
|
|
1341
|
-
if (!ref) {
|
|
1342
|
-
_unref();
|
|
1343
|
-
}
|
|
1344
|
-
return theTimerHandler;
|
|
1345
|
-
}
|
|
1346
|
-
function _setEnabled(value) {
|
|
1347
|
-
!value && timerId && _cancel();
|
|
1348
|
-
value && !timerId && _refresh();
|
|
1349
|
-
}
|
|
1350
|
-
theTimerHandler = {
|
|
1351
|
-
cancel: _cancel,
|
|
1352
|
-
refresh: _refresh
|
|
1353
|
-
};
|
|
1354
|
-
theTimerHandler[HAS_REF] = function () {
|
|
1355
|
-
if (timerId && timerId[HAS_REF]) {
|
|
1356
|
-
return timerId[HAS_REF]();
|
|
1357
|
-
}
|
|
1358
|
-
return ref;
|
|
1359
|
-
};
|
|
1360
|
-
theTimerHandler[REF] = function () {
|
|
1361
|
-
ref = true;
|
|
1362
|
-
timerId && timerId[REF] && timerId[REF]();
|
|
1363
|
-
return theTimerHandler;
|
|
1364
|
-
};
|
|
1365
|
-
theTimerHandler[UNREF] = _unref;
|
|
1366
|
-
theTimerHandler = objDefineProp(theTimerHandler, ENABLED, {
|
|
1367
|
-
get: function () { return !!timerId; },
|
|
1368
|
-
set: _setEnabled
|
|
1369
|
-
});
|
|
1370
|
-
return {
|
|
1371
|
-
h: theTimerHandler,
|
|
1372
|
-
dn: function () {
|
|
1373
|
-
timerId = NULL_VALUE;
|
|
1374
|
-
}
|
|
1375
|
-
};
|
|
1376
|
-
}
|
|
1377
|
-
var _setTimeoutFn;
|
|
1378
|
-
var _clearTimeoutFn;
|
|
1379
|
-
function _resolveTimeoutFn(timeoutFn) {
|
|
1380
|
-
var result = isFunction(timeoutFn) ? timeoutFn : _setTimeoutFn;
|
|
1381
|
-
if (!result) {
|
|
1382
|
-
var globalOverrides = _getGlobalConfig().tmOut || [];
|
|
1383
|
-
if (isArray(globalOverrides) && globalOverrides.length > 0 && isFunction(globalOverrides[0])) {
|
|
1384
|
-
result = globalOverrides[0];
|
|
1385
|
-
}
|
|
1386
|
-
}
|
|
1387
|
-
return result || setTimeout;
|
|
1388
|
-
}
|
|
1389
|
-
function _resolveClearTimeoutFn(timeoutFn) {
|
|
1390
|
-
var result = isFunction(timeoutFn) ? timeoutFn : _clearTimeoutFn;
|
|
1391
|
-
if (!result) {
|
|
1392
|
-
var globalOverrides = _getGlobalConfig().tmOut || [];
|
|
1393
|
-
if (isArray(globalOverrides) && globalOverrides.length > 1 && isFunction(globalOverrides[1])) {
|
|
1394
|
-
result = globalOverrides[1];
|
|
1395
|
-
}
|
|
1396
|
-
}
|
|
1397
|
-
return result || clearTimeout;
|
|
1398
|
-
}
|
|
1399
|
-
function _createTimeoutWith(startTimer, overrideFn, theArgs) {
|
|
1400
|
-
var isArr = isArray(overrideFn);
|
|
1401
|
-
var len = isArr ? overrideFn.length : 0;
|
|
1402
|
-
var setFn = _resolveTimeoutFn(len > 0 ? overrideFn[0] : (!isArr ? overrideFn : UNDEF_VALUE));
|
|
1403
|
-
var clearFn = _resolveClearTimeoutFn(len > 1 ? overrideFn[1] : UNDEF_VALUE);
|
|
1404
|
-
var timerFn = theArgs[0];
|
|
1405
|
-
theArgs[0] = function () {
|
|
1406
|
-
handler.dn();
|
|
1407
|
-
fnApply(timerFn, UNDEF_VALUE, ArrSlice[CALL](arguments));
|
|
1408
|
-
};
|
|
1409
|
-
var handler = _createTimerHandler(startTimer, function (timerId) {
|
|
1410
|
-
if (timerId) {
|
|
1411
|
-
if (timerId.refresh) {
|
|
1412
|
-
timerId.refresh();
|
|
1413
|
-
return timerId;
|
|
1414
|
-
}
|
|
1415
|
-
fnApply(clearFn, UNDEF_VALUE, [timerId]);
|
|
1416
|
-
}
|
|
1417
|
-
return fnApply(setFn, UNDEF_VALUE, theArgs);
|
|
1418
|
-
}, function (timerId) {
|
|
1419
|
-
fnApply(clearFn, UNDEF_VALUE, [timerId]);
|
|
1420
|
-
});
|
|
1421
|
-
return handler.h;
|
|
1422
|
-
}
|
|
1423
|
-
function scheduleTimeout(callback, timeout) {
|
|
1424
|
-
return _createTimeoutWith(true, UNDEF_VALUE, ArrSlice[CALL](arguments));
|
|
1425
|
-
}
|
|
1426
1159
|
|
|
1427
1160
|
(getGlobal() || {})["Symbol"];
|
|
1428
1161
|
(getGlobal() || {})["Reflect"];
|
|
@@ -1464,7 +1197,7 @@
|
|
|
1464
1197
|
d[strShimPrototype] = b === null ? objCreate(b) : (__[strShimPrototype] = b[strShimPrototype], new __());
|
|
1465
1198
|
}
|
|
1466
1199
|
|
|
1467
|
-
var _a
|
|
1200
|
+
var _a;
|
|
1468
1201
|
var Constructor = 'constructor';
|
|
1469
1202
|
var Prototype = 'prototype';
|
|
1470
1203
|
var strFunction = 'function';
|
|
@@ -1489,10 +1222,10 @@
|
|
|
1489
1222
|
var _objGetOwnProps = Obj["getOwnPropertyNames"];
|
|
1490
1223
|
var _gbl = getGlobal();
|
|
1491
1224
|
var _gblInst = _gbl[DynProtoGlobalSettings] || (_gbl[DynProtoGlobalSettings] = {
|
|
1492
|
-
o: (_a
|
|
1493
|
-
_a
|
|
1494
|
-
_a
|
|
1495
|
-
_a
|
|
1225
|
+
o: (_a = {},
|
|
1226
|
+
_a[strSetInstFuncs] = true,
|
|
1227
|
+
_a[strUseBaseInst] = true,
|
|
1228
|
+
_a),
|
|
1496
1229
|
n: 1000
|
|
1497
1230
|
});
|
|
1498
1231
|
function _isObjectOrArrayPrototype(target) {
|
|
@@ -1741,2219 +1474,6 @@
|
|
|
1741
1474
|
}
|
|
1742
1475
|
dynamicProto[DynProtoDefaultOptions] = _gblInst.o;
|
|
1743
1476
|
|
|
1744
|
-
var createEnumStyle = createEnum;
|
|
1745
|
-
|
|
1746
|
-
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
1747
|
-
var _DYN_LENGTH = "length";
|
|
1748
|
-
var _DYN_WARN_TO_CONSOLE = "warnToConsole";
|
|
1749
|
-
var _DYN_THROW_INTERNAL = "throwInternal";
|
|
1750
|
-
var _DYN_WATCH = "watch";
|
|
1751
|
-
var _DYN_APPLY = "apply";
|
|
1752
|
-
var _DYN_PUSH = "push";
|
|
1753
|
-
var _DYN_SPLICE = "splice";
|
|
1754
|
-
var _DYN_LOGGER = "logger";
|
|
1755
|
-
var _DYN_CANCEL = "cancel";
|
|
1756
|
-
var _DYN_INITIALIZE = "initialize";
|
|
1757
|
-
var _DYN_IDENTIFIER = "identifier";
|
|
1758
|
-
var _DYN_STRINGIFY = "stringify";
|
|
1759
|
-
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
1760
|
-
var _DYN_GET_PLUGIN = "getPlugin";
|
|
1761
|
-
var _DYN_NAME = "name";
|
|
1762
|
-
var _DYN_TIME = "time";
|
|
1763
|
-
var _DYN_PROCESS_NEXT = "processNext";
|
|
1764
|
-
var _DYN_GET_PROCESS_TEL_CONT2 = "getProcessTelContext";
|
|
1765
|
-
var _DYN_ENABLED = "enabled";
|
|
1766
|
-
var _DYN_UNLOAD = "unload";
|
|
1767
|
-
var _DYN_LOGGING_LEVEL_CONSOL4 = "loggingLevelConsole";
|
|
1768
|
-
var _DYN_CREATE_NEW = "createNew";
|
|
1769
|
-
var _DYN_TEARDOWN = "teardown";
|
|
1770
|
-
var _DYN_MESSAGE_ID = "messageId";
|
|
1771
|
-
var _DYN_MESSAGE = "message";
|
|
1772
|
-
var _DYN_DIAG_LOG = "diagLog";
|
|
1773
|
-
var _DYN__DO_TEARDOWN = "_doTeardown";
|
|
1774
|
-
var _DYN_UPDATE = "update";
|
|
1775
|
-
var _DYN_GET_NEXT = "getNext";
|
|
1776
|
-
var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
|
|
1777
|
-
var _DYN_SPLIT = "split";
|
|
1778
|
-
var _DYN_IS_CHILD_EVT = "isChildEvt";
|
|
1779
|
-
var _DYN_GET_CTX = "getCtx";
|
|
1780
|
-
var _DYN_SET_CTX = "setCtx";
|
|
1781
|
-
var _DYN_CONFIG = "config";
|
|
1782
|
-
var _DYN_CALL = "call";
|
|
1783
|
-
var _DYN_REPLACE = "replace";
|
|
1784
|
-
var _DYN_USER_AGENT = "userAgent";
|
|
1785
|
-
|
|
1786
|
-
var aggregationErrorType;
|
|
1787
|
-
function throwAggregationError(message, sourceErrors) {
|
|
1788
|
-
if (!aggregationErrorType) {
|
|
1789
|
-
aggregationErrorType = createCustomError("AggregationError", function (self, args) {
|
|
1790
|
-
if (args[_DYN_LENGTH ] > 1) {
|
|
1791
|
-
self.errors = args[1];
|
|
1792
|
-
}
|
|
1793
|
-
});
|
|
1794
|
-
}
|
|
1795
|
-
var theMessage = message || "One or more errors occurred.";
|
|
1796
|
-
arrForEach(sourceErrors, function (srcError, idx) {
|
|
1797
|
-
theMessage += "\n".concat(idx, " > ").concat(dumpObj(srcError));
|
|
1798
|
-
});
|
|
1799
|
-
throw new aggregationErrorType(theMessage, sourceErrors || []);
|
|
1800
|
-
}
|
|
1801
|
-
|
|
1802
|
-
var UNDEFINED_VALUE = undefined;
|
|
1803
|
-
var STR_EMPTY = "";
|
|
1804
|
-
var STR_CORE = "core";
|
|
1805
|
-
var STR_DISABLED = "disabled";
|
|
1806
|
-
var STR_EXTENSION_CONFIG = "extensionConfig";
|
|
1807
|
-
var STR_PROCESS_TELEMETRY = "processTelemetry";
|
|
1808
|
-
var STR_PRIORITY = "priority";
|
|
1809
|
-
var STR_GET_PERF_MGR = "getPerfMgr";
|
|
1810
|
-
var STR_DOMAIN = "domain";
|
|
1811
|
-
var STR_PATH = "path";
|
|
1812
|
-
var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
|
|
1813
|
-
|
|
1814
|
-
function cfgDfMerge(defaultValue) {
|
|
1815
|
-
return {
|
|
1816
|
-
mrg: true,
|
|
1817
|
-
v: defaultValue
|
|
1818
|
-
};
|
|
1819
|
-
}
|
|
1820
|
-
|
|
1821
|
-
var rCamelCase = /-([a-z])/g;
|
|
1822
|
-
var rNormalizeInvalid = /([^\w\d_$])/g;
|
|
1823
|
-
var rLeadingNumeric = /^(\d+[\w\d_$])/;
|
|
1824
|
-
function isNotNullOrUndefined(value) {
|
|
1825
|
-
return !isNullOrUndefined(value);
|
|
1826
|
-
}
|
|
1827
|
-
function normalizeJsName(name) {
|
|
1828
|
-
var value = name;
|
|
1829
|
-
if (value && isString(value)) {
|
|
1830
|
-
value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
|
|
1831
|
-
return letter.toUpperCase();
|
|
1832
|
-
});
|
|
1833
|
-
value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
|
|
1834
|
-
value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
|
|
1835
|
-
return "_" + match;
|
|
1836
|
-
});
|
|
1837
|
-
}
|
|
1838
|
-
return value;
|
|
1839
|
-
}
|
|
1840
|
-
function strContains(value, search) {
|
|
1841
|
-
if (value && search) {
|
|
1842
|
-
return strIndexOf(value, search) !== -1;
|
|
1843
|
-
}
|
|
1844
|
-
return false;
|
|
1845
|
-
}
|
|
1846
|
-
function getExceptionName(object) {
|
|
1847
|
-
if (isError(object)) {
|
|
1848
|
-
return object[_DYN_NAME ];
|
|
1849
|
-
}
|
|
1850
|
-
return STR_EMPTY;
|
|
1851
|
-
}
|
|
1852
|
-
function setValue(target, field, value, valChk, srcChk) {
|
|
1853
|
-
var theValue = value;
|
|
1854
|
-
if (target) {
|
|
1855
|
-
theValue = target[field];
|
|
1856
|
-
if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
|
|
1857
|
-
theValue = value;
|
|
1858
|
-
target[field] = theValue;
|
|
1859
|
-
}
|
|
1860
|
-
}
|
|
1861
|
-
return theValue;
|
|
1862
|
-
}
|
|
1863
|
-
function _createProxyFunction(source, funcName) {
|
|
1864
|
-
var srcFunc = null;
|
|
1865
|
-
var src = null;
|
|
1866
|
-
if (isFunction(source)) {
|
|
1867
|
-
srcFunc = source;
|
|
1868
|
-
}
|
|
1869
|
-
else {
|
|
1870
|
-
src = source;
|
|
1871
|
-
}
|
|
1872
|
-
return function () {
|
|
1873
|
-
var originalArguments = arguments;
|
|
1874
|
-
if (srcFunc) {
|
|
1875
|
-
src = srcFunc();
|
|
1876
|
-
}
|
|
1877
|
-
if (src) {
|
|
1878
|
-
return src[funcName][_DYN_APPLY ](src, originalArguments);
|
|
1879
|
-
}
|
|
1880
|
-
};
|
|
1881
|
-
}
|
|
1882
|
-
function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
|
|
1883
|
-
if (target && name && source) {
|
|
1884
|
-
if (overwriteTarget !== false || isUndefined(target[name])) {
|
|
1885
|
-
target[name] = _createProxyFunction(source, theFunc);
|
|
1886
|
-
}
|
|
1887
|
-
}
|
|
1888
|
-
}
|
|
1889
|
-
function proxyFunctions(target, source, functionsToProxy, overwriteTarget) {
|
|
1890
|
-
if (target && source && isObject(target) && isArray(functionsToProxy)) {
|
|
1891
|
-
arrForEach(functionsToProxy, function (theFuncName) {
|
|
1892
|
-
if (isString(theFuncName)) {
|
|
1893
|
-
proxyFunctionAs(target, theFuncName, source, theFuncName, overwriteTarget);
|
|
1894
|
-
}
|
|
1895
|
-
});
|
|
1896
|
-
}
|
|
1897
|
-
return target;
|
|
1898
|
-
}
|
|
1899
|
-
|
|
1900
|
-
var strLocation = "location";
|
|
1901
|
-
var strConsole = "console";
|
|
1902
|
-
var strJSON = "JSON";
|
|
1903
|
-
var strCrypto = "crypto";
|
|
1904
|
-
var strMsCrypto = "msCrypto";
|
|
1905
|
-
var strMsie = "msie";
|
|
1906
|
-
var strTrident = "trident/";
|
|
1907
|
-
var _isTrident;
|
|
1908
|
-
var _navUserAgentCheck;
|
|
1909
|
-
var _enableMocks = false;
|
|
1910
|
-
var _userAgent;
|
|
1911
|
-
function getUserAgentString() {
|
|
1912
|
-
if (!_userAgent) {
|
|
1913
|
-
_userAgent = getLazy(function () {
|
|
1914
|
-
var nav = getNavigator() || {};
|
|
1915
|
-
return nav[_DYN_USER_AGENT ] || STR_EMPTY;
|
|
1916
|
-
});
|
|
1917
|
-
}
|
|
1918
|
-
return _userAgent.v;
|
|
1919
|
-
}
|
|
1920
|
-
function getLocation(checkForMock) {
|
|
1921
|
-
if (checkForMock && _enableMocks) {
|
|
1922
|
-
var mockLocation = getInst("__mockLocation");
|
|
1923
|
-
if (mockLocation) {
|
|
1924
|
-
return mockLocation;
|
|
1925
|
-
}
|
|
1926
|
-
}
|
|
1927
|
-
if (typeof location === strShimObject && location) {
|
|
1928
|
-
return location;
|
|
1929
|
-
}
|
|
1930
|
-
return getInst(strLocation);
|
|
1931
|
-
}
|
|
1932
|
-
function getConsole() {
|
|
1933
|
-
if (typeof console !== strShimUndefined) {
|
|
1934
|
-
return console;
|
|
1935
|
-
}
|
|
1936
|
-
return getInst(strConsole);
|
|
1937
|
-
}
|
|
1938
|
-
function hasJSON() {
|
|
1939
|
-
return Boolean((typeof JSON === strShimObject && JSON) || getInst(strJSON) !== null);
|
|
1940
|
-
}
|
|
1941
|
-
function getJSON() {
|
|
1942
|
-
if (hasJSON()) {
|
|
1943
|
-
return JSON || getInst(strJSON);
|
|
1944
|
-
}
|
|
1945
|
-
return null;
|
|
1946
|
-
}
|
|
1947
|
-
function getCrypto() {
|
|
1948
|
-
return getInst(strCrypto);
|
|
1949
|
-
}
|
|
1950
|
-
function getMsCrypto() {
|
|
1951
|
-
return getInst(strMsCrypto);
|
|
1952
|
-
}
|
|
1953
|
-
function isIE() {
|
|
1954
|
-
var userAgent = getUserAgentString();
|
|
1955
|
-
if (!_isTrident || userAgent !== _navUserAgentCheck) {
|
|
1956
|
-
_navUserAgentCheck = userAgent;
|
|
1957
|
-
var lwrUserAgent = _navUserAgentCheck[_DYN_TO_LOWER_CASE ]();
|
|
1958
|
-
_isTrident = createCachedValue(strContains(lwrUserAgent, strMsie) || strContains(lwrUserAgent, strTrident));
|
|
1959
|
-
}
|
|
1960
|
-
return _isTrident.v;
|
|
1961
|
-
}
|
|
1962
|
-
|
|
1963
|
-
var UInt32Mask = 0x100000000;
|
|
1964
|
-
var MaxUInt32 = 0xffffffff;
|
|
1965
|
-
var SEED1 = 123456789;
|
|
1966
|
-
var SEED2 = 987654321;
|
|
1967
|
-
var _mwcSeeded = false;
|
|
1968
|
-
var _mwcW = SEED1;
|
|
1969
|
-
var _mwcZ = SEED2;
|
|
1970
|
-
function _mwcSeed(seedValue) {
|
|
1971
|
-
if (seedValue < 0) {
|
|
1972
|
-
seedValue >>>= 0;
|
|
1973
|
-
}
|
|
1974
|
-
_mwcW = (SEED1 + seedValue) & MaxUInt32;
|
|
1975
|
-
_mwcZ = (SEED2 - seedValue) & MaxUInt32;
|
|
1976
|
-
_mwcSeeded = true;
|
|
1977
|
-
}
|
|
1978
|
-
function _autoSeedMwc() {
|
|
1979
|
-
try {
|
|
1980
|
-
var now = utcNow() & 0x7fffffff;
|
|
1981
|
-
_mwcSeed(((mathRandom() * UInt32Mask) ^ now) + now);
|
|
1982
|
-
}
|
|
1983
|
-
catch (e) {
|
|
1984
|
-
}
|
|
1985
|
-
}
|
|
1986
|
-
function random32(signed) {
|
|
1987
|
-
var value = 0;
|
|
1988
|
-
var c = getCrypto() || getMsCrypto();
|
|
1989
|
-
if (c && c.getRandomValues) {
|
|
1990
|
-
value = c.getRandomValues(new Uint32Array(1))[0] & MaxUInt32;
|
|
1991
|
-
}
|
|
1992
|
-
if (value === 0 && isIE()) {
|
|
1993
|
-
if (!_mwcSeeded) {
|
|
1994
|
-
_autoSeedMwc();
|
|
1995
|
-
}
|
|
1996
|
-
value = mwcRandom32() & MaxUInt32;
|
|
1997
|
-
}
|
|
1998
|
-
if (value === 0) {
|
|
1999
|
-
value = mathFloor((UInt32Mask * mathRandom()) | 0);
|
|
2000
|
-
}
|
|
2001
|
-
if (!signed) {
|
|
2002
|
-
value >>>= 0;
|
|
2003
|
-
}
|
|
2004
|
-
return value;
|
|
2005
|
-
}
|
|
2006
|
-
function mwcRandom32(signed) {
|
|
2007
|
-
_mwcZ = (36969 * (_mwcZ & 0xFFFF) + (_mwcZ >> 16)) & MaxUInt32;
|
|
2008
|
-
_mwcW = (18000 * (_mwcW & 0xFFFF) + (_mwcW >> 16)) & MaxUInt32;
|
|
2009
|
-
var value = (((_mwcZ << 16) + (_mwcW & 0xFFFF)) >>> 0) & MaxUInt32 | 0;
|
|
2010
|
-
if (!signed) {
|
|
2011
|
-
value >>>= 0;
|
|
2012
|
-
}
|
|
2013
|
-
return value;
|
|
2014
|
-
}
|
|
2015
|
-
function newId(maxLength) {
|
|
2016
|
-
if (maxLength === void 0) { maxLength = 22; }
|
|
2017
|
-
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
2018
|
-
var number = random32() >>> 0;
|
|
2019
|
-
var chars = 0;
|
|
2020
|
-
var result = STR_EMPTY;
|
|
2021
|
-
while (result[_DYN_LENGTH ] < maxLength) {
|
|
2022
|
-
chars++;
|
|
2023
|
-
result += base64chars.charAt(number & 0x3F);
|
|
2024
|
-
number >>>= 6;
|
|
2025
|
-
if (chars === 5) {
|
|
2026
|
-
number = (((random32() << 2) & 0xFFFFFFFF) | (number & 0x03)) >>> 0;
|
|
2027
|
-
chars = 0;
|
|
2028
|
-
}
|
|
2029
|
-
}
|
|
2030
|
-
return result;
|
|
2031
|
-
}
|
|
2032
|
-
|
|
2033
|
-
var version = "3.4.4-nightly3.2608-08";
|
|
2034
|
-
var instanceName = "." + newId(6);
|
|
2035
|
-
var _dataUid = 0;
|
|
2036
|
-
function _canAcceptData(target) {
|
|
2037
|
-
return target.nodeType === 1 || target.nodeType === 9 || !(+target.nodeType);
|
|
2038
|
-
}
|
|
2039
|
-
function _getCache(data, target) {
|
|
2040
|
-
var theCache = target[data.id];
|
|
2041
|
-
if (!theCache) {
|
|
2042
|
-
theCache = {};
|
|
2043
|
-
try {
|
|
2044
|
-
if (_canAcceptData(target)) {
|
|
2045
|
-
objDefine(target, data.id, {
|
|
2046
|
-
e: false,
|
|
2047
|
-
v: theCache
|
|
2048
|
-
});
|
|
2049
|
-
}
|
|
2050
|
-
}
|
|
2051
|
-
catch (e) {
|
|
2052
|
-
}
|
|
2053
|
-
}
|
|
2054
|
-
return theCache;
|
|
2055
|
-
}
|
|
2056
|
-
function createUniqueNamespace(name, includeVersion) {
|
|
2057
|
-
if (includeVersion === void 0) { includeVersion = false; }
|
|
2058
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
2059
|
-
}
|
|
2060
|
-
function createElmNodeData(name) {
|
|
2061
|
-
var data = {
|
|
2062
|
-
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
2063
|
-
accept: function (target) {
|
|
2064
|
-
return _canAcceptData(target);
|
|
2065
|
-
},
|
|
2066
|
-
get: function (target, name, defValue, addDefault) {
|
|
2067
|
-
var theCache = target[data.id];
|
|
2068
|
-
if (!theCache) {
|
|
2069
|
-
if (addDefault) {
|
|
2070
|
-
theCache = _getCache(data, target);
|
|
2071
|
-
theCache[normalizeJsName(name)] = defValue;
|
|
2072
|
-
}
|
|
2073
|
-
return defValue;
|
|
2074
|
-
}
|
|
2075
|
-
return theCache[normalizeJsName(name)];
|
|
2076
|
-
},
|
|
2077
|
-
kill: function (target, name) {
|
|
2078
|
-
if (target && target[name]) {
|
|
2079
|
-
try {
|
|
2080
|
-
delete target[name];
|
|
2081
|
-
}
|
|
2082
|
-
catch (e) {
|
|
2083
|
-
}
|
|
2084
|
-
}
|
|
2085
|
-
}
|
|
2086
|
-
};
|
|
2087
|
-
return data;
|
|
2088
|
-
}
|
|
2089
|
-
|
|
2090
|
-
function _isConfigDefaults(value) {
|
|
2091
|
-
return (value && isObject(value) && !isArray(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
|
|
2092
|
-
}
|
|
2093
|
-
function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
|
|
2094
|
-
var defValue;
|
|
2095
|
-
var isDefaultValid = cfgDefaults.dfVal || isDefined;
|
|
2096
|
-
if (theConfig && cfgDefaults.fb) {
|
|
2097
|
-
var fallbacks = cfgDefaults.fb;
|
|
2098
|
-
if (!isArray(fallbacks)) {
|
|
2099
|
-
fallbacks = [fallbacks];
|
|
2100
|
-
}
|
|
2101
|
-
for (var lp = 0; lp < fallbacks[_DYN_LENGTH ]; lp++) {
|
|
2102
|
-
var fallback = fallbacks[lp];
|
|
2103
|
-
var fbValue = theConfig[fallback];
|
|
2104
|
-
if (isDefaultValid(fbValue)) {
|
|
2105
|
-
defValue = fbValue;
|
|
2106
|
-
}
|
|
2107
|
-
else if (dynamicHandler) {
|
|
2108
|
-
fbValue = dynamicHandler.cfg[fallback];
|
|
2109
|
-
if (isDefaultValid(fbValue)) {
|
|
2110
|
-
defValue = fbValue;
|
|
2111
|
-
}
|
|
2112
|
-
dynamicHandler.set(dynamicHandler.cfg, asString(fallback), fbValue);
|
|
2113
|
-
}
|
|
2114
|
-
if (isDefaultValid(defValue)) {
|
|
2115
|
-
break;
|
|
2116
|
-
}
|
|
2117
|
-
}
|
|
2118
|
-
}
|
|
2119
|
-
if (!isDefaultValid(defValue) && isDefaultValid(cfgDefaults.v)) {
|
|
2120
|
-
defValue = cfgDefaults.v;
|
|
2121
|
-
}
|
|
2122
|
-
return defValue;
|
|
2123
|
-
}
|
|
2124
|
-
function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
|
|
2125
|
-
var theValue = cfgDefaults;
|
|
2126
|
-
if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
|
|
2127
|
-
theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
|
|
2128
|
-
}
|
|
2129
|
-
if (theValue) {
|
|
2130
|
-
if (_isConfigDefaults(theValue)) {
|
|
2131
|
-
theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
|
|
2132
|
-
}
|
|
2133
|
-
var newValue_1;
|
|
2134
|
-
if (isArray(theValue)) {
|
|
2135
|
-
newValue_1 = [];
|
|
2136
|
-
newValue_1[_DYN_LENGTH ] = theValue[_DYN_LENGTH ];
|
|
2137
|
-
}
|
|
2138
|
-
else if (isPlainObject(theValue)) {
|
|
2139
|
-
newValue_1 = {};
|
|
2140
|
-
}
|
|
2141
|
-
if (newValue_1) {
|
|
2142
|
-
objForEachKey(theValue, function (key, value) {
|
|
2143
|
-
if (value && _isConfigDefaults(value)) {
|
|
2144
|
-
value = _resolveDefaultValue(dynamicHandler, theConfig, value);
|
|
2145
|
-
}
|
|
2146
|
-
newValue_1[key] = value;
|
|
2147
|
-
});
|
|
2148
|
-
theValue = newValue_1;
|
|
2149
|
-
}
|
|
2150
|
-
}
|
|
2151
|
-
return theValue;
|
|
2152
|
-
}
|
|
2153
|
-
function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
|
|
2154
|
-
var isValid;
|
|
2155
|
-
var setFn;
|
|
2156
|
-
var defValue;
|
|
2157
|
-
var cfgDefaults = defaultValue;
|
|
2158
|
-
var mergeDf;
|
|
2159
|
-
var reference;
|
|
2160
|
-
var readOnly;
|
|
2161
|
-
var blkDynamicValue;
|
|
2162
|
-
if (_isConfigDefaults(cfgDefaults)) {
|
|
2163
|
-
isValid = cfgDefaults.isVal;
|
|
2164
|
-
setFn = cfgDefaults.set;
|
|
2165
|
-
readOnly = cfgDefaults.rdOnly;
|
|
2166
|
-
blkDynamicValue = cfgDefaults.blkVal;
|
|
2167
|
-
mergeDf = cfgDefaults.mrg;
|
|
2168
|
-
reference = cfgDefaults.ref;
|
|
2169
|
-
if (!reference && isUndefined(reference)) {
|
|
2170
|
-
reference = !!mergeDf;
|
|
2171
|
-
}
|
|
2172
|
-
defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
|
|
2173
|
-
}
|
|
2174
|
-
else {
|
|
2175
|
-
defValue = defaultValue;
|
|
2176
|
-
}
|
|
2177
|
-
if (blkDynamicValue) {
|
|
2178
|
-
dynamicHandler.blkVal(theConfig, name);
|
|
2179
|
-
}
|
|
2180
|
-
var theValue;
|
|
2181
|
-
var usingDefault = true;
|
|
2182
|
-
var cfgValue = theConfig[name];
|
|
2183
|
-
if (cfgValue || !isNullOrUndefined(cfgValue)) {
|
|
2184
|
-
theValue = cfgValue;
|
|
2185
|
-
usingDefault = false;
|
|
2186
|
-
if (isValid && theValue !== defValue && !isValid(theValue)) {
|
|
2187
|
-
theValue = defValue;
|
|
2188
|
-
usingDefault = true;
|
|
2189
|
-
}
|
|
2190
|
-
if (setFn) {
|
|
2191
|
-
theValue = setFn(theValue, defValue, theConfig);
|
|
2192
|
-
usingDefault = theValue === defValue;
|
|
2193
|
-
}
|
|
2194
|
-
}
|
|
2195
|
-
if (!usingDefault) {
|
|
2196
|
-
if (isPlainObject(theValue) || isArray(defValue)) {
|
|
2197
|
-
if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
|
|
2198
|
-
objForEachKey(defValue, function (dfName, dfValue) {
|
|
2199
|
-
_applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
|
|
2200
|
-
});
|
|
2201
|
-
}
|
|
2202
|
-
}
|
|
2203
|
-
}
|
|
2204
|
-
else if (defValue) {
|
|
2205
|
-
theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
|
|
2206
|
-
}
|
|
2207
|
-
else {
|
|
2208
|
-
theValue = defValue;
|
|
2209
|
-
}
|
|
2210
|
-
dynamicHandler.set(theConfig, name, theValue);
|
|
2211
|
-
if (reference) {
|
|
2212
|
-
dynamicHandler.ref(theConfig, name);
|
|
2213
|
-
}
|
|
2214
|
-
if (readOnly) {
|
|
2215
|
-
dynamicHandler.rdOnly(theConfig, name);
|
|
2216
|
-
}
|
|
2217
|
-
}
|
|
2218
|
-
|
|
2219
|
-
var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
|
|
2220
|
-
var BLOCK_DYNAMIC = symbolFor("[[ai_blkDynCfg_1]]");
|
|
2221
|
-
var FORCE_DYNAMIC = symbolFor("[[ai_frcDynCfg_1]]");
|
|
2222
|
-
function _cfgDeepCopy(source) {
|
|
2223
|
-
if (source) {
|
|
2224
|
-
var target_1;
|
|
2225
|
-
if (isArray(source)) {
|
|
2226
|
-
target_1 = [];
|
|
2227
|
-
target_1[_DYN_LENGTH ] = source[_DYN_LENGTH ];
|
|
2228
|
-
}
|
|
2229
|
-
else if (isPlainObject(source)) {
|
|
2230
|
-
target_1 = {};
|
|
2231
|
-
}
|
|
2232
|
-
if (target_1) {
|
|
2233
|
-
objForEachKey(source, function (key, value) {
|
|
2234
|
-
target_1[key] = _cfgDeepCopy(value);
|
|
2235
|
-
});
|
|
2236
|
-
return target_1;
|
|
2237
|
-
}
|
|
2238
|
-
}
|
|
2239
|
-
return source;
|
|
2240
|
-
}
|
|
2241
|
-
function getDynamicConfigHandler(value) {
|
|
2242
|
-
if (value) {
|
|
2243
|
-
var handler = value[CFG_HANDLER_LINK] || value;
|
|
2244
|
-
if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
|
|
2245
|
-
return handler;
|
|
2246
|
-
}
|
|
2247
|
-
}
|
|
2248
|
-
return null;
|
|
2249
|
-
}
|
|
2250
|
-
function blockDynamicConversion(value) {
|
|
2251
|
-
if (value && (isPlainObject(value) || isArray(value))) {
|
|
2252
|
-
try {
|
|
2253
|
-
value[BLOCK_DYNAMIC] = true;
|
|
2254
|
-
}
|
|
2255
|
-
catch (e) {
|
|
2256
|
-
}
|
|
2257
|
-
}
|
|
2258
|
-
return value;
|
|
2259
|
-
}
|
|
2260
|
-
function _canMakeDynamic(getFunc, state, value) {
|
|
2261
|
-
var result = false;
|
|
2262
|
-
if (value && !getFunc[state.blkVal]) {
|
|
2263
|
-
result = value[FORCE_DYNAMIC];
|
|
2264
|
-
if (!result && !value[BLOCK_DYNAMIC]) {
|
|
2265
|
-
result = isPlainObject(value) || isArray(value);
|
|
2266
|
-
}
|
|
2267
|
-
}
|
|
2268
|
-
return result;
|
|
2269
|
-
}
|
|
2270
|
-
function throwInvalidAccess(message) {
|
|
2271
|
-
throwTypeError("InvalidAccess:" + message);
|
|
2272
|
-
}
|
|
2273
|
-
|
|
2274
|
-
var arrayMethodsToPatch = [
|
|
2275
|
-
"push",
|
|
2276
|
-
"pop",
|
|
2277
|
-
"shift",
|
|
2278
|
-
"unshift",
|
|
2279
|
-
"splice"
|
|
2280
|
-
];
|
|
2281
|
-
var _throwDynamicError = function (logger, name, desc, e) {
|
|
2282
|
-
logger && logger[_DYN_THROW_INTERNAL ](3 , 108 , "".concat(desc, " [").concat(name, "] failed - ") + dumpObj(e));
|
|
2283
|
-
};
|
|
2284
|
-
function _patchArray(state, target, name) {
|
|
2285
|
-
if (isArray(target)) {
|
|
2286
|
-
arrForEach(arrayMethodsToPatch, function (method) {
|
|
2287
|
-
var orgMethod = target[method];
|
|
2288
|
-
target[method] = function () {
|
|
2289
|
-
var args = [];
|
|
2290
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
2291
|
-
args[_i] = arguments[_i];
|
|
2292
|
-
}
|
|
2293
|
-
var result = orgMethod[_DYN_APPLY ](this, args);
|
|
2294
|
-
_makeDynamicObject(state, target, name, "Patching");
|
|
2295
|
-
return result;
|
|
2296
|
-
};
|
|
2297
|
-
});
|
|
2298
|
-
}
|
|
2299
|
-
}
|
|
2300
|
-
function _getOwnPropGetter(target, name) {
|
|
2301
|
-
var propDesc = objGetOwnPropertyDescriptor(target, name);
|
|
2302
|
-
return propDesc && propDesc.get;
|
|
2303
|
-
}
|
|
2304
|
-
function _createDynamicProperty(state, theConfig, name, value) {
|
|
2305
|
-
var detail = {
|
|
2306
|
-
n: name,
|
|
2307
|
-
h: [],
|
|
2308
|
-
trk: function (handler) {
|
|
2309
|
-
if (handler && handler.fn) {
|
|
2310
|
-
if (arrIndexOf(detail.h, handler) === -1) {
|
|
2311
|
-
detail.h[_DYN_PUSH ](handler);
|
|
2312
|
-
}
|
|
2313
|
-
state.trk(handler, detail);
|
|
2314
|
-
}
|
|
2315
|
-
},
|
|
2316
|
-
clr: function (handler) {
|
|
2317
|
-
var idx = arrIndexOf(detail.h, handler);
|
|
2318
|
-
if (idx !== -1) {
|
|
2319
|
-
detail.h[_DYN_SPLICE ](idx, 1);
|
|
2320
|
-
}
|
|
2321
|
-
}
|
|
2322
|
-
};
|
|
2323
|
-
var checkDynamic = true;
|
|
2324
|
-
var isObjectOrArray = false;
|
|
2325
|
-
function _getProperty() {
|
|
2326
|
-
if (checkDynamic) {
|
|
2327
|
-
isObjectOrArray = isObjectOrArray || _canMakeDynamic(_getProperty, state, value);
|
|
2328
|
-
if (value && !value[CFG_HANDLER_LINK] && isObjectOrArray) {
|
|
2329
|
-
value = _makeDynamicObject(state, value, name, "Converting");
|
|
2330
|
-
}
|
|
2331
|
-
checkDynamic = false;
|
|
2332
|
-
}
|
|
2333
|
-
var activeHandler = state.act;
|
|
2334
|
-
if (activeHandler) {
|
|
2335
|
-
detail.trk(activeHandler);
|
|
2336
|
-
}
|
|
2337
|
-
return value;
|
|
2338
|
-
}
|
|
2339
|
-
_getProperty[state.prop] = {
|
|
2340
|
-
chng: function () {
|
|
2341
|
-
state.add(detail);
|
|
2342
|
-
}
|
|
2343
|
-
};
|
|
2344
|
-
function _setProperty(newValue) {
|
|
2345
|
-
if (value !== newValue) {
|
|
2346
|
-
if (!!_getProperty[state.ro] && !state.upd) {
|
|
2347
|
-
throwInvalidAccess("[" + name + "] is read-only:" + dumpObj(theConfig));
|
|
2348
|
-
}
|
|
2349
|
-
if (checkDynamic) {
|
|
2350
|
-
isObjectOrArray = isObjectOrArray || _canMakeDynamic(_getProperty, state, value);
|
|
2351
|
-
checkDynamic = false;
|
|
2352
|
-
}
|
|
2353
|
-
var isReferenced = isObjectOrArray && _getProperty[state.rf];
|
|
2354
|
-
if (isObjectOrArray) {
|
|
2355
|
-
if (isReferenced) {
|
|
2356
|
-
objForEachKey(value, function (key) {
|
|
2357
|
-
value[key] = newValue ? newValue[key] : UNDEFINED_VALUE;
|
|
2358
|
-
});
|
|
2359
|
-
try {
|
|
2360
|
-
objForEachKey(newValue, function (key, theValue) {
|
|
2361
|
-
_setDynamicProperty(state, value, key, theValue);
|
|
2362
|
-
});
|
|
2363
|
-
newValue = value;
|
|
2364
|
-
}
|
|
2365
|
-
catch (e) {
|
|
2366
|
-
_throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, "Assigning", e);
|
|
2367
|
-
isObjectOrArray = false;
|
|
2368
|
-
}
|
|
2369
|
-
}
|
|
2370
|
-
else if (value && value[CFG_HANDLER_LINK]) {
|
|
2371
|
-
objForEachKey(value, function (key) {
|
|
2372
|
-
var getter = _getOwnPropGetter(value, key);
|
|
2373
|
-
if (getter) {
|
|
2374
|
-
var valueState = getter[state.prop];
|
|
2375
|
-
valueState && valueState.chng();
|
|
2376
|
-
}
|
|
2377
|
-
});
|
|
2378
|
-
}
|
|
2379
|
-
}
|
|
2380
|
-
if (newValue !== value) {
|
|
2381
|
-
var newIsObjectOrArray = newValue && _canMakeDynamic(_getProperty, state, newValue);
|
|
2382
|
-
if (!isReferenced && newIsObjectOrArray) {
|
|
2383
|
-
newValue = _makeDynamicObject(state, newValue, name, "Converting");
|
|
2384
|
-
}
|
|
2385
|
-
value = newValue;
|
|
2386
|
-
isObjectOrArray = newIsObjectOrArray;
|
|
2387
|
-
}
|
|
2388
|
-
state.add(detail);
|
|
2389
|
-
}
|
|
2390
|
-
}
|
|
2391
|
-
objDefine(theConfig, detail.n, { g: _getProperty, s: _setProperty });
|
|
2392
|
-
}
|
|
2393
|
-
function _setDynamicProperty(state, target, name, value) {
|
|
2394
|
-
if (target) {
|
|
2395
|
-
var getter = _getOwnPropGetter(target, name);
|
|
2396
|
-
var isDynamic = getter && !!getter[state.prop];
|
|
2397
|
-
if (!isDynamic) {
|
|
2398
|
-
_createDynamicProperty(state, target, name, value);
|
|
2399
|
-
}
|
|
2400
|
-
else {
|
|
2401
|
-
target[name] = value;
|
|
2402
|
-
}
|
|
2403
|
-
}
|
|
2404
|
-
return target;
|
|
2405
|
-
}
|
|
2406
|
-
function _setDynamicPropertyState(state, target, name, flags) {
|
|
2407
|
-
if (target) {
|
|
2408
|
-
var getter = _getOwnPropGetter(target, name);
|
|
2409
|
-
var isDynamic = getter && !!getter[state.prop];
|
|
2410
|
-
var inPlace = flags && flags[0 ];
|
|
2411
|
-
var rdOnly = flags && flags[1 ];
|
|
2412
|
-
var blkProp = flags && flags[2 ];
|
|
2413
|
-
if (!isDynamic) {
|
|
2414
|
-
if (blkProp) {
|
|
2415
|
-
try {
|
|
2416
|
-
blockDynamicConversion(target);
|
|
2417
|
-
}
|
|
2418
|
-
catch (e) {
|
|
2419
|
-
_throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, "Blocking", e);
|
|
2420
|
-
}
|
|
2421
|
-
}
|
|
2422
|
-
try {
|
|
2423
|
-
_setDynamicProperty(state, target, name, target[name]);
|
|
2424
|
-
getter = _getOwnPropGetter(target, name);
|
|
2425
|
-
}
|
|
2426
|
-
catch (e) {
|
|
2427
|
-
_throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, "State", e);
|
|
2428
|
-
}
|
|
2429
|
-
}
|
|
2430
|
-
if (inPlace) {
|
|
2431
|
-
getter[state.rf] = inPlace;
|
|
2432
|
-
}
|
|
2433
|
-
if (rdOnly) {
|
|
2434
|
-
getter[state.ro] = rdOnly;
|
|
2435
|
-
}
|
|
2436
|
-
if (blkProp) {
|
|
2437
|
-
getter[state.blkVal] = true;
|
|
2438
|
-
}
|
|
2439
|
-
}
|
|
2440
|
-
return target;
|
|
2441
|
-
}
|
|
2442
|
-
function _makeDynamicObject(state, target, name, desc) {
|
|
2443
|
-
try {
|
|
2444
|
-
objForEachKey(target, function (key, value) {
|
|
2445
|
-
_setDynamicProperty(state, target, key, value);
|
|
2446
|
-
});
|
|
2447
|
-
if (!target[CFG_HANDLER_LINK]) {
|
|
2448
|
-
objDefineProp(target, CFG_HANDLER_LINK, {
|
|
2449
|
-
get: function () {
|
|
2450
|
-
return state.hdlr;
|
|
2451
|
-
}
|
|
2452
|
-
});
|
|
2453
|
-
_patchArray(state, target, name);
|
|
2454
|
-
}
|
|
2455
|
-
}
|
|
2456
|
-
catch (e) {
|
|
2457
|
-
_throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, desc, e);
|
|
2458
|
-
}
|
|
2459
|
-
return target;
|
|
2460
|
-
}
|
|
2461
|
-
|
|
2462
|
-
var symPrefix = "[[ai_";
|
|
2463
|
-
var symPostfix = "]]";
|
|
2464
|
-
function _createState(cfgHandler) {
|
|
2465
|
-
var dynamicPropertySymbol = newSymbol(symPrefix + "get" + cfgHandler.uid + symPostfix);
|
|
2466
|
-
var dynamicPropertyReadOnly = newSymbol(symPrefix + "ro" + cfgHandler.uid + symPostfix);
|
|
2467
|
-
var dynamicPropertyReferenced = newSymbol(symPrefix + "rf" + cfgHandler.uid + symPostfix);
|
|
2468
|
-
var dynamicPropertyBlockValue = newSymbol(symPrefix + "blkVal" + cfgHandler.uid + symPostfix);
|
|
2469
|
-
var dynamicPropertyDetail = newSymbol(symPrefix + "dtl" + cfgHandler.uid + symPostfix);
|
|
2470
|
-
var _waitingHandlers = null;
|
|
2471
|
-
var _watcherTimer = null;
|
|
2472
|
-
var theState;
|
|
2473
|
-
function _useHandler(activeHandler, callback) {
|
|
2474
|
-
var prevWatcher = theState.act;
|
|
2475
|
-
try {
|
|
2476
|
-
theState.act = activeHandler;
|
|
2477
|
-
if (activeHandler && activeHandler[dynamicPropertyDetail]) {
|
|
2478
|
-
arrForEach(activeHandler[dynamicPropertyDetail], function (detail) {
|
|
2479
|
-
detail.clr(activeHandler);
|
|
2480
|
-
});
|
|
2481
|
-
activeHandler[dynamicPropertyDetail] = [];
|
|
2482
|
-
}
|
|
2483
|
-
callback({
|
|
2484
|
-
cfg: cfgHandler.cfg,
|
|
2485
|
-
set: cfgHandler.set.bind(cfgHandler),
|
|
2486
|
-
setDf: cfgHandler.setDf.bind(cfgHandler),
|
|
2487
|
-
ref: cfgHandler.ref.bind(cfgHandler),
|
|
2488
|
-
rdOnly: cfgHandler.rdOnly.bind(cfgHandler)
|
|
2489
|
-
});
|
|
2490
|
-
}
|
|
2491
|
-
catch (e) {
|
|
2492
|
-
var logger = cfgHandler[_DYN_LOGGER ];
|
|
2493
|
-
if (logger) {
|
|
2494
|
-
logger[_DYN_THROW_INTERNAL ](1 , 107 , dumpObj(e));
|
|
2495
|
-
}
|
|
2496
|
-
throw e;
|
|
2497
|
-
}
|
|
2498
|
-
finally {
|
|
2499
|
-
theState.act = prevWatcher || null;
|
|
2500
|
-
}
|
|
2501
|
-
}
|
|
2502
|
-
function _notifyWatchers() {
|
|
2503
|
-
if (_waitingHandlers) {
|
|
2504
|
-
var notifyHandlers = _waitingHandlers;
|
|
2505
|
-
_waitingHandlers = null;
|
|
2506
|
-
_watcherTimer && _watcherTimer[_DYN_CANCEL ]();
|
|
2507
|
-
_watcherTimer = null;
|
|
2508
|
-
var watcherFailures_1 = [];
|
|
2509
|
-
arrForEach(notifyHandlers, function (handler) {
|
|
2510
|
-
if (handler) {
|
|
2511
|
-
if (handler[dynamicPropertyDetail]) {
|
|
2512
|
-
arrForEach(handler[dynamicPropertyDetail], function (detail) {
|
|
2513
|
-
detail.clr(handler);
|
|
2514
|
-
});
|
|
2515
|
-
handler[dynamicPropertyDetail] = null;
|
|
2516
|
-
}
|
|
2517
|
-
if (handler.fn) {
|
|
2518
|
-
try {
|
|
2519
|
-
_useHandler(handler, handler.fn);
|
|
2520
|
-
}
|
|
2521
|
-
catch (e) {
|
|
2522
|
-
watcherFailures_1[_DYN_PUSH ](e);
|
|
2523
|
-
}
|
|
2524
|
-
}
|
|
2525
|
-
}
|
|
2526
|
-
});
|
|
2527
|
-
if (_waitingHandlers) {
|
|
2528
|
-
try {
|
|
2529
|
-
_notifyWatchers();
|
|
2530
|
-
}
|
|
2531
|
-
catch (e) {
|
|
2532
|
-
watcherFailures_1[_DYN_PUSH ](e);
|
|
2533
|
-
}
|
|
2534
|
-
}
|
|
2535
|
-
if (watcherFailures_1[_DYN_LENGTH ] > 0) {
|
|
2536
|
-
throwAggregationError("Watcher error(s): ", watcherFailures_1);
|
|
2537
|
-
}
|
|
2538
|
-
}
|
|
2539
|
-
}
|
|
2540
|
-
function _addWatcher(detail) {
|
|
2541
|
-
if (detail && detail.h[_DYN_LENGTH ] > 0) {
|
|
2542
|
-
if (!_waitingHandlers) {
|
|
2543
|
-
_waitingHandlers = [];
|
|
2544
|
-
}
|
|
2545
|
-
if (!_watcherTimer) {
|
|
2546
|
-
_watcherTimer = scheduleTimeout(function () {
|
|
2547
|
-
_watcherTimer = null;
|
|
2548
|
-
_notifyWatchers();
|
|
2549
|
-
}, 0);
|
|
2550
|
-
}
|
|
2551
|
-
for (var idx = 0; idx < detail.h[_DYN_LENGTH ]; idx++) {
|
|
2552
|
-
var handler = detail.h[idx];
|
|
2553
|
-
if (handler && arrIndexOf(_waitingHandlers, handler) === -1) {
|
|
2554
|
-
_waitingHandlers[_DYN_PUSH ](handler);
|
|
2555
|
-
}
|
|
2556
|
-
}
|
|
2557
|
-
}
|
|
2558
|
-
}
|
|
2559
|
-
function _trackHandler(handler, detail) {
|
|
2560
|
-
if (handler) {
|
|
2561
|
-
var details = handler[dynamicPropertyDetail] = handler[dynamicPropertyDetail] || [];
|
|
2562
|
-
if (arrIndexOf(details, detail) === -1) {
|
|
2563
|
-
details[_DYN_PUSH ](detail);
|
|
2564
|
-
}
|
|
2565
|
-
}
|
|
2566
|
-
}
|
|
2567
|
-
theState = {
|
|
2568
|
-
prop: dynamicPropertySymbol,
|
|
2569
|
-
ro: dynamicPropertyReadOnly,
|
|
2570
|
-
rf: dynamicPropertyReferenced,
|
|
2571
|
-
blkVal: dynamicPropertyBlockValue,
|
|
2572
|
-
hdlr: cfgHandler,
|
|
2573
|
-
add: _addWatcher,
|
|
2574
|
-
notify: _notifyWatchers,
|
|
2575
|
-
use: _useHandler,
|
|
2576
|
-
trk: _trackHandler
|
|
2577
|
-
};
|
|
2578
|
-
return theState;
|
|
2579
|
-
}
|
|
2580
|
-
|
|
2581
|
-
function _createAndUseHandler(state, configHandler) {
|
|
2582
|
-
var handler = {
|
|
2583
|
-
fn: configHandler,
|
|
2584
|
-
rm: function () {
|
|
2585
|
-
handler.fn = null;
|
|
2586
|
-
state = null;
|
|
2587
|
-
configHandler = null;
|
|
2588
|
-
}
|
|
2589
|
-
};
|
|
2590
|
-
objDefine(handler, "toJSON", { v: function () { return "WatcherHandler" + (handler.fn ? STR_EMPTY : "[X]"); } });
|
|
2591
|
-
state.use(handler, configHandler);
|
|
2592
|
-
return handler;
|
|
2593
|
-
}
|
|
2594
|
-
function _createDynamicHandler(logger, target, inPlace) {
|
|
2595
|
-
var dynamicHandler = getDynamicConfigHandler(target);
|
|
2596
|
-
if (dynamicHandler) {
|
|
2597
|
-
return dynamicHandler;
|
|
2598
|
-
}
|
|
2599
|
-
var uid = createUniqueNamespace("dyncfg", true);
|
|
2600
|
-
var newTarget = (target && inPlace !== false) ? target : _cfgDeepCopy(target);
|
|
2601
|
-
var theState;
|
|
2602
|
-
function _notifyWatchers() {
|
|
2603
|
-
theState.notify();
|
|
2604
|
-
}
|
|
2605
|
-
function _setValue(target, name, value) {
|
|
2606
|
-
try {
|
|
2607
|
-
target = _setDynamicProperty(theState, target, name, value);
|
|
2608
|
-
}
|
|
2609
|
-
catch (e) {
|
|
2610
|
-
_throwDynamicError(logger, name, "Setting value", e);
|
|
2611
|
-
}
|
|
2612
|
-
return target[name];
|
|
2613
|
-
}
|
|
2614
|
-
function _watch(configHandler) {
|
|
2615
|
-
return _createAndUseHandler(theState, configHandler);
|
|
2616
|
-
}
|
|
2617
|
-
function _block(configHandler, allowUpdate) {
|
|
2618
|
-
theState.use(null, function (details) {
|
|
2619
|
-
var prevUpd = theState.upd;
|
|
2620
|
-
try {
|
|
2621
|
-
if (!isUndefined(allowUpdate)) {
|
|
2622
|
-
theState.upd = allowUpdate;
|
|
2623
|
-
}
|
|
2624
|
-
configHandler(details);
|
|
2625
|
-
}
|
|
2626
|
-
finally {
|
|
2627
|
-
theState.upd = prevUpd;
|
|
2628
|
-
}
|
|
2629
|
-
});
|
|
2630
|
-
}
|
|
2631
|
-
function _ref(target, name) {
|
|
2632
|
-
var _a;
|
|
2633
|
-
return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[0 ] = true, _a))[name];
|
|
2634
|
-
}
|
|
2635
|
-
function _rdOnly(target, name) {
|
|
2636
|
-
var _a;
|
|
2637
|
-
return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[1 ] = true, _a))[name];
|
|
2638
|
-
}
|
|
2639
|
-
function _blkPropValue(target, name) {
|
|
2640
|
-
var _a;
|
|
2641
|
-
return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[2 ] = true, _a))[name];
|
|
2642
|
-
}
|
|
2643
|
-
function _applyDefaults(theConfig, defaultValues) {
|
|
2644
|
-
if (defaultValues) {
|
|
2645
|
-
objForEachKey(defaultValues, function (name, value) {
|
|
2646
|
-
_applyDefaultValue(cfgHandler, theConfig, name, value);
|
|
2647
|
-
});
|
|
2648
|
-
}
|
|
2649
|
-
return theConfig;
|
|
2650
|
-
}
|
|
2651
|
-
var cfgHandler = {
|
|
2652
|
-
uid: null,
|
|
2653
|
-
cfg: newTarget,
|
|
2654
|
-
logger: logger,
|
|
2655
|
-
notify: _notifyWatchers,
|
|
2656
|
-
set: _setValue,
|
|
2657
|
-
setDf: _applyDefaults,
|
|
2658
|
-
watch: _watch,
|
|
2659
|
-
ref: _ref,
|
|
2660
|
-
rdOnly: _rdOnly,
|
|
2661
|
-
blkVal: _blkPropValue,
|
|
2662
|
-
_block: _block
|
|
2663
|
-
};
|
|
2664
|
-
objDefine(cfgHandler, "uid", {
|
|
2665
|
-
c: false,
|
|
2666
|
-
e: false,
|
|
2667
|
-
w: false,
|
|
2668
|
-
v: uid
|
|
2669
|
-
});
|
|
2670
|
-
theState = _createState(cfgHandler);
|
|
2671
|
-
_makeDynamicObject(theState, newTarget, "config", "Creating");
|
|
2672
|
-
return cfgHandler;
|
|
2673
|
-
}
|
|
2674
|
-
function _logInvalidAccess(logger, message) {
|
|
2675
|
-
if (logger) {
|
|
2676
|
-
logger[_DYN_WARN_TO_CONSOLE ](message);
|
|
2677
|
-
logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
|
|
2678
|
-
}
|
|
2679
|
-
else {
|
|
2680
|
-
throwInvalidAccess(message);
|
|
2681
|
-
}
|
|
2682
|
-
}
|
|
2683
|
-
function createDynamicConfig(config, defaultConfig, logger, inPlace) {
|
|
2684
|
-
var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
|
|
2685
|
-
if (defaultConfig) {
|
|
2686
|
-
dynamicHandler.setDf(dynamicHandler.cfg, defaultConfig);
|
|
2687
|
-
}
|
|
2688
|
-
return dynamicHandler;
|
|
2689
|
-
}
|
|
2690
|
-
function onConfigChange(config, configHandler, logger) {
|
|
2691
|
-
var handler = config[CFG_HANDLER_LINK] || config;
|
|
2692
|
-
if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
|
|
2693
|
-
return handler[_DYN_WATCH ](configHandler);
|
|
2694
|
-
}
|
|
2695
|
-
_logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
|
|
2696
|
-
return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
|
|
2697
|
-
}
|
|
2698
|
-
|
|
2699
|
-
var _aiNamespace = null;
|
|
2700
|
-
function _getExtensionNamespace() {
|
|
2701
|
-
var target = getInst("Microsoft");
|
|
2702
|
-
if (target) {
|
|
2703
|
-
_aiNamespace = target["ApplicationInsights"];
|
|
2704
|
-
}
|
|
2705
|
-
return _aiNamespace;
|
|
2706
|
-
}
|
|
2707
|
-
function getDebugExt(config) {
|
|
2708
|
-
var ns = _aiNamespace;
|
|
2709
|
-
if (!ns && config.disableDbgExt !== true) {
|
|
2710
|
-
ns = _aiNamespace || _getExtensionNamespace();
|
|
2711
|
-
}
|
|
2712
|
-
return ns ? ns["ChromeDbgExt"] : null;
|
|
2713
|
-
}
|
|
2714
|
-
|
|
2715
|
-
var _a$2;
|
|
2716
|
-
var STR_WARN_TO_CONSOLE = "warnToConsole";
|
|
2717
|
-
var AiNonUserActionablePrefix = "AI (Internal): ";
|
|
2718
|
-
var AiUserActionablePrefix = "AI: ";
|
|
2719
|
-
var AIInternalMessagePrefix = "AITR_";
|
|
2720
|
-
var defaultValues$1 = {
|
|
2721
|
-
loggingLevelConsole: 0,
|
|
2722
|
-
loggingLevelTelemetry: 1,
|
|
2723
|
-
maxMessageLimit: 25,
|
|
2724
|
-
enableDebug: false
|
|
2725
|
-
};
|
|
2726
|
-
var _logFuncs = (_a$2 = {},
|
|
2727
|
-
_a$2[0 ] = null,
|
|
2728
|
-
_a$2[1 ] = "errorToConsole",
|
|
2729
|
-
_a$2[2 ] = STR_WARN_TO_CONSOLE,
|
|
2730
|
-
_a$2[3 ] = "debugToConsole",
|
|
2731
|
-
_a$2);
|
|
2732
|
-
function _sanitizeDiagnosticText(text) {
|
|
2733
|
-
if (text) {
|
|
2734
|
-
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
2735
|
-
}
|
|
2736
|
-
return STR_EMPTY;
|
|
2737
|
-
}
|
|
2738
|
-
function _logToConsole(func, message) {
|
|
2739
|
-
var theConsole = getConsole();
|
|
2740
|
-
if (!!theConsole) {
|
|
2741
|
-
var logFunc = "log";
|
|
2742
|
-
if (theConsole[func]) {
|
|
2743
|
-
logFunc = func;
|
|
2744
|
-
}
|
|
2745
|
-
if (isFunction(theConsole[logFunc])) {
|
|
2746
|
-
theConsole[logFunc](message);
|
|
2747
|
-
}
|
|
2748
|
-
}
|
|
2749
|
-
}
|
|
2750
|
-
var _InternalLogMessage = /** @class */ (function () {
|
|
2751
|
-
function _InternalLogMessage(msgId, msg, isUserAct, properties) {
|
|
2752
|
-
if (isUserAct === void 0) { isUserAct = false; }
|
|
2753
|
-
var _self = this;
|
|
2754
|
-
_self[_DYN_MESSAGE_ID ] = msgId;
|
|
2755
|
-
_self[_DYN_MESSAGE ] =
|
|
2756
|
-
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
2757
|
-
msgId;
|
|
2758
|
-
var strProps = STR_EMPTY;
|
|
2759
|
-
if (hasJSON()) {
|
|
2760
|
-
strProps = getJSON()[_DYN_STRINGIFY ](properties);
|
|
2761
|
-
}
|
|
2762
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
2763
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
2764
|
-
_self[_DYN_MESSAGE ] += diagnosticText;
|
|
2765
|
-
}
|
|
2766
|
-
_InternalLogMessage.dataType = "MessageData";
|
|
2767
|
-
return _InternalLogMessage;
|
|
2768
|
-
}());
|
|
2769
|
-
function safeGetLogger(core, config) {
|
|
2770
|
-
return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config || (core || {})[_DYN_CONFIG ]);
|
|
2771
|
-
}
|
|
2772
|
-
var DiagnosticLogger = /** @class */ (function () {
|
|
2773
|
-
function DiagnosticLogger(config) {
|
|
2774
|
-
this.identifier = "DiagnosticLogger";
|
|
2775
|
-
this.queue = [];
|
|
2776
|
-
var _messageCount = 0;
|
|
2777
|
-
var _messageLogged = {};
|
|
2778
|
-
var _loggingLevelConsole;
|
|
2779
|
-
var _loggingLevelTelemetry;
|
|
2780
|
-
var _maxInternalMessageLimit;
|
|
2781
|
-
var _enableDebug;
|
|
2782
|
-
var _unloadHandler;
|
|
2783
|
-
dynamicProto(DiagnosticLogger, this, function (_self) {
|
|
2784
|
-
_unloadHandler = _setDefaultsFromConfig(config || {});
|
|
2785
|
-
_self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
|
|
2786
|
-
_self[_DYN_THROW_INTERNAL ] = function (severity, msgId, msg, properties, isUserAct) {
|
|
2787
|
-
if (isUserAct === void 0) { isUserAct = false; }
|
|
2788
|
-
var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
|
|
2789
|
-
if (_enableDebug) {
|
|
2790
|
-
throw dumpObj(message);
|
|
2791
|
-
}
|
|
2792
|
-
else {
|
|
2793
|
-
var logFunc = _logFuncs[severity] || STR_WARN_TO_CONSOLE;
|
|
2794
|
-
if (!isUndefined(message[_DYN_MESSAGE ])) {
|
|
2795
|
-
if (isUserAct) {
|
|
2796
|
-
var messageKey = +message[_DYN_MESSAGE_ID ];
|
|
2797
|
-
if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
|
|
2798
|
-
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
2799
|
-
_messageLogged[messageKey] = true;
|
|
2800
|
-
}
|
|
2801
|
-
}
|
|
2802
|
-
else {
|
|
2803
|
-
if (_loggingLevelConsole >= severity) {
|
|
2804
|
-
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
2805
|
-
}
|
|
2806
|
-
}
|
|
2807
|
-
_logInternalMessage(severity, message);
|
|
2808
|
-
}
|
|
2809
|
-
else {
|
|
2810
|
-
_debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
|
|
2811
|
-
}
|
|
2812
|
-
}
|
|
2813
|
-
};
|
|
2814
|
-
_self.debugToConsole = function (message) {
|
|
2815
|
-
_logToConsole("debug", message);
|
|
2816
|
-
_debugExtMsg("warning", message);
|
|
2817
|
-
};
|
|
2818
|
-
_self[_DYN_WARN_TO_CONSOLE ] = function (message) {
|
|
2819
|
-
_logToConsole("warn", message);
|
|
2820
|
-
_debugExtMsg("warning", message);
|
|
2821
|
-
};
|
|
2822
|
-
_self.errorToConsole = function (message) {
|
|
2823
|
-
_logToConsole("error", message);
|
|
2824
|
-
_debugExtMsg("error", message);
|
|
2825
|
-
};
|
|
2826
|
-
_self.resetInternalMessageCount = function () {
|
|
2827
|
-
_messageCount = 0;
|
|
2828
|
-
_messageLogged = {};
|
|
2829
|
-
};
|
|
2830
|
-
_self.logInternalMessage = _logInternalMessage;
|
|
2831
|
-
_self[_DYN_UNLOAD ] = function (isAsync) {
|
|
2832
|
-
_unloadHandler && _unloadHandler.rm();
|
|
2833
|
-
_unloadHandler = null;
|
|
2834
|
-
};
|
|
2835
|
-
objDefine(_self, "dbgMode", {
|
|
2836
|
-
g: function () { return _enableDebug; }
|
|
2837
|
-
});
|
|
2838
|
-
function _logInternalMessage(severity, message) {
|
|
2839
|
-
if (_areInternalMessagesThrottled()) {
|
|
2840
|
-
return;
|
|
2841
|
-
}
|
|
2842
|
-
var logMessage = true;
|
|
2843
|
-
var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
|
|
2844
|
-
if (_messageLogged[messageKey]) {
|
|
2845
|
-
logMessage = false;
|
|
2846
|
-
}
|
|
2847
|
-
else {
|
|
2848
|
-
_messageLogged[messageKey] = true;
|
|
2849
|
-
}
|
|
2850
|
-
if (logMessage) {
|
|
2851
|
-
if (severity <= _loggingLevelTelemetry) {
|
|
2852
|
-
_self.queue[_DYN_PUSH ](message);
|
|
2853
|
-
_messageCount++;
|
|
2854
|
-
_debugExtMsg((severity === 1 ? "error" : "warn"), message);
|
|
2855
|
-
}
|
|
2856
|
-
if (_messageCount === _maxInternalMessageLimit) {
|
|
2857
|
-
var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
|
|
2858
|
-
var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
|
|
2859
|
-
_self.queue[_DYN_PUSH ](throttleMessage);
|
|
2860
|
-
if (severity === 1 ) {
|
|
2861
|
-
_self.errorToConsole(throttleLimitMessage);
|
|
2862
|
-
}
|
|
2863
|
-
else {
|
|
2864
|
-
_self[_DYN_WARN_TO_CONSOLE ](throttleLimitMessage);
|
|
2865
|
-
}
|
|
2866
|
-
}
|
|
2867
|
-
}
|
|
2868
|
-
}
|
|
2869
|
-
function _setDefaultsFromConfig(config) {
|
|
2870
|
-
return onConfigChange(createDynamicConfig(config, defaultValues$1, _self).cfg, function (details) {
|
|
2871
|
-
var config = details.cfg;
|
|
2872
|
-
_loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 ];
|
|
2873
|
-
_loggingLevelTelemetry = config.loggingLevelTelemetry;
|
|
2874
|
-
_maxInternalMessageLimit = config.maxMessageLimit;
|
|
2875
|
-
_enableDebug = config.enableDebug;
|
|
2876
|
-
});
|
|
2877
|
-
}
|
|
2878
|
-
function _areInternalMessagesThrottled() {
|
|
2879
|
-
return _messageCount >= _maxInternalMessageLimit;
|
|
2880
|
-
}
|
|
2881
|
-
function _debugExtMsg(name, data) {
|
|
2882
|
-
var dbgExt = getDebugExt(config || {});
|
|
2883
|
-
if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
|
|
2884
|
-
dbgExt[_DYN_DIAG_LOG ](name, data);
|
|
2885
|
-
}
|
|
2886
|
-
}
|
|
2887
|
-
});
|
|
2888
|
-
}
|
|
2889
|
-
DiagnosticLogger.__ieDyn=1;
|
|
2890
|
-
return DiagnosticLogger;
|
|
2891
|
-
}());
|
|
2892
|
-
function _getLogger(logger) {
|
|
2893
|
-
return (logger || new DiagnosticLogger());
|
|
2894
|
-
}
|
|
2895
|
-
function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
|
|
2896
|
-
if (isUserAct === void 0) { isUserAct = false; }
|
|
2897
|
-
_getLogger(logger)[_DYN_THROW_INTERNAL ](severity, msgId, msg, properties, isUserAct);
|
|
2898
|
-
}
|
|
2899
|
-
|
|
2900
|
-
function _noopVoid() {
|
|
2901
|
-
}
|
|
2902
|
-
|
|
2903
|
-
var _a$1, _b;
|
|
2904
|
-
var strToGMTString = "toGMTString";
|
|
2905
|
-
var strToUTCString = "toUTCString";
|
|
2906
|
-
var strCookie = "cookie";
|
|
2907
|
-
var strExpires = "expires";
|
|
2908
|
-
var strIsCookieUseDisabled = "isCookieUseDisabled";
|
|
2909
|
-
var strDisableCookiesUsage = "disableCookiesUsage";
|
|
2910
|
-
var strConfigCookieMgr = "_ckMgr";
|
|
2911
|
-
var _supportsCookies = null;
|
|
2912
|
-
var _allowUaSameSite = null;
|
|
2913
|
-
var _parsedCookieValue = null;
|
|
2914
|
-
var _doc;
|
|
2915
|
-
var _cookieCache = {};
|
|
2916
|
-
var _globalCookieConfig = {};
|
|
2917
|
-
var rootDefaultConfig = (_a$1 = {
|
|
2918
|
-
cookieCfg: cfgDfMerge((_b = {},
|
|
2919
|
-
_b[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
|
|
2920
|
-
_b.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
|
|
2921
|
-
_b.enabled = UNDEFINED_VALUE,
|
|
2922
|
-
_b.ignoreCookies = UNDEFINED_VALUE,
|
|
2923
|
-
_b.blockedCookies = UNDEFINED_VALUE,
|
|
2924
|
-
_b.disableCookieDefer = false,
|
|
2925
|
-
_b)),
|
|
2926
|
-
cookieDomain: UNDEFINED_VALUE,
|
|
2927
|
-
cookiePath: UNDEFINED_VALUE
|
|
2928
|
-
},
|
|
2929
|
-
_a$1[strDisableCookiesUsage] = UNDEFINED_VALUE,
|
|
2930
|
-
_a$1);
|
|
2931
|
-
function _getDoc() {
|
|
2932
|
-
!_doc && (_doc = getLazy(function () { return getDocument(); }));
|
|
2933
|
-
}
|
|
2934
|
-
function _gblCookieMgr(config, logger) {
|
|
2935
|
-
var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
|
|
2936
|
-
if (!inst) {
|
|
2937
|
-
inst = createCookieMgr[strConfigCookieMgr] = createCookieMgr(config, logger);
|
|
2938
|
-
_globalCookieConfig[strConfigCookieMgr] = inst;
|
|
2939
|
-
}
|
|
2940
|
-
return inst;
|
|
2941
|
-
}
|
|
2942
|
-
function _isMgrEnabled(cookieMgr) {
|
|
2943
|
-
if (cookieMgr) {
|
|
2944
|
-
return cookieMgr.isEnabled();
|
|
2945
|
-
}
|
|
2946
|
-
return true;
|
|
2947
|
-
}
|
|
2948
|
-
function _isIgnoredCookie(cookieMgrCfg, name) {
|
|
2949
|
-
if (name && cookieMgrCfg && isArray(cookieMgrCfg.ignoreCookies)) {
|
|
2950
|
-
return arrIndexOf(cookieMgrCfg.ignoreCookies, name) !== -1;
|
|
2951
|
-
}
|
|
2952
|
-
return false;
|
|
2953
|
-
}
|
|
2954
|
-
function _isBlockedCookie(cookieMgrCfg, name) {
|
|
2955
|
-
if (name && cookieMgrCfg && isArray(cookieMgrCfg.blockedCookies)) {
|
|
2956
|
-
if (arrIndexOf(cookieMgrCfg.blockedCookies, name) !== -1) {
|
|
2957
|
-
return true;
|
|
2958
|
-
}
|
|
2959
|
-
}
|
|
2960
|
-
return _isIgnoredCookie(cookieMgrCfg, name);
|
|
2961
|
-
}
|
|
2962
|
-
function _isCfgEnabled(rootConfig, cookieMgrConfig) {
|
|
2963
|
-
var isCfgEnabled = cookieMgrConfig[_DYN_ENABLED ];
|
|
2964
|
-
if (isNullOrUndefined(isCfgEnabled)) {
|
|
2965
|
-
var cookieEnabled = void 0;
|
|
2966
|
-
if (!isUndefined(rootConfig[strIsCookieUseDisabled])) {
|
|
2967
|
-
cookieEnabled = !rootConfig[strIsCookieUseDisabled];
|
|
2968
|
-
}
|
|
2969
|
-
if (!isUndefined(rootConfig[strDisableCookiesUsage])) {
|
|
2970
|
-
cookieEnabled = !rootConfig[strDisableCookiesUsage];
|
|
2971
|
-
}
|
|
2972
|
-
isCfgEnabled = cookieEnabled;
|
|
2973
|
-
}
|
|
2974
|
-
return isCfgEnabled;
|
|
2975
|
-
}
|
|
2976
|
-
function safeGetCookieMgr(core, config) {
|
|
2977
|
-
var cookieMgr;
|
|
2978
|
-
if (core) {
|
|
2979
|
-
cookieMgr = core.getCookieMgr();
|
|
2980
|
-
}
|
|
2981
|
-
else if (config) {
|
|
2982
|
-
var cookieCfg = config.cookieCfg;
|
|
2983
|
-
if (cookieCfg && cookieCfg[strConfigCookieMgr]) {
|
|
2984
|
-
cookieMgr = cookieCfg[strConfigCookieMgr];
|
|
2985
|
-
}
|
|
2986
|
-
else {
|
|
2987
|
-
cookieMgr = createCookieMgr(config);
|
|
2988
|
-
}
|
|
2989
|
-
}
|
|
2990
|
-
if (!cookieMgr) {
|
|
2991
|
-
cookieMgr = _gblCookieMgr(config, (core || {})[_DYN_LOGGER ]);
|
|
2992
|
-
}
|
|
2993
|
-
return cookieMgr;
|
|
2994
|
-
}
|
|
2995
|
-
function createCookieMgr(rootConfig, logger) {
|
|
2996
|
-
var cookieMgrConfig;
|
|
2997
|
-
var _path;
|
|
2998
|
-
var _domain;
|
|
2999
|
-
var unloadHandler;
|
|
3000
|
-
var _enabled;
|
|
3001
|
-
var _getCookieFn;
|
|
3002
|
-
var _setCookieFn;
|
|
3003
|
-
var _delCookieFn;
|
|
3004
|
-
var _pendingCookies = [];
|
|
3005
|
-
function _formatDeletionValue(path) {
|
|
3006
|
-
var _a;
|
|
3007
|
-
var values = (_a = {},
|
|
3008
|
-
_a[STR_PATH] = path ? path : "/",
|
|
3009
|
-
_a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
|
|
3010
|
-
_a);
|
|
3011
|
-
if (!isIE()) {
|
|
3012
|
-
values["max-age"] = "0";
|
|
3013
|
-
}
|
|
3014
|
-
return _formatCookieValue(STR_EMPTY, values);
|
|
3015
|
-
}
|
|
3016
|
-
function _formatSetCookieValue(value, maxAgeSec, domain, path) {
|
|
3017
|
-
var values = {};
|
|
3018
|
-
var theValue = strTrim(value || STR_EMPTY);
|
|
3019
|
-
var idx = strIndexOf(theValue, ";");
|
|
3020
|
-
if (idx !== -1) {
|
|
3021
|
-
theValue = strTrim(strLeft(value, idx));
|
|
3022
|
-
values = _extractParts(strSubstring(value, idx + 1));
|
|
3023
|
-
}
|
|
3024
|
-
setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);
|
|
3025
|
-
if (!isNullOrUndefined(maxAgeSec)) {
|
|
3026
|
-
var _isIE = isIE();
|
|
3027
|
-
if (isUndefined(values[strExpires])) {
|
|
3028
|
-
var nowMs = utcNow();
|
|
3029
|
-
var expireMs = nowMs + (maxAgeSec * 1000);
|
|
3030
|
-
if (expireMs > 0) {
|
|
3031
|
-
var expiry = new Date();
|
|
3032
|
-
expiry.setTime(expireMs);
|
|
3033
|
-
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
|
|
3034
|
-
}
|
|
3035
|
-
}
|
|
3036
|
-
if (!_isIE) {
|
|
3037
|
-
setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
|
|
3038
|
-
}
|
|
3039
|
-
}
|
|
3040
|
-
var location = getLocation();
|
|
3041
|
-
if (location && location.protocol === "https:") {
|
|
3042
|
-
setValue(values, "secure", null, null, isUndefined);
|
|
3043
|
-
if (_allowUaSameSite === null) {
|
|
3044
|
-
_allowUaSameSite = !uaDisallowsSameSiteNone(getUserAgentString());
|
|
3045
|
-
}
|
|
3046
|
-
if (_allowUaSameSite) {
|
|
3047
|
-
setValue(values, "SameSite", "None", null, isUndefined);
|
|
3048
|
-
}
|
|
3049
|
-
}
|
|
3050
|
-
setValue(values, STR_PATH, path || _path, null, isUndefined);
|
|
3051
|
-
return _formatCookieValue(theValue, values);
|
|
3052
|
-
}
|
|
3053
|
-
function _removePendingCookie(name) {
|
|
3054
|
-
if (_pendingCookies) {
|
|
3055
|
-
for (var i = _pendingCookies[_DYN_LENGTH ] - 1; i >= 0; i--) {
|
|
3056
|
-
if (_pendingCookies[i].n === name) {
|
|
3057
|
-
_pendingCookies[_DYN_SPLICE ](i, 1);
|
|
3058
|
-
}
|
|
3059
|
-
}
|
|
3060
|
-
}
|
|
3061
|
-
}
|
|
3062
|
-
function _flushPendingCookies() {
|
|
3063
|
-
if (areCookiesSupported(logger) && _pendingCookies) {
|
|
3064
|
-
arrForEach(_pendingCookies, function (pendingData) {
|
|
3065
|
-
if (!_isBlockedCookie(cookieMgrConfig, pendingData.n)) {
|
|
3066
|
-
if (pendingData.o === 0 ) {
|
|
3067
|
-
_setCookieFn(pendingData.n, pendingData.v);
|
|
3068
|
-
}
|
|
3069
|
-
else if (pendingData.o === 1 ) {
|
|
3070
|
-
_delCookieFn(pendingData.n, pendingData.v);
|
|
3071
|
-
}
|
|
3072
|
-
}
|
|
3073
|
-
});
|
|
3074
|
-
_pendingCookies = [];
|
|
3075
|
-
}
|
|
3076
|
-
}
|
|
3077
|
-
rootConfig = createDynamicConfig(rootConfig || _globalCookieConfig, null, logger).cfg;
|
|
3078
|
-
unloadHandler = onConfigChange(rootConfig, function (details) {
|
|
3079
|
-
details.setDf(details.cfg, rootDefaultConfig);
|
|
3080
|
-
cookieMgrConfig = details.ref(details.cfg, "cookieCfg");
|
|
3081
|
-
_path = cookieMgrConfig[STR_PATH ] || "/";
|
|
3082
|
-
_domain = cookieMgrConfig[STR_DOMAIN ];
|
|
3083
|
-
if (cookieMgrConfig.disableCookieDefer) {
|
|
3084
|
-
_pendingCookies = null;
|
|
3085
|
-
}
|
|
3086
|
-
else if (_pendingCookies === null) {
|
|
3087
|
-
_pendingCookies = [];
|
|
3088
|
-
}
|
|
3089
|
-
var wasEnabled = _enabled;
|
|
3090
|
-
_enabled = _isCfgEnabled(rootConfig, cookieMgrConfig) !== false;
|
|
3091
|
-
_getCookieFn = cookieMgrConfig.getCookie || _getCookieValue;
|
|
3092
|
-
_setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;
|
|
3093
|
-
_delCookieFn = cookieMgrConfig.delCookie || _setCookieValue;
|
|
3094
|
-
if (!wasEnabled && _enabled && _pendingCookies) {
|
|
3095
|
-
_flushPendingCookies();
|
|
3096
|
-
}
|
|
3097
|
-
}, logger);
|
|
3098
|
-
var cookieMgr = {
|
|
3099
|
-
isEnabled: function () {
|
|
3100
|
-
var enabled = _isCfgEnabled(rootConfig, cookieMgrConfig) !== false && _enabled && areCookiesSupported(logger);
|
|
3101
|
-
var gblManager = _globalCookieConfig[strConfigCookieMgr];
|
|
3102
|
-
if (enabled && gblManager && cookieMgr !== gblManager) {
|
|
3103
|
-
enabled = _isMgrEnabled(gblManager);
|
|
3104
|
-
}
|
|
3105
|
-
return enabled;
|
|
3106
|
-
},
|
|
3107
|
-
setEnabled: function (value) {
|
|
3108
|
-
cookieMgrConfig[_DYN_ENABLED ] = value;
|
|
3109
|
-
if (!isUndefined(rootConfig[strDisableCookiesUsage])) {
|
|
3110
|
-
rootConfig[strDisableCookiesUsage] = !value;
|
|
3111
|
-
}
|
|
3112
|
-
},
|
|
3113
|
-
set: function (name, value, maxAgeSec, domain, path) {
|
|
3114
|
-
var result = false;
|
|
3115
|
-
var isBlocked = _isBlockedCookie(cookieMgrConfig, name);
|
|
3116
|
-
if (!isBlocked) {
|
|
3117
|
-
var cookieValue = _formatSetCookieValue(value, maxAgeSec, domain, path);
|
|
3118
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
3119
|
-
_setCookieFn(name, cookieValue);
|
|
3120
|
-
result = true;
|
|
3121
|
-
}
|
|
3122
|
-
else if (_pendingCookies) {
|
|
3123
|
-
_removePendingCookie(name);
|
|
3124
|
-
_pendingCookies[_DYN_PUSH ]({
|
|
3125
|
-
n: name,
|
|
3126
|
-
o: 0 ,
|
|
3127
|
-
v: cookieValue
|
|
3128
|
-
});
|
|
3129
|
-
result = true;
|
|
3130
|
-
}
|
|
3131
|
-
}
|
|
3132
|
-
return result;
|
|
3133
|
-
},
|
|
3134
|
-
get: function (name) {
|
|
3135
|
-
var value = STR_EMPTY;
|
|
3136
|
-
var isIgnored = _isIgnoredCookie(cookieMgrConfig, name);
|
|
3137
|
-
if (!isIgnored) {
|
|
3138
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
3139
|
-
value = _getCookieFn(name);
|
|
3140
|
-
}
|
|
3141
|
-
else if (_pendingCookies) {
|
|
3142
|
-
for (var i = _pendingCookies[_DYN_LENGTH ] - 1; i >= 0; i--) {
|
|
3143
|
-
var pendingData = _pendingCookies[i];
|
|
3144
|
-
if (pendingData.n === name) {
|
|
3145
|
-
if (pendingData.o === 0 ) {
|
|
3146
|
-
var cookieValue = pendingData.v;
|
|
3147
|
-
var idx = strIndexOf(cookieValue, ";");
|
|
3148
|
-
value = idx !== -1 ? strTrim(strLeft(cookieValue, idx)) : strTrim(cookieValue);
|
|
3149
|
-
}
|
|
3150
|
-
break;
|
|
3151
|
-
}
|
|
3152
|
-
}
|
|
3153
|
-
}
|
|
3154
|
-
}
|
|
3155
|
-
return value;
|
|
3156
|
-
},
|
|
3157
|
-
del: function (name, path) {
|
|
3158
|
-
var result = false;
|
|
3159
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
3160
|
-
result = cookieMgr.purge(name, path);
|
|
3161
|
-
}
|
|
3162
|
-
else if (_pendingCookies) {
|
|
3163
|
-
_removePendingCookie(name);
|
|
3164
|
-
_pendingCookies[_DYN_PUSH ]({
|
|
3165
|
-
n: name,
|
|
3166
|
-
o: 1 ,
|
|
3167
|
-
v: _formatDeletionValue(path)
|
|
3168
|
-
});
|
|
3169
|
-
result = true;
|
|
3170
|
-
}
|
|
3171
|
-
return result;
|
|
3172
|
-
},
|
|
3173
|
-
purge: function (name, path) {
|
|
3174
|
-
var result = false;
|
|
3175
|
-
if (areCookiesSupported(logger)) {
|
|
3176
|
-
_delCookieFn(name, _formatDeletionValue(path));
|
|
3177
|
-
result = true;
|
|
3178
|
-
}
|
|
3179
|
-
return result;
|
|
3180
|
-
},
|
|
3181
|
-
unload: function (isAsync) {
|
|
3182
|
-
unloadHandler && unloadHandler.rm();
|
|
3183
|
-
unloadHandler = null;
|
|
3184
|
-
_pendingCookies = null;
|
|
3185
|
-
}
|
|
3186
|
-
};
|
|
3187
|
-
cookieMgr[strConfigCookieMgr] = cookieMgr;
|
|
3188
|
-
return cookieMgr;
|
|
3189
|
-
}
|
|
3190
|
-
function areCookiesSupported(logger) {
|
|
3191
|
-
if (_supportsCookies === null) {
|
|
3192
|
-
_supportsCookies = false;
|
|
3193
|
-
!_doc && _getDoc();
|
|
3194
|
-
try {
|
|
3195
|
-
var doc = _doc.v || {};
|
|
3196
|
-
_supportsCookies = doc[strCookie] !== undefined;
|
|
3197
|
-
}
|
|
3198
|
-
catch (e) {
|
|
3199
|
-
_throwInternal(logger, 2 , 68 , "Cannot access document.cookie - " + getExceptionName(e), { exception: dumpObj(e) });
|
|
3200
|
-
}
|
|
3201
|
-
}
|
|
3202
|
-
return _supportsCookies;
|
|
3203
|
-
}
|
|
3204
|
-
function _extractParts(theValue) {
|
|
3205
|
-
var values = {};
|
|
3206
|
-
if (theValue && theValue[_DYN_LENGTH ]) {
|
|
3207
|
-
var parts = strTrim(theValue)[_DYN_SPLIT ](";");
|
|
3208
|
-
arrForEach(parts, function (thePart) {
|
|
3209
|
-
thePart = strTrim(thePart || STR_EMPTY);
|
|
3210
|
-
if (thePart) {
|
|
3211
|
-
var idx = strIndexOf(thePart, "=");
|
|
3212
|
-
if (idx === -1) {
|
|
3213
|
-
values[thePart] = null;
|
|
3214
|
-
}
|
|
3215
|
-
else {
|
|
3216
|
-
values[strTrim(strLeft(thePart, idx))] = strTrim(strSubstring(thePart, idx + 1));
|
|
3217
|
-
}
|
|
3218
|
-
}
|
|
3219
|
-
});
|
|
3220
|
-
}
|
|
3221
|
-
return values;
|
|
3222
|
-
}
|
|
3223
|
-
function _formatDate(theDate, func) {
|
|
3224
|
-
if (isFunction(theDate[func])) {
|
|
3225
|
-
return theDate[func]();
|
|
3226
|
-
}
|
|
3227
|
-
return null;
|
|
3228
|
-
}
|
|
3229
|
-
function _formatCookieValue(value, values) {
|
|
3230
|
-
var cookieValue = value || STR_EMPTY;
|
|
3231
|
-
objForEachKey(values, function (name, theValue) {
|
|
3232
|
-
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
|
|
3233
|
-
});
|
|
3234
|
-
return cookieValue;
|
|
3235
|
-
}
|
|
3236
|
-
function _getCookieValue(name) {
|
|
3237
|
-
var cookieValue = STR_EMPTY;
|
|
3238
|
-
!_doc && _getDoc();
|
|
3239
|
-
if (_doc.v) {
|
|
3240
|
-
var theCookie = _doc.v[strCookie] || STR_EMPTY;
|
|
3241
|
-
if (_parsedCookieValue !== theCookie) {
|
|
3242
|
-
_cookieCache = _extractParts(theCookie);
|
|
3243
|
-
_parsedCookieValue = theCookie;
|
|
3244
|
-
}
|
|
3245
|
-
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
|
|
3246
|
-
}
|
|
3247
|
-
return cookieValue;
|
|
3248
|
-
}
|
|
3249
|
-
function _setCookieValue(name, cookieValue) {
|
|
3250
|
-
!_doc && _getDoc();
|
|
3251
|
-
if (_doc.v) {
|
|
3252
|
-
_doc.v[strCookie] = name + "=" + cookieValue;
|
|
3253
|
-
}
|
|
3254
|
-
}
|
|
3255
|
-
function uaDisallowsSameSiteNone(userAgent) {
|
|
3256
|
-
if (!isString(userAgent)) {
|
|
3257
|
-
return false;
|
|
3258
|
-
}
|
|
3259
|
-
if (strContains(userAgent, "CPU iPhone OS 12") || strContains(userAgent, "iPad; CPU OS 12")) {
|
|
3260
|
-
return true;
|
|
3261
|
-
}
|
|
3262
|
-
if (strContains(userAgent, "Macintosh; Intel Mac OS X 10_14") && strContains(userAgent, "Version/") && strContains(userAgent, "Safari")) {
|
|
3263
|
-
return true;
|
|
3264
|
-
}
|
|
3265
|
-
if (strContains(userAgent, "Macintosh; Intel Mac OS X 10_14") && strEndsWith(userAgent, "AppleWebKit/605.1.15 (KHTML, like Gecko)")) {
|
|
3266
|
-
return true;
|
|
3267
|
-
}
|
|
3268
|
-
if (strContains(userAgent, "Chrome/5") || strContains(userAgent, "Chrome/6")) {
|
|
3269
|
-
return true;
|
|
3270
|
-
}
|
|
3271
|
-
if (strContains(userAgent, "UnrealEngine") && !strContains(userAgent, "Chrome")) {
|
|
3272
|
-
return true;
|
|
3273
|
-
}
|
|
3274
|
-
if (strContains(userAgent, "UCBrowser/12") || strContains(userAgent, "UCBrowser/11")) {
|
|
3275
|
-
return true;
|
|
3276
|
-
}
|
|
3277
|
-
return false;
|
|
3278
|
-
}
|
|
3279
|
-
|
|
3280
|
-
var strExecutionContextKey = "ctx";
|
|
3281
|
-
var strParentContextKey = "ParentContextKey";
|
|
3282
|
-
var strChildrenContextKey = "ChildrenContextKey";
|
|
3283
|
-
var PerfEvent = /** @class */ (function () {
|
|
3284
|
-
function PerfEvent(name, payloadDetails, isAsync) {
|
|
3285
|
-
var _self = this;
|
|
3286
|
-
_self.start = utcNow();
|
|
3287
|
-
_self[_DYN_NAME ] = name;
|
|
3288
|
-
_self.isAsync = isAsync;
|
|
3289
|
-
_self[_DYN_IS_CHILD_EVT ] = function () { return false; };
|
|
3290
|
-
if (isFunction(payloadDetails)) {
|
|
3291
|
-
var theDetails_1;
|
|
3292
|
-
objDefine(_self, "payload", {
|
|
3293
|
-
g: function () {
|
|
3294
|
-
if (!theDetails_1 && isFunction(payloadDetails)) {
|
|
3295
|
-
theDetails_1 = payloadDetails();
|
|
3296
|
-
payloadDetails = null;
|
|
3297
|
-
}
|
|
3298
|
-
return theDetails_1;
|
|
3299
|
-
}
|
|
3300
|
-
});
|
|
3301
|
-
}
|
|
3302
|
-
_self[_DYN_GET_CTX ] = function (key) {
|
|
3303
|
-
if (key) {
|
|
3304
|
-
if (key === PerfEvent[strParentContextKey] || key === PerfEvent[strChildrenContextKey]) {
|
|
3305
|
-
return _self[key];
|
|
3306
|
-
}
|
|
3307
|
-
return (_self[strExecutionContextKey] || {})[key];
|
|
3308
|
-
}
|
|
3309
|
-
return null;
|
|
3310
|
-
};
|
|
3311
|
-
_self[_DYN_SET_CTX ] = function (key, value) {
|
|
3312
|
-
if (key) {
|
|
3313
|
-
if (key === PerfEvent[strParentContextKey]) {
|
|
3314
|
-
if (!_self[key]) {
|
|
3315
|
-
_self[_DYN_IS_CHILD_EVT ] = function () { return true; };
|
|
3316
|
-
}
|
|
3317
|
-
_self[key] = value;
|
|
3318
|
-
}
|
|
3319
|
-
else if (key === PerfEvent[strChildrenContextKey]) {
|
|
3320
|
-
_self[key] = value;
|
|
3321
|
-
}
|
|
3322
|
-
else {
|
|
3323
|
-
var ctx = _self[strExecutionContextKey] = _self[strExecutionContextKey] || {};
|
|
3324
|
-
ctx[key] = value;
|
|
3325
|
-
}
|
|
3326
|
-
}
|
|
3327
|
-
};
|
|
3328
|
-
_self.complete = function () {
|
|
3329
|
-
var childTime = 0;
|
|
3330
|
-
var childEvts = _self[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
3331
|
-
if (isArray(childEvts)) {
|
|
3332
|
-
for (var lp = 0; lp < childEvts[_DYN_LENGTH ]; lp++) {
|
|
3333
|
-
var childEvt = childEvts[lp];
|
|
3334
|
-
if (childEvt) {
|
|
3335
|
-
childTime += childEvt[_DYN_TIME ];
|
|
3336
|
-
}
|
|
3337
|
-
}
|
|
3338
|
-
}
|
|
3339
|
-
_self[_DYN_TIME ] = utcNow() - _self.start;
|
|
3340
|
-
_self.exTime = _self[_DYN_TIME ] - childTime;
|
|
3341
|
-
_self.complete = _noopVoid;
|
|
3342
|
-
};
|
|
3343
|
-
}
|
|
3344
|
-
PerfEvent.ParentContextKey = "parent";
|
|
3345
|
-
PerfEvent.ChildrenContextKey = "childEvts";
|
|
3346
|
-
return PerfEvent;
|
|
3347
|
-
}());
|
|
3348
|
-
var doPerfActiveKey = "CoreUtils.doPerf";
|
|
3349
|
-
function doPerf(mgrSource, getSource, func, details, isAsync) {
|
|
3350
|
-
if (mgrSource) {
|
|
3351
|
-
var perfMgr = mgrSource;
|
|
3352
|
-
if (perfMgr[STR_GET_PERF_MGR]) {
|
|
3353
|
-
perfMgr = perfMgr[STR_GET_PERF_MGR]();
|
|
3354
|
-
}
|
|
3355
|
-
if (perfMgr) {
|
|
3356
|
-
var perfEvt = void 0;
|
|
3357
|
-
var currentActive = perfMgr[_DYN_GET_CTX ](doPerfActiveKey);
|
|
3358
|
-
try {
|
|
3359
|
-
perfEvt = perfMgr.create(getSource(), details, isAsync);
|
|
3360
|
-
if (perfEvt) {
|
|
3361
|
-
if (currentActive && perfEvt[_DYN_SET_CTX ]) {
|
|
3362
|
-
perfEvt[_DYN_SET_CTX ](PerfEvent[strParentContextKey], currentActive);
|
|
3363
|
-
if (currentActive[_DYN_GET_CTX ] && currentActive[_DYN_SET_CTX ]) {
|
|
3364
|
-
var children = currentActive[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
3365
|
-
if (!children) {
|
|
3366
|
-
children = [];
|
|
3367
|
-
currentActive[_DYN_SET_CTX ](PerfEvent[strChildrenContextKey], children);
|
|
3368
|
-
}
|
|
3369
|
-
children[_DYN_PUSH ](perfEvt);
|
|
3370
|
-
}
|
|
3371
|
-
}
|
|
3372
|
-
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, perfEvt);
|
|
3373
|
-
return func(perfEvt);
|
|
3374
|
-
}
|
|
3375
|
-
}
|
|
3376
|
-
catch (ex) {
|
|
3377
|
-
if (perfEvt && perfEvt[_DYN_SET_CTX ]) {
|
|
3378
|
-
perfEvt[_DYN_SET_CTX ]("exception", ex);
|
|
3379
|
-
}
|
|
3380
|
-
}
|
|
3381
|
-
finally {
|
|
3382
|
-
if (perfEvt) {
|
|
3383
|
-
perfMgr.fire(perfEvt);
|
|
3384
|
-
}
|
|
3385
|
-
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, currentActive);
|
|
3386
|
-
}
|
|
3387
|
-
}
|
|
3388
|
-
}
|
|
3389
|
-
return func();
|
|
3390
|
-
}
|
|
3391
|
-
|
|
3392
|
-
var pluginStateData = createElmNodeData("plugin");
|
|
3393
|
-
function _getPluginState(plugin) {
|
|
3394
|
-
return pluginStateData.get(plugin, "state", {}, true);
|
|
3395
|
-
}
|
|
3396
|
-
|
|
3397
|
-
var strTelemetryPluginChain = "TelemetryPluginChain";
|
|
3398
|
-
var strHasRunFlags = "_hasRun";
|
|
3399
|
-
var strGetTelCtx = "_getTelCtx";
|
|
3400
|
-
var _chainId = 0;
|
|
3401
|
-
function _getNextProxyStart(proxy, core, startAt) {
|
|
3402
|
-
while (proxy) {
|
|
3403
|
-
if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
|
|
3404
|
-
return proxy;
|
|
3405
|
-
}
|
|
3406
|
-
proxy = proxy[_DYN_GET_NEXT ]();
|
|
3407
|
-
}
|
|
3408
|
-
return createTelemetryProxyChain([startAt], core[_DYN_CONFIG ] || {}, core);
|
|
3409
|
-
}
|
|
3410
|
-
function _createInternalContext(telemetryChain, dynamicHandler, core, startAt) {
|
|
3411
|
-
var _nextProxy = null;
|
|
3412
|
-
var _onComplete = [];
|
|
3413
|
-
if (!dynamicHandler) {
|
|
3414
|
-
dynamicHandler = createDynamicConfig({}, null, core[_DYN_LOGGER ]);
|
|
3415
|
-
}
|
|
3416
|
-
if (startAt !== null) {
|
|
3417
|
-
_nextProxy = startAt ? _getNextProxyStart(telemetryChain, core, startAt) : telemetryChain;
|
|
3418
|
-
}
|
|
3419
|
-
var context = {
|
|
3420
|
-
_next: _moveNext,
|
|
3421
|
-
ctx: {
|
|
3422
|
-
core: function () {
|
|
3423
|
-
return core;
|
|
3424
|
-
},
|
|
3425
|
-
diagLog: function () {
|
|
3426
|
-
return safeGetLogger(core, dynamicHandler.cfg);
|
|
3427
|
-
},
|
|
3428
|
-
getCfg: function () {
|
|
3429
|
-
return dynamicHandler.cfg;
|
|
3430
|
-
},
|
|
3431
|
-
getExtCfg: _resolveExtCfg,
|
|
3432
|
-
getConfig: _getConfig,
|
|
3433
|
-
hasNext: function () {
|
|
3434
|
-
return !!_nextProxy;
|
|
3435
|
-
},
|
|
3436
|
-
getNext: function () {
|
|
3437
|
-
return _nextProxy;
|
|
3438
|
-
},
|
|
3439
|
-
setNext: function (nextPlugin) {
|
|
3440
|
-
_nextProxy = nextPlugin;
|
|
3441
|
-
},
|
|
3442
|
-
iterate: _iterateChain,
|
|
3443
|
-
onComplete: _addOnComplete
|
|
3444
|
-
}
|
|
3445
|
-
};
|
|
3446
|
-
function _addOnComplete(onComplete, that) {
|
|
3447
|
-
var args = [];
|
|
3448
|
-
for (var _i = 2; _i < arguments.length; _i++) {
|
|
3449
|
-
args[_i - 2] = arguments[_i];
|
|
3450
|
-
}
|
|
3451
|
-
if (onComplete) {
|
|
3452
|
-
_onComplete[_DYN_PUSH ]({
|
|
3453
|
-
func: onComplete,
|
|
3454
|
-
self: !isUndefined(that) ? that : context.ctx,
|
|
3455
|
-
args: args
|
|
3456
|
-
});
|
|
3457
|
-
}
|
|
3458
|
-
}
|
|
3459
|
-
function _moveNext() {
|
|
3460
|
-
var nextProxy = _nextProxy;
|
|
3461
|
-
_nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT ]() : null;
|
|
3462
|
-
if (!nextProxy) {
|
|
3463
|
-
var onComplete = _onComplete;
|
|
3464
|
-
if (onComplete && onComplete[_DYN_LENGTH ] > 0) {
|
|
3465
|
-
arrForEach(onComplete, function (completeDetails) {
|
|
3466
|
-
try {
|
|
3467
|
-
completeDetails.func[_DYN_CALL ](completeDetails.self, completeDetails.args);
|
|
3468
|
-
}
|
|
3469
|
-
catch (e) {
|
|
3470
|
-
_throwInternal(core[_DYN_LOGGER ], 2 , 73 , "Unexpected Exception during onComplete - " + dumpObj(e));
|
|
3471
|
-
}
|
|
3472
|
-
});
|
|
3473
|
-
_onComplete = [];
|
|
3474
|
-
}
|
|
3475
|
-
}
|
|
3476
|
-
return nextProxy;
|
|
3477
|
-
}
|
|
3478
|
-
function _getExtCfg(identifier, createIfMissing) {
|
|
3479
|
-
var idCfg = null;
|
|
3480
|
-
var extCfg = _getCfg(dynamicHandler.cfg, "extensionConfig", createIfMissing);
|
|
3481
|
-
if (extCfg) {
|
|
3482
|
-
idCfg = _getCfg(extCfg, identifier, createIfMissing);
|
|
3483
|
-
}
|
|
3484
|
-
return idCfg;
|
|
3485
|
-
}
|
|
3486
|
-
function _getCfg(cfg, identifier, createIfMissing) {
|
|
3487
|
-
var idCfg = null;
|
|
3488
|
-
if (cfg && identifier) {
|
|
3489
|
-
idCfg = cfg[identifier];
|
|
3490
|
-
if (!idCfg && createIfMissing) {
|
|
3491
|
-
idCfg = {};
|
|
3492
|
-
}
|
|
3493
|
-
cfg[identifier] = idCfg;
|
|
3494
|
-
idCfg = dynamicHandler.ref(cfg, identifier);
|
|
3495
|
-
}
|
|
3496
|
-
return idCfg;
|
|
3497
|
-
}
|
|
3498
|
-
function _resolveExtCfg(identifier, defaultValues, rootOnly) {
|
|
3499
|
-
var newConfig = rootOnly ? _getCfg(dynamicHandler.cfg, identifier, true) : _getExtCfg(identifier, true);
|
|
3500
|
-
if (defaultValues) {
|
|
3501
|
-
objForEachKey(defaultValues, function (field, defaultValue) {
|
|
3502
|
-
if (isNullOrUndefined(newConfig[field])) {
|
|
3503
|
-
var cfgValue = dynamicHandler.cfg[field];
|
|
3504
|
-
if (cfgValue || !isNullOrUndefined(cfgValue)) {
|
|
3505
|
-
newConfig[field] = cfgValue;
|
|
3506
|
-
}
|
|
3507
|
-
}
|
|
3508
|
-
_applyDefaultValue(dynamicHandler, newConfig, field, defaultValue);
|
|
3509
|
-
});
|
|
3510
|
-
}
|
|
3511
|
-
return dynamicHandler.setDf(newConfig, defaultValues);
|
|
3512
|
-
}
|
|
3513
|
-
function _getConfig(identifier, field, defaultValue) {
|
|
3514
|
-
if (defaultValue === void 0) { defaultValue = false; }
|
|
3515
|
-
var theValue;
|
|
3516
|
-
var extConfig = _getExtCfg(identifier, false);
|
|
3517
|
-
var rootConfig = dynamicHandler.cfg;
|
|
3518
|
-
if (extConfig && (extConfig[field] || !isNullOrUndefined(extConfig[field]))) {
|
|
3519
|
-
theValue = extConfig[field];
|
|
3520
|
-
}
|
|
3521
|
-
else if (rootConfig[field] || !isNullOrUndefined(rootConfig[field])) {
|
|
3522
|
-
theValue = rootConfig[field];
|
|
3523
|
-
}
|
|
3524
|
-
return (theValue || !isNullOrUndefined(theValue)) ? theValue : defaultValue;
|
|
3525
|
-
}
|
|
3526
|
-
function _iterateChain(cb) {
|
|
3527
|
-
var nextPlugin;
|
|
3528
|
-
while (!!(nextPlugin = context._next())) {
|
|
3529
|
-
var plugin = nextPlugin[_DYN_GET_PLUGIN ]();
|
|
3530
|
-
if (plugin) {
|
|
3531
|
-
cb(plugin);
|
|
3532
|
-
}
|
|
3533
|
-
}
|
|
3534
|
-
}
|
|
3535
|
-
return context;
|
|
3536
|
-
}
|
|
3537
|
-
function createProcessTelemetryContext(telemetryChain, cfg, core, startAt) {
|
|
3538
|
-
var config = createDynamicConfig(cfg);
|
|
3539
|
-
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
3540
|
-
var context = internalContext.ctx;
|
|
3541
|
-
function _processNext(env) {
|
|
3542
|
-
var nextPlugin = internalContext._next();
|
|
3543
|
-
if (nextPlugin) {
|
|
3544
|
-
nextPlugin[STR_PROCESS_TELEMETRY ](env, context);
|
|
3545
|
-
}
|
|
3546
|
-
return !nextPlugin;
|
|
3547
|
-
}
|
|
3548
|
-
function _createNew(plugins, startAt) {
|
|
3549
|
-
if (plugins === void 0) { plugins = null; }
|
|
3550
|
-
if (isArray(plugins)) {
|
|
3551
|
-
plugins = createTelemetryProxyChain(plugins, config.cfg, core, startAt);
|
|
3552
|
-
}
|
|
3553
|
-
return createProcessTelemetryContext(plugins || context[_DYN_GET_NEXT ](), config.cfg, core, startAt);
|
|
3554
|
-
}
|
|
3555
|
-
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
3556
|
-
context[_DYN_CREATE_NEW ] = _createNew;
|
|
3557
|
-
return context;
|
|
3558
|
-
}
|
|
3559
|
-
function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {
|
|
3560
|
-
var config = createDynamicConfig(core[_DYN_CONFIG ]);
|
|
3561
|
-
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
3562
|
-
var context = internalContext.ctx;
|
|
3563
|
-
function _processNext(unloadState) {
|
|
3564
|
-
var nextPlugin = internalContext._next();
|
|
3565
|
-
nextPlugin && nextPlugin[_DYN_UNLOAD ](context, unloadState);
|
|
3566
|
-
return !nextPlugin;
|
|
3567
|
-
}
|
|
3568
|
-
function _createNew(plugins, startAt) {
|
|
3569
|
-
if (plugins === void 0) { plugins = null; }
|
|
3570
|
-
if (isArray(plugins)) {
|
|
3571
|
-
plugins = createTelemetryProxyChain(plugins, config.cfg, core, startAt);
|
|
3572
|
-
}
|
|
3573
|
-
return createProcessTelemetryUnloadContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
3574
|
-
}
|
|
3575
|
-
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
3576
|
-
context[_DYN_CREATE_NEW ] = _createNew;
|
|
3577
|
-
return context;
|
|
3578
|
-
}
|
|
3579
|
-
function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {
|
|
3580
|
-
var config = createDynamicConfig(core[_DYN_CONFIG ]);
|
|
3581
|
-
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
3582
|
-
var context = internalContext.ctx;
|
|
3583
|
-
function _processNext(updateState) {
|
|
3584
|
-
return context.iterate(function (plugin) {
|
|
3585
|
-
if (isFunction(plugin[_DYN_UPDATE ])) {
|
|
3586
|
-
plugin[_DYN_UPDATE ](context, updateState);
|
|
3587
|
-
}
|
|
3588
|
-
});
|
|
3589
|
-
}
|
|
3590
|
-
function _createNew(plugins, startAt) {
|
|
3591
|
-
if (plugins === void 0) { plugins = null; }
|
|
3592
|
-
if (isArray(plugins)) {
|
|
3593
|
-
plugins = createTelemetryProxyChain(plugins, config.cfg, core, startAt);
|
|
3594
|
-
}
|
|
3595
|
-
return createProcessTelemetryUpdateContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
3596
|
-
}
|
|
3597
|
-
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
3598
|
-
context[_DYN_CREATE_NEW ] = _createNew;
|
|
3599
|
-
return context;
|
|
3600
|
-
}
|
|
3601
|
-
function createTelemetryProxyChain(plugins, config, core, startAt) {
|
|
3602
|
-
var firstProxy = null;
|
|
3603
|
-
var add = startAt ? false : true;
|
|
3604
|
-
if (isArray(plugins) && plugins[_DYN_LENGTH ] > 0) {
|
|
3605
|
-
var lastProxy_1 = null;
|
|
3606
|
-
arrForEach(plugins, function (thePlugin) {
|
|
3607
|
-
if (!add && startAt === thePlugin) {
|
|
3608
|
-
add = true;
|
|
3609
|
-
}
|
|
3610
|
-
if (add && thePlugin && isFunction(thePlugin[STR_PROCESS_TELEMETRY ])) {
|
|
3611
|
-
var newProxy = createTelemetryPluginProxy(thePlugin, config, core);
|
|
3612
|
-
if (!firstProxy) {
|
|
3613
|
-
firstProxy = newProxy;
|
|
3614
|
-
}
|
|
3615
|
-
if (lastProxy_1) {
|
|
3616
|
-
lastProxy_1._setNext(newProxy);
|
|
3617
|
-
}
|
|
3618
|
-
lastProxy_1 = newProxy;
|
|
3619
|
-
}
|
|
3620
|
-
});
|
|
3621
|
-
}
|
|
3622
|
-
if (startAt && !firstProxy) {
|
|
3623
|
-
return createTelemetryProxyChain([startAt], config, core);
|
|
3624
|
-
}
|
|
3625
|
-
return firstProxy;
|
|
3626
|
-
}
|
|
3627
|
-
function createTelemetryPluginProxy(plugin, config, core) {
|
|
3628
|
-
var _a;
|
|
3629
|
-
var nextProxy = null;
|
|
3630
|
-
var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY ]);
|
|
3631
|
-
var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN ]);
|
|
3632
|
-
var chainId;
|
|
3633
|
-
if (plugin) {
|
|
3634
|
-
chainId = plugin[_DYN_IDENTIFIER ] + "-" + plugin[STR_PRIORITY ] + "-" + _chainId++;
|
|
3635
|
-
}
|
|
3636
|
-
else {
|
|
3637
|
-
chainId = "Unknown-0-" + _chainId++;
|
|
3638
|
-
}
|
|
3639
|
-
var proxyChain = (_a = {
|
|
3640
|
-
getPlugin: function () {
|
|
3641
|
-
return plugin;
|
|
3642
|
-
},
|
|
3643
|
-
getNext: function () {
|
|
3644
|
-
return nextProxy;
|
|
3645
|
-
}
|
|
3646
|
-
},
|
|
3647
|
-
_a[STR_PROCESS_TELEMETRY ] = _processTelemetry,
|
|
3648
|
-
_a.unload = _unloadPlugin,
|
|
3649
|
-
_a.update = _updatePlugin,
|
|
3650
|
-
_a._id = chainId,
|
|
3651
|
-
_a._setNext = function (nextPlugin) {
|
|
3652
|
-
nextProxy = nextPlugin;
|
|
3653
|
-
},
|
|
3654
|
-
_a);
|
|
3655
|
-
function _getTelCtx() {
|
|
3656
|
-
var itemCtx;
|
|
3657
|
-
if (plugin && isFunction(plugin[strGetTelCtx])) {
|
|
3658
|
-
itemCtx = plugin[strGetTelCtx]();
|
|
3659
|
-
}
|
|
3660
|
-
if (!itemCtx) {
|
|
3661
|
-
itemCtx = createProcessTelemetryContext(proxyChain, config, core);
|
|
3662
|
-
}
|
|
3663
|
-
return itemCtx;
|
|
3664
|
-
}
|
|
3665
|
-
function _processChain(itemCtx, processPluginFn, name, details, isAsync) {
|
|
3666
|
-
var hasRun = false;
|
|
3667
|
-
var identifier = plugin ? plugin[_DYN_IDENTIFIER ] : strTelemetryPluginChain;
|
|
3668
|
-
var hasRunContext = itemCtx[strHasRunFlags];
|
|
3669
|
-
if (!hasRunContext) {
|
|
3670
|
-
hasRunContext = itemCtx[strHasRunFlags] = {};
|
|
3671
|
-
}
|
|
3672
|
-
itemCtx.setNext(nextProxy);
|
|
3673
|
-
if (plugin) {
|
|
3674
|
-
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
3675
|
-
hasRunContext[chainId] = true;
|
|
3676
|
-
try {
|
|
3677
|
-
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
3678
|
-
if (nextId) {
|
|
3679
|
-
hasRunContext[nextId] = false;
|
|
3680
|
-
}
|
|
3681
|
-
hasRun = processPluginFn(itemCtx);
|
|
3682
|
-
}
|
|
3683
|
-
catch (error) {
|
|
3684
|
-
var hasNextRun = nextProxy ? hasRunContext[nextProxy._id] : true;
|
|
3685
|
-
if (hasNextRun) {
|
|
3686
|
-
hasRun = true;
|
|
3687
|
-
}
|
|
3688
|
-
if (!nextProxy || !hasNextRun) {
|
|
3689
|
-
_throwInternal(itemCtx[_DYN_DIAG_LOG ](), 1 , 73 , "Plugin [" + identifier + "] failed during " + name + " - " + dumpObj(error) + ", run flags: " + dumpObj(hasRunContext));
|
|
3690
|
-
}
|
|
3691
|
-
}
|
|
3692
|
-
}, details, isAsync);
|
|
3693
|
-
}
|
|
3694
|
-
return hasRun;
|
|
3695
|
-
}
|
|
3696
|
-
function _processTelemetry(env, itemCtx) {
|
|
3697
|
-
itemCtx = itemCtx || _getTelCtx();
|
|
3698
|
-
function _callProcessTelemetry(itemCtx) {
|
|
3699
|
-
if (!plugin || !hasProcessTelemetry) {
|
|
3700
|
-
return false;
|
|
3701
|
-
}
|
|
3702
|
-
var pluginState = _getPluginState(plugin);
|
|
3703
|
-
if (pluginState[_DYN_TEARDOWN ] || pluginState[STR_DISABLED]) {
|
|
3704
|
-
return false;
|
|
3705
|
-
}
|
|
3706
|
-
if (hasSetNext) {
|
|
3707
|
-
plugin[_DYN_SET_NEXT_PLUGIN ](nextProxy);
|
|
3708
|
-
}
|
|
3709
|
-
plugin[STR_PROCESS_TELEMETRY ](env, itemCtx);
|
|
3710
|
-
return true;
|
|
3711
|
-
}
|
|
3712
|
-
if (!_processChain(itemCtx, _callProcessTelemetry, "processTelemetry", function () { return ({ item: env }); }, !(env.sync))) {
|
|
3713
|
-
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
3714
|
-
}
|
|
3715
|
-
}
|
|
3716
|
-
function _unloadPlugin(unloadCtx, unloadState) {
|
|
3717
|
-
function _callTeardown() {
|
|
3718
|
-
var hasRun = false;
|
|
3719
|
-
if (plugin) {
|
|
3720
|
-
var pluginState = _getPluginState(plugin);
|
|
3721
|
-
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
3722
|
-
if (plugin && (!pluginCore || pluginCore === unloadCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
3723
|
-
pluginState[STR_CORE ] = null;
|
|
3724
|
-
pluginState[_DYN_TEARDOWN ] = true;
|
|
3725
|
-
pluginState[_DYN_IS_INITIALIZED ] = false;
|
|
3726
|
-
if (plugin[_DYN_TEARDOWN ] && plugin[_DYN_TEARDOWN ](unloadCtx, unloadState) === true) {
|
|
3727
|
-
hasRun = true;
|
|
3728
|
-
}
|
|
3729
|
-
}
|
|
3730
|
-
}
|
|
3731
|
-
return hasRun;
|
|
3732
|
-
}
|
|
3733
|
-
if (!_processChain(unloadCtx, _callTeardown, "unload", _noopVoid, unloadState.isAsync)) {
|
|
3734
|
-
unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
3735
|
-
}
|
|
3736
|
-
}
|
|
3737
|
-
function _updatePlugin(updateCtx, updateState) {
|
|
3738
|
-
function _callUpdate() {
|
|
3739
|
-
var hasRun = false;
|
|
3740
|
-
if (plugin) {
|
|
3741
|
-
var pluginState = _getPluginState(plugin);
|
|
3742
|
-
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
3743
|
-
if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
3744
|
-
if (plugin[_DYN_UPDATE ] && plugin[_DYN_UPDATE ](updateCtx, updateState) === true) {
|
|
3745
|
-
hasRun = true;
|
|
3746
|
-
}
|
|
3747
|
-
}
|
|
3748
|
-
}
|
|
3749
|
-
return hasRun;
|
|
3750
|
-
}
|
|
3751
|
-
if (!_processChain(updateCtx, _callUpdate, "update", _noopVoid, false)) {
|
|
3752
|
-
updateCtx[_DYN_PROCESS_NEXT ](updateState);
|
|
3753
|
-
}
|
|
3754
|
-
}
|
|
3755
|
-
return objFreeze(proxyChain);
|
|
3756
|
-
}
|
|
3757
|
-
|
|
3758
|
-
function createUnloadHandlerContainer() {
|
|
3759
|
-
var handlers = [];
|
|
3760
|
-
function _addHandler(handler) {
|
|
3761
|
-
if (handler) {
|
|
3762
|
-
handlers[_DYN_PUSH ](handler);
|
|
3763
|
-
}
|
|
3764
|
-
}
|
|
3765
|
-
function _runHandlers(unloadCtx, unloadState) {
|
|
3766
|
-
arrForEach(handlers, function (handler) {
|
|
3767
|
-
try {
|
|
3768
|
-
handler(unloadCtx, unloadState);
|
|
3769
|
-
}
|
|
3770
|
-
catch (e) {
|
|
3771
|
-
_throwInternal(unloadCtx[_DYN_DIAG_LOG ](), 2 , 73 , "Unexpected error calling unload handler - " + dumpObj(e));
|
|
3772
|
-
}
|
|
3773
|
-
});
|
|
3774
|
-
handlers = [];
|
|
3775
|
-
}
|
|
3776
|
-
return {
|
|
3777
|
-
add: _addHandler,
|
|
3778
|
-
run: _runHandlers
|
|
3779
|
-
};
|
|
3780
|
-
}
|
|
3781
|
-
|
|
3782
|
-
function createUnloadHookContainer() {
|
|
3783
|
-
var _hooks = [];
|
|
3784
|
-
function _doUnload(logger) {
|
|
3785
|
-
var oldHooks = _hooks;
|
|
3786
|
-
_hooks = [];
|
|
3787
|
-
arrForEach(oldHooks, function (fn) {
|
|
3788
|
-
try {
|
|
3789
|
-
(fn.rm || fn.remove)[_DYN_CALL ](fn);
|
|
3790
|
-
}
|
|
3791
|
-
catch (e) {
|
|
3792
|
-
_throwInternal(logger, 2 , 73 , "Unloading:" + dumpObj(e));
|
|
3793
|
-
}
|
|
3794
|
-
});
|
|
3795
|
-
}
|
|
3796
|
-
function _addHook(hooks) {
|
|
3797
|
-
if (hooks) {
|
|
3798
|
-
arrAppend(_hooks, hooks);
|
|
3799
|
-
}
|
|
3800
|
-
}
|
|
3801
|
-
return {
|
|
3802
|
-
run: _doUnload,
|
|
3803
|
-
add: _addHook
|
|
3804
|
-
};
|
|
3805
|
-
}
|
|
3806
|
-
|
|
3807
|
-
var _a;
|
|
3808
|
-
var strGetPlugin = "getPlugin";
|
|
3809
|
-
var defaultValues = (_a = {},
|
|
3810
|
-
_a[STR_EXTENSION_CONFIG] = { isVal: isNotNullOrUndefined, v: {} },
|
|
3811
|
-
_a);
|
|
3812
|
-
var BaseTelemetryPlugin = /** @class */ (function () {
|
|
3813
|
-
function BaseTelemetryPlugin() {
|
|
3814
|
-
var _self = this;
|
|
3815
|
-
var _isinitialized;
|
|
3816
|
-
var _rootCtx;
|
|
3817
|
-
var _nextPlugin;
|
|
3818
|
-
var _unloadHandlerContainer;
|
|
3819
|
-
var _hookContainer;
|
|
3820
|
-
_initDefaults();
|
|
3821
|
-
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
3822
|
-
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
3823
|
-
_setDefaults(config, core, pluginChain);
|
|
3824
|
-
_isinitialized = true;
|
|
3825
|
-
};
|
|
3826
|
-
_self[_DYN_TEARDOWN ] = function (unloadCtx, unloadState) {
|
|
3827
|
-
var core = _self[STR_CORE ];
|
|
3828
|
-
if (!core || (unloadCtx && core !== unloadCtx[STR_CORE ]())) {
|
|
3829
|
-
return;
|
|
3830
|
-
}
|
|
3831
|
-
var result;
|
|
3832
|
-
var unloadDone = false;
|
|
3833
|
-
var theUnloadCtx = unloadCtx || createProcessTelemetryUnloadContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);
|
|
3834
|
-
var theUnloadState = unloadState || {
|
|
3835
|
-
reason: 0 ,
|
|
3836
|
-
isAsync: false
|
|
3837
|
-
};
|
|
3838
|
-
function _unloadCallback() {
|
|
3839
|
-
if (!unloadDone) {
|
|
3840
|
-
unloadDone = true;
|
|
3841
|
-
_unloadHandlerContainer.run(theUnloadCtx, unloadState);
|
|
3842
|
-
_hookContainer.run(theUnloadCtx[_DYN_DIAG_LOG ]());
|
|
3843
|
-
if (result === true) {
|
|
3844
|
-
theUnloadCtx[_DYN_PROCESS_NEXT ](theUnloadState);
|
|
3845
|
-
}
|
|
3846
|
-
_initDefaults();
|
|
3847
|
-
}
|
|
3848
|
-
}
|
|
3849
|
-
if (!_self[_DYN__DO_TEARDOWN ] || _self[_DYN__DO_TEARDOWN ](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {
|
|
3850
|
-
_unloadCallback();
|
|
3851
|
-
}
|
|
3852
|
-
else {
|
|
3853
|
-
result = true;
|
|
3854
|
-
}
|
|
3855
|
-
return result;
|
|
3856
|
-
};
|
|
3857
|
-
_self[_DYN_UPDATE ] = function (updateCtx, updateState) {
|
|
3858
|
-
var core = _self[STR_CORE ];
|
|
3859
|
-
if (!core || (updateCtx && core !== updateCtx[STR_CORE ]())) {
|
|
3860
|
-
return;
|
|
3861
|
-
}
|
|
3862
|
-
var result;
|
|
3863
|
-
var updateDone = false;
|
|
3864
|
-
var theUpdateCtx = updateCtx || createProcessTelemetryUpdateContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);
|
|
3865
|
-
var theUpdateState = updateState || {
|
|
3866
|
-
reason: 0
|
|
3867
|
-
};
|
|
3868
|
-
function _updateCallback() {
|
|
3869
|
-
if (!updateDone) {
|
|
3870
|
-
updateDone = true;
|
|
3871
|
-
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx[_DYN_GET_NEXT ]());
|
|
3872
|
-
}
|
|
3873
|
-
}
|
|
3874
|
-
if (!_self._doUpdate || _self._doUpdate(theUpdateCtx, theUpdateState, _updateCallback) !== true) {
|
|
3875
|
-
_updateCallback();
|
|
3876
|
-
}
|
|
3877
|
-
else {
|
|
3878
|
-
result = true;
|
|
3879
|
-
}
|
|
3880
|
-
return result;
|
|
3881
|
-
};
|
|
3882
|
-
proxyFunctionAs(_self, "_addUnloadCb", function () { return _unloadHandlerContainer; }, "add");
|
|
3883
|
-
proxyFunctionAs(_self, "_addHook", function () { return _hookContainer; }, "add");
|
|
3884
|
-
objDefine(_self, "_unloadHooks", { g: function () { return _hookContainer; } });
|
|
3885
|
-
});
|
|
3886
|
-
_self[_DYN_DIAG_LOG ] = function (itemCtx) {
|
|
3887
|
-
return _getTelCtx(itemCtx)[_DYN_DIAG_LOG ]();
|
|
3888
|
-
};
|
|
3889
|
-
_self[_DYN_IS_INITIALIZED ] = function () {
|
|
3890
|
-
return _isinitialized;
|
|
3891
|
-
};
|
|
3892
|
-
_self.setInitialized = function (isInitialized) {
|
|
3893
|
-
_isinitialized = isInitialized;
|
|
3894
|
-
};
|
|
3895
|
-
_self[_DYN_SET_NEXT_PLUGIN ] = function (next) {
|
|
3896
|
-
_nextPlugin = next;
|
|
3897
|
-
};
|
|
3898
|
-
_self[_DYN_PROCESS_NEXT ] = function (env, itemCtx) {
|
|
3899
|
-
if (itemCtx) {
|
|
3900
|
-
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
3901
|
-
}
|
|
3902
|
-
else if (_nextPlugin && isFunction(_nextPlugin[STR_PROCESS_TELEMETRY ])) {
|
|
3903
|
-
_nextPlugin[STR_PROCESS_TELEMETRY ](env, null);
|
|
3904
|
-
}
|
|
3905
|
-
};
|
|
3906
|
-
_self._getTelCtx = _getTelCtx;
|
|
3907
|
-
function _getTelCtx(currentCtx) {
|
|
3908
|
-
if (currentCtx === void 0) { currentCtx = null; }
|
|
3909
|
-
var itemCtx = currentCtx;
|
|
3910
|
-
if (!itemCtx) {
|
|
3911
|
-
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self[STR_CORE ]);
|
|
3912
|
-
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
3913
|
-
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin[strGetPlugin]);
|
|
3914
|
-
}
|
|
3915
|
-
else {
|
|
3916
|
-
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin);
|
|
3917
|
-
}
|
|
3918
|
-
}
|
|
3919
|
-
return itemCtx;
|
|
3920
|
-
}
|
|
3921
|
-
function _setDefaults(config, core, pluginChain) {
|
|
3922
|
-
createDynamicConfig(config, defaultValues, safeGetLogger(core));
|
|
3923
|
-
if (!pluginChain && core) {
|
|
3924
|
-
pluginChain = core[_DYN_GET_PROCESS_TEL_CONT2 ]()[_DYN_GET_NEXT ]();
|
|
3925
|
-
}
|
|
3926
|
-
var nextPlugin = _nextPlugin;
|
|
3927
|
-
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
3928
|
-
nextPlugin = _nextPlugin[strGetPlugin]();
|
|
3929
|
-
}
|
|
3930
|
-
_self[STR_CORE ] = core;
|
|
3931
|
-
_rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
|
|
3932
|
-
}
|
|
3933
|
-
function _initDefaults() {
|
|
3934
|
-
_isinitialized = false;
|
|
3935
|
-
_self[STR_CORE ] = null;
|
|
3936
|
-
_rootCtx = null;
|
|
3937
|
-
_nextPlugin = null;
|
|
3938
|
-
_hookContainer = createUnloadHookContainer();
|
|
3939
|
-
_unloadHandlerContainer = createUnloadHandlerContainer();
|
|
3940
|
-
}
|
|
3941
|
-
}
|
|
3942
|
-
BaseTelemetryPlugin.__ieDyn=1;
|
|
3943
|
-
return BaseTelemetryPlugin;
|
|
3944
|
-
}());
|
|
3945
|
-
|
|
3946
|
-
var SeverityLevel = (createEnumStyle({
|
|
3947
|
-
Verbose: 0 ,
|
|
3948
|
-
Information: 1 ,
|
|
3949
|
-
Warning: 2 ,
|
|
3950
|
-
Error: 3 ,
|
|
3951
|
-
Critical: 4
|
|
3952
|
-
}));
|
|
3953
|
-
|
|
3954
|
-
var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
|
|
3955
|
-
var AnalyticsPluginIdentifier = "ApplicationInsightsAnalytics";
|
|
3956
|
-
|
|
3957
1477
|
var defaultReactExtensionConfig = objDeepFreeze({
|
|
3958
1478
|
history: { blkVal: true, v: undefined }
|
|
3959
1479
|
});
|
|
@@ -3973,19 +1493,19 @@
|
|
|
3973
1493
|
_initDefaults();
|
|
3974
1494
|
_self.initialize = function (config, core, extensions, pluginChain) {
|
|
3975
1495
|
_super.prototype.initialize.call(_this, config, core, extensions, pluginChain);
|
|
3976
|
-
var thePlugin = core.getPlugin(PropertiesPluginIdentifier);
|
|
1496
|
+
var thePlugin = core.getPlugin(applicationinsightsCoreJs.PropertiesPluginIdentifier);
|
|
3977
1497
|
if (thePlugin) {
|
|
3978
1498
|
properties = thePlugin.plugin;
|
|
3979
1499
|
}
|
|
3980
1500
|
objDefine(_self, "context", {
|
|
3981
1501
|
g: function () { return properties ? properties.context : null; }
|
|
3982
1502
|
});
|
|
3983
|
-
_self._addHook(onConfigChange(config, function (details) {
|
|
1503
|
+
_self._addHook(applicationinsightsCoreJs.onConfigChange(config, function (details) {
|
|
3984
1504
|
var _a;
|
|
3985
1505
|
var ctx = _self._getTelCtx();
|
|
3986
1506
|
_extensionConfig = ctx.getExtCfg(_this.identifier, defaultReactExtensionConfig);
|
|
3987
|
-
_analyticsPlugin = (_a = core.getPlugin(AnalyticsPluginIdentifier)) === null || _a === void 0 ? void 0 : _a.plugin;
|
|
3988
|
-
if (isFunction(_unlisten)) {
|
|
1507
|
+
_analyticsPlugin = (_a = core.getPlugin(applicationinsightsCoreJs.AnalyticsPluginIdentifier)) === null || _a === void 0 ? void 0 : _a.plugin;
|
|
1508
|
+
if (applicationinsightsCoreJs.isFunction(_unlisten)) {
|
|
3989
1509
|
_unlisten();
|
|
3990
1510
|
_unlisten = null;
|
|
3991
1511
|
}
|
|
@@ -4002,14 +1522,14 @@
|
|
|
4002
1522
|
}));
|
|
4003
1523
|
};
|
|
4004
1524
|
_self.getCookieMgr = function () {
|
|
4005
|
-
return safeGetCookieMgr(_self.core);
|
|
1525
|
+
return applicationinsightsCoreJs.safeGetCookieMgr(_self.core);
|
|
4006
1526
|
};
|
|
4007
1527
|
_self.getAppInsights = _getAnalytics;
|
|
4008
1528
|
_self.processTelemetry = function (env, itemCtx) {
|
|
4009
1529
|
_self.processNext(env, itemCtx);
|
|
4010
1530
|
};
|
|
4011
1531
|
_self._doTeardown = function (unloadCtx, unloadState, asyncCallback) {
|
|
4012
|
-
if (isFunction(_unlisten)) {
|
|
1532
|
+
if (applicationinsightsCoreJs.isFunction(_unlisten)) {
|
|
4013
1533
|
_unlisten();
|
|
4014
1534
|
}
|
|
4015
1535
|
if (_pageViewTimer) {
|
|
@@ -4017,7 +1537,7 @@
|
|
|
4017
1537
|
}
|
|
4018
1538
|
_initDefaults();
|
|
4019
1539
|
};
|
|
4020
|
-
proxyFunctions(_self, _getAnalytics, [
|
|
1540
|
+
applicationinsightsCoreJs.proxyFunctions(_self, _getAnalytics, [
|
|
4021
1541
|
"trackMetric",
|
|
4022
1542
|
"trackPageView",
|
|
4023
1543
|
"trackEvent",
|
|
@@ -4034,7 +1554,7 @@
|
|
|
4034
1554
|
}
|
|
4035
1555
|
function _getAnalytics() {
|
|
4036
1556
|
if (!_analyticsPlugin) {
|
|
4037
|
-
_throwInternal(_self.diagLog(), 1 , 64 , "Analytics plugin is not available, React plugin telemetry will not be sent: ");
|
|
1557
|
+
applicationinsightsCoreJs._throwInternal(_self.diagLog(), 1 , 64 , "Analytics plugin is not available, React plugin telemetry will not be sent: ");
|
|
4038
1558
|
}
|
|
4039
1559
|
return _analyticsPlugin;
|
|
4040
1560
|
}
|
|
@@ -4063,7 +1583,7 @@
|
|
|
4063
1583
|
}
|
|
4064
1584
|
ReactPlugin.__ieDyn=1;
|
|
4065
1585
|
return ReactPlugin;
|
|
4066
|
-
}(BaseTelemetryPlugin));
|
|
1586
|
+
}(applicationinsightsCoreJs.BaseTelemetryPlugin));
|
|
4067
1587
|
var ReactPlugin$1 = ReactPlugin;
|
|
4068
1588
|
|
|
4069
1589
|
var AITrackedComponentBase = /** @class */ (function (_super) {
|
|
@@ -4079,11 +1599,11 @@
|
|
|
4079
1599
|
_this._idleTimeout = 5000;
|
|
4080
1600
|
_this.trackActivity = function (e) {
|
|
4081
1601
|
if (_this._firstActiveTimestamp === 0) {
|
|
4082
|
-
_this._firstActiveTimestamp =
|
|
1602
|
+
_this._firstActiveTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4083
1603
|
_this._lastActiveTimestamp = _this._firstActiveTimestamp;
|
|
4084
1604
|
}
|
|
4085
1605
|
else {
|
|
4086
|
-
_this._lastActiveTimestamp =
|
|
1606
|
+
_this._lastActiveTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4087
1607
|
}
|
|
4088
1608
|
if (_this._idleStartTimestamp > 0) {
|
|
4089
1609
|
var lastIdleTime = _this._lastActiveTimestamp - _this._idleStartTimestamp;
|
|
@@ -4097,15 +1617,15 @@
|
|
|
4097
1617
|
}
|
|
4098
1618
|
AITrackedComponentBase.prototype.componentDidMount = function () {
|
|
4099
1619
|
var _this = this;
|
|
4100
|
-
this._mountTimestamp =
|
|
1620
|
+
this._mountTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4101
1621
|
this._firstActiveTimestamp = 0;
|
|
4102
1622
|
this._totalIdleTime = 0;
|
|
4103
1623
|
this._lastActiveTimestamp = 0;
|
|
4104
1624
|
this._idleStartTimestamp = 0;
|
|
4105
1625
|
this._idleCount = 0;
|
|
4106
1626
|
this._intervalId = setInterval(function () {
|
|
4107
|
-
if (_this._lastActiveTimestamp > 0 && _this._idleStartTimestamp === 0 &&
|
|
4108
|
-
_this._idleStartTimestamp =
|
|
1627
|
+
if (_this._lastActiveTimestamp > 0 && _this._idleStartTimestamp === 0 && applicationinsightsCoreJs.dateNow() - _this._lastActiveTimestamp >= _this._idleTimeout) {
|
|
1628
|
+
_this._idleStartTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4109
1629
|
_this._idleCount++;
|
|
4110
1630
|
}
|
|
4111
1631
|
}, 100);
|
|
@@ -4130,7 +1650,7 @@
|
|
|
4130
1650
|
this._reactPlugin.trackMetric(metricData, additionalProperties);
|
|
4131
1651
|
};
|
|
4132
1652
|
AITrackedComponentBase.prototype.getEngagementTimeSeconds = function () {
|
|
4133
|
-
return (
|
|
1653
|
+
return (applicationinsightsCoreJs.dateNow() - this._firstActiveTimestamp - this._totalIdleTime - this._idleCount * this._idleTimeout) / 1000;
|
|
4134
1654
|
};
|
|
4135
1655
|
return AITrackedComponentBase;
|
|
4136
1656
|
}(React__namespace.Component));
|
|
@@ -4173,7 +1693,7 @@
|
|
|
4173
1693
|
this.props.appInsights.trackException({
|
|
4174
1694
|
error: error,
|
|
4175
1695
|
exception: error,
|
|
4176
|
-
severityLevel: SeverityLevel.Error,
|
|
1696
|
+
severityLevel: applicationinsightsCoreJs.SeverityLevel.Error,
|
|
4177
1697
|
properties: errorInfo
|
|
4178
1698
|
});
|
|
4179
1699
|
};
|
|
@@ -4213,7 +1733,7 @@
|
|
|
4213
1733
|
}
|
|
4214
1734
|
|
|
4215
1735
|
function getEngagementTimeSeconds(trackedData) {
|
|
4216
|
-
return ((
|
|
1736
|
+
return ((applicationinsightsCoreJs.dateNow() -
|
|
4217
1737
|
trackedData.firstActiveTimestamp -
|
|
4218
1738
|
trackedData.totalIdleTime -
|
|
4219
1739
|
trackedData.idleCount * trackedData.idleTimeout) /
|
|
@@ -4221,7 +1741,7 @@
|
|
|
4221
1741
|
}
|
|
4222
1742
|
var useComponentTracking = function (reactPlugin, componentName, customProperties) {
|
|
4223
1743
|
var tracking = React.useRef({
|
|
4224
|
-
hookTimestamp:
|
|
1744
|
+
hookTimestamp: applicationinsightsCoreJs.dateNow(),
|
|
4225
1745
|
firstActiveTimestamp: 0,
|
|
4226
1746
|
totalIdleTime: 0,
|
|
4227
1747
|
lastActiveTimestamp: 0,
|
|
@@ -4234,8 +1754,8 @@
|
|
|
4234
1754
|
var trackedData = tracking.current;
|
|
4235
1755
|
if (trackedData.lastActiveTimestamp > 0 &&
|
|
4236
1756
|
trackedData.idleStartTimestamp === 0 &&
|
|
4237
|
-
|
|
4238
|
-
trackedData.idleStartTimestamp =
|
|
1757
|
+
applicationinsightsCoreJs.dateNow() - trackedData.lastActiveTimestamp >= trackedData.idleTimeout) {
|
|
1758
|
+
trackedData.idleStartTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4239
1759
|
trackedData.idleCount++;
|
|
4240
1760
|
}
|
|
4241
1761
|
};
|
|
@@ -4265,11 +1785,11 @@
|
|
|
4265
1785
|
var trackActivity = function () {
|
|
4266
1786
|
var trackedData = tracking.current;
|
|
4267
1787
|
if (trackedData.firstActiveTimestamp === 0) {
|
|
4268
|
-
trackedData.firstActiveTimestamp =
|
|
1788
|
+
trackedData.firstActiveTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4269
1789
|
trackedData.lastActiveTimestamp = trackedData.firstActiveTimestamp;
|
|
4270
1790
|
}
|
|
4271
1791
|
else {
|
|
4272
|
-
trackedData.lastActiveTimestamp =
|
|
1792
|
+
trackedData.lastActiveTimestamp = applicationinsightsCoreJs.dateNow();
|
|
4273
1793
|
}
|
|
4274
1794
|
if (trackedData.idleStartTimestamp > 0) {
|
|
4275
1795
|
var lastIdleTime = trackedData.lastActiveTimestamp - trackedData.idleStartTimestamp;
|