@microsoft/applicationinsights-channel-js 3.0.1-nightly3.2304-38 → 3.0.1-nightly3.2304-44

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.
Files changed (56) hide show
  1. package/browser/es5/{applicationinsights-channel-js.3.0.1-nightly3.2304-38.cjs.js → applicationinsights-channel-js.3.0.1-nightly3.2304-44.cjs.js} +432 -52
  2. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.cjs.js.map +1 -0
  3. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.cjs.min.js +6 -0
  4. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.cjs.min.js.map +1 -0
  5. package/browser/es5/{applicationinsights-channel-js.3.0.1-nightly3.2304-38.gbl.js → applicationinsights-channel-js.3.0.1-nightly3.2304-44.gbl.js} +432 -52
  6. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.gbl.js.map +1 -0
  7. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.gbl.min.js +6 -0
  8. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.gbl.min.js.map +1 -0
  9. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.integrity.json +66 -0
  10. package/browser/es5/{applicationinsights-channel-js.3.0.1-nightly3.2304-38.js → applicationinsights-channel-js.3.0.1-nightly3.2304-44.js} +432 -52
  11. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.js.map +1 -0
  12. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.min.js +6 -0
  13. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-44.min.js.map +1 -0
  14. package/browser/es5/applicationinsights-channel-js.3.cjs.js +431 -51
  15. package/browser/es5/applicationinsights-channel-js.3.cjs.js.map +1 -1
  16. package/browser/es5/applicationinsights-channel-js.3.cjs.min.js +2 -2
  17. package/browser/es5/applicationinsights-channel-js.3.cjs.min.js.map +1 -1
  18. package/browser/es5/applicationinsights-channel-js.3.gbl.js +431 -51
  19. package/browser/es5/applicationinsights-channel-js.3.gbl.js.map +1 -1
  20. package/browser/es5/applicationinsights-channel-js.3.gbl.min.js +2 -2
  21. package/browser/es5/applicationinsights-channel-js.3.gbl.min.js.map +1 -1
  22. package/browser/es5/applicationinsights-channel-js.3.js +431 -51
  23. package/browser/es5/applicationinsights-channel-js.3.js.map +1 -1
  24. package/browser/es5/applicationinsights-channel-js.3.min.js +2 -2
  25. package/browser/es5/applicationinsights-channel-js.3.min.js.map +1 -1
  26. package/dist/es5/applicationinsights-channel-js.js +431 -51
  27. package/dist/es5/applicationinsights-channel-js.js.map +1 -1
  28. package/dist/es5/applicationinsights-channel-js.min.js +2 -2
  29. package/dist/es5/applicationinsights-channel-js.min.js.map +1 -1
  30. package/dist-es5/EnvelopeCreator.js +2 -2
  31. package/dist-es5/EnvelopeCreator.js.map +1 -1
  32. package/dist-es5/Interfaces.js +1 -1
  33. package/dist-es5/InternalConstants.js +1 -1
  34. package/dist-es5/Offline.js +1 -1
  35. package/dist-es5/SendBuffer.js +1 -1
  36. package/dist-es5/Sender.js +66 -31
  37. package/dist-es5/Sender.js.map +1 -1
  38. package/dist-es5/Serializer.js +1 -1
  39. package/dist-es5/TelemetryProcessors/Sample.js +1 -1
  40. package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js +1 -1
  41. package/dist-es5/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js +1 -1
  42. package/dist-es5/__DynamicConstants.js +1 -1
  43. package/dist-es5/applicationinsights-channel-js.js +1 -1
  44. package/package.json +5 -4
  45. package/types/applicationinsights-channel-js.d.ts +35 -9
  46. package/types/applicationinsights-channel-js.namespaced.d.ts +35 -9
  47. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.cjs.js.map +0 -1
  48. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.cjs.min.js +0 -6
  49. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.cjs.min.js.map +0 -1
  50. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.gbl.js.map +0 -1
  51. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.gbl.min.js +0 -6
  52. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.gbl.min.js.map +0 -1
  53. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.integrity.json +0 -66
  54. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.js.map +0 -1
  55. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.min.js +0 -6
  56. package/browser/es5/applicationinsights-channel-js.3.0.1-nightly3.2304-38.min.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Channel, 3.0.1-nightly3.2304-38
2
+ * Application Insights JavaScript SDK - Channel, 3.0.1-nightly3.2304-44
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -41,7 +41,7 @@
41
41
  var ArrCls = Array;
42
42
  var ArrProto = ArrCls[PROTOTYPE];
43
43
 
