UNPKG

bliz

Version:

A fast, declarative framework for writing web servers, no taradiddles

1 lines 55.1 kB
!function(e,r){if("object"==typeof exports&&"object"==typeof module)module.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{var t=r();for(var n in t)("object"==typeof exports?exports:e)[n]=t[n]}}(global,function(){return function(e){var r={};function t(n){if(r[n])return r[n].exports;var a=r[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,t),a.l=!0,a.exports}return t.m=e,t.c=r,t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:n})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,r){if(1&r&&(e=t(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(t.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var a in e)t.d(n,a,function(r){return e[r]}.bind(null,a));return n},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},t.p="",t(t.s=7)}([function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e};function a(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}r.AssignHandler=function(e){var r=e.name,t=e.obj,n=e.chainLink,i=e.override,o=void 0!==i&&i;e.combineStrings;return a({},r,function(e){return o?Object.assign(t,e):t[r]=e,n})},r.CreateArray=function(e){var r=e.name,t=e.arr,n=e.chainLink;return a({},r,function(e){return t.push(e),n})},r.CreateNewObjOf=function(e){var r=e.name,t=e.obj,n=e.dependencies,i=void 0===n?{}:n;return a({},"create"+r,function e(r){return Object.assign({},t.apply(e,[r].concat(function(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r<e.length;r++)t[r]=e[r];return t}return Array.from(e)}(i))))})},r.Method=function(e,r,t){return a({},e,function(n){return r[e][n.getObjProps().path]=n,t})},r.GetObjProps=function(e){return{getObjProps:function(){return e}}},r.Listen=function(e){return{createServer:function(){var r=e.http.createServer;return r((0,e._createHandler)().handler)},listen:function(){for(var r=arguments.length,t=Array(r),a=0;a<r;a++)t[a]=arguments[a];var i=e.http.createServer,o=e.io,s=e.socketHandler,u=e.graphqlHandler,c=e._createHandler,l=e._useSockets,p=e._version,f=e._useGraphql,d=e._Instance,h=e.print,m=e.os,v=i(c().handler);return l.useSockets?(l.io=o,s(n({server:v,args:t},e))):f.useGraphql?u(n({server:v,args:t},e)):(d.events.emit("log"),t.length>1?v.listen.apply(v,t):v.listen.apply(v,[t[0],function(){return h(["Listening on Bliz server "+p+" on port "+t[0],"Platform: "+m.platform(),"Hostname: "+m.hostname(),"Architecture: "+m.arch(),"CPU Cores: "+m.cpus().length,"Memory Free: "+(m.freemem()/m.totalmem()*100).toFixed(0)+"%, "+(m.freemem()/1024/1024).toFixed(0)+" MB / "+(m.totalmem()/1024/1024).toFixed(0)+" MB"])}]))}}},r.PrettyPrint=function(e){var r=e._useHttp,t=e._useSockets,n=e._Instance,a=e._loggerEntity,i=e.populateObjectWithTreeUtil,o=e.treeify;return{prettyPrint:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:console.log;return n.events.once("log",function(){return setImmediate(function(){i(r._routersObject,["get","post","put","del"],a.http),i(t._socketRoutersObject,["event"],a.sockets,t.delimiter),e(o.asTree(a))},0)}),n}}},r.EventsCreator=function(e){return{events:new e({wildcard:!0})}},r.CreateSwagger=function(e){var r=e._useHttp,t=e._Instance,n=e.stringify,a=e.mainDescribe,i=(e._describe,e.pathDescribe),o=e.schemas,s=e.fs;return{swagger:function(e){var u="";r.useSwagger=!0;var c=r._routersObject,l=r._describe;u+=n(a(l));var p=Object.keys(c),f={paths:{}},d=[],h=!0,m=!1,v=void 0;try{for(var b,g=p[Symbol.iterator]();!(h=(b=g.next()).done);h=!0){var y=c[b.value],k=function(e){var r=Object.keys(y[e]),t=function(r){var t=y.base+r,n=y[e][r].getObjProps().describe;console.log(y[e][r].getObjProps());var a=n.incoming.filter(function(e){return"body"===e.in});a.length>0&&a.map(function(r){var n={},a=t.replace(/\//g,"").replace(/-/,"").replace(/[:]/g,"")+"-body-"+e;n.name=a,n.schema=Object.assign({},r.schema),d.push(n)}),n.outgoing.map(function(r){var n={},a=t.replace(/\//g,"").replace(/-/,"").replace(/[{:}]/g,"")+"-"+r.status+"-"+e;n.name=a,n.schema=Object.assign({},r.schema),d.push(n)});var o=Object.assign({},n,{method:e,path:t});Object.assign(f.paths,i(o))},n=!0,a=!1,o=void 0;try{for(var s,u=r[Symbol.iterator]();!(n=(s=u.next()).done);n=!0)t(s.value)}catch(e){a=!0,o=e}finally{try{!n&&u.return&&u.return()}finally{if(a)throw o}}},j=!0,x=!1,O=void 0;try{for(var _,w=["get","post","put","del"][Symbol.iterator]();!(j=(_=w.next()).done);j=!0)k(_.value)}catch(e){x=!0,O=e}finally{try{!j&&w.return&&w.return()}finally{if(x)throw O}}u+=n(f),u+=n(o(d)),e&&e.absoluteFilePath&&(console.log("writing swagger to "+e.absoluteFilePath),s.writeFileSync(e.absoluteFilePath,u,"utf8"))}}catch(e){m=!0,v=e}finally{try{!h&&g.return&&g.return()}finally{if(m)throw v}}return t}}},r.CreateObjectArray=function(e){var r=e.name,t=e.arr,n=e.chainLink;return a({},r,function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5e3,a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return t.push({fn:e,timeout:r,throwError:a}),n})}},function(e,r,t){"use strict";function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}Object.defineProperty(r,"__esModule",{value:!0});var a=function(e){return"/"===e[e.length-1]&&e.length>1?e.slice(0,e.length-1):e};r.urlUtil=function(e,r){var t=e.split("/"),n=r.toLowerCase();"delete"===n&&(n="del");var i=t.slice(1).map(function(e){return"/"+e});return i.unshift("/"),{method:n,splitRest:i=a(i)}},r.populateRoutersUtil=function e(r,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a={};t.map(function(t){var i=t.getObjProps();if(a[n?(""+n+i.base).replace("//","/"):i.base]=i,i.subRouters.length>0)return e(r,i.subRouters,n?n+=i.base:i.base)}),Object.assign(r,a)},r.populateUrlOptions=function(e){var r="";return e.map(function(e){return r=(r+=e).replace("//","/")})},r.handleNestedRoutersUtil=function(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=void 0,a=null,i=null,o=!0,s=!1,u=void 0;try{for(var c,l=e[Symbol.iterator]();!(o=(c=l.next()).done);o=!0){var p=c.value;r[p]&&(i=p,t.push(r[p].middleWareArr))}}catch(e){s=!0,u=e}finally{try{!o&&l.return&&l.return()}finally{if(s)throw u}}var f=e.indexOf(i);return(n=i)?(a=f===e.length-1?"/":(a=e[e.length-1]).substr(n.length),"/"===n&&(a="/"+a),a=a.replace("//","/")):(n="/",a="/"),{baseOfRequest:n,rest:a,combinedRoutersMids:t=t.reduce(function(e,r){return e.concat(r)},[])}},r.populateSubAppsUtil=function e(r,t,n){n.map(function(n){var a=n.getObjProps(),i=a._middleWares,o=a._routersObject;Object.assign(t,o),r.push(i);var s=a._subApps;if(s.length>0)return e(r,t,s)})},r.checkBaseUtil=a,r.populateObjectWithTreeUtil=function(e,r,t,a){var i=Object.keys(e),o=!0,s=!1,u=void 0;try{for(var c,l=i[Symbol.iterator]();!(o=(c=l.next()).done);o=!0){var p=c.value,f={},d=!0,h=!1,m=void 0;try{for(var v,b=r[Symbol.iterator]();!(d=(v=b.next()).done);d=!0){var g=v.value,y=Object.keys(e[p][g]);if(y.length>0){var k=a||g.toUpperCase(),j={},x=!0,O=!1,_=void 0;try{for(var w,S=y[Symbol.iterator]();!(x=(w=S.next()).done);x=!0){j[w.value]="";var P=n({},""+[k],j);Object.assign(f,P),t[p]=f}}catch(e){O=!0,_=e}finally{try{!x&&S.return&&S.return()}finally{if(O)throw _}}}}}catch(e){h=!0,m=e}finally{try{!d&&b.return&&b.return()}finally{if(h)throw m}}}}catch(e){s=!0,u=e}finally{try{!o&&l.return&&l.return()}finally{if(s)throw u}}},r.populateQueryUtil=function(e,r){if(r.includes("?")){r.substring(r.indexOf("?")+1).split("&").map(function(r){var t=r.split("=");e.query[t[0]]=t[1]});var t=r.substring(0,r.indexOf("?"));return a(t)}},r.populateParamsUtil=function(e,r,t,n,i){try{var o=void 0,s=!1;if("/"===i)return{canSkipBecauseParams:s,param:o};var u=Object.keys(r[t][n]),c=!0,l=!1,p=void 0;try{for(var f,d=u[Symbol.iterator]();!(c=(f=d.next()).done);c=!0){var h=f.value,m=h.split("/"),v=a(i).split("/");if(m.length===v.length){for(var b=m.length,g=0,y=0,k=m.length;y<k;y++)m[y].includes(":")?g+=1:m[y]===v[y]&&(g+=1);if(g===b){for(var j=0,x=m.length;j<x;j++)m[j].includes(":")&&(e.params[m[j].replace(":","")]=v[j],s=!0);o=h}}}}catch(e){l=!0,p=e}finally{try{!c&&d.return&&d.return()}finally{if(l)throw p}}return{param:o,canSkipBecauseParams:s}}catch(e){return{param:null,canSkipBecauseParams:!1}}},r.populateSocketRoutersUtil=function e(r,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=arguments[3],i={};t.map(function(t){var o=t.getObjProps();if(i[n?""+n+a+o.base:o.base]=o,o.subRouters.length>0)return e(r,o.subRouters,n?n+=":"+o.base:o.base,a)}),Object.assign(r,i)},r.checkSubRouters=function e(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if((r=r.getObjProps?r.getObjProps():r).middleWareArr.length>0&&t.push(r.middleWareArr),r.subRouters.length>0)return r.subRouters.map(function(r){return e(r,t)})},r.getIntrospectSchema=function(e){var r,t,n=e.HttpLink,a=e.SubscriptionClient,i=e.fetch,o=e.ws,s=e.getMainDefinition,u=e.split,c=e.introspectSchema,l=e.makeRemoteExecutableSchema;return r=regeneratorRuntime.mark(function e(r){var t,p,f,d,h;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=new n({uri:r.url,fetch:i}),p=new a(r.ws,{reconnect:!0},o),f=u(function(e){var r=e.query,t=s(r),n=t.kind,a=t.operation;return"OperationDefinition"===n&&"subscription"===a},p,t),e.next=5,c(t);case 5:return d=e.sent,h=l({schema:d,link:f}),e.abrupt("return",h);case 8:case"end":return e.stop()}},e,void 0)}),t=function(){var e=r.apply(this,arguments);return new Promise(function(r,t){return function n(a,i){try{var o=e[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});r(s)}("next")})},function(e){return t.apply(this,arguments)}},r.assign=function(e,r,t){for(var n=r.length-1,a=0;a<n;++a){var i=r[a];i in e||(e[i]={}),e=e[i]}e[r[n]]=t}},function(e,r){e.exports=require("graphql")},function(e,r){e.exports=require("http")},function(e,r){e.exports=require("superstruct")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a;r.resolveGraphqlOptions=(n=regeneratorRuntime.mark(function e(r){var t,n,a,o=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof r){e.next=13;break}for(e.prev=1,t=o.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=o[a];return e.next=5,r.apply(void 0,i(n));case 5:return e.abrupt("return",e.sent);case 8:throw e.prev=8,e.t0=e.catch(1),new Error("Invalid options provided to ApolloServer: "+e.t0.message);case 11:e.next=14;break;case 13:return e.abrupt("return",r);case 14:case"end":return e.stop()}},e,this,[[1,8]])}),a=function(){var e=n.apply(this,arguments);return new Promise(function(r,t){return function n(a,i){try{var o=e[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});r(s)}("next")})},function(e){return a.apply(this,arguments)});function i(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r<e.length;r++)t[r]=e[r];return t}return Array.from(e)}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.QueryOptions=r.LogMessage=r.LogStep=r.LogAction=r.GraphQLResponse=void 0,r.LogFunction=c,r.runQuery=function(e){return Promise.resolve().then(function(){return function(e){var r=void 0,t=e.logFunction||function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return r},c=void 0!==e.debug&&e.debug;t({action:s.request,step:u.start});var f=e.context||{},d=[];e.tracing&&d.push(i.TracingExtension);!0===e.cacheControl?d.push(o.CacheControlExtension):e.cacheControl&&d.push(new o.CacheControlExtension(e.cacheControl));var h=d.length>0&&new a.GraphQLExtensionStack(d);h&&(f._extensionStack=h,(0,a.enableGraphQLExtensions)(e.schema),h.requestDidStart());var m="string"==typeof e.query?e.query:(0,n.print)(e.query);if(t({action:s.request,step:u.status,key:"query",data:m}),t({action:s.request,step:u.status,key:"variables",data:e.variables}),t({action:s.request,step:u.status,key:"operationName",data:e.operationName}),"string"==typeof e.query)try{t({action:s.parse,step:u.start}),r=(0,n.parse)(e.query),t({action:s.parse,step:u.end})}catch(r){return t({action:s.parse,step:u.end}),Promise.resolve({errors:p([r],e.formatError)})}else{r=e.query;var v=n.specifiedRules;e.validationRules&&(v=v.concat(e.validationRules)),t({action:s.validation,step:u.start});var b=(0,n.validate)(e.schema,r,v);if(t({action:s.validation,step:u.end}),b.length)return Promise.resolve({errors:p(b,e.formatError)});h&&h.executionDidStart()}try{return t({action:s.execute,step:u.start}),Promise.resolve((0,n.execute)(e.schema,r,e.rootValue,f,e.variables,e.operationName,e.fieldResolver)).then(function(r){t({action:s.execute,step:u.end}),t({action:s.request,step:u.end});var n={data:r.data};return r.errors&&(n.errors=p(r.errors,e.formatError),c&&r.errors.map(l)),h&&(h.executionDidEnd(),h.requestDidEnd(),n.extensions=h.format()),e.formatResponse&&(n=e.formatResponse(n,e)),n})}catch(r){return t({action:s.execute,step:u.end}),t({action:s.request,step:u.end}),Promise.resolve({errors:p([r],e.formatError)})}}(e)})};var n=t(2),a=t(33),i=t(32),o=t(31),s=(r.GraphQLResponse={data:{},errors:[],extensions:{}},r.LogAction={request:"",parse:"",validation:"",execute:""}),u=r.LogStep={start:"",end:"",status:""};r.LogMessage={action:s,step:u,key:"",data:{}};function c(e){}r.QueryOptions={schema:{},query:"",rootValue:{},context:{},variables:{},operationName:"",logFunction:c,validationRules:[],fieldResolver:{},formatError:Function,formatResponse:Function,debug:!1,tracing:!1,cacheControl:!1};function l(e){console.error(e.stack)}function p(e,r){return e.map(function(e){if(void 0===r)return(0,n.formatError)(e);try{return r(e)}catch(e){console.error("Error in formatError function:",e);var t=new Error("Internal server error");return(0,n.formatError)(t)}})}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.defaultFieldResolver=r.SchemaDirectiveVisitor=r.StructError=r.superstruct=r.struct=r.response=r.request=void 0;var n=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e};t(51);var a=z(t(50)),i=z(t(49)),o=z(t(48)),s=z(t(47)),u=z(t(46)),c=z(t(45)),l=z(t(44)),p=t(42),f=z(p),d=z(t(41)),h=z(t(40)),m=z(t(39)),v=z(t(38)),b=z(t(37)),g=t(2),y=t(36),k=t(28),j=z(t(27)),x=t(1),O=V(x),_=z(t(26)),w=t(25),S=t(24),P=t(23),q=t(22),R=z(t(21)),E=t(20),A=t(19),L=V(t(0)),M=z(t(18)),H=t(17),C=z(t(16)),Q=z(t(3)),G=z(t(15)),D=z(t(14)),F=t(4),T=z(t(13)),N=z(t(12)),U=t(11),I=z(t(10)),B=z(t(9)),W=z(t(8));function V(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r}function z(e){return e&&e.__esModule?e:{default:e}}var J={RouterCreator:i.default,PathCreator:o.default,defaultHandler:s.default,CreateHandler:u.default,request:c.default,response:l.default,midHandler:f.default,pathDescribe:H.pathDescribe,mainDescribe:H.mainDescribe,schemas:H.schemas},Y={GraphQlCreator:v.default,graphqlExpress:y.graphqlExpress,graphiqlExpress:y.graphiqlExpress,graphqlHandler:b.default,SubscriptionServer:P.SubscriptionServer,execute:g.execute,subscribe:g.subscribe,PubSub:q.PubSub,mergeSchemas:k.mergeSchemas,makeRemoteExecutableSchema:k.makeRemoteExecutableSchema,getIntrospectSchema:x.getIntrospectSchema,fetch:R.default,introspectSchema:k.introspectSchema,createHttpLink:A.createHttpLink,HttpLink:A.HttpLink,SubscriptionClient:P.SubscriptionClient,ws:_.default,getMainDefinition:S.getMainDefinition,split:w.split,SchemaDirectiveVisitor:k.SchemaDirectiveVisitor,GraphQLScalarType:g.GraphQLScalarType,GraphQLNonNull:g.GraphQLNonNull,defaultFieldResolver:g.defaultFieldResolver,GraphQLString:g.GraphQLString,withFilter:q.withFilter,createDirective:E.createDirective,DataLoader:j.default},$={SocketListenerCreator:h.default,SocketRouterCreator:d.default,socketMiddlewareHandler:p.socketMiddlewareHandler,socketHandler:m.default},K={struct:F.struct,superstruct:F.superstruct,StructError:F.StructError},X={bodyParser:C.default,http:Q.default,io:W.default,makeExecutableSchema:k.makeExecutableSchema,fs:G.default,treeify:D.default,EventEmitter:T.default,Promise:N.default,stringify:U.stringify,print:I.default,os:B.default,packgeJson:a.default,RegisterRouters:M.default},Z=n({},O,L,J,Y,$,X,{superStructObject:K});r.default=function(){return Object.assign({},function(e){var r={_version:e.packgeJson.version,_Instance:{},_injected:{},_options:{},_loggerEntity:{sockets:{},http:{}}},t={useSockets:!1,delimiter:":",_socketRoutersObject:{},_socketMiddlewares:[],_socketSubApps:[]},a={useGraphql:!1,_graphqlInterfaces:[],_graphqlUnions:[],graphqlRoute:"/graphql",graphiqlRoute:"/graphiql",_graphQlRemoteEndpoints:[],_graphQlExecutableSchema:null,_graphQlSchemas:{},_graphQlDirectives:[],_graphQlEnums:[],subscriptionsEndpoint:"/subscriptions",useGraphiql:!0,logger:{log:function(e){return console.log("Error from graphql: ",e)}},directiveResolvers:{},tracing:!0,cacheControl:{defaultMaxAge:5}},s={useSwagger:!1,_middleWares:[],_routersObject:{},_describe:{},_subApps:[]},c={_useSockets:t,_useGraphql:a,_useHttp:s},l=u.default.bind(void 0,n({},e,{_useHttp:s})),p=r._Instance,f=r._options,m=r._injected,b=r._loggerEntity,g=r._version;return Object.assign(p,e.CreateNewObjOf({name:"GraphQlSchema",obj:v.default}),e.CreateNewObjOf({name:"SocketRouter",obj:d.default,dependencies:n({},e)}),e.CreateNewObjOf({name:"SocketListener",obj:h.default,dependencies:n({},e)}),e.CreateNewObjOf({name:"Router",obj:i.default,dependencies:n({},e)}),e.CreateNewObjOf({name:"Path",obj:o.default,dependencies:n({},e)}),e.AssignHandler({name:"sockets",obj:t,chainLink:p,override:!0}),e.AssignHandler({name:"graphql",obj:a,chainLink:p,override:!0}),e.AssignHandler({name:"describe",obj:s._describe,chainLink:p,override:!0}),e.AssignHandler({name:"options",obj:f,chainLink:p,override:!0}),e.AssignHandler({name:"inject",obj:m,chainLink:p,override:!0}),e.CreateObjectArray({name:"middleware",arr:s._middleWares,chainLink:p}),e.CreateObjectArray({name:"socketMiddleware",arr:t._socketMiddlewares,chainLink:p}),e.CreateArray({name:"subApp",arr:s._subApps,chainLink:p}),e.CreateArray({name:"enum",arr:a._graphQlEnums,chainLink:p}),e.CreateArray({name:"interface",arr:a._graphqlInterfaces,chainLink:p}),e.CreateArray({name:"union",arr:a._graphqlUnions,chainLink:p}),e.CreateArray({name:"directive",arr:a._graphQlDirectives,chainLink:p}),e.CreateSwagger(n({},c,e,{_Instance:p})),e.PrettyPrint(n({},c,e,{_Instance:p,_loggerEntity:b})),e.RegisterRouters(n({},c,e,{_Instance:p})),e.EventsCreator(e.EventEmitter),e.GetObjProps(c),e.Listen(n({_createHandler:l},c,e,{_Instance:p,_version:g,_injected:m})))}(Z))},r.request=c.default,r.response=l.default,r.struct=F.struct,r.superstruct=F.superstruct,r.StructError=F.StructError,r.SchemaDirectiveVisitor=k.SchemaDirectiveVisitor,r.defaultFieldResolver=g.defaultFieldResolver},function(e,r){e.exports=require("socket.io")},function(e,r){e.exports=require("os")},function(e,r){e.exports=require("print-message")},function(e,r){e.exports=require("json-to-pretty-yaml")},function(e,r){e.exports=require("bluebird")},function(e,r){e.exports=require("eventemitter2")},function(e,r){e.exports=require("treeify")},function(e,r){e.exports=require("fs")},function(e,r){e.exports=require("body-parser")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.mainDescribe=r.schemas=r.pathDescribe=void 0;var n=t(4),a=t(1);function i(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}var o=(0,n.struct)({name:"string?",email:"string?",url:"string?"}),s=(0,n.struct)({name:"string?",url:"string?"}),u=(0,n.struct)({url:"string?",description:"string?"}),c=(0,n.struct)({title:"string",version:"string",description:"string?",termsOfService:"string?",contact:o,license:s}),l=(0,n.struct)({openapi:"string",security:"array?",info:c,servers:[u]}),p=(0,n.struct)({tags:["string"],description:"string",parameters:"array?",requestBody:"object?",summary:"string?",responses:"object?"}),f=function(e,r){return(0,n.struct)(i({},e,function(e){return(0,n.struct)(i({},"del"===e?"delete":e,p))}(r)))},d=function e(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.schema&&r.schema.schema||r.schema,i=Object.keys(n),o=!0,s=!1,u=void 0;try{for(var c,l=i[Symbol.iterator]();!(o=(c=l.next()).done);o=!0){var p=c.value;if(n[p].kind&&"object"===n[p].kind){var f=e(n[p],{});(0,a.assign)(t,[p,"type"],"object"),(0,a.assign)(t,[p,"properties"],f)}else if(n[p].kind&&"list"===n[p].kind){(0,a.assign)(t,[p,"type"],"array");var d=n[p].type.replace(/\[|\]/g,"");(0,a.assign)(t,[p,"items","type"],d.replace("?",""))}else if(n[p].kind&&"enum"===n[p].kind)(0,a.assign)(t,[p,"type"],"string"),(0,a.assign)(t,[p,"enum"],n[p].type.split("|").map(function(e){return e.replace(/\"/g,"").replace(/\s/g,"")}));else if(n[p].kind&&"scalar"===n[p].kind)(0,a.assign)(t,[p],n[p].type);else if(n[p].kind&&"dict"===n[p].kind){(0,a.assign)(t,[p,"type"],"object");var h=n[p].type.replace(/dict\<|\>/g,"");(0,a.assign)(t,[p,"type"],h.substring(h.indexOf(",")+1))}else if(n[p].kind&&"function"===n[p].kind);else if(n[p].kind&&"instance"===n[p].kind);else if(n[p].kind&&"interface"===n[p].kind);else if(n[p].kind&&"intersection"===n[p].kind){var m=n[p].type.split("&").map(function(e){return e.replace(/\s/g,"")}).map(function(e){return"type: "+e});(0,a.assign)(t,[p,"allOf"],m)}else if(n[p].kind&&"literal"===n[p].kind);else if(n[p].kind&&"lazy"===n[p].kind);else if(n[p].kind&&"tuple"===n[p].kind);else if(n[p].kind&&"union"===n[p].kind){var v=n[p].type.split("|").map(function(e){return e.replace(/\s/g,"")}).map(function(e){return"type: "+e});(0,a.assign)(t,[p,"anyOf"],v)}else(0,a.assign)(t,[p,"type"],n[p].replace("?","")),"array"===n[p]&&(0,a.assign)(t,[p,"items","type"],"object")}}catch(e){s=!0,u=e}finally{try{!o&&l.return&&l.return()}finally{if(s)throw u}}return t};r.pathDescribe=function(e){var r=e.path,t=e.method,n=e.tags,a=e.description,o=e.summary,s=e.incoming,u=(e.requestBody,e.outgoing),c=r.replace(/(:.+?)([\/]|$)/g,function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return r[0].replace(r[1],"{"+r[1].replace(":","")+"}")}),l=s.filter(function(e){return"body"===e.in}),p=s.filter(function(e){return["path","query"].includes(e.in)}),h=f(c,t),m=p.map(function(e){var r=[],t=d(e,{}),n=Object.keys(t),a=!0,i=!1,o=void 0;try{for(var s,u=n[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var c=s.value,l={};l.name=c,l.in=e.in,l.required=!t[c].type.includes("?"),l.schema={},l.schema.type=t[c].type.replace("?",""),r.push(l)}}catch(e){i=!0,o=e}finally{try{!a&&u.return&&u.return()}finally{if(i)throw o}}return r}).reduce(function(e,r){return e.concat(r)},[]);return h(i({},c,i({},"del"===t?"delete":t,{tags:n,description:a,summary:o,requestBody:function(e,r,t){if(e)return{content:i({},e.contentType||"application/json",{schema:{$ref:"#/components/schemas/"+r.replace(/\//g,"").replace(/-/,"").replace(/[{|}]/g,"")+"-body-"+t}})}}(l[0],c,t),parameters:m.length>0?m:void 0,responses:function(e,r,t){var n={},a=!0,o=!1,s=void 0;try{for(var u,c=e[Symbol.iterator]();!(a=(u=c.next()).done);a=!0){var l=u.value;n[l.status]={description:""+l.status,content:i({},l.contentType||"application/json",{schema:{$ref:"#/components/schemas/"+r.replace(/\//g,"").replace(/-/,"").replace(/[{|}]/g,"")+"-"+l.status+"-"+t}})}}}catch(e){o=!0,s=e}finally{try{!a&&c.return&&c.return()}finally{if(o)throw s}}return n}(u,c,t)})))},r.schemas=function(e,r){var t={},n=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var u=o.value,c=d(u);t[u.name]=c[Object.keys(c)[0]]}}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return{components:{securitySchemes:r,schemas:t}}},r.mainDescribe=function(e){var r=e.title,t=e.version,n=e.description,a=e.termsOfService,i=e.contact,o=e.license,s=e.servers,u=e.security;return l({openapi:"3.0.0",security:u,info:{title:r,version:t,description:n,termsOfService:a,contact:i,license:o},servers:s})}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});r.default=function(e){var r=e._useGraphql,t=e._useHttp,n=(e._injected,e._useSockets),a=e._Instance,i=e.populateSubAppsUtil,o=e.populateRoutersUtil,s=e.populateSocketRoutersUtil;return{registerRouters:function(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];var s=t._middleWares,u=t._routersObject,c=t._subApps;return i(s,u,c),o(u,r),a},registerSocketRouters:function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];var i=n._socketRoutersObject,o=n.delimiter;return s(i,r,null,o),a},registerGraphQlSchemas:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];if(r._graphQlRemoteEndpoints.length>0)throw new Error("you may only registerGraphQlSchemas or registerRemoteGraphQlSchemas, not either");var i=t.map(function(e){return"function"==typeof e?e(a):e});return Object.assign(r._graphQlSchemas,{schemas:i}),a},registerRemoteGraphQlSchemas:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];if(Object.keys(r._graphQlSchemas).length>0)throw new Error("you may only registerGraphQlSchemas or registerRemoteGraphQlSchemas, not either");return r._graphQlRemoteEndpoints=t,a}}}},function(e,r){e.exports=require("apollo-link-http")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(r,t,n){return t&&e(r.prototype,t),n&&e(r,n),r}}();r.createDirective=function(e,r){return function(t){return function(a){function i(){return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,i),function(e,r){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?e:r}(this,(i.__proto__||Object.getPrototypeOf(i)).apply(this,arguments))}return function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r)}(i,e),n(i,[{key:"visitArgumentDefinition",value:function(e,r){this.handler(r.field,this.args)}},{key:"visitFieldDefinition",value:function(e){this.handler(e,this.args)}},{key:"visitEnum",value:function(e){this.handler(e,this.args)}},{key:"visitObject",value:function(e){var r=e.getFields(),t=Object.keys(r),n=!0,a=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var u=o.value;this.handler(r[u],this.args)}}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}}},{key:"visitInputObject",value:function(e){var r=e.getFields(),t=Object.keys(r),n=!0,a=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var u=o.value;this.handler(r[u],this.args)}}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}}},{key:"visitEnumValue",value:function(e){this.handler(e,this.args)}},{key:"visitInputFieldDefinition",value:function(e){this.handler(e,this.args)}},{key:"handler",value:function(e,n){var a,i=e.resolve,o=void 0===i?r:i;e.resolve=(a=function(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){return function n(a,i){try{var o=r[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});e(s)}("next")})}}(regeneratorRuntime.mark(function e(r,a,i,s){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t({directiveArgs:n,resolve:o,source:r,args:a,context:i,info:s}));case 1:case"end":return e.stop()}},e,this)})),function(e,r,t,n){return a.apply(this,arguments)})}}]),i}()}}},function(e,r){e.exports=require("node-fetch")},function(e,r){e.exports=require("graphql-subscriptions")},function(e,r){e.exports=require("subscriptions-transport-ws")},function(e,r){e.exports=require("apollo-utilities")},function(e,r){e.exports=require("apollo-client-preset")},function(e,r){e.exports=require("ws")},function(e,r){e.exports=require("dataloader")},function(e,r){e.exports=require("graphql-tools")},function(e,r){e.exports=require("apollo-server-module-graphiql")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.runHttpQuery=r.HttpQueryError=void 0;r.runHttpQuery=(n=regeneratorRuntime.mark(function e(r,t){var n,a,i,f,d,h,m,v;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=!1,a=void 0,e.prev=2,e.next=5,u.resolveGraphqlOptions.apply(void 0,[t.options].concat(c(r)));case 5:a=e.sent,e.next=11;break;case 8:throw e.prev=8,e.t0=e.catch(2),new l(500,e.t0.message);case 11:i=a.formatError||o.formatError,f=void 0,e.t1=t.method,e.next="POST"===e.t1?16:"GET"===e.t1?20:25;break;case 16:if(t.query&&0!==Object.keys(t.query).length){e.next=18;break}throw new l(500,"POST body missing. Did you forget use body-parser middleware?");case 18:return f=t.query,e.abrupt("break",26);case 20:if(t.query&&0!==Object.keys(t.query).length){e.next=22;break}throw new l(400,"GET query missing.");case 22:return n=!0,f=t.query,e.abrupt("break",26);case 25:throw new l(405,"Apollo Server supports only GET/POST requests.",!1,{Allow:"GET, POST"});case 26:return d=!0,Array.isArray(f)||(d=!1,f=[f]),h=f.map(function(e){try{var r=e.query,t=e.extensions;if(n&&t)try{t=JSON.parse(t)}catch(e){throw new l(400,"Extensions are invalid JSON.")}if(void 0===r&&t&&t.persistedQuery)throw new l(200,JSON.stringify({errors:[{message:"PersistedQueryNotSupported"}]}),!0,{"Content-Type":"application/json"});if(n){if("string"==typeof r)r=(0,o.parse)(r);else if(!r)throw new l(400,"Must provide query string.");if(!p(r,e.operationName))throw new l(405,"GET supports only query operation",!1,{Allow:"POST"})}var u=e.operationName,c=e.variables;if("string"==typeof c)try{c=JSON.parse(c)}catch(e){throw new l(400,"Variables are invalid JSON.")}var f=a.context||{};"function"==typeof f?f=f():d&&(f=Object.assign(Object.create(Object.getPrototypeOf(f)),f));var h={schema:a.schema,query:r,variables:c,context:f,rootValue:a.rootValue,operationName:u,logFunction:a.logFunction,validationRules:a.validationRules,formatError:i,formatResponse:a.formatResponse,fieldResolver:a.fieldResolver,debug:a.debug,tracing:a.tracing,cacheControl:a.cacheControl};return a.formatParams&&(h=a.formatParams(h)),(0,s.runQuery)(h)}catch(e){return"HttpQueryError"===e.name?Promise.reject(e):Promise.resolve({errors:[i(e)]})}}),e.next=31,Promise.all(h);case 31:if(m=e.sent,d){e.next=37;break}if(!(v=m[0]).errors||void 0!==v.data){e.next=36;break}throw new l(400,JSON.stringify(v),!0,{"Content-Type":"application/json"});case 36:return e.abrupt("return",JSON.stringify(v));case 37:return e.abrupt("return",JSON.stringify(m));case 38:case"end":return e.stop()}},e,this,[[2,8]])}),a=function(){var e=n.apply(this,arguments);return new Promise(function(r,t){return function n(a,i){try{var o=e[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});r(s)}("next")})},function(e,r){return a.apply(this,arguments)});var n,a,i,o=t(2),s=t(6),u=t(5);(i=u)&&i.__esModule;function c(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r<e.length;r++)t[r]=e[r];return t}return Array.from(e)}var l=r.HttpQueryError=function(e){function r(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=arguments[3];!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,r);var i=function(e,r){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?e:r}(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,t));return i.name="HttpQueryError",i.statusCode=e,i.isGraphQLError=n,i.headers=a,i}return function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r)}(r,Error),r}();function p(e,r){return"query"===(0,o.getOperationAST)(e,r).operation}},function(e,r){e.exports=require("apollo-cache-control")},function(e,r){e.exports=require("apollo-tracing")},function(e,r){e.exports=require("graphql-extensions")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=t(6);Object.defineProperty(r,"runQuery",{enumerable:!0,get:function(){return n.runQuery}}),Object.defineProperty(r,"LogFunction",{enumerable:!0,get:function(){return n.LogFunction}}),Object.defineProperty(r,"LogMessage",{enumerable:!0,get:function(){return n.LogMessage}}),Object.defineProperty(r,"LogStep",{enumerable:!0,get:function(){return n.LogStep}}),Object.defineProperty(r,"LogAction",{enumerable:!0,get:function(){return n.LogAction}});var a=t(30);Object.defineProperty(r,"runHttpQuery",{enumerable:!0,get:function(){return a.runHttpQuery}}),Object.defineProperty(r,"HttpQueryError",{enumerable:!0,get:function(){return a.HttpQueryError}});var i=t(5);Object.defineProperty(r,"resolveGraphqlOptions",{enumerable:!0,get:function(){return i.resolveGraphqlOptions}})},function(e,r){e.exports=require("url")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.graphqlExpress=function(e){if(!e)throw new Error("Apollo Server requires options.");if(arguments.length>1)throw new Error("Apollo Server expects exactly one argument, got "+arguments.length);return function(r,t){(0,a.runHttpQuery)([r,t],{method:r.method,options:e,query:"POST"===r.method?r.body:r.query}).then(function(e){t.setHeader("Content-Type","application/json"),t.setHeader("Content-Length",Buffer.byteLength(e,"utf8").toString()),t.write(e),t.end()},function(e){e.headers&&Object.keys(e.headers).forEach(function(r){t.setHeader(r,e.headers[r])}),t.statusCode=e.statusCode||500,t.write(e.message),t.end()})}},r.graphiqlExpress=function(e){return function(r,t){var a=r.url&&n.parse(r.url,!0).query;i.resolveGraphiQLString(a,e,r).then(function(e){t.setHeader("Content-Type","text/html"),t.write(e),t.end()},function(e){throw e})}};var n=o(t(35)),a=t(34),i=o(t(29));function o(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r}},function(e,r,t){"use strict";function n(e,r){var t={};for(var n in e)r.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}function a(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){return function n(a,i){try{var o=r[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});e(s)}("next")})}}Object.defineProperty(r,"__esModule",{value:!0}),r.default=function(){var e=a(regeneratorRuntime.mark(function e(r){var t,i,o,s,u,c,l,p,f,d,h,m,v,b,g,y,k,j,x,O,_,w,S,P=this,q=r.server,R=r.args,E=r._useGraphql,A=(r._internal,r.PubSub),L=r.makeExecutableSchema,M=r.getIntrospectSchema,H=(r.createHttpLink,r.HttpLink),C=r.fetch,Q=r.introspectSchema,G=r.makeRemoteExecutableSchema,D=r.mergeSchemas,F=r.bodyParser,T=r.graphiqlExpress,N=r.graphqlExpress,U=r.SubscriptionServer,I=r.SubscriptionClient,B=r.ws,W=r.getMainDefinition,V=r.split,z=r.os,J=r.print,Y=r.execute,$=r.subscribe,K=r.Promise,X=r._injected,Z=r._Instance,ee=r._version,re=r.SchemaDirectiveVisitor,te=(r.GraphQLScalarType,r.GraphQLNonNull,r.defaultFieldResolver),ne=(r.GraphQLString,r.withFilter),ae=r.createDirective,ie=r.DataLoader;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=null,i=E._graphqlInterfaces,o=E._graphqlUnions,s=E._graphQlEnums,u=E._graphQlSchemas.schemas,c=E.pubsub||new A,l={schema:t,logger:E.logger,context:Object.assign({},X,{pubsub:c}),tracing:E.tracing,cacheControl:E.cacheControl,directiveResolvers:E.directiveResolvers},0!==E._graphQlRemoteEndpoints.length){e.next=11;break}E._graphQlExecutableSchema?t=E._graphQlExecutableSchema:(p="",f="",d="type Query{\n",h="type Mutation{\n",m="type Subscription{\n",v="",b="",g={Query:{},Mutation:{},Subscription:{}},s.map(function(e){b+="enum "+e.name+"{\n"+e.options.map(function(e){return"\t"+e+"\n"}).join("")+"}\n"}),o.map(function(e){var r=e.types.reduce(function(r,t){return e.types.length-1===e.types.indexOf(t)?r+t:r+(t+" | ")},"");f+="union "+e.name+" = "+r+"\n"}),i.map(function(e){var r=Array.isArray(e.fields),t=r?e.fields:Object.keys(e.fields),n=r?function(e){return"\t"+e+"\n"}:function(r){return"\t"+r+":"+e.fields[r]+"\n"};p+="interface "+e.name+"{\n"+t.map(n).join("")+"}\n"}),u.map(function(e){var r,t,a,i=e.getObjProps(),o=!0,s=!1,u=void 0;try{for(var p,f=i.dataLoader[Symbol.iterator]();!(o=(p=f.next()).done);o=!0){var b=p.value,y=b.fn(l.context);if(!y)throw new Error("Did not find function on injected, make sure to add it to app.inject");Object.assign(l.context,(r={},t=b.name,a=new ie(y),t in r?Object.defineProperty(r,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[t]=a,r))}}catch(e){s=!0,u=e}finally{try{!o&&f.return&&f.return()}finally{if(s)throw u}}if(i.query.length>0&&(d+=""+i.query.map(function(e){return"\t"+e+"\n"}).join("")),i.mutation.length>0&&(h+=""+i.mutation.map(function(e){return"\t"+e+"\n"}).join("")),i.subscription.length>0&&(m+=""+i.subscription.map(function(e){return"\t"+e+"\n"}).join("")),i.type&&(v+=i.type+"\n"),i.resolver){var k=i.resolver,j=k.Query,x=k.Mutation,O=k.Subscription,_=n(k,["Query","Mutation","Subscription"]);j&&Object.assign(g.Query,"function"==typeof j?j(c,ne):j),x&&Object.assign(g.Mutation,"function"==typeof x?x(c,ne):x),O&&Object.assign(g.Subscription,"function"==typeof O?O(c,ne):O),Object.assign(g,_)}}),0===Object.keys(g.Query).length&&delete g.Query,0===Object.keys(g.Mutation).length&&delete g.Mutation,0===Object.keys(g.Subscription).length&&delete g.Subscription,d+="}",h+="}",m+="}",y="",""!==b&&(y+=b+"\n"),""!==p&&(y+=p+"\n"),""!==v&&(y+=v+"\n"),""!==f&&(y+=f+"\n"),"type Query{\n}"!==d&&(y+=d+"\n"),"type Mutation{\n}"!==h&&(y+=h+"\n"),"type Subscription{\n}"!==m&&(y+=m+"\n"),l.rootValue=g,t=L({typeDefs:y,resolvers:g}),E._graphQlExecutableSchema=t),e.next=23;break;case 11:if(k=M({HttpLink:H,fetch:C,SubscriptionClient:I,ws:B,getMainDefinition:W,split:V,introspectSchema:Q,makeRemoteExecutableSchema:G}),!E.allowPartialRemoteSchema){e.next=18;break}return e.next=15,K.map(E._graphQlRemoteEndpoints,function(){var e=a(regeneratorRuntime.mark(function e(r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,k(r);case 3:return e.abrupt("return",e.sent);case 6:e.prev=6,e.t0=e.catch(0),E.logger.log(e.t0);case 9:case"end":return e.stop()}},e,P,[[0,6]])}));return function(r){return e.apply(this,arguments)}}()).filter(function(e){return void 0!==e});case 15:t=e.sent,e.next=21;break;case 18:return e.next=20,K.all(E._graphQlRemoteEndpoints.map(function(e){return k(e)}));case 20:t=e.sent;case 21:t=D({schemas:t}),E._graphQlExecutableSchema=t;case 23:if(j=ae(re,te),x=E._graphQlDirectives.reduce(function(e,r){return e[r.name]=j(r.fn),e},{}),re.visitSchemaDirectives(t,Object.assign({},x,E.directiveResolvers)),O=Z.createRouter("/").middleware(F.json()),E.useGraphiql&&(_=Z.createPath(E.graphiqlRoute).handler(T({endpointURL:E.graphqlRoute,subscriptionsEndpoint:"ws://localhost:"+R[0]+E.subscriptionsEndpoint})),O.get(_)),l.schema=t,w=Z.createPath(E.graphqlRoute).handler(N(function(e){return Object.assign(l.context,{headers:e.headers,body:e.body}),l})),O.get(w).post(w),Z.registerRouters(O),Z.events.emit("log"),!(R.length>1)){e.next=39;break}return S=S.listen.apply(S,R),U.create({execute:Y,subscribe:$,schema:E._graphQlExecutableSchema,onConnect:function(e,r,t){return Object.assign({},X,{pubsub:c})}},{server:S,path:E.subscriptionsEndpoint}),e.abrupt("return",S);case 39:return q.listen.apply(q,[R[0],function(){return J(["Listening on Bliz server "+ee+" on port "+R[0],"Platform: "+z.platform(),"Hostname: "+z.hostname(),"Architecture: "+z.arch(),"CPU Cores: "+z.cpus().length,"Memory Free: "+(z.freemem()/1024/1024/(z.totalmem()/1024/1024)*100).toFixed(0)+"%, "+(z.freemem()/1024/1024).toFixed(0)+" MB / "+(z.totalmem()/1024/1024).toFixed(0)+" MB"])}]),U.create({execute:Y,subscribe:$,schema:E._graphQlExecutableSchema,onConnect:function(e,r,t){return Object.assign({},X,{pubsub:c})}},{server:q,path:E.subscriptionsEndpoint}),e.abrupt("return",q);case 42:case"end":return e.stop()}},e,this)}));return function(r){return e.apply(this,arguments)}}()},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=t(0);r.default=function(e){var r={},t={type:e,resolver:{},mutation:[],subscription:[],mockSchema:null,query:[],dataLoader:[]};return Object.assign(r,(0,n.AssignHandler)({name:"resolver",obj:t.resolver,chainLink:r,override:!0}),(0,n.CreateArray)({name:"dataLoader",arr:t.dataLoader,chainLink:r}),(0,n.AssignHandler)({name:"mockSchema",obj:t,chainLink:r}),(0,n.CreateArray)({name:"mutation",arr:t.mutation,chainLink:r}),(0,n.CreateArray)({name:"subscription",arr:t.subscription,chainLink:r}),(0,n.CreateArray)({name:"query",arr:t.query,chainLink:r}),(0,n.GetObjProps)(t))}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});r.default=function(e){var r=e._useSockets,t=e._Instance,n=e._injected,a=e.server,i=e._version,o=e.args,s=e.os,u=e.print,c=e.socketMiddlewareHandler,l=e.checkSubRouters,p=r.io(a);return o.length>1?a.listen.apply(a,o):a.listen.apply(a,[o[0],function(){return u(["Listening on Bliz server "+i+" on port "+o[0],"Platform: "+s.platform(),"Hostname: "+s.hostname(),"Architecture: "+s.arch(),"CPU Cores: "+s.cpus().length,"Memory Free: "+(s.freemem()/1024/1024/(s.totalmem()/1024/1024)*100).toFixed(0)+"%, "+(s.freemem()/1024/1024).toFixed(0)+" MB / "+(s.totalmem()/1024/1024).toFixed(0)+" MB"])}]),p.on("connection",function(e){var t=Object.keys(r._socketRoutersObject),a=function(t){var a=Object.keys(r._socketRoutersObject[t].event),i=function(a){var i,o;e.on(""+t+r.delimiter+a,(i=regeneratorRuntime.mark(function i(o,s){var u,f;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(i.prev=0,u=r._socketRoutersObject[t].event[a].getObjProps(),!(r._socketMiddlewares&&r._socketMiddlewares.length>0)){i.next=5;break}return i.next=5,c(Promise,p,e,o,s,r._socketMiddlewares);case 5:if(f=[],t.split(r.delimiter).map(function(e){return r._socketRoutersObject[e]?l(r._socketRoutersObject[e],f):void 0}),!((f=f.reduce(function(e,r){return e.concat(r)}))&&f.length>0)){i.next=11;break}return i.next=11,c(Promise,p,e,o,s,f);case 11:if(!(u.middleWareArr&&u.middleWareArr.length>0)){i.next=14;break}return i.next=14,c(Promise,p,e,o,s,u.middleWareArr);case 14:return i.next=16,u.handler(p,e,o,s,n);case 16:i.next=21;break;case 18:i.prev=18,i.t0=i.catch(0),console.log(i.t0);case 21:case"end":return i.stop()}},i,void 0,[[0,18]])}),o=function(){var e=i.apply(this,arguments);return new Promise(function(r,t){return function n(a,i){try{var o=e[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});r(s)}("next")})},function(e,r){return o.apply(this,arguments)}))},o=!0,s=!1,u=void 0;try{for(var f,d=a[Symbol.iterator]();!(o=(f=d.next()).done);o=!0)i(f.value)}catch(e){s=!0,u=e}finally{try{!o&&d.return&&d.return()}finally{if(s)throw u}}},i=!0,o=!1,s=void 0;try{for(var u,f=t[Symbol.iterator]();!(i=(u=f.next()).done);i=!0)a(u.value)}catch(e){o=!0,s=e}finally{try{!i&&f.return&&f.return()}finally{if(o)throw s}}e.on("disconnect",function(){})}),t.events.emit("log"),p}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=t(0);r.default=function(e){var r={},t={middleWareArr:[],path:e,handler:null,errHandler:null};return Object.assign(r,(0,n.CreateObjectArray)({name:"middleware",arr:t.middleWareArr,chainLink:r}),(0,n.AssignHandler)({name:"handler",obj:t,chainLink:r}),(0,n.AssignHandler)({name:"errHandler",obj:t,chainLink:r}),(0,n.GetObjProps)(t))}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=t(0);r.default=function(e){var r={},t={base:e,event:{},middleWareArr:[],subRouters:[],routerErrorHandler:null};return Object.assign(r,(0,n.Method)("event",t,r),(0,n.AssignHandler)({name:"routerErrorHandler",obj:t,chainLink:r}),(0,n.CreateObjectArray)({name:"middleware",arr:t.middleWareArr,chainLink:r}),(0,n.CreateArray)({name:"socketSubRouter",arr:t.subRouters,chainLink:r}),(0,n.GetObjProps)(t))}},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a,i=(n=s(regeneratorRuntime.mark(function e(r,t,n,a){var i,o,s,c,l,p,f,d=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:i=regeneratorRuntime.mark(function e(a){var i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=a.fn,a.timeout,a.throwError,e.next=3,new r(function(e,r){return i(t,n,u.bind(d,e,r))});case 3:case"end":return e.stop()}},e,d)}),o=!0,s=!1,c=void 0,e.prev=4,l=a[Symbol.iterator]();case 6:if(o=(p=l.next()).done){e.next=12;break}return f=p.value,e.delegateYield(i(f),"t0",9);case 9:o=!0,e.next=6;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),s=!0,c=e.t1;case 18:e.prev=18,e.prev=19,!o&&l.return&&l.return();case 21:if(e.prev=21,!s){e.next=24;break}throw c;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}},e,this,[[4,14,18,26],[19,,21,25]])})),function(e,r,t,a){return n.apply(this,arguments)}),o=(a=s(regeneratorRuntime.mark(function e(r,t,n,a,i,o){var s,l,p,f,d,h,m,v=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:s=regeneratorRuntime.mark(function e(o){var s,l,p,f;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return s=o.fn,l=o.timeout,p=o.throwError,f=new r(function(e,r){return s(t,n,a,i,u.bind(v,e,r))}),e.next=4,c(f,l,p);case 4:case"end":return e.stop()}},e,v)}),l=!0,p=!1,f=void 0,e.prev=4,d=o[Symbol.iterator]();case 6:if(l=(h=d.next()).done){e.next=12;break}return m=h.value,e.delegateYield(s(m),"t0",9);case 9:l=!0,e.next=6;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),p=!0,f=e.t1;case 18:e.prev=18,e.prev=19,!l&&d.return&&d.return();case 21:if(e.prev=21,!p){e.next=24;break}throw f;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}},e,this,[[4,14,18,26],[19,,21,25]])})),function(e,r,t,n,i,o){return a.apply(this,arguments)});function s(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){return function n(a,i){try{var o=r[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});e(s)}("next")})}}function u(e,r){return(arguments.length<=2?0:arguments.length-2)>0?r(arguments.length<=2?void 0:arguments[2]):e()}var c=function(e,r,t){var n=new Promise(function(e,n){var a=setTimeout(function(){clearTimeout(a);var i=new Error("Timed out in "+r+"ms.");t?n(i):e("Timed out in "+r+"ms.")},r)});return Promise.race([e,n])};r.socketMiddlewareHandler=o,r.default=i},function(e,r){e.exports=require("etag")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=i(t(3)),a=i(t(43));function i(e){return e&&e.__esModule?e:{default:e}}var o=Object.create(n.default.ServerResponse.prototype);o.status=function(e){return this.statusCode=e,this},o.json=function(e){this.setHeader("Content-Type","application/json"),this.setHeader("X-Powered-By","Bliz");var r=JSON.stringify(e,null,3),t=(0,a.default)(r);this.setHeader("ETag",t),this.end(r)},r.default=o},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a=t(3),i=(n=a)&&n.__esModule?n:{default:n};var o=Object.create(i.default.IncomingMessage.prototype);r.default=o},function(e,r,t){"use strict";function n(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){return function n(a,i){try{var o=r[a](i),s=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(s).then(function(e){n("next",e)},function(e){n("throw",e)});e(s)}("next")})}}Object.defineProperty(r,"__esModule",{value:!0}),r.default=function(e){var r,t=(r=n(regeneratorRuntime.mark(function e(r,t,n){var m,y,k,j,x,O,_,w,S,P,q,R,E,A,L,M,H,C,Q,G,D,F,T,N,U;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r.__proto__=a,t.__proto__=i,i.req=r,a.res=t,r.params||(r.params={}),r.query||(r.query={}),m=u(r.url,r.method),y=m.method,k=m.splitRest,j=f(k),x=c(j,g),O=x.baseOfRequest,_=x.rest,w=x.combinedRoutersMids,S=p(r,_)||_,P=l(r,g,O,y,S),q=P.param,R=P.canSkipBecauseParams,e.prev=11,!b){e.next=15;break}return e.next=15,s(h,r,t,b);case 15:if(!w){e.next=18;break}return e.next=18,s(h,r,t,w);case 18:e.next=23;break;case 20:return e.prev=20,e.t0=e.catch(11),e.abrupt("return