@devvit/public-api 0.11.0-next-2024-07-03-1379924de.0 → 0.11.0-next-2024-07-03-3e3a7490a.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 qS=Object.create;var sp=Object.defineProperty;var jS=Object.getOwnPropertyDescriptor;var HS=Object.getOwnPropertyNames;var WS=Object.getPrototypeOf,GS=Object.prototype.hasOwnProperty;var h=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var VS=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of HS(e))!GS.call(r,s)&&s!==t&&sp(r,s,{get:()=>e[s],enumerable:!(i=jS(e,s))||i.enumerable});return r};var Br=(r,e,t)=>(t=r!=null?qS(WS(r)):{},VS(e||!r||!r.__esModule?sp(t,"default",{value:r,enumerable:!0}):t,r));var Wl=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var n=(r,e,t)=>(Wl(r,e,"read from private field"),t?t.call(r):e.get(r)),d=(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)},l=(r,e,t,i)=>(Wl(r,e,"write to private field"),i?i.call(r,t):e.set(r,t),t);var y=(r,e,t)=>(Wl(r,e,"access private method"),t);var oe=h((mF,op)=>{op.exports=function(r){try{return!!r()}catch{return!0}}});var Aa=h((pF,ap)=>{var zS=oe();ap.exports=!zS(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var $=h((fF,up)=>{var dp=Aa(),lp=Function.prototype,Gl=lp.call,JS=dp&&lp.bind.bind(Gl,Gl);up.exports=dp?JS:function(r){return function(){return Gl.apply(r,arguments)}}});var mp=h((gF,cp)=>{var $S=Math.ceil,KS=Math.floor;cp.exports=Math.trunc||function(e){var t=+e;return(t>0?KS:$S)(t)}});var Ta=h((hF,pp)=>{var XS=mp();pp.exports=function(r){var e=+r;return e!==e||e===0?0:XS(e)}});var ce=h((vF,fp)=>{var Ea=function(r){return r&&r.Math==Math&&r};fp.exports=Ea(typeof globalThis=="object"&&globalThis)||Ea(typeof window=="object"&&window)||Ea(typeof self=="object"&&self)||Ea(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Dr=h((yF,gp)=>{gp.exports=!1});var Ra=h((bF,vp)=>{var hp=ce(),ZS=Object.defineProperty;vp.exports=function(r,e){try{ZS(hp,r,{value:e,configurable:!0,writable:!0})}catch{hp[r]=e}return e}});var Oa=h((kF,bp)=>{var YS=ce(),QS=Ra(),yp="__core-js_shared__",eP=YS[yp]||QS(yp,{});bp.exports=eP});var Vl=h((SF,Sp)=>{var tP=Dr(),kp=Oa();(Sp.exports=function(r,e){return kp[r]||(kp[r]=e!==void 0?e:{})})("versions",[]).push({version:"3.27.2",mode:tP?"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 Fa=h((PF,Pp)=>{Pp.exports=function(r){return r==null}});var Ma=h((CF,Cp)=>{var rP=Fa(),iP=TypeError;Cp.exports=function(r){if(rP(r))throw iP("Can't call method on "+r);return r}});var Un=h((wF,wp)=>{var nP=Ma(),sP=Object;wp.exports=function(r){return sP(nP(r))}});var Ce=h((IF,Ip)=>{var oP=$(),aP=Un(),dP=oP({}.hasOwnProperty);Ip.exports=Object.hasOwn||function(e,t){return dP(aP(e),t)}});var zl=h((xF,xp)=>{var lP=$(),uP=0,cP=Math.random(),mP=lP(1 .toString);xp.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+mP(++uP+cP,36)}});var Tp=h((AF,Ap)=>{Ap.exports=typeof navigator<"u"&&String(navigator.userAgent)||""});var Up=h((TF,Lp)=>{var Mp=ce(),Jl=Tp(),Ep=Mp.process,Rp=Mp.Deno,Op=Ep&&Ep.versions||Rp&&Rp.version,Fp=Op&&Op.v8,He,La;Fp&&(He=Fp.split("."),La=He[0]>0&&He[0]<4?1:+(He[0]+He[1]));!La&&Jl&&(He=Jl.match(/Edge\/(\d+)/),(!He||He[1]>=74)&&(He=Jl.match(/Chrome\/(\d+)/),He&&(La=+He[1])));Lp.exports=La});var $l=h((EF,Dp)=>{var Bp=Up(),pP=oe();Dp.exports=!!Object.getOwnPropertySymbols&&!pP(function(){var r=Symbol();return!String(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Bp&&Bp<41})});var Kl=h((RF,_p)=>{var fP=$l();_p.exports=fP&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var we=h((OF,qp)=>{var gP=ce(),hP=Vl(),Np=Ce(),vP=zl(),yP=$l(),bP=Kl(),_r=gP.Symbol,Xl=hP("wks"),kP=bP?_r.for||_r:_r&&_r.withoutSetter||vP;qp.exports=function(r){return Np(Xl,r)||(Xl[r]=yP&&Np(_r,r)?_r[r]:kP("Symbol."+r)),Xl[r]}});var Wp=h((FF,Hp)=>{var SP=we(),PP=SP("toStringTag"),jp={};jp[PP]="z";Hp.exports=String(jp)==="[object z]"});var Yl=h((MF,Gp)=>{var Zl=typeof document=="object"&&document.all,CP=typeof Zl>"u"&&Zl!==void 0;Gp.exports={all:Zl,IS_HTMLDDA:CP}});var K=h((LF,zp)=>{var Vp=Yl(),wP=Vp.all;zp.exports=Vp.IS_HTMLDDA?function(r){return typeof r=="function"||r===wP}:function(r){return typeof r=="function"}});var Ua=h((UF,$p)=>{var Jp=$(),IP=Jp({}.toString),xP=Jp("".slice);$p.exports=function(r){return xP(IP(r),8,-1)}});var Bn=h((BF,Kp)=>{var AP=Wp(),TP=K(),Ba=Ua(),EP=we(),RP=EP("toStringTag"),OP=Object,FP=Ba(function(){return arguments}())=="Arguments",MP=function(r,e){try{return r[e]}catch{}};Kp.exports=AP?Ba:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=MP(e=OP(r),RP))=="string"?t:FP?Ba(e):(i=Ba(e))=="Object"&&TP(e.callee)?"Arguments":i}});var Dn=h((DF,Xp)=>{var LP=Bn(),UP=String;Xp.exports=function(r){if(LP(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return UP(r)}});var eu=h((_F,Qp)=>{var Ql=$(),BP=Ta(),DP=Dn(),_P=Ma(),NP=Ql("".charAt),Zp=Ql("".charCodeAt),qP=Ql("".slice),Yp=function(r){return function(e,t){var i=DP(_P(e)),s=BP(t),o=i.length,a,c;return s<0||s>=o?r?"":void 0:(a=Zp(i,s),a<55296||a>56319||s+1===o||(c=Zp(i,s+1))<56320||c>57343?r?NP(i,s):a:r?qP(i,s,s+2):(a-55296<<10)+(c-56320)+65536)}};Qp.exports={codeAt:Yp(!1),charAt:Yp(!0)}});var rf=h((NF,tf)=>{var jP=ce(),HP=K(),ef=jP.WeakMap;tf.exports=HP(ef)&&/native code/.test(String(ef))});var bt=h((qF,of)=>{var nf=K(),sf=Yl(),WP=sf.all;of.exports=sf.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:nf(r)||r===WP}:function(r){return typeof r=="object"?r!==null:nf(r)}});var me=h((jF,af)=>{var GP=oe();af.exports=!GP(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var ru=h((HF,lf)=>{var VP=ce(),df=bt(),tu=VP.document,zP=df(tu)&&df(tu.createElement);lf.exports=function(r){return zP?tu.createElement(r):{}}});var iu=h((WF,uf)=>{var JP=me(),$P=oe(),KP=ru();uf.exports=!JP&&!$P(function(){return Object.defineProperty(KP("div"),"a",{get:function(){return 7}}).a!=7})});var nu=h((GF,cf)=>{var XP=me(),ZP=oe();cf.exports=XP&&ZP(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Xe=h((VF,mf)=>{var YP=bt(),QP=String,eC=TypeError;mf.exports=function(r){if(YP(r))return r;throw eC(QP(r)+" is not an object")}});var We=h((zF,pf)=>{var tC=Aa(),Da=Function.prototype.call;pf.exports=tC?Da.bind(Da):function(){return Da.apply(Da,arguments)}});var _n=h((JF,ff)=>{var su=ce(),rC=K(),iC=function(r){return rC(r)?r:void 0};ff.exports=function(r,e){return arguments.length<2?iC(su[r]):su[r]&&su[r][e]}});var ou=h(($F,gf)=>{var nC=$();gf.exports=nC({}.isPrototypeOf)});var au=h((KF,hf)=>{var sC=_n(),oC=K(),aC=ou(),dC=Kl(),lC=Object;hf.exports=dC?function(r){return typeof r=="symbol"}:function(r){var e=sC("Symbol");return oC(e)&&aC(e.prototype,lC(r))}});var du=h((XF,vf)=>{var uC=String;vf.exports=function(r){try{return uC(r)}catch{return"Object"}}});var _a=h((ZF,yf)=>{var cC=K(),mC=du(),pC=TypeError;yf.exports=function(r){if(cC(r))return r;throw pC(mC(r)+" is not a function")}});var Na=h((YF,bf)=>{var fC=_a(),gC=Fa();bf.exports=function(r,e){var t=r[e];return gC(t)?void 0:fC(t)}});var Sf=h((QF,kf)=>{var lu=We(),uu=K(),cu=bt(),hC=TypeError;kf.exports=function(r,e){var t,i;if(e==="string"&&uu(t=r.toString)&&!cu(i=lu(t,r))||uu(t=r.valueOf)&&!cu(i=lu(t,r))||e!=="string"&&uu(t=r.toString)&&!cu(i=lu(t,r)))return i;throw hC("Can't convert object to primitive value")}});var If=h((eM,wf)=>{var vC=We(),Pf=bt(),Cf=au(),yC=Na(),bC=Sf(),kC=we(),SC=TypeError,PC=kC("toPrimitive");wf.exports=function(r,e){if(!Pf(r)||Cf(r))return r;var t=yC(r,PC),i;if(t){if(e===void 0&&(e="default"),i=vC(t,r,e),!Pf(i)||Cf(i))return i;throw SC("Can't convert object to primitive value")}return e===void 0&&(e="number"),bC(r,e)}});var qa=h((tM,xf)=>{var CC=If(),wC=au();xf.exports=function(r){var e=CC(r,"string");return wC(e)?e:e+""}});var Ze=h(Tf=>{var IC=me(),xC=iu(),AC=nu(),ja=Xe(),Af=qa(),TC=TypeError,mu=Object.defineProperty,EC=Object.getOwnPropertyDescriptor,pu="enumerable",fu="configurable",gu="writable";Tf.f=IC?AC?function(e,t,i){if(ja(e),t=Af(t),ja(i),typeof e=="function"&&t==="prototype"&&"value"in i&&gu in i&&!i[gu]){var s=EC(e,t);s&&s[gu]&&(e[t]=i.value,i={configurable:fu in i?i[fu]:s[fu],enumerable:pu in i?i[pu]:s[pu],writable:!1})}return mu(e,t,i)}:mu:function(e,t,i){if(ja(e),t=Af(t),ja(i),xC)try{return mu(e,t,i)}catch{}if("get"in i||"set"in i)throw TC("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var Nr=h((iM,Ef)=>{Ef.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var Ha=h((nM,Rf)=>{var RC=me(),OC=Ze(),FC=Nr();Rf.exports=RC?function(r,e,t){return OC.f(r,e,FC(1,t))}:function(r,e,t){return r[e]=t,r}});var Wa=h((sM,Ff)=>{var MC=Vl(),LC=zl(),Of=MC("keys");Ff.exports=function(r){return Of[r]||(Of[r]=LC(r))}});var Ga=h((oM,Mf)=>{Mf.exports={}});var qr=h((aM,Bf)=>{var UC=rf(),Uf=ce(),BC=bt(),DC=Ha(),hu=Ce(),vu=Oa(),_C=Wa(),NC=Ga(),Lf="Object already initialized",yu=Uf.TypeError,qC=Uf.WeakMap,Va,Nn,za,jC=function(r){return za(r)?Nn(r):Va(r,{})},HC=function(r){return function(e){var t;if(!BC(e)||(t=Nn(e)).type!==r)throw yu("Incompatible receiver, "+r+" required");return t}};UC||vu.state?(Ge=vu.state||(vu.state=new qC),Ge.get=Ge.get,Ge.has=Ge.has,Ge.set=Ge.set,Va=function(r,e){if(Ge.has(r))throw yu(Lf);return e.facade=r,Ge.set(r,e),e},Nn=function(r){return Ge.get(r)||{}},za=function(r){return Ge.has(r)}):(er=_C("state"),NC[er]=!0,Va=function(r,e){if(hu(r,er))throw yu(Lf);return e.facade=r,DC(r,er,e),e},Nn=function(r){return hu(r,er)?r[er]:{}},za=function(r){return hu(r,er)});var Ge,er;Bf.exports={set:Va,get:Nn,has:za,enforce:jC,getterFor:HC}});var bu=h(Nf=>{"use strict";var Df={}.propertyIsEnumerable,_f=Object.getOwnPropertyDescriptor,WC=_f&&!Df.call({1:2},1);Nf.f=WC?function(e){var t=_f(this,e);return!!t&&t.enumerable}:Df});var Su=h((lM,qf)=>{var GC=$(),VC=oe(),zC=Ua(),ku=Object,JC=GC("".split);qf.exports=VC(function(){return!ku("z").propertyIsEnumerable(0)})?function(r){return zC(r)=="String"?JC(r,""):ku(r)}:ku});var jr=h((uM,jf)=>{var $C=Su(),KC=Ma();jf.exports=function(r){return $C(KC(r))}});var Pu=h(Wf=>{var XC=me(),ZC=We(),YC=bu(),QC=Nr(),ew=jr(),tw=qa(),rw=Ce(),iw=iu(),Hf=Object.getOwnPropertyDescriptor;Wf.f=XC?Hf:function(e,t){if(e=ew(e),t=tw(t),iw)try{return Hf(e,t)}catch{}if(rw(e,t))return QC(!ZC(YC.f,e,t),e[t])}});var Iu=h((mM,Vf)=>{var Cu=me(),nw=Ce(),Gf=Function.prototype,sw=Cu&&Object.getOwnPropertyDescriptor,wu=nw(Gf,"name"),ow=wu&&function(){}.name==="something",aw=wu&&(!Cu||Cu&&sw(Gf,"name").configurable);Vf.exports={EXISTS:wu,PROPER:ow,CONFIGURABLE:aw}});var Au=h((pM,zf)=>{var dw=$(),lw=K(),xu=Oa(),uw=dw(Function.toString);lw(xu.inspectSource)||(xu.inspectSource=function(r){return uw(r)});zf.exports=xu.inspectSource});var Ru=h((fM,Kf)=>{var Eu=$(),cw=oe(),mw=K(),Ja=Ce(),Tu=me(),pw=Iu().CONFIGURABLE,fw=Au(),$f=qr(),gw=$f.enforce,hw=$f.get,Jf=String,$a=Object.defineProperty,vw=Eu("".slice),yw=Eu("".replace),bw=Eu([].join),kw=Tu&&!cw(function(){return $a(function(){},"length",{value:8}).length!==8}),Sw=String(String).split("String"),Pw=Kf.exports=function(r,e,t){vw(Jf(e),0,7)==="Symbol("&&(e="["+yw(Jf(e),/^Symbol\(([^)]*)\)/,"$1")+"]"),t&&t.getter&&(e="get "+e),t&&t.setter&&(e="set "+e),(!Ja(r,"name")||pw&&r.name!==e)&&(Tu?$a(r,"name",{value:e,configurable:!0}):r.name=e),kw&&t&&Ja(t,"arity")&&r.length!==t.arity&&$a(r,"length",{value:t.arity});try{t&&Ja(t,"constructor")&&t.constructor?Tu&&$a(r,"prototype",{writable:!1}):r.prototype&&(r.prototype=void 0)}catch{}var i=gw(r);return Ja(i,"source")||(i.source=bw(Sw,typeof e=="string"?e:"")),r};Function.prototype.toString=Pw(function(){return mw(this)&&hw(this).source||fw(this)},"toString")});var tr=h((gM,Xf)=>{var Cw=K(),ww=Ze(),Iw=Ru(),xw=Ra();Xf.exports=function(r,e,t,i){i||(i={});var s=i.enumerable,o=i.name!==void 0?i.name:e;if(Cw(t)&&Iw(t,o,i),i.global)s?r[e]=t:xw(e,t);else{try{i.unsafe?r[e]&&(s=!0):delete r[e]}catch{}s?r[e]=t:ww.f(r,e,{value:t,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return r}});var Ou=h((hM,Zf)=>{var Aw=Ta(),Tw=Math.max,Ew=Math.min;Zf.exports=function(r,e){var t=Aw(r);return t<0?Tw(t+e,0):Ew(t,e)}});var Qf=h((vM,Yf)=>{var Rw=Ta(),Ow=Math.min;Yf.exports=function(r){return r>0?Ow(Rw(r),9007199254740991):0}});var Ka=h((yM,eg)=>{var Fw=Qf();eg.exports=function(r){return Fw(r.length)}});var ig=h((bM,rg)=>{var Mw=jr(),Lw=Ou(),Uw=Ka(),tg=function(r){return function(e,t,i){var s=Mw(e),o=Uw(s),a=Lw(i,o),c;if(r&&t!=t){for(;o>a;)if(c=s[a++],c!=c)return!0}else for(;o>a;a++)if((r||a in s)&&s[a]===t)return r||a||0;return!r&&-1}};rg.exports={includes:tg(!0),indexOf:tg(!1)}});var Mu=h((kM,sg)=>{var Bw=$(),Fu=Ce(),Dw=jr(),_w=ig().indexOf,Nw=Ga(),ng=Bw([].push);sg.exports=function(r,e){var t=Dw(r),i=0,s=[],o;for(o in t)!Fu(Nw,o)&&Fu(t,o)&&ng(s,o);for(;e.length>i;)Fu(t,o=e[i++])&&(~_w(s,o)||ng(s,o));return s}});var Xa=h((SM,og)=>{og.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var dg=h(ag=>{var qw=Mu(),jw=Xa(),Hw=jw.concat("length","prototype");ag.f=Object.getOwnPropertyNames||function(e){return qw(e,Hw)}});var Lu=h(lg=>{lg.f=Object.getOwnPropertySymbols});var cg=h((wM,ug)=>{var Ww=_n(),Gw=$(),Vw=dg(),zw=Lu(),Jw=Xe(),$w=Gw([].concat);ug.exports=Ww("Reflect","ownKeys")||function(e){var t=Vw.f(Jw(e)),i=zw.f;return i?$w(t,i(e)):t}});var fg=h((IM,pg)=>{var mg=Ce(),Kw=cg(),Xw=Pu(),Zw=Ze();pg.exports=function(r,e,t){for(var i=Kw(e),s=Zw.f,o=Xw.f,a=0;a<i.length;a++){var c=i[a];!mg(r,c)&&!(t&&mg(t,c))&&s(r,c,o(e,c))}}});var hg=h((xM,gg)=>{var Yw=oe(),Qw=K(),eI=/#|\.prototype\./,qn=function(r,e){var t=rI[tI(r)];return t==nI?!0:t==iI?!1:Qw(e)?Yw(e):!!e},tI=qn.normalize=function(r){return String(r).replace(eI,".").toLowerCase()},rI=qn.data={},iI=qn.NATIVE="N",nI=qn.POLYFILL="P";gg.exports=qn});var jn=h((AM,vg)=>{var Uu=ce(),sI=Pu().f,oI=Ha(),aI=tr(),dI=Ra(),lI=fg(),uI=hg();vg.exports=function(r,e){var t=r.target,i=r.global,s=r.stat,o,a,c,p,f,v;if(i?a=Uu:s?a=Uu[t]||dI(t,{}):a=(Uu[t]||{}).prototype,a)for(c in e){if(f=e[c],r.dontCallGetSet?(v=sI(a,c),p=v&&v.value):p=a[c],o=uI(i?c:t+(s?".":"#")+c,r.forced),!o&&p!==void 0){if(typeof f==typeof p)continue;lI(f,p)}(r.sham||p&&p.sham)&&oI(f,"sham",!0),aI(a,c,f,r)}}});var Bu=h((TM,yg)=>{var cI=Mu(),mI=Xa();yg.exports=Object.keys||function(e){return cI(e,mI)}});var kg=h(bg=>{var pI=me(),fI=nu(),gI=Ze(),hI=Xe(),vI=jr(),yI=Bu();bg.f=pI&&!fI?Object.defineProperties:function(e,t){hI(e);for(var i=vI(t),s=yI(t),o=s.length,a=0,c;o>a;)gI.f(e,c=s[a++],i[c]);return e}});var Pg=h((RM,Sg)=>{var bI=_n();Sg.exports=bI("document","documentElement")});var Hn=h((OM,Eg)=>{var kI=Xe(),SI=kg(),Cg=Xa(),PI=Ga(),CI=Pg(),wI=ru(),II=Wa(),wg=">",Ig="<",_u="prototype",Nu="script",Ag=II("IE_PROTO"),Du=function(){},Tg=function(r){return Ig+Nu+wg+r+Ig+"/"+Nu+wg},xg=function(r){r.write(Tg("")),r.close();var e=r.parentWindow.Object;return r=null,e},xI=function(){var r=wI("iframe"),e="java"+Nu+":",t;return r.style.display="none",CI.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(Tg("document.F=Object")),t.close(),t.F},Za,Ya=function(){try{Za=new ActiveXObject("htmlfile")}catch{}Ya=typeof document<"u"?document.domain&&Za?xg(Za):xI():xg(Za);for(var r=Cg.length;r--;)delete Ya[_u][Cg[r]];return Ya()};PI[Ag]=!0;Eg.exports=Object.create||function(e,t){var i;return e!==null?(Du[_u]=kI(e),i=new Du,Du[_u]=null,i[Ag]=e):i=Ya(),t===void 0?i:SI.f(i,t)}});var Og=h((FM,Rg)=>{var AI=oe();Rg.exports=!AI(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var ju=h((MM,Mg)=>{var TI=Ce(),EI=K(),RI=Un(),OI=Wa(),FI=Og(),Fg=OI("IE_PROTO"),qu=Object,MI=qu.prototype;Mg.exports=FI?qu.getPrototypeOf:function(r){var e=RI(r);if(TI(e,Fg))return e[Fg];var t=e.constructor;return EI(t)&&e instanceof t?t.prototype:e instanceof qu?MI:null}});var Vu=h((LM,Bg)=>{"use strict";var LI=oe(),UI=K(),BI=bt(),DI=Hn(),Lg=ju(),_I=tr(),NI=we(),qI=Dr(),Gu=NI("iterator"),Ug=!1,st,Hu,Wu;[].keys&&(Wu=[].keys(),"next"in Wu?(Hu=Lg(Lg(Wu)),Hu!==Object.prototype&&(st=Hu)):Ug=!0);var jI=!BI(st)||LI(function(){var r={};return st[Gu].call(r)!==r});jI?st={}:qI&&(st=DI(st));UI(st[Gu])||_I(st,Gu,function(){return this});Bg.exports={IteratorPrototype:st,BUGGY_SAFARI_ITERATORS:Ug}});var Wn=h((UM,_g)=>{var HI=Ze().f,WI=Ce(),GI=we(),Dg=GI("toStringTag");_g.exports=function(r,e,t){r&&!t&&(r=r.prototype),r&&!WI(r,Dg)&&HI(r,Dg,{configurable:!0,value:e})}});var Hr=h((BM,Ng)=>{Ng.exports={}});var zu=h((DM,qg)=>{"use strict";var VI=Vu().IteratorPrototype,zI=Hn(),JI=Nr(),$I=Wn(),KI=Hr(),XI=function(){return this};qg.exports=function(r,e,t,i){var s=e+" Iterator";return r.prototype=zI(VI,{next:JI(+!i,t)}),$I(r,s,!1,!0),KI[s]=XI,r}});var Hg=h((_M,jg)=>{var ZI=K(),YI=String,QI=TypeError;jg.exports=function(r){if(typeof r=="object"||ZI(r))return r;throw QI("Can't set "+YI(r)+" as a prototype")}});var Gg=h((NM,Wg)=>{var ex=$(),tx=Xe(),rx=Hg();Wg.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=ex(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set),t(e,[]),r=e instanceof Array}catch{}return function(s,o){return tx(s),rx(o),r?t(s,o):s.__proto__=o,s}}():void 0)});var $u=h((qM,eh)=>{"use strict";var ix=jn(),nx=We(),Qa=Dr(),Yg=Iu(),sx=K(),ox=zu(),Vg=ju(),zg=Gg(),ax=Wn(),dx=Ha(),Ju=tr(),lx=we(),Jg=Hr(),Qg=Vu(),ux=Yg.PROPER,cx=Yg.CONFIGURABLE,$g=Qg.IteratorPrototype,ed=Qg.BUGGY_SAFARI_ITERATORS,Gn=lx("iterator"),Kg="keys",Vn="values",Xg="entries",Zg=function(){return this};eh.exports=function(r,e,t,i,s,o,a){ox(t,e,i);var c=function(F){if(F===s&&k)return k;if(!ed&&F in v)return v[F];switch(F){case Kg:return function(){return new t(this,F)};case Vn:return function(){return new t(this,F)};case Xg:return function(){return new t(this,F)}}return function(){return new t(this)}},p=e+" Iterator",f=!1,v=r.prototype,m=v[Gn]||v["@@iterator"]||s&&v[s],k=!ed&&m||c(s),b=e=="Array"&&v.entries||m,C,w,x;if(b&&(C=Vg(b.call(new r)),C!==Object.prototype&&C.next&&(!Qa&&Vg(C)!==$g&&(zg?zg(C,$g):sx(C[Gn])||Ju(C,Gn,Zg)),ax(C,p,!0,!0),Qa&&(Jg[p]=Zg))),ux&&s==Vn&&m&&m.name!==Vn&&(!Qa&&cx?dx(v,"name",Vn):(f=!0,k=function(){return nx(m,this)})),s)if(w={values:c(Vn),keys:o?k:c(Kg),entries:c(Xg)},a)for(x in w)(ed||f||!(x in v))&&Ju(v,x,w[x]);else ix({target:e,proto:!0,forced:ed||f},w);return(!Qa||a)&&v[Gn]!==k&&Ju(v,Gn,k,{name:s}),Jg[e]=k,w}});var Ku=h((jM,th)=>{th.exports=function(r,e){return{value:r,done:e}}});var sh=h(()=>{"use strict";var mx=eu().charAt,px=Dn(),ih=qr(),fx=$u(),rh=Ku(),nh="String Iterator",gx=ih.set,hx=ih.getterFor(nh);fx(String,"String",function(r){gx(this,{type:nh,string:px(r),index:0})},function(){var e=hx(this),t=e.string,i=e.index,s;return i>=t.length?rh(void 0,!0):(s=mx(t,i),e.index+=s.length,rh(s,!1))})});var Xu=h((GM,oh)=>{var vx=oe(),yx=we(),bx=Dr(),kx=yx("iterator");oh.exports=!vx(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,s){e.delete("b"),t+=s+i}),bx&&!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[kx]||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 dh=h((VM,ah)=>{var Sx=Ua(),Px=$();ah.exports=function(r){if(Sx(r)==="Function")return Px(r)}});var td=h((zM,uh)=>{var lh=dh(),Cx=_a(),wx=Aa(),Ix=lh(lh.bind);uh.exports=function(r,e){return Cx(r),e===void 0?r:wx?Ix(r,e):function(){return r.apply(e,arguments)}}});var ph=h((JM,mh)=>{var ch=Ru(),xx=Ze();mh.exports=function(r,e,t){return t.get&&ch(t.get,e,{getter:!0}),t.set&&ch(t.set,e,{setter:!0}),xx.f(r,e,t)}});var Zu=h(($M,fh)=>{var Ax=ou(),Tx=TypeError;fh.exports=function(r,e){if(Ax(e,r))return r;throw Tx("Incorrect invocation")}});var yh=h((KM,vh)=>{"use strict";var gh=me(),Ex=$(),Rx=We(),Ox=oe(),Yu=Bu(),Fx=Lu(),Mx=bu(),Lx=Un(),Ux=Su(),Wr=Object.assign,hh=Object.defineProperty,Bx=Ex([].concat);vh.exports=!Wr||Ox(function(){if(gh&&Wr({b:1},Wr(hh({},"a",{enumerable:!0,get:function(){hh(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(s){e[s]=s}),Wr({},r)[t]!=7||Yu(Wr({},e)).join("")!=i})?function(e,t){for(var i=Lx(e),s=arguments.length,o=1,a=Fx.f,c=Mx.f;s>o;)for(var p=Ux(arguments[o++]),f=a?Bx(Yu(p),a(p)):Yu(p),v=f.length,m=0,k;v>m;)k=f[m++],(!gh||Rx(c,p,k))&&(i[k]=p[k]);return i}:Wr});var Sh=h((XM,kh)=>{var Dx=We(),bh=Xe(),_x=Na();kh.exports=function(r,e,t){var i,s;bh(r);try{if(i=_x(r,"return"),!i){if(e==="throw")throw t;return t}i=Dx(i,r)}catch(o){s=!0,i=o}if(e==="throw")throw t;if(s)throw i;return bh(i),t}});var Ch=h((ZM,Ph)=>{var Nx=Xe(),qx=Sh();Ph.exports=function(r,e,t,i){try{return i?e(Nx(t)[0],t[1]):e(t)}catch(s){qx(r,"throw",s)}}});var Ih=h((YM,wh)=>{var jx=we(),Hx=Hr(),Wx=jx("iterator"),Gx=Array.prototype;wh.exports=function(r){return r!==void 0&&(Hx.Array===r||Gx[Wx]===r)}});var Oh=h((QM,Rh)=>{var Vx=$(),zx=oe(),xh=K(),Jx=Bn(),$x=_n(),Kx=Au(),Ah=function(){},Xx=[],Th=$x("Reflect","construct"),Qu=/^\s*(?:class|function)\b/,Zx=Vx(Qu.exec),Yx=!Qu.exec(Ah),zn=function(e){if(!xh(e))return!1;try{return Th(Ah,Xx,e),!0}catch{return!1}},Eh=function(e){if(!xh(e))return!1;switch(Jx(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Yx||!!Zx(Qu,Kx(e))}catch{return!0}};Eh.sham=!0;Rh.exports=!Th||zx(function(){var r;return zn(zn.call)||!zn(Object)||!zn(function(){r=!0})||r})?Eh:zn});var ec=h((eL,Fh)=>{"use strict";var Qx=qa(),eA=Ze(),tA=Nr();Fh.exports=function(r,e,t){var i=Qx(e);i in r?eA.f(r,i,tA(0,t)):r[i]=t}});var rd=h((tL,Lh)=>{var rA=Bn(),Mh=Na(),iA=Fa(),nA=Hr(),sA=we(),oA=sA("iterator");Lh.exports=function(r){if(!iA(r))return Mh(r,oA)||Mh(r,"@@iterator")||nA[rA(r)]}});var tc=h((rL,Uh)=>{var aA=We(),dA=_a(),lA=Xe(),uA=du(),cA=rd(),mA=TypeError;Uh.exports=function(r,e){var t=arguments.length<2?cA(r):e;if(dA(t))return lA(aA(t,r));throw mA(uA(r)+" is not iterable")}});var Nh=h((iL,_h)=>{"use strict";var pA=td(),fA=We(),gA=Un(),hA=Ch(),vA=Ih(),yA=Oh(),bA=Ka(),Bh=ec(),kA=tc(),SA=rd(),Dh=Array;_h.exports=function(e){var t=gA(e),i=yA(this),s=arguments.length,o=s>1?arguments[1]:void 0,a=o!==void 0;a&&(o=pA(o,s>2?arguments[2]:void 0));var c=SA(t),p=0,f,v,m,k,b,C;if(c&&!(this===Dh&&vA(c)))for(k=kA(t,c),b=k.next,v=i?new this:[];!(m=fA(b,k)).done;p++)C=a?hA(k,o,[m.value,p],!0):m.value,Bh(v,p,C);else for(f=bA(t),v=i?new this(f):Dh(f);f>p;p++)C=a?o(t[p],p):t[p],Bh(v,p,C);return v.length=p,v}});var rc=h((nL,jh)=>{var qh=Ou(),PA=Ka(),CA=ec(),wA=Array,IA=Math.max;jh.exports=function(r,e,t){for(var i=PA(r),s=qh(e,i),o=qh(t===void 0?i:t,i),a=wA(IA(o-s,0)),c=0;s<o;s++,c++)CA(a,c,r[s]);return a.length=c,a}});var Xh=h((sL,Kh)=>{var rr=$(),ic=2147483647,Jn=36,zh=1,oc=26,xA=38,AA=700,TA=72,EA=128,RA="-",OA=/[^\0-\u007E]/,Jh=/[.\u3002\uFF0E\uFF61]/g,Hh="Overflow: input needs wider integers to process",nc=Jn-zh,Wh=RangeError,FA=rr(Jh.exec),Gr=Math.floor,sc=String.fromCharCode,Gh=rr("".charCodeAt),$h=rr([].join),kt=rr([].push),MA=rr("".replace),LA=rr("".split),UA=rr("".toLowerCase),BA=function(r){for(var e=[],t=0,i=r.length;t<i;){var s=Gh(r,t++);if(s>=55296&&s<=56319&&t<i){var o=Gh(r,t++);(o&64512)==56320?kt(e,((s&1023)<<10)+(o&1023)+65536):(kt(e,s),t--)}else kt(e,s)}return e},Vh=function(r){return r+22+75*(r<26)},DA=function(r,e,t){var i=0;for(r=t?Gr(r/AA):r>>1,r+=Gr(r/e);r>nc*oc>>1;)r=Gr(r/nc),i+=Jn;return Gr(i+(nc+1)*r/(r+xA))},_A=function(r){var e=[];r=BA(r);var t=r.length,i=EA,s=0,o=TA,a,c;for(a=0;a<r.length;a++)c=r[a],c<128&&kt(e,sc(c));var p=e.length,f=p;for(p&&kt(e,RA);f<t;){var v=ic;for(a=0;a<r.length;a++)c=r[a],c>=i&&c<v&&(v=c);var m=f+1;if(v-i>Gr((ic-s)/m))throw Wh(Hh);for(s+=(v-i)*m,i=v,a=0;a<r.length;a++){if(c=r[a],c<i&&++s>ic)throw Wh(Hh);if(c==i){for(var k=s,b=Jn;;){var C=b<=o?zh:b>=o+oc?oc:b-o;if(k<C)break;var w=k-C,x=Jn-C;kt(e,sc(Vh(C+w%x))),k=Gr(w/x),b+=Jn}kt(e,sc(Vh(k))),o=DA(s,m,f==p),s=0,f++}}s++,i++}return $h(e,"")};Kh.exports=function(r){var e=[],t=LA(MA(UA(r),Jh,"."),"."),i,s;for(i=0;i<t.length;i++)s=t[i],kt(e,FA(OA,s)?"xn--"+_A(s):s);return $h(e,".")}});var ac=h((oL,Zh)=>{var NA=TypeError;Zh.exports=function(r,e){if(r<e)throw NA("Not enough arguments");return r}});var Qh=h((aL,Yh)=>{var qA=we(),jA=Hn(),HA=Ze().f,dc=qA("unscopables"),lc=Array.prototype;lc[dc]==null&&HA(lc,dc,{configurable:!0,value:jA(null)});Yh.exports=function(r){lc[dc][r]=!0}});var sv=h((dL,nv)=>{"use strict";var WA=jr(),uc=Qh(),ev=Hr(),rv=qr(),GA=Ze().f,VA=$u(),id=Ku(),zA=Dr(),JA=me(),iv="Array Iterator",$A=rv.set,KA=rv.getterFor(iv);nv.exports=VA(Array,"Array",function(r,e){$A(this,{type:iv,target:WA(r),index:0,kind:e})},function(){var r=KA(this),e=r.target,t=r.kind,i=r.index++;return!e||i>=e.length?(r.target=void 0,id(void 0,!0)):t=="keys"?id(i,!1):t=="values"?id(e[i],!1):id([i,e[i]],!1)},"values");var tv=ev.Arguments=ev.Array;uc("keys");uc("values");uc("entries");if(!zA&&JA&&tv.name!=="values")try{GA(tv,"name",{value:"values"})}catch{}});var av=h((lL,ov)=>{var XA=tr();ov.exports=function(r,e,t){for(var i in e)XA(r,i,e[i],t);return r}});var uv=h((uL,lv)=>{var dv=rc(),ZA=Math.floor,cc=function(r,e){var t=r.length,i=ZA(t/2);return t<8?YA(r,e):QA(r,cc(dv(r,0,i),e),cc(dv(r,i),e),e)},YA=function(r,e){for(var t=r.length,i=1,s,o;i<t;){for(o=i,s=r[i];o&&e(r[o-1],s)>0;)r[o]=r[--o];o!==i++&&(r[o]=s)}return r},QA=function(r,e,t,i){for(var s=e.length,o=t.length,a=0,c=0;a<s||c<o;)r[a+c]=a<s&&c<o?i(e[a],t[c])<=0?e[a++]:t[c++]:a<s?e[a++]:t[c++];return r};lv.exports=cc});var Sc=h((cL,Rv)=>{"use strict";sv();var hc=jn(),zr=ce(),nd=We(),Ye=$(),eT=me(),Pv=Xu(),Cv=tr(),tT=av(),rT=Wn(),iT=zu(),bc=qr(),wv=Zu(),mc=K(),nT=Ce(),sT=td(),oT=Bn(),aT=Xe(),Iv=bt(),pe=Dn(),dT=Hn(),cv=Nr(),vc=tc(),lT=rd(),Vr=ac(),uT=we(),cT=uv(),mT=uT("iterator"),Xn="URLSearchParams",xv=Xn+"Iterator",Av=bc.set,Ve=bc.getterFor(Xn),pT=bc.getterFor(xv),fT=Object.getOwnPropertyDescriptor,kc=function(r){if(!eT)return zr[r];var e=fT(zr,r);return e&&e.value},mv=kc("fetch"),od=kc("Request"),$n=kc("Headers"),pc=od&&od.prototype,pv=$n&&$n.prototype,gT=zr.RegExp,hT=zr.TypeError,Tv=zr.decodeURIComponent,vT=zr.encodeURIComponent,yT=Ye("".charAt),fv=Ye([].join),ir=Ye([].push),yc=Ye("".replace),bT=Ye([].shift),gv=Ye([].splice),hv=Ye("".split),kT=Ye("".slice),ST=/\+/g,vv=Array(4),PT=function(r){return vv[r-1]||(vv[r-1]=gT("((?:%[\\da-f]{2}){"+r+"})","gi"))},CT=function(r){try{return Tv(r)}catch{return r}},yv=function(r){var e=yc(r,ST," "),t=4;try{return Tv(e)}catch{for(;t;)e=yc(e,PT(t--),CT);return e}},wT=/[!'()~]|%20/g,IT={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},xT=function(r){return IT[r]},bv=function(r){return yc(vT(r),wT,xT)},fc=iT(function(e,t){Av(this,{type:xv,iterator:vc(Ve(e).entries),kind:t})},"Iterator",function(){var e=pT(this),t=e.kind,i=e.iterator.next(),s=i.value;return i.done||(i.value=t==="keys"?s.key:t==="values"?s.value:[s.key,s.value]),i},!0),Ev=function(r){this.entries=[],this.url=null,r!==void 0&&(Iv(r)?this.parseObject(r):this.parseQuery(typeof r=="string"?yT(r,0)==="?"?kT(r,1):r:pe(r)))};Ev.prototype={type:Xn,bindURL:function(r){this.url=r,this.update()},parseObject:function(r){var e=lT(r),t,i,s,o,a,c,p;if(e)for(t=vc(r,e),i=t.next;!(s=nd(i,t)).done;){if(o=vc(aT(s.value)),a=o.next,(c=nd(a,o)).done||(p=nd(a,o)).done||!nd(a,o).done)throw hT("Expected sequence with length 2");ir(this.entries,{key:pe(c.value),value:pe(p.value)})}else for(var f in r)nT(r,f)&&ir(this.entries,{key:f,value:pe(r[f])})},parseQuery:function(r){if(r)for(var e=hv(r,"&"),t=0,i,s;t<e.length;)i=e[t++],i.length&&(s=hv(i,"="),ir(this.entries,{key:yv(bT(s)),value:yv(fv(s,"="))}))},serialize:function(){for(var r=this.entries,e=[],t=0,i;t<r.length;)i=r[t++],ir(e,bv(i.key)+"="+bv(i.value));return fv(e,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var ad=function(){wv(this,Kn);var e=arguments.length>0?arguments[0]:void 0;Av(this,new Ev(e))},Kn=ad.prototype;tT(Kn,{append:function(e,t){Vr(arguments.length,2);var i=Ve(this);ir(i.entries,{key:pe(e),value:pe(t)}),i.updateURL()},delete:function(r){Vr(arguments.length,1);for(var e=Ve(this),t=e.entries,i=pe(r),s=0;s<t.length;)t[s].key===i?gv(t,s,1):s++;e.updateURL()},get:function(e){Vr(arguments.length,1);for(var t=Ve(this).entries,i=pe(e),s=0;s<t.length;s++)if(t[s].key===i)return t[s].value;return null},getAll:function(e){Vr(arguments.length,1);for(var t=Ve(this).entries,i=pe(e),s=[],o=0;o<t.length;o++)t[o].key===i&&ir(s,t[o].value);return s},has:function(e){Vr(arguments.length,1);for(var t=Ve(this).entries,i=pe(e),s=0;s<t.length;)if(t[s++].key===i)return!0;return!1},set:function(e,t){Vr(arguments.length,1);for(var i=Ve(this),s=i.entries,o=!1,a=pe(e),c=pe(t),p=0,f;p<s.length;p++)f=s[p],f.key===a&&(o?gv(s,p--,1):(o=!0,f.value=c));o||ir(s,{key:a,value:c}),i.updateURL()},sort:function(){var e=Ve(this);cT(e.entries,function(t,i){return t.key>i.key?1:-1}),e.updateURL()},forEach:function(e){for(var t=Ve(this).entries,i=sT(e,arguments.length>1?arguments[1]:void 0),s=0,o;s<t.length;)o=t[s++],i(o.value,o.key,this)},keys:function(){return new fc(this,"keys")},values:function(){return new fc(this,"values")},entries:function(){return new fc(this,"entries")}},{enumerable:!0});Cv(Kn,mT,Kn.entries,{name:"entries"});Cv(Kn,"toString",function(){return Ve(this).serialize()},{enumerable:!0});rT(ad,Xn);hc({global:!0,constructor:!0,forced:!Pv},{URLSearchParams:ad});!Pv&&mc($n)&&(kv=Ye(pv.has),Sv=Ye(pv.set),gc=function(r){if(Iv(r)){var e=r.body,t;if(oT(e)===Xn)return t=r.headers?new $n(r.headers):new $n,kv(t,"content-type")||Sv(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),dT(r,{body:cv(0,pe(e)),headers:cv(0,t)})}return r},mc(mv)&&hc({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return mv(e,arguments.length>1?gc(arguments[1]):{})}}),mc(od)&&(sd=function(e){return wv(this,pc),new od(e,arguments.length>1?gc(arguments[1]):{})},pc.constructor=sd,sd.prototype=pc,hc({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:sd})));var kv,Sv,gc,sd;Rv.exports={URLSearchParams:ad,getState:Ve}});var Kv=h(()=>{"use strict";sh();var AT=jn(),Dc=me(),TT=Xu(),_c=ce(),Ov=td(),Ee=$(),md=tr(),Ie=ph(),ET=Zu(),Lc=Ce(),Nc=yh(),Jr=Nh(),ze=rc(),RT=eu().codeAt,OT=Xh(),at=Dn(),FT=Wn(),MT=ac(),Wv=Sc(),Gv=qr(),LT=Gv.set,pd=Gv.getterFor("URL"),UT=Wv.URLSearchParams,BT=Wv.getState,Zn=_c.URL,Uc=_c.TypeError,fd=_c.parseInt,DT=Math.floor,Fv=Math.pow,Te=Ee("".charAt),Je=Ee(/./.exec),Qn=Ee([].join),_T=Ee(1 .toString),NT=Ee([].pop),Kr=Ee([].push),Mv=Ee("".replace),qT=Ee([].shift),jT=Ee("".split),ts=Ee("".slice),gd=Ee("".toLowerCase),HT=Ee([].unshift),WT="Invalid authority",Pc="Invalid scheme",nr="Invalid host",Lv="Invalid port",Vv=/[a-z]/i,GT=/[\d+-.a-z]/i,Bc=/\d/,VT=/^0x/i,zT=/^[0-7]+$/,JT=/^\d+$/,zv=/^[\da-f]+$/i,$T=/[\0\t\n\r #%/:<>?@[\\\]^|]/,KT=/[\0\t\n\r #/:<>?@[\\\]^|]/,XT=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,ZT=/[\t\n\r]/g,xe,YT=function(r){var e=jT(r,"."),t,i,s,o,a,c,p;if(e.length&&e[e.length-1]==""&&e.length--,t=e.length,t>4)return r;for(i=[],s=0;s<t;s++){if(o=e[s],o=="")return r;if(a=10,o.length>1&&Te(o,0)=="0"&&(a=Je(VT,o)?16:8,o=ts(o,a==8?1:2)),o==="")c=0;else{if(!Je(a==10?JT:a==8?zT:zv,o))return r;c=fd(o,a)}Kr(i,c)}for(s=0;s<t;s++)if(c=i[s],s==t-1){if(c>=Fv(256,5-t))return null}else if(c>255)return null;for(p=NT(i),s=0;s<i.length;s++)p+=i[s]*Fv(256,3-s);return p},QT=function(r){var e=[0,0,0,0,0,0,0,0],t=0,i=null,s=0,o,a,c,p,f,v,m,k=function(){return Te(r,s)};if(k()==":"){if(Te(r,1)!=":")return;s+=2,t++,i=t}for(;k();){if(t==8)return;if(k()==":"){if(i!==null)return;s++,t++,i=t;continue}for(o=a=0;a<4&&Je(zv,k());)o=o*16+fd(k(),16),s++,a++;if(k()=="."){if(a==0||(s-=a,t>6))return;for(c=0;k();){if(p=null,c>0)if(k()=="."&&c<4)s++;else return;if(!Je(Bc,k()))return;for(;Je(Bc,k());){if(f=fd(k(),10),p===null)p=f;else{if(p==0)return;p=p*10+f}if(p>255)return;s++}e[t]=e[t]*256+p,c++,(c==2||c==4)&&t++}if(c!=4)return;break}else if(k()==":"){if(s++,!k())return}else if(k())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},e0=function(r){for(var e=null,t=1,i=null,s=0,o=0;o<8;o++)r[o]!==0?(s>t&&(e=i,t=s),i=null,s=0):(i===null&&(i=o),++s);return s>t&&(e=i,t=s),e},Yn=function(r){var e,t,i,s;if(typeof r=="number"){for(e=[],t=0;t<4;t++)HT(e,r%256),r=DT(r/256);return Qn(e,".")}else if(typeof r=="object"){for(e="",i=e0(r),t=0;t<8;t++)s&&r[t]===0||(s&&(s=!1),i===t?(e+=t?":":"::",s=!0):(e+=_T(r[t],16),t<7&&(e+=":")));return"["+e+"]"}return r},cd={},Jv=Nc({},cd,{" ":1,'"':1,"<":1,">":1,"`":1}),$v=Nc({},Jv,{"#":1,"?":1,"{":1,"}":1}),Cc=Nc({},$v,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),St=function(r,e){var t=RT(r,0);return t>32&&t<127&&!Lc(e,r)?r:encodeURIComponent(r)},dd={ftp:21,file:null,http:80,https:443,ws:80,wss:443},es=function(r,e){var t;return r.length==2&&Je(Vv,Te(r,0))&&((t=Te(r,1))==":"||!e&&t=="|")},Uv=function(r){var e;return r.length>1&&es(ts(r,0,2))&&(r.length==2||(e=Te(r,2))==="/"||e==="\\"||e==="?"||e==="#")},t0=function(r){return r==="."||gd(r)==="%2e"},r0=function(r){return r=gd(r),r===".."||r==="%2e."||r===".%2e"||r==="%2e%2e"},wc={},Bv={},Ic={},Dv={},_v={},xc={},Nv={},qv={},ld={},ud={},Ac={},Tc={},Ec={},Rc={},jv={},Oc={},$r={},Qe={},Hv={},sr={},ot={},qc=function(r,e,t){var i=at(r),s,o,a;if(e){if(o=this.parse(i),o)throw Uc(o);this.searchParams=null}else{if(t!==void 0&&(s=new qc(t,!0)),o=this.parse(i,null,s),o)throw Uc(o);a=BT(new UT),a.bindURL(this),this.searchParams=a}};qc.prototype={type:"URL",parse:function(r,e,t){var i=this,s=e||wc,o=0,a="",c=!1,p=!1,f=!1,v,m,k,b;for(r=at(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=Mv(r,XT,"")),r=Mv(r,ZT,""),v=Jr(r);o<=v.length;){switch(m=v[o],s){case wc:if(m&&Je(Vv,m))a+=gd(m),s=Bv;else{if(e)return Pc;s=Ic;continue}break;case Bv:if(m&&(Je(GT,m)||m=="+"||m=="-"||m=="."))a+=gd(m);else if(m==":"){if(e&&(i.isSpecial()!=Lc(dd,a)||a=="file"&&(i.includesCredentials()||i.port!==null)||i.scheme=="file"&&!i.host))return;if(i.scheme=a,e){i.isSpecial()&&dd[i.scheme]==i.port&&(i.port=null);return}a="",i.scheme=="file"?s=Rc:i.isSpecial()&&t&&t.scheme==i.scheme?s=Dv:i.isSpecial()?s=qv:v[o+1]=="/"?(s=_v,o++):(i.cannotBeABaseURL=!0,Kr(i.path,""),s=Hv)}else{if(e)return Pc;a="",s=Ic,o=0;continue}break;case Ic:if(!t||t.cannotBeABaseURL&&m!="#")return Pc;if(t.cannotBeABaseURL&&m=="#"){i.scheme=t.scheme,i.path=ze(t.path),i.query=t.query,i.fragment="",i.cannotBeABaseURL=!0,s=ot;break}s=t.scheme=="file"?Rc:xc;continue;case Dv:if(m=="/"&&v[o+1]=="/")s=ld,o++;else{s=xc;continue}break;case _v:if(m=="/"){s=ud;break}else{s=Qe;continue}case xc:if(i.scheme=t.scheme,m==xe)i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.query=t.query;else if(m=="/"||m=="\\"&&i.isSpecial())s=Nv;else if(m=="?")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.query="",s=sr;else if(m=="#")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.query=t.query,i.fragment="",s=ot;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.path.length--,s=Qe;continue}break;case Nv:if(i.isSpecial()&&(m=="/"||m=="\\"))s=ld;else if(m=="/")s=ud;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,s=Qe;continue}break;case qv:if(s=ld,m!="/"||Te(a,o+1)!="/")continue;o++;break;case ld:if(m!="/"&&m!="\\"){s=ud;continue}break;case ud:if(m=="@"){c&&(a="%40"+a),c=!0,k=Jr(a);for(var C=0;C<k.length;C++){var w=k[C];if(w==":"&&!f){f=!0;continue}var x=St(w,Cc);f?i.password+=x:i.username+=x}a=""}else if(m==xe||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(c&&a=="")return WT;o-=Jr(a).length+1,a="",s=Ac}else a+=m;break;case Ac:case Tc:if(e&&i.scheme=="file"){s=Oc;continue}else if(m==":"&&!p){if(a=="")return nr;if(b=i.parseHost(a),b)return b;if(a="",s=Ec,e==Tc)return}else if(m==xe||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(i.isSpecial()&&a=="")return nr;if(e&&a==""&&(i.includesCredentials()||i.port!==null))return;if(b=i.parseHost(a),b)return b;if(a="",s=$r,e)return;continue}else m=="["?p=!0:m=="]"&&(p=!1),a+=m;break;case Ec:if(Je(Bc,m))a+=m;else if(m==xe||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()||e){if(a!=""){var F=fd(a,10);if(F>65535)return Lv;i.port=i.isSpecial()&&F===dd[i.scheme]?null:F,a=""}if(e)return;s=$r;continue}else return Lv;break;case Rc:if(i.scheme="file",m=="/"||m=="\\")s=jv;else if(t&&t.scheme=="file")if(m==xe)i.host=t.host,i.path=ze(t.path),i.query=t.query;else if(m=="?")i.host=t.host,i.path=ze(t.path),i.query="",s=sr;else if(m=="#")i.host=t.host,i.path=ze(t.path),i.query=t.query,i.fragment="",s=ot;else{Uv(Qn(ze(v,o),""))||(i.host=t.host,i.path=ze(t.path),i.shortenPath()),s=Qe;continue}else{s=Qe;continue}break;case jv:if(m=="/"||m=="\\"){s=Oc;break}t&&t.scheme=="file"&&!Uv(Qn(ze(v,o),""))&&(es(t.path[0],!0)?Kr(i.path,t.path[0]):i.host=t.host),s=Qe;continue;case Oc:if(m==xe||m=="/"||m=="\\"||m=="?"||m=="#"){if(!e&&es(a))s=Qe;else if(a==""){if(i.host="",e)return;s=$r}else{if(b=i.parseHost(a),b)return b;if(i.host=="localhost"&&(i.host=""),e)return;a="",s=$r}continue}else a+=m;break;case $r:if(i.isSpecial()){if(s=Qe,m!="/"&&m!="\\")continue}else if(!e&&m=="?")i.query="",s=sr;else if(!e&&m=="#")i.fragment="",s=ot;else if(m!=xe&&(s=Qe,m!="/"))continue;break;case Qe:if(m==xe||m=="/"||m=="\\"&&i.isSpecial()||!e&&(m=="?"||m=="#")){if(r0(a)?(i.shortenPath(),m!="/"&&!(m=="\\"&&i.isSpecial())&&Kr(i.path,"")):t0(a)?m!="/"&&!(m=="\\"&&i.isSpecial())&&Kr(i.path,""):(i.scheme=="file"&&!i.path.length&&es(a)&&(i.host&&(i.host=""),a=Te(a,0)+":"),Kr(i.path,a)),a="",i.scheme=="file"&&(m==xe||m=="?"||m=="#"))for(;i.path.length>1&&i.path[0]==="";)qT(i.path);m=="?"?(i.query="",s=sr):m=="#"&&(i.fragment="",s=ot)}else a+=St(m,$v);break;case Hv:m=="?"?(i.query="",s=sr):m=="#"?(i.fragment="",s=ot):m!=xe&&(i.path[0]+=St(m,cd));break;case sr:!e&&m=="#"?(i.fragment="",s=ot):m!=xe&&(m=="'"&&i.isSpecial()?i.query+="%27":m=="#"?i.query+="%23":i.query+=St(m,cd));break;case ot:m!=xe&&(i.fragment+=St(m,Jv));break}o++}},parseHost:function(r){var e,t,i;if(Te(r,0)=="["){if(Te(r,r.length-1)!="]"||(e=QT(ts(r,1,-1)),!e))return nr;this.host=e}else if(this.isSpecial()){if(r=OT(r),Je($T,r)||(e=YT(r),e===null))return nr;this.host=e}else{if(Je(KT,r))return nr;for(e="",t=Jr(r),i=0;i<t.length;i++)e+=St(t[i],cd);this.host=e}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||this.scheme=="file"},includesCredentials:function(){return this.username!=""||this.password!=""},isSpecial:function(){return Lc(dd,this.scheme)},shortenPath:function(){var r=this.path,e=r.length;e&&(this.scheme!="file"||e!=1||!es(r[0],!0))&&r.length--},serialize:function(){var r=this,e=r.scheme,t=r.username,i=r.password,s=r.host,o=r.port,a=r.path,c=r.query,p=r.fragment,f=e+":";return s!==null?(f+="//",r.includesCredentials()&&(f+=t+(i?":"+i:"")+"@"),f+=Yn(s),o!==null&&(f+=":"+o)):e=="file"&&(f+="//"),f+=r.cannotBeABaseURL?a[0]:a.length?"/"+Qn(a,"/"):"",c!==null&&(f+="?"+c),p!==null&&(f+="#"+p),f},setHref:function(r){var e=this.parse(r);if(e)throw Uc(e);this.searchParams.update()},getOrigin:function(){var r=this.scheme,e=this.port;if(r=="blob")try{return new Xr(r.path[0]).origin}catch{return"null"}return r=="file"||!this.isSpecial()?"null":r+"://"+Yn(this.host)+(e!==null?":"+e:"")},getProtocol:function(){return this.scheme+":"},setProtocol:function(r){this.parse(at(r)+":",wc)},getUsername:function(){return this.username},setUsername:function(r){var e=Jr(at(r));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var t=0;t<e.length;t++)this.username+=St(e[t],Cc)}},getPassword:function(){return this.password},setPassword:function(r){var e=Jr(at(r));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var t=0;t<e.length;t++)this.password+=St(e[t],Cc)}},getHost:function(){var r=this.host,e=this.port;return r===null?"":e===null?Yn(r):Yn(r)+":"+e},setHost:function(r){this.cannotBeABaseURL||this.parse(r,Ac)},getHostname:function(){var r=this.host;return r===null?"":Yn(r)},setHostname:function(r){this.cannotBeABaseURL||this.parse(r,Tc)},getPort:function(){var r=this.port;return r===null?"":at(r)},setPort:function(r){this.cannotHaveUsernamePasswordPort()||(r=at(r),r==""?this.port=null:this.parse(r,Ec))},getPathname:function(){var r=this.path;return this.cannotBeABaseURL?r[0]:r.length?"/"+Qn(r,"/"):""},setPathname:function(r){this.cannotBeABaseURL||(this.path=[],this.parse(r,$r))},getSearch:function(){var r=this.query;return r?"?"+r:""},setSearch:function(r){r=at(r),r==""?this.query=null:(Te(r,0)=="?"&&(r=ts(r,1)),this.query="",this.parse(r,sr)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var r=this.fragment;return r?"#"+r:""},setHash:function(r){if(r=at(r),r==""){this.fragment=null;return}Te(r,0)=="#"&&(r=ts(r,1)),this.fragment="",this.parse(r,ot)},update:function(){this.query=this.searchParams.serialize()||null}};var Xr=function(e){var t=ET(this,Q),i=MT(arguments.length,1)>1?arguments[1]:void 0,s=LT(t,new qc(e,!1,i));Dc||(t.href=s.serialize(),t.origin=s.getOrigin(),t.protocol=s.getProtocol(),t.username=s.getUsername(),t.password=s.getPassword(),t.host=s.getHost(),t.hostname=s.getHostname(),t.port=s.getPort(),t.pathname=s.getPathname(),t.search=s.getSearch(),t.searchParams=s.getSearchParams(),t.hash=s.getHash())},Q=Xr.prototype,Ae=function(r,e){return{get:function(){return pd(this)[r]()},set:e&&function(t){return pd(this)[e](t)},configurable:!0,enumerable:!0}};Dc&&(Ie(Q,"href",Ae("serialize","setHref")),Ie(Q,"origin",Ae("getOrigin")),Ie(Q,"protocol",Ae("getProtocol","setProtocol")),Ie(Q,"username",Ae("getUsername","setUsername")),Ie(Q,"password",Ae("getPassword","setPassword")),Ie(Q,"host",Ae("getHost","setHost")),Ie(Q,"hostname",Ae("getHostname","setHostname")),Ie(Q,"port",Ae("getPort","setPort")),Ie(Q,"pathname",Ae("getPathname","setPathname")),Ie(Q,"search",Ae("getSearch","setSearch")),Ie(Q,"searchParams",Ae("getSearchParams")),Ie(Q,"hash",Ae("getHash","setHash")));md(Q,"toJSON",function(){return pd(this).serialize()},{enumerable:!0});md(Q,"toString",function(){return pd(this).serialize()},{enumerable:!0});Zn&&(Fc=Zn.createObjectURL,Mc=Zn.revokeObjectURL,Fc&&md(Xr,"createObjectURL",Ov(Fc,Zn)),Mc&&md(Xr,"revokeObjectURL",Ov(Mc,Zn)));var Fc,Mc;FT(Xr,"URL");AT({global:!0,constructor:!0,forced:!TT,sham:!Dc},{URL:Xr})});var Xv=h(()=>{Kv()});var Zv=h(()=>{"use strict";var i0=jn(),n0=We();i0({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return n0(URL.prototype.toString,this)}})});var Yv=h(()=>{Sc()});var ey=h((kL,Qv)=>{var s0=ce();Qv.exports=s0});var ry=h((SL,ty)=>{Xv();Zv();Yv();var o0=ey();ty.exports=o0.URL});var pm=h((ND,ab)=>{var gE=Object.prototype.toString;ab.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 kE(e)?"generatorfunction":"function";if(hE(e))return"array";if(CE(e))return"buffer";if(PE(e))return"arguments";if(yE(e))return"date";if(vE(e))return"error";if(bE(e))return"regexp";switch(ob(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(SE(e))return"generator";switch(t=gE.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 ob(r){return typeof r.constructor=="function"?r.constructor.name:null}function hE(r){return Array.isArray?Array.isArray(r):r instanceof Array}function vE(r){return r instanceof Error||typeof r.message=="string"&&r.constructor&&typeof r.constructor.stackTraceLimit=="number"}function yE(r){return r instanceof Date?!0:typeof r.toDateString=="function"&&typeof r.getDate=="function"&&typeof r.setDate=="function"}function bE(r){return r instanceof RegExp?!0:typeof r.flags=="string"&&typeof r.ignoreCase=="boolean"&&typeof r.multiline=="boolean"&&typeof r.global=="boolean"}function kE(r,e){return ob(r)==="GeneratorFunction"}function SE(r){return typeof r.throw=="function"&&typeof r.return=="function"&&typeof r.next=="function"}function PE(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 CE(r){return r.constructor&&typeof r.constructor.isBuffer=="function"?r.constructor.isBuffer(r):!1}});var ub=h((qD,lb)=>{"use strict";var db=Symbol.prototype.valueOf,wE=pm();function IE(r,e){switch(wE(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 EE(r);case"symbol":return RE(r);case"arraybuffer":return AE(r);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return TE(r);case"regexp":return xE(r);case"error":return Object.create(r);default:return r}}function xE(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 AE(r){let e=new r.constructor(r.byteLength);return new Uint8Array(e).set(new Uint8Array(r)),e}function TE(r,e){return new r.constructor(r.buffer,r.byteOffset,r.length)}function EE(r){let e=r.length,t=Buffer.allocUnsafe?Buffer.allocUnsafe(e):Buffer.from(e);return r.copy(t),t}function RE(r){return db?Object(db.call(r)):{}}lb.exports=IE});var mb=h((jD,cb)=>{"use strict";cb.exports=function(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1}});var gb=h((HD,fb)=>{"use strict";var OE=mb();function pb(r){return OE(r)===!0&&Object.prototype.toString.call(r)==="[object Object]"}fb.exports=function(e){var t,i;return!(pb(e)===!1||(t=e.constructor,typeof t!="function")||(i=t.prototype,pb(i)===!1)||i.hasOwnProperty("isPrototypeOf")===!1)}});var vb=h((WD,hb)=>{"use strict";var FE=ub(),ME=pm(),LE=gb();function fm(r,e){switch(ME(r)){case"object":return UE(r,e);case"array":return BE(r,e);default:return FE(r)}}function UE(r,e){if(typeof e=="function")return e(r);if(e||LE(r)){let t=new r.constructor;for(let i in r)t[i]=fm(r[i],e);return t}return r}function BE(r,e){let t=new r.constructor(r.length);for(let i=0;i<r.length;i++)t[i]=fm(r[i],e);return t}hb.exports=fm});var Xd=h((hs,bi)=>{var DE=200,Im="__lodash_hash_undefined__",zd=1,Eb=2,Rb=9007199254740991,Nd="[object Arguments]",ym="[object Array]",_E="[object AsyncFunction]",Ob="[object Boolean]",Fb="[object Date]",Mb="[object Error]",Lb="[object Function]",NE="[object GeneratorFunction]",qd="[object Map]",Ub="[object Number]",qE="[object Null]",yi="[object Object]",yb="[object Promise]",jE="[object Proxy]",Bb="[object RegExp]",jd="[object Set]",Db="[object String]",HE="[object Symbol]",WE="[object Undefined]",bm="[object WeakMap]",_b="[object ArrayBuffer]",Hd="[object DataView]",GE="[object Float32Array]",VE="[object Float64Array]",zE="[object Int8Array]",JE="[object Int16Array]",$E="[object Int32Array]",KE="[object Uint8Array]",XE="[object Uint8ClampedArray]",ZE="[object Uint16Array]",YE="[object Uint32Array]",QE=/[\\^$.*+?()[\]{}|]/g,eR=/^\[object .+?Constructor\]$/,tR=/^(?:0|[1-9]\d*)$/,q={};q[GE]=q[VE]=q[zE]=q[JE]=q[$E]=q[KE]=q[XE]=q[ZE]=q[YE]=!0;q[Nd]=q[ym]=q[_b]=q[Ob]=q[Hd]=q[Fb]=q[Mb]=q[Lb]=q[qd]=q[Ub]=q[yi]=q[Bb]=q[jd]=q[Db]=q[bm]=!1;var Nb=typeof global=="object"&&global&&global.Object===Object&&global,rR=typeof self=="object"&&self&&self.Object===Object&&self,ct=Nb||rR||Function("return this")(),qb=typeof hs=="object"&&hs&&!hs.nodeType&&hs,bb=qb&&typeof bi=="object"&&bi&&!bi.nodeType&&bi,jb=bb&&bb.exports===qb,gm=jb&&Nb.process,kb=function(){try{return gm&&gm.binding&&gm.binding("util")}catch{}}(),Sb=kb&&kb.isTypedArray;function iR(r,e){for(var t=-1,i=r==null?0:r.length,s=0,o=[];++t<i;){var a=r[t];e(a,t,r)&&(o[s++]=a)}return o}function nR(r,e){for(var t=-1,i=e.length,s=r.length;++t<i;)r[s+t]=e[t];return r}function sR(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 oR(r,e){for(var t=-1,i=Array(r);++t<r;)i[t]=e(t);return i}function aR(r){return function(e){return r(e)}}function dR(r,e){return r.has(e)}function lR(r,e){return r?.[e]}function uR(r){var e=-1,t=Array(r.size);return r.forEach(function(i,s){t[++e]=[s,i]}),t}function cR(r,e){return function(t){return r(e(t))}}function mR(r){var e=-1,t=Array(r.size);return r.forEach(function(i){t[++e]=i}),t}var pR=Array.prototype,fR=Function.prototype,Jd=Object.prototype,hm=ct["__core-js_shared__"],Hb=fR.toString,et=Jd.hasOwnProperty,Pb=function(){var r=/[^.]+$/.exec(hm&&hm.keys&&hm.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}(),Wb=Jd.toString,gR=RegExp("^"+Hb.call(et).replace(QE,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Cb=jb?ct.Buffer:void 0,Wd=ct.Symbol,wb=ct.Uint8Array,Gb=Jd.propertyIsEnumerable,hR=pR.splice,fr=Wd?Wd.toStringTag:void 0,Ib=Object.getOwnPropertySymbols,vR=Cb?Cb.isBuffer:void 0,yR=cR(Object.keys,Object),km=ki(ct,"DataView"),vs=ki(ct,"Map"),Sm=ki(ct,"Promise"),Pm=ki(ct,"Set"),Cm=ki(ct,"WeakMap"),ys=ki(Object,"create"),bR=vr(km),kR=vr(vs),SR=vr(Sm),PR=vr(Pm),CR=vr(Cm),xb=Wd?Wd.prototype:void 0,vm=xb?xb.valueOf:void 0;function gr(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 wR(){this.__data__=ys?ys(null):{},this.size=0}function IR(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}function xR(r){var e=this.__data__;if(ys){var t=e[r];return t===Im?void 0:t}return et.call(e,r)?e[r]:void 0}function AR(r){var e=this.__data__;return ys?e[r]!==void 0:et.call(e,r)}function TR(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=ys&&e===void 0?Im:e,this}gr.prototype.clear=wR;gr.prototype.delete=IR;gr.prototype.get=xR;gr.prototype.has=AR;gr.prototype.set=TR;function mt(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 ER(){this.__data__=[],this.size=0}function RR(r){var e=this.__data__,t=$d(e,r);if(t<0)return!1;var i=e.length-1;return t==i?e.pop():hR.call(e,t,1),--this.size,!0}function OR(r){var e=this.__data__,t=$d(e,r);return t<0?void 0:e[t][1]}function FR(r){return $d(this.__data__,r)>-1}function MR(r,e){var t=this.__data__,i=$d(t,r);return i<0?(++this.size,t.push([r,e])):t[i][1]=e,this}mt.prototype.clear=ER;mt.prototype.delete=RR;mt.prototype.get=OR;mt.prototype.has=FR;mt.prototype.set=MR;function hr(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 LR(){this.size=0,this.__data__={hash:new gr,map:new(vs||mt),string:new gr}}function UR(r){var e=Kd(this,r).delete(r);return this.size-=e?1:0,e}function BR(r){return Kd(this,r).get(r)}function DR(r){return Kd(this,r).has(r)}function _R(r,e){var t=Kd(this,r),i=t.size;return t.set(r,e),this.size+=t.size==i?0:1,this}hr.prototype.clear=LR;hr.prototype.delete=UR;hr.prototype.get=BR;hr.prototype.has=DR;hr.prototype.set=_R;function Gd(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new hr;++e<t;)this.add(r[e])}function NR(r){return this.__data__.set(r,Im),this}function qR(r){return this.__data__.has(r)}Gd.prototype.add=Gd.prototype.push=NR;Gd.prototype.has=qR;function Ot(r){var e=this.__data__=new mt(r);this.size=e.size}function jR(){this.__data__=new mt,this.size=0}function HR(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}function WR(r){return this.__data__.get(r)}function GR(r){return this.__data__.has(r)}function VR(r,e){var t=this.__data__;if(t instanceof mt){var i=t.__data__;if(!vs||i.length<DE-1)return i.push([r,e]),this.size=++t.size,this;t=this.__data__=new hr(i)}return t.set(r,e),this.size=t.size,this}Ot.prototype.clear=jR;Ot.prototype.delete=HR;Ot.prototype.get=WR;Ot.prototype.has=GR;Ot.prototype.set=VR;function zR(r,e){var t=Vd(r),i=!t&&aO(r),s=!t&&!i&&wm(r),o=!t&&!i&&!s&&Zb(r),a=t||i||s||o,c=a?oR(r.length,String):[],p=c.length;for(var f in r)(e||et.call(r,f))&&!(a&&(f=="length"||s&&(f=="offset"||f=="parent")||o&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||rO(f,p)))&&c.push(f);return c}function $d(r,e){for(var t=r.length;t--;)if(Jb(r[t][0],e))return t;return-1}function JR(r,e,t){var i=e(r);return Vd(r)?i:nR(i,t(r))}function ks(r){return r==null?r===void 0?WE:qE:fr&&fr in Object(r)?eO(r):oO(r)}function Ab(r){return bs(r)&&ks(r)==Nd}function Vb(r,e,t,i,s){return r===e?!0:r==null||e==null||!bs(r)&&!bs(e)?r!==r&&e!==e:$R(r,e,t,i,Vb,s)}function $R(r,e,t,i,s,o){var a=Vd(r),c=Vd(e),p=a?ym:Rt(r),f=c?ym:Rt(e);p=p==Nd?yi:p,f=f==Nd?yi:f;var v=p==yi,m=f==yi,k=p==f;if(k&&wm(r)){if(!wm(e))return!1;a=!0,v=!1}if(k&&!v)return o||(o=new Ot),a||Zb(r)?zb(r,e,t,i,s,o):YR(r,e,p,t,i,s,o);if(!(t&zd)){var b=v&&et.call(r,"__wrapped__"),C=m&&et.call(e,"__wrapped__");if(b||C){var w=b?r.value():r,x=C?e.value():e;return o||(o=new Ot),s(w,x,t,i,o)}}return k?(o||(o=new Ot),QR(r,e,t,i,s,o)):!1}function KR(r){if(!Xb(r)||nO(r))return!1;var e=$b(r)?gR:eR;return e.test(vr(r))}function XR(r){return bs(r)&&Kb(r.length)&&!!q[ks(r)]}function ZR(r){if(!sO(r))return yR(r);var e=[];for(var t in Object(r))et.call(r,t)&&t!="constructor"&&e.push(t);return e}function zb(r,e,t,i,s,o){var a=t&zd,c=r.length,p=e.length;if(c!=p&&!(a&&p>c))return!1;var f=o.get(r);if(f&&o.get(e))return f==e;var v=-1,m=!0,k=t&Eb?new Gd:void 0;for(o.set(r,e),o.set(e,r);++v<c;){var b=r[v],C=e[v];if(i)var w=a?i(C,b,v,e,r,o):i(b,C,v,r,e,o);if(w!==void 0){if(w)continue;m=!1;break}if(k){if(!sR(e,function(x,F){if(!dR(k,F)&&(b===x||s(b,x,t,i,o)))return k.push(F)})){m=!1;break}}else if(!(b===C||s(b,C,t,i,o))){m=!1;break}}return o.delete(r),o.delete(e),m}function YR(r,e,t,i,s,o,a){switch(t){case Hd:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case _b:return!(r.byteLength!=e.byteLength||!o(new wb(r),new wb(e)));case Ob:case Fb:case Ub:return Jb(+r,+e);case Mb:return r.name==e.name&&r.message==e.message;case Bb:case Db:return r==e+"";case qd:var c=uR;case jd:var p=i&zd;if(c||(c=mR),r.size!=e.size&&!p)return!1;var f=a.get(r);if(f)return f==e;i|=Eb,a.set(r,e);var v=zb(c(r),c(e),i,s,o,a);return a.delete(r),v;case HE:if(vm)return vm.call(r)==vm.call(e)}return!1}function QR(r,e,t,i,s,o){var a=t&zd,c=Tb(r),p=c.length,f=Tb(e),v=f.length;if(p!=v&&!a)return!1;for(var m=p;m--;){var k=c[m];if(!(a?k in e:et.call(e,k)))return!1}var b=o.get(r);if(b&&o.get(e))return b==e;var C=!0;o.set(r,e),o.set(e,r);for(var w=a;++m<p;){k=c[m];var x=r[k],F=e[k];if(i)var ue=a?i(F,x,k,e,r,o):i(x,F,k,r,e,o);if(!(ue===void 0?x===F||s(x,F,t,i,o):ue)){C=!1;break}w||(w=k=="constructor")}if(C&&!w){var Ln=r.constructor,xa=e.constructor;Ln!=xa&&"constructor"in r&&"constructor"in e&&!(typeof Ln=="function"&&Ln instanceof Ln&&typeof xa=="function"&&xa instanceof xa)&&(C=!1)}return o.delete(r),o.delete(e),C}function Tb(r){return JR(r,uO,tO)}function Kd(r,e){var t=r.__data__;return iO(e)?t[typeof e=="string"?"string":"hash"]:t.map}function ki(r,e){var t=lR(r,e);return KR(t)?t:void 0}function eO(r){var e=et.call(r,fr),t=r[fr];try{r[fr]=void 0;var i=!0}catch{}var s=Wb.call(r);return i&&(e?r[fr]=t:delete r[fr]),s}var tO=Ib?function(r){return r==null?[]:(r=Object(r),iR(Ib(r),function(e){return Gb.call(r,e)}))}:cO,Rt=ks;(km&&Rt(new km(new ArrayBuffer(1)))!=Hd||vs&&Rt(new vs)!=qd||Sm&&Rt(Sm.resolve())!=yb||Pm&&Rt(new Pm)!=jd||Cm&&Rt(new Cm)!=bm)&&(Rt=function(r){var e=ks(r),t=e==yi?r.constructor:void 0,i=t?vr(t):"";if(i)switch(i){case bR:return Hd;case kR:return qd;case SR:return yb;case PR:return jd;case CR:return bm}return e});function rO(r,e){return e=e??Rb,!!e&&(typeof r=="number"||tR.test(r))&&r>-1&&r%1==0&&r<e}function iO(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}function nO(r){return!!Pb&&Pb in r}function sO(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||Jd;return r===t}function oO(r){return Wb.call(r)}function vr(r){if(r!=null){try{return Hb.call(r)}catch{}try{return r+""}catch{}}return""}function Jb(r,e){return r===e||r!==r&&e!==e}var aO=Ab(function(){return arguments}())?Ab:function(r){return bs(r)&&et.call(r,"callee")&&!Gb.call(r,"callee")},Vd=Array.isArray;function dO(r){return r!=null&&Kb(r.length)&&!$b(r)}var wm=vR||mO;function lO(r,e){return Vb(r,e)}function $b(r){if(!Xb(r))return!1;var e=ks(r);return e==Lb||e==NE||e==_E||e==jE}function Kb(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=Rb}function Xb(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}function bs(r){return r!=null&&typeof r=="object"}var Zb=Sb?aR(Sb):XR;function uO(r){return dO(r)?zR(r):ZR(r)}function cO(){return[]}function mO(){return!1}bi.exports=lO});var OS=h(Pl=>{"use strict";Pl.byteLength=_O;Pl.toByteArray=qO;Pl.fromByteArray=WO;var rt=[],Ne=[],DO=typeof Uint8Array<"u"?Uint8Array:Array,Qm="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Tr=0,ES=Qm.length;Tr<ES;++Tr)rt[Tr]=Qm[Tr],Ne[Qm.charCodeAt(Tr)]=Tr;var Tr,ES;Ne["-".charCodeAt(0)]=62;Ne["_".charCodeAt(0)]=63;function RS(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 _O(r){var e=RS(r),t=e[0],i=e[1];return(t+i)*3/4-i}function NO(r,e,t){return(e+t)*3/4-t}function qO(r){var e,t=RS(r),i=t[0],s=t[1],o=new DO(NO(r,i,s)),a=0,c=s>0?i-4:i,p;for(p=0;p<c;p+=4)e=Ne[r.charCodeAt(p)]<<18|Ne[r.charCodeAt(p+1)]<<12|Ne[r.charCodeAt(p+2)]<<6|Ne[r.charCodeAt(p+3)],o[a++]=e>>16&255,o[a++]=e>>8&255,o[a++]=e&255;return s===2&&(e=Ne[r.charCodeAt(p)]<<2|Ne[r.charCodeAt(p+1)]>>4,o[a++]=e&255),s===1&&(e=Ne[r.charCodeAt(p)]<<10|Ne[r.charCodeAt(p+1)]<<4|Ne[r.charCodeAt(p+2)]>>2,o[a++]=e>>8&255,o[a++]=e&255),o}function jO(r){return rt[r>>18&63]+rt[r>>12&63]+rt[r>>6&63]+rt[r&63]}function HO(r,e,t){for(var i,s=[],o=e;o<t;o+=3)i=(r[o]<<16&16711680)+(r[o+1]<<8&65280)+(r[o+2]&255),s.push(jO(i));return s.join("")}function WO(r){for(var e,t=r.length,i=t%3,s=[],o=16383,a=0,c=t-i;a<c;a+=o)s.push(HO(r,a,a+o>c?c:a+o));return i===1?(e=r[t-1],s.push(rt[e>>2]+rt[e<<4&63]+"==")):i===2&&(e=(r[t-2]<<8)+r[t-1],s.push(rt[e>>10]+rt[e>>4&63]+rt[e<<2&63]+"=")),s.join("")}});var eH=Br(ry(),1);function g(r,e){if(r==null)throw Error(e??"Expected nonnullish value.")}function or(r,e){if(!r)throw Error(e)}var ee;(function(r){r.COMMENT="t1_",r.ACCOUNT="t2_",r.LINK="t3_",r.MESSAGE="t4_",r.SUBREDDIT="t5_",r.AWARD="t6_"})(ee||(ee={}));function Pt(r){return r.startsWith(ee.COMMENT)}function hd(r){return r.startsWith(ee.ACCOUNT)}function ar(r){return r.startsWith(ee.LINK)}function iy(r){return r.startsWith(ee.MESSAGE)}function ny(r){return r.startsWith(ee.SUBREDDIT)}function sy(r){return r.startsWith(ee.AWARD)}function a0(r){or(Pt(r),`Expected comment id to start with ${ee.COMMENT}, got ${r}}`)}function d0(r){or(hd(r),`Expected account id to start with ${ee.ACCOUNT}, got ${r}}`)}function l0(r){or(ar(r),`Expected link id to start with ${ee.LINK}, got ${r}}`)}function u0(r){or(iy(r),`Expected message id to start with ${ee.MESSAGE}, got ${r}}`)}function c0(r){or(ny(r),`Expected subreddit id to start with ${ee.SUBREDDIT}, got ${r}}`)}function m0(r){or(sy(r),`Expected award id to start with ${ee.AWARD}, got ${r}}`)}function Zr(r){return a0(r),r}function te(r){return d0(r),r}function fe(r){return l0(r),r}function p0(r){return u0(r),r}function Re(r){return c0(r),r}function f0(r){return m0(r),r}function ge(r){if(Pt(r))return Zr(r);if(hd(r))return te(r);if(ar(r))return fe(r);if(iy(r))return p0(r);if(ny(r))return Re(r);if(sy(r))return f0(r);throw new Error(`Expected thing id to start with ${Object.values(ee).join(", ")} got ${r}}`)}function jc(r){return Pt(r)}import*as P from"@devvit/protos";var vd=class{constructor(e){}};var Hc=(t=>(t.Installation="installation",t.App="app",t))(Hc||{});function dr(r,e=new Set){for(let t of r){if(t.type==="group"){dr(t.fields,e);continue}let i=t.name;if(e.has(i))throw new Error(`Duplicate field name: ${i}`);e.add(i)}g0(r)}function g0(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 Ct=Object.freeze({INTERVAL:0,FORM:1,STATE:2,CHANNEL:3});var OL=["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","brand-awareness","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 O0,GetFieldsResponse as F0}from"@devvit/protos";import{FormField as lr,FormFieldType as Oe}from"@devvit/protos";function dt(r){return r.map(e=>{switch(e.type){case"string":return h0(e);case"image":return v0(e);case"paragraph":return y0(e);case"number":return b0(e);case"select":return k0(e);case"boolean":return S0(e);case"group":return P0(e);default:throw new Error("Unknown field type.")}})}function h0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.STRING,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{stringConfig:{placeholder:r.placeholder}},fieldId:r.name,fieldType:Oe.STRING,helpText:r.helpText,label:r.label,required:r.required,isSecret:r.isSecret})}function v0(r){return lr.fromPartial({disabled:r.disabled,fieldId:r.name,fieldType:Oe.IMAGE,helpText:r.helpText,label:r.label,required:r.required})}function y0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.PARAGRAPH,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{paragraphConfig:{lineHeight:r.lineHeight,placeholder:r.placeholder}},fieldId:r.name,fieldType:Oe.PARAGRAPH,helpText:r.helpText,label:r.label,required:r.required})}function b0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.NUMBER,numberValue:r.defaultValue},disabled:r.disabled,fieldConfig:{numberConfig:{}},fieldId:r.name,fieldType:Oe.NUMBER,helpText:r.helpText,label:r.label,required:r.required})}function k0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.SELECTION,selectionValue:{values:r.defaultValue}},disabled:r.disabled,fieldConfig:{selectionConfig:{choices:r.options,multiSelect:r.multiSelect}},fieldId:r.name,fieldType:Oe.SELECTION,helpText:r.helpText,label:r.label,required:r.required})}function S0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.BOOLEAN,boolValue:r.defaultValue},disabled:r.disabled,fieldId:r.name,fieldType:Oe.BOOLEAN,helpText:r.helpText,label:r.label})}function P0(r){return lr.fromPartial({fieldType:Oe.GROUP,fieldConfig:{groupConfig:{fields:dt(r.fields)}},label:r.label,helpText:r.helpText})}function L(r,e){u.prototype[r]=e}import{ValidateFormResponse as R0}from"@devvit/protos";import{RealtimeSubscriptionStatus as ay}from"@devvit/protos";var B=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",Debug:"devvit-debug",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",Language:"devvit-accept-language",Timezone:"devvit-accept-timezone",AppDependencies:"devvit-app-dependencies"}),oy;(function(r){r.Blocks="blocks",r.EmitSnapshots="emitSnapshots",r.EmitState="emitState",r.Realtime="realtime",r.Runtime="runtime",r.Surface="surface",r.UseAsync="useAsync"})(oy||(oy={}));function dy(r){function e(t){let s=r.currentHookIndex,o=r.getCurrentComponentState(),a=r.getPreviousComponentState(),c=r.metadata[B.App]?.values[0];g(c,"useChannel - app is missing from Context");let p=r.metadata[B.Installation]?.values[0];g(p,"useChannel - installation is missing from Context");async function f(x){let F=o[s].channel;if(o[s].active)if(o[s].connected)await r.realtime.send(F,x);else throw Error(`Failed to send to channel '${F}'; it is active but not yet connected`);else throw Error(`Cannot send a message over inactive channel: ${F}`)}function v(){if(!o[s].active){let x=o[s].channel;o[s].active=!0,r.addRealtimeChannel(x)}}function m(){if(o[s].active){let x=o[s].channel;o[s].active=!1,r.removeRealtimeChannel(x)}}function k(x){return async()=>{let F;switch(x.status){case ay.REALTIME_SUBSCRIBED:o[s].connected=!0,F=t.onSubscribed?.();break;case ay.REALTIME_UNSUBSCRIBED:o[s].connected=!1,F=t.onUnsubscribed?.();break;default:F=t.onMessage(x.event?.data??{});break}await F}}let b={channel:`${c}:${p}:${t.name}`,active:!1,connected:!1,preventCallback:!1,type:Ct.CHANNEL};s in o?b=o[s]:s in a&&(b=a[s]);let C=r.realtimeEvent;r.isInitialRender?b.active=!1:C&&b.active&&C.event.channel===b.channel&&(b.preventCallback||r.runHook(k(C)),r.rerenderIn(0)),o[s]=b,r.currentHookIndex++;let w=0;return b.active&&b.connected?w=2:b.active&&!b.connected?w=1:!b.active&&b.connected?w=3:!b.active&&!b.connected&&(w=4),{subscribe:v,unsubscribe:m,send:f,status:w}}return e}import{FormFieldType as Yr}from"@devvit/protos";function Wc(r){switch(r.fieldType){case Yr.STRING:return r.stringValue;case Yr.IMAGE:return r.stringValue;case Yr.PARAGRAPH:return r.stringValue;case Yr.NUMBER:return r.numberValue;case Yr.BOOLEAN:return r.boolValue;case Yr.SELECTION:return r.selectionValue?.values??[];default:return}}function wt(r){return Object.keys(r).reduce((e,t)=>{let i=Wc(r[t]);return i!==void 0&&(e[t]=i),e},{})}function ly(r){function e(t,i){let s=r.currentHookIndex,o=r.getCurrentComponentKey(),a=r.getCurrentComponentState(),c=r.getPreviousComponentState(),p=`form.hook.${o}.${s}`,f={formKey:p,preventSubmit:!1,type:Ct.FORM};s in a?f=a[s]:s in c&&(f=c[s]),a[s]=f,r.forms.set(p,t);let v=r.formSubmittedEvent;return v&&!f.preventSubmit&&v.formId===p&&r.runHook(async()=>{let m=i(wt(v.results));m&&m instanceof Promise&&await m,r.rerenderIn(0)}),a[s].preventSubmit=!1,r.currentHookIndex++,p}return e}function uy(r){function e(t,i){let s=r.currentHookIndex,o=r.getCurrentComponentState(),a=r.getPreviousComponentState(),c=100,p=Math.max(c,i),f={lastRun:void 0,running:!1,preventCallback:!1,type:Ct.INTERVAL};s in o?f=o[s]:s in a&&(f=a[s]);function v(){i<c&&console.error(`useInterval delay must be at least ${c}ms. Your interval of ${i}ms was automatically extended.`);for(let[k,b]of Object.entries(o))if(k!==s.toString()&&b?.type===Ct.INTERVAL&&b?.running)throw new Error("Only one useInterval hook may be running at a time");o[s]={running:!0,lastRun:o[s]?.lastRun??Date.now(),preventCallback:!1,type:Ct.INTERVAL},r.rerenderIn(p)}function m(){o[s].running=!1,o[s].lastRun=void 0,o[s].preventCallback=!1}return r.isEffectRender&&f.running&&(f.preventCallback||(f.lastRun===void 0||f.lastRun+p<Date.now())&&r.runHook(async()=>{let k=t();k&&k instanceof Promise&&await k,f.lastRun=Date.now()}),r.rerenderIn(p)),f.preventCallback=!1,o[s]=f,r.currentHookIndex++,{start:v,stop:m}}return e}function cy(r){function e(t){let i=r.currentHookIndex,s=r.getCurrentComponentState(),o=r.getPreviousComponentState();if(i in s)return r.currentHookIndex++,[s[i],a];if(r.isInitialRender||!(i in o)){let c=t instanceof Function?t():t;if(c instanceof Promise)throw(async()=>{s[i]=await c,r.currentHookIndex=0})();s[i]=c}else s[i]=o[i];function a(c){if(r.isRendering)throw new Error("Cannot call setState while rendering.");s[i]=c instanceof Function?c(s[i]):c}return r.currentHookIndex++,[s[i],a]}return e}var Jc={now(){return new Date}};function my(r){return`__autocache__${r}`}function py(r){return`__lock__${r}`}var w0=300,I0=1e3,yd=5e3,Gc=3,fy=.1,gy=1e3,x0=3e4;function hy(r){if(r.error)throw new Error(r.error);return r.value}var It,xt,Fe,Qr,kd,vy,Sd,yy,Pd,by,rs,Vc,Cd,ky,wd,Sy,is,zc,Id,Py,bd=class{constructor(e,t,i=Jc){d(this,kd);d(this,Sd);d(this,Pd);d(this,rs);d(this,Cd);d(this,wd);d(this,is);d(this,Id);d(this,It,void 0);d(this,xt,{});d(this,Fe,void 0);d(this,Qr,void 0);l(this,It,e),l(this,Qr,t),l(this,Fe,i)}async cache(e,t){l(this,xt,n(this,Qr).__cache=n(this,Qr).__cache??{}),y(this,Id,Py).call(this,t);let i=y(this,kd,vy).call(this,t.key);if(i!==void 0)return i;let s=await y(this,is,zc).call(this,t.key),o=await y(this,Sd,yy).call(this,t,s,e);return hy(o)}};It=new WeakMap,xt=new WeakMap,Fe=new WeakMap,Qr=new WeakMap,kd=new WeakSet,vy=function(e){let t=n(this,xt)[e];if(t){let i=n(this,Fe).now().getTime(),s=t?.error&&t?.errorTime&&t.errorCount<Gc&&Math.random()<fy&&t.errorTime+gy<i;if(t?.expires&&t.expires<i&&t.checkedAt+gy<i||s){delete n(this,xt)[e];return}else return hy(t)}},Sd=new WeakSet,yy=async function(e,t,i){let s=t?.expires,o=s?y(this,wd,Sy).call(this,s):1;return!t||t?.error&&t.errorCount<Gc&&fy>Math.random()||o>Math.random()?y(this,Pd,by).call(this,e,t,i):t},Pd=new WeakSet,by=async function(e,t,i){let s=py(e.key),o=n(this,Fe).now().getTime(),a=new Date(o+e.ttl/2);if(await n(this,It).set(s,"1",{expiration:a,nx:!0}))return y(this,Cd,ky).call(this,e.key,t,i,e.ttl);if(t)return t;{let p=n(this,Fe).now();return y(this,rs,Vc).call(this,p,e.key,e.ttl)}},rs=new WeakSet,Vc=async function(e,t,i){let s=Math.min(i,I0),o=await y(this,is,zc).call(this,t);if(o)return o;if(n(this,Fe).now().getTime()-e.getTime()>=s)throw new Error(`Cache request timed out trying to get data at key: ${t}`);return await new Promise(a=>setTimeout(a,w0)),y(this,rs,Vc).call(this,e,t,i)},Cd=new WeakSet,ky=async function(e,t,i,s){let o=n(this,Fe).now().getTime()+s;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=n(this,Fe).now().getTime(),t.errorCount++}return n(this,xt)[e]=t,await n(this,It).set(my(e),JSON.stringify(t),{expiration:new Date(o+x0)}),t.error&&t.errorCount<Gc&&await n(this,It).del(py(e)),t},wd=new WeakSet,Sy=function(e){let t=n(this,Fe).now().getTime(),i=e-t;return i<0?1:i<1e3?.1:i<2e3?.01:i<3e3?.001:0},is=new WeakSet,zc=async function(e){let t=await n(this,It).get(my(e));if(t){let i=JSON.parse(t);return i.checkedAt=n(this,Fe).now().getTime(),n(this,xt)[e]=i,i}},Id=new WeakSet,Py=function(e){e.ttl<yd&&(console.warn(`Cache TTL cannot be less than ${yd} milliseconds! Updating ttl value of ${e.ttl} to ${yd}.`),e.ttl=yd)};function Cy(r,e,t=Jc){let i=new bd(r,e,t);return i.cache.bind(i)}var ei,ti,xd,wy,Ad,Iy,ri=class{constructor(){d(this,xd);d(this,Ad);d(this,ei,{});d(this,ti,{});l(this,ei,u.assets),l(this,ti,u.webviewAssets)}getURL(e,t){return typeof e=="string"?y(this,xd,wy).call(this,e,t??{webview:!1}):y(this,Ad,Iy).call(this,e,t??{webview:!1})}};ei=new WeakMap,ti=new WeakMap,xd=new WeakSet,wy=function(e,t){let i=t.webview?n(this,ti)[e]:n(this,ei)[e];if(i)return i;try{return new URL(e.slice(0,e.indexOf(","))),e}catch{return""}},Ad=new WeakSet,Iy=function(e,t){let i={},s=[],o=t.webview?n(this,ti):n(this,ei);if(o)for(let a of e)if(o[a])i[a]=o[a];else try{new URL(a.slice(0,a.indexOf(","))),i[a]=a}catch{s.push(a)}else s=e;if(s.length>0)throw new Error(`The following assets were missing from the assets list: ${s.join(", ")}`);return i};var At,ii=class{constructor(e){d(this,At,void 0);l(this,At,e)}async get(e){let{messages:t}=await u.kvStorePlugin.Get({keys:[e]},n(this,At));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},n(this,At))}async delete(e){await u.kvStorePlugin.Del({keys:[e]},n(this,At))}async list(){let{keys:e}=await u.kvStorePlugin.List({filter:"*"},n(this,At));return e}};At=new WeakMap;var ns,ni=class{constructor(e){d(this,ns,void 0);l(this,ns,e)}async upload(e){let t=await u.mediaPlugin.Upload(e,n(this,ns));if(!t.mediaId)throw new Error("unable to get mediaId via uploads");return Promise.resolve({mediaId:t.mediaId,mediaUrl:t.mediaUrl})}};ns=new WeakMap;var ss,si=class{constructor(e){d(this,ss,void 0);l(this,ss,e)}async add(e){await u.modLogPlugin.Add(e,n(this,ss))}};ss=new WeakMap;var os,oi=class{constructor(e){d(this,os,void 0);l(this,os,e)}async send(e,t){await u.realtimePlugin.Send({channel:e,data:t},n(this,os))}};os=new WeakMap;var S,as,di=class{constructor(e){d(this,S,void 0);d(this,as,void 0);l(this,S,e),l(this,as,new Ed(e))}get modMail(){return n(this,as)}getSubredditById(e){return he.getById(ge(e),n(this,S))}getSubredditByName(e){return he.getByName(e,n(this,S))}addSubredditRemovalReason(e,t){return he.addRemovalReason(e,t.title,t.message,n(this,S))}getSubredditRemovalReasons(e){return he.getRemovalReasons(e,n(this,S))}getCurrentSubreddit(){return he.getFromMetadata(n(this,S))}getPostById(e){return V.getById(ge(e),n(this,S))}submitPost(e){return V.submit(e,n(this,S))}crosspost(e){return V.crosspost(e,n(this,S))}getUserById(e){return I.getById(ge(e),n(this,S))}getCollectionById(e){return ai.getCollectionById({collectionId:e},n(this,S))}createCollection(e){return ai.create(e,n(this,S))}getCollectionsForSubreddit(e){return ai.getCollectionsForSubreddit({subredditId:e},n(this,S))}getUserByUsername(e){return I.getByUsername(e,n(this,S))}getCurrentUser(){return I.getFromMetadata(B.User,n(this,S))}getAppUser(){return I.getFromMetadata(B.AppUser,n(this,S))}getSnoovatarUrl(e){return I.getSnoovatarUrl(e,n(this,S))}getCommentById(e){return X.getById(ge(e),n(this,S))}getComments(e){return X.getComments(e,n(this,S))}getCommentsByUser(e){return X.getCommentsByUser(e,n(this,S))}submitComment(e){return X.submit({...e,id:ge(e.id)},n(this,S))}getControversialPosts(e){return V.getControversialPosts(e,n(this,S))}getTopPosts(e){return V.getTopPosts(e,n(this,S))}getHotPosts(e){return V.getHotPosts(e,n(this,S))}getNewPosts(e){return V.getNewPosts(e,n(this,S))}getRisingPosts(e){return V.getRisingPosts(e,n(this,S))}getPostsByUser(e){return V.getPostsByUser(e,n(this,S))}getCommentsAndPostsByUser(e){return I.getOverview(e,n(this,S))}getModerationLog(e){return Td(e,n(this,S))}getApprovedUsers(e){return I.getSubredditUsersByType({type:"contributors",...e},n(this,S))}approveUser(e,t){return I.createRelationship({username:e,subredditName:t,type:"contributor"},n(this,S))}removeUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"contributor"},n(this,S))}getWikiContributors(e){return I.getSubredditUsersByType({type:"wikicontributors",...e},n(this,S))}addWikiContributor(e,t){return I.createRelationship({username:e,subredditName:t,type:"wikicontributor"},n(this,S))}removeWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikicontributor"},n(this,S))}getBannedUsers(e){return I.getSubredditUsersByType({type:"banned",...e},n(this,S))}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},n(this,S))}unbanUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"banned"},n(this,S))}getBannedWikiContributors(e){return I.getSubredditUsersByType({type:"wikibanned",...e},n(this,S))}banWikiContributor(e){return I.createRelationship({...e,type:"wikibanned"},n(this,S))}unbanWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikibanned"},n(this,S))}getModerators(e){return I.getSubredditUsersByType({type:"moderators",...e},n(this,S))}inviteModerator(e){return I.createRelationship({type:"moderator_invite",subredditName:e.subredditName,username:e.subredditName,permissions:e.permissions??[]},n(this,S))}revokeModeratorInvite(e,t){return I.removeRelationship({username:e,subredditName:t,type:"moderator_invite"},n(this,S))}removeModerator(e,t){return I.removeRelationship({type:"moderator",subredditName:t,username:e},n(this,S))}setModeratorPermissions(e,t,i){return I.setModeratorPermissions(e,t,i,n(this,S))}getMutedUsers(e){return I.getSubredditUsersByType({type:"muted",...e},n(this,S))}muteUser(e){return I.createRelationship({...e,type:"muted"},n(this,S))}unmuteUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"muted"},n(this,S))}getModNotes(e){return Me.get(e,n(this,S))}deleteModNote(e){return Me.delete(e,n(this,S))}addModNote(e){let t={...e,redditId:ge(e.redditId)};return Me.add(t,n(this,S))}addRemovalNote(e){return Me.addRemovalNote(e,n(this,S))}async sendPrivateMessage(e){return ur.send(e,n(this,S))}async sendPrivateMessageAsSubreddit(e){return ur.sendAsSubreddit(e,n(this,S))}async approve(e){if(Pt(e))return X.approve(e,n(this,S));if(ar(e))return V.approve(e,n(this,S));throw new Error("id must start with either t1_ or t3_")}async remove(e,t){if(Pt(e))return X.remove(e,t,n(this,S));if(ar(e))return V.remove(e,t,n(this,S));throw new Error("id must start with either t1_ or t3_")}async getPostFlairTemplates(e){return ae.getPostFlairTemplates(e,n(this,S))}async getUserFlairTemplates(e){return ae.getUserFlairTemplates(e,n(this,S))}async createPostFlairTemplate(e){return ae.createPostFlairTemplate(e,n(this,S))}async createUserFlairTemplate(e){return ae.createUserFlairTemplate(e,n(this,S))}async editFlairTemplate(e){return ae.editFlairTemplate(e,n(this,S))}async deleteFlairTemplate(e,t){return ae.deleteFlairTemplate(e,t,n(this,S))}async setUserFlair(e){return Le.setUserFlair(e,n(this,S))}async removeUserFlair(e,t){return Le.removeUserFlair(e,t,n(this,S))}async setPostFlair(e){return Le.setPostFlair(e,n(this,S))}async removePostFlair(e,t){return Le.removePostFlair(e,fe(t),n(this,S))}async getWidgets(e){return re.getWidgets(e,n(this,S))}async deleteWidget(e,t){return re.delete(e,t,n(this,S))}async addWidget(e){return re.add(e,n(this,S))}async reorderWidgets(e,t){return re.reorder(e,t,n(this,S))}async getWikiPage(e,t){return ve.getPage(e,t,n(this,S))}async getWikiPages(e){return ve.getPages(e,n(this,S))}async createWikiPage(e){return ve.createPage(e,n(this,S))}async updateWikiPage(e){return ve.updatePage(e,n(this,S))}getWikiPageRevisions(e){return ve.getPageRevisions(e,n(this,S))}async revertWikiPage(e,t,i){return ve.revertPage(e,t,i,n(this,S))}async getWikiPageSettings(e,t){return ve.getPageSettings(e,t,n(this,S))}async updateWikiPageSettings(e){return ve.updatePageSettings(e,n(this,S))}async addEditorToWikiPage(e,t,i){return ve.addEditor(e,t,i,n(this,S))}async removeEditorFromWikiPage(e,t,i){return ve.removeEditor(e,t,i,n(this,S))}getMessages(e){return ur.getMessages(e,n(this,S))}markAllMessagesAsRead(){return ur.markAllAsRead(n(this,S))}report(e,t){return u.redditAPIPlugins.LinksAndComments.Report({reason:t.reason,thingId:e.id,srName:e.subredditName,usernames:e.authorName},n(this,S))}getModQueue(e){return he.aboutLocation({...e,location:"modqueue"},n(this,S))}getReports(e){return he.aboutLocation({...e,location:"reports"},n(this,S))}getSpam(e){return he.aboutLocation({...e,location:"spam"},n(this,S))}getUnmoderated(e){return he.aboutLocation({...e,location:"unmoderated"},n(this,S))}getEdited(e){return he.aboutLocation({...e,location:"edited"},n(this,S))}getVaultByAddress(e){return Ty(e,n(this,S))}getVaultByUserId(e){return Ey(ge(e),n(this,S))}getSubredditLeaderboard(e){return Ay(e,n(this,S))}};S=new WeakMap,as=new WeakMap;import{RedisKeyScope as $c}from"@devvit/protos";var E,R,O,Kc=class{constructor(e,t,i){d(this,E,void 0);d(this,R,void 0);d(this,O,void 0);l(this,E,e),l(this,R,t),l(this,O,i)}async get(e){return await n(this,E).Get({key:e,transactionId:n(this,R)},n(this,O)),this}async multi(){await n(this,E).Multi(n(this,R),n(this,O))}async set(e,t,i){let s;return i?.expiration&&(s=Math.floor((i.expiration.getTime()-Date.now())/1e3),s<1&&(s=1)),await n(this,E).Set({key:e,value:t,nx:i?.nx===!0,xx:i?.xx===!0,expiration:s||0,transactionId:n(this,R)},n(this,O)),this}async del(...e){return await n(this,E).Del({keys:e,transactionId:n(this,R)},n(this,O)),this}async type(e){return await n(this,E).Type({key:e,transactionId:n(this,R)},n(this,O)),this}async exec(){let e=await n(this,E).Exec(n(this,R),n(this,O)),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 n(this,E).Discard(n(this,R),n(this,O))}async watch(...e){return await n(this,E).Watch({keys:e,transactionId:n(this,R)},n(this,O)),this}async unwatch(){return await n(this,E).Unwatch(n(this,R),n(this,O)),this}async getRange(e,t,i){return await n(this,E).GetRange({key:e,start:t,end:i,transactionId:n(this,R)},n(this,O)),this}async setRange(e,t,i){return await n(this,E).SetRange({key:e,offset:t,value:i,transactionId:n(this,R)},n(this,O)),this}async strlen(e){return await n(this,E).Strlen({key:e,transactionId:n(this,R)},n(this,O)),this}async mget(e){return await n(this,E).MGet({keys:e,transactionId:n(this,R)},n(this,O)),this}async mset(e){let t=Object.entries(e).map(([i,s])=>({key:i,value:s}));return await n(this,E).MSet({kv:t,transactionId:n(this,R)},n(this,O)),this}async incrBy(e,t){return await n(this,E).IncrBy({key:e,value:t,transactionId:n(this,R)},n(this,O)),this}async expire(e,t){return await n(this,E).Expire({key:e,seconds:t,transactionId:n(this,R)},n(this,O)),this}async expireTime(e){return await n(this,E).ExpireTime({key:e,transactionId:n(this,R)},n(this,O)),this}async zAdd(e,...t){return await n(this,E).ZAdd({key:e,members:t,transactionId:n(this,R)},n(this,O)),this}async zScore(e,t){return await n(this,E).ZScore({key:{key:e,transactionId:n(this,R)},member:t},n(this,O)),this}async zRank(e,t){return await n(this,E).ZRank({key:{key:e,transactionId:n(this,R)},member:t},n(this,O)),this}async zIncrBy(e,t,i){return await n(this,E).ZIncrBy({key:e,member:t,value:i,transactionId:n(this,R)},n(this,O)),this}async zScan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,transactionId:n(this,R)};return await n(this,E).ZScan(o,n(this,O)),this}async zCard(e){return await n(this,E).ZCard({key:e,transactionId:n(this,R)},n(this,O)),this}async zRange(e,t,i,s){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return s?.reverse&&(o.rev=s.reverse),s?.by==="lex"?o.byLex=!0:s?.by==="score"&&(o.byScore=!0),await n(this,E).ZRange({key:{key:e,transactionId:n(this,R)},start:t+"",stop:i+"",...o},n(this,O)),this}async zRem(e,t){return await n(this,E).ZRem({key:{key:e,transactionId:n(this,R)},members:t},n(this,O)),this}async zRemRangeByLex(e,t,i){return await n(this,E).ZRemRangeByLex({key:{key:e,transactionId:n(this,R)},min:t,max:i},n(this,O)),this}async zRemRangeByRank(e,t,i){return await n(this,E).ZRemRangeByRank({key:{key:e,transactionId:n(this,R)},start:t,stop:i},n(this,O)),this}async zRemRangeByScore(e,t,i){return await n(this,E).ZRemRangeByScore({key:{key:e,transactionId:n(this,R)},min:t,max:i},n(this,O)),this}async hgetall(e){return await n(this,E).HGetAll({key:e,transactionId:n(this,R)},n(this,O)),this}async hget(e,t){return await n(this,E).HGet({key:e,field:t,transactionId:n(this,R)},n(this,O)),this}async hset(e,t){let i=Object.entries(t).map(([s,o])=>({field:s,value:o}));return await n(this,E).HSet({key:e,fv:i,transactionId:n(this,R)},n(this,O)),this}async hincrby(e,t,i){return await n(this,E).HIncrBy({key:e,field:t,value:i,transactionId:n(this,R)},n(this,O)),this}async hdel(e,t){return await n(this,E).HDel({key:e,fields:t,transactionId:n(this,R)},n(this,O)),this}async hscan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,transactionId:n(this,R)};return await n(this,E).HScan(o,n(this,O)),this}async hkeys(e){return await n(this,E).HKeys({key:e,transactionId:n(this,R)},n(this,O)),this}async hlen(e){return await n(this,E).HLen({key:e,transactionId:n(this,R)},n(this,O)),this}};E=new WeakMap,R=new WeakMap,O=new WeakMap;var M,li,Xc=class Xc{constructor(e,t=void 0,i=$c.INSTALLATION){d(this,M,void 0);d(this,li,void 0);l(this,M,e),l(this,li,t),this.scope=i,this.global=i===$c.INSTALLATION?new Xc(n(this,M),n(this,li),$c.GLOBAL):this}get storage(){return n(this,li)||u.redisPlugin}async watch(...e){let t=await this.storage.Watch({keys:e},n(this,M));return new Kc(this.storage,t,n(this,M))}async get(e){let t=await this.storage.Get({key:e,scope:this.scope},n(this,M));return t!==null?t.value??void 0:t}async set(e,t,i){let s;return i?.expiration&&(s=Math.floor((i.expiration.getTime()-Date.now())/1e3),s<1&&(s=1)),(await this.storage.Set({key:e,value:t,nx:i?.nx===!0&&!i.xx,xx:i?.xx===!0&&!i.nx,expiration:s||0,scope:this.scope},n(this,M))).value}async del(...e){await this.storage.Del({keys:e,scope:this.scope},n(this,M))}async incrBy(e,t){return(await this.storage.IncrBy({key:e,value:t,scope:this.scope},n(this,M))).value}async getRange(e,t,i){let s=await this.storage.GetRange({key:e,start:t,end:i,scope:this.scope},n(this,M));return s!==null?s.value:s}async setRange(e,t,i){return(await this.storage.SetRange({key:e,offset:t,value:i,scope:this.scope},n(this,M))).value}async strlen(e){return(await this.storage.Strlen({key:e,scope:this.scope},n(this,M))).value}async expire(e,t){await this.storage.Expire({key:e,seconds:t,scope:this.scope},n(this,M))}async expireTime(e){return(await this.storage.ExpireTime({key:e,scope:this.scope},n(this,M))).value}async zAdd(e,...t){return(await this.storage.ZAdd({key:e,members:t,scope:this.scope},n(this,M))).value}async zRange(e,t,i,s){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return s?.reverse&&(o.rev=s.reverse),s?.by==="lex"?o.byLex=!0:s?.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},n(this,M))).members}async zRem(e,t){return(await this.storage.ZRem({key:{key:e},members:t,scope:this.scope},n(this,M))).value}async zRemRangeByLex(e,t,i){return(await this.storage.ZRemRangeByLex({key:{key:e},min:t,max:i,scope:this.scope},n(this,M))).value}async zRemRangeByRank(e,t,i){return(await this.storage.ZRemRangeByRank({key:{key:e},start:t,stop:i,scope:this.scope},n(this,M))).value}async zRemRangeByScore(e,t,i){return(await this.storage.ZRemRangeByScore({key:{key:e},min:t,max:i,scope:this.scope},n(this,M))).value}async zScore(e,t){let i=await this.storage.ZScore({key:{key:e},member:t,scope:this.scope},n(this,M));return i!==null?i.value:i}async zRank(e,t){let i=await this.storage.ZRank({key:{key:e},member:t,scope:this.scope},n(this,M));return i!==null?i.value:i}async zIncrBy(e,t,i){let s=await this.storage.ZIncrBy({key:e,member:t,value:i,scope:this.scope},n(this,M));return s!==null?s.value:s}async mget(e){let t=await this.storage.MGet({keys:e,scope:this.scope},n(this,M));return t!==null?t.values.map(i=>i||null):t}async mset(e){let t=Object.entries(e).map(([i,s])=>({key:i,value:s}));await this.storage.MSet({kv:t,scope:this.scope},n(this,M))}async zCard(e){let t=await this.storage.ZCard({key:e,scope:this.scope},n(this,M));return t!==null?t.value:t}async zScan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,scope:this.scope};return await this.storage.ZScan(o,n(this,M))}async type(e){let t=await this.storage.Type({key:e,scope:this.scope},n(this,M));return t!==null?t.value:t}async hget(e,t){let i=await this.storage.HGet({key:e,field:t,scope:this.scope},n(this,M));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},n(this,M))).value}async hgetall(e){let t=await this.storage.HGetAll({key:e,scope:this.scope},n(this,M));return t!==null?t.fieldValues:t}async hdel(e,t){return(await this.storage.HDel({key:e,fields:t,scope:this.scope},n(this,M))).value}async hscan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,scope:this.scope};return await this.storage.HScan(o,n(this,M))}async hkeys(e){let t=await this.storage.HKeys({key:e,scope:this.scope},n(this,M));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},n(this,M))).value}async hlen(e){return(await this.storage.HLen({key:e,scope:this.scope})).value}};M=new WeakMap,li=new WeakMap;var ui=Xc;var cr,ci=class{constructor(e){d(this,cr,void 0);l(this,cr,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},n(this,cr))).id}async cancelJob(e){await u.schedulerPlugin.Cancel({id:e},n(this,cr))}async listJobs(){return(await u.schedulerPlugin.List({after:new Date(0),before:new Date(Date.now()+31536e7)},n(this,cr))).actions.map(t=>(g(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}))}};cr=new WeakMap;var ds,mi=class{constructor(e){d(this,ds,void 0);l(this,ds,e)}async get(e){return(await this.getAll())[e]}async getAll(){let t=await u.settingsPlugin.GetSettings({},n(this,ds));if(!t.installationSettings)throw new Error("Could not get installation settings");if(!t.appSettings)throw new Error("Could not get app settings");return{...Ry(t.installationSettings.settings,u.installationSettings),...Ry(t.appSettings.settings,u.appSettings)}}};ds=new WeakMap;function Ry(r,e){let t=Object.keys(r).reduce((i,s)=>(i[s]=Wc(r[s]),i),{});return e&&Oy(t,e),t}function Oy(r,e){for(let t of e)t.type==="group"?Oy(r,t.fields):!(t.name in r)&&"defaultValue"in t&&(r[t.name]=t.defaultValue)}import{EffectType as Zc,Form as A0,ToastAppearance as Fy}from"@devvit/protos";var mr,pi,Rd=class{constructor(e){d(this,mr,[]);d(this,pi,void 0);l(this,pi,e)}showForm(e,t){let i=u.formDefinitions.get(e);if(!i&&n(this,pi)){let a=n(this,pi).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 s=i.form instanceof Function?i.form(t??{}):i.form,o=A0.fromPartial({id:e,title:s.title,acceptLabel:s.acceptLabel,cancelLabel:s.cancelLabel,shortDescription:s.description});dr(s.fields),o.fields=dt(s.fields),n(this,mr).push({type:Zc.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?Fy.SUCCESS:Fy.NEUTRAL}:t={text:e},n(this,mr).push({type:Zc.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(),n(this,mr).push({type:Zc.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}get __effects(){return n(this,mr)}};mr=new WeakMap,pi=new WeakMap;function Ue({metadata:r,ui:e,hooks:t,reconciler:i}){let s=new si(r),o=new ii(r),a=new ui(r),c=Cy(a,i?i.state:{}),p=new di(r),f=new ci(r),v=new mi(r),m=e?new Rd(i):void 0,k=new ni(r),b=new ri,C=new oi(r),w=t&&i?cy(i):void 0,x=t&&i?uy(i):void 0,F=t&&i?ly(i):void 0,ue=t&&i?dy(i):void 0;return{modLog:s,kvStore:o,redis:a,reddit:p,scheduler:f,settings:v,media:k,assets:b,realtime:C,get useForm(){return F??(()=>{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 ue??(()=>{throw new Error("useChannel() is unavailable")})},get ui(){if(!m)throw new Error("ui client is not available");return m}}}var My={name:"@devvit/public-api",version:"0.11.0-dev",license:"BSD-3-Clause",repository:{type:"git",url:"https://developers.reddit.com/"},type:"module",exports:{".":"./dist/index.js","./package.json":"./package.json","./*":"./dist/*"},main:"./dist/index.js",files:["dist/**"],scripts:{build:"yarn build:icon-types && yarn build:semantic-colors && tsc && cp -af devvit.tsconfig.json dist/ && yarn build:types && yarn build:min && yarn build:unmin","build:icon-types":"make-icons src/types/icons.ts","build:min":"esbuild --bundle --sourcemap=linked --target=es2020 --format=esm --metafile=dist/meta.min.json --outfile=dist/public-api.min.js --external:@devvit/protos --minify src/index.ts","build:semantic-colors":"node scripts/make-semantic-colors.js","build:types":"api-extractor run && sed -ne '/declare global {/,$ p' src/devvit/Devvit.ts >> dist/public-api.d.ts","build:unmin":"esbuild --bundle --sourcemap=inline --target=es2020 --format=iife --metafile=dist/meta.json --outfile=dist/public-api.iife.js --global-name=devvitPublicAPI src/index.ts",clean:"rm -rf .turbo api-extractor coverage dist src/devvit/internals/semanticColors.ts src/types/icons.ts || :",clobber:"yarn clean && rm -rf node_modules",dev:"tsc -w","dev:build":"chokidar ./src --command 'yarn build' --ignore './src/types/icons.ts' --ignore './src/devvit/internals/semanticColors.ts'",lint:"redlint .","lint:fix":"yarn lint --fix",prepublishOnly:"publish-package-json",test:"yarn test:unit && yarn test:types && yarn test:size","test:size":"filesize","test:types":"tsc --noEmit","test:unit":"vitest run","test:unit-with-coverage":"vitest run --coverage"},types:"./dist/index.d.ts",dependencies:{"@devvit/protos":"0.11.0-dev","@devvit/shared-types":"0.11.0-dev","base64-js":"1.5.1","clone-deep":"4.0.1","core-js":"3.27.2","lodash.isequal":"4.5.0"},devDependencies:{"@ampproject/filesize":"4.3.0","@devvit/eslint-config":"0.11.0-dev","@devvit/repo-tools":"0.11.0-dev","@devvit/tsconfig":"0.11.0-dev","@microsoft/api-extractor":"7.41.0","@reddit/faceplate-ui":"11.3.3","@types/clone-deep":"4.0.1","@types/core-js":"2.5.6","@types/lodash.isequal":"4.5.6","@vitest/coverage-c8":"0.32.0","chokidar-cli":"3.0.0",esbuild:"0.18.12",eslint:"8.9.0",typescript:"5.3.2",vitest:"1.6.0"},publishConfig:{directory:"dist"},filesize:{"dist/public-api.min.js":{gzip:"78 KB",none:"255 KB"}},source:"./src/index.ts"};function de(r,e,t){let i=r[B.Subreddit]?.values[0];g(i,"subreddit is missing from Context");let s=r[B.AppUser]?.values[0];g(s,"appAccountId is missing from Context");let o=r[B.User]?.values[0],a=E0(r);return{appAccountId:s,subredditId:i,userId:o,postId:e,commentId:t,debug:a,toJSON(){return{appAccountId:s,subredditId:i,userId:o,postId:e,commentId:t,debug:a}}}}function E0(r){let e={blocks:void 0,emitSnapshots:void 0,emitState:void 0,realtime:void 0,runtime:void 0,surface:void 0,useAsync:void 0},t={};for(let s in e)t[s.toLowerCase()]=s;let i={};for(let s of(r[B.Debug]?.values??[]).join().split(",")){let[o,a]=s.split("=");o&&(o=o.trim(),a=a?.trim(),o.toLowerCase()in t&&(o=t[o.toLowerCase()]),i[o]??(i[o]=a||`${!0}`))}return r[B.Debug]&&console.info(`[api] @devvit/public-api v${My.version} ${Object.entries(i).map(([s,o])=>`${s}=${o}`).join(" ")}`),{...i,metadata:r}}async function Od(r,e,t){if(!e)throw new Error("Settings were not defined.");let i=R0.fromPartial({success:!0,errors:{}}),s=wt(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=s[c],f=a.onValidate,v=Object.assign(Ue({metadata:t}),de(t)),m=await f({value:p,isEditing:r.editing},v);m&&(i.success=!1,i.errors[c]=m)}})),i}async function M0(){if(!u.appSettings)throw new Error("App settings were not defined.");return F0.fromPartial({fields:{fields:dt(u.appSettings)}})}async function L0(r,e){return Od(r,u.appSettings,e)}function Ly(r){r.provides(O0),L("GetAppSettingsFields",M0),L("ValidateAppForm",L0)}import{CustomPostDefinition as N0}from"@devvit/protos";import{BlockRenderEventType as um,EffectType as Xy}from"@devvit/protos";function fi(r){return r.__effects}function Uy(){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 lm,BlockAnimationDirection as Wy,BlockAnimationLoopMode as Gy,BlockAnimationType as Vy,BlockAvatarBackground as zy,BlockAvatarFacing as Jy,BlockAvatarSize as Tt,BlockBorderWidth as Md,BlockButtonAppearance as Et,BlockButtonSize as em,BlockFullSnooSize as gi,BlockGap as Ld,BlockHorizontalAlignment as tm,BlockIconSize as Ud,BlockImageResizeMode as ls,BlockPadding as us,BlockRadius as cs,BlockSizeUnit as rm,BlockSpacerShape as im,BlockSpacerSize as Bd,BlockStackDirection as nm,BlockTextOutline as sm,BlockTextOverflow as om,BlockTextSize as hi,BlockTextStyle as am,BlockTextWeight as $y,BlockType as Be,BlockVerticalAlignment as dm}from"@devvit/protos";var Yc={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 By={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"},Dy=r=>!!r.match(/^(#[0-9a-fA-F]{3,8}).*/),_y=r=>r in Yc,Qc=r=>r in By,Ny=r=>!!r.match(/^rgba?\(.*/),qy=r=>!!r.match(/^hsla?\(.*/),jy=(r,e="light")=>{if(Qc(r))return Fd(r);let i=Yc[r];return typeof i=="string"?i:i[e]},Fd=r=>By[r]??r,Hy=r=>{let[e,t,i,s]=r.replace(/^rgba?\(|\s+|\)$/g,"").split(",");if(!e||!t||!i)return r;let a=[...[e,t,i].map(p=>parseFloat(p))];if(s){let p=parseFloat(s),f=Math.round(p*255);a.push(f)}return`#${a.map(p=>p.toString(16).padStart(2,"0")).join("")}`};var Ky="data-",U0=new Set(["onPress","onMessage"]),B0=new Map([["onPress",lm.ACTION_CLICK],["onMessage",lm.ACTION_WEBVIEW]]),ms,vi=class{constructor(e=()=>{}){d(this,ms,void 0);l(this,ms,e)}createBlocksElementOrThrow({type:e,props:t,children:i}){let s=this.createBlocksElement({type:e,props:t,children:i});if(!s)throw new Error(`Could not create block of type ${e}`);return s}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 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 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 us.PADDING_NONE;case"xsmall":return us.PADDING_XSMALL;case"small":return us.PADDING_SMALL;case"medium":return us.PADDING_MEDIUM;case"large":return us.PADDING_LARGE}}makeBlockRadius(e){switch(e){case"none":return cs.RADIUS_NONE;case"small":return cs.RADIUS_SMALL;case"medium":return cs.RADIUS_MEDIUM;case"large":return cs.RADIUS_LARGE;case"full":return cs.RADIUS_FULL}}makeBlockGap(e){switch(e){case"none":return Ld.GAP_NONE;case"small":return Ld.GAP_SMALL;case"medium":return Ld.GAP_MEDIUM;case"large":return Ld.GAP_LARGE}}makeBlockAlignment(e){if(e===void 0)return;let t,i;if(e.includes("top")?t=dm.ALIGN_TOP:e.includes("middle")?t=dm.ALIGN_MIDDLE:e.includes("bottom")&&(t=dm.ALIGN_BOTTOM),e.includes("start")?i=tm.ALIGN_START:e.includes("center")?i=tm.ALIGN_CENTER:e.includes("end")&&(i=tm.ALIGN_END),t!==void 0||i!==void 0)return{vertical:t,horizontal:i}}makeBlockBorder(e,t,i,s){if(!e&&!t)return;let o;switch(e){case"none":o=Md.BORDER_WIDTH_NONE;break;case"thin":o=Md.BORDER_WIDTH_THIN;break;case"thick":o=Md.BORDER_WIDTH_THICK;break;default:o=Md.BORDER_WIDTH_THIN;break}let a=t??"neutral-border-weak",c=this.getThemedColors(a,i,s);return{width:o,color:c?.light,colors:c}}makeBlockTextSize(e){switch(e){case"xsmall":return hi.TEXT_SIZE_XSMALL;case"small":return hi.TEXT_SIZE_SMALL;case"medium":return hi.TEXT_SIZE_MEDIUM;case"large":return hi.TEXT_SIZE_LARGE;case"xlarge":return hi.TEXT_SIZE_XLARGE;case"xxlarge":return hi.TEXT_SIZE_XXLARGE}}makeBlockTextStyle(e){switch(e){case"body":return am.TEXT_STYLE_BODY;case"metadata":return am.TEXT_STYLE_METADATA;case"heading":return am.TEXT_STYLE_HEADING}}makeBlockTextOutline(e){switch(e){case"none":return sm.TEXT_OUTLINE_NONE;case"thin":return sm.TEXT_OUTLINE_THIN;case"thick":return sm.TEXT_OUTLINE_THICK}}makeBlockTextWeight(e){switch(e){case"regular":return $y.TEXT_WEIGHT_REGULAR;case"bold":return $y.TEXT_WEIGHT_BOLD}}makeBlockTextOverflow(e){switch(e){case"clip":return om.TEXT_OVERFLOW_CLIP;case"ellipsis":return om.TEXT_OVERFLOW_ELLIPSE}return om.TEXT_OVERFLOW_ELLIPSE}makeBlockButtonAppearance(e){switch(e){case"secondary":return Et.BUTTON_APPEARANCE_SECONDARY;case"primary":return Et.BUTTON_APPEARANCE_PRIMARY;case"plain":return Et.BUTTON_APPEARANCE_PLAIN;case"bordered":return Et.BUTTON_APPEARANCE_BORDERED;case"media":return Et.BUTTON_APPEARANCE_MEDIA;case"destructive":return Et.BUTTON_APPEARANCE_DESTRUCTIVE;case"caution":return Et.BUTTON_APPEARANCE_CAUTION;case"success":return Et.BUTTON_APPEARANCE_SUCCESS}}makeBlockButtonSize(e){switch(e){case"small":return em.BUTTON_SIZE_SMALL;case"medium":return em.BUTTON_SIZE_MEDIUM;case"large":return em.BUTTON_SIZE_LARGE}}makeBlockImageResizeMode(e){switch(e){case"none":return ls.IMAGE_RESIZE_NONE;case"fit":return ls.IMAGE_RESIZE_FIT;case"fill":return ls.IMAGE_RESIZE_FILL;case"cover":return ls.IMAGE_RESIZE_COVER;case"scale-down":return ls.IMAGE_RESIZE_SCALE_DOWN}}makeBlockSpacerSize(e){switch(e){case"xsmall":return Bd.SPACER_XSMALL;case"small":return Bd.SPACER_SMALL;case"medium":return Bd.SPACER_MEDIUM;case"large":return Bd.SPACER_LARGE}}makeBlockSpacerShape(e){switch(e){case"invisible":return im.SPACER_INVISIBLE;case"thin":return im.SPACER_THIN;case"square":return im.SPACER_SQUARE}}makeBlockIconSize(e){switch(e){case"xsmall":return Ud.ICON_SIZE_XSMALL;case"small":return Ud.ICON_SIZE_SMALL;case"medium":return Ud.ICON_SIZE_MEDIUM;case"large":return Ud.ICON_SIZE_LARGE}}makeBlockAvatarSize(e){switch(e){case"xxsmall":return Tt.AVATAR_SIZE_XXSMALL;case"xsmall":return Tt.AVATAR_SIZE_XSMALL;case"small":return Tt.AVATAR_SIZE_SMALL;case"medium":return Tt.AVATAR_SIZE_MEDIUM;case"large":return Tt.AVATAR_SIZE_LARGE;case"xlarge":return Tt.AVATAR_SIZE_XXLARGE;case"xxlarge":return Tt.AVATAR_SIZE_XXLARGE;case"xxxlarge":return Tt.AVATAR_SIZE_XXXLARGE}}makeBlockAvatarFacing(e){switch(e){case"left":return Jy.AVATAR_FACING_LEFT;case"right":return Jy.AVATAR_FACING_RIGHT}}makeBlockFullSnooSize(e){switch(e){case"xsmall":return gi.FULLSNOO_XSMALL;case"small":return gi.FULLSNOO_SMALL;case"medium":return gi.FULLSNOO_MEDIUM;case"large":return gi.FULLSNOO_LARGE;case"xlarge":return gi.FULLSNOO_XLARGE;case"xxlarge":return gi.FULLSNOO_XXLARGE}}makeBlockAvatarBackground(e){switch(e){case"dark":return zy.AVATAR_BG_DARK;case"light":return zy.AVATAR_BG_LIGHT}}makeBlockAnimationType(e){return e==="lottie"||e===void 0?Vy.ANIM_LOTTIE:Vy.UNRECOGNIZED}makeBlockAnimationDirection(e){switch(e){case"backward":return Wy.ANIM_DIR_BACKWARD;case"forward":return Wy.ANIM_DIR_FORWARD}}makeBlockLoopMode(e){switch(e){case"repeat":return Gy.ANIM_LOOP_REPEAT;case"bounce":return Gy.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:s,unit:o}=this.parseSize(e.height)??{};return{width:t,widthUnit:i,height:s,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:rm.SIZE_UNIT_PERCENT};let t=e.match(/^(\d+(?:\.\d+)?)(px|%)?$/);if(t==null)return;let i=rm.SIZE_UNIT_PERCENT;return t?.at(2)==="px"&&(i=rm.SIZE_UNIT_PIXELS),{value:Number.parseFloat(t[1]),unit:i}}getDataSet(e){return Object.keys(e).filter(t=>t.startsWith(Ky)).reduce((t,i)=>(t[i.substring(Ky.length)]=e[i],t),{})}makeActions(e,t){let i=[],s=this.getDataSet(t);return U0.forEach(o=>{if(o in t){let a=t[o];i.push({type:B0.get(o)??lm.UNRECOGNIZED,id:a.toString(),data:s})}}),i}blockColorToHex(e,t="light"){if(e)return e=e.toLowerCase(),Dy(e)?e:_y(e)?jy(e,t):Qc(e)?Fd(e):Ny(e)?Hy(e):qy(e)?e:(console.warn(`Could not parse color: ${e}.`),Fd("red"))}childrenToBlocks(e){return e.flatMap(t=>(typeof t!="string"?this.createBlocksElement(t):void 0)??[])}getThemedColors(e,t,i){let s=this.blockColorToHex(t,"light"),o=this.blockColorToHex(i,"dark"),a=[];if(e&&(!s||!o)){let c=Array.from(e?.matchAll(/[\w#-]+(?:\([\w\t ,.#-]+\))?/g)??[]);a.push(...c.map(p=>p[0]))}return s||(s=this.blockColorToHex(a?.at(0),"light")),o||(o=this.blockColorToHex(a?.at(1)??a?.at(0),"dark")),s||o?{light:s,dark:o}:void 0}parsePixels(e){return typeof e=="string"?Number(e.slice(0,-2)):e}resolveAssetUrl(e,t){return n(this,ms).call(this)?.getURL(e,t)??e}childrenToString(e){return e.map(t=>t.toString()).join("")}makeRoot(e,...t){return this.wrapRoot(e,this.childrenToBlocks(t))}wrapRoot(e,t){return this.makeBlock(Be.BLOCK_ROOT,{},{rootConfig:{children:t,height:this.makeRootHeight(u.customPostType?.height??e?.height??"regular")}})}makeStackBlock(e,t,i){let s=this.getThemedColors(t?.backgroundColor,t?.lightBackgroundColor,t?.darkBackgroundColor);return this.makeBlock(Be.BLOCK_STACK,t,{stackConfig:{alignment:this.makeBlockAlignment(t?.alignment),backgroundColor:s?.light,backgroundColors:s,border:this.makeBlockBorder(t?.border,t?.borderColor,t?.lightBorderColor,t?.darkBorderColor),children:this.childrenToBlocks(i),cornerRadius:this.makeBlockRadius(t?.cornerRadius),direction:e,gap:this.makeBlockGap(t?.gap),padding:this.makeBlockPadding(t?.padding),reverse:t?.reverse}})}makeHStack(e,...t){return this.makeStackBlock(nm.STACK_HORIZONTAL,e,t)}makeVStack(e,...t){return this.makeStackBlock(nm.STACK_VERTICAL,e,t)}makeZStack(e,...t){return this.makeStackBlock(nm.STACK_DEPTH,e,t)}makeText(e,...t){let i=this.getThemedColors(e?.color,e?.lightColor,e?.darkColor);return this.makeBlock(Be.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(Be.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}})}makeImage(e){return e&&this.makeBlock(Be.BLOCK_IMAGE,e,{imageConfig:{description:e?.description,resizeMode:this.makeBlockImageResizeMode(e.resizeMode),url:this.resolveAssetUrl(e.url),width:this.parsePixels(e.imageWidth),height:this.parsePixels(e.imageHeight)}})}makeSpacer(e){return this.makeBlock(Be.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(Be.BLOCK_ICON,e,{iconConfig:{icon:e.name,color:t?.light,colors:t,size:this.makeBlockIconSize(e.size)}})}makeAvatar(e){return e&&this.makeBlock(Be.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(Be.BLOCK_FULLSNOO,e,{fullsnooConfig:{userId:e.userId,facing:this.makeBlockAvatarFacing(e.facing),size:this.makeBlockFullSnooSize(e.size)}})}makeAnimation(e){return e&&this.makeBlock(Be.BLOCK_ANIMATION,e,{animationConfig:{type:this.makeBlockAnimationType(e.type),url:this.resolveAssetUrl(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(Be.BLOCK_WEBVIEW,e,{webviewConfig:{url:this.resolveAssetUrl(e.url,{webview:!0}),state:e.state}})}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}}ensureRootBlock(e){let t=e;if(t.type===Be.BLOCK_ROOT)return t.config?.rootConfig&&u.customPostType?.height&&(t.config.rootConfig.height=this.makeRootHeight(u.customPostType?.height)),t;let i=this.wrapRoot(void 0,[t]);if(!i)throw new Error("Could not create root block");return i}};ms=new WeakMap;function Zy(r){if(typeof r=="string")throw new Error("Root element cannot be a string")}var Yy=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+=Yy(i);return e+=`</${r.type}>`,e};function D0(r){return" ".repeat(r)}function _0(r){let e="",t=0,i=r.split(/>\s*</);for(let s=0;s<i.length;s++){let o=i[s];s===0&&(o=o.trim()),s===i.length-1&&(o=o.trim());let a=o.charAt(0)==="/";a&&t--,e+=D0(t),s!==0&&(e+="<"),e+=o,s!==i.length-1&&(e+=`>
1
+ var qS=Object.create;var sp=Object.defineProperty;var jS=Object.getOwnPropertyDescriptor;var HS=Object.getOwnPropertyNames;var WS=Object.getPrototypeOf,GS=Object.prototype.hasOwnProperty;var h=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var VS=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of HS(e))!GS.call(r,s)&&s!==t&&sp(r,s,{get:()=>e[s],enumerable:!(i=jS(e,s))||i.enumerable});return r};var Br=(r,e,t)=>(t=r!=null?qS(WS(r)):{},VS(e||!r||!r.__esModule?sp(t,"default",{value:r,enumerable:!0}):t,r));var Wl=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var n=(r,e,t)=>(Wl(r,e,"read from private field"),t?t.call(r):e.get(r)),d=(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)},l=(r,e,t,i)=>(Wl(r,e,"write to private field"),i?i.call(r,t):e.set(r,t),t);var y=(r,e,t)=>(Wl(r,e,"access private method"),t);var oe=h((pF,op)=>{op.exports=function(r){try{return!!r()}catch{return!0}}});var Aa=h((fF,ap)=>{var zS=oe();ap.exports=!zS(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var $=h((gF,up)=>{var dp=Aa(),lp=Function.prototype,Gl=lp.call,JS=dp&&lp.bind.bind(Gl,Gl);up.exports=dp?JS:function(r){return function(){return Gl.apply(r,arguments)}}});var mp=h((hF,cp)=>{var $S=Math.ceil,KS=Math.floor;cp.exports=Math.trunc||function(e){var t=+e;return(t>0?KS:$S)(t)}});var Ta=h((vF,pp)=>{var XS=mp();pp.exports=function(r){var e=+r;return e!==e||e===0?0:XS(e)}});var ce=h((yF,fp)=>{var Ea=function(r){return r&&r.Math==Math&&r};fp.exports=Ea(typeof globalThis=="object"&&globalThis)||Ea(typeof window=="object"&&window)||Ea(typeof self=="object"&&self)||Ea(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Dr=h((bF,gp)=>{gp.exports=!1});var Ra=h((kF,vp)=>{var hp=ce(),ZS=Object.defineProperty;vp.exports=function(r,e){try{ZS(hp,r,{value:e,configurable:!0,writable:!0})}catch{hp[r]=e}return e}});var Oa=h((SF,bp)=>{var YS=ce(),QS=Ra(),yp="__core-js_shared__",eP=YS[yp]||QS(yp,{});bp.exports=eP});var Vl=h((PF,Sp)=>{var tP=Dr(),kp=Oa();(Sp.exports=function(r,e){return kp[r]||(kp[r]=e!==void 0?e:{})})("versions",[]).push({version:"3.27.2",mode:tP?"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 Fa=h((CF,Pp)=>{Pp.exports=function(r){return r==null}});var Ma=h((wF,Cp)=>{var rP=Fa(),iP=TypeError;Cp.exports=function(r){if(rP(r))throw iP("Can't call method on "+r);return r}});var Un=h((IF,wp)=>{var nP=Ma(),sP=Object;wp.exports=function(r){return sP(nP(r))}});var Ce=h((xF,Ip)=>{var oP=$(),aP=Un(),dP=oP({}.hasOwnProperty);Ip.exports=Object.hasOwn||function(e,t){return dP(aP(e),t)}});var zl=h((AF,xp)=>{var lP=$(),uP=0,cP=Math.random(),mP=lP(1 .toString);xp.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+mP(++uP+cP,36)}});var Tp=h((TF,Ap)=>{Ap.exports=typeof navigator<"u"&&String(navigator.userAgent)||""});var Up=h((EF,Lp)=>{var Mp=ce(),Jl=Tp(),Ep=Mp.process,Rp=Mp.Deno,Op=Ep&&Ep.versions||Rp&&Rp.version,Fp=Op&&Op.v8,He,La;Fp&&(He=Fp.split("."),La=He[0]>0&&He[0]<4?1:+(He[0]+He[1]));!La&&Jl&&(He=Jl.match(/Edge\/(\d+)/),(!He||He[1]>=74)&&(He=Jl.match(/Chrome\/(\d+)/),He&&(La=+He[1])));Lp.exports=La});var $l=h((RF,Dp)=>{var Bp=Up(),pP=oe();Dp.exports=!!Object.getOwnPropertySymbols&&!pP(function(){var r=Symbol();return!String(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Bp&&Bp<41})});var Kl=h((OF,_p)=>{var fP=$l();_p.exports=fP&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var we=h((FF,qp)=>{var gP=ce(),hP=Vl(),Np=Ce(),vP=zl(),yP=$l(),bP=Kl(),_r=gP.Symbol,Xl=hP("wks"),kP=bP?_r.for||_r:_r&&_r.withoutSetter||vP;qp.exports=function(r){return Np(Xl,r)||(Xl[r]=yP&&Np(_r,r)?_r[r]:kP("Symbol."+r)),Xl[r]}});var Wp=h((MF,Hp)=>{var SP=we(),PP=SP("toStringTag"),jp={};jp[PP]="z";Hp.exports=String(jp)==="[object z]"});var Yl=h((LF,Gp)=>{var Zl=typeof document=="object"&&document.all,CP=typeof Zl>"u"&&Zl!==void 0;Gp.exports={all:Zl,IS_HTMLDDA:CP}});var K=h((UF,zp)=>{var Vp=Yl(),wP=Vp.all;zp.exports=Vp.IS_HTMLDDA?function(r){return typeof r=="function"||r===wP}:function(r){return typeof r=="function"}});var Ua=h((BF,$p)=>{var Jp=$(),IP=Jp({}.toString),xP=Jp("".slice);$p.exports=function(r){return xP(IP(r),8,-1)}});var Bn=h((DF,Kp)=>{var AP=Wp(),TP=K(),Ba=Ua(),EP=we(),RP=EP("toStringTag"),OP=Object,FP=Ba(function(){return arguments}())=="Arguments",MP=function(r,e){try{return r[e]}catch{}};Kp.exports=AP?Ba:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=MP(e=OP(r),RP))=="string"?t:FP?Ba(e):(i=Ba(e))=="Object"&&TP(e.callee)?"Arguments":i}});var Dn=h((_F,Xp)=>{var LP=Bn(),UP=String;Xp.exports=function(r){if(LP(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return UP(r)}});var eu=h((NF,Qp)=>{var Ql=$(),BP=Ta(),DP=Dn(),_P=Ma(),NP=Ql("".charAt),Zp=Ql("".charCodeAt),qP=Ql("".slice),Yp=function(r){return function(e,t){var i=DP(_P(e)),s=BP(t),o=i.length,a,c;return s<0||s>=o?r?"":void 0:(a=Zp(i,s),a<55296||a>56319||s+1===o||(c=Zp(i,s+1))<56320||c>57343?r?NP(i,s):a:r?qP(i,s,s+2):(a-55296<<10)+(c-56320)+65536)}};Qp.exports={codeAt:Yp(!1),charAt:Yp(!0)}});var rf=h((qF,tf)=>{var jP=ce(),HP=K(),ef=jP.WeakMap;tf.exports=HP(ef)&&/native code/.test(String(ef))});var bt=h((jF,of)=>{var nf=K(),sf=Yl(),WP=sf.all;of.exports=sf.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:nf(r)||r===WP}:function(r){return typeof r=="object"?r!==null:nf(r)}});var me=h((HF,af)=>{var GP=oe();af.exports=!GP(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var ru=h((WF,lf)=>{var VP=ce(),df=bt(),tu=VP.document,zP=df(tu)&&df(tu.createElement);lf.exports=function(r){return zP?tu.createElement(r):{}}});var iu=h((GF,uf)=>{var JP=me(),$P=oe(),KP=ru();uf.exports=!JP&&!$P(function(){return Object.defineProperty(KP("div"),"a",{get:function(){return 7}}).a!=7})});var nu=h((VF,cf)=>{var XP=me(),ZP=oe();cf.exports=XP&&ZP(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Xe=h((zF,mf)=>{var YP=bt(),QP=String,eC=TypeError;mf.exports=function(r){if(YP(r))return r;throw eC(QP(r)+" is not an object")}});var We=h((JF,pf)=>{var tC=Aa(),Da=Function.prototype.call;pf.exports=tC?Da.bind(Da):function(){return Da.apply(Da,arguments)}});var _n=h(($F,ff)=>{var su=ce(),rC=K(),iC=function(r){return rC(r)?r:void 0};ff.exports=function(r,e){return arguments.length<2?iC(su[r]):su[r]&&su[r][e]}});var ou=h((KF,gf)=>{var nC=$();gf.exports=nC({}.isPrototypeOf)});var au=h((XF,hf)=>{var sC=_n(),oC=K(),aC=ou(),dC=Kl(),lC=Object;hf.exports=dC?function(r){return typeof r=="symbol"}:function(r){var e=sC("Symbol");return oC(e)&&aC(e.prototype,lC(r))}});var du=h((ZF,vf)=>{var uC=String;vf.exports=function(r){try{return uC(r)}catch{return"Object"}}});var _a=h((YF,yf)=>{var cC=K(),mC=du(),pC=TypeError;yf.exports=function(r){if(cC(r))return r;throw pC(mC(r)+" is not a function")}});var Na=h((QF,bf)=>{var fC=_a(),gC=Fa();bf.exports=function(r,e){var t=r[e];return gC(t)?void 0:fC(t)}});var Sf=h((eM,kf)=>{var lu=We(),uu=K(),cu=bt(),hC=TypeError;kf.exports=function(r,e){var t,i;if(e==="string"&&uu(t=r.toString)&&!cu(i=lu(t,r))||uu(t=r.valueOf)&&!cu(i=lu(t,r))||e!=="string"&&uu(t=r.toString)&&!cu(i=lu(t,r)))return i;throw hC("Can't convert object to primitive value")}});var If=h((tM,wf)=>{var vC=We(),Pf=bt(),Cf=au(),yC=Na(),bC=Sf(),kC=we(),SC=TypeError,PC=kC("toPrimitive");wf.exports=function(r,e){if(!Pf(r)||Cf(r))return r;var t=yC(r,PC),i;if(t){if(e===void 0&&(e="default"),i=vC(t,r,e),!Pf(i)||Cf(i))return i;throw SC("Can't convert object to primitive value")}return e===void 0&&(e="number"),bC(r,e)}});var qa=h((rM,xf)=>{var CC=If(),wC=au();xf.exports=function(r){var e=CC(r,"string");return wC(e)?e:e+""}});var Ze=h(Tf=>{var IC=me(),xC=iu(),AC=nu(),ja=Xe(),Af=qa(),TC=TypeError,mu=Object.defineProperty,EC=Object.getOwnPropertyDescriptor,pu="enumerable",fu="configurable",gu="writable";Tf.f=IC?AC?function(e,t,i){if(ja(e),t=Af(t),ja(i),typeof e=="function"&&t==="prototype"&&"value"in i&&gu in i&&!i[gu]){var s=EC(e,t);s&&s[gu]&&(e[t]=i.value,i={configurable:fu in i?i[fu]:s[fu],enumerable:pu in i?i[pu]:s[pu],writable:!1})}return mu(e,t,i)}:mu:function(e,t,i){if(ja(e),t=Af(t),ja(i),xC)try{return mu(e,t,i)}catch{}if("get"in i||"set"in i)throw TC("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var Nr=h((nM,Ef)=>{Ef.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var Ha=h((sM,Rf)=>{var RC=me(),OC=Ze(),FC=Nr();Rf.exports=RC?function(r,e,t){return OC.f(r,e,FC(1,t))}:function(r,e,t){return r[e]=t,r}});var Wa=h((oM,Ff)=>{var MC=Vl(),LC=zl(),Of=MC("keys");Ff.exports=function(r){return Of[r]||(Of[r]=LC(r))}});var Ga=h((aM,Mf)=>{Mf.exports={}});var qr=h((dM,Bf)=>{var UC=rf(),Uf=ce(),BC=bt(),DC=Ha(),hu=Ce(),vu=Oa(),_C=Wa(),NC=Ga(),Lf="Object already initialized",yu=Uf.TypeError,qC=Uf.WeakMap,Va,Nn,za,jC=function(r){return za(r)?Nn(r):Va(r,{})},HC=function(r){return function(e){var t;if(!BC(e)||(t=Nn(e)).type!==r)throw yu("Incompatible receiver, "+r+" required");return t}};UC||vu.state?(Ge=vu.state||(vu.state=new qC),Ge.get=Ge.get,Ge.has=Ge.has,Ge.set=Ge.set,Va=function(r,e){if(Ge.has(r))throw yu(Lf);return e.facade=r,Ge.set(r,e),e},Nn=function(r){return Ge.get(r)||{}},za=function(r){return Ge.has(r)}):(er=_C("state"),NC[er]=!0,Va=function(r,e){if(hu(r,er))throw yu(Lf);return e.facade=r,DC(r,er,e),e},Nn=function(r){return hu(r,er)?r[er]:{}},za=function(r){return hu(r,er)});var Ge,er;Bf.exports={set:Va,get:Nn,has:za,enforce:jC,getterFor:HC}});var bu=h(Nf=>{"use strict";var Df={}.propertyIsEnumerable,_f=Object.getOwnPropertyDescriptor,WC=_f&&!Df.call({1:2},1);Nf.f=WC?function(e){var t=_f(this,e);return!!t&&t.enumerable}:Df});var Su=h((uM,qf)=>{var GC=$(),VC=oe(),zC=Ua(),ku=Object,JC=GC("".split);qf.exports=VC(function(){return!ku("z").propertyIsEnumerable(0)})?function(r){return zC(r)=="String"?JC(r,""):ku(r)}:ku});var jr=h((cM,jf)=>{var $C=Su(),KC=Ma();jf.exports=function(r){return $C(KC(r))}});var Pu=h(Wf=>{var XC=me(),ZC=We(),YC=bu(),QC=Nr(),ew=jr(),tw=qa(),rw=Ce(),iw=iu(),Hf=Object.getOwnPropertyDescriptor;Wf.f=XC?Hf:function(e,t){if(e=ew(e),t=tw(t),iw)try{return Hf(e,t)}catch{}if(rw(e,t))return QC(!ZC(YC.f,e,t),e[t])}});var Iu=h((pM,Vf)=>{var Cu=me(),nw=Ce(),Gf=Function.prototype,sw=Cu&&Object.getOwnPropertyDescriptor,wu=nw(Gf,"name"),ow=wu&&function(){}.name==="something",aw=wu&&(!Cu||Cu&&sw(Gf,"name").configurable);Vf.exports={EXISTS:wu,PROPER:ow,CONFIGURABLE:aw}});var Au=h((fM,zf)=>{var dw=$(),lw=K(),xu=Oa(),uw=dw(Function.toString);lw(xu.inspectSource)||(xu.inspectSource=function(r){return uw(r)});zf.exports=xu.inspectSource});var Ru=h((gM,Kf)=>{var Eu=$(),cw=oe(),mw=K(),Ja=Ce(),Tu=me(),pw=Iu().CONFIGURABLE,fw=Au(),$f=qr(),gw=$f.enforce,hw=$f.get,Jf=String,$a=Object.defineProperty,vw=Eu("".slice),yw=Eu("".replace),bw=Eu([].join),kw=Tu&&!cw(function(){return $a(function(){},"length",{value:8}).length!==8}),Sw=String(String).split("String"),Pw=Kf.exports=function(r,e,t){vw(Jf(e),0,7)==="Symbol("&&(e="["+yw(Jf(e),/^Symbol\(([^)]*)\)/,"$1")+"]"),t&&t.getter&&(e="get "+e),t&&t.setter&&(e="set "+e),(!Ja(r,"name")||pw&&r.name!==e)&&(Tu?$a(r,"name",{value:e,configurable:!0}):r.name=e),kw&&t&&Ja(t,"arity")&&r.length!==t.arity&&$a(r,"length",{value:t.arity});try{t&&Ja(t,"constructor")&&t.constructor?Tu&&$a(r,"prototype",{writable:!1}):r.prototype&&(r.prototype=void 0)}catch{}var i=gw(r);return Ja(i,"source")||(i.source=bw(Sw,typeof e=="string"?e:"")),r};Function.prototype.toString=Pw(function(){return mw(this)&&hw(this).source||fw(this)},"toString")});var tr=h((hM,Xf)=>{var Cw=K(),ww=Ze(),Iw=Ru(),xw=Ra();Xf.exports=function(r,e,t,i){i||(i={});var s=i.enumerable,o=i.name!==void 0?i.name:e;if(Cw(t)&&Iw(t,o,i),i.global)s?r[e]=t:xw(e,t);else{try{i.unsafe?r[e]&&(s=!0):delete r[e]}catch{}s?r[e]=t:ww.f(r,e,{value:t,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return r}});var Ou=h((vM,Zf)=>{var Aw=Ta(),Tw=Math.max,Ew=Math.min;Zf.exports=function(r,e){var t=Aw(r);return t<0?Tw(t+e,0):Ew(t,e)}});var Qf=h((yM,Yf)=>{var Rw=Ta(),Ow=Math.min;Yf.exports=function(r){return r>0?Ow(Rw(r),9007199254740991):0}});var Ka=h((bM,eg)=>{var Fw=Qf();eg.exports=function(r){return Fw(r.length)}});var ig=h((kM,rg)=>{var Mw=jr(),Lw=Ou(),Uw=Ka(),tg=function(r){return function(e,t,i){var s=Mw(e),o=Uw(s),a=Lw(i,o),c;if(r&&t!=t){for(;o>a;)if(c=s[a++],c!=c)return!0}else for(;o>a;a++)if((r||a in s)&&s[a]===t)return r||a||0;return!r&&-1}};rg.exports={includes:tg(!0),indexOf:tg(!1)}});var Mu=h((SM,sg)=>{var Bw=$(),Fu=Ce(),Dw=jr(),_w=ig().indexOf,Nw=Ga(),ng=Bw([].push);sg.exports=function(r,e){var t=Dw(r),i=0,s=[],o;for(o in t)!Fu(Nw,o)&&Fu(t,o)&&ng(s,o);for(;e.length>i;)Fu(t,o=e[i++])&&(~_w(s,o)||ng(s,o));return s}});var Xa=h((PM,og)=>{og.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var dg=h(ag=>{var qw=Mu(),jw=Xa(),Hw=jw.concat("length","prototype");ag.f=Object.getOwnPropertyNames||function(e){return qw(e,Hw)}});var Lu=h(lg=>{lg.f=Object.getOwnPropertySymbols});var cg=h((IM,ug)=>{var Ww=_n(),Gw=$(),Vw=dg(),zw=Lu(),Jw=Xe(),$w=Gw([].concat);ug.exports=Ww("Reflect","ownKeys")||function(e){var t=Vw.f(Jw(e)),i=zw.f;return i?$w(t,i(e)):t}});var fg=h((xM,pg)=>{var mg=Ce(),Kw=cg(),Xw=Pu(),Zw=Ze();pg.exports=function(r,e,t){for(var i=Kw(e),s=Zw.f,o=Xw.f,a=0;a<i.length;a++){var c=i[a];!mg(r,c)&&!(t&&mg(t,c))&&s(r,c,o(e,c))}}});var hg=h((AM,gg)=>{var Yw=oe(),Qw=K(),eI=/#|\.prototype\./,qn=function(r,e){var t=rI[tI(r)];return t==nI?!0:t==iI?!1:Qw(e)?Yw(e):!!e},tI=qn.normalize=function(r){return String(r).replace(eI,".").toLowerCase()},rI=qn.data={},iI=qn.NATIVE="N",nI=qn.POLYFILL="P";gg.exports=qn});var jn=h((TM,vg)=>{var Uu=ce(),sI=Pu().f,oI=Ha(),aI=tr(),dI=Ra(),lI=fg(),uI=hg();vg.exports=function(r,e){var t=r.target,i=r.global,s=r.stat,o,a,c,p,f,v;if(i?a=Uu:s?a=Uu[t]||dI(t,{}):a=(Uu[t]||{}).prototype,a)for(c in e){if(f=e[c],r.dontCallGetSet?(v=sI(a,c),p=v&&v.value):p=a[c],o=uI(i?c:t+(s?".":"#")+c,r.forced),!o&&p!==void 0){if(typeof f==typeof p)continue;lI(f,p)}(r.sham||p&&p.sham)&&oI(f,"sham",!0),aI(a,c,f,r)}}});var Bu=h((EM,yg)=>{var cI=Mu(),mI=Xa();yg.exports=Object.keys||function(e){return cI(e,mI)}});var kg=h(bg=>{var pI=me(),fI=nu(),gI=Ze(),hI=Xe(),vI=jr(),yI=Bu();bg.f=pI&&!fI?Object.defineProperties:function(e,t){hI(e);for(var i=vI(t),s=yI(t),o=s.length,a=0,c;o>a;)gI.f(e,c=s[a++],i[c]);return e}});var Pg=h((OM,Sg)=>{var bI=_n();Sg.exports=bI("document","documentElement")});var Hn=h((FM,Eg)=>{var kI=Xe(),SI=kg(),Cg=Xa(),PI=Ga(),CI=Pg(),wI=ru(),II=Wa(),wg=">",Ig="<",_u="prototype",Nu="script",Ag=II("IE_PROTO"),Du=function(){},Tg=function(r){return Ig+Nu+wg+r+Ig+"/"+Nu+wg},xg=function(r){r.write(Tg("")),r.close();var e=r.parentWindow.Object;return r=null,e},xI=function(){var r=wI("iframe"),e="java"+Nu+":",t;return r.style.display="none",CI.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(Tg("document.F=Object")),t.close(),t.F},Za,Ya=function(){try{Za=new ActiveXObject("htmlfile")}catch{}Ya=typeof document<"u"?document.domain&&Za?xg(Za):xI():xg(Za);for(var r=Cg.length;r--;)delete Ya[_u][Cg[r]];return Ya()};PI[Ag]=!0;Eg.exports=Object.create||function(e,t){var i;return e!==null?(Du[_u]=kI(e),i=new Du,Du[_u]=null,i[Ag]=e):i=Ya(),t===void 0?i:SI.f(i,t)}});var Og=h((MM,Rg)=>{var AI=oe();Rg.exports=!AI(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var ju=h((LM,Mg)=>{var TI=Ce(),EI=K(),RI=Un(),OI=Wa(),FI=Og(),Fg=OI("IE_PROTO"),qu=Object,MI=qu.prototype;Mg.exports=FI?qu.getPrototypeOf:function(r){var e=RI(r);if(TI(e,Fg))return e[Fg];var t=e.constructor;return EI(t)&&e instanceof t?t.prototype:e instanceof qu?MI:null}});var Vu=h((UM,Bg)=>{"use strict";var LI=oe(),UI=K(),BI=bt(),DI=Hn(),Lg=ju(),_I=tr(),NI=we(),qI=Dr(),Gu=NI("iterator"),Ug=!1,st,Hu,Wu;[].keys&&(Wu=[].keys(),"next"in Wu?(Hu=Lg(Lg(Wu)),Hu!==Object.prototype&&(st=Hu)):Ug=!0);var jI=!BI(st)||LI(function(){var r={};return st[Gu].call(r)!==r});jI?st={}:qI&&(st=DI(st));UI(st[Gu])||_I(st,Gu,function(){return this});Bg.exports={IteratorPrototype:st,BUGGY_SAFARI_ITERATORS:Ug}});var Wn=h((BM,_g)=>{var HI=Ze().f,WI=Ce(),GI=we(),Dg=GI("toStringTag");_g.exports=function(r,e,t){r&&!t&&(r=r.prototype),r&&!WI(r,Dg)&&HI(r,Dg,{configurable:!0,value:e})}});var Hr=h((DM,Ng)=>{Ng.exports={}});var zu=h((_M,qg)=>{"use strict";var VI=Vu().IteratorPrototype,zI=Hn(),JI=Nr(),$I=Wn(),KI=Hr(),XI=function(){return this};qg.exports=function(r,e,t,i){var s=e+" Iterator";return r.prototype=zI(VI,{next:JI(+!i,t)}),$I(r,s,!1,!0),KI[s]=XI,r}});var Hg=h((NM,jg)=>{var ZI=K(),YI=String,QI=TypeError;jg.exports=function(r){if(typeof r=="object"||ZI(r))return r;throw QI("Can't set "+YI(r)+" as a prototype")}});var Gg=h((qM,Wg)=>{var ex=$(),tx=Xe(),rx=Hg();Wg.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=ex(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set),t(e,[]),r=e instanceof Array}catch{}return function(s,o){return tx(s),rx(o),r?t(s,o):s.__proto__=o,s}}():void 0)});var $u=h((jM,eh)=>{"use strict";var ix=jn(),nx=We(),Qa=Dr(),Yg=Iu(),sx=K(),ox=zu(),Vg=ju(),zg=Gg(),ax=Wn(),dx=Ha(),Ju=tr(),lx=we(),Jg=Hr(),Qg=Vu(),ux=Yg.PROPER,cx=Yg.CONFIGURABLE,$g=Qg.IteratorPrototype,ed=Qg.BUGGY_SAFARI_ITERATORS,Gn=lx("iterator"),Kg="keys",Vn="values",Xg="entries",Zg=function(){return this};eh.exports=function(r,e,t,i,s,o,a){ox(t,e,i);var c=function(F){if(F===s&&k)return k;if(!ed&&F in v)return v[F];switch(F){case Kg:return function(){return new t(this,F)};case Vn:return function(){return new t(this,F)};case Xg:return function(){return new t(this,F)}}return function(){return new t(this)}},p=e+" Iterator",f=!1,v=r.prototype,m=v[Gn]||v["@@iterator"]||s&&v[s],k=!ed&&m||c(s),b=e=="Array"&&v.entries||m,C,w,x;if(b&&(C=Vg(b.call(new r)),C!==Object.prototype&&C.next&&(!Qa&&Vg(C)!==$g&&(zg?zg(C,$g):sx(C[Gn])||Ju(C,Gn,Zg)),ax(C,p,!0,!0),Qa&&(Jg[p]=Zg))),ux&&s==Vn&&m&&m.name!==Vn&&(!Qa&&cx?dx(v,"name",Vn):(f=!0,k=function(){return nx(m,this)})),s)if(w={values:c(Vn),keys:o?k:c(Kg),entries:c(Xg)},a)for(x in w)(ed||f||!(x in v))&&Ju(v,x,w[x]);else ix({target:e,proto:!0,forced:ed||f},w);return(!Qa||a)&&v[Gn]!==k&&Ju(v,Gn,k,{name:s}),Jg[e]=k,w}});var Ku=h((HM,th)=>{th.exports=function(r,e){return{value:r,done:e}}});var sh=h(()=>{"use strict";var mx=eu().charAt,px=Dn(),ih=qr(),fx=$u(),rh=Ku(),nh="String Iterator",gx=ih.set,hx=ih.getterFor(nh);fx(String,"String",function(r){gx(this,{type:nh,string:px(r),index:0})},function(){var e=hx(this),t=e.string,i=e.index,s;return i>=t.length?rh(void 0,!0):(s=mx(t,i),e.index+=s.length,rh(s,!1))})});var Xu=h((VM,oh)=>{var vx=oe(),yx=we(),bx=Dr(),kx=yx("iterator");oh.exports=!vx(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,s){e.delete("b"),t+=s+i}),bx&&!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[kx]||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 dh=h((zM,ah)=>{var Sx=Ua(),Px=$();ah.exports=function(r){if(Sx(r)==="Function")return Px(r)}});var td=h((JM,uh)=>{var lh=dh(),Cx=_a(),wx=Aa(),Ix=lh(lh.bind);uh.exports=function(r,e){return Cx(r),e===void 0?r:wx?Ix(r,e):function(){return r.apply(e,arguments)}}});var ph=h(($M,mh)=>{var ch=Ru(),xx=Ze();mh.exports=function(r,e,t){return t.get&&ch(t.get,e,{getter:!0}),t.set&&ch(t.set,e,{setter:!0}),xx.f(r,e,t)}});var Zu=h((KM,fh)=>{var Ax=ou(),Tx=TypeError;fh.exports=function(r,e){if(Ax(e,r))return r;throw Tx("Incorrect invocation")}});var yh=h((XM,vh)=>{"use strict";var gh=me(),Ex=$(),Rx=We(),Ox=oe(),Yu=Bu(),Fx=Lu(),Mx=bu(),Lx=Un(),Ux=Su(),Wr=Object.assign,hh=Object.defineProperty,Bx=Ex([].concat);vh.exports=!Wr||Ox(function(){if(gh&&Wr({b:1},Wr(hh({},"a",{enumerable:!0,get:function(){hh(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(s){e[s]=s}),Wr({},r)[t]!=7||Yu(Wr({},e)).join("")!=i})?function(e,t){for(var i=Lx(e),s=arguments.length,o=1,a=Fx.f,c=Mx.f;s>o;)for(var p=Ux(arguments[o++]),f=a?Bx(Yu(p),a(p)):Yu(p),v=f.length,m=0,k;v>m;)k=f[m++],(!gh||Rx(c,p,k))&&(i[k]=p[k]);return i}:Wr});var Sh=h((ZM,kh)=>{var Dx=We(),bh=Xe(),_x=Na();kh.exports=function(r,e,t){var i,s;bh(r);try{if(i=_x(r,"return"),!i){if(e==="throw")throw t;return t}i=Dx(i,r)}catch(o){s=!0,i=o}if(e==="throw")throw t;if(s)throw i;return bh(i),t}});var Ch=h((YM,Ph)=>{var Nx=Xe(),qx=Sh();Ph.exports=function(r,e,t,i){try{return i?e(Nx(t)[0],t[1]):e(t)}catch(s){qx(r,"throw",s)}}});var Ih=h((QM,wh)=>{var jx=we(),Hx=Hr(),Wx=jx("iterator"),Gx=Array.prototype;wh.exports=function(r){return r!==void 0&&(Hx.Array===r||Gx[Wx]===r)}});var Oh=h((eL,Rh)=>{var Vx=$(),zx=oe(),xh=K(),Jx=Bn(),$x=_n(),Kx=Au(),Ah=function(){},Xx=[],Th=$x("Reflect","construct"),Qu=/^\s*(?:class|function)\b/,Zx=Vx(Qu.exec),Yx=!Qu.exec(Ah),zn=function(e){if(!xh(e))return!1;try{return Th(Ah,Xx,e),!0}catch{return!1}},Eh=function(e){if(!xh(e))return!1;switch(Jx(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Yx||!!Zx(Qu,Kx(e))}catch{return!0}};Eh.sham=!0;Rh.exports=!Th||zx(function(){var r;return zn(zn.call)||!zn(Object)||!zn(function(){r=!0})||r})?Eh:zn});var ec=h((tL,Fh)=>{"use strict";var Qx=qa(),eA=Ze(),tA=Nr();Fh.exports=function(r,e,t){var i=Qx(e);i in r?eA.f(r,i,tA(0,t)):r[i]=t}});var rd=h((rL,Lh)=>{var rA=Bn(),Mh=Na(),iA=Fa(),nA=Hr(),sA=we(),oA=sA("iterator");Lh.exports=function(r){if(!iA(r))return Mh(r,oA)||Mh(r,"@@iterator")||nA[rA(r)]}});var tc=h((iL,Uh)=>{var aA=We(),dA=_a(),lA=Xe(),uA=du(),cA=rd(),mA=TypeError;Uh.exports=function(r,e){var t=arguments.length<2?cA(r):e;if(dA(t))return lA(aA(t,r));throw mA(uA(r)+" is not iterable")}});var Nh=h((nL,_h)=>{"use strict";var pA=td(),fA=We(),gA=Un(),hA=Ch(),vA=Ih(),yA=Oh(),bA=Ka(),Bh=ec(),kA=tc(),SA=rd(),Dh=Array;_h.exports=function(e){var t=gA(e),i=yA(this),s=arguments.length,o=s>1?arguments[1]:void 0,a=o!==void 0;a&&(o=pA(o,s>2?arguments[2]:void 0));var c=SA(t),p=0,f,v,m,k,b,C;if(c&&!(this===Dh&&vA(c)))for(k=kA(t,c),b=k.next,v=i?new this:[];!(m=fA(b,k)).done;p++)C=a?hA(k,o,[m.value,p],!0):m.value,Bh(v,p,C);else for(f=bA(t),v=i?new this(f):Dh(f);f>p;p++)C=a?o(t[p],p):t[p],Bh(v,p,C);return v.length=p,v}});var rc=h((sL,jh)=>{var qh=Ou(),PA=Ka(),CA=ec(),wA=Array,IA=Math.max;jh.exports=function(r,e,t){for(var i=PA(r),s=qh(e,i),o=qh(t===void 0?i:t,i),a=wA(IA(o-s,0)),c=0;s<o;s++,c++)CA(a,c,r[s]);return a.length=c,a}});var Xh=h((oL,Kh)=>{var rr=$(),ic=2147483647,Jn=36,zh=1,oc=26,xA=38,AA=700,TA=72,EA=128,RA="-",OA=/[^\0-\u007E]/,Jh=/[.\u3002\uFF0E\uFF61]/g,Hh="Overflow: input needs wider integers to process",nc=Jn-zh,Wh=RangeError,FA=rr(Jh.exec),Gr=Math.floor,sc=String.fromCharCode,Gh=rr("".charCodeAt),$h=rr([].join),kt=rr([].push),MA=rr("".replace),LA=rr("".split),UA=rr("".toLowerCase),BA=function(r){for(var e=[],t=0,i=r.length;t<i;){var s=Gh(r,t++);if(s>=55296&&s<=56319&&t<i){var o=Gh(r,t++);(o&64512)==56320?kt(e,((s&1023)<<10)+(o&1023)+65536):(kt(e,s),t--)}else kt(e,s)}return e},Vh=function(r){return r+22+75*(r<26)},DA=function(r,e,t){var i=0;for(r=t?Gr(r/AA):r>>1,r+=Gr(r/e);r>nc*oc>>1;)r=Gr(r/nc),i+=Jn;return Gr(i+(nc+1)*r/(r+xA))},_A=function(r){var e=[];r=BA(r);var t=r.length,i=EA,s=0,o=TA,a,c;for(a=0;a<r.length;a++)c=r[a],c<128&&kt(e,sc(c));var p=e.length,f=p;for(p&&kt(e,RA);f<t;){var v=ic;for(a=0;a<r.length;a++)c=r[a],c>=i&&c<v&&(v=c);var m=f+1;if(v-i>Gr((ic-s)/m))throw Wh(Hh);for(s+=(v-i)*m,i=v,a=0;a<r.length;a++){if(c=r[a],c<i&&++s>ic)throw Wh(Hh);if(c==i){for(var k=s,b=Jn;;){var C=b<=o?zh:b>=o+oc?oc:b-o;if(k<C)break;var w=k-C,x=Jn-C;kt(e,sc(Vh(C+w%x))),k=Gr(w/x),b+=Jn}kt(e,sc(Vh(k))),o=DA(s,m,f==p),s=0,f++}}s++,i++}return $h(e,"")};Kh.exports=function(r){var e=[],t=LA(MA(UA(r),Jh,"."),"."),i,s;for(i=0;i<t.length;i++)s=t[i],kt(e,FA(OA,s)?"xn--"+_A(s):s);return $h(e,".")}});var ac=h((aL,Zh)=>{var NA=TypeError;Zh.exports=function(r,e){if(r<e)throw NA("Not enough arguments");return r}});var Qh=h((dL,Yh)=>{var qA=we(),jA=Hn(),HA=Ze().f,dc=qA("unscopables"),lc=Array.prototype;lc[dc]==null&&HA(lc,dc,{configurable:!0,value:jA(null)});Yh.exports=function(r){lc[dc][r]=!0}});var sv=h((lL,nv)=>{"use strict";var WA=jr(),uc=Qh(),ev=Hr(),rv=qr(),GA=Ze().f,VA=$u(),id=Ku(),zA=Dr(),JA=me(),iv="Array Iterator",$A=rv.set,KA=rv.getterFor(iv);nv.exports=VA(Array,"Array",function(r,e){$A(this,{type:iv,target:WA(r),index:0,kind:e})},function(){var r=KA(this),e=r.target,t=r.kind,i=r.index++;return!e||i>=e.length?(r.target=void 0,id(void 0,!0)):t=="keys"?id(i,!1):t=="values"?id(e[i],!1):id([i,e[i]],!1)},"values");var tv=ev.Arguments=ev.Array;uc("keys");uc("values");uc("entries");if(!zA&&JA&&tv.name!=="values")try{GA(tv,"name",{value:"values"})}catch{}});var av=h((uL,ov)=>{var XA=tr();ov.exports=function(r,e,t){for(var i in e)XA(r,i,e[i],t);return r}});var uv=h((cL,lv)=>{var dv=rc(),ZA=Math.floor,cc=function(r,e){var t=r.length,i=ZA(t/2);return t<8?YA(r,e):QA(r,cc(dv(r,0,i),e),cc(dv(r,i),e),e)},YA=function(r,e){for(var t=r.length,i=1,s,o;i<t;){for(o=i,s=r[i];o&&e(r[o-1],s)>0;)r[o]=r[--o];o!==i++&&(r[o]=s)}return r},QA=function(r,e,t,i){for(var s=e.length,o=t.length,a=0,c=0;a<s||c<o;)r[a+c]=a<s&&c<o?i(e[a],t[c])<=0?e[a++]:t[c++]:a<s?e[a++]:t[c++];return r};lv.exports=cc});var Sc=h((mL,Rv)=>{"use strict";sv();var hc=jn(),zr=ce(),nd=We(),Ye=$(),eT=me(),Pv=Xu(),Cv=tr(),tT=av(),rT=Wn(),iT=zu(),bc=qr(),wv=Zu(),mc=K(),nT=Ce(),sT=td(),oT=Bn(),aT=Xe(),Iv=bt(),pe=Dn(),dT=Hn(),cv=Nr(),vc=tc(),lT=rd(),Vr=ac(),uT=we(),cT=uv(),mT=uT("iterator"),Xn="URLSearchParams",xv=Xn+"Iterator",Av=bc.set,Ve=bc.getterFor(Xn),pT=bc.getterFor(xv),fT=Object.getOwnPropertyDescriptor,kc=function(r){if(!eT)return zr[r];var e=fT(zr,r);return e&&e.value},mv=kc("fetch"),od=kc("Request"),$n=kc("Headers"),pc=od&&od.prototype,pv=$n&&$n.prototype,gT=zr.RegExp,hT=zr.TypeError,Tv=zr.decodeURIComponent,vT=zr.encodeURIComponent,yT=Ye("".charAt),fv=Ye([].join),ir=Ye([].push),yc=Ye("".replace),bT=Ye([].shift),gv=Ye([].splice),hv=Ye("".split),kT=Ye("".slice),ST=/\+/g,vv=Array(4),PT=function(r){return vv[r-1]||(vv[r-1]=gT("((?:%[\\da-f]{2}){"+r+"})","gi"))},CT=function(r){try{return Tv(r)}catch{return r}},yv=function(r){var e=yc(r,ST," "),t=4;try{return Tv(e)}catch{for(;t;)e=yc(e,PT(t--),CT);return e}},wT=/[!'()~]|%20/g,IT={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},xT=function(r){return IT[r]},bv=function(r){return yc(vT(r),wT,xT)},fc=iT(function(e,t){Av(this,{type:xv,iterator:vc(Ve(e).entries),kind:t})},"Iterator",function(){var e=pT(this),t=e.kind,i=e.iterator.next(),s=i.value;return i.done||(i.value=t==="keys"?s.key:t==="values"?s.value:[s.key,s.value]),i},!0),Ev=function(r){this.entries=[],this.url=null,r!==void 0&&(Iv(r)?this.parseObject(r):this.parseQuery(typeof r=="string"?yT(r,0)==="?"?kT(r,1):r:pe(r)))};Ev.prototype={type:Xn,bindURL:function(r){this.url=r,this.update()},parseObject:function(r){var e=lT(r),t,i,s,o,a,c,p;if(e)for(t=vc(r,e),i=t.next;!(s=nd(i,t)).done;){if(o=vc(aT(s.value)),a=o.next,(c=nd(a,o)).done||(p=nd(a,o)).done||!nd(a,o).done)throw hT("Expected sequence with length 2");ir(this.entries,{key:pe(c.value),value:pe(p.value)})}else for(var f in r)nT(r,f)&&ir(this.entries,{key:f,value:pe(r[f])})},parseQuery:function(r){if(r)for(var e=hv(r,"&"),t=0,i,s;t<e.length;)i=e[t++],i.length&&(s=hv(i,"="),ir(this.entries,{key:yv(bT(s)),value:yv(fv(s,"="))}))},serialize:function(){for(var r=this.entries,e=[],t=0,i;t<r.length;)i=r[t++],ir(e,bv(i.key)+"="+bv(i.value));return fv(e,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var ad=function(){wv(this,Kn);var e=arguments.length>0?arguments[0]:void 0;Av(this,new Ev(e))},Kn=ad.prototype;tT(Kn,{append:function(e,t){Vr(arguments.length,2);var i=Ve(this);ir(i.entries,{key:pe(e),value:pe(t)}),i.updateURL()},delete:function(r){Vr(arguments.length,1);for(var e=Ve(this),t=e.entries,i=pe(r),s=0;s<t.length;)t[s].key===i?gv(t,s,1):s++;e.updateURL()},get:function(e){Vr(arguments.length,1);for(var t=Ve(this).entries,i=pe(e),s=0;s<t.length;s++)if(t[s].key===i)return t[s].value;return null},getAll:function(e){Vr(arguments.length,1);for(var t=Ve(this).entries,i=pe(e),s=[],o=0;o<t.length;o++)t[o].key===i&&ir(s,t[o].value);return s},has:function(e){Vr(arguments.length,1);for(var t=Ve(this).entries,i=pe(e),s=0;s<t.length;)if(t[s++].key===i)return!0;return!1},set:function(e,t){Vr(arguments.length,1);for(var i=Ve(this),s=i.entries,o=!1,a=pe(e),c=pe(t),p=0,f;p<s.length;p++)f=s[p],f.key===a&&(o?gv(s,p--,1):(o=!0,f.value=c));o||ir(s,{key:a,value:c}),i.updateURL()},sort:function(){var e=Ve(this);cT(e.entries,function(t,i){return t.key>i.key?1:-1}),e.updateURL()},forEach:function(e){for(var t=Ve(this).entries,i=sT(e,arguments.length>1?arguments[1]:void 0),s=0,o;s<t.length;)o=t[s++],i(o.value,o.key,this)},keys:function(){return new fc(this,"keys")},values:function(){return new fc(this,"values")},entries:function(){return new fc(this,"entries")}},{enumerable:!0});Cv(Kn,mT,Kn.entries,{name:"entries"});Cv(Kn,"toString",function(){return Ve(this).serialize()},{enumerable:!0});rT(ad,Xn);hc({global:!0,constructor:!0,forced:!Pv},{URLSearchParams:ad});!Pv&&mc($n)&&(kv=Ye(pv.has),Sv=Ye(pv.set),gc=function(r){if(Iv(r)){var e=r.body,t;if(oT(e)===Xn)return t=r.headers?new $n(r.headers):new $n,kv(t,"content-type")||Sv(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),dT(r,{body:cv(0,pe(e)),headers:cv(0,t)})}return r},mc(mv)&&hc({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return mv(e,arguments.length>1?gc(arguments[1]):{})}}),mc(od)&&(sd=function(e){return wv(this,pc),new od(e,arguments.length>1?gc(arguments[1]):{})},pc.constructor=sd,sd.prototype=pc,hc({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:sd})));var kv,Sv,gc,sd;Rv.exports={URLSearchParams:ad,getState:Ve}});var Kv=h(()=>{"use strict";sh();var AT=jn(),Dc=me(),TT=Xu(),_c=ce(),Ov=td(),Ee=$(),md=tr(),Ie=ph(),ET=Zu(),Lc=Ce(),Nc=yh(),Jr=Nh(),ze=rc(),RT=eu().codeAt,OT=Xh(),at=Dn(),FT=Wn(),MT=ac(),Wv=Sc(),Gv=qr(),LT=Gv.set,pd=Gv.getterFor("URL"),UT=Wv.URLSearchParams,BT=Wv.getState,Zn=_c.URL,Uc=_c.TypeError,fd=_c.parseInt,DT=Math.floor,Fv=Math.pow,Te=Ee("".charAt),Je=Ee(/./.exec),Qn=Ee([].join),_T=Ee(1 .toString),NT=Ee([].pop),Kr=Ee([].push),Mv=Ee("".replace),qT=Ee([].shift),jT=Ee("".split),ts=Ee("".slice),gd=Ee("".toLowerCase),HT=Ee([].unshift),WT="Invalid authority",Pc="Invalid scheme",nr="Invalid host",Lv="Invalid port",Vv=/[a-z]/i,GT=/[\d+-.a-z]/i,Bc=/\d/,VT=/^0x/i,zT=/^[0-7]+$/,JT=/^\d+$/,zv=/^[\da-f]+$/i,$T=/[\0\t\n\r #%/:<>?@[\\\]^|]/,KT=/[\0\t\n\r #/:<>?@[\\\]^|]/,XT=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,ZT=/[\t\n\r]/g,xe,YT=function(r){var e=jT(r,"."),t,i,s,o,a,c,p;if(e.length&&e[e.length-1]==""&&e.length--,t=e.length,t>4)return r;for(i=[],s=0;s<t;s++){if(o=e[s],o=="")return r;if(a=10,o.length>1&&Te(o,0)=="0"&&(a=Je(VT,o)?16:8,o=ts(o,a==8?1:2)),o==="")c=0;else{if(!Je(a==10?JT:a==8?zT:zv,o))return r;c=fd(o,a)}Kr(i,c)}for(s=0;s<t;s++)if(c=i[s],s==t-1){if(c>=Fv(256,5-t))return null}else if(c>255)return null;for(p=NT(i),s=0;s<i.length;s++)p+=i[s]*Fv(256,3-s);return p},QT=function(r){var e=[0,0,0,0,0,0,0,0],t=0,i=null,s=0,o,a,c,p,f,v,m,k=function(){return Te(r,s)};if(k()==":"){if(Te(r,1)!=":")return;s+=2,t++,i=t}for(;k();){if(t==8)return;if(k()==":"){if(i!==null)return;s++,t++,i=t;continue}for(o=a=0;a<4&&Je(zv,k());)o=o*16+fd(k(),16),s++,a++;if(k()=="."){if(a==0||(s-=a,t>6))return;for(c=0;k();){if(p=null,c>0)if(k()=="."&&c<4)s++;else return;if(!Je(Bc,k()))return;for(;Je(Bc,k());){if(f=fd(k(),10),p===null)p=f;else{if(p==0)return;p=p*10+f}if(p>255)return;s++}e[t]=e[t]*256+p,c++,(c==2||c==4)&&t++}if(c!=4)return;break}else if(k()==":"){if(s++,!k())return}else if(k())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},e0=function(r){for(var e=null,t=1,i=null,s=0,o=0;o<8;o++)r[o]!==0?(s>t&&(e=i,t=s),i=null,s=0):(i===null&&(i=o),++s);return s>t&&(e=i,t=s),e},Yn=function(r){var e,t,i,s;if(typeof r=="number"){for(e=[],t=0;t<4;t++)HT(e,r%256),r=DT(r/256);return Qn(e,".")}else if(typeof r=="object"){for(e="",i=e0(r),t=0;t<8;t++)s&&r[t]===0||(s&&(s=!1),i===t?(e+=t?":":"::",s=!0):(e+=_T(r[t],16),t<7&&(e+=":")));return"["+e+"]"}return r},cd={},Jv=Nc({},cd,{" ":1,'"':1,"<":1,">":1,"`":1}),$v=Nc({},Jv,{"#":1,"?":1,"{":1,"}":1}),Cc=Nc({},$v,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),St=function(r,e){var t=RT(r,0);return t>32&&t<127&&!Lc(e,r)?r:encodeURIComponent(r)},dd={ftp:21,file:null,http:80,https:443,ws:80,wss:443},es=function(r,e){var t;return r.length==2&&Je(Vv,Te(r,0))&&((t=Te(r,1))==":"||!e&&t=="|")},Uv=function(r){var e;return r.length>1&&es(ts(r,0,2))&&(r.length==2||(e=Te(r,2))==="/"||e==="\\"||e==="?"||e==="#")},t0=function(r){return r==="."||gd(r)==="%2e"},r0=function(r){return r=gd(r),r===".."||r==="%2e."||r===".%2e"||r==="%2e%2e"},wc={},Bv={},Ic={},Dv={},_v={},xc={},Nv={},qv={},ld={},ud={},Ac={},Tc={},Ec={},Rc={},jv={},Oc={},$r={},Qe={},Hv={},sr={},ot={},qc=function(r,e,t){var i=at(r),s,o,a;if(e){if(o=this.parse(i),o)throw Uc(o);this.searchParams=null}else{if(t!==void 0&&(s=new qc(t,!0)),o=this.parse(i,null,s),o)throw Uc(o);a=BT(new UT),a.bindURL(this),this.searchParams=a}};qc.prototype={type:"URL",parse:function(r,e,t){var i=this,s=e||wc,o=0,a="",c=!1,p=!1,f=!1,v,m,k,b;for(r=at(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=Mv(r,XT,"")),r=Mv(r,ZT,""),v=Jr(r);o<=v.length;){switch(m=v[o],s){case wc:if(m&&Je(Vv,m))a+=gd(m),s=Bv;else{if(e)return Pc;s=Ic;continue}break;case Bv:if(m&&(Je(GT,m)||m=="+"||m=="-"||m=="."))a+=gd(m);else if(m==":"){if(e&&(i.isSpecial()!=Lc(dd,a)||a=="file"&&(i.includesCredentials()||i.port!==null)||i.scheme=="file"&&!i.host))return;if(i.scheme=a,e){i.isSpecial()&&dd[i.scheme]==i.port&&(i.port=null);return}a="",i.scheme=="file"?s=Rc:i.isSpecial()&&t&&t.scheme==i.scheme?s=Dv:i.isSpecial()?s=qv:v[o+1]=="/"?(s=_v,o++):(i.cannotBeABaseURL=!0,Kr(i.path,""),s=Hv)}else{if(e)return Pc;a="",s=Ic,o=0;continue}break;case Ic:if(!t||t.cannotBeABaseURL&&m!="#")return Pc;if(t.cannotBeABaseURL&&m=="#"){i.scheme=t.scheme,i.path=ze(t.path),i.query=t.query,i.fragment="",i.cannotBeABaseURL=!0,s=ot;break}s=t.scheme=="file"?Rc:xc;continue;case Dv:if(m=="/"&&v[o+1]=="/")s=ld,o++;else{s=xc;continue}break;case _v:if(m=="/"){s=ud;break}else{s=Qe;continue}case xc:if(i.scheme=t.scheme,m==xe)i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.query=t.query;else if(m=="/"||m=="\\"&&i.isSpecial())s=Nv;else if(m=="?")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.query="",s=sr;else if(m=="#")i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.query=t.query,i.fragment="",s=ot;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,i.path=ze(t.path),i.path.length--,s=Qe;continue}break;case Nv:if(i.isSpecial()&&(m=="/"||m=="\\"))s=ld;else if(m=="/")s=ud;else{i.username=t.username,i.password=t.password,i.host=t.host,i.port=t.port,s=Qe;continue}break;case qv:if(s=ld,m!="/"||Te(a,o+1)!="/")continue;o++;break;case ld:if(m!="/"&&m!="\\"){s=ud;continue}break;case ud:if(m=="@"){c&&(a="%40"+a),c=!0,k=Jr(a);for(var C=0;C<k.length;C++){var w=k[C];if(w==":"&&!f){f=!0;continue}var x=St(w,Cc);f?i.password+=x:i.username+=x}a=""}else if(m==xe||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(c&&a=="")return WT;o-=Jr(a).length+1,a="",s=Ac}else a+=m;break;case Ac:case Tc:if(e&&i.scheme=="file"){s=Oc;continue}else if(m==":"&&!p){if(a=="")return nr;if(b=i.parseHost(a),b)return b;if(a="",s=Ec,e==Tc)return}else if(m==xe||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()){if(i.isSpecial()&&a=="")return nr;if(e&&a==""&&(i.includesCredentials()||i.port!==null))return;if(b=i.parseHost(a),b)return b;if(a="",s=$r,e)return;continue}else m=="["?p=!0:m=="]"&&(p=!1),a+=m;break;case Ec:if(Je(Bc,m))a+=m;else if(m==xe||m=="/"||m=="?"||m=="#"||m=="\\"&&i.isSpecial()||e){if(a!=""){var F=fd(a,10);if(F>65535)return Lv;i.port=i.isSpecial()&&F===dd[i.scheme]?null:F,a=""}if(e)return;s=$r;continue}else return Lv;break;case Rc:if(i.scheme="file",m=="/"||m=="\\")s=jv;else if(t&&t.scheme=="file")if(m==xe)i.host=t.host,i.path=ze(t.path),i.query=t.query;else if(m=="?")i.host=t.host,i.path=ze(t.path),i.query="",s=sr;else if(m=="#")i.host=t.host,i.path=ze(t.path),i.query=t.query,i.fragment="",s=ot;else{Uv(Qn(ze(v,o),""))||(i.host=t.host,i.path=ze(t.path),i.shortenPath()),s=Qe;continue}else{s=Qe;continue}break;case jv:if(m=="/"||m=="\\"){s=Oc;break}t&&t.scheme=="file"&&!Uv(Qn(ze(v,o),""))&&(es(t.path[0],!0)?Kr(i.path,t.path[0]):i.host=t.host),s=Qe;continue;case Oc:if(m==xe||m=="/"||m=="\\"||m=="?"||m=="#"){if(!e&&es(a))s=Qe;else if(a==""){if(i.host="",e)return;s=$r}else{if(b=i.parseHost(a),b)return b;if(i.host=="localhost"&&(i.host=""),e)return;a="",s=$r}continue}else a+=m;break;case $r:if(i.isSpecial()){if(s=Qe,m!="/"&&m!="\\")continue}else if(!e&&m=="?")i.query="",s=sr;else if(!e&&m=="#")i.fragment="",s=ot;else if(m!=xe&&(s=Qe,m!="/"))continue;break;case Qe:if(m==xe||m=="/"||m=="\\"&&i.isSpecial()||!e&&(m=="?"||m=="#")){if(r0(a)?(i.shortenPath(),m!="/"&&!(m=="\\"&&i.isSpecial())&&Kr(i.path,"")):t0(a)?m!="/"&&!(m=="\\"&&i.isSpecial())&&Kr(i.path,""):(i.scheme=="file"&&!i.path.length&&es(a)&&(i.host&&(i.host=""),a=Te(a,0)+":"),Kr(i.path,a)),a="",i.scheme=="file"&&(m==xe||m=="?"||m=="#"))for(;i.path.length>1&&i.path[0]==="";)qT(i.path);m=="?"?(i.query="",s=sr):m=="#"&&(i.fragment="",s=ot)}else a+=St(m,$v);break;case Hv:m=="?"?(i.query="",s=sr):m=="#"?(i.fragment="",s=ot):m!=xe&&(i.path[0]+=St(m,cd));break;case sr:!e&&m=="#"?(i.fragment="",s=ot):m!=xe&&(m=="'"&&i.isSpecial()?i.query+="%27":m=="#"?i.query+="%23":i.query+=St(m,cd));break;case ot:m!=xe&&(i.fragment+=St(m,Jv));break}o++}},parseHost:function(r){var e,t,i;if(Te(r,0)=="["){if(Te(r,r.length-1)!="]"||(e=QT(ts(r,1,-1)),!e))return nr;this.host=e}else if(this.isSpecial()){if(r=OT(r),Je($T,r)||(e=YT(r),e===null))return nr;this.host=e}else{if(Je(KT,r))return nr;for(e="",t=Jr(r),i=0;i<t.length;i++)e+=St(t[i],cd);this.host=e}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||this.scheme=="file"},includesCredentials:function(){return this.username!=""||this.password!=""},isSpecial:function(){return Lc(dd,this.scheme)},shortenPath:function(){var r=this.path,e=r.length;e&&(this.scheme!="file"||e!=1||!es(r[0],!0))&&r.length--},serialize:function(){var r=this,e=r.scheme,t=r.username,i=r.password,s=r.host,o=r.port,a=r.path,c=r.query,p=r.fragment,f=e+":";return s!==null?(f+="//",r.includesCredentials()&&(f+=t+(i?":"+i:"")+"@"),f+=Yn(s),o!==null&&(f+=":"+o)):e=="file"&&(f+="//"),f+=r.cannotBeABaseURL?a[0]:a.length?"/"+Qn(a,"/"):"",c!==null&&(f+="?"+c),p!==null&&(f+="#"+p),f},setHref:function(r){var e=this.parse(r);if(e)throw Uc(e);this.searchParams.update()},getOrigin:function(){var r=this.scheme,e=this.port;if(r=="blob")try{return new Xr(r.path[0]).origin}catch{return"null"}return r=="file"||!this.isSpecial()?"null":r+"://"+Yn(this.host)+(e!==null?":"+e:"")},getProtocol:function(){return this.scheme+":"},setProtocol:function(r){this.parse(at(r)+":",wc)},getUsername:function(){return this.username},setUsername:function(r){var e=Jr(at(r));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var t=0;t<e.length;t++)this.username+=St(e[t],Cc)}},getPassword:function(){return this.password},setPassword:function(r){var e=Jr(at(r));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var t=0;t<e.length;t++)this.password+=St(e[t],Cc)}},getHost:function(){var r=this.host,e=this.port;return r===null?"":e===null?Yn(r):Yn(r)+":"+e},setHost:function(r){this.cannotBeABaseURL||this.parse(r,Ac)},getHostname:function(){var r=this.host;return r===null?"":Yn(r)},setHostname:function(r){this.cannotBeABaseURL||this.parse(r,Tc)},getPort:function(){var r=this.port;return r===null?"":at(r)},setPort:function(r){this.cannotHaveUsernamePasswordPort()||(r=at(r),r==""?this.port=null:this.parse(r,Ec))},getPathname:function(){var r=this.path;return this.cannotBeABaseURL?r[0]:r.length?"/"+Qn(r,"/"):""},setPathname:function(r){this.cannotBeABaseURL||(this.path=[],this.parse(r,$r))},getSearch:function(){var r=this.query;return r?"?"+r:""},setSearch:function(r){r=at(r),r==""?this.query=null:(Te(r,0)=="?"&&(r=ts(r,1)),this.query="",this.parse(r,sr)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var r=this.fragment;return r?"#"+r:""},setHash:function(r){if(r=at(r),r==""){this.fragment=null;return}Te(r,0)=="#"&&(r=ts(r,1)),this.fragment="",this.parse(r,ot)},update:function(){this.query=this.searchParams.serialize()||null}};var Xr=function(e){var t=ET(this,Q),i=MT(arguments.length,1)>1?arguments[1]:void 0,s=LT(t,new qc(e,!1,i));Dc||(t.href=s.serialize(),t.origin=s.getOrigin(),t.protocol=s.getProtocol(),t.username=s.getUsername(),t.password=s.getPassword(),t.host=s.getHost(),t.hostname=s.getHostname(),t.port=s.getPort(),t.pathname=s.getPathname(),t.search=s.getSearch(),t.searchParams=s.getSearchParams(),t.hash=s.getHash())},Q=Xr.prototype,Ae=function(r,e){return{get:function(){return pd(this)[r]()},set:e&&function(t){return pd(this)[e](t)},configurable:!0,enumerable:!0}};Dc&&(Ie(Q,"href",Ae("serialize","setHref")),Ie(Q,"origin",Ae("getOrigin")),Ie(Q,"protocol",Ae("getProtocol","setProtocol")),Ie(Q,"username",Ae("getUsername","setUsername")),Ie(Q,"password",Ae("getPassword","setPassword")),Ie(Q,"host",Ae("getHost","setHost")),Ie(Q,"hostname",Ae("getHostname","setHostname")),Ie(Q,"port",Ae("getPort","setPort")),Ie(Q,"pathname",Ae("getPathname","setPathname")),Ie(Q,"search",Ae("getSearch","setSearch")),Ie(Q,"searchParams",Ae("getSearchParams")),Ie(Q,"hash",Ae("getHash","setHash")));md(Q,"toJSON",function(){return pd(this).serialize()},{enumerable:!0});md(Q,"toString",function(){return pd(this).serialize()},{enumerable:!0});Zn&&(Fc=Zn.createObjectURL,Mc=Zn.revokeObjectURL,Fc&&md(Xr,"createObjectURL",Ov(Fc,Zn)),Mc&&md(Xr,"revokeObjectURL",Ov(Mc,Zn)));var Fc,Mc;FT(Xr,"URL");AT({global:!0,constructor:!0,forced:!TT,sham:!Dc},{URL:Xr})});var Xv=h(()=>{Kv()});var Zv=h(()=>{"use strict";var i0=jn(),n0=We();i0({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return n0(URL.prototype.toString,this)}})});var Yv=h(()=>{Sc()});var ey=h((SL,Qv)=>{var s0=ce();Qv.exports=s0});var ry=h((PL,ty)=>{Xv();Zv();Yv();var o0=ey();ty.exports=o0.URL});var pm=h((qD,ab)=>{var gE=Object.prototype.toString;ab.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 kE(e)?"generatorfunction":"function";if(hE(e))return"array";if(CE(e))return"buffer";if(PE(e))return"arguments";if(yE(e))return"date";if(vE(e))return"error";if(bE(e))return"regexp";switch(ob(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(SE(e))return"generator";switch(t=gE.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 ob(r){return typeof r.constructor=="function"?r.constructor.name:null}function hE(r){return Array.isArray?Array.isArray(r):r instanceof Array}function vE(r){return r instanceof Error||typeof r.message=="string"&&r.constructor&&typeof r.constructor.stackTraceLimit=="number"}function yE(r){return r instanceof Date?!0:typeof r.toDateString=="function"&&typeof r.getDate=="function"&&typeof r.setDate=="function"}function bE(r){return r instanceof RegExp?!0:typeof r.flags=="string"&&typeof r.ignoreCase=="boolean"&&typeof r.multiline=="boolean"&&typeof r.global=="boolean"}function kE(r,e){return ob(r)==="GeneratorFunction"}function SE(r){return typeof r.throw=="function"&&typeof r.return=="function"&&typeof r.next=="function"}function PE(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 CE(r){return r.constructor&&typeof r.constructor.isBuffer=="function"?r.constructor.isBuffer(r):!1}});var ub=h((jD,lb)=>{"use strict";var db=Symbol.prototype.valueOf,wE=pm();function IE(r,e){switch(wE(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 EE(r);case"symbol":return RE(r);case"arraybuffer":return AE(r);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return TE(r);case"regexp":return xE(r);case"error":return Object.create(r);default:return r}}function xE(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 AE(r){let e=new r.constructor(r.byteLength);return new Uint8Array(e).set(new Uint8Array(r)),e}function TE(r,e){return new r.constructor(r.buffer,r.byteOffset,r.length)}function EE(r){let e=r.length,t=Buffer.allocUnsafe?Buffer.allocUnsafe(e):Buffer.from(e);return r.copy(t),t}function RE(r){return db?Object(db.call(r)):{}}lb.exports=IE});var mb=h((HD,cb)=>{"use strict";cb.exports=function(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1}});var gb=h((WD,fb)=>{"use strict";var OE=mb();function pb(r){return OE(r)===!0&&Object.prototype.toString.call(r)==="[object Object]"}fb.exports=function(e){var t,i;return!(pb(e)===!1||(t=e.constructor,typeof t!="function")||(i=t.prototype,pb(i)===!1)||i.hasOwnProperty("isPrototypeOf")===!1)}});var vb=h((GD,hb)=>{"use strict";var FE=ub(),ME=pm(),LE=gb();function fm(r,e){switch(ME(r)){case"object":return UE(r,e);case"array":return BE(r,e);default:return FE(r)}}function UE(r,e){if(typeof e=="function")return e(r);if(e||LE(r)){let t=new r.constructor;for(let i in r)t[i]=fm(r[i],e);return t}return r}function BE(r,e){let t=new r.constructor(r.length);for(let i=0;i<r.length;i++)t[i]=fm(r[i],e);return t}hb.exports=fm});var Xd=h((hs,bi)=>{var DE=200,Im="__lodash_hash_undefined__",zd=1,Eb=2,Rb=9007199254740991,Nd="[object Arguments]",ym="[object Array]",_E="[object AsyncFunction]",Ob="[object Boolean]",Fb="[object Date]",Mb="[object Error]",Lb="[object Function]",NE="[object GeneratorFunction]",qd="[object Map]",Ub="[object Number]",qE="[object Null]",yi="[object Object]",yb="[object Promise]",jE="[object Proxy]",Bb="[object RegExp]",jd="[object Set]",Db="[object String]",HE="[object Symbol]",WE="[object Undefined]",bm="[object WeakMap]",_b="[object ArrayBuffer]",Hd="[object DataView]",GE="[object Float32Array]",VE="[object Float64Array]",zE="[object Int8Array]",JE="[object Int16Array]",$E="[object Int32Array]",KE="[object Uint8Array]",XE="[object Uint8ClampedArray]",ZE="[object Uint16Array]",YE="[object Uint32Array]",QE=/[\\^$.*+?()[\]{}|]/g,eR=/^\[object .+?Constructor\]$/,tR=/^(?:0|[1-9]\d*)$/,q={};q[GE]=q[VE]=q[zE]=q[JE]=q[$E]=q[KE]=q[XE]=q[ZE]=q[YE]=!0;q[Nd]=q[ym]=q[_b]=q[Ob]=q[Hd]=q[Fb]=q[Mb]=q[Lb]=q[qd]=q[Ub]=q[yi]=q[Bb]=q[jd]=q[Db]=q[bm]=!1;var Nb=typeof global=="object"&&global&&global.Object===Object&&global,rR=typeof self=="object"&&self&&self.Object===Object&&self,ct=Nb||rR||Function("return this")(),qb=typeof hs=="object"&&hs&&!hs.nodeType&&hs,bb=qb&&typeof bi=="object"&&bi&&!bi.nodeType&&bi,jb=bb&&bb.exports===qb,gm=jb&&Nb.process,kb=function(){try{return gm&&gm.binding&&gm.binding("util")}catch{}}(),Sb=kb&&kb.isTypedArray;function iR(r,e){for(var t=-1,i=r==null?0:r.length,s=0,o=[];++t<i;){var a=r[t];e(a,t,r)&&(o[s++]=a)}return o}function nR(r,e){for(var t=-1,i=e.length,s=r.length;++t<i;)r[s+t]=e[t];return r}function sR(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 oR(r,e){for(var t=-1,i=Array(r);++t<r;)i[t]=e(t);return i}function aR(r){return function(e){return r(e)}}function dR(r,e){return r.has(e)}function lR(r,e){return r?.[e]}function uR(r){var e=-1,t=Array(r.size);return r.forEach(function(i,s){t[++e]=[s,i]}),t}function cR(r,e){return function(t){return r(e(t))}}function mR(r){var e=-1,t=Array(r.size);return r.forEach(function(i){t[++e]=i}),t}var pR=Array.prototype,fR=Function.prototype,Jd=Object.prototype,hm=ct["__core-js_shared__"],Hb=fR.toString,et=Jd.hasOwnProperty,Pb=function(){var r=/[^.]+$/.exec(hm&&hm.keys&&hm.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}(),Wb=Jd.toString,gR=RegExp("^"+Hb.call(et).replace(QE,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Cb=jb?ct.Buffer:void 0,Wd=ct.Symbol,wb=ct.Uint8Array,Gb=Jd.propertyIsEnumerable,hR=pR.splice,fr=Wd?Wd.toStringTag:void 0,Ib=Object.getOwnPropertySymbols,vR=Cb?Cb.isBuffer:void 0,yR=cR(Object.keys,Object),km=ki(ct,"DataView"),vs=ki(ct,"Map"),Sm=ki(ct,"Promise"),Pm=ki(ct,"Set"),Cm=ki(ct,"WeakMap"),ys=ki(Object,"create"),bR=vr(km),kR=vr(vs),SR=vr(Sm),PR=vr(Pm),CR=vr(Cm),xb=Wd?Wd.prototype:void 0,vm=xb?xb.valueOf:void 0;function gr(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 wR(){this.__data__=ys?ys(null):{},this.size=0}function IR(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}function xR(r){var e=this.__data__;if(ys){var t=e[r];return t===Im?void 0:t}return et.call(e,r)?e[r]:void 0}function AR(r){var e=this.__data__;return ys?e[r]!==void 0:et.call(e,r)}function TR(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=ys&&e===void 0?Im:e,this}gr.prototype.clear=wR;gr.prototype.delete=IR;gr.prototype.get=xR;gr.prototype.has=AR;gr.prototype.set=TR;function mt(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 ER(){this.__data__=[],this.size=0}function RR(r){var e=this.__data__,t=$d(e,r);if(t<0)return!1;var i=e.length-1;return t==i?e.pop():hR.call(e,t,1),--this.size,!0}function OR(r){var e=this.__data__,t=$d(e,r);return t<0?void 0:e[t][1]}function FR(r){return $d(this.__data__,r)>-1}function MR(r,e){var t=this.__data__,i=$d(t,r);return i<0?(++this.size,t.push([r,e])):t[i][1]=e,this}mt.prototype.clear=ER;mt.prototype.delete=RR;mt.prototype.get=OR;mt.prototype.has=FR;mt.prototype.set=MR;function hr(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 LR(){this.size=0,this.__data__={hash:new gr,map:new(vs||mt),string:new gr}}function UR(r){var e=Kd(this,r).delete(r);return this.size-=e?1:0,e}function BR(r){return Kd(this,r).get(r)}function DR(r){return Kd(this,r).has(r)}function _R(r,e){var t=Kd(this,r),i=t.size;return t.set(r,e),this.size+=t.size==i?0:1,this}hr.prototype.clear=LR;hr.prototype.delete=UR;hr.prototype.get=BR;hr.prototype.has=DR;hr.prototype.set=_R;function Gd(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new hr;++e<t;)this.add(r[e])}function NR(r){return this.__data__.set(r,Im),this}function qR(r){return this.__data__.has(r)}Gd.prototype.add=Gd.prototype.push=NR;Gd.prototype.has=qR;function Ot(r){var e=this.__data__=new mt(r);this.size=e.size}function jR(){this.__data__=new mt,this.size=0}function HR(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}function WR(r){return this.__data__.get(r)}function GR(r){return this.__data__.has(r)}function VR(r,e){var t=this.__data__;if(t instanceof mt){var i=t.__data__;if(!vs||i.length<DE-1)return i.push([r,e]),this.size=++t.size,this;t=this.__data__=new hr(i)}return t.set(r,e),this.size=t.size,this}Ot.prototype.clear=jR;Ot.prototype.delete=HR;Ot.prototype.get=WR;Ot.prototype.has=GR;Ot.prototype.set=VR;function zR(r,e){var t=Vd(r),i=!t&&aO(r),s=!t&&!i&&wm(r),o=!t&&!i&&!s&&Zb(r),a=t||i||s||o,c=a?oR(r.length,String):[],p=c.length;for(var f in r)(e||et.call(r,f))&&!(a&&(f=="length"||s&&(f=="offset"||f=="parent")||o&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||rO(f,p)))&&c.push(f);return c}function $d(r,e){for(var t=r.length;t--;)if(Jb(r[t][0],e))return t;return-1}function JR(r,e,t){var i=e(r);return Vd(r)?i:nR(i,t(r))}function ks(r){return r==null?r===void 0?WE:qE:fr&&fr in Object(r)?eO(r):oO(r)}function Ab(r){return bs(r)&&ks(r)==Nd}function Vb(r,e,t,i,s){return r===e?!0:r==null||e==null||!bs(r)&&!bs(e)?r!==r&&e!==e:$R(r,e,t,i,Vb,s)}function $R(r,e,t,i,s,o){var a=Vd(r),c=Vd(e),p=a?ym:Rt(r),f=c?ym:Rt(e);p=p==Nd?yi:p,f=f==Nd?yi:f;var v=p==yi,m=f==yi,k=p==f;if(k&&wm(r)){if(!wm(e))return!1;a=!0,v=!1}if(k&&!v)return o||(o=new Ot),a||Zb(r)?zb(r,e,t,i,s,o):YR(r,e,p,t,i,s,o);if(!(t&zd)){var b=v&&et.call(r,"__wrapped__"),C=m&&et.call(e,"__wrapped__");if(b||C){var w=b?r.value():r,x=C?e.value():e;return o||(o=new Ot),s(w,x,t,i,o)}}return k?(o||(o=new Ot),QR(r,e,t,i,s,o)):!1}function KR(r){if(!Xb(r)||nO(r))return!1;var e=$b(r)?gR:eR;return e.test(vr(r))}function XR(r){return bs(r)&&Kb(r.length)&&!!q[ks(r)]}function ZR(r){if(!sO(r))return yR(r);var e=[];for(var t in Object(r))et.call(r,t)&&t!="constructor"&&e.push(t);return e}function zb(r,e,t,i,s,o){var a=t&zd,c=r.length,p=e.length;if(c!=p&&!(a&&p>c))return!1;var f=o.get(r);if(f&&o.get(e))return f==e;var v=-1,m=!0,k=t&Eb?new Gd:void 0;for(o.set(r,e),o.set(e,r);++v<c;){var b=r[v],C=e[v];if(i)var w=a?i(C,b,v,e,r,o):i(b,C,v,r,e,o);if(w!==void 0){if(w)continue;m=!1;break}if(k){if(!sR(e,function(x,F){if(!dR(k,F)&&(b===x||s(b,x,t,i,o)))return k.push(F)})){m=!1;break}}else if(!(b===C||s(b,C,t,i,o))){m=!1;break}}return o.delete(r),o.delete(e),m}function YR(r,e,t,i,s,o,a){switch(t){case Hd:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case _b:return!(r.byteLength!=e.byteLength||!o(new wb(r),new wb(e)));case Ob:case Fb:case Ub:return Jb(+r,+e);case Mb:return r.name==e.name&&r.message==e.message;case Bb:case Db:return r==e+"";case qd:var c=uR;case jd:var p=i&zd;if(c||(c=mR),r.size!=e.size&&!p)return!1;var f=a.get(r);if(f)return f==e;i|=Eb,a.set(r,e);var v=zb(c(r),c(e),i,s,o,a);return a.delete(r),v;case HE:if(vm)return vm.call(r)==vm.call(e)}return!1}function QR(r,e,t,i,s,o){var a=t&zd,c=Tb(r),p=c.length,f=Tb(e),v=f.length;if(p!=v&&!a)return!1;for(var m=p;m--;){var k=c[m];if(!(a?k in e:et.call(e,k)))return!1}var b=o.get(r);if(b&&o.get(e))return b==e;var C=!0;o.set(r,e),o.set(e,r);for(var w=a;++m<p;){k=c[m];var x=r[k],F=e[k];if(i)var ue=a?i(F,x,k,e,r,o):i(x,F,k,r,e,o);if(!(ue===void 0?x===F||s(x,F,t,i,o):ue)){C=!1;break}w||(w=k=="constructor")}if(C&&!w){var Ln=r.constructor,xa=e.constructor;Ln!=xa&&"constructor"in r&&"constructor"in e&&!(typeof Ln=="function"&&Ln instanceof Ln&&typeof xa=="function"&&xa instanceof xa)&&(C=!1)}return o.delete(r),o.delete(e),C}function Tb(r){return JR(r,uO,tO)}function Kd(r,e){var t=r.__data__;return iO(e)?t[typeof e=="string"?"string":"hash"]:t.map}function ki(r,e){var t=lR(r,e);return KR(t)?t:void 0}function eO(r){var e=et.call(r,fr),t=r[fr];try{r[fr]=void 0;var i=!0}catch{}var s=Wb.call(r);return i&&(e?r[fr]=t:delete r[fr]),s}var tO=Ib?function(r){return r==null?[]:(r=Object(r),iR(Ib(r),function(e){return Gb.call(r,e)}))}:cO,Rt=ks;(km&&Rt(new km(new ArrayBuffer(1)))!=Hd||vs&&Rt(new vs)!=qd||Sm&&Rt(Sm.resolve())!=yb||Pm&&Rt(new Pm)!=jd||Cm&&Rt(new Cm)!=bm)&&(Rt=function(r){var e=ks(r),t=e==yi?r.constructor:void 0,i=t?vr(t):"";if(i)switch(i){case bR:return Hd;case kR:return qd;case SR:return yb;case PR:return jd;case CR:return bm}return e});function rO(r,e){return e=e??Rb,!!e&&(typeof r=="number"||tR.test(r))&&r>-1&&r%1==0&&r<e}function iO(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}function nO(r){return!!Pb&&Pb in r}function sO(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||Jd;return r===t}function oO(r){return Wb.call(r)}function vr(r){if(r!=null){try{return Hb.call(r)}catch{}try{return r+""}catch{}}return""}function Jb(r,e){return r===e||r!==r&&e!==e}var aO=Ab(function(){return arguments}())?Ab:function(r){return bs(r)&&et.call(r,"callee")&&!Gb.call(r,"callee")},Vd=Array.isArray;function dO(r){return r!=null&&Kb(r.length)&&!$b(r)}var wm=vR||mO;function lO(r,e){return Vb(r,e)}function $b(r){if(!Xb(r))return!1;var e=ks(r);return e==Lb||e==NE||e==_E||e==jE}function Kb(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=Rb}function Xb(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}function bs(r){return r!=null&&typeof r=="object"}var Zb=Sb?aR(Sb):XR;function uO(r){return dO(r)?zR(r):ZR(r)}function cO(){return[]}function mO(){return!1}bi.exports=lO});var OS=h(Pl=>{"use strict";Pl.byteLength=NO;Pl.toByteArray=jO;Pl.fromByteArray=GO;var rt=[],Ne=[],_O=typeof Uint8Array<"u"?Uint8Array:Array,Qm="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Tr=0,ES=Qm.length;Tr<ES;++Tr)rt[Tr]=Qm[Tr],Ne[Qm.charCodeAt(Tr)]=Tr;var Tr,ES;Ne["-".charCodeAt(0)]=62;Ne["_".charCodeAt(0)]=63;function RS(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 NO(r){var e=RS(r),t=e[0],i=e[1];return(t+i)*3/4-i}function qO(r,e,t){return(e+t)*3/4-t}function jO(r){var e,t=RS(r),i=t[0],s=t[1],o=new _O(qO(r,i,s)),a=0,c=s>0?i-4:i,p;for(p=0;p<c;p+=4)e=Ne[r.charCodeAt(p)]<<18|Ne[r.charCodeAt(p+1)]<<12|Ne[r.charCodeAt(p+2)]<<6|Ne[r.charCodeAt(p+3)],o[a++]=e>>16&255,o[a++]=e>>8&255,o[a++]=e&255;return s===2&&(e=Ne[r.charCodeAt(p)]<<2|Ne[r.charCodeAt(p+1)]>>4,o[a++]=e&255),s===1&&(e=Ne[r.charCodeAt(p)]<<10|Ne[r.charCodeAt(p+1)]<<4|Ne[r.charCodeAt(p+2)]>>2,o[a++]=e>>8&255,o[a++]=e&255),o}function HO(r){return rt[r>>18&63]+rt[r>>12&63]+rt[r>>6&63]+rt[r&63]}function WO(r,e,t){for(var i,s=[],o=e;o<t;o+=3)i=(r[o]<<16&16711680)+(r[o+1]<<8&65280)+(r[o+2]&255),s.push(HO(i));return s.join("")}function GO(r){for(var e,t=r.length,i=t%3,s=[],o=16383,a=0,c=t-i;a<c;a+=o)s.push(WO(r,a,a+o>c?c:a+o));return i===1?(e=r[t-1],s.push(rt[e>>2]+rt[e<<4&63]+"==")):i===2&&(e=(r[t-2]<<8)+r[t-1],s.push(rt[e>>10]+rt[e>>4&63]+rt[e<<2&63]+"=")),s.join("")}});var tH=Br(ry(),1);function g(r,e){if(r==null)throw Error(e??"Expected nonnullish value.")}function or(r,e){if(!r)throw Error(e)}var ee;(function(r){r.COMMENT="t1_",r.ACCOUNT="t2_",r.LINK="t3_",r.MESSAGE="t4_",r.SUBREDDIT="t5_",r.AWARD="t6_"})(ee||(ee={}));function Pt(r){return r.startsWith(ee.COMMENT)}function hd(r){return r.startsWith(ee.ACCOUNT)}function ar(r){return r.startsWith(ee.LINK)}function iy(r){return r.startsWith(ee.MESSAGE)}function ny(r){return r.startsWith(ee.SUBREDDIT)}function sy(r){return r.startsWith(ee.AWARD)}function a0(r){or(Pt(r),`Expected comment id to start with ${ee.COMMENT}, got ${r}}`)}function d0(r){or(hd(r),`Expected account id to start with ${ee.ACCOUNT}, got ${r}}`)}function l0(r){or(ar(r),`Expected link id to start with ${ee.LINK}, got ${r}}`)}function u0(r){or(iy(r),`Expected message id to start with ${ee.MESSAGE}, got ${r}}`)}function c0(r){or(ny(r),`Expected subreddit id to start with ${ee.SUBREDDIT}, got ${r}}`)}function m0(r){or(sy(r),`Expected award id to start with ${ee.AWARD}, got ${r}}`)}function Zr(r){return a0(r),r}function te(r){return d0(r),r}function fe(r){return l0(r),r}function p0(r){return u0(r),r}function Re(r){return c0(r),r}function f0(r){return m0(r),r}function ge(r){if(Pt(r))return Zr(r);if(hd(r))return te(r);if(ar(r))return fe(r);if(iy(r))return p0(r);if(ny(r))return Re(r);if(sy(r))return f0(r);throw new Error(`Expected thing id to start with ${Object.values(ee).join(", ")} got ${r}}`)}function jc(r){return Pt(r)}import*as P from"@devvit/protos";var vd=class{constructor(e){}};var Hc=(t=>(t.Installation="installation",t.App="app",t))(Hc||{});function dr(r,e=new Set){for(let t of r){if(t.type==="group"){dr(t.fields,e);continue}let i=t.name;if(e.has(i))throw new Error(`Duplicate field name: ${i}`);e.add(i)}g0(r)}function g0(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 Ct=Object.freeze({INTERVAL:0,FORM:1,STATE:2,CHANNEL:3});var FL=["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","brand-awareness","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 O0,GetFieldsResponse as F0}from"@devvit/protos";import{FormField as lr,FormFieldType as Oe}from"@devvit/protos";function dt(r){return r.map(e=>{switch(e.type){case"string":return h0(e);case"image":return v0(e);case"paragraph":return y0(e);case"number":return b0(e);case"select":return k0(e);case"boolean":return S0(e);case"group":return P0(e);default:throw new Error("Unknown field type.")}})}function h0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.STRING,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{stringConfig:{placeholder:r.placeholder}},fieldId:r.name,fieldType:Oe.STRING,helpText:r.helpText,label:r.label,required:r.required,isSecret:r.isSecret})}function v0(r){return lr.fromPartial({disabled:r.disabled,fieldId:r.name,fieldType:Oe.IMAGE,helpText:r.helpText,label:r.label,required:r.required})}function y0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.PARAGRAPH,stringValue:r.defaultValue},disabled:r.disabled,fieldConfig:{paragraphConfig:{lineHeight:r.lineHeight,placeholder:r.placeholder}},fieldId:r.name,fieldType:Oe.PARAGRAPH,helpText:r.helpText,label:r.label,required:r.required})}function b0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.NUMBER,numberValue:r.defaultValue},disabled:r.disabled,fieldConfig:{numberConfig:{}},fieldId:r.name,fieldType:Oe.NUMBER,helpText:r.helpText,label:r.label,required:r.required})}function k0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.SELECTION,selectionValue:{values:r.defaultValue}},disabled:r.disabled,fieldConfig:{selectionConfig:{choices:r.options,multiSelect:r.multiSelect}},fieldId:r.name,fieldType:Oe.SELECTION,helpText:r.helpText,label:r.label,required:r.required})}function S0(r){return lr.fromPartial({defaultValue:{fieldType:Oe.BOOLEAN,boolValue:r.defaultValue},disabled:r.disabled,fieldId:r.name,fieldType:Oe.BOOLEAN,helpText:r.helpText,label:r.label})}function P0(r){return lr.fromPartial({fieldType:Oe.GROUP,fieldConfig:{groupConfig:{fields:dt(r.fields)}},label:r.label,helpText:r.helpText})}function L(r,e){u.prototype[r]=e}import{ValidateFormResponse as R0}from"@devvit/protos";import{RealtimeSubscriptionStatus as ay}from"@devvit/protos";var B=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",Debug:"devvit-debug",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",Language:"devvit-accept-language",Timezone:"devvit-accept-timezone",AppDependencies:"devvit-app-dependencies"}),oy;(function(r){r.Blocks="blocks",r.EmitSnapshots="emitSnapshots",r.EmitState="emitState",r.Realtime="realtime",r.Runtime="runtime",r.Surface="surface",r.UseAsync="useAsync"})(oy||(oy={}));function dy(r){function e(t){let s=r.currentHookIndex,o=r.getCurrentComponentState(),a=r.getPreviousComponentState(),c=r.metadata[B.App]?.values[0];g(c,"useChannel - app is missing from Context");let p=r.metadata[B.Installation]?.values[0];g(p,"useChannel - installation is missing from Context");async function f(x){let F=o[s].channel;if(o[s].active)if(o[s].connected)await r.realtime.send(F,x);else throw Error(`Failed to send to channel '${F}'; it is active but not yet connected`);else throw Error(`Cannot send a message over inactive channel: ${F}`)}function v(){if(!o[s].active){let x=o[s].channel;o[s].active=!0,r.addRealtimeChannel(x)}}function m(){if(o[s].active){let x=o[s].channel;o[s].active=!1,r.removeRealtimeChannel(x)}}function k(x){return async()=>{let F;switch(x.status){case ay.REALTIME_SUBSCRIBED:o[s].connected=!0,F=t.onSubscribed?.();break;case ay.REALTIME_UNSUBSCRIBED:o[s].connected=!1,F=t.onUnsubscribed?.();break;default:F=t.onMessage(x.event?.data??{});break}await F}}let b={channel:`${c}:${p}:${t.name}`,active:!1,connected:!1,preventCallback:!1,type:Ct.CHANNEL};s in o?b=o[s]:s in a&&(b=a[s]);let C=r.realtimeEvent;r.isInitialRender?b.active=!1:C&&b.active&&C.event.channel===b.channel&&(b.preventCallback||r.runHook(k(C)),r.rerenderIn(0)),o[s]=b,r.currentHookIndex++;let w=0;return b.active&&b.connected?w=2:b.active&&!b.connected?w=1:!b.active&&b.connected?w=3:!b.active&&!b.connected&&(w=4),{subscribe:v,unsubscribe:m,send:f,status:w}}return e}import{FormFieldType as Yr}from"@devvit/protos";function Wc(r){switch(r.fieldType){case Yr.STRING:return r.stringValue;case Yr.IMAGE:return r.stringValue;case Yr.PARAGRAPH:return r.stringValue;case Yr.NUMBER:return r.numberValue;case Yr.BOOLEAN:return r.boolValue;case Yr.SELECTION:return r.selectionValue?.values??[];default:return}}function wt(r){return Object.keys(r).reduce((e,t)=>{let i=Wc(r[t]);return i!==void 0&&(e[t]=i),e},{})}function ly(r){function e(t,i){let s=r.currentHookIndex,o=r.getCurrentComponentKey(),a=r.getCurrentComponentState(),c=r.getPreviousComponentState(),p=`form.hook.${o}.${s}`,f={formKey:p,preventSubmit:!1,type:Ct.FORM};s in a?f=a[s]:s in c&&(f=c[s]),a[s]=f,r.forms.set(p,t);let v=r.formSubmittedEvent;return v&&!f.preventSubmit&&v.formId===p&&r.runHook(async()=>{let m=i(wt(v.results));m&&m instanceof Promise&&await m,r.rerenderIn(0)}),a[s].preventSubmit=!1,r.currentHookIndex++,p}return e}function uy(r){function e(t,i){let s=r.currentHookIndex,o=r.getCurrentComponentState(),a=r.getPreviousComponentState(),c=100,p=Math.max(c,i),f={lastRun:void 0,running:!1,preventCallback:!1,type:Ct.INTERVAL};s in o?f=o[s]:s in a&&(f=a[s]);function v(){i<c&&console.error(`useInterval delay must be at least ${c}ms. Your interval of ${i}ms was automatically extended.`);for(let[k,b]of Object.entries(o))if(k!==s.toString()&&b?.type===Ct.INTERVAL&&b?.running)throw new Error("Only one useInterval hook may be running at a time");o[s]={running:!0,lastRun:o[s]?.lastRun??Date.now(),preventCallback:!1,type:Ct.INTERVAL},r.rerenderIn(p)}function m(){o[s].running=!1,o[s].lastRun=void 0,o[s].preventCallback=!1}return r.isEffectRender&&f.running&&(f.preventCallback||(f.lastRun===void 0||f.lastRun+p<Date.now())&&r.runHook(async()=>{let k=t();k&&k instanceof Promise&&await k,f.lastRun=Date.now()}),r.rerenderIn(p)),f.preventCallback=!1,o[s]=f,r.currentHookIndex++,{start:v,stop:m}}return e}function cy(r){function e(t){let i=r.currentHookIndex,s=r.getCurrentComponentState(),o=r.getPreviousComponentState();if(i in s)return r.currentHookIndex++,[s[i],a];if(r.isInitialRender||!(i in o)){let c=t instanceof Function?t():t;if(c instanceof Promise)throw(async()=>{s[i]=await c,r.currentHookIndex=0})();s[i]=c}else s[i]=o[i];function a(c){if(r.isRendering)throw new Error("Cannot call setState while rendering.");s[i]=c instanceof Function?c(s[i]):c}return r.currentHookIndex++,[s[i],a]}return e}var Jc={now(){return new Date}};function my(r){return`__autocache__${r}`}function py(r){return`__lock__${r}`}var w0=300,I0=1e3,yd=5e3,Gc=3,fy=.1,gy=1e3,x0=3e4;function hy(r){if(r.error)throw new Error(r.error);return r.value}var It,xt,Fe,Qr,kd,vy,Sd,yy,Pd,by,rs,Vc,Cd,ky,wd,Sy,is,zc,Id,Py,bd=class{constructor(e,t,i=Jc){d(this,kd);d(this,Sd);d(this,Pd);d(this,rs);d(this,Cd);d(this,wd);d(this,is);d(this,Id);d(this,It,void 0);d(this,xt,{});d(this,Fe,void 0);d(this,Qr,void 0);l(this,It,e),l(this,Qr,t),l(this,Fe,i)}async cache(e,t){l(this,xt,n(this,Qr).__cache=n(this,Qr).__cache??{}),y(this,Id,Py).call(this,t);let i=y(this,kd,vy).call(this,t.key);if(i!==void 0)return i;let s=await y(this,is,zc).call(this,t.key),o=await y(this,Sd,yy).call(this,t,s,e);return hy(o)}};It=new WeakMap,xt=new WeakMap,Fe=new WeakMap,Qr=new WeakMap,kd=new WeakSet,vy=function(e){let t=n(this,xt)[e];if(t){let i=n(this,Fe).now().getTime(),s=t?.error&&t?.errorTime&&t.errorCount<Gc&&Math.random()<fy&&t.errorTime+gy<i;if(t?.expires&&t.expires<i&&t.checkedAt+gy<i||s){delete n(this,xt)[e];return}else return hy(t)}},Sd=new WeakSet,yy=async function(e,t,i){let s=t?.expires,o=s?y(this,wd,Sy).call(this,s):1;return!t||t?.error&&t.errorCount<Gc&&fy>Math.random()||o>Math.random()?y(this,Pd,by).call(this,e,t,i):t},Pd=new WeakSet,by=async function(e,t,i){let s=py(e.key),o=n(this,Fe).now().getTime(),a=new Date(o+e.ttl/2);if(await n(this,It).set(s,"1",{expiration:a,nx:!0}))return y(this,Cd,ky).call(this,e.key,t,i,e.ttl);if(t)return t;{let p=n(this,Fe).now();return y(this,rs,Vc).call(this,p,e.key,e.ttl)}},rs=new WeakSet,Vc=async function(e,t,i){let s=Math.min(i,I0),o=await y(this,is,zc).call(this,t);if(o)return o;if(n(this,Fe).now().getTime()-e.getTime()>=s)throw new Error(`Cache request timed out trying to get data at key: ${t}`);return await new Promise(a=>setTimeout(a,w0)),y(this,rs,Vc).call(this,e,t,i)},Cd=new WeakSet,ky=async function(e,t,i,s){let o=n(this,Fe).now().getTime()+s;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=n(this,Fe).now().getTime(),t.errorCount++}return n(this,xt)[e]=t,await n(this,It).set(my(e),JSON.stringify(t),{expiration:new Date(o+x0)}),t.error&&t.errorCount<Gc&&await n(this,It).del(py(e)),t},wd=new WeakSet,Sy=function(e){let t=n(this,Fe).now().getTime(),i=e-t;return i<0?1:i<1e3?.1:i<2e3?.01:i<3e3?.001:0},is=new WeakSet,zc=async function(e){let t=await n(this,It).get(my(e));if(t){let i=JSON.parse(t);return i.checkedAt=n(this,Fe).now().getTime(),n(this,xt)[e]=i,i}},Id=new WeakSet,Py=function(e){e.ttl<yd&&(console.warn(`Cache TTL cannot be less than ${yd} milliseconds! Updating ttl value of ${e.ttl} to ${yd}.`),e.ttl=yd)};function Cy(r,e,t=Jc){let i=new bd(r,e,t);return i.cache.bind(i)}var ei,ti,xd,wy,Ad,Iy,ri=class{constructor(){d(this,xd);d(this,Ad);d(this,ei,{});d(this,ti,{});l(this,ei,u.assets),l(this,ti,u.webviewAssets)}getURL(e,t){return typeof e=="string"?y(this,xd,wy).call(this,e,t??{webview:!1}):y(this,Ad,Iy).call(this,e,t??{webview:!1})}};ei=new WeakMap,ti=new WeakMap,xd=new WeakSet,wy=function(e,t){let i=t.webview?n(this,ti)[e]:n(this,ei)[e];if(i)return i;try{return new URL(e.slice(0,e.indexOf(","))),e}catch{return""}},Ad=new WeakSet,Iy=function(e,t){let i={},s=[],o=t.webview?n(this,ti):n(this,ei);if(o)for(let a of e)if(o[a])i[a]=o[a];else try{new URL(a.slice(0,a.indexOf(","))),i[a]=a}catch{s.push(a)}else s=e;if(s.length>0)throw new Error(`The following assets were missing from the assets list: ${s.join(", ")}`);return i};var At,ii=class{constructor(e){d(this,At,void 0);l(this,At,e)}async get(e){let{messages:t}=await u.kvStorePlugin.Get({keys:[e]},n(this,At));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},n(this,At))}async delete(e){await u.kvStorePlugin.Del({keys:[e]},n(this,At))}async list(){let{keys:e}=await u.kvStorePlugin.List({filter:"*"},n(this,At));return e}};At=new WeakMap;var ns,ni=class{constructor(e){d(this,ns,void 0);l(this,ns,e)}async upload(e){let t=await u.mediaPlugin.Upload(e,n(this,ns));if(!t.mediaId)throw new Error("unable to get mediaId via uploads");return Promise.resolve({mediaId:t.mediaId,mediaUrl:t.mediaUrl})}};ns=new WeakMap;var ss,si=class{constructor(e){d(this,ss,void 0);l(this,ss,e)}async add(e){await u.modLogPlugin.Add(e,n(this,ss))}};ss=new WeakMap;var os,oi=class{constructor(e){d(this,os,void 0);l(this,os,e)}async send(e,t){await u.realtimePlugin.Send({channel:e,data:t},n(this,os))}};os=new WeakMap;var S,as,di=class{constructor(e){d(this,S,void 0);d(this,as,void 0);l(this,S,e),l(this,as,new Ed(e))}get modMail(){return n(this,as)}getSubredditById(e){return he.getById(ge(e),n(this,S))}getSubredditByName(e){return he.getByName(e,n(this,S))}addSubredditRemovalReason(e,t){return he.addRemovalReason(e,t.title,t.message,n(this,S))}getSubredditRemovalReasons(e){return he.getRemovalReasons(e,n(this,S))}getCurrentSubreddit(){return he.getFromMetadata(n(this,S))}getPostById(e){return V.getById(ge(e),n(this,S))}submitPost(e){return V.submit(e,n(this,S))}crosspost(e){return V.crosspost(e,n(this,S))}getUserById(e){return I.getById(ge(e),n(this,S))}getCollectionById(e){return ai.getCollectionById({collectionId:e},n(this,S))}createCollection(e){return ai.create(e,n(this,S))}getCollectionsForSubreddit(e){return ai.getCollectionsForSubreddit({subredditId:e},n(this,S))}getUserByUsername(e){return I.getByUsername(e,n(this,S))}getCurrentUser(){return I.getFromMetadata(B.User,n(this,S))}getAppUser(){return I.getFromMetadata(B.AppUser,n(this,S))}getSnoovatarUrl(e){return I.getSnoovatarUrl(e,n(this,S))}getCommentById(e){return X.getById(ge(e),n(this,S))}getComments(e){return X.getComments(e,n(this,S))}getCommentsByUser(e){return X.getCommentsByUser(e,n(this,S))}submitComment(e){return X.submit({...e,id:ge(e.id)},n(this,S))}getControversialPosts(e){return V.getControversialPosts(e,n(this,S))}getTopPosts(e){return V.getTopPosts(e,n(this,S))}getHotPosts(e){return V.getHotPosts(e,n(this,S))}getNewPosts(e){return V.getNewPosts(e,n(this,S))}getRisingPosts(e){return V.getRisingPosts(e,n(this,S))}getPostsByUser(e){return V.getPostsByUser(e,n(this,S))}getCommentsAndPostsByUser(e){return I.getOverview(e,n(this,S))}getModerationLog(e){return Td(e,n(this,S))}getApprovedUsers(e){return I.getSubredditUsersByType({type:"contributors",...e},n(this,S))}approveUser(e,t){return I.createRelationship({username:e,subredditName:t,type:"contributor"},n(this,S))}removeUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"contributor"},n(this,S))}getWikiContributors(e){return I.getSubredditUsersByType({type:"wikicontributors",...e},n(this,S))}addWikiContributor(e,t){return I.createRelationship({username:e,subredditName:t,type:"wikicontributor"},n(this,S))}removeWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikicontributor"},n(this,S))}getBannedUsers(e){return I.getSubredditUsersByType({type:"banned",...e},n(this,S))}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},n(this,S))}unbanUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"banned"},n(this,S))}getBannedWikiContributors(e){return I.getSubredditUsersByType({type:"wikibanned",...e},n(this,S))}banWikiContributor(e){return I.createRelationship({...e,type:"wikibanned"},n(this,S))}unbanWikiContributor(e,t){return I.removeRelationship({username:e,subredditName:t,type:"wikibanned"},n(this,S))}getModerators(e){return I.getSubredditUsersByType({type:"moderators",...e},n(this,S))}inviteModerator(e){return I.createRelationship({type:"moderator_invite",subredditName:e.subredditName,username:e.subredditName,permissions:e.permissions??[]},n(this,S))}revokeModeratorInvite(e,t){return I.removeRelationship({username:e,subredditName:t,type:"moderator_invite"},n(this,S))}removeModerator(e,t){return I.removeRelationship({type:"moderator",subredditName:t,username:e},n(this,S))}setModeratorPermissions(e,t,i){return I.setModeratorPermissions(e,t,i,n(this,S))}getMutedUsers(e){return I.getSubredditUsersByType({type:"muted",...e},n(this,S))}muteUser(e){return I.createRelationship({...e,type:"muted"},n(this,S))}unmuteUser(e,t){return I.removeRelationship({username:e,subredditName:t,type:"muted"},n(this,S))}getModNotes(e){return Me.get(e,n(this,S))}deleteModNote(e){return Me.delete(e,n(this,S))}addModNote(e){let t={...e,redditId:ge(e.redditId)};return Me.add(t,n(this,S))}addRemovalNote(e){return Me.addRemovalNote(e,n(this,S))}async sendPrivateMessage(e){return ur.send(e,n(this,S))}async sendPrivateMessageAsSubreddit(e){return ur.sendAsSubreddit(e,n(this,S))}async approve(e){if(Pt(e))return X.approve(e,n(this,S));if(ar(e))return V.approve(e,n(this,S));throw new Error("id must start with either t1_ or t3_")}async remove(e,t){if(Pt(e))return X.remove(e,t,n(this,S));if(ar(e))return V.remove(e,t,n(this,S));throw new Error("id must start with either t1_ or t3_")}async getPostFlairTemplates(e){return ae.getPostFlairTemplates(e,n(this,S))}async getUserFlairTemplates(e){return ae.getUserFlairTemplates(e,n(this,S))}async createPostFlairTemplate(e){return ae.createPostFlairTemplate(e,n(this,S))}async createUserFlairTemplate(e){return ae.createUserFlairTemplate(e,n(this,S))}async editFlairTemplate(e){return ae.editFlairTemplate(e,n(this,S))}async deleteFlairTemplate(e,t){return ae.deleteFlairTemplate(e,t,n(this,S))}async setUserFlair(e){return Le.setUserFlair(e,n(this,S))}async removeUserFlair(e,t){return Le.removeUserFlair(e,t,n(this,S))}async setPostFlair(e){return Le.setPostFlair(e,n(this,S))}async removePostFlair(e,t){return Le.removePostFlair(e,fe(t),n(this,S))}async getWidgets(e){return re.getWidgets(e,n(this,S))}async deleteWidget(e,t){return re.delete(e,t,n(this,S))}async addWidget(e){return re.add(e,n(this,S))}async reorderWidgets(e,t){return re.reorder(e,t,n(this,S))}async getWikiPage(e,t){return ve.getPage(e,t,n(this,S))}async getWikiPages(e){return ve.getPages(e,n(this,S))}async createWikiPage(e){return ve.createPage(e,n(this,S))}async updateWikiPage(e){return ve.updatePage(e,n(this,S))}getWikiPageRevisions(e){return ve.getPageRevisions(e,n(this,S))}async revertWikiPage(e,t,i){return ve.revertPage(e,t,i,n(this,S))}async getWikiPageSettings(e,t){return ve.getPageSettings(e,t,n(this,S))}async updateWikiPageSettings(e){return ve.updatePageSettings(e,n(this,S))}async addEditorToWikiPage(e,t,i){return ve.addEditor(e,t,i,n(this,S))}async removeEditorFromWikiPage(e,t,i){return ve.removeEditor(e,t,i,n(this,S))}getMessages(e){return ur.getMessages(e,n(this,S))}markAllMessagesAsRead(){return ur.markAllAsRead(n(this,S))}report(e,t){return u.redditAPIPlugins.LinksAndComments.Report({reason:t.reason,thingId:e.id,srName:e.subredditName,usernames:e.authorName},n(this,S))}getModQueue(e){return he.aboutLocation({...e,location:"modqueue"},n(this,S))}getReports(e){return he.aboutLocation({...e,location:"reports"},n(this,S))}getSpam(e){return he.aboutLocation({...e,location:"spam"},n(this,S))}getUnmoderated(e){return he.aboutLocation({...e,location:"unmoderated"},n(this,S))}getEdited(e){return he.aboutLocation({...e,location:"edited"},n(this,S))}getVaultByAddress(e){return Ty(e,n(this,S))}getVaultByUserId(e){return Ey(ge(e),n(this,S))}getSubredditLeaderboard(e){return Ay(e,n(this,S))}};S=new WeakMap,as=new WeakMap;import{RedisKeyScope as $c}from"@devvit/protos";var E,R,O,Kc=class{constructor(e,t,i){d(this,E,void 0);d(this,R,void 0);d(this,O,void 0);l(this,E,e),l(this,R,t),l(this,O,i)}async get(e){return await n(this,E).Get({key:e,transactionId:n(this,R)},n(this,O)),this}async multi(){await n(this,E).Multi(n(this,R),n(this,O))}async set(e,t,i){let s;return i?.expiration&&(s=Math.floor((i.expiration.getTime()-Date.now())/1e3),s<1&&(s=1)),await n(this,E).Set({key:e,value:t,nx:i?.nx===!0,xx:i?.xx===!0,expiration:s||0,transactionId:n(this,R)},n(this,O)),this}async del(...e){return await n(this,E).Del({keys:e,transactionId:n(this,R)},n(this,O)),this}async type(e){return await n(this,E).Type({key:e,transactionId:n(this,R)},n(this,O)),this}async exec(){let e=await n(this,E).Exec(n(this,R),n(this,O)),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 n(this,E).Discard(n(this,R),n(this,O))}async watch(...e){return await n(this,E).Watch({keys:e,transactionId:n(this,R)},n(this,O)),this}async unwatch(){return await n(this,E).Unwatch(n(this,R),n(this,O)),this}async getRange(e,t,i){return await n(this,E).GetRange({key:e,start:t,end:i,transactionId:n(this,R)},n(this,O)),this}async setRange(e,t,i){return await n(this,E).SetRange({key:e,offset:t,value:i,transactionId:n(this,R)},n(this,O)),this}async strlen(e){return await n(this,E).Strlen({key:e,transactionId:n(this,R)},n(this,O)),this}async mget(e){return await n(this,E).MGet({keys:e,transactionId:n(this,R)},n(this,O)),this}async mset(e){let t=Object.entries(e).map(([i,s])=>({key:i,value:s}));return await n(this,E).MSet({kv:t,transactionId:n(this,R)},n(this,O)),this}async incrBy(e,t){return await n(this,E).IncrBy({key:e,value:t,transactionId:n(this,R)},n(this,O)),this}async expire(e,t){return await n(this,E).Expire({key:e,seconds:t,transactionId:n(this,R)},n(this,O)),this}async expireTime(e){return await n(this,E).ExpireTime({key:e,transactionId:n(this,R)},n(this,O)),this}async zAdd(e,...t){return await n(this,E).ZAdd({key:e,members:t,transactionId:n(this,R)},n(this,O)),this}async zScore(e,t){return await n(this,E).ZScore({key:{key:e,transactionId:n(this,R)},member:t},n(this,O)),this}async zRank(e,t){return await n(this,E).ZRank({key:{key:e,transactionId:n(this,R)},member:t},n(this,O)),this}async zIncrBy(e,t,i){return await n(this,E).ZIncrBy({key:e,member:t,value:i,transactionId:n(this,R)},n(this,O)),this}async zScan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,transactionId:n(this,R)};return await n(this,E).ZScan(o,n(this,O)),this}async zCard(e){return await n(this,E).ZCard({key:e,transactionId:n(this,R)},n(this,O)),this}async zRange(e,t,i,s){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return s?.reverse&&(o.rev=s.reverse),s?.by==="lex"?o.byLex=!0:s?.by==="score"&&(o.byScore=!0),await n(this,E).ZRange({key:{key:e,transactionId:n(this,R)},start:t+"",stop:i+"",...o},n(this,O)),this}async zRem(e,t){return await n(this,E).ZRem({key:{key:e,transactionId:n(this,R)},members:t},n(this,O)),this}async zRemRangeByLex(e,t,i){return await n(this,E).ZRemRangeByLex({key:{key:e,transactionId:n(this,R)},min:t,max:i},n(this,O)),this}async zRemRangeByRank(e,t,i){return await n(this,E).ZRemRangeByRank({key:{key:e,transactionId:n(this,R)},start:t,stop:i},n(this,O)),this}async zRemRangeByScore(e,t,i){return await n(this,E).ZRemRangeByScore({key:{key:e,transactionId:n(this,R)},min:t,max:i},n(this,O)),this}async hgetall(e){return await n(this,E).HGetAll({key:e,transactionId:n(this,R)},n(this,O)),this}async hget(e,t){return await n(this,E).HGet({key:e,field:t,transactionId:n(this,R)},n(this,O)),this}async hset(e,t){let i=Object.entries(t).map(([s,o])=>({field:s,value:o}));return await n(this,E).HSet({key:e,fv:i,transactionId:n(this,R)},n(this,O)),this}async hincrby(e,t,i){return await n(this,E).HIncrBy({key:e,field:t,value:i,transactionId:n(this,R)},n(this,O)),this}async hdel(e,t){return await n(this,E).HDel({key:e,fields:t,transactionId:n(this,R)},n(this,O)),this}async hscan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,transactionId:n(this,R)};return await n(this,E).HScan(o,n(this,O)),this}async hkeys(e){return await n(this,E).HKeys({key:e,transactionId:n(this,R)},n(this,O)),this}async hlen(e){return await n(this,E).HLen({key:e,transactionId:n(this,R)},n(this,O)),this}};E=new WeakMap,R=new WeakMap,O=new WeakMap;var M,li,Xc=class Xc{constructor(e,t=void 0,i=$c.INSTALLATION){d(this,M,void 0);d(this,li,void 0);l(this,M,e),l(this,li,t),this.scope=i,this.global=i===$c.INSTALLATION?new Xc(n(this,M),n(this,li),$c.GLOBAL):this}get storage(){return n(this,li)||u.redisPlugin}async watch(...e){let t=await this.storage.Watch({keys:e},n(this,M));return new Kc(this.storage,t,n(this,M))}async get(e){let t=await this.storage.Get({key:e,scope:this.scope},n(this,M));return t!==null?t.value??void 0:t}async set(e,t,i){let s;return i?.expiration&&(s=Math.floor((i.expiration.getTime()-Date.now())/1e3),s<1&&(s=1)),(await this.storage.Set({key:e,value:t,nx:i?.nx===!0&&!i.xx,xx:i?.xx===!0&&!i.nx,expiration:s||0,scope:this.scope},n(this,M))).value}async del(...e){await this.storage.Del({keys:e,scope:this.scope},n(this,M))}async incrBy(e,t){return(await this.storage.IncrBy({key:e,value:t,scope:this.scope},n(this,M))).value}async getRange(e,t,i){let s=await this.storage.GetRange({key:e,start:t,end:i,scope:this.scope},n(this,M));return s!==null?s.value:s}async setRange(e,t,i){return(await this.storage.SetRange({key:e,offset:t,value:i,scope:this.scope},n(this,M))).value}async strlen(e){return(await this.storage.Strlen({key:e,scope:this.scope},n(this,M))).value}async expire(e,t){await this.storage.Expire({key:e,seconds:t,scope:this.scope},n(this,M))}async expireTime(e){return(await this.storage.ExpireTime({key:e,scope:this.scope},n(this,M))).value}async zAdd(e,...t){return(await this.storage.ZAdd({key:e,members:t,scope:this.scope},n(this,M))).value}async zRange(e,t,i,s){let o={rev:!1,byLex:!1,byScore:!1,offset:0,count:1e3};return s?.reverse&&(o.rev=s.reverse),s?.by==="lex"?o.byLex=!0:s?.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},n(this,M))).members}async zRem(e,t){return(await this.storage.ZRem({key:{key:e},members:t,scope:this.scope},n(this,M))).value}async zRemRangeByLex(e,t,i){return(await this.storage.ZRemRangeByLex({key:{key:e},min:t,max:i,scope:this.scope},n(this,M))).value}async zRemRangeByRank(e,t,i){return(await this.storage.ZRemRangeByRank({key:{key:e},start:t,stop:i,scope:this.scope},n(this,M))).value}async zRemRangeByScore(e,t,i){return(await this.storage.ZRemRangeByScore({key:{key:e},min:t,max:i,scope:this.scope},n(this,M))).value}async zScore(e,t){let i=await this.storage.ZScore({key:{key:e},member:t,scope:this.scope},n(this,M));return i!==null?i.value:i}async zRank(e,t){let i=await this.storage.ZRank({key:{key:e},member:t,scope:this.scope},n(this,M));return i!==null?i.value:i}async zIncrBy(e,t,i){let s=await this.storage.ZIncrBy({key:e,member:t,value:i,scope:this.scope},n(this,M));return s!==null?s.value:s}async mget(e){let t=await this.storage.MGet({keys:e,scope:this.scope},n(this,M));return t!==null?t.values.map(i=>i||null):t}async mset(e){let t=Object.entries(e).map(([i,s])=>({key:i,value:s}));await this.storage.MSet({kv:t,scope:this.scope},n(this,M))}async zCard(e){let t=await this.storage.ZCard({key:e,scope:this.scope},n(this,M));return t!==null?t.value:t}async zScan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,scope:this.scope};return await this.storage.ZScan(o,n(this,M))}async type(e){let t=await this.storage.Type({key:e,scope:this.scope},n(this,M));return t!==null?t.value:t}async hget(e,t){let i=await this.storage.HGet({key:e,field:t,scope:this.scope},n(this,M));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},n(this,M))).value}async hgetall(e){let t=await this.storage.HGetAll({key:e,scope:this.scope},n(this,M));return t!==null?t.fieldValues:t}async hdel(e,t){return(await this.storage.HDel({key:e,fields:t,scope:this.scope},n(this,M))).value}async hscan(e,t,i,s){let o={key:e,cursor:t,pattern:i,count:s,scope:this.scope};return await this.storage.HScan(o,n(this,M))}async hkeys(e){let t=await this.storage.HKeys({key:e,scope:this.scope},n(this,M));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},n(this,M))).value}async hlen(e){return(await this.storage.HLen({key:e,scope:this.scope})).value}};M=new WeakMap,li=new WeakMap;var ui=Xc;var cr,ci=class{constructor(e){d(this,cr,void 0);l(this,cr,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},n(this,cr))).id}async cancelJob(e){await u.schedulerPlugin.Cancel({id:e},n(this,cr))}async listJobs(){return(await u.schedulerPlugin.List({after:new Date(0),before:new Date(Date.now()+31536e7)},n(this,cr))).actions.map(t=>(g(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}))}};cr=new WeakMap;var ds,mi=class{constructor(e){d(this,ds,void 0);l(this,ds,e)}async get(e){return(await this.getAll())[e]}async getAll(){let t=await u.settingsPlugin.GetSettings({},n(this,ds));if(!t.installationSettings)throw new Error("Could not get installation settings");if(!t.appSettings)throw new Error("Could not get app settings");return{...Ry(t.installationSettings.settings,u.installationSettings),...Ry(t.appSettings.settings,u.appSettings)}}};ds=new WeakMap;function Ry(r,e){let t=Object.keys(r).reduce((i,s)=>(i[s]=Wc(r[s]),i),{});return e&&Oy(t,e),t}function Oy(r,e){for(let t of e)t.type==="group"?Oy(r,t.fields):!(t.name in r)&&"defaultValue"in t&&(r[t.name]=t.defaultValue)}import{EffectType as Zc,Form as A0,ToastAppearance as Fy}from"@devvit/protos";var mr,pi,Rd=class{constructor(e){d(this,mr,[]);d(this,pi,void 0);l(this,pi,e)}showForm(e,t){let i=u.formDefinitions.get(e);if(!i&&n(this,pi)){let a=n(this,pi).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 s=i.form instanceof Function?i.form(t??{}):i.form,o=A0.fromPartial({id:e,title:s.title,acceptLabel:s.acceptLabel,cancelLabel:s.cancelLabel,shortDescription:s.description});dr(s.fields),o.fields=dt(s.fields),n(this,mr).push({type:Zc.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?Fy.SUCCESS:Fy.NEUTRAL}:t={text:e},n(this,mr).push({type:Zc.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(),n(this,mr).push({type:Zc.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}get __effects(){return n(this,mr)}};mr=new WeakMap,pi=new WeakMap;function Ue({metadata:r,ui:e,hooks:t,reconciler:i}){let s=new si(r),o=new ii(r),a=new ui(r),c=Cy(a,i?i.state:{}),p=new di(r),f=new ci(r),v=new mi(r),m=e?new Rd(i):void 0,k=new ni(r),b=new ri,C=new oi(r),w=t&&i?cy(i):void 0,x=t&&i?uy(i):void 0,F=t&&i?ly(i):void 0,ue=t&&i?dy(i):void 0;return{modLog:s,kvStore:o,redis:a,reddit:p,scheduler:f,settings:v,media:k,assets:b,realtime:C,get useForm(){return F??(()=>{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 ue??(()=>{throw new Error("useChannel() is unavailable")})},get ui(){if(!m)throw new Error("ui client is not available");return m}}}var My={name:"@devvit/public-api",version:"0.11.0-dev",license:"BSD-3-Clause",repository:{type:"git",url:"https://developers.reddit.com/"},type:"module",exports:{".":"./dist/index.js","./package.json":"./package.json","./*":"./dist/*"},main:"./dist/index.js",files:["dist/**"],scripts:{build:"yarn build:icon-types && yarn build:semantic-colors && tsc && cp -af devvit.tsconfig.json dist/ && yarn build:types && yarn build:min && yarn build:unmin","build:icon-types":"make-icons src/types/icons.ts","build:min":"esbuild --bundle --sourcemap=linked --target=es2020 --format=esm --metafile=dist/meta.min.json --outfile=dist/public-api.min.js --external:@devvit/protos --minify src/index.ts","build:semantic-colors":"node scripts/make-semantic-colors.js","build:types":"api-extractor run && sed -ne '/declare global {/,$ p' src/devvit/Devvit.ts >> dist/public-api.d.ts","build:unmin":"esbuild --bundle --sourcemap=inline --target=es2020 --format=iife --metafile=dist/meta.json --outfile=dist/public-api.iife.js --global-name=devvitPublicAPI src/index.ts",clean:"rm -rf .turbo api-extractor coverage dist src/devvit/internals/semanticColors.ts src/types/icons.ts || :",clobber:"yarn clean && rm -rf node_modules",dev:"tsc -w","dev:build":"chokidar ./src --command 'yarn build' --ignore './src/types/icons.ts' --ignore './src/devvit/internals/semanticColors.ts'",lint:"redlint .","lint:fix":"yarn lint --fix",prepublishOnly:"publish-package-json",test:"yarn test:unit && yarn test:types && yarn test:size","test:size":"filesize","test:types":"tsc --noEmit","test:unit":"vitest run","test:unit-with-coverage":"vitest run --coverage"},types:"./dist/index.d.ts",dependencies:{"@devvit/protos":"0.11.0-dev","@devvit/shared-types":"0.11.0-dev","base64-js":"1.5.1","clone-deep":"4.0.1","core-js":"3.27.2","lodash.isequal":"4.5.0"},devDependencies:{"@ampproject/filesize":"4.3.0","@devvit/eslint-config":"0.11.0-dev","@devvit/repo-tools":"0.11.0-dev","@devvit/tsconfig":"0.11.0-dev","@microsoft/api-extractor":"7.41.0","@reddit/faceplate-ui":"11.3.3","@types/clone-deep":"4.0.1","@types/core-js":"2.5.6","@types/lodash.isequal":"4.5.6","@vitest/coverage-c8":"0.32.0","chokidar-cli":"3.0.0",esbuild:"0.18.12",eslint:"8.9.0",typescript:"5.3.2",vitest:"1.6.0"},publishConfig:{directory:"dist"},filesize:{"dist/public-api.min.js":{gzip:"78 KB",none:"255 KB"}},source:"./src/index.ts"};function de(r,e,t){let i=r[B.Subreddit]?.values[0];g(i,"subreddit is missing from Context");let s=r[B.AppUser]?.values[0];g(s,"appAccountId is missing from Context");let o=r[B.User]?.values[0],a=E0(r);return{appAccountId:s,subredditId:i,userId:o,postId:e,commentId:t,debug:a,toJSON(){return{appAccountId:s,subredditId:i,userId:o,postId:e,commentId:t,debug:a}}}}function E0(r){let e={blocks:void 0,emitSnapshots:void 0,emitState:void 0,realtime:void 0,runtime:void 0,surface:void 0,useAsync:void 0},t={};for(let s in e)t[s.toLowerCase()]=s;let i={};for(let s of(r[B.Debug]?.values??[]).join().split(",")){let[o,a]=s.split("=");o&&(o=o.trim(),a=a?.trim(),o.toLowerCase()in t&&(o=t[o.toLowerCase()]),i[o]??(i[o]=a||`${!0}`))}return r[B.Debug]&&console.info(`[api] @devvit/public-api v${My.version} ${Object.entries(i).map(([s,o])=>`${s}=${o}`).join(" ")}`),{...i,metadata:r}}async function Od(r,e,t){if(!e)throw new Error("Settings were not defined.");let i=R0.fromPartial({success:!0,errors:{}}),s=wt(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=s[c],f=a.onValidate,v=Object.assign(Ue({metadata:t}),de(t)),m=await f({value:p,isEditing:r.editing},v);m&&(i.success=!1,i.errors[c]=m)}})),i}async function M0(){if(!u.appSettings)throw new Error("App settings were not defined.");return F0.fromPartial({fields:{fields:dt(u.appSettings)}})}async function L0(r,e){return Od(r,u.appSettings,e)}function Ly(r){r.provides(O0),L("GetAppSettingsFields",M0),L("ValidateAppForm",L0)}import{CustomPostDefinition as N0}from"@devvit/protos";import{BlockRenderEventType as um,EffectType as Xy}from"@devvit/protos";function fi(r){return r.__effects}function Uy(){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 lm,BlockAnimationDirection as Wy,BlockAnimationLoopMode as Gy,BlockAnimationType as Vy,BlockAvatarBackground as zy,BlockAvatarFacing as Jy,BlockAvatarSize as Tt,BlockBorderWidth as Md,BlockButtonAppearance as Et,BlockButtonSize as em,BlockFullSnooSize as gi,BlockGap as Ld,BlockHorizontalAlignment as tm,BlockIconSize as Ud,BlockImageResizeMode as ls,BlockPadding as us,BlockRadius as cs,BlockSizeUnit as rm,BlockSpacerShape as im,BlockSpacerSize as Bd,BlockStackDirection as nm,BlockTextOutline as sm,BlockTextOverflow as om,BlockTextSize as hi,BlockTextStyle as am,BlockTextWeight as $y,BlockType as Be,BlockVerticalAlignment as dm}from"@devvit/protos";var Yc={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 By={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"},Dy=r=>!!r.match(/^(#[0-9a-fA-F]{3,8}).*/),_y=r=>r in Yc,Qc=r=>r in By,Ny=r=>!!r.match(/^rgba?\(.*/),qy=r=>!!r.match(/^hsla?\(.*/),jy=(r,e="light")=>{if(Qc(r))return Fd(r);let i=Yc[r];return typeof i=="string"?i:i[e]},Fd=r=>By[r]??r,Hy=r=>{let[e,t,i,s]=r.replace(/^rgba?\(|\s+|\)$/g,"").split(",");if(!e||!t||!i)return r;let a=[...[e,t,i].map(p=>parseFloat(p))];if(s){let p=parseFloat(s),f=Math.round(p*255);a.push(f)}return`#${a.map(p=>p.toString(16).padStart(2,"0")).join("")}`};var Ky="data-",U0=new Set(["onPress","onMessage"]),B0=new Map([["onPress",lm.ACTION_CLICK],["onMessage",lm.ACTION_WEBVIEW]]),ms,vi=class{constructor(e=()=>{}){d(this,ms,void 0);l(this,ms,e)}createBlocksElementOrThrow({type:e,props:t,children:i}){let s=this.createBlocksElement({type:e,props:t,children:i});if(!s)throw new Error(`Could not create block of type ${e}`);return s}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 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 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 us.PADDING_NONE;case"xsmall":return us.PADDING_XSMALL;case"small":return us.PADDING_SMALL;case"medium":return us.PADDING_MEDIUM;case"large":return us.PADDING_LARGE}}makeBlockRadius(e){switch(e){case"none":return cs.RADIUS_NONE;case"small":return cs.RADIUS_SMALL;case"medium":return cs.RADIUS_MEDIUM;case"large":return cs.RADIUS_LARGE;case"full":return cs.RADIUS_FULL}}makeBlockGap(e){switch(e){case"none":return Ld.GAP_NONE;case"small":return Ld.GAP_SMALL;case"medium":return Ld.GAP_MEDIUM;case"large":return Ld.GAP_LARGE}}makeBlockAlignment(e){if(e===void 0)return;let t,i;if(e.includes("top")?t=dm.ALIGN_TOP:e.includes("middle")?t=dm.ALIGN_MIDDLE:e.includes("bottom")&&(t=dm.ALIGN_BOTTOM),e.includes("start")?i=tm.ALIGN_START:e.includes("center")?i=tm.ALIGN_CENTER:e.includes("end")&&(i=tm.ALIGN_END),t!==void 0||i!==void 0)return{vertical:t,horizontal:i}}makeBlockBorder(e,t,i,s){if(!e&&!t)return;let o;switch(e){case"none":o=Md.BORDER_WIDTH_NONE;break;case"thin":o=Md.BORDER_WIDTH_THIN;break;case"thick":o=Md.BORDER_WIDTH_THICK;break;default:o=Md.BORDER_WIDTH_THIN;break}let a=t??"neutral-border-weak",c=this.getThemedColors(a,i,s);return{width:o,color:c?.light,colors:c}}makeBlockTextSize(e){switch(e){case"xsmall":return hi.TEXT_SIZE_XSMALL;case"small":return hi.TEXT_SIZE_SMALL;case"medium":return hi.TEXT_SIZE_MEDIUM;case"large":return hi.TEXT_SIZE_LARGE;case"xlarge":return hi.TEXT_SIZE_XLARGE;case"xxlarge":return hi.TEXT_SIZE_XXLARGE}}makeBlockTextStyle(e){switch(e){case"body":return am.TEXT_STYLE_BODY;case"metadata":return am.TEXT_STYLE_METADATA;case"heading":return am.TEXT_STYLE_HEADING}}makeBlockTextOutline(e){switch(e){case"none":return sm.TEXT_OUTLINE_NONE;case"thin":return sm.TEXT_OUTLINE_THIN;case"thick":return sm.TEXT_OUTLINE_THICK}}makeBlockTextWeight(e){switch(e){case"regular":return $y.TEXT_WEIGHT_REGULAR;case"bold":return $y.TEXT_WEIGHT_BOLD}}makeBlockTextOverflow(e){switch(e){case"clip":return om.TEXT_OVERFLOW_CLIP;case"ellipsis":return om.TEXT_OVERFLOW_ELLIPSE}return om.TEXT_OVERFLOW_ELLIPSE}makeBlockButtonAppearance(e){switch(e){case"secondary":return Et.BUTTON_APPEARANCE_SECONDARY;case"primary":return Et.BUTTON_APPEARANCE_PRIMARY;case"plain":return Et.BUTTON_APPEARANCE_PLAIN;case"bordered":return Et.BUTTON_APPEARANCE_BORDERED;case"media":return Et.BUTTON_APPEARANCE_MEDIA;case"destructive":return Et.BUTTON_APPEARANCE_DESTRUCTIVE;case"caution":return Et.BUTTON_APPEARANCE_CAUTION;case"success":return Et.BUTTON_APPEARANCE_SUCCESS}}makeBlockButtonSize(e){switch(e){case"small":return em.BUTTON_SIZE_SMALL;case"medium":return em.BUTTON_SIZE_MEDIUM;case"large":return em.BUTTON_SIZE_LARGE}}makeBlockImageResizeMode(e){switch(e){case"none":return ls.IMAGE_RESIZE_NONE;case"fit":return ls.IMAGE_RESIZE_FIT;case"fill":return ls.IMAGE_RESIZE_FILL;case"cover":return ls.IMAGE_RESIZE_COVER;case"scale-down":return ls.IMAGE_RESIZE_SCALE_DOWN}}makeBlockSpacerSize(e){switch(e){case"xsmall":return Bd.SPACER_XSMALL;case"small":return Bd.SPACER_SMALL;case"medium":return Bd.SPACER_MEDIUM;case"large":return Bd.SPACER_LARGE}}makeBlockSpacerShape(e){switch(e){case"invisible":return im.SPACER_INVISIBLE;case"thin":return im.SPACER_THIN;case"square":return im.SPACER_SQUARE}}makeBlockIconSize(e){switch(e){case"xsmall":return Ud.ICON_SIZE_XSMALL;case"small":return Ud.ICON_SIZE_SMALL;case"medium":return Ud.ICON_SIZE_MEDIUM;case"large":return Ud.ICON_SIZE_LARGE}}makeBlockAvatarSize(e){switch(e){case"xxsmall":return Tt.AVATAR_SIZE_XXSMALL;case"xsmall":return Tt.AVATAR_SIZE_XSMALL;case"small":return Tt.AVATAR_SIZE_SMALL;case"medium":return Tt.AVATAR_SIZE_MEDIUM;case"large":return Tt.AVATAR_SIZE_LARGE;case"xlarge":return Tt.AVATAR_SIZE_XXLARGE;case"xxlarge":return Tt.AVATAR_SIZE_XXLARGE;case"xxxlarge":return Tt.AVATAR_SIZE_XXXLARGE}}makeBlockAvatarFacing(e){switch(e){case"left":return Jy.AVATAR_FACING_LEFT;case"right":return Jy.AVATAR_FACING_RIGHT}}makeBlockFullSnooSize(e){switch(e){case"xsmall":return gi.FULLSNOO_XSMALL;case"small":return gi.FULLSNOO_SMALL;case"medium":return gi.FULLSNOO_MEDIUM;case"large":return gi.FULLSNOO_LARGE;case"xlarge":return gi.FULLSNOO_XLARGE;case"xxlarge":return gi.FULLSNOO_XXLARGE}}makeBlockAvatarBackground(e){switch(e){case"dark":return zy.AVATAR_BG_DARK;case"light":return zy.AVATAR_BG_LIGHT}}makeBlockAnimationType(e){return e==="lottie"||e===void 0?Vy.ANIM_LOTTIE:Vy.UNRECOGNIZED}makeBlockAnimationDirection(e){switch(e){case"backward":return Wy.ANIM_DIR_BACKWARD;case"forward":return Wy.ANIM_DIR_FORWARD}}makeBlockLoopMode(e){switch(e){case"repeat":return Gy.ANIM_LOOP_REPEAT;case"bounce":return Gy.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:s,unit:o}=this.parseSize(e.height)??{};return{width:t,widthUnit:i,height:s,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:rm.SIZE_UNIT_PERCENT};let t=e.match(/^(\d+(?:\.\d+)?)(px|%)?$/);if(t==null)return;let i=rm.SIZE_UNIT_PERCENT;return t?.at(2)==="px"&&(i=rm.SIZE_UNIT_PIXELS),{value:Number.parseFloat(t[1]),unit:i}}getDataSet(e){return Object.keys(e).filter(t=>t.startsWith(Ky)).reduce((t,i)=>(t[i.substring(Ky.length)]=e[i],t),{})}makeActions(e,t){let i=[],s=this.getDataSet(t);return U0.forEach(o=>{if(o in t){let a=t[o];i.push({type:B0.get(o)??lm.UNRECOGNIZED,id:a.toString(),data:s})}}),i}blockColorToHex(e,t="light"){if(e)return e=e.toLowerCase(),Dy(e)?e:_y(e)?jy(e,t):Qc(e)?Fd(e):Ny(e)?Hy(e):qy(e)?e:(console.warn(`Could not parse color: ${e}.`),Fd("red"))}childrenToBlocks(e){return e.flatMap(t=>(typeof t!="string"?this.createBlocksElement(t):void 0)??[])}getThemedColors(e,t,i){let s=this.blockColorToHex(t,"light"),o=this.blockColorToHex(i,"dark"),a=[];if(e&&(!s||!o)){let c=Array.from(e?.matchAll(/[\w#-]+(?:\([\w\t ,.#-]+\))?/g)??[]);a.push(...c.map(p=>p[0]))}return s||(s=this.blockColorToHex(a?.at(0),"light")),o||(o=this.blockColorToHex(a?.at(1)??a?.at(0),"dark")),s||o?{light:s,dark:o}:void 0}parsePixels(e){return typeof e=="string"?Number(e.slice(0,-2)):e}resolveAssetUrl(e,t){return n(this,ms).call(this)?.getURL(e,t)??e}childrenToString(e){return e.map(t=>t.toString()).join("")}makeRoot(e,...t){return this.wrapRoot(e,this.childrenToBlocks(t))}wrapRoot(e,t){return this.makeBlock(Be.BLOCK_ROOT,{},{rootConfig:{children:t,height:this.makeRootHeight(u.customPostType?.height??e?.height??"regular")}})}makeStackBlock(e,t,i){let s=this.getThemedColors(t?.backgroundColor,t?.lightBackgroundColor,t?.darkBackgroundColor);return this.makeBlock(Be.BLOCK_STACK,t,{stackConfig:{alignment:this.makeBlockAlignment(t?.alignment),backgroundColor:s?.light,backgroundColors:s,border:this.makeBlockBorder(t?.border,t?.borderColor,t?.lightBorderColor,t?.darkBorderColor),children:this.childrenToBlocks(i),cornerRadius:this.makeBlockRadius(t?.cornerRadius),direction:e,gap:this.makeBlockGap(t?.gap),padding:this.makeBlockPadding(t?.padding),reverse:t?.reverse}})}makeHStack(e,...t){return this.makeStackBlock(nm.STACK_HORIZONTAL,e,t)}makeVStack(e,...t){return this.makeStackBlock(nm.STACK_VERTICAL,e,t)}makeZStack(e,...t){return this.makeStackBlock(nm.STACK_DEPTH,e,t)}makeText(e,...t){let i=this.getThemedColors(e?.color,e?.lightColor,e?.darkColor);return this.makeBlock(Be.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(Be.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}})}makeImage(e){return e&&this.makeBlock(Be.BLOCK_IMAGE,e,{imageConfig:{description:e?.description,resizeMode:this.makeBlockImageResizeMode(e.resizeMode),url:this.resolveAssetUrl(e.url),width:this.parsePixels(e.imageWidth),height:this.parsePixels(e.imageHeight)}})}makeSpacer(e){return this.makeBlock(Be.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(Be.BLOCK_ICON,e,{iconConfig:{icon:e.name,color:t?.light,colors:t,size:this.makeBlockIconSize(e.size)}})}makeAvatar(e){return e&&this.makeBlock(Be.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(Be.BLOCK_FULLSNOO,e,{fullsnooConfig:{userId:e.userId,facing:this.makeBlockAvatarFacing(e.facing),size:this.makeBlockFullSnooSize(e.size)}})}makeAnimation(e){return e&&this.makeBlock(Be.BLOCK_ANIMATION,e,{animationConfig:{type:this.makeBlockAnimationType(e.type),url:this.resolveAssetUrl(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(Be.BLOCK_WEBVIEW,e,{webviewConfig:{url:this.resolveAssetUrl(e.url,{webview:!0}),state:e.state}})}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}}ensureRootBlock(e){let t=e;if(t.type===Be.BLOCK_ROOT)return t.config?.rootConfig&&u.customPostType?.height&&(t.config.rootConfig.height=this.makeRootHeight(u.customPostType?.height)),t;let i=this.wrapRoot(void 0,[t]);if(!i)throw new Error("Could not create root block");return i}};ms=new WeakMap;function Zy(r){if(typeof r=="string")throw new Error("Root element cannot be a string")}var Yy=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+=Yy(i);return e+=`</${r.type}>`,e};function D0(r){return" ".repeat(r)}function _0(r){let e="",t=0,i=r.split(/>\s*</);for(let s=0;s<i.length;s++){let o=i[s];s===0&&(o=o.trim()),s===i.length-1&&(o=o.trim());let a=o.charAt(0)==="/";a&&t--,e+=D0(t),s!==0&&(e+="<"),e+=o,s!==i.length-1&&(e+=`>
2
2
  `),!a&&o.indexOf("</")===-1&&o.charAt(o.length-1)!=="/"&&t++}return e}var Dd,Qy,pr,ps,fs,cm,gs,lt=class{constructor(e,t,i,s,o){d(this,Dd);d(this,pr);d(this,fs);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 vi(()=>this.assets);this.effects=[];d(this,gs,!1);this.component=e,this.event=t,this.state={__renderState:{},...i},this.metadata=s,this.state.__realtimeChannels&&(this.realtimeChannels=this.state.__realtimeChannels);let a=Ue({reconciler:this,hooks:!0,ui:!0,metadata:s});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=y(this,pr,ps).call(this),t={type:this.component,props:e,children:[]},i=await this.processBlock(t);if(Zy(i),this.transformer.createBlocksElementOrThrow(i),this.isUserActionRender&&this.blockRenderEventId){let s=this.actions.get(this.blockRenderEventId);s&&await s(this.event.data)}for(let s of this.pendingHooks)await s();this.buildNextState(),y(this,Dd,Qy).call(this)}async buildBlocksUI(){let e=y(this,pr,ps).call(this),t={type:this.component,props:e,children:[]},i=await this.renderElement(e,t);return this.transformer.ensureRootBlock(i)}async renderElement(e,t){let i=await this.processBlock(t);return Zy(i),(u.debug.emitSnapshots||e.debug.emitSnapshots)&&console.debug(_0(Yy(i))),(u.debug.emitState||e.debug.emitState)&&console.debug(JSON.stringify(this.state,void 0,2)),this.transformer.createBlocksElementOrThrow(i)}async processProps(e){let t=e.props??{},i=["onPress","onMessage"];for(let s of i)if(s in t){let o=t[s],a=o?.name,c=this.makeUniqueActionID(`${e.type}.${a??s}`);this.actions.set(c,o),t[s]=c}}async processBlock(e,t=Uy(),i=[]){let s=e;if(typeof s.type=="string"){let c=[];for(let m=0;m<s.children.length;m++){let k=s.children[m];k!=null&&c.push(await this.processBlock(k,t,[...i,`${s.type}.${m}`]))}let p=c.flat(),f=y(this,fs,cm).call(this,p);return await this.processProps(s),{type:s.type,props:s.props,children:f}}if(typeof s.type=="function"){let c=t(`${i.length?i.join("."):"root"}.${s.type.name.length?s.type.name:"anonymous"}`);this.currentComponentKey.push(c),this.renderState[c]||(this.renderState[c]={});let p=s.children.flatMap(m=>m),f={...y(this,pr,ps).call(this),...s.props,children:p},v;for(;v===void 0;)try{v=await s.type(f,y(this,pr,ps).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,s.type.name])}if(typeof s=="string")return s;if(typeof s=="number")return`${s}`;let o=[],a="";return Array.isArray(s)?o=s:typeof s.type>"u"&&s.children&&(o=s.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===um.RENDER_INITIAL:!1}get isUserActionRender(){return this.event?this.event.type===um.RENDER_USER_ACTION:!1}get isEffectRender(){return this.event?this.event.type===um.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){n(this,gs)||(l(this,gs,!0),this.effects.push({type:Xy.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:Xy.EFFECT_REALTIME_SUB,realtimeSubscriptions:{subscriptionIds:this.realtimeChannels}}]:[]}getEffects(){return[...fi(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}:{}}}};Dd=new WeakSet,Qy=function(){this.actions.clear(),this.currentComponentKey=[],this.currentHookIndex=0,this.pendingHooks=[],this.realtimeChannels=[],this.realtimeUpdated=!1},pr=new WeakSet,ps=function(){let e={...de(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,uiEnvironment:{timezone:this.metadata[B.Timezone]?.values[0],locale:this.metadata[B.Language]?.values[0],dimensions:this.dimensions},...this.hooks};return e.debug.effects=this,e},fs=new WeakSet,cm=function(e){let t=[];for(let i of e)typeof i=="string"?t.push(i):i.type==="__fragment"?t.push(...y(this,fs,cm).call(this,i.children)):t.push(i);return t},gs=new WeakMap;async function q0(r,e){let t=u.customPostType;if(!t)throw new Error("Custom post type not registered");let i=new lt((o,a)=>t.render(a),r.blocks,r.state,e,r.dimensions),s=await i.render();return{state:i.state,blocks:{ui:s},effects:i.getEffects()}}function eb(r){r.provides(N0),L("RenderPost",q0)}import{GetFieldsResponse as j0,InstallationSettingsDefinition as H0}from"@devvit/protos";async function W0(){if(!u.installationSettings)throw new Error("Installation settings were not defined.");return j0.fromPartial({fields:{fields:dt(u.installationSettings)}})}async function G0(r,e){return Od(r,u.installationSettings,e)}function tb(r){r.provides(H0),L("GetSettingsFields",W0),L("ValidateForm",G0)}import{ContextActionDefinition as V0,ContextActionDescription as z0,ContextActionResponse as J0}from"@devvit/protos";var rb=r=>`menuItem.${r}`;function mm(r){return u.menuItems.find((e,t)=>rb(t)===r)}async function $0(r,e){let t=u.menuItems;if(!t.length)throw new Error("No menu items registered.");return{actions:t.map((s,o)=>z0.fromPartial({actionId:rb(o),name:s.label,description:s.description,contexts:{subreddit:s.location.includes("subreddit"),post:s.location.includes("post"),comment:s.location.includes("comment")},users:{loggedOut:s.forUserType?.includes("loggedOut"),member:s.forUserType?.includes("member"),moderator:s.forUserType?.includes("moderator")},postFilters:s.postFilter==="currentApp"?{currentApp:!0}:void 0}))}}async function K0(r,e){let t=mm(r.actionId);if(!t)throw new Error(`MenuItem ${r.actionId} not found`);let i=r.comment?.id&&`t1_${r.comment.id}`,s=r.post?.id&&`t3_${r.post.id}`,o=r.subreddit?.id&&`t5_${r.subreddit.id}`,a=i||s||o;g(a,"targetId is missing from ContextActionRequest");let c={targetId:a,location:r.comment?"comment":r.post?"post":"subreddit"},p=Object.assign(Ue({ui:!0,metadata:e}),de(e,s,i),{uiEnvironment:{timezone:e[B.Timezone]?.values[0],locale:e[B.Language]?.values[0]}});return await t.onPress(c,p),J0.fromPartial({effects:fi(p.ui)})}function ib(r){r.provides(V0),L("GetActions",$0),L("OnAction",K0)}function ut(r){return r?r===!0?!0:r.enabled:!1}import{SchedulerHandlerDefinition as X0}from"@devvit/protos";async function Z0(r,e){let t=r.type,i=u.scheduledJobHandlers.get(t);if(!i)throw new Error(`Job ${t} not found`);let s={name:t,data:r.data},o=Object.assign(Ue({metadata:e}),de(e));await i(s,o)}function nb(r){r.provides(X0),L("HandleScheduledAction",Z0)}import{HandlerResult as Y0,OnAppInstallDefinition as Q0,OnAppUpgradeDefinition as eE,OnCommentCreateDefinition as tE,OnCommentDeleteDefinition as rE,OnCommentReportDefinition as iE,OnCommentSubmitDefinition as nE,OnCommentUpdateDefinition as sE,OnModActionDefinition as oE,OnModMailDefinition as aE,OnPostCreateDefinition as dE,OnPostDeleteDefinition as lE,OnPostFlairUpdateDefinition as uE,OnPostReportDefinition as cE,OnPostSubmitDefinition as mE,OnPostUpdateDefinition as pE}from"@devvit/protos";var _d;(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 s(o){return o instanceof Error?`${o.stack||o.message||o.name}`:String(o)}r.caughtToString=s})(_d||(_d={}));function ie(r,e){return g(e),async(t,i)=>{let s={...t,type:r},o=Object.assign(Ue({metadata:i}),de(i)),a=await Promise.allSettled(e.map(p=>p(s,o))),c=fE(a);if(c)throw c.err;return Y0.fromPartial({})}}function sb(r){for(let e of u.triggerOnEventHandlers.keys())switch(e){case"PostSubmit":r.provides(mE),L("OnPostSubmit",ie("PostSubmit",u.triggerOnEventHandlers.get(e)));break;case"PostCreate":r.provides(dE),L("OnPostCreate",ie("PostCreate",u.triggerOnEventHandlers.get(e)));break;case"PostUpdate":r.provides(pE),L("OnPostUpdate",ie("PostUpdate",u.triggerOnEventHandlers.get(e)));break;case"PostReport":r.provides(cE),L("OnPostReport",ie("PostReport",u.triggerOnEventHandlers.get(e)));break;case"PostDelete":r.provides(lE),L("OnPostDelete",ie("PostDelete",u.triggerOnEventHandlers.get(e)));break;case"PostFlairUpdate":r.provides(uE),L("OnPostFlairUpdate",ie("PostFlairUpdate",u.triggerOnEventHandlers.get(e)));break;case"CommentSubmit":r.provides(nE),L("OnCommentSubmit",ie("CommentSubmit",u.triggerOnEventHandlers.get(e)));break;case"CommentCreate":r.provides(tE),L("OnCommentCreate",ie("CommentCreate",u.triggerOnEventHandlers.get(e)));break;case"CommentUpdate":r.provides(sE),L("OnCommentUpdate",ie("CommentUpdate",u.triggerOnEventHandlers.get(e)));break;case"CommentReport":r.provides(iE),L("OnCommentReport",ie("CommentReport",u.triggerOnEventHandlers.get(e)));break;case"CommentDelete":r.provides(rE),L("OnCommentDelete",ie("CommentDelete",u.triggerOnEventHandlers.get(e)));break;case"AppInstall":r.provides(Q0),L("OnAppInstall",ie("AppInstall",u.triggerOnEventHandlers.get(e)));break;case"AppUpgrade":r.provides(eE),L("OnAppUpgrade",ie("AppUpgrade",u.triggerOnEventHandlers.get(e)));break;case"ModAction":r.provides(oE),L("OnModAction",ie("ModAction",u.triggerOnEventHandlers.get(e)));break;case"ModMail":r.provides(aE),L("OnModMail",ie("ModMail",u.triggerOnEventHandlers.get(e)));break;default:throw new Error(`Unknown trigger event: ${e}`)}}function fE(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=>_d.caughtToString(t)).join(`
3
- `))}}var Yb=Br(vb(),1),Qb=Br(Xd(),1);import{EffectType as pO,UIEventHandlerDefinition as fO}from"@devvit/protos";async function gO(r,e){let t=r.state??{},i=(0,Yb.default)(t),s=Ue({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 b=new lt((C,w)=>u.customPostType?.render(w)??null,r.event,r.state,e,void 0);return await b.reconcile(),{state:b.state,effects:b.getEffects()}}let f=u.formDefinitions.get(p);if(!f)throw new Error(`Form with key ${p} not found`);let v,m;if(i.__contextAction){let{actionId:b,thingId:C}=i.__contextAction,w=mm(b);w?.location==="post"?v=C:w?.location==="comment"&&(m=C)}let k=Object.assign(s,de(e,v,m),{uiEnvironment:{timezone:e[B.Timezone]?.values[0],locale:e[B.Language]?.values[0]}});await f.onSubmit({values:wt(r.event.formSubmitted.results)},k)}else if(r.event?.realtimeEvent){if(u.customPostType){let p=new lt((f,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,Qb.default)(t,i),a=fi(s.ui),c=o?[...a,{type:pO.EFFECT_RERENDER_UI,rerenderUi:{delaySeconds:0}}]:a;return{state:i,effects:c}}function ek(r){r.provides(fO),L("HandleUIEvent",gO)}import{CustomPostDefinition as Sk}from"@devvit/protos";var ll=Br(Xd(),1);import{EffectType as Tm,Form as vO,ToastAppearance as ik}from"@devvit/protos";function tk(r){let e=r.match(/form\.hook\.(.+)\.0/);if(e?.[1])return e[1]}var xm=class{constructor(e,t,i){this.state=null;this.hookId=e.hookId,this.form=t,this.onSubmit=i,this.onUIEvent=async s=>{s.formSubmitted&&await i(wt(s.formSubmitted.results))}}};function Am(r,e){let t=De({namespace:"useForm"},i=>new xm(i,r,e));return hO({id:t.hookId})}function hO(r){return`form.hook.${r.id}.0`}function rk(r,e){let t=tk(e);return r.getHook({id:t})}var Ft,Zd=class{constructor(e){d(this,Ft,void 0);l(this,Ft,e)}showForm(e,t){let i=rk(n(this,Ft),e);if(!i)throw new Error("Form does not exist. Make sure you have added it using useForm.");let s=i.form instanceof Function?i.form(t??{}):i.form,o=vO.fromPartial({id:e,title:s.title,acceptLabel:s.acceptLabel,cancelLabel:s.cancelLabel,shortDescription:s.description});dr(s.fields),o.fields=dt(s.fields),n(this,Ft).emitEffect(e,{type:Tm.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?ik.SUCCESS:ik.NEUTRAL}:t={text:e},n(this,Ft).emitEffect(e.toString(),{type:Tm.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(),n(this,Ft).emitEffect(t,{type:Tm.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}};Ft=new WeakMap;import{EffectType as yO,RealtimeSubscriptionStatus as nk}from"@devvit/protos";var Mt,tt,Lt,yr,Ss,Rm,Yd=class Yd{constructor(e,t){d(this,Ss);d(this,Mt,void 0);d(this,tt,void 0);d(this,Lt,void 0);d(this,yr,void 0);l(this,Mt,t.context),l(this,tt,!!t.context._devvitContext?.debug.realtime),l(this,yr,e),l(this,Lt,t.invalidate);let i=t.context.meta[B.App]?.values[0];if(!i)throw Error("useChannel missing app ID metadata");let s=t.context.meta[B.Installation]?.values[0];if(!s)throw Error("useChannel missing install ID from metadata");let o=`${i}:${s}:${e.name}`;if(Object.values(n(this,Mt).hooks).filter(c=>c instanceof Yd).some(c=>c.state.channel===o))throw Error(`useChannel channel names must be unique; "${o}" duplicated`);this.state={channel:o,connected:!1,subscribed:!1}}async onUIEvent(e){let t=e.realtimeEvent;if(!(!t||!this.state.subscribed))switch(t.status){case nk.REALTIME_SUBSCRIBED:n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" connected`),this.state.connected=!0,n(this,Lt).call(this),await n(this,yr).onSubscribed?.();break;case nk.REALTIME_UNSUBSCRIBED:n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" disconnected`),this.state.connected=!1,n(this,Lt).call(this),await n(this,yr).onUnsubscribed?.();break;default:n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" received message: ${JSON.stringify(e,void 0,2)}`),n(this,yr).onMessage(t.event?.data??{});break}}async send(e){if(n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" send message: ${JSON.stringify(e,void 0,2)}`),!this.state.subscribed||!this.state.connected)throw console.debug(`[realtime] "${this.state.channel}" send failed; channel not connected`),Error(`useChannel send failed; "${this.state.channel}" channel not connected`);await n(this,Mt).devvitContext.realtime.send(this.state.channel,e)}get status(){return this.state.subscribed&&this.state.connected?2:this.state.subscribed&&!this.state.connected?1:!this.state.subscribed&&this.state.connected?3:4}subscribe(){this.state.subscribed||(n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" subscribed`),this.state.subscribed=!0,n(this,Lt).call(this),y(this,Ss,Rm).call(this))}unsubscribe(){this.state.subscribed&&(n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" unsubscribed`),this.state.subscribed=!1,n(this,Lt).call(this),y(this,Ss,Rm).call(this))}};Mt=new WeakMap,tt=new WeakMap,Lt=new WeakMap,yr=new WeakMap,Ss=new WeakSet,Rm=function(){let e=Object.values(n(this,Mt).hooks).filter(t=>t instanceof Yd&&t.state.subscribed).map(t=>t.state.channel);n(this,Mt).emitEffect(this.state.channel,{type:yO.EFFECT_REALTIME_SUB,realtimeSubscriptions:{subscriptionIds:e}})};var Em=Yd;function Om(r){if(!r.name||/[^a-zA-Z0-9]/.test(r.name))throw Error("useChannel error: channel names must be nonempty and alphanumeric");let e=`useChannel:${r.name}`;return De({id:e,namespace:e},t=>new Em(r,t))}import{EffectType as Fm}from"@devvit/protos";function sk(r){return typeof r=="object"&&r!==null&&"__deleted"in r}var br,Si=class Si{constructor(e,t){d(this,br,void 0);this._segments=[];this._hooks={};this._prevHookId="";this._effects={};this._changed={};this._requeueEvents=[];this._rootProps={};this._generated={};this._undeliveredHandlers={};this.request=e,this.meta=t,l(this,br,e.state??{__cache:{}}),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={__cache:n(this,br).__cache??{}};for(let i in this._changed)e[i]=this._state[i];let t=new Set(Object.keys(this._state));return Object.keys(this._hooks).forEach(i=>{i!=="__cache"&&t.delete(i)}),t.forEach(i=>{if(i==="__cache")return;let s={__deleted:!0};this._state[i]=e[i]=s}),e}get hooks(){return this._hooks}get _state(){return n(this,br)}set _state(e){this._changed={},this._hooks={},l(this,br,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,s]of Object.entries(t))await s(e,this)}emitEffect(e,t){this._effects[e]=t}addToRequeueEvents(...e){this._devvitContext?.debug.blocks&&console.debug("[blocks] requeueing events",e);let t=e.reduce((i,s)=>(s.retry?i.retry.push(s):i.normal.push(s),i),{retry:[],normal:[]});this._requeueEvents=[...t.retry,...this._requeueEvents,...t.normal]}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 s=this._segments.length-1;s>=0;s--){let o=this._segments[s];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()}}};br=new WeakMap,Si._staticUndeliveredHandlers={};var Pi=Si;var Ut={};Pi.addGlobalUndeliveredEventHandler("intervals",async(r,e)=>{r.timer&&r.hook&&(delete Ut[r.hook],e.emitEffect("timers",{type:Fm.EFFECT_SET_INTERVALS,interval:{intervals:Ut}}))});var Bt,Ci,Ps,wi,Mm=class{constructor(e,t,i){d(this,Bt,void 0);d(this,Ci,void 0);d(this,Ps,void 0);d(this,wi,void 0);this.state={duration:{seconds:0,nanos:0},running:!1};l(this,Ci,i.invalidate),l(this,Bt,i.hookId),l(this,Ps,e),l(this,wi,i.context);let s=Math.floor(t/1e3),o=t%1e3*1e6;this.state.duration={seconds:s,nanos:o}}onStateLoaded(){this.state.running?Ut[n(this,Bt)]={duration:this.state.duration}:delete Ut[n(this,Bt)]}async onUIEvent(e){await n(this,Ps).call(this)}start(){Ut[n(this,Bt)]={duration:this.state.duration},this.state.running=!0,n(this,Ci).call(this),n(this,wi).emitEffect("timers",{type:Fm.EFFECT_SET_INTERVALS,interval:{intervals:Ut}})}stop(){delete Ut[n(this,Bt)],this.state.running=!1,n(this,Ci).call(this),n(this,wi).emitEffect("timers",{type:Fm.EFFECT_SET_INTERVALS,interval:{intervals:Ut}})}};Bt=new WeakMap,Ci=new WeakMap,Ps=new WeakMap,wi=new WeakMap;function Lm(r,e){return De({namespace:"useInterval"},t=>new Mm(r,e,t))}var Ii=class extends Error{};var kr,Cs,ws,xi,Qd=class{constructor(e,t){this.state={value:null,loading:!1};d(this,kr,void 0);d(this,Cs,void 0);d(this,ws,void 0);d(this,xi,void 0);l(this,ws,e),l(this,xi,t.hookId),l(this,kr,t.invalidate),l(this,Cs,t.context)}async onUIEvent(){this.state.value===null&&(this.state.value=await n(this,ws).call(this),this.state.loading=!1,n(this,kr).call(this))}setter(e){this.state.value=e instanceof Function?e(this.state.value):e,n(this,kr).call(this)}onStateLoaded(){if(this.state.value===null){this.state.loading=!0,n(this,kr).call(this);let e={asyncRequest:{requestId:n(this,xi)},hook:n(this,xi)};throw n(this,Cs).addToRequeueEvents(e),new Ii}}};kr=new WeakMap,Cs=new WeakMap,ws=new WeakMap,xi=new WeakMap;function bO(r){let e=De({namespace:"useAsyncState"},t=>new Qd(r,t));return[e.state.value,e.setter.bind(e)]}function Um(r){let e=De({namespace:"useState"},t=>{let i=r instanceof Function?r():r;return i instanceof Promise?new Qd(()=>i,t):{state:{value:i},setter:o=>{e.state.value=o instanceof Function?o(e.state.value):o,t.invalidate()}}});return[e.state.value,e.setter.bind(e)]}var Nm={now(){return new Date}};function ok(r){return`__autocache__${r}`}function ak(r){return`__lock__${r}`}var kO=300,SO=1e3,el=5e3,Bm=3,dk=.1,lk=1e3,PO=3e4;function uk(r){if(r.error)throw new Error(r.error);return r.value}var Dt,_t,_e,Ai,rl,ck,il,mk,nl,pk,Is,Dm,sl,fk,ol,gk,xs,_m,al,hk,tl=class{constructor(e,t,i=Nm){d(this,rl);d(this,il);d(this,nl);d(this,Is);d(this,sl);d(this,ol);d(this,xs);d(this,al);d(this,Dt,void 0);d(this,_t,{});d(this,_e,void 0);d(this,Ai,void 0);l(this,Dt,e),l(this,Ai,t),l(this,_e,i)}async cache(e,t){var a;(a=n(this,Ai)).__cache??(a.__cache={}),l(this,_t,n(this,Ai).__cache),y(this,al,hk).call(this,t);let i=y(this,rl,ck).call(this,t.key);if(i!==void 0)return i;let s=await y(this,xs,_m).call(this,t.key),o=await y(this,il,mk).call(this,t,s,e);return uk(o)}};Dt=new WeakMap,_t=new WeakMap,_e=new WeakMap,Ai=new WeakMap,rl=new WeakSet,ck=function(e){let t=n(this,_t)[e];if(t){let i=n(this,_e).now().getTime(),s=t?.error&&t?.errorTime&&t.errorCount<Bm&&Math.random()<dk&&t.errorTime+lk<i;if(t?.expires&&t.expires<i&&t.checkedAt+lk<i||s){delete n(this,_t)[e];return}else return uk(t)}},il=new WeakSet,mk=async function(e,t,i){let s=t?.expires,o=s?y(this,ol,gk).call(this,s):1;return!t||t?.error&&t.errorCount<Bm&&dk>Math.random()||o>Math.random()?y(this,nl,pk).call(this,e,t,i):t},nl=new WeakSet,pk=async function(e,t,i){let s=ak(e.key),o=n(this,_e).now().getTime(),a=new Date(o+e.ttl/2);if(await n(this,Dt).set(s,"1",{expiration:a,nx:!0}))return y(this,sl,fk).call(this,e.key,t,i,e.ttl);if(t)return t;{let p=n(this,_e).now();return y(this,Is,Dm).call(this,p,e.key,e.ttl)}},Is=new WeakSet,Dm=async function(e,t,i){let s=Math.min(i,SO),o=await y(this,xs,_m).call(this,t);if(o)return o;if(n(this,_e).now().getTime()-e.getTime()>=s)throw new Error(`Cache request timed out trying to get data at key: ${t}`);return await new Promise(a=>setTimeout(a,kO)),y(this,Is,Dm).call(this,e,t,i)},sl=new WeakSet,fk=async function(e,t,i,s){let o=n(this,_e).now().getTime()+s;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=n(this,_e).now().getTime(),t.errorCount++}return n(this,_t)[e]=t,await n(this,Dt).set(ok(e),JSON.stringify(t),{expiration:new Date(o+PO)}),t.error&&t.errorCount<Bm&&await n(this,Dt).del(ak(e)),t},ol=new WeakSet,gk=function(e){let t=n(this,_e).now().getTime(),i=e-t;return i<0?1:i<1e3?.1:i<2e3?.01:i<3e3?.001:0},xs=new WeakSet,_m=async function(e){let t=await n(this,Dt).get(ok(e));if(t){let i=JSON.parse(t);return i.checkedAt=n(this,_e).now().getTime(),n(this,_t)[e]=i,i}},al=new WeakSet,hk=function(e){e.ttl<el&&(console.warn(`Cache TTL cannot be less than ${el} milliseconds! Updating ttl value of ${e.ttl} to ${el}.`),e.ttl=el)};function vk(r,e,t=Nm){let i=new tl(r,e,t);return i.cache.bind(i)}var dl=class{buildContext(e,t,i){let s=new si(i),o=new ii(i),a=new ui(i),c=new di(i),p=new ci(i),f=new mi(i),v=new Zd(e),m=new ni(i),k=new ri,b=new oi(i),C=vk(a,e._state),w={modLog:s,kvStore:o,redis:a,reddit:c,scheduler:p,settings:f,media:m,assets:k,realtime:b,ui:v,useState:Um,useChannel:Om,useInterval:Lm,useForm:Am,cache:C,dimensions:t.env?.dimensions,uiEnvironment:{timezone:i[B.Timezone]?.values[0],locale:i[B.Language]?.values[0],dimensions:t.env?.dimensions}},x=de(i,t.props?.postId);return x.debug.effects=e,{...x,...w}}};var ye=null;function qm(r){return JSON.parse(JSON.stringify(r))}function CO(r){if(!(r!==""&&!/[-.]/.test(r)))throw new Error(`Hook with namespace '${r}' is invalid. Hook namespaces cannot be empty string or contain dashes/dots because they are used as delimiters internally. Please update the hook namespace and try again.`)}function De(r,e){if(!ye)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.");CO(r.namespace);let t=ye.nextHookId(r),i=ye,s={hookId:t,invalidate:()=>{i._changed[t]=!0,i._state[t]=i?._hooks[t]?.state},context:ye},o=ye._state[t]===void 0||sk(ye._state[t]);ye._hooks[t]=ye._hooks[t]??e(s);let a=ye._hooks[t];return o||(a.state=ye._state[t]),a.onStateLoaded?.(),o&&a.state!==void 0&&a.state!==null&&s.invalidate(),a}var wO=null,Ti,pl,As,ne,be,Ei,ul,fl,yk,Ts,jm,gl,bk,Es,Hm,Rs,Wm,Ri,cl,Os,Gm,hl,kk,ml=class{constructor(e){d(this,ne);d(this,Ei);d(this,fl);d(this,Ts);d(this,gl);d(this,Es);d(this,Rs);d(this,Ri);d(this,Os);d(this,hl);d(this,Ti,void 0);d(this,pl,new dl);d(this,As,new vi(()=>this._latestRenderContext?.devvitContext?.assets));this._latestRenderContext=null;n(this,ne,be)&&console.debug("[blocks] BlocksHandler v1"),l(this,Ti,e),wO=this}async handle(e,t){let i=new Pi(e,t),s=n(this,pl).buildContext(i,e,t);i.devvitContext=s;let o,a=e.events,p=!e.events?.length||a.some(b=>!b.async),f=a.some(b=>b.blocking),v,m,k=[...a];for(n(this,ne,be)&&console.debug("[blocks] starting processing events");a.length>0;){n(this,ne,be)&&console.debug("[blocks] processing events loop iteration",a.length);let b=[];if(!a[0].async)b.push(a.shift());else for(;a[0]?.async;)b.push(a.shift());if(!b.length)throw Error("batch must have at least one event");try{if(b[0].async){let w=qm(i._state);await y(this,fl,yk).call(this,i,...b),i._state=w}else await y(this,gl,bk).call(this,i,...b)}catch(w){if(n(this,ne,be)&&console.debug("[blocks] caught in handler",w),m){i._state=m._state,i._changed=v,i._effects=m._effects;let x=k.map(F=>{let ue={...F};return ue.retry=!0,ue});i.addToRequeueEvents(...x);break}else throw w}n(this,ne,be)&&console.debug("[blocks] remaining events",i._requeueEvents);let C=[];for(let w of i._requeueEvents){if(!p&&!w.async){n(this,ne,be)&&console.debug("[blocks] NOT reprocessing event in BlocksHandler, sync mismatch A",w),C.push(w);continue}if(p&&w.async&&!f){n(this,ne,be)&&console.debug("[blocks] NOT reprocessing event in BlocksHandler, sync mismatch B",w),C.push(w);continue}n(this,ne,be)&&console.debug("[blocks] reprocessing event in BlocksHandler",w),a.push(w)}i._requeueEvents=C,a.length>0&&(v={...i._changed},m={_state:qm(i._state),_effects:{...i._effects}},k=[...a])}if(p){let b=qm(i._state),C=[...i._requeueEvents],w={...i._effects},x=y(this,Es,Hm).call(this,n(this,Ti),i._rootProps??{},i);(0,ll.default)(i._state,b)||console.error("[blocks] State was mutated during rendering",i._state,b),(0,ll.default)(i._requeueEvents,C)||console.error("[blocks] Events were mutated during rendering",i._requeueEvents,C),(0,ll.default)(i._effects,w)||console.error("[blocks] Effects were mutated during rendering",i._effects,w),x&&(o=n(this,As).createBlocksElementOrThrow(x),o=n(this,As).ensureRootBlock(o))}return{state:i._changedState,effects:i.effects,blocks:o,events:i._requeueEvents}}};Ti=new WeakMap,pl=new WeakMap,As=new WeakMap,ne=new WeakSet,be=function(){return!!this._latestRenderContext?.devvitContext.debug.blocks},Ei=new WeakSet,ul=function(e,...t){e._hooks={},y(this,Es,Hm).call(this,n(this,Ti),e.request.props??{},e)},fl=new WeakSet,yk=async function(e,...t){y(this,Ei,ul).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 y(this,Ts,jm).call(this,e,i)}))},Ts=new WeakSet,jm=async function(e,t){t.hook||console.warn("Received an event in #attemptHook that does not have an associated hook. This will cause the event to be undelivered and may cause bugs. Make sure that event passes a hook field. Event:",{event:t});let i=e._hooks[t.hook];if(i?.onUIEvent)try{await i.onUIEvent(t,e)}catch(s){throw console.error("Error in event handler",s),s}else await e.handleUndeliveredEvent(t)},gl=new WeakSet,bk=async function(e,...t){for(let i of t)n(this,ne,be)&&console.log("[blocks] handling main queue event",i),n(this,ne,be)&&console.log("[blocks] before",e._state),y(this,Ei,ul).call(this,e,i),await y(this,Ts,jm).call(this,e,i),n(this,ne,be)&&console.log("[blocks] after",e._state);y(this,Ei,ul).call(this,e)},Es=new WeakSet,Hm=function(e,t,i){n(this,ne,be)&&console.debug("[blocks] renderRoot"),i._generated={},ye=i,this._latestRenderContext=i;try{let s=y(this,Rs,Wm).call(this,e,t,i);if(s.length!==1)throw new Error("only one root");let o=s[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(s){if(s instanceof Ii)return;throw s}finally{ye=null}},Rs=new WeakSet,Wm=function(e,t,i){i.push({namespace:e.name||"anonymous",...t});try{let s=e(t,i.devvitContext);return y(this,Os,Gm).call(this,s,i)}finally{i.pop()}},Ri=new WeakSet,cl=function(e,t){return e=e.flat(1/0),e.flatMap((i,s)=>(i&&typeof i=="object"&&"props"in i&&(i.props?.key||(i.props=i.props??{},i.props.key=`${s}`)),y(this,Os,Gm).call(this,i,t)))},Os=new WeakSet,Gm=function(e,t){if(Array.isArray(e))return y(this,Ri,cl).call(this,e,t);if(IO(e)){if(e.type===void 0)return y(this,Ri,cl).call(this,e.children,t);if(typeof e.type=="function"){let i={...e.props,children:e.children};return y(this,Rs,Wm).call(this,e.type,i,t)}else{t.push({namespace:e.type,...e.props});let i=y(this,Ri,cl).call(this,e.children,t),s=y(this,hl,kk).call(this,e.props??{});return t.pop(),[{type:e.type,children:i,props:s}]}}else return[(e??"").toString()]},hl=new WeakSet,kk=function(e){let t={};for(let i in e)if(!(typeof e[i]>"u"))if(typeof e[i]=="function"){let s=De({namespace:i,key:!1},({hookId:o})=>({hookId:o,state:null,onUIEvent:e[i]}));t[i]=s.hookId,"captureHookRef"in e[i]&&e[i].captureHookRef()}else{let s=JSON.parse(JSON.stringify(e[i]));s!=null&&(t[i]=s)}return t};function IO(r){return typeof r=="object"&&r!=null&&"type"in r}var xO=[[Sk,Sk.methods.renderPostContent,(r,e)=>u.customPostType?.render(e)??null]];function AO(r){return async(e,t)=>new ml(r).handle(e,t)}function Pk(r){for(let[e,t,i]of xO)r.provides(e),L(t.name,AO(i))}var Fs,Oi,Sr,Pr,Cr,Fi,Mi,Nt,wr,_,j,z,Li,Ms,U=class U extends vd{static configure(e){l(this,Fs,e),ut(e.http)&&y(this,j,z).call(this,P.HTTPDefinition),(ut(e.kvStore)||ut(e.redis))&&(y(this,j,z).call(this,P.KVStoreDefinition),y(this,j,z).call(this,P.RedisAPIDefinition)),ut(e.media)&&y(this,j,z).call(this,P.MediaServiceDefinition),ut(e.modLog)&&y(this,j,z).call(this,P.ModlogDefinition),ut(e.redditAPI)&&(y(this,j,z).call(this,P.FlairDefinition),y(this,j,z).call(this,P.GraphQLDefinition),y(this,j,z).call(this,P.LinksAndCommentsDefinition),y(this,j,z).call(this,P.ListingsDefinition),y(this,j,z).call(this,P.ModerationDefinition),y(this,j,z).call(this,P.ModNoteDefinition),y(this,j,z).call(this,P.NewModmailDefinition),y(this,j,z).call(this,P.PrivateMessagesDefinition),y(this,j,z).call(this,P.SubredditsDefinition),y(this,j,z).call(this,P.PostCollectionsDefinition),y(this,j,z).call(this,P.UsersDefinition),y(this,j,z).call(this,P.WidgetsDefinition),y(this,j,z).call(this,P.WikiDefinition),y(this,j,z).call(this,P.RedditAPIV2Definition)),ut(e.realtime)&&y(this,j,z).call(this,P.RealtimeDefinition)}static addMenuItem(e){n(this,Oi).push(e)}static addCustomPostType(e){l(this,Sr,e)}static createForm(e,t){let i=`form.${n(this,Pr).size}`;return n(this,Pr).set(i,{form:e,onSubmit:t}),i}static addSchedulerJob(e){if(n(this,_)[P.SchedulerDefinition.fullName]||y(this,j,z).call(this,P.SchedulerDefinition),n(this,Cr).has(e.name))throw new Error(`Job ${e.name} is already defined`);n(this,Cr).set(e.name,e.onRun)}static addSettings(e){dr(e);let t=e.filter(s=>s.type==="group"||!s.scope||s.scope==="installation"),i=e.filter(s=>s.type!=="group"&&s.scope==="app");t.length>0&&l(this,Fi,t),i.length>0&&l(this,Mi,i),n(this,_)[P.SettingsDefinition.fullName]||y(this,j,z).call(this,P.SettingsDefinition)}static addTrigger(e){if("events"in e){for(let t of e.events)this.addTrigger({event:t,onEvent:(i,s)=>e.onEvent(i,s)});return this}return n(this,Nt).has(e.event)?n(this,Nt).get(e.event)?.push(e.onEvent):n(this,Nt).set(e.event,[e.onEvent]),U}static get redditAPIPlugins(){if(!ut(n(this,Fs).redditAPI))throw new Error("Reddit API is not enabled. You can enable it by passing `redditAPI: true` to `Devvit.configure`.");return{Flair:n(this,_)[P.FlairDefinition.fullName],GraphQL:n(this,_)[P.GraphQLDefinition.fullName],LinksAndComments:n(this,_)[P.LinksAndCommentsDefinition.fullName],Listings:n(this,_)[P.ListingsDefinition.fullName],Moderation:n(this,_)[P.ModerationDefinition.fullName],ModNote:n(this,_)[P.ModNoteDefinition.fullName],NewModmail:n(this,_)[P.NewModmailDefinition.fullName],PrivateMessages:n(this,_)[P.PrivateMessagesDefinition.fullName],Subreddits:n(this,_)[P.SubredditsDefinition.fullName],PostCollections:n(this,_)[P.PostCollectionsDefinition.fullName],Users:n(this,_)[P.UsersDefinition.fullName],Widgets:n(this,_)[P.WidgetsDefinition.fullName],Wiki:n(this,_)[P.WikiDefinition.fullName]}}static get modLogPlugin(){let e=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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 settingsPlugin(){let e=n(this,_)[P.SettingsDefinition.fullName];if(!e)throw new Error("Settings must first be configured with `Devvit.addSettings()` before they can be accessed");return e}static get realtimePlugin(){let e=n(this,_)[P.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 n(this,Oi)}static get customPostType(){return n(this,Sr)}static get formDefinitions(){return n(this,Pr)}static get scheduledJobHandlers(){return n(this,Cr)}static get installationSettings(){return n(this,Fi)}static get appSettings(){return n(this,Mi)}static get triggerOnEventHandlers(){return n(this,Nt)}static get assets(){return n(U,Li)}static get webviewAssets(){return n(U,Ms)}constructor(e){super(e),l(U,Li,e.assets??{});for(let t in n(U,wr)){let i=n(U,wr)[t];i.handler=e.use(i.def,i.options)}n(U,Oi).length>0&&ib(e),n(U,Cr).size>0&&nb(e),n(U,Sr)&&(eb(e),Pk(e)),(n(U,Sr)||n(U,Pr).size>0)&&ek(e),n(U,Fi)&&tb(e),n(U,Mi)&&Ly(e),n(U,Nt).size>0&&sb(e),l(U,Li,e.assets??{}),l(U,Ms,e.webviewAssets??{})}};Fs=new WeakMap,Oi=new WeakMap,Sr=new WeakMap,Pr=new WeakMap,Cr=new WeakMap,Fi=new WeakMap,Mi=new WeakMap,Nt=new WeakMap,wr=new WeakMap,_=new WeakMap,j=new WeakSet,z=function(e,t){n(this,wr)[e.fullName]={def:e,options:t??{},handler:void 0};let i={};for(let s of Object.values(e.methods))i[s.name]=(o,a)=>n(this,wr)[e.fullName].handler?.[s.name]?.(s.requestType?.fromPartial(o??{}),a);return n(this,_)[e.fullName]=i,i},Li=new WeakMap,Ms=new WeakMap,d(U,j),U.debug={},d(U,Fs,{}),d(U,Oi,[]),d(U,Sr,void 0),d(U,Pr,new Map),d(U,Cr,new Map),d(U,Fi,void 0),d(U,Mi,void 0),d(U,Nt,new Map),d(U,wr,{}),d(U,_,{}),d(U,Li,{}),d(U,Ms,{});var u=U;(e=>{function r(t,i,...s){return{type:t,props:i,children:s}}e.createElement=r})(u||(u={}));function J(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 Vm;(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"})(Vm||(Vm={}));var Ck="text",wk="raw",Ik="br",xk="link",Ak="c/",Tk="p/",Ek="r/",Rk="u/",Ok="@",Fk="spoilertext",Mk="par",Lk="h",Uk="hr",Bk="blockquote",Dk="code",_k="li",Nk="list",qk="L",jk="R",Hk="C",Wk="table",Gk="embed",Vk="img",zk="gif",Jk="video";function $k(r){return{e:zk,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function Kk(r,e){let t={},i=[];return Object.assign(t,Ls(t,i),Us(t,i),Bs(t,i),Ns(t,i),qs(t,i),js(t,i)),e(t),{e:Bk,c:i,...r.author&&{a:r.author}}}function Xk(r,e){let t={},i=[];return Object.assign(t,Jm(t,i)),e(t),{e:Dk,c:i,...r.language&&{l:r.language}}}function Zk(r){return{e:Ak,t:r.permalink}}function Yk(r,e){let t={},i=[];return Object.assign(t,Jm(t,i),_s(t,i)),e(t),{e:Lk,l:r.level,c:i}}function Qk(r){return{e:Gk,u:r.sourceUrl,c:r.contentUrl,x:r.width,y:r.height}}function eS(){return{e:Uk}}function tS(r){return{e:Vk,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function rS(){return{e:Ik}}function iS(r){return{e:xk,t:r.text,u:r.url,...r.formatting&&{f:r.formatting},...r.tooltip&&{a:r.tooltip}}}function nS(r,e){let t={},i=[];return Object.assign(t,kS(t,i)),e(t),{e:Nk,o:r.ordered,c:i}}function sS(r){let e={},t=[];return Object.assign(e,Ls(e,t),Us(e,t),Bs(e,t),vl(e,t),Ns(e,t),qs(e,t),js(e,t)),r(e),{e:_k,c:t}}function oS(r){let e={},t=[];return Object.assign(e,yl(e,t),_s(e,t),zm(e,t),$m(e,t),Ds(e,t)),r(e),{e:Mk,c:t}}function aS(r){return{e:Tk,t:r.permalink}}function dS(r){return{e:wk,t:r}}function lS(r){let e={},t=[];return Object.assign(e,yl(e,t),_s(e,t),zm(e,t)),r(e),{e:Fk,c:t}}function uS(r){return{e:Ek,t:r.subredditName,l:r.showPrefix}}function cS(r){let e={},t=[],i=[];return Object.assign(e,SS(e,t,i)),r(e),{e:Wk,h:t,c:i}}function mS(r){let[e,t]=bS();return r(e),{c:t}}function pS(r,e){let[t,i]=bS();e(t);let s;switch(r.columnAlignment){case"left":s=qk;break;case"right":s=jk;break;case"center":s=Hk;break}return{...s&&{a:s},...i&&{c:i}}}function fS(r){let e={},t=[];return Object.assign(e,PS(e,t)),r(e),t}function gS(r){return{e:Ck,t:r.text,...r.formatting&&{f:r.formatting}}}function hS(r){return{e:Rk,t:r.username,l:r.showPrefix}}function vS(r){return{e:Ok,t:r.username,l:r.showPrefix}}function yS(r){return{e:Jk,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur},...r.thumbnail&&{p:r.thumbnail},...r.convertToGif&&{gifify:r.convertToGif}}}function bS(){let r={},e=[];return Object.assign(r,yl(r,e),_s(r,e),$m(r,e),Ds(r,e)),[r,e]}function Ls(r,e){return{blockQuote(t,i){return e.push(Kk(t,i)),r}}}function Us(r,e){return{codeBlock(t,i){return e.push(Xk(t,i)),r}}}function CS(r,e){return{embed(t){return e.push(Qk(t)),r}}}function Bs(r,e){return{heading(t,i){return e.push(Yk(t,i)),r}}}function vl(r,e){return{horizontalRule(){return e.push(eS()),r}}}function Ds(r,e){return{image(t){return e.push(tS(t)),r},animatedImage(t){return e.push($k(t)),r}}}function zm(r,e){return{linebreak(){return e.push(rS()),r}}}function _s(r,e){return{link(t){return e.push(iS(t)),r},commentLink(t){return e.push(Zk(t)),r},postLink(t){return e.push(aS(t)),r},subredditLink(t){return e.push(uS(t)),r},userLink(t){return e.push(hS(t)),r},userMention(t){return e.push(vS(t)),r}}}function Ns(r,e){return{list(t,i){return e.push(nS(t,i)),r}}}function kS(r,e){return{item(t){return e.push(sS(t)),r}}}function qs(r,e){return{paragraph(t){return e.push(oS(t)),r}}}function Jm(r,e){return{rawText(t){return e.push(dS(t)),r}}}function $m(r,e){return{spoiler(t){return e.push(lS(t)),r}}}function SS(r,e,t){return{headerCell(i,s){return e.push(pS(i,s)),r},row(i){return t.push(fS(i)),r}}}function js(r,e){return{table(t){return e.push(cS(t)),r}}}function PS(r,e){return{cell(t){return e.push(mS(t)),r}}}function yl(r,e){return{text(t){return e.push(gS(t)),r}}}function wS(r,e){return{video(t){return e.push(yS(t)),r}}}var TO=function(r,e,t,i,s){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!s:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?s.call(r,t):s?s.value=t:e.set(r,t),t},EO=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)},bl,Hs=class{constructor(){bl.set(this,void 0);let e=[];Object.assign(this,qs(this,e),Bs(this,e),vl(this,e),Ls(this,e),Us(this,e),CS(this,e),Ns(this,e),js(this,e),Ds(this,e),wS(this,e)),TO(this,bl,{document:e},"f")}build(){return JSON.stringify(EO(this,bl,"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}};bl=new WeakMap;function Ui(r){let e;return r instanceof Hs?e=r.build():typeof r=="object"?e=JSON.stringify(r):e=r,e}var IS=100,xS=1/0,Ir,xr,qt,Bi,Di,kl,H=class{constructor(e){d(this,Di);d(this,Ir,void 0);d(this,xr,void 0);d(this,qt,void 0);d(this,Bi,!1);this.pageSize=IS;this.limit=xS;this.children=[];J(this),this._fetch=e.fetch,this.pageSize=e.pageSize??IS,this.limit=e.limit??xS,l(this,xr,e.after),l(this,Ir,e.before),l(this,qt,e.more),e.children&&(this.children=e.children)}get hasMore(){return!n(this,Bi)||!!(n(this,xr)||n(this,Ir)||n(this,qt))}async*[Symbol.asyncIterator](){let e=0;for(;;){if(e===this.children.length)if(this.hasMore){if((await y(this,Di,kl).call(this)).length===0)break}else break;if(yield this.children[e],e++,e===this.limit)break}}setMore(e){l(this,qt,e)}preventInitialFetch(){l(this,Bi,!0)}async all(){for(;this.hasMore&&this.children.length<this.limit;)await y(this,Di,kl).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 y(this,Di,kl).call(this);return this.children.slice(0,t)}};Ir=new WeakMap,xr=new WeakMap,qt=new WeakMap,Bi=new WeakMap,Di=new WeakSet,kl=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:s}=await this._fetch({before:n(this,Ir),after:n(this,xr),limit:this.pageSize,more:n(this,qt)});return this.children.push(...e),l(this,Ir,t),l(this,xr,i),l(this,qt,s),l(this,Bi,!0),e};function RO(r){try{return!0}catch{return!1}}function OO(r){try{return!0}catch{return!1}}var Ws,Km,Me=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 s=>{let o=await i.GetNotes({subreddit:e.subreddit,user:e.user,filter:e.filter,before:s.before,limit:s.limit},t);return{children:o.modNotes?.map(a=>y(this,Ws,Km).call(this,a))||[],before:o.hasNextPage?o.endCursor:void 0,hasMore:o.hasNextPage}}})}static async delete(e,t){let i=u.redditAPIPlugins.ModNote,{deleted:s}=await i.DeleteNotes(e,t);return!!s}static async add(e,t){let s=await u.redditAPIPlugins.ModNote.PostNotes(e,t);if(!s?.created)throw new Error("Failed to create mod note");return y(this,Ws,Km).call(this,s.created)}static async addRemovalNote(e,t){await u.redditAPIPlugins.ModNote.PostRemovalNote(e,t)}};Ws=new WeakSet,Km=function(e){if(g(e.id,"Mod note ID is null or undefined"),g(e.createdAt,"Mod note createdAt is null or undefined"),g(e.type,"Mod note type is null or undefined"),g(e.subreddit,"Mod note subreddit is null or undefined"),g(e.subredditId,"Mod note subredditId is null or undefined"),g(e.operator,"Mod note operator is null or undefined"),g(e.operatorId,"Mod note operatorId is null or undefined"),g(e.user,"Mod note user is null or undefined"),g(e.userId,"Mod note userId is null or undefined"),g(e.userNoteData,"Mod note userNote is null or undefined"),g(e.modActionData,"Mod note modAction is null or undefined"),!RO(e.userNoteData?.label??""))throw new Error(`Invalid user note label: ${e.userNoteData?.label}`);if(!OO(e.type))throw new Error(`Invalid mod note type: ${e.type}`);return{id:e.id,user:{id:te(e.userId??""),name:e.user},subreddit:{id:Re(e.subredditId??""),name:e.subreddit},operator:{id:te(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}},d(Me,Ws);var jt=class{static queryWithQueryString(e,t){return u.redditAPIPlugins.GraphQL.Query({query:e},t)}static query(e,t,i,s){return u.redditAPIPlugins.GraphQL.PersistedQuery({operationName:e,id:t,variables:i},s)}};var AS=["all","wiki","posts","access","mail","config","flair","channels","chat_config","chat_community","chat_operator"];function FO(r,e,t=!1){let i=t?"%2b":"+";return e.map(s=>(r.includes(s)?i:"-")+s).join(",")}function Xm(r){return FO(r,AS,!0)}function TS(r){return r.filter(e=>AS.includes(e))}var MO=(t=>(t.User="USER_FLAIR",t.Post="LINK_FLAIR",t))(MO||{}),Ar,_i,Ni,qi,ji,Hi,Wi,Gi,Vi,zi,Ji,Sl,$e=class $e{constructor(e,t,i){d(this,Ar,void 0);d(this,_i,void 0);d(this,Ni,void 0);d(this,qi,void 0);d(this,ji,void 0);d(this,Hi,void 0);d(this,Wi,void 0);d(this,Gi,void 0);d(this,Vi,void 0);d(this,zi,void 0);J(this),g(e.id),g(e.text),l(this,Ar,e.id),l(this,_i,t),l(this,Ni,e.text),l(this,qi,LO(e.textColor)),l(this,ji,UO(e.backgroundColor)),l(this,Hi,BO(e.allowableContent)),l(this,Wi,e.modOnly),l(this,Gi,e.maxEmojis),l(this,Vi,e.textEditable),l(this,zi,i)}get id(){return n(this,Ar)}get text(){return n(this,Ni)}get textColor(){return n(this,qi)}get backgroundColor(){return n(this,ji)}get allowableContent(){return n(this,Hi)}get modOnly(){return n(this,Wi)}get maxEmojis(){return n(this,Gi)}get allowUserEdits(){return n(this,Vi)}async delete(){return $e.deleteFlairTemplate(n(this,Ar),n(this,_i),n(this,zi))}async edit(e){return $e.editFlairTemplate({id:n(this,Ar),subredditName:n(this,_i),text:e.text??n(this,Ni),allowableContent:e.allowableContent??n(this,Hi),backgroundColor:e.backgroundColor??n(this,ji),maxEmojis:e.maxEmojis??n(this,Gi),modOnly:e.modOnly??n(this,Wi),textColor:e.textColor??n(this,qi),allowUserEdits:e.allowUserEdits??n(this,Vi)},n(this,zi))}static async createPostFlairTemplate(e,t){var i;return y(i=$e,Ji,Sl).call(i,{...e,flairType:"LINK_FLAIR"},t)}static async createUserFlairTemplate(e,t){var i;return y(i=$e,Ji,Sl).call(i,{...e,flairType:"USER_FLAIR"},t)}static async editFlairTemplate(e,t){var i;return y(i=$e,Ji,Sl).call(i,e,t)}static async getPostFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.LinkFlair({subreddit:e},t)).flair?.map(o=>new $e(o,e,t))||[]}static async getUserFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.UserFlair({subreddit:e},t)).flair?.map(o=>new $e(o,e,t))||[]}static async deleteFlairTemplate(e,t,i){await u.redditAPIPlugins.Flair.DeleteFlairTemplate({subreddit:e,flairTemplateId:t},i)}};Ar=new WeakMap,_i=new WeakMap,Ni=new WeakMap,qi=new WeakMap,ji=new WeakMap,Hi=new WeakMap,Wi=new WeakMap,Gi=new WeakMap,Vi=new WeakMap,zi=new WeakMap,Ji=new WeakSet,Sl=async function(e,t){let{subredditName:i,allowableContent:s="all",backgroundColor:o="transparent",flairType:a="",maxEmojis:c=10,modOnly:p=!1,text:f,textColor:v="dark",allowUserEdits:m=!1,id:k=""}=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:s,backgroundColor:o,flairType:a,maxEmojis:c,modOnly:p,text:f,textColor:v,textEditable:m,flairTemplateId:k,cssClass:"",overrideCss:!1},t);return new $e(C,i,t)},d($e,Ji);var ae=$e;function zs(r){return{flairCssClass:r.flairCssClass,user:r.user,flairText:r.flairText}}var Gs,Zm,Vs,Ym,Ht=class Ht{static async getUserFlairBySubreddit(e,t){return u.redditAPIPlugins.Flair.FlairList(e,t)}static setUserFlair(e,t){var i;return y(i=Ht,Gs,Zm).call(i,e,t)}static setPostFlair(e,t){var i;return y(i=Ht,Gs,Zm).call(i,{...e,postId:fe(e.postId)},t)}static async removePostFlair(e,t,i){var s;return y(s=Ht,Vs,Ym).call(s,e,t,void 0,i)}static async removeUserFlair(e,t,i){var s;return y(s=Ht,Vs,Ym).call(s,e,void 0,t,i)}};Gs=new WeakSet,Zm=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)},Vs=new WeakSet,Ym=async function(e,t,i,s){await u.redditAPIPlugins.Flair.SelectFlair({subreddit:e,name:i??"",link:t??"",flairTemplateId:"",backgroundColor:"",text:"",textColor:"",cssClass:"",returnRtjson:"none"},s)},d(Ht,Gs),d(Ht,Vs);var Le=Ht;function LO(r){if(g(r,"Flair text color is required"),r==="light"||r==="dark")return r;throw new Error(`Invalid flair text color: ${r}`)}function UO(r){if(g(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 BO(r){if(r==="all"||r==="text"||r==="emoji")return r;throw new Error(`Invalid allowable content: ${r}`)}import{Block as GO}from"@devvit/protos";var FS=Br(OS(),1);var $i,$s,Ki,Ks,Xs,Zs,Ys,Qs,Xi,eo,to,ro,io,no,so,Wt,oo,ao,Er,Zi,Gt,Yi,Qi,en,Rr,Vt,zt,tn,Jt,$t,Kt,pt,lo,uo,rn,nn,D,N=class N{constructor(e,t){d(this,$i,void 0);d(this,$s,void 0);d(this,Ki,void 0);d(this,Ks,void 0);d(this,Xs,void 0);d(this,Zs,void 0);d(this,Ys,void 0);d(this,Qs,void 0);d(this,Xi,void 0);d(this,eo,void 0);d(this,to,void 0);d(this,ro,void 0);d(this,io,void 0);d(this,no,void 0);d(this,so,void 0);d(this,Wt,void 0);d(this,oo,void 0);d(this,ao,void 0);d(this,Er,void 0);d(this,Zi,void 0);d(this,Gt,void 0);d(this,Yi,void 0);d(this,Qi,void 0);d(this,en,void 0);d(this,Rr,void 0);d(this,Vt,void 0);d(this,zt,void 0);d(this,tn,void 0);d(this,Jt,void 0);d(this,$t,void 0);d(this,Kt,void 0);d(this,pt,void 0);d(this,lo,void 0);d(this,uo,void 0);d(this,rn,void 0);d(this,nn,void 0);d(this,D,void 0);J(this),g(e.id,"Post is missing id"),g(e.title,"Post is missing title"),g(e.createdUtc,"Post is missing created date"),g(e.author,"Post is missing author name"),g(e.subreddit,"Post is missing subreddit name"),g(e.subredditId,"Post is missing subreddit id"),g(e.url,"Post is missing url"),g(e.permalink,"Post is missing permalink"),l(this,$i,fe(`t3_${e.id}`)),l(this,Ki,e.author),l(this,$s,e.authorFullname?te(e.authorFullname):void 0),l(this,Xs,Re(e.subredditId)),l(this,Zs,e.subreddit),l(this,ro,e.score??0),l(this,io,e.numComments??0),l(this,no,e.numReports??0);let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,Ks,i),l(this,Qs,e.title),l(this,Xi,e.selftext),l(this,eo,e.selftextHtml),l(this,to,e.url),l(this,Ys,e.permalink),e.thumbnail&&e.thumbnail!=="self"&&e.thumbnail!=="nsfw"&&e.thumbnailHeight!=null&&e.thumbnailWidth!=null&&l(this,so,{url:e.thumbnail,height:e.thumbnailHeight,width:e.thumbnailWidth}),l(this,Wt,e.approved??!1),l(this,oo,e.approvedAtUtc??0),l(this,ao,e.bannedAtUtc??0),l(this,Gt,e.removed??!1),l(this,Yi,e.removedBy),l(this,Qi,e.removedByCategory),l(this,Er,e.spam??!1),l(this,Zi,e.stickied??!1),l(this,en,e.archived??!1),l(this,Rr,e.edited??!1),l(this,Vt,e.locked??!1),l(this,zt,e.over18??!1),l(this,tn,e.quarantine??!1),l(this,Jt,e.spoiler),l(this,$t,e.hidden??!1),l(this,Kt,e.ignoreReports??!1),l(this,pt,e.distinguished),l(this,uo,e.secureMedia),l(this,rn,(e.modReports??[]).map(([s])=>s)),l(this,nn,(e.userReports??[]).map(([s])=>s)),l(this,D,t),(e.linkFlairBackgroundColor||e.linkFlairCssClass||e.linkFlairText||e.linkFlairType||e.linkFlairTemplateId||e.linkFlairRichtext||e.linkFlairTextColor)&&l(this,lo,{backgroundColor:e.linkFlairBackgroundColor,cssClass:e.linkFlairCssClass,text:e.linkFlairText,type:e.linkFlairType,templateId:e.linkFlairTemplateId,richtext:(e.linkFlairRichtext??[]).map(({e:s,t:o,a,u:c})=>({elementType:s,text:o,emojiRef:a,url:c})),textColor:e.linkFlairTextColor})}get id(){return n(this,$i)}get authorId(){return n(this,$s)}get authorName(){return n(this,Ki)}get subredditId(){return n(this,Xs)}get subredditName(){return n(this,Zs)}get permalink(){return n(this,Ys)}get title(){return n(this,Qs)}get body(){return n(this,Xi)}get bodyHtml(){return n(this,eo)}get url(){return n(this,to)}get thumbnail(){return n(this,so)}get createdAt(){return n(this,Ks)}get score(){return n(this,ro)}get numberOfComments(){return n(this,io)}get numberOfReports(){return n(this,no)}get approved(){return n(this,Wt)}get approvedAtUtc(){return n(this,oo)}get bannedAtUtc(){return n(this,ao)}get spam(){return n(this,Er)}get stickied(){return n(this,Zi)}get removed(){return n(this,Gt)}get removedBy(){return n(this,Yi)}get removedByCategory(){return n(this,Qi)}get archived(){return n(this,en)}get edited(){return n(this,Rr)}get locked(){return n(this,Vt)}get nsfw(){return n(this,zt)}get quarantined(){return n(this,tn)}get spoiler(){return n(this,Jt)}get hidden(){return n(this,$t)}get ignoringReports(){return n(this,Kt)}get distinguishedBy(){return n(this,pt)}get comments(){return X.getComments({postId:this.id},n(this,D))}get flair(){return n(this,lo)}get secureMedia(){return n(this,uo)}get userReportReasons(){return n(this,nn)}get modReportReasons(){return n(this,rn)}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:n(this,Yi),removedByCategory:n(this,Qi),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:n(this,rn),userReportReasons:n(this,nn)}}isApproved(){return n(this,Wt)}isSpam(){return n(this,Er)}isStickied(){return n(this,Zi)}isRemoved(){return n(this,Gt)}isArchived(){return n(this,en)}isEdited(){return n(this,Rr)}isLocked(){return n(this,Vt)}isNsfw(){return n(this,zt)}isQuarantined(){return n(this,tn)}isSpoiler(){return n(this,Jt)}isHidden(){return n(this,$t)}isIgnoringReports(){return n(this,Kt)}isDistinguishedBy(){return n(this,pt)}async edit(e){let t=await N.edit({id:this.id,...e},n(this,D));l(this,Xi,t.body),l(this,Rr,t.edited)}async addComment(e){return X.submit({id:this.id,...e},n(this,D))}async delete(){return N.delete(this.id,n(this,D))}async approve(){await N.approve(this.id,n(this,D)),l(this,Wt,!0),l(this,Gt,!1)}async remove(e=!1){await N.remove(this.id,e,n(this,D)),l(this,Gt,!0),l(this,Er,e),l(this,Wt,!1)}async lock(){await N.lock(this.id,n(this,D)),l(this,Vt,!0)}async unlock(){await N.unlock(this.id,n(this,D)),l(this,Vt,!1)}async hide(){await N.hide(this.id,n(this,D)),l(this,$t,!0)}async unhide(){await N.unhide(this.id,n(this,D)),l(this,$t,!1)}async markAsNsfw(){await N.markAsNsfw(this.id,n(this,D)),l(this,zt,!0)}async unmarkAsNsfw(){await N.unmarkAsNsfw(this.id,n(this,D)),l(this,zt,!1)}async markAsSpoiler(){await N.markAsSpoiler(this.id,n(this,D)),l(this,Jt,!0)}async unmarkAsSpoiler(){await N.unmarkAsSpoiler(this.id,n(this,D)),l(this,Jt,!1)}async sticky(e){await N.sticky(this.id,e,n(this,D))}async unsticky(){await N.unsticky(this.id,n(this,D))}async distinguish(){let{distinguishedBy:e}=await N.distinguish(this.id,!1,n(this,D));l(this,pt,e)}async distinguishAsAdmin(){let{distinguishedBy:e}=await N.distinguish(this.id,!0,n(this,D));l(this,pt,e)}async undistinguish(){let{distinguishedBy:e}=await N.undistinguish(this.id,n(this,D));l(this,pt,e)}async ignoreReports(){await N.ignoreReports(this.id,n(this,D)),l(this,Kt,!0)}async unignoreReports(){await N.unignoreReports(this.id,n(this,D)),l(this,Kt,!1)}async getAuthor(){return I.getByUsername(n(this,Ki),n(this,D))}async crosspost(e){return N.crosspost({...e,postId:this.id},n(this,D))}addRemovalNote(e){return Me.addRemovalNote({itemIds:[n(this,$i)],...e},n(this,D))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,s=ar(e)?e:`t3_${e}`,o=await i.Info({subreddits:[],thingIds:[s]},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,s;if("preview"in e){g(t,"Missing metadata in `SubmitPostOptions`");let c=await new lt(()=>e.preview,void 0,{},t,void 0).buildBlocksUI(),p=GO.encode(c).finish();s=await i.Submit({kind:"custom",sr:e.subredditName,richtextJson:(0,FS.fromByteArray)(p),...e},t)}else s=await i.Submit({kind:"kind"in e?e.kind:"url"in e?"link":"self",sr:e.subredditName,richtextJson:"richtext"in e?Ui(e.richtext):void 0,...e},t);if("kind"in e&&["image","video","videogif"].includes(e.kind)&&!s.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(!s.json?.data?.id||s.json?.errors?.length)throw new Error(`failed to submit post - either post ID is empty or request failed with errors: ${s.json?.errors}`);return N.getById(`t3_${s.json.data.id}`,t)}static async crosspost(e,t){let i=u.redditAPIPlugins.LinksAndComments,{postId:s,subredditName:o,...a}=e,c=await i.Submit({kind:"crosspost",sr:o,crosspostFullname:fe(s),...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:s}=e,o;if("richtext"in e&&(o=Ui(e.richtext)),(await i.EditUserText({thingId:s,text:"text"in e?e.text:"",richtextJson:o},t)).json?.errors?.length)throw new Error("Failed to edit post");return N.getById(s,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 g(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 g(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 s=>{let o=await i.Sort({show:"all",sort:e.sort,t:e.timeframe,subreddit:e.subredditName,...s},t);return Js(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 s=>{let o=await i.Hot({g:e.location,show:"all",subreddit:e.subredditName,...s},t);return Js(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 s=>{let o=await i.New({show:"all",subreddit:e.subredditName,...s},t);return Js(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 s=>{let o=await i.Rising({show:"all",subreddit:e.subredditName,...s},t);return Js(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(s){let o=await i.UserWhere({username:e.username,where:"submitted",...s},t);return Js(o,t)}})}};$i=new WeakMap,$s=new WeakMap,Ki=new WeakMap,Ks=new WeakMap,Xs=new WeakMap,Zs=new WeakMap,Ys=new WeakMap,Qs=new WeakMap,Xi=new WeakMap,eo=new WeakMap,to=new WeakMap,ro=new WeakMap,io=new WeakMap,no=new WeakMap,so=new WeakMap,Wt=new WeakMap,oo=new WeakMap,ao=new WeakMap,Er=new WeakMap,Zi=new WeakMap,Gt=new WeakMap,Yi=new WeakMap,Qi=new WeakMap,en=new WeakMap,Rr=new WeakMap,Vt=new WeakMap,zt=new WeakMap,tn=new WeakMap,Jt=new WeakMap,$t=new WeakMap,Kt=new WeakMap,pt=new WeakMap,lo=new WeakMap,uo=new WeakMap,rn=new WeakMap,nn=new WeakMap,D=new WeakMap;var V=N;function Js(r,e){if(!r.data?.children)throw new Error("Listing response is missing children");return{children:r.data.children.map(i=>new V(i.data,e)),before:r.data.before,after:r.data.after}}var co,sn,mo,po,fo,go,ho,Xt,vo,yo,ft,Or=class Or{constructor(e,t){d(this,co,void 0);d(this,sn,void 0);d(this,mo,void 0);d(this,po,void 0);d(this,fo,void 0);d(this,go,void 0);d(this,ho,void 0);d(this,Xt,new Map);d(this,vo,void 0);d(this,yo,void 0);d(this,ft,void 0);J(this),g(e.id,"User ID is missing or undefined"),g(e.name,"Username is missing or undefined"),g(e.createdUtc,"User is missing created date"),l(this,co,te(hd(e.id)?e.id:`t2_${e.id}`)),l(this,sn,e.name),l(this,go,e.over18??!1),l(this,ho,e.isEmployee??!1);let i=new Date(0);if(i.setUTCSeconds(e.createdUtc),l(this,mo,i),l(this,po,e.linkKarma??0),l(this,fo,e.commentKarma??0),e.modPermissions)for(let[s,o]of Object.entries(e.modPermissions))n(this,Xt).set(s,TS(o));l(this,vo,new URL(e.subreddit?.url??"","https://www.reddit.com").toString()),l(this,yo,e.subreddit?.url??""),l(this,ft,t)}get id(){return n(this,co)}get username(){return n(this,sn)}get createdAt(){return n(this,mo)}get linkKarma(){return n(this,po)}get commentKarma(){return n(this,fo)}get nsfw(){return n(this,go)}get isAdmin(){return n(this,ho)}get modPermissions(){return n(this,Xt)}get url(){return n(this,vo)}get permalink(){return n(this,yo)}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(n(this,Xt).has(e))return n(this,Xt).get(e);let t=await Or.getSubredditUsersByType({subredditName:e,type:"moderators",username:this.username},n(this,ft)).all();if(t.length===0)return[];let i=t[0].modPermissions.get(e)??[];return i.length>0&&n(this,Xt).set(e,i),i}getComments(e){return X.getCommentsByUser({username:this.username,...e},n(this,ft))}getPosts(e){return V.getPostsByUser({username:this.username,...e},n(this,ft))}async getUserFlairBySubreddit(e){let t=await Le.getUserFlairBySubreddit({subreddit:e,name:n(this,sn)},n(this,ft));return t.users[0]?zs(t.users[0]):void 0}getSnoovatarUrl(){return Or.getSnoovatarUrl(this.username,n(this,ft))}static async getById(e,t){let o=(await u.redditAPIPlugins.Users.UserDataByAccountIds({ids:e},t))?.users?.[e]?.name;return o==null?void 0:Or.getByUsername(o,t)}static async getByUsername(e,t){let s=await u.redditAPIPlugins.Users.UserAbout({username:e},t);if(!s.data?.id)throw new Error("failed to get user");return new Or(s.data,t)}static async getFromMetadata(e,t){g(t);let i=t?.[e]?.values[0];return i?Or.getById(te(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 s=>{let o=await i.AboutWhere({where:e.type,user:e.username,subreddit:e.subredditName,show:"all",...s},t);return zO(o,e.subredditName,t)}})}static async createRelationship(e,t){let i=u.redditAPIPlugins.Users,{type:s,subredditName:o,username:a,permissions:c,...p}=e,f=await i.Friend({type:s,subreddit:o,name:a,permissions:c?Xm(c):void 0,...p},t);if(f.json?.errors?.length)throw new Error(f.json.errors.join(`
3
+ `))}}var Yb=Br(vb(),1),Qb=Br(Xd(),1);import{EffectType as pO,UIEventHandlerDefinition as fO}from"@devvit/protos";async function gO(r,e){let t=r.state??{},i=(0,Yb.default)(t),s=Ue({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 b=new lt((C,w)=>u.customPostType?.render(w)??null,r.event,r.state,e,void 0);return await b.reconcile(),{state:b.state,effects:b.getEffects()}}let f=u.formDefinitions.get(p);if(!f)throw new Error(`Form with key ${p} not found`);let v,m;if(i.__contextAction){let{actionId:b,thingId:C}=i.__contextAction,w=mm(b);w?.location==="post"?v=C:w?.location==="comment"&&(m=C)}let k=Object.assign(s,de(e,v,m),{uiEnvironment:{timezone:e[B.Timezone]?.values[0],locale:e[B.Language]?.values[0]}});await f.onSubmit({values:wt(r.event.formSubmitted.results)},k)}else if(r.event?.realtimeEvent){if(u.customPostType){let p=new lt((f,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,Qb.default)(t,i),a=fi(s.ui),c=o?[...a,{type:pO.EFFECT_RERENDER_UI,rerenderUi:{delaySeconds:0}}]:a;return{state:i,effects:c}}function ek(r){r.provides(fO),L("HandleUIEvent",gO)}import{CustomPostDefinition as Sk}from"@devvit/protos";var ll=Br(Xd(),1);import{EffectType as Tm,Form as vO,ToastAppearance as ik}from"@devvit/protos";function tk(r){let e=r.match(/form\.hook\.(.+)\.0/);if(e?.[1])return e[1]}var xm=class{constructor(e,t,i){this.state=null;this.hookId=e.hookId,this.form=t,this.onSubmit=i,this.onUIEvent=async s=>{s.formSubmitted&&await i(wt(s.formSubmitted.results))}}};function Am(r,e){let t=De({namespace:"useForm"},i=>new xm(i,r,e));return hO({id:t.hookId})}function hO(r){return`form.hook.${r.id}.0`}function rk(r,e){let t=tk(e);return r.getHook({id:t})}var Ft,Zd=class{constructor(e){d(this,Ft,void 0);l(this,Ft,e)}showForm(e,t){let i=rk(n(this,Ft),e);if(!i)throw new Error("Form does not exist. Make sure you have added it using useForm.");let s=i.form instanceof Function?i.form(t??{}):i.form,o=vO.fromPartial({id:e,title:s.title,acceptLabel:s.acceptLabel,cancelLabel:s.cancelLabel,shortDescription:s.description});dr(s.fields),o.fields=dt(s.fields),n(this,Ft).emitEffect(e,{type:Tm.EFFECT_SHOW_FORM,showForm:{form:o}})}showToast(e){let t;e instanceof Object?t={text:e.text,appearance:e.appearance==="success"?ik.SUCCESS:ik.NEUTRAL}:t={text:e},n(this,Ft).emitEffect(e.toString(),{type:Tm.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(),n(this,Ft).emitEffect(t,{type:Tm.EFFECT_NAVIGATE_TO_URL,navigateToUrl:{url:t}})}};Ft=new WeakMap;import{EffectType as yO,RealtimeSubscriptionStatus as nk}from"@devvit/protos";var Mt,tt,Lt,yr,Ss,Rm,Yd=class Yd{constructor(e,t){d(this,Ss);d(this,Mt,void 0);d(this,tt,void 0);d(this,Lt,void 0);d(this,yr,void 0);l(this,Mt,t.context),l(this,tt,!!t.context._devvitContext?.debug.realtime),l(this,yr,e),l(this,Lt,t.invalidate);let i=t.context.meta[B.App]?.values[0];if(!i)throw Error("useChannel missing app ID metadata");let s=t.context.meta[B.Installation]?.values[0];if(!s)throw Error("useChannel missing install ID from metadata");let o=`${i}:${s}:${e.name}`;if(Object.values(n(this,Mt).hooks).filter(c=>c instanceof Yd).some(c=>c.state.channel===o))throw Error(`useChannel channel names must be unique; "${o}" duplicated`);this.state={channel:o,connected:!1,subscribed:!1}}async onUIEvent(e){let t=e.realtimeEvent;if(!(!t||!this.state.subscribed))switch(t.status){case nk.REALTIME_SUBSCRIBED:n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" connected`),this.state.connected=!0,n(this,Lt).call(this),await n(this,yr).onSubscribed?.();break;case nk.REALTIME_UNSUBSCRIBED:n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" disconnected`),this.state.connected=!1,n(this,Lt).call(this),await n(this,yr).onUnsubscribed?.();break;default:n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" received message: ${JSON.stringify(e,void 0,2)}`),n(this,yr).onMessage(t.event?.data??{});break}}async send(e){if(n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" send message: ${JSON.stringify(e,void 0,2)}`),!this.state.subscribed||!this.state.connected)throw console.debug(`[realtime] "${this.state.channel}" send failed; channel not connected`),Error(`useChannel send failed; "${this.state.channel}" channel not connected`);await n(this,Mt).devvitContext.realtime.send(this.state.channel,e)}get status(){return this.state.subscribed&&this.state.connected?2:this.state.subscribed&&!this.state.connected?1:!this.state.subscribed&&this.state.connected?3:4}subscribe(){this.state.subscribed||(n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" subscribed`),this.state.subscribed=!0,n(this,Lt).call(this),y(this,Ss,Rm).call(this))}unsubscribe(){this.state.subscribed&&(n(this,tt)&&console.debug(`[realtime] "${this.state.channel}" unsubscribed`),this.state.subscribed=!1,n(this,Lt).call(this),y(this,Ss,Rm).call(this))}};Mt=new WeakMap,tt=new WeakMap,Lt=new WeakMap,yr=new WeakMap,Ss=new WeakSet,Rm=function(){let e=Object.values(n(this,Mt).hooks).filter(t=>t instanceof Yd&&t.state.subscribed).map(t=>t.state.channel);n(this,Mt).emitEffect(this.state.channel,{type:yO.EFFECT_REALTIME_SUB,realtimeSubscriptions:{subscriptionIds:e}})};var Em=Yd;function Om(r){if(!r.name||/[^a-zA-Z0-9]/.test(r.name))throw Error("useChannel error: channel names must be nonempty and alphanumeric");let e=`useChannel:${r.name}`;return De({id:e,namespace:e},t=>new Em(r,t))}import{EffectType as Fm}from"@devvit/protos";function sk(r){return typeof r=="object"&&r!==null&&"__deleted"in r}var br,Si=class Si{constructor(e,t){d(this,br,void 0);this._segments=[];this._hooks={};this._prevHookId="";this._effects={};this._changed={};this._requeueEvents=[];this._rootProps={};this._generated={};this._undeliveredHandlers={};this.request=e,this.meta=t,l(this,br,e.state??{__cache:{}}),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={__cache:n(this,br).__cache??{}};for(let i in this._changed)e[i]=this._state[i];let t=new Set(Object.keys(this._state));return Object.keys(this._hooks).forEach(i=>{i!=="__cache"&&t.delete(i)}),t.forEach(i=>{if(i==="__cache")return;let s={__deleted:!0};this._state[i]=e[i]=s}),e}get hooks(){return this._hooks}get _state(){return n(this,br)}set _state(e){this._changed={},this._hooks={},l(this,br,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,s]of Object.entries(t))await s(e,this)}emitEffect(e,t){this._effects[e]=t}addToRequeueEvents(...e){this._devvitContext?.debug.blocks&&console.debug("[blocks] requeueing events",e);let t=e.reduce((i,s)=>(s.retry?i.retry.push(s):i.normal.push(s),i),{retry:[],normal:[]});this._requeueEvents=[...t.retry,...this._requeueEvents,...t.normal]}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 s=this._segments.length-1;s>=0;s--){let o=this._segments[s];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()}}};br=new WeakMap,Si._staticUndeliveredHandlers={};var Pi=Si;var Ut={};Pi.addGlobalUndeliveredEventHandler("intervals",async(r,e)=>{r.timer&&r.hook&&(delete Ut[r.hook],e.emitEffect("timers",{type:Fm.EFFECT_SET_INTERVALS,interval:{intervals:Ut}}))});var Bt,Ci,Ps,wi,Mm=class{constructor(e,t,i){d(this,Bt,void 0);d(this,Ci,void 0);d(this,Ps,void 0);d(this,wi,void 0);this.state={duration:{seconds:0,nanos:0},running:!1};l(this,Ci,i.invalidate),l(this,Bt,i.hookId),l(this,Ps,e),l(this,wi,i.context);let s=Math.floor(t/1e3),o=t%1e3*1e6;this.state.duration={seconds:s,nanos:o}}onStateLoaded(){this.state.running?Ut[n(this,Bt)]={duration:this.state.duration}:delete Ut[n(this,Bt)]}async onUIEvent(e){await n(this,Ps).call(this)}start(){Ut[n(this,Bt)]={duration:this.state.duration},this.state.running=!0,n(this,Ci).call(this),n(this,wi).emitEffect("timers",{type:Fm.EFFECT_SET_INTERVALS,interval:{intervals:Ut}})}stop(){delete Ut[n(this,Bt)],this.state.running=!1,n(this,Ci).call(this),n(this,wi).emitEffect("timers",{type:Fm.EFFECT_SET_INTERVALS,interval:{intervals:Ut}})}};Bt=new WeakMap,Ci=new WeakMap,Ps=new WeakMap,wi=new WeakMap;function Lm(r,e){return De({namespace:"useInterval"},t=>new Mm(r,e,t))}var Ii=class extends Error{};var kr,Cs,ws,xi,Qd=class{constructor(e,t){this.state={value:null,loading:!1};d(this,kr,void 0);d(this,Cs,void 0);d(this,ws,void 0);d(this,xi,void 0);l(this,ws,e),l(this,xi,t.hookId),l(this,kr,t.invalidate),l(this,Cs,t.context)}async onUIEvent(){this.state.value===null&&(this.state.value=await n(this,ws).call(this),this.state.loading=!1,n(this,kr).call(this))}setter(e){this.state.value=e instanceof Function?e(this.state.value):e,n(this,kr).call(this)}onStateLoaded(){if(this.state.value===null){this.state.loading=!0,n(this,kr).call(this);let e={asyncRequest:{requestId:n(this,xi)},hook:n(this,xi)};throw n(this,Cs).addToRequeueEvents(e),new Ii}}};kr=new WeakMap,Cs=new WeakMap,ws=new WeakMap,xi=new WeakMap;function bO(r){let e=De({namespace:"useAsyncState"},t=>new Qd(r,t));return[e.state.value,e.setter.bind(e)]}function Um(r){let e=De({namespace:"useState"},t=>{let i=r instanceof Function?r():r;return i instanceof Promise?new Qd(()=>i,t):{state:{value:i},setter:o=>{e.state.value=o instanceof Function?o(e.state.value):o,t.invalidate()}}});return[e.state.value,e.setter.bind(e)]}var Nm={now(){return new Date}};function ok(r){return`__autocache__${r}`}function ak(r){return`__lock__${r}`}var kO=300,SO=1e3,el=5e3,Bm=3,dk=.1,lk=1e3,PO=3e4;function uk(r){if(r.error)throw new Error(r.error);return r.value}var Dt,_t,_e,Ai,rl,ck,il,mk,nl,pk,Is,Dm,sl,fk,ol,gk,xs,_m,al,hk,tl=class{constructor(e,t,i=Nm){d(this,rl);d(this,il);d(this,nl);d(this,Is);d(this,sl);d(this,ol);d(this,xs);d(this,al);d(this,Dt,void 0);d(this,_t,{});d(this,_e,void 0);d(this,Ai,void 0);l(this,Dt,e),l(this,Ai,t),l(this,_e,i)}async cache(e,t){var a;(a=n(this,Ai)).__cache??(a.__cache={}),l(this,_t,n(this,Ai).__cache),y(this,al,hk).call(this,t);let i=y(this,rl,ck).call(this,t.key);if(i!==void 0)return i;let s=await y(this,xs,_m).call(this,t.key),o=await y(this,il,mk).call(this,t,s,e);return uk(o)}};Dt=new WeakMap,_t=new WeakMap,_e=new WeakMap,Ai=new WeakMap,rl=new WeakSet,ck=function(e){let t=n(this,_t)[e];if(t){let i=n(this,_e).now().getTime(),s=t?.error&&t?.errorTime&&t.errorCount<Bm&&Math.random()<dk&&t.errorTime+lk<i;if(t?.expires&&t.expires<i&&t.checkedAt+lk<i||s){delete n(this,_t)[e];return}else return uk(t)}},il=new WeakSet,mk=async function(e,t,i){let s=t?.expires,o=s?y(this,ol,gk).call(this,s):1;return!t||t?.error&&t.errorCount<Bm&&dk>Math.random()||o>Math.random()?y(this,nl,pk).call(this,e,t,i):t},nl=new WeakSet,pk=async function(e,t,i){let s=ak(e.key),o=n(this,_e).now().getTime(),a=new Date(o+e.ttl/2);if(await n(this,Dt).set(s,"1",{expiration:a,nx:!0}))return y(this,sl,fk).call(this,e.key,t,i,e.ttl);if(t)return t;{let p=n(this,_e).now();return y(this,Is,Dm).call(this,p,e.key,e.ttl)}},Is=new WeakSet,Dm=async function(e,t,i){let s=Math.min(i,SO),o=await y(this,xs,_m).call(this,t);if(o)return o;if(n(this,_e).now().getTime()-e.getTime()>=s)throw new Error(`Cache request timed out trying to get data at key: ${t}`);return await new Promise(a=>setTimeout(a,kO)),y(this,Is,Dm).call(this,e,t,i)},sl=new WeakSet,fk=async function(e,t,i,s){let o=n(this,_e).now().getTime()+s;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=n(this,_e).now().getTime(),t.errorCount++}return n(this,_t)[e]=t,await n(this,Dt).set(ok(e),JSON.stringify(t),{expiration:new Date(o+PO)}),t.error&&t.errorCount<Bm&&await n(this,Dt).del(ak(e)),t},ol=new WeakSet,gk=function(e){let t=n(this,_e).now().getTime(),i=e-t;return i<0?1:i<1e3?.1:i<2e3?.01:i<3e3?.001:0},xs=new WeakSet,_m=async function(e){let t=await n(this,Dt).get(ok(e));if(t){let i=JSON.parse(t);return i.checkedAt=n(this,_e).now().getTime(),n(this,_t)[e]=i,i}},al=new WeakSet,hk=function(e){e.ttl<el&&(console.warn(`Cache TTL cannot be less than ${el} milliseconds! Updating ttl value of ${e.ttl} to ${el}.`),e.ttl=el)};function vk(r,e,t=Nm){let i=new tl(r,e,t);return i.cache.bind(i)}var dl=class{buildContext(e,t,i){let s=new si(i),o=new ii(i),a=new ui(i),c=new di(i),p=new ci(i),f=new mi(i),v=new Zd(e),m=new ni(i),k=new ri,b=new oi(i),C=vk(a,e._state),w={modLog:s,kvStore:o,redis:a,reddit:c,scheduler:p,settings:f,media:m,assets:k,realtime:b,ui:v,useState:Um,useChannel:Om,useInterval:Lm,useForm:Am,cache:C,dimensions:t.env?.dimensions,uiEnvironment:{timezone:i[B.Timezone]?.values[0],locale:i[B.Language]?.values[0],dimensions:t.env?.dimensions}},x=de(i,t.props?.postId);return x.debug.effects=e,{...x,...w}}};var ye=null;function qm(r){return JSON.parse(JSON.stringify(r))}function CO(r){if(!(r!==""&&!/[-.]/.test(r)))throw new Error(`Hook with namespace '${r}' is invalid. Hook namespaces cannot be empty string or contain dashes/dots because they are used as delimiters internally. Please update the hook namespace and try again.`)}function wO(r){return r.blocking||r.resize?!1:!r.hook}function De(r,e){if(!ye)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.");CO(r.namespace);let t=ye.nextHookId(r),i=ye,s={hookId:t,invalidate:()=>{i._changed[t]=!0,i._state[t]=i?._hooks[t]?.state},context:ye},o=ye._state[t]===void 0||sk(ye._state[t]);ye._hooks[t]=ye._hooks[t]??e(s);let a=ye._hooks[t];return o||(a.state=ye._state[t]),a.onStateLoaded?.(),o&&a.state!==void 0&&a.state!==null&&s.invalidate(),a}var IO=null,Ti,pl,As,ne,be,Ei,ul,fl,yk,Ts,jm,gl,bk,Es,Hm,Rs,Wm,Ri,cl,Os,Gm,hl,kk,ml=class{constructor(e){d(this,ne);d(this,Ei);d(this,fl);d(this,Ts);d(this,gl);d(this,Es);d(this,Rs);d(this,Ri);d(this,Os);d(this,hl);d(this,Ti,void 0);d(this,pl,new dl);d(this,As,new vi(()=>this._latestRenderContext?.devvitContext?.assets));this._latestRenderContext=null;n(this,ne,be)&&console.debug("[blocks] BlocksHandler v1"),l(this,Ti,e),IO=this}async handle(e,t){let i=new Pi(e,t),s=n(this,pl).buildContext(i,e,t);i.devvitContext=s;let o,a=e.events,p=!e.events?.length||a.some(b=>!b.async),f=a.some(b=>b.blocking),v,m,k=[...a];for(n(this,ne,be)&&console.debug("[blocks] starting processing events");a.length>0;){n(this,ne,be)&&console.debug("[blocks] processing events loop iteration",a.length);let b=[];if(!a[0].async)b.push(a.shift());else for(;a[0]?.async;)b.push(a.shift());if(!b.length)throw Error("batch must have at least one event");try{if(b[0].async){let w=qm(i._state);await y(this,fl,yk).call(this,i,...b),i._state=w}else await y(this,gl,bk).call(this,i,...b)}catch(w){if(n(this,ne,be)&&console.debug("[blocks] caught in handler",w),m){i._state=m._state,i._changed=v,i._effects=m._effects;let x=k.map(F=>{let ue={...F};return ue.retry=!0,ue});i.addToRequeueEvents(...x);break}else throw w}n(this,ne,be)&&console.debug("[blocks] remaining events",i._requeueEvents);let C=[];for(let w of i._requeueEvents){if(!p&&!w.async){n(this,ne,be)&&console.debug("[blocks] NOT reprocessing event in BlocksHandler, sync mismatch A",w),C.push(w);continue}if(p&&w.async&&!f){n(this,ne,be)&&console.debug("[blocks] NOT reprocessing event in BlocksHandler, sync mismatch B",w),C.push(w);continue}n(this,ne,be)&&console.debug("[blocks] reprocessing event in BlocksHandler",w),a.push(w)}i._requeueEvents=C,a.length>0&&(v={...i._changed},m={_state:qm(i._state),_effects:{...i._effects}},k=[...a])}if(p){let b=qm(i._state),C=[...i._requeueEvents],w={...i._effects},x=y(this,Es,Hm).call(this,n(this,Ti),i._rootProps??{},i);(0,ll.default)(i._state,b)||console.error("[blocks] State was mutated during rendering",i._state,b),(0,ll.default)(i._requeueEvents,C)||console.error("[blocks] Events were mutated during rendering",i._requeueEvents,C),(0,ll.default)(i._effects,w)||console.error("[blocks] Effects were mutated during rendering",i._effects,w),x&&(o=n(this,As).createBlocksElementOrThrow(x),o=n(this,As).ensureRootBlock(o))}return{state:i._changedState,effects:i.effects,blocks:o,events:i._requeueEvents}}};Ti=new WeakMap,pl=new WeakMap,As=new WeakMap,ne=new WeakSet,be=function(){return!!this._latestRenderContext?.devvitContext.debug.blocks},Ei=new WeakSet,ul=function(e,...t){e._hooks={},y(this,Es,Hm).call(this,n(this,Ti),e.request.props??{},e)},fl=new WeakSet,yk=async function(e,...t){y(this,Ei,ul).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 y(this,Ts,jm).call(this,e,i)}))},Ts=new WeakSet,jm=async function(e,t){wO(t)&&console.warn("Received an event in #attemptHook that does not have an associated hook. This will cause the event to be undelivered and may cause bugs. Make sure that event passes a hook field. Event:",{event:t});let i=e._hooks[t.hook];if(i?.onUIEvent)try{await i.onUIEvent(t,e)}catch(s){throw console.error("Error in event handler",s),s}else await e.handleUndeliveredEvent(t)},gl=new WeakSet,bk=async function(e,...t){for(let i of t)n(this,ne,be)&&console.log("[blocks] handling main queue event",i),n(this,ne,be)&&console.log("[blocks] before",e._state),y(this,Ei,ul).call(this,e,i),await y(this,Ts,jm).call(this,e,i),n(this,ne,be)&&console.log("[blocks] after",e._state);y(this,Ei,ul).call(this,e)},Es=new WeakSet,Hm=function(e,t,i){n(this,ne,be)&&console.debug("[blocks] renderRoot"),i._generated={},ye=i,this._latestRenderContext=i;try{let s=y(this,Rs,Wm).call(this,e,t,i);if(s.length!==1)throw new Error("only one root");let o=s[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(s){if(s instanceof Ii)return;throw s}finally{ye=null}},Rs=new WeakSet,Wm=function(e,t,i){i.push({namespace:e.name||"anonymous",...t});try{let s=e(t,i.devvitContext);return y(this,Os,Gm).call(this,s,i)}finally{i.pop()}},Ri=new WeakSet,cl=function(e,t){return e=e.flat(1/0),e.flatMap((i,s)=>(i&&typeof i=="object"&&"props"in i&&(i.props?.key||(i.props=i.props??{},i.props.key=`${s}`)),y(this,Os,Gm).call(this,i,t)))},Os=new WeakSet,Gm=function(e,t){if(Array.isArray(e))return y(this,Ri,cl).call(this,e,t);if(xO(e)){if(e.type===void 0)return y(this,Ri,cl).call(this,e.children,t);if(typeof e.type=="function"){let i={...e.props,children:e.children};return y(this,Rs,Wm).call(this,e.type,i,t)}else{t.push({namespace:e.type,...e.props});let i=y(this,Ri,cl).call(this,e.children,t),s=y(this,hl,kk).call(this,e.props??{});return t.pop(),[{type:e.type,children:i,props:s}]}}else return[(e??"").toString()]},hl=new WeakSet,kk=function(e){let t={};for(let i in e)if(!(typeof e[i]>"u"))if(typeof e[i]=="function"){let s=De({namespace:i,key:!1},({hookId:o})=>({hookId:o,state:null,onUIEvent:e[i]}));t[i]=s.hookId,"captureHookRef"in e[i]&&e[i].captureHookRef()}else{let s=JSON.parse(JSON.stringify(e[i]));s!=null&&(t[i]=s)}return t};function xO(r){return typeof r=="object"&&r!=null&&"type"in r}var AO=[[Sk,Sk.methods.renderPostContent,(r,e)=>u.customPostType?.render(e)??null]];function TO(r){return async(e,t)=>new ml(r).handle(e,t)}function Pk(r){for(let[e,t,i]of AO)r.provides(e),L(t.name,TO(i))}var Fs,Oi,Sr,Pr,Cr,Fi,Mi,Nt,wr,_,j,z,Li,Ms,U=class U extends vd{static configure(e){l(this,Fs,e),ut(e.http)&&y(this,j,z).call(this,P.HTTPDefinition),(ut(e.kvStore)||ut(e.redis))&&(y(this,j,z).call(this,P.KVStoreDefinition),y(this,j,z).call(this,P.RedisAPIDefinition)),ut(e.media)&&y(this,j,z).call(this,P.MediaServiceDefinition),ut(e.modLog)&&y(this,j,z).call(this,P.ModlogDefinition),ut(e.redditAPI)&&(y(this,j,z).call(this,P.FlairDefinition),y(this,j,z).call(this,P.GraphQLDefinition),y(this,j,z).call(this,P.LinksAndCommentsDefinition),y(this,j,z).call(this,P.ListingsDefinition),y(this,j,z).call(this,P.ModerationDefinition),y(this,j,z).call(this,P.ModNoteDefinition),y(this,j,z).call(this,P.NewModmailDefinition),y(this,j,z).call(this,P.PrivateMessagesDefinition),y(this,j,z).call(this,P.SubredditsDefinition),y(this,j,z).call(this,P.PostCollectionsDefinition),y(this,j,z).call(this,P.UsersDefinition),y(this,j,z).call(this,P.WidgetsDefinition),y(this,j,z).call(this,P.WikiDefinition),y(this,j,z).call(this,P.RedditAPIV2Definition)),ut(e.realtime)&&y(this,j,z).call(this,P.RealtimeDefinition)}static addMenuItem(e){n(this,Oi).push(e)}static addCustomPostType(e){l(this,Sr,e)}static createForm(e,t){let i=`form.${n(this,Pr).size}`;return n(this,Pr).set(i,{form:e,onSubmit:t}),i}static addSchedulerJob(e){if(n(this,_)[P.SchedulerDefinition.fullName]||y(this,j,z).call(this,P.SchedulerDefinition),n(this,Cr).has(e.name))throw new Error(`Job ${e.name} is already defined`);n(this,Cr).set(e.name,e.onRun)}static addSettings(e){dr(e);let t=e.filter(s=>s.type==="group"||!s.scope||s.scope==="installation"),i=e.filter(s=>s.type!=="group"&&s.scope==="app");t.length>0&&l(this,Fi,t),i.length>0&&l(this,Mi,i),n(this,_)[P.SettingsDefinition.fullName]||y(this,j,z).call(this,P.SettingsDefinition)}static addTrigger(e){if("events"in e){for(let t of e.events)this.addTrigger({event:t,onEvent:(i,s)=>e.onEvent(i,s)});return this}return n(this,Nt).has(e.event)?n(this,Nt).get(e.event)?.push(e.onEvent):n(this,Nt).set(e.event,[e.onEvent]),U}static get redditAPIPlugins(){if(!ut(n(this,Fs).redditAPI))throw new Error("Reddit API is not enabled. You can enable it by passing `redditAPI: true` to `Devvit.configure`.");return{Flair:n(this,_)[P.FlairDefinition.fullName],GraphQL:n(this,_)[P.GraphQLDefinition.fullName],LinksAndComments:n(this,_)[P.LinksAndCommentsDefinition.fullName],Listings:n(this,_)[P.ListingsDefinition.fullName],Moderation:n(this,_)[P.ModerationDefinition.fullName],ModNote:n(this,_)[P.ModNoteDefinition.fullName],NewModmail:n(this,_)[P.NewModmailDefinition.fullName],PrivateMessages:n(this,_)[P.PrivateMessagesDefinition.fullName],Subreddits:n(this,_)[P.SubredditsDefinition.fullName],PostCollections:n(this,_)[P.PostCollectionsDefinition.fullName],Users:n(this,_)[P.UsersDefinition.fullName],Widgets:n(this,_)[P.WidgetsDefinition.fullName],Wiki:n(this,_)[P.WikiDefinition.fullName]}}static get modLogPlugin(){let e=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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=n(this,_)[P.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 settingsPlugin(){let e=n(this,_)[P.SettingsDefinition.fullName];if(!e)throw new Error("Settings must first be configured with `Devvit.addSettings()` before they can be accessed");return e}static get realtimePlugin(){let e=n(this,_)[P.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 n(this,Oi)}static get customPostType(){return n(this,Sr)}static get formDefinitions(){return n(this,Pr)}static get scheduledJobHandlers(){return n(this,Cr)}static get installationSettings(){return n(this,Fi)}static get appSettings(){return n(this,Mi)}static get triggerOnEventHandlers(){return n(this,Nt)}static get assets(){return n(U,Li)}static get webviewAssets(){return n(U,Ms)}constructor(e){super(e),l(U,Li,e.assets??{});for(let t in n(U,wr)){let i=n(U,wr)[t];i.handler=e.use(i.def,i.options)}n(U,Oi).length>0&&ib(e),n(U,Cr).size>0&&nb(e),n(U,Sr)&&(eb(e),Pk(e)),(n(U,Sr)||n(U,Pr).size>0)&&ek(e),n(U,Fi)&&tb(e),n(U,Mi)&&Ly(e),n(U,Nt).size>0&&sb(e),l(U,Li,e.assets??{}),l(U,Ms,e.webviewAssets??{})}};Fs=new WeakMap,Oi=new WeakMap,Sr=new WeakMap,Pr=new WeakMap,Cr=new WeakMap,Fi=new WeakMap,Mi=new WeakMap,Nt=new WeakMap,wr=new WeakMap,_=new WeakMap,j=new WeakSet,z=function(e,t){n(this,wr)[e.fullName]={def:e,options:t??{},handler:void 0};let i={};for(let s of Object.values(e.methods))i[s.name]=(o,a)=>n(this,wr)[e.fullName].handler?.[s.name]?.(s.requestType?.fromPartial(o??{}),a);return n(this,_)[e.fullName]=i,i},Li=new WeakMap,Ms=new WeakMap,d(U,j),U.debug={},d(U,Fs,{}),d(U,Oi,[]),d(U,Sr,void 0),d(U,Pr,new Map),d(U,Cr,new Map),d(U,Fi,void 0),d(U,Mi,void 0),d(U,Nt,new Map),d(U,wr,{}),d(U,_,{}),d(U,Li,{}),d(U,Ms,{});var u=U;(e=>{function r(t,i,...s){return{type:t,props:i,children:s}}e.createElement=r})(u||(u={}));function J(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 Vm;(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"})(Vm||(Vm={}));var Ck="text",wk="raw",Ik="br",xk="link",Ak="c/",Tk="p/",Ek="r/",Rk="u/",Ok="@",Fk="spoilertext",Mk="par",Lk="h",Uk="hr",Bk="blockquote",Dk="code",_k="li",Nk="list",qk="L",jk="R",Hk="C",Wk="table",Gk="embed",Vk="img",zk="gif",Jk="video";function $k(r){return{e:zk,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function Kk(r,e){let t={},i=[];return Object.assign(t,Ls(t,i),Us(t,i),Bs(t,i),Ns(t,i),qs(t,i),js(t,i)),e(t),{e:Bk,c:i,...r.author&&{a:r.author}}}function Xk(r,e){let t={},i=[];return Object.assign(t,Jm(t,i)),e(t),{e:Dk,c:i,...r.language&&{l:r.language}}}function Zk(r){return{e:Ak,t:r.permalink}}function Yk(r,e){let t={},i=[];return Object.assign(t,Jm(t,i),_s(t,i)),e(t),{e:Lk,l:r.level,c:i}}function Qk(r){return{e:Gk,u:r.sourceUrl,c:r.contentUrl,x:r.width,y:r.height}}function eS(){return{e:Uk}}function tS(r){return{e:Vk,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur}}}function rS(){return{e:Ik}}function iS(r){return{e:xk,t:r.text,u:r.url,...r.formatting&&{f:r.formatting},...r.tooltip&&{a:r.tooltip}}}function nS(r,e){let t={},i=[];return Object.assign(t,kS(t,i)),e(t),{e:Nk,o:r.ordered,c:i}}function sS(r){let e={},t=[];return Object.assign(e,Ls(e,t),Us(e,t),Bs(e,t),vl(e,t),Ns(e,t),qs(e,t),js(e,t)),r(e),{e:_k,c:t}}function oS(r){let e={},t=[];return Object.assign(e,yl(e,t),_s(e,t),zm(e,t),$m(e,t),Ds(e,t)),r(e),{e:Mk,c:t}}function aS(r){return{e:Tk,t:r.permalink}}function dS(r){return{e:wk,t:r}}function lS(r){let e={},t=[];return Object.assign(e,yl(e,t),_s(e,t),zm(e,t)),r(e),{e:Fk,c:t}}function uS(r){return{e:Ek,t:r.subredditName,l:r.showPrefix}}function cS(r){let e={},t=[],i=[];return Object.assign(e,SS(e,t,i)),r(e),{e:Wk,h:t,c:i}}function mS(r){let[e,t]=bS();return r(e),{c:t}}function pS(r,e){let[t,i]=bS();e(t);let s;switch(r.columnAlignment){case"left":s=qk;break;case"right":s=jk;break;case"center":s=Hk;break}return{...s&&{a:s},...i&&{c:i}}}function fS(r){let e={},t=[];return Object.assign(e,PS(e,t)),r(e),t}function gS(r){return{e:Ck,t:r.text,...r.formatting&&{f:r.formatting}}}function hS(r){return{e:Rk,t:r.username,l:r.showPrefix}}function vS(r){return{e:Ok,t:r.username,l:r.showPrefix}}function yS(r){return{e:Jk,id:r.mediaId,...r.caption&&{c:r.caption},...r.blur&&{o:r.blur},...r.thumbnail&&{p:r.thumbnail},...r.convertToGif&&{gifify:r.convertToGif}}}function bS(){let r={},e=[];return Object.assign(r,yl(r,e),_s(r,e),$m(r,e),Ds(r,e)),[r,e]}function Ls(r,e){return{blockQuote(t,i){return e.push(Kk(t,i)),r}}}function Us(r,e){return{codeBlock(t,i){return e.push(Xk(t,i)),r}}}function CS(r,e){return{embed(t){return e.push(Qk(t)),r}}}function Bs(r,e){return{heading(t,i){return e.push(Yk(t,i)),r}}}function vl(r,e){return{horizontalRule(){return e.push(eS()),r}}}function Ds(r,e){return{image(t){return e.push(tS(t)),r},animatedImage(t){return e.push($k(t)),r}}}function zm(r,e){return{linebreak(){return e.push(rS()),r}}}function _s(r,e){return{link(t){return e.push(iS(t)),r},commentLink(t){return e.push(Zk(t)),r},postLink(t){return e.push(aS(t)),r},subredditLink(t){return e.push(uS(t)),r},userLink(t){return e.push(hS(t)),r},userMention(t){return e.push(vS(t)),r}}}function Ns(r,e){return{list(t,i){return e.push(nS(t,i)),r}}}function kS(r,e){return{item(t){return e.push(sS(t)),r}}}function qs(r,e){return{paragraph(t){return e.push(oS(t)),r}}}function Jm(r,e){return{rawText(t){return e.push(dS(t)),r}}}function $m(r,e){return{spoiler(t){return e.push(lS(t)),r}}}function SS(r,e,t){return{headerCell(i,s){return e.push(pS(i,s)),r},row(i){return t.push(fS(i)),r}}}function js(r,e){return{table(t){return e.push(cS(t)),r}}}function PS(r,e){return{cell(t){return e.push(mS(t)),r}}}function yl(r,e){return{text(t){return e.push(gS(t)),r}}}function wS(r,e){return{video(t){return e.push(yS(t)),r}}}var EO=function(r,e,t,i,s){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!s:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?s.call(r,t):s?s.value=t:e.set(r,t),t},RO=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)},bl,Hs=class{constructor(){bl.set(this,void 0);let e=[];Object.assign(this,qs(this,e),Bs(this,e),vl(this,e),Ls(this,e),Us(this,e),CS(this,e),Ns(this,e),js(this,e),Ds(this,e),wS(this,e)),EO(this,bl,{document:e},"f")}build(){return JSON.stringify(RO(this,bl,"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}};bl=new WeakMap;function Ui(r){let e;return r instanceof Hs?e=r.build():typeof r=="object"?e=JSON.stringify(r):e=r,e}var IS=100,xS=1/0,Ir,xr,qt,Bi,Di,kl,H=class{constructor(e){d(this,Di);d(this,Ir,void 0);d(this,xr,void 0);d(this,qt,void 0);d(this,Bi,!1);this.pageSize=IS;this.limit=xS;this.children=[];J(this),this._fetch=e.fetch,this.pageSize=e.pageSize??IS,this.limit=e.limit??xS,l(this,xr,e.after),l(this,Ir,e.before),l(this,qt,e.more),e.children&&(this.children=e.children)}get hasMore(){return!n(this,Bi)||!!(n(this,xr)||n(this,Ir)||n(this,qt))}async*[Symbol.asyncIterator](){let e=0;for(;;){if(e===this.children.length)if(this.hasMore){if((await y(this,Di,kl).call(this)).length===0)break}else break;if(yield this.children[e],e++,e===this.limit)break}}setMore(e){l(this,qt,e)}preventInitialFetch(){l(this,Bi,!0)}async all(){for(;this.hasMore&&this.children.length<this.limit;)await y(this,Di,kl).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 y(this,Di,kl).call(this);return this.children.slice(0,t)}};Ir=new WeakMap,xr=new WeakMap,qt=new WeakMap,Bi=new WeakMap,Di=new WeakSet,kl=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:s}=await this._fetch({before:n(this,Ir),after:n(this,xr),limit:this.pageSize,more:n(this,qt)});return this.children.push(...e),l(this,Ir,t),l(this,xr,i),l(this,qt,s),l(this,Bi,!0),e};function OO(r){try{return!0}catch{return!1}}function FO(r){try{return!0}catch{return!1}}var Ws,Km,Me=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 s=>{let o=await i.GetNotes({subreddit:e.subreddit,user:e.user,filter:e.filter,before:s.before,limit:s.limit},t);return{children:o.modNotes?.map(a=>y(this,Ws,Km).call(this,a))||[],before:o.hasNextPage?o.endCursor:void 0,hasMore:o.hasNextPage}}})}static async delete(e,t){let i=u.redditAPIPlugins.ModNote,{deleted:s}=await i.DeleteNotes(e,t);return!!s}static async add(e,t){let s=await u.redditAPIPlugins.ModNote.PostNotes(e,t);if(!s?.created)throw new Error("Failed to create mod note");return y(this,Ws,Km).call(this,s.created)}static async addRemovalNote(e,t){await u.redditAPIPlugins.ModNote.PostRemovalNote(e,t)}};Ws=new WeakSet,Km=function(e){if(g(e.id,"Mod note ID is null or undefined"),g(e.createdAt,"Mod note createdAt is null or undefined"),g(e.type,"Mod note type is null or undefined"),g(e.subreddit,"Mod note subreddit is null or undefined"),g(e.subredditId,"Mod note subredditId is null or undefined"),g(e.operator,"Mod note operator is null or undefined"),g(e.operatorId,"Mod note operatorId is null or undefined"),g(e.user,"Mod note user is null or undefined"),g(e.userId,"Mod note userId is null or undefined"),g(e.userNoteData,"Mod note userNote is null or undefined"),g(e.modActionData,"Mod note modAction is null or undefined"),!OO(e.userNoteData?.label??""))throw new Error(`Invalid user note label: ${e.userNoteData?.label}`);if(!FO(e.type))throw new Error(`Invalid mod note type: ${e.type}`);return{id:e.id,user:{id:te(e.userId??""),name:e.user},subreddit:{id:Re(e.subredditId??""),name:e.subreddit},operator:{id:te(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}},d(Me,Ws);var jt=class{static queryWithQueryString(e,t){return u.redditAPIPlugins.GraphQL.Query({query:e},t)}static query(e,t,i,s){return u.redditAPIPlugins.GraphQL.PersistedQuery({operationName:e,id:t,variables:i},s)}};var AS=["all","wiki","posts","access","mail","config","flair","channels","chat_config","chat_community","chat_operator"];function MO(r,e,t=!1){let i=t?"%2b":"+";return e.map(s=>(r.includes(s)?i:"-")+s).join(",")}function Xm(r){return MO(r,AS,!0)}function TS(r){return r.filter(e=>AS.includes(e))}var LO=(t=>(t.User="USER_FLAIR",t.Post="LINK_FLAIR",t))(LO||{}),Ar,_i,Ni,qi,ji,Hi,Wi,Gi,Vi,zi,Ji,Sl,$e=class $e{constructor(e,t,i){d(this,Ar,void 0);d(this,_i,void 0);d(this,Ni,void 0);d(this,qi,void 0);d(this,ji,void 0);d(this,Hi,void 0);d(this,Wi,void 0);d(this,Gi,void 0);d(this,Vi,void 0);d(this,zi,void 0);J(this),g(e.id),g(e.text),l(this,Ar,e.id),l(this,_i,t),l(this,Ni,e.text),l(this,qi,UO(e.textColor)),l(this,ji,BO(e.backgroundColor)),l(this,Hi,DO(e.allowableContent)),l(this,Wi,e.modOnly),l(this,Gi,e.maxEmojis),l(this,Vi,e.textEditable),l(this,zi,i)}get id(){return n(this,Ar)}get text(){return n(this,Ni)}get textColor(){return n(this,qi)}get backgroundColor(){return n(this,ji)}get allowableContent(){return n(this,Hi)}get modOnly(){return n(this,Wi)}get maxEmojis(){return n(this,Gi)}get allowUserEdits(){return n(this,Vi)}async delete(){return $e.deleteFlairTemplate(n(this,Ar),n(this,_i),n(this,zi))}async edit(e){return $e.editFlairTemplate({id:n(this,Ar),subredditName:n(this,_i),text:e.text??n(this,Ni),allowableContent:e.allowableContent??n(this,Hi),backgroundColor:e.backgroundColor??n(this,ji),maxEmojis:e.maxEmojis??n(this,Gi),modOnly:e.modOnly??n(this,Wi),textColor:e.textColor??n(this,qi),allowUserEdits:e.allowUserEdits??n(this,Vi)},n(this,zi))}static async createPostFlairTemplate(e,t){var i;return y(i=$e,Ji,Sl).call(i,{...e,flairType:"LINK_FLAIR"},t)}static async createUserFlairTemplate(e,t){var i;return y(i=$e,Ji,Sl).call(i,{...e,flairType:"USER_FLAIR"},t)}static async editFlairTemplate(e,t){var i;return y(i=$e,Ji,Sl).call(i,e,t)}static async getPostFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.LinkFlair({subreddit:e},t)).flair?.map(o=>new $e(o,e,t))||[]}static async getUserFlairTemplates(e,t){return(await u.redditAPIPlugins.Flair.UserFlair({subreddit:e},t)).flair?.map(o=>new $e(o,e,t))||[]}static async deleteFlairTemplate(e,t,i){await u.redditAPIPlugins.Flair.DeleteFlairTemplate({subreddit:e,flairTemplateId:t},i)}};Ar=new WeakMap,_i=new WeakMap,Ni=new WeakMap,qi=new WeakMap,ji=new WeakMap,Hi=new WeakMap,Wi=new WeakMap,Gi=new WeakMap,Vi=new WeakMap,zi=new WeakMap,Ji=new WeakSet,Sl=async function(e,t){let{subredditName:i,allowableContent:s="all",backgroundColor:o="transparent",flairType:a="",maxEmojis:c=10,modOnly:p=!1,text:f,textColor:v="dark",allowUserEdits:m=!1,id:k=""}=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:s,backgroundColor:o,flairType:a,maxEmojis:c,modOnly:p,text:f,textColor:v,textEditable:m,flairTemplateId:k,cssClass:"",overrideCss:!1},t);return new $e(C,i,t)},d($e,Ji);var ae=$e;function zs(r){return{flairCssClass:r.flairCssClass,user:r.user,flairText:r.flairText}}var Gs,Zm,Vs,Ym,Ht=class Ht{static async getUserFlairBySubreddit(e,t){return u.redditAPIPlugins.Flair.FlairList(e,t)}static setUserFlair(e,t){var i;return y(i=Ht,Gs,Zm).call(i,e,t)}static setPostFlair(e,t){var i;return y(i=Ht,Gs,Zm).call(i,{...e,postId:fe(e.postId)},t)}static async removePostFlair(e,t,i){var s;return y(s=Ht,Vs,Ym).call(s,e,t,void 0,i)}static async removeUserFlair(e,t,i){var s;return y(s=Ht,Vs,Ym).call(s,e,void 0,t,i)}};Gs=new WeakSet,Zm=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)},Vs=new WeakSet,Ym=async function(e,t,i,s){await u.redditAPIPlugins.Flair.SelectFlair({subreddit:e,name:i??"",link:t??"",flairTemplateId:"",backgroundColor:"",text:"",textColor:"",cssClass:"",returnRtjson:"none"},s)},d(Ht,Gs),d(Ht,Vs);var Le=Ht;function UO(r){if(g(r,"Flair text color is required"),r==="light"||r==="dark")return r;throw new Error(`Invalid flair text color: ${r}`)}function BO(r){if(g(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 DO(r){if(r==="all"||r==="text"||r==="emoji")return r;throw new Error(`Invalid allowable content: ${r}`)}import{Block as VO}from"@devvit/protos";var FS=Br(OS(),1);var $i,$s,Ki,Ks,Xs,Zs,Ys,Qs,Xi,eo,to,ro,io,no,so,Wt,oo,ao,Er,Zi,Gt,Yi,Qi,en,Rr,Vt,zt,tn,Jt,$t,Kt,pt,lo,uo,rn,nn,D,N=class N{constructor(e,t){d(this,$i,void 0);d(this,$s,void 0);d(this,Ki,void 0);d(this,Ks,void 0);d(this,Xs,void 0);d(this,Zs,void 0);d(this,Ys,void 0);d(this,Qs,void 0);d(this,Xi,void 0);d(this,eo,void 0);d(this,to,void 0);d(this,ro,void 0);d(this,io,void 0);d(this,no,void 0);d(this,so,void 0);d(this,Wt,void 0);d(this,oo,void 0);d(this,ao,void 0);d(this,Er,void 0);d(this,Zi,void 0);d(this,Gt,void 0);d(this,Yi,void 0);d(this,Qi,void 0);d(this,en,void 0);d(this,Rr,void 0);d(this,Vt,void 0);d(this,zt,void 0);d(this,tn,void 0);d(this,Jt,void 0);d(this,$t,void 0);d(this,Kt,void 0);d(this,pt,void 0);d(this,lo,void 0);d(this,uo,void 0);d(this,rn,void 0);d(this,nn,void 0);d(this,D,void 0);J(this),g(e.id,"Post is missing id"),g(e.title,"Post is missing title"),g(e.createdUtc,"Post is missing created date"),g(e.author,"Post is missing author name"),g(e.subreddit,"Post is missing subreddit name"),g(e.subredditId,"Post is missing subreddit id"),g(e.url,"Post is missing url"),g(e.permalink,"Post is missing permalink"),l(this,$i,fe(`t3_${e.id}`)),l(this,Ki,e.author),l(this,$s,e.authorFullname?te(e.authorFullname):void 0),l(this,Xs,Re(e.subredditId)),l(this,Zs,e.subreddit),l(this,ro,e.score??0),l(this,io,e.numComments??0),l(this,no,e.numReports??0);let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,Ks,i),l(this,Qs,e.title),l(this,Xi,e.selftext),l(this,eo,e.selftextHtml),l(this,to,e.url),l(this,Ys,e.permalink),e.thumbnail&&e.thumbnail!=="self"&&e.thumbnail!=="nsfw"&&e.thumbnailHeight!=null&&e.thumbnailWidth!=null&&l(this,so,{url:e.thumbnail,height:e.thumbnailHeight,width:e.thumbnailWidth}),l(this,Wt,e.approved??!1),l(this,oo,e.approvedAtUtc??0),l(this,ao,e.bannedAtUtc??0),l(this,Gt,e.removed??!1),l(this,Yi,e.removedBy),l(this,Qi,e.removedByCategory),l(this,Er,e.spam??!1),l(this,Zi,e.stickied??!1),l(this,en,e.archived??!1),l(this,Rr,e.edited??!1),l(this,Vt,e.locked??!1),l(this,zt,e.over18??!1),l(this,tn,e.quarantine??!1),l(this,Jt,e.spoiler),l(this,$t,e.hidden??!1),l(this,Kt,e.ignoreReports??!1),l(this,pt,e.distinguished),l(this,uo,e.secureMedia),l(this,rn,(e.modReports??[]).map(([s])=>s)),l(this,nn,(e.userReports??[]).map(([s])=>s)),l(this,D,t),(e.linkFlairBackgroundColor||e.linkFlairCssClass||e.linkFlairText||e.linkFlairType||e.linkFlairTemplateId||e.linkFlairRichtext||e.linkFlairTextColor)&&l(this,lo,{backgroundColor:e.linkFlairBackgroundColor,cssClass:e.linkFlairCssClass,text:e.linkFlairText,type:e.linkFlairType,templateId:e.linkFlairTemplateId,richtext:(e.linkFlairRichtext??[]).map(({e:s,t:o,a,u:c})=>({elementType:s,text:o,emojiRef:a,url:c})),textColor:e.linkFlairTextColor})}get id(){return n(this,$i)}get authorId(){return n(this,$s)}get authorName(){return n(this,Ki)}get subredditId(){return n(this,Xs)}get subredditName(){return n(this,Zs)}get permalink(){return n(this,Ys)}get title(){return n(this,Qs)}get body(){return n(this,Xi)}get bodyHtml(){return n(this,eo)}get url(){return n(this,to)}get thumbnail(){return n(this,so)}get createdAt(){return n(this,Ks)}get score(){return n(this,ro)}get numberOfComments(){return n(this,io)}get numberOfReports(){return n(this,no)}get approved(){return n(this,Wt)}get approvedAtUtc(){return n(this,oo)}get bannedAtUtc(){return n(this,ao)}get spam(){return n(this,Er)}get stickied(){return n(this,Zi)}get removed(){return n(this,Gt)}get removedBy(){return n(this,Yi)}get removedByCategory(){return n(this,Qi)}get archived(){return n(this,en)}get edited(){return n(this,Rr)}get locked(){return n(this,Vt)}get nsfw(){return n(this,zt)}get quarantined(){return n(this,tn)}get spoiler(){return n(this,Jt)}get hidden(){return n(this,$t)}get ignoringReports(){return n(this,Kt)}get distinguishedBy(){return n(this,pt)}get comments(){return X.getComments({postId:this.id},n(this,D))}get flair(){return n(this,lo)}get secureMedia(){return n(this,uo)}get userReportReasons(){return n(this,nn)}get modReportReasons(){return n(this,rn)}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:n(this,Yi),removedByCategory:n(this,Qi),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:n(this,rn),userReportReasons:n(this,nn)}}isApproved(){return n(this,Wt)}isSpam(){return n(this,Er)}isStickied(){return n(this,Zi)}isRemoved(){return n(this,Gt)}isArchived(){return n(this,en)}isEdited(){return n(this,Rr)}isLocked(){return n(this,Vt)}isNsfw(){return n(this,zt)}isQuarantined(){return n(this,tn)}isSpoiler(){return n(this,Jt)}isHidden(){return n(this,$t)}isIgnoringReports(){return n(this,Kt)}isDistinguishedBy(){return n(this,pt)}async edit(e){let t=await N.edit({id:this.id,...e},n(this,D));l(this,Xi,t.body),l(this,Rr,t.edited)}async addComment(e){return X.submit({id:this.id,...e},n(this,D))}async delete(){return N.delete(this.id,n(this,D))}async approve(){await N.approve(this.id,n(this,D)),l(this,Wt,!0),l(this,Gt,!1)}async remove(e=!1){await N.remove(this.id,e,n(this,D)),l(this,Gt,!0),l(this,Er,e),l(this,Wt,!1)}async lock(){await N.lock(this.id,n(this,D)),l(this,Vt,!0)}async unlock(){await N.unlock(this.id,n(this,D)),l(this,Vt,!1)}async hide(){await N.hide(this.id,n(this,D)),l(this,$t,!0)}async unhide(){await N.unhide(this.id,n(this,D)),l(this,$t,!1)}async markAsNsfw(){await N.markAsNsfw(this.id,n(this,D)),l(this,zt,!0)}async unmarkAsNsfw(){await N.unmarkAsNsfw(this.id,n(this,D)),l(this,zt,!1)}async markAsSpoiler(){await N.markAsSpoiler(this.id,n(this,D)),l(this,Jt,!0)}async unmarkAsSpoiler(){await N.unmarkAsSpoiler(this.id,n(this,D)),l(this,Jt,!1)}async sticky(e){await N.sticky(this.id,e,n(this,D))}async unsticky(){await N.unsticky(this.id,n(this,D))}async distinguish(){let{distinguishedBy:e}=await N.distinguish(this.id,!1,n(this,D));l(this,pt,e)}async distinguishAsAdmin(){let{distinguishedBy:e}=await N.distinguish(this.id,!0,n(this,D));l(this,pt,e)}async undistinguish(){let{distinguishedBy:e}=await N.undistinguish(this.id,n(this,D));l(this,pt,e)}async ignoreReports(){await N.ignoreReports(this.id,n(this,D)),l(this,Kt,!0)}async unignoreReports(){await N.unignoreReports(this.id,n(this,D)),l(this,Kt,!1)}async getAuthor(){return I.getByUsername(n(this,Ki),n(this,D))}async crosspost(e){return N.crosspost({...e,postId:this.id},n(this,D))}addRemovalNote(e){return Me.addRemovalNote({itemIds:[n(this,$i)],...e},n(this,D))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,s=ar(e)?e:`t3_${e}`,o=await i.Info({subreddits:[],thingIds:[s]},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,s;if("preview"in e){g(t,"Missing metadata in `SubmitPostOptions`");let c=await new lt(()=>e.preview,void 0,{},t,void 0).buildBlocksUI(),p=VO.encode(c).finish();s=await i.Submit({kind:"custom",sr:e.subredditName,richtextJson:(0,FS.fromByteArray)(p),...e},t)}else s=await i.Submit({kind:"kind"in e?e.kind:"url"in e?"link":"self",sr:e.subredditName,richtextJson:"richtext"in e?Ui(e.richtext):void 0,...e},t);if("kind"in e&&["image","video","videogif"].includes(e.kind)&&!s.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(!s.json?.data?.id||s.json?.errors?.length)throw new Error(`failed to submit post - either post ID is empty or request failed with errors: ${s.json?.errors}`);return N.getById(`t3_${s.json.data.id}`,t)}static async crosspost(e,t){let i=u.redditAPIPlugins.LinksAndComments,{postId:s,subredditName:o,...a}=e,c=await i.Submit({kind:"crosspost",sr:o,crosspostFullname:fe(s),...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:s}=e,o;if("richtext"in e&&(o=Ui(e.richtext)),(await i.EditUserText({thingId:s,text:"text"in e?e.text:"",richtextJson:o},t)).json?.errors?.length)throw new Error("Failed to edit post");return N.getById(s,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 g(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 g(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 s=>{let o=await i.Sort({show:"all",sort:e.sort,t:e.timeframe,subreddit:e.subredditName,...s},t);return Js(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 s=>{let o=await i.Hot({g:e.location,show:"all",subreddit:e.subredditName,...s},t);return Js(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 s=>{let o=await i.New({show:"all",subreddit:e.subredditName,...s},t);return Js(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 s=>{let o=await i.Rising({show:"all",subreddit:e.subredditName,...s},t);return Js(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(s){let o=await i.UserWhere({username:e.username,where:"submitted",...s},t);return Js(o,t)}})}};$i=new WeakMap,$s=new WeakMap,Ki=new WeakMap,Ks=new WeakMap,Xs=new WeakMap,Zs=new WeakMap,Ys=new WeakMap,Qs=new WeakMap,Xi=new WeakMap,eo=new WeakMap,to=new WeakMap,ro=new WeakMap,io=new WeakMap,no=new WeakMap,so=new WeakMap,Wt=new WeakMap,oo=new WeakMap,ao=new WeakMap,Er=new WeakMap,Zi=new WeakMap,Gt=new WeakMap,Yi=new WeakMap,Qi=new WeakMap,en=new WeakMap,Rr=new WeakMap,Vt=new WeakMap,zt=new WeakMap,tn=new WeakMap,Jt=new WeakMap,$t=new WeakMap,Kt=new WeakMap,pt=new WeakMap,lo=new WeakMap,uo=new WeakMap,rn=new WeakMap,nn=new WeakMap,D=new WeakMap;var V=N;function Js(r,e){if(!r.data?.children)throw new Error("Listing response is missing children");return{children:r.data.children.map(i=>new V(i.data,e)),before:r.data.before,after:r.data.after}}var co,sn,mo,po,fo,go,ho,Xt,vo,yo,ft,Or=class Or{constructor(e,t){d(this,co,void 0);d(this,sn,void 0);d(this,mo,void 0);d(this,po,void 0);d(this,fo,void 0);d(this,go,void 0);d(this,ho,void 0);d(this,Xt,new Map);d(this,vo,void 0);d(this,yo,void 0);d(this,ft,void 0);J(this),g(e.id,"User ID is missing or undefined"),g(e.name,"Username is missing or undefined"),g(e.createdUtc,"User is missing created date"),l(this,co,te(hd(e.id)?e.id:`t2_${e.id}`)),l(this,sn,e.name),l(this,go,e.over18??!1),l(this,ho,e.isEmployee??!1);let i=new Date(0);if(i.setUTCSeconds(e.createdUtc),l(this,mo,i),l(this,po,e.linkKarma??0),l(this,fo,e.commentKarma??0),e.modPermissions)for(let[s,o]of Object.entries(e.modPermissions))n(this,Xt).set(s,TS(o));l(this,vo,new URL(e.subreddit?.url??"","https://www.reddit.com").toString()),l(this,yo,e.subreddit?.url??""),l(this,ft,t)}get id(){return n(this,co)}get username(){return n(this,sn)}get createdAt(){return n(this,mo)}get linkKarma(){return n(this,po)}get commentKarma(){return n(this,fo)}get nsfw(){return n(this,go)}get isAdmin(){return n(this,ho)}get modPermissions(){return n(this,Xt)}get url(){return n(this,vo)}get permalink(){return n(this,yo)}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(n(this,Xt).has(e))return n(this,Xt).get(e);let t=await Or.getSubredditUsersByType({subredditName:e,type:"moderators",username:this.username},n(this,ft)).all();if(t.length===0)return[];let i=t[0].modPermissions.get(e)??[];return i.length>0&&n(this,Xt).set(e,i),i}getComments(e){return X.getCommentsByUser({username:this.username,...e},n(this,ft))}getPosts(e){return V.getPostsByUser({username:this.username,...e},n(this,ft))}async getUserFlairBySubreddit(e){let t=await Le.getUserFlairBySubreddit({subreddit:e,name:n(this,sn)},n(this,ft));return t.users[0]?zs(t.users[0]):void 0}getSnoovatarUrl(){return Or.getSnoovatarUrl(this.username,n(this,ft))}static async getById(e,t){let o=(await u.redditAPIPlugins.Users.UserDataByAccountIds({ids:e},t))?.users?.[e]?.name;return o==null?void 0:Or.getByUsername(o,t)}static async getByUsername(e,t){let s=await u.redditAPIPlugins.Users.UserAbout({username:e},t);if(!s.data?.id)throw new Error("failed to get user");return new Or(s.data,t)}static async getFromMetadata(e,t){g(t);let i=t?.[e]?.values[0];return i?Or.getById(te(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 s=>{let o=await i.AboutWhere({where:e.type,user:e.username,subreddit:e.subredditName,show:"all",...s},t);return JO(o,e.subredditName,t)}})}static async createRelationship(e,t){let i=u.redditAPIPlugins.Users,{type:s,subredditName:o,username:a,permissions:c,...p}=e,f=await i.Friend({type:s,subreddit:o,name:a,permissions:c?Xm(c):void 0,...p},t);if(f.json?.errors?.length)throw new Error(f.json.errors.join(`
4
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,s){let a=await u.redditAPIPlugins.Users.SetPermissions({subreddit:t,name:e,type:"moderator",permissions:Xm(i)},s);if(a.json?.errors?.length)throw new Error(a.json.errors.join(`
5
- `))}static async getSnoovatarUrl(e,t){let i="GetSnoovatarUrlByName",s="c47fd42345af268616d2d8904b56856acdc05cf61d3650380f539ad7d596ac0c";return(await jt.query(i,s,{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(s){let o=await i.UserWhere({username:e.username,where:"overview",...s},t);return VO(o,t)}})}};co=new WeakMap,sn=new WeakMap,mo=new WeakMap,po=new WeakMap,fo=new WeakMap,go=new WeakMap,ho=new WeakMap,Xt=new WeakMap,vo=new WeakMap,yo=new WeakMap,ft=new WeakMap;var I=Or;function VO(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 V(i.data,e);if(i.kind==="t1")return new X(i.data,e);throw new Error(`Type ${i.kind} is not supported`)}),before:r.data.before,after:r.data.after}}async function zO(r,e,t){let i=u.redditAPIPlugins.Users;if(!r.data?.children)throw new Error("Listing response is missing children");let s=r.data.children.map(v=>(g(v.data?.id,"User id is still from listing data"),v.data.id)),o=100,a=[];for(let v=0;v<s.length;v+=o)a.push(s.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;g(m,"User id is missing from listing");let k=p[m];return g(k,"User data is missing from response"),new I({id:m,name:k.name,linkKarma:k.linkKarma,commentKarma:k.commentKarma,createdUtc:k.createdUtc,over18:k.profileOver18,snoovatarSize:[],modPermissions:{[e]:v.data?.modPermissions??[]}},t)}),before:r.data.before,after:r.data.after}}var Fr,bo,on,an,ko,So,dn,Po,Co,ln,Zt,wo,Io,Mr,Yt,Qt,gt,Lr,ht,xo,Ao,To,Eo,Ro,Oo,Fo,Y,un,Cl,cn,wl,W=class W{constructor(e,t){d(this,Fr,void 0);d(this,bo,void 0);d(this,on,void 0);d(this,an,void 0);d(this,ko,void 0);d(this,So,void 0);d(this,dn,void 0);d(this,Po,void 0);d(this,Co,void 0);d(this,ln,void 0);d(this,Zt,void 0);d(this,wo,void 0);d(this,Io,void 0);d(this,Mr,void 0);d(this,Yt,void 0);d(this,Qt,void 0);d(this,gt,void 0);d(this,Lr,void 0);d(this,ht,void 0);d(this,xo,void 0);d(this,Ao,void 0);d(this,To,void 0);d(this,Eo,void 0);d(this,Ro,void 0);d(this,Oo,void 0);d(this,Fo,void 0);d(this,Y,void 0);var s;J(this),g(e.id,"Comment id is null or undefined"),g(e.body,"Comment body is null or undefined"),g(e.createdUtc,"Comment is missing created date"),g(e.author,"Comment author is null or undefined"),g(e.parentId,"Comment parentId is null or undefined"),g(e.linkId,"Comment linkId is null or undefined"),g(e.permalink,"Comment permalink is null or undefined"),g(e.subreddit,"Comment is missing subreddit name"),g(e.subredditId,"Comment is missing subreddit id"),l(this,Fr,Zr(`t1_${e.id}`)),l(this,bo,e.authorFullname?te(e.authorFullname):void 0),l(this,on,e.author),l(this,an,e.body),l(this,Po,Re(e.subredditId)),l(this,Co,e.subreddit),l(this,So,jc(e.parentId)?Zr(e.parentId):fe(e.parentId)),l(this,dn,fe(e.linkId)),l(this,Mr,e.edited??!1),l(this,Yt,e.locked??!1),l(this,Qt,e.removed??!1),l(this,gt,e.stickied??!1),l(this,Zt,e.approved??!1),l(this,wo,e.approvedAtUtc??0),l(this,Io,e.bannedAtUtc??0),l(this,Lr,e.spam??!1),l(this,ht,e.distinguished),l(this,xo,e.numReports??0),l(this,Ao,e.collapsedBecauseCrowdControl??!1),l(this,To,e.score??0),l(this,Eo,e.permalink),l(this,Fo,new URL(e.permalink??"","https://www.reddit.com/").toString()),l(this,Ro,(e.modReports??[]).map(([o])=>o)),l(this,Oo,(e.userReports??[]).map(([o])=>o));let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,ko,i),l(this,ln,y(s=W,un,Cl).call(s,{postId:n(this,dn),commentId:n(this,Fr)},t)),l(this,Y,t)}get id(){return n(this,Fr)}get authorId(){return n(this,bo)}get authorName(){return n(this,on)}get subredditId(){return n(this,Po)}get subredditName(){return n(this,Co)}get body(){return n(this,an)}get createdAt(){return n(this,ko)}get parentId(){return n(this,So)}get postId(){return n(this,dn)}get replies(){return n(this,ln)}get distinguishedBy(){return n(this,ht)}get locked(){return n(this,Yt)}get stickied(){return n(this,gt)}get removed(){return n(this,Qt)}get approved(){return n(this,Zt)}get approvedAtUtc(){return n(this,wo)}get bannedAtUtc(){return n(this,Io)}get spam(){return n(this,Lr)}get edited(){return n(this,Mr)}get numReports(){return n(this,xo)}get collapsedBecauseCrowdControl(){return n(this,Ao)}get score(){return n(this,To)}get permalink(){return n(this,Eo)}get userReportReasons(){return n(this,Oo)}get modReportReasons(){return n(this,Ro)}get url(){return n(this,Fo)}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 n(this,Yt)}isApproved(){return n(this,Zt)}isRemoved(){return n(this,Qt)}isSpam(){return n(this,Lr)}isStickied(){return n(this,gt)}isDistinguished(){return!!n(this,ht)}isEdited(){return n(this,Mr)}async delete(){return W.delete(this.id,n(this,Y))}async edit(e){let t=await W.edit({id:this.id,...e},n(this,Y));return l(this,an,t.body),l(this,Mr,t.edited),this}async approve(){await W.approve(this.id,n(this,Y)),l(this,Zt,!0),l(this,Qt,!1)}async remove(e=!1){await W.remove(this.id,e,n(this,Y)),l(this,Qt,!0),l(this,Lr,e),l(this,Zt,!1)}async lock(){await W.lock(this.id,n(this,Y)),l(this,Yt,!0)}async unlock(){await W.unlock(this.id,n(this,Y)),l(this,Yt,!1)}async reply(e){return W.submit({id:this.id,...e},n(this,Y))}async getAuthor(){return I.getByUsername(n(this,on),n(this,Y))}async distinguish(e=!1){let{distinguishedBy:t,stickied:i}=await W.distinguish(this.id,e,!1,n(this,Y));l(this,ht,t),l(this,gt,i)}async distinguishAsAdmin(e=!1){let{distinguishedBy:t,stickied:i}=await W.distinguish(this.id,e,!0,n(this,Y));l(this,ht,t),l(this,gt,i)}async undistinguish(){let{distinguishedBy:e,stickied:t}=await W.undistinguish(this.id,n(this,Y));l(this,ht,e),l(this,gt,t)}addRemovalNote(e){return Me.addRemovalNote({itemIds:[n(this,Fr)],...e},n(this,Y))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,s=Pt(e)?e:`t1_${e}`,o=await i.Info({subreddits:[],thingIds:[s]},t);if(!o.data?.children?.[0]?.data)throw new Error("not found");return new W(o.data.children[0].data,t)}static getComments(e,t){var a;let{postId:i,commentId:s,...o}=e;return y(a=W,un,Cl).call(a,{postId:fe(i),commentId:s?Zr(s):void 0,...o},t)}static async edit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:s}=e,o;"richtext"in e&&(o=Ui(e.richtext));let a=await i.EditUserText({thingId:s,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 g(c),new W(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:s}=e,o;"richtext"in e&&(o=Ui(e.richtext));let a=await i.Comment({thingId:s,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 g(c),new W(c,t)}static async distinguish(e,t,i,s){let c=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:i?"admin":"yes",sticky:t},s)).json?.data?.things?.[0]?.data;return g(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 g(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(s){let o=await i.UserWhere({username:e.username,where:"comments",...s},t);return g(o.data,"Failed to get comments for user"),{children:o.data.children?.map(c=>new W(c.data,t))||[],before:o.data.before,after:o.data.after}}})}};Fr=new WeakMap,bo=new WeakMap,on=new WeakMap,an=new WeakMap,ko=new WeakMap,So=new WeakMap,dn=new WeakMap,Po=new WeakMap,Co=new WeakMap,ln=new WeakMap,Zt=new WeakMap,wo=new WeakMap,Io=new WeakMap,Mr=new WeakMap,Yt=new WeakMap,Qt=new WeakMap,gt=new WeakMap,Lr=new WeakMap,ht=new WeakMap,xo=new WeakMap,Ao=new WeakMap,To=new WeakMap,Eo=new WeakMap,Ro=new WeakMap,Oo=new WeakMap,Fo=new WeakMap,Y=new WeakMap,un=new WeakSet,Cl=function(e,t,i=0){return new H({limit:e.limit,pageSize:e.pageSize,fetch:async s=>{var k,b;let o=s.limit,a=u.redditAPIPlugins.Listings,c=u.redditAPIPlugins.LinksAndComments,p=e.commentId;if(s.more)if(s.more.children.length){let C=s.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:F}=y(k=W,cn,wl).call(k,x.json.data.things,e.postId,e,t);return{children:F,more:C.children.length?C:void 0}}else p=s.more.parentId,i=i+s.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),y(b=W,cn,wl).call(b,v,p??e.postId,e,t,i)}})},cn=new WeakSet,wl=function(e,t,i,s,o=0){var f,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 k=m.data.parentId?p[m.data.parentId]:void 0;if(m.kind==="t1"){if(m.data.name===t)continue;let b=new W(m.data,s);if(p[b.id]=b,l(b,ln,y(f=W,un,Cl).call(f,{...i,postId:b.postId,commentId:b.id},s,o)),"replyList"in m.data&&m.data.replyList?.data){let{children:C,more:w}=y(v=W,cn,wl).call(v,m.data.replyList.data.children,b.id,i,s,o);C.length&&b.replies.children.push(...C),w&&b.replies.setMore(w)}b.replies.preventInitialFetch(),k?k.replies.children.push(b):a.push(b)}else if(m.kind==="more"&&m.data.parentId&&m.data.depth!=null){let b={parentId:jc(m.data.parentId)?Zr(m.data.parentId):fe(m.data.parentId),children:m.data.children??[],depth:m.data.depth};k?k.replies.setMore(b):b.parentId===t&&(c=b)}}return{children:a,more:c}},d(W,un),d(W,cn);var X=W;function Td(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 s=await t.AboutLog({subreddit:r.subredditName,mod:r.moderatorUsernames?r.moderatorUsernames.join(","):void 0,type:r.type,...i},e);return JO(s)}})}function JO(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:s,modId36:o,createdUtc:a,subreddit:c,subredditNamePrefixed:p,action:f,srId36:v,description:m,details:k,targetAuthor:b,targetBody:C,targetFullname:w,targetPermalink:x,targetTitle:F}=t.data;g(i,"ModAction from AboutLogResponse is missing id"),g(s,"ModAction from AboutLogResponse is missing mod"),g(o,"ModAction from AboutLogResponse is missing modId36"),g(a,"ModAction from AboutLogResponse is missing createdUtc"),g(c,"ModAction from AboutLogResponse is missing subreddit"),g(p,"ModAction from AboutLogResponse is missing subredditNamePrefixed"),g(f,"ModAction from AboutLogResponse is missing action"),g(v,"ModAction from AboutLogResponse is missing srId36");let ue=new Date(0);return ue.setUTCSeconds(a),{id:i,type:f,moderatorName:s,moderatorId:`t2_${o}`,createdAt:ue,subredditName:c,subredditId:`t5_${v}`,description:m,details:k,target:w?{id:w,author:b,body:C,permalink:x,title:F}:void 0}}),after:r.data.after,before:r.data.before}}var $O=(a=>(a.New="New",a.InProgress="InProgress",a.Archived="Archived",a.Appeals="Appeals",a.JoinRequests="JoinRequests",a.Filtered="Filtered",a))($O||{}),KO={0:"New",1:"InProgress",2:"Archived",3:"Appeals",4:"JoinRequests",5:"Filtered"},XO=(b=>(b.Highlighted="Highlighted",b.Unhighlighted="Unhighlighted",b.Archived="Archived",b.Unarchived="Unarchived",b.ReportedToAdmins="ReportedToAdmins",b.Muted="Muted",b.Unmuted="Unmuted",b.Banned="Banned",b.Unbanned="Unbanned",b.Approved="Approved",b.Disapproved="Disapproved",b.Filtered="Filtered",b.Unfiltered="Unfiltered",b))(XO||{}),ZO={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,Z,se,Il,MS,xl,LS,Ed=class{constructor(e){d(this,Z);d(this,Il);d(this,xl);d(this,G,void 0);l(this,G,e)}async bulkReadConversations(e,t){let i=u.redditAPIPlugins.NewModmail,{conversationIds:s}=await i.BulkReadConversations({entity:e.join(","),state:t},n(this,G));return s}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},n(this,G)),s={};for(let o in i.conversations)s[o]=y(this,Z,se).call(this,{protoConversation:i.conversations[o],protoMessages:i.messages,protoModActions:{}});return{conversations:s,viewerId:i.viewerId}}async getConversation(e){let i=await u.redditAPIPlugins.NewModmail.GetConversation({...e,markRead:!!e.markRead},n(this,G));return{participantSubreddit:i.participantSubreddit,conversation:y(this,Z,se).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({},n(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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:{}}),user:i.user}}async highlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.HighlightConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unhighlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnhighlightConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async archiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ArchiveConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unarchiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnarchiveConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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(",")},n(this,G))}async unreadConversations(e){await u.redditAPIPlugins.NewModmail.Unread({conversationIds:e.join(",")},n(this,G))}async approveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ApproveConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async getUnreadCount(){return await u.redditAPIPlugins.NewModmail.UnreadCount({},n(this,G))}async getUserConversations(e){return await u.redditAPIPlugins.NewModmail.UserConversations({conversationId:e},n(this,G))}};G=new WeakMap,Z=new WeakSet,se=function({protoConversation:e,protoMessages:t,protoModActions:i}){return{...e,state:KO[e.state],messages:y(this,Il,MS).call(this,e,t),modActions:y(this,xl,LS).call(this,e,i)}},Il=new WeakSet,MS=function(e,t){let i={},s=e.objIds.filter(o=>o.key==="messages").map(({id:o})=>o);for(let o of s){let a=t[o];a&&(i[o]=a)}return i},xl=new WeakSet,LS=function(e,t){let i={},s=e.objIds.filter(o=>o.key==="modActions").map(({id:o})=>o);for(let o of s){let a=t[o];a&&(i[o]={...a,actionType:ZO[a.actionTypeId]})}return i};var mn,pn,Al,Mo,Lo,Uo,Bo,ep=class ep{constructor(e,t){d(this,mn,void 0);d(this,pn,void 0);d(this,Al,void 0);d(this,Mo,void 0);d(this,Lo,void 0);d(this,Uo,void 0);d(this,Bo,void 0);if(J(this),g(e.id,"PrivateMessage: Invalid data, no id"),g(e.name,"PrivateMessage: Invalid data, no name"),g(e.created,"PrivateMessage: Invalid data, no created date"),l(this,mn,ge(e.name)),e.author!=null)l(this,pn,{type:"user",username:e.author,id:e.authorFullname?te(e.authorFullname):void 0});else if(e.subreddit!=null)l(this,pn,{type:"subreddit",name:e.subreddit,id:e.subredditId?Re(e.subredditId):void 0});else throw new Error("PrivateMessage: Invalid data, no author or subreddit");l(this,Mo,e.body??""),l(this,Lo,e.bodyHtml??"");let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,Uo,i),l(this,Al,e.parentId?ge(e.parentId):void 0),l(this,Bo,t)}static async getMessages(e,t){let i=u.redditAPIPlugins.PrivateMessages;return new H({...e,fetch:async s=>{let o=await i.MessageWhere({...s,where:e.type??"inbox"},t);return{after:o.data?.after,before:o.data?.before,children:o.data?.children?.map(a=>new ep(a.data,t)).filter(Boolean)||[]}}})}static async send({to:e,subject:t,text:i},s){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,subject:t,text:i,fromSr:""},s)}static async sendAsSubreddit({to:e,fromSubredditName:t,subject:i,text:s},o){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,fromSr:t,subject:i,text:s},o)}static async markAllAsRead(e){await u.redditAPIPlugins.PrivateMessages.ReadAllMessages({filterTypes:""},e)}get id(){return n(this,mn)}get from(){return n(this,pn)}get body(){return n(this,Mo)}get bodyHtml(){return n(this,Lo)}get created(){return n(this,Uo)}async markAsRead(){await u.redditAPIPlugins.PrivateMessages.ReadMessage({id:n(this,mn)},n(this,Bo))}};mn=new WeakMap,pn=new WeakMap,Al=new WeakMap,Mo=new WeakMap,Lo=new WeakMap,Uo=new WeakMap,Bo=new WeakMap;var ur=ep;var xy=(o=>(o.Reports="reports",o.Spam="spam",o.Modqueue="modqueue",o.Unmoderated="unmoderated",o.Edited="edited",o))(xy||{}),fn,A,Do,_o,No,qo,jo,Ho,Wo,Go,Vo,gn,T,it=class it{constructor(e,t){d(this,fn,void 0);d(this,A,void 0);d(this,Do,void 0);d(this,_o,void 0);d(this,No,void 0);d(this,qo,void 0);d(this,jo,void 0);d(this,Ho,void 0);d(this,Wo,void 0);d(this,Go,void 0);d(this,Vo,void 0);d(this,gn,void 0);d(this,T,void 0);J(this),g(e.id,"Subreddit id is missing or undefined"),g(e.displayName,"Subreddit name is missing or undefined"),l(this,fn,Re(`t5_${e.id}`)),l(this,A,e.displayName),g(e.createdUtc,"Subreddit is missing created date");let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,Do,i),l(this,_o,YO(e.subredditType)),l(this,No,e.title),l(this,qo,e.description),g(e.lang,"Subreddit is missing language"),l(this,jo,e.lang),l(this,Ho,e.subscribers??0),l(this,Wo,e.activeUserCount??0),l(this,Go,e.over18??!1),l(this,gn,e.url??""),l(this,Vo,{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:QO(e.submissionType),allowedMediaInComments:(e.allowedMediaInComments??[]).map(eF),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(n(this,gn),"https://www.reddit.com").toString()}),l(this,T,t)}get id(){return n(this,fn)}get name(){return n(this,A)}get createdAt(){return n(this,Do)}get type(){return n(this,_o)}get title(){return n(this,No)}get description(){return n(this,qo)}get language(){return n(this,jo)}get numberOfSubscribers(){return n(this,Ho)}get numberOfActiveUsers(){return n(this,Wo)}get nsfw(){return n(this,Go)}get settings(){return n(this,Vo)}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 n(this,gn)}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:n(this,A)};return V.submit(t,n(this,T))}getControversialPosts(e={}){if(!n(this,A))throw new Error("subreddit missing displayName - it might not have been fetched");return V.getControversialPosts({...e,subredditName:n(this,A)},n(this,T))}getTopPosts(e={}){if(!n(this,A))throw new Error("subreddit missing displayName - it might not have been fetched");return V.getTopPosts({...e,subredditName:n(this,A)},n(this,T))}getApprovedUsers(e={}){return I.getSubredditUsersByType({type:"contributors",subredditName:n(this,A),...e},n(this,T))}approveUser(e){return I.createRelationship({username:e,subredditName:n(this,A),type:"contributor"},n(this,T))}removeUser(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"contributor"},n(this,T))}getWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikicontributors",subredditName:n(this,A),...e},n(this,T))}addWikiContributor(e){return I.createRelationship({username:e,subredditName:n(this,A),type:"wikicontributor"},n(this,T))}removeWikiContributor(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"wikicontributor"},n(this,T))}getBannedUsers(e={}){return I.getSubredditUsersByType({type:"banned",subredditName:n(this,A),...e},n(this,T))}banUser(e){return I.createRelationship({username:e.username,subredditName:n(this,A),type:"banned",banReason:e.reason,banMessage:e.message,note:e.note,duration:e.duration},n(this,T))}unbanUser(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"banned"},n(this,T))}getBannedWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikibanned",subredditName:n(this,A),...e},n(this,T))}banWikiContributor(e){return I.createRelationship({username:e.username,subredditName:n(this,A),type:"wikibanned",banReason:e.reason,note:e.note,duration:e.duration},n(this,T))}unbanWikiContributor(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"wikibanned"},n(this,T))}getModerators(e={}){return I.getSubredditUsersByType({type:"moderators",subredditName:n(this,A),...e},n(this,T))}inviteModerator(e,t){return I.createRelationship({type:"moderator_invite",subredditName:n(this,A),username:e,permissions:t??[]},n(this,T))}revokeModeratorInvite(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"moderator_invite"},n(this,T))}removeModerator(e){return I.removeRelationship({type:"moderator",subredditName:n(this,A),username:e},n(this,T))}setModeratorPermissions(e,t){return I.setModeratorPermissions(e,n(this,A),t,n(this,T))}getMutedUsers(e={}){return I.getSubredditUsersByType({type:"muted",subredditName:n(this,A),...e},n(this,T))}muteUser(e,t){return I.createRelationship({username:e,subredditName:n(this,A),type:"muted",note:t},n(this,T))}unmuteUser(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"muted"},n(this,T))}getModerationLog(e){return Td({subredditName:n(this,A),...e},n(this,T))}getUserFlairTemplates(){return ae.getUserFlairTemplates(n(this,A),n(this,T))}getPostFlairTemplates(){return ae.getPostFlairTemplates(n(this,A),n(this,T))}createPostFlairTemplate(e){return ae.createPostFlairTemplate({subredditName:n(this,A),...e},n(this,T))}createUserFlairTemplate(e){return ae.createUserFlairTemplate({subredditName:n(this,A),...e},n(this,T))}async getUserFlair(e){if(e?.usernames!==void 0)return{users:await Promise.all(e.usernames.map(async i=>{let s=await Le.getUserFlairBySubreddit({subreddit:n(this,A),name:i},n(this,T));return zs(s.users[0])}))};{let t=await Le.getUserFlairBySubreddit({...e,subreddit:n(this,A)},n(this,T));return{next:t.next,prev:t.prev,users:t.users.map(i=>zs(i))}}}getModQueue(e={type:"all"}){return it.aboutLocation({...e,location:"modqueue",subreddit:n(this,A)},n(this,T))}getReports(e={type:"all"}){return it.aboutLocation({...e,location:"reports",subreddit:n(this,A)},n(this,T))}getSpam(e={type:"all"}){return it.aboutLocation({...e,location:"spam",subreddit:n(this,A)},n(this,T))}getUnmoderated(e={type:"all"}){return it.aboutLocation({...e,location:"unmoderated",subreddit:n(this,A)},n(this,T))}getEdited(e={type:"all"}){return it.aboutLocation({...e,location:"edited",subreddit:n(this,A)},n(this,T))}static aboutLocation(e,t){let i=u.redditAPIPlugins.Moderation,s;switch(e.type){case"post":s="links";break;case"comment":s="comments";break;default:s=void 0}return new H({...e,fetch:async o=>{let a=await i.AboutLocation({...o,...e,only:s},t);return US(a,t)}})}getCommentsAndPostsByIds(e){let t=u.redditAPIPlugins.LinksAndComments;return new H({fetch:async()=>{let i=await t.Info({thingIds:e,subreddits:[n(this,fn)]},n(this,T));return US(i,n(this,T))}})}static async addRemovalReason(e,t,i,s){return(await u.redditAPIPlugins.Subreddits.SubredditAddRemovalReason({title:t,message:i,subreddit:e},s)).id}static async getRemovalReasons(e,t){let s=await u.redditAPIPlugins.Subreddits.SubredditGetRemovalReasons({subreddit:e},t);return s.order.map(o=>({...s.data[o]}))}static async getFromMetadata(e){g(e);let t=e?.[B.Subreddit]?.values[0];return g(t),it.getById(Re(t),e)}static async getById(e,t){let o=(await u.redditAPIPlugins.LinksAndComments.Info({thingIds:[e],subreddits:[]},t)).data?.children[0]?.data?.displayName;return g(o),it.getByName(o,t)}static async getByName(e,t){let s=await u.redditAPIPlugins.Subreddits.SubredditAbout({subreddit:e},t);if(!s?.data)throw new Error("not found");return new it(s.data,t)}};fn=new WeakMap,A=new WeakMap,Do=new WeakMap,_o=new WeakMap,No=new WeakMap,qo=new WeakMap,jo=new WeakMap,Ho=new WeakMap,Wo=new WeakMap,Go=new WeakMap,Vo=new WeakMap,gn=new WeakMap,T=new WeakMap;var he=it;async function Ay(r,e){let t="GetSubredditLeaderboard",i="18ead70c46b6446d45ecd8b679b16d9a929a933d6ef25d8262a459cb18b72848",o=(await jt.query(t,i,{id:r},e)).data?.subredditInfoById?.leaderboard;if(!o)throw new Error("subreddit leaderboard not found");if(!o.summary)throw new Error("subreddit leaderboard summary not found");return{id:o.id,summary:o.summary}}function YO(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 QO(r){if(r==="any"||r==="link"||r==="self")return r;throw new Error(`invalid allowed post type: ${r}`)}function eF(r){if(r==="animated"||r==="giphy"||r==="static"||r==="expression")return r;throw new Error(`invalid comment media type: ${r}`)}function US(r,e){let i=(r.data?.children??[]).map(a=>{let c=s(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 s(a){try{return new V(a.data,e)}catch{return null}}function o(a){try{return new X(a.data,e)}catch{return null}}}async function Ty(r,e){return BS("GetVaultContactByAddress","3e2f7966a5c120e64fd2795d06a46595c52d988185be98d3ed71c3f81ae80d2e",{provider:"ethereum",address:r},e)}async function Ey(r,e){return BS("GetVaultContactByUserId","a854ddc19d0e22c4f36ed917fdbd568f299f3571427e393aee5e2972080fffe9",{provider:"ethereum",userId:r},e)}async function BS(r,e,t,i){let o=(await jt.query(r,e,t,i))?.data?.vault?.contact;return{provider:o?.provider,userId:te(o?.userId),address:o?.address,createdAt:o?.createdAt,isActive:o?.isActive}}import{CommunityListWidget_CommunityData as tF,GetWidgetsResponse_WidgetItem as le}from"@devvit/protos";var zo,Jo,$o,Ko,rp=class rp{constructor(e,t,i){d(this,zo,void 0);d(this,Jo,void 0);d(this,$o,void 0);d(this,Ko,void 0);J(this),l(this,zo,e.id),l(this,Jo,e.shortName),l(this,$o,t),l(this,Ko,i)}get id(){return n(this,zo)}get name(){return n(this,Jo)}get subredditName(){return n(this,$o)}toJSON(){return{id:this.id,name:this.name,subredditName:this.subredditName}}delete(){return rp.delete(this.subredditName,this.id,n(this,Ko))}static async getWidgets(e,t){let s=await u.redditAPIPlugins.Widgets.GetWidgets({subreddit:e},t);g(s.layout,"Failed to load widgets for subreddit");let o=s.items,a=[];for(let c of s.layout.sidebar?.order??[]){let p=o[c];switch(p?.kind){case"image":a.push(new Tl(p,e,t));break;case"calendar":a.push(new El(p,e,t));break;case"textarea":a.push(new Rl(p,e,t));break;case"button":a.push(new Ol(p,e,t));break;case"community-list":a.push(new Fl(p,e,t));break;case"post-flair":a.push(new Ml(p,e,t));break;case"custom":a.push(new Ll(p,e,t));break;case"subreddit-rules":{let f=await u.redditAPIPlugins.Subreddits.SubredditAboutRules({subreddit:e},t);a.push(new tp(f,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 Tl.create(e,t);case"calendar":return El.create(e,t);case"textarea":return Rl.create(e,t);case"button":return Ol.create(e,t);case"community-list":return Fl.create(e,t);case"post-flair":return Ml.create(e,t);case"custom":return Ll.create(e,t);default:throw new Error("Unknown widget type")}}};zo=new WeakMap,Jo=new WeakMap,$o=new WeakMap,Ko=new WeakMap;var re=rp,Xo,Ul=class Ul extends re{constructor(t,i,s){super(t,i,s);d(this,Xo,void 0);l(this,Xo,t.data.map(o=>(g(o.url,"Image widget data is missing url"),g(o.height,"Image widget data is missing height"),g(o.width,"Image widget data is missing width"),g(o.linkUrl,"Image widget data is missing linkUrl"),{url:o.url,height:o.height,width:o.width,linkUrl:o.linkUrl})))}get images(){return n(this,Xo)}toJSON(){return{...super.toJSON(),images:this.images}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddImageWidget(t,i);return new Ul(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateImageWidget(t,i);return new Ul(le.fromJSON(o),t.subreddit,i)}};Xo=new WeakMap;var Tl=Ul,Zo,Yo,Qo,Bl=class Bl extends re{constructor(t,i,s){super(t,i,s);d(this,Zo,void 0);d(this,Yo,void 0);d(this,Qo,void 0);g(t.googleCalendarId,"Calendar widget data is missing googleCalendarId"),g(t.configuration,"Calendar widget data is missing configuration"),g(t.styles,"Calendar widget data is missing styles"),l(this,Zo,t.googleCalendarId),l(this,Yo,t.configuration),l(this,Qo,t.styles)}get googleCalendarId(){return n(this,Zo)}get configuration(){return n(this,Yo)}get styles(){return n(this,Qo)}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 Bl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCalendarWidget(t,i);return new Bl(le.fromJSON(o),t.subreddit,i)}};Zo=new WeakMap,Yo=new WeakMap,Qo=new WeakMap;var El=Bl,ea,ta,Dl=class Dl extends re{constructor(t,i,s){super(t,i,s);d(this,ea,void 0);d(this,ta,void 0);g(t.text,"Textarea widget data is missing text"),g(t.styles,"Textarea widget data is missing styles"),l(this,ea,t.text),l(this,ta,t.styles)}get text(){return n(this,ea)}get styles(){return n(this,ta)}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 Dl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateTextAreaWidget(t,i);return new Dl(le.fromJSON(o),t.subreddit,i)}};ea=new WeakMap,ta=new WeakMap;var Rl=Dl,ra,ia,na,_l=class _l extends re{constructor(t,i,s){super(t,i,s);d(this,ra,void 0);d(this,ia,void 0);d(this,na,void 0);g(t.styles,"Button widget data is missing styles"),l(this,ra,t.buttons),l(this,ia,t.description??""),l(this,na,t.styles)}get buttons(){return n(this,ra)}get description(){return n(this,ia)}get styles(){return n(this,na)}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 _l(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateButtonWidget(t,i);return new _l(le.fromJSON(o),t.subreddit,i)}};ra=new WeakMap,ia=new WeakMap,na=new WeakMap;var Ol=_l,sa,oa,Nl=class Nl extends re{constructor(t,i,s){super(t,i,s);d(this,sa,void 0);d(this,oa,void 0);l(this,sa,t.data.map(o=>tF.fromJSON(o))),g(t.styles,"Community list widget data is missing styles"),l(this,oa,t.styles)}get communities(){return n(this,sa)}get styles(){return n(this,oa)}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 Nl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCommunityListWidget(t,i);return new Nl(le.fromJSON(o),t.subreddit,i)}};sa=new WeakMap,oa=new WeakMap;var Fl=Nl,aa,da,la,ql=class ql extends re{constructor(t,i,s){super(t,i,s);d(this,aa,void 0);d(this,da,void 0);d(this,la,void 0);if(g(t.styles,"Post flair widget data is missing styles"),l(this,aa,t.styles),l(this,da,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");l(this,la,t.display)}get styles(){return n(this,aa)}get templates(){return n(this,da)}get display(){return n(this,la)}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 ql(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdatePostFlairWidget(t,i);return new ql(le.fromJSON(o),t.subreddit,i)}};aa=new WeakMap,da=new WeakMap,la=new WeakMap;var Ml=ql,ua,ca,ma,pa,fa,jl=class jl extends re{constructor(t,i,s){super(t,i,s);d(this,ua,void 0);d(this,ca,void 0);d(this,ma,void 0);d(this,pa,void 0);d(this,fa,void 0);g(t.stylesheetUrl,"Custom widget data is missing stylesheetUrl"),g(t.height,"Custom widget data is missing height"),g(t.css,"Custom widget data is missing css"),l(this,ua,t.imageData??[]),l(this,ca,t.text??""),l(this,ma,t.stylesheetUrl),l(this,pa,t.height),l(this,fa,t.css)}get images(){return n(this,ua)}get text(){return n(this,ca)}get stylesheetUrl(){return n(this,ma)}get height(){return n(this,pa)}get css(){return n(this,fa)}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 jl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCustomWidget(t,i);return new jl(le.fromJSON(o),t.subreddit,i)}};ua=new WeakMap,ca=new WeakMap,ma=new WeakMap,pa=new WeakMap,fa=new WeakMap;var Ll=jl,ga,tp=class extends re{constructor(t,i,s,o){super(i,s,o);d(this,ga,void 0);let a=t.rules.map(({description:c,priority:p,shortName:f,violationReason:v})=>(g(c,"Subreddit rule is missing description"),g(p,"Subreddit rule is missing priority"),g(f,"Subreddit rule is missing shortName"),g(v,"Subreddit rule is missing violationReason"),{description:c,priority:p,shortName:f,violationReason:v}));l(this,ga,a)}get rules(){return n(this,ga)}toJSON(){return{...super.toJSON(),rules:this.rules}}};ga=new WeakMap;var rF=(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))(rF||{}),ke,Se,hn,vn,yn,bn,kn,Ke,qe=class qe{constructor(e,t,i,s){d(this,ke,void 0);d(this,Se,void 0);d(this,hn,void 0);d(this,vn,void 0);d(this,yn,void 0);d(this,bn,void 0);d(this,kn,void 0);d(this,Ke,void 0);J(this),l(this,ke,e),l(this,Se,t),l(this,hn,i.contentMd),l(this,vn,i.revisionId),l(this,yn,new Date(i.revisionDate)),l(this,bn,i.reason??""),g(i.revisionBy?.data,"Wiki page author details are missing"),l(this,kn,new I(i.revisionBy.data,s)),l(this,Ke,s)}get name(){return n(this,ke)}get subredditName(){return n(this,Se)}get content(){return n(this,hn)}get revisionId(){return n(this,vn)}get revisionDate(){return n(this,yn)}get revisionReason(){return n(this,bn)}get revisionAuthor(){return n(this,kn)}toJSON(){return{name:n(this,ke),subredditName:n(this,Se),content:n(this,hn),revisionId:n(this,vn),revisionDate:n(this,yn),revisionReason:n(this,bn),revisionAuthor:n(this,kn).toJSON()}}async update(e,t){return qe.updatePage({subredditName:n(this,Se),page:n(this,ke),content:e,reason:t},n(this,Ke))}async getRevisions(e){return qe.getPageRevisions({subredditName:n(this,Se),page:n(this,ke),...e},n(this,Ke))}async revertTo(e){return qe.revertPage(n(this,Se),n(this,ke),e,n(this,Ke))}async getSettings(){return qe.getPageSettings(n(this,Se),n(this,ke),n(this,Ke))}async updateSettings(e){return qe.updatePageSettings({subredditName:n(this,Se),page:n(this,ke),listed:e.listed,permLevel:e.permLevel},n(this,Ke))}async addEditor(e){return qe.addEditor(n(this,Se),n(this,ke),e,n(this,Ke))}async removeEditor(e){return qe.removeEditor(n(this,Se),n(this,ke),e,n(this,Ke))}static async getPage(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPage({subreddit:e,page:t},i);return g(o.data,"Failed to get wiki page"),new qe(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 qe.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),qe.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(s){let o=await i.GetWikiPageRevisions({subreddit:e.subredditName,page:e.page,limit:s.limit,after:s.after,before:s.before},t);return iF(o,t)}})}static async revertPage(e,t,i,s){await u.redditAPIPlugins.Wiki.RevertWikiPage({subreddit:e,page:t,revision:i},s)}static async getPageSettings(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPageSettings({subreddit:e,page:t},i);return g(o.data,"Failed to get wiki page settings"),new Hl(o.data,i)}static async updatePageSettings(e,t){let s=await u.redditAPIPlugins.Wiki.UpdateWikiPageSettings({subreddit:e.subredditName,page:e.page,listed:e.listed?"on":"",permlevel:e.permLevel},t);return g(s.data,"Failed to update wiki page settings"),new Hl(s.data,t)}static async addEditor(e,t,i,s){await u.redditAPIPlugins.Wiki.AllowEditor({act:"add",subreddit:e,page:t,username:i},s)}static async removeEditor(e,t,i,s){await u.redditAPIPlugins.Wiki.AllowEditor({act:"del",subreddit:e,page:t,username:i},s)}};ke=new WeakMap,Se=new WeakMap,hn=new WeakMap,vn=new WeakMap,yn=new WeakMap,bn=new WeakMap,kn=new WeakMap,Ke=new WeakMap;var ve=qe,Sn,Pn,Cn,wn,In,xn,ip=class{constructor(e,t){d(this,Sn,void 0);d(this,Pn,void 0);d(this,Cn,void 0);d(this,wn,void 0);d(this,In,void 0);d(this,xn,void 0);l(this,Sn,e.id),l(this,Pn,e.page),l(this,Cn,new Date(e.timestamp)),g(e.author?.data,"Wiki page revision author details are missing"),l(this,wn,new I(e.author.data,t)),l(this,In,e.reason??""),l(this,xn,e.revisionHidden??!1)}get id(){return n(this,Sn)}get page(){return n(this,Pn)}get date(){return n(this,Cn)}get author(){return n(this,wn)}get reason(){return n(this,In)}get hidden(){return n(this,xn)}toJSON(){return{id:n(this,Sn),page:n(this,Pn),date:n(this,Cn),author:n(this,wn).toJSON(),reason:n(this,In),hidden:n(this,xn)}}};Sn=new WeakMap,Pn=new WeakMap,Cn=new WeakMap,wn=new WeakMap,In=new WeakMap,xn=new WeakMap;var An,Tn,En,Hl=class{constructor(e,t){d(this,An,void 0);d(this,Tn,void 0);d(this,En,void 0);l(this,An,e.listed),l(this,Tn,e.permLevel),l(this,En,e.editors.map(i=>(g(i.data,"Wiki page editor details are missing"),new I(i.data,t))))}get listed(){return n(this,An)}get permLevel(){return n(this,Tn)}get editors(){return n(this,En)}toJSON(){return{listed:n(this,An),permLevel:n(this,Tn),editors:n(this,En).map(e=>e.toJSON())}}};An=new WeakMap,Tn=new WeakMap,En=new WeakMap;function iF(r,e){return g(r.data?.children,"Wiki page revision listing is missing children"),{children:r.data.children.map(i=>new ip(i,e)),before:r.data.before,after:r.data.after}}var nF=(t=>(t.Gallery="GALLERY",t.Timeline="TIMELINE",t))(nF||{});function sF(r){return r==="GALLERY"?"GALLERY":"TIMELINE"}var je,Pe,va,Rn,On,ya,ba,ka,Sa,vt,Pa,Ca,Fn,ha=class ha{constructor(e,t){d(this,je,void 0);d(this,Pe,void 0);d(this,va,void 0);d(this,Rn,void 0);d(this,On,void 0);d(this,ya,void 0);d(this,ba,void 0);d(this,ka,void 0);d(this,Sa,void 0);d(this,vt,void 0);d(this,Pa,void 0);d(this,Ca,void 0);d(this,Fn,void 0);g(e.collectionId,"Collection Id is missing or undefined"),g(e.subredditId,"Subreddit Id is missing or undefined"),g(e.title,"Collection title is missing or undefined"),g(e.authorId,"Collection author's id is missing or undefined"),g(e.authorName,"Collection author's id is missing or undefined"),g(e.createdAtUtc,"Collection create timestamp is missing"),g(e.lastUpdateUtc,"Collection last updated timestamp is missing"),l(this,je,t),l(this,Pe,e.collectionId),l(this,va,e.subredditId),l(this,Rn,e.title),l(this,On,e.description||""),l(this,ya,e.authorId),l(this,ba,e.authorName),l(this,ka,e.permalink),l(this,Sa,e.primaryLinkId),l(this,vt,e.linkIds||[]),l(this,Fn,sF(e.displayLayout)),l(this,Pa,e.createdAtUtc),l(this,Ca,e.lastUpdateUtc),J(this)}get id(){return n(this,Pe)}get subredditId(){return n(this,va)}get title(){return n(this,Rn)}get description(){return n(this,On)}get authorId(){return n(this,ya)}get authorName(){return n(this,ba)}get permalink(){return n(this,ka)}get primaryLinkId(){return n(this,Sa)}get linkIds(){return n(this,vt)}get createdAtUtc(){return n(this,Pa)}get lastUpdateUtc(){return n(this,Ca)}get displayLayout(){return n(this,Fn)}static async getCollectionById(e,t){let s=await u.redditAPIPlugins.PostCollections.Collection(e,t);return new ha(s,t)}static async create(e,t){let s=await u.redditAPIPlugins.PostCollections.Create({srFullname:e.subredditId,title:e.title,description:e.description,displayLayout:e.displayLayout},t);return new ha(s,t)}static async getCollectionsForSubreddit(e,t){return(await u.redditapiv2Plugin.GetSubredditCollections({srFullname:e.subredditId},t)).collections.map(s=>new ha(s,t))}async addPost(e){await u.redditAPIPlugins.PostCollections.AddPost({collectionId:n(this,Pe),linkFullname:e},n(this,je)),n(this,vt).push(e)}async removePost(e){await u.redditAPIPlugins.PostCollections.RemovePost({collectionId:n(this,Pe),linkFullname:e},n(this,je)),l(this,vt,n(this,vt).filter(i=>i!==e))}async delete(){await u.redditAPIPlugins.PostCollections.Delete({collectionId:n(this,Pe)},n(this,je))}async follow(e){await u.redditAPIPlugins.PostCollections.Follow({collectionId:n(this,Pe),follow:e},n(this,je))}async reorder(e){await u.redditAPIPlugins.PostCollections.Reorder({collectionId:n(this,Pe),linkIds:e.join(",")},n(this,je)),l(this,vt,e)}async updateTitle(e){await u.redditAPIPlugins.PostCollections.UpdateTitle({collectionId:n(this,Pe),title:e},n(this,je)),l(this,Rn,e)}async updateDescription(e){await u.redditAPIPlugins.PostCollections.UpdateDescription({collectionId:n(this,Pe),description:e},n(this,je)),l(this,On,e)}async updateLayout(e){await u.redditAPIPlugins.PostCollections.UpdateDisplayLayout({collectionId:n(this,Pe),displayLayout:e},n(this,je)),l(this,Fn,e)}};je=new WeakMap,Pe=new WeakMap,va=new WeakMap,Rn=new WeakMap,On=new WeakMap,ya=new WeakMap,ba=new WeakMap,ka=new WeakMap,Sa=new WeakMap,vt=new WeakMap,Pa=new WeakMap,Ca=new WeakMap,Fn=new WeakMap;var ai=ha;var oF=["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"],aF=["border-image","border-image-source","behavior","expression","list-style-image","cursor","content"],dF=["onload","onerror","onclick","onmouseover"];function lF(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 DS(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*(${oF.join("|")})\\b`,"gi"),t=new RegExp(`(${aF.join("|")})\\s*:\\s*url\\s*\\((['"]?)(.*?)\\2\\)`,"gi"),i=new RegExp(`(${dF.join("|")})\\s*(=\\s*(['"]?)(.*?)\\3)?`,"gi");r=r.trim().replace(/\s+/g," "),r=lF(r);let s=r.match(e)||[],o=r.match(t)||[],a=r.match(i)||[],c=!1;return s.length>0&&(c=!0,console.warn(`Disallowed elements detected in SVG: ${s.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 Jj(r,...e){let t="";return r.forEach((i,s)=>{t+=i;let o=e[s];o!==void 0&&(t+=`${o}`)}),t=DS(t),t===void 0?"":`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(t)}`}var _S="ServerCallRequired";var NS=Br(Xd(),1);var nt,yt,wa,Mn,Ia,Ur,np=class{constructor(e,t,i){d(this,nt,void 0);d(this,yt,void 0);d(this,wa,void 0);d(this,Mn,void 0);d(this,Ia,void 0);d(this,Ur,void 0);l(this,nt,!!i.context.devvitContext.debug.useAsync),n(this,nt)&&console.debug("[useAsync] v1",t),this.state={data:null,load_state:"initial",error:null,depends:null},l(this,yt,i.hookId),l(this,wa,e),l(this,Mn,i.invalidate),l(this,Ia,i.context),l(this,Ur,t.depends??null),(t.enabled??!0)||(this.state.load_state="disabled")}onStateLoaded(){if(this.state.load_state!=="disabled"&&(n(this,nt)&&console.debug("[useAsync] async onLoad ",n(this,yt),this.state),n(this,nt)&&console.debug("[useAsync] async onLoad have ",n(this,Ur),"and",this.state.depends),!(0,NS.default)(n(this,Ur),this.state.depends)||this.state.load_state==="initial")){this.state.load_state="loading",this.state.depends=n(this,Ur),n(this,Mn).call(this);let e={hook:n(this,yt),async:!0,asyncRequest:{requestId:n(this,yt)+"-"+JSON.stringify(this.state.depends)}};n(this,nt)&&console.debug("[useAsync] onLoad requeue"),n(this,Ia).addToRequeueEvents(e)}}async onUIEvent(e,t){if(e.asyncRequest){let i={requestId:e.asyncRequest.requestId};try{i.data={value:await n(this,wa).call(this)}}catch(o){if(o instanceof Error){if(o.message===_S)throw o;i.error={message:o.message,details:o.stack??""}}else i.error={message:"Unknown error",details:String(o)}}let s={asyncResponse:i,hook:n(this,yt)};n(this,nt)&&console.debug("[useAsync] onReq requeue"),t.addToRequeueEvents(s)}else if(e.asyncResponse){let i=n(this,yt)+"-"+JSON.stringify(this.state.depends);e.asyncResponse.requestId===i?(this.state={...this.state,data:e.asyncResponse.data?.value,error:e.asyncResponse.error??null,load_state:e.asyncResponse.error?"error":"loaded"},n(this,Mn).call(this)):n(this,nt)&&console.debug("[useAsync] onResp skip, stale event")}else throw new Error("Unknown event type")}};nt=new WeakMap,yt=new WeakMap,wa=new WeakMap,Mn=new WeakMap,Ia=new WeakMap,Ur=new WeakMap;function uF(r,e={}){let t=De({namespace:"useAsync"},i=>new np(r,e,i));return{data:t.state.data,error:t.state.error,loading:t.state.load_state==="loading"}}export{OL as ALL_ICON_NAMES,xy as AboutLocations,Ol as ButtonWidget,El as CalendarWidget,nF as CollectionDisplayLayout,X as Comment,Fl as CommunityListWidget,Ll as CustomWidget,u as Devvit,Le as Flair,ae as FlairTemplate,MO as FlairType,Ct as Hook,Tl as ImageWidget,H as Listing,XO as ModMailActionType,$O as ModMailConversationState,Ed as ModMailService,Me as ModNote,V as Post,ai as PostCollection,Ml as PostFlairWidget,ur as PrivateMessage,Hs as RichTextBuilder,Hc as SettingScope,he as Subreddit,tp as SubredditRulesWidget,Rl as TextAreaWidget,I as User,re as Widget,ve as WikiPage,rF as WikiPagePermissionLevel,ip as WikiPageRevision,Hl as WikiPageSettings,zs as convertUserFlairProtoToAPI,Td as getModerationLog,Ay as getSubredditLeaderboard,Ty as getVaultByAddress,Ey as getVaultByUserId,Jj as svg,uF as useAsync,bO as useAsyncState,Om as useChannel,Am as useForm,Lm as useInterval,Um as useState};
5
+ `))}static async getSnoovatarUrl(e,t){let i="GetSnoovatarUrlByName",s="c47fd42345af268616d2d8904b56856acdc05cf61d3650380f539ad7d596ac0c";return(await jt.query(i,s,{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(s){let o=await i.UserWhere({username:e.username,where:"overview",...s},t);return zO(o,t)}})}};co=new WeakMap,sn=new WeakMap,mo=new WeakMap,po=new WeakMap,fo=new WeakMap,go=new WeakMap,ho=new WeakMap,Xt=new WeakMap,vo=new WeakMap,yo=new WeakMap,ft=new WeakMap;var I=Or;function zO(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 V(i.data,e);if(i.kind==="t1")return new X(i.data,e);throw new Error(`Type ${i.kind} is not supported`)}),before:r.data.before,after:r.data.after}}async function JO(r,e,t){let i=u.redditAPIPlugins.Users;if(!r.data?.children)throw new Error("Listing response is missing children");let s=r.data.children.map(v=>(g(v.data?.id,"User id is still from listing data"),v.data.id)),o=100,a=[];for(let v=0;v<s.length;v+=o)a.push(s.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;g(m,"User id is missing from listing");let k=p[m];return g(k,"User data is missing from response"),new I({id:m,name:k.name,linkKarma:k.linkKarma,commentKarma:k.commentKarma,createdUtc:k.createdUtc,over18:k.profileOver18,snoovatarSize:[],modPermissions:{[e]:v.data?.modPermissions??[]}},t)}),before:r.data.before,after:r.data.after}}var Fr,bo,on,an,ko,So,dn,Po,Co,ln,Zt,wo,Io,Mr,Yt,Qt,gt,Lr,ht,xo,Ao,To,Eo,Ro,Oo,Fo,Y,un,Cl,cn,wl,W=class W{constructor(e,t){d(this,Fr,void 0);d(this,bo,void 0);d(this,on,void 0);d(this,an,void 0);d(this,ko,void 0);d(this,So,void 0);d(this,dn,void 0);d(this,Po,void 0);d(this,Co,void 0);d(this,ln,void 0);d(this,Zt,void 0);d(this,wo,void 0);d(this,Io,void 0);d(this,Mr,void 0);d(this,Yt,void 0);d(this,Qt,void 0);d(this,gt,void 0);d(this,Lr,void 0);d(this,ht,void 0);d(this,xo,void 0);d(this,Ao,void 0);d(this,To,void 0);d(this,Eo,void 0);d(this,Ro,void 0);d(this,Oo,void 0);d(this,Fo,void 0);d(this,Y,void 0);var s;J(this),g(e.id,"Comment id is null or undefined"),g(e.body,"Comment body is null or undefined"),g(e.createdUtc,"Comment is missing created date"),g(e.author,"Comment author is null or undefined"),g(e.parentId,"Comment parentId is null or undefined"),g(e.linkId,"Comment linkId is null or undefined"),g(e.permalink,"Comment permalink is null or undefined"),g(e.subreddit,"Comment is missing subreddit name"),g(e.subredditId,"Comment is missing subreddit id"),l(this,Fr,Zr(`t1_${e.id}`)),l(this,bo,e.authorFullname?te(e.authorFullname):void 0),l(this,on,e.author),l(this,an,e.body),l(this,Po,Re(e.subredditId)),l(this,Co,e.subreddit),l(this,So,jc(e.parentId)?Zr(e.parentId):fe(e.parentId)),l(this,dn,fe(e.linkId)),l(this,Mr,e.edited??!1),l(this,Yt,e.locked??!1),l(this,Qt,e.removed??!1),l(this,gt,e.stickied??!1),l(this,Zt,e.approved??!1),l(this,wo,e.approvedAtUtc??0),l(this,Io,e.bannedAtUtc??0),l(this,Lr,e.spam??!1),l(this,ht,e.distinguished),l(this,xo,e.numReports??0),l(this,Ao,e.collapsedBecauseCrowdControl??!1),l(this,To,e.score??0),l(this,Eo,e.permalink),l(this,Fo,new URL(e.permalink??"","https://www.reddit.com/").toString()),l(this,Ro,(e.modReports??[]).map(([o])=>o)),l(this,Oo,(e.userReports??[]).map(([o])=>o));let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,ko,i),l(this,ln,y(s=W,un,Cl).call(s,{postId:n(this,dn),commentId:n(this,Fr)},t)),l(this,Y,t)}get id(){return n(this,Fr)}get authorId(){return n(this,bo)}get authorName(){return n(this,on)}get subredditId(){return n(this,Po)}get subredditName(){return n(this,Co)}get body(){return n(this,an)}get createdAt(){return n(this,ko)}get parentId(){return n(this,So)}get postId(){return n(this,dn)}get replies(){return n(this,ln)}get distinguishedBy(){return n(this,ht)}get locked(){return n(this,Yt)}get stickied(){return n(this,gt)}get removed(){return n(this,Qt)}get approved(){return n(this,Zt)}get approvedAtUtc(){return n(this,wo)}get bannedAtUtc(){return n(this,Io)}get spam(){return n(this,Lr)}get edited(){return n(this,Mr)}get numReports(){return n(this,xo)}get collapsedBecauseCrowdControl(){return n(this,Ao)}get score(){return n(this,To)}get permalink(){return n(this,Eo)}get userReportReasons(){return n(this,Oo)}get modReportReasons(){return n(this,Ro)}get url(){return n(this,Fo)}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 n(this,Yt)}isApproved(){return n(this,Zt)}isRemoved(){return n(this,Qt)}isSpam(){return n(this,Lr)}isStickied(){return n(this,gt)}isDistinguished(){return!!n(this,ht)}isEdited(){return n(this,Mr)}async delete(){return W.delete(this.id,n(this,Y))}async edit(e){let t=await W.edit({id:this.id,...e},n(this,Y));return l(this,an,t.body),l(this,Mr,t.edited),this}async approve(){await W.approve(this.id,n(this,Y)),l(this,Zt,!0),l(this,Qt,!1)}async remove(e=!1){await W.remove(this.id,e,n(this,Y)),l(this,Qt,!0),l(this,Lr,e),l(this,Zt,!1)}async lock(){await W.lock(this.id,n(this,Y)),l(this,Yt,!0)}async unlock(){await W.unlock(this.id,n(this,Y)),l(this,Yt,!1)}async reply(e){return W.submit({id:this.id,...e},n(this,Y))}async getAuthor(){return I.getByUsername(n(this,on),n(this,Y))}async distinguish(e=!1){let{distinguishedBy:t,stickied:i}=await W.distinguish(this.id,e,!1,n(this,Y));l(this,ht,t),l(this,gt,i)}async distinguishAsAdmin(e=!1){let{distinguishedBy:t,stickied:i}=await W.distinguish(this.id,e,!0,n(this,Y));l(this,ht,t),l(this,gt,i)}async undistinguish(){let{distinguishedBy:e,stickied:t}=await W.undistinguish(this.id,n(this,Y));l(this,ht,e),l(this,gt,t)}addRemovalNote(e){return Me.addRemovalNote({itemIds:[n(this,Fr)],...e},n(this,Y))}static async getById(e,t){let i=u.redditAPIPlugins.LinksAndComments,s=Pt(e)?e:`t1_${e}`,o=await i.Info({subreddits:[],thingIds:[s]},t);if(!o.data?.children?.[0]?.data)throw new Error("not found");return new W(o.data.children[0].data,t)}static getComments(e,t){var a;let{postId:i,commentId:s,...o}=e;return y(a=W,un,Cl).call(a,{postId:fe(i),commentId:s?Zr(s):void 0,...o},t)}static async edit(e,t){let i=u.redditAPIPlugins.LinksAndComments,{id:s}=e,o;"richtext"in e&&(o=Ui(e.richtext));let a=await i.EditUserText({thingId:s,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 g(c),new W(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:s}=e,o;"richtext"in e&&(o=Ui(e.richtext));let a=await i.Comment({thingId:s,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 g(c),new W(c,t)}static async distinguish(e,t,i,s){let c=(await u.redditAPIPlugins.Moderation.Distinguish({id:e,how:i?"admin":"yes",sticky:t},s)).json?.data?.things?.[0]?.data;return g(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 g(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(s){let o=await i.UserWhere({username:e.username,where:"comments",...s},t);return g(o.data,"Failed to get comments for user"),{children:o.data.children?.map(c=>new W(c.data,t))||[],before:o.data.before,after:o.data.after}}})}};Fr=new WeakMap,bo=new WeakMap,on=new WeakMap,an=new WeakMap,ko=new WeakMap,So=new WeakMap,dn=new WeakMap,Po=new WeakMap,Co=new WeakMap,ln=new WeakMap,Zt=new WeakMap,wo=new WeakMap,Io=new WeakMap,Mr=new WeakMap,Yt=new WeakMap,Qt=new WeakMap,gt=new WeakMap,Lr=new WeakMap,ht=new WeakMap,xo=new WeakMap,Ao=new WeakMap,To=new WeakMap,Eo=new WeakMap,Ro=new WeakMap,Oo=new WeakMap,Fo=new WeakMap,Y=new WeakMap,un=new WeakSet,Cl=function(e,t,i=0){return new H({limit:e.limit,pageSize:e.pageSize,fetch:async s=>{var k,b;let o=s.limit,a=u.redditAPIPlugins.Listings,c=u.redditAPIPlugins.LinksAndComments,p=e.commentId;if(s.more)if(s.more.children.length){let C=s.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:F}=y(k=W,cn,wl).call(k,x.json.data.things,e.postId,e,t);return{children:F,more:C.children.length?C:void 0}}else p=s.more.parentId,i=i+s.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),y(b=W,cn,wl).call(b,v,p??e.postId,e,t,i)}})},cn=new WeakSet,wl=function(e,t,i,s,o=0){var f,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 k=m.data.parentId?p[m.data.parentId]:void 0;if(m.kind==="t1"){if(m.data.name===t)continue;let b=new W(m.data,s);if(p[b.id]=b,l(b,ln,y(f=W,un,Cl).call(f,{...i,postId:b.postId,commentId:b.id},s,o)),"replyList"in m.data&&m.data.replyList?.data){let{children:C,more:w}=y(v=W,cn,wl).call(v,m.data.replyList.data.children,b.id,i,s,o);C.length&&b.replies.children.push(...C),w&&b.replies.setMore(w)}b.replies.preventInitialFetch(),k?k.replies.children.push(b):a.push(b)}else if(m.kind==="more"&&m.data.parentId&&m.data.depth!=null){let b={parentId:jc(m.data.parentId)?Zr(m.data.parentId):fe(m.data.parentId),children:m.data.children??[],depth:m.data.depth};k?k.replies.setMore(b):b.parentId===t&&(c=b)}}return{children:a,more:c}},d(W,un),d(W,cn);var X=W;function Td(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 s=await t.AboutLog({subreddit:r.subredditName,mod:r.moderatorUsernames?r.moderatorUsernames.join(","):void 0,type:r.type,...i},e);return $O(s)}})}function $O(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:s,modId36:o,createdUtc:a,subreddit:c,subredditNamePrefixed:p,action:f,srId36:v,description:m,details:k,targetAuthor:b,targetBody:C,targetFullname:w,targetPermalink:x,targetTitle:F}=t.data;g(i,"ModAction from AboutLogResponse is missing id"),g(s,"ModAction from AboutLogResponse is missing mod"),g(o,"ModAction from AboutLogResponse is missing modId36"),g(a,"ModAction from AboutLogResponse is missing createdUtc"),g(c,"ModAction from AboutLogResponse is missing subreddit"),g(p,"ModAction from AboutLogResponse is missing subredditNamePrefixed"),g(f,"ModAction from AboutLogResponse is missing action"),g(v,"ModAction from AboutLogResponse is missing srId36");let ue=new Date(0);return ue.setUTCSeconds(a),{id:i,type:f,moderatorName:s,moderatorId:`t2_${o}`,createdAt:ue,subredditName:c,subredditId:`t5_${v}`,description:m,details:k,target:w?{id:w,author:b,body:C,permalink:x,title:F}:void 0}}),after:r.data.after,before:r.data.before}}var KO=(a=>(a.New="New",a.InProgress="InProgress",a.Archived="Archived",a.Appeals="Appeals",a.JoinRequests="JoinRequests",a.Filtered="Filtered",a))(KO||{}),XO={0:"New",1:"InProgress",2:"Archived",3:"Appeals",4:"JoinRequests",5:"Filtered"},ZO=(b=>(b.Highlighted="Highlighted",b.Unhighlighted="Unhighlighted",b.Archived="Archived",b.Unarchived="Unarchived",b.ReportedToAdmins="ReportedToAdmins",b.Muted="Muted",b.Unmuted="Unmuted",b.Banned="Banned",b.Unbanned="Unbanned",b.Approved="Approved",b.Disapproved="Disapproved",b.Filtered="Filtered",b.Unfiltered="Unfiltered",b))(ZO||{}),YO={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,Z,se,Il,MS,xl,LS,Ed=class{constructor(e){d(this,Z);d(this,Il);d(this,xl);d(this,G,void 0);l(this,G,e)}async bulkReadConversations(e,t){let i=u.redditAPIPlugins.NewModmail,{conversationIds:s}=await i.BulkReadConversations({entity:e.join(","),state:t},n(this,G));return s}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},n(this,G)),s={};for(let o in i.conversations)s[o]=y(this,Z,se).call(this,{protoConversation:i.conversations[o],protoMessages:i.messages,protoModActions:{}});return{conversations:s,viewerId:i.viewerId}}async getConversation(e){let i=await u.redditAPIPlugins.NewModmail.GetConversation({...e,markRead:!!e.markRead},n(this,G));return{participantSubreddit:i.participantSubreddit,conversation:y(this,Z,se).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({},n(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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:{}}),user:i.user}}async highlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.HighlightConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unhighlightConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnhighlightConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async archiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ArchiveConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversation,protoMessages:i.messages,protoModActions:i.modActions})}}async unarchiveConversation(e){let i=await u.redditAPIPlugins.NewModmail.UnarchiveConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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(",")},n(this,G))}async unreadConversations(e){await u.redditAPIPlugins.NewModmail.Unread({conversationIds:e.join(",")},n(this,G))}async approveConversation(e){let i=await u.redditAPIPlugins.NewModmail.ApproveConversation({conversationId:e},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).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},n(this,G));return{conversation:y(this,Z,se).call(this,{protoConversation:i.conversations,protoMessages:i.messages,protoModActions:i.modActions}),user:i.user}}async getUnreadCount(){return await u.redditAPIPlugins.NewModmail.UnreadCount({},n(this,G))}async getUserConversations(e){return await u.redditAPIPlugins.NewModmail.UserConversations({conversationId:e},n(this,G))}};G=new WeakMap,Z=new WeakSet,se=function({protoConversation:e,protoMessages:t,protoModActions:i}){return{...e,state:XO[e.state],messages:y(this,Il,MS).call(this,e,t),modActions:y(this,xl,LS).call(this,e,i)}},Il=new WeakSet,MS=function(e,t){let i={},s=e.objIds.filter(o=>o.key==="messages").map(({id:o})=>o);for(let o of s){let a=t[o];a&&(i[o]=a)}return i},xl=new WeakSet,LS=function(e,t){let i={},s=e.objIds.filter(o=>o.key==="modActions").map(({id:o})=>o);for(let o of s){let a=t[o];a&&(i[o]={...a,actionType:YO[a.actionTypeId]})}return i};var mn,pn,Al,Mo,Lo,Uo,Bo,ep=class ep{constructor(e,t){d(this,mn,void 0);d(this,pn,void 0);d(this,Al,void 0);d(this,Mo,void 0);d(this,Lo,void 0);d(this,Uo,void 0);d(this,Bo,void 0);if(J(this),g(e.id,"PrivateMessage: Invalid data, no id"),g(e.name,"PrivateMessage: Invalid data, no name"),g(e.created,"PrivateMessage: Invalid data, no created date"),l(this,mn,ge(e.name)),e.author!=null)l(this,pn,{type:"user",username:e.author,id:e.authorFullname?te(e.authorFullname):void 0});else if(e.subreddit!=null)l(this,pn,{type:"subreddit",name:e.subreddit,id:e.subredditId?Re(e.subredditId):void 0});else throw new Error("PrivateMessage: Invalid data, no author or subreddit");l(this,Mo,e.body??""),l(this,Lo,e.bodyHtml??"");let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,Uo,i),l(this,Al,e.parentId?ge(e.parentId):void 0),l(this,Bo,t)}static async getMessages(e,t){let i=u.redditAPIPlugins.PrivateMessages;return new H({...e,fetch:async s=>{let o=await i.MessageWhere({...s,where:e.type??"inbox"},t);return{after:o.data?.after,before:o.data?.before,children:o.data?.children?.map(a=>new ep(a.data,t)).filter(Boolean)||[]}}})}static async send({to:e,subject:t,text:i},s){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,subject:t,text:i,fromSr:""},s)}static async sendAsSubreddit({to:e,fromSubredditName:t,subject:i,text:s},o){await u.redditAPIPlugins.PrivateMessages.Compose({to:e,fromSr:t,subject:i,text:s},o)}static async markAllAsRead(e){await u.redditAPIPlugins.PrivateMessages.ReadAllMessages({filterTypes:""},e)}get id(){return n(this,mn)}get from(){return n(this,pn)}get body(){return n(this,Mo)}get bodyHtml(){return n(this,Lo)}get created(){return n(this,Uo)}async markAsRead(){await u.redditAPIPlugins.PrivateMessages.ReadMessage({id:n(this,mn)},n(this,Bo))}};mn=new WeakMap,pn=new WeakMap,Al=new WeakMap,Mo=new WeakMap,Lo=new WeakMap,Uo=new WeakMap,Bo=new WeakMap;var ur=ep;var xy=(o=>(o.Reports="reports",o.Spam="spam",o.Modqueue="modqueue",o.Unmoderated="unmoderated",o.Edited="edited",o))(xy||{}),fn,A,Do,_o,No,qo,jo,Ho,Wo,Go,Vo,gn,T,it=class it{constructor(e,t){d(this,fn,void 0);d(this,A,void 0);d(this,Do,void 0);d(this,_o,void 0);d(this,No,void 0);d(this,qo,void 0);d(this,jo,void 0);d(this,Ho,void 0);d(this,Wo,void 0);d(this,Go,void 0);d(this,Vo,void 0);d(this,gn,void 0);d(this,T,void 0);J(this),g(e.id,"Subreddit id is missing or undefined"),g(e.displayName,"Subreddit name is missing or undefined"),l(this,fn,Re(`t5_${e.id}`)),l(this,A,e.displayName),g(e.createdUtc,"Subreddit is missing created date");let i=new Date(0);i.setUTCSeconds(e.createdUtc),l(this,Do,i),l(this,_o,QO(e.subredditType)),l(this,No,e.title),l(this,qo,e.description),g(e.lang,"Subreddit is missing language"),l(this,jo,e.lang),l(this,Ho,e.subscribers??0),l(this,Wo,e.activeUserCount??0),l(this,Go,e.over18??!1),l(this,gn,e.url??""),l(this,Vo,{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:eF(e.submissionType),allowedMediaInComments:(e.allowedMediaInComments??[]).map(tF),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(n(this,gn),"https://www.reddit.com").toString()}),l(this,T,t)}get id(){return n(this,fn)}get name(){return n(this,A)}get createdAt(){return n(this,Do)}get type(){return n(this,_o)}get title(){return n(this,No)}get description(){return n(this,qo)}get language(){return n(this,jo)}get numberOfSubscribers(){return n(this,Ho)}get numberOfActiveUsers(){return n(this,Wo)}get nsfw(){return n(this,Go)}get settings(){return n(this,Vo)}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 n(this,gn)}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:n(this,A)};return V.submit(t,n(this,T))}getControversialPosts(e={}){if(!n(this,A))throw new Error("subreddit missing displayName - it might not have been fetched");return V.getControversialPosts({...e,subredditName:n(this,A)},n(this,T))}getTopPosts(e={}){if(!n(this,A))throw new Error("subreddit missing displayName - it might not have been fetched");return V.getTopPosts({...e,subredditName:n(this,A)},n(this,T))}getApprovedUsers(e={}){return I.getSubredditUsersByType({type:"contributors",subredditName:n(this,A),...e},n(this,T))}approveUser(e){return I.createRelationship({username:e,subredditName:n(this,A),type:"contributor"},n(this,T))}removeUser(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"contributor"},n(this,T))}getWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikicontributors",subredditName:n(this,A),...e},n(this,T))}addWikiContributor(e){return I.createRelationship({username:e,subredditName:n(this,A),type:"wikicontributor"},n(this,T))}removeWikiContributor(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"wikicontributor"},n(this,T))}getBannedUsers(e={}){return I.getSubredditUsersByType({type:"banned",subredditName:n(this,A),...e},n(this,T))}banUser(e){return I.createRelationship({username:e.username,subredditName:n(this,A),type:"banned",banReason:e.reason,banMessage:e.message,note:e.note,duration:e.duration},n(this,T))}unbanUser(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"banned"},n(this,T))}getBannedWikiContributors(e={}){return I.getSubredditUsersByType({type:"wikibanned",subredditName:n(this,A),...e},n(this,T))}banWikiContributor(e){return I.createRelationship({username:e.username,subredditName:n(this,A),type:"wikibanned",banReason:e.reason,note:e.note,duration:e.duration},n(this,T))}unbanWikiContributor(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"wikibanned"},n(this,T))}getModerators(e={}){return I.getSubredditUsersByType({type:"moderators",subredditName:n(this,A),...e},n(this,T))}inviteModerator(e,t){return I.createRelationship({type:"moderator_invite",subredditName:n(this,A),username:e,permissions:t??[]},n(this,T))}revokeModeratorInvite(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"moderator_invite"},n(this,T))}removeModerator(e){return I.removeRelationship({type:"moderator",subredditName:n(this,A),username:e},n(this,T))}setModeratorPermissions(e,t){return I.setModeratorPermissions(e,n(this,A),t,n(this,T))}getMutedUsers(e={}){return I.getSubredditUsersByType({type:"muted",subredditName:n(this,A),...e},n(this,T))}muteUser(e,t){return I.createRelationship({username:e,subredditName:n(this,A),type:"muted",note:t},n(this,T))}unmuteUser(e){return I.removeRelationship({username:e,subredditName:n(this,A),type:"muted"},n(this,T))}getModerationLog(e){return Td({subredditName:n(this,A),...e},n(this,T))}getUserFlairTemplates(){return ae.getUserFlairTemplates(n(this,A),n(this,T))}getPostFlairTemplates(){return ae.getPostFlairTemplates(n(this,A),n(this,T))}createPostFlairTemplate(e){return ae.createPostFlairTemplate({subredditName:n(this,A),...e},n(this,T))}createUserFlairTemplate(e){return ae.createUserFlairTemplate({subredditName:n(this,A),...e},n(this,T))}async getUserFlair(e){if(e?.usernames!==void 0)return{users:await Promise.all(e.usernames.map(async i=>{let s=await Le.getUserFlairBySubreddit({subreddit:n(this,A),name:i},n(this,T));return zs(s.users[0])}))};{let t=await Le.getUserFlairBySubreddit({...e,subreddit:n(this,A)},n(this,T));return{next:t.next,prev:t.prev,users:t.users.map(i=>zs(i))}}}getModQueue(e={type:"all"}){return it.aboutLocation({...e,location:"modqueue",subreddit:n(this,A)},n(this,T))}getReports(e={type:"all"}){return it.aboutLocation({...e,location:"reports",subreddit:n(this,A)},n(this,T))}getSpam(e={type:"all"}){return it.aboutLocation({...e,location:"spam",subreddit:n(this,A)},n(this,T))}getUnmoderated(e={type:"all"}){return it.aboutLocation({...e,location:"unmoderated",subreddit:n(this,A)},n(this,T))}getEdited(e={type:"all"}){return it.aboutLocation({...e,location:"edited",subreddit:n(this,A)},n(this,T))}static aboutLocation(e,t){let i=u.redditAPIPlugins.Moderation,s;switch(e.type){case"post":s="links";break;case"comment":s="comments";break;default:s=void 0}return new H({...e,fetch:async o=>{let a=await i.AboutLocation({...o,...e,only:s},t);return US(a,t)}})}getCommentsAndPostsByIds(e){let t=u.redditAPIPlugins.LinksAndComments;return new H({fetch:async()=>{let i=await t.Info({thingIds:e,subreddits:[n(this,fn)]},n(this,T));return US(i,n(this,T))}})}static async addRemovalReason(e,t,i,s){return(await u.redditAPIPlugins.Subreddits.SubredditAddRemovalReason({title:t,message:i,subreddit:e},s)).id}static async getRemovalReasons(e,t){let s=await u.redditAPIPlugins.Subreddits.SubredditGetRemovalReasons({subreddit:e},t);return s.order.map(o=>({...s.data[o]}))}static async getFromMetadata(e){g(e);let t=e?.[B.Subreddit]?.values[0];return g(t),it.getById(Re(t),e)}static async getById(e,t){let o=(await u.redditAPIPlugins.LinksAndComments.Info({thingIds:[e],subreddits:[]},t)).data?.children[0]?.data?.displayName;return g(o),it.getByName(o,t)}static async getByName(e,t){let s=await u.redditAPIPlugins.Subreddits.SubredditAbout({subreddit:e},t);if(!s?.data)throw new Error("not found");return new it(s.data,t)}};fn=new WeakMap,A=new WeakMap,Do=new WeakMap,_o=new WeakMap,No=new WeakMap,qo=new WeakMap,jo=new WeakMap,Ho=new WeakMap,Wo=new WeakMap,Go=new WeakMap,Vo=new WeakMap,gn=new WeakMap,T=new WeakMap;var he=it;async function Ay(r,e){let t="GetSubredditLeaderboard",i="18ead70c46b6446d45ecd8b679b16d9a929a933d6ef25d8262a459cb18b72848",o=(await jt.query(t,i,{id:r},e)).data?.subredditInfoById?.leaderboard;if(!o)throw new Error("subreddit leaderboard not found");if(!o.summary)throw new Error("subreddit leaderboard summary not found");return{id:o.id,summary:o.summary}}function QO(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 eF(r){if(r==="any"||r==="link"||r==="self")return r;throw new Error(`invalid allowed post type: ${r}`)}function tF(r){if(r==="animated"||r==="giphy"||r==="static"||r==="expression")return r;throw new Error(`invalid comment media type: ${r}`)}function US(r,e){let i=(r.data?.children??[]).map(a=>{let c=s(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 s(a){try{return new V(a.data,e)}catch{return null}}function o(a){try{return new X(a.data,e)}catch{return null}}}async function Ty(r,e){return BS("GetVaultContactByAddress","3e2f7966a5c120e64fd2795d06a46595c52d988185be98d3ed71c3f81ae80d2e",{provider:"ethereum",address:r},e)}async function Ey(r,e){return BS("GetVaultContactByUserId","a854ddc19d0e22c4f36ed917fdbd568f299f3571427e393aee5e2972080fffe9",{provider:"ethereum",userId:r},e)}async function BS(r,e,t,i){let o=(await jt.query(r,e,t,i))?.data?.vault?.contact;return{provider:o?.provider,userId:te(o?.userId),address:o?.address,createdAt:o?.createdAt,isActive:o?.isActive}}import{CommunityListWidget_CommunityData as rF,GetWidgetsResponse_WidgetItem as le}from"@devvit/protos";var zo,Jo,$o,Ko,rp=class rp{constructor(e,t,i){d(this,zo,void 0);d(this,Jo,void 0);d(this,$o,void 0);d(this,Ko,void 0);J(this),l(this,zo,e.id),l(this,Jo,e.shortName),l(this,$o,t),l(this,Ko,i)}get id(){return n(this,zo)}get name(){return n(this,Jo)}get subredditName(){return n(this,$o)}toJSON(){return{id:this.id,name:this.name,subredditName:this.subredditName}}delete(){return rp.delete(this.subredditName,this.id,n(this,Ko))}static async getWidgets(e,t){let s=await u.redditAPIPlugins.Widgets.GetWidgets({subreddit:e},t);g(s.layout,"Failed to load widgets for subreddit");let o=s.items,a=[];for(let c of s.layout.sidebar?.order??[]){let p=o[c];switch(p?.kind){case"image":a.push(new Tl(p,e,t));break;case"calendar":a.push(new El(p,e,t));break;case"textarea":a.push(new Rl(p,e,t));break;case"button":a.push(new Ol(p,e,t));break;case"community-list":a.push(new Fl(p,e,t));break;case"post-flair":a.push(new Ml(p,e,t));break;case"custom":a.push(new Ll(p,e,t));break;case"subreddit-rules":{let f=await u.redditAPIPlugins.Subreddits.SubredditAboutRules({subreddit:e},t);a.push(new tp(f,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 Tl.create(e,t);case"calendar":return El.create(e,t);case"textarea":return Rl.create(e,t);case"button":return Ol.create(e,t);case"community-list":return Fl.create(e,t);case"post-flair":return Ml.create(e,t);case"custom":return Ll.create(e,t);default:throw new Error("Unknown widget type")}}};zo=new WeakMap,Jo=new WeakMap,$o=new WeakMap,Ko=new WeakMap;var re=rp,Xo,Ul=class Ul extends re{constructor(t,i,s){super(t,i,s);d(this,Xo,void 0);l(this,Xo,t.data.map(o=>(g(o.url,"Image widget data is missing url"),g(o.height,"Image widget data is missing height"),g(o.width,"Image widget data is missing width"),g(o.linkUrl,"Image widget data is missing linkUrl"),{url:o.url,height:o.height,width:o.width,linkUrl:o.linkUrl})))}get images(){return n(this,Xo)}toJSON(){return{...super.toJSON(),images:this.images}}static async create(t,i){let o=await u.redditAPIPlugins.Widgets.AddImageWidget(t,i);return new Ul(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateImageWidget(t,i);return new Ul(le.fromJSON(o),t.subreddit,i)}};Xo=new WeakMap;var Tl=Ul,Zo,Yo,Qo,Bl=class Bl extends re{constructor(t,i,s){super(t,i,s);d(this,Zo,void 0);d(this,Yo,void 0);d(this,Qo,void 0);g(t.googleCalendarId,"Calendar widget data is missing googleCalendarId"),g(t.configuration,"Calendar widget data is missing configuration"),g(t.styles,"Calendar widget data is missing styles"),l(this,Zo,t.googleCalendarId),l(this,Yo,t.configuration),l(this,Qo,t.styles)}get googleCalendarId(){return n(this,Zo)}get configuration(){return n(this,Yo)}get styles(){return n(this,Qo)}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 Bl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCalendarWidget(t,i);return new Bl(le.fromJSON(o),t.subreddit,i)}};Zo=new WeakMap,Yo=new WeakMap,Qo=new WeakMap;var El=Bl,ea,ta,Dl=class Dl extends re{constructor(t,i,s){super(t,i,s);d(this,ea,void 0);d(this,ta,void 0);g(t.text,"Textarea widget data is missing text"),g(t.styles,"Textarea widget data is missing styles"),l(this,ea,t.text),l(this,ta,t.styles)}get text(){return n(this,ea)}get styles(){return n(this,ta)}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 Dl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateTextAreaWidget(t,i);return new Dl(le.fromJSON(o),t.subreddit,i)}};ea=new WeakMap,ta=new WeakMap;var Rl=Dl,ra,ia,na,_l=class _l extends re{constructor(t,i,s){super(t,i,s);d(this,ra,void 0);d(this,ia,void 0);d(this,na,void 0);g(t.styles,"Button widget data is missing styles"),l(this,ra,t.buttons),l(this,ia,t.description??""),l(this,na,t.styles)}get buttons(){return n(this,ra)}get description(){return n(this,ia)}get styles(){return n(this,na)}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 _l(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateButtonWidget(t,i);return new _l(le.fromJSON(o),t.subreddit,i)}};ra=new WeakMap,ia=new WeakMap,na=new WeakMap;var Ol=_l,sa,oa,Nl=class Nl extends re{constructor(t,i,s){super(t,i,s);d(this,sa,void 0);d(this,oa,void 0);l(this,sa,t.data.map(o=>rF.fromJSON(o))),g(t.styles,"Community list widget data is missing styles"),l(this,oa,t.styles)}get communities(){return n(this,sa)}get styles(){return n(this,oa)}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 Nl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCommunityListWidget(t,i);return new Nl(le.fromJSON(o),t.subreddit,i)}};sa=new WeakMap,oa=new WeakMap;var Fl=Nl,aa,da,la,ql=class ql extends re{constructor(t,i,s){super(t,i,s);d(this,aa,void 0);d(this,da,void 0);d(this,la,void 0);if(g(t.styles,"Post flair widget data is missing styles"),l(this,aa,t.styles),l(this,da,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");l(this,la,t.display)}get styles(){return n(this,aa)}get templates(){return n(this,da)}get display(){return n(this,la)}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 ql(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdatePostFlairWidget(t,i);return new ql(le.fromJSON(o),t.subreddit,i)}};aa=new WeakMap,da=new WeakMap,la=new WeakMap;var Ml=ql,ua,ca,ma,pa,fa,jl=class jl extends re{constructor(t,i,s){super(t,i,s);d(this,ua,void 0);d(this,ca,void 0);d(this,ma,void 0);d(this,pa,void 0);d(this,fa,void 0);g(t.stylesheetUrl,"Custom widget data is missing stylesheetUrl"),g(t.height,"Custom widget data is missing height"),g(t.css,"Custom widget data is missing css"),l(this,ua,t.imageData??[]),l(this,ca,t.text??""),l(this,ma,t.stylesheetUrl),l(this,pa,t.height),l(this,fa,t.css)}get images(){return n(this,ua)}get text(){return n(this,ca)}get stylesheetUrl(){return n(this,ma)}get height(){return n(this,pa)}get css(){return n(this,fa)}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 jl(le.fromJSON(o),t.subreddit,i)}static async update(t,i){let o=await u.redditAPIPlugins.Widgets.UpdateCustomWidget(t,i);return new jl(le.fromJSON(o),t.subreddit,i)}};ua=new WeakMap,ca=new WeakMap,ma=new WeakMap,pa=new WeakMap,fa=new WeakMap;var Ll=jl,ga,tp=class extends re{constructor(t,i,s,o){super(i,s,o);d(this,ga,void 0);let a=t.rules.map(({description:c,priority:p,shortName:f,violationReason:v})=>(g(c,"Subreddit rule is missing description"),g(p,"Subreddit rule is missing priority"),g(f,"Subreddit rule is missing shortName"),g(v,"Subreddit rule is missing violationReason"),{description:c,priority:p,shortName:f,violationReason:v}));l(this,ga,a)}get rules(){return n(this,ga)}toJSON(){return{...super.toJSON(),rules:this.rules}}};ga=new WeakMap;var iF=(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))(iF||{}),ke,Se,hn,vn,yn,bn,kn,Ke,qe=class qe{constructor(e,t,i,s){d(this,ke,void 0);d(this,Se,void 0);d(this,hn,void 0);d(this,vn,void 0);d(this,yn,void 0);d(this,bn,void 0);d(this,kn,void 0);d(this,Ke,void 0);J(this),l(this,ke,e),l(this,Se,t),l(this,hn,i.contentMd),l(this,vn,i.revisionId),l(this,yn,new Date(i.revisionDate)),l(this,bn,i.reason??""),g(i.revisionBy?.data,"Wiki page author details are missing"),l(this,kn,new I(i.revisionBy.data,s)),l(this,Ke,s)}get name(){return n(this,ke)}get subredditName(){return n(this,Se)}get content(){return n(this,hn)}get revisionId(){return n(this,vn)}get revisionDate(){return n(this,yn)}get revisionReason(){return n(this,bn)}get revisionAuthor(){return n(this,kn)}toJSON(){return{name:n(this,ke),subredditName:n(this,Se),content:n(this,hn),revisionId:n(this,vn),revisionDate:n(this,yn),revisionReason:n(this,bn),revisionAuthor:n(this,kn).toJSON()}}async update(e,t){return qe.updatePage({subredditName:n(this,Se),page:n(this,ke),content:e,reason:t},n(this,Ke))}async getRevisions(e){return qe.getPageRevisions({subredditName:n(this,Se),page:n(this,ke),...e},n(this,Ke))}async revertTo(e){return qe.revertPage(n(this,Se),n(this,ke),e,n(this,Ke))}async getSettings(){return qe.getPageSettings(n(this,Se),n(this,ke),n(this,Ke))}async updateSettings(e){return qe.updatePageSettings({subredditName:n(this,Se),page:n(this,ke),listed:e.listed,permLevel:e.permLevel},n(this,Ke))}async addEditor(e){return qe.addEditor(n(this,Se),n(this,ke),e,n(this,Ke))}async removeEditor(e){return qe.removeEditor(n(this,Se),n(this,ke),e,n(this,Ke))}static async getPage(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPage({subreddit:e,page:t},i);return g(o.data,"Failed to get wiki page"),new qe(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 qe.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),qe.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(s){let o=await i.GetWikiPageRevisions({subreddit:e.subredditName,page:e.page,limit:s.limit,after:s.after,before:s.before},t);return nF(o,t)}})}static async revertPage(e,t,i,s){await u.redditAPIPlugins.Wiki.RevertWikiPage({subreddit:e,page:t,revision:i},s)}static async getPageSettings(e,t,i){let o=await u.redditAPIPlugins.Wiki.GetWikiPageSettings({subreddit:e,page:t},i);return g(o.data,"Failed to get wiki page settings"),new Hl(o.data,i)}static async updatePageSettings(e,t){let s=await u.redditAPIPlugins.Wiki.UpdateWikiPageSettings({subreddit:e.subredditName,page:e.page,listed:e.listed?"on":"",permlevel:e.permLevel},t);return g(s.data,"Failed to update wiki page settings"),new Hl(s.data,t)}static async addEditor(e,t,i,s){await u.redditAPIPlugins.Wiki.AllowEditor({act:"add",subreddit:e,page:t,username:i},s)}static async removeEditor(e,t,i,s){await u.redditAPIPlugins.Wiki.AllowEditor({act:"del",subreddit:e,page:t,username:i},s)}};ke=new WeakMap,Se=new WeakMap,hn=new WeakMap,vn=new WeakMap,yn=new WeakMap,bn=new WeakMap,kn=new WeakMap,Ke=new WeakMap;var ve=qe,Sn,Pn,Cn,wn,In,xn,ip=class{constructor(e,t){d(this,Sn,void 0);d(this,Pn,void 0);d(this,Cn,void 0);d(this,wn,void 0);d(this,In,void 0);d(this,xn,void 0);l(this,Sn,e.id),l(this,Pn,e.page),l(this,Cn,new Date(e.timestamp)),g(e.author?.data,"Wiki page revision author details are missing"),l(this,wn,new I(e.author.data,t)),l(this,In,e.reason??""),l(this,xn,e.revisionHidden??!1)}get id(){return n(this,Sn)}get page(){return n(this,Pn)}get date(){return n(this,Cn)}get author(){return n(this,wn)}get reason(){return n(this,In)}get hidden(){return n(this,xn)}toJSON(){return{id:n(this,Sn),page:n(this,Pn),date:n(this,Cn),author:n(this,wn).toJSON(),reason:n(this,In),hidden:n(this,xn)}}};Sn=new WeakMap,Pn=new WeakMap,Cn=new WeakMap,wn=new WeakMap,In=new WeakMap,xn=new WeakMap;var An,Tn,En,Hl=class{constructor(e,t){d(this,An,void 0);d(this,Tn,void 0);d(this,En,void 0);l(this,An,e.listed),l(this,Tn,e.permLevel),l(this,En,e.editors.map(i=>(g(i.data,"Wiki page editor details are missing"),new I(i.data,t))))}get listed(){return n(this,An)}get permLevel(){return n(this,Tn)}get editors(){return n(this,En)}toJSON(){return{listed:n(this,An),permLevel:n(this,Tn),editors:n(this,En).map(e=>e.toJSON())}}};An=new WeakMap,Tn=new WeakMap,En=new WeakMap;function nF(r,e){return g(r.data?.children,"Wiki page revision listing is missing children"),{children:r.data.children.map(i=>new ip(i,e)),before:r.data.before,after:r.data.after}}var sF=(t=>(t.Gallery="GALLERY",t.Timeline="TIMELINE",t))(sF||{});function oF(r){return r==="GALLERY"?"GALLERY":"TIMELINE"}var je,Pe,va,Rn,On,ya,ba,ka,Sa,vt,Pa,Ca,Fn,ha=class ha{constructor(e,t){d(this,je,void 0);d(this,Pe,void 0);d(this,va,void 0);d(this,Rn,void 0);d(this,On,void 0);d(this,ya,void 0);d(this,ba,void 0);d(this,ka,void 0);d(this,Sa,void 0);d(this,vt,void 0);d(this,Pa,void 0);d(this,Ca,void 0);d(this,Fn,void 0);g(e.collectionId,"Collection Id is missing or undefined"),g(e.subredditId,"Subreddit Id is missing or undefined"),g(e.title,"Collection title is missing or undefined"),g(e.authorId,"Collection author's id is missing or undefined"),g(e.authorName,"Collection author's id is missing or undefined"),g(e.createdAtUtc,"Collection create timestamp is missing"),g(e.lastUpdateUtc,"Collection last updated timestamp is missing"),l(this,je,t),l(this,Pe,e.collectionId),l(this,va,e.subredditId),l(this,Rn,e.title),l(this,On,e.description||""),l(this,ya,e.authorId),l(this,ba,e.authorName),l(this,ka,e.permalink),l(this,Sa,e.primaryLinkId),l(this,vt,e.linkIds||[]),l(this,Fn,oF(e.displayLayout)),l(this,Pa,e.createdAtUtc),l(this,Ca,e.lastUpdateUtc),J(this)}get id(){return n(this,Pe)}get subredditId(){return n(this,va)}get title(){return n(this,Rn)}get description(){return n(this,On)}get authorId(){return n(this,ya)}get authorName(){return n(this,ba)}get permalink(){return n(this,ka)}get primaryLinkId(){return n(this,Sa)}get linkIds(){return n(this,vt)}get createdAtUtc(){return n(this,Pa)}get lastUpdateUtc(){return n(this,Ca)}get displayLayout(){return n(this,Fn)}static async getCollectionById(e,t){let s=await u.redditAPIPlugins.PostCollections.Collection(e,t);return new ha(s,t)}static async create(e,t){let s=await u.redditAPIPlugins.PostCollections.Create({srFullname:e.subredditId,title:e.title,description:e.description,displayLayout:e.displayLayout},t);return new ha(s,t)}static async getCollectionsForSubreddit(e,t){return(await u.redditapiv2Plugin.GetSubredditCollections({srFullname:e.subredditId},t)).collections.map(s=>new ha(s,t))}async addPost(e){await u.redditAPIPlugins.PostCollections.AddPost({collectionId:n(this,Pe),linkFullname:e},n(this,je)),n(this,vt).push(e)}async removePost(e){await u.redditAPIPlugins.PostCollections.RemovePost({collectionId:n(this,Pe),linkFullname:e},n(this,je)),l(this,vt,n(this,vt).filter(i=>i!==e))}async delete(){await u.redditAPIPlugins.PostCollections.Delete({collectionId:n(this,Pe)},n(this,je))}async follow(e){await u.redditAPIPlugins.PostCollections.Follow({collectionId:n(this,Pe),follow:e},n(this,je))}async reorder(e){await u.redditAPIPlugins.PostCollections.Reorder({collectionId:n(this,Pe),linkIds:e.join(",")},n(this,je)),l(this,vt,e)}async updateTitle(e){await u.redditAPIPlugins.PostCollections.UpdateTitle({collectionId:n(this,Pe),title:e},n(this,je)),l(this,Rn,e)}async updateDescription(e){await u.redditAPIPlugins.PostCollections.UpdateDescription({collectionId:n(this,Pe),description:e},n(this,je)),l(this,On,e)}async updateLayout(e){await u.redditAPIPlugins.PostCollections.UpdateDisplayLayout({collectionId:n(this,Pe),displayLayout:e},n(this,je)),l(this,Fn,e)}};je=new WeakMap,Pe=new WeakMap,va=new WeakMap,Rn=new WeakMap,On=new WeakMap,ya=new WeakMap,ba=new WeakMap,ka=new WeakMap,Sa=new WeakMap,vt=new WeakMap,Pa=new WeakMap,Ca=new WeakMap,Fn=new WeakMap;var ai=ha;var aF=["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"],dF=["border-image","border-image-source","behavior","expression","list-style-image","cursor","content"],lF=["onload","onerror","onclick","onmouseover"];function uF(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 DS(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*(${aF.join("|")})\\b`,"gi"),t=new RegExp(`(${dF.join("|")})\\s*:\\s*url\\s*\\((['"]?)(.*?)\\2\\)`,"gi"),i=new RegExp(`(${lF.join("|")})\\s*(=\\s*(['"]?)(.*?)\\3)?`,"gi");r=r.trim().replace(/\s+/g," "),r=uF(r);let s=r.match(e)||[],o=r.match(t)||[],a=r.match(i)||[],c=!1;return s.length>0&&(c=!0,console.warn(`Disallowed elements detected in SVG: ${s.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 $j(r,...e){let t="";return r.forEach((i,s)=>{t+=i;let o=e[s];o!==void 0&&(t+=`${o}`)}),t=DS(t),t===void 0?"":`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(t)}`}var _S="ServerCallRequired";var NS=Br(Xd(),1);var nt,yt,wa,Mn,Ia,Ur,np=class{constructor(e,t,i){d(this,nt,void 0);d(this,yt,void 0);d(this,wa,void 0);d(this,Mn,void 0);d(this,Ia,void 0);d(this,Ur,void 0);l(this,nt,!!i.context.devvitContext.debug.useAsync),n(this,nt)&&console.debug("[useAsync] v1",t),this.state={data:null,load_state:"initial",error:null,depends:null},l(this,yt,i.hookId),l(this,wa,e),l(this,Mn,i.invalidate),l(this,Ia,i.context),l(this,Ur,t.depends??null),(t.enabled??!0)||(this.state.load_state="disabled")}onStateLoaded(){if(this.state.load_state!=="disabled"&&(n(this,nt)&&console.debug("[useAsync] async onLoad ",n(this,yt),this.state),n(this,nt)&&console.debug("[useAsync] async onLoad have ",n(this,Ur),"and",this.state.depends),!(0,NS.default)(n(this,Ur),this.state.depends)||this.state.load_state==="initial")){this.state.load_state="loading",this.state.depends=n(this,Ur),n(this,Mn).call(this);let e={hook:n(this,yt),async:!0,asyncRequest:{requestId:n(this,yt)+"-"+JSON.stringify(this.state.depends)}};n(this,nt)&&console.debug("[useAsync] onLoad requeue"),n(this,Ia).addToRequeueEvents(e)}}async onUIEvent(e,t){if(e.asyncRequest){let i={requestId:e.asyncRequest.requestId};try{i.data={value:await n(this,wa).call(this)}}catch(o){if(o instanceof Error){if(o.message===_S)throw o;i.error={message:o.message,details:o.stack??""}}else i.error={message:"Unknown error",details:String(o)}}let s={asyncResponse:i,hook:n(this,yt)};n(this,nt)&&console.debug("[useAsync] onReq requeue"),t.addToRequeueEvents(s)}else if(e.asyncResponse){let i=n(this,yt)+"-"+JSON.stringify(this.state.depends);e.asyncResponse.requestId===i?(this.state={...this.state,data:e.asyncResponse.data?.value,error:e.asyncResponse.error??null,load_state:e.asyncResponse.error?"error":"loaded"},n(this,Mn).call(this)):n(this,nt)&&console.debug("[useAsync] onResp skip, stale event")}else throw new Error("Unknown event type")}};nt=new WeakMap,yt=new WeakMap,wa=new WeakMap,Mn=new WeakMap,Ia=new WeakMap,Ur=new WeakMap;function cF(r,e={}){let t=De({namespace:"useAsync"},i=>new np(r,e,i));return{data:t.state.data,error:t.state.error,loading:t.state.load_state==="loading"}}export{FL as ALL_ICON_NAMES,xy as AboutLocations,Ol as ButtonWidget,El as CalendarWidget,sF as CollectionDisplayLayout,X as Comment,Fl as CommunityListWidget,Ll as CustomWidget,u as Devvit,Le as Flair,ae as FlairTemplate,LO as FlairType,Ct as Hook,Tl as ImageWidget,H as Listing,ZO as ModMailActionType,KO as ModMailConversationState,Ed as ModMailService,Me as ModNote,V as Post,ai as PostCollection,Ml as PostFlairWidget,ur as PrivateMessage,Hs as RichTextBuilder,Hc as SettingScope,he as Subreddit,tp as SubredditRulesWidget,Rl as TextAreaWidget,I as User,re as Widget,ve as WikiPage,iF as WikiPagePermissionLevel,ip as WikiPageRevision,Hl as WikiPageSettings,zs as convertUserFlairProtoToAPI,Td as getModerationLog,Ay as getSubredditLeaderboard,Ty as getVaultByAddress,Ey as getVaultByUserId,$j as svg,cF as useAsync,bO as useAsyncState,Om as useChannel,Am as useForm,Lm as useInterval,Um as useState};
6
6
  /*! Bundled license information:
7
7
 
8
8
  shallow-clone/index.js: