@microsoft/applicationinsights-analytics-js 3.0.0-beta.2208-14 → 3.0.0-beta.2208-19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/applicationinsights-analytics-js.integrity.json +9 -9
- package/browser/applicationinsights-analytics-js.js +1194 -1178
- package/browser/applicationinsights-analytics-js.js.map +1 -1
- package/browser/applicationinsights-analytics-js.min.js +2 -2
- package/browser/applicationinsights-analytics-js.min.js.map +1 -1
- package/dist/applicationinsights-analytics-js.api.json +6 -10
- package/dist/applicationinsights-analytics-js.d.ts +1 -1
- package/dist/applicationinsights-analytics-js.js +1194 -1178
- package/dist/applicationinsights-analytics-js.js.map +1 -1
- package/dist/applicationinsights-analytics-js.min.js +2 -2
- package/dist/applicationinsights-analytics-js.min.js.map +1 -1
- package/dist/applicationinsights-analytics-js.rollup.d.ts +1 -1
- package/dist-esm/JavaScriptSDK/AnalyticsPlugin.js +2 -2
- package/dist-esm/JavaScriptSDK/AnalyticsPlugin.js.map +1 -1
- package/dist-esm/JavaScriptSDK/Telemetry/PageViewManager.js +1 -1
- package/dist-esm/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js +1 -1
- package/dist-esm/JavaScriptSDK/Telemetry/PageVisitTimeManager.js +1 -1
- package/dist-esm/JavaScriptSDK/Timing.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryConfig.js +1 -1
- package/dist-esm/__DynamicConstants.js +4 -4
- package/dist-esm/__DynamicConstants.js.map +1 -1
- package/dist-esm/applicationinsights-analytics-js.js +1 -1
- package/package.json +7 -6
- package/src/__DynamicConstants.ts +3 -3
- package/tsconfig.json +1 -1
- package/types/tsdoc-metadata.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Web Analytics, 3.0.0-beta.2208-
|
|
2
|
+
* Application Insights JavaScript SDK - Web Analytics, 3.0.0-beta.2208-19
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -13,33 +13,33 @@
|
|
|
13
13
|
var strShimUndefined = "undefined";
|
|
14
14
|
var strShimPrototype = "prototype";
|
|
15
15
|
var strShimHasOwnProperty = "hasOwnProperty";
|
|
16
|
-
var ObjClass = Object;
|
|
17
|
-
var ObjProto = ObjClass[strShimPrototype];
|
|
18
|
-
var ObjAssign = ObjClass["assign"];
|
|
19
|
-
var ObjCreate = ObjClass["create"];
|
|
20
|
-
var ObjDefineProperty = ObjClass["defineProperty"];
|
|
21
|
-
var ObjHasOwnProperty = ObjProto[strShimHasOwnProperty];
|
|
16
|
+
var ObjClass$1 = Object;
|
|
17
|
+
var ObjProto$1 = ObjClass$1[strShimPrototype];
|
|
18
|
+
var ObjAssign = ObjClass$1["assign"];
|
|
19
|
+
var ObjCreate = ObjClass$1["create"];
|
|
20
|
+
var ObjDefineProperty = ObjClass$1["defineProperty"];
|
|
21
|
+
var ObjHasOwnProperty = ObjProto$1[strShimHasOwnProperty];
|
|
22
22
|
|
|
23
|
-
var _cachedGlobal = null;
|
|
24
|
-
function getGlobal(useCached) {
|
|
23
|
+
var _cachedGlobal$1 = null;
|
|
24
|
+
function getGlobal$1(useCached) {
|
|
25
25
|
if (useCached === void 0) { useCached = true; }
|
|
26
|
-
if (!_cachedGlobal || !useCached) {
|
|
26
|
+
if (!_cachedGlobal$1 || !useCached) {
|
|
27
27
|
if (typeof globalThis !== strShimUndefined && globalThis) {
|
|
28
|
-
_cachedGlobal = globalThis;
|
|
28
|
+
_cachedGlobal$1 = globalThis;
|
|
29
29
|
}
|
|
30
30
|
if (typeof self !== strShimUndefined && self) {
|
|
31
|
-
_cachedGlobal = self;
|
|
31
|
+
_cachedGlobal$1 = self;
|
|
32
32
|
}
|
|
33
33
|
if (typeof window !== strShimUndefined && window) {
|
|
34
|
-
_cachedGlobal = window;
|
|
34
|
+
_cachedGlobal$1 = window;
|
|
35
35
|
}
|
|
36
36
|
if (typeof global !== strShimUndefined && global) {
|
|
37
|
-
_cachedGlobal = global;
|
|
37
|
+
_cachedGlobal$1 = global;
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
return _cachedGlobal;
|
|
40
|
+
return _cachedGlobal$1;
|
|
41
41
|
}
|
|
42
|
-
function throwTypeError(message) {
|
|
42
|
+
function throwTypeError$1(message) {
|
|
43
43
|
throw new TypeError(message);
|
|
44
44
|
}
|
|
45
45
|
function objCreateFn(obj) {
|
|
@@ -52,20 +52,20 @@
|
|
|
52
52
|
}
|
|
53
53
|
var type = typeof obj;
|
|
54
54
|
if (type !== strShimObject && type !== strShimFunction) {
|
|
55
|
-
throwTypeError("Object prototype may only be an Object:" + obj);
|
|
55
|
+
throwTypeError$1("Object prototype may only be an Object:" + obj);
|
|
56
56
|
}
|
|
57
57
|
function tmpFunc() { }
|
|
58
58
|
tmpFunc[strShimPrototype] = obj;
|
|
59
59
|
return new tmpFunc();
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
(getGlobal() || {})["Symbol"];
|
|
63
|
-
(getGlobal() || {})["Reflect"];
|
|
62
|
+
(getGlobal$1() || {})["Symbol"];
|
|
63
|
+
(getGlobal$1() || {})["Reflect"];
|
|
64
64
|
var __objAssignFnImpl = function (t) {
|
|
65
65
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
66
66
|
s = arguments[i];
|
|
67
67
|
for (var p in s) {
|
|
68
|
-
if (ObjProto[strShimHasOwnProperty].call(s, p)) {
|
|
68
|
+
if (ObjProto$1[strShimHasOwnProperty].call(s, p)) {
|
|
69
69
|
t[p] = s[p];
|
|
70
70
|
}
|
|
71
71
|
}
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
};
|
|
75
75
|
var __assignFn = ObjAssign || __objAssignFnImpl;
|
|
76
76
|
var extendStaticsFn = function (d, b) {
|
|
77
|
-
extendStaticsFn = ObjClass["setPrototypeOf"] ||
|
|
77
|
+
extendStaticsFn = ObjClass$1["setPrototypeOf"] ||
|
|
78
78
|
({ __proto__: [] } instanceof Array && function (d, b) {
|
|
79
79
|
d.__proto__ = b;
|
|
80
80
|
}) ||
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
};
|
|
90
90
|
function __extendsFn(d, b) {
|
|
91
91
|
if (typeof b !== strShimFunction && b !== null) {
|
|
92
|
-
throwTypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
92
|
+
throwTypeError$1("Class extends value " + String(b) + " is not a constructor or null");
|
|
93
93
|
}
|
|
94
94
|
extendStaticsFn(d, b);
|
|
95
95
|
function __() {
|
|
@@ -113,13 +113,13 @@
|
|
|
113
113
|
var DynAllowInstChkTag = DynInstChkTag;
|
|
114
114
|
var DynProtoDefaultOptions = '_dfOpts';
|
|
115
115
|
var UnknownValue = '_unknown_';
|
|
116
|
-
var str__Proto
|
|
117
|
-
var DynProtoBaseProto = "_dyn" + str__Proto
|
|
116
|
+
var str__Proto = "__proto__";
|
|
117
|
+
var DynProtoBaseProto = "_dyn" + str__Proto;
|
|
118
118
|
var DynProtoCurrent = "_dynInstProto";
|
|
119
119
|
var strUseBaseInst = 'useBaseInst';
|
|
120
120
|
var strSetInstFuncs = 'setInstFuncs';
|
|
121
121
|
var Obj = Object;
|
|
122
|
-
var _objGetPrototypeOf
|
|
122
|
+
var _objGetPrototypeOf = Obj["getPrototypeOf"];
|
|
123
123
|
var _objGetOwnProps = Obj["getOwnPropertyNames"];
|
|
124
124
|
var _dynamicNames = 0;
|
|
125
125
|
function _hasOwnProperty(obj, prop) {
|
|
@@ -134,10 +134,10 @@
|
|
|
134
134
|
function _getObjProto$1(target) {
|
|
135
135
|
var newProto;
|
|
136
136
|
if (target) {
|
|
137
|
-
if (_objGetPrototypeOf
|
|
138
|
-
return _objGetPrototypeOf
|
|
137
|
+
if (_objGetPrototypeOf) {
|
|
138
|
+
return _objGetPrototypeOf(target);
|
|
139
139
|
}
|
|
140
|
-
var curProto = target[str__Proto
|
|
140
|
+
var curProto = target[str__Proto] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null);
|
|
141
141
|
newProto = target[DynProtoBaseProto] || curProto;
|
|
142
142
|
if (!_hasOwnProperty(target, DynProtoBaseProto)) {
|
|
143
143
|
delete target[DynProtoCurrent];
|
|
@@ -209,7 +209,7 @@
|
|
|
209
209
|
var visited = [];
|
|
210
210
|
while (baseProto && !_isObjectArrayOrFunctionPrototype(baseProto) && !_hasVisited(visited, baseProto)) {
|
|
211
211
|
_forEachProp(baseProto, function (name) {
|
|
212
|
-
if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf
|
|
212
|
+
if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf)) {
|
|
213
213
|
baseFuncs[name] = _instFuncProxy(thisTarget, baseProto, name);
|
|
214
214
|
}
|
|
215
215
|
});
|
|
@@ -289,7 +289,7 @@
|
|
|
289
289
|
}
|
|
290
290
|
}
|
|
291
291
|
function _checkPrototype(classProto, thisTarget) {
|
|
292
|
-
if (_objGetPrototypeOf
|
|
292
|
+
if (_objGetPrototypeOf) {
|
|
293
293
|
var visited = [];
|
|
294
294
|
var thisProto = _getObjProto$1(thisTarget);
|
|
295
295
|
while (thisProto && !_isObjectArrayOrFunctionPrototype(thisProto) && !_hasVisited(visited, thisProto)) {
|
|
@@ -334,7 +334,7 @@
|
|
|
334
334
|
var instFuncs = _getInstanceFuncs(target);
|
|
335
335
|
var baseFuncs = _getBaseFuncs(classProto, target, instFuncs, useBaseInst);
|
|
336
336
|
delegateFunc(target, baseFuncs);
|
|
337
|
-
var setInstanceFunc = !!_objGetPrototypeOf
|
|
337
|
+
var setInstanceFunc = !!_objGetPrototypeOf && !!perfOptions[strSetInstFuncs];
|
|
338
338
|
if (setInstanceFunc && options) {
|
|
339
339
|
setInstanceFunc = !!options[strSetInstFuncs];
|
|
340
340
|
}
|
|
@@ -346,6 +346,340 @@
|
|
|
346
346
|
};
|
|
347
347
|
dynamicProto[DynProtoDefaultOptions] = perfDefaults;
|
|
348
348
|
|
|
349
|
+
var UNDEF_VALUE = undefined;
|
|
350
|
+
var EMPTY = "";
|
|
351
|
+
var BOOLEAN = "boolean";
|
|
352
|
+
var FUNCTION = "function";
|
|
353
|
+
var NUMBER = "number";
|
|
354
|
+
var OBJECT = "object";
|
|
355
|
+
var PROTOTYPE = "prototype";
|
|
356
|
+
var STRING = "string";
|
|
357
|
+
var UNDEFINED = "undefined";
|
|
358
|
+
var HAS_OWN_PROPERTY = "hasOwnProperty";
|
|
359
|
+
var INDEX_OF = "indexOf";
|
|
360
|
+
var LENGTH = "length";
|
|
361
|
+
var ObjClass = Object;
|
|
362
|
+
var ObjProto = ObjClass[PROTOTYPE];
|
|
363
|
+
var StrCls = String;
|
|
364
|
+
var StrProto = StrCls[PROTOTYPE];
|
|
365
|
+
var ArrCls = Array;
|
|
366
|
+
|
|
367
|
+
function _safeCheck(cb, defValue) {
|
|
368
|
+
var result = defValue;
|
|
369
|
+
try {
|
|
370
|
+
result = cb();
|
|
371
|
+
}
|
|
372
|
+
catch (e) {
|
|
373
|
+
}
|
|
374
|
+
return result;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
function _createIs(theType) {
|
|
378
|
+
return function (value) {
|
|
379
|
+
return typeof value === theType;
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
function _createObjIs(theType) {
|
|
383
|
+
return function (value) {
|
|
384
|
+
return !!(value && objToString(value) === theType);
|
|
385
|
+
};
|
|
386
|
+
}
|
|
387
|
+
function objToString(value) {
|
|
388
|
+
return ObjProto.toString.call(value);
|
|
389
|
+
}
|
|
390
|
+
function isUndefined(value) {
|
|
391
|
+
return typeof value === UNDEFINED || value === UNDEFINED;
|
|
392
|
+
}
|
|
393
|
+
function isNullOrUndefined(value) {
|
|
394
|
+
return value === null || isUndefined(value);
|
|
395
|
+
}
|
|
396
|
+
function isDefined(arg) {
|
|
397
|
+
return !!arg || arg !== UNDEF_VALUE;
|
|
398
|
+
}
|
|
399
|
+
var isString = _createIs(STRING);
|
|
400
|
+
var isFunction = _createIs(FUNCTION);
|
|
401
|
+
function isObject(value) {
|
|
402
|
+
if (isNullOrUndefined(value)) {
|
|
403
|
+
return false;
|
|
404
|
+
}
|
|
405
|
+
return !!value && typeof value === OBJECT;
|
|
406
|
+
}
|
|
407
|
+
var isArray = ArrCls.isArray;
|
|
408
|
+
var isNumber = _createIs(NUMBER);
|
|
409
|
+
var isBoolean = _createIs(BOOLEAN);
|
|
410
|
+
var isError = _createObjIs("[object Error]");
|
|
411
|
+
function isTruthy(value) {
|
|
412
|
+
return !(!value || _safeCheck(function () { return !(value && (0 + value)); }, !value));
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
var DOCUMENT = "document";
|
|
416
|
+
var HISTORY = "history";
|
|
417
|
+
var NAVIGATOR = "navigator";
|
|
418
|
+
var WINDOW = "window";
|
|
419
|
+
var _cachedGlobal = null;
|
|
420
|
+
var _hasWindow = _safeCheck(function () { return isDefined(window); }, false);
|
|
421
|
+
var _hasDocument = _safeCheck(function () { return isDefined(document); }, false);
|
|
422
|
+
var _hasNavigator = _safeCheck(function () { return isDefined(navigator); }, false);
|
|
423
|
+
var _hasHistory = _safeCheck(function () { return isDefined(history); }, false);
|
|
424
|
+
_safeCheck(function () { return !!(self && self instanceof WorkerGlobalScope); }, false);
|
|
425
|
+
_safeCheck(function () { return !!(process && (process.versions || {}).node); }, false);
|
|
426
|
+
function getGlobal(useCached) {
|
|
427
|
+
var result = useCached === false ? null : _cachedGlobal;
|
|
428
|
+
if (!result) {
|
|
429
|
+
if (!result && typeof globalThis !== UNDEFINED) {
|
|
430
|
+
result = globalThis;
|
|
431
|
+
}
|
|
432
|
+
if (!result && typeof self !== UNDEFINED) {
|
|
433
|
+
result = self;
|
|
434
|
+
}
|
|
435
|
+
if (!result && typeof window !== UNDEFINED) {
|
|
436
|
+
result = window;
|
|
437
|
+
}
|
|
438
|
+
if (!result && typeof global !== UNDEFINED) {
|
|
439
|
+
result = global;
|
|
440
|
+
}
|
|
441
|
+
_cachedGlobal = result;
|
|
442
|
+
}
|
|
443
|
+
return result;
|
|
444
|
+
}
|
|
445
|
+
function getInst(name, useCached) {
|
|
446
|
+
var gbl = getGlobal(useCached);
|
|
447
|
+
if (gbl && gbl[name]) {
|
|
448
|
+
return gbl[name];
|
|
449
|
+
}
|
|
450
|
+
if (name === WINDOW && _hasWindow) {
|
|
451
|
+
return window;
|
|
452
|
+
}
|
|
453
|
+
return null;
|
|
454
|
+
}
|
|
455
|
+
function getDocument() {
|
|
456
|
+
return _hasDocument ? document : getInst(DOCUMENT);
|
|
457
|
+
}
|
|
458
|
+
function hasWindow() {
|
|
459
|
+
return !!getWindow();
|
|
460
|
+
}
|
|
461
|
+
function getWindow() {
|
|
462
|
+
return _hasWindow ? window : getInst(WINDOW);
|
|
463
|
+
}
|
|
464
|
+
function getNavigator() {
|
|
465
|
+
return _hasNavigator ? navigator : getInst(NAVIGATOR);
|
|
466
|
+
}
|
|
467
|
+
function hasHistory() {
|
|
468
|
+
return !!getHistory();
|
|
469
|
+
}
|
|
470
|
+
function getHistory() {
|
|
471
|
+
return _hasHistory ? history : getInst(HISTORY);
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
function objHasOwnProperty(obj, prop) {
|
|
475
|
+
return obj && ObjProto[HAS_OWN_PROPERTY].call(obj, prop);
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
function objForEachKey(theObject, callbackfn, thisArg) {
|
|
479
|
+
if (theObject && isObject(theObject)) {
|
|
480
|
+
for (var prop in theObject) {
|
|
481
|
+
if (objHasOwnProperty(theObject, prop)) {
|
|
482
|
+
if (callbackfn.call(thisArg || theObject, prop, theObject[prop]) === -1) {
|
|
483
|
+
break;
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
}
|
|
489
|
+
|
|
490
|
+
function arrForEach(arr, callbackfn, thisArg) {
|
|
491
|
+
if (arr) {
|
|
492
|
+
var len = arr[LENGTH];
|
|
493
|
+
for (var idx = 0; idx < len; idx++) {
|
|
494
|
+
if (idx in arr) {
|
|
495
|
+
if (callbackfn.call(thisArg || arr, arr[idx], idx, arr) === -1) {
|
|
496
|
+
break;
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
function throwError(message) {
|
|
504
|
+
throw new Error(message);
|
|
505
|
+
}
|
|
506
|
+
function throwTypeError(message) {
|
|
507
|
+
throw new TypeError(message);
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
var _objFreeze = ObjClass["freeze"];
|
|
511
|
+
function _doNothing(value) {
|
|
512
|
+
return value;
|
|
513
|
+
}
|
|
514
|
+
function objKeys(value) {
|
|
515
|
+
if (!isObject(value) || value === null) {
|
|
516
|
+
throwTypeError("objKeys called on non-object");
|
|
517
|
+
}
|
|
518
|
+
return ObjClass.keys(value);
|
|
519
|
+
}
|
|
520
|
+
function objDeepFreeze(value) {
|
|
521
|
+
if (_objFreeze) {
|
|
522
|
+
objForEachKey(value, function (key, value) {
|
|
523
|
+
if (isArray(value) || isObject(value)) {
|
|
524
|
+
_objFreeze(value);
|
|
525
|
+
}
|
|
526
|
+
});
|
|
527
|
+
}
|
|
528
|
+
return objFreeze(value);
|
|
529
|
+
}
|
|
530
|
+
var objFreeze = _objFreeze || _doNothing;
|
|
531
|
+
|
|
532
|
+
function createEnum(values) {
|
|
533
|
+
var theEnum = {};
|
|
534
|
+
objForEachKey(values, function (field, value) {
|
|
535
|
+
theEnum[field] = value;
|
|
536
|
+
theEnum[value] = field;
|
|
537
|
+
});
|
|
538
|
+
return objDeepFreeze(theEnum);
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
function dumpObj(object, format) {
|
|
542
|
+
var objectTypeDump = objToString(object);
|
|
543
|
+
var propertyValueDump = "";
|
|
544
|
+
if (objectTypeDump === "[object Error]") {
|
|
545
|
+
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object.name + "'";
|
|
546
|
+
}
|
|
547
|
+
else {
|
|
548
|
+
if (format) {
|
|
549
|
+
if (isNumber(format)) {
|
|
550
|
+
propertyValueDump = JSON.stringify(object, null, format);
|
|
551
|
+
}
|
|
552
|
+
else {
|
|
553
|
+
propertyValueDump = JSON.stringify(object, null, format ? 4 : 0);
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
else {
|
|
557
|
+
propertyValueDump = JSON.stringify(object);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
return objectTypeDump + ": " + propertyValueDump;
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
function _unwrapFunction(funcName) {
|
|
564
|
+
return function (thisArg) {
|
|
565
|
+
var args = [];
|
|
566
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
567
|
+
args[_i - 1] = arguments[_i];
|
|
568
|
+
}
|
|
569
|
+
if ((thisArg || thisArg === EMPTY) && thisArg[funcName]) {
|
|
570
|
+
return thisArg[funcName].apply(thisArg, args);
|
|
571
|
+
}
|
|
572
|
+
throwTypeError("'" + funcName + "' not defined for " + dumpObj(thisArg));
|
|
573
|
+
};
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
var arrMap = _unwrapFunction("map");
|
|
577
|
+
|
|
578
|
+
function objSetPrototypeOf(obj, proto) {
|
|
579
|
+
var fn = ObjClass["setPrototypeOf"] ||
|
|
580
|
+
({ __proto__: [] } instanceof Array && function (d, b) {
|
|
581
|
+
d.__proto__ = b;
|
|
582
|
+
}) ||
|
|
583
|
+
function (d, b) {
|
|
584
|
+
objForEachKey(b, function (key, value) {
|
|
585
|
+
d[key] = value;
|
|
586
|
+
});
|
|
587
|
+
};
|
|
588
|
+
return fn(obj, proto);
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
function _createCustomError(name, d, b) {
|
|
592
|
+
objSetPrototypeOf(d, b);
|
|
593
|
+
function __() {
|
|
594
|
+
this.constructor = d;
|
|
595
|
+
}
|
|
596
|
+
__[PROTOTYPE] = b[PROTOTYPE];
|
|
597
|
+
__[PROTOTYPE].name = name;
|
|
598
|
+
d[PROTOTYPE] = new __();
|
|
599
|
+
return d;
|
|
600
|
+
}
|
|
601
|
+
function createCustomError(name, constructCb) {
|
|
602
|
+
var baseClass = Error;
|
|
603
|
+
var customError = _createCustomError(name, function () {
|
|
604
|
+
var _this = this;
|
|
605
|
+
_this = baseClass.apply(_this, arguments) || _this;
|
|
606
|
+
constructCb && constructCb(_this, arguments);
|
|
607
|
+
return _this;
|
|
608
|
+
}, baseClass);
|
|
609
|
+
return customError;
|
|
610
|
+
}
|
|
611
|
+
var _unsupportedError;
|
|
612
|
+
function throwUnsupported(message) {
|
|
613
|
+
if (!_unsupportedError) {
|
|
614
|
+
_unsupportedError = createCustomError("UnsupportedError");
|
|
615
|
+
}
|
|
616
|
+
throw new _unsupportedError(message);
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
var _objDefineProperty$1 = ObjClass["defineProperty"];
|
|
620
|
+
function objDefineProp(target, key, descriptor) {
|
|
621
|
+
if (_objDefineProperty$1) {
|
|
622
|
+
_objDefineProperty$1(target, key, descriptor);
|
|
623
|
+
return target;
|
|
624
|
+
}
|
|
625
|
+
throwUnsupported("Unable to define property [" + objToString(key) + "] on " + dumpObj(target));
|
|
626
|
+
}
|
|
627
|
+
function objDefineAccessors(target, prop, getProp, setProp, configurable) {
|
|
628
|
+
if (_objDefineProperty$1) {
|
|
629
|
+
try {
|
|
630
|
+
var descriptor = {
|
|
631
|
+
enumerable: true,
|
|
632
|
+
configurable: isUndefined(configurable) ? true : configurable
|
|
633
|
+
};
|
|
634
|
+
if (getProp) {
|
|
635
|
+
descriptor.get = getProp;
|
|
636
|
+
}
|
|
637
|
+
if (setProp) {
|
|
638
|
+
descriptor.set = setProp;
|
|
639
|
+
}
|
|
640
|
+
return objDefineProp(target, prop, descriptor);
|
|
641
|
+
}
|
|
642
|
+
catch (e) {
|
|
643
|
+
throwUnsupported("Unable to define accessors for [" + objToString(prop) + "] on " + dumpObj(target));
|
|
644
|
+
}
|
|
645
|
+
}
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
var strSubstring = _unwrapFunction("substring");
|
|
649
|
+
|
|
650
|
+
var ENDS_WITH = "endsWith";
|
|
651
|
+
var strEndsWith = StrProto[ENDS_WITH] ? _unwrapFunction(ENDS_WITH) : polyStrEndsWith;
|
|
652
|
+
function polyStrEndsWith(value, searchString, length) {
|
|
653
|
+
if (!isString(value)) {
|
|
654
|
+
throwTypeError("'" + dumpObj(value) + "' is not a string");
|
|
655
|
+
}
|
|
656
|
+
var searchValue = isString(searchString) ? searchString : "" + searchString;
|
|
657
|
+
var chkLen = searchValue[LENGTH];
|
|
658
|
+
var len = value[LENGTH];
|
|
659
|
+
var end = !isUndefined(length) && length < len ? length : len;
|
|
660
|
+
return strSubstring(value, end - chkLen, end) === searchValue;
|
|
661
|
+
}
|
|
662
|
+
|
|
663
|
+
var strIndexOf = _unwrapFunction(INDEX_OF);
|
|
664
|
+
|
|
665
|
+
function _createTrimFn(exp) {
|
|
666
|
+
return function _doTrim(value) {
|
|
667
|
+
if (isNullOrUndefined(value)) {
|
|
668
|
+
throwTypeError("strTrim called [" + dumpObj(value) + "]");
|
|
669
|
+
}
|
|
670
|
+
if (value && value.replace) {
|
|
671
|
+
value = value.replace(exp, "");
|
|
672
|
+
}
|
|
673
|
+
return value;
|
|
674
|
+
};
|
|
675
|
+
}
|
|
676
|
+
var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
|
|
677
|
+
|
|
678
|
+
var TRIM = "trim";
|
|
679
|
+
var strTrim = StrProto[TRIM] ? _unwrapFunction(TRIM) : polyStrTrim;
|
|
680
|
+
|
|
681
|
+
var createEnumStyle = createEnum;
|
|
682
|
+
|
|
349
683
|
var _DYN_INITIALIZE = "initialize";
|
|
350
684
|
var _DYN_NAME$1 = "name";
|
|
351
685
|
var _DYN_IDENTIFIER = "identifier";
|
|
@@ -370,11 +704,9 @@
|
|
|
370
704
|
var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
|
|
371
705
|
var _DYN_CREATE_NEW = "createNew";
|
|
372
706
|
var _DYN_COOKIE_CFG = "cookieCfg";
|
|
373
|
-
var _DYN_INDEX_OF$1 = "indexOf";
|
|
374
707
|
var _DYN_SUBSTRING$1 = "substring";
|
|
375
708
|
var _DYN_USER_AGENT = "userAgent";
|
|
376
709
|
var _DYN_SPLIT$1 = "split";
|
|
377
|
-
var _DYN_SET_ENABLED = "setEnabled";
|
|
378
710
|
var _DYN_SUBSTR = "substr";
|
|
379
711
|
var _DYN_NODE_TYPE = "nodeType";
|
|
380
712
|
var _DYN_APPLY = "apply";
|
|
@@ -382,9 +714,9 @@
|
|
|
382
714
|
var _DYN_ENABLE_DEBUG_EXCEPTI4 = "enableDebugExceptions";
|
|
383
715
|
var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
|
|
384
716
|
var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
|
|
385
|
-
var _DYN_CALL = "call";
|
|
386
717
|
var _DYN_TYPE = "type";
|
|
387
718
|
var _DYN_HANDLER = "handler";
|
|
719
|
+
var _DYN_CALL = "call";
|
|
388
720
|
var _DYN_IS_CHILD_EVT = "isChildEvt";
|
|
389
721
|
var _DYN_GET_CTX = "getCtx";
|
|
390
722
|
var _DYN_SET_CTX = "setCtx";
|
|
@@ -400,59 +732,44 @@
|
|
|
400
732
|
var STR_WARN_TO_CONSOLE = "warnToConsole";
|
|
401
733
|
var STR_GET_PERF_MGR = "getPerfMgr";
|
|
402
734
|
|
|
735
|
+
var _aiNamespace = null;
|
|
736
|
+
function _getExtensionNamespace() {
|
|
737
|
+
var target = getInst("Microsoft");
|
|
738
|
+
if (target) {
|
|
739
|
+
_aiNamespace = target["ApplicationInsights"];
|
|
740
|
+
}
|
|
741
|
+
return _aiNamespace;
|
|
742
|
+
}
|
|
743
|
+
function getDebugExt(config) {
|
|
744
|
+
var ns = _aiNamespace;
|
|
745
|
+
if (!ns && config.disableDbgExt !== true) {
|
|
746
|
+
ns = _aiNamespace || _getExtensionNamespace();
|
|
747
|
+
}
|
|
748
|
+
return ns ? ns["ChromeDbgExt"] : null;
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
var cString = "String";
|
|
752
|
+
var cObject = "Object";
|
|
403
753
|
var strToISOString = "toISOString";
|
|
404
|
-
var cStrEndsWith = "endsWith";
|
|
405
|
-
var strMap = "map";
|
|
406
|
-
var cStrTrim = "trim";
|
|
407
754
|
var strToString = "toString";
|
|
408
|
-
var
|
|
755
|
+
var strGetPrototypeOf = "getPrototypeOf";
|
|
409
756
|
var strConstructor = "constructor";
|
|
410
|
-
var _objDefineProperty$1 = ObjDefineProperty;
|
|
411
|
-
var _objFreeze = ObjClass.freeze;
|
|
412
|
-
var _objKeys = ObjClass.keys;
|
|
413
|
-
var StringProto = String[strShimPrototype];
|
|
414
|
-
var _strTrim = StringProto[cStrTrim];
|
|
415
|
-
var _strEndsWith = StringProto[cStrEndsWith];
|
|
416
757
|
var DateProto = Date[strShimPrototype];
|
|
417
|
-
var
|
|
418
|
-
var
|
|
419
|
-
var
|
|
420
|
-
var _fnToString = ObjHasOwnProperty[strToString];
|
|
421
|
-
var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass);
|
|
758
|
+
var _dateToISOString = DateProto[strToISOString] || _polyfillRequired("Date", strToISOString);
|
|
759
|
+
var _fnToString = ObjHasOwnProperty[strToString] || _polyfillRequired(cString, strToString);
|
|
760
|
+
var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass$1);
|
|
422
761
|
var rCamelCase = /-([a-z])/g;
|
|
423
762
|
var rNormalizeInvalid = /([^\w\d_$])/g;
|
|
424
763
|
var rLeadingNumeric = /^(\d+[\w\d_$])/;
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
return _objGetPrototypeOf(target);
|
|
430
|
-
}
|
|
431
|
-
var newProto = target[str__Proto] || target[strShimPrototype] || target[strConstructor];
|
|
432
|
-
if (newProto) {
|
|
433
|
-
return newProto;
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
return null;
|
|
437
|
-
}
|
|
438
|
-
function isUndefined(value) {
|
|
439
|
-
return value === undefined || typeof value === strShimUndefined;
|
|
440
|
-
}
|
|
441
|
-
function isNullOrUndefined(value) {
|
|
442
|
-
return (value === null || isUndefined(value));
|
|
764
|
+
function _polyfillRequired(object, name) {
|
|
765
|
+
return function () {
|
|
766
|
+
throwUnsupported("Polyfill required for [" + name + "]");
|
|
767
|
+
};
|
|
443
768
|
}
|
|
769
|
+
var _getObjProto = Object[strGetPrototypeOf] || _polyfillRequired(cObject, strGetPrototypeOf);
|
|
444
770
|
function isNotNullOrUndefined(value) {
|
|
445
771
|
return !isNullOrUndefined(value);
|
|
446
772
|
}
|
|
447
|
-
function hasOwnProperty(obj, prop) {
|
|
448
|
-
return !!(obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop));
|
|
449
|
-
}
|
|
450
|
-
function isObject(value) {
|
|
451
|
-
return !!(value && typeof value === strShimObject);
|
|
452
|
-
}
|
|
453
|
-
function isFunction(value) {
|
|
454
|
-
return !!(value && typeof value === strShimFunction);
|
|
455
|
-
}
|
|
456
773
|
function normalizeJsName(name) {
|
|
457
774
|
var value = name;
|
|
458
775
|
if (value && isString(value)) {
|
|
@@ -466,61 +783,16 @@
|
|
|
466
783
|
}
|
|
467
784
|
return value;
|
|
468
785
|
}
|
|
469
|
-
function objForEachKey(target, callbackfn) {
|
|
470
|
-
if (target) {
|
|
471
|
-
for (var prop in target) {
|
|
472
|
-
if (ObjHasOwnProperty[_DYN_CALL ](target, prop)) {
|
|
473
|
-
callbackfn[_DYN_CALL ](target, prop, target[prop]);
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
}
|
|
477
|
-
}
|
|
478
|
-
function strEndsWith(value, search) {
|
|
479
|
-
var result = false;
|
|
480
|
-
if (value && search && !(result = value === search)) {
|
|
481
|
-
result = _strEndsWith ? value[cStrEndsWith](search) : _strEndsWithPoly(value, search);
|
|
482
|
-
}
|
|
483
|
-
return result;
|
|
484
|
-
}
|
|
485
|
-
function _strEndsWithPoly(value, search) {
|
|
486
|
-
var result = false;
|
|
487
|
-
var searchLen = search ? search[_DYN_LENGTH$2 ] : 0;
|
|
488
|
-
var valLen = value ? value[_DYN_LENGTH$2 ] : 0;
|
|
489
|
-
if (searchLen && valLen && valLen >= searchLen && !(result = value === search)) {
|
|
490
|
-
var pos = valLen - 1;
|
|
491
|
-
for (var lp = searchLen - 1; lp >= 0; lp--) {
|
|
492
|
-
if (value[pos] != search[lp]) {
|
|
493
|
-
return false;
|
|
494
|
-
}
|
|
495
|
-
pos--;
|
|
496
|
-
}
|
|
497
|
-
result = true;
|
|
498
|
-
}
|
|
499
|
-
return result;
|
|
500
|
-
}
|
|
501
786
|
function strContains(value, search) {
|
|
502
787
|
if (value && search) {
|
|
503
|
-
return value
|
|
788
|
+
return strIndexOf(value, search) !== -1;
|
|
504
789
|
}
|
|
505
790
|
return false;
|
|
506
791
|
}
|
|
507
|
-
var isArray = _isArray || _isArrayPoly;
|
|
508
|
-
function _isArrayPoly(obj) {
|
|
509
|
-
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Array]");
|
|
510
|
-
}
|
|
511
|
-
function isError(obj) {
|
|
512
|
-
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Error]");
|
|
513
|
-
}
|
|
514
|
-
function isString(value) {
|
|
515
|
-
return typeof value === "string";
|
|
516
|
-
}
|
|
517
|
-
function isBoolean(value) {
|
|
518
|
-
return typeof value === "boolean";
|
|
519
|
-
}
|
|
520
792
|
function isPlainObject(value) {
|
|
521
793
|
var result = false;
|
|
522
794
|
if (value && typeof value === "object") {
|
|
523
|
-
var proto =
|
|
795
|
+
var proto = _getObjProto(value);
|
|
524
796
|
if (!proto) {
|
|
525
797
|
result = true;
|
|
526
798
|
}
|
|
@@ -534,156 +806,25 @@
|
|
|
534
806
|
return result;
|
|
535
807
|
}
|
|
536
808
|
function toISOString(date) {
|
|
537
|
-
|
|
538
|
-
return _dataToISOString ? date[strToISOString]() : _toISOStringPoly(date);
|
|
539
|
-
}
|
|
809
|
+
return _dateToISOString[_DYN_CALL ](date);
|
|
540
810
|
}
|
|
541
|
-
function
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
return r;
|
|
549
|
-
};
|
|
550
|
-
return date.getUTCFullYear()
|
|
551
|
-
+ "-" + pad(date.getUTCMonth() + 1)
|
|
552
|
-
+ "-" + pad(date.getUTCDate())
|
|
553
|
-
+ "T" + pad(date.getUTCHours())
|
|
554
|
-
+ ":" + pad(date.getUTCMinutes())
|
|
555
|
-
+ ":" + pad(date.getUTCSeconds())
|
|
556
|
-
+ "." + String((date.getUTCMilliseconds() / 1000).toFixed(3)).slice(2, 5)
|
|
557
|
-
+ "Z";
|
|
811
|
+
function dateNow() {
|
|
812
|
+
var dt = Date;
|
|
813
|
+
return dt.now ? dt.now() : new dt().getTime();
|
|
814
|
+
}
|
|
815
|
+
function getExceptionName(object) {
|
|
816
|
+
if (isError(object)) {
|
|
817
|
+
return object[_DYN_NAME$1 ];
|
|
558
818
|
}
|
|
819
|
+
return STR_EMPTY;
|
|
559
820
|
}
|
|
560
|
-
function
|
|
561
|
-
var
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
}
|
|
568
|
-
}
|
|
569
|
-
}
|
|
570
|
-
}
|
|
571
|
-
catch (e) {
|
|
572
|
-
}
|
|
573
|
-
}
|
|
574
|
-
function arrMap(arr, callbackfn, thisArg) {
|
|
575
|
-
var results;
|
|
576
|
-
if (arr) {
|
|
577
|
-
if (arr[strMap]) {
|
|
578
|
-
return arr[strMap](callbackfn, thisArg);
|
|
579
|
-
}
|
|
580
|
-
var len = arr[_DYN_LENGTH$2 ];
|
|
581
|
-
var _this = thisArg || arr;
|
|
582
|
-
results = new Array(len);
|
|
583
|
-
try {
|
|
584
|
-
for (var lp = 0; lp < len; lp++) {
|
|
585
|
-
if (lp in arr) {
|
|
586
|
-
results[lp] = callbackfn[_DYN_CALL ](_this, arr[lp], arr);
|
|
587
|
-
}
|
|
588
|
-
}
|
|
589
|
-
}
|
|
590
|
-
catch (e) {
|
|
591
|
-
}
|
|
592
|
-
}
|
|
593
|
-
return results;
|
|
594
|
-
}
|
|
595
|
-
function strTrim(str) {
|
|
596
|
-
if (str) {
|
|
597
|
-
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str[_DYN_REPLACE ] ? str[_DYN_REPLACE ](/^\s+|\s+$/g, STR_EMPTY) : str);
|
|
598
|
-
}
|
|
599
|
-
return str;
|
|
600
|
-
}
|
|
601
|
-
var _objKeysHasDontEnumBug = !({ toString: null }).propertyIsEnumerable("toString");
|
|
602
|
-
var _objKeysDontEnums = [
|
|
603
|
-
"toString",
|
|
604
|
-
"toLocaleString",
|
|
605
|
-
"valueOf",
|
|
606
|
-
"hasOwnProperty",
|
|
607
|
-
"isPrototypeOf",
|
|
608
|
-
"propertyIsEnumerable",
|
|
609
|
-
"constructor"
|
|
610
|
-
];
|
|
611
|
-
function objKeys(obj) {
|
|
612
|
-
var objType = typeof obj;
|
|
613
|
-
if (objType !== strShimFunction && (objType !== strShimObject || obj === null)) {
|
|
614
|
-
throwTypeError("objKeys called on non-object");
|
|
615
|
-
}
|
|
616
|
-
if (!_objKeysHasDontEnumBug && _objKeys) {
|
|
617
|
-
return _objKeys(obj);
|
|
618
|
-
}
|
|
619
|
-
var result = [];
|
|
620
|
-
for (var prop in obj) {
|
|
621
|
-
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop)) {
|
|
622
|
-
result[_DYN_PUSH ](prop);
|
|
623
|
-
}
|
|
624
|
-
}
|
|
625
|
-
if (_objKeysHasDontEnumBug) {
|
|
626
|
-
var dontEnumsLength = _objKeysDontEnums[_DYN_LENGTH$2 ];
|
|
627
|
-
for (var lp = 0; lp < dontEnumsLength; lp++) {
|
|
628
|
-
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, _objKeysDontEnums[lp])) {
|
|
629
|
-
result[_DYN_PUSH ](_objKeysDontEnums[lp]);
|
|
630
|
-
}
|
|
631
|
-
}
|
|
632
|
-
}
|
|
633
|
-
return result;
|
|
634
|
-
}
|
|
635
|
-
function objDefineAccessors(target, prop, getProp, setProp) {
|
|
636
|
-
if (_objDefineProperty$1) {
|
|
637
|
-
try {
|
|
638
|
-
var descriptor = {
|
|
639
|
-
enumerable: true,
|
|
640
|
-
configurable: true
|
|
641
|
-
};
|
|
642
|
-
if (getProp) {
|
|
643
|
-
descriptor.get = getProp;
|
|
644
|
-
}
|
|
645
|
-
if (setProp) {
|
|
646
|
-
descriptor.set = setProp;
|
|
647
|
-
}
|
|
648
|
-
_objDefineProperty$1(target, prop, descriptor);
|
|
649
|
-
return true;
|
|
650
|
-
}
|
|
651
|
-
catch (e) {
|
|
652
|
-
}
|
|
653
|
-
}
|
|
654
|
-
return false;
|
|
655
|
-
}
|
|
656
|
-
function _doNothing(value) {
|
|
657
|
-
return value;
|
|
658
|
-
}
|
|
659
|
-
function deepFreeze(obj) {
|
|
660
|
-
if (_objFreeze) {
|
|
661
|
-
objForEachKey(obj, function (name, value) {
|
|
662
|
-
if (isArray(value) || isObject(value)) {
|
|
663
|
-
_objFreeze(value);
|
|
664
|
-
}
|
|
665
|
-
});
|
|
666
|
-
}
|
|
667
|
-
return objFreeze(obj);
|
|
668
|
-
}
|
|
669
|
-
var objFreeze = _objFreeze || _doNothing;
|
|
670
|
-
function dateNow() {
|
|
671
|
-
var dt = Date;
|
|
672
|
-
return dt.now ? dt.now() : new dt().getTime();
|
|
673
|
-
}
|
|
674
|
-
function getExceptionName(object) {
|
|
675
|
-
if (isError(object)) {
|
|
676
|
-
return object[_DYN_NAME$1 ];
|
|
677
|
-
}
|
|
678
|
-
return STR_EMPTY;
|
|
679
|
-
}
|
|
680
|
-
function setValue(target, field, value, valChk, srcChk) {
|
|
681
|
-
var theValue = value;
|
|
682
|
-
if (target) {
|
|
683
|
-
theValue = target[field];
|
|
684
|
-
if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
|
|
685
|
-
theValue = value;
|
|
686
|
-
target[field] = theValue;
|
|
821
|
+
function setValue(target, field, value, valChk, srcChk) {
|
|
822
|
+
var theValue = value;
|
|
823
|
+
if (target) {
|
|
824
|
+
theValue = target[field];
|
|
825
|
+
if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
|
|
826
|
+
theValue = value;
|
|
827
|
+
target[field] = theValue;
|
|
687
828
|
}
|
|
688
829
|
}
|
|
689
830
|
return theValue;
|
|
@@ -691,12 +832,6 @@
|
|
|
691
832
|
function getCfgValue(theValue, defaultValue) {
|
|
692
833
|
return !isNullOrUndefined(theValue) ? theValue : defaultValue;
|
|
693
834
|
}
|
|
694
|
-
function isTruthy(value) {
|
|
695
|
-
return !!value;
|
|
696
|
-
}
|
|
697
|
-
function throwError(message) {
|
|
698
|
-
throw new Error(message);
|
|
699
|
-
}
|
|
700
835
|
function _createProxyFunction(source, funcName) {
|
|
701
836
|
var srcFunc = null;
|
|
702
837
|
var src = null;
|
|
@@ -768,19 +903,6 @@
|
|
|
768
903
|
return extended;
|
|
769
904
|
}
|
|
770
905
|
|
|
771
|
-
function createEnumStyle(values) {
|
|
772
|
-
var enumClass = {};
|
|
773
|
-
objForEachKey(values, function (field, value) {
|
|
774
|
-
enumClass[field] = value;
|
|
775
|
-
enumClass[value] = field;
|
|
776
|
-
});
|
|
777
|
-
return deepFreeze(enumClass);
|
|
778
|
-
}
|
|
779
|
-
|
|
780
|
-
var strWindow = "window";
|
|
781
|
-
var strDocument = "document";
|
|
782
|
-
var strNavigator = "navigator";
|
|
783
|
-
var strHistory = "history";
|
|
784
906
|
var strLocation = "location";
|
|
785
907
|
var strConsole = "console";
|
|
786
908
|
var strPerformance = "performance";
|
|
@@ -792,55 +914,9 @@
|
|
|
792
914
|
var _isTrident = null;
|
|
793
915
|
var _navUserAgentCheck = null;
|
|
794
916
|
var _enableMocks = false;
|
|
795
|
-
function getGlobalInst(name) {
|
|
796
|
-
var gbl = getGlobal();
|
|
797
|
-
if (gbl && gbl[name]) {
|
|
798
|
-
return gbl[name];
|
|
799
|
-
}
|
|
800
|
-
if (name === strWindow && hasWindow()) {
|
|
801
|
-
return window;
|
|
802
|
-
}
|
|
803
|
-
return null;
|
|
804
|
-
}
|
|
805
|
-
function hasWindow() {
|
|
806
|
-
return Boolean(typeof window === strShimObject && window);
|
|
807
|
-
}
|
|
808
|
-
function getWindow() {
|
|
809
|
-
if (hasWindow()) {
|
|
810
|
-
return window;
|
|
811
|
-
}
|
|
812
|
-
return getGlobalInst(strWindow);
|
|
813
|
-
}
|
|
814
|
-
function hasDocument() {
|
|
815
|
-
return Boolean(typeof document === strShimObject && document);
|
|
816
|
-
}
|
|
817
|
-
function getDocument() {
|
|
818
|
-
if (hasDocument()) {
|
|
819
|
-
return document;
|
|
820
|
-
}
|
|
821
|
-
return getGlobalInst(strDocument);
|
|
822
|
-
}
|
|
823
|
-
function hasNavigator() {
|
|
824
|
-
return Boolean(typeof navigator === strShimObject && navigator);
|
|
825
|
-
}
|
|
826
|
-
function getNavigator() {
|
|
827
|
-
if (hasNavigator()) {
|
|
828
|
-
return navigator;
|
|
829
|
-
}
|
|
830
|
-
return getGlobalInst(strNavigator);
|
|
831
|
-
}
|
|
832
|
-
function hasHistory() {
|
|
833
|
-
return Boolean(typeof history === strShimObject && history);
|
|
834
|
-
}
|
|
835
|
-
function getHistory() {
|
|
836
|
-
if (hasHistory()) {
|
|
837
|
-
return history;
|
|
838
|
-
}
|
|
839
|
-
return getGlobalInst(strHistory);
|
|
840
|
-
}
|
|
841
917
|
function getLocation(checkForMock) {
|
|
842
918
|
if (checkForMock && _enableMocks) {
|
|
843
|
-
var mockLocation =
|
|
919
|
+
var mockLocation = getInst("__mockLocation");
|
|
844
920
|
if (mockLocation) {
|
|
845
921
|
return mockLocation;
|
|
846
922
|
}
|
|
@@ -848,31 +924,31 @@
|
|
|
848
924
|
if (typeof location === strShimObject && location) {
|
|
849
925
|
return location;
|
|
850
926
|
}
|
|
851
|
-
return
|
|
927
|
+
return getInst(strLocation);
|
|
852
928
|
}
|
|
853
929
|
function getConsole() {
|
|
854
930
|
if (typeof console !== strShimUndefined) {
|
|
855
931
|
return console;
|
|
856
932
|
}
|
|
857
|
-
return
|
|
933
|
+
return getInst(strConsole);
|
|
858
934
|
}
|
|
859
935
|
function getPerformance() {
|
|
860
|
-
return
|
|
936
|
+
return getInst(strPerformance);
|
|
861
937
|
}
|
|
862
938
|
function hasJSON() {
|
|
863
|
-
return Boolean((typeof JSON === strShimObject && JSON) ||
|
|
939
|
+
return Boolean((typeof JSON === strShimObject && JSON) || getInst(strJSON) !== null);
|
|
864
940
|
}
|
|
865
941
|
function getJSON() {
|
|
866
942
|
if (hasJSON()) {
|
|
867
|
-
return JSON ||
|
|
943
|
+
return JSON || getInst(strJSON);
|
|
868
944
|
}
|
|
869
945
|
return null;
|
|
870
946
|
}
|
|
871
947
|
function getCrypto() {
|
|
872
|
-
return
|
|
948
|
+
return getInst(strCrypto);
|
|
873
949
|
}
|
|
874
950
|
function getMsCrypto() {
|
|
875
|
-
return
|
|
951
|
+
return getInst(strMsCrypto);
|
|
876
952
|
}
|
|
877
953
|
function isIE() {
|
|
878
954
|
var nav = getNavigator();
|
|
@@ -883,33 +959,6 @@
|
|
|
883
959
|
}
|
|
884
960
|
return _isTrident;
|
|
885
961
|
}
|
|
886
|
-
function dumpObj(object) {
|
|
887
|
-
var objectTypeDump = Object[strShimPrototype].toString[_DYN_CALL ](object);
|
|
888
|
-
var propertyValueDump = STR_EMPTY;
|
|
889
|
-
if (objectTypeDump === "[object Error]") {
|
|
890
|
-
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object[_DYN_NAME$1 ] + "'";
|
|
891
|
-
}
|
|
892
|
-
else if (hasJSON()) {
|
|
893
|
-
propertyValueDump = getJSON().stringify(object);
|
|
894
|
-
}
|
|
895
|
-
return objectTypeDump + propertyValueDump;
|
|
896
|
-
}
|
|
897
|
-
|
|
898
|
-
var _aiNamespace = null;
|
|
899
|
-
function _getExtensionNamespace() {
|
|
900
|
-
var target = getGlobalInst("Microsoft");
|
|
901
|
-
if (target) {
|
|
902
|
-
_aiNamespace = target["ApplicationInsights"];
|
|
903
|
-
}
|
|
904
|
-
return _aiNamespace;
|
|
905
|
-
}
|
|
906
|
-
function getDebugExt(config) {
|
|
907
|
-
var ns = _aiNamespace;
|
|
908
|
-
if (!ns && config.disableDbgExt !== true) {
|
|
909
|
-
ns = _aiNamespace || _getExtensionNamespace();
|
|
910
|
-
}
|
|
911
|
-
return ns ? ns["ChromeDbgExt"] : null;
|
|
912
|
-
}
|
|
913
962
|
|
|
914
963
|
var AiNonUserActionablePrefix = "AI (Internal): ";
|
|
915
964
|
var AiUserActionablePrefix = "AI: ";
|
|
@@ -1079,14 +1128,13 @@
|
|
|
1079
1128
|
var PerfEvent = /** @class */ (function () {
|
|
1080
1129
|
function PerfEvent(name, payloadDetails, isAsync) {
|
|
1081
1130
|
var _self = this;
|
|
1082
|
-
var accessorDefined = false;
|
|
1083
1131
|
_self.start = dateNow();
|
|
1084
1132
|
_self[_DYN_NAME$1 ] = name;
|
|
1085
1133
|
_self[_DYN_IS_ASYNC ] = isAsync;
|
|
1086
1134
|
_self[_DYN_IS_CHILD_EVT ] = function () { return false; };
|
|
1087
1135
|
if (isFunction(payloadDetails)) {
|
|
1088
1136
|
var theDetails_1;
|
|
1089
|
-
|
|
1137
|
+
objDefineAccessors(_self, "payload", function () {
|
|
1090
1138
|
if (!theDetails_1 && isFunction(payloadDetails)) {
|
|
1091
1139
|
theDetails_1 = payloadDetails();
|
|
1092
1140
|
payloadDetails = null;
|
|
@@ -1134,9 +1182,6 @@
|
|
|
1134
1182
|
_self[_DYN_TIME ] = dateNow() - _self.start;
|
|
1135
1183
|
_self.exTime = _self[_DYN_TIME ] - childTime;
|
|
1136
1184
|
_self[_DYN_COMPLETE ] = function () { };
|
|
1137
|
-
if (!accessorDefined && isFunction(payloadDetails)) {
|
|
1138
|
-
_self.payload = payloadDetails();
|
|
1139
|
-
}
|
|
1140
1185
|
};
|
|
1141
1186
|
}
|
|
1142
1187
|
PerfEvent.ParentContextKey = "parent";
|
|
@@ -1256,7 +1301,7 @@
|
|
|
1256
1301
|
}
|
|
1257
1302
|
|
|
1258
1303
|
var _objDefineProperty = ObjDefineProperty;
|
|
1259
|
-
var version = "3.0.0-beta.2208-
|
|
1304
|
+
var version = "3.0.0-beta.2208-19";
|
|
1260
1305
|
var instanceName = "." + newId(6);
|
|
1261
1306
|
var _dataUid = 0;
|
|
1262
1307
|
function _createAccessor(target, prop, value) {
|
|
@@ -1327,510 +1372,89 @@
|
|
|
1327
1372
|
return data;
|
|
1328
1373
|
}
|
|
1329
1374
|
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
function _gblCookieMgr(config, logger) {
|
|
1345
|
-
var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
|
|
1346
|
-
if (!inst) {
|
|
1347
|
-
inst = createCookieMgr[strConfigCookieMgr] = createCookieMgr(config, logger);
|
|
1348
|
-
_globalCookieConfig[strConfigCookieMgr] = inst;
|
|
1375
|
+
function generateW3CId() {
|
|
1376
|
+
var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
1377
|
+
var oct = STR_EMPTY, tmp;
|
|
1378
|
+
for (var a = 0; a < 4; a++) {
|
|
1379
|
+
tmp = random32();
|
|
1380
|
+
oct +=
|
|
1381
|
+
hexValues[tmp & 0xF] +
|
|
1382
|
+
hexValues[tmp >> 4 & 0xF] +
|
|
1383
|
+
hexValues[tmp >> 8 & 0xF] +
|
|
1384
|
+
hexValues[tmp >> 12 & 0xF] +
|
|
1385
|
+
hexValues[tmp >> 16 & 0xF] +
|
|
1386
|
+
hexValues[tmp >> 20 & 0xF] +
|
|
1387
|
+
hexValues[tmp >> 24 & 0xF] +
|
|
1388
|
+
hexValues[tmp >> 28 & 0xF];
|
|
1349
1389
|
}
|
|
1350
|
-
|
|
1390
|
+
var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
|
|
1391
|
+
return oct[_DYN_SUBSTR ](0, 8) + oct[_DYN_SUBSTR ](9, 4) + "4" + oct[_DYN_SUBSTR ](13, 3) + clockSequenceHi + oct[_DYN_SUBSTR ](16, 3) + oct[_DYN_SUBSTR ](19, 12);
|
|
1351
1392
|
}
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1393
|
+
|
|
1394
|
+
var INVALID_TRACE_ID = "00000000000000000000000000000000";
|
|
1395
|
+
var INVALID_SPAN_ID = "0000000000000000";
|
|
1396
|
+
function _isValid(value, len, invalidValue) {
|
|
1397
|
+
if (value && value[_DYN_LENGTH$2 ] === len && value !== invalidValue) {
|
|
1398
|
+
return !!value.match(/^[\da-f]*$/);
|
|
1355
1399
|
}
|
|
1356
|
-
return
|
|
1400
|
+
return false;
|
|
1357
1401
|
}
|
|
1358
|
-
function
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1402
|
+
function isValidTraceId(value) {
|
|
1403
|
+
return _isValid(value, 32, INVALID_TRACE_ID);
|
|
1404
|
+
}
|
|
1405
|
+
function isValidSpanId(value) {
|
|
1406
|
+
return _isValid(value, 16, INVALID_SPAN_ID);
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
var pluginStateData = createElmNodeData("plugin");
|
|
1410
|
+
function _getPluginState(plugin) {
|
|
1411
|
+
return pluginStateData.get(plugin, "state", {}, true);
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1414
|
+
var strTelemetryPluginChain = "TelemetryPluginChain";
|
|
1415
|
+
var strHasRunFlags = "_hasRun";
|
|
1416
|
+
var strGetTelCtx = "_getTelCtx";
|
|
1417
|
+
var _chainId = 0;
|
|
1418
|
+
function _getNextProxyStart(proxy, core, startAt) {
|
|
1419
|
+
while (proxy) {
|
|
1420
|
+
if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
|
|
1421
|
+
return proxy;
|
|
1369
1422
|
}
|
|
1370
|
-
|
|
1423
|
+
proxy = proxy[_DYN_GET_NEXT ]();
|
|
1371
1424
|
}
|
|
1372
|
-
return
|
|
1425
|
+
return createTelemetryProxyChain([startAt], core[_DYN_CONFIG ] || {}, core);
|
|
1373
1426
|
}
|
|
1374
|
-
function
|
|
1375
|
-
var
|
|
1376
|
-
|
|
1377
|
-
|
|
1427
|
+
function _createInternalContext(telemetryChain, config, core, startAt) {
|
|
1428
|
+
var _nextProxy = null;
|
|
1429
|
+
var _onComplete = [];
|
|
1430
|
+
if (startAt !== null) {
|
|
1431
|
+
_nextProxy = startAt ? _getNextProxyStart(telemetryChain, core, startAt) : telemetryChain;
|
|
1378
1432
|
}
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
enabled = _isMgrEnabled(gblManager);
|
|
1405
|
-
}
|
|
1406
|
-
return enabled;
|
|
1407
|
-
}
|
|
1408
|
-
},
|
|
1409
|
-
_a[_DYN_SET_ENABLED ] = function (value) {
|
|
1410
|
-
_enabled = value !== false;
|
|
1411
|
-
},
|
|
1412
|
-
_a.set = function (name, value, maxAgeSec, domain, path) {
|
|
1413
|
-
var result = false;
|
|
1414
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
1415
|
-
var values = {};
|
|
1416
|
-
var theValue = strTrim(value || STR_EMPTY);
|
|
1417
|
-
var idx = theValue[_DYN_INDEX_OF$1 ](";");
|
|
1418
|
-
if (idx !== -1) {
|
|
1419
|
-
theValue = strTrim(value[_DYN_SUBSTRING$1 ](0, idx));
|
|
1420
|
-
values = _extractParts(value[_DYN_SUBSTRING$1 ](idx + 1));
|
|
1421
|
-
}
|
|
1422
|
-
setValue(values, "domain", domain || _domain, isTruthy, isUndefined);
|
|
1423
|
-
if (!isNullOrUndefined(maxAgeSec)) {
|
|
1424
|
-
var _isIE = isIE();
|
|
1425
|
-
if (isUndefined(values[strExpires])) {
|
|
1426
|
-
var nowMs = dateNow();
|
|
1427
|
-
var expireMs = nowMs + (maxAgeSec * 1000);
|
|
1428
|
-
if (expireMs > 0) {
|
|
1429
|
-
var expiry = new Date();
|
|
1430
|
-
expiry.setTime(expireMs);
|
|
1431
|
-
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
|
|
1432
|
-
}
|
|
1433
|
-
}
|
|
1434
|
-
if (!_isIE) {
|
|
1435
|
-
setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
|
|
1436
|
-
}
|
|
1437
|
-
}
|
|
1438
|
-
var location_1 = getLocation();
|
|
1439
|
-
if (location_1 && location_1.protocol === "https:") {
|
|
1440
|
-
setValue(values, "secure", null, null, isUndefined);
|
|
1441
|
-
if (_allowUaSameSite === null) {
|
|
1442
|
-
_allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
|
|
1443
|
-
}
|
|
1444
|
-
if (_allowUaSameSite) {
|
|
1445
|
-
setValue(values, "SameSite", "None", null, isUndefined);
|
|
1446
|
-
}
|
|
1447
|
-
}
|
|
1448
|
-
setValue(values, "path", path || _path, null, isUndefined);
|
|
1449
|
-
var setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;
|
|
1450
|
-
setCookieFn(name, _formatCookieValue(theValue, values));
|
|
1451
|
-
result = true;
|
|
1452
|
-
}
|
|
1453
|
-
return result;
|
|
1454
|
-
},
|
|
1455
|
-
_a.get = function (name) {
|
|
1456
|
-
var value = STR_EMPTY;
|
|
1457
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
1458
|
-
value = (cookieMgrConfig.getCookie || _getCookieValue)(name);
|
|
1459
|
-
}
|
|
1460
|
-
return value;
|
|
1461
|
-
},
|
|
1462
|
-
_a.del = function (name, path) {
|
|
1463
|
-
var result = false;
|
|
1464
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
1465
|
-
result = cookieMgr.purge(name, path);
|
|
1466
|
-
}
|
|
1467
|
-
return result;
|
|
1468
|
-
},
|
|
1469
|
-
_a.purge = function (name, path) {
|
|
1470
|
-
var _a;
|
|
1471
|
-
var result = false;
|
|
1472
|
-
if (areCookiesSupported(logger)) {
|
|
1473
|
-
var values = (_a = {},
|
|
1474
|
-
_a["path"] = path ? path : "/",
|
|
1475
|
-
_a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
|
|
1476
|
-
_a);
|
|
1477
|
-
if (!isIE()) {
|
|
1478
|
-
values["max-age"] = "0";
|
|
1479
|
-
}
|
|
1480
|
-
var delCookie = cookieMgrConfig.delCookie || _setCookieValue;
|
|
1481
|
-
delCookie(name, _formatCookieValue(STR_EMPTY, values));
|
|
1482
|
-
result = true;
|
|
1483
|
-
}
|
|
1484
|
-
return result;
|
|
1485
|
-
},
|
|
1486
|
-
_a);
|
|
1487
|
-
cookieMgr[strConfigCookieMgr] = cookieMgr;
|
|
1488
|
-
return cookieMgr;
|
|
1489
|
-
}
|
|
1490
|
-
function areCookiesSupported(logger) {
|
|
1491
|
-
if (_supportsCookies === null) {
|
|
1492
|
-
_supportsCookies = false;
|
|
1493
|
-
try {
|
|
1494
|
-
var doc = _doc || {};
|
|
1495
|
-
_supportsCookies = doc[strCookie] !== undefined;
|
|
1496
|
-
}
|
|
1497
|
-
catch (e) {
|
|
1498
|
-
_throwInternal(logger, 2 , 68 , "Cannot access document.cookie - " + getExceptionName(e), { exception: dumpObj(e) });
|
|
1499
|
-
}
|
|
1500
|
-
}
|
|
1501
|
-
return _supportsCookies;
|
|
1502
|
-
}
|
|
1503
|
-
function _extractParts(theValue) {
|
|
1504
|
-
var values = {};
|
|
1505
|
-
if (theValue && theValue[_DYN_LENGTH$2 ]) {
|
|
1506
|
-
var parts = strTrim(theValue)[_DYN_SPLIT$1 ](";");
|
|
1507
|
-
arrForEach(parts, function (thePart) {
|
|
1508
|
-
thePart = strTrim(thePart || STR_EMPTY);
|
|
1509
|
-
if (thePart) {
|
|
1510
|
-
var idx = thePart[_DYN_INDEX_OF$1 ]("=");
|
|
1511
|
-
if (idx === -1) {
|
|
1512
|
-
values[thePart] = null;
|
|
1513
|
-
}
|
|
1514
|
-
else {
|
|
1515
|
-
values[strTrim(thePart[_DYN_SUBSTRING$1 ](0, idx))] = strTrim(thePart[_DYN_SUBSTRING$1 ](idx + 1));
|
|
1516
|
-
}
|
|
1517
|
-
}
|
|
1518
|
-
});
|
|
1519
|
-
}
|
|
1520
|
-
return values;
|
|
1521
|
-
}
|
|
1522
|
-
function _formatDate(theDate, func) {
|
|
1523
|
-
if (isFunction(theDate[func])) {
|
|
1524
|
-
return theDate[func]();
|
|
1525
|
-
}
|
|
1526
|
-
return null;
|
|
1527
|
-
}
|
|
1528
|
-
function _formatCookieValue(value, values) {
|
|
1529
|
-
var cookieValue = value || STR_EMPTY;
|
|
1530
|
-
objForEachKey(values, function (name, theValue) {
|
|
1531
|
-
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
|
|
1532
|
-
});
|
|
1533
|
-
return cookieValue;
|
|
1534
|
-
}
|
|
1535
|
-
function _getCookieValue(name) {
|
|
1536
|
-
var cookieValue = STR_EMPTY;
|
|
1537
|
-
if (_doc) {
|
|
1538
|
-
var theCookie = _doc[strCookie] || STR_EMPTY;
|
|
1539
|
-
if (_parsedCookieValue !== theCookie) {
|
|
1540
|
-
_cookieCache = _extractParts(theCookie);
|
|
1541
|
-
_parsedCookieValue = theCookie;
|
|
1542
|
-
}
|
|
1543
|
-
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
|
|
1544
|
-
}
|
|
1545
|
-
return cookieValue;
|
|
1546
|
-
}
|
|
1547
|
-
function _setCookieValue(name, cookieValue) {
|
|
1548
|
-
if (_doc) {
|
|
1549
|
-
_doc[strCookie] = name + "=" + cookieValue;
|
|
1550
|
-
}
|
|
1551
|
-
}
|
|
1552
|
-
function uaDisallowsSameSiteNone(userAgent) {
|
|
1553
|
-
if (!isString(userAgent)) {
|
|
1554
|
-
return false;
|
|
1555
|
-
}
|
|
1556
|
-
if (strContains(userAgent, "CPU iPhone OS 12") || strContains(userAgent, "iPad; CPU OS 12")) {
|
|
1557
|
-
return true;
|
|
1558
|
-
}
|
|
1559
|
-
if (strContains(userAgent, "Macintosh; Intel Mac OS X 10_14") && strContains(userAgent, "Version/") && strContains(userAgent, "Safari")) {
|
|
1560
|
-
return true;
|
|
1561
|
-
}
|
|
1562
|
-
if (strContains(userAgent, "Macintosh; Intel Mac OS X 10_14") && strEndsWith(userAgent, "AppleWebKit/605.1.15 (KHTML, like Gecko)")) {
|
|
1563
|
-
return true;
|
|
1564
|
-
}
|
|
1565
|
-
if (strContains(userAgent, "Chrome/5") || strContains(userAgent, "Chrome/6")) {
|
|
1566
|
-
return true;
|
|
1567
|
-
}
|
|
1568
|
-
if (strContains(userAgent, "UnrealEngine") && !strContains(userAgent, "Chrome")) {
|
|
1569
|
-
return true;
|
|
1570
|
-
}
|
|
1571
|
-
if (strContains(userAgent, "UCBrowser/12") || strContains(userAgent, "UCBrowser/11")) {
|
|
1572
|
-
return true;
|
|
1573
|
-
}
|
|
1574
|
-
return false;
|
|
1575
|
-
}
|
|
1576
|
-
|
|
1577
|
-
var strOnPrefix = "on";
|
|
1578
|
-
var strAttachEvent = "attachEvent";
|
|
1579
|
-
var strAddEventHelper = "addEventListener";
|
|
1580
|
-
var strDetachEvent = "detachEvent";
|
|
1581
|
-
var strRemoveEventListener = "removeEventListener";
|
|
1582
|
-
var strEvents = "events";
|
|
1583
|
-
createUniqueNamespace("aiEvtPageHide");
|
|
1584
|
-
createUniqueNamespace("aiEvtPageShow");
|
|
1585
|
-
var rRemoveEmptyNs = /\.[\.]+/g;
|
|
1586
|
-
var rRemoveTrailingEmptyNs = /[\.]+$/;
|
|
1587
|
-
var _guid = 1;
|
|
1588
|
-
var elmNodeData = createElmNodeData("events");
|
|
1589
|
-
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
1590
|
-
function _normalizeNamespace(name) {
|
|
1591
|
-
if (name && name[_DYN_REPLACE ]) {
|
|
1592
|
-
return name.replace(/^\s*\.*|\.*\s*$/g, STR_EMPTY);
|
|
1593
|
-
}
|
|
1594
|
-
return name;
|
|
1595
|
-
}
|
|
1596
|
-
function _getEvtNamespace(eventName, evtNamespace) {
|
|
1597
|
-
var _a;
|
|
1598
|
-
if (evtNamespace) {
|
|
1599
|
-
var theNamespace_1 = STR_EMPTY;
|
|
1600
|
-
if (isArray(evtNamespace)) {
|
|
1601
|
-
theNamespace_1 = STR_EMPTY;
|
|
1602
|
-
arrForEach(evtNamespace, function (name) {
|
|
1603
|
-
name = _normalizeNamespace(name);
|
|
1604
|
-
if (name) {
|
|
1605
|
-
if (name[0] !== ".") {
|
|
1606
|
-
name = "." + name;
|
|
1607
|
-
}
|
|
1608
|
-
theNamespace_1 += name;
|
|
1609
|
-
}
|
|
1610
|
-
});
|
|
1611
|
-
}
|
|
1612
|
-
else {
|
|
1613
|
-
theNamespace_1 = _normalizeNamespace(evtNamespace);
|
|
1614
|
-
}
|
|
1615
|
-
if (theNamespace_1) {
|
|
1616
|
-
if (theNamespace_1[0] !== ".") {
|
|
1617
|
-
theNamespace_1 = "." + theNamespace_1;
|
|
1618
|
-
}
|
|
1619
|
-
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
1620
|
-
}
|
|
1621
|
-
}
|
|
1622
|
-
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
1623
|
-
return _a = {},
|
|
1624
|
-
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
1625
|
-
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
1626
|
-
_a;
|
|
1627
|
-
}
|
|
1628
|
-
function _getRegisteredEvents(target, evtName, addDefault) {
|
|
1629
|
-
if (addDefault === void 0) { addDefault = true; }
|
|
1630
|
-
var aiEvts = elmNodeData.get(target, strEvents, {}, addDefault);
|
|
1631
|
-
var registeredEvents = aiEvts[evtName];
|
|
1632
|
-
if (!registeredEvents) {
|
|
1633
|
-
registeredEvents = aiEvts[evtName] = [];
|
|
1634
|
-
}
|
|
1635
|
-
return registeredEvents;
|
|
1636
|
-
}
|
|
1637
|
-
function _doDetach(obj, evtName, handlerRef, useCapture) {
|
|
1638
|
-
if (obj && evtName && evtName[_DYN_TYPE ]) {
|
|
1639
|
-
if (obj[strRemoveEventListener]) {
|
|
1640
|
-
obj[strRemoveEventListener](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
1641
|
-
}
|
|
1642
|
-
else if (obj[strDetachEvent]) {
|
|
1643
|
-
obj[strDetachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
1644
|
-
}
|
|
1645
|
-
}
|
|
1646
|
-
}
|
|
1647
|
-
function _doAttach(obj, evtName, handlerRef, useCapture) {
|
|
1648
|
-
var result = false;
|
|
1649
|
-
if (obj && evtName && evtName[_DYN_TYPE ] && handlerRef) {
|
|
1650
|
-
if (obj[strAddEventHelper]) {
|
|
1651
|
-
obj[strAddEventHelper](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
1652
|
-
result = true;
|
|
1653
|
-
}
|
|
1654
|
-
else if (obj[strAttachEvent]) {
|
|
1655
|
-
obj[strAttachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
1656
|
-
result = true;
|
|
1657
|
-
}
|
|
1658
|
-
}
|
|
1659
|
-
return result;
|
|
1660
|
-
}
|
|
1661
|
-
function _doUnregister(target, events, evtName, unRegFn) {
|
|
1662
|
-
var idx = events[_DYN_LENGTH$2 ];
|
|
1663
|
-
while (idx--) {
|
|
1664
|
-
var theEvent = events[idx];
|
|
1665
|
-
if (theEvent) {
|
|
1666
|
-
if (!evtName.ns || evtName.ns === theEvent.evtName.ns) {
|
|
1667
|
-
if (!unRegFn || unRegFn(theEvent)) {
|
|
1668
|
-
_doDetach(target, theEvent.evtName, theEvent[_DYN_HANDLER ], theEvent.capture);
|
|
1669
|
-
events[_DYN_SPLICE ](idx, 1);
|
|
1670
|
-
}
|
|
1671
|
-
}
|
|
1672
|
-
}
|
|
1673
|
-
}
|
|
1674
|
-
}
|
|
1675
|
-
function _unregisterEvents(target, evtName, unRegFn) {
|
|
1676
|
-
if (evtName[_DYN_TYPE ]) {
|
|
1677
|
-
_doUnregister(target, _getRegisteredEvents(target, evtName[_DYN_TYPE ]), evtName, unRegFn);
|
|
1678
|
-
}
|
|
1679
|
-
else {
|
|
1680
|
-
var eventCache = elmNodeData.get(target, strEvents, {});
|
|
1681
|
-
objForEachKey(eventCache, function (evtType, events) {
|
|
1682
|
-
_doUnregister(target, events, evtName, unRegFn);
|
|
1683
|
-
});
|
|
1684
|
-
if (objKeys(eventCache)[_DYN_LENGTH$2 ] === 0) {
|
|
1685
|
-
elmNodeData.kill(target, strEvents);
|
|
1686
|
-
}
|
|
1687
|
-
}
|
|
1688
|
-
}
|
|
1689
|
-
function mergeEvtNamespace(theNamespace, namespaces) {
|
|
1690
|
-
var newNamespaces;
|
|
1691
|
-
if (namespaces) {
|
|
1692
|
-
if (isArray(namespaces)) {
|
|
1693
|
-
newNamespaces = [theNamespace].concat(namespaces);
|
|
1694
|
-
}
|
|
1695
|
-
else {
|
|
1696
|
-
newNamespaces = [theNamespace, namespaces];
|
|
1697
|
-
}
|
|
1698
|
-
newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT$1 ](".");
|
|
1699
|
-
}
|
|
1700
|
-
else {
|
|
1701
|
-
newNamespaces = theNamespace;
|
|
1702
|
-
}
|
|
1703
|
-
return newNamespaces;
|
|
1704
|
-
}
|
|
1705
|
-
function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
|
|
1706
|
-
var _a;
|
|
1707
|
-
if (useCapture === void 0) { useCapture = false; }
|
|
1708
|
-
var result = false;
|
|
1709
|
-
if (target) {
|
|
1710
|
-
try {
|
|
1711
|
-
var evtName = _getEvtNamespace(eventName, evtNamespace);
|
|
1712
|
-
result = _doAttach(target, evtName, handlerRef, useCapture);
|
|
1713
|
-
if (result && elmNodeData.accept(target)) {
|
|
1714
|
-
var registeredEvent = (_a = {
|
|
1715
|
-
guid: _guid++,
|
|
1716
|
-
evtName: evtName
|
|
1717
|
-
},
|
|
1718
|
-
_a[_DYN_HANDLER ] = handlerRef,
|
|
1719
|
-
_a.capture = useCapture,
|
|
1720
|
-
_a);
|
|
1721
|
-
_getRegisteredEvents(target, evtName.type)[_DYN_PUSH ](registeredEvent);
|
|
1722
|
-
}
|
|
1723
|
-
}
|
|
1724
|
-
catch (e) {
|
|
1725
|
-
}
|
|
1726
|
-
}
|
|
1727
|
-
return result;
|
|
1728
|
-
}
|
|
1729
|
-
function eventOff(target, eventName, handlerRef, evtNamespace, useCapture) {
|
|
1730
|
-
if (useCapture === void 0) { useCapture = false; }
|
|
1731
|
-
if (target) {
|
|
1732
|
-
try {
|
|
1733
|
-
var evtName_1 = _getEvtNamespace(eventName, evtNamespace);
|
|
1734
|
-
var found_1 = false;
|
|
1735
|
-
_unregisterEvents(target, evtName_1, function (regEvent) {
|
|
1736
|
-
if ((evtName_1.ns && !handlerRef) || regEvent[_DYN_HANDLER ] === handlerRef) {
|
|
1737
|
-
found_1 = true;
|
|
1738
|
-
return true;
|
|
1739
|
-
}
|
|
1740
|
-
return false;
|
|
1741
|
-
});
|
|
1742
|
-
if (!found_1) {
|
|
1743
|
-
_doDetach(target, evtName_1, handlerRef, useCapture);
|
|
1744
|
-
}
|
|
1745
|
-
}
|
|
1746
|
-
catch (e) {
|
|
1747
|
-
}
|
|
1748
|
-
}
|
|
1749
|
-
}
|
|
1750
|
-
|
|
1751
|
-
function generateW3CId() {
|
|
1752
|
-
var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
1753
|
-
var oct = STR_EMPTY, tmp;
|
|
1754
|
-
for (var a = 0; a < 4; a++) {
|
|
1755
|
-
tmp = random32();
|
|
1756
|
-
oct +=
|
|
1757
|
-
hexValues[tmp & 0xF] +
|
|
1758
|
-
hexValues[tmp >> 4 & 0xF] +
|
|
1759
|
-
hexValues[tmp >> 8 & 0xF] +
|
|
1760
|
-
hexValues[tmp >> 12 & 0xF] +
|
|
1761
|
-
hexValues[tmp >> 16 & 0xF] +
|
|
1762
|
-
hexValues[tmp >> 20 & 0xF] +
|
|
1763
|
-
hexValues[tmp >> 24 & 0xF] +
|
|
1764
|
-
hexValues[tmp >> 28 & 0xF];
|
|
1765
|
-
}
|
|
1766
|
-
var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
|
|
1767
|
-
return oct[_DYN_SUBSTR ](0, 8) + oct[_DYN_SUBSTR ](9, 4) + "4" + oct[_DYN_SUBSTR ](13, 3) + clockSequenceHi + oct[_DYN_SUBSTR ](16, 3) + oct[_DYN_SUBSTR ](19, 12);
|
|
1768
|
-
}
|
|
1769
|
-
|
|
1770
|
-
var INVALID_TRACE_ID = "00000000000000000000000000000000";
|
|
1771
|
-
var INVALID_SPAN_ID = "0000000000000000";
|
|
1772
|
-
function _isValid(value, len, invalidValue) {
|
|
1773
|
-
if (value && value[_DYN_LENGTH$2 ] === len && value !== invalidValue) {
|
|
1774
|
-
return !!value.match(/^[\da-f]*$/);
|
|
1775
|
-
}
|
|
1776
|
-
return false;
|
|
1777
|
-
}
|
|
1778
|
-
function isValidTraceId(value) {
|
|
1779
|
-
return _isValid(value, 32, INVALID_TRACE_ID);
|
|
1780
|
-
}
|
|
1781
|
-
function isValidSpanId(value) {
|
|
1782
|
-
return _isValid(value, 16, INVALID_SPAN_ID);
|
|
1783
|
-
}
|
|
1784
|
-
|
|
1785
|
-
var pluginStateData = createElmNodeData("plugin");
|
|
1786
|
-
function _getPluginState(plugin) {
|
|
1787
|
-
return pluginStateData.get(plugin, "state", {}, true);
|
|
1788
|
-
}
|
|
1789
|
-
|
|
1790
|
-
var strTelemetryPluginChain = "TelemetryPluginChain";
|
|
1791
|
-
var strHasRunFlags = "_hasRun";
|
|
1792
|
-
var strGetTelCtx = "_getTelCtx";
|
|
1793
|
-
var _chainId = 0;
|
|
1794
|
-
function _getNextProxyStart(proxy, core, startAt) {
|
|
1795
|
-
while (proxy) {
|
|
1796
|
-
if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
|
|
1797
|
-
return proxy;
|
|
1798
|
-
}
|
|
1799
|
-
proxy = proxy[_DYN_GET_NEXT ]();
|
|
1800
|
-
}
|
|
1801
|
-
return createTelemetryProxyChain([startAt], core[_DYN_CONFIG ] || {}, core);
|
|
1802
|
-
}
|
|
1803
|
-
function _createInternalContext(telemetryChain, config, core, startAt) {
|
|
1804
|
-
var _nextProxy = null;
|
|
1805
|
-
var _onComplete = [];
|
|
1806
|
-
if (startAt !== null) {
|
|
1807
|
-
_nextProxy = startAt ? _getNextProxyStart(telemetryChain, core, startAt) : telemetryChain;
|
|
1808
|
-
}
|
|
1809
|
-
var context = {
|
|
1810
|
-
_next: _moveNext,
|
|
1811
|
-
ctx: {
|
|
1812
|
-
core: function () {
|
|
1813
|
-
return core;
|
|
1814
|
-
},
|
|
1815
|
-
diagLog: function () {
|
|
1816
|
-
return safeGetLogger(core, config);
|
|
1817
|
-
},
|
|
1818
|
-
getCfg: function () {
|
|
1819
|
-
return config;
|
|
1820
|
-
},
|
|
1821
|
-
getExtCfg: _getExtCfg,
|
|
1822
|
-
getConfig: _getConfig,
|
|
1823
|
-
hasNext: function () {
|
|
1824
|
-
return !!_nextProxy;
|
|
1825
|
-
},
|
|
1826
|
-
getNext: function () {
|
|
1827
|
-
return _nextProxy;
|
|
1828
|
-
},
|
|
1829
|
-
setNext: function (nextPlugin) {
|
|
1830
|
-
_nextProxy = nextPlugin;
|
|
1831
|
-
},
|
|
1832
|
-
iterate: _iterateChain,
|
|
1833
|
-
onComplete: _addOnComplete
|
|
1433
|
+
var context = {
|
|
1434
|
+
_next: _moveNext,
|
|
1435
|
+
ctx: {
|
|
1436
|
+
core: function () {
|
|
1437
|
+
return core;
|
|
1438
|
+
},
|
|
1439
|
+
diagLog: function () {
|
|
1440
|
+
return safeGetLogger(core, config);
|
|
1441
|
+
},
|
|
1442
|
+
getCfg: function () {
|
|
1443
|
+
return config;
|
|
1444
|
+
},
|
|
1445
|
+
getExtCfg: _getExtCfg,
|
|
1446
|
+
getConfig: _getConfig,
|
|
1447
|
+
hasNext: function () {
|
|
1448
|
+
return !!_nextProxy;
|
|
1449
|
+
},
|
|
1450
|
+
getNext: function () {
|
|
1451
|
+
return _nextProxy;
|
|
1452
|
+
},
|
|
1453
|
+
setNext: function (nextPlugin) {
|
|
1454
|
+
_nextProxy = nextPlugin;
|
|
1455
|
+
},
|
|
1456
|
+
iterate: _iterateChain,
|
|
1457
|
+
onComplete: _addOnComplete
|
|
1834
1458
|
}
|
|
1835
1459
|
};
|
|
1836
1460
|
function _addOnComplete(onComplete, that) {
|
|
@@ -2114,25 +1738,270 @@
|
|
|
2114
1738
|
unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
2115
1739
|
}
|
|
2116
1740
|
}
|
|
2117
|
-
function _updatePlugin(updateCtx, updateState) {
|
|
2118
|
-
function _callUpdate() {
|
|
2119
|
-
var hasRun = false;
|
|
2120
|
-
if (plugin) {
|
|
2121
|
-
var pluginState = _getPluginState(plugin);
|
|
2122
|
-
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
2123
|
-
if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
2124
|
-
if (plugin[_DYN_UPDATE ] && plugin[_DYN_UPDATE ](updateCtx, updateState) === true) {
|
|
2125
|
-
hasRun = true;
|
|
2126
|
-
}
|
|
1741
|
+
function _updatePlugin(updateCtx, updateState) {
|
|
1742
|
+
function _callUpdate() {
|
|
1743
|
+
var hasRun = false;
|
|
1744
|
+
if (plugin) {
|
|
1745
|
+
var pluginState = _getPluginState(plugin);
|
|
1746
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
1747
|
+
if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
1748
|
+
if (plugin[_DYN_UPDATE ] && plugin[_DYN_UPDATE ](updateCtx, updateState) === true) {
|
|
1749
|
+
hasRun = true;
|
|
1750
|
+
}
|
|
1751
|
+
}
|
|
1752
|
+
}
|
|
1753
|
+
return hasRun;
|
|
1754
|
+
}
|
|
1755
|
+
if (!_processChain(updateCtx, _callUpdate, "update", function () { }, false)) {
|
|
1756
|
+
updateCtx[_DYN_PROCESS_NEXT ](updateState);
|
|
1757
|
+
}
|
|
1758
|
+
}
|
|
1759
|
+
return objFreeze(proxyChain);
|
|
1760
|
+
}
|
|
1761
|
+
|
|
1762
|
+
var strToGMTString = "toGMTString";
|
|
1763
|
+
var strToUTCString = "toUTCString";
|
|
1764
|
+
var strCookie = "cookie";
|
|
1765
|
+
var strExpires = "expires";
|
|
1766
|
+
var strEnabled = "enabled";
|
|
1767
|
+
var strIsCookieUseDisabled = "isCookieUseDisabled";
|
|
1768
|
+
var strDisableCookiesUsage = "disableCookiesUsage";
|
|
1769
|
+
var strConfigCookieMgr = "_ckMgr";
|
|
1770
|
+
var _supportsCookies = null;
|
|
1771
|
+
var _allowUaSameSite = null;
|
|
1772
|
+
var _parsedCookieValue = null;
|
|
1773
|
+
var _doc = getDocument();
|
|
1774
|
+
var _cookieCache = {};
|
|
1775
|
+
var _globalCookieConfig = {};
|
|
1776
|
+
function _gblCookieMgr(config, logger) {
|
|
1777
|
+
var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
|
|
1778
|
+
if (!inst) {
|
|
1779
|
+
inst = createCookieMgr[strConfigCookieMgr] = createCookieMgr(config, logger);
|
|
1780
|
+
_globalCookieConfig[strConfigCookieMgr] = inst;
|
|
1781
|
+
}
|
|
1782
|
+
return inst;
|
|
1783
|
+
}
|
|
1784
|
+
function _isMgrEnabled(cookieMgr) {
|
|
1785
|
+
if (cookieMgr) {
|
|
1786
|
+
return cookieMgr.isEnabled();
|
|
1787
|
+
}
|
|
1788
|
+
return true;
|
|
1789
|
+
}
|
|
1790
|
+
function _createCookieMgrConfig(rootConfig) {
|
|
1791
|
+
var cookieMgrCfg = rootConfig[_DYN_COOKIE_CFG ] = rootConfig[_DYN_COOKIE_CFG ] || {};
|
|
1792
|
+
setValue(cookieMgrCfg, "domain", rootConfig.cookieDomain, isNotNullOrUndefined, isNullOrUndefined);
|
|
1793
|
+
setValue(cookieMgrCfg, "path", rootConfig.cookiePath || "/", null, isNullOrUndefined);
|
|
1794
|
+
if (isNullOrUndefined(cookieMgrCfg[strEnabled])) {
|
|
1795
|
+
var cookieEnabled = void 0;
|
|
1796
|
+
if (!isUndefined(rootConfig[strIsCookieUseDisabled])) {
|
|
1797
|
+
cookieEnabled = !rootConfig[strIsCookieUseDisabled];
|
|
1798
|
+
}
|
|
1799
|
+
if (!isUndefined(rootConfig[strDisableCookiesUsage])) {
|
|
1800
|
+
cookieEnabled = !rootConfig[strDisableCookiesUsage];
|
|
1801
|
+
}
|
|
1802
|
+
cookieMgrCfg[strEnabled] = cookieEnabled;
|
|
1803
|
+
}
|
|
1804
|
+
return cookieMgrCfg;
|
|
1805
|
+
}
|
|
1806
|
+
function safeGetCookieMgr(core, config) {
|
|
1807
|
+
var cookieMgr;
|
|
1808
|
+
if (core) {
|
|
1809
|
+
cookieMgr = core.getCookieMgr();
|
|
1810
|
+
}
|
|
1811
|
+
else if (config) {
|
|
1812
|
+
var cookieCfg = config[_DYN_COOKIE_CFG ];
|
|
1813
|
+
if (cookieCfg[strConfigCookieMgr]) {
|
|
1814
|
+
cookieMgr = cookieCfg[strConfigCookieMgr];
|
|
1815
|
+
}
|
|
1816
|
+
else {
|
|
1817
|
+
cookieMgr = createCookieMgr(config);
|
|
1818
|
+
}
|
|
1819
|
+
}
|
|
1820
|
+
if (!cookieMgr) {
|
|
1821
|
+
cookieMgr = _gblCookieMgr(config, (core || {})[_DYN_LOGGER ]);
|
|
1822
|
+
}
|
|
1823
|
+
return cookieMgr;
|
|
1824
|
+
}
|
|
1825
|
+
function createCookieMgr(rootConfig, logger) {
|
|
1826
|
+
var cookieMgrConfig = _createCookieMgrConfig(rootConfig || _globalCookieConfig);
|
|
1827
|
+
var _path = cookieMgrConfig.path || "/";
|
|
1828
|
+
var _domain = cookieMgrConfig.domain;
|
|
1829
|
+
var _enabled = cookieMgrConfig[strEnabled] !== false;
|
|
1830
|
+
var cookieMgr = {
|
|
1831
|
+
isEnabled: function () {
|
|
1832
|
+
var enabled = _enabled && areCookiesSupported(logger);
|
|
1833
|
+
var gblManager = _globalCookieConfig[strConfigCookieMgr];
|
|
1834
|
+
if (enabled && gblManager && cookieMgr !== gblManager) {
|
|
1835
|
+
enabled = _isMgrEnabled(gblManager);
|
|
1836
|
+
}
|
|
1837
|
+
return enabled;
|
|
1838
|
+
},
|
|
1839
|
+
setEnabled: function (value) {
|
|
1840
|
+
_enabled = value !== false;
|
|
1841
|
+
},
|
|
1842
|
+
set: function (name, value, maxAgeSec, domain, path) {
|
|
1843
|
+
var result = false;
|
|
1844
|
+
if (_isMgrEnabled(cookieMgr)) {
|
|
1845
|
+
var values = {};
|
|
1846
|
+
var theValue = strTrim(value || STR_EMPTY);
|
|
1847
|
+
var idx = theValue.indexOf(";");
|
|
1848
|
+
if (idx !== -1) {
|
|
1849
|
+
theValue = strTrim(value[_DYN_SUBSTRING$1 ](0, idx));
|
|
1850
|
+
values = _extractParts(value[_DYN_SUBSTRING$1 ](idx + 1));
|
|
1851
|
+
}
|
|
1852
|
+
setValue(values, "domain", domain || _domain, isTruthy, isUndefined);
|
|
1853
|
+
if (!isNullOrUndefined(maxAgeSec)) {
|
|
1854
|
+
var _isIE = isIE();
|
|
1855
|
+
if (isUndefined(values[strExpires])) {
|
|
1856
|
+
var nowMs = dateNow();
|
|
1857
|
+
var expireMs = nowMs + (maxAgeSec * 1000);
|
|
1858
|
+
if (expireMs > 0) {
|
|
1859
|
+
var expiry = new Date();
|
|
1860
|
+
expiry.setTime(expireMs);
|
|
1861
|
+
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
|
|
1862
|
+
}
|
|
1863
|
+
}
|
|
1864
|
+
if (!_isIE) {
|
|
1865
|
+
setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
|
|
1866
|
+
}
|
|
1867
|
+
}
|
|
1868
|
+
var location_1 = getLocation();
|
|
1869
|
+
if (location_1 && location_1.protocol === "https:") {
|
|
1870
|
+
setValue(values, "secure", null, null, isUndefined);
|
|
1871
|
+
if (_allowUaSameSite === null) {
|
|
1872
|
+
_allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
|
|
1873
|
+
}
|
|
1874
|
+
if (_allowUaSameSite) {
|
|
1875
|
+
setValue(values, "SameSite", "None", null, isUndefined);
|
|
1876
|
+
}
|
|
1877
|
+
}
|
|
1878
|
+
setValue(values, "path", path || _path, null, isUndefined);
|
|
1879
|
+
var setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;
|
|
1880
|
+
setCookieFn(name, _formatCookieValue(theValue, values));
|
|
1881
|
+
result = true;
|
|
1882
|
+
}
|
|
1883
|
+
return result;
|
|
1884
|
+
},
|
|
1885
|
+
get: function (name) {
|
|
1886
|
+
var value = STR_EMPTY;
|
|
1887
|
+
if (_isMgrEnabled(cookieMgr)) {
|
|
1888
|
+
value = (cookieMgrConfig.getCookie || _getCookieValue)(name);
|
|
1889
|
+
}
|
|
1890
|
+
return value;
|
|
1891
|
+
},
|
|
1892
|
+
del: function (name, path) {
|
|
1893
|
+
var result = false;
|
|
1894
|
+
if (_isMgrEnabled(cookieMgr)) {
|
|
1895
|
+
result = cookieMgr.purge(name, path);
|
|
1896
|
+
}
|
|
1897
|
+
return result;
|
|
1898
|
+
},
|
|
1899
|
+
purge: function (name, path) {
|
|
1900
|
+
var _a;
|
|
1901
|
+
var result = false;
|
|
1902
|
+
if (areCookiesSupported(logger)) {
|
|
1903
|
+
var values = (_a = {},
|
|
1904
|
+
_a["path"] = path ? path : "/",
|
|
1905
|
+
_a[strExpires] = "Thu, 01 Jan 1970 00:00:01 GMT",
|
|
1906
|
+
_a);
|
|
1907
|
+
if (!isIE()) {
|
|
1908
|
+
values["max-age"] = "0";
|
|
1909
|
+
}
|
|
1910
|
+
var delCookie = cookieMgrConfig.delCookie || _setCookieValue;
|
|
1911
|
+
delCookie(name, _formatCookieValue(STR_EMPTY, values));
|
|
1912
|
+
result = true;
|
|
1913
|
+
}
|
|
1914
|
+
return result;
|
|
1915
|
+
}
|
|
1916
|
+
};
|
|
1917
|
+
cookieMgr[strConfigCookieMgr] = cookieMgr;
|
|
1918
|
+
return cookieMgr;
|
|
1919
|
+
}
|
|
1920
|
+
function areCookiesSupported(logger) {
|
|
1921
|
+
if (_supportsCookies === null) {
|
|
1922
|
+
_supportsCookies = false;
|
|
1923
|
+
try {
|
|
1924
|
+
var doc = _doc || {};
|
|
1925
|
+
_supportsCookies = doc[strCookie] !== undefined;
|
|
1926
|
+
}
|
|
1927
|
+
catch (e) {
|
|
1928
|
+
_throwInternal(logger, 2 , 68 , "Cannot access document.cookie - " + getExceptionName(e), { exception: dumpObj(e) });
|
|
1929
|
+
}
|
|
1930
|
+
}
|
|
1931
|
+
return _supportsCookies;
|
|
1932
|
+
}
|
|
1933
|
+
function _extractParts(theValue) {
|
|
1934
|
+
var values = {};
|
|
1935
|
+
if (theValue && theValue[_DYN_LENGTH$2 ]) {
|
|
1936
|
+
var parts = strTrim(theValue)[_DYN_SPLIT$1 ](";");
|
|
1937
|
+
arrForEach(parts, function (thePart) {
|
|
1938
|
+
thePart = strTrim(thePart || STR_EMPTY);
|
|
1939
|
+
if (thePart) {
|
|
1940
|
+
var idx = thePart.indexOf("=");
|
|
1941
|
+
if (idx === -1) {
|
|
1942
|
+
values[thePart] = null;
|
|
1943
|
+
}
|
|
1944
|
+
else {
|
|
1945
|
+
values[strTrim(thePart[_DYN_SUBSTRING$1 ](0, idx))] = strTrim(thePart[_DYN_SUBSTRING$1 ](idx + 1));
|
|
2127
1946
|
}
|
|
2128
1947
|
}
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
1948
|
+
});
|
|
1949
|
+
}
|
|
1950
|
+
return values;
|
|
1951
|
+
}
|
|
1952
|
+
function _formatDate(theDate, func) {
|
|
1953
|
+
if (isFunction(theDate[func])) {
|
|
1954
|
+
return theDate[func]();
|
|
1955
|
+
}
|
|
1956
|
+
return null;
|
|
1957
|
+
}
|
|
1958
|
+
function _formatCookieValue(value, values) {
|
|
1959
|
+
var cookieValue = value || STR_EMPTY;
|
|
1960
|
+
objForEachKey(values, function (name, theValue) {
|
|
1961
|
+
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
|
|
1962
|
+
});
|
|
1963
|
+
return cookieValue;
|
|
1964
|
+
}
|
|
1965
|
+
function _getCookieValue(name) {
|
|
1966
|
+
var cookieValue = STR_EMPTY;
|
|
1967
|
+
if (_doc) {
|
|
1968
|
+
var theCookie = _doc[strCookie] || STR_EMPTY;
|
|
1969
|
+
if (_parsedCookieValue !== theCookie) {
|
|
1970
|
+
_cookieCache = _extractParts(theCookie);
|
|
1971
|
+
_parsedCookieValue = theCookie;
|
|
2133
1972
|
}
|
|
1973
|
+
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
|
|
2134
1974
|
}
|
|
2135
|
-
return
|
|
1975
|
+
return cookieValue;
|
|
1976
|
+
}
|
|
1977
|
+
function _setCookieValue(name, cookieValue) {
|
|
1978
|
+
if (_doc) {
|
|
1979
|
+
_doc[strCookie] = name + "=" + cookieValue;
|
|
1980
|
+
}
|
|
1981
|
+
}
|
|
1982
|
+
function uaDisallowsSameSiteNone(userAgent) {
|
|
1983
|
+
if (!isString(userAgent)) {
|
|
1984
|
+
return false;
|
|
1985
|
+
}
|
|
1986
|
+
if (strContains(userAgent, "CPU iPhone OS 12") || strContains(userAgent, "iPad; CPU OS 12")) {
|
|
1987
|
+
return true;
|
|
1988
|
+
}
|
|
1989
|
+
if (strContains(userAgent, "Macintosh; Intel Mac OS X 10_14") && strContains(userAgent, "Version/") && strContains(userAgent, "Safari")) {
|
|
1990
|
+
return true;
|
|
1991
|
+
}
|
|
1992
|
+
if (strContains(userAgent, "Macintosh; Intel Mac OS X 10_14") && strEndsWith(userAgent, "AppleWebKit/605.1.15 (KHTML, like Gecko)")) {
|
|
1993
|
+
return true;
|
|
1994
|
+
}
|
|
1995
|
+
if (strContains(userAgent, "Chrome/5") || strContains(userAgent, "Chrome/6")) {
|
|
1996
|
+
return true;
|
|
1997
|
+
}
|
|
1998
|
+
if (strContains(userAgent, "UnrealEngine") && !strContains(userAgent, "Chrome")) {
|
|
1999
|
+
return true;
|
|
2000
|
+
}
|
|
2001
|
+
if (strContains(userAgent, "UCBrowser/12") || strContains(userAgent, "UCBrowser/11")) {
|
|
2002
|
+
return true;
|
|
2003
|
+
}
|
|
2004
|
+
return false;
|
|
2136
2005
|
}
|
|
2137
2006
|
|
|
2138
2007
|
function createUnloadHandlerContainer() {
|
|
@@ -2281,34 +2150,208 @@
|
|
|
2281
2150
|
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin);
|
|
2282
2151
|
}
|
|
2283
2152
|
}
|
|
2284
|
-
return itemCtx;
|
|
2153
|
+
return itemCtx;
|
|
2154
|
+
}
|
|
2155
|
+
function _setDefaults(config, core, pluginChain) {
|
|
2156
|
+
if (config) {
|
|
2157
|
+
setValue(config, STR_EXTENSION_CONFIG, [], null, isNullOrUndefined);
|
|
2158
|
+
}
|
|
2159
|
+
if (!pluginChain && core) {
|
|
2160
|
+
pluginChain = core[_DYN_GET_PROCESS_TEL_CONT0 ]()[_DYN_GET_NEXT ]();
|
|
2161
|
+
}
|
|
2162
|
+
var nextPlugin = _nextPlugin;
|
|
2163
|
+
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
2164
|
+
nextPlugin = _nextPlugin[strGetPlugin]();
|
|
2165
|
+
}
|
|
2166
|
+
_self[STR_CORE ] = core;
|
|
2167
|
+
_rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
|
|
2168
|
+
}
|
|
2169
|
+
function _initDefaults() {
|
|
2170
|
+
_isinitialized = false;
|
|
2171
|
+
_self[STR_CORE ] = null;
|
|
2172
|
+
_rootCtx = null;
|
|
2173
|
+
_nextPlugin = null;
|
|
2174
|
+
_hooks = [];
|
|
2175
|
+
_unloadHandlerContainer = createUnloadHandlerContainer();
|
|
2176
|
+
}
|
|
2177
|
+
}
|
|
2178
|
+
BaseTelemetryPlugin.__ieDyn=1;
|
|
2179
|
+
return BaseTelemetryPlugin;
|
|
2180
|
+
}());
|
|
2181
|
+
|
|
2182
|
+
var strOnPrefix = "on";
|
|
2183
|
+
var strAttachEvent = "attachEvent";
|
|
2184
|
+
var strAddEventHelper = "addEventListener";
|
|
2185
|
+
var strDetachEvent = "detachEvent";
|
|
2186
|
+
var strRemoveEventListener = "removeEventListener";
|
|
2187
|
+
var strEvents = "events";
|
|
2188
|
+
createUniqueNamespace("aiEvtPageHide");
|
|
2189
|
+
createUniqueNamespace("aiEvtPageShow");
|
|
2190
|
+
var rRemoveEmptyNs = /\.[\.]+/g;
|
|
2191
|
+
var rRemoveTrailingEmptyNs = /[\.]+$/;
|
|
2192
|
+
var _guid = 1;
|
|
2193
|
+
var elmNodeData = createElmNodeData("events");
|
|
2194
|
+
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
2195
|
+
function _normalizeNamespace(name) {
|
|
2196
|
+
if (name && name[_DYN_REPLACE ]) {
|
|
2197
|
+
return name.replace(/^\s*\.*|\.*\s*$/g, STR_EMPTY);
|
|
2198
|
+
}
|
|
2199
|
+
return name;
|
|
2200
|
+
}
|
|
2201
|
+
function _getEvtNamespace(eventName, evtNamespace) {
|
|
2202
|
+
var _a;
|
|
2203
|
+
if (evtNamespace) {
|
|
2204
|
+
var theNamespace_1 = STR_EMPTY;
|
|
2205
|
+
if (isArray(evtNamespace)) {
|
|
2206
|
+
theNamespace_1 = STR_EMPTY;
|
|
2207
|
+
arrForEach(evtNamespace, function (name) {
|
|
2208
|
+
name = _normalizeNamespace(name);
|
|
2209
|
+
if (name) {
|
|
2210
|
+
if (name[0] !== ".") {
|
|
2211
|
+
name = "." + name;
|
|
2212
|
+
}
|
|
2213
|
+
theNamespace_1 += name;
|
|
2214
|
+
}
|
|
2215
|
+
});
|
|
2216
|
+
}
|
|
2217
|
+
else {
|
|
2218
|
+
theNamespace_1 = _normalizeNamespace(evtNamespace);
|
|
2219
|
+
}
|
|
2220
|
+
if (theNamespace_1) {
|
|
2221
|
+
if (theNamespace_1[0] !== ".") {
|
|
2222
|
+
theNamespace_1 = "." + theNamespace_1;
|
|
2223
|
+
}
|
|
2224
|
+
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
2225
|
+
}
|
|
2226
|
+
}
|
|
2227
|
+
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
2228
|
+
return _a = {},
|
|
2229
|
+
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
2230
|
+
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
2231
|
+
_a;
|
|
2232
|
+
}
|
|
2233
|
+
function _getRegisteredEvents(target, evtName, addDefault) {
|
|
2234
|
+
if (addDefault === void 0) { addDefault = true; }
|
|
2235
|
+
var aiEvts = elmNodeData.get(target, strEvents, {}, addDefault);
|
|
2236
|
+
var registeredEvents = aiEvts[evtName];
|
|
2237
|
+
if (!registeredEvents) {
|
|
2238
|
+
registeredEvents = aiEvts[evtName] = [];
|
|
2239
|
+
}
|
|
2240
|
+
return registeredEvents;
|
|
2241
|
+
}
|
|
2242
|
+
function _doDetach(obj, evtName, handlerRef, useCapture) {
|
|
2243
|
+
if (obj && evtName && evtName[_DYN_TYPE ]) {
|
|
2244
|
+
if (obj[strRemoveEventListener]) {
|
|
2245
|
+
obj[strRemoveEventListener](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
2246
|
+
}
|
|
2247
|
+
else if (obj[strDetachEvent]) {
|
|
2248
|
+
obj[strDetachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
2249
|
+
}
|
|
2250
|
+
}
|
|
2251
|
+
}
|
|
2252
|
+
function _doAttach(obj, evtName, handlerRef, useCapture) {
|
|
2253
|
+
var result = false;
|
|
2254
|
+
if (obj && evtName && evtName[_DYN_TYPE ] && handlerRef) {
|
|
2255
|
+
if (obj[strAddEventHelper]) {
|
|
2256
|
+
obj[strAddEventHelper](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
2257
|
+
result = true;
|
|
2258
|
+
}
|
|
2259
|
+
else if (obj[strAttachEvent]) {
|
|
2260
|
+
obj[strAttachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
2261
|
+
result = true;
|
|
2262
|
+
}
|
|
2263
|
+
}
|
|
2264
|
+
return result;
|
|
2265
|
+
}
|
|
2266
|
+
function _doUnregister(target, events, evtName, unRegFn) {
|
|
2267
|
+
var idx = events[_DYN_LENGTH$2 ];
|
|
2268
|
+
while (idx--) {
|
|
2269
|
+
var theEvent = events[idx];
|
|
2270
|
+
if (theEvent) {
|
|
2271
|
+
if (!evtName.ns || evtName.ns === theEvent.evtName.ns) {
|
|
2272
|
+
if (!unRegFn || unRegFn(theEvent)) {
|
|
2273
|
+
_doDetach(target, theEvent.evtName, theEvent[_DYN_HANDLER ], theEvent.capture);
|
|
2274
|
+
events[_DYN_SPLICE ](idx, 1);
|
|
2275
|
+
}
|
|
2276
|
+
}
|
|
2277
|
+
}
|
|
2278
|
+
}
|
|
2279
|
+
}
|
|
2280
|
+
function _unregisterEvents(target, evtName, unRegFn) {
|
|
2281
|
+
if (evtName[_DYN_TYPE ]) {
|
|
2282
|
+
_doUnregister(target, _getRegisteredEvents(target, evtName[_DYN_TYPE ]), evtName, unRegFn);
|
|
2283
|
+
}
|
|
2284
|
+
else {
|
|
2285
|
+
var eventCache = elmNodeData.get(target, strEvents, {});
|
|
2286
|
+
objForEachKey(eventCache, function (evtType, events) {
|
|
2287
|
+
_doUnregister(target, events, evtName, unRegFn);
|
|
2288
|
+
});
|
|
2289
|
+
if (objKeys(eventCache)[_DYN_LENGTH$2 ] === 0) {
|
|
2290
|
+
elmNodeData.kill(target, strEvents);
|
|
2291
|
+
}
|
|
2292
|
+
}
|
|
2293
|
+
}
|
|
2294
|
+
function mergeEvtNamespace(theNamespace, namespaces) {
|
|
2295
|
+
var newNamespaces;
|
|
2296
|
+
if (namespaces) {
|
|
2297
|
+
if (isArray(namespaces)) {
|
|
2298
|
+
newNamespaces = [theNamespace].concat(namespaces);
|
|
2299
|
+
}
|
|
2300
|
+
else {
|
|
2301
|
+
newNamespaces = [theNamespace, namespaces];
|
|
2302
|
+
}
|
|
2303
|
+
newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT$1 ](".");
|
|
2304
|
+
}
|
|
2305
|
+
else {
|
|
2306
|
+
newNamespaces = theNamespace;
|
|
2307
|
+
}
|
|
2308
|
+
return newNamespaces;
|
|
2309
|
+
}
|
|
2310
|
+
function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
|
|
2311
|
+
var _a;
|
|
2312
|
+
if (useCapture === void 0) { useCapture = false; }
|
|
2313
|
+
var result = false;
|
|
2314
|
+
if (target) {
|
|
2315
|
+
try {
|
|
2316
|
+
var evtName = _getEvtNamespace(eventName, evtNamespace);
|
|
2317
|
+
result = _doAttach(target, evtName, handlerRef, useCapture);
|
|
2318
|
+
if (result && elmNodeData.accept(target)) {
|
|
2319
|
+
var registeredEvent = (_a = {
|
|
2320
|
+
guid: _guid++,
|
|
2321
|
+
evtName: evtName
|
|
2322
|
+
},
|
|
2323
|
+
_a[_DYN_HANDLER ] = handlerRef,
|
|
2324
|
+
_a.capture = useCapture,
|
|
2325
|
+
_a);
|
|
2326
|
+
_getRegisteredEvents(target, evtName.type)[_DYN_PUSH ](registeredEvent);
|
|
2327
|
+
}
|
|
2285
2328
|
}
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
|
|
2295
|
-
|
|
2329
|
+
catch (e) {
|
|
2330
|
+
}
|
|
2331
|
+
}
|
|
2332
|
+
return result;
|
|
2333
|
+
}
|
|
2334
|
+
function eventOff(target, eventName, handlerRef, evtNamespace, useCapture) {
|
|
2335
|
+
if (useCapture === void 0) { useCapture = false; }
|
|
2336
|
+
if (target) {
|
|
2337
|
+
try {
|
|
2338
|
+
var evtName_1 = _getEvtNamespace(eventName, evtNamespace);
|
|
2339
|
+
var found_1 = false;
|
|
2340
|
+
_unregisterEvents(target, evtName_1, function (regEvent) {
|
|
2341
|
+
if ((evtName_1.ns && !handlerRef) || regEvent[_DYN_HANDLER ] === handlerRef) {
|
|
2342
|
+
found_1 = true;
|
|
2343
|
+
return true;
|
|
2344
|
+
}
|
|
2345
|
+
return false;
|
|
2346
|
+
});
|
|
2347
|
+
if (!found_1) {
|
|
2348
|
+
_doDetach(target, evtName_1, handlerRef, useCapture);
|
|
2296
2349
|
}
|
|
2297
|
-
_self[STR_CORE ] = core;
|
|
2298
|
-
_rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
|
|
2299
2350
|
}
|
|
2300
|
-
|
|
2301
|
-
_isinitialized = false;
|
|
2302
|
-
_self[STR_CORE ] = null;
|
|
2303
|
-
_rootCtx = null;
|
|
2304
|
-
_nextPlugin = null;
|
|
2305
|
-
_hooks = [];
|
|
2306
|
-
_unloadHandlerContainer = createUnloadHandlerContainer();
|
|
2351
|
+
catch (e) {
|
|
2307
2352
|
}
|
|
2308
2353
|
}
|
|
2309
|
-
|
|
2310
|
-
return BaseTelemetryPlugin;
|
|
2311
|
-
}());
|
|
2354
|
+
}
|
|
2312
2355
|
|
|
2313
2356
|
var aiInstrumentHooks = "_aiHooks";
|
|
2314
2357
|
var cbNames = [
|
|
@@ -2369,7 +2412,7 @@
|
|
|
2369
2412
|
_a);
|
|
2370
2413
|
var hookCtx = [];
|
|
2371
2414
|
var cbArgs = _createArgs([funcArgs], orgArgs);
|
|
2372
|
-
funcArgs.evt =
|
|
2415
|
+
funcArgs.evt = getInst("event");
|
|
2373
2416
|
function _createArgs(target, theArgs) {
|
|
2374
2417
|
_arrLoop(theArgs, function (arg) {
|
|
2375
2418
|
target[_DYN_PUSH ](arg);
|
|
@@ -2377,257 +2420,111 @@
|
|
|
2377
2420
|
return target;
|
|
2378
2421
|
}
|
|
2379
2422
|
function _replaceArg(idx, value) {
|
|
2380
|
-
orgArgs = _createArgs([], orgArgs);
|
|
2381
|
-
orgArgs[idx] = value;
|
|
2382
|
-
cbArgs = _createArgs([funcArgs], orgArgs);
|
|
2383
|
-
}
|
|
2384
|
-
_doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 0 );
|
|
2385
|
-
var theFunc = aiHook.f;
|
|
2386
|
-
if (theFunc) {
|
|
2387
|
-
try {
|
|
2388
|
-
funcArgs.rslt = theFunc[_DYN_APPLY ](funcThis, orgArgs);
|
|
2389
|
-
}
|
|
2390
|
-
catch (err) {
|
|
2391
|
-
funcArgs.err = err;
|
|
2392
|
-
_doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 3 );
|
|
2393
|
-
throw err;
|
|
2394
|
-
}
|
|
2395
|
-
}
|
|
2396
|
-
_doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 1 );
|
|
2397
|
-
return funcArgs.rslt;
|
|
2398
|
-
};
|
|
2399
|
-
}
|
|
2400
|
-
function _getOwner(target, name, checkPrototype) {
|
|
2401
|
-
var owner = null;
|
|
2402
|
-
if (target) {
|
|
2403
|
-
if (hasOwnProperty(target, name)) {
|
|
2404
|
-
owner = target;
|
|
2405
|
-
}
|
|
2406
|
-
else if (checkPrototype) {
|
|
2407
|
-
owner = _getOwner(_getObjProto(target), name, false);
|
|
2408
|
-
}
|
|
2409
|
-
}
|
|
2410
|
-
return owner;
|
|
2411
|
-
}
|
|
2412
|
-
function _createInstrumentHook(owner, funcName, fn, callbacks) {
|
|
2413
|
-
var aiHook = fn && fn[aiInstrumentHooks];
|
|
2414
|
-
if (!aiHook) {
|
|
2415
|
-
aiHook = {
|
|
2416
|
-
i: 0,
|
|
2417
|
-
n: funcName,
|
|
2418
|
-
f: fn,
|
|
2419
|
-
h: []
|
|
2420
|
-
};
|
|
2421
|
-
var newFunc = _createFunctionHook(aiHook);
|
|
2422
|
-
newFunc[aiInstrumentHooks] = aiHook;
|
|
2423
|
-
owner[funcName] = newFunc;
|
|
2424
|
-
}
|
|
2425
|
-
var theHook = {
|
|
2426
|
-
id: aiHook.i,
|
|
2427
|
-
cbks: callbacks,
|
|
2428
|
-
rm: function () {
|
|
2429
|
-
var id = this.id;
|
|
2430
|
-
_arrLoop(aiHook.h, function (hook, idx) {
|
|
2431
|
-
if (hook.id === id) {
|
|
2432
|
-
aiHook.h[_DYN_SPLICE ](idx, 1);
|
|
2433
|
-
return 1;
|
|
2434
|
-
}
|
|
2435
|
-
});
|
|
2436
|
-
}
|
|
2437
|
-
};
|
|
2438
|
-
aiHook.i++;
|
|
2439
|
-
aiHook.h[_DYN_PUSH ](theHook);
|
|
2440
|
-
return theHook;
|
|
2441
|
-
}
|
|
2442
|
-
function InstrumentEvent(target, evtName, callbacks, checkPrototype) {
|
|
2443
|
-
if (target && evtName && callbacks) {
|
|
2444
|
-
var owner = _getOwner(target, evtName, checkPrototype) || target;
|
|
2445
|
-
if (owner) {
|
|
2446
|
-
return _createInstrumentHook(owner, evtName, owner[evtName], callbacks);
|
|
2447
|
-
}
|
|
2448
|
-
}
|
|
2449
|
-
return null;
|
|
2450
|
-
}
|
|
2451
|
-
|
|
2452
|
-
var strNotSpecified = "not_specified";
|
|
2453
|
-
var strIkey = "iKey";
|
|
2454
|
-
|
|
2455
|
-
function createDomEvent(eventName) {
|
|
2456
|
-
var event = null;
|
|
2457
|
-
if (isFunction(Event)) {
|
|
2458
|
-
event = new Event(eventName);
|
|
2459
|
-
}
|
|
2460
|
-
else {
|
|
2461
|
-
var doc = getDocument();
|
|
2462
|
-
if (doc && doc.createEvent) {
|
|
2463
|
-
event = doc.createEvent("Event");
|
|
2464
|
-
event.initEvent(eventName, true, true);
|
|
2465
|
-
}
|
|
2466
|
-
}
|
|
2467
|
-
return event;
|
|
2468
|
-
}
|
|
2469
|
-
|
|
2470
|
-
var _DYN_SPLIT = "split";
|
|
2471
|
-
var _DYN_LENGTH$1 = "length";
|
|
2472
|
-
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
2473
|
-
var _DYN_TO_STRING$1 = "toString";
|
|
2474
|
-
var _DYN_REMOVE_ITEM = "removeItem";
|
|
2475
|
-
var _DYN_NAME = "name";
|
|
2476
|
-
var _DYN_PATHNAME = "pathname";
|
|
2477
|
-
var _DYN_INDEX_OF = "indexOf";
|
|
2478
|
-
var _DYN_EXCEPTIONS = "exceptions";
|
|
2479
|
-
var _DYN_PARSED_STACK = "parsedStack";
|
|
2480
|
-
var _DYN_PROPERTIES = "properties";
|
|
2481
|
-
var _DYN_MEASUREMENTS = "measurements";
|
|
2482
|
-
var _DYN_STRINGIFY = "stringify";
|
|
2483
|
-
var _DYN_MESSAGE$1 = "message";
|
|
2484
|
-
var _DYN_SIZE_IN_BYTES = "sizeInBytes";
|
|
2485
|
-
var _DYN_TYPE_NAME = "typeName";
|
|
2486
|
-
var _DYN_SEVERITY_LEVEL = "severityLevel";
|
|
2487
|
-
var _DYN_PROBLEM_GROUP = "problemGroup";
|
|
2488
|
-
var _DYN_IS_MANUAL = "isManual";
|
|
2489
|
-
var _DYN__CREATE_FROM_INTERFA1 = "CreateFromInterface";
|
|
2490
|
-
var _DYN_HAS_FULL_STACK = "hasFullStack";
|
|
2491
|
-
var _DYN_LEVEL = "level";
|
|
2492
|
-
var _DYN_METHOD = "method";
|
|
2493
|
-
var _DYN_ASSEMBLY = "assembly";
|
|
2494
|
-
var _DYN_FILE_NAME = "fileName";
|
|
2495
|
-
var _DYN_LINE = "line";
|
|
2496
|
-
var _DYN_DURATION$1 = "duration";
|
|
2497
|
-
var _DYN_RECEIVED_RESPONSE = "receivedResponse";
|
|
2498
|
-
var _DYN_SUBSTRING = "substring";
|
|
2499
|
-
var _DYN_SANITIZE_KEY_AND_ADD2 = "sanitizeKeyAndAddUniqueness";
|
|
2500
|
-
var _DYN_SANITIZE_EXCEPTION = "sanitizeException";
|
|
2501
|
-
var _DYN_SANITIZE_PROPERTIES = "sanitizeProperties";
|
|
2502
|
-
var _DYN_SANITIZE_MEASUREMENT3 = "sanitizeMeasurements";
|
|
2503
|
-
|
|
2504
|
-
var strEmpty = "";
|
|
2505
|
-
function stringToBoolOrDefault(str, defaultValue) {
|
|
2506
|
-
if (defaultValue === void 0) { defaultValue = false; }
|
|
2507
|
-
if (str === undefined || str === null) {
|
|
2508
|
-
return defaultValue;
|
|
2509
|
-
}
|
|
2510
|
-
return str.toString()[_DYN_TO_LOWER_CASE ]() === "true";
|
|
2511
|
-
}
|
|
2512
|
-
function msToTimeSpan(totalms) {
|
|
2513
|
-
if (isNaN(totalms) || totalms < 0) {
|
|
2514
|
-
totalms = 0;
|
|
2515
|
-
}
|
|
2516
|
-
totalms = Math.round(totalms);
|
|
2517
|
-
var ms = strEmpty + totalms % 1000;
|
|
2518
|
-
var sec = strEmpty + Math.floor(totalms / 1000) % 60;
|
|
2519
|
-
var min = strEmpty + Math.floor(totalms / (1000 * 60)) % 60;
|
|
2520
|
-
var hour = strEmpty + Math.floor(totalms / (1000 * 60 * 60)) % 24;
|
|
2521
|
-
var days = Math.floor(totalms / (1000 * 60 * 60 * 24));
|
|
2522
|
-
ms = ms[_DYN_LENGTH$1 ] === 1 ? "00" + ms : ms[_DYN_LENGTH$1 ] === 2 ? "0" + ms : ms;
|
|
2523
|
-
sec = sec[_DYN_LENGTH$1 ] < 2 ? "0" + sec : sec;
|
|
2524
|
-
min = min[_DYN_LENGTH$1 ] < 2 ? "0" + min : min;
|
|
2525
|
-
hour = hour[_DYN_LENGTH$1 ] < 2 ? "0" + hour : hour;
|
|
2526
|
-
return (days > 0 ? days + "." : strEmpty) + hour + ":" + min + ":" + sec + "." + ms;
|
|
2527
|
-
}
|
|
2528
|
-
function isCrossOriginError(message, url, lineNumber, columnNumber, error) {
|
|
2529
|
-
return !error && isString(message) && (message === "Script error." || message === "Script error");
|
|
2530
|
-
}
|
|
2531
|
-
|
|
2532
|
-
var StorageType = createEnumStyle({
|
|
2533
|
-
LocalStorage: 0 ,
|
|
2534
|
-
SessionStorage: 1
|
|
2535
|
-
});
|
|
2536
|
-
createEnumStyle({
|
|
2537
|
-
AI: 0 ,
|
|
2538
|
-
AI_AND_W3C: 1 ,
|
|
2539
|
-
W3C: 2
|
|
2540
|
-
});
|
|
2541
|
-
|
|
2542
|
-
var _canUseLocalStorage = undefined;
|
|
2543
|
-
var _canUseSessionStorage = undefined;
|
|
2544
|
-
function _getVerifiedStorageObject(storageType) {
|
|
2545
|
-
try {
|
|
2546
|
-
if (isNullOrUndefined(getGlobal())) {
|
|
2547
|
-
return null;
|
|
2548
|
-
}
|
|
2549
|
-
var uid = (new Date)[_DYN_TO_STRING$1 ]();
|
|
2550
|
-
var storage = getGlobalInst(storageType === StorageType.LocalStorage ? "localStorage" : "sessionStorage");
|
|
2551
|
-
storage.setItem(uid, uid);
|
|
2552
|
-
var fail = storage.getItem(uid) !== uid;
|
|
2553
|
-
storage[_DYN_REMOVE_ITEM ](uid);
|
|
2554
|
-
if (!fail) {
|
|
2555
|
-
return storage;
|
|
2556
|
-
}
|
|
2557
|
-
}
|
|
2558
|
-
catch (exception) {
|
|
2559
|
-
}
|
|
2560
|
-
return null;
|
|
2561
|
-
}
|
|
2562
|
-
function _getSessionStorageObject() {
|
|
2563
|
-
if (utlCanUseSessionStorage()) {
|
|
2564
|
-
return _getVerifiedStorageObject(StorageType.SessionStorage);
|
|
2565
|
-
}
|
|
2566
|
-
return null;
|
|
2567
|
-
}
|
|
2568
|
-
function utlDisableStorage() {
|
|
2569
|
-
_canUseLocalStorage = false;
|
|
2570
|
-
_canUseSessionStorage = false;
|
|
2571
|
-
}
|
|
2572
|
-
function utlEnableStorage() {
|
|
2573
|
-
_canUseLocalStorage = utlCanUseLocalStorage(true);
|
|
2574
|
-
_canUseSessionStorage = utlCanUseSessionStorage(true);
|
|
2575
|
-
}
|
|
2576
|
-
function utlCanUseLocalStorage(reset) {
|
|
2577
|
-
if (reset || _canUseLocalStorage === undefined) {
|
|
2578
|
-
_canUseLocalStorage = !!_getVerifiedStorageObject(StorageType.LocalStorage);
|
|
2579
|
-
}
|
|
2580
|
-
return _canUseLocalStorage;
|
|
2581
|
-
}
|
|
2582
|
-
function utlCanUseSessionStorage(reset) {
|
|
2583
|
-
if (reset || _canUseSessionStorage === undefined) {
|
|
2584
|
-
_canUseSessionStorage = !!_getVerifiedStorageObject(StorageType.SessionStorage);
|
|
2585
|
-
}
|
|
2586
|
-
return _canUseSessionStorage;
|
|
2587
|
-
}
|
|
2588
|
-
function utlGetSessionStorage(logger, name) {
|
|
2589
|
-
var storage = _getSessionStorageObject();
|
|
2590
|
-
if (storage !== null) {
|
|
2591
|
-
try {
|
|
2592
|
-
return storage.getItem(name);
|
|
2423
|
+
orgArgs = _createArgs([], orgArgs);
|
|
2424
|
+
orgArgs[idx] = value;
|
|
2425
|
+
cbArgs = _createArgs([funcArgs], orgArgs);
|
|
2593
2426
|
}
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
|
|
2427
|
+
_doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 0 );
|
|
2428
|
+
var theFunc = aiHook.f;
|
|
2429
|
+
if (theFunc) {
|
|
2430
|
+
try {
|
|
2431
|
+
funcArgs.rslt = theFunc[_DYN_APPLY ](funcThis, orgArgs);
|
|
2432
|
+
}
|
|
2433
|
+
catch (err) {
|
|
2434
|
+
funcArgs.err = err;
|
|
2435
|
+
_doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 3 );
|
|
2436
|
+
throw err;
|
|
2437
|
+
}
|
|
2597
2438
|
}
|
|
2598
|
-
|
|
2599
|
-
|
|
2439
|
+
_doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 1 );
|
|
2440
|
+
return funcArgs.rslt;
|
|
2441
|
+
};
|
|
2600
2442
|
}
|
|
2601
|
-
function
|
|
2602
|
-
var
|
|
2603
|
-
if (
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
return true;
|
|
2443
|
+
function _getOwner(target, name, checkPrototype) {
|
|
2444
|
+
var owner = null;
|
|
2445
|
+
if (target) {
|
|
2446
|
+
if (objHasOwnProperty(target, name)) {
|
|
2447
|
+
owner = target;
|
|
2607
2448
|
}
|
|
2608
|
-
|
|
2609
|
-
|
|
2610
|
-
_throwInternal(logger, 2 , 4 , "Browser failed write to session storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2449
|
+
else if (checkPrototype) {
|
|
2450
|
+
owner = _getOwner(_getObjProto(target), name, false);
|
|
2611
2451
|
}
|
|
2612
2452
|
}
|
|
2613
|
-
return
|
|
2453
|
+
return owner;
|
|
2614
2454
|
}
|
|
2615
|
-
function
|
|
2616
|
-
var
|
|
2617
|
-
if (
|
|
2618
|
-
|
|
2619
|
-
|
|
2620
|
-
|
|
2455
|
+
function _createInstrumentHook(owner, funcName, fn, callbacks) {
|
|
2456
|
+
var aiHook = fn && fn[aiInstrumentHooks];
|
|
2457
|
+
if (!aiHook) {
|
|
2458
|
+
aiHook = {
|
|
2459
|
+
i: 0,
|
|
2460
|
+
n: funcName,
|
|
2461
|
+
f: fn,
|
|
2462
|
+
h: []
|
|
2463
|
+
};
|
|
2464
|
+
var newFunc = _createFunctionHook(aiHook);
|
|
2465
|
+
newFunc[aiInstrumentHooks] = aiHook;
|
|
2466
|
+
owner[funcName] = newFunc;
|
|
2467
|
+
}
|
|
2468
|
+
var theHook = {
|
|
2469
|
+
id: aiHook.i,
|
|
2470
|
+
cbks: callbacks,
|
|
2471
|
+
rm: function () {
|
|
2472
|
+
var id = this.id;
|
|
2473
|
+
_arrLoop(aiHook.h, function (hook, idx) {
|
|
2474
|
+
if (hook.id === id) {
|
|
2475
|
+
aiHook.h[_DYN_SPLICE ](idx, 1);
|
|
2476
|
+
return 1;
|
|
2477
|
+
}
|
|
2478
|
+
});
|
|
2621
2479
|
}
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
|
|
2480
|
+
};
|
|
2481
|
+
aiHook.i++;
|
|
2482
|
+
aiHook.h[_DYN_PUSH ](theHook);
|
|
2483
|
+
return theHook;
|
|
2484
|
+
}
|
|
2485
|
+
function InstrumentEvent(target, evtName, callbacks, checkPrototype) {
|
|
2486
|
+
if (target && evtName && callbacks) {
|
|
2487
|
+
var owner = _getOwner(target, evtName, checkPrototype) || target;
|
|
2488
|
+
if (owner) {
|
|
2489
|
+
return _createInstrumentHook(owner, evtName, owner[evtName], callbacks);
|
|
2625
2490
|
}
|
|
2626
2491
|
}
|
|
2627
|
-
return
|
|
2492
|
+
return null;
|
|
2628
2493
|
}
|
|
2629
2494
|
|
|
2630
|
-
var
|
|
2495
|
+
var strNotSpecified = "not_specified";
|
|
2496
|
+
var strIkey = "iKey";
|
|
2497
|
+
|
|
2498
|
+
var _DYN_SPLIT = "split";
|
|
2499
|
+
var _DYN_LENGTH$1 = "length";
|
|
2500
|
+
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
2501
|
+
var _DYN_TO_STRING$1 = "toString";
|
|
2502
|
+
var _DYN_REMOVE_ITEM = "removeItem";
|
|
2503
|
+
var _DYN_NAME = "name";
|
|
2504
|
+
var _DYN_PATHNAME = "pathname";
|
|
2505
|
+
var _DYN_INDEX_OF = "indexOf";
|
|
2506
|
+
var _DYN_EXCEPTIONS = "exceptions";
|
|
2507
|
+
var _DYN_PARSED_STACK = "parsedStack";
|
|
2508
|
+
var _DYN_PROPERTIES = "properties";
|
|
2509
|
+
var _DYN_MEASUREMENTS = "measurements";
|
|
2510
|
+
var _DYN_STRINGIFY = "stringify";
|
|
2511
|
+
var _DYN_MESSAGE$1 = "message";
|
|
2512
|
+
var _DYN_SIZE_IN_BYTES = "sizeInBytes";
|
|
2513
|
+
var _DYN_TYPE_NAME = "typeName";
|
|
2514
|
+
var _DYN_SEVERITY_LEVEL = "severityLevel";
|
|
2515
|
+
var _DYN_PROBLEM_GROUP = "problemGroup";
|
|
2516
|
+
var _DYN_IS_MANUAL = "isManual";
|
|
2517
|
+
var _DYN__CREATE_FROM_INTERFA1 = "CreateFromInterface";
|
|
2518
|
+
var _DYN_HAS_FULL_STACK = "hasFullStack";
|
|
2519
|
+
var _DYN_LEVEL = "level";
|
|
2520
|
+
var _DYN_METHOD = "method";
|
|
2521
|
+
var _DYN_ASSEMBLY = "assembly";
|
|
2522
|
+
var _DYN_FILE_NAME = "fileName";
|
|
2523
|
+
var _DYN_LINE = "line";
|
|
2524
|
+
var _DYN_DURATION$1 = "duration";
|
|
2525
|
+
var _DYN_RECEIVED_RESPONSE = "receivedResponse";
|
|
2526
|
+
var _DYN_SUBSTRING = "substring";
|
|
2527
|
+
|
|
2631
2528
|
function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
|
|
2632
2529
|
var origLength = key[_DYN_LENGTH$1 ];
|
|
2633
2530
|
var field = dataSanitizeKey(logger, key);
|
|
@@ -2658,9 +2555,9 @@
|
|
|
2658
2555
|
var valueTrunc;
|
|
2659
2556
|
if (value) {
|
|
2660
2557
|
maxLength = maxLength ? maxLength : 1024 ;
|
|
2661
|
-
value = strTrim(value);
|
|
2662
|
-
if (value
|
|
2663
|
-
valueTrunc = value[
|
|
2558
|
+
value = strTrim(value[_DYN_TO_STRING$1 ]());
|
|
2559
|
+
if (value[_DYN_LENGTH$1 ] > maxLength) {
|
|
2560
|
+
valueTrunc = value[_DYN_SUBSTRING ](0, maxLength);
|
|
2664
2561
|
_throwInternal(logger, 2 , 61 , "string value is too long. It has been truncated to " + maxLength + " characters.", { value: value }, true);
|
|
2665
2562
|
}
|
|
2666
2563
|
}
|
|
@@ -2727,7 +2624,7 @@
|
|
|
2727
2624
|
function dataSanitizeInput(logger, input, maxLength, _msgId) {
|
|
2728
2625
|
var inputTrunc;
|
|
2729
2626
|
if (input) {
|
|
2730
|
-
input = strTrim(input);
|
|
2627
|
+
input = strTrim(input[_DYN_TO_STRING$1 ]());
|
|
2731
2628
|
if (input[_DYN_LENGTH$1 ] > maxLength) {
|
|
2732
2629
|
inputTrunc = input[_DYN_SUBSTRING ](0, maxLength);
|
|
2733
2630
|
_throwInternal(logger, 2 , _msgId, "input is too long, it has been truncated to " + maxLength + " characters.", { data: input }, true);
|
|
@@ -2739,28 +2636,6 @@
|
|
|
2739
2636
|
var s = "00" + num;
|
|
2740
2637
|
return s.substr(s[_DYN_LENGTH$1 ] - 3);
|
|
2741
2638
|
}
|
|
2742
|
-
(_a = {
|
|
2743
|
-
MAX_NAME_LENGTH: 150 ,
|
|
2744
|
-
MAX_ID_LENGTH: 128 ,
|
|
2745
|
-
MAX_PROPERTY_LENGTH: 8192 ,
|
|
2746
|
-
MAX_STRING_LENGTH: 1024 ,
|
|
2747
|
-
MAX_URL_LENGTH: 2048 ,
|
|
2748
|
-
MAX_MESSAGE_LENGTH: 32768 ,
|
|
2749
|
-
MAX_EXCEPTION_LENGTH: 32768
|
|
2750
|
-
},
|
|
2751
|
-
_a[_DYN_SANITIZE_KEY_AND_ADD2 ] = dataSanitizeKeyAndAddUniqueness,
|
|
2752
|
-
_a.sanitizeKey = dataSanitizeKey,
|
|
2753
|
-
_a.sanitizeString = dataSanitizeString,
|
|
2754
|
-
_a.sanitizeUrl = dataSanitizeUrl,
|
|
2755
|
-
_a.sanitizeMessage = dataSanitizeMessage,
|
|
2756
|
-
_a[_DYN_SANITIZE_EXCEPTION ] = dataSanitizeException,
|
|
2757
|
-
_a[_DYN_SANITIZE_PROPERTIES ] = dataSanitizeProperties,
|
|
2758
|
-
_a[_DYN_SANITIZE_MEASUREMENT3 ] = dataSanitizeMeasurements,
|
|
2759
|
-
_a.sanitizeId = dataSanitizeId,
|
|
2760
|
-
_a.sanitizeInput = dataSanitizeInput,
|
|
2761
|
-
_a.padNumber = dsPadNumber,
|
|
2762
|
-
_a.trim = strTrim,
|
|
2763
|
-
_a);
|
|
2764
2639
|
|
|
2765
2640
|
var _document = getDocument() || {};
|
|
2766
2641
|
var _htmlAnchorIdx = 0;
|
|
@@ -3410,6 +3285,34 @@
|
|
|
3410
3285
|
return Metric;
|
|
3411
3286
|
}());
|
|
3412
3287
|
|
|
3288
|
+
var strEmpty = "";
|
|
3289
|
+
function stringToBoolOrDefault(str, defaultValue) {
|
|
3290
|
+
if (defaultValue === void 0) { defaultValue = false; }
|
|
3291
|
+
if (str === undefined || str === null) {
|
|
3292
|
+
return defaultValue;
|
|
3293
|
+
}
|
|
3294
|
+
return str.toString()[_DYN_TO_LOWER_CASE ]() === "true";
|
|
3295
|
+
}
|
|
3296
|
+
function msToTimeSpan(totalms) {
|
|
3297
|
+
if (isNaN(totalms) || totalms < 0) {
|
|
3298
|
+
totalms = 0;
|
|
3299
|
+
}
|
|
3300
|
+
totalms = Math.round(totalms);
|
|
3301
|
+
var ms = strEmpty + totalms % 1000;
|
|
3302
|
+
var sec = strEmpty + Math.floor(totalms / 1000) % 60;
|
|
3303
|
+
var min = strEmpty + Math.floor(totalms / (1000 * 60)) % 60;
|
|
3304
|
+
var hour = strEmpty + Math.floor(totalms / (1000 * 60 * 60)) % 24;
|
|
3305
|
+
var days = Math.floor(totalms / (1000 * 60 * 60 * 24));
|
|
3306
|
+
ms = ms[_DYN_LENGTH$1 ] === 1 ? "00" + ms : ms[_DYN_LENGTH$1 ] === 2 ? "0" + ms : ms;
|
|
3307
|
+
sec = sec[_DYN_LENGTH$1 ] < 2 ? "0" + sec : sec;
|
|
3308
|
+
min = min[_DYN_LENGTH$1 ] < 2 ? "0" + min : min;
|
|
3309
|
+
hour = hour[_DYN_LENGTH$1 ] < 2 ? "0" + hour : hour;
|
|
3310
|
+
return (days > 0 ? days + "." : strEmpty) + hour + ":" + min + ":" + sec + "." + ms;
|
|
3311
|
+
}
|
|
3312
|
+
function isCrossOriginError(message, url, lineNumber, columnNumber, error) {
|
|
3313
|
+
return !error && isString(message) && (message === "Script error." || message === "Script error");
|
|
3314
|
+
}
|
|
3315
|
+
|
|
3413
3316
|
var PageView = /** @class */ (function () {
|
|
3414
3317
|
function PageView(logger, name, url, durationMs, properties, measurements, id) {
|
|
3415
3318
|
this.aiDataContract = {
|
|
@@ -3575,6 +3478,119 @@
|
|
|
3575
3478
|
return telemetryItem;
|
|
3576
3479
|
}
|
|
3577
3480
|
|
|
3481
|
+
var StorageType = createEnumStyle({
|
|
3482
|
+
LocalStorage: 0 ,
|
|
3483
|
+
SessionStorage: 1
|
|
3484
|
+
});
|
|
3485
|
+
createEnumStyle({
|
|
3486
|
+
AI: 0 ,
|
|
3487
|
+
AI_AND_W3C: 1 ,
|
|
3488
|
+
W3C: 2
|
|
3489
|
+
});
|
|
3490
|
+
|
|
3491
|
+
function createDomEvent(eventName) {
|
|
3492
|
+
var event = null;
|
|
3493
|
+
if (isFunction(Event)) {
|
|
3494
|
+
event = new Event(eventName);
|
|
3495
|
+
}
|
|
3496
|
+
else {
|
|
3497
|
+
var doc = getDocument();
|
|
3498
|
+
if (doc && doc.createEvent) {
|
|
3499
|
+
event = doc.createEvent("Event");
|
|
3500
|
+
event.initEvent(eventName, true, true);
|
|
3501
|
+
}
|
|
3502
|
+
}
|
|
3503
|
+
return event;
|
|
3504
|
+
}
|
|
3505
|
+
|
|
3506
|
+
var _canUseLocalStorage = undefined;
|
|
3507
|
+
var _canUseSessionStorage = undefined;
|
|
3508
|
+
function _getVerifiedStorageObject(storageType) {
|
|
3509
|
+
try {
|
|
3510
|
+
if (isNullOrUndefined(getGlobal$1())) {
|
|
3511
|
+
return null;
|
|
3512
|
+
}
|
|
3513
|
+
var uid = (new Date)[_DYN_TO_STRING$1 ]();
|
|
3514
|
+
var storage = getInst(storageType === StorageType.LocalStorage ? "localStorage" : "sessionStorage");
|
|
3515
|
+
storage.setItem(uid, uid);
|
|
3516
|
+
var fail = storage.getItem(uid) !== uid;
|
|
3517
|
+
storage[_DYN_REMOVE_ITEM ](uid);
|
|
3518
|
+
if (!fail) {
|
|
3519
|
+
return storage;
|
|
3520
|
+
}
|
|
3521
|
+
}
|
|
3522
|
+
catch (exception) {
|
|
3523
|
+
}
|
|
3524
|
+
return null;
|
|
3525
|
+
}
|
|
3526
|
+
function _getSessionStorageObject() {
|
|
3527
|
+
if (utlCanUseSessionStorage()) {
|
|
3528
|
+
return _getVerifiedStorageObject(StorageType.SessionStorage);
|
|
3529
|
+
}
|
|
3530
|
+
return null;
|
|
3531
|
+
}
|
|
3532
|
+
function utlDisableStorage() {
|
|
3533
|
+
_canUseLocalStorage = false;
|
|
3534
|
+
_canUseSessionStorage = false;
|
|
3535
|
+
}
|
|
3536
|
+
function utlEnableStorage() {
|
|
3537
|
+
_canUseLocalStorage = utlCanUseLocalStorage(true);
|
|
3538
|
+
_canUseSessionStorage = utlCanUseSessionStorage(true);
|
|
3539
|
+
}
|
|
3540
|
+
function utlCanUseLocalStorage(reset) {
|
|
3541
|
+
if (reset || _canUseLocalStorage === undefined) {
|
|
3542
|
+
_canUseLocalStorage = !!_getVerifiedStorageObject(StorageType.LocalStorage);
|
|
3543
|
+
}
|
|
3544
|
+
return _canUseLocalStorage;
|
|
3545
|
+
}
|
|
3546
|
+
function utlCanUseSessionStorage(reset) {
|
|
3547
|
+
if (reset || _canUseSessionStorage === undefined) {
|
|
3548
|
+
_canUseSessionStorage = !!_getVerifiedStorageObject(StorageType.SessionStorage);
|
|
3549
|
+
}
|
|
3550
|
+
return _canUseSessionStorage;
|
|
3551
|
+
}
|
|
3552
|
+
function utlGetSessionStorage(logger, name) {
|
|
3553
|
+
var storage = _getSessionStorageObject();
|
|
3554
|
+
if (storage !== null) {
|
|
3555
|
+
try {
|
|
3556
|
+
return storage.getItem(name);
|
|
3557
|
+
}
|
|
3558
|
+
catch (e) {
|
|
3559
|
+
_canUseSessionStorage = false;
|
|
3560
|
+
_throwInternal(logger, 2 , 2 , "Browser failed read of session storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
3561
|
+
}
|
|
3562
|
+
}
|
|
3563
|
+
return null;
|
|
3564
|
+
}
|
|
3565
|
+
function utlSetSessionStorage(logger, name, data) {
|
|
3566
|
+
var storage = _getSessionStorageObject();
|
|
3567
|
+
if (storage !== null) {
|
|
3568
|
+
try {
|
|
3569
|
+
storage.setItem(name, data);
|
|
3570
|
+
return true;
|
|
3571
|
+
}
|
|
3572
|
+
catch (e) {
|
|
3573
|
+
_canUseSessionStorage = false;
|
|
3574
|
+
_throwInternal(logger, 2 , 4 , "Browser failed write to session storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
3575
|
+
}
|
|
3576
|
+
}
|
|
3577
|
+
return false;
|
|
3578
|
+
}
|
|
3579
|
+
function utlRemoveSessionStorage(logger, name) {
|
|
3580
|
+
var storage = _getSessionStorageObject();
|
|
3581
|
+
if (storage !== null) {
|
|
3582
|
+
try {
|
|
3583
|
+
storage[_DYN_REMOVE_ITEM ](name);
|
|
3584
|
+
return true;
|
|
3585
|
+
}
|
|
3586
|
+
catch (e) {
|
|
3587
|
+
_canUseSessionStorage = false;
|
|
3588
|
+
_throwInternal(logger, 2 , 6 , "Browser failed removal of session storage item. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
3589
|
+
}
|
|
3590
|
+
}
|
|
3591
|
+
return false;
|
|
3592
|
+
}
|
|
3593
|
+
|
|
3578
3594
|
var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
|
|
3579
3595
|
var AnalyticsPluginIdentifier = "ApplicationInsightsAnalytics";
|
|
3580
3596
|
|
|
@@ -4507,7 +4523,7 @@
|
|
|
4507
4523
|
});
|
|
4508
4524
|
return _this;
|
|
4509
4525
|
}
|
|
4510
|
-
AnalyticsPlugin.Version = "3.0.0-beta.2208-
|
|
4526
|
+
AnalyticsPlugin.Version = "3.0.0-beta.2208-19";
|
|
4511
4527
|
AnalyticsPlugin.getDefaultConfig = _getDefaultConfig;
|
|
4512
4528
|
return AnalyticsPlugin;
|
|
4513
4529
|
}(BaseTelemetryPlugin));
|
|
@@ -4515,7 +4531,7 @@
|
|
|
4515
4531
|
exports.AnalyticsPlugin = AnalyticsPlugin;
|
|
4516
4532
|
exports.ApplicationInsights = AnalyticsPlugin;
|
|
4517
4533
|
|
|
4518
|
-
|
|
4534
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4519
4535
|
|
|
4520
4536
|
}));
|
|
4521
4537
|
//# sourceMappingURL=applicationinsights-analytics-js.js.map
|