@microsoft/applicationinsights-dependencies-js 2.8.5-nightly.2206-02 → 2.8.5-nightly.2206-06
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-dependencies-js.integrity.json +9 -9
- package/browser/applicationinsights-dependencies-js.js +1127 -934
- package/browser/applicationinsights-dependencies-js.js.map +1 -1
- package/browser/applicationinsights-dependencies-js.min.js +2 -2
- package/browser/applicationinsights-dependencies-js.min.js.map +1 -1
- package/dist/applicationinsights-dependencies-js.api.json +159 -46
- package/dist/applicationinsights-dependencies-js.api.md +6 -1
- package/dist/applicationinsights-dependencies-js.d.ts +9 -3
- package/dist/applicationinsights-dependencies-js.js +1127 -934
- package/dist/applicationinsights-dependencies-js.js.map +1 -1
- package/dist/applicationinsights-dependencies-js.min.js +2 -2
- package/dist/applicationinsights-dependencies-js.min.js.map +1 -1
- package/dist/applicationinsights-dependencies-js.rollup.d.ts +9 -3
- package/dist-esm/DependencyListener.js +1 -1
- package/dist-esm/InternalConstants.js +14 -0
- package/dist-esm/InternalConstants.js.map +1 -0
- package/dist-esm/__DynamicConstants.js +64 -0
- package/dist-esm/__DynamicConstants.js.map +1 -0
- package/dist-esm/ajax.js +201 -189
- package/dist-esm/ajax.js.map +1 -1
- package/dist-esm/ajaxRecord.js +59 -54
- package/dist-esm/ajaxRecord.js.map +1 -1
- package/dist-esm/ajaxUtils.js +3 -2
- package/dist-esm/ajaxUtils.js.map +1 -1
- package/dist-esm/applicationinsights-dependencies-js.js +2 -2
- package/dist-esm/applicationinsights-dependencies-js.js.map +1 -1
- package/package.json +7 -4
- package/src/InternalConstants.ts +13 -0
- package/src/__DynamicConstants.ts +62 -0
- package/src/ajax.ts +39 -32
- package/src/ajaxRecord.ts +25 -24
- package/src/ajaxUtils.ts +6 -6
- package/src/applicationinsights-dependencies-js.ts +1 -1
- package/types/InternalConstants.d.ts +2 -0
- package/types/__DynamicConstants.d.ts +50 -0
- package/types/ajax.d.ts +6 -4
- package/types/ajaxRecord.d.ts +2 -1
- package/types/applicationinsights-dependencies-js.d.ts +1 -1
- package/types/tsdoc-metadata.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Dependencies Plugin, 2.8.5-nightly.2206-
|
|
2
|
+
* Application Insights JavaScript SDK - Dependencies Plugin, 2.8.5-nightly.2206-06
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -98,14 +98,307 @@
|
|
|
98
98
|
d[strShimPrototype] = b === null ? objCreateFn(b) : (__[strShimPrototype] = b[strShimPrototype], new __());
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
var
|
|
106
|
-
var
|
|
107
|
-
var
|
|
108
|
-
var
|
|
101
|
+
/*!
|
|
102
|
+
* Microsoft Dynamic Proto Utility, 1.1.6
|
|
103
|
+
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
104
|
+
*/
|
|
105
|
+
var Constructor = 'constructor';
|
|
106
|
+
var Prototype = 'prototype';
|
|
107
|
+
var strFunction = 'function';
|
|
108
|
+
var DynInstFuncTable = '_dynInstFuncs';
|
|
109
|
+
var DynProxyTag = '_isDynProxy';
|
|
110
|
+
var DynClassName = '_dynClass';
|
|
111
|
+
var DynClassNamePrefix = '_dynCls$';
|
|
112
|
+
var DynInstChkTag = '_dynInstChk';
|
|
113
|
+
var DynAllowInstChkTag = DynInstChkTag;
|
|
114
|
+
var DynProtoDefaultOptions = '_dfOpts';
|
|
115
|
+
var UnknownValue = '_unknown_';
|
|
116
|
+
var str__Proto$1 = "__proto__";
|
|
117
|
+
var DynProtoBaseProto = "_dyn" + str__Proto$1;
|
|
118
|
+
var DynProtoCurrent = "_dynInstProto";
|
|
119
|
+
var strUseBaseInst = 'useBaseInst';
|
|
120
|
+
var strSetInstFuncs = 'setInstFuncs';
|
|
121
|
+
var Obj = Object;
|
|
122
|
+
var _objGetPrototypeOf$1 = Obj["getPrototypeOf"];
|
|
123
|
+
var _objGetOwnProps = Obj["getOwnPropertyNames"];
|
|
124
|
+
var _dynamicNames = 0;
|
|
125
|
+
function _hasOwnProperty(obj, prop) {
|
|
126
|
+
return obj && Obj[Prototype].hasOwnProperty.call(obj, prop);
|
|
127
|
+
}
|
|
128
|
+
function _isObjectOrArrayPrototype(target) {
|
|
129
|
+
return target && (target === Obj[Prototype] || target === Array[Prototype]);
|
|
130
|
+
}
|
|
131
|
+
function _isObjectArrayOrFunctionPrototype(target) {
|
|
132
|
+
return _isObjectOrArrayPrototype(target) || target === Function[Prototype];
|
|
133
|
+
}
|
|
134
|
+
function _getObjProto$1(target) {
|
|
135
|
+
var newProto;
|
|
136
|
+
if (target) {
|
|
137
|
+
if (_objGetPrototypeOf$1) {
|
|
138
|
+
return _objGetPrototypeOf$1(target);
|
|
139
|
+
}
|
|
140
|
+
var curProto = target[str__Proto$1] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null);
|
|
141
|
+
newProto = target[DynProtoBaseProto] || curProto;
|
|
142
|
+
if (!_hasOwnProperty(target, DynProtoBaseProto)) {
|
|
143
|
+
delete target[DynProtoCurrent];
|
|
144
|
+
newProto = target[DynProtoBaseProto] = target[DynProtoCurrent] || target[DynProtoBaseProto];
|
|
145
|
+
target[DynProtoCurrent] = curProto;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return newProto;
|
|
149
|
+
}
|
|
150
|
+
function _forEachProp(target, func) {
|
|
151
|
+
var props = [];
|
|
152
|
+
if (_objGetOwnProps) {
|
|
153
|
+
props = _objGetOwnProps(target);
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
for (var name_1 in target) {
|
|
157
|
+
if (typeof name_1 === "string" && _hasOwnProperty(target, name_1)) {
|
|
158
|
+
props.push(name_1);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
if (props && props.length > 0) {
|
|
163
|
+
for (var lp = 0; lp < props.length; lp++) {
|
|
164
|
+
func(props[lp]);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
function _isDynamicCandidate(target, funcName, skipOwn) {
|
|
169
|
+
return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || _hasOwnProperty(target, funcName)));
|
|
170
|
+
}
|
|
171
|
+
function _throwTypeError(message) {
|
|
172
|
+
throw new TypeError("DynamicProto: " + message);
|
|
173
|
+
}
|
|
174
|
+
function _getInstanceFuncs(thisTarget) {
|
|
175
|
+
var instFuncs = {};
|
|
176
|
+
_forEachProp(thisTarget, function (name) {
|
|
177
|
+
if (!instFuncs[name] && _isDynamicCandidate(thisTarget, name, false)) {
|
|
178
|
+
instFuncs[name] = thisTarget[name];
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
return instFuncs;
|
|
182
|
+
}
|
|
183
|
+
function _hasVisited(values, value) {
|
|
184
|
+
for (var lp = values.length - 1; lp >= 0; lp--) {
|
|
185
|
+
if (values[lp] === value) {
|
|
186
|
+
return true;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
return false;
|
|
190
|
+
}
|
|
191
|
+
function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
|
|
192
|
+
function _instFuncProxy(target, funcHost, funcName) {
|
|
193
|
+
var theFunc = funcHost[funcName];
|
|
194
|
+
if (theFunc[DynProxyTag] && useBaseInst) {
|
|
195
|
+
var instFuncTable = target[DynInstFuncTable] || {};
|
|
196
|
+
if (instFuncTable[DynAllowInstChkTag] !== false) {
|
|
197
|
+
theFunc = (instFuncTable[funcHost[DynClassName]] || {})[funcName] || theFunc;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
return function () {
|
|
201
|
+
return theFunc.apply(target, arguments);
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
var baseFuncs = {};
|
|
205
|
+
_forEachProp(instFuncs, function (name) {
|
|
206
|
+
baseFuncs[name] = _instFuncProxy(thisTarget, instFuncs, name);
|
|
207
|
+
});
|
|
208
|
+
var baseProto = _getObjProto$1(classProto);
|
|
209
|
+
var visited = [];
|
|
210
|
+
while (baseProto && !_isObjectArrayOrFunctionPrototype(baseProto) && !_hasVisited(visited, baseProto)) {
|
|
211
|
+
_forEachProp(baseProto, function (name) {
|
|
212
|
+
if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf$1)) {
|
|
213
|
+
baseFuncs[name] = _instFuncProxy(thisTarget, baseProto, name);
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
visited.push(baseProto);
|
|
217
|
+
baseProto = _getObjProto$1(baseProto);
|
|
218
|
+
}
|
|
219
|
+
return baseFuncs;
|
|
220
|
+
}
|
|
221
|
+
function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
|
|
222
|
+
var instFunc = null;
|
|
223
|
+
if (target && _hasOwnProperty(proto, DynClassName)) {
|
|
224
|
+
var instFuncTable = target[DynInstFuncTable] || {};
|
|
225
|
+
instFunc = (instFuncTable[proto[DynClassName]] || {})[funcName];
|
|
226
|
+
if (!instFunc) {
|
|
227
|
+
_throwTypeError("Missing [" + funcName + "] " + strFunction);
|
|
228
|
+
}
|
|
229
|
+
if (!instFunc[DynInstChkTag] && instFuncTable[DynAllowInstChkTag] !== false) {
|
|
230
|
+
var canAddInst = !_hasOwnProperty(target, funcName);
|
|
231
|
+
var objProto = _getObjProto$1(target);
|
|
232
|
+
var visited = [];
|
|
233
|
+
while (canAddInst && objProto && !_isObjectArrayOrFunctionPrototype(objProto) && !_hasVisited(visited, objProto)) {
|
|
234
|
+
var protoFunc = objProto[funcName];
|
|
235
|
+
if (protoFunc) {
|
|
236
|
+
canAddInst = (protoFunc === currentDynProtoProxy);
|
|
237
|
+
break;
|
|
238
|
+
}
|
|
239
|
+
visited.push(objProto);
|
|
240
|
+
objProto = _getObjProto$1(objProto);
|
|
241
|
+
}
|
|
242
|
+
try {
|
|
243
|
+
if (canAddInst) {
|
|
244
|
+
target[funcName] = instFunc;
|
|
245
|
+
}
|
|
246
|
+
instFunc[DynInstChkTag] = 1;
|
|
247
|
+
}
|
|
248
|
+
catch (e) {
|
|
249
|
+
instFuncTable[DynAllowInstChkTag] = false;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return instFunc;
|
|
254
|
+
}
|
|
255
|
+
function _getProtoFunc(funcName, proto, currentDynProtoProxy) {
|
|
256
|
+
var protoFunc = proto[funcName];
|
|
257
|
+
if (protoFunc === currentDynProtoProxy) {
|
|
258
|
+
protoFunc = _getObjProto$1(proto)[funcName];
|
|
259
|
+
}
|
|
260
|
+
if (typeof protoFunc !== strFunction) {
|
|
261
|
+
_throwTypeError("[" + funcName + "] is not a " + strFunction);
|
|
262
|
+
}
|
|
263
|
+
return protoFunc;
|
|
264
|
+
}
|
|
265
|
+
function _populatePrototype(proto, className, target, baseInstFuncs, setInstanceFunc) {
|
|
266
|
+
function _createDynamicPrototype(proto, funcName) {
|
|
267
|
+
var dynProtoProxy = function () {
|
|
268
|
+
var instFunc = _getInstFunc(this, funcName, proto, dynProtoProxy) || _getProtoFunc(funcName, proto, dynProtoProxy);
|
|
269
|
+
return instFunc.apply(this, arguments);
|
|
270
|
+
};
|
|
271
|
+
dynProtoProxy[DynProxyTag] = 1;
|
|
272
|
+
return dynProtoProxy;
|
|
273
|
+
}
|
|
274
|
+
if (!_isObjectOrArrayPrototype(proto)) {
|
|
275
|
+
var instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || {};
|
|
276
|
+
var instFuncs_1 = instFuncTable[className] = (instFuncTable[className] || {});
|
|
277
|
+
if (instFuncTable[DynAllowInstChkTag] !== false) {
|
|
278
|
+
instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc;
|
|
279
|
+
}
|
|
280
|
+
_forEachProp(target, function (name) {
|
|
281
|
+
if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name]) {
|
|
282
|
+
instFuncs_1[name] = target[name];
|
|
283
|
+
delete target[name];
|
|
284
|
+
if (!_hasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) {
|
|
285
|
+
proto[name] = _createDynamicPrototype(proto, name);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
function _checkPrototype(classProto, thisTarget) {
|
|
292
|
+
if (_objGetPrototypeOf$1) {
|
|
293
|
+
var visited = [];
|
|
294
|
+
var thisProto = _getObjProto$1(thisTarget);
|
|
295
|
+
while (thisProto && !_isObjectArrayOrFunctionPrototype(thisProto) && !_hasVisited(visited, thisProto)) {
|
|
296
|
+
if (thisProto === classProto) {
|
|
297
|
+
return true;
|
|
298
|
+
}
|
|
299
|
+
visited.push(thisProto);
|
|
300
|
+
thisProto = _getObjProto$1(thisProto);
|
|
301
|
+
}
|
|
302
|
+
return false;
|
|
303
|
+
}
|
|
304
|
+
return true;
|
|
305
|
+
}
|
|
306
|
+
function _getObjName(target, unknownValue) {
|
|
307
|
+
if (_hasOwnProperty(target, Prototype)) {
|
|
308
|
+
return target.name || unknownValue || UnknownValue;
|
|
309
|
+
}
|
|
310
|
+
return (((target || {})[Constructor]) || {}).name || unknownValue || UnknownValue;
|
|
311
|
+
}
|
|
312
|
+
function dynamicProto(theClass, target, delegateFunc, options) {
|
|
313
|
+
if (!_hasOwnProperty(theClass, Prototype)) {
|
|
314
|
+
_throwTypeError("theClass is an invalid class definition.");
|
|
315
|
+
}
|
|
316
|
+
var classProto = theClass[Prototype];
|
|
317
|
+
if (!_checkPrototype(classProto, target)) {
|
|
318
|
+
_throwTypeError("[" + _getObjName(theClass) + "] is not in class hierarchy of [" + _getObjName(target) + "]");
|
|
319
|
+
}
|
|
320
|
+
var className = null;
|
|
321
|
+
if (_hasOwnProperty(classProto, DynClassName)) {
|
|
322
|
+
className = classProto[DynClassName];
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
className = DynClassNamePrefix + _getObjName(theClass, "_") + "$" + _dynamicNames;
|
|
326
|
+
_dynamicNames++;
|
|
327
|
+
classProto[DynClassName] = className;
|
|
328
|
+
}
|
|
329
|
+
var perfOptions = dynamicProto[DynProtoDefaultOptions];
|
|
330
|
+
var useBaseInst = !!perfOptions[strUseBaseInst];
|
|
331
|
+
if (useBaseInst && options && options[strUseBaseInst] !== undefined) {
|
|
332
|
+
useBaseInst = !!options[strUseBaseInst];
|
|
333
|
+
}
|
|
334
|
+
var instFuncs = _getInstanceFuncs(target);
|
|
335
|
+
var baseFuncs = _getBaseFuncs(classProto, target, instFuncs, useBaseInst);
|
|
336
|
+
delegateFunc(target, baseFuncs);
|
|
337
|
+
var setInstanceFunc = !!_objGetPrototypeOf$1 && !!perfOptions[strSetInstFuncs];
|
|
338
|
+
if (setInstanceFunc && options) {
|
|
339
|
+
setInstanceFunc = !!options[strSetInstFuncs];
|
|
340
|
+
}
|
|
341
|
+
_populatePrototype(classProto, className, target, instFuncs, setInstanceFunc !== false);
|
|
342
|
+
}
|
|
343
|
+
var perfDefaults = {
|
|
344
|
+
setInstFuncs: true,
|
|
345
|
+
useBaseInst: true
|
|
346
|
+
};
|
|
347
|
+
dynamicProto[DynProtoDefaultOptions] = perfDefaults;
|
|
348
|
+
|
|
349
|
+
var _DYN_INITIALIZE = "initialize";
|
|
350
|
+
var _DYN_NAME$2 = "name";
|
|
351
|
+
var _DYN_IDENTIFIER = "identifier";
|
|
352
|
+
var _DYN_PUSH = "push";
|
|
353
|
+
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
354
|
+
var _DYN_CONFIG = "config";
|
|
355
|
+
var _DYN_LOGGER = "logger";
|
|
356
|
+
var _DYN_LENGTH$2 = "length";
|
|
357
|
+
var _DYN_TIME = "time";
|
|
358
|
+
var _DYN_PROCESS_NEXT = "processNext";
|
|
359
|
+
var _DYN_GET_PROCESS_TEL_CONT0 = "getProcessTelContext";
|
|
360
|
+
var _DYN_GET_PLUGIN = "getPlugin";
|
|
361
|
+
var _DYN_SPLICE = "splice";
|
|
362
|
+
var _DYN_TEARDOWN = "teardown";
|
|
363
|
+
var _DYN_MESSAGE_ID = "messageId";
|
|
364
|
+
var _DYN_MESSAGE = "message";
|
|
365
|
+
var _DYN_IS_ASYNC = "isAsync";
|
|
366
|
+
var _DYN__DO_TEARDOWN = "_doTeardown";
|
|
367
|
+
var _DYN_UPDATE = "update";
|
|
368
|
+
var _DYN_GET_NEXT = "getNext";
|
|
369
|
+
var _DYN_DIAG_LOG = "diagLog";
|
|
370
|
+
var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
|
|
371
|
+
var _DYN_CREATE_NEW = "createNew";
|
|
372
|
+
var _DYN_INDEX_OF$1 = "indexOf";
|
|
373
|
+
var _DYN_USER_AGENT = "userAgent";
|
|
374
|
+
var _DYN_SPLIT$1 = "split";
|
|
375
|
+
var _DYN_REPLACE = "replace";
|
|
376
|
+
var _DYN_SUBSTR = "substr";
|
|
377
|
+
var _DYN_NODE_TYPE = "nodeType";
|
|
378
|
+
var _DYN_APPLY = "apply";
|
|
379
|
+
var _DYN_ENABLE_DEBUG_EXCEPTI4 = "enableDebugExceptions";
|
|
380
|
+
var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
|
|
381
|
+
var _DYN_TO_LOWER_CASE$2 = "toLowerCase";
|
|
382
|
+
var _DYN_CALL = "call";
|
|
383
|
+
var _DYN_TYPE = "type";
|
|
384
|
+
var _DYN_HANDLER = "handler";
|
|
385
|
+
var _DYN_IS_CHILD_EVT = "isChildEvt";
|
|
386
|
+
var _DYN_GET_CTX = "getCtx";
|
|
387
|
+
var _DYN_SET_CTX = "setCtx";
|
|
388
|
+
var _DYN_COMPLETE = "complete";
|
|
389
|
+
var _DYN_TRACE_ID$1 = "traceId";
|
|
390
|
+
var _DYN_TRACE_FLAGS$1 = "traceFlags";
|
|
391
|
+
var _DYN_VERSION = "version";
|
|
392
|
+
|
|
393
|
+
var STR_EMPTY = "";
|
|
394
|
+
var STR_CORE = "core";
|
|
395
|
+
var STR_DISABLED = "disabled";
|
|
396
|
+
var STR_EXTENSION_CONFIG = "extensionConfig";
|
|
397
|
+
var STR_PROCESS_TELEMETRY = "processTelemetry";
|
|
398
|
+
var STR_PRIORITY = "priority";
|
|
399
|
+
var STR_ERROR_TO_CONSOLE = "errorToConsole";
|
|
400
|
+
var STR_WARN_TO_CONSOLE = "warnToConsole";
|
|
401
|
+
var STR_GET_PERF_MGR = "getPerfMgr";
|
|
109
402
|
|
|
110
403
|
var strToISOString = "toISOString";
|
|
111
404
|
var cStrEndsWith = "endsWith";
|
|
@@ -113,7 +406,7 @@
|
|
|
113
406
|
var strIndexOf = "indexOf";
|
|
114
407
|
var cStrTrim = "trim";
|
|
115
408
|
var strToString = "toString";
|
|
116
|
-
var str__Proto
|
|
409
|
+
var str__Proto = "__proto__";
|
|
117
410
|
var strConstructor = "constructor";
|
|
118
411
|
var _objDefineProperty$1 = ObjDefineProperty;
|
|
119
412
|
var _objFreeze = ObjClass.freeze;
|
|
@@ -128,17 +421,17 @@
|
|
|
128
421
|
var _isArray = Array.isArray;
|
|
129
422
|
var _objToString = ObjProto[strToString];
|
|
130
423
|
var _fnToString = ObjHasOwnProperty[strToString];
|
|
131
|
-
var _objFunctionString = _fnToString
|
|
424
|
+
var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass);
|
|
132
425
|
var rCamelCase = /-([a-z])/g;
|
|
133
426
|
var rNormalizeInvalid = /([^\w\d_$])/g;
|
|
134
427
|
var rLeadingNumeric = /^(\d+[\w\d_$])/;
|
|
135
|
-
var _objGetPrototypeOf
|
|
136
|
-
function _getObjProto
|
|
428
|
+
var _objGetPrototypeOf = Object["getPrototypeOf"];
|
|
429
|
+
function _getObjProto(target) {
|
|
137
430
|
if (target) {
|
|
138
|
-
if (_objGetPrototypeOf
|
|
139
|
-
return _objGetPrototypeOf
|
|
431
|
+
if (_objGetPrototypeOf) {
|
|
432
|
+
return _objGetPrototypeOf(target);
|
|
140
433
|
}
|
|
141
|
-
var newProto = target[str__Proto
|
|
434
|
+
var newProto = target[str__Proto] || target[strShimPrototype] || target[strConstructor];
|
|
142
435
|
if (newProto) {
|
|
143
436
|
return newProto;
|
|
144
437
|
}
|
|
@@ -152,7 +445,7 @@
|
|
|
152
445
|
return (value === null || isUndefined(value));
|
|
153
446
|
}
|
|
154
447
|
function hasOwnProperty(obj, prop) {
|
|
155
|
-
return !!(obj && ObjHasOwnProperty
|
|
448
|
+
return !!(obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop));
|
|
156
449
|
}
|
|
157
450
|
function isObject(value) {
|
|
158
451
|
return !!(value && typeof value === strShimObject);
|
|
@@ -163,11 +456,11 @@
|
|
|
163
456
|
function normalizeJsName(name) {
|
|
164
457
|
var value = name;
|
|
165
458
|
if (value && isString(value)) {
|
|
166
|
-
value = value
|
|
459
|
+
value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
|
|
167
460
|
return letter.toUpperCase();
|
|
168
461
|
});
|
|
169
|
-
value = value
|
|
170
|
-
value = value
|
|
462
|
+
value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
|
|
463
|
+
value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
|
|
171
464
|
return "_" + match;
|
|
172
465
|
});
|
|
173
466
|
}
|
|
@@ -176,24 +469,24 @@
|
|
|
176
469
|
function objForEachKey(target, callbackfn) {
|
|
177
470
|
if (target) {
|
|
178
471
|
for (var prop in target) {
|
|
179
|
-
if (ObjHasOwnProperty
|
|
180
|
-
callbackfn
|
|
472
|
+
if (ObjHasOwnProperty[_DYN_CALL ](target, prop)) {
|
|
473
|
+
callbackfn[_DYN_CALL ](target, prop, target[prop]);
|
|
181
474
|
}
|
|
182
475
|
}
|
|
183
476
|
}
|
|
184
477
|
}
|
|
185
478
|
function strContains(value, search) {
|
|
186
479
|
if (value && search) {
|
|
187
|
-
return value
|
|
480
|
+
return value[_DYN_INDEX_OF$1 ](search) !== -1;
|
|
188
481
|
}
|
|
189
482
|
return false;
|
|
190
483
|
}
|
|
191
484
|
var isArray = _isArray || _isArrayPoly;
|
|
192
485
|
function _isArrayPoly(obj) {
|
|
193
|
-
return !!(obj && _objToString
|
|
486
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Array]");
|
|
194
487
|
}
|
|
195
488
|
function isError(obj) {
|
|
196
|
-
return !!(obj && _objToString
|
|
489
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Error]");
|
|
197
490
|
}
|
|
198
491
|
function isString(value) {
|
|
199
492
|
return typeof value === "string";
|
|
@@ -207,15 +500,15 @@
|
|
|
207
500
|
function isPlainObject(value) {
|
|
208
501
|
var result = false;
|
|
209
502
|
if (value && typeof value === "object") {
|
|
210
|
-
var proto = _objGetPrototypeOf
|
|
503
|
+
var proto = _objGetPrototypeOf ? _objGetPrototypeOf(value) : _getObjProto(value);
|
|
211
504
|
if (!proto) {
|
|
212
505
|
result = true;
|
|
213
506
|
}
|
|
214
507
|
else {
|
|
215
|
-
if (proto[strConstructor] && ObjHasOwnProperty
|
|
508
|
+
if (proto[strConstructor] && ObjHasOwnProperty[_DYN_CALL ](proto, strConstructor)) {
|
|
216
509
|
proto = proto[strConstructor];
|
|
217
510
|
}
|
|
218
|
-
result = typeof proto === strShimFunction && _fnToString
|
|
511
|
+
result = typeof proto === strShimFunction && _fnToString[_DYN_CALL ](proto) === _objFunctionString;
|
|
219
512
|
}
|
|
220
513
|
}
|
|
221
514
|
return result;
|
|
@@ -229,7 +522,7 @@
|
|
|
229
522
|
if (date && date.getUTCFullYear) {
|
|
230
523
|
var pad = function (num) {
|
|
231
524
|
var r = String(num);
|
|
232
|
-
if (r
|
|
525
|
+
if (r[_DYN_LENGTH$2 ] === 1) {
|
|
233
526
|
r = "0" + r;
|
|
234
527
|
}
|
|
235
528
|
return r;
|
|
@@ -245,11 +538,11 @@
|
|
|
245
538
|
}
|
|
246
539
|
}
|
|
247
540
|
function arrForEach(arr, callbackfn, thisArg) {
|
|
248
|
-
var len = arr
|
|
541
|
+
var len = arr[_DYN_LENGTH$2 ];
|
|
249
542
|
try {
|
|
250
543
|
for (var idx = 0; idx < len; idx++) {
|
|
251
544
|
if (idx in arr) {
|
|
252
|
-
if (callbackfn
|
|
545
|
+
if (callbackfn[_DYN_CALL ](thisArg || arr, arr[idx], idx, arr) === -1) {
|
|
253
546
|
break;
|
|
254
547
|
}
|
|
255
548
|
}
|
|
@@ -263,7 +556,7 @@
|
|
|
263
556
|
if (arr[strIndexOf]) {
|
|
264
557
|
return arr[strIndexOf](searchElement, fromIndex);
|
|
265
558
|
}
|
|
266
|
-
var len = arr
|
|
559
|
+
var len = arr[_DYN_LENGTH$2 ];
|
|
267
560
|
var from = fromIndex || 0;
|
|
268
561
|
try {
|
|
269
562
|
for (var lp = Math.max(from >= 0 ? from : len - Math.abs(from), 0); lp < len; lp++) {
|
|
@@ -279,7 +572,7 @@
|
|
|
279
572
|
}
|
|
280
573
|
function strTrim(str) {
|
|
281
574
|
if (str) {
|
|
282
|
-
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str
|
|
575
|
+
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str[_DYN_REPLACE ] ? str[_DYN_REPLACE ](/^\s+|\s+$/g, STR_EMPTY) : str);
|
|
283
576
|
}
|
|
284
577
|
return str;
|
|
285
578
|
}
|
|
@@ -303,15 +596,15 @@
|
|
|
303
596
|
}
|
|
304
597
|
var result = [];
|
|
305
598
|
for (var prop in obj) {
|
|
306
|
-
if (obj && ObjHasOwnProperty
|
|
307
|
-
result
|
|
599
|
+
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop)) {
|
|
600
|
+
result[_DYN_PUSH ](prop);
|
|
308
601
|
}
|
|
309
602
|
}
|
|
310
603
|
if (_objKeysHasDontEnumBug) {
|
|
311
|
-
var dontEnumsLength = _objKeysDontEnums
|
|
604
|
+
var dontEnumsLength = _objKeysDontEnums[_DYN_LENGTH$2 ];
|
|
312
605
|
for (var lp = 0; lp < dontEnumsLength; lp++) {
|
|
313
|
-
if (obj && ObjHasOwnProperty
|
|
314
|
-
result
|
|
606
|
+
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, _objKeysDontEnums[lp])) {
|
|
607
|
+
result[_DYN_PUSH ](_objKeysDontEnums[lp]);
|
|
315
608
|
}
|
|
316
609
|
}
|
|
317
610
|
}
|
|
@@ -327,382 +620,137 @@
|
|
|
327
620
|
if (getProp) {
|
|
328
621
|
descriptor.get = getProp;
|
|
329
622
|
}
|
|
330
|
-
if (setProp) {
|
|
331
|
-
descriptor.set = setProp;
|
|
332
|
-
}
|
|
333
|
-
_objDefineProperty$1(target, prop, descriptor);
|
|
334
|
-
return true;
|
|
335
|
-
}
|
|
336
|
-
catch (e) {
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
return false;
|
|
340
|
-
}
|
|
341
|
-
function _doNothing(value) {
|
|
342
|
-
return value;
|
|
343
|
-
}
|
|
344
|
-
function deepFreeze(obj) {
|
|
345
|
-
if (_objFreeze) {
|
|
346
|
-
objForEachKey(obj, function (name, value) {
|
|
347
|
-
if (isArray(value) || isObject(value)) {
|
|
348
|
-
_objFreeze(value);
|
|
349
|
-
}
|
|
350
|
-
});
|
|
351
|
-
}
|
|
352
|
-
return objFreeze(obj);
|
|
353
|
-
}
|
|
354
|
-
var objFreeze = _objFreeze || _doNothing;
|
|
355
|
-
function dateNow() {
|
|
356
|
-
var dt = Date;
|
|
357
|
-
return dt.now ? dt.now() : new dt().getTime();
|
|
358
|
-
}
|
|
359
|
-
function getExceptionName(object) {
|
|
360
|
-
if (isError(object)) {
|
|
361
|
-
return object.name;
|
|
362
|
-
}
|
|
363
|
-
return strEmpty$1;
|
|
364
|
-
}
|
|
365
|
-
function setValue(target, field, value, valChk, srcChk) {
|
|
366
|
-
var theValue = value;
|
|
367
|
-
if (target) {
|
|
368
|
-
theValue = target[field];
|
|
369
|
-
if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
|
|
370
|
-
theValue = value;
|
|
371
|
-
target[field] = theValue;
|
|
372
|
-
}
|
|
373
|
-
}
|
|
374
|
-
return theValue;
|
|
375
|
-
}
|
|
376
|
-
function throwError(message) {
|
|
377
|
-
throw new Error(message);
|
|
378
|
-
}
|
|
379
|
-
function _createProxyFunction(source, funcName) {
|
|
380
|
-
var srcFunc = null;
|
|
381
|
-
var src = null;
|
|
382
|
-
if (isFunction(source)) {
|
|
383
|
-
srcFunc = source;
|
|
384
|
-
}
|
|
385
|
-
else {
|
|
386
|
-
src = source;
|
|
387
|
-
}
|
|
388
|
-
return function () {
|
|
389
|
-
var originalArguments = arguments;
|
|
390
|
-
if (srcFunc) {
|
|
391
|
-
src = srcFunc();
|
|
392
|
-
}
|
|
393
|
-
if (src) {
|
|
394
|
-
return src[funcName].apply(src, originalArguments);
|
|
395
|
-
}
|
|
396
|
-
};
|
|
397
|
-
}
|
|
398
|
-
function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
|
|
399
|
-
if (target && name && source) {
|
|
400
|
-
if (overwriteTarget !== false || isUndefined(target[name])) {
|
|
401
|
-
target[name] = _createProxyFunction(source, theFunc);
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
}
|
|
405
|
-
function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
|
|
406
|
-
var theArgs = arguments;
|
|
407
|
-
var extended = theArgs[0] || {};
|
|
408
|
-
var argLen = theArgs.length;
|
|
409
|
-
var deep = false;
|
|
410
|
-
var idx = 1;
|
|
411
|
-
if (argLen > 0 && isBoolean(extended)) {
|
|
412
|
-
deep = extended;
|
|
413
|
-
extended = theArgs[idx] || {};
|
|
414
|
-
idx++;
|
|
415
|
-
}
|
|
416
|
-
if (!isObject(extended)) {
|
|
417
|
-
extended = {};
|
|
418
|
-
}
|
|
419
|
-
for (; idx < argLen; idx++) {
|
|
420
|
-
var arg = theArgs[idx];
|
|
421
|
-
var isArgArray = isArray(arg);
|
|
422
|
-
var isArgObj = isObject(arg);
|
|
423
|
-
for (var prop in arg) {
|
|
424
|
-
var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty.call(arg, prop)));
|
|
425
|
-
if (!propOk) {
|
|
426
|
-
continue;
|
|
427
|
-
}
|
|
428
|
-
var newValue = arg[prop];
|
|
429
|
-
var isNewArray = void 0;
|
|
430
|
-
if (deep && newValue && ((isNewArray = isArray(newValue)) || isPlainObject(newValue))) {
|
|
431
|
-
var clone = extended[prop];
|
|
432
|
-
if (isNewArray) {
|
|
433
|
-
if (!isArray(clone)) {
|
|
434
|
-
clone = [];
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
else if (!isPlainObject(clone)) {
|
|
438
|
-
clone = {};
|
|
439
|
-
}
|
|
440
|
-
newValue = objExtend(deep, clone, newValue);
|
|
441
|
-
}
|
|
442
|
-
if (newValue !== undefined) {
|
|
443
|
-
extended[prop] = newValue;
|
|
444
|
-
}
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
return extended;
|
|
448
|
-
}
|
|
449
|
-
|
|
450
|
-
function createValueMap(values) {
|
|
451
|
-
var mapClass = {};
|
|
452
|
-
objForEachKey(values, function (field, value) {
|
|
453
|
-
mapClass[field] = value[1];
|
|
454
|
-
mapClass[value[0]] = value[1];
|
|
455
|
-
});
|
|
456
|
-
return deepFreeze(mapClass);
|
|
457
|
-
}
|
|
458
|
-
|
|
459
|
-
/*!
|
|
460
|
-
* Microsoft Dynamic Proto Utility, 1.1.6
|
|
461
|
-
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
462
|
-
*/
|
|
463
|
-
var Constructor = 'constructor';
|
|
464
|
-
var Prototype = 'prototype';
|
|
465
|
-
var strFunction = 'function';
|
|
466
|
-
var DynInstFuncTable = '_dynInstFuncs';
|
|
467
|
-
var DynProxyTag = '_isDynProxy';
|
|
468
|
-
var DynClassName = '_dynClass';
|
|
469
|
-
var DynClassNamePrefix = '_dynCls$';
|
|
470
|
-
var DynInstChkTag = '_dynInstChk';
|
|
471
|
-
var DynAllowInstChkTag = DynInstChkTag;
|
|
472
|
-
var DynProtoDefaultOptions = '_dfOpts';
|
|
473
|
-
var UnknownValue = '_unknown_';
|
|
474
|
-
var str__Proto = "__proto__";
|
|
475
|
-
var DynProtoBaseProto = "_dyn" + str__Proto;
|
|
476
|
-
var DynProtoCurrent = "_dynInstProto";
|
|
477
|
-
var strUseBaseInst = 'useBaseInst';
|
|
478
|
-
var strSetInstFuncs = 'setInstFuncs';
|
|
479
|
-
var Obj = Object;
|
|
480
|
-
var _objGetPrototypeOf = Obj["getPrototypeOf"];
|
|
481
|
-
var _objGetOwnProps = Obj["getOwnPropertyNames"];
|
|
482
|
-
var _dynamicNames = 0;
|
|
483
|
-
function _hasOwnProperty(obj, prop) {
|
|
484
|
-
return obj && Obj[Prototype].hasOwnProperty.call(obj, prop);
|
|
485
|
-
}
|
|
486
|
-
function _isObjectOrArrayPrototype(target) {
|
|
487
|
-
return target && (target === Obj[Prototype] || target === Array[Prototype]);
|
|
488
|
-
}
|
|
489
|
-
function _isObjectArrayOrFunctionPrototype(target) {
|
|
490
|
-
return _isObjectOrArrayPrototype(target) || target === Function[Prototype];
|
|
491
|
-
}
|
|
492
|
-
function _getObjProto(target) {
|
|
493
|
-
var newProto;
|
|
494
|
-
if (target) {
|
|
495
|
-
if (_objGetPrototypeOf) {
|
|
496
|
-
return _objGetPrototypeOf(target);
|
|
497
|
-
}
|
|
498
|
-
var curProto = target[str__Proto] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null);
|
|
499
|
-
newProto = target[DynProtoBaseProto] || curProto;
|
|
500
|
-
if (!_hasOwnProperty(target, DynProtoBaseProto)) {
|
|
501
|
-
delete target[DynProtoCurrent];
|
|
502
|
-
newProto = target[DynProtoBaseProto] = target[DynProtoCurrent] || target[DynProtoBaseProto];
|
|
503
|
-
target[DynProtoCurrent] = curProto;
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
return newProto;
|
|
507
|
-
}
|
|
508
|
-
function _forEachProp(target, func) {
|
|
509
|
-
var props = [];
|
|
510
|
-
if (_objGetOwnProps) {
|
|
511
|
-
props = _objGetOwnProps(target);
|
|
512
|
-
}
|
|
513
|
-
else {
|
|
514
|
-
for (var name_1 in target) {
|
|
515
|
-
if (typeof name_1 === "string" && _hasOwnProperty(target, name_1)) {
|
|
516
|
-
props.push(name_1);
|
|
517
|
-
}
|
|
518
|
-
}
|
|
519
|
-
}
|
|
520
|
-
if (props && props.length > 0) {
|
|
521
|
-
for (var lp = 0; lp < props.length; lp++) {
|
|
522
|
-
func(props[lp]);
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
}
|
|
526
|
-
function _isDynamicCandidate(target, funcName, skipOwn) {
|
|
527
|
-
return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || _hasOwnProperty(target, funcName)));
|
|
528
|
-
}
|
|
529
|
-
function _throwTypeError(message) {
|
|
530
|
-
throw new TypeError("DynamicProto: " + message);
|
|
531
|
-
}
|
|
532
|
-
function _getInstanceFuncs(thisTarget) {
|
|
533
|
-
var instFuncs = {};
|
|
534
|
-
_forEachProp(thisTarget, function (name) {
|
|
535
|
-
if (!instFuncs[name] && _isDynamicCandidate(thisTarget, name, false)) {
|
|
536
|
-
instFuncs[name] = thisTarget[name];
|
|
537
|
-
}
|
|
538
|
-
});
|
|
539
|
-
return instFuncs;
|
|
540
|
-
}
|
|
541
|
-
function _hasVisited(values, value) {
|
|
542
|
-
for (var lp = values.length - 1; lp >= 0; lp--) {
|
|
543
|
-
if (values[lp] === value) {
|
|
544
|
-
return true;
|
|
545
|
-
}
|
|
546
|
-
}
|
|
547
|
-
return false;
|
|
548
|
-
}
|
|
549
|
-
function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
|
|
550
|
-
function _instFuncProxy(target, funcHost, funcName) {
|
|
551
|
-
var theFunc = funcHost[funcName];
|
|
552
|
-
if (theFunc[DynProxyTag] && useBaseInst) {
|
|
553
|
-
var instFuncTable = target[DynInstFuncTable] || {};
|
|
554
|
-
if (instFuncTable[DynAllowInstChkTag] !== false) {
|
|
555
|
-
theFunc = (instFuncTable[funcHost[DynClassName]] || {})[funcName] || theFunc;
|
|
556
|
-
}
|
|
557
|
-
}
|
|
558
|
-
return function () {
|
|
559
|
-
return theFunc.apply(target, arguments);
|
|
560
|
-
};
|
|
561
|
-
}
|
|
562
|
-
var baseFuncs = {};
|
|
563
|
-
_forEachProp(instFuncs, function (name) {
|
|
564
|
-
baseFuncs[name] = _instFuncProxy(thisTarget, instFuncs, name);
|
|
565
|
-
});
|
|
566
|
-
var baseProto = _getObjProto(classProto);
|
|
567
|
-
var visited = [];
|
|
568
|
-
while (baseProto && !_isObjectArrayOrFunctionPrototype(baseProto) && !_hasVisited(visited, baseProto)) {
|
|
569
|
-
_forEachProp(baseProto, function (name) {
|
|
570
|
-
if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf)) {
|
|
571
|
-
baseFuncs[name] = _instFuncProxy(thisTarget, baseProto, name);
|
|
572
|
-
}
|
|
573
|
-
});
|
|
574
|
-
visited.push(baseProto);
|
|
575
|
-
baseProto = _getObjProto(baseProto);
|
|
576
|
-
}
|
|
577
|
-
return baseFuncs;
|
|
578
|
-
}
|
|
579
|
-
function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
|
|
580
|
-
var instFunc = null;
|
|
581
|
-
if (target && _hasOwnProperty(proto, DynClassName)) {
|
|
582
|
-
var instFuncTable = target[DynInstFuncTable] || {};
|
|
583
|
-
instFunc = (instFuncTable[proto[DynClassName]] || {})[funcName];
|
|
584
|
-
if (!instFunc) {
|
|
585
|
-
_throwTypeError("Missing [" + funcName + "] " + strFunction);
|
|
586
|
-
}
|
|
587
|
-
if (!instFunc[DynInstChkTag] && instFuncTable[DynAllowInstChkTag] !== false) {
|
|
588
|
-
var canAddInst = !_hasOwnProperty(target, funcName);
|
|
589
|
-
var objProto = _getObjProto(target);
|
|
590
|
-
var visited = [];
|
|
591
|
-
while (canAddInst && objProto && !_isObjectArrayOrFunctionPrototype(objProto) && !_hasVisited(visited, objProto)) {
|
|
592
|
-
var protoFunc = objProto[funcName];
|
|
593
|
-
if (protoFunc) {
|
|
594
|
-
canAddInst = (protoFunc === currentDynProtoProxy);
|
|
595
|
-
break;
|
|
596
|
-
}
|
|
597
|
-
visited.push(objProto);
|
|
598
|
-
objProto = _getObjProto(objProto);
|
|
599
|
-
}
|
|
600
|
-
try {
|
|
601
|
-
if (canAddInst) {
|
|
602
|
-
target[funcName] = instFunc;
|
|
603
|
-
}
|
|
604
|
-
instFunc[DynInstChkTag] = 1;
|
|
605
|
-
}
|
|
606
|
-
catch (e) {
|
|
607
|
-
instFuncTable[DynAllowInstChkTag] = false;
|
|
623
|
+
if (setProp) {
|
|
624
|
+
descriptor.set = setProp;
|
|
608
625
|
}
|
|
626
|
+
_objDefineProperty$1(target, prop, descriptor);
|
|
627
|
+
return true;
|
|
628
|
+
}
|
|
629
|
+
catch (e) {
|
|
609
630
|
}
|
|
610
631
|
}
|
|
611
|
-
return
|
|
632
|
+
return false;
|
|
612
633
|
}
|
|
613
|
-
function
|
|
614
|
-
|
|
615
|
-
if (protoFunc === currentDynProtoProxy) {
|
|
616
|
-
protoFunc = _getObjProto(proto)[funcName];
|
|
617
|
-
}
|
|
618
|
-
if (typeof protoFunc !== strFunction) {
|
|
619
|
-
_throwTypeError("[" + funcName + "] is not a " + strFunction);
|
|
620
|
-
}
|
|
621
|
-
return protoFunc;
|
|
634
|
+
function _doNothing(value) {
|
|
635
|
+
return value;
|
|
622
636
|
}
|
|
623
|
-
function
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
};
|
|
629
|
-
dynProtoProxy[DynProxyTag] = 1;
|
|
630
|
-
return dynProtoProxy;
|
|
631
|
-
}
|
|
632
|
-
if (!_isObjectOrArrayPrototype(proto)) {
|
|
633
|
-
var instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || {};
|
|
634
|
-
var instFuncs_1 = instFuncTable[className] = (instFuncTable[className] || {});
|
|
635
|
-
if (instFuncTable[DynAllowInstChkTag] !== false) {
|
|
636
|
-
instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc;
|
|
637
|
-
}
|
|
638
|
-
_forEachProp(target, function (name) {
|
|
639
|
-
if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name]) {
|
|
640
|
-
instFuncs_1[name] = target[name];
|
|
641
|
-
delete target[name];
|
|
642
|
-
if (!_hasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) {
|
|
643
|
-
proto[name] = _createDynamicPrototype(proto, name);
|
|
644
|
-
}
|
|
637
|
+
function deepFreeze(obj) {
|
|
638
|
+
if (_objFreeze) {
|
|
639
|
+
objForEachKey(obj, function (name, value) {
|
|
640
|
+
if (isArray(value) || isObject(value)) {
|
|
641
|
+
_objFreeze(value);
|
|
645
642
|
}
|
|
646
643
|
});
|
|
647
644
|
}
|
|
645
|
+
return objFreeze(obj);
|
|
648
646
|
}
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
visited.push(thisProto);
|
|
658
|
-
thisProto = _getObjProto(thisProto);
|
|
659
|
-
}
|
|
660
|
-
return false;
|
|
647
|
+
var objFreeze = _objFreeze || _doNothing;
|
|
648
|
+
function dateNow() {
|
|
649
|
+
var dt = Date;
|
|
650
|
+
return dt.now ? dt.now() : new dt().getTime();
|
|
651
|
+
}
|
|
652
|
+
function getExceptionName(object) {
|
|
653
|
+
if (isError(object)) {
|
|
654
|
+
return object[_DYN_NAME$2 ];
|
|
661
655
|
}
|
|
662
|
-
return
|
|
656
|
+
return STR_EMPTY;
|
|
663
657
|
}
|
|
664
|
-
function
|
|
665
|
-
|
|
666
|
-
|
|
658
|
+
function setValue(target, field, value, valChk, srcChk) {
|
|
659
|
+
var theValue = value;
|
|
660
|
+
if (target) {
|
|
661
|
+
theValue = target[field];
|
|
662
|
+
if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
|
|
663
|
+
theValue = value;
|
|
664
|
+
target[field] = theValue;
|
|
665
|
+
}
|
|
667
666
|
}
|
|
668
|
-
return
|
|
667
|
+
return theValue;
|
|
669
668
|
}
|
|
670
|
-
function
|
|
671
|
-
|
|
672
|
-
|
|
669
|
+
function getCfgValue(theValue, defaultValue) {
|
|
670
|
+
return !isNullOrUndefined(theValue) ? theValue : defaultValue;
|
|
671
|
+
}
|
|
672
|
+
function throwError(message) {
|
|
673
|
+
throw new Error(message);
|
|
674
|
+
}
|
|
675
|
+
function _createProxyFunction(source, funcName) {
|
|
676
|
+
var srcFunc = null;
|
|
677
|
+
var src = null;
|
|
678
|
+
if (isFunction(source)) {
|
|
679
|
+
srcFunc = source;
|
|
673
680
|
}
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
_throwTypeError("[" + _getObjName(theClass) + "] is not in class hierarchy of [" + _getObjName(target) + "]");
|
|
681
|
+
else {
|
|
682
|
+
src = source;
|
|
677
683
|
}
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
684
|
+
return function () {
|
|
685
|
+
var originalArguments = arguments;
|
|
686
|
+
if (srcFunc) {
|
|
687
|
+
src = srcFunc();
|
|
688
|
+
}
|
|
689
|
+
if (src) {
|
|
690
|
+
return src[funcName][_DYN_APPLY ](src, originalArguments);
|
|
691
|
+
}
|
|
692
|
+
};
|
|
693
|
+
}
|
|
694
|
+
function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
|
|
695
|
+
if (target && name && source) {
|
|
696
|
+
if (overwriteTarget !== false || isUndefined(target[name])) {
|
|
697
|
+
target[name] = _createProxyFunction(source, theFunc);
|
|
698
|
+
}
|
|
681
699
|
}
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
700
|
+
}
|
|
701
|
+
function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
|
|
702
|
+
var theArgs = arguments;
|
|
703
|
+
var extended = theArgs[0] || {};
|
|
704
|
+
var argLen = theArgs[_DYN_LENGTH$2 ];
|
|
705
|
+
var deep = false;
|
|
706
|
+
var idx = 1;
|
|
707
|
+
if (argLen > 0 && isBoolean(extended)) {
|
|
708
|
+
deep = extended;
|
|
709
|
+
extended = theArgs[idx] || {};
|
|
710
|
+
idx++;
|
|
686
711
|
}
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
if (useBaseInst && options && options[strUseBaseInst] !== undefined) {
|
|
690
|
-
useBaseInst = !!options[strUseBaseInst];
|
|
712
|
+
if (!isObject(extended)) {
|
|
713
|
+
extended = {};
|
|
691
714
|
}
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
715
|
+
for (; idx < argLen; idx++) {
|
|
716
|
+
var arg = theArgs[idx];
|
|
717
|
+
var isArgArray = isArray(arg);
|
|
718
|
+
var isArgObj = isObject(arg);
|
|
719
|
+
for (var prop in arg) {
|
|
720
|
+
var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty[_DYN_CALL ](arg, prop)));
|
|
721
|
+
if (!propOk) {
|
|
722
|
+
continue;
|
|
723
|
+
}
|
|
724
|
+
var newValue = arg[prop];
|
|
725
|
+
var isNewArray = void 0;
|
|
726
|
+
if (deep && newValue && ((isNewArray = isArray(newValue)) || isPlainObject(newValue))) {
|
|
727
|
+
var clone = extended[prop];
|
|
728
|
+
if (isNewArray) {
|
|
729
|
+
if (!isArray(clone)) {
|
|
730
|
+
clone = [];
|
|
731
|
+
}
|
|
732
|
+
}
|
|
733
|
+
else if (!isPlainObject(clone)) {
|
|
734
|
+
clone = {};
|
|
735
|
+
}
|
|
736
|
+
newValue = objExtend(deep, clone, newValue);
|
|
737
|
+
}
|
|
738
|
+
if (newValue !== undefined) {
|
|
739
|
+
extended[prop] = newValue;
|
|
740
|
+
}
|
|
741
|
+
}
|
|
698
742
|
}
|
|
699
|
-
|
|
743
|
+
return extended;
|
|
744
|
+
}
|
|
745
|
+
|
|
746
|
+
function createValueMap(values) {
|
|
747
|
+
var mapClass = {};
|
|
748
|
+
objForEachKey(values, function (field, value) {
|
|
749
|
+
mapClass[field] = value[1];
|
|
750
|
+
mapClass[value[0]] = value[1];
|
|
751
|
+
});
|
|
752
|
+
return deepFreeze(mapClass);
|
|
700
753
|
}
|
|
701
|
-
var perfDefaults = {
|
|
702
|
-
setInstFuncs: true,
|
|
703
|
-
useBaseInst: true
|
|
704
|
-
};
|
|
705
|
-
dynamicProto[DynProtoDefaultOptions] = perfDefaults;
|
|
706
754
|
|
|
707
755
|
var strWindow = "window";
|
|
708
756
|
var strDocument = "document";
|
|
@@ -789,9 +837,9 @@
|
|
|
789
837
|
}
|
|
790
838
|
function isIE() {
|
|
791
839
|
var nav = getNavigator();
|
|
792
|
-
if (nav && (nav
|
|
793
|
-
_navUserAgentCheck = nav
|
|
794
|
-
var userAgent = (_navUserAgentCheck ||
|
|
840
|
+
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
841
|
+
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
842
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE$2 ]();
|
|
795
843
|
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
796
844
|
}
|
|
797
845
|
return _isTrident;
|
|
@@ -800,15 +848,15 @@
|
|
|
800
848
|
if (userAgentStr === void 0) { userAgentStr = null; }
|
|
801
849
|
if (!userAgentStr) {
|
|
802
850
|
var navigator_1 = getNavigator() || {};
|
|
803
|
-
userAgentStr = navigator_1 ? (navigator_1
|
|
851
|
+
userAgentStr = navigator_1 ? (navigator_1[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE$2 ]() : STR_EMPTY;
|
|
804
852
|
}
|
|
805
|
-
var ua = (userAgentStr ||
|
|
853
|
+
var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE$2 ]();
|
|
806
854
|
if (strContains(ua, strMsie)) {
|
|
807
855
|
var doc = getDocument() || {};
|
|
808
|
-
return Math.max(parseInt(ua
|
|
856
|
+
return Math.max(parseInt(ua[_DYN_SPLIT$1 ](strMsie)[1]), (doc[strDocumentMode] || 0));
|
|
809
857
|
}
|
|
810
858
|
else if (strContains(ua, strTrident)) {
|
|
811
|
-
var tridentVer = parseInt(ua
|
|
859
|
+
var tridentVer = parseInt(ua[_DYN_SPLIT$1 ](strTrident)[1]);
|
|
812
860
|
if (tridentVer) {
|
|
813
861
|
return tridentVer + 4;
|
|
814
862
|
}
|
|
@@ -816,10 +864,10 @@
|
|
|
816
864
|
return null;
|
|
817
865
|
}
|
|
818
866
|
function dumpObj(object) {
|
|
819
|
-
var objectTypeDump = Object[strShimPrototype].toString
|
|
820
|
-
var propertyValueDump =
|
|
867
|
+
var objectTypeDump = Object[strShimPrototype].toString[_DYN_CALL ](object);
|
|
868
|
+
var propertyValueDump = STR_EMPTY;
|
|
821
869
|
if (objectTypeDump === "[object Error]") {
|
|
822
|
-
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object
|
|
870
|
+
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object[_DYN_NAME$2 ] + "'";
|
|
823
871
|
}
|
|
824
872
|
else if (hasJSON()) {
|
|
825
873
|
propertyValueDump = getJSON().stringify(object);
|
|
@@ -856,13 +904,11 @@
|
|
|
856
904
|
var AiNonUserActionablePrefix = "AI (Internal): ";
|
|
857
905
|
var AiUserActionablePrefix = "AI: ";
|
|
858
906
|
var AIInternalMessagePrefix = "AITR_";
|
|
859
|
-
var strErrorToConsole = "errorToConsole";
|
|
860
|
-
var strWarnToConsole = "warnToConsole";
|
|
861
907
|
function _sanitizeDiagnosticText(text) {
|
|
862
908
|
if (text) {
|
|
863
|
-
return "\"" + text
|
|
909
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
864
910
|
}
|
|
865
|
-
return
|
|
911
|
+
return STR_EMPTY;
|
|
866
912
|
}
|
|
867
913
|
function _logToConsole(func, message) {
|
|
868
914
|
var theConsole = getConsole();
|
|
@@ -880,23 +926,23 @@
|
|
|
880
926
|
function _InternalLogMessage(msgId, msg, isUserAct, properties) {
|
|
881
927
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
882
928
|
var _self = this;
|
|
883
|
-
_self
|
|
884
|
-
_self
|
|
929
|
+
_self[_DYN_MESSAGE_ID ] = msgId;
|
|
930
|
+
_self[_DYN_MESSAGE ] =
|
|
885
931
|
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
886
932
|
msgId;
|
|
887
|
-
var strProps =
|
|
933
|
+
var strProps = STR_EMPTY;
|
|
888
934
|
if (hasJSON()) {
|
|
889
935
|
strProps = getJSON().stringify(properties);
|
|
890
936
|
}
|
|
891
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) :
|
|
892
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) :
|
|
893
|
-
_self
|
|
937
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
938
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
939
|
+
_self[_DYN_MESSAGE ] += diagnosticText;
|
|
894
940
|
}
|
|
895
941
|
_InternalLogMessage.dataType = "MessageData";
|
|
896
942
|
return _InternalLogMessage;
|
|
897
943
|
}());
|
|
898
944
|
function safeGetLogger(core, config) {
|
|
899
|
-
return (core || {})
|
|
945
|
+
return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
|
|
900
946
|
}
|
|
901
947
|
var DiagnosticLogger = /** @class */ (function () {
|
|
902
948
|
function DiagnosticLogger(config) {
|
|
@@ -904,48 +950,49 @@
|
|
|
904
950
|
this.queue = [];
|
|
905
951
|
var _messageCount = 0;
|
|
906
952
|
var _messageLogged = {};
|
|
953
|
+
var _loggingLevelConsole;
|
|
954
|
+
var _loggingLevelTelemetry;
|
|
955
|
+
var _maxInternalMessageLimit;
|
|
956
|
+
var _enableDebugExceptions;
|
|
907
957
|
dynamicProto(DiagnosticLogger, this, function (_self) {
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
}
|
|
911
|
-
_self.
|
|
912
|
-
_self
|
|
913
|
-
_self.maxInternalMessageLimit = function () { return _getConfigValue("maxMessageLimit", 25); };
|
|
914
|
-
_self.enableDebugExceptions = function () { return _getConfigValue("enableDebugExceptions", false); };
|
|
958
|
+
_setDefaultsFromConfig(config || {});
|
|
959
|
+
_self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
|
|
960
|
+
_self.telemetryLoggingLevel = function () { return _loggingLevelTelemetry; };
|
|
961
|
+
_self.maxInternalMessageLimit = function () { return _maxInternalMessageLimit; };
|
|
962
|
+
_self[_DYN_ENABLE_DEBUG_EXCEPTI4 ] = function () { return _enableDebugExceptions; };
|
|
915
963
|
_self.throwInternal = function (severity, msgId, msg, properties, isUserAct) {
|
|
916
964
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
917
965
|
var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
|
|
918
|
-
if (
|
|
966
|
+
if (_enableDebugExceptions) {
|
|
919
967
|
throw dumpObj(message);
|
|
920
968
|
}
|
|
921
969
|
else {
|
|
922
|
-
var logFunc = severity === 1 ?
|
|
923
|
-
if (!isUndefined(message
|
|
924
|
-
var logLevel = _self.consoleLoggingLevel();
|
|
970
|
+
var logFunc = severity === 1 ? STR_ERROR_TO_CONSOLE : STR_WARN_TO_CONSOLE;
|
|
971
|
+
if (!isUndefined(message[_DYN_MESSAGE ])) {
|
|
925
972
|
if (isUserAct) {
|
|
926
|
-
var messageKey = +message
|
|
927
|
-
if (!_messageLogged[messageKey] &&
|
|
928
|
-
_self[logFunc](message
|
|
973
|
+
var messageKey = +message[_DYN_MESSAGE_ID ];
|
|
974
|
+
if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
|
|
975
|
+
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
929
976
|
_messageLogged[messageKey] = true;
|
|
930
977
|
}
|
|
931
978
|
}
|
|
932
979
|
else {
|
|
933
|
-
if (
|
|
934
|
-
_self[logFunc](message
|
|
980
|
+
if (_loggingLevelConsole >= severity) {
|
|
981
|
+
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
935
982
|
}
|
|
936
983
|
}
|
|
937
|
-
|
|
984
|
+
_logInternalMessage(severity, message);
|
|
938
985
|
}
|
|
939
986
|
else {
|
|
940
987
|
_debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
|
|
941
988
|
}
|
|
942
989
|
}
|
|
943
990
|
};
|
|
944
|
-
_self
|
|
991
|
+
_self[STR_WARN_TO_CONSOLE ] = function (message) {
|
|
945
992
|
_logToConsole("warn", message);
|
|
946
993
|
_debugExtMsg("warning", message);
|
|
947
994
|
};
|
|
948
|
-
_self
|
|
995
|
+
_self[STR_ERROR_TO_CONSOLE ] = function (message) {
|
|
949
996
|
_logToConsole("error", message);
|
|
950
997
|
_debugExtMsg("error", message);
|
|
951
998
|
};
|
|
@@ -953,12 +1000,13 @@
|
|
|
953
1000
|
_messageCount = 0;
|
|
954
1001
|
_messageLogged = {};
|
|
955
1002
|
};
|
|
956
|
-
_self
|
|
1003
|
+
_self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
|
|
1004
|
+
function _logInternalMessage(severity, message) {
|
|
957
1005
|
if (_areInternalMessagesThrottled()) {
|
|
958
1006
|
return;
|
|
959
1007
|
}
|
|
960
1008
|
var logMessage = true;
|
|
961
|
-
var messageKey = AIInternalMessagePrefix + message
|
|
1009
|
+
var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
|
|
962
1010
|
if (_messageLogged[messageKey]) {
|
|
963
1011
|
logMessage = false;
|
|
964
1012
|
}
|
|
@@ -966,58 +1014,63 @@
|
|
|
966
1014
|
_messageLogged[messageKey] = true;
|
|
967
1015
|
}
|
|
968
1016
|
if (logMessage) {
|
|
969
|
-
if (severity <=
|
|
970
|
-
_self.queue
|
|
1017
|
+
if (severity <= _loggingLevelTelemetry) {
|
|
1018
|
+
_self.queue[_DYN_PUSH ](message);
|
|
971
1019
|
_messageCount++;
|
|
972
1020
|
_debugExtMsg((severity === 1 ? "error" : "warn"), message);
|
|
973
1021
|
}
|
|
974
|
-
if (_messageCount ===
|
|
1022
|
+
if (_messageCount === _maxInternalMessageLimit) {
|
|
975
1023
|
var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
|
|
976
1024
|
var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
|
|
977
|
-
_self.queue
|
|
1025
|
+
_self.queue[_DYN_PUSH ](throttleMessage);
|
|
978
1026
|
if (severity === 1 ) {
|
|
979
|
-
_self
|
|
1027
|
+
_self[STR_ERROR_TO_CONSOLE ](throttleLimitMessage);
|
|
980
1028
|
}
|
|
981
1029
|
else {
|
|
982
|
-
_self
|
|
1030
|
+
_self[STR_WARN_TO_CONSOLE ](throttleLimitMessage);
|
|
983
1031
|
}
|
|
984
1032
|
}
|
|
985
1033
|
}
|
|
986
|
-
}
|
|
987
|
-
function
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
return defValue;
|
|
1034
|
+
}
|
|
1035
|
+
function _setDefaultsFromConfig(config) {
|
|
1036
|
+
_loggingLevelConsole = getCfgValue(config.loggingLevelConsole, 0);
|
|
1037
|
+
_loggingLevelTelemetry = getCfgValue(config.loggingLevelTelemetry, 1);
|
|
1038
|
+
_maxInternalMessageLimit = getCfgValue(config.maxMessageLimit, 25);
|
|
1039
|
+
_enableDebugExceptions = getCfgValue(config[_DYN_ENABLE_DEBUG_EXCEPTI4 ], false);
|
|
993
1040
|
}
|
|
994
1041
|
function _areInternalMessagesThrottled() {
|
|
995
|
-
return _messageCount >=
|
|
1042
|
+
return _messageCount >= _maxInternalMessageLimit;
|
|
996
1043
|
}
|
|
997
1044
|
function _debugExtMsg(name, data) {
|
|
998
|
-
var dbgExt = getDebugExt(config);
|
|
999
|
-
if (dbgExt && dbgExt
|
|
1000
|
-
dbgExt
|
|
1045
|
+
var dbgExt = getDebugExt(config || {});
|
|
1046
|
+
if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
|
|
1047
|
+
dbgExt[_DYN_DIAG_LOG ](name, data);
|
|
1001
1048
|
}
|
|
1002
1049
|
}
|
|
1003
1050
|
});
|
|
1004
1051
|
}
|
|
1052
|
+
DiagnosticLogger.__ieDyn=1;
|
|
1005
1053
|
return DiagnosticLogger;
|
|
1006
1054
|
}());
|
|
1055
|
+
function _getLogger(logger) {
|
|
1056
|
+
return (logger || new DiagnosticLogger());
|
|
1057
|
+
}
|
|
1007
1058
|
function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
|
|
1008
1059
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
1009
|
-
(logger
|
|
1060
|
+
_getLogger(logger).throwInternal(severity, msgId, msg, properties, isUserAct);
|
|
1010
1061
|
}
|
|
1011
1062
|
|
|
1012
1063
|
var strExecutionContextKey = "ctx";
|
|
1064
|
+
var strParentContextKey = "ParentContextKey";
|
|
1065
|
+
var strChildrenContextKey = "ChildrenContextKey";
|
|
1013
1066
|
var PerfEvent = /** @class */ (function () {
|
|
1014
1067
|
function PerfEvent(name, payloadDetails, isAsync) {
|
|
1015
1068
|
var _self = this;
|
|
1016
1069
|
var accessorDefined = false;
|
|
1017
1070
|
_self.start = dateNow();
|
|
1018
|
-
_self
|
|
1019
|
-
_self
|
|
1020
|
-
_self
|
|
1071
|
+
_self[_DYN_NAME$2 ] = name;
|
|
1072
|
+
_self[_DYN_IS_ASYNC ] = isAsync;
|
|
1073
|
+
_self[_DYN_IS_CHILD_EVT ] = function () { return false; };
|
|
1021
1074
|
if (isFunction(payloadDetails)) {
|
|
1022
1075
|
var theDetails_1;
|
|
1023
1076
|
accessorDefined = objDefineAccessors(_self, "payload", function () {
|
|
@@ -1028,24 +1081,24 @@
|
|
|
1028
1081
|
return theDetails_1;
|
|
1029
1082
|
});
|
|
1030
1083
|
}
|
|
1031
|
-
_self
|
|
1084
|
+
_self[_DYN_GET_CTX ] = function (key) {
|
|
1032
1085
|
if (key) {
|
|
1033
|
-
if (key === PerfEvent
|
|
1086
|
+
if (key === PerfEvent[strParentContextKey] || key === PerfEvent[strChildrenContextKey]) {
|
|
1034
1087
|
return _self[key];
|
|
1035
1088
|
}
|
|
1036
1089
|
return (_self[strExecutionContextKey] || {})[key];
|
|
1037
1090
|
}
|
|
1038
1091
|
return null;
|
|
1039
1092
|
};
|
|
1040
|
-
_self
|
|
1093
|
+
_self[_DYN_SET_CTX ] = function (key, value) {
|
|
1041
1094
|
if (key) {
|
|
1042
|
-
if (key === PerfEvent
|
|
1095
|
+
if (key === PerfEvent[strParentContextKey]) {
|
|
1043
1096
|
if (!_self[key]) {
|
|
1044
|
-
_self
|
|
1097
|
+
_self[_DYN_IS_CHILD_EVT ] = function () { return true; };
|
|
1045
1098
|
}
|
|
1046
1099
|
_self[key] = value;
|
|
1047
1100
|
}
|
|
1048
|
-
else if (key === PerfEvent
|
|
1101
|
+
else if (key === PerfEvent[strChildrenContextKey]) {
|
|
1049
1102
|
_self[key] = value;
|
|
1050
1103
|
}
|
|
1051
1104
|
else {
|
|
@@ -1054,20 +1107,20 @@
|
|
|
1054
1107
|
}
|
|
1055
1108
|
}
|
|
1056
1109
|
};
|
|
1057
|
-
_self
|
|
1110
|
+
_self[_DYN_COMPLETE ] = function () {
|
|
1058
1111
|
var childTime = 0;
|
|
1059
|
-
var childEvts = _self
|
|
1112
|
+
var childEvts = _self[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
1060
1113
|
if (isArray(childEvts)) {
|
|
1061
|
-
for (var lp = 0; lp < childEvts
|
|
1114
|
+
for (var lp = 0; lp < childEvts[_DYN_LENGTH$2 ]; lp++) {
|
|
1062
1115
|
var childEvt = childEvts[lp];
|
|
1063
1116
|
if (childEvt) {
|
|
1064
|
-
childTime += childEvt
|
|
1117
|
+
childTime += childEvt[_DYN_TIME ];
|
|
1065
1118
|
}
|
|
1066
1119
|
}
|
|
1067
1120
|
}
|
|
1068
|
-
_self
|
|
1069
|
-
_self.exTime = _self
|
|
1070
|
-
_self
|
|
1121
|
+
_self[_DYN_TIME ] = dateNow() - _self.start;
|
|
1122
|
+
_self.exTime = _self[_DYN_TIME ] - childTime;
|
|
1123
|
+
_self[_DYN_COMPLETE ] = function () { };
|
|
1071
1124
|
if (!accessorDefined && isFunction(payloadDetails)) {
|
|
1072
1125
|
_self.payload = payloadDetails();
|
|
1073
1126
|
}
|
|
@@ -1081,40 +1134,40 @@
|
|
|
1081
1134
|
function doPerf(mgrSource, getSource, func, details, isAsync) {
|
|
1082
1135
|
if (mgrSource) {
|
|
1083
1136
|
var perfMgr = mgrSource;
|
|
1084
|
-
if (
|
|
1085
|
-
perfMgr = perfMgr[
|
|
1137
|
+
if (perfMgr[STR_GET_PERF_MGR]) {
|
|
1138
|
+
perfMgr = perfMgr[STR_GET_PERF_MGR]();
|
|
1086
1139
|
}
|
|
1087
1140
|
if (perfMgr) {
|
|
1088
1141
|
var perfEvt = void 0;
|
|
1089
|
-
var currentActive = perfMgr
|
|
1142
|
+
var currentActive = perfMgr[_DYN_GET_CTX ](doPerfActiveKey);
|
|
1090
1143
|
try {
|
|
1091
1144
|
perfEvt = perfMgr.create(getSource(), details, isAsync);
|
|
1092
1145
|
if (perfEvt) {
|
|
1093
|
-
if (currentActive && perfEvt
|
|
1094
|
-
perfEvt
|
|
1095
|
-
if (currentActive
|
|
1096
|
-
var children = currentActive
|
|
1146
|
+
if (currentActive && perfEvt[_DYN_SET_CTX ]) {
|
|
1147
|
+
perfEvt[_DYN_SET_CTX ](PerfEvent[strParentContextKey], currentActive);
|
|
1148
|
+
if (currentActive[_DYN_GET_CTX ] && currentActive[_DYN_SET_CTX ]) {
|
|
1149
|
+
var children = currentActive[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
1097
1150
|
if (!children) {
|
|
1098
1151
|
children = [];
|
|
1099
|
-
currentActive
|
|
1152
|
+
currentActive[_DYN_SET_CTX ](PerfEvent[strChildrenContextKey], children);
|
|
1100
1153
|
}
|
|
1101
|
-
children
|
|
1154
|
+
children[_DYN_PUSH ](perfEvt);
|
|
1102
1155
|
}
|
|
1103
1156
|
}
|
|
1104
|
-
perfMgr
|
|
1157
|
+
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, perfEvt);
|
|
1105
1158
|
return func(perfEvt);
|
|
1106
1159
|
}
|
|
1107
1160
|
}
|
|
1108
1161
|
catch (ex) {
|
|
1109
|
-
if (perfEvt && perfEvt
|
|
1110
|
-
perfEvt
|
|
1162
|
+
if (perfEvt && perfEvt[_DYN_SET_CTX ]) {
|
|
1163
|
+
perfEvt[_DYN_SET_CTX ]("exception", ex);
|
|
1111
1164
|
}
|
|
1112
1165
|
}
|
|
1113
1166
|
finally {
|
|
1114
1167
|
if (perfEvt) {
|
|
1115
1168
|
perfMgr.fire(perfEvt);
|
|
1116
1169
|
}
|
|
1117
|
-
perfMgr
|
|
1170
|
+
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, currentActive);
|
|
1118
1171
|
}
|
|
1119
1172
|
}
|
|
1120
1173
|
}
|
|
@@ -1176,8 +1229,8 @@
|
|
|
1176
1229
|
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
1177
1230
|
var number = random32() >>> 0;
|
|
1178
1231
|
var chars = 0;
|
|
1179
|
-
var result =
|
|
1180
|
-
while (result
|
|
1232
|
+
var result = STR_EMPTY;
|
|
1233
|
+
while (result[_DYN_LENGTH$2 ] < maxLength) {
|
|
1181
1234
|
chars++;
|
|
1182
1235
|
result += base64chars.charAt(number & 0x3F);
|
|
1183
1236
|
number >>>= 6;
|
|
@@ -1190,7 +1243,7 @@
|
|
|
1190
1243
|
}
|
|
1191
1244
|
|
|
1192
1245
|
var _objDefineProperty = ObjDefineProperty;
|
|
1193
|
-
var version = "2.8.5-nightly.2206-
|
|
1246
|
+
var version = "2.8.5-nightly.2206-06";
|
|
1194
1247
|
var instanceName = "." + newId(6);
|
|
1195
1248
|
var _dataUid = 0;
|
|
1196
1249
|
function _createAccessor(target, prop, value) {
|
|
@@ -1209,7 +1262,7 @@
|
|
|
1209
1262
|
return false;
|
|
1210
1263
|
}
|
|
1211
1264
|
function _canAcceptData(target) {
|
|
1212
|
-
return target
|
|
1265
|
+
return target[_DYN_NODE_TYPE ] === 1 || target[_DYN_NODE_TYPE ] === 9 || !(+target[_DYN_NODE_TYPE ]);
|
|
1213
1266
|
}
|
|
1214
1267
|
function _getCache(data, target) {
|
|
1215
1268
|
var theCache = target[data.id];
|
|
@@ -1229,11 +1282,11 @@
|
|
|
1229
1282
|
}
|
|
1230
1283
|
function createUniqueNamespace(name, includeVersion) {
|
|
1231
1284
|
if (includeVersion === void 0) { includeVersion = false; }
|
|
1232
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version :
|
|
1285
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
1233
1286
|
}
|
|
1234
1287
|
function createElmNodeData(name) {
|
|
1235
1288
|
var data = {
|
|
1236
|
-
id: createUniqueNamespace("_aiData-" + (name ||
|
|
1289
|
+
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
1237
1290
|
accept: function (target) {
|
|
1238
1291
|
return _canAcceptData(target);
|
|
1239
1292
|
},
|
|
@@ -1273,16 +1326,17 @@
|
|
|
1273
1326
|
var elmNodeData = createElmNodeData("events");
|
|
1274
1327
|
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
1275
1328
|
function _normalizeNamespace(name) {
|
|
1276
|
-
if (name && name
|
|
1277
|
-
return name.replace(/^\s*\.*|\.*\s*$/g,
|
|
1329
|
+
if (name && name[_DYN_REPLACE ]) {
|
|
1330
|
+
return name.replace(/^\s*\.*|\.*\s*$/g, STR_EMPTY);
|
|
1278
1331
|
}
|
|
1279
1332
|
return name;
|
|
1280
1333
|
}
|
|
1281
1334
|
function _getEvtNamespace(eventName, evtNamespace) {
|
|
1335
|
+
var _a;
|
|
1282
1336
|
if (evtNamespace) {
|
|
1283
|
-
var theNamespace_1 =
|
|
1337
|
+
var theNamespace_1 = STR_EMPTY;
|
|
1284
1338
|
if (isArray(evtNamespace)) {
|
|
1285
|
-
theNamespace_1 =
|
|
1339
|
+
theNamespace_1 = STR_EMPTY;
|
|
1286
1340
|
arrForEach(evtNamespace, function (name) {
|
|
1287
1341
|
name = _normalizeNamespace(name);
|
|
1288
1342
|
if (name) {
|
|
@@ -1300,14 +1354,14 @@
|
|
|
1300
1354
|
if (theNamespace_1[0] !== ".") {
|
|
1301
1355
|
theNamespace_1 = "." + theNamespace_1;
|
|
1302
1356
|
}
|
|
1303
|
-
eventName = (eventName ||
|
|
1357
|
+
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
1304
1358
|
}
|
|
1305
1359
|
}
|
|
1306
|
-
var parsedEvent = (eventNamespace.exec(eventName ||
|
|
1307
|
-
return {
|
|
1308
|
-
|
|
1309
|
-
ns
|
|
1310
|
-
|
|
1360
|
+
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
1361
|
+
return _a = {},
|
|
1362
|
+
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
1363
|
+
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join("."),
|
|
1364
|
+
_a;
|
|
1311
1365
|
}
|
|
1312
1366
|
function _getRegisteredEvents(target, evtName, addDefault) {
|
|
1313
1367
|
if (addDefault === void 0) { addDefault = true; }
|
|
@@ -1320,13 +1374,13 @@
|
|
|
1320
1374
|
}
|
|
1321
1375
|
function _doAttach(obj, evtName, handlerRef, useCapture) {
|
|
1322
1376
|
var result = false;
|
|
1323
|
-
if (obj && evtName && evtName
|
|
1377
|
+
if (obj && evtName && evtName[_DYN_TYPE ] && handlerRef) {
|
|
1324
1378
|
if (obj[strAddEventHelper]) {
|
|
1325
|
-
obj[strAddEventHelper](evtName
|
|
1379
|
+
obj[strAddEventHelper](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
1326
1380
|
result = true;
|
|
1327
1381
|
}
|
|
1328
1382
|
else if (obj[strAttachEvent]) {
|
|
1329
|
-
obj[strAttachEvent](strOnPrefix + evtName
|
|
1383
|
+
obj[strAttachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
1330
1384
|
result = true;
|
|
1331
1385
|
}
|
|
1332
1386
|
}
|
|
@@ -1341,7 +1395,7 @@
|
|
|
1341
1395
|
else {
|
|
1342
1396
|
newNamespaces = [theNamespace, namespaces];
|
|
1343
1397
|
}
|
|
1344
|
-
newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)
|
|
1398
|
+
newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT$1 ](".");
|
|
1345
1399
|
}
|
|
1346
1400
|
else {
|
|
1347
1401
|
newNamespaces = theNamespace;
|
|
@@ -1349,6 +1403,7 @@
|
|
|
1349
1403
|
return newNamespaces;
|
|
1350
1404
|
}
|
|
1351
1405
|
function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
|
|
1406
|
+
var _a;
|
|
1352
1407
|
if (useCapture === void 0) { useCapture = false; }
|
|
1353
1408
|
var result = false;
|
|
1354
1409
|
if (target) {
|
|
@@ -1356,13 +1411,14 @@
|
|
|
1356
1411
|
var evtName = _getEvtNamespace(eventName, evtNamespace);
|
|
1357
1412
|
result = _doAttach(target, evtName, handlerRef, useCapture);
|
|
1358
1413
|
if (result && elmNodeData.accept(target)) {
|
|
1359
|
-
var registeredEvent = {
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1414
|
+
var registeredEvent = (_a = {
|
|
1415
|
+
guid: _guid++,
|
|
1416
|
+
evtName: evtName
|
|
1417
|
+
},
|
|
1418
|
+
_a[_DYN_HANDLER ] = handlerRef,
|
|
1419
|
+
_a.capture = useCapture,
|
|
1420
|
+
_a);
|
|
1421
|
+
_getRegisteredEvents(target, evtName.type)[_DYN_PUSH ](registeredEvent);
|
|
1366
1422
|
}
|
|
1367
1423
|
}
|
|
1368
1424
|
catch (e) {
|
|
@@ -1373,7 +1429,7 @@
|
|
|
1373
1429
|
|
|
1374
1430
|
function generateW3CId() {
|
|
1375
1431
|
var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
1376
|
-
var oct =
|
|
1432
|
+
var oct = STR_EMPTY, tmp;
|
|
1377
1433
|
for (var a = 0; a < 4; a++) {
|
|
1378
1434
|
tmp = random32();
|
|
1379
1435
|
oct +=
|
|
@@ -1387,7 +1443,7 @@
|
|
|
1387
1443
|
hexValues[tmp >> 28 & 0xF];
|
|
1388
1444
|
}
|
|
1389
1445
|
var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
|
|
1390
|
-
return oct
|
|
1446
|
+
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);
|
|
1391
1447
|
}
|
|
1392
1448
|
|
|
1393
1449
|
var DEFAULT_VERSION = "00";
|
|
@@ -1395,7 +1451,7 @@
|
|
|
1395
1451
|
var INVALID_TRACE_ID = "00000000000000000000000000000000";
|
|
1396
1452
|
var INVALID_SPAN_ID = "0000000000000000";
|
|
1397
1453
|
function _isValid(value, len, invalidValue) {
|
|
1398
|
-
if (value && value
|
|
1454
|
+
if (value && value[_DYN_LENGTH$2 ] === len && value !== invalidValue) {
|
|
1399
1455
|
return !!value.match(/^[\da-f]*$/);
|
|
1400
1456
|
}
|
|
1401
1457
|
return false;
|
|
@@ -1411,18 +1467,19 @@
|
|
|
1411
1467
|
value = 0x01;
|
|
1412
1468
|
}
|
|
1413
1469
|
var result = value.toString(16);
|
|
1414
|
-
while (result
|
|
1470
|
+
while (result[_DYN_LENGTH$2 ] < 2) {
|
|
1415
1471
|
result = "0" + result;
|
|
1416
1472
|
}
|
|
1417
1473
|
return result;
|
|
1418
1474
|
}
|
|
1419
1475
|
function createTraceParent(traceId, spanId, flags, version) {
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1476
|
+
var _a;
|
|
1477
|
+
return _a = {},
|
|
1478
|
+
_a[_DYN_VERSION ] = _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
|
|
1479
|
+
_a[_DYN_TRACE_ID$1 ] = isValidTraceId(traceId) ? traceId : generateW3CId(),
|
|
1480
|
+
_a.spanId = isValidSpanId(spanId) ? spanId : generateW3CId()[_DYN_SUBSTR ](0, 16),
|
|
1481
|
+
_a.traceFlags = flags >= 0 && flags <= 0xFF ? flags : 1,
|
|
1482
|
+
_a;
|
|
1426
1483
|
}
|
|
1427
1484
|
function isValidTraceId(value) {
|
|
1428
1485
|
return _isValid(value, 32, INVALID_TRACE_ID);
|
|
@@ -1432,11 +1489,11 @@
|
|
|
1432
1489
|
}
|
|
1433
1490
|
function formatTraceParent(value) {
|
|
1434
1491
|
if (value) {
|
|
1435
|
-
var flags = _formatFlags(value
|
|
1492
|
+
var flags = _formatFlags(value[_DYN_TRACE_FLAGS$1 ]);
|
|
1436
1493
|
if (!_isValid(flags, 2)) {
|
|
1437
1494
|
flags = "01";
|
|
1438
1495
|
}
|
|
1439
|
-
var version = value
|
|
1496
|
+
var version = value[_DYN_VERSION ] || DEFAULT_VERSION;
|
|
1440
1497
|
if (version !== "00" && version !== "ff") {
|
|
1441
1498
|
version = DEFAULT_VERSION;
|
|
1442
1499
|
}
|
|
@@ -1456,12 +1513,12 @@
|
|
|
1456
1513
|
var _chainId = 0;
|
|
1457
1514
|
function _getNextProxyStart(proxy, core, startAt) {
|
|
1458
1515
|
while (proxy) {
|
|
1459
|
-
if (proxy
|
|
1516
|
+
if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
|
|
1460
1517
|
return proxy;
|
|
1461
1518
|
}
|
|
1462
|
-
proxy = proxy
|
|
1519
|
+
proxy = proxy[_DYN_GET_NEXT ]();
|
|
1463
1520
|
}
|
|
1464
|
-
return createTelemetryProxyChain([startAt], core
|
|
1521
|
+
return createTelemetryProxyChain([startAt], core[_DYN_CONFIG ] || {}, core);
|
|
1465
1522
|
}
|
|
1466
1523
|
function _createInternalContext(telemetryChain, config, core, startAt) {
|
|
1467
1524
|
var _nextProxy = null;
|
|
@@ -1502,7 +1559,7 @@
|
|
|
1502
1559
|
args[_i - 2] = arguments[_i];
|
|
1503
1560
|
}
|
|
1504
1561
|
if (onComplete) {
|
|
1505
|
-
_onComplete
|
|
1562
|
+
_onComplete[_DYN_PUSH ]({
|
|
1506
1563
|
func: onComplete,
|
|
1507
1564
|
self: !isUndefined(that) ? that : context.ctx,
|
|
1508
1565
|
args: args
|
|
@@ -1511,16 +1568,16 @@
|
|
|
1511
1568
|
}
|
|
1512
1569
|
function _moveNext() {
|
|
1513
1570
|
var nextProxy = _nextProxy;
|
|
1514
|
-
_nextProxy = nextProxy ? nextProxy
|
|
1571
|
+
_nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT ]() : null;
|
|
1515
1572
|
if (!nextProxy) {
|
|
1516
1573
|
var onComplete = _onComplete;
|
|
1517
|
-
if (onComplete && onComplete
|
|
1574
|
+
if (onComplete && onComplete[_DYN_LENGTH$2 ] > 0) {
|
|
1518
1575
|
arrForEach(onComplete, function (completeDetails) {
|
|
1519
1576
|
try {
|
|
1520
|
-
completeDetails.func
|
|
1577
|
+
completeDetails.func[_DYN_CALL ](completeDetails.self, completeDetails.args);
|
|
1521
1578
|
}
|
|
1522
1579
|
catch (e) {
|
|
1523
|
-
_throwInternal(core
|
|
1580
|
+
_throwInternal(core[_DYN_LOGGER ], 2 , 73 , "Unexpected Exception during onComplete - " + dumpObj(e));
|
|
1524
1581
|
}
|
|
1525
1582
|
});
|
|
1526
1583
|
_onComplete = [];
|
|
@@ -1533,7 +1590,7 @@
|
|
|
1533
1590
|
if (mergeDefault === void 0) { mergeDefault = 0 ; }
|
|
1534
1591
|
var theConfig;
|
|
1535
1592
|
if (config) {
|
|
1536
|
-
var extConfig = config
|
|
1593
|
+
var extConfig = config[STR_EXTENSION_CONFIG ];
|
|
1537
1594
|
if (extConfig && identifier) {
|
|
1538
1595
|
theConfig = extConfig[identifier];
|
|
1539
1596
|
}
|
|
@@ -1574,7 +1631,7 @@
|
|
|
1574
1631
|
function _iterateChain(cb) {
|
|
1575
1632
|
var nextPlugin;
|
|
1576
1633
|
while (!!(nextPlugin = context._next())) {
|
|
1577
|
-
var plugin = nextPlugin
|
|
1634
|
+
var plugin = nextPlugin[_DYN_GET_PLUGIN ]();
|
|
1578
1635
|
if (plugin) {
|
|
1579
1636
|
cb(plugin);
|
|
1580
1637
|
}
|
|
@@ -1587,7 +1644,7 @@
|
|
|
1587
1644
|
var context = internalContext.ctx;
|
|
1588
1645
|
function _processNext(env) {
|
|
1589
1646
|
var nextPlugin = internalContext._next();
|
|
1590
|
-
nextPlugin && nextPlugin
|
|
1647
|
+
nextPlugin && nextPlugin[STR_PROCESS_TELEMETRY ](env, context);
|
|
1591
1648
|
return !nextPlugin;
|
|
1592
1649
|
}
|
|
1593
1650
|
function _createNew(plugins, startAt) {
|
|
@@ -1595,14 +1652,14 @@
|
|
|
1595
1652
|
if (isArray(plugins)) {
|
|
1596
1653
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
1597
1654
|
}
|
|
1598
|
-
return createProcessTelemetryContext(plugins || context
|
|
1655
|
+
return createProcessTelemetryContext(plugins || context[_DYN_GET_NEXT ](), config, core, startAt);
|
|
1599
1656
|
}
|
|
1600
|
-
context
|
|
1601
|
-
context
|
|
1657
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
1658
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
1602
1659
|
return context;
|
|
1603
1660
|
}
|
|
1604
1661
|
function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {
|
|
1605
|
-
var config = core
|
|
1662
|
+
var config = core[_DYN_CONFIG ] || {};
|
|
1606
1663
|
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
1607
1664
|
var context = internalContext.ctx;
|
|
1608
1665
|
function _processNext(unloadState) {
|
|
@@ -1615,20 +1672,20 @@
|
|
|
1615
1672
|
if (isArray(plugins)) {
|
|
1616
1673
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
1617
1674
|
}
|
|
1618
|
-
return createProcessTelemetryUnloadContext(plugins || context
|
|
1675
|
+
return createProcessTelemetryUnloadContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
1619
1676
|
}
|
|
1620
|
-
context
|
|
1621
|
-
context
|
|
1677
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
1678
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
1622
1679
|
return context;
|
|
1623
1680
|
}
|
|
1624
1681
|
function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {
|
|
1625
|
-
var config = core
|
|
1682
|
+
var config = core[_DYN_CONFIG ] || {};
|
|
1626
1683
|
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
1627
1684
|
var context = internalContext.ctx;
|
|
1628
1685
|
function _processNext(updateState) {
|
|
1629
1686
|
return context.iterate(function (plugin) {
|
|
1630
|
-
if (isFunction(plugin
|
|
1631
|
-
plugin
|
|
1687
|
+
if (isFunction(plugin[_DYN_UPDATE ])) {
|
|
1688
|
+
plugin[_DYN_UPDATE ](context, updateState);
|
|
1632
1689
|
}
|
|
1633
1690
|
});
|
|
1634
1691
|
}
|
|
@@ -1637,22 +1694,22 @@
|
|
|
1637
1694
|
if (isArray(plugins)) {
|
|
1638
1695
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
1639
1696
|
}
|
|
1640
|
-
return createProcessTelemetryUpdateContext(plugins || context
|
|
1697
|
+
return createProcessTelemetryUpdateContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
1641
1698
|
}
|
|
1642
|
-
context
|
|
1643
|
-
context
|
|
1699
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
1700
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
1644
1701
|
return context;
|
|
1645
1702
|
}
|
|
1646
1703
|
function createTelemetryProxyChain(plugins, config, core, startAt) {
|
|
1647
1704
|
var firstProxy = null;
|
|
1648
1705
|
var add = startAt ? false : true;
|
|
1649
|
-
if (isArray(plugins) && plugins
|
|
1706
|
+
if (isArray(plugins) && plugins[_DYN_LENGTH$2 ] > 0) {
|
|
1650
1707
|
var lastProxy_1 = null;
|
|
1651
1708
|
arrForEach(plugins, function (thePlugin) {
|
|
1652
1709
|
if (!add && startAt === thePlugin) {
|
|
1653
1710
|
add = true;
|
|
1654
1711
|
}
|
|
1655
|
-
if (add && thePlugin && isFunction(thePlugin
|
|
1712
|
+
if (add && thePlugin && isFunction(thePlugin[STR_PROCESS_TELEMETRY ])) {
|
|
1656
1713
|
var newProxy = createTelemetryPluginProxy(thePlugin, config, core);
|
|
1657
1714
|
if (!firstProxy) {
|
|
1658
1715
|
firstProxy = newProxy;
|
|
@@ -1671,11 +1728,11 @@
|
|
|
1671
1728
|
}
|
|
1672
1729
|
function createTelemetryPluginProxy(plugin, config, core) {
|
|
1673
1730
|
var nextProxy = null;
|
|
1674
|
-
var hasProcessTelemetry = isFunction(plugin
|
|
1675
|
-
var hasSetNext = isFunction(plugin
|
|
1731
|
+
var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY ]);
|
|
1732
|
+
var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN ]);
|
|
1676
1733
|
var chainId;
|
|
1677
1734
|
if (plugin) {
|
|
1678
|
-
chainId = plugin
|
|
1735
|
+
chainId = plugin[_DYN_IDENTIFIER ] + "-" + plugin[STR_PRIORITY ] + "-" + _chainId++;
|
|
1679
1736
|
}
|
|
1680
1737
|
else {
|
|
1681
1738
|
chainId = "Unknown-0-" + _chainId++;
|
|
@@ -1707,17 +1764,17 @@
|
|
|
1707
1764
|
}
|
|
1708
1765
|
function _processChain(itemCtx, processPluginFn, name, details, isAsync) {
|
|
1709
1766
|
var hasRun = false;
|
|
1710
|
-
var identifier = plugin ? plugin
|
|
1767
|
+
var identifier = plugin ? plugin[_DYN_IDENTIFIER ] : strTelemetryPluginChain;
|
|
1711
1768
|
var hasRunContext = itemCtx[strHasRunFlags];
|
|
1712
1769
|
if (!hasRunContext) {
|
|
1713
1770
|
hasRunContext = itemCtx[strHasRunFlags] = {};
|
|
1714
1771
|
}
|
|
1715
1772
|
itemCtx.setNext(nextProxy);
|
|
1716
1773
|
if (plugin) {
|
|
1717
|
-
doPerf(itemCtx[
|
|
1774
|
+
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
1718
1775
|
hasRunContext[chainId] = true;
|
|
1719
1776
|
try {
|
|
1720
|
-
var nextId = nextProxy ? nextProxy._id :
|
|
1777
|
+
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
1721
1778
|
if (nextId) {
|
|
1722
1779
|
hasRunContext[nextId] = false;
|
|
1723
1780
|
}
|
|
@@ -1729,7 +1786,7 @@
|
|
|
1729
1786
|
hasRun = true;
|
|
1730
1787
|
}
|
|
1731
1788
|
if (!nextProxy || !hasNextRun) {
|
|
1732
|
-
_throwInternal(itemCtx
|
|
1789
|
+
_throwInternal(itemCtx[_DYN_DIAG_LOG ](), 1 , 73 , "Plugin [" + identifier + "] failed during " + name + " - " + dumpObj(error) + ", run flags: " + dumpObj(hasRunContext));
|
|
1733
1790
|
}
|
|
1734
1791
|
}
|
|
1735
1792
|
}, details, isAsync);
|
|
@@ -1743,17 +1800,17 @@
|
|
|
1743
1800
|
return false;
|
|
1744
1801
|
}
|
|
1745
1802
|
var pluginState = _getPluginState(plugin);
|
|
1746
|
-
if (pluginState
|
|
1803
|
+
if (pluginState[_DYN_TEARDOWN ] || pluginState[STR_DISABLED]) {
|
|
1747
1804
|
return false;
|
|
1748
1805
|
}
|
|
1749
1806
|
if (hasSetNext) {
|
|
1750
|
-
plugin
|
|
1807
|
+
plugin[_DYN_SET_NEXT_PLUGIN ](nextProxy);
|
|
1751
1808
|
}
|
|
1752
|
-
plugin
|
|
1809
|
+
plugin[STR_PROCESS_TELEMETRY ](env, itemCtx);
|
|
1753
1810
|
return true;
|
|
1754
1811
|
}
|
|
1755
1812
|
if (!_processChain(itemCtx, _callProcessTelemetry, "processTelemetry", function () { return ({ item: env }); }, !(env.sync))) {
|
|
1756
|
-
itemCtx
|
|
1813
|
+
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
1757
1814
|
}
|
|
1758
1815
|
}
|
|
1759
1816
|
function _unloadPlugin(unloadCtx, unloadState) {
|
|
@@ -1761,20 +1818,20 @@
|
|
|
1761
1818
|
var hasRun = false;
|
|
1762
1819
|
if (plugin) {
|
|
1763
1820
|
var pluginState = _getPluginState(plugin);
|
|
1764
|
-
var pluginCore = plugin[
|
|
1765
|
-
if (plugin && (!pluginCore || pluginCore === unloadCtx
|
|
1766
|
-
pluginState[
|
|
1767
|
-
pluginState[
|
|
1768
|
-
pluginState[
|
|
1769
|
-
if (plugin[
|
|
1821
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
1822
|
+
if (plugin && (!pluginCore || pluginCore === unloadCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
1823
|
+
pluginState[STR_CORE ] = null;
|
|
1824
|
+
pluginState[_DYN_TEARDOWN ] = true;
|
|
1825
|
+
pluginState[_DYN_IS_INITIALIZED ] = false;
|
|
1826
|
+
if (plugin[_DYN_TEARDOWN ] && plugin[_DYN_TEARDOWN ](unloadCtx, unloadState) === true) {
|
|
1770
1827
|
hasRun = true;
|
|
1771
1828
|
}
|
|
1772
1829
|
}
|
|
1773
1830
|
}
|
|
1774
1831
|
return hasRun;
|
|
1775
1832
|
}
|
|
1776
|
-
if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState
|
|
1777
|
-
unloadCtx
|
|
1833
|
+
if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState[_DYN_IS_ASYNC ])) {
|
|
1834
|
+
unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
1778
1835
|
}
|
|
1779
1836
|
}
|
|
1780
1837
|
function _updatePlugin(updateCtx, updateState) {
|
|
@@ -1782,9 +1839,9 @@
|
|
|
1782
1839
|
var hasRun = false;
|
|
1783
1840
|
if (plugin) {
|
|
1784
1841
|
var pluginState = _getPluginState(plugin);
|
|
1785
|
-
var pluginCore = plugin[
|
|
1786
|
-
if (plugin && (!pluginCore || pluginCore === updateCtx
|
|
1787
|
-
if (plugin[
|
|
1842
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
1843
|
+
if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
1844
|
+
if (plugin[_DYN_UPDATE ] && plugin[_DYN_UPDATE ](updateCtx, updateState) === true) {
|
|
1788
1845
|
hasRun = true;
|
|
1789
1846
|
}
|
|
1790
1847
|
}
|
|
@@ -1792,19 +1849,17 @@
|
|
|
1792
1849
|
return hasRun;
|
|
1793
1850
|
}
|
|
1794
1851
|
if (!_processChain(updateCtx, _callUpdate, "update", function () { }, false)) {
|
|
1795
|
-
updateCtx
|
|
1852
|
+
updateCtx[_DYN_PROCESS_NEXT ](updateState);
|
|
1796
1853
|
}
|
|
1797
1854
|
}
|
|
1798
1855
|
return objFreeze(proxyChain);
|
|
1799
1856
|
}
|
|
1800
1857
|
|
|
1801
|
-
var strExtensionConfig = "extensionConfig";
|
|
1802
|
-
|
|
1803
1858
|
function createUnloadHandlerContainer() {
|
|
1804
1859
|
var handlers = [];
|
|
1805
1860
|
function _addHandler(handler) {
|
|
1806
1861
|
if (handler) {
|
|
1807
|
-
handlers
|
|
1862
|
+
handlers[_DYN_PUSH ](handler);
|
|
1808
1863
|
}
|
|
1809
1864
|
}
|
|
1810
1865
|
function _runHandlers(unloadCtx, unloadState) {
|
|
@@ -1813,7 +1868,7 @@
|
|
|
1813
1868
|
handler(unloadCtx, unloadState);
|
|
1814
1869
|
}
|
|
1815
1870
|
catch (e) {
|
|
1816
|
-
_throwInternal(unloadCtx
|
|
1871
|
+
_throwInternal(unloadCtx[_DYN_DIAG_LOG ](), 2 , 73 , "Unexpected error calling unload handler - " + dumpObj(e));
|
|
1817
1872
|
}
|
|
1818
1873
|
});
|
|
1819
1874
|
handlers = [];
|
|
@@ -1835,37 +1890,40 @@
|
|
|
1835
1890
|
var _hooks;
|
|
1836
1891
|
_initDefaults();
|
|
1837
1892
|
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
1838
|
-
_self
|
|
1893
|
+
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
1839
1894
|
_setDefaults(config, core, pluginChain);
|
|
1840
1895
|
_isinitialized = true;
|
|
1841
1896
|
};
|
|
1842
|
-
_self
|
|
1843
|
-
var
|
|
1844
|
-
|
|
1897
|
+
_self[_DYN_TEARDOWN ] = function (unloadCtx, unloadState) {
|
|
1898
|
+
var _a;
|
|
1899
|
+
var core = _self[STR_CORE ];
|
|
1900
|
+
if (!core || (unloadCtx && core !== unloadCtx[STR_CORE ]())) {
|
|
1845
1901
|
return;
|
|
1846
1902
|
}
|
|
1847
1903
|
var result;
|
|
1848
1904
|
var unloadDone = false;
|
|
1849
1905
|
var theUnloadCtx = unloadCtx || createProcessTelemetryUnloadContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);
|
|
1850
|
-
var theUnloadState = unloadState || {
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1906
|
+
var theUnloadState = unloadState || (_a = {
|
|
1907
|
+
reason: 0
|
|
1908
|
+
},
|
|
1909
|
+
_a[_DYN_IS_ASYNC ] = false,
|
|
1910
|
+
_a);
|
|
1854
1911
|
function _unloadCallback() {
|
|
1855
1912
|
if (!unloadDone) {
|
|
1856
1913
|
unloadDone = true;
|
|
1857
1914
|
_unloadHandlerContainer.run(theUnloadCtx, unloadState);
|
|
1858
|
-
|
|
1915
|
+
var oldHooks = _hooks;
|
|
1916
|
+
_hooks = [];
|
|
1917
|
+
arrForEach(oldHooks, function (fn) {
|
|
1859
1918
|
fn.rm();
|
|
1860
1919
|
});
|
|
1861
|
-
_hooks = [];
|
|
1862
1920
|
if (result === true) {
|
|
1863
|
-
theUnloadCtx
|
|
1921
|
+
theUnloadCtx[_DYN_PROCESS_NEXT ](theUnloadState);
|
|
1864
1922
|
}
|
|
1865
1923
|
_initDefaults();
|
|
1866
1924
|
}
|
|
1867
1925
|
}
|
|
1868
|
-
if (!_self[
|
|
1926
|
+
if (!_self[_DYN__DO_TEARDOWN ] || _self[_DYN__DO_TEARDOWN ](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {
|
|
1869
1927
|
_unloadCallback();
|
|
1870
1928
|
}
|
|
1871
1929
|
else {
|
|
@@ -1873,9 +1931,9 @@
|
|
|
1873
1931
|
}
|
|
1874
1932
|
return result;
|
|
1875
1933
|
};
|
|
1876
|
-
_self
|
|
1877
|
-
var core = _self
|
|
1878
|
-
if (!core || (updateCtx && core !== updateCtx
|
|
1934
|
+
_self[_DYN_UPDATE ] = function (updateCtx, updateState) {
|
|
1935
|
+
var core = _self[STR_CORE ];
|
|
1936
|
+
if (!core || (updateCtx && core !== updateCtx[STR_CORE ]())) {
|
|
1879
1937
|
return;
|
|
1880
1938
|
}
|
|
1881
1939
|
var result;
|
|
@@ -1887,7 +1945,7 @@
|
|
|
1887
1945
|
function _updateCallback() {
|
|
1888
1946
|
if (!updateDone) {
|
|
1889
1947
|
updateDone = true;
|
|
1890
|
-
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx
|
|
1948
|
+
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx[_DYN_GET_NEXT ]());
|
|
1891
1949
|
}
|
|
1892
1950
|
}
|
|
1893
1951
|
if (!_self._doUpdate || _self._doUpdate(theUpdateCtx, theUpdateState, _updateCallback) !== true) {
|
|
@@ -1904,30 +1962,30 @@
|
|
|
1904
1962
|
_hooks = _hooks.concat(hooks);
|
|
1905
1963
|
}
|
|
1906
1964
|
else {
|
|
1907
|
-
_hooks
|
|
1965
|
+
_hooks[_DYN_PUSH ](hooks);
|
|
1908
1966
|
}
|
|
1909
1967
|
}
|
|
1910
1968
|
};
|
|
1911
1969
|
proxyFunctionAs(_self, "_addUnloadCb", function () { return _unloadHandlerContainer; }, "add");
|
|
1912
1970
|
});
|
|
1913
|
-
_self
|
|
1914
|
-
return _getTelCtx(itemCtx)
|
|
1971
|
+
_self[_DYN_DIAG_LOG ] = function (itemCtx) {
|
|
1972
|
+
return _getTelCtx(itemCtx)[_DYN_DIAG_LOG ]();
|
|
1915
1973
|
};
|
|
1916
|
-
_self[
|
|
1974
|
+
_self[_DYN_IS_INITIALIZED ] = function () {
|
|
1917
1975
|
return _isinitialized;
|
|
1918
1976
|
};
|
|
1919
1977
|
_self.setInitialized = function (isInitialized) {
|
|
1920
1978
|
_isinitialized = isInitialized;
|
|
1921
1979
|
};
|
|
1922
|
-
_self[
|
|
1980
|
+
_self[_DYN_SET_NEXT_PLUGIN ] = function (next) {
|
|
1923
1981
|
_nextPlugin = next;
|
|
1924
1982
|
};
|
|
1925
|
-
_self
|
|
1983
|
+
_self[_DYN_PROCESS_NEXT ] = function (env, itemCtx) {
|
|
1926
1984
|
if (itemCtx) {
|
|
1927
|
-
itemCtx
|
|
1985
|
+
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
1928
1986
|
}
|
|
1929
|
-
else if (_nextPlugin && isFunction(_nextPlugin
|
|
1930
|
-
_nextPlugin
|
|
1987
|
+
else if (_nextPlugin && isFunction(_nextPlugin[STR_PROCESS_TELEMETRY ])) {
|
|
1988
|
+
_nextPlugin[STR_PROCESS_TELEMETRY ](env, null);
|
|
1931
1989
|
}
|
|
1932
1990
|
};
|
|
1933
1991
|
_self._getTelCtx = _getTelCtx;
|
|
@@ -1935,39 +1993,40 @@
|
|
|
1935
1993
|
if (currentCtx === void 0) { currentCtx = null; }
|
|
1936
1994
|
var itemCtx = currentCtx;
|
|
1937
1995
|
if (!itemCtx) {
|
|
1938
|
-
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self
|
|
1996
|
+
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self[STR_CORE ]);
|
|
1939
1997
|
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
1940
|
-
itemCtx = rootCtx
|
|
1998
|
+
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin[strGetPlugin]);
|
|
1941
1999
|
}
|
|
1942
2000
|
else {
|
|
1943
|
-
itemCtx = rootCtx
|
|
2001
|
+
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin);
|
|
1944
2002
|
}
|
|
1945
2003
|
}
|
|
1946
2004
|
return itemCtx;
|
|
1947
2005
|
}
|
|
1948
2006
|
function _setDefaults(config, core, pluginChain) {
|
|
1949
2007
|
if (config) {
|
|
1950
|
-
setValue(config,
|
|
2008
|
+
setValue(config, STR_EXTENSION_CONFIG, [], null, isNullOrUndefined);
|
|
1951
2009
|
}
|
|
1952
2010
|
if (!pluginChain && core) {
|
|
1953
|
-
pluginChain = core
|
|
2011
|
+
pluginChain = core[_DYN_GET_PROCESS_TEL_CONT0 ]()[_DYN_GET_NEXT ]();
|
|
1954
2012
|
}
|
|
1955
2013
|
var nextPlugin = _nextPlugin;
|
|
1956
2014
|
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
1957
2015
|
nextPlugin = _nextPlugin[strGetPlugin]();
|
|
1958
2016
|
}
|
|
1959
|
-
_self
|
|
2017
|
+
_self[STR_CORE ] = core;
|
|
1960
2018
|
_rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
|
|
1961
2019
|
}
|
|
1962
2020
|
function _initDefaults() {
|
|
1963
2021
|
_isinitialized = false;
|
|
1964
|
-
_self
|
|
2022
|
+
_self[STR_CORE ] = null;
|
|
1965
2023
|
_rootCtx = null;
|
|
1966
2024
|
_nextPlugin = null;
|
|
1967
2025
|
_hooks = [];
|
|
1968
2026
|
_unloadHandlerContainer = createUnloadHandlerContainer();
|
|
1969
2027
|
}
|
|
1970
2028
|
}
|
|
2029
|
+
BaseTelemetryPlugin.__ieDyn=1;
|
|
1971
2030
|
return BaseTelemetryPlugin;
|
|
1972
2031
|
}());
|
|
1973
2032
|
|
|
@@ -1977,7 +2036,7 @@
|
|
|
1977
2036
|
];
|
|
1978
2037
|
function _arrLoop(arr, fn) {
|
|
1979
2038
|
if (arr) {
|
|
1980
|
-
for (var lp = 0; lp < arr
|
|
2039
|
+
for (var lp = 0; lp < arr[_DYN_LENGTH$2 ]; lp++) {
|
|
1981
2040
|
if (fn(arr[lp], lp)) {
|
|
1982
2041
|
break;
|
|
1983
2042
|
}
|
|
@@ -1995,7 +2054,7 @@
|
|
|
1995
2054
|
return ctx;
|
|
1996
2055
|
};
|
|
1997
2056
|
try {
|
|
1998
|
-
cb
|
|
2057
|
+
cb[_DYN_APPLY ](callDetails.inst, cbArgs);
|
|
1999
2058
|
}
|
|
2000
2059
|
catch (err) {
|
|
2001
2060
|
var orgEx = callDetails.err;
|
|
@@ -2003,7 +2062,7 @@
|
|
|
2003
2062
|
var hookErrorCb = cbks[cbNames[2 ]];
|
|
2004
2063
|
if (hookErrorCb) {
|
|
2005
2064
|
callDetails.err = err;
|
|
2006
|
-
hookErrorCb
|
|
2065
|
+
hookErrorCb[_DYN_APPLY ](callDetails.inst, cbArgs);
|
|
2007
2066
|
}
|
|
2008
2067
|
}
|
|
2009
2068
|
catch (e) {
|
|
@@ -2018,21 +2077,22 @@
|
|
|
2018
2077
|
}
|
|
2019
2078
|
function _createFunctionHook(aiHook) {
|
|
2020
2079
|
return function () {
|
|
2080
|
+
var _a;
|
|
2021
2081
|
var funcThis = this;
|
|
2022
2082
|
var orgArgs = arguments;
|
|
2023
2083
|
var hooks = aiHook.h;
|
|
2024
|
-
var funcArgs = {
|
|
2025
|
-
|
|
2026
|
-
inst
|
|
2027
|
-
ctx
|
|
2028
|
-
set
|
|
2029
|
-
|
|
2084
|
+
var funcArgs = (_a = {},
|
|
2085
|
+
_a[_DYN_NAME$2 ] = aiHook.n,
|
|
2086
|
+
_a.inst = funcThis,
|
|
2087
|
+
_a.ctx = null,
|
|
2088
|
+
_a.set = _replaceArg,
|
|
2089
|
+
_a);
|
|
2030
2090
|
var hookCtx = [];
|
|
2031
2091
|
var cbArgs = _createArgs([funcArgs], orgArgs);
|
|
2032
2092
|
funcArgs.evt = getGlobalInst("event");
|
|
2033
2093
|
function _createArgs(target, theArgs) {
|
|
2034
2094
|
_arrLoop(theArgs, function (arg) {
|
|
2035
|
-
target
|
|
2095
|
+
target[_DYN_PUSH ](arg);
|
|
2036
2096
|
});
|
|
2037
2097
|
return target;
|
|
2038
2098
|
}
|
|
@@ -2045,7 +2105,7 @@
|
|
|
2045
2105
|
var theFunc = aiHook.f;
|
|
2046
2106
|
if (theFunc) {
|
|
2047
2107
|
try {
|
|
2048
|
-
funcArgs.rslt = theFunc
|
|
2108
|
+
funcArgs.rslt = theFunc[_DYN_APPLY ](funcThis, orgArgs);
|
|
2049
2109
|
}
|
|
2050
2110
|
catch (err) {
|
|
2051
2111
|
funcArgs.err = err;
|
|
@@ -2064,7 +2124,7 @@
|
|
|
2064
2124
|
owner = target;
|
|
2065
2125
|
}
|
|
2066
2126
|
else if (checkPrototype) {
|
|
2067
|
-
owner = _getOwner(_getObjProto
|
|
2127
|
+
owner = _getOwner(_getObjProto(target), name, false);
|
|
2068
2128
|
}
|
|
2069
2129
|
}
|
|
2070
2130
|
return owner;
|
|
@@ -2095,14 +2155,14 @@
|
|
|
2095
2155
|
var id = this.id;
|
|
2096
2156
|
_arrLoop(aiHook.h, function (hook, idx) {
|
|
2097
2157
|
if (hook.id === id) {
|
|
2098
|
-
aiHook.h
|
|
2158
|
+
aiHook.h[_DYN_SPLICE ](idx, 1);
|
|
2099
2159
|
return 1;
|
|
2100
2160
|
}
|
|
2101
2161
|
});
|
|
2102
2162
|
}
|
|
2103
2163
|
};
|
|
2104
2164
|
aiHook.i++;
|
|
2105
|
-
aiHook.h
|
|
2165
|
+
aiHook.h[_DYN_PUSH ](theHook);
|
|
2106
2166
|
return theHook;
|
|
2107
2167
|
}
|
|
2108
2168
|
function InstrumentFunc(target, funcName, callbacks, checkPrototype) {
|
|
@@ -2119,6 +2179,48 @@
|
|
|
2119
2179
|
return null;
|
|
2120
2180
|
}
|
|
2121
2181
|
|
|
2182
|
+
var DisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation";
|
|
2183
|
+
var DEFAULT_BREEZE_ENDPOINT = "https://dc.services.visualstudio.com";
|
|
2184
|
+
var DEFAULT_BREEZE_PATH = "/v2/track";
|
|
2185
|
+
var strNotSpecified = "not_specified";
|
|
2186
|
+
var strIkey = "iKey";
|
|
2187
|
+
|
|
2188
|
+
var _DYN_SPLIT = "split";
|
|
2189
|
+
var _DYN_LENGTH$1 = "length";
|
|
2190
|
+
var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
|
|
2191
|
+
var _DYN_TO_STRING = "toString";
|
|
2192
|
+
var _DYN_NAME$1 = "name";
|
|
2193
|
+
var _DYN_PATHNAME = "pathname";
|
|
2194
|
+
var _DYN_CORRELATION_HEADER_E0 = "correlationHeaderExcludePatterns";
|
|
2195
|
+
var _DYN_INDEX_OF = "indexOf";
|
|
2196
|
+
var _DYN_PROPERTIES = "properties";
|
|
2197
|
+
var _DYN_MEASUREMENTS = "measurements";
|
|
2198
|
+
var _DYN_STRINGIFY = "stringify";
|
|
2199
|
+
var _DYN_DURATION = "duration";
|
|
2200
|
+
var _DYN_SUBSTRING = "substring";
|
|
2201
|
+
var _DYN_SANITIZE_KEY_AND_ADD2 = "sanitizeKeyAndAddUniqueness";
|
|
2202
|
+
var _DYN_SANITIZE_EXCEPTION = "sanitizeException";
|
|
2203
|
+
var _DYN_SANITIZE_PROPERTIES = "sanitizeProperties";
|
|
2204
|
+
var _DYN_SANITIZE_MEASUREMENT3 = "sanitizeMeasurements";
|
|
2205
|
+
|
|
2206
|
+
var strEmpty = "";
|
|
2207
|
+
function msToTimeSpan(totalms) {
|
|
2208
|
+
if (isNaN(totalms) || totalms < 0) {
|
|
2209
|
+
totalms = 0;
|
|
2210
|
+
}
|
|
2211
|
+
totalms = Math.round(totalms);
|
|
2212
|
+
var ms = strEmpty + totalms % 1000;
|
|
2213
|
+
var sec = strEmpty + Math.floor(totalms / 1000) % 60;
|
|
2214
|
+
var min = strEmpty + Math.floor(totalms / (1000 * 60)) % 60;
|
|
2215
|
+
var hour = strEmpty + Math.floor(totalms / (1000 * 60 * 60)) % 24;
|
|
2216
|
+
var days = Math.floor(totalms / (1000 * 60 * 60 * 24));
|
|
2217
|
+
ms = ms[_DYN_LENGTH$1 ] === 1 ? "00" + ms : ms[_DYN_LENGTH$1 ] === 2 ? "0" + ms : ms;
|
|
2218
|
+
sec = sec[_DYN_LENGTH$1 ] < 2 ? "0" + sec : sec;
|
|
2219
|
+
min = min[_DYN_LENGTH$1 ] < 2 ? "0" + min : min;
|
|
2220
|
+
hour = hour[_DYN_LENGTH$1 ] < 2 ? "0" + hour : hour;
|
|
2221
|
+
return (days > 0 ? days + "." : strEmpty) + hour + ":" + min + ":" + sec + "." + ms;
|
|
2222
|
+
}
|
|
2223
|
+
|
|
2122
2224
|
var RequestHeaders = createValueMap({
|
|
2123
2225
|
requestContextHeader: [0 , "Request-Context"],
|
|
2124
2226
|
requestContextTargetKey: [1 , "appId"],
|
|
@@ -2131,15 +2233,16 @@
|
|
|
2131
2233
|
requestContextHeaderLowerCase: [8 , "request-context"]
|
|
2132
2234
|
});
|
|
2133
2235
|
|
|
2236
|
+
var _a;
|
|
2134
2237
|
function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
|
|
2135
|
-
var origLength = key
|
|
2238
|
+
var origLength = key[_DYN_LENGTH$1 ];
|
|
2136
2239
|
var field = dataSanitizeKey(logger, key);
|
|
2137
|
-
if (field
|
|
2240
|
+
if (field[_DYN_LENGTH$1 ] !== origLength) {
|
|
2138
2241
|
var i = 0;
|
|
2139
2242
|
var uniqueField = field;
|
|
2140
2243
|
while (map[uniqueField] !== undefined) {
|
|
2141
2244
|
i++;
|
|
2142
|
-
uniqueField = field
|
|
2245
|
+
uniqueField = field[_DYN_SUBSTRING ](0, 150 - 3) + dsPadNumber(i);
|
|
2143
2246
|
}
|
|
2144
2247
|
field = uniqueField;
|
|
2145
2248
|
}
|
|
@@ -2148,9 +2251,9 @@
|
|
|
2148
2251
|
function dataSanitizeKey(logger, name) {
|
|
2149
2252
|
var nameTrunc;
|
|
2150
2253
|
if (name) {
|
|
2151
|
-
name = strTrim(name
|
|
2152
|
-
if (name
|
|
2153
|
-
nameTrunc = name
|
|
2254
|
+
name = strTrim(name[_DYN_TO_STRING ]());
|
|
2255
|
+
if (name[_DYN_LENGTH$1 ] > 150 ) {
|
|
2256
|
+
nameTrunc = name[_DYN_SUBSTRING ](0, 150 );
|
|
2154
2257
|
_throwInternal(logger, 2 , 57 , "name is too long. It has been truncated to " + 150 + " characters.", { name: name }, true);
|
|
2155
2258
|
}
|
|
2156
2259
|
}
|
|
@@ -2162,8 +2265,8 @@
|
|
|
2162
2265
|
if (value) {
|
|
2163
2266
|
maxLength = maxLength ? maxLength : 1024 ;
|
|
2164
2267
|
value = strTrim(value);
|
|
2165
|
-
if (value.toString()
|
|
2166
|
-
valueTrunc = value
|
|
2268
|
+
if (value.toString()[_DYN_LENGTH$1 ] > maxLength) {
|
|
2269
|
+
valueTrunc = value[_DYN_TO_STRING ]()[_DYN_SUBSTRING ](0, maxLength);
|
|
2167
2270
|
_throwInternal(logger, 2 , 61 , "string value is too long. It has been truncated to " + maxLength + " characters.", { value: value }, true);
|
|
2168
2271
|
}
|
|
2169
2272
|
}
|
|
@@ -2172,13 +2275,34 @@
|
|
|
2172
2275
|
function dataSanitizeUrl(logger, url) {
|
|
2173
2276
|
return dataSanitizeInput(logger, url, 2048 , 66 );
|
|
2174
2277
|
}
|
|
2278
|
+
function dataSanitizeMessage(logger, message) {
|
|
2279
|
+
var messageTrunc;
|
|
2280
|
+
if (message) {
|
|
2281
|
+
if (message[_DYN_LENGTH$1 ] > 32768 ) {
|
|
2282
|
+
messageTrunc = message[_DYN_SUBSTRING ](0, 32768 );
|
|
2283
|
+
_throwInternal(logger, 2 , 56 , "message is too long, it has been truncated to " + 32768 + " characters.", { message: message }, true);
|
|
2284
|
+
}
|
|
2285
|
+
}
|
|
2286
|
+
return messageTrunc || message;
|
|
2287
|
+
}
|
|
2288
|
+
function dataSanitizeException(logger, exception) {
|
|
2289
|
+
var exceptionTrunc;
|
|
2290
|
+
if (exception) {
|
|
2291
|
+
var value = "" + exception;
|
|
2292
|
+
if (value[_DYN_LENGTH$1 ] > 32768 ) {
|
|
2293
|
+
exceptionTrunc = value[_DYN_SUBSTRING ](0, 32768 );
|
|
2294
|
+
_throwInternal(logger, 2 , 52 , "exception is too long, it has been truncated to " + 32768 + " characters.", { exception: exception }, true);
|
|
2295
|
+
}
|
|
2296
|
+
}
|
|
2297
|
+
return exceptionTrunc || exception;
|
|
2298
|
+
}
|
|
2175
2299
|
function dataSanitizeProperties(logger, properties) {
|
|
2176
2300
|
if (properties) {
|
|
2177
2301
|
var tempProps_1 = {};
|
|
2178
2302
|
objForEachKey(properties, function (prop, value) {
|
|
2179
2303
|
if (isObject(value) && hasJSON()) {
|
|
2180
2304
|
try {
|
|
2181
|
-
value = getJSON()
|
|
2305
|
+
value = getJSON()[_DYN_STRINGIFY ](value);
|
|
2182
2306
|
}
|
|
2183
2307
|
catch (e) {
|
|
2184
2308
|
_throwInternal(logger, 2 , 49 , "custom property is not valid", { exception: e }, true);
|
|
@@ -2203,12 +2327,15 @@
|
|
|
2203
2327
|
}
|
|
2204
2328
|
return measurements;
|
|
2205
2329
|
}
|
|
2330
|
+
function dataSanitizeId(logger, id) {
|
|
2331
|
+
return id ? dataSanitizeInput(logger, id, 128 , 69 )[_DYN_TO_STRING ]() : id;
|
|
2332
|
+
}
|
|
2206
2333
|
function dataSanitizeInput(logger, input, maxLength, _msgId) {
|
|
2207
2334
|
var inputTrunc;
|
|
2208
2335
|
if (input) {
|
|
2209
2336
|
input = strTrim(input);
|
|
2210
|
-
if (input
|
|
2211
|
-
inputTrunc = input
|
|
2337
|
+
if (input[_DYN_LENGTH$1 ] > maxLength) {
|
|
2338
|
+
inputTrunc = input[_DYN_SUBSTRING ](0, maxLength);
|
|
2212
2339
|
_throwInternal(logger, 2 , _msgId, "input is too long, it has been truncated to " + maxLength + " characters.", { data: input }, true);
|
|
2213
2340
|
}
|
|
2214
2341
|
}
|
|
@@ -2216,30 +2343,30 @@
|
|
|
2216
2343
|
}
|
|
2217
2344
|
function dsPadNumber(num) {
|
|
2218
2345
|
var s = "00" + num;
|
|
2219
|
-
return s.substr(s
|
|
2220
|
-
}
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2346
|
+
return s.substr(s[_DYN_LENGTH$1 ] - 3);
|
|
2347
|
+
}
|
|
2348
|
+
(_a = {
|
|
2349
|
+
MAX_NAME_LENGTH: 150 ,
|
|
2350
|
+
MAX_ID_LENGTH: 128 ,
|
|
2351
|
+
MAX_PROPERTY_LENGTH: 8192 ,
|
|
2352
|
+
MAX_STRING_LENGTH: 1024 ,
|
|
2353
|
+
MAX_URL_LENGTH: 2048 ,
|
|
2354
|
+
MAX_MESSAGE_LENGTH: 32768 ,
|
|
2355
|
+
MAX_EXCEPTION_LENGTH: 32768
|
|
2356
|
+
},
|
|
2357
|
+
_a[_DYN_SANITIZE_KEY_AND_ADD2 ] = dataSanitizeKeyAndAddUniqueness,
|
|
2358
|
+
_a.sanitizeKey = dataSanitizeKey,
|
|
2359
|
+
_a.sanitizeString = dataSanitizeString,
|
|
2360
|
+
_a.sanitizeUrl = dataSanitizeUrl,
|
|
2361
|
+
_a.sanitizeMessage = dataSanitizeMessage,
|
|
2362
|
+
_a[_DYN_SANITIZE_EXCEPTION ] = dataSanitizeException,
|
|
2363
|
+
_a[_DYN_SANITIZE_PROPERTIES ] = dataSanitizeProperties,
|
|
2364
|
+
_a[_DYN_SANITIZE_MEASUREMENT3 ] = dataSanitizeMeasurements,
|
|
2365
|
+
_a.sanitizeId = dataSanitizeId,
|
|
2366
|
+
_a.sanitizeInput = dataSanitizeInput,
|
|
2367
|
+
_a.padNumber = dsPadNumber,
|
|
2368
|
+
_a.trim = strTrim,
|
|
2369
|
+
_a);
|
|
2243
2370
|
|
|
2244
2371
|
var _document = getDocument() || {};
|
|
2245
2372
|
var _htmlAnchorIdx = 0;
|
|
@@ -2256,7 +2383,7 @@
|
|
|
2256
2383
|
}
|
|
2257
2384
|
tempAnchor.href = url;
|
|
2258
2385
|
anchorIdx++;
|
|
2259
|
-
if (anchorIdx >= anchorCache
|
|
2386
|
+
if (anchorIdx >= anchorCache[_DYN_LENGTH$1 ]) {
|
|
2260
2387
|
anchorIdx = 0;
|
|
2261
2388
|
}
|
|
2262
2389
|
_htmlAnchorIdx = anchorIdx;
|
|
@@ -2280,7 +2407,7 @@
|
|
|
2280
2407
|
var fullHost = urlParseFullHost(url, inclPort) || "";
|
|
2281
2408
|
if (fullHost) {
|
|
2282
2409
|
var match = fullHost.match(/(www[0-9]?\.)?(.[^/:]+)(\:[\d]+)?/i);
|
|
2283
|
-
if (match != null && match
|
|
2410
|
+
if (match != null && match[_DYN_LENGTH$1 ] > 3 && isString(match[2]) && match[2][_DYN_LENGTH$1 ] > 0) {
|
|
2284
2411
|
return match[2] + (match[3] || "");
|
|
2285
2412
|
}
|
|
2286
2413
|
}
|
|
@@ -2290,10 +2417,10 @@
|
|
|
2290
2417
|
var result = null;
|
|
2291
2418
|
if (url) {
|
|
2292
2419
|
var match = url.match(/(\w*):\/\/(.[^/:]+)(\:[\d]+)?/i);
|
|
2293
|
-
if (match != null && match
|
|
2420
|
+
if (match != null && match[_DYN_LENGTH$1 ] > 2 && isString(match[2]) && match[2][_DYN_LENGTH$1 ] > 0) {
|
|
2294
2421
|
result = match[2] || "";
|
|
2295
|
-
if (inclPort && match
|
|
2296
|
-
var protocol = (match[1] || "")
|
|
2422
|
+
if (inclPort && match[_DYN_LENGTH$1 ] > 2) {
|
|
2423
|
+
var protocol = (match[1] || "")[_DYN_TO_LOWER_CASE$1 ]();
|
|
2297
2424
|
var port = match[3] || "";
|
|
2298
2425
|
if (protocol === "http" && port === ":80") {
|
|
2299
2426
|
port = "";
|
|
@@ -2309,12 +2436,12 @@
|
|
|
2309
2436
|
}
|
|
2310
2437
|
|
|
2311
2438
|
var _internalEndpoints = [
|
|
2312
|
-
|
|
2313
|
-
"https://breeze.aimon.applicationinsights.io
|
|
2314
|
-
"https://dc-int.services.visualstudio.com
|
|
2439
|
+
DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH,
|
|
2440
|
+
"https://breeze.aimon.applicationinsights.io" + DEFAULT_BREEZE_PATH,
|
|
2441
|
+
"https://dc-int.services.visualstudio.com" + DEFAULT_BREEZE_PATH
|
|
2315
2442
|
];
|
|
2316
2443
|
function isInternalApplicationInsightsEndpoint(endpointUrl) {
|
|
2317
|
-
return arrIndexOf(_internalEndpoints, endpointUrl
|
|
2444
|
+
return arrIndexOf(_internalEndpoints, endpointUrl[_DYN_TO_LOWER_CASE$1 ]()) !== -1;
|
|
2318
2445
|
}
|
|
2319
2446
|
var CorrelationIdHelper = {
|
|
2320
2447
|
correlationIdPrefix: "cid-v1:",
|
|
@@ -2322,16 +2449,16 @@
|
|
|
2322
2449
|
if (!requestUrl || (config && config.disableCorrelationHeaders)) {
|
|
2323
2450
|
return false;
|
|
2324
2451
|
}
|
|
2325
|
-
if (config && config
|
|
2326
|
-
for (var i = 0; i < config.correlationHeaderExcludePatterns
|
|
2327
|
-
if (config
|
|
2452
|
+
if (config && config[_DYN_CORRELATION_HEADER_E0 ]) {
|
|
2453
|
+
for (var i = 0; i < config.correlationHeaderExcludePatterns[_DYN_LENGTH$1 ]; i++) {
|
|
2454
|
+
if (config[_DYN_CORRELATION_HEADER_E0 ][i].test(requestUrl)) {
|
|
2328
2455
|
return false;
|
|
2329
2456
|
}
|
|
2330
2457
|
}
|
|
2331
2458
|
}
|
|
2332
|
-
var requestHost = urlParseUrl(requestUrl).host
|
|
2333
|
-
if (requestHost && (requestHost
|
|
2334
|
-
requestHost = (urlParseFullHost(requestUrl, true) || "")
|
|
2459
|
+
var requestHost = urlParseUrl(requestUrl).host[_DYN_TO_LOWER_CASE$1 ]();
|
|
2460
|
+
if (requestHost && (requestHost[_DYN_INDEX_OF ](":443") !== -1 || requestHost[_DYN_INDEX_OF ](":80") !== -1)) {
|
|
2461
|
+
requestHost = (urlParseFullHost(requestUrl, true) || "")[_DYN_TO_LOWER_CASE$1 ]();
|
|
2335
2462
|
}
|
|
2336
2463
|
if ((!config || !config.enableCorsCorrelation) && (requestHost && requestHost !== currentHost)) {
|
|
2337
2464
|
return false;
|
|
@@ -2348,16 +2475,16 @@
|
|
|
2348
2475
|
}
|
|
2349
2476
|
}
|
|
2350
2477
|
var excludedDomains = config && config.correlationHeaderExcludedDomains;
|
|
2351
|
-
if (!excludedDomains || excludedDomains
|
|
2478
|
+
if (!excludedDomains || excludedDomains[_DYN_LENGTH$1 ] === 0) {
|
|
2352
2479
|
return true;
|
|
2353
2480
|
}
|
|
2354
|
-
for (var i = 0; i < excludedDomains
|
|
2481
|
+
for (var i = 0; i < excludedDomains[_DYN_LENGTH$1 ]; i++) {
|
|
2355
2482
|
var regex = new RegExp(excludedDomains[i].toLowerCase().replace(/\\/g, "\\\\").replace(/\./g, "\\.").replace(/\*/g, ".*"));
|
|
2356
2483
|
if (regex.test(requestHost)) {
|
|
2357
2484
|
return false;
|
|
2358
2485
|
}
|
|
2359
2486
|
}
|
|
2360
|
-
return requestHost && requestHost
|
|
2487
|
+
return requestHost && requestHost[_DYN_LENGTH$1 ] > 0;
|
|
2361
2488
|
},
|
|
2362
2489
|
getCorrelationContext: function (responseHeader) {
|
|
2363
2490
|
if (responseHeader) {
|
|
@@ -2369,10 +2496,10 @@
|
|
|
2369
2496
|
},
|
|
2370
2497
|
getCorrelationContextValue: function (responseHeader, key) {
|
|
2371
2498
|
if (responseHeader) {
|
|
2372
|
-
var keyValues = responseHeader
|
|
2373
|
-
for (var i = 0; i < keyValues
|
|
2374
|
-
var keyValue = keyValues[i]
|
|
2375
|
-
if (keyValue
|
|
2499
|
+
var keyValues = responseHeader[_DYN_SPLIT ](",");
|
|
2500
|
+
for (var i = 0; i < keyValues[_DYN_LENGTH$1 ]; ++i) {
|
|
2501
|
+
var keyValue = keyValues[i][_DYN_SPLIT ]("=");
|
|
2502
|
+
if (keyValue[_DYN_LENGTH$1 ] === 2 && keyValue[0] === key) {
|
|
2376
2503
|
return keyValue[1];
|
|
2377
2504
|
}
|
|
2378
2505
|
}
|
|
@@ -2381,16 +2508,16 @@
|
|
|
2381
2508
|
};
|
|
2382
2509
|
function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName) {
|
|
2383
2510
|
var target, name = commandName, data = commandName;
|
|
2384
|
-
if (absoluteUrl && absoluteUrl
|
|
2511
|
+
if (absoluteUrl && absoluteUrl[_DYN_LENGTH$1 ] > 0) {
|
|
2385
2512
|
var parsedUrl = urlParseUrl(absoluteUrl);
|
|
2386
2513
|
target = parsedUrl.host;
|
|
2387
2514
|
if (!name) {
|
|
2388
|
-
if (parsedUrl
|
|
2389
|
-
var pathName = (parsedUrl.pathname
|
|
2515
|
+
if (parsedUrl[_DYN_PATHNAME ] != null) {
|
|
2516
|
+
var pathName = (parsedUrl.pathname[_DYN_LENGTH$1 ] === 0) ? "/" : parsedUrl[_DYN_PATHNAME ];
|
|
2390
2517
|
if (pathName.charAt(0) !== "/") {
|
|
2391
2518
|
pathName = "/" + pathName;
|
|
2392
2519
|
}
|
|
2393
|
-
data = parsedUrl
|
|
2520
|
+
data = parsedUrl[_DYN_PATHNAME ];
|
|
2394
2521
|
name = dataSanitizeString(logger, method ? method + " " + pathName : pathName);
|
|
2395
2522
|
}
|
|
2396
2523
|
else {
|
|
@@ -2429,11 +2556,11 @@
|
|
|
2429
2556
|
var trace = telemetryTrace || {};
|
|
2430
2557
|
return {
|
|
2431
2558
|
getName: function () {
|
|
2432
|
-
return trace
|
|
2559
|
+
return trace[_DYN_NAME$1 ];
|
|
2433
2560
|
},
|
|
2434
2561
|
setName: function (newValue) {
|
|
2435
2562
|
parentCtx && parentCtx.setName(newValue);
|
|
2436
|
-
trace
|
|
2563
|
+
trace[_DYN_NAME$1 ] = newValue;
|
|
2437
2564
|
},
|
|
2438
2565
|
getTraceId: function () {
|
|
2439
2566
|
return trace.traceID;
|
|
@@ -2492,7 +2619,7 @@
|
|
|
2492
2619
|
var _self = this;
|
|
2493
2620
|
_self.ver = 2;
|
|
2494
2621
|
_self.id = id;
|
|
2495
|
-
_self
|
|
2622
|
+
_self[_DYN_DURATION ] = msToTimeSpan(value);
|
|
2496
2623
|
_self.success = success;
|
|
2497
2624
|
_self.resultCode = resultCode + "";
|
|
2498
2625
|
_self.type = dataSanitizeString(logger, requestAPI);
|
|
@@ -2502,9 +2629,9 @@
|
|
|
2502
2629
|
if (correlationContext) {
|
|
2503
2630
|
_self.target = "".concat(_self.target, " | ").concat(correlationContext);
|
|
2504
2631
|
}
|
|
2505
|
-
_self
|
|
2506
|
-
_self
|
|
2507
|
-
_self
|
|
2632
|
+
_self[_DYN_NAME$1 ] = dataSanitizeString(logger, dependencyFields[_DYN_NAME$1 ]);
|
|
2633
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
2634
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
2508
2635
|
}
|
|
2509
2636
|
RemoteDependencyData.envelopeType = "Microsoft.ApplicationInsights.{0}.RemoteDependency";
|
|
2510
2637
|
RemoteDependencyData.dataType = "RemoteDependencyData";
|
|
@@ -2512,6 +2639,7 @@
|
|
|
2512
2639
|
}());
|
|
2513
2640
|
|
|
2514
2641
|
function createTelemetryItem(item, baseType, envelopeName, logger, customProperties, systemProperties) {
|
|
2642
|
+
var _a;
|
|
2515
2643
|
envelopeName = dataSanitizeString(logger, envelopeName) || strNotSpecified;
|
|
2516
2644
|
if (isNullOrUndefined(item) ||
|
|
2517
2645
|
isNullOrUndefined(baseType) ||
|
|
@@ -2523,16 +2651,17 @@
|
|
|
2523
2651
|
iKey = item[strIkey];
|
|
2524
2652
|
delete item[strIkey];
|
|
2525
2653
|
}
|
|
2526
|
-
var telemetryItem = {
|
|
2527
|
-
|
|
2528
|
-
time
|
|
2529
|
-
iKey
|
|
2530
|
-
ext
|
|
2531
|
-
tags
|
|
2532
|
-
data
|
|
2533
|
-
baseType
|
|
2534
|
-
baseData
|
|
2535
|
-
|
|
2654
|
+
var telemetryItem = (_a = {},
|
|
2655
|
+
_a[_DYN_NAME$1 ] = envelopeName,
|
|
2656
|
+
_a.time = toISOString(new Date()),
|
|
2657
|
+
_a.iKey = iKey,
|
|
2658
|
+
_a.ext = systemProperties ? systemProperties : {},
|
|
2659
|
+
_a.tags = [],
|
|
2660
|
+
_a.data = {},
|
|
2661
|
+
_a.baseType = baseType,
|
|
2662
|
+
_a.baseData = item
|
|
2663
|
+
,
|
|
2664
|
+
_a);
|
|
2536
2665
|
if (!isNullOrUndefined(customProperties)) {
|
|
2537
2666
|
objForEachKey(customProperties, function (prop, value) {
|
|
2538
2667
|
telemetryItem.data[prop] = value;
|
|
@@ -2543,7 +2672,60 @@
|
|
|
2543
2672
|
|
|
2544
2673
|
var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
|
|
2545
2674
|
|
|
2546
|
-
var
|
|
2675
|
+
var STR_DURATION = "duration";
|
|
2676
|
+
var STR_PROPERTIES = "properties";
|
|
2677
|
+
|
|
2678
|
+
var _DYN_REQUEST_URL = "requestUrl";
|
|
2679
|
+
var _DYN_INST = "inst";
|
|
2680
|
+
var _DYN_LENGTH = "length";
|
|
2681
|
+
var _DYN_TRACE_ID = "traceID";
|
|
2682
|
+
var _DYN_SPAN_ID = "spanID";
|
|
2683
|
+
var _DYN_TRACE_FLAGS = "traceFlags";
|
|
2684
|
+
var _DYN_CORE = "core";
|
|
2685
|
+
var _DYN_GET_DEFAULT_CONFIG = "getDefaultConfig";
|
|
2686
|
+
var _DYN_INCLUDE_CORRELATION_0 = "includeCorrelationHeaders";
|
|
2687
|
+
var _DYN_CAN_INCLUDE_CORRELAT1 = "canIncludeCorrelationHeader";
|
|
2688
|
+
var _DYN_GET_ABSOLUTE_URL = "getAbsoluteUrl";
|
|
2689
|
+
var _DYN_HEADERS = "headers";
|
|
2690
|
+
var _DYN_REQUEST_HEADERS = "requestHeaders";
|
|
2691
|
+
var _DYN_APP_ID = "appId";
|
|
2692
|
+
var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
|
|
2693
|
+
var _DYN_DISTRIBUTED_TRACING_2 = "distributedTracingMode";
|
|
2694
|
+
var _DYN_START_TIME = "startTime";
|
|
2695
|
+
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
2696
|
+
var _DYN_ENABLE_REQUEST_HEADE3 = "enableRequestHeaderTracking";
|
|
2697
|
+
var _DYN_ENABLE_AJAX_ERROR_ST4 = "enableAjaxErrorStatusText";
|
|
2698
|
+
var _DYN_ENABLE_AJAX_PERF_TRA5 = "enableAjaxPerfTracking";
|
|
2699
|
+
var _DYN_MAX_AJAX_CALLS_PER_V6 = "maxAjaxCallsPerView";
|
|
2700
|
+
var _DYN_ENABLE_RESPONSE_HEAD7 = "enableResponseHeaderTracking";
|
|
2701
|
+
var _DYN_EXCLUDE_REQUEST_FROM8 = "excludeRequestFromAutoTrackingPatterns";
|
|
2702
|
+
var _DYN_ADD_REQUEST_CONTEXT = "addRequestContext";
|
|
2703
|
+
var _DYN_DISABLE_AJAX_TRACKIN9 = "disableAjaxTracking";
|
|
2704
|
+
var _DYN_DISABLE_FETCH_TRACKI10 = "disableFetchTracking";
|
|
2705
|
+
var _DYN_STATUS = "status";
|
|
2706
|
+
var _DYN_STATUS_TEXT = "statusText";
|
|
2707
|
+
var _DYN_HEADER_MAP = "headerMap";
|
|
2708
|
+
var _DYN_OPEN_DONE = "openDone";
|
|
2709
|
+
var _DYN_SEND_DONE = "sendDone";
|
|
2710
|
+
var _DYN_REQUEST_SENT_TIME = "requestSentTime";
|
|
2711
|
+
var _DYN_ABORT_DONE = "abortDone";
|
|
2712
|
+
var _DYN_METHOD = "method";
|
|
2713
|
+
var _DYN_ERROR_STATUS_TEXT = "errorStatusText";
|
|
2714
|
+
var _DYN_STATE_CHANGE_ATTACHE11 = "stateChangeAttached";
|
|
2715
|
+
var _DYN_RESPONSE_TEXT = "responseText";
|
|
2716
|
+
var _DYN_RESPONSE_FINISHED_TI12 = "responseFinishedTime";
|
|
2717
|
+
var _DYN__CREATE_TRACK_ITEM = "CreateTrackItem";
|
|
2718
|
+
var _DYN_RESPONSE = "response";
|
|
2719
|
+
var _DYN_GET_ALL_RESPONSE_HEA13 = "getAllResponseHeaders";
|
|
2720
|
+
var _DYN_GET_CORRELATION_CONT14 = "getCorrelationContext";
|
|
2721
|
+
var _DYN_PERF_MARK = "perfMark";
|
|
2722
|
+
var _DYN_AJAX_PERF_LOOKUP_DEL15 = "ajaxPerfLookupDelay";
|
|
2723
|
+
var _DYN_NAME = "name";
|
|
2724
|
+
var _DYN_PERF_TIMING = "perfTiming";
|
|
2725
|
+
var _DYN_AJAX_DIAGNOSTICS_MES16 = "ajaxDiagnosticsMessage";
|
|
2726
|
+
var _DYN_CORRELATION_CONTEXT = "correlationContext";
|
|
2727
|
+
var _DYN_AJAX_TOTAL_DURATION = "ajaxTotalDuration";
|
|
2728
|
+
|
|
2547
2729
|
function _calcPerfDuration(resourceEntry, start, end) {
|
|
2548
2730
|
var result = 0;
|
|
2549
2731
|
var from = resourceEntry[start];
|
|
@@ -2572,8 +2754,8 @@
|
|
|
2572
2754
|
return result;
|
|
2573
2755
|
}
|
|
2574
2756
|
function _populatePerfData(ajaxData, dependency) {
|
|
2575
|
-
var resourceEntry = ajaxData
|
|
2576
|
-
var props = dependency[
|
|
2757
|
+
var resourceEntry = ajaxData[_DYN_PERF_TIMING ];
|
|
2758
|
+
var props = dependency[STR_PROPERTIES ] || {};
|
|
2577
2759
|
var propsSet = 0;
|
|
2578
2760
|
var strName = "name";
|
|
2579
2761
|
var strStart = "Start";
|
|
@@ -2583,7 +2765,6 @@
|
|
|
2583
2765
|
var strRedirect = "redirect";
|
|
2584
2766
|
var strRequest = "request";
|
|
2585
2767
|
var strResponse = "response";
|
|
2586
|
-
var strDuration = "duration";
|
|
2587
2768
|
var strStartTime = "startTime";
|
|
2588
2769
|
var strDomainLookupStart = strDomainLookup + strStart;
|
|
2589
2770
|
var strDomainLookupEnd = strDomainLookup + strEnd;
|
|
@@ -2607,11 +2788,11 @@
|
|
|
2607
2788
|
propsSet |= _setPerfDuration(props, strResponse, resourceEntry, strResponseStart, strResponseEnd);
|
|
2608
2789
|
propsSet |= _setPerfDuration(props, "networkConnect", resourceEntry, strStartTime, strConnectEnd);
|
|
2609
2790
|
propsSet |= _setPerfDuration(props, "sentRequest", resourceEntry, strRequestStart, strResponseEnd);
|
|
2610
|
-
var duration = resourceEntry[
|
|
2791
|
+
var duration = resourceEntry[STR_DURATION ];
|
|
2611
2792
|
if (!duration) {
|
|
2612
2793
|
duration = _calcPerfDuration(resourceEntry, strStartTime, strResponseEnd) || 0;
|
|
2613
2794
|
}
|
|
2614
|
-
propsSet |= _setPerfValue(props,
|
|
2795
|
+
propsSet |= _setPerfValue(props, STR_DURATION, duration);
|
|
2615
2796
|
propsSet |= _setPerfValue(props, "perfTotal", duration);
|
|
2616
2797
|
var serverTiming = resourceEntry[strServerTiming];
|
|
2617
2798
|
if (serverTiming) {
|
|
@@ -2638,22 +2819,22 @@
|
|
|
2638
2819
|
propsSet |= _setPerfValue(props, strDecodedBodySize, resourceEntry[strDecodedBodySize]);
|
|
2639
2820
|
}
|
|
2640
2821
|
else {
|
|
2641
|
-
if (ajaxData
|
|
2822
|
+
if (ajaxData[_DYN_PERF_MARK ]) {
|
|
2642
2823
|
propsSet |= _setPerfValue(props, "missing", ajaxData.perfAttempts);
|
|
2643
2824
|
}
|
|
2644
2825
|
}
|
|
2645
2826
|
if (propsSet) {
|
|
2646
|
-
dependency[
|
|
2827
|
+
dependency[STR_PROPERTIES ] = props;
|
|
2647
2828
|
}
|
|
2648
2829
|
}
|
|
2649
2830
|
var XHRMonitoringState = /** @class */ (function () {
|
|
2650
2831
|
function XHRMonitoringState() {
|
|
2651
2832
|
var self = this;
|
|
2652
|
-
self
|
|
2833
|
+
self[_DYN_OPEN_DONE ] = false;
|
|
2653
2834
|
self.setRequestHeaderDone = false;
|
|
2654
|
-
self
|
|
2655
|
-
self
|
|
2656
|
-
self
|
|
2835
|
+
self[_DYN_SEND_DONE ] = false;
|
|
2836
|
+
self[_DYN_ABORT_DONE ] = false;
|
|
2837
|
+
self[_DYN_STATE_CHANGE_ATTACHE11 ] = false;
|
|
2657
2838
|
}
|
|
2658
2839
|
return XHRMonitoringState;
|
|
2659
2840
|
}());
|
|
@@ -2662,86 +2843,86 @@
|
|
|
2662
2843
|
var self = this;
|
|
2663
2844
|
var _logger = logger;
|
|
2664
2845
|
var strResponseText = "responseText";
|
|
2665
|
-
self
|
|
2846
|
+
self[_DYN_PERF_MARK ] = null;
|
|
2666
2847
|
self.completed = false;
|
|
2667
2848
|
self.requestHeadersSize = null;
|
|
2668
|
-
self
|
|
2849
|
+
self[_DYN_REQUEST_HEADERS ] = null;
|
|
2669
2850
|
self.responseReceivingDuration = null;
|
|
2670
2851
|
self.callbackDuration = null;
|
|
2671
|
-
self
|
|
2852
|
+
self[_DYN_AJAX_TOTAL_DURATION ] = null;
|
|
2672
2853
|
self.aborted = 0;
|
|
2673
2854
|
self.pageUrl = null;
|
|
2674
|
-
self
|
|
2855
|
+
self[_DYN_REQUEST_URL ] = null;
|
|
2675
2856
|
self.requestSize = 0;
|
|
2676
|
-
self
|
|
2677
|
-
self
|
|
2678
|
-
self
|
|
2857
|
+
self[_DYN_METHOD ] = null;
|
|
2858
|
+
self[_DYN_STATUS ] = null;
|
|
2859
|
+
self[_DYN_REQUEST_SENT_TIME ] = null;
|
|
2679
2860
|
self.responseStartedTime = null;
|
|
2680
|
-
self
|
|
2861
|
+
self[_DYN_RESPONSE_FINISHED_TI12 ] = null;
|
|
2681
2862
|
self.callbackFinishedTime = null;
|
|
2682
2863
|
self.endTime = null;
|
|
2683
2864
|
self.xhrMonitoringState = new XHRMonitoringState();
|
|
2684
2865
|
self.clientFailure = 0;
|
|
2685
|
-
self
|
|
2686
|
-
self
|
|
2866
|
+
self[_DYN_TRACE_ID ] = traceID;
|
|
2867
|
+
self[_DYN_SPAN_ID ] = spanID;
|
|
2687
2868
|
dynamicProto(ajaxRecord, self, function (self) {
|
|
2688
2869
|
self.getAbsoluteUrl = function () {
|
|
2689
|
-
return self
|
|
2870
|
+
return self[_DYN_REQUEST_URL ] ? urlGetAbsoluteUrl(self[_DYN_REQUEST_URL ]) : null;
|
|
2690
2871
|
};
|
|
2691
2872
|
self.getPathName = function () {
|
|
2692
|
-
return self
|
|
2873
|
+
return self[_DYN_REQUEST_URL ] ? dataSanitizeUrl(_logger, urlGetCompleteUrl(self[_DYN_METHOD ], self[_DYN_REQUEST_URL ])) : null;
|
|
2693
2874
|
};
|
|
2694
|
-
self
|
|
2875
|
+
self[_DYN__CREATE_TRACK_ITEM ] = function (ajaxType, enableRequestHeaderTracking, getResponse) {
|
|
2695
2876
|
var _a;
|
|
2696
2877
|
self.ajaxTotalDuration = Math.round(dateTimeUtilsDuration(self.requestSentTime, self.responseFinishedTime) * 1000) / 1000;
|
|
2697
|
-
if (self
|
|
2878
|
+
if (self[_DYN_AJAX_TOTAL_DURATION ] < 0) {
|
|
2698
2879
|
return null;
|
|
2699
2880
|
}
|
|
2700
2881
|
var dependency = (_a = {
|
|
2701
|
-
id: "|" + self
|
|
2702
|
-
target: self
|
|
2703
|
-
name: self.getPathName(),
|
|
2704
|
-
type: ajaxType,
|
|
2705
|
-
startTime: null,
|
|
2706
|
-
duration: self.ajaxTotalDuration,
|
|
2707
|
-
success: (+(self.status)) >= 200 && (+(self.status)) < 400,
|
|
2708
|
-
responseCode: (+(self.status)),
|
|
2709
|
-
method: self.method
|
|
2882
|
+
id: "|" + self[_DYN_TRACE_ID ] + "." + self[_DYN_SPAN_ID ],
|
|
2883
|
+
target: self[_DYN_GET_ABSOLUTE_URL ]()
|
|
2710
2884
|
},
|
|
2711
|
-
_a[
|
|
2885
|
+
_a[_DYN_NAME ] = self.getPathName(),
|
|
2886
|
+
_a.type = ajaxType,
|
|
2887
|
+
_a[_DYN_START_TIME ] = null,
|
|
2888
|
+
_a.duration = self[_DYN_AJAX_TOTAL_DURATION ],
|
|
2889
|
+
_a.success = (+(self[_DYN_STATUS ])) >= 200 && (+(self[_DYN_STATUS ])) < 400,
|
|
2890
|
+
_a.responseCode = (+(self[_DYN_STATUS ])),
|
|
2891
|
+
_a.method = self[_DYN_METHOD ],
|
|
2892
|
+
_a[STR_PROPERTIES] = { HttpMethod: self[_DYN_METHOD ] },
|
|
2712
2893
|
_a);
|
|
2713
|
-
if (self
|
|
2714
|
-
dependency
|
|
2715
|
-
dependency.
|
|
2894
|
+
if (self[_DYN_REQUEST_SENT_TIME ]) {
|
|
2895
|
+
dependency[_DYN_START_TIME ] = new Date();
|
|
2896
|
+
dependency[_DYN_START_TIME ].setTime(self[_DYN_REQUEST_SENT_TIME ]);
|
|
2716
2897
|
}
|
|
2717
2898
|
_populatePerfData(self, dependency);
|
|
2718
2899
|
if (enableRequestHeaderTracking) {
|
|
2719
|
-
if (objKeys(self.requestHeaders)
|
|
2720
|
-
dependency[
|
|
2721
|
-
|
|
2900
|
+
if (objKeys(self.requestHeaders)[_DYN_LENGTH ] > 0) {
|
|
2901
|
+
var props = dependency[STR_PROPERTIES ] = dependency[STR_PROPERTIES ] || {};
|
|
2902
|
+
props[_DYN_REQUEST_HEADERS ] = self[_DYN_REQUEST_HEADERS ];
|
|
2722
2903
|
}
|
|
2723
2904
|
}
|
|
2724
2905
|
if (getResponse) {
|
|
2725
2906
|
var response = getResponse();
|
|
2726
2907
|
if (response) {
|
|
2727
|
-
var correlationContext = response
|
|
2908
|
+
var correlationContext = response[_DYN_CORRELATION_CONTEXT ];
|
|
2728
2909
|
if (correlationContext) {
|
|
2729
2910
|
dependency.correlationContext = correlationContext;
|
|
2730
2911
|
}
|
|
2731
|
-
if (response
|
|
2732
|
-
if (objKeys(response.headerMap)
|
|
2733
|
-
dependency[
|
|
2734
|
-
|
|
2912
|
+
if (response[_DYN_HEADER_MAP ]) {
|
|
2913
|
+
if (objKeys(response.headerMap)[_DYN_LENGTH ] > 0) {
|
|
2914
|
+
var props = dependency[STR_PROPERTIES ] = dependency[STR_PROPERTIES ] || {};
|
|
2915
|
+
props.responseHeaders = response[_DYN_HEADER_MAP ];
|
|
2735
2916
|
}
|
|
2736
2917
|
}
|
|
2737
|
-
if (self.errorStatusText && self
|
|
2918
|
+
if (self.errorStatusText && self[_DYN_STATUS ] >= 400) {
|
|
2738
2919
|
var responseType = response.type;
|
|
2739
|
-
dependency[
|
|
2920
|
+
var props = dependency[STR_PROPERTIES ] = dependency[STR_PROPERTIES ] || {};
|
|
2740
2921
|
if (responseType === "" || responseType === "text") {
|
|
2741
|
-
|
|
2922
|
+
props.responseText = response.responseText ? response[_DYN_STATUS_TEXT ] + " - " + response[strResponseText] : response[_DYN_STATUS_TEXT ];
|
|
2742
2923
|
}
|
|
2743
2924
|
if (responseType === "json") {
|
|
2744
|
-
|
|
2925
|
+
props.responseText = response.response ? response[_DYN_STATUS_TEXT ] + " - " + JSON.stringify(response[_DYN_RESPONSE ]) : response[_DYN_STATUS_TEXT ];
|
|
2745
2926
|
}
|
|
2746
2927
|
}
|
|
2747
2928
|
}
|
|
@@ -2750,6 +2931,7 @@
|
|
|
2750
2931
|
};
|
|
2751
2932
|
});
|
|
2752
2933
|
}
|
|
2934
|
+
ajaxRecord.__ieDyn=1;
|
|
2753
2935
|
return ajaxRecord;
|
|
2754
2936
|
}());
|
|
2755
2937
|
|
|
@@ -2803,8 +2985,8 @@
|
|
|
2803
2985
|
try {
|
|
2804
2986
|
if (!isNullOrUndefined(xhr) &&
|
|
2805
2987
|
!isNullOrUndefined(xhr[strAjaxData]) &&
|
|
2806
|
-
!isNullOrUndefined(xhr[strAjaxData]
|
|
2807
|
-
result += "(url: '" + xhr[strAjaxData]
|
|
2988
|
+
!isNullOrUndefined(xhr[strAjaxData][_DYN_REQUEST_URL ])) {
|
|
2989
|
+
result += "(url: '" + xhr[strAjaxData][_DYN_REQUEST_URL ] + "')";
|
|
2808
2990
|
}
|
|
2809
2991
|
}
|
|
2810
2992
|
catch (e) {
|
|
@@ -2820,7 +3002,7 @@
|
|
|
2820
3002
|
function _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, message) {
|
|
2821
3003
|
return function (args) {
|
|
2822
3004
|
_throwInternalCritical(ajaxMonitorInstance, internalMessage, message, {
|
|
2823
|
-
ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(args
|
|
3005
|
+
ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(args[_DYN_INST ]),
|
|
2824
3006
|
exception: dumpObj(args.err)
|
|
2825
3007
|
});
|
|
2826
3008
|
};
|
|
@@ -2832,17 +3014,18 @@
|
|
|
2832
3014
|
return -1;
|
|
2833
3015
|
}
|
|
2834
3016
|
function _processDependencyListeners(listeners, core, ajaxData, xhr, input, init) {
|
|
2835
|
-
var
|
|
3017
|
+
var _a;
|
|
3018
|
+
var initializersCount = listeners[_DYN_LENGTH ];
|
|
2836
3019
|
if (initializersCount > 0) {
|
|
2837
|
-
var details = {
|
|
2838
|
-
|
|
2839
|
-
xhr
|
|
2840
|
-
input
|
|
2841
|
-
init
|
|
2842
|
-
traceId
|
|
2843
|
-
spanId
|
|
2844
|
-
traceFlags
|
|
2845
|
-
|
|
3020
|
+
var details = (_a = {},
|
|
3021
|
+
_a[_DYN_CORE ] = core,
|
|
3022
|
+
_a.xhr = xhr,
|
|
3023
|
+
_a.input = input,
|
|
3024
|
+
_a.init = init,
|
|
3025
|
+
_a.traceId = ajaxData[_DYN_TRACE_ID ],
|
|
3026
|
+
_a.spanId = ajaxData[_DYN_SPAN_ID ],
|
|
3027
|
+
_a.traceFlags = ajaxData[_DYN_TRACE_FLAGS ],
|
|
3028
|
+
_a);
|
|
2846
3029
|
for (var i = 0; i < initializersCount; ++i) {
|
|
2847
3030
|
var dependencyListener = listeners[i];
|
|
2848
3031
|
if (dependencyListener && dependencyListener.fn) {
|
|
@@ -2850,16 +3033,22 @@
|
|
|
2850
3033
|
dependencyListener.fn.call(null, details);
|
|
2851
3034
|
}
|
|
2852
3035
|
catch (e) {
|
|
2853
|
-
var core_1 = details
|
|
3036
|
+
var core_1 = details[_DYN_CORE ];
|
|
2854
3037
|
_throwInternal(core_1 && core_1.logger, 1 , 64 , "Dependency listener [#" + i + "] failed: " + getExceptionName(e), { exception: dumpObj(e) }, true);
|
|
2855
3038
|
}
|
|
2856
3039
|
}
|
|
2857
3040
|
}
|
|
2858
|
-
ajaxData
|
|
2859
|
-
ajaxData
|
|
2860
|
-
ajaxData
|
|
3041
|
+
ajaxData[_DYN_TRACE_ID ] = details.traceId;
|
|
3042
|
+
ajaxData[_DYN_SPAN_ID ] = details.spanId;
|
|
3043
|
+
ajaxData[_DYN_TRACE_FLAGS ] = details[_DYN_TRACE_FLAGS ];
|
|
2861
3044
|
}
|
|
2862
3045
|
}
|
|
3046
|
+
var DfltAjaxCorrelationHeaderExDomains = deepFreeze([
|
|
3047
|
+
"*.blob.core.windows.net",
|
|
3048
|
+
"*.blob.core.chinacloudapi.cn",
|
|
3049
|
+
"*.blob.core.cloudapi.de",
|
|
3050
|
+
"*.blob.core.usgovcloudapi.net"
|
|
3051
|
+
]);
|
|
2863
3052
|
var AjaxMonitor = /** @class */ (function (_super) {
|
|
2864
3053
|
__extendsFn(AjaxMonitor, _super);
|
|
2865
3054
|
function AjaxMonitor() {
|
|
@@ -2907,68 +3096,69 @@
|
|
|
2907
3096
|
_self.trackDependencyData = function (dependency, properties) {
|
|
2908
3097
|
_self[strTrackDependencyDataInternal](dependency, properties);
|
|
2909
3098
|
};
|
|
2910
|
-
_self
|
|
3099
|
+
_self[_DYN_INCLUDE_CORRELATION_0 ] = function (ajaxData, input, init, xhr) {
|
|
2911
3100
|
var currentWindowHost = _self["_currentWindowHost"] || _currentWindowHost;
|
|
2912
|
-
_processDependencyListeners(_dependencyListeners, _self
|
|
3101
|
+
_processDependencyListeners(_dependencyListeners, _self[_DYN_CORE ], ajaxData, xhr, input, init);
|
|
2913
3102
|
if (input) {
|
|
2914
|
-
if (CorrelationIdHelper
|
|
3103
|
+
if (CorrelationIdHelper[_DYN_CAN_INCLUDE_CORRELAT1 ](_config, ajaxData[_DYN_GET_ABSOLUTE_URL ](), currentWindowHost)) {
|
|
2915
3104
|
if (!init) {
|
|
2916
3105
|
init = {};
|
|
2917
3106
|
}
|
|
2918
|
-
|
|
3107
|
+
var headers = new Headers(init[_DYN_HEADERS ] || (input instanceof Request ? (input[_DYN_HEADERS ] || {}) : {}));
|
|
2919
3108
|
if (_isUsingAIHeaders) {
|
|
2920
|
-
var id = "|" + ajaxData
|
|
2921
|
-
|
|
3109
|
+
var id = "|" + ajaxData[_DYN_TRACE_ID ] + "." + ajaxData[_DYN_SPAN_ID ];
|
|
3110
|
+
headers.set(RequestHeaders[3 ], id);
|
|
2922
3111
|
if (_enableRequestHeaderTracking) {
|
|
2923
|
-
ajaxData
|
|
3112
|
+
ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[3 ]] = id;
|
|
2924
3113
|
}
|
|
2925
3114
|
}
|
|
2926
|
-
var appId = _config
|
|
3115
|
+
var appId = _config[_DYN_APP_ID ] || (_context && _context[_DYN_APP_ID ]());
|
|
2927
3116
|
if (appId) {
|
|
2928
|
-
|
|
3117
|
+
headers.set(RequestHeaders[0 ], RequestHeaders[2 ] + appId);
|
|
2929
3118
|
if (_enableRequestHeaderTracking) {
|
|
2930
|
-
ajaxData
|
|
3119
|
+
ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[0 ]] = RequestHeaders[2 ] + appId;
|
|
2931
3120
|
}
|
|
2932
3121
|
}
|
|
2933
3122
|
if (_isUsingW3CHeaders) {
|
|
2934
|
-
var traceFlags = ajaxData
|
|
3123
|
+
var traceFlags = ajaxData[_DYN_TRACE_FLAGS ];
|
|
2935
3124
|
if (isNullOrUndefined(traceFlags)) {
|
|
2936
3125
|
traceFlags = 0x01;
|
|
2937
3126
|
}
|
|
2938
|
-
var traceParent = formatTraceParent(createTraceParent(ajaxData
|
|
2939
|
-
|
|
3127
|
+
var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID ], ajaxData[_DYN_SPAN_ID ], traceFlags));
|
|
3128
|
+
headers.set(RequestHeaders[4 ], traceParent);
|
|
2940
3129
|
if (_enableRequestHeaderTracking) {
|
|
2941
|
-
ajaxData
|
|
3130
|
+
ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[4 ]] = traceParent;
|
|
2942
3131
|
}
|
|
2943
3132
|
}
|
|
3133
|
+
init[_DYN_HEADERS ] = headers;
|
|
2944
3134
|
}
|
|
2945
3135
|
return init;
|
|
2946
3136
|
}
|
|
2947
3137
|
else if (xhr) {
|
|
2948
|
-
if (CorrelationIdHelper
|
|
3138
|
+
if (CorrelationIdHelper[_DYN_CAN_INCLUDE_CORRELAT1 ](_config, ajaxData[_DYN_GET_ABSOLUTE_URL ](), currentWindowHost)) {
|
|
2949
3139
|
if (_isUsingAIHeaders) {
|
|
2950
|
-
var id = "|" + ajaxData
|
|
2951
|
-
xhr
|
|
3140
|
+
var id = "|" + ajaxData[_DYN_TRACE_ID ] + "." + ajaxData[_DYN_SPAN_ID ];
|
|
3141
|
+
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[3 ], id);
|
|
2952
3142
|
if (_enableRequestHeaderTracking) {
|
|
2953
|
-
ajaxData
|
|
3143
|
+
ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[3 ]] = id;
|
|
2954
3144
|
}
|
|
2955
3145
|
}
|
|
2956
|
-
var appId = _config
|
|
3146
|
+
var appId = _config[_DYN_APP_ID ] || (_context && _context[_DYN_APP_ID ]());
|
|
2957
3147
|
if (appId) {
|
|
2958
|
-
xhr
|
|
3148
|
+
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[0 ], RequestHeaders[2 ] + appId);
|
|
2959
3149
|
if (_enableRequestHeaderTracking) {
|
|
2960
|
-
ajaxData
|
|
3150
|
+
ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[0 ]] = RequestHeaders[2 ] + appId;
|
|
2961
3151
|
}
|
|
2962
3152
|
}
|
|
2963
3153
|
if (_isUsingW3CHeaders) {
|
|
2964
|
-
var traceFlags = ajaxData
|
|
3154
|
+
var traceFlags = ajaxData[_DYN_TRACE_FLAGS ];
|
|
2965
3155
|
if (isNullOrUndefined(traceFlags)) {
|
|
2966
3156
|
traceFlags = 0x01;
|
|
2967
3157
|
}
|
|
2968
|
-
var traceParent = formatTraceParent(createTraceParent(ajaxData
|
|
2969
|
-
xhr
|
|
3158
|
+
var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID ], ajaxData[_DYN_SPAN_ID ], traceFlags));
|
|
3159
|
+
xhr[_DYN_SET_REQUEST_HEADER ](RequestHeaders[4 ], traceParent);
|
|
2970
3160
|
if (_enableRequestHeaderTracking) {
|
|
2971
|
-
ajaxData
|
|
3161
|
+
ajaxData[_DYN_REQUEST_HEADERS ][RequestHeaders[4 ]] = traceParent;
|
|
2972
3162
|
}
|
|
2973
3163
|
}
|
|
2974
3164
|
}
|
|
@@ -2978,16 +3168,16 @@
|
|
|
2978
3168
|
};
|
|
2979
3169
|
_self[strTrackDependencyDataInternal] = function (dependency, properties, systemProperties) {
|
|
2980
3170
|
if (_maxAjaxCallsPerView === -1 || _trackAjaxAttempts < _maxAjaxCallsPerView) {
|
|
2981
|
-
if ((_config
|
|
2982
|
-
|| _config
|
|
2983
|
-
&& typeof dependency.id === "string" && dependency.id[dependency.id
|
|
3171
|
+
if ((_config[_DYN_DISTRIBUTED_TRACING_2 ] === 2
|
|
3172
|
+
|| _config[_DYN_DISTRIBUTED_TRACING_2 ] === 1 )
|
|
3173
|
+
&& typeof dependency.id === "string" && dependency.id[dependency.id[_DYN_LENGTH ] - 1] !== ".") {
|
|
2984
3174
|
dependency.id += ".";
|
|
2985
3175
|
}
|
|
2986
|
-
if (isNullOrUndefined(dependency
|
|
2987
|
-
dependency
|
|
3176
|
+
if (isNullOrUndefined(dependency[_DYN_START_TIME ])) {
|
|
3177
|
+
dependency[_DYN_START_TIME ] = new Date();
|
|
2988
3178
|
}
|
|
2989
3179
|
var item = createTelemetryItem(dependency, RemoteDependencyData.dataType, RemoteDependencyData.envelopeType, _self[strDiagLog](), properties, systemProperties);
|
|
2990
|
-
_self.
|
|
3180
|
+
_self[_DYN_CORE ].track(item);
|
|
2991
3181
|
}
|
|
2992
3182
|
else if (_trackAjaxAttempts === _maxAjaxCallsPerView) {
|
|
2993
3183
|
_throwInternalCritical(_self, 55 , "Maximum ajax per page view limit reached, ajax monitoring is paused until the next trackPageView(). In order to increase the limit set the maxAjaxCallsPerView configuration parameter.", true);
|
|
@@ -3016,7 +3206,7 @@
|
|
|
3016
3206
|
var location = getLocation();
|
|
3017
3207
|
_fetchInitialized = false;
|
|
3018
3208
|
_xhrInitialized = false;
|
|
3019
|
-
_currentWindowHost = location && location.host && location.host
|
|
3209
|
+
_currentWindowHost = location && location.host && location.host[_DYN_TO_LOWER_CASE ]();
|
|
3020
3210
|
_config = AjaxMonitor.getEmptyConfig();
|
|
3021
3211
|
_enableRequestHeaderTracking = false;
|
|
3022
3212
|
_enableAjaxErrorStatusText = false;
|
|
@@ -3038,36 +3228,36 @@
|
|
|
3038
3228
|
_dependencyListeners = [];
|
|
3039
3229
|
}
|
|
3040
3230
|
function _populateDefaults(config) {
|
|
3041
|
-
var ctx = createProcessTelemetryContext(null, config, _self
|
|
3231
|
+
var ctx = createProcessTelemetryContext(null, config, _self[_DYN_CORE ]);
|
|
3042
3232
|
_config = AjaxMonitor.getEmptyConfig();
|
|
3043
|
-
var defaultConfig = AjaxMonitor
|
|
3233
|
+
var defaultConfig = AjaxMonitor[_DYN_GET_DEFAULT_CONFIG ]();
|
|
3044
3234
|
objForEachKey(defaultConfig, function (field, value) {
|
|
3045
3235
|
_config[field] = ctx.getConfig(AjaxMonitor.identifier, field, value);
|
|
3046
3236
|
});
|
|
3047
|
-
var distributedTracingMode = _config
|
|
3048
|
-
_enableRequestHeaderTracking = _config
|
|
3049
|
-
_enableAjaxErrorStatusText = _config
|
|
3050
|
-
_enableAjaxPerfTracking = _config
|
|
3051
|
-
_maxAjaxCallsPerView = _config
|
|
3052
|
-
_enableResponseHeaderTracking = _config
|
|
3053
|
-
_excludeRequestFromAutoTrackingPatterns = _config
|
|
3054
|
-
_addRequestContext = _config
|
|
3237
|
+
var distributedTracingMode = _config[_DYN_DISTRIBUTED_TRACING_2 ];
|
|
3238
|
+
_enableRequestHeaderTracking = _config[_DYN_ENABLE_REQUEST_HEADE3 ];
|
|
3239
|
+
_enableAjaxErrorStatusText = _config[_DYN_ENABLE_AJAX_ERROR_ST4 ];
|
|
3240
|
+
_enableAjaxPerfTracking = _config[_DYN_ENABLE_AJAX_PERF_TRA5 ];
|
|
3241
|
+
_maxAjaxCallsPerView = _config[_DYN_MAX_AJAX_CALLS_PER_V6 ];
|
|
3242
|
+
_enableResponseHeaderTracking = _config[_DYN_ENABLE_RESPONSE_HEAD7 ];
|
|
3243
|
+
_excludeRequestFromAutoTrackingPatterns = _config[_DYN_EXCLUDE_REQUEST_FROM8 ];
|
|
3244
|
+
_addRequestContext = _config[_DYN_ADD_REQUEST_CONTEXT ];
|
|
3055
3245
|
_isUsingAIHeaders = distributedTracingMode === 0 || distributedTracingMode === 1 ;
|
|
3056
3246
|
_isUsingW3CHeaders = distributedTracingMode === 1 || distributedTracingMode === 2 ;
|
|
3057
3247
|
if (_enableAjaxPerfTracking) {
|
|
3058
3248
|
var iKey = config.instrumentationKey || "unkwn";
|
|
3059
|
-
if (iKey
|
|
3060
|
-
_markPrefix = AJAX_MONITOR_PREFIX + iKey.substring(iKey
|
|
3249
|
+
if (iKey[_DYN_LENGTH ] > 5) {
|
|
3250
|
+
_markPrefix = AJAX_MONITOR_PREFIX + iKey.substring(iKey[_DYN_LENGTH ] - 5) + ".";
|
|
3061
3251
|
}
|
|
3062
3252
|
else {
|
|
3063
3253
|
_markPrefix = AJAX_MONITOR_PREFIX + iKey + ".";
|
|
3064
3254
|
}
|
|
3065
3255
|
}
|
|
3066
|
-
_disableAjaxTracking = !!_config
|
|
3067
|
-
_disableFetchTracking = !!_config
|
|
3256
|
+
_disableAjaxTracking = !!_config[_DYN_DISABLE_AJAX_TRACKIN9 ];
|
|
3257
|
+
_disableFetchTracking = !!_config[_DYN_DISABLE_FETCH_TRACKI10 ];
|
|
3068
3258
|
}
|
|
3069
3259
|
function _populateContext() {
|
|
3070
|
-
var propExt = _self.
|
|
3260
|
+
var propExt = _self[_DYN_CORE ].getPlugin(PropertiesPluginIdentifier);
|
|
3071
3261
|
if (propExt) {
|
|
3072
3262
|
_context = propExt.plugin.context;
|
|
3073
3263
|
}
|
|
@@ -3076,7 +3266,7 @@
|
|
|
3076
3266
|
var rlt = true;
|
|
3077
3267
|
if (header || _config.ignoreHeaders) {
|
|
3078
3268
|
arrForEach(_config.ignoreHeaders, (function (key) {
|
|
3079
|
-
if (key
|
|
3269
|
+
if (key[_DYN_TO_LOWER_CASE ]() === header[_DYN_TO_LOWER_CASE ]()) {
|
|
3080
3270
|
rlt = false;
|
|
3081
3271
|
return -1;
|
|
3082
3272
|
}
|
|
@@ -3101,7 +3291,7 @@
|
|
|
3101
3291
|
!(isPolyfill && _xhrInitialized)) {
|
|
3102
3292
|
var ctx = callDetails.ctx();
|
|
3103
3293
|
fetchData = _createFetchRecord(input, init);
|
|
3104
|
-
var newInit = _self
|
|
3294
|
+
var newInit = _self[_DYN_INCLUDE_CORRELATION_0 ](fetchData, input, init);
|
|
3105
3295
|
if (newInit !== init) {
|
|
3106
3296
|
callDetails.set(1, newInit);
|
|
3107
3297
|
}
|
|
@@ -3113,12 +3303,14 @@
|
|
|
3113
3303
|
var fetchData_1 = callDetails.ctx().data;
|
|
3114
3304
|
if (fetchData_1) {
|
|
3115
3305
|
callDetails.rslt = callDetails.rslt.then(function (response) {
|
|
3116
|
-
_reportFetchMetrics(callDetails, (response || {})
|
|
3117
|
-
var
|
|
3118
|
-
|
|
3119
|
-
|
|
3120
|
-
|
|
3121
|
-
|
|
3306
|
+
_reportFetchMetrics(callDetails, (response || {})[_DYN_STATUS ], input, response, fetchData_1, function () {
|
|
3307
|
+
var _a;
|
|
3308
|
+
var ajaxResponse = (_a = {
|
|
3309
|
+
statusText: response[_DYN_STATUS_TEXT ]
|
|
3310
|
+
},
|
|
3311
|
+
_a[_DYN_HEADER_MAP ] = null,
|
|
3312
|
+
_a[_DYN_CORRELATION_CONTEXT ] = _getFetchCorrelationContext(response),
|
|
3313
|
+
_a);
|
|
3122
3314
|
if (_enableResponseHeaderTracking) {
|
|
3123
3315
|
var responseHeaderMap_1 = {};
|
|
3124
3316
|
response.headers.forEach(function (value, name) {
|
|
@@ -3126,7 +3318,7 @@
|
|
|
3126
3318
|
responseHeaderMap_1[name] = value;
|
|
3127
3319
|
}
|
|
3128
3320
|
});
|
|
3129
|
-
ajaxResponse
|
|
3321
|
+
ajaxResponse[_DYN_HEADER_MAP ] = responseHeaderMap_1;
|
|
3130
3322
|
}
|
|
3131
3323
|
return ajaxResponse;
|
|
3132
3324
|
});
|
|
@@ -3163,10 +3355,10 @@
|
|
|
3163
3355
|
ns: _evtNamespace,
|
|
3164
3356
|
req: function (args, method, url, async) {
|
|
3165
3357
|
if (!_disableAjaxTracking) {
|
|
3166
|
-
var xhr = args
|
|
3358
|
+
var xhr = args[_DYN_INST ];
|
|
3167
3359
|
var ajaxData = xhr[strAjaxData];
|
|
3168
3360
|
if (!_isDisabledRequest(xhr, url) && _isMonitoredXhrInstance(xhr, true)) {
|
|
3169
|
-
if (!ajaxData || !ajaxData.xhrMonitoringState
|
|
3361
|
+
if (!ajaxData || !ajaxData.xhrMonitoringState[_DYN_OPEN_DONE ]) {
|
|
3170
3362
|
_openHandler(xhr, method, url, async);
|
|
3171
3363
|
}
|
|
3172
3364
|
_attachToOnReadyStateChange(xhr);
|
|
@@ -3179,13 +3371,13 @@
|
|
|
3179
3371
|
ns: _evtNamespace,
|
|
3180
3372
|
req: function (args, context) {
|
|
3181
3373
|
if (!_disableAjaxTracking) {
|
|
3182
|
-
var xhr = args
|
|
3374
|
+
var xhr = args[_DYN_INST ];
|
|
3183
3375
|
var ajaxData = xhr[strAjaxData];
|
|
3184
|
-
if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState
|
|
3376
|
+
if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState[_DYN_SEND_DONE ]) {
|
|
3185
3377
|
_createMarkId("xhr", ajaxData);
|
|
3186
|
-
ajaxData
|
|
3187
|
-
_self
|
|
3188
|
-
ajaxData.xhrMonitoringState
|
|
3378
|
+
ajaxData[_DYN_REQUEST_SENT_TIME ] = dateTimeUtilsNow();
|
|
3379
|
+
_self[_DYN_INCLUDE_CORRELATION_0 ](ajaxData, undefined, undefined, xhr);
|
|
3380
|
+
ajaxData.xhrMonitoringState[_DYN_SEND_DONE ] = true;
|
|
3189
3381
|
}
|
|
3190
3382
|
}
|
|
3191
3383
|
},
|
|
@@ -3195,11 +3387,11 @@
|
|
|
3195
3387
|
ns: _evtNamespace,
|
|
3196
3388
|
req: function (args) {
|
|
3197
3389
|
if (!_disableAjaxTracking) {
|
|
3198
|
-
var xhr = args
|
|
3390
|
+
var xhr = args[_DYN_INST ];
|
|
3199
3391
|
var ajaxData = xhr[strAjaxData];
|
|
3200
|
-
if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState
|
|
3392
|
+
if (_isMonitoredXhrInstance(xhr) && !ajaxData.xhrMonitoringState[_DYN_ABORT_DONE ]) {
|
|
3201
3393
|
ajaxData.aborted = 1;
|
|
3202
|
-
ajaxData.xhrMonitoringState
|
|
3394
|
+
ajaxData.xhrMonitoringState[_DYN_ABORT_DONE ] = true;
|
|
3203
3395
|
}
|
|
3204
3396
|
}
|
|
3205
3397
|
},
|
|
@@ -3209,9 +3401,9 @@
|
|
|
3209
3401
|
ns: _evtNamespace,
|
|
3210
3402
|
req: function (args, header, value) {
|
|
3211
3403
|
if (!_disableAjaxTracking && _enableRequestHeaderTracking) {
|
|
3212
|
-
var xhr = args
|
|
3404
|
+
var xhr = args[_DYN_INST ];
|
|
3213
3405
|
if (_isMonitoredXhrInstance(xhr) && _canIncludeHeaders(header)) {
|
|
3214
|
-
xhr[strAjaxData]
|
|
3406
|
+
xhr[strAjaxData][_DYN_REQUEST_HEADERS ][header] = value;
|
|
3215
3407
|
}
|
|
3216
3408
|
}
|
|
3217
3409
|
},
|
|
@@ -3222,7 +3414,7 @@
|
|
|
3222
3414
|
}
|
|
3223
3415
|
function _isDisabledRequest(xhr, request, init) {
|
|
3224
3416
|
var isDisabled = false;
|
|
3225
|
-
var theUrl = ((!isString(request) ? (request || {}).url || "" : request) || "")
|
|
3417
|
+
var theUrl = ((!isString(request) ? (request || {}).url || "" : request) || "")[_DYN_TO_LOWER_CASE ]();
|
|
3226
3418
|
arrForEach(_excludeRequestFromAutoTrackingPatterns, function (regex) {
|
|
3227
3419
|
var theRegex = regex;
|
|
3228
3420
|
if (isString(regex)) {
|
|
@@ -3276,8 +3468,8 @@
|
|
|
3276
3468
|
}
|
|
3277
3469
|
function _getDistributedTraceCtx() {
|
|
3278
3470
|
var distributedTraceCtx = null;
|
|
3279
|
-
if (_self
|
|
3280
|
-
distributedTraceCtx = _self.
|
|
3471
|
+
if (_self[_DYN_CORE ] && _self[_DYN_CORE ].getTraceCtx) {
|
|
3472
|
+
distributedTraceCtx = _self[_DYN_CORE ].getTraceCtx(false);
|
|
3281
3473
|
}
|
|
3282
3474
|
if (!distributedTraceCtx && _context && _context.telemetryTrace) {
|
|
3283
3475
|
distributedTraceCtx = createDistributedTraceContextFromTrace(_context.telemetryTrace);
|
|
@@ -3289,17 +3481,18 @@
|
|
|
3289
3481
|
var traceID = (distributedTraceCtx && distributedTraceCtx.getTraceId()) || generateW3CId();
|
|
3290
3482
|
var spanID = generateW3CId().substr(0, 16);
|
|
3291
3483
|
var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog]());
|
|
3292
|
-
ajaxData
|
|
3293
|
-
ajaxData
|
|
3294
|
-
ajaxData
|
|
3295
|
-
ajaxData.xhrMonitoringState
|
|
3296
|
-
ajaxData
|
|
3484
|
+
ajaxData[_DYN_TRACE_FLAGS ] = distributedTraceCtx && distributedTraceCtx.getTraceFlags();
|
|
3485
|
+
ajaxData[_DYN_METHOD ] = method;
|
|
3486
|
+
ajaxData[_DYN_REQUEST_URL ] = url;
|
|
3487
|
+
ajaxData.xhrMonitoringState[_DYN_OPEN_DONE ] = true;
|
|
3488
|
+
ajaxData[_DYN_REQUEST_HEADERS ] = {};
|
|
3297
3489
|
ajaxData.async = async;
|
|
3298
|
-
ajaxData
|
|
3490
|
+
ajaxData[_DYN_ERROR_STATUS_TEXT ] = _enableAjaxErrorStatusText;
|
|
3299
3491
|
xhr[strAjaxData] = ajaxData;
|
|
3300
3492
|
}
|
|
3301
3493
|
function _attachToOnReadyStateChange(xhr) {
|
|
3302
|
-
xhr[strAjaxData].xhrMonitoringState
|
|
3494
|
+
xhr[strAjaxData].xhrMonitoringState[_DYN_STATE_CHANGE_ATTACHE11 ] = eventOn(xhr, "readystatechange", function () {
|
|
3495
|
+
var _a;
|
|
3303
3496
|
try {
|
|
3304
3497
|
if (xhr && xhr.readyState === 4 && _isMonitoredXhrInstance(xhr)) {
|
|
3305
3498
|
_onAjaxComplete(xhr);
|
|
@@ -3307,11 +3500,11 @@
|
|
|
3307
3500
|
}
|
|
3308
3501
|
catch (e) {
|
|
3309
3502
|
var exceptionText = dumpObj(e);
|
|
3310
|
-
if (!exceptionText || _indexOf(exceptionText
|
|
3311
|
-
_throwInternalCritical(_self, 16 , "Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.", {
|
|
3312
|
-
|
|
3313
|
-
exception
|
|
3314
|
-
|
|
3503
|
+
if (!exceptionText || _indexOf(exceptionText[_DYN_TO_LOWER_CASE ](), "c00c023f") === -1) {
|
|
3504
|
+
_throwInternalCritical(_self, 16 , "Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.", (_a = {},
|
|
3505
|
+
_a[_DYN_AJAX_DIAGNOSTICS_MES16 ] = _getFailedAjaxDiagnosticsMessage(xhr),
|
|
3506
|
+
_a.exception = exceptionText,
|
|
3507
|
+
_a));
|
|
3315
3508
|
}
|
|
3316
3509
|
}
|
|
3317
3510
|
}, _evtNamespace);
|
|
@@ -3320,7 +3513,7 @@
|
|
|
3320
3513
|
try {
|
|
3321
3514
|
var responseType = xhr.responseType;
|
|
3322
3515
|
if (responseType === "" || responseType === "text") {
|
|
3323
|
-
return xhr
|
|
3516
|
+
return xhr[_DYN_RESPONSE_TEXT ];
|
|
3324
3517
|
}
|
|
3325
3518
|
}
|
|
3326
3519
|
catch (e) {
|
|
@@ -3329,8 +3522,8 @@
|
|
|
3329
3522
|
}
|
|
3330
3523
|
function _onAjaxComplete(xhr) {
|
|
3331
3524
|
var ajaxData = xhr[strAjaxData];
|
|
3332
|
-
ajaxData
|
|
3333
|
-
ajaxData
|
|
3525
|
+
ajaxData[_DYN_RESPONSE_FINISHED_TI12 ] = dateTimeUtilsNow();
|
|
3526
|
+
ajaxData[_DYN_STATUS ] = xhr[_DYN_STATUS ];
|
|
3334
3527
|
function _reportXhrError(e, failedProps) {
|
|
3335
3528
|
var errorProps = failedProps || {};
|
|
3336
3529
|
errorProps["ajaxDiagnosticsMessage"] = _getFailedAjaxDiagnosticsMessage(xhr);
|
|
@@ -3341,17 +3534,19 @@
|
|
|
3341
3534
|
}
|
|
3342
3535
|
_findPerfResourceEntry("xmlhttprequest", ajaxData, function () {
|
|
3343
3536
|
try {
|
|
3344
|
-
var dependency = ajaxData
|
|
3345
|
-
var
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3349
|
-
|
|
3350
|
-
|
|
3351
|
-
|
|
3352
|
-
|
|
3537
|
+
var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM ]("Ajax", _enableRequestHeaderTracking, function () {
|
|
3538
|
+
var _a;
|
|
3539
|
+
var ajaxResponse = (_a = {
|
|
3540
|
+
statusText: xhr[_DYN_STATUS_TEXT ]
|
|
3541
|
+
},
|
|
3542
|
+
_a[_DYN_HEADER_MAP ] = null,
|
|
3543
|
+
_a[_DYN_CORRELATION_CONTEXT ] = _getAjaxCorrelationContext(xhr),
|
|
3544
|
+
_a.type = xhr.responseType,
|
|
3545
|
+
_a[_DYN_RESPONSE_TEXT ] = _getResponseText(xhr),
|
|
3546
|
+
_a.response = xhr[_DYN_RESPONSE ],
|
|
3547
|
+
_a);
|
|
3353
3548
|
if (_enableResponseHeaderTracking) {
|
|
3354
|
-
var headers = xhr
|
|
3549
|
+
var headers = xhr[_DYN_GET_ALL_RESPONSE_HEA13 ]();
|
|
3355
3550
|
if (headers) {
|
|
3356
3551
|
var arr = strTrim(headers).split(/[\r\n]+/);
|
|
3357
3552
|
var responseHeaderMap_2 = {};
|
|
@@ -3363,7 +3558,7 @@
|
|
|
3363
3558
|
responseHeaderMap_2[header] = value;
|
|
3364
3559
|
}
|
|
3365
3560
|
});
|
|
3366
|
-
ajaxResponse
|
|
3561
|
+
ajaxResponse[_DYN_HEADER_MAP ] = responseHeaderMap_2;
|
|
3367
3562
|
}
|
|
3368
3563
|
}
|
|
3369
3564
|
return ajaxResponse;
|
|
@@ -3371,7 +3566,7 @@
|
|
|
3371
3566
|
var properties = void 0;
|
|
3372
3567
|
try {
|
|
3373
3568
|
if (!!_addRequestContext) {
|
|
3374
|
-
properties = _addRequestContext({ status: xhr
|
|
3569
|
+
properties = _addRequestContext({ status: xhr[_DYN_STATUS ], xhr: xhr });
|
|
3375
3570
|
}
|
|
3376
3571
|
}
|
|
3377
3572
|
catch (e) {
|
|
@@ -3379,14 +3574,14 @@
|
|
|
3379
3574
|
}
|
|
3380
3575
|
if (dependency) {
|
|
3381
3576
|
if (properties !== undefined) {
|
|
3382
|
-
dependency
|
|
3577
|
+
dependency[STR_PROPERTIES ] = __assignFn(__assignFn({}, dependency.properties), properties);
|
|
3383
3578
|
}
|
|
3384
3579
|
_self[strTrackDependencyDataInternal](dependency);
|
|
3385
3580
|
}
|
|
3386
3581
|
else {
|
|
3387
3582
|
_reportXhrError(null, {
|
|
3388
|
-
requestSentTime: ajaxData
|
|
3389
|
-
responseFinishedTime: ajaxData
|
|
3583
|
+
requestSentTime: ajaxData[_DYN_REQUEST_SENT_TIME ],
|
|
3584
|
+
responseFinishedTime: ajaxData[_DYN_RESPONSE_FINISHED_TI12 ]
|
|
3390
3585
|
});
|
|
3391
3586
|
}
|
|
3392
3587
|
}
|
|
@@ -3402,43 +3597,44 @@
|
|
|
3402
3597
|
});
|
|
3403
3598
|
}
|
|
3404
3599
|
function _getAjaxCorrelationContext(xhr) {
|
|
3600
|
+
var _a;
|
|
3405
3601
|
try {
|
|
3406
|
-
var responseHeadersString = xhr
|
|
3602
|
+
var responseHeadersString = xhr[_DYN_GET_ALL_RESPONSE_HEA13 ]();
|
|
3407
3603
|
if (responseHeadersString !== null) {
|
|
3408
|
-
var index = _indexOf(responseHeadersString
|
|
3604
|
+
var index = _indexOf(responseHeadersString[_DYN_TO_LOWER_CASE ](), RequestHeaders[8 ]);
|
|
3409
3605
|
if (index !== -1) {
|
|
3410
3606
|
var responseHeader = xhr.getResponseHeader(RequestHeaders[0 ]);
|
|
3411
|
-
return CorrelationIdHelper
|
|
3607
|
+
return CorrelationIdHelper[_DYN_GET_CORRELATION_CONT14 ](responseHeader);
|
|
3412
3608
|
}
|
|
3413
3609
|
}
|
|
3414
3610
|
}
|
|
3415
3611
|
catch (e) {
|
|
3416
|
-
_throwInternalWarning(_self, 18 , "Failed to get Request-Context correlation header as it may be not included in the response or not accessible.", {
|
|
3417
|
-
|
|
3418
|
-
exception
|
|
3419
|
-
|
|
3612
|
+
_throwInternalWarning(_self, 18 , "Failed to get Request-Context correlation header as it may be not included in the response or not accessible.", (_a = {},
|
|
3613
|
+
_a[_DYN_AJAX_DIAGNOSTICS_MES16 ] = _getFailedAjaxDiagnosticsMessage(xhr),
|
|
3614
|
+
_a.exception = dumpObj(e),
|
|
3615
|
+
_a));
|
|
3420
3616
|
}
|
|
3421
3617
|
}
|
|
3422
3618
|
function _createMarkId(type, ajaxData) {
|
|
3423
|
-
if (ajaxData
|
|
3619
|
+
if (ajaxData[_DYN_REQUEST_URL ] && _markPrefix && _enableAjaxPerfTracking) {
|
|
3424
3620
|
var performance_1 = getPerformance();
|
|
3425
3621
|
if (performance_1 && isFunction(performance_1.mark)) {
|
|
3426
3622
|
_markCount++;
|
|
3427
3623
|
var markId = _markPrefix + type + "#" + _markCount;
|
|
3428
3624
|
performance_1.mark(markId);
|
|
3429
3625
|
var entries = performance_1.getEntriesByName(markId);
|
|
3430
|
-
if (entries && entries
|
|
3431
|
-
ajaxData
|
|
3626
|
+
if (entries && entries[_DYN_LENGTH ] === 1) {
|
|
3627
|
+
ajaxData[_DYN_PERF_MARK ] = entries[0];
|
|
3432
3628
|
}
|
|
3433
3629
|
}
|
|
3434
3630
|
}
|
|
3435
3631
|
}
|
|
3436
3632
|
function _findPerfResourceEntry(initiatorType, ajaxData, trackCallback, reportError) {
|
|
3437
|
-
var perfMark = ajaxData
|
|
3633
|
+
var perfMark = ajaxData[_DYN_PERF_MARK ];
|
|
3438
3634
|
var performance = getPerformance();
|
|
3439
3635
|
var maxAttempts = _config.maxAjaxPerfLookupAttempts;
|
|
3440
|
-
var retryDelay = _config
|
|
3441
|
-
var requestUrl = ajaxData
|
|
3636
|
+
var retryDelay = _config[_DYN_AJAX_PERF_LOOKUP_DEL15 ];
|
|
3637
|
+
var requestUrl = ajaxData[_DYN_REQUEST_URL ];
|
|
3442
3638
|
var attempt = 0;
|
|
3443
3639
|
(function locateResourceTiming() {
|
|
3444
3640
|
try {
|
|
@@ -3446,31 +3642,31 @@
|
|
|
3446
3642
|
attempt++;
|
|
3447
3643
|
var perfTiming = null;
|
|
3448
3644
|
var entries = performance.getEntries();
|
|
3449
|
-
for (var lp = entries
|
|
3645
|
+
for (var lp = entries[_DYN_LENGTH ] - 1; lp >= 0; lp--) {
|
|
3450
3646
|
var entry = entries[lp];
|
|
3451
3647
|
if (entry) {
|
|
3452
3648
|
if (entry.entryType === "resource") {
|
|
3453
3649
|
if (entry.initiatorType === initiatorType &&
|
|
3454
|
-
(_indexOf(entry
|
|
3650
|
+
(_indexOf(entry[_DYN_NAME ], requestUrl) !== -1 || _indexOf(requestUrl, entry[_DYN_NAME ]) !== -1)) {
|
|
3455
3651
|
perfTiming = entry;
|
|
3456
3652
|
}
|
|
3457
3653
|
}
|
|
3458
|
-
else if (entry.entryType === "mark" && entry
|
|
3459
|
-
ajaxData
|
|
3654
|
+
else if (entry.entryType === "mark" && entry[_DYN_NAME ] === perfMark[_DYN_NAME ]) {
|
|
3655
|
+
ajaxData[_DYN_PERF_TIMING ] = perfTiming;
|
|
3460
3656
|
break;
|
|
3461
3657
|
}
|
|
3462
|
-
if (entry
|
|
3658
|
+
if (entry[_DYN_START_TIME ] < perfMark[_DYN_START_TIME ] - 1000) {
|
|
3463
3659
|
break;
|
|
3464
3660
|
}
|
|
3465
3661
|
}
|
|
3466
3662
|
}
|
|
3467
3663
|
}
|
|
3468
3664
|
if (!perfMark ||
|
|
3469
|
-
ajaxData
|
|
3665
|
+
ajaxData[_DYN_PERF_TIMING ] ||
|
|
3470
3666
|
attempt >= maxAttempts ||
|
|
3471
3667
|
ajaxData.async === false) {
|
|
3472
3668
|
if (perfMark && isFunction(performance.clearMarks)) {
|
|
3473
|
-
performance.clearMarks(perfMark
|
|
3669
|
+
performance.clearMarks(perfMark[_DYN_NAME ]);
|
|
3474
3670
|
}
|
|
3475
3671
|
ajaxData.perfAttempts = attempt;
|
|
3476
3672
|
trackCallback();
|
|
@@ -3489,33 +3685,33 @@
|
|
|
3489
3685
|
var traceID = (distributedTraceCtx && distributedTraceCtx.getTraceId()) || generateW3CId();
|
|
3490
3686
|
var spanID = generateW3CId().substr(0, 16);
|
|
3491
3687
|
var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog]());
|
|
3492
|
-
ajaxData
|
|
3493
|
-
ajaxData
|
|
3494
|
-
ajaxData
|
|
3688
|
+
ajaxData[_DYN_TRACE_FLAGS ] = distributedTraceCtx && distributedTraceCtx.getTraceFlags();
|
|
3689
|
+
ajaxData[_DYN_REQUEST_SENT_TIME ] = dateTimeUtilsNow();
|
|
3690
|
+
ajaxData[_DYN_ERROR_STATUS_TEXT ] = _enableAjaxErrorStatusText;
|
|
3495
3691
|
if (input instanceof Request) {
|
|
3496
|
-
ajaxData
|
|
3692
|
+
ajaxData[_DYN_REQUEST_URL ] = input ? input.url : "";
|
|
3497
3693
|
}
|
|
3498
3694
|
else {
|
|
3499
|
-
ajaxData
|
|
3695
|
+
ajaxData[_DYN_REQUEST_URL ] = input;
|
|
3500
3696
|
}
|
|
3501
3697
|
var method = "GET";
|
|
3502
|
-
if (init && init
|
|
3503
|
-
method = init
|
|
3698
|
+
if (init && init[_DYN_METHOD ]) {
|
|
3699
|
+
method = init[_DYN_METHOD ];
|
|
3504
3700
|
}
|
|
3505
3701
|
else if (input && input instanceof Request) {
|
|
3506
|
-
method = input
|
|
3702
|
+
method = input[_DYN_METHOD ];
|
|
3507
3703
|
}
|
|
3508
|
-
ajaxData
|
|
3704
|
+
ajaxData[_DYN_METHOD ] = method;
|
|
3509
3705
|
var requestHeaders = {};
|
|
3510
3706
|
if (_enableRequestHeaderTracking) {
|
|
3511
|
-
var headers = new Headers((init ? init
|
|
3707
|
+
var headers = new Headers((init ? init[_DYN_HEADERS ] : 0) || (input instanceof Request ? (input[_DYN_HEADERS ] || {}) : {}));
|
|
3512
3708
|
headers.forEach(function (value, key) {
|
|
3513
3709
|
if (_canIncludeHeaders(key)) {
|
|
3514
3710
|
requestHeaders[key] = value;
|
|
3515
3711
|
}
|
|
3516
3712
|
});
|
|
3517
3713
|
}
|
|
3518
|
-
ajaxData
|
|
3714
|
+
ajaxData[_DYN_REQUEST_HEADERS ] = requestHeaders;
|
|
3519
3715
|
_createMarkId("fetch", ajaxData);
|
|
3520
3716
|
return ajaxData;
|
|
3521
3717
|
}
|
|
@@ -3548,10 +3744,10 @@
|
|
|
3548
3744
|
}
|
|
3549
3745
|
_throwInternalWarning(_self, msgId, "Failed to calculate the duration of the fetch call, monitoring data for this fetch call won't be sent.", errorProps);
|
|
3550
3746
|
}
|
|
3551
|
-
ajaxData
|
|
3552
|
-
ajaxData
|
|
3747
|
+
ajaxData[_DYN_RESPONSE_FINISHED_TI12 ] = dateTimeUtilsNow();
|
|
3748
|
+
ajaxData[_DYN_STATUS ] = status;
|
|
3553
3749
|
_findPerfResourceEntry("fetch", ajaxData, function () {
|
|
3554
|
-
var dependency = ajaxData
|
|
3750
|
+
var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM ]("Fetch", _enableRequestHeaderTracking, getResponse);
|
|
3555
3751
|
var properties;
|
|
3556
3752
|
try {
|
|
3557
3753
|
if (!!_addRequestContext) {
|
|
@@ -3563,14 +3759,14 @@
|
|
|
3563
3759
|
}
|
|
3564
3760
|
if (dependency) {
|
|
3565
3761
|
if (properties !== undefined) {
|
|
3566
|
-
dependency
|
|
3762
|
+
dependency[STR_PROPERTIES ] = __assignFn(__assignFn({}, dependency.properties), properties);
|
|
3567
3763
|
}
|
|
3568
3764
|
_self[strTrackDependencyDataInternal](dependency);
|
|
3569
3765
|
}
|
|
3570
3766
|
else {
|
|
3571
3767
|
_reportFetchError(14 , null, {
|
|
3572
|
-
requestSentTime: ajaxData
|
|
3573
|
-
responseFinishedTime: ajaxData
|
|
3768
|
+
requestSentTime: ajaxData[_DYN_REQUEST_SENT_TIME ],
|
|
3769
|
+
responseFinishedTime: ajaxData[_DYN_RESPONSE_FINISHED_TI12 ]
|
|
3574
3770
|
});
|
|
3575
3771
|
}
|
|
3576
3772
|
}, function (e) {
|
|
@@ -3578,10 +3774,10 @@
|
|
|
3578
3774
|
});
|
|
3579
3775
|
}
|
|
3580
3776
|
function _getFetchCorrelationContext(response) {
|
|
3581
|
-
if (response && response
|
|
3777
|
+
if (response && response[_DYN_HEADERS ]) {
|
|
3582
3778
|
try {
|
|
3583
|
-
var responseHeader = response.
|
|
3584
|
-
return CorrelationIdHelper
|
|
3779
|
+
var responseHeader = response[_DYN_HEADERS ].get(RequestHeaders[0 ]);
|
|
3780
|
+
return CorrelationIdHelper[_DYN_GET_CORRELATION_CONT14 ](responseHeader);
|
|
3585
3781
|
}
|
|
3586
3782
|
catch (e) {
|
|
3587
3783
|
_throwInternalWarning(_self, 18 , "Failed to get Request-Context correlation header as it may be not included in the response or not accessible.", {
|
|
@@ -3595,40 +3791,36 @@
|
|
|
3595
3791
|
return _this;
|
|
3596
3792
|
}
|
|
3597
3793
|
AjaxMonitor.getDefaultConfig = function () {
|
|
3598
|
-
var
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
enableAjaxPerfTracking: false,
|
|
3619
|
-
maxAjaxPerfLookupAttempts: 3,
|
|
3620
|
-
ajaxPerfLookupDelay: 25,
|
|
3621
|
-
ignoreHeaders: [
|
|
3794
|
+
var _a;
|
|
3795
|
+
var config = (_a = {},
|
|
3796
|
+
_a[_DYN_MAX_AJAX_CALLS_PER_V6 ] = 500,
|
|
3797
|
+
_a[_DYN_DISABLE_AJAX_TRACKIN9 ] = false,
|
|
3798
|
+
_a[_DYN_DISABLE_FETCH_TRACKI10 ] = false,
|
|
3799
|
+
_a[_DYN_EXCLUDE_REQUEST_FROM8 ] = undefined,
|
|
3800
|
+
_a.disableCorrelationHeaders = false,
|
|
3801
|
+
_a.distributedTracingMode = 1 ,
|
|
3802
|
+
_a.correlationHeaderExcludedDomains = DfltAjaxCorrelationHeaderExDomains,
|
|
3803
|
+
_a.correlationHeaderDomains = undefined,
|
|
3804
|
+
_a.correlationHeaderExcludePatterns = undefined,
|
|
3805
|
+
_a[_DYN_APP_ID ] = undefined,
|
|
3806
|
+
_a.enableCorsCorrelation = false,
|
|
3807
|
+
_a[_DYN_ENABLE_REQUEST_HEADE3 ] = false,
|
|
3808
|
+
_a[_DYN_ENABLE_RESPONSE_HEAD7 ] = false,
|
|
3809
|
+
_a[_DYN_ENABLE_AJAX_ERROR_ST4 ] = false,
|
|
3810
|
+
_a[_DYN_ENABLE_AJAX_PERF_TRA5 ] = false,
|
|
3811
|
+
_a.maxAjaxPerfLookupAttempts = 3,
|
|
3812
|
+
_a[_DYN_AJAX_PERF_LOOKUP_DEL15 ] = 25,
|
|
3813
|
+
_a.ignoreHeaders = [
|
|
3622
3814
|
"Authorization",
|
|
3623
3815
|
"X-API-Key",
|
|
3624
3816
|
"WWW-Authenticate"
|
|
3625
3817
|
],
|
|
3626
|
-
|
|
3627
|
-
|
|
3818
|
+
_a[_DYN_ADD_REQUEST_CONTEXT ] = undefined,
|
|
3819
|
+
_a);
|
|
3628
3820
|
return config;
|
|
3629
3821
|
};
|
|
3630
3822
|
AjaxMonitor.getEmptyConfig = function () {
|
|
3631
|
-
var emptyConfig = this
|
|
3823
|
+
var emptyConfig = this[_DYN_GET_DEFAULT_CONFIG ]();
|
|
3632
3824
|
objForEachKey(emptyConfig, function (value) {
|
|
3633
3825
|
emptyConfig[value] = undefined;
|
|
3634
3826
|
});
|
|
@@ -3642,6 +3834,7 @@
|
|
|
3642
3834
|
}(BaseTelemetryPlugin));
|
|
3643
3835
|
|
|
3644
3836
|
exports.AjaxPlugin = AjaxMonitor;
|
|
3837
|
+
exports.DfltAjaxCorrelationHeaderExDomains = DfltAjaxCorrelationHeaderExDomains;
|
|
3645
3838
|
exports.ajaxRecord = ajaxRecord;
|
|
3646
3839
|
|
|
3647
3840
|
(function(obj, prop, descriptor) { /* ai_es3_polyfil defineProperty */ var func = Object["defineProperty"]; if (func) { try { return func(obj, prop, descriptor); } catch(e) { /* IE8 defines defineProperty, but will throw */ } } if (descriptor && typeof descriptor.value !== undefined) { obj[prop] = descriptor.value; } return obj; })(exports, '__esModule', { value: true });
|