bw-frontend-sdk 1.0.24 → 1.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,2 +1,4 @@
1
- function e(e,t){return function(){return e.apply(t,arguments)}}const{toString:t}=Object.prototype,{getPrototypeOf:r}=Object,{iterator:i,toStringTag:n}=Symbol,o=(s=Object.create(null),e=>{const r=t.call(e);return s[r]||(s[r]=r.slice(8,-1).toLowerCase())});var s;const a=e=>(e=e.toLowerCase(),t=>o(t)===e),c=e=>t=>typeof t===e,{isArray:u}=Array,l=c("undefined");function h(e){return null!==e&&!l(e)&&null!==e.constructor&&!l(e.constructor)&&g(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const d=a("ArrayBuffer");const p=c("string"),g=c("function"),f=c("number"),m=e=>null!==e&&"object"==typeof e,w=e=>{if("object"!==o(e))return!1;const t=r(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||n in e||i in e)},b=a("Date"),v=a("File"),y=a("Blob"),T=a("FileList"),k=a("URLSearchParams"),[S,E,P,x]=["ReadableStream","Request","Response","Headers"].map(a);function R(e,t,{allOwnKeys:r=!1}={}){if(null==e)return;let i,n;if("object"!=typeof e&&(e=[e]),u(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{if(h(e))return;const n=r?Object.getOwnPropertyNames(e):Object.keys(e),o=n.length;let s;for(i=0;i<o;i++)s=n[i],t.call(null,e[s],s,e)}}function C(e,t){if(h(e))return null;t=t.toLowerCase();const r=Object.keys(e);let i,n=r.length;for(;n-- >0;)if(i=r[n],t===i.toLowerCase())return i;return null}const I="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,O=e=>!l(e)&&e!==I;const A=(D="undefined"!=typeof Uint8Array&&r(Uint8Array),e=>D&&e instanceof D);var D;const N=a("HTMLFormElement"),L=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),_=a("RegExp"),U=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),i={};R(r,(r,n)=>{let o;!1!==(o=t(r,n,e))&&(i[n]=o||r)}),Object.defineProperties(e,i)};const j=a("AsyncFunction"),F=(B="function"==typeof setImmediate,M=g(I.postMessage),B?setImmediate:M?(z=`axios@${Math.random()}`,H=[],I.addEventListener("message",({source:e,data:t})=>{e===I&&t===z&&H.length&&H.shift()()},!1),e=>{H.push(e),I.postMessage(z,"*")}):e=>setTimeout(e));var B,M,z,H;const V="undefined"!=typeof queueMicrotask?queueMicrotask.bind(I):"undefined"!=typeof process&&process.nextTick||F;var q={isArray:u,isArrayBuffer:d,isBuffer:h,isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||g(e.append)&&("formdata"===(t=o(e))||"object"===t&&g(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&d(e.buffer),t},isString:p,isNumber:f,isBoolean:e=>!0===e||!1===e,isObject:m,isPlainObject:w,isEmptyObject:e=>{if(!m(e)||h(e))return!1;try{return 0===Object.keys(e).length&&Object.getPrototypeOf(e)===Object.prototype}catch(e){return!1}},isReadableStream:S,isRequest:E,isResponse:P,isHeaders:x,isUndefined:l,isDate:b,isFile:v,isBlob:y,isRegExp:_,isFunction:g,isStream:e=>m(e)&&g(e.pipe),isURLSearchParams:k,isTypedArray:A,isFileList:T,forEach:R,merge:function e(){const{caseless:t}=O(this)&&this||{},r={},i=(i,n)=>{const o=t&&C(r,n)||n;w(r[o])&&w(i)?r[o]=e(r[o],i):w(i)?r[o]=e({},i):u(i)?r[o]=i.slice():r[o]=i};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&R(arguments[e],i);return r},extend:(t,r,i,{allOwnKeys:n}={})=>(R(r,(r,n)=>{i&&g(r)?t[n]=e(r,i):t[n]=r},{allOwnKeys:n}),t),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,i,n)=>{let o,s,a;const c={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],n&&!n(a,e,t)||c[a]||(t[a]=e[a],c[a]=!0);e=!1!==i&&r(e)}while(e&&(!i||i(e,t))&&e!==Object.prototype);return t},kindOf:o,kindOfTest:a,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const i=e.indexOf(t,r);return-1!==i&&i===r},toArray:e=>{if(!e)return null;if(u(e))return e;let t=e.length;if(!f(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[i]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const i=[];for(;null!==(r=e.exec(t));)i.push(r);return i},isHTMLForm:N,hasOwnProperty:L,hasOwnProp:L,reduceDescriptors:U,freezeMethods:e=>{U(e,(t,r)=>{if(g(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const i=e[r];g(i)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))})},toObjectSet:(e,t)=>{const r={},i=e=>{e.forEach(e=>{r[e]=!0})};return u(e)?i(e):i(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(e,t,r){return t.toUpperCase()+r}),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:C,global:I,isContextDefined:O,isSpecCompliantForm:function(e){return!!(e&&g(e.append)&&"FormData"===e[n]&&e[i])},toJSONObject:e=>{const t=new Array(10),r=(e,i)=>{if(m(e)){if(t.indexOf(e)>=0)return;if(h(e))return e;if(!("toJSON"in e)){t[i]=e;const n=u(e)?[]:{};return R(e,(e,t)=>{const o=r(e,i+1);!l(o)&&(n[t]=o)}),t[i]=void 0,n}}return e};return r(e,0)},isAsyncFn:j,isThenable:e=>e&&(m(e)||g(e))&&g(e.then)&&g(e.catch),setImmediate:F,asap:V,isIterable:e=>null!=e&&g(e[i])};function K(e,t,r,i,n){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),i&&(this.request=i),n&&(this.response=n,this.status=n.status?n.status:null)}q.inherits(K,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:q.toJSONObject(this.config),code:this.code,status:this.status}}});const $=K.prototype,Q={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Q[e]={value:e}}),Object.defineProperties(K,Q),Object.defineProperty($,"isAxiosError",{value:!0}),K.from=(e,t,r,i,n,o)=>{const s=Object.create($);return q.toFlatObject(e,s,function(e){return e!==Error.prototype},e=>"isAxiosError"!==e),K.call(s,e.message,t,r,i,n),s.cause=e,s.name=e.name,o&&Object.assign(s,o),s};function W(e){return q.isPlainObject(e)||q.isArray(e)}function J(e){return q.endsWith(e,"[]")?e.slice(0,-2):e}function X(e,t,r){return e?e.concat(t).map(function(e,t){return e=J(e),!r&&t?"["+e+"]":e}).join(r?".":""):t}const G=q.toFlatObject(q,{},null,function(e){return/^is[A-Z]/.test(e)});function Y(e,t,r){if(!q.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const i=(r=q.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(e,t){return!q.isUndefined(t[e])})).metaTokens,n=r.visitor||u,o=r.dots,s=r.indexes,a=(r.Blob||"undefined"!=typeof Blob&&Blob)&&q.isSpecCompliantForm(t);if(!q.isFunction(n))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(q.isDate(e))return e.toISOString();if(q.isBoolean(e))return e.toString();if(!a&&q.isBlob(e))throw new K("Blob is not supported. Use a Buffer instead.");return q.isArrayBuffer(e)||q.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,r,n){let a=e;if(e&&!n&&"object"==typeof e)if(q.endsWith(r,"{}"))r=i?r:r.slice(0,-2),e=JSON.stringify(e);else if(q.isArray(e)&&function(e){return q.isArray(e)&&!e.some(W)}(e)||(q.isFileList(e)||q.endsWith(r,"[]"))&&(a=q.toArray(e)))return r=J(r),a.forEach(function(e,i){!q.isUndefined(e)&&null!==e&&t.append(!0===s?X([r],i,o):null===s?r:r+"[]",c(e))}),!1;return!!W(e)||(t.append(X(n,r,o),c(e)),!1)}const l=[],h=Object.assign(G,{defaultVisitor:u,convertValue:c,isVisitable:W});if(!q.isObject(e))throw new TypeError("data must be an object");return function e(r,i){if(!q.isUndefined(r)){if(-1!==l.indexOf(r))throw Error("Circular reference detected in "+i.join("."));l.push(r),q.forEach(r,function(r,o){!0===(!(q.isUndefined(r)||null===r)&&n.call(t,r,q.isString(o)?o.trim():o,i,h))&&e(r,i?i.concat(o):[o])}),l.pop()}}(e),t}function Z(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(e){return t[e]})}function ee(e,t){this._pairs=[],e&&Y(e,this,t)}const te=ee.prototype;function re(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function ie(e,t,r){if(!t)return e;const i=r&&r.encode||re;q.isFunction(r)&&(r={serialize:r});const n=r&&r.serialize;let o;if(o=n?n(t,r):q.isURLSearchParams(t)?t.toString():new ee(t,r).toString(i),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}te.append=function(e,t){this._pairs.push([e,t])},te.toString=function(e){const t=e?function(t){return e.call(this,t,Z)}:Z;return this._pairs.map(function(e){return t(e[0])+"="+t(e[1])},"").join("&")};var ne=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){q.forEach(this.handlers,function(t){null!==t&&e(t)})}},oe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},se={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:ee,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]};const ae="undefined"!=typeof window&&"undefined"!=typeof document,ce="object"==typeof navigator&&navigator||void 0,ue=ae&&(!ce||["ReactNative","NativeScript","NS"].indexOf(ce.product)<0),le="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,he=ae&&window.location.href||"http://localhost";var de={...Object.freeze({__proto__:null,hasBrowserEnv:ae,hasStandardBrowserWebWorkerEnv:le,hasStandardBrowserEnv:ue,navigator:ce,origin:he}),...se};function pe(e){function t(e,r,i,n){let o=e[n++];if("__proto__"===o)return!0;const s=Number.isFinite(+o),a=n>=e.length;if(o=!o&&q.isArray(i)?i.length:o,a)return q.hasOwnProp(i,o)?i[o]=[i[o],r]:i[o]=r,!s;i[o]&&q.isObject(i[o])||(i[o]=[]);return t(e,r,i[o],n)&&q.isArray(i[o])&&(i[o]=function(e){const t={},r=Object.keys(e);let i;const n=r.length;let o;for(i=0;i<n;i++)o=r[i],t[o]=e[o];return t}(i[o])),!s}if(q.isFormData(e)&&q.isFunction(e.entries)){const r={};return q.forEachEntry(e,(e,i)=>{t(function(e){return q.matchAll(/\w+|\[(\w*)]/g,e).map(e=>"[]"===e[0]?"":e[1]||e[0])}(e),i,r,0)}),r}return null}const ge={transitional:oe,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const r=t.getContentType()||"",i=r.indexOf("application/json")>-1,n=q.isObject(e);n&&q.isHTMLForm(e)&&(e=new FormData(e));if(q.isFormData(e))return i?JSON.stringify(pe(e)):e;if(q.isArrayBuffer(e)||q.isBuffer(e)||q.isStream(e)||q.isFile(e)||q.isBlob(e)||q.isReadableStream(e))return e;if(q.isArrayBufferView(e))return e.buffer;if(q.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(n){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return Y(e,new de.classes.URLSearchParams,{visitor:function(e,t,r,i){return de.isNode&&q.isBuffer(e)?(this.append(t,e.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}(e,this.formSerializer).toString();if((o=q.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return Y(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return n||i?(t.setContentType("application/json",!1),function(e,t,r){if(q.isString(e))try{return(t||JSON.parse)(e),q.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ge.transitional,r=t&&t.forcedJSONParsing,i="json"===this.responseType;if(q.isResponse(e)||q.isReadableStream(e))return e;if(e&&q.isString(e)&&(r&&!this.responseType||i)){const r=!(t&&t.silentJSONParsing)&&i;try{return JSON.parse(e)}catch(e){if(r){if("SyntaxError"===e.name)throw K.from(e,K.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:de.classes.FormData,Blob:de.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};q.forEach(["delete","get","head","post","put","patch"],e=>{ge.headers[e]={}});var fe=ge;const me=q.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);const we=Symbol("internals");function be(e){return e&&String(e).trim().toLowerCase()}function ve(e){return!1===e||null==e?e:q.isArray(e)?e.map(ve):String(e)}function ye(e,t,r,i,n){return q.isFunction(i)?i.call(this,t,r):(n&&(t=r),q.isString(t)?q.isString(i)?-1!==t.indexOf(i):q.isRegExp(i)?i.test(t):void 0:void 0)}class Te{constructor(e){e&&this.set(e)}set(e,t,r){const i=this;function n(e,t,r){const n=be(t);if(!n)throw new Error("header name must be a non-empty string");const o=q.findKey(i,n);(!o||void 0===i[o]||!0===r||void 0===r&&!1!==i[o])&&(i[o||t]=ve(e))}const o=(e,t)=>q.forEach(e,(e,r)=>n(e,r,t));if(q.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(q.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))o((e=>{const t={};let r,i,n;return e&&e.split("\n").forEach(function(e){n=e.indexOf(":"),r=e.substring(0,n).trim().toLowerCase(),i=e.substring(n+1).trim(),!r||t[r]&&me[r]||("set-cookie"===r?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t})(e),t);else if(q.isObject(e)&&q.isIterable(e)){let r,i,n={};for(const t of e){if(!q.isArray(t))throw TypeError("Object iterator must return a key-value pair");n[i=t[0]]=(r=n[i])?q.isArray(r)?[...r,t[1]]:[r,t[1]]:t[1]}o(n,t)}else null!=e&&n(t,e,r);return this}get(e,t){if(e=be(e)){const r=q.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let i;for(;i=r.exec(e);)t[i[1]]=i[2];return t}(e);if(q.isFunction(t))return t.call(this,e,r);if(q.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=be(e)){const r=q.findKey(this,e);return!(!r||void 0===this[r]||t&&!ye(0,this[r],r,t))}return!1}delete(e,t){const r=this;let i=!1;function n(e){if(e=be(e)){const n=q.findKey(r,e);!n||t&&!ye(0,r[n],n,t)||(delete r[n],i=!0)}}return q.isArray(e)?e.forEach(n):n(e),i}clear(e){const t=Object.keys(this);let r=t.length,i=!1;for(;r--;){const n=t[r];e&&!ye(0,this[n],n,e,!0)||(delete this[n],i=!0)}return i}normalize(e){const t=this,r={};return q.forEach(this,(i,n)=>{const o=q.findKey(r,n);if(o)return t[o]=ve(i),void delete t[n];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,r)=>t.toUpperCase()+r)}(n):String(n).trim();s!==n&&delete t[n],t[s]=ve(i),r[s]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return q.forEach(this,(r,i)=>{null!=r&&!1!==r&&(t[i]=e&&q.isArray(r)?r.join(", "):r)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach(e=>r.set(e)),r}static accessor(e){const t=(this[we]=this[we]={accessors:{}}).accessors,r=this.prototype;function i(e){const i=be(e);t[i]||(!function(e,t){const r=q.toCamelCase(" "+t);["get","set","has"].forEach(i=>{Object.defineProperty(e,i+r,{value:function(e,r,n){return this[i].call(this,t,e,r,n)},configurable:!0})})}(r,e),t[i]=!0)}return q.isArray(e)?e.forEach(i):i(e),this}}Te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),q.reduceDescriptors(Te.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}}),q.freezeMethods(Te);var ke=Te;function Se(e,t){const r=this||fe,i=t||r,n=ke.from(i.headers);let o=i.data;return q.forEach(e,function(e){o=e.call(r,o,n.normalize(),t?t.status:void 0)}),n.normalize(),o}function Ee(e){return!(!e||!e.__CANCEL__)}function Pe(e,t,r){K.call(this,null==e?"canceled":e,K.ERR_CANCELED,t,r),this.name="CanceledError"}function xe(e,t,r){const i=r.config.validateStatus;r.status&&i&&!i(r.status)?t(new K("Request failed with status code "+r.status,[K.ERR_BAD_REQUEST,K.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}q.inherits(Pe,K,{__CANCEL__:!0});const Re=(e,t,r=3)=>{let i=0;const n=function(e,t){e=e||10;const r=new Array(e),i=new Array(e);let n,o=0,s=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),u=i[s];n||(n=c),r[o]=a,i[o]=c;let l=s,h=0;for(;l!==o;)h+=r[l++],l%=e;if(o=(o+1)%e,o===s&&(s=(s+1)%e),c-n<t)return;const d=u&&c-u;return d?Math.round(1e3*h/d):void 0}}(50,250);return function(e,t){let r,i,n=0,o=1e3/t;const s=(t,o=Date.now())=>{n=o,r=null,i&&(clearTimeout(i),i=null),e(...t)};return[(...e)=>{const t=Date.now(),a=t-n;a>=o?s(e,t):(r=e,i||(i=setTimeout(()=>{i=null,s(r)},o-a)))},()=>r&&s(r)]}(r=>{const o=r.loaded,s=r.lengthComputable?r.total:void 0,a=o-i,c=n(a);i=o;e({loaded:o,total:s,progress:s?o/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&o<=s?(s-o)/c:void 0,event:r,lengthComputable:null!=s,[t?"download":"upload"]:!0})},r)},Ce=(e,t)=>{const r=null!=e;return[i=>t[0]({lengthComputable:r,total:e,loaded:i}),t[1]]},Ie=e=>(...t)=>q.asap(()=>e(...t));var Oe=de.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,de.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(de.origin),de.navigator&&/(msie|trident)/i.test(de.navigator.userAgent)):()=>!0,Ae=de.hasStandardBrowserEnv?{write(e,t,r,i,n,o){const s=[e+"="+encodeURIComponent(t)];q.isNumber(r)&&s.push("expires="+new Date(r).toGMTString()),q.isString(i)&&s.push("path="+i),q.isString(n)&&s.push("domain="+n),!0===o&&s.push("secure"),document.cookie=s.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function De(e,t,r){let i=!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t);return e&&(i||0==r)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Ne=e=>e instanceof ke?{...e}:e;function Le(e,t){t=t||{};const r={};function i(e,t,r,i){return q.isPlainObject(e)&&q.isPlainObject(t)?q.merge.call({caseless:i},e,t):q.isPlainObject(t)?q.merge({},t):q.isArray(t)?t.slice():t}function n(e,t,r,n){return q.isUndefined(t)?q.isUndefined(e)?void 0:i(void 0,e,0,n):i(e,t,0,n)}function o(e,t){if(!q.isUndefined(t))return i(void 0,t)}function s(e,t){return q.isUndefined(t)?q.isUndefined(e)?void 0:i(void 0,e):i(void 0,t)}function a(r,n,o){return o in t?i(r,n):o in e?i(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(e,t,r)=>n(Ne(e),Ne(t),0,!0)};return q.forEach(Object.keys({...e,...t}),function(i){const o=c[i]||n,s=o(e[i],t[i],i);q.isUndefined(s)&&o!==a||(r[i]=s)}),r}var _e=e=>{const t=Le({},e);let r,{data:i,withXSRFToken:n,xsrfHeaderName:o,xsrfCookieName:s,headers:a,auth:c}=t;if(t.headers=a=ke.from(a),t.url=ie(De(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&a.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),q.isFormData(i))if(de.hasStandardBrowserEnv||de.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(!1!==(r=a.getContentType())){const[e,...t]=r?r.split(";").map(e=>e.trim()).filter(Boolean):[];a.setContentType([e||"multipart/form-data",...t].join("; "))}if(de.hasStandardBrowserEnv&&(n&&q.isFunction(n)&&(n=n(t)),n||!1!==n&&Oe(t.url))){const e=o&&s&&Ae.read(s);e&&a.set(o,e)}return t};var Ue="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise(function(t,r){const i=_e(e);let n=i.data;const o=ke.from(i.headers).normalize();let s,a,c,u,l,{responseType:h,onUploadProgress:d,onDownloadProgress:p}=i;function g(){u&&u(),l&&l(),i.cancelToken&&i.cancelToken.unsubscribe(s),i.signal&&i.signal.removeEventListener("abort",s)}let f=new XMLHttpRequest;function m(){if(!f)return;const i=ke.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders());xe(function(e){t(e),g()},function(e){r(e),g()},{data:h&&"text"!==h&&"json"!==h?f.response:f.responseText,status:f.status,statusText:f.statusText,headers:i,config:e,request:f}),f=null}f.open(i.method.toUpperCase(),i.url,!0),f.timeout=i.timeout,"onloadend"in f?f.onloadend=m:f.onreadystatechange=function(){f&&4===f.readyState&&(0!==f.status||f.responseURL&&0===f.responseURL.indexOf("file:"))&&setTimeout(m)},f.onabort=function(){f&&(r(new K("Request aborted",K.ECONNABORTED,e,f)),f=null)},f.onerror=function(){r(new K("Network Error",K.ERR_NETWORK,e,f)),f=null},f.ontimeout=function(){let t=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const n=i.transitional||oe;i.timeoutErrorMessage&&(t=i.timeoutErrorMessage),r(new K(t,n.clarifyTimeoutError?K.ETIMEDOUT:K.ECONNABORTED,e,f)),f=null},void 0===n&&o.setContentType(null),"setRequestHeader"in f&&q.forEach(o.toJSON(),function(e,t){f.setRequestHeader(t,e)}),q.isUndefined(i.withCredentials)||(f.withCredentials=!!i.withCredentials),h&&"json"!==h&&(f.responseType=i.responseType),p&&([c,l]=Re(p,!0),f.addEventListener("progress",c)),d&&f.upload&&([a,u]=Re(d),f.upload.addEventListener("progress",a),f.upload.addEventListener("loadend",u)),(i.cancelToken||i.signal)&&(s=t=>{f&&(r(!t||t.type?new Pe(null,e,f):t),f.abort(),f=null)},i.cancelToken&&i.cancelToken.subscribe(s),i.signal&&(i.signal.aborted?s():i.signal.addEventListener("abort",s)));const w=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(i.url);w&&-1===de.protocols.indexOf(w)?r(new K("Unsupported protocol "+w+":",K.ERR_BAD_REQUEST,e)):f.send(n||null)})};var je=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let r,i=new AbortController;const n=function(e){if(!r){r=!0,s();const t=e instanceof Error?e:this.reason;i.abort(t instanceof K?t:new Pe(t instanceof Error?t.message:t))}};let o=t&&setTimeout(()=>{o=null,n(new K(`timeout ${t} of ms exceeded`,K.ETIMEDOUT))},t);const s=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(e=>{e.unsubscribe?e.unsubscribe(n):e.removeEventListener("abort",n)}),e=null)};e.forEach(e=>e.addEventListener("abort",n));const{signal:a}=i;return a.unsubscribe=()=>q.asap(s),a}};const Fe=function*(e,t){let r=e.byteLength;if(!t||r<t)return void(yield e);let i,n=0;for(;n<r;)i=n+t,yield e.slice(n,i),n=i},Be=async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:r}=await t.read();if(e)break;yield r}}finally{await t.cancel()}},Me=(e,t,r,i)=>{const n=async function*(e,t){for await(const r of Be(e))yield*Fe(r,t)}(e,t);let o,s=0,a=e=>{o||(o=!0,i&&i(e))};return new ReadableStream({async pull(e){try{const{done:t,value:i}=await n.next();if(t)return a(),void e.close();let o=i.byteLength;if(r){let e=s+=o;r(e)}e.enqueue(new Uint8Array(i))}catch(e){throw a(e),e}},cancel:e=>(a(e),n.return())},{highWaterMark:2})},ze="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,He=ze&&"function"==typeof ReadableStream,Ve=ze&&("function"==typeof TextEncoder?(qe=new TextEncoder,e=>qe.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var qe;const Ke=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},$e=He&&Ke(()=>{let e=!1;const t=new Request(de.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Qe=He&&Ke(()=>q.isReadableStream(new Response("").body)),We={stream:Qe&&(e=>e.body)};var Je;ze&&(Je=new Response,["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!We[e]&&(We[e]=q.isFunction(Je[e])?t=>t[e]():(t,r)=>{throw new K(`Response type '${e}' is not supported`,K.ERR_NOT_SUPPORT,r)})}));const Xe=async(e,t)=>{const r=q.toFiniteNumber(e.getContentLength());return null==r?(async e=>{if(null==e)return 0;if(q.isBlob(e))return e.size;if(q.isSpecCompliantForm(e)){const t=new Request(de.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return q.isArrayBufferView(e)||q.isArrayBuffer(e)?e.byteLength:(q.isURLSearchParams(e)&&(e+=""),q.isString(e)?(await Ve(e)).byteLength:void 0)})(t):r};const Ge={http:null,xhr:Ue,fetch:ze&&(async e=>{let{url:t,method:r,data:i,signal:n,cancelToken:o,timeout:s,onDownloadProgress:a,onUploadProgress:c,responseType:u,headers:l,withCredentials:h="same-origin",fetchOptions:d}=_e(e);u=u?(u+"").toLowerCase():"text";let p,g=je([n,o&&o.toAbortSignal()],s);const f=g&&g.unsubscribe&&(()=>{g.unsubscribe()});let m;try{if(c&&$e&&"get"!==r&&"head"!==r&&0!==(m=await Xe(l,i))){let e,r=new Request(t,{method:"POST",body:i,duplex:"half"});if(q.isFormData(i)&&(e=r.headers.get("content-type"))&&l.setContentType(e),r.body){const[e,t]=Ce(m,Re(Ie(c)));i=Me(r.body,65536,e,t)}}q.isString(h)||(h=h?"include":"omit");const n="credentials"in Request.prototype;p=new Request(t,{...d,signal:g,method:r.toUpperCase(),headers:l.normalize().toJSON(),body:i,duplex:"half",credentials:n?h:void 0});let o=await fetch(p,d);const s=Qe&&("stream"===u||"response"===u);if(Qe&&(a||s&&f)){const e={};["status","statusText","headers"].forEach(t=>{e[t]=o[t]});const t=q.toFiniteNumber(o.headers.get("content-length")),[r,i]=a&&Ce(t,Re(Ie(a),!0))||[];o=new Response(Me(o.body,65536,r,()=>{i&&i(),f&&f()}),e)}u=u||"text";let w=await We[q.findKey(We,u)||"text"](o,e);return!s&&f&&f(),await new Promise((t,r)=>{xe(t,r,{data:w,headers:ke.from(o.headers),status:o.status,statusText:o.statusText,config:e,request:p})})}catch(t){if(f&&f(),t&&"TypeError"===t.name&&/Load failed|fetch/i.test(t.message))throw Object.assign(new K("Network Error",K.ERR_NETWORK,e,p),{cause:t.cause||t});throw K.from(t,t&&t.code,e,p)}})};q.forEach(Ge,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}});const Ye=e=>`- ${e}`,Ze=e=>q.isFunction(e)||null===e||!1===e;var et=e=>{e=q.isArray(e)?e:[e];const{length:t}=e;let r,i;const n={};for(let o=0;o<t;o++){let t;if(r=e[o],i=r,!Ze(r)&&(i=Ge[(t=String(r)).toLowerCase()],void 0===i))throw new K(`Unknown adapter '${t}'`);if(i)break;n[t||"#"+o]=i}if(!i){const e=Object.entries(n).map(([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build"));throw new K("There is no suitable adapter to dispatch the request "+(t?e.length>1?"since :\n"+e.map(Ye).join("\n"):" "+Ye(e[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return i};function tt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Pe(null,e)}function rt(e){tt(e),e.headers=ke.from(e.headers),e.data=Se.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return et(e.adapter||fe.adapter)(e).then(function(t){return tt(e),t.data=Se.call(e,e.transformResponse,t),t.headers=ke.from(t.headers),t},function(t){return Ee(t)||(tt(e),t&&t.response&&(t.response.data=Se.call(e,e.transformResponse,t.response),t.response.headers=ke.from(t.response.headers))),Promise.reject(t)})}const it="1.11.0",nt={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{nt[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const ot={};nt.transitional=function(e,t,r){function i(e,t){return"[Axios v"+it+"] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,n,o)=>{if(!1===e)throw new K(i(n," has been removed"+(t?" in "+t:"")),K.ERR_DEPRECATED);return t&&!ot[n]&&(ot[n]=!0,console.warn(i(n," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,n,o)}},nt.spelling=function(e){return(t,r)=>(console.warn(`${r} is likely a misspelling of ${e}`),!0)};var st={assertOptions:function(e,t,r){if("object"!=typeof e)throw new K("options must be an object",K.ERR_BAD_OPTION_VALUE);const i=Object.keys(e);let n=i.length;for(;n-- >0;){const o=i[n],s=t[o];if(s){const t=e[o],r=void 0===t||s(t,o,e);if(!0!==r)throw new K("option "+o+" must be "+r,K.ERR_BAD_OPTION_VALUE);continue}if(!0!==r)throw new K("Unknown option "+o,K.ERR_BAD_OPTION)}},validators:nt};const at=st.validators;class ct{constructor(e){this.defaults=e||{},this.interceptors={request:new ne,response:new ne}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const r=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?r&&!String(e.stack).endsWith(r.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+r):e.stack=r}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Le(this.defaults,t);const{transitional:r,paramsSerializer:i,headers:n}=t;void 0!==r&&st.assertOptions(r,{silentJSONParsing:at.transitional(at.boolean),forcedJSONParsing:at.transitional(at.boolean),clarifyTimeoutError:at.transitional(at.boolean)},!1),null!=i&&(q.isFunction(i)?t.paramsSerializer={serialize:i}:st.assertOptions(i,{encode:at.function,serialize:at.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),st.assertOptions(t,{baseUrl:at.spelling("baseURL"),withXsrfToken:at.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=n&&q.merge(n.common,n[t.method]);n&&q.forEach(["delete","get","head","post","put","patch","common"],e=>{delete n[e]}),t.headers=ke.concat(o,n);const s=[];let a=!0;this.interceptors.request.forEach(function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,s.unshift(e.fulfilled,e.rejected))});const c=[];let u;this.interceptors.response.forEach(function(e){c.push(e.fulfilled,e.rejected)});let l,h=0;if(!a){const e=[rt.bind(this),void 0];for(e.unshift(...s),e.push(...c),l=e.length,u=Promise.resolve(t);h<l;)u=u.then(e[h++],e[h++]);return u}l=s.length;let d=t;for(h=0;h<l;){const e=s[h++],t=s[h++];try{d=e(d)}catch(e){t.call(this,e);break}}try{u=rt.call(this,d)}catch(e){return Promise.reject(e)}for(h=0,l=c.length;h<l;)u=u.then(c[h++],c[h++]);return u}getUri(e){return ie(De((e=Le(this.defaults,e)).baseURL,e.url,e.allowAbsoluteUrls),e.params,e.paramsSerializer)}}q.forEach(["delete","get","head","options"],function(e){ct.prototype[e]=function(t,r){return this.request(Le(r||{},{method:e,url:t,data:(r||{}).data}))}}),q.forEach(["post","put","patch"],function(e){function t(t){return function(r,i,n){return this.request(Le(n||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:r,data:i}))}}ct.prototype[e]=t(),ct.prototype[e+"Form"]=t(!0)});var ut=ct;class lt{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(e){t=e});const r=this;this.promise.then(e=>{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null}),this.promise.then=e=>{let t;const i=new Promise(e=>{r.subscribe(e),t=e}).then(e);return i.cancel=function(){r.unsubscribe(t)},i},e(function(e,i,n){r.reason||(r.reason=new Pe(e,i,n),t(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new lt(function(t){e=t}),cancel:e}}}var ht=lt;const dt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(dt).forEach(([e,t])=>{dt[t]=e});var pt=dt;const gt=function t(r){const i=new ut(r),n=e(ut.prototype.request,i);return q.extend(n,ut.prototype,i,{allOwnKeys:!0}),q.extend(n,i,null,{allOwnKeys:!0}),n.create=function(e){return t(Le(r,e))},n}(fe);gt.Axios=ut,gt.CanceledError=Pe,gt.CancelToken=ht,gt.isCancel=Ee,gt.VERSION=it,gt.toFormData=Y,gt.AxiosError=K,gt.Cancel=gt.CanceledError,gt.all=function(e){return Promise.all(e)},gt.spread=function(e){return function(t){return e.apply(null,t)}},gt.isAxiosError=function(e){return q.isObject(e)&&!0===e.isAxiosError},gt.mergeConfig=Le,gt.AxiosHeaders=ke,gt.formToJSON=e=>pe(q.isHTMLForm(e)?new FormData(e):e),gt.getAdapter=et,gt.HttpStatusCode=pt,gt.default=gt;const ft=gt.create({timeout:1e4,headers:{"Content-Type":"multipart/form-data"}});ft.interceptors.request.use(e=>e,e=>Promise.reject(e)),ft.interceptors.response.use(e=>e,e=>Promise.reject(e));var mt,wt="user-agent",bt="",vt="function",yt="object",Tt="string",kt="undefined",St="browser",Et="cpu",Pt="device",xt="engine",Rt="os",Ct="result",It="name",Ot="type",At="vendor",Dt="version",Nt="architecture",Lt="major",_t="model",Ut="console",jt="mobile",Ft="tablet",Bt="smarttv",Mt="wearable",zt="xr",Ht="embedded",Vt="inapp",qt="brands",Kt="formFactors",$t="fullVersionList",Qt="platform",Wt="platformVersion",Jt="bitness",Xt="sec-ch-ua",Gt=Xt+"-full-version-list",Yt=Xt+"-arch",Zt=Xt+"-"+Jt,er=Xt+"-form-factors",tr=Xt+"-"+jt,rr=Xt+"-"+_t,ir=Xt+"-"+Qt,nr=ir+"-version",or=[qt,$t,jt,_t,Qt,Wt,Nt,Kt,Jt],sr="Amazon",ar="Apple",cr="ASUS",ur="BlackBerry",lr="Google",hr="Huawei",dr="Lenovo",pr="Honor",gr="LG",fr="Microsoft",mr="Motorola",wr="Nvidia",br="OnePlus",vr="OPPO",yr="Samsung",Tr="Sharp",kr="Sony",Sr="Xiaomi",Er="Zebra",Pr="Chrome",xr="Chromium",Rr="Chromecast",Cr="Edge",Ir="Firefox",Or="Opera",Ar="Facebook",Dr="Sogou",Nr="Mobile ",Lr=" Browser",_r="Windows",Ur=typeof window!==kt&&window.navigator?window.navigator:void 0,jr=Ur&&Ur.userAgentData?Ur.userAgentData:void 0,Fr=function(e){for(var t={},r=0;r<e.length;r++)t[e[r].toUpperCase()]=e[r];return t},Br=function(e,t){if(typeof e===yt&&e.length>0){for(var r in e)if(Vr(t)==Vr(e[r]))return!0;return!1}return!!zr(e)&&Vr(t)==Vr(e)},Mr=function(e,t){for(var r in e)return/^(browser|cpu|device|engine|os)$/.test(r)||!!t&&Mr(e[r])},zr=function(e){return typeof e===Tt},Hr=function(e){if(e){for(var t=[],r=$r(/\\?\"/g,e).split(","),i=0;i<r.length;i++)if(r[i].indexOf(";")>-1){var n=Wr(r[i]).split(";v=");t[i]={brand:n[0],version:n[1]}}else t[i]=Wr(r[i]);return t}},Vr=function(e){return zr(e)?e.toLowerCase():e},qr=function(e){return zr(e)?$r(/[^\d\.]/g,e).split(".")[0]:void 0},Kr=function(e){for(var t in e)if(e.hasOwnProperty(t)){var r=e[t];typeof r==yt&&2==r.length?this[r[0]]=r[1]:this[r]=void 0}return this},$r=function(e,t){return zr(t)?t.replace(e,bt):t},Qr=function(e){return $r(/\\?\"/g,e)},Wr=function(e,t){return e=$r(/^\s\s*/,String(e)),typeof t===kt?e:e.substring(0,t)},Jr=function(e,t){if(e&&t)for(var r,i,n,o,s,a,c=0;c<t.length&&!s;){var u=t[c],l=t[c+1];for(r=i=0;r<u.length&&!s&&u[r];)if(s=u[r++].exec(e))for(n=0;n<l.length;n++)a=s[++i],typeof(o=l[n])===yt&&o.length>0?2===o.length?typeof o[1]==vt?this[o[0]]=o[1].call(this,a):this[o[0]]=o[1]:o.length>=3&&(typeof o[1]!==vt||o[1].exec&&o[1].test?3==o.length?this[o[0]]=a?a.replace(o[1],o[2]):void 0:4==o.length?this[o[0]]=a?o[3].call(this,a.replace(o[1],o[2])):void 0:o.length>4&&(this[o[0]]=a?o[3].apply(this,[a.replace(o[1],o[2])].concat(o.slice(4))):void 0):o.length>3?this[o[0]]=a?o[1].apply(this,o.slice(2)):void 0:this[o[0]]=a?o[1].call(this,a,o[2]):void 0):this[o]=a||void 0;c+=2}},Xr=function(e,t){for(var r in t)if(typeof t[r]===yt&&t[r].length>0){for(var i=0;i<t[r].length;i++)if(Br(t[r][i],e))return"?"===r?void 0:r}else if(Br(t[r],e))return"?"===r?void 0:r;return t.hasOwnProperty("*")?t["*"]:e},Gr={ME:"4.90","NT 3.51":"3.51","NT 4.0":"4.0",2e3:["5.0","5.01"],XP:["5.1","5.2"],Vista:"6.0",7:"6.1",8:"6.2",8.1:"6.3",10:["6.4","10.0"],NT:""},Yr={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},Zr={Chrome:"Google Chrome",Edge:"Microsoft Edge","Edge WebView2":"Microsoft Edge WebView2","Chrome WebView":"Android WebView","Chrome Headless":"HeadlessChrome","Huawei Browser":"HuaweiBrowser","MIUI Browser":"Miui Browser","Opera Mobi":"OperaMobile",Yandex:"YaBrowser"},ei={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[Dt,[It,Nr+"Chrome"]],[/webview.+edge\/([\w\.]+)/i],[Dt,[It,Cr+" WebView"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[Dt,[It,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[It,Dt],[/opios[\/ ]+([\w\.]+)/i],[Dt,[It,Or+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[Dt,[It,Or+" GX"]],[/\bopr\/([\w\.]+)/i],[Dt,[It,Or]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[Dt,[It,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[Dt,[It,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser|palemoon)\/([-\w\.]+)/i,/(heytap|ovi|115|surf|qwant)browser\/([\d\.]+)/i,/(qwant)(?:ios|mobile)\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[It,Dt],[/quark(?:pc)?\/([-\w\.]+)/i],[Dt,[It,"Quark"]],[/\bddg\/([\w\.]+)/i],[Dt,[It,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[Dt,[It,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[Dt,[It,"WeChat"]],[/konqueror\/([\w\.]+)/i],[Dt,[It,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[Dt,[It,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[Dt,[It,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[Dt,[It,"Smart "+dr+Lr]],[/(avast|avg)\/([\w\.]+)/i],[[It,/(.+)/,"$1 Secure"+Lr],Dt],[/\bfocus\/([\w\.]+)/i],[Dt,[It,Ir+" Focus"]],[/\bopt\/([\w\.]+)/i],[Dt,[It,Or+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[Dt,[It,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[Dt,[It,"Dolphin"]],[/coast\/([\w\.]+)/i],[Dt,[It,Or+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[Dt,[It,"MIUI"+Lr]],[/fxios\/([\w\.-]+)/i],[Dt,[It,Nr+Ir]],[/\bqihoobrowser\/?([\w\.]*)/i],[Dt,[It,"360"]],[/\b(qq)\/([\w\.]+)/i],[[It,/(.+)/,"$1Browser"],Dt],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[It,/(.+)/,"$1"+Lr],Dt],[/samsungbrowser\/([\w\.]+)/i],[Dt,[It,yr+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[Dt,[It,Dr+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[It,Dr+" Mobile"],Dt],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[It,Dt],[/(lbbrowser|rekonq)/i],[It],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[Dt,It],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[It,Ar],Dt,[Ot,Vt]],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(bing)(?:web|sapphire)\/([\w\.]+)/i,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[It,Dt,[Ot,Vt]],[/\bgsa\/([\w\.]+) .*safari\//i],[Dt,[It,"GSA"],[Ot,Vt]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[Dt,[It,"TikTok"],[Ot,Vt]],[/\[(linkedin)app\]/i],[It,[Ot,Vt]],[/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i],[[It,/(.+)/,"Zalo"],Dt,[Ot,Vt]],[/(chromium)[\/ ]([-\w\.]+)/i],[It,Dt],[/headlesschrome(?:\/([\w\.]+)| )/i],[Dt,[It,Pr+" Headless"]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[Dt,[It,Cr+" WebView2"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[It,Pr+" WebView"],Dt],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[Dt,[It,"Android"+Lr]],[/chrome\/([\w\.]+) mobile/i],[Dt,[It,Nr+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[It,Dt],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[Dt,[It,Nr+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[It,Nr+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[Dt,It],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[It,[Dt,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[It,Dt],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[It,Nr+Ir],Dt],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[It,"Netscape"],Dt],[/(wolvic|librewolf)\/([\w\.]+)/i],[It,Dt],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[Dt,[It,Ir+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+(?= .+rv\:.+gecko\/\d+)|[0-4][\w\.]+(?!.+compatible))/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[It,[Dt,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[It,[Dt,/[^\d\.]+./,bt]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[Nt,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[Nt,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[Nt,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[Nt,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[Nt,"arm"]],[/ sun4\w[;\)]/i],[[Nt,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,/((ppc|powerpc)(64)?)( mac|;|\))/i,/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i],[[Nt,/ower/,bt,Vr]],[/mc680.0/i],[[Nt,"68k"]],[/winnt.+\[axp/i],[[Nt,"alpha"]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[_t,[At,yr],[Ot,Ft]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[_t,[At,yr],[Ot,jt]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i],[_t,[At,ar],[Ot,jt]],[/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,/\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i],[_t,[At,ar],[Ot,Ft]],[/(macintosh);/i],[_t,[At,ar]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[_t,[At,Tr],[Ot,jt]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[_t,[At,pr],[Ot,Ft]],[/honor([-\w ]+)[;\)]/i],[_t,[At,pr],[Ot,jt]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[_t,[At,hr],[Ot,Ft]],[/(?:huawei) ?([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i],[_t,[At,hr],[Ot,jt]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[_t,/_/g," "],[At,Sr],[Ot,Ft]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[_t,/_/g," "],[At,Sr],[Ot,jt]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[_t,[At,br],[Ot,jt]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[_t,[At,vr],[Ot,jt]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[_t,[At,Xr,{OnePlus:["203","304","403","404","413","415"],"*":vr}],[Ot,Ft]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[_t,[At,"BLU"],[Ot,jt]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[_t,[At,"Vivo"],[Ot,jt]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[_t,[At,"Realme"],[Ot,jt]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[_t,[At,dr],[Ot,Ft]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[_t,[At,dr],[Ot,jt]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[_t,[At,mr],[Ot,jt]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[_t,[At,mr],[Ot,Ft]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[_t,[At,gr],[Ot,Ft]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[_t,[At,gr],[Ot,jt]],[/(nokia) (t[12][01])/i],[At,_t,[Ot,Ft]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i],[[_t,/_/g," "],[Ot,jt],[At,"Nokia"]],[/(pixel (c|tablet))\b/i],[_t,[At,lr],[Ot,Ft]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[_t,[At,lr],[Ot,jt]],[/(google) (pixelbook( go)?)/i],[At,_t],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[_t,[At,kr],[Ot,jt]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[_t,"Xperia Tablet"],[At,kr],[Ot,Ft]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[_t,[At,sr],[Ot,Ft]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[_t,/(.+)/g,"Fire Phone $1"],[At,sr],[Ot,jt]],[/(playbook);[-\w\),; ]+(rim)/i],[_t,At,[Ot,Ft]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/(?:blackberry|\(bb10;) (\w+)/i],[_t,[At,ur],[Ot,jt]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[_t,[At,cr],[Ot,Ft]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[_t,[At,cr],[Ot,jt]],[/(nexus 9)/i],[_t,[At,"HTC"],[Ot,Ft]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[At,[_t,/_/g," "],[Ot,jt]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[_t,[At,"TCL"],[Ot,Ft]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[_t,[At,"TCL"],[Ot,jt]],[/(itel) ((\w+))/i],[[At,Vr],_t,[Ot,Xr,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[_t,[At,"Acer"],[Ot,Ft]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[_t,[At,"Meizu"],[Ot,jt]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[_t,[At,"Ulefone"],[Ot,jt]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[_t,[At,"Energizer"],[Ot,jt]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[_t,[At,"Cat"],[Ot,jt]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[_t,[At,"Smartfren"],[Ot,jt]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[_t,[At,"Nothing"],[Ot,jt]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[_t,[At,"Archos"],[Ot,Ft]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[_t,[At,"Archos"],[Ot,jt]],[/; (n159v)/i],[_t,[At,"HMD"],[Ot,jt]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[At,_t,[Ot,Ft]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|hmd|imo|infinix|lava|oneplus|tcl|wiko)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i,/(hisense) ([ehv][\w ]+)\)/i,/droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i],[At,_t,[Ot,jt]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[At,_t,[Ot,Ft]],[/(surface duo)/i],[_t,[At,fr],[Ot,Ft]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[_t,[At,"Fairphone"],[Ot,jt]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[_t,[At,wr],[Ot,Ft]],[/(sprint) (\w+)/i],[At,_t,[Ot,jt]],[/(kin\.[onetw]{3})/i],[[_t,/\./g," "],[At,fr],[Ot,jt]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[_t,[At,Er],[Ot,Ft]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[_t,[At,Er],[Ot,jt]],[/(philips)[\w ]+tv/i,/smart-tv.+(samsung)/i],[At,[Ot,Bt]],[/hbbtv.+maple;(\d+)/i],[[_t,/^/,"SmartTV"],[At,yr],[Ot,Bt]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[At,_t,[Ot,Bt]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[At,gr],[Ot,Bt]],[/(apple) ?tv/i],[At,[_t,ar+" TV"],[Ot,Bt]],[/crkey.*devicetype\/chromecast/i],[[_t,Rr+" Third Generation"],[At,lr],[Ot,Bt]],[/crkey.*devicetype\/([^/]*)/i],[[_t,/^/,"Chromecast "],[At,lr],[Ot,Bt]],[/fuchsia.*crkey/i],[[_t,Rr+" Nest Hub"],[At,lr],[Ot,Bt]],[/crkey/i],[[_t,Rr],[At,lr],[Ot,Bt]],[/(portaltv)/i],[_t,[At,Ar],[Ot,Bt]],[/droid.+aft(\w+)( bui|\))/i],[_t,[At,sr],[Ot,Bt]],[/(shield \w+ tv)/i],[_t,[At,wr],[Ot,Bt]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[_t,[At,Tr],[Ot,Bt]],[/(bravia[\w ]+)( bui|\))/i],[_t,[At,kr],[Ot,Bt]],[/(mi(tv|box)-?\w+) bui/i],[_t,[At,Sr],[Ot,Bt]],[/Hbbtv.*(technisat) (.*);/i],[At,_t,[Ot,Bt]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[At,/.+\/(\w+)/,"$1",Xr,{LG:"lge"}],[_t,Wr],[Ot,Bt]],[/(playstation \w+)/i],[_t,[At,kr],[Ot,Ut]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[_t,[At,fr],[Ot,Ut]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[At,_t,[Ot,Ut]],[/droid.+; (shield)( bui|\))/i],[_t,[At,wr],[Ot,Ut]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[_t,[At,yr],[Ot,Mt]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[At,_t,[Ot,Mt]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[_t,[At,vr],[Ot,Mt]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[_t,[At,ar],[Ot,Mt]],[/(opwwe\d{3})/i],[_t,[At,br],[Ot,Mt]],[/(moto 360)/i],[_t,[At,mr],[Ot,Mt]],[/(smartwatch 3)/i],[_t,[At,kr],[Ot,Mt]],[/(g watch r)/i],[_t,[At,gr],[Ot,Mt]],[/droid.+; (wt63?0{2,3})\)/i],[_t,[At,Er],[Ot,Mt]],[/droid.+; (glass) \d/i],[_t,[At,lr],[Ot,zt]],[/(pico) ([\w ]+) os\d/i],[At,_t,[Ot,zt]],[/(quest( \d| pro)?s?).+vr/i],[_t,[At,Ar],[Ot,zt]],[/mobile vr; rv.+firefox/i],[[Ot,zt]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[At,[Ot,Ht]],[/(aeobc)\b/i],[_t,[At,sr],[Ot,Ht]],[/(homepod).+mac os/i],[_t,[At,ar],[Ot,Ht]],[/windows iot/i],[[Ot,Ht]],[/droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i],[_t,[Ot,Bt]],[/\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i],[[Ot,Bt]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i],[_t,[Ot,Xr,{mobile:"Mobile",xr:"VR","*":Ft}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[Ot,Ft]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[Ot,jt]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[_t,[At,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[Dt,[It,Cr+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[It,Dt],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[Dt,[It,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[It,Dt],[/ladybird\//i],[[It,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[Dt,It]],os:[[/(windows nt) (6\.[23]); arm/i],[[It,/N/,"R"],[Dt,Xr,Gr]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[It,Dt],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[Dt,/(;|\))/g,"",Xr,Gr],[It,_r]],[/(windows ce)\/?([\d\.]*)/i],[It,Dt],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w\.]+)/i,/cfnetwork\/.+darwin/i],[[Dt,/_/g,"."],[It,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[It,"macOS"],[Dt,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[Dt,[It,Rr+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[Dt,[It,Rr+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[Dt,[It,Rr+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[Dt,[It,Rr+" Linux"]],[/crkey\/([\d\.]+)/i],[Dt,[It,Rr]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[Dt,It],[/(ubuntu) ([\w\.]+) like android/i],[[It,/(.+)/,"$1 Touch"],Dt],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[It,Dt],[/\(bb(10);/i],[Dt,[It,ur]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[Dt,[It,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[Dt,[It,Ir+" OS"]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[Dt,[It,"webOS"]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[Dt,Xr,{25:"120",24:"108",23:"94",22:"87",6:"79",5:"68",4:"53",3:"38",2:"538",1:"537","*":"TV"}],[It,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[Dt,[It,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[It,"Chrome OS"],Dt],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[It,Dt],[/(sunos) ?([\d\.]*)/i],[[It,"Solaris"],Dt],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[It,Dt]]},ti=(Kr.call((mt={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}}).init,[[St,[It,Dt,Lt,Ot]],[Et,[Nt]],[Pt,[Ot,_t,At]],[xt,[It,Dt]],[Rt,[It,Dt]]]),Kr.call(mt.isIgnore,[[St,[Dt,Lt]],[xt,[Dt]],[Rt,[Dt]]]),Kr.call(mt.isIgnoreRgx,[[St,/ ?browser$/i],[Rt,/ ?os$/i]]),Kr.call(mt.toString,[[St,[It,Dt]],[Et,[Nt]],[Pt,[At,_t]],[xt,[It,Dt]],[Rt,[It,Dt]]]),mt),ri=function(e,t){var r=ti.init[t],i=ti.isIgnore[t]||0,n=ti.isIgnoreRgx[t]||0,o=ti.toString[t]||0;function s(){Kr.call(this,r)}return s.prototype.getItem=function(){return e},s.prototype.withClientHints=function(){return jr?jr.getHighEntropyValues(or).then(function(t){return e.setCH(new ii(t,!1)).parseCH().get()}):e.parseCH().get()},s.prototype.withFeatureCheck=function(){return e.detectFeature().get()},t!=Ct&&(s.prototype.is=function(e){var t=!1;for(var r in this)if(this.hasOwnProperty(r)&&!Br(i,r)&&Vr(n?$r(n,this[r]):this[r])==Vr(n?$r(n,e):e)){if(t=!0,e!=kt)break}else if(e==kt&&t){t=!t;break}return t},s.prototype.toString=function(){var e=bt;for(var t in o)typeof this[o[t]]!==kt&&(e+=(e?" ":bt)+this[o[t]]);return e||kt}),jr||(s.prototype.then=function(e){var t=this,r=function(){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e])};r.prototype={is:s.prototype.is,toString:s.prototype.toString};var i=new r;return e(i),i}),new s};function ii(e,t){if(e=e||{},Kr.call(this,or),t)Kr.call(this,[[qt,Hr(e[Xt])],[$t,Hr(e[Gt])],[jt,/\?1/.test(e[tr])],[_t,Qr(e[rr])],[Qt,Qr(e[ir])],[Wt,Qr(e[nr])],[Nt,Qr(e[Yt])],[Kt,Hr(e[er])],[Jt,Qr(e[Zt])]]);else for(var r in e)this.hasOwnProperty(r)&&typeof e[r]!==kt&&(this[r]=e[r])}function ni(e,t,r,i){return this.get=function(e){return e?this.data.hasOwnProperty(e)?this.data[e]:void 0:this.data},this.set=function(e,t){return this.data[e]=t,this},this.setCH=function(e){return this.uaCH=e,this},this.detectFeature=function(){if(Ur&&Ur.userAgent==this.ua)switch(this.itemType){case St:Ur.brave&&typeof Ur.brave.isBrave==vt&&this.set(It,"Brave");break;case Pt:!this.get(Ot)&&jr&&jr[jt]&&this.set(Ot,jt),"Macintosh"==this.get(_t)&&Ur&&typeof Ur.standalone!==kt&&Ur.maxTouchPoints&&Ur.maxTouchPoints>2&&this.set(_t,"iPad").set(Ot,Ft);break;case Rt:!this.get(It)&&jr&&jr[Qt]&&this.set(It,jr[Qt]);break;case Ct:var e=this.data,t=function(t){return e[t].getItem().detectFeature().get()};this.set(St,t(St)).set(Et,t(Et)).set(Pt,t(Pt)).set(xt,t(xt)).set(Rt,t(Rt))}return this},this.parseUA=function(){switch(this.itemType!=Ct&&Jr.call(this.data,this.ua,this.rgxMap),this.itemType){case St:this.set(Lt,qr(this.get(Dt)));break;case Rt:if("iOS"==this.get(It)&&"18.6"==this.get(Dt)){var e=/\) Version\/([\d\.]+)/.exec(this.ua);e&&parseInt(e[1].substring(0,2),10)>=26&&this.set(Dt,e[1])}}return this},this.parseCH=function(){var e=this.uaCH,t=this.rgxMap;switch(this.itemType){case St:case xt:var r,i=e[$t]||e[qt];if(i)for(var n=0;n<i.length;n++){var o=i[n].brand||i[n],s=i[n].version;this.itemType==St&&!/not.a.brand/i.test(o)&&(!r||/Chrom/.test(r)&&o!=xr||r==Cr&&/WebView2/.test(o))&&(o=Xr(o,Zr),(r=this.get(It))&&!/Chrom/.test(r)&&/Chrom/.test(o)||this.set(It,o).set(Dt,s).set(Lt,qr(s)),r=o),this.itemType==xt&&o==xr&&this.set(Dt,s)}break;case Et:var a=e[Nt];a&&(a&&"64"==e[Jt]&&(a+="64"),Jr.call(this.data,a+";",t));break;case Pt:if(e[jt]&&this.set(Ot,jt),e[_t]&&(this.set(_t,e[_t]),!this.get(Ot)||!this.get(At))){var c={};Jr.call(c,"droid 9; "+e[_t]+")",t),!this.get(Ot)&&c.type&&this.set(Ot,c.type),!this.get(At)&&c.vendor&&this.set(At,c.vendor)}if(e[Kt]){var u;if("string"!=typeof e[Kt])for(var l=0;!u&&l<e[Kt].length;)u=Xr(e[Kt][l++],Yr);else u=Xr(e[Kt],Yr);this.set(Ot,u)}break;case Rt:var h=e[Qt];if(h){var d=e[Wt];h==_r&&(d=parseInt(qr(d),10)>=13?"11":"10"),this.set(It,h).set(Dt,d)}this.get(It)==_r&&"Xbox"==e[_t]&&this.set(It,"Xbox").set(Dt,void 0);break;case Ct:var p=this.data,g=function(t){return p[t].getItem().setCH(e).parseCH().get()};this.set(St,g(St)).set(Et,g(Et)).set(Pt,g(Pt)).set(xt,g(xt)).set(Rt,g(Rt))}return this},Kr.call(this,[["itemType",e],["ua",t],["uaCH",i],["rgxMap",r],["data",ri(this,e)]]),this}function oi(e,t,r){if(typeof e===yt?(Mr(e,!0)?(typeof t===yt&&(r=t),t=e):(r=e,t=void 0),e=void 0):typeof e!==Tt||Mr(t,!0)||(r=t,t=void 0),r)if(typeof r.append===vt){var i={};r.forEach(function(e,t){i[String(t).toLowerCase()]=e}),r=i}else{var n={};for(var o in r)r.hasOwnProperty(o)&&(n[String(o).toLowerCase()]=r[o]);r=n}if(!(this instanceof oi))return new oi(e,t,r).getResult();var s=typeof e===Tt?e:r&&r[wt]?r[wt]:Ur&&Ur.userAgent?Ur.userAgent:bt,a=new ii(r,!0),c=t?function(e,t){var r={},i=t;if(!Mr(t))for(var n in i={},t)for(var o in t[n])i[o]=t[n][o].concat(i[o]?i[o]:[]);for(var s in e)r[s]=i[s]&&i[s].length%2==0?i[s].concat(e[s]):e[s];return r}(ei,t):ei,u=function(e){return e==Ct?function(){return new ni(e,s,c,a).set("ua",s).set(St,this.getBrowser()).set(Et,this.getCPU()).set(Pt,this.getDevice()).set(xt,this.getEngine()).set(Rt,this.getOS()).get()}:function(){return new ni(e,s,c[e],a).parseUA().get()}};return Kr.call(this,[["getBrowser",u(St)],["getCPU",u(Et)],["getDevice",u(Pt)],["getEngine",u(xt)],["getOS",u(Rt)],["getResult",u(Ct)],["getUA",function(){return s}],["setUA",function(e){return zr(e)&&(s=Wr(e,500)),this}]]).setUA(s),this}oi.VERSION="2.0.6",oi.BROWSER=Fr([It,Dt,Lt,Ot]),oi.CPU=Fr([Nt]),oi.DEVICE=Fr([_t,At,Ot,Ut,jt,Bt,Ft,Mt,Ht]),oi.ENGINE=oi.OS=Fr([It,Dt]);const si="undefined"!=typeof performance&&"function"==typeof performance.now?()=>performance.now():()=>Date.now();function ai(e,t,r="0"){const i=String(e);if(i.length<t){let e=i;for(let n=0;n<t-i.length;n+=1)e=r+e;return e}return i}function ci(){const e=new Date,t=parseInt(`${e.getFullYear()}${ai(e.getMonth()+1,2)}${ai(e.getDate(),2)}`,10).toString(16),r=parseInt(`${ai(e.getHours(),2)}${ai(e.getMinutes(),2)}${ai(e.getSeconds(),2)}${ai(e.getMilliseconds(),3)}`,10).toString(16);let i=t+r.length+r;for(;i.length<32;)i+=Math.floor(16*Math.random()).toString(16);return`${i.slice(0,8)}-${i.slice(8,16)}-${i.slice(16)}`}let ui=0;function li(){const e=Date.now().toString(36).slice(-8).padStart(8,"0");ui=(ui+1)%46656;const t=Math.floor(36*Math.random());return e+(ui.toString(36).padStart(2,"0")+t.toString(36)).padStart(4,"0").slice(-4)}const hi=()=>(()=>{if("undefined"!=typeof WeixinJSBridge)return!0;var e=navigator.userAgent.toLowerCase();return!(-1===e.indexOf("micromessenger")&&"micromessenger"!=e.match(/MicroMessenger/i))})()?"WECHAT":(()=>{const e=navigator.userAgent.toLowerCase();return!(-1===e.indexOf("alipay")&&"alipay"!=e.match(/Alipay/i))})()?"ALIPAY":"OTHER",di=e=>{const t=e.indexOf("#");if(-1===t)return"";return e.slice(t+1).replace(/^\//,"").split("?")[0]},pi=(e,t)=>["HONGSHUN"].includes(t)&&"chargeMoney"===e&&window.location.href.indexOf("showMoney=false")>-1?"EQUITY":{login:"LOGIN",buyPkgListNew:"BUY_LIST",cardDetailInfo:"CARD_DETAIL",flowSettle:"SETTLEMENT",chargeMoney:"WALLET",payOrderDetail:"ORDER_DETAIL"}[e]||e,gi=()=>{const e=navigator.userAgent.toLowerCase();return/android|adr/.test(e)?"Android":/iphone|ipad|ipod|ios/.test(e)?"iOS":"其他"},fi=e=>{try{return new oi(e||("undefined"!=typeof navigator?navigator.userAgent:"")).getResult()}catch(e){return console.warn("UAParser 解析失败:",e),{ua:"undefined"!=typeof navigator?navigator.userAgent:"",browser:{},engine:{},os:{name:gi()},device:{},cpu:{}}}},mi=()=>{const e=fi();return t=e?.os,(e=>null===e)(t)||(e=>void 0===e)(t)||""===t?gi():["iOS","Android"].includes(e?.os?.name)?(console.log("parseagernt--",e?.os),e?.os?.name):"其他";var t},wi=e=>{try{const t=fi(e);if(t?.os?.version)return t.os.version;const r=e||("undefined"!=typeof navigator?navigator.userAgent:""),i=r.match(/OS\s+(\d+)[_.](\d+)/i);if(i)return`${i[1]}.${i[2]}`;const n=r.match(/Android\s+([\d.]+)/i);return n?n[1]:null}catch(e){return console.warn("获取系统版本失败:",e),null}};class bi{constructor(e){this.config=e,this.isReporting=!1}async report(e,t){this.config.getConfig().debugSwitch&&console.log("report----------",e,t);try{const r=this.formatReportData(e,t);this.config.getConfig().customReport?await this.config.getConfig().customReport(e,r):await this.defaultReport(e,r)}catch(t){console.error("上报失败:",t),this.config.getConfig().debugSwitch&&console.error("上报失败详情:",{type:e,error:t.message,stack:t.stack})}}getDeviceInfo(){return{screen:{width:screen.width,height:screen.height,availWidth:screen.availWidth,availHeight:screen.availHeight,colorDepth:screen.colorDepth,pixelDepth:screen.pixelDepth},viewport:{width:window.innerWidth,height:window.innerHeight},connection:navigator.connection?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,memory:navigator.memory?{usedJSHeapSize:navigator.memory.usedJSHeapSize,totalJSHeapSize:navigator.memory.totalJSHeapSize,jsHeapSizeLimit:navigator.memory.jsHeapSizeLimit}:null}}formatReportData(e,t){const r={sessionId:this.config.getConfig().sessionId||"",channel:hi(),uiVer:this.config.getConfig().uiVersion,osType:mi(),osVersion:wi(),screenWidth:screen.width,screenHeight:screen.height,windowInnerWidth:window.innerWidth,windowInnerHeight:window.innerHeight,netType:navigator.connection?navigator.connection.effectiveType:"",tags:{customerId:this.config.getConfig().customerId,deviceId:this.config.getConfig().deviceId,deviceNo:this.config.getConfig().deviceNo,userId:this.config.getConfig().userId}},i=Array.isArray(t)?t:[t];return i.forEach(e=>{const t=Object.assign({},r.tags||{},e&&e.tags||{});Object.assign(e,r),Object.keys(t).length>0&&(e.tags=t)}),i}async defaultReport(e,t){const r=this.config.getReportUrl(),i=this.config.getThirdPartyConfig();r&&await this.reportToBackend(r,t),i&&Object.keys(i).length>0&&await this.reportToThirdParty(i,t)}async reportToBackend(e,t){if(!navigator.sendBeacon||this.isObjectOverSizeLimit(t,60))return this.config.getConfig().debugSwitch&&console.warn("浏览器不支持 sendBeacon,使用 axios"),await this.reportViaAxios(e,t);{const r=new FormData;r.append("events",JSON.stringify(t));const i=navigator.sendBeacon(e,r);if(this.config.getConfig().debugSwitch&&console.log("上报数据:",e,t),!i)return await this.reportViaAxios(e,r)}}async reportViaAxios(e,t){try{return(await ft.post(e,t)).data}catch(e){console.error("后端上报失败:",e)}}async reportToThirdParty(e,t){const r=[];e.baidu&&window._hmt&&r.push(this.reportToBaidu(e.baidu,t)),e.umeng&&window._um&&r.push(this.reportToUmeng(e.umeng,t)),e.sensors&&window.sensors&&r.push(this.reportToSensors(e.sensors,t)),e.tencent&&window.MTA&&r.push(this.reportToTencent(e.tencent,t)),e.custom&&r.push(this.reportToCustom(e.custom,t));try{await Promise.allSettled(r)}catch(e){console.error("第三方上报失败:",e)}}async reportToBaidu(e,t){window._hmt&&window._hmt.push(["_trackEvent",t.type,JSON.stringify(t.data)])}async reportToUmeng(e,t){window._um&&window._um.push(["track",t.type,t.data])}async reportToSensors(e,t){window.sensors&&window.sensors.track(t.type,t.data[0]||{})}async reportToTencent(e,t){window.MTA&&window.MTA.Event.stat(t.type,t.data[0]||{})}async reportToCustom(e,t){"function"==typeof e.report&&await e.report(t)}isObjectOverSizeLimit(e,t){const r=JSON.stringify(e);return(new TextEncoder).encode(r).length/1024>t}}class vi{constructor(e){this.config=e,this.reporter=new bi(e),this.errorQueue=[],this.isInitialized=!1,this.reportTimer=null,this.errorCache=new Map,this.errorCacheTimeout=5e3,this.maxCacheSize=100,this.errorFingerprint=this.createErrorFingerprint.bind(this),this.errorTimeout=null,this.resourceErrorTimeout=null,this.lastResourceError=null}createErrorFingerprint(e,t){const r=e?.message||e?.toString()||e,i=e?.stack||t.stack;return`${t.type||"unknown"}:${r}:${window.location.href}:${i?i.split("\n")[0]:""}`}isDuplicateError(e,t){const r=this.errorFingerprint(e,t),i=Date.now();if(this.cleanupErrorCache(i),this.errorCache.has(r)){if(i-this.errorCache.get(r)<this.errorCacheTimeout)return!0}if(this.errorCache.set(r,i),this.errorCache.size>this.maxCacheSize){const e=this.errorCache.keys().next().value;this.errorCache.delete(e)}return!1}cleanupErrorCache(e){for(const[t,r]of this.errorCache.entries())e-r>this.errorCacheTimeout&&this.errorCache.delete(t)}init(){if(this.isInitialized)return;const e=this.config.getConfig();(e.enableErrorTracking||e.enableResourceError)&&this.setupErrorListener(),e.enableUnhandledRejection&&this.setupUnhandledRejectionListener(),e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}setupPeriodicReport(){const e=this.config.getConfig().reportInterval;e>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(()=>{this.flushErrorQueue()},e))}setupErrorListener(){window.addEventListener("error",e=>{e.target&&e.target!==window?this.handleResourceError(e):this.handleJavaScriptError(e)},!0)}handleJavaScriptError(e){this.errorTimeout&&clearTimeout(this.errorTimeout),this.errorTimeout=setTimeout(()=>{this.handleError(e.error||e.message,{type:"javascript",filename:e.filename,lineno:e.lineno,colno:e.colno,stack:e.error?.stack})},100)}handleResourceError(e){const t=`${e.target.tagName}:${e.target.src||e.target.href}`;this.lastResourceError!==t?(this.lastResourceError=t,this.resourceErrorTimeout&&clearTimeout(this.resourceErrorTimeout),this.resourceErrorTimeout=setTimeout(()=>{this.handleError(`Resource load failed: ${e.target.src||e.target.href}`,{type:"resource",tagName:e.target.tagName,src:e.target.src,href:e.target.href}),setTimeout(()=>{this.lastResourceError=null},2e3)},100)):this.config.getConfig().debugSwitch&&console.log("忽略重复的资源加载错误:",t)}setupUnhandledRejectionListener(){let e=null,t=null;window.addEventListener("unhandledrejection",r=>{const i=`${r.reason?.message||r.reason}:${r.reason?.stack||""}`;t!==i?(t=i,e&&clearTimeout(e),e=setTimeout(()=>{this.handleError(r.reason,{type:"unhandledrejection",stack:r.reason?.stack}),setTimeout(()=>{t=null},1e3)},100)):this.config.getConfig().debugSwitch&&console.log("忽略重复的 Promise 拒绝:",r.reason)})}handleError(e,t={}){if(this.isDuplicateError(e,t))return void(this.config.getConfig().debugSwitch&&console.log("忽略重复错误:",e?.message||e));const r=this.parseStack(e),i={message:e?.message||e?.toString()||e,stack:e?.stack||t.stack,type:t.type||"unknown",timestamp:Date.now(),url:window.location.href,userAgent:navigator.userAgent,fileName:r.fileName,lineNumber:r.lineNumber,columnNumber:r.columnNumber,functionName:r.functionName,stackFrames:r.stackFrames,...t};this.errorQueue.push(i),0===this.config.getConfig().reportInterval?this.reporter.report("error",[i]):this.errorQueue.length>=this.config.getConfig().maxQueueSize&&this.flushErrorQueue()}parseStack(e){const t=e?.stack||"",r=e?.message||e?.toString()||"",i={errMessage:r,errStack:t,fileName:"",lineNumber:"",columnNumber:"",functionName:"",stackFrames:[]};if(!t)return i;try{const e=/^\s*at\s+([^(]+?)\s+\((.+?):(\d+):(\d+)\)$/,n=/^\s*at\s+(.+?):(\d+):(\d+)$/,o=/^\s*([^@]*)@(.+?):(\d+):(\d+)$/;let s=t;if(r&&t.startsWith(r))s=t.substring(r.length).replace(/^\n+/,"");else if(t.includes("\n")){const e=t.split("\n");!e[0]||e[0].trim().startsWith("at")||e[0].includes("@")||(s=e.slice(1).join("\n"))}const a=s.split("\n").filter(e=>e.trim()),c=[];for(const t of a){let r=null,i=t.match(e);i?r={functionName:i[1].trim(),fileName:i[2],lineNumber:parseInt(i[3]),columnNumber:parseInt(i[4])}:(i=t.match(n),i?r={functionName:"",fileName:i[1],lineNumber:parseInt(i[2]),columnNumber:parseInt(i[3])}:(i=t.match(o),i&&(r={functionName:i[1].trim(),fileName:i[2],lineNumber:parseInt(i[3]),columnNumber:parseInt(i[4])}))),r&&c.push(r)}if(c.length>0){const e=c[0];i.fileName=e.fileName,i.lineNumber=e.lineNumber,i.columnNumber=e.columnNumber,i.functionName=e.functionName}i.stackFrames=c}catch(e){this.config?.getConfig()?.debugSwitch&&console.warn("解析堆栈失败:",e)}return i}reportError(e,t={}){this.handleError(e,t)}flushErrorQueue(){this.errorQueue.length>0&&(this.reporter.report("error",[...this.errorQueue]),this.errorQueue=[])}destroy(){this.config.getConfig().reportInterval>0&&this.flushErrorQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.isInitialized=!1}}class yi{constructor(e){this.config=e,this.reporter=new bi(e),this.eventQueue=[],this.isInitialized=!1,this.clickListener=null,this.pageViewListener=null,this.reportTimer=null,this.originalPushState=null,this.originalReplaceState=null,this.pageHistory=[],this.currentPage=null,this.currentPageStartTime=Date.now(),this.previousPage=null,this.previousPageStayTime=0}init(){if(this.isInitialized)return;const e=this.config.getConfig();this.currentPage={url:window.location.href,title:document.title,enterTime:Date.now(),referrer:document.referrer},this.currentPageStartTime=Date.now(),e.enableClickTracking&&this.setupClickTracking(),e.enablePageViewTracking&&this.setupPageViewTracking(),window.addEventListener("beforeunload",()=>{this.handlePageUnload()}),document.addEventListener("visibilitychange",()=>{}),this.config.getConfig().reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}handlePageUnload(){if(this.currentPage){const e=Date.now()-this.currentPageStartTime;this.previousPage={...this.currentPage,stayTime:e,leaveTime:Date.now()},this.previousPageStayTime=e}}setupClickTracking(){this.clickListener=e=>{const t=e.target,r={type:"click",timestamp:Date.now(),url:window.location.href,element:{tagName:t.tagName,className:t.className,id:t.id,text:t.textContent?.substring(0,50)},position:{x:e.clientX,y:e.clientY}};this.handleEvent("click",r)},document.addEventListener("click",this.clickListener,!0)}setupPageViewTracking(){const e=this.config.getConfig().pageViewTracking||{};let t=window.location.href,r=Date.now();const i=e.debounce||100;this.pageViewListener=()=>{const e=window.location.href,n=Date.now();e===t&&n-r<i&&this.config.getConfig().debugSwitch?console.log("忽略重复的页面浏览事件:",e):(this.handlePageChange(e,n),t=e,r=n,this.handleEvent("pageview",{uuid:li(),timestamp:n,pageKey:pi(di(e),this.config.getConfig().uiVersion),pageUri:di(e),eventType:"VIEW"}))},!1!==e.listenPopstate&&window.addEventListener("popstate",this.pageViewListener),!1!==e.listenHistoryAPI&&(this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState,history.pushState=function(...e){this.originalPushState.apply(history,e),setTimeout(()=>{this.pageViewListener()},0)}.bind(this),history.replaceState=function(...e){this.originalReplaceState.apply(history,e),setTimeout(()=>{this.pageViewListener()},0)}.bind(this)),e.vueRouterMode&&(this.config.getConfig().debugSwitch&&console.log("Vue Router 模式:页面浏览追踪已优化"),this.pageViewListener())}setupPeriodicReport(){const e=this.config.getConfig().reportInterval;e>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(()=>{this.flushEventQueue()},e))}handlePageChange(e,t){if(this.currentPage){const r=t-this.currentPageStartTime;this.previousPage={...this.currentPage,stayTime:r,leaveTime:t},this.previousPageStayTime=r,this.pageHistory.push({...this.previousPage}),this.pageHistory.length>20&&this.pageHistory.shift(),this.config.getConfig().debugSwitch&&console.log(`页面切换: ${this.currentPage.url} → ${e},停留时间: ${r}ms`)}this.currentPage={url:e,title:document.title,enterTime:t,referrer:document.referrer},this.currentPageStartTime=t}getPreviousPageInfo(){return{previousPage:this.previousPage?{url:this.previousPage.url,title:this.previousPage.title,stayTime:this.previousPageStayTime}:null,previousPageStayTime:this.previousPageStayTime}}getCurrentPageStayTime(){return this.currentPageStartTime?Date.now()-this.currentPageStartTime:0}handleEvent(e,t){const r=this.getPreviousPageInfo(),i={...t,refer:di(r?.previousPage?.url),duration:r?.previousPageStayTime};this.eventQueue.push(i),this.config.getConfig().debugSwitch&&console.log("eventInfo----",i),0===this.config.getConfig().reportInterval?this.reporter.report("event",[i]):this.eventQueue.length>=this.config.getConfig().maxQueueSize&&this.flushEventQueue()}reportEvent(e,t={}){const r={uuid:li(),timestamp:Date.now(),actionKey:e,pageKey:pi(di(window.location.href),this.config.getConfig().uiVersion),pageUri:di(window.location.href),eventType:"CLICK",tags:t};this.handleEvent(e,r)}flushEventQueue(){this.eventQueue.length>0&&(this.reporter.report("event",[...this.eventQueue]),this.eventQueue=[])}destroy(){this.flushEventQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.clickListener&&(document.removeEventListener("click",this.clickListener,!0),this.clickListener=null),this.pageViewListener&&(window.removeEventListener("popstate",this.pageViewListener),this.pageViewListener=null),this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.isInitialized=!1}}class Ti{constructor(e,t=null){this.config=e,this.reporter=new bi(e),this.eventTracker=t,this.isInitialized=!1,this.pageStartTime=Date.now(),this.performanceQueue=[],this.thirdPartySDKs={},this.reportTimer=null,this.currentRoute=null,this.routeStartTime=Date.now(),this.routeHistory=[],this.vueRouter=null,this.metrics={fcp:0,lcp:0,fid:0,cls:0,ttfb:0,domLoad:0,windowLoad:0,resourceLoad:[],apiRequests:[],pageStayTime:0,previousPageUrl:"",currentPageUrl:""}}init(){if(this.isInitialized)return;const e=this.config.getConfig();e.enablePerformanceTracking&&this.setupPerformanceMonitoring(),e.enableResourceTracking&&this.setupResourceMonitoring(),e.enableApiTracking&&this.setupApiMonitoring(),e.enableInteractionTracking&&this.setupInteractionMonitoring(),this.initThirdPartySDKs(),e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}setupPeriodicReport(){const e=this.config.getConfig().reportInterval;e>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(()=>{this.flushPerformanceQueue()},e))}setupVueRouterMonitoring(e){e&&!this.vueRouter&&(this.vueRouter=e,this.currentRoute=e.currentRoute.value,e.beforeEach((e,t,r)=>{t.name&&this.handleRouteLeave(t,e),r()}),e.afterEach((e,t)=>{this.handleRouteEnter(e,t)}),e.beforeResolve((e,t,r)=>{t.name&&this.calculateRouteStayTime(t),r()}))}handleRouteLeave(e,t){const r=Date.now()-this.routeStartTime;this.recordRouteStayTime(e,r),this.currentRoute=e,this.routeStartTime=Date.now()}handleRouteEnter(e,t){this.routeStartTime=Date.now(),this.currentRoute=e,this.recordRouteEnter(e,t)}recordRouteStayTime(e,t){const r={name:e.name||"unknown",path:e.path,fullPath:e.fullPath,stayTime:t,enterTime:this.routeStartTime,leaveTime:Date.now(),params:e.params,query:e.query,meta:e.meta};this.routeHistory.push(r),this.metrics.pageStayTime=t,this.metrics.previousPageUrl=e.name,this.reportRouteStayTime(r),this.config?.config?.debugSwitch&&console.log("路由数据",r)}recordRouteEnter(e,t){e.name,e.path,e.fullPath,Date.now(),e.params,e.query,e.meta,t&&(t.name,t.path),this.metrics.currentPageUrl=e.name,this.config?.config?.debugSwitch&&console.log(`进入路由: ${e.name||e.path}`)}calculateRouteStayTime(e){if(!this.routeStartTime)return 0;return Date.now()-this.routeStartTime}reportRouteStayTime(e){const t={type:"route_stay_time",timestamp:Date.now(),route:e,user:this.config.getUser(),device:this.getDeviceInfo()};this.reporter.report("route_performance",[t])}getCurrentRoute(){return this.currentRoute}getRouteHistory(){return[...this.routeHistory]}getCurrentPageStayTime(){return this.routeStartTime?Date.now()-this.routeStartTime:0}getRoutePerformanceStats(){const e={totalRoutes:this.routeHistory.length,averageStayTime:0,routesByPath:new Map,totalStayTime:0};return this.routeHistory.length>0&&(this.routeHistory.forEach(t=>{e.totalStayTime+=t.stayTime,e.routesByPath.has(t.path)||e.routesByPath.set(t.path,{count:0,totalStayTime:0,averageStayTime:0});const r=e.routesByPath.get(t.path);r.count++,r.totalStayTime+=t.stayTime,r.averageStayTime=r.totalStayTime/r.count}),e.averageStayTime=e.totalStayTime/e.totalRoutes),e}setupPerformanceMonitoring(){"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{this.captureDOMLoadTime()}):this.captureDOMLoadTime(),window.addEventListener("load",()=>{this.captureWindowLoadTime(),this.captureWebVitals(),this.reportPerformanceMetrics()})}setupResourceMonitoring(){if("undefined"!=typeof window&&"PerformanceObserver"in window){const e=new PerformanceObserver(e=>{for(const t of e.getEntries())"resource"===t.entryType&&this.handleResourceLoad(t)});try{e.observe({entryTypes:["resource"]})}catch(e){this.setupResourceFallback()}}}setupApiMonitoring(){void 0!==window.axios&&(window.axios.interceptors.request.use(e=>(e._startTime=si(),e)),window.axios.interceptors.response.use(e=>{const t=si()-e.config._startTime;return this.handleApiRequest(e.config.url,t,e.status),e},e=>{if(e.config){const t=si()-e.config._startTime;this.handleApiRequest(e.config.url,t,"error")}throw e}))}setupInteractionMonitoring(){let e=0,t=0;const r=i=>{0===e&&(e=si(),t=e-this.metrics.fcp,this.metrics.fid=t,document.removeEventListener("click",r,!0),document.removeEventListener("keydown",r,!0),document.removeEventListener("touchstart",r,!0))};document.addEventListener("click",r,!0),document.addEventListener("keydown",r,!0),document.addEventListener("touchstart",r,!0)}captureDOMLoadTime(){this.metrics.domLoad=si()}captureWindowLoadTime(){this.metrics.windowLoad=si()}captureWebVitals(){if("undefined"!=typeof window&&"PerformanceObserver"in window)try{new PerformanceObserver(e=>{for(const t of e.getEntries())"first-contentful-paint"===t.name&&(this.metrics.fcp=t.startTime,this.config?.config?.debugSwitch&&console.log("FCP:",t.startTime))}).observe({type:"paint",buffered:!0})}catch(e){console.warn("FCP监控失败:",e)}if("undefined"!=typeof window&&"PerformanceObserver"in window)try{new PerformanceObserver(e=>{for(const t of e.getEntries())this.metrics.lcp=t.startTime}).observe({entryTypes:["largest-contentful-paint"]})}catch(e){console.warn("LCP监控失败:",e)}if("undefined"!=typeof window&&"PerformanceObserver"in window)try{let e=0;new PerformanceObserver(t=>{for(const r of t.getEntries())r.hadRecentInput||(e+=r.value);this.metrics.cls=e}).observe({entryTypes:["layout-shift"]})}catch(e){console.warn("CLS监控失败:",e)}}handleResourceLoad(e){const t={name:e.name,type:e.initiatorType,duration:e.duration,size:e.transferSize,timestamp:Date.now()};this.metrics.resourceLoad.push(t),e.duration>3e3&&this.reportSlowResource(t)}handleApiRequest(e,t,r){this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&this.eventTracker.getPreviousPageInfo();const i={interfaceUrl:"string"==typeof e?e:e.toString(),interfaceDuration:t,status:r,uuid:li(),timestamp:Date.now(),pageKey:pi(this.metrics.currentPageUrl,this.config.getConfig().uiVersion),pageUri:this.metrics.currentPageUrl,eventType:"INTERFACEDURATION",actionKey:"",refer:this.metrics.previousPageUrl,duration:this.metrics.previousPageStayTime||0};t>5e3||this.performanceQueue.push(i)}handlePageHidden(){this.calculatePageStayTime()}handlePageVisible(){this.pageStartTime=Date.now()}calculatePageStayTime(){const e=Date.now()-this.pageStartTime;this.reportPageStayTime(e)}reportPerformanceMetrics(){setTimeout(()=>{let e={};this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&(e=this.eventTracker.getPreviousPageInfo());const t=di(window.location.href);this.metrics.currentPageUrl=t,this.metrics.previousPageUrl=di(e?.previousPage?.url||"")||this.metrics.previousPageUrl;const r={eventType:"PERFORMANCE",uuid:li(),timestamp:Date.now(),pageKey:pi(di(window.location.href),this.config.getConfig().uiVersion),pageUri:di(window.location.href),refer:di(e?.previousPage?.url||""),duration:e?.previousPageStayTime||0,metrics:this.metrics};this.performanceQueue.push(r),this.config.getConfig().debugSwitch&&console.log("Performance Data:",r),0===this.config.getConfig().reportInterval?this.reporter.report("performance",[r]):this.performanceQueue.length>=this.config.getConfig().maxQueueSize&&this.flushPerformanceQueue()},100)}reportSlowResource(e){this.reporter.report("slow_resource",[e])}reportSlowApi(e){this.reporter.report("slow_api",[e])}reportPageStayTime(e){const t={type:"page_stay",url:window.location.href,stayTime:e,timestamp:Date.now()};this.reporter.report("page_stay",[t])}getDeviceInfo(){return{screen:{width:screen.width,height:screen.height,availWidth:screen.availWidth,availHeight:screen.availHeight,colorDepth:screen.colorDepth,pixelDepth:screen.pixelDepth},viewport:{width:window.innerWidth,height:window.innerHeight},connection:navigator.connection?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,memory:navigator.memory?{usedJSHeapSize:navigator.memory.usedJSHeapSize,totalJSHeapSize:navigator.memory.totalJSHeapSize,jsHeapSizeLimit:navigator.memory.jsHeapSizeLimit}:null}}initThirdPartySDKs(){const e=this.config.getThirdPartyConfig();e.baidu&&window._hmt&&(this.thirdPartySDKs.baidu=window._hmt),e.umeng&&window._um&&(this.thirdPartySDKs.umeng=window._um),e.sensors&&window.sensors&&(this.thirdPartySDKs.sensors=window.sensors),e.tencent&&window.MTA&&(this.thirdPartySDKs.tencent=window.MTA)}flushPerformanceQueue(){this.performanceQueue.length>0&&(this.reporter.report("performance",[...this.performanceQueue]),this.performanceQueue=[])}reportPerformance(e={}){const t={type:"custom_performance",timestamp:Date.now(),url:window.location.href,metrics:e,user:this.config.getUser()};this.reporter.report("performance",[t])}getCurrentMetrics(){return{...this.metrics}}destroy(){this.config.getConfig().reportInterval>0&&this.flushPerformanceQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.isInitialized=!1}}class ki{constructor(e){this.config=e,this.reporter=new bi(e),this.isInitialized=!1,this.behaviorQueue=[],this.sessionId=this.generateSessionId(),this.pageStartTime=Date.now(),this.scrollDepth=0,this.mouseMovements=[],this.keyStrokes=[],this.formInteractions=[],this.timeTracker=null,this.reportTimer=null,this.originalPushState=null,this.originalReplaceState=null,this.behaviors={pageViews:[],clicks:[],scrolls:[],formSubmissions:[],navigation:[],timeOnPage:0}}init(){if(this.isInitialized)return;const e=this.config.getConfig();e.enableUserInteractionTracking&&this.setupUserInteractionTracking(),e.enableFormTracking&&this.setupFormTracking(),e.enableScrollTracking&&this.setupScrollTracking(),e.enableMouseTracking&&this.setupMouseTracking(),e.enableKeyboardTracking&&this.setupKeyboardTracking(),this.setupTimeTracking(),e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}setupPeriodicReport(){const e=this.config.getConfig().reportInterval;e>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(()=>{this.flushBehaviorQueue()},e))}setupUserInteractionTracking(){document.addEventListener("click",e=>{this.trackClick(e)},!0),document.addEventListener("dblclick",e=>{this.trackDoubleClick(e)},!0),document.addEventListener("contextmenu",e=>{this.trackRightClick(e)},!0),"ontouchstart"in window&&document.addEventListener("touchstart",e=>{this.trackTouch(e)},!0)}setupFormTracking(){document.addEventListener("submit",e=>{this.trackFormSubmission(e)},!0),document.addEventListener("change",e=>{"INPUT"!==e.target.tagName&&"SELECT"!==e.target.tagName&&"TEXTAREA"!==e.target.tagName||this.trackFormFieldChange(e)},!0),document.addEventListener("focus",e=>{"INPUT"!==e.target.tagName&&"SELECT"!==e.target.tagName&&"TEXTAREA"!==e.target.tagName||this.trackFormFieldFocus(e)},!0),document.addEventListener("blur",e=>{"INPUT"!==e.target.tagName&&"SELECT"!==e.target.tagName&&"TEXTAREA"!==e.target.tagName||this.trackFormFieldBlur(e)},!0)}setupScrollTracking(){let e;document.addEventListener("scroll",()=>{clearTimeout(e),e=setTimeout(()=>{const e=window.pageYOffset||document.documentElement.scrollTop,t=document.documentElement.scrollHeight,r=document.documentElement.clientHeight,i=Math.round(e/(t-r)*100);i>this.scrollDepth&&(this.scrollDepth=i,this.trackScroll(i,e))},100)},{passive:!0})}setupMouseTracking(){let e,t=[];document.addEventListener("mousemove",r=>{clearTimeout(e),t.push({x:r.clientX,y:r.clientY,timestamp:Date.now()}),t.length>100&&t.shift(),e=setTimeout(()=>{t.length>10&&(this.trackMouseMovement(t),t=[])},1e3)},{passive:!0})}setupKeyboardTracking(){document.addEventListener("keydown",e=>{"password"!==e.target.type&&this.trackKeyStroke(e)},!0)}setupTimeTracking(){this.timeTracker&&clearInterval(this.timeTracker),this.timeTracker=setInterval(()=>{this.behaviors.timeOnPage+=1},1e3),window.addEventListener("beforeunload",()=>{this.reportTimeOnPage()})}trackReferrer(){const e=document.referrer;if(e){const t={type:"referrer",url:e,domain:this.extractDomain(e),timestamp:Date.now()};this.config.getConfig().debugSwitch&&console.log("referrerData----",t),this.behaviors.navigation.push(t),this.reportBehavior("referrer",t)}}trackPageView(){const e={type:"pageview",url:window.location.href,title:document.title,timestamp:Date.now(),sessionId:this.sessionId,referrer:document.referrer};this.behaviors.pageViews.push(e),this.reportBehavior("pageview",e),this.pageStartTime=Date.now(),this.scrollDepth=0}trackClick(e){const t={type:"click",element:{tagName:e.target.tagName,className:e.target.className,id:e.target.id,text:e.target.textContent?.substring(0,50),href:e.target.href},position:{x:e.clientX,y:e.clientY,pageX:e.pageX,pageY:e.pageY},timestamp:Date.now(),sessionId:this.sessionId};this.behaviors.clicks.push(t),this.reportBehavior("click",t)}trackDoubleClick(e){const t={type:"doubleclick",element:{tagName:e.target.tagName,className:e.target.className,id:e.target.id},position:{x:e.clientX,y:e.clientY},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("doubleclick",t)}trackRightClick(e){const t={type:"rightclick",element:{tagName:e.target.tagName,className:e.target.className,id:e.target.id},position:{x:e.clientX,y:e.clientY},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("rightclick",t)}trackTouch(e){const t={type:"touch",touches:Array.from(e.touches).map(e=>({x:e.clientX,y:e.clientY,identifier:e.identifier})),timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("touch",t)}trackFormSubmission(e){const t={type:"form_submission",form:{action:e.target.action,method:e.target.method,id:e.target.id,className:e.target.className},fields:this.getFormFields(e.target),timestamp:Date.now(),sessionId:this.sessionId};this.behaviors.formSubmissions.push(t),this.reportBehavior("form_submission",t)}trackFormFieldChange(e){const t={type:"form_field_change",field:{name:e.target.name,type:e.target.type,value:"password"===e.target.type?"***":e.target.value,id:e.target.id},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("form_field_change",t)}trackFormFieldFocus(e){const t={type:"form_field_focus",field:{name:e.target.name,type:e.target.type,id:e.target.id},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("form_field_focus",t)}trackFormFieldBlur(e){const t={type:"form_field_blur",field:{name:e.target.name,type:e.target.type,id:e.target.id},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("form_field_blur",t)}trackScroll(e,t){const r={type:"scroll",depth:e,scrollTop:t,timestamp:Date.now(),sessionId:this.sessionId};this.config.getConfig().debugSwitch&&console.log("scrollData---",r),this.reportBehavior("scroll",r)}trackMouseMovement(e){const t={type:"mouse_movement",movements:e,timestamp:Date.now(),sessionId:this.sessionId};this.config.getConfig().debugSwitch&&console.log("mouse_movement---",t),this.reportBehavior("mouse_movement",t)}trackKeyStroke(e){const t={type:"keystroke",key:e.key,code:e.code,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,metaKey:e.metaKey,timestamp:Date.now(),sessionId:this.sessionId};this.config.getConfig().debugSwitch&&console.log("keystroke---",t),this.reportBehavior("keystroke",t)}reportBehavior(e,t){const r={type:e,data:t,user:this.config.getUser(),config:{appId:this.config.getConfig().appId,appVersion:this.config.getConfig().appVersion}};this.behaviorQueue.push(r),0===this.config.getConfig().reportInterval?this.reporter.report("behavior",[r]):this.behaviorQueue.length>=this.config.getConfig().maxQueueSize&&this.flushBehaviorQueue()}reportCustomBehavior(e,t={}){const r={type:"custom_behavior",eventName:e,...t,timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("custom_behavior",r)}flushBehaviorQueue(){this.behaviorQueue.length>0&&(this.reporter.report("behavior",[...this.behaviorQueue]),this.behaviorQueue=[])}getFormFields(e){const t=[],r=e.elements;for(let e=0;e<r.length;e++){const i=r[e];i.name&&t.push({name:i.name,type:i.type,value:"password"===i.type?"***":i.value})}return t}extractDomain(e){try{return new URL(e).hostname}catch(t){return e}}generateSessionId(){return"session_"+Date.now()+"_"+Math.random().toString(36).substr(2,9)}getCurrentBehaviors(){return{...this.behaviors}}getSessionId(){return this.sessionId}destroy(){this.config.getConfig().reportInterval>0&&this.flushBehaviorQueue(),this.reportTimeOnPage(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.timeTracker&&(clearInterval(this.timeTracker),this.timeTracker=null),this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.isInitialized=!1}}class Si{constructor(e,t=null){this.config=e,this.reporter=new bi(e),this.eventTracker=t,this.isInitialized=!1,this.observer=null,this.trackedElements=new Map,this.exposureQueue=[],this.reportTimer=null,this.scrollTimer=null,this.useFallback=!1,this.lastReportTime=new Map,this.debounceTime=500,this.defaultOptions={threshold:.5,rootMargin:"0px",scrollThrottle:100}}init(){if(this.isInitialized)return;this.isIntersectionObserverSupported()?(this.createObserver(),this.useFallback=!1,this.config.getConfig().debugSwitch&&console.log("曝光追踪器初始化完成(使用 Intersection Observer API)")):(this.setupFallbackTracking(),this.useFallback=!0,this.config.getConfig().debugSwitch&&console.warn("浏览器不支持 Intersection Observer,使用降级方案(滚动事件追踪)"));const e=this.config.getConfig();e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0,e.debugSwitch&&console.log("曝光追踪器初始化完成")}isIntersectionObserverSupported(){return"undefined"!=typeof window&&"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype}createObserver(){const e={root:null,rootMargin:this.defaultOptions.rootMargin,threshold:[0,.5,1]};this.observer=new IntersectionObserver(e=>{e.forEach(e=>{this.handleIntersection(e)})},e)}handleIntersection(e){const t=e.target,r=this.getElementId(t),i=this.getElementConfig(t),n=i.threshold||this.defaultOptions.threshold,o=e.intersectionRatio;if(o>=n){this.trackedElements.has(r)||this.trackedElements.set(r,{element:t,config:i});const e=this.trackedElements.get(r),n=Date.now(),s=n-(this.lastReportTime.get(r)||0);s>=this.debounceTime?(this.lastReportTime.set(r,n),this.triggerExposure(t,r,e,o,0)):this.config.getConfig().debugSwitch&&console.log(`元素 ${r} 跳过上报(去重),距离上次上报 ${s}ms,需要间隔 ${this.debounceTime}ms`)}}triggerExposure(e,t,r,i,n){const o=this.extractProductInfo(e,r.config);let s={};this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&(s=this.eventTracker.getPreviousPageInfo());const a=this.getElementConfig(e),c={uuid:li(),timestamp:Date.now(),pageKey:pi(di(window.location.href),this.config.getConfig().uiVersion),pageUri:di(window.location.href),eventType:"EXPOSE",actionKey:"",refer:di(s?.previousPage?.url),duration:s?.previousPageStayTime,viewParam:{...o},tags:{...a}};this.exposureQueue.push(c);0===this.config.getConfig().reportInterval?Promise.resolve().then(()=>{this.reporter.report("exposure",this.getReportData([c])).catch(e=>{console.error("曝光上报失败:",e),this.config.getConfig().debugSwitch&&console.error("曝光上报失败详情:",e)})}):this.exposureQueue.length>=this.config.getConfig().maxQueueSize&&this.flushExposureQueue()}setupFallbackTracking(){this.observer={observe:e=>{const t=this.getElementId(e);this.trackedElements.has(t)},unobserve:e=>{const t=this.getElementId(e);this.trackedElements.delete(t)},disconnect:()=>{this.trackedElements.clear(),this.removeScrollListener()}},this.addScrollListener(),setTimeout(()=>{this.checkAllElementsVisibility()},100)}addScrollListener(){if(this.scrollHandler)return;let e=0;const t=this.defaultOptions.scrollThrottle;this.scrollHandler=()=>{const r=Date.now();r-e>=t&&(e=r,this.checkAllElementsVisibility())},window.addEventListener("scroll",this.scrollHandler,{passive:!0}),window.addEventListener("touchmove",this.scrollHandler,{passive:!0}),window.addEventListener("resize",this.scrollHandler,{passive:!0})}removeScrollListener(){this.scrollHandler&&(window.removeEventListener("scroll",this.scrollHandler),window.removeEventListener("touchmove",this.scrollHandler),window.removeEventListener("resize",this.scrollHandler),this.scrollHandler=null)}checkAllElementsVisibility(){if(!this.useFallback)return;const e=window.innerHeight,t=window.innerWidth;this.trackedElements.forEach((r,i)=>{const n=r.element;if(!n||!document.contains(n))return void this.trackedElements.delete(i);const o=r.config.threshold||this.defaultOptions.threshold,s=this.calculateVisibleRatio(n,0,e,0,t);if(s>=o){const e=Date.now(),t=e-(this.lastReportTime.get(i)||0);t>=this.debounceTime?(this.lastReportTime.set(i,e),this.triggerExposure(n,i,r,s,0),this.config.getConfig().debugSwitch&&console.log(`元素 ${i} 进入可视区域,可见比例: ${(100*s).toFixed(2)}%,立即触发曝光`)):this.config.getConfig().debugSwitch&&console.log(`元素 ${i} 跳过上报(去重),距离上次上报 ${t}ms,需要间隔 ${this.debounceTime}ms`)}})}calculateVisibleRatio(e,t,r,i,n){const o=e.getBoundingClientRect();if(o.bottom<t||o.top>r||o.right<i||o.left>n)return 0;const s=Math.max(o.top,t),a=Math.min(o.bottom,r),c=Math.max(o.left,i),u=Math.min(o.right,n),l=Math.max(0,u-c)*Math.max(0,a-s),h=o.width*o.height;return 0===h?0:l/h}trackProduct(e,t={}){if(!this.isInitialized)return void console.warn("曝光追踪器未初始化");if(!e||"object"!=typeof e||!e.nodeType)return void console.warn("无效的元素,无法追踪");const r=this.getElementId(e),i={...t};this.trackedElements.has(r)&&this.untrackProduct(e),e.setAttribute("data-exposure-tracked","true"),e.setAttribute("data-exposure-config",JSON.stringify(i)),this.trackedElements.set(r,{element:e,config:i}),this.observer&&this.observer.observe(e),this.useFallback&&setTimeout(()=>{this.checkAllElementsVisibility()},0),this.config.getConfig().debugSwitch}trackProducts(e,t={}){if(!this.isInitialized||!this.observer)return void console.warn("曝光追踪器未初始化");let r=[];if("string"==typeof e)r=Array.from(document.querySelectorAll(e));else{if(!Array.isArray(e))return void console.warn("无效的选择器或元素列表");r=e}r.forEach((e,r)=>{const i=Array.isArray(t)?t[r]||{}:t;this.trackProduct(e,i)}),this.config.getConfig().debugSwitch}untrackProduct(e){if(!this.observer)return;const t=this.getElementId(e);this.observer.unobserve&&this.observer.unobserve(e),this.trackedElements.delete(t),this.lastReportTime.delete(t),e&&e.removeAttribute&&(e.removeAttribute("data-exposure-tracked"),e.removeAttribute("data-exposure-config")),this.config.getConfig().debugSwitch&&console.log(`取消追踪商品元素: ${t}`)}untrackAll(){this.observer&&(this.useFallback||this.trackedElements.forEach((e,t)=>{e.element&&this.observer.unobserve&&this.observer.unobserve(e.element)}),this.trackedElements.clear())}getElementId(e){if(e.getAttribute("data-exposure-id"))return e.getAttribute("data-exposure-id");if(e._exposureUniqueId)return e._exposureUniqueId;if(e.id)return`id_${e.id}`;if(e.getAttribute("data-product-id"))return`product_${e.getAttribute("data-product-id")}`;const t=li();return e._exposureUniqueId=t,t}getElementConfig(e){const t=e.getAttribute("data-exposure-config");if(t)try{return JSON.parse(t)}catch(e){return{}}return{}}extractProductInfo(e,t={}){const r={productId:t.productId||e.getAttribute("data-product-id")||null,productName:t.productName||e.getAttribute("data-product-name")||null,productPrice:t.productPrice||e.getAttribute("data-product-price")||null,productCategory:t.productCategory||e.getAttribute("data-product-category")||null,productImage:t.productImage||e.getAttribute("data-product-image")||null};return Object.keys(r).forEach(e=>{null===r[e]&&delete r[e]}),r}setupPeriodicReport(){const e=this.config.getConfig().reportInterval;e>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(()=>{this.flushExposureQueue()},e))}getReportData(e){if(e.length>0){const r=e[0];return r.tags&&(r.tags.exposeContent=(t=e.map(e=>e.viewParam?.productId).filter(Boolean),Array.from(new Set(t)))),delete r.viewParam,r}var t;return null}flushExposureQueue(){if(this.exposureQueue.length>0){const e=[...this.exposureQueue];this.exposureQueue=[],Promise.resolve().then(()=>{this.reporter.report("exposure",this.getReportData(e)).catch(e=>{console.error("批量曝光上报失败:",e),this.config.getConfig().debugSwitch&&console.error("批量曝光上报失败详情:",e)})})}}reportExposure(e={}){let t={};this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&(t=this.eventTracker.getPreviousPageInfo());const r={uuid:li(),timestamp:Date.now(),pageKey:pi(di(window.location.href),this.config.getConfig().uiVersion),pageUri:di(window.location.href),eventType:"EXPOSE",actionKey:"",refer:di(t?.previousPage?.url),duration:t?.previousPageStayTime,viewParam:{...e},tags:{...config}};Promise.resolve().then(()=>{this.reporter.report("exposure",this.getReportData(r)).catch(e=>{console.error("手动曝光上报失败:",e),this.config.getConfig().debugSwitch&&console.error("手动曝光上报失败详情:",e)})})}getTrackedElements(){return Array.from(this.trackedElements.keys())}getExposureQueue(){return[...this.exposureQueue]}destroy(){this.flushExposureQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.untrackAll(),this.observer&&(this.observer.disconnect&&this.observer.disconnect(),this.observer=null),this.removeScrollListener(),this.trackedElements.clear(),this.exposureQueue=[],this.lastReportTime.clear(),this.useFallback=!1,this.isInitialized=!1,this.config.getConfig().debugSwitch&&console.log("曝光追踪器已销毁")}}class Ei{constructor(e){this.config=e,this.integratedSDKs={},this.isInitialized=!1}init(){if(this.isInitialized)return;const e=this.config.getThirdPartyConfig();e.baidu&&e.baidu.enabled&&this.initBaiduAnalytics(e.baidu),e.umeng&&e.umeng.enabled&&this.initUmengAnalytics(e.umeng),e.sensors&&e.sensors.enabled&&this.initSensorsAnalytics(e.sensors),e.tencent&&e.tencent.enabled&&this.initTencentAnalytics(e.tencent),e.google&&e.google.enabled&&this.initGoogleAnalytics(e.google),e.custom&&e.custom.enabled&&this.initCustomAnalytics(e.custom),this.isInitialized=!0}initBaiduAnalytics(e){try{window._hmt?(this.integratedSDKs.baidu={name:"baidu",instance:window._hmt,config:e},e.siteId&&window._hmt.push(["_setAccount",e.siteId]),!1!==e.autoPageview&&window._hmt.push(["_trackPageview"]),console.log("百度统计集成成功")):console.warn("百度统计未加载,请检查脚本是否正确引入")}catch(e){console.error("百度统计集成失败:",e)}}initUmengAnalytics(e){try{window._um?(this.integratedSDKs.umeng={name:"umeng",instance:window._um,config:e},e.siteId&&window._um.push(["setAccount",e.siteId]),!1!==e.autoPageview&&window._um.push(["trackPageview"]),console.log("友盟统计集成成功")):console.warn("友盟统计未加载,请检查脚本是否正确引入")}catch(e){console.error("友盟统计集成失败:",e)}}initSensorsAnalytics(e){try{window.sensors?(this.integratedSDKs.sensors={name:"sensors",instance:window.sensors,config:e},e.serverUrl&&window.sensors.setServerUrl(e.serverUrl),e.siteId&&window.sensors.setSiteId(e.siteId),!1!==e.autoPageview&&window.sensors.trackPageview(),console.log("神策数据集成成功")):console.warn("神策数据未加载,请检查脚本是否正确引入")}catch(e){console.error("神策数据集成失败:",e)}}initTencentAnalytics(e){try{window.MTA?(this.integratedSDKs.tencent={name:"tencent",instance:window.MTA,config:e},e.appId&&window.MTA.setAppId(e.appId),!1!==e.autoPageview&&window.MTA.trackPageview(),console.log("腾讯云分析集成成功")):console.warn("腾讯云分析未加载,请检查脚本是否正确引入")}catch(e){console.error("腾讯云分析集成失败:",e)}}initGoogleAnalytics(e){try{window.gtag?(this.integratedSDKs.google={name:"google",instance:window.gtag,config:e},e.measurementId&&window.gtag("config",e.measurementId,{page_title:document.title,page_location:window.location.href}),console.log("Google Analytics集成成功")):console.warn("Google Analytics未加载,请检查脚本是否正确引入")}catch(e){console.error("Google Analytics集成失败:",e)}}initCustomAnalytics(e){try{if("function"==typeof e.init){const t=e.init(e);this.integratedSDKs.custom={name:"custom",instance:t,config:e},console.log("自定义第三方集成成功")}else console.warn("自定义第三方配置缺少init函数")}catch(e){console.error("自定义第三方集成失败:",e)}}reportEvent(e,t={}){Object.values(this.integratedSDKs).forEach(r=>{try{this.reportToSDK(r,e,t)}catch(e){console.error(`上报事件到${r.name}失败:`,e)}})}reportPageView(e={}){Object.values(this.integratedSDKs).forEach(t=>{try{this.reportPageViewToSDK(t,e)}catch(e){console.error(`上报页面浏览到${t.name}失败:`,e)}})}reportUser(e={}){Object.values(this.integratedSDKs).forEach(t=>{try{this.reportUserToSDK(t,e)}catch(e){console.error(`上报用户信息到${t.name}失败:`,e)}})}reportPerformance(e={}){Object.values(this.integratedSDKs).forEach(t=>{try{this.reportPerformanceToSDK(t,e)}catch(e){console.error(`上报性能指标到${t.name}失败:`,e)}})}reportToSDK(e,t,r){switch(e.name){case"baidu":e.instance&&e.instance.push&&e.instance.push(["_trackEvent",t,JSON.stringify(r)]);break;case"umeng":e.instance&&e.instance.push&&e.instance.push(["track",t,r]);break;case"sensors":e.instance&&e.instance.track&&e.instance.track(t,r);break;case"tencent":e.instance&&e.instance.Event&&e.instance.Event.stat&&e.instance.Event.stat(t,r);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("event",t,r);break;case"custom":e.instance&&"function"==typeof e.instance.track&&e.instance.track(t,r);break;default:console.warn(`未知的SDK类型: ${e.name}`)}}reportPageViewToSDK(e,t){switch(e.name){case"baidu":e.instance&&e.instance.push&&e.instance.push(["_trackPageview",t.url||window.location.href]);break;case"umeng":e.instance&&e.instance.push&&e.instance.push(["trackPageview",t.url||window.location.href]);break;case"sensors":e.instance&&e.instance.trackPageview&&e.instance.trackPageview(t);break;case"tencent":e.instance&&e.instance.trackPageview&&e.instance.trackPageview(t.url||window.location.href);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("config",e.config.measurementId,{page_title:t.title||document.title,page_location:t.url||window.location.href});break;case"custom":e.instance&&"function"==typeof e.instance.trackPageview&&e.instance.trackPageview(t);break;default:console.warn(`未知的SDK类型: ${e.name}`)}}reportUserToSDK(e,t){switch(e.name){case"baidu":e.instance&&e.instance.push&&(e.instance.push(["_setUserTag","userId",t.userId]),e.instance.push(["_setUserTag","userType",t.userType]));break;case"umeng":e.instance&&e.instance.push&&(e.instance.push(["setUserTag","userId",t.userId]),e.instance.push(["setUserTag","userType",t.userType]));break;case"sensors":e.instance&&e.instance.setProfile&&e.instance.setProfile(t);break;case"tencent":e.instance&&e.instance.setUserInfo&&e.instance.setUserInfo(t);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("set","user_id",t.userId);break;case"custom":e.instance&&"function"==typeof e.instance.setUser&&e.instance.setUser(t);break;default:console.warn(`未知的SDK类型: ${e.name}`)}}reportPerformanceToSDK(e,t){switch(e.name){case"baidu":e.instance&&e.instance.push&&e.instance.push(["_trackEvent","performance",JSON.stringify(t)]);break;case"umeng":e.instance&&e.instance.push&&e.instance.push(["track","performance",t]);break;case"sensors":e.instance&&e.instance.track&&e.instance.track("performance",t);break;case"tencent":e.instance&&e.instance.Event&&e.instance.Event.stat&&e.instance.Event.stat("performance",t);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("event","performance",t);break;case"custom":e.instance&&"function"==typeof e.instance.trackPerformance&&e.instance.trackPerformance(t);break;default:console.warn(`未知的SDK类型: ${e.name}`)}}isSDKIntegrated(e){return!!this.integratedSDKs[e]}getIntegratedSDKs(){return Object.keys(this.integratedSDKs)}getSDKInstance(e){return this.integratedSDKs[e]?.instance||null}destroy(){Object.values(this.integratedSDKs).forEach(e=>{try{e.instance&&"function"==typeof e.instance.destroy&&e.instance.destroy()}catch(t){console.error(`销毁${e.name}失败:`,t)}}),this.integratedSDKs={},this.isInitialized=!1}}class Pi{constructor(e={}){this.config={appId:e.appId||"",appVersion:e.appVersion||"1.0.0",environment:e.environment||"production",debugSwitch:!0===e.debugSwitch,customerId:e.customerId||"",userId:e.userId||"",deviceNo:e.deviceNo||"",deviceId:e.userId||"",uiVersion:e.uiVersion||"",sessionId:e.sessionId||ci(),reportUrl:e.reportUrl||"",reportInterval:e.reportInterval||5e3,maxQueueSize:e.maxQueueSize||100,enableErrorTracking:!1!==e.enableErrorTracking,enableUnhandledRejection:!1!==e.enableUnhandledRejection,enableResourceError:!1!==e.enableResourceError,enableEventTracking:!1!==e.enableEventTracking,enableClickTracking:!1!==e.enableClickTracking,enablePageViewTracking:!1!==e.enablePageViewTracking,enablePerformanceTracking:!1!==e.enablePerformanceTracking,enableResourceTracking:!1!==e.enableResourceTracking,enableApiTracking:!1!==e.enableApiTracking,enableInteractionTracking:!1!==e.enableInteractionTracking,enableRouteTracking:!1!==e.enableRouteTracking,enableUserInteractionTracking:!1!==e.enableUserInteractionTracking,enableFormTracking:!1!==e.enableFormTracking,enableScrollTracking:!1!==e.enableScrollTracking,enableMouseTracking:!1!==e.enableMouseTracking,enableKeyboardTracking:!1!==e.enableKeyboardTracking,thirdPartyConfig:e.thirdPartyConfig||{},user:e.user||null,customReport:e.customReport||null},this.user=null}updateConfig(e){this.config={...this.config,...e}}setUser(e){this.user=e}getConfig(){return this.config}getUser(){return this.user}getReportUrl(){return this.config.reportUrl}getThirdPartyConfig(){return this.config.thirdPartyConfig}isErrorTrackingEnabled(){return this.config.enableErrorTracking}isEventTrackingEnabled(){return this.config.enableEventTracking}getConfigSessionId(){return this.config.sessionId}}"undefined"==typeof window||window?.axios||(window.axios=ft);class xi{constructor(e={}){this.config=new Pi(e),this.errorTracker=new vi(this.config),this.eventTracker=new yi(this.config),this.performanceTracker=new Ti(this.config,this.eventTracker),this.userBehaviorTracker=new ki(this.config),this.exposureTracker=new Si(this.config,this.eventTracker),this.thirdPartyIntegrator=new Ei(this.config),this.init()}init(){this.eventTracker.init(),this.exposureTracker.init(),this.thirdPartyIntegrator.init(),console.log("Frontend SDK 初始化完成")}reportError(e,t={}){this.errorTracker.reportError(e,t)}reportEvent(e,t={}){this.eventTracker.reportEvent(e,t)}getPreviousPageInfo(){return this.eventTracker.getPreviousPageInfo()}getCurrentPageStayTime(){return this.eventTracker.getCurrentPageStayTime()}getPageHistory(){return this.eventTracker.pageHistory||[]}reportPerformance(e={}){this.performanceTracker.reportPerformance(e)}reportBehavior(e,t={}){this.userBehaviorTracker.reportCustomBehavior(e,t)}setUser(e){this.config.setUser(e),this.thirdPartyIntegrator.reportUser(e)}setConfig(e){this.config.updateConfig(e)}getPerformanceMetrics(){return this.performanceTracker.getCurrentMetrics()}getBehaviorData(){return this.userBehaviorTracker.getCurrentBehaviors()}getSessionId(){return this.config.getConfigSessionId()}isThirdPartySDKIntegrated(e){return this.thirdPartyIntegrator.isSDKIntegrated(e)}getIntegratedThirdPartySDKs(){return this.thirdPartyIntegrator.getIntegratedSDKs()}setupVueRouterMonitoring(e){e?this.config.config.enableRouteTracking&&this.performanceTracker.setupVueRouterMonitoring(e):console.warn("Vue Router 实例未提供")}getCurrentRoute(){return this.performanceTracker.getCurrentRoute()}getRouteHistory(){return this.performanceTracker.getRouteHistory()}getCurrentRouteStayTime(){return this.performanceTracker.getCurrentPageStayTime()}getRoutePerformanceStats(){return this.performanceTracker.getRoutePerformanceStats()}trackProduct(e,t={}){return this.exposureTracker.trackProduct(e,t)}trackProducts(e,t={}){return this.exposureTracker.trackProducts(e,t)}untrackProduct(e){return this.exposureTracker.untrackProduct(e)}untrackAllProducts(){return this.exposureTracker.untrackAll()}reportExposure(e={}){return this.exposureTracker.reportExposure(e)}getTrackedProducts(){return this.exposureTracker.getTrackedElements()}getExposureQueue(){return this.exposureTracker.getExposureQueue()}flushExposureQueue(){return this.exposureTracker.flushExposureQueue()}destroy(){this.errorTracker.destroy(),this.eventTracker.destroy(),this.performanceTracker.destroy(),this.userBehaviorTracker.destroy(),this.exposureTracker.destroy(),this.thirdPartyIntegrator.destroy(),console.log("Frontend SDK 已销毁")}}export{xi as default,si as performanceNow};
1
+ function e(e,t){this.v=e,this.k=t}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function r(e){if(Array.isArray(e))return e}function n(t){var r={},n=!1;function i(r,i){return n=!0,i=new Promise(function(e){e(t[r](i))}),{done:!1,value:new e(i,1)}}return r["undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator"]=function(){return this},r.next=function(e){return n?(n=!1,e):i("next",e)},"function"==typeof t.throw&&(r.throw=function(e){if(n)throw n=!1,e;return i("throw",e)}),"function"==typeof t.return&&(r.return=function(e){return n?(n=!1,e):i("return",e)}),r}function i(e){var t,r,n,i=2;for("undefined"!=typeof Symbol&&(r=Symbol.asyncIterator,n=Symbol.iterator);i--;){if(r&&null!=(t=e[r]))return t.call(e);if(n&&null!=(t=e[n]))return new o(t.call(e));r="@@asyncIterator",n="@@iterator"}throw new TypeError("Object is not async iterable")}function o(e){function t(e){if(Object(e)!==e)return Promise.reject(new TypeError(e+" is not an object."));var t=e.done;return Promise.resolve(e.value).then(function(e){return{value:e,done:t}})}return o=function(e){this.s=e,this.n=e.next},o.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var r=this.s.return;return void 0===r?Promise.resolve({value:e,done:!0}):t(r.apply(this.s,arguments))},throw:function(e){var r=this.s.return;return void 0===r?Promise.reject(e):t(r.apply(this.s,arguments))}},new o(e)}function a(e,t,r,n,i,o,a){try{var s=e[o](a),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,i)}function s(e){return function(){var t=this,r=arguments;return new Promise(function(n,i){var o=e.apply(t,r);function s(e){a(o,n,i,s,u,"next",e)}function u(e){a(o,n,i,s,u,"throw",e)}s(void 0)})}}function u(t){return new e(t,0)}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,S(n.key),n)}}function f(e,t,r){return t&&l(e.prototype,t),r&&l(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function h(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=P(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}function d(e,t,r){return(t=S(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function g(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach(function(t){d(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function w(){
2
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
3
+ var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",i=r.toStringTag||"@@toStringTag";function o(r,n,i,o){var u=n&&n.prototype instanceof s?n:s,c=Object.create(u.prototype);return y(c,"_invoke",function(r,n,i){var o,s,u,c=0,l=i||[],f=!1,h={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,r){return o=t,s=0,u=e,h.n=r,a}};function d(r,n){for(s=r,u=n,t=0;!f&&c&&!i&&t<l.length;t++){var i,o=l[t],d=h.p,p=o[2];r>3?(i=p===n)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=d&&((i=r<2&&d<o[1])?(s=0,h.v=n,h.n=o[1]):d<p&&(i=r<3||o[0]>n||n>p)&&(o[4]=r,o[5]=n,h.n=p,s=0))}if(i||r>1)return a;throw f=!0,n}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,p),s=l,u=p;(t=s<2?e:u)||!f;){o||(s?s<3?(s>1&&(h.n=-1),d(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(f=h.n<0)?u:r.call(n,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:f}}}(r,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][n]?t(t([][n]())):(y(t={},n,function(){return this}),t),f=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,y(e,i,"GeneratorFunction")),e.prototype=Object.create(f),e}return u.prototype=c,y(f,"constructor",c),y(c,"constructor",u),u.displayName="GeneratorFunction",y(c,i,"GeneratorFunction"),y(f),y(f,i,"Generator"),y(f,n,function(){return this}),y(f,"toString",function(){return"[object Generator]"}),(w=function(){return{w:o,m:h}})()}function y(e,t,r,n){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}y=function(e,t,r,n){function o(t,r){y(e,t,function(e){return this._invoke(t,r,e)})}t?i?i(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(o("next",0),o("throw",1),o("return",2))},y(e,t,r,n)}function b(e){if(null!=e){var t=e["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],r=0;if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length))return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}}throw new TypeError(typeof e+" is not iterable")}function k(e,t){return r(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,o,a,s=[],u=!0,c=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=o.call(r)).done)&&(s.push(n.value),s.length!==t);u=!0);}catch(e){c=!0,i=e}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}}(e,t)||P(e,t)||g()}function T(e){return function(e){if(Array.isArray(e))return t(e)}(e)||p(e)||P(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function E(e){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E(e)}function P(e,r){if(e){if("string"==typeof e)return t(e,r);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,r):void 0}}function x(e){return function(){return new R(e.apply(this,arguments))}}function R(t){var r,n;function i(r,n){try{var a=t[r](n),s=a.value,u=s instanceof e;Promise.resolve(u?s.v:s).then(function(e){if(u){var n="return"===r?"return":"next";if(!s.k||e.done)return i(n,e);e=t[n](e).value}o(a.done?"return":"normal",e)},function(e){i("throw",e)})}catch(e){o("throw",e)}}function o(e,t){switch(e){case"return":r.resolve({value:t,done:!0});break;case"throw":r.reject(t);break;default:r.resolve({value:t,done:!1})}(r=r.next)?i(r.key,r.arg):n=null}this._invoke=function(e,t){return new Promise(function(o,a){var s={key:e,arg:t,resolve:o,reject:a,next:null};n?n=n.next=s:(r=n=s,i(e,t))})},"function"!=typeof t.return&&(this.return=void 0)}function C(e,t){return function(){return e.apply(t,arguments)}}R.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},R.prototype.next=function(e){return this._invoke("next",e)},R.prototype.throw=function(e){return this._invoke("throw",e)},R.prototype.return=function(e){return this._invoke("return",e)};var O,I=Object.prototype.toString,A=Object.getPrototypeOf,D=Symbol.iterator,_=Symbol.toStringTag,N=(O=Object.create(null),function(e){var t=I.call(e);return O[t]||(O[t]=t.slice(8,-1).toLowerCase())}),L=function(e){return e=e.toLowerCase(),function(t){return N(t)===e}},j=function(e){return function(t){return E(t)===e}},U=Array.isArray,F=j("undefined");function B(e){return null!==e&&!F(e)&&null!==e.constructor&&!F(e.constructor)&&H(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var M=L("ArrayBuffer");var z=j("string"),H=j("function"),V=j("number"),q=function(e){return null!==e&&"object"===E(e)},K=function(e){if("object"!==N(e))return!1;var t=A(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||_ in e||D in e)},Q=L("Date"),W=L("File"),J=L("Blob"),G=L("FileList"),X=L("URLSearchParams"),$=k(["ReadableStream","Request","Response","Headers"].map(L),4),Y=$[0],Z=$[1],ee=$[2],te=$[3];function re(e,t){var r,n,i=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).allOwnKeys,o=void 0!==i&&i;if(null!=e)if("object"!==E(e)&&(e=[e]),U(e))for(r=0,n=e.length;r<n;r++)t.call(null,e[r],r,e);else{if(B(e))return;var a,s=o?Object.getOwnPropertyNames(e):Object.keys(e),u=s.length;for(r=0;r<u;r++)a=s[r],t.call(null,e[a],a,e)}}function ne(e,t){if(B(e))return null;t=t.toLowerCase();for(var r,n=Object.keys(e),i=n.length;i-- >0;)if(t===(r=n[i]).toLowerCase())return r;return null}var ie="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,oe=function(e){return!F(e)&&e!==ie};var ae,se=(ae="undefined"!=typeof Uint8Array&&A(Uint8Array),function(e){return ae&&e instanceof ae}),ue=L("HTMLFormElement"),ce=function(){var e=Object.prototype.hasOwnProperty;return function(t,r){return e.call(t,r)}}(),le=L("RegExp"),fe=function(e,t){var r=Object.getOwnPropertyDescriptors(e),n={};re(r,function(r,i){var o;!1!==(o=t(r,i,e))&&(n[i]=o||r)}),Object.defineProperties(e,n)};var he,de,pe,ge,ve=L("AsyncFunction"),me=(he="function"==typeof setImmediate,de=H(ie.postMessage),he?setImmediate:de?(pe="axios@".concat(Math.random()),ge=[],ie.addEventListener("message",function(e){var t=e.source,r=e.data;t===ie&&r===pe&&ge.length&&ge.shift()()},!1),function(e){ge.push(e),ie.postMessage(pe,"*")}):function(e){return setTimeout(e)}),we="undefined"!=typeof queueMicrotask?queueMicrotask.bind(ie):"undefined"!=typeof process&&process.nextTick||me,ye={isArray:U,isArrayBuffer:M,isBuffer:B,isFormData:function(e){var t;return e&&("function"==typeof FormData&&e instanceof FormData||H(e.append)&&("formdata"===(t=N(e))||"object"===t&&H(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&M(e.buffer)},isString:z,isNumber:V,isBoolean:function(e){return!0===e||!1===e},isObject:q,isPlainObject:K,isEmptyObject:function(e){if(!q(e)||B(e))return!1;try{return 0===Object.keys(e).length&&Object.getPrototypeOf(e)===Object.prototype}catch(e){return!1}},isReadableStream:Y,isRequest:Z,isResponse:ee,isHeaders:te,isUndefined:F,isDate:Q,isFile:W,isBlob:J,isRegExp:le,isFunction:H,isStream:function(e){return q(e)&&H(e.pipe)},isURLSearchParams:X,isTypedArray:se,isFileList:G,forEach:re,merge:function e(){for(var t=(oe(this)&&this||{}).caseless,r={},n=function(n,i){var o=t&&ne(r,i)||i;K(r[o])&&K(n)?r[o]=e(r[o],n):K(n)?r[o]=e({},n):U(n)?r[o]=n.slice():r[o]=n},i=0,o=arguments.length;i<o;i++)arguments[i]&&re(arguments[i],n);return r},extend:function(e,t,r){return re(t,function(t,n){r&&H(t)?e[n]=C(t,r):e[n]=t},{allOwnKeys:(arguments.length>3&&void 0!==arguments[3]?arguments[3]:{}).allOwnKeys}),e},trim:function(e){return e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e},inherits:function(e,t,r,n){e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:function(e,t,r,n){var i,o,a,s={};if(t=t||{},null==e)return t;do{for(o=(i=Object.getOwnPropertyNames(e)).length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&A(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:N,kindOfTest:L,endsWith:function(e,t,r){e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;var n=e.indexOf(t,r);return-1!==n&&n===r},toArray:function(e){if(!e)return null;if(U(e))return e;var t=e.length;if(!V(t))return null;for(var r=new Array(t);t-- >0;)r[t]=e[t];return r},forEachEntry:function(e,t){for(var r,n=(e&&e[D]).call(e);(r=n.next())&&!r.done;){var i=r.value;t.call(e,i[0],i[1])}},matchAll:function(e,t){for(var r,n=[];null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:ue,hasOwnProperty:ce,hasOwnProp:ce,reduceDescriptors:fe,freezeMethods:function(e){fe(e,function(t,r){if(H(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;var n=e[r];H(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=function(){throw Error("Can not rewrite read-only method '"+r+"'")}))})},toObjectSet:function(e,t){var r={},n=function(e){e.forEach(function(e){r[e]=!0})};return U(e)?n(e):n(String(e).split(t)),r},toCamelCase:function(e){return e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(e,t,r){return t.toUpperCase()+r})},noop:function(){},toFiniteNumber:function(e,t){return null!=e&&Number.isFinite(e=+e)?e:t},findKey:ne,global:ie,isContextDefined:oe,isSpecCompliantForm:function(e){return!!(e&&H(e.append)&&"FormData"===e[_]&&e[D])},toJSONObject:function(e){var t=new Array(10),r=function(e,n){if(q(e)){if(t.indexOf(e)>=0)return;if(B(e))return e;if(!("toJSON"in e)){t[n]=e;var i=U(e)?[]:{};return re(e,function(e,t){var o=r(e,n+1);!F(o)&&(i[t]=o)}),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:ve,isThenable:function(e){return e&&(q(e)||H(e))&&H(e.then)&&H(e.catch)},setImmediate:me,asap:we,isIterable:function(e){return null!=e&&H(e[D])}};function be(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i,this.status=i.status?i.status:null)}ye.inherits(be,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ye.toJSONObject(this.config),code:this.code,status:this.status}}});var ke=be.prototype,Te={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(function(e){Te[e]={value:e}}),Object.defineProperties(be,Te),Object.defineProperty(ke,"isAxiosError",{value:!0}),be.from=function(e,t,r,n,i,o){var a=Object.create(ke);return ye.toFlatObject(e,a,function(e){return e!==Error.prototype},function(e){return"isAxiosError"!==e}),be.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};function Se(e){return ye.isPlainObject(e)||ye.isArray(e)}function Ee(e){return ye.endsWith(e,"[]")?e.slice(0,-2):e}function Pe(e,t,r){return e?e.concat(t).map(function(e,t){return e=Ee(e),!r&&t?"["+e+"]":e}).join(r?".":""):t}var xe=ye.toFlatObject(ye,{},null,function(e){return/^is[A-Z]/.test(e)});function Re(e,t,r){if(!ye.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;var n=(r=ye.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(e,t){return!ye.isUndefined(t[e])})).metaTokens,i=r.visitor||c,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!=typeof Blob&&Blob)&&ye.isSpecCompliantForm(t);if(!ye.isFunction(i))throw new TypeError("visitor must be a function");function u(e){if(null===e)return"";if(ye.isDate(e))return e.toISOString();if(ye.isBoolean(e))return e.toString();if(!s&&ye.isBlob(e))throw new be("Blob is not supported. Use a Buffer instead.");return ye.isArrayBuffer(e)||ye.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function c(e,r,i){var s=e;if(e&&!i&&"object"===E(e))if(ye.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(ye.isArray(e)&&function(e){return ye.isArray(e)&&!e.some(Se)}(e)||(ye.isFileList(e)||ye.endsWith(r,"[]"))&&(s=ye.toArray(e)))return r=Ee(r),s.forEach(function(e,n){!ye.isUndefined(e)&&null!==e&&t.append(!0===a?Pe([r],n,o):null===a?r:r+"[]",u(e))}),!1;return!!Se(e)||(t.append(Pe(i,r,o),u(e)),!1)}var l=[],f=Object.assign(xe,{defaultVisitor:c,convertValue:u,isVisitable:Se});if(!ye.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!ye.isUndefined(r)){if(-1!==l.indexOf(r))throw Error("Circular reference detected in "+n.join("."));l.push(r),ye.forEach(r,function(r,o){!0===(!(ye.isUndefined(r)||null===r)&&i.call(t,r,ye.isString(o)?o.trim():o,n,f))&&e(r,n?n.concat(o):[o])}),l.pop()}}(e),t}function Ce(e){var t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(e){return t[e]})}function Oe(e,t){this._pairs=[],e&&Re(e,this,t)}var Ie=Oe.prototype;function Ae(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function De(e,t,r){if(!t)return e;var n=r&&r.encode||Ae;ye.isFunction(r)&&(r={serialize:r});var i,o=r&&r.serialize;if(i=o?o(t,r):ye.isURLSearchParams(t)?t.toString():new Oe(t,r).toString(n)){var a=e.indexOf("#");-1!==a&&(e=e.slice(0,a)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}Ie.append=function(e,t){this._pairs.push([e,t])},Ie.toString=function(e){var t=e?function(t){return e.call(this,t,Ce)}:Ce;return this._pairs.map(function(e){return t(e[0])+"="+t(e[1])},"").join("&")};var _e=function(){return f(function e(){c(this,e),this.handlers=[]},[{key:"use",value:function(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}},{key:"eject",value:function(e){this.handlers[e]&&(this.handlers[e]=null)}},{key:"clear",value:function(){this.handlers&&(this.handlers=[])}},{key:"forEach",value:function(e){ye.forEach(this.handlers,function(t){null!==t&&e(t)})}}])}(),Ne={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Le={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:Oe,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},je="undefined"!=typeof window&&"undefined"!=typeof document,Ue="object"===("undefined"==typeof navigator?"undefined":E(navigator))&&navigator||void 0,Fe=je&&(!Ue||["ReactNative","NativeScript","NS"].indexOf(Ue.product)<0),Be="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,Me=je&&window.location.href||"http://localhost",ze=m(m({},Object.freeze({__proto__:null,hasBrowserEnv:je,hasStandardBrowserWebWorkerEnv:Be,hasStandardBrowserEnv:Fe,navigator:Ue,origin:Me})),Le);function He(e){function t(e,r,n,i){var o=e[i++];if("__proto__"===o)return!0;var a=Number.isFinite(+o),s=i>=e.length;return o=!o&&ye.isArray(n)?n.length:o,s?(ye.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a):(n[o]&&ye.isObject(n[o])||(n[o]=[]),t(e,r,n[o],i)&&ye.isArray(n[o])&&(n[o]=function(e){var t,r,n={},i=Object.keys(e),o=i.length;for(t=0;t<o;t++)n[r=i[t]]=e[r];return n}(n[o])),!a)}if(ye.isFormData(e)&&ye.isFunction(e.entries)){var r={};return ye.forEachEntry(e,function(e,n){t(function(e){return ye.matchAll(/\w+|\[(\w*)]/g,e).map(function(e){return"[]"===e[0]?"":e[1]||e[0]})}(e),n,r,0)}),r}return null}var Ve={transitional:Ne,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){var r,n=t.getContentType()||"",i=n.indexOf("application/json")>-1,o=ye.isObject(e);if(o&&ye.isHTMLForm(e)&&(e=new FormData(e)),ye.isFormData(e))return i?JSON.stringify(He(e)):e;if(ye.isArrayBuffer(e)||ye.isBuffer(e)||ye.isStream(e)||ye.isFile(e)||ye.isBlob(e)||ye.isReadableStream(e))return e;if(ye.isArrayBufferView(e))return e.buffer;if(ye.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return Re(e,new ze.classes.URLSearchParams,m({visitor:function(e,t,r,n){return ze.isNode&&ye.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((r=ye.isFileList(e))||n.indexOf("multipart/form-data")>-1){var a=this.env&&this.env.FormData;return Re(r?{"files[]":e}:e,a&&new a,this.formSerializer)}}return o||i?(t.setContentType("application/json",!1),function(e,t,r){if(ye.isString(e))try{return(t||JSON.parse)(e),ye.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||Ve.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(ye.isResponse(e)||ye.isReadableStream(e))return e;if(e&&ye.isString(e)&&(r&&!this.responseType||n)){var i=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(e){if(i){if("SyntaxError"===e.name)throw be.from(e,be.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ze.classes.FormData,Blob:ze.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ye.forEach(["delete","get","head","post","put","patch"],function(e){Ve.headers[e]={}});var qe=Ve,Ke=ye.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Qe=Symbol("internals");function We(e){return e&&String(e).trim().toLowerCase()}function Je(e){return!1===e||null==e?e:ye.isArray(e)?e.map(Je):String(e)}function Ge(e,t,r,n,i){return ye.isFunction(n)?n.call(this,t,r):(i&&(t=r),ye.isString(t)?ye.isString(n)?-1!==t.indexOf(n):ye.isRegExp(n)?n.test(t):void 0:void 0)}var Xe=function(){return f(function e(t){c(this,e),t&&this.set(t)},[{key:"set",value:function(e,t,r){var n=this;function i(e,t,r){var i=We(t);if(!i)throw new Error("header name must be a non-empty string");var o=ye.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=Je(e))}var o=function(e,t){return ye.forEach(e,function(e,r){return i(e,r,t)})};if(ye.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(ye.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))o(function(e){var t,r,n,i={};return e&&e.split("\n").forEach(function(e){n=e.indexOf(":"),t=e.substring(0,n).trim().toLowerCase(),r=e.substring(n+1).trim(),!t||i[t]&&Ke[t]||("set-cookie"===t?i[t]?i[t].push(r):i[t]=[r]:i[t]=i[t]?i[t]+", "+r:r)}),i}(e),t);else if(ye.isObject(e)&&ye.isIterable(e)){var a,s,u,c={},l=h(e);try{for(l.s();!(u=l.n()).done;){var f=u.value;if(!ye.isArray(f))throw TypeError("Object iterator must return a key-value pair");c[s=f[0]]=(a=c[s])?ye.isArray(a)?[].concat(T(a),[f[1]]):[a,f[1]]:f[1]}}catch(e){l.e(e)}finally{l.f()}o(c,t)}else null!=e&&i(t,e,r);return this}},{key:"get",value:function(e,t){if(e=We(e)){var r=ye.findKey(this,e);if(r){var n=this[r];if(!t)return n;if(!0===t)return function(e){for(var t,r=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;t=n.exec(e);)r[t[1]]=t[2];return r}(n);if(ye.isFunction(t))return t.call(this,n,r);if(ye.isRegExp(t))return t.exec(n);throw new TypeError("parser must be boolean|regexp|function")}}}},{key:"has",value:function(e,t){if(e=We(e)){var r=ye.findKey(this,e);return!(!r||void 0===this[r]||t&&!Ge(0,this[r],r,t))}return!1}},{key:"delete",value:function(e,t){var r=this,n=!1;function i(e){if(e=We(e)){var i=ye.findKey(r,e);!i||t&&!Ge(0,r[i],i,t)||(delete r[i],n=!0)}}return ye.isArray(e)?e.forEach(i):i(e),n}},{key:"clear",value:function(e){for(var t=Object.keys(this),r=t.length,n=!1;r--;){var i=t[r];e&&!Ge(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}},{key:"normalize",value:function(e){var t=this,r={};return ye.forEach(this,function(n,i){var o=ye.findKey(r,i);if(o)return t[o]=Je(n),void delete t[i];var a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,function(e,t,r){return t.toUpperCase()+r})}(i):String(i).trim();a!==i&&delete t[i],t[a]=Je(n),r[a]=!0}),this}},{key:"concat",value:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=this.constructor).concat.apply(e,[this].concat(r))}},{key:"toJSON",value:function(e){var t=Object.create(null);return ye.forEach(this,function(r,n){null!=r&&!1!==r&&(t[n]=e&&ye.isArray(r)?r.join(", "):r)}),t}},{key:Symbol.iterator,value:function(){return Object.entries(this.toJSON())[Symbol.iterator]()}},{key:"toString",value:function(){return Object.entries(this.toJSON()).map(function(e){var t=k(e,2);return t[0]+": "+t[1]}).join("\n")}},{key:"getSetCookie",value:function(){return this.get("set-cookie")||[]}},{key:Symbol.toStringTag,get:function(){return"AxiosHeaders"}}],[{key:"from",value:function(e){return e instanceof this?e:new this(e)}},{key:"concat",value:function(e){for(var t=new this(e),r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return n.forEach(function(e){return t.set(e)}),t}},{key:"accessor",value:function(e){var t=(this[Qe]=this[Qe]={accessors:{}}).accessors,r=this.prototype;function n(e){var n=We(e);t[n]||(!function(e,t){var r=ye.toCamelCase(" "+t);["get","set","has"].forEach(function(n){Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})})}(r,e),t[n]=!0)}return ye.isArray(e)?e.forEach(n):n(e),this}}])}();Xe.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),ye.reduceDescriptors(Xe.prototype,function(e,t){var r=e.value,n=t[0].toUpperCase()+t.slice(1);return{get:function(){return r},set:function(e){this[n]=e}}}),ye.freezeMethods(Xe);var $e=Xe;function Ye(e,t){var r=this||qe,n=t||r,i=$e.from(n.headers),o=n.data;return ye.forEach(e,function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)}),i.normalize(),o}function Ze(e){return!(!e||!e.__CANCEL__)}function et(e,t,r){be.call(this,null==e?"canceled":e,be.ERR_CANCELED,t,r),this.name="CanceledError"}function tt(e,t,r){var n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new be("Request failed with status code "+r.status,[be.ERR_BAD_REQUEST,be.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}ye.inherits(et,be,{__CANCEL__:!0});var rt=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3,n=0,i=function(e,t){e=e||10;var r,n=new Array(e),i=new Array(e),o=0,a=0;return t=void 0!==t?t:1e3,function(s){var u=Date.now(),c=i[a];r||(r=u),n[o]=s,i[o]=u;for(var l=a,f=0;l!==o;)f+=n[l++],l%=e;if((o=(o+1)%e)===a&&(a=(a+1)%e),!(u-r<t)){var h=c&&u-c;return h?Math.round(1e3*f/h):void 0}}}(50,250);return function(e,t){var r,n,i=0,o=1e3/t,a=function(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Date.now();i=o,r=null,n&&(clearTimeout(n),n=null),e.apply(void 0,T(t))};return[function(){for(var e=Date.now(),t=e-i,s=arguments.length,u=new Array(s),c=0;c<s;c++)u[c]=arguments[c];t>=o?a(u,e):(r=u,n||(n=setTimeout(function(){n=null,a(r)},o-t)))},function(){return r&&a(r)}]}(function(r){var o=r.loaded,a=r.lengthComputable?r.total:void 0,s=o-n,u=i(s);n=o;var c=d({loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:u||void 0,estimated:u&&a&&o<=a?(a-o)/u:void 0,event:r,lengthComputable:null!=a},t?"download":"upload",!0);e(c)},r)},nt=function(e,t){var r=null!=e;return[function(n){return t[0]({lengthComputable:r,total:e,loaded:n})},t[1]]},it=function(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return ye.asap(function(){return e.apply(void 0,r)})}},ot=ze.hasStandardBrowserEnv?function(e,t){return function(r){return r=new URL(r,ze.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)}}(new URL(ze.origin),ze.navigator&&/(msie|trident)/i.test(ze.navigator.userAgent)):function(){return!0},at=ze.hasStandardBrowserEnv?{write:function(e,t,r,n,i,o){var a=[e+"="+encodeURIComponent(t)];ye.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),ye.isString(n)&&a.push("path="+n),ye.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function st(e,t,r){var n=!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t);return e&&(n||0==r)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}var ut=function(e){return e instanceof $e?m({},e):e};function ct(e,t){t=t||{};var r={};function n(e,t,r,n){return ye.isPlainObject(e)&&ye.isPlainObject(t)?ye.merge.call({caseless:n},e,t):ye.isPlainObject(t)?ye.merge({},t):ye.isArray(t)?t.slice():t}function i(e,t,r,i){return ye.isUndefined(t)?ye.isUndefined(e)?void 0:n(void 0,e,0,i):n(e,t,0,i)}function o(e,t){if(!ye.isUndefined(t))return n(void 0,t)}function a(e,t){return ye.isUndefined(t)?ye.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}var u={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:function(e,t,r){return i(ut(e),ut(t),0,!0)}};return ye.forEach(Object.keys(m(m({},e),t)),function(n){var o=u[n]||i,a=o(e[n],t[n],n);ye.isUndefined(a)&&o!==s||(r[n]=a)}),r}var lt,ft,ht=function(e){var n,i,o=ct({},e),a=o.data,s=o.withXSRFToken,u=o.xsrfHeaderName,c=o.xsrfCookieName,l=o.headers,f=o.auth;if(o.headers=l=$e.from(l),o.url=De(st(o.baseURL,o.url,o.allowAbsoluteUrls),e.params,e.paramsSerializer),f&&l.set("Authorization","Basic "+btoa((f.username||"")+":"+(f.password?unescape(encodeURIComponent(f.password)):""))),ye.isFormData(a))if(ze.hasStandardBrowserEnv||ze.hasStandardBrowserWebWorkerEnv)l.setContentType(void 0);else if(!1!==(n=l.getContentType())){var h=n?n.split(";").map(function(e){return e.trim()}).filter(Boolean):[],d=r(i=h)||p(i)||P(i)||g(),v=d[0],m=t(d).slice(1);l.setContentType([v||"multipart/form-data"].concat(T(m)).join("; "))}if(ze.hasStandardBrowserEnv&&(s&&ye.isFunction(s)&&(s=s(o)),s||!1!==s&&ot(o.url))){var w=u&&c&&at.read(c);w&&l.set(u,w)}return o},dt="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise(function(t,r){var n,i,o,a,s,u=ht(e),c=u.data,l=$e.from(u.headers).normalize(),f=u.responseType,h=u.onUploadProgress,d=u.onDownloadProgress;function p(){a&&a(),s&&s(),u.cancelToken&&u.cancelToken.unsubscribe(n),u.signal&&u.signal.removeEventListener("abort",n)}var g=new XMLHttpRequest;function v(){if(g){var n=$e.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders());tt(function(e){t(e),p()},function(e){r(e),p()},{data:f&&"text"!==f&&"json"!==f?g.response:g.responseText,status:g.status,statusText:g.statusText,headers:n,config:e,request:g}),g=null}}if(g.open(u.method.toUpperCase(),u.url,!0),g.timeout=u.timeout,"onloadend"in g?g.onloadend=v:g.onreadystatechange=function(){g&&4===g.readyState&&(0!==g.status||g.responseURL&&0===g.responseURL.indexOf("file:"))&&setTimeout(v)},g.onabort=function(){g&&(r(new be("Request aborted",be.ECONNABORTED,e,g)),g=null)},g.onerror=function(){r(new be("Network Error",be.ERR_NETWORK,e,g)),g=null},g.ontimeout=function(){var t=u.timeout?"timeout of "+u.timeout+"ms exceeded":"timeout exceeded",n=u.transitional||Ne;u.timeoutErrorMessage&&(t=u.timeoutErrorMessage),r(new be(t,n.clarifyTimeoutError?be.ETIMEDOUT:be.ECONNABORTED,e,g)),g=null},void 0===c&&l.setContentType(null),"setRequestHeader"in g&&ye.forEach(l.toJSON(),function(e,t){g.setRequestHeader(t,e)}),ye.isUndefined(u.withCredentials)||(g.withCredentials=!!u.withCredentials),f&&"json"!==f&&(g.responseType=u.responseType),d){var m=k(rt(d,!0),2);o=m[0],s=m[1],g.addEventListener("progress",o)}if(h&&g.upload){var w=k(rt(h),2);i=w[0],a=w[1],g.upload.addEventListener("progress",i),g.upload.addEventListener("loadend",a)}(u.cancelToken||u.signal)&&(n=function(t){g&&(r(!t||t.type?new et(null,e,g):t),g.abort(),g=null)},u.cancelToken&&u.cancelToken.subscribe(n),u.signal&&(u.signal.aborted?n():u.signal.addEventListener("abort",n)));var y,b,T=(y=u.url,(b=/^([-+\w]{1,25})(:?\/\/|:)/.exec(y))&&b[1]||"");T&&-1===ze.protocols.indexOf(T)?r(new be("Unsupported protocol "+T+":",be.ERR_BAD_REQUEST,e)):g.send(c||null)})},pt=function(e,t){var r=(e=e?e.filter(Boolean):[]).length;if(t||r){var n,i=new AbortController,o=function(e){if(!n){n=!0,s();var t=e instanceof Error?e:this.reason;i.abort(t instanceof be?t:new et(t instanceof Error?t.message:t))}},a=t&&setTimeout(function(){a=null,o(new be("timeout ".concat(t," of ms exceeded"),be.ETIMEDOUT))},t),s=function(){e&&(a&&clearTimeout(a),a=null,e.forEach(function(e){e.unsubscribe?e.unsubscribe(o):e.removeEventListener("abort",o)}),e=null)};e.forEach(function(e){return e.addEventListener("abort",o)});var u=i.signal;return u.unsubscribe=function(){return ye.asap(s)},u}},gt=w().m(function e(t,r){var n,i,o;return w().w(function(e){for(;;)switch(e.n){case 0:if(n=t.byteLength,r&&!(n<r)){e.n=2;break}return e.n=1,t;case 1:return e.a(2);case 2:i=0;case 3:if(!(i<n)){e.n=5;break}return o=i+r,e.n=4,t.slice(i,o);case 4:i=o,e.n=3;break;case 5:return e.a(2)}},e)}),vt=function(){var e=x(w().m(function e(t,r){var o,a,s,c,l,f,h;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:o=!1,a=!1,e.p=1,c=i(mt(t));case 2:return e.n=3,u(c.next());case 3:if(!(o=!(l=e.v).done)){e.n=5;break}return f=l.value,e.d(b(n(i(gt(f,r)))),4);case 4:o=!1,e.n=2;break;case 5:e.n=7;break;case 6:e.p=6,h=e.v,a=!0,s=h;case 7:if(e.p=7,e.p=8,!o||null==c.return){e.n=9;break}return e.n=9,u(c.return());case 9:if(e.p=9,!a){e.n=10;break}throw s;case 10:return e.f(9);case 11:return e.f(7);case 12:return e.a(2)}},e,null,[[8,,9,11],[1,6,7,12]])}));return function(t,r){return e.apply(this,arguments)}}(),mt=function(){var e=x(w().m(function e(t){var r,o,a,s;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!t[Symbol.asyncIterator]){e.n=2;break}return e.d(b(n(i(t))),1);case 1:return e.a(2);case 2:r=t.getReader(),e.p=3;case 4:return e.n=5,u(r.read());case 5:if(o=e.v,a=o.done,s=o.value,!a){e.n=6;break}return e.a(3,8);case 6:return e.n=7,s;case 7:e.n=4;break;case 8:return e.p=8,e.n=9,u(r.cancel());case 9:return e.f(8);case 10:return e.a(2)}},e,null,[[3,,8,10]])}));return function(t){return e.apply(this,arguments)}}(),wt=function(e,t,r,n){var i,o=vt(e,t),a=0,u=function(e){i||(i=!0,n&&n(e))};return new ReadableStream({pull:function(e){return s(w().m(function t(){var n,i,s,c,l,f;return w().w(function(t){for(;;)switch(t.p=t.n){case 0:return t.p=0,t.n=1,o.next();case 1:if(n=t.v,i=n.done,s=n.value,!i){t.n=2;break}return u(),e.close(),t.a(2);case 2:c=s.byteLength,r&&(l=a+=c,r(l)),e.enqueue(new Uint8Array(s)),t.n=4;break;case 3:throw t.p=3,f=t.v,u(f),f;case 4:return t.a(2)}},t,null,[[0,3]])}))()},cancel:function(e){return u(e),o.return()}},{highWaterMark:2})},yt="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,bt=yt&&"function"==typeof ReadableStream,kt=yt&&("function"==typeof TextEncoder?(lt=new TextEncoder,function(e){return lt.encode(e)}):function(){var e=s(w().m(function e(t){var r,n;return w().w(function(e){for(;;)switch(e.n){case 0:return r=Uint8Array,e.n=1,new Response(t).arrayBuffer();case 1:return n=e.v,e.a(2,new r(n))}},e)}));return function(t){return e.apply(this,arguments)}}()),Tt=function(e){try{for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return!!e.apply(void 0,r)}catch(e){return!1}},St=bt&&Tt(function(){var e=!1,t=new Request(ze.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Et=bt&&Tt(function(){return ye.isReadableStream(new Response("").body)}),Pt={stream:Et&&function(e){return e.body}};yt&&(ft=new Response,["text","arrayBuffer","blob","formData","stream"].forEach(function(e){!Pt[e]&&(Pt[e]=ye.isFunction(ft[e])?function(t){return t[e]()}:function(t,r){throw new be("Response type '".concat(e,"' is not supported"),be.ERR_NOT_SUPPORT,r)})}));var xt=function(){var e=s(w().m(function e(t){var r;return w().w(function(e){for(;;)switch(e.n){case 0:if(null!=t){e.n=1;break}return e.a(2,0);case 1:if(!ye.isBlob(t)){e.n=2;break}return e.a(2,t.size);case 2:if(!ye.isSpecCompliantForm(t)){e.n=4;break}return r=new Request(ze.origin,{method:"POST",body:t}),e.n=3,r.arrayBuffer();case 3:case 6:return e.a(2,e.v.byteLength);case 4:if(!ye.isArrayBufferView(t)&&!ye.isArrayBuffer(t)){e.n=5;break}return e.a(2,t.byteLength);case 5:if(ye.isURLSearchParams(t)&&(t+=""),!ye.isString(t)){e.n=7;break}return e.n=6,kt(t);case 7:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}(),Rt=function(){var e=s(w().m(function e(t,r){var n;return w().w(function(e){for(;;)if(0===e.n)return n=ye.toFiniteNumber(t.getContentLength()),e.a(2,null==n?xt(r):n)},e)}));return function(t,r){return e.apply(this,arguments)}}(),Ct={http:null,xhr:dt,fetch:yt&&function(){var e=s(w().m(function e(t){var r,n,i,o,a,s,u,c,l,f,h,d,p,g,v,y,b,T,S,E,P,x,R,C,O,I,A,D,_,N,L,j,U,F,B,M,z;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:if(r=ht(t),n=r.url,i=r.method,o=r.data,a=r.signal,s=r.cancelToken,u=r.timeout,c=r.onDownloadProgress,l=r.onUploadProgress,f=r.responseType,h=r.headers,d=r.withCredentials,p=void 0===d?"same-origin":d,g=r.fetchOptions,f=f?(f+"").toLowerCase():"text",v=pt([a,s&&s.toAbortSignal()],u),b=v&&v.unsubscribe&&function(){v.unsubscribe()},e.p=1,!(B=l&&St&&"get"!==i&&"head"!==i)){e.n=3;break}return e.n=2,Rt(h,o);case 2:M=T=e.v,B=0!==M;case 3:if(!B){e.n=4;break}S=new Request(n,{method:"POST",body:o,duplex:"half"}),ye.isFormData(o)&&(E=S.headers.get("content-type"))&&h.setContentType(E),S.body&&(P=nt(T,rt(it(l))),x=k(P,2),R=x[0],C=x[1],o=wt(S.body,65536,R,C));case 4:return ye.isString(p)||(p=p?"include":"omit"),O="credentials"in Request.prototype,y=new Request(n,m(m({},g),{},{signal:v,method:i.toUpperCase(),headers:h.normalize().toJSON(),body:o,duplex:"half",credentials:O?p:void 0})),e.n=5,fetch(y,g);case 5:return I=e.v,A=Et&&("stream"===f||"response"===f),Et&&(c||A&&b)&&(D={},["status","statusText","headers"].forEach(function(e){D[e]=I[e]}),_=ye.toFiniteNumber(I.headers.get("content-length")),N=c&&nt(_,rt(it(c),!0))||[],L=k(N,2),j=L[0],U=L[1],I=new Response(wt(I.body,65536,j,function(){U&&U(),b&&b()}),D)),f=f||"text",e.n=6,Pt[ye.findKey(Pt,f)||"text"](I,t);case 6:return F=e.v,!A&&b&&b(),e.n=7,new Promise(function(e,r){tt(e,r,{data:F,headers:$e.from(I.headers),status:I.status,statusText:I.statusText,config:t,request:y})});case 7:return e.a(2,e.v);case 8:if(e.p=8,z=e.v,b&&b(),!z||"TypeError"!==z.name||!/Load failed|fetch/i.test(z.message)){e.n=9;break}throw Object.assign(new be("Network Error",be.ERR_NETWORK,t,y),{cause:z.cause||z});case 9:throw be.from(z,z&&z.code,t,y);case 10:return e.a(2)}},e,null,[[1,8]])}));return function(t){return e.apply(this,arguments)}}()};ye.forEach(Ct,function(e,t){if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}});var Ot=function(e){return"- ".concat(e)},It=function(e){return ye.isFunction(e)||null===e||!1===e},At=function(e){for(var t,r,n=(e=ye.isArray(e)?e:[e]).length,i={},o=0;o<n;o++){var a=void 0;if(r=t=e[o],!It(t)&&void 0===(r=Ct[(a=String(t)).toLowerCase()]))throw new be("Unknown adapter '".concat(a,"'"));if(r)break;i[a||"#"+o]=r}if(!r){var s=Object.entries(i).map(function(e){var t=k(e,2),r=t[0],n=t[1];return"adapter ".concat(r," ")+(!1===n?"is not supported by the environment":"is not available in the build")});throw new be("There is no suitable adapter to dispatch the request "+(n?s.length>1?"since :\n"+s.map(Ot).join("\n"):" "+Ot(s[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return r};function Dt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new et(null,e)}function _t(e){return Dt(e),e.headers=$e.from(e.headers),e.data=Ye.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),At(e.adapter||qe.adapter)(e).then(function(t){return Dt(e),t.data=Ye.call(e,e.transformResponse,t),t.headers=$e.from(t.headers),t},function(t){return Ze(t)||(Dt(e),t&&t.response&&(t.response.data=Ye.call(e,e.transformResponse,t.response),t.response.headers=$e.from(t.response.headers))),Promise.reject(t)})}var Nt="1.11.0",Lt={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){Lt[e]=function(r){return E(r)===e||"a"+(t<1?"n ":" ")+e}});var jt={};Lt.transitional=function(e,t,r){function n(e,t){return"[Axios v"+Nt+"] Transitional option '"+e+"'"+t+(r?". "+r:"")}return function(r,i,o){if(!1===e)throw new be(n(i," has been removed"+(t?" in "+t:"")),be.ERR_DEPRECATED);return t&&!jt[i]&&(jt[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}},Lt.spelling=function(e){return function(t,r){return console.warn("".concat(r," is likely a misspelling of ").concat(e)),!0}};var Ut={assertOptions:function(e,t,r){if("object"!==E(e))throw new be("options must be an object",be.ERR_BAD_OPTION_VALUE);for(var n=Object.keys(e),i=n.length;i-- >0;){var o=n[i],a=t[o];if(a){var s=e[o],u=void 0===s||a(s,o,e);if(!0!==u)throw new be("option "+o+" must be "+u,be.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new be("Unknown option "+o,be.ERR_BAD_OPTION)}},validators:Lt},Ft=Ut.validators,Bt=function(){return f(function e(t){c(this,e),this.defaults=t||{},this.interceptors={request:new _e,response:new _e}},[{key:"request",value:(e=s(w().m(function e(t,r){var n,i,o;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,this._request(t,r);case 1:return e.a(2,e.v);case 2:if(e.p=2,(o=e.v)instanceof Error){n={},Error.captureStackTrace?Error.captureStackTrace(n):n=new Error,i=n.stack?n.stack.replace(/^.+\n/,""):"";try{o.stack?i&&!String(o.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(o.stack+="\n"+i):o.stack=i}catch(e){}}throw o;case 3:return e.a(2)}},e,this,[[0,2]])})),function(t,r){return e.apply(this,arguments)})},{key:"_request",value:function(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{};var r=t=ct(this.defaults,t),n=r.transitional,i=r.paramsSerializer,o=r.headers;void 0!==n&&Ut.assertOptions(n,{silentJSONParsing:Ft.transitional(Ft.boolean),forcedJSONParsing:Ft.transitional(Ft.boolean),clarifyTimeoutError:Ft.transitional(Ft.boolean)},!1),null!=i&&(ye.isFunction(i)?t.paramsSerializer={serialize:i}:Ut.assertOptions(i,{encode:Ft.function,serialize:Ft.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Ut.assertOptions(t,{baseUrl:Ft.spelling("baseURL"),withXsrfToken:Ft.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();var a=o&&ye.merge(o.common,o[t.method]);o&&ye.forEach(["delete","get","head","post","put","patch","common"],function(e){delete o[e]}),t.headers=$e.concat(a,o);var s=[],u=!0;this.interceptors.request.forEach(function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(u=u&&e.synchronous,s.unshift(e.fulfilled,e.rejected))});var c,l=[];this.interceptors.response.forEach(function(e){l.push(e.fulfilled,e.rejected)});var f,h=0;if(!u){var d=[_t.bind(this),void 0];for(d.unshift.apply(d,s),d.push.apply(d,l),f=d.length,c=Promise.resolve(t);h<f;)c=c.then(d[h++],d[h++]);return c}f=s.length;var p=t;for(h=0;h<f;){var g=s[h++],v=s[h++];try{p=g(p)}catch(e){v.call(this,e);break}}try{c=_t.call(this,p)}catch(e){return Promise.reject(e)}for(h=0,f=l.length;h<f;)c=c.then(l[h++],l[h++]);return c}},{key:"getUri",value:function(e){return De(st((e=ct(this.defaults,e)).baseURL,e.url,e.allowAbsoluteUrls),e.params,e.paramsSerializer)}}]);var e}();ye.forEach(["delete","get","head","options"],function(e){Bt.prototype[e]=function(t,r){return this.request(ct(r||{},{method:e,url:t,data:(r||{}).data}))}}),ye.forEach(["post","put","patch"],function(e){function t(t){return function(r,n,i){return this.request(ct(i||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:r,data:n}))}}Bt.prototype[e]=t(),Bt.prototype[e+"Form"]=t(!0)});var Mt=Bt,zt=function(){function e(t){if(c(this,e),"function"!=typeof t)throw new TypeError("executor must be a function.");var r;this.promise=new Promise(function(e){r=e});var n=this;this.promise.then(function(e){if(n._listeners){for(var t=n._listeners.length;t-- >0;)n._listeners[t](e);n._listeners=null}}),this.promise.then=function(e){var t,r=new Promise(function(e){n.subscribe(e),t=e}).then(e);return r.cancel=function(){n.unsubscribe(t)},r},t(function(e,t,i){n.reason||(n.reason=new et(e,t,i),r(n.reason))})}return f(e,[{key:"throwIfRequested",value:function(){if(this.reason)throw this.reason}},{key:"subscribe",value:function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}},{key:"unsubscribe",value:function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}}},{key:"toAbortSignal",value:function(){var e=this,t=new AbortController,r=function(e){t.abort(e)};return this.subscribe(r),t.signal.unsubscribe=function(){return e.unsubscribe(r)},t.signal}}],[{key:"source",value:function(){var t;return{token:new e(function(e){t=e}),cancel:t}}}])}(),Ht=zt;var Vt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Vt).forEach(function(e){var t=k(e,2),r=t[0],n=t[1];Vt[n]=r});var qt=Vt;var Kt=function e(t){var r=new Mt(t),n=C(Mt.prototype.request,r);return ye.extend(n,Mt.prototype,r,{allOwnKeys:!0}),ye.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(ct(t,r))},n}(qe);Kt.Axios=Mt,Kt.CanceledError=et,Kt.CancelToken=Ht,Kt.isCancel=Ze,Kt.VERSION=Nt,Kt.toFormData=Re,Kt.AxiosError=be,Kt.Cancel=Kt.CanceledError,Kt.all=function(e){return Promise.all(e)},Kt.spread=function(e){return function(t){return e.apply(null,t)}},Kt.isAxiosError=function(e){return ye.isObject(e)&&!0===e.isAxiosError},Kt.mergeConfig=ct,Kt.AxiosHeaders=$e,Kt.formToJSON=function(e){return He(ye.isHTMLForm(e)?new FormData(e):e)},Kt.getAdapter=At,Kt.HttpStatusCode=qt,Kt.default=Kt;var Qt=Kt;Qt.Axios,Qt.AxiosError,Qt.CanceledError,Qt.isCancel,Qt.CancelToken,Qt.VERSION,Qt.all,Qt.Cancel,Qt.isAxiosError,Qt.spread,Qt.toFormData,Qt.AxiosHeaders,Qt.HttpStatusCode,Qt.formToJSON,Qt.getAdapter,Qt.mergeConfig;var Wt=Qt.create({timeout:1e4,headers:{"Content-Type":"multipart/form-data"}});Wt.interceptors.request.use(function(e){return e},function(e){return Promise.reject(e)}),Wt.interceptors.response.use(function(e){return e},function(e){return Promise.reject(e)});var Jt,Gt="user-agent",Xt="",$t="function",Yt="object",Zt="string",er="undefined",tr="browser",rr="cpu",nr="device",ir="engine",or="os",ar="result",sr="name",ur="type",cr="vendor",lr="version",fr="architecture",hr="major",dr="model",pr="console",gr="mobile",vr="tablet",mr="smarttv",wr="wearable",yr="xr",br="embedded",kr="inapp",Tr="brands",Sr="formFactors",Er="fullVersionList",Pr="platform",xr="platformVersion",Rr="bitness",Cr="sec-ch-ua",Or=Cr+"-full-version-list",Ir=Cr+"-arch",Ar=Cr+"-"+Rr,Dr=Cr+"-form-factors",_r=Cr+"-"+gr,Nr=Cr+"-"+dr,Lr=Cr+"-"+Pr,jr=Lr+"-version",Ur=[Tr,Er,gr,dr,Pr,xr,fr,Sr,Rr],Fr="Amazon",Br="Apple",Mr="ASUS",zr="BlackBerry",Hr="Google",Vr="Huawei",qr="Lenovo",Kr="Honor",Qr="LG",Wr="Microsoft",Jr="Motorola",Gr="Nvidia",Xr="OnePlus",$r="OPPO",Yr="Samsung",Zr="Sharp",en="Sony",tn="Xiaomi",rn="Zebra",nn="Chrome",on="Chromium",an="Chromecast",sn="Edge",un="Firefox",cn="Opera",ln="Facebook",fn="Sogou",hn="Mobile ",dn=" Browser",pn="Windows",gn=("undefined"==typeof window?"undefined":E(window))!==er&&window.navigator?window.navigator:void 0,vn=gn&&gn.userAgentData?gn.userAgentData:void 0,mn=function(e){for(var t={},r=0;r<e.length;r++)t[e[r].toUpperCase()]=e[r];return t},wn=function(e,t){if(E(e)===Yt&&e.length>0){for(var r in e)if(Tn(t)==Tn(e[r]))return!0;return!1}return!!bn(e)&&Tn(t)==Tn(e)},yn=function(e,t){for(var r in e)return/^(browser|cpu|device|engine|os)$/.test(r)||!!t&&yn(e[r])},bn=function(e){return E(e)===Zt},kn=function(e){if(e){for(var t=[],r=Pn(/\\?\"/g,e).split(","),n=0;n<r.length;n++)if(r[n].indexOf(";")>-1){var i=Rn(r[n]).split(";v=");t[n]={brand:i[0],version:i[1]}}else t[n]=Rn(r[n]);return t}},Tn=function(e){return bn(e)?e.toLowerCase():e},Sn=function(e){return bn(e)?Pn(/[^\d\.]/g,e).split(".")[0]:void 0},En=function(e){for(var t in e)if(e.hasOwnProperty(t)){var r=e[t];E(r)==Yt&&2==r.length?this[r[0]]=r[1]:this[r]=void 0}return this},Pn=function(e,t){return bn(t)?t.replace(e,Xt):t},xn=function(e){return Pn(/\\?\"/g,e)},Rn=function(e,t){return e=Pn(/^\s\s*/,String(e)),E(t)===er?e:e.substring(0,t)},Cn=function(e,t){if(e&&t)for(var r,n,i,o,a,s,u=0;u<t.length&&!a;){var c=t[u],l=t[u+1];for(r=n=0;r<c.length&&!a&&c[r];)if(a=c[r++].exec(e))for(i=0;i<l.length;i++)s=a[++n],E(o=l[i])===Yt&&o.length>0?2===o.length?E(o[1])==$t?this[o[0]]=o[1].call(this,s):this[o[0]]=o[1]:o.length>=3&&(E(o[1])!==$t||o[1].exec&&o[1].test?3==o.length?this[o[0]]=s?s.replace(o[1],o[2]):void 0:4==o.length?this[o[0]]=s?o[3].call(this,s.replace(o[1],o[2])):void 0:o.length>4&&(this[o[0]]=s?o[3].apply(this,[s.replace(o[1],o[2])].concat(o.slice(4))):void 0):o.length>3?this[o[0]]=s?o[1].apply(this,o.slice(2)):void 0:this[o[0]]=s?o[1].call(this,s,o[2]):void 0):this[o]=s||void 0;u+=2}},On=function(e,t){for(var r in t)if(E(t[r])===Yt&&t[r].length>0){for(var n=0;n<t[r].length;n++)if(wn(t[r][n],e))return"?"===r?void 0:r}else if(wn(t[r],e))return"?"===r?void 0:r;return t.hasOwnProperty("*")?t["*"]:e},In={ME:"4.90","NT 3.51":"3.51","NT 4.0":"4.0",2e3:["5.0","5.01"],XP:["5.1","5.2"],Vista:"6.0",7:"6.1",8:"6.2",8.1:"6.3",10:["6.4","10.0"],NT:""},An={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},Dn={Chrome:"Google Chrome",Edge:"Microsoft Edge","Edge WebView2":"Microsoft Edge WebView2","Chrome WebView":"Android WebView","Chrome Headless":"HeadlessChrome","Huawei Browser":"HuaweiBrowser","MIUI Browser":"Miui Browser","Opera Mobi":"OperaMobile",Yandex:"YaBrowser"},_n={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[lr,[sr,hn+"Chrome"]],[/webview.+edge\/([\w\.]+)/i],[lr,[sr,sn+" WebView"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[lr,[sr,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[sr,lr],[/opios[\/ ]+([\w\.]+)/i],[lr,[sr,cn+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[lr,[sr,cn+" GX"]],[/\bopr\/([\w\.]+)/i],[lr,[sr,cn]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[lr,[sr,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[lr,[sr,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser|palemoon)\/([-\w\.]+)/i,/(heytap|ovi|115|surf|qwant)browser\/([\d\.]+)/i,/(qwant)(?:ios|mobile)\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[sr,lr],[/quark(?:pc)?\/([-\w\.]+)/i],[lr,[sr,"Quark"]],[/\bddg\/([\w\.]+)/i],[lr,[sr,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[lr,[sr,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[lr,[sr,"WeChat"]],[/konqueror\/([\w\.]+)/i],[lr,[sr,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[lr,[sr,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[lr,[sr,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[lr,[sr,"Smart "+qr+dn]],[/(avast|avg)\/([\w\.]+)/i],[[sr,/(.+)/,"$1 Secure"+dn],lr],[/\bfocus\/([\w\.]+)/i],[lr,[sr,un+" Focus"]],[/\bopt\/([\w\.]+)/i],[lr,[sr,cn+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[lr,[sr,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[lr,[sr,"Dolphin"]],[/coast\/([\w\.]+)/i],[lr,[sr,cn+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[lr,[sr,"MIUI"+dn]],[/fxios\/([\w\.-]+)/i],[lr,[sr,hn+un]],[/\bqihoobrowser\/?([\w\.]*)/i],[lr,[sr,"360"]],[/\b(qq)\/([\w\.]+)/i],[[sr,/(.+)/,"$1Browser"],lr],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[sr,/(.+)/,"$1"+dn],lr],[/samsungbrowser\/([\w\.]+)/i],[lr,[sr,Yr+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[lr,[sr,fn+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[sr,fn+" Mobile"],lr],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[sr,lr],[/(lbbrowser|rekonq)/i],[sr],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[lr,sr],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[sr,ln],lr,[ur,kr]],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(bing)(?:web|sapphire)\/([\w\.]+)/i,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[sr,lr,[ur,kr]],[/\bgsa\/([\w\.]+) .*safari\//i],[lr,[sr,"GSA"],[ur,kr]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[lr,[sr,"TikTok"],[ur,kr]],[/\[(linkedin)app\]/i],[sr,[ur,kr]],[/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i],[[sr,/(.+)/,"Zalo"],lr,[ur,kr]],[/(chromium)[\/ ]([-\w\.]+)/i],[sr,lr],[/headlesschrome(?:\/([\w\.]+)| )/i],[lr,[sr,nn+" Headless"]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[lr,[sr,sn+" WebView2"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[sr,nn+" WebView"],lr],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[lr,[sr,"Android"+dn]],[/chrome\/([\w\.]+) mobile/i],[lr,[sr,hn+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[sr,lr],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[lr,[sr,hn+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[sr,hn+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[lr,sr],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[sr,[lr,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[sr,lr],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[sr,hn+un],lr],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[sr,"Netscape"],lr],[/(wolvic|librewolf)\/([\w\.]+)/i],[sr,lr],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[lr,[sr,un+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+(?= .+rv\:.+gecko\/\d+)|[0-4][\w\.]+(?!.+compatible))/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[sr,[lr,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[sr,[lr,/[^\d\.]+./,Xt]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[fr,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[fr,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[fr,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[fr,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[fr,"arm"]],[/ sun4\w[;\)]/i],[[fr,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,/((ppc|powerpc)(64)?)( mac|;|\))/i,/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i],[[fr,/ower/,Xt,Tn]],[/mc680.0/i],[[fr,"68k"]],[/winnt.+\[axp/i],[[fr,"alpha"]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[dr,[cr,Yr],[ur,vr]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[dr,[cr,Yr],[ur,gr]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i],[dr,[cr,Br],[ur,gr]],[/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,/\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i],[dr,[cr,Br],[ur,vr]],[/(macintosh);/i],[dr,[cr,Br]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[dr,[cr,Zr],[ur,gr]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[dr,[cr,Kr],[ur,vr]],[/honor([-\w ]+)[;\)]/i],[dr,[cr,Kr],[ur,gr]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[dr,[cr,Vr],[ur,vr]],[/(?:huawei) ?([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i],[dr,[cr,Vr],[ur,gr]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[dr,/_/g," "],[cr,tn],[ur,vr]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[dr,/_/g," "],[cr,tn],[ur,gr]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[dr,[cr,Xr],[ur,gr]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[dr,[cr,$r],[ur,gr]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[dr,[cr,On,{OnePlus:["203","304","403","404","413","415"],"*":$r}],[ur,vr]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[dr,[cr,"BLU"],[ur,gr]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[dr,[cr,"Vivo"],[ur,gr]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[dr,[cr,"Realme"],[ur,gr]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[dr,[cr,qr],[ur,vr]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[dr,[cr,qr],[ur,gr]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[dr,[cr,Jr],[ur,gr]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[dr,[cr,Jr],[ur,vr]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[dr,[cr,Qr],[ur,vr]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[dr,[cr,Qr],[ur,gr]],[/(nokia) (t[12][01])/i],[cr,dr,[ur,vr]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i],[[dr,/_/g," "],[ur,gr],[cr,"Nokia"]],[/(pixel (c|tablet))\b/i],[dr,[cr,Hr],[ur,vr]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[dr,[cr,Hr],[ur,gr]],[/(google) (pixelbook( go)?)/i],[cr,dr],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[dr,[cr,en],[ur,gr]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[dr,"Xperia Tablet"],[cr,en],[ur,vr]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[dr,[cr,Fr],[ur,vr]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[dr,/(.+)/g,"Fire Phone $1"],[cr,Fr],[ur,gr]],[/(playbook);[-\w\),; ]+(rim)/i],[dr,cr,[ur,vr]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/(?:blackberry|\(bb10;) (\w+)/i],[dr,[cr,zr],[ur,gr]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[dr,[cr,Mr],[ur,vr]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[dr,[cr,Mr],[ur,gr]],[/(nexus 9)/i],[dr,[cr,"HTC"],[ur,vr]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[cr,[dr,/_/g," "],[ur,gr]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[dr,[cr,"TCL"],[ur,vr]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[dr,[cr,"TCL"],[ur,gr]],[/(itel) ((\w+))/i],[[cr,Tn],dr,[ur,On,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[dr,[cr,"Acer"],[ur,vr]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[dr,[cr,"Meizu"],[ur,gr]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[dr,[cr,"Ulefone"],[ur,gr]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[dr,[cr,"Energizer"],[ur,gr]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[dr,[cr,"Cat"],[ur,gr]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[dr,[cr,"Smartfren"],[ur,gr]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[dr,[cr,"Nothing"],[ur,gr]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[dr,[cr,"Archos"],[ur,vr]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[dr,[cr,"Archos"],[ur,gr]],[/; (n159v)/i],[dr,[cr,"HMD"],[ur,gr]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[cr,dr,[ur,vr]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|hmd|imo|infinix|lava|oneplus|tcl|wiko)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i,/(hisense) ([ehv][\w ]+)\)/i,/droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i],[cr,dr,[ur,gr]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[cr,dr,[ur,vr]],[/(surface duo)/i],[dr,[cr,Wr],[ur,vr]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[dr,[cr,"Fairphone"],[ur,gr]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[dr,[cr,Gr],[ur,vr]],[/(sprint) (\w+)/i],[cr,dr,[ur,gr]],[/(kin\.[onetw]{3})/i],[[dr,/\./g," "],[cr,Wr],[ur,gr]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[dr,[cr,rn],[ur,vr]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[dr,[cr,rn],[ur,gr]],[/(philips)[\w ]+tv/i,/smart-tv.+(samsung)/i],[cr,[ur,mr]],[/hbbtv.+maple;(\d+)/i],[[dr,/^/,"SmartTV"],[cr,Yr],[ur,mr]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[cr,dr,[ur,mr]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[cr,Qr],[ur,mr]],[/(apple) ?tv/i],[cr,[dr,Br+" TV"],[ur,mr]],[/crkey.*devicetype\/chromecast/i],[[dr,an+" Third Generation"],[cr,Hr],[ur,mr]],[/crkey.*devicetype\/([^/]*)/i],[[dr,/^/,"Chromecast "],[cr,Hr],[ur,mr]],[/fuchsia.*crkey/i],[[dr,an+" Nest Hub"],[cr,Hr],[ur,mr]],[/crkey/i],[[dr,an],[cr,Hr],[ur,mr]],[/(portaltv)/i],[dr,[cr,ln],[ur,mr]],[/droid.+aft(\w+)( bui|\))/i],[dr,[cr,Fr],[ur,mr]],[/(shield \w+ tv)/i],[dr,[cr,Gr],[ur,mr]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[dr,[cr,Zr],[ur,mr]],[/(bravia[\w ]+)( bui|\))/i],[dr,[cr,en],[ur,mr]],[/(mi(tv|box)-?\w+) bui/i],[dr,[cr,tn],[ur,mr]],[/Hbbtv.*(technisat) (.*);/i],[cr,dr,[ur,mr]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[cr,/.+\/(\w+)/,"$1",On,{LG:"lge"}],[dr,Rn],[ur,mr]],[/(playstation \w+)/i],[dr,[cr,en],[ur,pr]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[dr,[cr,Wr],[ur,pr]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[cr,dr,[ur,pr]],[/droid.+; (shield)( bui|\))/i],[dr,[cr,Gr],[ur,pr]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[dr,[cr,Yr],[ur,wr]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[cr,dr,[ur,wr]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[dr,[cr,$r],[ur,wr]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[dr,[cr,Br],[ur,wr]],[/(opwwe\d{3})/i],[dr,[cr,Xr],[ur,wr]],[/(moto 360)/i],[dr,[cr,Jr],[ur,wr]],[/(smartwatch 3)/i],[dr,[cr,en],[ur,wr]],[/(g watch r)/i],[dr,[cr,Qr],[ur,wr]],[/droid.+; (wt63?0{2,3})\)/i],[dr,[cr,rn],[ur,wr]],[/droid.+; (glass) \d/i],[dr,[cr,Hr],[ur,yr]],[/(pico) ([\w ]+) os\d/i],[cr,dr,[ur,yr]],[/(quest( \d| pro)?s?).+vr/i],[dr,[cr,ln],[ur,yr]],[/mobile vr; rv.+firefox/i],[[ur,yr]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[cr,[ur,br]],[/(aeobc)\b/i],[dr,[cr,Fr],[ur,br]],[/(homepod).+mac os/i],[dr,[cr,Br],[ur,br]],[/windows iot/i],[[ur,br]],[/droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i],[dr,[ur,mr]],[/\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i],[[ur,mr]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i],[dr,[ur,On,{mobile:"Mobile",xr:"VR","*":vr}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[ur,vr]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[ur,gr]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[dr,[cr,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[lr,[sr,sn+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[sr,lr],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[lr,[sr,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[sr,lr],[/ladybird\//i],[[sr,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[lr,sr]],os:[[/(windows nt) (6\.[23]); arm/i],[[sr,/N/,"R"],[lr,On,In]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[sr,lr],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[lr,/(;|\))/g,"",On,In],[sr,pn]],[/(windows ce)\/?([\d\.]*)/i],[sr,lr],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w\.]+)/i,/cfnetwork\/.+darwin/i],[[lr,/_/g,"."],[sr,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[sr,"macOS"],[lr,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[lr,[sr,an+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[lr,[sr,an+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[lr,[sr,an+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[lr,[sr,an+" Linux"]],[/crkey\/([\d\.]+)/i],[lr,[sr,an]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[lr,sr],[/(ubuntu) ([\w\.]+) like android/i],[[sr,/(.+)/,"$1 Touch"],lr],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[sr,lr],[/\(bb(10);/i],[lr,[sr,zr]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[lr,[sr,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[lr,[sr,un+" OS"]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[lr,[sr,"webOS"]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[lr,On,{25:"120",24:"108",23:"94",22:"87",6:"79",5:"68",4:"53",3:"38",2:"538",1:"537","*":"TV"}],[sr,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[lr,[sr,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[sr,"Chrome OS"],lr],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[sr,lr],[/(sunos) ?([\d\.]*)/i],[[sr,"Solaris"],lr],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[sr,lr]]},Nn=(En.call((Jt={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}}).init,[[tr,[sr,lr,hr,ur]],[rr,[fr]],[nr,[ur,dr,cr]],[ir,[sr,lr]],[or,[sr,lr]]]),En.call(Jt.isIgnore,[[tr,[lr,hr]],[ir,[lr]],[or,[lr]]]),En.call(Jt.isIgnoreRgx,[[tr,/ ?browser$/i],[or,/ ?os$/i]]),En.call(Jt.toString,[[tr,[sr,lr]],[rr,[fr]],[nr,[cr,dr]],[ir,[sr,lr]],[or,[sr,lr]]]),Jt),Ln=function(e,t){var r=Nn.init[t],n=Nn.isIgnore[t]||0,i=Nn.isIgnoreRgx[t]||0,o=Nn.toString[t]||0;function a(){En.call(this,r)}return a.prototype.getItem=function(){return e},a.prototype.withClientHints=function(){return vn?vn.getHighEntropyValues(Ur).then(function(t){return e.setCH(new jn(t,!1)).parseCH().get()}):e.parseCH().get()},a.prototype.withFeatureCheck=function(){return e.detectFeature().get()},t!=ar&&(a.prototype.is=function(e){var t=!1;for(var r in this)if(this.hasOwnProperty(r)&&!wn(n,r)&&Tn(i?Pn(i,this[r]):this[r])==Tn(i?Pn(i,e):e)){if(t=!0,e!=er)break}else if(e==er&&t){t=!t;break}return t},a.prototype.toString=function(){var e=Xt;for(var t in o)E(this[o[t]])!==er&&(e+=(e?" ":Xt)+this[o[t]]);return e||er}),vn||(a.prototype.then=function(e){var t=this,r=function(){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e])};r.prototype={is:a.prototype.is,toString:a.prototype.toString};var n=new r;return e(n),n}),new a};function jn(e,t){if(e=e||{},En.call(this,Ur),t)En.call(this,[[Tr,kn(e[Cr])],[Er,kn(e[Or])],[gr,/\?1/.test(e[_r])],[dr,xn(e[Nr])],[Pr,xn(e[Lr])],[xr,xn(e[jr])],[fr,xn(e[Ir])],[Sr,kn(e[Dr])],[Rr,xn(e[Ar])]]);else for(var r in e)this.hasOwnProperty(r)&&E(e[r])!==er&&(this[r]=e[r])}function Un(e,t,r,n){return this.get=function(e){return e?this.data.hasOwnProperty(e)?this.data[e]:void 0:this.data},this.set=function(e,t){return this.data[e]=t,this},this.setCH=function(e){return this.uaCH=e,this},this.detectFeature=function(){if(gn&&gn.userAgent==this.ua)switch(this.itemType){case tr:gn.brave&&E(gn.brave.isBrave)==$t&&this.set(sr,"Brave");break;case nr:!this.get(ur)&&vn&&vn[gr]&&this.set(ur,gr),"Macintosh"==this.get(dr)&&gn&&E(gn.standalone)!==er&&gn.maxTouchPoints&&gn.maxTouchPoints>2&&this.set(dr,"iPad").set(ur,vr);break;case or:!this.get(sr)&&vn&&vn[Pr]&&this.set(sr,vn[Pr]);break;case ar:var e=this.data,t=function(t){return e[t].getItem().detectFeature().get()};this.set(tr,t(tr)).set(rr,t(rr)).set(nr,t(nr)).set(ir,t(ir)).set(or,t(or))}return this},this.parseUA=function(){switch(this.itemType!=ar&&Cn.call(this.data,this.ua,this.rgxMap),this.itemType){case tr:this.set(hr,Sn(this.get(lr)));break;case or:if("iOS"==this.get(sr)&&"18.6"==this.get(lr)){var e=/\) Version\/([\d\.]+)/.exec(this.ua);e&&parseInt(e[1].substring(0,2),10)>=26&&this.set(lr,e[1])}}return this},this.parseCH=function(){var e=this.uaCH,t=this.rgxMap;switch(this.itemType){case tr:case ir:var r,n=e[Er]||e[Tr];if(n)for(var i=0;i<n.length;i++){var o=n[i].brand||n[i],a=n[i].version;this.itemType==tr&&!/not.a.brand/i.test(o)&&(!r||/Chrom/.test(r)&&o!=on||r==sn&&/WebView2/.test(o))&&(o=On(o,Dn),(r=this.get(sr))&&!/Chrom/.test(r)&&/Chrom/.test(o)||this.set(sr,o).set(lr,a).set(hr,Sn(a)),r=o),this.itemType==ir&&o==on&&this.set(lr,a)}break;case rr:var s=e[fr];s&&(s&&"64"==e[Rr]&&(s+="64"),Cn.call(this.data,s+";",t));break;case nr:if(e[gr]&&this.set(ur,gr),e[dr]&&(this.set(dr,e[dr]),!this.get(ur)||!this.get(cr))){var u={};Cn.call(u,"droid 9; "+e[dr]+")",t),!this.get(ur)&&u.type&&this.set(ur,u.type),!this.get(cr)&&u.vendor&&this.set(cr,u.vendor)}if(e[Sr]){var c;if("string"!=typeof e[Sr])for(var l=0;!c&&l<e[Sr].length;)c=On(e[Sr][l++],An);else c=On(e[Sr],An);this.set(ur,c)}break;case or:var f=e[Pr];if(f){var h=e[xr];f==pn&&(h=parseInt(Sn(h),10)>=13?"11":"10"),this.set(sr,f).set(lr,h)}this.get(sr)==pn&&"Xbox"==e[dr]&&this.set(sr,"Xbox").set(lr,void 0);break;case ar:var d=this.data,p=function(t){return d[t].getItem().setCH(e).parseCH().get()};this.set(tr,p(tr)).set(rr,p(rr)).set(nr,p(nr)).set(ir,p(ir)).set(or,p(or))}return this},En.call(this,[["itemType",e],["ua",t],["uaCH",n],["rgxMap",r],["data",Ln(this,e)]]),this}function Fn(e,t,r){if(E(e)===Yt?(yn(e,!0)?(E(t)===Yt&&(r=t),t=e):(r=e,t=void 0),e=void 0):E(e)!==Zt||yn(t,!0)||(r=t,t=void 0),r)if(E(r.append)===$t){var n={};r.forEach(function(e,t){n[String(t).toLowerCase()]=e}),r=n}else{var i={};for(var o in r)r.hasOwnProperty(o)&&(i[String(o).toLowerCase()]=r[o]);r=i}if(!(this instanceof Fn))return new Fn(e,t,r).getResult();var a=E(e)===Zt?e:r&&r[Gt]?r[Gt]:gn&&gn.userAgent?gn.userAgent:Xt,s=new jn(r,!0),u=t?function(e,t){var r={},n=t;if(!yn(t))for(var i in n={},t)for(var o in t[i])n[o]=t[i][o].concat(n[o]?n[o]:[]);for(var a in e)r[a]=n[a]&&n[a].length%2==0?n[a].concat(e[a]):e[a];return r}(_n,t):_n,c=function(e){return e==ar?function(){return new Un(e,a,u,s).set("ua",a).set(tr,this.getBrowser()).set(rr,this.getCPU()).set(nr,this.getDevice()).set(ir,this.getEngine()).set(or,this.getOS()).get()}:function(){return new Un(e,a,u[e],s).parseUA().get()}};return En.call(this,[["getBrowser",c(tr)],["getCPU",c(rr)],["getDevice",c(nr)],["getEngine",c(ir)],["getOS",c(or)],["getResult",c(ar)],["getUA",function(){return a}],["setUA",function(e){return bn(e)&&(a=Rn(e,500)),this}]]).setUA(a),this}Fn.VERSION="2.0.6",Fn.BROWSER=mn([sr,lr,hr,ur]),Fn.CPU=mn([fr]),Fn.DEVICE=mn([dr,cr,ur,pr,gr,mr,vr,wr,br]),Fn.ENGINE=Fn.OS=mn([sr,lr]);var Bn="undefined"!=typeof performance&&"function"==typeof performance.now?function(){return performance.now()}:function(){return Date.now()};function Mn(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"0",n=String(e);if(n.length<t){for(var i=n,o=0;o<t-n.length;o+=1)i=r+i;return i}return n}function zn(){for(var e=new Date,t=parseInt("".concat(e.getFullYear()).concat(Mn(e.getMonth()+1,2)).concat(Mn(e.getDate(),2)),10).toString(16),r=parseInt("".concat(Mn(e.getHours(),2)).concat(Mn(e.getMinutes(),2)).concat(Mn(e.getSeconds(),2)).concat(Mn(e.getMilliseconds(),3)),10).toString(16),n=t+r.length+r;n.length<32;)n+=Math.floor(16*Math.random()).toString(16);return"".concat(n.slice(0,8),"-").concat(n.slice(8,16),"-").concat(n.slice(16))}var Hn=0;function Vn(){var e=Date.now().toString(36).slice(-8).padStart(8,"0");Hn=(Hn+1)%46656;var t=Math.floor(36*Math.random());return e+(Hn.toString(36).padStart(2,"0")+t.toString(36)).padStart(4,"0").slice(-4)}var qn,Kn=function(){return function(){if("undefined"!=typeof WeixinJSBridge)return!0;var e=navigator.userAgent.toLowerCase();return!(-1===e.indexOf("micromessenger")&&"micromessenger"!=e.match(/MicroMessenger/i))}()?"WECHAT":-1!==(e=navigator.userAgent.toLowerCase()).indexOf("alipay")||"alipay"==e.match(/Alipay/i)?"ALIPAY":"OTHER";var e},Qn=function(e){var t=e.indexOf("#");return-1===t?"":e.slice(t+1).replace(/^\//,"").split("?")[0]},Wn=function(e,t){return["HONGSHUN"].includes(t)&&"chargeMoney"===e&&window.location.href.indexOf("showMoney=false")>-1?"EQUITY":{login:"LOGIN",buyPkgListNew:"BUY_LIST",cardDetailInfo:"CARD_DETAIL",flowSettle:"SETTLEMENT",chargeMoney:"WALLET",payOrderDetail:"ORDER_DETAIL"}[e]||e},Jn=function(){var e=navigator.userAgent.toLowerCase();return/android|adr/.test(e)?"Android":/iphone|ipad|ipod|ios/.test(e)?"iOS":"其他"},Gn=function(e){try{return new Fn(e||("undefined"!=typeof navigator?navigator.userAgent:"")).getResult()}catch(e){return console.warn("UAParser 解析失败:",e),{ua:"undefined"!=typeof navigator?navigator.userAgent:"",browser:{},engine:{},os:{name:Jn()},device:{},cpu:{}}}},Xn=function(e){try{var t,r=Gn(e);if(null!=r&&null!==(t=r.os)&&void 0!==t&&t.version)return r.os.version;var n=e||("undefined"!=typeof navigator?navigator.userAgent:""),i=n.match(/OS\s+(\d+)[_.](\d+)/i);if(i)return"".concat(i[1],".").concat(i[2]);var o=n.match(/Android\s+([\d.]+)/i);return o?o[1]:null}catch(e){return console.warn("获取系统版本失败:",e),null}},$n=function(){return f(function e(t){c(this,e),this.config=t,this.isReporting=!1},[{key:"report",value:(h=s(w().m(function e(t,r){var n,i;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:if(this.config.getConfig().debugSwitch&&console.log("report----------",t,r),e.p=1,n=this.formatReportData(t,r),!this.config.getConfig().customReport){e.n=3;break}return e.n=2,this.config.getConfig().customReport(t,n);case 2:e.n=4;break;case 3:return e.n=4,this.defaultReport(t,n);case 4:e.n=6;break;case 5:e.p=5,i=e.v,console.error("上报失败:",i),this.config.getConfig().debugSwitch&&console.error("上报失败详情:",{type:t,error:i.message,stack:i.stack});case 6:return e.a(2)}},e,this,[[1,5]])})),function(e,t){return h.apply(this,arguments)})},{key:"getDeviceInfo",value:function(){return{screen:{width:screen.width,height:screen.height,availWidth:screen.availWidth,availHeight:screen.availHeight,colorDepth:screen.colorDepth,pixelDepth:screen.pixelDepth},viewport:{width:window.innerWidth,height:window.innerHeight},connection:navigator.connection?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,memory:navigator.memory?{usedJSHeapSize:navigator.memory.usedJSHeapSize,totalJSHeapSize:navigator.memory.totalJSHeapSize,jsHeapSizeLimit:navigator.memory.jsHeapSizeLimit}:null}}},{key:"formatReportData",value:function(e,t){var r,n,i,o,a={sessionId:this.config.getConfig().sessionId||"",channel:Kn(),uiVer:this.config.getConfig().uiVersion,osType:(o=Gn(),function(e){return null===e}(n=null==o?void 0:o.os)||function(e){return void 0===e}(n)||""===n?Jn():["iOS","Android"].includes(null==o||null===(r=o.os)||void 0===r?void 0:r.name)?(console.log("parseagernt--",null==o?void 0:o.os),null==o||null===(i=o.os)||void 0===i?void 0:i.name):"其他"),osVersion:Xn(),screenWidth:screen.width,screenHeight:screen.height,windowInnerWidth:window.innerWidth,windowInnerHeight:window.innerHeight,netType:navigator.connection?navigator.connection.effectiveType:"",tags:{customerId:this.config.getConfig().customerId,deviceId:this.config.getConfig().deviceId,deviceNo:this.config.getConfig().deviceNo,userId:this.config.getConfig().userId}},s=Array.isArray(t)?t:[t];return s.forEach(function(e){var t=Object.assign({},a.tags||{},e&&e.tags||{});Object.assign(e,a),Object.keys(t).length>0&&(e.tags=t)}),s}},{key:"defaultReport",value:(l=s(w().m(function e(t,r){var n,i;return w().w(function(e){for(;;)switch(e.n){case 0:if(n=this.config.getReportUrl(),i=this.config.getThirdPartyConfig(),!n){e.n=1;break}return e.n=1,this.reportToBackend(n,r);case 1:if(!(i&&Object.keys(i).length>0)){e.n=2;break}return e.n=2,this.reportToThirdParty(i,r);case 2:return e.a(2)}},e,this)})),function(e,t){return l.apply(this,arguments)})},{key:"reportToBackend",value:(u=s(w().m(function e(t,r){var n,i;return w().w(function(e){for(;;)switch(e.n){case 0:if(!navigator.sendBeacon||this.isObjectOverSizeLimit(r,60)){e.n=3;break}if((n=new FormData).append("events",JSON.stringify(r)),i=navigator.sendBeacon(t,n),this.config.getConfig().debugSwitch&&console.log("上报数据:",t,r),i){e.n=2;break}return e.n=1,this.reportViaAxios(t,n);case 1:case 4:return e.a(2,e.v);case 2:e.n=5;break;case 3:return this.config.getConfig().debugSwitch&&console.warn("浏览器不支持 sendBeacon,使用 axios"),e.n=4,this.reportViaAxios(t,r);case 5:return e.a(2)}},e,this)})),function(e,t){return u.apply(this,arguments)})},{key:"reportViaAxios",value:(a=s(w().m(function e(t,r){var n,i;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,Wt.post(t,r);case 1:return n=e.v,e.a(2,n.data);case 2:e.p=2,i=e.v,console.error("后端上报失败:",i);case 3:return e.a(2)}},e,null,[[0,2]])})),function(e,t){return a.apply(this,arguments)})},{key:"reportToThirdParty",value:(o=s(w().m(function e(t,r){var n,i;return w().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=[],t.baidu&&window._hmt&&n.push(this.reportToBaidu(t.baidu,r)),t.umeng&&window._um&&n.push(this.reportToUmeng(t.umeng,r)),t.sensors&&window.sensors&&n.push(this.reportToSensors(t.sensors,r)),t.tencent&&window.MTA&&n.push(this.reportToTencent(t.tencent,r)),t.custom&&n.push(this.reportToCustom(t.custom,r)),e.p=1,e.n=2,Promise.allSettled(n);case 2:e.n=4;break;case 3:e.p=3,i=e.v,console.error("第三方上报失败:",i);case 4:return e.a(2)}},e,this,[[1,3]])})),function(e,t){return o.apply(this,arguments)})},{key:"reportToBaidu",value:(i=s(w().m(function e(t,r){return w().w(function(e){for(;;)switch(e.n){case 0:window._hmt&&window._hmt.push(["_trackEvent",r.type,JSON.stringify(r.data)]);case 1:return e.a(2)}},e)})),function(e,t){return i.apply(this,arguments)})},{key:"reportToUmeng",value:(n=s(w().m(function e(t,r){return w().w(function(e){for(;;)switch(e.n){case 0:window._um&&window._um.push(["track",r.type,r.data]);case 1:return e.a(2)}},e)})),function(e,t){return n.apply(this,arguments)})},{key:"reportToSensors",value:(r=s(w().m(function e(t,r){return w().w(function(e){for(;;)switch(e.n){case 0:window.sensors&&window.sensors.track(r.type,r.data[0]||{});case 1:return e.a(2)}},e)})),function(e,t){return r.apply(this,arguments)})},{key:"reportToTencent",value:(t=s(w().m(function e(t,r){return w().w(function(e){for(;;)switch(e.n){case 0:window.MTA&&window.MTA.Event.stat(r.type,r.data[0]||{});case 1:return e.a(2)}},e)})),function(e,r){return t.apply(this,arguments)})},{key:"reportToCustom",value:(e=s(w().m(function e(t,r){return w().w(function(e){for(;;)switch(e.n){case 0:if("function"!=typeof t.report){e.n=1;break}return e.n=1,t.report(r);case 1:return e.a(2)}},e)})),function(t,r){return e.apply(this,arguments)})},{key:"isObjectOverSizeLimit",value:function(e,t){var r=JSON.stringify(e);return(new TextEncoder).encode(r).length/1024>t}}]);var e,t,r,n,i,o,a,u,l,h}(),Yn=function(){return f(function e(t){c(this,e),this.config=t,this.reporter=new $n(t),this.errorQueue=[],this.isInitialized=!1,this.reportTimer=null,this.errorCache=new Map,this.errorCacheTimeout=5e3,this.maxCacheSize=100,this.errorFingerprint=this.createErrorFingerprint.bind(this),this.errorTimeout=null,this.resourceErrorTimeout=null,this.lastResourceError=null},[{key:"createErrorFingerprint",value:function(e,t){var r=(null==e?void 0:e.message)||(null==e?void 0:e.toString())||e,n=(null==e?void 0:e.stack)||t.stack,i=t.type||"unknown",o=window.location.href;return"".concat(i,":").concat(r,":").concat(o,":").concat(n?n.split("\n")[0]:"")}},{key:"isDuplicateError",value:function(e,t){var r=this.errorFingerprint(e,t),n=Date.now();if((this.cleanupErrorCache(n),this.errorCache.has(r))&&n-this.errorCache.get(r)<this.errorCacheTimeout)return!0;if(this.errorCache.set(r,n),this.errorCache.size>this.maxCacheSize){var i=this.errorCache.keys().next().value;this.errorCache.delete(i)}return!1}},{key:"cleanupErrorCache",value:function(e){var t,r=h(this.errorCache.entries());try{for(r.s();!(t=r.n()).done;){var n=k(t.value,2),i=n[0];e-n[1]>this.errorCacheTimeout&&this.errorCache.delete(i)}}catch(e){r.e(e)}finally{r.f()}}},{key:"init",value:function(){if(!this.isInitialized){var e=this.config.getConfig();(e.enableErrorTracking||e.enableResourceError)&&this.setupErrorListener(),e.enableUnhandledRejection&&this.setupUnhandledRejectionListener(),e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}}},{key:"setupPeriodicReport",value:function(){var e=this,t=this.config.getConfig().reportInterval;t>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(function(){e.flushErrorQueue()},t))}},{key:"setupErrorListener",value:function(){var e=this;window.addEventListener("error",function(t){t.target&&t.target!==window?e.handleResourceError(t):e.handleJavaScriptError(t)},!0)}},{key:"handleJavaScriptError",value:function(e){var t=this;this.errorTimeout&&clearTimeout(this.errorTimeout),this.errorTimeout=setTimeout(function(){var r;t.handleError(e.error||e.message,{type:"javascript",filename:e.filename,lineno:e.lineno,colno:e.colno,stack:null===(r=e.error)||void 0===r?void 0:r.stack})},100)}},{key:"handleResourceError",value:function(e){var t=this,r="".concat(e.target.tagName,":").concat(e.target.src||e.target.href);this.lastResourceError!==r?(this.lastResourceError=r,this.resourceErrorTimeout&&clearTimeout(this.resourceErrorTimeout),this.resourceErrorTimeout=setTimeout(function(){t.handleError("Resource load failed: ".concat(e.target.src||e.target.href),{type:"resource",tagName:e.target.tagName,src:e.target.src,href:e.target.href}),setTimeout(function(){t.lastResourceError=null},2e3)},100)):this.config.getConfig().debugSwitch&&console.log("忽略重复的资源加载错误:",r)}},{key:"setupUnhandledRejectionListener",value:function(){var e=this,t=null,r=null;window.addEventListener("unhandledrejection",function(n){var i,o,a="".concat((null===(i=n.reason)||void 0===i?void 0:i.message)||n.reason,":").concat((null===(o=n.reason)||void 0===o?void 0:o.stack)||"");r!==a?(r=a,t&&clearTimeout(t),t=setTimeout(function(){var t;e.handleError(n.reason,{type:"unhandledrejection",stack:null===(t=n.reason)||void 0===t?void 0:t.stack}),setTimeout(function(){r=null},1e3)},100)):e.config.getConfig().debugSwitch&&console.log("忽略重复的 Promise 拒绝:",n.reason)})}},{key:"handleError",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.isDuplicateError(e,t))this.config.getConfig().debugSwitch&&console.log("忽略重复错误:",(null==e?void 0:e.message)||e);else{var r=this.parseStack(e),n=m({message:(null==e?void 0:e.message)||(null==e?void 0:e.toString())||e,stack:(null==e?void 0:e.stack)||t.stack,type:t.type||"unknown",timestamp:Date.now(),url:window.location.href,userAgent:navigator.userAgent,fileName:r.fileName,lineNumber:r.lineNumber,columnNumber:r.columnNumber,functionName:r.functionName,stackFrames:r.stackFrames},t);this.errorQueue.push(n),0===this.config.getConfig().reportInterval?this.reporter.report("error",[n]):this.errorQueue.length>=this.config.getConfig().maxQueueSize&&this.flushErrorQueue()}}},{key:"parseStack",value:function(e){var t=(null==e?void 0:e.stack)||"",r=(null==e?void 0:e.message)||(null==e?void 0:e.toString())||"",n={errMessage:r,errStack:t,fileName:"",lineNumber:"",columnNumber:"",functionName:"",stackFrames:[]};if(!t)return n;try{var i=/^\s*at\s+([^(]+?)\s+\((.+?):(\d+):(\d+)\)$/,o=/^\s*at\s+(.+?):(\d+):(\d+)$/,a=/^\s*([^@]*)@(.+?):(\d+):(\d+)$/,s=t;if(r&&t.startsWith(r))s=t.substring(r.length).replace(/^\n+/,"");else if(t.includes("\n")){var u=t.split("\n");!u[0]||u[0].trim().startsWith("at")||u[0].includes("@")||(s=u.slice(1).join("\n"))}var c,l=s.split("\n").filter(function(e){return e.trim()}),f=[],d=h(l);try{for(d.s();!(c=d.n()).done;){var p=c.value,g=null,v=p.match(i);v?g={functionName:v[1].trim(),fileName:v[2],lineNumber:parseInt(v[3]),columnNumber:parseInt(v[4])}:(v=p.match(o))?g={functionName:"",fileName:v[1],lineNumber:parseInt(v[2]),columnNumber:parseInt(v[3])}:(v=p.match(a))&&(g={functionName:v[1].trim(),fileName:v[2],lineNumber:parseInt(v[3]),columnNumber:parseInt(v[4])}),g&&f.push(g)}}catch(e){d.e(e)}finally{d.f()}if(f.length>0){var m=f[0];n.fileName=m.fileName,n.lineNumber=m.lineNumber,n.columnNumber=m.columnNumber,n.functionName=m.functionName}n.stackFrames=f}catch(e){var w;null!==(w=this.config)&&void 0!==w&&null!==(w=w.getConfig())&&void 0!==w&&w.debugSwitch&&console.warn("解析堆栈失败:",e)}return n}},{key:"reportError",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.handleError(e,t)}},{key:"flushErrorQueue",value:function(){this.errorQueue.length>0&&(this.reporter.report("error",T(this.errorQueue)),this.errorQueue=[])}},{key:"destroy",value:function(){this.config.getConfig().reportInterval>0&&this.flushErrorQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.isInitialized=!1}}])}(),Zn=function(){return f(function e(t){c(this,e),this.config=t,this.reporter=new $n(t),this.eventQueue=[],this.isInitialized=!1,this.clickListener=null,this.pageViewListener=null,this.reportTimer=null,this.originalPushState=null,this.originalReplaceState=null,this.pageHistory=[],this.currentPage=null,this.currentPageStartTime=Date.now(),this.previousPage=null,this.previousPageStayTime=0},[{key:"init",value:function(){var e=this;if(!this.isInitialized){var t=this.config.getConfig();this.currentPage={url:window.location.href,title:document.title,enterTime:Date.now(),referrer:document.referrer},this.currentPageStartTime=Date.now(),t.enableClickTracking&&this.setupClickTracking(),t.enablePageViewTracking&&this.setupPageViewTracking(),window.addEventListener("beforeunload",function(){e.handlePageUnload()}),document.addEventListener("visibilitychange",function(){}),this.config.getConfig().reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}}},{key:"handlePageUnload",value:function(){if(this.currentPage){var e=Date.now()-this.currentPageStartTime;this.previousPage=m(m({},this.currentPage),{},{stayTime:e,leaveTime:Date.now()}),this.previousPageStayTime=e}}},{key:"setupClickTracking",value:function(){var e=this;this.clickListener=function(t){var r,n=t.target,i={type:"click",timestamp:Date.now(),url:window.location.href,element:{tagName:n.tagName,className:n.className,id:n.id,text:null===(r=n.textContent)||void 0===r?void 0:r.substring(0,50)},position:{x:t.clientX,y:t.clientY}};e.handleEvent("click",i)},document.addEventListener("click",this.clickListener,!0)}},{key:"setupPageViewTracking",value:function(){var e=this,t=this.config.getConfig().pageViewTracking||{},r=window.location.href,n=Date.now(),i=t.debounce||100;this.pageViewListener=function(){var t=window.location.href,o=Date.now();t===r&&o-n<i&&e.config.getConfig().debugSwitch?console.log("忽略重复的页面浏览事件:",t):(e.handlePageChange(t,o),r=t,n=o,e.handleEvent("pageview",{uuid:Vn(),timestamp:o,pageKey:Wn(Qn(t),e.config.getConfig().uiVersion),pageUri:Qn(t),eventType:"VIEW"}))},!1!==t.listenPopstate&&window.addEventListener("popstate",this.pageViewListener),!1!==t.listenHistoryAPI&&(this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState,history.pushState=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];this.originalPushState.apply(history,r),setTimeout(function(){e.pageViewListener()},0)}.bind(this),history.replaceState=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];this.originalReplaceState.apply(history,r),setTimeout(function(){e.pageViewListener()},0)}.bind(this)),t.vueRouterMode&&(this.config.getConfig().debugSwitch&&console.log("Vue Router 模式:页面浏览追踪已优化"),this.pageViewListener())}},{key:"setupPeriodicReport",value:function(){var e=this,t=this.config.getConfig().reportInterval;t>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(function(){e.flushEventQueue()},t))}},{key:"handlePageChange",value:function(e,t){if(this.currentPage){var r=t-this.currentPageStartTime;this.previousPage=m(m({},this.currentPage),{},{stayTime:r,leaveTime:t}),this.previousPageStayTime=r,this.pageHistory.push(m({},this.previousPage)),this.pageHistory.length>20&&this.pageHistory.shift(),this.config.getConfig().debugSwitch&&console.log("页面切换: ".concat(this.currentPage.url," → ").concat(e,",停留时间: ").concat(r,"ms"))}this.currentPage={url:e,title:document.title,enterTime:t,referrer:document.referrer},this.currentPageStartTime=t}},{key:"getPreviousPageInfo",value:function(){return{previousPage:this.previousPage?{url:this.previousPage.url,title:this.previousPage.title,stayTime:this.previousPageStayTime}:null,previousPageStayTime:this.previousPageStayTime}}},{key:"getCurrentPageStayTime",value:function(){return this.currentPageStartTime?Date.now()-this.currentPageStartTime:0}},{key:"handleEvent",value:function(e,t){var r,n=this.getPreviousPageInfo(),i=m(m({},t),{},{tags:{refer:Qn(null==n||null===(r=n.previousPage)||void 0===r?void 0:r.url),duration:null==n?void 0:n.previousPageStayTime}});this.eventQueue.push(i),this.config.getConfig().debugSwitch&&console.log("eventInfo----",i),0===this.config.getConfig().reportInterval?this.reporter.report("event",[i]):this.eventQueue.length>=this.config.getConfig().maxQueueSize&&this.flushEventQueue()}},{key:"reportEvent",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=d({uuid:Vn(),timestamp:Date.now(),pageKey:Wn(Qn(window.location.href),this.config.getConfig().uiVersion),pageUri:Qn(window.location.href),eventType:"CLICK",tags:t},"tags",{actionKey:e});this.handleEvent(e,r)}},{key:"flushEventQueue",value:function(){this.eventQueue.length>0&&(this.reporter.report("event",T(this.eventQueue)),this.eventQueue=[])}},{key:"destroy",value:function(){this.flushEventQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.clickListener&&(document.removeEventListener("click",this.clickListener,!0),this.clickListener=null),this.pageViewListener&&(window.removeEventListener("popstate",this.pageViewListener),this.pageViewListener=null),this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.isInitialized=!1}}])}(),ei=function(){return f(function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;c(this,e),this.config=t,this.reporter=new $n(t),this.eventTracker=r,this.isInitialized=!1,this.pageStartTime=Date.now(),this.performanceQueue=[],this.thirdPartySDKs={},this.reportTimer=null,this.currentRoute=null,this.routeStartTime=Date.now(),this.routeHistory=[],this.vueRouter=null,this.metrics={fcp:0,lcp:0,fid:0,cls:0,ttfb:0,domLoad:0,windowLoad:0,resourceLoad:[],apiRequests:[],pageStayTime:0,previousPageUrl:"",currentPageUrl:""}},[{key:"init",value:function(){if(!this.isInitialized){var e=this.config.getConfig();e.enablePerformanceTracking&&this.setupPerformanceMonitoring(),e.enableResourceTracking&&this.setupResourceMonitoring(),e.enableApiTracking&&this.setupApiMonitoring(),e.enableInteractionTracking&&this.setupInteractionMonitoring(),this.initThirdPartySDKs(),e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}}},{key:"setupPeriodicReport",value:function(){var e=this,t=this.config.getConfig().reportInterval;t>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(function(){e.flushPerformanceQueue()},t))}},{key:"setupVueRouterMonitoring",value:function(e){var t=this;e&&!this.vueRouter&&(this.vueRouter=e,this.currentRoute=e.currentRoute.value,e.beforeEach(function(e,r,n){r.name&&t.handleRouteLeave(r,e),n()}),e.afterEach(function(e,r){t.handleRouteEnter(e,r)}),e.beforeResolve(function(e,r,n){r.name&&t.calculateRouteStayTime(r),n()}))}},{key:"handleRouteLeave",value:function(e,t){var r=Date.now()-this.routeStartTime;this.recordRouteStayTime(e,r),this.currentRoute=e,this.routeStartTime=Date.now()}},{key:"handleRouteEnter",value:function(e,t){this.routeStartTime=Date.now(),this.currentRoute=e,this.recordRouteEnter(e,t)}},{key:"recordRouteStayTime",value:function(e,t){var r,n={name:e.name||"unknown",path:e.path,fullPath:e.fullPath,stayTime:t,enterTime:this.routeStartTime,leaveTime:Date.now(),params:e.params,query:e.query,meta:e.meta};this.routeHistory.push(n),this.metrics.pageStayTime=t,this.metrics.previousPageUrl=e.name,this.reportRouteStayTime(n),null!==(r=this.config)&&void 0!==r&&null!==(r=r.config)&&void 0!==r&&r.debugSwitch&&console.log("路由数据",n)}},{key:"recordRouteEnter",value:function(e,t){var r;e.name,e.path,e.fullPath,Date.now(),e.params,e.query,e.meta,t&&(t.name,t.path),this.metrics.currentPageUrl=e.name,null!==(r=this.config)&&void 0!==r&&null!==(r=r.config)&&void 0!==r&&r.debugSwitch&&console.log("进入路由: ".concat(e.name||e.path))}},{key:"calculateRouteStayTime",value:function(e){return this.routeStartTime?Date.now()-this.routeStartTime:0}},{key:"reportRouteStayTime",value:function(e){var t={type:"route_stay_time",timestamp:Date.now(),route:e,user:this.config.getUser(),device:this.getDeviceInfo()};this.reporter.report("route_performance",[t])}},{key:"getCurrentRoute",value:function(){return this.currentRoute}},{key:"getRouteHistory",value:function(){return T(this.routeHistory)}},{key:"getCurrentPageStayTime",value:function(){return this.routeStartTime?Date.now()-this.routeStartTime:0}},{key:"getRoutePerformanceStats",value:function(){var e={totalRoutes:this.routeHistory.length,averageStayTime:0,routesByPath:new Map,totalStayTime:0};return this.routeHistory.length>0&&(this.routeHistory.forEach(function(t){e.totalStayTime+=t.stayTime,e.routesByPath.has(t.path)||e.routesByPath.set(t.path,{count:0,totalStayTime:0,averageStayTime:0});var r=e.routesByPath.get(t.path);r.count++,r.totalStayTime+=t.stayTime,r.averageStayTime=r.totalStayTime/r.count}),e.averageStayTime=e.totalStayTime/e.totalRoutes),e}},{key:"setupPerformanceMonitoring",value:function(){var e=this;"loading"===document.readyState?document.addEventListener("DOMContentLoaded",function(){e.captureDOMLoadTime()}):this.captureDOMLoadTime(),window.addEventListener("load",function(){e.captureWindowLoadTime(),e.captureWebVitals(),e.reportPerformanceMetrics()})}},{key:"setupResourceMonitoring",value:function(){var e=this;if("undefined"!=typeof window&&"PerformanceObserver"in window){var t=new PerformanceObserver(function(t){var r,n=h(t.getEntries());try{for(n.s();!(r=n.n()).done;){var i=r.value;"resource"===i.entryType&&e.handleResourceLoad(i)}}catch(e){n.e(e)}finally{n.f()}});try{t.observe({entryTypes:["resource"]})}catch(e){this.setupResourceFallback()}}}},{key:"setupApiMonitoring",value:function(){var e=this;void 0!==window.axios&&(window.axios.interceptors.request.use(function(e){return e._startTime=Bn(),e}),window.axios.interceptors.response.use(function(t){var r=Bn()-t.config._startTime;return e.handleApiRequest(t.config.url,r,t.status),t},function(t){if(t.config){var r=Bn()-t.config._startTime;e.handleApiRequest(t.config.url,r,"error")}throw t}))}},{key:"setupInteractionMonitoring",value:function(){var e=this,t=0,r=0,n=function(i){0===t&&(t=Bn(),r=t-e.metrics.fcp,e.metrics.fid=r,document.removeEventListener("click",n,!0),document.removeEventListener("keydown",n,!0),document.removeEventListener("touchstart",n,!0))};document.addEventListener("click",n,!0),document.addEventListener("keydown",n,!0),document.addEventListener("touchstart",n,!0)}},{key:"captureDOMLoadTime",value:function(){this.metrics.domLoad=Bn()}},{key:"captureWindowLoadTime",value:function(){this.metrics.windowLoad=Bn()}},{key:"captureWebVitals",value:function(){var e=this;if("undefined"!=typeof window&&"PerformanceObserver"in window)try{new PerformanceObserver(function(t){var r,n=h(t.getEntries());try{for(n.s();!(r=n.n()).done;){var i,o=r.value;if("first-contentful-paint"===o.name)e.metrics.fcp=o.startTime,null!==(i=e.config)&&void 0!==i&&null!==(i=i.config)&&void 0!==i&&i.debugSwitch&&console.log("FCP:",o.startTime)}}catch(e){n.e(e)}finally{n.f()}}).observe({type:"paint",buffered:!0})}catch(e){console.warn("FCP监控失败:",e)}if("undefined"!=typeof window&&"PerformanceObserver"in window)try{new PerformanceObserver(function(t){var r,n=h(t.getEntries());try{for(n.s();!(r=n.n()).done;){var i=r.value;e.metrics.lcp=i.startTime}}catch(e){n.e(e)}finally{n.f()}}).observe({entryTypes:["largest-contentful-paint"]})}catch(e){console.warn("LCP监控失败:",e)}if("undefined"!=typeof window&&"PerformanceObserver"in window)try{var t=0;new PerformanceObserver(function(r){var n,i=h(r.getEntries());try{for(i.s();!(n=i.n()).done;){var o=n.value;o.hadRecentInput||(t+=o.value)}}catch(e){i.e(e)}finally{i.f()}e.metrics.cls=t}).observe({entryTypes:["layout-shift"]})}catch(e){console.warn("CLS监控失败:",e)}}},{key:"handleResourceLoad",value:function(e){var t={name:e.name,type:e.initiatorType,duration:e.duration,size:e.transferSize,timestamp:Date.now()};this.metrics.resourceLoad.push(t),e.duration>3e3&&this.reportSlowResource(t)}},{key:"handleApiRequest",value:function(e,t,r){this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&this.eventTracker.getPreviousPageInfo();var n={interfaceUrl:"string"==typeof e?e:e.toString(),interfaceDuration:t,status:r,uuid:Vn(),timestamp:Date.now(),pageKey:Wn(this.metrics.currentPageUrl,this.config.getConfig().uiVersion),pageUri:this.metrics.currentPageUrl,eventType:"INTERFACEDURATION",refer:this.metrics.previousPageUrl,duration:this.metrics.previousPageStayTime||0,tags:{actionKey:""}};t>5e3||this.performanceQueue.push(n)}},{key:"handlePageHidden",value:function(){this.calculatePageStayTime()}},{key:"handlePageVisible",value:function(){this.pageStartTime=Date.now()}},{key:"calculatePageStayTime",value:function(){var e=Date.now()-this.pageStartTime;this.reportPageStayTime(e)}},{key:"reportPerformanceMetrics",value:function(){var e=this;setTimeout(function(){var t,r,n,i={};e.eventTracker&&"function"==typeof e.eventTracker.getPreviousPageInfo&&(i=e.eventTracker.getPreviousPageInfo());var o=Qn(window.location.href);e.metrics.currentPageUrl=o,e.metrics.previousPageUrl=Qn((null===(t=i)||void 0===t||null===(t=t.previousPage)||void 0===t?void 0:t.url)||"")||e.metrics.previousPageUrl;var a={eventType:"PERFORMANCE",uuid:Vn(),timestamp:Date.now(),pageKey:Wn(Qn(window.location.href),e.config.getConfig().uiVersion),pageUri:Qn(window.location.href),refer:Qn((null===(r=i)||void 0===r||null===(r=r.previousPage)||void 0===r?void 0:r.url)||""),duration:(null===(n=i)||void 0===n?void 0:n.previousPageStayTime)||0,metrics:e.metrics};e.performanceQueue.push(a),e.config.getConfig().debugSwitch&&console.log("Performance Data:",a),0===e.config.getConfig().reportInterval?e.reporter.report("performance",[a]):e.performanceQueue.length>=e.config.getConfig().maxQueueSize&&e.flushPerformanceQueue()},100)}},{key:"reportSlowResource",value:function(e){this.reporter.report("slow_resource",[e])}},{key:"reportSlowApi",value:function(e){this.reporter.report("slow_api",[e])}},{key:"reportPageStayTime",value:function(e){var t={type:"page_stay",url:window.location.href,stayTime:e,timestamp:Date.now()};this.reporter.report("page_stay",[t])}},{key:"getDeviceInfo",value:function(){return{screen:{width:screen.width,height:screen.height,availWidth:screen.availWidth,availHeight:screen.availHeight,colorDepth:screen.colorDepth,pixelDepth:screen.pixelDepth},viewport:{width:window.innerWidth,height:window.innerHeight},connection:navigator.connection?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,memory:navigator.memory?{usedJSHeapSize:navigator.memory.usedJSHeapSize,totalJSHeapSize:navigator.memory.totalJSHeapSize,jsHeapSizeLimit:navigator.memory.jsHeapSizeLimit}:null}}},{key:"initThirdPartySDKs",value:function(){var e=this.config.getThirdPartyConfig();e.baidu&&window._hmt&&(this.thirdPartySDKs.baidu=window._hmt),e.umeng&&window._um&&(this.thirdPartySDKs.umeng=window._um),e.sensors&&window.sensors&&(this.thirdPartySDKs.sensors=window.sensors),e.tencent&&window.MTA&&(this.thirdPartySDKs.tencent=window.MTA)}},{key:"flushPerformanceQueue",value:function(){this.performanceQueue.length>0&&(this.reporter.report("performance",T(this.performanceQueue)),this.performanceQueue=[])}},{key:"reportPerformance",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={type:"custom_performance",timestamp:Date.now(),url:window.location.href,metrics:e,user:this.config.getUser()};this.reporter.report("performance",[t])}},{key:"getCurrentMetrics",value:function(){return m({},this.metrics)}},{key:"destroy",value:function(){this.config.getConfig().reportInterval>0&&this.flushPerformanceQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.isInitialized=!1}}])}(),ti=function(){return f(function e(t){c(this,e),this.config=t,this.reporter=new $n(t),this.isInitialized=!1,this.behaviorQueue=[],this.sessionId=this.generateSessionId(),this.pageStartTime=Date.now(),this.scrollDepth=0,this.mouseMovements=[],this.keyStrokes=[],this.formInteractions=[],this.timeTracker=null,this.reportTimer=null,this.originalPushState=null,this.originalReplaceState=null,this.behaviors={pageViews:[],clicks:[],scrolls:[],formSubmissions:[],navigation:[],timeOnPage:0}},[{key:"init",value:function(){if(!this.isInitialized){var e=this.config.getConfig();e.enableUserInteractionTracking&&this.setupUserInteractionTracking(),e.enableFormTracking&&this.setupFormTracking(),e.enableScrollTracking&&this.setupScrollTracking(),e.enableMouseTracking&&this.setupMouseTracking(),e.enableKeyboardTracking&&this.setupKeyboardTracking(),this.setupTimeTracking(),e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0}}},{key:"setupPeriodicReport",value:function(){var e=this,t=this.config.getConfig().reportInterval;t>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(function(){e.flushBehaviorQueue()},t))}},{key:"setupUserInteractionTracking",value:function(){var e=this;document.addEventListener("click",function(t){e.trackClick(t)},!0),document.addEventListener("dblclick",function(t){e.trackDoubleClick(t)},!0),document.addEventListener("contextmenu",function(t){e.trackRightClick(t)},!0),"ontouchstart"in window&&document.addEventListener("touchstart",function(t){e.trackTouch(t)},!0)}},{key:"setupFormTracking",value:function(){var e=this;document.addEventListener("submit",function(t){e.trackFormSubmission(t)},!0),document.addEventListener("change",function(t){"INPUT"!==t.target.tagName&&"SELECT"!==t.target.tagName&&"TEXTAREA"!==t.target.tagName||e.trackFormFieldChange(t)},!0),document.addEventListener("focus",function(t){"INPUT"!==t.target.tagName&&"SELECT"!==t.target.tagName&&"TEXTAREA"!==t.target.tagName||e.trackFormFieldFocus(t)},!0),document.addEventListener("blur",function(t){"INPUT"!==t.target.tagName&&"SELECT"!==t.target.tagName&&"TEXTAREA"!==t.target.tagName||e.trackFormFieldBlur(t)},!0)}},{key:"setupScrollTracking",value:function(){var e,t=this;document.addEventListener("scroll",function(){clearTimeout(e),e=setTimeout(function(){var e=window.pageYOffset||document.documentElement.scrollTop,r=document.documentElement.scrollHeight,n=document.documentElement.clientHeight,i=Math.round(e/(r-n)*100);i>t.scrollDepth&&(t.scrollDepth=i,t.trackScroll(i,e))},100)},{passive:!0})}},{key:"setupMouseTracking",value:function(){var e,t=this,r=[];document.addEventListener("mousemove",function(n){clearTimeout(e),r.push({x:n.clientX,y:n.clientY,timestamp:Date.now()}),r.length>100&&r.shift(),e=setTimeout(function(){r.length>10&&(t.trackMouseMovement(r),r=[])},1e3)},{passive:!0})}},{key:"setupKeyboardTracking",value:function(){var e=this;document.addEventListener("keydown",function(t){"password"!==t.target.type&&e.trackKeyStroke(t)},!0)}},{key:"setupTimeTracking",value:function(){var e=this;this.timeTracker&&clearInterval(this.timeTracker),this.timeTracker=setInterval(function(){e.behaviors.timeOnPage+=1},1e3),window.addEventListener("beforeunload",function(){e.reportTimeOnPage()})}},{key:"trackReferrer",value:function(){var e=document.referrer;if(e){var t={type:"referrer",url:e,domain:this.extractDomain(e),timestamp:Date.now()};this.config.getConfig().debugSwitch&&console.log("referrerData----",t),this.behaviors.navigation.push(t),this.reportBehavior("referrer",t)}}},{key:"trackPageView",value:function(){var e={type:"pageview",url:window.location.href,title:document.title,timestamp:Date.now(),sessionId:this.sessionId,referrer:document.referrer};this.behaviors.pageViews.push(e),this.reportBehavior("pageview",e),this.pageStartTime=Date.now(),this.scrollDepth=0}},{key:"trackClick",value:function(e){var t,r={type:"click",element:{tagName:e.target.tagName,className:e.target.className,id:e.target.id,text:null===(t=e.target.textContent)||void 0===t?void 0:t.substring(0,50),href:e.target.href},position:{x:e.clientX,y:e.clientY,pageX:e.pageX,pageY:e.pageY},timestamp:Date.now(),sessionId:this.sessionId};this.behaviors.clicks.push(r),this.reportBehavior("click",r)}},{key:"trackDoubleClick",value:function(e){var t={type:"doubleclick",element:{tagName:e.target.tagName,className:e.target.className,id:e.target.id},position:{x:e.clientX,y:e.clientY},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("doubleclick",t)}},{key:"trackRightClick",value:function(e){var t={type:"rightclick",element:{tagName:e.target.tagName,className:e.target.className,id:e.target.id},position:{x:e.clientX,y:e.clientY},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("rightclick",t)}},{key:"trackTouch",value:function(e){var t={type:"touch",touches:Array.from(e.touches).map(function(e){return{x:e.clientX,y:e.clientY,identifier:e.identifier}}),timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("touch",t)}},{key:"trackFormSubmission",value:function(e){var t={type:"form_submission",form:{action:e.target.action,method:e.target.method,id:e.target.id,className:e.target.className},fields:this.getFormFields(e.target),timestamp:Date.now(),sessionId:this.sessionId};this.behaviors.formSubmissions.push(t),this.reportBehavior("form_submission",t)}},{key:"trackFormFieldChange",value:function(e){var t={type:"form_field_change",field:{name:e.target.name,type:e.target.type,value:"password"===e.target.type?"***":e.target.value,id:e.target.id},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("form_field_change",t)}},{key:"trackFormFieldFocus",value:function(e){var t={type:"form_field_focus",field:{name:e.target.name,type:e.target.type,id:e.target.id},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("form_field_focus",t)}},{key:"trackFormFieldBlur",value:function(e){var t={type:"form_field_blur",field:{name:e.target.name,type:e.target.type,id:e.target.id},timestamp:Date.now(),sessionId:this.sessionId};this.reportBehavior("form_field_blur",t)}},{key:"trackScroll",value:function(e,t){var r={type:"scroll",depth:e,scrollTop:t,timestamp:Date.now(),sessionId:this.sessionId};this.config.getConfig().debugSwitch&&console.log("scrollData---",r),this.reportBehavior("scroll",r)}},{key:"trackMouseMovement",value:function(e){var t={type:"mouse_movement",movements:e,timestamp:Date.now(),sessionId:this.sessionId};this.config.getConfig().debugSwitch&&console.log("mouse_movement---",t),this.reportBehavior("mouse_movement",t)}},{key:"trackKeyStroke",value:function(e){var t={type:"keystroke",key:e.key,code:e.code,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,metaKey:e.metaKey,timestamp:Date.now(),sessionId:this.sessionId};this.config.getConfig().debugSwitch&&console.log("keystroke---",t),this.reportBehavior("keystroke",t)}},{key:"reportBehavior",value:function(e,t){var r={type:e,data:t,user:this.config.getUser(),config:{appId:this.config.getConfig().appId,appVersion:this.config.getConfig().appVersion}};this.behaviorQueue.push(r),0===this.config.getConfig().reportInterval?this.reporter.report("behavior",[r]):this.behaviorQueue.length>=this.config.getConfig().maxQueueSize&&this.flushBehaviorQueue()}},{key:"reportCustomBehavior",value:function(e){var t=m(m({type:"custom_behavior",eventName:e},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),{},{timestamp:Date.now(),sessionId:this.sessionId});this.reportBehavior("custom_behavior",t)}},{key:"flushBehaviorQueue",value:function(){this.behaviorQueue.length>0&&(this.reporter.report("behavior",T(this.behaviorQueue)),this.behaviorQueue=[])}},{key:"getFormFields",value:function(e){for(var t=[],r=e.elements,n=0;n<r.length;n++){var i=r[n];i.name&&t.push({name:i.name,type:i.type,value:"password"===i.type?"***":i.value})}return t}},{key:"extractDomain",value:function(e){try{return new URL(e).hostname}catch(t){return e}}},{key:"generateSessionId",value:function(){return"session_"+Date.now()+"_"+Math.random().toString(36).substr(2,9)}},{key:"getCurrentBehaviors",value:function(){return m({},this.behaviors)}},{key:"getSessionId",value:function(){return this.sessionId}},{key:"destroy",value:function(){this.config.getConfig().reportInterval>0&&this.flushBehaviorQueue(),this.reportTimeOnPage(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.timeTracker&&(clearInterval(this.timeTracker),this.timeTracker=null),this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.isInitialized=!1}}])}(),ri=function(){return f(function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;c(this,e),this.config=t,this.reporter=new $n(t),this.eventTracker=r,this.isInitialized=!1,this.observer=null,this.trackedElements=new Map,this.exposureQueue=[],this.reportTimer=null,this.scrollTimer=null,this.useFallback=!1,this.lastReportTime=new Map,this.debounceTime=500,this.defaultOptions={threshold:.5,rootMargin:"0px",scrollThrottle:100}},[{key:"init",value:function(){if(!this.isInitialized){this.isIntersectionObserverSupported()?(this.createObserver(),this.useFallback=!1,this.config.getConfig().debugSwitch&&console.log("曝光追踪器初始化完成(使用 Intersection Observer API)")):(this.setupFallbackTracking(),this.useFallback=!0,this.config.getConfig().debugSwitch&&console.warn("浏览器不支持 Intersection Observer,使用降级方案(滚动事件追踪)"));var e=this.config.getConfig();e.reportInterval>0&&this.setupPeriodicReport(),this.isInitialized=!0,e.debugSwitch&&console.log("曝光追踪器初始化完成")}}},{key:"isIntersectionObserverSupported",value:function(){return"undefined"!=typeof window&&"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype}},{key:"createObserver",value:function(){var e=this,t={root:null,rootMargin:this.defaultOptions.rootMargin,threshold:[0,.5,1]};this.observer=new IntersectionObserver(function(t){t.forEach(function(t){e.handleIntersection(t)})},t)}},{key:"handleIntersection",value:function(e){var t=e.target,r=this.getElementId(t),n=this.getElementConfig(t),i=n.threshold||this.defaultOptions.threshold,o=e.intersectionRatio;if(o>=i){this.trackedElements.has(r)||this.trackedElements.set(r,{element:t,config:n});var a=this.trackedElements.get(r),s=Date.now(),u=s-(this.lastReportTime.get(r)||0);u>=this.debounceTime?(this.lastReportTime.set(r,s),this.triggerExposure(t,r,a,o,0)):this.config.getConfig().debugSwitch&&console.log("元素 ".concat(r," 跳过上报(去重),距离上次上报 ").concat(u,"ms,需要间隔 ").concat(this.debounceTime,"ms"))}}},{key:"triggerExposure",value:function(e,t,r,n,i){var o,a,s=this,u=this.extractProductInfo(e,r.config),c={};this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&(c=this.eventTracker.getPreviousPageInfo());var l=this.getElementConfig(e),f={uuid:Vn(),timestamp:Date.now(),pageKey:Wn(Qn(window.location.href),this.config.getConfig().uiVersion),pageUri:Qn(window.location.href),eventType:"EXPOSE",refer:Qn(null===(o=c)||void 0===o||null===(o=o.previousPage)||void 0===o?void 0:o.url),duration:null===(a=c)||void 0===a?void 0:a.previousPageStayTime,viewParam:m({},u),tags:m({actionKey:""},l)};this.exposureQueue.push(f),0===this.config.getConfig().reportInterval?Promise.resolve().then(function(){s.reporter.report("exposure",s.getReportData([f])).catch(function(e){console.error("曝光上报失败:",e),s.config.getConfig().debugSwitch&&console.error("曝光上报失败详情:",e)})}):this.exposureQueue.length>=this.config.getConfig().maxQueueSize&&this.flushExposureQueue()}},{key:"setupFallbackTracking",value:function(){var e=this;this.observer={observe:function(t){var r=e.getElementId(t);e.trackedElements.has(r)},unobserve:function(t){var r=e.getElementId(t);e.trackedElements.delete(r)},disconnect:function(){e.trackedElements.clear(),e.removeScrollListener()}},this.addScrollListener(),setTimeout(function(){e.checkAllElementsVisibility()},100)}},{key:"addScrollListener",value:function(){var e=this;if(!this.scrollHandler){var t=0,r=this.defaultOptions.scrollThrottle;this.scrollHandler=function(){var n=Date.now();n-t>=r&&(t=n,e.checkAllElementsVisibility())},window.addEventListener("scroll",this.scrollHandler,{passive:!0}),window.addEventListener("touchmove",this.scrollHandler,{passive:!0}),window.addEventListener("resize",this.scrollHandler,{passive:!0})}}},{key:"removeScrollListener",value:function(){this.scrollHandler&&(window.removeEventListener("scroll",this.scrollHandler),window.removeEventListener("touchmove",this.scrollHandler),window.removeEventListener("resize",this.scrollHandler),this.scrollHandler=null)}},{key:"checkAllElementsVisibility",value:function(){var e=this;if(this.useFallback){var t=window.innerHeight,r=window.innerWidth;this.trackedElements.forEach(function(n,i){var o=n.element;if(o&&document.contains(o)){var a=n.config.threshold||e.defaultOptions.threshold,s=e.calculateVisibleRatio(o,0,t,0,r);if(s>=a){var u=Date.now(),c=u-(e.lastReportTime.get(i)||0);c>=e.debounceTime?(e.lastReportTime.set(i,u),e.triggerExposure(o,i,n,s,0),e.config.getConfig().debugSwitch&&console.log("元素 ".concat(i," 进入可视区域,可见比例: ").concat((100*s).toFixed(2),"%,立即触发曝光"))):e.config.getConfig().debugSwitch&&console.log("元素 ".concat(i," 跳过上报(去重),距离上次上报 ").concat(c,"ms,需要间隔 ").concat(e.debounceTime,"ms"))}}else e.trackedElements.delete(i)})}}},{key:"calculateVisibleRatio",value:function(e,t,r,n,i){var o=e.getBoundingClientRect();if(o.bottom<t||o.top>r||o.right<n||o.left>i)return 0;var a=Math.max(o.top,t),s=Math.min(o.bottom,r),u=Math.max(o.left,n),c=Math.min(o.right,i),l=Math.max(0,c-u)*Math.max(0,s-a),f=o.width*o.height;return 0===f?0:l/f}},{key:"trackProduct",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.isInitialized)if(e&&"object"===E(e)&&e.nodeType){var n=this.getElementId(e),i=m({},r);this.trackedElements.has(n)&&this.untrackProduct(e),e.setAttribute("data-exposure-tracked","true"),e.setAttribute("data-exposure-config",JSON.stringify(i)),this.trackedElements.set(n,{element:e,config:i}),this.observer&&this.observer.observe(e),this.useFallback&&setTimeout(function(){t.checkAllElementsVisibility()},0),this.config.getConfig().debugSwitch}else console.warn("无效的元素,无法追踪");else console.warn("曝光追踪器未初始化")}},{key:"trackProducts",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.isInitialized&&this.observer){var n=[];if("string"==typeof e)n=Array.from(document.querySelectorAll(e));else{if(!Array.isArray(e))return void console.warn("无效的选择器或元素列表");n=e}n.forEach(function(e,n){var i=Array.isArray(r)?r[n]||{}:r;t.trackProduct(e,i)}),this.config.getConfig().debugSwitch}else console.warn("曝光追踪器未初始化")}},{key:"untrackProduct",value:function(e){if(this.observer){var t=this.getElementId(e);this.observer.unobserve&&this.observer.unobserve(e),this.trackedElements.delete(t),this.lastReportTime.delete(t),e&&e.removeAttribute&&(e.removeAttribute("data-exposure-tracked"),e.removeAttribute("data-exposure-config")),this.config.getConfig().debugSwitch&&console.log("取消追踪商品元素: ".concat(t))}}},{key:"untrackAll",value:function(){var e=this;this.observer&&(this.useFallback||this.trackedElements.forEach(function(t,r){t.element&&e.observer.unobserve&&e.observer.unobserve(t.element)}),this.trackedElements.clear())}},{key:"getElementId",value:function(e){if(e.getAttribute("data-exposure-id"))return e.getAttribute("data-exposure-id");if(e._exposureUniqueId)return e._exposureUniqueId;if(e.id)return"id_".concat(e.id);if(e.getAttribute("data-product-id"))return"product_".concat(e.getAttribute("data-product-id"));var t=Vn();return e._exposureUniqueId=t,t}},{key:"getElementConfig",value:function(e){var t=e.getAttribute("data-exposure-config");if(t)try{return JSON.parse(t)}catch(e){return{}}return{}}},{key:"extractProductInfo",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r={productId:t.productId||e.getAttribute("data-product-id")||null,productName:t.productName||e.getAttribute("data-product-name")||null,productPrice:t.productPrice||e.getAttribute("data-product-price")||null,productCategory:t.productCategory||e.getAttribute("data-product-category")||null,productImage:t.productImage||e.getAttribute("data-product-image")||null};return Object.keys(r).forEach(function(e){null===r[e]&&delete r[e]}),r}},{key:"setupPeriodicReport",value:function(){var e=this,t=this.config.getConfig().reportInterval;t>0&&(this.reportTimer&&clearInterval(this.reportTimer),this.reportTimer=setInterval(function(){e.flushExposureQueue()},t))}},{key:"getReportData",value:function(e){if(e.length>0){var t=e[0];return t.tags&&(t.tags.exposeContent=(r=e.map(function(e){var t;return null===(t=e.viewParam)||void 0===t?void 0:t.productId}).filter(Boolean),Array.from(new Set(r)))),delete t.viewParam,t}var r;return null}},{key:"flushExposureQueue",value:function(){var e=this;if(this.exposureQueue.length>0){var t=T(this.exposureQueue);this.exposureQueue=[],Promise.resolve().then(function(){e.reporter.report("exposure",e.getReportData(t)).catch(function(t){console.error("批量曝光上报失败:",t),e.config.getConfig().debugSwitch&&console.error("批量曝光上报失败详情:",t)})})}}},{key:"reportExposure",value:function(){var e,t,r=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i={};this.eventTracker&&"function"==typeof this.eventTracker.getPreviousPageInfo&&(i=this.eventTracker.getPreviousPageInfo());var o={uuid:Vn(),timestamp:Date.now(),pageKey:Wn(Qn(window.location.href),this.config.getConfig().uiVersion),pageUri:Qn(window.location.href),eventType:"EXPOSE",viewParam:m({},n),tags:m(m({},config),{},{actionKey:"",refer:Qn(null===(e=i)||void 0===e||null===(e=e.previousPage)||void 0===e?void 0:e.url),duration:null===(t=i)||void 0===t?void 0:t.previousPageStayTime})};Promise.resolve().then(function(){r.reporter.report("exposure",r.getReportData(o)).catch(function(e){console.error("手动曝光上报失败:",e),r.config.getConfig().debugSwitch&&console.error("手动曝光上报失败详情:",e)})})}},{key:"getTrackedElements",value:function(){return Array.from(this.trackedElements.keys())}},{key:"getExposureQueue",value:function(){return T(this.exposureQueue)}},{key:"destroy",value:function(){this.flushExposureQueue(),this.reportTimer&&(clearInterval(this.reportTimer),this.reportTimer=null),this.untrackAll(),this.observer&&(this.observer.disconnect&&this.observer.disconnect(),this.observer=null),this.removeScrollListener(),this.trackedElements.clear(),this.exposureQueue=[],this.lastReportTime.clear(),this.useFallback=!1,this.isInitialized=!1,this.config.getConfig().debugSwitch&&console.log("曝光追踪器已销毁")}}])}(),ni=function(){return f(function e(t){c(this,e),this.config=t,this.integratedSDKs={},this.isInitialized=!1},[{key:"init",value:function(){if(!this.isInitialized){var e=this.config.getThirdPartyConfig();e.baidu&&e.baidu.enabled&&this.initBaiduAnalytics(e.baidu),e.umeng&&e.umeng.enabled&&this.initUmengAnalytics(e.umeng),e.sensors&&e.sensors.enabled&&this.initSensorsAnalytics(e.sensors),e.tencent&&e.tencent.enabled&&this.initTencentAnalytics(e.tencent),e.google&&e.google.enabled&&this.initGoogleAnalytics(e.google),e.custom&&e.custom.enabled&&this.initCustomAnalytics(e.custom),this.isInitialized=!0}}},{key:"initBaiduAnalytics",value:function(e){try{window._hmt?(this.integratedSDKs.baidu={name:"baidu",instance:window._hmt,config:e},e.siteId&&window._hmt.push(["_setAccount",e.siteId]),!1!==e.autoPageview&&window._hmt.push(["_trackPageview"]),console.log("百度统计集成成功")):console.warn("百度统计未加载,请检查脚本是否正确引入")}catch(e){console.error("百度统计集成失败:",e)}}},{key:"initUmengAnalytics",value:function(e){try{window._um?(this.integratedSDKs.umeng={name:"umeng",instance:window._um,config:e},e.siteId&&window._um.push(["setAccount",e.siteId]),!1!==e.autoPageview&&window._um.push(["trackPageview"]),console.log("友盟统计集成成功")):console.warn("友盟统计未加载,请检查脚本是否正确引入")}catch(e){console.error("友盟统计集成失败:",e)}}},{key:"initSensorsAnalytics",value:function(e){try{window.sensors?(this.integratedSDKs.sensors={name:"sensors",instance:window.sensors,config:e},e.serverUrl&&window.sensors.setServerUrl(e.serverUrl),e.siteId&&window.sensors.setSiteId(e.siteId),!1!==e.autoPageview&&window.sensors.trackPageview(),console.log("神策数据集成成功")):console.warn("神策数据未加载,请检查脚本是否正确引入")}catch(e){console.error("神策数据集成失败:",e)}}},{key:"initTencentAnalytics",value:function(e){try{window.MTA?(this.integratedSDKs.tencent={name:"tencent",instance:window.MTA,config:e},e.appId&&window.MTA.setAppId(e.appId),!1!==e.autoPageview&&window.MTA.trackPageview(),console.log("腾讯云分析集成成功")):console.warn("腾讯云分析未加载,请检查脚本是否正确引入")}catch(e){console.error("腾讯云分析集成失败:",e)}}},{key:"initGoogleAnalytics",value:function(e){try{window.gtag?(this.integratedSDKs.google={name:"google",instance:window.gtag,config:e},e.measurementId&&window.gtag("config",e.measurementId,{page_title:document.title,page_location:window.location.href}),console.log("Google Analytics集成成功")):console.warn("Google Analytics未加载,请检查脚本是否正确引入")}catch(e){console.error("Google Analytics集成失败:",e)}}},{key:"initCustomAnalytics",value:function(e){try{if("function"==typeof e.init){var t=e.init(e);this.integratedSDKs.custom={name:"custom",instance:t,config:e},console.log("自定义第三方集成成功")}else console.warn("自定义第三方配置缺少init函数")}catch(e){console.error("自定义第三方集成失败:",e)}}},{key:"reportEvent",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.values(this.integratedSDKs).forEach(function(n){try{t.reportToSDK(n,e,r)}catch(e){console.error("上报事件到".concat(n.name,"失败:"),e)}})}},{key:"reportPageView",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.values(this.integratedSDKs).forEach(function(r){try{e.reportPageViewToSDK(r,t)}catch(e){console.error("上报页面浏览到".concat(r.name,"失败:"),e)}})}},{key:"reportUser",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.values(this.integratedSDKs).forEach(function(r){try{e.reportUserToSDK(r,t)}catch(e){console.error("上报用户信息到".concat(r.name,"失败:"),e)}})}},{key:"reportPerformance",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.values(this.integratedSDKs).forEach(function(r){try{e.reportPerformanceToSDK(r,t)}catch(e){console.error("上报性能指标到".concat(r.name,"失败:"),e)}})}},{key:"reportToSDK",value:function(e,t,r){switch(e.name){case"baidu":e.instance&&e.instance.push&&e.instance.push(["_trackEvent",t,JSON.stringify(r)]);break;case"umeng":e.instance&&e.instance.push&&e.instance.push(["track",t,r]);break;case"sensors":e.instance&&e.instance.track&&e.instance.track(t,r);break;case"tencent":e.instance&&e.instance.Event&&e.instance.Event.stat&&e.instance.Event.stat(t,r);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("event",t,r);break;case"custom":e.instance&&"function"==typeof e.instance.track&&e.instance.track(t,r);break;default:console.warn("未知的SDK类型: ".concat(e.name))}}},{key:"reportPageViewToSDK",value:function(e,t){switch(e.name){case"baidu":e.instance&&e.instance.push&&e.instance.push(["_trackPageview",t.url||window.location.href]);break;case"umeng":e.instance&&e.instance.push&&e.instance.push(["trackPageview",t.url||window.location.href]);break;case"sensors":e.instance&&e.instance.trackPageview&&e.instance.trackPageview(t);break;case"tencent":e.instance&&e.instance.trackPageview&&e.instance.trackPageview(t.url||window.location.href);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("config",e.config.measurementId,{page_title:t.title||document.title,page_location:t.url||window.location.href});break;case"custom":e.instance&&"function"==typeof e.instance.trackPageview&&e.instance.trackPageview(t);break;default:console.warn("未知的SDK类型: ".concat(e.name))}}},{key:"reportUserToSDK",value:function(e,t){switch(e.name){case"baidu":e.instance&&e.instance.push&&(e.instance.push(["_setUserTag","userId",t.userId]),e.instance.push(["_setUserTag","userType",t.userType]));break;case"umeng":e.instance&&e.instance.push&&(e.instance.push(["setUserTag","userId",t.userId]),e.instance.push(["setUserTag","userType",t.userType]));break;case"sensors":e.instance&&e.instance.setProfile&&e.instance.setProfile(t);break;case"tencent":e.instance&&e.instance.setUserInfo&&e.instance.setUserInfo(t);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("set","user_id",t.userId);break;case"custom":e.instance&&"function"==typeof e.instance.setUser&&e.instance.setUser(t);break;default:console.warn("未知的SDK类型: ".concat(e.name))}}},{key:"reportPerformanceToSDK",value:function(e,t){switch(e.name){case"baidu":e.instance&&e.instance.push&&e.instance.push(["_trackEvent","performance",JSON.stringify(t)]);break;case"umeng":e.instance&&e.instance.push&&e.instance.push(["track","performance",t]);break;case"sensors":e.instance&&e.instance.track&&e.instance.track("performance",t);break;case"tencent":e.instance&&e.instance.Event&&e.instance.Event.stat&&e.instance.Event.stat("performance",t);break;case"google":e.instance&&"function"==typeof e.instance&&e.instance("event","performance",t);break;case"custom":e.instance&&"function"==typeof e.instance.trackPerformance&&e.instance.trackPerformance(t);break;default:console.warn("未知的SDK类型: ".concat(e.name))}}},{key:"isSDKIntegrated",value:function(e){return!!this.integratedSDKs[e]}},{key:"getIntegratedSDKs",value:function(){return Object.keys(this.integratedSDKs)}},{key:"getSDKInstance",value:function(e){var t;return(null===(t=this.integratedSDKs[e])||void 0===t?void 0:t.instance)||null}},{key:"destroy",value:function(){Object.values(this.integratedSDKs).forEach(function(e){try{e.instance&&"function"==typeof e.instance.destroy&&e.instance.destroy()}catch(t){console.error("销毁".concat(e.name,"失败:"),t)}}),this.integratedSDKs={},this.isInitialized=!1}}])}(),ii=function(){return f(function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c(this,e),this.config={appId:t.appId||"",appVersion:t.appVersion||"1.0.0",environment:t.environment||"production",debugSwitch:!0===t.debugSwitch,customerId:t.customerId||"",userId:t.userId||"",deviceNo:t.deviceNo||"",deviceId:t.userId||"",uiVersion:t.uiVersion||"",sessionId:t.sessionId||zn(),reportUrl:t.reportUrl||"",reportInterval:t.reportInterval||5e3,maxQueueSize:t.maxQueueSize||100,enableErrorTracking:!1!==t.enableErrorTracking,enableUnhandledRejection:!1!==t.enableUnhandledRejection,enableResourceError:!1!==t.enableResourceError,enableEventTracking:!1!==t.enableEventTracking,enableClickTracking:!1!==t.enableClickTracking,enablePageViewTracking:!1!==t.enablePageViewTracking,enablePerformanceTracking:!1!==t.enablePerformanceTracking,enableResourceTracking:!1!==t.enableResourceTracking,enableApiTracking:!1!==t.enableApiTracking,enableInteractionTracking:!1!==t.enableInteractionTracking,enableRouteTracking:!1!==t.enableRouteTracking,enableUserInteractionTracking:!1!==t.enableUserInteractionTracking,enableFormTracking:!1!==t.enableFormTracking,enableScrollTracking:!1!==t.enableScrollTracking,enableMouseTracking:!1!==t.enableMouseTracking,enableKeyboardTracking:!1!==t.enableKeyboardTracking,thirdPartyConfig:t.thirdPartyConfig||{},user:t.user||null,customReport:t.customReport||null},this.user=null},[{key:"updateConfig",value:function(e){this.config=m(m({},this.config),e)}},{key:"setUser",value:function(e){this.user=e}},{key:"getConfig",value:function(){return this.config}},{key:"getUser",value:function(){return this.user}},{key:"getReportUrl",value:function(){return this.config.reportUrl}},{key:"getThirdPartyConfig",value:function(){return this.config.thirdPartyConfig}},{key:"isErrorTrackingEnabled",value:function(){return this.config.enableErrorTracking}},{key:"isEventTrackingEnabled",value:function(){return this.config.enableEventTracking}},{key:"getConfigSessionId",value:function(){return this.config.sessionId}}])}();"undefined"==typeof window||null!==(qn=window)&&void 0!==qn&&qn.axios||(window.axios=Wt);var oi=function(){return f(function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c(this,e),this.config=new ii(t),this.errorTracker=new Yn(this.config),this.eventTracker=new Zn(this.config),this.performanceTracker=new ei(this.config,this.eventTracker),this.userBehaviorTracker=new ti(this.config),this.exposureTracker=new ri(this.config,this.eventTracker),this.thirdPartyIntegrator=new ni(this.config),this.init()},[{key:"init",value:function(){this.eventTracker.init(),this.exposureTracker.init(),this.thirdPartyIntegrator.init(),console.log("Frontend SDK 初始化完成")}},{key:"reportError",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errorTracker.reportError(e,t)}},{key:"reportEvent",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.eventTracker.reportEvent(e,t)}},{key:"getPreviousPageInfo",value:function(){return this.eventTracker.getPreviousPageInfo()}},{key:"getCurrentPageStayTime",value:function(){return this.eventTracker.getCurrentPageStayTime()}},{key:"getPageHistory",value:function(){return this.eventTracker.pageHistory||[]}},{key:"reportPerformance",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.performanceTracker.reportPerformance(e)}},{key:"reportBehavior",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.userBehaviorTracker.reportCustomBehavior(e,t)}},{key:"setUser",value:function(e){this.config.setUser(e),this.thirdPartyIntegrator.reportUser(e)}},{key:"setConfig",value:function(e){this.config.updateConfig(e)}},{key:"getPerformanceMetrics",value:function(){return this.performanceTracker.getCurrentMetrics()}},{key:"getBehaviorData",value:function(){return this.userBehaviorTracker.getCurrentBehaviors()}},{key:"getSessionId",value:function(){return this.config.getConfigSessionId()}},{key:"isThirdPartySDKIntegrated",value:function(e){return this.thirdPartyIntegrator.isSDKIntegrated(e)}},{key:"getIntegratedThirdPartySDKs",value:function(){return this.thirdPartyIntegrator.getIntegratedSDKs()}},{key:"setupVueRouterMonitoring",value:function(e){e?this.config.config.enableRouteTracking&&this.performanceTracker.setupVueRouterMonitoring(e):console.warn("Vue Router 实例未提供")}},{key:"getCurrentRoute",value:function(){return this.performanceTracker.getCurrentRoute()}},{key:"getRouteHistory",value:function(){return this.performanceTracker.getRouteHistory()}},{key:"getCurrentRouteStayTime",value:function(){return this.performanceTracker.getCurrentPageStayTime()}},{key:"getRoutePerformanceStats",value:function(){return this.performanceTracker.getRoutePerformanceStats()}},{key:"trackProduct",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.exposureTracker.trackProduct(e,t)}},{key:"trackProducts",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.exposureTracker.trackProducts(e,t)}},{key:"untrackProduct",value:function(e){return this.exposureTracker.untrackProduct(e)}},{key:"untrackAllProducts",value:function(){return this.exposureTracker.untrackAll()}},{key:"reportExposure",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.exposureTracker.reportExposure(e)}},{key:"getTrackedProducts",value:function(){return this.exposureTracker.getTrackedElements()}},{key:"getExposureQueue",value:function(){return this.exposureTracker.getExposureQueue()}},{key:"flushExposureQueue",value:function(){return this.exposureTracker.flushExposureQueue()}},{key:"destroy",value:function(){this.errorTracker.destroy(),this.eventTracker.destroy(),this.performanceTracker.destroy(),this.userBehaviorTracker.destroy(),this.exposureTracker.destroy(),this.thirdPartyIntegrator.destroy(),console.log("Frontend SDK 已销毁")}}])}();export{oi as default,Bn as performanceNow};
2
4
  //# sourceMappingURL=index.esm.js.map