(function(){"use strict";function xe(e,t){return function(){return e.apply(t,arguments)}}const{toString:Ct}=Object.prototype,{getPrototypeOf:he}=Object,X=(e=>t=>{const n=Ct.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),k=e=>(e=e.toLowerCase(),t=>X(t)===e),G=e=>t=>typeof t===e,{isArray:H}=Array,V=G("undefined");function It(e){return e!==null&&!V(e)&&e.constructor!==null&&!V(e.constructor)&&I(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const De=k("ArrayBuffer");function kt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&De(e.buffer),t}const Pt=G("string"),I=G("function"),Ne=G("number"),Q=e=>e!==null&&typeof e=="object",Ut=e=>e===!0||e===!1,Z=e=>{if(X(e)!=="object")return!1;const t=he(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Lt=k("Date"),xt=k("File"),Dt=k("Blob"),Nt=k("FileList"),Ft=e=>Q(e)&&I(e.pipe),Bt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||I(e.append)&&((t=X(e))==="formdata"||t==="object"&&I(e.toString)&&e.toString()==="[object FormData]"))},jt=k("URLSearchParams"),[qt,Ht,zt,Vt]=["ReadableStream","Request","Response","Headers"].map(k),$t=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function $(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),H(e))for(r=0,s=e.length;r<s;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let c;for(r=0;r<i;r++)c=o[r],t.call(null,e[c],c,e)}}function Fe(e,t){t=t.toLowerCase();const n=Object.keys(e);let r=n.length,s;for(;r-- >0;)if(s=n[r],t===s.toLowerCase())return s;return null}const N=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Be=e=>!V(e)&&e!==N;function me(){const{caseless:e}=Be(this)&&this||{},t={},n=(r,s)=>{const o=e&&Fe(t,s)||s;Z(t[o])&&Z(r)?t[o]=me(t[o],r):Z(r)?t[o]=me({},r):H(r)?t[o]=r.slice():t[o]=r};for(let r=0,s=arguments.length;r<s;r++)arguments[r]&&$(arguments[r],n);return t}const Mt=(e,t,n,{allOwnKeys:r}={})=>($(t,(s,o)=>{n&&I(s)?e[o]=xe(s,n):e[o]=s},{allOwnKeys:r}),e),Jt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Wt=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},Kt=(e,t,n,r)=>{let s,o,i;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),o=s.length;o-- >0;)i=s[o],(!r||r(i,e,t))&&!c[i]&&(t[i]=e[i],c[i]=!0);e=n!==!1&&he(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Xt=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},Gt=e=>{if(!e)return null;if(H(e))return e;let t=e.length;if(!Ne(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Qt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&he(Uint8Array)),Zt=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=r.next())&&!s.done;){const o=s.value;t.call(e,o[0],o[1])}},Yt=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},en=k("HTMLFormElement"),tn=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),je=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),nn=k("RegExp"),qe=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};$(n,(s,o)=>{let i;(i=t(s,o,e))!==!1&&(r[o]=i||s)}),Object.defineProperties(e,r)},rn=e=>{qe(e,(t,n)=>{if(I(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(I(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},sn=(e,t)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return H(e)?r(e):r(String(e).split(t)),n},on=()=>{},an=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function cn(e){return!!(e&&I(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const ln=e=>{const t=new Array(10),n=(r,s)=>{if(Q(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[s]=r;const o=H(r)?[]:{};return $(r,(i,c)=>{const f=n(i,s+1);!V(f)&&(o[c]=f)}),t[s]=void 0,o}}return r};return n(e,0)},un=k("AsyncFunction"),dn=e=>e&&(Q(e)||I(e))&&I(e.then)&&I(e.catch),He=((e,t)=>e?setImmediate:t?((n,r)=>(N.addEventListener("message",({source:s,data:o})=>{s===N&&o===n&&r.length&&r.shift()()},!1),s=>{r.push(s),N.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",I(N.postMessage)),fn=typeof queueMicrotask<"u"?queueMicrotask.bind(N):typeof process<"u"&&process.nextTick||He,a={isArray:H,isArrayBuffer:De,isBuffer:It,isFormData:Bt,isArrayBufferView:kt,isString:Pt,isNumber:Ne,isBoolean:Ut,isObject:Q,isPlainObject:Z,isReadableStream:qt,isRequest:Ht,isResponse:zt,isHeaders:Vt,isUndefined:V,isDate:Lt,isFile:xt,isBlob:Dt,isRegExp:nn,isFunction:I,isStream:Ft,isURLSearchParams:jt,isTypedArray:Qt,isFileList:Nt,forEach:$,merge:me,extend:Mt,trim:$t,stripBOM:Jt,inherits:Wt,toFlatObject:Kt,kindOf:X,kindOfTest:k,endsWith:Xt,toArray:Gt,forEachEntry:Zt,matchAll:Yt,isHTMLForm:en,hasOwnProperty:je,hasOwnProp:je,reduceDescriptors:qe,freezeMethods:rn,toObjectSet:sn,toCamelCase:tn,noop:on,toFiniteNumber:an,findKey:Fe,global:N,isContextDefined:Be,isSpecCompliantForm:cn,toJSONObject:ln,isAsyncFn:un,isThenable:dn,setImmediate:He,asap:fn};function S(e,t,n,r,s){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),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}a.inherits(S,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:a.toJSONObject(this.config),code:this.code,status:this.status}}});const ze=S.prototype,Ve={};["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=>{Ve[e]={value:e}}),Object.defineProperties(S,Ve),Object.defineProperty(ze,"isAxiosError",{value:!0}),S.from=(e,t,n,r,s,o)=>{const i=Object.create(ze);return a.toFlatObject(e,i,function(f){return f!==Error.prototype},c=>c!=="isAxiosError"),S.call(i,e.message,t,n,r,s),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const pn=null;function ge(e){return a.isPlainObject(e)||a.isArray(e)}function $e(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Me(e,t,n){return e?e.concat(t).map(function(s,o){return s=$e(s),!n&&o?"["+s+"]":s}).join(n?".":""):t}function hn(e){return a.isArray(e)&&!e.some(ge)}const mn=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function Y(e,t,n){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(p,d){return!a.isUndefined(d[p])});const r=n.metaTokens,s=n.visitor||u,o=n.dots,i=n.indexes,f=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function l(m){if(m===null)return"";if(a.isDate(m))return m.toISOString();if(!f&&a.isBlob(m))throw new S("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(m)||a.isTypedArray(m)?f&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function u(m,p,d){let w=m;if(m&&!d&&typeof m=="object"){if(a.endsWith(p,"{}"))p=r?p:p.slice(0,-2),m=JSON.stringify(m);else if(a.isArray(m)&&hn(m)||(a.isFileList(m)||a.endsWith(p,"[]"))&&(w=a.toArray(m)))return p=$e(p),w.forEach(function(E,L){!(a.isUndefined(E)||E===null)&&t.append(i===!0?Me([p],L,o):i===null?p:p+"[]",l(E))}),!1}return ge(m)?!0:(t.append(Me(d,p,o),l(m)),!1)}const h=[],y=Object.assign(mn,{defaultVisitor:u,convertValue:l,isVisitable:ge});function _(m,p){if(!a.isUndefined(m)){if(h.indexOf(m)!==-1)throw Error("Circular reference detected in "+p.join("."));h.push(m),a.forEach(m,function(w,g){(!(a.isUndefined(w)||w===null)&&s.call(t,w,a.isString(g)?g.trim():g,p,y))===!0&&_(w,p?p.concat(g):[g])}),h.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return _(e),t}function Je(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function Se(e,t){this._pairs=[],e&&Y(e,this,t)}const We=Se.prototype;We.append=function(t,n){this._pairs.push([t,n])},We.toString=function(t){const n=t?function(r){return t.call(this,r,Je)}:Je;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function gn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Ke(e,t,n){if(!t)return e;const r=n&&n.encode||gn;a.isFunction(n)&&(n={serialize:n});const s=n&&n.serialize;let o;if(s?o=s(t,n):o=a.isURLSearchParams(t)?t.toString():new Se(t,n).toString(r),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class Xe{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Ge={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Sn={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Se,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},ye=typeof window<"u"&&typeof document<"u",we=typeof navigator=="object"&&navigator||void 0,yn=ye&&(!we||["ReactNative","NativeScript","NS"].indexOf(we.product)<0),wn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",bn=ye&&window.location.href||"http://localhost",A={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ye,hasStandardBrowserEnv:yn,hasStandardBrowserWebWorkerEnv:wn,navigator:we,origin:bn},Symbol.toStringTag,{value:"Module"})),...Sn};function _n(e,t){return Y(e,new A.classes.URLSearchParams,Object.assign({visitor:function(n,r,s,o){return A.isNode&&a.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function En(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Rn(e){const t={},n=Object.keys(e);let r;const s=n.length;let o;for(r=0;r<s;r++)o=n[r],t[o]=e[o];return t}function Qe(e){function t(n,r,s,o){let i=n[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),f=o>=n.length;return i=!i&&a.isArray(s)?s.length:i,f?(a.hasOwnProp(s,i)?s[i]=[s[i],r]:s[i]=r,!c):((!s[i]||!a.isObject(s[i]))&&(s[i]=[]),t(n,r,s[i],o)&&a.isArray(s[i])&&(s[i]=Rn(s[i])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const n={};return a.forEachEntry(e,(r,s)=>{t(En(r),s,n,0)}),n}return null}function Tn(e,t,n){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const M={transitional:Ge,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=a.isObject(t);if(o&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(Qe(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t)||a.isReadableStream(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return _n(t,this.formSerializer).toString();if((c=a.isFileList(t))||r.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return Y(c?{"files[]":t}:t,f&&new f,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),Tn(t)):t}],transformResponse:[function(t){const n=this.transitional||M.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(r&&!this.responseType||s)){const i=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(c){if(i)throw c.name==="SyntaxError"?S.from(c,S.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:A.classes.FormData,Blob:A.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],e=>{M.headers[e]={}});const On=a.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"]),An=e=>{const t={};let n,r,s;return e&&e.split(`
`).forEach(function(i){s=i.indexOf(":"),n=i.substring(0,s).trim().toLowerCase(),r=i.substring(s+1).trim(),!(!n||t[n]&&On[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},Ze=Symbol("internals");function J(e){return e&&String(e).trim().toLowerCase()}function ee(e){return e===!1||e==null?e:a.isArray(e)?e.map(ee):String(e)}function vn(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Cn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function be(e,t,n,r,s){if(a.isFunction(r))return r.call(this,t,n);if(s&&(t=n),!!a.isString(t)){if(a.isString(r))return t.indexOf(r)!==-1;if(a.isRegExp(r))return r.test(t)}}function In(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function kn(e,t){const n=a.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(s,o,i){return this[r].call(this,t,s,o,i)},configurable:!0})})}let v=class{constructor(t){t&&this.set(t)}set(t,n,r){const s=this;function o(c,f,l){const u=J(f);if(!u)throw new Error("header name must be a non-empty string");const h=a.findKey(s,u);(!h||s[h]===void 0||l===!0||l===void 0&&s[h]!==!1)&&(s[h||f]=ee(c))}const i=(c,f)=>a.forEach(c,(l,u)=>o(l,u,f));if(a.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(a.isString(t)&&(t=t.trim())&&!Cn(t))i(An(t),n);else if(a.isHeaders(t))for(const[c,f]of t.entries())o(f,c,r);else t!=null&&o(n,t,r);return this}get(t,n){if(t=J(t),t){const r=a.findKey(this,t);if(r){const s=this[r];if(!n)return s;if(n===!0)return vn(s);if(a.isFunction(n))return n.call(this,s,r);if(a.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=J(t),t){const r=a.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||be(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let s=!1;function o(i){if(i=J(i),i){const c=a.findKey(r,i);c&&(!n||be(r,r[c],c,n))&&(delete r[c],s=!0)}}return a.isArray(t)?t.forEach(o):o(t),s}clear(t){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!t||be(this,this[o],o,t,!0))&&(delete this[o],s=!0)}return s}normalize(t){const n=this,r={};return a.forEach(this,(s,o)=>{const i=a.findKey(r,o);if(i){n[i]=ee(s),delete n[o];return}const c=t?In(o):String(o).trim();c!==o&&delete n[o],n[c]=ee(s),r[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=t&&a.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[Ze]=this[Ze]={accessors:{}}).accessors,s=this.prototype;function o(i){const c=J(i);r[c]||(kn(s,i),r[c]=!0)}return a.isArray(t)?t.forEach(o):o(t),this}};v.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(v.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),a.freezeMethods(v);function _e(e,t){const n=this||M,r=t||n,s=v.from(r.headers);let o=r.data;return a.forEach(e,function(c){o=c.call(n,o,s.normalize(),t?t.status:void 0)}),s.normalize(),o}function Ye(e){return!!(e&&e.__CANCEL__)}function z(e,t,n){S.call(this,e??"canceled",S.ERR_CANCELED,t,n),this.name="CanceledError"}a.inherits(z,S,{__CANCEL__:!0});function et(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new S("Request failed with status code "+n.status,[S.ERR_BAD_REQUEST,S.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Pn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Un(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,o=0,i;return t=t!==void 0?t:1e3,function(f){const l=Date.now(),u=r[o];i||(i=l),n[s]=f,r[s]=l;let h=o,y=0;for(;h!==s;)y+=n[h++],h=h%e;if(s=(s+1)%e,s===o&&(o=(o+1)%e),l-i<t)return;const _=u&&l-u;return _?Math.round(y*1e3/_):void 0}}function Ln(e,t){let n=0,r=1e3/t,s,o;const i=(l,u=Date.now())=>{n=u,s=null,o&&(clearTimeout(o),o=null),e.apply(null,l)};return[(...l)=>{const u=Date.now(),h=u-n;h>=r?i(l,u):(s=l,o||(o=setTimeout(()=>{o=null,i(s)},r-h)))},()=>s&&i(s)]}const te=(e,t,n=3)=>{let r=0;const s=Un(50,250);return Ln(o=>{const i=o.loaded,c=o.lengthComputable?o.total:void 0,f=i-r,l=s(f),u=i<=c;r=i;const h={loaded:i,total:c,progress:c?i/c:void 0,bytes:f,rate:l||void 0,estimated:l&&c&&u?(c-i)/l:void 0,event:o,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(h)},n)},tt=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},nt=e=>(...t)=>a.asap(()=>e(...t)),xn=A.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,A.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(A.origin),A.navigator&&/(msie|trident)/i.test(A.navigator.userAgent)):()=>!0,Dn=A.hasStandardBrowserEnv?{write(e,t,n,r,s,o){const i=[e+"="+encodeURIComponent(t)];a.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),a.isString(r)&&i.push("path="+r),a.isString(s)&&i.push("domain="+s),o===!0&&i.push("secure"),document.cookie=i.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(){return null},remove(){}};function Nn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Fn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function rt(e,t,n){let r=!Nn(t);return e&&(r||n==!1)?Fn(e,t):t}const st=e=>e instanceof v?{...e}:e;function F(e,t){t=t||{};const n={};function r(l,u,h,y){return a.isPlainObject(l)&&a.isPlainObject(u)?a.merge.call({caseless:y},l,u):a.isPlainObject(u)?a.merge({},u):a.isArray(u)?u.slice():u}function s(l,u,h,y){if(a.isUndefined(u)){if(!a.isUndefined(l))return r(void 0,l,h,y)}else return r(l,u,h,y)}function o(l,u){if(!a.isUndefined(u))return r(void 0,u)}function i(l,u){if(a.isUndefined(u)){if(!a.isUndefined(l))return r(void 0,l)}else return r(void 0,u)}function c(l,u,h){if(h in t)return r(l,u);if(h in e)return r(void 0,l)}const f={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(l,u,h)=>s(st(l),st(u),h,!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(u){const h=f[u]||s,y=h(e[u],t[u],u);a.isUndefined(y)&&h!==c||(n[u]=y)}),n}const ot=e=>{const t=F({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:i,auth:c}=t;t.headers=i=v.from(i),t.url=Ke(rt(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&i.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):"")));let f;if(a.isFormData(n)){if(A.hasStandardBrowserEnv||A.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((f=i.getContentType())!==!1){const[l,...u]=f?f.split(";").map(h=>h.trim()).filter(Boolean):[];i.setContentType([l||"multipart/form-data",...u].join("; "))}}if(A.hasStandardBrowserEnv&&(r&&a.isFunction(r)&&(r=r(t)),r||r!==!1&&xn(t.url))){const l=s&&o&&Dn.read(o);l&&i.set(s,l)}return t},Bn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const s=ot(e);let o=s.data;const i=v.from(s.headers).normalize();let{responseType:c,onUploadProgress:f,onDownloadProgress:l}=s,u,h,y,_,m;function p(){_&&_(),m&&m(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u)}let d=new XMLHttpRequest;d.open(s.method.toUpperCase(),s.url,!0),d.timeout=s.timeout;function w(){if(!d)return;const E=v.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),C={data:!c||c==="text"||c==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:E,config:e,request:d};et(function(q){n(q),p()},function(q){r(q),p()},C),d=null}"onloadend"in d?d.onloadend=w:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(w)},d.onabort=function(){d&&(r(new S("Request aborted",S.ECONNABORTED,e,d)),d=null)},d.onerror=function(){r(new S("Network Error",S.ERR_NETWORK,e,d)),d=null},d.ontimeout=function(){let L=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const C=s.transitional||Ge;s.timeoutErrorMessage&&(L=s.timeoutErrorMessage),r(new S(L,C.clarifyTimeoutError?S.ETIMEDOUT:S.ECONNABORTED,e,d)),d=null},o===void 0&&i.setContentType(null),"setRequestHeader"in d&&a.forEach(i.toJSON(),function(L,C){d.setRequestHeader(C,L)}),a.isUndefined(s.withCredentials)||(d.withCredentials=!!s.withCredentials),c&&c!=="json"&&(d.responseType=s.responseType),l&&([y,m]=te(l,!0),d.addEventListener("progress",y)),f&&d.upload&&([h,_]=te(f),d.upload.addEventListener("progress",h),d.upload.addEventListener("loadend",_)),(s.cancelToken||s.signal)&&(u=E=>{d&&(r(!E||E.type?new z(null,e,d):E),d.abort(),d=null)},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const g=Pn(s.url);if(g&&A.protocols.indexOf(g)===-1){r(new S("Unsupported protocol "+g+":",S.ERR_BAD_REQUEST,e));return}d.send(o||null)})},jn=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,s;const o=function(l){if(!s){s=!0,c();const u=l instanceof Error?l:this.reason;r.abort(u instanceof S?u:new z(u instanceof Error?u.message:u))}};let i=t&&setTimeout(()=>{i=null,o(new S(`timeout ${t} of ms exceeded`,S.ETIMEDOUT))},t);const c=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(l=>{l.unsubscribe?l.unsubscribe(o):l.removeEventListener("abort",o)}),e=null)};e.forEach(l=>l.addEventListener("abort",o));const{signal:f}=r;return f.unsubscribe=()=>a.asap(c),f}},qn=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,s;for(;r<n;)s=r+t,yield e.slice(r,s),r=s},Hn=async function*(e,t){for await(const n of zn(e))yield*qn(n,t)},zn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},it=(e,t,n,r)=>{const s=Hn(e,t);let o=0,i,c=f=>{i||(i=!0,r&&r(f))};return new ReadableStream({async pull(f){try{const{done:l,value:u}=await s.next();if(l){c(),f.close();return}let h=u.byteLength;if(n){let y=o+=h;n(y)}f.enqueue(new Uint8Array(u))}catch(l){throw c(l),l}},cancel(f){return c(f),s.return()}},{highWaterMark:2})},ne=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",at=ne&&typeof ReadableStream=="function",Vn=ne&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),ct=(e,...t)=>{try{return!!e(...t)}catch{return!1}},$n=at&&ct(()=>{let e=!1;const t=new Request(A.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),lt=64*1024,Ee=at&&ct(()=>a.isReadableStream(new Response("").body)),re={stream:Ee&&(e=>e.body)};ne&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!re[t]&&(re[t]=a.isFunction(e[t])?n=>n[t]():(n,r)=>{throw new S(`Response type '${t}' is not supported`,S.ERR_NOT_SUPPORT,r)})})})(new Response);const Mn=async e=>{if(e==null)return 0;if(a.isBlob(e))return e.size;if(a.isSpecCompliantForm(e))return(await new Request(A.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(a.isArrayBufferView(e)||a.isArrayBuffer(e))return e.byteLength;if(a.isURLSearchParams(e)&&(e=e+""),a.isString(e))return(await Vn(e)).byteLength},Jn=async(e,t)=>{const n=a.toFiniteNumber(e.getContentLength());return n??Mn(t)},Re={http:pn,xhr:Bn,fetch:ne&&(async e=>{let{url:t,method:n,data:r,signal:s,cancelToken:o,timeout:i,onDownloadProgress:c,onUploadProgress:f,responseType:l,headers:u,withCredentials:h="same-origin",fetchOptions:y}=ot(e);l=l?(l+"").toLowerCase():"text";let _=jn([s,o&&o.toAbortSignal()],i),m;const p=_&&_.unsubscribe&&(()=>{_.unsubscribe()});let d;try{if(f&&$n&&n!=="get"&&n!=="head"&&(d=await Jn(u,r))!==0){let C=new Request(t,{method:"POST",body:r,duplex:"half"}),D;if(a.isFormData(r)&&(D=C.headers.get("content-type"))&&u.setContentType(D),C.body){const[q,pe]=tt(d,te(nt(f)));r=it(C.body,lt,q,pe)}}a.isString(h)||(h=h?"include":"omit");const w="credentials"in Request.prototype;m=new Request(t,{...y,signal:_,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:r,duplex:"half",credentials:w?h:void 0});let g=await fetch(m);const E=Ee&&(l==="stream"||l==="response");if(Ee&&(c||E&&p)){const C={};["status","statusText","headers"].forEach(At=>{C[At]=g[At]});const D=a.toFiniteNumber(g.headers.get("content-length")),[q,pe]=c&&tt(D,te(nt(c),!0))||[];g=new Response(it(g.body,lt,q,()=>{pe&&pe(),p&&p()}),C)}l=l||"text";let L=await re[a.findKey(re,l)||"text"](g,e);return!E&&p&&p(),await new Promise((C,D)=>{et(C,D,{data:L,headers:v.from(g.headers),status:g.status,statusText:g.statusText,config:e,request:m})})}catch(w){throw p&&p(),w&&w.name==="TypeError"&&/fetch/i.test(w.message)?Object.assign(new S("Network Error",S.ERR_NETWORK,e,m),{cause:w.cause||w}):S.from(w,w&&w.code,e,m)}})};a.forEach(Re,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const ut=e=>`- ${e}`,Wn=e=>a.isFunction(e)||e===null||e===!1,dt={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let n,r;const s={};for(let o=0;o<t;o++){n=e[o];let i;if(r=n,!Wn(n)&&(r=Re[(i=String(n)).toLowerCase()],r===void 0))throw new S(`Unknown adapter '${i}'`);if(r)break;s[i||"#"+o]=r}if(!r){const o=Object.entries(s).map(([c,f])=>`adapter ${c} `+(f===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since :
`+o.map(ut).join(`
`):" "+ut(o[0]):"as no adapter specified";throw new S("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return r},adapters:Re};function Te(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new z(null,e)}function ft(e){return Te(e),e.headers=v.from(e.headers),e.data=_e.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),dt.getAdapter(e.adapter||M.adapter)(e).then(function(r){return Te(e),r.data=_e.call(e,e.transformResponse,r),r.headers=v.from(r.headers),r},function(r){return Ye(r)||(Te(e),r&&r.response&&(r.response.data=_e.call(e,e.transformResponse,r.response),r.response.headers=v.from(r.response.headers))),Promise.reject(r)})}const pt="1.8.4",se={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{se[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const ht={};se.transitional=function(t,n,r){function s(o,i){return"[Axios v"+pt+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(t===!1)throw new S(s(i," has been removed"+(n?" in "+n:"")),S.ERR_DEPRECATED);return n&&!ht[i]&&(ht[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,c):!0}},se.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Kn(e,t,n){if(typeof e!="object")throw new S("options must be an object",S.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const o=r[s],i=t[o];if(i){const c=e[o],f=c===void 0||i(c,o,e);if(f!==!0)throw new S("option "+o+" must be "+f,S.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new S("Unknown option "+o,S.ERR_BAD_OPTION)}}const oe={assertOptions:Kn,validators:se},U=oe.validators;let B=class{constructor(t){this.defaults=t,this.interceptors={request:new Xe,response:new Xe}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
`+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=F(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&oe.assertOptions(r,{silentJSONParsing:U.transitional(U.boolean),forcedJSONParsing:U.transitional(U.boolean),clarifyTimeoutError:U.transitional(U.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:oe.assertOptions(s,{encode:U.function,serialize:U.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),oe.assertOptions(n,{baseUrl:U.spelling("baseURL"),withXsrfToken:U.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],m=>{delete o[m]}),n.headers=v.concat(i,o);const c=[];let f=!0;this.interceptors.request.forEach(function(p){typeof p.runWhen=="function"&&p.runWhen(n)===!1||(f=f&&p.synchronous,c.unshift(p.fulfilled,p.rejected))});const l=[];this.interceptors.response.forEach(function(p){l.push(p.fulfilled,p.rejected)});let u,h=0,y;if(!f){const m=[ft.bind(this),void 0];for(m.unshift.apply(m,c),m.push.apply(m,l),y=m.length,u=Promise.resolve(n);h<y;)u=u.then(m[h++],m[h++]);return u}y=c.length;let _=n;for(h=0;h<y;){const m=c[h++],p=c[h++];try{_=m(_)}catch(d){p.call(this,d);break}}try{u=ft.call(this,_)}catch(m){return Promise.reject(m)}for(h=0,y=l.length;h<y;)u=u.then(l[h++],l[h++]);return u}getUri(t){t=F(this.defaults,t);const n=rt(t.baseURL,t.url,t.allowAbsoluteUrls);return Ke(n,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){B.prototype[t]=function(n,r){return this.request(F(r||{},{method:t,url:n,data:(r||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function n(r){return function(o,i,c){return this.request(F(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}B.prototype[t]=n(),B.prototype[t+"Form"]=n(!0)});let Xn=class vt{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(s=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},t(function(o,i,c){r.reason||(r.reason=new z(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new vt(function(s){t=s}),cancel:t}}};function Gn(e){return function(n){return e.apply(null,n)}}function Qn(e){return a.isObject(e)&&e.isAxiosError===!0}const Oe={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(Oe).forEach(([e,t])=>{Oe[t]=e});function mt(e){const t=new B(e),n=xe(B.prototype.request,t);return a.extend(n,B.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return mt(F(e,s))},n}const T=mt(M);T.Axios=B,T.CanceledError=z,T.CancelToken=Xn,T.isCancel=Ye,T.VERSION=pt,T.toFormData=Y,T.AxiosError=S,T.Cancel=T.CanceledError,T.all=function(t){return Promise.all(t)},T.spread=Gn,T.isAxiosError=Qn,T.mergeConfig=F,T.AxiosHeaders=v,T.formToJSON=e=>Qe(a.isHTMLForm(e)?new FormData(e):e),T.getAdapter=dt.getAdapter,T.HttpStatusCode=Oe,T.default=T;const{Axios:Pr,AxiosError:Ur,CanceledError:Lr,isCancel:xr,CancelToken:Dr,VERSION:Nr,all:Fr,Cancel:Br,isAxiosError:jr,spread:qr,toFormData:Hr,AxiosHeaders:zr,HttpStatusCode:Vr,formToJSON:$r,getAdapter:Mr,mergeConfig:Jr}=T,Zn=T.create({baseURL:"https://tag-api.kuzen.io"}),Ae=({url:e,method:t,params:n,data:r,headers:s={}})=>Zn({url:e,method:t,params:n,data:r,headers:{...s,"Access-Control-Allow-Origin":"*"}}).then(o=>o.data).catch(o=>Yn(o)),Yn=e=>{let t="Something went wrong";throw e.response&&e.response.data&&(t=e.response.data.error||e.response.data.message),new Error(t)},ve={tag:"/api/v1/tag",action:"/api/v1/actions",createNewUser:"/api/v1/users"};var ie=(e=>(e.AllUsers="all_users",e.FriendOnly="friend_only",e))(ie||{}),W=(e=>(e.VisitOrLeavePage="visit_or_leave_page",e.WebPluginStart="web_plugin_start",e))(W||{});const er=({tag_tracking_code:e})=>Ae({method:"get",url:ve.tag,params:{tag_tracking_code:e}}),gt=({tag_tracking_code:e,line_id:t})=>{const n={tag_tracking_code:e};return t&&(n.line_id=t),Ae({method:"post",url:ve.createNewUser,data:n})},Ce=e=>Ae({method:"post",url:ve.action,data:e}),tr={},St=e=>{let t;const n=new Set,r=(u,h)=>{const y=typeof u=="function"?u(t):u;if(!Object.is(y,t)){const _=t;t=h??(typeof y!="object"||y===null)?y:Object.assign({},t,y),n.forEach(m=>m(t,_))}},s=()=>t,f={setState:r,getState:s,getInitialState:()=>l,subscribe:u=>(n.add(u),()=>n.delete(u)),destroy:()=>{(tr?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},l=t=e(r,s,f);return f},ae=e=>e?St(e):St,b=ae(e=>({tag:null,isDebug:!1,trackingCode:"",queryParameterUrls:[],blockAutoSendingVisitEvent:!1,setTag:t=>e({tag:t}),setTrackingCode:t=>e({trackingCode:t}),addQueryParameterUrl:t=>e(n=>({...n,queryParameterUrls:[...n.queryParameterUrls,...t]}))})),nr={};function Ie(e,t){let n;try{n=e()}catch{return}return{getItem:s=>{var o;const i=f=>f===null?null:JSON.parse(f,void 0),c=(o=n.getItem(s))!=null?o:null;return c instanceof Promise?c.then(i):i(c)},setItem:(s,o)=>n.setItem(s,JSON.stringify(o,void 0)),removeItem:s=>n.removeItem(s)}}const K=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then(r){return K(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return K(r)(n)}}}},rr=(e,t)=>(n,r,s)=>{let o={getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:d=>d,version:0,merge:(d,w)=>({...w,...d}),...t},i=!1;const c=new Set,f=new Set;let l;try{l=o.getStorage()}catch{}if(!l)return e((...d)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...d)},r,s);const u=K(o.serialize),h=()=>{const d=o.partialize({...r()});let w;const g=u({state:d,version:o.version}).then(E=>l.setItem(o.name,E)).catch(E=>{w=E});if(w)throw w;return g},y=s.setState;s.setState=(d,w)=>{y(d,w),h()};const _=e((...d)=>{n(...d),h()},r,s);let m;const p=()=>{var d;if(!l)return;i=!1,c.forEach(g=>g(r()));const w=((d=o.onRehydrateStorage)==null?void 0:d.call(o,r()))||void 0;return K(l.getItem.bind(l))(o.name).then(g=>{if(g)return o.deserialize(g)}).then(g=>{if(g)if(typeof g.version=="number"&&g.version!==o.version){if(o.migrate)return o.migrate(g.state,g.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return g.state}).then(g=>{var E;return m=o.merge(g,(E=r())!=null?E:_),n(m,!0),h()}).then(()=>{w==null||w(m,void 0),i=!0,f.forEach(g=>g(m))}).catch(g=>{w==null||w(void 0,g)})};return s.persist={setOptions:d=>{o={...o,...d},d.getStorage&&(l=d.getStorage())},clearStorage:()=>{l==null||l.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>p(),hasHydrated:()=>i,onHydrate:d=>(c.add(d),()=>{c.delete(d)}),onFinishHydration:d=>(f.add(d),()=>{f.delete(d)})},p(),m||_},sr=(e,t)=>(n,r,s)=>{let o={storage:Ie(()=>localStorage),partialize:p=>p,version:0,merge:(p,d)=>({...d,...p}),...t},i=!1;const c=new Set,f=new Set;let l=o.storage;if(!l)return e((...p)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...p)},r,s);const u=()=>{const p=o.partialize({...r()});return l.setItem(o.name,{state:p,version:o.version})},h=s.setState;s.setState=(p,d)=>{h(p,d),u()};const y=e((...p)=>{n(...p),u()},r,s);s.getInitialState=()=>y;let _;const m=()=>{var p,d;if(!l)return;i=!1,c.forEach(g=>{var E;return g((E=r())!=null?E:y)});const w=((d=o.onRehydrateStorage)==null?void 0:d.call(o,(p=r())!=null?p:y))||void 0;return K(l.getItem.bind(l))(o.name).then(g=>{if(g)if(typeof g.version=="number"&&g.version!==o.version){if(o.migrate)return o.migrate(g.state,g.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return g.state}).then(g=>{var E;return _=o.merge(g,(E=r())!=null?E:y),n(_,!0),u()}).then(()=>{w==null||w(_,void 0),_=r(),i=!0,f.forEach(g=>g(_))}).catch(g=>{w==null||w(void 0,g)})};return s.persist={setOptions:p=>{o={...o,...p},p.storage&&(l=p.storage)},clearStorage:()=>{l==null||l.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>m(),hasHydrated:()=>i,onHydrate:p=>(c.add(p),()=>{c.delete(p)}),onFinishHydration:p=>(f.add(p),()=>{f.delete(p)})},o.skipHydration||m(),_||y},yt=(e,t)=>"getStorage"in t||"serialize"in t||"deserialize"in t?((nr?"production":void 0)!=="production"&&console.warn("[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead."),rr(e,t)):sr(e,t),P=ae(yt((e,t)=>({lastVisitedDates:[],customValues:{},getLastVisitedDate:n=>{var r;return((r=t().lastVisitedDates.find(s=>s.url===n.url&&s.userId===n.userId))==null?void 0:r.date)??""},setLastVisitedDate:n=>e(r=>{const s=r.lastVisitedDates.find(o=>o.url===n.url&&o.userId===n.userId);return s?s.date=n.date:r.lastVisitedDates.push({url:n.url,date:n.date,userId:n.userId}),r}),setCustomValue:(n,r)=>e(s=>({...s,customValues:{...s.customValues,[n]:r}}))}),{name:"kuzen-tag-persistent",storage:Ie(()=>localStorage)})),or=e=>{var r;const n=`; ${document.cookie}`.split(`; ${e}=`);if(n.length===2)return(r=n.pop())==null?void 0:r.split(";").shift()},ir=()=>{var o,i;let e="";{if(!document.currentScript)throw new Error("Kuzen script not found");e=((i=(o=document.currentScript)==null?void 0:o.getAttribute("src"))==null?void 0:i.split("?")[1])??""}if(!e)throw new Error("Kuzen tag search params not found");const t=new URLSearchParams(e),n=t.get("tracking_code"),r=t.get("line"),s=t.get("debug");if(!n||!r)throw new Error("Kuzen tag tracking code or line code not found");return{trackingCode:n,isLine:r==="1",isDebug:!!s}},ce=e=>{const t=P.getState().customValues,n={...e},r={};return Object.keys(t).forEach(s=>{let o=!1;for(const i in e.action_info)if(s===i){o=!0;try{n.action_info[i]=new Function(`return ${t[s]}`)()}catch{n.action_info[i]=t[s]}}for(const i in e.user)if(s===i){o=!0;try{n.user[i]=new Function(`return ${t[s]}`)()}catch{n.user[i]=t[s]}}if(!o)try{r[s]=new Function(`return ${t[s]}`)()}catch{r[s]=t[s]}}),n.action_info.custom_values=r,n},O=(...e)=>{b.getState().isDebug&&console.log(...e)},ke=ae(e=>({hitWebPluginButton:!1,setHitWebPluginButton:t=>e({hitWebPluginButton:t})}));/*! js-cookie v3.0.5 | MIT */function le(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)e[r]=n[r]}return e}var ar={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Pe(e,t){function n(s,o,i){if(!(typeof document>"u")){i=le({},t,i),typeof i.expires=="number"&&(i.expires=new Date(Date.now()+i.expires*864e5)),i.expires&&(i.expires=i.expires.toUTCString()),s=encodeURIComponent(s).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var c="";for(var f in i)i[f]&&(c+="; "+f,i[f]!==!0&&(c+="="+i[f].split(";")[0]));return document.cookie=s+"="+e.write(o,s)+c}}function r(s){if(!(typeof document>"u"||arguments.length&&!s)){for(var o=document.cookie?document.cookie.split("; "):[],i={},c=0;c<o.length;c++){var f=o[c].split("="),l=f.slice(1).join("=");try{var u=decodeURIComponent(f[0]);if(i[u]=e.read(l,u),s===u)break}catch{}}return s?i[s]:i}}return Object.create({set:n,get:r,remove:function(s,o){n(s,"",le({},o,{expires:-1}))},withAttributes:function(s){return Pe(this.converter,le({},this.attributes,s))},withConverter:function(s){return Pe(le({},this.converter,s),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Ue=Pe(ar,{path:"/"});const cr=()=>{let n=new URL(location.href).hostname.split(".");if(n.length>2){const r=n.slice(-3).join("."),s=n.slice(-2).join(".");if(/^(com|org|net|gov|edu|mil|int|co|ac|ad|ed|go|gr|lg|geo|ne)\.[a-z]{2,3}$/.test(s))return r}return n.slice(-2).join(".")},Le="kuzen-tag-line-id",wt={getItem:()=>({lineId:Ue.get(Le)??""}),setItem:e=>{Ue.set(Le,e.lineId,{expires:30,domain:cr(),secure:!0})},removeItem:()=>{Ue.remove(Le)}},R=ae(yt((e,t,{getState:n})=>({userId:{},lineId:"",setUserId:(r,s)=>{e({userId:{[s]:r}})},getUserId:r=>n().userId[r],setLineId:r=>{e({lineId:r}),wt.setItem(n())}}),{name:"kuzen-tag-user",storage:Ie(()=>localStorage)})),lr=e=>`kuzen-tag-user-${e}`,ue=e=>(new URLSearchParams(window.location.search).get(e)||"").replace(/ /g,"+");var j=(e=>(e.VISIT="visit",e.LEAVE="leave",e.START_CHAT="start_chat",e))(j||{});const de=({action_type:e,prevent_visit_counting:t,main_prevent_visit_counting:n})=>{var f;const r=b.getState().trackingCode,s=R.getState().getUserId(b.getState().trackingCode),o=R.getState().lineId,i={web_plugin_access_token:"__const"in window?((f=window.__const)==null?void 0:f.access_token)??"":"",user_id_in_chat_application:or("client")||"",refer:document.referrer,user_agent:window.navigator.userAgent,language:window.navigator.language,page_title:document.title,url:location.protocol+"//"+location.host+location.pathname,url_with_params:location.href,tag_tracking_code:r,custom_values:{},date:new Date().getTime(),action_type:e};return{user:{name:localStorage.getItem("kuzen_tag_name"),user_id:s,line_id:o},action_info:{...i,prevent_visit_counting:t,main_prevent_visit_counting:n}}},ur=1e4,bt=()=>{const e=de({action_type:j.LEAVE,prevent_visit_counting:!1});return{command:"message",data:(()=>{const t={action:"speak",leave_info:ce(e)};return JSON.stringify(t)})(),identifier:JSON.stringify({channel:"LeaveTrackingChannel"})}},_t=()=>{var n,r,s;const e=R.getState().getUserId(b.getState().trackingCode);if(((n=b.getState().tag)==null?void 0:n.target_user)===ie.FriendOnly&&!R.getState().lineId||(O("handleTrackLeave",(r=b.getState().tag)==null?void 0:r.timing_of_measurement,ke.getState().hitWebPluginButton),((s=b.getState().tag)==null?void 0:s.timing_of_measurement)===W.WebPluginStart&&!ke.getState().hitWebPluginButton))return;const t=new WebSocket(`wss://tag-api.kuzen.io/cable?user_id=${e}`);t.onopen=()=>{const o={command:"subscribe",identifier:'{"channel":"LeaveTrackingChannel"}'};t.send(JSON.stringify(o)),setInterval(()=>{t.send(JSON.stringify(bt()))},ur)},t.onmessage=o=>{try{JSON.parse(o.data).type==="confirm_subscription"&&t.send(JSON.stringify(bt()))}catch{console.error("Error parsing data",o.data)}},document.addEventListener("beforeunload",()=>{t.readyState==WebSocket.OPEN&&t.close()})};function fe(e){const n=new Date().getTime()-new Date(e).getTime();return Math.floor(n/(1e3*60*60*24))}const x=e=>new URL(e).origin+new URL(e).pathname,Et=()=>{const e=R.getState().getUserId(b.getState().trackingCode);if(!e)return;const t=fe(P.getState().getLastVisitedDate({url:x(window.location.href),userId:e}))<1,n=fe(P.getState().getLastVisitedDate({url:x(window.location.origin),userId:e}))<1;P.getState().setLastVisitedDate({url:x(window.location.href),date:new Date().toISOString(),userId:e}),P.getState().setLastVisitedDate({url:x(window.location.origin),date:new Date().toISOString(),userId:e});const r=de({action_type:j.VISIT,prevent_visit_counting:t,main_prevent_visit_counting:n});O("Push visit event data to server",r),Ce(ce(r))},dr=()=>{var e,t,n;if(!(((e=b.getState().tag)==null?void 0:e.target_user)===ie.FriendOnly&&!R.getState().lineId)){if(((t=b.getState().tag)==null?void 0:t.timing_of_measurement)===W.VisitOrLeavePage)Et();else if(((n=b.getState().tag)==null?void 0:n.timing_of_measurement)===W.WebPluginStart)return}},fr=()=>{const e=R.getState().getUserId(b.getState().trackingCode);if(!e)return;const t=fe(P.getState().getLastVisitedDate({url:x(window.location.href),userId:e}))<1,n=fe(P.getState().getLastVisitedDate({url:x(window.location.origin),userId:e}))<1;P.getState().setLastVisitedDate({url:x(window.location.href),date:new Date().toISOString(),userId:e}),P.getState().setLastVisitedDate({url:x(window.location.origin),date:new Date().toISOString(),userId:e});const r=de({action_type:j.START_CHAT,prevent_visit_counting:t,main_prevent_visit_counting:n});O("Push start chat event data to server",r),Ce(ce(r))};function pr(e){const t=e.target;O("click on wp");const n=document.querySelector("#web_plugin_open_button");((t==null?void 0:t.id)==="web_plugin_open_button"||n!=null&&n.contains(t))&&(fr(),ke.getState().setHitWebPluginButton(!0),_t())}const hr=()=>{var e,t;((e=b.getState().tag)==null?void 0:e.target_user)===ie.FriendOnly&&!R.getState().lineId||((t=b.getState().tag)==null?void 0:t.timing_of_measurement)===W.WebPluginStart&&document.body.addEventListener("click",pr)},mr=()=>{if(R.getState().getUserId(b.getState().trackingCode)){const t=de({action_type:j.LEAVE,prevent_visit_counting:!1});O("Push leave event data to server",t),Ce(ce(t))}},Rt=e=>{try{return new URL(e)}catch{return O("Invalid URL",{href:e}),""}},Tt=(e,t)=>e.some(n=>n.startsWith(t)),gr=(e,t)=>{document.querySelectorAll("a").forEach(r=>{const s=r.getAttribute("href");if(!s)return;const o=Rt(s);if(!o)return;const i=o.origin+o.pathname;Tt(e,i)&&(o.searchParams.set("kuzen_tag_user_id",t),r.setAttribute("href",o.toString()),O("Add query parameter to a tag",{originUrl:s,newUrl:o.toString()}))})},Sr=(e,t)=>{document.querySelectorAll("form").forEach(r=>{const s=Rt(r.action);if(!s)return;const o=s.origin+s.pathname;Tt(e,o)&&(s.searchParams.set("kuzen_tag_user_id",t),r.setAttribute("action",s.toString()),O("Add query parameter to form",{originUrl:r.action,newUrl:s.toString()}))})},Ot=()=>{const e=b.getState().queryParameterUrls,t=R.getState().getUserId(b.getState().trackingCode);gr(e,t),Sr(e,t)},yr=e=>{switch(O("handleTrackAction",{action:e}),e){case j.VISIT:Et();break;case j.LEAVE:mr();break;default:console.warn("Unsupported action");break}};async function wr(e){const t=R.getState().lineId;if(R.getState().setLineId(e),t&&e&&e!==t){const r={tag_tracking_code:b.getState().trackingCode,line_id:R.getState().lineId},s=await gt({...r});R.getState().setUserId(s.user_id,b.getState().trackingCode)}}const br=()=>{window.kuzen_tag={set_custom_value:(e,t)=>{O("set_custom_value",{key:e,value:t}),P.getState().setCustomValue(e,t)},add_query_parameter_url:e=>{O("add_query_parameter_url",{urls:e}),b.getState().addQueryParameterUrl(e),Ot()},replace_query_parameter_url:e=>{O("replace_query_parameter_url",{urls:e}),b.setState({queryParameterUrls:e}),Ot()},clear_custom_values:()=>{O("clear_custom_values"),P.setState({customValues:{}})},clear_query_parameter_urls:()=>{O("clear_query_parameter_urls"),b.setState({queryParameterUrls:[]})},set_block_auto_sending_visit_event:e=>{O("set_block_auto_sending_visit_event",{block:e}),b.setState({blockAutoSendingVisitEvent:e})},send:e=>{O("send",{action:e}),yr(e)},set_line_id:e=>{O("set_line_id",{line_id:e}),wr(e)}}},_r=()=>{const e=wt.getItem(),t=(e==null?void 0:e.lineId)??"";t&&R.getState().setLineId(t)},Er=()=>{const{trackingCode:e,isDebug:t}=ir();b.getState().setTrackingCode(e),b.setState({isDebug:t}),R.persist.setOptions({name:lr(e)}),R.persist.rehydrate(),O("load tracking code",{trackingCode:e})},Rr=async()=>{const e=b.getState().trackingCode,t=await er({tag_tracking_code:e});if(!t)throw new Error("Tag not found");b.getState().setTag(t)};function Tr(){typeof window.kuzenTagAsyncInit=="function"&&window.kuzenTagAsyncInit()}(async()=>{br(),_r(),Er(),await Rr();const e=R.getState().lineId,t=R.getState().getUserId(b.getState().trackingCode),n=!!ue("line_id")&&ue("line_id")!==e;if(ue("line_id")&&R.getState().setLineId(ue("line_id")),!t||n){const r={tag_tracking_code:b.getState().trackingCode,line_id:R.getState().lineId},s=await gt({...r});R.getState().setUserId(s.user_id,b.getState().trackingCode)}O({lineId:R.getState().lineId,userId:R.getState().userId}),Tr(),b.getState().blockAutoSendingVisitEvent||dr(),hr(),_t(),O("Kuzen Tag Script is initialized",{tag:b.getState().tag,user:R.getState(),action:b.getState()})})()})();
