From 33fc9bf1b41455b48a65c89c784d2d3f11c42675 Mon Sep 17 00:00:00 2001 From: Rizky Date: Wed, 15 May 2024 15:00:04 +0700 Subject: [PATCH] fix --- app/srv/core/main.js | 2 +- app/web/src/nova/vi/exts/notif.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/srv/core/main.js b/app/srv/core/main.js index bf60f6ce..61a7e8d3 100644 --- a/app/srv/core/main.js +++ b/app/srv/core/main.js @@ -104,7 +104,7 @@ ${f} return ${g} `);l.props[f]={value:g};let w=_(...Object.values(c));typeof w=="function"&&(l.props[f].fn=w,w=(...h)=>{if(l)return l.props?.[f].fn(...h)}),c[f]=w,u[f]=w,r&&(r[f]=w)}catch{a.add(f)}if(location.pathname.startsWith("/ed/")&&ei.item_id&&t.item.id===ei.item_id){ei.scope={};for(let[f,d]of Object.entries(r))ei.scope[f]=d;ei.scope.self_props=u}}}},ut={timeout:null,set:new WeakSet,map:{},src:{}},KS=(e,t)=>{if(!ut.set.has(e)){ut.set.add(e);let n=(0,ky.createId)();ut.map[n]={mprop:e},ut.src[n]=t}clearTimeout(ut.timeout),ut.timeout=setTimeout(async()=>{let n=await _api.code_build(ut.src),r=null;for(let[i,o]of Object.entries(n)){let l=ut.map[i].mprop;if(!r&&l.doc){r=l.doc;break}}r&&(r.transact(()=>{for(let[i,o]of Object.entries(n))ut.map[i].mprop.set("valueBuilt",o)}),ut.set=new WeakSet,ut.map={},ut.src={})},300)},Bs=(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[l,s]of Object.entries(i.props))if(s.fn){let c=new Function(...Object.keys(o),`// [${t.item.name}] ${l}: ${t.item.id} return ${s.value||""} - `);s.fn=c(...Object.values(o))}}};var Nf=P(G()),If=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{let o=In(On,"VI"),[l,s]=(0,by.useState)({});e.render=()=>{s({})};let c=t;return e.item.component?.id&&(c||(c={}),Sy(o,e,n,c,i,r)),e.item.adv?.html?(0,Nf.jsx)($s,{meta:e,passprop:c,is_layout:n,depth:i}):e.item.adv?.js&&(xy(o,e,n,c,i,r),e.script)?e.script.result:(0,Nf.jsx)($s,{meta:e,passprop:c,is_layout:n,depth:i})};var we=P(G()),QS=70,XS={debug:!!localStorage.getItem("prasi-js-debug")},Hs={enabled:!1,meta:{}},qt=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{if(Hs.enabled){let o=Hs.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>QS)return(0,we.jsxs)("div",{className:"bg-orange-100 border border-orange-300 rounded-sm text-xs flex flex-col items-center",children:[(0,we.jsxs)("div",{className:"text-[10px] font-bold text-red-900 self-stretch px-1",children:["WARNING: Render loop detected in [",e.item.name,"]"]}),(0,we.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(XS.debug){let o="";for(let l=0;l{let o=In(On,"VI");if(n&&e.item.name==="children"){let s=[];for(let c of o.entry){let a=o.meta[c];if(a.item.adv?.js||a.item.component?.id)s.push((0,we.jsx)(It,{meta:a,children:(0,we.jsx)(If,{meta:a,is_layout:!1,passprop:{...t},parent_key:r,depth:i+1})}));else{let u=_o(o,a,!1,t,i);o.visit&&o.visit(a,u),s.push((0,we.jsx)("div",{...u.props}))}}return(0,we.jsx)(we.Fragment,{children:s.map((c,a)=>(0,we.jsx)(Ry.Fragment,{children:c},a))})}let l=_o(o,e,n,t,i);return o.visit&&o.visit(e,l),(0,we.jsx)("div",{...l.props})};var ct=window,Cy=async(e,t)=>{window.parent&&(window.addEventListener("message",async({data:n})=>{if(typeof n=="object"&&n.mobile){let r=n,i=async o=>{if(!ct.notif?.onTap){let l=null,s=0;await new Promise(()=>{l=setInterval(()=>{s++,s>20&&clearInterval(l),o()&&clearInterval(l)},500)});return}};switch(r.type){case"notification-token":t.notif={token:r.token},ct.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(!ct.notif?.onTap){i(()=>ct.notif?.onTap?(ct.notif?.onTap(r.notif),!0):!1);return}ct.notif?.onTap&&ct.notif?.onTap(r.notif);break;case"notification-receive":ct.notif?.onReceive||i(()=>ct.notif?.onReceive?(ct.notif?.onReceive(r.notif),!0):!1),ct.notif?.onReceive&&ct.notif?.onReceive(r.notif);break}}}),window.parent.postMessage({mobile:!0,type:"ready"},"*"))};var Of=window;Of.prasi_ext||(Of.prasi_ext={});var Vs=Of.prasi_ext;var Ty=async e=>{let t=Vs[e.site.id];if(t||(Vs[e.site.id]={status:"init"},t=Vs[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 Cy(e,t),t.status="ready"}};var ni=P(G()),Ny=({})=>{let e=In(On,"VI"),t=Tn({tick:Date.now()});if(e.tick=t.tick,Ty(e),e.status!=="ready")return(0,ni.jsx)("div",{className:"flex flex-1 flex-col relative",children:(0,ni.jsx)(go,{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,ni.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,ni.jsx)(It,{children:(0,ni.jsx)(qt,{meta:o,is_layout:n,depth:0})},o.item.id):null})})};var Ws=P(G()),ri=window,Iy=({meta:e,entry:t,api_url:n,site_id:r,api:i,mode:o,db:l,visit:s,script:c,page_id:a,render_stat:u,on_status_changed:f,on_preload:d,layout:p,comp_load:g})=>{let _=In(On,"VI");return _.mode=o,_.entry=t,_.on_preload=d,_.comp.load=g,ri.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),ri.prasiContext.siteUrl&&(y=ri.prasiContext.siteUrl(y)),`${m.protocol}//${m.host}${y}`}return w},ri.isMobile=o==="mobile",ri.isDesktop=o==="desktop",ri.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(bo.timeout),bo.timeout=setTimeout(()=>{_.on_preload&&_.on_preload({urls:Array.from(_.page.navs[a]),opt:{on_load:h?.on_load}})},100),""},_.layout=p,_.page.cur.id=a,_.on_status_changes=f,u==="disabled"&&(Hs.enabled=!1),_.meta!==e&&(_.meta=e),c&&(_.script.init_local_effect=c.init_local_effect),_.visit=s,_.status==="init"&&(_.site.db=l,_.site.api=i,G0(_,{api_url:n,site_id:r})),d&&(0,Gs.useEffect)(()=>{setTimeout(()=>{let w=_.page.navs[_.page.cur.id];w&&d({urls:Array.from(w),opt:{on_load(h){}}})},500)},[_.page.cur.id]),(0,Ws.jsx)(It,{children:(0,Ws.jsx)(Gs.Suspense,{children:(0,Ws.jsx)(Ny,{})})})};var Pf=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:Pf._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:{}}},Oy=()=>{if(!T.root){let e=new URL(location.href);Pf._prasi.basepath&&(e.pathname=Pf._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 ii=async e=>{let t=T.comp;for(let r of e)r&&r.type!=="text"&&Zs(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 Os(`comp-${i}`,o);if(Object.keys(t.pending).length>0){console.warn(`Warning: component not found: ${Object.keys(t.pending)}`);return}await ii(Object.values(r))}catch(r){console.error(r)}},Zs=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&&Zs(i.content);delete t.pending[n]}else if(e.component?.props)for(let r of Object.values(e.component?.props||{}))r.content&&Zs(r.content)}}if(e.childs)for(let n of e.childs){let r=n;r&&r.type!=="text"&&Zs(r)}};var Py=e=>new Promise(async t=>{let n=!1,r=await of(`page-${e}`);r&&(t(r),n=!0);let i=await(await fetch(T.url`_prasi/page/${e}`)).json();n||t(i)}),qS=e=>new Promise(async t=>{let n={},r=[...new Set(e)],i=!0;for(let l of r){let s=await of(`page-${l}`);if(s)n[l]=s;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)}),Ay=async e=>{let t=e.map(r=>T.route.router?.lookup(r)).filter(r=>r&&r.id);return await qS(t.map(r=>r?.id))};var zy=P(Ly()),My=()=>{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,zy.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 Co(e,t){return function(){return e.apply(t,arguments)}}var{toString:YS}=Object.prototype,{getPrototypeOf:zf}=Object,Xs=(e=>t=>{let n=YS.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Pt=e=>(e=e.toLowerCase(),t=>Xs(t)===e),qs=e=>t=>typeof t===e,{isArray:oi}=Array,To=qs("undefined");function JS(e){return e!==null&&!To(e)&&e.constructor!==null&&!To(e.constructor)&&ft(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Fy=Pt("ArrayBuffer");function e2(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Fy(e.buffer),t}var t2=qs("string"),ft=qs("function"),Uy=qs("number"),Ys=e=>e!==null&&typeof e=="object",n2=e=>e===!0||e===!1,Qs=e=>{if(Xs(e)!=="object")return!1;let t=zf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},r2=Pt("Date"),i2=Pt("File"),o2=Pt("Blob"),l2=Pt("FileList"),s2=e=>Ys(e)&&ft(e.pipe),a2=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ft(e.append)&&((t=Xs(e))==="formdata"||t==="object"&&ft(e.toString)&&e.toString()==="[object FormData]"))},u2=Pt("URLSearchParams"),c2=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function No(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,i;if(typeof e!="object"&&(e=[e]),oi(e))for(r=0,i=e.length;r0;)if(i=n[r],t===i.toLowerCase())return i;return null}var $y=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Hy=e=>!To(e)&&e!==$y;function Lf(){let{caseless:e}=Hy(this)&&this||{},t={},n=(r,i)=>{let o=e&&By(t,i)||i;Qs(t[o])&&Qs(r)?t[o]=Lf(t[o],r):Qs(r)?t[o]=Lf({},r):oi(r)?t[o]=r.slice():t[o]=r};for(let r=0,i=arguments.length;r(No(t,(i,o)=>{n&&ft(i)?e[o]=Co(i,n):e[o]=i},{allOwnKeys:r}),e),d2=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),p2=(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)},m2=(e,t,n,r)=>{let i,o,l,s={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)l=i[o],(!r||r(l,e,t))&&!s[l]&&(t[l]=e[l],s[l]=!0);e=n!==!1&&zf(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},h2=(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},g2=e=>{if(!e)return null;if(oi(e))return e;let t=e.length;if(!Uy(t))return null;let n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},y2=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&zf(Uint8Array)),_2=(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])}},v2=(e,t)=>{let n,r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},w2=Pt("HTMLFormElement"),x2=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,i){return r.toUpperCase()+i}),Dy=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),k2=Pt("RegExp"),Vy=(e,t)=>{let n=Object.getOwnPropertyDescriptors(e),r={};No(n,(i,o)=>{let l;(l=t(i,o,e))!==!1&&(r[o]=l||i)}),Object.defineProperties(e,r)},S2=e=>{Vy(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+"'")})}})},E2=(e,t)=>{let n={},r=i=>{i.forEach(o=>{n[o]=!0})};return oi(e)?r(e):r(String(e).split(t)),n},b2=()=>{},R2=(e,t)=>(e=+e,Number.isFinite(e)?e:t),Af="abcdefghijklmnopqrstuvwxyz",jy="0123456789",Wy={DIGIT:jy,ALPHA:Af,ALPHA_DIGIT:Af+Af.toUpperCase()+jy},C2=(e=16,t=Wy.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(Ys(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[i]=r;let o=oi(r)?[]:{};return No(r,(l,s)=>{let c=n(l,i+1);!To(c)&&(o[s]=c)}),t[i]=void 0,o}}return r};return n(e,0)},I2=Pt("AsyncFunction"),O2=e=>e&&(Ys(e)||ft(e))&&ft(e.then)&&ft(e.catch),x={isArray:oi,isArrayBuffer:Fy,isBuffer:JS,isFormData:a2,isArrayBufferView:e2,isString:t2,isNumber:Uy,isBoolean:n2,isObject:Ys,isPlainObject:Qs,isUndefined:To,isDate:r2,isFile:i2,isBlob:o2,isRegExp:k2,isFunction:ft,isStream:s2,isURLSearchParams:u2,isTypedArray:y2,isFileList:l2,forEach:No,merge:Lf,extend:f2,trim:c2,stripBOM:d2,inherits:p2,toFlatObject:m2,kindOf:Xs,kindOfTest:Pt,endsWith:h2,toArray:g2,forEachEntry:_2,matchAll:v2,isHTMLForm:w2,hasOwnProperty:Dy,hasOwnProp:Dy,reduceDescriptors:Vy,freezeMethods:S2,toObjectSet:E2,toCamelCase:x2,noop:b2,toFiniteNumber:R2,findKey:By,global:$y,isContextDefined:Hy,ALPHABET:Wy,generateString:C2,isSpecCompliantForm:T2,toJSONObject:N2,isAsyncFn:I2,isThenable:O2};function li(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(li,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 Gy=li.prototype,Zy={};["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=>{Zy[e]={value:e}});Object.defineProperties(li,Zy);Object.defineProperty(Gy,"isAxiosError",{value:!0});li.from=(e,t,n,r,i,o)=>{let l=Object.create(Gy);return x.toFlatObject(e,l,function(c){return c!==Error.prototype},s=>s!=="isAxiosError"),li.call(l,e.message,t,n,r,i),l.cause=e,l.name=e.name,o&&Object.assign(l,o),l};var D=li;var Js=null;function Mf(e){return x.isPlainObject(e)||x.isArray(e)}function Qy(e){return x.endsWith(e,"[]")?e.slice(0,-2):e}function Ky(e,t,n){return e?e.concat(t).map(function(i,o){return i=Qy(i),!n&&o?"["+i+"]":i}).join(n?".":""):t}function P2(e){return x.isArray(e)&&!e.some(Mf)}var A2=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(Js||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,l=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)&&P2(g)||(x.isFileList(g)||x.endsWith(_,"[]"))&&(h=x.toArray(g)))return _=Qy(_),h.forEach(function(y,v){!(x.isUndefined(y)||y===null)&&t.append(l===!0?Ky([_],v,o):l===null?_:_+"[]",a(y))}),!1}return Mf(g)?!0:(t.append(Ky(w,_,o),a(g)),!1)}let f=[],d=Object.assign(A2,{defaultVisitor:u,convertValue:a,isVisitable:Mf});function p(g,_){if(!x.isUndefined(g)){if(f.indexOf(g)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(g),x.forEach(g,function(h,m){(!(x.isUndefined(h)||h===null)&&i.call(t,h,x.isString(m)?m.trim():m,_,d))===!0&&p(h,_?_.concat(m):[m])}),f.pop()}}if(!x.isObject(e))throw new TypeError("data must be an object");return p(e),t}var Ln=L2;function Xy(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function qy(e,t){this._pairs=[],e&&Ln(e,this,t)}var Yy=qy.prototype;Yy.append=function(t,n){this._pairs.push([t,n])};Yy.toString=function(t){let n=t?function(r){return t.call(this,r,Xy)}:Xy;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};var ea=qy;function z2(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Io(e,t,n){if(!t)return e;let r=n&&n.encode||z2,i=n&&n.serialize,o;if(i?o=i(t,n):o=x.isURLSearchParams(t)?t.toString():new ea(t,n).toString(r),o){let l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}var Df=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=Df;var ta={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Jy=typeof URLSearchParams<"u"?URLSearchParams:ea;var e_=typeof FormData<"u"?FormData:null;var t_=typeof Blob<"u"?Blob:null;var n_={isBrowser:!0,classes:{URLSearchParams:Jy,FormData:e_,Blob:t_},protocols:["http","https","file","blob","url","data"]};var Ff={};Iv(Ff,{hasBrowserEnv:()=>r_,hasStandardBrowserEnv:()=>M2,hasStandardBrowserWebWorkerEnv:()=>D2});var r_=typeof window<"u"&&typeof document<"u",M2=(e=>r_&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),D2=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Le={...Ff,...n_};function Uf(e,t){return Ln(e,new Le.classes.URLSearchParams,Object.assign({visitor:function(n,r,i,o){return Le.isNode&&x.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function j2(e){return x.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function F2(e){let t={},n=Object.keys(e),r,i=n.length,o;for(r=0;r=n.length;return l=!l&&x.isArray(i)?i.length:l,c?(x.hasOwnProp(i,l)?i[l]=[i[l],r]:i[l]=r,!s):((!i[l]||!x.isObject(i[l]))&&(i[l]=[]),t(n,r,i[l],o)&&x.isArray(i[l])&&(i[l]=F2(i[l])),!s)}if(x.isFormData(e)&&x.isFunction(e.entries)){let n={};return x.forEachEntry(e,(r,i)=>{t(j2(r),i,n,0)}),n}return null}var na=U2;function B2(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 Bf={transitional:ta,adapter:["xhr","http"],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(na(t)):t;if(x.isArrayBuffer(t)||x.isBuffer(t)||x.isStream(t)||x.isFile(t)||x.isBlob(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 s;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return Uf(t,this.formSerializer).toString();if((s=x.isFileList(t))||r.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Ln(s?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||i?(n.setContentType("application/json",!1),B2(t)):t}],transformResponse:[function(t){let n=this.transitional||Bf.transitional,r=n&&n.forcedJSONParsing,i=this.responseType==="json";if(t&&x.isString(t)&&(r&&!this.responseType||i)){let l=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(s){if(l)throw s.name==="SyntaxError"?D.from(s,D.ERR_BAD_RESPONSE,this,null,this.response):s}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Le.classes.FormData,Blob:Le.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=>{Bf.headers[e]={}});var si=Bf;var $2=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"]),i_=e=>{let t={},n,r,i;return e&&e.split(` + `);s.fn=c(...Object.values(o))}}};var Nf=P(G()),If=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{let o=In(On,"VI"),[l,s]=(0,by.useState)({});e.render=()=>{s({})};let c=t;return e.item.component?.id&&(c||(c={}),Sy(o,e,n,c,i,r)),e.item.adv?.html?(0,Nf.jsx)($s,{meta:e,passprop:c,is_layout:n,depth:i}):e.item.adv?.js&&(xy(o,e,n,c,i,r),e.script)?e.script.result:(0,Nf.jsx)($s,{meta:e,passprop:c,is_layout:n,depth:i})};var we=P(G()),QS=70,XS={debug:!!localStorage.getItem("prasi-js-debug")},Hs={enabled:!1,meta:{}},qt=({meta:e,passprop:t,is_layout:n,parent_key:r,depth:i})=>{if(Hs.enabled){let o=Hs.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>QS)return(0,we.jsxs)("div",{className:"bg-orange-100 border border-orange-300 rounded-sm text-xs flex flex-col items-center",children:[(0,we.jsxs)("div",{className:"text-[10px] font-bold text-red-900 self-stretch px-1",children:["WARNING: Render loop detected in [",e.item.name,"]"]}),(0,we.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(XS.debug){let o="";for(let l=0;l{let o=In(On,"VI");if(n&&e.item.name==="children"){let s=[];for(let c of o.entry){let a=o.meta[c];if(a.item.adv?.js||a.item.component?.id)s.push((0,we.jsx)(It,{meta:a,children:(0,we.jsx)(If,{meta:a,is_layout:!1,passprop:{...t},parent_key:r,depth:i+1})}));else{let u=_o(o,a,!1,t,i);o.visit&&o.visit(a,u),s.push((0,we.jsx)("div",{...u.props}))}}return(0,we.jsx)(we.Fragment,{children:s.map((c,a)=>(0,we.jsx)(Ry.Fragment,{children:c},a))})}let l=_o(o,e,n,t,i);return o.visit&&o.visit(e,l),(0,we.jsx)("div",{...l.props})};var ct=window,Cy=async(e,t)=>{window.parent&&(window.addEventListener("message",async({data:n})=>{if(typeof n=="object"&&n.mobile){console.log(n);let r=n,i=async o=>{if(!ct.notif?.onTap){let l=null,s=0;await new Promise(()=>{l=setInterval(()=>{s++,s>20&&clearInterval(l),o()&&clearInterval(l)},500)});return}};switch(r.type){case"notification-token":t.notif={token:r.token},ct.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(!ct.notif?.onTap){i(()=>ct.notif?.onTap?(ct.notif?.onTap(r.notif),!0):!1);return}ct.notif?.onTap&&ct.notif?.onTap(r.notif);break;case"notification-receive":ct.notif?.onReceive||i(()=>ct.notif?.onReceive?(ct.notif?.onReceive(r.notif),!0):!1),ct.notif?.onReceive&&ct.notif?.onReceive(r.notif);break}}}),window.parent.postMessage({mobile:!0,type:"ready"},"*"))};var Of=window;Of.prasi_ext||(Of.prasi_ext={});var Vs=Of.prasi_ext;var Ty=async e=>{let t=Vs[e.site.id];if(t||(Vs[e.site.id]={status:"init"},t=Vs[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 Cy(e,t),t.status="ready"}};var ni=P(G()),Ny=({})=>{let e=In(On,"VI"),t=Tn({tick:Date.now()});if(e.tick=t.tick,Ty(e),e.status!=="ready")return(0,ni.jsx)("div",{className:"flex flex-1 flex-col relative",children:(0,ni.jsx)(go,{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,ni.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,ni.jsx)(It,{children:(0,ni.jsx)(qt,{meta:o,is_layout:n,depth:0})},o.item.id):null})})};var Ws=P(G()),ri=window,Iy=({meta:e,entry:t,api_url:n,site_id:r,api:i,mode:o,db:l,visit:s,script:c,page_id:a,render_stat:u,on_status_changed:f,on_preload:d,layout:p,comp_load:g})=>{let _=In(On,"VI");return _.mode=o,_.entry=t,_.on_preload=d,_.comp.load=g,ri.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),ri.prasiContext.siteUrl&&(y=ri.prasiContext.siteUrl(y)),`${m.protocol}//${m.host}${y}`}return w},ri.isMobile=o==="mobile",ri.isDesktop=o==="desktop",ri.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(bo.timeout),bo.timeout=setTimeout(()=>{_.on_preload&&_.on_preload({urls:Array.from(_.page.navs[a]),opt:{on_load:h?.on_load}})},100),""},_.layout=p,_.page.cur.id=a,_.on_status_changes=f,u==="disabled"&&(Hs.enabled=!1),_.meta!==e&&(_.meta=e),c&&(_.script.init_local_effect=c.init_local_effect),_.visit=s,_.status==="init"&&(_.site.db=l,_.site.api=i,G0(_,{api_url:n,site_id:r})),d&&(0,Gs.useEffect)(()=>{setTimeout(()=>{let w=_.page.navs[_.page.cur.id];w&&d({urls:Array.from(w),opt:{on_load(h){}}})},500)},[_.page.cur.id]),(0,Ws.jsx)(It,{children:(0,Ws.jsx)(Gs.Suspense,{children:(0,Ws.jsx)(Ny,{})})})};var Pf=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:Pf._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:{}}},Oy=()=>{if(!T.root){let e=new URL(location.href);Pf._prasi.basepath&&(e.pathname=Pf._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 ii=async e=>{let t=T.comp;for(let r of e)r&&r.type!=="text"&&Zs(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 Os(`comp-${i}`,o);if(Object.keys(t.pending).length>0){console.warn(`Warning: component not found: ${Object.keys(t.pending)}`);return}await ii(Object.values(r))}catch(r){console.error(r)}},Zs=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&&Zs(i.content);delete t.pending[n]}else if(e.component?.props)for(let r of Object.values(e.component?.props||{}))r.content&&Zs(r.content)}}if(e.childs)for(let n of e.childs){let r=n;r&&r.type!=="text"&&Zs(r)}};var Py=e=>new Promise(async t=>{let n=!1,r=await of(`page-${e}`);r&&(t(r),n=!0);let i=await(await fetch(T.url`_prasi/page/${e}`)).json();n||t(i)}),qS=e=>new Promise(async t=>{let n={},r=[...new Set(e)],i=!0;for(let l of r){let s=await of(`page-${l}`);if(s)n[l]=s;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)}),Ay=async e=>{let t=e.map(r=>T.route.router?.lookup(r)).filter(r=>r&&r.id);return await qS(t.map(r=>r?.id))};var zy=P(Ly()),My=()=>{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,zy.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 Co(e,t){return function(){return e.apply(t,arguments)}}var{toString:YS}=Object.prototype,{getPrototypeOf:zf}=Object,Xs=(e=>t=>{let n=YS.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Pt=e=>(e=e.toLowerCase(),t=>Xs(t)===e),qs=e=>t=>typeof t===e,{isArray:oi}=Array,To=qs("undefined");function JS(e){return e!==null&&!To(e)&&e.constructor!==null&&!To(e.constructor)&&ft(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Fy=Pt("ArrayBuffer");function e2(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Fy(e.buffer),t}var t2=qs("string"),ft=qs("function"),Uy=qs("number"),Ys=e=>e!==null&&typeof e=="object",n2=e=>e===!0||e===!1,Qs=e=>{if(Xs(e)!=="object")return!1;let t=zf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},r2=Pt("Date"),i2=Pt("File"),o2=Pt("Blob"),l2=Pt("FileList"),s2=e=>Ys(e)&&ft(e.pipe),a2=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ft(e.append)&&((t=Xs(e))==="formdata"||t==="object"&&ft(e.toString)&&e.toString()==="[object FormData]"))},u2=Pt("URLSearchParams"),c2=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function No(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,i;if(typeof e!="object"&&(e=[e]),oi(e))for(r=0,i=e.length;r0;)if(i=n[r],t===i.toLowerCase())return i;return null}var $y=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Hy=e=>!To(e)&&e!==$y;function Lf(){let{caseless:e}=Hy(this)&&this||{},t={},n=(r,i)=>{let o=e&&By(t,i)||i;Qs(t[o])&&Qs(r)?t[o]=Lf(t[o],r):Qs(r)?t[o]=Lf({},r):oi(r)?t[o]=r.slice():t[o]=r};for(let r=0,i=arguments.length;r(No(t,(i,o)=>{n&&ft(i)?e[o]=Co(i,n):e[o]=i},{allOwnKeys:r}),e),d2=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),p2=(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)},m2=(e,t,n,r)=>{let i,o,l,s={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)l=i[o],(!r||r(l,e,t))&&!s[l]&&(t[l]=e[l],s[l]=!0);e=n!==!1&&zf(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},h2=(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},g2=e=>{if(!e)return null;if(oi(e))return e;let t=e.length;if(!Uy(t))return null;let n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},y2=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&zf(Uint8Array)),_2=(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])}},v2=(e,t)=>{let n,r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},w2=Pt("HTMLFormElement"),x2=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,i){return r.toUpperCase()+i}),Dy=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),k2=Pt("RegExp"),Vy=(e,t)=>{let n=Object.getOwnPropertyDescriptors(e),r={};No(n,(i,o)=>{let l;(l=t(i,o,e))!==!1&&(r[o]=l||i)}),Object.defineProperties(e,r)},S2=e=>{Vy(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+"'")})}})},E2=(e,t)=>{let n={},r=i=>{i.forEach(o=>{n[o]=!0})};return oi(e)?r(e):r(String(e).split(t)),n},b2=()=>{},R2=(e,t)=>(e=+e,Number.isFinite(e)?e:t),Af="abcdefghijklmnopqrstuvwxyz",jy="0123456789",Wy={DIGIT:jy,ALPHA:Af,ALPHA_DIGIT:Af+Af.toUpperCase()+jy},C2=(e=16,t=Wy.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(Ys(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[i]=r;let o=oi(r)?[]:{};return No(r,(l,s)=>{let c=n(l,i+1);!To(c)&&(o[s]=c)}),t[i]=void 0,o}}return r};return n(e,0)},I2=Pt("AsyncFunction"),O2=e=>e&&(Ys(e)||ft(e))&&ft(e.then)&&ft(e.catch),x={isArray:oi,isArrayBuffer:Fy,isBuffer:JS,isFormData:a2,isArrayBufferView:e2,isString:t2,isNumber:Uy,isBoolean:n2,isObject:Ys,isPlainObject:Qs,isUndefined:To,isDate:r2,isFile:i2,isBlob:o2,isRegExp:k2,isFunction:ft,isStream:s2,isURLSearchParams:u2,isTypedArray:y2,isFileList:l2,forEach:No,merge:Lf,extend:f2,trim:c2,stripBOM:d2,inherits:p2,toFlatObject:m2,kindOf:Xs,kindOfTest:Pt,endsWith:h2,toArray:g2,forEachEntry:_2,matchAll:v2,isHTMLForm:w2,hasOwnProperty:Dy,hasOwnProp:Dy,reduceDescriptors:Vy,freezeMethods:S2,toObjectSet:E2,toCamelCase:x2,noop:b2,toFiniteNumber:R2,findKey:By,global:$y,isContextDefined:Hy,ALPHABET:Wy,generateString:C2,isSpecCompliantForm:T2,toJSONObject:N2,isAsyncFn:I2,isThenable:O2};function li(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(li,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 Gy=li.prototype,Zy={};["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=>{Zy[e]={value:e}});Object.defineProperties(li,Zy);Object.defineProperty(Gy,"isAxiosError",{value:!0});li.from=(e,t,n,r,i,o)=>{let l=Object.create(Gy);return x.toFlatObject(e,l,function(c){return c!==Error.prototype},s=>s!=="isAxiosError"),li.call(l,e.message,t,n,r,i),l.cause=e,l.name=e.name,o&&Object.assign(l,o),l};var D=li;var Js=null;function Mf(e){return x.isPlainObject(e)||x.isArray(e)}function Qy(e){return x.endsWith(e,"[]")?e.slice(0,-2):e}function Ky(e,t,n){return e?e.concat(t).map(function(i,o){return i=Qy(i),!n&&o?"["+i+"]":i}).join(n?".":""):t}function P2(e){return x.isArray(e)&&!e.some(Mf)}var A2=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(Js||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,l=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)&&P2(g)||(x.isFileList(g)||x.endsWith(_,"[]"))&&(h=x.toArray(g)))return _=Qy(_),h.forEach(function(y,v){!(x.isUndefined(y)||y===null)&&t.append(l===!0?Ky([_],v,o):l===null?_:_+"[]",a(y))}),!1}return Mf(g)?!0:(t.append(Ky(w,_,o),a(g)),!1)}let f=[],d=Object.assign(A2,{defaultVisitor:u,convertValue:a,isVisitable:Mf});function p(g,_){if(!x.isUndefined(g)){if(f.indexOf(g)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(g),x.forEach(g,function(h,m){(!(x.isUndefined(h)||h===null)&&i.call(t,h,x.isString(m)?m.trim():m,_,d))===!0&&p(h,_?_.concat(m):[m])}),f.pop()}}if(!x.isObject(e))throw new TypeError("data must be an object");return p(e),t}var Ln=L2;function Xy(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function qy(e,t){this._pairs=[],e&&Ln(e,this,t)}var Yy=qy.prototype;Yy.append=function(t,n){this._pairs.push([t,n])};Yy.toString=function(t){let n=t?function(r){return t.call(this,r,Xy)}:Xy;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};var ea=qy;function z2(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Io(e,t,n){if(!t)return e;let r=n&&n.encode||z2,i=n&&n.serialize,o;if(i?o=i(t,n):o=x.isURLSearchParams(t)?t.toString():new ea(t,n).toString(r),o){let l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}var Df=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=Df;var ta={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Jy=typeof URLSearchParams<"u"?URLSearchParams:ea;var e_=typeof FormData<"u"?FormData:null;var t_=typeof Blob<"u"?Blob:null;var n_={isBrowser:!0,classes:{URLSearchParams:Jy,FormData:e_,Blob:t_},protocols:["http","https","file","blob","url","data"]};var Ff={};Iv(Ff,{hasBrowserEnv:()=>r_,hasStandardBrowserEnv:()=>M2,hasStandardBrowserWebWorkerEnv:()=>D2});var r_=typeof window<"u"&&typeof document<"u",M2=(e=>r_&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),D2=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Le={...Ff,...n_};function Uf(e,t){return Ln(e,new Le.classes.URLSearchParams,Object.assign({visitor:function(n,r,i,o){return Le.isNode&&x.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function j2(e){return x.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function F2(e){let t={},n=Object.keys(e),r,i=n.length,o;for(r=0;r=n.length;return l=!l&&x.isArray(i)?i.length:l,c?(x.hasOwnProp(i,l)?i[l]=[i[l],r]:i[l]=r,!s):((!i[l]||!x.isObject(i[l]))&&(i[l]=[]),t(n,r,i[l],o)&&x.isArray(i[l])&&(i[l]=F2(i[l])),!s)}if(x.isFormData(e)&&x.isFunction(e.entries)){let n={};return x.forEachEntry(e,(r,i)=>{t(j2(r),i,n,0)}),n}return null}var na=U2;function B2(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 Bf={transitional:ta,adapter:["xhr","http"],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(na(t)):t;if(x.isArrayBuffer(t)||x.isBuffer(t)||x.isStream(t)||x.isFile(t)||x.isBlob(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 s;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return Uf(t,this.formSerializer).toString();if((s=x.isFileList(t))||r.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Ln(s?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||i?(n.setContentType("application/json",!1),B2(t)):t}],transformResponse:[function(t){let n=this.transitional||Bf.transitional,r=n&&n.forcedJSONParsing,i=this.responseType==="json";if(t&&x.isString(t)&&(r&&!this.responseType||i)){let l=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(s){if(l)throw s.name==="SyntaxError"?D.from(s,D.ERR_BAD_RESPONSE,this,null,this.response):s}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Le.classes.FormData,Blob:Le.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=>{Bf.headers[e]={}});var si=Bf;var $2=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"]),i_=e=>{let t={},n,r,i;return e&&e.split(` `).forEach(function(l){i=l.indexOf(":"),n=l.substring(0,i).trim().toLowerCase(),r=l.substring(i+1).trim(),!(!n||t[n]&&$2[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t};var o_=Symbol("internals");function Oo(e){return e&&String(e).trim().toLowerCase()}function ra(e){return e===!1||e==null?e:x.isArray(e)?e.map(ra):String(e)}function H2(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 V2=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function $f(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 W2(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function G2(e,t){let n=x.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(i,o,l){return this[r].call(this,t,i,o,l)},configurable:!0})})}var ai=class{constructor(t){t&&this.set(t)}set(t,n,r){let i=this;function o(s,c,a){let u=Oo(c);if(!u)throw new Error("header name must be a non-empty string");let f=x.findKey(i,u);(!f||i[f]===void 0||a===!0||a===void 0&&i[f]!==!1)&&(i[f||c]=ra(s))}let l=(s,c)=>x.forEach(s,(a,u)=>o(a,u,c));return x.isPlainObject(t)||t instanceof this.constructor?l(t,n):x.isString(t)&&(t=t.trim())&&!V2(t)?l(i_(t),n):t!=null&&o(n,t,r),this}get(t,n){if(t=Oo(t),t){let r=x.findKey(this,t);if(r){let i=this[r];if(!n)return i;if(n===!0)return H2(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=Oo(t),t){let r=x.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||$f(this,this[r],r,n)))}return!1}delete(t,n){let r=this,i=!1;function o(l){if(l=Oo(l),l){let s=x.findKey(r,l);s&&(!n||$f(r,r[s],s,n))&&(delete r[s],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||$f(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 l=x.findKey(r,o);if(l){n[l]=ra(i),delete n[o];return}let s=t?W2(o):String(o).trim();s!==o&&delete n[o],n[s]=ra(i),r[s]=!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[o_]=this[o_]={accessors:{}}).accessors,i=this.prototype;function o(l){let s=Oo(l);r[s]||(G2(i,l),r[s]=!0)}return x.isArray(t)?t.forEach(o):o(t),this}};ai.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);x.reduceDescriptors(ai.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});x.freezeMethods(ai);var ze=ai;function Po(e,t){let n=this||si,r=t||n,i=ze.from(r.headers),o=r.data;return x.forEach(e,function(s){o=s.call(n,o,i.normalize(),t?t.status:void 0)}),i.normalize(),o}function Ao(e){return!!(e&&e.__CANCEL__)}function l_(e,t,n){D.call(this,e??"canceled",D.ERR_CANCELED,t,n),this.name="CanceledError"}x.inherits(l_,D,{__CANCEL__:!0});var zn=l_;function Hf(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))}var s_=Le.hasStandardBrowserEnv?{write(e,t,n,r,i,o){let l=[e+"="+encodeURIComponent(t)];x.isNumber(n)&&l.push("expires="+new Date(n).toGMTString()),x.isString(r)&&l.push("path="+r),x.isString(i)&&l.push("domain="+i),o===!0&&l.push("secure"),document.cookie=l.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 Vf(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Wf(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Lo(e,t){return e&&!Vf(t)?Wf(e,t):t}var a_=Le.hasStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a"),r;function i(o){let l=o;return t&&(n.setAttribute("href",l),l=n.href),n.setAttribute("href",l),{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(l){let s=x.isString(l)?i(l):l;return s.protocol===r.protocol&&s.host===r.host}}():function(){return function(){return!0}}();function Gf(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Z2(e,t){e=e||10;let n=new Array(e),r=new Array(e),i=0,o=0,l;return t=t!==void 0?t:1e3,function(c){let a=Date.now(),u=r[o];l||(l=a),n[i]=c,r[i]=a;let f=o,d=0;for(;f!==i;)d+=n[f++],f=f%e;if(i=(i+1)%e,i===o&&(o=(o+1)%e),a-l{let o=i.loaded,l=i.lengthComputable?i.total:void 0,s=o-n,c=r(s),a=o<=l;n=o;let u={loaded:o,total:l,progress:l?o/l:void 0,bytes:s,rate:c||void 0,estimated:c&&l&&a?(l-o)/c:void 0,event:i};u[t?"download":"upload"]=!0,e(u)}}var K2=typeof XMLHttpRequest<"u",f_=K2&&function(e){return new Promise(function(n,r){let i=e.data,o=ze.from(e.headers).normalize(),{responseType:l,withXSRFToken:s}=e,c;function a(){e.cancelToken&&e.cancelToken.unsubscribe(c),e.signal&&e.signal.removeEventListener("abort",c)}let u;if(x.isFormData(i)){if(Le.hasStandardBrowserEnv||Le.hasStandardBrowserWebWorkerEnv)o.setContentType(!1);else if((u=o.getContentType())!==!1){let[_,...w]=u?u.split(";").map(h=>h.trim()).filter(Boolean):[];o.setContentType([_||"multipart/form-data",...w].join("; "))}}let f=new XMLHttpRequest;if(e.auth){let _=e.auth.username||"",w=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(_+":"+w))}let d=Lo(e.baseURL,e.url);f.open(e.method.toUpperCase(),Io(d,e.params,e.paramsSerializer),!0),f.timeout=e.timeout;function p(){if(!f)return;let _=ze.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders()),h={data:!l||l==="text"||l==="json"?f.responseText:f.response,status:f.status,statusText:f.statusText,headers:_,config:e,request:f};Hf(function(y){n(y),a()},function(y){r(y),a()},h),f=null}if("onloadend"in f?f.onloadend=p:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(p)},f.onabort=function(){f&&(r(new D("Request aborted",D.ECONNABORTED,e,f)),f=null)},f.onerror=function(){r(new D("Network Error",D.ERR_NETWORK,e,f)),f=null},f.ontimeout=function(){let w=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",h=e.transitional||ta;e.timeoutErrorMessage&&(w=e.timeoutErrorMessage),r(new D(w,h.clarifyTimeoutError?D.ETIMEDOUT:D.ECONNABORTED,e,f)),f=null},Le.hasStandardBrowserEnv&&(s&&x.isFunction(s)&&(s=s(e)),s||s!==!1&&a_(d))){let _=e.xsrfHeaderName&&e.xsrfCookieName&&s_.read(e.xsrfCookieName);_&&o.set(e.xsrfHeaderName,_)}i===void 0&&o.setContentType(null),"setRequestHeader"in f&&x.forEach(o.toJSON(),function(w,h){f.setRequestHeader(h,w)}),x.isUndefined(e.withCredentials)||(f.withCredentials=!!e.withCredentials),l&&l!=="json"&&(f.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&f.addEventListener("progress",c_(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",c_(e.onUploadProgress)),(e.cancelToken||e.signal)&&(c=_=>{f&&(r(!_||_.type?new zn(null,e,f):_),f.abort(),f=null)},e.cancelToken&&e.cancelToken.subscribe(c),e.signal&&(e.signal.aborted?c():e.signal.addEventListener("abort",c)));let g=Gf(d);if(g&&Le.protocols.indexOf(g)===-1){r(new D("Unsupported protocol "+g+":",D.ERR_BAD_REQUEST,e));return}f.send(i||null)})};var Zf={http:Js,xhr:f_};x.forEach(Zf,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var d_=e=>`- ${e}`,Q2=e=>x.isFunction(e)||e===null||e===!1,ia={getAdapter:e=>{e=x.isArray(e)?e:[e];let{length:t}=e,n,r,i={};for(let o=0;o`adapter ${s} `+(c===!1?"is not supported by the environment":"is not available in the build")),l=t?o.length>1?`since : `+o.map(d_).join(` diff --git a/app/web/src/nova/vi/exts/notif.ts b/app/web/src/nova/vi/exts/notif.ts index c50fa52a..f5df59d2 100644 --- a/app/web/src/nova/vi/exts/notif.ts +++ b/app/web/src/nova/vi/exts/notif.ts @@ -45,6 +45,7 @@ export const initExtNotif = async (vi: VG, prasi_ext: PrasiExt) => { if (window.parent) { window.addEventListener("message", async ({ data: raw }) => { if (typeof raw === "object" && raw.mobile) { + console.log(raw); const data = raw as unknown as | { type: "notification-token";