@microsoft/applicationinsights-core-js 3.1.1-nightly3.2403-02 → 3.1.1-nightly3.2403-04

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 (101) hide show
  1. package/browser/es5/applicationinsights-core-js.cjs.js +1321 -745
  2. package/browser/es5/applicationinsights-core-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-core-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-core-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-core-js.gbl.js +1323 -747
  6. package/browser/es5/applicationinsights-core-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-core-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-core-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-core-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-core-js.js +1323 -747
  11. package/browser/es5/applicationinsights-core-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-core-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-core-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-core-js.js +1321 -745
  15. package/dist/es5/applicationinsights-core-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-core-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-core-js.min.js.map +1 -1
  18. package/dist-es5/Config/ConfigDefaultHelpers.js +1 -1
  19. package/dist-es5/Config/ConfigDefaults.js +1 -1
  20. package/dist-es5/Config/DynamicConfig.js +1 -1
  21. package/dist-es5/Config/DynamicProperty.js +1 -1
  22. package/dist-es5/Config/DynamicState.js +1 -1
  23. package/dist-es5/Config/DynamicSupport.js +1 -1
  24. package/dist-es5/Config/IConfigDefaults.js +1 -1
  25. package/dist-es5/Config/IDynamicConfigHandler.js +1 -1
  26. package/dist-es5/Config/IDynamicPropertyHandler.js +1 -1
  27. package/dist-es5/Config/IDynamicWatcher.js +1 -1
  28. package/dist-es5/Config/_IDynamicConfigHandlerState.js +1 -1
  29. package/dist-es5/JavaScriptSDK/AggregationError.js +1 -1
  30. package/dist-es5/JavaScriptSDK/AppInsightsCore.js +1 -1
  31. package/dist-es5/JavaScriptSDK/AsyncUtils.js +1 -1
  32. package/dist-es5/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  33. package/dist-es5/JavaScriptSDK/Constants.js +9 -1
  34. package/dist-es5/JavaScriptSDK/Constants.js.map +1 -1
  35. package/dist-es5/JavaScriptSDK/CookieMgr.js +3 -3
  36. package/dist-es5/JavaScriptSDK/CookieMgr.js.map +1 -1
  37. package/dist-es5/JavaScriptSDK/CoreUtils.js +1 -1
  38. package/dist-es5/JavaScriptSDK/DataCacheHelper.js +1 -1
  39. package/dist-es5/JavaScriptSDK/DbgExtensionUtils.js +1 -1
  40. package/dist-es5/JavaScriptSDK/DiagnosticLogger.js +1 -1
  41. package/dist-es5/JavaScriptSDK/EnvUtils.js +1 -1
  42. package/dist-es5/JavaScriptSDK/EventHelpers.js +1 -1
  43. package/dist-es5/JavaScriptSDK/HelperFuncs.js +171 -3
  44. package/dist-es5/JavaScriptSDK/HelperFuncs.js.map +1 -1
  45. package/dist-es5/JavaScriptSDK/InstrumentHooks.js +1 -1
  46. package/dist-es5/JavaScriptSDK/InternalConstants.js +1 -1
  47. package/dist-es5/JavaScriptSDK/NotificationManager.js +3 -3
  48. package/dist-es5/JavaScriptSDK/NotificationManager.js.map +1 -1
  49. package/dist-es5/JavaScriptSDK/PerfManager.js +1 -1
  50. package/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js +1 -1
  51. package/dist-es5/JavaScriptSDK/RandomHelper.js +1 -1
  52. package/dist-es5/JavaScriptSDK/SenderPostManager.js +533 -0
  53. package/dist-es5/JavaScriptSDK/SenderPostManager.js.map +1 -0
  54. package/dist-es5/JavaScriptSDK/TelemetryHelpers.js +1 -1
  55. package/dist-es5/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  56. package/dist-es5/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  57. package/dist-es5/JavaScriptSDK/UnloadHookContainer.js +1 -1
  58. package/dist-es5/JavaScriptSDK/W3cTraceParent.js +1 -1
  59. package/dist-es5/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  60. package/dist-es5/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
  61. package/dist-es5/JavaScriptSDK.Enums/FeatureOptInEnums.js +1 -1
  62. package/dist-es5/JavaScriptSDK.Enums/LoggingEnums.js +1 -1
  63. package/dist-es5/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  64. package/dist-es5/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  65. package/dist-es5/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  66. package/dist-es5/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  67. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  68. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControlsHost.js +1 -1
  69. package/dist-es5/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
  70. package/dist-es5/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  71. package/dist-es5/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  72. package/dist-es5/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  73. package/dist-es5/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  74. package/dist-es5/JavaScriptSDK.Interfaces/IFeatureOptIn.js +1 -1
  75. package/dist-es5/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  76. package/dist-es5/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  77. package/dist-es5/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  78. package/dist-es5/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  79. package/dist-es5/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  80. package/dist-es5/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  81. package/dist-es5/JavaScriptSDK.Interfaces/ISenderPostManager.js +6 -0
  82. package/dist-es5/JavaScriptSDK.Interfaces/ISenderPostManager.js.map +1 -0
  83. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  84. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  85. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  86. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  87. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  88. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  89. package/dist-es5/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  90. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  91. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  92. package/dist-es5/JavaScriptSDK.Interfaces/IXDomainRequest.js +6 -0
  93. package/dist-es5/JavaScriptSDK.Interfaces/IXDomainRequest.js.map +1 -0
  94. package/dist-es5/JavaScriptSDK.Interfaces/IXHROverride.js +1 -1
  95. package/dist-es5/__DynamicConstants.js +19 -8
  96. package/dist-es5/__DynamicConstants.js.map +1 -1
  97. package/dist-es5/applicationinsights-core-js.js +3 -2
  98. package/dist-es5/applicationinsights-core-js.js.map +1 -1
  99. package/package.json +1 -1
  100. package/types/applicationinsights-core-js.d.ts +241 -1
  101. package/types/applicationinsights-core-js.namespaced.d.ts +241 -1
@@ -1,11 +1,11 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.1.1-nightly3.2403-02
2
+ * Application Insights JavaScript SDK - Core, 3.1.1-nightly3.2403-04
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
6
6
  var undef = "undefined";
7
- var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_core_js_3_1_1_nightly3_2403_02", msMod="__ms$mod__";
8
- var mods={}, modDetail=mods[modName]={}, ver="3.1.1-nightly3.2403-02";
7
+ var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_core_js_3_1_1_nightly3_2403_04", msMod="__ms$mod__";
8
+ var mods={}, modDetail=mods[modName]={}, ver="3.1.1-nightly3.2403-04";
9
9
  var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{});
10
10
  // Versioned namespace "Microsoft.ApplicationInsights3"
11
11
  var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
@@ -1143,6 +1143,7 @@ var _DYN__DO_TEARDOWN = "_doTeardown";
1143
1143
  var _DYN_UPDATE = "update";
1144
1144
  var _DYN_GET_NEXT = "getNext";
1145
1145
  var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
1146
+ var _DYN_PROTOCOL = "protocol";
1146
1147
  var _DYN_USER_AGENT = "userAgent";
1147
1148
  var _DYN_SPLIT = "split";
1148
1149
  var _DYN_NODE_TYPE = "nodeType";
@@ -1150,10 +1151,20 @@ var _DYN_REPLACE = "replace";
1150
1151
  var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
1151
1152
  var _DYN_TYPE = "type";
1152
1153
  var _DYN_HANDLER = "handler";
1154
+ var _DYN_STATUS = "status";
1155
+ var _DYN_ITEMS_RECEIVED = "itemsReceived";
1156
+ var _DYN_GET_RESPONSE_HEADER = "getResponseHeader";
1157
+ var _DYN_GET_ALL_RESPONSE_HEA5 = "getAllResponseHeaders";
1153
1158
  var _DYN_IS_CHILD_EVT = "isChildEvt";
1159
+ var _DYN_DATA = "data";
1154
1160
  var _DYN_GET_CTX = "getCtx";
1155
1161
  var _DYN_SET_CTX = "setCtx";
1156
1162
  var _DYN_COMPLETE = "complete";
1163
+ var _DYN_URL_STRING = "urlString";
1164
+ var _DYN_SEND_POST = "sendPOST";
1165
+ var _DYN_HEADERS = "headers";
1166
+ var _DYN_TIMEOUT = "timeout";
1167
+ var _DYN_SET_REQUEST_HEADER = "setRequestHeader";
1157
1168
  var _DYN_TRACE_ID = "traceId";
1158
1169
  var _DYN_SPAN_ID = "spanId";
1159
1170
  var _DYN_TRACE_FLAGS = "traceFlags";
