{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../sdk-template/esm/batch-sender.js","../../../sdk-template/esm/types.js","../../../sdk-template/esm/utils/misc.js","../../../sdk-template/esm/utils/is.js","../../../sdk-template/esm/utils/object-array.js","../../../sdk-template/esm/utils/string.js","../../../sdk-template/esm/utils/hook-object.js","../../../sdk-template/esm/utils/logger.js","../../../sdk-template/esm/utils/number.js","../../../sdk-template/esm/utils/processor.js","../../../sdk-template/esm/utils/uuid.js","../../../sdk-template/esm/utils/time.js","../../../sdk-template/esm/utils/observable.js","../../../sdk-template/esm/utils/destroy.js","../../../sdk-template/esm/client.js","../../../sdk-template/esm/plugins/context.js","../../../sdk-template/esm/utils/context.js","../../../sdk-template/esm/plugins/subject.js","../../../sdk-web/esm/utils/date.js","../../../sdk-web/esm/utils/defaults.js","../../../sdk-web/esm/utils/url.js","../../../sdk-web/esm/collector/client.js","../../../sdk-web/esm/utils/registry.js","../../../sdk-web/esm/utils/apply-defaults.js","../../../sdk-web/esm/utils/capture.js","../../../sdk-web/esm/utils/misc.js","../../../sdk-web/esm/utils/encryption.js","../../../sdk-web/esm/utils/storage.js","../../../sdk-web/esm/collector/http.js","../../../sdk-web/esm/collector/perf.js","../../../sdk-web/esm/monitors/http/trace.js","../../../sdk-web/esm/monitors/http/util.js","../../../sdk-web/esm/monitors/http/xhr.js","../../../sdk-web/esm/constants/index.js","../../../sdk-web/esm/plugins/monitors/utils.js","../../../sdk-web/esm/plugins/monitors/ajax.js","../../../sdk-web/esm/monitors/http/fetch.js","../../../sdk-web/esm/plugins/monitors/fetch.js","../../../sdk-web/esm/monitors/js-error/util.js","../../../sdk-web/esm/collector/page.js","../../../sdk-web/esm/collector/route.js","../../../sdk-web/esm/monitors/pageview/util.js","../../../sdk-web/esm/monitors/pageview/index.js","../../../sdk-web/esm/monitors/pageview/apdex.js","../../../sdk-web/esm/plugins/monitors/pageview.js","../../../sdk-web/esm/monitors/performance/util.js","../../../sdk-web/esm/monitors/performance-new/util.js","../../../sdk-web/esm/monitors/performance-new/tti.js","../../../sdk-web/esm/monitors/performance-new/paint.js","../../../sdk-web/esm/monitors/performance-new/fmp.js","../../../sdk-web/esm/plugins/monitors/fmp.js","../../../sdk-web/esm/plugins/custom.js","../../../sdk-web/esm/plugins/inject-network-type.js","../../../sdk-web/esm/plugins/sample.js","../../../sdk-web/esm/transports/xhr.js","../../../sdk-web/esm/sender.js","../../../sdk-web/esm/transports/beacon.js","../../esm/constants.js","../../esm/loader.js","../../esm/normalize.js","../../esm/util.js","../../esm/browser-config.js","../../esm/builder.js","../../esm/client.js","../../esm/plugins/inject-env.js","../../esm/plugins/precollect.js","../../esm/plugins/observe-error.js","../../esm/plugins/time-calibration.js","../../esm/plugins/inject-config.js","../../esm/plugins/inject-query.js","../../esm/minimal.js","../../../sdk-template/esm/plugins/command-array.js","../../../sdk-template/esm/plugins/integration.js","../../../sdk-web/esm/plugins/monitors/tti.js","../../esm/instances/npm.js","../../esm/instances/npm-precollect.js"],"names":["Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__read","o","m","Symbol","iterator","r","e","ar","next","done","push","value","error","__spreadArray","to","from","pack","l","Array","slice","concat","stringifyBatch","list","JSON","stringify","ev_type","EVENTS","noop","id","v","isObject","objProto","isPlainObject","getPrototypeOf","proto","toString","isArray","isFunction","isNumber","isString","hasKey","object","key","_mergeDeepMergeArray","target","source","result","undefined","_mergeDeepArray","_target","_source","map","RegExp","arrayIncludes","array","k","arrayRemove","arr","indexOf","arr_","splice","safeVisit","path","visitor","_b","_c","split","method","rest","safeCall","args","obj","property","err","getRegexp","ignore","patterns","sources","len","pattern","replace","join","joinRegExp","safeStringify","a","String","hookObjectProperty","hookFunc","isCatchError","params","_i","origin","hookedUnsafe","hooked","_a","strict","hookMethodDangerously","printString","padStart","str","prefixLength","errCount","console","Date","now","warnCount","warn","isHitBySampleRate","sampleRate","Math","random","Number","isHitByRandom","runProcessors","fns","uuid","rnds","mathRNG","buf","byteToHex","index","substr","bth","bytesToUuid","toObservable","bufferTime","attachCb","subscribers","__complete","closed","setCloseIfNeed","checkIfNeedCancel","cb","tid","clearTimeout","setTimeout","applyBufferTimer","forEach","unsubscribe","nextLink","nextCbs","reduce","sum","nextCb","nextArgs","complete","attach","disconnect","onSubscribe","subscribe","Error","createSafeObserver","observer","completeCb","cur","wrapFilters","originObservable","filters","tearDown","registerTearDownGroup","client","pluginName","evType","tearDownGroup","destroyAgent","set","createClient","creationConfig","sender","configManager","builder","createSender","createDefaultConfig","createConfigManager","userConfigNormalizer","initConfigNormalizer","validateInitConfig","handlers","inited","started","destroyed","preStartQueue","reservedNames","data","removeTearDownGroup","removeByPluginName","has","remove","removeByEvType","keys","clear","createDestroyAgent","getBuilder","getSender","getPreStartQueue","init","c","defaultConfig","initConfig","setConfig","onChange","handle","getConfig","config","provide","name","start","_this","onReady","build","report","preReport","processed","preBuild","built","send","destroy","on","ev","handler","_err","off","once","f","ContextPlugin","contextAgent","context","stringified","merge","ctx","delete","get","createContextAgent","extra","initSubjectInGlobal","initSubject","initPrivateSubject","subjectKey","subjectMap","privateSubject","getDefaultBrowser","window","getDefaultDocument","document","getDefaultPerformance","performance","getDefaultXMLHttpRequest","XMLHttpRequest","getDefaultMutationObserver","MutationObserver","getDefaultPerformanceObserver","PerformanceObserver","getDefaultNetworkInformation","navigator","getDefaultNavigator","connection","mozConnection","webkitConnection","getCurrentScript","currentScript","stackDetails","exec","stack","scriptLocation","line","currentLocation","location","href","hash","inlineScriptSource","scripts","getElementsByTagName","pageSource","documentElement","outerHTML","inlineScriptSourceRegExp","trim","readyState","src","innerHTML","getFullUrl","url","createElement","parseUrl","protocol","domain","query","pathname","hostname","search","substring","getLocationUrl","getViewOverrides","pid","view_id","viewId","getOverrides","clientConfig","overrides","reportWithCurrentContext","timeRequiresAdjustment","timestamp","applyPV","currentOverrides","handleConfig","newConfig","applyFirstPV","_","firstOverrides","subscriber","getGlobalRegistry","global","__SLARDAR_REGISTRY__","Slardar","plugins","errors","subject","reportSelfError","errorInfo","registry","applyMutationObserver","callback","options","observe","applyPerformance","timing","navigationStart","type","getEntriesByType","clearResourceTimings","getEntriesByName","captureCurrentContext","capturedContext","syncReportWithCapturedContext","fn","inject","invokeCallbackOnce","hasInvoked","loadScript","script","crossOrigin","onload","head","appendChild","isSupportEncrypt","btoa","atob","getStorageWithDecoding","localStorage","getItem","ret","parse","base64","decodeURI","expires","content","getOwnPropertySymbols","propertyIsEnumerable","__rest","_e","setStorageWithEncoding","setItem","encodeURI","_o","formatStorageExpires","storageExpires","hookOpen","open","openOptions","_method","_url","hookSetHeader","setRequestHeader","setOptions","_reqHeaders","hookOnreadystatechange","xhr","endNext","hookSend","hitReportPath","SELF_REPORT_PATH_REGEXP","test","getReportPathRegExp","sendOptions","_start","_data","applyXHR","hookFetch","_fetch","req","fetchPromise","then","res","fetchSubject","fetch","RESOURCE_TYPE","LONGTASK_TYPE","observePerf","Ob","pipe","types","onFail","ob","getEntries","val","entryTypes","buffered","applyPerformanceObserver","longtaskSubject","resourceSubject","DEFAULT_TRACE_CONFIG","origins","uuid4","crypto","msCrypto","getRandomValues","Uint16Array","pad","num","setTraceContext","traceConfig","Boolean","match","VERSION","headerKeyRe","headerValueRe","checkIsIgnored","ignoreUrls","ignoreRgx","isSensitiveHeader","handleWithExtractUrl","payload","extractUrl","original_url","request","httpGetterWithXhrObserver","xhrConfig","xhrObserver","getResourceObserver","setTraceHeader","setContextAtReq","reportWithContext","fullUrl","resourceTearDown","entry","xhrAfterReady","getEventParams","response","props","headers","api","toLowerCase","status","is_custom_error","duration","getAllResponseHeaders","name_1","formatXHRAllResponseHeaders","collectBodyOnError","extraExtractor","body","getPluginConfig","autoWrap","httpGetterWithFetchObserver","fetchConfig","fetchObserver","Headers","Request","isHttpURL","addHeader","reportFetchData","metric","applySendOnce","isRequest","getFetchMethod","mergeHeaders","getFetchBody","setRequestBodyIfAllowed","clone","json","catch","ERROR_FIELDS","normalize","ex","wat","isError","Event","base","isInstanceOf","message","prev","normalizeUnknownError","exception","what","isPromiseRejectionEvent","event","reason","detail","rejectionError","_oO","normalizeException","visibilityStateIsHidden","d","visibilityState","hiddenSubject","onVisibilityChange","addEventListener","removeEventListener","readyStateIsComplete","loadSubject","onceTriggered","onLoad","unloadSubject","invokeCbOnce","unloadEventList","hashSubject","hashChangeListener","historySubject","history","restoreFns","historyChangeListener","hookStateChange","getViewId","joinWithSeparator","b","isManualMode","routeMode","getRank","apdex","setting","total","s_percent","frustrating_threshold","satisfying_threshold","applyCalculateWight","calculateDuration","calculateError","apdexSetting","isSupport","longtasks","calculateApdex","apdexWeight","apdexDetail","initApdex","error_count","duration_count","getDefaultApdexDetail","weight","nameOrIndex","rules","level","threshold","name_2","value_1","pvGetterWithRouteObserver","routeObservers","sendInitFlag","sendInit","initPid","extractPid","onPidUpdate","extractPidFromUrl","getDefaultExtractor","customPidFromUrl","firstOriginPid","originalPid","finalPid","newPid","customPid","applyOnPidChange","wrapPageview","applyReportPageview","getFinalPid","onPidChange","onUrlChange_1","initUrl","newUrl","applyOnUrlChange","routeObserver","bind","apdexGetterWithHiddenObserver","hiddenObserver","unloadObserver","onlyPageApdex","currentPageInfo","lastPidPayload","apdexStarted","calculateDurationWeight","calculateErrorWeight","getApdex","resetApdex","_d","calculateSessionDurationWeight","calculateSessionErrorWeight","getSessionApdex","resetSessionApdex","sessionPayload","end","time_spent","is_bounced","exit","p_count","a_count","sessionApdexInfo","lastPage","rank","apdex_detail","last_page","calculateSession","handleUnload","handlePageview","handleAction","setEntry","getSessionPayload","_f","spentTime","lastShowTimeStamp","isHidden","time","calculateSpentTime","handleHidden","getSpentTime","sessionRank","getPagePayload","handlePageviewWeight","handleSessionWeight","newViewId","last","defaultMetricContext","isPolyfill","isBounced","isCustom","initMetric","applySendOnceAndTearDown","wrapPerformanceMetric","getMinValue","domContentLoadedEventEnd","pushLongTaskIntoList","startTime","getLastBusyAndLongTasks","entries","longtaskObserver","resourceObserver","reschedule","longTasks","networkRequests","record","applyRecord","incompleteInitReqStartTimes","before","after","entryType","uniqId","requestId","absoluteNow","requestCreatingNodeNames","subtreeContainsNodeName","nodes","nodeNames","nodeName","children","mutations","addedNodes","attributes","childList","subtree","attributeFilter","observeResFetchMutations","observeRes","stopObserveRes","getLastBusy","undoneReqStarts","observedResReqs","endpoints","sort","currentActive","calcLastNet2Busy","requestTimes","getRequestTimes","fetchStart","responseEnd","getTTI","pvObserver","sendOnceAndTearDown","snippetObserver","supportedEntryTypes","timerActiveTime","Infinity","timerId","clearTime","futureTime","applyScheduler","startSchedule","stopSchedule","_g","checkTTI","ttiCallback","firstContentfulPaint","maybeFCI","searchStart","minValue","lastKnownNetwork2Busy","currentTime","max","computeTTI","reportTTI","lastLongTask","DEFAULT_IGNORE_TAGS","getScore","element","depth","exist","ignoreTags","tagName","score","reduceRight","child","getBoundingClientRect","top_1","top","height","innerHeight","getFMP","loadObserver","raf","requestAnimationFrame","getDefaultRaf","caf","cancelAnimationFrame","getDefaultCaf","scheduleAF","originRAF","originCAF","force","af","hidden","applyAnimationFrame","triggerFMP","timeGap","fmp","first","diff","rate","getFMPInternal","timer","tearDowns","renderType","CustomPlugin","normalized","raw","rMetrics","metrics","rCategories","categories","normalizeCustomEventData","rExtra","normalizeCustomLogData","getNetworkType","netInfo","effectiveType","withSampleRate","common","sample_rate","hitFnWithRandom","preCalc","h","checkFilter","field","op","values","checkVal","parseValues","matchFilter","filter","every","some","getSampler","userId","destroyFns","baseRate","include_users","sample_granularity","preCalcHit","baseHit","hitMap","enable","conditional_sample_rules","effectiveSampleRate","hit","conditional_hit_rules","getHitMap","hitConfig","conditions","success","fail","getResponseText","withCredentials","responseText","onerror","onabort","getXhrTransport","post","createBrowserSender","transport","endpoint","size","wait","batch","sendBatch","getBatchData","getSize","getWait","setSize","setWait","getEndpoint","setEndpoint","flush","createBatchSender","beaconTransport","sendBeacon","getBeaconTransport","sendOnClose","onPageUnload","PLUGINS_LOAD_PREFIX","SETTINGS_PATH","DEFAULT_IGNORE_PATHS","EXTRA_INDEPENDENT_PLUGINS","DEFAULT_SAMPLE_CONFIG","loadPluginsOnPageLoad","lp","loadPlugins","onPageLoad","loadCombinedPlugins","combinedPlugins","ld","loadNow","pluginBundle","combinedPluginsToLoad","applyCombinedPlugins","applyPlugin","doesPluginExistInRegistry","loadIndependentPlugins","independentPlugins","pluginConfig","reloadWithClient","runAfterLoadScript","ls","pluginPathPrefix","getPluginPath","plugin","getPluginFromRegistry","version","register","normalizeInitConfig","normalizeUserConfig","parseServerConfig","serverConfig","sample","quota_rate","heatmap","serverTimestamp","getReportUrl","getSettingsUrl","getDefaultSessionId","toObservableArray","observers","vs","getGlobalName","getAttribute","getStorageKey","bid","glueCodeForStorageSecurity","getDefaultUserIdAndDeviceId","randomIdInfo","deviceId","setStorageUserIdAndDeviceId","configHolder","__SLARDAR__REPALCE__HOLDER__","createBrowserConfigManager","parsedServerConfig","userConfig","updateConfig","useLocalConfig","handleServerConfig","getServerConfig","mergeDeepConcatArray","mergeSampleConfig","browserBuilder","addEnvToSendEvent","sdk_version","sdk_name","InjectEnvPlugin","EV_METHOD_MAP","sri","st","reject","createStore","evMap","reverseMap","getStoreOrConsume","store","getConsumeStored","evMethods","filterIfPluginDisabled","PrecollectPlugin","storeOrConsume","buildSelfErrorEvent","breadcrumbs","ObserveErrorPlugin","TimeCalibrationPlugin","hasCalibrated","getTime","serverTime","isNaN","endTime","diff_1","sdk_offset","addConfigToReportEvent","user_id","device_id","session_id","sessionId","release","env","InjectConfigPlugin","InjectQueryPlugin","getDefaultConfig","storageInfo","ajax","breadcrumb","pageview","jsError","resource","resourceError","tti","blankScreen","createMinimalBrowserClient","globalSubjectMap","filterMap","subjectKeyWithoutVersion","filterKey","getSubjectKeyWithoutVersion","SubjectPlugin","network_type","onchange","InjectNetworkTypePlugin","commandClient","captureContext","applyArgsWithContext","cache","newClient","methodPath","cachedCommands","nextKey","withCommandArray","others","runAfterSetup","nameList","applyIntegrations","integrations","integration","integrationName","setup","IntegrationPlugin","PluginMap","handlePageviewChange","apdexTearDownGroup","handleSend_1","reportWithApdex","setApdexSetting_1","sendPageview","actionId","onConfig","trace","getResourceSubject","Xhr","Ctor","newFetch","pp","entryName","metricName","invokePaint","paint","hiddenCallback","getPaint","createBrowserClient","sampler","SamplePlugin","browserClient","win","pcErr","srcElement","Element","HTMLElement","pcRej","npmPreCollect","globalName"],"mappings":"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","file":"static/js/vendors~sld.js","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","var DEFAULT_SIZE = 10;\nvar DEFAULT_WAIT = 1000;\nexport var stringifyBatch = function (list) {\n return JSON.stringify({\n ev_type: 'batch',\n list: list,\n });\n};\nexport function createBatchSender(config) {\n var transport = config.transport;\n var endpoint = config.endpoint, _a = config.size, size = _a === void 0 ? DEFAULT_SIZE : _a, _b = config.wait, wait = _b === void 0 ? DEFAULT_WAIT : _b;\n var batch = [];\n var tid = 0;\n var fail;\n var sender = {\n getSize: function () {\n return size;\n },\n getWait: function () {\n return wait;\n },\n setSize: function (v) {\n size = v;\n },\n setWait: function (v) {\n wait = v;\n },\n getEndpoint: function () {\n return endpoint;\n },\n setEndpoint: function (v) {\n endpoint = v;\n },\n send: function (e) {\n batch.push(e);\n if (batch.length >= size) {\n sendBatch.call(this);\n }\n clearTimeout(tid);\n tid = setTimeout(sendBatch.bind(this), wait);\n },\n flush: function () {\n clearTimeout(tid);\n sendBatch.call(this);\n },\n getBatchData: function () {\n return batch.length ? stringifyBatch(batch) : '';\n },\n clear: function () {\n clearTimeout(tid);\n batch = [];\n },\n fail: function (cb) {\n fail = cb;\n },\n };\n function sendBatch() {\n if (!batch.length) {\n return;\n }\n var data = this.getBatchData();\n transport.post({\n url: endpoint,\n data: data,\n fail: function (err) {\n fail && fail(err, data);\n },\n });\n batch = [];\n }\n return sender;\n}\n//# sourceMappingURL=batch-sender.js.map","export var EVENTS = [\n 'init',\n 'start',\n 'config',\n 'beforeDestroy',\n 'provide',\n 'beforeReport',\n 'report',\n 'beforeBuild',\n 'build',\n 'beforeSend',\n 'send',\n 'beforeConfig',\n];\n//# sourceMappingURL=types.js.map","export var noop = function () { return ({}); };\nexport function id(v) {\n return v;\n}\n//# sourceMappingURL=misc.js.map","// eslint-disable-next-line @typescript-eslint/ban-types\nexport function isObject(o) {\n return typeof o === 'object' && o !== null;\n}\nexport function isInstanceOf(wat, base) {\n try {\n return wat instanceof base;\n }\n catch (_e) {\n return false;\n }\n}\nvar objProto = Object.prototype;\n// https://stackoverflow.com/a/5878101\nexport function isPlainObject(o) {\n if (isObject(o)) {\n if (typeof Object.getPrototypeOf === 'function') {\n var proto = Object.getPrototypeOf(o);\n return proto === objProto || proto === null;\n }\n // cannot test, requires ES3\n /* istanbul ignore next */\n return objProto.toString.call(o) === '[object Object]';\n }\n return false;\n}\nexport function isArray(o) {\n return objProto.toString.call(o) === '[object Array]';\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function isFunction(o) {\n return typeof o === 'function';\n}\nexport function isBoolean(o) {\n return typeof o === 'boolean';\n}\nexport function isNumber(o) {\n return typeof o === 'number';\n}\nexport function isString(o) {\n return typeof o === 'string';\n}\nexport function isEqual(a, b) {\n // special\n if (isNumber(a) && isNaN(a)) {\n return isNumber(b) && isNaN(b);\n }\n // same primitive or same object\n if (a === b) {\n return true;\n }\n if (isObject(a)) {\n if (isPlainObject(a)) {\n return isPlainObject(b) && isEqualPlainObject(a, b);\n }\n else if (isArray(a)) {\n return isArray(b) && isEqualArray(a, b);\n //TODO: handle TypedArray, Map, Set, ArrayLike\n }\n else {\n // different object\n return false;\n }\n }\n // different primitive\n return false;\n}\nexport function isEqualPlainObject(a, b) {\n for (var k in a) {\n if (!isEqual(a[k], b[k])) {\n return false;\n }\n }\n return true;\n}\nexport function isEqualArray(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n return a.every(function (v, i) { return isEqual(v, b[i]); });\n}\nexport function isError(wat) {\n switch (Object.prototype.toString.call(wat)) {\n case '[object Error]':\n return true;\n case '[object Exception]':\n /* istanbul ignore next */\n return true;\n case '[object DOMError]':\n return true;\n case '[object DOMException]':\n /* istanbul ignore next */\n return true;\n default:\n /* istanbul ignore next */\n return wat instanceof Error;\n }\n}\nexport function isEvent(wat) {\n return typeof Event !== 'undefined' && isInstanceOf(wat, Event);\n}\nexport function isErrorEvent(what) {\n return Object.prototype.toString.call(what) === '[object ErrorEvent]';\n}\nexport function isPromiseRejectionEvent(what) {\n return Object.prototype.toString.call(what) === '[object PromiseRejectionEvent]';\n}\n//# sourceMappingURL=is.js.map","import { __assign, __read } from \"tslib\";\n/* eslint-disable @typescript-eslint/prefer-optional-chain */\nimport { isArray, isFunction, isObject, isPlainObject } from './is';\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function omit(object) {\n var keys = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n keys[_i - 1] = arguments[_i];\n }\n if (isObject(object)) {\n var res_1 = {};\n objectForIn(object, function (k, v) {\n if (!arrayIncludes(keys, k)) {\n res_1[k] = v;\n }\n });\n return res_1;\n }\n return object;\n}\nexport function hasKey(object, key) {\n return Object.prototype.hasOwnProperty.call(object, key);\n}\nexport function objectForIn(object, callback) {\n if (isObject(object)) {\n for (var i in object) {\n if (hasKey(object, i)) {\n callback.call(null, i, object[i]);\n }\n }\n }\n}\nexport function filterObjectValueBy(obj, p) {\n if (!isObject(obj)) {\n return obj;\n }\n if (!isFunction(p)) {\n return obj;\n }\n var res = {};\n objectForIn(obj, function (key, value) {\n if (p(value)) {\n res[key] = value;\n }\n });\n return res;\n}\n// 把source对象中的内容深度赋给target, 数组覆盖\nexport function mergeDeepCopyArray() {\n var source = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n source[_i] = arguments[_i];\n }\n var result = {};\n var k = 0;\n while (k < source.length) {\n result = _mergeDeepCopyArray(result, source[k++]);\n }\n return result;\n}\n// 把source对象中的内容深度赋给target, 数组合并\nexport function mergeDeepConcatArray() {\n var source = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n source[_i] = arguments[_i];\n }\n var result = {};\n var k = 0;\n while (k < source.length) {\n result = _mergeDeepMergeArray(result, source[k++]);\n }\n return result;\n}\nfunction _mergeDeepCopyArray(target, source) {\n var result = __assign({}, target);\n for (var key in source) {\n if (hasKey(source, key) && source[key] !== undefined) {\n if (isObject(source[key]) && isPlainObject(source[key])) {\n result[key] = _mergeDeepCopyArray(isObject(target[key]) ? target[key] : {}, source[key]);\n }\n else if (isArray(source[key])) {\n result[key] = cloneArray(source[key]);\n }\n else {\n result[key] = source[key];\n }\n }\n }\n return result;\n}\n// 递归赋值\nfunction _mergeDeepMergeArray(target, source) {\n var result = __assign({}, target);\n for (var key in source) {\n if (hasKey(source, key) && source[key] !== undefined) {\n if (isObject(source[key]) && isPlainObject(source[key])) {\n result[key] = _mergeDeepMergeArray(isObject(target[key]) ? target[key] : {}, source[key]);\n }\n else if (isArray(source[key]) && isArray(target[key])) {\n result[key] = _mergeDeepArray(target[key], source[key]);\n }\n else {\n result[key] = source[key];\n }\n }\n }\n return result;\n}\nfunction _mergeDeepArray(target, source) {\n var _target = isArray(target) ? target : [];\n var _source = isArray(source) ? source : [];\n return Array.prototype.concat.call(_target, _source).map(function (v) {\n if (v instanceof RegExp) {\n return v;\n }\n else if (isObject(v) && isPlainObject(v)) {\n return _mergeDeepMergeArray({}, v);\n }\n else if (isArray(v)) {\n return _mergeDeepArray([], v);\n }\n else {\n return v;\n }\n });\n}\nexport function cloneArray(array) {\n return array.slice();\n}\n// 检查数组中是否有元素\nexport function arrayIncludes(array, value) {\n if (!isArray(array)) {\n return false;\n }\n if (array.length === 0) {\n return false;\n }\n var k = 0;\n while (k < array.length) {\n if (array[k] === value) {\n return true;\n }\n k++;\n }\n return false;\n}\nexport var arrayRemove = function (arr, e) {\n if (!isArray(arr)) {\n return arr;\n }\n var i = arr.indexOf(e);\n if (i >= 0) {\n var arr_ = arr.slice();\n arr_.splice(i, 1);\n return arr_;\n }\n return arr;\n};\n/**\n * 按路径访问对象属性\n * @param target 待访问对象\n * @param property 访问属性路径\n * @param { (target: any, property: string): any } visitor 访问器\n */\nexport var safeVisit = function (target, path, visitor) {\n var _a, _b;\n var paths = path.split('.');\n var _c = __read(paths), method = _c[0], rest = _c.slice(1);\n while (target && rest.length > 0) {\n target = target[method];\n _a = rest, _b = __read(_a), method = _b[0], rest = _b.slice(1);\n }\n if (!target) {\n return undefined;\n }\n return visitor(target, method);\n};\nexport var safeSet = function (target, path, value) {\n safeVisit(target, path, function (obj, property) {\n try {\n obj[property] = value;\n }\n catch (e) {\n // ignore\n }\n });\n};\n/**\n * 按路径调用函数\n * @param target 待调用对象,如 `client`\n * @param methods 待调用方法路径,可能是一级路径 `client.start`, 或者是多级命令 `client.context.set`\n * @param args 调用参数\n */\nexport var safeCall = function (target, method, args) {\n return safeVisit(target, method, function (obj, property) {\n if (obj && property in obj && isFunction(obj[property])) {\n try {\n return obj[property].apply(obj, args);\n }\n catch (err) {\n // ignore\n return undefined;\n }\n }\n });\n};\n/**\n * 按路径调用函数或获取值\n * @param target 待调用对象,如 `client`\n * @param methods 待调用方法路径或属性路径\n * @param args 调用参数\n */\nexport var safeCallOrGet = function (target, method, args) {\n return safeVisit(target, method, function (obj, property) {\n if (obj && property in obj) {\n // call\n if ((args && args.length) || isFunction(obj[property])) {\n try {\n return obj[property].apply(obj, args);\n }\n catch (err) {\n // ignore\n return undefined;\n }\n }\n else {\n // get\n return obj[property];\n }\n }\n });\n};\nexport var applyRecord = function () {\n var record = {};\n var set = function (key, val) { return (record[key] = val); };\n var del = function (key) { return delete record[key]; };\n return [record, set, del];\n};\nexport var pick = function (obj, keys) {\n if (!obj || !isObject(obj))\n return obj;\n return keys.reduce(function (prev, cur) {\n prev[cur] = obj[cur];\n return prev;\n }, {});\n};\n//# sourceMappingURL=object-array.js.map","import { isArray, isString, isObject } from './is';\nexport var camelToKebab = function (str) {\n return str.replace(/([a-z])([A-Z])/g, function (_, a, b) { return a + \"-\" + b.toLowerCase(); });\n};\nexport function getRegexp(ignore) {\n if (!isArray(ignore)) {\n return null;\n }\n return ignore.length ? joinRegExp(ignore) : null;\n}\nexport function joinRegExp(patterns) {\n var sources = [];\n var len = patterns.length;\n for (var i = 0; i < len; i++) {\n var pattern = patterns[i];\n if (isString(pattern)) {\n sources.push(pattern.replace(/([.*+?^=!:${}()|[\\]/\\\\])/g, '\\\\$1'));\n }\n else if (pattern && pattern.source) {\n sources.push(pattern.source);\n }\n }\n return new RegExp(sources.join('|'), 'i');\n}\nexport function safeStringify(a) {\n try {\n return isString(a) ? a : JSON.stringify(a);\n }\n catch (err) {\n return '[FAILED_TO_STRINGIFY]:' + String(err);\n }\n}\nexport function safeJoin(input, delimiter) {\n if (!isArray(input)) {\n return '';\n }\n var output = [];\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (var i = 0; i < input.length; i++) {\n try {\n output.push(String(input[i]));\n }\n catch (e) {\n output.push('[value cannot be serialized]');\n }\n }\n return output.join(delimiter);\n}\n/**\n * get query string from map\n * @param {Record} map\n */\nexport var joinQueryWithMap = function (map) {\n return isObject(map)\n ? Object.keys(map)\n .reduce(function (result, currentKey) {\n result += \"&\" + currentKey + \"=\" + map[currentKey];\n return result;\n }, '')\n .replace('&', '?')\n : '';\n};\n//# sourceMappingURL=string.js.map","import { __read, __spreadArray } from \"tslib\";\nimport { isFunction } from './is';\nimport { noop } from './misc';\n// eslint-disable-next-line @typescript-eslint/ban-types\n/**\n * You can feel free to restore when you hook a function.\n * But you ought to restore 「in order」 if you hooked a value reference or a real obj reference.Because we not store the last value referent for now.\n * eg: obj.a = 1;\n * const r_1 = hookObjectProperty(obj, 'a',() =>2)()\n * const r_2 = hookObjectProperty(obj, 'a',() =>3)()\n * r_2() // obj.a === 2\n * r_1() // obj.a === 1\n *\n * @template T\n * @template K\n * @template P\n * @param {T} obj\n * @param {K} key\n * @param {(origin: T[K], ...params: P) => T[K]} hookFunc\n * @param {boolean} isCatchError When an error occurs after calling a hooked function, we want to suppress the errors and try to call the original function by default.\n * @return {*}\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport var hookObjectProperty = function (obj, key, hookFunc, isCatchError) {\n if (isCatchError === void 0) { isCatchError = true; }\n return function () {\n var params = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n params[_i] = arguments[_i];\n }\n if (!obj) {\n return noop;\n }\n var origin = obj[key];\n var hookedUnsafe = hookFunc.apply(void 0, __spreadArray([origin], __read(params), false));\n var hooked = hookedUnsafe;\n // 给所有 hook 之后的方法包一层 try catch\n if (isFunction(hooked) && isCatchError) {\n hooked = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n try {\n return hookedUnsafe.apply(this, args);\n }\n catch (_a) {\n return isFunction(origin) && origin.apply(this, args);\n }\n };\n }\n obj[key] = hooked;\n // strict: is break\n return function (strict) {\n if (!strict) {\n hooked === obj[key] ? (obj[key] = origin) : (hookedUnsafe = origin);\n }\n };\n };\n};\n/**\n * 劫持对象方法\n * 必须记得给 hookFunc 劫持的方法包 try catch !\n * 不在本方法里包是为了避免对象原方法被调用两次\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport var hookMethodDangerously = function (obj, key, hookFunc) {\n return function () {\n var params = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n params[_i] = arguments[_i];\n }\n if (!obj) {\n return noop;\n }\n var origin = obj[key];\n var hookedUnsafe = hookFunc.apply(void 0, __spreadArray([origin], __read(params), false));\n var hooked = hookedUnsafe;\n if (isFunction(hooked)) {\n hooked = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return hookedUnsafe.apply(this, args);\n };\n }\n obj[key] = hooked;\n return function () {\n hooked === obj[key] ? (obj[key] = origin) : (hookedUnsafe = origin);\n };\n };\n};\n//# sourceMappingURL=hook-object.js.map","import { __read, __spreadArray } from \"tslib\";\nexport var getPrintString = function () {\n // @ts-expect-error\n if (''.padStart) {\n return function (str, prefixLength) {\n if (prefixLength === void 0) { prefixLength = 8; }\n return str.padStart(prefixLength, ' ');\n };\n }\n return function (str) { return str; };\n};\nvar printString = getPrintString();\nexport var createLogger = function (prefix, prefixLen) {\n if (prefixLen === void 0) { prefixLen = 20; }\n var count = 0;\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n // eslint-disable-next-line no-console\n console.log.apply(console, __spreadArray([printString(prefix, prefixLen), Date.now(), printString(\"\" + count++)], __read(args), false));\n };\n};\nvar count = 0;\nexport var log = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n // eslint-disable-next-line no-console\n console.log.apply(console, __spreadArray(['[SDK]', Date.now(), printString(\"\" + count++)], __read(args), false));\n};\nvar errCount = 0;\nexport var error = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n // eslint-disable-next-line no-console\n console.error.apply(console, __spreadArray(['[SDK]', Date.now(), printString(\"\" + errCount++)], __read(args), false));\n};\nvar warnCount = 0;\nexport var warn = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n // eslint-disable-next-line no-console\n console.warn.apply(console, __spreadArray(['[SDK]', Date.now(), printString(\"\" + warnCount++)], __read(args), false));\n};\n//# sourceMappingURL=logger.js.map","export var isHitBySampleRate = function (sampleRate) {\n if (Math.random() < Number(sampleRate)) {\n return true;\n }\n return false;\n};\nexport var isHitByRandom = function (random, sampleRate) {\n if (random < Number(sampleRate)) {\n return true;\n }\n return false;\n};\n//# sourceMappingURL=number.js.map","import { error } from './logger';\nexport var runProcessors = function (fns) {\n return function (e) {\n var r = e;\n for (var i = 0; i < fns.length; i++) {\n if (r) {\n try {\n r = fns[i](r);\n }\n catch (err) {\n error(err);\n }\n }\n else {\n break;\n }\n }\n return r;\n };\n};\nexport var runFilters = function (fns) {\n return function (e) {\n var r = true;\n for (var i = 0; i < fns.length; i++) {\n if (r) {\n try {\n r = fns[i](e);\n }\n catch (err) {\n error(err);\n }\n }\n else {\n break;\n }\n }\n return r;\n };\n};\n//# sourceMappingURL=processor.js.map","/**\n * 生成uuid\n * stolen from https://github.com/kelektiv/node-uuid#readme uuid/v4\n *\n * @returns\n */\nfunction mathRNG() {\n var rnds = new Array(16);\n var r = 0;\n for (var i = 0; i < 16; i++) {\n if ((i & 0x03) === 0) {\n r = Math.random() * 0x100000000;\n }\n rnds[i] = (r >>> ((i & 0x03) << 3)) & 0xff;\n }\n return rnds;\n}\nfunction bytesToUuid(buf) {\n var byteToHex = [];\n for (var index = 0; index < 256; ++index) {\n byteToHex[index] = (index + 0x100).toString(16).substr(1);\n }\n var i = 0;\n var bth = byteToHex;\n // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4\n return [\n bth[buf[i++]],\n bth[buf[i++]],\n bth[buf[i++]],\n bth[buf[i++]],\n '-',\n bth[buf[i++]],\n bth[buf[i++]],\n '-',\n bth[buf[i++]],\n bth[buf[i++]],\n '-',\n bth[buf[i++]],\n bth[buf[i++]],\n '-',\n bth[buf[i++]],\n bth[buf[i++]],\n bth[buf[i++]],\n bth[buf[i++]],\n bth[buf[i++]],\n bth[buf[i++]],\n ].join('');\n}\nfunction uuid() {\n var rnds = mathRNG();\n // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n return bytesToUuid(rnds);\n}\nexport { uuid };\n//# sourceMappingURL=uuid.js.map","import { noop } from './misc';\nexport var BUFFER_TIME = 300000; // 5分钟\nexport var applyBufferTimer = function (checkIfNeedCancel, cb, bufferTime) {\n var tid = 0;\n if (bufferTime === -1)\n return noop;\n return function () {\n if (checkIfNeedCancel()) {\n tid && clearTimeout(tid);\n tid = 0;\n return;\n }\n tid === 0 && (tid = setTimeout(cb, bufferTime));\n };\n};\n//# sourceMappingURL=time.js.map","import { __read } from \"tslib\";\n/* eslint-disable @typescript-eslint/no-invalid-void-type */\nimport { noop } from './misc';\nimport { arrayRemove } from './object-array';\nimport { runFilters } from './processor';\nimport { applyBufferTimer, BUFFER_TIME } from './time';\nexport var nextLink = function (args, cb) {\n var nextCbs = [];\n try {\n nextCbs = cb.reduce(function (sum, s) {\n try {\n var nextCb = s(args);\n typeof nextCb === 'function' && sum.push(nextCb);\n }\n catch (_a) {\n // do nothing\n }\n return sum;\n }, []);\n }\n catch (_a) {\n // do nothing\n }\n return function (nextArgs) { return nextLink(nextArgs, nextCbs); };\n};\nexport var toObservable = function (bufferTime) {\n if (bufferTime === void 0) { bufferTime = BUFFER_TIME; }\n var subscribers = [];\n var __complete = [];\n var closed = false;\n var attachCb;\n // 暂缓的自动销毁机制,比如5min 没有人订阅就自动销毁\n var setCloseIfNeed = applyBufferTimer(function () { return !!subscribers.length; }, function () {\n closed = true;\n attachCb && attachCb[0]();\n __complete.forEach(function (e) { return e(); });\n __complete.length = 0;\n attachCb = undefined;\n }, bufferTime);\n var unsubscribe = function (o) {\n subscribers = arrayRemove(subscribers, o);\n !closed && setCloseIfNeed();\n };\n return {\n next: function (args) {\n return nextLink(args, subscribers);\n },\n complete: function (cb) {\n __complete.push(cb);\n },\n attach: function (disconnect, onSubscribe) {\n attachCb = [disconnect, onSubscribe];\n },\n subscribe: function (o) {\n if (closed)\n throw new Error('Observer is closed');\n subscribers.push(o);\n attachCb && attachCb[1] && attachCb[1](o);\n setCloseIfNeed();\n return function () { return unsubscribe(o); };\n },\n unsubscribe: unsubscribe,\n };\n};\nexport var createSafeObserver = function (observer, completeCb, bufferTime) {\n var cur = toObservable(bufferTime);\n try {\n observer(cur.next, cur.attach);\n completeCb && cur.complete(completeCb);\n }\n catch (_a) {\n //\n }\n return [cur.subscribe, cur.unsubscribe];\n};\nexport var wrapFilters = function (originObservable, filters) {\n var _a = __read(originObservable, 1), subscribe = _a[0];\n var filteredObserver = function (next, tearDown) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n var unsubscribe = subscribe(function (o) {\n var hitFilter = runFilters(filters)(o);\n return hitFilter ? next(o) : noop;\n });\n tearDown(function () {\n unsubscribe();\n });\n };\n return filteredObserver;\n};\n//# sourceMappingURL=observable.js.map","export function createDestroyAgent() {\n var destroyed = false;\n var data = {};\n var removeTearDownGroup = function (tearDownGroup) {\n tearDownGroup.length &&\n tearDownGroup.forEach(function (v) {\n try {\n v();\n // eslint-disable-next-line no-empty\n }\n catch (_a) { }\n });\n tearDownGroup.length = 0;\n };\n var removeByPluginName = function (pluginName) {\n data[pluginName] &&\n data[pluginName].forEach(function (e) {\n removeTearDownGroup(e[1]);\n });\n data[pluginName] = undefined;\n };\n var removeByEvType = function (evType) {\n Object.keys(data).forEach(function (k) {\n data[k] &&\n data[k].forEach(function (e) {\n if (e[0] === evType) {\n removeTearDownGroup(e[1]);\n }\n });\n });\n };\n return {\n /**\n * register tearDownGroup for a single plugin.\n */\n set: function (pluginName, evType, tearDownGroup) {\n if (data[pluginName])\n data[pluginName].push([evType, tearDownGroup]);\n else\n data[pluginName] = [[evType, tearDownGroup]];\n // auto remove tearDownGroup if destroyed\n destroyed && removeTearDownGroup(tearDownGroup);\n },\n has: function (pluginName) {\n return !!data[pluginName];\n },\n /**\n * remove tearDownGroup for a single plugin.\n */\n remove: removeByPluginName,\n /**\n * remove tearDownGroup by event type\n */\n removeByEvType: removeByEvType,\n /**\n * clear all tearDownGroup\n */\n clear: function () {\n destroyed = true;\n Object.keys(data).forEach(function (k) {\n removeByPluginName(k);\n });\n },\n };\n}\n/**\n * 将tearDownGroup 注册到 destroyAgent,destroyAgent会在实例销毁时自动销毁tearDownGroup\n */\nexport var registerTearDownGroup = function (client, pluginName, evType, tearDownGroup) {\n return client.destroyAgent.set(pluginName, evType, tearDownGroup);\n};\n//# sourceMappingURL=destroy.js.map","import { __read, __spreadArray } from \"tslib\";\n/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */\nimport { EVENTS, } from './types';\nimport { arrayIncludes, arrayRemove, isObject, log, runProcessors, warn, createDestroyAgent } from './utils';\nexport function createClient(creationConfig) {\n var builder = creationConfig.builder, createSender = creationConfig.createSender, createDefaultConfig = creationConfig.createDefaultConfig, createConfigManager = creationConfig.createConfigManager, userConfigNormalizer = creationConfig.userConfigNormalizer, initConfigNormalizer = creationConfig.initConfigNormalizer, validateInitConfig = creationConfig.validateInitConfig;\n var sender;\n var configManager;\n var handlers = {};\n EVENTS.forEach(function (e) { return (handlers[e] = []); });\n var inited = false;\n var started = false;\n var destroyed = false;\n // 缓存 start 之前 build 的事件\n var preStartQueue = [];\n // 禁止通过 provide 挂载的字段名\n var reservedNames = [];\n var destroyAgent = createDestroyAgent();\n var client = {\n getBuilder: function () { return builder; },\n getSender: function () { return sender; },\n getPreStartQueue: function () { return preStartQueue; },\n init: function (c) {\n if (inited) {\n warn('already inited');\n return;\n }\n if (c && isObject(c) && validateInitConfig(c)) {\n var defaultConfig = createDefaultConfig(c);\n if (!defaultConfig) {\n throw new Error('defaultConfig missing');\n }\n var initConfig = initConfigNormalizer(c);\n configManager = createConfigManager(defaultConfig);\n configManager.setConfig(initConfig);\n configManager.onChange(function () {\n handle('config');\n });\n sender = createSender(configManager.getConfig());\n if (!sender) {\n throw new Error('sender missing');\n }\n inited = true;\n handle('init', true);\n }\n else {\n throw new Error('invalid InitConfig, init failed');\n }\n },\n set: function (c) {\n if (!inited) {\n return;\n }\n if (c && isObject(c)) {\n handle('beforeConfig', false, c);\n configManager === null || configManager === void 0 ? void 0 : configManager.setConfig(c);\n }\n },\n config: function (c) {\n if (!inited) {\n return;\n }\n if (c && isObject(c)) {\n handle('beforeConfig', false, c);\n configManager === null || configManager === void 0 ? void 0 : configManager.setConfig(userConfigNormalizer(c));\n }\n return configManager === null || configManager === void 0 ? void 0 : configManager.getConfig();\n },\n provide: function (name, value) {\n if (arrayIncludes(reservedNames, name)) {\n warn(\"cannot provide \" + name + \", reserved\");\n return;\n }\n client[name] = value;\n handle('provide', false, name);\n },\n start: function () {\n var _this = this;\n if (!inited) {\n return;\n }\n if (started) {\n return;\n }\n configManager === null || configManager === void 0 ? void 0 : configManager.onReady(function () {\n started = true;\n handle('start', true);\n preStartQueue.forEach(function (e) { return _this.build(e); });\n preStartQueue.length = 0;\n });\n },\n report: function (data) {\n if (!data) {\n return;\n }\n var preReport = runProcessors(handlers['beforeReport'])(data);\n if (!preReport) {\n return;\n }\n var processed = runProcessors(handlers['report'])(preReport);\n if (!processed) {\n return;\n }\n if (started) {\n this.build(processed);\n }\n else {\n preStartQueue.push(processed);\n }\n },\n build: function (data) {\n if (!started) {\n return;\n }\n var preBuild = runProcessors(handlers['beforeBuild'])(data);\n if (!preBuild) {\n return;\n }\n var built = builder.build(preBuild);\n if (!built) {\n return;\n }\n var processed = runProcessors(handlers['build'])(built);\n if (!processed) {\n return;\n }\n this.send(processed);\n },\n send: function (data) {\n if (!started) {\n return;\n }\n var processed = runProcessors(handlers['beforeSend'])(data);\n if (processed) {\n sender.send(processed);\n handle('send', false, processed);\n }\n },\n destroy: function () {\n destroyAgent.clear();\n destroyed = true;\n preStartQueue.length = 0;\n handle('beforeDestroy', true);\n },\n on: function (ev, handler) {\n if ((ev === 'init' && inited) || (ev === 'start' && started) || (ev === 'beforeDestroy' && destroyed)) {\n try {\n ;\n handler();\n }\n catch (_err) {\n // ignore\n }\n }\n else if (handlers[ev]) {\n handlers[ev].push(handler);\n }\n },\n off: function (ev, handler) {\n if (handlers[ev])\n handlers[ev] = arrayRemove(handlers[ev], handler);\n },\n destroyAgent: destroyAgent,\n };\n reservedNames = Object.keys(client);\n return client;\n function handle(ev, once) {\n if (once === void 0) { once = false; }\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n handlers[ev].forEach(function (f) {\n try {\n f.apply(void 0, __spreadArray([], __read(args), false));\n }\n catch (_err) {\n // ignore\n }\n });\n if (once) {\n handlers[ev].length = 0;\n }\n }\n}\n//# sourceMappingURL=client.js.map","import { createContextAgent } from '../utils';\nexport var ContextPlugin = function (client) {\n var contextAgent = createContextAgent();\n client.provide('context', contextAgent);\n client.on('report', function (ev) {\n if (!ev.extra) {\n ev.extra = {};\n }\n ev.extra.context = contextAgent.toString();\n return ev;\n });\n};\n//# sourceMappingURL=context.js.map","import { __assign } from \"tslib\";\nimport { safeStringify } from './string';\nexport function createContextAgent() {\n var context = {};\n var stringified = {};\n var contextAgent = {\n set: function (k, v) {\n context[k] = v;\n stringified[k] = safeStringify(v);\n return contextAgent;\n },\n merge: function (ctx) {\n context = __assign(__assign({}, context), ctx);\n Object.keys(ctx).forEach(function (key) {\n stringified[key] = safeStringify(ctx[key]);\n });\n return contextAgent;\n },\n delete: function (k) {\n delete context[k];\n delete stringified[k];\n return contextAgent;\n },\n clear: function () {\n context = {};\n stringified = {};\n return contextAgent;\n },\n get: function (k) {\n return stringified[k];\n },\n toString: function () {\n return __assign({}, stringified);\n },\n };\n return contextAgent;\n}\n//# sourceMappingURL=context.js.map","import { __read } from \"tslib\";\nimport { createSafeObserver, wrapFilters } from '../utils/observable';\nexport var SubjectSpacer = '_';\nexport var getSubjectKeyWithoutVersion = function (subjectKey) {\n return subjectKey.split(SubjectSpacer)[0];\n};\nexport function SubjectPlugin(client, globalSubjectMap) {\n var subjectMap = globalSubjectMap || {};\n var filterMap = {};\n // filter key is subject key but without subject spacer and subject version, and it only takes effect on subsequent observers\n var setFilter = function (subjectKeyWithoutVersion, filter) {\n if (!filterMap[subjectKeyWithoutVersion])\n filterMap[subjectKeyWithoutVersion] = [];\n filterMap[subjectKeyWithoutVersion].push(filter);\n };\n var initSubject = function (_a) {\n var _b = __read(_a, 2), subjectKey = _b[0], observer = _b[1];\n var filterKey = getSubjectKeyWithoutVersion(subjectKey);\n var filters = !!filterKey && filterMap[filterKey];\n if (!subjectMap[subjectKey])\n subjectMap[subjectKey] = createSafeObserver(observer, function () {\n subjectMap[subjectKey] = undefined;\n });\n if (!filters)\n return subjectMap[subjectKey];\n return initPrivateSubject(client, [\n subjectKey,\n wrapFilters(subjectMap[subjectKey], filters),\n ]);\n };\n client.provide('setFilter', setFilter);\n client.provide('initSubject', initSubject);\n client.provide('getSubject', function (key) { return subjectMap[key]; });\n client.provide('privateSubject', {});\n}\n/**\n * 由于 Observer 带有自动销毁机制,意味着subject 只支持同步注册并使用\n */\nexport function initSubjectInGlobal(client, args) {\n return client.initSubject(args);\n}\n/**\n * 此方法不会挂载到全局对象上,同时只支持同步注册并使用\n */\nexport function initPrivateSubject(client, _a, bufferTime) {\n var _b = __read(_a, 2), subjectKey = _b[0], observer = _b[1];\n var subjectMap = client.privateSubject || {};\n if (!subjectMap[subjectKey])\n subjectMap[subjectKey] = createSafeObserver(observer, function () {\n subjectMap[subjectKey] = undefined;\n }, bufferTime);\n return subjectMap[subjectKey];\n}\n//# sourceMappingURL=subject.js.map","export var now = function () { return Date.now(); };\n//# sourceMappingURL=date.js.map","import { isFunction, isObject } from '@slardar/sdk-template';\nexport function getDefaultBrowser() {\n if (typeof window === 'object' && isObject(window))\n return window;\n}\nexport function getDefaultDocument() {\n if (typeof document === 'object' && isObject(document))\n return document;\n}\nexport function getDefaultLocation() {\n return getDefaultBrowser() && window.location;\n}\nexport function getDefaultHistory() {\n // eslint-disable-next-line compat/compat\n return getDefaultBrowser() && window.history;\n}\nexport function getDefaultPerformance() {\n if (getDefaultBrowser() && isObject(window.performance))\n return window.performance;\n}\nexport function getDefaultPromise() {\n if (getDefaultBrowser() && 'Promise' in window)\n return Promise;\n}\nexport function getDefaultXMLHttpRequest() {\n if (typeof XMLHttpRequest === 'function' && isFunction(XMLHttpRequest))\n return XMLHttpRequest;\n}\nexport function getDefaultFetch() {\n try {\n // eslint-disable-next-line compat/compat\n new Headers();\n // eslint-disable-next-line compat/compat\n new Request('');\n // eslint-disable-next-line compat/compat\n new Response();\n // eslint-disable-next-line compat/compat\n return window.fetch;\n }\n catch (_a) {\n //\n }\n}\nexport function getDefaultMutationObserver() {\n if (getDefaultBrowser() && isFunction(window.MutationObserver))\n return window.MutationObserver;\n}\nexport function getDefaultPerformanceObserver() {\n if (getDefaultBrowser() && isFunction(window.PerformanceObserver))\n return window.PerformanceObserver;\n}\nexport function getDefaultPerformanceTiming() {\n var performance = getDefaultPerformance();\n if (performance && isObject(performance.timing))\n return performance.timing;\n}\nexport function getDefaultRaf() {\n if (getDefaultBrowser() && 'requestAnimationFrame' in window) {\n return window.requestAnimationFrame;\n }\n}\nexport function getDefaultCaf() {\n if (getDefaultBrowser() && 'cancelAnimationFrame' in window) {\n return window.cancelAnimationFrame;\n }\n}\nexport function getDefaultNavigator() {\n if (getDefaultBrowser() && 'navigator' in window) {\n return window.navigator;\n }\n}\nexport function getDefaultNetworkInformation() {\n var navigator = getDefaultNavigator();\n if (navigator) {\n return navigator.connection || navigator.mozConnection || navigator.webkitConnection;\n }\n}\nexport function getCurrentScript() {\n if (!document)\n return null;\n if (document.currentScript)\n return document.currentScript;\n // IE 8-10 support script readyState\n // IE 11+ support stack trace\n try {\n throw new Error();\n }\n catch (err) {\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i = 0;\n var stackDetails = /at\\s+(.*)\\s+\\((.*):(\\d*):(\\d*)\\)/i.exec(err.stack);\n // eslint-disable-next-line @typescript-eslint/prefer-optional-chain\n var scriptLocation = (stackDetails && stackDetails[2]) || false;\n // eslint-disable-next-line @typescript-eslint/prefer-optional-chain\n var line = (stackDetails && stackDetails[3]) || 0;\n var currentLocation = document.location.href.replace(document.location.hash, '');\n var inlineScriptSource = '';\n var scripts = document.getElementsByTagName('script'); // Live NodeList collection\n if (scriptLocation === currentLocation) {\n var pageSource = document.documentElement.outerHTML;\n var inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*