44
- function _safeGet(cb, defValue) {
44
+ function safeGet(cb, defValue) {
45
45
  var result = defValue;
46
46
  try {
47
47
  result = cb();
@@ -89,8 +89,11 @@
89
89
  var isNumber = _createIs(NUMBER);
90
90
  var isBoolean = _createIs(BOOLEAN);
91
91
  var isError = _createObjIs("Error");
92
+ function isPromiseLike(value) {
93
+ return !!value && isFunction(value.then);
94
+ }
92
95
  function isTruthy(value) {
93
- return !(!value || _safeGet(function () { return !(value && (0 + value)); }, !value));
96
+ return !(!value || safeGet(function () { return !(value && (0 + value)); }, !value));
94
97
  }
95
98
 
96
99
  var objGetOwnPropertyDescriptor = ObjClass.getOwnPropertyDescriptor;
@@ -358,8 +361,8 @@
358
361
  return lazyValue;
359
362
  }
360
363
 
361
- function _lazySafeGet(cb, defValue) {
362
- return getLazy(function () { return _safeGet(cb, defValue); });
364
+ function safeGetLazy(cb, defValue) {
365
+ return getLazy(function () { return safeGet(cb, defValue); });
363
366
  }
364
367
 
365
368
  var WINDOW = "window";
@@ -367,11 +370,12 @@
367
370
  var _cachedWindow;
368
371
  var _cachedDocument;
369
372
  var _cachedNavigator;
370
- function _lazySafeGetInst(name) {
371
- return _lazySafeGet(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE);
373
+ var _isNode;
374
+ function lazySafeGetInst(name) {
375
+ return safeGetLazy(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE);
372
376
  }
373
377
  function getGlobal(useCached) {
374
- (!_cachedGlobal || useCached === false || (_globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = _lazySafeGet(_getGlobalValue, null));
378
+ (!_cachedGlobal || useCached === false || (_globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = safeGetLazy(_getGlobalValue, null));
375
379
  return _cachedGlobal.v;
376
380
  }
377
381
  function getInst(name, useCached) {
@@ -385,35 +389,42 @@
385
389
  return null;
386
390
  }
387
391
  function getDocument() {
388
- (!_cachedDocument || (_globalLazyTestHooks.lzy && !_cachedDocument.b)) && (_cachedDocument = _lazySafeGetInst("document"));
392
+ (!_cachedDocument || (_globalLazyTestHooks.lzy && !_cachedDocument.b)) && (_cachedDocument = lazySafeGetInst("document"));
389
393
  return _cachedDocument.v;
390
394
  }
391
395
  function hasWindow() {
392
396
  return !!getWindow();
393
397
  }
394
398
  function getWindow() {
395
- (!_cachedWindow || (_globalLazyTestHooks.lzy && !_cachedWindow.b)) && (_cachedWindow = _lazySafeGetInst(WINDOW));
399
+ (!_cachedWindow || (_globalLazyTestHooks.lzy && !_cachedWindow.b)) && (_cachedWindow = lazySafeGetInst(WINDOW));
396
400
  return _cachedWindow.v;
397
401
  }
398
402
  function hasNavigator() {
399
403
  return !!getNavigator();
400
404
  }
401
405
  function getNavigator() {
402
- (!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = _lazySafeGetInst("navigator"));
406
+ (!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = lazySafeGetInst("navigator"));
403
407
  return _cachedNavigator.v;
404
408
  }
409
+ function isNode() {
410
+ !_isNode && (_isNode = safeGetLazy(function () { return !!(process && (process.versions || {}).node); }, false));
411
+ return _isNode.v;
412
+ }
405
413
 
406
414
  var _symbol;
407
415
  var _symbolFor;
408
416
  var _symbolKeyFor;
409
417
  function _getSymbolValue(name) {
410
- return _lazySafeGet(function () {
418
+ return safeGetLazy(function () {
411
419
  return (_symbol.v ? _symbol[name] : UNDEF_VALUE);
412
420
  }, UNDEF_VALUE);
413
421
  }
422
+ function hasSymbol() {
423
+ return !!getSymbol();
424
+ }
414
425
  function getSymbol() {
415
426
  var resetCache = !_symbol || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_symbol.b);
416
- resetCache && (_symbol = _lazySafeGetInst(SYMBOL));
427
+ resetCache && (_symbol = lazySafeGetInst(SYMBOL));
417
428
  (!_symbolFor || resetCache) && (_symbolFor = _getSymbolValue("for"));
418
429
  (!_symbolKeyFor || resetCache) && (_symbolKeyFor = _getSymbolValue("keyFor"));
419
430
  return _symbol.v;
@@ -1017,6 +1028,7 @@
1017
1028
  var _DYN_TIME = "time";
1018
1029
  var _DYN_PROCESS_NEXT = "processNext";
1019
1030
  var _DYN_GET_PROCESS_TEL_CONT0 = "getProcessTelContext";
1031
+ var _DYN_UNLOAD = "unload";
1020
1032
  var _DYN_LOGGING_LEVEL_CONSOL4 = "loggingLevelConsole";
1021
1033
  var _DYN_CREATE_NEW$1 = "createNew";
1022
1034
  var _DYN_TEARDOWN = "teardown";
@@ -1056,6 +1068,330 @@
1056
1068
  throw new aggregationErrorType(theMessage, sourceErrors || []);
1057
1069
  }
1058
1070
 
1071
+ function doAwaitResponse(value, cb) {
1072
+ return doAwait(value, function (value) {
1073
+ cb && cb({
1074
+ value: value,
1075
+ rejected: false
1076
+ });
1077
+ }, function (reason) {
1078
+ cb && cb({
1079
+ rejected: true,
1080
+ reason: reason
1081
+ });
1082
+ });
1083
+ }
1084
+ function doAwait(value, resolveFn, rejectFn, finallyFn) {
1085
+ var result = value;
1086
+ if (isPromiseLike(value)) {
1087
+ if (resolveFn || rejectFn) {
1088
+ result = value.then(resolveFn, rejectFn);
1089
+ }
1090
+ }
1091
+ else {
1092
+ resolveFn && resolveFn(value);
1093
+ }
1094
+ if (finallyFn) {
1095
+ result = doFinally(result, finallyFn);
1096
+ }
1097
+ return result;
1098
+ }
1099
+ function doFinally(value, finallyFn) {
1100
+ var result = value;
1101
+ if (finallyFn) {
1102
+ if (isPromiseLike(value)) {
1103
+ if (value.finally) {
1104
+ result = value.finally(finallyFn);
1105
+ }
1106
+ else {
1107
+ result = value.then(function (value) {
1108
+ finallyFn();
1109
+ return value;
1110
+ }, function (reason) {
1111
+ finallyFn();
1112
+ throw reason;
1113
+ });
1114
+ }
1115
+ }
1116
+ else {
1117
+ finallyFn();
1118
+ }
1119
+ }
1120
+ return result;
1121
+ }
1122
+
1123
+ var _theLogger = null;
1124
+ function _debugLog(id, message) {
1125
+ if (_theLogger) {
1126
+ _theLogger(id, message);
1127
+ }
1128
+ }
1129
+
1130
+ var STRING_STATES = [
1131
+ "pending", "resolving", "resolved", "rejected"
1132
+ ];
1133
+
1134
+ var DISPATCH_EVENT = "dispatchEvent";
1135
+ var _hasInitEvent;
1136
+ function emitEvent(target, evtName, populateEvent, useNewEvent) {
1137
+ var doc = getDocument();
1138
+ !_hasInitEvent && (_hasInitEvent = safeGetLazy(function () {
1139
+ var evt;
1140
+ if (doc && doc.createEvent) {
1141
+ evt = doc.createEvent("Event");
1142
+ }
1143
+ return (!!evt && evt.initEvent);
1144
+ }, null));
1145
+ var theEvt = _hasInitEvent.v ? doc.createEvent("Event") : (useNewEvent ? new Event(evtName) : {});
1146
+ populateEvent && populateEvent(theEvt);
1147
+ if (_hasInitEvent.v) {
1148
+ theEvt.initEvent(evtName, false, true);
1149
+ }
1150
+ if (theEvt && target[DISPATCH_EVENT]) {
1151
+ target[DISPATCH_EVENT](theEvt);
1152
+ }
1153
+ else {
1154
+ var handler = target["on" + evtName];
1155
+ if (handler) {
1156
+ handler(theEvt);
1157
+ }
1158
+ else {
1159
+ var theConsole = getInst("console");
1160
+ theConsole && (theConsole["error"] || theConsole["log"])(evtName, dumpObj(theEvt));
1161
+ }
1162
+ }
1163
+ }
1164
+
1165
+ var STR_PROMISE = "Promise";
1166
+
1167
+ var NODE_UNHANDLED_REJECTION = "unhandledRejection";
1168
+ var UNHANDLED_REJECTION = NODE_UNHANDLED_REJECTION.toLowerCase();
1169
+ var _unhandledRejectionTimeout = 10;
1170
+ var _hasPromiseRejectionEvent;
1171
+ function dumpFnObj(value) {
1172
+ if (isFunction(value)) {
1173
+ return value.toString();
1174
+ }
1175
+ return dumpObj(value);
1176
+ }
1177
+ function _createPromise(newPromise, processor, executor) {
1178
+ var additionalArgs = arrSlice(arguments, 3);
1179
+ var _state = 0 ;
1180
+ var _hasResolved = false;
1181
+ var _settledValue;
1182
+ var _queue = [];
1183
+ var _handled = false;
1184
+ var _unHandledRejectionHandler = null;
1185
+ var _thePromise;
1186
+ !_hasPromiseRejectionEvent && (_hasPromiseRejectionEvent = lazySafeGetInst(STR_PROMISE + "RejectionEvent"));
1187
+ var _then = function (onResolved, onRejected) {
1188
+ try {
1189
+ _handled = true;
1190
+ _unHandledRejectionHandler && _unHandledRejectionHandler.cancel();
1191
+ _unHandledRejectionHandler = null;
1192
+ _debugLog(_toString(), "then(" + dumpFnObj(onResolved) + ", " + dumpFnObj(onResolved) + ")");
1193
+ var thenPromise = newPromise(function (resolve, reject) {
1194
+ _queue.push(function () {
1195
+ try {
1196
+ _debugLog(_toString(), "Handling settled value " + dumpFnObj(_settledValue));
1197
+ var handler = _state === 2 ? onResolved : onRejected;
1198
+ var value = isUndefined(handler) ? _settledValue : (isFunction(handler) ? handler(_settledValue) : handler);
1199
+ _debugLog(_toString(), "Handling Result " + dumpFnObj(value));
1200
+ if (isPromiseLike(value)) {
1201
+ value.then(resolve, reject);
1202
+ }
1203
+ else if (handler) {
1204
+ resolve(value);
1205
+ }
1206
+ else if (_state === 3 ) {
1207
+ reject(value);
1208
+ }
1209
+ else {
1210
+ resolve(value);
1211
+ }
1212
+ }
1213
+ catch (e) {
1214
+ reject(e);
1215
+ }
1216
+ });
1217
+ _debugLog(_toString(), "Added to Queue " + _queue.length);
1218
+ if (_hasResolved) {
1219
+ _processQueue();
1220
+ }
1221
+ }, additionalArgs);
1222
+ _debugLog(_toString(), "Created -> " + thenPromise.toString());
1223
+ return thenPromise;
1224
+ }
1225
+ finally {
1226
+ }
1227
+ };
1228
+ var _catch = function (onRejected) {
1229
+ return _then(undefined, onRejected);
1230
+ };
1231
+ var _finally = function (onFinally) {
1232
+ var thenFinally = onFinally;
1233
+ var catchFinally = onFinally;
1234
+ if (isFunction(onFinally)) {
1235
+ thenFinally = function (value) {
1236
+ onFinally && onFinally();
1237
+ return value;
1238
+ };
1239
+ catchFinally = function (reason) {
1240
+ onFinally && onFinally();
1241
+ throw reason;
1242
+ };
1243
+ }
1244
+ return _then(thenFinally, catchFinally);
1245
+ };
1246
+ var _strState = function () {
1247
+ return STRING_STATES[_state];
1248
+ };
1249
+ var _processQueue = function () {
1250
+ if (_queue.length > 0) {
1251
+ var pending = _queue.slice();
1252
+ _queue = [];
1253
+ _debugLog(_toString(), "Processing queue " + pending.length);
1254
+ _handled = true;
1255
+ processor(pending);
1256
+ _debugLog(_toString(), "Processing done");
1257
+ _unHandledRejectionHandler && _unHandledRejectionHandler.cancel();
1258
+ _unHandledRejectionHandler = null;
1259
+ }
1260
+ else {
1261
+ _debugLog(_toString(), "Empty Processing queue ");
1262
+ }
1263
+ };
1264
+ var _createSettleIfFn = function (newState, allowState) {
1265
+ return function (theValue) {
1266
+ if (_state === allowState) {
1267
+ if (newState === 2 && isPromiseLike(theValue)) {
1268
+ _state = 1 ;
1269
+ _debugLog(_toString(), "Resolving");
1270
+ theValue.then(_createSettleIfFn(2 , 1 ), _createSettleIfFn(3 , 1 ));
1271
+ return;
1272
+ }
1273
+ _state = newState;
1274
+ _hasResolved = true;
1275
+ _settledValue = theValue;
1276
+ _debugLog(_toString(), _strState());
1277
+ _processQueue();
1278
+ if (!_handled && newState === 3 && !_unHandledRejectionHandler) {
1279
+ _unHandledRejectionHandler = scheduleTimeout(_notifyUnhandledRejection, _unhandledRejectionTimeout);
1280
+ }
1281
+ }
1282
+ else {
1283
+ _debugLog(_toString(), "Already " + _strState());
1284
+ }
1285
+ };
1286
+ };
1287
+ var _notifyUnhandledRejection = function () {
1288
+ if (!_handled) {
1289
+ if (isNode()) {
1290
+ _debugLog(_toString(), "Emitting " + NODE_UNHANDLED_REJECTION);
1291
+ process.emit(NODE_UNHANDLED_REJECTION, _settledValue, _thePromise);
1292
+ }
1293
+ else {
1294
+ var gbl = getWindow() || getGlobal();
1295
+ _debugLog(_toString(), "Emitting " + UNHANDLED_REJECTION);
1296
+ emitEvent(gbl, UNHANDLED_REJECTION, function (theEvt) {
1297
+ objDefine(theEvt, "promise", { g: function () { return _thePromise; } });
1298
+ theEvt.reason = _settledValue;
1299
+ return theEvt;
1300
+ }, !!_hasPromiseRejectionEvent.v);
1301
+ }
1302
+ }
1303
+ };
1304
+ _thePromise = {
1305
+ then: _then,
1306
+ "catch": _catch,
1307
+ finally: _finally
1308
+ };
1309
+ objDefineProp(_thePromise, "state", {
1310
+ get: _strState
1311
+ });
1312
+ if (hasSymbol()) {
1313
+ _thePromise[getKnownSymbol(11 )] = "IPromise";
1314
+ }
1315
+ var _toString = function () {
1316
+ return "IPromise" + ("") + " " + _strState() + (_hasResolved ? (" - " + dumpFnObj(_settledValue)) : "");
1317
+ };
1318
+ _thePromise.toString = _toString;
1319
+ (function _initialize() {
1320
+ if (!isFunction(executor)) {
1321
+ throwTypeError(STR_PROMISE + ": executor is not a function - " + dumpFnObj(executor));
1322
+ }
1323
+ var _rejectFn = _createSettleIfFn(3 , 0 );
1324
+ try {
1325
+ _debugLog(_toString(), "Executing");
1326
+ executor.call(_thePromise, _createSettleIfFn(2 , 0 ), _rejectFn);
1327
+ }
1328
+ catch (e) {
1329
+ _rejectFn(e);
1330
+ }
1331
+ })();
1332
+ _debugLog(_toString(), "Returning");
1333
+ return _thePromise;
1334
+ }
1335
+
1336
+ var _processPendingItems = function (pending) {
1337
+ arrForEach(pending, function (fn) {
1338
+ try {
1339
+ fn();
1340
+ }
1341
+ catch (e) {
1342
+ }
1343
+ });
1344
+ };
1345
+ function timeoutItemProcessor(timeout) {
1346
+ var callbackTimeout = isNumber(timeout) ? timeout : 0;
1347
+ return function (pending) {
1348
+ scheduleTimeout(function () {
1349
+ _processPendingItems(pending);
1350
+ }, callbackTimeout);
1351
+ };
1352
+ }
1353
+
1354
+ function createAsyncPromise(executor, timeout) {
1355
+ return _createPromise(createAsyncPromise, timeoutItemProcessor(timeout), executor, timeout);
1356
+ }
1357
+
1358
+ var _isPromiseSupported;
1359
+ function createNativePromise(executor, timeout) {
1360
+ !_isPromiseSupported && (_isPromiseSupported = lazySafeGetInst(STR_PROMISE));
1361
+ var PrmCls = _isPromiseSupported.v;
1362
+ if (!PrmCls) {
1363
+ return createAsyncPromise(executor);
1364
+ }
1365
+ if (!isFunction(executor)) {
1366
+ throwTypeError(STR_PROMISE + ": executor is not a function - " + dumpObj(executor));
1367
+ }
1368
+ var _state = 0 ;
1369
+ function _strState() {
1370
+ return STRING_STATES[_state];
1371
+ }
1372
+ var thePromise = new PrmCls(function (resolve, reject) {
1373
+ function _resolve(value) {
1374
+ _state = 2 ;
1375
+ resolve(value);
1376
+ }
1377
+ function _reject(reason) {
1378
+ _state = 3 ;
1379
+ reject(reason);
1380
+ }
1381
+ executor(_resolve, _reject);
1382
+ });
1383
+ objDefineProp(thePromise, "state", {
1384
+ get: _strState
1385
+ });
1386
+ return thePromise;
1387
+ }
1388
+
1389
+ var _promiseCreator;
1390
+ function createPromise(executor, timeout) {
1391
+ !_promiseCreator && (_promiseCreator = getLazy(function () { return createNativePromise; }));
1392
+ return _promiseCreator.v.call(this, executor, timeout);
1393
+ }
1394
+
1059
1395
  var UNDEFINED_VALUE$1 = undefined;
1060
1396
  var STR_EMPTY = "";
1061
1397
  var STR_CORE = "core";
@@ -1398,7 +1734,7 @@
1398
1734
  return result;
1399
1735
  }
1400
1736
 
1401
- var version = "3.0.1-nightly3.2304-38";
1737
+ var version = "3.0.1-nightly3.2304-44";
1402
1738
  var instanceName = "." + newId(6);
1403
1739
  var _dataUid = 0;
1404
1740
  function _canAcceptData(target) {
@@ -1993,7 +2329,13 @@
1993
2329
  return handler[_DYN_WATCH ](configHandler);
1994
2330
  }
1995
2331
  _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
1996
- createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
2332
+ return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
2333
+ }
2334
+
2335
+ function runTargetUnload(target, isAsync) {
2336
+ if (target && target[_DYN_UNLOAD ]) {
2337
+ return target[_DYN_UNLOAD ](isAsync);
2338
+ }
1997
2339
  }
1998
2340
 
1999
2341
  function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
@@ -2095,8 +2437,9 @@
2095
2437
  var _loggingLevelTelemetry;
2096
2438
  var _maxInternalMessageLimit;
2097
2439
  var _enableDebug;
2440
+ var _unloadHandler;
2098
2441
  dynamicProto(DiagnosticLogger, this, function (_self) {
2099
- _setDefaultsFromConfig(config || {});
2442
+ _unloadHandler = _setDefaultsFromConfig(config || {});
2100
2443
  _self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
2101
2444
  _self[_DYN_THROW_INTERNAL ] = function (severity, msgId, msg, properties, isUserAct) {
2102
2445
  if (isUserAct === void 0) { isUserAct = false; }
@@ -2139,6 +2482,10 @@
2139
2482
  _messageLogged = {};
2140
2483
  };
2141
2484
  _self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
2485
+ _self[_DYN_UNLOAD ] = function (isAsync) {
2486
+ _unloadHandler && _unloadHandler.rm();
2487
+ _unloadHandler = null;
2488
+ };
2142
2489
  function _logInternalMessage(severity, message) {
2143
2490
  if (_areInternalMessagesThrottled()) {
2144
2491
  return;
@@ -2171,8 +2518,7 @@
2171
2518
  }
2172
2519
  }
2173
2520
  function _setDefaultsFromConfig(config) {
2174
- var handler = createDynamicConfig(config, defaultValues$1, _self);
2175
- handler[_DYN_WATCH ](function (details) {
2521
+ return onConfigChange(createDynamicConfig(config, defaultValues$1, _self).cfg, function (details) {
2176
2522
  var config = details.cfg;
2177
2523
  _loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 ];
2178
2524
  _loggingLevelTelemetry = config.loggingLevelTelemetry;
@@ -2491,7 +2837,7 @@
2491
2837
  var context = internalContext.ctx;
2492
2838
  function _processNext(unloadState) {
2493
2839
  var nextPlugin = internalContext._next();
2494
- nextPlugin && nextPlugin.unload(context, unloadState);
2840
+ nextPlugin && nextPlugin[_DYN_UNLOAD ](context, unloadState);
2495
2841
  return !nextPlugin;
2496
2842
  }
2497
2843
  function _createNew(plugins, startAt) {
@@ -3392,7 +3738,7 @@
3392
3738
  return Envelope;
3393
3739
  }());
3394
3740
 
3395
- var Event = /** @class */ (function () {
3741
+ var Event$1 = /** @class */ (function () {
3396
3742
  function Event(logger, name, properties, measurements) {
3397
3743
  this.aiDataContract = {
3398
3744
  ver: 1 ,
@@ -4332,7 +4678,7 @@
4332
4678
  }
4333
4679
  }
4334
4680
  var EnvelopeCreator = {
4335
- Version: "3.0.1-nightly3.2304-38"
4681
+ Version: "3.0.1-nightly3.2304-44"
4336
4682
  };
4337
4683
  function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
4338
4684
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -4356,10 +4702,10 @@
4356
4702
  EnvelopeCreatorInit(logger, telemetryItem);
4357
4703
  var customProperties = {};
4358
4704
  var customMeasurements = {};
4359
- if (telemetryItem[strBaseType] !== Event[_DYN_DATA_TYPE ]) {
4705
+ if (telemetryItem[strBaseType] !== Event$1[_DYN_DATA_TYPE ]) {
4360
4706
  customProperties["baseTypeSource"] = telemetryItem[strBaseType];
4361
4707
  }
4362
- if (telemetryItem[strBaseType] === Event[_DYN_DATA_TYPE ]) {
4708
+ if (telemetryItem[strBaseType] === Event$1[_DYN_DATA_TYPE ]) {
4363
4709
  customProperties = telemetryItem[strBaseData][strProperties] || {};
4364
4710
  customMeasurements = telemetryItem[strBaseData][_DYN_MEASUREMENTS ] || {};
4365
4711
  }
@@ -4373,9 +4719,9 @@
4373
4719
  _convertPropsUndefinedToCustomDefinedValue(customProperties, customUndefinedValue);
4374
4720
  }
4375
4721
  var eventName = telemetryItem[strBaseData][_DYN_NAME ];
4376
- var eventData = new Event(logger, eventName, customProperties, customMeasurements);
4377
- var data = new Data(Event[_DYN_DATA_TYPE ], eventData);
4378
- return _createEnvelope(logger, Event[_DYN_ENVELOPE_TYPE ], telemetryItem, data);
4722
+ var eventData = new Event$1(logger, eventName, customProperties, customMeasurements);
4723
+ var data = new Data(Event$1[_DYN_DATA_TYPE ], eventData);
4724
+ return _createEnvelope(logger, Event$1[_DYN_ENVELOPE_TYPE ], telemetryItem, data);
4379
4725
  }
4380
4726
  function ExceptionEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
4381
4727
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -5018,7 +5364,7 @@
5018
5364
  return !isNaN(value) && value > 0 && value <= 100;
5019
5365
  }
5020
5366
  var EnvelopeTypeCreator = (_b = {},
5021
- _b[Event.dataType] = EventEnvelopeCreator,
5367
+ _b[Event$1.dataType] = EventEnvelopeCreator,
5022
5368
  _b[Trace.dataType] = TraceEnvelopeCreator,
5023
5369
  _b[PageView.dataType] = PageViewEnvelopeCreator,
5024
5370
  _b[PageViewPerformance.dataType] = PageViewPerformanceEnvelopeCreator,
@@ -5057,6 +5403,7 @@
5057
5403
  var _sessionStorageUsed;
5058
5404
  var _bufferOverrideUsed;
5059
5405
  var _namePrefix;
5406
+ var _enableSendPromise;
5060
5407
  dynamicProto(Sender, _this, function (_self, _base) {
5061
5408
  _initDefaults();
5062
5409
  _self.pause = function () {
@@ -5076,7 +5423,7 @@
5076
5423
  if (!_paused) {
5077
5424
  _clearScheduledTimer();
5078
5425
  try {
5079
- _self[_DYN_TRIGGER_SEND ](isAsync, null, sendReason || 1 );
5426
+ return _self[_DYN_TRIGGER_SEND ](isAsync, null, sendReason || 1 );
5080
5427
  }
5081
5428
  catch (e) {
5082
5429
  _throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 22 , "flush failed, telemetry will not be collected: " + getExceptionName(e), { exception: dumpObj(e) });
@@ -5087,14 +5434,14 @@
5087
5434
  if (!_paused) {
5088
5435
  if (_beaconSupported) {
5089
5436
  try {
5090
- _self[_DYN_TRIGGER_SEND ](true, _doUnloadSend, 2 );
5437
+ return _self[_DYN_TRIGGER_SEND ](true, _doUnloadSend, 2 );
5091
5438
  }
5092
5439
  catch (e) {
5093
5440
  _throwInternal(_self[_DYN_DIAG_LOG ](), 1 , 20 , "failed to flush with beacon sender on page unload, telemetry will not be collected: " + getExceptionName(e), { exception: dumpObj(e) });
5094
5441
  }
5095
5442
  }
5096
5443
  else {
5097
- _self.flush();
5444
+ _self.flush(false);
5098
5445
  }
5099
5446
  }
5100
5447
  };
@@ -5173,6 +5520,7 @@
5173
5520
  else {
5174
5521
  _customHeaders = null;
5175
5522
  }
5523
+ _enableSendPromise = senderConfig.enableSendPromise;
5176
5524
  var sendPostFunc = null;
5177
5525
  if (!senderConfig[_DYN_DISABLE_XHR ] && useXDomainRequest()) {
5178
5526
  sendPostFunc = _xdrSender;
@@ -5280,6 +5628,7 @@
5280
5628
  };
5281
5629
  _self[_DYN_TRIGGER_SEND ] = function (async, forcedSender, sendReason) {
5282
5630
  if (async === void 0) { async = true; }
5631
+ var result;
5283
5632
  if (!_paused) {
5284
5633
  try {
5285
5634
  var buffer = _self[_DYN__BUFFER ];
@@ -5288,10 +5637,10 @@
5288
5637
  var payload = buffer.getItems();
5289
5638
  _notifySendRequest(sendReason || 0 , async);
5290
5639
  if (forcedSender) {
5291
- forcedSender.call(_this, payload, async);
5640
+ result = forcedSender.call(_this, payload, async);
5292
5641
  }
5293
5642
  else {
5294
- _self[_DYN__SENDER ](payload, async);
5643
+ result = _self[_DYN__SENDER ](payload, async);
5295
5644
  }
5296
5645
  }
5297
5646
  }
@@ -5307,10 +5656,11 @@
5307
5656
  }
5308
5657
  }
5309
5658
  }
5659
+ return result;
5310
5660
  };
5311
5661
  _self._doTeardown = function (unloadCtx, unloadState) {
5312
5662
  _self.onunloadFlush();
5313
- _offlineListener.unload();
5663
+ runTargetUnload(_offlineListener, false);
5314
5664
  _initDefaults();
5315
5665
  };
5316
5666
  _self[_DYN__ON_ERROR ] = function (payload, message, event) {
@@ -5479,6 +5829,9 @@
5479
5829
  }
5480
5830
  }
5481
5831
  function _xhrSender(payload, isAsync) {
5832
+ var thePromise;
5833
+ var resolveFunc;
5834
+ var rejectFunc;
5482
5835
  var xhr = new XMLHttpRequest();
5483
5836
  var endPointUrl = _endpointUrl;
5484
5837
  try {
@@ -5494,11 +5847,26 @@
5494
5847
  arrForEach(objKeys(_headers), function (headerName) {
5495
5848
  xhr[_DYN_SET_REQUEST_HEADER ](headerName, _headers[headerName]);
5496
5849
  });
5497
- xhr.onreadystatechange = function () { return _self._xhrReadyStateChange(xhr, payload, payload[_DYN_LENGTH ]); };
5498
- xhr.onerror = function (event) { return _self[_DYN__ON_ERROR ](payload, _formatErrorMessageXhr(xhr), event); };
5850
+ xhr.onreadystatechange = function () {
5851
+ _self._xhrReadyStateChange(xhr, payload, payload[_DYN_LENGTH ]);
5852
+ if (xhr.readyState === 4) {
5853
+ resolveFunc && resolveFunc(true);
5854
+ }
5855
+ };
5856
+ xhr.onerror = function (event) {
5857
+ _self[_DYN__ON_ERROR ](payload, _formatErrorMessageXhr(xhr), event);
5858
+ rejectFunc && rejectFunc(event);
5859
+ };
5860
+ if (isAsync && _enableSendPromise) {
5861
+ thePromise = createPromise(function (resolve, reject) {
5862
+ resolveFunc = resolve;
5863
+ rejectFunc = reject;
5864
+ });
5865
+ }
5499
5866
  var batch = _self._buffer[_DYN_BATCH_PAYLOADS ](payload);
5500
5867
  xhr.send(batch);
5501
5868
  _self._buffer[_DYN_MARK_AS_SENT ](payload);
5869
+ return thePromise;
5502
5870
  }
5503
5871
  function _fetchKeepAliveSender(payload, isAsync) {
5504
5872
  if (isArray(payload)) {
@@ -5519,13 +5887,16 @@
5519
5887
  }
5520
5888
  }
5521
5889
  function _fetchSender(payload, isAsync) {
5522
- _doFetchSender(payload, true);
5890
+ return _doFetchSender(payload, true);
5523
5891
  }
5524
5892
  function _doFetchSender(payload, isAsync) {
5525
5893
  var _a;
5526
5894
  var endPointUrl = _endpointUrl;
5527
5895
  var batch = _self._buffer[_DYN_BATCH_PAYLOADS ](payload);
5528
5896
  var plainTextBatch = new Blob([batch], { type: "application/json" });
5897
+ var thePromise;
5898
+ var resolveFunc;
5899
+ var rejectFunc;
5529
5900
  var requestHeaders = new Headers();
5530
5901
  var batchLength = batch[_DYN_LENGTH ];
5531
5902
  var ignoreResponse = false;
@@ -5556,43 +5927,52 @@
5556
5927
  catch (e) {
5557
5928
  }
5558
5929
  _self._buffer[_DYN_MARK_AS_SENT ](payload);
5930
+ if (isAsync && _enableSendPromise) {
5931
+ thePromise = createPromise(function (resolve, reject) {
5932
+ resolveFunc = resolve;
5933
+ rejectFunc = reject;
5934
+ });
5935
+ }
5559
5936
  try {
5560
- fetch(request).then(function (response) {
5937
+ doAwaitResponse(fetch(request), function (result) {
5561
5938
  if (!isAsync) {
5562
5939
  _syncFetchPayload -= batchLength;
5563
5940
  batchLength = 0;
5564
5941
  }
5565
5942
  if (!responseHandled) {
5566
5943
  responseHandled = true;
5567
- if (!response.ok) {
5568
- _self[_DYN__ON_ERROR ](payload, response.statusText);
5944
+ if (!result.rejected) {
5945
+ var response_1 = result.value;
5946
+ if (!response_1.ok) {
5947
+ _self[_DYN__ON_ERROR ](payload, response_1.statusText);
5948
+ resolveFunc && resolveFunc(false);
5949
+ }
5950
+ else {
5951
+ doAwaitResponse(response_1.text(), function (resp) {
5952
+ _checkResponsStatus(response_1.status, payload, response_1.url, payload[_DYN_LENGTH ], response_1.statusText, resp.value || "");
5953
+ resolveFunc && resolveFunc(true);
5954
+ });
5955
+ }
5569
5956
  }
5570
5957
  else {
5571
- response.text().then(function (text) {
5572
- _checkResponsStatus(response.status, payload, response.url, payload[_DYN_LENGTH ], response.statusText, text);
5573
- });
5958
+ _self[_DYN__ON_ERROR ](payload, result.reason && result.reason.message);
5959
+ rejectFunc && rejectFunc(result.reason);
5574
5960
  }
5575
5961
  }
5576
- }).catch(function (error) {
5577
- if (!isAsync) {
5578
- _syncFetchPayload -= batchLength;
5579
- batchLength = 0;
5580
- }
5581
- if (!responseHandled) {
5582
- responseHandled = true;
5583
- _self[_DYN__ON_ERROR ](payload, error.message);
5584
- }
5585
5962
  });
5586
5963
  }
5587
5964
  catch (e) {
5588
5965
  if (!responseHandled) {
5589
5966
  _self[_DYN__ON_ERROR ](payload, dumpObj(e));
5967
+ rejectFunc && rejectFunc(e);
5590
5968
  }
5591
5969
  }
5592
5970
  if (ignoreResponse && !responseHandled) {
5593
5971
  responseHandled = true;
5594
5972
  _self._onSuccess(payload, payload[_DYN_LENGTH ]);
5973
+ resolveFunc && resolveFunc(true);
5595
5974
  }
5975
+ return thePromise;
5596
5976
  }
5597
5977
  function _parseResponse(response) {
5598
5978
  try {
@@ -5779,4 +6159,4 @@
5779
6159
  exports.Sender = Sender;
5780
6160
 
5781
6161
  }));
5782
- //# sourceMappingURL=applicationinsights-channel-js.3.0.1-nightly3.2304-38.js.map
6162
+ //# sourceMappingURL=applicationinsights-channel-js.3.0.1-nightly3.2304-44.js.map