@hyperstackjs/hypernight
Advanced tools
| {"version":3,"file":"class.d.ts","sourceRoot":"","sources":["../../src/decorators/class.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,KAAK,EAAkB,UAAU,IAAI,WAAW,EAAE,MAAM,SAAS,CAAA;AAGxE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAIvD;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAInE;AAED,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,WAAW,GAAG,WAAW,EAAE,GACpC,cAAc,CAQhB;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,WAAW,GAAG,WAAW,EAAE,GACpC,cAAc,CAIhB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,IAAI,CAUN;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,IAAI,CAUN;AAED,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,WAAW,GAAG,WAAW,EAAE,GAC5C,IAAI,CAqBN"} |
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA"} |
| {"version":3,"file":"method.d.ts","sourceRoot":"","sources":["../../src/decorators/method.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,aAAa,EAA+B,MAAM,SAAS,CAAA;AAGzE,wBAAgB,GAAG,CACjB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,QAAQ,CACtB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,IAAI,CAClB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,MAAM,CACpB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,GAAG,CACjB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,IAAI,CAClB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,IAAI,CAClB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,KAAK,CACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,UAAU,CACxB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,KAAK,CACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,IAAI,CAClB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,OAAO,CACrB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,MAAM,CACpB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,OAAO,CACrB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,KAAK,CACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,IAAI,CAClB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,KAAK,CACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,GAAG,CACjB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,MAAM,CACpB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,MAAM,CACpB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,SAAS,CACvB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,KAAK,CACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,MAAM,CACpB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AAED,wBAAgB,WAAW,CACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GACrB,eAAe,GAAG,iBAAiB,CAErC;AA+BD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,GAAG,EAChB,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,MAAM,GAAG,MAAM,GACpB,IAAI,CAoBN"} |
| {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/decorators/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAGV,eAAe,IAAI,gBAAgB,EACnC,UAAU,IAAI,WAAW,EAC1B,MAAM,SAAS,CAAA;AAGhB,wBAAgB,UAAU,CACxB,UAAU,EAAE,WAAW,GAAG,WAAW,EAAE,GACtC,eAAe,GAAG,iBAAiB,CAIrC;AAGD,wBAAgB,eAAe,CAC7B,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,GACrD,eAAe,GAAG,iBAAiB,CAIrC;AAED,wBAAgB,eAAe,CAC7B,UAAU,EAAE,WAAW,GAAG,WAAW,EAAE,GACtC,cAAc,CAIhB;AAED,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,GACrD,cAAc,CAQhB;AAGD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,GAAG,EAChB,WAAW,EAAE,WAAW,GAAG,WAAW,EAAE,GACvC,IAAI,CAkBN;AAGD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,GAAG,EAChB,gBAAgB,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,GACtD,IAAI,CAkBN"} |
| {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/decorators/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,OAAO,EACP,cAAc,EACd,aAAa,EACd,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE3D,oBAAY,UAAU,GAAG,cAAc,CAAA;AACvC,oBAAY,eAAe,GAAG,mBAAmB,CAAA;AACjD,oBAAY,eAAe,GAAG,CAAC,gBAAgB,EAAE,GAAG,KAAK,cAAc,CAAA;AACvE,oBAAY,UAAU,GAAG,GAAG,CAAA;AAC5B,oBAAY,SAAS,GAAG,CAAC,OAAO,CAAC,EAAE,aAAa,KAAK,OAAO,CAAA;AAE5D,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,UAAU,EAAE,CAAA;IACzB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAC1B,OAAO,CAAC,EAAE,eAAe,CAAA;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAA;IAC/B,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,OAAO,CAAC,EAAE,eAAe,CAAA;CAC1B;AAED,eAAO,MAAM,gBAAgB,eAA+B,CAAA;AAE5D,oBAAY,aAAa,GAAG,QAAQ,GAAG,KAAK,CAAA;AAC5C,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,aAAa,CAAA;IAC5B,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB;AAED,oBAAY,QAAQ;IAClB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,OAAO,aAAa;IACpB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,WAAW,gBAAgB;CAC5B"} |
| {"version":3,"file":"wrapper.d.ts","sourceRoot":"","sources":["../../src/decorators/wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAmC,eAAe,EAAE,MAAM,SAAS,CAAA;AAG/E,wBAAgB,OAAO,CACrB,OAAO,EAAE,eAAe,GACvB,eAAe,GAAG,iBAAiB,CAIrC;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAIrE;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,GAAG,EAChB,OAAO,EAAE,eAAe,GACvB,IAAI,CAQN"} |
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA"} |
| {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AAIzB,OAAO,KAAK,EACV,WAAW,EAIX,cAAc,EAEf,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EACV,UAAU,EAKV,SAAS,EACV,MAAM,oBAAoB,CAAA;AAQ3B,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,SAAS,CAAQ;IAEzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAmC;gBAEtD,QAAQ,CAAC,EAAE,OAAO;IAM9B,IAAW,GAAG,IAAI,WAAW,CAE5B;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAEpC;IAED;;;;;;;;OAQG;IACI,cAAc,CACnB,WAAW,EAAE,UAAU,GAAG,UAAU,EAAE,EACtC,SAAS,CAAC,EAAE,SAAS,EACrB,gBAAgB,CAAC,EAAE,cAAc,GAChC,IAAI;IAyBP,OAAO,CAAC,mBAAmB;IAa3B;;;;;OAKG;IACH,OAAO,CAAC,SAAS;CAwGlB"} |
+16
-483
@@ -1,485 +0,18 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/index.ts | ||
| var src_exports = {}; | ||
| __export(src_exports, { | ||
| All: () => All, | ||
| Checkout: () => Checkout, | ||
| ChildControllers: () => ChildControllers, | ||
| Children: () => Children, | ||
| ClassErrorMiddleware: () => ClassErrorMiddleware, | ||
| ClassMiddleware: () => ClassMiddleware, | ||
| ClassOptions: () => ClassOptions, | ||
| ClassWrapper: () => ClassWrapper, | ||
| Controller: () => Controller, | ||
| Copy: () => Copy, | ||
| Delete: () => Delete, | ||
| ErrorMiddleware: () => ErrorMiddleware, | ||
| Get: () => Get, | ||
| Head: () => Head, | ||
| Lock: () => Lock, | ||
| MSearch: () => MSearch, | ||
| Merge: () => Merge, | ||
| Middleware: () => Middleware, | ||
| Mkactivity: () => Mkactivity, | ||
| Mkcol: () => Mkcol, | ||
| Move: () => Move, | ||
| Notify: () => Notify, | ||
| Options: () => Options, | ||
| Patch: () => Patch, | ||
| Post: () => Post, | ||
| Purge: () => Purge, | ||
| Put: () => Put, | ||
| Report: () => Report, | ||
| Search: () => Search, | ||
| Server: () => Server, | ||
| Subscribe: () => Subscribe, | ||
| Trace: () => Trace, | ||
| Unlock: () => Unlock, | ||
| Unsubscribe: () => Unsubscribe, | ||
| Wrapper: () => Wrapper, | ||
| addBasePathToClassMetadata: () => addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata: () => addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata: () => addClassOptionsToClassMetadata, | ||
| addErrorMiddlewareToMetadata: () => addErrorMiddlewareToMetadata, | ||
| addHttpVerbToMethodMetadata: () => addHttpVerbToMethodMetadata, | ||
| addMiddlewareToMetadata: () => addMiddlewareToMetadata, | ||
| addWrapperToMetadata: () => addWrapperToMetadata | ||
| }); | ||
| module.exports = __toCommonJS(src_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/class.ts | ||
| function Controller(path) { | ||
| return (target) => { | ||
| addBasePathToClassMetadata(target.prototype, `/${path}`); | ||
| }; | ||
| } | ||
| function ClassOptions(options) { | ||
| return (target) => { | ||
| addClassOptionsToClassMetadata(target.prototype, options); | ||
| }; | ||
| } | ||
| function Children(children) { | ||
| console.log("Warning: @Children decorator is deprecated. Use ChildControllers instead."); | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| function ChildControllers(children) { | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| function addBasePathToClassMetadata(target, basePath) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.basePath = basePath; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| function addClassOptionsToClassMetadata(target, options) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.options = options; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| function addChildControllersToClassMetadata(target, childControllers) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.childControllers) { | ||
| metadata.childControllers = []; | ||
| } | ||
| let newArr; | ||
| if (childControllers instanceof Array) { | ||
| newArr = childControllers.slice(); | ||
| } else { | ||
| newArr = [childControllers]; | ||
| } | ||
| newArr.push(...metadata.childControllers); | ||
| metadata.childControllers = newArr; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| // src/decorators/method.ts | ||
| function All(path) { | ||
| return helperForRoutes("all", path); | ||
| } | ||
| function Checkout(path) { | ||
| return helperForRoutes("checkout" /* CHECKOUT */, path); | ||
| } | ||
| function Copy(path) { | ||
| return helperForRoutes("copy" /* COPY */, path); | ||
| } | ||
| function Delete(path) { | ||
| return helperForRoutes("delete" /* DELETE */, path); | ||
| } | ||
| function Get(path) { | ||
| return helperForRoutes("get" /* GET */, path); | ||
| } | ||
| function Head(path) { | ||
| return helperForRoutes("head" /* HEAD */, path); | ||
| } | ||
| function Lock(path) { | ||
| return helperForRoutes("lock" /* LOCK */, path); | ||
| } | ||
| function Merge(path) { | ||
| return helperForRoutes("merge" /* MERGE */, path); | ||
| } | ||
| function Mkactivity(path) { | ||
| return helperForRoutes("mkactivity" /* MKACTIVITY */, path); | ||
| } | ||
| function Mkcol(path) { | ||
| return helperForRoutes("mkcol" /* MKCOL */, path); | ||
| } | ||
| function Move(path) { | ||
| return helperForRoutes("move" /* MOVE */, path); | ||
| } | ||
| function MSearch(path) { | ||
| return helperForRoutes("m-search" /* MSEARCH */, path); | ||
| } | ||
| function Notify(path) { | ||
| return helperForRoutes("notify" /* NOTIFY */, path); | ||
| } | ||
| function Options(path) { | ||
| return helperForRoutes("options" /* OPTIONS */, path); | ||
| } | ||
| function Patch(path) { | ||
| return helperForRoutes("patch" /* PATCH */, path); | ||
| } | ||
| function Post(path) { | ||
| return helperForRoutes("post" /* POST */, path); | ||
| } | ||
| function Purge(path) { | ||
| return helperForRoutes("purge" /* PURGE */, path); | ||
| } | ||
| function Put(path) { | ||
| return helperForRoutes("put" /* PUT */, path); | ||
| } | ||
| function Report(path) { | ||
| return helperForRoutes("report" /* REPORT */, path); | ||
| } | ||
| function Search(path) { | ||
| return helperForRoutes("search" /* SEARCH */, path); | ||
| } | ||
| function Subscribe(path) { | ||
| return helperForRoutes("subscribe" /* SUBSCRIBE */, path); | ||
| } | ||
| function Trace(path) { | ||
| return helperForRoutes("trace" /* TRACE */, path); | ||
| } | ||
| function Unlock(path) { | ||
| return helperForRoutes("unlock" /* UNLOCK */, path); | ||
| } | ||
| function Unsubscribe(path) { | ||
| return helperForRoutes("unsubscribe" /* UNSUBSCRIBE */, path); | ||
| } | ||
| function helperForRoutes(httpVerb, path) { | ||
| return (target, propertyKey) => { | ||
| let newPath; | ||
| if (path === void 0) { | ||
| newPath = ""; | ||
| } else if (path instanceof RegExp) { | ||
| newPath = addForwardSlashToFrontOfRegex(path); | ||
| } else { | ||
| newPath = `/${path}`; | ||
| "use strict"; | ||
| var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
| if (k2 === undefined) k2 = k; | ||
| var desc = Object.getOwnPropertyDescriptor(m, k); | ||
| if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
| desc = { enumerable: true, get: function() { return m[k]; } }; | ||
| } | ||
| addHttpVerbToMethodMetadata(target, propertyKey, httpVerb, newPath); | ||
| }; | ||
| } | ||
| function addForwardSlashToFrontOfRegex(regex) { | ||
| if (regex.toString().charAt(1) === "^") { | ||
| return RegExp(`/${regex.toString().slice(2).replace(/\/$/, "")}`); | ||
| } else { | ||
| return new RegExp(`/.*${regex.toString().slice(1).replace(/\/$/, "")}`); | ||
| } | ||
| } | ||
| function addHttpVerbToMethodMetadata(target, metadataKey, httpDecorator, path) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.httpRoutes) { | ||
| metadata.httpRoutes = []; | ||
| } | ||
| const newArr = [ | ||
| { | ||
| httpDecorator, | ||
| path | ||
| } | ||
| ]; | ||
| newArr.push(...metadata.httpRoutes); | ||
| metadata.httpRoutes = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/decorators/middleware.ts | ||
| function Middleware(middleware) { | ||
| return (target, propertyKey) => { | ||
| addMiddlewareToMetadata(target, propertyKey, middleware); | ||
| }; | ||
| } | ||
| function ErrorMiddleware(errorMiddleware) { | ||
| return (target, propertyKey) => { | ||
| addErrorMiddlewareToMetadata(target, propertyKey, errorMiddleware); | ||
| }; | ||
| } | ||
| function ClassMiddleware(middleware) { | ||
| return (target) => { | ||
| addMiddlewareToMetadata(target.prototype, classMetadataKey, middleware); | ||
| }; | ||
| } | ||
| function ClassErrorMiddleware(errorMiddleware) { | ||
| return (target) => { | ||
| addErrorMiddlewareToMetadata(target.prototype, classMetadataKey, errorMiddleware); | ||
| }; | ||
| } | ||
| function addMiddlewareToMetadata(target, metadataKey, middlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.middlewares) { | ||
| metadata.middlewares = []; | ||
| } | ||
| let newArr; | ||
| if (middlewares instanceof Array) { | ||
| newArr = middlewares.slice(); | ||
| } else { | ||
| newArr = [middlewares]; | ||
| } | ||
| newArr.push(...metadata.middlewares); | ||
| metadata.middlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| function addErrorMiddlewareToMetadata(target, metadataKey, errorMiddlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.errorMiddlewares) { | ||
| metadata.errorMiddlewares = []; | ||
| } | ||
| let newArr; | ||
| if (errorMiddlewares instanceof Array) { | ||
| newArr = errorMiddlewares.slice(); | ||
| } else { | ||
| newArr = [errorMiddlewares]; | ||
| } | ||
| newArr.push(...metadata.errorMiddlewares); | ||
| metadata.errorMiddlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/decorators/wrapper.ts | ||
| function Wrapper(wrapper) { | ||
| return (target, propertyKey) => { | ||
| addWrapperToMetadata(target, propertyKey, wrapper); | ||
| }; | ||
| } | ||
| function ClassWrapper(wrapper) { | ||
| return (target) => { | ||
| addWrapperToMetadata(target.prototype, classMetadataKey, wrapper); | ||
| }; | ||
| } | ||
| function addWrapperToMetadata(target, metadataKey, wrapper) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.wrapper = wrapper; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/Server.ts | ||
| var import_reflect_metadata = require("reflect-metadata"); | ||
| var _Server = class { | ||
| constructor(showLogs) { | ||
| this._showLogs = false; | ||
| const express = require("express"); | ||
| this._app = express(); | ||
| this._showLogs = showLogs || false; | ||
| } | ||
| get app() { | ||
| return this._app; | ||
| } | ||
| get showLogs() { | ||
| return this._showLogs; | ||
| } | ||
| set showLogs(showLogs) { | ||
| this._showLogs = showLogs; | ||
| } | ||
| addControllers(controllers, routerLib, globalMiddleware) { | ||
| controllers = Array.isArray(controllers) ? controllers : [controllers]; | ||
| const { Router } = require("express"); | ||
| const routerLibrary = routerLib || Router; | ||
| controllers.forEach((controller) => { | ||
| if (controller) { | ||
| const routerAndPath = this.getRouter(routerLibrary, controller); | ||
| if (routerAndPath) { | ||
| if (globalMiddleware) { | ||
| this.app.use(routerAndPath.basePath, globalMiddleware, routerAndPath.router); | ||
| } else { | ||
| this.app.use(routerAndPath.basePath, routerAndPath.router); | ||
| } | ||
| } | ||
| } | ||
| }); | ||
| } | ||
| wrapErrorMiddleware(errorMiddleware, requestHandler) { | ||
| return (req, res, next) => { | ||
| try { | ||
| requestHandler(req, res, next); | ||
| } catch (error) { | ||
| errorMiddleware(error, req, res, next); | ||
| } | ||
| }; | ||
| } | ||
| getRouter(routerLibrary, controller) { | ||
| const prototype = Object.getPrototypeOf(controller); | ||
| const classMetadata = Reflect.getOwnMetadata(classMetadataKey, prototype); | ||
| if (!classMetadata) { | ||
| return null; | ||
| } | ||
| const { | ||
| basePath, | ||
| childControllers: children, | ||
| errorMiddlewares: classErrorMiddleware, | ||
| middlewares: classMiddleware, | ||
| options, | ||
| wrapper: classWrapper | ||
| } = classMetadata; | ||
| if (!basePath) { | ||
| return null; | ||
| } | ||
| const router = routerLibrary(options); | ||
| if (this.showLogs) { | ||
| console.log(`${_Server.LOG_STR} "${controller.constructor.name}"`); | ||
| } | ||
| if (classMiddleware) { | ||
| router.use(classMiddleware); | ||
| } | ||
| let members = Object.getOwnPropertyNames(controller); | ||
| members = members.concat(Object.getOwnPropertyNames(prototype)); | ||
| members.forEach((member) => { | ||
| const methodMetadata = Reflect.getOwnMetadata(member, prototype); | ||
| if (methodMetadata) { | ||
| const { | ||
| httpRoutes, | ||
| middlewares, | ||
| errorMiddlewares, | ||
| wrapper | ||
| } = methodMetadata; | ||
| let callBack = (...args) => { | ||
| return controller[member](...args); | ||
| }; | ||
| if (classWrapper) { | ||
| callBack = classWrapper(callBack); | ||
| } | ||
| if (wrapper) { | ||
| callBack = wrapper(callBack); | ||
| } | ||
| if (errorMiddlewares) { | ||
| errorMiddlewares.forEach((errorMiddleware) => { | ||
| callBack = this.wrapErrorMiddleware(errorMiddleware, callBack); | ||
| }); | ||
| } | ||
| if (httpRoutes) { | ||
| httpRoutes.forEach((route) => { | ||
| const { httpDecorator, path } = route; | ||
| if (middlewares) { | ||
| router[httpDecorator](path, middlewares, callBack); | ||
| } else { | ||
| router[httpDecorator](path, callBack); | ||
| } | ||
| }); | ||
| } | ||
| } | ||
| }); | ||
| if (children) { | ||
| children.forEach((child) => { | ||
| const childRouterAndPath = this.getRouter(routerLibrary, child); | ||
| if (childRouterAndPath) { | ||
| router.use(childRouterAndPath.basePath, childRouterAndPath.router); | ||
| } | ||
| }); | ||
| } | ||
| if (classErrorMiddleware) { | ||
| router.use(classErrorMiddleware); | ||
| } | ||
| return { | ||
| basePath, | ||
| router | ||
| }; | ||
| } | ||
| Object.defineProperty(o, k2, desc); | ||
| }) : (function(o, m, k, k2) { | ||
| if (k2 === undefined) k2 = k; | ||
| o[k2] = m[k]; | ||
| })); | ||
| var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
| for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
| }; | ||
| var Server = _Server; | ||
| Server.LOG_STR = "Setting up controller:"; | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| All, | ||
| Checkout, | ||
| ChildControllers, | ||
| Children, | ||
| ClassErrorMiddleware, | ||
| ClassMiddleware, | ||
| ClassOptions, | ||
| ClassWrapper, | ||
| Controller, | ||
| Copy, | ||
| Delete, | ||
| ErrorMiddleware, | ||
| Get, | ||
| Head, | ||
| Lock, | ||
| MSearch, | ||
| Merge, | ||
| Middleware, | ||
| Mkactivity, | ||
| Mkcol, | ||
| Move, | ||
| Notify, | ||
| Options, | ||
| Patch, | ||
| Post, | ||
| Purge, | ||
| Put, | ||
| Report, | ||
| Search, | ||
| Server, | ||
| Subscribe, | ||
| Trace, | ||
| Unlock, | ||
| Unsubscribe, | ||
| Wrapper, | ||
| addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata, | ||
| addErrorMiddlewareToMetadata, | ||
| addHttpVerbToMethodMetadata, | ||
| addMiddlewareToMetadata, | ||
| addWrapperToMetadata | ||
| }); | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| __exportStar(require("./decorators"), exports); | ||
| __exportStar(require("./Server"), exports); |
@@ -1,13 +0,11 @@ | ||
| import { RouterOptions } from 'express'; | ||
| import { Controller as Controller$1 } from './types.js'; | ||
| import 'express-serve-static-core'; | ||
| declare function Controller(path: string): ClassDecorator; | ||
| declare function ClassOptions(options: RouterOptions): ClassDecorator; | ||
| declare function Children(children: Controller$1 | Controller$1[]): ClassDecorator; | ||
| declare function ChildControllers(children: Controller$1 | Controller$1[]): ClassDecorator; | ||
| declare function addBasePathToClassMetadata(target: Object, basePath: string): void; | ||
| declare function addClassOptionsToClassMetadata(target: Object, options: RouterOptions): void; | ||
| declare function addChildControllersToClassMetadata(target: Object, childControllers: Controller$1 | Controller$1[]): void; | ||
| export { ChildControllers, Children, ClassOptions, Controller, addBasePathToClassMetadata, addChildControllersToClassMetadata, addClassOptionsToClassMetadata }; | ||
| import 'reflect-metadata'; | ||
| import type { RouterOptions } from 'express'; | ||
| import type { Controller as TController } from './types'; | ||
| export declare function Controller(path: string): ClassDecorator; | ||
| export declare function ClassOptions(options: RouterOptions): ClassDecorator; | ||
| export declare function Children(children: TController | TController[]): ClassDecorator; | ||
| export declare function ChildControllers(children: TController | TController[]): ClassDecorator; | ||
| export declare function addBasePathToClassMetadata(target: Object, basePath: string): void; | ||
| export declare function addClassOptionsToClassMetadata(target: Object, options: RouterOptions): void; | ||
| export declare function addChildControllersToClassMetadata(target: Object, childControllers: TController | TController[]): void; | ||
| //# sourceMappingURL=class.d.ts.map |
+55
-86
@@ -1,100 +0,69 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/decorators/class.ts | ||
| var class_exports = {}; | ||
| __export(class_exports, { | ||
| ChildControllers: () => ChildControllers, | ||
| Children: () => Children, | ||
| ClassOptions: () => ClassOptions, | ||
| Controller: () => Controller, | ||
| addBasePathToClassMetadata: () => addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata: () => addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata: () => addClassOptionsToClassMetadata | ||
| }); | ||
| module.exports = __toCommonJS(class_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/class.ts | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.addChildControllersToClassMetadata = exports.addClassOptionsToClassMetadata = exports.addBasePathToClassMetadata = exports.ChildControllers = exports.Children = exports.ClassOptions = exports.Controller = void 0; | ||
| require("reflect-metadata"); | ||
| const types_1 = require("./types"); | ||
| function Controller(path) { | ||
| return (target) => { | ||
| addBasePathToClassMetadata(target.prototype, `/${path}`); | ||
| }; | ||
| return (target) => { | ||
| addBasePathToClassMetadata(target.prototype, `/${path}`); | ||
| }; | ||
| } | ||
| exports.Controller = Controller; | ||
| function ClassOptions(options) { | ||
| return (target) => { | ||
| addClassOptionsToClassMetadata(target.prototype, options); | ||
| }; | ||
| return (target) => { | ||
| addClassOptionsToClassMetadata(target.prototype, options); | ||
| }; | ||
| } | ||
| exports.ClassOptions = ClassOptions; | ||
| function Children(children) { | ||
| console.log("Warning: @Children decorator is deprecated. Use ChildControllers instead."); | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| // eslint-disable-next-line no-console | ||
| console.log('Warning: @Children decorator is deprecated. Use ChildControllers instead.'); | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| exports.Children = Children; | ||
| function ChildControllers(children) { | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| exports.ChildControllers = ChildControllers; | ||
| function addBasePathToClassMetadata(target, basePath) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.basePath = basePath; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| let metadata = Reflect.getOwnMetadata(types_1.classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.basePath = basePath; | ||
| Reflect.defineMetadata(types_1.classMetadataKey, metadata, target); | ||
| } | ||
| exports.addBasePathToClassMetadata = addBasePathToClassMetadata; | ||
| function addClassOptionsToClassMetadata(target, options) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.options = options; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| let metadata = Reflect.getOwnMetadata(types_1.classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.options = options; | ||
| Reflect.defineMetadata(types_1.classMetadataKey, metadata, target); | ||
| } | ||
| exports.addClassOptionsToClassMetadata = addClassOptionsToClassMetadata; | ||
| function addChildControllersToClassMetadata(target, childControllers) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.childControllers) { | ||
| metadata.childControllers = []; | ||
| } | ||
| let newArr; | ||
| if (childControllers instanceof Array) { | ||
| newArr = childControllers.slice(); | ||
| } else { | ||
| newArr = [childControllers]; | ||
| } | ||
| newArr.push(...metadata.childControllers); | ||
| metadata.childControllers = newArr; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| let metadata = Reflect.getOwnMetadata(types_1.classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.childControllers) { | ||
| metadata.childControllers = []; | ||
| } | ||
| let newArr; | ||
| if (childControllers instanceof Array) { | ||
| newArr = childControllers.slice(); | ||
| } | ||
| else { | ||
| newArr = [childControllers]; | ||
| } | ||
| newArr.push(...metadata.childControllers); | ||
| metadata.childControllers = newArr; | ||
| Reflect.defineMetadata(types_1.classMetadataKey, metadata, target); | ||
| } | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| ChildControllers, | ||
| Children, | ||
| ClassOptions, | ||
| Controller, | ||
| addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata | ||
| }); | ||
| exports.addChildControllersToClassMetadata = addChildControllersToClassMetadata; |
@@ -1,7 +0,5 @@ | ||
| export { ChildControllers, Children, ClassOptions, Controller, addBasePathToClassMetadata, addChildControllersToClassMetadata, addClassOptionsToClassMetadata } from './class.js'; | ||
| export { All, Checkout, Copy, Delete, Get, Head, Lock, MSearch, Merge, Mkactivity, Mkcol, Move, Notify, Options, Patch, Post, Purge, Put, Report, Search, Subscribe, Trace, Unlock, Unsubscribe, addHttpVerbToMethodMetadata } from './method.js'; | ||
| export { ClassErrorMiddleware, ClassMiddleware, ErrorMiddleware, Middleware, addErrorMiddlewareToMetadata, addMiddlewareToMetadata } from './middleware.js'; | ||
| export { ClassWrapper, Wrapper, addWrapperToMetadata } from './wrapper.js'; | ||
| import 'express'; | ||
| import './types.js'; | ||
| import 'express-serve-static-core'; | ||
| export * from './class'; | ||
| export * from './method'; | ||
| export * from './middleware'; | ||
| export * from './wrapper'; | ||
| //# sourceMappingURL=index.d.ts.map |
+19
-357
@@ -1,358 +0,20 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| "use strict"; | ||
| var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
| if (k2 === undefined) k2 = k; | ||
| var desc = Object.getOwnPropertyDescriptor(m, k); | ||
| if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
| desc = { enumerable: true, get: function() { return m[k]; } }; | ||
| } | ||
| Object.defineProperty(o, k2, desc); | ||
| }) : (function(o, m, k, k2) { | ||
| if (k2 === undefined) k2 = k; | ||
| o[k2] = m[k]; | ||
| })); | ||
| var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
| for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/decorators/index.ts | ||
| var decorators_exports = {}; | ||
| __export(decorators_exports, { | ||
| All: () => All, | ||
| Checkout: () => Checkout, | ||
| ChildControllers: () => ChildControllers, | ||
| Children: () => Children, | ||
| ClassErrorMiddleware: () => ClassErrorMiddleware, | ||
| ClassMiddleware: () => ClassMiddleware, | ||
| ClassOptions: () => ClassOptions, | ||
| ClassWrapper: () => ClassWrapper, | ||
| Controller: () => Controller, | ||
| Copy: () => Copy, | ||
| Delete: () => Delete, | ||
| ErrorMiddleware: () => ErrorMiddleware, | ||
| Get: () => Get, | ||
| Head: () => Head, | ||
| Lock: () => Lock, | ||
| MSearch: () => MSearch, | ||
| Merge: () => Merge, | ||
| Middleware: () => Middleware, | ||
| Mkactivity: () => Mkactivity, | ||
| Mkcol: () => Mkcol, | ||
| Move: () => Move, | ||
| Notify: () => Notify, | ||
| Options: () => Options, | ||
| Patch: () => Patch, | ||
| Post: () => Post, | ||
| Purge: () => Purge, | ||
| Put: () => Put, | ||
| Report: () => Report, | ||
| Search: () => Search, | ||
| Subscribe: () => Subscribe, | ||
| Trace: () => Trace, | ||
| Unlock: () => Unlock, | ||
| Unsubscribe: () => Unsubscribe, | ||
| Wrapper: () => Wrapper, | ||
| addBasePathToClassMetadata: () => addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata: () => addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata: () => addClassOptionsToClassMetadata, | ||
| addErrorMiddlewareToMetadata: () => addErrorMiddlewareToMetadata, | ||
| addHttpVerbToMethodMetadata: () => addHttpVerbToMethodMetadata, | ||
| addMiddlewareToMetadata: () => addMiddlewareToMetadata, | ||
| addWrapperToMetadata: () => addWrapperToMetadata | ||
| }); | ||
| module.exports = __toCommonJS(decorators_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/class.ts | ||
| function Controller(path) { | ||
| return (target) => { | ||
| addBasePathToClassMetadata(target.prototype, `/${path}`); | ||
| }; | ||
| } | ||
| function ClassOptions(options) { | ||
| return (target) => { | ||
| addClassOptionsToClassMetadata(target.prototype, options); | ||
| }; | ||
| } | ||
| function Children(children) { | ||
| console.log("Warning: @Children decorator is deprecated. Use ChildControllers instead."); | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| function ChildControllers(children) { | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| function addBasePathToClassMetadata(target, basePath) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.basePath = basePath; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| function addClassOptionsToClassMetadata(target, options) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.options = options; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| function addChildControllersToClassMetadata(target, childControllers) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.childControllers) { | ||
| metadata.childControllers = []; | ||
| } | ||
| let newArr; | ||
| if (childControllers instanceof Array) { | ||
| newArr = childControllers.slice(); | ||
| } else { | ||
| newArr = [childControllers]; | ||
| } | ||
| newArr.push(...metadata.childControllers); | ||
| metadata.childControllers = newArr; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| // src/decorators/method.ts | ||
| function All(path) { | ||
| return helperForRoutes("all", path); | ||
| } | ||
| function Checkout(path) { | ||
| return helperForRoutes("checkout" /* CHECKOUT */, path); | ||
| } | ||
| function Copy(path) { | ||
| return helperForRoutes("copy" /* COPY */, path); | ||
| } | ||
| function Delete(path) { | ||
| return helperForRoutes("delete" /* DELETE */, path); | ||
| } | ||
| function Get(path) { | ||
| return helperForRoutes("get" /* GET */, path); | ||
| } | ||
| function Head(path) { | ||
| return helperForRoutes("head" /* HEAD */, path); | ||
| } | ||
| function Lock(path) { | ||
| return helperForRoutes("lock" /* LOCK */, path); | ||
| } | ||
| function Merge(path) { | ||
| return helperForRoutes("merge" /* MERGE */, path); | ||
| } | ||
| function Mkactivity(path) { | ||
| return helperForRoutes("mkactivity" /* MKACTIVITY */, path); | ||
| } | ||
| function Mkcol(path) { | ||
| return helperForRoutes("mkcol" /* MKCOL */, path); | ||
| } | ||
| function Move(path) { | ||
| return helperForRoutes("move" /* MOVE */, path); | ||
| } | ||
| function MSearch(path) { | ||
| return helperForRoutes("m-search" /* MSEARCH */, path); | ||
| } | ||
| function Notify(path) { | ||
| return helperForRoutes("notify" /* NOTIFY */, path); | ||
| } | ||
| function Options(path) { | ||
| return helperForRoutes("options" /* OPTIONS */, path); | ||
| } | ||
| function Patch(path) { | ||
| return helperForRoutes("patch" /* PATCH */, path); | ||
| } | ||
| function Post(path) { | ||
| return helperForRoutes("post" /* POST */, path); | ||
| } | ||
| function Purge(path) { | ||
| return helperForRoutes("purge" /* PURGE */, path); | ||
| } | ||
| function Put(path) { | ||
| return helperForRoutes("put" /* PUT */, path); | ||
| } | ||
| function Report(path) { | ||
| return helperForRoutes("report" /* REPORT */, path); | ||
| } | ||
| function Search(path) { | ||
| return helperForRoutes("search" /* SEARCH */, path); | ||
| } | ||
| function Subscribe(path) { | ||
| return helperForRoutes("subscribe" /* SUBSCRIBE */, path); | ||
| } | ||
| function Trace(path) { | ||
| return helperForRoutes("trace" /* TRACE */, path); | ||
| } | ||
| function Unlock(path) { | ||
| return helperForRoutes("unlock" /* UNLOCK */, path); | ||
| } | ||
| function Unsubscribe(path) { | ||
| return helperForRoutes("unsubscribe" /* UNSUBSCRIBE */, path); | ||
| } | ||
| function helperForRoutes(httpVerb, path) { | ||
| return (target, propertyKey) => { | ||
| let newPath; | ||
| if (path === void 0) { | ||
| newPath = ""; | ||
| } else if (path instanceof RegExp) { | ||
| newPath = addForwardSlashToFrontOfRegex(path); | ||
| } else { | ||
| newPath = `/${path}`; | ||
| } | ||
| addHttpVerbToMethodMetadata(target, propertyKey, httpVerb, newPath); | ||
| }; | ||
| } | ||
| function addForwardSlashToFrontOfRegex(regex) { | ||
| if (regex.toString().charAt(1) === "^") { | ||
| return RegExp(`/${regex.toString().slice(2).replace(/\/$/, "")}`); | ||
| } else { | ||
| return new RegExp(`/.*${regex.toString().slice(1).replace(/\/$/, "")}`); | ||
| } | ||
| } | ||
| function addHttpVerbToMethodMetadata(target, metadataKey, httpDecorator, path) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.httpRoutes) { | ||
| metadata.httpRoutes = []; | ||
| } | ||
| const newArr = [ | ||
| { | ||
| httpDecorator, | ||
| path | ||
| } | ||
| ]; | ||
| newArr.push(...metadata.httpRoutes); | ||
| metadata.httpRoutes = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/decorators/middleware.ts | ||
| function Middleware(middleware) { | ||
| return (target, propertyKey) => { | ||
| addMiddlewareToMetadata(target, propertyKey, middleware); | ||
| }; | ||
| } | ||
| function ErrorMiddleware(errorMiddleware) { | ||
| return (target, propertyKey) => { | ||
| addErrorMiddlewareToMetadata(target, propertyKey, errorMiddleware); | ||
| }; | ||
| } | ||
| function ClassMiddleware(middleware) { | ||
| return (target) => { | ||
| addMiddlewareToMetadata(target.prototype, classMetadataKey, middleware); | ||
| }; | ||
| } | ||
| function ClassErrorMiddleware(errorMiddleware) { | ||
| return (target) => { | ||
| addErrorMiddlewareToMetadata(target.prototype, classMetadataKey, errorMiddleware); | ||
| }; | ||
| } | ||
| function addMiddlewareToMetadata(target, metadataKey, middlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.middlewares) { | ||
| metadata.middlewares = []; | ||
| } | ||
| let newArr; | ||
| if (middlewares instanceof Array) { | ||
| newArr = middlewares.slice(); | ||
| } else { | ||
| newArr = [middlewares]; | ||
| } | ||
| newArr.push(...metadata.middlewares); | ||
| metadata.middlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| function addErrorMiddlewareToMetadata(target, metadataKey, errorMiddlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.errorMiddlewares) { | ||
| metadata.errorMiddlewares = []; | ||
| } | ||
| let newArr; | ||
| if (errorMiddlewares instanceof Array) { | ||
| newArr = errorMiddlewares.slice(); | ||
| } else { | ||
| newArr = [errorMiddlewares]; | ||
| } | ||
| newArr.push(...metadata.errorMiddlewares); | ||
| metadata.errorMiddlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/decorators/wrapper.ts | ||
| function Wrapper(wrapper) { | ||
| return (target, propertyKey) => { | ||
| addWrapperToMetadata(target, propertyKey, wrapper); | ||
| }; | ||
| } | ||
| function ClassWrapper(wrapper) { | ||
| return (target) => { | ||
| addWrapperToMetadata(target.prototype, classMetadataKey, wrapper); | ||
| }; | ||
| } | ||
| function addWrapperToMetadata(target, metadataKey, wrapper) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.wrapper = wrapper; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| All, | ||
| Checkout, | ||
| ChildControllers, | ||
| Children, | ||
| ClassErrorMiddleware, | ||
| ClassMiddleware, | ||
| ClassOptions, | ||
| ClassWrapper, | ||
| Controller, | ||
| Copy, | ||
| Delete, | ||
| ErrorMiddleware, | ||
| Get, | ||
| Head, | ||
| Lock, | ||
| MSearch, | ||
| Merge, | ||
| Middleware, | ||
| Mkactivity, | ||
| Mkcol, | ||
| Move, | ||
| Notify, | ||
| Options, | ||
| Patch, | ||
| Post, | ||
| Purge, | ||
| Put, | ||
| Report, | ||
| Search, | ||
| Subscribe, | ||
| Trace, | ||
| Unlock, | ||
| Unsubscribe, | ||
| Wrapper, | ||
| addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata, | ||
| addErrorMiddlewareToMetadata, | ||
| addHttpVerbToMethodMetadata, | ||
| addMiddlewareToMetadata, | ||
| addWrapperToMetadata | ||
| }); | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| __exportStar(require("./class"), exports); | ||
| __exportStar(require("./method"), exports); | ||
| __exportStar(require("./middleware"), exports); | ||
| __exportStar(require("./wrapper"), exports); |
@@ -1,31 +0,28 @@ | ||
| import { HttpDecorator } from './types.js'; | ||
| import 'express'; | ||
| import 'express-serve-static-core'; | ||
| declare function All(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Checkout(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Copy(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Delete(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Get(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Head(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Lock(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Merge(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Mkactivity(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Mkcol(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Move(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function MSearch(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Notify(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Options(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Patch(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Post(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Purge(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Put(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Report(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Search(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Subscribe(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Trace(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Unlock(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function Unsubscribe(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| declare function addHttpVerbToMethodMetadata(target: Object, metadataKey: any, httpDecorator: HttpDecorator, path: string | RegExp): void; | ||
| export { All, Checkout, Copy, Delete, Get, Head, Lock, MSearch, Merge, Mkactivity, Mkcol, Move, Notify, Options, Patch, Post, Purge, Put, Report, Search, Subscribe, Trace, Unlock, Unsubscribe, addHttpVerbToMethodMetadata }; | ||
| import 'reflect-metadata'; | ||
| import type { HttpDecorator } from './types'; | ||
| export declare function All(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Checkout(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Copy(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Delete(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Get(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Head(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Lock(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Merge(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Mkactivity(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Mkcol(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Move(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function MSearch(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Notify(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Options(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Patch(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Post(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Purge(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Put(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Report(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Search(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Subscribe(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Trace(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Unlock(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function Unsubscribe(path?: string | RegExp): MethodDecorator & PropertyDecorator; | ||
| export declare function addHttpVerbToMethodMetadata(target: Object, metadataKey: any, httpDecorator: HttpDecorator, path: string | RegExp): void; | ||
| //# sourceMappingURL=method.d.ts.map |
+92
-136
@@ -1,191 +0,147 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/decorators/method.ts | ||
| var method_exports = {}; | ||
| __export(method_exports, { | ||
| All: () => All, | ||
| Checkout: () => Checkout, | ||
| Copy: () => Copy, | ||
| Delete: () => Delete, | ||
| Get: () => Get, | ||
| Head: () => Head, | ||
| Lock: () => Lock, | ||
| MSearch: () => MSearch, | ||
| Merge: () => Merge, | ||
| Mkactivity: () => Mkactivity, | ||
| Mkcol: () => Mkcol, | ||
| Move: () => Move, | ||
| Notify: () => Notify, | ||
| Options: () => Options, | ||
| Patch: () => Patch, | ||
| Post: () => Post, | ||
| Purge: () => Purge, | ||
| Put: () => Put, | ||
| Report: () => Report, | ||
| Search: () => Search, | ||
| Subscribe: () => Subscribe, | ||
| Trace: () => Trace, | ||
| Unlock: () => Unlock, | ||
| Unsubscribe: () => Unsubscribe, | ||
| addHttpVerbToMethodMetadata: () => addHttpVerbToMethodMetadata | ||
| }); | ||
| module.exports = __toCommonJS(method_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/method.ts | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.addHttpVerbToMethodMetadata = exports.Unsubscribe = exports.Unlock = exports.Trace = exports.Subscribe = exports.Search = exports.Report = exports.Put = exports.Purge = exports.Post = exports.Patch = exports.Options = exports.Notify = exports.MSearch = exports.Move = exports.Mkcol = exports.Mkactivity = exports.Merge = exports.Lock = exports.Head = exports.Get = exports.Delete = exports.Copy = exports.Checkout = exports.All = void 0; | ||
| require("reflect-metadata"); | ||
| const types_1 = require("./types"); | ||
| function All(path) { | ||
| return helperForRoutes("all", path); | ||
| return helperForRoutes('all', path); | ||
| } | ||
| exports.All = All; | ||
| function Checkout(path) { | ||
| return helperForRoutes("checkout" /* CHECKOUT */, path); | ||
| return helperForRoutes(types_1.HttpVerb.CHECKOUT, path); | ||
| } | ||
| exports.Checkout = Checkout; | ||
| function Copy(path) { | ||
| return helperForRoutes("copy" /* COPY */, path); | ||
| return helperForRoutes(types_1.HttpVerb.COPY, path); | ||
| } | ||
| exports.Copy = Copy; | ||
| function Delete(path) { | ||
| return helperForRoutes("delete" /* DELETE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.DELETE, path); | ||
| } | ||
| exports.Delete = Delete; | ||
| function Get(path) { | ||
| return helperForRoutes("get" /* GET */, path); | ||
| return helperForRoutes(types_1.HttpVerb.GET, path); | ||
| } | ||
| exports.Get = Get; | ||
| function Head(path) { | ||
| return helperForRoutes("head" /* HEAD */, path); | ||
| return helperForRoutes(types_1.HttpVerb.HEAD, path); | ||
| } | ||
| exports.Head = Head; | ||
| function Lock(path) { | ||
| return helperForRoutes("lock" /* LOCK */, path); | ||
| return helperForRoutes(types_1.HttpVerb.LOCK, path); | ||
| } | ||
| exports.Lock = Lock; | ||
| function Merge(path) { | ||
| return helperForRoutes("merge" /* MERGE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.MERGE, path); | ||
| } | ||
| exports.Merge = Merge; | ||
| function Mkactivity(path) { | ||
| return helperForRoutes("mkactivity" /* MKACTIVITY */, path); | ||
| return helperForRoutes(types_1.HttpVerb.MKACTIVITY, path); | ||
| } | ||
| exports.Mkactivity = Mkactivity; | ||
| function Mkcol(path) { | ||
| return helperForRoutes("mkcol" /* MKCOL */, path); | ||
| return helperForRoutes(types_1.HttpVerb.MKCOL, path); | ||
| } | ||
| exports.Mkcol = Mkcol; | ||
| function Move(path) { | ||
| return helperForRoutes("move" /* MOVE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.MOVE, path); | ||
| } | ||
| exports.Move = Move; | ||
| function MSearch(path) { | ||
| return helperForRoutes("m-search" /* MSEARCH */, path); | ||
| return helperForRoutes(types_1.HttpVerb.MSEARCH, path); | ||
| } | ||
| exports.MSearch = MSearch; | ||
| function Notify(path) { | ||
| return helperForRoutes("notify" /* NOTIFY */, path); | ||
| return helperForRoutes(types_1.HttpVerb.NOTIFY, path); | ||
| } | ||
| exports.Notify = Notify; | ||
| function Options(path) { | ||
| return helperForRoutes("options" /* OPTIONS */, path); | ||
| return helperForRoutes(types_1.HttpVerb.OPTIONS, path); | ||
| } | ||
| exports.Options = Options; | ||
| function Patch(path) { | ||
| return helperForRoutes("patch" /* PATCH */, path); | ||
| return helperForRoutes(types_1.HttpVerb.PATCH, path); | ||
| } | ||
| exports.Patch = Patch; | ||
| function Post(path) { | ||
| return helperForRoutes("post" /* POST */, path); | ||
| return helperForRoutes(types_1.HttpVerb.POST, path); | ||
| } | ||
| exports.Post = Post; | ||
| function Purge(path) { | ||
| return helperForRoutes("purge" /* PURGE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.PURGE, path); | ||
| } | ||
| exports.Purge = Purge; | ||
| function Put(path) { | ||
| return helperForRoutes("put" /* PUT */, path); | ||
| return helperForRoutes(types_1.HttpVerb.PUT, path); | ||
| } | ||
| exports.Put = Put; | ||
| function Report(path) { | ||
| return helperForRoutes("report" /* REPORT */, path); | ||
| return helperForRoutes(types_1.HttpVerb.REPORT, path); | ||
| } | ||
| exports.Report = Report; | ||
| function Search(path) { | ||
| return helperForRoutes("search" /* SEARCH */, path); | ||
| return helperForRoutes(types_1.HttpVerb.SEARCH, path); | ||
| } | ||
| exports.Search = Search; | ||
| function Subscribe(path) { | ||
| return helperForRoutes("subscribe" /* SUBSCRIBE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.SUBSCRIBE, path); | ||
| } | ||
| exports.Subscribe = Subscribe; | ||
| function Trace(path) { | ||
| return helperForRoutes("trace" /* TRACE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.TRACE, path); | ||
| } | ||
| exports.Trace = Trace; | ||
| function Unlock(path) { | ||
| return helperForRoutes("unlock" /* UNLOCK */, path); | ||
| return helperForRoutes(types_1.HttpVerb.UNLOCK, path); | ||
| } | ||
| exports.Unlock = Unlock; | ||
| function Unsubscribe(path) { | ||
| return helperForRoutes("unsubscribe" /* UNSUBSCRIBE */, path); | ||
| return helperForRoutes(types_1.HttpVerb.UNSUBSCRIBE, path); | ||
| } | ||
| exports.Unsubscribe = Unsubscribe; | ||
| function helperForRoutes(httpVerb, path) { | ||
| return (target, propertyKey) => { | ||
| let newPath; | ||
| if (path === void 0) { | ||
| newPath = ""; | ||
| } else if (path instanceof RegExp) { | ||
| newPath = addForwardSlashToFrontOfRegex(path); | ||
| } else { | ||
| newPath = `/${path}`; | ||
| } | ||
| addHttpVerbToMethodMetadata(target, propertyKey, httpVerb, newPath); | ||
| }; | ||
| return (target, propertyKey) => { | ||
| let newPath; | ||
| if (path === undefined) { | ||
| newPath = ''; | ||
| } | ||
| else if (path instanceof RegExp) { | ||
| newPath = addForwardSlashToFrontOfRegex(path); | ||
| } | ||
| else { | ||
| // assert (path instanceof string) | ||
| newPath = `/${path}`; | ||
| } | ||
| addHttpVerbToMethodMetadata(target, propertyKey, httpVerb, newPath); | ||
| }; | ||
| } | ||
| function addForwardSlashToFrontOfRegex(regex) { | ||
| if (regex.toString().charAt(1) === "^") { | ||
| return RegExp(`/${regex.toString().slice(2).replace(/\/$/, "")}`); | ||
| } else { | ||
| return new RegExp(`/.*${regex.toString().slice(1).replace(/\/$/, "")}`); | ||
| } | ||
| if (regex.toString().charAt(1) === '^') { | ||
| // /^api$/ -> //api$/ | ||
| return RegExp(`/${regex.toString().slice(2).replace(/\/$/, '')}`); | ||
| } | ||
| else { | ||
| // /api/ -> //.*api/ | ||
| return new RegExp(`/.*${regex.toString().slice(1).replace(/\/$/, '')}`); | ||
| } | ||
| } | ||
| // tslint:disable-next-line:max-line-length | ||
| function addHttpVerbToMethodMetadata(target, metadataKey, httpDecorator, path) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.httpRoutes) { | ||
| metadata.httpRoutes = []; | ||
| } | ||
| const newArr = [ | ||
| { | ||
| httpDecorator, | ||
| path | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| ]; | ||
| newArr.push(...metadata.httpRoutes); | ||
| metadata.httpRoutes = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| if (!metadata.httpRoutes) { | ||
| metadata.httpRoutes = []; | ||
| } | ||
| const newArr = [ | ||
| { | ||
| httpDecorator, | ||
| path, | ||
| }, | ||
| ]; | ||
| newArr.push(...metadata.httpRoutes); | ||
| metadata.httpRoutes = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| All, | ||
| Checkout, | ||
| Copy, | ||
| Delete, | ||
| Get, | ||
| Head, | ||
| Lock, | ||
| MSearch, | ||
| Merge, | ||
| Mkactivity, | ||
| Mkcol, | ||
| Move, | ||
| Notify, | ||
| Options, | ||
| Patch, | ||
| Post, | ||
| Purge, | ||
| Put, | ||
| Report, | ||
| Search, | ||
| Subscribe, | ||
| Trace, | ||
| Unlock, | ||
| Unsubscribe, | ||
| addHttpVerbToMethodMetadata | ||
| }); | ||
| exports.addHttpVerbToMethodMetadata = addHttpVerbToMethodMetadata; |
@@ -1,12 +0,9 @@ | ||
| import { Middleware as Middleware$1, ErrorMiddleware as ErrorMiddleware$1 } from './types.js'; | ||
| import 'express'; | ||
| import 'express-serve-static-core'; | ||
| declare function Middleware(middleware: Middleware$1 | Middleware$1[]): MethodDecorator & PropertyDecorator; | ||
| declare function ErrorMiddleware(errorMiddleware: ErrorMiddleware$1 | ErrorMiddleware$1[]): MethodDecorator & PropertyDecorator; | ||
| declare function ClassMiddleware(middleware: Middleware$1 | Middleware$1[]): ClassDecorator; | ||
| declare function ClassErrorMiddleware(errorMiddleware: ErrorMiddleware$1 | ErrorMiddleware$1[]): ClassDecorator; | ||
| declare function addMiddlewareToMetadata(target: Object, metadataKey: any, middlewares: Middleware$1 | Middleware$1[]): void; | ||
| declare function addErrorMiddlewareToMetadata(target: Object, metadataKey: any, errorMiddlewares: ErrorMiddleware$1 | ErrorMiddleware$1[]): void; | ||
| export { ClassErrorMiddleware, ClassMiddleware, ErrorMiddleware, Middleware, addErrorMiddlewareToMetadata, addMiddlewareToMetadata }; | ||
| import 'reflect-metadata'; | ||
| import type { ErrorMiddleware as TErrorMiddleware, Middleware as TMiddleware } from './types'; | ||
| export declare function Middleware(middleware: TMiddleware | TMiddleware[]): MethodDecorator & PropertyDecorator; | ||
| export declare function ErrorMiddleware(errorMiddleware: TErrorMiddleware | TErrorMiddleware[]): MethodDecorator & PropertyDecorator; | ||
| export declare function ClassMiddleware(middleware: TMiddleware | TMiddleware[]): ClassDecorator; | ||
| export declare function ClassErrorMiddleware(errorMiddleware: TErrorMiddleware | TErrorMiddleware[]): ClassDecorator; | ||
| export declare function addMiddlewareToMetadata(target: Object, metadataKey: any, middlewares: TMiddleware | TMiddleware[]): void; | ||
| export declare function addErrorMiddlewareToMetadata(target: Object, metadataKey: any, errorMiddlewares: TErrorMiddleware | TErrorMiddleware[]): void; | ||
| //# sourceMappingURL=middleware.d.ts.map |
@@ -1,99 +0,72 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/decorators/middleware.ts | ||
| var middleware_exports = {}; | ||
| __export(middleware_exports, { | ||
| ClassErrorMiddleware: () => ClassErrorMiddleware, | ||
| ClassMiddleware: () => ClassMiddleware, | ||
| ErrorMiddleware: () => ErrorMiddleware, | ||
| Middleware: () => Middleware, | ||
| addErrorMiddlewareToMetadata: () => addErrorMiddlewareToMetadata, | ||
| addMiddlewareToMetadata: () => addMiddlewareToMetadata | ||
| }); | ||
| module.exports = __toCommonJS(middleware_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/middleware.ts | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.addErrorMiddlewareToMetadata = exports.addMiddlewareToMetadata = exports.ClassErrorMiddleware = exports.ClassMiddleware = exports.ErrorMiddleware = exports.Middleware = void 0; | ||
| require("reflect-metadata"); | ||
| const types_1 = require("./types"); | ||
| function Middleware(middleware) { | ||
| return (target, propertyKey) => { | ||
| addMiddlewareToMetadata(target, propertyKey, middleware); | ||
| }; | ||
| return (target, propertyKey) => { | ||
| addMiddlewareToMetadata(target, propertyKey, middleware); | ||
| }; | ||
| } | ||
| exports.Middleware = Middleware; | ||
| // tslint:disable-next-line:max-line-length | ||
| function ErrorMiddleware(errorMiddleware) { | ||
| return (target, propertyKey) => { | ||
| addErrorMiddlewareToMetadata(target, propertyKey, errorMiddleware); | ||
| }; | ||
| return (target, propertyKey) => { | ||
| addErrorMiddlewareToMetadata(target, propertyKey, errorMiddleware); | ||
| }; | ||
| } | ||
| exports.ErrorMiddleware = ErrorMiddleware; | ||
| function ClassMiddleware(middleware) { | ||
| return (target) => { | ||
| addMiddlewareToMetadata(target.prototype, classMetadataKey, middleware); | ||
| }; | ||
| return (target) => { | ||
| addMiddlewareToMetadata(target.prototype, types_1.classMetadataKey, middleware); | ||
| }; | ||
| } | ||
| exports.ClassMiddleware = ClassMiddleware; | ||
| function ClassErrorMiddleware(errorMiddleware) { | ||
| return (target) => { | ||
| addErrorMiddlewareToMetadata(target.prototype, classMetadataKey, errorMiddleware); | ||
| }; | ||
| return (target) => { | ||
| addErrorMiddlewareToMetadata(target.prototype, types_1.classMetadataKey, errorMiddleware); | ||
| }; | ||
| } | ||
| exports.ClassErrorMiddleware = ClassErrorMiddleware; | ||
| // tslint:disable-next-line:max-line-length | ||
| function addMiddlewareToMetadata(target, metadataKey, middlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.middlewares) { | ||
| metadata.middlewares = []; | ||
| } | ||
| let newArr; | ||
| if (middlewares instanceof Array) { | ||
| newArr = middlewares.slice(); | ||
| } else { | ||
| newArr = [middlewares]; | ||
| } | ||
| newArr.push(...metadata.middlewares); | ||
| metadata.middlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.middlewares) { | ||
| metadata.middlewares = []; | ||
| } | ||
| let newArr; | ||
| if (middlewares instanceof Array) { | ||
| newArr = middlewares.slice(); | ||
| } | ||
| else { | ||
| newArr = [middlewares]; | ||
| } | ||
| newArr.push(...metadata.middlewares); | ||
| metadata.middlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| exports.addMiddlewareToMetadata = addMiddlewareToMetadata; | ||
| // tslint:disable-next-line:max-line-length | ||
| function addErrorMiddlewareToMetadata(target, metadataKey, errorMiddlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.errorMiddlewares) { | ||
| metadata.errorMiddlewares = []; | ||
| } | ||
| let newArr; | ||
| if (errorMiddlewares instanceof Array) { | ||
| newArr = errorMiddlewares.slice(); | ||
| } else { | ||
| newArr = [errorMiddlewares]; | ||
| } | ||
| newArr.push(...metadata.errorMiddlewares); | ||
| metadata.errorMiddlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.errorMiddlewares) { | ||
| metadata.errorMiddlewares = []; | ||
| } | ||
| let newArr; | ||
| if (errorMiddlewares instanceof Array) { | ||
| newArr = errorMiddlewares.slice(); | ||
| } | ||
| else { | ||
| newArr = [errorMiddlewares]; | ||
| } | ||
| newArr.push(...metadata.errorMiddlewares); | ||
| metadata.errorMiddlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| ClassErrorMiddleware, | ||
| ClassMiddleware, | ||
| ErrorMiddleware, | ||
| Middleware, | ||
| addErrorMiddlewareToMetadata, | ||
| addMiddlewareToMetadata | ||
| }); | ||
| exports.addErrorMiddlewareToMetadata = addErrorMiddlewareToMetadata; |
@@ -1,10 +0,9 @@ | ||
| import { RequestHandler, ErrorRequestHandler, RouterOptions, IRouter } from 'express'; | ||
| import { PathParams } from 'express-serve-static-core'; | ||
| declare type Middleware = RequestHandler; | ||
| declare type ErrorMiddleware = ErrorRequestHandler; | ||
| declare type WrapperFunction = (methodOrProperty: any) => RequestHandler; | ||
| declare type Controller = any; | ||
| declare type RouterLib = (options?: RouterOptions) => IRouter; | ||
| interface IMethodMetadata { | ||
| import type { ErrorRequestHandler, IRouter, RequestHandler, RouterOptions } from 'express'; | ||
| import type { PathParams } from 'express-serve-static-core'; | ||
| export declare type Middleware = RequestHandler; | ||
| export declare type ErrorMiddleware = ErrorRequestHandler; | ||
| export declare type WrapperFunction = (methodOrProperty: any) => RequestHandler; | ||
| export declare type Controller = any; | ||
| export declare type RouterLib = (options?: RouterOptions) => IRouter; | ||
| export interface IMethodMetadata { | ||
| httpRoutes?: IHttpRoute[]; | ||
@@ -15,3 +14,3 @@ errorMiddlewares?: ErrorMiddleware[]; | ||
| } | ||
| interface IClassMetadata { | ||
| export interface IClassMetadata { | ||
| basePath?: PathParams; | ||
@@ -24,9 +23,9 @@ childControllers?: Controller[]; | ||
| } | ||
| declare const classMetadataKey: unique symbol; | ||
| declare type HttpDecorator = HttpVerb | 'all'; | ||
| interface IHttpRoute { | ||
| export declare const classMetadataKey: unique symbol; | ||
| export declare type HttpDecorator = HttpVerb | 'all'; | ||
| export interface IHttpRoute { | ||
| httpDecorator: HttpDecorator; | ||
| path: string | RegExp; | ||
| } | ||
| declare enum HttpVerb { | ||
| export declare enum HttpVerb { | ||
| CHECKOUT = "checkout", | ||
@@ -56,3 +55,2 @@ COPY = "copy", | ||
| } | ||
| export { Controller, ErrorMiddleware, HttpDecorator, HttpVerb, IClassMetadata, IHttpRoute, IMethodMetadata, Middleware, RouterLib, WrapperFunction, classMetadataKey }; | ||
| //# sourceMappingURL=types.d.ts.map |
+30
-57
@@ -1,57 +0,30 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/decorators/types.ts | ||
| var types_exports = {}; | ||
| __export(types_exports, { | ||
| HttpVerb: () => HttpVerb, | ||
| classMetadataKey: () => classMetadataKey | ||
| }); | ||
| module.exports = __toCommonJS(types_exports); | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| var HttpVerb = /* @__PURE__ */ ((HttpVerb2) => { | ||
| HttpVerb2["CHECKOUT"] = "checkout"; | ||
| HttpVerb2["COPY"] = "copy"; | ||
| HttpVerb2["DELETE"] = "delete"; | ||
| HttpVerb2["GET"] = "get"; | ||
| HttpVerb2["HEAD"] = "head"; | ||
| HttpVerb2["LOCK"] = "lock"; | ||
| HttpVerb2["MERGE"] = "merge"; | ||
| HttpVerb2["MKACTIVITY"] = "mkactivity"; | ||
| HttpVerb2["MKCOL"] = "mkcol"; | ||
| HttpVerb2["MOVE"] = "move"; | ||
| HttpVerb2["MSEARCH"] = "m-search"; | ||
| HttpVerb2["NOTIFY"] = "notify"; | ||
| HttpVerb2["OPTIONS"] = "options"; | ||
| HttpVerb2["PATCH"] = "patch"; | ||
| HttpVerb2["POST"] = "post"; | ||
| HttpVerb2["PURGE"] = "purge"; | ||
| HttpVerb2["PUT"] = "put"; | ||
| HttpVerb2["REPORT"] = "report"; | ||
| HttpVerb2["SEARCH"] = "search"; | ||
| HttpVerb2["SUBSCRIBE"] = "subscribe"; | ||
| HttpVerb2["TRACE"] = "trace"; | ||
| HttpVerb2["UNLOCK"] = "unlock"; | ||
| HttpVerb2["UNSUBSCRIBE"] = "unsubscribe"; | ||
| return HttpVerb2; | ||
| })(HttpVerb || {}); | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| HttpVerb, | ||
| classMetadataKey | ||
| }); | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.HttpVerb = exports.classMetadataKey = void 0; | ||
| exports.classMetadataKey = Symbol('Class Metadata Key'); | ||
| var HttpVerb; | ||
| (function (HttpVerb) { | ||
| HttpVerb["CHECKOUT"] = "checkout"; | ||
| HttpVerb["COPY"] = "copy"; | ||
| HttpVerb["DELETE"] = "delete"; | ||
| HttpVerb["GET"] = "get"; | ||
| HttpVerb["HEAD"] = "head"; | ||
| HttpVerb["LOCK"] = "lock"; | ||
| HttpVerb["MERGE"] = "merge"; | ||
| HttpVerb["MKACTIVITY"] = "mkactivity"; | ||
| HttpVerb["MKCOL"] = "mkcol"; | ||
| HttpVerb["MOVE"] = "move"; | ||
| HttpVerb["MSEARCH"] = "m-search"; | ||
| HttpVerb["NOTIFY"] = "notify"; | ||
| HttpVerb["OPTIONS"] = "options"; | ||
| HttpVerb["PATCH"] = "patch"; | ||
| HttpVerb["POST"] = "post"; | ||
| HttpVerb["PURGE"] = "purge"; | ||
| HttpVerb["PUT"] = "put"; | ||
| HttpVerb["REPORT"] = "report"; | ||
| HttpVerb["SEARCH"] = "search"; | ||
| HttpVerb["SUBSCRIBE"] = "subscribe"; | ||
| HttpVerb["TRACE"] = "trace"; | ||
| HttpVerb["UNLOCK"] = "unlock"; | ||
| HttpVerb["UNSUBSCRIBE"] = "unsubscribe"; | ||
| })(HttpVerb = exports.HttpVerb || (exports.HttpVerb = {})); |
@@ -1,9 +0,6 @@ | ||
| import { WrapperFunction } from './types.js'; | ||
| import 'express'; | ||
| import 'express-serve-static-core'; | ||
| declare function Wrapper(wrapper: WrapperFunction): MethodDecorator & PropertyDecorator; | ||
| declare function ClassWrapper(wrapper: WrapperFunction): ClassDecorator; | ||
| declare function addWrapperToMetadata(target: Object, metadataKey: any, wrapper: WrapperFunction): void; | ||
| export { ClassWrapper, Wrapper, addWrapperToMetadata }; | ||
| import 'reflect-metadata'; | ||
| import type { WrapperFunction } from './types'; | ||
| export declare function Wrapper(wrapper: WrapperFunction): MethodDecorator & PropertyDecorator; | ||
| export declare function ClassWrapper(wrapper: WrapperFunction): ClassDecorator; | ||
| export declare function addWrapperToMetadata(target: Object, metadataKey: any, wrapper: WrapperFunction): void; | ||
| //# sourceMappingURL=wrapper.d.ts.map |
@@ -1,55 +0,26 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/decorators/wrapper.ts | ||
| var wrapper_exports = {}; | ||
| __export(wrapper_exports, { | ||
| ClassWrapper: () => ClassWrapper, | ||
| Wrapper: () => Wrapper, | ||
| addWrapperToMetadata: () => addWrapperToMetadata | ||
| }); | ||
| module.exports = __toCommonJS(wrapper_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/wrapper.ts | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.addWrapperToMetadata = exports.ClassWrapper = exports.Wrapper = void 0; | ||
| require("reflect-metadata"); | ||
| const types_1 = require("./types"); | ||
| function Wrapper(wrapper) { | ||
| return (target, propertyKey) => { | ||
| addWrapperToMetadata(target, propertyKey, wrapper); | ||
| }; | ||
| return (target, propertyKey) => { | ||
| addWrapperToMetadata(target, propertyKey, wrapper); | ||
| }; | ||
| } | ||
| exports.Wrapper = Wrapper; | ||
| function ClassWrapper(wrapper) { | ||
| return (target) => { | ||
| addWrapperToMetadata(target.prototype, classMetadataKey, wrapper); | ||
| }; | ||
| return (target) => { | ||
| addWrapperToMetadata(target.prototype, types_1.classMetadataKey, wrapper); | ||
| }; | ||
| } | ||
| exports.ClassWrapper = ClassWrapper; | ||
| function addWrapperToMetadata(target, metadataKey, wrapper) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.wrapper = wrapper; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.wrapper = wrapper; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| ClassWrapper, | ||
| Wrapper, | ||
| addWrapperToMetadata | ||
| }); | ||
| exports.addWrapperToMetadata = addWrapperToMetadata; |
+3
-8
@@ -1,8 +0,3 @@ | ||
| export { ChildControllers, Children, ClassOptions, Controller, addBasePathToClassMetadata, addChildControllersToClassMetadata, addClassOptionsToClassMetadata } from './decorators/class.js'; | ||
| export { All, Checkout, Copy, Delete, Get, Head, Lock, MSearch, Merge, Mkactivity, Mkcol, Move, Notify, Options, Patch, Post, Purge, Put, Report, Search, Subscribe, Trace, Unlock, Unsubscribe, addHttpVerbToMethodMetadata } from './decorators/method.js'; | ||
| export { ClassErrorMiddleware, ClassMiddleware, ErrorMiddleware, Middleware, addErrorMiddlewareToMetadata, addMiddlewareToMetadata } from './decorators/middleware.js'; | ||
| export { ClassWrapper, Wrapper, addWrapperToMetadata } from './decorators/wrapper.js'; | ||
| export { Server } from './Server.js'; | ||
| import 'express'; | ||
| import './decorators/types.js'; | ||
| import 'express-serve-static-core'; | ||
| export * from './decorators'; | ||
| export * from './Server'; | ||
| //# sourceMappingURL=index.d.ts.map |
+16
-483
@@ -1,485 +0,18 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/index.ts | ||
| var src_exports = {}; | ||
| __export(src_exports, { | ||
| All: () => All, | ||
| Checkout: () => Checkout, | ||
| ChildControllers: () => ChildControllers, | ||
| Children: () => Children, | ||
| ClassErrorMiddleware: () => ClassErrorMiddleware, | ||
| ClassMiddleware: () => ClassMiddleware, | ||
| ClassOptions: () => ClassOptions, | ||
| ClassWrapper: () => ClassWrapper, | ||
| Controller: () => Controller, | ||
| Copy: () => Copy, | ||
| Delete: () => Delete, | ||
| ErrorMiddleware: () => ErrorMiddleware, | ||
| Get: () => Get, | ||
| Head: () => Head, | ||
| Lock: () => Lock, | ||
| MSearch: () => MSearch, | ||
| Merge: () => Merge, | ||
| Middleware: () => Middleware, | ||
| Mkactivity: () => Mkactivity, | ||
| Mkcol: () => Mkcol, | ||
| Move: () => Move, | ||
| Notify: () => Notify, | ||
| Options: () => Options, | ||
| Patch: () => Patch, | ||
| Post: () => Post, | ||
| Purge: () => Purge, | ||
| Put: () => Put, | ||
| Report: () => Report, | ||
| Search: () => Search, | ||
| Server: () => Server, | ||
| Subscribe: () => Subscribe, | ||
| Trace: () => Trace, | ||
| Unlock: () => Unlock, | ||
| Unsubscribe: () => Unsubscribe, | ||
| Wrapper: () => Wrapper, | ||
| addBasePathToClassMetadata: () => addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata: () => addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata: () => addClassOptionsToClassMetadata, | ||
| addErrorMiddlewareToMetadata: () => addErrorMiddlewareToMetadata, | ||
| addHttpVerbToMethodMetadata: () => addHttpVerbToMethodMetadata, | ||
| addMiddlewareToMetadata: () => addMiddlewareToMetadata, | ||
| addWrapperToMetadata: () => addWrapperToMetadata | ||
| }); | ||
| module.exports = __toCommonJS(src_exports); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/decorators/class.ts | ||
| function Controller(path) { | ||
| return (target) => { | ||
| addBasePathToClassMetadata(target.prototype, `/${path}`); | ||
| }; | ||
| } | ||
| function ClassOptions(options) { | ||
| return (target) => { | ||
| addClassOptionsToClassMetadata(target.prototype, options); | ||
| }; | ||
| } | ||
| function Children(children) { | ||
| console.log("Warning: @Children decorator is deprecated. Use ChildControllers instead."); | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| function ChildControllers(children) { | ||
| return (target) => { | ||
| addChildControllersToClassMetadata(target.prototype, children); | ||
| }; | ||
| } | ||
| function addBasePathToClassMetadata(target, basePath) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.basePath = basePath; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| function addClassOptionsToClassMetadata(target, options) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.options = options; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| function addChildControllersToClassMetadata(target, childControllers) { | ||
| let metadata = Reflect.getOwnMetadata(classMetadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.childControllers) { | ||
| metadata.childControllers = []; | ||
| } | ||
| let newArr; | ||
| if (childControllers instanceof Array) { | ||
| newArr = childControllers.slice(); | ||
| } else { | ||
| newArr = [childControllers]; | ||
| } | ||
| newArr.push(...metadata.childControllers); | ||
| metadata.childControllers = newArr; | ||
| Reflect.defineMetadata(classMetadataKey, metadata, target); | ||
| } | ||
| // src/decorators/method.ts | ||
| function All(path) { | ||
| return helperForRoutes("all", path); | ||
| } | ||
| function Checkout(path) { | ||
| return helperForRoutes("checkout" /* CHECKOUT */, path); | ||
| } | ||
| function Copy(path) { | ||
| return helperForRoutes("copy" /* COPY */, path); | ||
| } | ||
| function Delete(path) { | ||
| return helperForRoutes("delete" /* DELETE */, path); | ||
| } | ||
| function Get(path) { | ||
| return helperForRoutes("get" /* GET */, path); | ||
| } | ||
| function Head(path) { | ||
| return helperForRoutes("head" /* HEAD */, path); | ||
| } | ||
| function Lock(path) { | ||
| return helperForRoutes("lock" /* LOCK */, path); | ||
| } | ||
| function Merge(path) { | ||
| return helperForRoutes("merge" /* MERGE */, path); | ||
| } | ||
| function Mkactivity(path) { | ||
| return helperForRoutes("mkactivity" /* MKACTIVITY */, path); | ||
| } | ||
| function Mkcol(path) { | ||
| return helperForRoutes("mkcol" /* MKCOL */, path); | ||
| } | ||
| function Move(path) { | ||
| return helperForRoutes("move" /* MOVE */, path); | ||
| } | ||
| function MSearch(path) { | ||
| return helperForRoutes("m-search" /* MSEARCH */, path); | ||
| } | ||
| function Notify(path) { | ||
| return helperForRoutes("notify" /* NOTIFY */, path); | ||
| } | ||
| function Options(path) { | ||
| return helperForRoutes("options" /* OPTIONS */, path); | ||
| } | ||
| function Patch(path) { | ||
| return helperForRoutes("patch" /* PATCH */, path); | ||
| } | ||
| function Post(path) { | ||
| return helperForRoutes("post" /* POST */, path); | ||
| } | ||
| function Purge(path) { | ||
| return helperForRoutes("purge" /* PURGE */, path); | ||
| } | ||
| function Put(path) { | ||
| return helperForRoutes("put" /* PUT */, path); | ||
| } | ||
| function Report(path) { | ||
| return helperForRoutes("report" /* REPORT */, path); | ||
| } | ||
| function Search(path) { | ||
| return helperForRoutes("search" /* SEARCH */, path); | ||
| } | ||
| function Subscribe(path) { | ||
| return helperForRoutes("subscribe" /* SUBSCRIBE */, path); | ||
| } | ||
| function Trace(path) { | ||
| return helperForRoutes("trace" /* TRACE */, path); | ||
| } | ||
| function Unlock(path) { | ||
| return helperForRoutes("unlock" /* UNLOCK */, path); | ||
| } | ||
| function Unsubscribe(path) { | ||
| return helperForRoutes("unsubscribe" /* UNSUBSCRIBE */, path); | ||
| } | ||
| function helperForRoutes(httpVerb, path) { | ||
| return (target, propertyKey) => { | ||
| let newPath; | ||
| if (path === void 0) { | ||
| newPath = ""; | ||
| } else if (path instanceof RegExp) { | ||
| newPath = addForwardSlashToFrontOfRegex(path); | ||
| } else { | ||
| newPath = `/${path}`; | ||
| "use strict"; | ||
| var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
| if (k2 === undefined) k2 = k; | ||
| var desc = Object.getOwnPropertyDescriptor(m, k); | ||
| if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
| desc = { enumerable: true, get: function() { return m[k]; } }; | ||
| } | ||
| addHttpVerbToMethodMetadata(target, propertyKey, httpVerb, newPath); | ||
| }; | ||
| } | ||
| function addForwardSlashToFrontOfRegex(regex) { | ||
| if (regex.toString().charAt(1) === "^") { | ||
| return RegExp(`/${regex.toString().slice(2).replace(/\/$/, "")}`); | ||
| } else { | ||
| return new RegExp(`/.*${regex.toString().slice(1).replace(/\/$/, "")}`); | ||
| } | ||
| } | ||
| function addHttpVerbToMethodMetadata(target, metadataKey, httpDecorator, path) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.httpRoutes) { | ||
| metadata.httpRoutes = []; | ||
| } | ||
| const newArr = [ | ||
| { | ||
| httpDecorator, | ||
| path | ||
| } | ||
| ]; | ||
| newArr.push(...metadata.httpRoutes); | ||
| metadata.httpRoutes = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/decorators/middleware.ts | ||
| function Middleware(middleware) { | ||
| return (target, propertyKey) => { | ||
| addMiddlewareToMetadata(target, propertyKey, middleware); | ||
| }; | ||
| } | ||
| function ErrorMiddleware(errorMiddleware) { | ||
| return (target, propertyKey) => { | ||
| addErrorMiddlewareToMetadata(target, propertyKey, errorMiddleware); | ||
| }; | ||
| } | ||
| function ClassMiddleware(middleware) { | ||
| return (target) => { | ||
| addMiddlewareToMetadata(target.prototype, classMetadataKey, middleware); | ||
| }; | ||
| } | ||
| function ClassErrorMiddleware(errorMiddleware) { | ||
| return (target) => { | ||
| addErrorMiddlewareToMetadata(target.prototype, classMetadataKey, errorMiddleware); | ||
| }; | ||
| } | ||
| function addMiddlewareToMetadata(target, metadataKey, middlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.middlewares) { | ||
| metadata.middlewares = []; | ||
| } | ||
| let newArr; | ||
| if (middlewares instanceof Array) { | ||
| newArr = middlewares.slice(); | ||
| } else { | ||
| newArr = [middlewares]; | ||
| } | ||
| newArr.push(...metadata.middlewares); | ||
| metadata.middlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| function addErrorMiddlewareToMetadata(target, metadataKey, errorMiddlewares) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| if (!metadata.errorMiddlewares) { | ||
| metadata.errorMiddlewares = []; | ||
| } | ||
| let newArr; | ||
| if (errorMiddlewares instanceof Array) { | ||
| newArr = errorMiddlewares.slice(); | ||
| } else { | ||
| newArr = [errorMiddlewares]; | ||
| } | ||
| newArr.push(...metadata.errorMiddlewares); | ||
| metadata.errorMiddlewares = newArr; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/decorators/wrapper.ts | ||
| function Wrapper(wrapper) { | ||
| return (target, propertyKey) => { | ||
| addWrapperToMetadata(target, propertyKey, wrapper); | ||
| }; | ||
| } | ||
| function ClassWrapper(wrapper) { | ||
| return (target) => { | ||
| addWrapperToMetadata(target.prototype, classMetadataKey, wrapper); | ||
| }; | ||
| } | ||
| function addWrapperToMetadata(target, metadataKey, wrapper) { | ||
| let metadata = Reflect.getOwnMetadata(metadataKey, target); | ||
| if (!metadata) { | ||
| metadata = {}; | ||
| } | ||
| metadata.wrapper = wrapper; | ||
| Reflect.defineMetadata(metadataKey, metadata, target); | ||
| } | ||
| // src/Server.ts | ||
| var import_reflect_metadata = require("reflect-metadata"); | ||
| var _Server = class { | ||
| constructor(showLogs) { | ||
| this._showLogs = false; | ||
| const express = require("express"); | ||
| this._app = express(); | ||
| this._showLogs = showLogs || false; | ||
| } | ||
| get app() { | ||
| return this._app; | ||
| } | ||
| get showLogs() { | ||
| return this._showLogs; | ||
| } | ||
| set showLogs(showLogs) { | ||
| this._showLogs = showLogs; | ||
| } | ||
| addControllers(controllers, routerLib, globalMiddleware) { | ||
| controllers = Array.isArray(controllers) ? controllers : [controllers]; | ||
| const { Router } = require("express"); | ||
| const routerLibrary = routerLib || Router; | ||
| controllers.forEach((controller) => { | ||
| if (controller) { | ||
| const routerAndPath = this.getRouter(routerLibrary, controller); | ||
| if (routerAndPath) { | ||
| if (globalMiddleware) { | ||
| this.app.use(routerAndPath.basePath, globalMiddleware, routerAndPath.router); | ||
| } else { | ||
| this.app.use(routerAndPath.basePath, routerAndPath.router); | ||
| } | ||
| } | ||
| } | ||
| }); | ||
| } | ||
| wrapErrorMiddleware(errorMiddleware, requestHandler) { | ||
| return (req, res, next) => { | ||
| try { | ||
| requestHandler(req, res, next); | ||
| } catch (error) { | ||
| errorMiddleware(error, req, res, next); | ||
| } | ||
| }; | ||
| } | ||
| getRouter(routerLibrary, controller) { | ||
| const prototype = Object.getPrototypeOf(controller); | ||
| const classMetadata = Reflect.getOwnMetadata(classMetadataKey, prototype); | ||
| if (!classMetadata) { | ||
| return null; | ||
| } | ||
| const { | ||
| basePath, | ||
| childControllers: children, | ||
| errorMiddlewares: classErrorMiddleware, | ||
| middlewares: classMiddleware, | ||
| options, | ||
| wrapper: classWrapper | ||
| } = classMetadata; | ||
| if (!basePath) { | ||
| return null; | ||
| } | ||
| const router = routerLibrary(options); | ||
| if (this.showLogs) { | ||
| console.log(`${_Server.LOG_STR} "${controller.constructor.name}"`); | ||
| } | ||
| if (classMiddleware) { | ||
| router.use(classMiddleware); | ||
| } | ||
| let members = Object.getOwnPropertyNames(controller); | ||
| members = members.concat(Object.getOwnPropertyNames(prototype)); | ||
| members.forEach((member) => { | ||
| const methodMetadata = Reflect.getOwnMetadata(member, prototype); | ||
| if (methodMetadata) { | ||
| const { | ||
| httpRoutes, | ||
| middlewares, | ||
| errorMiddlewares, | ||
| wrapper | ||
| } = methodMetadata; | ||
| let callBack = (...args) => { | ||
| return controller[member](...args); | ||
| }; | ||
| if (classWrapper) { | ||
| callBack = classWrapper(callBack); | ||
| } | ||
| if (wrapper) { | ||
| callBack = wrapper(callBack); | ||
| } | ||
| if (errorMiddlewares) { | ||
| errorMiddlewares.forEach((errorMiddleware) => { | ||
| callBack = this.wrapErrorMiddleware(errorMiddleware, callBack); | ||
| }); | ||
| } | ||
| if (httpRoutes) { | ||
| httpRoutes.forEach((route) => { | ||
| const { httpDecorator, path } = route; | ||
| if (middlewares) { | ||
| router[httpDecorator](path, middlewares, callBack); | ||
| } else { | ||
| router[httpDecorator](path, callBack); | ||
| } | ||
| }); | ||
| } | ||
| } | ||
| }); | ||
| if (children) { | ||
| children.forEach((child) => { | ||
| const childRouterAndPath = this.getRouter(routerLibrary, child); | ||
| if (childRouterAndPath) { | ||
| router.use(childRouterAndPath.basePath, childRouterAndPath.router); | ||
| } | ||
| }); | ||
| } | ||
| if (classErrorMiddleware) { | ||
| router.use(classErrorMiddleware); | ||
| } | ||
| return { | ||
| basePath, | ||
| router | ||
| }; | ||
| } | ||
| Object.defineProperty(o, k2, desc); | ||
| }) : (function(o, m, k, k2) { | ||
| if (k2 === undefined) k2 = k; | ||
| o[k2] = m[k]; | ||
| })); | ||
| var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
| for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
| }; | ||
| var Server = _Server; | ||
| Server.LOG_STR = "Setting up controller:"; | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| All, | ||
| Checkout, | ||
| ChildControllers, | ||
| Children, | ||
| ClassErrorMiddleware, | ||
| ClassMiddleware, | ||
| ClassOptions, | ||
| ClassWrapper, | ||
| Controller, | ||
| Copy, | ||
| Delete, | ||
| ErrorMiddleware, | ||
| Get, | ||
| Head, | ||
| Lock, | ||
| MSearch, | ||
| Merge, | ||
| Middleware, | ||
| Mkactivity, | ||
| Mkcol, | ||
| Move, | ||
| Notify, | ||
| Options, | ||
| Patch, | ||
| Post, | ||
| Purge, | ||
| Put, | ||
| Report, | ||
| Search, | ||
| Server, | ||
| Subscribe, | ||
| Trace, | ||
| Unlock, | ||
| Unsubscribe, | ||
| Wrapper, | ||
| addBasePathToClassMetadata, | ||
| addChildControllersToClassMetadata, | ||
| addClassOptionsToClassMetadata, | ||
| addErrorMiddlewareToMetadata, | ||
| addHttpVerbToMethodMetadata, | ||
| addMiddlewareToMetadata, | ||
| addWrapperToMetadata | ||
| }); | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| __exportStar(require("./decorators"), exports); | ||
| __exportStar(require("./Server"), exports); |
+5
-7
@@ -1,6 +0,5 @@ | ||
| import { Application, RequestHandler } from 'express'; | ||
| import { Controller, RouterLib } from './decorators/types.js'; | ||
| import 'express-serve-static-core'; | ||
| declare class Server { | ||
| import 'reflect-metadata'; | ||
| import type { Application, RequestHandler } from 'express'; | ||
| import type { Controller, RouterLib } from './decorators/types'; | ||
| export declare class Server { | ||
| private readonly _app; | ||
@@ -32,3 +31,2 @@ private _showLogs; | ||
| } | ||
| export { Server }; | ||
| //# sourceMappingURL=Server.d.ts.map |
+129
-144
@@ -1,156 +0,141 @@ | ||
| var __defProp = Object.defineProperty; | ||
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | ||
| var __getOwnPropNames = Object.getOwnPropertyNames; | ||
| var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
| var __export = (target, all) => { | ||
| for (var name in all) | ||
| __defProp(target, name, { get: all[name], enumerable: true }); | ||
| }; | ||
| var __copyProps = (to, from, except, desc) => { | ||
| if (from && typeof from === "object" || typeof from === "function") { | ||
| for (let key of __getOwnPropNames(from)) | ||
| if (!__hasOwnProp.call(to, key) && key !== except) | ||
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); | ||
| } | ||
| return to; | ||
| }; | ||
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); | ||
| // src/Server.ts | ||
| var Server_exports = {}; | ||
| __export(Server_exports, { | ||
| Server: () => Server | ||
| }); | ||
| module.exports = __toCommonJS(Server_exports); | ||
| var import_reflect_metadata = require("reflect-metadata"); | ||
| // src/decorators/types.ts | ||
| var classMetadataKey = Symbol("Class Metadata Key"); | ||
| // src/Server.ts | ||
| var _Server = class { | ||
| constructor(showLogs) { | ||
| this._showLogs = false; | ||
| const express = require("express"); | ||
| this._app = express(); | ||
| this._showLogs = showLogs || false; | ||
| } | ||
| get app() { | ||
| return this._app; | ||
| } | ||
| get showLogs() { | ||
| return this._showLogs; | ||
| } | ||
| set showLogs(showLogs) { | ||
| this._showLogs = showLogs; | ||
| } | ||
| addControllers(controllers, routerLib, globalMiddleware) { | ||
| controllers = Array.isArray(controllers) ? controllers : [controllers]; | ||
| const { Router } = require("express"); | ||
| const routerLibrary = routerLib || Router; | ||
| controllers.forEach((controller) => { | ||
| if (controller) { | ||
| const routerAndPath = this.getRouter(routerLibrary, controller); | ||
| if (routerAndPath) { | ||
| if (globalMiddleware) { | ||
| this.app.use(routerAndPath.basePath, globalMiddleware, routerAndPath.router); | ||
| } else { | ||
| this.app.use(routerAndPath.basePath, routerAndPath.router); | ||
| } | ||
| } | ||
| } | ||
| }); | ||
| } | ||
| wrapErrorMiddleware(errorMiddleware, requestHandler) { | ||
| return (req, res, next) => { | ||
| try { | ||
| requestHandler(req, res, next); | ||
| } catch (error) { | ||
| errorMiddleware(error, req, res, next); | ||
| } | ||
| }; | ||
| } | ||
| getRouter(routerLibrary, controller) { | ||
| const prototype = Object.getPrototypeOf(controller); | ||
| const classMetadata = Reflect.getOwnMetadata(classMetadataKey, prototype); | ||
| if (!classMetadata) { | ||
| return null; | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.Server = void 0; | ||
| require("reflect-metadata"); | ||
| const types_1 = require("./decorators/types"); | ||
| class Server { | ||
| constructor(showLogs) { | ||
| this._showLogs = false; | ||
| const express = require('express'); // eslint-disable-line @typescript-eslint/no-var-requires | ||
| this._app = express(); | ||
| this._showLogs = showLogs || false; | ||
| } | ||
| const { | ||
| basePath, | ||
| childControllers: children, | ||
| errorMiddlewares: classErrorMiddleware, | ||
| middlewares: classMiddleware, | ||
| options, | ||
| wrapper: classWrapper | ||
| } = classMetadata; | ||
| if (!basePath) { | ||
| return null; | ||
| get app() { | ||
| return this._app; | ||
| } | ||
| const router = routerLibrary(options); | ||
| if (this.showLogs) { | ||
| console.log(`${_Server.LOG_STR} "${controller.constructor.name}"`); | ||
| get showLogs() { | ||
| return this._showLogs; | ||
| } | ||
| if (classMiddleware) { | ||
| router.use(classMiddleware); | ||
| set showLogs(showLogs) { | ||
| this._showLogs = showLogs; | ||
| } | ||
| let members = Object.getOwnPropertyNames(controller); | ||
| members = members.concat(Object.getOwnPropertyNames(prototype)); | ||
| members.forEach((member) => { | ||
| const methodMetadata = Reflect.getOwnMetadata(member, prototype); | ||
| if (methodMetadata) { | ||
| const { | ||
| httpRoutes, | ||
| middlewares, | ||
| errorMiddlewares, | ||
| wrapper | ||
| } = methodMetadata; | ||
| let callBack = (...args) => { | ||
| return controller[member](...args); | ||
| /** | ||
| * If controllers === undefined, search the './controllers' directory. If it is a string, | ||
| * search that directory instead. If it is an instance-object or array instance-objects, | ||
| * don't pull in the controllers automatically. | ||
| * | ||
| * @param controllers | ||
| * @param routerLib | ||
| * @param globalMiddleware | ||
| */ | ||
| addControllers(controllers, routerLib, globalMiddleware) { | ||
| controllers = Array.isArray(controllers) ? controllers : [controllers]; | ||
| const { Router } = require('express'); // eslint-disable-line @typescript-eslint/no-var-requires | ||
| const routerLibrary = routerLib || Router; | ||
| controllers.forEach((controller) => { | ||
| if (controller) { | ||
| const routerAndPath = this.getRouter(routerLibrary, controller); | ||
| if (routerAndPath) { | ||
| if (globalMiddleware) { | ||
| this.app.use(routerAndPath.basePath, globalMiddleware, routerAndPath.router); | ||
| } | ||
| else { | ||
| this.app.use(routerAndPath.basePath, routerAndPath.router); | ||
| } | ||
| } | ||
| } | ||
| }); | ||
| } | ||
| wrapErrorMiddleware(errorMiddleware, requestHandler) { | ||
| return (req, res, next) => { | ||
| try { | ||
| requestHandler(req, res, next); | ||
| } | ||
| catch (error) { | ||
| errorMiddleware(error, req, res, next); | ||
| } | ||
| }; | ||
| if (classWrapper) { | ||
| callBack = classWrapper(callBack); | ||
| } | ||
| /** | ||
| * Get a single router object for each controller. Router object extracts | ||
| * metadata for each class method and each property which is an array function. | ||
| * @param routerLibrary | ||
| * @param controller | ||
| */ | ||
| getRouter(routerLibrary, controller) { | ||
| const prototype = Object.getPrototypeOf(controller); | ||
| const classMetadata = Reflect.getOwnMetadata(types_1.classMetadataKey, prototype); | ||
| // If this object does not have any metadata, stop now | ||
| if (!classMetadata) { | ||
| return null; | ||
| } | ||
| if (wrapper) { | ||
| callBack = wrapper(callBack); | ||
| const { basePath, childControllers: children, errorMiddlewares: classErrorMiddleware, middlewares: classMiddleware, options, wrapper: classWrapper, } = classMetadata; | ||
| // If this basePath is undefined, stop now | ||
| if (!basePath) { | ||
| return null; | ||
| } | ||
| if (errorMiddlewares) { | ||
| errorMiddlewares.forEach((errorMiddleware) => { | ||
| callBack = this.wrapErrorMiddleware(errorMiddleware, callBack); | ||
| }); | ||
| // Set options | ||
| const router = routerLibrary(options); | ||
| // Show logs | ||
| if (this.showLogs) { | ||
| console.log(`${Server.LOG_STR} "${controller.constructor.name}"`); // eslint-disable-line no-console | ||
| } | ||
| if (httpRoutes) { | ||
| httpRoutes.forEach((route) => { | ||
| const { httpDecorator, path } = route; | ||
| if (middlewares) { | ||
| router[httpDecorator](path, middlewares, callBack); | ||
| } else { | ||
| router[httpDecorator](path, callBack); | ||
| // Get middleware | ||
| if (classMiddleware) { | ||
| router.use(classMiddleware); | ||
| } | ||
| // Add paths/functions to router-object | ||
| let members = Object.getOwnPropertyNames(controller); | ||
| members = members.concat(Object.getOwnPropertyNames(prototype)); | ||
| members.forEach((member) => { | ||
| const methodMetadata = Reflect.getOwnMetadata(member, prototype); | ||
| if (methodMetadata) { | ||
| const { httpRoutes, middlewares, errorMiddlewares, wrapper, } = methodMetadata; | ||
| let callBack = (...args) => { | ||
| return controller[member](...args); | ||
| }; | ||
| if (classWrapper) { | ||
| callBack = classWrapper(callBack); | ||
| } | ||
| if (wrapper) { | ||
| callBack = wrapper(callBack); | ||
| } | ||
| if (errorMiddlewares) { | ||
| errorMiddlewares.forEach((errorMiddleware) => { | ||
| callBack = this.wrapErrorMiddleware(errorMiddleware, callBack); | ||
| }); | ||
| } | ||
| if (httpRoutes) { | ||
| httpRoutes.forEach((route) => { | ||
| const { httpDecorator, path } = route; | ||
| if (middlewares) { | ||
| router[httpDecorator](path, middlewares, callBack); | ||
| } | ||
| else { | ||
| router[httpDecorator](path, callBack); | ||
| } | ||
| }); | ||
| } | ||
| } | ||
| }); | ||
| }); | ||
| // Recursively add child controllers | ||
| if (children) { | ||
| children.forEach((child) => { | ||
| const childRouterAndPath = this.getRouter(routerLibrary, child); | ||
| if (childRouterAndPath) { | ||
| router.use(childRouterAndPath.basePath, childRouterAndPath.router); | ||
| } | ||
| }); | ||
| } | ||
| } | ||
| }); | ||
| if (children) { | ||
| children.forEach((child) => { | ||
| const childRouterAndPath = this.getRouter(routerLibrary, child); | ||
| if (childRouterAndPath) { | ||
| router.use(childRouterAndPath.basePath, childRouterAndPath.router); | ||
| // Get error middleware | ||
| if (classErrorMiddleware) { | ||
| router.use(classErrorMiddleware); | ||
| } | ||
| }); | ||
| return { | ||
| basePath, | ||
| router, | ||
| }; | ||
| } | ||
| if (classErrorMiddleware) { | ||
| router.use(classErrorMiddleware); | ||
| } | ||
| return { | ||
| basePath, | ||
| router | ||
| }; | ||
| } | ||
| }; | ||
| var Server = _Server; | ||
| Server.LOG_STR = "Setting up controller:"; | ||
| // Annotate the CommonJS export names for ESM import in node: | ||
| 0 && (module.exports = { | ||
| Server | ||
| }); | ||
| } | ||
| exports.Server = Server; | ||
| Server.LOG_STR = 'Setting up controller:'; |
+2
-2
| { | ||
| "name": "@hyperstackjs/hypernight", | ||
| "version": "1.0.33", | ||
| "version": "1.0.34", | ||
| "description": "An updated and tweaked fork of @overnight/core to be used in hyperstack", | ||
@@ -45,4 +45,4 @@ "author": "Sean Maxwell & Hyperstackjs Authors", | ||
| "clean": "rimraf dist", | ||
| "build": "pnpm clean && tsup-node src/* --dts" | ||
| "build": "pnpm clean && tsc" | ||
| } | ||
| } |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
28
40%50278
-39.43%680
-67.71%2
100%1
Infinity%