vasp-cli 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/vasp CHANGED
@@ -1,19 +1,19 @@
1
1
  #!/usr/bin/env bun
2
2
  // @bun
3
- var y8=Object.create;var{getPrototypeOf:D8,defineProperty:P$,getOwnPropertyNames:x8}=Object;var L8=Object.prototype.hasOwnProperty;function s8(_){return this[_]}var B8,U8,Uq=(_,q,$)=>{var f=_!=null&&typeof _==="object";if(f){var K=q?B8??=new WeakMap:U8??=new WeakMap,P=K.get(_);if(P)return P}$=_!=null?y8(D8(_)):{};let j=q||!_||!_.__esModule?P$($,"default",{value:_,enumerable:!0}):$;for(let w of x8(_))if(!L8.call(j,w))P$(j,w,{get:s8.bind(_,w),enumerable:!0});if(f)K.set(_,j);return j};var H=(_,q)=>()=>(q||_((q={exports:{}}).exports,q),q.exports);var kq=import.meta.require;var Qq=H((A7,Fq)=>{var tq=process||{},j$=tq.argv||[],dq=tq.env||{},F8=!(!!dq.NO_COLOR||j$.includes("--no-color"))&&(!!dq.FORCE_COLOR||j$.includes("--color")||tq.platform==="win32"||(tq.stdout||{}).isTTY&&dq.TERM!=="dumb"||!!dq.CI),Q8=(_,q,$=_)=>(f)=>{let K=""+f,P=K.indexOf(q,_.length);return~P?_+qf(K,q,$,P)+q:_+K+q},qf=(_,q,$,f)=>{let K="",P=0;do K+=_.substring(P,f)+$,P=f+q.length,f=_.indexOf(q,P);while(~f);return K+_.substring(P)},v$=(_=F8)=>{let q=_?Q8:()=>String;return{isColorSupported:_,reset:q("\x1B[0m","\x1B[0m"),bold:q("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:q("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:q("\x1B[3m","\x1B[23m"),underline:q("\x1B[4m","\x1B[24m"),inverse:q("\x1B[7m","\x1B[27m"),hidden:q("\x1B[8m","\x1B[28m"),strikethrough:q("\x1B[9m","\x1B[29m"),black:q("\x1B[30m","\x1B[39m"),red:q("\x1B[31m","\x1B[39m"),green:q("\x1B[32m","\x1B[39m"),yellow:q("\x1B[33m","\x1B[39m"),blue:q("\x1B[34m","\x1B[39m"),magenta:q("\x1B[35m","\x1B[39m"),cyan:q("\x1B[36m","\x1B[39m"),white:q("\x1B[37m","\x1B[39m"),gray:q("\x1B[90m","\x1B[39m"),bgBlack:q("\x1B[40m","\x1B[49m"),bgRed:q("\x1B[41m","\x1B[49m"),bgGreen:q("\x1B[42m","\x1B[49m"),bgYellow:q("\x1B[43m","\x1B[49m"),bgBlue:q("\x1B[44m","\x1B[49m"),bgMagenta:q("\x1B[45m","\x1B[49m"),bgCyan:q("\x1B[46m","\x1B[49m"),bgWhite:q("\x1B[47m","\x1B[49m"),blackBright:q("\x1B[90m","\x1B[39m"),redBright:q("\x1B[91m","\x1B[39m"),greenBright:q("\x1B[92m","\x1B[39m"),yellowBright:q("\x1B[93m","\x1B[39m"),blueBright:q("\x1B[94m","\x1B[39m"),magentaBright:q("\x1B[95m","\x1B[39m"),cyanBright:q("\x1B[96m","\x1B[39m"),whiteBright:q("\x1B[97m","\x1B[39m"),bgBlackBright:q("\x1B[100m","\x1B[49m"),bgRedBright:q("\x1B[101m","\x1B[49m"),bgGreenBright:q("\x1B[102m","\x1B[49m"),bgYellowBright:q("\x1B[103m","\x1B[49m"),bgBlueBright:q("\x1B[104m","\x1B[49m"),bgMagentaBright:q("\x1B[105m","\x1B[49m"),bgCyanBright:q("\x1B[106m","\x1B[49m"),bgWhiteBright:q("\x1B[107m","\x1B[49m")}};Fq.exports=v$();Fq.exports.createColors=v$});var p=H((zf)=>{zf.__esModule=!0;zf.extend=z$;zf.indexOf=Of;zf.escapeExpression=Yf;zf.isEmpty=hf;zf.createFrame=Tf;zf.blockParams=kf;zf.appendContextPath=rf;var Pf={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},jf=/[&<>"'`=]/g,vf=/[&<>"'`=]/;function wf(_){return Pf[_]}function z$(_){for(var q=1;q<arguments.length;q++)for(var $ in arguments[q])if(Object.prototype.hasOwnProperty.call(arguments[q],$))_[$]=arguments[q][$];return _}var j_=Object.prototype.toString;zf.toString=j_;var P_=function(q){return typeof q==="function"};if(P_(/x/))zf.isFunction=P_=function(_){return typeof _==="function"&&j_.call(_)==="[object Function]"};zf.isFunction=P_;var H$=Array.isArray||function(_){return _&&typeof _==="object"?j_.call(_)==="[object Array]":!1};zf.isArray=H$;function Of(_,q){for(var $=0,f=_.length;$<f;$++)if(_[$]===q)return $;return-1}function Yf(_){if(typeof _!=="string"){if(_&&_.toHTML)return _.toHTML();else if(_==null)return"";else if(!_)return _+"";_=""+_}if(!vf.test(_))return _;return _.replace(jf,wf)}function hf(_){if(!_&&_!==0)return!0;else if(H$(_)&&_.length===0)return!0;else return!1}function Tf(_){var q=z$({},_);return q._parent=_,q}function kf(_,q){return _.path=q,_}function rf(_,q){return(_?_+".":"")+q}});var t=H((W$,J$)=>{W$.__esModule=!0;var v_=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function w_(_,q){var $=q&&q.loc,f=void 0,K=void 0,P=void 0,j=void 0;if($)f=$.start.line,K=$.end.line,P=$.start.column,j=$.end.column,_+=" - "+f+":"+P;var w=Error.prototype.constructor.call(this,_);for(var O=0;O<v_.length;O++)this[v_[O]]=w[v_[O]];if(Error.captureStackTrace)Error.captureStackTrace(this,w_);try{if($)if(this.lineNumber=f,this.endLineNumber=K,Object.defineProperty)Object.defineProperty(this,"column",{value:P,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:j,enumerable:!0});else this.column=P,this.endColumn=j}catch(v){}}w_.prototype=Error();W$.default=w_;J$.exports=W$.default});var u$=H((Z$,m$)=>{Z$.__esModule=!0;var O_=p();Z$.default=function(_){_.registerHelper("blockHelperMissing",function(q,$){var{inverse:f,fn:K}=$;if(q===!0)return K(this);else if(q===!1||q==null)return f(this);else if(O_.isArray(q))if(q.length>0){if($.ids)$.ids=[$.name];return _.helpers.each(q,$)}else return f(this);else{if($.data&&$.ids){var P=O_.createFrame($.data);P.contextPath=O_.appendContextPath($.data.contextPath,$.name),$={data:P}}return K(q,$)}})};m$.exports=Z$.default});var A$=H((o$,n$)=>{o$.__esModule=!0;function af(_){return _&&_.__esModule?_:{default:_}}var zq=p(),bf=t(),Sf=af(bf);o$.default=function(_){_.registerHelper("each",function(q,$){if(!$)throw new Sf.default("Must pass iterator to #each");var{fn:f,inverse:K}=$,P=0,j="",w=void 0,O=void 0;if($.data&&$.ids)O=zq.appendContextPath($.data.contextPath,$.ids[0])+".";if(zq.isFunction(q))q=q.call(this);if($.data)w=zq.createFrame($.data);function v(W,m,a){if(w){if(w.key=W,w.index=m,w.first=m===0,w.last=!!a,O)w.contextPath=O+W}j=j+f(q[W],{data:w,blockParams:zq.blockParams([q[W],W],[O+W,null])})}if(q&&typeof q==="object")if(zq.isArray(q)){for(var h=q.length;P<h;P++)if(P in q)v(P,P,P===q.length-1)}else if(typeof Symbol==="function"&&q[Symbol.iterator]){var Y=[],T=q[Symbol.iterator]();for(var z=T.next();!z.done;z=T.next())Y.push(z.value);q=Y;for(var h=q.length;P<h;P++)v(P,P,P===q.length-1)}else(function(){var W=void 0;if(Object.keys(q).forEach(function(m){if(W!==void 0)v(W,P-1);W=m,P++}),W!==void 0)v(W,P-1,!0)})();if(P===0)j=K(this);return j})};n$.exports=o$.default});var e$=H((X$,p$)=>{X$.__esModule=!0;function Vf(_){return _&&_.__esModule?_:{default:_}}var Mf=t(),Nf=Vf(Mf);X$.default=function(_){_.registerHelper("helperMissing",function(){if(arguments.length===1)return;else throw new Nf.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};p$.exports=X$.default});var a$=H((G$,i$)=>{G$.__esModule=!0;function Rf(_){return _&&_.__esModule?_:{default:_}}var d$=p(),gf=t(),t$=Rf(gf);G$.default=function(_){_.registerHelper("if",function(q,$){if(arguments.length!=2)throw new t$.default("#if requires exactly one argument");if(d$.isFunction(q))q=q.call(this);if(!$.hash.includeZero&&!q||d$.isEmpty(q))return $.inverse(this);else return $.fn(this)}),_.registerHelper("unless",function(q,$){if(arguments.length!=2)throw new t$.default("#unless requires exactly one argument");return _.helpers.if.call(this,q,{fn:$.inverse,inverse:$.fn,hash:$.hash})})};i$.exports=G$.default});var C$=H((b$,S$)=>{b$.__esModule=!0;b$.default=function(_){_.registerHelper("log",function(){var q=[void 0],$=arguments[arguments.length-1];for(var f=0;f<arguments.length-1;f++)q.push(arguments[f]);var K=1;if($.hash.level!=null)K=$.hash.level;else if($.data&&$.data.level!=null)K=$.data.level;q[0]=K,_.log.apply(_,q)})};S$.exports=b$.default});var M$=H((l$,V$)=>{l$.__esModule=!0;l$.default=function(_){_.registerHelper("lookup",function(q,$,f){if(!q)return q;return f.lookupProperty(q,$)})};V$.exports=l$.default});var E$=H((N$,c$)=>{N$.__esModule=!0;function Bf(_){return _&&_.__esModule?_:{default:_}}var Hq=p(),Uf=t(),Ff=Bf(Uf);N$.default=function(_){_.registerHelper("with",function(q,$){if(arguments.length!=2)throw new Ff.default("#with requires exactly one argument");if(Hq.isFunction(q))q=q.call(this);var f=$.fn;if(!Hq.isEmpty(q)){var K=$.data;if($.data&&$.ids)K=Hq.createFrame($.data),K.contextPath=Hq.appendContextPath($.data.contextPath,$.ids[0]);return f(q,{data:K,blockParams:Hq.blockParams([q],[K&&K.contextPath])})}else return $.inverse(this)})};c$.exports=N$.default});var Y_=H((WK)=>{WK.__esModule=!0;WK.registerDefaultHelpers=zK;WK.moveHelperToHooks=HK;function L(_){return _&&_.__esModule?_:{default:_}}var _K=u$(),$K=L(_K),fK=A$(),KK=L(fK),PK=e$(),jK=L(PK),vK=a$(),wK=L(vK),OK=C$(),YK=L(OK),hK=M$(),TK=L(hK),kK=E$(),rK=L(kK);function zK(_){$K.default(_),KK.default(_),jK.default(_),wK.default(_),YK.default(_),TK.default(_),rK.default(_)}function HK(_,q,$){if(_.helpers[q]){if(_.hooks[q]=_.helpers[q],!$)delete _.helpers[q]}}});var I$=H((R$,g$)=>{R$.__esModule=!0;var uK=p();R$.default=function(_){_.registerDecorator("inline",function(q,$,f,K){var P=q;if(!$.partials)$.partials={},P=function(j,w){var O=f.partials;f.partials=uK.extend({},O,$.partials);var v=q(j,w);return f.partials=O,v};return $.partials[K.args[0]]=K.fn,P})};g$.exports=R$.default});var y$=H((dK)=>{dK.__esModule=!0;dK.registerDefaultDecorators=eK;function AK(_){return _&&_.__esModule?_:{default:_}}var XK=I$(),pK=AK(XK);function eK(_){pK.default(_)}});var h_=H((D$,x$)=>{D$.__esModule=!0;var iK=p(),fq={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(q){if(typeof q==="string"){var $=iK.indexOf(fq.methodMap,q.toLowerCase());if($>=0)q=$;else q=parseInt(q,10)}return q},log:function(q){if(q=fq.lookupLevel(q),typeof console<"u"&&fq.lookupLevel(fq.level)<=q){var $=fq.methodMap[q];if(!console[$])$="log";for(var f=arguments.length,K=Array(f>1?f-1:0),P=1;P<f;P++)K[P-1]=arguments[P];console[$].apply(console,K)}}};D$.default=fq;x$.exports=D$.default});var L$=H((lK)=>{lK.__esModule=!0;lK.createNewLookupObject=CK;var SK=p();function CK(){for(var _=arguments.length,q=Array(_),$=0;$<_;$++)q[$]=arguments[$];return SK.extend.apply(void 0,[Object.create(null)].concat(q))}});var T_=H((DK)=>{DK.__esModule=!0;DK.createProtoAccessControl=RK;DK.resultIsAllowed=gK;DK.resetLoggedProperties=yK;function NK(_){return _&&_.__esModule?_:{default:_}}var s$=L$(),cK=h_(),EK=NK(cK),iq=Object.create(null);function RK(_){var q=Object.create(null);q.constructor=!1,q.__defineGetter__=!1,q.__defineSetter__=!1,q.__lookupGetter__=!1;var $=Object.create(null);return $.__proto__=!1,{properties:{whitelist:s$.createNewLookupObject($,_.allowedProtoProperties),defaultValue:_.allowProtoPropertiesByDefault},methods:{whitelist:s$.createNewLookupObject(q,_.allowedProtoMethods),defaultValue:_.allowProtoMethodsByDefault}}}function gK(_,q,$){if(typeof _==="function")return B$(q.methods,$);else return B$(q.properties,$)}function B$(_,q){if(_.whitelist[q]!==void 0)return _.whitelist[q]===!0;if(_.defaultValue!==void 0)return _.defaultValue;return IK(q),!1}function IK(_){if(iq[_]!==!0)iq[_]=!0,EK.default.log("error",'Handlebars: Access has been denied to resolve the property "'+_+`" because it is not an "own property" of its parent.
3
+ var y8=Object.create;var{getPrototypeOf:D8,defineProperty:P$,getOwnPropertyNames:x8}=Object;var L8=Object.prototype.hasOwnProperty;function s8(_){return this[_]}var B8,U8,Fq=(_,q,$)=>{var f=_!=null&&typeof _==="object";if(f){var K=q?B8??=new WeakMap:U8??=new WeakMap,P=K.get(_);if(P)return P}$=_!=null?y8(D8(_)):{};let j=q||!_||!_.__esModule?P$($,"default",{value:_,enumerable:!0}):$;for(let v of x8(_))if(!L8.call(j,v))P$(j,v,{get:s8.bind(_,v),enumerable:!0});if(f)K.set(_,j);return j};var H=(_,q)=>()=>(q||_((q={exports:{}}).exports,q),q.exports);var kq=import.meta.require;var q_=H((A7,Qq)=>{var Gq=process||{},j$=Gq.argv||[],tq=Gq.env||{},F8=!(!!tq.NO_COLOR||j$.includes("--no-color"))&&(!!tq.FORCE_COLOR||j$.includes("--color")||Gq.platform==="win32"||(Gq.stdout||{}).isTTY&&tq.TERM!=="dumb"||!!tq.CI),Q8=(_,q,$=_)=>(f)=>{let K=""+f,P=K.indexOf(q,_.length);return~P?_+qf(K,q,$,P)+q:_+K+q},qf=(_,q,$,f)=>{let K="",P=0;do K+=_.substring(P,f)+$,P=f+q.length,f=_.indexOf(q,P);while(~f);return K+_.substring(P)},v$=(_=F8)=>{let q=_?Q8:()=>String;return{isColorSupported:_,reset:q("\x1B[0m","\x1B[0m"),bold:q("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:q("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:q("\x1B[3m","\x1B[23m"),underline:q("\x1B[4m","\x1B[24m"),inverse:q("\x1B[7m","\x1B[27m"),hidden:q("\x1B[8m","\x1B[28m"),strikethrough:q("\x1B[9m","\x1B[29m"),black:q("\x1B[30m","\x1B[39m"),red:q("\x1B[31m","\x1B[39m"),green:q("\x1B[32m","\x1B[39m"),yellow:q("\x1B[33m","\x1B[39m"),blue:q("\x1B[34m","\x1B[39m"),magenta:q("\x1B[35m","\x1B[39m"),cyan:q("\x1B[36m","\x1B[39m"),white:q("\x1B[37m","\x1B[39m"),gray:q("\x1B[90m","\x1B[39m"),bgBlack:q("\x1B[40m","\x1B[49m"),bgRed:q("\x1B[41m","\x1B[49m"),bgGreen:q("\x1B[42m","\x1B[49m"),bgYellow:q("\x1B[43m","\x1B[49m"),bgBlue:q("\x1B[44m","\x1B[49m"),bgMagenta:q("\x1B[45m","\x1B[49m"),bgCyan:q("\x1B[46m","\x1B[49m"),bgWhite:q("\x1B[47m","\x1B[49m"),blackBright:q("\x1B[90m","\x1B[39m"),redBright:q("\x1B[91m","\x1B[39m"),greenBright:q("\x1B[92m","\x1B[39m"),yellowBright:q("\x1B[93m","\x1B[39m"),blueBright:q("\x1B[94m","\x1B[39m"),magentaBright:q("\x1B[95m","\x1B[39m"),cyanBright:q("\x1B[96m","\x1B[39m"),whiteBright:q("\x1B[97m","\x1B[39m"),bgBlackBright:q("\x1B[100m","\x1B[49m"),bgRedBright:q("\x1B[101m","\x1B[49m"),bgGreenBright:q("\x1B[102m","\x1B[49m"),bgYellowBright:q("\x1B[103m","\x1B[49m"),bgBlueBright:q("\x1B[104m","\x1B[49m"),bgMagentaBright:q("\x1B[105m","\x1B[49m"),bgCyanBright:q("\x1B[106m","\x1B[49m"),bgWhiteBright:q("\x1B[107m","\x1B[49m")}};Qq.exports=v$();Qq.exports.createColors=v$});var p=H((zf)=>{zf.__esModule=!0;zf.extend=z$;zf.indexOf=Of;zf.escapeExpression=Yf;zf.isEmpty=hf;zf.createFrame=Tf;zf.blockParams=kf;zf.appendContextPath=rf;var Pf={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},jf=/[&<>"'`=]/g,vf=/[&<>"'`=]/;function wf(_){return Pf[_]}function z$(_){for(var q=1;q<arguments.length;q++)for(var $ in arguments[q])if(Object.prototype.hasOwnProperty.call(arguments[q],$))_[$]=arguments[q][$];return _}var v_=Object.prototype.toString;zf.toString=v_;var j_=function(q){return typeof q==="function"};if(j_(/x/))zf.isFunction=j_=function(_){return typeof _==="function"&&v_.call(_)==="[object Function]"};zf.isFunction=j_;var H$=Array.isArray||function(_){return _&&typeof _==="object"?v_.call(_)==="[object Array]":!1};zf.isArray=H$;function Of(_,q){for(var $=0,f=_.length;$<f;$++)if(_[$]===q)return $;return-1}function Yf(_){if(typeof _!=="string"){if(_&&_.toHTML)return _.toHTML();else if(_==null)return"";else if(!_)return _+"";_=""+_}if(!vf.test(_))return _;return _.replace(jf,wf)}function hf(_){if(!_&&_!==0)return!0;else if(H$(_)&&_.length===0)return!0;else return!1}function Tf(_){var q=z$({},_);return q._parent=_,q}function kf(_,q){return _.path=q,_}function rf(_,q){return(_?_+".":"")+q}});var t=H((W$,J$)=>{W$.__esModule=!0;var w_=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function O_(_,q){var $=q&&q.loc,f=void 0,K=void 0,P=void 0,j=void 0;if($)f=$.start.line,K=$.end.line,P=$.start.column,j=$.end.column,_+=" - "+f+":"+P;var v=Error.prototype.constructor.call(this,_);for(var O=0;O<w_.length;O++)this[w_[O]]=v[w_[O]];if(Error.captureStackTrace)Error.captureStackTrace(this,O_);try{if($)if(this.lineNumber=f,this.endLineNumber=K,Object.defineProperty)Object.defineProperty(this,"column",{value:P,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:j,enumerable:!0});else this.column=P,this.endColumn=j}catch(w){}}O_.prototype=Error();W$.default=O_;J$.exports=W$.default});var u$=H((Z$,m$)=>{Z$.__esModule=!0;var Y_=p();Z$.default=function(_){_.registerHelper("blockHelperMissing",function(q,$){var{inverse:f,fn:K}=$;if(q===!0)return K(this);else if(q===!1||q==null)return f(this);else if(Y_.isArray(q))if(q.length>0){if($.ids)$.ids=[$.name];return _.helpers.each(q,$)}else return f(this);else{if($.data&&$.ids){var P=Y_.createFrame($.data);P.contextPath=Y_.appendContextPath($.data.contextPath,$.name),$={data:P}}return K(q,$)}})};m$.exports=Z$.default});var A$=H((n$,o$)=>{n$.__esModule=!0;function af(_){return _&&_.__esModule?_:{default:_}}var zq=p(),bf=t(),Sf=af(bf);n$.default=function(_){_.registerHelper("each",function(q,$){if(!$)throw new Sf.default("Must pass iterator to #each");var{fn:f,inverse:K}=$,P=0,j="",v=void 0,O=void 0;if($.data&&$.ids)O=zq.appendContextPath($.data.contextPath,$.ids[0])+".";if(zq.isFunction(q))q=q.call(this);if($.data)v=zq.createFrame($.data);function w(W,m,a){if(v){if(v.key=W,v.index=m,v.first=m===0,v.last=!!a,O)v.contextPath=O+W}j=j+f(q[W],{data:v,blockParams:zq.blockParams([q[W],W],[O+W,null])})}if(q&&typeof q==="object")if(zq.isArray(q)){for(var h=q.length;P<h;P++)if(P in q)w(P,P,P===q.length-1)}else if(typeof Symbol==="function"&&q[Symbol.iterator]){var Y=[],T=q[Symbol.iterator]();for(var z=T.next();!z.done;z=T.next())Y.push(z.value);q=Y;for(var h=q.length;P<h;P++)w(P,P,P===q.length-1)}else(function(){var W=void 0;if(Object.keys(q).forEach(function(m){if(W!==void 0)w(W,P-1);W=m,P++}),W!==void 0)w(W,P-1,!0)})();if(P===0)j=K(this);return j})};o$.exports=n$.default});var e$=H((X$,p$)=>{X$.__esModule=!0;function lf(_){return _&&_.__esModule?_:{default:_}}var Mf=t(),Nf=lf(Mf);X$.default=function(_){_.registerHelper("helperMissing",function(){if(arguments.length===1)return;else throw new Nf.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};p$.exports=X$.default});var a$=H((G$,i$)=>{G$.__esModule=!0;function Rf(_){return _&&_.__esModule?_:{default:_}}var d$=p(),gf=t(),t$=Rf(gf);G$.default=function(_){_.registerHelper("if",function(q,$){if(arguments.length!=2)throw new t$.default("#if requires exactly one argument");if(d$.isFunction(q))q=q.call(this);if(!$.hash.includeZero&&!q||d$.isEmpty(q))return $.inverse(this);else return $.fn(this)}),_.registerHelper("unless",function(q,$){if(arguments.length!=2)throw new t$.default("#unless requires exactly one argument");return _.helpers.if.call(this,q,{fn:$.inverse,inverse:$.fn,hash:$.hash})})};i$.exports=G$.default});var C$=H((b$,S$)=>{b$.__esModule=!0;b$.default=function(_){_.registerHelper("log",function(){var q=[void 0],$=arguments[arguments.length-1];for(var f=0;f<arguments.length-1;f++)q.push(arguments[f]);var K=1;if($.hash.level!=null)K=$.hash.level;else if($.data&&$.data.level!=null)K=$.data.level;q[0]=K,_.log.apply(_,q)})};S$.exports=b$.default});var M$=H((V$,l$)=>{V$.__esModule=!0;V$.default=function(_){_.registerHelper("lookup",function(q,$,f){if(!q)return q;return f.lookupProperty(q,$)})};l$.exports=V$.default});var E$=H((N$,c$)=>{N$.__esModule=!0;function Bf(_){return _&&_.__esModule?_:{default:_}}var Hq=p(),Uf=t(),Ff=Bf(Uf);N$.default=function(_){_.registerHelper("with",function(q,$){if(arguments.length!=2)throw new Ff.default("#with requires exactly one argument");if(Hq.isFunction(q))q=q.call(this);var f=$.fn;if(!Hq.isEmpty(q)){var K=$.data;if($.data&&$.ids)K=Hq.createFrame($.data),K.contextPath=Hq.appendContextPath($.data.contextPath,$.ids[0]);return f(q,{data:K,blockParams:Hq.blockParams([q],[K&&K.contextPath])})}else return $.inverse(this)})};c$.exports=N$.default});var h_=H((WK)=>{WK.__esModule=!0;WK.registerDefaultHelpers=zK;WK.moveHelperToHooks=HK;function L(_){return _&&_.__esModule?_:{default:_}}var _K=u$(),$K=L(_K),fK=A$(),KK=L(fK),PK=e$(),jK=L(PK),vK=a$(),wK=L(vK),OK=C$(),YK=L(OK),hK=M$(),TK=L(hK),kK=E$(),rK=L(kK);function zK(_){$K.default(_),KK.default(_),jK.default(_),wK.default(_),YK.default(_),TK.default(_),rK.default(_)}function HK(_,q,$){if(_.helpers[q]){if(_.hooks[q]=_.helpers[q],!$)delete _.helpers[q]}}});var I$=H((R$,g$)=>{R$.__esModule=!0;var uK=p();R$.default=function(_){_.registerDecorator("inline",function(q,$,f,K){var P=q;if(!$.partials)$.partials={},P=function(j,v){var O=f.partials;f.partials=uK.extend({},O,$.partials);var w=q(j,v);return f.partials=O,w};return $.partials[K.args[0]]=K.fn,P})};g$.exports=R$.default});var y$=H((dK)=>{dK.__esModule=!0;dK.registerDefaultDecorators=eK;function AK(_){return _&&_.__esModule?_:{default:_}}var XK=I$(),pK=AK(XK);function eK(_){pK.default(_)}});var T_=H((D$,x$)=>{D$.__esModule=!0;var iK=p(),fq={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(q){if(typeof q==="string"){var $=iK.indexOf(fq.methodMap,q.toLowerCase());if($>=0)q=$;else q=parseInt(q,10)}return q},log:function(q){if(q=fq.lookupLevel(q),typeof console<"u"&&fq.lookupLevel(fq.level)<=q){var $=fq.methodMap[q];if(!console[$])$="log";for(var f=arguments.length,K=Array(f>1?f-1:0),P=1;P<f;P++)K[P-1]=arguments[P];console[$].apply(console,K)}}};D$.default=fq;x$.exports=D$.default});var L$=H((VK)=>{VK.__esModule=!0;VK.createNewLookupObject=CK;var SK=p();function CK(){for(var _=arguments.length,q=Array(_),$=0;$<_;$++)q[$]=arguments[$];return SK.extend.apply(void 0,[Object.create(null)].concat(q))}});var k_=H((DK)=>{DK.__esModule=!0;DK.createProtoAccessControl=RK;DK.resultIsAllowed=gK;DK.resetLoggedProperties=yK;function NK(_){return _&&_.__esModule?_:{default:_}}var s$=L$(),cK=T_(),EK=NK(cK),aq=Object.create(null);function RK(_){var q=Object.create(null);q.constructor=!1,q.__defineGetter__=!1,q.__defineSetter__=!1,q.__lookupGetter__=!1;var $=Object.create(null);return $.__proto__=!1,{properties:{whitelist:s$.createNewLookupObject($,_.allowedProtoProperties),defaultValue:_.allowProtoPropertiesByDefault},methods:{whitelist:s$.createNewLookupObject(q,_.allowedProtoMethods),defaultValue:_.allowProtoMethodsByDefault}}}function gK(_,q,$){if(typeof _==="function")return B$(q.methods,$);else return B$(q.properties,$)}function B$(_,q){if(_.whitelist[q]!==void 0)return _.whitelist[q]===!0;if(_.defaultValue!==void 0)return _.defaultValue;return IK(q),!1}function IK(_){if(aq[_]!==!0)aq[_]=!0,EK.default.log("error",'Handlebars: Access has been denied to resolve the property "'+_+`" because it is not an "own property" of its parent.
4
4
  You can add a runtime option to disable the check or this warning:
5
- See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`)}function yK(){Object.keys(iq).forEach(function(_){delete iq[_]})}});var bq=H((vP)=>{vP.__esModule=!0;vP.HandlebarsEnvironment=z_;function U$(_){return _&&_.__esModule?_:{default:_}}var s=p(),UK=t(),k_=U$(UK),FK=Y_(),QK=y$(),qP=h_(),aq=U$(qP),_P=T_(),$P="4.7.8";vP.VERSION=$P;var fP=8;vP.COMPILER_REVISION=fP;var KP=7;vP.LAST_COMPATIBLE_COMPILER_REVISION=KP;var PP={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};vP.REVISION_CHANGES=PP;var r_="[object Object]";function z_(_,q,$){this.helpers=_||{},this.partials=q||{},this.decorators=$||{},FK.registerDefaultHelpers(this),QK.registerDefaultDecorators(this)}z_.prototype={constructor:z_,logger:aq.default,log:aq.default.log,registerHelper:function(q,$){if(s.toString.call(q)===r_){if($)throw new k_.default("Arg not supported with multiple helpers");s.extend(this.helpers,q)}else this.helpers[q]=$},unregisterHelper:function(q){delete this.helpers[q]},registerPartial:function(q,$){if(s.toString.call(q)===r_)s.extend(this.partials,q);else{if(typeof $>"u")throw new k_.default('Attempting to register a partial called "'+q+'" as undefined');this.partials[q]=$}},unregisterPartial:function(q){delete this.partials[q]},registerDecorator:function(q,$){if(s.toString.call(q)===r_){if($)throw new k_.default("Arg not supported with multiple decorators");s.extend(this.decorators,q)}else this.decorators[q]=$},unregisterDecorator:function(q){delete this.decorators[q]},resetLoggedPropertyAccesses:function(){_P.resetLoggedProperties()}};var jP=aq.default.log;vP.log=jP;vP.createFrame=s.createFrame;vP.logger=aq.default});var q6=H((F$,Q$)=>{F$.__esModule=!0;function H_(_){this.string=_}H_.prototype.toString=H_.prototype.toHTML=function(){return""+this.string};F$.default=H_;Q$.exports=F$.default});var _6=H((mP)=>{mP.__esModule=!0;mP.wrapHelper=ZP;function ZP(_,q){if(typeof _!=="function")return _;var $=function(){var K=arguments[arguments.length-1];return arguments[arguments.length-1]=q(K),_.apply(this,arguments)};return $}});var j6=H((CP)=>{CP.__esModule=!0;CP.checkRevision=dP;CP.template=tP;CP.wrapProgram=Sq;CP.resolvePartial=GP;CP.invokePartial=iP;CP.noop=K6;function nP(_){return _&&_.__esModule?_:{default:_}}function AP(_){if(_&&_.__esModule)return _;else{var q={};if(_!=null){for(var $ in _)if(Object.prototype.hasOwnProperty.call(_,$))q[$]=_[$]}return q.default=_,q}}var XP=p(),M=AP(XP),pP=t(),N=nP(pP),c=bq(),$6=Y_(),eP=_6(),f6=T_();function dP(_){var q=_&&_[0]||1,$=c.COMPILER_REVISION;if(q>=c.LAST_COMPATIBLE_COMPILER_REVISION&&q<=c.COMPILER_REVISION)return;if(q<c.LAST_COMPATIBLE_COMPILER_REVISION){var f=c.REVISION_CHANGES[$],K=c.REVISION_CHANGES[q];throw new N.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+f+") or downgrade your runtime to an older version ("+K+").")}else throw new N.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+_[1]+").")}function tP(_,q){if(!q)throw new N.default("No environment passed to template");if(!_||!_.main)throw new N.default("Unknown template object: "+typeof _);_.main.decorator=_.main_d,q.VM.checkRevision(_.compiler);var $=_.compiler&&_.compiler[0]===7;function f(j,w,O){if(O.hash){if(w=M.extend({},w,O.hash),O.ids)O.ids[0]=!0}j=q.VM.resolvePartial.call(this,j,w,O);var v=M.extend({},O,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),h=q.VM.invokePartial.call(this,j,w,v);if(h==null&&q.compile)O.partials[O.name]=q.compile(j,_.compilerOptions,q),h=O.partials[O.name](w,v);if(h!=null){if(O.indent){var Y=h.split(`
5
+ See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`)}function yK(){Object.keys(aq).forEach(function(_){delete aq[_]})}});var Sq=H((vP)=>{vP.__esModule=!0;vP.HandlebarsEnvironment=H_;function U$(_){return _&&_.__esModule?_:{default:_}}var s=p(),UK=t(),r_=U$(UK),FK=h_(),QK=y$(),qP=T_(),bq=U$(qP),_P=k_(),$P="4.7.8";vP.VERSION=$P;var fP=8;vP.COMPILER_REVISION=fP;var KP=7;vP.LAST_COMPATIBLE_COMPILER_REVISION=KP;var PP={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};vP.REVISION_CHANGES=PP;var z_="[object Object]";function H_(_,q,$){this.helpers=_||{},this.partials=q||{},this.decorators=$||{},FK.registerDefaultHelpers(this),QK.registerDefaultDecorators(this)}H_.prototype={constructor:H_,logger:bq.default,log:bq.default.log,registerHelper:function(q,$){if(s.toString.call(q)===z_){if($)throw new r_.default("Arg not supported with multiple helpers");s.extend(this.helpers,q)}else this.helpers[q]=$},unregisterHelper:function(q){delete this.helpers[q]},registerPartial:function(q,$){if(s.toString.call(q)===z_)s.extend(this.partials,q);else{if(typeof $>"u")throw new r_.default('Attempting to register a partial called "'+q+'" as undefined');this.partials[q]=$}},unregisterPartial:function(q){delete this.partials[q]},registerDecorator:function(q,$){if(s.toString.call(q)===z_){if($)throw new r_.default("Arg not supported with multiple decorators");s.extend(this.decorators,q)}else this.decorators[q]=$},unregisterDecorator:function(q){delete this.decorators[q]},resetLoggedPropertyAccesses:function(){_P.resetLoggedProperties()}};var jP=bq.default.log;vP.log=jP;vP.createFrame=s.createFrame;vP.logger=bq.default});var q6=H((F$,Q$)=>{F$.__esModule=!0;function W_(_){this.string=_}W_.prototype.toString=W_.prototype.toHTML=function(){return""+this.string};F$.default=W_;Q$.exports=F$.default});var _6=H((mP)=>{mP.__esModule=!0;mP.wrapHelper=ZP;function ZP(_,q){if(typeof _!=="function")return _;var $=function(){var K=arguments[arguments.length-1];return arguments[arguments.length-1]=q(K),_.apply(this,arguments)};return $}});var j6=H((CP)=>{CP.__esModule=!0;CP.checkRevision=dP;CP.template=tP;CP.wrapProgram=Cq;CP.resolvePartial=GP;CP.invokePartial=iP;CP.noop=K6;function oP(_){return _&&_.__esModule?_:{default:_}}function AP(_){if(_&&_.__esModule)return _;else{var q={};if(_!=null){for(var $ in _)if(Object.prototype.hasOwnProperty.call(_,$))q[$]=_[$]}return q.default=_,q}}var XP=p(),N=AP(XP),pP=t(),c=oP(pP),E=Sq(),$6=h_(),eP=_6(),f6=k_();function dP(_){var q=_&&_[0]||1,$=E.COMPILER_REVISION;if(q>=E.LAST_COMPATIBLE_COMPILER_REVISION&&q<=E.COMPILER_REVISION)return;if(q<E.LAST_COMPATIBLE_COMPILER_REVISION){var f=E.REVISION_CHANGES[$],K=E.REVISION_CHANGES[q];throw new c.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+f+") or downgrade your runtime to an older version ("+K+").")}else throw new c.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+_[1]+").")}function tP(_,q){if(!q)throw new c.default("No environment passed to template");if(!_||!_.main)throw new c.default("Unknown template object: "+typeof _);_.main.decorator=_.main_d,q.VM.checkRevision(_.compiler);var $=_.compiler&&_.compiler[0]===7;function f(j,v,O){if(O.hash){if(v=N.extend({},v,O.hash),O.ids)O.ids[0]=!0}j=q.VM.resolvePartial.call(this,j,v,O);var w=N.extend({},O,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),h=q.VM.invokePartial.call(this,j,v,w);if(h==null&&q.compile)O.partials[O.name]=q.compile(j,_.compilerOptions,q),h=O.partials[O.name](v,w);if(h!=null){if(O.indent){var Y=h.split(`
6
6
  `);for(var T=0,z=Y.length;T<z;T++){if(!Y[T]&&T+1===z)break;Y[T]=O.indent+Y[T]}h=Y.join(`
7
- `)}return h}else throw new N.default("The partial "+O.name+" could not be compiled when running in runtime-only mode")}var K={strict:function(w,O,v){if(!w||!(O in w))throw new N.default('"'+O+'" not defined in '+w,{loc:v});return K.lookupProperty(w,O)},lookupProperty:function(w,O){var v=w[O];if(v==null)return v;if(Object.prototype.hasOwnProperty.call(w,O))return v;if(f6.resultIsAllowed(v,K.protoAccessControl,O))return v;return},lookup:function(w,O){var v=w.length;for(var h=0;h<v;h++){var Y=w[h]&&K.lookupProperty(w[h],O);if(Y!=null)return w[h][O]}},lambda:function(w,O){return typeof w==="function"?w.call(O):w},escapeExpression:M.escapeExpression,invokePartial:f,fn:function(w){var O=_[w];return O.decorator=_[w+"_d"],O},programs:[],program:function(w,O,v,h,Y){var T=this.programs[w],z=this.fn(w);if(O||Y||h||v)T=Sq(this,w,z,O,v,h,Y);else if(!T)T=this.programs[w]=Sq(this,w,z);return T},data:function(w,O){while(w&&O--)w=w._parent;return w},mergeIfNeeded:function(w,O){var v=w||O;if(w&&O&&w!==O)v=M.extend({},O,w);return v},nullContext:Object.seal({}),noop:q.VM.noop,compilerInfo:_.compiler};function P(j){var w=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],O=w.data;if(P._setup(w),!w.partial&&_.useData)O=aP(j,O);var v=void 0,h=_.useBlockParams?[]:void 0;if(_.useDepths)if(w.depths)v=j!=w.depths[0]?[j].concat(w.depths):w.depths;else v=[j];function Y(T){return""+_.main(K,T,K.helpers,K.partials,O,h,v)}return Y=P6(_.main,Y,K,w.depths||[],O,h),Y(j,w)}return P.isTop=!0,P._setup=function(j){if(!j.partial){var w=M.extend({},q.helpers,j.helpers);if(bP(w,K),K.helpers=w,_.usePartial)K.partials=K.mergeIfNeeded(j.partials,q.partials);if(_.usePartial||_.useDecorators)K.decorators=M.extend({},q.decorators,j.decorators);K.hooks={},K.protoAccessControl=f6.createProtoAccessControl(j);var O=j.allowCallsToHelperMissing||$;$6.moveHelperToHooks(K,"helperMissing",O),$6.moveHelperToHooks(K,"blockHelperMissing",O)}else K.protoAccessControl=j.protoAccessControl,K.helpers=j.helpers,K.partials=j.partials,K.decorators=j.decorators,K.hooks=j.hooks},P._child=function(j,w,O,v){if(_.useBlockParams&&!O)throw new N.default("must pass block params");if(_.useDepths&&!v)throw new N.default("must pass parent depths");return Sq(K,j,_[j],w,0,O,v)},P}function Sq(_,q,$,f,K,P,j){function w(O){var v=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],h=j;if(j&&O!=j[0]&&!(O===_.nullContext&&j[0]===null))h=[O].concat(j);return $(_,O,_.helpers,_.partials,v.data||f,P&&[v.blockParams].concat(P),h)}return w=P6($,w,_,j,f,P),w.program=q,w.depth=j?j.length:0,w.blockParams=K||0,w}function GP(_,q,$){if(!_)if($.name==="@partial-block")_=$.data["partial-block"];else _=$.partials[$.name];else if(!_.call&&!$.name)$.name=_,_=$.partials[_];return _}function iP(_,q,$){var f=$.data&&$.data["partial-block"];if($.partial=!0,$.ids)$.data.contextPath=$.ids[0]||$.data.contextPath;var K=void 0;if($.fn&&$.fn!==K6)(function(){$.data=c.createFrame($.data);var P=$.fn;if(K=$.data["partial-block"]=function(w){var O=arguments.length<=1||arguments[1]===void 0?{}:arguments[1];return O.data=c.createFrame(O.data),O.data["partial-block"]=f,P(w,O)},P.partials)$.partials=M.extend({},$.partials,P.partials)})();if(_===void 0&&K)_=K;if(_===void 0)throw new N.default("The partial "+$.name+" could not be found");else if(_ instanceof Function)return _(q,$)}function K6(){return""}function aP(_,q){if(!q||!("root"in q))q=q?c.createFrame(q):{},q.root=_;return q}function P6(_,q,$,f,K,P){if(_.decorator){var j={};q=_.decorator(q,j,$,f&&f[0],K,P,f),M.extend(q,j)}return q}function bP(_,q){Object.keys(_).forEach(function($){var f=_[$];_[$]=SP(f,q)})}function SP(_,q){var $=q.lookupProperty;return eP.wrapHelper(_,function(f){return M.extend({lookupProperty:$},f)})}});var W_=H((v6,w6)=>{v6.__esModule=!0;v6.default=function(_){(function(){if(typeof globalThis==="object")return;Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__})();var q=globalThis.Handlebars;_.noConflict=function(){if(globalThis.Handlebars===_)globalThis.Handlebars=q;return _}};w6.exports=v6.default});var r6=H((T6,k6)=>{T6.__esModule=!0;function Z_(_){return _&&_.__esModule?_:{default:_}}function m_(_){if(_&&_.__esModule)return _;else{var q={};if(_!=null){for(var $ in _)if(Object.prototype.hasOwnProperty.call(_,$))q[$]=_[$]}return q.default=_,q}}var yP=bq(),O6=m_(yP),DP=q6(),xP=Z_(DP),LP=t(),sP=Z_(LP),BP=p(),J_=m_(BP),UP=j6(),Y6=m_(UP),FP=W_(),QP=Z_(FP);function h6(){var _=new O6.HandlebarsEnvironment;return J_.extend(_,O6),_.SafeString=xP.default,_.Exception=sP.default,_.Utils=J_,_.escapeExpression=J_.escapeExpression,_.VM=Y6,_.template=function(q){return Y6.template(q,_)},_}var Wq=h6();Wq.create=h6;QP.default(Wq);Wq.default=Wq;T6.default=Wq;k6.exports=T6.default});var u_=H((H6,W6)=>{H6.__esModule=!0;var z6={helpers:{helperExpression:function(q){return q.type==="SubExpression"||(q.type==="MustacheStatement"||q.type==="BlockStatement")&&!!(q.params&&q.params.length||q.hash)},scopedId:function(q){return/^\.|this\b/.test(q.original)},simpleId:function(q){return q.parts.length===1&&!z6.helpers.scopedId(q)&&!q.depth}}};H6.default=z6;W6.exports=H6.default});var m6=H((J6,Z6)=>{J6.__esModule=!0;var Kj=function(){var _={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(K,P,j,w,O,v,h){var Y=v.length-1;switch(O){case 1:return v[Y-1];case 2:this.$=w.prepareProgram(v[Y]);break;case 3:this.$=v[Y];break;case 4:this.$=v[Y];break;case 5:this.$=v[Y];break;case 6:this.$=v[Y];break;case 7:this.$=v[Y];break;case 8:this.$=v[Y];break;case 9:this.$={type:"CommentStatement",value:w.stripComment(v[Y]),strip:w.stripFlags(v[Y],v[Y]),loc:w.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:v[Y],value:v[Y],loc:w.locInfo(this._$)};break;case 11:this.$=w.prepareRawBlock(v[Y-2],v[Y-1],v[Y],this._$);break;case 12:this.$={path:v[Y-3],params:v[Y-2],hash:v[Y-1]};break;case 13:this.$=w.prepareBlock(v[Y-3],v[Y-2],v[Y-1],v[Y],!1,this._$);break;case 14:this.$=w.prepareBlock(v[Y-3],v[Y-2],v[Y-1],v[Y],!0,this._$);break;case 15:this.$={open:v[Y-5],path:v[Y-4],params:v[Y-3],hash:v[Y-2],blockParams:v[Y-1],strip:w.stripFlags(v[Y-5],v[Y])};break;case 16:this.$={path:v[Y-4],params:v[Y-3],hash:v[Y-2],blockParams:v[Y-1],strip:w.stripFlags(v[Y-5],v[Y])};break;case 17:this.$={path:v[Y-4],params:v[Y-3],hash:v[Y-2],blockParams:v[Y-1],strip:w.stripFlags(v[Y-5],v[Y])};break;case 18:this.$={strip:w.stripFlags(v[Y-1],v[Y-1]),program:v[Y]};break;case 19:var T=w.prepareBlock(v[Y-2],v[Y-1],v[Y],v[Y],!1,this._$),z=w.prepareProgram([T],v[Y-1].loc);z.chained=!0,this.$={strip:v[Y-2].strip,program:z,chain:!0};break;case 20:this.$=v[Y];break;case 21:this.$={path:v[Y-1],strip:w.stripFlags(v[Y-2],v[Y])};break;case 22:this.$=w.prepareMustache(v[Y-3],v[Y-2],v[Y-1],v[Y-4],w.stripFlags(v[Y-4],v[Y]),this._$);break;case 23:this.$=w.prepareMustache(v[Y-3],v[Y-2],v[Y-1],v[Y-4],w.stripFlags(v[Y-4],v[Y]),this._$);break;case 24:this.$={type:"PartialStatement",name:v[Y-3],params:v[Y-2],hash:v[Y-1],indent:"",strip:w.stripFlags(v[Y-4],v[Y]),loc:w.locInfo(this._$)};break;case 25:this.$=w.preparePartialBlock(v[Y-2],v[Y-1],v[Y],this._$);break;case 26:this.$={path:v[Y-3],params:v[Y-2],hash:v[Y-1],strip:w.stripFlags(v[Y-4],v[Y])};break;case 27:this.$=v[Y];break;case 28:this.$=v[Y];break;case 29:this.$={type:"SubExpression",path:v[Y-3],params:v[Y-2],hash:v[Y-1],loc:w.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:v[Y],loc:w.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:w.id(v[Y-2]),value:v[Y],loc:w.locInfo(this._$)};break;case 32:this.$=w.id(v[Y-1]);break;case 33:this.$=v[Y];break;case 34:this.$=v[Y];break;case 35:this.$={type:"StringLiteral",value:v[Y],original:v[Y],loc:w.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(v[Y]),original:Number(v[Y]),loc:w.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:v[Y]==="true",original:v[Y]==="true",loc:w.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:w.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:w.locInfo(this._$)};break;case 40:this.$=v[Y];break;case 41:this.$=v[Y];break;case 42:this.$=w.preparePath(!0,v[Y],this._$);break;case 43:this.$=w.preparePath(!1,v[Y],this._$);break;case 44:v[Y-2].push({part:w.id(v[Y]),original:v[Y],separator:v[Y-1]}),this.$=v[Y-2];break;case 45:this.$=[{part:w.id(v[Y]),original:v[Y]}];break;case 46:this.$=[];break;case 47:v[Y-1].push(v[Y]);break;case 48:this.$=[];break;case 49:v[Y-1].push(v[Y]);break;case 50:this.$=[];break;case 51:v[Y-1].push(v[Y]);break;case 58:this.$=[];break;case 59:v[Y-1].push(v[Y]);break;case 64:this.$=[];break;case 65:v[Y-1].push(v[Y]);break;case 70:this.$=[];break;case 71:v[Y-1].push(v[Y]);break;case 78:this.$=[];break;case 79:v[Y-1].push(v[Y]);break;case 82:this.$=[];break;case 83:v[Y-1].push(v[Y]);break;case 86:this.$=[];break;case 87:v[Y-1].push(v[Y]);break;case 90:this.$=[];break;case 91:v[Y-1].push(v[Y]);break;case 94:this.$=[];break;case 95:v[Y-1].push(v[Y]);break;case 98:this.$=[v[Y]];break;case 99:v[Y-1].push(v[Y]);break;case 100:this.$=[v[Y]];break;case 101:v[Y-1].push(v[Y]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(K,P){throw Error(K)},parse:function(K){var P=this,j=[0],w=[null],O=[],v=this.table,h="",Y=0,T=0,z=0,W=2,m=1;if(this.lexer.setInput(K),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u")this.lexer.yylloc={};var a=this.lexer.yylloc;O.push(a);var n=this.lexer.options&&this.lexer.options.ranges;if(typeof this.yy.parseError==="function")this.parseError=this.yy.parseError;function D(V){j.length=j.length-2*V,w.length=w.length-V,O.length=O.length-V}function Xq(){var V=P.lexer.lex()||1;if(typeof V!=="number")V=P.symbols_[V]||V;return V}var X,Lq,x,d,o7,sq,_q={},pq,l,K$,eq;while(!0){if(x=j[j.length-1],this.defaultActions[x])d=this.defaultActions[x];else{if(X===null||typeof X>"u")X=Xq();d=v[x]&&v[x][X]}if(typeof d>"u"||!d.length||!d[0]){var Bq="";if(!z){eq=[];for(pq in v[x])if(this.terminals_[pq]&&pq>2)eq.push("'"+this.terminals_[pq]+"'");if(this.lexer.showPosition)Bq="Parse error on line "+(Y+1)+`:
7
+ `)}return h}else throw new c.default("The partial "+O.name+" could not be compiled when running in runtime-only mode")}var K={strict:function(v,O,w){if(!v||!(O in v))throw new c.default('"'+O+'" not defined in '+v,{loc:w});return K.lookupProperty(v,O)},lookupProperty:function(v,O){var w=v[O];if(w==null)return w;if(Object.prototype.hasOwnProperty.call(v,O))return w;if(f6.resultIsAllowed(w,K.protoAccessControl,O))return w;return},lookup:function(v,O){var w=v.length;for(var h=0;h<w;h++){var Y=v[h]&&K.lookupProperty(v[h],O);if(Y!=null)return v[h][O]}},lambda:function(v,O){return typeof v==="function"?v.call(O):v},escapeExpression:N.escapeExpression,invokePartial:f,fn:function(v){var O=_[v];return O.decorator=_[v+"_d"],O},programs:[],program:function(v,O,w,h,Y){var T=this.programs[v],z=this.fn(v);if(O||Y||h||w)T=Cq(this,v,z,O,w,h,Y);else if(!T)T=this.programs[v]=Cq(this,v,z);return T},data:function(v,O){while(v&&O--)v=v._parent;return v},mergeIfNeeded:function(v,O){var w=v||O;if(v&&O&&v!==O)w=N.extend({},O,v);return w},nullContext:Object.seal({}),noop:q.VM.noop,compilerInfo:_.compiler};function P(j){var v=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],O=v.data;if(P._setup(v),!v.partial&&_.useData)O=aP(j,O);var w=void 0,h=_.useBlockParams?[]:void 0;if(_.useDepths)if(v.depths)w=j!=v.depths[0]?[j].concat(v.depths):v.depths;else w=[j];function Y(T){return""+_.main(K,T,K.helpers,K.partials,O,h,w)}return Y=P6(_.main,Y,K,v.depths||[],O,h),Y(j,v)}return P.isTop=!0,P._setup=function(j){if(!j.partial){var v=N.extend({},q.helpers,j.helpers);if(bP(v,K),K.helpers=v,_.usePartial)K.partials=K.mergeIfNeeded(j.partials,q.partials);if(_.usePartial||_.useDecorators)K.decorators=N.extend({},q.decorators,j.decorators);K.hooks={},K.protoAccessControl=f6.createProtoAccessControl(j);var O=j.allowCallsToHelperMissing||$;$6.moveHelperToHooks(K,"helperMissing",O),$6.moveHelperToHooks(K,"blockHelperMissing",O)}else K.protoAccessControl=j.protoAccessControl,K.helpers=j.helpers,K.partials=j.partials,K.decorators=j.decorators,K.hooks=j.hooks},P._child=function(j,v,O,w){if(_.useBlockParams&&!O)throw new c.default("must pass block params");if(_.useDepths&&!w)throw new c.default("must pass parent depths");return Cq(K,j,_[j],v,0,O,w)},P}function Cq(_,q,$,f,K,P,j){function v(O){var w=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],h=j;if(j&&O!=j[0]&&!(O===_.nullContext&&j[0]===null))h=[O].concat(j);return $(_,O,_.helpers,_.partials,w.data||f,P&&[w.blockParams].concat(P),h)}return v=P6($,v,_,j,f,P),v.program=q,v.depth=j?j.length:0,v.blockParams=K||0,v}function GP(_,q,$){if(!_)if($.name==="@partial-block")_=$.data["partial-block"];else _=$.partials[$.name];else if(!_.call&&!$.name)$.name=_,_=$.partials[_];return _}function iP(_,q,$){var f=$.data&&$.data["partial-block"];if($.partial=!0,$.ids)$.data.contextPath=$.ids[0]||$.data.contextPath;var K=void 0;if($.fn&&$.fn!==K6)(function(){$.data=E.createFrame($.data);var P=$.fn;if(K=$.data["partial-block"]=function(v){var O=arguments.length<=1||arguments[1]===void 0?{}:arguments[1];return O.data=E.createFrame(O.data),O.data["partial-block"]=f,P(v,O)},P.partials)$.partials=N.extend({},$.partials,P.partials)})();if(_===void 0&&K)_=K;if(_===void 0)throw new c.default("The partial "+$.name+" could not be found");else if(_ instanceof Function)return _(q,$)}function K6(){return""}function aP(_,q){if(!q||!("root"in q))q=q?E.createFrame(q):{},q.root=_;return q}function P6(_,q,$,f,K,P){if(_.decorator){var j={};q=_.decorator(q,j,$,f&&f[0],K,P,f),N.extend(q,j)}return q}function bP(_,q){Object.keys(_).forEach(function($){var f=_[$];_[$]=SP(f,q)})}function SP(_,q){var $=q.lookupProperty;return eP.wrapHelper(_,function(f){return N.extend({lookupProperty:$},f)})}});var J_=H((v6,w6)=>{v6.__esModule=!0;v6.default=function(_){(function(){if(typeof globalThis==="object")return;Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__})();var q=globalThis.Handlebars;_.noConflict=function(){if(globalThis.Handlebars===_)globalThis.Handlebars=q;return _}};w6.exports=v6.default});var r6=H((T6,k6)=>{T6.__esModule=!0;function m_(_){return _&&_.__esModule?_:{default:_}}function u_(_){if(_&&_.__esModule)return _;else{var q={};if(_!=null){for(var $ in _)if(Object.prototype.hasOwnProperty.call(_,$))q[$]=_[$]}return q.default=_,q}}var yP=Sq(),O6=u_(yP),DP=q6(),xP=m_(DP),LP=t(),sP=m_(LP),BP=p(),Z_=u_(BP),UP=j6(),Y6=u_(UP),FP=J_(),QP=m_(FP);function h6(){var _=new O6.HandlebarsEnvironment;return Z_.extend(_,O6),_.SafeString=xP.default,_.Exception=sP.default,_.Utils=Z_,_.escapeExpression=Z_.escapeExpression,_.VM=Y6,_.template=function(q){return Y6.template(q,_)},_}var Wq=h6();Wq.create=h6;QP.default(Wq);Wq.default=Wq;T6.default=Wq;k6.exports=T6.default});var n_=H((H6,W6)=>{H6.__esModule=!0;var z6={helpers:{helperExpression:function(q){return q.type==="SubExpression"||(q.type==="MustacheStatement"||q.type==="BlockStatement")&&!!(q.params&&q.params.length||q.hash)},scopedId:function(q){return/^\.|this\b/.test(q.original)},simpleId:function(q){return q.parts.length===1&&!z6.helpers.scopedId(q)&&!q.depth}}};H6.default=z6;W6.exports=H6.default});var m6=H((J6,Z6)=>{J6.__esModule=!0;var Kj=function(){var _={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(K,P,j,v,O,w,h){var Y=w.length-1;switch(O){case 1:return w[Y-1];case 2:this.$=v.prepareProgram(w[Y]);break;case 3:this.$=w[Y];break;case 4:this.$=w[Y];break;case 5:this.$=w[Y];break;case 6:this.$=w[Y];break;case 7:this.$=w[Y];break;case 8:this.$=w[Y];break;case 9:this.$={type:"CommentStatement",value:v.stripComment(w[Y]),strip:v.stripFlags(w[Y],w[Y]),loc:v.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:w[Y],value:w[Y],loc:v.locInfo(this._$)};break;case 11:this.$=v.prepareRawBlock(w[Y-2],w[Y-1],w[Y],this._$);break;case 12:this.$={path:w[Y-3],params:w[Y-2],hash:w[Y-1]};break;case 13:this.$=v.prepareBlock(w[Y-3],w[Y-2],w[Y-1],w[Y],!1,this._$);break;case 14:this.$=v.prepareBlock(w[Y-3],w[Y-2],w[Y-1],w[Y],!0,this._$);break;case 15:this.$={open:w[Y-5],path:w[Y-4],params:w[Y-3],hash:w[Y-2],blockParams:w[Y-1],strip:v.stripFlags(w[Y-5],w[Y])};break;case 16:this.$={path:w[Y-4],params:w[Y-3],hash:w[Y-2],blockParams:w[Y-1],strip:v.stripFlags(w[Y-5],w[Y])};break;case 17:this.$={path:w[Y-4],params:w[Y-3],hash:w[Y-2],blockParams:w[Y-1],strip:v.stripFlags(w[Y-5],w[Y])};break;case 18:this.$={strip:v.stripFlags(w[Y-1],w[Y-1]),program:w[Y]};break;case 19:var T=v.prepareBlock(w[Y-2],w[Y-1],w[Y],w[Y],!1,this._$),z=v.prepareProgram([T],w[Y-1].loc);z.chained=!0,this.$={strip:w[Y-2].strip,program:z,chain:!0};break;case 20:this.$=w[Y];break;case 21:this.$={path:w[Y-1],strip:v.stripFlags(w[Y-2],w[Y])};break;case 22:this.$=v.prepareMustache(w[Y-3],w[Y-2],w[Y-1],w[Y-4],v.stripFlags(w[Y-4],w[Y]),this._$);break;case 23:this.$=v.prepareMustache(w[Y-3],w[Y-2],w[Y-1],w[Y-4],v.stripFlags(w[Y-4],w[Y]),this._$);break;case 24:this.$={type:"PartialStatement",name:w[Y-3],params:w[Y-2],hash:w[Y-1],indent:"",strip:v.stripFlags(w[Y-4],w[Y]),loc:v.locInfo(this._$)};break;case 25:this.$=v.preparePartialBlock(w[Y-2],w[Y-1],w[Y],this._$);break;case 26:this.$={path:w[Y-3],params:w[Y-2],hash:w[Y-1],strip:v.stripFlags(w[Y-4],w[Y])};break;case 27:this.$=w[Y];break;case 28:this.$=w[Y];break;case 29:this.$={type:"SubExpression",path:w[Y-3],params:w[Y-2],hash:w[Y-1],loc:v.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:w[Y],loc:v.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:v.id(w[Y-2]),value:w[Y],loc:v.locInfo(this._$)};break;case 32:this.$=v.id(w[Y-1]);break;case 33:this.$=w[Y];break;case 34:this.$=w[Y];break;case 35:this.$={type:"StringLiteral",value:w[Y],original:w[Y],loc:v.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(w[Y]),original:Number(w[Y]),loc:v.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:w[Y]==="true",original:w[Y]==="true",loc:v.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:v.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:v.locInfo(this._$)};break;case 40:this.$=w[Y];break;case 41:this.$=w[Y];break;case 42:this.$=v.preparePath(!0,w[Y],this._$);break;case 43:this.$=v.preparePath(!1,w[Y],this._$);break;case 44:w[Y-2].push({part:v.id(w[Y]),original:w[Y],separator:w[Y-1]}),this.$=w[Y-2];break;case 45:this.$=[{part:v.id(w[Y]),original:w[Y]}];break;case 46:this.$=[];break;case 47:w[Y-1].push(w[Y]);break;case 48:this.$=[];break;case 49:w[Y-1].push(w[Y]);break;case 50:this.$=[];break;case 51:w[Y-1].push(w[Y]);break;case 58:this.$=[];break;case 59:w[Y-1].push(w[Y]);break;case 64:this.$=[];break;case 65:w[Y-1].push(w[Y]);break;case 70:this.$=[];break;case 71:w[Y-1].push(w[Y]);break;case 78:this.$=[];break;case 79:w[Y-1].push(w[Y]);break;case 82:this.$=[];break;case 83:w[Y-1].push(w[Y]);break;case 86:this.$=[];break;case 87:w[Y-1].push(w[Y]);break;case 90:this.$=[];break;case 91:w[Y-1].push(w[Y]);break;case 94:this.$=[];break;case 95:w[Y-1].push(w[Y]);break;case 98:this.$=[w[Y]];break;case 99:w[Y-1].push(w[Y]);break;case 100:this.$=[w[Y]];break;case 101:w[Y-1].push(w[Y]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(K,P){throw Error(K)},parse:function(K){var P=this,j=[0],v=[null],O=[],w=this.table,h="",Y=0,T=0,z=0,W=2,m=1;if(this.lexer.setInput(K),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u")this.lexer.yylloc={};var a=this.lexer.yylloc;O.push(a);var o=this.lexer.options&&this.lexer.options.ranges;if(typeof this.yy.parseError==="function")this.parseError=this.yy.parseError;function D(M){j.length=j.length-2*M,v.length=v.length-M,O.length=O.length-M}function pq(){var M=P.lexer.lex()||1;if(typeof M!=="number")M=P.symbols_[M]||M;return M}var X,sq,x,d,n7,Bq,_q={},eq,l,K$,dq;while(!0){if(x=j[j.length-1],this.defaultActions[x])d=this.defaultActions[x];else{if(X===null||typeof X>"u")X=pq();d=w[x]&&w[x][X]}if(typeof d>"u"||!d.length||!d[0]){var Uq="";if(!z){dq=[];for(eq in w[x])if(this.terminals_[eq]&&eq>2)dq.push("'"+this.terminals_[eq]+"'");if(this.lexer.showPosition)Uq="Parse error on line "+(Y+1)+`:
8
8
  `+this.lexer.showPosition()+`
9
- Expecting `+eq.join(", ")+", got '"+(this.terminals_[X]||X)+"'";else Bq="Parse error on line "+(Y+1)+": Unexpected "+(X==1?"end of input":"'"+(this.terminals_[X]||X)+"'");this.parseError(Bq,{text:this.lexer.match,token:this.terminals_[X]||X,line:this.lexer.yylineno,loc:a,expected:eq})}}if(d[0]instanceof Array&&d.length>1)throw Error("Parse Error: multiple actions possible at state: "+x+", token: "+X);switch(d[0]){case 1:if(j.push(X),w.push(this.lexer.yytext),O.push(this.lexer.yylloc),j.push(d[1]),X=null,!Lq){if(T=this.lexer.yyleng,h=this.lexer.yytext,Y=this.lexer.yylineno,a=this.lexer.yylloc,z>0)z--}else X=Lq,Lq=null;break;case 2:if(l=this.productions_[d[1]][1],_q.$=w[w.length-l],_q._$={first_line:O[O.length-(l||1)].first_line,last_line:O[O.length-1].last_line,first_column:O[O.length-(l||1)].first_column,last_column:O[O.length-1].last_column},n)_q._$.range=[O[O.length-(l||1)].range[0],O[O.length-1].range[1]];if(sq=this.performAction.call(_q,h,T,Y,this.yy,d[1],w,O),typeof sq<"u")return sq;if(l)j=j.slice(0,-1*l*2),w=w.slice(0,-1*l),O=O.slice(0,-1*l);j.push(this.productions_[d[1]][0]),w.push(_q.$),O.push(_q._$),K$=v[j[j.length-2]][j[j.length-1]],j.push(K$);break;case 3:return!0}}return!0}},q=function(){var f={EOF:1,parseError:function(P,j){if(this.yy.parser)this.yy.parser.parseError(P,j);else throw Error(P)},setInput:function(P){if(this._input=P,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},input:function(){var P=this._input[0];this.yytext+=P,this.yyleng++,this.offset++,this.match+=P,this.matched+=P;var j=P.match(/(?:\r\n?|\n).*/g);if(j)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),P},unput:function(P){var j=P.length,w=P.split(/(?:\r\n?|\n)/g);this._input=P+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-j-1),this.offset-=j;var O=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),w.length-1)this.yylineno-=w.length-1;var v=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:w?(w.length===O.length?this.yylloc.first_column:0)+O[O.length-w.length].length-w[0].length:this.yylloc.first_column-j},this.options.ranges)this.yylloc.range=[v[0],v[0]+this.yyleng-j];return this},more:function(){return this._more=!0,this},less:function(P){this.unput(this.match.slice(P))},pastInput:function(){var P=this.matched.substr(0,this.matched.length-this.match.length);return(P.length>20?"...":"")+P.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var P=this.match;if(P.length<20)P+=this._input.substr(0,20-P.length);return(P.substr(0,20)+(P.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var P=this.pastInput(),j=Array(P.length+1).join("-");return P+this.upcomingInput()+`
10
- `+j+"^"},next:function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var P,j,w,O,v,h;if(!this._more)this.yytext="",this.match="";var Y=this._currentRules();for(var T=0;T<Y.length;T++)if(w=this._input.match(this.rules[Y[T]]),w&&(!j||w[0].length>j[0].length)){if(j=w,O=T,!this.options.flex)break}if(j){if(h=j[0].match(/(?:\r\n?|\n).*/g),h)this.yylineno+=h.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:h?h[h.length-1].length-h[h.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+j[0].length},this.yytext+=j[0],this.match+=j[0],this.matches=j,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._input=this._input.slice(j[0].length),this.matched+=j[0],P=this.performAction.call(this,this.yy,this,Y[O],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(P)return P;else return}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
11
- `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var P=this.next();if(typeof P<"u")return P;else return this.lex()},begin:function(P){this.conditionStack.push(P)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(P){this.begin(P)}};return f.options={},f.performAction=function(P,j,w,O){function v(Y,T){return j.yytext=j.yytext.substring(Y,j.yyleng-T+Y)}var h=O;switch(w){case 0:if(j.yytext.slice(-2)==="\\\\")v(0,1),this.begin("mu");else if(j.yytext.slice(-1)==="\\")v(0,1),this.begin("emu");else this.begin("mu");if(j.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:if(this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw")return 15;else return v(5,9),"END_RAW_BLOCK";break;case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(j.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return j.yytext=v(1,2).replace(/\\"/g,'"'),80;break;case 32:return j.yytext=v(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return j.yytext=j.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},f.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],f.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},f}();_.lexer=q;function $(){this.yy={}}return $.prototype=_,_.Parser=$,new $}();J6.default=Kj;Z6.exports=J6.default});var Vq=H((n6,A6)=>{n6.__esModule=!0;function vj(_){return _&&_.__esModule?_:{default:_}}var wj=t(),o_=vj(wj);function Cq(){this.parents=[]}Cq.prototype={constructor:Cq,mutating:!1,acceptKey:function(q,$){var f=this.accept(q[$]);if(this.mutating){if(f&&!Cq.prototype[f.type])throw new o_.default('Unexpected node type "'+f.type+'" found when accepting '+$+" on "+q.type);q[$]=f}},acceptRequired:function(q,$){if(this.acceptKey(q,$),!q[$])throw new o_.default(q.type+" requires "+$)},acceptArray:function(q){for(var $=0,f=q.length;$<f;$++)if(this.acceptKey(q,$),!q[$])q.splice($,1),$--,f--},accept:function(q){if(!q)return;if(!this[q.type])throw new o_.default("Unknown type: "+q.type,q);if(this.current)this.parents.unshift(this.current);this.current=q;var $=this[q.type](q);if(this.current=this.parents.shift(),!this.mutating||$)return $;else if($!==!1)return q},Program:function(q){this.acceptArray(q.body)},MustacheStatement:lq,Decorator:lq,BlockStatement:u6,DecoratorBlock:u6,PartialStatement:o6,PartialBlockStatement:function(q){o6.call(this,q),this.acceptKey(q,"program")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:lq,PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(q){this.acceptArray(q.pairs)},HashPair:function(q){this.acceptRequired(q,"value")}};function lq(_){this.acceptRequired(_,"path"),this.acceptArray(_.params),this.acceptKey(_,"hash")}function u6(_){lq.call(this,_),this.acceptKey(_,"program"),this.acceptKey(_,"inverse")}function o6(_){this.acceptRequired(_,"name"),this.acceptArray(_.params),this.acceptKey(_,"hash")}n6.default=Cq;A6.exports=n6.default});var e6=H((X6,p6)=>{X6.__esModule=!0;function hj(_){return _&&_.__esModule?_:{default:_}}var Tj=Vq(),kj=hj(Tj);function C(){var _=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=_}C.prototype=new kj.default;C.prototype.Program=function(_){var q=!this.options.ignoreStandalone,$=!this.isRootSeen;this.isRootSeen=!0;var f=_.body;for(var K=0,P=f.length;K<P;K++){var j=f[K],w=this.accept(j);if(!w)continue;var O=n_(f,K,$),v=A_(f,K,$),h=w.openStandalone&&O,Y=w.closeStandalone&&v,T=w.inlineStandalone&&O&&v;if(w.close)B(f,K,!0);if(w.open)y(f,K,!0);if(q&&T){if(B(f,K),y(f,K)){if(j.type==="PartialStatement")j.indent=/([ \t]+$)/.exec(f[K-1].original)[1]}}if(q&&h)B((j.program||j.inverse).body),y(f,K);if(q&&Y)B(f,K),y((j.inverse||j.program).body)}return _};C.prototype.BlockStatement=C.prototype.DecoratorBlock=C.prototype.PartialBlockStatement=function(_){this.accept(_.program),this.accept(_.inverse);var q=_.program||_.inverse,$=_.program&&_.inverse,f=$,K=$;if($&&$.chained){f=$.body[0].program;while(K.chained)K=K.body[K.body.length-1].program}var P={open:_.openStrip.open,close:_.closeStrip.close,openStandalone:A_(q.body),closeStandalone:n_((f||q).body)};if(_.openStrip.close)B(q.body,null,!0);if($){var j=_.inverseStrip;if(j.open)y(q.body,null,!0);if(j.close)B(f.body,null,!0);if(_.closeStrip.open)y(K.body,null,!0);if(!this.options.ignoreStandalone&&n_(q.body)&&A_(f.body))y(q.body),B(f.body)}else if(_.closeStrip.open)y(q.body,null,!0);return P};C.prototype.Decorator=C.prototype.MustacheStatement=function(_){return _.strip};C.prototype.PartialStatement=C.prototype.CommentStatement=function(_){var q=_.strip||{};return{inlineStandalone:!0,open:q.open,close:q.close}};function n_(_,q,$){if(q===void 0)q=_.length;var f=_[q-1],K=_[q-2];if(!f)return $;if(f.type==="ContentStatement")return(K||!$?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(f.original)}function A_(_,q,$){if(q===void 0)q=-1;var f=_[q+1],K=_[q+2];if(!f)return $;if(f.type==="ContentStatement")return(K||!$?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(f.original)}function B(_,q,$){var f=_[q==null?0:q+1];if(!f||f.type!=="ContentStatement"||!$&&f.rightStripped)return;var K=f.value;f.value=f.value.replace($?/^\s+/:/^[ \t]*\r?\n?/,""),f.rightStripped=f.value!==K}function y(_,q,$){var f=_[q==null?_.length-1:q-1];if(!f||f.type!=="ContentStatement"||!$&&f.leftStripped)return;var K=f.value;return f.value=f.value.replace($?/\s+$/:/[ \t]+$/,""),f.leftStripped=f.value!==K,f.leftStripped}X6.default=C;p6.exports=X6.default});var d6=H((dj)=>{dj.__esModule=!0;dj.SourceLocation=Jj;dj.id=Zj;dj.stripFlags=mj;dj.stripComment=uj;dj.preparePath=oj;dj.prepareMustache=nj;dj.prepareRawBlock=Aj;dj.prepareBlock=Xj;dj.prepareProgram=pj;dj.preparePartialBlock=ej;function Hj(_){return _&&_.__esModule?_:{default:_}}var Wj=t(),X_=Hj(Wj);function p_(_,q){if(q=q.path?q.path.original:q,_.path.original!==q){var $={loc:_.path.loc};throw new X_.default(_.path.original+" doesn't match "+q,$)}}function Jj(_,q){this.source=_,this.start={line:q.first_line,column:q.first_column},this.end={line:q.last_line,column:q.last_column}}function Zj(_){if(/^\[.*\]$/.test(_))return _.substring(1,_.length-1);else return _}function mj(_,q){return{open:_.charAt(2)==="~",close:q.charAt(q.length-3)==="~"}}function uj(_){return _.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function oj(_,q,$){$=this.locInfo($);var f=_?"@":"",K=[],P=0;for(var j=0,w=q.length;j<w;j++){var O=q[j].part,v=q[j].original!==O;if(f+=(q[j].separator||"")+O,!v&&(O===".."||O==="."||O==="this")){if(K.length>0)throw new X_.default("Invalid path: "+f,{loc:$});else if(O==="..")P++}else K.push(O)}return{type:"PathExpression",data:_,depth:P,parts:K,original:f,loc:$}}function nj(_,q,$,f,K,P){var j=f.charAt(3)||f.charAt(2),w=j!=="{"&&j!=="&",O=/\*/.test(f);return{type:O?"Decorator":"MustacheStatement",path:_,params:q,hash:$,escaped:w,strip:K,loc:this.locInfo(P)}}function Aj(_,q,$,f){p_(_,$),f=this.locInfo(f);var K={type:"Program",body:q,strip:{},loc:f};return{type:"BlockStatement",path:_.path,params:_.params,hash:_.hash,program:K,openStrip:{},inverseStrip:{},closeStrip:{},loc:f}}function Xj(_,q,$,f,K,P){if(f&&f.path)p_(_,f);var j=/\*/.test(_.open);q.blockParams=_.blockParams;var w=void 0,O=void 0;if($){if(j)throw new X_.default("Unexpected inverse block on decorator",$);if($.chain)$.program.body[0].closeStrip=f.strip;O=$.strip,w=$.program}if(K)K=w,w=q,q=K;return{type:j?"DecoratorBlock":"BlockStatement",path:_.path,params:_.params,hash:_.hash,program:q,inverse:w,openStrip:_.strip,inverseStrip:O,closeStrip:f&&f.strip,loc:this.locInfo(P)}}function pj(_,q){if(!q&&_.length){var $=_[0].loc,f=_[_.length-1].loc;if($&&f)q={source:$.source,start:{line:$.start.line,column:$.start.column},end:{line:f.end.line,column:f.end.column}}}return{type:"Program",body:_,strip:{},loc:q}}function ej(_,q,$,f){return p_(_,$),{type:"PartialBlockStatement",name:_.path,params:_.params,hash:_.hash,program:q,openStrip:_.strip,closeStrip:$&&$.strip,loc:this.locInfo(f)}}});var i6=H((Lj)=>{Lj.__esModule=!0;Lj.parseWithoutProcessing=G6;Lj.parse=xj;function cj(_){if(_&&_.__esModule)return _;else{var q={};if(_!=null){for(var $ in _)if(Object.prototype.hasOwnProperty.call(_,$))q[$]=_[$]}return q.default=_,q}}function t6(_){return _&&_.__esModule?_:{default:_}}var Ej=m6(),e_=t6(Ej),Rj=e6(),gj=t6(Rj),Ij=d6(),yj=cj(Ij),Dj=p();Lj.parser=e_.default;var Mq={};Dj.extend(Mq,yj);function G6(_,q){if(_.type==="Program")return _;e_.default.yy=Mq,Mq.locInfo=function(f){return new Mq.SourceLocation(q&&q.srcName,f)};var $=e_.default.parse(_);return $}function xj(_,q){var $=G6(_,q),f=new gj.default(q);return f.accept($)}});var C6=H((K3)=>{K3.__esModule=!0;K3.Compiler=d_;K3.precompile=$3;K3.compile=f3;function b6(_){return _&&_.__esModule?_:{default:_}}var Qj=t(),Zq=b6(Qj),mq=p(),q3=u_(),Jq=b6(q3),_3=[].slice;function d_(){}d_.prototype={compiler:d_,equals:function(q){var $=this.opcodes.length;if(q.opcodes.length!==$)return!1;for(var f=0;f<$;f++){var K=this.opcodes[f],P=q.opcodes[f];if(K.opcode!==P.opcode||!S6(K.args,P.args))return!1}$=this.children.length;for(var f=0;f<$;f++)if(!this.children[f].equals(q.children[f]))return!1;return!0},guid:0,compile:function(q,$){return this.sourceNode=[],this.opcodes=[],this.children=[],this.options=$,this.stringParams=$.stringParams,this.trackIds=$.trackIds,$.blockParams=$.blockParams||[],$.knownHelpers=mq.extend(Object.create(null),{helperMissing:!0,blockHelperMissing:!0,each:!0,if:!0,unless:!0,with:!0,log:!0,lookup:!0},$.knownHelpers),this.accept(q)},compileProgram:function(q){var $=new this.compiler,f=$.compile(q,this.options),K=this.guid++;return this.usePartial=this.usePartial||f.usePartial,this.children[K]=f,this.useDepths=this.useDepths||f.useDepths,K},accept:function(q){if(!this[q.type])throw new Zq.default("Unknown type: "+q.type,q);this.sourceNode.unshift(q);var $=this[q.type](q);return this.sourceNode.shift(),$},Program:function(q){this.options.blockParams.unshift(q.blockParams);var $=q.body,f=$.length;for(var K=0;K<f;K++)this.accept($[K]);return this.options.blockParams.shift(),this.isSimple=f===1,this.blockParams=q.blockParams?q.blockParams.length:0,this},BlockStatement:function(q){a6(q);var{program:$,inverse:f}=q;$=$&&this.compileProgram($),f=f&&this.compileProgram(f);var K=this.classifySexpr(q);if(K==="helper")this.helperSexpr(q,$,f);else if(K==="simple")this.simpleSexpr(q),this.opcode("pushProgram",$),this.opcode("pushProgram",f),this.opcode("emptyHash"),this.opcode("blockValue",q.path.original);else this.ambiguousSexpr(q,$,f),this.opcode("pushProgram",$),this.opcode("pushProgram",f),this.opcode("emptyHash"),this.opcode("ambiguousBlockValue");this.opcode("append")},DecoratorBlock:function(q){var $=q.program&&this.compileProgram(q.program),f=this.setupFullMustacheParams(q,$,void 0),K=q.path;this.useDecorators=!0,this.opcode("registerDecorator",f.length,K.original)},PartialStatement:function(q){this.usePartial=!0;var $=q.program;if($)$=this.compileProgram(q.program);var f=q.params;if(f.length>1)throw new Zq.default("Unsupported number of partial arguments: "+f.length,q);else if(!f.length)if(this.options.explicitPartialContext)this.opcode("pushLiteral","undefined");else f.push({type:"PathExpression",parts:[],depth:0});var K=q.name.original,P=q.name.type==="SubExpression";if(P)this.accept(q.name);this.setupFullMustacheParams(q,$,void 0,!0);var j=q.indent||"";if(this.options.preventIndent&&j)this.opcode("appendContent",j),j="";this.opcode("invokePartial",P,K,j),this.opcode("append")},PartialBlockStatement:function(q){this.PartialStatement(q)},MustacheStatement:function(q){if(this.SubExpression(q),q.escaped&&!this.options.noEscape)this.opcode("appendEscaped");else this.opcode("append")},Decorator:function(q){this.DecoratorBlock(q)},ContentStatement:function(q){if(q.value)this.opcode("appendContent",q.value)},CommentStatement:function(){},SubExpression:function(q){a6(q);var $=this.classifySexpr(q);if($==="simple")this.simpleSexpr(q);else if($==="helper")this.helperSexpr(q);else this.ambiguousSexpr(q)},ambiguousSexpr:function(q,$,f){var K=q.path,P=K.parts[0],j=$!=null||f!=null;this.opcode("getContext",K.depth),this.opcode("pushProgram",$),this.opcode("pushProgram",f),K.strict=!0,this.accept(K),this.opcode("invokeAmbiguous",P,j)},simpleSexpr:function(q){var $=q.path;$.strict=!0,this.accept($),this.opcode("resolvePossibleLambda")},helperSexpr:function(q,$,f){var K=this.setupFullMustacheParams(q,$,f),P=q.path,j=P.parts[0];if(this.options.knownHelpers[j])this.opcode("invokeKnownHelper",K.length,j);else if(this.options.knownHelpersOnly)throw new Zq.default("You specified knownHelpersOnly, but used the unknown helper "+j,q);else P.strict=!0,P.falsy=!0,this.accept(P),this.opcode("invokeHelper",K.length,P.original,Jq.default.helpers.simpleId(P))},PathExpression:function(q){this.addDepth(q.depth),this.opcode("getContext",q.depth);var $=q.parts[0],f=Jq.default.helpers.scopedId(q),K=!q.depth&&!f&&this.blockParamIndex($);if(K)this.opcode("lookupBlockParam",K,q.parts);else if(!$)this.opcode("pushContext");else if(q.data)this.options.data=!0,this.opcode("lookupData",q.depth,q.parts,q.strict);else this.opcode("lookupOnContext",q.parts,q.falsy,q.strict,f)},StringLiteral:function(q){this.opcode("pushString",q.value)},NumberLiteral:function(q){this.opcode("pushLiteral",q.value)},BooleanLiteral:function(q){this.opcode("pushLiteral",q.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(q){var $=q.pairs,f=0,K=$.length;this.opcode("pushHash");for(;f<K;f++)this.pushParam($[f].value);while(f--)this.opcode("assignToHash",$[f].key);this.opcode("popHash")},opcode:function(q){this.opcodes.push({opcode:q,args:_3.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(q){if(!q)return;this.useDepths=!0},classifySexpr:function(q){var $=Jq.default.helpers.simpleId(q.path),f=$&&!!this.blockParamIndex(q.path.parts[0]),K=!f&&Jq.default.helpers.helperExpression(q),P=!f&&(K||$);if(P&&!K){var j=q.path.parts[0],w=this.options;if(w.knownHelpers[j])K=!0;else if(w.knownHelpersOnly)P=!1}if(K)return"helper";else if(P)return"ambiguous";else return"simple"},pushParams:function(q){for(var $=0,f=q.length;$<f;$++)this.pushParam(q[$])},pushParam:function(q){var $=q.value!=null?q.value:q.original||"";if(this.stringParams){if($.replace)$=$.replace(/^(\.?\.\/)*/g,"").replace(/\//g,".");if(q.depth)this.addDepth(q.depth);if(this.opcode("getContext",q.depth||0),this.opcode("pushStringParam",$,q.type),q.type==="SubExpression")this.accept(q)}else{if(this.trackIds){var f=void 0;if(q.parts&&!Jq.default.helpers.scopedId(q)&&!q.depth)f=this.blockParamIndex(q.parts[0]);if(f){var K=q.parts.slice(1).join(".");this.opcode("pushId","BlockParam",f,K)}else{if($=q.original||$,$.replace)$=$.replace(/^this(?:\.|$)/,"").replace(/^\.\//,"").replace(/^\.$/,"");this.opcode("pushId",q.type,$)}}this.accept(q)}},setupFullMustacheParams:function(q,$,f,K){var P=q.params;if(this.pushParams(P),this.opcode("pushProgram",$),this.opcode("pushProgram",f),q.hash)this.accept(q.hash);else this.opcode("emptyHash",K);return P},blockParamIndex:function(q){for(var $=0,f=this.options.blockParams.length;$<f;$++){var K=this.options.blockParams[$],P=K&&mq.indexOf(K,q);if(K&&P>=0)return[$,P]}}};function $3(_,q,$){if(_==null||typeof _!=="string"&&_.type!=="Program")throw new Zq.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+_);if(q=q||{},!("data"in q))q.data=!0;if(q.compat)q.useDepths=!0;var f=$.parse(_,q),K=new $.Compiler().compile(f,q);return new $.JavaScriptCompiler().compile(K,q)}function f3(_,q,$){if(q===void 0)q={};if(_==null||typeof _!=="string"&&_.type!=="Program")throw new Zq.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+_);if(q=mq.extend({},q),!("data"in q))q.data=!0;if(q.compat)q.useDepths=!0;var f=void 0;function K(){var j=$.parse(_,q),w=new $.Compiler().compile(j,q),O=new $.JavaScriptCompiler().compile(w,q,void 0,!0);return $.template(O)}function P(j,w){if(!f)f=K();return f.call(this,j,w)}return P._setup=function(j){if(!f)f=K();return f._setup(j)},P._child=function(j,w,O,v){if(!f)f=K();return f._child(j,w,O,v)},P}function S6(_,q){if(_===q)return!0;if(mq.isArray(_)&&mq.isArray(q)&&_.length===q.length){for(var $=0;$<_.length;$++)if(!S6(_[$],q[$]))return!1;return!0}}function a6(_){if(!_.path.parts){var q=_.path;_.path={type:"PathExpression",data:!1,depth:0,parts:[q.original+""],original:q.original+"",loc:q.loc}}}});var V6=H((O3)=>{var l6="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");O3.encode=function(_){if(0<=_&&_<l6.length)return l6[_];throw TypeError("Must be between 0 and 63: "+_)};O3.decode=function(_){var q=65,$=90,f=97,K=122,P=48,j=57,w=43,O=47,v=26,h=52;if(q<=_&&_<=$)return _-q;if(f<=_&&_<=K)return _-f+v;if(P<=_&&_<=j)return _-P+h;if(_==w)return 62;if(_==O)return 63;return-1}});var G_=H((r3)=>{var M6=V6(),t_=5,N6=1<<t_,c6=N6-1,E6=N6;function T3(_){return _<0?(-_<<1)+1:(_<<1)+0}function k3(_){var q=(_&1)===1,$=_>>1;return q?-$:$}r3.encode=function(q){var $="",f,K=T3(q);do{if(f=K&c6,K>>>=t_,K>0)f|=E6;$+=M6.encode(f)}while(K>0);return $};r3.decode=function(q,$,f){var K=q.length,P=0,j=0,w,O;do{if($>=K)throw Error("Expected more digits in base 64 VLQ value.");if(O=M6.decode(q.charCodeAt($++)),O===-1)throw Error("Invalid base64 digit: "+q.charAt($-1));w=!!(O&E6),O&=c6,P=P+(O<<j),j+=t_}while(w);f.value=k3(P),f.rest=$}});var jq=H((e3)=>{function W3(_,q,$){if(q in _)return _[q];else if(arguments.length===3)return $;else throw Error('"'+q+'" is a required argument.')}e3.getArg=W3;var R6=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,J3=/^data:.+\,.+$/;function uq(_){var q=_.match(R6);if(!q)return null;return{scheme:q[1],auth:q[2],host:q[3],port:q[4],path:q[5]}}e3.urlParse=uq;function Kq(_){var q="";if(_.scheme)q+=_.scheme+":";if(q+="//",_.auth)q+=_.auth+"@";if(_.host)q+=_.host;if(_.port)q+=":"+_.port;if(_.path)q+=_.path;return q}e3.urlGenerate=Kq;function i_(_){var q=_,$=uq(_);if($){if(!$.path)return _;q=$.path}var f=e3.isAbsolute(q),K=q.split(/\/+/);for(var P,j=0,w=K.length-1;w>=0;w--)if(P=K[w],P===".")K.splice(w,1);else if(P==="..")j++;else if(j>0)if(P==="")K.splice(w+1,j),j=0;else K.splice(w,2),j--;if(q=K.join("/"),q==="")q=f?"/":".";if($)return $.path=q,Kq($);return q}e3.normalize=i_;function g6(_,q){if(_==="")_=".";if(q==="")q=".";var $=uq(q),f=uq(_);if(f)_=f.path||"/";if($&&!$.scheme){if(f)$.scheme=f.scheme;return Kq($)}if($||q.match(J3))return q;if(f&&!f.host&&!f.path)return f.host=q,Kq(f);var K=q.charAt(0)==="/"?q:i_(_.replace(/\/+$/,"")+"/"+q);if(f)return f.path=K,Kq(f);return K}e3.join=g6;e3.isAbsolute=function(_){return _.charAt(0)==="/"||R6.test(_)};function Z3(_,q){if(_==="")_=".";_=_.replace(/\/$/,"");var $=0;while(q.indexOf(_+"/")!==0){var f=_.lastIndexOf("/");if(f<0)return q;if(_=_.slice(0,f),_.match(/^([^\/]+:\/)?\/*$/))return q;++$}return Array($+1).join("../")+q.substr(_.length+1)}e3.relative=Z3;var I6=function(){var _=Object.create(null);return!("__proto__"in _)}();function y6(_){return _}function m3(_){if(D6(_))return"$"+_;return _}e3.toSetString=I6?y6:m3;function u3(_){if(D6(_))return _.slice(1);return _}e3.fromSetString=I6?y6:u3;function D6(_){if(!_)return!1;var q=_.length;if(q<9)return!1;if(_.charCodeAt(q-1)!==95||_.charCodeAt(q-2)!==95||_.charCodeAt(q-3)!==111||_.charCodeAt(q-4)!==116||_.charCodeAt(q-5)!==111||_.charCodeAt(q-6)!==114||_.charCodeAt(q-7)!==112||_.charCodeAt(q-8)!==95||_.charCodeAt(q-9)!==95)return!1;for(var $=q-10;$>=0;$--)if(_.charCodeAt($)!==36)return!1;return!0}function o3(_,q,$){var f=Pq(_.source,q.source);if(f!==0)return f;if(f=_.originalLine-q.originalLine,f!==0)return f;if(f=_.originalColumn-q.originalColumn,f!==0||$)return f;if(f=_.generatedColumn-q.generatedColumn,f!==0)return f;if(f=_.generatedLine-q.generatedLine,f!==0)return f;return Pq(_.name,q.name)}e3.compareByOriginalPositions=o3;function n3(_,q,$){var f=_.generatedLine-q.generatedLine;if(f!==0)return f;if(f=_.generatedColumn-q.generatedColumn,f!==0||$)return f;if(f=Pq(_.source,q.source),f!==0)return f;if(f=_.originalLine-q.originalLine,f!==0)return f;if(f=_.originalColumn-q.originalColumn,f!==0)return f;return Pq(_.name,q.name)}e3.compareByGeneratedPositionsDeflated=n3;function Pq(_,q){if(_===q)return 0;if(_===null)return 1;if(q===null)return-1;if(_>q)return 1;return-1}function A3(_,q){var $=_.generatedLine-q.generatedLine;if($!==0)return $;if($=_.generatedColumn-q.generatedColumn,$!==0)return $;if($=Pq(_.source,q.source),$!==0)return $;if($=_.originalLine-q.originalLine,$!==0)return $;if($=_.originalColumn-q.originalColumn,$!==0)return $;return Pq(_.name,q.name)}e3.compareByGeneratedPositionsInflated=A3;function X3(_){return JSON.parse(_.replace(/^\)]}'[^\n]*\n/,""))}e3.parseSourceMapInput=X3;function p3(_,q,$){if(q=q||"",_){if(_[_.length-1]!=="/"&&q[0]!=="/")_+="/";q=_+q}if($){var f=uq($);if(!f)throw Error("sourceMapURL could not be parsed");if(f.path){var K=f.path.lastIndexOf("/");if(K>=0)f.path=f.path.substring(0,K+1)}q=g6(Kq(f),q)}return i_(q)}e3.computeSourceURL=p3});var S_=H((R3)=>{var a_=jq(),b_=Object.prototype.hasOwnProperty,U=typeof Map<"u";function E(){this._array=[],this._set=U?new Map:Object.create(null)}E.fromArray=function(q,$){var f=new E;for(var K=0,P=q.length;K<P;K++)f.add(q[K],$);return f};E.prototype.size=function(){return U?this._set.size:Object.getOwnPropertyNames(this._set).length};E.prototype.add=function(q,$){var f=U?q:a_.toSetString(q),K=U?this.has(q):b_.call(this._set,f),P=this._array.length;if(!K||$)this._array.push(q);if(!K)if(U)this._set.set(q,P);else this._set[f]=P};E.prototype.has=function(q){if(U)return this._set.has(q);else{var $=a_.toSetString(q);return b_.call(this._set,$)}};E.prototype.indexOf=function(q){if(U){var $=this._set.get(q);if($>=0)return $}else{var f=a_.toSetString(q);if(b_.call(this._set,f))return this._set[f]}throw Error('"'+q+'" is not in the set.')};E.prototype.at=function(q){if(q>=0&&q<this._array.length)return this._array[q];throw Error("No element indexed by "+q)};E.prototype.toArray=function(){return this._array.slice()};R3.ArraySet=E});var L6=H((y3)=>{var x6=jq();function I3(_,q){var $=_.generatedLine,f=q.generatedLine,K=_.generatedColumn,P=q.generatedColumn;return f>$||f==$&&P>=K||x6.compareByGeneratedPositionsInflated(_,q)<=0}function Nq(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Nq.prototype.unsortedForEach=function(q,$){this._array.forEach(q,$)};Nq.prototype.add=function(q){if(I3(this._last,q))this._last=q,this._array.push(q);else this._sorted=!1,this._array.push(q)};Nq.prototype.toArray=function(){if(!this._sorted)this._array.sort(x6.compareByGeneratedPositionsInflated),this._sorted=!0;return this._array};y3.MappingList=Nq});var C_=H((L3)=>{var oq=G_(),u=jq(),cq=S_().ArraySet,x3=L6().MappingList;function G(_){if(!_)_={};this._file=u.getArg(_,"file",null),this._sourceRoot=u.getArg(_,"sourceRoot",null),this._skipValidation=u.getArg(_,"skipValidation",!1),this._sources=new cq,this._names=new cq,this._mappings=new x3,this._sourcesContents=null}G.prototype._version=3;G.fromSourceMap=function(q){var $=q.sourceRoot,f=new G({file:q.file,sourceRoot:$});return q.eachMapping(function(K){var P={generated:{line:K.generatedLine,column:K.generatedColumn}};if(K.source!=null){if(P.source=K.source,$!=null)P.source=u.relative($,P.source);if(P.original={line:K.originalLine,column:K.originalColumn},K.name!=null)P.name=K.name}f.addMapping(P)}),q.sources.forEach(function(K){var P=K;if($!==null)P=u.relative($,K);if(!f._sources.has(P))f._sources.add(P);var j=q.sourceContentFor(K);if(j!=null)f.setSourceContent(K,j)}),f};G.prototype.addMapping=function(q){var $=u.getArg(q,"generated"),f=u.getArg(q,"original",null),K=u.getArg(q,"source",null),P=u.getArg(q,"name",null);if(!this._skipValidation)this._validateMapping($,f,K,P);if(K!=null){if(K=String(K),!this._sources.has(K))this._sources.add(K)}if(P!=null){if(P=String(P),!this._names.has(P))this._names.add(P)}this._mappings.add({generatedLine:$.line,generatedColumn:$.column,originalLine:f!=null&&f.line,originalColumn:f!=null&&f.column,source:K,name:P})};G.prototype.setSourceContent=function(q,$){var f=q;if(this._sourceRoot!=null)f=u.relative(this._sourceRoot,f);if($!=null){if(!this._sourcesContents)this._sourcesContents=Object.create(null);this._sourcesContents[u.toSetString(f)]=$}else if(this._sourcesContents){if(delete this._sourcesContents[u.toSetString(f)],Object.keys(this._sourcesContents).length===0)this._sourcesContents=null}};G.prototype.applySourceMap=function(q,$,f){var K=$;if($==null){if(q.file==null)throw Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);K=q.file}var P=this._sourceRoot;if(P!=null)K=u.relative(P,K);var j=new cq,w=new cq;this._mappings.unsortedForEach(function(O){if(O.source===K&&O.originalLine!=null){var v=q.originalPositionFor({line:O.originalLine,column:O.originalColumn});if(v.source!=null){if(O.source=v.source,f!=null)O.source=u.join(f,O.source);if(P!=null)O.source=u.relative(P,O.source);if(O.originalLine=v.line,O.originalColumn=v.column,v.name!=null)O.name=v.name}}var h=O.source;if(h!=null&&!j.has(h))j.add(h);var Y=O.name;if(Y!=null&&!w.has(Y))w.add(Y)},this),this._sources=j,this._names=w,q.sources.forEach(function(O){var v=q.sourceContentFor(O);if(v!=null){if(f!=null)O=u.join(f,O);if(P!=null)O=u.relative(P,O);this.setSourceContent(O,v)}},this)};G.prototype._validateMapping=function(q,$,f,K){if($&&typeof $.line!=="number"&&typeof $.column!=="number")throw Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(q&&"line"in q&&"column"in q&&q.line>0&&q.column>=0&&!$&&!f&&!K)return;else if(q&&"line"in q&&"column"in q&&$&&"line"in $&&"column"in $&&q.line>0&&q.column>=0&&$.line>0&&$.column>=0&&f)return;else throw Error("Invalid mapping: "+JSON.stringify({generated:q,source:f,original:$,name:K}))};G.prototype._serializeMappings=function(){var q=0,$=1,f=0,K=0,P=0,j=0,w="",O,v,h,Y,T=this._mappings.toArray();for(var z=0,W=T.length;z<W;z++){if(v=T[z],O="",v.generatedLine!==$){q=0;while(v.generatedLine!==$)O+=";",$++}else if(z>0){if(!u.compareByGeneratedPositionsInflated(v,T[z-1]))continue;O+=","}if(O+=oq.encode(v.generatedColumn-q),q=v.generatedColumn,v.source!=null){if(Y=this._sources.indexOf(v.source),O+=oq.encode(Y-j),j=Y,O+=oq.encode(v.originalLine-1-K),K=v.originalLine-1,O+=oq.encode(v.originalColumn-f),f=v.originalColumn,v.name!=null)h=this._names.indexOf(v.name),O+=oq.encode(h-P),P=h}w+=O}return w};G.prototype._generateSourcesContent=function(q,$){return q.map(function(f){if(!this._sourcesContents)return null;if($!=null)f=u.relative($,f);var K=u.toSetString(f);return Object.prototype.hasOwnProperty.call(this._sourcesContents,K)?this._sourcesContents[K]:null},this)};G.prototype.toJSON=function(){var q={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};if(this._file!=null)q.file=this._file;if(this._sourceRoot!=null)q.sourceRoot=this._sourceRoot;if(this._sourcesContents)q.sourcesContent=this._generateSourcesContent(q.sources,q.sourceRoot);return q};G.prototype.toString=function(){return JSON.stringify(this.toJSON())};L3.SourceMapGenerator=G});var B6=H((B3)=>{B3.GREATEST_LOWER_BOUND=1;B3.LEAST_UPPER_BOUND=2;function l_(_,q,$,f,K,P){var j=Math.floor((q-_)/2)+_,w=K($,f[j],!0);if(w===0)return j;else if(w>0){if(q-j>1)return l_(j,q,$,f,K,P);if(P==B3.LEAST_UPPER_BOUND)return q<f.length?q:-1;else return j}else{if(j-_>1)return l_(_,j,$,f,K,P);if(P==B3.LEAST_UPPER_BOUND)return j;else return _<0?-1:_}}B3.search=function(q,$,f,K){if($.length===0)return-1;var P=l_(-1,$.length,q,$,f,K||B3.GREATEST_LOWER_BOUND);if(P<0)return-1;while(P-1>=0){if(f($[P],$[P-1],!0)!==0)break;--P}return P}});var U6=H((Q3)=>{function M_(_,q,$){var f=_[q];_[q]=_[$],_[$]=f}function F3(_,q){return Math.round(_+Math.random()*(q-_))}function N_(_,q,$,f){if($<f){var K=F3($,f),P=$-1;M_(_,K,f);var j=_[f];for(var w=$;w<f;w++)if(q(_[w],j)<=0)P+=1,M_(_,P,w);M_(_,P+1,w);var O=P+1;N_(_,q,$,O-1),N_(_,q,O+1,f)}}Q3.quickSort=function(_,q){N_(_,q,0,_.length-1)}});var Q6=H(($4)=>{var k=jq(),c_=B6(),vq=S_().ArraySet,_4=G_(),nq=U6().quickSort;function J(_,q){var $=_;if(typeof _==="string")$=k.parseSourceMapInput(_);return $.sections!=null?new i($,q):new A($,q)}J.fromSourceMap=function(_,q){return A.fromSourceMap(_,q)};J.prototype._version=3;J.prototype.__generatedMappings=null;Object.defineProperty(J.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){if(!this.__generatedMappings)this._parseMappings(this._mappings,this.sourceRoot);return this.__generatedMappings}});J.prototype.__originalMappings=null;Object.defineProperty(J.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){if(!this.__originalMappings)this._parseMappings(this._mappings,this.sourceRoot);return this.__originalMappings}});J.prototype._charIsMappingSeparator=function(q,$){var f=q.charAt($);return f===";"||f===","};J.prototype._parseMappings=function(q,$){throw Error("Subclasses must implement _parseMappings")};J.GENERATED_ORDER=1;J.ORIGINAL_ORDER=2;J.GREATEST_LOWER_BOUND=1;J.LEAST_UPPER_BOUND=2;J.prototype.eachMapping=function(q,$,f){var K=$||null,P=f||J.GENERATED_ORDER,j;switch(P){case J.GENERATED_ORDER:j=this._generatedMappings;break;case J.ORIGINAL_ORDER:j=this._originalMappings;break;default:throw Error("Unknown order of iteration.")}var w=this.sourceRoot;j.map(function(O){var v=O.source===null?null:this._sources.at(O.source);return v=k.computeSourceURL(w,v,this._sourceMapURL),{source:v,generatedLine:O.generatedLine,generatedColumn:O.generatedColumn,originalLine:O.originalLine,originalColumn:O.originalColumn,name:O.name===null?null:this._names.at(O.name)}},this).forEach(q,K)};J.prototype.allGeneratedPositionsFor=function(q){var $=k.getArg(q,"line"),f={source:k.getArg(q,"source"),originalLine:$,originalColumn:k.getArg(q,"column",0)};if(f.source=this._findSourceIndex(f.source),f.source<0)return[];var K=[],P=this._findMapping(f,this._originalMappings,"originalLine","originalColumn",k.compareByOriginalPositions,c_.LEAST_UPPER_BOUND);if(P>=0){var j=this._originalMappings[P];if(q.column===void 0){var w=j.originalLine;while(j&&j.originalLine===w)K.push({line:k.getArg(j,"generatedLine",null),column:k.getArg(j,"generatedColumn",null),lastColumn:k.getArg(j,"lastGeneratedColumn",null)}),j=this._originalMappings[++P]}else{var O=j.originalColumn;while(j&&j.originalLine===$&&j.originalColumn==O)K.push({line:k.getArg(j,"generatedLine",null),column:k.getArg(j,"generatedColumn",null),lastColumn:k.getArg(j,"lastGeneratedColumn",null)}),j=this._originalMappings[++P]}}return K};$4.SourceMapConsumer=J;function A(_,q){var $=_;if(typeof _==="string")$=k.parseSourceMapInput(_);var f=k.getArg($,"version"),K=k.getArg($,"sources"),P=k.getArg($,"names",[]),j=k.getArg($,"sourceRoot",null),w=k.getArg($,"sourcesContent",null),O=k.getArg($,"mappings"),v=k.getArg($,"file",null);if(f!=this._version)throw Error("Unsupported version: "+f);if(j)j=k.normalize(j);K=K.map(String).map(k.normalize).map(function(h){return j&&k.isAbsolute(j)&&k.isAbsolute(h)?k.relative(j,h):h}),this._names=vq.fromArray(P.map(String),!0),this._sources=vq.fromArray(K,!0),this._absoluteSources=this._sources.toArray().map(function(h){return k.computeSourceURL(j,h,q)}),this.sourceRoot=j,this.sourcesContent=w,this._mappings=O,this._sourceMapURL=q,this.file=v}A.prototype=Object.create(J.prototype);A.prototype.consumer=J;A.prototype._findSourceIndex=function(_){var q=_;if(this.sourceRoot!=null)q=k.relative(this.sourceRoot,q);if(this._sources.has(q))return this._sources.indexOf(q);var $;for($=0;$<this._absoluteSources.length;++$)if(this._absoluteSources[$]==_)return $;return-1};A.fromSourceMap=function(q,$){var f=Object.create(A.prototype),K=f._names=vq.fromArray(q._names.toArray(),!0),P=f._sources=vq.fromArray(q._sources.toArray(),!0);f.sourceRoot=q._sourceRoot,f.sourcesContent=q._generateSourcesContent(f._sources.toArray(),f.sourceRoot),f.file=q._file,f._sourceMapURL=$,f._absoluteSources=f._sources.toArray().map(function(z){return k.computeSourceURL(f.sourceRoot,z,$)});var j=q._mappings.toArray().slice(),w=f.__generatedMappings=[],O=f.__originalMappings=[];for(var v=0,h=j.length;v<h;v++){var Y=j[v],T=new F6;if(T.generatedLine=Y.generatedLine,T.generatedColumn=Y.generatedColumn,Y.source){if(T.source=P.indexOf(Y.source),T.originalLine=Y.originalLine,T.originalColumn=Y.originalColumn,Y.name)T.name=K.indexOf(Y.name);O.push(T)}w.push(T)}return nq(f.__originalMappings,k.compareByOriginalPositions),f};A.prototype._version=3;Object.defineProperty(A.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function F6(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}A.prototype._parseMappings=function(q,$){var f=1,K=0,P=0,j=0,w=0,O=0,v=q.length,h=0,Y={},T={},z=[],W=[],m,a,n,D,Xq;while(h<v)if(q.charAt(h)===";")f++,h++,K=0;else if(q.charAt(h)===",")h++;else{m=new F6,m.generatedLine=f;for(D=h;D<v;D++)if(this._charIsMappingSeparator(q,D))break;if(a=q.slice(h,D),n=Y[a],n)h+=a.length;else{n=[];while(h<D)_4.decode(q,h,T),Xq=T.value,h=T.rest,n.push(Xq);if(n.length===2)throw Error("Found a source, but no line and column");if(n.length===3)throw Error("Found a source and line, but no column");Y[a]=n}if(m.generatedColumn=K+n[0],K=m.generatedColumn,n.length>1){if(m.source=w+n[1],w+=n[1],m.originalLine=P+n[2],P=m.originalLine,m.originalLine+=1,m.originalColumn=j+n[3],j=m.originalColumn,n.length>4)m.name=O+n[4],O+=n[4]}if(W.push(m),typeof m.originalLine==="number")z.push(m)}nq(W,k.compareByGeneratedPositionsDeflated),this.__generatedMappings=W,nq(z,k.compareByOriginalPositions),this.__originalMappings=z};A.prototype._findMapping=function(q,$,f,K,P,j){if(q[f]<=0)throw TypeError("Line must be greater than or equal to 1, got "+q[f]);if(q[K]<0)throw TypeError("Column must be greater than or equal to 0, got "+q[K]);return c_.search(q,$,P,j)};A.prototype.computeColumnSpans=function(){for(var q=0;q<this._generatedMappings.length;++q){var $=this._generatedMappings[q];if(q+1<this._generatedMappings.length){var f=this._generatedMappings[q+1];if($.generatedLine===f.generatedLine){$.lastGeneratedColumn=f.generatedColumn-1;continue}}$.lastGeneratedColumn=1/0}};A.prototype.originalPositionFor=function(q){var $={generatedLine:k.getArg(q,"line"),generatedColumn:k.getArg(q,"column")},f=this._findMapping($,this._generatedMappings,"generatedLine","generatedColumn",k.compareByGeneratedPositionsDeflated,k.getArg(q,"bias",J.GREATEST_LOWER_BOUND));if(f>=0){var K=this._generatedMappings[f];if(K.generatedLine===$.generatedLine){var P=k.getArg(K,"source",null);if(P!==null)P=this._sources.at(P),P=k.computeSourceURL(this.sourceRoot,P,this._sourceMapURL);var j=k.getArg(K,"name",null);if(j!==null)j=this._names.at(j);return{source:P,line:k.getArg(K,"originalLine",null),column:k.getArg(K,"originalColumn",null),name:j}}}return{source:null,line:null,column:null,name:null}};A.prototype.hasContentsOfAllSources=function(){if(!this.sourcesContent)return!1;return this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(q){return q==null})};A.prototype.sourceContentFor=function(q,$){if(!this.sourcesContent)return null;var f=this._findSourceIndex(q);if(f>=0)return this.sourcesContent[f];var K=q;if(this.sourceRoot!=null)K=k.relative(this.sourceRoot,K);var P;if(this.sourceRoot!=null&&(P=k.urlParse(this.sourceRoot))){var j=K.replace(/^file:\/\//,"");if(P.scheme=="file"&&this._sources.has(j))return this.sourcesContent[this._sources.indexOf(j)];if((!P.path||P.path=="/")&&this._sources.has("/"+K))return this.sourcesContent[this._sources.indexOf("/"+K)]}if($)return null;else throw Error('"'+K+'" is not in the SourceMap.')};A.prototype.generatedPositionFor=function(q){var $=k.getArg(q,"source");if($=this._findSourceIndex($),$<0)return{line:null,column:null,lastColumn:null};var f={source:$,originalLine:k.getArg(q,"line"),originalColumn:k.getArg(q,"column")},K=this._findMapping(f,this._originalMappings,"originalLine","originalColumn",k.compareByOriginalPositions,k.getArg(q,"bias",J.GREATEST_LOWER_BOUND));if(K>=0){var P=this._originalMappings[K];if(P.source===f.source)return{line:k.getArg(P,"generatedLine",null),column:k.getArg(P,"generatedColumn",null),lastColumn:k.getArg(P,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};$4.BasicSourceMapConsumer=A;function i(_,q){var $=_;if(typeof _==="string")$=k.parseSourceMapInput(_);var f=k.getArg($,"version"),K=k.getArg($,"sections");if(f!=this._version)throw Error("Unsupported version: "+f);this._sources=new vq,this._names=new vq;var P={line:-1,column:0};this._sections=K.map(function(j){if(j.url)throw Error("Support for url field in sections not implemented.");var w=k.getArg(j,"offset"),O=k.getArg(w,"line"),v=k.getArg(w,"column");if(O<P.line||O===P.line&&v<P.column)throw Error("Section offsets must be ordered and non-overlapping.");return P=w,{generatedOffset:{generatedLine:O+1,generatedColumn:v+1},consumer:new J(k.getArg(j,"map"),q)}})}i.prototype=Object.create(J.prototype);i.prototype.constructor=J;i.prototype._version=3;Object.defineProperty(i.prototype,"sources",{get:function(){var _=[];for(var q=0;q<this._sections.length;q++)for(var $=0;$<this._sections[q].consumer.sources.length;$++)_.push(this._sections[q].consumer.sources[$]);return _}});i.prototype.originalPositionFor=function(q){var $={generatedLine:k.getArg(q,"line"),generatedColumn:k.getArg(q,"column")},f=c_.search($,this._sections,function(P,j){var w=P.generatedLine-j.generatedOffset.generatedLine;if(w)return w;return P.generatedColumn-j.generatedOffset.generatedColumn}),K=this._sections[f];if(!K)return{source:null,line:null,column:null,name:null};return K.consumer.originalPositionFor({line:$.generatedLine-(K.generatedOffset.generatedLine-1),column:$.generatedColumn-(K.generatedOffset.generatedLine===$.generatedLine?K.generatedOffset.generatedColumn-1:0),bias:q.bias})};i.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(q){return q.consumer.hasContentsOfAllSources()})};i.prototype.sourceContentFor=function(q,$){for(var f=0;f<this._sections.length;f++){var K=this._sections[f],P=K.consumer.sourceContentFor(q,!0);if(P)return P}if($)return null;else throw Error('"'+q+'" is not in the SourceMap.')};i.prototype.generatedPositionFor=function(q){for(var $=0;$<this._sections.length;$++){var f=this._sections[$];if(f.consumer._findSourceIndex(k.getArg(q,"source"))===-1)continue;var K=f.consumer.generatedPositionFor(q);if(K){var P={line:K.line+(f.generatedOffset.generatedLine-1),column:K.column+(f.generatedOffset.generatedLine===K.line?f.generatedOffset.generatedColumn-1:0)};return P}}return{line:null,column:null}};i.prototype._parseMappings=function(q,$){this.__generatedMappings=[],this.__originalMappings=[];for(var f=0;f<this._sections.length;f++){var K=this._sections[f],P=K.consumer._generatedMappings;for(var j=0;j<P.length;j++){var w=P[j],O=K.consumer._sources.at(w.source);O=k.computeSourceURL(K.consumer.sourceRoot,O,this._sourceMapURL),this._sources.add(O),O=this._sources.indexOf(O);var v=null;if(w.name)v=K.consumer._names.at(w.name),this._names.add(v),v=this._names.indexOf(v);var h={source:O,generatedLine:w.generatedLine+(K.generatedOffset.generatedLine-1),generatedColumn:w.generatedColumn+(K.generatedOffset.generatedLine===w.generatedLine?K.generatedOffset.generatedColumn-1:0),originalLine:w.originalLine,originalColumn:w.originalColumn,name:v};if(this.__generatedMappings.push(h),typeof h.originalLine==="number")this.__originalMappings.push(h)}}nq(this.__generatedMappings,k.compareByGeneratedPositionsDeflated),nq(this.__originalMappings,k.compareByOriginalPositions)};$4.IndexedSourceMapConsumer=i});var q8=H((O4)=>{var j4=C_().SourceMapGenerator,Eq=jq(),v4=/(\r?\n)/,w4=10,wq="$$$isSourceNode$$$";function e(_,q,$,f,K){if(this.children=[],this.sourceContents={},this.line=_==null?null:_,this.column=q==null?null:q,this.source=$==null?null:$,this.name=K==null?null:K,this[wq]=!0,f!=null)this.add(f)}e.fromStringWithSourceMap=function(q,$,f){var K=new e,P=q.split(v4),j=0,w=function(){var T=W(),z=W()||"";return T+z;function W(){return j<P.length?P[j++]:void 0}},O=1,v=0,h=null;if($.eachMapping(function(T){if(h!==null)if(O<T.generatedLine)Y(h,w()),O++,v=0;else{var z=P[j]||"",W=z.substr(0,T.generatedColumn-v);P[j]=z.substr(T.generatedColumn-v),v=T.generatedColumn,Y(h,W),h=T;return}while(O<T.generatedLine)K.add(w()),O++;if(v<T.generatedColumn){var z=P[j]||"";K.add(z.substr(0,T.generatedColumn)),P[j]=z.substr(T.generatedColumn),v=T.generatedColumn}h=T},this),j<P.length){if(h)Y(h,w());K.add(P.splice(j).join(""))}return $.sources.forEach(function(T){var z=$.sourceContentFor(T);if(z!=null){if(f!=null)T=Eq.join(f,T);K.setSourceContent(T,z)}}),K;function Y(T,z){if(T===null||T.source===void 0)K.add(z);else{var W=f?Eq.join(f,T.source):T.source;K.add(new e(T.originalLine,T.originalColumn,W,z,T.name))}}};e.prototype.add=function(q){if(Array.isArray(q))q.forEach(function($){this.add($)},this);else if(q[wq]||typeof q==="string"){if(q)this.children.push(q)}else throw TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+q);return this};e.prototype.prepend=function(q){if(Array.isArray(q))for(var $=q.length-1;$>=0;$--)this.prepend(q[$]);else if(q[wq]||typeof q==="string")this.children.unshift(q);else throw TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+q);return this};e.prototype.walk=function(q){var $;for(var f=0,K=this.children.length;f<K;f++)if($=this.children[f],$[wq])$.walk(q);else if($!=="")q($,{source:this.source,line:this.line,column:this.column,name:this.name})};e.prototype.join=function(q){var $,f,K=this.children.length;if(K>0){$=[];for(f=0;f<K-1;f++)$.push(this.children[f]),$.push(q);$.push(this.children[f]),this.children=$}return this};e.prototype.replaceRight=function(q,$){var f=this.children[this.children.length-1];if(f[wq])f.replaceRight(q,$);else if(typeof f==="string")this.children[this.children.length-1]=f.replace(q,$);else this.children.push("".replace(q,$));return this};e.prototype.setSourceContent=function(q,$){this.sourceContents[Eq.toSetString(q)]=$};e.prototype.walkSourceContents=function(q){for(var $=0,f=this.children.length;$<f;$++)if(this.children[$][wq])this.children[$].walkSourceContents(q);var K=Object.keys(this.sourceContents);for(var $=0,f=K.length;$<f;$++)q(Eq.fromSetString(K[$]),this.sourceContents[K[$]])};e.prototype.toString=function(){var q="";return this.walk(function($){q+=$}),q};e.prototype.toStringWithSourceMap=function(q){var $={code:"",line:1,column:0},f=new j4(q),K=!1,P=null,j=null,w=null,O=null;return this.walk(function(v,h){if($.code+=v,h.source!==null&&h.line!==null&&h.column!==null){if(P!==h.source||j!==h.line||w!==h.column||O!==h.name)f.addMapping({source:h.source,original:{line:h.line,column:h.column},generated:{line:$.line,column:$.column},name:h.name});P=h.source,j=h.line,w=h.column,O=h.name,K=!0}else if(K)f.addMapping({generated:{line:$.line,column:$.column}}),P=null,K=!1;for(var Y=0,T=v.length;Y<T;Y++)if(v.charCodeAt(Y)===w4){if($.line++,$.column=0,Y+1===T)P=null,K=!1;else if(K)f.addMapping({source:h.source,original:{line:h.line,column:h.column},generated:{line:$.line,column:$.column},name:h.name})}else $.column++}),this.walkSourceContents(function(v,h){f.setSourceContent(v,h)}),{code:$.code,map:f}};O4.SourceNode=e});var _8=H((h4)=>{h4.SourceMapGenerator=C_().SourceMapGenerator;h4.SourceMapConsumer=Q6().SourceMapConsumer;h4.SourceNode=q8().SourceNode});var P8=H((f8,K8)=>{f8.__esModule=!0;var R_=p(),F=void 0;try{if(typeof define!=="function"||!define.amd)g_=_8(),F=g_.SourceNode}catch(_){}var g_;if(!F)F=function(_,q,$,f){if(this.src="",f)this.add(f)},F.prototype={add:function(q){if(R_.isArray(q))q=q.join("");this.src+=q},prepend:function(q){if(R_.isArray(q))q=q.join("");this.src=q+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}};function E_(_,q,$){if(R_.isArray(_)){var f=[];for(var K=0,P=_.length;K<P;K++)f.push(q.wrap(_[K],$));return f}else if(typeof _==="boolean"||typeof _==="number")return _+"";return _}function $8(_){this.srcFile=_,this.source=[]}$8.prototype={isEmpty:function(){return!this.source.length},prepend:function(q,$){this.source.unshift(this.wrap(q,$))},push:function(q,$){this.source.push(this.wrap(q,$))},merge:function(){var q=this.empty();return this.each(function($){q.add([" ",$,`
12
- `])}),q},each:function(q){for(var $=0,f=this.source.length;$<f;$++)q(this.source[$])},empty:function(){var q=this.currentLocation||{start:{}};return new F(q.start.line,q.start.column,this.srcFile)},wrap:function(q){var $=arguments.length<=1||arguments[1]===void 0?this.currentLocation||{start:{}}:arguments[1];if(q instanceof F)return q;return q=E_(q,this,$),new F($.start.line,$.start.column,this.srcFile,q)},functionCall:function(q,$,f){return f=this.generateList(f),this.wrap([q,$?"."+$+"(":"(",f,")"])},quotedString:function(q){return'"'+(q+"").replace(/\\/g,"\\\\").replace(/"/g,"\\\"").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},objectLiteral:function(q){var $=this,f=[];Object.keys(q).forEach(function(P){var j=E_(q[P],$);if(j!=="undefined")f.push([$.quotedString(P),":",j])});var K=this.generateList(f);return K.prepend("{"),K.add("}"),K},generateList:function(q){var $=this.empty();for(var f=0,K=q.length;f<K;f++){if(f)$.add(",");$.add(E_(q[f],this))}return $},generateArray:function(q){var $=this.generateList(q);return $.prepend("["),$.add("]"),$}};f8.default=$8;K8.exports=f8.default});var h8=H((O8,Y8)=>{O8.__esModule=!0;function w8(_){return _&&_.__esModule?_:{default:_}}var j8=bq(),W4=t(),I_=w8(W4),J4=p(),Z4=P8(),v8=w8(Z4);function Oq(_){this.value=_}function Yq(){}Yq.prototype={nameLookup:function(q,$){return this.internalNameLookup(q,$)},depthedLookup:function(q){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(q),")"]},compilerInfo:function(){var q=j8.COMPILER_REVISION,$=j8.REVISION_CHANGES[q];return[q,$]},appendToBuffer:function(q,$,f){if(!J4.isArray(q))q=[q];if(q=this.source.wrap(q,$),this.environment.isSimple)return["return ",q,";"];else if(f)return["buffer += ",q,";"];else return q.appendToBuffer=!0,q},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(q,$){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",q,",",JSON.stringify($),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(q,$,f,K){this.environment=q,this.options=$,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!K,this.name=this.environment.name,this.isChild=!!f,this.context=f||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(q,$),this.useDepths=this.useDepths||q.useDepths||q.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||q.useBlockParams;var P=q.opcodes,j=void 0,w=void 0,O=void 0,v=void 0;for(O=0,v=P.length;O<v;O++)j=P[O],this.source.currentLocation=j.loc,w=w||j.loc,this[j.opcode].apply(this,j.args);if(this.source.currentLocation=w,this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new I_.default("Compile completed with content left on stack");if(!this.decorators.isEmpty())if(this.useDecorators=!0,this.decorators.prepend(["var decorators = container.decorators, ",this.lookupPropertyFunctionVarDeclaration(),`;
9
+ Expecting `+dq.join(", ")+", got '"+(this.terminals_[X]||X)+"'";else Uq="Parse error on line "+(Y+1)+": Unexpected "+(X==1?"end of input":"'"+(this.terminals_[X]||X)+"'");this.parseError(Uq,{text:this.lexer.match,token:this.terminals_[X]||X,line:this.lexer.yylineno,loc:a,expected:dq})}}if(d[0]instanceof Array&&d.length>1)throw Error("Parse Error: multiple actions possible at state: "+x+", token: "+X);switch(d[0]){case 1:if(j.push(X),v.push(this.lexer.yytext),O.push(this.lexer.yylloc),j.push(d[1]),X=null,!sq){if(T=this.lexer.yyleng,h=this.lexer.yytext,Y=this.lexer.yylineno,a=this.lexer.yylloc,z>0)z--}else X=sq,sq=null;break;case 2:if(l=this.productions_[d[1]][1],_q.$=v[v.length-l],_q._$={first_line:O[O.length-(l||1)].first_line,last_line:O[O.length-1].last_line,first_column:O[O.length-(l||1)].first_column,last_column:O[O.length-1].last_column},o)_q._$.range=[O[O.length-(l||1)].range[0],O[O.length-1].range[1]];if(Bq=this.performAction.call(_q,h,T,Y,this.yy,d[1],v,O),typeof Bq<"u")return Bq;if(l)j=j.slice(0,-1*l*2),v=v.slice(0,-1*l),O=O.slice(0,-1*l);j.push(this.productions_[d[1]][0]),v.push(_q.$),O.push(_q._$),K$=w[j[j.length-2]][j[j.length-1]],j.push(K$);break;case 3:return!0}}return!0}},q=function(){var f={EOF:1,parseError:function(P,j){if(this.yy.parser)this.yy.parser.parseError(P,j);else throw Error(P)},setInput:function(P){if(this._input=P,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},input:function(){var P=this._input[0];this.yytext+=P,this.yyleng++,this.offset++,this.match+=P,this.matched+=P;var j=P.match(/(?:\r\n?|\n).*/g);if(j)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),P},unput:function(P){var j=P.length,v=P.split(/(?:\r\n?|\n)/g);this._input=P+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-j-1),this.offset-=j;var O=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),v.length-1)this.yylineno-=v.length-1;var w=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:v?(v.length===O.length?this.yylloc.first_column:0)+O[O.length-v.length].length-v[0].length:this.yylloc.first_column-j},this.options.ranges)this.yylloc.range=[w[0],w[0]+this.yyleng-j];return this},more:function(){return this._more=!0,this},less:function(P){this.unput(this.match.slice(P))},pastInput:function(){var P=this.matched.substr(0,this.matched.length-this.match.length);return(P.length>20?"...":"")+P.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var P=this.match;if(P.length<20)P+=this._input.substr(0,20-P.length);return(P.substr(0,20)+(P.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var P=this.pastInput(),j=Array(P.length+1).join("-");return P+this.upcomingInput()+`
10
+ `+j+"^"},next:function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var P,j,v,O,w,h;if(!this._more)this.yytext="",this.match="";var Y=this._currentRules();for(var T=0;T<Y.length;T++)if(v=this._input.match(this.rules[Y[T]]),v&&(!j||v[0].length>j[0].length)){if(j=v,O=T,!this.options.flex)break}if(j){if(h=j[0].match(/(?:\r\n?|\n).*/g),h)this.yylineno+=h.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:h?h[h.length-1].length-h[h.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+j[0].length},this.yytext+=j[0],this.match+=j[0],this.matches=j,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._input=this._input.slice(j[0].length),this.matched+=j[0],P=this.performAction.call(this,this.yy,this,Y[O],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(P)return P;else return}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
11
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var P=this.next();if(typeof P<"u")return P;else return this.lex()},begin:function(P){this.conditionStack.push(P)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(P){this.begin(P)}};return f.options={},f.performAction=function(P,j,v,O){function w(Y,T){return j.yytext=j.yytext.substring(Y,j.yyleng-T+Y)}var h=O;switch(v){case 0:if(j.yytext.slice(-2)==="\\\\")w(0,1),this.begin("mu");else if(j.yytext.slice(-1)==="\\")w(0,1),this.begin("emu");else this.begin("mu");if(j.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:if(this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw")return 15;else return w(5,9),"END_RAW_BLOCK";break;case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(j.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return j.yytext=w(1,2).replace(/\\"/g,'"'),80;break;case 32:return j.yytext=w(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return j.yytext=j.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},f.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],f.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},f}();_.lexer=q;function $(){this.yy={}}return $.prototype=_,_.Parser=$,new $}();J6.default=Kj;Z6.exports=J6.default});var Mq=H((o6,A6)=>{o6.__esModule=!0;function vj(_){return _&&_.__esModule?_:{default:_}}var wj=t(),o_=vj(wj);function Vq(){this.parents=[]}Vq.prototype={constructor:Vq,mutating:!1,acceptKey:function(q,$){var f=this.accept(q[$]);if(this.mutating){if(f&&!Vq.prototype[f.type])throw new o_.default('Unexpected node type "'+f.type+'" found when accepting '+$+" on "+q.type);q[$]=f}},acceptRequired:function(q,$){if(this.acceptKey(q,$),!q[$])throw new o_.default(q.type+" requires "+$)},acceptArray:function(q){for(var $=0,f=q.length;$<f;$++)if(this.acceptKey(q,$),!q[$])q.splice($,1),$--,f--},accept:function(q){if(!q)return;if(!this[q.type])throw new o_.default("Unknown type: "+q.type,q);if(this.current)this.parents.unshift(this.current);this.current=q;var $=this[q.type](q);if(this.current=this.parents.shift(),!this.mutating||$)return $;else if($!==!1)return q},Program:function(q){this.acceptArray(q.body)},MustacheStatement:lq,Decorator:lq,BlockStatement:u6,DecoratorBlock:u6,PartialStatement:n6,PartialBlockStatement:function(q){n6.call(this,q),this.acceptKey(q,"program")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:lq,PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(q){this.acceptArray(q.pairs)},HashPair:function(q){this.acceptRequired(q,"value")}};function lq(_){this.acceptRequired(_,"path"),this.acceptArray(_.params),this.acceptKey(_,"hash")}function u6(_){lq.call(this,_),this.acceptKey(_,"program"),this.acceptKey(_,"inverse")}function n6(_){this.acceptRequired(_,"name"),this.acceptArray(_.params),this.acceptKey(_,"hash")}o6.default=Vq;A6.exports=o6.default});var e6=H((X6,p6)=>{X6.__esModule=!0;function hj(_){return _&&_.__esModule?_:{default:_}}var Tj=Mq(),kj=hj(Tj);function C(){var _=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=_}C.prototype=new kj.default;C.prototype.Program=function(_){var q=!this.options.ignoreStandalone,$=!this.isRootSeen;this.isRootSeen=!0;var f=_.body;for(var K=0,P=f.length;K<P;K++){var j=f[K],v=this.accept(j);if(!v)continue;var O=A_(f,K,$),w=X_(f,K,$),h=v.openStandalone&&O,Y=v.closeStandalone&&w,T=v.inlineStandalone&&O&&w;if(v.close)B(f,K,!0);if(v.open)y(f,K,!0);if(q&&T){if(B(f,K),y(f,K)){if(j.type==="PartialStatement")j.indent=/([ \t]+$)/.exec(f[K-1].original)[1]}}if(q&&h)B((j.program||j.inverse).body),y(f,K);if(q&&Y)B(f,K),y((j.inverse||j.program).body)}return _};C.prototype.BlockStatement=C.prototype.DecoratorBlock=C.prototype.PartialBlockStatement=function(_){this.accept(_.program),this.accept(_.inverse);var q=_.program||_.inverse,$=_.program&&_.inverse,f=$,K=$;if($&&$.chained){f=$.body[0].program;while(K.chained)K=K.body[K.body.length-1].program}var P={open:_.openStrip.open,close:_.closeStrip.close,openStandalone:X_(q.body),closeStandalone:A_((f||q).body)};if(_.openStrip.close)B(q.body,null,!0);if($){var j=_.inverseStrip;if(j.open)y(q.body,null,!0);if(j.close)B(f.body,null,!0);if(_.closeStrip.open)y(K.body,null,!0);if(!this.options.ignoreStandalone&&A_(q.body)&&X_(f.body))y(q.body),B(f.body)}else if(_.closeStrip.open)y(q.body,null,!0);return P};C.prototype.Decorator=C.prototype.MustacheStatement=function(_){return _.strip};C.prototype.PartialStatement=C.prototype.CommentStatement=function(_){var q=_.strip||{};return{inlineStandalone:!0,open:q.open,close:q.close}};function A_(_,q,$){if(q===void 0)q=_.length;var f=_[q-1],K=_[q-2];if(!f)return $;if(f.type==="ContentStatement")return(K||!$?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(f.original)}function X_(_,q,$){if(q===void 0)q=-1;var f=_[q+1],K=_[q+2];if(!f)return $;if(f.type==="ContentStatement")return(K||!$?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(f.original)}function B(_,q,$){var f=_[q==null?0:q+1];if(!f||f.type!=="ContentStatement"||!$&&f.rightStripped)return;var K=f.value;f.value=f.value.replace($?/^\s+/:/^[ \t]*\r?\n?/,""),f.rightStripped=f.value!==K}function y(_,q,$){var f=_[q==null?_.length-1:q-1];if(!f||f.type!=="ContentStatement"||!$&&f.leftStripped)return;var K=f.value;return f.value=f.value.replace($?/\s+$/:/[ \t]+$/,""),f.leftStripped=f.value!==K,f.leftStripped}X6.default=C;p6.exports=X6.default});var d6=H((dj)=>{dj.__esModule=!0;dj.SourceLocation=Jj;dj.id=Zj;dj.stripFlags=mj;dj.stripComment=uj;dj.preparePath=nj;dj.prepareMustache=oj;dj.prepareRawBlock=Aj;dj.prepareBlock=Xj;dj.prepareProgram=pj;dj.preparePartialBlock=ej;function Hj(_){return _&&_.__esModule?_:{default:_}}var Wj=t(),p_=Hj(Wj);function e_(_,q){if(q=q.path?q.path.original:q,_.path.original!==q){var $={loc:_.path.loc};throw new p_.default(_.path.original+" doesn't match "+q,$)}}function Jj(_,q){this.source=_,this.start={line:q.first_line,column:q.first_column},this.end={line:q.last_line,column:q.last_column}}function Zj(_){if(/^\[.*\]$/.test(_))return _.substring(1,_.length-1);else return _}function mj(_,q){return{open:_.charAt(2)==="~",close:q.charAt(q.length-3)==="~"}}function uj(_){return _.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function nj(_,q,$){$=this.locInfo($);var f=_?"@":"",K=[],P=0;for(var j=0,v=q.length;j<v;j++){var O=q[j].part,w=q[j].original!==O;if(f+=(q[j].separator||"")+O,!w&&(O===".."||O==="."||O==="this")){if(K.length>0)throw new p_.default("Invalid path: "+f,{loc:$});else if(O==="..")P++}else K.push(O)}return{type:"PathExpression",data:_,depth:P,parts:K,original:f,loc:$}}function oj(_,q,$,f,K,P){var j=f.charAt(3)||f.charAt(2),v=j!=="{"&&j!=="&",O=/\*/.test(f);return{type:O?"Decorator":"MustacheStatement",path:_,params:q,hash:$,escaped:v,strip:K,loc:this.locInfo(P)}}function Aj(_,q,$,f){e_(_,$),f=this.locInfo(f);var K={type:"Program",body:q,strip:{},loc:f};return{type:"BlockStatement",path:_.path,params:_.params,hash:_.hash,program:K,openStrip:{},inverseStrip:{},closeStrip:{},loc:f}}function Xj(_,q,$,f,K,P){if(f&&f.path)e_(_,f);var j=/\*/.test(_.open);q.blockParams=_.blockParams;var v=void 0,O=void 0;if($){if(j)throw new p_.default("Unexpected inverse block on decorator",$);if($.chain)$.program.body[0].closeStrip=f.strip;O=$.strip,v=$.program}if(K)K=v,v=q,q=K;return{type:j?"DecoratorBlock":"BlockStatement",path:_.path,params:_.params,hash:_.hash,program:q,inverse:v,openStrip:_.strip,inverseStrip:O,closeStrip:f&&f.strip,loc:this.locInfo(P)}}function pj(_,q){if(!q&&_.length){var $=_[0].loc,f=_[_.length-1].loc;if($&&f)q={source:$.source,start:{line:$.start.line,column:$.start.column},end:{line:f.end.line,column:f.end.column}}}return{type:"Program",body:_,strip:{},loc:q}}function ej(_,q,$,f){return e_(_,$),{type:"PartialBlockStatement",name:_.path,params:_.params,hash:_.hash,program:q,openStrip:_.strip,closeStrip:$&&$.strip,loc:this.locInfo(f)}}});var i6=H((Lj)=>{Lj.__esModule=!0;Lj.parseWithoutProcessing=G6;Lj.parse=xj;function cj(_){if(_&&_.__esModule)return _;else{var q={};if(_!=null){for(var $ in _)if(Object.prototype.hasOwnProperty.call(_,$))q[$]=_[$]}return q.default=_,q}}function t6(_){return _&&_.__esModule?_:{default:_}}var Ej=m6(),d_=t6(Ej),Rj=e6(),gj=t6(Rj),Ij=d6(),yj=cj(Ij),Dj=p();Lj.parser=d_.default;var Nq={};Dj.extend(Nq,yj);function G6(_,q){if(_.type==="Program")return _;d_.default.yy=Nq,Nq.locInfo=function(f){return new Nq.SourceLocation(q&&q.srcName,f)};var $=d_.default.parse(_);return $}function xj(_,q){var $=G6(_,q),f=new gj.default(q);return f.accept($)}});var C6=H((K3)=>{K3.__esModule=!0;K3.Compiler=t_;K3.precompile=$3;K3.compile=f3;function b6(_){return _&&_.__esModule?_:{default:_}}var Qj=t(),Zq=b6(Qj),mq=p(),q3=n_(),Jq=b6(q3),_3=[].slice;function t_(){}t_.prototype={compiler:t_,equals:function(q){var $=this.opcodes.length;if(q.opcodes.length!==$)return!1;for(var f=0;f<$;f++){var K=this.opcodes[f],P=q.opcodes[f];if(K.opcode!==P.opcode||!S6(K.args,P.args))return!1}$=this.children.length;for(var f=0;f<$;f++)if(!this.children[f].equals(q.children[f]))return!1;return!0},guid:0,compile:function(q,$){return this.sourceNode=[],this.opcodes=[],this.children=[],this.options=$,this.stringParams=$.stringParams,this.trackIds=$.trackIds,$.blockParams=$.blockParams||[],$.knownHelpers=mq.extend(Object.create(null),{helperMissing:!0,blockHelperMissing:!0,each:!0,if:!0,unless:!0,with:!0,log:!0,lookup:!0},$.knownHelpers),this.accept(q)},compileProgram:function(q){var $=new this.compiler,f=$.compile(q,this.options),K=this.guid++;return this.usePartial=this.usePartial||f.usePartial,this.children[K]=f,this.useDepths=this.useDepths||f.useDepths,K},accept:function(q){if(!this[q.type])throw new Zq.default("Unknown type: "+q.type,q);this.sourceNode.unshift(q);var $=this[q.type](q);return this.sourceNode.shift(),$},Program:function(q){this.options.blockParams.unshift(q.blockParams);var $=q.body,f=$.length;for(var K=0;K<f;K++)this.accept($[K]);return this.options.blockParams.shift(),this.isSimple=f===1,this.blockParams=q.blockParams?q.blockParams.length:0,this},BlockStatement:function(q){a6(q);var{program:$,inverse:f}=q;$=$&&this.compileProgram($),f=f&&this.compileProgram(f);var K=this.classifySexpr(q);if(K==="helper")this.helperSexpr(q,$,f);else if(K==="simple")this.simpleSexpr(q),this.opcode("pushProgram",$),this.opcode("pushProgram",f),this.opcode("emptyHash"),this.opcode("blockValue",q.path.original);else this.ambiguousSexpr(q,$,f),this.opcode("pushProgram",$),this.opcode("pushProgram",f),this.opcode("emptyHash"),this.opcode("ambiguousBlockValue");this.opcode("append")},DecoratorBlock:function(q){var $=q.program&&this.compileProgram(q.program),f=this.setupFullMustacheParams(q,$,void 0),K=q.path;this.useDecorators=!0,this.opcode("registerDecorator",f.length,K.original)},PartialStatement:function(q){this.usePartial=!0;var $=q.program;if($)$=this.compileProgram(q.program);var f=q.params;if(f.length>1)throw new Zq.default("Unsupported number of partial arguments: "+f.length,q);else if(!f.length)if(this.options.explicitPartialContext)this.opcode("pushLiteral","undefined");else f.push({type:"PathExpression",parts:[],depth:0});var K=q.name.original,P=q.name.type==="SubExpression";if(P)this.accept(q.name);this.setupFullMustacheParams(q,$,void 0,!0);var j=q.indent||"";if(this.options.preventIndent&&j)this.opcode("appendContent",j),j="";this.opcode("invokePartial",P,K,j),this.opcode("append")},PartialBlockStatement:function(q){this.PartialStatement(q)},MustacheStatement:function(q){if(this.SubExpression(q),q.escaped&&!this.options.noEscape)this.opcode("appendEscaped");else this.opcode("append")},Decorator:function(q){this.DecoratorBlock(q)},ContentStatement:function(q){if(q.value)this.opcode("appendContent",q.value)},CommentStatement:function(){},SubExpression:function(q){a6(q);var $=this.classifySexpr(q);if($==="simple")this.simpleSexpr(q);else if($==="helper")this.helperSexpr(q);else this.ambiguousSexpr(q)},ambiguousSexpr:function(q,$,f){var K=q.path,P=K.parts[0],j=$!=null||f!=null;this.opcode("getContext",K.depth),this.opcode("pushProgram",$),this.opcode("pushProgram",f),K.strict=!0,this.accept(K),this.opcode("invokeAmbiguous",P,j)},simpleSexpr:function(q){var $=q.path;$.strict=!0,this.accept($),this.opcode("resolvePossibleLambda")},helperSexpr:function(q,$,f){var K=this.setupFullMustacheParams(q,$,f),P=q.path,j=P.parts[0];if(this.options.knownHelpers[j])this.opcode("invokeKnownHelper",K.length,j);else if(this.options.knownHelpersOnly)throw new Zq.default("You specified knownHelpersOnly, but used the unknown helper "+j,q);else P.strict=!0,P.falsy=!0,this.accept(P),this.opcode("invokeHelper",K.length,P.original,Jq.default.helpers.simpleId(P))},PathExpression:function(q){this.addDepth(q.depth),this.opcode("getContext",q.depth);var $=q.parts[0],f=Jq.default.helpers.scopedId(q),K=!q.depth&&!f&&this.blockParamIndex($);if(K)this.opcode("lookupBlockParam",K,q.parts);else if(!$)this.opcode("pushContext");else if(q.data)this.options.data=!0,this.opcode("lookupData",q.depth,q.parts,q.strict);else this.opcode("lookupOnContext",q.parts,q.falsy,q.strict,f)},StringLiteral:function(q){this.opcode("pushString",q.value)},NumberLiteral:function(q){this.opcode("pushLiteral",q.value)},BooleanLiteral:function(q){this.opcode("pushLiteral",q.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(q){var $=q.pairs,f=0,K=$.length;this.opcode("pushHash");for(;f<K;f++)this.pushParam($[f].value);while(f--)this.opcode("assignToHash",$[f].key);this.opcode("popHash")},opcode:function(q){this.opcodes.push({opcode:q,args:_3.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(q){if(!q)return;this.useDepths=!0},classifySexpr:function(q){var $=Jq.default.helpers.simpleId(q.path),f=$&&!!this.blockParamIndex(q.path.parts[0]),K=!f&&Jq.default.helpers.helperExpression(q),P=!f&&(K||$);if(P&&!K){var j=q.path.parts[0],v=this.options;if(v.knownHelpers[j])K=!0;else if(v.knownHelpersOnly)P=!1}if(K)return"helper";else if(P)return"ambiguous";else return"simple"},pushParams:function(q){for(var $=0,f=q.length;$<f;$++)this.pushParam(q[$])},pushParam:function(q){var $=q.value!=null?q.value:q.original||"";if(this.stringParams){if($.replace)$=$.replace(/^(\.?\.\/)*/g,"").replace(/\//g,".");if(q.depth)this.addDepth(q.depth);if(this.opcode("getContext",q.depth||0),this.opcode("pushStringParam",$,q.type),q.type==="SubExpression")this.accept(q)}else{if(this.trackIds){var f=void 0;if(q.parts&&!Jq.default.helpers.scopedId(q)&&!q.depth)f=this.blockParamIndex(q.parts[0]);if(f){var K=q.parts.slice(1).join(".");this.opcode("pushId","BlockParam",f,K)}else{if($=q.original||$,$.replace)$=$.replace(/^this(?:\.|$)/,"").replace(/^\.\//,"").replace(/^\.$/,"");this.opcode("pushId",q.type,$)}}this.accept(q)}},setupFullMustacheParams:function(q,$,f,K){var P=q.params;if(this.pushParams(P),this.opcode("pushProgram",$),this.opcode("pushProgram",f),q.hash)this.accept(q.hash);else this.opcode("emptyHash",K);return P},blockParamIndex:function(q){for(var $=0,f=this.options.blockParams.length;$<f;$++){var K=this.options.blockParams[$],P=K&&mq.indexOf(K,q);if(K&&P>=0)return[$,P]}}};function $3(_,q,$){if(_==null||typeof _!=="string"&&_.type!=="Program")throw new Zq.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+_);if(q=q||{},!("data"in q))q.data=!0;if(q.compat)q.useDepths=!0;var f=$.parse(_,q),K=new $.Compiler().compile(f,q);return new $.JavaScriptCompiler().compile(K,q)}function f3(_,q,$){if(q===void 0)q={};if(_==null||typeof _!=="string"&&_.type!=="Program")throw new Zq.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+_);if(q=mq.extend({},q),!("data"in q))q.data=!0;if(q.compat)q.useDepths=!0;var f=void 0;function K(){var j=$.parse(_,q),v=new $.Compiler().compile(j,q),O=new $.JavaScriptCompiler().compile(v,q,void 0,!0);return $.template(O)}function P(j,v){if(!f)f=K();return f.call(this,j,v)}return P._setup=function(j){if(!f)f=K();return f._setup(j)},P._child=function(j,v,O,w){if(!f)f=K();return f._child(j,v,O,w)},P}function S6(_,q){if(_===q)return!0;if(mq.isArray(_)&&mq.isArray(q)&&_.length===q.length){for(var $=0;$<_.length;$++)if(!S6(_[$],q[$]))return!1;return!0}}function a6(_){if(!_.path.parts){var q=_.path;_.path={type:"PathExpression",data:!1,depth:0,parts:[q.original+""],original:q.original+"",loc:q.loc}}}});var l6=H((O3)=>{var V6="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");O3.encode=function(_){if(0<=_&&_<V6.length)return V6[_];throw TypeError("Must be between 0 and 63: "+_)};O3.decode=function(_){var q=65,$=90,f=97,K=122,P=48,j=57,v=43,O=47,w=26,h=52;if(q<=_&&_<=$)return _-q;if(f<=_&&_<=K)return _-f+w;if(P<=_&&_<=j)return _-P+h;if(_==v)return 62;if(_==O)return 63;return-1}});var i_=H((r3)=>{var M6=l6(),G_=5,N6=1<<G_,c6=N6-1,E6=N6;function T3(_){return _<0?(-_<<1)+1:(_<<1)+0}function k3(_){var q=(_&1)===1,$=_>>1;return q?-$:$}r3.encode=function(q){var $="",f,K=T3(q);do{if(f=K&c6,K>>>=G_,K>0)f|=E6;$+=M6.encode(f)}while(K>0);return $};r3.decode=function(q,$,f){var K=q.length,P=0,j=0,v,O;do{if($>=K)throw Error("Expected more digits in base 64 VLQ value.");if(O=M6.decode(q.charCodeAt($++)),O===-1)throw Error("Invalid base64 digit: "+q.charAt($-1));v=!!(O&E6),O&=c6,P=P+(O<<j),j+=G_}while(v);f.value=k3(P),f.rest=$}});var jq=H((e3)=>{function W3(_,q,$){if(q in _)return _[q];else if(arguments.length===3)return $;else throw Error('"'+q+'" is a required argument.')}e3.getArg=W3;var R6=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,J3=/^data:.+\,.+$/;function uq(_){var q=_.match(R6);if(!q)return null;return{scheme:q[1],auth:q[2],host:q[3],port:q[4],path:q[5]}}e3.urlParse=uq;function Kq(_){var q="";if(_.scheme)q+=_.scheme+":";if(q+="//",_.auth)q+=_.auth+"@";if(_.host)q+=_.host;if(_.port)q+=":"+_.port;if(_.path)q+=_.path;return q}e3.urlGenerate=Kq;function a_(_){var q=_,$=uq(_);if($){if(!$.path)return _;q=$.path}var f=e3.isAbsolute(q),K=q.split(/\/+/);for(var P,j=0,v=K.length-1;v>=0;v--)if(P=K[v],P===".")K.splice(v,1);else if(P==="..")j++;else if(j>0)if(P==="")K.splice(v+1,j),j=0;else K.splice(v,2),j--;if(q=K.join("/"),q==="")q=f?"/":".";if($)return $.path=q,Kq($);return q}e3.normalize=a_;function g6(_,q){if(_==="")_=".";if(q==="")q=".";var $=uq(q),f=uq(_);if(f)_=f.path||"/";if($&&!$.scheme){if(f)$.scheme=f.scheme;return Kq($)}if($||q.match(J3))return q;if(f&&!f.host&&!f.path)return f.host=q,Kq(f);var K=q.charAt(0)==="/"?q:a_(_.replace(/\/+$/,"")+"/"+q);if(f)return f.path=K,Kq(f);return K}e3.join=g6;e3.isAbsolute=function(_){return _.charAt(0)==="/"||R6.test(_)};function Z3(_,q){if(_==="")_=".";_=_.replace(/\/$/,"");var $=0;while(q.indexOf(_+"/")!==0){var f=_.lastIndexOf("/");if(f<0)return q;if(_=_.slice(0,f),_.match(/^([^\/]+:\/)?\/*$/))return q;++$}return Array($+1).join("../")+q.substr(_.length+1)}e3.relative=Z3;var I6=function(){var _=Object.create(null);return!("__proto__"in _)}();function y6(_){return _}function m3(_){if(D6(_))return"$"+_;return _}e3.toSetString=I6?y6:m3;function u3(_){if(D6(_))return _.slice(1);return _}e3.fromSetString=I6?y6:u3;function D6(_){if(!_)return!1;var q=_.length;if(q<9)return!1;if(_.charCodeAt(q-1)!==95||_.charCodeAt(q-2)!==95||_.charCodeAt(q-3)!==111||_.charCodeAt(q-4)!==116||_.charCodeAt(q-5)!==111||_.charCodeAt(q-6)!==114||_.charCodeAt(q-7)!==112||_.charCodeAt(q-8)!==95||_.charCodeAt(q-9)!==95)return!1;for(var $=q-10;$>=0;$--)if(_.charCodeAt($)!==36)return!1;return!0}function n3(_,q,$){var f=Pq(_.source,q.source);if(f!==0)return f;if(f=_.originalLine-q.originalLine,f!==0)return f;if(f=_.originalColumn-q.originalColumn,f!==0||$)return f;if(f=_.generatedColumn-q.generatedColumn,f!==0)return f;if(f=_.generatedLine-q.generatedLine,f!==0)return f;return Pq(_.name,q.name)}e3.compareByOriginalPositions=n3;function o3(_,q,$){var f=_.generatedLine-q.generatedLine;if(f!==0)return f;if(f=_.generatedColumn-q.generatedColumn,f!==0||$)return f;if(f=Pq(_.source,q.source),f!==0)return f;if(f=_.originalLine-q.originalLine,f!==0)return f;if(f=_.originalColumn-q.originalColumn,f!==0)return f;return Pq(_.name,q.name)}e3.compareByGeneratedPositionsDeflated=o3;function Pq(_,q){if(_===q)return 0;if(_===null)return 1;if(q===null)return-1;if(_>q)return 1;return-1}function A3(_,q){var $=_.generatedLine-q.generatedLine;if($!==0)return $;if($=_.generatedColumn-q.generatedColumn,$!==0)return $;if($=Pq(_.source,q.source),$!==0)return $;if($=_.originalLine-q.originalLine,$!==0)return $;if($=_.originalColumn-q.originalColumn,$!==0)return $;return Pq(_.name,q.name)}e3.compareByGeneratedPositionsInflated=A3;function X3(_){return JSON.parse(_.replace(/^\)]}'[^\n]*\n/,""))}e3.parseSourceMapInput=X3;function p3(_,q,$){if(q=q||"",_){if(_[_.length-1]!=="/"&&q[0]!=="/")_+="/";q=_+q}if($){var f=uq($);if(!f)throw Error("sourceMapURL could not be parsed");if(f.path){var K=f.path.lastIndexOf("/");if(K>=0)f.path=f.path.substring(0,K+1)}q=g6(Kq(f),q)}return a_(q)}e3.computeSourceURL=p3});var C_=H((R3)=>{var b_=jq(),S_=Object.prototype.hasOwnProperty,U=typeof Map<"u";function R(){this._array=[],this._set=U?new Map:Object.create(null)}R.fromArray=function(q,$){var f=new R;for(var K=0,P=q.length;K<P;K++)f.add(q[K],$);return f};R.prototype.size=function(){return U?this._set.size:Object.getOwnPropertyNames(this._set).length};R.prototype.add=function(q,$){var f=U?q:b_.toSetString(q),K=U?this.has(q):S_.call(this._set,f),P=this._array.length;if(!K||$)this._array.push(q);if(!K)if(U)this._set.set(q,P);else this._set[f]=P};R.prototype.has=function(q){if(U)return this._set.has(q);else{var $=b_.toSetString(q);return S_.call(this._set,$)}};R.prototype.indexOf=function(q){if(U){var $=this._set.get(q);if($>=0)return $}else{var f=b_.toSetString(q);if(S_.call(this._set,f))return this._set[f]}throw Error('"'+q+'" is not in the set.')};R.prototype.at=function(q){if(q>=0&&q<this._array.length)return this._array[q];throw Error("No element indexed by "+q)};R.prototype.toArray=function(){return this._array.slice()};R3.ArraySet=R});var L6=H((y3)=>{var x6=jq();function I3(_,q){var $=_.generatedLine,f=q.generatedLine,K=_.generatedColumn,P=q.generatedColumn;return f>$||f==$&&P>=K||x6.compareByGeneratedPositionsInflated(_,q)<=0}function cq(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}cq.prototype.unsortedForEach=function(q,$){this._array.forEach(q,$)};cq.prototype.add=function(q){if(I3(this._last,q))this._last=q,this._array.push(q);else this._sorted=!1,this._array.push(q)};cq.prototype.toArray=function(){if(!this._sorted)this._array.sort(x6.compareByGeneratedPositionsInflated),this._sorted=!0;return this._array};y3.MappingList=cq});var V_=H((L3)=>{var nq=i_(),u=jq(),Eq=C_().ArraySet,x3=L6().MappingList;function G(_){if(!_)_={};this._file=u.getArg(_,"file",null),this._sourceRoot=u.getArg(_,"sourceRoot",null),this._skipValidation=u.getArg(_,"skipValidation",!1),this._sources=new Eq,this._names=new Eq,this._mappings=new x3,this._sourcesContents=null}G.prototype._version=3;G.fromSourceMap=function(q){var $=q.sourceRoot,f=new G({file:q.file,sourceRoot:$});return q.eachMapping(function(K){var P={generated:{line:K.generatedLine,column:K.generatedColumn}};if(K.source!=null){if(P.source=K.source,$!=null)P.source=u.relative($,P.source);if(P.original={line:K.originalLine,column:K.originalColumn},K.name!=null)P.name=K.name}f.addMapping(P)}),q.sources.forEach(function(K){var P=K;if($!==null)P=u.relative($,K);if(!f._sources.has(P))f._sources.add(P);var j=q.sourceContentFor(K);if(j!=null)f.setSourceContent(K,j)}),f};G.prototype.addMapping=function(q){var $=u.getArg(q,"generated"),f=u.getArg(q,"original",null),K=u.getArg(q,"source",null),P=u.getArg(q,"name",null);if(!this._skipValidation)this._validateMapping($,f,K,P);if(K!=null){if(K=String(K),!this._sources.has(K))this._sources.add(K)}if(P!=null){if(P=String(P),!this._names.has(P))this._names.add(P)}this._mappings.add({generatedLine:$.line,generatedColumn:$.column,originalLine:f!=null&&f.line,originalColumn:f!=null&&f.column,source:K,name:P})};G.prototype.setSourceContent=function(q,$){var f=q;if(this._sourceRoot!=null)f=u.relative(this._sourceRoot,f);if($!=null){if(!this._sourcesContents)this._sourcesContents=Object.create(null);this._sourcesContents[u.toSetString(f)]=$}else if(this._sourcesContents){if(delete this._sourcesContents[u.toSetString(f)],Object.keys(this._sourcesContents).length===0)this._sourcesContents=null}};G.prototype.applySourceMap=function(q,$,f){var K=$;if($==null){if(q.file==null)throw Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);K=q.file}var P=this._sourceRoot;if(P!=null)K=u.relative(P,K);var j=new Eq,v=new Eq;this._mappings.unsortedForEach(function(O){if(O.source===K&&O.originalLine!=null){var w=q.originalPositionFor({line:O.originalLine,column:O.originalColumn});if(w.source!=null){if(O.source=w.source,f!=null)O.source=u.join(f,O.source);if(P!=null)O.source=u.relative(P,O.source);if(O.originalLine=w.line,O.originalColumn=w.column,w.name!=null)O.name=w.name}}var h=O.source;if(h!=null&&!j.has(h))j.add(h);var Y=O.name;if(Y!=null&&!v.has(Y))v.add(Y)},this),this._sources=j,this._names=v,q.sources.forEach(function(O){var w=q.sourceContentFor(O);if(w!=null){if(f!=null)O=u.join(f,O);if(P!=null)O=u.relative(P,O);this.setSourceContent(O,w)}},this)};G.prototype._validateMapping=function(q,$,f,K){if($&&typeof $.line!=="number"&&typeof $.column!=="number")throw Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(q&&"line"in q&&"column"in q&&q.line>0&&q.column>=0&&!$&&!f&&!K)return;else if(q&&"line"in q&&"column"in q&&$&&"line"in $&&"column"in $&&q.line>0&&q.column>=0&&$.line>0&&$.column>=0&&f)return;else throw Error("Invalid mapping: "+JSON.stringify({generated:q,source:f,original:$,name:K}))};G.prototype._serializeMappings=function(){var q=0,$=1,f=0,K=0,P=0,j=0,v="",O,w,h,Y,T=this._mappings.toArray();for(var z=0,W=T.length;z<W;z++){if(w=T[z],O="",w.generatedLine!==$){q=0;while(w.generatedLine!==$)O+=";",$++}else if(z>0){if(!u.compareByGeneratedPositionsInflated(w,T[z-1]))continue;O+=","}if(O+=nq.encode(w.generatedColumn-q),q=w.generatedColumn,w.source!=null){if(Y=this._sources.indexOf(w.source),O+=nq.encode(Y-j),j=Y,O+=nq.encode(w.originalLine-1-K),K=w.originalLine-1,O+=nq.encode(w.originalColumn-f),f=w.originalColumn,w.name!=null)h=this._names.indexOf(w.name),O+=nq.encode(h-P),P=h}v+=O}return v};G.prototype._generateSourcesContent=function(q,$){return q.map(function(f){if(!this._sourcesContents)return null;if($!=null)f=u.relative($,f);var K=u.toSetString(f);return Object.prototype.hasOwnProperty.call(this._sourcesContents,K)?this._sourcesContents[K]:null},this)};G.prototype.toJSON=function(){var q={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};if(this._file!=null)q.file=this._file;if(this._sourceRoot!=null)q.sourceRoot=this._sourceRoot;if(this._sourcesContents)q.sourcesContent=this._generateSourcesContent(q.sources,q.sourceRoot);return q};G.prototype.toString=function(){return JSON.stringify(this.toJSON())};L3.SourceMapGenerator=G});var B6=H((B3)=>{B3.GREATEST_LOWER_BOUND=1;B3.LEAST_UPPER_BOUND=2;function l_(_,q,$,f,K,P){var j=Math.floor((q-_)/2)+_,v=K($,f[j],!0);if(v===0)return j;else if(v>0){if(q-j>1)return l_(j,q,$,f,K,P);if(P==B3.LEAST_UPPER_BOUND)return q<f.length?q:-1;else return j}else{if(j-_>1)return l_(_,j,$,f,K,P);if(P==B3.LEAST_UPPER_BOUND)return j;else return _<0?-1:_}}B3.search=function(q,$,f,K){if($.length===0)return-1;var P=l_(-1,$.length,q,$,f,K||B3.GREATEST_LOWER_BOUND);if(P<0)return-1;while(P-1>=0){if(f($[P],$[P-1],!0)!==0)break;--P}return P}});var U6=H((Q3)=>{function N_(_,q,$){var f=_[q];_[q]=_[$],_[$]=f}function F3(_,q){return Math.round(_+Math.random()*(q-_))}function c_(_,q,$,f){if($<f){var K=F3($,f),P=$-1;N_(_,K,f);var j=_[f];for(var v=$;v<f;v++)if(q(_[v],j)<=0)P+=1,N_(_,P,v);N_(_,P+1,v);var O=P+1;c_(_,q,$,O-1),c_(_,q,O+1,f)}}Q3.quickSort=function(_,q){c_(_,q,0,_.length-1)}});var Q6=H(($4)=>{var k=jq(),E_=B6(),vq=C_().ArraySet,_4=i_(),oq=U6().quickSort;function J(_,q){var $=_;if(typeof _==="string")$=k.parseSourceMapInput(_);return $.sections!=null?new i($,q):new A($,q)}J.fromSourceMap=function(_,q){return A.fromSourceMap(_,q)};J.prototype._version=3;J.prototype.__generatedMappings=null;Object.defineProperty(J.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){if(!this.__generatedMappings)this._parseMappings(this._mappings,this.sourceRoot);return this.__generatedMappings}});J.prototype.__originalMappings=null;Object.defineProperty(J.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){if(!this.__originalMappings)this._parseMappings(this._mappings,this.sourceRoot);return this.__originalMappings}});J.prototype._charIsMappingSeparator=function(q,$){var f=q.charAt($);return f===";"||f===","};J.prototype._parseMappings=function(q,$){throw Error("Subclasses must implement _parseMappings")};J.GENERATED_ORDER=1;J.ORIGINAL_ORDER=2;J.GREATEST_LOWER_BOUND=1;J.LEAST_UPPER_BOUND=2;J.prototype.eachMapping=function(q,$,f){var K=$||null,P=f||J.GENERATED_ORDER,j;switch(P){case J.GENERATED_ORDER:j=this._generatedMappings;break;case J.ORIGINAL_ORDER:j=this._originalMappings;break;default:throw Error("Unknown order of iteration.")}var v=this.sourceRoot;j.map(function(O){var w=O.source===null?null:this._sources.at(O.source);return w=k.computeSourceURL(v,w,this._sourceMapURL),{source:w,generatedLine:O.generatedLine,generatedColumn:O.generatedColumn,originalLine:O.originalLine,originalColumn:O.originalColumn,name:O.name===null?null:this._names.at(O.name)}},this).forEach(q,K)};J.prototype.allGeneratedPositionsFor=function(q){var $=k.getArg(q,"line"),f={source:k.getArg(q,"source"),originalLine:$,originalColumn:k.getArg(q,"column",0)};if(f.source=this._findSourceIndex(f.source),f.source<0)return[];var K=[],P=this._findMapping(f,this._originalMappings,"originalLine","originalColumn",k.compareByOriginalPositions,E_.LEAST_UPPER_BOUND);if(P>=0){var j=this._originalMappings[P];if(q.column===void 0){var v=j.originalLine;while(j&&j.originalLine===v)K.push({line:k.getArg(j,"generatedLine",null),column:k.getArg(j,"generatedColumn",null),lastColumn:k.getArg(j,"lastGeneratedColumn",null)}),j=this._originalMappings[++P]}else{var O=j.originalColumn;while(j&&j.originalLine===$&&j.originalColumn==O)K.push({line:k.getArg(j,"generatedLine",null),column:k.getArg(j,"generatedColumn",null),lastColumn:k.getArg(j,"lastGeneratedColumn",null)}),j=this._originalMappings[++P]}}return K};$4.SourceMapConsumer=J;function A(_,q){var $=_;if(typeof _==="string")$=k.parseSourceMapInput(_);var f=k.getArg($,"version"),K=k.getArg($,"sources"),P=k.getArg($,"names",[]),j=k.getArg($,"sourceRoot",null),v=k.getArg($,"sourcesContent",null),O=k.getArg($,"mappings"),w=k.getArg($,"file",null);if(f!=this._version)throw Error("Unsupported version: "+f);if(j)j=k.normalize(j);K=K.map(String).map(k.normalize).map(function(h){return j&&k.isAbsolute(j)&&k.isAbsolute(h)?k.relative(j,h):h}),this._names=vq.fromArray(P.map(String),!0),this._sources=vq.fromArray(K,!0),this._absoluteSources=this._sources.toArray().map(function(h){return k.computeSourceURL(j,h,q)}),this.sourceRoot=j,this.sourcesContent=v,this._mappings=O,this._sourceMapURL=q,this.file=w}A.prototype=Object.create(J.prototype);A.prototype.consumer=J;A.prototype._findSourceIndex=function(_){var q=_;if(this.sourceRoot!=null)q=k.relative(this.sourceRoot,q);if(this._sources.has(q))return this._sources.indexOf(q);var $;for($=0;$<this._absoluteSources.length;++$)if(this._absoluteSources[$]==_)return $;return-1};A.fromSourceMap=function(q,$){var f=Object.create(A.prototype),K=f._names=vq.fromArray(q._names.toArray(),!0),P=f._sources=vq.fromArray(q._sources.toArray(),!0);f.sourceRoot=q._sourceRoot,f.sourcesContent=q._generateSourcesContent(f._sources.toArray(),f.sourceRoot),f.file=q._file,f._sourceMapURL=$,f._absoluteSources=f._sources.toArray().map(function(z){return k.computeSourceURL(f.sourceRoot,z,$)});var j=q._mappings.toArray().slice(),v=f.__generatedMappings=[],O=f.__originalMappings=[];for(var w=0,h=j.length;w<h;w++){var Y=j[w],T=new F6;if(T.generatedLine=Y.generatedLine,T.generatedColumn=Y.generatedColumn,Y.source){if(T.source=P.indexOf(Y.source),T.originalLine=Y.originalLine,T.originalColumn=Y.originalColumn,Y.name)T.name=K.indexOf(Y.name);O.push(T)}v.push(T)}return oq(f.__originalMappings,k.compareByOriginalPositions),f};A.prototype._version=3;Object.defineProperty(A.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function F6(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}A.prototype._parseMappings=function(q,$){var f=1,K=0,P=0,j=0,v=0,O=0,w=q.length,h=0,Y={},T={},z=[],W=[],m,a,o,D,pq;while(h<w)if(q.charAt(h)===";")f++,h++,K=0;else if(q.charAt(h)===",")h++;else{m=new F6,m.generatedLine=f;for(D=h;D<w;D++)if(this._charIsMappingSeparator(q,D))break;if(a=q.slice(h,D),o=Y[a],o)h+=a.length;else{o=[];while(h<D)_4.decode(q,h,T),pq=T.value,h=T.rest,o.push(pq);if(o.length===2)throw Error("Found a source, but no line and column");if(o.length===3)throw Error("Found a source and line, but no column");Y[a]=o}if(m.generatedColumn=K+o[0],K=m.generatedColumn,o.length>1){if(m.source=v+o[1],v+=o[1],m.originalLine=P+o[2],P=m.originalLine,m.originalLine+=1,m.originalColumn=j+o[3],j=m.originalColumn,o.length>4)m.name=O+o[4],O+=o[4]}if(W.push(m),typeof m.originalLine==="number")z.push(m)}oq(W,k.compareByGeneratedPositionsDeflated),this.__generatedMappings=W,oq(z,k.compareByOriginalPositions),this.__originalMappings=z};A.prototype._findMapping=function(q,$,f,K,P,j){if(q[f]<=0)throw TypeError("Line must be greater than or equal to 1, got "+q[f]);if(q[K]<0)throw TypeError("Column must be greater than or equal to 0, got "+q[K]);return E_.search(q,$,P,j)};A.prototype.computeColumnSpans=function(){for(var q=0;q<this._generatedMappings.length;++q){var $=this._generatedMappings[q];if(q+1<this._generatedMappings.length){var f=this._generatedMappings[q+1];if($.generatedLine===f.generatedLine){$.lastGeneratedColumn=f.generatedColumn-1;continue}}$.lastGeneratedColumn=1/0}};A.prototype.originalPositionFor=function(q){var $={generatedLine:k.getArg(q,"line"),generatedColumn:k.getArg(q,"column")},f=this._findMapping($,this._generatedMappings,"generatedLine","generatedColumn",k.compareByGeneratedPositionsDeflated,k.getArg(q,"bias",J.GREATEST_LOWER_BOUND));if(f>=0){var K=this._generatedMappings[f];if(K.generatedLine===$.generatedLine){var P=k.getArg(K,"source",null);if(P!==null)P=this._sources.at(P),P=k.computeSourceURL(this.sourceRoot,P,this._sourceMapURL);var j=k.getArg(K,"name",null);if(j!==null)j=this._names.at(j);return{source:P,line:k.getArg(K,"originalLine",null),column:k.getArg(K,"originalColumn",null),name:j}}}return{source:null,line:null,column:null,name:null}};A.prototype.hasContentsOfAllSources=function(){if(!this.sourcesContent)return!1;return this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(q){return q==null})};A.prototype.sourceContentFor=function(q,$){if(!this.sourcesContent)return null;var f=this._findSourceIndex(q);if(f>=0)return this.sourcesContent[f];var K=q;if(this.sourceRoot!=null)K=k.relative(this.sourceRoot,K);var P;if(this.sourceRoot!=null&&(P=k.urlParse(this.sourceRoot))){var j=K.replace(/^file:\/\//,"");if(P.scheme=="file"&&this._sources.has(j))return this.sourcesContent[this._sources.indexOf(j)];if((!P.path||P.path=="/")&&this._sources.has("/"+K))return this.sourcesContent[this._sources.indexOf("/"+K)]}if($)return null;else throw Error('"'+K+'" is not in the SourceMap.')};A.prototype.generatedPositionFor=function(q){var $=k.getArg(q,"source");if($=this._findSourceIndex($),$<0)return{line:null,column:null,lastColumn:null};var f={source:$,originalLine:k.getArg(q,"line"),originalColumn:k.getArg(q,"column")},K=this._findMapping(f,this._originalMappings,"originalLine","originalColumn",k.compareByOriginalPositions,k.getArg(q,"bias",J.GREATEST_LOWER_BOUND));if(K>=0){var P=this._originalMappings[K];if(P.source===f.source)return{line:k.getArg(P,"generatedLine",null),column:k.getArg(P,"generatedColumn",null),lastColumn:k.getArg(P,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};$4.BasicSourceMapConsumer=A;function i(_,q){var $=_;if(typeof _==="string")$=k.parseSourceMapInput(_);var f=k.getArg($,"version"),K=k.getArg($,"sections");if(f!=this._version)throw Error("Unsupported version: "+f);this._sources=new vq,this._names=new vq;var P={line:-1,column:0};this._sections=K.map(function(j){if(j.url)throw Error("Support for url field in sections not implemented.");var v=k.getArg(j,"offset"),O=k.getArg(v,"line"),w=k.getArg(v,"column");if(O<P.line||O===P.line&&w<P.column)throw Error("Section offsets must be ordered and non-overlapping.");return P=v,{generatedOffset:{generatedLine:O+1,generatedColumn:w+1},consumer:new J(k.getArg(j,"map"),q)}})}i.prototype=Object.create(J.prototype);i.prototype.constructor=J;i.prototype._version=3;Object.defineProperty(i.prototype,"sources",{get:function(){var _=[];for(var q=0;q<this._sections.length;q++)for(var $=0;$<this._sections[q].consumer.sources.length;$++)_.push(this._sections[q].consumer.sources[$]);return _}});i.prototype.originalPositionFor=function(q){var $={generatedLine:k.getArg(q,"line"),generatedColumn:k.getArg(q,"column")},f=E_.search($,this._sections,function(P,j){var v=P.generatedLine-j.generatedOffset.generatedLine;if(v)return v;return P.generatedColumn-j.generatedOffset.generatedColumn}),K=this._sections[f];if(!K)return{source:null,line:null,column:null,name:null};return K.consumer.originalPositionFor({line:$.generatedLine-(K.generatedOffset.generatedLine-1),column:$.generatedColumn-(K.generatedOffset.generatedLine===$.generatedLine?K.generatedOffset.generatedColumn-1:0),bias:q.bias})};i.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(q){return q.consumer.hasContentsOfAllSources()})};i.prototype.sourceContentFor=function(q,$){for(var f=0;f<this._sections.length;f++){var K=this._sections[f],P=K.consumer.sourceContentFor(q,!0);if(P)return P}if($)return null;else throw Error('"'+q+'" is not in the SourceMap.')};i.prototype.generatedPositionFor=function(q){for(var $=0;$<this._sections.length;$++){var f=this._sections[$];if(f.consumer._findSourceIndex(k.getArg(q,"source"))===-1)continue;var K=f.consumer.generatedPositionFor(q);if(K){var P={line:K.line+(f.generatedOffset.generatedLine-1),column:K.column+(f.generatedOffset.generatedLine===K.line?f.generatedOffset.generatedColumn-1:0)};return P}}return{line:null,column:null}};i.prototype._parseMappings=function(q,$){this.__generatedMappings=[],this.__originalMappings=[];for(var f=0;f<this._sections.length;f++){var K=this._sections[f],P=K.consumer._generatedMappings;for(var j=0;j<P.length;j++){var v=P[j],O=K.consumer._sources.at(v.source);O=k.computeSourceURL(K.consumer.sourceRoot,O,this._sourceMapURL),this._sources.add(O),O=this._sources.indexOf(O);var w=null;if(v.name)w=K.consumer._names.at(v.name),this._names.add(w),w=this._names.indexOf(w);var h={source:O,generatedLine:v.generatedLine+(K.generatedOffset.generatedLine-1),generatedColumn:v.generatedColumn+(K.generatedOffset.generatedLine===v.generatedLine?K.generatedOffset.generatedColumn-1:0),originalLine:v.originalLine,originalColumn:v.originalColumn,name:w};if(this.__generatedMappings.push(h),typeof h.originalLine==="number")this.__originalMappings.push(h)}}oq(this.__generatedMappings,k.compareByGeneratedPositionsDeflated),oq(this.__originalMappings,k.compareByOriginalPositions)};$4.IndexedSourceMapConsumer=i});var q8=H((O4)=>{var j4=V_().SourceMapGenerator,Rq=jq(),v4=/(\r?\n)/,w4=10,wq="$$$isSourceNode$$$";function e(_,q,$,f,K){if(this.children=[],this.sourceContents={},this.line=_==null?null:_,this.column=q==null?null:q,this.source=$==null?null:$,this.name=K==null?null:K,this[wq]=!0,f!=null)this.add(f)}e.fromStringWithSourceMap=function(q,$,f){var K=new e,P=q.split(v4),j=0,v=function(){var T=W(),z=W()||"";return T+z;function W(){return j<P.length?P[j++]:void 0}},O=1,w=0,h=null;if($.eachMapping(function(T){if(h!==null)if(O<T.generatedLine)Y(h,v()),O++,w=0;else{var z=P[j]||"",W=z.substr(0,T.generatedColumn-w);P[j]=z.substr(T.generatedColumn-w),w=T.generatedColumn,Y(h,W),h=T;return}while(O<T.generatedLine)K.add(v()),O++;if(w<T.generatedColumn){var z=P[j]||"";K.add(z.substr(0,T.generatedColumn)),P[j]=z.substr(T.generatedColumn),w=T.generatedColumn}h=T},this),j<P.length){if(h)Y(h,v());K.add(P.splice(j).join(""))}return $.sources.forEach(function(T){var z=$.sourceContentFor(T);if(z!=null){if(f!=null)T=Rq.join(f,T);K.setSourceContent(T,z)}}),K;function Y(T,z){if(T===null||T.source===void 0)K.add(z);else{var W=f?Rq.join(f,T.source):T.source;K.add(new e(T.originalLine,T.originalColumn,W,z,T.name))}}};e.prototype.add=function(q){if(Array.isArray(q))q.forEach(function($){this.add($)},this);else if(q[wq]||typeof q==="string"){if(q)this.children.push(q)}else throw TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+q);return this};e.prototype.prepend=function(q){if(Array.isArray(q))for(var $=q.length-1;$>=0;$--)this.prepend(q[$]);else if(q[wq]||typeof q==="string")this.children.unshift(q);else throw TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+q);return this};e.prototype.walk=function(q){var $;for(var f=0,K=this.children.length;f<K;f++)if($=this.children[f],$[wq])$.walk(q);else if($!=="")q($,{source:this.source,line:this.line,column:this.column,name:this.name})};e.prototype.join=function(q){var $,f,K=this.children.length;if(K>0){$=[];for(f=0;f<K-1;f++)$.push(this.children[f]),$.push(q);$.push(this.children[f]),this.children=$}return this};e.prototype.replaceRight=function(q,$){var f=this.children[this.children.length-1];if(f[wq])f.replaceRight(q,$);else if(typeof f==="string")this.children[this.children.length-1]=f.replace(q,$);else this.children.push("".replace(q,$));return this};e.prototype.setSourceContent=function(q,$){this.sourceContents[Rq.toSetString(q)]=$};e.prototype.walkSourceContents=function(q){for(var $=0,f=this.children.length;$<f;$++)if(this.children[$][wq])this.children[$].walkSourceContents(q);var K=Object.keys(this.sourceContents);for(var $=0,f=K.length;$<f;$++)q(Rq.fromSetString(K[$]),this.sourceContents[K[$]])};e.prototype.toString=function(){var q="";return this.walk(function($){q+=$}),q};e.prototype.toStringWithSourceMap=function(q){var $={code:"",line:1,column:0},f=new j4(q),K=!1,P=null,j=null,v=null,O=null;return this.walk(function(w,h){if($.code+=w,h.source!==null&&h.line!==null&&h.column!==null){if(P!==h.source||j!==h.line||v!==h.column||O!==h.name)f.addMapping({source:h.source,original:{line:h.line,column:h.column},generated:{line:$.line,column:$.column},name:h.name});P=h.source,j=h.line,v=h.column,O=h.name,K=!0}else if(K)f.addMapping({generated:{line:$.line,column:$.column}}),P=null,K=!1;for(var Y=0,T=w.length;Y<T;Y++)if(w.charCodeAt(Y)===w4){if($.line++,$.column=0,Y+1===T)P=null,K=!1;else if(K)f.addMapping({source:h.source,original:{line:h.line,column:h.column},generated:{line:$.line,column:$.column},name:h.name})}else $.column++}),this.walkSourceContents(function(w,h){f.setSourceContent(w,h)}),{code:$.code,map:f}};O4.SourceNode=e});var _8=H((h4)=>{h4.SourceMapGenerator=V_().SourceMapGenerator;h4.SourceMapConsumer=Q6().SourceMapConsumer;h4.SourceNode=q8().SourceNode});var P8=H((f8,K8)=>{f8.__esModule=!0;var g_=p(),F=void 0;try{if(typeof define!=="function"||!define.amd)I_=_8(),F=I_.SourceNode}catch(_){}var I_;if(!F)F=function(_,q,$,f){if(this.src="",f)this.add(f)},F.prototype={add:function(q){if(g_.isArray(q))q=q.join("");this.src+=q},prepend:function(q){if(g_.isArray(q))q=q.join("");this.src=q+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}};function R_(_,q,$){if(g_.isArray(_)){var f=[];for(var K=0,P=_.length;K<P;K++)f.push(q.wrap(_[K],$));return f}else if(typeof _==="boolean"||typeof _==="number")return _+"";return _}function $8(_){this.srcFile=_,this.source=[]}$8.prototype={isEmpty:function(){return!this.source.length},prepend:function(q,$){this.source.unshift(this.wrap(q,$))},push:function(q,$){this.source.push(this.wrap(q,$))},merge:function(){var q=this.empty();return this.each(function($){q.add([" ",$,`
12
+ `])}),q},each:function(q){for(var $=0,f=this.source.length;$<f;$++)q(this.source[$])},empty:function(){var q=this.currentLocation||{start:{}};return new F(q.start.line,q.start.column,this.srcFile)},wrap:function(q){var $=arguments.length<=1||arguments[1]===void 0?this.currentLocation||{start:{}}:arguments[1];if(q instanceof F)return q;return q=R_(q,this,$),new F($.start.line,$.start.column,this.srcFile,q)},functionCall:function(q,$,f){return f=this.generateList(f),this.wrap([q,$?"."+$+"(":"(",f,")"])},quotedString:function(q){return'"'+(q+"").replace(/\\/g,"\\\\").replace(/"/g,"\\\"").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},objectLiteral:function(q){var $=this,f=[];Object.keys(q).forEach(function(P){var j=R_(q[P],$);if(j!=="undefined")f.push([$.quotedString(P),":",j])});var K=this.generateList(f);return K.prepend("{"),K.add("}"),K},generateList:function(q){var $=this.empty();for(var f=0,K=q.length;f<K;f++){if(f)$.add(",");$.add(R_(q[f],this))}return $},generateArray:function(q){var $=this.generateList(q);return $.prepend("["),$.add("]"),$}};f8.default=$8;K8.exports=f8.default});var h8=H((O8,Y8)=>{O8.__esModule=!0;function w8(_){return _&&_.__esModule?_:{default:_}}var j8=Sq(),W4=t(),y_=w8(W4),J4=p(),Z4=P8(),v8=w8(Z4);function Oq(_){this.value=_}function Yq(){}Yq.prototype={nameLookup:function(q,$){return this.internalNameLookup(q,$)},depthedLookup:function(q){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(q),")"]},compilerInfo:function(){var q=j8.COMPILER_REVISION,$=j8.REVISION_CHANGES[q];return[q,$]},appendToBuffer:function(q,$,f){if(!J4.isArray(q))q=[q];if(q=this.source.wrap(q,$),this.environment.isSimple)return["return ",q,";"];else if(f)return["buffer += ",q,";"];else return q.appendToBuffer=!0,q},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(q,$){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",q,",",JSON.stringify($),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(q,$,f,K){this.environment=q,this.options=$,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!K,this.name=this.environment.name,this.isChild=!!f,this.context=f||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(q,$),this.useDepths=this.useDepths||q.useDepths||q.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||q.useBlockParams;var P=q.opcodes,j=void 0,v=void 0,O=void 0,w=void 0;for(O=0,w=P.length;O<w;O++)j=P[O],this.source.currentLocation=j.loc,v=v||j.loc,this[j.opcode].apply(this,j.args);if(this.source.currentLocation=v,this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new y_.default("Compile completed with content left on stack");if(!this.decorators.isEmpty())if(this.useDecorators=!0,this.decorators.prepend(["var decorators = container.decorators, ",this.lookupPropertyFunctionVarDeclaration(),`;
13
13
  `]),this.decorators.push("return fn;"),K)this.decorators=Function.apply(this,["fn","props","container","depth0","data","blockParams","depths",this.decorators.merge()]);else this.decorators.prepend(`function(fn, props, container, depth0, data, blockParams, depths) {
14
14
  `),this.decorators.push(`}
15
- `),this.decorators=this.decorators.merge();else this.decorators=void 0;var h=this.createFunctionContext(K);if(!this.isChild){var Y={compiler:this.compilerInfo(),main:h};if(this.decorators)Y.main_d=this.decorators,Y.useDecorators=!0;var T=this.context,z=T.programs,W=T.decorators;for(O=0,v=z.length;O<v;O++)if(z[O]){if(Y[O]=z[O],W[O])Y[O+"_d"]=W[O],Y.useDecorators=!0}if(this.environment.usePartial)Y.usePartial=!0;if(this.options.data)Y.useData=!0;if(this.useDepths)Y.useDepths=!0;if(this.useBlockParams)Y.useBlockParams=!0;if(this.options.compat)Y.compat=!0;if(!K)if(Y.compiler=JSON.stringify(Y.compiler),this.source.currentLocation={start:{line:1,column:0}},Y=this.objectLiteral(Y),$.srcName)Y=Y.toStringWithSourceMap({file:$.destName}),Y.map=Y.map&&Y.map.toString();else Y=Y.toString();else Y.compilerOptions=this.options;return Y}else return h},preamble:function(){this.lastContext=0,this.source=new v8.default(this.options.srcName),this.decorators=new v8.default(this.options.srcName)},createFunctionContext:function(q){var $=this,f="",K=this.stackVars.concat(this.registers.list);if(K.length>0)f+=", "+K.join(", ");var P=0;if(Object.keys(this.aliases).forEach(function(O){var v=$.aliases[O];if(v.children&&v.referenceCount>1)f+=", alias"+ ++P+"="+O,v.children[0]="alias"+P}),this.lookupPropertyFunctionIsUsed)f+=", "+this.lookupPropertyFunctionVarDeclaration();var j=["container","depth0","helpers","partials","data"];if(this.useBlockParams||this.useDepths)j.push("blockParams");if(this.useDepths)j.push("depths");var w=this.mergeSource(f);if(q)return j.push(w),Function.apply(this,j);else return this.source.wrap(["function(",j.join(","),`) {
16
- `,w,"}"])},mergeSource:function(q){var $=this.environment.isSimple,f=!this.forceBuffer,K=void 0,P=void 0,j=void 0,w=void 0;if(this.source.each(function(O){if(O.appendToBuffer){if(j)O.prepend(" + ");else j=O;w=O}else{if(j){if(!P)K=!0;else j.prepend("buffer += ");w.add(";"),j=w=void 0}if(P=!0,!$)f=!1}}),f){if(j)j.prepend("return "),w.add(";");else if(!P)this.source.push('return "";')}else if(q+=", buffer = "+(K?"":this.initializeBuffer()),j)j.prepend("return buffer + "),w.add(";");else this.source.push("return buffer;");if(q)this.source.prepend("var "+q.substring(2)+(K?"":`;
15
+ `),this.decorators=this.decorators.merge();else this.decorators=void 0;var h=this.createFunctionContext(K);if(!this.isChild){var Y={compiler:this.compilerInfo(),main:h};if(this.decorators)Y.main_d=this.decorators,Y.useDecorators=!0;var T=this.context,z=T.programs,W=T.decorators;for(O=0,w=z.length;O<w;O++)if(z[O]){if(Y[O]=z[O],W[O])Y[O+"_d"]=W[O],Y.useDecorators=!0}if(this.environment.usePartial)Y.usePartial=!0;if(this.options.data)Y.useData=!0;if(this.useDepths)Y.useDepths=!0;if(this.useBlockParams)Y.useBlockParams=!0;if(this.options.compat)Y.compat=!0;if(!K)if(Y.compiler=JSON.stringify(Y.compiler),this.source.currentLocation={start:{line:1,column:0}},Y=this.objectLiteral(Y),$.srcName)Y=Y.toStringWithSourceMap({file:$.destName}),Y.map=Y.map&&Y.map.toString();else Y=Y.toString();else Y.compilerOptions=this.options;return Y}else return h},preamble:function(){this.lastContext=0,this.source=new v8.default(this.options.srcName),this.decorators=new v8.default(this.options.srcName)},createFunctionContext:function(q){var $=this,f="",K=this.stackVars.concat(this.registers.list);if(K.length>0)f+=", "+K.join(", ");var P=0;if(Object.keys(this.aliases).forEach(function(O){var w=$.aliases[O];if(w.children&&w.referenceCount>1)f+=", alias"+ ++P+"="+O,w.children[0]="alias"+P}),this.lookupPropertyFunctionIsUsed)f+=", "+this.lookupPropertyFunctionVarDeclaration();var j=["container","depth0","helpers","partials","data"];if(this.useBlockParams||this.useDepths)j.push("blockParams");if(this.useDepths)j.push("depths");var v=this.mergeSource(f);if(q)return j.push(v),Function.apply(this,j);else return this.source.wrap(["function(",j.join(","),`) {
16
+ `,v,"}"])},mergeSource:function(q){var $=this.environment.isSimple,f=!this.forceBuffer,K=void 0,P=void 0,j=void 0,v=void 0;if(this.source.each(function(O){if(O.appendToBuffer){if(j)O.prepend(" + ");else j=O;v=O}else{if(j){if(!P)K=!0;else j.prepend("buffer += ");v.add(";"),j=v=void 0}if(P=!0,!$)f=!1}}),f){if(j)j.prepend("return "),v.add(";");else if(!P)this.source.push('return "";')}else if(q+=", buffer = "+(K?"":this.initializeBuffer()),j)j.prepend("return buffer + "),v.add(";");else this.source.push("return buffer;");if(q)this.source.prepend("var "+q.substring(2)+(K?"":`;
17
17
  `));return this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return`
18
18
  lookupProperty = container.lookupProperty || function(parent, propertyName) {
19
19
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
@@ -21,29 +21,29 @@ Expecting `+eq.join(", ")+", got '"+(this.terminals_[X]||X)+"'";else Bq="Parse e
21
21
  }
22
22
  return undefined
23
23
  }
24
- `.trim()},blockValue:function(q){var $=this.aliasable("container.hooks.blockHelperMissing"),f=[this.contextName(0)];this.setupHelperArgs(q,0,f);var K=this.popStack();f.splice(1,0,K),this.push(this.source.functionCall($,"call",f))},ambiguousBlockValue:function(){var q=this.aliasable("container.hooks.blockHelperMissing"),$=[this.contextName(0)];this.setupHelperArgs("",0,$,!0),this.flushInline();var f=this.topStack();$.splice(1,0,f),this.pushSource(["if (!",this.lastHelper,") { ",f," = ",this.source.functionCall(q,"call",$),"}"])},appendContent:function(q){if(this.pendingContent)q=this.pendingContent+q;else this.pendingLocation=this.source.currentLocation;this.pendingContent=q},append:function(){if(this.isInline())this.replaceStack(function($){return[" != null ? ",$,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var q=this.popStack();if(this.pushSource(["if (",q," != null) { ",this.appendToBuffer(q,void 0,!0)," }"]),this.environment.isSimple)this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(q){this.lastContext=q},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(q,$,f,K){var P=0;if(!K&&this.options.compat&&!this.lastContext)this.push(this.depthedLookup(q[P++]));else this.pushContext();this.resolvePath("context",q,P,$,f)},lookupBlockParam:function(q,$){this.useBlockParams=!0,this.push(["blockParams[",q[0],"][",q[1],"]"]),this.resolvePath("context",$,1)},lookupData:function(q,$,f){if(!q)this.pushStackLiteral("data");else this.pushStackLiteral("container.data(data, "+q+")");this.resolvePath("data",$,0,!0,f)},resolvePath:function(q,$,f,K,P){var j=this;if(this.options.strict||this.options.assumeObjects){this.push(m4(this.options.strict&&P,this,$,f,q));return}var w=$.length;for(;f<w;f++)this.replaceStack(function(O){var v=j.nameLookup(O,$[f],q);if(!K)return[" != null ? ",v," : ",O];else return[" && ",v]})},resolvePossibleLambda:function(){this.push([this.aliasable("container.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},pushStringParam:function(q,$){if(this.pushContext(),this.pushString($),$!=="SubExpression")if(typeof q==="string")this.pushString(q);else this.pushStackLiteral(q)},emptyHash:function(q){if(this.trackIds)this.push("{}");if(this.stringParams)this.push("{}"),this.push("{}");this.pushStackLiteral(q?"undefined":"{}")},pushHash:function(){if(this.hash)this.hashes.push(this.hash);this.hash={values:{},types:[],contexts:[],ids:[]}},popHash:function(){var q=this.hash;if(this.hash=this.hashes.pop(),this.trackIds)this.push(this.objectLiteral(q.ids));if(this.stringParams)this.push(this.objectLiteral(q.contexts)),this.push(this.objectLiteral(q.types));this.push(this.objectLiteral(q.values))},pushString:function(q){this.pushStackLiteral(this.quotedString(q))},pushLiteral:function(q){this.pushStackLiteral(q)},pushProgram:function(q){if(q!=null)this.pushStackLiteral(this.programExpression(q));else this.pushStackLiteral(null)},registerDecorator:function(q,$){var f=this.nameLookup("decorators",$,"decorator"),K=this.setupHelperArgs($,q);this.decorators.push(["fn = ",this.decorators.functionCall(f,"",["fn","props","container",K])," || fn;"])},invokeHelper:function(q,$,f){var K=this.popStack(),P=this.setupHelper(q,$),j=[];if(f)j.push(P.name);if(j.push(K),!this.options.strict)j.push(this.aliasable("container.hooks.helperMissing"));var w=["(",this.itemsSeparatedBy(j,"||"),")"],O=this.source.functionCall(w,"call",P.callParams);this.push(O)},itemsSeparatedBy:function(q,$){var f=[];f.push(q[0]);for(var K=1;K<q.length;K++)f.push($,q[K]);return f},invokeKnownHelper:function(q,$){var f=this.setupHelper(q,$);this.push(this.source.functionCall(f.name,"call",f.callParams))},invokeAmbiguous:function(q,$){this.useRegister("helper");var f=this.popStack();this.emptyHash();var K=this.setupHelper(0,q,$),P=this.lastHelper=this.nameLookup("helpers",q,"helper"),j=["(","(helper = ",P," || ",f,")"];if(!this.options.strict)j[0]="(helper = ",j.push(" != null ? helper : ",this.aliasable("container.hooks.helperMissing"));this.push(["(",j,K.paramsInit?["),(",K.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("helper","call",K.callParams)," : helper))"])},invokePartial:function(q,$,f){var K=[],P=this.setupParams($,1,K);if(q)$=this.popStack(),delete P.name;if(f)P.indent=JSON.stringify(f);if(P.helpers="helpers",P.partials="partials",P.decorators="container.decorators",!q)K.unshift(this.nameLookup("partials",$,"partial"));else K.unshift($);if(this.options.compat)P.depths="depths";P=this.objectLiteral(P),K.push(P),this.push(this.source.functionCall("container.invokePartial","",K))},assignToHash:function(q){var $=this.popStack(),f=void 0,K=void 0,P=void 0;if(this.trackIds)P=this.popStack();if(this.stringParams)K=this.popStack(),f=this.popStack();var j=this.hash;if(f)j.contexts[q]=f;if(K)j.types[q]=K;if(P)j.ids[q]=P;j.values[q]=$},pushId:function(q,$,f){if(q==="BlockParam")this.pushStackLiteral("blockParams["+$[0]+"].path["+$[1]+"]"+(f?" + "+JSON.stringify("."+f):""));else if(q==="PathExpression")this.pushString($);else if(q==="SubExpression")this.pushStackLiteral("true");else this.pushStackLiteral("null")},compiler:Yq,compileChildren:function(q,$){var f=q.children,K=void 0,P=void 0;for(var j=0,w=f.length;j<w;j++){K=f[j],P=new this.compiler;var O=this.matchExistingProgram(K);if(O==null){this.context.programs.push("");var v=this.context.programs.length;K.index=v,K.name="program"+v,this.context.programs[v]=P.compile(K,$,this.context,!this.precompile),this.context.decorators[v]=P.decorators,this.context.environments[v]=K,this.useDepths=this.useDepths||P.useDepths,this.useBlockParams=this.useBlockParams||P.useBlockParams,K.useDepths=this.useDepths,K.useBlockParams=this.useBlockParams}else K.index=O.index,K.name="program"+O.index,this.useDepths=this.useDepths||O.useDepths,this.useBlockParams=this.useBlockParams||O.useBlockParams}},matchExistingProgram:function(q){for(var $=0,f=this.context.environments.length;$<f;$++){var K=this.context.environments[$];if(K&&K.equals(q))return K}},programExpression:function(q){var $=this.environment.children[q],f=[$.index,"data",$.blockParams];if(this.useBlockParams||this.useDepths)f.push("blockParams");if(this.useDepths)f.push("depths");return"container.program("+f.join(", ")+")"},useRegister:function(q){if(!this.registers[q])this.registers[q]=!0,this.registers.list.push(q)},push:function(q){if(!(q instanceof Oq))q=this.source.wrap(q);return this.inlineStack.push(q),q},pushStackLiteral:function(q){this.push(new Oq(q))},pushSource:function(q){if(this.pendingContent)this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),this.pendingContent=void 0;if(q)this.source.push(q)},replaceStack:function(q){var $=["("],f=void 0,K=void 0,P=void 0;if(!this.isInline())throw new I_.default("replaceStack on non-inline");var j=this.popStack(!0);if(j instanceof Oq)f=[j.value],$=["(",f],P=!0;else{K=!0;var w=this.incrStack();$=["((",this.push(w)," = ",j,")"],f=this.topStack()}var O=q.call(this,f);if(!P)this.popStack();if(K)this.stackSlot--;this.push($.concat(O,")"))},incrStack:function(){if(this.stackSlot++,this.stackSlot>this.stackVars.length)this.stackVars.push("stack"+this.stackSlot);return this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var q=this.inlineStack;this.inlineStack=[];for(var $=0,f=q.length;$<f;$++){var K=q[$];if(K instanceof Oq)this.compileStack.push(K);else{var P=this.incrStack();this.pushSource([P," = ",K,";"]),this.compileStack.push(P)}}},isInline:function(){return this.inlineStack.length},popStack:function(q){var $=this.isInline(),f=($?this.inlineStack:this.compileStack).pop();if(!q&&f instanceof Oq)return f.value;else{if(!$){if(!this.stackSlot)throw new I_.default("Invalid stack pop");this.stackSlot--}return f}},topStack:function(){var q=this.isInline()?this.inlineStack:this.compileStack,$=q[q.length-1];if($ instanceof Oq)return $.value;else return $},contextName:function(q){if(this.useDepths&&q)return"depths["+q+"]";else return"depth"+q},quotedString:function(q){return this.source.quotedString(q)},objectLiteral:function(q){return this.source.objectLiteral(q)},aliasable:function(q){var $=this.aliases[q];if($)return $.referenceCount++,$;return $=this.aliases[q]=this.source.wrap(q),$.aliasable=!0,$.referenceCount=1,$},setupHelper:function(q,$,f){var K=[],P=this.setupHelperArgs($,q,K,f),j=this.nameLookup("helpers",$,"helper"),w=this.aliasable(this.contextName(0)+" != null ? "+this.contextName(0)+" : (container.nullContext || {})");return{params:K,paramsInit:P,name:j,callParams:[w].concat(K)}},setupParams:function(q,$,f){var K={},P=[],j=[],w=[],O=!f,v=void 0;if(O)f=[];if(K.name=this.quotedString(q),K.hash=this.popStack(),this.trackIds)K.hashIds=this.popStack();if(this.stringParams)K.hashTypes=this.popStack(),K.hashContexts=this.popStack();var h=this.popStack(),Y=this.popStack();if(Y||h)K.fn=Y||"container.noop",K.inverse=h||"container.noop";var T=$;while(T--){if(v=this.popStack(),f[T]=v,this.trackIds)w[T]=this.popStack();if(this.stringParams)j[T]=this.popStack(),P[T]=this.popStack()}if(O)K.args=this.source.generateArray(f);if(this.trackIds)K.ids=this.source.generateArray(w);if(this.stringParams)K.types=this.source.generateArray(j),K.contexts=this.source.generateArray(P);if(this.options.data)K.data="data";if(this.useBlockParams)K.blockParams="blockParams";return K},setupHelperArgs:function(q,$,f,K){var P=this.setupParams(q,$,f);if(P.loc=JSON.stringify(this.source.currentLocation),P=this.objectLiteral(P),K)return this.useRegister("options"),f.push("options"),["options=",P];else if(f)return f.push(P),"";else return P}};(function(){var _="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false".split(" "),q=Yq.RESERVED_WORDS={};for(var $=0,f=_.length;$<f;$++)q[_[$]]=!0})();Yq.isValidJavaScriptVariableName=function(_){return!Yq.RESERVED_WORDS[_]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(_)};function m4(_,q,$,f,K){var P=q.popStack(),j=$.length;if(_)j--;for(;f<j;f++)P=q.nameLookup(P,$[f],K);if(_)return[q.aliasable("container.strict"),"(",P,", ",q.quotedString($[f]),", ",JSON.stringify(q.source.currentLocation)," )"];else return P}O8.default=Yq;Y8.exports=O8.default});var z8=H((k8,r8)=>{k8.__esModule=!0;function Aq(_){return _&&_.__esModule?_:{default:_}}var n4=r6(),A4=Aq(n4),X4=u_(),p4=Aq(X4),y_=i6(),D_=C6(),e4=h8(),d4=Aq(e4),t4=Vq(),G4=Aq(t4),i4=W_(),a4=Aq(i4),b4=A4.default.create;function T8(){var _=b4();return _.compile=function(q,$){return D_.compile(q,$,_)},_.precompile=function(q,$){return D_.precompile(q,$,_)},_.AST=p4.default,_.Compiler=D_.Compiler,_.JavaScriptCompiler=d4.default,_.Parser=y_.parser,_.parse=y_.parse,_.parseWithoutProcessing=y_.parseWithoutProcessing,_}var hq=T8();hq.create=T8;a4.default(hq);hq.Visitor=G4.default;hq.default=hq;k8.default=hq;r8.exports=k8.default});var H8=H((c4)=>{c4.__esModule=!0;c4.print=N4;c4.PrintVisitor=Z;function l4(_){return _&&_.__esModule?_:{default:_}}var V4=Vq(),M4=l4(V4);function N4(_){return new Z().accept(_)}function Z(){this.padding=0}Z.prototype=new M4.default;Z.prototype.pad=function(_){var q="";for(var $=0,f=this.padding;$<f;$++)q+=" ";return q+=_+`
25
- `,q};Z.prototype.Program=function(_){var q="",$=_.body,f=void 0,K=void 0;if(_.blockParams){var P="BLOCK PARAMS: [";for(f=0,K=_.blockParams.length;f<K;f++)P+=" "+_.blockParams[f];P+=" ]",q+=this.pad(P)}for(f=0,K=$.length;f<K;f++)q+=this.accept($[f]);return this.padding--,q};Z.prototype.MustacheStatement=function(_){return this.pad("{{ "+this.SubExpression(_)+" }}")};Z.prototype.Decorator=function(_){return this.pad("{{ DIRECTIVE "+this.SubExpression(_)+" }}")};Z.prototype.BlockStatement=Z.prototype.DecoratorBlock=function(_){var q="";if(q+=this.pad((_.type==="DecoratorBlock"?"DIRECTIVE ":"")+"BLOCK:"),this.padding++,q+=this.pad(this.SubExpression(_)),_.program)q+=this.pad("PROGRAM:"),this.padding++,q+=this.accept(_.program),this.padding--;if(_.inverse){if(_.program)this.padding++;if(q+=this.pad("{{^}}"),this.padding++,q+=this.accept(_.inverse),this.padding--,_.program)this.padding--}return this.padding--,q};Z.prototype.PartialStatement=function(_){var q="PARTIAL:"+_.name.original;if(_.params[0])q+=" "+this.accept(_.params[0]);if(_.hash)q+=" "+this.accept(_.hash);return this.pad("{{> "+q+" }}")};Z.prototype.PartialBlockStatement=function(_){var q="PARTIAL BLOCK:"+_.name.original;if(_.params[0])q+=" "+this.accept(_.params[0]);if(_.hash)q+=" "+this.accept(_.hash);return q+=" "+this.pad("PROGRAM:"),this.padding++,q+=this.accept(_.program),this.padding--,this.pad("{{> "+q+" }}")};Z.prototype.ContentStatement=function(_){return this.pad("CONTENT[ '"+_.value+"' ]")};Z.prototype.CommentStatement=function(_){return this.pad("{{! '"+_.value+"' }}")};Z.prototype.SubExpression=function(_){var q=_.params,$=[],f=void 0;for(var K=0,P=q.length;K<P;K++)$.push(this.accept(q[K]));return q="["+$.join(", ")+"]",f=_.hash?" "+this.accept(_.hash):"",this.accept(_.path)+" "+q+f};Z.prototype.PathExpression=function(_){var q=_.parts.join("/");return(_.data?"@":"")+"PATH:"+q};Z.prototype.StringLiteral=function(_){return'"'+_.value+'"'};Z.prototype.NumberLiteral=function(_){return"NUMBER{"+_.value+"}"};Z.prototype.BooleanLiteral=function(_){return"BOOLEAN{"+_.value+"}"};Z.prototype.UndefinedLiteral=function(){return"UNDEFINED"};Z.prototype.NullLiteral=function(){return"NULL"};Z.prototype.Hash=function(_){var q=_.pairs,$=[];for(var f=0,K=q.length;f<K;f++)$.push(this.accept(q[f]));return"HASH{"+$.join(", ")+"}"};Z.prototype.HashPair=function(_){return _.key+"="+this.accept(_.value)}});var m8=H((ov,Z8)=>{var Rq=z8().default,J8=H8();Rq.PrintVisitor=J8.PrintVisitor;Rq.print=J8.print;Z8.exports=Rq;function W8(_,q){var $=kq("fs"),f=$.readFileSync(q,"utf8");_.exports=Rq.compile(f)}if(kq.extensions)kq.extensions[".handlebars"]=W8,kq.extensions[".hbs"]=W8});var g=Uq(Qq(),1),r={info:(_)=>console.log(g.default.cyan(" \u25B8"),_),success:(_)=>console.log(g.default.green(" \u2713"),_),warn:(_)=>console.warn(g.default.yellow(" \u26A0"),_),error:(_)=>console.error(g.default.red(" \u2717"),_),step:(_)=>console.log(g.default.bold(g.default.white(`
26
- ${_}`))),dim:(_)=>console.log(g.default.dim(` ${_}`))};import{join as _f}from"path";var w$={info:()=>{},verbose:()=>{},warn:()=>{},error:()=>{}};function O$(_="info"){if(_==="silent")return w$;return{info:(q)=>console.log(` ${q}`),verbose:(q)=>_==="verbose"?console.log(` ${q}`):void 0,warn:(q)=>console.warn(` \u26A0 ${q}`),error:(q)=>console.error(` \u2717 ${q}`)}}function Y$(_,q,$={}){let f=_.app.typescript,K=_.app.ssr===!0,P=_.app.ssr==="ssg",j=!K&&!P,w=$.templateDir??_f(import.meta.dirname,"..","..","..","templates");return{ast:_,outputDir:q,templateDir:w,isTypeScript:f,isSsr:K,isSsg:P,isSpa:j,mode:j?"spa":"ssr",ext:f?"ts":"js",logger:$.logger??w$}}class rq extends Error{code;constructor(_,q){super(_);this.code=q;this.name="VaspError"}}class b extends rq{diagnostics;constructor(_){let q=_[0],$=q?.loc,f=$?` (line ${$.line}, col ${$.col})`:"",K=q?.code??"E000_UNKNOWN";super(`[${K}]${f}: ${q?.message??"Unknown error"}`,K);this.name="ParseError",this.diagnostics=_}format(){return this.diagnostics.map((_)=>{let q=_.loc?` at line ${_.loc.line}:${_.loc.col}`:"";return`[${_.code}]${q} ${_.message}
24
+ `.trim()},blockValue:function(q){var $=this.aliasable("container.hooks.blockHelperMissing"),f=[this.contextName(0)];this.setupHelperArgs(q,0,f);var K=this.popStack();f.splice(1,0,K),this.push(this.source.functionCall($,"call",f))},ambiguousBlockValue:function(){var q=this.aliasable("container.hooks.blockHelperMissing"),$=[this.contextName(0)];this.setupHelperArgs("",0,$,!0),this.flushInline();var f=this.topStack();$.splice(1,0,f),this.pushSource(["if (!",this.lastHelper,") { ",f," = ",this.source.functionCall(q,"call",$),"}"])},appendContent:function(q){if(this.pendingContent)q=this.pendingContent+q;else this.pendingLocation=this.source.currentLocation;this.pendingContent=q},append:function(){if(this.isInline())this.replaceStack(function($){return[" != null ? ",$,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var q=this.popStack();if(this.pushSource(["if (",q," != null) { ",this.appendToBuffer(q,void 0,!0)," }"]),this.environment.isSimple)this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(q){this.lastContext=q},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(q,$,f,K){var P=0;if(!K&&this.options.compat&&!this.lastContext)this.push(this.depthedLookup(q[P++]));else this.pushContext();this.resolvePath("context",q,P,$,f)},lookupBlockParam:function(q,$){this.useBlockParams=!0,this.push(["blockParams[",q[0],"][",q[1],"]"]),this.resolvePath("context",$,1)},lookupData:function(q,$,f){if(!q)this.pushStackLiteral("data");else this.pushStackLiteral("container.data(data, "+q+")");this.resolvePath("data",$,0,!0,f)},resolvePath:function(q,$,f,K,P){var j=this;if(this.options.strict||this.options.assumeObjects){this.push(m4(this.options.strict&&P,this,$,f,q));return}var v=$.length;for(;f<v;f++)this.replaceStack(function(O){var w=j.nameLookup(O,$[f],q);if(!K)return[" != null ? ",w," : ",O];else return[" && ",w]})},resolvePossibleLambda:function(){this.push([this.aliasable("container.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},pushStringParam:function(q,$){if(this.pushContext(),this.pushString($),$!=="SubExpression")if(typeof q==="string")this.pushString(q);else this.pushStackLiteral(q)},emptyHash:function(q){if(this.trackIds)this.push("{}");if(this.stringParams)this.push("{}"),this.push("{}");this.pushStackLiteral(q?"undefined":"{}")},pushHash:function(){if(this.hash)this.hashes.push(this.hash);this.hash={values:{},types:[],contexts:[],ids:[]}},popHash:function(){var q=this.hash;if(this.hash=this.hashes.pop(),this.trackIds)this.push(this.objectLiteral(q.ids));if(this.stringParams)this.push(this.objectLiteral(q.contexts)),this.push(this.objectLiteral(q.types));this.push(this.objectLiteral(q.values))},pushString:function(q){this.pushStackLiteral(this.quotedString(q))},pushLiteral:function(q){this.pushStackLiteral(q)},pushProgram:function(q){if(q!=null)this.pushStackLiteral(this.programExpression(q));else this.pushStackLiteral(null)},registerDecorator:function(q,$){var f=this.nameLookup("decorators",$,"decorator"),K=this.setupHelperArgs($,q);this.decorators.push(["fn = ",this.decorators.functionCall(f,"",["fn","props","container",K])," || fn;"])},invokeHelper:function(q,$,f){var K=this.popStack(),P=this.setupHelper(q,$),j=[];if(f)j.push(P.name);if(j.push(K),!this.options.strict)j.push(this.aliasable("container.hooks.helperMissing"));var v=["(",this.itemsSeparatedBy(j,"||"),")"],O=this.source.functionCall(v,"call",P.callParams);this.push(O)},itemsSeparatedBy:function(q,$){var f=[];f.push(q[0]);for(var K=1;K<q.length;K++)f.push($,q[K]);return f},invokeKnownHelper:function(q,$){var f=this.setupHelper(q,$);this.push(this.source.functionCall(f.name,"call",f.callParams))},invokeAmbiguous:function(q,$){this.useRegister("helper");var f=this.popStack();this.emptyHash();var K=this.setupHelper(0,q,$),P=this.lastHelper=this.nameLookup("helpers",q,"helper"),j=["(","(helper = ",P," || ",f,")"];if(!this.options.strict)j[0]="(helper = ",j.push(" != null ? helper : ",this.aliasable("container.hooks.helperMissing"));this.push(["(",j,K.paramsInit?["),(",K.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("helper","call",K.callParams)," : helper))"])},invokePartial:function(q,$,f){var K=[],P=this.setupParams($,1,K);if(q)$=this.popStack(),delete P.name;if(f)P.indent=JSON.stringify(f);if(P.helpers="helpers",P.partials="partials",P.decorators="container.decorators",!q)K.unshift(this.nameLookup("partials",$,"partial"));else K.unshift($);if(this.options.compat)P.depths="depths";P=this.objectLiteral(P),K.push(P),this.push(this.source.functionCall("container.invokePartial","",K))},assignToHash:function(q){var $=this.popStack(),f=void 0,K=void 0,P=void 0;if(this.trackIds)P=this.popStack();if(this.stringParams)K=this.popStack(),f=this.popStack();var j=this.hash;if(f)j.contexts[q]=f;if(K)j.types[q]=K;if(P)j.ids[q]=P;j.values[q]=$},pushId:function(q,$,f){if(q==="BlockParam")this.pushStackLiteral("blockParams["+$[0]+"].path["+$[1]+"]"+(f?" + "+JSON.stringify("."+f):""));else if(q==="PathExpression")this.pushString($);else if(q==="SubExpression")this.pushStackLiteral("true");else this.pushStackLiteral("null")},compiler:Yq,compileChildren:function(q,$){var f=q.children,K=void 0,P=void 0;for(var j=0,v=f.length;j<v;j++){K=f[j],P=new this.compiler;var O=this.matchExistingProgram(K);if(O==null){this.context.programs.push("");var w=this.context.programs.length;K.index=w,K.name="program"+w,this.context.programs[w]=P.compile(K,$,this.context,!this.precompile),this.context.decorators[w]=P.decorators,this.context.environments[w]=K,this.useDepths=this.useDepths||P.useDepths,this.useBlockParams=this.useBlockParams||P.useBlockParams,K.useDepths=this.useDepths,K.useBlockParams=this.useBlockParams}else K.index=O.index,K.name="program"+O.index,this.useDepths=this.useDepths||O.useDepths,this.useBlockParams=this.useBlockParams||O.useBlockParams}},matchExistingProgram:function(q){for(var $=0,f=this.context.environments.length;$<f;$++){var K=this.context.environments[$];if(K&&K.equals(q))return K}},programExpression:function(q){var $=this.environment.children[q],f=[$.index,"data",$.blockParams];if(this.useBlockParams||this.useDepths)f.push("blockParams");if(this.useDepths)f.push("depths");return"container.program("+f.join(", ")+")"},useRegister:function(q){if(!this.registers[q])this.registers[q]=!0,this.registers.list.push(q)},push:function(q){if(!(q instanceof Oq))q=this.source.wrap(q);return this.inlineStack.push(q),q},pushStackLiteral:function(q){this.push(new Oq(q))},pushSource:function(q){if(this.pendingContent)this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),this.pendingContent=void 0;if(q)this.source.push(q)},replaceStack:function(q){var $=["("],f=void 0,K=void 0,P=void 0;if(!this.isInline())throw new y_.default("replaceStack on non-inline");var j=this.popStack(!0);if(j instanceof Oq)f=[j.value],$=["(",f],P=!0;else{K=!0;var v=this.incrStack();$=["((",this.push(v)," = ",j,")"],f=this.topStack()}var O=q.call(this,f);if(!P)this.popStack();if(K)this.stackSlot--;this.push($.concat(O,")"))},incrStack:function(){if(this.stackSlot++,this.stackSlot>this.stackVars.length)this.stackVars.push("stack"+this.stackSlot);return this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var q=this.inlineStack;this.inlineStack=[];for(var $=0,f=q.length;$<f;$++){var K=q[$];if(K instanceof Oq)this.compileStack.push(K);else{var P=this.incrStack();this.pushSource([P," = ",K,";"]),this.compileStack.push(P)}}},isInline:function(){return this.inlineStack.length},popStack:function(q){var $=this.isInline(),f=($?this.inlineStack:this.compileStack).pop();if(!q&&f instanceof Oq)return f.value;else{if(!$){if(!this.stackSlot)throw new y_.default("Invalid stack pop");this.stackSlot--}return f}},topStack:function(){var q=this.isInline()?this.inlineStack:this.compileStack,$=q[q.length-1];if($ instanceof Oq)return $.value;else return $},contextName:function(q){if(this.useDepths&&q)return"depths["+q+"]";else return"depth"+q},quotedString:function(q){return this.source.quotedString(q)},objectLiteral:function(q){return this.source.objectLiteral(q)},aliasable:function(q){var $=this.aliases[q];if($)return $.referenceCount++,$;return $=this.aliases[q]=this.source.wrap(q),$.aliasable=!0,$.referenceCount=1,$},setupHelper:function(q,$,f){var K=[],P=this.setupHelperArgs($,q,K,f),j=this.nameLookup("helpers",$,"helper"),v=this.aliasable(this.contextName(0)+" != null ? "+this.contextName(0)+" : (container.nullContext || {})");return{params:K,paramsInit:P,name:j,callParams:[v].concat(K)}},setupParams:function(q,$,f){var K={},P=[],j=[],v=[],O=!f,w=void 0;if(O)f=[];if(K.name=this.quotedString(q),K.hash=this.popStack(),this.trackIds)K.hashIds=this.popStack();if(this.stringParams)K.hashTypes=this.popStack(),K.hashContexts=this.popStack();var h=this.popStack(),Y=this.popStack();if(Y||h)K.fn=Y||"container.noop",K.inverse=h||"container.noop";var T=$;while(T--){if(w=this.popStack(),f[T]=w,this.trackIds)v[T]=this.popStack();if(this.stringParams)j[T]=this.popStack(),P[T]=this.popStack()}if(O)K.args=this.source.generateArray(f);if(this.trackIds)K.ids=this.source.generateArray(v);if(this.stringParams)K.types=this.source.generateArray(j),K.contexts=this.source.generateArray(P);if(this.options.data)K.data="data";if(this.useBlockParams)K.blockParams="blockParams";return K},setupHelperArgs:function(q,$,f,K){var P=this.setupParams(q,$,f);if(P.loc=JSON.stringify(this.source.currentLocation),P=this.objectLiteral(P),K)return this.useRegister("options"),f.push("options"),["options=",P];else if(f)return f.push(P),"";else return P}};(function(){var _="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false".split(" "),q=Yq.RESERVED_WORDS={};for(var $=0,f=_.length;$<f;$++)q[_[$]]=!0})();Yq.isValidJavaScriptVariableName=function(_){return!Yq.RESERVED_WORDS[_]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(_)};function m4(_,q,$,f,K){var P=q.popStack(),j=$.length;if(_)j--;for(;f<j;f++)P=q.nameLookup(P,$[f],K);if(_)return[q.aliasable("container.strict"),"(",P,", ",q.quotedString($[f]),", ",JSON.stringify(q.source.currentLocation)," )"];else return P}O8.default=Yq;Y8.exports=O8.default});var z8=H((k8,r8)=>{k8.__esModule=!0;function Aq(_){return _&&_.__esModule?_:{default:_}}var o4=r6(),A4=Aq(o4),X4=n_(),p4=Aq(X4),D_=i6(),x_=C6(),e4=h8(),d4=Aq(e4),t4=Mq(),G4=Aq(t4),i4=J_(),a4=Aq(i4),b4=A4.default.create;function T8(){var _=b4();return _.compile=function(q,$){return x_.compile(q,$,_)},_.precompile=function(q,$){return x_.precompile(q,$,_)},_.AST=p4.default,_.Compiler=x_.Compiler,_.JavaScriptCompiler=d4.default,_.Parser=D_.parser,_.parse=D_.parse,_.parseWithoutProcessing=D_.parseWithoutProcessing,_}var hq=T8();hq.create=T8;a4.default(hq);hq.Visitor=G4.default;hq.default=hq;k8.default=hq;r8.exports=k8.default});var H8=H((c4)=>{c4.__esModule=!0;c4.print=N4;c4.PrintVisitor=Z;function V4(_){return _&&_.__esModule?_:{default:_}}var l4=Mq(),M4=V4(l4);function N4(_){return new Z().accept(_)}function Z(){this.padding=0}Z.prototype=new M4.default;Z.prototype.pad=function(_){var q="";for(var $=0,f=this.padding;$<f;$++)q+=" ";return q+=_+`
25
+ `,q};Z.prototype.Program=function(_){var q="",$=_.body,f=void 0,K=void 0;if(_.blockParams){var P="BLOCK PARAMS: [";for(f=0,K=_.blockParams.length;f<K;f++)P+=" "+_.blockParams[f];P+=" ]",q+=this.pad(P)}for(f=0,K=$.length;f<K;f++)q+=this.accept($[f]);return this.padding--,q};Z.prototype.MustacheStatement=function(_){return this.pad("{{ "+this.SubExpression(_)+" }}")};Z.prototype.Decorator=function(_){return this.pad("{{ DIRECTIVE "+this.SubExpression(_)+" }}")};Z.prototype.BlockStatement=Z.prototype.DecoratorBlock=function(_){var q="";if(q+=this.pad((_.type==="DecoratorBlock"?"DIRECTIVE ":"")+"BLOCK:"),this.padding++,q+=this.pad(this.SubExpression(_)),_.program)q+=this.pad("PROGRAM:"),this.padding++,q+=this.accept(_.program),this.padding--;if(_.inverse){if(_.program)this.padding++;if(q+=this.pad("{{^}}"),this.padding++,q+=this.accept(_.inverse),this.padding--,_.program)this.padding--}return this.padding--,q};Z.prototype.PartialStatement=function(_){var q="PARTIAL:"+_.name.original;if(_.params[0])q+=" "+this.accept(_.params[0]);if(_.hash)q+=" "+this.accept(_.hash);return this.pad("{{> "+q+" }}")};Z.prototype.PartialBlockStatement=function(_){var q="PARTIAL BLOCK:"+_.name.original;if(_.params[0])q+=" "+this.accept(_.params[0]);if(_.hash)q+=" "+this.accept(_.hash);return q+=" "+this.pad("PROGRAM:"),this.padding++,q+=this.accept(_.program),this.padding--,this.pad("{{> "+q+" }}")};Z.prototype.ContentStatement=function(_){return this.pad("CONTENT[ '"+_.value+"' ]")};Z.prototype.CommentStatement=function(_){return this.pad("{{! '"+_.value+"' }}")};Z.prototype.SubExpression=function(_){var q=_.params,$=[],f=void 0;for(var K=0,P=q.length;K<P;K++)$.push(this.accept(q[K]));return q="["+$.join(", ")+"]",f=_.hash?" "+this.accept(_.hash):"",this.accept(_.path)+" "+q+f};Z.prototype.PathExpression=function(_){var q=_.parts.join("/");return(_.data?"@":"")+"PATH:"+q};Z.prototype.StringLiteral=function(_){return'"'+_.value+'"'};Z.prototype.NumberLiteral=function(_){return"NUMBER{"+_.value+"}"};Z.prototype.BooleanLiteral=function(_){return"BOOLEAN{"+_.value+"}"};Z.prototype.UndefinedLiteral=function(){return"UNDEFINED"};Z.prototype.NullLiteral=function(){return"NULL"};Z.prototype.Hash=function(_){var q=_.pairs,$=[];for(var f=0,K=q.length;f<K;f++)$.push(this.accept(q[f]));return"HASH{"+$.join(", ")+"}"};Z.prototype.HashPair=function(_){return _.key+"="+this.accept(_.value)}});var m8=H((nv,Z8)=>{var gq=z8().default,J8=H8();gq.PrintVisitor=J8.PrintVisitor;gq.print=J8.print;Z8.exports=gq;function W8(_,q){var $=kq("fs"),f=$.readFileSync(q,"utf8");_.exports=gq.compile(f)}if(kq.extensions)kq.extensions[".handlebars"]=W8,kq.extensions[".hbs"]=W8});var g=Fq(q_(),1),r={info:(_)=>console.log(g.default.cyan(" \u25B8"),_),success:(_)=>console.log(g.default.green(" \u2713"),_),warn:(_)=>console.warn(g.default.yellow(" \u26A0"),_),error:(_)=>console.error(g.default.red(" \u2717"),_),step:(_)=>console.log(g.default.bold(g.default.white(`
26
+ ${_}`))),dim:(_)=>console.log(g.default.dim(` ${_}`))};import{join as _f}from"path";var w$={info:()=>{},verbose:()=>{},warn:()=>{},error:()=>{}};function O$(_="info"){if(_==="silent")return w$;return{info:(q)=>console.log(` ${q}`),verbose:(q)=>_==="verbose"?console.log(` ${q}`):void 0,warn:(q)=>console.warn(` \u26A0 ${q}`),error:(q)=>console.error(` \u2717 ${q}`)}}function Y$(_,q,$={}){let f=_.app.typescript,K=_.app.ssr===!0,P=_.app.ssr==="ssg",j=!K&&!P,v=$.templateDir??_f(import.meta.dirname,"..","..","..","templates");return{ast:_,outputDir:q,templateDir:v,isTypeScript:f,isSsr:K,isSsg:P,isSpa:j,mode:j?"spa":"ssr",ext:f?"ts":"js",logger:$.logger??w$}}class rq extends Error{code;constructor(_,q){super(_);this.code=q;this.name="VaspError"}}class b extends rq{diagnostics;constructor(_){let q=_[0],$=q?.loc,f=$?` (line ${$.line}, col ${$.col})`:"",K=q?.code??"E000_UNKNOWN";super(`[${K}]${f}: ${q?.message??"Unknown error"}`,K);this.name="ParseError",this.diagnostics=_}format(){return this.diagnostics.map((_)=>{let q=_.loc?` at line ${_.loc.line}:${_.loc.col}`:"";return`[${_.code}]${q} ${_.message}
27
27
  Hint: ${_.hint}`}).join(`
28
28
 
29
- `)}}class Gq extends rq{generatorName;cause;constructor(_,q,$){super(_,"GENERATOR_ERROR");this.generatorName=q;this.cause=$;this.name="GeneratorError"}}var I="0.1.0";var q_=["usernameAndPassword","google","github"],__=["list","create","update","delete"],$_=["created","updated","deleted"];var S=3001,$q=5173,h$=3000;import{join as Kf}from"path";import{mkdirSync as T$,writeFileSync as $f}from"fs";import{dirname as ff}from"path";function k$(_,q){T$(ff(_),{recursive:!0}),$f(_,q,"utf8")}function r$(_){T$(_,{recursive:!0})}class o{ctx;engine;filesWritten;constructor(_,q,$){this.ctx=_;this.engine=q;this.filesWritten=$}write(_,q){let $=Kf(this.ctx.outputDir,_);k$($,q),this.filesWritten.push(_),this.ctx.logger.verbose(` write ${_}`)}render(_,q={}){return this.engine.render(_,{...this.baseData(),...q})}baseData(){let{ast:_,isTypeScript:q,isSsr:$,isSsg:f,isSpa:K,ext:P,mode:j}=this.ctx;return{appName:_.app.name,appTitle:_.app.title,isTypeScript:q,isSsr:$,isSsg:f,isSpa:K,ext:P,mode:j,hasAuth:!!_.auth,hasRealtime:_.realtimes.length>0,hasJobs:_.jobs.length>0,routes:_.routes,pages:_.pages,queries:_.queries,actions:_.actions,cruds:_.cruds,realtimes:_.realtimes,jobs:_.jobs,auth:_.auth}}}class f_ extends o{run(){if(!this.ctx.ast.auth)return;this.ctx.logger.info("Generating auth system...");let{ext:_,ast:q}=this.ctx,$=q.auth.methods,f={authMethods:$,backendPort:S};if(this.write(`server/auth/index.${_}`,this.render("shared/auth/server/index.hbs",f)),this.write(`server/auth/middleware.${_}`,this.render("shared/auth/server/middleware.hbs",f)),$.includes("usernameAndPassword"))this.write(`server/auth/providers/usernameAndPassword.${_}`,this.render("shared/auth/server/providers/usernameAndPassword.hbs",f));if($.includes("google"))this.write(`server/auth/providers/google.${_}`,this.render("shared/auth/server/providers/google.hbs",f));if($.includes("github"))this.write(`server/auth/providers/github.${_}`,this.render("shared/auth/server/providers/github.hbs",f));if(this.ctx.isSpa)this.write(`src/vasp/auth.${_}`,this.render(`spa/${_}/src/vasp/auth.${_}.hbs`,f));this.write("src/pages/Login.vue",this.render("shared/auth/client/Login.vue.hbs",f)),this.write("src/pages/Register.vue",this.render("shared/auth/client/Register.vue.hbs",f))}}class K_ extends o{run(){this.ctx.logger.info("Generating Elysia backend...");let _={backendPort:S,frontendPort:$q,vaspVersion:I};this.write(`server/index.${this.ctx.ext}`,this.render("shared/server/index.hbs",_)),this.write(`server/db/client.${this.ctx.ext}`,this.render("shared/server/db/client.hbs",_))}}var u8=Uq(m8(),1);import{readFileSync as I4,readdirSync as y4,statSync as D4}from"fs";import{extname as x4,join as L4,relative as s4}from"path";class x_{cache=new Map;hbs;constructor(){this.hbs=u8.default.create(),this.registerHelpers()}loadDirectory(_){this.walkHbs(_,(q)=>{let $=s4(_,q),f=I4(q,"utf8");try{this.cache.set($,this.hbs.compile(f))}catch(K){throw new Gq(`Failed to compile template ${$}: ${String(K)}`,"TemplateEngine")}})}render(_,q){let $=this.cache.get(_);if(!$)throw new Gq(`Template not found: '${_}'`,"TemplateEngine");return $(q)}renderString(_,q){return this.hbs.compile(_)(q)}has(_){return this.cache.has(_)}keys(){return[...this.cache.keys()]}registerHelpers(){this.hbs.registerHelper("camelCase",(_)=>R(_)),this.hbs.registerHelper("pascalCase",(_)=>B4(_)),this.hbs.registerHelper("kebabCase",(_)=>U4(_)),this.hbs.registerHelper("lowerCase",(_)=>_.toLowerCase()),this.hbs.registerHelper("upperCase",(_)=>_.toUpperCase()),this.hbs.registerHelper("join",(_,q)=>{if(!Array.isArray(_))return"";return _.join(typeof q==="string"?q:", ")}),this.hbs.registerHelper("importPath",(_,q)=>{if(q==="ts"&&_.endsWith(".js"))return _.slice(0,-3)+".ts";return _}),this.hbs.registerHelper("eq",(_,q)=>_===q),this.hbs.registerHelper("includes",(_,q)=>Array.isArray(_)&&_.includes(q)),this.hbs.registerHelper("importName",(_)=>{return _.kind==="default"?_.defaultExport??"":_.namedExport??""})}walkHbs(_,q){let $;try{$=y4(_)}catch{return}for(let f of $){let K=L4(_,f);if(D4(K).isDirectory())this.walkHbs(K,q);else if(x4(K)===".hbs")q(K)}}}function R(_){return _.replace(/[-_\s]+(.)/g,(q,$)=>$.toUpperCase()).replace(/^./,(q)=>q.toLowerCase())}function B4(_){let q=R(_);return q.charAt(0).toUpperCase()+q.slice(1)}function U4(_){return _.replace(/([A-Z])/g,"-$1").replace(/[\s_]+/g,"-").toLowerCase().replace(/^-/,"")}class L_ extends o{run(){let{ast:_,ext:q}=this.ctx;if(_.cruds.length===0)return;this.ctx.logger.info("Generating CRUD endpoints...");for(let $ of _.cruds)this.write(`server/routes/crud/${R($.entity)}.${q}`,this.render("shared/server/routes/crud/_crud.hbs",{entity:$.entity,operations:$.operations}));if(this.ctx.isSpa)this.write(`src/vasp/client/crud.${q}`,this.render(`spa/${q}/src/vasp/client/crud.${q}.hbs`))}}class s_ extends o{run(){this.ctx.logger.info("Generating Drizzle schema..."),this.write(`drizzle/schema.${this.ctx.ext}`,this.render("shared/drizzle/schema.hbs"))}}import{existsSync as o8}from"fs";import{join as n8}from"path";class B_ extends o{run(){if(this.ctx.logger.info(`Generating frontend (${this.ctx.mode} / ${this.ctx.ext})...`),this.ctx.isSpa)this.generateSpa();else this.generateSsr()}generateSpa(){let{ext:_,ast:q}=this.ctx,$={backendPort:S,frontendPort:$q};this.write("index.html",this.render(`spa/${_}/index.html.hbs`)),this.write(`vite.config.${_}`,this.render(`spa/${_}/vite.config.${_}.hbs`,$)),this.write(`src/main.${_}`,this.render(`spa/${_}/src/main.${_}.hbs`)),this.write("src/App.vue",this.render(`spa/${_}/src/App.vue.hbs`));let f=this.buildPagesMap();if(this.write(`src/router/index.${_}`,this.render(`spa/${_}/src/router/index.${_}.hbs`,{pagesMap:f})),this.write(`src/vasp/plugin.${_}`,this.render(`spa/${_}/src/vasp/plugin.${_}.hbs`)),this.write(`src/vasp/client/index.${_}`,this.render(`spa/${_}/src/vasp/client/index.${_}.hbs`)),q.queries.length>0)this.write(`src/vasp/client/queries.${_}`,this.render(`spa/${_}/src/vasp/client/queries.${_}.hbs`));if(q.actions.length>0)this.write(`src/vasp/client/actions.${_}`,this.render(`spa/${_}/src/vasp/client/actions.${_}.hbs`));if(this.ctx.isTypeScript&&(q.queries.length>0||q.actions.length>0||q.cruds.length>0))this.write("src/vasp/client/types.ts",this.render("spa/ts/src/vasp/client/types.ts.hbs"));for(let K of q.pages){let P=K.component,w=(P.kind==="default"?P.source:P.source).replace("@src/","src/"),O=n8(this.ctx.outputDir,w);if(!o8(O)){let v=P.kind==="default"?P.defaultExport:P.namedExport;this.write(w,this.scaffoldVuePage(v))}}}generateSsr(){let{ext:_,ast:q}=this.ctx,f={backendPort:S};if(this.write(`nuxt.config.${_}`,this.render(`ssr/${_}/nuxt.config.${_}.hbs`,f)),this.write("app.vue",this.render(`ssr/${_}/app.vue.hbs`)),this.write(`plugins/vasp.server.${_}`,this.render(`ssr/${_}/plugins/vasp.server.${_}.hbs`)),this.write(`plugins/vasp.client.${_}`,this.render(`ssr/${_}/plugins/vasp.client.${_}.hbs`)),this.write(`composables/useVasp.${_}`,this.render(`ssr/${_}/composables/useVasp.${_}.hbs`)),q.auth)this.write(`composables/useAuth.${_}`,this.render(`ssr/${_}/composables/useAuth.${_}.hbs`)),this.write(`middleware/auth.${_}`,this.render(`ssr/${_}/middleware/auth.${_}.hbs`));let K=this.buildPagesMap();for(let P of q.routes){let j=this.routePathToNuxtFile(P.path),w=K[P.to];if(!w)continue;let O=this.extractComponentName(w);this.write(`pages/${j}`,this.render(`ssr/${_}/_page.vue.hbs`,{componentName:O,componentSource:w}))}if(q.auth)this.write("pages/login.vue",this.render(`ssr/${_}/_page.vue.hbs`,{componentName:"LoginPage",componentSource:"@src/pages/Login.vue"})),this.write("pages/register.vue",this.render(`ssr/${_}/_page.vue.hbs`,{componentName:"RegisterPage",componentSource:"@src/pages/Register.vue"}));for(let P of q.pages){let j=P.component,O=(j.kind==="default"?j.source:j.source).replace("@src/","src/"),v=n8(this.ctx.outputDir,O);if(!o8(v)){let h=j.kind==="default"?j.defaultExport:j.namedExport;this.write(O,this.scaffoldVuePage(h))}}}routePathToNuxtFile(_){if(_==="/")return"index.vue";return`${_.replace(/^\//,"").replace(/:([^/]+)/g,"[$1]")}.vue`}buildPagesMap(){let _={};for(let q of this.ctx.ast.pages){let $=q.component.kind==="default"?q.component.source:q.component.source;_[q.name]=$}return _}extractComponentName(_){return(_.split("/").pop()??_).replace(/\.vue$/,"")}scaffoldVuePage(_){return`<template>
29
+ `)}}class iq extends rq{generatorName;cause;constructor(_,q,$){super(_,"GENERATOR_ERROR");this.generatorName=q;this.cause=$;this.name="GeneratorError"}}var I="0.2.0";var __=["usernameAndPassword","google","github"],$_=["list","create","update","delete"],f_=["created","updated","deleted"];var S=3001,$q=5173,h$=3000;import{join as Kf}from"path";import{mkdirSync as T$,writeFileSync as $f}from"fs";import{dirname as ff}from"path";function k$(_,q){T$(ff(_),{recursive:!0}),$f(_,q,"utf8")}function r$(_){T$(_,{recursive:!0})}class n{ctx;engine;filesWritten;constructor(_,q,$){this.ctx=_;this.engine=q;this.filesWritten=$}write(_,q){let $=Kf(this.ctx.outputDir,_);k$($,q),this.filesWritten.push(_),this.ctx.logger.verbose(` write ${_}`)}render(_,q={}){return this.engine.render(_,{...this.baseData(),...q})}baseData(){let{ast:_,isTypeScript:q,isSsr:$,isSsg:f,isSpa:K,ext:P,mode:j}=this.ctx;return{appName:_.app.name,appTitle:_.app.title,isTypeScript:q,isSsr:$,isSsg:f,isSpa:K,ext:P,mode:j,hasAuth:!!_.auth,hasRealtime:_.realtimes.length>0,hasJobs:_.jobs.length>0,routes:_.routes,pages:_.pages,queries:_.queries,actions:_.actions,cruds:_.cruds,realtimes:_.realtimes,jobs:_.jobs,auth:_.auth}}}class K_ extends n{run(){if(!this.ctx.ast.auth)return;this.ctx.logger.info("Generating auth system...");let{ext:_,ast:q}=this.ctx,$=q.auth.methods,f={authMethods:$,backendPort:S};if(this.write(`server/auth/index.${_}`,this.render("shared/auth/server/index.hbs",f)),this.write(`server/auth/middleware.${_}`,this.render("shared/auth/server/middleware.hbs",f)),$.includes("usernameAndPassword"))this.write(`server/auth/providers/usernameAndPassword.${_}`,this.render("shared/auth/server/providers/usernameAndPassword.hbs",f));if($.includes("google"))this.write(`server/auth/providers/google.${_}`,this.render("shared/auth/server/providers/google.hbs",f));if($.includes("github"))this.write(`server/auth/providers/github.${_}`,this.render("shared/auth/server/providers/github.hbs",f));if(this.ctx.isSpa)this.write(`src/vasp/auth.${_}`,this.render(`spa/${_}/src/vasp/auth.${_}.hbs`,f));this.write("src/pages/Login.vue",this.render("shared/auth/client/Login.vue.hbs",f)),this.write("src/pages/Register.vue",this.render("shared/auth/client/Register.vue.hbs",f))}}class P_ extends n{run(){this.ctx.logger.info("Generating Elysia backend...");let _={backendPort:S,frontendPort:$q,vaspVersion:I};this.write(`server/index.${this.ctx.ext}`,this.render("shared/server/index.hbs",_)),this.write(`server/db/client.${this.ctx.ext}`,this.render("shared/server/db/client.hbs",_))}}var u8=Fq(m8(),1);import{readFileSync as I4,readdirSync as y4,statSync as D4}from"fs";import{extname as x4,join as L4,relative as s4}from"path";class L_{cache=new Map;hbs;constructor(){this.hbs=u8.default.create(),this.registerHelpers()}loadDirectory(_){this.walkHbs(_,(q)=>{let $=s4(_,q),f=I4(q,"utf8");try{this.cache.set($,this.hbs.compile(f))}catch(K){throw new iq(`Failed to compile template ${$}: ${String(K)}`,"TemplateEngine")}})}render(_,q){let $=this.cache.get(_);if(!$)throw new iq(`Template not found: '${_}'`,"TemplateEngine");return $(q)}renderString(_,q){return this.hbs.compile(_)(q)}has(_){return this.cache.has(_)}keys(){return[...this.cache.keys()]}registerHelpers(){this.hbs.registerHelper("camelCase",(_)=>V(_)),this.hbs.registerHelper("pascalCase",(_)=>B4(_)),this.hbs.registerHelper("kebabCase",(_)=>U4(_)),this.hbs.registerHelper("lowerCase",(_)=>_.toLowerCase()),this.hbs.registerHelper("upperCase",(_)=>_.toUpperCase()),this.hbs.registerHelper("join",(_,q)=>{if(!Array.isArray(_))return"";return _.join(typeof q==="string"?q:", ")}),this.hbs.registerHelper("importPath",(_,q)=>{if(q==="ts"&&_.endsWith(".js"))return _.slice(0,-3)+".ts";return _}),this.hbs.registerHelper("eq",(_,q)=>_===q),this.hbs.registerHelper("includes",(_,q)=>Array.isArray(_)&&_.includes(q)),this.hbs.registerHelper("importName",(_)=>{return _.kind==="default"?_.defaultExport??"":_.namedExport??""}),this.hbs.registerHelper("drizzleColumn",(_,q,$)=>{let P=`${{String:"text",Int:"integer",Boolean:"boolean",DateTime:"timestamp",Float:"doublePrecision"}[q]??"text"}('${V(_)}')`;if(Array.isArray($)){if($.includes("id"))P+=".primaryKey()";if($.includes("unique"))P+=".unique()";if($.includes("default_now"))P+=".defaultNow()"}return P})}walkHbs(_,q){let $;try{$=y4(_)}catch{return}for(let f of $){let K=L4(_,f);if(D4(K).isDirectory())this.walkHbs(K,q);else if(x4(K)===".hbs")q(K)}}}function V(_){return _.replace(/[-_\s]+(.)/g,(q,$)=>$.toUpperCase()).replace(/^./,(q)=>q.toLowerCase())}function B4(_){let q=V(_);return q.charAt(0).toUpperCase()+q.slice(1)}function U4(_){return _.replace(/([A-Z])/g,"-$1").replace(/[\s_]+/g,"-").toLowerCase().replace(/^-/,"")}class s_ extends n{run(){let{ast:_,ext:q}=this.ctx;if(_.cruds.length===0)return;this.ctx.logger.info("Generating CRUD endpoints...");for(let $ of _.cruds)this.write(`server/routes/crud/${V($.entity)}.${q}`,this.render("shared/server/routes/crud/_crud.hbs",{entity:$.entity,operations:$.operations}));if(this.ctx.isSpa)this.write(`src/vasp/client/crud.${q}`,this.render(`spa/${q}/src/vasp/client/crud.${q}.hbs`))}}class B_ extends n{run(){this.ctx.logger.info("Generating Drizzle schema...");let _=new Map(this.ctx.ast.entities.map(($)=>[$.name,$.fields])),q=this.ctx.ast.cruds.map(($)=>({...$,fields:_.get($.entity)??[],hasEntity:_.has($.entity)}));this.write(`drizzle/schema.${this.ctx.ext}`,this.render("shared/drizzle/schema.hbs",{crudsWithFields:q}))}}import{existsSync as n8}from"fs";import{join as o8}from"path";class U_ extends n{run(){if(this.ctx.logger.info(`Generating frontend (${this.ctx.mode} / ${this.ctx.ext})...`),this.ctx.isSpa)this.generateSpa();else this.generateSsr()}generateSpa(){let{ext:_,ast:q}=this.ctx,$={backendPort:S,frontendPort:$q};this.write("index.html",this.render(`spa/${_}/index.html.hbs`)),this.write(`vite.config.${_}`,this.render(`spa/${_}/vite.config.${_}.hbs`,$)),this.write(`src/main.${_}`,this.render(`spa/${_}/src/main.${_}.hbs`)),this.write("src/App.vue",this.render(`spa/${_}/src/App.vue.hbs`));let f=this.buildPagesMap();if(this.write(`src/router/index.${_}`,this.render(`spa/${_}/src/router/index.${_}.hbs`,{pagesMap:f})),this.write(`src/vasp/plugin.${_}`,this.render(`spa/${_}/src/vasp/plugin.${_}.hbs`)),this.write(`src/vasp/client/index.${_}`,this.render(`spa/${_}/src/vasp/client/index.${_}.hbs`)),q.queries.length>0)this.write(`src/vasp/client/queries.${_}`,this.render(`spa/${_}/src/vasp/client/queries.${_}.hbs`));if(q.actions.length>0)this.write(`src/vasp/client/actions.${_}`,this.render(`spa/${_}/src/vasp/client/actions.${_}.hbs`));if(this.ctx.isTypeScript&&(q.queries.length>0||q.actions.length>0||q.cruds.length>0))this.write("src/vasp/client/types.ts",this.render("spa/ts/src/vasp/client/types.ts.hbs"));for(let K of q.pages){let P=K.component,v=(P.kind==="default"?P.source:P.source).replace("@src/","src/"),O=o8(this.ctx.outputDir,v);if(!n8(O)){let w=P.kind==="default"?P.defaultExport:P.namedExport;this.write(v,this.scaffoldVuePage(w))}}}generateSsr(){let{ext:_,ast:q}=this.ctx,f={backendPort:S};if(this.write(`nuxt.config.${_}`,this.render(`ssr/${_}/nuxt.config.${_}.hbs`,f)),this.write("app.vue",this.render(`ssr/${_}/app.vue.hbs`)),this.write(`plugins/vasp.server.${_}`,this.render(`ssr/${_}/plugins/vasp.server.${_}.hbs`)),this.write(`plugins/vasp.client.${_}`,this.render(`ssr/${_}/plugins/vasp.client.${_}.hbs`)),this.write(`composables/useVasp.${_}`,this.render(`ssr/${_}/composables/useVasp.${_}.hbs`)),q.auth)this.write(`composables/useAuth.${_}`,this.render(`ssr/${_}/composables/useAuth.${_}.hbs`)),this.write(`middleware/auth.${_}`,this.render(`ssr/${_}/middleware/auth.${_}.hbs`));let K=this.buildPagesMap();for(let P of q.routes){let j=this.routePathToNuxtFile(P.path),v=K[P.to];if(!v)continue;let O=this.extractComponentName(v);this.write(`pages/${j}`,this.render(`ssr/${_}/_page.vue.hbs`,{componentName:O,componentSource:v}))}if(q.auth)this.write("pages/login.vue",this.render(`ssr/${_}/_page.vue.hbs`,{componentName:"LoginPage",componentSource:"@src/pages/Login.vue"})),this.write("pages/register.vue",this.render(`ssr/${_}/_page.vue.hbs`,{componentName:"RegisterPage",componentSource:"@src/pages/Register.vue"}));for(let P of q.pages){let j=P.component,O=(j.kind==="default"?j.source:j.source).replace("@src/","src/"),w=o8(this.ctx.outputDir,O);if(!n8(w)){let h=j.kind==="default"?j.defaultExport:j.namedExport;this.write(O,this.scaffoldVuePage(h))}}}routePathToNuxtFile(_){if(_==="/")return"index.vue";return`${_.replace(/^\//,"").replace(/:([^/]+)/g,"[$1]")}.vue`}buildPagesMap(){let _={};for(let q of this.ctx.ast.pages){let $=q.component.kind==="default"?q.component.source:q.component.source;_[q.name]=$}return _}extractComponentName(_){return(_.split("/").pop()??_).replace(/\.vue$/,"")}scaffoldVuePage(_){return`<template>
30
30
  <div>
31
31
  <h1>${_}</h1>
32
32
  <p>Edit this page in src/pages/</p>
33
33
  </div>
34
34
  </template>
35
- `}}class U_ extends o{run(){let{ast:_,ext:q}=this.ctx;if(_.jobs.length===0)return;this.ctx.logger.info("Generating background jobs..."),this.write(`server/jobs/boss.${q}`,this.render("shared/jobs/boss.hbs"));for(let $ of _.jobs){let f=$.perform.fn,K=f.kind==="named"?f.namedExport:f.defaultExport;this.write(`server/jobs/${R($.name)}.${q}`,this.render("shared/jobs/_job.hbs",{name:$.name,namedExport:K,fnSource:f.source})),this.write(`server/routes/jobs/${R($.name)}Schedule.${q}`,this.render("shared/server/routes/jobs/_schedule.hbs",{name:$.name}))}}}class F_ extends o{run(){let{ast:_,ext:q}=this.ctx;if(_.queries.length>0||_.actions.length>0)this.ctx.logger.info("Generating query/action routes...");for(let $ of _.queries){let f=$.fn,K=f.kind==="named"?f.namedExport:f.defaultExport,P=f.source;this.write(`server/routes/queries/${this.camel($.name)}.${q}`,this.render("shared/server/routes/queries/_query.hbs",{name:$.name,namedExport:K,fnSource:P,requiresAuth:$.auth}))}for(let $ of _.actions){let f=$.fn,K=f.kind==="named"?f.namedExport:f.defaultExport,P=f.source;this.write(`server/routes/actions/${this.camel($.name)}.${q}`,this.render("shared/server/routes/actions/_action.hbs",{name:$.name,namedExport:K,fnSource:P,requiresAuth:$.auth}))}}camel(_){return _.replace(/[-_\s]+(.)/g,(q,$)=>$.toUpperCase()).replace(/^./,(q)=>q.toLowerCase())}}class Q_ extends o{run(){let{ast:_,ext:q}=this.ctx;if(_.realtimes.length===0)return;this.ctx.logger.info("Generating realtime WebSocket channels...");for(let $ of _.realtimes)this.write(`server/routes/realtime/${R($.name)}.${q}`,this.render("shared/server/routes/realtime/_channel.hbs",{name:$.name,entity:$.entity,events:$.events}));if(this.write(`server/routes/realtime/index.${q}`,this.render("shared/server/routes/realtime/index.hbs")),this.ctx.isSpa)this.write(`src/vasp/client/realtime.${q}`,this.render(`spa/${q}/src/vasp/client/realtime.${q}.hbs`))}}import{join as F4}from"path";class q$ extends o{run(){this.ctx.logger.info("Scaffolding project structure...");let _=["src/pages","src/components","src/lib","drizzle","server/routes/queries","server/routes/actions","server/db","tests",...this.ctx.isSpa?["src/vasp/client"]:["composables","plugins","pages","middleware"]];for(let f of _)r$(F4(this.ctx.outputDir,f));let q=this.ctx.isSpa?$q:h$,$=this.render("shared/package.json.hbs",{vaspVersion:I,backendPort:S,frontendPort:q,authMethods:this.ctx.ast.auth?.methods??[]});if(this.write("package.json",$),this.write("bunfig.toml",this.render("shared/bunfig.toml.hbs")),this.write(".gitignore",this.render("shared/.gitignore.hbs")),this.write(".env.example",this.render("shared/.env.example.hbs",{backendPort:S,frontendPort:q,authMethods:this.ctx.ast.auth?.methods??[]})),this.ctx.isTypeScript)this.write("tsconfig.json",this.render("shared/tsconfig.json.hbs"));this.write("main.vasp",this.generateMainVasp())}generateMainVasp(){let{ast:_}=this.ctx,q=this.ctx.ext,$=[`app ${_.app.name} {`,` title: "${_.app.title}"`,` db: ${_.app.db}`,` ssr: ${typeof _.app.ssr==="string"?`"${_.app.ssr}"`:_.app.ssr}`,` typescript: ${_.app.typescript}`,"}",""];if(_.auth)$.push(`auth ${_.auth.name} {`,` userEntity: ${_.auth.userEntity}`,` methods: [ ${_.auth.methods.join(", ")} ]`,"}","");for(let f of _.routes)$.push(`route ${f.name} {`,` path: "${f.path}"`,` to: ${f.to}`,"}","");for(let f of _.pages){let K=f.component,P=K.kind==="default"?`import ${K.defaultExport} from "${K.source}"`:`import { ${K.namedExport} } from "${K.source}"`;$.push(`page ${f.name} {`,` component: ${P}`,"}","")}for(let f of _.queries){let K=f.fn,P=K.kind==="named"?`import { ${K.namedExport} } from "${K.source}"`:`import ${K.defaultExport} from "${K.source}"`;$.push(`query ${f.name} {`,` fn: ${P}`,` entities: [${f.entities.join(", ")}]`,"}","")}for(let f of _.actions){let K=f.fn,P=K.kind==="named"?`import { ${K.namedExport} } from "${K.source}"`:`import ${K.defaultExport} from "${K.source}"`;$.push(`action ${f.name} {`,` fn: ${P}`,` entities: [${f.entities.join(", ")}]`,"}","")}for(let f of _.cruds)$.push(`crud ${f.name} {`,` entity: ${f.entity}`,` operations: [${f.operations.join(", ")}]`,"}","");return $.join(`
36
- `)}}function Q(_,q){let $=O$(q.logLevel??"info"),f=Y$(_,q.outputDir,{...q.templateDir!==void 0?{templateDir:q.templateDir}:{},logger:$}),K=new x_;K.loadDirectory(f.templateDir);let P=[],j=[];try{return new q$(f,K,P).run(),new s_(f,K,P).run(),new K_(f,K,P).run(),new f_(f,K,P).run(),new F_(f,K,P).run(),new L_(f,K,P).run(),new Q_(f,K,P).run(),new U_(f,K,P).run(),new B_(f,K,P).run(),$.info(`\u2713 Generated ${P.length} files`),{success:!0,filesWritten:P,errors:[],warnings:j}}catch(w){let O=w instanceof Error?w.message:String(w);return $.error(O),{success:!1,filesWritten:P,errors:[O],warnings:j}}}var _$=new Set(["app","auth","route","page","query","action","crud","realtime","job"]),A8=new Set([..._$,"import","from"]);class gq{source;filename;pos=0;line=1;col=1;tokens=[];constructor(_,q="main.vasp"){this.source=_;this.filename=q}tokenize(){while(this.pos<this.source.length){if(this.skipWhitespaceAndComments(),this.pos>=this.source.length)break;this.scanToken()}return this.tokens.push({type:"EOF",value:"",loc:{line:this.line,col:this.col,offset:this.pos,file:this.filename}}),this.tokens}loc(){return{line:this.line,col:this.col,offset:this.pos,file:this.filename}}peek(_=0){return this.source[this.pos+_]??""}advance(){let _=this.source[this.pos++]??"";if(_===`
35
+ `}}class F_ extends n{run(){let{ast:_,ext:q}=this.ctx;if(_.jobs.length===0)return;this.ctx.logger.info("Generating background jobs..."),this.write(`server/jobs/boss.${q}`,this.render("shared/jobs/boss.hbs"));for(let $ of _.jobs){let f=$.perform.fn,K=f.kind==="named"?f.namedExport:f.defaultExport;this.write(`server/jobs/${V($.name)}.${q}`,this.render("shared/jobs/_job.hbs",{name:$.name,namedExport:K,fnSource:f.source,schedule:$.schedule,hasSchedule:!!$.schedule})),this.write(`server/routes/jobs/${V($.name)}Schedule.${q}`,this.render("shared/server/routes/jobs/_schedule.hbs",{name:$.name}))}}}class Q_ extends n{run(){let{ast:_,ext:q}=this.ctx;if(_.queries.length>0||_.actions.length>0)this.ctx.logger.info("Generating query/action routes...");for(let $ of _.queries){let f=$.fn,K=f.kind==="named"?f.namedExport:f.defaultExport,P=f.source;this.write(`server/routes/queries/${this.camel($.name)}.${q}`,this.render("shared/server/routes/queries/_query.hbs",{name:$.name,namedExport:K,fnSource:P,requiresAuth:$.auth}))}for(let $ of _.actions){let f=$.fn,K=f.kind==="named"?f.namedExport:f.defaultExport,P=f.source;this.write(`server/routes/actions/${this.camel($.name)}.${q}`,this.render("shared/server/routes/actions/_action.hbs",{name:$.name,namedExport:K,fnSource:P,requiresAuth:$.auth}))}}camel(_){return _.replace(/[-_\s]+(.)/g,(q,$)=>$.toUpperCase()).replace(/^./,(q)=>q.toLowerCase())}}class q$ extends n{run(){let{ast:_,ext:q}=this.ctx;if(_.realtimes.length===0)return;this.ctx.logger.info("Generating realtime WebSocket channels...");for(let $ of _.realtimes)this.write(`server/routes/realtime/${V($.name)}.${q}`,this.render("shared/server/routes/realtime/_channel.hbs",{name:$.name,entity:$.entity,events:$.events}));if(this.write(`server/routes/realtime/index.${q}`,this.render("shared/server/routes/realtime/index.hbs")),this.ctx.isSpa)this.write(`src/vasp/client/realtime.${q}`,this.render(`spa/${q}/src/vasp/client/realtime.${q}.hbs`))}}import{join as F4}from"path";class _$ extends n{run(){this.ctx.logger.info("Scaffolding project structure...");let _=["src/pages","src/components","src/lib","drizzle","server/routes/queries","server/routes/actions","server/db","tests",...this.ctx.isSpa?["src/vasp/client"]:["composables","plugins","pages","middleware"]];for(let f of _)r$(F4(this.ctx.outputDir,f));let q=this.ctx.isSpa?$q:h$,$=this.render("shared/package.json.hbs",{vaspVersion:I,backendPort:S,frontendPort:q,authMethods:this.ctx.ast.auth?.methods??[]});if(this.write("package.json",$),this.write("bunfig.toml",this.render("shared/bunfig.toml.hbs")),this.write(".gitignore",this.render("shared/.gitignore.hbs")),this.write(".env.example",this.render("shared/.env.example.hbs",{backendPort:S,frontendPort:q,authMethods:this.ctx.ast.auth?.methods??[]})),this.ctx.isTypeScript)this.write("tsconfig.json",this.render("shared/tsconfig.json.hbs"));this.write("main.vasp",this.generateMainVasp())}generateMainVasp(){let{ast:_}=this.ctx,q=this.ctx.ext,$=[`app ${_.app.name} {`,` title: "${_.app.title}"`,` db: ${_.app.db}`,` ssr: ${typeof _.app.ssr==="string"?`"${_.app.ssr}"`:_.app.ssr}`,` typescript: ${_.app.typescript}`,"}",""];if(_.auth)$.push(`auth ${_.auth.name} {`,` userEntity: ${_.auth.userEntity}`,` methods: [ ${_.auth.methods.join(", ")} ]`,"}","");for(let f of _.routes)$.push(`route ${f.name} {`,` path: "${f.path}"`,` to: ${f.to}`,"}","");for(let f of _.pages){let K=f.component,P=K.kind==="default"?`import ${K.defaultExport} from "${K.source}"`:`import { ${K.namedExport} } from "${K.source}"`;$.push(`page ${f.name} {`,` component: ${P}`,"}","")}for(let f of _.queries){let K=f.fn,P=K.kind==="named"?`import { ${K.namedExport} } from "${K.source}"`:`import ${K.defaultExport} from "${K.source}"`;$.push(`query ${f.name} {`,` fn: ${P}`,` entities: [${f.entities.join(", ")}]`,"}","")}for(let f of _.actions){let K=f.fn,P=K.kind==="named"?`import { ${K.namedExport} } from "${K.source}"`:`import ${K.defaultExport} from "${K.source}"`;$.push(`action ${f.name} {`,` fn: ${P}`,` entities: [${f.entities.join(", ")}]`,"}","")}for(let f of _.cruds)$.push(`crud ${f.name} {`,` entity: ${f.entity}`,` operations: [${f.operations.join(", ")}]`,"}","");return $.join(`
36
+ `)}}function Q(_,q){let $=O$(q.logLevel??"info"),f=Y$(_,q.outputDir,{...q.templateDir!==void 0?{templateDir:q.templateDir}:{},logger:$}),K=new L_;K.loadDirectory(f.templateDir);let P=[],j=[];try{return new _$(f,K,P).run(),new B_(f,K,P).run(),new P_(f,K,P).run(),new K_(f,K,P).run(),new Q_(f,K,P).run(),new s_(f,K,P).run(),new q$(f,K,P).run(),new F_(f,K,P).run(),new U_(f,K,P).run(),$.info(`\u2713 Generated ${P.length} files`),{success:!0,filesWritten:P,errors:[],warnings:j}}catch(v){let O=v instanceof Error?v.message:String(v);return $.error(O),{success:!1,filesWritten:P,errors:[O],warnings:j}}}var Xq=new Set(["app","auth","entity","route","page","query","action","crud","realtime","job"]),A8=new Set([...Xq,"import","from"]);class Iq{source;filename;pos=0;line=1;col=1;tokens=[];constructor(_,q="main.vasp"){this.source=_;this.filename=q}tokenize(){while(this.pos<this.source.length){if(this.skipWhitespaceAndComments(),this.pos>=this.source.length)break;this.scanToken()}return this.tokens.push({type:"EOF",value:"",loc:{line:this.line,col:this.col,offset:this.pos,file:this.filename}}),this.tokens}loc(){return{line:this.line,col:this.col,offset:this.pos,file:this.filename}}peek(_=0){return this.source[this.pos+_]??""}advance(){let _=this.source[this.pos++]??"";if(_===`
37
37
  `)this.line++,this.col=1;else this.col++;return _}skipWhitespaceAndComments(){while(this.pos<this.source.length){let _=this.peek();if(_===" "||_==="\t"||_==="\r"||_===`
38
38
  `){this.advance();continue}if(_==="/"&&this.peek(1)==="/"){while(this.pos<this.source.length&&this.peek()!==`
39
- `)this.advance();continue}if(_==="/"&&this.peek(1)==="*"){let q=this.loc();this.advance(),this.advance();let $=!1;while(this.pos<this.source.length){if(this.peek()==="*"&&this.peek(1)==="/"){this.advance(),this.advance(),$=!0;break}this.advance()}if(!$)throw new b([{code:"E001_UNCLOSED_BLOCK_COMMENT",message:"Unclosed block comment",hint:"Add */ to close the block comment",loc:q}]);continue}break}}scanToken(){let _=this.peek(),$={"{":"{","}":"}","[":"[","]":"]",":":":",",":","}[_];if($!==void 0){let f=this.loc();this.advance(),this.tokens.push({type:$,value:_,loc:f});return}if(_==='"'||_==="'"){this.scanString(_);return}if(_>="0"&&_<="9"){this.scanNumber();return}if(_==="_"||_>="a"&&_<="z"||_>="A"&&_<="Z"){this.scanIdentifierOrKeyword();return}throw new b([{code:"E002_UNEXPECTED_CHAR",message:`Unexpected character: '${_}'`,hint:"Check for typos or unsupported syntax in your .vasp file",loc:this.loc()}])}scanString(_){let q=this.loc();this.advance();let $="";while(this.pos<this.source.length&&this.peek()!==_){if(this.peek()===`
39
+ `)this.advance();continue}if(_==="/"&&this.peek(1)==="*"){let q=this.loc();this.advance(),this.advance();let $=!1;while(this.pos<this.source.length){if(this.peek()==="*"&&this.peek(1)==="/"){this.advance(),this.advance(),$=!0;break}this.advance()}if(!$)throw new b([{code:"E001_UNCLOSED_BLOCK_COMMENT",message:"Unclosed block comment",hint:"Add */ to close the block comment",loc:q}]);continue}break}}scanToken(){let _=this.peek(),$={"{":"{","}":"}","[":"[","]":"]",":":":",",":","}[_];if($!==void 0){let f=this.loc();this.advance(),this.tokens.push({type:$,value:_,loc:f});return}if(_==="@"){this.scanModifier();return}if(_==='"'||_==="'"){this.scanString(_);return}if(_>="0"&&_<="9"){this.scanNumber();return}if(_==="_"||_>="a"&&_<="z"||_>="A"&&_<="Z"){this.scanIdentifierOrKeyword();return}throw new b([{code:"E002_UNEXPECTED_CHAR",message:`Unexpected character: '${_}'`,hint:"Check for typos or unsupported syntax in your .vasp file",loc:this.loc()}])}scanModifier(){let _=this.loc();this.advance();let q="";while(this.pos<this.source.length){let f=this.peek();if(f>="a"&&f<="z"||f>="A"&&f<="Z"||f==="_")q+=this.advance();else break}let $=q;if(q==="default"&&this.peek()==="("){this.advance();let f="";while(this.pos<this.source.length&&this.peek()!==")")f+=this.advance();if(this.peek()===")")this.advance();$=f.trim()==="now"?"default_now":`default_${f.trim()}`}this.tokens.push({type:"AT_MODIFIER",value:$,loc:_})}scanString(_){let q=this.loc();this.advance();let $="";while(this.pos<this.source.length&&this.peek()!==_){if(this.peek()===`
40
40
  `)throw new b([{code:"E003_UNTERMINATED_STRING",message:"Unterminated string literal",hint:"Close the string with a matching quote on the same line",loc:q}]);if(this.peek()==="\\"){this.advance();let f=this.advance();$+=this.unescape(f)}else $+=this.advance()}if(this.pos>=this.source.length)throw new b([{code:"E003_UNTERMINATED_STRING",message:"Unterminated string literal",hint:"Close the string with a matching quote",loc:q}]);this.advance(),this.tokens.push({type:"STRING",value:$,loc:q})}unescape(_){return{n:`
41
- `,t:"\t",r:"\r",'"':'"',"'":"'","\\":"\\"}[_]??_}scanNumber(){let _=this.loc(),q="";while(this.pos<this.source.length&&this.peek()>="0"&&this.peek()<="9")q+=this.advance();if(this.peek()==="."&&this.peek(1)>="0"&&this.peek(1)<="9"){q+=this.advance();while(this.pos<this.source.length&&this.peek()>="0"&&this.peek()<="9")q+=this.advance()}this.tokens.push({type:"NUMBER",value:q,loc:_})}scanIdentifierOrKeyword(){let _=this.loc(),q="";while(this.pos<this.source.length){let $=this.peek();if($>="a"&&$<="z"||$>="A"&&$<="Z"||$>="0"&&$<="9"||$==="_"||$==="-")q+=this.advance();else break}if(A8.has(q)){if(_$.has(q))this.tokens.push({type:q,value:q,loc:_});else if(q==="import")this.tokens.push({type:"import",value:q,loc:_});else if(q==="from")this.tokens.push({type:"from",value:q,loc:_});else this.tokens.push({type:"IDENTIFIER",value:q,loc:_});return}if(q==="true"||q==="false"){this.tokens.push({type:"BOOLEAN",value:q,loc:_});return}this.tokens.push({type:"IDENTIFIER",value:q,loc:_})}}function p8(_,q="main.vasp"){let $=new gq(_,q).tokenize();return new e8($,q).parse()}class e8{tokens;filename;pos=0;constructor(_,q){this.tokens=_;this.filename=q}parse(){let _={app:null,routes:[],pages:[],queries:[],actions:[],cruds:[],realtimes:[],jobs:[]};while(!this.isEOF()){let q=this.peek();switch(q.type){case"app":_.app=this.parseApp();break;case"auth":_.auth=this.parseAuth();break;case"route":_.routes.push(this.parseRoute());break;case"page":_.pages.push(this.parsePage());break;case"query":_.queries.push(this.parseQuery());break;case"action":_.actions.push(this.parseAction());break;case"crud":_.cruds.push(this.parseCrud());break;case"realtime":_.realtimes.push(this.parseRealtime());break;case"job":_.jobs.push(this.parseJob());break;default:throw this.error("E010_UNEXPECTED_TOKEN",`Unexpected token '${q.value}' at top level`,"Expected a declaration keyword: app, auth, route, page, query, action, crud, realtime, or job",q.loc)}}return _}parseApp(){let _=this.consume("app").loc,q=this.consumeIdentifier();this.consume("{");let $="",f="Drizzle",K=!1,P=!1;while(!this.check("}")){let j=this.consumeIdentifier();switch(this.consume(":"),j.value){case"title":$=this.consumeString();break;case"db":f=this.consumeIdentifier().value;break;case"ssr":{let w=this.peek();if(w.type==="BOOLEAN")K=this.consume("BOOLEAN").value==="true";else if(w.type==="STRING"){let O=this.consumeString();if(O!=="ssg")throw this.error("E011_INVALID_SSR",`Invalid ssr value "${O}"`,'Use: false, true, or "ssg"',w.loc);K="ssg"}else throw this.error("E011_INVALID_SSR","Invalid ssr value",'Use: false, true, or "ssg"',w.loc);break}case"typescript":P=this.consume("BOOLEAN").value==="true";break;default:throw this.error("E012_UNKNOWN_PROP",`Unknown app property '${j.value}'`,"Valid properties: title, db, ssr, typescript",j.loc)}}return this.consume("}"),{type:"App",name:q.value,loc:_,title:$,db:f,ssr:K,typescript:P}}parseAuth(){let _=this.consume("auth").loc,q=this.consumeIdentifier();this.consume("{");let $="",f=[];while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"userEntity":$=this.consumeIdentifier().value;break;case"methods":f=this.parseIdentifierArray();break;default:throw this.error("E013_UNKNOWN_PROP",`Unknown auth property '${K.value}'`,"Valid properties: userEntity, methods",K.loc)}}return this.consume("}"),{type:"Auth",name:q.value,loc:_,userEntity:$,methods:f}}parseRoute(){let _=this.consume("route").loc,q=this.consumeIdentifier();this.consume("{");let $="",f="";while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"path":$=this.consumeString();break;case"to":f=this.consumeIdentifier().value;break;default:throw this.error("E014_UNKNOWN_PROP",`Unknown route property '${K.value}'`,"Valid properties: path, to",K.loc)}}return this.consume("}"),{type:"Route",name:q.value,loc:_,path:$,to:f}}parsePage(){let _=this.consume("page").loc,q=this.consumeIdentifier();this.consume("{");let $=null;while(!this.check("}")){let f=this.consumeIdentifier();switch(this.consume(":"),f.value){case"component":$=this.parseImportExpression();break;default:throw this.error("E015_UNKNOWN_PROP",`Unknown page property '${f.value}'`,"Valid properties: component",f.loc)}}if(this.consume("}"),!$)throw this.error("E016_MISSING_COMPONENT",`Page '${q.value}' is missing a component`,'Add: component: import Foo from "@src/pages/Foo.vue"',_);return{type:"Page",name:q.value,loc:_,component:$}}parseQuery(){let _=this.consume("query").loc,q=this.consumeIdentifier();this.consume("{");let $=null,f=[],K=!1;while(!this.check("}")){let P=this.consumeIdentifier();switch(this.consume(":"),P.value){case"fn":$=this.parseImportExpression();break;case"entities":f=this.parseIdentifierArray();break;case"auth":K=this.consume("BOOLEAN").value==="true";break;default:throw this.error("E017_UNKNOWN_PROP",`Unknown query property '${P.value}'`,"Valid properties: fn, entities, auth",P.loc)}}if(this.consume("}"),!$)throw this.error("E018_MISSING_FN",`Query '${q.value}' is missing fn`,'Add: fn: import { myFn } from "@src/queries.js"',_);return{type:"Query",name:q.value,loc:_,fn:$,entities:f,auth:K}}parseAction(){let _=this.consume("action").loc,q=this.consumeIdentifier();this.consume("{");let $=null,f=[],K=!1;while(!this.check("}")){let P=this.consumeIdentifier();switch(this.consume(":"),P.value){case"fn":$=this.parseImportExpression();break;case"entities":f=this.parseIdentifierArray();break;case"auth":K=this.consume("BOOLEAN").value==="true";break;default:throw this.error("E019_UNKNOWN_PROP",`Unknown action property '${P.value}'`,"Valid properties: fn, entities, auth",P.loc)}}if(this.consume("}"),!$)throw this.error("E020_MISSING_FN",`Action '${q.value}' is missing fn`,'Add: fn: import { myFn } from "@src/actions.js"',_);return{type:"Action",name:q.value,loc:_,fn:$,entities:f,auth:K}}parseCrud(){let _=this.consume("crud").loc,q=this.consumeIdentifier();this.consume("{");let $="",f=[];while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"entity":$=this.consumeIdentifier().value;break;case"operations":f=this.parseIdentifierArray();break;default:throw this.error("E021_UNKNOWN_PROP",`Unknown crud property '${K.value}'`,"Valid properties: entity, operations",K.loc)}}return this.consume("}"),{type:"Crud",name:q.value,loc:_,entity:$,operations:f}}parseRealtime(){let _=this.consume("realtime").loc,q=this.consumeIdentifier();this.consume("{");let $="",f=[];while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"entity":$=this.consumeIdentifier().value;break;case"events":f=this.parseIdentifierArray();break;default:throw this.error("E022_UNKNOWN_PROP",`Unknown realtime property '${K.value}'`,"Valid properties: entity, events",K.loc)}}return this.consume("}"),{type:"Realtime",name:q.value,loc:_,entity:$,events:f}}parseJob(){let _=this.consume("job").loc,q=this.consumeIdentifier();this.consume("{");let $="PgBoss",f=null,K;while(!this.check("}")){let P=this.consumeIdentifier();switch(this.consume(":"),P.value){case"executor":$=this.consumeIdentifier().value;break;case"perform":{this.consume("{");while(!this.check("}")){let j=this.consumeIdentifier();if(this.consume(":"),j.value==="fn")f=this.parseImportExpression();else throw this.error("E023_UNKNOWN_PROP",`Unknown perform property '${j.value}'`,"Valid properties: fn",j.loc)}this.consume("}");break}case"schedule":K=this.consumeString();break;default:throw this.error("E024_UNKNOWN_PROP",`Unknown job property '${P.value}'`,"Valid properties: executor, perform, schedule",P.loc)}}if(this.consume("}"),!f)throw this.error("E025_MISSING_PERFORM",`Job '${q.value}' is missing perform.fn`,'Add: perform: { fn: import { myJob } from "@src/jobs.js" }',_);return{type:"Job",name:q.value,loc:_,executor:$,perform:{fn:f},...K!==void 0?{schedule:K}:{}}}parseImportExpression(){let _=this.consume("import").loc;if(this.check("{")){this.consume("{");let f=this.consumeIdentifier().value;this.consume("}"),this.consume("from");let K=this.consumeString();return{kind:"named",namedExport:f,source:K}}let q=this.consumeIdentifier().value;this.consume("from");let $=this.consumeString();return{kind:"default",defaultExport:q,source:$}}parseIdentifierArray(){this.consume("[");let _=[];while(!this.check("]"))if(_.push(this.consumeIdentifier().value),this.check(","))this.consume(",");return this.consume("]"),_}peek(){return this.tokens[this.pos]??{type:"EOF",value:"",loc:{line:0,col:0,offset:0}}}check(_){return this.peek().type===_}isEOF(){return this.check("EOF")}consume(_){let q=this.peek();if(q.type!==_)throw this.error("E030_EXPECTED_TOKEN",`Expected '${_}' but got '${q.value||q.type}'`,`Add the missing '${_}'`,q.loc);return this.pos++,q}consumeIdentifier(){let _=this.peek();if(_.type!=="IDENTIFIER")throw this.error("E031_EXPECTED_IDENTIFIER",`Expected an identifier but got '${_.value||_.type}'`,"Provide a valid name (letters, digits, underscores)",_.loc);return this.pos++,_}consumeString(){let _=this.peek();if(_.type!=="STRING")throw this.error("E032_EXPECTED_STRING",`Expected a string but got '${_.value||_.type}'`,'Wrap the value in double quotes: "value"',_.loc);return this.pos++,_.value}error(_,q,$,f){return new b([{code:_,message:q,hint:$,...f!==void 0?{loc:f}:{}}])}}class Iq{diagnostics=[];validate(_){if(this.checkAppExists(_),this.checkRouteTargets(_),this.checkCrudOperations(_),this.checkRealtimeEntities(_),this.checkAuthMethods(_),this.checkQueryActionEntities(_),this.checkJobExecutors(_),this.diagnostics.length>0)throw new b(this.diagnostics)}checkAppExists(_){if(!_.app)this.diagnostics.push({code:"E100_MISSING_APP_BLOCK",message:"No app block found in main.vasp",hint:"Every Vasp project requires exactly one app { } block"})}checkRouteTargets(_){let q=new Set(_.pages.map(($)=>$.name));for(let $ of _.routes)if(!q.has($.to))this.diagnostics.push({code:"E101_UNKNOWN_PAGE_REF",message:`Route '${$.name}' references unknown page '${$.to}'`,hint:`Add a page block named '${$.to}', or fix the 'to' value in route '${$.name}'`,loc:$.loc})}checkCrudOperations(_){for(let q of _.cruds){if(q.operations.length===0)this.diagnostics.push({code:"E102_EMPTY_CRUD_OPERATIONS",message:`crud '${q.name}' has no operations`,hint:"Add at least one operation: operations: [list, create, update, delete]",loc:q.loc});for(let $ of q.operations)if(!__.includes($))this.diagnostics.push({code:"E103_UNKNOWN_CRUD_OPERATION",message:`Unknown crud operation '${$}' in '${q.name}'`,hint:`Supported operations: ${__.join(", ")}`,loc:q.loc})}}checkRealtimeEntities(_){let q=new Set(_.cruds.map(($)=>$.entity));for(let $ of _.realtimes){if(!q.has($.entity))this.diagnostics.push({code:"E104_REALTIME_ENTITY_NOT_CRUD",message:`realtime '${$.name}' references entity '${$.entity}' which has no crud block`,hint:`Add a crud block for entity '${$.entity}', or remove the realtime block`,loc:$.loc});for(let f of $.events)if(!$_.includes(f))this.diagnostics.push({code:"E105_UNKNOWN_REALTIME_EVENT",message:`Unknown realtime event '${f}' in '${$.name}'`,hint:`Supported events: ${$_.join(", ")}`,loc:$.loc})}}checkAuthMethods(_){if(!_.auth)return;if(_.auth.methods.length===0)this.diagnostics.push({code:"E106_EMPTY_AUTH_METHODS",message:`auth '${_.auth.name}' has no methods`,hint:"Add at least one method: methods: [usernameAndPassword]",loc:_.auth.loc});for(let q of _.auth.methods)if(!q_.includes(q))this.diagnostics.push({code:"E107_UNKNOWN_AUTH_METHOD",message:`Unknown auth method '${q}'`,hint:`Supported methods: ${q_.join(", ")}`,loc:_.auth.loc})}checkQueryActionEntities(_){let q=new Set(_.cruds.map(($)=>$.entity));for(let $ of _.queries)for(let f of $.entities)if(!q.has(f))this.diagnostics.push({code:"E108_UNKNOWN_ENTITY_REF",message:`Query '${$.name}' references unknown entity '${f}'`,hint:`Add a crud block for entity '${f}', or remove it from the entities list`,loc:$.loc});for(let $ of _.actions)for(let f of $.entities)if(!q.has(f))this.diagnostics.push({code:"E109_UNKNOWN_ENTITY_REF",message:`Action '${$.name}' references unknown entity '${f}'`,hint:`Add a crud block for entity '${f}', or remove it from the entities list`,loc:$.loc})}checkJobExecutors(_){for(let q of _.jobs)if(q.executor!=="PgBoss")this.diagnostics.push({code:"E110_UNKNOWN_JOB_EXECUTOR",message:`Unknown job executor '${q.executor}' in '${q.name}'`,hint:"Supported executors: PgBoss",loc:q.loc})}}function qq(_,q="main.vasp"){let $=p8(_,q);return new Iq().validate($),$}import{join as Q4,resolve as q7}from"path";import{existsSync as t8,mkdirSync as _7,readFileSync as $7}from"fs";import{join as yq}from"path";import{existsSync as Dq}from"fs";function Tq(_){let q=yq(_,"..","templates");if(Dq(q))return q;let $=yq(_,"..","..","..","..","templates");if(Dq($))return $;throw Error(`Templates directory not found. Searched:
41
+ `,t:"\t",r:"\r",'"':'"',"'":"'","\\":"\\"}[_]??_}scanNumber(){let _=this.loc(),q="";while(this.pos<this.source.length&&this.peek()>="0"&&this.peek()<="9")q+=this.advance();if(this.peek()==="."&&this.peek(1)>="0"&&this.peek(1)<="9"){q+=this.advance();while(this.pos<this.source.length&&this.peek()>="0"&&this.peek()<="9")q+=this.advance()}this.tokens.push({type:"NUMBER",value:q,loc:_})}scanIdentifierOrKeyword(){let _=this.loc(),q="";while(this.pos<this.source.length){let $=this.peek();if($>="a"&&$<="z"||$>="A"&&$<="Z"||$>="0"&&$<="9"||$==="_"||$==="-")q+=this.advance();else break}if(A8.has(q)){if(Xq.has(q))this.tokens.push({type:q,value:q,loc:_});else if(q==="import")this.tokens.push({type:"import",value:q,loc:_});else if(q==="from")this.tokens.push({type:"from",value:q,loc:_});else this.tokens.push({type:"IDENTIFIER",value:q,loc:_});return}if(q==="true"||q==="false"){this.tokens.push({type:"BOOLEAN",value:q,loc:_});return}this.tokens.push({type:"IDENTIFIER",value:q,loc:_})}}function p8(_,q="main.vasp"){let $=new Iq(_,q).tokenize();return new e8($,q).parse()}class e8{tokens;filename;pos=0;constructor(_,q){this.tokens=_;this.filename=q}parse(){let _={app:null,entities:[],routes:[],pages:[],queries:[],actions:[],cruds:[],realtimes:[],jobs:[]};while(!this.isEOF()){let q=this.peek();switch(q.type){case"app":_.app=this.parseApp();break;case"auth":_.auth=this.parseAuth();break;case"entity":_.entities.push(this.parseEntity());break;case"route":_.routes.push(this.parseRoute());break;case"page":_.pages.push(this.parsePage());break;case"query":_.queries.push(this.parseQuery());break;case"action":_.actions.push(this.parseAction());break;case"crud":_.cruds.push(this.parseCrud());break;case"realtime":_.realtimes.push(this.parseRealtime());break;case"job":_.jobs.push(this.parseJob());break;default:throw this.error("E010_UNEXPECTED_TOKEN",`Unexpected token '${q.value}' at top level`,"Expected a declaration keyword: app, auth, entity, route, page, query, action, crud, realtime, or job",q.loc)}}return _}parseApp(){let _=this.consume("app").loc,q=this.consumeIdentifier();this.consume("{");let $="",f="Drizzle",K=!1,P=!1;while(!this.check("}")){let j=this.consumeIdentifier();switch(this.consume(":"),j.value){case"title":$=this.consumeString();break;case"db":f=this.consumeIdentifier().value;break;case"ssr":{let v=this.peek();if(v.type==="BOOLEAN")K=this.consume("BOOLEAN").value==="true";else if(v.type==="STRING"){let O=this.consumeString();if(O!=="ssg")throw this.error("E011_INVALID_SSR",`Invalid ssr value "${O}"`,'Use: false, true, or "ssg"',v.loc);K="ssg"}else throw this.error("E011_INVALID_SSR","Invalid ssr value",'Use: false, true, or "ssg"',v.loc);break}case"typescript":P=this.consume("BOOLEAN").value==="true";break;default:throw this.error("E012_UNKNOWN_PROP",`Unknown app property '${j.value}'`,"Valid properties: title, db, ssr, typescript",j.loc)}}return this.consume("}"),{type:"App",name:q.value,loc:_,title:$,db:f,ssr:K,typescript:P}}parseAuth(){let _=this.consume("auth").loc,q=this.consumeIdentifier();this.consume("{");let $="",f=[];while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"userEntity":$=this.consumeIdentifier().value;break;case"methods":f=this.parseIdentifierArray();break;default:throw this.error("E013_UNKNOWN_PROP",`Unknown auth property '${K.value}'`,"Valid properties: userEntity, methods",K.loc)}}return this.consume("}"),{type:"Auth",name:q.value,loc:_,userEntity:$,methods:f}}parseEntity(){let _=this.consume("entity").loc,q=this.consumeIdentifier();this.consume("{");let $=[],f=["String","Int","Boolean","DateTime","Float"];while(!this.check("}")){let K=this.consumeIdentifier();this.consume(":");let P=this.consumeIdentifier();if(!f.includes(P.value))throw this.error("E026_INVALID_FIELD_TYPE",`Invalid field type '${P.value}' in entity '${q.value}'`,`Valid types: ${f.join(", ")}`,P.loc);let j=[];while(this.check("AT_MODIFIER")){let v=this.consume("AT_MODIFIER");j.push(v.value)}$.push({name:K.value,type:P.value,modifiers:j})}return this.consume("}"),{type:"Entity",name:q.value,loc:_,fields:$}}parseRoute(){let _=this.consume("route").loc,q=this.consumeIdentifier();this.consume("{");let $="",f="";while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"path":$=this.consumeString();break;case"to":f=this.consumeIdentifier().value;break;default:throw this.error("E014_UNKNOWN_PROP",`Unknown route property '${K.value}'`,"Valid properties: path, to",K.loc)}}return this.consume("}"),{type:"Route",name:q.value,loc:_,path:$,to:f}}parsePage(){let _=this.consume("page").loc,q=this.consumeIdentifier();this.consume("{");let $=null;while(!this.check("}")){let f=this.consumeIdentifier();switch(this.consume(":"),f.value){case"component":$=this.parseImportExpression();break;default:throw this.error("E015_UNKNOWN_PROP",`Unknown page property '${f.value}'`,"Valid properties: component",f.loc)}}if(this.consume("}"),!$)throw this.error("E016_MISSING_COMPONENT",`Page '${q.value}' is missing a component`,'Add: component: import Foo from "@src/pages/Foo.vue"',_);return{type:"Page",name:q.value,loc:_,component:$}}parseQuery(){let _=this.consume("query").loc,q=this.consumeIdentifier();this.consume("{");let $=null,f=[],K=!1;while(!this.check("}")){let P=this.consumeIdentifier();switch(this.consume(":"),P.value){case"fn":$=this.parseImportExpression();break;case"entities":f=this.parseIdentifierArray();break;case"auth":K=this.consume("BOOLEAN").value==="true";break;default:throw this.error("E017_UNKNOWN_PROP",`Unknown query property '${P.value}'`,"Valid properties: fn, entities, auth",P.loc)}}if(this.consume("}"),!$)throw this.error("E018_MISSING_FN",`Query '${q.value}' is missing fn`,'Add: fn: import { myFn } from "@src/queries.js"',_);return{type:"Query",name:q.value,loc:_,fn:$,entities:f,auth:K}}parseAction(){let _=this.consume("action").loc,q=this.consumeIdentifier();this.consume("{");let $=null,f=[],K=!1;while(!this.check("}")){let P=this.consumeIdentifier();switch(this.consume(":"),P.value){case"fn":$=this.parseImportExpression();break;case"entities":f=this.parseIdentifierArray();break;case"auth":K=this.consume("BOOLEAN").value==="true";break;default:throw this.error("E019_UNKNOWN_PROP",`Unknown action property '${P.value}'`,"Valid properties: fn, entities, auth",P.loc)}}if(this.consume("}"),!$)throw this.error("E020_MISSING_FN",`Action '${q.value}' is missing fn`,'Add: fn: import { myFn } from "@src/actions.js"',_);return{type:"Action",name:q.value,loc:_,fn:$,entities:f,auth:K}}parseCrud(){let _=this.consume("crud").loc,q=this.consumeIdentifier();this.consume("{");let $="",f=[];while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"entity":$=this.consumeIdentifier().value;break;case"operations":f=this.parseIdentifierArray();break;default:throw this.error("E021_UNKNOWN_PROP",`Unknown crud property '${K.value}'`,"Valid properties: entity, operations",K.loc)}}return this.consume("}"),{type:"Crud",name:q.value,loc:_,entity:$,operations:f}}parseRealtime(){let _=this.consume("realtime").loc,q=this.consumeIdentifier();this.consume("{");let $="",f=[];while(!this.check("}")){let K=this.consumeIdentifier();switch(this.consume(":"),K.value){case"entity":$=this.consumeIdentifier().value;break;case"events":f=this.parseIdentifierArray();break;default:throw this.error("E022_UNKNOWN_PROP",`Unknown realtime property '${K.value}'`,"Valid properties: entity, events",K.loc)}}return this.consume("}"),{type:"Realtime",name:q.value,loc:_,entity:$,events:f}}parseJob(){let _=this.consume("job").loc,q=this.consumeIdentifier();this.consume("{");let $="PgBoss",f=null,K;while(!this.check("}")){let P=this.consumeIdentifier();switch(this.consume(":"),P.value){case"executor":$=this.consumeIdentifier().value;break;case"perform":{this.consume("{");while(!this.check("}")){let j=this.consumeIdentifier();if(this.consume(":"),j.value==="fn")f=this.parseImportExpression();else throw this.error("E023_UNKNOWN_PROP",`Unknown perform property '${j.value}'`,"Valid properties: fn",j.loc)}this.consume("}");break}case"schedule":K=this.consumeString();break;default:throw this.error("E024_UNKNOWN_PROP",`Unknown job property '${P.value}'`,"Valid properties: executor, perform, schedule",P.loc)}}if(this.consume("}"),!f)throw this.error("E025_MISSING_PERFORM",`Job '${q.value}' is missing perform.fn`,'Add: perform: { fn: import { myJob } from "@src/jobs.js" }',_);return{type:"Job",name:q.value,loc:_,executor:$,perform:{fn:f},...K!==void 0?{schedule:K}:{}}}parseImportExpression(){let _=this.consume("import").loc;if(this.check("{")){this.consume("{");let f=this.consumeIdentifier().value;this.consume("}"),this.consume("from");let K=this.consumeString();return{kind:"named",namedExport:f,source:K}}let q=this.consumeIdentifier().value;this.consume("from");let $=this.consumeString();return{kind:"default",defaultExport:q,source:$}}parseIdentifierArray(){this.consume("[");let _=[];while(!this.check("]"))if(_.push(this.consumeIdentifier().value),this.check(","))this.consume(",");return this.consume("]"),_}peek(){return this.tokens[this.pos]??{type:"EOF",value:"",loc:{line:0,col:0,offset:0}}}check(_){return this.peek().type===_}isEOF(){return this.check("EOF")}consume(_){let q=this.peek();if(q.type!==_)throw this.error("E030_EXPECTED_TOKEN",`Expected '${_}' but got '${q.value||q.type}'`,`Add the missing '${_}'`,q.loc);return this.pos++,q}consumeIdentifier(){let _=this.peek();if(_.type!=="IDENTIFIER"&&!Xq.has(_.type))throw this.error("E031_EXPECTED_IDENTIFIER",`Expected an identifier but got '${_.value||_.type}'`,"Provide a valid name (letters, digits, underscores)",_.loc);return this.pos++,_}consumeString(){let _=this.peek();if(_.type!=="STRING")throw this.error("E032_EXPECTED_STRING",`Expected a string but got '${_.value||_.type}'`,'Wrap the value in double quotes: "value"',_.loc);return this.pos++,_.value}error(_,q,$,f){return new b([{code:_,message:q,hint:$,...f!==void 0?{loc:f}:{}}])}}class yq{diagnostics=[];validate(_){if(this.checkAppExists(_),this.checkRouteTargets(_),this.checkCrudEntities(_),this.checkCrudOperations(_),this.checkRealtimeEntities(_),this.checkAuthMethods(_),this.checkQueryActionEntities(_),this.checkJobExecutors(_),this.diagnostics.length>0)throw new b(this.diagnostics)}checkAppExists(_){if(!_.app)this.diagnostics.push({code:"E100_MISSING_APP_BLOCK",message:"No app block found in main.vasp",hint:"Every Vasp project requires exactly one app { } block"})}checkRouteTargets(_){let q=new Set(_.pages.map(($)=>$.name));for(let $ of _.routes)if(!q.has($.to))this.diagnostics.push({code:"E101_UNKNOWN_PAGE_REF",message:`Route '${$.name}' references unknown page '${$.to}'`,hint:`Add a page block named '${$.to}', or fix the 'to' value in route '${$.name}'`,loc:$.loc})}checkCrudEntities(_){if(_.entities.length===0)return;let q=new Set(_.entities.map(($)=>$.name));for(let $ of _.cruds)if(!q.has($.entity))this.diagnostics.push({code:"E111_CRUD_ENTITY_NOT_DECLARED",message:`crud '${$.name}' references entity '${$.entity}' which has no entity block`,hint:`Add an entity block for '${$.entity}', or remove the crud block`,loc:$.loc})}checkCrudOperations(_){for(let q of _.cruds){if(q.operations.length===0)this.diagnostics.push({code:"E102_EMPTY_CRUD_OPERATIONS",message:`crud '${q.name}' has no operations`,hint:"Add at least one operation: operations: [list, create, update, delete]",loc:q.loc});for(let $ of q.operations)if(!$_.includes($))this.diagnostics.push({code:"E103_UNKNOWN_CRUD_OPERATION",message:`Unknown crud operation '${$}' in '${q.name}'`,hint:`Supported operations: ${$_.join(", ")}`,loc:q.loc})}}checkRealtimeEntities(_){let q=new Set(_.cruds.map(($)=>$.entity));for(let $ of _.realtimes){if(!q.has($.entity))this.diagnostics.push({code:"E104_REALTIME_ENTITY_NOT_CRUD",message:`realtime '${$.name}' references entity '${$.entity}' which has no crud block`,hint:`Add a crud block for entity '${$.entity}', or remove the realtime block`,loc:$.loc});for(let f of $.events)if(!f_.includes(f))this.diagnostics.push({code:"E105_UNKNOWN_REALTIME_EVENT",message:`Unknown realtime event '${f}' in '${$.name}'`,hint:`Supported events: ${f_.join(", ")}`,loc:$.loc})}}checkAuthMethods(_){if(!_.auth)return;if(_.auth.methods.length===0)this.diagnostics.push({code:"E106_EMPTY_AUTH_METHODS",message:`auth '${_.auth.name}' has no methods`,hint:"Add at least one method: methods: [usernameAndPassword]",loc:_.auth.loc});for(let q of _.auth.methods)if(!__.includes(q))this.diagnostics.push({code:"E107_UNKNOWN_AUTH_METHOD",message:`Unknown auth method '${q}'`,hint:`Supported methods: ${__.join(", ")}`,loc:_.auth.loc})}checkQueryActionEntities(_){let q=new Set([..._.cruds.map(($)=>$.entity),..._.entities.map(($)=>$.name)]);for(let $ of _.queries)for(let f of $.entities)if(!q.has(f))this.diagnostics.push({code:"E108_UNKNOWN_ENTITY_REF",message:`Query '${$.name}' references unknown entity '${f}'`,hint:`Add an entity or crud block for '${f}', or remove it from the entities list`,loc:$.loc});for(let $ of _.actions)for(let f of $.entities)if(!q.has(f))this.diagnostics.push({code:"E109_UNKNOWN_ENTITY_REF",message:`Action '${$.name}' references unknown entity '${f}'`,hint:`Add an entity or crud block for '${f}', or remove it from the entities list`,loc:$.loc})}checkJobExecutors(_){for(let q of _.jobs)if(q.executor!=="PgBoss")this.diagnostics.push({code:"E110_UNKNOWN_JOB_EXECUTOR",message:`Unknown job executor '${q.executor}' in '${q.name}'`,hint:"Supported executors: PgBoss",loc:q.loc})}}function qq(_,q="main.vasp"){let $=p8(_,q);return new yq().validate($),$}import{join as Q4,resolve as q7}from"path";import{existsSync as t8,mkdirSync as _7,readFileSync as $7}from"fs";import{join as Dq}from"path";import{existsSync as xq}from"fs";function Tq(_){let q=Dq(_,"..","templates");if(xq(q))return q;let $=Dq(_,"..","..","..","..","templates");if(xq($))return $;throw Error(`Templates directory not found. Searched:
42
42
  ${q}
43
43
  ${$}
44
- Run 'bun run build' inside packages/cli to copy templates.`)}function d8(_){let q=yq(_,"..","starters");if(Dq(q))return q;let $=yq(_,"..","..","starters");if(Dq($))return $;throw Error(`Starters directory not found. Searched:
44
+ Run 'bun run build' inside packages/cli to copy templates.`)}function d8(_){let q=Dq(_,"..","starters");if(xq(q))return q;let $=Dq(_,"..","..","starters");if(xq($))return $;throw Error(`Starters directory not found. Searched:
45
45
  ${q}
46
- ${$}`)}var f7=d8(import.meta.dirname),G8=["minimal","todo","todo-auth-ssr"];async function i8(_){let q=_[0];if(!q)r.error("Please provide a project name: vasp new <project-name>"),process.exit(1);let $=K7(_.slice(1)),f=q7(process.cwd(),q);if(t8(f))r.error(`Directory '${q}' already exists`),process.exit(1);r.step(`Creating Vasp app: ${q}`),r.info(`Version: ${I}`);let K;if($.starter){if(!G8.includes($.starter))r.error(`Unknown starter '${$.starter}'. Available: ${G8.join(", ")}`),process.exit(1);let O=Q4(f7,`${$.starter}.vasp`);if(!t8(O))r.error(`Starter file not found: ${O}`),process.exit(1);K=$7(O,"utf8"),K=K.replace(/^app \w+/m,`app ${a8(q)}`),r.info(`Starter: ${$.starter}`)}else r.info(`Mode: ${$.ssg?"SSG":$.ssr?"SSR":"SPA"} | Language: ${$.typescript?"TypeScript":"JavaScript"}`),K=P7(q,$);let P;try{P=qq(K,"main.vasp")}catch(O){r.error(`Internal error generating initial config: ${String(O)}`),process.exit(1)}let j=Tq(import.meta.dirname);_7(f,{recursive:!0});let w=Q(P,{outputDir:f,templateDir:j,logLevel:"info"});if(!w.success){r.error("Generation failed:");for(let O of w.errors)r.error(O);process.exit(1)}if(r.success(`Created ${w.filesWritten.length} files`),!$.noInstall){r.step("Installing dependencies...");let O=Bun.spawn(["bun","install"],{cwd:f,stdout:"inherit",stderr:"inherit"});if(await O.exited,O.exitCode!==0)r.warn("bun install failed \u2014 run it manually inside your project");else r.success("Dependencies installed")}r.step("\uD83D\uDE80 Your Vasp app is ready!"),r.dim(` cd ${q}`),r.dim(" vasp start")}function K7(_){return{typescript:_.includes("--typescript")||_.includes("--ts"),ssr:_.includes("--ssr"),ssg:_.includes("--ssg"),noInstall:_.includes("--no-install"),starter:_.find((q)=>q.startsWith("--starter="))?.split("=")[1]}}function P7(_,q){let $=q.ssg?'"ssg"':q.ssr?"true":"false";return`app ${a8(_)} {
46
+ ${$}`)}var f7=d8(import.meta.dirname),G8=["minimal","todo","todo-auth-ssr"];async function i8(_){let q=_[0];if(!q)r.error("Please provide a project name: vasp new <project-name>"),process.exit(1);let $=K7(_.slice(1)),f=q7(process.cwd(),q);if(t8(f))r.error(`Directory '${q}' already exists`),process.exit(1);r.step(`Creating Vasp app: ${q}`),r.info(`Version: ${I}`);let K;if($.starter){if(!G8.includes($.starter))r.error(`Unknown starter '${$.starter}'. Available: ${G8.join(", ")}`),process.exit(1);let O=Q4(f7,`${$.starter}.vasp`);if(!t8(O))r.error(`Starter file not found: ${O}`),process.exit(1);K=$7(O,"utf8"),K=K.replace(/^app \w+/m,`app ${a8(q)}`),r.info(`Starter: ${$.starter}`)}else r.info(`Mode: ${$.ssg?"SSG":$.ssr?"SSR":"SPA"} | Language: ${$.typescript?"TypeScript":"JavaScript"}`),K=P7(q,$);let P;try{P=qq(K,"main.vasp")}catch(O){r.error(`Internal error generating initial config: ${String(O)}`),process.exit(1)}let j=Tq(import.meta.dirname);_7(f,{recursive:!0});let v=Q(P,{outputDir:f,templateDir:j,logLevel:"info"});if(!v.success){r.error("Generation failed:");for(let O of v.errors)r.error(O);process.exit(1)}if(r.success(`Created ${v.filesWritten.length} files`),!$.noInstall){r.step("Installing dependencies...");let O=Bun.spawn(["bun","install"],{cwd:f,stdout:"inherit",stderr:"inherit"});if(await O.exited,O.exitCode!==0)r.warn("bun install failed \u2014 run it manually inside your project");else r.success("Dependencies installed")}r.step("\uD83D\uDE80 Your Vasp app is ready!"),r.dim(` cd ${q}`),r.dim(" vasp start")}function K7(_){let q=_.find(($)=>$.startsWith("--starter="))?.split("=")[1];return{typescript:_.includes("--typescript")||_.includes("--ts"),ssr:_.includes("--ssr"),ssg:_.includes("--ssg"),noInstall:_.includes("--no-install"),...q!==void 0&&{starter:q}}}function P7(_,q){let $=q.ssg?'"ssg"':q.ssr?"true":"false";return`app ${a8(_)} {
47
47
  title: "${j7(_)}"
48
48
  db: Drizzle
49
49
  ssr: ${$}
@@ -58,10 +58,10 @@ route HomeRoute {
58
58
  page HomePage {
59
59
  component: import Home from "@src/pages/Home.vue"
60
60
  }
61
- `}function a8(_){return _.replace(/[-_\s]+(.)/g,(q,$)=>$.toUpperCase()).replace(/^./,(q)=>q.toUpperCase())}function j7(_){return _.replace(/[-_]+/g," ").replace(/\b\w/g,(q)=>q.toUpperCase())}import{join as xq}from"path";import{existsSync as S8,readFileSync as b8,renameSync as v7,writeFileSync as w7}from"fs";import{readdirSync as O7,statSync as Y7}from"fs";async function C8(){let _=process.cwd(),q=xq(_,"main.vasp");if(!S8(q))r.error("No main.vasp found. Run this command from your Vasp project root."),process.exit(1);let $=b8(q,"utf8");if(qq($,"main.vasp").app.typescript){r.warn("Project is already using TypeScript (typescript: true in main.vasp)");return}r.step("Migrating project to TypeScript...");let K=$.replace(/typescript:\s*false/,"typescript: true");w7(q,K,"utf8"),r.success("Updated main.vasp: typescript: true");let P=$$(xq(_,"src"));if($$(xq(_,"server")),P.length>0)r.success(`Renamed ${P.length} .js files to .ts`);let j=b8(q,"utf8"),w=qq(j,"main.vasp"),O=Tq(import.meta.dirname),v=Q(w,{outputDir:_,templateDir:O,logLevel:"info"});if(!v.success){r.error("Regeneration failed:");for(let h of v.errors)r.error(h);process.exit(1)}r.step("\u2713 Migration complete!"),r.dim("Run: bun install (to add TypeScript devDependencies)"),r.dim("Run: bun run typecheck (to verify zero type errors)")}function $$(_){let q=[];if(!S8(_))return q;let $=O7(_);for(let f of $){let K=xq(_,f);if(Y7(K).isDirectory())q.push(...$$(K));else if(f.endsWith(".js")&&!f.endsWith(".config.js")){let j=K.slice(0,-3)+".ts";v7(K,j),q.push(j)}}return q}import{join as h7,resolve as T7}from"path";import{existsSync as k7,readFileSync as r7,writeFileSync as z7}from"fs";async function l8(){let _=T7(process.cwd()),q=h7(_,"main.vasp");if(!k7(q))r.error(`No main.vasp found in ${_}. Run this command inside a Vasp project.`),process.exit(1);let $=r7(q,"utf8");if(/ssr:\s*true/.test($)||/ssr:\s*"ssg"/.test($)){r.warn("SSR is already enabled in main.vasp \u2014 nothing to do.");return}if(!/ssr:\s*false/.test($))r.error("Could not find 'ssr: false' in main.vasp. Please update it manually."),process.exit(1);$=$.replace(/ssr:\s*false/,"ssr: true"),z7(q,$,"utf8"),r.step("Patched main.vasp: ssr: false \u2192 ssr: true");let f;try{f=qq($,"main.vasp")}catch(j){r.error(`Failed to parse updated main.vasp: ${String(j)}`),process.exit(1)}let K=Tq(import.meta.dirname),P=Q(f,{outputDir:_,templateDir:K,logLevel:"info"});if(!P.success){r.error("Regeneration failed:");for(let j of P.errors)r.error(j);process.exit(1)}r.success(`SSR enabled \u2014 ${P.filesWritten.length} files regenerated`),r.dim(" Run: bun install (if you have new deps)"),r.dim(" Run: vasp start")}import{join as H7,resolve as W7}from"path";import{existsSync as J7,readFileSync as Z7}from"fs";var f$=Uq(Qq(),1);async function N8(){let _=W7(process.cwd()),q=H7(_,"package.json");if(!J7(q))r.error("No package.json found. Run this command inside a Vasp project."),process.exit(1);let $=JSON.parse(Z7(q,"utf8")),f=$.scripts?.["dev:server"],K=$.scripts?.["dev:client"];if(!f||!K)r.error("Missing 'dev:server' or 'dev:client' scripts in package.json."),process.exit(1);r.step("Starting Vasp dev servers..."),r.dim(` server: ${f}`),r.dim(` client: ${K}`),console.log();let[P,j]=await Promise.all([V8("server",f$.default.cyan,f,_),V8("client",f$.default.magenta,K,_)]);process.on("SIGINT",()=>{P.kill(),j.kill(),process.exit(0)}),process.on("SIGTERM",()=>{P.kill(),j.kill(),process.exit(0)});let[w,O]=await Promise.all([P.exited,j.exited]);if(w!==0||O!==0)process.exit(1)}async function V8(_,q,$,f){let K=q(`[${_}]`),[P,...j]=$.split(" "),w=Bun.spawn([P,...j],{cwd:f,stdout:"pipe",stderr:"pipe"});return M8(w.stdout,K,process.stdout),M8(w.stderr,K,process.stderr),w}async function M8(_,q,$){if(!_)return;let f=new TextDecoder,K=_.getReader(),P="";while(!0){let{done:j,value:w}=await K.read();if(j){if(P)$.write(`${q} ${P}
62
- `);break}P+=f.decode(w,{stream:!0});let O=P.split(`
63
- `);P=O.pop()??"";for(let v of O)$.write(`${q} ${v}
64
- `)}}import{join as c8,resolve as m7}from"path";import{existsSync as E8,readFileSync as u7}from"fs";async function R8(){let _=m7(process.cwd()),q=c8(_,"package.json");if(!E8(q))r.error("No package.json found. Run this command inside a Vasp project."),process.exit(1);let f=!!JSON.parse(u7(q,"utf8")).dependencies?.nuxt;r.step("Building Vasp app for production..."),r.info("Building backend...");let K=E8(c8(_,"server/index.ts"))?"server/index.ts":"server/index.js";if(await Bun.spawn(["bun","build",K,"--target","bun","--outdir","dist/server"],{cwd:_,stdout:"inherit",stderr:"inherit"}).exited!==0)r.error("Backend build failed."),process.exit(1);r.success("Backend built \u2192 dist/server/"),r.info(`Building frontend (${f?"Nuxt SSR":"Vite SPA"})...`);let w=f?["nuxt","build"]:["vite","build"];if(await Bun.spawn(w,{cwd:_,stdout:"inherit",stderr:"inherit"}).exited!==0)r.error("Frontend build failed."),process.exit(1);if(r.success(`Frontend built \u2192 ${f?".output/":"dist/"}`),r.step("Build complete!"),r.dim(" Run: node dist/server/index.js (backend)"),f)r.dim(" Run: node .output/server/index.mjs (Nuxt SSR)")}async function I8(_){let q=_[0];switch(q){case"new":await i8(_.slice(1));break;case"--version":case"-v":console.log(I);break;case"--help":case"-h":case void 0:g8();break;case"start":await N8();break;case"build":await R8();break;case"migrate-to-ts":await C8();break;case"enable-ssr":await l8();break;default:r.error(`Unknown command: ${q}`),g8(),process.exit(1)}}function g8(){console.log(`
61
+ `}function a8(_){return _.replace(/[-_\s]+(.)/g,(q,$)=>$.toUpperCase()).replace(/^./,(q)=>q.toUpperCase())}function j7(_){return _.replace(/[-_]+/g," ").replace(/\b\w/g,(q)=>q.toUpperCase())}import{join as Lq}from"path";import{existsSync as S8,readFileSync as b8,renameSync as v7,writeFileSync as w7}from"fs";import{readdirSync as O7,statSync as Y7}from"fs";async function C8(){let _=process.cwd(),q=Lq(_,"main.vasp");if(!S8(q))r.error("No main.vasp found. Run this command from your Vasp project root."),process.exit(1);let $=b8(q,"utf8");if(qq($,"main.vasp").app.typescript){r.warn("Project is already using TypeScript (typescript: true in main.vasp)");return}r.step("Migrating project to TypeScript...");let K=$.replace(/typescript:\s*false/,"typescript: true");w7(q,K,"utf8"),r.success("Updated main.vasp: typescript: true");let P=$$(Lq(_,"src"));if($$(Lq(_,"server")),P.length>0)r.success(`Renamed ${P.length} .js files to .ts`);let j=b8(q,"utf8"),v=qq(j,"main.vasp"),O=Tq(import.meta.dirname),w=Q(v,{outputDir:_,templateDir:O,logLevel:"info"});if(!w.success){r.error("Regeneration failed:");for(let h of w.errors)r.error(h);process.exit(1)}r.step("\u2713 Migration complete!"),r.dim("Run: bun install (to add TypeScript devDependencies)"),r.dim("Run: bun run typecheck (to verify zero type errors)")}function $$(_){let q=[];if(!S8(_))return q;let $=O7(_);for(let f of $){let K=Lq(_,f);if(Y7(K).isDirectory())q.push(...$$(K));else if(f.endsWith(".js")&&!f.endsWith(".config.js")){let j=K.slice(0,-3)+".ts";v7(K,j),q.push(j)}}return q}import{join as h7,resolve as T7}from"path";import{existsSync as k7,readFileSync as r7,writeFileSync as z7}from"fs";async function V8(){let _=T7(process.cwd()),q=h7(_,"main.vasp");if(!k7(q))r.error(`No main.vasp found in ${_}. Run this command inside a Vasp project.`),process.exit(1);let $=r7(q,"utf8");if(/ssr:\s*true/.test($)||/ssr:\s*"ssg"/.test($)){r.warn("SSR is already enabled in main.vasp \u2014 nothing to do.");return}if(!/ssr:\s*false/.test($))r.error("Could not find 'ssr: false' in main.vasp. Please update it manually."),process.exit(1);$=$.replace(/ssr:\s*false/,"ssr: true"),z7(q,$,"utf8"),r.step("Patched main.vasp: ssr: false \u2192 ssr: true");let f;try{f=qq($,"main.vasp")}catch(j){r.error(`Failed to parse updated main.vasp: ${String(j)}`),process.exit(1)}let K=Tq(import.meta.dirname),P=Q(f,{outputDir:_,templateDir:K,logLevel:"info"});if(!P.success){r.error("Regeneration failed:");for(let j of P.errors)r.error(j);process.exit(1)}r.success(`SSR enabled \u2014 ${P.filesWritten.length} files regenerated`),r.dim(" Run: bun install (if you have new deps)"),r.dim(" Run: vasp start")}import{join as H7,resolve as W7}from"path";import{existsSync as J7,readFileSync as Z7}from"fs";var f$=Fq(q_(),1);async function N8(){let _=W7(process.cwd()),q=H7(_,"package.json");if(!J7(q))r.error("No package.json found. Run this command inside a Vasp project."),process.exit(1);let $=JSON.parse(Z7(q,"utf8")),f=$.scripts?.["dev:server"],K=$.scripts?.["dev:client"];if(!f||!K)r.error("Missing 'dev:server' or 'dev:client' scripts in package.json."),process.exit(1);r.step("Starting Vasp dev servers..."),r.dim(` server: ${f}`),r.dim(` client: ${K}`),console.log();let[P,j]=await Promise.all([l8("server",f$.default.cyan,f,_),l8("client",f$.default.magenta,K,_)]);process.on("SIGINT",()=>{P.kill(),j.kill(),process.exit(0)}),process.on("SIGTERM",()=>{P.kill(),j.kill(),process.exit(0)});let[v,O]=await Promise.all([P.exited,j.exited]);if(v!==0||O!==0)process.exit(1)}async function l8(_,q,$,f){let K=q(`[${_}]`),[P,...j]=$.split(" "),v=Bun.spawn([P,...j],{cwd:f,stdout:"pipe",stderr:"pipe"});return M8(v.stdout,K,process.stdout),M8(v.stderr,K,process.stderr),v}async function M8(_,q,$){if(!_)return;let f=new TextDecoder,K=_.getReader(),P="";while(!0){let{done:j,value:v}=await K.read();if(j){if(P)$.write(`${q} ${P}
62
+ `);break}P+=f.decode(v,{stream:!0});let O=P.split(`
63
+ `);P=O.pop()??"";for(let w of O)$.write(`${q} ${w}
64
+ `)}}import{join as c8,resolve as m7}from"path";import{existsSync as E8,readFileSync as u7}from"fs";async function R8(){let _=m7(process.cwd()),q=c8(_,"package.json");if(!E8(q))r.error("No package.json found. Run this command inside a Vasp project."),process.exit(1);let f=!!JSON.parse(u7(q,"utf8")).dependencies?.nuxt;r.step("Building Vasp app for production..."),r.info("Building backend...");let K=E8(c8(_,"server/index.ts"))?"server/index.ts":"server/index.js";if(await Bun.spawn(["bun","build",K,"--target","bun","--outdir","dist/server"],{cwd:_,stdout:"inherit",stderr:"inherit"}).exited!==0)r.error("Backend build failed."),process.exit(1);r.success("Backend built \u2192 dist/server/"),r.info(`Building frontend (${f?"Nuxt SSR":"Vite SPA"})...`);let v=f?["nuxt","build"]:["vite","build"];if(await Bun.spawn(v,{cwd:_,stdout:"inherit",stderr:"inherit"}).exited!==0)r.error("Frontend build failed."),process.exit(1);if(r.success(`Frontend built \u2192 ${f?".output/":"dist/"}`),r.step("Build complete!"),r.dim(" Run: node dist/server/index.js (backend)"),f)r.dim(" Run: node .output/server/index.mjs (Nuxt SSR)")}async function I8(_){let q=_[0];switch(q){case"new":await i8(_.slice(1));break;case"--version":case"-v":console.log(I);break;case"--help":case"-h":case void 0:g8();break;case"start":await N8();break;case"build":await R8();break;case"migrate-to-ts":await C8();break;case"enable-ssr":await V8();break;default:r.error(`Unknown command: ${q}`),g8(),process.exit(1)}}function g8(){console.log(`
65
65
  vasp \u2014 declarative full-stack framework for Vue
66
66
 
67
67
  Usage:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vasp-cli",
3
- "version": "0.1.4",
3
+ "version": "0.2.0",
4
4
  "description": "The Vasp CLI — declarative full-stack framework for Vue developers",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -1,4 +1,4 @@
1
- import { pgTable, serial, text, timestamp, boolean } from 'drizzle-orm/pg-core'
1
+ import { pgTable, serial, text, integer, boolean, timestamp, doublePrecision } from 'drizzle-orm/pg-core'
2
2
  {{#if isTypeScript}}
3
3
  import type { InferSelectModel, InferInsertModel } from 'drizzle-orm'
4
4
  {{/if}}
@@ -21,14 +21,25 @@ export type NewUser = InferInsertModel<typeof users>
21
21
  {{/if}}
22
22
 
23
23
  {{/if}}
24
- {{#each cruds}}
25
- // {{entity}} table — add your columns below
24
+ {{#each crudsWithFields}}
25
+ {{#if hasEntity}}
26
+ // {{entity}} table — generated from entity block
27
+ export const {{camelCase entity}}s = pgTable('{{camelCase entity}}s', {
28
+ {{#each fields}}
29
+ {{camelCase name}}: {{{drizzleColumn name type modifiers}}},
30
+ {{/each}}
31
+ createdAt: timestamp('created_at').defaultNow().notNull(),
32
+ updatedAt: timestamp('updated_at').defaultNow().notNull(),
33
+ })
34
+ {{else}}
35
+ // {{entity}} table — no entity block found, add your columns below
26
36
  export const {{camelCase entity}}s = pgTable('{{camelCase entity}}s', {
27
37
  id: serial('id').primaryKey(),
28
38
  // TODO: Add your {{entity}} columns here
29
39
  createdAt: timestamp('created_at').defaultNow().notNull(),
30
40
  updatedAt: timestamp('updated_at').defaultNow().notNull(),
31
41
  })
42
+ {{/if}}
32
43
  {{#if ../isTypeScript}}
33
44
  export type {{pascalCase entity}} = InferSelectModel<typeof {{camelCase entity}}s>
34
45
  export type New{{pascalCase entity}} = InferInsertModel<typeof {{camelCase entity}}s>
@@ -12,10 +12,15 @@ export async function register{{pascalCase name}}Worker() {
12
12
  await boss.work(JOB_NAME, async (job) => {
13
13
  await {{namedExport}}(job.data)
14
14
  })
15
+ {{#if hasSchedule}}
16
+
17
+ // Register cron schedule: {{schedule}}
18
+ await boss.schedule(JOB_NAME, '{{schedule}}', {})
19
+ {{/if}}
15
20
  }
16
21
 
17
22
  /**
18
- * Schedule a '{{name}}' job.
23
+ * Schedule a '{{name}}' job on demand.
19
24
  * @param {unknown} data - Data to pass to the job handler
20
25
  */
21
26
  export async function schedule{{pascalCase name}}(data) {
@@ -1,6 +1,6 @@
1
1
  import { Elysia, t } from 'elysia'
2
2
  import { db } from '../../db/client.{{ext}}'
3
- import { eq } from 'drizzle-orm'
3
+ import { eq, sql, asc, desc } from 'drizzle-orm'
4
4
  import { {{camelCase entity}}s } from '../../../drizzle/schema.{{ext}}'
5
5
  {{#if hasAuth}}
6
6
  import { requireAuth } from '../../auth/middleware.{{ext}}'
@@ -11,8 +11,21 @@ export const {{camelCase entity}}CrudRoutes = new Elysia({ prefix: '/api/crud/{{
11
11
  .use(requireAuth)
12
12
  {{/if}}
13
13
  {{#if (includes operations "list")}}
14
- .get('/', async () => {
15
- return db.select().from({{camelCase entity}}s)
14
+ .get('/', async ({ query }) => {
15
+ const limit = Math.min(Math.max(Number(query.limit) || 20, 1), 100)
16
+ const offset = Math.max(Number(query.offset) || 0, 0)
17
+ const orderBy = query.orderBy ?? 'id'
18
+ const direction = query.dir === 'desc' ? desc : asc
19
+
20
+ const table = {{camelCase entity}}s
21
+ const column = table[orderBy] ?? table.id
22
+
23
+ const [data, countResult] = await Promise.all([
24
+ db.select().from(table).orderBy(direction(column)).limit(limit).offset(offset),
25
+ db.select({ count: sql`count(*)::int` }).from(table),
26
+ ])
27
+
28
+ return { data, total: countResult[0]?.count ?? 0, limit, offset }
16
29
  })
17
30
  {{/if}}
18
31
  {{#if (includes operations "create")}}
@@ -1,30 +1,78 @@
1
1
  import { Elysia } from 'elysia'
2
+ {{#if ../hasAuth}}
3
+ import jwt from '@elysiajs/jwt'
4
+ {{/if}}
2
5
 
3
- // In-process subscriber set for '{{name}}' channel
4
- // Swap this for a Redis adapter in production multi-instance deployments
5
- const subscribers = new Set()
6
+ // Room-based subscriber map for '{{name}}' channel
7
+ // Each room key maps to a set of connected WebSocket clients
8
+ const rooms = new Map()
9
+
10
+ function getRoom(roomId) {
11
+ if (!rooms.has(roomId)) rooms.set(roomId, new Set())
12
+ return rooms.get(roomId)
13
+ }
6
14
 
7
15
  /**
8
- * Publish a realtime event to all connected subscribers of '{{name}}'.
16
+ * Publish a realtime event to all subscribers in a specific room of '{{name}}'.
9
17
  * Called automatically by CRUD mutation handlers.
10
18
  */
11
- export function publish{{pascalCase name}}(event, data) {
19
+ export function publish{{pascalCase name}}(event, data, roomId = 'default') {
20
+ const room = rooms.get(roomId)
21
+ if (!room) return
22
+ const message = JSON.stringify({ channel: '{{camelCase name}}', room: roomId, event, data })
23
+ for (const ws of room) {
24
+ try { ws.send(message) } catch { room.delete(ws) }
25
+ }
26
+ }
27
+
28
+ /**
29
+ * Broadcast to all rooms of '{{name}}'.
30
+ */
31
+ export function broadcast{{pascalCase name}}(event, data) {
12
32
  const message = JSON.stringify({ channel: '{{camelCase name}}', event, data })
13
- for (const ws of subscribers) {
14
- try { ws.send(message) } catch { subscribers.delete(ws) }
33
+ for (const [, room] of rooms) {
34
+ for (const ws of room) {
35
+ try { ws.send(message) } catch { room.delete(ws) }
36
+ }
15
37
  }
16
38
  }
17
39
 
18
40
  export const {{camelCase name}}Channel = new Elysia()
41
+ {{#if ../hasAuth}}
42
+ .use(jwt({ name: 'jwt', secret: process.env.JWT_SECRET || 'vasp-dev-secret' }))
43
+ {{/if}}
19
44
  .ws('/ws/{{camelCase name}}', {
45
+ {{#if ../hasAuth}}
46
+ async beforeHandle({ jwt: jwtPlugin, request }) {
47
+ const url = new URL(request.url)
48
+ const token = url.searchParams.get('token')
49
+ if (!token) return new Response('Unauthorized', { status: 401 })
50
+ const payload = await jwtPlugin.verify(token)
51
+ if (!payload) return new Response('Unauthorized', { status: 401 })
52
+ },
53
+ {{/if}}
20
54
  open(ws) {
21
- subscribers.add(ws)
55
+ const room = ws.data?.query?.room ?? 'default'
56
+ getRoom(room).add(ws)
57
+ ws.data._room = room
22
58
  },
23
59
  message(ws, msg) {
24
- // Echo back for debugging; extend for room-based subscriptions
60
+ // Client can switch rooms via { action: 'join', room: 'roomId' }
61
+ try {
62
+ const parsed = typeof msg === 'string' ? JSON.parse(msg) : msg
63
+ if (parsed.action === 'join' && parsed.room) {
64
+ const oldRoom = ws.data._room
65
+ if (oldRoom) rooms.get(oldRoom)?.delete(ws)
66
+ ws.data._room = parsed.room
67
+ getRoom(parsed.room).add(ws)
68
+ ws.send(JSON.stringify({ ack: 'joined', room: parsed.room }))
69
+ return
70
+ }
71
+ } catch { /* ignore parse errors */ }
25
72
  ws.send(JSON.stringify({ ack: msg }))
26
73
  },
27
74
  close(ws) {
28
- subscribers.delete(ws)
75
+ const room = ws.data?._room
76
+ if (room) rooms.get(room)?.delete(ws)
29
77
  },
30
78
  })