varfrontexpress=function(){"use strict";functiont(t){vare=void0,r=void0,i=void0,n=void0;if(t&&t.length>0){if(1===t.length){varo=a(t,1);n=o[0]}else{varu=a(t,2);e=u[0],n=u[1]}ninstanceofl?i=n:(ninstanceofd||"function"==typeofn)&&(r=n)}return{baseUri:e,middleware:r,router:i,which:n}}vare=["GET","POST","PUT","DELETE"],r="function"==typeofSymbol&&"symbol"==typeofSymbol.iterator?function(t){returntypeoft}:function(t){returnt&&"function"==typeofSymbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeoft},i=function(t,e){if(!(tinstanceofe))thrownewTypeError("Cannot call a class as a function")},n=function(){functiont(t,e){for(varr=0;r<e.length;r++){vari=e[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"ini&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}returnfunction(e,r,i){returnr&&t(e.prototype,r),i&&t(e,i),e}}(),a=function(){functiont(t,e){varr=[],i=!0,n=!1,a=void0;try{for(varo,u=t[Symbol.iterator]();!(i=(o=u.next()).done)&&(r.push(o.value),!e||r.length!==e);i=!0);}catch(t){n=!0,a=t}finally{try{!i&&u.return&&u.return()}finally{if(n)throwa}}returnr}returnfunction(e,r){if(Array.isArray(e))returne;if(Symbol.iteratorinObject(e))returnt(e,r);thrownewTypeError("Invalid attempt to destructure non-iterable instance")}}(),o=function(t){if(Array.isArray(t)){for(vare=0,r=Array(t.length);e<t.length;e++)r[e]=t[e];returnr}returnArray.from(t)},u=function(){functiont(){i(this,t)}returnn(t,[{key:"fetch",value:function(t,e,r){vari=t.method,n=t.uri,a=t.headers,o=t.data,u=function(r){e(t,{status:200,statusText:"OK",responseText:r})},s=function(e){vari=e.status,n=e.statusText,a=e.errorThrown;r(t,{status:i,statusText:n,errorThrown:a,errors:"HTTP "+i+" "+(n?n:"")})},d=newXMLHttpRequest;d.onreadystatechange=function(){4===d.readyState&&(200===d.status?u(d.responseText):s({status:d.status,statusText:d.statusText}))};try{if(d.open(i,n,!0),a){varh=!0,f=!1,l=void0;try{for(varc,y=Object.keys(a)[Symbol.iterator]();!(h=(c=y.next()).done);h=!0){varv=c.value;d.setRequestHeader(v,a[v])}}catch(t){f=!0,l=t}finally{try{!h&&y.return&&y.return()}finally{if(f)throwl}}}o?d.send(o):d.send()}catch(t){s({errorThrown:t})}}}]),t}(),s=function(){functiont(){i(this,t),this.settings={"http requester":newu,"http GET transformer":{uri:function(t){vare=t.uri,r=(t.headers,t.data);if(!r)returne;vari=e,n="",o=/^(.*)(#.*)$/.exec(e);if(o){varu=/^(.*)(#.*)$/.exec(e),s=a(u,3);i=s[1],n=s[2]}returni=Object.keys(r).reduce(function(t,e,i){returnt+=""+(0===i&&t.indexOf("?")===-1?"?":"&")+e+"="+r[e]},i),i+n}}},this.rules={"http requester":function(t){if("function"!=typeoft.fetch)thrownewTypeError("setting http requester has no fetch method")}}}returnn(t,[{key:"set",value:function(t,e){varr=this.rules[t];r&&r(e),this.settings[t]=e}},{key:"get",value:function(t){returnthis.settings[t]}}]),t}(),d=function(){functiont(){vare=arguments.length>0&&void0!==arguments[0]?arguments[0]:"";i(this,t),this.name=e}returnn(t,[{key:"next",value:function(){return!0}}]),t}(),h=function(){functiont(e,r,n,a){i(this,t),this.router=e,this.uriPart=r,this.method=n,this.middleware=a,this.visited=!1}returnn(t,[{key:"uri",get:function(){if(this.uriPart||this.method){if(this.uriPartinstanceofRegExp)returnthis.uriPart;if(this.router.baseUriinstanceofRegExp)returnthis.router.baseUri;if(this.router.baseUri){vart=this.router.baseUri.trim();returnthis.uriPart?(t+this.uriPart.trim()).replace(/\/{2,}/,"/"):t}returnthis.uriPart}}}]),t}(),f="method takes at least a middleware",l=function(){functiona(t){i(this,a),this._baseUri=t,this._routes=[]}returnn(a,[{key:"_add",value:function(t){returnthis._routes.push(t),this}},{key:"routes",value:function(t,e){returnthis._routes.filter(function(r){if(r.method&&r.method!==e)return!1;if(!r.uri||!t)return!0;vari=/^(.*)\?.*#.*|(.*)(?=\?|#)|(.*[^\?#])$/.exec(t),n=i[1]||i[2]||i[3];returnr.uriinstanceofRegExp?n.match(r.uri):r.uri===n})}},{key:"visited",value:function(){returnthis._routes.filter(function(t){returnt.visited})}},{key:"use",value:function(t){if(!(tinstanceofd)