@microsoft/applicationinsights-web 3.0.0-beta.2208-19 → 3.0.0-beta.2209-03
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/browser/{ai.3.0.0-beta.2208-19.cjs.js → ai.3.0.0-beta.2209-03.cjs.js} +190 -115
- package/browser/ai.3.0.0-beta.2209-03.cjs.js.map +1 -0
- package/browser/ai.3.0.0-beta.2209-03.cjs.min.js +6 -0
- package/browser/ai.3.0.0-beta.2209-03.cjs.min.js.map +1 -0
- package/browser/{ai.3.0.0-beta.2208-19.gbl.js → ai.3.0.0-beta.2209-03.gbl.js} +190 -115
- package/browser/ai.3.0.0-beta.2209-03.gbl.js.map +1 -0
- package/browser/ai.3.0.0-beta.2209-03.gbl.min.js +6 -0
- package/browser/ai.3.0.0-beta.2209-03.gbl.min.js.map +1 -0
- package/browser/ai.3.0.0-beta.2209-03.integrity.json +66 -0
- package/browser/{ai.3.0.0-beta.2208-19.js → ai.3.0.0-beta.2209-03.js} +190 -115
- package/browser/ai.3.0.0-beta.2209-03.js.map +1 -0
- package/browser/ai.3.0.0-beta.2209-03.min.js +6 -0
- package/browser/ai.3.0.0-beta.2209-03.min.js.map +1 -0
- package/browser/ai.3.cjs.js +189 -114
- package/browser/ai.3.cjs.js.map +1 -1
- package/browser/ai.3.cjs.min.js +2 -2
- package/browser/ai.3.cjs.min.js.map +1 -1
- package/browser/ai.3.gbl.js +189 -114
- package/browser/ai.3.gbl.js.map +1 -1
- package/browser/ai.3.gbl.min.js +2 -2
- package/browser/ai.3.gbl.min.js.map +1 -1
- package/browser/ai.3.js +189 -114
- package/browser/ai.3.js.map +1 -1
- package/browser/ai.3.min.js +2 -2
- package/browser/ai.3.min.js.map +1 -1
- package/dist/applicationinsights-web.api.json +176 -32
- package/dist/applicationinsights-web.api.md +12 -6
- package/dist/applicationinsights-web.d.ts +108 -8
- package/dist/applicationinsights-web.js +189 -114
- package/dist/applicationinsights-web.js.map +1 -1
- package/dist/applicationinsights-web.min.js +2 -2
- package/dist/applicationinsights-web.min.js.map +1 -1
- package/dist/applicationinsights-web.rollup.d.ts +108 -8
- package/dist-esm/ApplicationInsightsContainer.js +1 -1
- package/dist-esm/Init.js +1 -1
- package/dist-esm/Initialization.js +14 -7
- package/dist-esm/Initialization.js.map +1 -1
- package/dist-esm/InternalConstants.js +1 -1
- package/dist-esm/__DynamicConstants.js +1 -1
- package/dist-esm/applicationinsights-web.js +1 -1
- package/package.json +7 -7
- package/src/Initialization.ts +17 -2
- package/types/Initialization.d.ts +10 -1
- package/types/tsdoc-metadata.json +1 -1
- package/browser/ai.3.0.0-beta.2208-19.cjs.js.map +0 -1
- package/browser/ai.3.0.0-beta.2208-19.cjs.min.js +0 -6
- package/browser/ai.3.0.0-beta.2208-19.cjs.min.js.map +0 -1
- package/browser/ai.3.0.0-beta.2208-19.gbl.js.map +0 -1
- package/browser/ai.3.0.0-beta.2208-19.gbl.min.js +0 -6
- package/browser/ai.3.0.0-beta.2208-19.gbl.min.js.map +0 -1
- package/browser/ai.3.0.0-beta.2208-19.integrity.json +0 -66
- package/browser/ai.3.0.0-beta.2208-19.js.map +0 -1
- package/browser/ai.3.0.0-beta.2208-19.min.js +0 -6
- package/browser/ai.3.0.0-beta.2208-19.min.js.map +0 -1
package/browser/ai.3.cjs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Web, 3.0.0-beta.
|
|
2
|
+
* Application Insights JavaScript SDK - Web, 3.0.0-beta.2209-03
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
'use strict';
|
|
@@ -140,14 +140,21 @@ function getHistory() {
|
|
|
140
140
|
return _hasHistory ? history : getInst(HISTORY);
|
|
141
141
|
}
|
|
142
142
|
|
|
143
|
+
var objGetOwnPropertyDescriptor = ObjClass$1.getOwnPropertyDescriptor;
|
|
144
|
+
|
|
143
145
|
function objHasOwnProperty(obj, prop) {
|
|
144
146
|
return obj && ObjProto$1[HAS_OWN_PROPERTY].call(obj, prop);
|
|
145
147
|
}
|
|
146
148
|
|
|
149
|
+
var objHasOwn = ObjClass$1["hasOwn"] || polyObjHasOwn;
|
|
150
|
+
function polyObjHasOwn(obj, prop) {
|
|
151
|
+
return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
|
|
152
|
+
}
|
|
153
|
+
|
|
147
154
|
function objForEachKey(theObject, callbackfn, thisArg) {
|
|
148
155
|
if (theObject && isObject(theObject)) {
|
|
149
156
|
for (var prop in theObject) {
|
|
150
|
-
if (
|
|
157
|
+
if (objHasOwn(theObject, prop)) {
|
|
151
158
|
if (callbackfn.call(thisArg || theObject, prop, theObject[prop]) === -1) {
|
|
152
159
|
break;
|
|
153
160
|
}
|
|
@@ -764,6 +771,7 @@ var _DYN_DIAG_LOG$2 = "diagLog";
|
|
|
764
771
|
var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
|
|
765
772
|
var _DYN_CREATE_NEW = "createNew";
|
|
766
773
|
var _DYN_COOKIE_CFG = "cookieCfg";
|
|
774
|
+
var _DYN_INDEX_OF$1 = "indexOf";
|
|
767
775
|
var _DYN_SUBSTRING$1 = "substring";
|
|
768
776
|
var _DYN_USER_AGENT = "userAgent";
|
|
769
777
|
var _DYN_SPLIT$1 = "split";
|
|
@@ -1634,7 +1642,7 @@ function newId(maxLength) {
|
|
|
1634
1642
|
}
|
|
1635
1643
|
|
|
1636
1644
|
var _objDefineProperty = ObjDefineProperty;
|
|
1637
|
-
var version = "3.0.0-beta.
|
|
1645
|
+
var version = "3.0.0-beta.2209-03";
|
|
1638
1646
|
var instanceName = "." + newId(6);
|
|
1639
1647
|
var _dataUid = 0;
|
|
1640
1648
|
function _createAccessor(target, prop, value) {
|
|
@@ -2505,6 +2513,20 @@ function _createCookieMgrConfig(rootConfig) {
|
|
|
2505
2513
|
}
|
|
2506
2514
|
return cookieMgrCfg;
|
|
2507
2515
|
}
|
|
2516
|
+
function _isIgnoredCookie(cookieMgrCfg, name) {
|
|
2517
|
+
if (name && cookieMgrCfg && isArray(cookieMgrCfg.ignoreCookies)) {
|
|
2518
|
+
return cookieMgrCfg.ignoreCookies[_DYN_INDEX_OF$1 ](name) !== -1;
|
|
2519
|
+
}
|
|
2520
|
+
return false;
|
|
2521
|
+
}
|
|
2522
|
+
function _isBlockedCookie(cookieMgrCfg, name) {
|
|
2523
|
+
if (name && cookieMgrCfg && isArray(cookieMgrCfg.blockedCookies)) {
|
|
2524
|
+
if (cookieMgrCfg.blockedCookies[_DYN_INDEX_OF$1 ](name) !== -1) {
|
|
2525
|
+
return true;
|
|
2526
|
+
}
|
|
2527
|
+
}
|
|
2528
|
+
return _isIgnoredCookie(cookieMgrCfg, name);
|
|
2529
|
+
}
|
|
2508
2530
|
function safeGetCookieMgr(core, config) {
|
|
2509
2531
|
var cookieMgr;
|
|
2510
2532
|
if (core) {
|
|
@@ -2543,10 +2565,10 @@ function createCookieMgr(rootConfig, logger) {
|
|
|
2543
2565
|
},
|
|
2544
2566
|
set: function (name, value, maxAgeSec, domain, path) {
|
|
2545
2567
|
var result = false;
|
|
2546
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
2568
|
+
if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {
|
|
2547
2569
|
var values = {};
|
|
2548
2570
|
var theValue = strTrim(value || STR_EMPTY);
|
|
2549
|
-
var idx = theValue
|
|
2571
|
+
var idx = theValue[_DYN_INDEX_OF$1 ](";");
|
|
2550
2572
|
if (idx !== -1) {
|
|
2551
2573
|
theValue = strTrim(value[_DYN_SUBSTRING$1 ](0, idx));
|
|
2552
2574
|
values = _extractParts(value[_DYN_SUBSTRING$1 ](idx + 1));
|
|
@@ -2586,7 +2608,7 @@ function createCookieMgr(rootConfig, logger) {
|
|
|
2586
2608
|
},
|
|
2587
2609
|
get: function (name) {
|
|
2588
2610
|
var value = STR_EMPTY;
|
|
2589
|
-
if (_isMgrEnabled(cookieMgr)) {
|
|
2611
|
+
if (_isMgrEnabled(cookieMgr) && !_isIgnoredCookie(cookieMgrConfig, name)) {
|
|
2590
2612
|
value = (cookieMgrConfig.getCookie || _getCookieValue)(name);
|
|
2591
2613
|
}
|
|
2592
2614
|
return value;
|
|
@@ -2639,7 +2661,7 @@ function _extractParts(theValue) {
|
|
|
2639
2661
|
arrForEach(parts, function (thePart) {
|
|
2640
2662
|
thePart = strTrim(thePart || STR_EMPTY);
|
|
2641
2663
|
if (thePart) {
|
|
2642
|
-
var idx = thePart
|
|
2664
|
+
var idx = thePart[_DYN_INDEX_OF$1 ]("=");
|
|
2643
2665
|
if (idx === -1) {
|
|
2644
2666
|
values[thePart] = null;
|
|
2645
2667
|
}
|
|
@@ -4668,6 +4690,9 @@ function _getStackFromErrorObj(errorObj) {
|
|
|
4668
4690
|
else if (window && window["opera"] && errorObj[strMessage]) {
|
|
4669
4691
|
details = _getOperaStack(errorObj[_DYN_MESSAGE$1 ]);
|
|
4670
4692
|
}
|
|
4693
|
+
else if (errorObj["reason"] && errorObj.reason[strStack]) {
|
|
4694
|
+
details = _convertStackObj(errorObj.reason[strStack]);
|
|
4695
|
+
}
|
|
4671
4696
|
else if (isString(errorObj)) {
|
|
4672
4697
|
details = _convertStackObj(errorObj);
|
|
4673
4698
|
}
|
|
@@ -5953,7 +5978,7 @@ function _configMilliseconds(value, defValue) {
|
|
|
5953
5978
|
}
|
|
5954
5979
|
return value;
|
|
5955
5980
|
}
|
|
5956
|
-
function _getDefaultConfig(config) {
|
|
5981
|
+
function _getDefaultConfig$1(config) {
|
|
5957
5982
|
if (!config) {
|
|
5958
5983
|
config = {};
|
|
5959
5984
|
}
|
|
@@ -6253,7 +6278,7 @@ var AnalyticsPlugin = /** @class */ (function (_super) {
|
|
|
6253
6278
|
function _populateDefaults(config) {
|
|
6254
6279
|
var ctx = createProcessTelemetryContext(null, config, _self[_DYN_CORE$1 ]);
|
|
6255
6280
|
var identifier = _self.identifier;
|
|
6256
|
-
var defaults = _getDefaultConfig(config);
|
|
6281
|
+
var defaults = _getDefaultConfig$1(config);
|
|
6257
6282
|
var extConfig = _self.config = ctx.getExtCfg(identifier);
|
|
6258
6283
|
if (defaults !== undefined) {
|
|
6259
6284
|
objForEachKey(defaults, function (field, value) {
|
|
@@ -6446,8 +6471,8 @@ var AnalyticsPlugin = /** @class */ (function (_super) {
|
|
|
6446
6471
|
});
|
|
6447
6472
|
return _this;
|
|
6448
6473
|
}
|
|
6449
|
-
AnalyticsPlugin.Version = "3.0.0-beta.
|
|
6450
|
-
AnalyticsPlugin.getDefaultConfig = _getDefaultConfig;
|
|
6474
|
+
AnalyticsPlugin.Version = "3.0.0-beta.2209-03";
|
|
6475
|
+
AnalyticsPlugin.getDefaultConfig = _getDefaultConfig$1;
|
|
6451
6476
|
return AnalyticsPlugin;
|
|
6452
6477
|
}(BaseTelemetryPlugin));
|
|
6453
6478
|
|
|
@@ -6619,7 +6644,7 @@ function EnvelopeCreatorInit(logger, telemetryItem) {
|
|
|
6619
6644
|
}
|
|
6620
6645
|
}
|
|
6621
6646
|
var EnvelopeCreator = {
|
|
6622
|
-
Version: "3.0.0-beta.
|
|
6647
|
+
Version: "3.0.0-beta.2209-03"
|
|
6623
6648
|
};
|
|
6624
6649
|
function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
|
|
6625
6650
|
EnvelopeCreatorInit(logger, telemetryItem);
|
|
@@ -7970,17 +7995,17 @@ var _DYN_LENGTH$1 = "length";
|
|
|
7970
7995
|
var _DYN_TRACE_ID = "traceID";
|
|
7971
7996
|
var _DYN_SPAN_ID = "spanID";
|
|
7972
7997
|
var _DYN_TRACE_FLAGS = "traceFlags";
|
|
7973
|
-
var
|
|
7998
|
+
var _DYN_CONTEXT$1 = "context";
|
|
7974
7999
|
var _DYN_TRACE_ID0 = "traceId";
|
|
7975
8000
|
var _DYN_SPAN_ID1 = "spanId";
|
|
7976
|
-
var
|
|
7977
|
-
var
|
|
7978
|
-
var _DYN_INCLUDE_CORRELATION_3 = "includeCorrelationHeaders";
|
|
8001
|
+
var _DYN_CORE = "core";
|
|
8002
|
+
var _DYN_INCLUDE_CORRELATION_2 = "includeCorrelationHeaders";
|
|
7979
8003
|
var _DYN_GET_ABSOLUTE_URL = "getAbsoluteUrl";
|
|
7980
8004
|
var _DYN_HEADERS = "headers";
|
|
7981
8005
|
var _DYN_REQUEST_HEADERS = "requestHeaders";
|
|
7982
8006
|
var _DYN_APP_ID = "appId";
|
|
7983
8007
|
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
8008
|
+
var _DYN_TRACK_DEPENDENCY_DAT3 = "trackDependencyDataInternal";
|
|
7984
8009
|
var _DYN_DISTRIBUTED_TRACING_4 = "distributedTracingMode";
|
|
7985
8010
|
var _DYN_START_TIME = "startTime";
|
|
7986
8011
|
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
@@ -8261,6 +8286,13 @@ var AJAX_MONITOR_PREFIX = "ai.ajxmn.";
|
|
|
8261
8286
|
var strDiagLog = "diagLog";
|
|
8262
8287
|
var strAjaxData = "ajaxData";
|
|
8263
8288
|
var strFetch = "fetch";
|
|
8289
|
+
var ERROR_HEADER = "Failed to monitor XMLHttpRequest";
|
|
8290
|
+
var ERROR_PREFIX = ", monitoring data for this ajax call ";
|
|
8291
|
+
var ERROR_POSTFIX = ERROR_PREFIX + "may be incorrect.";
|
|
8292
|
+
var ERROR_NOT_SENT = ERROR_PREFIX + "won't be sent.";
|
|
8293
|
+
var CORRELATION_HEADER_ERROR = "Failed to get Request-Context correlation header as it may be not included in the response or not accessible.";
|
|
8294
|
+
var CUSTOM_REQUEST_CONTEXT_ERROR = "Failed to add custom defined request context as configured call back may missing a null check.";
|
|
8295
|
+
var FAILED_TO_CALCULATE_DURATION_ERROR = "Failed to calculate the duration of the ";
|
|
8264
8296
|
var _markCount = 0;
|
|
8265
8297
|
function _supportsFetch() {
|
|
8266
8298
|
var _global = getGlobal();
|
|
@@ -8304,9 +8336,7 @@ function _supportsAjaxMonitoring(ajaxMonitorInstance) {
|
|
|
8304
8336
|
function _getFailedAjaxDiagnosticsMessage(xhr) {
|
|
8305
8337
|
var result = "";
|
|
8306
8338
|
try {
|
|
8307
|
-
if (
|
|
8308
|
-
!isNullOrUndefined(xhr[strAjaxData]) &&
|
|
8309
|
-
!isNullOrUndefined(xhr[strAjaxData][_DYN_REQUEST_URL ])) {
|
|
8339
|
+
if (xhr && xhr[strAjaxData] && xhr[strAjaxData][_DYN_REQUEST_URL ]) {
|
|
8310
8340
|
result += "(url: '" + xhr[strAjaxData][_DYN_REQUEST_URL ] + "')";
|
|
8311
8341
|
}
|
|
8312
8342
|
}
|
|
@@ -8334,6 +8364,37 @@ function _indexOf(value, match) {
|
|
|
8334
8364
|
}
|
|
8335
8365
|
return -1;
|
|
8336
8366
|
}
|
|
8367
|
+
function _addHandler(container, id, theFunc) {
|
|
8368
|
+
var theHandler = {
|
|
8369
|
+
id: id,
|
|
8370
|
+
fn: theFunc
|
|
8371
|
+
};
|
|
8372
|
+
container.push(theHandler);
|
|
8373
|
+
return {
|
|
8374
|
+
remove: function () {
|
|
8375
|
+
arrForEach(container, function (initializer, idx) {
|
|
8376
|
+
if (initializer.id === theHandler.id) {
|
|
8377
|
+
container.splice(idx, 1);
|
|
8378
|
+
return -1;
|
|
8379
|
+
}
|
|
8380
|
+
});
|
|
8381
|
+
}
|
|
8382
|
+
};
|
|
8383
|
+
}
|
|
8384
|
+
function _processDependencyContainer(core, container, details, message) {
|
|
8385
|
+
var result = true;
|
|
8386
|
+
arrForEach(container, function (theFunc, idx) {
|
|
8387
|
+
try {
|
|
8388
|
+
if (theFunc.fn.call(null, details) === false) {
|
|
8389
|
+
result = false;
|
|
8390
|
+
}
|
|
8391
|
+
}
|
|
8392
|
+
catch (e) {
|
|
8393
|
+
_throwInternal(core && core.logger, 1 , 64 , "Dependency " + message + " [#" + idx + "] failed: " + getExceptionName(e), { exception: dumpObj(e) }, true);
|
|
8394
|
+
}
|
|
8395
|
+
});
|
|
8396
|
+
return result;
|
|
8397
|
+
}
|
|
8337
8398
|
function _processDependencyListeners(listeners, core, ajaxData, xhr, input, init) {
|
|
8338
8399
|
var _a;
|
|
8339
8400
|
var initializersCount = listeners[_DYN_LENGTH$1 ];
|
|
@@ -8346,30 +8407,62 @@ function _processDependencyListeners(listeners, core, ajaxData, xhr, input, init
|
|
|
8346
8407
|
_a.traceId = ajaxData[_DYN_TRACE_ID ],
|
|
8347
8408
|
_a.spanId = ajaxData[_DYN_SPAN_ID ],
|
|
8348
8409
|
_a.traceFlags = ajaxData[_DYN_TRACE_FLAGS ],
|
|
8410
|
+
_a.context = ajaxData[_DYN_CONTEXT$1 ] || {},
|
|
8349
8411
|
_a);
|
|
8350
|
-
|
|
8351
|
-
var dependencyListener = listeners[i];
|
|
8352
|
-
if (dependencyListener && dependencyListener.fn) {
|
|
8353
|
-
try {
|
|
8354
|
-
dependencyListener.fn.call(null, details);
|
|
8355
|
-
}
|
|
8356
|
-
catch (e) {
|
|
8357
|
-
var core_1 = details[_DYN_CORE ];
|
|
8358
|
-
_throwInternal(core_1 && core_1.logger, 1 , 64 , "Dependency listener [#" + i + "] failed: " + getExceptionName(e), { exception: dumpObj(e) }, true);
|
|
8359
|
-
}
|
|
8360
|
-
}
|
|
8361
|
-
}
|
|
8412
|
+
_processDependencyContainer(core, listeners, details, "listener");
|
|
8362
8413
|
ajaxData[_DYN_TRACE_ID ] = details[_DYN_TRACE_ID0 ];
|
|
8363
8414
|
ajaxData[_DYN_SPAN_ID ] = details[_DYN_SPAN_ID1 ];
|
|
8364
8415
|
ajaxData[_DYN_TRACE_FLAGS ] = details[_DYN_TRACE_FLAGS ];
|
|
8416
|
+
ajaxData[_DYN_CONTEXT$1 ] = details[_DYN_CONTEXT$1 ];
|
|
8365
8417
|
}
|
|
8366
8418
|
}
|
|
8419
|
+
var BLOB_CORE = "*.blob.core.";
|
|
8367
8420
|
var DfltAjaxCorrelationHeaderExDomains = objDeepFreeze([
|
|
8368
|
-
"
|
|
8369
|
-
"
|
|
8370
|
-
"
|
|
8371
|
-
"
|
|
8421
|
+
BLOB_CORE + "windows.net",
|
|
8422
|
+
BLOB_CORE + "chinacloudapi.cn",
|
|
8423
|
+
BLOB_CORE + "cloudapi.de",
|
|
8424
|
+
BLOB_CORE + "usgovcloudapi.net"
|
|
8372
8425
|
]);
|
|
8426
|
+
var _internalExcludeEndpoints = [
|
|
8427
|
+
/https:\/\/[^\/]*(\.pipe\.aria|aria\.pipe|events\.data|collector\.azure)\.[^\/]+\/(OneCollector\/1|Collector\/3)\.0/i
|
|
8428
|
+
];
|
|
8429
|
+
function _getDefaultConfig() {
|
|
8430
|
+
var _a;
|
|
8431
|
+
var config = (_a = {},
|
|
8432
|
+
_a[_DYN_MAX_AJAX_CALLS_PER_V8 ] = 500,
|
|
8433
|
+
_a[_DYN_DISABLE_AJAX_TRACKIN11 ] = false,
|
|
8434
|
+
_a[_DYN_DISABLE_FETCH_TRACKI12 ] = false,
|
|
8435
|
+
_a[_DYN_EXCLUDE_REQUEST_FROM10 ] = undefined,
|
|
8436
|
+
_a.disableCorrelationHeaders = false,
|
|
8437
|
+
_a.distributedTracingMode = 1 ,
|
|
8438
|
+
_a.correlationHeaderExcludedDomains = DfltAjaxCorrelationHeaderExDomains,
|
|
8439
|
+
_a.correlationHeaderDomains = undefined,
|
|
8440
|
+
_a.correlationHeaderExcludePatterns = undefined,
|
|
8441
|
+
_a[_DYN_APP_ID ] = undefined,
|
|
8442
|
+
_a.enableCorsCorrelation = false,
|
|
8443
|
+
_a[_DYN_ENABLE_REQUEST_HEADE5 ] = false,
|
|
8444
|
+
_a[_DYN_ENABLE_RESPONSE_HEAD9 ] = false,
|
|
8445
|
+
_a[_DYN_ENABLE_AJAX_ERROR_ST6 ] = false,
|
|
8446
|
+
_a[_DYN_ENABLE_AJAX_PERF_TRA7 ] = false,
|
|
8447
|
+
_a.maxAjaxPerfLookupAttempts = 3,
|
|
8448
|
+
_a[_DYN_AJAX_PERF_LOOKUP_DEL16 ] = 25,
|
|
8449
|
+
_a.ignoreHeaders = [
|
|
8450
|
+
"Authorization",
|
|
8451
|
+
"X-API-Key",
|
|
8452
|
+
"WWW-Authenticate"
|
|
8453
|
+
],
|
|
8454
|
+
_a[_DYN_ADD_REQUEST_CONTEXT ] = undefined,
|
|
8455
|
+
_a.addIntEndpoints = true,
|
|
8456
|
+
_a);
|
|
8457
|
+
return config;
|
|
8458
|
+
}
|
|
8459
|
+
function _getEmptyConfig() {
|
|
8460
|
+
var emptyConfig = _getDefaultConfig();
|
|
8461
|
+
objForEachKey(emptyConfig, function (value) {
|
|
8462
|
+
emptyConfig[value] = undefined;
|
|
8463
|
+
});
|
|
8464
|
+
return emptyConfig;
|
|
8465
|
+
}
|
|
8373
8466
|
var AjaxMonitor = /** @class */ (function (_super) {
|
|
8374
8467
|
__extendsFn(AjaxMonitor, _super);
|
|
8375
8468
|
function AjaxMonitor() {
|
|
@@ -8396,8 +8489,9 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8396
8489
|
var _excludeRequestFromAutoTrackingPatterns;
|
|
8397
8490
|
var _addRequestContext;
|
|
8398
8491
|
var _evtNamespace;
|
|
8399
|
-
var
|
|
8492
|
+
var _dependencyHandlerId;
|
|
8400
8493
|
var _dependencyListeners;
|
|
8494
|
+
var _dependencyInitializers;
|
|
8401
8495
|
dynamicProto(AjaxMonitor, _this, function (_self, _base) {
|
|
8402
8496
|
var _addHook = _base._addHook;
|
|
8403
8497
|
_initDefaults();
|
|
@@ -8415,9 +8509,9 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8415
8509
|
_initDefaults();
|
|
8416
8510
|
};
|
|
8417
8511
|
_self.trackDependencyData = function (dependency, properties) {
|
|
8418
|
-
_self[
|
|
8512
|
+
_reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE ], null, dependency, properties);
|
|
8419
8513
|
};
|
|
8420
|
-
_self[
|
|
8514
|
+
_self[_DYN_INCLUDE_CORRELATION_2 ] = function (ajaxData, input, init, xhr) {
|
|
8421
8515
|
var currentWindowHost = _self["_currentWindowHost"] || _currentWindowHost;
|
|
8422
8516
|
_processDependencyListeners(_dependencyListeners, _self[_DYN_CORE ], ajaxData, xhr, input, init);
|
|
8423
8517
|
if (input) {
|
|
@@ -8487,7 +8581,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8487
8581
|
}
|
|
8488
8582
|
return undefined;
|
|
8489
8583
|
};
|
|
8490
|
-
_self[
|
|
8584
|
+
_self[_DYN_TRACK_DEPENDENCY_DAT3 ] = function (dependency, properties, systemProperties) {
|
|
8491
8585
|
if (_maxAjaxCallsPerView === -1 || _trackAjaxAttempts < _maxAjaxCallsPerView) {
|
|
8492
8586
|
if ((_config[_DYN_DISTRIBUTED_TRACING_4 ] === 2
|
|
8493
8587
|
|| _config[_DYN_DISTRIBUTED_TRACING_4 ] === 1 )
|
|
@@ -8506,22 +8600,10 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8506
8600
|
++_trackAjaxAttempts;
|
|
8507
8601
|
};
|
|
8508
8602
|
_self.addDependencyListener = function (dependencyListener) {
|
|
8509
|
-
|
|
8510
|
-
|
|
8511
|
-
|
|
8512
|
-
|
|
8513
|
-
_dependencyListeners.push(theInitializer);
|
|
8514
|
-
var handler = {
|
|
8515
|
-
remove: function () {
|
|
8516
|
-
arrForEach(_dependencyListeners, function (initializer, idx) {
|
|
8517
|
-
if (initializer.id === theInitializer.id) {
|
|
8518
|
-
_dependencyListeners.splice(idx, 1);
|
|
8519
|
-
return -1;
|
|
8520
|
-
}
|
|
8521
|
-
});
|
|
8522
|
-
}
|
|
8523
|
-
};
|
|
8524
|
-
return handler;
|
|
8603
|
+
return _addHandler(_dependencyListeners, _dependencyHandlerId++, dependencyListener);
|
|
8604
|
+
};
|
|
8605
|
+
_self.addDependencyInitializer = function (dependencyInitializer) {
|
|
8606
|
+
return _addHandler(_dependencyInitializers, _dependencyHandlerId++, dependencyInitializer);
|
|
8525
8607
|
};
|
|
8526
8608
|
function _initDefaults() {
|
|
8527
8609
|
var location = getLocation();
|
|
@@ -8545,13 +8627,14 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8545
8627
|
_excludeRequestFromAutoTrackingPatterns = null;
|
|
8546
8628
|
_addRequestContext = null;
|
|
8547
8629
|
_evtNamespace = null;
|
|
8548
|
-
|
|
8630
|
+
_dependencyHandlerId = 0;
|
|
8549
8631
|
_dependencyListeners = [];
|
|
8632
|
+
_dependencyInitializers = [];
|
|
8550
8633
|
}
|
|
8551
8634
|
function _populateDefaults(config) {
|
|
8552
8635
|
var ctx = createProcessTelemetryContext(null, config, _self[_DYN_CORE ]);
|
|
8553
|
-
_config =
|
|
8554
|
-
var defaultConfig =
|
|
8636
|
+
_config = _getEmptyConfig();
|
|
8637
|
+
var defaultConfig = _getDefaultConfig();
|
|
8555
8638
|
objForEachKey(defaultConfig, function (field, value) {
|
|
8556
8639
|
_config[field] = ctx.getConfig(AjaxMonitor.identifier, field, value);
|
|
8557
8640
|
});
|
|
@@ -8561,7 +8644,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8561
8644
|
_enableAjaxPerfTracking = _config[_DYN_ENABLE_AJAX_PERF_TRA7 ];
|
|
8562
8645
|
_maxAjaxCallsPerView = _config[_DYN_MAX_AJAX_CALLS_PER_V8 ];
|
|
8563
8646
|
_enableResponseHeaderTracking = _config[_DYN_ENABLE_RESPONSE_HEAD9 ];
|
|
8564
|
-
_excludeRequestFromAutoTrackingPatterns = _config[_DYN_EXCLUDE_REQUEST_FROM10 ];
|
|
8647
|
+
_excludeRequestFromAutoTrackingPatterns = [].concat(_config[_DYN_EXCLUDE_REQUEST_FROM10 ] || [], _config.addIntEndpoints !== false ? _internalExcludeEndpoints : []);
|
|
8565
8648
|
_addRequestContext = _config[_DYN_ADD_REQUEST_CONTEXT ];
|
|
8566
8649
|
_isUsingAIHeaders = distributedTracingMode === 0 || distributedTracingMode === 1 ;
|
|
8567
8650
|
_isUsingW3CHeaders = distributedTracingMode === 1 || distributedTracingMode === 2 ;
|
|
@@ -8580,7 +8663,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8580
8663
|
function _populateContext() {
|
|
8581
8664
|
var propExt = _self[_DYN_CORE ].getPlugin(PropertiesPluginIdentifier);
|
|
8582
8665
|
if (propExt) {
|
|
8583
|
-
_context = propExt.plugin
|
|
8666
|
+
_context = propExt.plugin[_DYN_CONTEXT$1 ];
|
|
8584
8667
|
}
|
|
8585
8668
|
}
|
|
8586
8669
|
function _canIncludeHeaders(header) {
|
|
@@ -8612,7 +8695,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8612
8695
|
!(isPolyfill && _xhrInitialized)) {
|
|
8613
8696
|
var ctx = callDetails.ctx();
|
|
8614
8697
|
fetchData = _createFetchRecord(input, init);
|
|
8615
|
-
var newInit = _self[
|
|
8698
|
+
var newInit = _self[_DYN_INCLUDE_CORRELATION_2 ](fetchData, input, init);
|
|
8616
8699
|
if (newInit !== init) {
|
|
8617
8700
|
callDetails.set(1, newInit);
|
|
8618
8701
|
}
|
|
@@ -8652,7 +8735,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8652
8735
|
}
|
|
8653
8736
|
}
|
|
8654
8737
|
},
|
|
8655
|
-
hkErr: _createErrorCallbackFunc(_self, 15 , "Failed to monitor Window.fetch
|
|
8738
|
+
hkErr: _createErrorCallbackFunc(_self, 15 , "Failed to monitor Window.fetch" + ERROR_POSTFIX)
|
|
8656
8739
|
}));
|
|
8657
8740
|
_fetchInitialized = true;
|
|
8658
8741
|
}
|
|
@@ -8687,7 +8770,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8687
8770
|
}
|
|
8688
8771
|
}
|
|
8689
8772
|
},
|
|
8690
|
-
hkErr: _createErrorCallbackFunc(_self, 15 ,
|
|
8773
|
+
hkErr: _createErrorCallbackFunc(_self, 15 , ERROR_HEADER + ".open" + ERROR_POSTFIX)
|
|
8691
8774
|
});
|
|
8692
8775
|
_hookProto(XMLHttpRequest, "send", {
|
|
8693
8776
|
ns: _evtNamespace,
|
|
@@ -8698,12 +8781,12 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8698
8781
|
if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState[_DYN_SEND_DONE ]) {
|
|
8699
8782
|
_createMarkId("xhr", ajaxData);
|
|
8700
8783
|
ajaxData[_DYN_REQUEST_SENT_TIME ] = dateTimeUtilsNow();
|
|
8701
|
-
_self[
|
|
8784
|
+
_self[_DYN_INCLUDE_CORRELATION_2 ](ajaxData, undefined, undefined, xhr);
|
|
8702
8785
|
ajaxData.xhrMonitoringState[_DYN_SEND_DONE ] = true;
|
|
8703
8786
|
}
|
|
8704
8787
|
}
|
|
8705
8788
|
},
|
|
8706
|
-
hkErr: _createErrorCallbackFunc(_self, 17 ,
|
|
8789
|
+
hkErr: _createErrorCallbackFunc(_self, 17 , ERROR_HEADER + ERROR_POSTFIX)
|
|
8707
8790
|
});
|
|
8708
8791
|
_hookProto(XMLHttpRequest, "abort", {
|
|
8709
8792
|
ns: _evtNamespace,
|
|
@@ -8717,7 +8800,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8717
8800
|
}
|
|
8718
8801
|
}
|
|
8719
8802
|
},
|
|
8720
|
-
hkErr: _createErrorCallbackFunc(_self, 13 ,
|
|
8803
|
+
hkErr: _createErrorCallbackFunc(_self, 13 , ERROR_HEADER + ".abort" + ERROR_POSTFIX)
|
|
8721
8804
|
});
|
|
8722
8805
|
_hookProto(XMLHttpRequest, "setRequestHeader", {
|
|
8723
8806
|
ns: _evtNamespace,
|
|
@@ -8729,7 +8812,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8729
8812
|
}
|
|
8730
8813
|
}
|
|
8731
8814
|
},
|
|
8732
|
-
hkErr: _createErrorCallbackFunc(_self, 71 ,
|
|
8815
|
+
hkErr: _createErrorCallbackFunc(_self, 71 , ERROR_HEADER + ".setRequestHeader" + ERROR_POSTFIX)
|
|
8733
8816
|
});
|
|
8734
8817
|
_xhrInitialized = true;
|
|
8735
8818
|
}
|
|
@@ -8824,7 +8907,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8824
8907
|
catch (e) {
|
|
8825
8908
|
var exceptionText = dumpObj(e);
|
|
8826
8909
|
if (!exceptionText || _indexOf(exceptionText[_DYN_TO_LOWER_CASE ](), "c00c023f") === -1) {
|
|
8827
|
-
_throwInternalCritical(_self, 16 ,
|
|
8910
|
+
_throwInternalCritical(_self, 16 , ERROR_HEADER + " 'readystatechange' event handler" + ERROR_POSTFIX, (_a = {},
|
|
8828
8911
|
_a[_DYN_AJAX_DIAGNOSTICS_MES17 ] = _getFailedAjaxDiagnosticsMessage(xhr),
|
|
8829
8912
|
_a.exception = exceptionText,
|
|
8830
8913
|
_a));
|
|
@@ -8853,7 +8936,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8853
8936
|
if (e) {
|
|
8854
8937
|
errorProps["exception"] = dumpObj(e);
|
|
8855
8938
|
}
|
|
8856
|
-
_throwInternalWarning(_self, 14 ,
|
|
8939
|
+
_throwInternalWarning(_self, 14 , FAILED_TO_CALCULATE_DURATION_ERROR + "ajax call" + ERROR_NOT_SENT, errorProps);
|
|
8857
8940
|
}
|
|
8858
8941
|
_findPerfResourceEntry("xmlhttprequest", ajaxData, function () {
|
|
8859
8942
|
try {
|
|
@@ -8893,13 +8976,14 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8893
8976
|
}
|
|
8894
8977
|
}
|
|
8895
8978
|
catch (e) {
|
|
8896
|
-
_throwInternalWarning(_self, 104 ,
|
|
8979
|
+
_throwInternalWarning(_self, 104 , CUSTOM_REQUEST_CONTEXT_ERROR);
|
|
8897
8980
|
}
|
|
8898
8981
|
if (dependency) {
|
|
8899
8982
|
if (properties !== undefined) {
|
|
8900
8983
|
dependency[STR_PROPERTIES ] = __assignFn(__assignFn({}, dependency.properties), properties);
|
|
8901
8984
|
}
|
|
8902
|
-
|
|
8985
|
+
var sysProperties = ajaxData[_DYN_GET_PART_APROPS ]();
|
|
8986
|
+
_reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE ], ajaxData, dependency, null, sysProperties);
|
|
8903
8987
|
}
|
|
8904
8988
|
else {
|
|
8905
8989
|
_reportXhrError(null, {
|
|
@@ -8932,7 +9016,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
8932
9016
|
}
|
|
8933
9017
|
}
|
|
8934
9018
|
catch (e) {
|
|
8935
|
-
_throwInternalWarning(_self, 18 ,
|
|
9019
|
+
_throwInternalWarning(_self, 18 , CORRELATION_HEADER_ERROR, (_a = {},
|
|
8936
9020
|
_a[_DYN_AJAX_DIAGNOSTICS_MES17 ] = _getFailedAjaxDiagnosticsMessage(xhr),
|
|
8937
9021
|
_a.exception = dumpObj(e),
|
|
8938
9022
|
_a));
|
|
@@ -9066,7 +9150,7 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
9066
9150
|
if (e) {
|
|
9067
9151
|
errorProps["exception"] = dumpObj(e);
|
|
9068
9152
|
}
|
|
9069
|
-
_throwInternalWarning(_self, msgId,
|
|
9153
|
+
_throwInternalWarning(_self, msgId, FAILED_TO_CALCULATE_DURATION_ERROR + "fetch call" + ERROR_NOT_SENT, errorProps);
|
|
9070
9154
|
}
|
|
9071
9155
|
ajaxData[_DYN_RESPONSE_FINISHED_TI14 ] = dateTimeUtilsNow();
|
|
9072
9156
|
ajaxData[_DYN_STATUS ] = status;
|
|
@@ -9079,13 +9163,14 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
9079
9163
|
}
|
|
9080
9164
|
}
|
|
9081
9165
|
catch (e) {
|
|
9082
|
-
_throwInternalWarning(_self, 104 ,
|
|
9166
|
+
_throwInternalWarning(_self, 104 , CUSTOM_REQUEST_CONTEXT_ERROR);
|
|
9083
9167
|
}
|
|
9084
9168
|
if (dependency) {
|
|
9085
9169
|
if (properties !== undefined) {
|
|
9086
9170
|
dependency[STR_PROPERTIES ] = __assignFn(__assignFn({}, dependency.properties), properties);
|
|
9087
9171
|
}
|
|
9088
|
-
|
|
9172
|
+
var sysProperties = ajaxData[_DYN_GET_PART_APROPS ]();
|
|
9173
|
+
_reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE ], ajaxData, dependency, null, sysProperties);
|
|
9089
9174
|
}
|
|
9090
9175
|
else {
|
|
9091
9176
|
_reportFetchError(14 , null, {
|
|
@@ -9104,56 +9189,43 @@ var AjaxMonitor = /** @class */ (function (_super) {
|
|
|
9104
9189
|
return correlationIdGetCorrelationContext(responseHeader);
|
|
9105
9190
|
}
|
|
9106
9191
|
catch (e) {
|
|
9107
|
-
_throwInternalWarning(_self, 18 ,
|
|
9192
|
+
_throwInternalWarning(_self, 18 , CORRELATION_HEADER_ERROR, {
|
|
9108
9193
|
fetchDiagnosticsMessage: _getFailedFetchDiagnosticsMessage(response),
|
|
9109
9194
|
exception: dumpObj(e)
|
|
9110
9195
|
});
|
|
9111
9196
|
}
|
|
9112
9197
|
}
|
|
9113
9198
|
}
|
|
9199
|
+
function _reportDependencyInternal(initializers, core, ajaxData, dependency, properties, systemProperties) {
|
|
9200
|
+
var _a;
|
|
9201
|
+
var result = true;
|
|
9202
|
+
var initializersCount = initializers[_DYN_LENGTH$1 ];
|
|
9203
|
+
if (initializersCount > 0) {
|
|
9204
|
+
var details = (_a = {
|
|
9205
|
+
item: dependency
|
|
9206
|
+
},
|
|
9207
|
+
_a[STR_PROPERTIES ] = properties,
|
|
9208
|
+
_a.sysProperties = systemProperties,
|
|
9209
|
+
_a.context = ajaxData ? ajaxData[_DYN_CONTEXT$1 ] : null,
|
|
9210
|
+
_a);
|
|
9211
|
+
result = _processDependencyContainer(core, initializers, details, "initializer");
|
|
9212
|
+
}
|
|
9213
|
+
if (result) {
|
|
9214
|
+
_self[_DYN_TRACK_DEPENDENCY_DAT3 ](dependency, properties, systemProperties);
|
|
9215
|
+
}
|
|
9216
|
+
}
|
|
9114
9217
|
});
|
|
9115
9218
|
return _this;
|
|
9116
9219
|
}
|
|
9117
|
-
AjaxMonitor.getDefaultConfig = function () {
|
|
9118
|
-
var _a;
|
|
9119
|
-
var config = (_a = {},
|
|
9120
|
-
_a[_DYN_MAX_AJAX_CALLS_PER_V8 ] = 500,
|
|
9121
|
-
_a[_DYN_DISABLE_AJAX_TRACKIN11 ] = false,
|
|
9122
|
-
_a[_DYN_DISABLE_FETCH_TRACKI12 ] = false,
|
|
9123
|
-
_a[_DYN_EXCLUDE_REQUEST_FROM10 ] = undefined,
|
|
9124
|
-
_a.disableCorrelationHeaders = false,
|
|
9125
|
-
_a.distributedTracingMode = 1 ,
|
|
9126
|
-
_a.correlationHeaderExcludedDomains = DfltAjaxCorrelationHeaderExDomains,
|
|
9127
|
-
_a.correlationHeaderDomains = undefined,
|
|
9128
|
-
_a.correlationHeaderExcludePatterns = undefined,
|
|
9129
|
-
_a[_DYN_APP_ID ] = undefined,
|
|
9130
|
-
_a.enableCorsCorrelation = false,
|
|
9131
|
-
_a[_DYN_ENABLE_REQUEST_HEADE5 ] = false,
|
|
9132
|
-
_a[_DYN_ENABLE_RESPONSE_HEAD9 ] = false,
|
|
9133
|
-
_a[_DYN_ENABLE_AJAX_ERROR_ST6 ] = false,
|
|
9134
|
-
_a[_DYN_ENABLE_AJAX_PERF_TRA7 ] = false,
|
|
9135
|
-
_a.maxAjaxPerfLookupAttempts = 3,
|
|
9136
|
-
_a[_DYN_AJAX_PERF_LOOKUP_DEL16 ] = 25,
|
|
9137
|
-
_a.ignoreHeaders = [
|
|
9138
|
-
"Authorization",
|
|
9139
|
-
"X-API-Key",
|
|
9140
|
-
"WWW-Authenticate"
|
|
9141
|
-
],
|
|
9142
|
-
_a[_DYN_ADD_REQUEST_CONTEXT ] = undefined,
|
|
9143
|
-
_a);
|
|
9144
|
-
return config;
|
|
9145
|
-
};
|
|
9146
|
-
AjaxMonitor.getEmptyConfig = function () {
|
|
9147
|
-
var emptyConfig = this[_DYN_GET_DEFAULT_CONFIG ]();
|
|
9148
|
-
objForEachKey(emptyConfig, function (value) {
|
|
9149
|
-
emptyConfig[value] = undefined;
|
|
9150
|
-
});
|
|
9151
|
-
return emptyConfig;
|
|
9152
|
-
};
|
|
9153
9220
|
AjaxMonitor.prototype.processTelemetry = function (item, itemCtx) {
|
|
9154
9221
|
this.processNext(item, itemCtx);
|
|
9155
9222
|
};
|
|
9223
|
+
AjaxMonitor.prototype.addDependencyInitializer = function (dependencyInitializer) {
|
|
9224
|
+
return null;
|
|
9225
|
+
};
|
|
9156
9226
|
AjaxMonitor.identifier = "AjaxDependencyPlugin";
|
|
9227
|
+
AjaxMonitor.getDefaultConfig = _getDefaultConfig;
|
|
9228
|
+
AjaxMonitor.getEmptyConfig = _getEmptyConfig;
|
|
9157
9229
|
return AjaxMonitor;
|
|
9158
9230
|
}(BaseTelemetryPlugin));
|
|
9159
9231
|
|
|
@@ -9947,7 +10019,8 @@ var Initialization = /** @class */ (function () {
|
|
|
9947
10019
|
]);
|
|
9948
10020
|
proxyFunctions(_self, _getCurrentDependencies, [
|
|
9949
10021
|
STR_TRACK_DEPENDENCY_DATA,
|
|
9950
|
-
"addDependencyListener"
|
|
10022
|
+
"addDependencyListener",
|
|
10023
|
+
"addDependencyInitializer"
|
|
9951
10024
|
]);
|
|
9952
10025
|
proxyFunctions(_self, _core, [
|
|
9953
10026
|
STR_ADD_TELEMETRY_INITIALIZER,
|
|
@@ -9983,7 +10056,9 @@ var Initialization = /** @class */ (function () {
|
|
|
9983
10056
|
}
|
|
9984
10057
|
});
|
|
9985
10058
|
}
|
|
9986
|
-
Initialization.
|
|
10059
|
+
Initialization.prototype.addDependencyInitializer = function (dependencyInitializer) {
|
|
10060
|
+
return null;
|
|
10061
|
+
};
|
|
9987
10062
|
return Initialization;
|
|
9988
10063
|
}());
|
|
9989
10064
|
(function () {
|