UNPKG

129 kBSource Map (JSON)View Raw
1{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap","webpack:///./node_modules/events/events.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/reflect-metadata/Reflect.js","webpack:///(webpack)/buildin/global.js","webpack:///./src/lib/commons/enums.ts","webpack:///./src/lib/commons/index.ts","webpack:///./src/lib/commons/method-descriptor.ts","webpack:///./src/lib/commons/methodus-class.ts","webpack:///./src/lib/commons/params-map.ts","webpack:///./src/lib/commons/prototyped.ts","webpack:///./src/lib/decorators/index.ts","webpack:///./src/lib/decorators/method-config-base.ts","webpack:///./src/lib/decorators/method-config-extend.ts","webpack:///./src/lib/decorators/method-config.ts","webpack:///./src/lib/decorators/method.ts","webpack:///./src/lib/decorators/params.ts","webpack:///./src/lib/di/index.ts","webpack:///./src/lib/di/inject.ts","webpack:///./src/lib/di/injectable.ts","webpack:///./src/lib/di/injector.ts","webpack:///./src/lib/di/singleton.ts","webpack:///./src/lib/index.ts","webpack:///./src/lib/response/index.ts","webpack:///./src/lib/response/methodError.ts","webpack:///./src/lib/response/methodResult.ts","webpack:///./src/lib/transports/index.ts","webpack:///./src/lib/transports/rest.ts","webpack:///./src/lib/transports/socket.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,cAAc;AACd;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,OAAO;AACP;AACA,sCAAsC,QAAQ;AAC9C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;;AAEA;AACA,QAAQ,yBAAyB;AACjC;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;;;;;;;;;;;;AC/bA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC;;AAErC;AACA;AACA;;AAEA,2BAA2B;AAC3B;AACA;AACA;AACA,4BAA4B,UAAU;;;;;;;;;;;;ACvLtC;AACA;AACA,+DAA+D;AAC/D;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,mDAAmD;AAC3G;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE,6BAA6B,gBAAgB,kBAAkB;AAC/D;AACA;AACA;AACA;AACA,+BAA+B,4CAA4C;AAC3E;AACA,mCAAmC,wBAAwB,kBAAkB,EAAE;AAC/E,mCAAmC,yBAAyB,EAAE,EAAE;AAChE;AACA,uCAAuC,8BAA8B;AACrE,uCAAuC,mBAAmB,EAAE;AAC5D;AACA,uCAAuC,qDAAqD;AAC5F,uCAAuC,iBAAiB,EAAE;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uGAAuG;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,2CAA2C;AAC3C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,uBAAuB;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,0BAA0B;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mEAAmE,aAAa;AAChF,qEAAqE,aAAa;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,0BAA0B,EAAE;AAClE;AACA;AACA,iBAAiB;AACjB,oDAAoD,+CAA+C;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,UAAU;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,0DAA0D;AAC5G,oDAAoD,4DAA4D;AAChH,qDAAqD,4DAA4D;AACjH,2DAA2D,uBAAuB;AAClF,6DAA6D,uBAAuB;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,uBAAuB,EAAE;AAC/D;AACA;AACA,iBAAiB;AACjB,sDAAsD,6BAA6B;AACnF,sDAAsD,0CAA0C;AAChG,yDAAyD,gCAAgC;AACzF,mDAAmD,mBAAmB;AACtE,kDAAkD,yBAAyB;AAC3E,oDAAoD,2BAA2B;AAC/E,qDAAqD,4BAA4B;AACjF,2DAA2D,oBAAoB;AAC/E,6DAA6D,oBAAoB;AACjF;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,0BAA0B;AACtF;AACA;AACA;AACA;AACA,+BAA+B,UAAU;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,oBAAoB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,0BAA0B;;;;;;;;;;;;;AC1mC3B;;AAEA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;AACA;AACA,4CAA4C;;AAE5C;;;;;;;;;;;;;;;ACnBA,IAAY,KAQX;AARD,WAAY,KAAK;IACb,oBAAW;IACX,sBAAa;IACb,oBAAW;IACX,wBAAe;IACf,sBAAa;IACb,0BAAiB;AAErB,CAAC,EARW,KAAK,GAAL,aAAK,KAAL,aAAK,QAQhB;AAED,IAAY,UAQX;AARD,WAAY,UAAU;IAClB,6BAAe;IACf,2BAAa;IACb,uBAAS;IACT,6BAAe;IACf,+BAAiB;IACjB,6BAAe;IACf,2BAAa;AACjB,CAAC,EARW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAQrB;;;;;;;;;;;;;;;;;;AClBD,2EAAwB;AACxB,qFAA6B;AAC7B,mGAAoC;AACpC,6FAAi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","file":"methodus-client.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction $getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return $getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = $getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) args.push(arguments[i]);\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n ReflectApply(this.listener, this.target, args);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","/*! *****************************************************************************\nCopyright (C) Microsoft. All rights reserved.\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\nthis file except in compliance with the License. You may obtain a copy of the\nLicense at http://www.apache.org/licenses/LICENSE-2.0\n\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\nMERCHANTABLITY OR NON-INFRINGEMENT.\n\nSee the Apache Version 2.0 License for specific language governing permissions\nand limitations under the License.\n***************************************************************************** */\nvar Reflect;\n(function (Reflect) {\n // Metadata Proposal\n // https://rbuckton.github.io/reflect-metadata/\n (function (factory) {\n var root = typeof global === \"object\" ? global :\n typeof self === \"object\" ? self :\n typeof this === \"object\" ? this :\n Function(\"return this;\")();\n var exporter = makeExporter(Reflect);\n if (typeof root.Reflect === \"undefined\") {\n root.Reflect = Reflect;\n }\n else {\n exporter = makeExporter(root.Reflect, exporter);\n }\n factory(exporter);\n function makeExporter(target, previous) {\n return function (key, value) {\n if (typeof target[key] !== \"function\") {\n Object.defineProperty(target, key, { configurable: true, writable: true, value: value });\n }\n if (previous)\n previous(key, value);\n };\n }\n })(function (exporter) {\n var hasOwn = Object.prototype.hasOwnProperty;\n // feature test for Symbol support\n var supportsSymbol = typeof Symbol === \"function\";\n var toPrimitiveSymbol = supportsSymbol && typeof Symbol.toPrimitive !== \"undefined\" ? Symbol.toPrimitive : \"@@toPrimitive\";\n var iteratorSymbol = supportsSymbol && typeof Symbol.iterator !== \"undefined\" ? Symbol.iterator : \"@@iterator\";\n var supportsCreate = typeof Object.create === \"function\"; // feature test for Object.create support\n var supportsProto = { __proto__: [] } instanceof Array; // feature test for __proto__ support\n var downLevel = !supportsCreate && !supportsProto;\n var HashMap = {\n // create an object in dictionary mode (a.k.a. \"slow\" mode in v8)\n create: supportsCreate\n ? function () { return MakeDictionary(Object.create(null)); }\n : supportsProto\n ? function () { return MakeDictionary({ __proto__: null }); }\n : function () { return MakeDictionary({}); },\n has: downLevel\n ? function (map, key) { return hasOwn.call(map, key); }\n : function (map, key) { return key in map; },\n get: downLevel\n ? function (map, key) { return hasOwn.call(map, key) ? map[key] : undefined; }\n : function (map, key) { return map[key]; },\n };\n // Load global or shim versions of Map, Set, and WeakMap\n var functionPrototype = Object.getPrototypeOf(Function);\n var usePolyfill = typeof process === \"object\" && process.env && process.env[\"REFLECT_METADATA_USE_MAP_POLYFILL\"] === \"true\";\n var _Map = !usePolyfill && typeof Map === \"function\" && typeof Map.prototype.entries === \"function\" ? Map : CreateMapPolyfill();\n var _Set = !usePolyfill && typeof Set === \"function\" && typeof Set.prototype.entries === \"function\" ? Set : CreateSetPolyfill();\n var _WeakMap = !usePolyfill && typeof WeakMap === \"function\" ? WeakMap : CreateWeakMapPolyfill();\n // [[Metadata]] internal slot\n // https://rbuckton.github.io/reflect-metadata/#ordinary-object-internal-methods-and-internal-slots\n var Metadata = new _WeakMap();\n /**\n * Applies a set of decorators to a property of a target object.\n * @param decorators An array of decorators.\n * @param target The target object.\n * @param propertyKey (Optional) The property key to decorate.\n * @param attributes (Optional) The property descriptor for the target key.\n * @remarks Decorators are applied in reverse order.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * Example = Reflect.decorate(decoratorsArray, Example);\n *\n * // property (on constructor)\n * Reflect.decorate(decoratorsArray, Example, \"staticProperty\");\n *\n * // property (on prototype)\n * Reflect.decorate(decoratorsArray, Example.prototype, \"property\");\n *\n * // method (on constructor)\n * Object.defineProperty(Example, \"staticMethod\",\n * Reflect.decorate(decoratorsArray, Example, \"staticMethod\",\n * Object.getOwnPropertyDescriptor(Example, \"staticMethod\")));\n *\n * // method (on prototype)\n * Object.defineProperty(Example.prototype, \"method\",\n * Reflect.decorate(decoratorsArray, Example.prototype, \"method\",\n * Object.getOwnPropertyDescriptor(Example.prototype, \"method\")));\n *\n */\n function decorate(decorators, target, propertyKey, attributes) {\n if (!IsUndefined(propertyKey)) {\n if (!IsArray(decorators))\n throw new TypeError();\n if (!IsObject(target))\n throw new TypeError();\n if (!IsObject(attributes) && !IsUndefined(attributes) && !IsNull(attributes))\n throw new TypeError();\n if (IsNull(attributes))\n attributes = undefined;\n propertyKey = ToPropertyKey(propertyKey);\n return DecorateProperty(decorators, target, propertyKey, attributes);\n }\n else {\n if (!IsArray(decorators))\n throw new TypeError();\n if (!IsConstructor(target))\n throw new TypeError();\n return DecorateConstructor(decorators, target);\n }\n }\n exporter(\"decorate\", decorate);\n // 4.1.2 Reflect.metadata(metadataKey, metadataValue)\n // https://rbuckton.github.io/reflect-metadata/#reflect.metadata\n /**\n * A default metadata decorator factory that can be used on a class, class member, or parameter.\n * @param metadataKey The key for the metadata entry.\n * @param metadataValue The value for the metadata entry.\n * @returns A decorator function.\n * @remarks\n * If `metadataKey` is already defined for the target and target key, the\n * metadataValue for that key will be overwritten.\n * @example\n *\n * // constructor\n * @Reflect.metadata(key, value)\n * class Example {\n * }\n *\n * // property (on constructor, TypeScript only)\n * class Example {\n * @Reflect.metadata(key, value)\n * static staticProperty;\n * }\n *\n * // property (on prototype, TypeScript only)\n * class Example {\n * @Reflect.metadata(key, value)\n * property;\n * }\n *\n * // method (on constructor)\n * class Example {\n * @Reflect.metadata(key, value)\n * static staticMethod() { }\n * }\n *\n * // method (on prototype)\n * class Example {\n * @Reflect.metadata(key, value)\n * method() { }\n * }\n *\n */\n function metadata(metadataKey, metadataValue) {\n function decorator(target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey) && !IsPropertyKey(propertyKey))\n throw new TypeError();\n OrdinaryDefineOwnMetadata(metadataKey, metadataValue, target, propertyKey);\n }\n return decorator;\n }\n exporter(\"metadata\", metadata);\n /**\n * Define a unique metadata entry on the target.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param metadataValue A value that contains attached metadata.\n * @param target The target object on which to define metadata.\n * @param propertyKey (Optional) The property key for the target.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * Reflect.defineMetadata(\"custom:annotation\", options, Example);\n *\n * // property (on constructor)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example, \"staticProperty\");\n *\n * // property (on prototype)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example.prototype, \"property\");\n *\n * // method (on constructor)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example, \"staticMethod\");\n *\n * // method (on prototype)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example.prototype, \"method\");\n *\n * // decorator factory as metadata-producing annotation.\n * function MyAnnotation(options): Decorator {\n * return (target, key?) => Reflect.defineMetadata(\"custom:annotation\", options, target, key);\n * }\n *\n */\n function defineMetadata(metadataKey, metadataValue, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryDefineOwnMetadata(metadataKey, metadataValue, target, propertyKey);\n }\n exporter(\"defineMetadata\", defineMetadata);\n /**\n * Gets a value indicating whether the target object or its prototype chain has the provided metadata key defined.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns `true` if the metadata key was defined on the target object or its prototype chain; otherwise, `false`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.hasMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function hasMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryHasMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"hasMetadata\", hasMetadata);\n /**\n * Gets a value indicating whether the target object has the provided metadata key defined.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns `true` if the metadata key was defined on the target object; otherwise, `false`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function hasOwnMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryHasOwnMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"hasOwnMetadata\", hasOwnMetadata);\n /**\n * Gets the metadata value for the provided metadata key on the target object or its prototype chain.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns The metadata value for the metadata key if found; otherwise, `undefined`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.getMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function getMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryGetMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"getMetadata\", getMetadata);\n /**\n * Gets the metadata value for the provided metadata key on the target object.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns The metadata value for the metadata key if found; otherwise, `undefined`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function getOwnMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryGetOwnMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"getOwnMetadata\", getOwnMetadata);\n /**\n * Gets the metadata keys defined on the target object or its prototype chain.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns An array of unique metadata keys.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getMetadataKeys(Example);\n *\n * // property (on constructor)\n * result = Reflect.getMetadataKeys(Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getMetadataKeys(Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getMetadataKeys(Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getMetadataKeys(Example.prototype, \"method\");\n *\n */\n function getMetadataKeys(target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryMetadataKeys(target, propertyKey);\n }\n exporter(\"getMetadataKeys\", getMetadataKeys);\n /**\n * Gets the unique metadata keys defined on the target object.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns An array of unique metadata keys.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getOwnMetadataKeys(Example);\n *\n * // property (on constructor)\n * result = Reflect.getOwnMetadataKeys(Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getOwnMetadataKeys(Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getOwnMetadataKeys(Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getOwnMetadataKeys(Example.prototype, \"method\");\n *\n */\n function getOwnMetadataKeys(target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryOwnMetadataKeys(target, propertyKey);\n }\n exporter(\"getOwnMetadataKeys\", getOwnMetadataKeys);\n /**\n * Deletes the metadata entry from the target object with the provided key.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns `true` if the metadata entry was found and deleted; otherwise, false.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function deleteMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n var metadataMap = GetOrCreateMetadataMap(target, propertyKey, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return false;\n if (!metadataMap.delete(metadataKey))\n return false;\n if (metadataMap.size > 0)\n return true;\n var targetMetadata = Metadata.get(target);\n targetMetadata.delete(propertyKey);\n if (targetMetadata.size > 0)\n return true;\n Metadata.delete(target);\n return true;\n }\n exporter(\"deleteMetadata\", deleteMetadata);\n function DecorateConstructor(decorators, target) {\n for (var i = decorators.length - 1; i >= 0; --i) {\n var decorator = decorators[i];\n var decorated = decorator(target);\n if (!IsUndefined(decorated) && !IsNull(decorated)) {\n if (!IsConstructor(decorated))\n throw new TypeError();\n target = decorated;\n }\n }\n return target;\n }\n function DecorateProperty(decorators, target, propertyKey, descriptor) {\n for (var i = decorators.length - 1; i >= 0; --i) {\n var decorator = decorators[i];\n var decorated = decorator(target, propertyKey, descriptor);\n if (!IsUndefined(decorated) && !IsNull(decorated)) {\n if (!IsObject(decorated))\n throw new TypeError();\n descriptor = decorated;\n }\n }\n return descriptor;\n }\n function GetOrCreateMetadataMap(O, P, Create) {\n var targetMetadata = Metadata.get(O);\n if (IsUndefined(targetMetadata)) {\n if (!Create)\n return undefined;\n targetMetadata = new _Map();\n Metadata.set(O, targetMetadata);\n }\n var metadataMap = targetMetadata.get(P);\n if (IsUndefined(metadataMap)) {\n if (!Create)\n return undefined;\n metadataMap = new _Map();\n targetMetadata.set(P, metadataMap);\n }\n return metadataMap;\n }\n // 3.1.1.1 OrdinaryHasMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryhasmetadata\n function OrdinaryHasMetadata(MetadataKey, O, P) {\n var hasOwn = OrdinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn)\n return true;\n var parent = OrdinaryGetPrototypeOf(O);\n if (!IsNull(parent))\n return OrdinaryHasMetadata(MetadataKey, parent, P);\n return false;\n }\n // 3.1.2.1 OrdinaryHasOwnMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryhasownmetadata\n function OrdinaryHasOwnMetadata(MetadataKey, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return false;\n return ToBoolean(metadataMap.has(MetadataKey));\n }\n // 3.1.3.1 OrdinaryGetMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarygetmetadata\n function OrdinaryGetMetadata(MetadataKey, O, P) {\n var hasOwn = OrdinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn)\n return OrdinaryGetOwnMetadata(MetadataKey, O, P);\n var parent = OrdinaryGetPrototypeOf(O);\n if (!IsNull(parent))\n return OrdinaryGetMetadata(MetadataKey, parent, P);\n return undefined;\n }\n // 3.1.4.1 OrdinaryGetOwnMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarygetownmetadata\n function OrdinaryGetOwnMetadata(MetadataKey, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return undefined;\n return metadataMap.get(MetadataKey);\n }\n // 3.1.5.1 OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarydefineownmetadata\n function OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ true);\n metadataMap.set(MetadataKey, MetadataValue);\n }\n // 3.1.6.1 OrdinaryMetadataKeys(O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarymetadatakeys\n function OrdinaryMetadataKeys(O, P) {\n var ownKeys = OrdinaryOwnMetadataKeys(O, P);\n var parent = OrdinaryGetPrototypeOf(O);\n if (parent === null)\n return ownKeys;\n var parentKeys = OrdinaryMetadataKeys(parent, P);\n if (parentKeys.length <= 0)\n return ownKeys;\n if (ownKeys.length <= 0)\n return parentKeys;\n var set = new _Set();\n var keys = [];\n for (var _i = 0, ownKeys_1 = ownKeys; _i < ownKeys_1.length; _i++) {\n var key = ownKeys_1[_i];\n var hasKey = set.has(key);\n if (!hasKey) {\n set.add(key);\n keys.push(key);\n }\n }\n for (var _a = 0, parentKeys_1 = parentKeys; _a < parentKeys_1.length; _a++) {\n var key = parentKeys_1[_a];\n var hasKey = set.has(key);\n if (!hasKey) {\n set.add(key);\n keys.push(key);\n }\n }\n return keys;\n }\n // 3.1.7.1 OrdinaryOwnMetadataKeys(O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryownmetadatakeys\n function OrdinaryOwnMetadataKeys(O, P) {\n var keys = [];\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return keys;\n var keysObj = metadataMap.keys();\n var iterator = GetIterator(keysObj);\n var k = 0;\n while (true) {\n var next = IteratorStep(iterator);\n if (!next) {\n keys.length = k;\n return keys;\n }\n var nextValue = IteratorValue(next);\n try {\n keys[k] = nextValue;\n }\n catch (e) {\n try {\n IteratorClose(iterator);\n }\n finally {\n throw e;\n }\n }\n k++;\n }\n }\n // 6 ECMAScript Data Typ0es and Values\n // https://tc39.github.io/ecma262/#sec-ecmascript-data-types-and-values\n function Type(x) {\n if (x === null)\n return 1 /* Null */;\n switch (typeof x) {\n case \"undefined\": return 0 /* Undefined */;\n case \"boolean\": return 2 /* Boolean */;\n case \"string\": return 3 /* String */;\n case \"symbol\": return 4 /* Symbol */;\n case \"number\": return 5 /* Number */;\n case \"object\": return x === null ? 1 /* Null */ : 6 /* Object */;\n default: return 6 /* Object */;\n }\n }\n // 6.1.1 The Undefined Type\n // https://tc39.github.io/ecma262/#sec-ecmascript-language-types-undefined-type\n function IsUndefined(x) {\n return x === undefined;\n }\n // 6.1.2 The Null Type\n // https://tc39.github.io/ecma262/#sec-ecmascript-language-types-null-type\n function IsNull(x) {\n return x === null;\n }\n // 6.1.5 The Symbol Type\n // https://tc39.github.io/ecma262/#sec-ecmascript-language-types-symbol-type\n function IsSymbol(x) {\n return typeof x === \"symbol\";\n }\n // 6.1.7 The Object Type\n // https://tc39.github.io/ecma262/#sec-object-type\n function IsObject(x) {\n return typeof x === \"object\" ? x !== null : typeof x === \"function\";\n }\n // 7.1 Type Conversion\n // https://tc39.github.io/ecma262/#sec-type-conversion\n // 7.1.1 ToPrimitive(input [, PreferredType])\n // https://tc39.github.io/ecma262/#sec-toprimitive\n function ToPrimitive(input, PreferredType) {\n switch (Type(input)) {\n case 0 /* Undefined */: return input;\n case 1 /* Null */: return input;\n case 2 /* Boolean */: return input;\n case 3 /* String */: return input;\n case 4 /* Symbol */: return input;\n case 5 /* Number */: return input;\n }\n var hint = PreferredType === 3 /* String */ ? \"string\" : PreferredType === 5 /* Number */ ? \"number\" : \"default\";\n var exoticToPrim = GetMethod(input, toPrimitiveSymbol);\n if (exoticToPrim !== undefined) {\n var result = exoticToPrim.call(input, hint);\n if (IsObject(result))\n throw new TypeError();\n return result;\n }\n return OrdinaryToPrimitive(input, hint === \"default\" ? \"number\" : hint);\n }\n // 7.1.1.1 OrdinaryToPrimitive(O, hint)\n // https://tc39.github.io/ecma262/#sec-ordinarytoprimitive\n function OrdinaryToPrimitive(O, hint) {\n if (hint === \"string\") {\n var toString_1 = O.toString;\n if (IsCallable(toString_1)) {\n var result = toString_1.call(O);\n if (!IsObject(result))\n return result;\n }\n var valueOf = O.valueOf;\n if (IsCallable(valueOf)) {\n var result = valueOf.call(O);\n if (!IsObject(result))\n return result;\n }\n }\n else {\n var valueOf = O.valueOf;\n if (IsCallable(valueOf)) {\n var result = valueOf.call(O);\n if (!IsObject(result))\n return result;\n }\n var toString_2 = O.toString;\n if (IsCallable(toString_2)) {\n var result = toString_2.call(O);\n if (!IsObject(result))\n return result;\n }\n }\n throw new TypeError();\n }\n // 7.1.2 ToBoolean(argument)\n // https://tc39.github.io/ecma262/2016/#sec-toboolean\n function ToBoolean(argument) {\n return !!argument;\n }\n // 7.1.12 ToString(argument)\n // https://tc39.github.io/ecma262/#sec-tostring\n function ToString(argument) {\n return \"\" + argument;\n }\n // 7.1.14 ToPropertyKey(argument)\n // https://tc39.github.io/ecma262/#sec-topropertykey\n function ToPropertyKey(argument) {\n var key = ToPrimitive(argument, 3 /* String */);\n if (IsSymbol(key))\n return key;\n return ToString(key);\n }\n // 7.2 Testing and Comparison Operations\n // https://tc39.github.io/ecma262/#sec-testing-and-comparison-operations\n // 7.2.2 IsArray(argument)\n // https://tc39.github.io/ecma262/#sec-isarray\n function IsArray(argument) {\n return Array.isArray\n ? Array.isArray(argument)\n : argument instanceof Object\n ? argument instanceof Array\n : Object.prototype.toString.call(argument) === \"[object Array]\";\n }\n // 7.2.3 IsCallable(argument)\n // https://tc39.github.io/ecma262/#sec-iscallable\n function IsCallable(argument) {\n // NOTE: This is an approximation as we cannot check for [[Call]] internal method.\n return typeof argument === \"function\";\n }\n // 7.2.4 IsConstructor(argument)\n // https://tc39.github.io/ecma262/#sec-isconstructor\n function IsConstructor(argument) {\n // NOTE: This is an approximation as we cannot check for [[Construct]] internal method.\n return typeof argument === \"function\";\n }\n // 7.2.7 IsPropertyKey(argument)\n // https://tc39.github.io/ecma262/#sec-ispropertykey\n function IsPropertyKey(argument) {\n switch (Type(argument)) {\n case 3 /* String */: return true;\n case 4 /* Symbol */: return true;\n default: return false;\n }\n }\n // 7.3 Operations on Objects\n // https://tc39.github.io/ecma262/#sec-operations-on-objects\n // 7.3.9 GetMethod(V, P)\n // https://tc39.github.io/ecma262/#sec-getmethod\n function GetMethod(V, P) {\n var func = V[P];\n if (func === undefined || func === null)\n return undefined;\n if (!IsCallable(func))\n throw new TypeError();\n return func;\n }\n // 7.4 Operations on Iterator Objects\n // https://tc39.github.io/ecma262/#sec-operations-on-iterator-objects\n function GetIterator(obj) {\n var method = GetMethod(obj, iteratorSymbol);\n if (!IsCallable(method))\n throw new TypeError(); // from Call\n var iterator = method.call(obj);\n if (!IsObject(iterator))\n throw new TypeError();\n return iterator;\n }\n // 7.4.4 IteratorValue(iterResult)\n // https://tc39.github.io/ecma262/2016/#sec-iteratorvalue\n function IteratorValue(iterResult) {\n return iterResult.value;\n }\n // 7.4.5 IteratorStep(iterator)\n // https://tc39.github.io/ecma262/#sec-iteratorstep\n function IteratorStep(iterator) {\n var result = iterator.next();\n return result.done ? false : result;\n }\n // 7.4.6 IteratorClose(iterator, completion)\n // https://tc39.github.io/ecma262/#sec-iteratorclose\n function IteratorClose(iterator) {\n var f = iterator[\"return\"];\n if (f)\n f.call(iterator);\n }\n // 9.1 Ordinary Object Internal Methods and Internal Slots\n // https://tc39.github.io/ecma262/#sec-ordinary-object-internal-methods-and-internal-slots\n // 9.1.1.1 OrdinaryGetPrototypeOf(O)\n // https://tc39.github.io/ecma262/#sec-ordinarygetprototypeof\n function OrdinaryGetPrototypeOf(O) {\n var proto = Object.getPrototypeOf(O);\n if (typeof O !== \"function\" || O === functionPrototype)\n return proto;\n // TypeScript doesn't set __proto__ in ES5, as it's non-standard.\n // Try to determine the superclass constructor. Compatible implementations\n // must either set __proto__ on a subclass constructor to the superclass constructor,\n // or ensure each class has a valid `constructor` property on its prototype that\n // points back to the constructor.\n // If this is not the same as Function.[[Prototype]], then this is definately inherited.\n // This is the case when in ES6 or when using __proto__ in a compatible browser.\n if (proto !== functionPrototype)\n return proto;\n // If the super prototype is Object.prototype, null, or undefined, then we cannot determine the heritage.\n var prototype = O.prototype;\n var prototypeProto = prototype && Object.getPrototypeOf(prototype);\n if (prototypeProto == null || prototypeProto === Object.prototype)\n return proto;\n // If the constructor was not a function, then we cannot determine the heritage.\n var constructor = prototypeProto.constructor;\n if (typeof constructor !== \"function\")\n return proto;\n // If we have some kind of self-reference, then we cannot determine the heritage.\n if (constructor === O)\n return proto;\n // we have a pretty good guess at the heritage.\n return constructor;\n }\n // naive Map shim\n function CreateMapPolyfill() {\n var cacheSentinel = {};\n var arraySentinel = [];\n var MapIterator = /** @class */ (function () {\n function MapIterator(keys, values, selector) {\n this._index = 0;\n this._keys = keys;\n this._values = values;\n this._selector = selector;\n }\n MapIterator.prototype[\"@@iterator\"] = function () { return this; };\n MapIterator.prototype[iteratorSymbol] = function () { return this; };\n MapIterator.prototype.next = function () {\n var index = this._index;\n if (index >= 0 && index < this._keys.length) {\n var result = this._selector(this._keys[index], this._values[index]);\n if (index + 1 >= this._keys.length) {\n this._index = -1;\n this._keys = arraySentinel;\n this._values = arraySentinel;\n }\n else {\n this._index++;\n }\n return { value: result, done: false };\n }\n return { value: undefined, done: true };\n };\n MapIterator.prototype.throw = function (error) {\n if (this._index >= 0) {\n this._index = -1;\n this._keys = arraySentinel;\n this._values = arraySentinel;\n }\n throw error;\n };\n MapIterator.prototype.return = function (value) {\n if (this._index >= 0) {\n this._index = -1;\n this._keys = arraySentinel;\n this._values = arraySentinel;\n }\n return { value: value, done: true };\n };\n return MapIterator;\n }());\n return /** @class */ (function () {\n function Map() {\n this._keys = [];\n this._values = [];\n this._cacheKey = cacheSentinel;\n this._cacheIndex = -2;\n }\n Object.defineProperty(Map.prototype, \"size\", {\n get: function () { return this._keys.length; },\n enumerable: true,\n configurable: true\n });\n Map.prototype.has = function (key) { return this._find(key, /*insert*/ false) >= 0; };\n Map.prototype.get = function (key) {\n var index = this._find(key, /*insert*/ false);\n return index >= 0 ? this._values[index] : undefined;\n };\n Map.prototype.set = function (key, value) {\n var index = this._find(key, /*insert*/ true);\n this._values[index] = value;\n return this;\n };\n Map.prototype.delete = function (key) {\n var index = this._find(key, /*insert*/ false);\n if (index >= 0) {\n var size = this._keys.length;\n for (var i = index + 1; i < size; i++) {\n this._keys[i - 1] = this._keys[i];\n this._values[i - 1] = this._values[i];\n }\n this._keys.length--;\n this._values.length--;\n if (key === this._cacheKey) {\n this._cacheKey = cacheSentinel;\n this._cacheIndex = -2;\n }\n return true;\n }\n return false;\n };\n Map.prototype.clear = function () {\n this._keys.length = 0;\n this._values.length = 0;\n this._cacheKey = cacheSentinel;\n this._cacheIndex = -2;\n };\n Map.prototype.keys = function () { return new MapIterator(this._keys, this._values, getKey); };\n Map.prototype.values = function () { return new MapIterator(this._keys, this._values, getValue); };\n Map.prototype.entries = function () { return new MapIterator(this._keys, this._values, getEntry); };\n Map.prototype[\"@@iterator\"] = function () { return this.entries(); };\n Map.prototype[iteratorSymbol] = function () { return this.entries(); };\n Map.prototype._find = function (key, insert) {\n if (this._cacheKey !== key) {\n this._cacheIndex = this._keys.indexOf(this._cacheKey = key);\n }\n if (this._cacheIndex < 0 && insert) {\n this._cacheIndex = this._keys.length;\n this._keys.push(key);\n this._values.push(undefined);\n }\n return this._cacheIndex;\n };\n return Map;\n }());\n function getKey(key, _) {\n return key;\n }\n function getValue(_, value) {\n return value;\n }\n function getEntry(key, value) {\n return [key, value];\n }\n }\n // naive Set shim\n function CreateSetPolyfill() {\n return /** @class */ (function () {\n function Set() {\n this._map = new _Map();\n }\n Object.defineProperty(Set.prototype, \"size\", {\n get: function () { return this._map.size; },\n enumerable: true,\n configurable: true\n });\n Set.prototype.has = function (value) { return this._map.has(value); };\n Set.prototype.add = function (value) { return this._map.set(value, value), this; };\n Set.prototype.delete = function (value) { return this._map.delete(value); };\n Set.prototype.clear = function () { this._map.clear(); };\n Set.prototype.keys = function () { return this._map.keys(); };\n Set.prototype.values = function () { return this._map.values(); };\n Set.prototype.entries = function () { return this._map.entries(); };\n Set.prototype[\"@@iterator\"] = function () { return this.keys(); };\n Set.prototype[iteratorSymbol] = function () { return this.keys(); };\n return Set;\n }());\n }\n // naive WeakMap shim\n function CreateWeakMapPolyfill() {\n var UUID_SIZE = 16;\n var keys = HashMap.create();\n var rootKey = CreateUniqueKey();\n return /** @class */ (function () {\n function WeakMap() {\n this._key = CreateUniqueKey();\n }\n WeakMap.prototype.has = function (target) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ false);\n return table !== undefined ? HashMap.has(table, this._key) : false;\n };\n WeakMap.prototype.get = function (target) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ false);\n return table !== undefined ? HashMap.get(table, this._key) : undefined;\n };\n WeakMap.prototype.set = function (target, value) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ true);\n table[this._key] = value;\n return this;\n };\n WeakMap.prototype.delete = function (target) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ false);\n return table !== undefined ? delete table[this._key] : false;\n };\n WeakMap.prototype.clear = function () {\n // NOTE: not a real clear, just makes the previous data unreachable\n this._key = CreateUniqueKey();\n };\n return WeakMap;\n }());\n function CreateUniqueKey() {\n var key;\n do\n key = \"@@WeakMap@@\" + CreateUUID();\n while (HashMap.has(keys, key));\n keys[key] = true;\n return key;\n }\n function GetOrCreateWeakMapTable(target, create) {\n if (!hasOwn.call(target, rootKey)) {\n if (!create)\n return undefined;\n Object.defineProperty(target, rootKey, { value: HashMap.create() });\n }\n return target[rootKey];\n }\n function FillRandomBytes(buffer, size) {\n for (var i = 0; i < size; ++i)\n buffer[i] = Math.random() * 0xff | 0;\n return buffer;\n }\n function GenRandomBytes(size) {\n if (typeof Uint8Array === \"function\") {\n if (typeof crypto !== \"undefined\")\n return crypto.getRandomValues(new Uint8Array(size));\n if (typeof msCrypto !== \"undefined\")\n return msCrypto.getRandomValues(new Uint8Array(size));\n return FillRandomBytes(new Uint8Array(size), size);\n }\n return FillRandomBytes(new Array(size), size);\n }\n function CreateUUID() {\n var data = GenRandomBytes(UUID_SIZE);\n // mark as random - RFC 4122 § 4.4\n data[6] = data[6] & 0x4f | 0x40;\n data[8] = data[8] & 0xbf | 0x80;\n var result = \"\";\n for (var offset = 0; offset < UUID_SIZE; ++offset) {\n var byte = data[offset];\n if (offset === 4 || offset === 6 || offset === 8)\n result += \"-\";\n if (byte < 16)\n result += \"0\";\n result += byte.toString(16).toLowerCase();\n }\n return result;\n }\n }\n // uses a heuristic used by v8 and chakra to force an object into dictionary mode.\n function MakeDictionary(obj) {\n obj.__ = undefined;\n delete obj.__;\n return obj;\n }\n });\n})(Reflect || (Reflect = {}));\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","export enum Verbs {\r\n Get = 'GET',\r\n Post = 'POST',\r\n Put = 'PUT',\r\n Patch = 'PATCH',\r\n Head = 'HEAD',\r\n Delete = 'DELETE',\r\n\r\n}\r\n\r\nexport enum MethodType {\r\n Local = 'Local',\r\n Http = 'Http',\r\n MQ = 'MQ',\r\n Redis = 'Redis',\r\n Socket = 'Socket',\r\n Kafka = 'Kafka',\r\n Mock = 'Mock',\r\n}\r\n","export * from './enums';\r\nexport * from './prototyped';\r\nexport * from './method-descriptor';\r\nexport * from './methodus-class';\r\nexport * from './params-map';\r\n","import {MethodType, Verbs} from './enums';\r\nimport {ParamsMap} from './params-map';\r\nexport class MethodDescriptor {\r\n public verb?: Verbs;\r\n public route?: string;\r\n public methodType?: MethodType;\r\n public propertyKey?: string;\r\n public middlewares?: any;\r\n public params?: ParamsMap[];\r\n}\r\n","export class MethodusClass {\r\n public name?: string;\r\n public methodus: any;\r\n}\r\n","export class ParamsMap {\r\n public from?: string;\r\n public to?: string;\r\n public index?: number;\r\n public name?: string;\r\n}\r\n","export class Prototyped {\r\n public prototype?: any;\r\n // public __proto__?: any;\r\n\r\n}\r\n","export * from './method-config-base';\r\nexport * from './method-config-extend';\r\nexport * from './method-config';\r\nexport * from './params';\r\nexport * from './method';\r\n","import { Injector } from '../di';\r\n\r\n/** the MethodConfig decorator registers the controller as a router\r\n * @param {string} name - the identifier of the controller in the resolver.\r\n * @param {Function[]} middlewares - an array of middlewares to apply to this controller}\r\n */\r\nexport function MethodConfigBase(name: string) {\r\n return (target: any) => {\r\n // //use the injectable logic here\r\n Injector.inject(target, name); \r\n };\r\n}\r\n"," \r\n/** the MethodConfig decorator registers the controller as a router\r\n * @param {string} name - the identifier of the controller in the resolver.\r\n * @param {Function[]} middlewares - an array of middlewares to apply to this controller}\r\n */\r\nexport function MethodConfigExtend(extendTarget: any, name?: string) {\r\n return (target: any) => {\r\n const filterKeys = ['length', 'caller', 'prototype', 'name', 'methodus', 'methodus_base', 'arguments'];\r\n const trueName = name || target.name; \r\n target.methodus[trueName] = JSON.parse(JSON.stringify(extendTarget.methodus_base));\r\n let inheritSettings: any = {};\r\n Object.getOwnPropertyNames(extendTarget.prototype.constructor).forEach((key) => {\r\n if (filterKeys.indexOf(key) === -1) {\r\n const func = async (...args: any[]) => {\r\n args.push({ target: target.methodus[trueName], instruct: true });\r\n return await extendTarget.prototype.constructor[key].apply(target, args);\r\n };\r\n\r\n \r\n inheritSettings[key] = func.bind(target);\r\n }\r\n });\r\n\r\n Object.assign(target.prototype.constructor, inheritSettings);\r\n\r\n \r\n };\r\n}\r\n","import { Injector } from '../di';\r\n\r\n/** the MethodConfig decorator registers the controller as a router\r\n * @param {string} name - the identifier of the controller in the resolver.\r\n * @param {Function[]} middlewares - an array of middlewares to apply to this controller}\r\n */\r\nexport function MethodConfig(name: string, middlewares?: any[], baseRoute?: string) {\r\n return (target: any) => {\r\n\r\n //use the injectable logic here\r\n Injector.inject(target, name);\r\n\r\n let proto = target.prototype || target.__proto__;\r\n\r\n if (target.methodus) { // means its a static class , no prototype\r\n proto = target;\r\n }\r\n proto._symbol = name;\r\n\r\n proto.methodus[name] = proto.methodus[name] || { _auth: {}, _events: {}, _descriptors: {} };\r\n proto.methodus[name].name = name;\r\n proto.methodus[name].baseRoute = baseRoute;\r\n\r\n const methods = Object.getOwnPropertyNames(target.prototype);\r\n methods.forEach((methodName: string): void => {\r\n return target.prototype[methodName];\r\n });\r\n };\r\n}\r\n","import { MethodDescriptor, MethodType, ParamsMap, Prototyped, Verbs } from '../commons/';\r\nimport { Rest } from '../transports/rest';\r\nimport { Socket } from '../transports/socket';\r\n\r\n\r\n/** the @Method decorator registers the model with the odm\r\n * @param {Verbs} verb - the HTTP verb for the route.\r\n * @param {string} route - express route string.\r\n * @param {Function[]} middlewares - an array of middlewares to apply to this function}\r\n */\r\n\r\nexport function Method(verb: Verbs, route: string) {\r\n return (target: any, propertyKey: string, descriptor: TypedPropertyDescriptor<any>) => {\r\n\r\n\r\n target.methodus = target.methodus || {};\r\n let name = target.name || target.constructor.name;\r\n target.methodus[name] = target.methodus[name] || { _events: {}, _descriptors: {} };\r\n\r\n let mTarget = target.methodus[name];\r\n\r\n let metaObject: MethodDescriptor = Object.assign({}, { verb, route, propertyKey, params: [] });\r\n if (mTarget._descriptors[propertyKey]) {\r\n metaObject = Object.assign(metaObject, { params: mTarget._descriptors[propertyKey].params });\r\n }\r\n\r\n mTarget._descriptors[propertyKey] = metaObject; // as MethodDescriptor;\r\n let paramsMap: ParamsMap[];\r\n if (metaObject.params) {\r\n paramsMap = metaObject.params;\r\n paramsMap.sort((a: any, b: any) => {\r\n return a.index - b.index;\r\n });\r\n }\r\n\r\n\r\n const originalMethod = descriptor.value;\r\n descriptor.value = async (...args: any[]) => {\r\n let proto = target.prototype || target.__proto__;\r\n let name = target.name;\r\n if (target.constructor) {\r\n name = target.constructor.name;\r\n }\r\n\r\n if (target._symbol) {\r\n name = target._symbol;\r\n }\r\n\r\n if (proto._symbol) {\r\n name = proto._symbol;\r\n }\r\n\r\n\r\n\r\n let config = { methodType: MethodType.Http };\r\n if ((window as any).METHODUS_CONFIG) {\r\n\r\n config = (window as any).METHODUS_CONFIG[name];\r\n if (!config) {\r\n config = { methodType: MethodType.Http };\r\n }\r\n }\r\n\r\n\r\n if (args && args[args.length - 1] && args[args.length - 1].instruct) {\r\n mTarget = args[args.length - 1].target;\r\n\r\n metaObject = mTarget._descriptors[propertyKey];\r\n paramsMap = metaObject.params as any;\r\n paramsMap.sort((a: any, b: any) => {\r\n return a.index - b.index;\r\n });\r\n }\r\n\r\n\r\n const methodus: any = mTarget;\r\n // merge the configuration object\r\n Object.assign(methodus, methodus._descriptors[propertyKey]);\r\n // acquire the method information from the config classes map\r\n const completeConfiguration: any = Object.assign({}, methodus, config);\r\n switch (config.methodType) {\r\n case MethodType.Mock:\r\n case MethodType.Local:\r\n return await originalMethod.apply(target, args);\r\n case MethodType.Socket:\r\n const socket = new Socket();\r\n const messageName = `${completeConfiguration.verb}_${completeConfiguration.route}`;\r\n await socket.send(messageName, args);\r\n return socket;\r\n case MethodType.Http:\r\n let finalRoute = completeConfiguration.route;\r\n //include base routes\r\n if (methodus.baseRoute) {\r\n finalRoute = methodus.baseRoute + methodus.baseRoute;\r\n }\r\n\r\n\r\n if (target.base !== undefined) {\r\n finalRoute = target.base + finalRoute;\r\n } else if ((window as any).RELATIVE_CONTRACTS) {\r\n finalRoute = '.' + finalRoute;\r\n }\r\n\r\n const request = new Rest(finalRoute, completeConfiguration.verb, paramsMap, args);\r\n const result = await request.send();\r\n return result;\r\n }\r\n };\r\n return descriptor;\r\n };\r\n}\r\n","\r\nimport { MethodusClass, ParamsMap } from '../commons';\r\n\r\nfunction pushParams(target: MethodusClass, propertyKey: string, param: ParamsMap) {\r\n // const methodus = fp.maybeMethodus(target);\r\n target.methodus = target.methodus || {};\r\n const name = target.name || target.constructor.name;\r\n target.methodus[name] = target.methodus[name] || { _events: {}, _descriptors: {} };\r\n const mTarget = target.methodus[name];\r\n\r\n\r\n mTarget._descriptors[propertyKey] = mTarget._descriptors[propertyKey] || { params: [] };\r\n mTarget._descriptors[propertyKey].params.push(Object.assign({}, param,\r\n { type: 'any' }));\r\n}\r\n\r\nfunction build(from: string, name?: string, type?: any) {\r\n return (target: any, propertyKey: string, parameterIndex: number) => {\r\n if (name) {\r\n pushParams(target, propertyKey, {\r\n from, index: parameterIndex,\r\n name,\r\n });\r\n } else {\r\n pushParams(target, propertyKey,\r\n { from, index: parameterIndex });\r\n }\r\n };\r\n}\r\nexport class P {\r\n\r\n public static Body(name?: string, type?: any) {\r\n return build('body', name, type);\r\n }\r\n\r\n public static Param(name?: string) {\r\n return build('params', name);\r\n }\r\n\r\n public static Files(name?: string) {\r\n return build('files', name);\r\n }\r\n\r\n public static Headers(name?: string) {\r\n return build('headers', name);\r\n }\r\n\r\n public static Cookies(name?: string) {\r\n return build('cookies', name);\r\n }\r\n\r\n public static Query(name?: string) {\r\n return build('query', name);\r\n }\r\n}\r\n \r\n","export * from './injectable';\r\nexport * from './injector';\r\nexport * from './inject';\r\nexport * from './singleton';","import 'reflect-metadata'\r\nimport { Injector } from './injector';\r\n\r\nexport function Inject(name?: string): any {\r\n return function (target: any, propertyKey: string | symbol, parameterIndex: number) {\r\n const constructorArgs = Reflect.getOwnMetadata('design:paramtypes', target);\r\n const propertyName = getConstructorArgumentsNames(target.prototype.constructor, parameterIndex);\r\n target.prototype[propertyName] = Injector.get(name || constructorArgs[parameterIndex]);\r\n };\r\n}\r\n\r\nfunction getConstructorArgumentsNames(constructor: any, index: number) {\r\n const functionString = constructor.toString();\r\n const params: any = GetArgumentNames(functionString);\r\n return params[index];\r\n}\r\n\r\nconst RegExInsideParentheses = /[(][^)]*[)]/;\r\nconst RegExParenthesesAndSpaces = /[()\\s]/g;\r\nconst GetArgumentNames = (functionString: any) => {\r\n return RegExInsideParentheses.exec(functionString)![0].replace(RegExParenthesesAndSpaces, '').split(',').map(str => str.trim())\r\n}\r\n\r\n\r\n","import 'reflect-metadata'\r\nimport { Injector } from './injector';\r\nconst ANNOTATIONS = '__annotations__';\r\n\r\nexport function Injectable(nameToken?: string) {\r\n function DecoratorFactory(cls: any) {\r\n //use the injectable logic here\r\n Injector.inject(cls, name);\r\n return cls;\r\n }\r\n return DecoratorFactory\r\n}\r\n","import 'reflect-metadata';\r\nconst ANNOTATIONS = '__annotations__';\r\n\r\nexport class Injector {\r\n private static records: { name: string, target: any, deps: any }[] = [];\r\n private static singletons: any = {};\r\n\r\n static inject(target: any, name?: string) {\r\n //use the injectable logic here\r\n const annotations = target.hasOwnProperty(ANNOTATIONS) ?\r\n (target as any)[ANNOTATIONS] :\r\n Object.defineProperty(target, ANNOTATIONS, { value: [] })[ANNOTATIONS];\r\n\r\n const constructorArgs = Reflect.getOwnMetadata('design:paramtypes', target);\r\n\r\n if (target.name!.length > 2) {\r\n name = target.name;\r\n }\r\n Injector.register(name!, target, constructorArgs);\r\n annotations.push('injectable');\r\n }\r\n\r\n static resolveAndCreate(tokens: Array<any>) {\r\n tokens.forEach((target: any) => {\r\n // const annotations = token.hasOwnProperty(ANNOTATIONS);\r\n\r\n let name = target.name;\r\n Injector.records.push({\r\n name,\r\n target,\r\n deps: Reflect.getOwnMetadata('design:paramtypes', target) || []\r\n })\r\n })\r\n return this\r\n }\r\n static register(name: string, target: any, deps: any = []) {\r\n\r\n Injector.records.push({\r\n name,\r\n target,\r\n deps: deps\r\n });\r\n }\r\n static get<T = any>(_token: any): T {\r\n if (!_token) {\r\n return null as any;\r\n }\r\n //some times the token is a string so\r\n let symbol = _token;\r\n if (typeof _token !== 'string') {\r\n symbol = _token.name;\r\n }\r\n\r\n // get the `token` from the record set\r\n const all = Injector.records.filter((record) => {\r\n return record.name === symbol\r\n });\r\n\r\n if (!all || all.length === 0) {\r\n return null as any;\r\n // throw new Error(`Injection token not found ${symbol},\r\n // did you forgot to decorate it with the @Injectible decorator? `)\r\n\r\n }\r\n const record = all[0];\r\n // resolve dependencies into instances\r\n\r\n record.deps = record.deps.map((dep: any) => {\r\n if (dep) {\r\n return Injector.get(dep);\r\n } else {\r\n return null;\r\n }\r\n });\r\n\r\n const annotations = Reflect.getOwnMetadata(ANNOTATIONS, record.target);\r\n if (annotations && annotations.indexOf('singleton') === -1) {\r\n return new record.target(...record.deps);\r\n }\r\n else {\r\n if (!this.singletons[symbol]) {\r\n this.singletons[symbol] = new record.target(...record.deps);\r\n }\r\n return this.singletons[symbol];\r\n }\r\n }\r\n}","import 'reflect-metadata'\r\nconst ANNOTATIONS = '__annotations__';\r\n\r\nexport function Singleton() {\r\n function DecoratorFactory(cls: any) {\r\n\r\n const annotations = cls.hasOwnProperty(ANNOTATIONS) ?\r\n (cls as any)[ANNOTATIONS] :\r\n Object.defineProperty(cls, ANNOTATIONS, { value: [] })[ANNOTATIONS];\r\n\r\n annotations.push('singleton');\r\n return cls;\r\n }\r\n return DecoratorFactory\r\n}\r\n","export * from './decorators';\r\nexport * from './response';\r\nexport * from './transports';\r\nexport * from './commons';\r\nexport * from './di';\r\n","export * from './methodError';\r\nexport * from './methodResult';\r\n\r\n","\r\nexport class MethodError extends Error {\r\n public error: string;\r\n public statusCode: number;\r\n constructor(error: string, statusCode?: number) {\r\n let message = error;\r\n if (typeof error === 'object') {\r\n message = (error as Error).message;\r\n }\r\n super(message);\r\n this.error = error;\r\n this.statusCode = statusCode || 500;\r\n }\r\n}\r\n","export class MethodResult<T= any> {\r\n public result: T;\r\n public stream: any;\r\n public page: any;\r\n public total?: number;\r\n public statusCode?: number;\r\n constructor(result: T, total?: number, page?: number) {\r\n this.result = result;\r\n if (total) {\r\n this.total = total;\r\n }\r\n if (page) {\r\n this.page = page;\r\n }\r\n }\r\n public pipe(streamToPipe: any) {\r\n this.stream = streamToPipe;\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","export * from './rest';\r\n","import { ParamsMap, Verbs } from '../commons';\r\nimport { MethodError } from '../response/methodError';\r\n\r\nexport class Rest {\r\n\r\n public static interceptor: (options: any) => {} | undefined;\r\n public options: any = {};\r\n public request: any;\r\n\r\n constructor(uri: string, verb: Verbs, paramsMap: ParamsMap[], args: any[]) {\r\n this.options.uri = uri;\r\n this.parse(verb, paramsMap, args);\r\n if (Rest.interceptor !== undefined) {\r\n Rest.interceptor(this.options);\r\n }\r\n\r\n this.request = new Request(this.options.uri);\r\n }\r\n public static intercept(interceptor: (options: any) => {}) {\r\n Rest.interceptor = interceptor;\r\n }\r\n\r\n\r\n\r\n public parse(verb: Verbs, paramsMap: ParamsMap[], args: any[]) {\r\n const queryString: any = [];\r\n let body: any = {};\r\n let formData: FormData;\r\n const headers: any = {};\r\n const options = {\r\n cache: 'default',\r\n credentials: 'include',\r\n headers: Object.assign(headers, {\r\n 'Content-Type': 'application/json',\r\n }),\r\n method: verb,\r\n mode: 'cors',\r\n redirect: 'follow',\r\n\r\n };\r\n\r\n\r\n paramsMap.forEach((param: ParamsMap) => {\r\n if (param.index !== undefined && args[param.index] !== undefined) {\r\n switch (param.from) {\r\n case 'params':\r\n if (this.options.uri) {\r\n this.options.uri = this.options.uri.replace(':' + param.name, args[param.index]);\r\n }\r\n break;\r\n case 'query':\r\n if (param.name) {\r\n queryString.push({ name: param.name, value: args[param.index] });\r\n } else {\r\n\r\n const queryObject = args[param.index];\r\n Object.keys(queryObject).forEach((key: string) => {\r\n if (Array.isArray(queryObject[key])) {\r\n queryObject[key].forEach((item: string) => {\r\n queryString.push({ name: key, value: item });\r\n });\r\n } else {\r\n queryString.push({ name: key, value: queryObject[key] });\r\n }\r\n\r\n });\r\n }\r\n break;\r\n\r\n case 'body':\r\n if (param.name) {\r\n body[param.name] = args[param.index];\r\n } else {\r\n Object.assign(body, args[param.index]);\r\n }\r\n\r\n break;\r\n case 'files':\r\n // create a new multipart-form for every file\r\n const formData: FormData = new FormData();\r\n let argus = args[param.index];\r\n if (!Array.isArray(args[param.index])) {\r\n argus = [args[param.index]];\r\n }\r\n\r\n argus.forEach((file: File) => {\r\n formData.append(param.name || 'files', file, file.name);\r\n });\r\n\r\n Object.assign(options, { body: formData });\r\n delete options.headers['Content-Type'];\r\n break;\r\n case 'headers':\r\n if (param.name) {\r\n headers[param.name] = args[param.index];\r\n } else {\r\n Object.assign(headers, args[param.index]);\r\n }\r\n break;\r\n }\r\n }\r\n });\r\n if (queryString.length > 0) {\r\n this.options.uri = this.options.uri + '?' + queryString.map((item: any) => {\r\n if (typeof item.value === 'object') {\r\n return `${item.name}=${encodeURIComponent(JSON.stringify(item.value))}`;\r\n\r\n } else {\r\n return `${item.name}=${encodeURIComponent(item.value)}`;\r\n\r\n }\r\n }).join('&');\r\n }\r\n\r\n if (body && Object.keys(body).length > 0) {\r\n Object.assign(this.options, options, { body: JSON.stringify(body) });\r\n } else {\r\n Object.assign(this.options, options);\r\n }\r\n\r\n return this.options;\r\n }\r\n public async send() {\r\n const response = await fetch(this.request, this.options);\r\n if (response.ok) {\r\n return response.json();\r\n } else {\r\n let errorText = response.statusText;\r\n if (response.body) {\r\n try {\r\n errorText = (await response.json()).error;\r\n } catch{\r\n }\r\n }\r\n throw (new MethodError(errorText, response.status));\r\n }\r\n }\r\n\r\n // public async execute() {\r\n // const response = await fetch(this.request, this.options);\r\n // if (response.ok) {\r\n // return response.json();\r\n // } else {\r\n // throw (new MethodError(response.statusText, response.status));\r\n // }\r\n // }\r\n}\r\n","import { ParamsMap, Verbs } from '../commons';\r\nimport { EventEmitter } from 'events';\r\nlet socket: any = null;\r\nexport class Socket {\r\n\r\n public static interceptor: (options: any) => {} | undefined;\r\n public options: any = {};\r\n public socket: any;\r\n public io: any;\r\n constructor() {\r\n this.io = (window as any).io;\r\n if (!this.io) {\r\n console.warn('not implemented');\r\n\r\n socket = new EventEmitter();\r\n }\r\n if (!socket) {\r\n this.socket = socket = this.io('/', { nsp: '/' }).connect();\r\n } else {\r\n this.socket = socket;\r\n }\r\n }\r\n\r\n public static intercept(interceptor: (options: any) => {}) {\r\n\r\n }\r\n\r\n\r\n\r\n public parse(verb: Verbs, paramsMap: ParamsMap[], args: any[]) {\r\n\r\n }\r\n\r\n public async send(messageName: string, parameters: any) {\r\n return new Promise((resolve) => {\r\n const emition = this.socket.emit(messageName, parameters, (data: any) => {\r\n \r\n });\r\n\r\n resolve(emition);\r\n\r\n });\r\n }\r\n\r\n\r\n public async execute() {\r\n\r\n }\r\n}\r\n"],"sourceRoot":""}
\No newline at end of file