@@ -1793,7 +1804,7 @@ function createPromise(executor, timeout) {
1793
1804
  var createAllPromise = _createAllPromise(createPromise);
1794
1805
 
1795
1806
  var UNDEFINED_VALUE = undefined;
1796
- var STR_EMPTY = "";
1807
+ var STR_EMPTY$1 = "";
1797
1808
  var STR_CHANNELS = "channels";
1798
1809
  var STR_CORE = "core";
1799
1810
  var STR_CREATE_PERF_MGR = "createPerfMgr";
@@ -1814,208 +1825,43 @@ var STR_DOMAIN = "domain";
1814
1825
  var STR_PATH = "path";
1815
1826
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1816
1827
 
1817
- var strGetPrototypeOf = "getPrototypeOf";
1818
- var rCamelCase = /-([a-z])/g;
1819
- var rNormalizeInvalid = /([^\w\d_$])/g;
1820
- var rLeadingNumeric = /^(\d+[\w\d_$])/;
1821
- var _getObjProto = Object[strGetPrototypeOf];
1822
- function isNotUndefined(value) {
1823
- return !isUndefined(value);
1824
- }
1825
- function isNotNullOrUndefined(value) {
1826
- return !isNullOrUndefined(value);
1827
- }
1828
- function normalizeJsName(name) {
1829
- var value = name;
1830
- if (value && isString(value)) {
1831
- value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
1832
- return letter.toUpperCase();
1833
- });
1834
- value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
1835
- value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
1836
- return "_" + match;
1837
- });
1838
- }
1839
- return value;
1840
- }
1841
- function strContains(value, search) {
1842
- if (value && search) {
1843
- return strIndexOf(value, search) !== -1;
1844
- }
1845
- return false;
1846
- }
1847
- function toISOString(date) {
1848
- return date && date.toISOString() || "";
1849
- }
1850
- function getExceptionName(object) {
1851
- if (isError(object)) {
1852
- return object[_DYN_NAME ];
1853
- }
1854
- return STR_EMPTY;
1855
- }
1856
- function setValue(target, field, value, valChk, srcChk) {
1857
- var theValue = value;
1858
- if (target) {
1859
- theValue = target[field];
1860
- if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
1861
- theValue = value;
1862
- target[field] = theValue;
1863
- }
1864
- }
1865
- return theValue;
1866
- }
1867
- function getSetValue(target, field, defValue) {
1868
- var theValue;
1869
- if (target) {
1870
- theValue = target[field];
1871
- if (!theValue && isNullOrUndefined(theValue)) {
1872
- theValue = !isUndefined(defValue) ? defValue : {};
1873
- target[field] = theValue;
1874
- }
1875
- }
1876
- else {
1877
- theValue = !isUndefined(defValue) ? defValue : {};
1878
- }
1879
- return theValue;
1880
- }
1881
- function _createProxyFunction(source, funcName) {
1882
- var srcFunc = null;
1883
- var src = null;
1884
- if (isFunction(source)) {
1885
- srcFunc = source;
1886
- }
1887
- else {
1888
- src = source;
1889
- }
1828
+ var listenerFuncs = [STR_EVENTS_SENT, STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_PERF_EVENT];
1829
+ var _aiNamespace = null;
1830
+ var _debugListener;
1831
+ function _listenerProxyFunc(name, config) {
1890
1832
  return function () {
1891
- var originalArguments = arguments;
1892
- if (srcFunc) {
1893
- src = srcFunc();
1894
- }
1895
- if (src) {
1896
- return src[funcName][_DYN_APPLY ](src, originalArguments);
1897
- }
1898
- };
1899
- }
1900
- function proxyAssign(target, source, chkSet) {
1901
- if (target && source && isObject(target) && isObject(source)) {
1902
- var _loop_1 = function (field) {
1903
- if (isString(field)) {
1904
- var value = source[field];
1905
- if (isFunction(value)) {
1906
- if (!chkSet || chkSet(field, true, source, target)) {
1907
- target[field] = _createProxyFunction(source, field);
1908
- }
1909
- }
1910
- else if (!chkSet || chkSet(field, false, source, target)) {
1911
- if (objHasOwn(target, field)) {
1912
- delete target[field];
1913
- }
1914
- objDefine(target, field, {
1915
- g: function () {
1916
- return source[field];
1917
- },
1918
- s: function (theValue) {
1919
- source[field] = theValue;
1920
- }
1921
- });
1922
- }
1833
+ var args = arguments;
1834
+ var dbgExt = getDebugExt(config);
1835
+ if (dbgExt) {
1836
+ var listener = dbgExt.listener;
1837
+ if (listener && listener[name]) {
1838
+ listener[name][_DYN_APPLY ](listener, args);
1923
1839
  }
1924
- };
1925
- for (var field in source) {
1926
- _loop_1(field);
1927
- }
1928
- }
1929
- return target;
1930
- }
1931
- function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
1932
- if (target && name && source) {
1933
- if (overwriteTarget !== false || isUndefined(target[name])) {
1934
- target[name] = _createProxyFunction(source, theFunc);
1935
1840
  }
1936
- }
1841
+ };
1937
1842
  }
1938
- function proxyFunctions(target, source, functionsToProxy, overwriteTarget) {
1939
- if (target && source && isObject(target) && isArray(functionsToProxy)) {
1940
- arrForEach(functionsToProxy, function (theFuncName) {
1941
- if (isString(theFuncName)) {
1942
- proxyFunctionAs(target, theFuncName, source, theFuncName, overwriteTarget);
1943
- }
1944
- });
1843
+ function _getExtensionNamespace() {
1844
+ var target = getInst("Microsoft");
1845
+ if (target) {
1846
+ _aiNamespace = target["ApplicationInsights"];
1945
1847
  }
1946
- return target;
1947
- }
1948
- function createClassFromInterface(defaults) {
1949
- return /** @class */ (function () {
1950
- function class_1() {
1951
- var _this = this;
1952
- if (defaults) {
1953
- objForEachKey(defaults, function (field, value) {
1954
- _this[field] = value;
1955
- });
1956
- }
1957
- }
1958
- return class_1;
1959
- }());
1848
+ return _aiNamespace;
1960
1849
  }
1961
- function optimizeObject(theObject) {
1962
- if (theObject && objAssign) {
1963
- theObject = ObjClass(objAssign({}, theObject));
1850
+ function getDebugExt(config) {
1851
+ var ns = _aiNamespace;
1852
+ if (!ns && config.disableDbgExt !== true) {
1853
+ ns = _aiNamespace || _getExtensionNamespace();
1964
1854
  }
1965
- return theObject;
1855
+ return ns ? ns["ChromeDbgExt"] : null;
1966
1856
  }
1967
- function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
1968
- var theArgs = arguments;
1969
- var extended = theArgs[0] || {};
1970
- var argLen = theArgs[_DYN_LENGTH ];
1971
- var deep = false;
1972
- var idx = 1;
1973
- if (argLen > 0 && isBoolean(extended)) {
1974
- deep = extended;
1975
- extended = theArgs[idx] || {};
1976
- idx++;
1977
- }
1978
- if (!isObject(extended)) {
1979
- extended = {};
1980
- }
1981
- for (; idx < argLen; idx++) {
1982
- var arg = theArgs[idx];
1983
- var isArgArray = isArray(arg);
1984
- var isArgObj = isObject(arg);
1985
- for (var prop in arg) {
1986
- var propOk = (isArgArray && (prop in arg)) || (isArgObj && objHasOwn(arg, prop));
1987
- if (!propOk) {
1988
- continue;
1989
- }
1990
- var newValue = arg[prop];
1991
- var isNewArray = void 0;
1992
- if (deep && newValue && ((isNewArray = isArray(newValue)) || isPlainObject(newValue))) {
1993
- var clone = extended[prop];
1994
- if (isNewArray) {
1995
- if (!isArray(clone)) {
1996
- clone = [];
1997
- }
1998
- }
1999
- else if (!isPlainObject(clone)) {
2000
- clone = {};
2001
- }
2002
- newValue = objExtend(deep, clone, newValue);
2003
- }
2004
- if (newValue !== undefined) {
2005
- extended[prop] = newValue;
2006
- }
1857
+ function getDebugListener(config) {
1858
+ if (!_debugListener) {
1859
+ _debugListener = {};
1860
+ for (var lp = 0; lp < listenerFuncs[_DYN_LENGTH ]; lp++) {
1861
+ _debugListener[listenerFuncs[lp]] = _listenerProxyFunc(listenerFuncs[lp], config);
2007
1862
  }
2008
1863
  }
2009
- return extended;
2010
- }
2011
- function isFeatureEnabled(feature, cfg) {
2012
- var rlt = false;
2013
- var ft = cfg && cfg.featureOptIn && cfg.featureOptIn[feature];
2014
- if (feature && ft) {
2015
- var mode = ft.mode;
2016
- rlt = (mode == 3 ) || (mode == 1 );
2017
- }
2018
- return rlt;
1864
+ return _debugListener;
2019
1865
  }
2020
1866
 
2021
1867
  var strDocumentMode = "documentMode";
@@ -2105,7 +1951,7 @@ function isIE() {
2105
1951
  var nav = getNavigator();
2106
1952
  if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
2107
1953
  _navUserAgentCheck = nav[_DYN_USER_AGENT ];
2108
- var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1954
+ var userAgent = (_navUserAgentCheck || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ]();
2109
1955
  _isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
2110
1956
  }
2111
1957
  return _isTrident;
@@ -2114,9 +1960,9 @@ function getIEVersion(userAgentStr) {
2114
1960
  if (userAgentStr === void 0) { userAgentStr = null; }
2115
1961
  if (!userAgentStr) {
2116
1962
  var navigator_1 = getNavigator() || {};
2117
- userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1963
+ userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY$1;
2118
1964
  }
2119
- var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1965
+ var ua = (userAgentStr || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ]();
2120
1966
  if (strContains(ua, strMsie)) {
2121
1967
  var doc = getDocument() || {};
2122
1968
  return Math.max(parseInt(ua[_DYN_SPLIT ](strMsie)[1]), (doc[strDocumentMode] || 0));
@@ -2132,9 +1978,9 @@ function getIEVersion(userAgentStr) {
2132
1978
  function isSafari(userAgentStr) {
2133
1979
  if (!userAgentStr || !isString(userAgentStr)) {
2134
1980
  var navigator_2 = getNavigator() || {};
2135
- userAgentStr = navigator_2 ? (navigator_2.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1981
+ userAgentStr = navigator_2 ? (navigator_2.userAgent || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY$1;
2136
1982
  }
2137
- var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1983
+ var ua = (userAgentStr || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ]();
2138
1984
  return (strIndexOf(ua, "safari") >= 0);
2139
1985
  }
2140
1986
  function isBeaconsSupported(useCached) {
@@ -2239,235 +2085,750 @@ function sendCustomEvent(evtName, cfg, customDetails) {
2239
2085
  return false;
2240
2086
  }
2241
2087
 
2242
- var UInt32Mask = 0x100000000;
2243
- var MaxUInt32 = 0xffffffff;
2244
- var SEED1 = 123456789;
2245
- var SEED2 = 987654321;
2246
- var _mwcSeeded = false;
2247
- var _mwcW = SEED1;
2248
- var _mwcZ = SEED2;
2249
- function _mwcSeed(seedValue) {
2250
- if (seedValue < 0) {
2251
- seedValue >>>= 0;
2088
+ var _a$3;
2089
+ var STR_WARN_TO_CONSOLE = "warnToConsole";
2090
+ var AiNonUserActionablePrefix = "AI (Internal): ";
2091
+ var AiUserActionablePrefix = "AI: ";
2092
+ var AIInternalMessagePrefix = "AITR_";
2093
+ var defaultValues$2 = {
2094
+ loggingLevelConsole: 0,
2095
+ loggingLevelTelemetry: 1,
2096
+ maxMessageLimit: 25,
2097
+ enableDebug: false
2098
+ };
2099
+ var _logFuncs = (_a$3 = {},
2100
+ _a$3[0 ] = null,
2101
+ _a$3[1 ] = "errorToConsole",
2102
+ _a$3[2 ] = STR_WARN_TO_CONSOLE,
2103
+ _a$3[3 ] = "debugToConsole",
2104
+ _a$3);
2105
+ function _sanitizeDiagnosticText(text) {
2106
+ if (text) {
2107
+ return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY$1) + "\"";
2252
2108
  }
2253
- _mwcW = (SEED1 + seedValue) & MaxUInt32;
2254
- _mwcZ = (SEED2 - seedValue) & MaxUInt32;
2255
- _mwcSeeded = true;
2109
+ return STR_EMPTY$1;
2256
2110
  }
2257
- function _autoSeedMwc() {
2258
- try {
2259
- var now = utcNow() & 0x7fffffff;
2260
- _mwcSeed(((Math.random() * UInt32Mask) ^ now) + now);
2261
- }
2262
- catch (e) {
2263
- }
2264
- }
2265
- function randomValue(maxValue) {
2266
- if (maxValue > 0) {
2267
- return Math.floor((random32() / MaxUInt32) * (maxValue + 1)) >>> 0;
2111
+ function _logToConsole(func, message) {
2112
+ var theConsole = getConsole();
2113
+ if (!!theConsole) {
2114
+ var logFunc = "log";
2115
+ if (theConsole[func]) {
2116
+ logFunc = func;
2117
+ }
2118
+ if (isFunction(theConsole[logFunc])) {
2119
+ theConsole[logFunc](message);
2120
+ }
2268
2121
  }
2269
- return 0;
2270
2122
  }
2271
- function random32(signed) {
2272
- var value = 0;
2273
- var c = getCrypto() || getMsCrypto();
2274
- if (c && c.getRandomValues) {
2275
- value = c.getRandomValues(new Uint32Array(1))[0] & MaxUInt32;
2276
- }
2277
- if (value === 0 && isIE()) {
2278
- if (!_mwcSeeded) {
2279
- _autoSeedMwc();
2123
+ var _InternalLogMessage = /** @class */ (function () {
2124
+ function _InternalLogMessage(msgId, msg, isUserAct, properties) {
2125
+ if (isUserAct === void 0) { isUserAct = false; }
2126
+ var _self = this;
2127
+ _self[_DYN_MESSAGE_ID ] = msgId;
2128
+ _self[_DYN_MESSAGE ] =
2129
+ (isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
2130
+ msgId;
2131
+ var strProps = STR_EMPTY$1;
2132
+ if (hasJSON()) {
2133
+ strProps = getJSON().stringify(properties);
2280
2134
  }
2281
- value = mwcRandom32() & MaxUInt32;
2135
+ var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY$1) +
2136
+ (properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY$1);
2137
+ _self[_DYN_MESSAGE ] += diagnosticText;
2282
2138
  }
2283
- if (value === 0) {
2284
- value = Math.floor((UInt32Mask * Math.random()) | 0);
2139
+ _InternalLogMessage.dataType = "MessageData";
2140
+ return _InternalLogMessage;
2141
+ }());
2142
+ function safeGetLogger(core, config) {
2143
+ return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
2144
+ }
2145
+ var DiagnosticLogger = /** @class */ (function () {
2146
+ function DiagnosticLogger(config) {
2147
+ this.identifier = "DiagnosticLogger";
2148
+ this.queue = [];
2149
+ var _messageCount = 0;
2150
+ var _messageLogged = {};
2151
+ var _loggingLevelConsole;
2152
+ var _loggingLevelTelemetry;
2153
+ var _maxInternalMessageLimit;
2154
+ var _enableDebug;
2155
+ var _unloadHandler;
2156
+ dynamicProto(DiagnosticLogger, this, function (_self) {
2157
+ _unloadHandler = _setDefaultsFromConfig(config || {});
2158
+ _self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
2159
+ _self[_DYN_THROW_INTERNAL ] = function (severity, msgId, msg, properties, isUserAct) {
2160
+ if (isUserAct === void 0) { isUserAct = false; }
2161
+ var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
2162
+ if (_enableDebug) {
2163
+ throw dumpObj(message);
2164
+ }
2165
+ else {
2166
+ var logFunc = _logFuncs[severity] || STR_WARN_TO_CONSOLE;
2167
+ if (!isUndefined(message[_DYN_MESSAGE ])) {
2168
+ if (isUserAct) {
2169
+ var messageKey = +message[_DYN_MESSAGE_ID ];
2170
+ if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
2171
+ _self[logFunc](message[_DYN_MESSAGE ]);
2172
+ _messageLogged[messageKey] = true;
2173
+ }
2174
+ }
2175
+ else {
2176
+ if (_loggingLevelConsole >= severity) {
2177
+ _self[logFunc](message[_DYN_MESSAGE ]);
2178
+ }
2179
+ }
2180
+ _logInternalMessage(severity, message);
2181
+ }
2182
+ else {
2183
+ _debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
2184
+ }
2185
+ }
2186
+ };
2187
+ _self.debugToConsole = function (message) {
2188
+ _logToConsole("debug", message);
2189
+ _debugExtMsg("warning", message);
2190
+ };
2191
+ _self[_DYN_WARN_TO_CONSOLE ] = function (message) {
2192
+ _logToConsole("warn", message);
2193
+ _debugExtMsg("warning", message);
2194
+ };
2195
+ _self.errorToConsole = function (message) {
2196
+ _logToConsole("error", message);
2197
+ _debugExtMsg("error", message);
2198
+ };
2199
+ _self.resetInternalMessageCount = function () {
2200
+ _messageCount = 0;
2201
+ _messageLogged = {};
2202
+ };
2203
+ _self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
2204
+ _self[_DYN_UNLOAD ] = function (isAsync) {
2205
+ _unloadHandler && _unloadHandler.rm();
2206
+ _unloadHandler = null;
2207
+ };
2208
+ function _logInternalMessage(severity, message) {
2209
+ if (_areInternalMessagesThrottled()) {
2210
+ return;
2211
+ }
2212
+ var logMessage = true;
2213
+ var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
2214
+ if (_messageLogged[messageKey]) {
2215
+ logMessage = false;
2216
+ }
2217
+ else {
2218
+ _messageLogged[messageKey] = true;
2219
+ }
2220
+ if (logMessage) {
2221
+ if (severity <= _loggingLevelTelemetry) {
2222
+ _self.queue[_DYN_PUSH ](message);
2223
+ _messageCount++;
2224
+ _debugExtMsg((severity === 1 ? "error" : "warn"), message);
2225
+ }
2226
+ if (_messageCount === _maxInternalMessageLimit) {
2227
+ var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
2228
+ var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
2229
+ _self.queue[_DYN_PUSH ](throttleMessage);
2230
+ if (severity === 1 ) {
2231
+ _self.errorToConsole(throttleLimitMessage);
2232
+ }
2233
+ else {
2234
+ _self[_DYN_WARN_TO_CONSOLE ](throttleLimitMessage);
2235
+ }
2236
+ }
2237
+ }
2238
+ }
2239
+ function _setDefaultsFromConfig(config) {
2240
+ return onConfigChange(createDynamicConfig(config, defaultValues$2, _self).cfg, function (details) {
2241
+ var config = details.cfg;
2242
+ _loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 ];
2243
+ _loggingLevelTelemetry = config.loggingLevelTelemetry;
2244
+ _maxInternalMessageLimit = config.maxMessageLimit;
2245
+ _enableDebug = config.enableDebug;
2246
+ });
2247
+ }
2248
+ function _areInternalMessagesThrottled() {
2249
+ return _messageCount >= _maxInternalMessageLimit;
2250
+ }
2251
+ function _debugExtMsg(name, data) {
2252
+ var dbgExt = getDebugExt(config || {});
2253
+ if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
2254
+ dbgExt[_DYN_DIAG_LOG ](name, data);
2255
+ }
2256
+ }
2257
+ });
2285
2258
  }
2286
- if (!signed) {
2287
- value >>>= 0;
2259
+ DiagnosticLogger.__ieDyn=1;
2260
+ return DiagnosticLogger;
2261
+ }());
2262
+ function _getLogger(logger) {
2263
+ return (logger || new DiagnosticLogger());
2264
+ }
2265
+ function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
2266
+ if (isUserAct === void 0) { isUserAct = false; }
2267
+ _getLogger(logger)[_DYN_THROW_INTERNAL ](severity, msgId, msg, properties, isUserAct);
2268
+ }
2269
+ function _warnToConsole(logger, message) {
2270
+ _getLogger(logger)[_DYN_WARN_TO_CONSOLE ](message);
2271
+ }
2272
+ function _logInternalMessage(logger, severity, message) {
2273
+ _getLogger(logger)[_DYN_LOG_INTERNAL_MESSAGE ](severity, message);
2274
+ }
2275
+
2276
+ var strGetPrototypeOf = "getPrototypeOf";
2277
+ var rCamelCase = /-([a-z])/g;
2278
+ var rNormalizeInvalid = /([^\w\d_$])/g;
2279
+ var rLeadingNumeric = /^(\d+[\w\d_$])/;
2280
+ var _getObjProto = Object[strGetPrototypeOf];
2281
+ function isNotUndefined(value) {
2282
+ return !isUndefined(value);
2283
+ }
2284
+ function isNotNullOrUndefined(value) {
2285
+ return !isNullOrUndefined(value);
2286
+ }
2287
+ function normalizeJsName(name) {
2288
+ var value = name;
2289
+ if (value && isString(value)) {
2290
+ value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
2291
+ return letter.toUpperCase();
2292
+ });
2293
+ value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
2294
+ value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
2295
+ return "_" + match;
2296
+ });
2288
2297
  }
2289
2298
  return value;
2290
2299
  }
2291
- function mwcRandomSeed(value) {
2292
- if (!value) {
2293
- _autoSeedMwc();
2300
+ function strContains(value, search) {
2301
+ if (value && search) {
2302
+ return strIndexOf(value, search) !== -1;
2294
2303
  }
2295
- else {
2296
- _mwcSeed(value);
2304
+ return false;
2305
+ }
2306
+ function toISOString(date) {
2307
+ return date && date.toISOString() || "";
2308
+ }
2309
+ function getExceptionName(object) {
2310
+ if (isError(object)) {
2311
+ return object[_DYN_NAME ];
2297
2312
  }
2313
+ return STR_EMPTY$1;
2298
2314
  }
2299
- function mwcRandom32(signed) {
2300
- _mwcZ = (36969 * (_mwcZ & 0xFFFF) + (_mwcZ >> 16)) & MaxUInt32;
2301
- _mwcW = (18000 * (_mwcW & 0xFFFF) + (_mwcW >> 16)) & MaxUInt32;
2302
- var value = (((_mwcZ << 16) + (_mwcW & 0xFFFF)) >>> 0) & MaxUInt32 | 0;
2303
- if (!signed) {
2304
- value >>>= 0;
2315
+ function setValue(target, field, value, valChk, srcChk) {
2316
+ var theValue = value;
2317
+ if (target) {
2318
+ theValue = target[field];
2319
+ if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {
2320
+ theValue = value;
2321
+ target[field] = theValue;
2322
+ }
2305
2323
  }
2306
- return value;
2324
+ return theValue;
2307
2325
  }
2308
- function newId(maxLength) {
2309
- if (maxLength === void 0) { maxLength = 22; }
2310
- var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
2311
- var number = random32() >>> 0;
2312
- var chars = 0;
2313
- var result = STR_EMPTY;
2314
- while (result[_DYN_LENGTH ] < maxLength) {
2315
- chars++;
2316
- result += base64chars.charAt(number & 0x3F);
2317
- number >>>= 6;
2318
- if (chars === 5) {
2319
- number = (((random32() << 2) & 0xFFFFFFFF) | (number & 0x03)) >>> 0;
2320
- chars = 0;
2326
+ function getSetValue(target, field, defValue) {
2327
+ var theValue;
2328
+ if (target) {
2329
+ theValue = target[field];
2330
+ if (!theValue && isNullOrUndefined(theValue)) {
2331
+ theValue = !isUndefined(defValue) ? defValue : {};
2332
+ target[field] = theValue;
2321
2333
  }
2322
2334
  }
2323
- return result;
2335
+ else {
2336
+ theValue = !isUndefined(defValue) ? defValue : {};
2337
+ }
2338
+ return theValue;
2324
2339
  }
2325
-
2326
- var version = "3.0.5";
2327
- var instanceName = "." + newId(6);
2328
- var _dataUid = 0;
2329
- function _canAcceptData(target) {
2330
- return target[_DYN_NODE_TYPE ] === 1 || target[_DYN_NODE_TYPE ] === 9 || !(+target[_DYN_NODE_TYPE ]);
2340
+ function _createProxyFunction(source, funcName) {
2341
+ var srcFunc = null;
2342
+ var src = null;
2343
+ if (isFunction(source)) {
2344
+ srcFunc = source;
2345
+ }
2346
+ else {
2347
+ src = source;
2348
+ }
2349
+ return function () {
2350
+ var originalArguments = arguments;
2351
+ if (srcFunc) {
2352
+ src = srcFunc();
2353
+ }
2354
+ if (src) {
2355
+ return src[funcName][_DYN_APPLY ](src, originalArguments);
2356
+ }
2357
+ };
2331
2358
  }
2332
- function _getCache(data, target) {
2333
- var theCache = target[data.id];
2334
- if (!theCache) {
2335
- theCache = {};
2336
- try {
2337
- if (_canAcceptData(target)) {
2338
- objDefine(target, data.id, {
2339
- e: false,
2340
- v: theCache
2341
- });
2359
+ function proxyAssign(target, source, chkSet) {
2360
+ if (target && source && isObject(target) && isObject(source)) {
2361
+ var _loop_1 = function (field) {
2362
+ if (isString(field)) {
2363
+ var value = source[field];
2364
+ if (isFunction(value)) {
2365
+ if (!chkSet || chkSet(field, true, source, target)) {
2366
+ target[field] = _createProxyFunction(source, field);
2367
+ }
2368
+ }
2369
+ else if (!chkSet || chkSet(field, false, source, target)) {
2370
+ if (objHasOwn(target, field)) {
2371
+ delete target[field];
2372
+ }
2373
+ objDefine(target, field, {
2374
+ g: function () {
2375
+ return source[field];
2376
+ },
2377
+ s: function (theValue) {
2378
+ source[field] = theValue;
2379
+ }
2380
+ });
2381
+ }
2342
2382
  }
2343
- }
2344
- catch (e) {
2383
+ };
2384
+ for (var field in source) {
2385
+ _loop_1(field);
2345
2386
  }
2346
2387
  }
2347
- return theCache;
2388
+ return target;
2348
2389
  }
2349
- function createUniqueNamespace(name, includeVersion) {
2350
- if (includeVersion === void 0) { includeVersion = false; }
2351
- return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
2390
+ function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
2391
+ if (target && name && source) {
2392
+ if (overwriteTarget !== false || isUndefined(target[name])) {
2393
+ target[name] = _createProxyFunction(source, theFunc);
2394
+ }
2395
+ }
2352
2396
  }
2353
- function createElmNodeData(name) {
2354
- var data = {
2355
- id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
2356
- accept: function (target) {
2357
- return _canAcceptData(target);
2358
- },
2359
- get: function (target, name, defValue, addDefault) {
2360
- var theCache = target[data.id];
2361
- if (!theCache) {
2362
- if (addDefault) {
2363
- theCache = _getCache(data, target);
2364
- theCache[normalizeJsName(name)] = defValue;
2365
- }
2366
- return defValue;
2397
+ function proxyFunctions(target, source, functionsToProxy, overwriteTarget) {
2398
+ if (target && source && isObject(target) && isArray(functionsToProxy)) {
2399
+ arrForEach(functionsToProxy, function (theFuncName) {
2400
+ if (isString(theFuncName)) {
2401
+ proxyFunctionAs(target, theFuncName, source, theFuncName, overwriteTarget);
2367
2402
  }
2368
- return theCache[normalizeJsName(name)];
2369
- },
2370
- kill: function (target, name) {
2371
- if (target && target[name]) {
2372
- try {
2373
- delete target[name];
2374
- }
2375
- catch (e) {
2376
- }
2403
+ });
2404
+ }
2405
+ return target;
2406
+ }
2407
+ function createClassFromInterface(defaults) {
2408
+ return /** @class */ (function () {
2409
+ function class_1() {
2410
+ var _this = this;
2411
+ if (defaults) {
2412
+ objForEachKey(defaults, function (field, value) {
2413
+ _this[field] = value;
2414
+ });
2377
2415
  }
2378
2416
  }
2379
- };
2380
- return data;
2417
+ return class_1;
2418
+ }());
2381
2419
  }
2382
-
2383
- function _isConfigDefaults(value) {
2384
- return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
2420
+ function optimizeObject(theObject) {
2421
+ if (theObject && objAssign) {
2422
+ theObject = ObjClass(objAssign({}, theObject));
2423
+ }
2424
+ return theObject;
2385
2425
  }
2386
- function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
2387
- var defValue;
2388
- var isDefaultValid = cfgDefaults.dfVal || isDefined;
2389
- if (theConfig && cfgDefaults.fb) {
2390
- var fallbacks = cfgDefaults.fb;
2391
- if (!isArray(fallbacks)) {
2392
- fallbacks = [fallbacks];
2393
- }
2394
- for (var lp = 0; lp < fallbacks[_DYN_LENGTH ]; lp++) {
2395
- var fallback = fallbacks[lp];
2396
- var fbValue = theConfig[fallback];
2397
- if (isDefaultValid(fbValue)) {
2398
- defValue = fbValue;
2426
+ function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
2427
+ var theArgs = arguments;
2428
+ var extended = theArgs[0] || {};
2429
+ var argLen = theArgs[_DYN_LENGTH ];
2430
+ var deep = false;
2431
+ var idx = 1;
2432
+ if (argLen > 0 && isBoolean(extended)) {
2433
+ deep = extended;
2434
+ extended = theArgs[idx] || {};
2435
+ idx++;
2436
+ }
2437
+ if (!isObject(extended)) {
2438
+ extended = {};
2439
+ }
2440
+ for (; idx < argLen; idx++) {
2441
+ var arg = theArgs[idx];
2442
+ var isArgArray = isArray(arg);
2443
+ var isArgObj = isObject(arg);
2444
+ for (var prop in arg) {
2445
+ var propOk = (isArgArray && (prop in arg)) || (isArgObj && objHasOwn(arg, prop));
2446
+ if (!propOk) {
2447
+ continue;
2399
2448
  }
2400
- else if (dynamicHandler) {
2401
- fbValue = dynamicHandler.cfg[fallback];
2402
- if (isDefaultValid(fbValue)) {
2403
- defValue = fbValue;
2449
+ var newValue = arg[prop];
2450
+ var isNewArray = void 0;
2451
+ if (deep && newValue && ((isNewArray = isArray(newValue)) || isPlainObject(newValue))) {
2452
+ var clone = extended[prop];
2453
+ if (isNewArray) {
2454
+ if (!isArray(clone)) {
2455
+ clone = [];
2456
+ }
2404
2457
  }
2405
- dynamicHandler.set(dynamicHandler.cfg, asString(fallback), fbValue);
2458
+ else if (!isPlainObject(clone)) {
2459
+ clone = {};
2460
+ }
2461
+ newValue = objExtend(deep, clone, newValue);
2406
2462
  }
2407
- if (isDefaultValid(defValue)) {
2408
- break;
2463
+ if (newValue !== undefined) {
2464
+ extended[prop] = newValue;
2409
2465
  }
2410
2466
  }
2411
2467
  }
2412
- if (!isDefaultValid(defValue) && isDefaultValid(cfgDefaults.v)) {
2413
- defValue = cfgDefaults.v;
2468
+ return extended;
2469
+ }
2470
+ function isFeatureEnabled(feature, cfg) {
2471
+ var rlt = false;
2472
+ var ft = cfg && cfg.featureOptIn && cfg.featureOptIn[feature];
2473
+ if (feature && ft) {
2474
+ var mode = ft.mode;
2475
+ rlt = (mode == 3 ) || (mode == 1 );
2414
2476
  }
2415
- return defValue;
2477
+ return rlt;
2416
2478
  }
2417
- function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
2418
- var theValue = cfgDefaults;
2419
- if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
2420
- theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
2479
+ function getResponseText(xhr) {
2480
+ try {
2481
+ return xhr.responseText;
2421
2482
  }
2422
- if (theValue) {
2423
- if (_isConfigDefaults(theValue)) {
2424
- theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
2425
- }
2426
- var newValue_1;
2427
- if (isArray(theValue)) {
2428
- newValue_1 = [];
2429
- newValue_1[_DYN_LENGTH ] = theValue[_DYN_LENGTH ];
2483
+ catch (e) {
2484
+ }
2485
+ return null;
2486
+ }
2487
+ function formatErrorMessageXdr(xdr, message) {
2488
+ if (xdr) {
2489
+ return "XDomainRequest,Response:" + getResponseText(xdr) || "";
2490
+ }
2491
+ return message;
2492
+ }
2493
+ function formatErrorMessageXhr(xhr, message) {
2494
+ if (xhr) {
2495
+ return "XMLHttpRequest,Status:" + xhr[_DYN_STATUS ] + ",Response:" + getResponseText(xhr) || xhr.response || "";
2496
+ }
2497
+ return message;
2498
+ }
2499
+ function prependTransports(theTransports, newTransports) {
2500
+ if (newTransports) {
2501
+ if (isNumber(newTransports)) {
2502
+ theTransports = [newTransports].concat(theTransports);
2430
2503
  }
2431
- else if (isPlainObject(theValue)) {
2432
- newValue_1 = {};
2504
+ else if (isArray(newTransports)) {
2505
+ theTransports = newTransports.concat(theTransports);
2433
2506
  }
2434
- if (newValue_1) {
2435
- objForEachKey(theValue, function (key, value) {
2436
- if (value && _isConfigDefaults(value)) {
2437
- value = _resolveDefaultValue(dynamicHandler, theConfig, value);
2438
- }
2439
- newValue_1[key] = value;
2440
- });
2441
- theValue = newValue_1;
2507
+ }
2508
+ return theTransports;
2509
+ }
2510
+ function parseResponse(response, diagLog) {
2511
+ try {
2512
+ if (response && response !== "") {
2513
+ var result = getJSON().parse(response);
2514
+ if (result && result[_DYN_ITEMS_RECEIVED ] && result[_DYN_ITEMS_RECEIVED ] >= result.itemsAccepted &&
2515
+ result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH ]) {
2516
+ return result;
2517
+ }
2442
2518
  }
2443
2519
  }
2444
- return theValue;
2520
+ catch (e) {
2521
+ _throwInternal(diagLog, 1 , 43 , "Cannot parse the response. " + getExceptionName(e), {
2522
+ response: response
2523
+ });
2524
+ }
2525
+ return null;
2445
2526
  }
2446
- function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
2447
- var isValid;
2448
- var setFn;
2449
- var defValue;
2450
- var cfgDefaults = defaultValue;
2451
- var mergeDf;
2452
- var reference;
2453
- var readOnly;
2454
- var blkDynamicValue;
2455
- if (_isConfigDefaults(cfgDefaults)) {
2456
- isValid = cfgDefaults.isVal;
2457
- setFn = cfgDefaults.set;
2458
- readOnly = cfgDefaults[_DYN_RD_ONLY ];
2459
- blkDynamicValue = cfgDefaults[_DYN_BLK_VAL ];
2460
- mergeDf = cfgDefaults.mrg;
2461
- reference = cfgDefaults.ref;
2462
- if (!reference && isUndefined(reference)) {
2463
- reference = !!mergeDf;
2527
+ var strDisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation";
2528
+ var strWithCredentials = "withCredentials";
2529
+ var strTimeout = "timeout";
2530
+ function openXhr(method, urlString, withCredentials, disabled, isSync, timeout) {
2531
+ if (disabled === void 0) { disabled = false; }
2532
+ if (isSync === void 0) { isSync = false; }
2533
+ function _wrapSetXhrProp(xhr, prop, value) {
2534
+ try {
2535
+ xhr[prop] = value;
2536
+ }
2537
+ catch (e) {
2464
2538
  }
2465
- defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
2466
2539
  }
2467
- else {
2468
- defValue = defaultValue;
2540
+ var xhr = new XMLHttpRequest();
2541
+ if (disabled) {
2542
+ _wrapSetXhrProp(xhr, strDisabledPropertyName, disabled);
2469
2543
  }
2470
- if (blkDynamicValue) {
2544
+ if (withCredentials) {
2545
+ _wrapSetXhrProp(xhr, strWithCredentials, withCredentials);
2546
+ }
2547
+ xhr.open(method, urlString, !isSync);
2548
+ if (withCredentials) {
2549
+ _wrapSetXhrProp(xhr, strWithCredentials, withCredentials);
2550
+ }
2551
+ if (!isSync && timeout) {
2552
+ _wrapSetXhrProp(xhr, strTimeout, timeout);
2553
+ }
2554
+ return xhr;
2555
+ }
2556
+ function convertAllHeadersToMap(headersString) {
2557
+ var headers = {};
2558
+ if (isString(headersString)) {
2559
+ var headersArray = strTrim(headersString)[_DYN_SPLIT ](/[\r\n]+/);
2560
+ arrForEach(headersArray, function (headerEntry) {
2561
+ if (headerEntry) {
2562
+ var idx = headerEntry.indexOf(": ");
2563
+ if (idx !== -1) {
2564
+ var header = strTrim(headerEntry.substring(0, idx))[_DYN_TO_LOWER_CASE ]();
2565
+ var value = strTrim(headerEntry.substring(idx + 1));
2566
+ headers[header] = value;
2567
+ }
2568
+ else {
2569
+ headers[strTrim(headerEntry)] = 1;
2570
+ }
2571
+ }
2572
+ });
2573
+ }
2574
+ return headers;
2575
+ }
2576
+ function _appendHeader(theHeaders, xhr, name) {
2577
+ if (!theHeaders[name] && xhr && xhr[_DYN_GET_RESPONSE_HEADER ]) {
2578
+ var value = xhr[_DYN_GET_RESPONSE_HEADER ](name);
2579
+ if (value) {
2580
+ theHeaders[name] = strTrim(value);
2581
+ }
2582
+ }
2583
+ return theHeaders;
2584
+ }
2585
+ var STR_KILL_DURATION_HEADER = "kill-duration";
2586
+ var STR_KILL_DURATION_SECONDS_HEADER = "kill-duration-seconds";
2587
+ var STR_TIME_DELTA_HEADER = "time-delta-millis";
2588
+ function _getAllResponseHeaders(xhr, isOneDs) {
2589
+ var theHeaders = {};
2590
+ if (!xhr[_DYN_GET_ALL_RESPONSE_HEA5 ]) {
2591
+ if (!!isOneDs) {
2592
+ theHeaders = _appendHeader(theHeaders, xhr, STR_TIME_DELTA_HEADER);
2593
+ theHeaders = _appendHeader(theHeaders, xhr, STR_KILL_DURATION_HEADER);
2594
+ theHeaders = _appendHeader(theHeaders, xhr, STR_KILL_DURATION_SECONDS_HEADER);
2595
+ }
2596
+ }
2597
+ else {
2598
+ theHeaders = convertAllHeadersToMap(xhr[_DYN_GET_ALL_RESPONSE_HEA5 ]());
2599
+ }
2600
+ return theHeaders;
2601
+ }
2602
+
2603
+ var UInt32Mask = 0x100000000;
2604
+ var MaxUInt32 = 0xffffffff;
2605
+ var SEED1 = 123456789;
2606
+ var SEED2 = 987654321;
2607
+ var _mwcSeeded = false;
2608
+ var _mwcW = SEED1;
2609
+ var _mwcZ = SEED2;
2610
+ function _mwcSeed(seedValue) {
2611
+ if (seedValue < 0) {
2612
+ seedValue >>>= 0;
2613
+ }
2614
+ _mwcW = (SEED1 + seedValue) & MaxUInt32;
2615
+ _mwcZ = (SEED2 - seedValue) & MaxUInt32;
2616
+ _mwcSeeded = true;
2617
+ }
2618
+ function _autoSeedMwc() {
2619
+ try {
2620
+ var now = utcNow() & 0x7fffffff;
2621
+ _mwcSeed(((Math.random() * UInt32Mask) ^ now) + now);
2622
+ }
2623
+ catch (e) {
2624
+ }
2625
+ }
2626
+ function randomValue(maxValue) {
2627
+ if (maxValue > 0) {
2628
+ return Math.floor((random32() / MaxUInt32) * (maxValue + 1)) >>> 0;
2629
+ }
2630
+ return 0;
2631
+ }
2632
+ function random32(signed) {
2633
+ var value = 0;
2634
+ var c = getCrypto() || getMsCrypto();
2635
+ if (c && c.getRandomValues) {
2636
+ value = c.getRandomValues(new Uint32Array(1))[0] & MaxUInt32;
2637
+ }
2638
+ if (value === 0 && isIE()) {
2639
+ if (!_mwcSeeded) {
2640
+ _autoSeedMwc();
2641
+ }
2642
+ value = mwcRandom32() & MaxUInt32;
2643
+ }
2644
+ if (value === 0) {
2645
+ value = Math.floor((UInt32Mask * Math.random()) | 0);
2646
+ }
2647
+ if (!signed) {
2648
+ value >>>= 0;
2649
+ }
2650
+ return value;
2651
+ }
2652
+ function mwcRandomSeed(value) {
2653
+ if (!value) {
2654
+ _autoSeedMwc();
2655
+ }
2656
+ else {
2657
+ _mwcSeed(value);
2658
+ }
2659
+ }
2660
+ function mwcRandom32(signed) {
2661
+ _mwcZ = (36969 * (_mwcZ & 0xFFFF) + (_mwcZ >> 16)) & MaxUInt32;
2662
+ _mwcW = (18000 * (_mwcW & 0xFFFF) + (_mwcW >> 16)) & MaxUInt32;
2663
+ var value = (((_mwcZ << 16) + (_mwcW & 0xFFFF)) >>> 0) & MaxUInt32 | 0;
2664
+ if (!signed) {
2665
+ value >>>= 0;
2666
+ }
2667
+ return value;
2668
+ }
2669
+ function newId(maxLength) {
2670
+ if (maxLength === void 0) { maxLength = 22; }
2671
+ var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
2672
+ var number = random32() >>> 0;
2673
+ var chars = 0;
2674
+ var result = STR_EMPTY$1;
2675
+ while (result[_DYN_LENGTH ] < maxLength) {
2676
+ chars++;
2677
+ result += base64chars.charAt(number & 0x3F);
2678
+ number >>>= 6;
2679
+ if (chars === 5) {
2680
+ number = (((random32() << 2) & 0xFFFFFFFF) | (number & 0x03)) >>> 0;
2681
+ chars = 0;
2682
+ }
2683
+ }
2684
+ return result;
2685
+ }
2686
+
2687
+ var version = "3.0.5";
2688
+ var instanceName = "." + newId(6);
2689
+ var _dataUid = 0;
2690
+ function _canAcceptData(target) {
2691
+ return target[_DYN_NODE_TYPE ] === 1 || target[_DYN_NODE_TYPE ] === 9 || !(+target[_DYN_NODE_TYPE ]);
2692
+ }
2693
+ function _getCache(data, target) {
2694
+ var theCache = target[data.id];
2695
+ if (!theCache) {
2696
+ theCache = {};
2697
+ try {
2698
+ if (_canAcceptData(target)) {
2699
+ objDefine(target, data.id, {
2700
+ e: false,
2701
+ v: theCache
2702
+ });
2703
+ }
2704
+ }
2705
+ catch (e) {
2706
+ }
2707
+ }
2708
+ return theCache;
2709
+ }
2710
+ function createUniqueNamespace(name, includeVersion) {
2711
+ if (includeVersion === void 0) { includeVersion = false; }
2712
+ return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY$1) + instanceName);
2713
+ }
2714
+ function createElmNodeData(name) {
2715
+ var data = {
2716
+ id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY$1) + "." + version),
2717
+ accept: function (target) {
2718
+ return _canAcceptData(target);
2719
+ },
2720
+ get: function (target, name, defValue, addDefault) {
2721
+ var theCache = target[data.id];
2722
+ if (!theCache) {
2723
+ if (addDefault) {
2724
+ theCache = _getCache(data, target);
2725
+ theCache[normalizeJsName(name)] = defValue;
2726
+ }
2727
+ return defValue;
2728
+ }
2729
+ return theCache[normalizeJsName(name)];
2730
+ },
2731
+ kill: function (target, name) {
2732
+ if (target && target[name]) {
2733
+ try {
2734
+ delete target[name];
2735
+ }
2736
+ catch (e) {
2737
+ }
2738
+ }
2739
+ }
2740
+ };
2741
+ return data;
2742
+ }
2743
+
2744
+ function _isConfigDefaults(value) {
2745
+ return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
2746
+ }
2747
+ function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
2748
+ var defValue;
2749
+ var isDefaultValid = cfgDefaults.dfVal || isDefined;
2750
+ if (theConfig && cfgDefaults.fb) {
2751
+ var fallbacks = cfgDefaults.fb;
2752
+ if (!isArray(fallbacks)) {
2753
+ fallbacks = [fallbacks];
2754
+ }
2755
+ for (var lp = 0; lp < fallbacks[_DYN_LENGTH ]; lp++) {
2756
+ var fallback = fallbacks[lp];
2757
+ var fbValue = theConfig[fallback];
2758
+ if (isDefaultValid(fbValue)) {
2759
+ defValue = fbValue;
2760
+ }
2761
+ else if (dynamicHandler) {
2762
+ fbValue = dynamicHandler.cfg[fallback];
2763
+ if (isDefaultValid(fbValue)) {
2764
+ defValue = fbValue;
2765
+ }
2766
+ dynamicHandler.set(dynamicHandler.cfg, asString(fallback), fbValue);
2767
+ }
2768
+ if (isDefaultValid(defValue)) {
2769
+ break;
2770
+ }
2771
+ }
2772
+ }
2773
+ if (!isDefaultValid(defValue) && isDefaultValid(cfgDefaults.v)) {
2774
+ defValue = cfgDefaults.v;
2775
+ }
2776
+ return defValue;
2777
+ }
2778
+ function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
2779
+ var theValue = cfgDefaults;
2780
+ if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
2781
+ theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
2782
+ }
2783
+ if (theValue) {
2784
+ if (_isConfigDefaults(theValue)) {
2785
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
2786
+ }
2787
+ var newValue_1;
2788
+ if (isArray(theValue)) {
2789
+ newValue_1 = [];
2790
+ newValue_1[_DYN_LENGTH ] = theValue[_DYN_LENGTH ];
2791
+ }
2792
+ else if (isPlainObject(theValue)) {
2793
+ newValue_1 = {};
2794
+ }
2795
+ if (newValue_1) {
2796
+ objForEachKey(theValue, function (key, value) {
2797
+ if (value && _isConfigDefaults(value)) {
2798
+ value = _resolveDefaultValue(dynamicHandler, theConfig, value);
2799
+ }
2800
+ newValue_1[key] = value;
2801
+ });
2802
+ theValue = newValue_1;
2803
+ }
2804
+ }
2805
+ return theValue;
2806
+ }
2807
+ function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
2808
+ var isValid;
2809
+ var setFn;
2810
+ var defValue;
2811
+ var cfgDefaults = defaultValue;
2812
+ var mergeDf;
2813
+ var reference;
2814
+ var readOnly;
2815
+ var blkDynamicValue;
2816
+ if (_isConfigDefaults(cfgDefaults)) {
2817
+ isValid = cfgDefaults.isVal;
2818
+ setFn = cfgDefaults.set;
2819
+ readOnly = cfgDefaults[_DYN_RD_ONLY ];
2820
+ blkDynamicValue = cfgDefaults[_DYN_BLK_VAL ];
2821
+ mergeDf = cfgDefaults.mrg;
2822
+ reference = cfgDefaults.ref;
2823
+ if (!reference && isUndefined(reference)) {
2824
+ reference = !!mergeDf;
2825
+ }
2826
+ defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
2827
+ }
2828
+ else {
2829
+ defValue = defaultValue;
2830
+ }
2831
+ if (blkDynamicValue) {
2471
2832
  dynamicHandler[_DYN_BLK_VAL ](theConfig, name);
2472
2833
  }
2473
2834
  var theValue;
@@ -2965,348 +3326,122 @@ function _createDynamicHandler(logger, target, inPlace) {
2965
3326
  _a.ref = _ref,
2966
3327
  _a[_DYN_RD_ONLY ] = _rdOnly,
2967
3328
  _a[_DYN_BLK_VAL ] = _blkPropValue,
2968
- _a._block = _block,
2969
- _a);
2970
- objDefine(cfgHandler, "uid", {
2971
- c: false,
2972
- e: false,
2973
- w: false,
2974
- v: uid
2975
- });
2976
- theState = _createState(cfgHandler);
2977
- _makeDynamicObject(theState, newTarget, "config", "Creating");
2978
- return cfgHandler;
2979
- }
2980
- function _logInvalidAccess(logger, message) {
2981
- if (logger) {
2982
- logger[_DYN_WARN_TO_CONSOLE ](message);
2983
- logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
2984
- }
2985
- else {
2986
- throwInvalidAccess(message);
2987
- }
2988
- }
2989
- function createDynamicConfig(config, defaultConfig, logger, inPlace) {
2990
- var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
2991
- if (defaultConfig) {
2992
- dynamicHandler[_DYN_SET_DF ](dynamicHandler.cfg, defaultConfig);
2993
- }
2994
- return dynamicHandler;
2995
- }
2996
- function onConfigChange(config, configHandler, logger) {
2997
- var handler = config[CFG_HANDLER_LINK] || config;
2998
- if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
2999
- return handler[_DYN_WATCH ](configHandler);
3000
- }
3001
- _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
3002
- return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
3003
- }
3004
-
3005
- function runTargetUnload(target, isAsync) {
3006
- if (target && target[_DYN_UNLOAD ]) {
3007
- return target[_DYN_UNLOAD ](isAsync);
3008
- }
3009
- }
3010
- function doUnloadAll(targets, isAsync, done) {
3011
- var result;
3012
- if (!done) {
3013
- result = createPromise(function (resolved) {
3014
- done = resolved;
3015
- });
3016
- }
3017
- if (targets && getLength(targets) > 0) {
3018
- doAwaitResponse(runTargetUnload(targets[0], isAsync), function () {
3019
- doUnloadAll(arrSlice(targets, 1), isAsync, done);
3020
- });
3021
- }
3022
- else {
3023
- done();
3024
- }
3025
- return result;
3026
- }
3027
-
3028
- var ChannelControllerPriority = 500;
3029
-
3030
- function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
3031
- if (!theValue && isNullOrUndefined(theValue)) {
3032
- return defaultValue;
3033
- }
3034
- if (isBoolean(theValue)) {
3035
- return theValue;
3036
- }
3037
- return asString(theValue)[_DYN_TO_LOWER_CASE ]() === "true";
3038
- }
3039
- function cfgDfMerge(defaultValue) {
3040
- return {
3041
- mrg: true,
3042
- v: defaultValue
3043
- };
3044
- }
3045
- function cfgDfSet(setter, defaultValue) {
3046
- return {
3047
- set: setter,
3048
- v: defaultValue
3049
- };
3050
- }
3051
- function cfgDfValidate(validator, defaultValue, fallBackName) {
3052
- return {
3053
- fb: fallBackName,
3054
- isVal: validator,
3055
- v: defaultValue
3056
- };
3057
- }
3058
- function cfgDfBoolean(defaultValue, fallBackName) {
3059
- return {
3060
- fb: fallBackName,
3061
- set: _stringToBoolOrDefault,
3062
- v: !!defaultValue
3063
- };
3064
- }
3065
- function cfgDfFunc(defaultValue) {
3066
- return {
3067
- isVal: isFunction,
3068
- v: defaultValue || null
3069
- };
3070
- }
3071
- function cfgDfString(defaultValue) {
3072
- return {
3073
- isVal: isString,
3074
- v: asString(defaultValue || STR_EMPTY)
3075
- };
3076
- }
3077
- function cfgDfBlockPropValue(defaultValue) {
3078
- var _a;
3079
- return _a = {},
3080
- _a[_DYN_BLK_VAL ] = true,
3081
- _a.v = defaultValue,
3082
- _a;
3083
- }
3084
-
3085
- var listenerFuncs = [STR_EVENTS_SENT, STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_PERF_EVENT];
3086
- var _aiNamespace = null;
3087
- var _debugListener;
3088
- function _listenerProxyFunc(name, config) {
3089
- return function () {
3090
- var args = arguments;
3091
- var dbgExt = getDebugExt(config);
3092
- if (dbgExt) {
3093
- var listener = dbgExt.listener;
3094
- if (listener && listener[name]) {
3095
- listener[name][_DYN_APPLY ](listener, args);
3096
- }
3097
- }
3098
- };
3099
- }
3100
- function _getExtensionNamespace() {
3101
- var target = getInst("Microsoft");
3102
- if (target) {
3103
- _aiNamespace = target["ApplicationInsights"];
3104
- }
3105
- return _aiNamespace;
3106
- }
3107
- function getDebugExt(config) {
3108
- var ns = _aiNamespace;
3109
- if (!ns && config.disableDbgExt !== true) {
3110
- ns = _aiNamespace || _getExtensionNamespace();
3111
- }
3112
- return ns ? ns["ChromeDbgExt"] : null;
3113
- }
3114
- function getDebugListener(config) {
3115
- if (!_debugListener) {
3116
- _debugListener = {};
3117
- for (var lp = 0; lp < listenerFuncs[_DYN_LENGTH ]; lp++) {
3118
- _debugListener[listenerFuncs[lp]] = _listenerProxyFunc(listenerFuncs[lp], config);
3119
- }
3120
- }
3121
- return _debugListener;
3122
- }
3123
-
3124
- var _a$3;
3125
- var STR_WARN_TO_CONSOLE = "warnToConsole";
3126
- var AiNonUserActionablePrefix = "AI (Internal): ";
3127
- var AiUserActionablePrefix = "AI: ";
3128
- var AIInternalMessagePrefix = "AITR_";
3129
- var defaultValues$2 = {
3130
- loggingLevelConsole: 0,
3131
- loggingLevelTelemetry: 1,
3132
- maxMessageLimit: 25,
3133
- enableDebug: false
3134
- };
3135
- var _logFuncs = (_a$3 = {},
3136
- _a$3[0 ] = null,
3137
- _a$3[1 ] = "errorToConsole",
3138
- _a$3[2 ] = STR_WARN_TO_CONSOLE,
3139
- _a$3[3 ] = "debugToConsole",
3140
- _a$3);
3141
- function _sanitizeDiagnosticText(text) {
3142
- if (text) {
3143
- return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
3144
- }
3145
- return STR_EMPTY;
3146
- }
3147
- function _logToConsole(func, message) {
3148
- var theConsole = getConsole();
3149
- if (!!theConsole) {
3150
- var logFunc = "log";
3151
- if (theConsole[func]) {
3152
- logFunc = func;
3153
- }
3154
- if (isFunction(theConsole[logFunc])) {
3155
- theConsole[logFunc](message);
3156
- }
3157
- }
3158
- }
3159
- var _InternalLogMessage = /** @class */ (function () {
3160
- function _InternalLogMessage(msgId, msg, isUserAct, properties) {
3161
- if (isUserAct === void 0) { isUserAct = false; }
3162
- var _self = this;
3163
- _self[_DYN_MESSAGE_ID ] = msgId;
3164
- _self[_DYN_MESSAGE ] =
3165
- (isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
3166
- msgId;
3167
- var strProps = STR_EMPTY;
3168
- if (hasJSON()) {
3169
- strProps = getJSON().stringify(properties);
3170
- }
3171
- var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
3172
- (properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
3173
- _self[_DYN_MESSAGE ] += diagnosticText;
3174
- }
3175
- _InternalLogMessage.dataType = "MessageData";
3176
- return _InternalLogMessage;
3177
- }());
3178
- function safeGetLogger(core, config) {
3179
- return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
3180
- }
3181
- var DiagnosticLogger = /** @class */ (function () {
3182
- function DiagnosticLogger(config) {
3183
- this.identifier = "DiagnosticLogger";
3184
- this.queue = [];
3185
- var _messageCount = 0;
3186
- var _messageLogged = {};
3187
- var _loggingLevelConsole;
3188
- var _loggingLevelTelemetry;
3189
- var _maxInternalMessageLimit;
3190
- var _enableDebug;
3191
- var _unloadHandler;
3192
- dynamicProto(DiagnosticLogger, this, function (_self) {
3193
- _unloadHandler = _setDefaultsFromConfig(config || {});
3194
- _self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
3195
- _self[_DYN_THROW_INTERNAL ] = function (severity, msgId, msg, properties, isUserAct) {
3196
- if (isUserAct === void 0) { isUserAct = false; }
3197
- var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
3198
- if (_enableDebug) {
3199
- throw dumpObj(message);
3200
- }
3201
- else {
3202
- var logFunc = _logFuncs[severity] || STR_WARN_TO_CONSOLE;
3203
- if (!isUndefined(message[_DYN_MESSAGE ])) {
3204
- if (isUserAct) {
3205
- var messageKey = +message[_DYN_MESSAGE_ID ];
3206
- if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
3207
- _self[logFunc](message[_DYN_MESSAGE ]);
3208
- _messageLogged[messageKey] = true;
3209
- }
3210
- }
3211
- else {
3212
- if (_loggingLevelConsole >= severity) {
3213
- _self[logFunc](message[_DYN_MESSAGE ]);
3214
- }
3215
- }
3216
- _logInternalMessage(severity, message);
3217
- }
3218
- else {
3219
- _debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
3220
- }
3221
- }
3222
- };
3223
- _self.debugToConsole = function (message) {
3224
- _logToConsole("debug", message);
3225
- _debugExtMsg("warning", message);
3226
- };
3227
- _self[_DYN_WARN_TO_CONSOLE ] = function (message) {
3228
- _logToConsole("warn", message);
3229
- _debugExtMsg("warning", message);
3230
- };
3231
- _self.errorToConsole = function (message) {
3232
- _logToConsole("error", message);
3233
- _debugExtMsg("error", message);
3234
- };
3235
- _self.resetInternalMessageCount = function () {
3236
- _messageCount = 0;
3237
- _messageLogged = {};
3238
- };
3239
- _self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
3240
- _self[_DYN_UNLOAD ] = function (isAsync) {
3241
- _unloadHandler && _unloadHandler.rm();
3242
- _unloadHandler = null;
3243
- };
3244
- function _logInternalMessage(severity, message) {
3245
- if (_areInternalMessagesThrottled()) {
3246
- return;
3247
- }
3248
- var logMessage = true;
3249
- var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
3250
- if (_messageLogged[messageKey]) {
3251
- logMessage = false;
3252
- }
3253
- else {
3254
- _messageLogged[messageKey] = true;
3255
- }
3256
- if (logMessage) {
3257
- if (severity <= _loggingLevelTelemetry) {
3258
- _self.queue[_DYN_PUSH ](message);
3259
- _messageCount++;
3260
- _debugExtMsg((severity === 1 ? "error" : "warn"), message);
3261
- }
3262
- if (_messageCount === _maxInternalMessageLimit) {
3263
- var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
3264
- var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
3265
- _self.queue[_DYN_PUSH ](throttleMessage);
3266
- if (severity === 1 ) {
3267
- _self.errorToConsole(throttleLimitMessage);
3268
- }
3269
- else {
3270
- _self[_DYN_WARN_TO_CONSOLE ](throttleLimitMessage);
3271
- }
3272
- }
3273
- }
3274
- }
3275
- function _setDefaultsFromConfig(config) {
3276
- return onConfigChange(createDynamicConfig(config, defaultValues$2, _self).cfg, function (details) {
3277
- var config = details.cfg;
3278
- _loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 ];
3279
- _loggingLevelTelemetry = config.loggingLevelTelemetry;
3280
- _maxInternalMessageLimit = config.maxMessageLimit;
3281
- _enableDebug = config.enableDebug;
3282
- });
3283
- }
3284
- function _areInternalMessagesThrottled() {
3285
- return _messageCount >= _maxInternalMessageLimit;
3286
- }
3287
- function _debugExtMsg(name, data) {
3288
- var dbgExt = getDebugExt(config || {});
3289
- if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
3290
- dbgExt[_DYN_DIAG_LOG ](name, data);
3291
- }
3292
- }
3329
+ _a._block = _block,
3330
+ _a);
3331
+ objDefine(cfgHandler, "uid", {
3332
+ c: false,
3333
+ e: false,
3334
+ w: false,
3335
+ v: uid
3336
+ });
3337
+ theState = _createState(cfgHandler);
3338
+ _makeDynamicObject(theState, newTarget, "config", "Creating");
3339
+ return cfgHandler;
3340
+ }
3341
+ function _logInvalidAccess(logger, message) {
3342
+ if (logger) {
3343
+ logger[_DYN_WARN_TO_CONSOLE ](message);
3344
+ logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
3345
+ }
3346
+ else {
3347
+ throwInvalidAccess(message);
3348
+ }
3349
+ }
3350
+ function createDynamicConfig(config, defaultConfig, logger, inPlace) {
3351
+ var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
3352
+ if (defaultConfig) {
3353
+ dynamicHandler[_DYN_SET_DF ](dynamicHandler.cfg, defaultConfig);
3354
+ }
3355
+ return dynamicHandler;
3356
+ }
3357
+ function onConfigChange(config, configHandler, logger) {
3358
+ var handler = config[CFG_HANDLER_LINK] || config;
3359
+ if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
3360
+ return handler[_DYN_WATCH ](configHandler);
3361
+ }
3362
+ _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
3363
+ return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
3364
+ }
3365
+
3366
+ function runTargetUnload(target, isAsync) {
3367
+ if (target && target[_DYN_UNLOAD ]) {
3368
+ return target[_DYN_UNLOAD ](isAsync);
3369
+ }
3370
+ }
3371
+ function doUnloadAll(targets, isAsync, done) {
3372
+ var result;
3373
+ if (!done) {
3374
+ result = createPromise(function (resolved) {
3375
+ done = resolved;
3293
3376
  });
3294
3377
  }
3295
- DiagnosticLogger.__ieDyn=1;
3296
- return DiagnosticLogger;
3297
- }());
3298
- function _getLogger(logger) {
3299
- return (logger || new DiagnosticLogger());
3378
+ if (targets && getLength(targets) > 0) {
3379
+ doAwaitResponse(runTargetUnload(targets[0], isAsync), function () {
3380
+ doUnloadAll(arrSlice(targets, 1), isAsync, done);
3381
+ });
3382
+ }
3383
+ else {
3384
+ done();
3385
+ }
3386
+ return result;
3300
3387
  }
3301
- function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
3302
- if (isUserAct === void 0) { isUserAct = false; }
3303
- _getLogger(logger)[_DYN_THROW_INTERNAL ](severity, msgId, msg, properties, isUserAct);
3388
+
3389
+ var ChannelControllerPriority = 500;
3390
+ var DisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation";
3391
+
3392
+ function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
3393
+ if (!theValue && isNullOrUndefined(theValue)) {
3394
+ return defaultValue;
3395
+ }
3396
+ if (isBoolean(theValue)) {
3397
+ return theValue;
3398
+ }
3399
+ return asString(theValue)[_DYN_TO_LOWER_CASE ]() === "true";
3304
3400
  }
3305
- function _warnToConsole(logger, message) {
3306
- _getLogger(logger)[_DYN_WARN_TO_CONSOLE ](message);
3401
+ function cfgDfMerge(defaultValue) {
3402
+ return {
3403
+ mrg: true,
3404
+ v: defaultValue
3405
+ };
3307
3406
  }
3308
- function _logInternalMessage(logger, severity, message) {
3309
- _getLogger(logger)[_DYN_LOG_INTERNAL_MESSAGE ](severity, message);
3407
+ function cfgDfSet(setter, defaultValue) {
3408
+ return {
3409
+ set: setter,
3410
+ v: defaultValue
3411
+ };
3412
+ }
3413
+ function cfgDfValidate(validator, defaultValue, fallBackName) {
3414
+ return {
3415
+ fb: fallBackName,
3416
+ isVal: validator,
3417
+ v: defaultValue
3418
+ };
3419
+ }
3420
+ function cfgDfBoolean(defaultValue, fallBackName) {
3421
+ return {
3422
+ fb: fallBackName,
3423
+ set: _stringToBoolOrDefault,
3424
+ v: !!defaultValue
3425
+ };
3426
+ }
3427
+ function cfgDfFunc(defaultValue) {
3428
+ return {
3429
+ isVal: isFunction,
3430
+ v: defaultValue || null
3431
+ };
3432
+ }
3433
+ function cfgDfString(defaultValue) {
3434
+ return {
3435
+ isVal: isString,
3436
+ v: asString(defaultValue || STR_EMPTY$1)
3437
+ };
3438
+ }
3439
+ function cfgDfBlockPropValue(defaultValue) {
3440
+ var _a;
3441
+ return _a = {},
3442
+ _a[_DYN_BLK_VAL ] = true,
3443
+ _a.v = defaultValue,
3444
+ _a;
3310
3445
  }
3311
3446
 
3312
3447
  var _a$2, _b;
@@ -3438,7 +3573,7 @@ function createCookieMgr(rootConfig, logger) {
3438
3573
  var result = false;
3439
3574
  if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {
3440
3575
  var values = {};
3441
- var theValue = strTrim(value || STR_EMPTY);
3576
+ var theValue = strTrim(value || STR_EMPTY$1);
3442
3577
  var idx = strIndexOf(theValue, ";");
3443
3578
  if (idx !== -1) {
3444
3579
  theValue = strTrim(strLeft(value, idx));
@@ -3453,15 +3588,15 @@ function createCookieMgr(rootConfig, logger) {
3453
3588
  if (expireMs > 0) {
3454
3589
  var expiry = new Date();
3455
3590
  expiry.setTime(expireMs);
3456
- setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);
3591
+ setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY$1, isTruthy);
3457
3592
  }
3458
3593
  }
3459
3594
  if (!_isIE) {
3460
- setValue(values, "max-age", STR_EMPTY + maxAgeSec, null, isUndefined);
3595
+ setValue(values, "max-age", STR_EMPTY$1 + maxAgeSec, null, isUndefined);
3461
3596
  }
3462
3597
  }
3463
3598
  var location_1 = getLocation();
3464
- if (location_1 && location_1.protocol === "https:") {
3599
+ if (location_1 && location_1[_DYN_PROTOCOL ] === "https:") {
3465
3600
  setValue(values, "secure", null, null, isUndefined);
3466
3601
  if (_allowUaSameSite === null) {
3467
3602
  _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
@@ -3477,7 +3612,7 @@ function createCookieMgr(rootConfig, logger) {
3477
3612
  return result;
3478
3613
  },
3479
3614
  get: function (name) {
3480
- var value = STR_EMPTY;
3615
+ var value = STR_EMPTY$1;
3481
3616
  if (_isMgrEnabled(cookieMgr) && !_isIgnoredCookie(cookieMgrConfig, name)) {
3482
3617
  value = _getCookieFn(name);
3483
3618
  }
@@ -3501,7 +3636,7 @@ function createCookieMgr(rootConfig, logger) {
3501
3636
  if (!isIE()) {
3502
3637
  values["max-age"] = "0";
3503
3638
  }
3504
- _delCookieFn(name, _formatCookieValue(STR_EMPTY, values));
3639
+ _delCookieFn(name, _formatCookieValue(STR_EMPTY$1, values));
3505
3640
  result = true;
3506
3641
  }
3507
3642
  return result;
@@ -3534,7 +3669,7 @@ function _extractParts(theValue) {
3534
3669
  if (theValue && theValue[_DYN_LENGTH ]) {
3535
3670
  var parts = strTrim(theValue)[_DYN_SPLIT ](";");
3536
3671
  arrForEach(parts, function (thePart) {
3537
- thePart = strTrim(thePart || STR_EMPTY);
3672
+ thePart = strTrim(thePart || STR_EMPTY$1);
3538
3673
  if (thePart) {
3539
3674
  var idx = strIndexOf(thePart, "=");
3540
3675
  if (idx === -1) {
@@ -3555,22 +3690,22 @@ function _formatDate(theDate, func) {
3555
3690
  return null;
3556
3691
  }
3557
3692
  function _formatCookieValue(value, values) {
3558
- var cookieValue = value || STR_EMPTY;
3693
+ var cookieValue = value || STR_EMPTY$1;
3559
3694
  objForEachKey(values, function (name, theValue) {
3560
- cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
3695
+ cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY$1);
3561
3696
  });
3562
3697
  return cookieValue;
3563
3698
  }
3564
3699
  function _getCookieValue(name) {
3565
- var cookieValue = STR_EMPTY;
3700
+ var cookieValue = STR_EMPTY$1;
3566
3701
  !_doc && _getDoc();
3567
3702
  if (_doc.v) {
3568
- var theCookie = _doc.v[strCookie] || STR_EMPTY;
3703
+ var theCookie = _doc.v[strCookie] || STR_EMPTY$1;
3569
3704
  if (_parsedCookieValue !== theCookie) {
3570
3705
  _cookieCache = _extractParts(theCookie);
3571
3706
  _parsedCookieValue = theCookie;
3572
3707
  }
3573
- cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);
3708
+ cookieValue = strTrim(_cookieCache[name] || STR_EMPTY$1);
3574
3709
  }
3575
3710
  return cookieValue;
3576
3711
  }
@@ -3685,7 +3820,7 @@ var NotificationManager = /** @class */ (function () {
3685
3820
  }
3686
3821
  };
3687
3822
  _self[STR_OFFLINE_SENT ] = function (batch) {
3688
- if (batch && batch.data) {
3823
+ if (batch && batch[_DYN_DATA ]) {
3689
3824
  _runListeners(_listeners, STR_OFFLINE_SENT, true, function (listener) {
3690
3825
  listener[STR_OFFLINE_SENT ](batch);
3691
3826
  });
@@ -3888,7 +4023,7 @@ function newGuid() {
3888
4023
  }
3889
4024
  function generateW3CId() {
3890
4025
  var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
3891
- var oct = STR_EMPTY, tmp;
4026
+ var oct = STR_EMPTY$1, tmp;
3892
4027
  for (var a = 0; a < 4; a++) {
3893
4028
  tmp = random32();
3894
4029
  oct +=
@@ -3965,9 +4100,9 @@ function parseTraceParent(value, selectIdx) {
3965
4100
  return null;
3966
4101
  }
3967
4102
  return _a = {
3968
- version: (match[1] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3969
- traceId: (match[2] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3970
- spanId: (match[3] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]()
4103
+ version: (match[1] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
4104
+ traceId: (match[2] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
4105
+ spanId: (match[3] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ]()
3971
4106
  },
3972
4107
  _a[_DYN_TRACE_FLAGS ] = parseInt(match[4], 16),
3973
4108
  _a;
@@ -4407,7 +4542,7 @@ function createTelemetryPluginProxy(plugin, config, core) {
4407
4542
  doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
4408
4543
  hasRunContext[chainId] = true;
4409
4544
  try {
4410
- var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
4545
+ var nextId = nextProxy ? nextProxy._id : STR_EMPTY$1;
4411
4546
  if (nextId) {
4412
4547
  hasRunContext[nextId] = false;
4413
4548
  }
@@ -5267,7 +5402,7 @@ var AppInsightsCore = /** @class */ (function () {
5267
5402
  }
5268
5403
  _pluginVersionString = _pluginVersionStringArr.join(";");
5269
5404
  }
5270
- return _pluginVersionString || STR_EMPTY;
5405
+ return _pluginVersionString || STR_EMPTY$1;
5271
5406
  }
5272
5407
  });
5273
5408
  objDefine(_self, "logger", {
@@ -5565,6 +5700,437 @@ var AppInsightsCore = /** @class */ (function () {
5565
5700
  return AppInsightsCore;
5566
5701
  }());
5567
5702
 
5703
+ var STR_EMPTY = "";
5704
+ var STR_NO_RESPONSE_BODY = "NoResponseBody";
5705
+ var _noResponseQs = "&" + STR_NO_RESPONSE_BODY + "=true";
5706
+ var STR_POST_METHOD = "POST";
5707
+ var SenderPostManager = /** @class */ (function () {
5708
+ function SenderPostManager() {
5709
+ var _syncFetchPayload = 0;
5710
+ var _enableSendPromise;
5711
+ var _isInitialized;
5712
+ var _diagLog;
5713
+ var _isOneDs;
5714
+ var _onCompleteFuncs;
5715
+ var _disableCredentials;
5716
+ var _fallbackInst;
5717
+ var _disableXhr;
5718
+ var _disableBeacon;
5719
+ var _disableBeaconSync;
5720
+ var _disableFetchKeepAlive;
5721
+ var _addNoResponse;
5722
+ var _timeoutWrapper;
5723
+ dynamicProto(SenderPostManager, this, function (_self, _base) {
5724
+ var _sendCredentials = true;
5725
+ _initDefaults();
5726
+ _self[_DYN_INITIALIZE ] = function (config, diagLog) {
5727
+ _diagLog = diagLog;
5728
+ if (_isInitialized) {
5729
+ _throwInternal(_diagLog, 1 , 28 , "Sender is already initialized");
5730
+ }
5731
+ _self.SetConfig(config);
5732
+ _isInitialized = true;
5733
+ };
5734
+ _self["_getDbgPlgTargets"] = function () {
5735
+ return [_isInitialized, _isOneDs, _disableCredentials, _enableSendPromise];
5736
+ };
5737
+ _self.SetConfig = function (config) {
5738
+ try {
5739
+ _onCompleteFuncs = config.senderOnCompleteCallBack || {};
5740
+ _disableCredentials = !!config.disableCredentials;
5741
+ _isOneDs = !!config.isOneDs;
5742
+ _enableSendPromise = !!config.enableSendPromise;
5743
+ _disableXhr = !!config.disableXhr;
5744
+ _disableBeacon = !!config.disableBeacon;
5745
+ _disableBeaconSync = !!config.disableBeaconSync;
5746
+ _timeoutWrapper = config.timeWrapper;
5747
+ _addNoResponse = !!config.addNoResponse;
5748
+ _disableFetchKeepAlive = !!config.disableFetchKeepAlive;
5749
+ _fallbackInst = { sendPOST: _xhrSender };
5750
+ if (!_isOneDs) {
5751
+ _sendCredentials = false;
5752
+ }
5753
+ if (_disableCredentials) {
5754
+ var location_1 = getLocation();
5755
+ if (location_1 && location_1.protocol && location_1.protocol[_DYN_TO_LOWER_CASE ]() === "file:") {
5756
+ _sendCredentials = false;
5757
+ }
5758
+ }
5759
+ return true;
5760
+ }
5761
+ catch (e) {
5762
+ }
5763
+ return false;
5764
+ };
5765
+ _self.getSyncFetchPayload = function () {
5766
+ return _syncFetchPayload;
5767
+ };
5768
+ _self.getSenderInst = function (transports, sync) {
5769
+ if (transports && transports[_DYN_LENGTH ]) {
5770
+ return _getSenderInterface(transports, sync);
5771
+ }
5772
+ return null;
5773
+ };
5774
+ _self.getFallbackInst = function () {
5775
+ return _fallbackInst;
5776
+ };
5777
+ _self[_DYN__DO_TEARDOWN ] = function (unloadCtx, unloadState) {
5778
+ _initDefaults();
5779
+ };
5780
+ function _onSuccess(res, onComplete) {
5781
+ _doOnComplete(onComplete, 200, {}, res);
5782
+ }
5783
+ function _onError(message, onComplete) {
5784
+ _throwInternal(_diagLog, 2 , 26 , "Failed to send telemetry.", { message: message });
5785
+ _doOnComplete(onComplete, 400, {});
5786
+ }
5787
+ function _onNoPayloadUrl(onComplete) {
5788
+ _onError("No endpoint url is provided for the batch", onComplete);
5789
+ }
5790
+ function _getSenderInterface(transports, syncSupport) {
5791
+ var _a;
5792
+ var transportType = 0 ;
5793
+ var sendPostFunc = null;
5794
+ var lp = 0;
5795
+ while (sendPostFunc == null && lp < transports[_DYN_LENGTH ]) {
5796
+ transportType = transports[lp];
5797
+ if (!_disableXhr && transportType === 1 ) {
5798
+ if (useXDomainRequest()) {
5799
+ sendPostFunc = _xdrSender;
5800
+ }
5801
+ else if (isXhrSupported()) {
5802
+ sendPostFunc = _xhrSender;
5803
+ }
5804
+ }
5805
+ else if (transportType === 2 && isFetchSupported(syncSupport) && (!syncSupport || !_disableFetchKeepAlive)) {
5806
+ sendPostFunc = _doFetchSender;
5807
+ }
5808
+ else if (transportType === 3 && isBeaconsSupported() && (syncSupport ? !_disableBeaconSync : !_disableBeacon)) {
5809
+ sendPostFunc = _beaconSender;
5810
+ }
5811
+ lp++;
5812
+ }
5813
+ if (sendPostFunc) {
5814
+ return _a = {
5815
+ _transport: transportType,
5816
+ _isSync: syncSupport
5817
+ },
5818
+ _a[_DYN_SEND_POST ] = sendPostFunc,
5819
+ _a;
5820
+ }
5821
+ return null;
5822
+ }
5823
+ function _doOnComplete(oncomplete, status, headers, response) {
5824
+ try {
5825
+ oncomplete && oncomplete(status, headers, response);
5826
+ }
5827
+ catch (e) {
5828
+ }
5829
+ }
5830
+ function _doBeaconSend(payload, oncomplete) {
5831
+ var nav = getNavigator();
5832
+ var url = payload[_DYN_URL_STRING ];
5833
+ if (!url) {
5834
+ _onNoPayloadUrl(oncomplete);
5835
+ return true;
5836
+ }
5837
+ url = payload[_DYN_URL_STRING ] + (_addNoResponse ? _noResponseQs : STR_EMPTY);
5838
+ var data = payload[_DYN_DATA ];
5839
+ var plainTextBatch = _isOneDs ? data : new Blob([data], { type: "text/plain;charset=UTF-8" });
5840
+ var queued = nav.sendBeacon(url, plainTextBatch);
5841
+ return queued;
5842
+ }
5843
+ function _beaconSender(payload, oncomplete, sync) {
5844
+ var data = payload[_DYN_DATA ];
5845
+ try {
5846
+ if (data) {
5847
+ if (!_doBeaconSend(payload, oncomplete)) {
5848
+ var onRetry = _onCompleteFuncs && _onCompleteFuncs.beaconOnRetry;
5849
+ if (onRetry && isFunction(onRetry)) {
5850
+ onRetry(payload, oncomplete, _doBeaconSend);
5851
+ }
5852
+ else {
5853
+ _fallbackInst && _fallbackInst[_DYN_SEND_POST ](payload, oncomplete, true);
5854
+ _throwInternal(_diagLog, 2 , 40 , ". " + "Failed to send telemetry with Beacon API, retried with normal sender.");
5855
+ }
5856
+ }
5857
+ else {
5858
+ _onSuccess(STR_EMPTY, oncomplete);
5859
+ }
5860
+ }
5861
+ }
5862
+ catch (e) {
5863
+ _isOneDs && _warnToConsole(_diagLog, "Failed to send telemetry using sendBeacon API. Ex:" + dumpObj(e));
5864
+ _doOnComplete(oncomplete, _isOneDs ? 0 : 400, {}, STR_EMPTY);
5865
+ }
5866
+ return;
5867
+ }
5868
+ function _xhrSender(payload, oncomplete, sync) {
5869
+ var thePromise;
5870
+ var resolveFunc;
5871
+ var rejectFunc;
5872
+ var headers = payload[_DYN_HEADERS ] || {};
5873
+ if (!sync && _enableSendPromise) {
5874
+ thePromise = createPromise(function (resolve, reject) {
5875
+ resolveFunc = resolve;
5876
+ rejectFunc = reject;
5877
+ });
5878
+ }
5879
+ if (_isOneDs && sync && payload.disableXhrSync) {
5880
+ sync = false;
5881
+ }
5882
+ var endPointUrl = payload[_DYN_URL_STRING ];
5883
+ if (!endPointUrl) {
5884
+ _onNoPayloadUrl(oncomplete);
5885
+ resolveFunc && resolveFunc(false);
5886
+ return;
5887
+ }
5888
+ var xhr = openXhr(STR_POST_METHOD, endPointUrl, _sendCredentials, true, sync, payload[_DYN_TIMEOUT ]);
5889
+ xhr[_DYN_SET_REQUEST_HEADER ]("Content-type", "application/json");
5890
+ arrForEach(objKeys(headers), function (headerName) {
5891
+ xhr[_DYN_SET_REQUEST_HEADER ](headerName, headers[headerName]);
5892
+ });
5893
+ xhr.onreadystatechange = function () {
5894
+ if (!_isOneDs) {
5895
+ _doOnReadyFunc(xhr);
5896
+ if (xhr.readyState === 4) {
5897
+ resolveFunc && resolveFunc(true);
5898
+ }
5899
+ }
5900
+ };
5901
+ xhr.onload = function () {
5902
+ if (_isOneDs) {
5903
+ _doOnReadyFunc(xhr);
5904
+ }
5905
+ };
5906
+ function _doOnReadyFunc(xhr) {
5907
+ var onReadyFunc = _onCompleteFuncs && _onCompleteFuncs.xhrOnComplete;
5908
+ var onReadyFuncExist = onReadyFunc && isFunction(onReadyFunc);
5909
+ if (onReadyFuncExist) {
5910
+ onReadyFunc(xhr, oncomplete, payload);
5911
+ }
5912
+ else {
5913
+ var response = getResponseText(xhr);
5914
+ _doOnComplete(oncomplete, xhr[_DYN_STATUS ], _getAllResponseHeaders(xhr, _isOneDs), response);
5915
+ }
5916
+ }
5917
+ xhr.onerror = function (event) {
5918
+ _doOnComplete(oncomplete, _isOneDs ? xhr[_DYN_STATUS ] : 400, _getAllResponseHeaders(xhr, _isOneDs), _isOneDs ? STR_EMPTY : formatErrorMessageXhr(xhr));
5919
+ rejectFunc && rejectFunc(event);
5920
+ };
5921
+ xhr.ontimeout = function () {
5922
+ _doOnComplete(oncomplete, _isOneDs ? xhr[_DYN_STATUS ] : 500, _getAllResponseHeaders(xhr, _isOneDs), _isOneDs ? STR_EMPTY : formatErrorMessageXhr(xhr));
5923
+ resolveFunc && resolveFunc(false);
5924
+ };
5925
+ xhr.send(payload[_DYN_DATA ]);
5926
+ return thePromise;
5927
+ }
5928
+ function _doFetchSender(payload, oncomplete, sync) {
5929
+ var _a;
5930
+ var endPointUrl = payload[_DYN_URL_STRING ];
5931
+ var batch = payload[_DYN_DATA ];
5932
+ var plainTextBatch = _isOneDs ? batch : new Blob([batch], { type: "application/json" });
5933
+ var thePromise;
5934
+ var resolveFunc;
5935
+ var rejectFunc;
5936
+ var requestHeaders = new Headers();
5937
+ var batchLength = batch[_DYN_LENGTH ];
5938
+ var ignoreResponse = false;
5939
+ var responseHandled = false;
5940
+ var headers = payload[_DYN_HEADERS ] || {};
5941
+ var init = (_a = {
5942
+ method: STR_POST_METHOD,
5943
+ body: plainTextBatch
5944
+ },
5945
+ _a[DisabledPropertyName] = true
5946
+ ,
5947
+ _a);
5948
+ if (payload.headers && objKeys(payload.headers)[_DYN_LENGTH ] > 0) {
5949
+ arrForEach(objKeys(headers), function (headerName) {
5950
+ requestHeaders.append(headerName, headers[headerName]);
5951
+ });
5952
+ init[_DYN_HEADERS ] = requestHeaders;
5953
+ }
5954
+ if (_sendCredentials && _isOneDs) {
5955
+ init.credentials = "include";
5956
+ }
5957
+ if (sync) {
5958
+ init.keepalive = true;
5959
+ _syncFetchPayload += batchLength;
5960
+ if (_isOneDs) {
5961
+ if (payload["_sendReason"] === 2 ) {
5962
+ ignoreResponse = true;
5963
+ if (_addNoResponse) {
5964
+ endPointUrl += _noResponseQs;
5965
+ }
5966
+ }
5967
+ }
5968
+ else {
5969
+ ignoreResponse = true;
5970
+ }
5971
+ }
5972
+ var request = new Request(endPointUrl, init);
5973
+ try {
5974
+ request[DisabledPropertyName] = true;
5975
+ }
5976
+ catch (e) {
5977
+ }
5978
+ if (!sync && _enableSendPromise) {
5979
+ thePromise = createPromise(function (resolve, reject) {
5980
+ resolveFunc = resolve;
5981
+ rejectFunc = reject;
5982
+ });
5983
+ }
5984
+ if (!endPointUrl) {
5985
+ _onNoPayloadUrl(oncomplete);
5986
+ resolveFunc && resolveFunc(false);
5987
+ return;
5988
+ }
5989
+ function _handleError(res) {
5990
+ _doOnComplete(oncomplete, _isOneDs ? 0 : 400, {}, _isOneDs ? STR_EMPTY : res);
5991
+ }
5992
+ function _onFetchComplete(response, payload, value) {
5993
+ var status = response[_DYN_STATUS ];
5994
+ var onCompleteFunc = _onCompleteFuncs.fetchOnComplete;
5995
+ if (onCompleteFunc && isFunction(onCompleteFunc)) {
5996
+ onCompleteFunc(response, oncomplete, value || STR_EMPTY, payload);
5997
+ }
5998
+ else {
5999
+ _doOnComplete(oncomplete, status, {}, value || STR_EMPTY);
6000
+ }
6001
+ }
6002
+ try {
6003
+ doAwaitResponse(fetch(_isOneDs ? endPointUrl : request, _isOneDs ? init : null), function (result) {
6004
+ if (sync) {
6005
+ _syncFetchPayload -= batchLength;
6006
+ batchLength = 0;
6007
+ }
6008
+ if (!responseHandled) {
6009
+ responseHandled = true;
6010
+ if (!result.rejected) {
6011
+ var response_1 = result.value;
6012
+ try {
6013
+ if (!_isOneDs && !response_1.ok) {
6014
+ _handleError(response_1.statusText);
6015
+ resolveFunc && resolveFunc(false);
6016
+ }
6017
+ else {
6018
+ if (_isOneDs && !response_1.body) {
6019
+ _onFetchComplete(response_1, null, STR_EMPTY);
6020
+ resolveFunc && resolveFunc(true);
6021
+ }
6022
+ else {
6023
+ doAwaitResponse(response_1.text(), function (resp) {
6024
+ _onFetchComplete(response_1, payload, resp.value);
6025
+ resolveFunc && resolveFunc(true);
6026
+ });
6027
+ }
6028
+ }
6029
+ }
6030
+ catch (e) {
6031
+ _handleError(dumpObj(e));
6032
+ rejectFunc && rejectFunc(e);
6033
+ }
6034
+ }
6035
+ else {
6036
+ _handleError(result.reason && result.reason[_DYN_MESSAGE ]);
6037
+ rejectFunc && rejectFunc(result.reason);
6038
+ }
6039
+ }
6040
+ });
6041
+ }
6042
+ catch (e) {
6043
+ if (!responseHandled) {
6044
+ _handleError(dumpObj(e));
6045
+ rejectFunc && rejectFunc(e);
6046
+ }
6047
+ }
6048
+ if (ignoreResponse && !responseHandled) {
6049
+ responseHandled = true;
6050
+ _doOnComplete(oncomplete, 200, {});
6051
+ resolveFunc && resolveFunc(true);
6052
+ }
6053
+ if (_isOneDs && !responseHandled && payload[_DYN_TIMEOUT ] > 0) {
6054
+ _timeoutWrapper && _timeoutWrapper.set(function () {
6055
+ if (!responseHandled) {
6056
+ responseHandled = true;
6057
+ _doOnComplete(oncomplete, 500, {});
6058
+ resolveFunc && resolveFunc(true);
6059
+ }
6060
+ }, payload[_DYN_TIMEOUT ]);
6061
+ }
6062
+ return thePromise;
6063
+ }
6064
+ function _xdrSender(payload, oncomplete, sync) {
6065
+ var _window = getWindow();
6066
+ var xdr = new XDomainRequest();
6067
+ var data = payload[_DYN_DATA ];
6068
+ xdr.onload = function () {
6069
+ var response = getResponseText(xdr);
6070
+ var onloadFunc = _onCompleteFuncs && _onCompleteFuncs.xdrOnComplete;
6071
+ if (onloadFunc && isFunction(onloadFunc)) {
6072
+ onloadFunc(xdr, oncomplete, payload);
6073
+ }
6074
+ else {
6075
+ _doOnComplete(oncomplete, 200, {}, response);
6076
+ }
6077
+ };
6078
+ xdr.onerror = function () {
6079
+ _doOnComplete(oncomplete, 400, {}, _isOneDs ? STR_EMPTY : formatErrorMessageXdr(xdr));
6080
+ };
6081
+ xdr.ontimeout = function () {
6082
+ _doOnComplete(oncomplete, 500, {});
6083
+ };
6084
+ xdr.onprogress = function () { };
6085
+ var hostingProtocol = _window && _window.location && _window.location[_DYN_PROTOCOL ] || "";
6086
+ var endpoint = payload[_DYN_URL_STRING ];
6087
+ if (!endpoint) {
6088
+ _onNoPayloadUrl(oncomplete);
6089
+ return;
6090
+ }
6091
+ if (!_isOneDs && endpoint.lastIndexOf(hostingProtocol, 0) !== 0) {
6092
+ var msg = "Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.";
6093
+ _throwInternal(_diagLog, 2 , 40 , ". " + msg);
6094
+ _onError(msg, oncomplete);
6095
+ return;
6096
+ }
6097
+ var endpointUrl = _isOneDs ? endpoint : endpoint[_DYN_REPLACE ](/^(https?:)/, "");
6098
+ xdr.open(STR_POST_METHOD, endpointUrl);
6099
+ if (payload[_DYN_TIMEOUT ]) {
6100
+ xdr[_DYN_TIMEOUT ] = payload[_DYN_TIMEOUT ];
6101
+ }
6102
+ xdr.send(data);
6103
+ if (_isOneDs && sync) {
6104
+ _timeoutWrapper && _timeoutWrapper.set(function () {
6105
+ xdr.send(data);
6106
+ }, 0);
6107
+ }
6108
+ else {
6109
+ xdr.send(data);
6110
+ }
6111
+ }
6112
+ function _initDefaults() {
6113
+ _syncFetchPayload = 0;
6114
+ _isInitialized = false;
6115
+ _enableSendPromise = false;
6116
+ _diagLog = null;
6117
+ _isOneDs = null;
6118
+ _onCompleteFuncs = null;
6119
+ _disableCredentials = null;
6120
+ _fallbackInst = null;
6121
+ _disableXhr = false;
6122
+ _disableBeacon = false;
6123
+ _disableBeaconSync = false;
6124
+ _disableFetchKeepAlive = false;
6125
+ _addNoResponse = false;
6126
+ _timeoutWrapper = null;
6127
+ }
6128
+ });
6129
+ }
6130
+ SenderPostManager.__ieDyn=1;
6131
+ return SenderPostManager;
6132
+ }());
6133
+
5568
6134
  var strOnPrefix = "on";
5569
6135
  var strAttachEvent = "attachEvent";
5570
6136
  var strAddEventHelper = "addEventListener";
@@ -5585,16 +6151,16 @@ var elmNodeData = createElmNodeData("events");
5585
6151
  var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
5586
6152
  function _normalizeNamespace(name) {
5587
6153
  if (name && name[_DYN_REPLACE ]) {
5588
- return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY);
6154
+ return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY$1);
5589
6155
  }
5590
6156
  return name;
5591
6157
  }
5592
6158
  function _getEvtNamespace(eventName, evtNamespace) {
5593
6159
  var _a;
5594
6160
  if (evtNamespace) {
5595
- var theNamespace_1 = STR_EMPTY;
6161
+ var theNamespace_1 = STR_EMPTY$1;
5596
6162
  if (isArray(evtNamespace)) {
5597
- theNamespace_1 = STR_EMPTY;
6163
+ theNamespace_1 = STR_EMPTY$1;
5598
6164
  arrForEach(evtNamespace, function (name) {
5599
6165
  name = _normalizeNamespace(name);
5600
6166
  if (name) {
@@ -5612,13 +6178,13 @@ function _getEvtNamespace(eventName, evtNamespace) {
5612
6178
  if (theNamespace_1[0] !== ".") {
5613
6179
  theNamespace_1 = "." + theNamespace_1;
5614
6180
  }
5615
- eventName = (eventName || STR_EMPTY) + theNamespace_1;
6181
+ eventName = (eventName || STR_EMPTY$1) + theNamespace_1;
5616
6182
  }
5617
6183
  }
5618
- var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
6184
+ var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY$1) || []);
5619
6185
  return _a = {},
5620
6186
  _a[_DYN_TYPE ] = parsedEvent[1],
5621
- _a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT ](".").sort()).join("."),
6187
+ _a.ns = ((parsedEvent[2] || STR_EMPTY$1).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY$1)[_DYN_SPLIT ](".").sort()).join("."),
5622
6188
  _a;
5623
6189
  }
5624
6190
  function __getRegisteredEvents(target, eventName, evtNamespace) {
@@ -5631,7 +6197,7 @@ function __getRegisteredEvents(target, eventName, evtNamespace) {
5631
6197
  if (!evtName[_DYN_TYPE ] || evtName[_DYN_TYPE ] === value.evtName[_DYN_TYPE ]) {
5632
6198
  if (!evtName.ns || evtName.ns === evtName.ns) {
5633
6199
  theEvents[_DYN_PUSH ]((_a = {},
5634
- _a[_DYN_NAME ] = value.evtName[_DYN_TYPE ] + (value.evtName.ns ? "." + value.evtName.ns : STR_EMPTY),
6200
+ _a[_DYN_NAME ] = value.evtName[_DYN_TYPE ] + (value.evtName.ns ? "." + value.evtName.ns : STR_EMPTY$1),
5635
6201
  _a.handler = value[_DYN_HANDLER ],
5636
6202
  _a));
5637
6203
  }
@@ -6076,9 +6642,12 @@ exports.NotificationManager = NotificationManager;
6076
6642
  exports.PerfEvent = PerfEvent;
6077
6643
  exports.PerfManager = PerfManager;
6078
6644
  exports.ProcessTelemetryContext = ProcessTelemetryContext;
6645
+ exports.SenderPostManager = SenderPostManager;
6079
6646
  exports.Undefined = Undefined;
6080
6647
  exports._InternalLogMessage = _InternalLogMessage;
6081
6648
  exports.__getRegisteredEvents = __getRegisteredEvents;
6649
+ exports._appendHeader = _appendHeader;
6650
+ exports._getAllResponseHeaders = _getAllResponseHeaders;
6082
6651
  exports._logInternalMessage = _logInternalMessage;
6083
6652
  exports._throwInternal = _throwInternal;
6084
6653
  exports._warnToConsole = _warnToConsole;
@@ -6102,6 +6671,7 @@ exports.cfgDfMerge = cfgDfMerge;
6102
6671
  exports.cfgDfSet = cfgDfSet;
6103
6672
  exports.cfgDfString = cfgDfString;
6104
6673
  exports.cfgDfValidate = cfgDfValidate;
6674
+ exports.convertAllHeadersToMap = convertAllHeadersToMap;
6105
6675
  exports.createClassFromInterface = createClassFromInterface;
6106
6676
  exports.createCookieMgr = createCookieMgr;
6107
6677
  exports.createCustomDomEvent = createCustomDomEvent;
@@ -6126,6 +6696,8 @@ exports.findMetaTag = findMetaTag;
6126
6696
  exports.findNamedServerTiming = findNamedServerTiming;
6127
6697
  exports.findW3cTraceParent = findW3cTraceParent;
6128
6698
  exports.forceDynamicConversion = forceDynamicConversion;
6699
+ exports.formatErrorMessageXdr = formatErrorMessageXdr;
6700
+ exports.formatErrorMessageXhr = formatErrorMessageXhr;
6129
6701
  exports.formatTraceParent = formatTraceParent;
6130
6702
  exports.generateW3CId = generateW3CId;
6131
6703
  exports.getConsole = getConsole;
@@ -6145,6 +6717,7 @@ exports.getLocation = getLocation;
6145
6717
  exports.getMsCrypto = getMsCrypto;
6146
6718
  exports.getNavigator = getNavigator;
6147
6719
  exports.getPerformance = getPerformance;
6720
+ exports.getResponseText = getResponseText;
6148
6721
  exports.getSetValue = getSetValue;
6149
6722
  exports.getWindow = getWindow;
6150
6723
  exports.hasDocument = hasDocument;
@@ -6195,9 +6768,12 @@ exports.objKeys = objKeys;
6195
6768
  exports.objSeal = objSeal;
6196
6769
  exports.objToString = objToString;
6197
6770
  exports.onConfigChange = onConfigChange;
6771
+ exports.openXhr = openXhr;
6198
6772
  exports.optimizeObject = optimizeObject;
6773
+ exports.parseResponse = parseResponse;
6199
6774
  exports.parseTraceParent = parseTraceParent;
6200
6775
  exports.perfNow = perfNow;
6776
+ exports.prependTransports = prependTransports;
6201
6777
  exports.proxyAssign = proxyAssign;
6202
6778
  exports.proxyFunctionAs = proxyFunctionAs;
6203
6779
  exports.proxyFunctions = proxyFunctions;