@microsoft/applicationinsights-core-js 2.8.5-nightly.2206-04 → 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-core-js.integrity.json +9 -9
- package/browser/applicationinsights-core-js.js +807 -711
- package/browser/applicationinsights-core-js.js.map +1 -1
- package/browser/applicationinsights-core-js.min.js +2 -2
- package/browser/applicationinsights-core-js.min.js.map +1 -1
- package/dist/applicationinsights-core-js.api.json +400 -336
- package/dist/applicationinsights-core-js.d.ts +1 -1
- package/dist/applicationinsights-core-js.js +807 -711
- package/dist/applicationinsights-core-js.js.map +1 -1
- package/dist/applicationinsights-core-js.min.js +2 -2
- package/dist/applicationinsights-core-js.min.js.map +1 -1
- package/dist/applicationinsights-core-js.rollup.d.ts +1 -1
- package/dist-esm/JavaScriptSDK/AppInsightsCore.js +14 -10
- package/dist-esm/JavaScriptSDK/AppInsightsCore.js.map +1 -1
- package/dist-esm/JavaScriptSDK/BaseCore.js +158 -139
- package/dist-esm/JavaScriptSDK/BaseCore.js.map +1 -1
- package/dist-esm/JavaScriptSDK/BaseTelemetryPlugin.js +39 -36
- package/dist-esm/JavaScriptSDK/BaseTelemetryPlugin.js.map +1 -1
- package/dist-esm/JavaScriptSDK/ChannelController.js +60 -61
- package/dist-esm/JavaScriptSDK/ChannelController.js.map +1 -1
- package/dist-esm/JavaScriptSDK/CookieMgr.js +46 -43
- package/dist-esm/JavaScriptSDK/CookieMgr.js.map +1 -1
- package/dist-esm/JavaScriptSDK/CoreUtils.js +16 -15
- package/dist-esm/JavaScriptSDK/CoreUtils.js.map +1 -1
- package/dist-esm/JavaScriptSDK/DataCacheHelper.js +7 -5
- package/dist-esm/JavaScriptSDK/DataCacheHelper.js.map +1 -1
- package/dist-esm/JavaScriptSDK/DbgExtensionUtils.js +4 -3
- package/dist-esm/JavaScriptSDK/DbgExtensionUtils.js.map +1 -1
- package/dist-esm/JavaScriptSDK/DiagnosticLogger.js +56 -56
- package/dist-esm/JavaScriptSDK/DiagnosticLogger.js.map +1 -1
- package/dist-esm/JavaScriptSDK/EnvUtils.js +21 -20
- package/dist-esm/JavaScriptSDK/EnvUtils.js.map +1 -1
- package/dist-esm/JavaScriptSDK/EventHelpers.js +45 -39
- package/dist-esm/JavaScriptSDK/EventHelpers.js.map +1 -1
- package/dist-esm/JavaScriptSDK/HelperFuncs.js +49 -40
- package/dist-esm/JavaScriptSDK/HelperFuncs.js.map +1 -1
- package/dist-esm/JavaScriptSDK/InstrumentHooks.js +18 -16
- package/dist-esm/JavaScriptSDK/InstrumentHooks.js.map +1 -1
- package/dist-esm/JavaScriptSDK/InternalConstants.js +19 -21
- package/dist-esm/JavaScriptSDK/InternalConstants.js.map +1 -1
- package/dist-esm/JavaScriptSDK/NotificationManager.js +26 -23
- package/dist-esm/JavaScriptSDK/NotificationManager.js.map +1 -1
- package/dist-esm/JavaScriptSDK/PerfManager.js +41 -35
- package/dist-esm/JavaScriptSDK/PerfManager.js.map +1 -1
- package/dist-esm/JavaScriptSDK/ProcessTelemetryContext.js +54 -53
- package/dist-esm/JavaScriptSDK/ProcessTelemetryContext.js.map +1 -1
- package/dist-esm/JavaScriptSDK/RandomHelper.js +5 -4
- package/dist-esm/JavaScriptSDK/RandomHelper.js.map +1 -1
- package/dist-esm/JavaScriptSDK/TelemetryHelpers.js +34 -34
- package/dist-esm/JavaScriptSDK/TelemetryHelpers.js.map +1 -1
- package/dist-esm/JavaScriptSDK/TelemetryInitializerPlugin.js +11 -10
- package/dist-esm/JavaScriptSDK/TelemetryInitializerPlugin.js.map +1 -1
- package/dist-esm/JavaScriptSDK/UnloadHandlerContainer.js +4 -3
- package/dist-esm/JavaScriptSDK/UnloadHandlerContainer.js.map +1 -1
- package/dist-esm/JavaScriptSDK/W3cTraceParent.js +26 -23
- package/dist-esm/JavaScriptSDK/W3cTraceParent.js.map +1 -1
- package/dist-esm/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
- package/dist-esm/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
- package/dist-esm/JavaScriptSDK.Enums/LoggingEnums.js +103 -86
- package/dist-esm/JavaScriptSDK.Enums/LoggingEnums.js.map +1 -1
- package/dist-esm/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
- package/dist-esm/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
- package/dist-esm/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
- package/dist-esm/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
- package/dist-esm/__DynamicConstants.js +70 -0
- package/dist-esm/__DynamicConstants.js.map +1 -0
- package/dist-esm/applicationinsights-core-js.js +1 -1
- package/package.json +5 -2
- package/src/JavaScriptSDK/AppInsightsCore.ts +17 -17
- package/src/JavaScriptSDK/BaseCore.ts +112 -97
- package/src/JavaScriptSDK/BaseTelemetryPlugin.ts +36 -32
- package/src/JavaScriptSDK/ChannelController.ts +39 -37
- package/src/JavaScriptSDK/CookieMgr.ts +27 -27
- package/src/JavaScriptSDK/CoreUtils.ts +19 -20
- package/src/JavaScriptSDK/DataCacheHelper.ts +12 -11
- package/src/JavaScriptSDK/DbgExtensionUtils.ts +9 -9
- package/src/JavaScriptSDK/DiagnosticLogger.ts +49 -50
- package/src/JavaScriptSDK/EnvUtils.ts +15 -17
- package/src/JavaScriptSDK/EventHelpers.ts +15 -14
- package/src/JavaScriptSDK/HelperFuncs.ts +20 -11
- package/src/JavaScriptSDK/InstrumentHooks.ts +11 -13
- package/src/JavaScriptSDK/InternalConstants.ts +20 -20
- package/src/JavaScriptSDK/NotificationManager.ts +27 -27
- package/src/JavaScriptSDK/PerfManager.ts +21 -19
- package/src/JavaScriptSDK/ProcessTelemetryContext.ts +38 -34
- package/src/JavaScriptSDK/RandomHelper.ts +8 -9
- package/src/JavaScriptSDK/TelemetryHelpers.ts +33 -34
- package/src/JavaScriptSDK/TelemetryInitializerPlugin.ts +17 -16
- package/src/JavaScriptSDK/UnloadHandlerContainer.ts +11 -11
- package/src/JavaScriptSDK/W3cTraceParent.ts +6 -6
- package/src/JavaScriptSDK.Enums/EventsDiscardedReason.ts +1 -1
- package/src/JavaScriptSDK.Enums/LoggingEnums.ts +72 -56
- package/src/JavaScriptSDK.Interfaces/IChannelControls.ts +1 -1
- package/src/JavaScriptSDK.Interfaces/ITelemetryPlugin.ts +2 -2
- package/types/JavaScriptSDK/AppInsightsCore.d.ts +4 -4
- package/types/JavaScriptSDK/BaseCore.d.ts +11 -11
- package/types/JavaScriptSDK/BaseTelemetryPlugin.d.ts +4 -4
- package/types/JavaScriptSDK/ChannelController.d.ts +1 -2
- package/types/JavaScriptSDK/CookieMgr.d.ts +3 -3
- package/types/JavaScriptSDK/DiagnosticLogger.d.ts +2 -2
- package/types/JavaScriptSDK/HelperFuncs.d.ts +6 -0
- package/types/JavaScriptSDK/InstrumentHooks.d.ts +1 -1
- package/types/JavaScriptSDK/InternalConstants.d.ts +16 -20
- package/types/JavaScriptSDK/NotificationManager.d.ts +1 -1
- package/types/JavaScriptSDK/ProcessTelemetryContext.d.ts +2 -2
- package/types/JavaScriptSDK/TelemetryHelpers.d.ts +4 -4
- package/types/JavaScriptSDK.Interfaces/ITelemetryPlugin.d.ts +2 -2
- package/types/__DynamicConstants.d.ts +56 -0
- package/types/tsdoc-metadata.json +1 -1
- package/dist-esm/JavaScriptSDK/Constants.js +0 -9
- package/dist-esm/JavaScriptSDK/Constants.js.map +0 -1
- package/src/JavaScriptSDK/Constants.ts +0 -5
- package/types/JavaScriptSDK/Constants.d.ts +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Application Insights JavaScript SDK - Core, 2.8.5-nightly.2206-
|
|
2
|
+
* Application Insights JavaScript SDK - Core, 2.8.5-nightly.2206-06
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
(function (global, factory) {
|
|
@@ -94,26 +94,79 @@
|
|
|
94
94
|
return to;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
var
|
|
98
|
-
var
|
|
99
|
-
var
|
|
100
|
-
var
|
|
101
|
-
var
|
|
102
|
-
var
|
|
103
|
-
var
|
|
104
|
-
var
|
|
105
|
-
var
|
|
106
|
-
var
|
|
107
|
-
var
|
|
108
|
-
var
|
|
109
|
-
var
|
|
110
|
-
var
|
|
111
|
-
var
|
|
112
|
-
var
|
|
113
|
-
var
|
|
114
|
-
var
|
|
115
|
-
var
|
|
116
|
-
var
|
|
97
|
+
var _DYN_INITIALIZE = "initialize";
|
|
98
|
+
var _DYN_NAME = "name";
|
|
99
|
+
var _DYN_GET_NOTIFY_MGR = "getNotifyMgr";
|
|
100
|
+
var _DYN_IDENTIFIER = "identifier";
|
|
101
|
+
var _DYN_PUSH = "push";
|
|
102
|
+
var _DYN_IS_INITIALIZED = "isInitialized";
|
|
103
|
+
var _DYN_CONFIG = "config";
|
|
104
|
+
var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
|
|
105
|
+
var _DYN_LOGGER = "logger";
|
|
106
|
+
var _DYN_LENGTH = "length";
|
|
107
|
+
var _DYN_TIME = "time";
|
|
108
|
+
var _DYN_PROCESS_NEXT = "processNext";
|
|
109
|
+
var _DYN_GET_PROCESS_TEL_CONT0 = "getProcessTelContext";
|
|
110
|
+
var _DYN_ADD_NOTIFICATION_LIS1 = "addNotificationListener";
|
|
111
|
+
var _DYN_REMOVE_NOTIFICATION_2 = "removeNotificationListener";
|
|
112
|
+
var _DYN_STOP_POLLING_INTERNA3 = "stopPollingInternalLogs";
|
|
113
|
+
var _DYN_ON_COMPLETE = "onComplete";
|
|
114
|
+
var _DYN_GET_PLUGIN = "getPlugin";
|
|
115
|
+
var _DYN_FLUSH = "flush";
|
|
116
|
+
var _DYN__EXTENSIONS = "_extensions";
|
|
117
|
+
var _DYN_SPLICE = "splice";
|
|
118
|
+
var _DYN_TEARDOWN = "teardown";
|
|
119
|
+
var _DYN_MESSAGE_ID = "messageId";
|
|
120
|
+
var _DYN_MESSAGE = "message";
|
|
121
|
+
var _DYN_IS_ASYNC = "isAsync";
|
|
122
|
+
var _DYN__DO_TEARDOWN = "_doTeardown";
|
|
123
|
+
var _DYN_UPDATE = "update";
|
|
124
|
+
var _DYN_GET_NEXT = "getNext";
|
|
125
|
+
var _DYN_DIAG_LOG = "diagLog";
|
|
126
|
+
var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
|
|
127
|
+
var _DYN_CREATE_NEW = "createNew";
|
|
128
|
+
var _DYN_COOKIE_CFG = "cookieCfg";
|
|
129
|
+
var _DYN_INDEX_OF = "indexOf";
|
|
130
|
+
var _DYN_SUBSTRING = "substring";
|
|
131
|
+
var _DYN_USER_AGENT = "userAgent";
|
|
132
|
+
var _DYN_SPLIT = "split";
|
|
133
|
+
var _DYN_SET_ENABLED = "setEnabled";
|
|
134
|
+
var _DYN_REPLACE = "replace";
|
|
135
|
+
var _DYN_SUBSTR = "substr";
|
|
136
|
+
var _DYN_NODE_TYPE = "nodeType";
|
|
137
|
+
var _DYN_APPLY = "apply";
|
|
138
|
+
var _DYN_ENABLE_DEBUG_EXCEPTI4 = "enableDebugExceptions";
|
|
139
|
+
var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
|
|
140
|
+
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
141
|
+
var _DYN_CALL = "call";
|
|
142
|
+
var _DYN_TYPE = "type";
|
|
143
|
+
var _DYN_HANDLER = "handler";
|
|
144
|
+
var _DYN_LISTENERS = "listeners";
|
|
145
|
+
var _DYN_IS_CHILD_EVT = "isChildEvt";
|
|
146
|
+
var _DYN_GET_CTX = "getCtx";
|
|
147
|
+
var _DYN_SET_CTX = "setCtx";
|
|
148
|
+
var _DYN_COMPLETE = "complete";
|
|
149
|
+
var _DYN_TRACE_ID = "traceId";
|
|
150
|
+
var _DYN_SPAN_ID = "spanId";
|
|
151
|
+
var _DYN_TRACE_FLAGS = "traceFlags";
|
|
152
|
+
var _DYN_VERSION = "version";
|
|
153
|
+
|
|
154
|
+
var STR_EMPTY = "";
|
|
155
|
+
var STR_CHANNELS = "channels";
|
|
156
|
+
var STR_CORE = "core";
|
|
157
|
+
var STR_CREATE_PERF_MGR = "createPerfMgr";
|
|
158
|
+
var STR_DISABLED = "disabled";
|
|
159
|
+
var STR_EXTENSION_CONFIG = "extensionConfig";
|
|
160
|
+
var STR_EXTENSIONS = "extensions";
|
|
161
|
+
var STR_PROCESS_TELEMETRY = "processTelemetry";
|
|
162
|
+
var STR_PRIORITY = "priority";
|
|
163
|
+
var STR_EVENTS_SENT = "eventsSent";
|
|
164
|
+
var STR_EVENTS_DISCARDED = "eventsDiscarded";
|
|
165
|
+
var STR_EVENTS_SEND_REQUEST = "eventsSendRequest";
|
|
166
|
+
var STR_PERF_EVENT = "perfEvent";
|
|
167
|
+
var STR_ERROR_TO_CONSOLE = "errorToConsole";
|
|
168
|
+
var STR_WARN_TO_CONSOLE = "warnToConsole";
|
|
169
|
+
var STR_GET_PERF_MGR = "getPerfMgr";
|
|
117
170
|
|
|
118
171
|
var strToISOString = "toISOString";
|
|
119
172
|
var cStrEndsWith = "endsWith";
|
|
@@ -138,7 +191,7 @@
|
|
|
138
191
|
var _isArray = Array.isArray;
|
|
139
192
|
var _objToString = ObjProto[strToString];
|
|
140
193
|
var _fnToString = ObjHasOwnProperty[strToString];
|
|
141
|
-
var _objFunctionString = _fnToString
|
|
194
|
+
var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass);
|
|
142
195
|
var rCamelCase = /-([a-z])/g;
|
|
143
196
|
var rNormalizeInvalid = /([^\w\d_$])/g;
|
|
144
197
|
var rLeadingNumeric = /^(\d+[\w\d_$])/;
|
|
@@ -156,7 +209,7 @@
|
|
|
156
209
|
return null;
|
|
157
210
|
}
|
|
158
211
|
function objToString(obj) {
|
|
159
|
-
return _objToString
|
|
212
|
+
return _objToString[_DYN_CALL ](obj);
|
|
160
213
|
}
|
|
161
214
|
function isTypeof(value, theType) {
|
|
162
215
|
return typeof value === theType;
|
|
@@ -174,7 +227,7 @@
|
|
|
174
227
|
return !isNullOrUndefined(value);
|
|
175
228
|
}
|
|
176
229
|
function hasOwnProperty(obj, prop) {
|
|
177
|
-
return !!(obj && ObjHasOwnProperty
|
|
230
|
+
return !!(obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop));
|
|
178
231
|
}
|
|
179
232
|
function isObject(value) {
|
|
180
233
|
return !!(value && typeof value === strShimObject);
|
|
@@ -185,11 +238,11 @@
|
|
|
185
238
|
function normalizeJsName(name) {
|
|
186
239
|
var value = name;
|
|
187
240
|
if (value && isString(value)) {
|
|
188
|
-
value = value
|
|
241
|
+
value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
|
|
189
242
|
return letter.toUpperCase();
|
|
190
243
|
});
|
|
191
|
-
value = value
|
|
192
|
-
value = value
|
|
244
|
+
value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
|
|
245
|
+
value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
|
|
193
246
|
return "_" + match;
|
|
194
247
|
});
|
|
195
248
|
}
|
|
@@ -198,8 +251,8 @@
|
|
|
198
251
|
function objForEachKey(target, callbackfn) {
|
|
199
252
|
if (target) {
|
|
200
253
|
for (var prop in target) {
|
|
201
|
-
if (ObjHasOwnProperty
|
|
202
|
-
callbackfn
|
|
254
|
+
if (ObjHasOwnProperty[_DYN_CALL ](target, prop)) {
|
|
255
|
+
callbackfn[_DYN_CALL ](target, prop, target[prop]);
|
|
203
256
|
}
|
|
204
257
|
}
|
|
205
258
|
}
|
|
@@ -213,8 +266,8 @@
|
|
|
213
266
|
}
|
|
214
267
|
function _strEndsWithPoly(value, search) {
|
|
215
268
|
var result = false;
|
|
216
|
-
var searchLen = search ? search
|
|
217
|
-
var valLen = value ? value
|
|
269
|
+
var searchLen = search ? search[_DYN_LENGTH ] : 0;
|
|
270
|
+
var valLen = value ? value[_DYN_LENGTH ] : 0;
|
|
218
271
|
if (searchLen && valLen && valLen >= searchLen && !(result = value === search)) {
|
|
219
272
|
var pos = valLen - 1;
|
|
220
273
|
for (var lp = searchLen - 1; lp >= 0; lp--) {
|
|
@@ -236,8 +289,8 @@
|
|
|
236
289
|
}
|
|
237
290
|
function _strStartsWithPoly(value, checkValue) {
|
|
238
291
|
var result = false;
|
|
239
|
-
var chkLen = checkValue ? checkValue
|
|
240
|
-
if (value && chkLen && value
|
|
292
|
+
var chkLen = checkValue ? checkValue[_DYN_LENGTH ] : 0;
|
|
293
|
+
if (value && chkLen && value[_DYN_LENGTH ] >= chkLen && !(result = value === checkValue)) {
|
|
241
294
|
for (var lp = 0; lp < chkLen; lp++) {
|
|
242
295
|
if (value[lp] !== checkValue[lp]) {
|
|
243
296
|
return false;
|
|
@@ -249,19 +302,19 @@
|
|
|
249
302
|
}
|
|
250
303
|
function strContains(value, search) {
|
|
251
304
|
if (value && search) {
|
|
252
|
-
return value
|
|
305
|
+
return value[_DYN_INDEX_OF ](search) !== -1;
|
|
253
306
|
}
|
|
254
307
|
return false;
|
|
255
308
|
}
|
|
256
309
|
function isDate(obj) {
|
|
257
|
-
return !!(obj && _objToString
|
|
310
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Date]");
|
|
258
311
|
}
|
|
259
312
|
var isArray = _isArray || _isArrayPoly;
|
|
260
313
|
function _isArrayPoly(obj) {
|
|
261
|
-
return !!(obj && _objToString
|
|
314
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Array]");
|
|
262
315
|
}
|
|
263
316
|
function isError(obj) {
|
|
264
|
-
return !!(obj && _objToString
|
|
317
|
+
return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Error]");
|
|
265
318
|
}
|
|
266
319
|
function isString(value) {
|
|
267
320
|
return typeof value === "string";
|
|
@@ -283,10 +336,10 @@
|
|
|
283
336
|
result = true;
|
|
284
337
|
}
|
|
285
338
|
else {
|
|
286
|
-
if (proto[strConstructor] && ObjHasOwnProperty
|
|
339
|
+
if (proto[strConstructor] && ObjHasOwnProperty[_DYN_CALL ](proto, strConstructor)) {
|
|
287
340
|
proto = proto[strConstructor];
|
|
288
341
|
}
|
|
289
|
-
result = typeof proto === strShimFunction && _fnToString
|
|
342
|
+
result = typeof proto === strShimFunction && _fnToString[_DYN_CALL ](proto) === _objFunctionString;
|
|
290
343
|
}
|
|
291
344
|
}
|
|
292
345
|
return result;
|
|
@@ -300,7 +353,7 @@
|
|
|
300
353
|
if (date && date.getUTCFullYear) {
|
|
301
354
|
var pad = function (num) {
|
|
302
355
|
var r = String(num);
|
|
303
|
-
if (r
|
|
356
|
+
if (r[_DYN_LENGTH ] === 1) {
|
|
304
357
|
r = "0" + r;
|
|
305
358
|
}
|
|
306
359
|
return r;
|
|
@@ -316,11 +369,11 @@
|
|
|
316
369
|
}
|
|
317
370
|
}
|
|
318
371
|
function arrForEach(arr, callbackfn, thisArg) {
|
|
319
|
-
var len = arr
|
|
372
|
+
var len = arr[_DYN_LENGTH ];
|
|
320
373
|
try {
|
|
321
374
|
for (var idx = 0; idx < len; idx++) {
|
|
322
375
|
if (idx in arr) {
|
|
323
|
-
if (callbackfn
|
|
376
|
+
if (callbackfn[_DYN_CALL ](thisArg || arr, arr[idx], idx, arr) === -1) {
|
|
324
377
|
break;
|
|
325
378
|
}
|
|
326
379
|
}
|
|
@@ -334,7 +387,7 @@
|
|
|
334
387
|
if (arr[strIndexOf]) {
|
|
335
388
|
return arr[strIndexOf](searchElement, fromIndex);
|
|
336
389
|
}
|
|
337
|
-
var len = arr
|
|
390
|
+
var len = arr[_DYN_LENGTH ];
|
|
338
391
|
var from = fromIndex || 0;
|
|
339
392
|
try {
|
|
340
393
|
for (var lp = Math.max(from >= 0 ? from : len - Math.abs(from), 0); lp < len; lp++) {
|
|
@@ -354,13 +407,13 @@
|
|
|
354
407
|
if (arr[strMap]) {
|
|
355
408
|
return arr[strMap](callbackfn, thisArg);
|
|
356
409
|
}
|
|
357
|
-
var len = arr
|
|
410
|
+
var len = arr[_DYN_LENGTH ];
|
|
358
411
|
var _this = thisArg || arr;
|
|
359
412
|
results = new Array(len);
|
|
360
413
|
try {
|
|
361
414
|
for (var lp = 0; lp < len; lp++) {
|
|
362
415
|
if (lp in arr) {
|
|
363
|
-
results[lp] = callbackfn
|
|
416
|
+
results[lp] = callbackfn[_DYN_CALL ](_this, arr[lp], arr);
|
|
364
417
|
}
|
|
365
418
|
}
|
|
366
419
|
}
|
|
@@ -375,9 +428,9 @@
|
|
|
375
428
|
if (arr[strReduce]) {
|
|
376
429
|
return arr[strReduce](callbackfn, initialValue);
|
|
377
430
|
}
|
|
378
|
-
var len = arr
|
|
431
|
+
var len = arr[_DYN_LENGTH ];
|
|
379
432
|
var lp = 0;
|
|
380
|
-
if (arguments
|
|
433
|
+
if (arguments[_DYN_LENGTH ] >= 3) {
|
|
381
434
|
value = arguments[2];
|
|
382
435
|
}
|
|
383
436
|
else {
|
|
@@ -397,7 +450,7 @@
|
|
|
397
450
|
}
|
|
398
451
|
function strTrim(str) {
|
|
399
452
|
if (str) {
|
|
400
|
-
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str
|
|
453
|
+
str = (_strTrim && str[cStrTrim]) ? str[cStrTrim]() : (str[_DYN_REPLACE ] ? str[_DYN_REPLACE ](/^\s+|\s+$/g, STR_EMPTY) : str);
|
|
401
454
|
}
|
|
402
455
|
return str;
|
|
403
456
|
}
|
|
@@ -421,15 +474,15 @@
|
|
|
421
474
|
}
|
|
422
475
|
var result = [];
|
|
423
476
|
for (var prop in obj) {
|
|
424
|
-
if (obj && ObjHasOwnProperty
|
|
425
|
-
result
|
|
477
|
+
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop)) {
|
|
478
|
+
result[_DYN_PUSH ](prop);
|
|
426
479
|
}
|
|
427
480
|
}
|
|
428
481
|
if (_objKeysHasDontEnumBug) {
|
|
429
|
-
var dontEnumsLength = _objKeysDontEnums
|
|
482
|
+
var dontEnumsLength = _objKeysDontEnums[_DYN_LENGTH ];
|
|
430
483
|
for (var lp = 0; lp < dontEnumsLength; lp++) {
|
|
431
|
-
if (obj && ObjHasOwnProperty
|
|
432
|
-
result
|
|
484
|
+
if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, _objKeysDontEnums[lp])) {
|
|
485
|
+
result[_DYN_PUSH ](_objKeysDontEnums[lp]);
|
|
433
486
|
}
|
|
434
487
|
}
|
|
435
488
|
}
|
|
@@ -477,9 +530,9 @@
|
|
|
477
530
|
}
|
|
478
531
|
function getExceptionName(object) {
|
|
479
532
|
if (isError(object)) {
|
|
480
|
-
return object
|
|
533
|
+
return object[_DYN_NAME ];
|
|
481
534
|
}
|
|
482
|
-
return
|
|
535
|
+
return STR_EMPTY;
|
|
483
536
|
}
|
|
484
537
|
function setValue(target, field, value, valChk, srcChk) {
|
|
485
538
|
var theValue = value;
|
|
@@ -506,6 +559,9 @@
|
|
|
506
559
|
}
|
|
507
560
|
return theValue;
|
|
508
561
|
}
|
|
562
|
+
function getCfgValue(theValue, defaultValue) {
|
|
563
|
+
return !isNullOrUndefined(theValue) ? theValue : defaultValue;
|
|
564
|
+
}
|
|
509
565
|
function isNotTruthy(value) {
|
|
510
566
|
return !value;
|
|
511
567
|
}
|
|
@@ -530,7 +586,7 @@
|
|
|
530
586
|
src = srcFunc();
|
|
531
587
|
}
|
|
532
588
|
if (src) {
|
|
533
|
-
return src[funcName]
|
|
589
|
+
return src[funcName][_DYN_APPLY ](src, originalArguments);
|
|
534
590
|
}
|
|
535
591
|
};
|
|
536
592
|
}
|
|
@@ -603,7 +659,7 @@
|
|
|
603
659
|
function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
|
|
604
660
|
var theArgs = arguments;
|
|
605
661
|
var extended = theArgs[0] || {};
|
|
606
|
-
var argLen = theArgs
|
|
662
|
+
var argLen = theArgs[_DYN_LENGTH ];
|
|
607
663
|
var deep = false;
|
|
608
664
|
var idx = 1;
|
|
609
665
|
if (argLen > 0 && isBoolean(extended)) {
|
|
@@ -619,7 +675,7 @@
|
|
|
619
675
|
var isArgArray = isArray(arg);
|
|
620
676
|
var isArgObj = isObject(arg);
|
|
621
677
|
for (var prop in arg) {
|
|
622
|
-
var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty
|
|
678
|
+
var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty[_DYN_CALL ](arg, prop)));
|
|
623
679
|
if (!propOk) {
|
|
624
680
|
continue;
|
|
625
681
|
}
|
|
@@ -1066,9 +1122,9 @@
|
|
|
1066
1122
|
}
|
|
1067
1123
|
function isIE() {
|
|
1068
1124
|
var nav = getNavigator();
|
|
1069
|
-
if (nav && (nav
|
|
1070
|
-
_navUserAgentCheck = nav
|
|
1071
|
-
var userAgent = (_navUserAgentCheck ||
|
|
1125
|
+
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
1126
|
+
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
1127
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
|
|
1072
1128
|
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
1073
1129
|
}
|
|
1074
1130
|
return _isTrident;
|
|
@@ -1077,15 +1133,15 @@
|
|
|
1077
1133
|
if (userAgentStr === void 0) { userAgentStr = null; }
|
|
1078
1134
|
if (!userAgentStr) {
|
|
1079
1135
|
var navigator_1 = getNavigator() || {};
|
|
1080
|
-
userAgentStr = navigator_1 ? (navigator_1
|
|
1136
|
+
userAgentStr = navigator_1 ? (navigator_1[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
|
|
1081
1137
|
}
|
|
1082
|
-
var ua = (userAgentStr ||
|
|
1138
|
+
var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
|
|
1083
1139
|
if (strContains(ua, strMsie)) {
|
|
1084
1140
|
var doc = getDocument() || {};
|
|
1085
|
-
return Math.max(parseInt(ua
|
|
1141
|
+
return Math.max(parseInt(ua[_DYN_SPLIT ](strMsie)[1]), (doc[strDocumentMode] || 0));
|
|
1086
1142
|
}
|
|
1087
1143
|
else if (strContains(ua, strTrident)) {
|
|
1088
|
-
var tridentVer = parseInt(ua
|
|
1144
|
+
var tridentVer = parseInt(ua[_DYN_SPLIT ](strTrident)[1]);
|
|
1089
1145
|
if (tridentVer) {
|
|
1090
1146
|
return tridentVer + 4;
|
|
1091
1147
|
}
|
|
@@ -1093,10 +1149,10 @@
|
|
|
1093
1149
|
return null;
|
|
1094
1150
|
}
|
|
1095
1151
|
function dumpObj(object) {
|
|
1096
|
-
var objectTypeDump = Object[strShimPrototype].toString
|
|
1097
|
-
var propertyValueDump =
|
|
1152
|
+
var objectTypeDump = Object[strShimPrototype].toString[_DYN_CALL ](object);
|
|
1153
|
+
var propertyValueDump = STR_EMPTY;
|
|
1098
1154
|
if (objectTypeDump === "[object Error]") {
|
|
1099
|
-
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object
|
|
1155
|
+
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object[_DYN_NAME ] + "'";
|
|
1100
1156
|
}
|
|
1101
1157
|
else if (hasJSON()) {
|
|
1102
1158
|
propertyValueDump = getJSON().stringify(object);
|
|
@@ -1106,10 +1162,10 @@
|
|
|
1106
1162
|
function isSafari(userAgentStr) {
|
|
1107
1163
|
if (!userAgentStr || !isString(userAgentStr)) {
|
|
1108
1164
|
var navigator_2 = getNavigator() || {};
|
|
1109
|
-
userAgentStr = navigator_2 ? (navigator_2
|
|
1165
|
+
userAgentStr = navigator_2 ? (navigator_2[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
|
|
1110
1166
|
}
|
|
1111
|
-
var ua = (userAgentStr ||
|
|
1112
|
-
return (ua
|
|
1167
|
+
var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
|
|
1168
|
+
return (ua[_DYN_INDEX_OF ]("safari") >= 0);
|
|
1113
1169
|
}
|
|
1114
1170
|
function isBeaconsSupported() {
|
|
1115
1171
|
if (_beaconsSupported === null) {
|
|
@@ -1151,10 +1207,10 @@
|
|
|
1151
1207
|
}
|
|
1152
1208
|
function _getNamedValue(values, name) {
|
|
1153
1209
|
if (values) {
|
|
1154
|
-
for (var i = 0; i < values
|
|
1210
|
+
for (var i = 0; i < values[_DYN_LENGTH ]; i++) {
|
|
1155
1211
|
var value = values[i];
|
|
1156
|
-
if (value
|
|
1157
|
-
if (value
|
|
1212
|
+
if (value[_DYN_NAME ]) {
|
|
1213
|
+
if (value[_DYN_NAME ] === name) {
|
|
1158
1214
|
return value;
|
|
1159
1215
|
}
|
|
1160
1216
|
}
|
|
@@ -1174,7 +1230,7 @@
|
|
|
1174
1230
|
var perf = getPerformance();
|
|
1175
1231
|
if (perf) {
|
|
1176
1232
|
var navPerf = perf.getEntriesByType("navigation") || [];
|
|
1177
|
-
value = _getNamedValue((navPerf
|
|
1233
|
+
value = _getNamedValue((navPerf[_DYN_LENGTH ] > 0 ? navPerf[0] : {}).serverTiming, name).description;
|
|
1178
1234
|
}
|
|
1179
1235
|
return value;
|
|
1180
1236
|
}
|
|
@@ -1189,7 +1245,7 @@
|
|
|
1189
1245
|
if (dbgExt) {
|
|
1190
1246
|
var listener = dbgExt.listener;
|
|
1191
1247
|
if (listener && listener[name]) {
|
|
1192
|
-
listener[name]
|
|
1248
|
+
listener[name][_DYN_APPLY ](listener, args);
|
|
1193
1249
|
}
|
|
1194
1250
|
}
|
|
1195
1251
|
};
|
|
@@ -1211,7 +1267,7 @@
|
|
|
1211
1267
|
function getDebugListener(config) {
|
|
1212
1268
|
if (!_debugListener) {
|
|
1213
1269
|
_debugListener = {};
|
|
1214
|
-
for (var lp = 0; lp < listenerFuncs
|
|
1270
|
+
for (var lp = 0; lp < listenerFuncs[_DYN_LENGTH ]; lp++) {
|
|
1215
1271
|
_debugListener[listenerFuncs[lp]] = _listenerProxyFunc(listenerFuncs[lp], config);
|
|
1216
1272
|
}
|
|
1217
1273
|
}
|
|
@@ -1221,13 +1277,11 @@
|
|
|
1221
1277
|
var AiNonUserActionablePrefix = "AI (Internal): ";
|
|
1222
1278
|
var AiUserActionablePrefix = "AI: ";
|
|
1223
1279
|
var AIInternalMessagePrefix = "AITR_";
|
|
1224
|
-
var strErrorToConsole = "errorToConsole";
|
|
1225
|
-
var strWarnToConsole = "warnToConsole";
|
|
1226
1280
|
function _sanitizeDiagnosticText(text) {
|
|
1227
1281
|
if (text) {
|
|
1228
|
-
return "\"" + text
|
|
1282
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
1229
1283
|
}
|
|
1230
|
-
return
|
|
1284
|
+
return STR_EMPTY;
|
|
1231
1285
|
}
|
|
1232
1286
|
function _logToConsole(func, message) {
|
|
1233
1287
|
var theConsole = getConsole();
|
|
@@ -1245,23 +1299,23 @@
|
|
|
1245
1299
|
function _InternalLogMessage(msgId, msg, isUserAct, properties) {
|
|
1246
1300
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
1247
1301
|
var _self = this;
|
|
1248
|
-
_self
|
|
1249
|
-
_self
|
|
1302
|
+
_self[_DYN_MESSAGE_ID ] = msgId;
|
|
1303
|
+
_self[_DYN_MESSAGE ] =
|
|
1250
1304
|
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
1251
1305
|
msgId;
|
|
1252
|
-
var strProps =
|
|
1306
|
+
var strProps = STR_EMPTY;
|
|
1253
1307
|
if (hasJSON()) {
|
|
1254
1308
|
strProps = getJSON().stringify(properties);
|
|
1255
1309
|
}
|
|
1256
|
-
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) :
|
|
1257
|
-
(properties ? " props:" + _sanitizeDiagnosticText(strProps) :
|
|
1258
|
-
_self
|
|
1310
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
1311
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
1312
|
+
_self[_DYN_MESSAGE ] += diagnosticText;
|
|
1259
1313
|
}
|
|
1260
1314
|
_InternalLogMessage.dataType = "MessageData";
|
|
1261
1315
|
return _InternalLogMessage;
|
|
1262
1316
|
}());
|
|
1263
1317
|
function safeGetLogger(core, config) {
|
|
1264
|
-
return (core || {})
|
|
1318
|
+
return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
|
|
1265
1319
|
}
|
|
1266
1320
|
var DiagnosticLogger = /** @class */ (function () {
|
|
1267
1321
|
function DiagnosticLogger(config) {
|
|
@@ -1269,48 +1323,49 @@
|
|
|
1269
1323
|
this.queue = [];
|
|
1270
1324
|
var _messageCount = 0;
|
|
1271
1325
|
var _messageLogged = {};
|
|
1326
|
+
var _loggingLevelConsole;
|
|
1327
|
+
var _loggingLevelTelemetry;
|
|
1328
|
+
var _maxInternalMessageLimit;
|
|
1329
|
+
var _enableDebugExceptions;
|
|
1272
1330
|
dynamicProto(DiagnosticLogger, this, function (_self) {
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
}
|
|
1276
|
-
_self.
|
|
1277
|
-
_self
|
|
1278
|
-
_self.maxInternalMessageLimit = function () { return _getConfigValue("maxMessageLimit", 25); };
|
|
1279
|
-
_self.enableDebugExceptions = function () { return _getConfigValue("enableDebugExceptions", false); };
|
|
1331
|
+
_setDefaultsFromConfig(config || {});
|
|
1332
|
+
_self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
|
|
1333
|
+
_self.telemetryLoggingLevel = function () { return _loggingLevelTelemetry; };
|
|
1334
|
+
_self.maxInternalMessageLimit = function () { return _maxInternalMessageLimit; };
|
|
1335
|
+
_self[_DYN_ENABLE_DEBUG_EXCEPTI4 ] = function () { return _enableDebugExceptions; };
|
|
1280
1336
|
_self.throwInternal = function (severity, msgId, msg, properties, isUserAct) {
|
|
1281
1337
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
1282
1338
|
var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
|
|
1283
|
-
if (
|
|
1339
|
+
if (_enableDebugExceptions) {
|
|
1284
1340
|
throw dumpObj(message);
|
|
1285
1341
|
}
|
|
1286
1342
|
else {
|
|
1287
|
-
var logFunc = severity === 1 ?
|
|
1288
|
-
if (!isUndefined(message
|
|
1289
|
-
var logLevel = _self.consoleLoggingLevel();
|
|
1343
|
+
var logFunc = severity === 1 ? STR_ERROR_TO_CONSOLE : STR_WARN_TO_CONSOLE;
|
|
1344
|
+
if (!isUndefined(message[_DYN_MESSAGE ])) {
|
|
1290
1345
|
if (isUserAct) {
|
|
1291
|
-
var messageKey = +message
|
|
1292
|
-
if (!_messageLogged[messageKey] &&
|
|
1293
|
-
_self[logFunc](message
|
|
1346
|
+
var messageKey = +message[_DYN_MESSAGE_ID ];
|
|
1347
|
+
if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
|
|
1348
|
+
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
1294
1349
|
_messageLogged[messageKey] = true;
|
|
1295
1350
|
}
|
|
1296
1351
|
}
|
|
1297
1352
|
else {
|
|
1298
|
-
if (
|
|
1299
|
-
_self[logFunc](message
|
|
1353
|
+
if (_loggingLevelConsole >= severity) {
|
|
1354
|
+
_self[logFunc](message[_DYN_MESSAGE ]);
|
|
1300
1355
|
}
|
|
1301
1356
|
}
|
|
1302
|
-
|
|
1357
|
+
_logInternalMessage(severity, message);
|
|
1303
1358
|
}
|
|
1304
1359
|
else {
|
|
1305
1360
|
_debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
|
|
1306
1361
|
}
|
|
1307
1362
|
}
|
|
1308
1363
|
};
|
|
1309
|
-
_self
|
|
1364
|
+
_self[STR_WARN_TO_CONSOLE ] = function (message) {
|
|
1310
1365
|
_logToConsole("warn", message);
|
|
1311
1366
|
_debugExtMsg("warning", message);
|
|
1312
1367
|
};
|
|
1313
|
-
_self
|
|
1368
|
+
_self[STR_ERROR_TO_CONSOLE ] = function (message) {
|
|
1314
1369
|
_logToConsole("error", message);
|
|
1315
1370
|
_debugExtMsg("error", message);
|
|
1316
1371
|
};
|
|
@@ -1318,12 +1373,13 @@
|
|
|
1318
1373
|
_messageCount = 0;
|
|
1319
1374
|
_messageLogged = {};
|
|
1320
1375
|
};
|
|
1321
|
-
_self
|
|
1376
|
+
_self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
|
|
1377
|
+
function _logInternalMessage(severity, message) {
|
|
1322
1378
|
if (_areInternalMessagesThrottled()) {
|
|
1323
1379
|
return;
|
|
1324
1380
|
}
|
|
1325
1381
|
var logMessage = true;
|
|
1326
|
-
var messageKey = AIInternalMessagePrefix + message
|
|
1382
|
+
var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
|
|
1327
1383
|
if (_messageLogged[messageKey]) {
|
|
1328
1384
|
logMessage = false;
|
|
1329
1385
|
}
|
|
@@ -1331,38 +1387,37 @@
|
|
|
1331
1387
|
_messageLogged[messageKey] = true;
|
|
1332
1388
|
}
|
|
1333
1389
|
if (logMessage) {
|
|
1334
|
-
if (severity <=
|
|
1335
|
-
_self.queue
|
|
1390
|
+
if (severity <= _loggingLevelTelemetry) {
|
|
1391
|
+
_self.queue[_DYN_PUSH ](message);
|
|
1336
1392
|
_messageCount++;
|
|
1337
1393
|
_debugExtMsg((severity === 1 ? "error" : "warn"), message);
|
|
1338
1394
|
}
|
|
1339
|
-
if (_messageCount ===
|
|
1395
|
+
if (_messageCount === _maxInternalMessageLimit) {
|
|
1340
1396
|
var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
|
|
1341
1397
|
var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
|
|
1342
|
-
_self.queue
|
|
1398
|
+
_self.queue[_DYN_PUSH ](throttleMessage);
|
|
1343
1399
|
if (severity === 1 ) {
|
|
1344
|
-
_self
|
|
1400
|
+
_self[STR_ERROR_TO_CONSOLE ](throttleLimitMessage);
|
|
1345
1401
|
}
|
|
1346
1402
|
else {
|
|
1347
|
-
_self
|
|
1403
|
+
_self[STR_WARN_TO_CONSOLE ](throttleLimitMessage);
|
|
1348
1404
|
}
|
|
1349
1405
|
}
|
|
1350
1406
|
}
|
|
1351
|
-
}
|
|
1352
|
-
function
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
return defValue;
|
|
1407
|
+
}
|
|
1408
|
+
function _setDefaultsFromConfig(config) {
|
|
1409
|
+
_loggingLevelConsole = getCfgValue(config.loggingLevelConsole, 0);
|
|
1410
|
+
_loggingLevelTelemetry = getCfgValue(config.loggingLevelTelemetry, 1);
|
|
1411
|
+
_maxInternalMessageLimit = getCfgValue(config.maxMessageLimit, 25);
|
|
1412
|
+
_enableDebugExceptions = getCfgValue(config[_DYN_ENABLE_DEBUG_EXCEPTI4 ], false);
|
|
1358
1413
|
}
|
|
1359
1414
|
function _areInternalMessagesThrottled() {
|
|
1360
|
-
return _messageCount >=
|
|
1415
|
+
return _messageCount >= _maxInternalMessageLimit;
|
|
1361
1416
|
}
|
|
1362
1417
|
function _debugExtMsg(name, data) {
|
|
1363
|
-
var dbgExt = getDebugExt(config);
|
|
1364
|
-
if (dbgExt && dbgExt
|
|
1365
|
-
dbgExt
|
|
1418
|
+
var dbgExt = getDebugExt(config || {});
|
|
1419
|
+
if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
|
|
1420
|
+
dbgExt[_DYN_DIAG_LOG ](name, data);
|
|
1366
1421
|
}
|
|
1367
1422
|
}
|
|
1368
1423
|
});
|
|
@@ -1375,25 +1430,27 @@
|
|
|
1375
1430
|
}
|
|
1376
1431
|
function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
|
|
1377
1432
|
if (isUserAct === void 0) { isUserAct = false; }
|
|
1378
|
-
(logger
|
|
1433
|
+
_getLogger(logger).throwInternal(severity, msgId, msg, properties, isUserAct);
|
|
1379
1434
|
}
|
|
1380
1435
|
function _warnToConsole(logger, message) {
|
|
1381
|
-
_getLogger(logger)
|
|
1436
|
+
_getLogger(logger)[STR_WARN_TO_CONSOLE ](message);
|
|
1382
1437
|
}
|
|
1383
1438
|
function _logInternalMessage(logger, severity, message) {
|
|
1384
|
-
_getLogger(logger)
|
|
1439
|
+
_getLogger(logger)[_DYN_LOG_INTERNAL_MESSAGE ](severity, message);
|
|
1385
1440
|
}
|
|
1386
1441
|
|
|
1387
1442
|
var strExecutionContextKey = "ctx";
|
|
1443
|
+
var strParentContextKey = "ParentContextKey";
|
|
1444
|
+
var strChildrenContextKey = "ChildrenContextKey";
|
|
1388
1445
|
var _defaultPerfManager = null;
|
|
1389
1446
|
var PerfEvent = /** @class */ (function () {
|
|
1390
1447
|
function PerfEvent(name, payloadDetails, isAsync) {
|
|
1391
1448
|
var _self = this;
|
|
1392
1449
|
var accessorDefined = false;
|
|
1393
1450
|
_self.start = dateNow();
|
|
1394
|
-
_self
|
|
1395
|
-
_self
|
|
1396
|
-
_self
|
|
1451
|
+
_self[_DYN_NAME ] = name;
|
|
1452
|
+
_self[_DYN_IS_ASYNC ] = isAsync;
|
|
1453
|
+
_self[_DYN_IS_CHILD_EVT ] = function () { return false; };
|
|
1397
1454
|
if (isFunction(payloadDetails)) {
|
|
1398
1455
|
var theDetails_1;
|
|
1399
1456
|
accessorDefined = objDefineAccessors(_self, "payload", function () {
|
|
@@ -1404,24 +1461,24 @@
|
|
|
1404
1461
|
return theDetails_1;
|
|
1405
1462
|
});
|
|
1406
1463
|
}
|
|
1407
|
-
_self
|
|
1464
|
+
_self[_DYN_GET_CTX ] = function (key) {
|
|
1408
1465
|
if (key) {
|
|
1409
|
-
if (key === PerfEvent
|
|
1466
|
+
if (key === PerfEvent[strParentContextKey] || key === PerfEvent[strChildrenContextKey]) {
|
|
1410
1467
|
return _self[key];
|
|
1411
1468
|
}
|
|
1412
1469
|
return (_self[strExecutionContextKey] || {})[key];
|
|
1413
1470
|
}
|
|
1414
1471
|
return null;
|
|
1415
1472
|
};
|
|
1416
|
-
_self
|
|
1473
|
+
_self[_DYN_SET_CTX ] = function (key, value) {
|
|
1417
1474
|
if (key) {
|
|
1418
|
-
if (key === PerfEvent
|
|
1475
|
+
if (key === PerfEvent[strParentContextKey]) {
|
|
1419
1476
|
if (!_self[key]) {
|
|
1420
|
-
_self
|
|
1477
|
+
_self[_DYN_IS_CHILD_EVT ] = function () { return true; };
|
|
1421
1478
|
}
|
|
1422
1479
|
_self[key] = value;
|
|
1423
1480
|
}
|
|
1424
|
-
else if (key === PerfEvent
|
|
1481
|
+
else if (key === PerfEvent[strChildrenContextKey]) {
|
|
1425
1482
|
_self[key] = value;
|
|
1426
1483
|
}
|
|
1427
1484
|
else {
|
|
@@ -1430,20 +1487,20 @@
|
|
|
1430
1487
|
}
|
|
1431
1488
|
}
|
|
1432
1489
|
};
|
|
1433
|
-
_self
|
|
1490
|
+
_self[_DYN_COMPLETE ] = function () {
|
|
1434
1491
|
var childTime = 0;
|
|
1435
|
-
var childEvts = _self
|
|
1492
|
+
var childEvts = _self[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
1436
1493
|
if (isArray(childEvts)) {
|
|
1437
|
-
for (var lp = 0; lp < childEvts
|
|
1494
|
+
for (var lp = 0; lp < childEvts[_DYN_LENGTH ]; lp++) {
|
|
1438
1495
|
var childEvt = childEvts[lp];
|
|
1439
1496
|
if (childEvt) {
|
|
1440
|
-
childTime += childEvt
|
|
1497
|
+
childTime += childEvt[_DYN_TIME ];
|
|
1441
1498
|
}
|
|
1442
1499
|
}
|
|
1443
1500
|
}
|
|
1444
|
-
_self
|
|
1445
|
-
_self.exTime = _self
|
|
1446
|
-
_self
|
|
1501
|
+
_self[_DYN_TIME ] = dateNow() - _self.start;
|
|
1502
|
+
_self.exTime = _self[_DYN_TIME ] - childTime;
|
|
1503
|
+
_self[_DYN_COMPLETE ] = function () { };
|
|
1447
1504
|
if (!accessorDefined && isFunction(payloadDetails)) {
|
|
1448
1505
|
_self.payload = payloadDetails();
|
|
1449
1506
|
}
|
|
@@ -1462,19 +1519,19 @@
|
|
|
1462
1519
|
};
|
|
1463
1520
|
_self.fire = function (perfEvent) {
|
|
1464
1521
|
if (perfEvent) {
|
|
1465
|
-
perfEvent
|
|
1466
|
-
if (manager && isFunction(manager
|
|
1467
|
-
manager
|
|
1522
|
+
perfEvent[_DYN_COMPLETE ]();
|
|
1523
|
+
if (manager && isFunction(manager[STR_PERF_EVENT ])) {
|
|
1524
|
+
manager[STR_PERF_EVENT ](perfEvent);
|
|
1468
1525
|
}
|
|
1469
1526
|
}
|
|
1470
1527
|
};
|
|
1471
|
-
_self
|
|
1528
|
+
_self[_DYN_SET_CTX ] = function (key, value) {
|
|
1472
1529
|
if (key) {
|
|
1473
1530
|
var ctx = _self[strExecutionContextKey] = _self[strExecutionContextKey] || {};
|
|
1474
1531
|
ctx[key] = value;
|
|
1475
1532
|
}
|
|
1476
1533
|
};
|
|
1477
|
-
_self
|
|
1534
|
+
_self[_DYN_GET_CTX ] = function (key) {
|
|
1478
1535
|
return (_self[strExecutionContextKey] || {})[key];
|
|
1479
1536
|
};
|
|
1480
1537
|
});
|
|
@@ -1486,40 +1543,40 @@
|
|
|
1486
1543
|
function doPerf(mgrSource, getSource, func, details, isAsync) {
|
|
1487
1544
|
if (mgrSource) {
|
|
1488
1545
|
var perfMgr = mgrSource;
|
|
1489
|
-
if (
|
|
1490
|
-
perfMgr = perfMgr[
|
|
1546
|
+
if (perfMgr[STR_GET_PERF_MGR]) {
|
|
1547
|
+
perfMgr = perfMgr[STR_GET_PERF_MGR]();
|
|
1491
1548
|
}
|
|
1492
1549
|
if (perfMgr) {
|
|
1493
1550
|
var perfEvt = void 0;
|
|
1494
|
-
var currentActive = perfMgr
|
|
1551
|
+
var currentActive = perfMgr[_DYN_GET_CTX ](doPerfActiveKey);
|
|
1495
1552
|
try {
|
|
1496
1553
|
perfEvt = perfMgr.create(getSource(), details, isAsync);
|
|
1497
1554
|
if (perfEvt) {
|
|
1498
|
-
if (currentActive && perfEvt
|
|
1499
|
-
perfEvt
|
|
1500
|
-
if (currentActive
|
|
1501
|
-
var children = currentActive
|
|
1555
|
+
if (currentActive && perfEvt[_DYN_SET_CTX ]) {
|
|
1556
|
+
perfEvt[_DYN_SET_CTX ](PerfEvent[strParentContextKey], currentActive);
|
|
1557
|
+
if (currentActive[_DYN_GET_CTX ] && currentActive[_DYN_SET_CTX ]) {
|
|
1558
|
+
var children = currentActive[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
|
|
1502
1559
|
if (!children) {
|
|
1503
1560
|
children = [];
|
|
1504
|
-
currentActive
|
|
1561
|
+
currentActive[_DYN_SET_CTX ](PerfEvent[strChildrenContextKey], children);
|
|
1505
1562
|
}
|
|
1506
|
-
children
|
|
1563
|
+
children[_DYN_PUSH ](perfEvt);
|
|
1507
1564
|
}
|
|
1508
1565
|
}
|
|
1509
|
-
perfMgr
|
|
1566
|
+
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, perfEvt);
|
|
1510
1567
|
return func(perfEvt);
|
|
1511
1568
|
}
|
|
1512
1569
|
}
|
|
1513
1570
|
catch (ex) {
|
|
1514
|
-
if (perfEvt && perfEvt
|
|
1515
|
-
perfEvt
|
|
1571
|
+
if (perfEvt && perfEvt[_DYN_SET_CTX ]) {
|
|
1572
|
+
perfEvt[_DYN_SET_CTX ]("exception", ex);
|
|
1516
1573
|
}
|
|
1517
1574
|
}
|
|
1518
1575
|
finally {
|
|
1519
1576
|
if (perfEvt) {
|
|
1520
1577
|
perfMgr.fire(perfEvt);
|
|
1521
1578
|
}
|
|
1522
|
-
perfMgr
|
|
1579
|
+
perfMgr[_DYN_SET_CTX ](doPerfActiveKey, currentActive);
|
|
1523
1580
|
}
|
|
1524
1581
|
}
|
|
1525
1582
|
}
|
|
@@ -1601,8 +1658,8 @@
|
|
|
1601
1658
|
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
1602
1659
|
var number = random32() >>> 0;
|
|
1603
1660
|
var chars = 0;
|
|
1604
|
-
var result =
|
|
1605
|
-
while (result
|
|
1661
|
+
var result = STR_EMPTY;
|
|
1662
|
+
while (result[_DYN_LENGTH ] < maxLength) {
|
|
1606
1663
|
chars++;
|
|
1607
1664
|
result += base64chars.charAt(number & 0x3F);
|
|
1608
1665
|
number >>>= 6;
|
|
@@ -1615,7 +1672,7 @@
|
|
|
1615
1672
|
}
|
|
1616
1673
|
|
|
1617
1674
|
var _objDefineProperty = ObjDefineProperty;
|
|
1618
|
-
var version = "2.8.5-nightly.2206-
|
|
1675
|
+
var version = "2.8.5-nightly.2206-06";
|
|
1619
1676
|
var instanceName = "." + newId(6);
|
|
1620
1677
|
var _dataUid = 0;
|
|
1621
1678
|
function _createAccessor(target, prop, value) {
|
|
@@ -1634,7 +1691,7 @@
|
|
|
1634
1691
|
return false;
|
|
1635
1692
|
}
|
|
1636
1693
|
function _canAcceptData(target) {
|
|
1637
|
-
return target
|
|
1694
|
+
return target[_DYN_NODE_TYPE ] === 1 || target[_DYN_NODE_TYPE ] === 9 || !(+target[_DYN_NODE_TYPE ]);
|
|
1638
1695
|
}
|
|
1639
1696
|
function _getCache(data, target) {
|
|
1640
1697
|
var theCache = target[data.id];
|
|
@@ -1654,11 +1711,11 @@
|
|
|
1654
1711
|
}
|
|
1655
1712
|
function createUniqueNamespace(name, includeVersion) {
|
|
1656
1713
|
if (includeVersion === void 0) { includeVersion = false; }
|
|
1657
|
-
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version :
|
|
1714
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
1658
1715
|
}
|
|
1659
1716
|
function createElmNodeData(name) {
|
|
1660
1717
|
var data = {
|
|
1661
|
-
id: createUniqueNamespace("_aiData-" + (name ||
|
|
1718
|
+
id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
|
|
1662
1719
|
accept: function (target) {
|
|
1663
1720
|
return _canAcceptData(target);
|
|
1664
1721
|
},
|
|
@@ -1715,7 +1772,7 @@
|
|
|
1715
1772
|
return true;
|
|
1716
1773
|
}
|
|
1717
1774
|
function _createCookieMgrConfig(rootConfig) {
|
|
1718
|
-
var cookieMgrCfg = rootConfig
|
|
1775
|
+
var cookieMgrCfg = rootConfig[_DYN_COOKIE_CFG ] = rootConfig[_DYN_COOKIE_CFG ] || {};
|
|
1719
1776
|
setValue(cookieMgrCfg, "domain", rootConfig.cookieDomain, isNotNullOrUndefined, isNullOrUndefined);
|
|
1720
1777
|
setValue(cookieMgrCfg, "path", rootConfig.cookiePath || "/", null, isNullOrUndefined);
|
|
1721
1778
|
if (isNullOrUndefined(cookieMgrCfg[strEnabled])) {
|
|
@@ -1736,7 +1793,7 @@
|
|
|
1736
1793
|
cookieMgr = core.getCookieMgr();
|
|
1737
1794
|
}
|
|
1738
1795
|
else if (config) {
|
|
1739
|
-
var cookieCfg = config
|
|
1796
|
+
var cookieCfg = config[_DYN_COOKIE_CFG ];
|
|
1740
1797
|
if (cookieCfg[strConfigCookieMgr]) {
|
|
1741
1798
|
cookieMgr = cookieCfg[strConfigCookieMgr];
|
|
1742
1799
|
}
|
|
@@ -1745,36 +1802,38 @@
|
|
|
1745
1802
|
}
|
|
1746
1803
|
}
|
|
1747
1804
|
if (!cookieMgr) {
|
|
1748
|
-
cookieMgr = _gblCookieMgr(config, (core || {})
|
|
1805
|
+
cookieMgr = _gblCookieMgr(config, (core || {})[_DYN_LOGGER ]);
|
|
1749
1806
|
}
|
|
1750
1807
|
return cookieMgr;
|
|
1751
1808
|
}
|
|
1752
1809
|
function createCookieMgr(rootConfig, logger) {
|
|
1810
|
+
var _a;
|
|
1753
1811
|
var cookieMgrConfig = _createCookieMgrConfig(rootConfig || _globalCookieConfig);
|
|
1754
1812
|
var _path = cookieMgrConfig.path || "/";
|
|
1755
1813
|
var _domain = cookieMgrConfig.domain;
|
|
1756
1814
|
var _enabled = cookieMgrConfig[strEnabled] !== false;
|
|
1757
|
-
var cookieMgr = {
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1815
|
+
var cookieMgr = (_a = {
|
|
1816
|
+
isEnabled: function () {
|
|
1817
|
+
var enabled = _enabled && areCookiesSupported(logger);
|
|
1818
|
+
var gblManager = _globalCookieConfig[strConfigCookieMgr];
|
|
1819
|
+
if (enabled && gblManager && cookieMgr !== gblManager) {
|
|
1820
|
+
enabled = _isMgrEnabled(gblManager);
|
|
1821
|
+
}
|
|
1822
|
+
return enabled;
|
|
1763
1823
|
}
|
|
1764
|
-
return enabled;
|
|
1765
1824
|
},
|
|
1766
|
-
|
|
1825
|
+
_a[_DYN_SET_ENABLED ] = function (value) {
|
|
1767
1826
|
_enabled = value !== false;
|
|
1768
1827
|
},
|
|
1769
|
-
set
|
|
1828
|
+
_a.set = function (name, value, maxAgeSec, domain, path) {
|
|
1770
1829
|
var result = false;
|
|
1771
1830
|
if (_isMgrEnabled(cookieMgr)) {
|
|
1772
1831
|
var values = {};
|
|
1773
|
-
var theValue = strTrim(value ||
|
|
1774
|
-
var idx = theValue
|
|
1832
|
+
var theValue = strTrim(value || STR_EMPTY);
|
|
1833
|
+
var idx = theValue[_DYN_INDEX_OF ](";");
|
|
1775
1834
|
if (idx !== -1) {
|
|
1776
|
-
theValue = strTrim(value
|
|
1777
|
-
values = _extractParts(value
|
|
1835
|
+
theValue = strTrim(value[_DYN_SUBSTRING ](0, idx));
|
|
1836
|
+
values = _extractParts(value[_DYN_SUBSTRING ](idx + 1));
|
|
1778
1837
|
}
|
|
1779
1838
|
setValue(values, "domain", domain || _domain, isTruthy, isUndefined);
|
|
1780
1839
|
if (!isNullOrUndefined(maxAgeSec)) {
|
|
@@ -1785,18 +1844,18 @@
|
|
|
1785
1844
|
if (expireMs > 0) {
|
|
1786
1845
|
var expiry = new Date();
|
|
1787
1846
|
expiry.setTime(expireMs);
|
|
1788
|
-
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) ||
|
|
1847
|
+
setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
|
|
1789
1848
|
}
|
|
1790
1849
|
}
|
|
1791
1850
|
if (!_isIE) {
|
|
1792
|
-
setValue(values, "max-age",
|
|
1851
|
+
setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
|
|
1793
1852
|
}
|
|
1794
1853
|
}
|
|
1795
1854
|
var location_1 = getLocation();
|
|
1796
1855
|
if (location_1 && location_1.protocol === "https:") {
|
|
1797
1856
|
setValue(values, "secure", null, null, isUndefined);
|
|
1798
1857
|
if (_allowUaSameSite === null) {
|
|
1799
|
-
_allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})
|
|
1858
|
+
_allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
|
|
1800
1859
|
}
|
|
1801
1860
|
if (_allowUaSameSite) {
|
|
1802
1861
|
setValue(values, "SameSite", "None", null, isUndefined);
|
|
@@ -1809,21 +1868,21 @@
|
|
|
1809
1868
|
}
|
|
1810
1869
|
return result;
|
|
1811
1870
|
},
|
|
1812
|
-
get
|
|
1813
|
-
var value =
|
|
1871
|
+
_a.get = function (name) {
|
|
1872
|
+
var value = STR_EMPTY;
|
|
1814
1873
|
if (_isMgrEnabled(cookieMgr)) {
|
|
1815
1874
|
value = (cookieMgrConfig.getCookie || _getCookieValue)(name);
|
|
1816
1875
|
}
|
|
1817
1876
|
return value;
|
|
1818
1877
|
},
|
|
1819
|
-
del
|
|
1878
|
+
_a.del = function (name, path) {
|
|
1820
1879
|
var result = false;
|
|
1821
1880
|
if (_isMgrEnabled(cookieMgr)) {
|
|
1822
1881
|
result = cookieMgr.purge(name, path);
|
|
1823
1882
|
}
|
|
1824
1883
|
return result;
|
|
1825
1884
|
},
|
|
1826
|
-
purge
|
|
1885
|
+
_a.purge = function (name, path) {
|
|
1827
1886
|
var _a;
|
|
1828
1887
|
var result = false;
|
|
1829
1888
|
if (areCookiesSupported(logger)) {
|
|
@@ -1835,12 +1894,12 @@
|
|
|
1835
1894
|
values["max-age"] = "0";
|
|
1836
1895
|
}
|
|
1837
1896
|
var delCookie = cookieMgrConfig.delCookie || _setCookieValue;
|
|
1838
|
-
delCookie(name, _formatCookieValue(
|
|
1897
|
+
delCookie(name, _formatCookieValue(STR_EMPTY, values));
|
|
1839
1898
|
result = true;
|
|
1840
1899
|
}
|
|
1841
1900
|
return result;
|
|
1842
|
-
}
|
|
1843
|
-
|
|
1901
|
+
},
|
|
1902
|
+
_a);
|
|
1844
1903
|
cookieMgr[strConfigCookieMgr] = cookieMgr;
|
|
1845
1904
|
return cookieMgr;
|
|
1846
1905
|
}
|
|
@@ -1859,17 +1918,17 @@
|
|
|
1859
1918
|
}
|
|
1860
1919
|
function _extractParts(theValue) {
|
|
1861
1920
|
var values = {};
|
|
1862
|
-
if (theValue && theValue
|
|
1863
|
-
var parts = strTrim(theValue)
|
|
1921
|
+
if (theValue && theValue[_DYN_LENGTH ]) {
|
|
1922
|
+
var parts = strTrim(theValue)[_DYN_SPLIT ](";");
|
|
1864
1923
|
arrForEach(parts, function (thePart) {
|
|
1865
|
-
thePart = strTrim(thePart ||
|
|
1924
|
+
thePart = strTrim(thePart || STR_EMPTY);
|
|
1866
1925
|
if (thePart) {
|
|
1867
|
-
var idx = thePart
|
|
1926
|
+
var idx = thePart[_DYN_INDEX_OF ]("=");
|
|
1868
1927
|
if (idx === -1) {
|
|
1869
1928
|
values[thePart] = null;
|
|
1870
1929
|
}
|
|
1871
1930
|
else {
|
|
1872
|
-
values[strTrim(thePart
|
|
1931
|
+
values[strTrim(thePart[_DYN_SUBSTRING ](0, idx))] = strTrim(thePart[_DYN_SUBSTRING ](idx + 1));
|
|
1873
1932
|
}
|
|
1874
1933
|
}
|
|
1875
1934
|
});
|
|
@@ -1883,21 +1942,21 @@
|
|
|
1883
1942
|
return null;
|
|
1884
1943
|
}
|
|
1885
1944
|
function _formatCookieValue(value, values) {
|
|
1886
|
-
var cookieValue = value ||
|
|
1945
|
+
var cookieValue = value || STR_EMPTY;
|
|
1887
1946
|
objForEachKey(values, function (name, theValue) {
|
|
1888
|
-
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue :
|
|
1947
|
+
cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
|
|
1889
1948
|
});
|
|
1890
1949
|
return cookieValue;
|
|
1891
1950
|
}
|
|
1892
1951
|
function _getCookieValue(name) {
|
|
1893
|
-
var cookieValue =
|
|
1952
|
+
var cookieValue = STR_EMPTY;
|
|
1894
1953
|
if (_doc) {
|
|
1895
|
-
var theCookie = _doc[strCookie] ||
|
|
1954
|
+
var theCookie = _doc[strCookie] || STR_EMPTY;
|
|
1896
1955
|
if (_parsedCookieValue !== theCookie) {
|
|
1897
1956
|
_cookieCache = _extractParts(theCookie);
|
|
1898
1957
|
_parsedCookieValue = theCookie;
|
|
1899
1958
|
}
|
|
1900
|
-
cookieValue = strTrim(_cookieCache[name] ||
|
|
1959
|
+
cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
|
|
1901
1960
|
}
|
|
1902
1961
|
return cookieValue;
|
|
1903
1962
|
}
|
|
@@ -1950,16 +2009,17 @@
|
|
|
1950
2009
|
var elmNodeData = createElmNodeData("events");
|
|
1951
2010
|
var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
|
|
1952
2011
|
function _normalizeNamespace(name) {
|
|
1953
|
-
if (name && name
|
|
1954
|
-
return name.replace(/^\s*\.*|\.*\s*$/g,
|
|
2012
|
+
if (name && name[_DYN_REPLACE ]) {
|
|
2013
|
+
return name.replace(/^\s*\.*|\.*\s*$/g, STR_EMPTY);
|
|
1955
2014
|
}
|
|
1956
2015
|
return name;
|
|
1957
2016
|
}
|
|
1958
2017
|
function _getEvtNamespace(eventName, evtNamespace) {
|
|
2018
|
+
var _a;
|
|
1959
2019
|
if (evtNamespace) {
|
|
1960
|
-
var theNamespace_1 =
|
|
2020
|
+
var theNamespace_1 = STR_EMPTY;
|
|
1961
2021
|
if (isArray(evtNamespace)) {
|
|
1962
|
-
theNamespace_1 =
|
|
2022
|
+
theNamespace_1 = STR_EMPTY;
|
|
1963
2023
|
arrForEach(evtNamespace, function (name) {
|
|
1964
2024
|
name = _normalizeNamespace(name);
|
|
1965
2025
|
if (name) {
|
|
@@ -1977,14 +2037,14 @@
|
|
|
1977
2037
|
if (theNamespace_1[0] !== ".") {
|
|
1978
2038
|
theNamespace_1 = "." + theNamespace_1;
|
|
1979
2039
|
}
|
|
1980
|
-
eventName = (eventName ||
|
|
2040
|
+
eventName = (eventName || STR_EMPTY) + theNamespace_1;
|
|
1981
2041
|
}
|
|
1982
2042
|
}
|
|
1983
|
-
var parsedEvent = (eventNamespace.exec(eventName ||
|
|
1984
|
-
return {
|
|
1985
|
-
|
|
1986
|
-
ns
|
|
1987
|
-
|
|
2043
|
+
var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
|
|
2044
|
+
return _a = {},
|
|
2045
|
+
_a[_DYN_TYPE ] = parsedEvent[1],
|
|
2046
|
+
_a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT ](".").sort()).join("."),
|
|
2047
|
+
_a;
|
|
1988
2048
|
}
|
|
1989
2049
|
function __getRegisteredEvents(target, eventName, evtNamespace) {
|
|
1990
2050
|
var theEvents = [];
|
|
@@ -1992,12 +2052,13 @@
|
|
|
1992
2052
|
var evtName = _getEvtNamespace(eventName, evtNamespace);
|
|
1993
2053
|
objForEachKey(eventCache, function (evtType, registeredEvents) {
|
|
1994
2054
|
arrForEach(registeredEvents, function (value) {
|
|
1995
|
-
|
|
2055
|
+
var _a;
|
|
2056
|
+
if (!evtName[_DYN_TYPE ] || evtName[_DYN_TYPE ] === value.evtName[_DYN_TYPE ]) {
|
|
1996
2057
|
if (!evtName.ns || evtName.ns === evtName.ns) {
|
|
1997
|
-
theEvents
|
|
1998
|
-
|
|
1999
|
-
handler
|
|
2000
|
-
|
|
2058
|
+
theEvents[_DYN_PUSH ]((_a = {},
|
|
2059
|
+
_a[_DYN_NAME ] = value.evtName[_DYN_TYPE ] + (value.evtName.ns ? "." + value.evtName.ns : STR_EMPTY),
|
|
2060
|
+
_a.handler = value[_DYN_HANDLER ],
|
|
2061
|
+
_a));
|
|
2001
2062
|
}
|
|
2002
2063
|
}
|
|
2003
2064
|
});
|
|
@@ -2014,53 +2075,53 @@
|
|
|
2014
2075
|
return registeredEvents;
|
|
2015
2076
|
}
|
|
2016
2077
|
function _doDetach(obj, evtName, handlerRef, useCapture) {
|
|
2017
|
-
if (obj && evtName && evtName
|
|
2078
|
+
if (obj && evtName && evtName[_DYN_TYPE ]) {
|
|
2018
2079
|
if (obj[strRemoveEventListener]) {
|
|
2019
|
-
obj[strRemoveEventListener](evtName
|
|
2080
|
+
obj[strRemoveEventListener](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
2020
2081
|
}
|
|
2021
2082
|
else if (obj[strDetachEvent]) {
|
|
2022
|
-
obj[strDetachEvent](strOnPrefix + evtName
|
|
2083
|
+
obj[strDetachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
2023
2084
|
}
|
|
2024
2085
|
}
|
|
2025
2086
|
}
|
|
2026
2087
|
function _doAttach(obj, evtName, handlerRef, useCapture) {
|
|
2027
2088
|
var result = false;
|
|
2028
|
-
if (obj && evtName && evtName
|
|
2089
|
+
if (obj && evtName && evtName[_DYN_TYPE ] && handlerRef) {
|
|
2029
2090
|
if (obj[strAddEventHelper]) {
|
|
2030
|
-
obj[strAddEventHelper](evtName
|
|
2091
|
+
obj[strAddEventHelper](evtName[_DYN_TYPE ], handlerRef, useCapture);
|
|
2031
2092
|
result = true;
|
|
2032
2093
|
}
|
|
2033
2094
|
else if (obj[strAttachEvent]) {
|
|
2034
|
-
obj[strAttachEvent](strOnPrefix + evtName
|
|
2095
|
+
obj[strAttachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
|
|
2035
2096
|
result = true;
|
|
2036
2097
|
}
|
|
2037
2098
|
}
|
|
2038
2099
|
return result;
|
|
2039
2100
|
}
|
|
2040
2101
|
function _doUnregister(target, events, evtName, unRegFn) {
|
|
2041
|
-
var idx = events
|
|
2102
|
+
var idx = events[_DYN_LENGTH ];
|
|
2042
2103
|
while (idx--) {
|
|
2043
2104
|
var theEvent = events[idx];
|
|
2044
2105
|
if (theEvent) {
|
|
2045
2106
|
if (!evtName.ns || evtName.ns === theEvent.evtName.ns) {
|
|
2046
2107
|
if (!unRegFn || unRegFn(theEvent)) {
|
|
2047
|
-
_doDetach(target, theEvent.evtName, theEvent
|
|
2048
|
-
events
|
|
2108
|
+
_doDetach(target, theEvent.evtName, theEvent[_DYN_HANDLER ], theEvent.capture);
|
|
2109
|
+
events[_DYN_SPLICE ](idx, 1);
|
|
2049
2110
|
}
|
|
2050
2111
|
}
|
|
2051
2112
|
}
|
|
2052
2113
|
}
|
|
2053
2114
|
}
|
|
2054
2115
|
function _unregisterEvents(target, evtName, unRegFn) {
|
|
2055
|
-
if (evtName
|
|
2056
|
-
_doUnregister(target, _getRegisteredEvents(target, evtName
|
|
2116
|
+
if (evtName[_DYN_TYPE ]) {
|
|
2117
|
+
_doUnregister(target, _getRegisteredEvents(target, evtName[_DYN_TYPE ]), evtName, unRegFn);
|
|
2057
2118
|
}
|
|
2058
2119
|
else {
|
|
2059
2120
|
var eventCache = elmNodeData.get(target, strEvents, {});
|
|
2060
2121
|
objForEachKey(eventCache, function (evtType, events) {
|
|
2061
2122
|
_doUnregister(target, events, evtName, unRegFn);
|
|
2062
2123
|
});
|
|
2063
|
-
if (objKeys(eventCache)
|
|
2124
|
+
if (objKeys(eventCache)[_DYN_LENGTH ] === 0) {
|
|
2064
2125
|
elmNodeData.kill(target, strEvents);
|
|
2065
2126
|
}
|
|
2066
2127
|
}
|
|
@@ -2074,7 +2135,7 @@
|
|
|
2074
2135
|
else {
|
|
2075
2136
|
newNamespaces = [theNamespace, namespaces];
|
|
2076
2137
|
}
|
|
2077
|
-
newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)
|
|
2138
|
+
newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT ](".");
|
|
2078
2139
|
}
|
|
2079
2140
|
else {
|
|
2080
2141
|
newNamespaces = theNamespace;
|
|
@@ -2082,6 +2143,7 @@
|
|
|
2082
2143
|
return newNamespaces;
|
|
2083
2144
|
}
|
|
2084
2145
|
function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
|
|
2146
|
+
var _a;
|
|
2085
2147
|
if (useCapture === void 0) { useCapture = false; }
|
|
2086
2148
|
var result = false;
|
|
2087
2149
|
if (target) {
|
|
@@ -2089,13 +2151,14 @@
|
|
|
2089
2151
|
var evtName = _getEvtNamespace(eventName, evtNamespace);
|
|
2090
2152
|
result = _doAttach(target, evtName, handlerRef, useCapture);
|
|
2091
2153
|
if (result && elmNodeData.accept(target)) {
|
|
2092
|
-
var registeredEvent = {
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2154
|
+
var registeredEvent = (_a = {
|
|
2155
|
+
guid: _guid++,
|
|
2156
|
+
evtName: evtName
|
|
2157
|
+
},
|
|
2158
|
+
_a[_DYN_HANDLER ] = handlerRef,
|
|
2159
|
+
_a.capture = useCapture,
|
|
2160
|
+
_a);
|
|
2161
|
+
_getRegisteredEvents(target, evtName.type)[_DYN_PUSH ](registeredEvent);
|
|
2099
2162
|
}
|
|
2100
2163
|
}
|
|
2101
2164
|
catch (e) {
|
|
@@ -2110,7 +2173,7 @@
|
|
|
2110
2173
|
var evtName_1 = _getEvtNamespace(eventName, evtNamespace);
|
|
2111
2174
|
var found_1 = false;
|
|
2112
2175
|
_unregisterEvents(target, evtName_1, function (regEvent) {
|
|
2113
|
-
if ((evtName_1.ns && !handlerRef) || regEvent
|
|
2176
|
+
if ((evtName_1.ns && !handlerRef) || regEvent[_DYN_HANDLER ] === handlerRef) {
|
|
2114
2177
|
found_1 = true;
|
|
2115
2178
|
return true;
|
|
2116
2179
|
}
|
|
@@ -2158,7 +2221,7 @@
|
|
|
2158
2221
|
}
|
|
2159
2222
|
function _addEventListeners(events, listener, excludeEvents, evtNamespace) {
|
|
2160
2223
|
var added = false;
|
|
2161
|
-
if (listener && events && events
|
|
2224
|
+
if (listener && events && events[_DYN_LENGTH ] > 0) {
|
|
2162
2225
|
arrForEach(events, function (name) {
|
|
2163
2226
|
if (name) {
|
|
2164
2227
|
if (!excludeEvents || arrIndexOf(excludeEvents, name) === -1) {
|
|
@@ -2173,7 +2236,7 @@
|
|
|
2173
2236
|
var added = false;
|
|
2174
2237
|
if (listener && events && isArray(events)) {
|
|
2175
2238
|
added = _addEventListeners(events, listener, excludeEvents, evtNamespace);
|
|
2176
|
-
if (!added && excludeEvents && excludeEvents
|
|
2239
|
+
if (!added && excludeEvents && excludeEvents[_DYN_LENGTH ] > 0) {
|
|
2177
2240
|
added = _addEventListeners(events, listener, null, evtNamespace);
|
|
2178
2241
|
}
|
|
2179
2242
|
}
|
|
@@ -2244,7 +2307,7 @@
|
|
|
2244
2307
|
function randomHexDigit() {
|
|
2245
2308
|
return randomValue(15);
|
|
2246
2309
|
}
|
|
2247
|
-
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"
|
|
2310
|
+
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[_DYN_REPLACE ](GuidRegex, function (c) {
|
|
2248
2311
|
var r = (randomHexDigit() | 0), v = (c === "x" ? r : r & 0x3 | 0x8);
|
|
2249
2312
|
return v.toString(16);
|
|
2250
2313
|
});
|
|
@@ -2258,7 +2321,7 @@
|
|
|
2258
2321
|
}
|
|
2259
2322
|
function generateW3CId() {
|
|
2260
2323
|
var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
2261
|
-
var oct =
|
|
2324
|
+
var oct = STR_EMPTY, tmp;
|
|
2262
2325
|
for (var a = 0; a < 4; a++) {
|
|
2263
2326
|
tmp = random32();
|
|
2264
2327
|
oct +=
|
|
@@ -2272,7 +2335,7 @@
|
|
|
2272
2335
|
hexValues[tmp >> 28 & 0xF];
|
|
2273
2336
|
}
|
|
2274
2337
|
var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
|
|
2275
|
-
return oct
|
|
2338
|
+
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);
|
|
2276
2339
|
}
|
|
2277
2340
|
var CoreUtils = {
|
|
2278
2341
|
_canUseCookies: undefined,
|
|
@@ -2328,23 +2391,23 @@
|
|
|
2328
2391
|
}, function (value) {
|
|
2329
2392
|
_canUseCookies = value;
|
|
2330
2393
|
arrForEach(_cookieMgrs, function (mgr) {
|
|
2331
|
-
mgr
|
|
2394
|
+
mgr[_DYN_SET_ENABLED ](value);
|
|
2332
2395
|
});
|
|
2333
2396
|
});
|
|
2334
2397
|
}
|
|
2335
2398
|
if (arrIndexOf(_cookieMgrs, cookieMgr) === -1) {
|
|
2336
|
-
_cookieMgrs
|
|
2399
|
+
_cookieMgrs[_DYN_PUSH ](cookieMgr);
|
|
2337
2400
|
}
|
|
2338
2401
|
if (isBoolean(legacyCanUseCookies)) {
|
|
2339
|
-
cookieMgr
|
|
2402
|
+
cookieMgr[_DYN_SET_ENABLED ](legacyCanUseCookies);
|
|
2340
2403
|
}
|
|
2341
2404
|
if (isBoolean(_canUseCookies)) {
|
|
2342
|
-
cookieMgr
|
|
2405
|
+
cookieMgr[_DYN_SET_ENABLED ](_canUseCookies);
|
|
2343
2406
|
}
|
|
2344
2407
|
return cookieMgr;
|
|
2345
2408
|
}
|
|
2346
2409
|
function disableCookies() {
|
|
2347
|
-
_legacyCookieMgr()
|
|
2410
|
+
_legacyCookieMgr()[_DYN_SET_ENABLED ](false);
|
|
2348
2411
|
}
|
|
2349
2412
|
function canUseCookies(logger) {
|
|
2350
2413
|
return _legacyCookieMgr(null, logger).isEnabled();
|
|
@@ -2366,7 +2429,7 @@
|
|
|
2366
2429
|
var INVALID_SPAN_ID = "0000000000000000";
|
|
2367
2430
|
var SAMPLED_FLAG = 0x01;
|
|
2368
2431
|
function _isValid(value, len, invalidValue) {
|
|
2369
|
-
if (value && value
|
|
2432
|
+
if (value && value[_DYN_LENGTH ] === len && value !== invalidValue) {
|
|
2370
2433
|
return !!value.match(/^[\da-f]*$/);
|
|
2371
2434
|
}
|
|
2372
2435
|
return false;
|
|
@@ -2382,27 +2445,29 @@
|
|
|
2382
2445
|
value = 0x01;
|
|
2383
2446
|
}
|
|
2384
2447
|
var result = value.toString(16);
|
|
2385
|
-
while (result
|
|
2448
|
+
while (result[_DYN_LENGTH ] < 2) {
|
|
2386
2449
|
result = "0" + result;
|
|
2387
2450
|
}
|
|
2388
2451
|
return result;
|
|
2389
2452
|
}
|
|
2390
2453
|
function createTraceParent(traceId, spanId, flags, version) {
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2454
|
+
var _a;
|
|
2455
|
+
return _a = {},
|
|
2456
|
+
_a[_DYN_VERSION ] = _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
|
|
2457
|
+
_a[_DYN_TRACE_ID ] = isValidTraceId(traceId) ? traceId : generateW3CId(),
|
|
2458
|
+
_a.spanId = isValidSpanId(spanId) ? spanId : generateW3CId()[_DYN_SUBSTR ](0, 16),
|
|
2459
|
+
_a.traceFlags = flags >= 0 && flags <= 0xFF ? flags : 1,
|
|
2460
|
+
_a;
|
|
2397
2461
|
}
|
|
2398
2462
|
function parseTraceParent(value) {
|
|
2463
|
+
var _a;
|
|
2399
2464
|
if (!value) {
|
|
2400
2465
|
return null;
|
|
2401
2466
|
}
|
|
2402
2467
|
if (isArray(value)) {
|
|
2403
2468
|
value = value[0] || "";
|
|
2404
2469
|
}
|
|
2405
|
-
if (!value || !isString(value) || value
|
|
2470
|
+
if (!value || !isString(value) || value[_DYN_LENGTH ] > 8192) {
|
|
2406
2471
|
return null;
|
|
2407
2472
|
}
|
|
2408
2473
|
var match = TRACE_PARENT_REGEX.exec(strTrim(value));
|
|
@@ -2412,12 +2477,12 @@
|
|
|
2412
2477
|
match[3] === INVALID_SPAN_ID) {
|
|
2413
2478
|
return null;
|
|
2414
2479
|
}
|
|
2415
|
-
return {
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2480
|
+
return _a = {},
|
|
2481
|
+
_a[_DYN_VERSION ] = match[1],
|
|
2482
|
+
_a[_DYN_TRACE_ID ] = match[2],
|
|
2483
|
+
_a[_DYN_SPAN_ID ] = match[3],
|
|
2484
|
+
_a[_DYN_TRACE_FLAGS ] = parseInt(match[4], 16),
|
|
2485
|
+
_a;
|
|
2421
2486
|
}
|
|
2422
2487
|
function isValidTraceId(value) {
|
|
2423
2488
|
return _isValid(value, 32, INVALID_TRACE_ID);
|
|
@@ -2427,27 +2492,27 @@
|
|
|
2427
2492
|
}
|
|
2428
2493
|
function isValidTraceParent(value) {
|
|
2429
2494
|
if (!value ||
|
|
2430
|
-
!_isValid(value
|
|
2431
|
-
!_isValid(value
|
|
2432
|
-
!_isValid(value
|
|
2433
|
-
!_isValid(_formatFlags(value
|
|
2495
|
+
!_isValid(value[_DYN_VERSION ], 2, INVALID_VERSION) ||
|
|
2496
|
+
!_isValid(value[_DYN_TRACE_ID ], 32, INVALID_TRACE_ID) ||
|
|
2497
|
+
!_isValid(value[_DYN_SPAN_ID ], 16, INVALID_SPAN_ID) ||
|
|
2498
|
+
!_isValid(_formatFlags(value[_DYN_TRACE_FLAGS ]), 2)) {
|
|
2434
2499
|
return false;
|
|
2435
2500
|
}
|
|
2436
2501
|
return true;
|
|
2437
2502
|
}
|
|
2438
2503
|
function isSampledFlag(value) {
|
|
2439
2504
|
if (isValidTraceParent(value)) {
|
|
2440
|
-
return (value
|
|
2505
|
+
return (value[_DYN_TRACE_FLAGS ] & SAMPLED_FLAG) === SAMPLED_FLAG;
|
|
2441
2506
|
}
|
|
2442
2507
|
return false;
|
|
2443
2508
|
}
|
|
2444
2509
|
function formatTraceParent(value) {
|
|
2445
2510
|
if (value) {
|
|
2446
|
-
var flags = _formatFlags(value
|
|
2511
|
+
var flags = _formatFlags(value[_DYN_TRACE_FLAGS ]);
|
|
2447
2512
|
if (!_isValid(flags, 2)) {
|
|
2448
2513
|
flags = "01";
|
|
2449
2514
|
}
|
|
2450
|
-
var version = value
|
|
2515
|
+
var version = value[_DYN_VERSION ] || DEFAULT_VERSION;
|
|
2451
2516
|
if (version !== "00" && version !== "ff") {
|
|
2452
2517
|
version = DEFAULT_VERSION;
|
|
2453
2518
|
}
|
|
@@ -2464,7 +2529,6 @@
|
|
|
2464
2529
|
return traceParent;
|
|
2465
2530
|
}
|
|
2466
2531
|
|
|
2467
|
-
var strDoUnload = "_doUnload";
|
|
2468
2532
|
var pluginStateData = createElmNodeData("plugin");
|
|
2469
2533
|
function _getPluginState(plugin) {
|
|
2470
2534
|
return pluginStateData.get(plugin, "state", {}, true);
|
|
@@ -2472,49 +2536,49 @@
|
|
|
2472
2536
|
function initializePlugins(processContext, extensions) {
|
|
2473
2537
|
var initPlugins = [];
|
|
2474
2538
|
var lastPlugin = null;
|
|
2475
|
-
var proxy = processContext
|
|
2539
|
+
var proxy = processContext[_DYN_GET_NEXT ]();
|
|
2476
2540
|
var pluginState;
|
|
2477
2541
|
while (proxy) {
|
|
2478
|
-
var thePlugin = proxy
|
|
2542
|
+
var thePlugin = proxy[_DYN_GET_PLUGIN ]();
|
|
2479
2543
|
if (thePlugin) {
|
|
2480
2544
|
if (lastPlugin &&
|
|
2481
|
-
isFunction(lastPlugin[
|
|
2482
|
-
isFunction(thePlugin[
|
|
2483
|
-
lastPlugin[
|
|
2545
|
+
isFunction(lastPlugin[_DYN_SET_NEXT_PLUGIN ]) &&
|
|
2546
|
+
isFunction(thePlugin[STR_PROCESS_TELEMETRY ])) {
|
|
2547
|
+
lastPlugin[_DYN_SET_NEXT_PLUGIN ](thePlugin);
|
|
2484
2548
|
}
|
|
2485
2549
|
var isInitialized = false;
|
|
2486
|
-
if (isFunction(thePlugin[
|
|
2487
|
-
isInitialized = thePlugin[
|
|
2550
|
+
if (isFunction(thePlugin[_DYN_IS_INITIALIZED ])) {
|
|
2551
|
+
isInitialized = thePlugin[_DYN_IS_INITIALIZED ]();
|
|
2488
2552
|
}
|
|
2489
2553
|
else {
|
|
2490
2554
|
pluginState = _getPluginState(thePlugin);
|
|
2491
|
-
isInitialized = pluginState[
|
|
2555
|
+
isInitialized = pluginState[_DYN_IS_INITIALIZED ];
|
|
2492
2556
|
}
|
|
2493
2557
|
if (!isInitialized) {
|
|
2494
|
-
initPlugins
|
|
2558
|
+
initPlugins[_DYN_PUSH ](thePlugin);
|
|
2495
2559
|
}
|
|
2496
2560
|
lastPlugin = thePlugin;
|
|
2497
|
-
proxy = proxy
|
|
2561
|
+
proxy = proxy[_DYN_GET_NEXT ]();
|
|
2498
2562
|
}
|
|
2499
2563
|
}
|
|
2500
2564
|
arrForEach(initPlugins, function (thePlugin) {
|
|
2501
|
-
var core = processContext
|
|
2502
|
-
thePlugin
|
|
2565
|
+
var core = processContext[STR_CORE]();
|
|
2566
|
+
thePlugin[_DYN_INITIALIZE ](processContext.getCfg(), core, extensions, processContext[_DYN_GET_NEXT ]());
|
|
2503
2567
|
pluginState = _getPluginState(thePlugin);
|
|
2504
|
-
if (!thePlugin[
|
|
2505
|
-
pluginState[
|
|
2568
|
+
if (!thePlugin[STR_CORE] && !pluginState[STR_CORE]) {
|
|
2569
|
+
pluginState[STR_CORE] = core;
|
|
2506
2570
|
}
|
|
2507
|
-
pluginState[
|
|
2508
|
-
delete pluginState[
|
|
2571
|
+
pluginState[_DYN_IS_INITIALIZED ] = true;
|
|
2572
|
+
delete pluginState[_DYN_TEARDOWN ];
|
|
2509
2573
|
});
|
|
2510
2574
|
}
|
|
2511
2575
|
function sortPlugins(plugins) {
|
|
2512
2576
|
return plugins.sort(function (extA, extB) {
|
|
2513
2577
|
var result = 0;
|
|
2514
2578
|
if (extB) {
|
|
2515
|
-
var bHasProcess = isFunction(extB[
|
|
2516
|
-
if (isFunction(extA[
|
|
2517
|
-
result = bHasProcess ? extA[
|
|
2579
|
+
var bHasProcess = isFunction(extB[STR_PROCESS_TELEMETRY]);
|
|
2580
|
+
if (isFunction(extA[STR_PROCESS_TELEMETRY])) {
|
|
2581
|
+
result = bHasProcess ? extA[STR_PRIORITY] - extB[STR_PRIORITY] : 1;
|
|
2518
2582
|
}
|
|
2519
2583
|
else if (bHasProcess) {
|
|
2520
2584
|
result = -1;
|
|
@@ -2529,12 +2593,12 @@
|
|
|
2529
2593
|
function unloadComponents(components, unloadCtx, unloadState, asyncCallback) {
|
|
2530
2594
|
var idx = 0;
|
|
2531
2595
|
function _doUnload() {
|
|
2532
|
-
while (idx < components
|
|
2596
|
+
while (idx < components[_DYN_LENGTH ]) {
|
|
2533
2597
|
var component = components[idx++];
|
|
2534
2598
|
if (component) {
|
|
2535
|
-
var func = component
|
|
2599
|
+
var func = component._doUnload || component[_DYN__DO_TEARDOWN ];
|
|
2536
2600
|
if (isFunction(func)) {
|
|
2537
|
-
if (func
|
|
2601
|
+
if (func[_DYN_CALL ](component, unloadCtx, unloadState, _doUnload) === true) {
|
|
2538
2602
|
return true;
|
|
2539
2603
|
}
|
|
2540
2604
|
}
|
|
@@ -2547,36 +2611,36 @@
|
|
|
2547
2611
|
var trace = {};
|
|
2548
2612
|
return {
|
|
2549
2613
|
getName: function () {
|
|
2550
|
-
return trace
|
|
2614
|
+
return trace[_DYN_NAME ];
|
|
2551
2615
|
},
|
|
2552
2616
|
setName: function (newValue) {
|
|
2553
2617
|
parentCtx && parentCtx.setName(newValue);
|
|
2554
|
-
trace
|
|
2618
|
+
trace[_DYN_NAME ] = newValue;
|
|
2555
2619
|
},
|
|
2556
2620
|
getTraceId: function () {
|
|
2557
|
-
return trace
|
|
2621
|
+
return trace[_DYN_TRACE_ID ];
|
|
2558
2622
|
},
|
|
2559
2623
|
setTraceId: function (newValue) {
|
|
2560
2624
|
parentCtx && parentCtx.setTraceId(newValue);
|
|
2561
2625
|
if (isValidTraceId(newValue)) {
|
|
2562
|
-
trace
|
|
2626
|
+
trace[_DYN_TRACE_ID ] = newValue;
|
|
2563
2627
|
}
|
|
2564
2628
|
},
|
|
2565
2629
|
getSpanId: function () {
|
|
2566
|
-
return trace
|
|
2630
|
+
return trace[_DYN_SPAN_ID ];
|
|
2567
2631
|
},
|
|
2568
2632
|
setSpanId: function (newValue) {
|
|
2569
2633
|
parentCtx && parentCtx.setSpanId(newValue);
|
|
2570
2634
|
if (isValidSpanId(newValue)) {
|
|
2571
|
-
trace
|
|
2635
|
+
trace[_DYN_SPAN_ID ] = newValue;
|
|
2572
2636
|
}
|
|
2573
2637
|
},
|
|
2574
2638
|
getTraceFlags: function () {
|
|
2575
|
-
return trace
|
|
2639
|
+
return trace[_DYN_TRACE_FLAGS ];
|
|
2576
2640
|
},
|
|
2577
2641
|
setTraceFlags: function (newTraceFlags) {
|
|
2578
2642
|
parentCtx && parentCtx.setTraceFlags(newTraceFlags);
|
|
2579
|
-
trace
|
|
2643
|
+
trace[_DYN_TRACE_FLAGS ] = newTraceFlags;
|
|
2580
2644
|
}
|
|
2581
2645
|
};
|
|
2582
2646
|
}
|
|
@@ -2587,12 +2651,12 @@
|
|
|
2587
2651
|
var _chainId = 0;
|
|
2588
2652
|
function _getNextProxyStart(proxy, core, startAt) {
|
|
2589
2653
|
while (proxy) {
|
|
2590
|
-
if (proxy
|
|
2654
|
+
if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
|
|
2591
2655
|
return proxy;
|
|
2592
2656
|
}
|
|
2593
|
-
proxy = proxy
|
|
2657
|
+
proxy = proxy[_DYN_GET_NEXT ]();
|
|
2594
2658
|
}
|
|
2595
|
-
return createTelemetryProxyChain([startAt], core
|
|
2659
|
+
return createTelemetryProxyChain([startAt], core[_DYN_CONFIG ] || {}, core);
|
|
2596
2660
|
}
|
|
2597
2661
|
function _createInternalContext(telemetryChain, config, core, startAt) {
|
|
2598
2662
|
var _nextProxy = null;
|
|
@@ -2633,7 +2697,7 @@
|
|
|
2633
2697
|
args[_i - 2] = arguments[_i];
|
|
2634
2698
|
}
|
|
2635
2699
|
if (onComplete) {
|
|
2636
|
-
_onComplete
|
|
2700
|
+
_onComplete[_DYN_PUSH ]({
|
|
2637
2701
|
func: onComplete,
|
|
2638
2702
|
self: !isUndefined(that) ? that : context.ctx,
|
|
2639
2703
|
args: args
|
|
@@ -2642,16 +2706,16 @@
|
|
|
2642
2706
|
}
|
|
2643
2707
|
function _moveNext() {
|
|
2644
2708
|
var nextProxy = _nextProxy;
|
|
2645
|
-
_nextProxy = nextProxy ? nextProxy
|
|
2709
|
+
_nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT ]() : null;
|
|
2646
2710
|
if (!nextProxy) {
|
|
2647
2711
|
var onComplete = _onComplete;
|
|
2648
|
-
if (onComplete && onComplete
|
|
2712
|
+
if (onComplete && onComplete[_DYN_LENGTH ] > 0) {
|
|
2649
2713
|
arrForEach(onComplete, function (completeDetails) {
|
|
2650
2714
|
try {
|
|
2651
|
-
completeDetails.func
|
|
2715
|
+
completeDetails.func[_DYN_CALL ](completeDetails.self, completeDetails.args);
|
|
2652
2716
|
}
|
|
2653
2717
|
catch (e) {
|
|
2654
|
-
_throwInternal(core
|
|
2718
|
+
_throwInternal(core[_DYN_LOGGER ], 2 , 73 , "Unexpected Exception during onComplete - " + dumpObj(e));
|
|
2655
2719
|
}
|
|
2656
2720
|
});
|
|
2657
2721
|
_onComplete = [];
|
|
@@ -2664,7 +2728,7 @@
|
|
|
2664
2728
|
if (mergeDefault === void 0) { mergeDefault = 0 ; }
|
|
2665
2729
|
var theConfig;
|
|
2666
2730
|
if (config) {
|
|
2667
|
-
var extConfig = config
|
|
2731
|
+
var extConfig = config[STR_EXTENSION_CONFIG ];
|
|
2668
2732
|
if (extConfig && identifier) {
|
|
2669
2733
|
theConfig = extConfig[identifier];
|
|
2670
2734
|
}
|
|
@@ -2705,7 +2769,7 @@
|
|
|
2705
2769
|
function _iterateChain(cb) {
|
|
2706
2770
|
var nextPlugin;
|
|
2707
2771
|
while (!!(nextPlugin = context._next())) {
|
|
2708
|
-
var plugin = nextPlugin
|
|
2772
|
+
var plugin = nextPlugin[_DYN_GET_PLUGIN ]();
|
|
2709
2773
|
if (plugin) {
|
|
2710
2774
|
cb(plugin);
|
|
2711
2775
|
}
|
|
@@ -2718,7 +2782,7 @@
|
|
|
2718
2782
|
var context = internalContext.ctx;
|
|
2719
2783
|
function _processNext(env) {
|
|
2720
2784
|
var nextPlugin = internalContext._next();
|
|
2721
|
-
nextPlugin && nextPlugin
|
|
2785
|
+
nextPlugin && nextPlugin[STR_PROCESS_TELEMETRY ](env, context);
|
|
2722
2786
|
return !nextPlugin;
|
|
2723
2787
|
}
|
|
2724
2788
|
function _createNew(plugins, startAt) {
|
|
@@ -2726,14 +2790,14 @@
|
|
|
2726
2790
|
if (isArray(plugins)) {
|
|
2727
2791
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
2728
2792
|
}
|
|
2729
|
-
return createProcessTelemetryContext(plugins || context
|
|
2793
|
+
return createProcessTelemetryContext(plugins || context[_DYN_GET_NEXT ](), config, core, startAt);
|
|
2730
2794
|
}
|
|
2731
|
-
context
|
|
2732
|
-
context
|
|
2795
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
2796
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
2733
2797
|
return context;
|
|
2734
2798
|
}
|
|
2735
2799
|
function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {
|
|
2736
|
-
var config = core
|
|
2800
|
+
var config = core[_DYN_CONFIG ] || {};
|
|
2737
2801
|
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
2738
2802
|
var context = internalContext.ctx;
|
|
2739
2803
|
function _processNext(unloadState) {
|
|
@@ -2746,20 +2810,20 @@
|
|
|
2746
2810
|
if (isArray(plugins)) {
|
|
2747
2811
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
2748
2812
|
}
|
|
2749
|
-
return createProcessTelemetryUnloadContext(plugins || context
|
|
2813
|
+
return createProcessTelemetryUnloadContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
2750
2814
|
}
|
|
2751
|
-
context
|
|
2752
|
-
context
|
|
2815
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
2816
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
2753
2817
|
return context;
|
|
2754
2818
|
}
|
|
2755
2819
|
function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {
|
|
2756
|
-
var config = core
|
|
2820
|
+
var config = core[_DYN_CONFIG ] || {};
|
|
2757
2821
|
var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
|
|
2758
2822
|
var context = internalContext.ctx;
|
|
2759
2823
|
function _processNext(updateState) {
|
|
2760
2824
|
return context.iterate(function (plugin) {
|
|
2761
|
-
if (isFunction(plugin
|
|
2762
|
-
plugin
|
|
2825
|
+
if (isFunction(plugin[_DYN_UPDATE ])) {
|
|
2826
|
+
plugin[_DYN_UPDATE ](context, updateState);
|
|
2763
2827
|
}
|
|
2764
2828
|
});
|
|
2765
2829
|
}
|
|
@@ -2768,22 +2832,22 @@
|
|
|
2768
2832
|
if (isArray(plugins)) {
|
|
2769
2833
|
plugins = createTelemetryProxyChain(plugins, config, core, startAt);
|
|
2770
2834
|
}
|
|
2771
|
-
return createProcessTelemetryUpdateContext(plugins || context
|
|
2835
|
+
return createProcessTelemetryUpdateContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
|
|
2772
2836
|
}
|
|
2773
|
-
context
|
|
2774
|
-
context
|
|
2837
|
+
context[_DYN_PROCESS_NEXT ] = _processNext;
|
|
2838
|
+
context[_DYN_CREATE_NEW ] = _createNew;
|
|
2775
2839
|
return context;
|
|
2776
2840
|
}
|
|
2777
2841
|
function createTelemetryProxyChain(plugins, config, core, startAt) {
|
|
2778
2842
|
var firstProxy = null;
|
|
2779
2843
|
var add = startAt ? false : true;
|
|
2780
|
-
if (isArray(plugins) && plugins
|
|
2844
|
+
if (isArray(plugins) && plugins[_DYN_LENGTH ] > 0) {
|
|
2781
2845
|
var lastProxy_1 = null;
|
|
2782
2846
|
arrForEach(plugins, function (thePlugin) {
|
|
2783
2847
|
if (!add && startAt === thePlugin) {
|
|
2784
2848
|
add = true;
|
|
2785
2849
|
}
|
|
2786
|
-
if (add && thePlugin && isFunction(thePlugin
|
|
2850
|
+
if (add && thePlugin && isFunction(thePlugin[STR_PROCESS_TELEMETRY ])) {
|
|
2787
2851
|
var newProxy = createTelemetryPluginProxy(thePlugin, config, core);
|
|
2788
2852
|
if (!firstProxy) {
|
|
2789
2853
|
firstProxy = newProxy;
|
|
@@ -2802,11 +2866,11 @@
|
|
|
2802
2866
|
}
|
|
2803
2867
|
function createTelemetryPluginProxy(plugin, config, core) {
|
|
2804
2868
|
var nextProxy = null;
|
|
2805
|
-
var hasProcessTelemetry = isFunction(plugin
|
|
2806
|
-
var hasSetNext = isFunction(plugin
|
|
2869
|
+
var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY ]);
|
|
2870
|
+
var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN ]);
|
|
2807
2871
|
var chainId;
|
|
2808
2872
|
if (plugin) {
|
|
2809
|
-
chainId = plugin
|
|
2873
|
+
chainId = plugin[_DYN_IDENTIFIER ] + "-" + plugin[STR_PRIORITY ] + "-" + _chainId++;
|
|
2810
2874
|
}
|
|
2811
2875
|
else {
|
|
2812
2876
|
chainId = "Unknown-0-" + _chainId++;
|
|
@@ -2838,17 +2902,17 @@
|
|
|
2838
2902
|
}
|
|
2839
2903
|
function _processChain(itemCtx, processPluginFn, name, details, isAsync) {
|
|
2840
2904
|
var hasRun = false;
|
|
2841
|
-
var identifier = plugin ? plugin
|
|
2905
|
+
var identifier = plugin ? plugin[_DYN_IDENTIFIER ] : strTelemetryPluginChain;
|
|
2842
2906
|
var hasRunContext = itemCtx[strHasRunFlags];
|
|
2843
2907
|
if (!hasRunContext) {
|
|
2844
2908
|
hasRunContext = itemCtx[strHasRunFlags] = {};
|
|
2845
2909
|
}
|
|
2846
2910
|
itemCtx.setNext(nextProxy);
|
|
2847
2911
|
if (plugin) {
|
|
2848
|
-
doPerf(itemCtx[
|
|
2912
|
+
doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
|
|
2849
2913
|
hasRunContext[chainId] = true;
|
|
2850
2914
|
try {
|
|
2851
|
-
var nextId = nextProxy ? nextProxy._id :
|
|
2915
|
+
var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
|
|
2852
2916
|
if (nextId) {
|
|
2853
2917
|
hasRunContext[nextId] = false;
|
|
2854
2918
|
}
|
|
@@ -2860,7 +2924,7 @@
|
|
|
2860
2924
|
hasRun = true;
|
|
2861
2925
|
}
|
|
2862
2926
|
if (!nextProxy || !hasNextRun) {
|
|
2863
|
-
_throwInternal(itemCtx
|
|
2927
|
+
_throwInternal(itemCtx[_DYN_DIAG_LOG ](), 1 , 73 , "Plugin [" + identifier + "] failed during " + name + " - " + dumpObj(error) + ", run flags: " + dumpObj(hasRunContext));
|
|
2864
2928
|
}
|
|
2865
2929
|
}
|
|
2866
2930
|
}, details, isAsync);
|
|
@@ -2874,17 +2938,17 @@
|
|
|
2874
2938
|
return false;
|
|
2875
2939
|
}
|
|
2876
2940
|
var pluginState = _getPluginState(plugin);
|
|
2877
|
-
if (pluginState
|
|
2941
|
+
if (pluginState[_DYN_TEARDOWN ] || pluginState[STR_DISABLED]) {
|
|
2878
2942
|
return false;
|
|
2879
2943
|
}
|
|
2880
2944
|
if (hasSetNext) {
|
|
2881
|
-
plugin
|
|
2945
|
+
plugin[_DYN_SET_NEXT_PLUGIN ](nextProxy);
|
|
2882
2946
|
}
|
|
2883
|
-
plugin
|
|
2947
|
+
plugin[STR_PROCESS_TELEMETRY ](env, itemCtx);
|
|
2884
2948
|
return true;
|
|
2885
2949
|
}
|
|
2886
2950
|
if (!_processChain(itemCtx, _callProcessTelemetry, "processTelemetry", function () { return ({ item: env }); }, !(env.sync))) {
|
|
2887
|
-
itemCtx
|
|
2951
|
+
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
2888
2952
|
}
|
|
2889
2953
|
}
|
|
2890
2954
|
function _unloadPlugin(unloadCtx, unloadState) {
|
|
@@ -2892,20 +2956,20 @@
|
|
|
2892
2956
|
var hasRun = false;
|
|
2893
2957
|
if (plugin) {
|
|
2894
2958
|
var pluginState = _getPluginState(plugin);
|
|
2895
|
-
var pluginCore = plugin[
|
|
2896
|
-
if (plugin && (!pluginCore || pluginCore === unloadCtx
|
|
2897
|
-
pluginState[
|
|
2898
|
-
pluginState[
|
|
2899
|
-
pluginState[
|
|
2900
|
-
if (plugin[
|
|
2959
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
2960
|
+
if (plugin && (!pluginCore || pluginCore === unloadCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
2961
|
+
pluginState[STR_CORE ] = null;
|
|
2962
|
+
pluginState[_DYN_TEARDOWN ] = true;
|
|
2963
|
+
pluginState[_DYN_IS_INITIALIZED ] = false;
|
|
2964
|
+
if (plugin[_DYN_TEARDOWN ] && plugin[_DYN_TEARDOWN ](unloadCtx, unloadState) === true) {
|
|
2901
2965
|
hasRun = true;
|
|
2902
2966
|
}
|
|
2903
2967
|
}
|
|
2904
2968
|
}
|
|
2905
2969
|
return hasRun;
|
|
2906
2970
|
}
|
|
2907
|
-
if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState
|
|
2908
|
-
unloadCtx
|
|
2971
|
+
if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState[_DYN_IS_ASYNC ])) {
|
|
2972
|
+
unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
2909
2973
|
}
|
|
2910
2974
|
}
|
|
2911
2975
|
function _updatePlugin(updateCtx, updateState) {
|
|
@@ -2913,9 +2977,9 @@
|
|
|
2913
2977
|
var hasRun = false;
|
|
2914
2978
|
if (plugin) {
|
|
2915
2979
|
var pluginState = _getPluginState(plugin);
|
|
2916
|
-
var pluginCore = plugin[
|
|
2917
|
-
if (plugin && (!pluginCore || pluginCore === updateCtx
|
|
2918
|
-
if (plugin[
|
|
2980
|
+
var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
|
|
2981
|
+
if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
|
|
2982
|
+
if (plugin[_DYN_UPDATE ] && plugin[_DYN_UPDATE ](updateCtx, updateState) === true) {
|
|
2919
2983
|
hasRun = true;
|
|
2920
2984
|
}
|
|
2921
2985
|
}
|
|
@@ -2923,7 +2987,7 @@
|
|
|
2923
2987
|
return hasRun;
|
|
2924
2988
|
}
|
|
2925
2989
|
if (!_processChain(updateCtx, _callUpdate, "update", function () { }, false)) {
|
|
2926
|
-
updateCtx
|
|
2990
|
+
updateCtx[_DYN_PROCESS_NEXT ](updateState);
|
|
2927
2991
|
}
|
|
2928
2992
|
}
|
|
2929
2993
|
return objFreeze(proxyChain);
|
|
@@ -2937,34 +3001,30 @@
|
|
|
2937
3001
|
return ProcessTelemetryContext;
|
|
2938
3002
|
}());
|
|
2939
3003
|
|
|
2940
|
-
var strIKey = "iKey";
|
|
2941
|
-
var strExtensionConfig = "extensionConfig";
|
|
2942
|
-
|
|
2943
3004
|
var ChannelControllerPriority = 500;
|
|
2944
3005
|
var ChannelValidationMessage = "Channel has invalid priority - ";
|
|
2945
|
-
function _addChannelQueue(channelQueue, queue,
|
|
2946
|
-
if (queue && isArray(queue) && queue
|
|
3006
|
+
function _addChannelQueue(channelQueue, queue, core) {
|
|
3007
|
+
if (queue && isArray(queue) && queue[_DYN_LENGTH ] > 0) {
|
|
2947
3008
|
queue = queue.sort(function (a, b) {
|
|
2948
|
-
return a
|
|
3009
|
+
return a[STR_PRIORITY ] - b[STR_PRIORITY ];
|
|
2949
3010
|
});
|
|
2950
3011
|
arrForEach(queue, function (queueItem) {
|
|
2951
|
-
if (queueItem
|
|
2952
|
-
throwError(ChannelValidationMessage + queueItem
|
|
3012
|
+
if (queueItem[STR_PRIORITY ] < ChannelControllerPriority) {
|
|
3013
|
+
throwError(ChannelValidationMessage + queueItem[_DYN_IDENTIFIER ]);
|
|
2953
3014
|
}
|
|
2954
3015
|
});
|
|
2955
|
-
channelQueue
|
|
3016
|
+
channelQueue[_DYN_PUSH ]({
|
|
2956
3017
|
queue: objFreeze(queue),
|
|
2957
|
-
chain: createTelemetryProxyChain(queue,
|
|
3018
|
+
chain: createTelemetryProxyChain(queue, core[_DYN_CONFIG ], core)
|
|
2958
3019
|
});
|
|
2959
3020
|
}
|
|
2960
3021
|
}
|
|
2961
3022
|
function createChannelControllerPlugin(channelQueue, core) {
|
|
2962
|
-
var _a;
|
|
2963
3023
|
function _getTelCtx() {
|
|
2964
|
-
return createProcessTelemetryContext(null, core
|
|
3024
|
+
return createProcessTelemetryContext(null, core[_DYN_CONFIG ], core, null);
|
|
2965
3025
|
}
|
|
2966
3026
|
function _processChannelQueue(theChannels, itemCtx, processFn, onComplete) {
|
|
2967
|
-
var waiting = theChannels ? (theChannels
|
|
3027
|
+
var waiting = theChannels ? (theChannels[_DYN_LENGTH ] + 1) : 1;
|
|
2968
3028
|
function _runChainOnComplete() {
|
|
2969
3029
|
waiting--;
|
|
2970
3030
|
if (waiting === 0) {
|
|
@@ -2974,10 +3034,10 @@
|
|
|
2974
3034
|
}
|
|
2975
3035
|
if (waiting > 0) {
|
|
2976
3036
|
arrForEach(theChannels, function (channels) {
|
|
2977
|
-
if (channels && channels.queue
|
|
3037
|
+
if (channels && channels.queue[_DYN_LENGTH ] > 0) {
|
|
2978
3038
|
var channelChain = channels.chain;
|
|
2979
|
-
var chainCtx = itemCtx
|
|
2980
|
-
chainCtx
|
|
3039
|
+
var chainCtx = itemCtx[_DYN_CREATE_NEW ](channelChain);
|
|
3040
|
+
chainCtx[_DYN_ON_COMPLETE ](_runChainOnComplete);
|
|
2981
3041
|
processFn(chainCtx);
|
|
2982
3042
|
}
|
|
2983
3043
|
else {
|
|
@@ -2992,9 +3052,9 @@
|
|
|
2992
3052
|
reason: 0
|
|
2993
3053
|
};
|
|
2994
3054
|
_processChannelQueue(channelQueue, updateCtx, function (chainCtx) {
|
|
2995
|
-
chainCtx[
|
|
3055
|
+
chainCtx[_DYN_PROCESS_NEXT ](theUpdateState);
|
|
2996
3056
|
}, function () {
|
|
2997
|
-
updateCtx[
|
|
3057
|
+
updateCtx[_DYN_PROCESS_NEXT ](theUpdateState);
|
|
2998
3058
|
});
|
|
2999
3059
|
return true;
|
|
3000
3060
|
}
|
|
@@ -3004,20 +3064,20 @@
|
|
|
3004
3064
|
isAsync: false
|
|
3005
3065
|
};
|
|
3006
3066
|
_processChannelQueue(channelQueue, unloadCtx, function (chainCtx) {
|
|
3007
|
-
chainCtx[
|
|
3067
|
+
chainCtx[_DYN_PROCESS_NEXT ](theUnloadState);
|
|
3008
3068
|
}, function () {
|
|
3009
|
-
unloadCtx[
|
|
3069
|
+
unloadCtx[_DYN_PROCESS_NEXT ](theUnloadState);
|
|
3010
3070
|
isInitialized = false;
|
|
3011
3071
|
});
|
|
3012
3072
|
return true;
|
|
3013
3073
|
}
|
|
3014
3074
|
function _getChannel(pluginIdentifier) {
|
|
3015
3075
|
var thePlugin = null;
|
|
3016
|
-
if (channelQueue && channelQueue
|
|
3076
|
+
if (channelQueue && channelQueue[_DYN_LENGTH ] > 0) {
|
|
3017
3077
|
arrForEach(channelQueue, function (channels) {
|
|
3018
|
-
if (channels && channels.queue
|
|
3078
|
+
if (channels && channels.queue[_DYN_LENGTH ] > 0) {
|
|
3019
3079
|
arrForEach(channels.queue, function (ext) {
|
|
3020
|
-
if (ext
|
|
3080
|
+
if (ext[_DYN_IDENTIFIER ] === pluginIdentifier) {
|
|
3021
3081
|
thePlugin = ext;
|
|
3022
3082
|
return -1;
|
|
3023
3083
|
}
|
|
@@ -3031,46 +3091,45 @@
|
|
|
3031
3091
|
return thePlugin;
|
|
3032
3092
|
}
|
|
3033
3093
|
var isInitialized = false;
|
|
3034
|
-
var channelController =
|
|
3035
|
-
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3046
|
-
|
|
3047
|
-
},
|
|
3048
|
-
processTelemetry: function (item, itemCtx) {
|
|
3049
|
-
_processChannelQueue(channelQueue, itemCtx || _getTelCtx(), function (chainCtx) {
|
|
3050
|
-
chainCtx[strProcessNext](item);
|
|
3051
|
-
}, function () {
|
|
3052
|
-
itemCtx[strProcessNext](item);
|
|
3053
|
-
});
|
|
3054
|
-
},
|
|
3055
|
-
update: _doUpdate
|
|
3094
|
+
var channelController = {
|
|
3095
|
+
identifier: "ChannelControllerPlugin",
|
|
3096
|
+
priority: ChannelControllerPriority,
|
|
3097
|
+
initialize: function (config, core, extensions, pluginChain) {
|
|
3098
|
+
isInitialized = true;
|
|
3099
|
+
arrForEach(channelQueue, function (channels) {
|
|
3100
|
+
if (channels && channels.queue[_DYN_LENGTH ] > 0) {
|
|
3101
|
+
initializePlugins(createProcessTelemetryContext(channels.chain, config, core), extensions);
|
|
3102
|
+
}
|
|
3103
|
+
});
|
|
3104
|
+
},
|
|
3105
|
+
isInitialized: function () {
|
|
3106
|
+
return isInitialized;
|
|
3056
3107
|
},
|
|
3057
|
-
|
|
3108
|
+
processTelemetry: function (item, itemCtx) {
|
|
3109
|
+
_processChannelQueue(channelQueue, itemCtx || _getTelCtx(), function (chainCtx) {
|
|
3110
|
+
chainCtx[_DYN_PROCESS_NEXT ](item);
|
|
3111
|
+
}, function () {
|
|
3112
|
+
itemCtx[_DYN_PROCESS_NEXT ](item);
|
|
3113
|
+
});
|
|
3114
|
+
},
|
|
3115
|
+
update: _doUpdate,
|
|
3116
|
+
pause: function () {
|
|
3058
3117
|
_processChannelQueue(channelQueue, _getTelCtx(), function (chainCtx) {
|
|
3059
3118
|
chainCtx.iterate(function (plugin) {
|
|
3060
|
-
plugin
|
|
3119
|
+
plugin.pause && plugin.pause();
|
|
3061
3120
|
});
|
|
3062
3121
|
}, null);
|
|
3063
3122
|
},
|
|
3064
|
-
|
|
3123
|
+
resume: function () {
|
|
3065
3124
|
_processChannelQueue(channelQueue, _getTelCtx(), function (chainCtx) {
|
|
3066
3125
|
chainCtx.iterate(function (plugin) {
|
|
3067
|
-
plugin
|
|
3126
|
+
plugin.resume && plugin.resume();
|
|
3068
3127
|
});
|
|
3069
3128
|
}, null);
|
|
3070
3129
|
},
|
|
3071
|
-
|
|
3072
|
-
|
|
3073
|
-
|
|
3130
|
+
teardown: _doTeardown,
|
|
3131
|
+
getChannel: _getChannel,
|
|
3132
|
+
flush: function (isAsync, callBack, sendReason, cbTimeout) {
|
|
3074
3133
|
var waiting = 1;
|
|
3075
3134
|
var doneIterating = false;
|
|
3076
3135
|
var cbTimer = null;
|
|
@@ -3088,10 +3147,10 @@
|
|
|
3088
3147
|
}
|
|
3089
3148
|
_processChannelQueue(channelQueue, _getTelCtx(), function (chainCtx) {
|
|
3090
3149
|
chainCtx.iterate(function (plugin) {
|
|
3091
|
-
if (plugin
|
|
3150
|
+
if (plugin[_DYN_FLUSH ]) {
|
|
3092
3151
|
waiting++;
|
|
3093
3152
|
var handled_1 = false;
|
|
3094
|
-
if (!plugin
|
|
3153
|
+
if (!plugin[_DYN_FLUSH ](isAsync, function () {
|
|
3095
3154
|
handled_1 = true;
|
|
3096
3155
|
doCallback();
|
|
3097
3156
|
}, sendReason)) {
|
|
@@ -3115,25 +3174,25 @@
|
|
|
3115
3174
|
});
|
|
3116
3175
|
return true;
|
|
3117
3176
|
},
|
|
3118
|
-
|
|
3177
|
+
_setQueue: function (queue) {
|
|
3119
3178
|
channelQueue = queue;
|
|
3120
|
-
}
|
|
3121
|
-
|
|
3179
|
+
}
|
|
3180
|
+
};
|
|
3122
3181
|
return channelController;
|
|
3123
3182
|
}
|
|
3124
|
-
function createChannelQueues(channels, extensions,
|
|
3183
|
+
function createChannelQueues(channels, extensions, core) {
|
|
3125
3184
|
var channelQueue = [];
|
|
3126
3185
|
if (channels) {
|
|
3127
|
-
arrForEach(channels, function (queue) { return _addChannelQueue(channelQueue, queue,
|
|
3186
|
+
arrForEach(channels, function (queue) { return _addChannelQueue(channelQueue, queue, core); });
|
|
3128
3187
|
}
|
|
3129
3188
|
if (extensions) {
|
|
3130
3189
|
var extensionQueue_1 = [];
|
|
3131
3190
|
arrForEach(extensions, function (plugin) {
|
|
3132
|
-
if (plugin
|
|
3133
|
-
extensionQueue_1
|
|
3191
|
+
if (plugin[STR_PRIORITY ] > ChannelControllerPriority) {
|
|
3192
|
+
extensionQueue_1[_DYN_PUSH ](plugin);
|
|
3134
3193
|
}
|
|
3135
3194
|
});
|
|
3136
|
-
_addChannelQueue(channelQueue, extensionQueue_1,
|
|
3195
|
+
_addChannelQueue(channelQueue, extensionQueue_1, core);
|
|
3137
3196
|
}
|
|
3138
3197
|
return channelQueue;
|
|
3139
3198
|
}
|
|
@@ -3142,7 +3201,7 @@
|
|
|
3142
3201
|
var handlers = [];
|
|
3143
3202
|
function _addHandler(handler) {
|
|
3144
3203
|
if (handler) {
|
|
3145
|
-
handlers
|
|
3204
|
+
handlers[_DYN_PUSH ](handler);
|
|
3146
3205
|
}
|
|
3147
3206
|
}
|
|
3148
3207
|
function _runHandlers(unloadCtx, unloadState) {
|
|
@@ -3151,7 +3210,7 @@
|
|
|
3151
3210
|
handler(unloadCtx, unloadState);
|
|
3152
3211
|
}
|
|
3153
3212
|
catch (e) {
|
|
3154
|
-
_throwInternal(unloadCtx
|
|
3213
|
+
_throwInternal(unloadCtx[_DYN_DIAG_LOG ](), 2 , 73 , "Unexpected error calling unload handler - " + dumpObj(e));
|
|
3155
3214
|
}
|
|
3156
3215
|
});
|
|
3157
3216
|
handlers = [];
|
|
@@ -3173,37 +3232,40 @@
|
|
|
3173
3232
|
var _hooks;
|
|
3174
3233
|
_initDefaults();
|
|
3175
3234
|
dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
|
|
3176
|
-
_self
|
|
3235
|
+
_self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
|
|
3177
3236
|
_setDefaults(config, core, pluginChain);
|
|
3178
3237
|
_isinitialized = true;
|
|
3179
3238
|
};
|
|
3180
|
-
_self
|
|
3181
|
-
var
|
|
3182
|
-
|
|
3239
|
+
_self[_DYN_TEARDOWN ] = function (unloadCtx, unloadState) {
|
|
3240
|
+
var _a;
|
|
3241
|
+
var core = _self[STR_CORE ];
|
|
3242
|
+
if (!core || (unloadCtx && core !== unloadCtx[STR_CORE ]())) {
|
|
3183
3243
|
return;
|
|
3184
3244
|
}
|
|
3185
3245
|
var result;
|
|
3186
3246
|
var unloadDone = false;
|
|
3187
3247
|
var theUnloadCtx = unloadCtx || createProcessTelemetryUnloadContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);
|
|
3188
|
-
var theUnloadState = unloadState || {
|
|
3189
|
-
|
|
3190
|
-
|
|
3191
|
-
|
|
3248
|
+
var theUnloadState = unloadState || (_a = {
|
|
3249
|
+
reason: 0
|
|
3250
|
+
},
|
|
3251
|
+
_a[_DYN_IS_ASYNC ] = false,
|
|
3252
|
+
_a);
|
|
3192
3253
|
function _unloadCallback() {
|
|
3193
3254
|
if (!unloadDone) {
|
|
3194
3255
|
unloadDone = true;
|
|
3195
3256
|
_unloadHandlerContainer.run(theUnloadCtx, unloadState);
|
|
3196
|
-
|
|
3257
|
+
var oldHooks = _hooks;
|
|
3258
|
+
_hooks = [];
|
|
3259
|
+
arrForEach(oldHooks, function (fn) {
|
|
3197
3260
|
fn.rm();
|
|
3198
3261
|
});
|
|
3199
|
-
_hooks = [];
|
|
3200
3262
|
if (result === true) {
|
|
3201
|
-
theUnloadCtx
|
|
3263
|
+
theUnloadCtx[_DYN_PROCESS_NEXT ](theUnloadState);
|
|
3202
3264
|
}
|
|
3203
3265
|
_initDefaults();
|
|
3204
3266
|
}
|
|
3205
3267
|
}
|
|
3206
|
-
if (!_self[
|
|
3268
|
+
if (!_self[_DYN__DO_TEARDOWN ] || _self[_DYN__DO_TEARDOWN ](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {
|
|
3207
3269
|
_unloadCallback();
|
|
3208
3270
|
}
|
|
3209
3271
|
else {
|
|
@@ -3211,9 +3273,9 @@
|
|
|
3211
3273
|
}
|
|
3212
3274
|
return result;
|
|
3213
3275
|
};
|
|
3214
|
-
_self
|
|
3215
|
-
var core = _self
|
|
3216
|
-
if (!core || (updateCtx && core !== updateCtx
|
|
3276
|
+
_self[_DYN_UPDATE ] = function (updateCtx, updateState) {
|
|
3277
|
+
var core = _self[STR_CORE ];
|
|
3278
|
+
if (!core || (updateCtx && core !== updateCtx[STR_CORE ]())) {
|
|
3217
3279
|
return;
|
|
3218
3280
|
}
|
|
3219
3281
|
var result;
|
|
@@ -3225,7 +3287,7 @@
|
|
|
3225
3287
|
function _updateCallback() {
|
|
3226
3288
|
if (!updateDone) {
|
|
3227
3289
|
updateDone = true;
|
|
3228
|
-
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx
|
|
3290
|
+
_setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx[_DYN_GET_NEXT ]());
|
|
3229
3291
|
}
|
|
3230
3292
|
}
|
|
3231
3293
|
if (!_self._doUpdate || _self._doUpdate(theUpdateCtx, theUpdateState, _updateCallback) !== true) {
|
|
@@ -3242,30 +3304,30 @@
|
|
|
3242
3304
|
_hooks = _hooks.concat(hooks);
|
|
3243
3305
|
}
|
|
3244
3306
|
else {
|
|
3245
|
-
_hooks
|
|
3307
|
+
_hooks[_DYN_PUSH ](hooks);
|
|
3246
3308
|
}
|
|
3247
3309
|
}
|
|
3248
3310
|
};
|
|
3249
3311
|
proxyFunctionAs(_self, "_addUnloadCb", function () { return _unloadHandlerContainer; }, "add");
|
|
3250
3312
|
});
|
|
3251
|
-
_self
|
|
3252
|
-
return _getTelCtx(itemCtx)
|
|
3313
|
+
_self[_DYN_DIAG_LOG ] = function (itemCtx) {
|
|
3314
|
+
return _getTelCtx(itemCtx)[_DYN_DIAG_LOG ]();
|
|
3253
3315
|
};
|
|
3254
|
-
_self[
|
|
3316
|
+
_self[_DYN_IS_INITIALIZED ] = function () {
|
|
3255
3317
|
return _isinitialized;
|
|
3256
3318
|
};
|
|
3257
3319
|
_self.setInitialized = function (isInitialized) {
|
|
3258
3320
|
_isinitialized = isInitialized;
|
|
3259
3321
|
};
|
|
3260
|
-
_self[
|
|
3322
|
+
_self[_DYN_SET_NEXT_PLUGIN ] = function (next) {
|
|
3261
3323
|
_nextPlugin = next;
|
|
3262
3324
|
};
|
|
3263
|
-
_self
|
|
3325
|
+
_self[_DYN_PROCESS_NEXT ] = function (env, itemCtx) {
|
|
3264
3326
|
if (itemCtx) {
|
|
3265
|
-
itemCtx
|
|
3327
|
+
itemCtx[_DYN_PROCESS_NEXT ](env);
|
|
3266
3328
|
}
|
|
3267
|
-
else if (_nextPlugin && isFunction(_nextPlugin
|
|
3268
|
-
_nextPlugin
|
|
3329
|
+
else if (_nextPlugin && isFunction(_nextPlugin[STR_PROCESS_TELEMETRY ])) {
|
|
3330
|
+
_nextPlugin[STR_PROCESS_TELEMETRY ](env, null);
|
|
3269
3331
|
}
|
|
3270
3332
|
};
|
|
3271
3333
|
_self._getTelCtx = _getTelCtx;
|
|
@@ -3273,33 +3335,33 @@
|
|
|
3273
3335
|
if (currentCtx === void 0) { currentCtx = null; }
|
|
3274
3336
|
var itemCtx = currentCtx;
|
|
3275
3337
|
if (!itemCtx) {
|
|
3276
|
-
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self
|
|
3338
|
+
var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self[STR_CORE ]);
|
|
3277
3339
|
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
3278
|
-
itemCtx = rootCtx
|
|
3340
|
+
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin[strGetPlugin]);
|
|
3279
3341
|
}
|
|
3280
3342
|
else {
|
|
3281
|
-
itemCtx = rootCtx
|
|
3343
|
+
itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin);
|
|
3282
3344
|
}
|
|
3283
3345
|
}
|
|
3284
3346
|
return itemCtx;
|
|
3285
3347
|
}
|
|
3286
3348
|
function _setDefaults(config, core, pluginChain) {
|
|
3287
3349
|
if (config) {
|
|
3288
|
-
setValue(config,
|
|
3350
|
+
setValue(config, STR_EXTENSION_CONFIG, [], null, isNullOrUndefined);
|
|
3289
3351
|
}
|
|
3290
3352
|
if (!pluginChain && core) {
|
|
3291
|
-
pluginChain = core
|
|
3353
|
+
pluginChain = core[_DYN_GET_PROCESS_TEL_CONT0 ]()[_DYN_GET_NEXT ]();
|
|
3292
3354
|
}
|
|
3293
3355
|
var nextPlugin = _nextPlugin;
|
|
3294
3356
|
if (_nextPlugin && _nextPlugin[strGetPlugin]) {
|
|
3295
3357
|
nextPlugin = _nextPlugin[strGetPlugin]();
|
|
3296
3358
|
}
|
|
3297
|
-
_self
|
|
3359
|
+
_self[STR_CORE ] = core;
|
|
3298
3360
|
_rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
|
|
3299
3361
|
}
|
|
3300
3362
|
function _initDefaults() {
|
|
3301
3363
|
_isinitialized = false;
|
|
3302
|
-
_self
|
|
3364
|
+
_self[STR_CORE ] = null;
|
|
3303
3365
|
_rootCtx = null;
|
|
3304
3366
|
_nextPlugin = null;
|
|
3305
3367
|
_hooks = [];
|
|
@@ -3325,12 +3387,12 @@
|
|
|
3325
3387
|
id: _id++,
|
|
3326
3388
|
fn: telemetryInitializer
|
|
3327
3389
|
};
|
|
3328
|
-
_initializers
|
|
3390
|
+
_initializers[_DYN_PUSH ](theInitializer);
|
|
3329
3391
|
var handler = {
|
|
3330
3392
|
remove: function () {
|
|
3331
3393
|
arrForEach(_initializers, function (initializer, idx) {
|
|
3332
3394
|
if (initializer.id === theInitializer.id) {
|
|
3333
|
-
_initializers
|
|
3395
|
+
_initializers[_DYN_SPLICE ](idx, 1);
|
|
3334
3396
|
return -1;
|
|
3335
3397
|
}
|
|
3336
3398
|
});
|
|
@@ -3338,28 +3400,28 @@
|
|
|
3338
3400
|
};
|
|
3339
3401
|
return handler;
|
|
3340
3402
|
};
|
|
3341
|
-
_self
|
|
3403
|
+
_self[STR_PROCESS_TELEMETRY ] = function (item, itemCtx) {
|
|
3342
3404
|
var doNotSendItem = false;
|
|
3343
|
-
var telemetryInitializersCount = _initializers
|
|
3405
|
+
var telemetryInitializersCount = _initializers[_DYN_LENGTH ];
|
|
3344
3406
|
for (var i = 0; i < telemetryInitializersCount; ++i) {
|
|
3345
3407
|
var telemetryInitializer = _initializers[i];
|
|
3346
3408
|
if (telemetryInitializer) {
|
|
3347
3409
|
try {
|
|
3348
|
-
if (telemetryInitializer.fn
|
|
3410
|
+
if (telemetryInitializer.fn[_DYN_APPLY ](null, [item]) === false) {
|
|
3349
3411
|
doNotSendItem = true;
|
|
3350
3412
|
break;
|
|
3351
3413
|
}
|
|
3352
3414
|
}
|
|
3353
3415
|
catch (e) {
|
|
3354
|
-
_throwInternal(itemCtx
|
|
3416
|
+
_throwInternal(itemCtx[_DYN_DIAG_LOG ](), 1 , 64 , "One of telemetry initializers failed, telemetry item will not be sent: " + getExceptionName(e), { exception: dumpObj(e) }, true);
|
|
3355
3417
|
}
|
|
3356
3418
|
}
|
|
3357
3419
|
}
|
|
3358
3420
|
if (!doNotSendItem) {
|
|
3359
|
-
_self
|
|
3421
|
+
_self[_DYN_PROCESS_NEXT ](item, itemCtx);
|
|
3360
3422
|
}
|
|
3361
3423
|
};
|
|
3362
|
-
_self[
|
|
3424
|
+
_self[_DYN__DO_TEARDOWN ] = function () {
|
|
3363
3425
|
_initDefaults();
|
|
3364
3426
|
};
|
|
3365
3427
|
});
|
|
@@ -3384,14 +3446,15 @@
|
|
|
3384
3446
|
return new PerfManager(notificationMgr);
|
|
3385
3447
|
}
|
|
3386
3448
|
function _validateExtensions(logger, channelPriority, allExtensions) {
|
|
3449
|
+
var _a;
|
|
3387
3450
|
var coreExtensions = [];
|
|
3388
3451
|
var extPriorities = {};
|
|
3389
3452
|
arrForEach(allExtensions, function (ext) {
|
|
3390
|
-
if (isNullOrUndefined(ext) || isNullOrUndefined(ext
|
|
3453
|
+
if (isNullOrUndefined(ext) || isNullOrUndefined(ext[_DYN_INITIALIZE ])) {
|
|
3391
3454
|
throwError(strValidationError);
|
|
3392
3455
|
}
|
|
3393
|
-
var extPriority = ext
|
|
3394
|
-
var identifier = ext
|
|
3456
|
+
var extPriority = ext[STR_PRIORITY ];
|
|
3457
|
+
var identifier = ext[_DYN_IDENTIFIER ];
|
|
3395
3458
|
if (ext && extPriority) {
|
|
3396
3459
|
if (!isNullOrUndefined(extPriorities[extPriority])) {
|
|
3397
3460
|
_warnToConsole(logger, "Two extensions have same priority #" + extPriority + " - " + extPriorities[extPriority] + ", " + identifier);
|
|
@@ -3401,13 +3464,14 @@
|
|
|
3401
3464
|
}
|
|
3402
3465
|
}
|
|
3403
3466
|
if (!extPriority || extPriority < channelPriority) {
|
|
3404
|
-
coreExtensions
|
|
3467
|
+
coreExtensions[_DYN_PUSH ](ext);
|
|
3405
3468
|
}
|
|
3406
3469
|
});
|
|
3407
|
-
return {
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3470
|
+
return _a = {
|
|
3471
|
+
all: allExtensions
|
|
3472
|
+
},
|
|
3473
|
+
_a[STR_CORE ] = coreExtensions,
|
|
3474
|
+
_a;
|
|
3411
3475
|
}
|
|
3412
3476
|
function _isPluginPresent(thePlugin, plugins) {
|
|
3413
3477
|
var exists = false;
|
|
@@ -3422,15 +3486,16 @@
|
|
|
3422
3486
|
function _createDummyNotificationManager() {
|
|
3423
3487
|
var _a;
|
|
3424
3488
|
return objCreateFn((_a = {},
|
|
3425
|
-
_a[
|
|
3426
|
-
_a[
|
|
3427
|
-
_a[
|
|
3428
|
-
_a[
|
|
3429
|
-
_a[
|
|
3489
|
+
_a[_DYN_ADD_NOTIFICATION_LIS1 ] = function (listener) { },
|
|
3490
|
+
_a[_DYN_REMOVE_NOTIFICATION_2 ] = function (listener) { },
|
|
3491
|
+
_a[STR_EVENTS_SENT ] = function (events) { },
|
|
3492
|
+
_a[STR_EVENTS_DISCARDED ] = function (events, reason) { },
|
|
3493
|
+
_a[STR_EVENTS_SEND_REQUEST ] = function (sendReason, isAsync) { },
|
|
3430
3494
|
_a));
|
|
3431
3495
|
}
|
|
3432
3496
|
var BaseCore = /** @class */ (function () {
|
|
3433
3497
|
function BaseCore() {
|
|
3498
|
+
var _config;
|
|
3434
3499
|
var _isInitialized;
|
|
3435
3500
|
var _eventQueue;
|
|
3436
3501
|
var _notificationManager;
|
|
@@ -3453,33 +3518,34 @@
|
|
|
3453
3518
|
var _internalLogPoller = 0;
|
|
3454
3519
|
dynamicProto(BaseCore, this, function (_self) {
|
|
3455
3520
|
_initDefaults();
|
|
3456
|
-
_self
|
|
3457
|
-
_self
|
|
3521
|
+
_self[_DYN_IS_INITIALIZED ] = function () { return _isInitialized; };
|
|
3522
|
+
_self[_DYN_INITIALIZE ] = function (config, extensions, logger, notificationManager) {
|
|
3458
3523
|
if (_isUnloading) {
|
|
3459
3524
|
throwError(strSdkUnloadingError);
|
|
3460
3525
|
}
|
|
3461
|
-
if (_self
|
|
3526
|
+
if (_self[_DYN_IS_INITIALIZED ]()) {
|
|
3462
3527
|
throwError("Core should not be initialized more than once");
|
|
3463
3528
|
}
|
|
3464
|
-
|
|
3529
|
+
_config = config || {};
|
|
3530
|
+
_self[_DYN_CONFIG ] = _config;
|
|
3531
|
+
if (isNullOrUndefined(config[_DYN_INSTRUMENTATION_KEY ])) {
|
|
3465
3532
|
throwError("Please provide instrumentation key");
|
|
3466
3533
|
}
|
|
3467
3534
|
_notificationManager = notificationManager;
|
|
3468
3535
|
_self[strNotificationManager] = notificationManager;
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
config.extensions = isNullOrUndefined(config.extensions) ? [] : config.extensions;
|
|
3473
|
-
_initExtConfig(config);
|
|
3536
|
+
_initDebugListener();
|
|
3537
|
+
_initPerfManager();
|
|
3538
|
+
_initExtConfig();
|
|
3474
3539
|
if (logger) {
|
|
3475
|
-
_self
|
|
3540
|
+
_self[_DYN_LOGGER ] = logger;
|
|
3476
3541
|
}
|
|
3542
|
+
var cfgExtensions = getSetValue(_config, STR_EXTENSIONS, []);
|
|
3477
3543
|
_configExtensions = [];
|
|
3478
|
-
_configExtensions.
|
|
3479
|
-
_channelConfig = (
|
|
3480
|
-
_initPluginChain(
|
|
3481
|
-
if (!_channelQueue || _channelQueue
|
|
3482
|
-
throwError("No
|
|
3544
|
+
_configExtensions[_DYN_PUSH ].apply(_configExtensions, __spreadArrayFn(__spreadArrayFn([], extensions, false), cfgExtensions));
|
|
3545
|
+
_channelConfig = getSetValue(_config, STR_CHANNELS, []);
|
|
3546
|
+
_initPluginChain(null);
|
|
3547
|
+
if (!_channelQueue || _channelQueue[_DYN_LENGTH ] === 0) {
|
|
3548
|
+
throwError("No " + STR_CHANNELS + " available");
|
|
3483
3549
|
}
|
|
3484
3550
|
_isInitialized = true;
|
|
3485
3551
|
_self.releaseQueue();
|
|
@@ -3488,53 +3554,56 @@
|
|
|
3488
3554
|
var controls = [];
|
|
3489
3555
|
if (_channelQueue) {
|
|
3490
3556
|
arrForEach(_channelQueue, function (channels) {
|
|
3491
|
-
controls
|
|
3557
|
+
controls[_DYN_PUSH ](channels.queue);
|
|
3492
3558
|
});
|
|
3493
3559
|
}
|
|
3494
3560
|
return objFreeze(controls);
|
|
3495
3561
|
};
|
|
3496
3562
|
_self.track = function (telemetryItem) {
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
if (!_isUnloading && _self
|
|
3501
|
-
_createTelCtx()
|
|
3563
|
+
telemetryItem.iKey = telemetryItem.iKey || _config[_DYN_INSTRUMENTATION_KEY ];
|
|
3564
|
+
telemetryItem[_DYN_TIME ] = telemetryItem[_DYN_TIME ] || toISOString(new Date());
|
|
3565
|
+
telemetryItem.ver = telemetryItem.ver || "4.0";
|
|
3566
|
+
if (!_isUnloading && _self[_DYN_IS_INITIALIZED ]()) {
|
|
3567
|
+
_createTelCtx()[_DYN_PROCESS_NEXT ](telemetryItem);
|
|
3502
3568
|
}
|
|
3503
3569
|
else {
|
|
3504
|
-
_eventQueue
|
|
3570
|
+
_eventQueue[_DYN_PUSH ](telemetryItem);
|
|
3505
3571
|
}
|
|
3506
3572
|
};
|
|
3507
|
-
_self
|
|
3508
|
-
_self
|
|
3573
|
+
_self[_DYN_GET_PROCESS_TEL_CONT0 ] = _createTelCtx;
|
|
3574
|
+
_self[_DYN_GET_NOTIFY_MGR ] = function () {
|
|
3509
3575
|
if (!_notificationManager) {
|
|
3510
3576
|
_notificationManager = _createDummyNotificationManager();
|
|
3511
3577
|
_self[strNotificationManager] = _notificationManager;
|
|
3512
3578
|
}
|
|
3513
3579
|
return _notificationManager;
|
|
3514
3580
|
};
|
|
3515
|
-
_self[
|
|
3581
|
+
_self[_DYN_ADD_NOTIFICATION_LIS1 ] = function (listener) {
|
|
3516
3582
|
if (_notificationManager) {
|
|
3517
|
-
_notificationManager[
|
|
3583
|
+
_notificationManager[_DYN_ADD_NOTIFICATION_LIS1 ](listener);
|
|
3518
3584
|
}
|
|
3519
3585
|
};
|
|
3520
|
-
_self[
|
|
3586
|
+
_self[_DYN_REMOVE_NOTIFICATION_2 ] = function (listener) {
|
|
3521
3587
|
if (_notificationManager) {
|
|
3522
|
-
_notificationManager[
|
|
3588
|
+
_notificationManager[_DYN_REMOVE_NOTIFICATION_2 ](listener);
|
|
3523
3589
|
}
|
|
3524
3590
|
};
|
|
3525
3591
|
_self.getCookieMgr = function () {
|
|
3526
3592
|
if (!_cookieManager) {
|
|
3527
|
-
_cookieManager = createCookieMgr(
|
|
3593
|
+
_cookieManager = createCookieMgr(_config, _self[_DYN_LOGGER ]);
|
|
3528
3594
|
}
|
|
3529
3595
|
return _cookieManager;
|
|
3530
3596
|
};
|
|
3531
3597
|
_self.setCookieMgr = function (cookieMgr) {
|
|
3532
3598
|
_cookieManager = cookieMgr;
|
|
3533
3599
|
};
|
|
3534
|
-
_self
|
|
3600
|
+
_self[STR_GET_PERF_MGR ] = function () {
|
|
3535
3601
|
if (!_perfManager && !_cfgPerfManager) {
|
|
3536
|
-
if (
|
|
3537
|
-
|
|
3602
|
+
if (getCfgValue(_config.enablePerfMgr)) {
|
|
3603
|
+
var createPerfMgr = getCfgValue(_config[STR_CREATE_PERF_MGR ]);
|
|
3604
|
+
if (isFunction(createPerfMgr)) {
|
|
3605
|
+
_cfgPerfManager = createPerfMgr(_self, _self[_DYN_GET_NOTIFY_MGR ]());
|
|
3606
|
+
}
|
|
3538
3607
|
}
|
|
3539
3608
|
}
|
|
3540
3609
|
return _perfManager || _cfgPerfManager || getGblPerfMgr();
|
|
@@ -3543,20 +3612,20 @@
|
|
|
3543
3612
|
_perfManager = perfMgr;
|
|
3544
3613
|
};
|
|
3545
3614
|
_self.eventCnt = function () {
|
|
3546
|
-
return _eventQueue
|
|
3615
|
+
return _eventQueue[_DYN_LENGTH ];
|
|
3547
3616
|
};
|
|
3548
3617
|
_self.releaseQueue = function () {
|
|
3549
|
-
if (_isInitialized && _eventQueue
|
|
3618
|
+
if (_isInitialized && _eventQueue[_DYN_LENGTH ] > 0) {
|
|
3550
3619
|
var eventQueue = _eventQueue;
|
|
3551
3620
|
_eventQueue = [];
|
|
3552
3621
|
arrForEach(eventQueue, function (event) {
|
|
3553
|
-
_createTelCtx()
|
|
3622
|
+
_createTelCtx()[_DYN_PROCESS_NEXT ](event);
|
|
3554
3623
|
});
|
|
3555
3624
|
}
|
|
3556
3625
|
};
|
|
3557
3626
|
_self.pollInternalLogs = function (eventName) {
|
|
3558
3627
|
_internalLogsEventName = eventName || null;
|
|
3559
|
-
var interval =
|
|
3628
|
+
var interval = getCfgValue(_config.diagnosticLogInterval);
|
|
3560
3629
|
if (!interval || !(interval > 0)) {
|
|
3561
3630
|
interval = 10000;
|
|
3562
3631
|
}
|
|
@@ -3568,7 +3637,7 @@
|
|
|
3568
3637
|
}, interval);
|
|
3569
3638
|
return _internalLogPoller;
|
|
3570
3639
|
};
|
|
3571
|
-
_self
|
|
3640
|
+
_self[_DYN_STOP_POLLING_INTERNA3 ] = function () {
|
|
3572
3641
|
if (_internalLogPoller) {
|
|
3573
3642
|
clearInterval(_internalLogPoller);
|
|
3574
3643
|
_internalLogPoller = 0;
|
|
@@ -3577,6 +3646,7 @@
|
|
|
3577
3646
|
};
|
|
3578
3647
|
proxyFunctions(_self, function () { return _telemetryInitializerPlugin; }, ["addTelemetryInitializer"]);
|
|
3579
3648
|
_self.unload = function (isAsync, unloadComplete, cbTimeout) {
|
|
3649
|
+
var _a;
|
|
3580
3650
|
if (isAsync === void 0) { isAsync = true; }
|
|
3581
3651
|
if (!_isInitialized) {
|
|
3582
3652
|
throwError(strSdkNotInitialized);
|
|
@@ -3584,13 +3654,14 @@
|
|
|
3584
3654
|
if (_isUnloading) {
|
|
3585
3655
|
throwError(strSdkUnloadingError);
|
|
3586
3656
|
}
|
|
3587
|
-
var unloadState = {
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3657
|
+
var unloadState = (_a = {
|
|
3658
|
+
reason: 50
|
|
3659
|
+
},
|
|
3660
|
+
_a[_DYN_IS_ASYNC ] = isAsync,
|
|
3661
|
+
_a.flushComplete = false,
|
|
3662
|
+
_a);
|
|
3592
3663
|
var processUnloadCtx = createProcessTelemetryUnloadContext(_getPluginChain(), _self);
|
|
3593
|
-
processUnloadCtx
|
|
3664
|
+
processUnloadCtx[_DYN_ON_COMPLETE ](function () {
|
|
3594
3665
|
_initDefaults();
|
|
3595
3666
|
unloadComplete && unloadComplete(unloadState);
|
|
3596
3667
|
}, _self);
|
|
@@ -3598,33 +3669,33 @@
|
|
|
3598
3669
|
unloadState.flushComplete = flushComplete;
|
|
3599
3670
|
_isUnloading = true;
|
|
3600
3671
|
_unloadHandlers.run(processUnloadCtx, unloadState);
|
|
3601
|
-
_self
|
|
3602
|
-
processUnloadCtx
|
|
3672
|
+
_self[_DYN_STOP_POLLING_INTERNA3 ]();
|
|
3673
|
+
processUnloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
3603
3674
|
}
|
|
3604
3675
|
if (!_flushChannels(isAsync, _doUnload, 6 , cbTimeout)) {
|
|
3605
3676
|
_doUnload(false);
|
|
3606
3677
|
}
|
|
3607
3678
|
};
|
|
3608
|
-
_self
|
|
3679
|
+
_self[_DYN_GET_PLUGIN ] = _getPlugin;
|
|
3609
3680
|
_self.addPlugin = function (plugin, replaceExisting, isAsync, addCb) {
|
|
3610
3681
|
if (!plugin) {
|
|
3611
3682
|
addCb && addCb(false);
|
|
3612
3683
|
_logOrThrowError(strValidationError);
|
|
3613
3684
|
return;
|
|
3614
3685
|
}
|
|
3615
|
-
var existingPlugin = _getPlugin(plugin
|
|
3686
|
+
var existingPlugin = _getPlugin(plugin[_DYN_IDENTIFIER ]);
|
|
3616
3687
|
if (existingPlugin && !replaceExisting) {
|
|
3617
3688
|
addCb && addCb(false);
|
|
3618
|
-
_logOrThrowError("Plugin [" + plugin
|
|
3689
|
+
_logOrThrowError("Plugin [" + plugin[_DYN_IDENTIFIER ] + "] is already loaded!");
|
|
3619
3690
|
return;
|
|
3620
3691
|
}
|
|
3621
3692
|
var updateState = {
|
|
3622
3693
|
reason: 16
|
|
3623
3694
|
};
|
|
3624
3695
|
function _addPlugin(removed) {
|
|
3625
|
-
_configExtensions
|
|
3696
|
+
_configExtensions[_DYN_PUSH ](plugin);
|
|
3626
3697
|
updateState.added = [plugin];
|
|
3627
|
-
_initPluginChain(
|
|
3698
|
+
_initPluginChain(updateState);
|
|
3628
3699
|
addCb && addCb(true);
|
|
3629
3700
|
}
|
|
3630
3701
|
if (existingPlugin) {
|
|
@@ -3651,7 +3722,7 @@
|
|
|
3651
3722
|
_self.evtNamespace = function () {
|
|
3652
3723
|
return _evtNamespace;
|
|
3653
3724
|
};
|
|
3654
|
-
_self
|
|
3725
|
+
_self[_DYN_FLUSH ] = _flushChannels;
|
|
3655
3726
|
_self.getTraceCtx = function (createNew) {
|
|
3656
3727
|
if (!_traceCtx) {
|
|
3657
3728
|
_traceCtx = createDistributedTraceContext();
|
|
@@ -3664,9 +3735,10 @@
|
|
|
3664
3735
|
proxyFunctionAs(_self, "addUnloadCb", function () { return _unloadHandlers; }, "add");
|
|
3665
3736
|
function _initDefaults() {
|
|
3666
3737
|
_isInitialized = false;
|
|
3667
|
-
|
|
3668
|
-
_self
|
|
3669
|
-
_self
|
|
3738
|
+
_config = objExtend(true, {}, defaultInitConfig);
|
|
3739
|
+
_self[_DYN_CONFIG ] = _config;
|
|
3740
|
+
_self[_DYN_LOGGER ] = new DiagnosticLogger(_config);
|
|
3741
|
+
_self[_DYN__EXTENSIONS ] = [];
|
|
3670
3742
|
_telemetryInitializerPlugin = new TelemetryInitializerPlugin();
|
|
3671
3743
|
_eventQueue = [];
|
|
3672
3744
|
_notificationManager = null;
|
|
@@ -3686,43 +3758,44 @@
|
|
|
3686
3758
|
_traceCtx = null;
|
|
3687
3759
|
}
|
|
3688
3760
|
function _createTelCtx() {
|
|
3689
|
-
return createProcessTelemetryContext(_getPluginChain(),
|
|
3761
|
+
return createProcessTelemetryContext(_getPluginChain(), _config, _self);
|
|
3690
3762
|
}
|
|
3691
|
-
function _initPluginChain(
|
|
3692
|
-
var theExtensions = _validateExtensions(_self
|
|
3693
|
-
_coreExtensions = theExtensions
|
|
3763
|
+
function _initPluginChain(updateState) {
|
|
3764
|
+
var theExtensions = _validateExtensions(_self[_DYN_LOGGER ], ChannelControllerPriority, _configExtensions);
|
|
3765
|
+
_coreExtensions = theExtensions[STR_CORE ];
|
|
3694
3766
|
_pluginChain = null;
|
|
3695
3767
|
var allExtensions = theExtensions.all;
|
|
3696
|
-
_channelQueue = objFreeze(createChannelQueues(_channelConfig, allExtensions,
|
|
3768
|
+
_channelQueue = objFreeze(createChannelQueues(_channelConfig, allExtensions, _self));
|
|
3697
3769
|
if (_channelControl) {
|
|
3698
3770
|
var idx = arrIndexOf(allExtensions, _channelControl);
|
|
3699
3771
|
if (idx !== -1) {
|
|
3700
|
-
allExtensions
|
|
3772
|
+
allExtensions[_DYN_SPLICE ](idx, 1);
|
|
3701
3773
|
}
|
|
3702
3774
|
idx = arrIndexOf(_coreExtensions, _channelControl);
|
|
3703
3775
|
if (idx !== -1) {
|
|
3704
|
-
_coreExtensions
|
|
3776
|
+
_coreExtensions[_DYN_SPLICE ](idx, 1);
|
|
3705
3777
|
}
|
|
3706
3778
|
_channelControl._setQueue(_channelQueue);
|
|
3707
3779
|
}
|
|
3708
3780
|
else {
|
|
3709
3781
|
_channelControl = createChannelControllerPlugin(_channelQueue, _self);
|
|
3710
3782
|
}
|
|
3711
|
-
allExtensions
|
|
3712
|
-
_coreExtensions
|
|
3713
|
-
_self
|
|
3714
|
-
_channelControl
|
|
3783
|
+
allExtensions[_DYN_PUSH ](_channelControl);
|
|
3784
|
+
_coreExtensions[_DYN_PUSH ](_channelControl);
|
|
3785
|
+
_self[_DYN__EXTENSIONS ] = sortPlugins(allExtensions);
|
|
3786
|
+
_channelControl[_DYN_INITIALIZE ](_config, _self, allExtensions);
|
|
3715
3787
|
initializePlugins(_createTelCtx(), allExtensions);
|
|
3716
|
-
_self
|
|
3788
|
+
_self[_DYN__EXTENSIONS ] = objFreeze(sortPlugins(_coreExtensions || [])).slice();
|
|
3717
3789
|
if (updateState) {
|
|
3718
3790
|
_doUpdate(updateState);
|
|
3719
3791
|
}
|
|
3720
3792
|
}
|
|
3721
3793
|
function _getPlugin(pluginIdentifier) {
|
|
3794
|
+
var _a;
|
|
3722
3795
|
var theExt = null;
|
|
3723
3796
|
var thePlugin = null;
|
|
3724
|
-
arrForEach(_self
|
|
3725
|
-
if (ext
|
|
3797
|
+
arrForEach(_self[_DYN__EXTENSIONS ], function (ext) {
|
|
3798
|
+
if (ext[_DYN_IDENTIFIER ] === pluginIdentifier && ext !== _channelControl && ext !== _telemetryInitializerPlugin) {
|
|
3726
3799
|
thePlugin = ext;
|
|
3727
3800
|
return -1;
|
|
3728
3801
|
}
|
|
@@ -3731,33 +3804,36 @@
|
|
|
3731
3804
|
thePlugin = _channelControl.getChannel(pluginIdentifier);
|
|
3732
3805
|
}
|
|
3733
3806
|
if (thePlugin) {
|
|
3734
|
-
theExt = {
|
|
3735
|
-
|
|
3736
|
-
setEnabled: function (enabled) {
|
|
3737
|
-
_getPluginState(thePlugin)[strDisabled] = !enabled;
|
|
3807
|
+
theExt = (_a = {
|
|
3808
|
+
plugin: thePlugin
|
|
3738
3809
|
},
|
|
3739
|
-
|
|
3810
|
+
_a[_DYN_SET_ENABLED ] = function (enabled) {
|
|
3811
|
+
_getPluginState(thePlugin)[STR_DISABLED] = !enabled;
|
|
3812
|
+
},
|
|
3813
|
+
_a.isEnabled = function () {
|
|
3740
3814
|
var pluginState = _getPluginState(thePlugin);
|
|
3741
|
-
return !pluginState[
|
|
3815
|
+
return !pluginState[_DYN_TEARDOWN ] && !pluginState[STR_DISABLED];
|
|
3742
3816
|
},
|
|
3743
|
-
remove
|
|
3817
|
+
_a.remove = function (isAsync, removeCb) {
|
|
3818
|
+
var _a;
|
|
3744
3819
|
if (isAsync === void 0) { isAsync = true; }
|
|
3745
3820
|
var pluginsToRemove = [thePlugin];
|
|
3746
|
-
var unloadState = {
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3821
|
+
var unloadState = (_a = {
|
|
3822
|
+
reason: 1
|
|
3823
|
+
},
|
|
3824
|
+
_a[_DYN_IS_ASYNC ] = isAsync,
|
|
3825
|
+
_a);
|
|
3750
3826
|
_removePlugins(pluginsToRemove, unloadState, function (removed) {
|
|
3751
3827
|
if (removed) {
|
|
3752
|
-
_initPluginChain(
|
|
3828
|
+
_initPluginChain({
|
|
3753
3829
|
reason: 32 ,
|
|
3754
3830
|
removed: pluginsToRemove
|
|
3755
3831
|
});
|
|
3756
3832
|
}
|
|
3757
3833
|
removeCb && removeCb(removed);
|
|
3758
3834
|
});
|
|
3759
|
-
}
|
|
3760
|
-
|
|
3835
|
+
},
|
|
3836
|
+
_a);
|
|
3761
3837
|
}
|
|
3762
3838
|
return theExt;
|
|
3763
3839
|
}
|
|
@@ -3765,22 +3841,22 @@
|
|
|
3765
3841
|
if (!_pluginChain) {
|
|
3766
3842
|
var extensions = (_coreExtensions || []).slice();
|
|
3767
3843
|
if (arrIndexOf(extensions, _telemetryInitializerPlugin) === -1) {
|
|
3768
|
-
extensions
|
|
3844
|
+
extensions[_DYN_PUSH ](_telemetryInitializerPlugin);
|
|
3769
3845
|
}
|
|
3770
|
-
_pluginChain = createTelemetryProxyChain(sortPlugins(extensions),
|
|
3846
|
+
_pluginChain = createTelemetryProxyChain(sortPlugins(extensions), _config, _self);
|
|
3771
3847
|
}
|
|
3772
3848
|
return _pluginChain;
|
|
3773
3849
|
}
|
|
3774
3850
|
function _removePlugins(thePlugins, unloadState, removeComplete) {
|
|
3775
|
-
if (thePlugins && thePlugins
|
|
3776
|
-
var unloadChain = createTelemetryProxyChain(thePlugins,
|
|
3851
|
+
if (thePlugins && thePlugins[_DYN_LENGTH ] > 0) {
|
|
3852
|
+
var unloadChain = createTelemetryProxyChain(thePlugins, _config, _self);
|
|
3777
3853
|
var unloadCtx = createProcessTelemetryUnloadContext(unloadChain, _self);
|
|
3778
|
-
unloadCtx
|
|
3854
|
+
unloadCtx[_DYN_ON_COMPLETE ](function () {
|
|
3779
3855
|
var removed = false;
|
|
3780
3856
|
var newConfigExtensions = [];
|
|
3781
3857
|
arrForEach(_configExtensions, function (plugin, idx) {
|
|
3782
3858
|
if (!_isPluginPresent(plugin, thePlugins)) {
|
|
3783
|
-
newConfigExtensions
|
|
3859
|
+
newConfigExtensions[_DYN_PUSH ](plugin);
|
|
3784
3860
|
}
|
|
3785
3861
|
else {
|
|
3786
3862
|
removed = true;
|
|
@@ -3793,77 +3869,80 @@
|
|
|
3793
3869
|
var newQueue = [];
|
|
3794
3870
|
arrForEach(queue, function (channel) {
|
|
3795
3871
|
if (!_isPluginPresent(channel, thePlugins)) {
|
|
3796
|
-
newQueue
|
|
3872
|
+
newQueue[_DYN_PUSH ](channel);
|
|
3797
3873
|
}
|
|
3798
3874
|
else {
|
|
3799
3875
|
removed = true;
|
|
3800
3876
|
}
|
|
3801
3877
|
});
|
|
3802
|
-
newChannelConfig
|
|
3878
|
+
newChannelConfig[_DYN_PUSH ](newQueue);
|
|
3803
3879
|
});
|
|
3804
3880
|
_channelConfig = newChannelConfig;
|
|
3805
3881
|
}
|
|
3806
3882
|
removeComplete && removeComplete(removed);
|
|
3807
3883
|
});
|
|
3808
|
-
unloadCtx
|
|
3884
|
+
unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
|
|
3809
3885
|
}
|
|
3810
3886
|
else {
|
|
3811
3887
|
removeComplete(false);
|
|
3812
3888
|
}
|
|
3813
3889
|
}
|
|
3814
3890
|
function _flushInternalLogs() {
|
|
3815
|
-
var queue = _self
|
|
3891
|
+
var queue = _self[_DYN_LOGGER ] ? _self[_DYN_LOGGER ].queue : [];
|
|
3816
3892
|
if (queue) {
|
|
3817
3893
|
arrForEach(queue, function (logMessage) {
|
|
3818
|
-
var
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3894
|
+
var _a;
|
|
3895
|
+
var item = (_a = {},
|
|
3896
|
+
_a[_DYN_NAME ] = _internalLogsEventName ? _internalLogsEventName : "InternalMessageId: " + logMessage[_DYN_MESSAGE_ID ],
|
|
3897
|
+
_a.iKey = getCfgValue(_config[_DYN_INSTRUMENTATION_KEY ]),
|
|
3898
|
+
_a.time = toISOString(new Date()),
|
|
3899
|
+
_a.baseType = _InternalLogMessage.dataType,
|
|
3900
|
+
_a.baseData = { message: logMessage[_DYN_MESSAGE ] },
|
|
3901
|
+
_a);
|
|
3825
3902
|
_self.track(item);
|
|
3826
3903
|
});
|
|
3827
|
-
queue
|
|
3904
|
+
queue[_DYN_LENGTH ] = 0;
|
|
3828
3905
|
}
|
|
3829
3906
|
}
|
|
3830
3907
|
function _flushChannels(isAsync, callBack, sendReason, cbTimeout) {
|
|
3831
3908
|
if (_channelControl) {
|
|
3832
|
-
return _channelControl
|
|
3909
|
+
return _channelControl[_DYN_FLUSH ](isAsync, callBack, sendReason || 6 , cbTimeout);
|
|
3833
3910
|
}
|
|
3834
3911
|
callBack && callBack(false);
|
|
3835
3912
|
return true;
|
|
3836
3913
|
}
|
|
3837
|
-
function _initDebugListener(
|
|
3838
|
-
|
|
3839
|
-
|
|
3914
|
+
function _initDebugListener() {
|
|
3915
|
+
var disableDbgExt = getCfgValue(_config.disableDbgExt);
|
|
3916
|
+
if (disableDbgExt === true && _debugListener) {
|
|
3917
|
+
_notificationManager[_DYN_REMOVE_NOTIFICATION_2 ](_debugListener);
|
|
3840
3918
|
_debugListener = null;
|
|
3841
3919
|
}
|
|
3842
|
-
if (_notificationManager && !_debugListener &&
|
|
3843
|
-
_debugListener = getDebugListener(
|
|
3844
|
-
_notificationManager[
|
|
3920
|
+
if (_notificationManager && !_debugListener && disableDbgExt !== true) {
|
|
3921
|
+
_debugListener = getDebugListener(_config);
|
|
3922
|
+
_notificationManager[_DYN_ADD_NOTIFICATION_LIS1 ](_debugListener);
|
|
3845
3923
|
}
|
|
3846
3924
|
}
|
|
3847
|
-
function _initPerfManager(
|
|
3848
|
-
|
|
3925
|
+
function _initPerfManager() {
|
|
3926
|
+
var enablePerfMgr = getCfgValue(_config.enablePerfMgr);
|
|
3927
|
+
if (!enablePerfMgr && _cfgPerfManager) {
|
|
3849
3928
|
_cfgPerfManager = null;
|
|
3850
3929
|
}
|
|
3851
|
-
if (
|
|
3852
|
-
|
|
3930
|
+
if (enablePerfMgr) {
|
|
3931
|
+
getSetValue(_config, STR_CREATE_PERF_MGR, _createPerfManager);
|
|
3853
3932
|
}
|
|
3854
3933
|
}
|
|
3855
|
-
function _initExtConfig(
|
|
3856
|
-
var extConfig = getSetValue(
|
|
3934
|
+
function _initExtConfig() {
|
|
3935
|
+
var extConfig = getSetValue(_config, STR_EXTENSION_CONFIG, {});
|
|
3857
3936
|
extConfig.NotificationManager = _notificationManager;
|
|
3858
3937
|
}
|
|
3859
3938
|
function _doUpdate(updateState) {
|
|
3860
3939
|
var updateCtx = createProcessTelemetryUpdateContext(_getPluginChain(), _self);
|
|
3861
3940
|
if (!_self._updateHook || _self._updateHook(updateCtx, updateState) !== true) {
|
|
3862
|
-
updateCtx
|
|
3941
|
+
updateCtx[_DYN_PROCESS_NEXT ](updateState);
|
|
3863
3942
|
}
|
|
3864
3943
|
}
|
|
3865
3944
|
function _logOrThrowError(message) {
|
|
3866
|
-
var logger = _self
|
|
3945
|
+
var logger = _self[_DYN_LOGGER ];
|
|
3867
3946
|
if (logger) {
|
|
3868
3947
|
_throwInternal(logger, 2 , 73 , message);
|
|
3869
3948
|
}
|
|
@@ -3898,40 +3977,40 @@
|
|
|
3898
3977
|
this.listeners = [];
|
|
3899
3978
|
var perfEvtsSendAll = !!(config || {}).perfEvtsSendAll;
|
|
3900
3979
|
dynamicProto(NotificationManager, this, function (_self) {
|
|
3901
|
-
_self[
|
|
3902
|
-
_self.listeners
|
|
3980
|
+
_self[_DYN_ADD_NOTIFICATION_LIS1 ] = function (listener) {
|
|
3981
|
+
_self.listeners[_DYN_PUSH ](listener);
|
|
3903
3982
|
};
|
|
3904
|
-
_self[
|
|
3905
|
-
var index = arrIndexOf(_self
|
|
3983
|
+
_self[_DYN_REMOVE_NOTIFICATION_2 ] = function (listener) {
|
|
3984
|
+
var index = arrIndexOf(_self[_DYN_LISTENERS ], listener);
|
|
3906
3985
|
while (index > -1) {
|
|
3907
|
-
_self.listeners
|
|
3908
|
-
index = arrIndexOf(_self
|
|
3986
|
+
_self.listeners[_DYN_SPLICE ](index, 1);
|
|
3987
|
+
index = arrIndexOf(_self[_DYN_LISTENERS ], listener);
|
|
3909
3988
|
}
|
|
3910
3989
|
};
|
|
3911
|
-
_self[
|
|
3912
|
-
_runListeners(_self
|
|
3913
|
-
listener[
|
|
3990
|
+
_self[STR_EVENTS_SENT ] = function (events) {
|
|
3991
|
+
_runListeners(_self[_DYN_LISTENERS ], STR_EVENTS_SENT, true, function (listener) {
|
|
3992
|
+
listener[STR_EVENTS_SENT ](events);
|
|
3914
3993
|
});
|
|
3915
3994
|
};
|
|
3916
|
-
_self[
|
|
3917
|
-
_runListeners(_self
|
|
3918
|
-
listener[
|
|
3995
|
+
_self[STR_EVENTS_DISCARDED ] = function (events, reason) {
|
|
3996
|
+
_runListeners(_self[_DYN_LISTENERS ], STR_EVENTS_DISCARDED, true, function (listener) {
|
|
3997
|
+
listener[STR_EVENTS_DISCARDED ](events, reason);
|
|
3919
3998
|
});
|
|
3920
3999
|
};
|
|
3921
|
-
_self[
|
|
3922
|
-
_runListeners(_self
|
|
3923
|
-
listener[
|
|
4000
|
+
_self[STR_EVENTS_SEND_REQUEST ] = function (sendReason, isAsync) {
|
|
4001
|
+
_runListeners(_self[_DYN_LISTENERS ], STR_EVENTS_SEND_REQUEST, isAsync, function (listener) {
|
|
4002
|
+
listener[STR_EVENTS_SEND_REQUEST ](sendReason, isAsync);
|
|
3924
4003
|
});
|
|
3925
4004
|
};
|
|
3926
|
-
_self[
|
|
4005
|
+
_self[STR_PERF_EVENT ] = function (perfEvent) {
|
|
3927
4006
|
if (perfEvent) {
|
|
3928
|
-
if (perfEvtsSendAll || !perfEvent
|
|
3929
|
-
_runListeners(_self
|
|
3930
|
-
if (perfEvent
|
|
3931
|
-
setTimeout(function () { return listener[
|
|
4007
|
+
if (perfEvtsSendAll || !perfEvent[_DYN_IS_CHILD_EVT ]()) {
|
|
4008
|
+
_runListeners(_self[_DYN_LISTENERS ], STR_PERF_EVENT, false, function (listener) {
|
|
4009
|
+
if (perfEvent[_DYN_IS_ASYNC ]) {
|
|
4010
|
+
setTimeout(function () { return listener[STR_PERF_EVENT ](perfEvent); }, 0);
|
|
3932
4011
|
}
|
|
3933
4012
|
else {
|
|
3934
|
-
listener[
|
|
4013
|
+
listener[STR_PERF_EVENT ](perfEvent);
|
|
3935
4014
|
}
|
|
3936
4015
|
});
|
|
3937
4016
|
}
|
|
@@ -3948,11 +4027,11 @@
|
|
|
3948
4027
|
function AppInsightsCore() {
|
|
3949
4028
|
var _this = _super.call(this) || this;
|
|
3950
4029
|
dynamicProto(AppInsightsCore, _this, function (_self, _base) {
|
|
3951
|
-
_self
|
|
3952
|
-
_base
|
|
4030
|
+
_self[_DYN_INITIALIZE ] = function (config, extensions, logger, notificationManager) {
|
|
4031
|
+
_base[_DYN_INITIALIZE ](config, extensions, logger || new DiagnosticLogger(config), notificationManager || new NotificationManager(config));
|
|
3953
4032
|
};
|
|
3954
4033
|
_self.track = function (telemetryItem) {
|
|
3955
|
-
doPerf(_self
|
|
4034
|
+
doPerf(_self[STR_GET_PERF_MGR ](), function () { return "AppInsightsCore:track"; }, function () {
|
|
3956
4035
|
if (telemetryItem === null) {
|
|
3957
4036
|
_notifyInvalidEvent(telemetryItem);
|
|
3958
4037
|
throwError("Invalid telemetry item");
|
|
@@ -3962,15 +4041,15 @@
|
|
|
3962
4041
|
}, function () { return ({ item: telemetryItem }); }, !(telemetryItem.sync));
|
|
3963
4042
|
};
|
|
3964
4043
|
function _validateTelemetryItem(telemetryItem) {
|
|
3965
|
-
if (isNullOrUndefined(telemetryItem
|
|
4044
|
+
if (isNullOrUndefined(telemetryItem[_DYN_NAME ])) {
|
|
3966
4045
|
_notifyInvalidEvent(telemetryItem);
|
|
3967
4046
|
throwError("telemetry name required");
|
|
3968
4047
|
}
|
|
3969
4048
|
}
|
|
3970
4049
|
function _notifyInvalidEvent(telemetryItem) {
|
|
3971
|
-
var manager = _self
|
|
4050
|
+
var manager = _self[_DYN_GET_NOTIFY_MGR ]();
|
|
3972
4051
|
if (manager) {
|
|
3973
|
-
manager
|
|
4052
|
+
manager[STR_EVENTS_DISCARDED ]([telemetryItem], 2 );
|
|
3974
4053
|
}
|
|
3975
4054
|
}
|
|
3976
4055
|
});
|
|
@@ -3980,95 +4059,111 @@
|
|
|
3980
4059
|
return AppInsightsCore;
|
|
3981
4060
|
}(BaseCore));
|
|
3982
4061
|
|
|
4062
|
+
var _a;
|
|
4063
|
+
var FAILED = "Failed";
|
|
4064
|
+
var FAILED_MONITOR_AJAX = FAILED + "MonitorAjax";
|
|
4065
|
+
var TRACK = "Track";
|
|
4066
|
+
var START = "Start";
|
|
4067
|
+
var STOP = "Stop";
|
|
4068
|
+
var EVENT = "Event";
|
|
4069
|
+
var AUTH_CONTEXT = "AuthContext";
|
|
4070
|
+
var EXCEPTION = "Exception";
|
|
4071
|
+
var LOCAL = "Local";
|
|
4072
|
+
var SESSION = "Session";
|
|
4073
|
+
var STORAGE = "Storage";
|
|
4074
|
+
var BROWSER = "Browser";
|
|
4075
|
+
var CANNOT = "Cannot";
|
|
4076
|
+
var BUFFER = "Buffer";
|
|
4077
|
+
var INSTRUMENTATION_KEY = "InstrumentationKey";
|
|
3983
4078
|
var LoggingSeverity = createEnumStyle({
|
|
3984
4079
|
CRITICAL: 1 ,
|
|
3985
4080
|
WARNING: 2
|
|
3986
4081
|
});
|
|
3987
|
-
var _InternalMessageId = createEnumStyle({
|
|
3988
|
-
|
|
3989
|
-
|
|
3990
|
-
|
|
3991
|
-
|
|
3992
|
-
|
|
3993
|
-
|
|
3994
|
-
|
|
3995
|
-
|
|
3996
|
-
ClientPerformanceMathError
|
|
3997
|
-
|
|
3998
|
-
ErrorPVCalc
|
|
3999
|
-
|
|
4000
|
-
|
|
4001
|
-
|
|
4002
|
-
|
|
4003
|
-
|
|
4004
|
-
|
|
4005
|
-
|
|
4006
|
-
|
|
4007
|
-
|
|
4008
|
-
|
|
4009
|
-
|
|
4010
|
-
|
|
4011
|
-
MessageLimitPerPVExceeded
|
|
4012
|
-
MissingRequiredFieldSpecification
|
|
4013
|
-
NavigationTimingNotSupported
|
|
4014
|
-
OnError
|
|
4015
|
-
|
|
4016
|
-
SenderNotInitialized
|
|
4017
|
-
|
|
4018
|
-
|
|
4019
|
-
|
|
4020
|
-
|
|
4021
|
-
TelemetrySampledAndNotSent
|
|
4022
|
-
|
|
4023
|
-
|
|
4024
|
-
|
|
4025
|
-
|
|
4026
|
-
|
|
4027
|
-
|
|
4028
|
-
|
|
4029
|
-
|
|
4030
|
-
|
|
4031
|
-
InvalidBackendResponse
|
|
4032
|
-
|
|
4033
|
-
InvalidDurationValue
|
|
4034
|
-
TelemetryEnvelopeInvalid
|
|
4035
|
-
CreateEnvelopeError
|
|
4036
|
-
|
|
4037
|
-
|
|
4038
|
-
CircularReferenceDetected
|
|
4039
|
-
|
|
4040
|
-
|
|
4041
|
-
IllegalCharsInName
|
|
4042
|
-
ItemNotInArray
|
|
4043
|
-
MaxAjaxPerPVExceeded
|
|
4044
|
-
MessageTruncated
|
|
4045
|
-
NameTooLong
|
|
4046
|
-
SampleRateOutOfRange
|
|
4047
|
-
|
|
4048
|
-
|
|
4049
|
-
StringValueTooLong
|
|
4050
|
-
StartCalledMoreThanOnce
|
|
4051
|
-
StopCalledWithoutStart
|
|
4052
|
-
|
|
4053
|
-
TrackArgumentsNotSpecified
|
|
4054
|
-
UrlTooLong
|
|
4055
|
-
|
|
4056
|
-
|
|
4057
|
-
IdTooLong
|
|
4058
|
-
InvalidEvent
|
|
4059
|
-
|
|
4060
|
-
|
|
4061
|
-
|
|
4062
|
-
|
|
4063
|
-
SnippetScriptLoadFailure
|
|
4064
|
-
|
|
4065
|
-
|
|
4066
|
-
InvalidContentBlob
|
|
4067
|
-
|
|
4068
|
-
|
|
4069
|
-
|
|
4070
|
-
|
|
4071
|
-
|
|
4082
|
+
var _InternalMessageId = createEnumStyle((_a = {},
|
|
4083
|
+
_a[BROWSER + "DoesNotSupport" + LOCAL + STORAGE] = 0 ,
|
|
4084
|
+
_a[BROWSER + CANNOT + "Read" + LOCAL + STORAGE] = 1 ,
|
|
4085
|
+
_a[BROWSER + CANNOT + "Read" + SESSION + STORAGE] = 2 ,
|
|
4086
|
+
_a[BROWSER + CANNOT + "Write" + LOCAL + STORAGE] = 3 ,
|
|
4087
|
+
_a[BROWSER + CANNOT + "Write" + SESSION + STORAGE] = 4 ,
|
|
4088
|
+
_a[BROWSER + FAILED + "RemovalFrom" + LOCAL + STORAGE] = 5 ,
|
|
4089
|
+
_a[BROWSER + FAILED + "RemovalFrom" + SESSION + STORAGE] = 6 ,
|
|
4090
|
+
_a[CANNOT + "SendEmptyTelemetry"] = 7 ,
|
|
4091
|
+
_a.ClientPerformanceMathError = 8 ,
|
|
4092
|
+
_a["ErrorParsingAI" + SESSION + "Cookie"] = 9 ,
|
|
4093
|
+
_a.ErrorPVCalc = 10 ,
|
|
4094
|
+
_a[EXCEPTION + "WhileLoggingError"] = 11 ,
|
|
4095
|
+
_a[FAILED + "AddingTelemetryTo" + BUFFER] = 12 ,
|
|
4096
|
+
_a[FAILED_MONITOR_AJAX + "Abort"] = 13 ,
|
|
4097
|
+
_a[FAILED_MONITOR_AJAX + "Dur"] = 14 ,
|
|
4098
|
+
_a[FAILED_MONITOR_AJAX + "Open"] = 15 ,
|
|
4099
|
+
_a[FAILED_MONITOR_AJAX + "RSC"] = 16 ,
|
|
4100
|
+
_a[FAILED_MONITOR_AJAX + "Send"] = 17 ,
|
|
4101
|
+
_a[FAILED_MONITOR_AJAX + "GetCorrelationHeader"] = 18 ,
|
|
4102
|
+
_a[FAILED + "ToAddHandlerForOnBeforeUnload"] = 19 ,
|
|
4103
|
+
_a[FAILED + "ToSendQueuedTelemetry"] = 20 ,
|
|
4104
|
+
_a[FAILED + "ToReportDataLoss"] = 21 ,
|
|
4105
|
+
_a["Flush" + FAILED] = 22 ,
|
|
4106
|
+
_a.MessageLimitPerPVExceeded = 23 ,
|
|
4107
|
+
_a.MissingRequiredFieldSpecification = 24 ,
|
|
4108
|
+
_a.NavigationTimingNotSupported = 25 ,
|
|
4109
|
+
_a.OnError = 26 ,
|
|
4110
|
+
_a[SESSION + "RenewalDateIsZero"] = 27 ,
|
|
4111
|
+
_a.SenderNotInitialized = 28 ,
|
|
4112
|
+
_a[START + TRACK + EVENT + FAILED] = 29 ,
|
|
4113
|
+
_a[STOP + TRACK + EVENT + FAILED] = 30 ,
|
|
4114
|
+
_a[START + TRACK + FAILED] = 31 ,
|
|
4115
|
+
_a[STOP + TRACK + FAILED] = 32 ,
|
|
4116
|
+
_a.TelemetrySampledAndNotSent = 33 ,
|
|
4117
|
+
_a[TRACK + EVENT + FAILED] = 34 ,
|
|
4118
|
+
_a[TRACK + EXCEPTION + FAILED] = 35 ,
|
|
4119
|
+
_a[TRACK + "Metric" + FAILED] = 36 ,
|
|
4120
|
+
_a[TRACK + "PV" + FAILED] = 37 ,
|
|
4121
|
+
_a[TRACK + "PV" + FAILED + "Calc"] = 38 ,
|
|
4122
|
+
_a[TRACK + "Trace" + FAILED] = 39 ,
|
|
4123
|
+
_a["Transmission" + FAILED] = 40 ,
|
|
4124
|
+
_a[FAILED + "ToSet" + STORAGE + BUFFER] = 41 ,
|
|
4125
|
+
_a[FAILED + "ToRestore" + STORAGE + BUFFER] = 42 ,
|
|
4126
|
+
_a.InvalidBackendResponse = 43 ,
|
|
4127
|
+
_a[FAILED + "ToFixDepricatedValues"] = 44 ,
|
|
4128
|
+
_a.InvalidDurationValue = 45 ,
|
|
4129
|
+
_a.TelemetryEnvelopeInvalid = 46 ,
|
|
4130
|
+
_a.CreateEnvelopeError = 47 ,
|
|
4131
|
+
_a[CANNOT + "SerializeObject"] = 48 ,
|
|
4132
|
+
_a[CANNOT + "SerializeObjectNonSerializable"] = 49 ,
|
|
4133
|
+
_a.CircularReferenceDetected = 50 ,
|
|
4134
|
+
_a["Clear" + AUTH_CONTEXT + FAILED] = 51 ,
|
|
4135
|
+
_a[EXCEPTION + "Truncated"] = 52 ,
|
|
4136
|
+
_a.IllegalCharsInName = 53 ,
|
|
4137
|
+
_a.ItemNotInArray = 54 ,
|
|
4138
|
+
_a.MaxAjaxPerPVExceeded = 55 ,
|
|
4139
|
+
_a.MessageTruncated = 56 ,
|
|
4140
|
+
_a.NameTooLong = 57 ,
|
|
4141
|
+
_a.SampleRateOutOfRange = 58 ,
|
|
4142
|
+
_a["Set" + AUTH_CONTEXT + FAILED] = 59 ,
|
|
4143
|
+
_a["Set" + AUTH_CONTEXT + FAILED + "AccountName"] = 60 ,
|
|
4144
|
+
_a.StringValueTooLong = 61 ,
|
|
4145
|
+
_a.StartCalledMoreThanOnce = 62 ,
|
|
4146
|
+
_a.StopCalledWithoutStart = 63 ,
|
|
4147
|
+
_a["TelemetryInitializer" + FAILED] = 64 ,
|
|
4148
|
+
_a.TrackArgumentsNotSpecified = 65 ,
|
|
4149
|
+
_a.UrlTooLong = 66 ,
|
|
4150
|
+
_a[SESSION + STORAGE + BUFFER + "Full"] = 67 ,
|
|
4151
|
+
_a[CANNOT + "AccessCookie"] = 68 ,
|
|
4152
|
+
_a.IdTooLong = 69 ,
|
|
4153
|
+
_a.InvalidEvent = 70 ,
|
|
4154
|
+
_a[FAILED_MONITOR_AJAX + "SetRequestHeader"] = 71 ,
|
|
4155
|
+
_a["Send" + BROWSER + "InfoOnUserInit"] = 72 ,
|
|
4156
|
+
_a["Plugin" + EXCEPTION] = 73 ,
|
|
4157
|
+
_a["Notification" + EXCEPTION] = 74 ,
|
|
4158
|
+
_a.SnippetScriptLoadFailure = 99 ,
|
|
4159
|
+
_a["Invalid" + INSTRUMENTATION_KEY] = 100 ,
|
|
4160
|
+
_a[CANNOT + "ParseAiBlobValue"] = 101 ,
|
|
4161
|
+
_a.InvalidContentBlob = 102 ,
|
|
4162
|
+
_a[TRACK + "PageAction" + EVENT + FAILED] = 103 ,
|
|
4163
|
+
_a[FAILED + "AddingCustomDefinedRequestContext"] = 104 ,
|
|
4164
|
+
_a["InMemory" + STORAGE + BUFFER + "Full"] = 105 ,
|
|
4165
|
+
_a[INSTRUMENTATION_KEY + "Deprecation"] = 106 ,
|
|
4166
|
+
_a));
|
|
4072
4167
|
|
|
4073
4168
|
var aiInstrumentHooks = "_aiHooks";
|
|
4074
4169
|
var cbNames = [
|
|
@@ -4076,7 +4171,7 @@
|
|
|
4076
4171
|
];
|
|
4077
4172
|
function _arrLoop(arr, fn) {
|
|
4078
4173
|
if (arr) {
|
|
4079
|
-
for (var lp = 0; lp < arr
|
|
4174
|
+
for (var lp = 0; lp < arr[_DYN_LENGTH ]; lp++) {
|
|
4080
4175
|
if (fn(arr[lp], lp)) {
|
|
4081
4176
|
break;
|
|
4082
4177
|
}
|
|
@@ -4094,7 +4189,7 @@
|
|
|
4094
4189
|
return ctx;
|
|
4095
4190
|
};
|
|
4096
4191
|
try {
|
|
4097
|
-
cb
|
|
4192
|
+
cb[_DYN_APPLY ](callDetails.inst, cbArgs);
|
|
4098
4193
|
}
|
|
4099
4194
|
catch (err) {
|
|
4100
4195
|
var orgEx = callDetails.err;
|
|
@@ -4102,7 +4197,7 @@
|
|
|
4102
4197
|
var hookErrorCb = cbks[cbNames[2 ]];
|
|
4103
4198
|
if (hookErrorCb) {
|
|
4104
4199
|
callDetails.err = err;
|
|
4105
|
-
hookErrorCb
|
|
4200
|
+
hookErrorCb[_DYN_APPLY ](callDetails.inst, cbArgs);
|
|
4106
4201
|
}
|
|
4107
4202
|
}
|
|
4108
4203
|
catch (e) {
|
|
@@ -4117,21 +4212,22 @@
|
|
|
4117
4212
|
}
|
|
4118
4213
|
function _createFunctionHook(aiHook) {
|
|
4119
4214
|
return function () {
|
|
4215
|
+
var _a;
|
|
4120
4216
|
var funcThis = this;
|
|
4121
4217
|
var orgArgs = arguments;
|
|
4122
4218
|
var hooks = aiHook.h;
|
|
4123
|
-
var funcArgs = {
|
|
4124
|
-
|
|
4125
|
-
inst
|
|
4126
|
-
ctx
|
|
4127
|
-
set
|
|
4128
|
-
|
|
4219
|
+
var funcArgs = (_a = {},
|
|
4220
|
+
_a[_DYN_NAME ] = aiHook.n,
|
|
4221
|
+
_a.inst = funcThis,
|
|
4222
|
+
_a.ctx = null,
|
|
4223
|
+
_a.set = _replaceArg,
|
|
4224
|
+
_a);
|
|
4129
4225
|
var hookCtx = [];
|
|
4130
4226
|
var cbArgs = _createArgs([funcArgs], orgArgs);
|
|
4131
4227
|
funcArgs.evt = getGlobalInst("event");
|
|
4132
4228
|
function _createArgs(target, theArgs) {
|
|
4133
4229
|
_arrLoop(theArgs, function (arg) {
|
|
4134
|
-
target
|
|
4230
|
+
target[_DYN_PUSH ](arg);
|
|
4135
4231
|
});
|
|
4136
4232
|
return target;
|
|
4137
4233
|
}
|
|
@@ -4144,7 +4240,7 @@
|
|
|
4144
4240
|
var theFunc = aiHook.f;
|
|
4145
4241
|
if (theFunc) {
|
|
4146
4242
|
try {
|
|
4147
|
-
funcArgs.rslt = theFunc
|
|
4243
|
+
funcArgs.rslt = theFunc[_DYN_APPLY ](funcThis, orgArgs);
|
|
4148
4244
|
}
|
|
4149
4245
|
catch (err) {
|
|
4150
4246
|
funcArgs.err = err;
|
|
@@ -4200,14 +4296,14 @@
|
|
|
4200
4296
|
var id = this.id;
|
|
4201
4297
|
_arrLoop(aiHook.h, function (hook, idx) {
|
|
4202
4298
|
if (hook.id === id) {
|
|
4203
|
-
aiHook.h
|
|
4299
|
+
aiHook.h[_DYN_SPLICE ](idx, 1);
|
|
4204
4300
|
return 1;
|
|
4205
4301
|
}
|
|
4206
4302
|
});
|
|
4207
4303
|
}
|
|
4208
4304
|
};
|
|
4209
4305
|
aiHook.i++;
|
|
4210
|
-
aiHook.h
|
|
4306
|
+
aiHook.h[_DYN_PUSH ](theHook);
|
|
4211
4307
|
return theHook;
|
|
4212
4308
|
}
|
|
4213
4309
|
function InstrumentFunc(target, funcName, callbacks, checkPrototype) {
|
|
@@ -4232,7 +4328,7 @@
|
|
|
4232
4328
|
if (!hooks) {
|
|
4233
4329
|
hooks = [];
|
|
4234
4330
|
}
|
|
4235
|
-
hooks
|
|
4331
|
+
hooks[_DYN_PUSH ](hook);
|
|
4236
4332
|
}
|
|
4237
4333
|
});
|
|
4238
4334
|
return hooks;
|