{"version":3,"sources":["webpack:///./node_modules/lodash/_listCacheHas.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/microsoft.bond.io.js","webpack:///./node_modules/lodash/property.js","webpack:///./node_modules/lodash/isSymbol.js","webpack:///./node_modules/lodash/_updateWrapDetails.js","webpack:///./node_modules/lodash/isArguments.js","webpack:///./node_modules/lodash/_createPartial.js","webpack:///./node_modules/lodash/_stackSet.js","webpack:///./node_modules/lodash/stubArray.js","webpack:///./node_modules/lodash/_SetCache.js","webpack:///./node_modules/lodash/_baseIsNaN.js","webpack:///./node_modules/lodash/_coreJsData.js","webpack:///./node_modules/lodash/_insertWrapDetails.js","webpack:///./node_modules/lodash/_setCacheHas.js","webpack:///./node_modules/lodash/curry.js","webpack:///./node_modules/lodash/_toSource.js","webpack:///./node_modules/simplerestclients/dist/utils.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/Enums.js","webpack:///./node_modules/lodash/map.js","webpack:///./node_modules/lodash/_basePropertyDeep.js","webpack:///./node_modules/lodash/memoize.js","webpack:///./node_modules/lodash/_Hash.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTLogManager.js","webpack:///./node_modules/lodash/_hasPath.js","webpack:///./node_modules/lodash/_castPath.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTSemanticContext.js","webpack:///./node_modules/lodash/_createRecurry.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTSerializer.js","webpack:///./node_modules/lodash/_replaceHolders.js","webpack:///./node_modules/lodash/_createWrap.js","webpack:///./node_modules/lodash/_LodashWrapper.js","webpack:///./node_modules/lodash/_isPrototype.js","webpack:///./node_modules/lodash/_baseProperty.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/DataModels.js","webpack:///./node_modules/lodash/_stackClear.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTLogManagerSettings.js","webpack:///./node_modules/lodash/keys.js","webpack:///./node_modules/lodash/_mapToArray.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTEventProperties.js","webpack:///./node_modules/lodash/_shortOut.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/Utils.js","webpack:///./node_modules/lodash/_setData.js","webpack:///./node_modules/lodash/_toKey.js","webpack:///./node_modules/lodash/_isKey.js","webpack:///./node_modules/style-loader/lib/urls.js","webpack:///./node_modules/lodash/_baseKeys.js","webpack:///./node_modules/lodash/_getRawTag.js","webpack:///./node_modules/lodash/stubFalse.js","webpack:///./node_modules/lodash/_arrayPush.js","webpack:///./node_modules/lodash/_isStrictComparable.js","webpack:///./node_modules/lodash/_strictIndexOf.js","webpack:///./node_modules/lodash/_getNative.js","webpack:///./node_modules/lodash/isBuffer.js","webpack:///./node_modules/lodash/_isMasked.js","webpack:///./node_modules/lodash/_getFuncName.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AriaSDK.js","webpack:///./node_modules/lodash/_createCtor.js","webpack:///./node_modules/lodash/_isKeyable.js","webpack:///./node_modules/lodash/isObjectLike.js","webpack:///./node_modules/simplerestclients/dist/GenericRestClient.js","webpack:///./node_modules/lodash/_baseMatchesProperty.js","webpack:///./node_modules/lodash/_stringToPath.js","webpack:///./node_modules/lodash/isObject.js","webpack:///./node_modules/lodash/_mapCacheSet.js","webpack:///./node_modules/lodash/_equalByTag.js","webpack:///./node_modules/lodash/_Promise.js","webpack:///./node_modules/lodash/_hashDelete.js","webpack:///./node_modules/lodash/_memoizeCapped.js","webpack:///./node_modules/css-loader/lib/css-base.js","webpack:///./node_modules/lodash/_matchesStrictComparable.js","webpack:///./node_modules/lodash/_baseForOwn.js","webpack:///./node_modules/lodash/_Uint8Array.js","webpack:///./node_modules/lodash/_mapCacheGet.js","webpack:///./node_modules/lodash/_hashSet.js","webpack:///./node_modules/lodash/_baseIsArguments.js","webpack:///./node_modules/lodash/_realNames.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTHttpManager.js","webpack:///./node_modules/lodash/_baseHasIn.js","webpack:///./node_modules/lodash/_getData.js","webpack:///./node_modules/lodash/_listCacheClear.js","webpack:///./node_modules/lodash/_objectToString.js","webpack:///./node_modules/lodash/wrapperLodash.js","webpack:///./node_modules/lodash/_baseFindIndex.js","webpack:///./node_modules/lodash/_root.js","webpack:///./node_modules/lodash/_stackDelete.js","webpack:///./node_modules/lodash/_arrayFilter.js","webpack:///./node_modules/lodash/_composeArgsRight.js","webpack:///./node_modules/lodash/isArrayLike.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/microsoft.bond.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTRetryPolicy.js","webpack:///./node_modules/lodash/_getSymbols.js","webpack:///./node_modules/lodash/_isLaziable.js","webpack:///./node_modules/lodash/_baseIsNative.js","webpack:///./node_modules/simplerestclients/index.js","webpack:///./node_modules/lodash/_getValue.js","webpack:///./node_modules/lodash/_baseGetTag.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTStatsManager.js","webpack:///./node_modules/lodash/_defineProperty.js","webpack:///./node_modules/lodash/_getMatchData.js","webpack:///./node_modules/lodash/_WeakMap.js","webpack:///./node_modules/lodash/_copyArray.js","webpack:///./node_modules/lodash/_getMapData.js","webpack:///./node_modules/lodash/_arraySome.js","webpack:///./node_modules/lodash/_getTag.js","webpack:///./node_modules/lodash/_baseIndexOf.js","webpack:///./node_modules/lodash/_baseLodash.js","webpack:///./node_modules/lodash/_createCurry.js","webpack:///./node_modules/lodash/_baseEach.js","webpack:///./node_modules/lodash/_hashClear.js","webpack:///./node_modules/lodash/toInteger.js","webpack:///./node_modules/lodash/_setWrapToString.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTLogger.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/Version.js","webpack:///./node_modules/lodash/_baseTimes.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/lodash/_nativeKeys.js","webpack:///./node_modules/lodash/_getHolder.js","webpack:///./node_modules/lodash/_stackHas.js","webpack:///./node_modules/lodash/_freeGlobal.js","webpack:///./node_modules/lodash/_ListCache.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/lodash/_nativeCreate.js","webpack:///./node_modules/lodash/_LazyWrapper.js","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/lodash/isArray.js","webpack:///./node_modules/lodash/_listCacheSet.js","webpack:///./node_modules/lodash/toFinite.js","webpack:///./node_modules/lodash/_baseMatches.js","webpack:///./node_modules/lodash/_baseGet.js","webpack:///./node_modules/lodash/_createHybrid.js","webpack:///./node_modules/lodash/_metaMap.js","webpack:///./node_modules/style-loader/lib/addStyles.js","webpack:///./node_modules/lodash/_listCacheDelete.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/Enums.js","webpack:///./node_modules/lodash/_arrayLikeKeys.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/microsoft.bond.floatutils.js","webpack:///./node_modules/lodash/isTypedArray.js","webpack:///./node_modules/lodash/_baseFor.js","webpack:///./node_modules/lodash/constant.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTTransmissionManagerCore.js","webpack:///./node_modules/lodash/_baseIsTypedArray.js","webpack:///./node_modules/lodash/_baseCreate.js","webpack:///./node_modules/lodash/toString.js","webpack:///./node_modules/lodash/_MapCache.js","webpack:///./node_modules/lodash/_baseIsEqualDeep.js","webpack:///./node_modules/lodash/_arrayMap.js","webpack:///./node_modules/lodash/_Map.js","webpack:///./node_modules/lodash/_hashHas.js","webpack:///./node_modules/lodash/_mapCacheClear.js","webpack:///./node_modules/lodash/_baseGetAllKeys.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/microsoft.bond.primitives.js","webpack:///./node_modules/lodash/_Stack.js","webpack:///./node_modules/lodash/_setCacheAdd.js","webpack:///./node_modules/lodash/_stackGet.js","webpack:///./node_modules/lodash/_arrayEach.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/microsoft.bond.utils.js","webpack:///./node_modules/lodash/_apply.js","webpack:///./node_modules/lodash/hasIn.js","webpack:///./node_modules/lodash/_createBind.js","webpack:///./node_modules/lodash/_arrayIncludes.js","webpack:///./node_modules/lodash/_mapCacheDelete.js","webpack:///./node_modules/simplerestclients/dist/SimpleWebRequest.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTAutoCollection.js","webpack:///./node_modules/lodash/_overArg.js","webpack:///./node_modules/lodash/_baseMap.js","webpack:///./node_modules/lodash/_createBaseEach.js","webpack:///./node_modules/lodash/isFunction.js","webpack:///./node_modules/lodash/eq.js","webpack:///./node_modules/lodash/_baseIsMatch.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTKillSwitch.js","webpack:///./node_modules/lodash/_createBaseFor.js","webpack:///./node_modules/lodash/_nodeUtil.js","webpack:///./node_modules/lodash/get.js","webpack:///./node_modules/lodash/_Symbol.js","webpack:///./node_modules/simplerestclients/dist/ExponentialTime.js","webpack:///./node_modules/lodash/_equalArrays.js","webpack:///./node_modules/lodash/_baseSetToString.js","webpack:///./node_modules/lodash/_mapCacheHas.js","webpack:///./node_modules/simplerestclients/dist/SimpleRestClients.js","webpack:///./node_modules/lodash/_reorder.js","webpack:///./node_modules/lodash/_mergeData.js","webpack:///./node_modules/lodash/_getAllKeys.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/microsoft.bond.encoding.js","webpack:///./node_modules/lodash/_setToArray.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTQueueManager.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/bond/bond_const.js","webpack:///./node_modules/lodash/_baseSetData.js","webpack:///./node_modules/lodash/_baseUnary.js","webpack:///./node_modules/lodash/_equalObjects.js","webpack:///./node_modules/lodash/isLength.js","webpack:///./node_modules/lodash/_countHolders.js","webpack:///./node_modules/lodash/toNumber.js","webpack:///./node_modules/lodash/_listCacheGet.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTRecordBatcher.js","webpack:///./node_modules/lodash/_DataView.js","webpack:///./node_modules/lodash/_hashGet.js","webpack:///./node_modules/lodash/_getWrapDetails.js","webpack:///./node_modules/lodash/_baseIteratee.js","webpack:///./node_modules/lodash/noop.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTNotificationManager.js","webpack:///./node_modules/lodash/_baseIsEqual.js","webpack:///./node_modules/lodash/_isIndex.js","webpack:///./node_modules/lodash/_setToString.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/common/AWTClockSkewManager.js","webpack:///./node_modules/lodash/_wrapperClone.js","webpack:///./node_modules/@aria/webjs-sdk/dist/src/webjs/AWTTransmissionManager.js","webpack:///./node_modules/lodash/_cacheHas.js","webpack:///./node_modules/lodash/_assocIndexOf.js","webpack:///./node_modules/lodash/_composeArgs.js","webpack:///./node_modules/lodash/_Set.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/synctasks/dist/SyncTasks.js","webpack:///./node_modules/lodash/identity.js","webpack:///./node_modules/lodash/_baseToString.js"],"names":["assocIndexOf","module","exports","key","this","__data__","Object","defineProperty","value","microsoft_bond_primitives_1","MemoryStream","_buffer","prototype","_WriteByte","byte","push","Number","_ToByte","_Write","buffer","offset","count","_GetBuffer","baseProperty","basePropertyDeep","isKey","toKey","path","baseGetTag","isObjectLike","arrayEach","arrayIncludes","wrapFlags","details","bitmask","pair","sort","baseIsArguments","objectProto","hasOwnProperty","propertyIsEnumerable","isArguments","arguments","call","apply","createCtor","root","func","thisArg","partials","isBind","Ctor","wrapper","argsIndex","argsLength","length","leftIndex","leftLength","args","Array","fn","ListCache","Map","MapCache","data","pairs","LARGE_ARRAY_SIZE","size","set","setCacheAdd","setCacheHas","SetCache","values","index","add","has","coreJsData","reWrapComment","source","lastIndex","join","replace","createWrap","curry","arity","guard","result","undefined","placeholder","funcToString","Function","toString","e","__assign","assign","t","s","i","n","p","assert","cond","message","Error","isObject","isString","attempt","_i","remove","array","splice","clone","isArray","map","keys","reduce","res","_a","AWTPropertyType","AWTPiiKind","AWTCustomerContentKind","AWTEventPriority","AWTEventsDroppedReason","AWTEventsRejectedReason","arrayMap","baseIteratee","baseMap","collection","iteratee","baseGet","object","memoize","resolver","TypeError","memoized","cache","get","Cache","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entries","clear","entry","Enums_1","Enums_2","AWTLogManagerSettings_1","AWTLogger_1","AWTTransmissionManagerCore_1","AWTNotificationManager_1","AWTAutoCollection_1","AWTLogManager","initialize","tenantToken","configuration","_isInitialized","default","defaultTenantToken","_overrideValuesFromConfig","_config","disableCookiesUsage","propertyStorageOverride","sessionEnabled","addPropertyStorageOverride","autoCollect","semanticContext","userAgent","loggingEnabled","enableAutoUserSession","getLogger","logSession","AWTSessionState","Started","window","addEventListener","flushAndTeardown","getSemanticContext","flush","callback","_isDestroyed","Ended","pauseTransmission","resumeTransmision","setTransmitProfile","profileName","loadTransmitProfiles","profiles","setContext","name","type","Unspecified","logManagerContext","setProperty","setContextWithPii","pii","setPropertyWithPii","setContextWithCustomerContent","customerContent","setPropertyWithCustomerContent","_loggers","addNotificationListener","listener","removeNotificationListener","config","collectorUri","cacheMemorySizeLimitInNumberOfEvents","httpXHROverride","sendPOST","getProperty","canSendStatEvent","clockSkewRefreshDurationInMins","eventName","castPath","isIndex","isLength","hasFunc","stringToPath","AWTSemanticContext","_allowDeviceFields","_properties","setAppId","appId","_addContext","setAppVersion","appVersion","setAppLanguage","appLanguage","setDeviceId","deviceId","checkAndSaveDeviceId","setDeviceOsName","deviceOsName","setDeviceOsVersion","deviceOsVersion","setDeviceBrowserName","deviceBrowserName","setDeviceBrowserVersion","deviceBrowserVersion","setDeviceMake","deviceMake","setDeviceModel","deviceModel","setUserId","userId","userIdType","isNaN","inferredUserIdType","SipAddress","AWTUserIdType","PhoneNumber","SmtpAddress","EmailAddress","Unknown","NotSet","Skype","Identity","_addContextWithPii","setUserAdvertisingId","userAdvertisingId","setUserTimeZone","userTimeZone","setUserLanguage","userLanguage","isLaziable","setData","setWrapToString","wrapFunc","holders","argPos","ary","isCurry","newData","Bond","Utils","AWTSerializer","getPayloadBlob","requestDictionary","tokenCount","remainingRequest","stream","IO","writer","CompactBinaryProtocolWriter","token","_WriteFieldBegin","_BondDataType","_BT_MAP","_WriteMapContainerBegin","_BT_STRING","_BT_LIST","_WriteString","dataPackage","_WriteContainerBegin","_BT_STRUCT","newGuid","_BT_INT64","_WriteInt64","numberToBondInt64","Date","now","dpSizePos","dpSizeSerialized","currentStreamPos","writeEvent","eventsRejected","SizeLimitExceeded","_addNewDataPackageSize","_WriteStructEnd","payloadBlob","oldDpSize","streamPos","newRecordCountSerialized","_Encoding","_Varint_GetBytes","_ToUInt32","j","slice","eventData","id","timestamp","propsString","propStringCount","propsInt64","propInt64Count","propsDouble","propDoubleCount","propsBool","propBoolCount","propsDate","propDateCount","piiProps","piiPropCount","ccProps","ccPropCount","properties","property","cc","String","Int64","Double","Boolean","_BT_INT32","_WriteInt32","_BT_BOOL","_WriteBool","_BT_DOUBLE","_WriteDouble","base64Encode","_Base64_GetString","resIndex","baseSetData","createBind","createCurry","createHybrid","createPartial","getData","mergeData","toInteger","nativeMax","Math","max","isBindKey","partialsRight","holdersRight","baseCreate","baseLodash","LodashWrapper","chainAll","__wrapped__","__actions__","__chain__","__index__","__values__","constructor","AWT_REAL_TIME","AWT_NEAR_REAL_TIME","AWT_BEST_EFFORT","AWTEventProperties_1","AWTSemanticContext_1","AWTLogManagerSettings","arrayLikeKeys","baseKeys","isArrayLike","forEach","AWTEventProperties","_event","setName","getName","setType","getType","setTimestamp","timestampInEpochMillis","getTimestamp","setEventPriority","priority","getEventPriority","sanitizeProperty","getPropertyMap","getEvent","nativeNow","lastCalled","stamp","remaining","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","noop","nextTick","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","GuidRegex","EventNameAndTypeRegex","EventNameDotRegex","PropertyNameRegex","StatsApiKey","beaconsSupported","uInt8ArraySupported","useXDR","isNumber","isBoolean","isDate","msToTicks","timeInMs","isReactNative","navigator","product","twoDigit","isNotDefined","bond_value","low","high","floor","c","r","random","getTenantId","apiKey","indexTenantId","indexOf","substring","isBeaconsSupported","sendBeacon","isUint8ArrayAvailable","Uint8Array","ua","toLowerCase","isSafariOrFirefox","isPriority","test","isPropertyType","getCorrectType","NaN","getTime","sanitizePropertyType","isPii","isCustomerContent","getISOString","date","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","threeDigit","getUTCMilliseconds","useXDomainRequest","conn","XMLHttpRequest","withCredentials","XDomainRequest","shortOut","isSymbol","reIsDeepProp","reIsPlainProp","css","location","baseUrl","protocol","host","currentDir","pathname","fullMatch","origUrl","newUrl","unquotedOrigUrl","trim","o","$1","JSON","stringify","isPrototype","nativeKeys","Symbol","nativeObjectToString","symToStringTag","toStringTag","isOwn","tag","unmasked","fromIndex","baseIsNative","getValue","stubFalse","freeExports","nodeType","freeModule","Buffer","isBuffer","uid","maskSrcKey","exec","IE_PROTO","realNames","otherFunc","DataModels_1","AWTLogger","AWTLogManager_1","AWTTransmissionManager_1","AWTTransmissionManager","AWTSerializer_1","AWT_COLLECTOR_URL_UNITED_STATES","AWT_COLLECTOR_URL_GERMANY","AWT_COLLECTOR_URL_JAPAN","AWT_COLLECTOR_URL_AUSTRALIA","AWT_COLLECTOR_URL_EUROPE","AWT_COLLECTOR_URL_USGOV_DOD","AWT_COLLECTOR_URL_USGOV_DOJ","thisBinding","utils_1","SimpleWebRequest_1","GenericRestClient","endpointUrl","_defaultOptions","excludeEndpointUrl","retries","_endpointUrl","_performApiCall","apiPath","action","objToPost","givenOptions","_this","options","sendData","eTag","augmentHeaders","contentType","finalUrl","SimpleWebRequest","_getHeaders","_blockRequestUntil","start","then","response","_processSuccessResponse","resp","performApiGet","performApiGetDetailed","body","performApiPost","performApiPostDetailed","performApiPatch","objToPatch","performApiPatchDetailed","performApiPut","objToPut","performApiPutDetailed","performApiDelete","objToDelete","performApiDeleteDetailed","baseIsEqual","hasIn","isStrictComparable","matchesStrictComparable","srcValue","objValue","COMPARE_PARTIAL_FLAG","memoizeCapped","rePropName","reEscapeChar","string","charCodeAt","match","number","quote","subString","getMapData","eq","equalArrays","mapToArray","setToArray","symbolProto","symbolValueOf","valueOf","other","customizer","equalFunc","stack","byteLength","byteOffset","convert","isPartial","stacked","Promise","getNative","useSourceMap","list","item","content","cssMapping","btoa","sourceMapping","sourceMap","unescape","encodeURIComponent","sourceURLs","sources","sourceRoot","cssWithMappingToString","modules","mediaQuery","alreadyImportedModules","baseFor","nativeCreate","AWTRetryPolicy_1","AWTKillSwitch_1","AWTClockSkewManager_1","Version","AWTHttpManager","_requestQueue","collectorUrl","_queueManager","_httpInterface","_urlString","FullVersionString","_killSwitch","_paused","_useBeacons","_activeConnections","_clockSkewManager","urlString","ontimeout","onerror","onload","sync","xdr","open","send","fetch","method","headerMap","headers","status","catch","error","xhr_1","_convertAllHeadersToMap","getAllResponseHeaders","hasIdleConnection","sendQueuedRequests","allowRequestSending","_sendRequest","shift","scheduleTimer","isCompletelyIdle","teardown","pause","resume","removeQueuedRequests","sendSynchronousRequest","request","High","retryCount","isTeardown","isSynchronous","addBackRequest","tokenCount_1","apikey_1","isTenantKilled","KillSwitch","payloadResult","shouldAddClockSkewHeaders","getClockSkewHeaderValue","sendAttempt","_retryRequestIfNeeded","_handleRequestFinished","apikey","shouldRetry","killedTokens","setKillSwitchTenants","setClockSkew","shouldRetryForStatus","eventsRetrying","getMillisToBackoffForRetry","backOffTransmission","success","clearBackOff","eventsSent","eventsDropped","NonRetryableStatus","headersString","headersArray","split","header","metaMap","LazyWrapper","wrapperClone","lodash","predicate","fromRight","freeGlobal","freeSelf","self","isCurried","holdersIndex","holdersLength","rightIndex","rightLength","rangeLength","isUncurried","isFunction","bond_const_1","UInt64","_stream","_WriteBlob","blob","elementType","_WriteUInt8","_WriteUInt32","keyType","valueType","_Double_GetBytes","metadata","_Zigzag_EncodeZigzag32","_WriteUInt64","_Zigzag_EncodeZigzag64","_Utf8_GetBytes","isBase","_BT_STOP_BASE","_BT_STOP","_Varint64_GetBytes","_ToUInt8","AWTRetryPolicy","httpStatusCode","retriesSoFar","waitDuration","randomBackoff","BaseBackoff","pow","min","arrayFilter","stubArray","nativeGetSymbols","getOwnPropertySymbols","getSymbols","symbol","getFuncName","funcName","isMasked","toSource","reIsHostCtor","funcProto","reIsNative","RegExp","getRawTag","objectToString","AWTStatsManager","sendStats","_sendStats","_isInitalized","events","_addStat","reason","QueueFull","InvalidEvent","eventReceived","tenantId","_stats","statName","WeakMap","isKeyable","DataView","Set","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ArrayBuffer","resolve","ctorString","baseFindIndex","baseIsNaN","strictIndexOf","createRecurry","getHolder","replaceHolders","baseForOwn","baseEach","createBaseEach","toFinite","remainder","getWrapDetails","insertWrapDetails","setToString","updateWrapDetails","reference","AWTStatsManager_1","_apiKey","_contextProperties","_semanticContext","_sessionStartTime","_createInitId","logEvent","event","sanitizeProperties","_logEvent","_getInternalEvent","state","sessionEvent","_addPropertiesToEvent","_sessionId","sessionDurationSec","_getSessionDurationFromTime","firstLaunchTime","getSessionId","logFailure","signature","detail","category","failureEvent","logPageView","pageName","uri","referrerUri","pageViewEvent","_initIdMap","propertiesEvent","name_1","timeInSec","eventWithMetaData","contextProperties","_addContextIfAbsent","_setDefaultProperty","_getInitId","_getSequenceId","toISOString","Normal","_sendEvent","name_2","sendEvent","name_3","internalEvent","_sequenceIdMap","Timeout","clearFn","_id","_clearFn","scope","setInterval","clearInterval","close","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","setImmediate","global","clearImmediate","overArg","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","document","attachTo","getPrototypeOf","handle","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","port2","createElement","documentElement","script","onreadystatechange","removeChild","appendChild","attachEvent","task","__dir__","__filtered__","__iteratees__","__takeCount__","__views__","webpackPolyfill","deprecate","paths","children","enumerable","l","toNumber","baseIsMatch","getMatchData","matchData","composeArgs","composeArgsRight","countHolders","reorder","isAry","isFlip","holdersCount","newHolders","reverse","memo","stylesInDom","isOldIE","all","atob","getTarget","target","querySelector","getElement","styleTarget","HTMLIFrameElement","contentDocument","head","singleton","singletonCounter","stylesInsertedAtTop","fixUrls","addStylesToDom","styles","domStyle","refs","parts","addStyle","listToStyles","newStyles","base","part","media","insertStyleElement","style","insertInto","lastStyleElementInsertedAtTop","insertAt","nextSibling","insertBefore","firstChild","before","removeStyleElement","parentNode","idx","createStyleElement","attrs","addAttrs","el","setAttribute","obj","update","transform","styleIndex","applyToSingletonTag","bind","URL","createObjectURL","revokeObjectURL","Blob","link","rel","createLinkElement","updateLink","href","applyToTag","newObj","DEBUG","newList","mayRemove","textStore","replaceText","replacement","filter","styleSheet","cssText","cssNode","createTextNode","childNodes","autoFixUrls","convertToAbsoluteUrls","oldSrc","pop","baseTimes","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","FloatUtils","_ConvertNumberToArray","num","isDouble","_doubleZero","_floatZero","precisionBits","bias","minExponent","maxExponent","sign","abs","intPart","floatPart","firstBit","exponent","lastBit","_doubleNegInifinity","_floatNegInifinity","_doubleInifinity","_floatInifinity","baseIsTypedArray","baseUnary","nodeUtil","nodeIsTypedArray","createBaseFor","AWTQueueManager_1","AWTTransmissionManagerCore","setEventsHandler","eventsHandler","_eventHandler","getEventsHandler","timer","_profiles","_currentProfile","_timeout","hasEvents","_currentBackoffCount","_batchAndSendEvents","_timerCount","_newEventsAllowed","_initializeProfiles","stats","event_1","statKey","_resetTransmitProfiles","timerMultiplier","ceil","Immediate_sync","addEvent","currentTime","_lastUploadNowCall","uploadNow","resumeTransmission","Low","sendEventsForPriorityAndAbove","typedArrayTags","objectCreate","create","proto","baseToString","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","Stack","equalByTag","equalObjects","objectTag","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","arrayPush","keysFunc","symbolsFunc","numberStr","parseInt","_Equals","tmp","_ToInt32","stackClear","stackDelete","stackGet","stackHas","stackSet","BrowserChecker","_IsDataViewSupport","baseHasIn","hasPath","baseIndexOf","extendStatics","__extends","d","b","setPrototypeOf","__proto__","__","WebRequestPriority","ErrorHandlingType","SyncTasks","ExponentialTime_1","isJsonContentType","ct","DefaultErrorHandler","webRequest","errResp","canceled","statusCode","DoNotRetry","RetryCountedWithBackoff","DefaultOptions","SimpleWebRequestOptions","MaxSimultaneousRequests","HungRequestCleanupIntervalMs","timeoutMs","hungRequestCleanupTimer","requestQueue","blockedList","executingList","onLoadErrorSupportStatus","timeoutSupportStatus","SimpleWebRequestBase","_action","_url","_aborted","_timedOut","_created","_finishHandled","_retryExponentialTime","ExponentialTime","_options","getPriority","DontCare","checkQueueProcessing","_loop_1","req","Resolved","finally","_scheduleHungRequestCleanupIfNeeded","_fire","_enqueue","err","_respond","_hungRequestCleanupTimerCallback","_removeFromQueue","_assertAndClean","expression","console","_xhr","_xhrRequestHeaders","openError","timeoutSupported_1","_requestTimeoutTimer","abort","onLoadErrorSupported","readyState","streamingDownloadProgress","responseText","onabort","upload","onProgress","onprogress","acceptType","responseType","customResponseType","_getResponseType","responseTypeError","_setRequestHeader","mapContentType","nextHeaders","getRequestHeaders","headersCheck","headerLower","warn","mapBody","xhr","xhrRequestHeaders","val","setRequestHeader","params_1","param","isFormDataContentType","formData_1","FormData","params_2","append","setUrl","setHeader","overrideGetHeaders","getOptions","setPriority","newPriority","resumeRetrying","findIndex","_super","url","getHeaders","blockRequestUntil","_retryTimer","_deferred","Rejected","Defer","onCancel","promise","errorStatusText","statusText","responseParsingException","line","substr","check","getResponseHeader","parse","ex","responseURL","requestOptions","requestHeaders","timedOut","augmentErrorResponse","handleResponse","customErrorHandler","PauseUntilResumed","RetryUncountedImmediately","RetryUncountedWithBackoff","getTimeAndCalculateNext","reject","DEVICE_ID_COOKIE","FIRSTLAUNCHTIME_COOKIE","BROWSERS","OPERATING_SYSTEMS","OSNAMEREGEX","VERSION_MAPPINGS","AWTAutoCollection","propertyStorage","_propertyStorage","disableCookies","_disableCookies","_autoCollect","_autoCollectFromUserAgent","_deleteCookie","_areCookiesAvailable","_autoCollectDeviceId","oldDeviceId","_getData","flt","_saveData","_setFirstLaunchTime","lang","language","timeZone","getTimezoneOffset","minutes","hours","timeZonePrefix","browserName","_getBrowserName","_getBrowserVersion","osName","_getOsName","_getOsVersion","_userAgentContainsString","fltDate","setTime","searchString","_getIeVersion","_getOtherVersion","classicIeVersionMatches","ieVersionMatches","browserString","matches","_getGenericOsVersion","_getMacOsxVersion","ntVersionMatches","macOsxVersionInUserAgentMatches","versionString","delimiter","_getDelimiter","expires","toUTCString","cookie","ca","charAt","arg","eachFunc","iterable","noCustomizer","AWTKillSwitch","_killedTokenDictionary","killTokens","killDuration","durationMs","props","freeProcess","types","require","defaultValue","DEFAULT_TIME_GROW_FACTOR","DEFAULT_TIME_JITTER","_initialTime","_maxTime","_growFactor","_jitterFactor","reset","_incrementCount","_currentTime","round","getIncrementCount","calculateNext","delay","arraySome","cacheHas","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","constant","identity","baseSetToString","__export","m","copyArray","nativeMin","indexes","oldArray","srcBitmask","newBitmask","isCommon","isCombo","baseGetAllKeys","microsoft_bond_floatutils_1","microsoft_bond_utils_1","char","inArray","lookup","output","paddingBytes","length_1","temp","temp2","view","setFloat64","getUint8","tmpH","tmpL","AWTHttpManager_1","AWTRecordBatcher_1","AWTQueueManager","_queueSizeLimit","xhrOverride","_isCurrentlyUploadingNow","_uploadNowQueue","_shouldDropEventsOnPause","_queueSize","_outboundQueue","_inboundQueues","_addEmptyQueues","_batcher","_httpManager","addEventToBatch","_dropEventWithPriorityOrLess","_addEventToProperQueue","_batchEvents","hasBatch","_uploadNow","shouldDropEventsOnPause","_removeFirstQueues","currentPriority","priorityToProcess","flushBatch","_checkOutboundQueueEmptyAndSent","getAllKeys","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","isBinary","AWTRecordBatcher","_maxNumberOfEvents","_currentBatch","_currentNumEventsInBatch","immediateBatch","reWrapDetails","reSplitDetails","baseMatches","baseMatchesProperty","AWTNotificationManager","this_1","_loop_2","this_2","_loop_3","this_3","_loop_4","this_4","baseIsEqualDeep","reIsUint","AWTClockSkewManager","_reset","_isFirstRequest","_clockSkewSet","_allowRequestSending","_shouldAddClockSkewHeaders","_clockSkewHeaderValue","timeDeltaInMillis","g","isThenable","isCancelable","cancel","trier","catcher","catchExceptions","exceptionsToConsole","traceEnabled","exceptionHandler","unhandledErrorHandler","fromThenable","thenable","deferred","thenAsync","x","Internal","asyncCallbacks","useSetImmediate","asyncCallback","resolveAsyncCallbacks","savedCallbacks","SyncTask","race","items","outTask","hasSettled","cancelOtherInternal","_completedSuccess","_completedFail","_traceEnabled","_cancelCallbacks","_wasCanceled","_wasExplicitlyCanceled","_resolving","_storedCallbackSets","_mustHandleError","_addCallbackSet","callbackWillChain","context","wasCanceled","cancelContext","_cancelInternal","_resolveSuccesses","_resolveFailures","_cancelContext","successFunc","errorFunc","failFunc","always","setTracingEnabled","enabled","done","fail","_checkState","_storedResolution","_storedErrResolution","_enforceErrorHandled","_completeStack","_rejectedTasks","_enforceErrorHandledTimer","rejectedTasks","rejectedTask","callbacks","_resolveSuccessCallback","ret","_handleException","_resolveFailureCallback","toEs6Promise","foundError","countRemaining","results","checkFinish","raceTimer","timeMs","timerDef","symbolToString"],"mappings":"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","file":"js/vendors~meetings~meetnow~mnJoin.5f29362f8ed441139294.js","sourcesContent":["var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* microsoft.bond.io.ts\r\n* Copyright: Microsoft 2016\r\n*/\r\nvar microsoft_bond_primitives_1 = require(\"./microsoft.bond.primitives\");\r\nvar MemoryStream = /** @class */ (function () {\r\n function MemoryStream() {\r\n this._buffer = [];\r\n }\r\n /*override*/\r\n MemoryStream.prototype._WriteByte = function (byte) {\r\n this._buffer.push(microsoft_bond_primitives_1.Number._ToByte(byte));\r\n };\r\n /*override*/\r\n MemoryStream.prototype._Write = function (buffer, offset, count) {\r\n while (count--) {\r\n this._WriteByte(buffer[offset++]);\r\n }\r\n };\r\n /**\r\n * Returns the array of unsigned bytes from which this stream was created.\r\n */\r\n MemoryStream.prototype._GetBuffer = function () {\r\n return this._buffer;\r\n };\r\n return MemoryStream;\r\n}());\r\nexports.MemoryStream = MemoryStream;\r\n","var baseProperty = require('./_baseProperty'),\n basePropertyDeep = require('./_basePropertyDeep'),\n isKey = require('./_isKey'),\n toKey = require('./_toKey');\n\n/**\n * Creates a function that returns the value at `path` of a given object.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n * @example\n *\n * var objects = [\n * { 'a': { 'b': 2 } },\n * { 'a': { 'b': 1 } }\n * ];\n *\n * _.map(objects, _.property('a.b'));\n * // => [2, 1]\n *\n * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');\n * // => [1, 2]\n */\nfunction property(path) {\n return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);\n}\n\nmodule.exports = property;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var arrayEach = require('./_arrayEach'),\n arrayIncludes = require('./_arrayIncludes');\n\n/** Used to compose bitmasks for function metadata. */\nvar WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n/** Used to associate wrap methods with their bit flags. */\nvar wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n];\n\n/**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\nfunction updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n}\n\nmodule.exports = updateWrapDetails;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","var apply = require('./_apply'),\n createCtor = require('./_createCtor'),\n root = require('./_root');\n\n/** Used to compose bitmasks for function metadata. */\nvar WRAP_BIND_FLAG = 1;\n\n/**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\nfunction createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n}\n\nmodule.exports = createPartial;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n","/**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\nfunction baseIsNaN(value) {\n return value !== value;\n}\n\nmodule.exports = baseIsNaN;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","/** Used to match wrap detail comments. */\nvar reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/;\n\n/**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\nfunction insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n}\n\nmodule.exports = insertWrapDetails;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","var createWrap = require('./_createWrap');\n\n/** Used to compose bitmasks for function metadata. */\nvar WRAP_CURRY_FLAG = 8;\n\n/**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\nfunction curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n}\n\n// Assign default placeholders.\ncurry.placeholder = {};\n\nmodule.exports = curry;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","\"use strict\";\n/**\n * utils.ts\n * Copyright: Microsoft 2019\n */\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assert = function (cond, message) {\n if (!cond) {\n throw new Error(message);\n }\n};\nexports.isObject = function (value) { return (value !== null && typeof value === 'object'); };\nexports.isString = function (value) { return (typeof value === 'string'); };\nexports.attempt = function (func) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n try {\n return func.apply(void 0, args);\n }\n catch (e) {\n return new Error(e);\n }\n};\nexports.remove = function (array, value) {\n for (var i = array.length - 1; i >= 0; i--) {\n if (array[i] === value) {\n array.splice(i, 1);\n }\n }\n};\nexports.clone = function (value) {\n if (Array.isArray(value)) {\n return value.map(exports.clone);\n }\n if (exports.isObject(value)) {\n return Object.keys(value)\n .reduce(function (res, key) {\n var _a;\n return (__assign(__assign({}, res), (_a = {}, _a[key] = exports.clone(value[key]), _a)));\n }, {});\n }\n return value;\n};\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* Enums.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n* File containing the enums.\r\n*/\r\n/**\r\n * The AWTPropertyType enumeration contains a set of values that specify types of properties.\r\n * @enum {number}\r\n */\r\nvar AWTPropertyType;\r\n(function (AWTPropertyType) {\r\n /**\r\n * Property type is unspecified.\r\n */\r\n AWTPropertyType[AWTPropertyType[\"Unspecified\"] = 0] = \"Unspecified\";\r\n /**\r\n * A string.\r\n */\r\n AWTPropertyType[AWTPropertyType[\"String\"] = 1] = \"String\";\r\n /**\r\n * A 64-bit integer.\r\n */\r\n AWTPropertyType[AWTPropertyType[\"Int64\"] = 2] = \"Int64\";\r\n /**\r\n * A double.\r\n */\r\n AWTPropertyType[AWTPropertyType[\"Double\"] = 3] = \"Double\";\r\n /**\r\n * A boolean.\r\n */\r\n AWTPropertyType[AWTPropertyType[\"Boolean\"] = 4] = \"Boolean\";\r\n /**\r\n * A date.\r\n */\r\n AWTPropertyType[AWTPropertyType[\"Date\"] = 5] = \"Date\";\r\n})(AWTPropertyType = exports.AWTPropertyType || (exports.AWTPropertyType = {}));\r\n/**\r\n * The AWTPiiKind enumeration contains a set of values that specify the kind of PII (Personal Identifiable Information).\r\n * @enum {number}\r\n */\r\nvar AWTPiiKind;\r\n(function (AWTPiiKind) {\r\n /**\r\n * No kind.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"NotSet\"] = 0] = \"NotSet\";\r\n /**\r\n * An LDAP distinguished name. For example, CN=Jeff Smith,OU=Sales,DC=Fabrikam,DC=COM.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"DistinguishedName\"] = 1] = \"DistinguishedName\";\r\n /**\r\n * Generic information.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"GenericData\"] = 2] = \"GenericData\";\r\n /**\r\n * An IPV4 Internet address. For example, 192.0.2.1.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"IPV4Address\"] = 3] = \"IPV4Address\";\r\n /**\r\n * An IPV6 Internet address. For example, 2001:0db8:85a3:0000:0000:8a2e:0370:7334.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"IPv6Address\"] = 4] = \"IPv6Address\";\r\n /**\r\n * The Subject of an e-mail message.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"MailSubject\"] = 5] = \"MailSubject\";\r\n /**\r\n * A telephone number.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"PhoneNumber\"] = 6] = \"PhoneNumber\";\r\n /**\r\n * A query string.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"QueryString\"] = 7] = \"QueryString\";\r\n /**\r\n * An SIP (Session Internet Protocol) address.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"SipAddress\"] = 8] = \"SipAddress\";\r\n /**\r\n * An e-mail address.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"SmtpAddress\"] = 9] = \"SmtpAddress\";\r\n /**\r\n * An user ID.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"Identity\"] = 10] = \"Identity\";\r\n /**\r\n * A URI (Uniform Resource Identifier).\r\n */\r\n AWTPiiKind[AWTPiiKind[\"Uri\"] = 11] = \"Uri\";\r\n /**\r\n * The fully-qualified domain name.\r\n */\r\n AWTPiiKind[AWTPiiKind[\"Fqdn\"] = 12] = \"Fqdn\";\r\n /**\r\n * Scrubs the last octet in a IPV4 Internet address.\r\n * For example: 10.121.227.147 becomes 10.121.227.*\r\n */\r\n AWTPiiKind[AWTPiiKind[\"IPV4AddressLegacy\"] = 13] = \"IPV4AddressLegacy\";\r\n})(AWTPiiKind = exports.AWTPiiKind || (exports.AWTPiiKind = {}));\r\n/**\r\n * The AWTCustomerContentKind enumeration contains a set of values that specify the kind of customer content.\r\n * @enum {number}\r\n */\r\nvar AWTCustomerContentKind;\r\n(function (AWTCustomerContentKind) {\r\n /**\r\n * No kind.\r\n */\r\n AWTCustomerContentKind[AWTCustomerContentKind[\"NotSet\"] = 0] = \"NotSet\";\r\n /**\r\n * Generic content.\r\n */\r\n AWTCustomerContentKind[AWTCustomerContentKind[\"GenericContent\"] = 1] = \"GenericContent\";\r\n})(AWTCustomerContentKind = exports.AWTCustomerContentKind || (exports.AWTCustomerContentKind = {}));\r\n/**\r\n * The AWTEventPriority enumeration contains a set of values that specify an event's priority.\r\n * @enum {number}\r\n */\r\nvar AWTEventPriority;\r\n(function (AWTEventPriority) {\r\n /**\r\n * Low priority.\r\n */\r\n AWTEventPriority[AWTEventPriority[\"Low\"] = 1] = \"Low\";\r\n /**\r\n * Normal priority.\r\n */\r\n AWTEventPriority[AWTEventPriority[\"Normal\"] = 2] = \"Normal\";\r\n /**\r\n * High priority.\r\n */\r\n AWTEventPriority[AWTEventPriority[\"High\"] = 3] = \"High\";\r\n /**\r\n * Immediate_sync priority (Events are sent sync immediately).\r\n */\r\n AWTEventPriority[AWTEventPriority[\"Immediate_sync\"] = 5] = \"Immediate_sync\";\r\n})(AWTEventPriority = exports.AWTEventPriority || (exports.AWTEventPriority = {}));\r\n/**\r\n * The AWTEventsDroppedReason enumeration contains a set of values that specify the reason for dropping an event.\r\n * @enum {number}\r\n */\r\nvar AWTEventsDroppedReason;\r\n(function (AWTEventsDroppedReason) {\r\n /**\r\n * Status set to non-retryable.\r\n */\r\n AWTEventsDroppedReason[AWTEventsDroppedReason[\"NonRetryableStatus\"] = 1] = \"NonRetryableStatus\";\r\n /**\r\n * The event queue is full.\r\n */\r\n AWTEventsDroppedReason[AWTEventsDroppedReason[\"QueueFull\"] = 3] = \"QueueFull\";\r\n})(AWTEventsDroppedReason = exports.AWTEventsDroppedReason || (exports.AWTEventsDroppedReason = {}));\r\n/**\r\n * The AWTEventsRejectedReason enumeration contains a set of values that specify the reason for rejecting an event.\r\n * @enum {number}\r\n */\r\nvar AWTEventsRejectedReason;\r\n(function (AWTEventsRejectedReason) {\r\n /**\r\n * The event is invalid.\r\n */\r\n AWTEventsRejectedReason[AWTEventsRejectedReason[\"InvalidEvent\"] = 1] = \"InvalidEvent\";\r\n /**\r\n * The size of the event is too large.\r\n */\r\n AWTEventsRejectedReason[AWTEventsRejectedReason[\"SizeLimitExceeded\"] = 2] = \"SizeLimitExceeded\";\r\n /**\r\n * The server is not accepting events from this token.\r\n */\r\n AWTEventsRejectedReason[AWTEventsRejectedReason[\"KillSwitch\"] = 3] = \"KillSwitch\";\r\n})(AWTEventsRejectedReason = exports.AWTEventsRejectedReason || (exports.AWTEventsRejectedReason = {}));\r\n","var arrayMap = require('./_arrayMap'),\n baseIteratee = require('./_baseIteratee'),\n baseMap = require('./_baseMap'),\n isArray = require('./isArray');\n\n/**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\nfunction map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, baseIteratee(iteratee, 3));\n}\n\nmodule.exports = map;\n","var baseGet = require('./_baseGet');\n\n/**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n}\n\nmodule.exports = basePropertyDeep;\n","var MapCache = require('./_MapCache');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar Enums_1 = require(\"../common/Enums\");\r\nvar Enums_2 = require(\"./Enums\");\r\nvar AWTLogManagerSettings_1 = require(\"./AWTLogManagerSettings\");\r\nvar AWTLogger_1 = require(\"./AWTLogger\");\r\nvar AWTTransmissionManagerCore_1 = require(\"./AWTTransmissionManagerCore\");\r\nvar AWTNotificationManager_1 = require(\"../common/AWTNotificationManager\");\r\nvar AWTAutoCollection_1 = require(\"./AWTAutoCollection\");\r\n/**\r\n* The AWTLogManager class manages the Aria SDK.\r\n*/\r\nvar AWTLogManager = /** @class */ (function () {\r\n function AWTLogManager() {\r\n }\r\n /**\r\n * Initializes the log manager. After this method is called, events are\r\n * accepted for transmission.\r\n * @param {string} tenantToken - A string that contains the default tenant token.\r\n * @param {object} config - [Optional] Configuration settings for initialize, as an AWTLogConfiguration object.\r\n */\r\n AWTLogManager.initialize = function (tenantToken, configuration) {\r\n if (configuration === void 0) { configuration = {}; }\r\n if (this._isInitialized) {\r\n return;\r\n }\r\n this._isInitialized = true;\r\n AWTLogManagerSettings_1.default.defaultTenantToken = tenantToken;\r\n this._overrideValuesFromConfig(configuration);\r\n if (this._config.disableCookiesUsage && !this._config.propertyStorageOverride) {\r\n AWTLogManagerSettings_1.default.sessionEnabled = false;\r\n }\r\n AWTAutoCollection_1.default.addPropertyStorageOverride(this._config.propertyStorageOverride);\r\n AWTAutoCollection_1.default.autoCollect(AWTLogManagerSettings_1.default.semanticContext, this._config.disableCookiesUsage, this._config.userAgent);\r\n //Create sender\r\n AWTTransmissionManagerCore_1.default.initialize(this._config);\r\n AWTLogManagerSettings_1.default.loggingEnabled = true;\r\n //Autolog session events for browsers\r\n if (this._config.enableAutoUserSession) {\r\n this.getLogger().logSession(Enums_2.AWTSessionState.Started);\r\n window.addEventListener('beforeunload', this.flushAndTeardown);\r\n }\r\n return this.getLogger();\r\n };\r\n /**\r\n * Gets the global semantic context.\r\n *\r\n * @return A AWTSemanticContext object, through which you can set common semantic properties.\r\n */\r\n AWTLogManager.getSemanticContext = function () {\r\n return AWTLogManagerSettings_1.default.semanticContext;\r\n };\r\n /**\r\n * Asynchronously sends events currently in the queue. New events added\r\n * are sent after the current flush finishes. The passed callback is\r\n * called when flush finishes. Note: If LogManager is paused, or if\r\n * flush is called again in less than 30 seconds, then flush is no-op, and\r\n * the callback is not called.\r\n * @param {function} callback - The function that is called when flush finishes.\r\n */\r\n AWTLogManager.flush = function (callback) {\r\n if (this._isInitialized && !this._isDestroyed) {\r\n AWTTransmissionManagerCore_1.default.flush(callback);\r\n }\r\n };\r\n /**\r\n * Prevents new events from being added for transmission. It also batches all\r\n * events currently in the queue, and creates requests for them to be sent. If\r\n * HTML5 Beacons are supported, then they will be used.\r\n */\r\n AWTLogManager.flushAndTeardown = function () {\r\n if (this._isInitialized && !this._isDestroyed) {\r\n if (this._config.enableAutoUserSession) {\r\n this.getLogger().logSession(Enums_2.AWTSessionState.Ended);\r\n }\r\n AWTTransmissionManagerCore_1.default.flushAndTeardown();\r\n AWTLogManagerSettings_1.default.loggingEnabled = false;\r\n this._isDestroyed = true;\r\n }\r\n };\r\n /**\r\n * Pasues the transmission of events.\r\n */\r\n AWTLogManager.pauseTransmission = function () {\r\n if (this._isInitialized && !this._isDestroyed) {\r\n AWTTransmissionManagerCore_1.default.pauseTransmission();\r\n }\r\n };\r\n /**\r\n * Resumes the tranmission of events.\r\n */\r\n AWTLogManager.resumeTransmision = function () {\r\n if (this._isInitialized && !this._isDestroyed) {\r\n AWTTransmissionManagerCore_1.default.resumeTransmision();\r\n }\r\n };\r\n /**\r\n * Sets the transmit profile. This changes the transmission timers\r\n * based on the transmit profile.\r\n * @param {string} profileName - A string that contains the name of the transmit profile.\r\n */\r\n AWTLogManager.setTransmitProfile = function (profileName) {\r\n if (this._isInitialized && !this._isDestroyed) {\r\n AWTTransmissionManagerCore_1.default.setTransmitProfile(profileName);\r\n }\r\n };\r\n /**\r\n * Loads custom transmission profiles. Each profile should have timers for\r\n * high, normal, and low. Each profile should make sure\r\n * that a each priority timer is a multiple of the priority higher than it.\r\n * Setting the timer value to -1 means the events for that priority will\r\n * not be sent. Note that once a priority has been set to not send, then all priorities\r\n * below it will also not be sent. The timers should be in the form of [low, normal, high].\r\n * E.g, Custom: [30,10,5].\r\n * This method removes any previously loaded custom profiles.\r\n * @param {object} profiles - A dictionary that contains the transmit profiles.\r\n */\r\n AWTLogManager.loadTransmitProfiles = function (profiles) {\r\n if (this._isInitialized && !this._isDestroyed) {\r\n AWTTransmissionManagerCore_1.default.loadTransmitProfiles(profiles);\r\n }\r\n };\r\n /**\r\n * Sets the context sent with every event.\r\n * @param {string} name - A string that contains the name of the context property.\r\n * @param {string|number|boolean} value - The value of the context property.\r\n * @param {enum} type - [Optional] The type for the context property value, as one of the\r\n * AWTPropertyType enumeration values.\r\n */\r\n AWTLogManager.setContext = function (name, value, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n AWTLogManagerSettings_1.default.logManagerContext.setProperty(name, value, type);\r\n };\r\n /**\r\n * Sets the context sents with every event, and tags it as PII.\r\n * @param {string} name - A string that contains the name of the context property.\r\n * @param {string|number|boolean} value - The value of the context property.\r\n * @param {enum} pii - The kind of PII for the context property.\r\n * @param {enum} type - [Optional] The type for the context property value, as one of the\r\n * AWTPropertyType enumeration values.\r\n */\r\n AWTLogManager.setContextWithPii = function (name, value, pii, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n AWTLogManagerSettings_1.default.logManagerContext.setPropertyWithPii(name, value, pii, type);\r\n };\r\n /**\r\n * Sets the context sent with every event from this logger, and tags it as customer content.\r\n * @param {string} name - A string that contains the name of the context property.\r\n * @param {string|number|boolean} value - The value of the context property.\r\n * @param {enum} customerContent - The kind of customer content for the context property, as one of the\r\n * AWTCustomerContentKind enumeration values.\r\n * @param {enum} type - [Optional] The type for the context property value, as one of the\r\n * AWTPropertyType enumeration values.\r\n */\r\n AWTLogManager.setContextWithCustomerContent = function (name, value, customerContent, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n AWTLogManagerSettings_1.default.logManagerContext.setPropertyWithCustomerContent(name, value, customerContent, type);\r\n };\r\n /**\r\n * Gets the logger for the specified tenant token.\r\n * @param {string} tenantToken - A string that contains the tenant token.\r\n * @return An AWTLogger object which sends data with the specified tenant token. If the tenant token is\r\n * undefined, or null, or empty, then undefined is returned.\r\n */\r\n AWTLogManager.getLogger = function (tenantToken) {\r\n var key = tenantToken;\r\n if (!key || key === AWTLogManagerSettings_1.default.defaultTenantToken) {\r\n key = '';\r\n }\r\n if (!this._loggers[key]) {\r\n this._loggers[key] = new AWTLogger_1.default(key);\r\n }\r\n return this._loggers[key];\r\n };\r\n /**\r\n * Adds a notification listener. The Aria SDK calls methods on the listener\r\n * when an appropriate notification is raised.\r\n * @param {object} listener - An AWTNotificationListener object.\r\n */\r\n AWTLogManager.addNotificationListener = function (listener) {\r\n AWTNotificationManager_1.default.addNotificationListener(listener);\r\n };\r\n /**\r\n * Removes all instances of the listener.\r\n * @param {object} listener - AWTNotificationListener to remove.\r\n */\r\n AWTLogManager.removeNotificationListener = function (listener) {\r\n AWTNotificationManager_1.default.removeNotificationListener(listener);\r\n };\r\n AWTLogManager._overrideValuesFromConfig = function (config) {\r\n if (config.collectorUri) {\r\n this._config.collectorUri = config.collectorUri;\r\n }\r\n if (config.cacheMemorySizeLimitInNumberOfEvents > 0) {\r\n this._config.cacheMemorySizeLimitInNumberOfEvents = config.cacheMemorySizeLimitInNumberOfEvents;\r\n }\r\n if (config.httpXHROverride && config.httpXHROverride.sendPOST) {\r\n this._config.httpXHROverride = config.httpXHROverride;\r\n }\r\n if (config.propertyStorageOverride && config.propertyStorageOverride.getProperty &&\r\n config.propertyStorageOverride.setProperty) {\r\n this._config.propertyStorageOverride = config.propertyStorageOverride;\r\n }\r\n if (config.userAgent) {\r\n this._config.userAgent = config.userAgent;\r\n }\r\n if (config.disableCookiesUsage) {\r\n this._config.disableCookiesUsage = config.disableCookiesUsage;\r\n }\r\n if (config.canSendStatEvent) {\r\n this._config.canSendStatEvent = config.canSendStatEvent;\r\n }\r\n if (config.enableAutoUserSession && typeof window !== 'undefined' && window.addEventListener) {\r\n this._config.enableAutoUserSession = config.enableAutoUserSession;\r\n }\r\n if (config.clockSkewRefreshDurationInMins > 0) {\r\n this._config.clockSkewRefreshDurationInMins = config.clockSkewRefreshDurationInMins;\r\n }\r\n };\r\n AWTLogManager._loggers = {};\r\n AWTLogManager._isInitialized = false;\r\n AWTLogManager._isDestroyed = false;\r\n AWTLogManager._config = {\r\n collectorUri: 'https://browser.pipe.aria.microsoft.com/Collector/3.0/',\r\n cacheMemorySizeLimitInNumberOfEvents: 10000,\r\n disableCookiesUsage: false,\r\n canSendStatEvent: function (eventName) { return true; },\r\n clockSkewRefreshDurationInMins: 0\r\n };\r\n return AWTLogManager;\r\n}());\r\nexports.default = AWTLogManager;\r\n","var castPath = require('./_castPath'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isIndex = require('./_isIndex'),\n isLength = require('./isLength'),\n toKey = require('./_toKey');\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nmodule.exports = hasPath;\n","var isArray = require('./isArray'),\n isKey = require('./_isKey'),\n stringToPath = require('./_stringToPath'),\n toString = require('./toString');\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nmodule.exports = castPath;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar AWTAutoCollection_1 = require(\"./AWTAutoCollection\");\r\nvar Enums_1 = require(\"../common/Enums\");\r\nvar Enums_2 = require(\"./Enums\");\r\nvar UI_IDTYPE = 'UserInfo.IdType';\r\n/**\r\n * Class to allow users to set semantic context properties.\r\n */\r\nvar AWTSemanticContext = /** @class */ (function () {\r\n /**\r\n * @constructor\r\n * @param {boolean} _allowDeviceFields - Allow setting of device semantic context.\r\n * @param {object} _properties - The event properties where to add the semantic context.\r\n */\r\n function AWTSemanticContext(_allowDeviceFields, _properties) {\r\n this._allowDeviceFields = _allowDeviceFields;\r\n this._properties = _properties;\r\n }\r\n /**\r\n * Sets the field AppInfo.Id with the given value.\r\n * @param {string} appId - The Id uniquely identifies the App from this this event originated.\r\n * In the multi-tenant Aria Platform, this is the Application Id of the\r\n * registered Application. Example, \"735d47645f7c4de69964e2c01888d6b6\".\r\n */\r\n AWTSemanticContext.prototype.setAppId = function (appId) {\r\n this._addContext('AppInfo.Id', appId);\r\n };\r\n /**\r\n * Sets the field AppInfo.Version with the given value.\r\n * @param {string} appVersion - The version of the App, retrieved programmatically where possible. This\r\n * is app/platform dependent. Examples such as \"7.0.0.100\" for Skype,\r\n * or \"12.0.30723.00 Update 3\" for Microsoft Visual Studio Ultimate 2013\r\n */\r\n AWTSemanticContext.prototype.setAppVersion = function (appVersion) {\r\n this._addContext('AppInfo.Version', appVersion);\r\n };\r\n /**\r\n * Sets the field AppInfo.Language with the given value.\r\n * @param {string} appLanguage - Language of the App in IETF language tag format, as described in RFC 4646.\r\n * Examples of acceptable values include \"en\", \"pt-BR\" and \"zh-Hant-CN\".\r\n */\r\n AWTSemanticContext.prototype.setAppLanguage = function (appLanguage) {\r\n this._addContext('AppInfo.Language', appLanguage);\r\n };\r\n /**\r\n * Sets the field DeviceInfo.Id with the given value.\r\n * @param {string} deviceId - The device Id uniquely identifies the physical device, using platform\r\n * available API's. This allows correlation against Aria Hardware Inventory.\r\n */\r\n AWTSemanticContext.prototype.setDeviceId = function (deviceId) {\r\n if (this._allowDeviceFields) {\r\n AWTAutoCollection_1.default.checkAndSaveDeviceId(deviceId);\r\n this._addContext('DeviceInfo.Id', deviceId);\r\n }\r\n };\r\n /**\r\n * Sets the field DeviceInfo.OsName with the given value.\r\n * @param {string} deviceOsName - The name of the OS. The SDK should ensure this is a limited normalized\r\n * set. Asimov is using very high level value e.g. Windows/Android/iOS.\r\n * Examples such as \"iOS\" or \"Windows Phone\".\r\n */\r\n AWTSemanticContext.prototype.setDeviceOsName = function (deviceOsName) {\r\n if (this._allowDeviceFields) {\r\n this._addContext('DeviceInfo.OsName', deviceOsName);\r\n }\r\n };\r\n /**\r\n * Sets the field DeviceInfo.OsVersion with the given value.\r\n * @param {string} deviceOsVersion - The version of the OS, retrieved programmatically, which can be used\r\n * for aggregation or filtering for scenarios like real time monitoring\r\n * or metrics reporting. Flurry and GA provide aggregation at this level.\r\n * Examples such as \"8.1.2\" for iOS, or \"8.1\" for Windows Phone.\r\n */\r\n AWTSemanticContext.prototype.setDeviceOsVersion = function (deviceOsVersion) {\r\n if (this._allowDeviceFields) {\r\n this._addContext('DeviceInfo.OsVersion', deviceOsVersion);\r\n }\r\n };\r\n /**\r\n * Sets the field DeviceInfo.Id with the given value.\r\n * @param {string} deviceBrowserName - he name of the OS. The SDK should ensure this is a limited normalized set.\r\n * Examples such as \"Chrome\" or \"Edge\".\r\n */\r\n AWTSemanticContext.prototype.setDeviceBrowserName = function (deviceBrowserName) {\r\n if (this._allowDeviceFields) {\r\n this._addContext('DeviceInfo.BrowserName', deviceBrowserName);\r\n }\r\n };\r\n /**\r\n * Sets the field DeviceInfo.Id with the given value.\r\n * @param {string} deviceBrowserVersion - The version of the browser, retrieved programmatically, which can be used\r\n * for aggregation or filtering for scenarios like real time monitoring or metrics reporting.\r\n * Examples such as \"57.0.2987.133\" for Chrome, or \"15.15063\" for Edge.\r\n */\r\n AWTSemanticContext.prototype.setDeviceBrowserVersion = function (deviceBrowserVersion) {\r\n if (this._allowDeviceFields) {\r\n this._addContext('DeviceInfo.BrowserVersion', deviceBrowserVersion);\r\n }\r\n };\r\n /**\r\n * Set the device manufacturer context information of telemetry event.\r\n * Can only be set at the LogManager level. Setting it via the object obtained from ILogger\r\n * will be no-op.\r\n * @param {string} deviceMake The manufacturer of the device, retrieved\r\n * programmatically where possible and is app/platform specific\r\n */\r\n AWTSemanticContext.prototype.setDeviceMake = function (deviceMake) {\r\n if (this._allowDeviceFields) {\r\n this._addContext('DeviceInfo.Make', deviceMake);\r\n }\r\n };\r\n /**\r\n * Set the device model context information of telemetry event.\r\n * Can only be set at the LogManager level. Setting it via the object obtained from ILogger\r\n * will be no-op.\r\n * @param {string} deviceModel The model of the device, retrieved programmatically\r\n * where possible and is app/platform specific\r\n */\r\n AWTSemanticContext.prototype.setDeviceModel = function (deviceModel) {\r\n if (this._allowDeviceFields) {\r\n this._addContext('DeviceInfo.Model', deviceModel);\r\n }\r\n };\r\n /**\r\n * Sets the field UserInfo.Id with the given value.\r\n * @param {string} userId - The id uniquely identifies the user in an application-specific\r\n * user namespace, such as a Skype ID in the Skype App. This may be empty for Apps\r\n * which do not require user sign-in.\r\n * @param {enum} pii - Optional pii type for the user id.\r\n * @param {enum} userIdType - Optional id type for the user id.\r\n */\r\n AWTSemanticContext.prototype.setUserId = function (userId, pii, userIdType) {\r\n if (!isNaN(userIdType) && userIdType !== null && userIdType >= 0 && userIdType <= 12) {\r\n this._addContext(UI_IDTYPE, userIdType.toString());\r\n }\r\n else {\r\n var inferredUserIdType = void 0;\r\n switch (pii) {\r\n case Enums_1.AWTPiiKind.SipAddress:\r\n inferredUserIdType = Enums_2.AWTUserIdType.SipAddress;\r\n break;\r\n case Enums_1.AWTPiiKind.PhoneNumber:\r\n inferredUserIdType = Enums_2.AWTUserIdType.PhoneNumber;\r\n break;\r\n case Enums_1.AWTPiiKind.SmtpAddress:\r\n inferredUserIdType = Enums_2.AWTUserIdType.EmailAddress;\r\n break;\r\n default:\r\n inferredUserIdType = Enums_2.AWTUserIdType.Unknown;\r\n break;\r\n }\r\n this._addContext(UI_IDTYPE, inferredUserIdType.toString());\r\n }\r\n if (isNaN(pii) || pii === null || pii === Enums_1.AWTPiiKind.NotSet || pii > 13) {\r\n switch (userIdType) {\r\n case Enums_2.AWTUserIdType.Skype:\r\n pii = Enums_1.AWTPiiKind.Identity;\r\n break;\r\n case Enums_2.AWTUserIdType.EmailAddress:\r\n pii = Enums_1.AWTPiiKind.SmtpAddress;\r\n break;\r\n case Enums_2.AWTUserIdType.PhoneNumber:\r\n pii = Enums_1.AWTPiiKind.PhoneNumber;\r\n break;\r\n case Enums_2.AWTUserIdType.SipAddress:\r\n pii = Enums_1.AWTPiiKind.SipAddress;\r\n break;\r\n default:\r\n pii = Enums_1.AWTPiiKind.NotSet;\r\n break;\r\n }\r\n }\r\n this._addContextWithPii('UserInfo.Id', userId, pii);\r\n };\r\n /**\r\n * Sets the field UserInfo.AdvertisingId with the given value.\r\n * @param {string} userAdvertisingId - The AdvertisingId is the user-specific device id obtainable through\r\n * platform API's. This may not be available if users choose to opt-out\r\n * of this id, or if the underlying platform does not support it.\r\n */\r\n AWTSemanticContext.prototype.setUserAdvertisingId = function (userAdvertisingId) {\r\n this._addContext('UserInfo.AdvertisingId', userAdvertisingId);\r\n };\r\n /**\r\n * Sets the field UserInfo.TimeZone with the given value.\r\n * @param {string} userTimeZone - The user's time zone relative to UTC, in ISO 8601 time zone format.\r\n * Examples of acceptable values include \"+00\", \"+07:00\", and \"-1130\".\r\n */\r\n AWTSemanticContext.prototype.setUserTimeZone = function (userTimeZone) {\r\n this._addContext('UserInfo.TimeZone', userTimeZone);\r\n };\r\n /**\r\n * Sets the field UserInfo.Language with the given value.\r\n * @param {string} userLanguage - The user's language in IETF language tag format, as described in RFC 4646.\r\n * Examples of acceptable values include \"en\", \"pt-BR\" and \"zh-Hant-CN\".\r\n */\r\n AWTSemanticContext.prototype.setUserLanguage = function (userLanguage) {\r\n this._addContext('UserInfo.Language', userLanguage);\r\n };\r\n AWTSemanticContext.prototype._addContext = function (key, value) {\r\n if (typeof value === 'string') {\r\n this._properties.setProperty(key, value);\r\n }\r\n };\r\n AWTSemanticContext.prototype._addContextWithPii = function (key, value, pii) {\r\n if (typeof value === 'string') {\r\n this._properties.setPropertyWithPii(key, value, pii);\r\n }\r\n };\r\n return AWTSemanticContext;\r\n}());\r\nexports.default = AWTSemanticContext;\r\n","var isLaziable = require('./_isLaziable'),\n setData = require('./_setData'),\n setWrapToString = require('./_setWrapToString');\n\n/** Used to compose bitmasks for function metadata. */\nvar WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64;\n\n/**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\nfunction createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n}\n\nmodule.exports = createRecurry;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AWTSerializer.ts\r\n* @author Brent Erickson (brericks) and Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n*/\r\nvar Bond = require(\"../bond/microsoft.bond\");\r\nvar Enums_1 = require(\"./Enums\");\r\nvar AWTNotificationManager_1 = require(\"./AWTNotificationManager\");\r\nvar Utils = require(\"./Utils\");\r\nvar RequestSizeLimitBytes = 2936012; //approx 2.8 Mb\r\n/**\r\n* Class to handle serialization of event and request.\r\n* Currently uses Bond for serialization. Please note that this may be subject to change.\r\n*/\r\nvar AWTSerializer = /** @class */ (function () {\r\n function AWTSerializer() {\r\n }\r\n /**\r\n * Serialies a request using Bond.\r\n * @param {object} requestDictionary - A dictionary containing the token to event mapping.\r\n * @param {number} tokenCount - Number of tenant tokens to be sent in the request.\r\n * @return {number[]} The serialized bond request.\r\n */\r\n AWTSerializer.getPayloadBlob = function (requestDictionary, tokenCount) {\r\n var requestFull = false;\r\n var remainingRequest;\r\n var stream = new Bond.IO.MemoryStream();\r\n var writer = new Bond.CompactBinaryProtocolWriter(stream);\r\n //Write TokenToDataPackagesMap\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 3, null);\r\n writer._WriteMapContainerBegin(tokenCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_LIST);\r\n for (var token in requestDictionary) {\r\n if (!requestFull) {\r\n if (requestDictionary.hasOwnProperty(token)) {\r\n //write token\r\n writer._WriteString(token);\r\n var dataPackage = requestDictionary[token];\r\n // Write list of DataPackages\r\n writer._WriteContainerBegin(1, Bond._BondDataType._BT_STRUCT);\r\n // Source\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 2, null);\r\n writer._WriteString('act_default_source');\r\n // DataPackageId\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 5, null);\r\n writer._WriteString(Utils.newGuid());\r\n // Timestamp\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_INT64, 6, null);\r\n writer._WriteInt64(Utils.numberToBondInt64(Date.now()));\r\n // Records\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_LIST, 8, null);\r\n //Advance position by 1 for the elementy type which is always struct\r\n var dpSizePos = stream._GetBuffer().length + 1;\r\n writer._WriteContainerBegin(requestDictionary[token].length, Bond._BondDataType._BT_STRUCT);\r\n var dpSizeSerialized = stream._GetBuffer().length - dpSizePos;\r\n for (var i = 0; i < dataPackage.length; ++i) {\r\n var currentStreamPos = stream._GetBuffer().length;\r\n this.writeEvent(dataPackage[i], writer);\r\n if (stream._GetBuffer().length - currentStreamPos > RequestSizeLimitBytes) {\r\n //single event too big\r\n AWTNotificationManager_1.default.eventsRejected([dataPackage[i]], Enums_1.AWTEventsRejectedReason.SizeLimitExceeded);\r\n //move i one place back so that we can evaluate the next element once we delete the current element at pos i\r\n dataPackage.splice(i--, 1);\r\n stream._GetBuffer().splice(currentStreamPos);\r\n //Bond serialization to change the datapackage length since we couldnt send this event\r\n this._addNewDataPackageSize(dataPackage.length, stream, dpSizeSerialized, dpSizePos);\r\n continue;\r\n }\r\n if (stream._GetBuffer().length > RequestSizeLimitBytes) {\r\n //Adding this event exceeded the max request size. We should rever this event and send the serialized request.\r\n //The remaining events should be returned to send in a separate request.\r\n stream._GetBuffer().splice(currentStreamPos);\r\n if (!remainingRequest) {\r\n remainingRequest = {};\r\n }\r\n requestDictionary[token] = dataPackage.splice(0, i);\r\n remainingRequest[token] = dataPackage;\r\n this._addNewDataPackageSize(requestDictionary[token].length, stream, dpSizeSerialized, dpSizePos);\r\n break;\r\n }\r\n }\r\n writer._WriteStructEnd(false);\r\n }\r\n }\r\n else {\r\n if (!remainingRequest) {\r\n remainingRequest = {};\r\n }\r\n remainingRequest[token] = requestDictionary[token];\r\n delete requestDictionary[token];\r\n }\r\n }\r\n // End ClientCollector\r\n writer._WriteStructEnd(false);\r\n return { payloadBlob: stream._GetBuffer(), remainingRequest: remainingRequest };\r\n };\r\n AWTSerializer._addNewDataPackageSize = function (size, stream, oldDpSize, streamPos) {\r\n //Bond serialization to change the datapackage length since we couldnt send everything\r\n var newRecordCountSerialized = Bond._Encoding._Varint_GetBytes(Bond.Number._ToUInt32(size));\r\n for (var j = 0; j < oldDpSize; ++j) {\r\n if (j < newRecordCountSerialized.length) {\r\n stream._GetBuffer()[streamPos + j] = newRecordCountSerialized[j];\r\n }\r\n else {\r\n stream._GetBuffer().slice(streamPos + j, oldDpSize - j);\r\n break;\r\n }\r\n }\r\n };\r\n /**\r\n * Bond serialize the event.\r\n * @param {object} eventData - The event that needs to be serialized.\r\n * @return {number[]} The serialized bond event.\r\n */\r\n AWTSerializer.writeEvent = function (eventData, writer) {\r\n // ID\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 1, null);\r\n writer._WriteString(eventData.id);\r\n // Timestamp\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_INT64, 3, null);\r\n writer._WriteInt64(Utils.numberToBondInt64(eventData.timestamp));\r\n // Type\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 5, null);\r\n writer._WriteString(eventData.type);\r\n // Event Type\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 6, null);\r\n writer._WriteString(eventData.name);\r\n var propsString = {};\r\n var propStringCount = 0;\r\n var propsInt64 = {};\r\n var propInt64Count = 0;\r\n var propsDouble = {};\r\n var propDoubleCount = 0;\r\n var propsBool = {};\r\n var propBoolCount = 0;\r\n var propsDate = {};\r\n var propDateCount = 0;\r\n var piiProps = {};\r\n var piiPropCount = 0;\r\n var ccProps = {};\r\n var ccPropCount = 0;\r\n // Iterate across event data properties and separate based on pii\r\n for (var key in eventData.properties) {\r\n if (eventData.properties.hasOwnProperty(key)) {\r\n var property = eventData.properties[key];\r\n if (property.cc > 0) {\r\n ccProps[key] = property;\r\n ccPropCount++;\r\n }\r\n else if (property.pii > 0) {\r\n piiProps[key] = property;\r\n piiPropCount++;\r\n }\r\n else {\r\n switch (property.type) {\r\n case Enums_1.AWTPropertyType.String:\r\n propsString[key] = property.value;\r\n propStringCount++;\r\n break;\r\n case Enums_1.AWTPropertyType.Int64:\r\n propsInt64[key] = property.value;\r\n propInt64Count++;\r\n break;\r\n case Enums_1.AWTPropertyType.Double:\r\n propsDouble[key] = property.value;\r\n propDoubleCount++;\r\n break;\r\n case Enums_1.AWTPropertyType.Boolean:\r\n propsBool[key] = property.value;\r\n propBoolCount++;\r\n break;\r\n case Enums_1.AWTPropertyType.Date:\r\n propsDate[key] = property.value;\r\n propDateCount++;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n //Extension map\r\n if (propStringCount) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 13, null);\r\n writer._WriteMapContainerBegin(propStringCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_STRING);\r\n for (var key in propsString) {\r\n if (propsString.hasOwnProperty(key)) {\r\n var value = propsString[key];\r\n writer._WriteString(key);\r\n writer._WriteString(value.toString());\r\n }\r\n }\r\n }\r\n // Pii\r\n if (piiPropCount) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 30, null);\r\n writer._WriteMapContainerBegin(piiPropCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_STRUCT);\r\n for (var key in piiProps) {\r\n if (piiProps.hasOwnProperty(key)) {\r\n var property = piiProps[key];\r\n writer._WriteString(key);\r\n // PII Data\r\n // O365 scrubber type\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_INT32, 1, null);\r\n writer._WriteInt32(1);\r\n // PII Kind\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_INT32, 2, null);\r\n writer._WriteInt32(property.pii);\r\n // Value\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 3, null);\r\n writer._WriteString(property.value.toString());\r\n writer._WriteStructEnd(false);\r\n }\r\n }\r\n }\r\n // TypedExtensionBoolean map\r\n if (propBoolCount) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 31, null);\r\n writer._WriteMapContainerBegin(propBoolCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_BOOL);\r\n for (var key in propsBool) {\r\n if (propsBool.hasOwnProperty(key)) {\r\n var value = propsBool[key];\r\n writer._WriteString(key);\r\n writer._WriteBool(value);\r\n }\r\n }\r\n }\r\n //TypedExtensionDateTime map\r\n if (propDateCount) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 32, null);\r\n writer._WriteMapContainerBegin(propDateCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_INT64);\r\n for (var key in propsDate) {\r\n if (propsDate.hasOwnProperty(key)) {\r\n var value = propsDate[key];\r\n writer._WriteString(key);\r\n writer._WriteInt64(Utils.numberToBondInt64(value));\r\n }\r\n }\r\n }\r\n //TypedExtensionInt64 map\r\n if (propInt64Count) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 33, null);\r\n writer._WriteMapContainerBegin(propInt64Count, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_INT64);\r\n for (var key in propsInt64) {\r\n if (propsInt64.hasOwnProperty(key)) {\r\n var value = propsInt64[key];\r\n writer._WriteString(key);\r\n writer._WriteInt64(Utils.numberToBondInt64(value));\r\n }\r\n }\r\n }\r\n //TypedExtensionDouble map\r\n if (propDoubleCount) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 34, null);\r\n writer._WriteMapContainerBegin(propDoubleCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_DOUBLE);\r\n for (var key in propsDouble) {\r\n if (propsDouble.hasOwnProperty(key)) {\r\n var value = propsDouble[key];\r\n writer._WriteString(key);\r\n writer._WriteDouble(value);\r\n }\r\n }\r\n }\r\n //CustomerContentExtensions map\r\n if (ccPropCount) {\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_MAP, 36, null);\r\n writer._WriteMapContainerBegin(ccPropCount, Bond._BondDataType._BT_STRING, Bond._BondDataType._BT_STRUCT);\r\n for (var key in ccProps) {\r\n if (ccProps.hasOwnProperty(key)) {\r\n var property = ccProps[key];\r\n writer._WriteString(key);\r\n // CustomerContent Data\r\n // CustomerContentKind\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_INT32, 1, null);\r\n writer._WriteInt32(property.cc);\r\n // RawContent\r\n writer._WriteFieldBegin(Bond._BondDataType._BT_STRING, 2, null);\r\n writer._WriteString(property.value.toString());\r\n writer._WriteStructEnd(false);\r\n }\r\n }\r\n }\r\n writer._WriteStructEnd(false);\r\n };\r\n /**\r\n * Base64 encode the given number[].\r\n * @param {number[]} data - The data to be base64 encoded.\r\n * @return {string} The base64 encoded data.\r\n */\r\n AWTSerializer.base64Encode = function (data) {\r\n return Bond._Encoding._Base64_GetString(data);\r\n };\r\n return AWTSerializer;\r\n}());\r\nexports.default = AWTSerializer;\r\n","/** Used as the internal argument placeholder. */\nvar PLACEHOLDER = '__lodash_placeholder__';\n\n/**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\nfunction replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n}\n\nmodule.exports = replaceHolders;\n","var baseSetData = require('./_baseSetData'),\n createBind = require('./_createBind'),\n createCurry = require('./_createCurry'),\n createHybrid = require('./_createHybrid'),\n createPartial = require('./_createPartial'),\n getData = require('./_getData'),\n mergeData = require('./_mergeData'),\n setData = require('./_setData'),\n setWrapToString = require('./_setWrapToString'),\n toInteger = require('./toInteger');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used to compose bitmasks for function metadata. */\nvar WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\nfunction createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n}\n\nmodule.exports = createWrap;\n","var baseCreate = require('./_baseCreate'),\n baseLodash = require('./_baseLodash');\n\n/**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\nfunction LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n}\n\nLodashWrapper.prototype = baseCreate(baseLodash.prototype);\nLodashWrapper.prototype.constructor = LodashWrapper;\n\nmodule.exports = LodashWrapper;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = baseProperty;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.AWT_REAL_TIME = 'REAL_TIME';\r\nexports.AWT_NEAR_REAL_TIME = 'NEAR_REAL_TIME';\r\nexports.AWT_BEST_EFFORT = 'BEST_EFFORT';\r\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AWTLogManagerSettings.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n*/\r\nvar AWTEventProperties_1 = require(\"./AWTEventProperties\");\r\nvar AWTSemanticContext_1 = require(\"./AWTSemanticContext\");\r\n/**\r\n* Class that stores LogManagers context.\r\n*/\r\nvar AWTLogManagerSettings = /** @class */ (function () {\r\n function AWTLogManagerSettings() {\r\n }\r\n AWTLogManagerSettings.logManagerContext = new AWTEventProperties_1.default();\r\n AWTLogManagerSettings.sessionEnabled = true;\r\n AWTLogManagerSettings.loggingEnabled = false;\r\n AWTLogManagerSettings.defaultTenantToken = '';\r\n AWTLogManagerSettings.semanticContext = new AWTSemanticContext_1.default(true, AWTLogManagerSettings.logManagerContext);\r\n return AWTLogManagerSettings;\r\n}());\r\nexports.default = AWTLogManagerSettings;\r\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AWTEventProperties.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n*/\r\nvar Utils = require(\"../common/Utils\");\r\nvar Enums_1 = require(\"../common/Enums\");\r\n/**\r\n* The AWTEventProperties class is used for creating an event.\r\n*/\r\nvar AWTEventProperties = /** @class */ (function () {\r\n /**\r\n * The AWTEventProperties class constructor.\r\n * @constructor\r\n * @param {string} - [Optional] The name of the event.\r\n */\r\n function AWTEventProperties(name) {\r\n this._event = { name: '', properties: {} };\r\n if (name) {\r\n this.setName(name);\r\n }\r\n }\r\n /**\r\n * Sets the name of the event.\r\n * @param {string} name - The name of the event.\r\n */\r\n AWTEventProperties.prototype.setName = function (name) {\r\n this._event.name = name;\r\n };\r\n /**\r\n * Gets the name of the event.\r\n * @return {string|undefined} - The name of the event, or undefined if the name has not been set.\r\n */\r\n AWTEventProperties.prototype.getName = function () {\r\n return this._event.name;\r\n };\r\n /**\r\n * Sets the base type of the event.\r\n * @param {string} type - The base type of the event.\r\n */\r\n AWTEventProperties.prototype.setType = function (type) {\r\n this._event.type = type;\r\n };\r\n /**\r\n * Gets the base type of the event.\r\n * @return {string|undefined} The base type of the event, or undefined if the base type has not been set.\r\n */\r\n AWTEventProperties.prototype.getType = function () {\r\n return this._event.type;\r\n };\r\n /**\r\n * Sets the timestamp for the event.\r\n * @param {number} timestampInEpochMillis - The timestamp (in milliseconds) since UNIX Epoch.\r\n */\r\n AWTEventProperties.prototype.setTimestamp = function (timestampInEpochMillis) {\r\n this._event.timestamp = timestampInEpochMillis;\r\n };\r\n /**\r\n * Gets the timestamp for the event.\r\n * @return {number|undefined} The timestamp for the event, or undefined if it has not been set.\r\n */\r\n AWTEventProperties.prototype.getTimestamp = function () {\r\n return this._event.timestamp;\r\n };\r\n /**\r\n * Sets the priority for sending the event. The default priority\r\n * of the event is Normal.\r\n * @param {enum} priority - An AWTEventPriority enumeration value that specifies the priority of the event.\r\n */\r\n AWTEventProperties.prototype.setEventPriority = function (priority) {\r\n this._event.priority = priority;\r\n };\r\n /**\r\n * Gets the priority for the event.\r\n * @return {AWTEventPriority} - An AWTEventPriority enumeration value that specifies the priority of the event.\r\n */\r\n AWTEventProperties.prototype.getEventPriority = function () {\r\n return this._event.priority;\r\n };\r\n /**\r\n * Sets a property with a name and value. Optionally sets the property type.\r\n * @param {string} name - The name of the property.\r\n * @param {string|number|boolean|Date} value - The property's value.\r\n * @param {enum} type - [Optional] One of the AWTPropertyType enumeration values that specifies\r\n * the type for the property.\r\n */\r\n AWTEventProperties.prototype.setProperty = function (name, value, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n var property = { value: value, type: type, pii: Enums_1.AWTPiiKind.NotSet, cc: Enums_1.AWTCustomerContentKind.NotSet };\r\n property = Utils.sanitizeProperty(name, property);\r\n if (property === null) {\r\n delete this._event.properties[name];\r\n return;\r\n }\r\n this._event.properties[name] = property;\r\n };\r\n /**\r\n * Sets a property with a name, a value, and a PII. Optionally sets the property type.\r\n * @param {string} name - The name of the property.\r\n * @param {string|number|boolean|Date} value - The property's value.\r\n * @param {enum} pii - The kind of PII for the property.\r\n * @param {enum} type - [Optional] One of the AWTPropertyType enumeration values that specifies\r\n * the type for the property.\r\n */\r\n AWTEventProperties.prototype.setPropertyWithPii = function (name, value, pii, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n var property = { value: value, type: type, pii: pii, cc: Enums_1.AWTCustomerContentKind.NotSet };\r\n property = Utils.sanitizeProperty(name, property);\r\n if (property === null) {\r\n delete this._event.properties[name];\r\n return;\r\n }\r\n this._event.properties[name] = property;\r\n };\r\n /**\r\n * Sets a property with name, value and customer content. Optionally set the property type of the value.\r\n * @param {string} name - The name of the property.\r\n * @param {string|number|boolean|Date} value - The property's value.\r\n * @param {enum} customerContent - The customer content kind for the property.\r\n * @param {enum} type - [Optional] One of the AWTPropertyType enumeration values that specifies\r\n * the type for the property.\r\n */\r\n AWTEventProperties.prototype.setPropertyWithCustomerContent = function (name, value, customerContent, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n var property = { value: value, type: type, pii: Enums_1.AWTPiiKind.NotSet, cc: customerContent };\r\n property = Utils.sanitizeProperty(name, property);\r\n if (property === null) {\r\n delete this._event.properties[name];\r\n return;\r\n }\r\n this._event.properties[name] = property;\r\n };\r\n /**\r\n * Gets the properties currently added to the event.\r\n * @return {object} A Map containing the current properties.\r\n */\r\n AWTEventProperties.prototype.getPropertyMap = function () {\r\n return this._event.properties;\r\n };\r\n /**\r\n * Gets the event from this event properties object.\r\n * @return {object} The event properties compiled into AWTEventData.\r\n */\r\n AWTEventProperties.prototype.getEvent = function () {\r\n return this._event;\r\n };\r\n return AWTEventProperties;\r\n}());\r\nexports.default = AWTEventProperties;\r\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* Utils.ts\r\n* @author Brent Erickson (brericks) and Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n* File containing utility functions.\r\n*/\r\nvar microsoft_bond_primitives_1 = require(\"../bond/microsoft.bond.primitives\");\r\nvar Enums_1 = require(\"./Enums\");\r\nvar GuidRegex = /[xy]/g;\r\nvar MSTillUnixEpoch = 62135596800000;\r\nvar MSToTicksMultiplier = 10000;\r\nvar NullValue = null;\r\nexports.EventNameAndTypeRegex = /^[a-zA-Z]([a-zA-Z0-9]|_){2,98}[a-zA-Z0-9]$/;\r\nexports.EventNameDotRegex = /\\./g;\r\nexports.PropertyNameRegex = /^[a-zA-Z](([a-zA-Z0-9|_|\\.]){0,98}[a-zA-Z0-9])?$/;\r\nexports.StatsApiKey = 'a387cfcf60114a43a7699f9fbb49289e-9bceb9fe-1c06-460f-96c5-6a0b247358bc-7238';\r\nvar beaconsSupported = NullValue;\r\nvar uInt8ArraySupported = NullValue;\r\nvar useXDR = NullValue;\r\n/**\r\n * Converts a number to Bond Int64.\r\n * @param {number} value - The number to be converted.\r\n * @return {object} The Int64 value for the passed number.\r\n */\r\nfunction numberToBondInt64(value) {\r\n // Construct bond timestamp for aria\r\n var bond_value = new microsoft_bond_primitives_1.Int64('0');\r\n bond_value.low = value & 0xffffffff;\r\n bond_value.high = Math.floor(value / 0x100000000);\r\n return bond_value;\r\n}\r\nexports.numberToBondInt64 = numberToBondInt64;\r\n/**\r\n * Creates a new GUID.\r\n * @return {string} A GUID.\r\n */\r\nfunction newGuid() {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(GuidRegex, function (c) {\r\n var r = (Math.random() * 16 | 0), v = (c === 'x' ? r : r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n}\r\nexports.newGuid = newGuid;\r\n/**\r\n * Checks if the type of value is a string.\r\n * @param {any} value - Value to be checked.\r\n * @return {boolean} True if the value is a string, false otherwise.\r\n */\r\nfunction isString(value) {\r\n return typeof value === 'string';\r\n}\r\nexports.isString = isString;\r\n/**\r\n * Checks if the type of value is a number.\r\n * @param {any} value - Value to be checked.\r\n * @return {boolean} True if the value is a number, false otherwise.\r\n */\r\nfunction isNumber(value) {\r\n return typeof value === 'number';\r\n}\r\nexports.isNumber = isNumber;\r\n/**\r\n * Checks if the type of value is a boolean.\r\n * @param {any} value - Value to be checked.\r\n * @return {boolean} True if the value is a boolean, false otherwise.\r\n */\r\nfunction isBoolean(value) {\r\n return typeof value === 'boolean';\r\n}\r\nexports.isBoolean = isBoolean;\r\n/**\r\n * Check if the type of value is a date.\r\n * @param {any} value - Value to be checked.\r\n * @return {boolean} True if the value is a date, false otherwise.\r\n */\r\nfunction isDate(value) {\r\n return value instanceof Date;\r\n}\r\nexports.isDate = isDate;\r\n/**\r\n * Converts milliseconds to ticks since 00:00:00 Jan 1, 0001.\r\n * @param {number} msToTicks - The milliseconds value to be converted.\r\n * @return {number} The value of the milliseconds in .Net Ticks.\r\n */\r\nfunction msToTicks(timeInMs) {\r\n return (timeInMs + MSTillUnixEpoch) * MSToTicksMultiplier;\r\n}\r\nexports.msToTicks = msToTicks;\r\n/**\r\n * Gets the tenant id from the tenant token.\r\n * @param {string} apiKey - The token from which the tenant id is to be extracted.\r\n * @return {string} The tenant id.\r\n */\r\nfunction getTenantId(apiKey) {\r\n var indexTenantId = apiKey.indexOf('-');\r\n if (indexTenantId > -1) {\r\n return apiKey.substring(0, indexTenantId);\r\n }\r\n return '';\r\n}\r\nexports.getTenantId = getTenantId;\r\n/**\r\n * Checks if HTML5 Beacons are supported in the current environment.\r\n * @return {boolean} True if supported, false otherwise.\r\n */\r\nfunction isBeaconsSupported() {\r\n if (beaconsSupported === NullValue) {\r\n beaconsSupported = typeof navigator !== 'undefined' && Boolean(navigator.sendBeacon);\r\n }\r\n return beaconsSupported;\r\n}\r\nexports.isBeaconsSupported = isBeaconsSupported;\r\n/**\r\n * Checks if Uint8Array are available in the current environment. Safari and Firefox along with\r\n * ReactNative are known to not support Uint8Array properly.\r\n * @return {boolean} True if available, false otherwise.\r\n */\r\nfunction isUint8ArrayAvailable() {\r\n if (uInt8ArraySupported === NullValue) {\r\n uInt8ArraySupported = typeof Uint8Array !== 'undefined' && !isSafariOrFirefox() && !isReactNative();\r\n }\r\n return uInt8ArraySupported;\r\n}\r\nexports.isUint8ArrayAvailable = isUint8ArrayAvailable;\r\n/**\r\n * Checks if the value is an AWTEventPriority.\r\n * @param {enum} value - The value that needs to be checked.\r\n * @return {boolean} True if the value is in AWTEventPriority, false otherwise.\r\n */\r\nfunction isPriority(value) {\r\n if (isNumber(value) && ((value >= 1 && value <= 3) || value === 5)) {\r\n return true;\r\n }\r\n return false;\r\n}\r\nexports.isPriority = isPriority;\r\n/**\r\n * Sanitizes the Property. It checks the that the property name and value are valid. It also\r\n * checks/populates the correct type and pii of the property value.\r\n * @param {string} name - The property name.\r\n * @param {string|number|boolean|Date|object} property - The property value or an AWTEventProperty containing value,\r\n * type ,pii and customer content.\r\n * @return {object} AWTEventProperty containing valid name, value, pii and type or null if invalid.\r\n */\r\nfunction sanitizeProperty(name, property) {\r\n //Check that property is valid\r\n if (!exports.PropertyNameRegex.test(name) || isNotDefined(property)) {\r\n return NullValue;\r\n }\r\n //Check if type is AWTEventProperty. If not convert to AWTEventProperty\r\n if (isNotDefined(property.value)) {\r\n property = { value: property, type: Enums_1.AWTPropertyType.Unspecified };\r\n }\r\n property.type = sanitizePropertyType(property.value, property.type);\r\n if (!property.type) {\r\n return NullValue;\r\n }\r\n //If value is date. Then convert to number in Ticks.\r\n if (isDate(property.value)) {\r\n property.value = msToTicks(property.value.getTime());\r\n }\r\n //Ensure that only one of pii or customer content can be set\r\n if (property.pii > 0 && property.cc > 0) {\r\n return NullValue;\r\n }\r\n //If pii is set we need to validate its enum value.\r\n if (property.pii) {\r\n return isPii(property.pii) ? property : NullValue;\r\n }\r\n //If cc is set we need to validate its enum value.\r\n if (property.cc) {\r\n return isCustomerContent(property.cc) ? property : NullValue;\r\n }\r\n return property;\r\n}\r\nexports.sanitizeProperty = sanitizeProperty;\r\n/**\r\n * Converts a date object into an ISO string. This is needed because not all browsers support ISO string format\r\n * on the date.\r\n * @param {object} date - The date which needs to be converted to ISO format.\r\n * @return {string} The date in ISO format.\r\n */\r\nfunction getISOString(date) {\r\n return date.getUTCFullYear() + '-' +\r\n twoDigit(date.getUTCMonth() + 1) + '-' +\r\n twoDigit(date.getUTCDate()) + 'T' +\r\n twoDigit(date.getUTCHours()) + ':' +\r\n twoDigit(date.getUTCMinutes()) + ':' +\r\n twoDigit(date.getUTCSeconds()) + '.' +\r\n threeDigit(date.getUTCMilliseconds()) + 'Z';\r\n}\r\nexports.getISOString = getISOString;\r\nfunction useXDomainRequest() {\r\n if (useXDR === NullValue) {\r\n var conn = new XMLHttpRequest();\r\n if (typeof conn.withCredentials === 'undefined' &&\r\n typeof XDomainRequest !== 'undefined') {\r\n useXDR = true;\r\n }\r\n else {\r\n useXDR = false;\r\n }\r\n }\r\n return useXDR;\r\n}\r\nexports.useXDomainRequest = useXDomainRequest;\r\nfunction isReactNative() {\r\n // If running in React Native, navigator.product will be populated\r\n if (typeof navigator !== 'undefined' && navigator.product) {\r\n return navigator.product === 'ReactNative';\r\n }\r\n return false;\r\n}\r\nexports.isReactNative = isReactNative;\r\nfunction twoDigit(n) {\r\n // Format integers to have at least two digits.\r\n return n < 10 ? '0' + n : n.toString();\r\n}\r\nfunction threeDigit(n) {\r\n // Format integers to have at least three digits.\r\n if (n < 10) {\r\n return '00' + n;\r\n }\r\n else if (n < 100) {\r\n return '0' + n;\r\n }\r\n return n.toString();\r\n}\r\nfunction sanitizePropertyType(value, type) {\r\n type = !isPropertyType(type) ? Enums_1.AWTPropertyType.Unspecified : type;\r\n switch (type) {\r\n case Enums_1.AWTPropertyType.Unspecified:\r\n return getCorrectType(value);\r\n case Enums_1.AWTPropertyType.String:\r\n return isString(value) ? type : NullValue;\r\n case Enums_1.AWTPropertyType.Boolean:\r\n return isBoolean(value) ? type : NullValue;\r\n case Enums_1.AWTPropertyType.Date:\r\n return isDate(value) && value.getTime() !== NaN ? type : NullValue;\r\n case Enums_1.AWTPropertyType.Int64:\r\n return isNumber(value) && value % 1 === 0 ? type : NullValue;\r\n case Enums_1.AWTPropertyType.Double:\r\n return isNumber(value) ? type : NullValue;\r\n }\r\n return NullValue;\r\n}\r\nfunction getCorrectType(value) {\r\n switch (typeof value) {\r\n case 'string':\r\n return Enums_1.AWTPropertyType.String;\r\n case 'boolean':\r\n return Enums_1.AWTPropertyType.Boolean;\r\n case 'number':\r\n return Enums_1.AWTPropertyType.Double;\r\n case 'object':\r\n return isDate(value) ? Enums_1.AWTPropertyType.Date : NullValue;\r\n }\r\n return NullValue;\r\n}\r\nfunction isPii(value) {\r\n if (isNumber(value) && value >= 0 && value <= 13) {\r\n return true;\r\n }\r\n return false;\r\n}\r\nfunction isCustomerContent(value) {\r\n if (isNumber(value) && value >= 0 && value <= 1) {\r\n return true;\r\n }\r\n return false;\r\n}\r\nfunction isPropertyType(value) {\r\n if (isNumber(value) && value >= 0 && value <= 4) {\r\n return true;\r\n }\r\n return false;\r\n}\r\nfunction isSafariOrFirefox() {\r\n // If non-browser navigator will be undefined\r\n if (typeof navigator !== 'undefined' && navigator.userAgent) {\r\n var ua = navigator.userAgent.toLowerCase();\r\n if ((ua.indexOf('safari') >= 0 || ua.indexOf('firefox') >= 0) && ua.indexOf('chrome') < 0) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n}\r\nfunction isNotDefined(value) {\r\n return value === undefined || value === NullValue || value === '';\r\n}\r\n","var baseSetData = require('./_baseSetData'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\nvar setData = shortOut(baseSetData);\n\nmodule.exports = setData;\n","var isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n","var isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nmodule.exports = isKey;\n","\n/**\n * When source maps are enabled, `style-loader` uses a link element with a data-uri to\n * embed the css on the page. This breaks all relative urls because now they are relative to a\n * bundle instead of the current page.\n *\n * One solution is to only use full urls, but that may be impossible.\n *\n * Instead, this function \"fixes\" the relative urls to be absolute according to the current page location.\n *\n * A rudimentary test suite is located at `test/fixUrls.js` and can be run via the `npm test` command.\n *\n */\n\nmodule.exports = function (css) {\n // get current location\n var location = typeof window !== \"undefined\" && window.location;\n\n if (!location) {\n throw new Error(\"fixUrls requires window.location\");\n }\n\n\t// blank or null?\n\tif (!css || typeof css !== \"string\") {\n\t return css;\n }\n\n var baseUrl = location.protocol + \"//\" + location.host;\n var currentDir = baseUrl + location.pathname.replace(/\\/[^\\/]*$/, \"/\");\n\n\t// convert each url(...)\n\t/*\n\tThis regular expression is just a way to recursively match brackets within\n\ta string.\n\n\t /url\\s*\\( = Match on the word \"url\" with any whitespace after it and then a parens\n\t ( = Start a capturing group\n\t (?: = Start a non-capturing group\n\t [^)(] = Match anything that isn't a parentheses\n\t | = OR\n\t \\( = Match a start parentheses\n\t (?: = Start another non-capturing groups\n\t [^)(]+ = Match anything that isn't a parentheses\n\t | = OR\n\t \\( = Match a start parentheses\n\t [^)(]* = Match anything that isn't a parentheses\n\t \\) = Match a end parentheses\n\t ) = End Group\n *\\) = Match anything and then a close parens\n ) = Close non-capturing group\n * = Match anything\n ) = Close capturing group\n\t \\) = Match a close parens\n\n\t /gi = Get all matches, not the first. Be case insensitive.\n\t */\n\tvar fixedCss = css.replace(/url\\s*\\(((?:[^)(]|\\((?:[^)(]+|\\([^)(]*\\))*\\))*)\\)/gi, function(fullMatch, origUrl) {\n\t\t// strip quotes (if they exist)\n\t\tvar unquotedOrigUrl = origUrl\n\t\t\t.trim()\n\t\t\t.replace(/^\"(.*)\"$/, function(o, $1){ return $1; })\n\t\t\t.replace(/^'(.*)'$/, function(o, $1){ return $1; });\n\n\t\t// already a full url? no change\n\t\tif (/^(#|data:|http:\\/\\/|https:\\/\\/|file:\\/\\/\\/|\\s*$)/i.test(unquotedOrigUrl)) {\n\t\t return fullMatch;\n\t\t}\n\n\t\t// convert the url to a full url\n\t\tvar newUrl;\n\n\t\tif (unquotedOrigUrl.indexOf(\"//\") === 0) {\n\t\t \t//TODO: should we add protocol?\n\t\t\tnewUrl = unquotedOrigUrl;\n\t\t} else if (unquotedOrigUrl.indexOf(\"/\") === 0) {\n\t\t\t// path should be relative to the base url\n\t\t\tnewUrl = baseUrl + unquotedOrigUrl; // already starts with '/'\n\t\t} else {\n\t\t\t// path should be relative to current directory\n\t\t\tnewUrl = currentDir + unquotedOrigUrl.replace(/^\\.\\//, \"\"); // Strip leading './'\n\t\t}\n\n\t\t// send back the fixed url(...)\n\t\treturn \"url(\" + JSON.stringify(newUrl) + \")\";\n\t});\n\n\t// send back the fixed css\n\treturn fixedCss;\n};\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n","var isObject = require('./isObject');\n\n/**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\nfunction isStrictComparable(value) {\n return value === value && !isObject(value);\n}\n\nmodule.exports = isStrictComparable;\n","/**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n}\n\nmodule.exports = strictIndexOf;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","var realNames = require('./_realNames');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\nfunction getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n}\n\nmodule.exports = getFuncName;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AriaSDK.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n* File to export public classes, interfaces and enums.\r\n*/\r\nvar Enums_1 = require(\"../common/Enums\");\r\nexports.AWTPropertyType = Enums_1.AWTPropertyType;\r\nexports.AWTPiiKind = Enums_1.AWTPiiKind;\r\nexports.AWTEventPriority = Enums_1.AWTEventPriority;\r\nexports.AWTEventsDroppedReason = Enums_1.AWTEventsDroppedReason;\r\nexports.AWTEventsRejectedReason = Enums_1.AWTEventsRejectedReason;\r\nexports.AWTCustomerContentKind = Enums_1.AWTCustomerContentKind;\r\nvar Enums_2 = require(\"./Enums\");\r\nexports.AWTUserIdType = Enums_2.AWTUserIdType;\r\nexports.AWTSessionState = Enums_2.AWTSessionState;\r\nvar DataModels_1 = require(\"./DataModels\");\r\nexports.AWT_BEST_EFFORT = DataModels_1.AWT_BEST_EFFORT;\r\nexports.AWT_NEAR_REAL_TIME = DataModels_1.AWT_NEAR_REAL_TIME;\r\nexports.AWT_REAL_TIME = DataModels_1.AWT_REAL_TIME;\r\nvar AWTEventProperties_1 = require(\"./AWTEventProperties\");\r\nexports.AWTEventProperties = AWTEventProperties_1.default;\r\nvar AWTLogger_1 = require(\"./AWTLogger\");\r\nexports.AWTLogger = AWTLogger_1.default;\r\nvar AWTLogManager_1 = require(\"./AWTLogManager\");\r\nexports.AWTLogManager = AWTLogManager_1.default;\r\nvar AWTTransmissionManager_1 = require(\"./AWTTransmissionManager\");\r\nexports.AWTTransmissionManager = AWTTransmissionManager_1.default;\r\nvar AWTSerializer_1 = require(\"../common/AWTSerializer\");\r\nexports.AWTSerializer = AWTSerializer_1.default;\r\nvar AWTSemanticContext_1 = require(\"./AWTSemanticContext\");\r\nexports.AWTSemanticContext = AWTSemanticContext_1.default;\r\nexports.AWT_COLLECTOR_URL_UNITED_STATES = 'https://us.pipe.aria.microsoft.com/Collector/3.0/';\r\nexports.AWT_COLLECTOR_URL_GERMANY = 'https://de.pipe.aria.microsoft.com/Collector/3.0/';\r\nexports.AWT_COLLECTOR_URL_JAPAN = 'https://jp.pipe.aria.microsoft.com/Collector/3.0/';\r\nexports.AWT_COLLECTOR_URL_AUSTRALIA = 'https://au.pipe.aria.microsoft.com/Collector/3.0/';\r\nexports.AWT_COLLECTOR_URL_EUROPE = 'https://eu.pipe.aria.microsoft.com/Collector/3.0/';\r\nexports.AWT_COLLECTOR_URL_USGOV_DOD = 'https://pf.pipe.aria.microsoft.com/Collector/3.0';\r\nexports.AWT_COLLECTOR_URL_USGOV_DOJ = 'https://tb.pipe.aria.microsoft.com/Collector/3.0';\r\n","var baseCreate = require('./_baseCreate'),\n isObject = require('./isObject');\n\n/**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\nfunction createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n}\n\nmodule.exports = createCtor;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","\"use strict\";\n/**\n * GenericRestClient.ts\n * Author: David de Regt\n * Copyright: Microsoft 2015\n *\n * Base client type for accessing RESTful services\n */\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar utils_1 = require(\"./utils\");\nvar SimpleWebRequest_1 = require(\"./SimpleWebRequest\");\nvar GenericRestClient = /** @class */ (function () {\n function GenericRestClient(endpointUrl) {\n this._defaultOptions = {\n excludeEndpointUrl: false,\n withCredentials: false,\n retries: 0,\n };\n this._endpointUrl = endpointUrl;\n }\n GenericRestClient.prototype._performApiCall = function (apiPath, action, objToPost, givenOptions) {\n var _this = this;\n if (givenOptions === void 0) { givenOptions = {}; }\n var options = __assign(__assign({}, this._defaultOptions), givenOptions);\n if (objToPost) {\n options.sendData = objToPost;\n }\n if (options.eTag) {\n if (!options.augmentHeaders) {\n options.augmentHeaders = {};\n }\n options.augmentHeaders['If-None-Match'] = options.eTag;\n }\n if (!options.contentType) {\n options.contentType = utils_1.isString(options.sendData) ? 'form' : 'json';\n }\n var finalUrl = options.excludeEndpointUrl ? apiPath : this._endpointUrl + apiPath;\n return new SimpleWebRequest_1.SimpleWebRequest(action, finalUrl, options, function () { return _this._getHeaders(options); }, function () { return _this._blockRequestUntil(options); })\n .start()\n .then(function (response) {\n _this._processSuccessResponse(response);\n return response;\n });\n };\n GenericRestClient.prototype._getHeaders = function (options) {\n // Virtual function -- No-op by default\n return {};\n };\n // Override (but make sure to call super and chain appropriately) this function if you want to add more blocking criteria.\n // Also, this might be called multiple times to check if the conditions changed\n GenericRestClient.prototype._blockRequestUntil = function (options) {\n // No-op by default\n return undefined;\n };\n // Override this function to process any generic headers that come down with a successful response\n GenericRestClient.prototype._processSuccessResponse = function (resp) {\n // No-op by default\n };\n GenericRestClient.prototype.performApiGet = function (apiPath, options) {\n return this\n .performApiGetDetailed(apiPath, options)\n .then(function (resp) { return resp.body; });\n };\n GenericRestClient.prototype.performApiGetDetailed = function (apiPath, options) {\n return this._performApiCall(apiPath, 'GET', undefined, options);\n };\n GenericRestClient.prototype.performApiPost = function (apiPath, objToPost, options) {\n return this\n .performApiPostDetailed(apiPath, objToPost, options)\n .then(function (resp) { return resp.body; });\n };\n GenericRestClient.prototype.performApiPostDetailed = function (apiPath, objToPost, options) {\n return this._performApiCall(apiPath, 'POST', objToPost, options);\n };\n GenericRestClient.prototype.performApiPatch = function (apiPath, objToPatch, options) {\n return this\n .performApiPatchDetailed(apiPath, objToPatch, options)\n .then(function (resp) { return resp.body; });\n };\n GenericRestClient.prototype.performApiPatchDetailed = function (apiPath, objToPatch, options) {\n return this._performApiCall(apiPath, 'PATCH', objToPatch, options);\n };\n GenericRestClient.prototype.performApiPut = function (apiPath, objToPut, options) {\n return this\n .performApiPutDetailed(apiPath, objToPut, options)\n .then(function (resp) { return resp.body; });\n };\n GenericRestClient.prototype.performApiPutDetailed = function (apiPath, objToPut, options) {\n return this._performApiCall(apiPath, 'PUT', objToPut, options);\n };\n GenericRestClient.prototype.performApiDelete = function (apiPath, objToDelete, options) {\n return this\n .performApiDeleteDetailed(apiPath, objToDelete, options)\n .then(function (resp) { return resp.body; });\n };\n GenericRestClient.prototype.performApiDeleteDetailed = function (apiPath, objToDelete, options) {\n return this._performApiCall(apiPath, 'DELETE', objToDelete, options);\n };\n return GenericRestClient;\n}());\nexports.GenericRestClient = GenericRestClient;\n","var baseIsEqual = require('./_baseIsEqual'),\n get = require('./get'),\n hasIn = require('./hasIn'),\n isKey = require('./_isKey'),\n isStrictComparable = require('./_isStrictComparable'),\n matchesStrictComparable = require('./_matchesStrictComparable'),\n toKey = require('./_toKey');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n}\n\nmodule.exports = baseMatchesProperty;\n","var memoizeCapped = require('./_memoizeCapped');\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nmodule.exports = stringToPath;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var memoize = require('./memoize');\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nmodule.exports = memoizeCapped;\n","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n","/**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n}\n\nmodule.exports = matchesStrictComparable;\n","var baseFor = require('./_baseFor'),\n keys = require('./keys');\n\n/**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\nfunction baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n}\n\nmodule.exports = baseForOwn;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","/** Used to lookup unminified function names. */\nvar realNames = {};\n\nmodule.exports = realNames;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar Enums_1 = require(\"../common/Enums\");\r\nvar AWTSerializer_1 = require(\"../common/AWTSerializer\");\r\nvar AWTRetryPolicy_1 = require(\"../common/AWTRetryPolicy\");\r\nvar AWTKillSwitch_1 = require(\"../common/AWTKillSwitch\");\r\nvar AWTClockSkewManager_1 = require(\"../common/AWTClockSkewManager\");\r\nvar Version = require(\"./Version\");\r\nvar Utils = require(\"../common/Utils\");\r\nvar AWTNotificationManager_1 = require(\"../common/AWTNotificationManager\");\r\nvar AWTTransmissionManagerCore_1 = require(\"./AWTTransmissionManagerCore\");\r\nvar MaxConnections = 2;\r\nvar MaxRetries = 1;\r\nvar Method = 'POST';\r\n/**\r\n * Class managing the sending of requests.\r\n */\r\nvar AWTHttpManager = /** @class */ (function () {\r\n /**\r\n * @constructor\r\n * @param {object} requestQueue - The queue that contains the requests to be sent.\r\n * @param {string} collectorUrl - The collector url to which the requests must be sent.\r\n * @param {object} _queueManager - The queue manager that we should add requests back to if needed.\r\n * @param {object} _httpInterface - The http interface that should be used to send HTTP requests.\r\n */\r\n function AWTHttpManager(_requestQueue, collectorUrl, _queueManager, _httpInterface, clockSkewRefreshDurationInMins) {\r\n var _this = this;\r\n this._requestQueue = _requestQueue;\r\n this._queueManager = _queueManager;\r\n this._httpInterface = _httpInterface;\r\n this._urlString = '?qsp=true&content-type=application%2Fbond-compact-binary&client-id=NO_AUTH&sdk-version='\r\n + Version.FullVersionString;\r\n this._killSwitch = new AWTKillSwitch_1.default();\r\n this._paused = false;\r\n this._useBeacons = false;\r\n this._activeConnections = 0;\r\n this._clockSkewManager = new AWTClockSkewManager_1.default(clockSkewRefreshDurationInMins);\r\n if (!Utils.isUint8ArrayAvailable()) {\r\n this._urlString += '&content-encoding=base64';\r\n }\r\n this._urlString = collectorUrl + this._urlString;\r\n if (!this._httpInterface) {\r\n this._useBeacons = !Utils.isReactNative(); //Only use beacons if not running in React Native\r\n this._httpInterface = {\r\n sendPOST: function (urlString, data, ontimeout, onerror, onload, sync) {\r\n try {\r\n if (Utils.useXDomainRequest()) {\r\n var xdr = new XDomainRequest();\r\n xdr.open(Method, urlString);\r\n //can't get the status code in xdr.\r\n xdr.onload = function () {\r\n // we will assume onload means the request succeeded.\r\n onload(200, null);\r\n };\r\n xdr.onerror = function () {\r\n // we will assume onerror means we need to drop the events.\r\n onerror(400, null);\r\n };\r\n xdr.ontimeout = function () {\r\n // we will assume ontimeout means we need to retry the events.\r\n ontimeout(500, null);\r\n };\r\n xdr.send(data);\r\n }\r\n else if (Utils.isReactNative()) {\r\n //Use the fetch API to send events in React Native\r\n fetch(urlString, {\r\n body: data,\r\n method: Method\r\n }).then(function (response) {\r\n var headerMap = {};\r\n if (response.headers) {\r\n response.headers.forEach(function (value, name) {\r\n headerMap[name] = value;\r\n });\r\n }\r\n onload(response.status, headerMap);\r\n }).catch(function (error) {\r\n //In case there is an error in the request. Set the status to 0\r\n //so that the events can be retried later.\r\n onerror(0, {});\r\n });\r\n }\r\n else {\r\n var xhr_1 = new XMLHttpRequest();\r\n xhr_1.open(Method, urlString, !sync);\r\n xhr_1.onload = function () {\r\n onload(xhr_1.status, _this._convertAllHeadersToMap(xhr_1.getAllResponseHeaders()));\r\n };\r\n xhr_1.onerror = function () {\r\n onerror(xhr_1.status, _this._convertAllHeadersToMap(xhr_1.getAllResponseHeaders()));\r\n };\r\n xhr_1.ontimeout = function () {\r\n ontimeout(xhr_1.status, _this._convertAllHeadersToMap(xhr_1.getAllResponseHeaders()));\r\n };\r\n xhr_1.send(data);\r\n }\r\n }\r\n catch (e) {\r\n // we will assume exception means we need to drop the events.\r\n onerror(400, null);\r\n }\r\n }\r\n };\r\n }\r\n }\r\n /**\r\n * Check if there is an idle connection overwhich we can send a request.\r\n * @return {boolean} True if there is an idle connection, false otherwise.\r\n */\r\n AWTHttpManager.prototype.hasIdleConnection = function () {\r\n return this._activeConnections < MaxConnections;\r\n };\r\n /**\r\n * Send requests in the request queue up if there is an idle connection, sending is\r\n * not pause and clock skew manager allows sending request.\r\n */\r\n AWTHttpManager.prototype.sendQueuedRequests = function () {\r\n while (this.hasIdleConnection() && !this._paused && this._requestQueue.length > 0\r\n && this._clockSkewManager.allowRequestSending()) {\r\n this._activeConnections++;\r\n this._sendRequest(this._requestQueue.shift(), 0, false);\r\n }\r\n //No more requests to send, tell TPM to try to schedule timer\r\n //in case it was waiting for idle connections\r\n if (this.hasIdleConnection()) {\r\n AWTTransmissionManagerCore_1.default.scheduleTimer();\r\n }\r\n };\r\n /**\r\n * Check if there are no active requests being sent.\r\n * @return {boolean} True if idle, false otherwise.\r\n */\r\n AWTHttpManager.prototype.isCompletelyIdle = function () {\r\n return this._activeConnections === 0;\r\n };\r\n /**\r\n * Queue all the remaning requests to be sent. The requests will be\r\n * sent using HTML5 Beacons if they are available.\r\n */\r\n AWTHttpManager.prototype.teardown = function () {\r\n while (this._requestQueue.length > 0) {\r\n this._sendRequest(this._requestQueue.shift(), 0, true);\r\n }\r\n };\r\n /**\r\n * Pause the sending of requests. No new requests will be sent.\r\n */\r\n AWTHttpManager.prototype.pause = function () {\r\n this._paused = true;\r\n };\r\n /**\r\n * Resume the sending of requests.\r\n */\r\n AWTHttpManager.prototype.resume = function () {\r\n this._paused = false;\r\n this.sendQueuedRequests();\r\n };\r\n /**\r\n * Removes any pending requests to be sent.\r\n */\r\n AWTHttpManager.prototype.removeQueuedRequests = function () {\r\n this._requestQueue.length = 0;\r\n };\r\n /**\r\n * Sends a request synchronously to the Aria collector. This api is used to send\r\n * a request containing a single immediate event.\r\n *\r\n * @param request - The request to be sent.\r\n * @param token - The token used to send the request.\r\n */\r\n AWTHttpManager.prototype.sendSynchronousRequest = function (request, token) {\r\n //This will not take into account the max connections restriction. Since this is sync, we can \r\n //only send one of this request at a time and thus should not worry about multiple connections \r\n //being used to send synchronoush events.\r\n if (this._paused) {\r\n //If paused then convert to High priority. It will be added back to queue in _sendRequest\r\n request[token][0].priority = Enums_1.AWTEventPriority.High;\r\n }\r\n //Increment active connection since we are still going to use a connection to send the request.\r\n this._activeConnections++;\r\n //For sync requests we will not wait for the clock skew. \r\n this._sendRequest(request, 0, false, true);\r\n };\r\n AWTHttpManager.prototype._sendRequest = function (request, retryCount, isTeardown, isSynchronous) {\r\n var _this = this;\r\n if (isSynchronous === void 0) { isSynchronous = false; }\r\n try {\r\n if (this._paused) {\r\n this._activeConnections--;\r\n this._queueManager.addBackRequest(request);\r\n return;\r\n }\r\n var tokenCount_1 = 0;\r\n var apikey_1 = '';\r\n for (var token in request) {\r\n if (request.hasOwnProperty(token)) {\r\n if (!this._killSwitch.isTenantKilled(token)) {\r\n if (apikey_1.length > 0) {\r\n apikey_1 += ',';\r\n }\r\n apikey_1 += token;\r\n tokenCount_1++;\r\n }\r\n else {\r\n AWTNotificationManager_1.default.eventsRejected(request[token], Enums_1.AWTEventsRejectedReason.KillSwitch);\r\n delete request[token];\r\n }\r\n }\r\n }\r\n if (tokenCount_1 > 0) {\r\n var payloadResult = AWTSerializer_1.default.getPayloadBlob(request, tokenCount_1);\r\n if (payloadResult.remainingRequest) {\r\n this._requestQueue.push(payloadResult.remainingRequest);\r\n }\r\n var urlString = this._urlString + '&x-apikey=' + apikey_1 + '&client-time-epoch-millis='\r\n + Date.now().toString();\r\n if (this._clockSkewManager.shouldAddClockSkewHeaders()) {\r\n urlString = urlString + '&time-delta-to-apply-millis=' + this._clockSkewManager.getClockSkewHeaderValue();\r\n }\r\n var data = void 0;\r\n if (!Utils.isUint8ArrayAvailable()) {\r\n data = AWTSerializer_1.default.base64Encode(payloadResult.payloadBlob);\r\n }\r\n else {\r\n data = new Uint8Array(payloadResult.payloadBlob);\r\n }\r\n for (var token in request) {\r\n if (request.hasOwnProperty(token)) {\r\n //Increment the send attempt count\r\n for (var i = 0; i < request[token].length; ++i) {\r\n request[token][i].sendAttempt > 0 ? request[token][i].sendAttempt++ : request[token][i].sendAttempt = 1;\r\n }\r\n }\r\n }\r\n //beacons will not be used if an http interface was passed by the customer\r\n if (this._useBeacons && isTeardown && Utils.isBeaconsSupported()) {\r\n if (navigator.sendBeacon(urlString, data)) {\r\n //Request sent via beacon.\r\n return;\r\n }\r\n }\r\n //Send sync requests if the request is immediate or we are tearing down telemetry.\r\n this._httpInterface.sendPOST(urlString, data, function (status, headers) {\r\n _this._retryRequestIfNeeded(status, headers, request, tokenCount_1, apikey_1, retryCount, isTeardown, isSynchronous);\r\n }, function (status, headers) {\r\n _this._retryRequestIfNeeded(status, headers, request, tokenCount_1, apikey_1, retryCount, isTeardown, isSynchronous);\r\n }, function (status, headers) {\r\n _this._retryRequestIfNeeded(status, headers, request, tokenCount_1, apikey_1, retryCount, isTeardown, isSynchronous);\r\n }, isTeardown || isSynchronous);\r\n }\r\n else if (!isTeardown) {\r\n this._handleRequestFinished(false, {}, isTeardown, isSynchronous);\r\n }\r\n }\r\n catch (e) {\r\n //If we catch any error while sending the request, drop the request.\r\n this._handleRequestFinished(false, {}, isTeardown, isSynchronous);\r\n }\r\n };\r\n AWTHttpManager.prototype._retryRequestIfNeeded = function (status, headers, request, tokenCount, apikey, retryCount, isTeardown, isSynchronous) {\r\n var _this = this;\r\n var shouldRetry = true;\r\n if (typeof status !== 'undefined') {\r\n if (headers) {\r\n var killedTokens = this._killSwitch.setKillSwitchTenants(headers['kill-tokens'], headers['kill-duration-seconds']);\r\n this._clockSkewManager.setClockSkew(headers['time-delta-millis']);\r\n for (var i = 0; i < killedTokens.length; ++i) {\r\n AWTNotificationManager_1.default.eventsRejected(request[killedTokens[i]], Enums_1.AWTEventsRejectedReason.KillSwitch);\r\n delete request[killedTokens[i]];\r\n tokenCount--;\r\n }\r\n }\r\n else {\r\n this._clockSkewManager.setClockSkew(null);\r\n }\r\n if (status === 200) {\r\n this._handleRequestFinished(true, request, isTeardown, isSynchronous);\r\n return;\r\n }\r\n if (!AWTRetryPolicy_1.default.shouldRetryForStatus(status) || tokenCount <= 0) {\r\n shouldRetry = false;\r\n }\r\n }\r\n if (shouldRetry) {\r\n if (isSynchronous) {\r\n //Synchronous events only contain a single event so the apiKey is equal to the token for that event.\r\n //Convert the event to High priority and add back to queue to be sent as High event.\r\n this._activeConnections--;\r\n request[apikey][0].priority = Enums_1.AWTEventPriority.High;\r\n this._queueManager.addBackRequest(request);\r\n }\r\n else if (retryCount < MaxRetries) {\r\n for (var token in request) {\r\n if (request.hasOwnProperty(token)) {\r\n AWTNotificationManager_1.default.eventsRetrying(request[token]);\r\n }\r\n }\r\n setTimeout(function () { return _this._sendRequest(request, retryCount + 1, false); }, AWTRetryPolicy_1.default.getMillisToBackoffForRetry(retryCount));\r\n }\r\n else {\r\n this._activeConnections--;\r\n AWTTransmissionManagerCore_1.default.backOffTransmission();\r\n this._queueManager.addBackRequest(request);\r\n }\r\n }\r\n else {\r\n this._handleRequestFinished(false, request, isTeardown, isSynchronous);\r\n }\r\n };\r\n AWTHttpManager.prototype._handleRequestFinished = function (success, request, isTeardown, isSynchronous) {\r\n if (success) {\r\n AWTTransmissionManagerCore_1.default.clearBackOff();\r\n }\r\n for (var token in request) {\r\n if (request.hasOwnProperty(token)) {\r\n if (success) {\r\n AWTNotificationManager_1.default.eventsSent(request[token]);\r\n }\r\n else {\r\n AWTNotificationManager_1.default.eventsDropped(request[token], Enums_1.AWTEventsDroppedReason.NonRetryableStatus);\r\n }\r\n }\r\n }\r\n this._activeConnections--;\r\n if (!isSynchronous && !isTeardown) {\r\n //Only continue sending more requests as long as the current request was not an synchronous request or sent\r\n //during teardown. We want to return after just sending this one sync request.\r\n this.sendQueuedRequests();\r\n }\r\n };\r\n /**\r\n * Converts the XHR getAllResponseHeaders to a map containing the header key and value.\r\n */\r\n AWTHttpManager.prototype._convertAllHeadersToMap = function (headersString) {\r\n var headers = {};\r\n if (headersString) {\r\n var headersArray = headersString.split('\\n');\r\n for (var i = 0; i < headersArray.length; ++i) {\r\n var header = headersArray[i].split(': ');\r\n headers[header[0]] = header[1];\r\n }\r\n }\r\n return headers;\r\n };\r\n return AWTHttpManager;\r\n}());\r\nexports.default = AWTHttpManager;\r\n","/**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHasIn(object, key) {\n return object != null && key in Object(object);\n}\n\nmodule.exports = baseHasIn;\n","var metaMap = require('./_metaMap'),\n noop = require('./noop');\n\n/**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\nvar getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n};\n\nmodule.exports = getData;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var LazyWrapper = require('./_LazyWrapper'),\n LodashWrapper = require('./_LodashWrapper'),\n baseLodash = require('./_baseLodash'),\n isArray = require('./isArray'),\n isObjectLike = require('./isObjectLike'),\n wrapperClone = require('./_wrapperClone');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\nfunction lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n}\n\n// Ensure wrappers are instances of `baseLodash`.\nlodash.prototype = baseLodash.prototype;\nlodash.prototype.constructor = lodash;\n\nmodule.exports = lodash;\n","/**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n}\n\nmodule.exports = baseFindIndex;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n","/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\nfunction composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n}\n\nmodule.exports = composeArgsRight;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","\"use strict\";\r\n/**\r\n* microsoft.bond.ts\r\n* Copyright: Microsoft 2016\r\n*/\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nvar bond_const_1 = require(\"./bond_const\");\r\nexports._BondDataType = bond_const_1._BondDataType;\r\nvar _Encoding = require(\"./microsoft.bond.encoding\");\r\nexports._Encoding = _Encoding;\r\nvar IO = require(\"./microsoft.bond.io\");\r\nexports.IO = IO;\r\nvar microsoft_bond_primitives_1 = require(\"./microsoft.bond.primitives\");\r\nexports.Int64 = microsoft_bond_primitives_1.Int64;\r\nexports.UInt64 = microsoft_bond_primitives_1.UInt64;\r\nexports.Number = microsoft_bond_primitives_1.Number;\r\nvar CompactBinaryProtocolWriter = /** @class */ (function () {\r\n function CompactBinaryProtocolWriter(stream) {\r\n this._stream = stream;\r\n }\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteBlob = function (blob) {\r\n this._stream._Write(blob, 0, blob.length);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteBool = function (value) {\r\n this._stream._WriteByte(value ? 1 : 0);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteContainerBegin = function (size, elementType) {\r\n this._WriteUInt8(elementType);\r\n this._WriteUInt32(size);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteMapContainerBegin = function (size, keyType, valueType) {\r\n this._WriteUInt8(keyType);\r\n this._WriteUInt8(valueType);\r\n this._WriteUInt32(size);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteDouble = function (value) {\r\n var array = _Encoding._Double_GetBytes(value);\r\n this._stream._Write(array, 0, array.length);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteFieldBegin = function (type, id, metadata) {\r\n if (id <= 5) {\r\n this._stream._WriteByte(type | (id << 5));\r\n }\r\n else if (id <= 0xff) {\r\n this._stream._WriteByte(type | (6 << 5));\r\n this._stream._WriteByte(id);\r\n }\r\n else {\r\n this._stream._WriteByte(type | (7 << 5));\r\n this._stream._WriteByte(id);\r\n this._stream._WriteByte(id >> 8);\r\n }\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteInt32 = function (value) {\r\n value = _Encoding._Zigzag_EncodeZigzag32(value);\r\n this._WriteUInt32(value);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteInt64 = function (value) {\r\n this._WriteUInt64(_Encoding._Zigzag_EncodeZigzag64(value));\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteString = function (value) {\r\n if (value === '') {\r\n this._WriteUInt32(0 /*length*/);\r\n }\r\n else {\r\n var array = _Encoding._Utf8_GetBytes(value);\r\n this._WriteUInt32(array.length);\r\n this._stream._Write(array, 0, array.length);\r\n }\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteStructEnd = function (isBase) {\r\n this._WriteUInt8(isBase ? bond_const_1._BondDataType._BT_STOP_BASE : bond_const_1._BondDataType._BT_STOP);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteUInt32 = function (value) {\r\n var array = _Encoding._Varint_GetBytes(microsoft_bond_primitives_1.Number._ToUInt32(value));\r\n this._stream._Write(array, 0, array.length);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteUInt64 = function (value) {\r\n var array = _Encoding._Varint64_GetBytes(value);\r\n this._stream._Write(array, 0, array.length);\r\n };\r\n /*override*/\r\n CompactBinaryProtocolWriter.prototype._WriteUInt8 = function (value) {\r\n this._stream._WriteByte(microsoft_bond_primitives_1.Number._ToUInt8(value));\r\n };\r\n return CompactBinaryProtocolWriter;\r\n}());\r\nexports.CompactBinaryProtocolWriter = CompactBinaryProtocolWriter;\r\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AWTRetryPolicy.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n*/\r\nvar RandomizationLowerThreshold = 0.8;\r\nvar RandomizationUpperThreshold = 1.2;\r\nvar BaseBackoff = 3000;\r\nvar MaxBackoff = 120000;\r\n/**\r\n* Class for retry policy.\r\n*/\r\nvar AWTRetryPolicy = /** @class */ (function () {\r\n function AWTRetryPolicy() {\r\n }\r\n /**\r\n * Determine if the request should be retried for the given status code.\r\n * The below expression reads that we should only retry for:\r\n * - HttpStatusCodes that are smaller than 300.\r\n * - HttpStatusCodes greater or equal to 500 (except for 501-NotImplement\r\n * and 505-HttpVersionNotSupport).\r\n * - HttpStatusCode 408-RequestTimeout.\r\n * This is based on Microsoft.WindowsAzure.Storage.RetryPolicies.ExponentialRetry class\r\n * @param {number} httpStatusCode - The status code returned for the request.\r\n * @return {boolean} True if request should be retried, false otherwise.\r\n */\r\n AWTRetryPolicy.shouldRetryForStatus = function (httpStatusCode) {\r\n /* */\r\n return !((httpStatusCode >= 300 && httpStatusCode < 500 && httpStatusCode !== 408)\r\n || (httpStatusCode === 501)\r\n || (httpStatusCode === 505));\r\n };\r\n /**\r\n * Gets the number of milliseconds to back off before retrying the request. The\r\n * back off duration is exponentially scaled based on the number of retries already\r\n * done for the request.\r\n * @param {number} retriesSoFar - The number of times the request has already been retried.\r\n * @return {number} The back off duration for the request before it can be retried.\r\n */\r\n AWTRetryPolicy.getMillisToBackoffForRetry = function (retriesSoFar) {\r\n var waitDuration = 0;\r\n var minBackoff = BaseBackoff * RandomizationLowerThreshold;\r\n var maxBackoff = BaseBackoff * RandomizationUpperThreshold;\r\n var randomBackoff = Math.floor(Math.random() * (maxBackoff - minBackoff)) + minBackoff;\r\n waitDuration = Math.pow(4, retriesSoFar) * randomBackoff;\r\n return Math.min(waitDuration, MaxBackoff);\r\n };\r\n return AWTRetryPolicy;\r\n}());\r\nexports.default = AWTRetryPolicy;\r\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var LazyWrapper = require('./_LazyWrapper'),\n getData = require('./_getData'),\n getFuncName = require('./_getFuncName'),\n lodash = require('./wrapperLodash');\n\n/**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\nfunction isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n}\n\nmodule.exports = isLaziable;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","/**\n* index.js\n* Copyright: Microsoft 2016\n*\n* Points at typescript source for using with webpack/TSC.\n*/\n\nmodule.exports = require('./dist/SimpleRestClients');\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AWTStatsManager.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n*/\r\nvar Utils = require(\"./Utils\");\r\nvar AWTNotificationManager_1 = require(\"./AWTNotificationManager\");\r\nvar Enums_1 = require(\"./Enums\");\r\nvar StatsTimer = 60000;\r\n/**\r\n* Class that manages the stats.\r\n*/\r\nvar AWTStatsManager = /** @class */ (function () {\r\n function AWTStatsManager() {\r\n }\r\n /**\r\n * Intiailizes the stats collection.\r\n * @param {function} sendStats - The function to call when the stats are ready to be sent.\r\n */\r\n AWTStatsManager.initialize = function (sendStats) {\r\n var _this = this;\r\n this._sendStats = sendStats;\r\n this._isInitalized = true;\r\n AWTNotificationManager_1.default.addNotificationListener({\r\n eventsSent: function (events) {\r\n _this._addStat('records_sent_count', events.length, events[0].apiKey);\r\n },\r\n eventsDropped: function (events, reason) {\r\n switch (reason) {\r\n case Enums_1.AWTEventsDroppedReason.NonRetryableStatus:\r\n _this._addStat('d_send_fail', events.length, events[0].apiKey);\r\n _this._addStat('records_dropped_count', events.length, events[0].apiKey);\r\n break;\r\n case Enums_1.AWTEventsDroppedReason.QueueFull:\r\n _this._addStat('d_queue_full', events.length, events[0].apiKey);\r\n break;\r\n }\r\n },\r\n eventsRejected: function (events, reason) {\r\n switch (reason) {\r\n case Enums_1.AWTEventsRejectedReason.InvalidEvent:\r\n _this._addStat('r_inv', events.length, events[0].apiKey);\r\n break;\r\n case Enums_1.AWTEventsRejectedReason.KillSwitch:\r\n _this._addStat('r_kl', events.length, events[0].apiKey);\r\n break;\r\n case Enums_1.AWTEventsRejectedReason.SizeLimitExceeded:\r\n _this._addStat('r_size', events.length, events[0].apiKey);\r\n break;\r\n }\r\n _this._addStat('r_count', events.length, events[0].apiKey);\r\n },\r\n eventsRetrying: null\r\n });\r\n setTimeout(function () { return _this.flush(); }, StatsTimer);\r\n };\r\n /**\r\n * Flush the current stats and stop the stats collection.\r\n */\r\n AWTStatsManager.teardown = function () {\r\n if (this._isInitalized) {\r\n this.flush();\r\n this._isInitalized = false;\r\n }\r\n };\r\n /**\r\n * Increments the stat for event received.\r\n * @param {string} apiKey - The apiKey for which the event was received\r\n */\r\n AWTStatsManager.eventReceived = function (apiKey) {\r\n AWTStatsManager._addStat('records_received_count', 1, apiKey);\r\n };\r\n /**\r\n * Creates an event for each tenant token which had a stat and calls the\r\n * sendStats for that token.\r\n */\r\n AWTStatsManager.flush = function () {\r\n var _this = this;\r\n if (this._isInitalized) {\r\n for (var tenantId in this._stats) {\r\n if (this._stats.hasOwnProperty(tenantId)) {\r\n this._sendStats(this._stats[tenantId], tenantId);\r\n }\r\n }\r\n this._stats = {};\r\n setTimeout(function () { return _this.flush(); }, StatsTimer);\r\n }\r\n };\r\n AWTStatsManager._addStat = function (statName, value, apiKey) {\r\n if (this._isInitalized && apiKey !== Utils.StatsApiKey) {\r\n var tenantId = Utils.getTenantId(apiKey);\r\n if (!this._stats[tenantId]) {\r\n this._stats[tenantId] = {};\r\n }\r\n if (!this._stats[tenantId][statName]) {\r\n this._stats[tenantId][statName] = value;\r\n }\r\n else {\r\n this._stats[tenantId][statName] = this._stats[tenantId][statName] + value;\r\n }\r\n }\r\n };\r\n AWTStatsManager._isInitalized = false;\r\n AWTStatsManager._stats = {};\r\n return AWTStatsManager;\r\n}());\r\nexports.default = AWTStatsManager;\r\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var isStrictComparable = require('./_isStrictComparable'),\n keys = require('./keys');\n\n/**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\nfunction getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n}\n\nmodule.exports = getMatchData;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","var baseFindIndex = require('./_baseFindIndex'),\n baseIsNaN = require('./_baseIsNaN'),\n strictIndexOf = require('./_strictIndexOf');\n\n/**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n}\n\nmodule.exports = baseIndexOf;\n","/**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\nfunction baseLodash() {\n // No operation performed.\n}\n\nmodule.exports = baseLodash;\n","var apply = require('./_apply'),\n createCtor = require('./_createCtor'),\n createHybrid = require('./_createHybrid'),\n createRecurry = require('./_createRecurry'),\n getHolder = require('./_getHolder'),\n replaceHolders = require('./_replaceHolders'),\n root = require('./_root');\n\n/**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\nfunction createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n}\n\nmodule.exports = createCurry;\n","var baseForOwn = require('./_baseForOwn'),\n createBaseEach = require('./_createBaseEach');\n\n/**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\nvar baseEach = createBaseEach(baseForOwn);\n\nmodule.exports = baseEach;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","var toFinite = require('./toFinite');\n\n/**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\nfunction toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n}\n\nmodule.exports = toInteger;\n","var getWrapDetails = require('./_getWrapDetails'),\n insertWrapDetails = require('./_insertWrapDetails'),\n setToString = require('./_setToString'),\n updateWrapDetails = require('./_updateWrapDetails');\n\n/**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\nfunction setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n}\n\nmodule.exports = setWrapToString;\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* AWTLogger.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2017\r\n*/\r\nvar Enums_1 = require(\"../common/Enums\");\r\nvar Enums_2 = require(\"./Enums\");\r\nvar AWTEventProperties_1 = require(\"./AWTEventProperties\");\r\nvar Utils = require(\"../common/Utils\");\r\nvar AWTStatsManager_1 = require(\"../common/AWTStatsManager\");\r\nvar AWTNotificationManager_1 = require(\"../common/AWTNotificationManager\");\r\nvar AWTTransmissionManagerCore_1 = require(\"./AWTTransmissionManagerCore\");\r\nvar AWTLogManagerSettings_1 = require(\"./AWTLogManagerSettings\");\r\nvar Version = require(\"./Version\");\r\nvar AWTSemanticContext_1 = require(\"./AWTSemanticContext\");\r\nvar AWTAutoCollection_1 = require(\"./AWTAutoCollection\");\r\n/**\r\n* The AWTLogger class defines a logger.\r\n*/\r\nvar AWTLogger = /** @class */ (function () {\r\n /**\r\n * The AWTLogger class constructor.\r\n * @constructor\r\n * @param {string} _apiKey - The API key (also known as application key, and tenant token).\r\n */\r\n function AWTLogger(_apiKey) {\r\n this._apiKey = _apiKey;\r\n this._contextProperties = new AWTEventProperties_1.default();\r\n this._semanticContext = new AWTSemanticContext_1.default(false, this._contextProperties);\r\n this._sessionStartTime = 0;\r\n this._createInitId();\r\n }\r\n /**\r\n * Sets the context sent with every event from this logger.\r\n * @param {string} name - The name of the context property.\r\n * @param {string|number|boolean} value - The context property's value.\r\n * @param {enum} type - [Optional] The type of context property, as one of the AWTPropertyType enumeration values.\r\n */\r\n AWTLogger.prototype.setContext = function (name, value, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n this._contextProperties.setProperty(name, value, type);\r\n };\r\n /**\r\n * Sets context that will be sent with every event from this logger, and tags it as PII.\r\n * @param {string} name - The name of the context property.\r\n * @param {string|number|boolean} value - The context property's value.\r\n * @param {enum} pii - The kind of PII for the context property, as one of the AWTPiiKind enumeration values.\r\n * @param {enum} type - [Optional] The type of context property, as one of the AWTPropertyType enumeration values.\r\n */\r\n AWTLogger.prototype.setContextWithPii = function (name, value, pii, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n this._contextProperties.setPropertyWithPii(name, value, pii, type);\r\n };\r\n /**\r\n * Sets the context that sent with every event from this logger, and tags it as customer content.\r\n * @param {string} name - The name of the context property.\r\n * @param {string|number|boolean} value - The context property's value.\r\n * @param {enum} customerContent - The customer content kind, as one of the AWTCustomerContentKind enumeration values.\r\n * @param {enum} type - [Optional] The type of context property, as one of the AWTPropertyType enumeration values.\r\n */\r\n AWTLogger.prototype.setContextWithCustomerContent = function (name, value, customerContent, type) {\r\n if (type === void 0) { type = Enums_1.AWTPropertyType.Unspecified; }\r\n this._contextProperties.setPropertyWithCustomerContent(name, value, customerContent, type);\r\n };\r\n /**\r\n * Gets the logger semantic context.\r\n * Note: Device properties are not permitted at the logger level, but you can set them\r\n * at the global level using the AWTLogManager class.\r\n *\r\n * @return A AWTSemanticContext object that you can use to set common semantic properties.\r\n */\r\n AWTLogger.prototype.getSemanticContext = function () {\r\n return this._semanticContext;\r\n };\r\n /**\r\n * Logs a custom event with the specified name and fields - to track information\r\n * such as how a particular feature is used.\r\n * @param {Object} event - Can be either an AWTEventProperties object or an AWTEventData object or an event name.\r\n */\r\n AWTLogger.prototype.logEvent = function (event) {\r\n if (AWTLogManagerSettings_1.default.loggingEnabled) {\r\n if (!this._apiKey) {\r\n this._apiKey = AWTLogManagerSettings_1.default.defaultTenantToken;\r\n this._createInitId();\r\n }\r\n var sanitizeProperties = true;\r\n if (Utils.isString(event)) {\r\n event = {\r\n name: event\r\n };\r\n }\r\n else if (event instanceof AWTEventProperties_1.default) {\r\n event = event.getEvent();\r\n //AWTEventProperties will already sanitize properties\r\n sanitizeProperties = false;\r\n }\r\n AWTStatsManager_1.default.eventReceived(this._apiKey);\r\n AWTLogger._logEvent(AWTLogger._getInternalEvent(event, this._apiKey, sanitizeProperties), this._contextProperties);\r\n }\r\n };\r\n /**\r\n * Logs the session state.\r\n * Note: Calling Logging session start while a session already exists will produce a no-op. Similarly, calling logging\r\n * session end while a session does not exist will also produce a no-op.\r\n * @param {enum} state - The session's state.\r\n * @param {obbject} properties - [Optional] Properties of the session event as either a AWTEventProperties object,\r\n * or a AWTEventData object.\r\n */\r\n AWTLogger.prototype.logSession = function (state, properties) {\r\n if (AWTLogManagerSettings_1.default.sessionEnabled) {\r\n var sessionEvent = {\r\n name: 'session',\r\n type: 'session',\r\n properties: {}\r\n };\r\n AWTLogger._addPropertiesToEvent(sessionEvent, properties);\r\n sessionEvent.priority = Enums_1.AWTEventPriority.High;\r\n if (state === Enums_2.AWTSessionState.Started) {\r\n if (this._sessionStartTime > 0) {\r\n //Session start called out of order. Session start time being non zero indicates an ongoing session.\r\n return;\r\n }\r\n this._sessionStartTime = (new Date()).getTime();\r\n this._sessionId = Utils.newGuid();\r\n this.setContext('Session.Id', this._sessionId);\r\n sessionEvent.properties['Session.State'] = 'Started';\r\n }\r\n else if (state === Enums_2.AWTSessionState.Ended) {\r\n if (this._sessionStartTime === 0) {\r\n //Session end called out of order. Session start time being zero indicates no ongoing session.\r\n return;\r\n }\r\n var sessionDurationSec = Math.floor(((new Date()).getTime() - this._sessionStartTime) / 1000);\r\n sessionEvent.properties['Session.Id'] = this._sessionId;\r\n sessionEvent.properties['Session.State'] = 'Ended';\r\n sessionEvent.properties['Session.Duration'] = sessionDurationSec.toString();\r\n sessionEvent.properties['Session.DurationBucket'] =\r\n AWTLogger._getSessionDurationFromTime(sessionDurationSec);\r\n this._sessionStartTime = 0;\r\n this.setContext('Session.Id', null);\r\n this._sessionId = undefined;\r\n }\r\n else {\r\n return;\r\n }\r\n sessionEvent.properties['Session.FirstLaunchTime'] = AWTAutoCollection_1.default.firstLaunchTime;\r\n this.logEvent(sessionEvent);\r\n }\r\n };\r\n /**\r\n * Gets the session ID for the ongoing session.\r\n * @return {string} A string that contains the session ID for the ongoing session. Returns undefined if there is\r\n * no ongoing session.\r\n */\r\n AWTLogger.prototype.getSessionId = function () {\r\n return this._sessionId;\r\n };\r\n /**\r\n * Logs a failure event, such as an application exception.\r\n * @param {string} signature - A string that identifies the bucket of the failure.\r\n * @param {string} detail - A string that contains the a description of the failure.\r\n * @param {string} category - [Optional] A string that identifies the category of the failure, such as an application error,\r\n * a hang, or a crash.\r\n * @param {string} id - [Optional] A string that that uniquely identifies this failure.\r\n * @param {object} properties - [Optional] Properties of the failure event, as either an AWTEventProperties object or an\r\n * AWTEventData object. This value can also be null.\r\n */\r\n AWTLogger.prototype.logFailure = function (signature, detail, category, id, properties) {\r\n if (!signature || !detail) {\r\n return;\r\n }\r\n var failureEvent = {\r\n name: 'failure',\r\n type: 'failure',\r\n properties: {}\r\n };\r\n AWTLogger._addPropertiesToEvent(failureEvent, properties);\r\n failureEvent.properties['Failure.Signature'] = signature;\r\n failureEvent.properties['Failure.Detail'] = detail;\r\n if (category) {\r\n failureEvent.properties['Failure.Category'] = category;\r\n }\r\n if (id) {\r\n failureEvent.properties['Failure.Id'] = id;\r\n }\r\n failureEvent.priority = Enums_1.AWTEventPriority.High;\r\n this.logEvent(failureEvent);\r\n };\r\n /**\r\n * Logs a page view event which is normally a result of a user action on a UI page - such as search query,\r\n * a content request, or a page navigation.\r\n *\r\n * @param {string} id - A string that uniquely identifies this page.\r\n * @param {string} pageName - The name of the page.\r\n * @param {string} category - [Optional] A string that contains the category to which this page belongs.\r\n * @param {string} uri - [Optional] A string that contains the URI of this page.\r\n * @param {string} referrerUri - [Optional] A string that contains the URI that refers to this page.\r\n * @param {object} properties - [Optional] Properties of the page view event, as an AWTEventProperties object.\r\n * This value can also be null.\r\n */\r\n AWTLogger.prototype.logPageView = function (id, pageName, category, uri, referrerUri, properties) {\r\n if (!id || !pageName) {\r\n return;\r\n }\r\n var pageViewEvent = {\r\n name: 'pageview',\r\n type: 'pageview',\r\n properties: {}\r\n };\r\n AWTLogger._addPropertiesToEvent(pageViewEvent, properties);\r\n pageViewEvent.properties['PageView.Id'] = id;\r\n pageViewEvent.properties['PageView.Name'] = pageName;\r\n if (category) {\r\n pageViewEvent.properties['PageView.Category'] = category;\r\n }\r\n if (uri) {\r\n pageViewEvent.properties['PageView.Uri'] = uri;\r\n }\r\n if (referrerUri) {\r\n pageViewEvent.properties['PageView.ReferrerUri'] = referrerUri;\r\n }\r\n this.logEvent(pageViewEvent);\r\n };\r\n AWTLogger.prototype._createInitId = function () {\r\n // If no init ID for this tenant token exists, create one\r\n if (!AWTLogger._initIdMap[this._apiKey] && this._apiKey) {\r\n AWTLogger._initIdMap[this._apiKey] = Utils.newGuid();\r\n }\r\n };\r\n AWTLogger._addPropertiesToEvent = function (event, propertiesEvent) {\r\n if (propertiesEvent) {\r\n if (propertiesEvent instanceof AWTEventProperties_1.default) {\r\n propertiesEvent = propertiesEvent.getEvent();\r\n }\r\n if (propertiesEvent.name) {\r\n event.name = propertiesEvent.name;\r\n }\r\n if (propertiesEvent.priority) {\r\n event.priority = propertiesEvent.priority;\r\n }\r\n for (var name_1 in propertiesEvent.properties) {\r\n if (propertiesEvent.properties.hasOwnProperty(name_1)) {\r\n event.properties[name_1] = propertiesEvent.properties[name_1];\r\n }\r\n }\r\n }\r\n };\r\n AWTLogger._getSessionDurationFromTime = function (timeInSec) {\r\n if (timeInSec < 0) {\r\n return 'Undefined';\r\n }\r\n else if (timeInSec <= 3) {\r\n return 'UpTo3Sec';\r\n }\r\n else if (timeInSec <= 10) {\r\n return 'UpTo10Sec';\r\n }\r\n else if (timeInSec <= 30) {\r\n return 'UpTo30Sec';\r\n }\r\n else if (timeInSec <= 60) {\r\n return 'UpTo60Sec';\r\n }\r\n else if (timeInSec <= 180) {\r\n return 'UpTo3Min';\r\n }\r\n else if (timeInSec <= 600) {\r\n return 'UpTo10Min';\r\n }\r\n else if (timeInSec <= 1800) {\r\n return 'UpTo30Min';\r\n }\r\n return 'Above30Min';\r\n };\r\n AWTLogger._logEvent = function (eventWithMetaData, contextProperties) {\r\n if (!eventWithMetaData.name || !Utils.isString(eventWithMetaData.name)) {\r\n AWTNotificationManager_1.default.eventsRejected([eventWithMetaData], Enums_1.AWTEventsRejectedReason.InvalidEvent);\r\n return;\r\n }\r\n eventWithMetaData.name = eventWithMetaData.name.toLowerCase();\r\n //Check if name is a string and replace . with _ if it is. Drop otherwise.\r\n eventWithMetaData.name = eventWithMetaData.name.replace(Utils.EventNameDotRegex, '_');\r\n if (!eventWithMetaData.type || !Utils.isString(eventWithMetaData.type)) {\r\n eventWithMetaData.type = 'custom';\r\n }\r\n else {\r\n eventWithMetaData.type = eventWithMetaData.type.toLowerCase();\r\n }\r\n //Validate name and type and drop if invalid\r\n if (!Utils.EventNameAndTypeRegex.test(eventWithMetaData.name) || !Utils.EventNameAndTypeRegex.test(eventWithMetaData.type)) {\r\n AWTNotificationManager_1.default.eventsRejected([eventWithMetaData], Enums_1.AWTEventsRejectedReason.InvalidEvent);\r\n return;\r\n }\r\n //Add the timestamp if the timestamp is not set or is negative.\r\n if (!Utils.isNumber(eventWithMetaData.timestamp) || eventWithMetaData.timestamp < 0) {\r\n eventWithMetaData.timestamp = (new Date()).getTime();\r\n }\r\n //If no properties create one for EventInfo and context \r\n if (!eventWithMetaData.properties) {\r\n eventWithMetaData.properties = {};\r\n }\r\n // Logger ContextProperties\r\n this._addContextIfAbsent(eventWithMetaData, contextProperties.getPropertyMap());\r\n // LogManager ContextProperties\r\n this._addContextIfAbsent(eventWithMetaData, AWTLogManagerSettings_1.default.logManagerContext.getPropertyMap());\r\n //Add event info\r\n this._setDefaultProperty(eventWithMetaData, 'EventInfo.InitId', this._getInitId(eventWithMetaData.apiKey));\r\n this._setDefaultProperty(eventWithMetaData, 'EventInfo.Sequence', this._getSequenceId(eventWithMetaData.apiKey));\r\n this._setDefaultProperty(eventWithMetaData, 'EventInfo.SdkVersion', Version.FullVersionString);\r\n this._setDefaultProperty(eventWithMetaData, 'EventInfo.Name', eventWithMetaData.name);\r\n this._setDefaultProperty(eventWithMetaData, 'EventInfo.Time', (new Date(eventWithMetaData.timestamp)).toISOString());\r\n if (!Utils.isPriority(eventWithMetaData.priority)) {\r\n eventWithMetaData.priority = Enums_1.AWTEventPriority.Normal;\r\n }\r\n this._sendEvent(eventWithMetaData);\r\n };\r\n AWTLogger._addContextIfAbsent = function (event, contextProperties) {\r\n if (contextProperties) {\r\n for (var name_2 in contextProperties) {\r\n if (contextProperties.hasOwnProperty(name_2)) {\r\n if (!event.properties[name_2]) {\r\n event.properties[name_2] = contextProperties[name_2];\r\n }\r\n }\r\n }\r\n }\r\n };\r\n AWTLogger._setDefaultProperty = function (event, name, value) {\r\n event.properties[name] = { value: value, pii: Enums_1.AWTPiiKind.NotSet, type: Enums_1.AWTPropertyType.String };\r\n };\r\n AWTLogger._sendEvent = function (event) {\r\n AWTTransmissionManagerCore_1.default.sendEvent(event);\r\n };\r\n AWTLogger._getInternalEvent = function (event, apiKey, sanitizeProperties) {\r\n event.properties = event.properties || {};\r\n if (sanitizeProperties) {\r\n // Event Properties \r\n for (var name_3 in event.properties) {\r\n if (event.properties.hasOwnProperty(name_3)) {\r\n event.properties[name_3] = Utils.sanitizeProperty(name_3, event.properties[name_3]);\r\n if (event.properties[name_3] === null) {\r\n delete event.properties[name_3];\r\n }\r\n }\r\n }\r\n }\r\n var internalEvent = event;\r\n internalEvent.id = Utils.newGuid();\r\n internalEvent.apiKey = apiKey;\r\n return internalEvent;\r\n };\r\n AWTLogger._getInitId = function (apiKey) {\r\n return AWTLogger._initIdMap[apiKey];\r\n };\r\n AWTLogger._getSequenceId = function (apiKey) {\r\n if (AWTLogger._sequenceIdMap[apiKey] === undefined) {\r\n AWTLogger._sequenceIdMap[apiKey] = 0;\r\n }\r\n return (++AWTLogger._sequenceIdMap[apiKey]).toString();\r\n };\r\n AWTLogger._sequenceIdMap = {};\r\n AWTLogger._initIdMap = {};\r\n return AWTLogger;\r\n}());\r\nexports.default = AWTLogger;\r\n","\"use strict\";\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/**\r\n* Version.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n* File for SDK version.\r\n*/\r\nexports.Version = '1.8.1';\r\nexports.FullVersionString = 'AWT-Web-JS-' + exports.Version;\r\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\nfunction getHolder(func) {\n var object = func;\n return object.placeholder;\n}\n\nmodule.exports = getHolder;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a