From 6b12d9793b808bb4ea04a5d35de5266fb1747cf6 Mon Sep 17 00:00:00 2001 From: Rizky Date: Sat, 22 Jun 2024 16:28:25 +0700 Subject: [PATCH] fix --- app/srv/core/main.js | 2 +- app/web/src/nova/vi/vi.tsx | 29 ++++++++++++++++------------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/app/srv/core/main.js b/app/srv/core/main.js index 7839bd37..5d22f9d7 100644 --- a/app/srv/core/main.js +++ b/app/srv/core/main.js @@ -106,7 +106,7 @@ ${p} return ${g} `);s.props[p]={value:g};let w=_(...Object.values(c));typeof w=="function"&&(s.props[p].fn=w,w=(...h)=>{if(s)return s.props?.[p].fn(...h)}),c[p]=w,u[p]=w,r&&(r[p]=w)}catch{a.add(p)}if(location.pathname.startsWith("/ed/")&&ni.item_id&&t.item.id===ni.item_id){ni.scope={};for(let[p,f]of Object.entries(r))ni.scope[p]=f;ni.scope.self_props=u}}}},ct={timeout:null,set:new WeakSet,map:{},src:{}},yE=(e,t)=>{if(!ct.set.has(e)){ct.set.add(e);let n=(0,zy.createId)();ct.map[n]={mprop:e},ct.src[n]=t}clearTimeout(ct.timeout),ct.timeout=setTimeout(async()=>{let n=await _api.code_build(ct.src),r=null;for(let[i,o]of Object.entries(n)){let s=ct.map[i].mprop;if(!r&&s.doc){r=s.doc;break}}r&&(r.transact(()=>{for(let[i,o]of Object.entries(n))ct.map[i].mprop.set("valueBuilt",o)}),ct.set=new WeakSet,ct.map={},ct.src={})},300)},ql=(e,t,n,r)=>{let i=r?t.item.script_keyed?.[r]:t.item.script;if(i&&i.props){let o={...n,api:e.site.api,db:e.site.db};for(let[s,l]of Object.entries(i.props))if(l.fn){let c=new Function(...Object.keys(o),`// [${t.item.name}] ${s}: ${t.item.id} return ${l.value||""} - `);l.fn=c(...Object.values(o))}}};var Hf=P(G()),Vf=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{let o=Pn(An,"VI"),[s,l]=(0,Uy.useState)({});e.render=()=>{l({})};let c=t;return e.item.component?.id&&(c||(c={}),jy(o,e,n,c,i,r)),e.item.adv?.html?(0,Hf.jsx)(Ql,{meta:e,passprop:c,is_layout:n,depth:i}):e.item.adv?.js&&(My(o,e,n,c,i,r),e.script)?e.script.result:(0,Hf.jsx)(Ql,{meta:e,passprop:c,is_layout:n,depth:i})};var Se=P(G()),_E=70,vE={debug:!!localStorage.getItem("prasi-js-debug")},Xl={enabled:!1,meta:{}},en=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{if(Xl.enabled){let o=Xl.meta;if(o[e.item.id]?o[e.item.id].last_render===Math.floor(Date.now()/1e3)?o[e.item.id].count++:o[e.item.id]={last_render:Math.floor(Date.now()/1e3),count:1}:o[e.item.id]={last_render:Math.floor(Date.now()/1e3),count:1},o[e.item.id]?.count>_E)return(0,Se.jsxs)("div",{className:"bg-orange-100 border border-orange-300 rounded-sm text-xs flex flex-col items-center",children:[(0,Se.jsxs)("div",{className:"text-[10px] font-bold text-red-900 self-stretch px-1",children:["WARNING: Render loop detected in [",e.item.name,"]"]}),(0,Se.jsxs)("p",{className:"border-b border-orange-300 px-1 pb-1 min-w-[100px]",children:["Rendered ",o[e.item.id]?.count," times in less than 1 second."]})]})}if(!e||e.item.hidden)return null;if(vE.debug){let o="";for(let s=0;s{let o=Pn(An,"VI");if(n&&e.item.name==="children"){let l=[];for(let c of o.entry){let a=o.meta[c];if(a.item.adv?.js||a.item.component?.id)l.push((0,Se.jsx)(Pt,{meta:a,children:(0,Se.jsx)(Vf,{meta:a,is_layout:!1,passprop:{...t},parent_key:r,depth:i+1})}));else{let u=bo(o,a,!1,t,i);o.visit&&o.visit(a,u),l.push((0,Se.jsx)("div",{...u.props}))}}return(0,Se.jsx)(Se.Fragment,{children:l.map((c,a)=>(0,Se.jsx)(By.Fragment,{children:c},a))})}let s=bo(o,e,n,t,i);return o.visit&&o.visit(e,s),(0,Se.jsx)("div",{...s.props})};var Je=window,$y=async(e,t)=>{window.parent&&(window.addEventListener("message",async({data:n})=>{if(typeof n=="object"&&n.mobile){let r=n,i=async o=>{if(!Je.notif?.onTap){let s=null,l=0;await new Promise(()=>{s=setInterval(()=>{l++,l>20&&clearInterval(s),o()&&clearInterval(s)},500)});return}};switch(r.type){case"notification-token":t.notif={token:r.token},Je.notif={async send(o){if(e&&e.site.api)return await e.site.api._notif("send",{type:"send",id:typeof o.user_id=="string"?o.user_id:o.user_id.toString(),body:o.body,title:o.title,data:o.data})},async register(o){if(e&&e.site.api&&t.notif?.token)return await e.site.api._notif("register",{type:"register",id:typeof o=="string"?o:o.toString(),token:t.notif.token})},onReceive(o){},onTap(o){}};break;case"notification-tap":if(!Je.notif?.onTap){i(()=>Je.notif?.onTap?(Je.notif?.onTap(r.notif),!0):!1);return}Je.notif?.onTap&&Je.notif?.onTap(r.notif);break;case"notification-receive":Je.notif?.onReceive||i(()=>Je.notif?.onReceive?(Je.notif?.onReceive(r.notif),!0):!1),Je.notif?.onReceive&&Je.notif?.onReceive(r.notif);break}}}),window.parent.postMessage({mobile:!0,type:"ready"},"*")),Je.notif={async send(n){if(e&&e.site.api)return await e.site.api._notif("send",{type:"send",id:typeof n.user_id=="string"?n.user_id:n.user_id.toString(),body:n.body,title:n.title,data:n.data})}}};var Wf=window;Wf.prasi_ext||(Wf.prasi_ext={});var Jl=Wf.prasi_ext;var Hy=async e=>{let t=Jl[e.site.id];if(t||(Jl[e.site.id]={status:"init"},t=Jl[e.site.id]),t.status==="init"){if(t.status="loading",window.parent!==window){let n=r=>{window.parent.postMessage({mobile:!0,...r},"*")};window.addEventListener("message",async({data:r})=>{console.log(r),typeof r=="object"&&r.mobile}),n({type:"ready"})}await $y(e,t),t.status="ready"}};var li=P(G()),Vy=({})=>{let e=Pn(An,"VI"),t=Nn({tick:Date.now()});if(e.tick=t.tick,Hy(e),e.status!=="ready")return(0,li.jsx)("div",{className:"flex flex-1 flex-col relative",children:(0,li.jsx)(So,{backdrop:!1})});let n=!!e.layout?.entry&&e.layout.entry.length>0,r=e.entry;return n&&e.layout?.entry&&(r=e.layout?.entry),(0,li.jsx)("div",{className:"flex flex-1 flex-col relative",children:Array.isArray(r)&&r.map(i=>{let o=n?e.layout?.meta[i]:e.meta[i];return o&&Element?(0,li.jsx)(Pt,{children:(0,li.jsx)(en,{meta:o,is_layout:n,depth:0})},o.item.id):null})})};var Yl=P(G()),ai=window,Wy=({meta:e,entry:t,api_url:n,site_id:r,api:i,mode:o,db:s,visit:l,script:c,page_id:a,render_stat:u,on_status_changed:p,on_preload:f,layout:d,comp_load:g})=>{let _=Pn(An,"VI");return _.mode=o,_.entry=t,_.on_preload=f,_.comp.load=g,ai.siteurl=(w,h)=>{if(w.startsWith("http://")||w.startsWith("https://"))return w;try{["prasi.avolut.com","localhost"].includes(location.hostname)?_.site.api_url&&(_.site_url||(_.site_url=new URL(_.site.api_url))):_.site_url||(h&&_.site.api_url?_.site_url=new URL(_.site.api_url):_.site_url=new URL(location.href),_.site_url.pathname="")}catch{}if(_.site_url){let m=_.site_url,y=w;return y.startsWith("/")||(y="/"+y),ai.prasiContext.siteUrl&&(y=ai.prasiContext.siteUrl(y)),`${m.protocol}//${m.host}${y}`}return w},ai.isMobile=o==="mobile",ai.isDesktop=o==="desktop",ai.preload=(w,h)=>{_.page.navs[a]||(_.page.navs[a]=new Set);let m=typeof w=="string"?[w]:w;for(let y of m)_.page.navs[a].add(y);return clearTimeout(No.timeout),No.timeout=setTimeout(()=>{_.on_preload&&_.on_preload({urls:Array.from(_.page.navs[a]),opt:{on_load:h?.on_load}})},100),""},_.layout=d,_.page.cur.id=a,_.on_status_changes=p,u==="disabled"&&(Xl.enabled=!1),_.meta!==e&&(_.meta=e),c&&(_.script.init_local_effect=c.init_local_effect),_.visit=l,_.status==="init"&&(_.site.db=s,_.site.api=i,ug(_,{api_url:n,site_id:r})),f&&(0,ea.useEffect)(()=>{setTimeout(()=>{let w=_.page.navs[_.page.cur.id];w&&f({urls:Array.from(w),opt:{on_load(h){}}})},500)},[_.page.cur.id]),(0,Yl.jsx)(Pt,{children:(0,Yl.jsx)(ea.Suspense,{children:(0,Yl.jsx)(Vy,{})})})};var Gf=window,T={root:null,url(...e){let t=e.map(r=>Array.isArray(r)?r.join(""):r).join(""),n=this.root.toString();return n.endsWith("/")&&(n=n.substring(0,n.length-1)),t.startsWith("/")?n+t:n+"/"+t},get pathname(){let e=location.pathname.substring(T.root.pathname.length);return e.startsWith("/")?e:`/${e}`},site:{id:Gf._prasi?.site_id},init_local_effect:{},mode:"",route:{status:"init",pages:[],router:null},comp:{list:{},pending:{}},layout:{id:"",root:null,meta:null},cache:{urls:new Set},page:{id:"",url:"",root:null,meta:null,cache:{}}},Gy=()=>{if(!T.root){let e=new URL(location.href);Gf._prasi.basepath&&(e.pathname=Gf._prasi.basepath),T.root=new URL(`${e.protocol}//${e.host}${e.pathname}`),T.root.pathname.endsWith("/")&&(T.root.pathname=T.root.pathname.substring(0,T.root.length-1))}};var ui=async e=>{let t=T.comp;for(let r of e)r&&r.type!=="text"&&ta(r);let n=Object.keys(t.pending);if(n.length>0)try{let r=await(await fetch(T.url`_prasi/comp`,{method:"POST",body:JSON.stringify({ids:[...n]})})).json();for(let[i,o]of Object.entries(r))delete t.pending[i],t.list[i]=o,await jl(`comp-${i}`,o);if(Object.keys(t.pending).length>0){console.warn(`Warning: component not found: ${Object.keys(t.pending)}`);return}await ui(Object.values(r))}catch(r){console.error(r)}},ta=e=>{let t=T.comp;if(e.type==="item"){let n=e.component?.id;if(n&&(!t.list[n]&&!t.pending[n]&&(t.pending[n]=[]),t.pending[n]&&(t.pending[n].find(r=>r.id===e.id)||t.pending[n].push(e)),t.pending[n])){if(t.list[n]){for(let r of t.pending[n])for(let i of Object.values(r.component?.props||{}))i.content&&ta(i.content);delete t.pending[n]}else if(e.component?.props)for(let r of Object.values(e.component?.props||{}))r.content&&ta(r.content)}}if(e.childs)for(let n of e.childs){let r=n;r&&r.type!=="text"&&ta(r)}};var Zy=e=>new Promise(async t=>{let n=!1,r=await yf(`page-${e}`);r&&(t(r),n=!0);let i=await(await fetch(T.url`_prasi/page/${e}`)).json();n||t(i)}),wE=e=>new Promise(async t=>{let n={},r=[...new Set(e)],i=!0;for(let s of r){let l=await yf(`page-${s}`);if(l)n[s]=l;else{i=!1;break}}i&&t(n);let o=await(await fetch(T.url`_prasi/pages`,{method:"POST",body:JSON.stringify({ids:r})})).json();i||t(o)}),Ky=async e=>{let t=e.map(r=>T.route.router?.lookup(r)).filter(r=>r&&r.id);return await wE(t.map(r=>r?.id))};var Qy=P(qy()),Xy=()=>{let e=T;if(e.site.id){if(!e.mode&&e.site.responsive)if(e.site.responsive!=="mobile-only"&&e.site.responsive!=="desktop-only"){let t=(0,Qy.default)();e.mode=t.device.type==="mobile"?"mobile":"desktop"}else e.site.responsive==="mobile-only"?e.mode="mobile":e.site.responsive==="desktop-only"&&(e.mode="desktop");localStorage.getItem("prasi-editor-mode")&&(e.mode=localStorage.getItem("prasi-editor-mode"))}};function Lo(e,t){return function(){return e.apply(t,arguments)}}var{toString:xE}=Object.prototype,{getPrototypeOf:qf}=Object,ia=(e=>t=>{let n=xE.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),kt=e=>(e=e.toLowerCase(),t=>ia(t)===e),oa=e=>t=>typeof t===e,{isArray:ci}=Array,Do=oa("undefined");function kE(e){return e!==null&&!Do(e)&&e.constructor!==null&&!Do(e.constructor)&&ft(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var e_=kt("ArrayBuffer");function SE(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e_(e.buffer),t}var EE=oa("string"),ft=oa("function"),t_=oa("number"),sa=e=>e!==null&&typeof e=="object",bE=e=>e===!0||e===!1,ra=e=>{if(ia(e)!=="object")return!1;let t=qf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},RE=kt("Date"),CE=kt("File"),TE=kt("Blob"),IE=kt("FileList"),OE=e=>sa(e)&&ft(e.pipe),NE=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ft(e.append)&&((t=ia(e))==="formdata"||t==="object"&&ft(e.toString)&&e.toString()==="[object FormData]"))},PE=kt("URLSearchParams"),[AE,LE,DE,ME]=["ReadableStream","Request","Response","Headers"].map(kt),zE=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Mo(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,i;if(typeof e!="object"&&(e=[e]),ci(e))for(r=0,i=e.length;r0;)if(i=n[r],t===i.toLowerCase())return i;return null}var r_=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,i_=e=>!Do(e)&&e!==r_;function Kf(){let{caseless:e}=i_(this)&&this||{},t={},n=(r,i)=>{let o=e&&n_(t,i)||i;ra(t[o])&&ra(r)?t[o]=Kf(t[o],r):ra(r)?t[o]=Kf({},r):ci(r)?t[o]=r.slice():t[o]=r};for(let r=0,i=arguments.length;r(Mo(t,(i,o)=>{n&&ft(i)?e[o]=Lo(i,n):e[o]=i},{allOwnKeys:r}),e),FE=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),UE=(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)},BE=(e,t,n,r)=>{let i,o,s,l={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)s=i[o],(!r||r(s,e,t))&&!l[s]&&(t[s]=e[s],l[s]=!0);e=n!==!1&&qf(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},$E=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;let r=e.indexOf(t,n);return r!==-1&&r===n},HE=e=>{if(!e)return null;if(ci(e))return e;let t=e.length;if(!t_(t))return null;let n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},VE=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&qf(Uint8Array)),WE=(e,t)=>{let r=(e&&e[Symbol.iterator]).call(e),i;for(;(i=r.next())&&!i.done;){let o=i.value;t.call(e,o[0],o[1])}},GE=(e,t)=>{let n,r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},ZE=kt("HTMLFormElement"),KE=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,i){return r.toUpperCase()+i}),Jy=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),qE=kt("RegExp"),o_=(e,t)=>{let n=Object.getOwnPropertyDescriptors(e),r={};Mo(n,(i,o)=>{let s;(s=t(i,o,e))!==!1&&(r[o]=s||i)}),Object.defineProperties(e,r)},QE=e=>{o_(e,(t,n)=>{if(ft(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;let r=e[n];if(ft(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+"'")})}})},XE=(e,t)=>{let n={},r=i=>{i.forEach(o=>{n[o]=!0})};return ci(e)?r(e):r(String(e).split(t)),n},JE=()=>{},YE=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t,Zf="abcdefghijklmnopqrstuvwxyz",Yy="0123456789",s_={DIGIT:Yy,ALPHA:Zf,ALPHA_DIGIT:Zf+Zf.toUpperCase()+Yy},e2=(e=16,t=s_.ALPHA_DIGIT)=>{let n="",{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function t2(e){return!!(e&&ft(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var n2=e=>{let t=new Array(10),n=(r,i)=>{if(sa(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[i]=r;let o=ci(r)?[]:{};return Mo(r,(s,l)=>{let c=n(s,i+1);!Do(c)&&(o[l]=c)}),t[i]=void 0,o}}return r};return n(e,0)},r2=kt("AsyncFunction"),i2=e=>e&&(sa(e)||ft(e))&&ft(e.then)&&ft(e.catch),x={isArray:ci,isArrayBuffer:e_,isBuffer:kE,isFormData:NE,isArrayBufferView:SE,isString:EE,isNumber:t_,isBoolean:bE,isObject:sa,isPlainObject:ra,isReadableStream:AE,isRequest:LE,isResponse:DE,isHeaders:ME,isUndefined:Do,isDate:RE,isFile:CE,isBlob:TE,isRegExp:qE,isFunction:ft,isStream:OE,isURLSearchParams:PE,isTypedArray:VE,isFileList:IE,forEach:Mo,merge:Kf,extend:jE,trim:zE,stripBOM:FE,inherits:UE,toFlatObject:BE,kindOf:ia,kindOfTest:kt,endsWith:$E,toArray:HE,forEachEntry:WE,matchAll:GE,isHTMLForm:ZE,hasOwnProperty:Jy,hasOwnProp:Jy,reduceDescriptors:o_,freezeMethods:QE,toObjectSet:XE,toCamelCase:KE,noop:JE,toFiniteNumber:YE,findKey:n_,global:r_,isContextDefined:i_,ALPHABET:s_,generateString:e2,isSpecCompliantForm:t2,toJSONObject:n2,isAsyncFn:r2,isThenable:i2};function fi(e,t,n,r,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),n&&(this.config=n),r&&(this.request=r),i&&(this.response=i)}x.inherits(fi,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:x.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var l_=fi.prototype,a_={};["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=>{a_[e]={value:e}});Object.defineProperties(fi,a_);Object.defineProperty(l_,"isAxiosError",{value:!0});fi.from=(e,t,n,r,i,o)=>{let s=Object.create(l_);return x.toFlatObject(e,s,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),fi.call(s,e.message,t,n,r,i),s.cause=e,s.name=e.name,o&&Object.assign(s,o),s};var D=fi;var la=null;function Qf(e){return x.isPlainObject(e)||x.isArray(e)}function c_(e){return x.endsWith(e,"[]")?e.slice(0,-2):e}function u_(e,t,n){return e?e.concat(t).map(function(i,o){return i=c_(i),!n&&o?"["+i+"]":i}).join(n?".":""):t}function o2(e){return x.isArray(e)&&!e.some(Qf)}var s2=x.toFlatObject(x,{},null,function(t){return/^is[A-Z]/.test(t)});function l2(e,t,n){if(!x.isObject(e))throw new TypeError("target must be an object");t=t||new(la||FormData),n=x.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,w){return!x.isUndefined(w[_])});let r=n.metaTokens,i=n.visitor||u,o=n.dots,s=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&x.isSpecCompliantForm(t);if(!x.isFunction(i))throw new TypeError("visitor must be a function");function a(g){if(g===null)return"";if(x.isDate(g))return g.toISOString();if(!c&&x.isBlob(g))throw new D("Blob is not supported. Use a Buffer instead.");return x.isArrayBuffer(g)||x.isTypedArray(g)?c&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function u(g,_,w){let h=g;if(g&&!w&&typeof g=="object"){if(x.endsWith(_,"{}"))_=r?_:_.slice(0,-2),g=JSON.stringify(g);else if(x.isArray(g)&&o2(g)||(x.isFileList(g)||x.endsWith(_,"[]"))&&(h=x.toArray(g)))return _=c_(_),h.forEach(function(y,v){!(x.isUndefined(y)||y===null)&&t.append(s===!0?u_([_],v,o):s===null?_:_+"[]",a(y))}),!1}return Qf(g)?!0:(t.append(u_(w,_,o),a(g)),!1)}let p=[],f=Object.assign(s2,{defaultVisitor:u,convertValue:a,isVisitable:Qf});function d(g,_){if(!x.isUndefined(g)){if(p.indexOf(g)!==-1)throw Error("Circular reference detected in "+_.join("."));p.push(g),x.forEach(g,function(h,m){(!(x.isUndefined(h)||h===null)&&i.call(t,h,x.isString(m)?m.trim():m,_,f))===!0&&d(h,_?_.concat(m):[m])}),p.pop()}}if(!x.isObject(e))throw new TypeError("data must be an object");return d(e),t}var Mn=l2;function f_(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function d_(e,t){this._pairs=[],e&&Mn(e,this,t)}var p_=d_.prototype;p_.append=function(t,n){this._pairs.push([t,n])};p_.toString=function(t){let n=t?function(r){return t.call(this,r,f_)}:f_;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};var aa=d_;function a2(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function zo(e,t,n){if(!t)return e;let r=n&&n.encode||a2,i=n&&n.serialize,o;if(i?o=i(t,n):o=x.isURLSearchParams(t)?t.toString():new aa(t,n).toString(r),o){let s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}var Xf=class{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){x.forEach(this.handlers,function(r){r!==null&&t(r)})}},Jf=Xf;var ua={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var m_=typeof URLSearchParams<"u"?URLSearchParams:aa;var h_=typeof FormData<"u"?FormData:null;var g_=typeof Blob<"u"?Blob:null;var y_={isBrowser:!0,classes:{URLSearchParams:m_,FormData:h_,Blob:g_},protocols:["http","https","file","blob","url","data"]};var ed={};q1(ed,{hasBrowserEnv:()=>Yf,hasStandardBrowserEnv:()=>u2,hasStandardBrowserWebWorkerEnv:()=>c2,origin:()=>f2});var Yf=typeof window<"u"&&typeof document<"u",u2=(e=>Yf&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),c2=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",f2=Yf&&window.location.href||"http://localhost";var ge={...ed,...y_};function td(e,t){return Mn(e,new ge.classes.URLSearchParams,Object.assign({visitor:function(n,r,i,o){return ge.isNode&&x.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function d2(e){return x.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function p2(e){let t={},n=Object.keys(e),r,i=n.length,o;for(r=0;r=n.length;return s=!s&&x.isArray(i)?i.length:s,c?(x.hasOwnProp(i,s)?i[s]=[i[s],r]:i[s]=r,!l):((!i[s]||!x.isObject(i[s]))&&(i[s]=[]),t(n,r,i[s],o)&&x.isArray(i[s])&&(i[s]=p2(i[s])),!l)}if(x.isFormData(e)&&x.isFunction(e.entries)){let n={};return x.forEachEntry(e,(r,i)=>{t(d2(r),i,n,0)}),n}return null}var ca=m2;function h2(e,t,n){if(x.isString(e))try{return(t||JSON.parse)(e),x.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}var nd={transitional:ua,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){let r=n.getContentType()||"",i=r.indexOf("application/json")>-1,o=x.isObject(t);if(o&&x.isHTMLForm(t)&&(t=new FormData(t)),x.isFormData(t))return i?JSON.stringify(ca(t)):t;if(x.isArrayBuffer(t)||x.isBuffer(t)||x.isStream(t)||x.isFile(t)||x.isBlob(t)||x.isReadableStream(t))return t;if(x.isArrayBufferView(t))return t.buffer;if(x.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return td(t,this.formSerializer).toString();if((l=x.isFileList(t))||r.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Mn(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||i?(n.setContentType("application/json",!1),h2(t)):t}],transformResponse:[function(t){let n=this.transitional||nd.transitional,r=n&&n.forcedJSONParsing,i=this.responseType==="json";if(x.isResponse(t)||x.isReadableStream(t))return t;if(t&&x.isString(t)&&(r&&!this.responseType||i)){let s=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(l){if(s)throw l.name==="SyntaxError"?D.from(l,D.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ge.classes.FormData,Blob:ge.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};x.forEach(["delete","get","head","post","put","patch"],e=>{nd.headers[e]={}});var di=nd;var g2=x.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"]),__=e=>{let t={},n,r,i;return e&&e.split(` + `);l.fn=c(...Object.values(o))}}};var Hf=P(G()),Vf=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{let o=Pn(An,"VI"),[s,l]=(0,Uy.useState)({});e.render=()=>{l({})};let c=t;return e.item.component?.id&&(c||(c={}),jy(o,e,n,c,i,r)),e.item.adv?.html?(0,Hf.jsx)(Ql,{meta:e,passprop:c,is_layout:n,depth:i}):e.item.adv?.js&&(My(o,e,n,c,i,r),e.script)?e.script.result:(0,Hf.jsx)(Ql,{meta:e,passprop:c,is_layout:n,depth:i})};var Se=P(G()),_E=70,vE={debug:!!localStorage.getItem("prasi-js-debug")},Xl={enabled:!1,meta:{}},en=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{if(Xl.enabled){let o=Xl.meta;if(o[e.item.id]?o[e.item.id].last_render===Math.floor(Date.now()/1e3)?o[e.item.id].count++:o[e.item.id]={last_render:Math.floor(Date.now()/1e3),count:1}:o[e.item.id]={last_render:Math.floor(Date.now()/1e3),count:1},o[e.item.id]?.count>_E)return(0,Se.jsxs)("div",{className:"bg-orange-100 border border-orange-300 rounded-sm text-xs flex flex-col items-center",children:[(0,Se.jsxs)("div",{className:"text-[10px] font-bold text-red-900 self-stretch px-1",children:["WARNING: Render loop detected in [",e.item.name,"]"]}),(0,Se.jsxs)("p",{className:"border-b border-orange-300 px-1 pb-1 min-w-[100px]",children:["Rendered ",o[e.item.id]?.count," times in less than 1 second."]})]})}if(!e||e.item.hidden)return null;if(vE.debug){let o="";for(let s=0;s{let o=Pn(An,"VI");if(n&&e.item.name==="children"){let l=[];for(let c of o.entry){let a=o.meta[c];if(a.item.adv?.js||a.item.component?.id)l.push((0,Se.jsx)(Pt,{meta:a,children:(0,Se.jsx)(Vf,{meta:a,is_layout:!1,passprop:{...t},parent_key:r,depth:i+1})}));else{let u=bo(o,a,!1,t,i);o.visit&&o.visit(a,u),l.push((0,Se.jsx)("div",{...u.props}))}}return(0,Se.jsx)(Se.Fragment,{children:l.map((c,a)=>(0,Se.jsx)(By.Fragment,{children:c},a))})}let s=bo(o,e,n,t,i);return o.visit&&o.visit(e,s),(0,Se.jsx)("div",{...s.props})};var Je=window,$y=async(e,t)=>{window.parent&&(window.addEventListener("message",async({data:n})=>{if(typeof n=="object"&&n.mobile){let r=n,i=async o=>{if(!Je.notif?.onTap){let s=null,l=0;await new Promise(()=>{s=setInterval(()=>{l++,l>20&&clearInterval(s),o()&&clearInterval(s)},500)});return}};switch(r.type){case"notification-token":t.notif={token:r.token},Je.notif={async send(o){if(e&&e.site.api)return await e.site.api._notif("send",{type:"send",id:typeof o.user_id=="string"?o.user_id:o.user_id.toString(),body:o.body,title:o.title,data:o.data})},async register(o){if(e&&e.site.api&&t.notif?.token)return await e.site.api._notif("register",{type:"register",id:typeof o=="string"?o:o.toString(),token:t.notif.token})},onReceive(o){},onTap(o){}};break;case"notification-tap":if(!Je.notif?.onTap){i(()=>Je.notif?.onTap?(Je.notif?.onTap(r.notif),!0):!1);return}Je.notif?.onTap&&Je.notif?.onTap(r.notif);break;case"notification-receive":Je.notif?.onReceive||i(()=>Je.notif?.onReceive?(Je.notif?.onReceive(r.notif),!0):!1),Je.notif?.onReceive&&Je.notif?.onReceive(r.notif);break}}}),window.parent.postMessage({mobile:!0,type:"ready"},"*")),Je.notif={async send(n){if(e&&e.site.api)return await e.site.api._notif("send",{type:"send",id:typeof n.user_id=="string"?n.user_id:n.user_id.toString(),body:n.body,title:n.title,data:n.data})}}};var Wf=window;Wf.prasi_ext||(Wf.prasi_ext={});var Jl=Wf.prasi_ext;var Hy=async e=>{let t=Jl[e.site.id];if(t||(Jl[e.site.id]={status:"init"},t=Jl[e.site.id]),t.status==="init"){if(t.status="loading",window.parent!==window){let n=r=>{window.parent.postMessage({mobile:!0,...r},"*")};window.addEventListener("message",async({data:r})=>{console.log(r),typeof r=="object"&&r.mobile}),n({type:"ready"})}await $y(e,t),t.status="ready"}};var li=P(G()),Vy=({})=>{let e=Pn(An,"VI"),t=Nn({tick:Date.now()});if(e.tick=t.tick,Hy(e),e.status!=="ready")return(0,li.jsx)("div",{className:"flex flex-1 flex-col relative",children:(0,li.jsx)(So,{backdrop:!1})});let n=!!e.layout?.entry&&e.layout.entry.length>0,r=e.entry;return n&&e.layout?.entry&&(r=e.layout?.entry),(0,li.jsx)("div",{className:"flex flex-1 flex-col relative",children:Array.isArray(r)&&r.map(i=>{let o=n?e.layout?.meta[i]:e.meta[i];return o&&Element?(0,li.jsx)(Pt,{children:(0,li.jsx)(en,{meta:o,is_layout:n,depth:0})},o.item.id):null})})};var Yl=P(G()),ai=window,Wy=({meta:e,entry:t,api_url:n,site_id:r,api:i,mode:o,db:s,visit:l,script:c,page_id:a,render_stat:u,on_status_changed:p,on_preload:f,layout:d,comp_load:g})=>{let _=Pn(An,"VI");return _.mode=o,_.entry=t,_.on_preload=f,_.comp.load=g,ai.siteurl=(w,h)=>{if(w.startsWith("http://")||w.startsWith("https://"))return w;try{["prasi.avolut.com","localhost"].includes(location.hostname)?_.site.api_url&&(_.site_url||(_.site_url=new URL(_.site.api_url))):_.site_url||(h&&_.site.api_url?_.site_url=new URL(_.site.api_url):_.site_url=new URL(location.href),_.site_url.pathname="")}catch{}if(_.site_url){let m=_.site_url,y=w;return y.startsWith("/")||(y="/"+y),ai.prasiContext.siteUrl&&(y=ai.prasiContext.siteUrl(y)),`${m.protocol}//${m.host}${y}`}return w},ai.isMobile=o==="mobile",ai.isDesktop=o==="desktop",ai.preload=(w,h)=>{_.page.navs[a]||(_.page.navs[a]=new Set);let m=typeof w=="string"?[w]:w;for(let y of m)_.page.navs[a].add(y);return new Promise(y=>{clearTimeout(No.timeout),No.timeout=setTimeout(()=>{_.on_preload&&_.on_preload({urls:Array.from(_.page.navs[a]),opt:{on_load:(...v)=>{h?.on_load?.(...v),y()}}})},100)})},_.layout=d,_.page.cur.id=a,_.on_status_changes=p,u==="disabled"&&(Xl.enabled=!1),_.meta!==e&&(_.meta=e),c&&(_.script.init_local_effect=c.init_local_effect),_.visit=l,_.status==="init"&&(_.site.db=s,_.site.api=i,ug(_,{api_url:n,site_id:r})),f&&(0,ea.useEffect)(()=>{setTimeout(()=>{let w=_.page.navs[_.page.cur.id];w&&f({urls:Array.from(w),opt:{on_load(h){}}})},500)},[_.page.cur.id]),(0,Yl.jsx)(Pt,{children:(0,Yl.jsx)(ea.Suspense,{children:(0,Yl.jsx)(Vy,{})})})};var Gf=window,T={root:null,url(...e){let t=e.map(r=>Array.isArray(r)?r.join(""):r).join(""),n=this.root.toString();return n.endsWith("/")&&(n=n.substring(0,n.length-1)),t.startsWith("/")?n+t:n+"/"+t},get pathname(){let e=location.pathname.substring(T.root.pathname.length);return e.startsWith("/")?e:`/${e}`},site:{id:Gf._prasi?.site_id},init_local_effect:{},mode:"",route:{status:"init",pages:[],router:null},comp:{list:{},pending:{}},layout:{id:"",root:null,meta:null},cache:{urls:new Set},page:{id:"",url:"",root:null,meta:null,cache:{}}},Gy=()=>{if(!T.root){let e=new URL(location.href);Gf._prasi.basepath&&(e.pathname=Gf._prasi.basepath),T.root=new URL(`${e.protocol}//${e.host}${e.pathname}`),T.root.pathname.endsWith("/")&&(T.root.pathname=T.root.pathname.substring(0,T.root.length-1))}};var ui=async e=>{let t=T.comp;for(let r of e)r&&r.type!=="text"&&ta(r);let n=Object.keys(t.pending);if(n.length>0)try{let r=await(await fetch(T.url`_prasi/comp`,{method:"POST",body:JSON.stringify({ids:[...n]})})).json();for(let[i,o]of Object.entries(r))delete t.pending[i],t.list[i]=o,await jl(`comp-${i}`,o);if(Object.keys(t.pending).length>0){console.warn(`Warning: component not found: ${Object.keys(t.pending)}`);return}await ui(Object.values(r))}catch(r){console.error(r)}},ta=e=>{let t=T.comp;if(e.type==="item"){let n=e.component?.id;if(n&&(!t.list[n]&&!t.pending[n]&&(t.pending[n]=[]),t.pending[n]&&(t.pending[n].find(r=>r.id===e.id)||t.pending[n].push(e)),t.pending[n])){if(t.list[n]){for(let r of t.pending[n])for(let i of Object.values(r.component?.props||{}))i.content&&ta(i.content);delete t.pending[n]}else if(e.component?.props)for(let r of Object.values(e.component?.props||{}))r.content&&ta(r.content)}}if(e.childs)for(let n of e.childs){let r=n;r&&r.type!=="text"&&ta(r)}};var Zy=e=>new Promise(async t=>{let n=!1,r=await yf(`page-${e}`);r&&(t(r),n=!0);let i=await(await fetch(T.url`_prasi/page/${e}`)).json();n||t(i)}),wE=e=>new Promise(async t=>{let n={},r=[...new Set(e)],i=!0;for(let s of r){let l=await yf(`page-${s}`);if(l)n[s]=l;else{i=!1;break}}i&&t(n);let o=await(await fetch(T.url`_prasi/pages`,{method:"POST",body:JSON.stringify({ids:r})})).json();i||t(o)}),Ky=async e=>{let t=e.map(r=>T.route.router?.lookup(r)).filter(r=>r&&r.id);return await wE(t.map(r=>r?.id))};var Qy=P(qy()),Xy=()=>{let e=T;if(e.site.id){if(!e.mode&&e.site.responsive)if(e.site.responsive!=="mobile-only"&&e.site.responsive!=="desktop-only"){let t=(0,Qy.default)();e.mode=t.device.type==="mobile"?"mobile":"desktop"}else e.site.responsive==="mobile-only"?e.mode="mobile":e.site.responsive==="desktop-only"&&(e.mode="desktop");localStorage.getItem("prasi-editor-mode")&&(e.mode=localStorage.getItem("prasi-editor-mode"))}};function Lo(e,t){return function(){return e.apply(t,arguments)}}var{toString:xE}=Object.prototype,{getPrototypeOf:qf}=Object,ia=(e=>t=>{let n=xE.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),kt=e=>(e=e.toLowerCase(),t=>ia(t)===e),oa=e=>t=>typeof t===e,{isArray:ci}=Array,Do=oa("undefined");function kE(e){return e!==null&&!Do(e)&&e.constructor!==null&&!Do(e.constructor)&&ft(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var e_=kt("ArrayBuffer");function SE(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e_(e.buffer),t}var EE=oa("string"),ft=oa("function"),t_=oa("number"),sa=e=>e!==null&&typeof e=="object",bE=e=>e===!0||e===!1,ra=e=>{if(ia(e)!=="object")return!1;let t=qf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},RE=kt("Date"),CE=kt("File"),TE=kt("Blob"),IE=kt("FileList"),OE=e=>sa(e)&&ft(e.pipe),NE=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ft(e.append)&&((t=ia(e))==="formdata"||t==="object"&&ft(e.toString)&&e.toString()==="[object FormData]"))},PE=kt("URLSearchParams"),[AE,LE,DE,ME]=["ReadableStream","Request","Response","Headers"].map(kt),zE=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Mo(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,i;if(typeof e!="object"&&(e=[e]),ci(e))for(r=0,i=e.length;r0;)if(i=n[r],t===i.toLowerCase())return i;return null}var r_=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,i_=e=>!Do(e)&&e!==r_;function Kf(){let{caseless:e}=i_(this)&&this||{},t={},n=(r,i)=>{let o=e&&n_(t,i)||i;ra(t[o])&&ra(r)?t[o]=Kf(t[o],r):ra(r)?t[o]=Kf({},r):ci(r)?t[o]=r.slice():t[o]=r};for(let r=0,i=arguments.length;r(Mo(t,(i,o)=>{n&&ft(i)?e[o]=Lo(i,n):e[o]=i},{allOwnKeys:r}),e),FE=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),UE=(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)},BE=(e,t,n,r)=>{let i,o,s,l={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)s=i[o],(!r||r(s,e,t))&&!l[s]&&(t[s]=e[s],l[s]=!0);e=n!==!1&&qf(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},$E=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;let r=e.indexOf(t,n);return r!==-1&&r===n},HE=e=>{if(!e)return null;if(ci(e))return e;let t=e.length;if(!t_(t))return null;let n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},VE=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&qf(Uint8Array)),WE=(e,t)=>{let r=(e&&e[Symbol.iterator]).call(e),i;for(;(i=r.next())&&!i.done;){let o=i.value;t.call(e,o[0],o[1])}},GE=(e,t)=>{let n,r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},ZE=kt("HTMLFormElement"),KE=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,i){return r.toUpperCase()+i}),Jy=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),qE=kt("RegExp"),o_=(e,t)=>{let n=Object.getOwnPropertyDescriptors(e),r={};Mo(n,(i,o)=>{let s;(s=t(i,o,e))!==!1&&(r[o]=s||i)}),Object.defineProperties(e,r)},QE=e=>{o_(e,(t,n)=>{if(ft(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;let r=e[n];if(ft(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+"'")})}})},XE=(e,t)=>{let n={},r=i=>{i.forEach(o=>{n[o]=!0})};return ci(e)?r(e):r(String(e).split(t)),n},JE=()=>{},YE=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t,Zf="abcdefghijklmnopqrstuvwxyz",Yy="0123456789",s_={DIGIT:Yy,ALPHA:Zf,ALPHA_DIGIT:Zf+Zf.toUpperCase()+Yy},e2=(e=16,t=s_.ALPHA_DIGIT)=>{let n="",{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function t2(e){return!!(e&&ft(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var n2=e=>{let t=new Array(10),n=(r,i)=>{if(sa(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[i]=r;let o=ci(r)?[]:{};return Mo(r,(s,l)=>{let c=n(s,i+1);!Do(c)&&(o[l]=c)}),t[i]=void 0,o}}return r};return n(e,0)},r2=kt("AsyncFunction"),i2=e=>e&&(sa(e)||ft(e))&&ft(e.then)&&ft(e.catch),x={isArray:ci,isArrayBuffer:e_,isBuffer:kE,isFormData:NE,isArrayBufferView:SE,isString:EE,isNumber:t_,isBoolean:bE,isObject:sa,isPlainObject:ra,isReadableStream:AE,isRequest:LE,isResponse:DE,isHeaders:ME,isUndefined:Do,isDate:RE,isFile:CE,isBlob:TE,isRegExp:qE,isFunction:ft,isStream:OE,isURLSearchParams:PE,isTypedArray:VE,isFileList:IE,forEach:Mo,merge:Kf,extend:jE,trim:zE,stripBOM:FE,inherits:UE,toFlatObject:BE,kindOf:ia,kindOfTest:kt,endsWith:$E,toArray:HE,forEachEntry:WE,matchAll:GE,isHTMLForm:ZE,hasOwnProperty:Jy,hasOwnProp:Jy,reduceDescriptors:o_,freezeMethods:QE,toObjectSet:XE,toCamelCase:KE,noop:JE,toFiniteNumber:YE,findKey:n_,global:r_,isContextDefined:i_,ALPHABET:s_,generateString:e2,isSpecCompliantForm:t2,toJSONObject:n2,isAsyncFn:r2,isThenable:i2};function fi(e,t,n,r,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),n&&(this.config=n),r&&(this.request=r),i&&(this.response=i)}x.inherits(fi,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:x.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var l_=fi.prototype,a_={};["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=>{a_[e]={value:e}});Object.defineProperties(fi,a_);Object.defineProperty(l_,"isAxiosError",{value:!0});fi.from=(e,t,n,r,i,o)=>{let s=Object.create(l_);return x.toFlatObject(e,s,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),fi.call(s,e.message,t,n,r,i),s.cause=e,s.name=e.name,o&&Object.assign(s,o),s};var D=fi;var la=null;function Qf(e){return x.isPlainObject(e)||x.isArray(e)}function c_(e){return x.endsWith(e,"[]")?e.slice(0,-2):e}function u_(e,t,n){return e?e.concat(t).map(function(i,o){return i=c_(i),!n&&o?"["+i+"]":i}).join(n?".":""):t}function o2(e){return x.isArray(e)&&!e.some(Qf)}var s2=x.toFlatObject(x,{},null,function(t){return/^is[A-Z]/.test(t)});function l2(e,t,n){if(!x.isObject(e))throw new TypeError("target must be an object");t=t||new(la||FormData),n=x.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,w){return!x.isUndefined(w[_])});let r=n.metaTokens,i=n.visitor||u,o=n.dots,s=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&x.isSpecCompliantForm(t);if(!x.isFunction(i))throw new TypeError("visitor must be a function");function a(g){if(g===null)return"";if(x.isDate(g))return g.toISOString();if(!c&&x.isBlob(g))throw new D("Blob is not supported. Use a Buffer instead.");return x.isArrayBuffer(g)||x.isTypedArray(g)?c&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function u(g,_,w){let h=g;if(g&&!w&&typeof g=="object"){if(x.endsWith(_,"{}"))_=r?_:_.slice(0,-2),g=JSON.stringify(g);else if(x.isArray(g)&&o2(g)||(x.isFileList(g)||x.endsWith(_,"[]"))&&(h=x.toArray(g)))return _=c_(_),h.forEach(function(y,v){!(x.isUndefined(y)||y===null)&&t.append(s===!0?u_([_],v,o):s===null?_:_+"[]",a(y))}),!1}return Qf(g)?!0:(t.append(u_(w,_,o),a(g)),!1)}let p=[],f=Object.assign(s2,{defaultVisitor:u,convertValue:a,isVisitable:Qf});function d(g,_){if(!x.isUndefined(g)){if(p.indexOf(g)!==-1)throw Error("Circular reference detected in "+_.join("."));p.push(g),x.forEach(g,function(h,m){(!(x.isUndefined(h)||h===null)&&i.call(t,h,x.isString(m)?m.trim():m,_,f))===!0&&d(h,_?_.concat(m):[m])}),p.pop()}}if(!x.isObject(e))throw new TypeError("data must be an object");return d(e),t}var Mn=l2;function f_(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function d_(e,t){this._pairs=[],e&&Mn(e,this,t)}var p_=d_.prototype;p_.append=function(t,n){this._pairs.push([t,n])};p_.toString=function(t){let n=t?function(r){return t.call(this,r,f_)}:f_;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};var aa=d_;function a2(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function zo(e,t,n){if(!t)return e;let r=n&&n.encode||a2,i=n&&n.serialize,o;if(i?o=i(t,n):o=x.isURLSearchParams(t)?t.toString():new aa(t,n).toString(r),o){let s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}var Xf=class{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){x.forEach(this.handlers,function(r){r!==null&&t(r)})}},Jf=Xf;var ua={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var m_=typeof URLSearchParams<"u"?URLSearchParams:aa;var h_=typeof FormData<"u"?FormData:null;var g_=typeof Blob<"u"?Blob:null;var y_={isBrowser:!0,classes:{URLSearchParams:m_,FormData:h_,Blob:g_},protocols:["http","https","file","blob","url","data"]};var ed={};q1(ed,{hasBrowserEnv:()=>Yf,hasStandardBrowserEnv:()=>u2,hasStandardBrowserWebWorkerEnv:()=>c2,origin:()=>f2});var Yf=typeof window<"u"&&typeof document<"u",u2=(e=>Yf&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),c2=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",f2=Yf&&window.location.href||"http://localhost";var ge={...ed,...y_};function td(e,t){return Mn(e,new ge.classes.URLSearchParams,Object.assign({visitor:function(n,r,i,o){return ge.isNode&&x.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function d2(e){return x.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function p2(e){let t={},n=Object.keys(e),r,i=n.length,o;for(r=0;r=n.length;return s=!s&&x.isArray(i)?i.length:s,c?(x.hasOwnProp(i,s)?i[s]=[i[s],r]:i[s]=r,!l):((!i[s]||!x.isObject(i[s]))&&(i[s]=[]),t(n,r,i[s],o)&&x.isArray(i[s])&&(i[s]=p2(i[s])),!l)}if(x.isFormData(e)&&x.isFunction(e.entries)){let n={};return x.forEachEntry(e,(r,i)=>{t(d2(r),i,n,0)}),n}return null}var ca=m2;function h2(e,t,n){if(x.isString(e))try{return(t||JSON.parse)(e),x.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}var nd={transitional:ua,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){let r=n.getContentType()||"",i=r.indexOf("application/json")>-1,o=x.isObject(t);if(o&&x.isHTMLForm(t)&&(t=new FormData(t)),x.isFormData(t))return i?JSON.stringify(ca(t)):t;if(x.isArrayBuffer(t)||x.isBuffer(t)||x.isStream(t)||x.isFile(t)||x.isBlob(t)||x.isReadableStream(t))return t;if(x.isArrayBufferView(t))return t.buffer;if(x.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return td(t,this.formSerializer).toString();if((l=x.isFileList(t))||r.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Mn(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||i?(n.setContentType("application/json",!1),h2(t)):t}],transformResponse:[function(t){let n=this.transitional||nd.transitional,r=n&&n.forcedJSONParsing,i=this.responseType==="json";if(x.isResponse(t)||x.isReadableStream(t))return t;if(t&&x.isString(t)&&(r&&!this.responseType||i)){let s=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(l){if(s)throw l.name==="SyntaxError"?D.from(l,D.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ge.classes.FormData,Blob:ge.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};x.forEach(["delete","get","head","post","put","patch"],e=>{nd.headers[e]={}});var di=nd;var g2=x.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"]),__=e=>{let t={},n,r,i;return e&&e.split(` `).forEach(function(s){i=s.indexOf(":"),n=s.substring(0,i).trim().toLowerCase(),r=s.substring(i+1).trim(),!(!n||t[n]&&g2[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t};var v_=Symbol("internals");function jo(e){return e&&String(e).trim().toLowerCase()}function fa(e){return e===!1||e==null?e:x.isArray(e)?e.map(fa):String(e)}function y2(e){let t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}var _2=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function rd(e,t,n,r,i){if(x.isFunction(r))return r.call(this,t,n);if(i&&(t=n),!!x.isString(t)){if(x.isString(r))return t.indexOf(r)!==-1;if(x.isRegExp(r))return r.test(t)}}function v2(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function w2(e,t){let n=x.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(i,o,s){return this[r].call(this,t,i,o,s)},configurable:!0})})}var pi=class{constructor(t){t&&this.set(t)}set(t,n,r){let i=this;function o(l,c,a){let u=jo(c);if(!u)throw new Error("header name must be a non-empty string");let p=x.findKey(i,u);(!p||i[p]===void 0||a===!0||a===void 0&&i[p]!==!1)&&(i[p||c]=fa(l))}let s=(l,c)=>x.forEach(l,(a,u)=>o(a,u,c));if(x.isPlainObject(t)||t instanceof this.constructor)s(t,n);else if(x.isString(t)&&(t=t.trim())&&!_2(t))s(__(t),n);else if(x.isHeaders(t))for(let[l,c]of t.entries())o(c,l,r);else t!=null&&o(n,t,r);return this}get(t,n){if(t=jo(t),t){let r=x.findKey(this,t);if(r){let i=this[r];if(!n)return i;if(n===!0)return y2(i);if(x.isFunction(n))return n.call(this,i,r);if(x.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=jo(t),t){let r=x.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||rd(this,this[r],r,n)))}return!1}delete(t,n){let r=this,i=!1;function o(s){if(s=jo(s),s){let l=x.findKey(r,s);l&&(!n||rd(r,r[l],l,n))&&(delete r[l],i=!0)}}return x.isArray(t)?t.forEach(o):o(t),i}clear(t){let n=Object.keys(this),r=n.length,i=!1;for(;r--;){let o=n[r];(!t||rd(this,this[o],o,t,!0))&&(delete this[o],i=!0)}return i}normalize(t){let n=this,r={};return x.forEach(this,(i,o)=>{let s=x.findKey(r,o);if(s){n[s]=fa(i),delete n[o];return}let l=t?v2(o):String(o).trim();l!==o&&delete n[o],n[l]=fa(i),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let n=Object.create(null);return x.forEach(this,(r,i)=>{r!=null&&r!==!1&&(n[i]=t&&x.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){let r=new this(t);return n.forEach(i=>r.set(i)),r}static accessor(t){let r=(this[v_]=this[v_]={accessors:{}}).accessors,i=this.prototype;function o(s){let l=jo(s);r[l]||(w2(i,s),r[l]=!0)}return x.isArray(t)?t.forEach(o):o(t),this}};pi.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);x.reduceDescriptors(pi.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});x.freezeMethods(pi);var pe=pi;function Fo(e,t){let n=this||di,r=t||n,i=pe.from(r.headers),o=r.data;return x.forEach(e,function(l){o=l.call(n,o,i.normalize(),t?t.status:void 0)}),i.normalize(),o}function Uo(e){return!!(e&&e.__CANCEL__)}function w_(e,t,n){D.call(this,e??"canceled",D.ERR_CANCELED,t,n),this.name="CanceledError"}x.inherits(w_,D,{__CANCEL__:!0});var Lt=w_;function Bo(e,t,n){let r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new D("Request failed with status code "+n.status,[D.ERR_BAD_REQUEST,D.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function id(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function x2(e,t){e=e||10;let n=new Array(e),r=new Array(e),i=0,o=0,s;return t=t!==void 0?t:1e3,function(c){let a=Date.now(),u=r[o];s||(s=a),n[i]=c,r[i]=a;let p=o,f=0;for(;p!==i;)f+=n[p++],p=p%e;if(i=(i+1)%e,i===o&&(o=(o+1)%e),a-sr)return i&&(clearTimeout(i),i=null),n=l,e.apply(null,arguments);i||(i=setTimeout(()=>(i=null,n=Date.now(),e.apply(null,arguments)),r-(l-n)))}}var k_=k2;var mi=(e,t,n=3)=>{let r=0,i=x_(50,250);return k_(o=>{let s=o.loaded,l=o.lengthComputable?o.total:void 0,c=s-r,a=i(c),u=s<=l;r=s;let p={loaded:s,total:l,progress:l?s/l:void 0,bytes:c,rate:a||void 0,estimated:a&&l&&u?(l-s)/a:void 0,event:o,lengthComputable:l!=null};p[t?"download":"upload"]=!0,e(p)},n)};var S_=ge.hasStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a"),r;function i(o){let s=o;return t&&(n.setAttribute("href",s),s=n.href),n.setAttribute("href",s),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=i(window.location.href),function(s){let l=x.isString(s)?i(s):s;return l.protocol===r.protocol&&l.host===r.host}}():function(){return function(){return!0}}();var E_=ge.hasStandardBrowserEnv?{write(e,t,n,r,i,o){let s=[e+"="+encodeURIComponent(t)];x.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),x.isString(r)&&s.push("path="+r),x.isString(i)&&s.push("domain="+i),o===!0&&s.push("secure"),document.cookie=s.join("; ")},read(e){let 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 od(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function sd(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function $o(e,t){return e&&!od(t)?sd(e,t):t}var b_=e=>e instanceof pe?{...e}:e;function St(e,t){t=t||{};let n={};function r(a,u,p){return x.isPlainObject(a)&&x.isPlainObject(u)?x.merge.call({caseless:p},a,u):x.isPlainObject(u)?x.merge({},u):x.isArray(u)?u.slice():u}function i(a,u,p){if(x.isUndefined(u)){if(!x.isUndefined(a))return r(void 0,a,p)}else return r(a,u,p)}function o(a,u){if(!x.isUndefined(u))return r(void 0,u)}function s(a,u){if(x.isUndefined(u)){if(!x.isUndefined(a))return r(void 0,a)}else return r(void 0,u)}function l(a,u,p){if(p in t)return r(a,u);if(p in e)return r(void 0,a)}let 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:l,headers:(a,u)=>i(b_(a),b_(u),!0)};return x.forEach(Object.keys(Object.assign({},e,t)),function(u){let p=c[u]||i,f=p(e[u],t[u],u);x.isUndefined(f)&&p!==l||(n[u]=f)}),n}var da=e=>{let t=St({},e),{data:n,withXSRFToken:r,xsrfHeaderName:i,xsrfCookieName:o,headers:s,auth:l}=t;t.headers=s=pe.from(s),t.url=zo($o(t.baseURL,t.url),e.params,e.paramsSerializer),l&&s.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let c;if(x.isFormData(n)){if(ge.hasStandardBrowserEnv||ge.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if((c=s.getContentType())!==!1){let[a,...u]=c?c.split(";").map(p=>p.trim()).filter(Boolean):[];s.setContentType([a||"multipart/form-data",...u].join("; "))}}if(ge.hasStandardBrowserEnv&&(r&&x.isFunction(r)&&(r=r(t)),r||r!==!1&&S_(t.url))){let a=i&&o&&E_.read(o);a&&s.set(i,a)}return t};var S2=typeof XMLHttpRequest<"u",R_=S2&&function(e){return new Promise(function(n,r){let i=da(e),o=i.data,s=pe.from(i.headers).normalize(),{responseType:l}=i,c;function a(){i.cancelToken&&i.cancelToken.unsubscribe(c),i.signal&&i.signal.removeEventListener("abort",c)}let u=new XMLHttpRequest;u.open(i.method.toUpperCase(),i.url,!0),u.timeout=i.timeout;function p(){if(!u)return;let d=pe.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders()),_={data:!l||l==="text"||l==="json"?u.responseText:u.response,status:u.status,statusText:u.statusText,headers:d,config:e,request:u};Bo(function(h){n(h),a()},function(h){r(h),a()},_),u=null}"onloadend"in u?u.onloadend=p:u.onreadystatechange=function(){!u||u.readyState!==4||u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)||setTimeout(p)},u.onabort=function(){u&&(r(new D("Request aborted",D.ECONNABORTED,i,u)),u=null)},u.onerror=function(){r(new D("Network Error",D.ERR_NETWORK,i,u)),u=null},u.ontimeout=function(){let g=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded",_=i.transitional||ua;i.timeoutErrorMessage&&(g=i.timeoutErrorMessage),r(new D(g,_.clarifyTimeoutError?D.ETIMEDOUT:D.ECONNABORTED,i,u)),u=null},o===void 0&&s.setContentType(null),"setRequestHeader"in u&&x.forEach(s.toJSON(),function(g,_){u.setRequestHeader(_,g)}),x.isUndefined(i.withCredentials)||(u.withCredentials=!!i.withCredentials),l&&l!=="json"&&(u.responseType=i.responseType),typeof i.onDownloadProgress=="function"&&u.addEventListener("progress",mi(i.onDownloadProgress,!0)),typeof i.onUploadProgress=="function"&&u.upload&&u.upload.addEventListener("progress",mi(i.onUploadProgress)),(i.cancelToken||i.signal)&&(c=d=>{u&&(r(!d||d.type?new Lt(null,e,u):d),u.abort(),u=null)},i.cancelToken&&i.cancelToken.subscribe(c),i.signal&&(i.signal.aborted?c():i.signal.addEventListener("abort",c)));let f=id(i.url);if(f&&ge.protocols.indexOf(f)===-1){r(new D("Unsupported protocol "+f+":",D.ERR_BAD_REQUEST,e));return}u.send(o||null)})};var E2=(e,t)=>{let n=new AbortController,r,i=function(c){if(!r){r=!0,s();let a=c instanceof Error?c:this.reason;n.abort(a instanceof D?a:new Lt(a instanceof Error?a.message:a))}},o=t&&setTimeout(()=>{i(new D(`timeout ${t} of ms exceeded`,D.ETIMEDOUT))},t),s=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(c=>{c&&(c.removeEventListener?c.removeEventListener("abort",i):c.unsubscribe(i))}),e=null)};e.forEach(c=>c&&c.addEventListener&&c.addEventListener("abort",i));let{signal:l}=n;return l.unsubscribe=s,[l,()=>{o&&clearTimeout(o),o=null}]},C_=E2;var b2=function*(e,t){let n=e.byteLength;if(!t||n{let o=R2(e,t,i),s=0;return new ReadableStream({type:"bytes",async pull(l){let{done:c,value:a}=await o.next();if(c){l.close(),r();return}let u=a.byteLength;n&&n(s+=u),l.enqueue(new Uint8Array(a))},cancel(l){return r(l),o.return()}},{highWaterMark:2})};var T_=(e,t)=>{let n=e!=null;return r=>setTimeout(()=>t({lengthComputable:n,total:e,loaded:r}))},ma=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",O_=ma&&typeof ReadableStream=="function",ad=ma&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),C2=O_&&(()=>{let e=!1,t=new Request(ge.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})(),I_=64*1024,ud=O_&&!!(()=>{try{return x.isReadableStream(new Response("").body)}catch{}})(),pa={stream:ud&&(e=>e.body)};ma&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!pa[t]&&(pa[t]=x.isFunction(e[t])?n=>n[t]():(n,r)=>{throw new D(`Response type '${t}' is not supported`,D.ERR_NOT_SUPPORT,r)})})})(new Response);var T2=async e=>{if(e==null)return 0;if(x.isBlob(e))return e.size;if(x.isSpecCompliantForm(e))return(await new Request(e).arrayBuffer()).byteLength;if(x.isArrayBufferView(e))return e.byteLength;if(x.isURLSearchParams(e)&&(e=e+""),x.isString(e))return(await ad(e)).byteLength},I2=async(e,t)=>{let n=x.toFiniteNumber(e.getContentLength());return n??T2(t)},N_=ma&&(async e=>{let{url:t,method:n,data:r,signal:i,cancelToken:o,timeout:s,onDownloadProgress:l,onUploadProgress:c,responseType:a,headers:u,withCredentials:p="same-origin",fetchOptions:f}=da(e);a=a?(a+"").toLowerCase():"text";let[d,g]=i||o||s?C_([i,o],s):[],_,w,h=()=>{!_&&setTimeout(()=>{d&&d.unsubscribe()}),_=!0},m;try{if(c&&C2&&n!=="get"&&n!=="head"&&(m=await I2(u,r))!==0){let R=new Request(t,{method:"POST",body:r,duplex:"half"}),k;x.isFormData(r)&&(k=R.headers.get("content-type"))&&u.setContentType(k),R.body&&(r=ld(R.body,I_,T_(m,mi(c)),null,ad))}x.isString(p)||(p=p?"cors":"omit"),w=new Request(t,{...f,signal:d,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:r,duplex:"half",withCredentials:p});let y=await fetch(w),v=ud&&(a==="stream"||a==="response");if(ud&&(l||v)){let R={};["status","statusText","headers"].forEach(b=>{R[b]=y[b]});let k=x.toFiniteNumber(y.headers.get("content-length"));y=new Response(ld(y.body,I_,l&&T_(k,mi(l,!0)),v&&h,ad),R)}a=a||"text";let S=await pa[x.findKey(pa,a)||"text"](y,e);return!v&&h(),g&&g(),await new Promise((R,k)=>{Bo(R,k,{data:S,headers:pe.from(y.headers),status:y.status,statusText:y.statusText,config:e,request:w})})}catch(y){throw h(),y&&y.name==="TypeError"&&/fetch/i.test(y.message)?Object.assign(new D("Network Error",D.ERR_NETWORK,e,w),{cause:y.cause||y}):D.from(y,y&&y.code,e,w)}});var cd={http:la,xhr:R_,fetch:N_};x.forEach(cd,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var P_=e=>`- ${e}`,O2=e=>x.isFunction(e)||e===null||e===!1,ha={getAdapter:e=>{e=x.isArray(e)?e:[e];let{length:t}=e,n,r,i={};for(let o=0;o`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build")),s=t?o.length>1?`since : `+o.map(P_).join(` diff --git a/app/web/src/nova/vi/vi.tsx b/app/web/src/nova/vi/vi.tsx index 5e43b0a8..9a667e5e 100644 --- a/app/web/src/nova/vi/vi.tsx +++ b/app/web/src/nova/vi/vi.tsx @@ -99,19 +99,22 @@ export const Vi: FC<{ for (const url of urls) { vi.page.navs[page_id].add(url); } - clearTimeout(nav.timeout); - nav.timeout = setTimeout(() => { - if (vi.on_preload) { - vi.on_preload({ - urls: Array.from(vi.page.navs[page_id]), - opt: { - on_load: opt?.on_load, - }, - }); - } - }, 100); - - return ""; + return new Promise((done) => { + clearTimeout(nav.timeout); + nav.timeout = setTimeout(() => { + if (vi.on_preload) { + vi.on_preload({ + urls: Array.from(vi.page.navs[page_id]), + opt: { + on_load: (...arg) => { + opt?.on_load?.(...arg); + done(); + }, + }, + }); + } + }, 100); + }); }; vi.layout = layout;