@devvit/public-api 0.10.21-next-2024-05-14-cddb8b57c.0 → 0.10.21-next-2024-05-14-d444343c8.0

Sign up to get free protection for your applications and to get access to all the features.
package/public-api.min.js CHANGED
@@ -1,8 +1,8 @@
1
- var AP=Object.create;var im=Object.defineProperty;var xP=Object.getOwnPropertyDescriptor;var TP=Object.getOwnPropertyNames;var EP=Object.getPrototypeOf,RP=Object.prototype.hasOwnProperty;var v=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var FP=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of TP(e))!RP.call(r,n)&&n!==t&&im(r,n,{get:()=>e[n],enumerable:!(i=xP(e,n))||i.enumerable});return r};var Ko=(r,e,t)=>(t=r!=null?AP(EP(r)):{},FP(e||!r||!r.__esModule?im(t,"default",{value:r,enumerable:!0}):t,r));var Qd=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var s=(r,e,t)=>(Qd(r,e,"read from private field"),t?t.call(r):e.get(r)),l=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)},d=(r,e,t,i)=>(Qd(r,e,"write to private field"),i?i.call(r,t):e.set(r,t),t);var b=(r,e,t)=>(Qd(r,e,"access private method"),t);var ne=v((YR,nm)=>{nm.exports=function(r){try{return!!r()}catch{return!0}}});var Xo=v((QR,sm)=>{var OP=ne();sm.exports=!OP(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var J=v((eF,dm)=>{var om=Xo(),am=Function.prototype,el=am.call,MP=om&&am.bind.bind(el,el);dm.exports=om?MP:function(r){return function(){return el.apply(r,arguments)}}});var um=v((tF,lm)=>{var LP=Math.ceil,BP=Math.floor;lm.exports=Math.trunc||function(e){var t=+e;return(t>0?BP:LP)(t)}});var Zo=v((rF,cm)=>{var UP=um();cm.exports=function(r){var e=+r;return e!==e||e===0?0:UP(e)}});var ue=v((iF,mm)=>{var Yo=function(r){return r&&r.Math==Math&&r};mm.exports=Yo(typeof globalThis=="object"&&globalThis)||Yo(typeof window=="object"&&window)||Yo(typeof self=="object"&&self)||Yo(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var kr=v((nF,pm)=>{pm.exports=!1});var Qo=v((sF,fm)=>{var gm=ue(),DP=Object.defineProperty;fm.exports=function(r,e){try{DP(gm,r,{value:e,configurable:!0,writable:!0})}catch{gm[r]=e}return e}});var ea=v((oF,vm)=>{var _P=ue(),NP=Qo(),hm="__core-js_shared__",qP=_P[hm]||NP(hm,{});vm.exports=qP});var tl=v((aF,bm)=>{var HP=kr(),ym=ea();(bm.exports=function(r,e){return ym[r]||(ym[r]=e!==void 0?e:{})})("versions",[]).push({version:"3.27.2",mode:HP?"pure":"global",copyright:"\xA9 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.27.2/LICENSE",source:"https://github.com/zloirock/core-js"})});var ta=v((dF,Pm)=>{Pm.exports=function(r){return r==null}});var ra=v((lF,km)=>{var jP=ta(),WP=TypeError;km.exports=function(r){if(jP(r))throw WP("Can't call method on "+r);return r}});var gn=v((uF,Sm)=>{var GP=ra(),zP=Object;Sm.exports=function(r){return zP(GP(r))}});var Pe=v((cF,Cm)=>{var VP=J(),JP=gn(),$P=VP({}.hasOwnProperty);Cm.exports=Object.hasOwn||function(e,t){return $P(JP(e),t)}});var rl=v((mF,Im)=>{var KP=J(),XP=0,ZP=Math.random(),YP=KP(1 .toString);Im.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+YP(++XP+ZP,36)}});var Am=v((pF,wm)=>{wm.exports=typeof navigator<"u"&&String(navigator.userAgent)||""});var Mm=v((gF,Om)=>{var Fm=ue(),il=Am(),xm=Fm.process,Tm=Fm.Deno,Em=xm&&xm.versions||Tm&&Tm.version,Rm=Em&&Em.v8,De,ia;Rm&&(De=Rm.split("."),ia=De[0]>0&&De[0]<4?1:+(De[0]+De[1]));!ia&&il&&(De=il.match(/Edge\/(\d+)/),(!De||De[1]>=74)&&(De=il.match(/Chrome\/(\d+)/),De&&(ia=+De[1])));Om.exports=ia});var nl=v((fF,Bm)=>{var Lm=Mm(),QP=ne();Bm.exports=!!Object.getOwnPropertySymbols&&!QP(function(){var r=Symbol();return!String(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Lm&&Lm<41})});var sl=v((hF,Um)=>{var ek=nl();Um.exports=ek&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var ke=v((vF,_m)=>{var tk=ue(),rk=tl(),Dm=Pe(),ik=rl(),nk=nl(),sk=sl(),Sr=tk.Symbol,ol=rk("wks"),ok=sk?Sr.for||Sr:Sr&&Sr.withoutSetter||ik;_m.exports=function(r){return Dm(ol,r)||(ol[r]=nk&&Dm(Sr,r)?Sr[r]:ok("Symbol."+r)),ol[r]}});var Hm=v((yF,qm)=>{var ak=ke(),dk=ak("toStringTag"),Nm={};Nm[dk]="z";qm.exports=String(Nm)==="[object z]"});var dl=v((bF,jm)=>{var al=typeof document=="object"&&document.all,lk=typeof al>"u"&&al!==void 0;jm.exports={all:al,IS_HTMLDDA:lk}});var $=v((PF,Gm)=>{var Wm=dl(),uk=Wm.all;Gm.exports=Wm.IS_HTMLDDA?function(r){return typeof r=="function"||r===uk}:function(r){return typeof r=="function"}});var na=v((kF,Vm)=>{var zm=J(),ck=zm({}.toString),mk=zm("".slice);Vm.exports=function(r){return mk(ck(r),8,-1)}});var fn=v((SF,Jm)=>{var pk=Hm(),gk=$(),sa=na(),fk=ke(),hk=fk("toStringTag"),vk=Object,yk=sa(function(){return arguments}())=="Arguments",bk=function(r,e){try{return r[e]}catch{}};Jm.exports=pk?sa:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=bk(e=vk(r),hk))=="string"?t:yk?sa(e):(i=sa(e))=="Object"&&gk(e.callee)?"Arguments":i}});var hn=v((CF,$m)=>{var Pk=fn(),kk=String;$m.exports=function(r){if(Pk(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return kk(r)}});var ul=v((IF,Zm)=>{var ll=J(),Sk=Zo(),Ck=hn(),Ik=ra(),wk=ll("".charAt),Km=ll("".charCodeAt),Ak=ll("".slice),Xm=function(r){return function(e,t){var i=Ck(Ik(e)),n=Sk(t),o=i.length,a,c;return n<0||n>=o?r?"":void 0:(a=Km(i,n),a<55296||a>56319||n+1===o||(c=Km(i,n+1))<56320||c>57343?r?wk(i,n):a:r?Ak(i,n,n+2):(a-55296<<10)+(c-56320)+65536)}};Zm.exports={codeAt:Xm(!1),charAt:Xm(!0)}});var ep=v((wF,Qm)=>{var xk=ue(),Tk=$(),Ym=xk.WeakMap;Qm.exports=Tk(Ym)&&/native code/.test(String(Ym))});var mt=v((AF,ip)=>{var tp=$(),rp=dl(),Ek=rp.all;ip.exports=rp.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:tp(r)||r===Ek}:function(r){return typeof r=="object"?r!==null:tp(r)}});var ce=v((xF,np)=>{var Rk=ne();np.exports=!Rk(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var ml=v((TF,op)=>{var Fk=ue(),sp=mt(),cl=Fk.document,Ok=sp(cl)&&sp(cl.createElement);op.exports=function(r){return Ok?cl.createElement(r):{}}});var pl=v((EF,ap)=>{var Mk=ce(),Lk=ne(),Bk=ml();ap.exports=!Mk&&!Lk(function(){return Object.defineProperty(Bk("div"),"a",{get:function(){return 7}}).a!=7})});var gl=v((RF,dp)=>{var Uk=ce(),Dk=ne();dp.exports=Uk&&Dk(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Ve=v((FF,lp)=>{var _k=mt(),Nk=String,qk=TypeError;lp.exports=function(r){if(_k(r))return r;throw qk(Nk(r)+" is not an object")}});var _e=v((OF,up)=>{var Hk=Xo(),oa=Function.prototype.call;up.exports=Hk?oa.bind(oa):function(){return oa.apply(oa,arguments)}});var vn=v((MF,cp)=>{var fl=ue(),jk=$(),Wk=function(r){return jk(r)?r:void 0};cp.exports=function(r,e){return arguments.length<2?Wk(fl[r]):fl[r]&&fl[r][e]}});var hl=v((LF,mp)=>{var Gk=J();mp.exports=Gk({}.isPrototypeOf)});var vl=v((BF,pp)=>{var zk=vn(),Vk=$(),Jk=hl(),$k=sl(),Kk=Object;pp.exports=$k?function(r){return typeof r=="symbol"}:function(r){var e=zk("Symbol");return Vk(e)&&Jk(e.prototype,Kk(r))}});var yl=v((UF,gp)=>{var Xk=String;gp.exports=function(r){try{return Xk(r)}catch{return"Object"}}});var aa=v((DF,fp)=>{var Zk=$(),Yk=yl(),Qk=TypeError;fp.exports=function(r){if(Zk(r))return r;throw Qk(Yk(r)+" is not a function")}});var da=v((_F,hp)=>{var eS=aa(),tS=ta();hp.exports=function(r,e){var t=r[e];return tS(t)?void 0:eS(t)}});var yp=v((NF,vp)=>{var bl=_e(),Pl=$(),kl=mt(),rS=TypeError;vp.exports=function(r,e){var t,i;if(e==="string"&&Pl(t=r.toString)&&!kl(i=bl(t,r))||Pl(t=r.valueOf)&&!kl(i=bl(t,r))||e!=="string"&&Pl(t=r.toString)&&!kl(i=bl(t,r)))return i;throw rS("Can't convert object to primitive value")}});var Sp=v((qF,kp)=>{var iS=_e(),bp=mt(),Pp=vl(),nS=da(),sS=yp(),oS=ke(),aS=TypeError,dS=oS("toPrimitive");kp.exports=function(r,e){if(!bp(r)||Pp(r))return r;var t=nS(r,dS),i;if(t){if(e===void 0&&(e="default"),i=iS(t,r,e),!bp(i)||Pp(i))return i;throw aS("Can't convert object to primitive value")}return e===void 0&&(e="number"),sS(r,e)}});var la=v((HF,Cp)=>{var lS=Sp(),uS=vl();Cp.exports=function(r){var e=lS(r,"string");return uS(e)?e:e+""}});var Je=v(wp=>{var cS=ce(),mS=pl(),pS=gl(),ua=Ve(),Ip=la(),gS=TypeError,Sl=Object.defineProperty,fS=Object.getOwnPropertyDescriptor,Cl="enumerable",Il="configurable",wl="writable";wp.f=cS?pS?function(e,t,i){if(ua(e),t=Ip(t),ua(i),typeof e=="function"&&t==="prototype"&&"value"in i&&wl in i&&!i[wl]){var n=fS(e,t);n&&n[wl]&&(e[t]=i.value,i={configurable:Il in i?i[Il]:n[Il],enumerable:Cl in i?i[Cl]:n[Cl],writable:!1})}return Sl(e,t,i)}:Sl:function(e,t,i){if(ua(e),t=Ip(t),ua(i),mS)try{return Sl(e,t,i)}catch{}if("get"in i||"set"in i)throw gS("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var Cr=v((WF,Ap)=>{Ap.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var ca=v((GF,xp)=>{var hS=ce(),vS=Je(),yS=Cr();xp.exports=hS?function(r,e,t){return vS.f(r,e,yS(1,t))}:function(r,e,t){return r[e]=t,r}});var ma=v((zF,Ep)=>{var bS=tl(),PS=rl(),Tp=bS("keys");Ep.exports=function(r){return Tp[r]||(Tp[r]=PS(r))}});var pa=v((VF,Rp)=>{Rp.exports={}});var Ir=v((JF,Mp)=>{var kS=ep(),Op=ue(),SS=mt(),CS=ca(),Al=Pe(),xl=ea(),IS=ma(),wS=pa(),Fp="Object already initialized",Tl=Op.TypeError,AS=Op.WeakMap,ga,yn,fa,xS=function(r){return fa(r)?yn(r):ga(r,{})},TS=function(r){return function(e){var t;if(!SS(e)||(t=yn(e)).type!==r)throw Tl("Incompatible receiver, "+r+" required");return t}};kS||xl.state?(Ne=xl.state||(xl.state=new AS),Ne.get=Ne.get,Ne.has=Ne.has,Ne.set=Ne.set,ga=function(r,e){if(Ne.has(r))throw Tl(Fp);return e.facade=r,Ne.set(r,e),e},yn=function(r){return Ne.get(r)||{}},fa=function(r){return Ne.has(r)}):(jt=IS("state"),wS[jt]=!0,ga=function(r,e){if(Al(r,jt))throw Tl(Fp);return e.facade=r,CS(r,jt,e),e},yn=function(r){return Al(r,jt)?r[jt]:{}},fa=function(r){return Al(r,jt)});var Ne,jt;Mp.exports={set:ga,get:yn,has:fa,enforce:xS,getterFor:TS}});var El=v(Up=>{"use strict";var Lp={}.propertyIsEnumerable,Bp=Object.getOwnPropertyDescriptor,ES=Bp&&!Lp.call({1:2},1);Up.f=ES?function(e){var t=Bp(this,e);return!!t&&t.enumerable}:Lp});var Fl=v((KF,Dp)=>{var RS=J(),FS=ne(),OS=na(),Rl=Object,MS=RS("".split);Dp.exports=FS(function(){return!Rl("z").propertyIsEnumerable(0)})?function(r){return OS(r)=="String"?MS(r,""):Rl(r)}:Rl});var wr=v((XF,_p)=>{var LS=Fl(),BS=ra();_p.exports=function(r){return LS(BS(r))}});var Ol=v(qp=>{var US=ce(),DS=_e(),_S=El(),NS=Cr(),qS=wr(),HS=la(),jS=Pe(),WS=pl(),Np=Object.getOwnPropertyDescriptor;qp.f=US?Np:function(e,t){if(e=qS(e),t=HS(t),WS)try{return Np(e,t)}catch{}if(jS(e,t))return NS(!DS(_S.f,e,t),e[t])}});var Bl=v((YF,jp)=>{var Ml=ce(),GS=Pe(),Hp=Function.prototype,zS=Ml&&Object.getOwnPropertyDescriptor,Ll=GS(Hp,"name"),VS=Ll&&function(){}.name==="something",JS=Ll&&(!Ml||Ml&&zS(Hp,"name").configurable);jp.exports={EXISTS:Ll,PROPER:VS,CONFIGURABLE:JS}});var Dl=v((QF,Wp)=>{var $S=J(),KS=$(),Ul=ea(),XS=$S(Function.toString);KS(Ul.inspectSource)||(Ul.inspectSource=function(r){return XS(r)});Wp.exports=Ul.inspectSource});var ql=v((eO,Vp)=>{var Nl=J(),ZS=ne(),YS=$(),ha=Pe(),_l=ce(),QS=Bl().CONFIGURABLE,eC=Dl(),zp=Ir(),tC=zp.enforce,rC=zp.get,Gp=String,va=Object.defineProperty,iC=Nl("".slice),nC=Nl("".replace),sC=Nl([].join),oC=_l&&!ZS(function(){return va(function(){},"length",{value:8}).length!==8}),aC=String(String).split("String"),dC=Vp.exports=function(r,e,t){iC(Gp(e),0,7)==="Symbol("&&(e="["+nC(Gp(e),/^Symbol\(([^)]*)\)/,"$1")+"]"),t&&t.getter&&(e="get "+e),t&&t.setter&&(e="set "+e),(!ha(r,"name")||QS&&r.name!==e)&&(_l?va(r,"name",{value:e,configurable:!0}):r.name=e),oC&&t&&ha(t,"arity")&&r.length!==t.arity&&va(r,"length",{value:t.arity});try{t&&ha(t,"constructor")&&t.constructor?_l&&va(r,"prototype",{writable:!1}):r.prototype&&(r.prototype=void 0)}catch{}var i=tC(r);return ha(i,"source")||(i.source=sC(aC,typeof e=="string"?e:"")),r};Function.prototype.toString=dC(function(){return YS(this)&&rC(this).source||eC(this)},"toString")});var Wt=v((tO,Jp)=>{var lC=$(),uC=Je(),cC=ql(),mC=Qo();Jp.exports=function(r,e,t,i){i||(i={});var n=i.enumerable,o=i.name!==void 0?i.name:e;if(lC(t)&&cC(t,o,i),i.global)n?r[e]=t:mC(e,t);else{try{i.unsafe?r[e]&&(n=!0):delete r[e]}catch{}n?r[e]=t:uC.f(r,e,{value:t,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return r}});var Hl=v((rO,$p)=>{var pC=Zo(),gC=Math.max,fC=Math.min;$p.exports=function(r,e){var t=pC(r);return t<0?gC(t+e,0):fC(t,e)}});var Xp=v((iO,Kp)=>{var hC=Zo(),vC=Math.min;Kp.exports=function(r){return r>0?vC(hC(r),9007199254740991):0}});var ya=v((nO,Zp)=>{var yC=Xp();Zp.exports=function(r){return yC(r.length)}});var eg=v((sO,Qp)=>{var bC=wr(),PC=Hl(),kC=ya(),Yp=function(r){return function(e,t,i){var n=bC(e),o=kC(n),a=PC(i,o),c;if(r&&t!=t){for(;o>a;)if(c=n[a++],c!=c)return!0}else for(;o>a;a++)if((r||a in n)&&n[a]===t)return r||a||0;return!r&&-1}};Qp.exports={includes:Yp(!0),indexOf:Yp(!1)}});var Wl=v((oO,rg)=>{var SC=J(),jl=Pe(),CC=wr(),IC=eg().indexOf,wC=pa(),tg=SC([].push);rg.exports=function(r,e){var t=CC(r),i=0,n=[],o;for(o in t)!jl(wC,o)&&jl(t,o)&&tg(n,o);for(;e.length>i;)jl(t,o=e[i++])&&(~IC(n,o)||tg(n,o));return n}});var ba=v((aO,ig)=>{ig.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var sg=v(ng=>{var AC=Wl(),xC=ba(),TC=xC.concat("length","prototype");ng.f=Object.getOwnPropertyNames||function(e){return AC(e,TC)}});var Gl=v(og=>{og.f=Object.getOwnPropertySymbols});var dg=v((uO,ag)=>{var EC=vn(),RC=J(),FC=sg(),OC=Gl(),MC=Ve(),LC=RC([].concat);ag.exports=EC("Reflect","ownKeys")||function(e){var t=FC.f(MC(e)),i=OC.f;return i?LC(t,i(e)):t}});var cg=v((cO,ug)=>{var lg=Pe(),BC=dg(),UC=Ol(),DC=Je();ug.exports=function(r,e,t){for(var i=BC(e),n=DC.f,o=UC.f,a=0;a<i.length;a++){var c=i[a];!lg(r,c)&&!(t&&lg(t,c))&&n(r,c,o(e,c))}}});var pg=v((mO,mg)=>{var _C=ne(),NC=$(),qC=/#|\.prototype\./,bn=function(r,e){var t=jC[HC(r)];return t==GC?!0:t==WC?!1:NC(e)?_C(e):!!e},HC=bn.normalize=function(r){return String(r).replace(qC,".").toLowerCase()},jC=bn.data={},WC=bn.NATIVE="N",GC=bn.POLYFILL="P";mg.exports=bn});var Pn=v((pO,gg)=>{var zl=ue(),zC=Ol().f,VC=ca(),JC=Wt(),$C=Qo(),KC=cg(),XC=pg();gg.exports=function(r,e){var t=r.target,i=r.global,n=r.stat,o,a,c,p,g,y;if(i?a=zl:n?a=zl[t]||$C(t,{}):a=(zl[t]||{}).prototype,a)for(c in e){if(g=e[c],r.dontCallGetSet?(y=zC(a,c),p=y&&y.value):p=a[c],o=XC(i?c:t+(n?".":"#")+c,r.forced),!o&&p!==void 0){if(typeof g==typeof p)continue;KC(g,p)}(r.sham||p&&p.sham)&&VC(g,"sham",!0),JC(a,c,g,r)}}});var Vl=v((gO,fg)=>{var ZC=Wl(),YC=ba();fg.exports=Object.keys||function(e){return ZC(e,YC)}});var vg=v(hg=>{var QC=ce(),eI=gl(),tI=Je(),rI=Ve(),iI=wr(),nI=Vl();hg.f=QC&&!eI?Object.defineProperties:function(e,t){rI(e);for(var i=iI(t),n=nI(t),o=n.length,a=0,c;o>a;)tI.f(e,c=n[a++],i[c]);return e}});var bg=v((hO,yg)=>{var sI=vn();yg.exports=sI("document","documentElement")});var kn=v((vO,Ag)=>{var oI=Ve(),aI=vg(),Pg=ba(),dI=pa(),lI=bg(),uI=ml(),cI=ma(),kg=">",Sg="<",$l="prototype",Kl="script",Ig=cI("IE_PROTO"),Jl=function(){},wg=function(r){return Sg+Kl+kg+r+Sg+"/"+Kl+kg},Cg=function(r){r.write(wg("")),r.close();var e=r.parentWindow.Object;return r=null,e},mI=function(){var r=uI("iframe"),e="java"+Kl+":",t;return r.style.display="none",lI.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(wg("document.F=Object")),t.close(),t.F},Pa,ka=function(){try{Pa=new ActiveXObject("htmlfile")}catch{}ka=typeof document<"u"?document.domain&&Pa?Cg(Pa):mI():Cg(Pa);for(var r=Pg.length;r--;)delete ka[$l][Pg[r]];return ka()};dI[Ig]=!0;Ag.exports=Object.create||function(e,t){var i;return e!==null?(Jl[$l]=oI(e),i=new Jl,Jl[$l]=null,i[Ig]=e):i=ka(),t===void 0?i:aI.f(i,t)}});var Tg=v((yO,xg)=>{var pI=ne();xg.exports=!pI(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var Zl=v((bO,Rg)=>{var gI=Pe(),fI=$(),hI=gn(),vI=ma(),yI=Tg(),Eg=vI("IE_PROTO"),Xl=Object,bI=Xl.prototype;Rg.exports=yI?Xl.getPrototypeOf:function(r){var e=hI(r);if(gI(e,Eg))return e[Eg];var t=e.constructor;return fI(t)&&e instanceof t?t.prototype:e instanceof Xl?bI:null}});var tu=v((PO,Mg)=>{"use strict";var PI=ne(),kI=$(),SI=mt(),CI=kn(),Fg=Zl(),II=Wt(),wI=ke(),AI=kr(),eu=wI("iterator"),Og=!1,Qe,Yl,Ql;[].keys&&(Ql=[].keys(),"next"in Ql?(Yl=Fg(Fg(Ql)),Yl!==Object.prototype&&(Qe=Yl)):Og=!0);var xI=!SI(Qe)||PI(function(){var r={};return Qe[eu].call(r)!==r});xI?Qe={}:AI&&(Qe=CI(Qe));kI(Qe[eu])||II(Qe,eu,function(){return this});Mg.exports={IteratorPrototype:Qe,BUGGY_SAFARI_ITERATORS:Og}});var Sn=v((kO,Bg)=>{var TI=Je().f,EI=Pe(),RI=ke(),Lg=RI("toStringTag");Bg.exports=function(r,e,t){r&&!t&&(r=r.prototype),r&&!EI(r,Lg)&&TI(r,Lg,{configurable:!0,value:e})}});var Ar=v((SO,Ug)=>{Ug.exports={}});var ru=v((CO,Dg)=>{"use strict";var FI=tu().IteratorPrototype,OI=kn(),MI=Cr(),LI=Sn(),BI=Ar(),UI=function(){return this};Dg.exports=function(r,e,t,i){var n=e+" Iterator";return r.prototype=OI(FI,{next:MI(+!i,t)}),LI(r,n,!1,!0),BI[n]=UI,r}});var Ng=v((IO,_g)=>{var DI=$(),_I=String,NI=TypeError;_g.exports=function(r){if(typeof r=="object"||DI(r))return r;throw NI("Can't set "+_I(r)+" as a prototype")}});var Hg=v((wO,qg)=>{var qI=J(),HI=Ve(),jI=Ng();qg.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=qI(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set),t(e,[]),r=e instanceof Array}catch{}return function(n,o){return HI(n),jI(o),r?t(n,o):n.__proto__=o,n}}():void 0)});var nu=v((AO,Zg)=>{"use strict";var WI=Pn(),GI=_e(),Sa=kr(),Kg=Bl(),zI=$(),VI=ru(),jg=Zl(),Wg=Hg(),JI=Sn(),$I=ca(),iu=Wt(),KI=ke(),Gg=Ar(),Xg=tu(),XI=Kg.PROPER,ZI=Kg.CONFIGURABLE,zg=Xg.IteratorPrototype,Ca=Xg.BUGGY_SAFARI_ITERATORS,Cn=KI("iterator"),Vg="keys",In="values",Jg="entries",$g=function(){return this};Zg.exports=function(r,e,t,i,n,o,a){VI(t,e,i);var c=function(U){if(U===n&&h)return h;if(!Ca&&U in y)return y[U];switch(U){case Vg:return function(){return new t(this,U)};case In:return function(){return new t(this,U)};case Jg:return function(){return new t(this,U)}}return function(){return new t(this)}},p=e+" Iterator",g=!1,y=r.prototype,m=y[Cn]||y["@@iterator"]||n&&y[n],h=!Ca&&m||c(n),k=e=="Array"&&y.entries||m,C,w,A;if(k&&(C=jg(k.call(new r)),C!==Object.prototype&&C.next&&(!Sa&&jg(C)!==zg&&(Wg?Wg(C,zg):zI(C[Cn])||iu(C,Cn,$g)),JI(C,p,!0,!0),Sa&&(Gg[p]=$g))),XI&&n==In&&m&&m.name!==In&&(!Sa&&ZI?$I(y,"name",In):(g=!0,h=function(){return GI(m,this)})),n)if(w={values:c(In),keys:o?h:c(Vg),entries:c(Jg)},a)for(A in w)(Ca||g||!(A in y))&&iu(y,A,w[A]);else WI({target:e,proto:!0,forced:Ca||g},w);return(!Sa||a)&&y[Cn]!==h&&iu(y,Cn,h,{name:n}),Gg[e]=h,w}});var su=v((xO,Yg)=>{Yg.exports=function(r,e){return{value:r,done:e}}});var rf=v(()=>{"use strict";var YI=ul().charAt,QI=hn(),ef=Ir(),ew=nu(),Qg=su(),tf="String Iterator",tw=ef.set,rw=ef.getterFor(tf);ew(String,"String",function(r){tw(this,{type:tf,string:QI(r),index:0})},function(){var e=rw(this),t=e.string,i=e.index,n;return i>=t.length?Qg(void 0,!0):(n=YI(t,i),e.index+=n.length,Qg(n,!1))})});var ou=v((RO,nf)=>{var iw=ne(),nw=ke(),sw=kr(),ow=nw("iterator");nf.exports=!iw(function(){var r=new URL("b?a=1&b=2&c=3","http://a"),e=r.searchParams,t="";return r.pathname="c%20d",e.forEach(function(i,n){e.delete("b"),t+=n+i}),sw&&!r.toJSON||!e.sort||r.href!=="http://a/c%20d?a=1&c=3"||e.get("c")!=="3"||String(new URLSearchParams("?a=1"))!=="a=1"||!e[ow]||new URL("https://a@b").username!=="a"||new URLSearchParams(new URLSearchParams("a=b")).get("a")!=="b"||new URL("http://\u0442\u0435\u0441\u0442").host!=="xn--e1aybc"||new URL("http://a#\u0431").hash!=="#%D0%B1"||t!=="a1c3"||new URL("http://x",void 0).host!=="x"})});var of=v((FO,sf)=>{var aw=na(),dw=J();sf.exports=function(r){if(aw(r)==="Function")return dw(r)}});var Ia=v((OO,df)=>{var af=of(),lw=aa(),uw=Xo(),cw=af(af.bind);df.exports=function(r,e){return lw(r),e===void 0?r:uw?cw(r,e):function(){return r.apply(e,arguments)}}});var cf=v((MO,uf)=>{var lf=ql(),mw=Je();uf.exports=function(r,e,t){return t.get&&lf(t.get,e,{getter:!0}),t.set&&lf(t.set,e,{setter:!0}),mw.f(r,e,t)}});var au=v((LO,mf)=>{var pw=hl(),gw=TypeError;mf.exports=function(r,e){if(pw(e,r))return r;throw gw("Incorrect invocation")}});var hf=v((BO,ff)=>{"use strict";var pf=ce(),fw=J(),hw=_e(),vw=ne(),du=Vl(),yw=Gl(),bw=El(),Pw=gn(),kw=Fl(),xr=Object.assign,gf=Object.defineProperty,Sw=fw([].concat);ff.exports=!xr||vw(function(){if(pf&&xr({b:1},xr(gf({},"a",{enumerable:!0,get:function(){gf(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var r={},e={},t=Symbol(),i="abcdefghijklmnopqrst";return r[t]=7,i.split("").forEach(function(n){e[n]=n}),xr({},r)[t]!=7||du(xr({},e)).join("")!=i})?function(e,t){for(var i=Pw(e),n=arguments.length,o=1,a=yw.f,c=bw.f;n>o;)for(var p=kw(arguments[o++]),g=a?Sw(du(p),a(p)):du(p),y=g.length,m=0,h;y>m;)h=g[m++],(!pf||hw(c,p,h))&&(i[h]=p[h]);return i}:xr});var bf=v((UO,yf)=>{var Cw=_e(),vf=Ve(),Iw=da();yf.exports=function(r,e,t){var i,n;vf(r);try{if(i=Iw(r,"return"),!i){if(e==="throw")throw t;return t}i=Cw(i,r)}catch(o){n=!0,i=o}if(e==="throw")throw t;if(n)throw i;return vf(i),t}});var kf=v((DO,Pf)=>{var ww=Ve(),Aw=bf();Pf.exports=function(r,e,t,i){try{return i?e(ww(t)[0],t[1]):e(t)}catch(n){Aw(r,"throw",n)}}});var Cf=v((_O,Sf)=>{var xw=ke(),Tw=Ar(),Ew=xw("iterator"),Rw=Array.prototype;Sf.exports=function(r){return r!==void 0&&(Tw.Array===r||Rw[Ew]===r)}});var Ef=v((NO,Tf)=>{var Fw=J(),Ow=ne(),If=$(),Mw=fn(),Lw=vn(),Bw=Dl(),wf=function(){},Uw=[],Af=Lw("Reflect","construct"),lu=/^\s*(?:class|function)\b/,Dw=Fw(lu.exec),_w=!lu.exec(wf),wn=function(e){if(!If(e))return!1;try{return Af(wf,Uw,e),!0}catch{return!1}},xf=function(e){if(!If(e))return!1;switch(Mw(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return _w||!!Dw(lu,Bw(e))}catch{return!0}};xf.sham=!0;Tf.exports=!Af||Ow(function(){var r;return wn(wn.call)||!wn(Object)||!wn(function(){r=!0})||r})?xf:wn});var uu=v((qO,Rf)=>{"use strict";var Nw=la(),qw=Je(),Hw=Cr();Rf.exports=function(r,e,t){var i=Nw(e);i in r?qw.f(r,i,Hw(0,t)):r[i]=t}});var wa=v((HO,Of)=>{var jw=fn(),Ff=da(),Ww=ta(),Gw=Ar(),zw=ke(),Vw=zw("iterator");Of.exports=function(r){if(!Ww(r))return Ff(r,Vw)||Ff(r,"@@iterator")||Gw[jw(r)]}});var cu=v((jO,Mf)=>{var Jw=_e(),$w=aa(),Kw=Ve(),Xw=yl(),Zw=wa(),Yw=TypeError;Mf.exports=function(r,e){var t=arguments.length<2?Zw(r):e;if($w(t))return Kw(Jw(t,r));throw Yw(Xw(r)+" is not iterable")}});var Df=v((WO,Uf)=>{"use strict";var Qw=Ia(),eA=_e(),tA=gn(),rA=kf(),iA=Cf(),nA=Ef(),sA=ya(),Lf=uu(),oA=cu(),aA=wa(),Bf=Array;Uf.exports=function(e){var t=tA(e),i=nA(this),n=arguments.length,o=n>1?arguments[1]:void 0,a=o!==void 0;a&&(o=Qw(o,n>2?arguments[2]:void 0));var c=aA(t),p=0,g,y,m,h,k,C;if(c&&!(this===Bf&&iA(c)))for(h=oA(t,c),k=h.next,y=i?new this:[];!(m=eA(k,h)).done;p++)C=a?rA(h,o,[m.value,p],!0):m.value,Lf(y,p,C);else for(g=sA(t),y=i?new this(g):Bf(g);g>p;p++)C=a?o(t[p],p):t[p],Lf(y,p,C);return y.length=p,y}});var mu=v((GO,Nf)=>{var _f=Hl(),dA=ya(),lA=uu(),uA=Array,cA=Math.max;Nf.exports=function(r,e,t){for(var i=dA(r),n=_f(e,i),o=_f(t===void 0?i:t,i),a=uA(cA(o-n,0)),c=0;n<o;n++,c++)lA(a,c,r[n]);return a.length=c,a}});var $f=v((zO,Jf)=>{var Gt=J(),pu=2147483647,An=36,Gf=1,hu=26,mA=38,pA=700,gA=72,fA=128,hA="-",vA=/[^\0-\u007E]/,zf=/[.\u3002\uFF0E\uFF61]/g,qf="Overflow: input needs wider integers to process",gu=An-Gf,Hf=RangeError,yA=Gt(zf.exec),Tr=Math.floor,fu=String.fromCharCode,jf=Gt("".charCodeAt),Vf=Gt([].join),pt=Gt([].push),bA=Gt("".replace),PA=Gt("".split),kA=Gt("".toLowerCase),SA=function(r){for(var e=[],t=0,i=r.length;t<i;){var n=jf(r,t++);if(n>=55296&&n<=56319&&t<i){var o=jf(r,t++);(o&64512)==56320?pt(e,((n&1023)<<10)+(o&1023)+65536):(pt(e,n),t--)}else pt(e,n)}return e},Wf=function(r){return r+22+75*(r<26)},CA=function(r,e,t){var i=0;for(r=t?Tr(r/pA):r>>1,r+=Tr(r/e);r>gu*hu>>1;)r=Tr(r/gu),i+=An;return Tr(i+(gu+1)*r/(r+mA))},IA=function(r){var e=[];r=SA(r);var t=r.length,i=fA,n=0,o=gA,a,c;for(a=0;a<r.length;a++)c=r[a],c<128&&pt(e,fu(c));var p=e.length,g=p;for(p&&pt(e,hA);g<t;){var y=pu;for(a=0;a<r.length;a++)c=r[a],c>=i&&c<y&&(y=c);var m=g+1;if(y-i>Tr((pu-n)/m))throw Hf(qf);for(n+=(y-i)*m,i=y,a=0;a<r.length;a++){if(c=r[a],c<i&&++n>pu)throw Hf(qf);if(c==i){for(var h=n,k=An;;){var C=k<=o?Gf:k>=o+hu?hu:k-o;if(h<C)break;var w=h-C,A=An-C;pt(e,fu(Wf(C+w%A))),h=Tr(w/A),k+=An}pt(e,fu(Wf(h))),o=CA(n,m,g==p),n=0,g++}}n++,i++}return Vf(e,"")};Jf.exports=function(r){var e=[],t=PA(bA(kA(r),zf,"."),"."),i,n;for(i=0;i<t.length;i++)n=t[i],pt(e,yA(vA,n)?"xn--"+IA(n):n);return Vf(e,".")}});var vu=v((VO,Kf)=>{var wA=TypeError;Kf.exports=function(r,e){if(r<e)throw wA("Not enough arguments");return r}});var Zf=v((JO,Xf)=>{var AA=ke(),xA=kn(),TA=Je().f,yu=AA("unscopables"),bu=Array.prototype;bu[yu]==null&&TA(bu,yu,{configurable:!0,value:xA(null)});Xf.exports=function(r){bu[yu][r]=!0}});var ih=v(($O,rh)=>{"use strict";var EA=wr(),Pu=Zf(),Yf=Ar(),eh=Ir(),RA=Je().f,FA=nu(),Aa=su(),OA=kr(),MA=ce(),th="Array Iterator",LA=eh.set,BA=eh.getterFor(th);rh.exports=FA(Array,"Array",function(r,e){LA(this,{type:th,target:EA(r),index:0,kind:e})},function(){var r=BA(this),e=r.target,t=r.kind,i=r.index++;return!e||i>=e.length?(r.target=void 0,Aa(void 0,!0)):t=="keys"?Aa(i,!1):t=="values"?Aa(e[i],!1):Aa([i,e[i]],!1)},"values");var Qf=Yf.Arguments=Yf.Array;Pu("keys");Pu("values");Pu("entries");if(!OA&&MA&&Qf.name!=="values")try{RA(Qf,"name",{value:"values"})}catch{}});var sh=v((KO,nh)=>{var UA=Wt();nh.exports=function(r,e,t){for(var i in e)UA(r,i,e[i],t);return r}});var dh=v((XO,ah)=>{var oh=mu(),DA=Math.floor,ku=function(r,e){var t=r.length,i=DA(t/2);return t<8?_A(r,e):NA(r,ku(oh(r,0,i),e),ku(oh(r,i),e),e)},_A=function(r,e){for(var t=r.length,i=1,n,o;i<t;){for(o=i,n=r[i];o&&e(r[o-1],n)>0;)r[o]=r[--o];o!==i++&&(r[o]=n)}return r},NA=function(r,e,t,i){for(var n=e.length,o=t.length,a=0,c=0;a<n||c<o;)r[a+c]=a<n&&c<o?i(e[a],t[c])<=0?e[a++]:t[c++]:a<n?e[a++]:t[c++];return r};ah.exports=ku});var Fu=v((ZO,Th)=>{"use strict";ih();var Au=Pn(),Rr=ue(),xa=_e(),$e=J(),qA=ce(),Ph=ou(),kh=Wt(),HA=sh(),jA=Sn(),WA=ru(),Eu=Ir(),Sh=au(),Su=$(),GA=Pe(),zA=Ia(),VA=fn(),JA=Ve(),Ch=mt(),me=hn(),$A=kn(),lh=Cr(),xu=cu(),KA=wa(),Er=vu(),XA=ke(),ZA=dh(),YA=XA("iterator"),En="URLSearchParams",Ih=En+"Iterator",wh=Eu.set,qe=Eu.getterFor(En),QA=Eu.getterFor(Ih),ex=Object.getOwnPropertyDescriptor,Ru=function(r){if(!qA)return Rr[r];var e=ex(Rr,r);return e&&e.value},uh=Ru("fetch"),Ea=Ru("Request"),xn=Ru("Headers"),Cu=Ea&&Ea.prototype,ch=xn&&xn.prototype,tx=Rr.RegExp,rx=Rr.TypeError,Ah=Rr.decodeURIComponent,ix=Rr.encodeURIComponent,nx=$e("".charAt),mh=$e([].join),zt=$e([].push),Tu=$e("".replace),sx=$e([].shift),ph=$e([].splice),gh=$e("".split),ox=$e("".slice),ax=/\+/g,fh=Array(4),dx=function(r){return fh[r-1]||(fh[r-1]=tx("((?:%[\\da-f]{2}){"+r+"})","gi"))},lx=function(r){try{return Ah(r)}catch{return r}},hh=function(r){var e=Tu(r,ax," "),t=4;try{return Ah(e)}catch{for(;t;)e=Tu(e,dx(t--),lx);return e}},ux=/[!'()~]|%20/g,cx={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},mx=function(r){return cx[r]},vh=function(r){return Tu(ix(r),ux,mx)},Iu=WA(function(e,t){wh(this,{type:Ih,iterator:xu(qe(e).entries),kind:t})},"Iterator",function(){var e=QA(this),t=e.kind,i=e.iterator.next(),n=i.value;return i.done||(i.value=t==="keys"?n.key:t==="values"?n.value:[n.key,n.value]),i},!0),xh=function(r){this.entries=[],this.url=null,r!==void 0&&(Ch(r)?this.parseObject(r):this.parseQuery(typeof r=="string"?nx(r,0)==="?"?ox(r,1):r:me(r)))};xh.prototype={type:En,bindURL:function(r){this.url=r,this.update()},parseObject:function(r){var e=KA(r),t,i,n,o,a,c,p;if(e)for(t=xu(r,e),i=t.next;!(n=xa(i,t)).done;){if(o=xu(JA(n.value)),a=o.next,(c=xa(a,o)).done||(p=xa(a,o)).done||!xa(a,o).done)throw rx("Expected sequence with length 2");zt(this.entries,{key:me(c.value),value:me(p.value)})}else for(var g in r)GA(r,g)&&zt(this.entries,{key:g,value:me(r[g])})},parseQuery:function(r){if(r)for(var e=gh(r,"&"),t=0,i,n;t<e.length;)i=e[t++],i.length&&(n=gh(i,"="),zt(this.entries,{key:hh(sx(n)),value:hh(mh(n,"="))}))},serialize:function(){for(var r=this.entries,e=[],t=0,i;t<r.length;)i=r[t++],zt(e,vh(i.key)+"="+vh(i.value));return mh(e,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var Ra=function(){Sh(this,Tn);var e=arguments.length>0?arguments[0]:void 0;wh(this,new xh(e))},Tn=Ra.prototype;HA(Tn,{append:function(e,t){Er(arguments.length,2);var i=qe(this);zt(i.entries,{key:me(e),value:me(t)}),i.updateURL()},delete:function(r){Er(arguments.length,1);for(var e=qe(this),t=e.entries,i=me(r),n=0;n<t.length;)t[n].key===i?ph(t,n,1):n++;e.updateURL()},get:function(e){Er(arguments.length,1);for(var t=qe(this).entries,i=me(e),n=0;n<t.length;n++)if(t[n].key===i)return t[n].value;return null},getAll:function(e){Er(arguments.length,1);for(var t=qe(this).entries,i=me(e),n=[],o=0;o<t.length;o++)t[o].key===i&&zt(n,t[o].value);return n},has:function(e){Er(arguments.length,1);for(var t=qe(this).entries,i=me(e),n=0;n<t.length;)if(t[n++].key===i)return!0;return!1},set:function(e,t){Er(arguments.length,1);for(var i=qe(this),n=i.entries,o=!1,a=me(e),c=me(t),p=0,g;p<n.length;p++)g=n[p],g.key===a&&(o?ph(n,p--,1):(o=!0,g.value=c));o||zt(n,{key:a,value:c}),i.updateURL()},sort:function(){var e=qe(this);ZA(e.entries,function(t,i){return t.key>i.key?1:-1}),e.updateURL()},forEach:function(e){for(var t=qe(this).entries,i=zA(e,arguments.length>1?arguments[1]:void 0),n=0,o;n<t.length;)o=t[n++],i(o.value,o.key,this)},keys:function(){return new Iu(this,"keys")},values:function(){return new Iu(this,"values")},entries:function(){return new Iu(this,"entries")}},{enumerable:!0});kh(Tn,YA,Tn.entries,{name:"entries"});kh(Tn,"toString",function(){return qe(this).serialize()},{enumerable:!0});jA(Ra,En);Au({global:!0,constructor:!0,forced:!Ph},{URLSearchParams:Ra});!Ph&&Su(xn)&&(yh=$e(ch.has),bh=$e(ch.set),wu=function(r){if(Ch(r)){var e=r.body,t;if(VA(e)===En)return t=r.headers?new xn(r.headers):new xn,yh(t,"content-type")||bh(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),$A(r,{body:lh(0,me(e)),headers:lh(0,t)})}return r},Su(uh)&&Au({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return uh(e,arguments.length>1?wu(arguments[1]):{})}}),Su(Ea)&&(Ta=function(e){return Sh(this,Cu),new Ea(e,arguments.length>1?wu(arguments[1]):{})},Cu.constructor=Ta,Ta.prototype=Cu,Au({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:Ta})));var yh,bh,wu,Ta;Th.exports={URLSearchParams:Ra,getState:qe}});var Jh=v(()=>{"use strict";rf();var px=Pn(),Ju=ce(),gx=ou(),$u=ue(),Eh=Ia(),Ae=J(),Ba=Wt(),Se=cf(),fx=au(),Gu=Pe(),Ku=hf(),Fr=Df(),He=mu(),hx=ul().codeAt,vx=$f(),tt=hn(),yx=Sn(),bx=vu(),Hh=Fu(),jh=Ir(),Px=jh.set,Ua=jh.getterFor("URL"),kx=Hh.URLSearchParams,Sx=Hh.getState,Rn=$u.URL,zu=$u.TypeError,Da=$u.parseInt,Cx=Math.floor,Rh=Math.pow,we=Ae("".charAt),je=Ae(/./.exec),On=Ae([].join),Ix=Ae(1 .toString),wx=Ae([].pop),Mr=Ae([].push),Fh=Ae("".replace),Ax=Ae([].shift),xx=Ae("".split),Ln=Ae("".slice),_a=Ae("".toLowerCase),Tx=Ae([].unshift),Ex="Invalid authority",Ou="Invalid scheme",Vt="Invalid host",Oh="Invalid port",Wh=/[a-z]/i,Rx=/[\d+-.a-z]/i,Vu=/\d/,Fx=/^0x/i,Ox=/^[0-7]+$/,Mx=/^\d+$/,Gh=/^[\da-f]+$/i,Lx=/[\0\t\n\r #%/:<>?@[\\\]^|]/,Bx=/[\0\t\n\r #/:<>?@[\\\]^|]/,Ux=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,Dx=/[\t\n\r]/g,Ce,_x=function(r){var e=xx(r,"."),t,i,n,o,a,c,p;if(e.length&&e[e.length-1]==""&&e.length--,t=e.length,t>4)return r;for(i=[],n=0;n<t;n++){if(o=e[n],o=="")return r;if(a=10,o.length>1&&we(o,0)=="0"&&(a=je(Fx,o)?16:8,o=Ln(o,a==8?1:2)),o==="")c=0;else{if(!je(a==10?Mx:a==8?Ox:Gh,o))return r;c=Da(o,a)}Mr(i,c)}for(n=0;n<t;n++)if(c=i[n],n==t-1){if(c>=Rh(256,5-t))return null}else if(c>255)return null;for(p=wx(i),n=0;n<i.length;n++)p+=i[n]*Rh(256,3-n);return p},Nx=function(r){var e=[0,0,0,0,0,0,0,0],t=0,i=null,n=0,o,a,c,p,g,y,m,h=function(){return we(r,n)};if(h()==":"){if(we(r,1)!=":")return;n+=2,t++,i=t}for(;h();){if(t==8)return;if(h()==":"){if(i!==null)return;n++,t++,i=t;continue}for(o=a=0;a<4&&je(Gh,h());)o=o*16+Da(h(),16),n++,a++;if(h()=="."){if(a==0||(n-=a,t>6))return;for(c=0;h();){if(p=null,c>0)if(h()=="."&&c<4)n++;else return;if(!je(Vu,h()))return;for(;je(Vu,h());){if(g=Da(h(),10),p===null)p=g;else{if(p==0)return;p=p*10+g}if(p>255)return;n++}e[t]=e[t]*256+p,c++,(c==2||c==4)&&t++}if(c!=4)return;break}else if(h()==":"){if(n++,!h())return}else if(h())return;e[t++]=o}if(i!==null)for(y=t-i,t=7;t!=0&&y>0;)m=e[t],e[t--]=e[i+y-1],e[i+--y]=m;else if(t!=8)return;return e},qx=function(r){for(var e=null,t=1,i=null,n=0,o=0;o<8;o++)r[o]!==0?(n>t&&(e=i,t=n),i=null,n=0):(i===null&&(i=o),++n);return n>t&&(e=i,t=n),e},Fn=function(r){var e,t,i,n;if(typeof r=="number"){for(e=[],t=0;t<4;t++)Tx(e,r%256),r=Cx(r/256);return On(e,".")}else if(typeof r=="object"){for(e="",i=qx(r),t=0;t<8;t++)n&&r[t]===0||(n&&(n=!1),i===t?(e+=t?":":"::",n=!0):(e+=Ix(r[t],16),t<7&&(e+=":")));return"["+e+"]"}return r},La={},zh=Ku({},La,{" ":1,'"':1,"<":1,">":1,"`":1}),Vh=Ku({},zh,{"#":1,"?":1,"{":1,"}":1}),Mu=Ku({},Vh,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),gt=function(r,e){var t=hx(r,0);return t>32&&t<127&&!Gu(e,r)?r:encodeURIComponent(r)},Fa={ftp:21,file:null,http:80,https:443,ws:80,wss:443},Mn=function(r,e){var t;return r.length==2&&je(Wh,we(r,0))&&((t=we(r,1))==":"||!e&&t=="|")},Mh=function(r){var e;return r.length>1&&Mn(Ln(r,0,2))&&(r.length==2||(e=we(r,2))==="/"||e==="\\"||e==="?"||e==="#")},Hx=function(r){return r==="."||_a(r)==="%2e"},jx=function(r){return r=_a(r),r===".."||r==="%2e."||r===".%2e"||r==="%2e%2e"},Lu={},Lh={},Bu={},Bh={},Uh={},Uu={},Dh={},_h={},Oa={},Ma={},Du={},_u={},Nu={},qu={},Nh={},Hu={},Or={},Ke={},qh={},Jt={},et={},Xu=function(r,e,t){var i=tt(r),n,o,a;if(e){if(o=this.parse(i),o)throw zu(o);this.searchParams=null}else{if(t!==void 0&&(n=new Xu(t,!0)),o=this.parse(i,null,n),o)throw zu(o);a=Sx(new kx),a.bindURL(this),this.searchParams=a}};Xu.prototype={type:"URL",parse:function(r,e,t){var i=this,n=e||Lu,o=0,a="",c=!1,p=!1,g=!1,y,m,h,k;for(r=tt(r),e||(i.scheme="",i.username="",i.password="",i.host=null,i.port=null,i.path=[],i.query=null,i.fragment=null,i.cannotBeABaseURL=!1,r=Fh(r,Ux,"")),r=Fh(r,Dx,""),y=Fr(r);o<=y.length;){switch(m=y[o],n){case Lu:if(m&&je(Wh,m))a+=_a(m),n=Lh;else{if(e)return Ou;n=Bu;continue}break;case Lh:if(m&&(je(Rx,m)||m=="+"||m=="-"||m=="."))a+=_a(m);else if(m==":"){if(e&&(i.isSpecial()!=Gu(Fa,a)||a=="file"&&(i.includesCredentials()||i.port!==null)||i.scheme=="file"&&!i.host))return;if(i.scheme=a,e){i.isSpecial()&&Fa[i.scheme]==i.port&&(i.port=null);return}a="",i.scheme=="file"?n=qu:i.isSpecial()&&t&&t.scheme==i.scheme?n=Bh:i.isSpecial()?n=_h:y[o+1]=="/"?(n=Uh,o++):(i.cannotBeABaseURL=!0,Mr(i.path,""),n=qh)}else{if(e)return Ou;a="",n=Bu,o=0;continue}break;case Bu:if(!t||t.cannotBeABaseURL&&m!="#")return Ou;if(t.cannotBeABaseURL&&m=="#"){i.scheme=t.scheme,i.path=He(t.path),i.query=t.query,i.fragment="",i.cannotBeABaseURL=!0,n=et;break}n=t.scheme=="file"?qu:Uu;continue;case Bh:if(m=="/"&&y[o+1]=="/")n=Oa,o++;else{n=Uu;continue}break;case Uh:if(m=="/"){n=Ma;break}else{n=Ke;continue}case Uu:if(i.scheme=t.scheme,m==Ce)i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.query=t.query;else if(m=="/"||m=="\\"&&i.isSpecial())n=Dh;else if(m=="?")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.query="",n=Jt;else if(m=="#")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.query=t.query,i.fragment="",n=et;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.path.length--,n=Ke;continue}break;case Dh:if(i.isSpecial()&&(m=="/"||m=="\\"))n=Oa;else if(m=="/")n=Ma;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,n=Ke;continue}break;case _h:if(n=Oa,m!="/"||we(a,o+1)!="/")continue;o++;break;case Oa:if(m!="/"&&m!="\\"){n=Ma;continue}break;case Ma:if(m=="@"){c&&(a="%40"+a),c=!0,h=Fr(a);for(var C=0;C<h.length;C++){var w=h[C];if(w==":"&&!g){g=!0;continue}var A=gt(w,Mu);g?i.password+=A:i.username+=A}a=""}else if(m==Ce||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(c&&a=="")return Ex;o-=Fr(a).length+1,a="",n=Du}else a+=m;break;case Du:case _u:if(e&&i.scheme=="file"){n=Hu;continue}else if(m==":"&&!p){if(a=="")return Vt;if(k=i.parseHost(a),k)return k;if(a="",n=Nu,e==_u)return}else if(m==Ce||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(i.isSpecial()&&a=="")return Vt;if(e&&a==""&&(i.includesCredentials()||i.port!==null))return;if(k=i.parseHost(a),k)return k;if(a="",n=Or,e)return;continue}else m=="["?p=!0:m=="]"&&(p=!1),a+=m;break;case Nu:if(je(Vu,m))a+=m;else if(m==Ce||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()||e){if(a!=""){var U=Da(a,10);if(U>65535)return Oh;i.port=i.isSpecial()&&U===Fa[i.scheme]?null:U,a=""}if(e)return;n=Or;continue}else return Oh;break;case qu:if(i.scheme="file",m=="/"||m=="\\")n=Nh;else if(t&&t.scheme=="file")if(m==Ce)i.host=t.host,i.path=He(t.path),i.query=t.query;else if(m=="?")i.host=t.host,i.path=He(t.path),i.query="",n=Jt;else if(m=="#")i.host=t.host,i.path=He(t.path),i.query=t.query,i.fragment="",n=et;else{Mh(On(He(y,o),""))||(i.host=t.host,i.path=He(t.path),i.shortenPath()),n=Ke;continue}else{n=Ke;continue}break;case Nh:if(m=="/"||m=="\\"){n=Hu;break}t&&t.scheme=="file"&&!Mh(On(He(y,o),""))&&(Mn(t.path[0],!0)?Mr(i.path,t.path[0]):i.host=t.host),n=Ke;continue;case Hu:if(m==Ce||m=="/"||m=="\\"||m=="?"||m=="#"){if(!e&&Mn(a))n=Ke;else if(a==""){if(i.host="",e)return;n=Or}else{if(k=i.parseHost(a),k)return k;if(i.host=="localhost"&&(i.host=""),e)return;a="",n=Or}continue}else a+=m;break;case Or:if(i.isSpecial()){if(n=Ke,m!="/"&&m!="\\")continue}else if(!e&&m=="?")i.query="",n=Jt;else if(!e&&m=="#")i.fragment="",n=et;else if(m!=Ce&&(n=Ke,m!="/"))continue;break;case Ke:if(m==Ce||m=="/"||m=="\\"&&i.isSpecial()||!e&&(m=="?"||m=="#")){if(jx(a)?(i.shortenPath(),m!="/"&&!(m=="\\"&&i.isSpecial())&&Mr(i.path,"")):Hx(a)?m!="/"&&!(m=="\\"&&i.isSpecial())&&Mr(i.path,""):(i.scheme=="file"&&!i.path.length&&Mn(a)&&(i.host&&(i.host=""),a=we(a,0)+":"),Mr(i.path,a)),a="",i.scheme=="file"&&(m==Ce||m=="?"||m=="#"))for(;i.path.length>1&&i.path[0]==="";)Ax(i.path);m=="?"?(i.query="",n=Jt):m=="#"&&(i.fragment="",n=et)}else a+=gt(m,Vh);break;case qh:m=="?"?(i.query="",n=Jt):m=="#"?(i.fragment="",n=et):m!=Ce&&(i.path[0]+=gt(m,La));break;case Jt:!e&&m=="#"?(i.fragment="",n=et):m!=Ce&&(m=="'"&&i.isSpecial()?i.query+="%27":m=="#"?i.query+="%23":i.query+=gt(m,La));break;case et:m!=Ce&&(i.fragment+=gt(m,zh));break}o++}},parseHost:function(r){var e,t,i;if(we(r,0)=="["){if(we(r,r.length-1)!="]"||(e=Nx(Ln(r,1,-1)),!e))return Vt;this.host=e}else if(this.isSpecial()){if(r=vx(r),je(Lx,r)||(e=_x(r),e===null))return Vt;this.host=e}else{if(je(Bx,r))return Vt;for(e="",t=Fr(r),i=0;i<t.length;i++)e+=gt(t[i],La);this.host=e}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||this.scheme=="file"},includesCredentials:function(){return this.username!=""||this.password!=""},isSpecial:function(){return Gu(Fa,this.scheme)},shortenPath:function(){var r=this.path,e=r.length;e&&(this.scheme!="file"||e!=1||!Mn(r[0],!0))&&r.length--},serialize:function(){var r=this,e=r.scheme,t=r.username,i=r.password,n=r.host,o=r.port,a=r.path,c=r.query,p=r.fragment,g=e+":";return n!==null?(g+="//",r.includesCredentials()&&(g+=t+(i?":"+i:"")+"@"),g+=Fn(n),o!==null&&(g+=":"+o)):e=="file"&&(g+="//"),g+=r.cannotBeABaseURL?a[0]:a.length?"/"+On(a,"/"):"",c!==null&&(g+="?"+c),p!==null&&(g+="#"+p),g},setHref:function(r){var e=this.parse(r);if(e)throw zu(e);this.searchParams.update()},getOrigin:function(){var r=this.scheme,e=this.port;if(r=="blob")try{return new Lr(r.path[0]).origin}catch{return"null"}return r=="file"||!this.isSpecial()?"null":r+"://"+Fn(this.host)+(e!==null?":"+e:"")},getProtocol:function(){return this.scheme+":"},setProtocol:function(r){this.parse(tt(r)+":",Lu)},getUsername:function(){return this.username},setUsername:function(r){var e=Fr(tt(r));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var t=0;t<e.length;t++)this.username+=gt(e[t],Mu)}},getPassword:function(){return this.password},setPassword:function(r){var e=Fr(tt(r));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var t=0;t<e.length;t++)this.password+=gt(e[t],Mu)}},getHost:function(){var r=this.host,e=this.port;return r===null?"":e===null?Fn(r):Fn(r)+":"+e},setHost:function(r){this.cannotBeABaseURL||this.parse(r,Du)},getHostname:function(){var r=this.host;return r===null?"":Fn(r)},setHostname:function(r){this.cannotBeABaseURL||this.parse(r,_u)},getPort:function(){var r=this.port;return r===null?"":tt(r)},setPort:function(r){this.cannotHaveUsernamePasswordPort()||(r=tt(r),r==""?this.port=null:this.parse(r,Nu))},getPathname:function(){var r=this.path;return this.cannotBeABaseURL?r[0]:r.length?"/"+On(r,"/"):""},setPathname:function(r){this.cannotBeABaseURL||(this.path=[],this.parse(r,Or))},getSearch:function(){var r=this.query;return r?"?"+r:""},setSearch:function(r){r=tt(r),r==""?this.query=null:(we(r,0)=="?"&&(r=Ln(r,1)),this.query="",this.parse(r,Jt)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var r=this.fragment;return r?"#"+r:""},setHash:function(r){if(r=tt(r),r==""){this.fragment=null;return}we(r,0)=="#"&&(r=Ln(r,1)),this.fragment="",this.parse(r,et)},update:function(){this.query=this.searchParams.serialize()||null}};var Lr=function(e){var t=fx(this,Y),i=bx(arguments.length,1)>1?arguments[1]:void 0,n=Px(t,new Xu(e,!1,i));Ju||(t.href=n.serialize(),t.origin=n.getOrigin(),t.protocol=n.getProtocol(),t.username=n.getUsername(),t.password=n.getPassword(),t.host=n.getHost(),t.hostname=n.getHostname(),t.port=n.getPort(),t.pathname=n.getPathname(),t.search=n.getSearch(),t.searchParams=n.getSearchParams(),t.hash=n.getHash())},Y=Lr.prototype,Ie=function(r,e){return{get:function(){return Ua(this)[r]()},set:e&&function(t){return Ua(this)[e](t)},configurable:!0,enumerable:!0}};Ju&&(Se(Y,"href",Ie("serialize","setHref")),Se(Y,"origin",Ie("getOrigin")),Se(Y,"protocol",Ie("getProtocol","setProtocol")),Se(Y,"username",Ie("getUsername","setUsername")),Se(Y,"password",Ie("getPassword","setPassword")),Se(Y,"host",Ie("getHost","setHost")),Se(Y,"hostname",Ie("getHostname","setHostname")),Se(Y,"port",Ie("getPort","setPort")),Se(Y,"pathname",Ie("getPathname","setPathname")),Se(Y,"search",Ie("getSearch","setSearch")),Se(Y,"searchParams",Ie("getSearchParams")),Se(Y,"hash",Ie("getHash","setHash")));Ba(Y,"toJSON",function(){return Ua(this).serialize()},{enumerable:!0});Ba(Y,"toString",function(){return Ua(this).serialize()},{enumerable:!0});Rn&&(ju=Rn.createObjectURL,Wu=Rn.revokeObjectURL,ju&&Ba(Lr,"createObjectURL",Eh(ju,Rn)),Wu&&Ba(Lr,"revokeObjectURL",Eh(Wu,Rn)));var ju,Wu;yx(Lr,"URL");px({global:!0,constructor:!0,forced:!gx,sham:!Ju},{URL:Lr})});var $h=v(()=>{Jh()});var Kh=v(()=>{"use strict";var Wx=Pn(),Gx=_e();Wx({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return Gx(URL.prototype.toString,this)}})});var Xh=v(()=>{Fu()});var Yh=v((oM,Zh)=>{var zx=ue();Zh.exports=zx});var ev=v((aM,Qh)=>{$h();Kh();Xh();var Vx=Yh();Qh.exports=Vx.URL});var Sc=v((IU,ny)=>{var aT=Object.prototype.toString;ny.exports=function(e){if(e===void 0)return"undefined";if(e===null)return"null";var t=typeof e;if(t==="boolean")return"boolean";if(t==="string")return"string";if(t==="number")return"number";if(t==="symbol")return"symbol";if(t==="function")return mT(e)?"generatorfunction":"function";if(dT(e))return"array";if(fT(e))return"buffer";if(gT(e))return"arguments";if(uT(e))return"date";if(lT(e))return"error";if(cT(e))return"regexp";switch(iy(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(pT(e))return"generator";switch(t=aT.call(e),t){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return t.slice(8,-1).toLowerCase().replace(/\s/g,"")};function iy(r){return typeof r.constructor=="function"?r.constructor.name:null}function dT(r){return Array.isArray?Array.isArray(r):r instanceof Array}function lT(r){return r instanceof Error||typeof r.message=="string"&&r.constructor&&typeof r.constructor.stackTraceLimit=="number"}function uT(r){return r instanceof Date?!0:typeof r.toDateString=="function"&&typeof r.getDate=="function"&&typeof r.setDate=="function"}function cT(r){return r instanceof RegExp?!0:typeof r.flags=="string"&&typeof r.ignoreCase=="boolean"&&typeof r.multiline=="boolean"&&typeof r.global=="boolean"}function mT(r,e){return iy(r)==="GeneratorFunction"}function pT(r){return typeof r.throw=="function"&&typeof r.return=="function"&&typeof r.next=="function"}function gT(r){try{if(typeof r.length=="number"&&typeof r.callee=="function")return!0}catch(e){if(e.message.indexOf("callee")!==-1)return!0}return!1}function fT(r){return r.constructor&&typeof r.constructor.isBuffer=="function"?r.constructor.isBuffer(r):!1}});var ay=v((wU,oy)=>{"use strict";var sy=Symbol.prototype.valueOf,hT=Sc();function vT(r,e){switch(hT(r)){case"array":return r.slice();case"object":return Object.assign({},r);case"date":return new r.constructor(Number(r));case"map":return new Map(r);case"set":return new Set(r);case"buffer":return kT(r);case"symbol":return ST(r);case"arraybuffer":return bT(r);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return PT(r);case"regexp":return yT(r);case"error":return Object.create(r);default:return r}}function yT(r){let e=r.flags!==void 0?r.flags:/\w+$/.exec(r)||void 0,t=new r.constructor(r.source,e);return t.lastIndex=r.lastIndex,t}function bT(r){let e=new r.constructor(r.byteLength);return new Uint8Array(e).set(new Uint8Array(r)),e}function PT(r,e){return new r.constructor(r.buffer,r.byteOffset,r.length)}function kT(r){let e=r.length,t=Buffer.allocUnsafe?Buffer.allocUnsafe(e):Buffer.from(e);return r.copy(t),t}function ST(r){return sy?Object(sy.call(r)):{}}oy.exports=vT});var ly=v((AU,dy)=>{"use strict";dy.exports=function(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1}});var my=v((xU,cy)=>{"use strict";var CT=ly();function uy(r){return CT(r)===!0&&Object.prototype.toString.call(r)==="[object Object]"}cy.exports=function(e){var t,i;return!(uy(e)===!1||(t=e.constructor,typeof t!="function")||(i=t.prototype,uy(i)===!1)||i.hasOwnProperty("isPrototypeOf")===!1)}});var gy=v((TU,py)=>{"use strict";var IT=ay(),wT=Sc(),AT=my();function Cc(r,e){switch(wT(r)){case"object":return xT(r,e);case"array":return TT(r,e);default:return IT(r)}}function xT(r,e){if(typeof e=="function")return e(r);if(e||AT(r)){let t=new r.constructor;for(let i in r)t[i]=Cc(r[i],e);return t}return r}function TT(r,e){let t=new r.constructor(r.length);for(let i=0;i<r.length;i++)t[i]=Cc(r[i],e);return t}py.exports=Cc});var Ky=v(($n,ii)=>{var ET=200,Lc="__lodash_hash_undefined__",fd=1,Ay=2,xy=9007199254740991,dd="[object Arguments]",xc="[object Array]",RT="[object AsyncFunction]",Ty="[object Boolean]",Ey="[object Date]",Ry="[object Error]",Fy="[object Function]",FT="[object GeneratorFunction]",ld="[object Map]",Oy="[object Number]",OT="[object Null]",ri="[object Object]",fy="[object Promise]",MT="[object Proxy]",My="[object RegExp]",ud="[object Set]",Ly="[object String]",LT="[object Symbol]",BT="[object Undefined]",Tc="[object WeakMap]",By="[object ArrayBuffer]",cd="[object DataView]",UT="[object Float32Array]",DT="[object Float64Array]",_T="[object Int8Array]",NT="[object Int16Array]",qT="[object Int32Array]",HT="[object Uint8Array]",jT="[object Uint8ClampedArray]",WT="[object Uint16Array]",GT="[object Uint32Array]",zT=/[\\^$.*+?()[\]{}|]/g,VT=/^\[object .+?Constructor\]$/,JT=/^(?:0|[1-9]\d*)$/,q={};q[UT]=q[DT]=q[_T]=q[NT]=q[qT]=q[HT]=q[jT]=q[WT]=q[GT]=!0;q[dd]=q[xc]=q[By]=q[Ty]=q[cd]=q[Ey]=q[Ry]=q[Fy]=q[ld]=q[Oy]=q[ri]=q[My]=q[ud]=q[Ly]=q[Tc]=!1;var Uy=typeof global=="object"&&global&&global.Object===Object&&global,$T=typeof self=="object"&&self&&self.Object===Object&&self,st=Uy||$T||Function("return this")(),Dy=typeof $n=="object"&&$n&&!$n.nodeType&&$n,hy=Dy&&typeof ii=="object"&&ii&&!ii.nodeType&&ii,_y=hy&&hy.exports===Dy,Ic=_y&&Uy.process,vy=function(){try{return Ic&&Ic.binding&&Ic.binding("util")}catch{}}(),yy=vy&&vy.isTypedArray;function KT(r,e){for(var t=-1,i=r==null?0:r.length,n=0,o=[];++t<i;){var a=r[t];e(a,t,r)&&(o[n++]=a)}return o}function XT(r,e){for(var t=-1,i=e.length,n=r.length;++t<i;)r[n+t]=e[t];return r}function ZT(r,e){for(var t=-1,i=r==null?0:r.length;++t<i;)if(e(r[t],t,r))return!0;return!1}function YT(r,e){for(var t=-1,i=Array(r);++t<r;)i[t]=e(t);return i}function QT(r){return function(e){return r(e)}}function eE(r,e){return r.has(e)}function tE(r,e){return r?.[e]}function rE(r){var e=-1,t=Array(r.size);return r.forEach(function(i,n){t[++e]=[n,i]}),t}function iE(r,e){return function(t){return r(e(t))}}function nE(r){var e=-1,t=Array(r.size);return r.forEach(function(i){t[++e]=i}),t}var sE=Array.prototype,oE=Function.prototype,hd=Object.prototype,wc=st["__core-js_shared__"],Ny=oE.toString,Xe=hd.hasOwnProperty,by=function(){var r=/[^.]+$/.exec(wc&&wc.keys&&wc.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}(),qy=hd.toString,aE=RegExp("^"+Ny.call(Xe).replace(zT,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Py=_y?st.Buffer:void 0,md=st.Symbol,ky=st.Uint8Array,Hy=hd.propertyIsEnumerable,dE=sE.splice,rr=md?md.toStringTag:void 0,Sy=Object.getOwnPropertySymbols,lE=Py?Py.isBuffer:void 0,uE=iE(Object.keys,Object),Ec=ni(st,"DataView"),Kn=ni(st,"Map"),Rc=ni(st,"Promise"),Fc=ni(st,"Set"),Oc=ni(st,"WeakMap"),Xn=ni(Object,"create"),cE=sr(Ec),mE=sr(Kn),pE=sr(Rc),gE=sr(Fc),fE=sr(Oc),Cy=md?md.prototype:void 0,Ac=Cy?Cy.valueOf:void 0;function ir(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}function hE(){this.__data__=Xn?Xn(null):{},this.size=0}function vE(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}function yE(r){var e=this.__data__;if(Xn){var t=e[r];return t===Lc?void 0:t}return Xe.call(e,r)?e[r]:void 0}function bE(r){var e=this.__data__;return Xn?e[r]!==void 0:Xe.call(e,r)}function PE(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=Xn&&e===void 0?Lc:e,this}ir.prototype.clear=hE;ir.prototype.delete=vE;ir.prototype.get=yE;ir.prototype.has=bE;ir.prototype.set=PE;function ot(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}function kE(){this.__data__=[],this.size=0}function SE(r){var e=this.__data__,t=vd(e,r);if(t<0)return!1;var i=e.length-1;return t==i?e.pop():dE.call(e,t,1),--this.size,!0}function CE(r){var e=this.__data__,t=vd(e,r);return t<0?void 0:e[t][1]}function IE(r){return vd(this.__data__,r)>-1}function wE(r,e){var t=this.__data__,i=vd(t,r);return i<0?(++this.size,t.push([r,e])):t[i][1]=e,this}ot.prototype.clear=kE;ot.prototype.delete=SE;ot.prototype.get=CE;ot.prototype.has=IE;ot.prototype.set=wE;function nr(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}function AE(){this.size=0,this.__data__={hash:new ir,map:new(Kn||ot),string:new ir}}function xE(r){var e=yd(this,r).delete(r);return this.size-=e?1:0,e}function TE(r){return yd(this,r).get(r)}function EE(r){return yd(this,r).has(r)}function RE(r,e){var t=yd(this,r),i=t.size;return t.set(r,e),this.size+=t.size==i?0:1,this}nr.prototype.clear=AE;nr.prototype.delete=xE;nr.prototype.get=TE;nr.prototype.has=EE;nr.prototype.set=RE;function pd(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new nr;++e<t;)this.add(r[e])}function FE(r){return this.__data__.set(r,Lc),this}function OE(r){return this.__data__.has(r)}pd.prototype.add=pd.prototype.push=FE;pd.prototype.has=OE;function It(r){var e=this.__data__=new ot(r);this.size=e.size}function ME(){this.__data__=new ot,this.size=0}function LE(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}function BE(r){return this.__data__.get(r)}function UE(r){return this.__data__.has(r)}function DE(r,e){var t=this.__data__;if(t instanceof ot){var i=t.__data__;if(!Kn||i.length<ET-1)return i.push([r,e]),this.size=++t.size,this;t=this.__data__=new nr(i)}return t.set(r,e),this.size=t.size,this}It.prototype.clear=ME;It.prototype.delete=LE;It.prototype.get=BE;It.prototype.has=UE;It.prototype.set=DE;function _E(r,e){var t=gd(r),i=!t&&QE(r),n=!t&&!i&&Mc(r),o=!t&&!i&&!n&&$y(r),a=t||i||n||o,c=a?YT(r.length,String):[],p=c.length;for(var g in r)(e||Xe.call(r,g))&&!(a&&(g=="length"||n&&(g=="offset"||g=="parent")||o&&(g=="buffer"||g=="byteLength"||g=="byteOffset")||$E(g,p)))&&c.push(g);return c}function vd(r,e){for(var t=r.length;t--;)if(Gy(r[t][0],e))return t;return-1}function NE(r,e,t){var i=e(r);return gd(r)?i:XT(i,t(r))}function Yn(r){return r==null?r===void 0?BT:OT:rr&&rr in Object(r)?VE(r):YE(r)}function Iy(r){return Zn(r)&&Yn(r)==dd}function jy(r,e,t,i,n){return r===e?!0:r==null||e==null||!Zn(r)&&!Zn(e)?r!==r&&e!==e:qE(r,e,t,i,jy,n)}function qE(r,e,t,i,n,o){var a=gd(r),c=gd(e),p=a?xc:Ct(r),g=c?xc:Ct(e);p=p==dd?ri:p,g=g==dd?ri:g;var y=p==ri,m=g==ri,h=p==g;if(h&&Mc(r)){if(!Mc(e))return!1;a=!0,y=!1}if(h&&!y)return o||(o=new It),a||$y(r)?Wy(r,e,t,i,n,o):GE(r,e,p,t,i,n,o);if(!(t&fd)){var k=y&&Xe.call(r,"__wrapped__"),C=m&&Xe.call(e,"__wrapped__");if(k||C){var w=k?r.value():r,A=C?e.value():e;return o||(o=new It),n(w,A,t,i,o)}}return h?(o||(o=new It),zE(r,e,t,i,n,o)):!1}function HE(r){if(!Jy(r)||XE(r))return!1;var e=zy(r)?aE:VT;return e.test(sr(r))}function jE(r){return Zn(r)&&Vy(r.length)&&!!q[Yn(r)]}function WE(r){if(!ZE(r))return uE(r);var e=[];for(var t in Object(r))Xe.call(r,t)&&t!="constructor"&&e.push(t);return e}function Wy(r,e,t,i,n,o){var a=t&fd,c=r.length,p=e.length;if(c!=p&&!(a&&p>c))return!1;var g=o.get(r);if(g&&o.get(e))return g==e;var y=-1,m=!0,h=t&Ay?new pd:void 0;for(o.set(r,e),o.set(e,r);++y<c;){var k=r[y],C=e[y];if(i)var w=a?i(C,k,y,e,r,o):i(k,C,y,r,e,o);if(w!==void 0){if(w)continue;m=!1;break}if(h){if(!ZT(e,function(A,U){if(!eE(h,U)&&(k===A||n(k,A,t,i,o)))return h.push(U)})){m=!1;break}}else if(!(k===C||n(k,C,t,i,o))){m=!1;break}}return o.delete(r),o.delete(e),m}function GE(r,e,t,i,n,o,a){switch(t){case cd:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case By:return!(r.byteLength!=e.byteLength||!o(new ky(r),new ky(e)));case Ty:case Ey:case Oy:return Gy(+r,+e);case Ry:return r.name==e.name&&r.message==e.message;case My:case Ly:return r==e+"";case ld:var c=rE;case ud:var p=i&fd;if(c||(c=nE),r.size!=e.size&&!p)return!1;var g=a.get(r);if(g)return g==e;i|=Ay,a.set(r,e);var y=Wy(c(r),c(e),i,n,o,a);return a.delete(r),y;case LT:if(Ac)return Ac.call(r)==Ac.call(e)}return!1}function zE(r,e,t,i,n,o){var a=t&fd,c=wy(r),p=c.length,g=wy(e),y=g.length;if(p!=y&&!a)return!1;for(var m=p;m--;){var h=c[m];if(!(a?h in e:Xe.call(e,h)))return!1}var k=o.get(r);if(k&&o.get(e))return k==e;var C=!0;o.set(r,e),o.set(e,r);for(var w=a;++m<p;){h=c[m];var A=r[h],U=e[h];if(i)var ze=a?i(U,A,h,e,r,o):i(A,U,h,r,e,o);if(!(ze===void 0?A===U||n(A,U,t,i,o):ze)){C=!1;break}w||(w=h=="constructor")}if(C&&!w){var pn=r.constructor,$o=e.constructor;pn!=$o&&"constructor"in r&&"constructor"in e&&!(typeof pn=="function"&&pn instanceof pn&&typeof $o=="function"&&$o instanceof $o)&&(C=!1)}return o.delete(r),o.delete(e),C}function wy(r){return NE(r,rR,JE)}function yd(r,e){var t=r.__data__;return KE(e)?t[typeof e=="string"?"string":"hash"]:t.map}function ni(r,e){var t=tE(r,e);return HE(t)?t:void 0}function VE(r){var e=Xe.call(r,rr),t=r[rr];try{r[rr]=void 0;var i=!0}catch{}var n=qy.call(r);return i&&(e?r[rr]=t:delete r[rr]),n}var JE=Sy?function(r){return r==null?[]:(r=Object(r),KT(Sy(r),function(e){return Hy.call(r,e)}))}:iR,Ct=Yn;(Ec&&Ct(new Ec(new ArrayBuffer(1)))!=cd||Kn&&Ct(new Kn)!=ld||Rc&&Ct(Rc.resolve())!=fy||Fc&&Ct(new Fc)!=ud||Oc&&Ct(new Oc)!=Tc)&&(Ct=function(r){var e=Yn(r),t=e==ri?r.constructor:void 0,i=t?sr(t):"";if(i)switch(i){case cE:return cd;case mE:return ld;case pE:return fy;case gE:return ud;case fE:return Tc}return e});function $E(r,e){return e=e??xy,!!e&&(typeof r=="number"||JT.test(r))&&r>-1&&r%1==0&&r<e}function KE(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}function XE(r){return!!by&&by in r}function ZE(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||hd;return r===t}function YE(r){return qy.call(r)}function sr(r){if(r!=null){try{return Ny.call(r)}catch{}try{return r+""}catch{}}return""}function Gy(r,e){return r===e||r!==r&&e!==e}var QE=Iy(function(){return arguments}())?Iy:function(r){return Zn(r)&&Xe.call(r,"callee")&&!Hy.call(r,"callee")},gd=Array.isArray;function eR(r){return r!=null&&Vy(r.length)&&!zy(r)}var Mc=lE||nR;function tR(r,e){return jy(r,e)}function zy(r){if(!Jy(r))return!1;var e=Yn(r);return e==Fy||e==FT||e==RT||e==MT}function Vy(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=xy}function Jy(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}function Zn(r){return r!=null&&typeof r=="object"}var $y=yy?QT(yy):jE;function rR(r){return eR(r)?_E(r):WE(r)}function iR(){return[]}function nR(){return!1}ii.exports=tR});var bP=v(Od=>{"use strict";Od.byteLength=wR;Od.toByteArray=xR;Od.fromByteArray=RR;var Ze=[],Le=[],IR=typeof Uint8Array<"u"?Uint8Array:Array,Yc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(gr=0,vP=Yc.length;gr<vP;++gr)Ze[gr]=Yc[gr],Le[Yc.charCodeAt(gr)]=gr;var gr,vP;Le["-".charCodeAt(0)]=62;Le["_".charCodeAt(0)]=63;function yP(r){var e=r.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=r.indexOf("=");t===-1&&(t=e);var i=t===e?0:4-t%4;return[t,i]}function wR(r){var e=yP(r),t=e[0],i=e[1];return(t+i)*3/4-i}function AR(r,e,t){return(e+t)*3/4-t}function xR(r){var e,t=yP(r),i=t[0],n=t[1],o=new IR(AR(r,i,n)),a=0,c=n>0?i-4:i,p;for(p=0;p<c;p+=4)e=Le[r.charCodeAt(p)]<<18|Le[r.charCodeAt(p+1)]<<12|Le[r.charCodeAt(p+2)]<<6|Le[r.charCodeAt(p+3)],o[a++]=e>>16&255,o[a++]=e>>8&255,o[a++]=e&255;return n===2&&(e=Le[r.charCodeAt(p)]<<2|Le[r.charCodeAt(p+1)]>>4,o[a++]=e&255),n===1&&(e=Le[r.charCodeAt(p)]<<10|Le[r.charCodeAt(p+1)]<<4|Le[r.charCodeAt(p+2)]>>2,o[a++]=e>>8&255,o[a++]=e&255),o}function TR(r){return Ze[r>>18&63]+Ze[r>>12&63]+Ze[r>>6&63]+Ze[r&63]}function ER(r,e,t){for(var i,n=[],o=e;o<t;o+=3)i=(r[o]<<16&16711680)+(r[o+1]<<8&65280)+(r[o+2]&255),n.push(TR(i));return n.join("")}function RR(r){for(var e,t=r.length,i=t%3,n=[],o=16383,a=0,c=t-i;a<c;a+=o)n.push(ER(r,a,a+o>c?c:a+o));return i===1?(e=r[t-1],n.push(Ze[e>>2]+Ze[e<<4&63]+"==")):i===2&&(e=(r[t-2]<<8)+r[t-1],n.push(Ze[e>>10]+Ze[e>>4&63]+Ze[e<<2&63]+"=")),n.join("")}});var yq=Ko(ev(),1);function f(r,e){if(r==null)throw Error(e??"Expected nonnullish value.")}function $t(r,e){if(!r)throw Error(e)}var Q;(function(r){r.COMMENT="t1_",r.ACCOUNT="t2_",r.LINK="t3_",r.MESSAGE="t4_",r.SUBREDDIT="t5_",r.AWARD="t6_"})(Q||(Q={}));function ft(r){return r.startsWith(Q.COMMENT)}function Na(r){return r.startsWith(Q.ACCOUNT)}function Kt(r){return r.startsWith(Q.LINK)}function tv(r){return r.startsWith(Q.MESSAGE)}function rv(r){return r.startsWith(Q.SUBREDDIT)}function iv(r){return r.startsWith(Q.AWARD)}function Jx(r){$t(ft(r),`Expected comment id to start with ${Q.COMMENT}, got ${r}}`)}function $x(r){$t(Na(r),`Expected account id to start with ${Q.ACCOUNT}, got ${r}}`)}function Kx(r){$t(Kt(r),`Expected link id to start with ${Q.LINK}, got ${r}}`)}function Xx(r){$t(tv(r),`Expected message id to start with ${Q.MESSAGE}, got ${r}}`)}function Zx(r){$t(rv(r),`Expected subreddit id to start with ${Q.SUBREDDIT}, got ${r}}`)}function Yx(r){$t(iv(r),`Expected award id to start with ${Q.AWARD}, got ${r}}`)}function Br(r){return Jx(r),r}function ee(r){return $x(r),r}function pe(r){return Kx(r),r}function Qx(r){return Xx(r),r}function xe(r){return Zx(r),r}function e0(r){return Yx(r),r}function ge(r){if(ft(r))return Br(r);if(Na(r))return ee(r);if(Kt(r))return pe(r);if(tv(r))return Qx(r);if(rv(r))return xe(r);if(iv(r))return e0(r);throw new Error(`Expected thing id to start with ${Object.values(Q).join(", ")} got ${r}}`)}function Zu(r){return ft(r)}import*as S from"@devvit/protos";var qa=class{constructor(e){}};var Yu=(t=>(t.Installation="installation",t.App="app",t))(Yu||{});function Xt(r,e=new Set){for(let t of r){if(t.type==="group"){Xt(t.fields,e);continue}let i=t.name;if(e.has(i))throw new Error(`Duplicate field name: ${i}`);e.add(i)}t0(r)}function t0(r){for(let e of r)if(e.type==="string"&&e.isSecret&&e.scope!=="app")throw`Invalid setting: only app settings can be secrets. Add "scope: SettingScope.App" to field "${e.name}"`}var ht=Object.freeze({INTERVAL:0,FORM:1,STATE:2,CHANNEL:3});var vM=["activity","add-emoji","add","add-media","add-to-feed","admin","align-center","align-left","align-right","all","appearance","approve","archived","aspect-ratio","aspect-rectangle","attach","audio","author","avatar-style","award","back","ban","best","binoculars","block","blockchain","bold","bot","boost","bounce","browse","browser","cake","calendar","camera","caret-down","caret-left","caret-right","caret-up","chat","chat-group","chat-new","checkbox-dismiss","checkbox","checkmark","chrome","clear","close","closed-captioning","code-block","code-inline","coins-color-old","coins-color","coins","collapse-left","collapse-right","collection","comment","comments","community","contest","controversial","crop","crosspost","crowd-control","custom-feed","customize","day","delete","discover","dismiss-all","distinguish","down-arrow","down","download","downvote","downvotes","drag","drugs","duplicate","edit","effect","embed","emoji","end-live-chat","error","expand-left","expand-right","external","feed-video","filter","format","forward","gif-post","heart","help","hide","history","home","hot","ignore-reports","image-post","inbox","info","invite","italic","join","joined","jump-down","jump-up","karma","keyboard","kick","language","leave","left","link","link-post","list-bulleted","list-numbered","live-chat","live","load","location","lock","logout","loop","mark-read","mask","media-gallery","meme","menu","message","mic","mic-mute","mod","mod-mail","mod-mode","mod-mute","mod-overflow","mod-queue","mod-unmute","music","new","night","notification","notification-frequent","notification-off","nsfw","nsfw-language","nsfw-violence","original","overflow-caret","overflow-horizontal","overflow-vertical","pause","payment","peace","pending-posts","phone","pin","planet","play","poll-post","popular","posts","powerup-color-outline","powerup-fill-color","powerup","predictions","premium","privacy","profile","qa","qr-code","quarantined","quote","r-slash","radio-button","raise-hand","random","ratings-everyone","ratings-mature","ratings-nsfw","ratings-violence","refresh","remove","reply","report","reverse","right","rising","rotate","rotate-image","rpan","rules","safari","save","saved","search","self","send","settings","share-android","share","share-ios","show","side-menu","skipback10","skipforward10","sort-az","sort","sort-price","sort-za","spam","spoiler","sponsored","star","statistics","status-live","sticker","strikethrough","subtract","superscript","swap-camera","swipe-back","swipe-down","swipe","swipe-up","table","tag","tap","telescope","text","text-post","text-size","toggle","tools","top","topic-activism","topic-addictionsupport","topic-advice","topic-animals","topic-anime","topic-art","topic-beauty","topic-business","topic-careers","topic-cars","topic-celebrity","topic-craftsdiy","topic-crypto","topic-culture","topic-diy","topic-entertainment","topic-ethics","topic-family","topic-fashion","topic","topic-fitness","topic-food","topic-funny","topic-gender","topic-health","topic-help","topic-history","topic-hobbies","topic-homegarden","topic-internet","topic-law","topic-learning","topic-lifestyle","topic-marketplace","topic-mature","topic-mensfashion","topic-menshealth","topic-meta","topic-military","topic-movies","topic-music","topic-news","topic-other","topic-outdoors","topic-pets","topic-photography","topic-places","topic-podcasts","topic-politics","topic-programming","topic-reading","topic-religion","topic-science","topic-sexorientation","topic-sports","topic-style","topic-tabletop","topic-technology","topic-television","topic-traumasupport","topic-travel","topic-videogaming","topic-womensfashion","topic-womenshealth","translate","trim","u-slash","unban","undo","unheart","unlock","unmod","unpin","unverified","up-arrow","up","upload","upvote","upvotes","user","user-note","users","vault","verified","video-camera","video-feed","video-live-1","video-live-fill-1","video-live","video-post","video-thread","video-transcription","view-card","view-classic","view-compact","view-grid","views","volume","volume-mute","wallet","warning","wiki-ban","wiki","wiki-unban","world"];import{AppSettingsDefinition as g0,GetFieldsResponse as f0}from"@devvit/protos";import{FormField as Zt,FormFieldType as Te}from"@devvit/protos";function rt(r){return r.map(e=>{switch(e.type){case"string":return r0(e);case"image":return i0(e);case"paragraph":return n0(e);case"number":return s0(e);case"select":return o0(e);case"boolean":return a0(e);case"group":return d0(e);default:throw new Error("Unknown field type.")}})}function r0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.STRING,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{stringConfig:{placeholder:r.placeholder}},fieldId:r.name,fieldType:Te.STRING,helpText:r.helpText,label:r.label,required:r.required,isSecret:r.isSecret})}function i0(r){return Zt.fromPartial({disabled:r.disabled,fieldId:r.name,fieldType:Te.IMAGE,helpText:r.helpText,label:r.label,required:r.required})}function n0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.PARAGRAPH,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{paragraphConfig:{lineHeight:r.lineHeight,placeholder:r.placeholder}},fieldId:r.name,fieldType:Te.PARAGRAPH,helpText:r.helpText,label:r.label,required:r.required})}function s0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.NUMBER,numberValue:r.defaultValue},disabled:r.disabled,fieldConfig:{numberConfig:{}},fieldId:r.name,fieldType:Te.NUMBER,helpText:r.helpText,label:r.label,required:r.required})}function o0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.SELECTION,selectionValue:{values:r.defaultValue}},disabled:r.disabled,fieldConfig:{selectionConfig:{choices:r.options,multiSelect:r.multiSelect}},fieldId:r.name,fieldType:Te.SELECTION,helpText:r.helpText,label:r.label,required:r.required})}function a0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.BOOLEAN,boolValue:r.defaultValue},disabled:r.disabled,fieldId:r.name,fieldType:Te.BOOLEAN,helpText:r.helpText,label:r.label})}function d0(r){return Zt.fromPartial({fieldType:Te.GROUP,fieldConfig:{groupConfig:{fields:rt(r.fields)}},label:r.label,helpText:r.helpText})}function M(r,e){u.prototype[r]=e}import{ValidateFormResponse as p0}from"@devvit/protos";import{RealtimeSubscriptionStatus as nv}from"@devvit/protos";var se=Object.freeze({Actor:"devvit-actor",App:"devvit-app",AppUser:"devvit-app-user",AppViewerAuthToken:"devvit-app-viewer-authorization",Caller:"devvit-caller",CallerPortID:"devvit-caller-port-id",Canary:"devvit-canary",DebugRenderXML:"devvit-debug-render-xml",GQLHost:"devvit-gql-host",Installation:"devvit-installation",ModPermissions:"devvit-mod-permissions",R2Auth:"devvit-sec-authorization",R2Host:"devvit-r2-host",RemoteHostname:"devvit-remote-hostname",SettingsUri:"devvit-sec-settings-uri",StreamID:"devvit-stream-id",Subreddit:"devvit-subreddit",TraceID:"devvit-trace-id",User:"devvit-user",Version:"devvit-version"});function sv(r){function e(t){let i=r.currentHookIndex,n=r.getCurrentComponentState(),o=r.getPreviousComponentState(),a=r.metadata[se.App]?.values[0];f(a,"useChannel - app is missing from Context");let c=r.metadata[se.Installation]?.values[0];f(c,"useChannel - installation is missing from Context");async function p(w){let A=n[i].channel;if(n[i].active)if(n[i].connected)await r.realtime.send(A,w);else throw Error(`Failed to send to channel '${A}'; it is active but not yet connected`);else throw Error(`Cannot send a message over inactive channel: ${A}`)}function g(){if(!n[i].active){let w=n[i].channel;n[i].active=!0,r.addRealtimeChannel(w)}}function y(){if(n[i].active){let w=n[i].channel;n[i].active=!1,r.removeRealtimeChannel(w)}}function m(w){return async()=>{let A;switch(w.status){case nv.REALTIME_SUBSCRIBED:n[i].connected=!0,A=t.onSubscribed?.();break;case nv.REALTIME_UNSUBSCRIBED:n[i].connected=!1,A=t.onUnsubscribed?.();break;default:A=t.onMessage(w.event?.data??{});break}await A}}let h={channel:`${a}:${c}:${t.name}`,active:!1,connected:!1,preventCallback:!1,type:ht.CHANNEL};i in n?h=n[i]:i in o&&(h=o[i]);let k=r.realtimeEvent;r.isInitialRender?h.active=!1:k&&h.active&&k.event.channel===h.channel&&(h.preventCallback||r.runHook(m(k)),r.rerenderIn(0)),n[i]=h,r.currentHookIndex++;let C=0;return h.active&&h.connected?C=2:h.active&&!h.connected?C=1:!h.active&&h.connected?C=3:!h.active&&!h.connected&&(C=4),{subscribe:g,unsubscribe:y,send:p,status:C}}return e}import{FormFieldType as Ur}from"@devvit/protos";function Qu(r){switch(r.fieldType){case Ur.STRING:return r.stringValue;case Ur.IMAGE:return r.stringValue;case Ur.PARAGRAPH:return r.stringValue;case Ur.NUMBER:return r.numberValue;case Ur.BOOLEAN:return r.boolValue;case Ur.SELECTION:return r.selectionValue?.values??[];default:return}}function vt(r){return Object.keys(r).reduce((e,t)=>(e[t]=Qu(r[t]),e),{})}function ov(r){function e(t,i){let n=r.currentHookIndex,o=r.getCurrentComponentKey(),a=r.getCurrentComponentState(),c=r.getPreviousComponentState(),p=`form.hook.${o}.${n}`,g={formKey:p,preventSubmit:!1,type:ht.FORM};n in a?g=a[n]:n in c&&(g=c[n]),a[n]=g,r.forms.set(p,t);let y=r.formSubmittedEvent;return y&&!g.preventSubmit&&y.formId===p&&r.runHook(async()=>{let m=i(vt(y.results));m&&m instanceof Promise&&await m,r.rerenderIn(0)}),a[n].preventSubmit=!1,r.currentHookIndex++,p}return e}function av(r){function e(t,i){let n=r.currentHookIndex,o=r.getCurrentComponentState(),a=r.getPreviousComponentState(),c=100,p=Math.max(c,i),g={lastRun:void 0,running:!1,preventCallback:!1,type:ht.INTERVAL};n in o?g=o[n]:n in a&&(g=a[n]);function y(){i<c&&console.error(`useInterval delay must be at least ${c}ms. Your interval of ${i}ms was automatically extended.`);for(let[h,k]of Object.entries(o))if(h!==n.toString()&&k?.type===ht.INTERVAL&&k?.running)throw new Error("Only one useInterval hook may be running at a time");o[n]={running:!0,lastRun:o[n]?.lastRun??Date.now(),preventCallback:!1,type:ht.INTERVAL},r.rerenderIn(p)}function m(){o[n].running=!1,o[n].lastRun=void 0,o[n].preventCallback=!1}return r.isEffectRender&&g.running&&(g.preventCallback||(g.lastRun===void 0||g.lastRun+p<Date.now())&&r.runHook(async()=>{let h=t();h&&h instanceof Promise&&await h,g.lastRun=Date.now()}),r.rerenderIn(p)),g.preventCallback=!1,o[n]=g,r.currentHookIndex++,{start:y,stop:m}}return e}function dv(r){function e(t){let i=r.currentHookIndex,n=r.getCurrentComponentState(),o=r.getPreviousComponentState();if(i in n)return r.currentHookIndex++,[n[i],a];if(r.isInitialRender||!(i in o)){let c=t instanceof Function?t():t;if(c instanceof Promise)throw(async()=>{n[i]=await c,r.currentHookIndex=0})();n[i]=c}else n[i]=o[i];function a(c){if(r.isRendering)throw new Error("Cannot call setState while rendering.");n[i]=c instanceof Function?c(n[i]):c}return r.currentHookIndex++,[n[i],a]}return e}var Dr,_r,Ha,lv,ja,uv,Nr=class{constructor(e,t){l(this,Ha);l(this,ja);l(this,Dr,void 0);l(this,_r,void 0);d(this,Dr,e),d(this,_r,t)}async getURL(e){return typeof e=="string"?b(this,Ha,lv).call(this,e):b(this,ja,uv).call(this,e)}};Dr=new WeakMap,_r=new WeakMap,Ha=new WeakSet,lv=async function(e){let t=globalThis?.devvit?.config?.assets?.[e];if(t)return t;let i=await s(this,_r).call(this).GetAssetURL({path:e},s(this,Dr));if(!i.found)throw new Error(`Could not load the URL for asset ${e}`);return i.url},ja=new WeakSet,uv=async function(e){let t={},i=[],n=globalThis?.devvit?.config?.assets;if(n)for(let a of e)n[a]?t[a]=n[a]:i.push(a);else i=e;if(i.length===0)return t;let o=await s(this,_r).call(this).GetAssetURLs({paths:i},s(this,Dr));i=[];for(let[a,c]of Object.entries(o.urls))c.found?t[a]=c.paths[0]:i.push(a);if(i.length>0)throw new Error(`The following assets were missing from the assets list: ${i.join(", ")}`);return t};var yt,qr=class{constructor(e){l(this,yt,void 0);d(this,yt,e)}async get(e){let{messages:t}=await u.kvStorePlugin.Get({keys:[e]},s(this,yt));try{if(t[e])return JSON.parse(t[e])}catch{return}}async put(e,t){let i={};i[e]=JSON.stringify(t),await u.kvStorePlugin.Put({messages:i},s(this,yt))}async delete(e){await u.kvStorePlugin.Del({keys:[e]},s(this,yt))}async list(){let{keys:e}=await u.kvStorePlugin.List({filter:"*"},s(this,yt));return e}};yt=new WeakMap;var Bn,Hr=class{constructor(e){l(this,Bn,void 0);d(this,Bn,e)}async upload(e){let t=await u.mediaPlugin.Upload(e,s(this,Bn));if(!t.mediaId)throw new Error("unable to get mediaId via uploads");return Promise.resolve({mediaId:t.mediaId,mediaUrl:t.mediaUrl})}};Bn=new WeakMap;var Un,jr=class{constructor(e){l(this,Un,void 0);d(this,Un,e)}async add(e){await u.modLogPlugin.Add(e,s(this,Un))}};Un=new WeakMap;var P,Dn,Gr=class{constructor(e){l(this,P,void 0);l(this,Dn,void 0);d(this,P,e),d(this,Dn,new Ga(e))}get modMail(){return s(this,Dn)}getSubredditById(e){return fe.getById(ge(e),s(this,P))}getSubredditByName(e){return fe.getByName(e,s(this,P))}addSubredditRemovalReason(e,t){return fe.addRemovalReason(e,t.title,t.message,s(this,P))}getSubredditRemovalReasons(e){return fe.getRemovalReasons(e,s(this,P))}getCurrentSubreddit(){return fe.getFromMetadata(s(this,P))}getPostById(e){return z.getById(ge(e),s(this,P))}submitPost(e){return z.submit(e,s(this,P))}crosspost(e){return z.crosspost(e,s(this,P))}getUserById(e){return I.getById(ge(e),s(this,P))}getCollectionById(e){return Wr.getCollectionById({collectionId:e},s(this,P))}createCollection(e){return Wr.create(e,s(this,P))}getCollectionsForSubreddit(e){return Wr.getCollectionsForSubreddit({subredditId:e},s(this,P))}getUserByUsername(e){return I.getByUsername(e,s(this,P))}getCurrentUser(){return I.getFromMetadata(se.User,s(this,P))}getAppUser(){return I.getFromMetadata(se.AppUser,s(this,P))}getSnoovatarUrl(e){return I.getSnoovatarUrl(e,s(this,P))}getCommentById(e){return K.getById(ge(e),s(this,P))}getComments(e){return K.getComments(e,s(this,P))}getCommentsByUser(e){return K.getCommentsByUser(e,s(this,P))}submitComment(e){return K.submit({...e,id:ge(e.id)},s(this,P))}getControversialPosts(e){return z.getControversialPosts(e,s(this,P))}getTopPosts(e){return z.getTopPosts(e,s(this,P))}getHotPosts(e){return z.getHotPosts(e,s(this,P))}getNewPosts(e){return z.getNewPosts(e,s(this,P))}getRisingPosts(e){return z.getRisingPosts(e,s(this,P))}getPostsByUser(e){return z.getPostsByUser(e,s(this,P))}getCommentsAndPostsByUser(e){return I.getOverview(e,s(this,P))}getModerationLog(e){return Wa(e,s(this,P))}getApprovedUsers(e){return I.getSubredditUsersByType({type:"contributors",...e},s(this,P))}approveUser(e,t){return I.createRelationship({username:e,subredditName:t,type:"contributor"},s(this,P))}removeUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"contributor"},s(this,P))}getWikiContributors(e){return I.getSubredditUsersByType({type:"wikicontributors",...e},s(this,P))}addWikiContributor(e,t){return I.createRelationship({username:e,subredditName:t,type:"wikicontributor"},s(this,P))}removeWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikicontributor"},s(this,P))}getBannedUsers(e){return I.getSubredditUsersByType({type:"banned",...e},s(this,P))}banUser(e){return I.createRelationship({username:e.username,subredditName:e.subredditName,type:"banned",banReason:e.reason,banMessage:e.message,note:e.note,duration:e.duration},s(this,P))}unbanUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"banned"},s(this,P))}getBannedWikiContributors(e){return I.getSubredditUsersByType({type:"wikibanned",...e},s(this,P))}banWikiContributor(e){return I.createRelationship({...e,type:"wikibanned"},s(this,P))}unbanWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikibanned"},s(this,P))}getModerators(e){return I.getSubredditUsersByType({type:"moderators",...e},s(this,P))}inviteModerator(e){return I.createRelationship({type:"moderator_invite",subredditName:e.subredditName,username:e.subredditName,permissions:e.permissions??[]},s(this,P))}revokeModeratorInvite(e,t){return I.removeRelationship({username:e,subredditName:t,type:"moderator_invite"},s(this,P))}removeModerator(e,t){return I.removeRelationship({type:"moderator",subredditName:t,username:e},s(this,P))}setModeratorPermissions(e,t,i){return I.setModeratorPermissions(e,t,i,s(this,P))}getMutedUsers(e){return I.getSubredditUsersByType({type:"muted",...e},s(this,P))}muteUser(e){return I.createRelationship({...e,type:"muted"},s(this,P))}unmuteUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"muted"},s(this,P))}getModNotes(e){return Ee.get(e,s(this,P))}deleteModNote(e){return Ee.delete(e,s(this,P))}addModNote(e){let t={...e,redditId:ge(e.redditId)};return Ee.add(t,s(this,P))}addRemovalNote(e){return Ee.addRemovalNote(e,s(this,P))}async sendPrivateMessage(e){return Yt.send(e,s(this,P))}async sendPrivateMessageAsSubreddit(e){return Yt.sendAsSubreddit(e,s(this,P))}async approve(e){if(ft(e))return K.approve(e,s(this,P));if(Kt(e))return z.approve(e,s(this,P));throw new Error("id must start with either t1_ or t3_")}async remove(e,t){if(ft(e))return K.remove(e,t,s(this,P));if(Kt(e))return z.remove(e,t,s(this,P));throw new Error("id must start with either t1_ or t3_")}async getPostFlairTemplates(e){return oe.getPostFlairTemplates(e,s(this,P))}async getUserFlairTemplates(e){return oe.getUserFlairTemplates(e,s(this,P))}async createPostFlairTemplate(e){return oe.createPostFlairTemplate(e,s(this,P))}async createUserFlairTemplate(e){return oe.createUserFlairTemplate(e,s(this,P))}async editFlairTemplate(e){return oe.editFlairTemplate(e,s(this,P))}async deleteFlairTemplate(e,t){return oe.deleteFlairTemplate(e,t,s(this,P))}async setUserFlair(e){return Re.setUserFlair(e,s(this,P))}async removeUserFlair(e,t){return Re.removeUserFlair(e,t,s(this,P))}async setPostFlair(e){return Re.setPostFlair(e,s(this,P))}async removePostFlair(e,t){return Re.removePostFlair(e,pe(t),s(this,P))}async getWidgets(e){return te.getWidgets(e,s(this,P))}async deleteWidget(e,t){return te.delete(e,t,s(this,P))}async addWidget(e){return te.add(e,s(this,P))}async reorderWidgets(e,t){return te.reorder(e,t,s(this,P))}async getWikiPage(e,t){return he.getPage(e,t,s(this,P))}async getWikiPages(e){return he.getPages(e,s(this,P))}async createWikiPage(e){return he.createPage(e,s(this,P))}async updateWikiPage(e){return he.updatePage(e,s(this,P))}getWikiPageRevisions(e){return he.getPageRevisions(e,s(this,P))}async revertWikiPage(e,t,i){return he.revertPage(e,t,i,s(this,P))}async getWikiPageSettings(e,t){return he.getPageSettings(e,t,s(this,P))}async updateWikiPageSettings(e){return he.updatePageSettings(e,s(this,P))}async addEditorToWikiPage(e,t,i){return he.addEditor(e,t,i,s(this,P))}async removeEditorFromWikiPage(e,t,i){return he.removeEditor(e,t,i,s(this,P))}getMessages(e){return Yt.getMessages(e,s(this,P))}markAllMessagesAsRead(){return Yt.markAllAsRead(s(this,P))}report(e,t){return u.redditAPIPlugins.LinksAndComments.Report({reason:t.reason,thingId:e.id,srName:e.subredditName,usernames:e.authorName},s(this,P))}getModQueue(e){return fe.aboutLocation({...e,location:"modqueue"},s(this,P))}getReports(e){return fe.aboutLocation({...e,location:"reports"},s(this,P))}getSpam(e){return fe.aboutLocation({...e,location:"spam"},s(this,P))}getUnmoderated(e){return fe.aboutLocation({...e,location:"unmoderated"},s(this,P))}getEdited(e){return fe.aboutLocation({...e,location:"edited"},s(this,P))}getVaultByAddress(e){return mv(e,s(this,P))}getVaultByUserId(e){return pv(ge(e),s(this,P))}};P=new WeakMap,Dn=new WeakMap;import{RedisKeyScope as ec}from"@devvit/protos";var E,R,F,tc=class{constructor(e,t,i){l(this,E,void 0);l(this,R,void 0);l(this,F,void 0);d(this,E,e),d(this,R,t),d(this,F,i)}async get(e){return await s(this,E).Get({key:e,transactionId:s(this,R)},s(this,F)),this}async multi(){await s(this,E).Multi(s(this,R),s(this,F))}async set(e,t,i){let n;return i?.expiration&&(n=Math.floor((i.expiration.getTime()-Date.now())/1e3),n<1&&(n=1)),await s(this,E).Set({key:e,value:t,nx:i?.nx===!0,xx:i?.xx===!0,expiration:n||0,transactionId:s(this,R)},s(this,F)),this}async del(...e){return await s(this,E).Del({keys:e,transactionId:s(this,R)},s(this,F)),this}async type(e){return await s(this,E).Type({key:e,transactionId:s(this,R)},s(this,F)),this}async exec(){let e=await s(this,E).Exec(s(this,R),s(this,F)),t=[];for(let i of e.response)i.members?t.push(i.members):i.nil!==void 0?t.push(null):i.num!==void 0?t.push(i.num):i.values!==void 0?t.push(i.values.values):i.str!==void 0&&t.push(i.str);return t}async discard(){await s(this,E).Discard(s(this,R),s(this,F))}async watch(...e){return await s(this,E).Watch({keys:e,transactionId:s(this,R)},s(this,F)),this}async unwatch(){return await s(this,E).Unwatch(s(this,R),s(this,F)),this}async getRange(e,t,i){return await s(this,E).GetRange({key:e,start:t,end:i,transactionId:s(this,R)},s(this,F)),this}async setRange(e,t,i){return await s(this,E).SetRange({key:e,offset:t,value:i,transactionId:s(this,R)},s(this,F)),this}async strlen(e){return await s(this,E).Strlen({key:e,transactionId:s(this,R)},s(this,F)),this}async mget(e){return await s(this,E).MGet({keys:e,transactionId:s(this,R)},s(this,F)),this}async mset(e){let t=Object.entries(e).map(([i,n])=>({key:i,value:n}));return await s(this,E).MSet({kv:t,transactionId:s(this,R)},s(this,F)),this}async incrBy(e,t){return await s(this,E).IncrBy({key:e,value:t,transactionId:s(this,R)},s(this,F)),this}async expire(e,t){return await s(this,E).Expire({key:e,seconds:t,transactionId:s(this,R)},s(this,F)),this}async expireTime(e){return await s(this,E).ExpireTime({key:e,transactionId:s(this,R)},s(this,F)),this}async zAdd(e,...t){return await s(this,E).ZAdd({key:e,members:t,transactionId:s(this,R)},s(this,F)),this}async zScore(e,t){return await s(this,E).ZScore({key:{key:e,transactionId:s(this,R)},member:t},s(this,F)),this}async zRank(e,t){return await s(this,E).ZRank({key:{key:e,transactionId:s(this,R)},member:t},s(this,F)),this}async zIncrBy(e,t,i){return await s(this,E).ZIncrBy({key:e,member:t,value:i,transactionId:s(this,R)},s(this,F)),this}async zScan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,transactionId:s(this,R)};return await s(this,E).ZScan(o,s(this,F)),this}async zCard(e){return await s(this,E).ZCard({key:e,transactionId:s(this,R)},s(this,F)),this}async zRange(e,t,i,n){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return n?.reverse&&(o.rev=n.reverse),n?.by==="lex"?o.byLex=!0:n?.by==="score"&&(o.byScore=!0),await s(this,E).ZRange({key:{key:e,transactionId:s(this,R)},start:t+"",stop:i+"",...o},s(this,F)),this}async zRem(e,t){return await s(this,E).ZRem({key:{key:e,transactionId:s(this,R)},members:t},s(this,F)),this}async zRemRangeByLex(e,t,i){return await s(this,E).ZRemRangeByLex({key:{key:e,transactionId:s(this,R)},min:t,max:i},s(this,F)),this}async zRemRangeByRank(e,t,i){return await s(this,E).ZRemRangeByRank({key:{key:e,transactionId:s(this,R)},start:t,stop:i},s(this,F)),this}async zRemRangeByScore(e,t,i){return await s(this,E).ZRemRangeByScore({key:{key:e,transactionId:s(this,R)},min:t,max:i},s(this,F)),this}async hgetall(e){return await s(this,E).HGetAll({key:e,transactionId:s(this,R)},s(this,F)),this}async hget(e,t){return await s(this,E).HGet({key:e,field:t,transactionId:s(this,R)},s(this,F)),this}async hset(e,t){let i=Object.entries(t).map(([n,o])=>({field:n,value:o}));return await s(this,E).HSet({key:e,fv:i,transactionId:s(this,R)},s(this,F)),this}async hincrby(e,t,i){return await s(this,E).HIncrBy({key:e,field:t,value:i,transactionId:s(this,R)},s(this,F)),this}async hdel(e,t){return await s(this,E).HDel({key:e,fields:t,transactionId:s(this,R)},s(this,F)),this}async hscan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,transactionId:s(this,R)};return await s(this,E).HScan(o,s(this,F)),this}async hkeys(e){return await s(this,E).HKeys({key:e,transactionId:s(this,R)},s(this,F)),this}async hlen(e){return await s(this,E).HLen({key:e,transactionId:s(this,R)},s(this,F)),this}};E=new WeakMap,R=new WeakMap,F=new WeakMap;var O,zr,rc=class rc{constructor(e,t=void 0,i=ec.INSTALLATION){l(this,O,void 0);l(this,zr,void 0);d(this,O,e),d(this,zr,t),this.scope=i,this.global=i===ec.INSTALLATION?new rc(s(this,O),s(this,zr),ec.GLOBAL):this}get storage(){return s(this,zr)||u.redisPlugin}async watch(...e){let t=await this.storage.Watch({keys:e},s(this,O));return new tc(this.storage,t,s(this,O))}async get(e){let t=await this.storage.Get({key:e,scope:this.scope},s(this,O));return t!==null?t.value??void 0:t}async set(e,t,i){let n;return i?.expiration&&(n=Math.floor((i.expiration.getTime()-Date.now())/1e3),n<1&&(n=1)),(await this.storage.Set({key:e,value:t,nx:i?.nx===!0&&!i.xx,xx:i?.xx===!0&&!i.nx,expiration:n||0,scope:this.scope},s(this,O))).value}async del(...e){await this.storage.Del({keys:e,scope:this.scope},s(this,O))}async incrBy(e,t){return(await this.storage.IncrBy({key:e,value:t,scope:this.scope},s(this,O))).value}async getRange(e,t,i){let n=await this.storage.GetRange({key:e,start:t,end:i,scope:this.scope},s(this,O));return n!==null?n.value:n}async setRange(e,t,i){return(await this.storage.SetRange({key:e,offset:t,value:i,scope:this.scope},s(this,O))).value}async strlen(e){return(await this.storage.Strlen({key:e,scope:this.scope},s(this,O))).value}async expire(e,t){await this.storage.Expire({key:e,seconds:t,scope:this.scope},s(this,O))}async expireTime(e){return(await this.storage.ExpireTime({key:e,scope:this.scope},s(this,O))).value}async zAdd(e,...t){return(await this.storage.ZAdd({key:e,members:t,scope:this.scope},s(this,O))).value}async zRange(e,t,i,n){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return n?.reverse&&(o.rev=n.reverse),n?.by==="lex"?o.byLex=!0:n?.by==="score"?o.byScore=!0:(o.offset=0,o.count=0),(await this.storage.ZRange({key:{key:e},start:t+"",stop:i+"",...o,scope:this.scope},s(this,O))).members}async zRem(e,t){return(await this.storage.ZRem({key:{key:e},members:t,scope:this.scope},s(this,O))).value}async zRemRangeByLex(e,t,i){return(await this.storage.ZRemRangeByLex({key:{key:e},min:t,max:i,scope:this.scope},s(this,O))).value}async zRemRangeByRank(e,t,i){return(await this.storage.ZRemRangeByRank({key:{key:e},start:t,stop:i,scope:this.scope},s(this,O))).value}async zRemRangeByScore(e,t,i){return(await this.storage.ZRemRangeByScore({key:{key:e},min:t,max:i,scope:this.scope},s(this,O))).value}async zScore(e,t){let i=await this.storage.ZScore({key:{key:e},member:t,scope:this.scope},s(this,O));return i!==null?i.value:i}async zRank(e,t){let i=await this.storage.ZRank({key:{key:e},member:t,scope:this.scope},s(this,O));return i!==null?i.value:i}async zIncrBy(e,t,i){let n=await this.storage.ZIncrBy({key:e,member:t,value:i,scope:this.scope},s(this,O));return n!==null?n.value:n}async mget(e){let t=await this.storage.MGet({keys:e,scope:this.scope},s(this,O));return t!==null?t.values.map(i=>i||null):t}async mset(e){let t=Object.entries(e).map(([i,n])=>({key:i,value:n}));await this.storage.MSet({kv:t,scope:this.scope},s(this,O))}async zCard(e){let t=await this.storage.ZCard({key:e,scope:this.scope},s(this,O));return t!==null?t.value:t}async zScan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,scope:this.scope};return await this.storage.ZScan(o,s(this,O))}async type(e){let t=await this.storage.Type({key:e,scope:this.scope},s(this,O));return t!==null?t.value:t}async hget(e,t){let i=await this.storage.HGet({key:e,field:t,scope:this.scope},s(this,O));return i!==null?i.value??void 0:i}async hset(e,t){let i=Object.entries(t).map(([o,a])=>({field:o,value:a}));return(await this.storage.HSet({key:e,fv:i,scope:this.scope},s(this,O))).value}async hgetall(e){let t=await this.storage.HGetAll({key:e,scope:this.scope},s(this,O));return t!==null?t.fieldValues:t}async hdel(e,t){return(await this.storage.HDel({key:e,fields:t,scope:this.scope},s(this,O))).value}async hscan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,scope:this.scope};return await this.storage.HScan(o,s(this,O))}async hkeys(e){let t=await this.storage.HKeys({key:e,scope:this.scope},s(this,O));return t!==null?t.keys:t}async hincrby(e,t,i){return(await this.storage.HIncrBy({key:e,field:t,value:i,scope:this.scope},s(this,O))).value}async hlen(e){return(await this.storage.HLen({key:e,scope:this.scope})).value}};O=new WeakMap,zr=new WeakMap;var Vr=rc;var Qt,Jr=class{constructor(e){l(this,Qt,void 0);d(this,Qt,e)}async runJob(e){return(await u.schedulerPlugin.Schedule({action:{type:e.name,data:e.data},cron:"cron"in e?e.cron:void 0,when:"runAt"in e?e.runAt:void 0},s(this,Qt))).id}async cancelJob(e){await u.schedulerPlugin.Cancel({id:e},s(this,Qt))}async listJobs(){return(await u.schedulerPlugin.List({after:new Date(0),before:new Date(Date.now()+31536e7)},s(this,Qt))).actions.map(t=>(f(t.request?.action,"Scheduled job is malformed"),"when"in t.request&&t.request.when!=null?{id:t.id,name:t.request.action.type,runAt:t.request.when,data:t.request.action.data}:{id:t.id,name:t.request.action.type,cron:t.request.cron??"",data:t.request.action}))}};Qt=new WeakMap;var _n,$r=class{constructor(e){l(this,_n,void 0);d(this,_n,e)}async get(e){return(await this.getAll())[e]}async getAll(){let t=await u.settingsPlugin.GetSettings({},s(this,_n));if(!t.installationSettings)throw new Error("Could not get installation settings");if(!t.appSettings)throw new Error("Could not get app settings");return{...gv(t.installationSettings.settings,u.installationSettings),...gv(t.appSettings.settings,u.appSettings)}}};_n=new WeakMap;function gv(r,e){let t=Object.keys(r).reduce((i,n)=>(i[n]=Qu(r[n]),i),{});return e&&fv(t,e),t}function fv(r,e){for(let t of e)t.type==="group"?fv(r,t.fields):!(t.name in r)&&"defaultValue"in t&&(r[t.name]=t.defaultValue)}import{EffectType as ic,Form as l0,ToastAppearance as hv}from"@devvit/protos";var er,Kr,za=class{constructor(e){l(this,er,[]);l(this,Kr,void 0);d(this,Kr,e)}showForm(e,t){let i=u.formDefinitions.get(e);if(!i&&s(this,Kr)){let a=s(this,Kr).forms.get(e);a&&(i={form:a,onSubmit:()=>{}})}if(!i)throw new Error("Form does not exist. Make sure you have added it using Devvit.createForm at the root of your app.");let n=i.form instanceof Function?i.form(t??{}):i.form,o=l0.fromPartial({id:e,title:n.title,acceptLabel:n.acceptLabel,cancelLabel:n.cancelLabel,shortDescription:n.description});Xt(n.fields),o.fields=rt(n.fields),s(this,er).push({type:ic.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?hv.SUCCESS:hv.NEUTRAL}:t={text:e},s(this,er).push({type:ic.EFFECT_SHOW_TOAST,showToast:{toast:t}})}navigateTo(e){let t;typeof e=="string"?t=new URL(e).toString():t=new URL(e.permalink,"https://www.reddit.com").toString(),s(this,er).push({type:ic.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}get __effects(){return s(this,er)}};er=new WeakMap,Kr=new WeakMap;var ac={now(){return new Date}};function vv(r){return`__autocache__${r}`}function yv(r){return`__lock__${r}`}var u0=300,c0=1e3,Va=5e3,nc=3,bv=.1,Pv=1e3,m0=3e4;function kv(r){if(r.error)throw new Error(r.error);return r.value}var bt,Pt,Fe,Xr,$a,Sv,Ka,Cv,Xa,Iv,Nn,sc,Za,wv,Ya,Av,qn,oc,Qa,xv,Ja=class{constructor(e,t,i=ac){l(this,$a);l(this,Ka);l(this,Xa);l(this,Nn);l(this,Za);l(this,Ya);l(this,qn);l(this,Qa);l(this,bt,void 0);l(this,Pt,{});l(this,Fe,void 0);l(this,Xr,void 0);d(this,bt,e),d(this,Xr,t),d(this,Fe,i)}async cache(e,t){d(this,Pt,s(this,Xr).__cache=s(this,Xr).__cache??{}),b(this,Qa,xv).call(this,t);let i=b(this,$a,Sv).call(this,t.key);if(i!==void 0)return i;let n=await b(this,qn,oc).call(this,t.key),o=await b(this,Ka,Cv).call(this,t,n,e);return kv(o)}};bt=new WeakMap,Pt=new WeakMap,Fe=new WeakMap,Xr=new WeakMap,$a=new WeakSet,Sv=function(e){let t=s(this,Pt)[e];if(t){let i=s(this,Fe).now().getTime(),n=t?.error&&t?.errorTime&&t.errorCount<nc&&Math.random()<bv&&t.errorTime+Pv<i;if(t?.expires&&t.expires<i&&t.checkedAt+Pv<i||n){delete s(this,Pt)[e];return}else return kv(t)}},Ka=new WeakSet,Cv=async function(e,t,i){let n=t?.expires,o=n?b(this,Ya,Av).call(this,n):1;return!t||t?.error&&t.errorCount<nc&&bv>Math.random()||o>Math.random()?b(this,Xa,Iv).call(this,e,t,i):t},Xa=new WeakSet,Iv=async function(e,t,i){let n=yv(e.key),o=s(this,Fe).now().getTime(),a=new Date(o+e.ttl/2);if(await s(this,bt).set(n,"1",{expiration:a,nx:!0}))return b(this,Za,wv).call(this,e.key,t,i,e.ttl);if(t)return t;{let p=s(this,Fe).now();return b(this,Nn,sc).call(this,p,e.key,e.ttl)}},Nn=new WeakSet,sc=async function(e,t,i){let n=Math.min(i,c0),o=await b(this,qn,oc).call(this,t);if(o)return o;if(s(this,Fe).now().getTime()-e.getTime()>=n)throw new Error(`Cache request timed out trying to get data at key: ${t}`);return await new Promise(a=>setTimeout(a,u0)),b(this,Nn,sc).call(this,e,t,i)},Za=new WeakSet,wv=async function(e,t,i,n){let o=s(this,Fe).now().getTime()+n;t=t??{value:null,expires:o,errorCount:0,error:null,errorTime:null,checkedAt:0};try{t.value=await i(),t.error=null,t.errorCount=0,t.errorTime=null}catch(a){t.value=null,t.error=a.message??"Unknown error",t.errorTime=s(this,Fe).now().getTime(),t.errorCount++}return s(this,Pt)[e]=t,await s(this,bt).set(vv(e),JSON.stringify(t),{expiration:new Date(o+m0)}),t.error&&t.errorCount<nc&&await s(this,bt).del(yv(e)),t},Ya=new WeakSet,Av=function(e){let t=s(this,Fe).now().getTime(),i=e-t;return i<0?1:i<1e3?.1:i<2e3?.01:i<3e3?.001:0},qn=new WeakSet,oc=async function(e){let t=await s(this,bt).get(vv(e));if(t){let i=JSON.parse(t);return i.checkedAt=s(this,Fe).now().getTime(),s(this,Pt)[e]=i,i}},Qa=new WeakSet,xv=function(e){e.ttl<Va&&(console.warn(`Cache TTL cannot be less than ${Va} milliseconds! Updating ttl value of ${e.ttl} to ${Va}.`),e.ttl=Va)};function Tv(r,e,t=ac){let i=new Ja(r,e,t);return i.cache.bind(i)}var Hn,Zr=class{constructor(e){l(this,Hn,void 0);d(this,Hn,e)}async send(e,t){await u.realtimePlugin.Send({channel:e,data:t},s(this,Hn))}};Hn=new WeakMap;function Oe({metadata:r,ui:e,hooks:t,reconciler:i}){let n=new jr(r),o=new qr(r),a=new Vr(r),c=Tv(a,i?i.state:{}),p=new Gr(r),g=new Jr(r),y=new $r(r),m=e?new za(i):void 0,h=new Hr(r),k=new Nr(r,()=>u.assetsPlugin),C=new Zr(r),w=t&&i?dv(i):void 0,A=t&&i?av(i):void 0,U=t&&i?ov(i):void 0,ze=t&&i?sv(i):void 0;return{modLog:n,kvStore:o,redis:a,reddit:p,scheduler:g,settings:y,media:h,assets:k,realtime:C,get useForm(){return U??(()=>{throw new Error("useForm() is unavailable")})},get cache(){return c??(()=>{throw new Error("cache() is unavailable")})},get useState(){return w??(()=>{throw new Error("useState() is unavailable")})},get useInterval(){return A??(()=>{throw new Error("useInterval() is unavailable")})},get useChannel(){return ze??(()=>{throw new Error("useChannel() is unavailable")})},get ui(){if(!m)throw new Error("ui client is not available");return m}}}function ae(r,e,t){let i=r[se.Subreddit]?.values[0];f(i,"subreddit is missing from Context");let n=r[se.AppUser]?.values[0];f(n,"appAccountId is missing from Context");let o=r[se.User]?.values[0],a={metadata:r};return{appAccountId:n,subredditId:i,userId:o,postId:e,commentId:t,debug:a,toJSON(){return{appAccountId:n,subredditId:i,userId:o,postId:e,commentId:t,debug:a}}}}async function ed(r,e,t){if(!e)throw new Error("Settings were not defined.");let i=p0.fromPartial({success:!0,errors:{}}),n=vt(r.fieldValues),o=e.flatMap(a=>a.type==="group"?a.fields:a);return await Promise.all(o.map(async a=>{let c=a.name;if(c&&a.type!=="group"&&a.onValidate){let p=n[c],g=a.onValidate,y=Object.assign(Oe({metadata:t}),ae(t)),m=await g({value:p,isEditing:r.editing},y);m&&(i.success=!1,i.errors[c]=m)}})),i}async function h0(){if(!u.appSettings)throw new Error("App settings were not defined.");return f0.fromPartial({fields:{fields:rt(u.appSettings)}})}async function v0(r,e){return ed(r,u.appSettings,e)}function Ev(r){r.provides(g0),M("GetAppSettingsFields",h0),M("ValidateAppForm",v0)}import{CustomPostDefinition as F0}from"@devvit/protos";import{BlockRenderEventType as bc,BlockType as T0,EffectType as Jv}from"@devvit/protos";var Rv="redd.it",y0="redditstatic.com",b0="redditmedia.com",P0="snoo.dev";var k0=[P0,Rv,y0,b0],S0=/^data:([a-zA-Z]+\/[a-zA-Z0-9.+_-]+)?(;charset=[a-zA-Z0-9._+-]+)?(;base64)?,(.*)/;function C0(r){return r.trim().replace(/[\r\n]+/g,"")}function I0(r){let e=S0.exec(C0(r));if(e)return{mimeType:e[1],charset:e[2]?.split("=")[1],isBase64:!!e[3],data:e[4].trim()}}function w0(r){return["image/svg+xml"].includes(r)}function A0(r){let e=I0(r);return e?.mimeType?w0(e.mimeType):!1}function Fv(r){try{if(A0(r))return!0;let t=(new URL(r,`https://i.${Rv}`)?.hostname).split(".").slice(-2).join(".");return!!t&&k0.includes(t)}catch{return!1}}function Yr(r){return r.__effects}function Ov(){let r=new Set;return e=>{let t=e,i=1;for(;r.has(t);)t=`${e}.${i++}`;return r.add(t),t}}import{BlockActionType as x0,BlockAnimationDirection as qv,BlockAnimationLoopMode as Hv,BlockAnimationType as jv,BlockAvatarBackground as Wv,BlockAvatarFacing as Gv,BlockAvatarSize as kt,BlockBorderWidth as rd,BlockButtonAppearance as St,BlockButtonSize as uc,BlockFullSnooSize as Qr,BlockGap as id,BlockHorizontalAlignment as cc,BlockIconSize as nd,BlockImageResizeMode as jn,BlockPadding as Wn,BlockRadius as Gn,BlockSizeUnit as mc,BlockSpacerShape as pc,BlockSpacerSize as sd,BlockStackDirection as gc,BlockTextOutline as fc,BlockTextOverflow as hc,BlockTextSize as ei,BlockTextStyle as vc,BlockTextWeight as zv,BlockType as Me,BlockVerticalAlignment as yc}from"@devvit/protos";var dc={transparent:"transparent",black:"#000000",white:"#ffffff","coolgray-950":"#04090A","coolgray-900":"#0B1416","coolgray-850":"#0F1A1C","coolgray-800":"#131F23","coolgray-750":"#1A282D","coolgray-700":"#223237","coolgray-650":"#2A3C42","coolgray-600":"#33464C","coolgray-550":"#4B6066","coolgray-525":"#576F76","coolgray-500":"#667A80","coolgray-450":"#82959B","coolgray-400":"#A0B0B5","coolgray-350":"#B8C5C9","coolgray-300":"#D2DADD","coolgray-250":"#DAE0E3","coolgray-200":"#E2E7E9","coolgray-150":"#EAEDEF","coolgray-100":"#F2F4F5","coolgray-50":"#F9FAFA","puregray-950":"#080808","puregray-900":"#131313","puregray-850":"#181818","puregray-800":"#1E1E1E","puregray-750":"#272727","puregray-700":"#303030","puregray-650":"#393939","puregray-600":"#434343","puregray-550":"#5C5C5C","puregray-500":"#767676","puregray-450":"#919191","puregray-400":"#ACACAC","puregray-350":"#C3C3C3","puregray-300":"#D6D6D6","puregray-250":"#DDDDDD","puregray-200":"#E4E4E4","puregray-150":"#EBEBEB","puregray-100":"#F2F2F2","puregray-50":"#F8F8F8","orangered-950":"#190600","orangered-900":"#340E00","orangered-800":"#4F1500","orangered-700":"#721F00","orangered-600":"#962900","orangered-500":"#D93A00","orangered-400":"#FE7C53","orangered-300":"#FFBEA6","orangered-200":"#FFD5C6","orangered-100":"#FFEDE5","orangered-50":"#FFF6F3","red-950":"#1C0004","red-900":"#3A0008","red-800":"#58000C","red-700":"#7E0011","red-600":"#A50016","red-500":"#EB001F","red-400":"#FF6E80","red-300":"#FFADB8","red-200":"#FFCCD2","red-100":"#FFEAED","red-50":"#FFF6F7","sakurapink-950":"#1A0011","sakurapink-900":"#360024","sakurapink-800":"#530037","sakurapink-700":"#770051","sakurapink-600":"#9B006A","sakurapink-500":"#E00096","sakurapink-400":"#FF55BD","sakurapink-300":"#FFA5E3","sakurapink-200":"#FFC5EC","sakurapink-100":"#FFE5F9","sakurapink-50":"#FFF3FB","berrypurple-950":"#16001F","berrypurple-900":"#2E0041","berrypurple-800":"#470062","berrypurple-700":"#66008C","berrypurple-600":"#8700B5","berrypurple-500":"#BC0EFF","berrypurple-400":"#D55EFF","berrypurple-300":"#EEA7FF","berrypurple-200":"#F2C8FF","berrypurple-100":"#FBE6FF","berrypurple-50":"#FCF4FF","periwinkle-950":"#0D0B1F","periwinkle-900":"#1A1741","periwinkle-800":"#272262","periwinkle-700":"#372F8C","periwinkle-600":"#453BB5","periwinkle-500":"#6A5CFF","periwinkle-400":"#988EFF","periwinkle-300":"#C3BDFF","periwinkle-200":"#D8D4FF","periwinkle-100":"#ECEAFF","periwinkle-50":"#F7F6FF","alienblue-950":"#000C1D","alienblue-900":"#00183D","alienblue-800":"#00255D","alienblue-700":"#003584","alienblue-600":"#0045AC","alienblue-500":"#1870F4","alienblue-400":"#629FFF","alienblue-300":"#A7CCFF","alienblue-200":"#C6DCFF","alienblue-100":"#E4EFFF","alienblue-50":"#F3F7FF","lightblue-950":"#000D12","lightblue-900":"#001C26","lightblue-800":"#002A3A","lightblue-700":"#003F56","lightblue-600":"#005472","lightblue-500":"#007FAE","lightblue-400":"#47B0DB","lightblue-300":"#95DCFB","lightblue-200":"#B6E9FF","lightblue-100":"#D9F6FF","lightblue-50":"#ECFAFF","mintgreen-950":"#00100E","mintgreen-900":"#001E1B","mintgreen-800":"#002E28","mintgreen-700":"#00443C","mintgreen-600":"#005A4F","mintgreen-500":"#008675","mintgreen-400":"#45B9AB","mintgreen-300":"#96E1D8","mintgreen-200":"#B7ECE5","mintgreen-100":"#DAF7F4","mintgreen-50":"#ECFBF9","kiwigreen-950":"#021000","kiwigreen-900":"#032200","kiwigreen-800":"#053200","kiwigreen-700":"#084A00","kiwigreen-600":"#0A6000","kiwigreen-500":"#0E8A00","kiwigreen-400":"#55BD46","kiwigreen-300":"#A3E398","kiwigreen-200":"#BFEEB8","kiwigreen-100":"#DFF8DB","kiwigreen-50":"#EEFCED","lime-950":"#0C0E00","lime-900":"#1A1F00","lime-800":"#282F00","lime-700":"#3A4501","lime-600":"#4D5A01","lime-500":"#6B7E01","lime-400":"#A1B33B","lime-300":"#CFDB83","lime-200":"#DFE8A6","lime-100":"#EFF4CC","lime-50":"#F7FAE5","yellow-950":"#100D01","yellow-900":"#251E02","yellow-800":"#382D03","yellow-700":"#504104","yellow-600":"#665505","yellow-500":"#8F7407","yellow-400":"#DBAF00","yellow-300":"#FADB61","yellow-200":"#FFE88F","yellow-100":"#FFF2BD","yellow-50":"#FFFAE5","yelloworange-950":"#150C00","yelloworange-900":"#2C1A00","yelloworange-800":"#432700","yelloworange-700":"#623A00","yelloworange-600":"#814C00","yelloworange-500":"#B06400","yelloworange-400":"#FF9C1A","yelloworange-300":"#FFCD7C","yelloworange-200":"#FFDDA8","yelloworange-100":"#FFF0D3","yelloworange-50":"#FFF7EA","poopbrown-950":"#110B04","poopbrown-900":"#29190A","poopbrown-800":"#3B2510","poopbrown-700":"#54371A","poopbrown-600":"#6E4924","poopbrown-500":"#9A6D3F","poopbrown-400":"#CAA075","poopbrown-300":"#EECCAA","poopbrown-200":"#F6DDC3","poopbrown-100":"#FEEEDD","poopbrown-50":"#FEF7EE",pizzaRed:{light:"#ef5350",dark:"#c62828"},"global-brand-orangered":{light:"#FF4500",dark:"#FF4500"},"global-focus":{light:"#47B0DB",dark:"#007FAE"},"interactive-content-disabled":{light:"#0000003f",dark:"#ffffff3f"},"interactive-background-disabled":{light:"#0000000c",dark:"#ffffff0c"},"interactive-pressed":{light:"#00000028",dark:"#ffffff28"},"neutral-content":{light:"#2A3C42",dark:"#B8C5C9"},"neutral-content-disabled":{light:"#D6D6D6",dark:"#303030"},"neutral-content-weak":{light:"#576F76",dark:"#82959B"},"neutral-content-strong":{light:"#0F1A1C",dark:"#F2F4F5"},"neutral-background":{light:"#ffffff",dark:"#0B1416"},"neutral-background-selected":{light:"#EAEDEF",dark:"#1A282D"},"neutral-background-weak":{light:"#F9FAFA",dark:"#04090A"},"neutral-background-medium":{light:"#F8F8F8",dark:"#131313"},"neutral-background-strong":{light:"#ffffff",dark:"#0F1A1C"},"neutral-background-hover":{light:"#F2F4F5",dark:"#131F23"},"neutral-border":{light:"#00000033",dark:"#ffffff33"},"neutral-border-medium":{light:"#0000007f",dark:"#ffffff7f"},"neutral-border-weak":{light:"#00000019",dark:"#ffffff19"},"neutral-border-strong":{light:"#0F1A1C",dark:"#F2F4F5"},primary:{light:"#0045AC",dark:"#629FFF"},"primary-hover":{light:"#003584",dark:"#A7CCFF"},"primary-visited":{light:"#8700B5",dark:"#D55EFF"},"primary-onBackground":{light:"#ffffff",dark:"#ffffff"},"primary-onBackground-selected":{light:"#ffffff",dark:"#000000"},"primary-background":{light:"#0045AC",dark:"#0045AC"},"primary-background-hover":{light:"#003584",dark:"#1870F4"},"primary-background-selected":{light:"#00255D",dark:"#629FFF"},secondary:{light:"#0F1A1C",dark:"#F2F4F5"},"secondary-hover":{light:"#000000",dark:"#ffffff"},"secondary-weak":{light:"#576F76",dark:"#82959B"},"secondary-onBackground":{light:"#000000",dark:"#ffffff"},"secondary-background":{light:"#EAEDEF",dark:"#1A282D"},"secondary-background-hover":{light:"#E2E7E9",dark:"#223237"},"secondary-background-selected":{light:"#D2DADD",dark:"#33464C"},"secondary-plain":{light:"#0F1A1C",dark:"#F2F4F5"},"secondary-plain-hover":{light:"#000000",dark:"#ffffff"},"danger-background":{light:"#EB001F",dark:"#A50016"},"danger-background-disabled":{light:"#FFCCD2",dark:"#3A0008"},"danger-background-hover":{light:"#A50016",dark:"#EB001F"},"danger-onBackground":{light:"#ffffff",dark:"#ffffff"},"danger-content":{light:"#A50016",dark:"#FF6E80"},"danger-content-hover":{light:"#7E0011",dark:"#FFADB8"},"danger-content-default":{light:"#ffffff",dark:"#ffffff"},"brand-background":{light:"#D93A00",dark:"#D93A00"},"brand-onBackground":{light:"#ffffff",dark:"#ffffff"},"brand-background-hover":{light:"#962900",dark:"#962900"},"media-background":{light:"#00000099",dark:"#00000099"},"media-onbackground":{light:"#ffffff",dark:"#ffffff"},"media-onbackground-weak":{light:"#E2E7E9",dark:"#E2E7E9"},"media-background-hover":{light:"#000000cc",dark:"#000000cc"},"media-onbackground-disabled":{light:"#ffffff3f",dark:"#ffffff3f"},"media-border-selected":{light:"#ffffff",dark:"#ffffff"},"media-background-selected":{light:"#000000cc",dark:"#000000cc"},"success-content":{light:"#0A6000",dark:"#55BD46"},"success-hover":{light:"#084A00",dark:"#A3E398"},"success-onBackground":{light:"#ffffff",dark:"#ffffff"},"success-background":{light:"#0E8A00",dark:"#0A6000"},"success-background-hover":{light:"#0A6000",dark:"#0E8A00"},"warning-content":{light:"#665505",dark:"#DBAF00"},"warning-content-hover":{light:"#504104",dark:"#FADB61"},"warning-onBackground":{light:"#000000",dark:"#000000"},"warning-background":{light:"#DBAF00",dark:"#DBAF00"},"warning-background-hover":{light:"#8F7407",dark:"#FADB61"},"upvote-content":{light:"#962900",dark:"#FE7C53"},"upvote-content-weak":{light:"#FF4500",dark:"#FF4500"},"upvote-disabled":{light:"#9629004c",dark:"#FE7C534c"},"upvote-onBackground":{light:"#ffffff",dark:"#ffffff"},"upvote-background":{light:"#D93A00",dark:"#D93A00"},"upvote-background-hover":{light:"#962900",dark:"#962900"},"upvote-background-disabled":{light:"#D93A004c",dark:"#D93A004c"},"downvote-content":{light:"#453BB5",dark:"#988EFF"},"downvote-content-weak":{light:"#6A5CFF",dark:"#6A5CFF"},"downvote-disabled":{light:"#453BB54c",dark:"#988EFF4c"},"downvote-onBackground":{light:"#ffffff",dark:"#ffffff"},"downvote-background":{light:"#6A5CFF",dark:"#453BB5"},"downvote-background-hover":{light:"#453BB5",dark:"#453BB5"},"downvote-background-disabled":{light:"#6A5CFF4c",dark:"#6A5CFF4c"},"brand-gradient-default":{light:"",dark:""},"brand-gradient-default-highlight":{light:"",dark:""},"brand-gradient-hover":{light:"",dark:""},"brand-gradient-hover-highlight":{light:"",dark:""},"brand-gradient-active":{light:"",dark:""},"brand-gradient-active-highlight":{light:"",dark:""},"gradient-media":{light:"",dark:""},"gradient-media-strong":{light:"",dark:""},"transparent-background-hover":{light:"#82959B19",dark:"#667A8019"},"global-black":{light:"#000000",dark:"#000000"},"global-white":{light:"#ffffff",dark:"#ffffff"},"global-orangered":{light:"#D93A00",dark:"#D93A00"},"global-alienblue":{light:"#1870F4",dark:"#1870F4"},"global-darkblue":{light:"#131F23",dark:"#131F23"},"tone-1":{light:"#131313",dark:"#F2F2F2"},"tone-2":{light:"#434343",dark:"#ACACAC"},"tone-3":{light:"#ACACAC",dark:"#434343"},"tone-4":{light:"#E4E4E4",dark:"#303030"},"tone-5":{light:"#F2F2F2",dark:"#1E1E1E"},"tone-6":{light:"#F8F8F8",dark:"#131313"},"tone-7":{light:"#ffffff",dark:"#080808"},"action-upvote":{light:"#D93A00",dark:"#D93A00"},"action-downvote":{light:"#6A5CFF",dark:"#6A5CFF"},"alert-caution":{light:"#8F7407",dark:"#8F7407"},"identity-admin":{light:"#D93A00",dark:"#D93A00"},"identity-moderator":{light:"#0E8A00",dark:"#0E8A00"},"identity-self":{light:"#008675",dark:"#008675"},"identity-coins":{light:"#DBAF00",dark:"#DBAF00"},"category-live":{light:"#D93A00",dark:"#D93A00"},"category-nsfw":{light:"#E00096",dark:"#E00096"},"category-spoiler":{light:"#131313",dark:"#F2F2F2"},"ui-canvas":{light:"#F2F2F2",dark:"#080808"},"ui-modalbackground":{light:"#ffffff",dark:"#0F1A1C"},"avatar-gradient":{light:"",dark:""},"opacity-highlight":{light:"",dark:""},"opacity-08":{light:"#13131314",dark:"#13131314"},"opacity-50":{light:"#0000007f",dark:"#F2F2F27f"},scrim:{light:"#00000099",dark:"#00000099"},"scrim-strong":{light:"#000000cc",dark:"#000000cc"},"scrim-gradient":{light:"",dark:""},online:{light:"#55BD46",dark:"#55BD46"},favorite:{light:"#8F7407",dark:"#DBAF00"}};var Mv={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",transparent:"#FFFFFF00",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},Lv=r=>!!r.match(/^(#[0-9a-fA-F]{3,8}).*/),Bv=r=>r in dc,lc=r=>r in Mv,Uv=r=>!!r.match(/^rgba?\(.*/),Dv=r=>!!r.match(/^hsla?\(.*/),_v=(r,e="light")=>{if(lc(r))return td(r);let i=dc[r];return typeof i=="string"?i:i[e]},td=r=>Mv[r]??r,Nv=r=>{let[e,t,i,n]=r.replace(/^rgba?\(|\s+|\)$/g,"").split(",");if(!e||!t||!i)return r;let a=[...[e,t,i].map(p=>parseFloat(p))];if(n){let p=parseFloat(n),g=Math.round(p*255);a.push(g)}return`#${a.map(p=>p.toString(16).padStart(2,"0")).join("")}`};var Vv="data-",ti=class{async createBlocksElementOrThrow({type:e,props:t,children:i}){let n=await this.createBlocksElement({type:e,props:t,children:i});if(!n)throw new Error(`Could not create block of type ${e}`);return n}async createBlocksElement({type:e,props:t,children:i}){switch(e){case"blocks":return this.makeRoot(t,...i);case"hstack":return this.makeHStack(t,...i);case"vstack":return this.makeVStack(t,...i);case"zstack":return this.makeZStack(t,...i);case"text":return this.makeText(t,...i);case"button":return this.makeButton(t,...i);case"image":return await this.makeImage(t);case"spacer":return this.makeSpacer(t);case"icon":return this.makeIcon(t);case"avatar":return this.makeAvatar(t);case"fullsnoo":return this.makeFullSnoo(t);case"animation":return await this.makeAnimation(t);case"webview":return this.makeWebView(t);case"__fragment":throw new Error("root fragment is not supported - use 'blocks' instead")}}makeRootHeight(e){switch(e){case"regular":return 320;case"tall":return 512}}makeBlockPadding(e){switch(e){case"none":return Wn.PADDING_NONE;case"xsmall":return Wn.PADDING_XSMALL;case"small":return Wn.PADDING_SMALL;case"medium":return Wn.PADDING_MEDIUM;case"large":return Wn.PADDING_LARGE}}makeBlockRadius(e){switch(e){case"none":return Gn.RADIUS_NONE;case"small":return Gn.RADIUS_SMALL;case"medium":return Gn.RADIUS_MEDIUM;case"large":return Gn.RADIUS_LARGE;case"full":return Gn.RADIUS_FULL}}makeBlockGap(e){switch(e){case"none":return id.GAP_NONE;case"small":return id.GAP_SMALL;case"medium":return id.GAP_MEDIUM;case"large":return id.GAP_LARGE}}makeBlockAlignment(e){if(e===void 0)return;let t,i;if(e.includes("top")?t=yc.ALIGN_TOP:e.includes("middle")?t=yc.ALIGN_MIDDLE:e.includes("bottom")&&(t=yc.ALIGN_BOTTOM),e.includes("start")?i=cc.ALIGN_START:e.includes("center")?i=cc.ALIGN_CENTER:e.includes("end")&&(i=cc.ALIGN_END),t!==void 0||i!==void 0)return{vertical:t,horizontal:i}}makeBlockBorder(e,t,i,n){if(!e&&!t)return;let o;switch(e){case"none":o=rd.BORDER_WIDTH_NONE;break;case"thin":o=rd.BORDER_WIDTH_THIN;break;case"thick":o=rd.BORDER_WIDTH_THICK;break;default:o=rd.BORDER_WIDTH_THIN;break}let a=t??"neutral-border-weak",c=this.getThemedColors(a,i,n);return{width:o,color:c?.light,colors:c}}makeBlockTextSize(e){switch(e){case"xsmall":return ei.TEXT_SIZE_XSMALL;case"small":return ei.TEXT_SIZE_SMALL;case"medium":return ei.TEXT_SIZE_MEDIUM;case"large":return ei.TEXT_SIZE_LARGE;case"xlarge":return ei.TEXT_SIZE_XLARGE;case"xxlarge":return ei.TEXT_SIZE_XXLARGE}}makeBlockTextStyle(e){switch(e){case"body":return vc.TEXT_STYLE_BODY;case"metadata":return vc.TEXT_STYLE_METADATA;case"heading":return vc.TEXT_STYLE_HEADING}}makeBlockTextOutline(e){switch(e){case"none":return fc.TEXT_OUTLINE_NONE;case"thin":return fc.TEXT_OUTLINE_THIN;case"thick":return fc.TEXT_OUTLINE_THICK}}makeBlockTextWeight(e){switch(e){case"regular":return zv.TEXT_WEIGHT_REGULAR;case"bold":return zv.TEXT_WEIGHT_BOLD}}makeBlockTextOverflow(e){switch(e){case"clip":return hc.TEXT_OVERFLOW_CLIP;case"ellipsis":return hc.TEXT_OVERFLOW_ELLIPSE}return hc.TEXT_OVERFLOW_ELLIPSE}makeBlockButtonAppearance(e){switch(e){case"secondary":return St.BUTTON_APPEARANCE_SECONDARY;case"primary":return St.BUTTON_APPEARANCE_PRIMARY;case"plain":return St.BUTTON_APPEARANCE_PLAIN;case"bordered":return St.BUTTON_APPEARANCE_BORDERED;case"media":return St.BUTTON_APPEARANCE_MEDIA;case"destructive":return St.BUTTON_APPEARANCE_DESTRUCTIVE;case"caution":return St.BUTTON_APPEARANCE_CAUTION;case"success":return St.BUTTON_APPEARANCE_SUCCESS}}makeBlockButtonSize(e){switch(e){case"small":return uc.BUTTON_SIZE_SMALL;case"medium":return uc.BUTTON_SIZE_MEDIUM;case"large":return uc.BUTTON_SIZE_LARGE}}makeBlockImageResizeMode(e){switch(e){case"none":return jn.IMAGE_RESIZE_NONE;case"fit":return jn.IMAGE_RESIZE_FIT;case"fill":return jn.IMAGE_RESIZE_FILL;case"cover":return jn.IMAGE_RESIZE_COVER;case"scale-down":return jn.IMAGE_RESIZE_SCALE_DOWN}}makeBlockSpacerSize(e){switch(e){case"xsmall":return sd.SPACER_XSMALL;case"small":return sd.SPACER_SMALL;case"medium":return sd.SPACER_MEDIUM;case"large":return sd.SPACER_LARGE}}makeBlockSpacerShape(e){switch(e){case"invisible":return pc.SPACER_INVISIBLE;case"thin":return pc.SPACER_THIN;case"square":return pc.SPACER_SQUARE}}makeBlockIconSize(e){switch(e){case"xsmall":return nd.ICON_SIZE_XSMALL;case"small":return nd.ICON_SIZE_SMALL;case"medium":return nd.ICON_SIZE_MEDIUM;case"large":return nd.ICON_SIZE_LARGE}}makeBlockAvatarSize(e){switch(e){case"xxsmall":return kt.AVATAR_SIZE_XXSMALL;case"xsmall":return kt.AVATAR_SIZE_XSMALL;case"small":return kt.AVATAR_SIZE_SMALL;case"medium":return kt.AVATAR_SIZE_MEDIUM;case"large":return kt.AVATAR_SIZE_LARGE;case"xlarge":return kt.AVATAR_SIZE_XXLARGE;case"xxlarge":return kt.AVATAR_SIZE_XXLARGE;case"xxxlarge":return kt.AVATAR_SIZE_XXXLARGE}}makeBlockAvatarFacing(e){switch(e){case"left":return Gv.AVATAR_FACING_LEFT;case"right":return Gv.AVATAR_FACING_RIGHT}}makeBlockFullSnooSize(e){switch(e){case"xsmall":return Qr.FULLSNOO_XSMALL;case"small":return Qr.FULLSNOO_SMALL;case"medium":return Qr.FULLSNOO_MEDIUM;case"large":return Qr.FULLSNOO_LARGE;case"xlarge":return Qr.FULLSNOO_XLARGE;case"xxlarge":return Qr.FULLSNOO_XXLARGE}}makeBlockAvatarBackground(e){switch(e){case"dark":return Wv.AVATAR_BG_DARK;case"light":return Wv.AVATAR_BG_LIGHT}}makeBlockAnimationType(e){return e==="lottie"||e===void 0?jv.ANIM_LOTTIE:jv.UNRECOGNIZED}makeBlockAnimationDirection(e){switch(e){case"backward":return qv.ANIM_DIR_BACKWARD;case"forward":return qv.ANIM_DIR_FORWARD}}makeBlockLoopMode(e){switch(e){case"repeat":return Hv.ANIM_LOOP_REPEAT;case"bounce":return Hv.ANIM_LOOP_BOUNCE}}makeBlockSize(e){if(e&&(e.width!=null||e.height!=null||e.grow)){let{value:t,unit:i}=this.parseSize(e.width)??{},{value:n,unit:o}=this.parseSize(e.height)??{};return{width:t,widthUnit:i,height:n,heightUnit:o,grow:e.grow}}}makeBlockSizes(e){if(e){let t=e.width!=null||e.minWidth!=null||e.maxWidth!=null,i=e.height!=null||e.minHeight!=null||e.maxHeight!=null;if(t||i||e.grow!=null)return{width:t?{value:this.parseSize(e.width),min:this.parseSize(e.minWidth),max:this.parseSize(e.maxWidth)}:void 0,height:i?{value:this.parseSize(e.height),min:this.parseSize(e.minHeight),max:this.parseSize(e.maxHeight)}:void 0,grow:e.grow}}}parseSize(e){if(e==null)return;if(typeof e=="number")return{value:e,unit:mc.SIZE_UNIT_PERCENT};let t=e.match(/^(\d+(?:\.\d+)?)(px|%)?$/);if(t==null)return;let i=mc.SIZE_UNIT_PERCENT;return t?.at(2)==="px"&&(i=mc.SIZE_UNIT_PIXELS),{value:Number.parseFloat(t[1]),unit:i}}getDataSet(e){return Object.keys(e).filter(t=>t.startsWith(Vv)).reduce((t,i)=>(t[i.substring(Vv.length)]=e[i],t),{})}makeActions(e,t){let i=[],n=this.getDataSet(t);if(t.onPress){let o=t.onPress;i.push({type:x0.ACTION_CLICK,id:o.toString(),data:n})}return i}blockColorToHex(e,t="light"){if(e)return e=e.toLowerCase(),Lv(e)?e:Bv(e)?_v(e,t):lc(e)?td(e):Uv(e)?Nv(e):Dv(e)?e:(console.warn(`Could not parse color: ${e}.`),td("red"))}async childrenToBlocks(e){let t=e.map(n=>{if(typeof n!="string")return this.createBlocksElement(n)});return(await Promise.all(t)).filter(n=>n!==void 0)}getThemedColors(e,t,i){let n=this.blockColorToHex(t,"light"),o=this.blockColorToHex(i,"dark"),a=[];if(e&&(!n||!o)){let c=Array.from(e?.matchAll(/[\w#-]+(?:\([\w\t ,.#-]+\))?/g)??[]);a.push(...c.map(p=>p[0]))}return n||(n=this.blockColorToHex(a?.at(0),"light")),o||(o=this.blockColorToHex(a?.at(1)??a?.at(0),"dark")),n||o?{light:n,dark:o}:void 0}parsePixels(e){return typeof e=="string"?Number(e.slice(0,-2)):e}childrenToString(e){return e.map(t=>t.toString()).join("")}async makeRoot(e,...t){return this.wrapRoot(e,await this.childrenToBlocks(t))}async wrapRoot(e,t){return this.makeBlock(Me.BLOCK_ROOT,{},{rootConfig:{children:t,height:this.makeRootHeight(u.customPostType?.height??e?.height??"regular")}})}async makeStackBlock(e,t,i){let n=this.getThemedColors(t?.backgroundColor,t?.lightBackgroundColor,t?.darkBackgroundColor);return this.makeBlock(Me.BLOCK_STACK,t,{stackConfig:{alignment:this.makeBlockAlignment(t?.alignment),backgroundColor:n?.light,backgroundColors:n,border:this.makeBlockBorder(t?.border,t?.borderColor,t?.lightBorderColor,t?.darkBorderColor),children:await this.childrenToBlocks(i),cornerRadius:this.makeBlockRadius(t?.cornerRadius),direction:e,gap:this.makeBlockGap(t?.gap),padding:this.makeBlockPadding(t?.padding),reverse:t?.reverse}})}async makeHStack(e,...t){return this.makeStackBlock(gc.STACK_HORIZONTAL,e,t)}async makeVStack(e,...t){return this.makeStackBlock(gc.STACK_VERTICAL,e,t)}async makeZStack(e,...t){return this.makeStackBlock(gc.STACK_DEPTH,e,t)}makeText(e,...t){let i=this.getThemedColors(e?.color,e?.lightColor,e?.darkColor);return this.makeBlock(Me.BLOCK_TEXT,e,{textConfig:{alignment:this.makeBlockAlignment(e?.alignment),color:i?.light,colors:i,outline:this.makeBlockTextOutline(e?.outline),size:this.makeBlockTextSize(e?.size),style:this.makeBlockTextStyle(e?.style),text:this.childrenToString(t),weight:this.makeBlockTextWeight(e?.weight),selectable:e?.selectable,wrap:e?.wrap,overflow:this.makeBlockTextOverflow(e?.overflow)}})}makeButton(e,...t){let i=this.getThemedColors(e?.textColor,e?.lightTextColor,e?.darkTextColor);return this.makeBlock(Me.BLOCK_BUTTON,e,{buttonConfig:{buttonAppearance:this.makeBlockButtonAppearance(e?.appearance),icon:e?.icon,buttonSize:this.makeBlockButtonSize(e?.size),text:this.childrenToString(t),textColor:i?.light,textColors:i,disabled:e?.disabled}})}async makeImage(e){return e&&this.makeBlock(Me.BLOCK_IMAGE,e,{imageConfig:{description:e?.description,resizeMode:this.makeBlockImageResizeMode(e.resizeMode),url:e.url,width:this.parsePixels(e.imageWidth),height:this.parsePixels(e.imageHeight)}})}makeSpacer(e){return this.makeBlock(Me.BLOCK_SPACER,e,{spacerConfig:{size:this.makeBlockSpacerSize(e?.size),shape:this.makeBlockSpacerShape(e?.shape)}})}makeIcon(e){let t=this.getThemedColors(e?.color,e?.lightColor,e?.darkColor);return e&&this.makeBlock(Me.BLOCK_ICON,e,{iconConfig:{icon:e.name,color:t?.light,colors:t,size:this.makeBlockIconSize(e.size)}})}makeAvatar(e){return e&&this.makeBlock(Me.BLOCK_AVATAR,e,{avatarConfig:{thingId:e.thingId,size:this.makeBlockAvatarSize(e.size),facing:this.makeBlockAvatarFacing(e.facing),background:this.makeBlockAvatarBackground(e.background)}})}makeFullSnoo(e){return e&&this.makeBlock(Me.BLOCK_FULLSNOO,e,{fullsnooConfig:{userId:e.userId,facing:this.makeBlockAvatarFacing(e.facing),size:this.makeBlockFullSnooSize(e.size)}})}async makeAnimation(e){return e&&this.makeBlock(Me.BLOCK_ANIMATION,e,{animationConfig:{type:this.makeBlockAnimationType(e.type),url:e.url,loop:e.loop,loopMode:this.makeBlockLoopMode(e.loopMode),autoplay:e.autoplay,width:this.parsePixels(e.imageWidth),height:this.parsePixels(e.imageHeight),direction:this.makeBlockAnimationDirection(e.direction),speed:e.speed}})}makeWebView(e){return e&&this.makeBlock(Me.BLOCK_WEBVIEW,e,{webviewConfig:{url:e.url}})}makeBlock(e,t,i){return{type:e,size:this.makeBlockSize(t),sizes:this.makeBlockSizes(t),config:i,actions:(t&&this.makeActions(e,t))??[],id:t?.id,key:t?.key}}async ensureRootBlock(e){let t=e;if(t.type===Me.BLOCK_ROOT)return t.config?.rootConfig&&u.customPostType?.height&&(t.config.rootConfig.height=this.makeRootHeight(u.customPostType?.height)),t;let i=await this.wrapRoot(void 0,[t]);if(!i)throw new Error("Could not create root block");return i}};function $v(r){if(typeof r=="string")throw new Error("Root element cannot be a string")}var Kv=r=>{let e="",t=r.props?Object.keys(r.props).map(i=>i==="onPress"?"":`${i}="${r.props[i]}"`).join(" "):"";e+=`<${r.type}${t?" "+t:""}>`;for(let i of r.children)typeof i=="string"?e+=i:e+=Kv(i);return e+=`</${r.type}>`,e};function E0(r){return" ".repeat(r)}function R0(r){let e="",t=0,i=r.split(/>\s*</);for(let n=0;n<i.length;n++){let o=i[n];n===0&&(o=o.trim()),n===i.length-1&&(o=o.trim());let a=o.charAt(0)==="/";a&&t--,e+=E0(t),n!==0&&(e+="<"),e+=o,n!==i.length-1&&(e+=`>
2
- `),!a&&o.indexOf("</")===-1&&o.charAt(o.length-1)!=="/"&&t++}return e}var od,Xv,tr,zn,Vn,Pc,Jn,it=class{constructor(e,t,i,n,o){l(this,od);l(this,tr);l(this,Vn);this.renderState={};this.currentComponentKey=[];this.currentHookIndex=0;this.actions=new Map;this.forms=new Map;this.realtimeChannels=[];this.realtimeUpdated=!1;this.pendingHooks=[];this.isRendering=!1;this.transformer=new ti;this.effects=[];l(this,Jn,!1);this.component=e,this.event=t,this.state={__renderState:{},...i},this.metadata=n,this.state.__realtimeChannels&&(this.realtimeChannels=this.state.__realtimeChannels);let a=Oe({reconciler:this,hooks:!0,ui:!0,metadata:n});this.cache=a.cache,this.modLog=a.modLog,this.reddit=a.reddit,this.kvStore=a.kvStore,this.redis=a.redis,this.settings=a.settings,this.scheduler=a.scheduler,this.media=a.media,this.assets=a.assets,this.realtime=a.realtime,this.dimensions=o,this.ui=a.ui,this.hooks={useState:a.useState,useInterval:a.useInterval,useForm:a.useForm,useChannel:a.useChannel}}emitEffect(e,t){this.effects.push(t)}async render(){await this.reconcile(),this.isRendering=!0;let e=await this.buildBlocksUI();return this.isRendering=!1,e}makeUniqueActionID(e){let t=e,i=1;for(;this.actions.has(t);)t=`${e}.${i++}`;return t}async reconcile(){let e={type:this.component,props:b(this,tr,zn).call(this),children:[]},t=await this.processBlock(e);if($v(t),await this.transformer.createBlocksElementOrThrow(t),this.isUserActionRender&&this.blockRenderEventId){let i=this.actions.get(this.blockRenderEventId);i&&await i({})}for(let i of this.pendingHooks)await i();this.buildNextState(),b(this,od,Xv).call(this)}async buildBlocksUI(){let e={type:this.component,props:b(this,tr,zn).call(this),children:[]},t=await this.renderElement(e);return this.transformer.ensureRootBlock(t)}async renderElement(e){let t=await this.processBlock(e);return $v(t),(u.debug.emitSnapshots||this.metadata[se.DebugRenderXML]?.values[0])&&console.log(R0(Kv(t))),u.debug.emitState&&console.log(JSON.stringify(this.state,null,2)),await this.transformer.createBlocksElementOrThrow(t)}async processProps(e){if(e.onPress){let t=e.onPress,i=t.name,n=this.makeUniqueActionID(`${T0.BLOCK_BUTTON}.${i??"onPress"}`);this.actions.set(n,t),e.onPress=n}e.url&&(e.url=await this.getAssetUrl(e.url))}async getAssetUrl(e){let t,i=globalThis?.devvit?.config?.assets;if(i&&(t=i[e]),!t&&!Fv(e)){console.log("No assets loaded on the config - falling back to plugin");try{t=await this.assets.getURL(e),i&&t&&(i[e]=t)}catch{}}return t??e}async processBlock(e,t=Ov(),i=[]){let n=e;if(typeof n.type=="string"){let p=(await Promise.all(n.children.flatMap(async(m,h)=>m==null?[]:await this.processBlock(m,t,[...i,`${n.type}.${h}`])))).flat(),g=b(this,Vn,Pc).call(this,p);return await this.processProps(n.props||{}),{type:n.type,props:n.props,children:g}}if(typeof n.type=="function"){let c=t(`${i.length?i.join("."):"root"}.${n.type.name.length?n.type.name:"anonymous"}`);this.currentComponentKey.push(c),this.renderState[c]||(this.renderState[c]={});let p=n.children.flatMap(m=>m),g={...b(this,tr,zn).call(this),...n.props,children:p},y;for(;y===void 0;)try{y=await n.type(g,b(this,tr,zn).call(this))}catch(m){if(m instanceof Promise)y=await m;else throw m}if(!this.isInitialRender){let m=this.getPreviousComponentState();if(Object.keys(m).length!==this.currentHookIndex)throw new Error("Invalid hook call. Hooks can only be called at the top-level of a function component. Make sure that you are not calling hooks inside loops, conditions, or nested functions.")}if(this.currentComponentKey.pop(),this.currentHookIndex=0,typeof y=="object")return this.processBlock(y,t,[...i,n.type.name])}if(typeof n=="string")return n;if(typeof n=="number")return`${n}`;let o=[],a="";return Array.isArray(n)?o=n:typeof n.type>"u"&&n.children&&(o=n.children,a="fragmentChild."),{type:"__fragment",props:void 0,children:await Promise.all(o.flatMap(async(c,p)=>await this.processBlock(c,t,[...i,`${a}${p}`])))}}getCurrentComponentKey(){if(!this.currentComponentKey.at(-1))throw new Error("Current component key is missing");return this.currentComponentKey}getCurrentComponentState(){let e=this.currentComponentKey.at(-1);if(!e)throw new Error("Current component key is missing");return this.renderState[e]}getPreviousComponentState(){let e=this.currentComponentKey.at(-1);if(!e)throw new Error("Current component key is missing");return this.state.__renderState[e]||(this.state.__renderState[e]={}),this.state.__renderState[e]}get isInitialRender(){return this.event?this.event.type===bc.RENDER_INITIAL:!1}get isUserActionRender(){return this.event?this.event.type===bc.RENDER_USER_ACTION:!1}get isEffectRender(){return this.event?this.event.type===bc.RENDER_EFFECT_EVENT:!1}get formSubmittedEvent(){return this.event?this.event.formSubmitted:!1}get blockRenderEventId(){return this.event?this.event.id:!1}get realtimeEvent(){if(!this.event)return!1;let e=this.event.realtimeEvent;return e?.event?.channel?e:!1}runHook(e){this.pendingHooks.push(e)}rerenderIn(e){s(this,Jn)||(d(this,Jn,!0),this.effects.push({type:Jv.EFFECT_RERENDER_UI,rerenderUi:{delaySeconds:e/1e3}}))}addRealtimeChannel(e){this.realtimeChannels.push(e),this.realtimeUpdated=!0}removeRealtimeChannel(e){this.realtimeChannels=this.realtimeChannels.filter(t=>t!==e),this.realtimeUpdated=!0}get realtimeEffect(){return this.realtimeUpdated&&this.realtimeChannels.length>0?[{type:Jv.EFFECT_REALTIME_SUB,realtimeSubscriptions:{subscriptionIds:this.realtimeChannels}}]:[]}getEffects(){return[...Yr(this.ui),...this.effects,...this.realtimeEffect]}buildNextState(){for(let e of Object.keys(this.renderState))this.renderState[e]=Object.values(this.renderState[e]);this.state={__postData:this.state.__postData,__renderState:this.renderState,__cache:this.state.__cache,...this.realtimeChannels.length>0?{__realtimeChannels:this.realtimeChannels}:{}}}};od=new WeakSet,Xv=function(){this.actions.clear(),this.currentComponentKey=[],this.currentHookIndex=0,this.pendingHooks=[],this.realtimeChannels=[],this.realtimeUpdated=!1},tr=new WeakSet,zn=function(){let e={...ae(this.metadata,this.state.__postData?.thingId),modLog:this.modLog,reddit:this.reddit,cache:this.cache,kvStore:this.kvStore,redis:this.redis,settings:this.settings,scheduler:this.scheduler,media:this.media,assets:this.assets,realtime:this.realtime,ui:this.ui,dimensions:this.dimensions,...this.hooks};return e.debug.effects=this,e},Vn=new WeakSet,Pc=function(e){let t=[];for(let i of e)typeof i=="string"?t.push(i):i.type==="__fragment"?t.push(...b(this,Vn,Pc).call(this,i.children)):t.push(i);return t},Jn=new WeakMap;async function O0(r,e){let t=u.customPostType;if(!t)throw new Error("Custom post type not registered");let i=new it((o,a)=>t.render(a),r.blocks,r.state,e,r.dimensions),n=await i.render();return{state:i.state,blocks:{ui:n},effects:i.getEffects()}}function Zv(r){r.provides(F0),M("RenderPost",O0)}import{GetFieldsResponse as M0,InstallationSettingsDefinition as L0}from"@devvit/protos";async function B0(){if(!u.installationSettings)throw new Error("Installation settings were not defined.");return M0.fromPartial({fields:{fields:rt(u.installationSettings)}})}async function U0(r,e){return ed(r,u.installationSettings,e)}function Yv(r){r.provides(L0),M("GetSettingsFields",B0),M("ValidateForm",U0)}import{ContextActionDefinition as D0,ContextActionDescription as _0,ContextActionResponse as N0}from"@devvit/protos";var Qv=r=>`menuItem.${r}`;function kc(r){return u.menuItems.find((e,t)=>Qv(t)===r)}async function q0(r,e){let t=u.menuItems;if(!t.length)throw new Error("No menu items registered.");return{actions:t.map((n,o)=>_0.fromPartial({actionId:Qv(o),name:n.label,description:n.description,contexts:{subreddit:n.location.includes("subreddit"),post:n.location.includes("post"),comment:n.location.includes("comment")},users:{loggedOut:n.forUserType?.includes("loggedOut"),member:n.forUserType?.includes("member"),moderator:n.forUserType?.includes("moderator")},postFilters:n.postFilter==="currentApp"?{currentApp:!0}:void 0}))}}async function H0(r,e){let t=kc(r.actionId);if(!t)throw new Error(`MenuItem ${r.actionId} not found`);let i=r.comment?.id&&`t1_${r.comment.id}`,n=r.post?.id&&`t3_${r.post.id}`,o=r.subreddit?.id&&`t5_${r.subreddit.id}`,a=i||n||o;f(a,"targetId is missing from ContextActionRequest");let c={targetId:a,location:r.comment?"comment":r.post?"post":"subreddit"},p=Object.assign(Oe({ui:!0,metadata:e}),ae(e,n,i));return await t.onPress(c,p),N0.fromPartial({effects:Yr(p.ui)})}function ey(r){r.provides(D0),M("GetActions",q0),M("OnAction",H0)}function nt(r){return r?r===!0?!0:r.enabled:!1}import{SchedulerHandlerDefinition as j0}from"@devvit/protos";async function W0(r,e){let t=r.type,i=u.scheduledJobHandlers.get(t);if(!i)throw new Error(`Job ${t} not found`);let n={name:t,data:r.data},o=Object.assign(Oe({metadata:e}),ae(e));await i(n,o)}function ty(r){r.provides(j0),M("HandleScheduledAction",W0)}import{HandlerResult as G0,OnAppInstallDefinition as z0,OnAppUpgradeDefinition as V0,OnCommentCreateDefinition as J0,OnCommentDeleteDefinition as $0,OnCommentReportDefinition as K0,OnCommentSubmitDefinition as X0,OnCommentUpdateDefinition as Z0,OnModActionDefinition as Y0,OnModMailDefinition as Q0,OnPostCreateDefinition as eT,OnPostDeleteDefinition as tT,OnPostFlairUpdateDefinition as rT,OnPostReportDefinition as iT,OnPostSubmitDefinition as nT,OnPostUpdateDefinition as sT}from"@devvit/protos";var ad;(function(r){function e(o,a){return o.length<=a?o:`${o.slice(0,a-1)}\u2026`}r.ellipsize=e;function t(o){return o[0]==null?o:`${o[0].toLocaleUpperCase()}${o.slice(1)}`}r.capitalize=t;function i(o){return o==null||/^\s*$/.test(o)}r.isBlank=i;function n(o){return o instanceof Error?`${o.stack||o.message||o.name}`:String(o)}r.caughtToString=n})(ad||(ad={}));function re(r,e){return f(e),async(t,i)=>{let n={...t,type:r},o=Object.assign(Oe({metadata:i}),ae(i)),a=await Promise.allSettled(e.map(p=>p(n,o))),c=oT(a);if(c)throw c.err;return G0.fromPartial({})}}function ry(r){for(let e of u.triggerOnEventHandlers.keys())switch(e){case"PostSubmit":r.provides(nT),M("OnPostSubmit",re("PostSubmit",u.triggerOnEventHandlers.get(e)));break;case"PostCreate":r.provides(eT),M("OnPostCreate",re("PostCreate",u.triggerOnEventHandlers.get(e)));break;case"PostUpdate":r.provides(sT),M("OnPostUpdate",re("PostUpdate",u.triggerOnEventHandlers.get(e)));break;case"PostReport":r.provides(iT),M("OnPostReport",re("PostReport",u.triggerOnEventHandlers.get(e)));break;case"PostDelete":r.provides(tT),M("OnPostDelete",re("PostDelete",u.triggerOnEventHandlers.get(e)));break;case"PostFlairUpdate":r.provides(rT),M("OnPostFlairUpdate",re("PostFlairUpdate",u.triggerOnEventHandlers.get(e)));break;case"CommentSubmit":r.provides(X0),M("OnCommentSubmit",re("CommentSubmit",u.triggerOnEventHandlers.get(e)));break;case"CommentCreate":r.provides(J0),M("OnCommentCreate",re("CommentCreate",u.triggerOnEventHandlers.get(e)));break;case"CommentUpdate":r.provides(Z0),M("OnCommentUpdate",re("CommentUpdate",u.triggerOnEventHandlers.get(e)));break;case"CommentReport":r.provides(K0),M("OnCommentReport",re("CommentReport",u.triggerOnEventHandlers.get(e)));break;case"CommentDelete":r.provides($0),M("OnCommentDelete",re("CommentDelete",u.triggerOnEventHandlers.get(e)));break;case"AppInstall":r.provides(z0),M("OnAppInstall",re("AppInstall",u.triggerOnEventHandlers.get(e)));break;case"AppUpgrade":r.provides(V0),M("OnAppUpgrade",re("AppUpgrade",u.triggerOnEventHandlers.get(e)));break;case"ModAction":r.provides(Y0),M("OnModAction",re("ModAction",u.triggerOnEventHandlers.get(e)));break;case"ModMail":r.provides(Q0),M("OnModMail",re("ModMail",u.triggerOnEventHandlers.get(e)));break;default:throw new Error(`Unknown trigger event: ${e}`)}}function oT(r){let e=r.reduce((t,i)=>i.status==="rejected"?[...t,i.reason]:t,[]);if(e.length!==0)return e.length===1?{err:e[0]}:{err:new Error(e.map(t=>ad.caughtToString(t)).join(`
3
- `))}}var Xy=Ko(gy(),1),Zy=Ko(Ky(),1);import{EffectType as sR,UIEventHandlerDefinition as oR}from"@devvit/protos";async function aR(r,e){let t=r.state??{},i=(0,Xy.default)(t),n=Oe({ui:!0,metadata:e});if(r.event?.formSubmitted&&r.event.formSubmitted.formId){let p=r.event.formSubmitted.formId;if(p.includes("form.hook.")&&u.customPostType){let k=new it((C,w)=>u.customPostType?.render(w)??null,r.event,r.state,e,void 0);return await k.reconcile(),{state:k.state,effects:k.getEffects()}}let g=u.formDefinitions.get(p);if(!g)throw new Error(`Form with key ${p} not found`);let y,m;if(i.__contextAction){let{actionId:k,thingId:C}=i.__contextAction,w=kc(k);w?.location==="post"?y=C:w?.location==="comment"&&(m=C)}let h=Object.assign(n,ae(e,y,m));await g.onSubmit({values:vt(r.event.formSubmitted.results)},h)}else if(r.event?.realtimeEvent){if(u.customPostType){let p=new it((g,y)=>u.customPostType?.render(y)??null,r.event,r.state,e,void 0);return await p.reconcile(),{state:p.state,effects:p.getEffects()}}}else if(r.event?.toastAction)throw new Error("Toast actions not yet implemented");let o=!(0,Zy.default)(t,i),a=Yr(n.ui),c=o?[...a,{type:sR.EFFECT_RERENDER_UI,rerenderUi:{delaySeconds:0}}]:a;return{state:i,effects:c}}function Yy(r){r.provides(oR),M("HandleUIEvent",aR)}import{CustomPostDefinition as lb}from"@devvit/protos";var Qn=class extends Error{};function Qy(r){let e=or({namespace:"useState"},({changed:t})=>{let i=r instanceof Function?r():r;if(i instanceof Promise)throw new Error("Cannot use async initializer with useState, use useAsyncState instead.");return{state:i,setter:o=>{e.state=o instanceof Function?o(e.state):o,t()}}});return[e.state,e.setter]}import{EffectType as Bc}from"@devvit/protos";var si=class si{constructor(e){this.request=e;this._segments=[];this._hooks={};this._prevHookId="";this._effects={};this._changed={};this._requeueEvents=[];this._rootProps={};this._generated={};this._undeliveredHandlers={};this._state=e.state??{},this._rootProps=e.props??{}}get devvitContext(){if(!this._devvitContext)throw new Error("Devvit context not available");return this._devvitContext}set devvitContext(e){this._devvitContext=e}push(e){this._segments.push({...e,next:0})}pop(){this._segments.pop()}addUndeliveredEventHandler(e,t){this._undeliveredHandlers[e]=t}addGlobalUndeliveredEventHandler(e,t){si.addGlobalUndeliveredEventHandler(e,t)}getHook(e){return this._hooks[e.id]}static addGlobalUndeliveredEventHandler(e,t){si._staticUndeliveredHandlers[e]=t}async handleUndeliveredEvent(e){let t={...si._staticUndeliveredHandlers,...this._undeliveredHandlers};for(let[i,n]of Object.entries(t))await n(e,this)}emitEffect(e,t){this._effects[e]=t}addToRequeueEvents(e){this._requeueEvents.push(e)}get effects(){return Object.values(this._effects)}nextHookId(e){e.key===void 0&&(e.key=this._segments[this._segments.length-1].next+++""),this.push(e);try{let t=[];for(let n=this._segments.length-1;n>=0;n--){let o=this._segments[n];if(o.id){t.unshift(o.id);break}let a=[];o.namespace&&a.push(o.namespace),o.key!==void 0&&o.key!==!1&&a.push(o.key),t.unshift(a.join("-"))}let i=t.join(".");if(this._generated[i]&&!e.shared)throw new Error(`Hook id ${i} already used, cannot register another hook with the same id`);return this._generated[i]=!0,this._prevHookId=i,i}finally{this.pop()}}};si._staticUndeliveredHandlers={};var oi=si;var wt={};oi.addGlobalUndeliveredEventHandler("intervals",async(r,e)=>{r.timer&&r.hook&&(delete wt[r.hook],e.emitEffect("timers",{type:Bc.EFFECT_SET_INTERVALS,interval:{intervals:wt}}))});var At,ai,es,di,Uc=class{constructor(e,t,i){l(this,At,void 0);l(this,ai,void 0);l(this,es,void 0);l(this,di,void 0);this.state={duration:{seconds:0,nanos:0},running:!1};d(this,ai,i.changed),d(this,At,i.hookId),d(this,es,e),d(this,di,i.context);let n=Math.floor(t/1e3),o=t%1e3*1e6;this.state.duration={seconds:n,nanos:o}}onLoad(){this.state.running?wt[s(this,At)]={duration:this.state.duration}:delete wt[s(this,At)]}async onUIEvent(e){await s(this,es).call(this)}start(){wt[s(this,At)]={duration:this.state.duration},this.state.running=!0,s(this,ai).call(this),s(this,di).emitEffect("timers",{type:Bc.EFFECT_SET_INTERVALS,interval:{intervals:wt}})}stop(){delete wt[s(this,At)],this.state.running=!1,s(this,ai).call(this),s(this,di).emitEffect("timers",{type:Bc.EFFECT_SET_INTERVALS,interval:{intervals:wt}})}};At=new WeakMap,ai=new WeakMap,es=new WeakMap,di=new WeakMap;function eb(r,e){return or({namespace:"useInterval"},t=>new Uc(r,e,t))}import{EffectType as _c,Form as uR,ToastAppearance as ib}from"@devvit/protos";var Dc=class{constructor(e,t,i){this.state=null;this.hookId=e.hookId,this.form=t,this.onSubmit=i,this.onUIEvent=async n=>{n.formSubmitted&&await i(vt(n.formSubmitted.results))}}};function tb(r,e){let t=or({namespace:"useForm"},i=>new Dc(i,r,e));return dR({id:t.hookId})}function dR(r){return`form.hook.${r.id}.0`}function lR(r){return{id:r.match(/form\.hook\.(.+)\.0/)[1]}}function rb(r,e){let t=lR(e);return r.getHook(t)}var xt,bd=class{constructor(e){l(this,xt,void 0);d(this,xt,e)}showForm(e,t){let i=rb(s(this,xt),e);if(!i)throw new Error("Form does not exist. Make sure you have added it using useForm.");let n=i.form instanceof Function?i.form(t??{}):i.form,o=uR.fromPartial({id:e,title:n.title,acceptLabel:n.acceptLabel,cancelLabel:n.cancelLabel,shortDescription:n.description});Xt(n.fields),o.fields=rt(n.fields),s(this,xt).emitEffect(e,{type:_c.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?ib.SUCCESS:ib.NEUTRAL}:t={text:e},s(this,xt).emitEffect(e.toString(),{type:_c.EFFECT_SHOW_TOAST,showToast:{toast:t}})}navigateTo(e){let t;typeof e=="string"?t=new URL(e).toString():t=new URL(e.permalink,"https://www.reddit.com").toString(),s(this,xt).emitEffect(t,{type:_c.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}};xt=new WeakMap;var nb=new Proxy({},{get:function(r,e,t){throw new Error(`Unimplemented API: ${String(e)}`)}}),Pd=class{buildContext(e,t){let i=new jr(t),n=new qr(t),o=new Vr(t),a=new Gr(t),c=new Jr(t),p=new $r(t),g=new bd(e),y=new Hr(t),m=new Nr(t,()=>u.assetsPlugin),h=new Zr(t),w={modLog:i,kvStore:n,redis:o,reddit:a,scheduler:c,settings:p,media:y,assets:m,realtime:h,ui:g,useState:Qy,useChannel:nb,useInterval:eb,useForm:tb,cache:nb},A=ae(t);return A.debug.effects=e,{...A,...w}}};var de=null;function sb(r){return JSON.parse(JSON.stringify(r))}function or(r,e){if(!de)throw new Error("Hooks can only be declared at the top of a component. You cannot declare hooks outside of components or inside of event handlers. It's almost always a mistake to declare hooks inside of loops or conditionals.");let t=de.nextHookId(r),i=de,n={hookId:t,changed:()=>{i._changed[t]=!0,i._state[t]=i?._hooks[t]?.state},context:de},o=de._state[t]===void 0;de._hooks[t]=de._hooks[t]??e(n);let a=de._hooks[t];return de._state[t]!==void 0&&(a.state=de._state[t]),a.onLoad&&a.onLoad(de),o&&a.state!==void 0&&a.state!==null&&n.changed(),a}var cR=null,li,Cd,ts,rs,Nc,Id,ob,is,qc,wd,ab,ns,Hc,ss,jc,ui,kd,os,Wc,Ad,db,Sd=class{constructor(e){l(this,rs);l(this,Id);l(this,is);l(this,wd);l(this,ns);l(this,ss);l(this,ui);l(this,os);l(this,Ad);l(this,li,void 0);l(this,Cd,new Pd);l(this,ts,new ti);this._latestRenderContext=null;d(this,li,e),cR=this}async handle(e,t){let i=new oi(e),n=s(this,Cd).buildContext(i,t);i.devvitContext=n;let o,a=e.events,p=!e.events?.length||a.some(h=>!h.async),g=a.some(h=>h.blocking),y,m=[...a];for(;a.length>0;){let h=[];if(!a[0].async)h.push(a.shift());else for(;a[0]?.async;)h.push(a.shift());if(!h.length)throw Error("batch must have at least one event");try{if(h[0].async){let C=sb(i._state);await b(this,Id,ob).call(this,i,...h),i._state=C}else await b(this,wd,ab).call(this,i,...h)}catch(C){if(y){i._state=y._state,i._effects=y._effects,m.forEach(w=>{let A={...w};A.retry=!0,i.addToRequeueEvents(A)});break}else throw C}let k=[];for(let C of i._requeueEvents){if(!p&&!C.async){k.push(C);continue}if(p&&C.async&&!g){k.push(C);continue}a.push(C)}i._requeueEvents=k,a.length>0&&(y={_state:sb(i._state),_effects:{...i._effects}},m=[...a])}if(p){let h=b(this,ns,Hc).call(this,s(this,li),i._rootProps??{},i);h&&(o=await s(this,ts).createBlocksElementOrThrow(h),o=await s(this,ts).ensureRootBlock(o))}return{state:i._state,effects:i.effects,blocks:o,events:i._requeueEvents}}};li=new WeakMap,Cd=new WeakMap,ts=new WeakMap,rs=new WeakSet,Nc=function(e,...t){b(this,ns,Hc).call(this,s(this,li),e.request.props??{},e)},Id=new WeakSet,ob=async function(e,...t){b(this,rs,Nc).call(this,e,...t),await Promise.all(t.map(async i=>{if(!i.async)throw new Error("You can't mix main and other queues in one batch. This is likely a platform bug. Please file an issue in the Discord for someone to help! https://discord.com/channels/1050224141732687912/1115441897079574620");await b(this,is,qc).call(this,e,i)}))},is=new WeakSet,qc=async function(e,t){let i=e._hooks[t.hook];if(i&&i.onUIEvent)try{await i.onUIEvent(t,e)}catch(n){throw console.error("Error in event handler",n),n}else await e.handleUndeliveredEvent(t)},wd=new WeakSet,ab=async function(e,...t){for(let i of t)b(this,rs,Nc).call(this,e,i),e._state.__generation=Number(e._state.__generation??0)+1,await b(this,is,qc).call(this,e,i)},ns=new WeakSet,Hc=function(e,t,i){i._generated={},de=i,this._latestRenderContext=i;try{let n=b(this,ss,jc).call(this,e,t,i);if(n.length!==1)throw new Error("only one root");let o=n[0];if(typeof o=="string")throw new Error("There must be a root tag. Try wrapping your app in a <text></text>, <vstack> or other tag.");return o}catch(n){if(n instanceof Qn)return;throw n}finally{de=null}},ss=new WeakSet,jc=function(e,t,i){i.push({namespace:e.name,...t});try{let n=e(t,i.devvitContext);return b(this,os,Wc).call(this,n,i)}finally{i.pop()}},ui=new WeakSet,kd=function(e,t){return e=e.flat(1/0),e.flatMap((i,n)=>(i&&typeof i=="object"&&"props"in i&&(i.props?.key||(i.props=i.props??{},i.props.key=n)),b(this,os,Wc).call(this,i,t)))},os=new WeakSet,Wc=function(e,t){if(Array.isArray(e))return b(this,ui,kd).call(this,e,t);if(mR(e)){if(e.type===void 0)return b(this,ui,kd).call(this,e.children,t);if(typeof e.type=="function"){let i={...e.props,children:e.children};return b(this,ss,jc).call(this,e.type,i,t)}else{t.push({namespace:e.type,...e.props});let i=b(this,ui,kd).call(this,e.children,t),n=b(this,Ad,db).call(this,e.props??{});return t.pop(),[{type:e.type,children:i,props:n}]}}else return[(e??"").toString()]},Ad=new WeakSet,db=function(e){let t={};for(let i in e)if(typeof e[i]=="function"){let n=or({namespace:i,key:!1},({hookId:o})=>({hookId:o,state:null,onUIEvent:e[i]}));t[i]=n.hookId,"captureHookRef"in e[i]&&e[i].captureHookRef()}else{let n=e[i];n!=null&&(t[i]=n.toString())}return t};function mR(r){return typeof r=="object"&&r!=null&&"type"in r}var pR=[[lb,lb.methods.renderPostContent,(r,e)=>u.customPostType?.render(e)??null]];function gR(r){return async(e,t)=>new Sd(r).handle(e,t)}function ub(r){for(let[e,t,i]of pR)r.provides(e),M(t.name,gR(i))}var as,ci,ar,dr,lr,mi,pi,Tt,ur,L,_,W,D=class D extends qa{static configure(e){d(this,as,e),nt(e.http)&&b(this,_,W).call(this,S.HTTPDefinition),(nt(e.kvStore)||nt(e.redis))&&(b(this,_,W).call(this,S.KVStoreDefinition),b(this,_,W).call(this,S.RedisAPIDefinition)),nt(e.media)&&b(this,_,W).call(this,S.MediaServiceDefinition),nt(e.modLog)&&b(this,_,W).call(this,S.ModlogDefinition),nt(e.redditAPI)&&(b(this,_,W).call(this,S.FlairDefinition),b(this,_,W).call(this,S.GraphQLDefinition),b(this,_,W).call(this,S.LinksAndCommentsDefinition),b(this,_,W).call(this,S.ListingsDefinition),b(this,_,W).call(this,S.ModerationDefinition),b(this,_,W).call(this,S.ModNoteDefinition),b(this,_,W).call(this,S.NewModmailDefinition),b(this,_,W).call(this,S.PrivateMessagesDefinition),b(this,_,W).call(this,S.SubredditsDefinition),b(this,_,W).call(this,S.PostCollectionsDefinition),b(this,_,W).call(this,S.UsersDefinition),b(this,_,W).call(this,S.WidgetsDefinition),b(this,_,W).call(this,S.WikiDefinition),b(this,_,W).call(this,S.RedditAPIV2Definition)),nt(e.realtime)&&b(this,_,W).call(this,S.RealtimeDefinition)}static addMenuItem(e){s(this,ci).push(e)}static addCustomPostType(e){d(this,ar,e)}static createForm(e,t){let i=`form.${s(this,dr).size}`;return s(this,dr).set(i,{form:e,onSubmit:t}),i}static addSchedulerJob(e){if(s(this,L)[S.SchedulerDefinition.fullName]||b(this,_,W).call(this,S.SchedulerDefinition),s(this,lr).has(e.name))throw new Error(`Job ${e.name} is already defined`);s(this,lr).set(e.name,e.onRun)}static addSettings(e){Xt(e);let t=e.filter(n=>n.type==="group"||!n.scope||n.scope==="installation"),i=e.filter(n=>n.type!=="group"&&n.scope==="app");t.length>0&&d(this,mi,t),i.length>0&&d(this,pi,i),s(this,L)[S.SettingsDefinition.fullName]||b(this,_,W).call(this,S.SettingsDefinition)}static addTrigger(e){if("events"in e){for(let t of e.events)this.addTrigger({event:t,onEvent:(i,n)=>e.onEvent(i,n)});return this}return s(this,Tt).has(e.event)?s(this,Tt).get(e.event)?.push(e.onEvent):s(this,Tt).set(e.event,[e.onEvent]),D}static get redditAPIPlugins(){if(!nt(s(this,as).redditAPI))throw new Error("Reddit API is not enabled. You can enable it by passing `redditAPI: true` to `Devvit.configure`.");return{Flair:s(this,L)[S.FlairDefinition.fullName],GraphQL:s(this,L)[S.GraphQLDefinition.fullName],LinksAndComments:s(this,L)[S.LinksAndCommentsDefinition.fullName],Listings:s(this,L)[S.ListingsDefinition.fullName],Moderation:s(this,L)[S.ModerationDefinition.fullName],ModNote:s(this,L)[S.ModNoteDefinition.fullName],NewModmail:s(this,L)[S.NewModmailDefinition.fullName],PrivateMessages:s(this,L)[S.PrivateMessagesDefinition.fullName],Subreddits:s(this,L)[S.SubredditsDefinition.fullName],PostCollections:s(this,L)[S.PostCollectionsDefinition.fullName],Users:s(this,L)[S.UsersDefinition.fullName],Widgets:s(this,L)[S.WidgetsDefinition.fullName],Wiki:s(this,L)[S.WikiDefinition.fullName]}}static get modLogPlugin(){let e=s(this,L)[S.ModlogDefinition.fullName];if(!e)throw new Error("ModLog is not enabled. You can enable it by passing `modLog: true` to `Devvit.configure`");return e}static get schedulerPlugin(){let e=s(this,L)[S.SchedulerDefinition.fullName];if(!e)throw new Error("Scheduler is not enabled. You can enable it by calling `Devvit.addSchedulerJob` at the top level of your app.");return e}static get kvStorePlugin(){let e=s(this,L)[S.KVStoreDefinition.fullName];if(!e)throw new Error("Key Value Store is not enabled. You can enable it by passing `kvStore: true` to `Devvit.configure`");return e}static get redisPlugin(){let e=s(this,L)[S.RedisAPIDefinition.fullName];if(!e)throw new Error("Redis is not enabled. You can enable it by passing `redis: true` to `Devvit.configure`");return e}static get mediaPlugin(){let e=s(this,L)[S.MediaServiceDefinition.fullName];if(!e)throw new Error("MediaService is not enabled. You can enable it by passing `media: true` to `Devvit.configure`");return e}static get redditapiv2Plugin(){let e=s(this,L)[S.RedditAPIV2Definition.fullName];if(!e)throw new Error("RedditAPIV2 is not enabled. You can enable it by passing `apiV2: true` to `Devvit.configure`");return e}static get assetsPlugin(){let e=s(this,L)[S.AssetResolverDefinition.fullName];if(!e)throw new Error("AssetsService is not available. This should not happen, and indicates a setup problem with the runtime.");return e}static get settingsPlugin(){let e=s(this,L)[S.SettingsDefinition.fullName];if(!e)throw new Error("Settings is not enabled. You can enable it by passing `settings: true` to `Devvit.configure`");return e}static get realtimePlugin(){let e=s(this,L)[S.RealtimeDefinition.fullName];if(!e)throw new Error("Realtime is not enabled. You can enable it by passing `realtime: true` to `Devvit.configure`");return e}static get menuItems(){return s(this,ci)}static get customPostType(){return s(this,ar)}static get formDefinitions(){return s(this,dr)}static get scheduledJobHandlers(){return s(this,lr)}static get installationSettings(){return s(this,mi)}static get appSettings(){return s(this,pi)}static get triggerOnEventHandlers(){return s(this,Tt)}constructor(e){var t;super(e),b(t=D,_,W).call(t,S.AssetResolverDefinition);for(let i in s(D,ur)){let n=s(D,ur)[i];n.handler=e.use(n.def,n.options)}s(D,ci).length>0&&ey(e),s(D,lr).size>0&&ty(e),s(D,ar)&&(Zv(e),ub(e)),(s(D,ar)||s(D,dr).size>0)&&Yy(e),s(D,mi)&&Yv(e),s(D,pi)&&Ev(e),s(D,Tt).size>0&&ry(e)}};as=new WeakMap,ci=new WeakMap,ar=new WeakMap,dr=new WeakMap,lr=new WeakMap,mi=new WeakMap,pi=new WeakMap,Tt=new WeakMap,ur=new WeakMap,L=new WeakMap,_=new WeakSet,W=function(e,t){s(this,ur)[e.fullName]={def:e,options:t??{},handler:void 0};let i={};for(let n of Object.values(e.methods))i[n.name]=(o,a)=>s(this,ur)[e.fullName].handler?.[n.name]?.(n.requestType?.fromPartial(o??{}),a);return s(this,L)[e.fullName]=i,i},l(D,_),D.debug={emitSnapshots:!1,emitState:!1},l(D,as,{}),l(D,ci,[]),l(D,ar,void 0),l(D,dr,new Map),l(D,lr,new Map),l(D,mi,void 0),l(D,pi,void 0),l(D,Tt,new Map),l(D,ur,{}),l(D,L,{});var u=D;(e=>{function r(t,i,...n){return{type:t,props:i,children:n}}e.createElement=r})(u||(u={}));function V(r){let e=Object.getOwnPropertyDescriptors(r.constructor.prototype);for(let[t,i]of Object.entries(e))i.get&&Object.defineProperty(r,t,{...i,enumerable:!0})}var Gc;(function(r){r[r.bold=1]="bold",r[r.italic=2]="italic",r[r.underline=4]="underline",r[r.strikethrough=8]="strikethrough",r[r.subscript=16]="subscript",r[r.superscript=32]="superscript",r[r.monospace=64]="monospace"})(Gc||(Gc={}));var cb="text",mb="raw",pb="br",gb="link",fb="c/",hb="p/",vb="r/",yb="u/",bb="@",Pb="spoilertext",kb="par",Sb="h",Cb="hr",Ib="blockquote",wb="code",Ab="li",xb="list",Tb="L",Eb="R",Rb="C",Fb="table",Ob="embed",Mb="img",Lb="gif",Bb="video";function Ub(r){return{e:Lb,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function Db(r,e){let t={},i=[];return Object.assign(t,ds(t,i),ls(t,i),us(t,i),ps(t,i),gs(t,i),fs(t,i)),e(t),{e:Ib,c:i,...r.author&&{a:r.author}}}function _b(r,e){let t={},i=[];return Object.assign(t,Vc(t,i)),e(t),{e:wb,c:i,...r.language&&{l:r.language}}}function Nb(r){return{e:fb,t:r.permalink}}function qb(r,e){let t={},i=[];return Object.assign(t,Vc(t,i),ms(t,i)),e(t),{e:Sb,l:r.level,c:i}}function Hb(r){return{e:Ob,u:r.sourceUrl,c:r.contentUrl,x:r.width,y:r.height}}function jb(){return{e:Cb}}function Wb(r){return{e:Mb,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function Gb(){return{e:pb}}function zb(r){return{e:gb,t:r.text,u:r.url,...r.formatting&&{f:r.formatting},...r.tooltip&&{a:r.tooltip}}}function Vb(r,e){let t={},i=[];return Object.assign(t,dP(t,i)),e(t),{e:xb,o:r.ordered,c:i}}function Jb(r){let e={},t=[];return Object.assign(e,ds(e,t),ls(e,t),us(e,t),xd(e,t),ps(e,t),gs(e,t),fs(e,t)),r(e),{e:Ab,c:t}}function $b(r){let e={},t=[];return Object.assign(e,Td(e,t),ms(e,t),zc(e,t),Jc(e,t),cs(e,t)),r(e),{e:kb,c:t}}function Kb(r){return{e:hb,t:r.permalink}}function Xb(r){return{e:mb,t:r}}function Zb(r){let e={},t=[];return Object.assign(e,Td(e,t),ms(e,t),zc(e,t)),r(e),{e:Pb,c:t}}function Yb(r){return{e:vb,t:r.subredditName,l:r.showPrefix}}function Qb(r){let e={},t=[],i=[];return Object.assign(e,lP(e,t,i)),r(e),{e:Fb,h:t,c:i}}function eP(r){let[e,t]=aP();return r(e),{c:t}}function tP(r,e){let[t,i]=aP();e(t);let n;switch(r.columnAlignment){case"left":n=Tb;break;case"right":n=Eb;break;case"center":n=Rb;break}return{...n&&{a:n},...i&&{c:i}}}function rP(r){let e={},t=[];return Object.assign(e,uP(e,t)),r(e),t}function iP(r){return{e:cb,t:r.text,...r.formatting&&{f:r.formatting}}}function nP(r){return{e:yb,t:r.username,l:r.showPrefix}}function sP(r){return{e:bb,t:r.username,l:r.showPrefix}}function oP(r){return{e:Bb,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur},...r.thumbnail&&{p:r.thumbnail},...r.convertToGif&&{gifify:r.convertToGif}}}function aP(){let r={},e=[];return Object.assign(r,Td(r,e),ms(r,e),Jc(r,e),cs(r,e)),[r,e]}function ds(r,e){return{blockQuote(t,i){return e.push(Db(t,i)),r}}}function ls(r,e){return{codeBlock(t,i){return e.push(_b(t,i)),r}}}function cP(r,e){return{embed(t){return e.push(Hb(t)),r}}}function us(r,e){return{heading(t,i){return e.push(qb(t,i)),r}}}function xd(r,e){return{horizontalRule(){return e.push(jb()),r}}}function cs(r,e){return{image(t){return e.push(Wb(t)),r},animatedImage(t){return e.push(Ub(t)),r}}}function zc(r,e){return{linebreak(){return e.push(Gb()),r}}}function ms(r,e){return{link(t){return e.push(zb(t)),r},commentLink(t){return e.push(Nb(t)),r},postLink(t){return e.push(Kb(t)),r},subredditLink(t){return e.push(Yb(t)),r},userLink(t){return e.push(nP(t)),r},userMention(t){return e.push(sP(t)),r}}}function ps(r,e){return{list(t,i){return e.push(Vb(t,i)),r}}}function dP(r,e){return{item(t){return e.push(Jb(t)),r}}}function gs(r,e){return{paragraph(t){return e.push($b(t)),r}}}function Vc(r,e){return{rawText(t){return e.push(Xb(t)),r}}}function Jc(r,e){return{spoiler(t){return e.push(Zb(t)),r}}}function lP(r,e,t){return{headerCell(i,n){return e.push(tP(i,n)),r},row(i){return t.push(rP(i)),r}}}function fs(r,e){return{table(t){return e.push(Qb(t)),r}}}function uP(r,e){return{cell(t){return e.push(eP(t)),r}}}function Td(r,e){return{text(t){return e.push(iP(t)),r}}}function mP(r,e){return{video(t){return e.push(oP(t)),r}}}var fR=function(r,e,t,i,n){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?n.call(r,t):n?n.value=t:e.set(r,t),t},hR=function(r,e,t,i){if(t==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?i:t==="a"?i.call(r):i?i.value:e.get(r)},Ed,hs=class{constructor(){Ed.set(this,void 0);let e=[];Object.assign(this,gs(this,e),us(this,e),xd(this,e),ds(this,e),ls(this,e),cP(this,e),ps(this,e),fs(this,e),cs(this,e),mP(this,e)),fR(this,Ed,{document:e},"f")}build(){return JSON.stringify(hR(this,Ed,"f"))}paragraph(e){return this}heading(e,t){return this}horizontalRule(){return this}blockQuote(e,t){return this}codeBlock(e,t){return this}embed(e){return this}list(e,t){return this}table(e){return this}image(e){return this}animatedImage(e){return this}video(e){return this}};Ed=new WeakMap;function gi(r){let e;return r instanceof hs?e=r.build():typeof r=="object"?e=JSON.stringify(r):e=r,e}var pP=100,gP=1/0,cr,mr,Et,fi,hi,Rd,H=class{constructor(e){l(this,hi);l(this,cr,void 0);l(this,mr,void 0);l(this,Et,void 0);l(this,fi,!1);this.pageSize=pP;this.limit=gP;this.children=[];V(this),this._fetch=e.fetch,this.pageSize=e.pageSize??pP,this.limit=e.limit??gP,d(this,mr,e.after),d(this,cr,e.before),d(this,Et,e.more),e.children&&(this.children=e.children)}get hasMore(){return!s(this,fi)||!!(s(this,mr)||s(this,cr)||s(this,Et))}async*[Symbol.asyncIterator](){let e=0;for(;;){if(e===this.children.length)if(this.hasMore){if((await b(this,hi,Rd).call(this)).length===0)break}else break;if(yield this.children[e],e++,e===this.limit)break}}setMore(e){d(this,Et,e)}preventInitialFetch(){d(this,fi,!0)}async all(){for(;this.hasMore&&this.children.length<this.limit;)await b(this,hi,Rd).call(this);return this.children.slice(0,this.limit)}async get(e){let t=e<=this.limit?e:this.limit;for(;this.hasMore&&this.children.length<t;)await b(this,hi,Rd).call(this);return this.children.slice(0,t)}};cr=new WeakMap,mr=new WeakMap,Et=new WeakMap,fi=new WeakMap,hi=new WeakSet,Rd=async function(){if(!this.hasMore)throw new Error("This listing does not have any more items to load.");let{children:e,before:t,after:i,more:n}=await this._fetch({before:s(this,cr),after:s(this,mr),limit:this.pageSize,more:s(this,Et)});return this.children.push(...e),d(this,cr,t),d(this,mr,i),d(this,Et,n),d(this,fi,!0),e};function vR(r){try{return!0}catch{return!1}}function yR(r){try{return!0}catch{return!1}}var vs,$c,Ee=class{constructor(){}static get(e,t){let i=u.redditAPIPlugins.ModNote;return new H({hasMore:!0,before:e.before,limit:e.limit,pageSize:e.limit,fetch:async n=>{let o=await i.GetNotes({subreddit:e.subreddit,user:e.user,filter:e.filter,before:n.before,limit:n.limit},t);return{children:o.modNotes?.map(a=>b(this,vs,$c).call(this,a))||[],before:o.hasNextPage?o.endCursor:void 0,hasMore:o.hasNextPage}}})}static async delete(e,t){let i=u.redditAPIPlugins.ModNote,{deleted:n}=await i.DeleteNotes(e,t);return!!n}static async add(e,t){let n=await u.redditAPIPlugins.ModNote.PostNotes(e,t);if(!n?.created)throw new Error("Failed to create mod note");return b(this,vs,$c).call(this,n.created)}static async addRemovalNote(e,t){await u.redditAPIPlugins.ModNote.PostRemovalNote(e,t)}};vs=new WeakSet,$c=function(e){if(f(e.id,"Mod note ID is null or undefined"),f(e.createdAt,"Mod note createdAt is null or undefined"),f(e.type,"Mod note type is null or undefined"),f(e.subreddit,"Mod note subreddit is null or undefined"),f(e.subredditId,"Mod note subredditId is null or undefined"),f(e.operator,"Mod note operator is null or undefined"),f(e.operatorId,"Mod note operatorId is null or undefined"),f(e.user,"Mod note user is null or undefined"),f(e.userId,"Mod note userId is null or undefined"),f(e.userNoteData,"Mod note userNote is null or undefined"),f(e.modActionData,"Mod note modAction is null or undefined"),!vR(e.userNoteData?.label??""))throw new Error(`Invalid user note label: ${e.userNoteData?.label}`);if(!yR(e.type))throw new Error(`Invalid mod note type: ${e.type}`);return{id:e.id,user:{id:ee(e.userId??""),name:e.user},subreddit:{id:xe(e.subredditId??""),name:e.subreddit},operator:{id:ee(e.operatorId??""),name:e.operator},createdAt:new Date(e.createdAt*1e3),userNote:{note:e.userNoteData?.note,redditId:ge(e.userNoteData?.redditId??""),label:e.userNoteData?.label},type:e.type}},l(Ee,vs);var vi=class{static queryWithQueryString(e,t){return u.redditAPIPlugins.GraphQL.Query({query:e},t)}static query(e,t,i,n){return u.redditAPIPlugins.GraphQL.PersistedQuery({operationName:e,id:t,variables:i},n)}};var fP=["all","wiki","posts","access","mail","config","flair","channels","chat_config","chat_community","chat_operator"];function bR(r,e,t=!1){let i=t?"%2b":"+";return e.map(n=>(r.includes(n)?i:"-")+n).join(",")}function Kc(r){return bR(r,fP,!0)}function hP(r){return r.filter(e=>fP.includes(e))}var PR=(t=>(t.User="USER_FLAIR",t.Post="LINK_FLAIR",t))(PR||{}),pr,yi,bi,Pi,ki,Si,Ci,Ii,wi,Ai,xi,Fd,We=class We{constructor(e,t,i){l(this,pr,void 0);l(this,yi,void 0);l(this,bi,void 0);l(this,Pi,void 0);l(this,ki,void 0);l(this,Si,void 0);l(this,Ci,void 0);l(this,Ii,void 0);l(this,wi,void 0);l(this,Ai,void 0);V(this),f(e.id),f(e.text),d(this,pr,e.id),d(this,yi,t),d(this,bi,e.text),d(this,Pi,kR(e.textColor)),d(this,ki,SR(e.backgroundColor)),d(this,Si,CR(e.allowableContent)),d(this,Ci,e.modOnly),d(this,Ii,e.maxEmojis),d(this,wi,e.textEditable),d(this,Ai,i)}get id(){return s(this,pr)}get text(){return s(this,bi)}get textColor(){return s(this,Pi)}get backgroundColor(){return s(this,ki)}get allowableContent(){return s(this,Si)}get modOnly(){return s(this,Ci)}get maxEmojis(){return s(this,Ii)}get allowUserEdits(){return s(this,wi)}async delete(){return We.deleteFlairTemplate(s(this,pr),s(this,yi),s(this,Ai))}async edit(e){return We.editFlairTemplate({id:s(this,pr),subredditName:s(this,yi),text:e.text??s(this,bi),allowableContent:e.allowableContent??s(this,Si),backgroundColor:e.backgroundColor??s(this,ki),maxEmojis:e.maxEmojis??s(this,Ii),modOnly:e.modOnly??s(this,Ci),textColor:e.textColor??s(this,Pi),allowUserEdits:e.allowUserEdits??s(this,wi)},s(this,Ai))}static async createPostFlairTemplate(e,t){var i;return b(i=We,xi,Fd).call(i,{...e,flairType:"LINK_FLAIR"},t)}static async createUserFlairTemplate(e,t){var i;return b(i=We,xi,Fd).call(i,{...e,flairType:"USER_FLAIR"},t)}static async editFlairTemplate(e,t){var i;return b(i=We,xi,Fd).call(i,e,t)}static async getPostFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.LinkFlair({subreddit:e},t)).flair?.map(o=>new We(o,e,t))||[]}static async getUserFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.UserFlair({subreddit:e},t)).flair?.map(o=>new We(o,e,t))||[]}static async deleteFlairTemplate(e,t,i){await u.redditAPIPlugins.Flair.DeleteFlairTemplate({subreddit:e,flairTemplateId:t},i)}};pr=new WeakMap,yi=new WeakMap,bi=new WeakMap,Pi=new WeakMap,ki=new WeakMap,Si=new WeakMap,Ci=new WeakMap,Ii=new WeakMap,wi=new WeakMap,Ai=new WeakMap,xi=new WeakSet,Fd=async function(e,t){let{subredditName:i,allowableContent:n="all",backgroundColor:o="transparent",flairType:a="",maxEmojis:c=10,modOnly:p=!1,text:g,textColor:y="dark",allowUserEdits:m=!1,id:h=""}=e;if(p&&m)throw new Error("Cannot have a mod only flair that is editable by users");let C=await u.redditAPIPlugins.Flair.FlairTemplate({subreddit:i,allowableContent:n,backgroundColor:o,flairType:a,maxEmojis:c,modOnly:p,text:g,textColor:y,textEditable:m,flairTemplateId:h,cssClass:"",overrideCss:!1},t);return new We(C,i,t)},l(We,xi);var oe=We;function Ps(r){return{flairCssClass:r.flairCssClass,user:r.user,flairText:r.flairText}}var ys,Xc,bs,Zc,Rt=class Rt{static async getUserFlairBySubreddit(e,t){return u.redditAPIPlugins.Flair.FlairList(e,t)}static setUserFlair(e,t){var i;return b(i=Rt,ys,Xc).call(i,e,t)}static setPostFlair(e,t){var i;return b(i=Rt,ys,Xc).call(i,{...e,postId:pe(e.postId)},t)}static async removePostFlair(e,t,i){var n;return b(n=Rt,bs,Zc).call(n,e,t,void 0,i)}static async removeUserFlair(e,t,i){var n;return b(n=Rt,bs,Zc).call(n,e,void 0,t,i)}};ys=new WeakSet,Xc=async function(e,t){await u.redditAPIPlugins.Flair.SelectFlair({subreddit:e.subredditName,flairTemplateId:e.flairTemplateId??"",text:e.text??"",name:e.username,link:e.postId,backgroundColor:e.backgroundColor??"",textColor:e.textColor??"dark",cssClass:e.cssClass??"",returnRtjson:"none"},t)},bs=new WeakSet,Zc=async function(e,t,i,n){await u.redditAPIPlugins.Flair.SelectFlair({subreddit:e,name:i??"",link:t??"",flairTemplateId:"",backgroundColor:"",text:"",textColor:"",cssClass:"",returnRtjson:"none"},n)},l(Rt,ys),l(Rt,bs);var Re=Rt;function kR(r){if(f(r,"Flair text color is required"),r==="light"||r==="dark")return r;throw new Error(`Invalid flair text color: ${r}`)}function SR(r){if(f(r,"Flair background color is required"),r==="transparent"||/^#([A-Fa-f0-9]{6})$/.test(r))return r;throw new Error(`Invalid flair background color: ${r}`)}function CR(r){if(r==="all"||r==="text"||r==="emoji")return r;throw new Error(`Invalid allowable content: ${r}`)}import{Block as FR}from"@devvit/protos";var PP=Ko(bP(),1);var Ti,Ss,Ei,Cs,Is,ws,As,xs,Ri,Ts,Es,Rs,Fs,Os,Ms,Ft,fr,Fi,Ot,Oi,Mi,Li,hr,Mt,Lt,Bi,Bt,Ut,Dt,at,Ls,Bs,Ui,Di,B,N=class N{constructor(e,t){l(this,Ti,void 0);l(this,Ss,void 0);l(this,Ei,void 0);l(this,Cs,void 0);l(this,Is,void 0);l(this,ws,void 0);l(this,As,void 0);l(this,xs,void 0);l(this,Ri,void 0);l(this,Ts,void 0);l(this,Es,void 0);l(this,Rs,void 0);l(this,Fs,void 0);l(this,Os,void 0);l(this,Ms,void 0);l(this,Ft,void 0);l(this,fr,void 0);l(this,Fi,void 0);l(this,Ot,void 0);l(this,Oi,void 0);l(this,Mi,void 0);l(this,Li,void 0);l(this,hr,void 0);l(this,Mt,void 0);l(this,Lt,void 0);l(this,Bi,void 0);l(this,Bt,void 0);l(this,Ut,void 0);l(this,Dt,void 0);l(this,at,void 0);l(this,Ls,void 0);l(this,Bs,void 0);l(this,Ui,void 0);l(this,Di,void 0);l(this,B,void 0);V(this),f(e.id,"Post is missing id"),f(e.title,"Post is missing title"),f(e.createdUtc,"Post is missing created date"),f(e.author,"Post is missing author name"),f(e.subreddit,"Post is missing subreddit name"),f(e.subredditId,"Post is missing subreddit id"),f(e.url,"Post is missing url"),f(e.permalink,"Post is missing permalink"),d(this,Ti,pe(`t3_${e.id}`)),d(this,Ei,e.author),d(this,Ss,e.authorFullname?ee(e.authorFullname):void 0),d(this,Is,xe(e.subredditId)),d(this,ws,e.subreddit),d(this,Rs,e.score??0),d(this,Fs,e.numComments??0),d(this,Os,e.numReports??0);let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,Cs,i),d(this,xs,e.title),d(this,Ri,e.selftext),d(this,Ts,e.selftextHtml),d(this,Es,e.url),d(this,As,e.permalink),e.thumbnail&&e.thumbnail!=="self"&&e.thumbnail!=="nsfw"&&e.thumbnailHeight!=null&&e.thumbnailWidth!=null&&d(this,Ms,{url:e.thumbnail,height:e.thumbnailHeight,width:e.thumbnailWidth}),d(this,Ft,e.approved??!1),d(this,Ot,e.removed??!1),d(this,Oi,e.removedBy),d(this,Mi,e.removedByCategory),d(this,fr,e.spam??!1),d(this,Fi,e.stickied??!1),d(this,Li,e.archived??!1),d(this,hr,e.edited??!1),d(this,Mt,e.locked??!1),d(this,Lt,e.over18??!1),d(this,Bi,e.quarantine??!1),d(this,Bt,e.spoiler),d(this,Ut,e.hidden??!1),d(this,Dt,e.ignoreReports??!1),d(this,at,e.distinguished),d(this,Bs,e.secureMedia),d(this,Ui,(e.modReports??[]).map(([n])=>n)),d(this,Di,(e.userReports??[]).map(([n])=>n)),d(this,B,t),(e.linkFlairBackgroundColor||e.linkFlairCssClass||e.linkFlairText||e.linkFlairType||e.linkFlairTemplateId||e.linkFlairRichtext||e.linkFlairTextColor)&&d(this,Ls,{backgroundColor:e.linkFlairBackgroundColor,cssClass:e.linkFlairCssClass,text:e.linkFlairText,type:e.linkFlairType,templateId:e.linkFlairTemplateId,richtext:(e.linkFlairRichtext??[]).map(({e:n,t:o,a,u:c})=>({elementType:n,text:o,emojiRef:a,url:c})),textColor:e.linkFlairTextColor})}get id(){return s(this,Ti)}get authorId(){return s(this,Ss)}get authorName(){return s(this,Ei)}get subredditId(){return s(this,Is)}get subredditName(){return s(this,ws)}get permalink(){return s(this,As)}get title(){return s(this,xs)}get body(){return s(this,Ri)}get bodyHtml(){return s(this,Ts)}get url(){return s(this,Es)}get thumbnail(){return s(this,Ms)}get createdAt(){return s(this,Cs)}get score(){return s(this,Rs)}get numberOfComments(){return s(this,Fs)}get numberOfReports(){return s(this,Os)}get approved(){return s(this,Ft)}get spam(){return s(this,fr)}get stickied(){return s(this,Fi)}get removed(){return s(this,Ot)}get removedBy(){return s(this,Oi)}get removedByCategory(){return s(this,Mi)}get archived(){return s(this,Li)}get edited(){return s(this,hr)}get locked(){return s(this,Mt)}get nsfw(){return s(this,Lt)}get quarantined(){return s(this,Bi)}get spoiler(){return s(this,Bt)}get hidden(){return s(this,Ut)}get ignoringReports(){return s(this,Dt)}get distinguishedBy(){return s(this,at)}get comments(){return K.getComments({postId:this.id},s(this,B))}get flair(){return s(this,Ls)}get secureMedia(){return s(this,Bs)}get userReportReasons(){return s(this,Di)}get modReportReasons(){return s(this,Ui)}toJSON(){return{id:this.id,authorId:this.authorId,authorName:this.authorName,subredditId:this.subredditId,subredditName:this.subredditName,permalink:this.permalink,title:this.title,body:this.body,bodyHtml:this.bodyHtml,url:this.url,thumbnail:this.thumbnail,score:this.score,numberOfComments:this.numberOfComments,numberOfReports:this.numberOfReports,createdAt:this.createdAt,approved:this.approved,spam:this.spam,stickied:this.stickied,removed:this.removed,removedBy:s(this,Oi),removedByCategory:s(this,Mi),archived:this.archived,edited:this.edited,locked:this.locked,nsfw:this.nsfw,quarantined:this.quarantined,spoiler:this.spoiler,hidden:this.hidden,ignoringReports:this.ignoringReports,distinguishedBy:this.distinguishedBy,flair:this.flair,secureMedia:this.secureMedia,modReportReasons:s(this,Ui),userReportReasons:s(this,Di)}}isApproved(){return s(this,Ft)}isSpam(){return s(this,fr)}isStickied(){return s(this,Fi)}isRemoved(){return s(this,Ot)}isArchived(){return s(this,Li)}isEdited(){return s(this,hr)}isLocked(){return s(this,Mt)}isNsfw(){return s(this,Lt)}isQuarantined(){return s(this,Bi)}isSpoiler(){return s(this,Bt)}isHidden(){return s(this,Ut)}isIgnoringReports(){return s(this,Dt)}isDistinguishedBy(){return s(this,at)}async edit(e){let t=await N.edit({id:this.id,...e},s(this,B));d(this,Ri,t.body),d(this,hr,t.edited)}async addComment(e){return K.submit({id:this.id,...e},s(this,B))}async delete(){return N.delete(this.id,s(this,B))}async approve(){await N.approve(this.id,s(this,B)),d(this,Ft,!0),d(this,Ot,!1)}async remove(e=!1){await N.remove(this.id,e,s(this,B)),d(this,Ot,!0),d(this,fr,e),d(this,Ft,!1)}async lock(){await N.lock(this.id,s(this,B)),d(this,Mt,!0)}async unlock(){await N.unlock(this.id,s(this,B)),d(this,Mt,!1)}async hide(){await N.hide(this.id,s(this,B)),d(this,Ut,!0)}async unhide(){await N.unhide(this.id,s(this,B)),d(this,Ut,!1)}async markAsNsfw(){await N.markAsNsfw(this.id,s(this,B)),d(this,Lt,!0)}async unmarkAsNsfw(){await N.unmarkAsNsfw(this.id,s(this,B)),d(this,Lt,!1)}async markAsSpoiler(){await N.markAsSpoiler(this.id,s(this,B)),d(this,Bt,!0)}async unmarkAsSpoiler(){await N.unmarkAsSpoiler(this.id,s(this,B)),d(this,Bt,!1)}async sticky(e){await N.sticky(this.id,e,s(this,B))}async unsticky(){await N.unsticky(this.id,s(this,B))}async distinguish(){let{distinguishedBy:e}=await N.distinguish(this.id,!1,s(this,B));d(this,at,e)}async distinguishAsAdmin(){let{distinguishedBy:e}=await N.distinguish(this.id,!0,s(this,B));d(this,at,e)}async undistinguish(){let{distinguishedBy:e}=await N.undistinguish(this.id,s(this,B));d(this,at,e)}async ignoreReports(){await N.ignoreReports(this.id,s(this,B)),d(this,Dt,!0)}async unignoreReports(){await N.unignoreReports(this.id,s(this,B)),d(this,Dt,!1)}async getAuthor(){return I.getByUsername(s(this,Ei),s(this,B))}async crosspost(e){return N.crosspost({...e,postId:this.id},s(this,B))}addRemovalNote(e){return Ee.addRemovalNote({itemIds:[s(this,Ti)],...e},s(this,B))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,n=Kt(e)?e:`t3_${e}`,o=await i.Info({subreddits:[],thingIds:[n]},t);if(!o.data?.children?.length)throw new Error("could not find post");let a=o.data.children[0];if(!a?.data)throw new Error("could not find post");return new N(a.data,t)}static async submit(e,t){let i=u.redditAPIPlugins.LinksAndComments,n;if("preview"in e){f(t,"Missing metadata in `SubmitPostOptions`");let c=await new it(()=>e.preview,void 0,{},t,void 0).buildBlocksUI(),p=FR.encode(c).finish();n=await i.Submit({kind:"custom",sr:e.subredditName,richtextJson:(0,PP.fromByteArray)(p),...e},t)}else n=await i.Submit({kind:"kind"in e?e.kind:"url"in e?"link":"self",sr:e.subredditName,richtextJson:"richtext"in e?gi(e.richtext):void 0,...e},t);if("kind"in e&&["image","video","videogif"].includes(e.kind)&&!n.json?.data?.id&&"url"in e)throw new Error(`Post of ${e.kind} type with ${e.url} is being created asynchronously and should be updated in the subreddit soon.`);if(!n.json?.data?.id||n.json?.errors?.length)throw new Error(`failed to submit post - either post ID is empty or request failed with errors: ${n.json?.errors}`);return N.getById(`t3_${n.json.data.id}`,t)}static async crosspost(e,t){let i=u.redditAPIPlugins.LinksAndComments,{postId:n,subredditName:o,...a}=e,c=await i.Submit({kind:"crosspost",sr:o,crosspostFullname:pe(n),...a},t);if(!c.json?.data?.id||c.json?.errors?.length)throw new Error("failed to crosspost post");return N.getById(`t3_${c.json.data.id}`,t)}static async edit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:n}=e,o;if("richtext"in e&&(o=gi(e.richtext)),(await i.EditUserText({thingId:n,text:"text"in e?e.text:"",richtextJson:o},t)).json?.errors?.length)throw new Error("Failed to edit post");return N.getById(n,t)}static async delete(e,t){await u.redditAPIPlugins.LinksAndComments.Del({id:e},t)}static async approve(e,t){await u.redditAPIPlugins.Moderation.Approve({id:e},t)}static async remove(e,t=!1,i){await u.redditAPIPlugins.Moderation.Remove({id:e,spam:t},i)}static async hide(e,t){await u.redditAPIPlugins.LinksAndComments.Hide({id:e},t)}static async unhide(e,t){await u.redditAPIPlugins.LinksAndComments.Unhide({id:e},t)}static async markAsNsfw(e,t){await u.redditAPIPlugins.LinksAndComments.MarkNSFW({id:e},t)}static async unmarkAsNsfw(e,t){await u.redditAPIPlugins.LinksAndComments.UnmarkNSFW({id:e},t)}static async markAsSpoiler(e,t){await u.redditAPIPlugins.LinksAndComments.Spoiler({id:e},t)}static async unmarkAsSpoiler(e,t){await u.redditAPIPlugins.LinksAndComments.Unspoiler({id:e},t)}static async sticky(e,t,i){await u.redditAPIPlugins.LinksAndComments.SetSubredditSticky({id:e,state:!0,num:t},i)}static async unsticky(e,t){await u.redditAPIPlugins.LinksAndComments.SetSubredditSticky({id:e,state:!1},t)}static async lock(e,t){await u.redditAPIPlugins.LinksAndComments.Lock({id:e},t)}static async unlock(e,t){await u.redditAPIPlugins.LinksAndComments.Unlock({id:e},t)}static async distinguish(e,t,i){let a=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:t?"admin":"yes",sticky:!1},i)).json?.data?.things?.[0]?.data;return f(a),{distinguishedBy:a.distinguished}}static async undistinguish(e,t){let o=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:"no",sticky:!1},t)).json?.data?.things?.[0]?.data;return f(o),{distinguishedBy:o.distinguished}}static async ignoreReports(e,t){await u.redditAPIPlugins.Moderation.IgnoreReports({id:e},t)}static async unignoreReports(e,t){await u.redditAPIPlugins.Moderation.UnignoreReports({id:e},t)}static getControversialPosts(e={},t){return this.getSortedPosts({...e,sort:"controversial"},t)}static getTopPosts(e={},t){return this.getSortedPosts({...e,sort:"top"},t)}static getSortedPosts(e,t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.Sort({show:"all",sort:e.sort,t:e.timeframe,subreddit:e.subredditName,...n},t);return ks(o,t)}})}static getHotPosts(e={location:"GLOBAL"},t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.Hot({g:e.location,show:"all",subreddit:e.subredditName,...n},t);return ks(o,t)}})}static getNewPosts(e,t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.New({show:"all",subreddit:e.subredditName,...n},t);return ks(o,t)}})}static getRisingPosts(e,t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.Rising({show:"all",subreddit:e.subredditName,...n},t);return ks(o,t)}})}static getPostsByUser(e,t){let i=u.redditAPIPlugins.Users;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,async fetch(n){let o=await i.UserWhere({username:e.username,where:"submitted",...n},t);return ks(o,t)}})}};Ti=new WeakMap,Ss=new WeakMap,Ei=new WeakMap,Cs=new WeakMap,Is=new WeakMap,ws=new WeakMap,As=new WeakMap,xs=new WeakMap,Ri=new WeakMap,Ts=new WeakMap,Es=new WeakMap,Rs=new WeakMap,Fs=new WeakMap,Os=new WeakMap,Ms=new WeakMap,Ft=new WeakMap,fr=new WeakMap,Fi=new WeakMap,Ot=new WeakMap,Oi=new WeakMap,Mi=new WeakMap,Li=new WeakMap,hr=new WeakMap,Mt=new WeakMap,Lt=new WeakMap,Bi=new WeakMap,Bt=new WeakMap,Ut=new WeakMap,Dt=new WeakMap,at=new WeakMap,Ls=new WeakMap,Bs=new WeakMap,Ui=new WeakMap,Di=new WeakMap,B=new WeakMap;var z=N;function ks(r,e){if(!r.data?.children)throw new Error("Listing response is missing children");return{children:r.data.children.map(i=>new z(i.data,e)),before:r.data.before,after:r.data.after}}var Us,_i,Ds,_s,Ns,qs,Hs,_t,js,Ws,dt,vr=class vr{constructor(e,t){l(this,Us,void 0);l(this,_i,void 0);l(this,Ds,void 0);l(this,_s,void 0);l(this,Ns,void 0);l(this,qs,void 0);l(this,Hs,void 0);l(this,_t,new Map);l(this,js,void 0);l(this,Ws,void 0);l(this,dt,void 0);V(this),f(e.id,"User ID is missing or undefined"),f(e.name,"Username is missing or undefined"),f(e.createdUtc,"User is missing created date"),d(this,Us,ee(Na(e.id)?e.id:`t2_${e.id}`)),d(this,_i,e.name),d(this,qs,e.over18??!1),d(this,Hs,e.isEmployee??!1);let i=new Date(0);if(i.setUTCSeconds(e.createdUtc),d(this,Ds,i),d(this,_s,e.linkKarma??0),d(this,Ns,e.commentKarma??0),e.modPermissions)for(let[n,o]of Object.entries(e.modPermissions))s(this,_t).set(n,hP(o));d(this,js,new URL(e.subreddit?.url??"","https://www.reddit.com").toString()),d(this,Ws,e.subreddit?.url??""),d(this,dt,t)}get id(){return s(this,Us)}get username(){return s(this,_i)}get createdAt(){return s(this,Ds)}get linkKarma(){return s(this,_s)}get commentKarma(){return s(this,Ns)}get nsfw(){return s(this,qs)}get isAdmin(){return s(this,Hs)}get modPermissions(){return s(this,_t)}get url(){return s(this,js)}get permalink(){return s(this,Ws)}toJSON(){return{id:this.id,username:this.username,createdAt:this.createdAt,linkKarma:this.linkKarma,commentKarma:this.commentKarma,nsfw:this.nsfw,modPermissionsBySubreddit:Object.fromEntries(this.modPermissions)}}async getModPermissionsForSubreddit(e){if(s(this,_t).has(e))return s(this,_t).get(e);let t=await vr.getSubredditUsersByType({subredditName:e,type:"moderators",username:this.username},s(this,dt)).all();if(t.length===0)return[];let i=t[0].modPermissions.get(e)??[];return i.length>0&&s(this,_t).set(e,i),i}getComments(e){return K.getCommentsByUser({username:this.username,...e},s(this,dt))}getPosts(e){return z.getPostsByUser({username:this.username,...e},s(this,dt))}async getUserFlairBySubreddit(e){let t=await Re.getUserFlairBySubreddit({subreddit:e,name:s(this,_i)},s(this,dt));return t.users[0]?Ps(t.users[0]):void 0}getSnoovatarUrl(){return vr.getSnoovatarUrl(this.username,s(this,dt))}static async getById(e,t){let o=(await u.redditAPIPlugins.Users.UserDataByAccountIds({ids:e},t))?.users?.[e]?.name;return f(o,"Expected the username in response to be not null"),vr.getByUsername(o,t)}static async getByUsername(e,t){let n=await u.redditAPIPlugins.Users.UserAbout({username:e},t);if(!n.data?.id)throw new Error("failed to get user");return new vr(n.data,t)}static async getFromMetadata(e,t){f(t);let i=t?.[e]?.values[0];return i?vr.getById(ee(i),t):Promise.resolve(void 0)}static getSubredditUsersByType(e,t){let i=u.redditAPIPlugins.Subreddits;return new H({hasMore:!0,pageSize:e.pageSize,limit:e.limit,after:e.after,before:e.before,fetch:async n=>{let o=await i.AboutWhere({where:e.type,user:e.username,subreddit:e.subredditName,show:"all",...n},t);return MR(o,e.subredditName,t)}})}static async createRelationship(e,t){let i=u.redditAPIPlugins.Users,{type:n,subredditName:o,username:a,permissions:c,...p}=e,g=await i.Friend({type:n,subreddit:o,name:a,permissions:c?Kc(c):void 0,...p},t);if(g.json?.errors?.length)throw new Error(g.json.errors.join(`
4
- `))}static async removeRelationship(e,t){await u.redditAPIPlugins.Users.Unfriend({type:e.type,subreddit:e.subredditName,name:e.username},t)}static async setModeratorPermissions(e,t,i,n){let a=await u.redditAPIPlugins.Users.SetPermissions({subreddit:t,name:e,type:"moderator",permissions:Kc(i)},n);if(a.json?.errors?.length)throw new Error(a.json.errors.join(`
5
- `))}static async getSnoovatarUrl(e,t){let i="GetSnoovatarUrlByName",n="c47fd42345af268616d2d8904b56856acdc05cf61d3650380f539ad7d596ac0c";return(await vi.query(i,n,{username:e},t)).data?.redditorInfoByName?.snoovatarIcon?.url}static getOverview(e,t){let i=u.redditAPIPlugins.Users;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,async fetch(n){let o=await i.UserWhere({username:e.username,where:"overview",...n},t);return OR(o,t)}})}};Us=new WeakMap,_i=new WeakMap,Ds=new WeakMap,_s=new WeakMap,Ns=new WeakMap,qs=new WeakMap,Hs=new WeakMap,_t=new WeakMap,js=new WeakMap,Ws=new WeakMap,dt=new WeakMap;var I=vr;function OR(r,e){if(!r.data?.children)throw new Error("Listing response is missing children");return{children:r.data.children.map(i=>{if(i.kind==="t3")return new z(i.data,e);if(i.kind==="t1")return new K(i.data,e);throw new Error(`Type ${i.kind} is not supported`)}),before:r.data.before,after:r.data.after}}async function MR(r,e,t){let i=u.redditAPIPlugins.Users;if(!r.data?.children)throw new Error("Listing response is missing children");let n=r.data.children.map(y=>(f(y.data?.id,"User id is still from listing data"),y.data.id)),o=100,a=[];for(let y=0;y<n.length;y+=o)a.push(n.slice(y,y+o));let p=(await Promise.all(a.map(y=>i.UserDataByAccountIds({ids:y.join(",")},t)))).reduce((y,m)=>({...y,...m.users}),{});return{children:r.data.children.map(y=>{let m=y.data?.id;f(m,"User id is missing from listing");let h=p[m];return f(h,"User data is missing from response"),new I({id:m,name:h.name,linkKarma:h.linkKarma,commentKarma:h.commentKarma,createdUtc:h.createdUtc,over18:h.profileOver18,snoovatarSize:[],modPermissions:{[e]:y.data?.modPermissions??[]}},t)}),before:r.data.before,after:r.data.after}}var yr,Gs,Ni,qi,zs,Vs,Hi,Js,$s,ji,Nt,br,qt,Ht,lt,Pr,ut,Ks,Xs,Zs,Ys,Qs,eo,to,Z,Wi,Md,Gi,Ld,j=class j{constructor(e,t){l(this,yr,void 0);l(this,Gs,void 0);l(this,Ni,void 0);l(this,qi,void 0);l(this,zs,void 0);l(this,Vs,void 0);l(this,Hi,void 0);l(this,Js,void 0);l(this,$s,void 0);l(this,ji,void 0);l(this,Nt,void 0);l(this,br,void 0);l(this,qt,void 0);l(this,Ht,void 0);l(this,lt,void 0);l(this,Pr,void 0);l(this,ut,void 0);l(this,Ks,void 0);l(this,Xs,void 0);l(this,Zs,void 0);l(this,Ys,void 0);l(this,Qs,void 0);l(this,eo,void 0);l(this,to,void 0);l(this,Z,void 0);var n;V(this),f(e.id,"Comment id is null or undefined"),f(e.body,"Comment body is null or undefined"),f(e.createdUtc,"Comment is missing created date"),f(e.author,"Comment author is null or undefined"),f(e.parentId,"Comment parentId is null or undefined"),f(e.linkId,"Comment linkId is null or undefined"),f(e.permalink,"Comment permalink is null or undefined"),f(e.subreddit,"Comment is missing subreddit name"),f(e.subredditId,"Comment is missing subreddit id"),d(this,yr,Br(`t1_${e.id}`)),d(this,Gs,e.authorFullname?ee(e.authorFullname):void 0),d(this,Ni,e.author),d(this,qi,e.body),d(this,Js,xe(e.subredditId)),d(this,$s,e.subreddit),d(this,Vs,Zu(e.parentId)?Br(e.parentId):pe(e.parentId)),d(this,Hi,pe(e.linkId)),d(this,br,e.edited??!1),d(this,qt,e.locked??!1),d(this,Ht,e.removed??!1),d(this,lt,e.stickied??!1),d(this,Nt,e.approved??!1),d(this,Pr,e.spam??!1),d(this,ut,e.distinguished),d(this,Ks,e.numReports??0),d(this,Xs,e.collapsedBecauseCrowdControl??!1),d(this,Zs,e.score??0),d(this,Ys,e.permalink),d(this,to,new URL(e.permalink??"","https://www.reddit.com/").toString()),d(this,Qs,(e.modReports??[]).map(([o])=>o)),d(this,eo,(e.userReports??[]).map(([o])=>o));let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,zs,i),d(this,ji,b(n=j,Wi,Md).call(n,{postId:s(this,Hi),commentId:s(this,yr)},t)),d(this,Z,t)}get id(){return s(this,yr)}get authorId(){return s(this,Gs)}get authorName(){return s(this,Ni)}get subredditId(){return s(this,Js)}get subredditName(){return s(this,$s)}get body(){return s(this,qi)}get createdAt(){return s(this,zs)}get parentId(){return s(this,Vs)}get postId(){return s(this,Hi)}get replies(){return s(this,ji)}get distinguishedBy(){return s(this,ut)}get locked(){return s(this,qt)}get stickied(){return s(this,lt)}get removed(){return s(this,Ht)}get approved(){return s(this,Nt)}get spam(){return s(this,Pr)}get edited(){return s(this,br)}get numReports(){return s(this,Ks)}get collapsedBecauseCrowdControl(){return s(this,Xs)}get score(){return s(this,Zs)}get permalink(){return s(this,Ys)}get userReportReasons(){return s(this,eo)}get modReportReasons(){return s(this,Qs)}get url(){return s(this,to)}toJSON(){return{id:this.id,authorName:this.authorName,subredditId:this.subredditId,subredditName:this.subredditName,body:this.body,createdAt:this.createdAt,parentId:this.parentId,postId:this.postId,replies:this.replies,approved:this.approved,locked:this.locked,removed:this.removed,stickied:this.stickied,spam:this.spam,edited:this.edited,distinguishedBy:this.distinguishedBy,numReports:this.numReports,collapsedBecauseCrowdControl:this.collapsedBecauseCrowdControl,score:this.score,permalink:this.permalink,modReportReasons:this.modReportReasons,userReportReasons:this.userReportReasons,url:this.url}}isLocked(){return s(this,qt)}isApproved(){return s(this,Nt)}isRemoved(){return s(this,Ht)}isSpam(){return s(this,Pr)}isStickied(){return s(this,lt)}isDistinguished(){return!!s(this,ut)}isEdited(){return s(this,br)}async delete(){return j.delete(this.id,s(this,Z))}async edit(e){let t=await j.edit({id:this.id,...e},s(this,Z));return d(this,qi,t.body),d(this,br,t.edited),this}async approve(){await j.approve(this.id,s(this,Z)),d(this,Nt,!0),d(this,Ht,!1)}async remove(e=!1){await j.remove(this.id,e,s(this,Z)),d(this,Ht,!0),d(this,Pr,e),d(this,Nt,!1)}async lock(){await j.lock(this.id,s(this,Z)),d(this,qt,!0)}async unlock(){await j.unlock(this.id,s(this,Z)),d(this,qt,!1)}async reply(e){return j.submit({id:this.id,...e},s(this,Z))}async getAuthor(){return I.getByUsername(s(this,Ni),s(this,Z))}async distinguish(e=!1){let{distinguishedBy:t,stickied:i}=await j.distinguish(this.id,e,!1,s(this,Z));d(this,ut,t),d(this,lt,i)}async distinguishAsAdmin(e=!1){let{distinguishedBy:t,stickied:i}=await j.distinguish(this.id,e,!0,s(this,Z));d(this,ut,t),d(this,lt,i)}async undistinguish(){let{distinguishedBy:e,stickied:t}=await j.undistinguish(this.id,s(this,Z));d(this,ut,e),d(this,lt,t)}addRemovalNote(e){return Ee.addRemovalNote({itemIds:[s(this,yr)],...e},s(this,Z))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,n=ft(e)?e:`t1_${e}`,o=await i.Info({subreddits:[],thingIds:[n]},t);if(!o.data?.children?.[0]?.data)throw new Error("not found");return new j(o.data.children[0].data,t)}static getComments(e,t){var a;let{postId:i,commentId:n,...o}=e;return b(a=j,Wi,Md).call(a,{postId:pe(i),commentId:n?Br(n):void 0,...o},t)}static async edit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:n}=e,o;"richtext"in e&&(o=gi(e.richtext));let a=await i.EditUserText({thingId:n,text:"text"in e?e.text:"",richtextJson:o},t);if(a.json?.errors?.length)throw new Error("Failed to edit comment");let c=a.json?.data?.things?.[0]?.data;return f(c),new j(c,t)}static async delete(e,t){await u.redditAPIPlugins.LinksAndComments.Del({id:e},t)}static async approve(e,t){await u.redditAPIPlugins.Moderation.Approve({id:e},t)}static async remove(e,t=!1,i){await u.redditAPIPlugins.Moderation.Remove({id:e,spam:t},i)}static async lock(e,t){await u.redditAPIPlugins.LinksAndComments.Lock({id:e},t)}static async unlock(e,t){await u.redditAPIPlugins.LinksAndComments.Unlock({id:e},t)}static async submit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:n}=e,o;"richtext"in e&&(o=gi(e.richtext));let a=await i.Comment({thingId:n,text:"text"in e?e.text:"",richtextJson:o},t);if(a.json?.errors?.length)throw new Error("failed to reply to comment");let c=a.json?.data?.things?.[0]?.data;return f(c),new j(c,t)}static async distinguish(e,t,i,n){let c=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:i?"admin":"yes",sticky:t},n)).json?.data?.things?.[0]?.data;return f(c),{distinguishedBy:c.distinguished,stickied:!!c.stickied}}static async undistinguish(e,t){let o=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:"no",sticky:!1},t)).json?.data?.things?.[0]?.data;return f(o),{distinguishedBy:o.distinguished,stickied:!!o.stickied}}static getCommentsByUser(e,t){let i=u.redditAPIPlugins.Users;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,async fetch(n){let o=await i.UserWhere({username:e.username,where:"comments",...n},t);return f(o.data,"Failed to get comments for user"),{children:o.data.children?.map(c=>new j(c.data,t))||[],before:o.data.before,after:o.data.after}}})}};yr=new WeakMap,Gs=new WeakMap,Ni=new WeakMap,qi=new WeakMap,zs=new WeakMap,Vs=new WeakMap,Hi=new WeakMap,Js=new WeakMap,$s=new WeakMap,ji=new WeakMap,Nt=new WeakMap,br=new WeakMap,qt=new WeakMap,Ht=new WeakMap,lt=new WeakMap,Pr=new WeakMap,ut=new WeakMap,Ks=new WeakMap,Xs=new WeakMap,Zs=new WeakMap,Ys=new WeakMap,Qs=new WeakMap,eo=new WeakMap,to=new WeakMap,Z=new WeakMap,Wi=new WeakSet,Md=function(e,t,i=0){return new H({limit:e.limit,pageSize:e.pageSize,fetch:async n=>{var h,k;let o=n.limit,a=u.redditAPIPlugins.Listings,c=u.redditAPIPlugins.LinksAndComments,p=e.commentId;if(n.more)if(n.more.children.length){let C=n.more;(!o||o>100)&&(o=100);let w=C.children.splice(0,o),A=await c.MoreChildren({linkId:e.postId,children:w,sort:e.sort},t);if(!A.json?.data?.things?.length)return{children:[]};let{children:U}=b(h=j,Gi,Ld).call(h,A.json.data.things,e.postId,e,t);return{children:U,more:C.children.length?C:void 0}}else p=n.more.parentId,i=i+n.more.depth;let y=(await a.Comments({article:e.postId.substring(3),comment:p?.substring(3),limit:o,depth:e.depth,sort:e.sort},t)).listings?.[1]?.data?.children??[],m=y[0];return p&&m?.data?.replyList?.data&&(y=m.data.replyList.data.children),b(k=j,Gi,Ld).call(k,y,p??e.postId,e,t,i)}})},Gi=new WeakSet,Ld=function(e,t,i,n,o=0){var g,y;let a=[],c,p={};for(let m of e){if(!m.data||(m.data.depth!=null&&(m.data.depth=m.data.depth+o),m.data.depth!=null&&i.depth!=null&&m.data.depth>=i.depth))continue;let h=m.data.parentId?p[m.data.parentId]:void 0;if(m.kind==="t1"){if(m.data.name===t)continue;let k=new j(m.data,n);if(p[k.id]=k,d(k,ji,b(g=j,Wi,Md).call(g,{...i,postId:k.postId,commentId:k.id},n,o)),"replyList"in m.data&&m.data.replyList?.data){let{children:C,more:w}=b(y=j,Gi,Ld).call(y,m.data.replyList.data.children,k.id,i,n,o);C.length&&k.replies.children.push(...C),w&&k.replies.setMore(w)}k.replies.preventInitialFetch(),h?h.replies.children.push(k):a.push(k)}else if(m.kind==="more"&&m.data.parentId&&m.data.depth!=null){let k={parentId:Zu(m.data.parentId)?Br(m.data.parentId):pe(m.data.parentId),children:m.data.children??[],depth:m.data.depth};h?h.replies.setMore(k):k.parentId===t&&(c=k)}}return{children:a,more:c}},l(j,Wi),l(j,Gi);var K=j;function Wa(r,e){let t=u.redditAPIPlugins.Moderation;return new H({hasMore:!0,after:r.after,before:r.before,limit:r.limit,pageSize:r.pageSize,fetch:async i=>{let n=await t.AboutLog({subreddit:r.subredditName,mod:r.moderatorUsernames?r.moderatorUsernames.join(","):void 0,type:r.type,...i},e);return LR(n)}})}function LR(r){if(!r.data?.children)throw new Error("AboutLogResponse is missing children");return{children:r.data.children.map(t=>{if(!t.data)throw new Error("ModAction from AboutLogResponse is missing or invalid");let{id:i,mod:n,modId36:o,createdUtc:a,subreddit:c,subredditNamePrefixed:p,action:g,srId36:y,description:m,details:h,targetAuthor:k,targetBody:C,targetFullname:w,targetPermalink:A,targetTitle:U}=t.data;f(i,"ModAction from AboutLogResponse is missing id"),f(n,"ModAction from AboutLogResponse is missing mod"),f(o,"ModAction from AboutLogResponse is missing modId36"),f(a,"ModAction from AboutLogResponse is missing createdUtc"),f(c,"ModAction from AboutLogResponse is missing subreddit"),f(p,"ModAction from AboutLogResponse is missing subredditNamePrefixed"),f(g,"ModAction from AboutLogResponse is missing action"),f(y,"ModAction from AboutLogResponse is missing srId36");let ze=new Date(0);return ze.setUTCSeconds(a),{id:i,type:g,moderatorName:n,moderatorId:`t2_${o}`,createdAt:ze,subredditName:c,subredditId:`t5_${y}`,description:m,details:h,target:w?{id:w,author:k,body:C,permalink:A,title:U}:void 0}}),after:r.data.after,before:r.data.before}}var BR=(a=>(a.New="New",a.InProgress="InProgress",a.Archived="Archived",a.Appeals="Appeals",a.JoinRequests="JoinRequests",a.Filtered="Filtered",a))(BR||{}),UR={0:"New",1:"InProgress",2:"Archived",3:"Appeals",4:"JoinRequests",5:"Filtered"},DR=(k=>(k.Highlighted="Highlighted",k.Unhighlighted="Unhighlighted",k.Archived="Archived",k.Unarchived="Unarchived",k.ReportedToAdmins="ReportedToAdmins",k.Muted="Muted",k.Unmuted="Unmuted",k.Banned="Banned",k.Unbanned="Unbanned",k.Approved="Approved",k.Disapproved="Disapproved",k.Filtered="Filtered",k.Unfiltered="Unfiltered",k))(DR||{}),_R={0:"Highlighted",1:"Unhighlighted",2:"Archived",3:"Unarchived",4:"ReportedToAdmins",5:"Muted",6:"Unmuted",7:"Banned",8:"Unbanned",9:"Approved",10:"Disapproved",11:"Filtered",12:"Unfiltered"},G,X,ie,Bd,kP,Ud,SP,Ga=class{constructor(e){l(this,X);l(this,Bd);l(this,Ud);l(this,G,void 0);d(this,G,e)}async bulkReadConversations(e,t){let i=u.redditAPIPlugins.NewModmail,{conversationIds:n}=await i.BulkReadConversations({entity:e.join(","),state:t},s(this,G));return n}async getConversations(e){let i=await u.redditAPIPlugins.NewModmail.GetConversations({after:e.after,entity:e.subreddits?e.subreddits.join(","):void 0,limit:e.limit,sort:e.sort,state:e.state},s(this,G)),n={};for(let o in i.conversations)n[o]=b(this,X,ie).call(this,{protoConversation:i.conversations[o],protoMessages:i.messages,protoModActions:{}});return{conversations:n,viewerId:i.viewerId}}async getConversation(e){let i=await u.redditAPIPlugins.NewModmail.GetConversation({...e,markRead:!!e.markRead},s(this,G));return{participantSubreddit:i.participantSubreddit,conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async getSubreddits(){let e=u.redditAPIPlugins.NewModmail,{subreddits:t}=await e.Subreddits({},s(this,G));return t}async createConversation(e){let i=await u.redditAPIPlugins.NewModmail.CreateConversation({body:e.body,isAuthorHidden:e.isAuthorHidden??!1,srName:e.subredditName,subject:e.subject,to:e.to?e.to:void 0},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async reply(e){let i=await u.redditAPIPlugins.NewModmail.CreateConversationMessage({body:e.body,conversationId:e.conversationId,isAuthorHidden:e.isAuthorHidden??!1,isInternal:e.isInternal??!1},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:{}}),user:i.user}}async highlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.HighlightConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unhighlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnhighlightConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async archiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ArchiveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unarchiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnarchiveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async muteConversation(e){let i=await u.redditAPIPlugins.NewModmail.MuteConversation({conversationId:e.conversationId,numHours:e.numHours},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async unmuteConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnmuteConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async readConversations(e){await u.redditAPIPlugins.NewModmail.Read({conversationIds:e.join(",")},s(this,G))}async unreadConversations(e){await u.redditAPIPlugins.NewModmail.Unread({conversationIds:e.join(",")},s(this,G))}async approveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ApproveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async disapproveConversation(e){let i=await u.redditAPIPlugins.NewModmail.DisapproveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async tempBanConversation(e){let i=await u.redditAPIPlugins.NewModmail.TempBan({...e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async unbanConversation(e){let i=await u.redditAPIPlugins.NewModmail.Unban({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async getUnreadCount(){return await u.redditAPIPlugins.NewModmail.UnreadCount({},s(this,G))}async getUserConversations(e){return await u.redditAPIPlugins.NewModmail.UserConversations({conversationId:e},s(this,G))}};G=new WeakMap,X=new WeakSet,ie=function({protoConversation:e,protoMessages:t,protoModActions:i}){return{...e,state:UR[e.state],messages:b(this,Bd,kP).call(this,e,t),modActions:b(this,Ud,SP).call(this,e,i)}},Bd=new WeakSet,kP=function(e,t){let i={},n=e.objIds.filter(o=>o.key==="messages").map(({id:o})=>o);for(let o of n){let a=t[o];a&&(i[o]=a)}return i},Ud=new WeakSet,SP=function(e,t){let i={},n=e.objIds.filter(o=>o.key==="modActions").map(({id:o})=>o);for(let o of n){let a=t[o];a&&(i[o]={...a,actionType:_R[a.actionTypeId]})}return i};var zi,Vi,Dd,ro,io,no,so,Qc=class Qc{constructor(e,t){l(this,zi,void 0);l(this,Vi,void 0);l(this,Dd,void 0);l(this,ro,void 0);l(this,io,void 0);l(this,no,void 0);l(this,so,void 0);if(V(this),f(e.id,"PrivateMessage: Invalid data, no id"),f(e.name,"PrivateMessage: Invalid data, no name"),f(e.created,"PrivateMessage: Invalid data, no created date"),d(this,zi,ge(e.name)),e.author!=null)d(this,Vi,{type:"user",username:e.author,id:e.authorFullname?ee(e.authorFullname):void 0});else if(e.subreddit!=null)d(this,Vi,{type:"subreddit",name:e.subreddit,id:e.subredditId?xe(e.subredditId):void 0});else throw new Error("PrivateMessage: Invalid data, no author or subreddit");d(this,ro,e.body??""),d(this,io,e.bodyHtml??"");let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,no,i),d(this,Dd,e.parentId?ge(e.parentId):void 0),d(this,so,t)}static async getMessages(e,t){let i=u.redditAPIPlugins.PrivateMessages;return new H({...e,fetch:async n=>{let o=await i.MessageWhere({...n,where:e.type??"inbox"},t);return{after:o.data?.after,before:o.data?.before,children:o.data?.children?.map(a=>new Qc(a.data,t)).filter(Boolean)||[]}}})}static async send({to:e,subject:t,text:i},n){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,subject:t,text:i,fromSr:""},n)}static async sendAsSubreddit({to:e,fromSubredditName:t,subject:i,text:n},o){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,fromSr:t,subject:i,text:n},o)}static async markAllAsRead(e){await u.redditAPIPlugins.PrivateMessages.ReadAllMessages({filterTypes:""},e)}get id(){return s(this,zi)}get from(){return s(this,Vi)}get body(){return s(this,ro)}get bodyHtml(){return s(this,io)}get created(){return s(this,no)}async markAsRead(){await u.redditAPIPlugins.PrivateMessages.ReadMessage({id:s(this,zi)},s(this,so))}};zi=new WeakMap,Vi=new WeakMap,Dd=new WeakMap,ro=new WeakMap,io=new WeakMap,no=new WeakMap,so=new WeakMap;var Yt=Qc;var cv=(o=>(o.Reports="reports",o.Spam="spam",o.Modqueue="modqueue",o.Unmoderated="unmoderated",o.Edited="edited",o))(cv||{}),Ji,x,oo,ao,lo,uo,co,mo,po,go,fo,$i,T,Ye=class Ye{constructor(e,t){l(this,Ji,void 0);l(this,x,void 0);l(this,oo,void 0);l(this,ao,void 0);l(this,lo,void 0);l(this,uo,void 0);l(this,co,void 0);l(this,mo,void 0);l(this,po,void 0);l(this,go,void 0);l(this,fo,void 0);l(this,$i,void 0);l(this,T,void 0);V(this),f(e.id,"Subreddit id is missing or undefined"),f(e.displayName,"Subreddit name is missing or undefined"),d(this,Ji,xe(`t5_${e.id}`)),d(this,x,e.displayName),f(e.createdUtc,"Subreddit is missing created date");let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,oo,i),d(this,ao,NR(e.subredditType)),d(this,lo,e.title),d(this,uo,e.description),f(e.lang,"Subreddit is missing language"),d(this,co,e.lang),d(this,mo,e.subscribers??0),d(this,po,e.activeUserCount??0),d(this,go,e.over18??!1),d(this,$i,e.url??""),d(this,fo,{acceptFollowers:e.acceptFollowers??!1,allOriginalContent:e.allOriginalContent??!1,allowChatPostCreation:e.allowChatPostCreation??!1,allowDiscovery:e.allowDiscovery??!1,allowGalleries:e.allowGalleries??!1,allowImages:e.allowImages??!1,allowPolls:e.allowPolls??!1,allowPredictionContributors:e.allowPredictionContributors??!1,allowPredictions:e.allowPredictions??!1,allowPredictionsTournament:e.allowPredictionsTournament??!1,allowTalks:e.allowTalks??!1,allowVideoGifs:e.allowVideogifs??!1,allowVideos:e.allowVideos??!1,chatPostEnabled:e.isChatPostFeatureEnabled??!1,collectionsEnabled:e.collectionsEnabled??!1,crosspostable:e.isCrosspostableSubreddit??!1,emojisEnabled:e.emojisEnabled??!1,eventPostsEnabled:e.eventPostsEnabled??!1,linkFlairEnabled:e.linkFlairEnabled??!1,originalContentTagEnabled:e.originalContentTagEnabled??!1,restrictCommenting:e.restrictCommenting??!1,restrictPosting:e.restrictPosting??!1,shouldArchivePosts:e.shouldArchivePosts??!1,spoilersEnabled:e.spoilersEnabled??!1,wikiEnabled:e.wikiEnabled??!1,allowedPostType:qR(e.submissionType),allowedMediaInComments:e.allowedMediaInComments.map(HR),bannerBackgroundColor:e.bannerBackgroundColor,bannerBackgroundImage:e.bannerBackgroundImage,bannerImage:e.bannerImg,communityIcon:e.communityIcon,headerTitle:e.headerTitle,mobileBannerImage:e.mobileBannerImage,userFlairs:{enabled:e.userFlairEnabledInSr??!1,usersCanAssign:e.canAssignUserFlair??!1},postFlairs:{enabled:e.linkFlairEnabled??!1,usersCanAssign:e.canAssignLinkFlair??!1},url:new URL(s(this,$i),"https://www.reddit.com").toString()}),d(this,T,t)}get id(){return s(this,Ji)}get name(){return s(this,x)}get createdAt(){return s(this,oo)}get type(){return s(this,ao)}get title(){return s(this,lo)}get description(){return s(this,uo)}get language(){return s(this,co)}get numberOfSubscribers(){return s(this,mo)}get numberOfActiveUsers(){return s(this,po)}get nsfw(){return s(this,go)}get settings(){return s(this,fo)}get userFlairsEnabled(){return this.settings.userFlairs.enabled}get postFlairsEnabled(){return this.settings.postFlairs.enabled}get usersCanAssignUserFlairs(){return this.settings.userFlairs.usersCanAssign}get usersCanAssignPostFlairs(){return this.settings.postFlairs.usersCanAssign}get url(){return this.settings.url}get permalink(){return s(this,$i)}toJSON(){return{id:this.id,name:this.name,createdAt:this.createdAt,type:this.type,title:this.title,description:this.description,language:this.language,nsfw:this.nsfw,numberOfSubscribers:this.numberOfSubscribers,numberOfActiveUsers:this.numberOfActiveUsers,settings:this.settings}}async submitPost(e){let t={...e,subredditName:s(this,x)};return z.submit(t,s(this,T))}getControversialPosts(e={}){if(!s(this,x))throw new Error("subreddit missing displayName - it might not have been fetched");return z.getControversialPosts({...e,subredditName:s(this,x)},s(this,T))}getTopPosts(e={}){if(!s(this,x))throw new Error("subreddit missing displayName - it might not have been fetched");return z.getTopPosts({...e,subredditName:s(this,x)},s(this,T))}getApprovedUsers(e={}){return I.getSubredditUsersByType({type:"contributors",subredditName:s(this,x),...e},s(this,T))}approveUser(e){return I.createRelationship({username:e,subredditName:s(this,x),type:"contributor"},s(this,T))}removeUser(e){return I.removeRelationship({username:e,subredditName:s(this,x),type:"contributor"},s(this,T))}getWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikicontributors",subredditName:s(this,x),...e},s(this,T))}addWikiContributor(e){return I.createRelationship({username:e,subredditName:s(this,x),type:"wikicontributor"},s(this,T))}removeWikiContributor(e){return I.removeRelationship({username:e,subredditName:s(this,x),type:"wikicontributor"},s(this,T))}getBannedUsers(e={}){return I.getSubredditUsersByType({type:"banned",subredditName:s(this,x),...e},s(this,T))}banUser(e){return I.createRelationship({username:e.username,subredditName:s(this,x),type:"banned",banReason:e.reason,banMessage:e.message,note:e.note,duration:e.duration},s(this,T))}unbanUser(e){return I.removeRelationship({username:e,subredditName:s(this,x),type:"banned"},s(this,T))}getBannedWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikibanned",subredditName:s(this,x),...e},s(this,T))}banWikiContributor(e){return I.createRelationship({username:e.username,subredditName:s(this,x),type:"wikibanned",banReason:e.reason,note:e.note,duration:e.duration},s(this,T))}unbanWikiContributor(e){return I.removeRelationship({username:e,subredditName:s(this,x),type:"wikibanned"},s(this,T))}getModerators(e={}){return I.getSubredditUsersByType({type:"moderators",subredditName:s(this,x),...e},s(this,T))}inviteModerator(e,t){return I.createRelationship({type:"moderator_invite",subredditName:s(this,x),username:e,permissions:t??[]},s(this,T))}revokeModeratorInvite(e){return I.removeRelationship({username:e,subredditName:s(this,x),type:"moderator_invite"},s(this,T))}removeModerator(e){return I.removeRelationship({type:"moderator",subredditName:s(this,x),username:e},s(this,T))}setModeratorPermissions(e,t){return I.setModeratorPermissions(e,s(this,x),t,s(this,T))}getMutedUsers(e={}){return I.getSubredditUsersByType({type:"muted",subredditName:s(this,x),...e},s(this,T))}muteUser(e,t){return I.createRelationship({username:e,subredditName:s(this,x),type:"muted",note:t},s(this,T))}unmuteUser(e){return I.removeRelationship({username:e,subredditName:s(this,x),type:"muted"},s(this,T))}getModerationLog(e){return Wa({subredditName:s(this,x),...e},s(this,T))}getUserFlairTemplates(){return oe.getUserFlairTemplates(s(this,x),s(this,T))}getPostFlairTemplates(){return oe.getPostFlairTemplates(s(this,x),s(this,T))}createPostFlairTemplate(e){return oe.createPostFlairTemplate({subredditName:s(this,x),...e},s(this,T))}createUserFlairTemplate(e){return oe.createUserFlairTemplate({subredditName:s(this,x),...e},s(this,T))}async getUserFlair(e){if(e?.usernames!==void 0)return{users:await Promise.all(e.usernames.map(async i=>{let n=await Re.getUserFlairBySubreddit({subreddit:s(this,x),name:i},s(this,T));return Ps(n.users[0])}))};{let t=await Re.getUserFlairBySubreddit({...e,subreddit:s(this,x)},s(this,T));return{next:t.next,prev:t.prev,users:t.users.map(i=>Ps(i))}}}getModQueue(e={type:"all"}){return Ye.aboutLocation({...e,location:"modqueue",subreddit:s(this,x)},s(this,T))}getReports(e={type:"all"}){return Ye.aboutLocation({...e,location:"reports",subreddit:s(this,x)},s(this,T))}getSpam(e={type:"all"}){return Ye.aboutLocation({...e,location:"spam",subreddit:s(this,x)},s(this,T))}getUnmoderated(e={type:"all"}){return Ye.aboutLocation({...e,location:"unmoderated",subreddit:s(this,x)},s(this,T))}getEdited(e={type:"all"}){return Ye.aboutLocation({...e,location:"edited",subreddit:s(this,x)},s(this,T))}static aboutLocation(e,t){let i=u.redditAPIPlugins.Moderation,n;switch(e.type){case"post":n="links";break;case"comment":n="comments";break;default:n=void 0}return new H({...e,fetch:async o=>{let a=await i.AboutLocation({...o,...e,only:n},t);return CP(a,t)}})}getCommentsAndPostsByIds(e){let t=u.redditAPIPlugins.LinksAndComments;return new H({fetch:async()=>{let i=await t.Info({thingIds:e,subreddits:[s(this,Ji)]},s(this,T));return CP(i,s(this,T))}})}static async addRemovalReason(e,t,i,n){return(await u.redditAPIPlugins.Subreddits.SubredditAddRemovalReason({title:t,message:i,subreddit:e},n)).id}static async getRemovalReasons(e,t){let n=await u.redditAPIPlugins.Subreddits.SubredditGetRemovalReasons({subreddit:e},t);return n.order.map(o=>({...n.data[o]}))}static async getFromMetadata(e){f(e);let t=e?.[se.Subreddit]?.values[0];return f(t),Ye.getById(xe(t),e)}static async getById(e,t){let o=(await u.redditAPIPlugins.LinksAndComments.Info({thingIds:[e],subreddits:[]},t)).data?.children[0]?.data?.displayName;return f(o),Ye.getByName(o,t)}static async getByName(e,t){let n=await u.redditAPIPlugins.Subreddits.SubredditAbout({subreddit:e},t);if(!n?.data)throw new Error("not found");return new Ye(n.data,t)}};Ji=new WeakMap,x=new WeakMap,oo=new WeakMap,ao=new WeakMap,lo=new WeakMap,uo=new WeakMap,co=new WeakMap,mo=new WeakMap,po=new WeakMap,go=new WeakMap,fo=new WeakMap,$i=new WeakMap,T=new WeakMap;var fe=Ye;function NR(r){if(r==="public"||r==="private"||r==="restricted"||r==="employees_only"||r==="gold_restricted"||r==="archived")return r;throw new Error(`invalid subreddit type: ${r}`)}function qR(r){if(r==="any"||r==="link"||r==="self")return r;throw new Error(`invalid allowed post type: ${r}`)}function HR(r){if(r==="animated"||r==="giphy"||r==="static"||r==="expression")return r;throw new Error(`invalid comment media type: ${r}`)}function CP(r,e){let i=(r.data?.children??[]).map(a=>{let c=n(a);if(c!=null)return c;let p=o(a);return p??null}).filter(Boolean);return{after:r.data?.after,before:r.data?.before,children:i};function n(a){try{return new z(a.data,e)}catch{return null}}function o(a){try{return new K(a.data,e)}catch{return null}}}async function mv(r,e){return IP("GetVaultContactByAddress","3e2f7966a5c120e64fd2795d06a46595c52d988185be98d3ed71c3f81ae80d2e",{provider:"ethereum",address:r},e)}async function pv(r,e){return IP("GetVaultContactByUserId","a854ddc19d0e22c4f36ed917fdbd568f299f3571427e393aee5e2972080fffe9",{provider:"ethereum",userId:r},e)}async function IP(r,e,t,i){let o=(await vi.query(r,e,t,i))?.data?.vault?.contact;return{provider:o?.provider,userId:ee(o?.userId),address:o?.address,createdAt:o?.createdAt,isActive:o?.isActive}}import{CommunityListWidget_CommunityData as jR,GetWidgetsResponse_WidgetItem as le}from"@devvit/protos";var ho,vo,yo,bo,tm=class tm{constructor(e,t,i){l(this,ho,void 0);l(this,vo,void 0);l(this,yo,void 0);l(this,bo,void 0);V(this),d(this,ho,e.id),d(this,vo,e.shortName),d(this,yo,t),d(this,bo,i)}get id(){return s(this,ho)}get name(){return s(this,vo)}get subredditName(){return s(this,yo)}toJSON(){return{id:this.id,name:this.name,subredditName:this.subredditName}}delete(){return tm.delete(this.subredditName,this.id,s(this,bo))}static async getWidgets(e,t){let n=await u.redditAPIPlugins.Widgets.GetWidgets({subreddit:e},t);f(n.layout,"Failed to load widgets for subreddit");let o=n.items,a=[];for(let c of n.layout.sidebar?.order??[]){let p=o[c];switch(p?.kind){case"image":a.push(new _d(p,e,t));break;case"calendar":a.push(new Nd(p,e,t));break;case"textarea":a.push(new qd(p,e,t));break;case"button":a.push(new Hd(p,e,t));break;case"community-list":a.push(new jd(p,e,t));break;case"post-flair":a.push(new Wd(p,e,t));break;case"custom":a.push(new Gd(p,e,t));break;case"subreddit-rules":{let g=await u.redditAPIPlugins.Subreddits.SubredditAboutRules({subreddit:e},t);a.push(new em(g,p,e,t));break}default:throw new Error(`Unknown widget type: ${p.kind}`)}}return a}static async delete(e,t,i){await u.redditAPIPlugins.Widgets.DeleteWidget({subreddit:e,id:t},i)}static async reorder(e,t,i){await u.redditAPIPlugins.Widgets.OrderWidgets({subreddit:e,order:t},i)}static async add(e,t){switch(e?.type){case"image":return _d.create(e,t);case"calendar":return Nd.create(e,t);case"textarea":return qd.create(e,t);case"button":return Hd.create(e,t);case"community-list":return jd.create(e,t);case"post-flair":return Wd.create(e,t);case"custom":return Gd.create(e,t);default:throw new Error("Unknown widget type")}}};ho=new WeakMap,vo=new WeakMap,yo=new WeakMap,bo=new WeakMap;var te=tm,Po,zd=class zd extends te{constructor(t,i,n){super(t,i,n);l(this,Po,void 0);d(this,Po,t.data.map(o=>(f(o.url,"Image widget data is missing url"),f(o.height,"Image widget data is missing height"),f(o.width,"Image widget data is missing width"),f(o.linkUrl,"Image widget data is missing linkUrl"),{url:o.url,height:o.height,width:o.width,linkUrl:o.linkUrl})))}get images(){return s(this,Po)}toJSON(){return{...super.toJSON(),images:this.images}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddImageWidget(t,i);return new zd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateImageWidget(t,i);return new zd(le.fromJSON(o),t.subreddit,i)}};Po=new WeakMap;var _d=zd,ko,So,Co,Vd=class Vd extends te{constructor(t,i,n){super(t,i,n);l(this,ko,void 0);l(this,So,void 0);l(this,Co,void 0);f(t.googleCalendarId,"Calendar widget data is missing googleCalendarId"),f(t.configuration,"Calendar widget data is missing configuration"),f(t.styles,"Calendar widget data is missing styles"),d(this,ko,t.googleCalendarId),d(this,So,t.configuration),d(this,Co,t.styles)}get googleCalendarId(){return s(this,ko)}get configuration(){return s(this,So)}get styles(){return s(this,Co)}toJSON(){return{...super.toJSON(),googleCalendarId:this.googleCalendarId,configuration:this.configuration,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddCalendarWidget(t,i);return new Vd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCalendarWidget(t,i);return new Vd(le.fromJSON(o),t.subreddit,i)}};ko=new WeakMap,So=new WeakMap,Co=new WeakMap;var Nd=Vd,Io,wo,Jd=class Jd extends te{constructor(t,i,n){super(t,i,n);l(this,Io,void 0);l(this,wo,void 0);f(t.text,"Textarea widget data is missing text"),f(t.styles,"Textarea widget data is missing styles"),d(this,Io,t.text),d(this,wo,t.styles)}get text(){return s(this,Io)}get styles(){return s(this,wo)}toJSON(){return{...super.toJSON(),text:this.text,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddTextAreaWidget(t,i);return new Jd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateTextAreaWidget(t,i);return new Jd(le.fromJSON(o),t.subreddit,i)}};Io=new WeakMap,wo=new WeakMap;var qd=Jd,Ao,xo,To,$d=class $d extends te{constructor(t,i,n){super(t,i,n);l(this,Ao,void 0);l(this,xo,void 0);l(this,To,void 0);f(t.styles,"Button widget data is missing styles"),d(this,Ao,t.buttons),d(this,xo,t.description??""),d(this,To,t.styles)}get buttons(){return s(this,Ao)}get description(){return s(this,xo)}get styles(){return s(this,To)}toJSON(){return{...super.toJSON(),buttons:this.buttons,description:this.description,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddButtonWidget(t,i);return new $d(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateButtonWidget(t,i);return new $d(le.fromJSON(o),t.subreddit,i)}};Ao=new WeakMap,xo=new WeakMap,To=new WeakMap;var Hd=$d,Eo,Ro,Kd=class Kd extends te{constructor(t,i,n){super(t,i,n);l(this,Eo,void 0);l(this,Ro,void 0);d(this,Eo,t.data.map(o=>jR.fromJSON(o))),f(t.styles,"Community list widget data is missing styles"),d(this,Ro,t.styles)}get communities(){return s(this,Eo)}get styles(){return s(this,Ro)}toJSON(){return{...super.toJSON(),communities:this.communities,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddCommunityListWidget(t,i);return new Kd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCommunityListWidget(t,i);return new Kd(le.fromJSON(o),t.subreddit,i)}};Eo=new WeakMap,Ro=new WeakMap;var jd=Kd,Fo,Oo,Mo,Xd=class Xd extends te{constructor(t,i,n){super(t,i,n);l(this,Fo,void 0);l(this,Oo,void 0);l(this,Mo,void 0);if(f(t.styles,"Post flair widget data is missing styles"),d(this,Fo,t.styles),d(this,Oo,t.order.map(o=>t.templates[o])),!(t.display&&t.display==="list"||t.display==="cloud"))throw new Error("Post flair widget data is missing display type");d(this,Mo,t.display)}get styles(){return s(this,Fo)}get templates(){return s(this,Oo)}get display(){return s(this,Mo)}toJSON(){return{...super.toJSON(),styles:this.styles,templates:this.templates,display:this.display}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddPostFlairWidget(t,i);return new Xd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdatePostFlairWidget(t,i);return new Xd(le.fromJSON(o),t.subreddit,i)}};Fo=new WeakMap,Oo=new WeakMap,Mo=new WeakMap;var Wd=Xd,Lo,Bo,Uo,Do,_o,Zd=class Zd extends te{constructor(t,i,n){super(t,i,n);l(this,Lo,void 0);l(this,Bo,void 0);l(this,Uo,void 0);l(this,Do,void 0);l(this,_o,void 0);f(t.stylesheetUrl,"Custom widget data is missing stylesheetUrl"),f(t.height,"Custom widget data is missing height"),f(t.css,"Custom widget data is missing css"),d(this,Lo,t.imageData??[]),d(this,Bo,t.text??""),d(this,Uo,t.stylesheetUrl),d(this,Do,t.height),d(this,_o,t.css)}get images(){return s(this,Lo)}get text(){return s(this,Bo)}get stylesheetUrl(){return s(this,Uo)}get height(){return s(this,Do)}get css(){return s(this,_o)}toJSON(){return{...super.toJSON(),images:this.images,text:this.text,stylesheetUrl:this.stylesheetUrl,height:this.height,css:this.css}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddCustomWidget(t,i);return new Zd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCustomWidget(t,i);return new Zd(le.fromJSON(o),t.subreddit,i)}};Lo=new WeakMap,Bo=new WeakMap,Uo=new WeakMap,Do=new WeakMap,_o=new WeakMap;var Gd=Zd,No,em=class extends te{constructor(t,i,n,o){super(i,n,o);l(this,No,void 0);let a=t.rules.map(({description:c,priority:p,shortName:g,violationReason:y})=>(f(c,"Subreddit rule is missing description"),f(p,"Subreddit rule is missing priority"),f(g,"Subreddit rule is missing shortName"),f(y,"Subreddit rule is missing violationReason"),{description:c,priority:p,shortName:g,violationReason:y}));d(this,No,a)}get rules(){return s(this,No)}toJSON(){return{...super.toJSON(),rules:this.rules}}};No=new WeakMap;var WR=(i=>(i[i.SUBREDDIT_PERMISSIONS=0]="SUBREDDIT_PERMISSIONS",i[i.APPROVED_CONTRIBUTORS_ONLY=1]="APPROVED_CONTRIBUTORS_ONLY",i[i.MODS_ONLY=2]="MODS_ONLY",i))(WR||{}),ve,ye,Ki,Xi,Zi,Yi,Qi,Ge,Be=class Be{constructor(e,t,i,n){l(this,ve,void 0);l(this,ye,void 0);l(this,Ki,void 0);l(this,Xi,void 0);l(this,Zi,void 0);l(this,Yi,void 0);l(this,Qi,void 0);l(this,Ge,void 0);V(this),d(this,ve,e),d(this,ye,t),d(this,Ki,i.contentMd),d(this,Xi,i.revisionId),d(this,Zi,new Date(i.revisionDate)),d(this,Yi,i.reason??""),f(i.revisionBy?.data,"Wiki page author details are missing"),d(this,Qi,new I(i.revisionBy.data,n)),d(this,Ge,n)}get name(){return s(this,ve)}get subredditName(){return s(this,ye)}get content(){return s(this,Ki)}get revisionId(){return s(this,Xi)}get revisionDate(){return s(this,Zi)}get revisionReason(){return s(this,Yi)}get revisionAuthor(){return s(this,Qi)}toJSON(){return{name:s(this,ve),subredditName:s(this,ye),content:s(this,Ki),revisionId:s(this,Xi),revisionDate:s(this,Zi),revisionReason:s(this,Yi),revisionAuthor:s(this,Qi).toJSON()}}async update(e,t){return Be.updatePage({subredditName:s(this,ye),page:s(this,ve),content:e,reason:t},s(this,Ge))}async getRevisions(e){return Be.getPageRevisions({subredditName:s(this,ye),page:s(this,ve),...e},s(this,Ge))}async revertTo(e){return Be.revertPage(s(this,ye),s(this,ve),e,s(this,Ge))}async getSettings(){return Be.getPageSettings(s(this,ye),s(this,ve),s(this,Ge))}async updateSettings(e){return Be.updatePageSettings({subredditName:s(this,ye),page:s(this,ve),listed:e.listed,permLevel:e.permLevel},s(this,Ge))}async addEditor(e){return Be.addEditor(s(this,ye),s(this,ve),e,s(this,Ge))}async removeEditor(e){return Be.removeEditor(s(this,ye),s(this,ve),e,s(this,Ge))}static async getPage(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPage({subreddit:e,page:t},i);return f(o.data,"Failed to get wiki page"),new Be(t,e,o.data,i)}static async getPages(e,t){return(await u.redditAPIPlugins.Wiki.GetWikiPages({subreddit:e},t)).data||[]}static async createPage(e,t){return Be.updatePage(e,t)}static async updatePage(e,t){return await u.redditAPIPlugins.Wiki.EditWikiPage({subreddit:e.subredditName,page:e.page,content:e.content,reason:e.reason??""},t),Be.getPage(e.subredditName,e.page,t)}static getPageRevisions(e,t){let i=u.redditAPIPlugins.Wiki;return new H({hasMore:!0,after:e.after,limit:e.limit,pageSize:e.pageSize,async fetch(n){let o=await i.GetWikiPageRevisions({subreddit:e.subredditName,page:e.page,limit:n.limit,after:n.after,before:n.before},t);return GR(o,t)}})}static async revertPage(e,t,i,n){await u.redditAPIPlugins.Wiki.RevertWikiPage({subreddit:e,page:t,revision:i},n)}static async getPageSettings(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPageSettings({subreddit:e,page:t},i);return f(o.data,"Failed to get wiki page settings"),new Yd(o.data,i)}static async updatePageSettings(e,t){let n=await u.redditAPIPlugins.Wiki.UpdateWikiPageSettings({subreddit:e.subredditName,page:e.page,listed:e.listed?"on":"",permlevel:e.permLevel},t);return f(n.data,"Failed to update wiki page settings"),new Yd(n.data,t)}static async addEditor(e,t,i,n){await u.redditAPIPlugins.Wiki.AllowEditor({act:"add",subreddit:e,page:t,username:i},n)}static async removeEditor(e,t,i,n){await u.redditAPIPlugins.Wiki.AllowEditor({act:"del",subreddit:e,page:t,username:i},n)}};ve=new WeakMap,ye=new WeakMap,Ki=new WeakMap,Xi=new WeakMap,Zi=new WeakMap,Yi=new WeakMap,Qi=new WeakMap,Ge=new WeakMap;var he=Be,en,tn,rn,nn,sn,on,rm=class{constructor(e,t){l(this,en,void 0);l(this,tn,void 0);l(this,rn,void 0);l(this,nn,void 0);l(this,sn,void 0);l(this,on,void 0);d(this,en,e.id),d(this,tn,e.page),d(this,rn,new Date(e.timestamp)),f(e.author?.data,"Wiki page revision author details are missing"),d(this,nn,new I(e.author.data,t)),d(this,sn,e.reason??""),d(this,on,e.revisionHidden??!1)}get id(){return s(this,en)}get page(){return s(this,tn)}get date(){return s(this,rn)}get author(){return s(this,nn)}get reason(){return s(this,sn)}get hidden(){return s(this,on)}toJSON(){return{id:s(this,en),page:s(this,tn),date:s(this,rn),author:s(this,nn).toJSON(),reason:s(this,sn),hidden:s(this,on)}}};en=new WeakMap,tn=new WeakMap,rn=new WeakMap,nn=new WeakMap,sn=new WeakMap,on=new WeakMap;var an,dn,ln,Yd=class{constructor(e,t){l(this,an,void 0);l(this,dn,void 0);l(this,ln,void 0);d(this,an,e.listed),d(this,dn,e.permLevel),d(this,ln,e.editors.map(i=>(f(i.data,"Wiki page editor details are missing"),new I(i.data,t))))}get listed(){return s(this,an)}get permLevel(){return s(this,dn)}get editors(){return s(this,ln)}toJSON(){return{listed:s(this,an),permLevel:s(this,dn),editors:s(this,ln).map(e=>e.toJSON())}}};an=new WeakMap,dn=new WeakMap,ln=new WeakMap;function GR(r,e){return f(r.data?.children,"Wiki page revision listing is missing children"),{children:r.data.children.map(i=>new rm(i,e)),before:r.data.before,after:r.data.after}}var zR=(t=>(t.Gallery="GALLERY",t.Timeline="TIMELINE",t))(zR||{});function VR(r){return r==="GALLERY"?"GALLERY":"TIMELINE"}var Ue,be,Ho,un,cn,jo,Wo,Go,zo,ct,Vo,Jo,mn,qo=class qo{constructor(e,t){l(this,Ue,void 0);l(this,be,void 0);l(this,Ho,void 0);l(this,un,void 0);l(this,cn,void 0);l(this,jo,void 0);l(this,Wo,void 0);l(this,Go,void 0);l(this,zo,void 0);l(this,ct,void 0);l(this,Vo,void 0);l(this,Jo,void 0);l(this,mn,void 0);f(e.collectionId,"Collection Id is missing or undefined"),f(e.subredditId,"Subreddit Id is missing or undefined"),f(e.title,"Collection title is missing or undefined"),f(e.authorId,"Collection author's id is missing or undefined"),f(e.authorName,"Collection author's id is missing or undefined"),f(e.createdAtUtc,"Collection create timestamp is missing"),f(e.lastUpdateUtc,"Collection last updated timestamp is missing"),d(this,Ue,t),d(this,be,e.collectionId),d(this,Ho,e.subredditId),d(this,un,e.title),d(this,cn,e.description||""),d(this,jo,e.authorId),d(this,Wo,e.authorName),d(this,Go,e.permalink),d(this,zo,e.primaryLinkId),d(this,ct,e.linkIds||[]),d(this,mn,VR(e.displayLayout)),d(this,Vo,e.createdAtUtc),d(this,Jo,e.lastUpdateUtc),V(this)}get id(){return s(this,be)}get subredditId(){return s(this,Ho)}get title(){return s(this,un)}get description(){return s(this,cn)}get authorId(){return s(this,jo)}get authorName(){return s(this,Wo)}get permalink(){return s(this,Go)}get primaryLinkId(){return s(this,zo)}get linkIds(){return s(this,ct)}get createdAtUtc(){return s(this,Vo)}get lastUpdateUtc(){return s(this,Jo)}get displayLayout(){return s(this,mn)}static async getCollectionById(e,t){let n=await u.redditAPIPlugins.PostCollections.Collection(e,t);return new qo(n,t)}static async create(e,t){let n=await u.redditAPIPlugins.PostCollections.Create({srFullname:e.subredditId,title:e.title,description:e.description,displayLayout:e.displayLayout},t);return new qo(n,t)}static async getCollectionsForSubreddit(e,t){return(await u.redditapiv2Plugin.GetSubredditCollections({srFullname:e.subredditId},t)).collections.map(n=>new qo(n,t))}async addPost(e){await u.redditAPIPlugins.PostCollections.AddPost({collectionId:s(this,be),linkFullname:e},s(this,Ue)),s(this,ct).push(e)}async removePost(e){await u.redditAPIPlugins.PostCollections.RemovePost({collectionId:s(this,be),linkFullname:e},s(this,Ue)),d(this,ct,s(this,ct).filter(i=>i!==e))}async delete(){await u.redditAPIPlugins.PostCollections.Delete({collectionId:s(this,be)},s(this,Ue))}async follow(e){await u.redditAPIPlugins.PostCollections.Follow({collectionId:s(this,be),follow:e},s(this,Ue))}async reorder(e){await u.redditAPIPlugins.PostCollections.Reorder({collectionId:s(this,be),linkIds:e.join(",")},s(this,Ue)),d(this,ct,e)}async updateTitle(e){await u.redditAPIPlugins.PostCollections.UpdateTitle({collectionId:s(this,be),title:e},s(this,Ue)),d(this,un,e)}async updateDescription(e){await u.redditAPIPlugins.PostCollections.UpdateDescription({collectionId:s(this,be),description:e},s(this,Ue)),d(this,cn,e)}async updateLayout(e){await u.redditAPIPlugins.PostCollections.UpdateDisplayLayout({collectionId:s(this,be),displayLayout:e},s(this,Ue)),d(this,mn,e)}};Ue=new WeakMap,be=new WeakMap,Ho=new WeakMap,un=new WeakMap,cn=new WeakMap,jo=new WeakMap,Wo=new WeakMap,Go=new WeakMap,zo=new WeakMap,ct=new WeakMap,Vo=new WeakMap,Jo=new WeakMap,mn=new WeakMap;var Wr=qo;var JR=["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"],$R=["border-image","border-image-source","behavior","expression","list-style-image","cursor","content"],KR=["onload","onerror","onclick","onmouseover"];function XR(r){return/xmlns=["']http:\/\/www\.w3\.org\/2000\/svg["']/.test(r)?r:r.replace(/<svg\b/,'<svg xmlns="http://www.w3.org/2000/svg"')}function wP(r){if(r){if(!r.trim().startsWith("<svg")){console.log("The provided string is not a valid SVG.");return}try{let e=new RegExp(`<\\s*(${JR.join("|")})\\b`,"gi"),t=new RegExp(`(${$R.join("|")})\\s*:\\s*url\\s*\\((['"]?)(.*?)\\2\\)`,"gi"),i=new RegExp(`(${KR.join("|")})\\s*(=\\s*(['"]?)(.*?)\\3)?`,"gi");r=r.trim().replace(/\s+/g," "),r=XR(r);let n=r.match(e)||[],o=r.match(t)||[],a=r.match(i)||[],c=!1;return n.length>0&&(c=!0,console.warn(`Disallowed elements detected in SVG: ${n.map(p=>p.replace("<","")).join(", ")}`)),o.length>0&&(c=!0,console.warn(`Disallowed styles detected in SVG: ${o.map(p=>p.split(":")[0]).join(", ")}`)),a.length>0&&(c=!0,console.warn(`Disallowed attributes detected in SVG: ${a.map(p=>p.split("=")[0]).join(", ")}`)),c?void 0:r}catch{return}}}function hq(r,...e){let t="";return r.forEach((i,n)=>{t+=i;let o=e[n];o!==void 0&&(t+=`${o}`)}),t=wP(t),t===void 0?"":`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(t)}`}export{vM as ALL_ICON_NAMES,cv as AboutLocations,Hd as ButtonWidget,Nd as CalendarWidget,zR as CollectionDisplayLayout,K as Comment,jd as CommunityListWidget,Gd as CustomWidget,u as Devvit,Re as Flair,oe as FlairTemplate,PR as FlairType,ht as Hook,_d as ImageWidget,H as Listing,DR as ModMailActionType,BR as ModMailConversationState,Ga as ModMailService,Ee as ModNote,z as Post,Wr as PostCollection,Wd as PostFlairWidget,Yt as PrivateMessage,hs as RichTextBuilder,Yu as SettingScope,fe as Subreddit,em as SubredditRulesWidget,qd as TextAreaWidget,I as User,te as Widget,he as WikiPage,WR as WikiPagePermissionLevel,rm as WikiPageRevision,Yd as WikiPageSettings,Ps as convertUserFlairProtoToAPI,Wa as getModerationLog,mv as getVaultByAddress,pv as getVaultByUserId,hq as svg};
1
+ var xP=Object.create;var nm=Object.defineProperty;var TP=Object.getOwnPropertyDescriptor;var EP=Object.getOwnPropertyNames;var RP=Object.getPrototypeOf,FP=Object.prototype.hasOwnProperty;var h=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var OP=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of EP(e))!FP.call(r,n)&&n!==t&&nm(r,n,{get:()=>e[n],enumerable:!(i=TP(e,n))||i.enumerable});return r};var Xo=(r,e,t)=>(t=r!=null?xP(RP(r)):{},OP(e||!r||!r.__esModule?nm(t,"default",{value:r,enumerable:!0}):t,r));var el=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var s=(r,e,t)=>(el(r,e,"read from private field"),t?t.call(r):e.get(r)),l=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)},d=(r,e,t,i)=>(el(r,e,"write to private field"),i?i.call(r,t):e.set(r,t),t);var b=(r,e,t)=>(el(r,e,"access private method"),t);var ne=h((QR,sm)=>{sm.exports=function(r){try{return!!r()}catch{return!0}}});var Zo=h((eF,om)=>{var MP=ne();om.exports=!MP(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var J=h((tF,lm)=>{var am=Zo(),dm=Function.prototype,tl=dm.call,BP=am&&dm.bind.bind(tl,tl);lm.exports=am?BP:function(r){return function(){return tl.apply(r,arguments)}}});var cm=h((rF,um)=>{var LP=Math.ceil,UP=Math.floor;um.exports=Math.trunc||function(e){var t=+e;return(t>0?UP:LP)(t)}});var Yo=h((iF,mm)=>{var DP=cm();mm.exports=function(r){var e=+r;return e!==e||e===0?0:DP(e)}});var ue=h((nF,pm)=>{var Qo=function(r){return r&&r.Math==Math&&r};pm.exports=Qo(typeof globalThis=="object"&&globalThis)||Qo(typeof window=="object"&&window)||Qo(typeof self=="object"&&self)||Qo(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var kr=h((sF,gm)=>{gm.exports=!1});var ea=h((oF,hm)=>{var fm=ue(),_P=Object.defineProperty;hm.exports=function(r,e){try{_P(fm,r,{value:e,configurable:!0,writable:!0})}catch{fm[r]=e}return e}});var ta=h((aF,ym)=>{var NP=ue(),qP=ea(),vm="__core-js_shared__",HP=NP[vm]||qP(vm,{});ym.exports=HP});var rl=h((dF,Pm)=>{var jP=kr(),bm=ta();(Pm.exports=function(r,e){return bm[r]||(bm[r]=e!==void 0?e:{})})("versions",[]).push({version:"3.27.2",mode:jP?"pure":"global",copyright:"\xA9 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.27.2/LICENSE",source:"https://github.com/zloirock/core-js"})});var ra=h((lF,km)=>{km.exports=function(r){return r==null}});var ia=h((uF,Sm)=>{var WP=ra(),GP=TypeError;Sm.exports=function(r){if(WP(r))throw GP("Can't call method on "+r);return r}});var fn=h((cF,Cm)=>{var zP=ia(),VP=Object;Cm.exports=function(r){return VP(zP(r))}});var Pe=h((mF,Im)=>{var JP=J(),$P=fn(),KP=JP({}.hasOwnProperty);Im.exports=Object.hasOwn||function(e,t){return KP($P(e),t)}});var il=h((pF,wm)=>{var XP=J(),ZP=0,YP=Math.random(),QP=XP(1 .toString);wm.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+QP(++ZP+YP,36)}});var xm=h((gF,Am)=>{Am.exports=typeof navigator<"u"&&String(navigator.userAgent)||""});var Bm=h((fF,Mm)=>{var Om=ue(),nl=xm(),Tm=Om.process,Em=Om.Deno,Rm=Tm&&Tm.versions||Em&&Em.version,Fm=Rm&&Rm.v8,De,na;Fm&&(De=Fm.split("."),na=De[0]>0&&De[0]<4?1:+(De[0]+De[1]));!na&&nl&&(De=nl.match(/Edge\/(\d+)/),(!De||De[1]>=74)&&(De=nl.match(/Chrome\/(\d+)/),De&&(na=+De[1])));Mm.exports=na});var sl=h((hF,Um)=>{var Lm=Bm(),ek=ne();Um.exports=!!Object.getOwnPropertySymbols&&!ek(function(){var r=Symbol();return!String(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Lm&&Lm<41})});var ol=h((vF,Dm)=>{var tk=sl();Dm.exports=tk&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var ke=h((yF,Nm)=>{var rk=ue(),ik=rl(),_m=Pe(),nk=il(),sk=sl(),ok=ol(),Sr=rk.Symbol,al=ik("wks"),ak=ok?Sr.for||Sr:Sr&&Sr.withoutSetter||nk;Nm.exports=function(r){return _m(al,r)||(al[r]=sk&&_m(Sr,r)?Sr[r]:ak("Symbol."+r)),al[r]}});var jm=h((bF,Hm)=>{var dk=ke(),lk=dk("toStringTag"),qm={};qm[lk]="z";Hm.exports=String(qm)==="[object z]"});var ll=h((PF,Wm)=>{var dl=typeof document=="object"&&document.all,uk=typeof dl>"u"&&dl!==void 0;Wm.exports={all:dl,IS_HTMLDDA:uk}});var $=h((kF,zm)=>{var Gm=ll(),ck=Gm.all;zm.exports=Gm.IS_HTMLDDA?function(r){return typeof r=="function"||r===ck}:function(r){return typeof r=="function"}});var sa=h((SF,Jm)=>{var Vm=J(),mk=Vm({}.toString),pk=Vm("".slice);Jm.exports=function(r){return pk(mk(r),8,-1)}});var hn=h((CF,$m)=>{var gk=jm(),fk=$(),oa=sa(),hk=ke(),vk=hk("toStringTag"),yk=Object,bk=oa(function(){return arguments}())=="Arguments",Pk=function(r,e){try{return r[e]}catch{}};$m.exports=gk?oa:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=Pk(e=yk(r),vk))=="string"?t:bk?oa(e):(i=oa(e))=="Object"&&fk(e.callee)?"Arguments":i}});var vn=h((IF,Km)=>{var kk=hn(),Sk=String;Km.exports=function(r){if(kk(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return Sk(r)}});var cl=h((wF,Ym)=>{var ul=J(),Ck=Yo(),Ik=vn(),wk=ia(),Ak=ul("".charAt),Xm=ul("".charCodeAt),xk=ul("".slice),Zm=function(r){return function(e,t){var i=Ik(wk(e)),n=Ck(t),o=i.length,a,c;return n<0||n>=o?r?"":void 0:(a=Xm(i,n),a<55296||a>56319||n+1===o||(c=Xm(i,n+1))<56320||c>57343?r?Ak(i,n):a:r?xk(i,n,n+2):(a-55296<<10)+(c-56320)+65536)}};Ym.exports={codeAt:Zm(!1),charAt:Zm(!0)}});var tp=h((AF,ep)=>{var Tk=ue(),Ek=$(),Qm=Tk.WeakMap;ep.exports=Ek(Qm)&&/native code/.test(String(Qm))});var mt=h((xF,np)=>{var rp=$(),ip=ll(),Rk=ip.all;np.exports=ip.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:rp(r)||r===Rk}:function(r){return typeof r=="object"?r!==null:rp(r)}});var ce=h((TF,sp)=>{var Fk=ne();sp.exports=!Fk(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var pl=h((EF,ap)=>{var Ok=ue(),op=mt(),ml=Ok.document,Mk=op(ml)&&op(ml.createElement);ap.exports=function(r){return Mk?ml.createElement(r):{}}});var gl=h((RF,dp)=>{var Bk=ce(),Lk=ne(),Uk=pl();dp.exports=!Bk&&!Lk(function(){return Object.defineProperty(Uk("div"),"a",{get:function(){return 7}}).a!=7})});var fl=h((FF,lp)=>{var Dk=ce(),_k=ne();lp.exports=Dk&&_k(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Ve=h((OF,up)=>{var Nk=mt(),qk=String,Hk=TypeError;up.exports=function(r){if(Nk(r))return r;throw Hk(qk(r)+" is not an object")}});var _e=h((MF,cp)=>{var jk=Zo(),aa=Function.prototype.call;cp.exports=jk?aa.bind(aa):function(){return aa.apply(aa,arguments)}});var yn=h((BF,mp)=>{var hl=ue(),Wk=$(),Gk=function(r){return Wk(r)?r:void 0};mp.exports=function(r,e){return arguments.length<2?Gk(hl[r]):hl[r]&&hl[r][e]}});var vl=h((LF,pp)=>{var zk=J();pp.exports=zk({}.isPrototypeOf)});var yl=h((UF,gp)=>{var Vk=yn(),Jk=$(),$k=vl(),Kk=ol(),Xk=Object;gp.exports=Kk?function(r){return typeof r=="symbol"}:function(r){var e=Vk("Symbol");return Jk(e)&&$k(e.prototype,Xk(r))}});var bl=h((DF,fp)=>{var Zk=String;fp.exports=function(r){try{return Zk(r)}catch{return"Object"}}});var da=h((_F,hp)=>{var Yk=$(),Qk=bl(),eS=TypeError;hp.exports=function(r){if(Yk(r))return r;throw eS(Qk(r)+" is not a function")}});var la=h((NF,vp)=>{var tS=da(),rS=ra();vp.exports=function(r,e){var t=r[e];return rS(t)?void 0:tS(t)}});var bp=h((qF,yp)=>{var Pl=_e(),kl=$(),Sl=mt(),iS=TypeError;yp.exports=function(r,e){var t,i;if(e==="string"&&kl(t=r.toString)&&!Sl(i=Pl(t,r))||kl(t=r.valueOf)&&!Sl(i=Pl(t,r))||e!=="string"&&kl(t=r.toString)&&!Sl(i=Pl(t,r)))return i;throw iS("Can't convert object to primitive value")}});var Cp=h((HF,Sp)=>{var nS=_e(),Pp=mt(),kp=yl(),sS=la(),oS=bp(),aS=ke(),dS=TypeError,lS=aS("toPrimitive");Sp.exports=function(r,e){if(!Pp(r)||kp(r))return r;var t=sS(r,lS),i;if(t){if(e===void 0&&(e="default"),i=nS(t,r,e),!Pp(i)||kp(i))return i;throw dS("Can't convert object to primitive value")}return e===void 0&&(e="number"),oS(r,e)}});var ua=h((jF,Ip)=>{var uS=Cp(),cS=yl();Ip.exports=function(r){var e=uS(r,"string");return cS(e)?e:e+""}});var Je=h(Ap=>{var mS=ce(),pS=gl(),gS=fl(),ca=Ve(),wp=ua(),fS=TypeError,Cl=Object.defineProperty,hS=Object.getOwnPropertyDescriptor,Il="enumerable",wl="configurable",Al="writable";Ap.f=mS?gS?function(e,t,i){if(ca(e),t=wp(t),ca(i),typeof e=="function"&&t==="prototype"&&"value"in i&&Al in i&&!i[Al]){var n=hS(e,t);n&&n[Al]&&(e[t]=i.value,i={configurable:wl in i?i[wl]:n[wl],enumerable:Il in i?i[Il]:n[Il],writable:!1})}return Cl(e,t,i)}:Cl:function(e,t,i){if(ca(e),t=wp(t),ca(i),pS)try{return Cl(e,t,i)}catch{}if("get"in i||"set"in i)throw fS("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var Cr=h((GF,xp)=>{xp.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var ma=h((zF,Tp)=>{var vS=ce(),yS=Je(),bS=Cr();Tp.exports=vS?function(r,e,t){return yS.f(r,e,bS(1,t))}:function(r,e,t){return r[e]=t,r}});var pa=h((VF,Rp)=>{var PS=rl(),kS=il(),Ep=PS("keys");Rp.exports=function(r){return Ep[r]||(Ep[r]=kS(r))}});var ga=h((JF,Fp)=>{Fp.exports={}});var Ir=h(($F,Bp)=>{var SS=tp(),Mp=ue(),CS=mt(),IS=ma(),xl=Pe(),Tl=ta(),wS=pa(),AS=ga(),Op="Object already initialized",El=Mp.TypeError,xS=Mp.WeakMap,fa,bn,ha,TS=function(r){return ha(r)?bn(r):fa(r,{})},ES=function(r){return function(e){var t;if(!CS(e)||(t=bn(e)).type!==r)throw El("Incompatible receiver, "+r+" required");return t}};SS||Tl.state?(Ne=Tl.state||(Tl.state=new xS),Ne.get=Ne.get,Ne.has=Ne.has,Ne.set=Ne.set,fa=function(r,e){if(Ne.has(r))throw El(Op);return e.facade=r,Ne.set(r,e),e},bn=function(r){return Ne.get(r)||{}},ha=function(r){return Ne.has(r)}):(jt=wS("state"),AS[jt]=!0,fa=function(r,e){if(xl(r,jt))throw El(Op);return e.facade=r,IS(r,jt,e),e},bn=function(r){return xl(r,jt)?r[jt]:{}},ha=function(r){return xl(r,jt)});var Ne,jt;Bp.exports={set:fa,get:bn,has:ha,enforce:TS,getterFor:ES}});var Rl=h(Dp=>{"use strict";var Lp={}.propertyIsEnumerable,Up=Object.getOwnPropertyDescriptor,RS=Up&&!Lp.call({1:2},1);Dp.f=RS?function(e){var t=Up(this,e);return!!t&&t.enumerable}:Lp});var Ol=h((XF,_p)=>{var FS=J(),OS=ne(),MS=sa(),Fl=Object,BS=FS("".split);_p.exports=OS(function(){return!Fl("z").propertyIsEnumerable(0)})?function(r){return MS(r)=="String"?BS(r,""):Fl(r)}:Fl});var wr=h((ZF,Np)=>{var LS=Ol(),US=ia();Np.exports=function(r){return LS(US(r))}});var Ml=h(Hp=>{var DS=ce(),_S=_e(),NS=Rl(),qS=Cr(),HS=wr(),jS=ua(),WS=Pe(),GS=gl(),qp=Object.getOwnPropertyDescriptor;Hp.f=DS?qp:function(e,t){if(e=HS(e),t=jS(t),GS)try{return qp(e,t)}catch{}if(WS(e,t))return qS(!_S(NS.f,e,t),e[t])}});var Ul=h((QF,Wp)=>{var Bl=ce(),zS=Pe(),jp=Function.prototype,VS=Bl&&Object.getOwnPropertyDescriptor,Ll=zS(jp,"name"),JS=Ll&&function(){}.name==="something",$S=Ll&&(!Bl||Bl&&VS(jp,"name").configurable);Wp.exports={EXISTS:Ll,PROPER:JS,CONFIGURABLE:$S}});var _l=h((eO,Gp)=>{var KS=J(),XS=$(),Dl=ta(),ZS=KS(Function.toString);XS(Dl.inspectSource)||(Dl.inspectSource=function(r){return ZS(r)});Gp.exports=Dl.inspectSource});var Hl=h((tO,Jp)=>{var ql=J(),YS=ne(),QS=$(),va=Pe(),Nl=ce(),eC=Ul().CONFIGURABLE,tC=_l(),Vp=Ir(),rC=Vp.enforce,iC=Vp.get,zp=String,ya=Object.defineProperty,nC=ql("".slice),sC=ql("".replace),oC=ql([].join),aC=Nl&&!YS(function(){return ya(function(){},"length",{value:8}).length!==8}),dC=String(String).split("String"),lC=Jp.exports=function(r,e,t){nC(zp(e),0,7)==="Symbol("&&(e="["+sC(zp(e),/^Symbol\(([^)]*)\)/,"$1")+"]"),t&&t.getter&&(e="get "+e),t&&t.setter&&(e="set "+e),(!va(r,"name")||eC&&r.name!==e)&&(Nl?ya(r,"name",{value:e,configurable:!0}):r.name=e),aC&&t&&va(t,"arity")&&r.length!==t.arity&&ya(r,"length",{value:t.arity});try{t&&va(t,"constructor")&&t.constructor?Nl&&ya(r,"prototype",{writable:!1}):r.prototype&&(r.prototype=void 0)}catch{}var i=rC(r);return va(i,"source")||(i.source=oC(dC,typeof e=="string"?e:"")),r};Function.prototype.toString=lC(function(){return QS(this)&&iC(this).source||tC(this)},"toString")});var Wt=h((rO,$p)=>{var uC=$(),cC=Je(),mC=Hl(),pC=ea();$p.exports=function(r,e,t,i){i||(i={});var n=i.enumerable,o=i.name!==void 0?i.name:e;if(uC(t)&&mC(t,o,i),i.global)n?r[e]=t:pC(e,t);else{try{i.unsafe?r[e]&&(n=!0):delete r[e]}catch{}n?r[e]=t:cC.f(r,e,{value:t,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return r}});var jl=h((iO,Kp)=>{var gC=Yo(),fC=Math.max,hC=Math.min;Kp.exports=function(r,e){var t=gC(r);return t<0?fC(t+e,0):hC(t,e)}});var Zp=h((nO,Xp)=>{var vC=Yo(),yC=Math.min;Xp.exports=function(r){return r>0?yC(vC(r),9007199254740991):0}});var ba=h((sO,Yp)=>{var bC=Zp();Yp.exports=function(r){return bC(r.length)}});var tg=h((oO,eg)=>{var PC=wr(),kC=jl(),SC=ba(),Qp=function(r){return function(e,t,i){var n=PC(e),o=SC(n),a=kC(i,o),c;if(r&&t!=t){for(;o>a;)if(c=n[a++],c!=c)return!0}else for(;o>a;a++)if((r||a in n)&&n[a]===t)return r||a||0;return!r&&-1}};eg.exports={includes:Qp(!0),indexOf:Qp(!1)}});var Gl=h((aO,ig)=>{var CC=J(),Wl=Pe(),IC=wr(),wC=tg().indexOf,AC=ga(),rg=CC([].push);ig.exports=function(r,e){var t=IC(r),i=0,n=[],o;for(o in t)!Wl(AC,o)&&Wl(t,o)&&rg(n,o);for(;e.length>i;)Wl(t,o=e[i++])&&(~wC(n,o)||rg(n,o));return n}});var Pa=h((dO,ng)=>{ng.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var og=h(sg=>{var xC=Gl(),TC=Pa(),EC=TC.concat("length","prototype");sg.f=Object.getOwnPropertyNames||function(e){return xC(e,EC)}});var zl=h(ag=>{ag.f=Object.getOwnPropertySymbols});var lg=h((cO,dg)=>{var RC=yn(),FC=J(),OC=og(),MC=zl(),BC=Ve(),LC=FC([].concat);dg.exports=RC("Reflect","ownKeys")||function(e){var t=OC.f(BC(e)),i=MC.f;return i?LC(t,i(e)):t}});var mg=h((mO,cg)=>{var ug=Pe(),UC=lg(),DC=Ml(),_C=Je();cg.exports=function(r,e,t){for(var i=UC(e),n=_C.f,o=DC.f,a=0;a<i.length;a++){var c=i[a];!ug(r,c)&&!(t&&ug(t,c))&&n(r,c,o(e,c))}}});var gg=h((pO,pg)=>{var NC=ne(),qC=$(),HC=/#|\.prototype\./,Pn=function(r,e){var t=WC[jC(r)];return t==zC?!0:t==GC?!1:qC(e)?NC(e):!!e},jC=Pn.normalize=function(r){return String(r).replace(HC,".").toLowerCase()},WC=Pn.data={},GC=Pn.NATIVE="N",zC=Pn.POLYFILL="P";pg.exports=Pn});var kn=h((gO,fg)=>{var Vl=ue(),VC=Ml().f,JC=ma(),$C=Wt(),KC=ea(),XC=mg(),ZC=gg();fg.exports=function(r,e){var t=r.target,i=r.global,n=r.stat,o,a,c,p,g,v;if(i?a=Vl:n?a=Vl[t]||KC(t,{}):a=(Vl[t]||{}).prototype,a)for(c in e){if(g=e[c],r.dontCallGetSet?(v=VC(a,c),p=v&&v.value):p=a[c],o=ZC(i?c:t+(n?".":"#")+c,r.forced),!o&&p!==void 0){if(typeof g==typeof p)continue;XC(g,p)}(r.sham||p&&p.sham)&&JC(g,"sham",!0),$C(a,c,g,r)}}});var Jl=h((fO,hg)=>{var YC=Gl(),QC=Pa();hg.exports=Object.keys||function(e){return YC(e,QC)}});var yg=h(vg=>{var eI=ce(),tI=fl(),rI=Je(),iI=Ve(),nI=wr(),sI=Jl();vg.f=eI&&!tI?Object.defineProperties:function(e,t){iI(e);for(var i=nI(t),n=sI(t),o=n.length,a=0,c;o>a;)rI.f(e,c=n[a++],i[c]);return e}});var Pg=h((vO,bg)=>{var oI=yn();bg.exports=oI("document","documentElement")});var Sn=h((yO,xg)=>{var aI=Ve(),dI=yg(),kg=Pa(),lI=ga(),uI=Pg(),cI=pl(),mI=pa(),Sg=">",Cg="<",Kl="prototype",Xl="script",wg=mI("IE_PROTO"),$l=function(){},Ag=function(r){return Cg+Xl+Sg+r+Cg+"/"+Xl+Sg},Ig=function(r){r.write(Ag("")),r.close();var e=r.parentWindow.Object;return r=null,e},pI=function(){var r=cI("iframe"),e="java"+Xl+":",t;return r.style.display="none",uI.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(Ag("document.F=Object")),t.close(),t.F},ka,Sa=function(){try{ka=new ActiveXObject("htmlfile")}catch{}Sa=typeof document<"u"?document.domain&&ka?Ig(ka):pI():Ig(ka);for(var r=kg.length;r--;)delete Sa[Kl][kg[r]];return Sa()};lI[wg]=!0;xg.exports=Object.create||function(e,t){var i;return e!==null?($l[Kl]=aI(e),i=new $l,$l[Kl]=null,i[wg]=e):i=Sa(),t===void 0?i:dI.f(i,t)}});var Eg=h((bO,Tg)=>{var gI=ne();Tg.exports=!gI(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var Yl=h((PO,Fg)=>{var fI=Pe(),hI=$(),vI=fn(),yI=pa(),bI=Eg(),Rg=yI("IE_PROTO"),Zl=Object,PI=Zl.prototype;Fg.exports=bI?Zl.getPrototypeOf:function(r){var e=vI(r);if(fI(e,Rg))return e[Rg];var t=e.constructor;return hI(t)&&e instanceof t?t.prototype:e instanceof Zl?PI:null}});var ru=h((kO,Bg)=>{"use strict";var kI=ne(),SI=$(),CI=mt(),II=Sn(),Og=Yl(),wI=Wt(),AI=ke(),xI=kr(),tu=AI("iterator"),Mg=!1,Qe,Ql,eu;[].keys&&(eu=[].keys(),"next"in eu?(Ql=Og(Og(eu)),Ql!==Object.prototype&&(Qe=Ql)):Mg=!0);var TI=!CI(Qe)||kI(function(){var r={};return Qe[tu].call(r)!==r});TI?Qe={}:xI&&(Qe=II(Qe));SI(Qe[tu])||wI(Qe,tu,function(){return this});Bg.exports={IteratorPrototype:Qe,BUGGY_SAFARI_ITERATORS:Mg}});var Cn=h((SO,Ug)=>{var EI=Je().f,RI=Pe(),FI=ke(),Lg=FI("toStringTag");Ug.exports=function(r,e,t){r&&!t&&(r=r.prototype),r&&!RI(r,Lg)&&EI(r,Lg,{configurable:!0,value:e})}});var Ar=h((CO,Dg)=>{Dg.exports={}});var iu=h((IO,_g)=>{"use strict";var OI=ru().IteratorPrototype,MI=Sn(),BI=Cr(),LI=Cn(),UI=Ar(),DI=function(){return this};_g.exports=function(r,e,t,i){var n=e+" Iterator";return r.prototype=MI(OI,{next:BI(+!i,t)}),LI(r,n,!1,!0),UI[n]=DI,r}});var qg=h((wO,Ng)=>{var _I=$(),NI=String,qI=TypeError;Ng.exports=function(r){if(typeof r=="object"||_I(r))return r;throw qI("Can't set "+NI(r)+" as a prototype")}});var jg=h((AO,Hg)=>{var HI=J(),jI=Ve(),WI=qg();Hg.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=HI(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set),t(e,[]),r=e instanceof Array}catch{}return function(n,o){return jI(n),WI(o),r?t(n,o):n.__proto__=o,n}}():void 0)});var su=h((xO,Yg)=>{"use strict";var GI=kn(),zI=_e(),Ca=kr(),Xg=Ul(),VI=$(),JI=iu(),Wg=Yl(),Gg=jg(),$I=Cn(),KI=ma(),nu=Wt(),XI=ke(),zg=Ar(),Zg=ru(),ZI=Xg.PROPER,YI=Xg.CONFIGURABLE,Vg=Zg.IteratorPrototype,Ia=Zg.BUGGY_SAFARI_ITERATORS,In=XI("iterator"),Jg="keys",wn="values",$g="entries",Kg=function(){return this};Yg.exports=function(r,e,t,i,n,o,a){JI(t,e,i);var c=function(B){if(B===n&&y)return y;if(!Ia&&B in v)return v[B];switch(B){case Jg:return function(){return new t(this,B)};case wn:return function(){return new t(this,B)};case $g:return function(){return new t(this,B)}}return function(){return new t(this)}},p=e+" Iterator",g=!1,v=r.prototype,m=v[In]||v["@@iterator"]||n&&v[n],y=!Ia&&m||c(n),P=e=="Array"&&v.entries||m,C,w,x;if(P&&(C=Wg(P.call(new r)),C!==Object.prototype&&C.next&&(!Ca&&Wg(C)!==Vg&&(Gg?Gg(C,Vg):VI(C[In])||nu(C,In,Kg)),$I(C,p,!0,!0),Ca&&(zg[p]=Kg))),ZI&&n==wn&&m&&m.name!==wn&&(!Ca&&YI?KI(v,"name",wn):(g=!0,y=function(){return zI(m,this)})),n)if(w={values:c(wn),keys:o?y:c(Jg),entries:c($g)},a)for(x in w)(Ia||g||!(x in v))&&nu(v,x,w[x]);else GI({target:e,proto:!0,forced:Ia||g},w);return(!Ca||a)&&v[In]!==y&&nu(v,In,y,{name:n}),zg[e]=y,w}});var ou=h((TO,Qg)=>{Qg.exports=function(r,e){return{value:r,done:e}}});var nf=h(()=>{"use strict";var QI=cl().charAt,ew=vn(),tf=Ir(),tw=su(),ef=ou(),rf="String Iterator",rw=tf.set,iw=tf.getterFor(rf);tw(String,"String",function(r){rw(this,{type:rf,string:ew(r),index:0})},function(){var e=iw(this),t=e.string,i=e.index,n;return i>=t.length?ef(void 0,!0):(n=QI(t,i),e.index+=n.length,ef(n,!1))})});var au=h((FO,sf)=>{var nw=ne(),sw=ke(),ow=kr(),aw=sw("iterator");sf.exports=!nw(function(){var r=new URL("b?a=1&b=2&c=3","http://a"),e=r.searchParams,t="";return r.pathname="c%20d",e.forEach(function(i,n){e.delete("b"),t+=n+i}),ow&&!r.toJSON||!e.sort||r.href!=="http://a/c%20d?a=1&c=3"||e.get("c")!=="3"||String(new URLSearchParams("?a=1"))!=="a=1"||!e[aw]||new URL("https://a@b").username!=="a"||new URLSearchParams(new URLSearchParams("a=b")).get("a")!=="b"||new URL("http://\u0442\u0435\u0441\u0442").host!=="xn--e1aybc"||new URL("http://a#\u0431").hash!=="#%D0%B1"||t!=="a1c3"||new URL("http://x",void 0).host!=="x"})});var af=h((OO,of)=>{var dw=sa(),lw=J();of.exports=function(r){if(dw(r)==="Function")return lw(r)}});var wa=h((MO,lf)=>{var df=af(),uw=da(),cw=Zo(),mw=df(df.bind);lf.exports=function(r,e){return uw(r),e===void 0?r:cw?mw(r,e):function(){return r.apply(e,arguments)}}});var mf=h((BO,cf)=>{var uf=Hl(),pw=Je();cf.exports=function(r,e,t){return t.get&&uf(t.get,e,{getter:!0}),t.set&&uf(t.set,e,{setter:!0}),pw.f(r,e,t)}});var du=h((LO,pf)=>{var gw=vl(),fw=TypeError;pf.exports=function(r,e){if(gw(e,r))return r;throw fw("Incorrect invocation")}});var vf=h((UO,hf)=>{"use strict";var gf=ce(),hw=J(),vw=_e(),yw=ne(),lu=Jl(),bw=zl(),Pw=Rl(),kw=fn(),Sw=Ol(),xr=Object.assign,ff=Object.defineProperty,Cw=hw([].concat);hf.exports=!xr||yw(function(){if(gf&&xr({b:1},xr(ff({},"a",{enumerable:!0,get:function(){ff(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var r={},e={},t=Symbol(),i="abcdefghijklmnopqrst";return r[t]=7,i.split("").forEach(function(n){e[n]=n}),xr({},r)[t]!=7||lu(xr({},e)).join("")!=i})?function(e,t){for(var i=kw(e),n=arguments.length,o=1,a=bw.f,c=Pw.f;n>o;)for(var p=Sw(arguments[o++]),g=a?Cw(lu(p),a(p)):lu(p),v=g.length,m=0,y;v>m;)y=g[m++],(!gf||vw(c,p,y))&&(i[y]=p[y]);return i}:xr});var Pf=h((DO,bf)=>{var Iw=_e(),yf=Ve(),ww=la();bf.exports=function(r,e,t){var i,n;yf(r);try{if(i=ww(r,"return"),!i){if(e==="throw")throw t;return t}i=Iw(i,r)}catch(o){n=!0,i=o}if(e==="throw")throw t;if(n)throw i;return yf(i),t}});var Sf=h((_O,kf)=>{var Aw=Ve(),xw=Pf();kf.exports=function(r,e,t,i){try{return i?e(Aw(t)[0],t[1]):e(t)}catch(n){xw(r,"throw",n)}}});var If=h((NO,Cf)=>{var Tw=ke(),Ew=Ar(),Rw=Tw("iterator"),Fw=Array.prototype;Cf.exports=function(r){return r!==void 0&&(Ew.Array===r||Fw[Rw]===r)}});var Rf=h((qO,Ef)=>{var Ow=J(),Mw=ne(),wf=$(),Bw=hn(),Lw=yn(),Uw=_l(),Af=function(){},Dw=[],xf=Lw("Reflect","construct"),uu=/^\s*(?:class|function)\b/,_w=Ow(uu.exec),Nw=!uu.exec(Af),An=function(e){if(!wf(e))return!1;try{return xf(Af,Dw,e),!0}catch{return!1}},Tf=function(e){if(!wf(e))return!1;switch(Bw(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Nw||!!_w(uu,Uw(e))}catch{return!0}};Tf.sham=!0;Ef.exports=!xf||Mw(function(){var r;return An(An.call)||!An(Object)||!An(function(){r=!0})||r})?Tf:An});var cu=h((HO,Ff)=>{"use strict";var qw=ua(),Hw=Je(),jw=Cr();Ff.exports=function(r,e,t){var i=qw(e);i in r?Hw.f(r,i,jw(0,t)):r[i]=t}});var Aa=h((jO,Mf)=>{var Ww=hn(),Of=la(),Gw=ra(),zw=Ar(),Vw=ke(),Jw=Vw("iterator");Mf.exports=function(r){if(!Gw(r))return Of(r,Jw)||Of(r,"@@iterator")||zw[Ww(r)]}});var mu=h((WO,Bf)=>{var $w=_e(),Kw=da(),Xw=Ve(),Zw=bl(),Yw=Aa(),Qw=TypeError;Bf.exports=function(r,e){var t=arguments.length<2?Yw(r):e;if(Kw(t))return Xw($w(t,r));throw Qw(Zw(r)+" is not iterable")}});var _f=h((GO,Df)=>{"use strict";var eA=wa(),tA=_e(),rA=fn(),iA=Sf(),nA=If(),sA=Rf(),oA=ba(),Lf=cu(),aA=mu(),dA=Aa(),Uf=Array;Df.exports=function(e){var t=rA(e),i=sA(this),n=arguments.length,o=n>1?arguments[1]:void 0,a=o!==void 0;a&&(o=eA(o,n>2?arguments[2]:void 0));var c=dA(t),p=0,g,v,m,y,P,C;if(c&&!(this===Uf&&nA(c)))for(y=aA(t,c),P=y.next,v=i?new this:[];!(m=tA(P,y)).done;p++)C=a?iA(y,o,[m.value,p],!0):m.value,Lf(v,p,C);else for(g=oA(t),v=i?new this(g):Uf(g);g>p;p++)C=a?o(t[p],p):t[p],Lf(v,p,C);return v.length=p,v}});var pu=h((zO,qf)=>{var Nf=jl(),lA=ba(),uA=cu(),cA=Array,mA=Math.max;qf.exports=function(r,e,t){for(var i=lA(r),n=Nf(e,i),o=Nf(t===void 0?i:t,i),a=cA(mA(o-n,0)),c=0;n<o;n++,c++)uA(a,c,r[n]);return a.length=c,a}});var Kf=h((VO,$f)=>{var Gt=J(),gu=2147483647,xn=36,zf=1,vu=26,pA=38,gA=700,fA=72,hA=128,vA="-",yA=/[^\0-\u007E]/,Vf=/[.\u3002\uFF0E\uFF61]/g,Hf="Overflow: input needs wider integers to process",fu=xn-zf,jf=RangeError,bA=Gt(Vf.exec),Tr=Math.floor,hu=String.fromCharCode,Wf=Gt("".charCodeAt),Jf=Gt([].join),pt=Gt([].push),PA=Gt("".replace),kA=Gt("".split),SA=Gt("".toLowerCase),CA=function(r){for(var e=[],t=0,i=r.length;t<i;){var n=Wf(r,t++);if(n>=55296&&n<=56319&&t<i){var o=Wf(r,t++);(o&64512)==56320?pt(e,((n&1023)<<10)+(o&1023)+65536):(pt(e,n),t--)}else pt(e,n)}return e},Gf=function(r){return r+22+75*(r<26)},IA=function(r,e,t){var i=0;for(r=t?Tr(r/gA):r>>1,r+=Tr(r/e);r>fu*vu>>1;)r=Tr(r/fu),i+=xn;return Tr(i+(fu+1)*r/(r+pA))},wA=function(r){var e=[];r=CA(r);var t=r.length,i=hA,n=0,o=fA,a,c;for(a=0;a<r.length;a++)c=r[a],c<128&&pt(e,hu(c));var p=e.length,g=p;for(p&&pt(e,vA);g<t;){var v=gu;for(a=0;a<r.length;a++)c=r[a],c>=i&&c<v&&(v=c);var m=g+1;if(v-i>Tr((gu-n)/m))throw jf(Hf);for(n+=(v-i)*m,i=v,a=0;a<r.length;a++){if(c=r[a],c<i&&++n>gu)throw jf(Hf);if(c==i){for(var y=n,P=xn;;){var C=P<=o?zf:P>=o+vu?vu:P-o;if(y<C)break;var w=y-C,x=xn-C;pt(e,hu(Gf(C+w%x))),y=Tr(w/x),P+=xn}pt(e,hu(Gf(y))),o=IA(n,m,g==p),n=0,g++}}n++,i++}return Jf(e,"")};$f.exports=function(r){var e=[],t=kA(PA(SA(r),Vf,"."),"."),i,n;for(i=0;i<t.length;i++)n=t[i],pt(e,bA(yA,n)?"xn--"+wA(n):n);return Jf(e,".")}});var yu=h((JO,Xf)=>{var AA=TypeError;Xf.exports=function(r,e){if(r<e)throw AA("Not enough arguments");return r}});var Yf=h(($O,Zf)=>{var xA=ke(),TA=Sn(),EA=Je().f,bu=xA("unscopables"),Pu=Array.prototype;Pu[bu]==null&&EA(Pu,bu,{configurable:!0,value:TA(null)});Zf.exports=function(r){Pu[bu][r]=!0}});var nh=h((KO,ih)=>{"use strict";var RA=wr(),ku=Yf(),Qf=Ar(),th=Ir(),FA=Je().f,OA=su(),xa=ou(),MA=kr(),BA=ce(),rh="Array Iterator",LA=th.set,UA=th.getterFor(rh);ih.exports=OA(Array,"Array",function(r,e){LA(this,{type:rh,target:RA(r),index:0,kind:e})},function(){var r=UA(this),e=r.target,t=r.kind,i=r.index++;return!e||i>=e.length?(r.target=void 0,xa(void 0,!0)):t=="keys"?xa(i,!1):t=="values"?xa(e[i],!1):xa([i,e[i]],!1)},"values");var eh=Qf.Arguments=Qf.Array;ku("keys");ku("values");ku("entries");if(!MA&&BA&&eh.name!=="values")try{FA(eh,"name",{value:"values"})}catch{}});var oh=h((XO,sh)=>{var DA=Wt();sh.exports=function(r,e,t){for(var i in e)DA(r,i,e[i],t);return r}});var lh=h((ZO,dh)=>{var ah=pu(),_A=Math.floor,Su=function(r,e){var t=r.length,i=_A(t/2);return t<8?NA(r,e):qA(r,Su(ah(r,0,i),e),Su(ah(r,i),e),e)},NA=function(r,e){for(var t=r.length,i=1,n,o;i<t;){for(o=i,n=r[i];o&&e(r[o-1],n)>0;)r[o]=r[--o];o!==i++&&(r[o]=n)}return r},qA=function(r,e,t,i){for(var n=e.length,o=t.length,a=0,c=0;a<n||c<o;)r[a+c]=a<n&&c<o?i(e[a],t[c])<=0?e[a++]:t[c++]:a<n?e[a++]:t[c++];return r};dh.exports=Su});var Ou=h((YO,Eh)=>{"use strict";nh();var xu=kn(),Rr=ue(),Ta=_e(),$e=J(),HA=ce(),kh=au(),Sh=Wt(),jA=oh(),WA=Cn(),GA=iu(),Ru=Ir(),Ch=du(),Cu=$(),zA=Pe(),VA=wa(),JA=hn(),$A=Ve(),Ih=mt(),me=vn(),KA=Sn(),uh=Cr(),Tu=mu(),XA=Aa(),Er=yu(),ZA=ke(),YA=lh(),QA=ZA("iterator"),Rn="URLSearchParams",wh=Rn+"Iterator",Ah=Ru.set,qe=Ru.getterFor(Rn),ex=Ru.getterFor(wh),tx=Object.getOwnPropertyDescriptor,Fu=function(r){if(!HA)return Rr[r];var e=tx(Rr,r);return e&&e.value},ch=Fu("fetch"),Ra=Fu("Request"),Tn=Fu("Headers"),Iu=Ra&&Ra.prototype,mh=Tn&&Tn.prototype,rx=Rr.RegExp,ix=Rr.TypeError,xh=Rr.decodeURIComponent,nx=Rr.encodeURIComponent,sx=$e("".charAt),ph=$e([].join),zt=$e([].push),Eu=$e("".replace),ox=$e([].shift),gh=$e([].splice),fh=$e("".split),ax=$e("".slice),dx=/\+/g,hh=Array(4),lx=function(r){return hh[r-1]||(hh[r-1]=rx("((?:%[\\da-f]{2}){"+r+"})","gi"))},ux=function(r){try{return xh(r)}catch{return r}},vh=function(r){var e=Eu(r,dx," "),t=4;try{return xh(e)}catch{for(;t;)e=Eu(e,lx(t--),ux);return e}},cx=/[!'()~]|%20/g,mx={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},px=function(r){return mx[r]},yh=function(r){return Eu(nx(r),cx,px)},wu=GA(function(e,t){Ah(this,{type:wh,iterator:Tu(qe(e).entries),kind:t})},"Iterator",function(){var e=ex(this),t=e.kind,i=e.iterator.next(),n=i.value;return i.done||(i.value=t==="keys"?n.key:t==="values"?n.value:[n.key,n.value]),i},!0),Th=function(r){this.entries=[],this.url=null,r!==void 0&&(Ih(r)?this.parseObject(r):this.parseQuery(typeof r=="string"?sx(r,0)==="?"?ax(r,1):r:me(r)))};Th.prototype={type:Rn,bindURL:function(r){this.url=r,this.update()},parseObject:function(r){var e=XA(r),t,i,n,o,a,c,p;if(e)for(t=Tu(r,e),i=t.next;!(n=Ta(i,t)).done;){if(o=Tu($A(n.value)),a=o.next,(c=Ta(a,o)).done||(p=Ta(a,o)).done||!Ta(a,o).done)throw ix("Expected sequence with length 2");zt(this.entries,{key:me(c.value),value:me(p.value)})}else for(var g in r)zA(r,g)&&zt(this.entries,{key:g,value:me(r[g])})},parseQuery:function(r){if(r)for(var e=fh(r,"&"),t=0,i,n;t<e.length;)i=e[t++],i.length&&(n=fh(i,"="),zt(this.entries,{key:vh(ox(n)),value:vh(ph(n,"="))}))},serialize:function(){for(var r=this.entries,e=[],t=0,i;t<r.length;)i=r[t++],zt(e,yh(i.key)+"="+yh(i.value));return ph(e,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var Fa=function(){Ch(this,En);var e=arguments.length>0?arguments[0]:void 0;Ah(this,new Th(e))},En=Fa.prototype;jA(En,{append:function(e,t){Er(arguments.length,2);var i=qe(this);zt(i.entries,{key:me(e),value:me(t)}),i.updateURL()},delete:function(r){Er(arguments.length,1);for(var e=qe(this),t=e.entries,i=me(r),n=0;n<t.length;)t[n].key===i?gh(t,n,1):n++;e.updateURL()},get:function(e){Er(arguments.length,1);for(var t=qe(this).entries,i=me(e),n=0;n<t.length;n++)if(t[n].key===i)return t[n].value;return null},getAll:function(e){Er(arguments.length,1);for(var t=qe(this).entries,i=me(e),n=[],o=0;o<t.length;o++)t[o].key===i&&zt(n,t[o].value);return n},has:function(e){Er(arguments.length,1);for(var t=qe(this).entries,i=me(e),n=0;n<t.length;)if(t[n++].key===i)return!0;return!1},set:function(e,t){Er(arguments.length,1);for(var i=qe(this),n=i.entries,o=!1,a=me(e),c=me(t),p=0,g;p<n.length;p++)g=n[p],g.key===a&&(o?gh(n,p--,1):(o=!0,g.value=c));o||zt(n,{key:a,value:c}),i.updateURL()},sort:function(){var e=qe(this);YA(e.entries,function(t,i){return t.key>i.key?1:-1}),e.updateURL()},forEach:function(e){for(var t=qe(this).entries,i=VA(e,arguments.length>1?arguments[1]:void 0),n=0,o;n<t.length;)o=t[n++],i(o.value,o.key,this)},keys:function(){return new wu(this,"keys")},values:function(){return new wu(this,"values")},entries:function(){return new wu(this,"entries")}},{enumerable:!0});Sh(En,QA,En.entries,{name:"entries"});Sh(En,"toString",function(){return qe(this).serialize()},{enumerable:!0});WA(Fa,Rn);xu({global:!0,constructor:!0,forced:!kh},{URLSearchParams:Fa});!kh&&Cu(Tn)&&(bh=$e(mh.has),Ph=$e(mh.set),Au=function(r){if(Ih(r)){var e=r.body,t;if(JA(e)===Rn)return t=r.headers?new Tn(r.headers):new Tn,bh(t,"content-type")||Ph(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),KA(r,{body:uh(0,me(e)),headers:uh(0,t)})}return r},Cu(ch)&&xu({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return ch(e,arguments.length>1?Au(arguments[1]):{})}}),Cu(Ra)&&(Ea=function(e){return Ch(this,Iu),new Ra(e,arguments.length>1?Au(arguments[1]):{})},Iu.constructor=Ea,Ea.prototype=Iu,xu({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:Ea})));var bh,Ph,Au,Ea;Eh.exports={URLSearchParams:Fa,getState:qe}});var $h=h(()=>{"use strict";nf();var gx=kn(),$u=ce(),fx=au(),Ku=ue(),Rh=wa(),Ae=J(),Ua=Wt(),Se=mf(),hx=du(),zu=Pe(),Xu=vf(),Fr=_f(),He=pu(),vx=cl().codeAt,yx=Kf(),tt=vn(),bx=Cn(),Px=yu(),jh=Ou(),Wh=Ir(),kx=Wh.set,Da=Wh.getterFor("URL"),Sx=jh.URLSearchParams,Cx=jh.getState,Fn=Ku.URL,Vu=Ku.TypeError,_a=Ku.parseInt,Ix=Math.floor,Fh=Math.pow,we=Ae("".charAt),je=Ae(/./.exec),Mn=Ae([].join),wx=Ae(1 .toString),Ax=Ae([].pop),Mr=Ae([].push),Oh=Ae("".replace),xx=Ae([].shift),Tx=Ae("".split),Ln=Ae("".slice),Na=Ae("".toLowerCase),Ex=Ae([].unshift),Rx="Invalid authority",Mu="Invalid scheme",Vt="Invalid host",Mh="Invalid port",Gh=/[a-z]/i,Fx=/[\d+-.a-z]/i,Ju=/\d/,Ox=/^0x/i,Mx=/^[0-7]+$/,Bx=/^\d+$/,zh=/^[\da-f]+$/i,Lx=/[\0\t\n\r #%/:<>?@[\\\]^|]/,Ux=/[\0\t\n\r #/:<>?@[\\\]^|]/,Dx=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,_x=/[\t\n\r]/g,Ce,Nx=function(r){var e=Tx(r,"."),t,i,n,o,a,c,p;if(e.length&&e[e.length-1]==""&&e.length--,t=e.length,t>4)return r;for(i=[],n=0;n<t;n++){if(o=e[n],o=="")return r;if(a=10,o.length>1&&we(o,0)=="0"&&(a=je(Ox,o)?16:8,o=Ln(o,a==8?1:2)),o==="")c=0;else{if(!je(a==10?Bx:a==8?Mx:zh,o))return r;c=_a(o,a)}Mr(i,c)}for(n=0;n<t;n++)if(c=i[n],n==t-1){if(c>=Fh(256,5-t))return null}else if(c>255)return null;for(p=Ax(i),n=0;n<i.length;n++)p+=i[n]*Fh(256,3-n);return p},qx=function(r){var e=[0,0,0,0,0,0,0,0],t=0,i=null,n=0,o,a,c,p,g,v,m,y=function(){return we(r,n)};if(y()==":"){if(we(r,1)!=":")return;n+=2,t++,i=t}for(;y();){if(t==8)return;if(y()==":"){if(i!==null)return;n++,t++,i=t;continue}for(o=a=0;a<4&&je(zh,y());)o=o*16+_a(y(),16),n++,a++;if(y()=="."){if(a==0||(n-=a,t>6))return;for(c=0;y();){if(p=null,c>0)if(y()=="."&&c<4)n++;else return;if(!je(Ju,y()))return;for(;je(Ju,y());){if(g=_a(y(),10),p===null)p=g;else{if(p==0)return;p=p*10+g}if(p>255)return;n++}e[t]=e[t]*256+p,c++,(c==2||c==4)&&t++}if(c!=4)return;break}else if(y()==":"){if(n++,!y())return}else if(y())return;e[t++]=o}if(i!==null)for(v=t-i,t=7;t!=0&&v>0;)m=e[t],e[t--]=e[i+v-1],e[i+--v]=m;else if(t!=8)return;return e},Hx=function(r){for(var e=null,t=1,i=null,n=0,o=0;o<8;o++)r[o]!==0?(n>t&&(e=i,t=n),i=null,n=0):(i===null&&(i=o),++n);return n>t&&(e=i,t=n),e},On=function(r){var e,t,i,n;if(typeof r=="number"){for(e=[],t=0;t<4;t++)Ex(e,r%256),r=Ix(r/256);return Mn(e,".")}else if(typeof r=="object"){for(e="",i=Hx(r),t=0;t<8;t++)n&&r[t]===0||(n&&(n=!1),i===t?(e+=t?":":"::",n=!0):(e+=wx(r[t],16),t<7&&(e+=":")));return"["+e+"]"}return r},La={},Vh=Xu({},La,{" ":1,'"':1,"<":1,">":1,"`":1}),Jh=Xu({},Vh,{"#":1,"?":1,"{":1,"}":1}),Bu=Xu({},Jh,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),gt=function(r,e){var t=vx(r,0);return t>32&&t<127&&!zu(e,r)?r:encodeURIComponent(r)},Oa={ftp:21,file:null,http:80,https:443,ws:80,wss:443},Bn=function(r,e){var t;return r.length==2&&je(Gh,we(r,0))&&((t=we(r,1))==":"||!e&&t=="|")},Bh=function(r){var e;return r.length>1&&Bn(Ln(r,0,2))&&(r.length==2||(e=we(r,2))==="/"||e==="\\"||e==="?"||e==="#")},jx=function(r){return r==="."||Na(r)==="%2e"},Wx=function(r){return r=Na(r),r===".."||r==="%2e."||r===".%2e"||r==="%2e%2e"},Lu={},Lh={},Uu={},Uh={},Dh={},Du={},_h={},Nh={},Ma={},Ba={},_u={},Nu={},qu={},Hu={},qh={},ju={},Or={},Ke={},Hh={},Jt={},et={},Zu=function(r,e,t){var i=tt(r),n,o,a;if(e){if(o=this.parse(i),o)throw Vu(o);this.searchParams=null}else{if(t!==void 0&&(n=new Zu(t,!0)),o=this.parse(i,null,n),o)throw Vu(o);a=Cx(new Sx),a.bindURL(this),this.searchParams=a}};Zu.prototype={type:"URL",parse:function(r,e,t){var i=this,n=e||Lu,o=0,a="",c=!1,p=!1,g=!1,v,m,y,P;for(r=tt(r),e||(i.scheme="",i.username="",i.password="",i.host=null,i.port=null,i.path=[],i.query=null,i.fragment=null,i.cannotBeABaseURL=!1,r=Oh(r,Dx,"")),r=Oh(r,_x,""),v=Fr(r);o<=v.length;){switch(m=v[o],n){case Lu:if(m&&je(Gh,m))a+=Na(m),n=Lh;else{if(e)return Mu;n=Uu;continue}break;case Lh:if(m&&(je(Fx,m)||m=="+"||m=="-"||m=="."))a+=Na(m);else if(m==":"){if(e&&(i.isSpecial()!=zu(Oa,a)||a=="file"&&(i.includesCredentials()||i.port!==null)||i.scheme=="file"&&!i.host))return;if(i.scheme=a,e){i.isSpecial()&&Oa[i.scheme]==i.port&&(i.port=null);return}a="",i.scheme=="file"?n=Hu:i.isSpecial()&&t&&t.scheme==i.scheme?n=Uh:i.isSpecial()?n=Nh:v[o+1]=="/"?(n=Dh,o++):(i.cannotBeABaseURL=!0,Mr(i.path,""),n=Hh)}else{if(e)return Mu;a="",n=Uu,o=0;continue}break;case Uu:if(!t||t.cannotBeABaseURL&&m!="#")return Mu;if(t.cannotBeABaseURL&&m=="#"){i.scheme=t.scheme,i.path=He(t.path),i.query=t.query,i.fragment="",i.cannotBeABaseURL=!0,n=et;break}n=t.scheme=="file"?Hu:Du;continue;case Uh:if(m=="/"&&v[o+1]=="/")n=Ma,o++;else{n=Du;continue}break;case Dh:if(m=="/"){n=Ba;break}else{n=Ke;continue}case Du:if(i.scheme=t.scheme,m==Ce)i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.query=t.query;else if(m=="/"||m=="\\"&&i.isSpecial())n=_h;else if(m=="?")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.query="",n=Jt;else if(m=="#")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.query=t.query,i.fragment="",n=et;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=He(t.path),i.path.length--,n=Ke;continue}break;case _h:if(i.isSpecial()&&(m=="/"||m=="\\"))n=Ma;else if(m=="/")n=Ba;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,n=Ke;continue}break;case Nh:if(n=Ma,m!="/"||we(a,o+1)!="/")continue;o++;break;case Ma:if(m!="/"&&m!="\\"){n=Ba;continue}break;case Ba:if(m=="@"){c&&(a="%40"+a),c=!0,y=Fr(a);for(var C=0;C<y.length;C++){var w=y[C];if(w==":"&&!g){g=!0;continue}var x=gt(w,Bu);g?i.password+=x:i.username+=x}a=""}else if(m==Ce||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(c&&a=="")return Rx;o-=Fr(a).length+1,a="",n=_u}else a+=m;break;case _u:case Nu:if(e&&i.scheme=="file"){n=ju;continue}else if(m==":"&&!p){if(a=="")return Vt;if(P=i.parseHost(a),P)return P;if(a="",n=qu,e==Nu)return}else if(m==Ce||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(i.isSpecial()&&a=="")return Vt;if(e&&a==""&&(i.includesCredentials()||i.port!==null))return;if(P=i.parseHost(a),P)return P;if(a="",n=Or,e)return;continue}else m=="["?p=!0:m=="]"&&(p=!1),a+=m;break;case qu:if(je(Ju,m))a+=m;else if(m==Ce||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()||e){if(a!=""){var B=_a(a,10);if(B>65535)return Mh;i.port=i.isSpecial()&&B===Oa[i.scheme]?null:B,a=""}if(e)return;n=Or;continue}else return Mh;break;case Hu:if(i.scheme="file",m=="/"||m=="\\")n=qh;else if(t&&t.scheme=="file")if(m==Ce)i.host=t.host,i.path=He(t.path),i.query=t.query;else if(m=="?")i.host=t.host,i.path=He(t.path),i.query="",n=Jt;else if(m=="#")i.host=t.host,i.path=He(t.path),i.query=t.query,i.fragment="",n=et;else{Bh(Mn(He(v,o),""))||(i.host=t.host,i.path=He(t.path),i.shortenPath()),n=Ke;continue}else{n=Ke;continue}break;case qh:if(m=="/"||m=="\\"){n=ju;break}t&&t.scheme=="file"&&!Bh(Mn(He(v,o),""))&&(Bn(t.path[0],!0)?Mr(i.path,t.path[0]):i.host=t.host),n=Ke;continue;case ju:if(m==Ce||m=="/"||m=="\\"||m=="?"||m=="#"){if(!e&&Bn(a))n=Ke;else if(a==""){if(i.host="",e)return;n=Or}else{if(P=i.parseHost(a),P)return P;if(i.host=="localhost"&&(i.host=""),e)return;a="",n=Or}continue}else a+=m;break;case Or:if(i.isSpecial()){if(n=Ke,m!="/"&&m!="\\")continue}else if(!e&&m=="?")i.query="",n=Jt;else if(!e&&m=="#")i.fragment="",n=et;else if(m!=Ce&&(n=Ke,m!="/"))continue;break;case Ke:if(m==Ce||m=="/"||m=="\\"&&i.isSpecial()||!e&&(m=="?"||m=="#")){if(Wx(a)?(i.shortenPath(),m!="/"&&!(m=="\\"&&i.isSpecial())&&Mr(i.path,"")):jx(a)?m!="/"&&!(m=="\\"&&i.isSpecial())&&Mr(i.path,""):(i.scheme=="file"&&!i.path.length&&Bn(a)&&(i.host&&(i.host=""),a=we(a,0)+":"),Mr(i.path,a)),a="",i.scheme=="file"&&(m==Ce||m=="?"||m=="#"))for(;i.path.length>1&&i.path[0]==="";)xx(i.path);m=="?"?(i.query="",n=Jt):m=="#"&&(i.fragment="",n=et)}else a+=gt(m,Jh);break;case Hh:m=="?"?(i.query="",n=Jt):m=="#"?(i.fragment="",n=et):m!=Ce&&(i.path[0]+=gt(m,La));break;case Jt:!e&&m=="#"?(i.fragment="",n=et):m!=Ce&&(m=="'"&&i.isSpecial()?i.query+="%27":m=="#"?i.query+="%23":i.query+=gt(m,La));break;case et:m!=Ce&&(i.fragment+=gt(m,Vh));break}o++}},parseHost:function(r){var e,t,i;if(we(r,0)=="["){if(we(r,r.length-1)!="]"||(e=qx(Ln(r,1,-1)),!e))return Vt;this.host=e}else if(this.isSpecial()){if(r=yx(r),je(Lx,r)||(e=Nx(r),e===null))return Vt;this.host=e}else{if(je(Ux,r))return Vt;for(e="",t=Fr(r),i=0;i<t.length;i++)e+=gt(t[i],La);this.host=e}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||this.scheme=="file"},includesCredentials:function(){return this.username!=""||this.password!=""},isSpecial:function(){return zu(Oa,this.scheme)},shortenPath:function(){var r=this.path,e=r.length;e&&(this.scheme!="file"||e!=1||!Bn(r[0],!0))&&r.length--},serialize:function(){var r=this,e=r.scheme,t=r.username,i=r.password,n=r.host,o=r.port,a=r.path,c=r.query,p=r.fragment,g=e+":";return n!==null?(g+="//",r.includesCredentials()&&(g+=t+(i?":"+i:"")+"@"),g+=On(n),o!==null&&(g+=":"+o)):e=="file"&&(g+="//"),g+=r.cannotBeABaseURL?a[0]:a.length?"/"+Mn(a,"/"):"",c!==null&&(g+="?"+c),p!==null&&(g+="#"+p),g},setHref:function(r){var e=this.parse(r);if(e)throw Vu(e);this.searchParams.update()},getOrigin:function(){var r=this.scheme,e=this.port;if(r=="blob")try{return new Br(r.path[0]).origin}catch{return"null"}return r=="file"||!this.isSpecial()?"null":r+"://"+On(this.host)+(e!==null?":"+e:"")},getProtocol:function(){return this.scheme+":"},setProtocol:function(r){this.parse(tt(r)+":",Lu)},getUsername:function(){return this.username},setUsername:function(r){var e=Fr(tt(r));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var t=0;t<e.length;t++)this.username+=gt(e[t],Bu)}},getPassword:function(){return this.password},setPassword:function(r){var e=Fr(tt(r));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var t=0;t<e.length;t++)this.password+=gt(e[t],Bu)}},getHost:function(){var r=this.host,e=this.port;return r===null?"":e===null?On(r):On(r)+":"+e},setHost:function(r){this.cannotBeABaseURL||this.parse(r,_u)},getHostname:function(){var r=this.host;return r===null?"":On(r)},setHostname:function(r){this.cannotBeABaseURL||this.parse(r,Nu)},getPort:function(){var r=this.port;return r===null?"":tt(r)},setPort:function(r){this.cannotHaveUsernamePasswordPort()||(r=tt(r),r==""?this.port=null:this.parse(r,qu))},getPathname:function(){var r=this.path;return this.cannotBeABaseURL?r[0]:r.length?"/"+Mn(r,"/"):""},setPathname:function(r){this.cannotBeABaseURL||(this.path=[],this.parse(r,Or))},getSearch:function(){var r=this.query;return r?"?"+r:""},setSearch:function(r){r=tt(r),r==""?this.query=null:(we(r,0)=="?"&&(r=Ln(r,1)),this.query="",this.parse(r,Jt)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var r=this.fragment;return r?"#"+r:""},setHash:function(r){if(r=tt(r),r==""){this.fragment=null;return}we(r,0)=="#"&&(r=Ln(r,1)),this.fragment="",this.parse(r,et)},update:function(){this.query=this.searchParams.serialize()||null}};var Br=function(e){var t=hx(this,Y),i=Px(arguments.length,1)>1?arguments[1]:void 0,n=kx(t,new Zu(e,!1,i));$u||(t.href=n.serialize(),t.origin=n.getOrigin(),t.protocol=n.getProtocol(),t.username=n.getUsername(),t.password=n.getPassword(),t.host=n.getHost(),t.hostname=n.getHostname(),t.port=n.getPort(),t.pathname=n.getPathname(),t.search=n.getSearch(),t.searchParams=n.getSearchParams(),t.hash=n.getHash())},Y=Br.prototype,Ie=function(r,e){return{get:function(){return Da(this)[r]()},set:e&&function(t){return Da(this)[e](t)},configurable:!0,enumerable:!0}};$u&&(Se(Y,"href",Ie("serialize","setHref")),Se(Y,"origin",Ie("getOrigin")),Se(Y,"protocol",Ie("getProtocol","setProtocol")),Se(Y,"username",Ie("getUsername","setUsername")),Se(Y,"password",Ie("getPassword","setPassword")),Se(Y,"host",Ie("getHost","setHost")),Se(Y,"hostname",Ie("getHostname","setHostname")),Se(Y,"port",Ie("getPort","setPort")),Se(Y,"pathname",Ie("getPathname","setPathname")),Se(Y,"search",Ie("getSearch","setSearch")),Se(Y,"searchParams",Ie("getSearchParams")),Se(Y,"hash",Ie("getHash","setHash")));Ua(Y,"toJSON",function(){return Da(this).serialize()},{enumerable:!0});Ua(Y,"toString",function(){return Da(this).serialize()},{enumerable:!0});Fn&&(Wu=Fn.createObjectURL,Gu=Fn.revokeObjectURL,Wu&&Ua(Br,"createObjectURL",Rh(Wu,Fn)),Gu&&Ua(Br,"revokeObjectURL",Rh(Gu,Fn)));var Wu,Gu;bx(Br,"URL");gx({global:!0,constructor:!0,forced:!fx,sham:!$u},{URL:Br})});var Kh=h(()=>{$h()});var Xh=h(()=>{"use strict";var Gx=kn(),zx=_e();Gx({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return zx(URL.prototype.toString,this)}})});var Zh=h(()=>{Ou()});var Qh=h((aM,Yh)=>{var Vx=ue();Yh.exports=Vx});var tv=h((dM,ev)=>{Kh();Xh();Zh();var Jx=Qh();ev.exports=Jx.URL});var Cc=h((wU,sy)=>{var dT=Object.prototype.toString;sy.exports=function(e){if(e===void 0)return"undefined";if(e===null)return"null";var t=typeof e;if(t==="boolean")return"boolean";if(t==="string")return"string";if(t==="number")return"number";if(t==="symbol")return"symbol";if(t==="function")return pT(e)?"generatorfunction":"function";if(lT(e))return"array";if(hT(e))return"buffer";if(fT(e))return"arguments";if(cT(e))return"date";if(uT(e))return"error";if(mT(e))return"regexp";switch(ny(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(gT(e))return"generator";switch(t=dT.call(e),t){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return t.slice(8,-1).toLowerCase().replace(/\s/g,"")};function ny(r){return typeof r.constructor=="function"?r.constructor.name:null}function lT(r){return Array.isArray?Array.isArray(r):r instanceof Array}function uT(r){return r instanceof Error||typeof r.message=="string"&&r.constructor&&typeof r.constructor.stackTraceLimit=="number"}function cT(r){return r instanceof Date?!0:typeof r.toDateString=="function"&&typeof r.getDate=="function"&&typeof r.setDate=="function"}function mT(r){return r instanceof RegExp?!0:typeof r.flags=="string"&&typeof r.ignoreCase=="boolean"&&typeof r.multiline=="boolean"&&typeof r.global=="boolean"}function pT(r,e){return ny(r)==="GeneratorFunction"}function gT(r){return typeof r.throw=="function"&&typeof r.return=="function"&&typeof r.next=="function"}function fT(r){try{if(typeof r.length=="number"&&typeof r.callee=="function")return!0}catch(e){if(e.message.indexOf("callee")!==-1)return!0}return!1}function hT(r){return r.constructor&&typeof r.constructor.isBuffer=="function"?r.constructor.isBuffer(r):!1}});var dy=h((AU,ay)=>{"use strict";var oy=Symbol.prototype.valueOf,vT=Cc();function yT(r,e){switch(vT(r)){case"array":return r.slice();case"object":return Object.assign({},r);case"date":return new r.constructor(Number(r));case"map":return new Map(r);case"set":return new Set(r);case"buffer":return ST(r);case"symbol":return CT(r);case"arraybuffer":return PT(r);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return kT(r);case"regexp":return bT(r);case"error":return Object.create(r);default:return r}}function bT(r){let e=r.flags!==void 0?r.flags:/\w+$/.exec(r)||void 0,t=new r.constructor(r.source,e);return t.lastIndex=r.lastIndex,t}function PT(r){let e=new r.constructor(r.byteLength);return new Uint8Array(e).set(new Uint8Array(r)),e}function kT(r,e){return new r.constructor(r.buffer,r.byteOffset,r.length)}function ST(r){let e=r.length,t=Buffer.allocUnsafe?Buffer.allocUnsafe(e):Buffer.from(e);return r.copy(t),t}function CT(r){return oy?Object(oy.call(r)):{}}ay.exports=yT});var uy=h((xU,ly)=>{"use strict";ly.exports=function(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1}});var py=h((TU,my)=>{"use strict";var IT=uy();function cy(r){return IT(r)===!0&&Object.prototype.toString.call(r)==="[object Object]"}my.exports=function(e){var t,i;return!(cy(e)===!1||(t=e.constructor,typeof t!="function")||(i=t.prototype,cy(i)===!1)||i.hasOwnProperty("isPrototypeOf")===!1)}});var fy=h((EU,gy)=>{"use strict";var wT=dy(),AT=Cc(),xT=py();function Ic(r,e){switch(AT(r)){case"object":return TT(r,e);case"array":return ET(r,e);default:return wT(r)}}function TT(r,e){if(typeof e=="function")return e(r);if(e||xT(r)){let t=new r.constructor;for(let i in r)t[i]=Ic(r[i],e);return t}return r}function ET(r,e){let t=new r.constructor(r.length);for(let i=0;i<r.length;i++)t[i]=Ic(r[i],e);return t}gy.exports=Ic});var Xy=h((Kn,ii)=>{var RT=200,Lc="__lodash_hash_undefined__",hd=1,xy=2,Ty=9007199254740991,ld="[object Arguments]",Tc="[object Array]",FT="[object AsyncFunction]",Ey="[object Boolean]",Ry="[object Date]",Fy="[object Error]",Oy="[object Function]",OT="[object GeneratorFunction]",ud="[object Map]",My="[object Number]",MT="[object Null]",ri="[object Object]",hy="[object Promise]",BT="[object Proxy]",By="[object RegExp]",cd="[object Set]",Ly="[object String]",LT="[object Symbol]",UT="[object Undefined]",Ec="[object WeakMap]",Uy="[object ArrayBuffer]",md="[object DataView]",DT="[object Float32Array]",_T="[object Float64Array]",NT="[object Int8Array]",qT="[object Int16Array]",HT="[object Int32Array]",jT="[object Uint8Array]",WT="[object Uint8ClampedArray]",GT="[object Uint16Array]",zT="[object Uint32Array]",VT=/[\\^$.*+?()[\]{}|]/g,JT=/^\[object .+?Constructor\]$/,$T=/^(?:0|[1-9]\d*)$/,q={};q[DT]=q[_T]=q[NT]=q[qT]=q[HT]=q[jT]=q[WT]=q[GT]=q[zT]=!0;q[ld]=q[Tc]=q[Uy]=q[Ey]=q[md]=q[Ry]=q[Fy]=q[Oy]=q[ud]=q[My]=q[ri]=q[By]=q[cd]=q[Ly]=q[Ec]=!1;var Dy=typeof global=="object"&&global&&global.Object===Object&&global,KT=typeof self=="object"&&self&&self.Object===Object&&self,st=Dy||KT||Function("return this")(),_y=typeof Kn=="object"&&Kn&&!Kn.nodeType&&Kn,vy=_y&&typeof ii=="object"&&ii&&!ii.nodeType&&ii,Ny=vy&&vy.exports===_y,wc=Ny&&Dy.process,yy=function(){try{return wc&&wc.binding&&wc.binding("util")}catch{}}(),by=yy&&yy.isTypedArray;function XT(r,e){for(var t=-1,i=r==null?0:r.length,n=0,o=[];++t<i;){var a=r[t];e(a,t,r)&&(o[n++]=a)}return o}function ZT(r,e){for(var t=-1,i=e.length,n=r.length;++t<i;)r[n+t]=e[t];return r}function YT(r,e){for(var t=-1,i=r==null?0:r.length;++t<i;)if(e(r[t],t,r))return!0;return!1}function QT(r,e){for(var t=-1,i=Array(r);++t<r;)i[t]=e(t);return i}function eE(r){return function(e){return r(e)}}function tE(r,e){return r.has(e)}function rE(r,e){return r?.[e]}function iE(r){var e=-1,t=Array(r.size);return r.forEach(function(i,n){t[++e]=[n,i]}),t}function nE(r,e){return function(t){return r(e(t))}}function sE(r){var e=-1,t=Array(r.size);return r.forEach(function(i){t[++e]=i}),t}var oE=Array.prototype,aE=Function.prototype,vd=Object.prototype,Ac=st["__core-js_shared__"],qy=aE.toString,Xe=vd.hasOwnProperty,Py=function(){var r=/[^.]+$/.exec(Ac&&Ac.keys&&Ac.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}(),Hy=vd.toString,dE=RegExp("^"+qy.call(Xe).replace(VT,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ky=Ny?st.Buffer:void 0,pd=st.Symbol,Sy=st.Uint8Array,jy=vd.propertyIsEnumerable,lE=oE.splice,rr=pd?pd.toStringTag:void 0,Cy=Object.getOwnPropertySymbols,uE=ky?ky.isBuffer:void 0,cE=nE(Object.keys,Object),Rc=ni(st,"DataView"),Xn=ni(st,"Map"),Fc=ni(st,"Promise"),Oc=ni(st,"Set"),Mc=ni(st,"WeakMap"),Zn=ni(Object,"create"),mE=sr(Rc),pE=sr(Xn),gE=sr(Fc),fE=sr(Oc),hE=sr(Mc),Iy=pd?pd.prototype:void 0,xc=Iy?Iy.valueOf:void 0;function ir(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}function vE(){this.__data__=Zn?Zn(null):{},this.size=0}function yE(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}function bE(r){var e=this.__data__;if(Zn){var t=e[r];return t===Lc?void 0:t}return Xe.call(e,r)?e[r]:void 0}function PE(r){var e=this.__data__;return Zn?e[r]!==void 0:Xe.call(e,r)}function kE(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=Zn&&e===void 0?Lc:e,this}ir.prototype.clear=vE;ir.prototype.delete=yE;ir.prototype.get=bE;ir.prototype.has=PE;ir.prototype.set=kE;function ot(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}function SE(){this.__data__=[],this.size=0}function CE(r){var e=this.__data__,t=yd(e,r);if(t<0)return!1;var i=e.length-1;return t==i?e.pop():lE.call(e,t,1),--this.size,!0}function IE(r){var e=this.__data__,t=yd(e,r);return t<0?void 0:e[t][1]}function wE(r){return yd(this.__data__,r)>-1}function AE(r,e){var t=this.__data__,i=yd(t,r);return i<0?(++this.size,t.push([r,e])):t[i][1]=e,this}ot.prototype.clear=SE;ot.prototype.delete=CE;ot.prototype.get=IE;ot.prototype.has=wE;ot.prototype.set=AE;function nr(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var i=r[e];this.set(i[0],i[1])}}function xE(){this.size=0,this.__data__={hash:new ir,map:new(Xn||ot),string:new ir}}function TE(r){var e=bd(this,r).delete(r);return this.size-=e?1:0,e}function EE(r){return bd(this,r).get(r)}function RE(r){return bd(this,r).has(r)}function FE(r,e){var t=bd(this,r),i=t.size;return t.set(r,e),this.size+=t.size==i?0:1,this}nr.prototype.clear=xE;nr.prototype.delete=TE;nr.prototype.get=EE;nr.prototype.has=RE;nr.prototype.set=FE;function gd(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new nr;++e<t;)this.add(r[e])}function OE(r){return this.__data__.set(r,Lc),this}function ME(r){return this.__data__.has(r)}gd.prototype.add=gd.prototype.push=OE;gd.prototype.has=ME;function It(r){var e=this.__data__=new ot(r);this.size=e.size}function BE(){this.__data__=new ot,this.size=0}function LE(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}function UE(r){return this.__data__.get(r)}function DE(r){return this.__data__.has(r)}function _E(r,e){var t=this.__data__;if(t instanceof ot){var i=t.__data__;if(!Xn||i.length<RT-1)return i.push([r,e]),this.size=++t.size,this;t=this.__data__=new nr(i)}return t.set(r,e),this.size=t.size,this}It.prototype.clear=BE;It.prototype.delete=LE;It.prototype.get=UE;It.prototype.has=DE;It.prototype.set=_E;function NE(r,e){var t=fd(r),i=!t&&eR(r),n=!t&&!i&&Bc(r),o=!t&&!i&&!n&&Ky(r),a=t||i||n||o,c=a?QT(r.length,String):[],p=c.length;for(var g in r)(e||Xe.call(r,g))&&!(a&&(g=="length"||n&&(g=="offset"||g=="parent")||o&&(g=="buffer"||g=="byteLength"||g=="byteOffset")||KE(g,p)))&&c.push(g);return c}function yd(r,e){for(var t=r.length;t--;)if(zy(r[t][0],e))return t;return-1}function qE(r,e,t){var i=e(r);return fd(r)?i:ZT(i,t(r))}function Qn(r){return r==null?r===void 0?UT:MT:rr&&rr in Object(r)?JE(r):QE(r)}function wy(r){return Yn(r)&&Qn(r)==ld}function Wy(r,e,t,i,n){return r===e?!0:r==null||e==null||!Yn(r)&&!Yn(e)?r!==r&&e!==e:HE(r,e,t,i,Wy,n)}function HE(r,e,t,i,n,o){var a=fd(r),c=fd(e),p=a?Tc:Ct(r),g=c?Tc:Ct(e);p=p==ld?ri:p,g=g==ld?ri:g;var v=p==ri,m=g==ri,y=p==g;if(y&&Bc(r)){if(!Bc(e))return!1;a=!0,v=!1}if(y&&!v)return o||(o=new It),a||Ky(r)?Gy(r,e,t,i,n,o):zE(r,e,p,t,i,n,o);if(!(t&hd)){var P=v&&Xe.call(r,"__wrapped__"),C=m&&Xe.call(e,"__wrapped__");if(P||C){var w=P?r.value():r,x=C?e.value():e;return o||(o=new It),n(w,x,t,i,o)}}return y?(o||(o=new It),VE(r,e,t,i,n,o)):!1}function jE(r){if(!$y(r)||ZE(r))return!1;var e=Vy(r)?dE:JT;return e.test(sr(r))}function WE(r){return Yn(r)&&Jy(r.length)&&!!q[Qn(r)]}function GE(r){if(!YE(r))return cE(r);var e=[];for(var t in Object(r))Xe.call(r,t)&&t!="constructor"&&e.push(t);return e}function Gy(r,e,t,i,n,o){var a=t&hd,c=r.length,p=e.length;if(c!=p&&!(a&&p>c))return!1;var g=o.get(r);if(g&&o.get(e))return g==e;var v=-1,m=!0,y=t&xy?new gd:void 0;for(o.set(r,e),o.set(e,r);++v<c;){var P=r[v],C=e[v];if(i)var w=a?i(C,P,v,e,r,o):i(P,C,v,r,e,o);if(w!==void 0){if(w)continue;m=!1;break}if(y){if(!YT(e,function(x,B){if(!tE(y,B)&&(P===x||n(P,x,t,i,o)))return y.push(B)})){m=!1;break}}else if(!(P===C||n(P,C,t,i,o))){m=!1;break}}return o.delete(r),o.delete(e),m}function zE(r,e,t,i,n,o,a){switch(t){case md:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case Uy:return!(r.byteLength!=e.byteLength||!o(new Sy(r),new Sy(e)));case Ey:case Ry:case My:return zy(+r,+e);case Fy:return r.name==e.name&&r.message==e.message;case By:case Ly:return r==e+"";case ud:var c=iE;case cd:var p=i&hd;if(c||(c=sE),r.size!=e.size&&!p)return!1;var g=a.get(r);if(g)return g==e;i|=xy,a.set(r,e);var v=Gy(c(r),c(e),i,n,o,a);return a.delete(r),v;case LT:if(xc)return xc.call(r)==xc.call(e)}return!1}function VE(r,e,t,i,n,o){var a=t&hd,c=Ay(r),p=c.length,g=Ay(e),v=g.length;if(p!=v&&!a)return!1;for(var m=p;m--;){var y=c[m];if(!(a?y in e:Xe.call(e,y)))return!1}var P=o.get(r);if(P&&o.get(e))return P==e;var C=!0;o.set(r,e),o.set(e,r);for(var w=a;++m<p;){y=c[m];var x=r[y],B=e[y];if(i)var ze=a?i(B,x,y,e,r,o):i(x,B,y,r,e,o);if(!(ze===void 0?x===B||n(x,B,t,i,o):ze)){C=!1;break}w||(w=y=="constructor")}if(C&&!w){var gn=r.constructor,Ko=e.constructor;gn!=Ko&&"constructor"in r&&"constructor"in e&&!(typeof gn=="function"&&gn instanceof gn&&typeof Ko=="function"&&Ko instanceof Ko)&&(C=!1)}return o.delete(r),o.delete(e),C}function Ay(r){return qE(r,iR,$E)}function bd(r,e){var t=r.__data__;return XE(e)?t[typeof e=="string"?"string":"hash"]:t.map}function ni(r,e){var t=rE(r,e);return jE(t)?t:void 0}function JE(r){var e=Xe.call(r,rr),t=r[rr];try{r[rr]=void 0;var i=!0}catch{}var n=Hy.call(r);return i&&(e?r[rr]=t:delete r[rr]),n}var $E=Cy?function(r){return r==null?[]:(r=Object(r),XT(Cy(r),function(e){return jy.call(r,e)}))}:nR,Ct=Qn;(Rc&&Ct(new Rc(new ArrayBuffer(1)))!=md||Xn&&Ct(new Xn)!=ud||Fc&&Ct(Fc.resolve())!=hy||Oc&&Ct(new Oc)!=cd||Mc&&Ct(new Mc)!=Ec)&&(Ct=function(r){var e=Qn(r),t=e==ri?r.constructor:void 0,i=t?sr(t):"";if(i)switch(i){case mE:return md;case pE:return ud;case gE:return hy;case fE:return cd;case hE:return Ec}return e});function KE(r,e){return e=e??Ty,!!e&&(typeof r=="number"||$T.test(r))&&r>-1&&r%1==0&&r<e}function XE(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}function ZE(r){return!!Py&&Py in r}function YE(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||vd;return r===t}function QE(r){return Hy.call(r)}function sr(r){if(r!=null){try{return qy.call(r)}catch{}try{return r+""}catch{}}return""}function zy(r,e){return r===e||r!==r&&e!==e}var eR=wy(function(){return arguments}())?wy:function(r){return Yn(r)&&Xe.call(r,"callee")&&!jy.call(r,"callee")},fd=Array.isArray;function tR(r){return r!=null&&Jy(r.length)&&!Vy(r)}var Bc=uE||sR;function rR(r,e){return Wy(r,e)}function Vy(r){if(!$y(r))return!1;var e=Qn(r);return e==Oy||e==OT||e==FT||e==BT}function Jy(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=Ty}function $y(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}function Yn(r){return r!=null&&typeof r=="object"}var Ky=by?eE(by):WE;function iR(r){return tR(r)?NE(r):GE(r)}function nR(){return[]}function sR(){return!1}ii.exports=rR});var PP=h(Md=>{"use strict";Md.byteLength=AR;Md.toByteArray=TR;Md.fromByteArray=FR;var Ze=[],Be=[],wR=typeof Uint8Array<"u"?Uint8Array:Array,Qc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(gr=0,yP=Qc.length;gr<yP;++gr)Ze[gr]=Qc[gr],Be[Qc.charCodeAt(gr)]=gr;var gr,yP;Be["-".charCodeAt(0)]=62;Be["_".charCodeAt(0)]=63;function bP(r){var e=r.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=r.indexOf("=");t===-1&&(t=e);var i=t===e?0:4-t%4;return[t,i]}function AR(r){var e=bP(r),t=e[0],i=e[1];return(t+i)*3/4-i}function xR(r,e,t){return(e+t)*3/4-t}function TR(r){var e,t=bP(r),i=t[0],n=t[1],o=new wR(xR(r,i,n)),a=0,c=n>0?i-4:i,p;for(p=0;p<c;p+=4)e=Be[r.charCodeAt(p)]<<18|Be[r.charCodeAt(p+1)]<<12|Be[r.charCodeAt(p+2)]<<6|Be[r.charCodeAt(p+3)],o[a++]=e>>16&255,o[a++]=e>>8&255,o[a++]=e&255;return n===2&&(e=Be[r.charCodeAt(p)]<<2|Be[r.charCodeAt(p+1)]>>4,o[a++]=e&255),n===1&&(e=Be[r.charCodeAt(p)]<<10|Be[r.charCodeAt(p+1)]<<4|Be[r.charCodeAt(p+2)]>>2,o[a++]=e>>8&255,o[a++]=e&255),o}function ER(r){return Ze[r>>18&63]+Ze[r>>12&63]+Ze[r>>6&63]+Ze[r&63]}function RR(r,e,t){for(var i,n=[],o=e;o<t;o+=3)i=(r[o]<<16&16711680)+(r[o+1]<<8&65280)+(r[o+2]&255),n.push(ER(i));return n.join("")}function FR(r){for(var e,t=r.length,i=t%3,n=[],o=16383,a=0,c=t-i;a<c;a+=o)n.push(RR(r,a,a+o>c?c:a+o));return i===1?(e=r[t-1],n.push(Ze[e>>2]+Ze[e<<4&63]+"==")):i===2&&(e=(r[t-2]<<8)+r[t-1],n.push(Ze[e>>10]+Ze[e>>4&63]+Ze[e<<2&63]+"=")),n.join("")}});var Pq=Xo(tv(),1);function f(r,e){if(r==null)throw Error(e??"Expected nonnullish value.")}function $t(r,e){if(!r)throw Error(e)}var Q;(function(r){r.COMMENT="t1_",r.ACCOUNT="t2_",r.LINK="t3_",r.MESSAGE="t4_",r.SUBREDDIT="t5_",r.AWARD="t6_"})(Q||(Q={}));function ft(r){return r.startsWith(Q.COMMENT)}function qa(r){return r.startsWith(Q.ACCOUNT)}function Kt(r){return r.startsWith(Q.LINK)}function rv(r){return r.startsWith(Q.MESSAGE)}function iv(r){return r.startsWith(Q.SUBREDDIT)}function nv(r){return r.startsWith(Q.AWARD)}function $x(r){$t(ft(r),`Expected comment id to start with ${Q.COMMENT}, got ${r}}`)}function Kx(r){$t(qa(r),`Expected account id to start with ${Q.ACCOUNT}, got ${r}}`)}function Xx(r){$t(Kt(r),`Expected link id to start with ${Q.LINK}, got ${r}}`)}function Zx(r){$t(rv(r),`Expected message id to start with ${Q.MESSAGE}, got ${r}}`)}function Yx(r){$t(iv(r),`Expected subreddit id to start with ${Q.SUBREDDIT}, got ${r}}`)}function Qx(r){$t(nv(r),`Expected award id to start with ${Q.AWARD}, got ${r}}`)}function Lr(r){return $x(r),r}function ee(r){return Kx(r),r}function pe(r){return Xx(r),r}function e0(r){return Zx(r),r}function xe(r){return Yx(r),r}function t0(r){return Qx(r),r}function ge(r){if(ft(r))return Lr(r);if(qa(r))return ee(r);if(Kt(r))return pe(r);if(rv(r))return e0(r);if(iv(r))return xe(r);if(nv(r))return t0(r);throw new Error(`Expected thing id to start with ${Object.values(Q).join(", ")} got ${r}}`)}function Yu(r){return ft(r)}import*as S from"@devvit/protos";var Ha=class{constructor(e){}};var Qu=(t=>(t.Installation="installation",t.App="app",t))(Qu||{});function Xt(r,e=new Set){for(let t of r){if(t.type==="group"){Xt(t.fields,e);continue}let i=t.name;if(e.has(i))throw new Error(`Duplicate field name: ${i}`);e.add(i)}r0(r)}function r0(r){for(let e of r)if(e.type==="string"&&e.isSecret&&e.scope!=="app")throw`Invalid setting: only app settings can be secrets. Add "scope: SettingScope.App" to field "${e.name}"`}var ht=Object.freeze({INTERVAL:0,FORM:1,STATE:2,CHANNEL:3});var yM=["activity","add-emoji","add","add-media","add-to-feed","admin","align-center","align-left","align-right","all","appearance","approve","archived","aspect-ratio","aspect-rectangle","attach","audio","author","avatar-style","award","back","ban","best","binoculars","block","blockchain","bold","bot","boost","bounce","browse","browser","cake","calendar","camera","caret-down","caret-left","caret-right","caret-up","chat","chat-group","chat-new","checkbox-dismiss","checkbox","checkmark","chrome","clear","close","closed-captioning","code-block","code-inline","coins-color-old","coins-color","coins","collapse-left","collapse-right","collection","comment","comments","community","contest","controversial","crop","crosspost","crowd-control","custom-feed","customize","day","delete","discover","dismiss-all","distinguish","down-arrow","down","download","downvote","downvotes","drag","drugs","duplicate","edit","effect","embed","emoji","end-live-chat","error","expand-left","expand-right","external","feed-video","filter","format","forward","gif-post","heart","help","hide","history","home","hot","ignore-reports","image-post","inbox","info","invite","italic","join","joined","jump-down","jump-up","karma","keyboard","kick","language","leave","left","link","link-post","list-bulleted","list-numbered","live-chat","live","load","location","lock","logout","loop","mark-read","mask","media-gallery","meme","menu","message","mic","mic-mute","mod","mod-mail","mod-mode","mod-mute","mod-overflow","mod-queue","mod-unmute","music","new","night","notification","notification-frequent","notification-off","nsfw","nsfw-language","nsfw-violence","original","overflow-caret","overflow-horizontal","overflow-vertical","pause","payment","peace","pending-posts","phone","pin","planet","play","poll-post","popular","posts","powerup-color-outline","powerup-fill-color","powerup","predictions","premium","privacy","profile","qa","qr-code","quarantined","quote","r-slash","radio-button","raise-hand","random","ratings-everyone","ratings-mature","ratings-nsfw","ratings-violence","refresh","remove","reply","report","reverse","right","rising","rotate","rotate-image","rpan","rules","safari","save","saved","search","self","send","settings","share-android","share","share-ios","show","side-menu","skipback10","skipforward10","sort-az","sort","sort-price","sort-za","spam","spoiler","sponsored","star","statistics","status-live","sticker","strikethrough","subtract","superscript","swap-camera","swipe-back","swipe-down","swipe","swipe-up","table","tag","tap","telescope","text","text-post","text-size","toggle","tools","top","topic-activism","topic-addictionsupport","topic-advice","topic-animals","topic-anime","topic-art","topic-beauty","topic-business","topic-careers","topic-cars","topic-celebrity","topic-craftsdiy","topic-crypto","topic-culture","topic-diy","topic-entertainment","topic-ethics","topic-family","topic-fashion","topic","topic-fitness","topic-food","topic-funny","topic-gender","topic-health","topic-help","topic-history","topic-hobbies","topic-homegarden","topic-internet","topic-law","topic-learning","topic-lifestyle","topic-marketplace","topic-mature","topic-mensfashion","topic-menshealth","topic-meta","topic-military","topic-movies","topic-music","topic-news","topic-other","topic-outdoors","topic-pets","topic-photography","topic-places","topic-podcasts","topic-politics","topic-programming","topic-reading","topic-religion","topic-science","topic-sexorientation","topic-sports","topic-style","topic-tabletop","topic-technology","topic-television","topic-traumasupport","topic-travel","topic-videogaming","topic-womensfashion","topic-womenshealth","translate","trim","u-slash","unban","undo","unheart","unlock","unmod","unpin","unverified","up-arrow","up","upload","upvote","upvotes","user","user-note","users","vault","verified","video-camera","video-feed","video-live-1","video-live-fill-1","video-live","video-post","video-thread","video-transcription","view-card","view-classic","view-compact","view-grid","views","volume","volume-mute","wallet","warning","wiki-ban","wiki","wiki-unban","world"];import{AppSettingsDefinition as f0,GetFieldsResponse as h0}from"@devvit/protos";import{FormField as Zt,FormFieldType as Te}from"@devvit/protos";function rt(r){return r.map(e=>{switch(e.type){case"string":return i0(e);case"image":return n0(e);case"paragraph":return s0(e);case"number":return o0(e);case"select":return a0(e);case"boolean":return d0(e);case"group":return l0(e);default:throw new Error("Unknown field type.")}})}function i0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.STRING,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{stringConfig:{placeholder:r.placeholder}},fieldId:r.name,fieldType:Te.STRING,helpText:r.helpText,label:r.label,required:r.required,isSecret:r.isSecret})}function n0(r){return Zt.fromPartial({disabled:r.disabled,fieldId:r.name,fieldType:Te.IMAGE,helpText:r.helpText,label:r.label,required:r.required})}function s0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.PARAGRAPH,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{paragraphConfig:{lineHeight:r.lineHeight,placeholder:r.placeholder}},fieldId:r.name,fieldType:Te.PARAGRAPH,helpText:r.helpText,label:r.label,required:r.required})}function o0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.NUMBER,numberValue:r.defaultValue},disabled:r.disabled,fieldConfig:{numberConfig:{}},fieldId:r.name,fieldType:Te.NUMBER,helpText:r.helpText,label:r.label,required:r.required})}function a0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.SELECTION,selectionValue:{values:r.defaultValue}},disabled:r.disabled,fieldConfig:{selectionConfig:{choices:r.options,multiSelect:r.multiSelect}},fieldId:r.name,fieldType:Te.SELECTION,helpText:r.helpText,label:r.label,required:r.required})}function d0(r){return Zt.fromPartial({defaultValue:{fieldType:Te.BOOLEAN,boolValue:r.defaultValue},disabled:r.disabled,fieldId:r.name,fieldType:Te.BOOLEAN,helpText:r.helpText,label:r.label})}function l0(r){return Zt.fromPartial({fieldType:Te.GROUP,fieldConfig:{groupConfig:{fields:rt(r.fields)}},label:r.label,helpText:r.helpText})}function M(r,e){u.prototype[r]=e}import{ValidateFormResponse as g0}from"@devvit/protos";import{RealtimeSubscriptionStatus as sv}from"@devvit/protos";var se=Object.freeze({Actor:"devvit-actor",App:"devvit-app",AppUser:"devvit-app-user",AppViewerAuthToken:"devvit-app-viewer-authorization",Caller:"devvit-caller",CallerPortID:"devvit-caller-port-id",Canary:"devvit-canary",DebugRenderXML:"devvit-debug-render-xml",GQLHost:"devvit-gql-host",Installation:"devvit-installation",ModPermissions:"devvit-mod-permissions",R2Auth:"devvit-sec-authorization",R2Host:"devvit-r2-host",RemoteHostname:"devvit-remote-hostname",SettingsUri:"devvit-sec-settings-uri",StreamID:"devvit-stream-id",Subreddit:"devvit-subreddit",TraceID:"devvit-trace-id",User:"devvit-user",Version:"devvit-version"});function ov(r){function e(t){let i=r.currentHookIndex,n=r.getCurrentComponentState(),o=r.getPreviousComponentState(),a=r.metadata[se.App]?.values[0];f(a,"useChannel - app is missing from Context");let c=r.metadata[se.Installation]?.values[0];f(c,"useChannel - installation is missing from Context");async function p(w){let x=n[i].channel;if(n[i].active)if(n[i].connected)await r.realtime.send(x,w);else throw Error(`Failed to send to channel '${x}'; it is active but not yet connected`);else throw Error(`Cannot send a message over inactive channel: ${x}`)}function g(){if(!n[i].active){let w=n[i].channel;n[i].active=!0,r.addRealtimeChannel(w)}}function v(){if(n[i].active){let w=n[i].channel;n[i].active=!1,r.removeRealtimeChannel(w)}}function m(w){return async()=>{let x;switch(w.status){case sv.REALTIME_SUBSCRIBED:n[i].connected=!0,x=t.onSubscribed?.();break;case sv.REALTIME_UNSUBSCRIBED:n[i].connected=!1,x=t.onUnsubscribed?.();break;default:x=t.onMessage(w.event?.data??{});break}await x}}let y={channel:`${a}:${c}:${t.name}`,active:!1,connected:!1,preventCallback:!1,type:ht.CHANNEL};i in n?y=n[i]:i in o&&(y=o[i]);let P=r.realtimeEvent;r.isInitialRender?y.active=!1:P&&y.active&&P.event.channel===y.channel&&(y.preventCallback||r.runHook(m(P)),r.rerenderIn(0)),n[i]=y,r.currentHookIndex++;let C=0;return y.active&&y.connected?C=2:y.active&&!y.connected?C=1:!y.active&&y.connected?C=3:!y.active&&!y.connected&&(C=4),{subscribe:g,unsubscribe:v,send:p,status:C}}return e}import{FormFieldType as Ur}from"@devvit/protos";function ec(r){switch(r.fieldType){case Ur.STRING:return r.stringValue;case Ur.IMAGE:return r.stringValue;case Ur.PARAGRAPH:return r.stringValue;case Ur.NUMBER:return r.numberValue;case Ur.BOOLEAN:return r.boolValue;case Ur.SELECTION:return r.selectionValue?.values??[];default:return}}function vt(r){return Object.keys(r).reduce((e,t)=>(e[t]=ec(r[t]),e),{})}function av(r){function e(t,i){let n=r.currentHookIndex,o=r.getCurrentComponentKey(),a=r.getCurrentComponentState(),c=r.getPreviousComponentState(),p=`form.hook.${o}.${n}`,g={formKey:p,preventSubmit:!1,type:ht.FORM};n in a?g=a[n]:n in c&&(g=c[n]),a[n]=g,r.forms.set(p,t);let v=r.formSubmittedEvent;return v&&!g.preventSubmit&&v.formId===p&&r.runHook(async()=>{let m=i(vt(v.results));m&&m instanceof Promise&&await m,r.rerenderIn(0)}),a[n].preventSubmit=!1,r.currentHookIndex++,p}return e}function dv(r){function e(t,i){let n=r.currentHookIndex,o=r.getCurrentComponentState(),a=r.getPreviousComponentState(),c=100,p=Math.max(c,i),g={lastRun:void 0,running:!1,preventCallback:!1,type:ht.INTERVAL};n in o?g=o[n]:n in a&&(g=a[n]);function v(){i<c&&console.error(`useInterval delay must be at least ${c}ms. Your interval of ${i}ms was automatically extended.`);for(let[y,P]of Object.entries(o))if(y!==n.toString()&&P?.type===ht.INTERVAL&&P?.running)throw new Error("Only one useInterval hook may be running at a time");o[n]={running:!0,lastRun:o[n]?.lastRun??Date.now(),preventCallback:!1,type:ht.INTERVAL},r.rerenderIn(p)}function m(){o[n].running=!1,o[n].lastRun=void 0,o[n].preventCallback=!1}return r.isEffectRender&&g.running&&(g.preventCallback||(g.lastRun===void 0||g.lastRun+p<Date.now())&&r.runHook(async()=>{let y=t();y&&y instanceof Promise&&await y,g.lastRun=Date.now()}),r.rerenderIn(p)),g.preventCallback=!1,o[n]=g,r.currentHookIndex++,{start:v,stop:m}}return e}function lv(r){function e(t){let i=r.currentHookIndex,n=r.getCurrentComponentState(),o=r.getPreviousComponentState();if(i in n)return r.currentHookIndex++,[n[i],a];if(r.isInitialRender||!(i in o)){let c=t instanceof Function?t():t;if(c instanceof Promise)throw(async()=>{n[i]=await c,r.currentHookIndex=0})();n[i]=c}else n[i]=o[i];function a(c){if(r.isRendering)throw new Error("Cannot call setState while rendering.");n[i]=c instanceof Function?c(n[i]):c}return r.currentHookIndex++,[n[i],a]}return e}var Dr,_r,ja,uv,Wa,cv,Nr=class{constructor(e,t){l(this,ja);l(this,Wa);l(this,Dr,void 0);l(this,_r,void 0);d(this,Dr,e),d(this,_r,t)}async getURL(e){return typeof e=="string"?b(this,ja,uv).call(this,e):b(this,Wa,cv).call(this,e)}};Dr=new WeakMap,_r=new WeakMap,ja=new WeakSet,uv=async function(e){let t=globalThis?.devvit?.config?.assets?.[e];if(t)return t;let i=await s(this,_r).call(this).GetAssetURL({path:e},s(this,Dr));if(!i.found)throw new Error(`Could not load the URL for asset ${e}`);return i.url},Wa=new WeakSet,cv=async function(e){let t={},i=[],n=globalThis?.devvit?.config?.assets;if(n)for(let a of e)n[a]?t[a]=n[a]:i.push(a);else i=e;if(i.length===0)return t;let o=await s(this,_r).call(this).GetAssetURLs({paths:i},s(this,Dr));i=[];for(let[a,c]of Object.entries(o.urls))c.found?t[a]=c.paths[0]:i.push(a);if(i.length>0)throw new Error(`The following assets were missing from the assets list: ${i.join(", ")}`);return t};var yt,qr=class{constructor(e){l(this,yt,void 0);d(this,yt,e)}async get(e){let{messages:t}=await u.kvStorePlugin.Get({keys:[e]},s(this,yt));try{if(t[e])return JSON.parse(t[e])}catch{return}}async put(e,t){let i={};i[e]=JSON.stringify(t),await u.kvStorePlugin.Put({messages:i},s(this,yt))}async delete(e){await u.kvStorePlugin.Del({keys:[e]},s(this,yt))}async list(){let{keys:e}=await u.kvStorePlugin.List({filter:"*"},s(this,yt));return e}};yt=new WeakMap;var Un,Hr=class{constructor(e){l(this,Un,void 0);d(this,Un,e)}async upload(e){let t=await u.mediaPlugin.Upload(e,s(this,Un));if(!t.mediaId)throw new Error("unable to get mediaId via uploads");return Promise.resolve({mediaId:t.mediaId,mediaUrl:t.mediaUrl})}};Un=new WeakMap;var Dn,jr=class{constructor(e){l(this,Dn,void 0);d(this,Dn,e)}async add(e){await u.modLogPlugin.Add(e,s(this,Dn))}};Dn=new WeakMap;var k,_n,Gr=class{constructor(e){l(this,k,void 0);l(this,_n,void 0);d(this,k,e),d(this,_n,new za(e))}get modMail(){return s(this,_n)}getSubredditById(e){return fe.getById(ge(e),s(this,k))}getSubredditByName(e){return fe.getByName(e,s(this,k))}addSubredditRemovalReason(e,t){return fe.addRemovalReason(e,t.title,t.message,s(this,k))}getSubredditRemovalReasons(e){return fe.getRemovalReasons(e,s(this,k))}getCurrentSubreddit(){return fe.getFromMetadata(s(this,k))}getPostById(e){return z.getById(ge(e),s(this,k))}submitPost(e){return z.submit(e,s(this,k))}crosspost(e){return z.crosspost(e,s(this,k))}getUserById(e){return I.getById(ge(e),s(this,k))}getCollectionById(e){return Wr.getCollectionById({collectionId:e},s(this,k))}createCollection(e){return Wr.create(e,s(this,k))}getCollectionsForSubreddit(e){return Wr.getCollectionsForSubreddit({subredditId:e},s(this,k))}getUserByUsername(e){return I.getByUsername(e,s(this,k))}getCurrentUser(){return I.getFromMetadata(se.User,s(this,k))}getAppUser(){return I.getFromMetadata(se.AppUser,s(this,k))}getSnoovatarUrl(e){return I.getSnoovatarUrl(e,s(this,k))}getCommentById(e){return K.getById(ge(e),s(this,k))}getComments(e){return K.getComments(e,s(this,k))}getCommentsByUser(e){return K.getCommentsByUser(e,s(this,k))}submitComment(e){return K.submit({...e,id:ge(e.id)},s(this,k))}getControversialPosts(e){return z.getControversialPosts(e,s(this,k))}getTopPosts(e){return z.getTopPosts(e,s(this,k))}getHotPosts(e){return z.getHotPosts(e,s(this,k))}getNewPosts(e){return z.getNewPosts(e,s(this,k))}getRisingPosts(e){return z.getRisingPosts(e,s(this,k))}getPostsByUser(e){return z.getPostsByUser(e,s(this,k))}getCommentsAndPostsByUser(e){return I.getOverview(e,s(this,k))}getModerationLog(e){return Ga(e,s(this,k))}getApprovedUsers(e){return I.getSubredditUsersByType({type:"contributors",...e},s(this,k))}approveUser(e,t){return I.createRelationship({username:e,subredditName:t,type:"contributor"},s(this,k))}removeUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"contributor"},s(this,k))}getWikiContributors(e){return I.getSubredditUsersByType({type:"wikicontributors",...e},s(this,k))}addWikiContributor(e,t){return I.createRelationship({username:e,subredditName:t,type:"wikicontributor"},s(this,k))}removeWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikicontributor"},s(this,k))}getBannedUsers(e){return I.getSubredditUsersByType({type:"banned",...e},s(this,k))}banUser(e){return I.createRelationship({username:e.username,subredditName:e.subredditName,type:"banned",banReason:e.reason,banMessage:e.message,note:e.note,duration:e.duration},s(this,k))}unbanUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"banned"},s(this,k))}getBannedWikiContributors(e){return I.getSubredditUsersByType({type:"wikibanned",...e},s(this,k))}banWikiContributor(e){return I.createRelationship({...e,type:"wikibanned"},s(this,k))}unbanWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikibanned"},s(this,k))}getModerators(e){return I.getSubredditUsersByType({type:"moderators",...e},s(this,k))}inviteModerator(e){return I.createRelationship({type:"moderator_invite",subredditName:e.subredditName,username:e.subredditName,permissions:e.permissions??[]},s(this,k))}revokeModeratorInvite(e,t){return I.removeRelationship({username:e,subredditName:t,type:"moderator_invite"},s(this,k))}removeModerator(e,t){return I.removeRelationship({type:"moderator",subredditName:t,username:e},s(this,k))}setModeratorPermissions(e,t,i){return I.setModeratorPermissions(e,t,i,s(this,k))}getMutedUsers(e){return I.getSubredditUsersByType({type:"muted",...e},s(this,k))}muteUser(e){return I.createRelationship({...e,type:"muted"},s(this,k))}unmuteUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"muted"},s(this,k))}getModNotes(e){return Ee.get(e,s(this,k))}deleteModNote(e){return Ee.delete(e,s(this,k))}addModNote(e){let t={...e,redditId:ge(e.redditId)};return Ee.add(t,s(this,k))}addRemovalNote(e){return Ee.addRemovalNote(e,s(this,k))}async sendPrivateMessage(e){return Yt.send(e,s(this,k))}async sendPrivateMessageAsSubreddit(e){return Yt.sendAsSubreddit(e,s(this,k))}async approve(e){if(ft(e))return K.approve(e,s(this,k));if(Kt(e))return z.approve(e,s(this,k));throw new Error("id must start with either t1_ or t3_")}async remove(e,t){if(ft(e))return K.remove(e,t,s(this,k));if(Kt(e))return z.remove(e,t,s(this,k));throw new Error("id must start with either t1_ or t3_")}async getPostFlairTemplates(e){return oe.getPostFlairTemplates(e,s(this,k))}async getUserFlairTemplates(e){return oe.getUserFlairTemplates(e,s(this,k))}async createPostFlairTemplate(e){return oe.createPostFlairTemplate(e,s(this,k))}async createUserFlairTemplate(e){return oe.createUserFlairTemplate(e,s(this,k))}async editFlairTemplate(e){return oe.editFlairTemplate(e,s(this,k))}async deleteFlairTemplate(e,t){return oe.deleteFlairTemplate(e,t,s(this,k))}async setUserFlair(e){return Re.setUserFlair(e,s(this,k))}async removeUserFlair(e,t){return Re.removeUserFlair(e,t,s(this,k))}async setPostFlair(e){return Re.setPostFlair(e,s(this,k))}async removePostFlair(e,t){return Re.removePostFlair(e,pe(t),s(this,k))}async getWidgets(e){return te.getWidgets(e,s(this,k))}async deleteWidget(e,t){return te.delete(e,t,s(this,k))}async addWidget(e){return te.add(e,s(this,k))}async reorderWidgets(e,t){return te.reorder(e,t,s(this,k))}async getWikiPage(e,t){return he.getPage(e,t,s(this,k))}async getWikiPages(e){return he.getPages(e,s(this,k))}async createWikiPage(e){return he.createPage(e,s(this,k))}async updateWikiPage(e){return he.updatePage(e,s(this,k))}getWikiPageRevisions(e){return he.getPageRevisions(e,s(this,k))}async revertWikiPage(e,t,i){return he.revertPage(e,t,i,s(this,k))}async getWikiPageSettings(e,t){return he.getPageSettings(e,t,s(this,k))}async updateWikiPageSettings(e){return he.updatePageSettings(e,s(this,k))}async addEditorToWikiPage(e,t,i){return he.addEditor(e,t,i,s(this,k))}async removeEditorFromWikiPage(e,t,i){return he.removeEditor(e,t,i,s(this,k))}getMessages(e){return Yt.getMessages(e,s(this,k))}markAllMessagesAsRead(){return Yt.markAllAsRead(s(this,k))}report(e,t){return u.redditAPIPlugins.LinksAndComments.Report({reason:t.reason,thingId:e.id,srName:e.subredditName,usernames:e.authorName},s(this,k))}getModQueue(e){return fe.aboutLocation({...e,location:"modqueue"},s(this,k))}getReports(e){return fe.aboutLocation({...e,location:"reports"},s(this,k))}getSpam(e){return fe.aboutLocation({...e,location:"spam"},s(this,k))}getUnmoderated(e){return fe.aboutLocation({...e,location:"unmoderated"},s(this,k))}getEdited(e){return fe.aboutLocation({...e,location:"edited"},s(this,k))}getVaultByAddress(e){return pv(e,s(this,k))}getVaultByUserId(e){return gv(ge(e),s(this,k))}};k=new WeakMap,_n=new WeakMap;import{RedisKeyScope as tc}from"@devvit/protos";var E,R,F,rc=class{constructor(e,t,i){l(this,E,void 0);l(this,R,void 0);l(this,F,void 0);d(this,E,e),d(this,R,t),d(this,F,i)}async get(e){return await s(this,E).Get({key:e,transactionId:s(this,R)},s(this,F)),this}async multi(){await s(this,E).Multi(s(this,R),s(this,F))}async set(e,t,i){let n;return i?.expiration&&(n=Math.floor((i.expiration.getTime()-Date.now())/1e3),n<1&&(n=1)),await s(this,E).Set({key:e,value:t,nx:i?.nx===!0,xx:i?.xx===!0,expiration:n||0,transactionId:s(this,R)},s(this,F)),this}async del(...e){return await s(this,E).Del({keys:e,transactionId:s(this,R)},s(this,F)),this}async type(e){return await s(this,E).Type({key:e,transactionId:s(this,R)},s(this,F)),this}async exec(){let e=await s(this,E).Exec(s(this,R),s(this,F)),t=[];for(let i of e.response)i.members?t.push(i.members):i.nil!==void 0?t.push(null):i.num!==void 0?t.push(i.num):i.values!==void 0?t.push(i.values.values):i.str!==void 0&&t.push(i.str);return t}async discard(){await s(this,E).Discard(s(this,R),s(this,F))}async watch(...e){return await s(this,E).Watch({keys:e,transactionId:s(this,R)},s(this,F)),this}async unwatch(){return await s(this,E).Unwatch(s(this,R),s(this,F)),this}async getRange(e,t,i){return await s(this,E).GetRange({key:e,start:t,end:i,transactionId:s(this,R)},s(this,F)),this}async setRange(e,t,i){return await s(this,E).SetRange({key:e,offset:t,value:i,transactionId:s(this,R)},s(this,F)),this}async strlen(e){return await s(this,E).Strlen({key:e,transactionId:s(this,R)},s(this,F)),this}async mget(e){return await s(this,E).MGet({keys:e,transactionId:s(this,R)},s(this,F)),this}async mset(e){let t=Object.entries(e).map(([i,n])=>({key:i,value:n}));return await s(this,E).MSet({kv:t,transactionId:s(this,R)},s(this,F)),this}async incrBy(e,t){return await s(this,E).IncrBy({key:e,value:t,transactionId:s(this,R)},s(this,F)),this}async expire(e,t){return await s(this,E).Expire({key:e,seconds:t,transactionId:s(this,R)},s(this,F)),this}async expireTime(e){return await s(this,E).ExpireTime({key:e,transactionId:s(this,R)},s(this,F)),this}async zAdd(e,...t){return await s(this,E).ZAdd({key:e,members:t,transactionId:s(this,R)},s(this,F)),this}async zScore(e,t){return await s(this,E).ZScore({key:{key:e,transactionId:s(this,R)},member:t},s(this,F)),this}async zRank(e,t){return await s(this,E).ZRank({key:{key:e,transactionId:s(this,R)},member:t},s(this,F)),this}async zIncrBy(e,t,i){return await s(this,E).ZIncrBy({key:e,member:t,value:i,transactionId:s(this,R)},s(this,F)),this}async zScan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,transactionId:s(this,R)};return await s(this,E).ZScan(o,s(this,F)),this}async zCard(e){return await s(this,E).ZCard({key:e,transactionId:s(this,R)},s(this,F)),this}async zRange(e,t,i,n){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return n?.reverse&&(o.rev=n.reverse),n?.by==="lex"?o.byLex=!0:n?.by==="score"&&(o.byScore=!0),await s(this,E).ZRange({key:{key:e,transactionId:s(this,R)},start:t+"",stop:i+"",...o},s(this,F)),this}async zRem(e,t){return await s(this,E).ZRem({key:{key:e,transactionId:s(this,R)},members:t},s(this,F)),this}async zRemRangeByLex(e,t,i){return await s(this,E).ZRemRangeByLex({key:{key:e,transactionId:s(this,R)},min:t,max:i},s(this,F)),this}async zRemRangeByRank(e,t,i){return await s(this,E).ZRemRangeByRank({key:{key:e,transactionId:s(this,R)},start:t,stop:i},s(this,F)),this}async zRemRangeByScore(e,t,i){return await s(this,E).ZRemRangeByScore({key:{key:e,transactionId:s(this,R)},min:t,max:i},s(this,F)),this}async hgetall(e){return await s(this,E).HGetAll({key:e,transactionId:s(this,R)},s(this,F)),this}async hget(e,t){return await s(this,E).HGet({key:e,field:t,transactionId:s(this,R)},s(this,F)),this}async hset(e,t){let i=Object.entries(t).map(([n,o])=>({field:n,value:o}));return await s(this,E).HSet({key:e,fv:i,transactionId:s(this,R)},s(this,F)),this}async hincrby(e,t,i){return await s(this,E).HIncrBy({key:e,field:t,value:i,transactionId:s(this,R)},s(this,F)),this}async hdel(e,t){return await s(this,E).HDel({key:e,fields:t,transactionId:s(this,R)},s(this,F)),this}async hscan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,transactionId:s(this,R)};return await s(this,E).HScan(o,s(this,F)),this}async hkeys(e){return await s(this,E).HKeys({key:e,transactionId:s(this,R)},s(this,F)),this}async hlen(e){return await s(this,E).HLen({key:e,transactionId:s(this,R)},s(this,F)),this}};E=new WeakMap,R=new WeakMap,F=new WeakMap;var O,zr,ic=class ic{constructor(e,t=void 0,i=tc.INSTALLATION){l(this,O,void 0);l(this,zr,void 0);d(this,O,e),d(this,zr,t),this.scope=i,this.global=i===tc.INSTALLATION?new ic(s(this,O),s(this,zr),tc.GLOBAL):this}get storage(){return s(this,zr)||u.redisPlugin}async watch(...e){let t=await this.storage.Watch({keys:e},s(this,O));return new rc(this.storage,t,s(this,O))}async get(e){let t=await this.storage.Get({key:e,scope:this.scope},s(this,O));return t!==null?t.value??void 0:t}async set(e,t,i){let n;return i?.expiration&&(n=Math.floor((i.expiration.getTime()-Date.now())/1e3),n<1&&(n=1)),(await this.storage.Set({key:e,value:t,nx:i?.nx===!0&&!i.xx,xx:i?.xx===!0&&!i.nx,expiration:n||0,scope:this.scope},s(this,O))).value}async del(...e){await this.storage.Del({keys:e,scope:this.scope},s(this,O))}async incrBy(e,t){return(await this.storage.IncrBy({key:e,value:t,scope:this.scope},s(this,O))).value}async getRange(e,t,i){let n=await this.storage.GetRange({key:e,start:t,end:i,scope:this.scope},s(this,O));return n!==null?n.value:n}async setRange(e,t,i){return(await this.storage.SetRange({key:e,offset:t,value:i,scope:this.scope},s(this,O))).value}async strlen(e){return(await this.storage.Strlen({key:e,scope:this.scope},s(this,O))).value}async expire(e,t){await this.storage.Expire({key:e,seconds:t,scope:this.scope},s(this,O))}async expireTime(e){return(await this.storage.ExpireTime({key:e,scope:this.scope},s(this,O))).value}async zAdd(e,...t){return(await this.storage.ZAdd({key:e,members:t,scope:this.scope},s(this,O))).value}async zRange(e,t,i,n){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return n?.reverse&&(o.rev=n.reverse),n?.by==="lex"?o.byLex=!0:n?.by==="score"?o.byScore=!0:(o.offset=0,o.count=0),(await this.storage.ZRange({key:{key:e},start:t+"",stop:i+"",...o,scope:this.scope},s(this,O))).members}async zRem(e,t){return(await this.storage.ZRem({key:{key:e},members:t,scope:this.scope},s(this,O))).value}async zRemRangeByLex(e,t,i){return(await this.storage.ZRemRangeByLex({key:{key:e},min:t,max:i,scope:this.scope},s(this,O))).value}async zRemRangeByRank(e,t,i){return(await this.storage.ZRemRangeByRank({key:{key:e},start:t,stop:i,scope:this.scope},s(this,O))).value}async zRemRangeByScore(e,t,i){return(await this.storage.ZRemRangeByScore({key:{key:e},min:t,max:i,scope:this.scope},s(this,O))).value}async zScore(e,t){let i=await this.storage.ZScore({key:{key:e},member:t,scope:this.scope},s(this,O));return i!==null?i.value:i}async zRank(e,t){let i=await this.storage.ZRank({key:{key:e},member:t,scope:this.scope},s(this,O));return i!==null?i.value:i}async zIncrBy(e,t,i){let n=await this.storage.ZIncrBy({key:e,member:t,value:i,scope:this.scope},s(this,O));return n!==null?n.value:n}async mget(e){let t=await this.storage.MGet({keys:e,scope:this.scope},s(this,O));return t!==null?t.values.map(i=>i||null):t}async mset(e){let t=Object.entries(e).map(([i,n])=>({key:i,value:n}));await this.storage.MSet({kv:t,scope:this.scope},s(this,O))}async zCard(e){let t=await this.storage.ZCard({key:e,scope:this.scope},s(this,O));return t!==null?t.value:t}async zScan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,scope:this.scope};return await this.storage.ZScan(o,s(this,O))}async type(e){let t=await this.storage.Type({key:e,scope:this.scope},s(this,O));return t!==null?t.value:t}async hget(e,t){let i=await this.storage.HGet({key:e,field:t,scope:this.scope},s(this,O));return i!==null?i.value??void 0:i}async hset(e,t){let i=Object.entries(t).map(([o,a])=>({field:o,value:a}));return(await this.storage.HSet({key:e,fv:i,scope:this.scope},s(this,O))).value}async hgetall(e){let t=await this.storage.HGetAll({key:e,scope:this.scope},s(this,O));return t!==null?t.fieldValues:t}async hdel(e,t){return(await this.storage.HDel({key:e,fields:t,scope:this.scope},s(this,O))).value}async hscan(e,t,i,n){let o={key:e,cursor:t,pattern:i,count:n,scope:this.scope};return await this.storage.HScan(o,s(this,O))}async hkeys(e){let t=await this.storage.HKeys({key:e,scope:this.scope},s(this,O));return t!==null?t.keys:t}async hincrby(e,t,i){return(await this.storage.HIncrBy({key:e,field:t,value:i,scope:this.scope},s(this,O))).value}async hlen(e){return(await this.storage.HLen({key:e,scope:this.scope})).value}};O=new WeakMap,zr=new WeakMap;var Vr=ic;var Qt,Jr=class{constructor(e){l(this,Qt,void 0);d(this,Qt,e)}async runJob(e){return(await u.schedulerPlugin.Schedule({action:{type:e.name,data:e.data},cron:"cron"in e?e.cron:void 0,when:"runAt"in e?e.runAt:void 0},s(this,Qt))).id}async cancelJob(e){await u.schedulerPlugin.Cancel({id:e},s(this,Qt))}async listJobs(){return(await u.schedulerPlugin.List({after:new Date(0),before:new Date(Date.now()+31536e7)},s(this,Qt))).actions.map(t=>(f(t.request?.action,"Scheduled job is malformed"),"when"in t.request&&t.request.when!=null?{id:t.id,name:t.request.action.type,runAt:t.request.when,data:t.request.action.data}:{id:t.id,name:t.request.action.type,cron:t.request.cron??"",data:t.request.action}))}};Qt=new WeakMap;var Nn,$r=class{constructor(e){l(this,Nn,void 0);d(this,Nn,e)}async get(e){return(await this.getAll())[e]}async getAll(){let t=await u.settingsPlugin.GetSettings({},s(this,Nn));if(!t.installationSettings)throw new Error("Could not get installation settings");if(!t.appSettings)throw new Error("Could not get app settings");return{...fv(t.installationSettings.settings,u.installationSettings),...fv(t.appSettings.settings,u.appSettings)}}};Nn=new WeakMap;function fv(r,e){let t=Object.keys(r).reduce((i,n)=>(i[n]=ec(r[n]),i),{});return e&&hv(t,e),t}function hv(r,e){for(let t of e)t.type==="group"?hv(r,t.fields):!(t.name in r)&&"defaultValue"in t&&(r[t.name]=t.defaultValue)}import{EffectType as nc,Form as u0,ToastAppearance as vv}from"@devvit/protos";var er,Kr,Va=class{constructor(e){l(this,er,[]);l(this,Kr,void 0);d(this,Kr,e)}showForm(e,t){let i=u.formDefinitions.get(e);if(!i&&s(this,Kr)){let a=s(this,Kr).forms.get(e);a&&(i={form:a,onSubmit:()=>{}})}if(!i)throw new Error("Form does not exist. Make sure you have added it using Devvit.createForm at the root of your app.");let n=i.form instanceof Function?i.form(t??{}):i.form,o=u0.fromPartial({id:e,title:n.title,acceptLabel:n.acceptLabel,cancelLabel:n.cancelLabel,shortDescription:n.description});Xt(n.fields),o.fields=rt(n.fields),s(this,er).push({type:nc.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?vv.SUCCESS:vv.NEUTRAL}:t={text:e},s(this,er).push({type:nc.EFFECT_SHOW_TOAST,showToast:{toast:t}})}navigateTo(e){let t;typeof e=="string"?t=new URL(e).toString():t=new URL(e.permalink,"https://www.reddit.com").toString(),s(this,er).push({type:nc.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}get __effects(){return s(this,er)}};er=new WeakMap,Kr=new WeakMap;var dc={now(){return new Date}};function yv(r){return`__autocache__${r}`}function bv(r){return`__lock__${r}`}var c0=300,m0=1e3,Ja=5e3,sc=3,Pv=.1,kv=1e3,p0=3e4;function Sv(r){if(r.error)throw new Error(r.error);return r.value}var bt,Pt,Fe,Xr,Ka,Cv,Xa,Iv,Za,wv,qn,oc,Ya,Av,Qa,xv,Hn,ac,ed,Tv,$a=class{constructor(e,t,i=dc){l(this,Ka);l(this,Xa);l(this,Za);l(this,qn);l(this,Ya);l(this,Qa);l(this,Hn);l(this,ed);l(this,bt,void 0);l(this,Pt,{});l(this,Fe,void 0);l(this,Xr,void 0);d(this,bt,e),d(this,Xr,t),d(this,Fe,i)}async cache(e,t){d(this,Pt,s(this,Xr).__cache=s(this,Xr).__cache??{}),b(this,ed,Tv).call(this,t);let i=b(this,Ka,Cv).call(this,t.key);if(i!==void 0)return i;let n=await b(this,Hn,ac).call(this,t.key),o=await b(this,Xa,Iv).call(this,t,n,e);return Sv(o)}};bt=new WeakMap,Pt=new WeakMap,Fe=new WeakMap,Xr=new WeakMap,Ka=new WeakSet,Cv=function(e){let t=s(this,Pt)[e];if(t){let i=s(this,Fe).now().getTime(),n=t?.error&&t?.errorTime&&t.errorCount<sc&&Math.random()<Pv&&t.errorTime+kv<i;if(t?.expires&&t.expires<i&&t.checkedAt+kv<i||n){delete s(this,Pt)[e];return}else return Sv(t)}},Xa=new WeakSet,Iv=async function(e,t,i){let n=t?.expires,o=n?b(this,Qa,xv).call(this,n):1;return!t||t?.error&&t.errorCount<sc&&Pv>Math.random()||o>Math.random()?b(this,Za,wv).call(this,e,t,i):t},Za=new WeakSet,wv=async function(e,t,i){let n=bv(e.key),o=s(this,Fe).now().getTime(),a=new Date(o+e.ttl/2);if(await s(this,bt).set(n,"1",{expiration:a,nx:!0}))return b(this,Ya,Av).call(this,e.key,t,i,e.ttl);if(t)return t;{let p=s(this,Fe).now();return b(this,qn,oc).call(this,p,e.key,e.ttl)}},qn=new WeakSet,oc=async function(e,t,i){let n=Math.min(i,m0),o=await b(this,Hn,ac).call(this,t);if(o)return o;if(s(this,Fe).now().getTime()-e.getTime()>=n)throw new Error(`Cache request timed out trying to get data at key: ${t}`);return await new Promise(a=>setTimeout(a,c0)),b(this,qn,oc).call(this,e,t,i)},Ya=new WeakSet,Av=async function(e,t,i,n){let o=s(this,Fe).now().getTime()+n;t=t??{value:null,expires:o,errorCount:0,error:null,errorTime:null,checkedAt:0};try{t.value=await i(),t.error=null,t.errorCount=0,t.errorTime=null}catch(a){t.value=null,t.error=a.message??"Unknown error",t.errorTime=s(this,Fe).now().getTime(),t.errorCount++}return s(this,Pt)[e]=t,await s(this,bt).set(yv(e),JSON.stringify(t),{expiration:new Date(o+p0)}),t.error&&t.errorCount<sc&&await s(this,bt).del(bv(e)),t},Qa=new WeakSet,xv=function(e){let t=s(this,Fe).now().getTime(),i=e-t;return i<0?1:i<1e3?.1:i<2e3?.01:i<3e3?.001:0},Hn=new WeakSet,ac=async function(e){let t=await s(this,bt).get(yv(e));if(t){let i=JSON.parse(t);return i.checkedAt=s(this,Fe).now().getTime(),s(this,Pt)[e]=i,i}},ed=new WeakSet,Tv=function(e){e.ttl<Ja&&(console.warn(`Cache TTL cannot be less than ${Ja} milliseconds! Updating ttl value of ${e.ttl} to ${Ja}.`),e.ttl=Ja)};function Ev(r,e,t=dc){let i=new $a(r,e,t);return i.cache.bind(i)}var jn,Zr=class{constructor(e){l(this,jn,void 0);d(this,jn,e)}async send(e,t){await u.realtimePlugin.Send({channel:e,data:t},s(this,jn))}};jn=new WeakMap;function Oe({metadata:r,ui:e,hooks:t,reconciler:i}){let n=new jr(r),o=new qr(r),a=new Vr(r),c=Ev(a,i?i.state:{}),p=new Gr(r),g=new Jr(r),v=new $r(r),m=e?new Va(i):void 0,y=new Hr(r),P=new Nr(r,()=>u.assetsPlugin),C=new Zr(r),w=t&&i?lv(i):void 0,x=t&&i?dv(i):void 0,B=t&&i?av(i):void 0,ze=t&&i?ov(i):void 0;return{modLog:n,kvStore:o,redis:a,reddit:p,scheduler:g,settings:v,media:y,assets:P,realtime:C,get useForm(){return B??(()=>{throw new Error("useForm() is unavailable")})},get cache(){return c??(()=>{throw new Error("cache() is unavailable")})},get useState(){return w??(()=>{throw new Error("useState() is unavailable")})},get useInterval(){return x??(()=>{throw new Error("useInterval() is unavailable")})},get useChannel(){return ze??(()=>{throw new Error("useChannel() is unavailable")})},get ui(){if(!m)throw new Error("ui client is not available");return m}}}function ae(r,e,t){let i=r[se.Subreddit]?.values[0];f(i,"subreddit is missing from Context");let n=r[se.AppUser]?.values[0];f(n,"appAccountId is missing from Context");let o=r[se.User]?.values[0],a={metadata:r};return{appAccountId:n,subredditId:i,userId:o,postId:e,commentId:t,debug:a,toJSON(){return{appAccountId:n,subredditId:i,userId:o,postId:e,commentId:t,debug:a}}}}async function td(r,e,t){if(!e)throw new Error("Settings were not defined.");let i=g0.fromPartial({success:!0,errors:{}}),n=vt(r.fieldValues),o=e.flatMap(a=>a.type==="group"?a.fields:a);return await Promise.all(o.map(async a=>{let c=a.name;if(c&&a.type!=="group"&&a.onValidate){let p=n[c],g=a.onValidate,v=Object.assign(Oe({metadata:t}),ae(t)),m=await g({value:p,isEditing:r.editing},v);m&&(i.success=!1,i.errors[c]=m)}})),i}async function v0(){if(!u.appSettings)throw new Error("App settings were not defined.");return h0.fromPartial({fields:{fields:rt(u.appSettings)}})}async function y0(r,e){return td(r,u.appSettings,e)}function Rv(r){r.provides(f0),M("GetAppSettingsFields",v0),M("ValidateAppForm",y0)}import{CustomPostDefinition as O0}from"@devvit/protos";import{BlockRenderEventType as Pc,BlockType as E0,EffectType as $v}from"@devvit/protos";var Fv="redd.it",b0="redditstatic.com",P0="redditmedia.com",k0="snoo.dev";var S0=[k0,Fv,b0,P0],C0=/^data:([a-zA-Z]+\/[a-zA-Z0-9.+_-]+)?(;charset=[a-zA-Z0-9._+-]+)?(;base64)?,(.*)/;function I0(r){return r.trim().replace(/[\r\n]+/g,"")}function w0(r){let e=C0.exec(I0(r));if(e)return{mimeType:e[1],charset:e[2]?.split("=")[1],isBase64:!!e[3],data:e[4].trim()}}function A0(r){return["image/svg+xml"].includes(r)}function x0(r){let e=w0(r);return e?.mimeType?A0(e.mimeType):!1}function Ov(r){try{if(x0(r))return!0;let t=(new URL(r,`https://i.${Fv}`)?.hostname).split(".").slice(-2).join(".");return!!t&&S0.includes(t)}catch{return!1}}function Yr(r){return r.__effects}function Mv(){let r=new Set;return e=>{let t=e,i=1;for(;r.has(t);)t=`${e}.${i++}`;return r.add(t),t}}import{BlockActionType as T0,BlockAnimationDirection as Hv,BlockAnimationLoopMode as jv,BlockAnimationType as Wv,BlockAvatarBackground as Gv,BlockAvatarFacing as zv,BlockAvatarSize as kt,BlockBorderWidth as id,BlockButtonAppearance as St,BlockButtonSize as cc,BlockFullSnooSize as Qr,BlockGap as nd,BlockHorizontalAlignment as mc,BlockIconSize as sd,BlockImageResizeMode as Wn,BlockPadding as Gn,BlockRadius as zn,BlockSizeUnit as pc,BlockSpacerShape as gc,BlockSpacerSize as od,BlockStackDirection as fc,BlockTextOutline as hc,BlockTextOverflow as vc,BlockTextSize as ei,BlockTextStyle as yc,BlockTextWeight as Vv,BlockType as Me,BlockVerticalAlignment as bc}from"@devvit/protos";var lc={transparent:"transparent",black:"#000000",white:"#ffffff","coolgray-950":"#04090A","coolgray-900":"#0B1416","coolgray-850":"#0F1A1C","coolgray-800":"#131F23","coolgray-750":"#1A282D","coolgray-700":"#223237","coolgray-650":"#2A3C42","coolgray-600":"#33464C","coolgray-550":"#4B6066","coolgray-525":"#576F76","coolgray-500":"#667A80","coolgray-450":"#82959B","coolgray-400":"#A0B0B5","coolgray-350":"#B8C5C9","coolgray-300":"#D2DADD","coolgray-250":"#DAE0E3","coolgray-200":"#E2E7E9","coolgray-150":"#EAEDEF","coolgray-100":"#F2F4F5","coolgray-50":"#F9FAFA","puregray-950":"#080808","puregray-900":"#131313","puregray-850":"#181818","puregray-800":"#1E1E1E","puregray-750":"#272727","puregray-700":"#303030","puregray-650":"#393939","puregray-600":"#434343","puregray-550":"#5C5C5C","puregray-500":"#767676","puregray-450":"#919191","puregray-400":"#ACACAC","puregray-350":"#C3C3C3","puregray-300":"#D6D6D6","puregray-250":"#DDDDDD","puregray-200":"#E4E4E4","puregray-150":"#EBEBEB","puregray-100":"#F2F2F2","puregray-50":"#F8F8F8","orangered-950":"#190600","orangered-900":"#340E00","orangered-800":"#4F1500","orangered-700":"#721F00","orangered-600":"#962900","orangered-500":"#D93A00","orangered-400":"#FE7C53","orangered-300":"#FFBEA6","orangered-200":"#FFD5C6","orangered-100":"#FFEDE5","orangered-50":"#FFF6F3","red-950":"#1C0004","red-900":"#3A0008","red-800":"#58000C","red-700":"#7E0011","red-600":"#A50016","red-500":"#EB001F","red-400":"#FF6E80","red-300":"#FFADB8","red-200":"#FFCCD2","red-100":"#FFEAED","red-50":"#FFF6F7","sakurapink-950":"#1A0011","sakurapink-900":"#360024","sakurapink-800":"#530037","sakurapink-700":"#770051","sakurapink-600":"#9B006A","sakurapink-500":"#E00096","sakurapink-400":"#FF55BD","sakurapink-300":"#FFA5E3","sakurapink-200":"#FFC5EC","sakurapink-100":"#FFE5F9","sakurapink-50":"#FFF3FB","berrypurple-950":"#16001F","berrypurple-900":"#2E0041","berrypurple-800":"#470062","berrypurple-700":"#66008C","berrypurple-600":"#8700B5","berrypurple-500":"#BC0EFF","berrypurple-400":"#D55EFF","berrypurple-300":"#EEA7FF","berrypurple-200":"#F2C8FF","berrypurple-100":"#FBE6FF","berrypurple-50":"#FCF4FF","periwinkle-950":"#0D0B1F","periwinkle-900":"#1A1741","periwinkle-800":"#272262","periwinkle-700":"#372F8C","periwinkle-600":"#453BB5","periwinkle-500":"#6A5CFF","periwinkle-400":"#988EFF","periwinkle-300":"#C3BDFF","periwinkle-200":"#D8D4FF","periwinkle-100":"#ECEAFF","periwinkle-50":"#F7F6FF","alienblue-950":"#000C1D","alienblue-900":"#00183D","alienblue-800":"#00255D","alienblue-700":"#003584","alienblue-600":"#0045AC","alienblue-500":"#1870F4","alienblue-400":"#629FFF","alienblue-300":"#A7CCFF","alienblue-200":"#C6DCFF","alienblue-100":"#E4EFFF","alienblue-50":"#F3F7FF","lightblue-950":"#000D12","lightblue-900":"#001C26","lightblue-800":"#002A3A","lightblue-700":"#003F56","lightblue-600":"#005472","lightblue-500":"#007FAE","lightblue-400":"#47B0DB","lightblue-300":"#95DCFB","lightblue-200":"#B6E9FF","lightblue-100":"#D9F6FF","lightblue-50":"#ECFAFF","mintgreen-950":"#00100E","mintgreen-900":"#001E1B","mintgreen-800":"#002E28","mintgreen-700":"#00443C","mintgreen-600":"#005A4F","mintgreen-500":"#008675","mintgreen-400":"#45B9AB","mintgreen-300":"#96E1D8","mintgreen-200":"#B7ECE5","mintgreen-100":"#DAF7F4","mintgreen-50":"#ECFBF9","kiwigreen-950":"#021000","kiwigreen-900":"#032200","kiwigreen-800":"#053200","kiwigreen-700":"#084A00","kiwigreen-600":"#0A6000","kiwigreen-500":"#0E8A00","kiwigreen-400":"#55BD46","kiwigreen-300":"#A3E398","kiwigreen-200":"#BFEEB8","kiwigreen-100":"#DFF8DB","kiwigreen-50":"#EEFCED","lime-950":"#0C0E00","lime-900":"#1A1F00","lime-800":"#282F00","lime-700":"#3A4501","lime-600":"#4D5A01","lime-500":"#6B7E01","lime-400":"#A1B33B","lime-300":"#CFDB83","lime-200":"#DFE8A6","lime-100":"#EFF4CC","lime-50":"#F7FAE5","yellow-950":"#100D01","yellow-900":"#251E02","yellow-800":"#382D03","yellow-700":"#504104","yellow-600":"#665505","yellow-500":"#8F7407","yellow-400":"#DBAF00","yellow-300":"#FADB61","yellow-200":"#FFE88F","yellow-100":"#FFF2BD","yellow-50":"#FFFAE5","yelloworange-950":"#150C00","yelloworange-900":"#2C1A00","yelloworange-800":"#432700","yelloworange-700":"#623A00","yelloworange-600":"#814C00","yelloworange-500":"#B06400","yelloworange-400":"#FF9C1A","yelloworange-300":"#FFCD7C","yelloworange-200":"#FFDDA8","yelloworange-100":"#FFF0D3","yelloworange-50":"#FFF7EA","poopbrown-950":"#110B04","poopbrown-900":"#29190A","poopbrown-800":"#3B2510","poopbrown-700":"#54371A","poopbrown-600":"#6E4924","poopbrown-500":"#9A6D3F","poopbrown-400":"#CAA075","poopbrown-300":"#EECCAA","poopbrown-200":"#F6DDC3","poopbrown-100":"#FEEEDD","poopbrown-50":"#FEF7EE",pizzaRed:{light:"#ef5350",dark:"#c62828"},"global-brand-orangered":{light:"#FF4500",dark:"#FF4500"},"global-focus":{light:"#47B0DB",dark:"#007FAE"},"interactive-content-disabled":{light:"#0000003f",dark:"#ffffff3f"},"interactive-background-disabled":{light:"#0000000c",dark:"#ffffff0c"},"interactive-pressed":{light:"#00000028",dark:"#ffffff28"},"neutral-content":{light:"#2A3C42",dark:"#B8C5C9"},"neutral-content-disabled":{light:"#D6D6D6",dark:"#303030"},"neutral-content-weak":{light:"#576F76",dark:"#82959B"},"neutral-content-strong":{light:"#0F1A1C",dark:"#F2F4F5"},"neutral-background":{light:"#ffffff",dark:"#0B1416"},"neutral-background-selected":{light:"#EAEDEF",dark:"#1A282D"},"neutral-background-weak":{light:"#F9FAFA",dark:"#04090A"},"neutral-background-medium":{light:"#F8F8F8",dark:"#131313"},"neutral-background-strong":{light:"#ffffff",dark:"#0F1A1C"},"neutral-background-hover":{light:"#F2F4F5",dark:"#131F23"},"neutral-border":{light:"#00000033",dark:"#ffffff33"},"neutral-border-medium":{light:"#0000007f",dark:"#ffffff7f"},"neutral-border-weak":{light:"#00000019",dark:"#ffffff19"},"neutral-border-strong":{light:"#0F1A1C",dark:"#F2F4F5"},primary:{light:"#0045AC",dark:"#629FFF"},"primary-hover":{light:"#003584",dark:"#A7CCFF"},"primary-visited":{light:"#8700B5",dark:"#D55EFF"},"primary-onBackground":{light:"#ffffff",dark:"#ffffff"},"primary-onBackground-selected":{light:"#ffffff",dark:"#000000"},"primary-background":{light:"#0045AC",dark:"#0045AC"},"primary-background-hover":{light:"#003584",dark:"#1870F4"},"primary-background-selected":{light:"#00255D",dark:"#629FFF"},secondary:{light:"#0F1A1C",dark:"#F2F4F5"},"secondary-hover":{light:"#000000",dark:"#ffffff"},"secondary-weak":{light:"#576F76",dark:"#82959B"},"secondary-onBackground":{light:"#000000",dark:"#ffffff"},"secondary-background":{light:"#EAEDEF",dark:"#1A282D"},"secondary-background-hover":{light:"#E2E7E9",dark:"#223237"},"secondary-background-selected":{light:"#D2DADD",dark:"#33464C"},"secondary-plain":{light:"#0F1A1C",dark:"#F2F4F5"},"secondary-plain-hover":{light:"#000000",dark:"#ffffff"},"danger-background":{light:"#EB001F",dark:"#A50016"},"danger-background-disabled":{light:"#FFCCD2",dark:"#3A0008"},"danger-background-hover":{light:"#A50016",dark:"#EB001F"},"danger-onBackground":{light:"#ffffff",dark:"#ffffff"},"danger-content":{light:"#A50016",dark:"#FF6E80"},"danger-content-hover":{light:"#7E0011",dark:"#FFADB8"},"danger-content-default":{light:"#ffffff",dark:"#ffffff"},"brand-background":{light:"#D93A00",dark:"#D93A00"},"brand-onBackground":{light:"#ffffff",dark:"#ffffff"},"brand-background-hover":{light:"#962900",dark:"#962900"},"media-background":{light:"#00000099",dark:"#00000099"},"media-onbackground":{light:"#ffffff",dark:"#ffffff"},"media-onbackground-weak":{light:"#E2E7E9",dark:"#E2E7E9"},"media-background-hover":{light:"#000000cc",dark:"#000000cc"},"media-onbackground-disabled":{light:"#ffffff3f",dark:"#ffffff3f"},"media-border-selected":{light:"#ffffff",dark:"#ffffff"},"media-background-selected":{light:"#000000cc",dark:"#000000cc"},"success-content":{light:"#0A6000",dark:"#55BD46"},"success-hover":{light:"#084A00",dark:"#A3E398"},"success-onBackground":{light:"#ffffff",dark:"#ffffff"},"success-background":{light:"#0E8A00",dark:"#0A6000"},"success-background-hover":{light:"#0A6000",dark:"#0E8A00"},"warning-content":{light:"#665505",dark:"#DBAF00"},"warning-content-hover":{light:"#504104",dark:"#FADB61"},"warning-onBackground":{light:"#000000",dark:"#000000"},"warning-background":{light:"#DBAF00",dark:"#DBAF00"},"warning-background-hover":{light:"#8F7407",dark:"#FADB61"},"upvote-content":{light:"#962900",dark:"#FE7C53"},"upvote-content-weak":{light:"#FF4500",dark:"#FF4500"},"upvote-disabled":{light:"#9629004c",dark:"#FE7C534c"},"upvote-onBackground":{light:"#ffffff",dark:"#ffffff"},"upvote-background":{light:"#D93A00",dark:"#D93A00"},"upvote-background-hover":{light:"#962900",dark:"#962900"},"upvote-background-disabled":{light:"#D93A004c",dark:"#D93A004c"},"downvote-content":{light:"#453BB5",dark:"#988EFF"},"downvote-content-weak":{light:"#6A5CFF",dark:"#6A5CFF"},"downvote-disabled":{light:"#453BB54c",dark:"#988EFF4c"},"downvote-onBackground":{light:"#ffffff",dark:"#ffffff"},"downvote-background":{light:"#6A5CFF",dark:"#453BB5"},"downvote-background-hover":{light:"#453BB5",dark:"#453BB5"},"downvote-background-disabled":{light:"#6A5CFF4c",dark:"#6A5CFF4c"},"brand-gradient-default":{light:"",dark:""},"brand-gradient-default-highlight":{light:"",dark:""},"brand-gradient-hover":{light:"",dark:""},"brand-gradient-hover-highlight":{light:"",dark:""},"brand-gradient-active":{light:"",dark:""},"brand-gradient-active-highlight":{light:"",dark:""},"gradient-media":{light:"",dark:""},"gradient-media-strong":{light:"",dark:""},"transparent-background-hover":{light:"#82959B19",dark:"#667A8019"},"global-black":{light:"#000000",dark:"#000000"},"global-white":{light:"#ffffff",dark:"#ffffff"},"global-orangered":{light:"#D93A00",dark:"#D93A00"},"global-alienblue":{light:"#1870F4",dark:"#1870F4"},"global-darkblue":{light:"#131F23",dark:"#131F23"},"tone-1":{light:"#131313",dark:"#F2F2F2"},"tone-2":{light:"#434343",dark:"#ACACAC"},"tone-3":{light:"#ACACAC",dark:"#434343"},"tone-4":{light:"#E4E4E4",dark:"#303030"},"tone-5":{light:"#F2F2F2",dark:"#1E1E1E"},"tone-6":{light:"#F8F8F8",dark:"#131313"},"tone-7":{light:"#ffffff",dark:"#080808"},"action-upvote":{light:"#D93A00",dark:"#D93A00"},"action-downvote":{light:"#6A5CFF",dark:"#6A5CFF"},"alert-caution":{light:"#8F7407",dark:"#8F7407"},"identity-admin":{light:"#D93A00",dark:"#D93A00"},"identity-moderator":{light:"#0E8A00",dark:"#0E8A00"},"identity-self":{light:"#008675",dark:"#008675"},"identity-coins":{light:"#DBAF00",dark:"#DBAF00"},"category-live":{light:"#D93A00",dark:"#D93A00"},"category-nsfw":{light:"#E00096",dark:"#E00096"},"category-spoiler":{light:"#131313",dark:"#F2F2F2"},"ui-canvas":{light:"#F2F2F2",dark:"#080808"},"ui-modalbackground":{light:"#ffffff",dark:"#0F1A1C"},"avatar-gradient":{light:"",dark:""},"opacity-highlight":{light:"",dark:""},"opacity-08":{light:"#13131314",dark:"#13131314"},"opacity-50":{light:"#0000007f",dark:"#F2F2F27f"},scrim:{light:"#00000099",dark:"#00000099"},"scrim-strong":{light:"#000000cc",dark:"#000000cc"},"scrim-gradient":{light:"",dark:""},online:{light:"#55BD46",dark:"#55BD46"},favorite:{light:"#8F7407",dark:"#DBAF00"}};var Bv={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",transparent:"#FFFFFF00",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},Lv=r=>!!r.match(/^(#[0-9a-fA-F]{3,8}).*/),Uv=r=>r in lc,uc=r=>r in Bv,Dv=r=>!!r.match(/^rgba?\(.*/),_v=r=>!!r.match(/^hsla?\(.*/),Nv=(r,e="light")=>{if(uc(r))return rd(r);let i=lc[r];return typeof i=="string"?i:i[e]},rd=r=>Bv[r]??r,qv=r=>{let[e,t,i,n]=r.replace(/^rgba?\(|\s+|\)$/g,"").split(",");if(!e||!t||!i)return r;let a=[...[e,t,i].map(p=>parseFloat(p))];if(n){let p=parseFloat(n),g=Math.round(p*255);a.push(g)}return`#${a.map(p=>p.toString(16).padStart(2,"0")).join("")}`};var Jv="data-",ti=class{async createBlocksElementOrThrow({type:e,props:t,children:i}){let n=await this.createBlocksElement({type:e,props:t,children:i});if(!n)throw new Error(`Could not create block of type ${e}`);return n}async createBlocksElement({type:e,props:t,children:i}){switch(e){case"blocks":return this.makeRoot(t,...i);case"hstack":return this.makeHStack(t,...i);case"vstack":return this.makeVStack(t,...i);case"zstack":return this.makeZStack(t,...i);case"text":return this.makeText(t,...i);case"button":return this.makeButton(t,...i);case"image":return await this.makeImage(t);case"spacer":return this.makeSpacer(t);case"icon":return this.makeIcon(t);case"avatar":return this.makeAvatar(t);case"fullsnoo":return this.makeFullSnoo(t);case"animation":return await this.makeAnimation(t);case"webview":return this.makeWebView(t);case"__fragment":throw new Error("root fragment is not supported - use 'blocks' instead")}}makeRootHeight(e){switch(e){case"regular":return 320;case"tall":return 512}}makeBlockPadding(e){switch(e){case"none":return Gn.PADDING_NONE;case"xsmall":return Gn.PADDING_XSMALL;case"small":return Gn.PADDING_SMALL;case"medium":return Gn.PADDING_MEDIUM;case"large":return Gn.PADDING_LARGE}}makeBlockRadius(e){switch(e){case"none":return zn.RADIUS_NONE;case"small":return zn.RADIUS_SMALL;case"medium":return zn.RADIUS_MEDIUM;case"large":return zn.RADIUS_LARGE;case"full":return zn.RADIUS_FULL}}makeBlockGap(e){switch(e){case"none":return nd.GAP_NONE;case"small":return nd.GAP_SMALL;case"medium":return nd.GAP_MEDIUM;case"large":return nd.GAP_LARGE}}makeBlockAlignment(e){if(e===void 0)return;let t,i;if(e.includes("top")?t=bc.ALIGN_TOP:e.includes("middle")?t=bc.ALIGN_MIDDLE:e.includes("bottom")&&(t=bc.ALIGN_BOTTOM),e.includes("start")?i=mc.ALIGN_START:e.includes("center")?i=mc.ALIGN_CENTER:e.includes("end")&&(i=mc.ALIGN_END),t!==void 0||i!==void 0)return{vertical:t,horizontal:i}}makeBlockBorder(e,t,i,n){if(!e&&!t)return;let o;switch(e){case"none":o=id.BORDER_WIDTH_NONE;break;case"thin":o=id.BORDER_WIDTH_THIN;break;case"thick":o=id.BORDER_WIDTH_THICK;break;default:o=id.BORDER_WIDTH_THIN;break}let a=t??"neutral-border-weak",c=this.getThemedColors(a,i,n);return{width:o,color:c?.light,colors:c}}makeBlockTextSize(e){switch(e){case"xsmall":return ei.TEXT_SIZE_XSMALL;case"small":return ei.TEXT_SIZE_SMALL;case"medium":return ei.TEXT_SIZE_MEDIUM;case"large":return ei.TEXT_SIZE_LARGE;case"xlarge":return ei.TEXT_SIZE_XLARGE;case"xxlarge":return ei.TEXT_SIZE_XXLARGE}}makeBlockTextStyle(e){switch(e){case"body":return yc.TEXT_STYLE_BODY;case"metadata":return yc.TEXT_STYLE_METADATA;case"heading":return yc.TEXT_STYLE_HEADING}}makeBlockTextOutline(e){switch(e){case"none":return hc.TEXT_OUTLINE_NONE;case"thin":return hc.TEXT_OUTLINE_THIN;case"thick":return hc.TEXT_OUTLINE_THICK}}makeBlockTextWeight(e){switch(e){case"regular":return Vv.TEXT_WEIGHT_REGULAR;case"bold":return Vv.TEXT_WEIGHT_BOLD}}makeBlockTextOverflow(e){switch(e){case"clip":return vc.TEXT_OVERFLOW_CLIP;case"ellipsis":return vc.TEXT_OVERFLOW_ELLIPSE}return vc.TEXT_OVERFLOW_ELLIPSE}makeBlockButtonAppearance(e){switch(e){case"secondary":return St.BUTTON_APPEARANCE_SECONDARY;case"primary":return St.BUTTON_APPEARANCE_PRIMARY;case"plain":return St.BUTTON_APPEARANCE_PLAIN;case"bordered":return St.BUTTON_APPEARANCE_BORDERED;case"media":return St.BUTTON_APPEARANCE_MEDIA;case"destructive":return St.BUTTON_APPEARANCE_DESTRUCTIVE;case"caution":return St.BUTTON_APPEARANCE_CAUTION;case"success":return St.BUTTON_APPEARANCE_SUCCESS}}makeBlockButtonSize(e){switch(e){case"small":return cc.BUTTON_SIZE_SMALL;case"medium":return cc.BUTTON_SIZE_MEDIUM;case"large":return cc.BUTTON_SIZE_LARGE}}makeBlockImageResizeMode(e){switch(e){case"none":return Wn.IMAGE_RESIZE_NONE;case"fit":return Wn.IMAGE_RESIZE_FIT;case"fill":return Wn.IMAGE_RESIZE_FILL;case"cover":return Wn.IMAGE_RESIZE_COVER;case"scale-down":return Wn.IMAGE_RESIZE_SCALE_DOWN}}makeBlockSpacerSize(e){switch(e){case"xsmall":return od.SPACER_XSMALL;case"small":return od.SPACER_SMALL;case"medium":return od.SPACER_MEDIUM;case"large":return od.SPACER_LARGE}}makeBlockSpacerShape(e){switch(e){case"invisible":return gc.SPACER_INVISIBLE;case"thin":return gc.SPACER_THIN;case"square":return gc.SPACER_SQUARE}}makeBlockIconSize(e){switch(e){case"xsmall":return sd.ICON_SIZE_XSMALL;case"small":return sd.ICON_SIZE_SMALL;case"medium":return sd.ICON_SIZE_MEDIUM;case"large":return sd.ICON_SIZE_LARGE}}makeBlockAvatarSize(e){switch(e){case"xxsmall":return kt.AVATAR_SIZE_XXSMALL;case"xsmall":return kt.AVATAR_SIZE_XSMALL;case"small":return kt.AVATAR_SIZE_SMALL;case"medium":return kt.AVATAR_SIZE_MEDIUM;case"large":return kt.AVATAR_SIZE_LARGE;case"xlarge":return kt.AVATAR_SIZE_XXLARGE;case"xxlarge":return kt.AVATAR_SIZE_XXLARGE;case"xxxlarge":return kt.AVATAR_SIZE_XXXLARGE}}makeBlockAvatarFacing(e){switch(e){case"left":return zv.AVATAR_FACING_LEFT;case"right":return zv.AVATAR_FACING_RIGHT}}makeBlockFullSnooSize(e){switch(e){case"xsmall":return Qr.FULLSNOO_XSMALL;case"small":return Qr.FULLSNOO_SMALL;case"medium":return Qr.FULLSNOO_MEDIUM;case"large":return Qr.FULLSNOO_LARGE;case"xlarge":return Qr.FULLSNOO_XLARGE;case"xxlarge":return Qr.FULLSNOO_XXLARGE}}makeBlockAvatarBackground(e){switch(e){case"dark":return Gv.AVATAR_BG_DARK;case"light":return Gv.AVATAR_BG_LIGHT}}makeBlockAnimationType(e){return e==="lottie"||e===void 0?Wv.ANIM_LOTTIE:Wv.UNRECOGNIZED}makeBlockAnimationDirection(e){switch(e){case"backward":return Hv.ANIM_DIR_BACKWARD;case"forward":return Hv.ANIM_DIR_FORWARD}}makeBlockLoopMode(e){switch(e){case"repeat":return jv.ANIM_LOOP_REPEAT;case"bounce":return jv.ANIM_LOOP_BOUNCE}}makeBlockSize(e){if(e&&(e.width!=null||e.height!=null||e.grow)){let{value:t,unit:i}=this.parseSize(e.width)??{},{value:n,unit:o}=this.parseSize(e.height)??{};return{width:t,widthUnit:i,height:n,heightUnit:o,grow:e.grow}}}makeBlockSizes(e){if(e){let t=e.width!=null||e.minWidth!=null||e.maxWidth!=null,i=e.height!=null||e.minHeight!=null||e.maxHeight!=null;if(t||i||e.grow!=null)return{width:t?{value:this.parseSize(e.width),min:this.parseSize(e.minWidth),max:this.parseSize(e.maxWidth)}:void 0,height:i?{value:this.parseSize(e.height),min:this.parseSize(e.minHeight),max:this.parseSize(e.maxHeight)}:void 0,grow:e.grow}}}parseSize(e){if(e==null)return;if(typeof e=="number")return{value:e,unit:pc.SIZE_UNIT_PERCENT};let t=e.match(/^(\d+(?:\.\d+)?)(px|%)?$/);if(t==null)return;let i=pc.SIZE_UNIT_PERCENT;return t?.at(2)==="px"&&(i=pc.SIZE_UNIT_PIXELS),{value:Number.parseFloat(t[1]),unit:i}}getDataSet(e){return Object.keys(e).filter(t=>t.startsWith(Jv)).reduce((t,i)=>(t[i.substring(Jv.length)]=e[i],t),{})}makeActions(e,t){let i=[],n=this.getDataSet(t);if(t.onPress){let o=t.onPress;i.push({type:T0.ACTION_CLICK,id:o.toString(),data:n})}return i}blockColorToHex(e,t="light"){if(e)return e=e.toLowerCase(),Lv(e)?e:Uv(e)?Nv(e,t):uc(e)?rd(e):Dv(e)?qv(e):_v(e)?e:(console.warn(`Could not parse color: ${e}.`),rd("red"))}async childrenToBlocks(e){let t=e.map(n=>{if(typeof n!="string")return this.createBlocksElement(n)});return(await Promise.all(t)).filter(n=>n!==void 0)}getThemedColors(e,t,i){let n=this.blockColorToHex(t,"light"),o=this.blockColorToHex(i,"dark"),a=[];if(e&&(!n||!o)){let c=Array.from(e?.matchAll(/[\w#-]+(?:\([\w\t ,.#-]+\))?/g)??[]);a.push(...c.map(p=>p[0]))}return n||(n=this.blockColorToHex(a?.at(0),"light")),o||(o=this.blockColorToHex(a?.at(1)??a?.at(0),"dark")),n||o?{light:n,dark:o}:void 0}parsePixels(e){return typeof e=="string"?Number(e.slice(0,-2)):e}childrenToString(e){return e.map(t=>t.toString()).join("")}async makeRoot(e,...t){return this.wrapRoot(e,await this.childrenToBlocks(t))}async wrapRoot(e,t){return this.makeBlock(Me.BLOCK_ROOT,{},{rootConfig:{children:t,height:this.makeRootHeight(u.customPostType?.height??e?.height??"regular")}})}async makeStackBlock(e,t,i){let n=this.getThemedColors(t?.backgroundColor,t?.lightBackgroundColor,t?.darkBackgroundColor);return this.makeBlock(Me.BLOCK_STACK,t,{stackConfig:{alignment:this.makeBlockAlignment(t?.alignment),backgroundColor:n?.light,backgroundColors:n,border:this.makeBlockBorder(t?.border,t?.borderColor,t?.lightBorderColor,t?.darkBorderColor),children:await this.childrenToBlocks(i),cornerRadius:this.makeBlockRadius(t?.cornerRadius),direction:e,gap:this.makeBlockGap(t?.gap),padding:this.makeBlockPadding(t?.padding),reverse:t?.reverse}})}async makeHStack(e,...t){return this.makeStackBlock(fc.STACK_HORIZONTAL,e,t)}async makeVStack(e,...t){return this.makeStackBlock(fc.STACK_VERTICAL,e,t)}async makeZStack(e,...t){return this.makeStackBlock(fc.STACK_DEPTH,e,t)}makeText(e,...t){let i=this.getThemedColors(e?.color,e?.lightColor,e?.darkColor);return this.makeBlock(Me.BLOCK_TEXT,e,{textConfig:{alignment:this.makeBlockAlignment(e?.alignment),color:i?.light,colors:i,outline:this.makeBlockTextOutline(e?.outline),size:this.makeBlockTextSize(e?.size),style:this.makeBlockTextStyle(e?.style),text:this.childrenToString(t),weight:this.makeBlockTextWeight(e?.weight),selectable:e?.selectable,wrap:e?.wrap,overflow:this.makeBlockTextOverflow(e?.overflow)}})}makeButton(e,...t){let i=this.getThemedColors(e?.textColor,e?.lightTextColor,e?.darkTextColor);return this.makeBlock(Me.BLOCK_BUTTON,e,{buttonConfig:{buttonAppearance:this.makeBlockButtonAppearance(e?.appearance),icon:e?.icon,buttonSize:this.makeBlockButtonSize(e?.size),text:this.childrenToString(t),textColor:i?.light,textColors:i,disabled:e?.disabled}})}async makeImage(e){return e&&this.makeBlock(Me.BLOCK_IMAGE,e,{imageConfig:{description:e?.description,resizeMode:this.makeBlockImageResizeMode(e.resizeMode),url:e.url,width:this.parsePixels(e.imageWidth),height:this.parsePixels(e.imageHeight)}})}makeSpacer(e){return this.makeBlock(Me.BLOCK_SPACER,e,{spacerConfig:{size:this.makeBlockSpacerSize(e?.size),shape:this.makeBlockSpacerShape(e?.shape)}})}makeIcon(e){let t=this.getThemedColors(e?.color,e?.lightColor,e?.darkColor);return e&&this.makeBlock(Me.BLOCK_ICON,e,{iconConfig:{icon:e.name,color:t?.light,colors:t,size:this.makeBlockIconSize(e.size)}})}makeAvatar(e){return e&&this.makeBlock(Me.BLOCK_AVATAR,e,{avatarConfig:{thingId:e.thingId,size:this.makeBlockAvatarSize(e.size),facing:this.makeBlockAvatarFacing(e.facing),background:this.makeBlockAvatarBackground(e.background)}})}makeFullSnoo(e){return e&&this.makeBlock(Me.BLOCK_FULLSNOO,e,{fullsnooConfig:{userId:e.userId,facing:this.makeBlockAvatarFacing(e.facing),size:this.makeBlockFullSnooSize(e.size)}})}async makeAnimation(e){return e&&this.makeBlock(Me.BLOCK_ANIMATION,e,{animationConfig:{type:this.makeBlockAnimationType(e.type),url:e.url,loop:e.loop,loopMode:this.makeBlockLoopMode(e.loopMode),autoplay:e.autoplay,width:this.parsePixels(e.imageWidth),height:this.parsePixels(e.imageHeight),direction:this.makeBlockAnimationDirection(e.direction),speed:e.speed}})}makeWebView(e){return e&&this.makeBlock(Me.BLOCK_WEBVIEW,e,{webviewConfig:{url:e.url}})}makeBlock(e,t,i){return{type:e,size:this.makeBlockSize(t),sizes:this.makeBlockSizes(t),config:i,actions:(t&&this.makeActions(e,t))??[],id:t?.id,key:t?.key}}async ensureRootBlock(e){let t=e;if(t.type===Me.BLOCK_ROOT)return t.config?.rootConfig&&u.customPostType?.height&&(t.config.rootConfig.height=this.makeRootHeight(u.customPostType?.height)),t;let i=await this.wrapRoot(void 0,[t]);if(!i)throw new Error("Could not create root block");return i}};function Kv(r){if(typeof r=="string")throw new Error("Root element cannot be a string")}var Xv=r=>{let e="",t=r.props?Object.keys(r.props).map(i=>i==="onPress"?"":`${i}="${r.props[i]}"`).join(" "):"";e+=`<${r.type}${t?" "+t:""}>`;for(let i of r.children)typeof i=="string"?e+=i:e+=Xv(i);return e+=`</${r.type}>`,e};function R0(r){return" ".repeat(r)}function F0(r){let e="",t=0,i=r.split(/>\s*</);for(let n=0;n<i.length;n++){let o=i[n];n===0&&(o=o.trim()),n===i.length-1&&(o=o.trim());let a=o.charAt(0)==="/";a&&t--,e+=R0(t),n!==0&&(e+="<"),e+=o,n!==i.length-1&&(e+=`>
2
+ `),!a&&o.indexOf("</")===-1&&o.charAt(o.length-1)!=="/"&&t++}return e}var ad,Zv,tr,Vn,Jn,kc,$n,it=class{constructor(e,t,i,n,o){l(this,ad);l(this,tr);l(this,Jn);this.renderState={};this.currentComponentKey=[];this.currentHookIndex=0;this.actions=new Map;this.forms=new Map;this.realtimeChannels=[];this.realtimeUpdated=!1;this.pendingHooks=[];this.isRendering=!1;this.transformer=new ti;this.effects=[];l(this,$n,!1);this.component=e,this.event=t,this.state={__renderState:{},...i},this.metadata=n,this.state.__realtimeChannels&&(this.realtimeChannels=this.state.__realtimeChannels);let a=Oe({reconciler:this,hooks:!0,ui:!0,metadata:n});this.cache=a.cache,this.modLog=a.modLog,this.reddit=a.reddit,this.kvStore=a.kvStore,this.redis=a.redis,this.settings=a.settings,this.scheduler=a.scheduler,this.media=a.media,this.assets=a.assets,this.realtime=a.realtime,this.dimensions=o,this.ui=a.ui,this.hooks={useState:a.useState,useInterval:a.useInterval,useForm:a.useForm,useChannel:a.useChannel}}emitEffect(e,t){this.effects.push(t)}async render(){await this.reconcile(),this.isRendering=!0;let e=await this.buildBlocksUI();return this.isRendering=!1,e}makeUniqueActionID(e){let t=e,i=1;for(;this.actions.has(t);)t=`${e}.${i++}`;return t}async reconcile(){let e={type:this.component,props:b(this,tr,Vn).call(this),children:[]},t=await this.processBlock(e);if(Kv(t),await this.transformer.createBlocksElementOrThrow(t),this.isUserActionRender&&this.blockRenderEventId){let i=this.actions.get(this.blockRenderEventId);i&&await i({})}for(let i of this.pendingHooks)await i();this.buildNextState(),b(this,ad,Zv).call(this)}async buildBlocksUI(){let e={type:this.component,props:b(this,tr,Vn).call(this),children:[]},t=await this.renderElement(e);return this.transformer.ensureRootBlock(t)}async renderElement(e){let t=await this.processBlock(e);return Kv(t),(u.debug.emitSnapshots||this.metadata[se.DebugRenderXML]?.values[0])&&console.log(F0(Xv(t))),u.debug.emitState&&console.log(JSON.stringify(this.state,null,2)),await this.transformer.createBlocksElementOrThrow(t)}async processProps(e){if(e.onPress){let t=e.onPress,i=t.name,n=this.makeUniqueActionID(`${E0.BLOCK_BUTTON}.${i??"onPress"}`);this.actions.set(n,t),e.onPress=n}e.url&&(e.url=await this.getAssetUrl(e.url))}async getAssetUrl(e){let t,i=globalThis?.devvit?.config?.assets;if(i&&(t=i[e]),!t&&!Ov(e)){console.log("No assets loaded on the config - falling back to plugin");try{t=await this.assets.getURL(e),i&&t&&(i[e]=t)}catch{}}return t??e}async processBlock(e,t=Mv(),i=[]){let n=e;if(typeof n.type=="string"){let p=(await Promise.all(n.children.flatMap(async(m,y)=>m==null?[]:await this.processBlock(m,t,[...i,`${n.type}.${y}`])))).flat(),g=b(this,Jn,kc).call(this,p);return await this.processProps(n.props||{}),{type:n.type,props:n.props,children:g}}if(typeof n.type=="function"){let c=t(`${i.length?i.join("."):"root"}.${n.type.name.length?n.type.name:"anonymous"}`);this.currentComponentKey.push(c),this.renderState[c]||(this.renderState[c]={});let p=n.children.flatMap(m=>m),g={...b(this,tr,Vn).call(this),...n.props,children:p},v;for(;v===void 0;)try{v=await n.type(g,b(this,tr,Vn).call(this))}catch(m){if(m instanceof Promise)v=await m;else throw m}if(!this.isInitialRender){let m=this.getPreviousComponentState();if(Object.keys(m).length!==this.currentHookIndex)throw new Error("Invalid hook call. Hooks can only be called at the top-level of a function component. Make sure that you are not calling hooks inside loops, conditions, or nested functions.")}if(this.currentComponentKey.pop(),this.currentHookIndex=0,typeof v=="object")return this.processBlock(v,t,[...i,n.type.name])}if(typeof n=="string")return n;if(typeof n=="number")return`${n}`;let o=[],a="";return Array.isArray(n)?o=n:typeof n.type>"u"&&n.children&&(o=n.children,a="fragmentChild."),{type:"__fragment",props:void 0,children:await Promise.all(o.flatMap(async(c,p)=>await this.processBlock(c,t,[...i,`${a}${p}`])))}}getCurrentComponentKey(){if(!this.currentComponentKey.at(-1))throw new Error("Current component key is missing");return this.currentComponentKey}getCurrentComponentState(){let e=this.currentComponentKey.at(-1);if(!e)throw new Error("Current component key is missing");return this.renderState[e]}getPreviousComponentState(){let e=this.currentComponentKey.at(-1);if(!e)throw new Error("Current component key is missing");return this.state.__renderState[e]||(this.state.__renderState[e]={}),this.state.__renderState[e]}get isInitialRender(){return this.event?this.event.type===Pc.RENDER_INITIAL:!1}get isUserActionRender(){return this.event?this.event.type===Pc.RENDER_USER_ACTION:!1}get isEffectRender(){return this.event?this.event.type===Pc.RENDER_EFFECT_EVENT:!1}get formSubmittedEvent(){return this.event?this.event.formSubmitted:!1}get blockRenderEventId(){return this.event?this.event.id:!1}get realtimeEvent(){if(!this.event)return!1;let e=this.event.realtimeEvent;return e?.event?.channel?e:!1}runHook(e){this.pendingHooks.push(e)}rerenderIn(e){s(this,$n)||(d(this,$n,!0),this.effects.push({type:$v.EFFECT_RERENDER_UI,rerenderUi:{delaySeconds:e/1e3}}))}addRealtimeChannel(e){this.realtimeChannels.push(e),this.realtimeUpdated=!0}removeRealtimeChannel(e){this.realtimeChannels=this.realtimeChannels.filter(t=>t!==e),this.realtimeUpdated=!0}get realtimeEffect(){return this.realtimeUpdated&&this.realtimeChannels.length>0?[{type:$v.EFFECT_REALTIME_SUB,realtimeSubscriptions:{subscriptionIds:this.realtimeChannels}}]:[]}getEffects(){return[...Yr(this.ui),...this.effects,...this.realtimeEffect]}buildNextState(){for(let e of Object.keys(this.renderState))this.renderState[e]=Object.values(this.renderState[e]);this.state={__postData:this.state.__postData,__renderState:this.renderState,__cache:this.state.__cache,...this.realtimeChannels.length>0?{__realtimeChannels:this.realtimeChannels}:{}}}};ad=new WeakSet,Zv=function(){this.actions.clear(),this.currentComponentKey=[],this.currentHookIndex=0,this.pendingHooks=[],this.realtimeChannels=[],this.realtimeUpdated=!1},tr=new WeakSet,Vn=function(){let e={...ae(this.metadata,this.state.__postData?.thingId),modLog:this.modLog,reddit:this.reddit,cache:this.cache,kvStore:this.kvStore,redis:this.redis,settings:this.settings,scheduler:this.scheduler,media:this.media,assets:this.assets,realtime:this.realtime,ui:this.ui,dimensions:this.dimensions,...this.hooks};return e.debug.effects=this,e},Jn=new WeakSet,kc=function(e){let t=[];for(let i of e)typeof i=="string"?t.push(i):i.type==="__fragment"?t.push(...b(this,Jn,kc).call(this,i.children)):t.push(i);return t},$n=new WeakMap;async function M0(r,e){let t=u.customPostType;if(!t)throw new Error("Custom post type not registered");let i=new it((o,a)=>t.render(a),r.blocks,r.state,e,r.dimensions),n=await i.render();return{state:i.state,blocks:{ui:n},effects:i.getEffects()}}function Yv(r){r.provides(O0),M("RenderPost",M0)}import{GetFieldsResponse as B0,InstallationSettingsDefinition as L0}from"@devvit/protos";async function U0(){if(!u.installationSettings)throw new Error("Installation settings were not defined.");return B0.fromPartial({fields:{fields:rt(u.installationSettings)}})}async function D0(r,e){return td(r,u.installationSettings,e)}function Qv(r){r.provides(L0),M("GetSettingsFields",U0),M("ValidateForm",D0)}import{ContextActionDefinition as _0,ContextActionDescription as N0,ContextActionResponse as q0}from"@devvit/protos";var ey=r=>`menuItem.${r}`;function Sc(r){return u.menuItems.find((e,t)=>ey(t)===r)}async function H0(r,e){let t=u.menuItems;if(!t.length)throw new Error("No menu items registered.");return{actions:t.map((n,o)=>N0.fromPartial({actionId:ey(o),name:n.label,description:n.description,contexts:{subreddit:n.location.includes("subreddit"),post:n.location.includes("post"),comment:n.location.includes("comment")},users:{loggedOut:n.forUserType?.includes("loggedOut"),member:n.forUserType?.includes("member"),moderator:n.forUserType?.includes("moderator")},postFilters:n.postFilter==="currentApp"?{currentApp:!0}:void 0}))}}async function j0(r,e){let t=Sc(r.actionId);if(!t)throw new Error(`MenuItem ${r.actionId} not found`);let i=r.comment?.id&&`t1_${r.comment.id}`,n=r.post?.id&&`t3_${r.post.id}`,o=r.subreddit?.id&&`t5_${r.subreddit.id}`,a=i||n||o;f(a,"targetId is missing from ContextActionRequest");let c={targetId:a,location:r.comment?"comment":r.post?"post":"subreddit"},p=Object.assign(Oe({ui:!0,metadata:e}),ae(e,n,i));return await t.onPress(c,p),q0.fromPartial({effects:Yr(p.ui)})}function ty(r){r.provides(_0),M("GetActions",H0),M("OnAction",j0)}function nt(r){return r?r===!0?!0:r.enabled:!1}import{SchedulerHandlerDefinition as W0}from"@devvit/protos";async function G0(r,e){let t=r.type,i=u.scheduledJobHandlers.get(t);if(!i)throw new Error(`Job ${t} not found`);let n={name:t,data:r.data},o=Object.assign(Oe({metadata:e}),ae(e));await i(n,o)}function ry(r){r.provides(W0),M("HandleScheduledAction",G0)}import{HandlerResult as z0,OnAppInstallDefinition as V0,OnAppUpgradeDefinition as J0,OnCommentCreateDefinition as $0,OnCommentDeleteDefinition as K0,OnCommentReportDefinition as X0,OnCommentSubmitDefinition as Z0,OnCommentUpdateDefinition as Y0,OnModActionDefinition as Q0,OnModMailDefinition as eT,OnPostCreateDefinition as tT,OnPostDeleteDefinition as rT,OnPostFlairUpdateDefinition as iT,OnPostReportDefinition as nT,OnPostSubmitDefinition as sT,OnPostUpdateDefinition as oT}from"@devvit/protos";var dd;(function(r){function e(o,a){return o.length<=a?o:`${o.slice(0,a-1)}\u2026`}r.ellipsize=e;function t(o){return o[0]==null?o:`${o[0].toLocaleUpperCase()}${o.slice(1)}`}r.capitalize=t;function i(o){return o==null||/^\s*$/.test(o)}r.isBlank=i;function n(o){return o instanceof Error?`${o.stack||o.message||o.name}`:String(o)}r.caughtToString=n})(dd||(dd={}));function re(r,e){return f(e),async(t,i)=>{let n={...t,type:r},o=Object.assign(Oe({metadata:i}),ae(i)),a=await Promise.allSettled(e.map(p=>p(n,o))),c=aT(a);if(c)throw c.err;return z0.fromPartial({})}}function iy(r){for(let e of u.triggerOnEventHandlers.keys())switch(e){case"PostSubmit":r.provides(sT),M("OnPostSubmit",re("PostSubmit",u.triggerOnEventHandlers.get(e)));break;case"PostCreate":r.provides(tT),M("OnPostCreate",re("PostCreate",u.triggerOnEventHandlers.get(e)));break;case"PostUpdate":r.provides(oT),M("OnPostUpdate",re("PostUpdate",u.triggerOnEventHandlers.get(e)));break;case"PostReport":r.provides(nT),M("OnPostReport",re("PostReport",u.triggerOnEventHandlers.get(e)));break;case"PostDelete":r.provides(rT),M("OnPostDelete",re("PostDelete",u.triggerOnEventHandlers.get(e)));break;case"PostFlairUpdate":r.provides(iT),M("OnPostFlairUpdate",re("PostFlairUpdate",u.triggerOnEventHandlers.get(e)));break;case"CommentSubmit":r.provides(Z0),M("OnCommentSubmit",re("CommentSubmit",u.triggerOnEventHandlers.get(e)));break;case"CommentCreate":r.provides($0),M("OnCommentCreate",re("CommentCreate",u.triggerOnEventHandlers.get(e)));break;case"CommentUpdate":r.provides(Y0),M("OnCommentUpdate",re("CommentUpdate",u.triggerOnEventHandlers.get(e)));break;case"CommentReport":r.provides(X0),M("OnCommentReport",re("CommentReport",u.triggerOnEventHandlers.get(e)));break;case"CommentDelete":r.provides(K0),M("OnCommentDelete",re("CommentDelete",u.triggerOnEventHandlers.get(e)));break;case"AppInstall":r.provides(V0),M("OnAppInstall",re("AppInstall",u.triggerOnEventHandlers.get(e)));break;case"AppUpgrade":r.provides(J0),M("OnAppUpgrade",re("AppUpgrade",u.triggerOnEventHandlers.get(e)));break;case"ModAction":r.provides(Q0),M("OnModAction",re("ModAction",u.triggerOnEventHandlers.get(e)));break;case"ModMail":r.provides(eT),M("OnModMail",re("ModMail",u.triggerOnEventHandlers.get(e)));break;default:throw new Error(`Unknown trigger event: ${e}`)}}function aT(r){let e=r.reduce((t,i)=>i.status==="rejected"?[...t,i.reason]:t,[]);if(e.length!==0)return e.length===1?{err:e[0]}:{err:new Error(e.map(t=>dd.caughtToString(t)).join(`
3
+ `))}}var Zy=Xo(fy(),1),Yy=Xo(Xy(),1);import{EffectType as oR,UIEventHandlerDefinition as aR}from"@devvit/protos";async function dR(r,e){let t=r.state??{},i=(0,Zy.default)(t),n=Oe({ui:!0,metadata:e});if(r.event?.formSubmitted&&r.event.formSubmitted.formId){let p=r.event.formSubmitted.formId;if(p.includes("form.hook.")&&u.customPostType){let P=new it((C,w)=>u.customPostType?.render(w)??null,r.event,r.state,e,void 0);return await P.reconcile(),{state:P.state,effects:P.getEffects()}}let g=u.formDefinitions.get(p);if(!g)throw new Error(`Form with key ${p} not found`);let v,m;if(i.__contextAction){let{actionId:P,thingId:C}=i.__contextAction,w=Sc(P);w?.location==="post"?v=C:w?.location==="comment"&&(m=C)}let y=Object.assign(n,ae(e,v,m));await g.onSubmit({values:vt(r.event.formSubmitted.results)},y)}else if(r.event?.realtimeEvent){if(u.customPostType){let p=new it((g,v)=>u.customPostType?.render(v)??null,r.event,r.state,e,void 0);return await p.reconcile(),{state:p.state,effects:p.getEffects()}}}else if(r.event?.toastAction)throw new Error("Toast actions not yet implemented");let o=!(0,Yy.default)(t,i),a=Yr(n.ui),c=o?[...a,{type:oR.EFFECT_RERENDER_UI,rerenderUi:{delaySeconds:0}}]:a;return{state:i,effects:c}}function Qy(r){r.provides(aR),M("HandleUIEvent",dR)}import{CustomPostDefinition as ub}from"@devvit/protos";var es=class extends Error{};function eb(r){let e=or({namespace:"useState"},({changed:t})=>{let i=r instanceof Function?r():r;if(i instanceof Promise)throw new Error("Cannot use async initializer with useState, use useAsyncState instead.");return{state:i,setter:o=>{e.state=o instanceof Function?o(e.state):o,t()}}});return[e.state,e.setter]}import{EffectType as Uc}from"@devvit/protos";var oi,si=class si{constructor(e){this.request=e;l(this,oi,void 0);this._segments=[];this._hooks={};this._prevHookId="";this._effects={};this._changed={};this._requeueEvents=[];this._rootProps={};this._generated={};this._undeliveredHandlers={};d(this,oi,e.state??{}),this._rootProps=e.props??{}}get devvitContext(){if(!this._devvitContext)throw new Error("Devvit context not available");return this._devvitContext}set devvitContext(e){this._devvitContext=e}get _changedState(){let e={};for(let t in this._changed)e[t]=this._state[t];return e}get _state(){return s(this,oi)}set _state(e){this._changed={},d(this,oi,e)}push(e){this._segments.push({...e,next:0})}pop(){this._segments.pop()}addUndeliveredEventHandler(e,t){this._undeliveredHandlers[e]=t}addGlobalUndeliveredEventHandler(e,t){si.addGlobalUndeliveredEventHandler(e,t)}getHook(e){return this._hooks[e.id]}static addGlobalUndeliveredEventHandler(e,t){si._staticUndeliveredHandlers[e]=t}async handleUndeliveredEvent(e){let t={...si._staticUndeliveredHandlers,...this._undeliveredHandlers};for(let[i,n]of Object.entries(t))await n(e,this)}emitEffect(e,t){this._effects[e]=t}addToRequeueEvents(e){this._requeueEvents.push(e)}get effects(){return Object.values(this._effects)}nextHookId(e){e.key===void 0&&(e.key=this._segments[this._segments.length-1].next+++""),this.push(e);try{let t=[];for(let n=this._segments.length-1;n>=0;n--){let o=this._segments[n];if(o.id){t.unshift(o.id);break}let a=[];o.namespace&&a.push(o.namespace),o.key!==void 0&&o.key!==!1&&a.push(o.key),t.unshift(a.join("-"))}let i=t.join(".");if(this._generated[i]&&!e.shared)throw new Error(`Hook id ${i} already used, cannot register another hook with the same id`);return this._generated[i]=!0,this._prevHookId=i,i}finally{this.pop()}}};oi=new WeakMap,si._staticUndeliveredHandlers={};var ai=si;var wt={};ai.addGlobalUndeliveredEventHandler("intervals",async(r,e)=>{r.timer&&r.hook&&(delete wt[r.hook],e.emitEffect("timers",{type:Uc.EFFECT_SET_INTERVALS,interval:{intervals:wt}}))});var At,di,ts,li,Dc=class{constructor(e,t,i){l(this,At,void 0);l(this,di,void 0);l(this,ts,void 0);l(this,li,void 0);this.state={duration:{seconds:0,nanos:0},running:!1};d(this,di,i.changed),d(this,At,i.hookId),d(this,ts,e),d(this,li,i.context);let n=Math.floor(t/1e3),o=t%1e3*1e6;this.state.duration={seconds:n,nanos:o}}onLoad(){this.state.running?wt[s(this,At)]={duration:this.state.duration}:delete wt[s(this,At)]}async onUIEvent(e){await s(this,ts).call(this)}start(){wt[s(this,At)]={duration:this.state.duration},this.state.running=!0,s(this,di).call(this),s(this,li).emitEffect("timers",{type:Uc.EFFECT_SET_INTERVALS,interval:{intervals:wt}})}stop(){delete wt[s(this,At)],this.state.running=!1,s(this,di).call(this),s(this,li).emitEffect("timers",{type:Uc.EFFECT_SET_INTERVALS,interval:{intervals:wt}})}};At=new WeakMap,di=new WeakMap,ts=new WeakMap,li=new WeakMap;function tb(r,e){return or({namespace:"useInterval"},t=>new Dc(r,e,t))}import{EffectType as Nc,Form as cR,ToastAppearance as nb}from"@devvit/protos";var _c=class{constructor(e,t,i){this.state=null;this.hookId=e.hookId,this.form=t,this.onSubmit=i,this.onUIEvent=async n=>{n.formSubmitted&&await i(vt(n.formSubmitted.results))}}};function rb(r,e){let t=or({namespace:"useForm"},i=>new _c(i,r,e));return lR({id:t.hookId})}function lR(r){return`form.hook.${r.id}.0`}function uR(r){return{id:r.match(/form\.hook\.(.+)\.0/)[1]}}function ib(r,e){let t=uR(e);return r.getHook(t)}var xt,Pd=class{constructor(e){l(this,xt,void 0);d(this,xt,e)}showForm(e,t){let i=ib(s(this,xt),e);if(!i)throw new Error("Form does not exist. Make sure you have added it using useForm.");let n=i.form instanceof Function?i.form(t??{}):i.form,o=cR.fromPartial({id:e,title:n.title,acceptLabel:n.acceptLabel,cancelLabel:n.cancelLabel,shortDescription:n.description});Xt(n.fields),o.fields=rt(n.fields),s(this,xt).emitEffect(e,{type:Nc.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?nb.SUCCESS:nb.NEUTRAL}:t={text:e},s(this,xt).emitEffect(e.toString(),{type:Nc.EFFECT_SHOW_TOAST,showToast:{toast:t}})}navigateTo(e){let t;typeof e=="string"?t=new URL(e).toString():t=new URL(e.permalink,"https://www.reddit.com").toString(),s(this,xt).emitEffect(t,{type:Nc.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}};xt=new WeakMap;var sb=new Proxy({},{get:function(r,e,t){throw new Error(`Unimplemented API: ${String(e)}`)}}),kd=class{buildContext(e,t){let i=new jr(t),n=new qr(t),o=new Vr(t),a=new Gr(t),c=new Jr(t),p=new $r(t),g=new Pd(e),v=new Hr(t),m=new Nr(t,()=>u.assetsPlugin),y=new Zr(t),w={modLog:i,kvStore:n,redis:o,reddit:a,scheduler:c,settings:p,media:v,assets:m,realtime:y,ui:g,useState:eb,useChannel:sb,useInterval:tb,useForm:rb,cache:sb},x=ae(t);return x.debug.effects=e,{...x,...w}}};var de=null;function ob(r){return JSON.parse(JSON.stringify(r))}function or(r,e){if(!de)throw new Error("Hooks can only be declared at the top of a component. You cannot declare hooks outside of components or inside of event handlers. It's almost always a mistake to declare hooks inside of loops or conditionals.");let t=de.nextHookId(r),i=de,n={hookId:t,changed:()=>{i._changed[t]=!0,i._state[t]=i?._hooks[t]?.state},context:de},o=de._state[t]===void 0;de._hooks[t]=de._hooks[t]??e(n);let a=de._hooks[t];return de._state[t]!==void 0&&(a.state=de._state[t]),a.onLoad&&a.onLoad(de),o&&a.state!==void 0&&a.state!==null&&n.changed(),a}var mR=null,ui,Id,rs,is,qc,wd,ab,ns,Hc,Ad,db,ss,jc,os,Wc,ci,Sd,as,Gc,xd,lb,Cd=class{constructor(e){l(this,is);l(this,wd);l(this,ns);l(this,Ad);l(this,ss);l(this,os);l(this,ci);l(this,as);l(this,xd);l(this,ui,void 0);l(this,Id,new kd);l(this,rs,new ti);this._latestRenderContext=null;d(this,ui,e),mR=this}async handle(e,t){let i=new ai(e),n=s(this,Id).buildContext(i,t);i.devvitContext=n;let o,a=e.events,p=!e.events?.length||a.some(P=>!P.async),g=a.some(P=>P.blocking),v,m,y=[...a];for(;a.length>0;){let P=[];if(!a[0].async)P.push(a.shift());else for(;a[0]?.async;)P.push(a.shift());if(!P.length)throw Error("batch must have at least one event");try{if(P[0].async){let w=ob(i._state);await b(this,wd,ab).call(this,i,...P),i._state=w}else await b(this,Ad,db).call(this,i,...P)}catch(w){if(m){i._state=m._state,i._changed=v,i._effects=m._effects,y.forEach(x=>{let B={...x};B.retry=!0,i.addToRequeueEvents(B)});break}else throw w}let C=[];for(let w of i._requeueEvents){if(!p&&!w.async){C.push(w);continue}if(p&&w.async&&!g){C.push(w);continue}a.push(w)}i._requeueEvents=C,a.length>0&&(v={...i._changed},m={_state:ob(i._state),_effects:{...i._effects}},y=[...a])}if(p){let P=b(this,ss,jc).call(this,s(this,ui),i._rootProps??{},i);P&&(o=await s(this,rs).createBlocksElementOrThrow(P),o=await s(this,rs).ensureRootBlock(o))}return{state:i._changedState,effects:i.effects,blocks:o,events:i._requeueEvents}}};ui=new WeakMap,Id=new WeakMap,rs=new WeakMap,is=new WeakSet,qc=function(e,...t){b(this,ss,jc).call(this,s(this,ui),e.request.props??{},e)},wd=new WeakSet,ab=async function(e,...t){b(this,is,qc).call(this,e,...t),await Promise.all(t.map(async i=>{if(!i.async)throw new Error("You can't mix main and other queues in one batch. This is likely a platform bug. Please file an issue in the Discord for someone to help! https://discord.com/channels/1050224141732687912/1115441897079574620");await b(this,ns,Hc).call(this,e,i)}))},ns=new WeakSet,Hc=async function(e,t){let i=e._hooks[t.hook];if(i&&i.onUIEvent)try{await i.onUIEvent(t,e)}catch(n){throw console.error("Error in event handler",n),n}else await e.handleUndeliveredEvent(t)},Ad=new WeakSet,db=async function(e,...t){for(let i of t)b(this,is,qc).call(this,e,i),await b(this,ns,Hc).call(this,e,i)},ss=new WeakSet,jc=function(e,t,i){i._generated={},de=i,this._latestRenderContext=i;try{let n=b(this,os,Wc).call(this,e,t,i);if(n.length!==1)throw new Error("only one root");let o=n[0];if(typeof o=="string")throw new Error("There must be a root tag. Try wrapping your app in a <text></text>, <vstack> or other tag.");return o}catch(n){if(n instanceof es)return;throw n}finally{de=null}},os=new WeakSet,Wc=function(e,t,i){i.push({namespace:e.name,...t});try{let n=e(t,i.devvitContext);return b(this,as,Gc).call(this,n,i)}finally{i.pop()}},ci=new WeakSet,Sd=function(e,t){return e=e.flat(1/0),e.flatMap((i,n)=>(i&&typeof i=="object"&&"props"in i&&(i.props?.key||(i.props=i.props??{},i.props.key=n)),b(this,as,Gc).call(this,i,t)))},as=new WeakSet,Gc=function(e,t){if(Array.isArray(e))return b(this,ci,Sd).call(this,e,t);if(pR(e)){if(e.type===void 0)return b(this,ci,Sd).call(this,e.children,t);if(typeof e.type=="function"){let i={...e.props,children:e.children};return b(this,os,Wc).call(this,e.type,i,t)}else{t.push({namespace:e.type,...e.props});let i=b(this,ci,Sd).call(this,e.children,t),n=b(this,xd,lb).call(this,e.props??{});return t.pop(),[{type:e.type,children:i,props:n}]}}else return[(e??"").toString()]},xd=new WeakSet,lb=function(e){let t={};for(let i in e)if(typeof e[i]=="function"){let n=or({namespace:i,key:!1},({hookId:o})=>({hookId:o,state:null,onUIEvent:e[i]}));t[i]=n.hookId,"captureHookRef"in e[i]&&e[i].captureHookRef()}else{let n=e[i];n!=null&&(t[i]=n.toString())}return t};function pR(r){return typeof r=="object"&&r!=null&&"type"in r}var gR=[[ub,ub.methods.renderPostContent,(r,e)=>u.customPostType?.render(e)??null]];function fR(r){return async(e,t)=>new Cd(r).handle(e,t)}function cb(r){for(let[e,t,i]of gR)r.provides(e),M(t.name,fR(i))}var ds,mi,ar,dr,lr,pi,gi,Tt,ur,L,_,W,D=class D extends Ha{static configure(e){d(this,ds,e),nt(e.http)&&b(this,_,W).call(this,S.HTTPDefinition),(nt(e.kvStore)||nt(e.redis))&&(b(this,_,W).call(this,S.KVStoreDefinition),b(this,_,W).call(this,S.RedisAPIDefinition)),nt(e.media)&&b(this,_,W).call(this,S.MediaServiceDefinition),nt(e.modLog)&&b(this,_,W).call(this,S.ModlogDefinition),nt(e.redditAPI)&&(b(this,_,W).call(this,S.FlairDefinition),b(this,_,W).call(this,S.GraphQLDefinition),b(this,_,W).call(this,S.LinksAndCommentsDefinition),b(this,_,W).call(this,S.ListingsDefinition),b(this,_,W).call(this,S.ModerationDefinition),b(this,_,W).call(this,S.ModNoteDefinition),b(this,_,W).call(this,S.NewModmailDefinition),b(this,_,W).call(this,S.PrivateMessagesDefinition),b(this,_,W).call(this,S.SubredditsDefinition),b(this,_,W).call(this,S.PostCollectionsDefinition),b(this,_,W).call(this,S.UsersDefinition),b(this,_,W).call(this,S.WidgetsDefinition),b(this,_,W).call(this,S.WikiDefinition),b(this,_,W).call(this,S.RedditAPIV2Definition)),nt(e.realtime)&&b(this,_,W).call(this,S.RealtimeDefinition)}static addMenuItem(e){s(this,mi).push(e)}static addCustomPostType(e){d(this,ar,e)}static createForm(e,t){let i=`form.${s(this,dr).size}`;return s(this,dr).set(i,{form:e,onSubmit:t}),i}static addSchedulerJob(e){if(s(this,L)[S.SchedulerDefinition.fullName]||b(this,_,W).call(this,S.SchedulerDefinition),s(this,lr).has(e.name))throw new Error(`Job ${e.name} is already defined`);s(this,lr).set(e.name,e.onRun)}static addSettings(e){Xt(e);let t=e.filter(n=>n.type==="group"||!n.scope||n.scope==="installation"),i=e.filter(n=>n.type!=="group"&&n.scope==="app");t.length>0&&d(this,pi,t),i.length>0&&d(this,gi,i),s(this,L)[S.SettingsDefinition.fullName]||b(this,_,W).call(this,S.SettingsDefinition)}static addTrigger(e){if("events"in e){for(let t of e.events)this.addTrigger({event:t,onEvent:(i,n)=>e.onEvent(i,n)});return this}return s(this,Tt).has(e.event)?s(this,Tt).get(e.event)?.push(e.onEvent):s(this,Tt).set(e.event,[e.onEvent]),D}static get redditAPIPlugins(){if(!nt(s(this,ds).redditAPI))throw new Error("Reddit API is not enabled. You can enable it by passing `redditAPI: true` to `Devvit.configure`.");return{Flair:s(this,L)[S.FlairDefinition.fullName],GraphQL:s(this,L)[S.GraphQLDefinition.fullName],LinksAndComments:s(this,L)[S.LinksAndCommentsDefinition.fullName],Listings:s(this,L)[S.ListingsDefinition.fullName],Moderation:s(this,L)[S.ModerationDefinition.fullName],ModNote:s(this,L)[S.ModNoteDefinition.fullName],NewModmail:s(this,L)[S.NewModmailDefinition.fullName],PrivateMessages:s(this,L)[S.PrivateMessagesDefinition.fullName],Subreddits:s(this,L)[S.SubredditsDefinition.fullName],PostCollections:s(this,L)[S.PostCollectionsDefinition.fullName],Users:s(this,L)[S.UsersDefinition.fullName],Widgets:s(this,L)[S.WidgetsDefinition.fullName],Wiki:s(this,L)[S.WikiDefinition.fullName]}}static get modLogPlugin(){let e=s(this,L)[S.ModlogDefinition.fullName];if(!e)throw new Error("ModLog is not enabled. You can enable it by passing `modLog: true` to `Devvit.configure`");return e}static get schedulerPlugin(){let e=s(this,L)[S.SchedulerDefinition.fullName];if(!e)throw new Error("Scheduler is not enabled. You can enable it by calling `Devvit.addSchedulerJob` at the top level of your app.");return e}static get kvStorePlugin(){let e=s(this,L)[S.KVStoreDefinition.fullName];if(!e)throw new Error("Key Value Store is not enabled. You can enable it by passing `kvStore: true` to `Devvit.configure`");return e}static get redisPlugin(){let e=s(this,L)[S.RedisAPIDefinition.fullName];if(!e)throw new Error("Redis is not enabled. You can enable it by passing `redis: true` to `Devvit.configure`");return e}static get mediaPlugin(){let e=s(this,L)[S.MediaServiceDefinition.fullName];if(!e)throw new Error("MediaService is not enabled. You can enable it by passing `media: true` to `Devvit.configure`");return e}static get redditapiv2Plugin(){let e=s(this,L)[S.RedditAPIV2Definition.fullName];if(!e)throw new Error("RedditAPIV2 is not enabled. You can enable it by passing `apiV2: true` to `Devvit.configure`");return e}static get assetsPlugin(){let e=s(this,L)[S.AssetResolverDefinition.fullName];if(!e)throw new Error("AssetsService is not available. This should not happen, and indicates a setup problem with the runtime.");return e}static get settingsPlugin(){let e=s(this,L)[S.SettingsDefinition.fullName];if(!e)throw new Error("Settings is not enabled. You can enable it by passing `settings: true` to `Devvit.configure`");return e}static get realtimePlugin(){let e=s(this,L)[S.RealtimeDefinition.fullName];if(!e)throw new Error("Realtime is not enabled. You can enable it by passing `realtime: true` to `Devvit.configure`");return e}static get menuItems(){return s(this,mi)}static get customPostType(){return s(this,ar)}static get formDefinitions(){return s(this,dr)}static get scheduledJobHandlers(){return s(this,lr)}static get installationSettings(){return s(this,pi)}static get appSettings(){return s(this,gi)}static get triggerOnEventHandlers(){return s(this,Tt)}constructor(e){var t;super(e),b(t=D,_,W).call(t,S.AssetResolverDefinition);for(let i in s(D,ur)){let n=s(D,ur)[i];n.handler=e.use(n.def,n.options)}s(D,mi).length>0&&ty(e),s(D,lr).size>0&&ry(e),s(D,ar)&&(Yv(e),cb(e)),(s(D,ar)||s(D,dr).size>0)&&Qy(e),s(D,pi)&&Qv(e),s(D,gi)&&Rv(e),s(D,Tt).size>0&&iy(e)}};ds=new WeakMap,mi=new WeakMap,ar=new WeakMap,dr=new WeakMap,lr=new WeakMap,pi=new WeakMap,gi=new WeakMap,Tt=new WeakMap,ur=new WeakMap,L=new WeakMap,_=new WeakSet,W=function(e,t){s(this,ur)[e.fullName]={def:e,options:t??{},handler:void 0};let i={};for(let n of Object.values(e.methods))i[n.name]=(o,a)=>s(this,ur)[e.fullName].handler?.[n.name]?.(n.requestType?.fromPartial(o??{}),a);return s(this,L)[e.fullName]=i,i},l(D,_),D.debug={emitSnapshots:!1,emitState:!1},l(D,ds,{}),l(D,mi,[]),l(D,ar,void 0),l(D,dr,new Map),l(D,lr,new Map),l(D,pi,void 0),l(D,gi,void 0),l(D,Tt,new Map),l(D,ur,{}),l(D,L,{});var u=D;(e=>{function r(t,i,...n){return{type:t,props:i,children:n}}e.createElement=r})(u||(u={}));function V(r){let e=Object.getOwnPropertyDescriptors(r.constructor.prototype);for(let[t,i]of Object.entries(e))i.get&&Object.defineProperty(r,t,{...i,enumerable:!0})}var zc;(function(r){r[r.bold=1]="bold",r[r.italic=2]="italic",r[r.underline=4]="underline",r[r.strikethrough=8]="strikethrough",r[r.subscript=16]="subscript",r[r.superscript=32]="superscript",r[r.monospace=64]="monospace"})(zc||(zc={}));var mb="text",pb="raw",gb="br",fb="link",hb="c/",vb="p/",yb="r/",bb="u/",Pb="@",kb="spoilertext",Sb="par",Cb="h",Ib="hr",wb="blockquote",Ab="code",xb="li",Tb="list",Eb="L",Rb="R",Fb="C",Ob="table",Mb="embed",Bb="img",Lb="gif",Ub="video";function Db(r){return{e:Lb,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function _b(r,e){let t={},i=[];return Object.assign(t,ls(t,i),us(t,i),cs(t,i),gs(t,i),fs(t,i),hs(t,i)),e(t),{e:wb,c:i,...r.author&&{a:r.author}}}function Nb(r,e){let t={},i=[];return Object.assign(t,Jc(t,i)),e(t),{e:Ab,c:i,...r.language&&{l:r.language}}}function qb(r){return{e:hb,t:r.permalink}}function Hb(r,e){let t={},i=[];return Object.assign(t,Jc(t,i),ps(t,i)),e(t),{e:Cb,l:r.level,c:i}}function jb(r){return{e:Mb,u:r.sourceUrl,c:r.contentUrl,x:r.width,y:r.height}}function Wb(){return{e:Ib}}function Gb(r){return{e:Bb,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function zb(){return{e:gb}}function Vb(r){return{e:fb,t:r.text,u:r.url,...r.formatting&&{f:r.formatting},...r.tooltip&&{a:r.tooltip}}}function Jb(r,e){let t={},i=[];return Object.assign(t,lP(t,i)),e(t),{e:Tb,o:r.ordered,c:i}}function $b(r){let e={},t=[];return Object.assign(e,ls(e,t),us(e,t),cs(e,t),Td(e,t),gs(e,t),fs(e,t),hs(e,t)),r(e),{e:xb,c:t}}function Kb(r){let e={},t=[];return Object.assign(e,Ed(e,t),ps(e,t),Vc(e,t),$c(e,t),ms(e,t)),r(e),{e:Sb,c:t}}function Xb(r){return{e:vb,t:r.permalink}}function Zb(r){return{e:pb,t:r}}function Yb(r){let e={},t=[];return Object.assign(e,Ed(e,t),ps(e,t),Vc(e,t)),r(e),{e:kb,c:t}}function Qb(r){return{e:yb,t:r.subredditName,l:r.showPrefix}}function eP(r){let e={},t=[],i=[];return Object.assign(e,uP(e,t,i)),r(e),{e:Ob,h:t,c:i}}function tP(r){let[e,t]=dP();return r(e),{c:t}}function rP(r,e){let[t,i]=dP();e(t);let n;switch(r.columnAlignment){case"left":n=Eb;break;case"right":n=Rb;break;case"center":n=Fb;break}return{...n&&{a:n},...i&&{c:i}}}function iP(r){let e={},t=[];return Object.assign(e,cP(e,t)),r(e),t}function nP(r){return{e:mb,t:r.text,...r.formatting&&{f:r.formatting}}}function sP(r){return{e:bb,t:r.username,l:r.showPrefix}}function oP(r){return{e:Pb,t:r.username,l:r.showPrefix}}function aP(r){return{e:Ub,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur},...r.thumbnail&&{p:r.thumbnail},...r.convertToGif&&{gifify:r.convertToGif}}}function dP(){let r={},e=[];return Object.assign(r,Ed(r,e),ps(r,e),$c(r,e),ms(r,e)),[r,e]}function ls(r,e){return{blockQuote(t,i){return e.push(_b(t,i)),r}}}function us(r,e){return{codeBlock(t,i){return e.push(Nb(t,i)),r}}}function mP(r,e){return{embed(t){return e.push(jb(t)),r}}}function cs(r,e){return{heading(t,i){return e.push(Hb(t,i)),r}}}function Td(r,e){return{horizontalRule(){return e.push(Wb()),r}}}function ms(r,e){return{image(t){return e.push(Gb(t)),r},animatedImage(t){return e.push(Db(t)),r}}}function Vc(r,e){return{linebreak(){return e.push(zb()),r}}}function ps(r,e){return{link(t){return e.push(Vb(t)),r},commentLink(t){return e.push(qb(t)),r},postLink(t){return e.push(Xb(t)),r},subredditLink(t){return e.push(Qb(t)),r},userLink(t){return e.push(sP(t)),r},userMention(t){return e.push(oP(t)),r}}}function gs(r,e){return{list(t,i){return e.push(Jb(t,i)),r}}}function lP(r,e){return{item(t){return e.push($b(t)),r}}}function fs(r,e){return{paragraph(t){return e.push(Kb(t)),r}}}function Jc(r,e){return{rawText(t){return e.push(Zb(t)),r}}}function $c(r,e){return{spoiler(t){return e.push(Yb(t)),r}}}function uP(r,e,t){return{headerCell(i,n){return e.push(rP(i,n)),r},row(i){return t.push(iP(i)),r}}}function hs(r,e){return{table(t){return e.push(eP(t)),r}}}function cP(r,e){return{cell(t){return e.push(tP(t)),r}}}function Ed(r,e){return{text(t){return e.push(nP(t)),r}}}function pP(r,e){return{video(t){return e.push(aP(t)),r}}}var hR=function(r,e,t,i,n){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?n.call(r,t):n?n.value=t:e.set(r,t),t},vR=function(r,e,t,i){if(t==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?i:t==="a"?i.call(r):i?i.value:e.get(r)},Rd,vs=class{constructor(){Rd.set(this,void 0);let e=[];Object.assign(this,fs(this,e),cs(this,e),Td(this,e),ls(this,e),us(this,e),mP(this,e),gs(this,e),hs(this,e),ms(this,e),pP(this,e)),hR(this,Rd,{document:e},"f")}build(){return JSON.stringify(vR(this,Rd,"f"))}paragraph(e){return this}heading(e,t){return this}horizontalRule(){return this}blockQuote(e,t){return this}codeBlock(e,t){return this}embed(e){return this}list(e,t){return this}table(e){return this}image(e){return this}animatedImage(e){return this}video(e){return this}};Rd=new WeakMap;function fi(r){let e;return r instanceof vs?e=r.build():typeof r=="object"?e=JSON.stringify(r):e=r,e}var gP=100,fP=1/0,cr,mr,Et,hi,vi,Fd,H=class{constructor(e){l(this,vi);l(this,cr,void 0);l(this,mr,void 0);l(this,Et,void 0);l(this,hi,!1);this.pageSize=gP;this.limit=fP;this.children=[];V(this),this._fetch=e.fetch,this.pageSize=e.pageSize??gP,this.limit=e.limit??fP,d(this,mr,e.after),d(this,cr,e.before),d(this,Et,e.more),e.children&&(this.children=e.children)}get hasMore(){return!s(this,hi)||!!(s(this,mr)||s(this,cr)||s(this,Et))}async*[Symbol.asyncIterator](){let e=0;for(;;){if(e===this.children.length)if(this.hasMore){if((await b(this,vi,Fd).call(this)).length===0)break}else break;if(yield this.children[e],e++,e===this.limit)break}}setMore(e){d(this,Et,e)}preventInitialFetch(){d(this,hi,!0)}async all(){for(;this.hasMore&&this.children.length<this.limit;)await b(this,vi,Fd).call(this);return this.children.slice(0,this.limit)}async get(e){let t=e<=this.limit?e:this.limit;for(;this.hasMore&&this.children.length<t;)await b(this,vi,Fd).call(this);return this.children.slice(0,t)}};cr=new WeakMap,mr=new WeakMap,Et=new WeakMap,hi=new WeakMap,vi=new WeakSet,Fd=async function(){if(!this.hasMore)throw new Error("This listing does not have any more items to load.");let{children:e,before:t,after:i,more:n}=await this._fetch({before:s(this,cr),after:s(this,mr),limit:this.pageSize,more:s(this,Et)});return this.children.push(...e),d(this,cr,t),d(this,mr,i),d(this,Et,n),d(this,hi,!0),e};function yR(r){try{return!0}catch{return!1}}function bR(r){try{return!0}catch{return!1}}var ys,Kc,Ee=class{constructor(){}static get(e,t){let i=u.redditAPIPlugins.ModNote;return new H({hasMore:!0,before:e.before,limit:e.limit,pageSize:e.limit,fetch:async n=>{let o=await i.GetNotes({subreddit:e.subreddit,user:e.user,filter:e.filter,before:n.before,limit:n.limit},t);return{children:o.modNotes?.map(a=>b(this,ys,Kc).call(this,a))||[],before:o.hasNextPage?o.endCursor:void 0,hasMore:o.hasNextPage}}})}static async delete(e,t){let i=u.redditAPIPlugins.ModNote,{deleted:n}=await i.DeleteNotes(e,t);return!!n}static async add(e,t){let n=await u.redditAPIPlugins.ModNote.PostNotes(e,t);if(!n?.created)throw new Error("Failed to create mod note");return b(this,ys,Kc).call(this,n.created)}static async addRemovalNote(e,t){await u.redditAPIPlugins.ModNote.PostRemovalNote(e,t)}};ys=new WeakSet,Kc=function(e){if(f(e.id,"Mod note ID is null or undefined"),f(e.createdAt,"Mod note createdAt is null or undefined"),f(e.type,"Mod note type is null or undefined"),f(e.subreddit,"Mod note subreddit is null or undefined"),f(e.subredditId,"Mod note subredditId is null or undefined"),f(e.operator,"Mod note operator is null or undefined"),f(e.operatorId,"Mod note operatorId is null or undefined"),f(e.user,"Mod note user is null or undefined"),f(e.userId,"Mod note userId is null or undefined"),f(e.userNoteData,"Mod note userNote is null or undefined"),f(e.modActionData,"Mod note modAction is null or undefined"),!yR(e.userNoteData?.label??""))throw new Error(`Invalid user note label: ${e.userNoteData?.label}`);if(!bR(e.type))throw new Error(`Invalid mod note type: ${e.type}`);return{id:e.id,user:{id:ee(e.userId??""),name:e.user},subreddit:{id:xe(e.subredditId??""),name:e.subreddit},operator:{id:ee(e.operatorId??""),name:e.operator},createdAt:new Date(e.createdAt*1e3),userNote:{note:e.userNoteData?.note,redditId:ge(e.userNoteData?.redditId??""),label:e.userNoteData?.label},type:e.type}},l(Ee,ys);var yi=class{static queryWithQueryString(e,t){return u.redditAPIPlugins.GraphQL.Query({query:e},t)}static query(e,t,i,n){return u.redditAPIPlugins.GraphQL.PersistedQuery({operationName:e,id:t,variables:i},n)}};var hP=["all","wiki","posts","access","mail","config","flair","channels","chat_config","chat_community","chat_operator"];function PR(r,e,t=!1){let i=t?"%2b":"+";return e.map(n=>(r.includes(n)?i:"-")+n).join(",")}function Xc(r){return PR(r,hP,!0)}function vP(r){return r.filter(e=>hP.includes(e))}var kR=(t=>(t.User="USER_FLAIR",t.Post="LINK_FLAIR",t))(kR||{}),pr,bi,Pi,ki,Si,Ci,Ii,wi,Ai,xi,Ti,Od,We=class We{constructor(e,t,i){l(this,pr,void 0);l(this,bi,void 0);l(this,Pi,void 0);l(this,ki,void 0);l(this,Si,void 0);l(this,Ci,void 0);l(this,Ii,void 0);l(this,wi,void 0);l(this,Ai,void 0);l(this,xi,void 0);V(this),f(e.id),f(e.text),d(this,pr,e.id),d(this,bi,t),d(this,Pi,e.text),d(this,ki,SR(e.textColor)),d(this,Si,CR(e.backgroundColor)),d(this,Ci,IR(e.allowableContent)),d(this,Ii,e.modOnly),d(this,wi,e.maxEmojis),d(this,Ai,e.textEditable),d(this,xi,i)}get id(){return s(this,pr)}get text(){return s(this,Pi)}get textColor(){return s(this,ki)}get backgroundColor(){return s(this,Si)}get allowableContent(){return s(this,Ci)}get modOnly(){return s(this,Ii)}get maxEmojis(){return s(this,wi)}get allowUserEdits(){return s(this,Ai)}async delete(){return We.deleteFlairTemplate(s(this,pr),s(this,bi),s(this,xi))}async edit(e){return We.editFlairTemplate({id:s(this,pr),subredditName:s(this,bi),text:e.text??s(this,Pi),allowableContent:e.allowableContent??s(this,Ci),backgroundColor:e.backgroundColor??s(this,Si),maxEmojis:e.maxEmojis??s(this,wi),modOnly:e.modOnly??s(this,Ii),textColor:e.textColor??s(this,ki),allowUserEdits:e.allowUserEdits??s(this,Ai)},s(this,xi))}static async createPostFlairTemplate(e,t){var i;return b(i=We,Ti,Od).call(i,{...e,flairType:"LINK_FLAIR"},t)}static async createUserFlairTemplate(e,t){var i;return b(i=We,Ti,Od).call(i,{...e,flairType:"USER_FLAIR"},t)}static async editFlairTemplate(e,t){var i;return b(i=We,Ti,Od).call(i,e,t)}static async getPostFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.LinkFlair({subreddit:e},t)).flair?.map(o=>new We(o,e,t))||[]}static async getUserFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.UserFlair({subreddit:e},t)).flair?.map(o=>new We(o,e,t))||[]}static async deleteFlairTemplate(e,t,i){await u.redditAPIPlugins.Flair.DeleteFlairTemplate({subreddit:e,flairTemplateId:t},i)}};pr=new WeakMap,bi=new WeakMap,Pi=new WeakMap,ki=new WeakMap,Si=new WeakMap,Ci=new WeakMap,Ii=new WeakMap,wi=new WeakMap,Ai=new WeakMap,xi=new WeakMap,Ti=new WeakSet,Od=async function(e,t){let{subredditName:i,allowableContent:n="all",backgroundColor:o="transparent",flairType:a="",maxEmojis:c=10,modOnly:p=!1,text:g,textColor:v="dark",allowUserEdits:m=!1,id:y=""}=e;if(p&&m)throw new Error("Cannot have a mod only flair that is editable by users");let C=await u.redditAPIPlugins.Flair.FlairTemplate({subreddit:i,allowableContent:n,backgroundColor:o,flairType:a,maxEmojis:c,modOnly:p,text:g,textColor:v,textEditable:m,flairTemplateId:y,cssClass:"",overrideCss:!1},t);return new We(C,i,t)},l(We,Ti);var oe=We;function ks(r){return{flairCssClass:r.flairCssClass,user:r.user,flairText:r.flairText}}var bs,Zc,Ps,Yc,Rt=class Rt{static async getUserFlairBySubreddit(e,t){return u.redditAPIPlugins.Flair.FlairList(e,t)}static setUserFlair(e,t){var i;return b(i=Rt,bs,Zc).call(i,e,t)}static setPostFlair(e,t){var i;return b(i=Rt,bs,Zc).call(i,{...e,postId:pe(e.postId)},t)}static async removePostFlair(e,t,i){var n;return b(n=Rt,Ps,Yc).call(n,e,t,void 0,i)}static async removeUserFlair(e,t,i){var n;return b(n=Rt,Ps,Yc).call(n,e,void 0,t,i)}};bs=new WeakSet,Zc=async function(e,t){await u.redditAPIPlugins.Flair.SelectFlair({subreddit:e.subredditName,flairTemplateId:e.flairTemplateId??"",text:e.text??"",name:e.username,link:e.postId,backgroundColor:e.backgroundColor??"",textColor:e.textColor??"dark",cssClass:e.cssClass??"",returnRtjson:"none"},t)},Ps=new WeakSet,Yc=async function(e,t,i,n){await u.redditAPIPlugins.Flair.SelectFlair({subreddit:e,name:i??"",link:t??"",flairTemplateId:"",backgroundColor:"",text:"",textColor:"",cssClass:"",returnRtjson:"none"},n)},l(Rt,bs),l(Rt,Ps);var Re=Rt;function SR(r){if(f(r,"Flair text color is required"),r==="light"||r==="dark")return r;throw new Error(`Invalid flair text color: ${r}`)}function CR(r){if(f(r,"Flair background color is required"),r==="transparent"||/^#([A-Fa-f0-9]{6})$/.test(r))return r;throw new Error(`Invalid flair background color: ${r}`)}function IR(r){if(r==="all"||r==="text"||r==="emoji")return r;throw new Error(`Invalid allowable content: ${r}`)}import{Block as OR}from"@devvit/protos";var kP=Xo(PP(),1);var Ei,Cs,Ri,Is,ws,As,xs,Ts,Fi,Es,Rs,Fs,Os,Ms,Bs,Ft,fr,Oi,Ot,Mi,Bi,Li,hr,Mt,Bt,Ui,Lt,Ut,Dt,at,Ls,Us,Di,_i,U,N=class N{constructor(e,t){l(this,Ei,void 0);l(this,Cs,void 0);l(this,Ri,void 0);l(this,Is,void 0);l(this,ws,void 0);l(this,As,void 0);l(this,xs,void 0);l(this,Ts,void 0);l(this,Fi,void 0);l(this,Es,void 0);l(this,Rs,void 0);l(this,Fs,void 0);l(this,Os,void 0);l(this,Ms,void 0);l(this,Bs,void 0);l(this,Ft,void 0);l(this,fr,void 0);l(this,Oi,void 0);l(this,Ot,void 0);l(this,Mi,void 0);l(this,Bi,void 0);l(this,Li,void 0);l(this,hr,void 0);l(this,Mt,void 0);l(this,Bt,void 0);l(this,Ui,void 0);l(this,Lt,void 0);l(this,Ut,void 0);l(this,Dt,void 0);l(this,at,void 0);l(this,Ls,void 0);l(this,Us,void 0);l(this,Di,void 0);l(this,_i,void 0);l(this,U,void 0);V(this),f(e.id,"Post is missing id"),f(e.title,"Post is missing title"),f(e.createdUtc,"Post is missing created date"),f(e.author,"Post is missing author name"),f(e.subreddit,"Post is missing subreddit name"),f(e.subredditId,"Post is missing subreddit id"),f(e.url,"Post is missing url"),f(e.permalink,"Post is missing permalink"),d(this,Ei,pe(`t3_${e.id}`)),d(this,Ri,e.author),d(this,Cs,e.authorFullname?ee(e.authorFullname):void 0),d(this,ws,xe(e.subredditId)),d(this,As,e.subreddit),d(this,Fs,e.score??0),d(this,Os,e.numComments??0),d(this,Ms,e.numReports??0);let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,Is,i),d(this,Ts,e.title),d(this,Fi,e.selftext),d(this,Es,e.selftextHtml),d(this,Rs,e.url),d(this,xs,e.permalink),e.thumbnail&&e.thumbnail!=="self"&&e.thumbnail!=="nsfw"&&e.thumbnailHeight!=null&&e.thumbnailWidth!=null&&d(this,Bs,{url:e.thumbnail,height:e.thumbnailHeight,width:e.thumbnailWidth}),d(this,Ft,e.approved??!1),d(this,Ot,e.removed??!1),d(this,Mi,e.removedBy),d(this,Bi,e.removedByCategory),d(this,fr,e.spam??!1),d(this,Oi,e.stickied??!1),d(this,Li,e.archived??!1),d(this,hr,e.edited??!1),d(this,Mt,e.locked??!1),d(this,Bt,e.over18??!1),d(this,Ui,e.quarantine??!1),d(this,Lt,e.spoiler),d(this,Ut,e.hidden??!1),d(this,Dt,e.ignoreReports??!1),d(this,at,e.distinguished),d(this,Us,e.secureMedia),d(this,Di,(e.modReports??[]).map(([n])=>n)),d(this,_i,(e.userReports??[]).map(([n])=>n)),d(this,U,t),(e.linkFlairBackgroundColor||e.linkFlairCssClass||e.linkFlairText||e.linkFlairType||e.linkFlairTemplateId||e.linkFlairRichtext||e.linkFlairTextColor)&&d(this,Ls,{backgroundColor:e.linkFlairBackgroundColor,cssClass:e.linkFlairCssClass,text:e.linkFlairText,type:e.linkFlairType,templateId:e.linkFlairTemplateId,richtext:(e.linkFlairRichtext??[]).map(({e:n,t:o,a,u:c})=>({elementType:n,text:o,emojiRef:a,url:c})),textColor:e.linkFlairTextColor})}get id(){return s(this,Ei)}get authorId(){return s(this,Cs)}get authorName(){return s(this,Ri)}get subredditId(){return s(this,ws)}get subredditName(){return s(this,As)}get permalink(){return s(this,xs)}get title(){return s(this,Ts)}get body(){return s(this,Fi)}get bodyHtml(){return s(this,Es)}get url(){return s(this,Rs)}get thumbnail(){return s(this,Bs)}get createdAt(){return s(this,Is)}get score(){return s(this,Fs)}get numberOfComments(){return s(this,Os)}get numberOfReports(){return s(this,Ms)}get approved(){return s(this,Ft)}get spam(){return s(this,fr)}get stickied(){return s(this,Oi)}get removed(){return s(this,Ot)}get removedBy(){return s(this,Mi)}get removedByCategory(){return s(this,Bi)}get archived(){return s(this,Li)}get edited(){return s(this,hr)}get locked(){return s(this,Mt)}get nsfw(){return s(this,Bt)}get quarantined(){return s(this,Ui)}get spoiler(){return s(this,Lt)}get hidden(){return s(this,Ut)}get ignoringReports(){return s(this,Dt)}get distinguishedBy(){return s(this,at)}get comments(){return K.getComments({postId:this.id},s(this,U))}get flair(){return s(this,Ls)}get secureMedia(){return s(this,Us)}get userReportReasons(){return s(this,_i)}get modReportReasons(){return s(this,Di)}toJSON(){return{id:this.id,authorId:this.authorId,authorName:this.authorName,subredditId:this.subredditId,subredditName:this.subredditName,permalink:this.permalink,title:this.title,body:this.body,bodyHtml:this.bodyHtml,url:this.url,thumbnail:this.thumbnail,score:this.score,numberOfComments:this.numberOfComments,numberOfReports:this.numberOfReports,createdAt:this.createdAt,approved:this.approved,spam:this.spam,stickied:this.stickied,removed:this.removed,removedBy:s(this,Mi),removedByCategory:s(this,Bi),archived:this.archived,edited:this.edited,locked:this.locked,nsfw:this.nsfw,quarantined:this.quarantined,spoiler:this.spoiler,hidden:this.hidden,ignoringReports:this.ignoringReports,distinguishedBy:this.distinguishedBy,flair:this.flair,secureMedia:this.secureMedia,modReportReasons:s(this,Di),userReportReasons:s(this,_i)}}isApproved(){return s(this,Ft)}isSpam(){return s(this,fr)}isStickied(){return s(this,Oi)}isRemoved(){return s(this,Ot)}isArchived(){return s(this,Li)}isEdited(){return s(this,hr)}isLocked(){return s(this,Mt)}isNsfw(){return s(this,Bt)}isQuarantined(){return s(this,Ui)}isSpoiler(){return s(this,Lt)}isHidden(){return s(this,Ut)}isIgnoringReports(){return s(this,Dt)}isDistinguishedBy(){return s(this,at)}async edit(e){let t=await N.edit({id:this.id,...e},s(this,U));d(this,Fi,t.body),d(this,hr,t.edited)}async addComment(e){return K.submit({id:this.id,...e},s(this,U))}async delete(){return N.delete(this.id,s(this,U))}async approve(){await N.approve(this.id,s(this,U)),d(this,Ft,!0),d(this,Ot,!1)}async remove(e=!1){await N.remove(this.id,e,s(this,U)),d(this,Ot,!0),d(this,fr,e),d(this,Ft,!1)}async lock(){await N.lock(this.id,s(this,U)),d(this,Mt,!0)}async unlock(){await N.unlock(this.id,s(this,U)),d(this,Mt,!1)}async hide(){await N.hide(this.id,s(this,U)),d(this,Ut,!0)}async unhide(){await N.unhide(this.id,s(this,U)),d(this,Ut,!1)}async markAsNsfw(){await N.markAsNsfw(this.id,s(this,U)),d(this,Bt,!0)}async unmarkAsNsfw(){await N.unmarkAsNsfw(this.id,s(this,U)),d(this,Bt,!1)}async markAsSpoiler(){await N.markAsSpoiler(this.id,s(this,U)),d(this,Lt,!0)}async unmarkAsSpoiler(){await N.unmarkAsSpoiler(this.id,s(this,U)),d(this,Lt,!1)}async sticky(e){await N.sticky(this.id,e,s(this,U))}async unsticky(){await N.unsticky(this.id,s(this,U))}async distinguish(){let{distinguishedBy:e}=await N.distinguish(this.id,!1,s(this,U));d(this,at,e)}async distinguishAsAdmin(){let{distinguishedBy:e}=await N.distinguish(this.id,!0,s(this,U));d(this,at,e)}async undistinguish(){let{distinguishedBy:e}=await N.undistinguish(this.id,s(this,U));d(this,at,e)}async ignoreReports(){await N.ignoreReports(this.id,s(this,U)),d(this,Dt,!0)}async unignoreReports(){await N.unignoreReports(this.id,s(this,U)),d(this,Dt,!1)}async getAuthor(){return I.getByUsername(s(this,Ri),s(this,U))}async crosspost(e){return N.crosspost({...e,postId:this.id},s(this,U))}addRemovalNote(e){return Ee.addRemovalNote({itemIds:[s(this,Ei)],...e},s(this,U))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,n=Kt(e)?e:`t3_${e}`,o=await i.Info({subreddits:[],thingIds:[n]},t);if(!o.data?.children?.length)throw new Error("could not find post");let a=o.data.children[0];if(!a?.data)throw new Error("could not find post");return new N(a.data,t)}static async submit(e,t){let i=u.redditAPIPlugins.LinksAndComments,n;if("preview"in e){f(t,"Missing metadata in `SubmitPostOptions`");let c=await new it(()=>e.preview,void 0,{},t,void 0).buildBlocksUI(),p=OR.encode(c).finish();n=await i.Submit({kind:"custom",sr:e.subredditName,richtextJson:(0,kP.fromByteArray)(p),...e},t)}else n=await i.Submit({kind:"kind"in e?e.kind:"url"in e?"link":"self",sr:e.subredditName,richtextJson:"richtext"in e?fi(e.richtext):void 0,...e},t);if("kind"in e&&["image","video","videogif"].includes(e.kind)&&!n.json?.data?.id&&"url"in e)throw new Error(`Post of ${e.kind} type with ${e.url} is being created asynchronously and should be updated in the subreddit soon.`);if(!n.json?.data?.id||n.json?.errors?.length)throw new Error(`failed to submit post - either post ID is empty or request failed with errors: ${n.json?.errors}`);return N.getById(`t3_${n.json.data.id}`,t)}static async crosspost(e,t){let i=u.redditAPIPlugins.LinksAndComments,{postId:n,subredditName:o,...a}=e,c=await i.Submit({kind:"crosspost",sr:o,crosspostFullname:pe(n),...a},t);if(!c.json?.data?.id||c.json?.errors?.length)throw new Error("failed to crosspost post");return N.getById(`t3_${c.json.data.id}`,t)}static async edit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:n}=e,o;if("richtext"in e&&(o=fi(e.richtext)),(await i.EditUserText({thingId:n,text:"text"in e?e.text:"",richtextJson:o},t)).json?.errors?.length)throw new Error("Failed to edit post");return N.getById(n,t)}static async delete(e,t){await u.redditAPIPlugins.LinksAndComments.Del({id:e},t)}static async approve(e,t){await u.redditAPIPlugins.Moderation.Approve({id:e},t)}static async remove(e,t=!1,i){await u.redditAPIPlugins.Moderation.Remove({id:e,spam:t},i)}static async hide(e,t){await u.redditAPIPlugins.LinksAndComments.Hide({id:e},t)}static async unhide(e,t){await u.redditAPIPlugins.LinksAndComments.Unhide({id:e},t)}static async markAsNsfw(e,t){await u.redditAPIPlugins.LinksAndComments.MarkNSFW({id:e},t)}static async unmarkAsNsfw(e,t){await u.redditAPIPlugins.LinksAndComments.UnmarkNSFW({id:e},t)}static async markAsSpoiler(e,t){await u.redditAPIPlugins.LinksAndComments.Spoiler({id:e},t)}static async unmarkAsSpoiler(e,t){await u.redditAPIPlugins.LinksAndComments.Unspoiler({id:e},t)}static async sticky(e,t,i){await u.redditAPIPlugins.LinksAndComments.SetSubredditSticky({id:e,state:!0,num:t},i)}static async unsticky(e,t){await u.redditAPIPlugins.LinksAndComments.SetSubredditSticky({id:e,state:!1},t)}static async lock(e,t){await u.redditAPIPlugins.LinksAndComments.Lock({id:e},t)}static async unlock(e,t){await u.redditAPIPlugins.LinksAndComments.Unlock({id:e},t)}static async distinguish(e,t,i){let a=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:t?"admin":"yes",sticky:!1},i)).json?.data?.things?.[0]?.data;return f(a),{distinguishedBy:a.distinguished}}static async undistinguish(e,t){let o=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:"no",sticky:!1},t)).json?.data?.things?.[0]?.data;return f(o),{distinguishedBy:o.distinguished}}static async ignoreReports(e,t){await u.redditAPIPlugins.Moderation.IgnoreReports({id:e},t)}static async unignoreReports(e,t){await u.redditAPIPlugins.Moderation.UnignoreReports({id:e},t)}static getControversialPosts(e={},t){return this.getSortedPosts({...e,sort:"controversial"},t)}static getTopPosts(e={},t){return this.getSortedPosts({...e,sort:"top"},t)}static getSortedPosts(e,t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.Sort({show:"all",sort:e.sort,t:e.timeframe,subreddit:e.subredditName,...n},t);return Ss(o,t)}})}static getHotPosts(e={location:"GLOBAL"},t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.Hot({g:e.location,show:"all",subreddit:e.subredditName,...n},t);return Ss(o,t)}})}static getNewPosts(e,t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.New({show:"all",subreddit:e.subredditName,...n},t);return Ss(o,t)}})}static getRisingPosts(e,t){let i=u.redditAPIPlugins.Listings;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,fetch:async n=>{let o=await i.Rising({show:"all",subreddit:e.subredditName,...n},t);return Ss(o,t)}})}static getPostsByUser(e,t){let i=u.redditAPIPlugins.Users;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,async fetch(n){let o=await i.UserWhere({username:e.username,where:"submitted",...n},t);return Ss(o,t)}})}};Ei=new WeakMap,Cs=new WeakMap,Ri=new WeakMap,Is=new WeakMap,ws=new WeakMap,As=new WeakMap,xs=new WeakMap,Ts=new WeakMap,Fi=new WeakMap,Es=new WeakMap,Rs=new WeakMap,Fs=new WeakMap,Os=new WeakMap,Ms=new WeakMap,Bs=new WeakMap,Ft=new WeakMap,fr=new WeakMap,Oi=new WeakMap,Ot=new WeakMap,Mi=new WeakMap,Bi=new WeakMap,Li=new WeakMap,hr=new WeakMap,Mt=new WeakMap,Bt=new WeakMap,Ui=new WeakMap,Lt=new WeakMap,Ut=new WeakMap,Dt=new WeakMap,at=new WeakMap,Ls=new WeakMap,Us=new WeakMap,Di=new WeakMap,_i=new WeakMap,U=new WeakMap;var z=N;function Ss(r,e){if(!r.data?.children)throw new Error("Listing response is missing children");return{children:r.data.children.map(i=>new z(i.data,e)),before:r.data.before,after:r.data.after}}var Ds,Ni,_s,Ns,qs,Hs,js,_t,Ws,Gs,dt,vr=class vr{constructor(e,t){l(this,Ds,void 0);l(this,Ni,void 0);l(this,_s,void 0);l(this,Ns,void 0);l(this,qs,void 0);l(this,Hs,void 0);l(this,js,void 0);l(this,_t,new Map);l(this,Ws,void 0);l(this,Gs,void 0);l(this,dt,void 0);V(this),f(e.id,"User ID is missing or undefined"),f(e.name,"Username is missing or undefined"),f(e.createdUtc,"User is missing created date"),d(this,Ds,ee(qa(e.id)?e.id:`t2_${e.id}`)),d(this,Ni,e.name),d(this,Hs,e.over18??!1),d(this,js,e.isEmployee??!1);let i=new Date(0);if(i.setUTCSeconds(e.createdUtc),d(this,_s,i),d(this,Ns,e.linkKarma??0),d(this,qs,e.commentKarma??0),e.modPermissions)for(let[n,o]of Object.entries(e.modPermissions))s(this,_t).set(n,vP(o));d(this,Ws,new URL(e.subreddit?.url??"","https://www.reddit.com").toString()),d(this,Gs,e.subreddit?.url??""),d(this,dt,t)}get id(){return s(this,Ds)}get username(){return s(this,Ni)}get createdAt(){return s(this,_s)}get linkKarma(){return s(this,Ns)}get commentKarma(){return s(this,qs)}get nsfw(){return s(this,Hs)}get isAdmin(){return s(this,js)}get modPermissions(){return s(this,_t)}get url(){return s(this,Ws)}get permalink(){return s(this,Gs)}toJSON(){return{id:this.id,username:this.username,createdAt:this.createdAt,linkKarma:this.linkKarma,commentKarma:this.commentKarma,nsfw:this.nsfw,modPermissionsBySubreddit:Object.fromEntries(this.modPermissions)}}async getModPermissionsForSubreddit(e){if(s(this,_t).has(e))return s(this,_t).get(e);let t=await vr.getSubredditUsersByType({subredditName:e,type:"moderators",username:this.username},s(this,dt)).all();if(t.length===0)return[];let i=t[0].modPermissions.get(e)??[];return i.length>0&&s(this,_t).set(e,i),i}getComments(e){return K.getCommentsByUser({username:this.username,...e},s(this,dt))}getPosts(e){return z.getPostsByUser({username:this.username,...e},s(this,dt))}async getUserFlairBySubreddit(e){let t=await Re.getUserFlairBySubreddit({subreddit:e,name:s(this,Ni)},s(this,dt));return t.users[0]?ks(t.users[0]):void 0}getSnoovatarUrl(){return vr.getSnoovatarUrl(this.username,s(this,dt))}static async getById(e,t){let o=(await u.redditAPIPlugins.Users.UserDataByAccountIds({ids:e},t))?.users?.[e]?.name;return f(o,"Expected the username in response to be not null"),vr.getByUsername(o,t)}static async getByUsername(e,t){let n=await u.redditAPIPlugins.Users.UserAbout({username:e},t);if(!n.data?.id)throw new Error("failed to get user");return new vr(n.data,t)}static async getFromMetadata(e,t){f(t);let i=t?.[e]?.values[0];return i?vr.getById(ee(i),t):Promise.resolve(void 0)}static getSubredditUsersByType(e,t){let i=u.redditAPIPlugins.Subreddits;return new H({hasMore:!0,pageSize:e.pageSize,limit:e.limit,after:e.after,before:e.before,fetch:async n=>{let o=await i.AboutWhere({where:e.type,user:e.username,subreddit:e.subredditName,show:"all",...n},t);return BR(o,e.subredditName,t)}})}static async createRelationship(e,t){let i=u.redditAPIPlugins.Users,{type:n,subredditName:o,username:a,permissions:c,...p}=e,g=await i.Friend({type:n,subreddit:o,name:a,permissions:c?Xc(c):void 0,...p},t);if(g.json?.errors?.length)throw new Error(g.json.errors.join(`
4
+ `))}static async removeRelationship(e,t){await u.redditAPIPlugins.Users.Unfriend({type:e.type,subreddit:e.subredditName,name:e.username},t)}static async setModeratorPermissions(e,t,i,n){let a=await u.redditAPIPlugins.Users.SetPermissions({subreddit:t,name:e,type:"moderator",permissions:Xc(i)},n);if(a.json?.errors?.length)throw new Error(a.json.errors.join(`
5
+ `))}static async getSnoovatarUrl(e,t){let i="GetSnoovatarUrlByName",n="c47fd42345af268616d2d8904b56856acdc05cf61d3650380f539ad7d596ac0c";return(await yi.query(i,n,{username:e},t)).data?.redditorInfoByName?.snoovatarIcon?.url}static getOverview(e,t){let i=u.redditAPIPlugins.Users;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,async fetch(n){let o=await i.UserWhere({username:e.username,where:"overview",...n},t);return MR(o,t)}})}};Ds=new WeakMap,Ni=new WeakMap,_s=new WeakMap,Ns=new WeakMap,qs=new WeakMap,Hs=new WeakMap,js=new WeakMap,_t=new WeakMap,Ws=new WeakMap,Gs=new WeakMap,dt=new WeakMap;var I=vr;function MR(r,e){if(!r.data?.children)throw new Error("Listing response is missing children");return{children:r.data.children.map(i=>{if(i.kind==="t3")return new z(i.data,e);if(i.kind==="t1")return new K(i.data,e);throw new Error(`Type ${i.kind} is not supported`)}),before:r.data.before,after:r.data.after}}async function BR(r,e,t){let i=u.redditAPIPlugins.Users;if(!r.data?.children)throw new Error("Listing response is missing children");let n=r.data.children.map(v=>(f(v.data?.id,"User id is still from listing data"),v.data.id)),o=100,a=[];for(let v=0;v<n.length;v+=o)a.push(n.slice(v,v+o));let p=(await Promise.all(a.map(v=>i.UserDataByAccountIds({ids:v.join(",")},t)))).reduce((v,m)=>({...v,...m.users}),{});return{children:r.data.children.map(v=>{let m=v.data?.id;f(m,"User id is missing from listing");let y=p[m];return f(y,"User data is missing from response"),new I({id:m,name:y.name,linkKarma:y.linkKarma,commentKarma:y.commentKarma,createdUtc:y.createdUtc,over18:y.profileOver18,snoovatarSize:[],modPermissions:{[e]:v.data?.modPermissions??[]}},t)}),before:r.data.before,after:r.data.after}}var yr,zs,qi,Hi,Vs,Js,ji,$s,Ks,Wi,Nt,br,qt,Ht,lt,Pr,ut,Xs,Zs,Ys,Qs,eo,to,ro,Z,Gi,Bd,zi,Ld,j=class j{constructor(e,t){l(this,yr,void 0);l(this,zs,void 0);l(this,qi,void 0);l(this,Hi,void 0);l(this,Vs,void 0);l(this,Js,void 0);l(this,ji,void 0);l(this,$s,void 0);l(this,Ks,void 0);l(this,Wi,void 0);l(this,Nt,void 0);l(this,br,void 0);l(this,qt,void 0);l(this,Ht,void 0);l(this,lt,void 0);l(this,Pr,void 0);l(this,ut,void 0);l(this,Xs,void 0);l(this,Zs,void 0);l(this,Ys,void 0);l(this,Qs,void 0);l(this,eo,void 0);l(this,to,void 0);l(this,ro,void 0);l(this,Z,void 0);var n;V(this),f(e.id,"Comment id is null or undefined"),f(e.body,"Comment body is null or undefined"),f(e.createdUtc,"Comment is missing created date"),f(e.author,"Comment author is null or undefined"),f(e.parentId,"Comment parentId is null or undefined"),f(e.linkId,"Comment linkId is null or undefined"),f(e.permalink,"Comment permalink is null or undefined"),f(e.subreddit,"Comment is missing subreddit name"),f(e.subredditId,"Comment is missing subreddit id"),d(this,yr,Lr(`t1_${e.id}`)),d(this,zs,e.authorFullname?ee(e.authorFullname):void 0),d(this,qi,e.author),d(this,Hi,e.body),d(this,$s,xe(e.subredditId)),d(this,Ks,e.subreddit),d(this,Js,Yu(e.parentId)?Lr(e.parentId):pe(e.parentId)),d(this,ji,pe(e.linkId)),d(this,br,e.edited??!1),d(this,qt,e.locked??!1),d(this,Ht,e.removed??!1),d(this,lt,e.stickied??!1),d(this,Nt,e.approved??!1),d(this,Pr,e.spam??!1),d(this,ut,e.distinguished),d(this,Xs,e.numReports??0),d(this,Zs,e.collapsedBecauseCrowdControl??!1),d(this,Ys,e.score??0),d(this,Qs,e.permalink),d(this,ro,new URL(e.permalink??"","https://www.reddit.com/").toString()),d(this,eo,(e.modReports??[]).map(([o])=>o)),d(this,to,(e.userReports??[]).map(([o])=>o));let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,Vs,i),d(this,Wi,b(n=j,Gi,Bd).call(n,{postId:s(this,ji),commentId:s(this,yr)},t)),d(this,Z,t)}get id(){return s(this,yr)}get authorId(){return s(this,zs)}get authorName(){return s(this,qi)}get subredditId(){return s(this,$s)}get subredditName(){return s(this,Ks)}get body(){return s(this,Hi)}get createdAt(){return s(this,Vs)}get parentId(){return s(this,Js)}get postId(){return s(this,ji)}get replies(){return s(this,Wi)}get distinguishedBy(){return s(this,ut)}get locked(){return s(this,qt)}get stickied(){return s(this,lt)}get removed(){return s(this,Ht)}get approved(){return s(this,Nt)}get spam(){return s(this,Pr)}get edited(){return s(this,br)}get numReports(){return s(this,Xs)}get collapsedBecauseCrowdControl(){return s(this,Zs)}get score(){return s(this,Ys)}get permalink(){return s(this,Qs)}get userReportReasons(){return s(this,to)}get modReportReasons(){return s(this,eo)}get url(){return s(this,ro)}toJSON(){return{id:this.id,authorName:this.authorName,subredditId:this.subredditId,subredditName:this.subredditName,body:this.body,createdAt:this.createdAt,parentId:this.parentId,postId:this.postId,replies:this.replies,approved:this.approved,locked:this.locked,removed:this.removed,stickied:this.stickied,spam:this.spam,edited:this.edited,distinguishedBy:this.distinguishedBy,numReports:this.numReports,collapsedBecauseCrowdControl:this.collapsedBecauseCrowdControl,score:this.score,permalink:this.permalink,modReportReasons:this.modReportReasons,userReportReasons:this.userReportReasons,url:this.url}}isLocked(){return s(this,qt)}isApproved(){return s(this,Nt)}isRemoved(){return s(this,Ht)}isSpam(){return s(this,Pr)}isStickied(){return s(this,lt)}isDistinguished(){return!!s(this,ut)}isEdited(){return s(this,br)}async delete(){return j.delete(this.id,s(this,Z))}async edit(e){let t=await j.edit({id:this.id,...e},s(this,Z));return d(this,Hi,t.body),d(this,br,t.edited),this}async approve(){await j.approve(this.id,s(this,Z)),d(this,Nt,!0),d(this,Ht,!1)}async remove(e=!1){await j.remove(this.id,e,s(this,Z)),d(this,Ht,!0),d(this,Pr,e),d(this,Nt,!1)}async lock(){await j.lock(this.id,s(this,Z)),d(this,qt,!0)}async unlock(){await j.unlock(this.id,s(this,Z)),d(this,qt,!1)}async reply(e){return j.submit({id:this.id,...e},s(this,Z))}async getAuthor(){return I.getByUsername(s(this,qi),s(this,Z))}async distinguish(e=!1){let{distinguishedBy:t,stickied:i}=await j.distinguish(this.id,e,!1,s(this,Z));d(this,ut,t),d(this,lt,i)}async distinguishAsAdmin(e=!1){let{distinguishedBy:t,stickied:i}=await j.distinguish(this.id,e,!0,s(this,Z));d(this,ut,t),d(this,lt,i)}async undistinguish(){let{distinguishedBy:e,stickied:t}=await j.undistinguish(this.id,s(this,Z));d(this,ut,e),d(this,lt,t)}addRemovalNote(e){return Ee.addRemovalNote({itemIds:[s(this,yr)],...e},s(this,Z))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,n=ft(e)?e:`t1_${e}`,o=await i.Info({subreddits:[],thingIds:[n]},t);if(!o.data?.children?.[0]?.data)throw new Error("not found");return new j(o.data.children[0].data,t)}static getComments(e,t){var a;let{postId:i,commentId:n,...o}=e;return b(a=j,Gi,Bd).call(a,{postId:pe(i),commentId:n?Lr(n):void 0,...o},t)}static async edit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:n}=e,o;"richtext"in e&&(o=fi(e.richtext));let a=await i.EditUserText({thingId:n,text:"text"in e?e.text:"",richtextJson:o},t);if(a.json?.errors?.length)throw new Error("Failed to edit comment");let c=a.json?.data?.things?.[0]?.data;return f(c),new j(c,t)}static async delete(e,t){await u.redditAPIPlugins.LinksAndComments.Del({id:e},t)}static async approve(e,t){await u.redditAPIPlugins.Moderation.Approve({id:e},t)}static async remove(e,t=!1,i){await u.redditAPIPlugins.Moderation.Remove({id:e,spam:t},i)}static async lock(e,t){await u.redditAPIPlugins.LinksAndComments.Lock({id:e},t)}static async unlock(e,t){await u.redditAPIPlugins.LinksAndComments.Unlock({id:e},t)}static async submit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:n}=e,o;"richtext"in e&&(o=fi(e.richtext));let a=await i.Comment({thingId:n,text:"text"in e?e.text:"",richtextJson:o},t);if(a.json?.errors?.length)throw new Error("failed to reply to comment");let c=a.json?.data?.things?.[0]?.data;return f(c),new j(c,t)}static async distinguish(e,t,i,n){let c=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:i?"admin":"yes",sticky:t},n)).json?.data?.things?.[0]?.data;return f(c),{distinguishedBy:c.distinguished,stickied:!!c.stickied}}static async undistinguish(e,t){let o=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:"no",sticky:!1},t)).json?.data?.things?.[0]?.data;return f(o),{distinguishedBy:o.distinguished,stickied:!!o.stickied}}static getCommentsByUser(e,t){let i=u.redditAPIPlugins.Users;return new H({hasMore:!0,before:e.before,after:e.after,pageSize:e.pageSize,limit:e.limit,async fetch(n){let o=await i.UserWhere({username:e.username,where:"comments",...n},t);return f(o.data,"Failed to get comments for user"),{children:o.data.children?.map(c=>new j(c.data,t))||[],before:o.data.before,after:o.data.after}}})}};yr=new WeakMap,zs=new WeakMap,qi=new WeakMap,Hi=new WeakMap,Vs=new WeakMap,Js=new WeakMap,ji=new WeakMap,$s=new WeakMap,Ks=new WeakMap,Wi=new WeakMap,Nt=new WeakMap,br=new WeakMap,qt=new WeakMap,Ht=new WeakMap,lt=new WeakMap,Pr=new WeakMap,ut=new WeakMap,Xs=new WeakMap,Zs=new WeakMap,Ys=new WeakMap,Qs=new WeakMap,eo=new WeakMap,to=new WeakMap,ro=new WeakMap,Z=new WeakMap,Gi=new WeakSet,Bd=function(e,t,i=0){return new H({limit:e.limit,pageSize:e.pageSize,fetch:async n=>{var y,P;let o=n.limit,a=u.redditAPIPlugins.Listings,c=u.redditAPIPlugins.LinksAndComments,p=e.commentId;if(n.more)if(n.more.children.length){let C=n.more;(!o||o>100)&&(o=100);let w=C.children.splice(0,o),x=await c.MoreChildren({linkId:e.postId,children:w,sort:e.sort},t);if(!x.json?.data?.things?.length)return{children:[]};let{children:B}=b(y=j,zi,Ld).call(y,x.json.data.things,e.postId,e,t);return{children:B,more:C.children.length?C:void 0}}else p=n.more.parentId,i=i+n.more.depth;let v=(await a.Comments({article:e.postId.substring(3),comment:p?.substring(3),limit:o,depth:e.depth,sort:e.sort},t)).listings?.[1]?.data?.children??[],m=v[0];return p&&m?.data?.replyList?.data&&(v=m.data.replyList.data.children),b(P=j,zi,Ld).call(P,v,p??e.postId,e,t,i)}})},zi=new WeakSet,Ld=function(e,t,i,n,o=0){var g,v;let a=[],c,p={};for(let m of e){if(!m.data||(m.data.depth!=null&&(m.data.depth=m.data.depth+o),m.data.depth!=null&&i.depth!=null&&m.data.depth>=i.depth))continue;let y=m.data.parentId?p[m.data.parentId]:void 0;if(m.kind==="t1"){if(m.data.name===t)continue;let P=new j(m.data,n);if(p[P.id]=P,d(P,Wi,b(g=j,Gi,Bd).call(g,{...i,postId:P.postId,commentId:P.id},n,o)),"replyList"in m.data&&m.data.replyList?.data){let{children:C,more:w}=b(v=j,zi,Ld).call(v,m.data.replyList.data.children,P.id,i,n,o);C.length&&P.replies.children.push(...C),w&&P.replies.setMore(w)}P.replies.preventInitialFetch(),y?y.replies.children.push(P):a.push(P)}else if(m.kind==="more"&&m.data.parentId&&m.data.depth!=null){let P={parentId:Yu(m.data.parentId)?Lr(m.data.parentId):pe(m.data.parentId),children:m.data.children??[],depth:m.data.depth};y?y.replies.setMore(P):P.parentId===t&&(c=P)}}return{children:a,more:c}},l(j,Gi),l(j,zi);var K=j;function Ga(r,e){let t=u.redditAPIPlugins.Moderation;return new H({hasMore:!0,after:r.after,before:r.before,limit:r.limit,pageSize:r.pageSize,fetch:async i=>{let n=await t.AboutLog({subreddit:r.subredditName,mod:r.moderatorUsernames?r.moderatorUsernames.join(","):void 0,type:r.type,...i},e);return LR(n)}})}function LR(r){if(!r.data?.children)throw new Error("AboutLogResponse is missing children");return{children:r.data.children.map(t=>{if(!t.data)throw new Error("ModAction from AboutLogResponse is missing or invalid");let{id:i,mod:n,modId36:o,createdUtc:a,subreddit:c,subredditNamePrefixed:p,action:g,srId36:v,description:m,details:y,targetAuthor:P,targetBody:C,targetFullname:w,targetPermalink:x,targetTitle:B}=t.data;f(i,"ModAction from AboutLogResponse is missing id"),f(n,"ModAction from AboutLogResponse is missing mod"),f(o,"ModAction from AboutLogResponse is missing modId36"),f(a,"ModAction from AboutLogResponse is missing createdUtc"),f(c,"ModAction from AboutLogResponse is missing subreddit"),f(p,"ModAction from AboutLogResponse is missing subredditNamePrefixed"),f(g,"ModAction from AboutLogResponse is missing action"),f(v,"ModAction from AboutLogResponse is missing srId36");let ze=new Date(0);return ze.setUTCSeconds(a),{id:i,type:g,moderatorName:n,moderatorId:`t2_${o}`,createdAt:ze,subredditName:c,subredditId:`t5_${v}`,description:m,details:y,target:w?{id:w,author:P,body:C,permalink:x,title:B}:void 0}}),after:r.data.after,before:r.data.before}}var UR=(a=>(a.New="New",a.InProgress="InProgress",a.Archived="Archived",a.Appeals="Appeals",a.JoinRequests="JoinRequests",a.Filtered="Filtered",a))(UR||{}),DR={0:"New",1:"InProgress",2:"Archived",3:"Appeals",4:"JoinRequests",5:"Filtered"},_R=(P=>(P.Highlighted="Highlighted",P.Unhighlighted="Unhighlighted",P.Archived="Archived",P.Unarchived="Unarchived",P.ReportedToAdmins="ReportedToAdmins",P.Muted="Muted",P.Unmuted="Unmuted",P.Banned="Banned",P.Unbanned="Unbanned",P.Approved="Approved",P.Disapproved="Disapproved",P.Filtered="Filtered",P.Unfiltered="Unfiltered",P))(_R||{}),NR={0:"Highlighted",1:"Unhighlighted",2:"Archived",3:"Unarchived",4:"ReportedToAdmins",5:"Muted",6:"Unmuted",7:"Banned",8:"Unbanned",9:"Approved",10:"Disapproved",11:"Filtered",12:"Unfiltered"},G,X,ie,Ud,SP,Dd,CP,za=class{constructor(e){l(this,X);l(this,Ud);l(this,Dd);l(this,G,void 0);d(this,G,e)}async bulkReadConversations(e,t){let i=u.redditAPIPlugins.NewModmail,{conversationIds:n}=await i.BulkReadConversations({entity:e.join(","),state:t},s(this,G));return n}async getConversations(e){let i=await u.redditAPIPlugins.NewModmail.GetConversations({after:e.after,entity:e.subreddits?e.subreddits.join(","):void 0,limit:e.limit,sort:e.sort,state:e.state},s(this,G)),n={};for(let o in i.conversations)n[o]=b(this,X,ie).call(this,{protoConversation:i.conversations[o],protoMessages:i.messages,protoModActions:{}});return{conversations:n,viewerId:i.viewerId}}async getConversation(e){let i=await u.redditAPIPlugins.NewModmail.GetConversation({...e,markRead:!!e.markRead},s(this,G));return{participantSubreddit:i.participantSubreddit,conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async getSubreddits(){let e=u.redditAPIPlugins.NewModmail,{subreddits:t}=await e.Subreddits({},s(this,G));return t}async createConversation(e){let i=await u.redditAPIPlugins.NewModmail.CreateConversation({body:e.body,isAuthorHidden:e.isAuthorHidden??!1,srName:e.subredditName,subject:e.subject,to:e.to?e.to:void 0},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async reply(e){let i=await u.redditAPIPlugins.NewModmail.CreateConversationMessage({body:e.body,conversationId:e.conversationId,isAuthorHidden:e.isAuthorHidden??!1,isInternal:e.isInternal??!1},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:{}}),user:i.user}}async highlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.HighlightConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unhighlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnhighlightConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async archiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ArchiveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unarchiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnarchiveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async muteConversation(e){let i=await u.redditAPIPlugins.NewModmail.MuteConversation({conversationId:e.conversationId,numHours:e.numHours},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async unmuteConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnmuteConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async readConversations(e){await u.redditAPIPlugins.NewModmail.Read({conversationIds:e.join(",")},s(this,G))}async unreadConversations(e){await u.redditAPIPlugins.NewModmail.Unread({conversationIds:e.join(",")},s(this,G))}async approveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ApproveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async disapproveConversation(e){let i=await u.redditAPIPlugins.NewModmail.DisapproveConversation({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async tempBanConversation(e){let i=await u.redditAPIPlugins.NewModmail.TempBan({...e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async unbanConversation(e){let i=await u.redditAPIPlugins.NewModmail.Unban({conversationId:e},s(this,G));return{conversation:b(this,X,ie).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async getUnreadCount(){return await u.redditAPIPlugins.NewModmail.UnreadCount({},s(this,G))}async getUserConversations(e){return await u.redditAPIPlugins.NewModmail.UserConversations({conversationId:e},s(this,G))}};G=new WeakMap,X=new WeakSet,ie=function({protoConversation:e,protoMessages:t,protoModActions:i}){return{...e,state:DR[e.state],messages:b(this,Ud,SP).call(this,e,t),modActions:b(this,Dd,CP).call(this,e,i)}},Ud=new WeakSet,SP=function(e,t){let i={},n=e.objIds.filter(o=>o.key==="messages").map(({id:o})=>o);for(let o of n){let a=t[o];a&&(i[o]=a)}return i},Dd=new WeakSet,CP=function(e,t){let i={},n=e.objIds.filter(o=>o.key==="modActions").map(({id:o})=>o);for(let o of n){let a=t[o];a&&(i[o]={...a,actionType:NR[a.actionTypeId]})}return i};var Vi,Ji,_d,io,no,so,oo,em=class em{constructor(e,t){l(this,Vi,void 0);l(this,Ji,void 0);l(this,_d,void 0);l(this,io,void 0);l(this,no,void 0);l(this,so,void 0);l(this,oo,void 0);if(V(this),f(e.id,"PrivateMessage: Invalid data, no id"),f(e.name,"PrivateMessage: Invalid data, no name"),f(e.created,"PrivateMessage: Invalid data, no created date"),d(this,Vi,ge(e.name)),e.author!=null)d(this,Ji,{type:"user",username:e.author,id:e.authorFullname?ee(e.authorFullname):void 0});else if(e.subreddit!=null)d(this,Ji,{type:"subreddit",name:e.subreddit,id:e.subredditId?xe(e.subredditId):void 0});else throw new Error("PrivateMessage: Invalid data, no author or subreddit");d(this,io,e.body??""),d(this,no,e.bodyHtml??"");let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,so,i),d(this,_d,e.parentId?ge(e.parentId):void 0),d(this,oo,t)}static async getMessages(e,t){let i=u.redditAPIPlugins.PrivateMessages;return new H({...e,fetch:async n=>{let o=await i.MessageWhere({...n,where:e.type??"inbox"},t);return{after:o.data?.after,before:o.data?.before,children:o.data?.children?.map(a=>new em(a.data,t)).filter(Boolean)||[]}}})}static async send({to:e,subject:t,text:i},n){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,subject:t,text:i,fromSr:""},n)}static async sendAsSubreddit({to:e,fromSubredditName:t,subject:i,text:n},o){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,fromSr:t,subject:i,text:n},o)}static async markAllAsRead(e){await u.redditAPIPlugins.PrivateMessages.ReadAllMessages({filterTypes:""},e)}get id(){return s(this,Vi)}get from(){return s(this,Ji)}get body(){return s(this,io)}get bodyHtml(){return s(this,no)}get created(){return s(this,so)}async markAsRead(){await u.redditAPIPlugins.PrivateMessages.ReadMessage({id:s(this,Vi)},s(this,oo))}};Vi=new WeakMap,Ji=new WeakMap,_d=new WeakMap,io=new WeakMap,no=new WeakMap,so=new WeakMap,oo=new WeakMap;var Yt=em;var mv=(o=>(o.Reports="reports",o.Spam="spam",o.Modqueue="modqueue",o.Unmoderated="unmoderated",o.Edited="edited",o))(mv||{}),$i,A,ao,lo,uo,co,mo,po,go,fo,ho,Ki,T,Ye=class Ye{constructor(e,t){l(this,$i,void 0);l(this,A,void 0);l(this,ao,void 0);l(this,lo,void 0);l(this,uo,void 0);l(this,co,void 0);l(this,mo,void 0);l(this,po,void 0);l(this,go,void 0);l(this,fo,void 0);l(this,ho,void 0);l(this,Ki,void 0);l(this,T,void 0);V(this),f(e.id,"Subreddit id is missing or undefined"),f(e.displayName,"Subreddit name is missing or undefined"),d(this,$i,xe(`t5_${e.id}`)),d(this,A,e.displayName),f(e.createdUtc,"Subreddit is missing created date");let i=new Date(0);i.setUTCSeconds(e.createdUtc),d(this,ao,i),d(this,lo,qR(e.subredditType)),d(this,uo,e.title),d(this,co,e.description),f(e.lang,"Subreddit is missing language"),d(this,mo,e.lang),d(this,po,e.subscribers??0),d(this,go,e.activeUserCount??0),d(this,fo,e.over18??!1),d(this,Ki,e.url??""),d(this,ho,{acceptFollowers:e.acceptFollowers??!1,allOriginalContent:e.allOriginalContent??!1,allowChatPostCreation:e.allowChatPostCreation??!1,allowDiscovery:e.allowDiscovery??!1,allowGalleries:e.allowGalleries??!1,allowImages:e.allowImages??!1,allowPolls:e.allowPolls??!1,allowPredictionContributors:e.allowPredictionContributors??!1,allowPredictions:e.allowPredictions??!1,allowPredictionsTournament:e.allowPredictionsTournament??!1,allowTalks:e.allowTalks??!1,allowVideoGifs:e.allowVideogifs??!1,allowVideos:e.allowVideos??!1,chatPostEnabled:e.isChatPostFeatureEnabled??!1,collectionsEnabled:e.collectionsEnabled??!1,crosspostable:e.isCrosspostableSubreddit??!1,emojisEnabled:e.emojisEnabled??!1,eventPostsEnabled:e.eventPostsEnabled??!1,linkFlairEnabled:e.linkFlairEnabled??!1,originalContentTagEnabled:e.originalContentTagEnabled??!1,restrictCommenting:e.restrictCommenting??!1,restrictPosting:e.restrictPosting??!1,shouldArchivePosts:e.shouldArchivePosts??!1,spoilersEnabled:e.spoilersEnabled??!1,wikiEnabled:e.wikiEnabled??!1,allowedPostType:HR(e.submissionType),allowedMediaInComments:e.allowedMediaInComments.map(jR),bannerBackgroundColor:e.bannerBackgroundColor,bannerBackgroundImage:e.bannerBackgroundImage,bannerImage:e.bannerImg,communityIcon:e.communityIcon,headerTitle:e.headerTitle,mobileBannerImage:e.mobileBannerImage,userFlairs:{enabled:e.userFlairEnabledInSr??!1,usersCanAssign:e.canAssignUserFlair??!1},postFlairs:{enabled:e.linkFlairEnabled??!1,usersCanAssign:e.canAssignLinkFlair??!1},url:new URL(s(this,Ki),"https://www.reddit.com").toString()}),d(this,T,t)}get id(){return s(this,$i)}get name(){return s(this,A)}get createdAt(){return s(this,ao)}get type(){return s(this,lo)}get title(){return s(this,uo)}get description(){return s(this,co)}get language(){return s(this,mo)}get numberOfSubscribers(){return s(this,po)}get numberOfActiveUsers(){return s(this,go)}get nsfw(){return s(this,fo)}get settings(){return s(this,ho)}get userFlairsEnabled(){return this.settings.userFlairs.enabled}get postFlairsEnabled(){return this.settings.postFlairs.enabled}get usersCanAssignUserFlairs(){return this.settings.userFlairs.usersCanAssign}get usersCanAssignPostFlairs(){return this.settings.postFlairs.usersCanAssign}get url(){return this.settings.url}get permalink(){return s(this,Ki)}toJSON(){return{id:this.id,name:this.name,createdAt:this.createdAt,type:this.type,title:this.title,description:this.description,language:this.language,nsfw:this.nsfw,numberOfSubscribers:this.numberOfSubscribers,numberOfActiveUsers:this.numberOfActiveUsers,settings:this.settings}}async submitPost(e){let t={...e,subredditName:s(this,A)};return z.submit(t,s(this,T))}getControversialPosts(e={}){if(!s(this,A))throw new Error("subreddit missing displayName - it might not have been fetched");return z.getControversialPosts({...e,subredditName:s(this,A)},s(this,T))}getTopPosts(e={}){if(!s(this,A))throw new Error("subreddit missing displayName - it might not have been fetched");return z.getTopPosts({...e,subredditName:s(this,A)},s(this,T))}getApprovedUsers(e={}){return I.getSubredditUsersByType({type:"contributors",subredditName:s(this,A),...e},s(this,T))}approveUser(e){return I.createRelationship({username:e,subredditName:s(this,A),type:"contributor"},s(this,T))}removeUser(e){return I.removeRelationship({username:e,subredditName:s(this,A),type:"contributor"},s(this,T))}getWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikicontributors",subredditName:s(this,A),...e},s(this,T))}addWikiContributor(e){return I.createRelationship({username:e,subredditName:s(this,A),type:"wikicontributor"},s(this,T))}removeWikiContributor(e){return I.removeRelationship({username:e,subredditName:s(this,A),type:"wikicontributor"},s(this,T))}getBannedUsers(e={}){return I.getSubredditUsersByType({type:"banned",subredditName:s(this,A),...e},s(this,T))}banUser(e){return I.createRelationship({username:e.username,subredditName:s(this,A),type:"banned",banReason:e.reason,banMessage:e.message,note:e.note,duration:e.duration},s(this,T))}unbanUser(e){return I.removeRelationship({username:e,subredditName:s(this,A),type:"banned"},s(this,T))}getBannedWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikibanned",subredditName:s(this,A),...e},s(this,T))}banWikiContributor(e){return I.createRelationship({username:e.username,subredditName:s(this,A),type:"wikibanned",banReason:e.reason,note:e.note,duration:e.duration},s(this,T))}unbanWikiContributor(e){return I.removeRelationship({username:e,subredditName:s(this,A),type:"wikibanned"},s(this,T))}getModerators(e={}){return I.getSubredditUsersByType({type:"moderators",subredditName:s(this,A),...e},s(this,T))}inviteModerator(e,t){return I.createRelationship({type:"moderator_invite",subredditName:s(this,A),username:e,permissions:t??[]},s(this,T))}revokeModeratorInvite(e){return I.removeRelationship({username:e,subredditName:s(this,A),type:"moderator_invite"},s(this,T))}removeModerator(e){return I.removeRelationship({type:"moderator",subredditName:s(this,A),username:e},s(this,T))}setModeratorPermissions(e,t){return I.setModeratorPermissions(e,s(this,A),t,s(this,T))}getMutedUsers(e={}){return I.getSubredditUsersByType({type:"muted",subredditName:s(this,A),...e},s(this,T))}muteUser(e,t){return I.createRelationship({username:e,subredditName:s(this,A),type:"muted",note:t},s(this,T))}unmuteUser(e){return I.removeRelationship({username:e,subredditName:s(this,A),type:"muted"},s(this,T))}getModerationLog(e){return Ga({subredditName:s(this,A),...e},s(this,T))}getUserFlairTemplates(){return oe.getUserFlairTemplates(s(this,A),s(this,T))}getPostFlairTemplates(){return oe.getPostFlairTemplates(s(this,A),s(this,T))}createPostFlairTemplate(e){return oe.createPostFlairTemplate({subredditName:s(this,A),...e},s(this,T))}createUserFlairTemplate(e){return oe.createUserFlairTemplate({subredditName:s(this,A),...e},s(this,T))}async getUserFlair(e){if(e?.usernames!==void 0)return{users:await Promise.all(e.usernames.map(async i=>{let n=await Re.getUserFlairBySubreddit({subreddit:s(this,A),name:i},s(this,T));return ks(n.users[0])}))};{let t=await Re.getUserFlairBySubreddit({...e,subreddit:s(this,A)},s(this,T));return{next:t.next,prev:t.prev,users:t.users.map(i=>ks(i))}}}getModQueue(e={type:"all"}){return Ye.aboutLocation({...e,location:"modqueue",subreddit:s(this,A)},s(this,T))}getReports(e={type:"all"}){return Ye.aboutLocation({...e,location:"reports",subreddit:s(this,A)},s(this,T))}getSpam(e={type:"all"}){return Ye.aboutLocation({...e,location:"spam",subreddit:s(this,A)},s(this,T))}getUnmoderated(e={type:"all"}){return Ye.aboutLocation({...e,location:"unmoderated",subreddit:s(this,A)},s(this,T))}getEdited(e={type:"all"}){return Ye.aboutLocation({...e,location:"edited",subreddit:s(this,A)},s(this,T))}static aboutLocation(e,t){let i=u.redditAPIPlugins.Moderation,n;switch(e.type){case"post":n="links";break;case"comment":n="comments";break;default:n=void 0}return new H({...e,fetch:async o=>{let a=await i.AboutLocation({...o,...e,only:n},t);return IP(a,t)}})}getCommentsAndPostsByIds(e){let t=u.redditAPIPlugins.LinksAndComments;return new H({fetch:async()=>{let i=await t.Info({thingIds:e,subreddits:[s(this,$i)]},s(this,T));return IP(i,s(this,T))}})}static async addRemovalReason(e,t,i,n){return(await u.redditAPIPlugins.Subreddits.SubredditAddRemovalReason({title:t,message:i,subreddit:e},n)).id}static async getRemovalReasons(e,t){let n=await u.redditAPIPlugins.Subreddits.SubredditGetRemovalReasons({subreddit:e},t);return n.order.map(o=>({...n.data[o]}))}static async getFromMetadata(e){f(e);let t=e?.[se.Subreddit]?.values[0];return f(t),Ye.getById(xe(t),e)}static async getById(e,t){let o=(await u.redditAPIPlugins.LinksAndComments.Info({thingIds:[e],subreddits:[]},t)).data?.children[0]?.data?.displayName;return f(o),Ye.getByName(o,t)}static async getByName(e,t){let n=await u.redditAPIPlugins.Subreddits.SubredditAbout({subreddit:e},t);if(!n?.data)throw new Error("not found");return new Ye(n.data,t)}};$i=new WeakMap,A=new WeakMap,ao=new WeakMap,lo=new WeakMap,uo=new WeakMap,co=new WeakMap,mo=new WeakMap,po=new WeakMap,go=new WeakMap,fo=new WeakMap,ho=new WeakMap,Ki=new WeakMap,T=new WeakMap;var fe=Ye;function qR(r){if(r==="public"||r==="private"||r==="restricted"||r==="employees_only"||r==="gold_restricted"||r==="archived")return r;throw new Error(`invalid subreddit type: ${r}`)}function HR(r){if(r==="any"||r==="link"||r==="self")return r;throw new Error(`invalid allowed post type: ${r}`)}function jR(r){if(r==="animated"||r==="giphy"||r==="static"||r==="expression")return r;throw new Error(`invalid comment media type: ${r}`)}function IP(r,e){let i=(r.data?.children??[]).map(a=>{let c=n(a);if(c!=null)return c;let p=o(a);return p??null}).filter(Boolean);return{after:r.data?.after,before:r.data?.before,children:i};function n(a){try{return new z(a.data,e)}catch{return null}}function o(a){try{return new K(a.data,e)}catch{return null}}}async function pv(r,e){return wP("GetVaultContactByAddress","3e2f7966a5c120e64fd2795d06a46595c52d988185be98d3ed71c3f81ae80d2e",{provider:"ethereum",address:r},e)}async function gv(r,e){return wP("GetVaultContactByUserId","a854ddc19d0e22c4f36ed917fdbd568f299f3571427e393aee5e2972080fffe9",{provider:"ethereum",userId:r},e)}async function wP(r,e,t,i){let o=(await yi.query(r,e,t,i))?.data?.vault?.contact;return{provider:o?.provider,userId:ee(o?.userId),address:o?.address,createdAt:o?.createdAt,isActive:o?.isActive}}import{CommunityListWidget_CommunityData as WR,GetWidgetsResponse_WidgetItem as le}from"@devvit/protos";var vo,yo,bo,Po,rm=class rm{constructor(e,t,i){l(this,vo,void 0);l(this,yo,void 0);l(this,bo,void 0);l(this,Po,void 0);V(this),d(this,vo,e.id),d(this,yo,e.shortName),d(this,bo,t),d(this,Po,i)}get id(){return s(this,vo)}get name(){return s(this,yo)}get subredditName(){return s(this,bo)}toJSON(){return{id:this.id,name:this.name,subredditName:this.subredditName}}delete(){return rm.delete(this.subredditName,this.id,s(this,Po))}static async getWidgets(e,t){let n=await u.redditAPIPlugins.Widgets.GetWidgets({subreddit:e},t);f(n.layout,"Failed to load widgets for subreddit");let o=n.items,a=[];for(let c of n.layout.sidebar?.order??[]){let p=o[c];switch(p?.kind){case"image":a.push(new Nd(p,e,t));break;case"calendar":a.push(new qd(p,e,t));break;case"textarea":a.push(new Hd(p,e,t));break;case"button":a.push(new jd(p,e,t));break;case"community-list":a.push(new Wd(p,e,t));break;case"post-flair":a.push(new Gd(p,e,t));break;case"custom":a.push(new zd(p,e,t));break;case"subreddit-rules":{let g=await u.redditAPIPlugins.Subreddits.SubredditAboutRules({subreddit:e},t);a.push(new tm(g,p,e,t));break}default:throw new Error(`Unknown widget type: ${p.kind}`)}}return a}static async delete(e,t,i){await u.redditAPIPlugins.Widgets.DeleteWidget({subreddit:e,id:t},i)}static async reorder(e,t,i){await u.redditAPIPlugins.Widgets.OrderWidgets({subreddit:e,order:t},i)}static async add(e,t){switch(e?.type){case"image":return Nd.create(e,t);case"calendar":return qd.create(e,t);case"textarea":return Hd.create(e,t);case"button":return jd.create(e,t);case"community-list":return Wd.create(e,t);case"post-flair":return Gd.create(e,t);case"custom":return zd.create(e,t);default:throw new Error("Unknown widget type")}}};vo=new WeakMap,yo=new WeakMap,bo=new WeakMap,Po=new WeakMap;var te=rm,ko,Vd=class Vd extends te{constructor(t,i,n){super(t,i,n);l(this,ko,void 0);d(this,ko,t.data.map(o=>(f(o.url,"Image widget data is missing url"),f(o.height,"Image widget data is missing height"),f(o.width,"Image widget data is missing width"),f(o.linkUrl,"Image widget data is missing linkUrl"),{url:o.url,height:o.height,width:o.width,linkUrl:o.linkUrl})))}get images(){return s(this,ko)}toJSON(){return{...super.toJSON(),images:this.images}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddImageWidget(t,i);return new Vd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateImageWidget(t,i);return new Vd(le.fromJSON(o),t.subreddit,i)}};ko=new WeakMap;var Nd=Vd,So,Co,Io,Jd=class Jd extends te{constructor(t,i,n){super(t,i,n);l(this,So,void 0);l(this,Co,void 0);l(this,Io,void 0);f(t.googleCalendarId,"Calendar widget data is missing googleCalendarId"),f(t.configuration,"Calendar widget data is missing configuration"),f(t.styles,"Calendar widget data is missing styles"),d(this,So,t.googleCalendarId),d(this,Co,t.configuration),d(this,Io,t.styles)}get googleCalendarId(){return s(this,So)}get configuration(){return s(this,Co)}get styles(){return s(this,Io)}toJSON(){return{...super.toJSON(),googleCalendarId:this.googleCalendarId,configuration:this.configuration,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddCalendarWidget(t,i);return new Jd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCalendarWidget(t,i);return new Jd(le.fromJSON(o),t.subreddit,i)}};So=new WeakMap,Co=new WeakMap,Io=new WeakMap;var qd=Jd,wo,Ao,$d=class $d extends te{constructor(t,i,n){super(t,i,n);l(this,wo,void 0);l(this,Ao,void 0);f(t.text,"Textarea widget data is missing text"),f(t.styles,"Textarea widget data is missing styles"),d(this,wo,t.text),d(this,Ao,t.styles)}get text(){return s(this,wo)}get styles(){return s(this,Ao)}toJSON(){return{...super.toJSON(),text:this.text,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddTextAreaWidget(t,i);return new $d(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateTextAreaWidget(t,i);return new $d(le.fromJSON(o),t.subreddit,i)}};wo=new WeakMap,Ao=new WeakMap;var Hd=$d,xo,To,Eo,Kd=class Kd extends te{constructor(t,i,n){super(t,i,n);l(this,xo,void 0);l(this,To,void 0);l(this,Eo,void 0);f(t.styles,"Button widget data is missing styles"),d(this,xo,t.buttons),d(this,To,t.description??""),d(this,Eo,t.styles)}get buttons(){return s(this,xo)}get description(){return s(this,To)}get styles(){return s(this,Eo)}toJSON(){return{...super.toJSON(),buttons:this.buttons,description:this.description,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddButtonWidget(t,i);return new Kd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateButtonWidget(t,i);return new Kd(le.fromJSON(o),t.subreddit,i)}};xo=new WeakMap,To=new WeakMap,Eo=new WeakMap;var jd=Kd,Ro,Fo,Xd=class Xd extends te{constructor(t,i,n){super(t,i,n);l(this,Ro,void 0);l(this,Fo,void 0);d(this,Ro,t.data.map(o=>WR.fromJSON(o))),f(t.styles,"Community list widget data is missing styles"),d(this,Fo,t.styles)}get communities(){return s(this,Ro)}get styles(){return s(this,Fo)}toJSON(){return{...super.toJSON(),communities:this.communities,styles:this.styles}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddCommunityListWidget(t,i);return new Xd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCommunityListWidget(t,i);return new Xd(le.fromJSON(o),t.subreddit,i)}};Ro=new WeakMap,Fo=new WeakMap;var Wd=Xd,Oo,Mo,Bo,Zd=class Zd extends te{constructor(t,i,n){super(t,i,n);l(this,Oo,void 0);l(this,Mo,void 0);l(this,Bo,void 0);if(f(t.styles,"Post flair widget data is missing styles"),d(this,Oo,t.styles),d(this,Mo,t.order.map(o=>t.templates[o])),!(t.display&&t.display==="list"||t.display==="cloud"))throw new Error("Post flair widget data is missing display type");d(this,Bo,t.display)}get styles(){return s(this,Oo)}get templates(){return s(this,Mo)}get display(){return s(this,Bo)}toJSON(){return{...super.toJSON(),styles:this.styles,templates:this.templates,display:this.display}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddPostFlairWidget(t,i);return new Zd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdatePostFlairWidget(t,i);return new Zd(le.fromJSON(o),t.subreddit,i)}};Oo=new WeakMap,Mo=new WeakMap,Bo=new WeakMap;var Gd=Zd,Lo,Uo,Do,_o,No,Yd=class Yd extends te{constructor(t,i,n){super(t,i,n);l(this,Lo,void 0);l(this,Uo,void 0);l(this,Do,void 0);l(this,_o,void 0);l(this,No,void 0);f(t.stylesheetUrl,"Custom widget data is missing stylesheetUrl"),f(t.height,"Custom widget data is missing height"),f(t.css,"Custom widget data is missing css"),d(this,Lo,t.imageData??[]),d(this,Uo,t.text??""),d(this,Do,t.stylesheetUrl),d(this,_o,t.height),d(this,No,t.css)}get images(){return s(this,Lo)}get text(){return s(this,Uo)}get stylesheetUrl(){return s(this,Do)}get height(){return s(this,_o)}get css(){return s(this,No)}toJSON(){return{...super.toJSON(),images:this.images,text:this.text,stylesheetUrl:this.stylesheetUrl,height:this.height,css:this.css}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddCustomWidget(t,i);return new Yd(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCustomWidget(t,i);return new Yd(le.fromJSON(o),t.subreddit,i)}};Lo=new WeakMap,Uo=new WeakMap,Do=new WeakMap,_o=new WeakMap,No=new WeakMap;var zd=Yd,qo,tm=class extends te{constructor(t,i,n,o){super(i,n,o);l(this,qo,void 0);let a=t.rules.map(({description:c,priority:p,shortName:g,violationReason:v})=>(f(c,"Subreddit rule is missing description"),f(p,"Subreddit rule is missing priority"),f(g,"Subreddit rule is missing shortName"),f(v,"Subreddit rule is missing violationReason"),{description:c,priority:p,shortName:g,violationReason:v}));d(this,qo,a)}get rules(){return s(this,qo)}toJSON(){return{...super.toJSON(),rules:this.rules}}};qo=new WeakMap;var GR=(i=>(i[i.SUBREDDIT_PERMISSIONS=0]="SUBREDDIT_PERMISSIONS",i[i.APPROVED_CONTRIBUTORS_ONLY=1]="APPROVED_CONTRIBUTORS_ONLY",i[i.MODS_ONLY=2]="MODS_ONLY",i))(GR||{}),ve,ye,Xi,Zi,Yi,Qi,en,Ge,Le=class Le{constructor(e,t,i,n){l(this,ve,void 0);l(this,ye,void 0);l(this,Xi,void 0);l(this,Zi,void 0);l(this,Yi,void 0);l(this,Qi,void 0);l(this,en,void 0);l(this,Ge,void 0);V(this),d(this,ve,e),d(this,ye,t),d(this,Xi,i.contentMd),d(this,Zi,i.revisionId),d(this,Yi,new Date(i.revisionDate)),d(this,Qi,i.reason??""),f(i.revisionBy?.data,"Wiki page author details are missing"),d(this,en,new I(i.revisionBy.data,n)),d(this,Ge,n)}get name(){return s(this,ve)}get subredditName(){return s(this,ye)}get content(){return s(this,Xi)}get revisionId(){return s(this,Zi)}get revisionDate(){return s(this,Yi)}get revisionReason(){return s(this,Qi)}get revisionAuthor(){return s(this,en)}toJSON(){return{name:s(this,ve),subredditName:s(this,ye),content:s(this,Xi),revisionId:s(this,Zi),revisionDate:s(this,Yi),revisionReason:s(this,Qi),revisionAuthor:s(this,en).toJSON()}}async update(e,t){return Le.updatePage({subredditName:s(this,ye),page:s(this,ve),content:e,reason:t},s(this,Ge))}async getRevisions(e){return Le.getPageRevisions({subredditName:s(this,ye),page:s(this,ve),...e},s(this,Ge))}async revertTo(e){return Le.revertPage(s(this,ye),s(this,ve),e,s(this,Ge))}async getSettings(){return Le.getPageSettings(s(this,ye),s(this,ve),s(this,Ge))}async updateSettings(e){return Le.updatePageSettings({subredditName:s(this,ye),page:s(this,ve),listed:e.listed,permLevel:e.permLevel},s(this,Ge))}async addEditor(e){return Le.addEditor(s(this,ye),s(this,ve),e,s(this,Ge))}async removeEditor(e){return Le.removeEditor(s(this,ye),s(this,ve),e,s(this,Ge))}static async getPage(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPage({subreddit:e,page:t},i);return f(o.data,"Failed to get wiki page"),new Le(t,e,o.data,i)}static async getPages(e,t){return(await u.redditAPIPlugins.Wiki.GetWikiPages({subreddit:e},t)).data||[]}static async createPage(e,t){return Le.updatePage(e,t)}static async updatePage(e,t){return await u.redditAPIPlugins.Wiki.EditWikiPage({subreddit:e.subredditName,page:e.page,content:e.content,reason:e.reason??""},t),Le.getPage(e.subredditName,e.page,t)}static getPageRevisions(e,t){let i=u.redditAPIPlugins.Wiki;return new H({hasMore:!0,after:e.after,limit:e.limit,pageSize:e.pageSize,async fetch(n){let o=await i.GetWikiPageRevisions({subreddit:e.subredditName,page:e.page,limit:n.limit,after:n.after,before:n.before},t);return zR(o,t)}})}static async revertPage(e,t,i,n){await u.redditAPIPlugins.Wiki.RevertWikiPage({subreddit:e,page:t,revision:i},n)}static async getPageSettings(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPageSettings({subreddit:e,page:t},i);return f(o.data,"Failed to get wiki page settings"),new Qd(o.data,i)}static async updatePageSettings(e,t){let n=await u.redditAPIPlugins.Wiki.UpdateWikiPageSettings({subreddit:e.subredditName,page:e.page,listed:e.listed?"on":"",permlevel:e.permLevel},t);return f(n.data,"Failed to update wiki page settings"),new Qd(n.data,t)}static async addEditor(e,t,i,n){await u.redditAPIPlugins.Wiki.AllowEditor({act:"add",subreddit:e,page:t,username:i},n)}static async removeEditor(e,t,i,n){await u.redditAPIPlugins.Wiki.AllowEditor({act:"del",subreddit:e,page:t,username:i},n)}};ve=new WeakMap,ye=new WeakMap,Xi=new WeakMap,Zi=new WeakMap,Yi=new WeakMap,Qi=new WeakMap,en=new WeakMap,Ge=new WeakMap;var he=Le,tn,rn,nn,sn,on,an,im=class{constructor(e,t){l(this,tn,void 0);l(this,rn,void 0);l(this,nn,void 0);l(this,sn,void 0);l(this,on,void 0);l(this,an,void 0);d(this,tn,e.id),d(this,rn,e.page),d(this,nn,new Date(e.timestamp)),f(e.author?.data,"Wiki page revision author details are missing"),d(this,sn,new I(e.author.data,t)),d(this,on,e.reason??""),d(this,an,e.revisionHidden??!1)}get id(){return s(this,tn)}get page(){return s(this,rn)}get date(){return s(this,nn)}get author(){return s(this,sn)}get reason(){return s(this,on)}get hidden(){return s(this,an)}toJSON(){return{id:s(this,tn),page:s(this,rn),date:s(this,nn),author:s(this,sn).toJSON(),reason:s(this,on),hidden:s(this,an)}}};tn=new WeakMap,rn=new WeakMap,nn=new WeakMap,sn=new WeakMap,on=new WeakMap,an=new WeakMap;var dn,ln,un,Qd=class{constructor(e,t){l(this,dn,void 0);l(this,ln,void 0);l(this,un,void 0);d(this,dn,e.listed),d(this,ln,e.permLevel),d(this,un,e.editors.map(i=>(f(i.data,"Wiki page editor details are missing"),new I(i.data,t))))}get listed(){return s(this,dn)}get permLevel(){return s(this,ln)}get editors(){return s(this,un)}toJSON(){return{listed:s(this,dn),permLevel:s(this,ln),editors:s(this,un).map(e=>e.toJSON())}}};dn=new WeakMap,ln=new WeakMap,un=new WeakMap;function zR(r,e){return f(r.data?.children,"Wiki page revision listing is missing children"),{children:r.data.children.map(i=>new im(i,e)),before:r.data.before,after:r.data.after}}var VR=(t=>(t.Gallery="GALLERY",t.Timeline="TIMELINE",t))(VR||{});function JR(r){return r==="GALLERY"?"GALLERY":"TIMELINE"}var Ue,be,jo,cn,mn,Wo,Go,zo,Vo,ct,Jo,$o,pn,Ho=class Ho{constructor(e,t){l(this,Ue,void 0);l(this,be,void 0);l(this,jo,void 0);l(this,cn,void 0);l(this,mn,void 0);l(this,Wo,void 0);l(this,Go,void 0);l(this,zo,void 0);l(this,Vo,void 0);l(this,ct,void 0);l(this,Jo,void 0);l(this,$o,void 0);l(this,pn,void 0);f(e.collectionId,"Collection Id is missing or undefined"),f(e.subredditId,"Subreddit Id is missing or undefined"),f(e.title,"Collection title is missing or undefined"),f(e.authorId,"Collection author's id is missing or undefined"),f(e.authorName,"Collection author's id is missing or undefined"),f(e.createdAtUtc,"Collection create timestamp is missing"),f(e.lastUpdateUtc,"Collection last updated timestamp is missing"),d(this,Ue,t),d(this,be,e.collectionId),d(this,jo,e.subredditId),d(this,cn,e.title),d(this,mn,e.description||""),d(this,Wo,e.authorId),d(this,Go,e.authorName),d(this,zo,e.permalink),d(this,Vo,e.primaryLinkId),d(this,ct,e.linkIds||[]),d(this,pn,JR(e.displayLayout)),d(this,Jo,e.createdAtUtc),d(this,$o,e.lastUpdateUtc),V(this)}get id(){return s(this,be)}get subredditId(){return s(this,jo)}get title(){return s(this,cn)}get description(){return s(this,mn)}get authorId(){return s(this,Wo)}get authorName(){return s(this,Go)}get permalink(){return s(this,zo)}get primaryLinkId(){return s(this,Vo)}get linkIds(){return s(this,ct)}get createdAtUtc(){return s(this,Jo)}get lastUpdateUtc(){return s(this,$o)}get displayLayout(){return s(this,pn)}static async getCollectionById(e,t){let n=await u.redditAPIPlugins.PostCollections.Collection(e,t);return new Ho(n,t)}static async create(e,t){let n=await u.redditAPIPlugins.PostCollections.Create({srFullname:e.subredditId,title:e.title,description:e.description,displayLayout:e.displayLayout},t);return new Ho(n,t)}static async getCollectionsForSubreddit(e,t){return(await u.redditapiv2Plugin.GetSubredditCollections({srFullname:e.subredditId},t)).collections.map(n=>new Ho(n,t))}async addPost(e){await u.redditAPIPlugins.PostCollections.AddPost({collectionId:s(this,be),linkFullname:e},s(this,Ue)),s(this,ct).push(e)}async removePost(e){await u.redditAPIPlugins.PostCollections.RemovePost({collectionId:s(this,be),linkFullname:e},s(this,Ue)),d(this,ct,s(this,ct).filter(i=>i!==e))}async delete(){await u.redditAPIPlugins.PostCollections.Delete({collectionId:s(this,be)},s(this,Ue))}async follow(e){await u.redditAPIPlugins.PostCollections.Follow({collectionId:s(this,be),follow:e},s(this,Ue))}async reorder(e){await u.redditAPIPlugins.PostCollections.Reorder({collectionId:s(this,be),linkIds:e.join(",")},s(this,Ue)),d(this,ct,e)}async updateTitle(e){await u.redditAPIPlugins.PostCollections.UpdateTitle({collectionId:s(this,be),title:e},s(this,Ue)),d(this,cn,e)}async updateDescription(e){await u.redditAPIPlugins.PostCollections.UpdateDescription({collectionId:s(this,be),description:e},s(this,Ue)),d(this,mn,e)}async updateLayout(e){await u.redditAPIPlugins.PostCollections.UpdateDisplayLayout({collectionId:s(this,be),displayLayout:e},s(this,Ue)),d(this,pn,e)}};Ue=new WeakMap,be=new WeakMap,jo=new WeakMap,cn=new WeakMap,mn=new WeakMap,Wo=new WeakMap,Go=new WeakMap,zo=new WeakMap,Vo=new WeakMap,ct=new WeakMap,Jo=new WeakMap,$o=new WeakMap,pn=new WeakMap;var Wr=Ho;var $R=["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"],KR=["border-image","border-image-source","behavior","expression","list-style-image","cursor","content"],XR=["onload","onerror","onclick","onmouseover"];function ZR(r){return/xmlns=["']http:\/\/www\.w3\.org\/2000\/svg["']/.test(r)?r:r.replace(/<svg\b/,'<svg xmlns="http://www.w3.org/2000/svg"')}function AP(r){if(r){if(!r.trim().startsWith("<svg")){console.log("The provided string is not a valid SVG.");return}try{let e=new RegExp(`<\\s*(${$R.join("|")})\\b`,"gi"),t=new RegExp(`(${KR.join("|")})\\s*:\\s*url\\s*\\((['"]?)(.*?)\\2\\)`,"gi"),i=new RegExp(`(${XR.join("|")})\\s*(=\\s*(['"]?)(.*?)\\3)?`,"gi");r=r.trim().replace(/\s+/g," "),r=ZR(r);let n=r.match(e)||[],o=r.match(t)||[],a=r.match(i)||[],c=!1;return n.length>0&&(c=!0,console.warn(`Disallowed elements detected in SVG: ${n.map(p=>p.replace("<","")).join(", ")}`)),o.length>0&&(c=!0,console.warn(`Disallowed styles detected in SVG: ${o.map(p=>p.split(":")[0]).join(", ")}`)),a.length>0&&(c=!0,console.warn(`Disallowed attributes detected in SVG: ${a.map(p=>p.split("=")[0]).join(", ")}`)),c?void 0:r}catch{return}}}function yq(r,...e){let t="";return r.forEach((i,n)=>{t+=i;let o=e[n];o!==void 0&&(t+=`${o}`)}),t=AP(t),t===void 0?"":`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(t)}`}export{yM as ALL_ICON_NAMES,mv as AboutLocations,jd as ButtonWidget,qd as CalendarWidget,VR as CollectionDisplayLayout,K as Comment,Wd as CommunityListWidget,zd as CustomWidget,u as Devvit,Re as Flair,oe as FlairTemplate,kR as FlairType,ht as Hook,Nd as ImageWidget,H as Listing,_R as ModMailActionType,UR as ModMailConversationState,za as ModMailService,Ee as ModNote,z as Post,Wr as PostCollection,Gd as PostFlairWidget,Yt as PrivateMessage,vs as RichTextBuilder,Qu as SettingScope,fe as Subreddit,tm as SubredditRulesWidget,Hd as TextAreaWidget,I as User,te as Widget,he as WikiPage,GR as WikiPagePermissionLevel,im as WikiPageRevision,Qd as WikiPageSettings,ks as convertUserFlairProtoToAPI,Ga as getModerationLog,pv as getVaultByAddress,gv as getVaultByUserId,yq as svg};
6
6
  /*! Bundled license information:
7
7
 
8
8
  shallow-clone/index.js: