UNPKG

@microsoft/applicationinsights-core-js

Version:

Microsoft Application Insights Core Javascript SDK

1,496 lines (1,483 loc) • 259 kB
/*! * Application Insights JavaScript SDK - Core, 3.3.6 * Copyright (c) Microsoft and contributors. All rights reserved. */ (function (global, factory) { var undef = "undefined"; typeof exports === "object" && typeof module !== undef ? factory(exports) : typeof define === "function" && define.amd ? define(["exports"], factory) : (function(global){ var nsKey, key, nm, theExports = {}, modName = "es5_applicationinsights_core_js_3_3_6", msMod="__ms$mod__"; var mods={}, modDetail=mods[modName]={}, ver="3.3.6"; var baseNs=global, nsKey="Microsoft", baseNs=baseNs[nsKey]=(baseNs[nsKey]||{}); // Versioned namespace "Microsoft.ApplicationInsights3" var exportNs=baseNs, nsKey="ApplicationInsights3", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{}); // Global namespace "Microsoft.ApplicationInsights" var destNs=baseNs, nsKey="ApplicationInsights", destNs=destNs[nsKey]=(destNs[nsKey]||{}); var expNsDetail=(exportNs[msMod]=(exportNs[msMod] || {})), expNameVer=(expNsDetail["v"]=(expNsDetail["v"] || [])); var destNsDetail=(destNs[msMod]=(destNs[msMod] || {})), destNameVer=(destNsDetail["v"]=(destNsDetail["v"] || [])); (destNsDetail["o"]=(destNsDetail["o"] || [])).push(mods); factory(theExports); for(var key in theExports) { // Always set the imported value into the "export" versioned namespace (last-write wins) nm="x", exportNs[key]=theExports[key], expNameVer[key]=ver; // Copy over any named element that is not already present (first-write wins) typeof destNs[key]===undef ? (nm="n", destNs[key]=theExports[key]) && (destNameVer[key]=ver) : !destNameVer[key] && (destNameVer[key]="---"); (modDetail[nm] = (modDetail[nm] || [])).push(key); } })(typeof globalThis !== undef ? globalThis : global || self); })(this, (function (exports) { 'use strict'; var MinChannelPriorty = 100; /*! https://github.com/nevware21/ts-utils v0.11.8 */ /*#__NO_SIDE_EFFECTS__*/ function _pureAssign(func1, func2) { return func1 || func2; } /*#__NO_SIDE_EFFECTS__*/ function _pureRef(value, name) { return value[name]; } var UNDEF_VALUE = undefined; var NULL_VALUE = null; var EMPTY = ""; var FUNCTION = "function"; var OBJECT = "object"; var PROTOTYPE = "prototype"; var __PROTO__ = "__proto__"; var UNDEFINED = "undefined"; var CONSTRUCTOR = "constructor"; var SYMBOL = "Symbol"; var POLYFILL_TAG = "_polyfill"; var LENGTH = "length"; var NAME = "name"; var CALL = "call"; var TO_STRING = "toString"; var ObjClass$1 = ( /*#__PURE__*/_pureAssign(Object)); var ObjProto = ( /*#__PURE__*/_pureRef(ObjClass$1, PROTOTYPE)); var StrCls = ( /*#__PURE__*/_pureAssign(String)); var StrProto = ( /*#__PURE__*/_pureRef(StrCls, PROTOTYPE)); var MathCls = ( /*#__PURE__*/_pureAssign(Math)); var ArrCls = ( /*#__PURE__*/_pureAssign(Array)); var ArrProto = ( /*#__PURE__*/_pureRef(ArrCls, PROTOTYPE)); var ArrSlice = ( /*#__PURE__*/_pureRef(ArrProto, "slice")); function safe(func, argArray) { try { return { v: func.apply(this, argArray) }; } catch (e) { return { e: e }; } } /*#__NO_SIDE_EFFECTS__*/ function safeGet(cb, defValue) { var result = safe(cb); return result.e ? defValue : result.v; } var _primitiveTypes; /*#__NO_SIDE_EFFECTS__*/ function _createIs(theType) { return function (value) { return typeof value === theType; }; } /*#__NO_SIDE_EFFECTS__*/ function _createObjIs(theName) { var theType = "[object " + theName + "]"; return function (value) { return !!(value && objToString(value) === theType); }; } /*#__NO_SIDE_EFFECTS__*/ function objToString(value) { return ObjProto[TO_STRING].call(value); } /*#__NO_SIDE_EFFECTS__*/ function isTypeof(value, theType) { return typeof value === theType; } /*#__NO_SIDE_EFFECTS__*/ function isUndefined(value) { return typeof value === UNDEFINED || value === UNDEFINED; } /*#__NO_SIDE_EFFECTS__*/ function isStrictUndefined(arg) { return !isDefined(arg); } /*#__NO_SIDE_EFFECTS__*/ function isNullOrUndefined(value) { return value === NULL_VALUE || isUndefined(value); } /*#__NO_SIDE_EFFECTS__*/ function isStrictNullOrUndefined(value) { return value === NULL_VALUE || !isDefined(value); } /*#__NO_SIDE_EFFECTS__*/ function isDefined(arg) { return !!arg || arg !== UNDEF_VALUE; } /*#__NO_SIDE_EFFECTS__*/ function isPrimitiveType(theType) { !_primitiveTypes && (_primitiveTypes = ["string", "number", "boolean", UNDEFINED, "symbol", "bigint"]); return !!(theType !== OBJECT && _primitiveTypes.indexOf(theType) !== -1); } var isString = ( /*#__PURE__*/_createIs("string")); var isFunction = ( /*#__PURE__*/_createIs(FUNCTION)); /*#__NO_SIDE_EFFECTS__*/ function isObject(value) { if (!value && isNullOrUndefined(value)) { return false; } return !!value && typeof value === OBJECT; } var isArray = ( /* #__PURE__*/_pureRef(ArrCls, "isArray")); var isDate = ( /*#__PURE__*/_createObjIs("Date")); var isNumber = ( /*#__PURE__*/_createIs("number")); var isBoolean = ( /*#__PURE__*/_createIs("boolean")); var isError = ( /*#__PURE__*/_createObjIs("Error")); /*#__NO_SIDE_EFFECTS__*/ function isPromiseLike(value) { return !!(value && value.then && isFunction(value.then)); } /*#__NO_SIDE_EFFECTS__*/ function isNotTruthy(value) { return !value || !isTruthy(value); } /*#__NO_SIDE_EFFECTS__*/ function isTruthy(value) { return !(!value || safeGet(function () { return !(value && (0 + value)); }, !value)); } var objGetOwnPropertyDescriptor = ( /* #__PURE__ */_pureRef(ObjClass$1, "getOwnPropertyDescriptor")); /*#__NO_SIDE_EFFECTS__*/ function objHasOwnProperty(obj, prop) { return !!obj && ObjProto.hasOwnProperty[CALL](obj, prop); } var objHasOwn = ( /*#__PURE__*/_pureAssign(( /* #__PURE__ */_pureRef(ObjClass$1, "hasOwn")), polyObjHasOwn)); /*#__NO_SIDE_EFFECTS__*/ function polyObjHasOwn(obj, prop) { return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop); } function objForEachKey(theObject, callbackfn, thisArg) { if (theObject && isObject(theObject)) { for (var prop in theObject) { if (objHasOwn(theObject, prop)) { if (callbackfn[CALL](thisArg || theObject, prop, theObject[prop]) === -1) { break; } } } } } var propMap = { e: "enumerable", c: "configurable", v: "value", w: "writable", g: "get", s: "set" }; /*#__NO_SIDE_EFFECTS__*/ function _createProp(value) { var prop = {}; prop[propMap["c"]] = true; prop[propMap["e"]] = true; if (value.l) { prop.get = function () { return value.l.v; }; var desc = objGetOwnPropertyDescriptor(value.l, "v"); if (desc && desc.set) { prop.set = function (newValue) { value.l.v = newValue; }; } } objForEachKey(value, function (key, value) { prop[propMap[key]] = isStrictUndefined(value) ? prop[propMap[key]] : value; }); return prop; } var objDefineProp = ( /*#__PURE__*/_pureRef(ObjClass$1, "defineProperty")); function objDefineAccessors(target, prop, getProp, setProp, configurable, enumerable) { var desc = { e: enumerable, c: configurable }; if (getProp) { desc.g = getProp; } if (setProp) { desc.s = setProp; } return objDefineProp(target, prop, _createProp(desc)); } function objDefine(target, key, propDesc) { return objDefineProp(target, key, _createProp(propDesc)); } /*#__NO_SIDE_EFFECTS__*/ function _createKeyValueMap(values, keyType, valueType, completeFn, writable) { var theMap = {}; objForEachKey(values, function (key, value) { _assignMapValue(theMap, key, keyType ? value : key); _assignMapValue(theMap, value, valueType ? value : key); }); return completeFn ? completeFn(theMap) : theMap; } function _assignMapValue(theMap, key, value, writable) { objDefineProp(theMap, key, { value: value, enumerable: true, writable: false }); } var asString = ( /* #__PURE__ */_pureAssign(StrCls)); var ERROR_TYPE = "[object Error]"; /*#__NO_SIDE_EFFECTS__*/ function dumpObj(object, format) { var propertyValueDump = EMPTY; var objType = ObjProto[TO_STRING][CALL](object); if (objType === ERROR_TYPE) { object = { stack: asString(object.stack), message: asString(object.message), name: asString(object.name) }; } try { propertyValueDump = JSON.stringify(object, NULL_VALUE, format ? ((typeof format === "number") ? format : 4) : UNDEF_VALUE); propertyValueDump = (propertyValueDump ? propertyValueDump.replace(/"(\w+)"\s*:\s{0,1}/g, "$1: ") : NULL_VALUE) || asString(object); } catch (e) { propertyValueDump = " - " + dumpObj(e, format); } return objType + ": " + propertyValueDump; } function throwError(message) { throw new Error(message); } function throwTypeError(message) { throw new TypeError(message); } var _objFreeze = ( /* #__PURE__ */_pureRef(ObjClass$1, "freeze")); function _doNothing(value) { return value; } /*#__NO_SIDE_EFFECTS__*/ function _getProto(value) { return value[__PROTO__] || NULL_VALUE; } var objAssign = ( /*#__PURE__*/_pureRef(ObjClass$1, "assign")); var objKeys = ( /*#__PURE__*/_pureRef(ObjClass$1, "keys")); function objDeepFreeze(value) { if (_objFreeze) { objForEachKey(value, function (key, value) { if (isArray(value) || isObject(value)) { objDeepFreeze(value); } }); } return objFreeze(value); } var objFreeze = ( /* #__PURE__*/_pureAssign(_objFreeze, _doNothing)); var objSeal = ( /* #__PURE__*/_pureAssign(( /* #__PURE__*/_pureRef(ObjClass$1, "seal")), _doNothing)); var objGetPrototypeOf = ( /* #__PURE__*/_pureAssign(( /* #__PURE__*/_pureRef(ObjClass$1, "getPrototypeOf")), _getProto)); /*#__NO_SIDE_EFFECTS__*/ function createEnum(values) { return _createKeyValueMap(values, 1 , 0 , objFreeze); } /*#__NO_SIDE_EFFECTS__*/ function createEnumKeyMap(values) { return _createKeyValueMap(values, 0 , 0 , objFreeze); } /*#__NO_SIDE_EFFECTS__*/ function createSimpleMap(values) { var mapClass = {}; objForEachKey(values, function (key, value) { _assignMapValue(mapClass, key, value[1]); _assignMapValue(mapClass, value[0], value[1]); }); return objFreeze(mapClass); } /*#__NO_SIDE_EFFECTS__*/ function createTypeMap(values) { return createSimpleMap(values); } var _wellKnownSymbolMap = /*#__PURE__*/ createEnumKeyMap({ asyncIterator: 0 , hasInstance: 1 , isConcatSpreadable: 2 , iterator: 3 , match: 4 , matchAll: 5 , replace: 6 , search: 7 , species: 8 , split: 9 , toPrimitive: 10 , toStringTag: 11 , unscopables: 12 }); var GLOBAL_CONFIG_KEY = "__tsUtils$gblCfg"; var _globalCfg; /*#__NO_SIDE_EFFECTS__*/ function _getGlobalValue() { var result; if (typeof globalThis !== UNDEFINED) { result = globalThis; } if (!result && typeof self !== UNDEFINED) { result = self; } if (!result && typeof window !== UNDEFINED) { result = window; } if (!result && typeof global !== UNDEFINED) { result = global; } return result; } /*#__NO_SIDE_EFFECTS__*/ function _getGlobalConfig() { if (!_globalCfg) { var gbl = safe(_getGlobalValue).v || {}; _globalCfg = gbl[GLOBAL_CONFIG_KEY] = gbl[GLOBAL_CONFIG_KEY] || {}; } return _globalCfg; } var _unwrapFunction = ( _unwrapFunctionWithPoly); /*#__NO_SIDE_EFFECTS__*/ function _unwrapFunctionWithPoly(funcName, clsProto, polyFunc) { var clsFn = clsProto ? clsProto[funcName] : NULL_VALUE; return function (thisArg) { var theFunc = (thisArg ? thisArg[funcName] : NULL_VALUE) || clsFn; if (theFunc || polyFunc) { var theArgs = arguments; return (theFunc || polyFunc).apply(thisArg, theFunc ? ArrSlice[CALL](theArgs, 1) : theArgs); } throwTypeError("\"" + asString(funcName) + "\" not defined for " + dumpObj(thisArg)); }; } /*#__NO_SIDE_EFFECTS__*/ function _unwrapProp(propName) { return function (thisArg) { return thisArg[propName]; }; } var mathMax = ( /*#__PURE__*/_pureRef(MathCls, "max")); var strSlice = ( /*#__PURE__*/_unwrapFunction("slice", StrProto)); var strSubstring = ( /*#__PURE__*/_unwrapFunction("substring", StrProto)); var strSubstr = ( /*#__PURE__*/_unwrapFunctionWithPoly("substr", StrProto, polyStrSubstr)); /*#__NO_SIDE_EFFECTS__*/ function polyStrSubstr(value, start, length) { if (isNullOrUndefined(value)) { throwTypeError("Invalid " + dumpObj(value)); } if (length < 0) { return EMPTY; } start = start || 0; if (start < 0) { start = mathMax(start + value[LENGTH], 0); } if (isUndefined(length)) { return strSlice(value, start); } return strSlice(value, start, start + length); } /*#__NO_SIDE_EFFECTS__*/ function strLeft(value, count) { return strSubstring(value, 0, count); } var UNIQUE_REGISTRY_ID = "_urid"; var _polySymbols; /*#__NO_SIDE_EFFECTS__*/ function _globalSymbolRegistry() { if (!_polySymbols) { var gblCfg = _getGlobalConfig(); _polySymbols = gblCfg.gblSym = gblCfg.gblSym || { k: {}, s: {} }; } return _polySymbols; } var _wellKnownSymbolCache; /*#__NO_SIDE_EFFECTS__*/ function polyNewSymbol(description) { var theSymbol = { description: asString(description), toString: function () { return SYMBOL + "(" + description + ")"; } }; theSymbol[POLYFILL_TAG] = true; return theSymbol; } /*#__NO_SIDE_EFFECTS__*/ function polySymbolFor(key) { var registry = _globalSymbolRegistry(); if (!objHasOwn(registry.k, key)) { var newSymbol_1 = polyNewSymbol(key); var regId_1 = objKeys(registry.s).length; newSymbol_1[UNIQUE_REGISTRY_ID] = function () { return regId_1 + "_" + newSymbol_1[TO_STRING](); }; registry.k[key] = newSymbol_1; registry.s[newSymbol_1[UNIQUE_REGISTRY_ID]()] = asString(key); } return registry.k[key]; } /*#__NO_SIDE_EFFECTS__*/ function polyGetKnownSymbol(name) { !_wellKnownSymbolCache && (_wellKnownSymbolCache = {}); var result; var knownName = _wellKnownSymbolMap[name]; if (knownName) { result = _wellKnownSymbolCache[knownName] = _wellKnownSymbolCache[knownName] || polyNewSymbol(SYMBOL + "." + knownName); } return result; } var _globalLazyTestHooks; function _initTestHooks() { _globalLazyTestHooks = _getGlobalConfig(); } /*#__NO_SIDE_EFFECTS__*/ function getLazy(cb) { var lazyValue = {}; !_globalLazyTestHooks && _initTestHooks(); lazyValue.b = _globalLazyTestHooks.lzy; objDefineProp(lazyValue, "v", { configurable: true, get: function () { var result = cb(); if (!_globalLazyTestHooks.lzy) { objDefineProp(lazyValue, "v", { value: result }); } lazyValue.b = _globalLazyTestHooks.lzy; return result; } }); return lazyValue; } /*#__NO_SIDE_EFFECTS__*/ function createCachedValue(value) { return objDefineProp({ toJSON: function () { return value; } }, "v", { value: value }); } var WINDOW = "window"; var _cachedGlobal; function _getGlobalInstFn(getFn, theArgs) { var cachedValue; return function () { !_globalLazyTestHooks && _initTestHooks(); if (!cachedValue || _globalLazyTestHooks.lzy) { cachedValue = createCachedValue(safe(getFn, theArgs).v); } return cachedValue.v; }; } function getGlobal(useCached) { !_globalLazyTestHooks && _initTestHooks(); if (!_cachedGlobal || useCached === false || _globalLazyTestHooks.lzy) { _cachedGlobal = createCachedValue(safe(_getGlobalValue).v || NULL_VALUE); } return _cachedGlobal.v; } /*#__NO_SIDE_EFFECTS__*/ function getInst(name, useCached) { var gbl; if (!_cachedGlobal || useCached === false) { gbl = getGlobal(useCached); } else { gbl = _cachedGlobal.v; } if (gbl && gbl[name]) { return gbl[name]; } if (name === WINDOW) { try { return window; } catch (e) { } } return NULL_VALUE; } /*#__NO_SIDE_EFFECTS__*/ function hasDocument() { return !!( /*#__PURE__*/getDocument()); } var getDocument = ( /*#__PURE__*/_getGlobalInstFn(getInst, ["document"])); /*#__NO_SIDE_EFFECTS__*/ function hasWindow() { return !!( /*#__PURE__*/getWindow()); } var getWindow = ( /*#__PURE__*/_getGlobalInstFn(getInst, [WINDOW])); /*#__NO_SIDE_EFFECTS__*/ function hasNavigator() { return !!( /*#__PURE__*/getNavigator()); } var getNavigator = ( /*#__PURE__*/_getGlobalInstFn(getInst, ["navigator"])); /*#__NO_SIDE_EFFECTS__*/ function hasHistory() { return !!( /*#__PURE__*/getHistory()); } var getHistory = ( /*#__PURE__*/_getGlobalInstFn(getInst, ["history"])); var isNode = ( /*#__PURE__*/_getGlobalInstFn(function () { return !!( safe(function () { return (process && (process.versions || {}).node); }).v); })); var _symbol; var _symbolFor; /*#__NO_SIDE_EFFECTS__*/ function _initSymbol() { _symbol = ( /*#__PURE__*/createCachedValue(safe((getInst), [SYMBOL]).v)); return _symbol; } function _getSymbolKey(key) { var gblSym = ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol()); return (gblSym.v ? gblSym.v[key] : UNDEF_VALUE); } var isSymbol = ( /*#__PURE__*/_createIs("symbol")); /*#__NO_SIDE_EFFECTS__*/ function hasSymbol() { return !!( /*#__PURE__*/getSymbol()); } /*#__NO_SIDE_EFFECTS__*/ function getSymbol() { !_globalLazyTestHooks && _initTestHooks(); return ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol()).v; } /*#__NO_SIDE_EFFECTS__*/ function getKnownSymbol(name, noPoly) { var knownName = _wellKnownSymbolMap[name]; !_globalLazyTestHooks && _initTestHooks(); var sym = ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol()); return sym.v ? sym.v[knownName || name] : (!noPoly ? polyGetKnownSymbol(name) : UNDEF_VALUE); } /*#__NO_SIDE_EFFECTS__*/ function newSymbol(description, noPoly) { !_globalLazyTestHooks && _initTestHooks(); var sym = ((!_globalLazyTestHooks.lzy ? _symbol : 0) || _initSymbol()); return sym.v ? sym.v(description) : (!noPoly ? polyNewSymbol(description) : NULL_VALUE); } /*#__NO_SIDE_EFFECTS__*/ function symbolFor(key) { !_globalLazyTestHooks && _initTestHooks(); _symbolFor = ((!_globalLazyTestHooks.lzy ? _symbolFor : 0) || ( /*#__PURE__*/createCachedValue(safe((_getSymbolKey), ["for"]).v))); return (_symbolFor.v || polySymbolFor)(key); } /*#__NO_SIDE_EFFECTS__*/ function isIterator(value) { return !!value && isFunction(value.next); } /*#__NO_SIDE_EFFECTS__*/ function isIterable(value) { return !isStrictNullOrUndefined(value) && isFunction(value[getKnownSymbol(3 )]); } var _iterSymbol$1; function iterForOf(iter, callbackfn, thisArg) { if (iter) { if (!isIterator(iter)) { !_iterSymbol$1 && (_iterSymbol$1 = createCachedValue(getKnownSymbol(3 ))); iter = iter[_iterSymbol$1.v] ? iter[_iterSymbol$1.v]() : NULL_VALUE; } if (isIterator(iter)) { var err = UNDEF_VALUE; var iterResult = UNDEF_VALUE; try { var count = 0; while (!(iterResult = iter.next()).done) { if (callbackfn[CALL](thisArg || iter, iterResult.value, count, iter) === -1) { break; } count++; } } catch (failed) { err = { e: failed }; if (iter.throw) { iterResult = NULL_VALUE; iter.throw(err); } } finally { try { if (iterResult && !iterResult.done) { iter.return && iter.return(iterResult); } } finally { if (err) { throw err.e; } } } } } } function fnApply(fn, thisArg, argArray) { return fn.apply(thisArg, argArray); } function arrAppend(target, elms) { if (!isUndefined(elms) && target) { if (isArray(elms)) { fnApply(target.push, target, elms); } else if (isIterator(elms) || isIterable(elms)) { iterForOf(elms, function (elm) { target.push(elm); }); } else { target.push(elms); } } return target; } function arrForEach(theArray, callbackfn, thisArg) { if (theArray) { var len = theArray[LENGTH] >>> 0; for (var idx = 0; idx < len; idx++) { if (idx in theArray) { if (callbackfn[CALL](thisArg || theArray, theArray[idx], idx, theArray) === -1) { break; } } } } } var arrIndexOf = ( /*#__PURE__*/_unwrapFunction("indexOf", ArrProto)); var arrMap = ( /*#__PURE__*/_unwrapFunction("map", ArrProto)); function arrSlice(theArray, start, end) { return ((theArray ? theArray["slice"] : NULL_VALUE) || ArrSlice).apply(theArray, ArrSlice[CALL](arguments, 1)); } var arrReduce = ( /*#__PURE__*/_unwrapFunction("reduce", ArrProto)); var objCreate = ( /* #__PURE__*/_pureAssign(( /* #__PURE__*/_pureRef(ObjClass$1, "create")), polyObjCreate)); /*#__NO_SIDE_EFFECTS__*/ function polyObjCreate(obj) { if (!obj) { return {}; } var type = typeof obj; if (type !== OBJECT && type !== FUNCTION) { throwTypeError("Prototype must be an Object or function: " + dumpObj(obj)); } function tempFunc() { } tempFunc[PROTOTYPE] = obj; return new tempFunc(); } var _isProtoArray; function objSetPrototypeOf(obj, proto) { var fn = ObjClass$1["setPrototypeOf"] || function (d, b) { var _a; !_isProtoArray && (_isProtoArray = createCachedValue((_a = {}, _a[__PROTO__] = [], _a) instanceof Array)); _isProtoArray.v ? d[__PROTO__] = b : objForEachKey(b, function (key, value) { return d[key] = value; }); }; return fn(obj, proto); } /*#__NO_SIDE_EFFECTS__*/ function _createCustomError(name, d, b) { safe(objDefine, [d, NAME, { v: name, c: true, e: false }]); d = objSetPrototypeOf(d, b); function __() { this[CONSTRUCTOR] = d; safe(objDefine, [this, NAME, { v: name, c: true, e: false }]); } d[PROTOTYPE] = b === NULL_VALUE ? objCreate(b) : (__[PROTOTYPE] = b[PROTOTYPE], new __()); return d; } function _setName(baseClass, name) { name && (baseClass[NAME] = name); } /*#__NO_SIDE_EFFECTS__*/ function createCustomError(name, constructCb, errorBase) { var theBaseClass = errorBase || Error; var orgName = theBaseClass[PROTOTYPE][NAME]; var captureFn = Error.captureStackTrace; return _createCustomError(name, function () { var _this = this; var theArgs = arguments; try { safe(_setName, [theBaseClass, name]); var _self = fnApply(theBaseClass, _this, ArrSlice[CALL](theArgs)) || _this; if (_self !== _this) { var orgProto = objGetPrototypeOf(_this); if (orgProto !== objGetPrototypeOf(_self)) { objSetPrototypeOf(_self, orgProto); } } captureFn && captureFn(_self, _this[CONSTRUCTOR]); constructCb && constructCb(_self, theArgs); return _self; } finally { safe(_setName, [theBaseClass, orgName]); } }, theBaseClass); } /*#__NO_SIDE_EFFECTS__*/ function utcNow() { return (Date.now || polyUtcNow)(); } /*#__NO_SIDE_EFFECTS__*/ function polyUtcNow() { return new Date().getTime(); } /*#__NO_SIDE_EFFECTS__*/ function _createTrimFn(exp) { return function _doTrim(value) { if (isNullOrUndefined(value)) { throwTypeError("strTrim called [" + dumpObj(value) + "]"); } if (value && value.replace) { value = value.replace(exp, EMPTY); } return value; }; } var polyStrTrim = ( /*#__PURE__*/_createTrimFn(/^\s+|(?=\s)\s+$/g)); var strTrim = ( /*#__PURE__*/_unwrapFunctionWithPoly("trim", StrProto, polyStrTrim)); var mathFloor = ( /*#__PURE__*/_pureRef(MathCls, "floor")); var _fnToString; var _objCtrFnString; var _gblWindow; /*#__NO_SIDE_EFFECTS__*/ function isPlainObject(value) { if (!value || typeof value !== OBJECT) { return false; } if (!_gblWindow) { _gblWindow = hasWindow() ? getWindow() : true; } var result = false; if (value !== _gblWindow) { if (!_objCtrFnString) { _fnToString = Function[PROTOTYPE][TO_STRING]; _objCtrFnString = _fnToString[CALL](ObjClass$1); } try { var proto = objGetPrototypeOf(value); result = !proto; if (!result) { if (objHasOwnProperty(proto, CONSTRUCTOR)) { proto = proto[CONSTRUCTOR]; } result = !!(proto && typeof proto === FUNCTION && _fnToString[CALL](proto) === _objCtrFnString); } } catch (ex) { } } return result; } /*#__NO_SIDE_EFFECTS__*/ function _defaultDeepCopyHandler(details) { details.value && plainObjDeepCopyHandler(details); return true; } var defaultDeepCopyHandlers = [ arrayDeepCopyHandler, plainObjDeepCopyHandler, functionDeepCopyHandler, dateDeepCopyHandler ]; /*#__NO_SIDE_EFFECTS__*/ function _getSetVisited(visitMap, source, newPath, cb) { var theEntry; arrForEach(visitMap, function (entry) { if (entry.k === source) { theEntry = entry; return -1; } }); if (!theEntry) { theEntry = { k: source, v: source }; visitMap.push(theEntry); cb(theEntry); } return theEntry.v; } function _deepCopy(visitMap, value, ctx, key) { var userHandler = ctx.handler; var newPath = ctx.path ? (key ? ctx.path.concat(key) : ctx.path) : []; var newCtx = { handler: ctx.handler, src: ctx.src, path: newPath }; var theType = typeof value; var isPlain = false; var isPrim = value === NULL_VALUE; if (!isPrim) { if (value && theType === OBJECT) { isPlain = isPlainObject(value); } else { isPrim = isPrimitiveType(theType); } } var details = { type: theType, isPrim: isPrim, isPlain: isPlain, value: value, result: value, path: newPath, origin: ctx.src, copy: function (source, newKey) { return _deepCopy(visitMap, source, newKey ? newCtx : ctx, newKey); }, copyTo: function (target, source) { return _copyProps(visitMap, target, source, newCtx); } }; if (!details.isPrim) { return _getSetVisited(visitMap, value, newPath, function (newEntry) { objDefine(details, "result", { g: function () { return newEntry.v; }, s: function (newValue) { newEntry.v = newValue; } }); var idx = 0; var handler = userHandler; while (!(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler))[CALL](ctx, details)) { handler = NULL_VALUE; } }); } if (userHandler && userHandler[CALL](ctx, details)) { return details.result; } return value; } function _copyProps(visitMap, target, source, ctx) { if (!isNullOrUndefined(source)) { for (var key in source) { target[key] = _deepCopy(visitMap, source[key], ctx, key); } } return target; } function objCopyProps(target, source, handler) { var ctx = { handler: handler, src: source, path: [] }; return _copyProps([], target, source, ctx); } /*#__NO_SIDE_EFFECTS__*/ function objDeepCopy(source, handler) { var ctx = { handler: handler, src: source }; return _deepCopy([], source, ctx); } function arrayDeepCopyHandler(details) { var value = details.value; if (isArray(value)) { var target = details.result = []; target.length = value.length; details.copyTo(target, value); return true; } return false; } function dateDeepCopyHandler(details) { var value = details.value; if (isDate(value)) { details.result = new Date(value.getTime()); return true; } return false; } function functionDeepCopyHandler(details) { if (details.type === FUNCTION) { return true; } return false; } function plainObjDeepCopyHandler(details) { var value = details.value; if (value && details.isPlain) { var target = details.result = {}; details.copyTo(target, value); return true; } return false; } function _doExtend(target, theArgs) { arrForEach(theArgs, function (theArg) { objCopyProps(target, theArg); }); return target; } function deepExtend(target, obj1, obj2, obj3, obj4, obj5, obj6) { return _doExtend(objDeepCopy(target) || {}, ArrSlice[CALL](arguments)); } var getLength = ( /*#__PURE__*/_unwrapProp(LENGTH)); var _perf; /*#__NO_SIDE_EFFECTS__*/ function getPerformance() { !_globalLazyTestHooks && _initTestHooks(); if (!_perf || _globalLazyTestHooks.lzy) { _perf = createCachedValue(safe((getInst), ["performance"]).v); } return _perf.v; } /*#__NO_SIDE_EFFECTS__*/ function perfNow() { var perf = getPerformance(); if (perf && perf.now) { return perf.now(); } return utcNow(); } var strEndsWith = ( /*#__PURE__*/_unwrapFunctionWithPoly("endsWith", StrProto, polyStrEndsWith)); /*#__NO_SIDE_EFFECTS__*/ function polyStrEndsWith(value, searchString, length) { if (!isString(value)) { throwTypeError("'" + dumpObj(value) + "' is not a string"); } var searchValue = isString(searchString) ? searchString : asString(searchString); var end = (!isUndefined(length) && length < value[LENGTH]) ? length : value[LENGTH]; return strSubstring(value, end - searchValue[LENGTH], end) === searchValue; } var strIndexOf = ( /*#__PURE__*/_unwrapFunction("indexOf", StrProto)); var strStartsWith = ( /*#__PURE__*/_unwrapFunctionWithPoly("startsWith", StrProto, polyStrStartsWith)); /*#__NO_SIDE_EFFECTS__*/ function polyStrStartsWith(value, searchString, position) { if (!isString(value)) { throwTypeError("'" + dumpObj(value) + "' is not a string"); } var searchValue = isString(searchString) ? searchString : asString(searchString); var pos = position > 0 ? position : 0; return strSubstring(value, pos, pos + searchValue[LENGTH]) === searchValue; } var REF = "ref"; var UNREF = "unref"; var HAS_REF = "hasRef"; var ENABLED = "enabled"; /*#__NO_SIDE_EFFECTS__*/ function _createTimerHandler(startTimer, refreshFn, cancelFn) { var ref = true; var timerId = startTimer ? refreshFn(NULL_VALUE) : NULL_VALUE; var theTimerHandler; function _unref() { ref = false; timerId && timerId[UNREF] && timerId[UNREF](); return theTimerHandler; } function _cancel() { timerId && cancelFn(timerId); timerId = NULL_VALUE; } function _refresh() { timerId = refreshFn(timerId); if (!ref) { _unref(); } return theTimerHandler; } function _setEnabled(value) { !value && timerId && _cancel(); value && !timerId && _refresh(); } theTimerHandler = { cancel: _cancel, refresh: _refresh }; theTimerHandler[HAS_REF] = function () { if (timerId && timerId[HAS_REF]) { return timerId[HAS_REF](); } return ref; }; theTimerHandler[REF] = function () { ref = true; timerId && timerId[REF] && timerId[REF](); return theTimerHandler; }; theTimerHandler[UNREF] = _unref; theTimerHandler = objDefineProp(theTimerHandler, ENABLED, { get: function () { return !!timerId; }, set: _setEnabled }); return { h: theTimerHandler, dn: function () { timerId = NULL_VALUE; } }; } function _createTimeoutWith(startTimer, overrideFn, theArgs) { var isArr = isArray(overrideFn); var len = isArr ? overrideFn.length : 0; var setFn = (len > 0 ? overrideFn[0] : (!isArr ? overrideFn : UNDEF_VALUE)) || setTimeout; var clearFn = (len > 1 ? overrideFn[1] : UNDEF_VALUE) || clearTimeout; var timerFn = theArgs[0]; theArgs[0] = function () { handler.dn(); fnApply(timerFn, UNDEF_VALUE, ArrSlice[CALL](arguments)); }; var handler = _createTimerHandler(startTimer, function (timerId) { if (timerId) { if (timerId.refresh) { timerId.refresh(); return timerId; } fnApply(clearFn, UNDEF_VALUE, [timerId]); } return fnApply(setFn, UNDEF_VALUE, theArgs); }, function (timerId) { fnApply(clearFn, UNDEF_VALUE, [timerId]); }); return handler.h; } function scheduleTimeout(callback, timeout) { return _createTimeoutWith(true, UNDEF_VALUE, ArrSlice[CALL](arguments)); } function createTimeout(callback, timeout) { return _createTimeoutWith(false, UNDEF_VALUE, ArrSlice[CALL](arguments)); } var createEnumStyle = createEnum; var createValueMap = createTypeMap; var EventsDiscardedReason = createEnumStyle({ Unknown: 0 , NonRetryableStatus: 1 , InvalidEvent: 2 , SizeLimitExceeded: 3 , KillSwitch: 4 , QueueFull: 5 }); var BatchDiscardedReason = createEnumStyle({ Unknown: 0 , NonRetryableStatus: 1 , CleanStorage: 2 , MaxInStorageTimeExceeded: 3 }); var ActiveStatus = createEnumStyle({ NONE: 0 , PENDING: 3 , INACTIVE: 1 , ACTIVE: 2 }); var _DYN_TO_LOWER_CASE = "toLowerCase"; var _DYN_LENGTH = "length"; var _DYN_WARN_TO_CONSOLE = "warnToConsole"; var _DYN_THROW_INTERNAL = "throwInternal"; var _DYN_WATCH = "watch"; var _DYN_APPLY = "apply"; var _DYN_PUSH = "push"; var _DYN_SPLICE = "splice"; var _DYN_LOGGER = "logger"; var _DYN_CANCEL = "cancel"; var _DYN_INITIALIZE = "initialize"; var _DYN_IDENTIFIER = "identifier"; var _DYN_REMOVE_NOTIFICATION_0 = "removeNotificationListener"; var _DYN_ADD_NOTIFICATION_LIS1 = "addNotificationListener"; var _DYN_IS_INITIALIZED = "isInitialized"; var _DYN_VALUE = "value"; var _DYN_GET_NOTIFY_MGR = "getNotifyMgr"; var _DYN_GET_PLUGIN = "getPlugin"; var _DYN_NAME = "name"; var _DYN_PROCESS_NEXT = "processNext"; var _DYN_GET_PROCESS_TEL_CONT2 = "getProcessTelContext"; var _DYN_ENABLED = "enabled"; var _DYN_STOP_POLLING_INTERNA3 = "stopPollingInternalLogs"; var _DYN_UNLOAD = "unload"; var _DYN_ON_COMPLETE = "onComplete"; var _DYN_VERSION = "version"; var _DYN_LOGGING_LEVEL_CONSOL4 = "loggingLevelConsole"; var _DYN_CREATE_NEW = "createNew"; var _DYN_TEARDOWN = "teardown"; var _DYN_MESSAGE_ID = "messageId"; var _DYN_MESSAGE = "message"; var _DYN_DIAG_LOG = "diagLog"; var _DYN__DO_TEARDOWN = "_doTeardown"; var _DYN_UPDATE = "update"; var _DYN_GET_NEXT = "getNext"; var _DYN_SET_NEXT_PLUGIN = "setNextPlugin"; var _DYN_USER_AGENT = "userAgent"; var _DYN_SPLIT = "split"; var _DYN_REPLACE = "replace"; var _DYN_TYPE = "type"; var _DYN_EVT_NAME = "evtName"; var _DYN_STATUS = "status"; var _DYN_GET_ALL_RESPONSE_HEA5 = "getAllResponseHeaders"; var _DYN_IS_CHILD_EVT = "isChildEvt"; var _DYN_DATA = "data"; var _DYN_GET_CTX = "getCtx"; var _DYN_SET_CTX = "setCtx"; var _DYN_ITEMS_RECEIVED = "itemsReceived"; var _DYN_URL_STRING = "urlString"; var _DYN_HEADERS = "headers"; var _DYN_TIMEOUT = "timeout"; var _DYN_TRACE_FLAGS = "traceFlags"; var _DYN_GET_ATTRIBUTE = "getAttribute"; var aggregationErrorType; function throwAggregationError(message, sourceErrors) { if (!aggregationErrorType) { aggregationErrorType = createCustomError("AggregationError", function (self, args) { if (args[_DYN_LENGTH ] > 1) { self.errors = args[1]; } }); } var theMessage = message || "One or more errors occurred."; arrForEach(sourceErrors, function (srcError, idx) { theMessage += "\n".concat(idx, " > ").concat(dumpObj(srcError)); }); throw new aggregationErrorType(theMessage, sourceErrors || []); } var strShimFunction = "function"; var strShimObject = "object"; var strShimUndefined = "undefined"; var strShimPrototype = "prototype"; var ObjClass = Object; (getGlobal() || {})["Symbol"]; (getGlobal() || {})["Reflect"]; var strHasOwnProperty = "hasOwnProperty"; var extendStaticsFn = function (d, b) { extendStaticsFn = ObjClass["setPrototypeOf"] || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) { if (b[strHasOwnProperty](p)) { d[p] = b[p]; } } }; return extendStaticsFn(d, b); }; function __extendsFn(d, b) { if (typeof b !== strShimFunction && b !== null) { throwTypeError("Class extends value " + String(b) + " is not a constructor or null"); } extendStaticsFn(d, b); function __() { this.constructor = d; } d[strShimPrototype] = b === null ? objCreate(b) : (__[strShimPrototype] = b[strShimPrototype], new __()); } function __spreadArrayFn(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) { to[j] = from[i]; } return to; } var _a$4; var Constructor = 'constructor'; var Prototype = 'prototype'; var strFunction = 'function'; var DynInstFuncTable = '_dynInstFuncs'; var DynProxyTag = '_isDynProxy'; var DynClassName = '_dynClass'; var DynClassNamePrefix = '_dynCls$'; var DynInstChkTag = '_dynInstChk'; var DynAllowInstChkTag = DynInstChkTag; var DynProtoDefaultOptions = '_dfOpts'; var UnknownValue = '_unknown_'; var str__Proto = "__proto__"; var DynProtoBaseProto = "_dyn" + str__Proto; var DynProtoGlobalSettings = "__dynProto$Gbl"; var DynProtoCurrent = "_dynInstProto"; var strUseBaseInst = 'useBaseInst'; var strSetInstFuncs = 'setInstFuncs'; var Obj = Object; var _objGetPrototypeOf = Obj["getPrototypeOf"]; var _objGetOwnProps = Obj["getOwnPropertyNames"]; var _gbl = getGlobal(); var _gblInst = _gbl[DynProtoGlobalSettings] || (_gbl[DynProtoGlobalSettings] = { o: (_a$4 = {}, _a$4[strSetInstFuncs] = true, _a$4[strUseBaseInst] = true, _a$4), n: 1000 }); function _isObjectOrArrayPrototype(target) { return target && (target === Obj[Prototype] || target === Array[Prototype]); } function _isObjectArrayOrFunctionPrototype(target) { return _isObjectOrArrayPrototype(target) || target === Function[Prototype]; } function _getObjProto$1(target) { var newProto; if (target) { if (_objGetPrototypeOf) { return _objGetPrototypeOf(target); } var curProto = target[str__Proto] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null); newProto = target[DynProtoBaseProto] || curProto; if (!objHasOwnProperty(target, DynProtoBaseProto)) { delete target[DynProtoCurrent]; newProto = target[DynProtoBaseProto] = target[DynProtoCurrent] || target[DynProtoBaseProto]; target[DynProtoCurrent] = curProto; } } return newProto; } function _forEachProp(target, func) { var props = []; if (_objGetOwnProps) { props = _objGetOwnProps(target); } else { for (var name_1 in target) { if (typeof name_1 === "string" && objHasOwnProperty(target, name_1)) { props.push(name_1); } } } if (props && props.length > 0) { for (var lp = 0; lp < props.length; lp++) { func(props[lp]); } } } function _isDynamicCandidate(target, funcName, skipOwn) { return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || objHasOwnProperty(target, funcName)) && funcName !== str__Proto && funcName !== Prototype); } function _throwTypeError(message) { throwTypeError("DynamicProto: " + message); } function _getInstanceFuncs(thisTarget) { var instFuncs = objCreate(null); _forEachProp(thisTarget, function (name) { if (!instFuncs[name] && _isDynamicCandidate(thisTarget, name, false)) { instFuncs[name] = thisTarget[name]; } }); return instFuncs; } function _hasVisited(values, value) { for (var lp = values.length - 1; lp >= 0; lp--) { if (values[lp] === value) { return true; } } return false; } function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) { function _instFuncProxy(target, funcHost, funcName) { var theFunc = funcHost[funcName]; if (theFunc[DynProxyTag] && useBaseInst) { var instFuncTable = target[DynInstFuncTable] || {}; if (instFuncTable[DynAllowInstChkTag] !== false) { theFunc = (instFuncTable[funcHost[DynClassName]] || {})[funcName] || theFunc; } } return function () { return theFunc.apply(target, arguments); }; } var baseFuncs = objCreate(null); _forEachProp(instFuncs, function (name) { baseFuncs[name] = _instFuncProxy(thisTarget, instFuncs, name); }); var baseProto = _getObjProto$1(classProto); var visited = []; while (baseProto && !_isObjectArrayOrFunctionPrototype(baseProto) && !_hasVisited(visited, baseProto)) { _forEachProp(baseProto, function (name) { if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf)) { baseFuncs[name] = _instFuncProxy(thisTarget, baseProto, name); } }); visited.push(baseProto); baseProto = _getObjProto$1(baseProto); } return baseFuncs; } function _getInstFunc(target, funcName, proto, currentDynProtoProxy) { var instFunc = null; if (target && objHasOwnProperty(proto, DynClassName)) { var instFuncTable = target[DynInstFuncTable] || objCreate(null); instFunc = (instFuncTable[proto[DynClassName]] || objCreate(null))[funcName]; if (!instFunc) { _throwTypeError("Missing [" + funcName + "] " + strFunction); } if (!instFunc[DynInstChkTag] && instFuncTable[DynAllowInstChkTag] !== false) { var canAddInst = !objHasOwnProperty(target, funcName); var objProto = _getObjProto$1(target); var visited = []; while (canAddInst && objProto && !_isObjectArrayOrFunctionPrototype(objProto) && !_hasVisited(visited, objProto)) { var protoFunc = objProto[funcName]; if (protoFunc) { canAddInst = (protoFunc === currentDynProtoProxy); break; } visited.push(objProto); objProto = _getObjProto$1(objProto); } try { if (canAddInst) { target[funcName] = instFunc; } instFunc[DynInstChkTag] = 1; } catch (e) { instFuncTable[DynAllowInstChkTag] = false; } } } return instFunc; } function _getProtoFunc(funcName, proto, currentDynProtoProxy) { var protoFunc = proto[funcName]; if (protoFunc === currentDynProtoProxy) { protoFunc = _getObjProto$1(proto)[funcName]; } if (typeof protoFunc !== strFunction) { _throwTypeError("[" + funcName + "] is not a " + strFunction); } return protoFunc; } function _populatePrototype(proto, className, target, baseInstFuncs, setInstanceFunc) { function _createDynamicPrototype(proto, funcName) { var dynProtoProxy = function () { var instFunc = _getInstFunc(this, funcName, proto, dynProtoProxy) || _getProtoFunc(funcName, proto, dynProtoProxy); return instFunc.apply(this, arguments); }; dynProtoProxy[DynProxyTag] = 1; return dynProtoProxy; } if (!_isObjectOrArrayPrototype(proto)) { var instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || objCreate(null); if (!_isObjectOrArrayPrototype(instFuncTable)) { var instFuncs_1 = instFuncTable[className] = (instFuncTable[className] || objCreate(null)); if (instFuncTable[DynAllowInstChkTag] !== false) { instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc; } if (!_isObjectOrArrayPrototype(instFuncs_1)) { _forEachProp(target, function (name) { if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name]) { instFuncs_1[name] = target[name]; delete target[name]; if (!objHasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) { proto[name] = _createDynamicPrototype(proto, name); } } }); } } } } function _checkPrototype(classProto, thisTarget) { if (_objGetPrototypeOf) { var visited = []; var thisProto = _getObjProto$1(thisTarget); while (thisProto && !_isObjectArrayOrFunctionPrototype(thisProto) && !_hasVisited(visited, thisProto)) { if (thisProto === classProto) { return true; } visited.push(thisProto); thisProto = _getObjProto$1(thisProto); } return false; } return true; } function _getObjName(target, unknownValue) { if (objHasOwnProperty(target, Prototype)) { return target.name || unknownValue || UnknownValue; } return (((target || {})[Constructor]) || {}).name || unknownValue || UnknownValue; } function dynamicProto(theClass, target, delegateFunc, options) { if (!objHasOwnProperty(theClass, Prototype)) { _throwTypeError("theClass is an invalid class definition."); } var classProto = theClass[Prototype]; if (!_checkPrototype(classProto, target)) { _throwTypeError("[" + _getObjName(theClass) + "] not in hierarchy of [" + _getObjName(target) + "]"); } var className = null; if (objHasOwnProperty(classProto, DynClassName)) { className = classProto[DynClassName]; } else { className = DynClassNamePrefix + _getObjName(theClass, "_") + "$" + _gblInst.n; _gblInst.n++; classProto[DynClassName] = className; } var perfOptions = dynamicProto[DynProtoDefaultOptions]; var useBaseInst = !!perfOptions[strUseBaseInst]; if (useBaseInst && options && options[strUseBaseInst] !== undefined) { useBaseInst = !!options[strUseBaseInst]; } var instFuncs = _getInstanceFuncs(target); var baseFuncs = _getBaseFuncs(classProto, target, instFuncs, useBaseInst); delegateFunc(target, baseFuncs); var setInstanceFunc = !!_objGetPrototypeOf && !!perfOptions[strSetInstFuncs]; if (setInstanceFunc && options) { setInstanceFunc = !!options[strSetInstFuncs]; } _populatePrototype(classProto, className, target, instFuncs, setInstanceFunc !== false); } dynamicProto[DynProtoDefaultOptions] = _gblInst.o; /*! * NevWare21 Solutions LLC - ts-async, 0.5.4 * https://github.com/nevware21/ts-async * Copyright (c) NevWare21 Solutions LLC and contributors. All rights reserved. * Licensed under the MIT license. */ var STR_PROMISE = "Promise"; var REJECTED = "rejected"; function doAwaitResponse(value, cb) { return doAwait(value, function (value) { return cb ? cb({ status: "fulfilled", rejected: false, value: value }) : value; }, function (reason) { return cb ? cb({ status: REJECTED, rejected: true, reason: reason }) : reason; }); } function doAwait(value, resolveFn, rejectFn, finallyFn) { var result = value; try { if (isPromiseLike(value)) { if (resolveFn || rejectFn) { result = value.then(resolveFn, rejectFn); } } else { try { if (resolveFn) { result = resolveFn(value); } } catch (err) { if (rejectFn) { result = rejectFn(err); } else { throw err; } } } } finally { if (finallyFn) { doFinally(result, finallyFn); } } return result; } function doFinally(value, finallyFn) { var result = value; if (finallyFn) { if (isPromiseLike(value)) { if (value.finally) { result = value.finally(finallyFn); } else { result = value.then(function (value) { finallyFn(); return value; }, function (reason) {