alado 1.11.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +525 -11
  2. package/dist/alado-server/alado-server.d.ts +1 -0
  3. package/dist/alado-server/alado-server.js +2 -0
  4. package/dist/alado-server/alado-server.js.map +1 -1
  5. package/dist/constants/default-id.d.ts +1 -0
  6. package/dist/constants/default-id.js +5 -0
  7. package/dist/constants/default-id.js.map +1 -0
  8. package/dist/constants/index.d.ts +1 -0
  9. package/dist/constants/index.js +1 -0
  10. package/dist/constants/index.js.map +1 -1
  11. package/dist/decorators/define-request.d.ts +3 -0
  12. package/dist/decorators/define-request.js +22 -0
  13. package/dist/decorators/define-request.js.map +1 -0
  14. package/dist/decorators/define-response.d.ts +2 -0
  15. package/dist/decorators/define-response.js +18 -0
  16. package/dist/decorators/define-response.js.map +1 -0
  17. package/dist/decorators/document-property.d.ts +2 -0
  18. package/dist/decorators/document-property.js +21 -0
  19. package/dist/decorators/document-property.js.map +1 -0
  20. package/dist/decorators/file-upload-property.d.ts +2 -0
  21. package/dist/decorators/file-upload-property.js +17 -0
  22. package/dist/decorators/file-upload-property.js.map +1 -0
  23. package/dist/decorators/http.d.ts +7 -0
  24. package/dist/decorators/http.js +72 -0
  25. package/dist/decorators/http.js.map +1 -0
  26. package/dist/decorators/index.d.ts +8 -0
  27. package/dist/decorators/index.js +25 -0
  28. package/dist/decorators/index.js.map +1 -0
  29. package/dist/decorators/initialize-application.d.ts +3 -0
  30. package/dist/decorators/initialize-application.js +27 -0
  31. package/dist/decorators/initialize-application.js.map +1 -0
  32. package/dist/decorators/initialize-injector.d.ts +1 -0
  33. package/dist/decorators/initialize-injector.js +17 -0
  34. package/dist/decorators/initialize-injector.js.map +1 -0
  35. package/dist/decorators/validate-property.d.ts +2 -0
  36. package/dist/decorators/validate-property.js +22 -0
  37. package/dist/decorators/validate-property.js.map +1 -0
  38. package/dist/decorators/with-auth.d.ts +2 -0
  39. package/dist/decorators/with-auth.js +15 -0
  40. package/dist/decorators/with-auth.js.map +1 -0
  41. package/dist/dto/alado-server-error.d.ts +2 -2
  42. package/dist/dto/index.d.ts +1 -0
  43. package/dist/dto/index.js +1 -0
  44. package/dist/dto/index.js.map +1 -1
  45. package/dist/dto/open-api-doc-object.d.ts +4 -0
  46. package/dist/dto/open-api-doc-object.js +3 -0
  47. package/dist/dto/open-api-doc-object.js.map +1 -0
  48. package/dist/factory/open-api-doc-factory.js +5 -8
  49. package/dist/factory/open-api-doc-factory.js.map +1 -1
  50. package/dist/helpers/api-doc/doc-object-setter.d.ts +2 -0
  51. package/dist/helpers/api-doc/doc-object-setter.js +25 -0
  52. package/dist/helpers/api-doc/doc-object-setter.js.map +1 -0
  53. package/dist/helpers/api-doc/index.d.ts +1 -0
  54. package/dist/helpers/api-doc/index.js +18 -0
  55. package/dist/helpers/api-doc/index.js.map +1 -0
  56. package/dist/helpers/index.d.ts +1 -0
  57. package/dist/helpers/index.js +1 -0
  58. package/dist/helpers/index.js.map +1 -1
  59. package/dist/helpers/parser/body-parser.d.ts +2 -2
  60. package/dist/helpers/parser/body-parser.js +10 -2
  61. package/dist/helpers/parser/body-parser.js.map +1 -1
  62. package/dist/helpers/validate/alado-options/validate-alado-options.js +18 -5
  63. package/dist/helpers/validate/alado-options/validate-alado-options.js.map +1 -1
  64. package/dist/helpers/validate/context/validate-context.js +1 -1
  65. package/dist/helpers/validate/context/validate-context.js.map +1 -1
  66. package/dist/index.d.ts +2 -1
  67. package/dist/index.js +15 -1
  68. package/dist/index.js.map +1 -1
  69. package/dist/injector/index.d.ts +1 -0
  70. package/dist/injector/index.js +6 -0
  71. package/dist/injector/index.js.map +1 -0
  72. package/dist/injector/injector.d.ts +6 -0
  73. package/dist/{global → injector}/injector.js +2 -1
  74. package/dist/injector/injector.js.map +1 -0
  75. package/dist/options/alado-server-options.d.ts +2 -0
  76. package/dist/options/context-options.d.ts +14 -7
  77. package/dist/options/http-decorator-options.d.ts +7 -0
  78. package/dist/options/http-decorator-options.js +3 -0
  79. package/dist/options/http-decorator-options.js.map +1 -0
  80. package/dist/options/index.d.ts +3 -0
  81. package/dist/options/index.js +3 -0
  82. package/dist/options/index.js.map +1 -1
  83. package/dist/options/initialize-application-options.d.ts +6 -0
  84. package/dist/options/initialize-application-options.js +3 -0
  85. package/dist/options/initialize-application-options.js.map +1 -0
  86. package/dist/options/injector-options.d.ts +11 -0
  87. package/dist/{global/index.js → options/injector-options.js} +1 -1
  88. package/dist/options/injector-options.js.map +1 -0
  89. package/dist/options/request-processor-options.d.ts +1 -0
  90. package/dist/request-processor/request-processor.js +2 -2
  91. package/dist/request-processor/request-processor.js.map +1 -1
  92. package/package.json +1 -1
  93. package/dist/global/index.d.ts +0 -1
  94. package/dist/global/index.js.map +0 -1
  95. package/dist/global/injector.d.ts +0 -4
  96. package/dist/global/injector.js.map +0 -1
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineRequest = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const initialize_injector_1 = require("./initialize-injector");
6
+ function defineRequest(request) {
7
+ (0, initialize_injector_1.initializeInjector)();
8
+ return function (...args) {
9
+ if (!_injector_1.injector.injected.requestMapping) {
10
+ _injector_1.injector.injected.requestMapping = {};
11
+ }
12
+ const key = `${args[0].constructor.name}.${args[1]}`;
13
+ const r = {};
14
+ for (const k in request) {
15
+ const className = request[k].name;
16
+ r[k] = _injector_1.injector.injected.propertyDefinitionsMapping[className];
17
+ _injector_1.injector.injected.requestMapping[key] = r;
18
+ }
19
+ };
20
+ }
21
+ exports.defineRequest = defineRequest;
22
+ //# sourceMappingURL=define-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-request.js","sourceRoot":"","sources":["../../src/decorators/define-request.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AAErC,+DAA2D;AAC3D,SAAgB,aAAa,CAAC,OAAiD;IAC7E,IAAA,wCAAkB,GAAE,CAAC;IACrB,OAAO,UAAU,GAAG,IAAW;QAC7B,IAAI,CAAC,oBAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;YACtC,oBAAQ,CAAC,QAAQ,CAAC,cAAc,GAAG,EAAE,CAAC;QACxC,CAAC;QACD,MAAM,GAAG,GAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,GAAgF,EAAE,CAAC;QAC1F,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,OAAO,CAAC,CAAkB,CAAC,CAAC,IAAI,CAAC;YACnD,CAAC,CAAC,CAAC,CAAC,GAAG,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;YAC/D,oBAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAdD,sCAcC"}
@@ -0,0 +1,2 @@
1
+ import { Response } from '../dto';
2
+ export declare function defineResponse(response: Response<any>): (...args: any[]) => void;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineResponse = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const initialize_injector_1 = require("./initialize-injector");
6
+ function defineResponse(response) {
7
+ (0, initialize_injector_1.initializeInjector)();
8
+ return function (...args) {
9
+ if (!_injector_1.injector.injected.responseMapping) {
10
+ _injector_1.injector.injected.responseMapping = {};
11
+ }
12
+ const [controller, method,] = args;
13
+ const key = `${controller.constructor.name}.${method}`;
14
+ _injector_1.injector.injected.responseMapping[key] = response;
15
+ };
16
+ }
17
+ exports.defineResponse = defineResponse;
18
+ //# sourceMappingURL=define-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-response.js","sourceRoot":"","sources":["../../src/decorators/define-response.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAErC,+DAA2D;AAE3D,SAAgB,cAAc,CAAC,QAAuB;IACpD,IAAA,wCAAkB,GAAE,CAAC;IACrB,OAAO,UAAU,GAAG,IAAW;QAC7B,IAAI,CAAC,oBAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YACvC,oBAAQ,CAAC,QAAQ,CAAC,eAAe,GAAG,EAAE,CAAC;QACzC,CAAC;QACD,MAAM,CACJ,UAAU,EACV,MAAM,EACP,GAAG,IAAI,CAAC;QACT,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;QACvD,oBAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IACpD,CAAC,CAAC;AACJ,CAAC;AAbD,wCAaC"}
@@ -0,0 +1,2 @@
1
+ import { PropertyDocumentation } from '../dto';
2
+ export declare function documentProperty(propertyDocumentation: PropertyDocumentation): (...args: any[]) => void;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.documentProperty = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const initialize_injector_1 = require("./initialize-injector");
6
+ function documentProperty(propertyDocumentation) {
7
+ (0, initialize_injector_1.initializeInjector)();
8
+ return function (...args) {
9
+ if (!_injector_1.injector.injected.propertyDefinitionsMapping) {
10
+ _injector_1.injector.injected.propertyDefinitionsMapping = {};
11
+ }
12
+ const key = args[0].constructor.name;
13
+ const { propertyDefinitionsMapping } = _injector_1.injector.injected;
14
+ propertyDefinitionsMapping[key] = propertyDefinitionsMapping[key] || {};
15
+ propertyDefinitionsMapping[key][args[1]] =
16
+ propertyDefinitionsMapping[key][args[1]] || {};
17
+ propertyDefinitionsMapping[key][args[1]].openApiDoc = propertyDocumentation;
18
+ };
19
+ }
20
+ exports.documentProperty = documentProperty;
21
+ //# sourceMappingURL=document-property.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-property.js","sourceRoot":"","sources":["../../src/decorators/document-property.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AACrC,+DAA2D;AAE3D,SAAgB,gBAAgB,CAAC,qBAA4C;IAC3E,IAAA,wCAAkB,GAAE,CAAC;IACrB,OAAO,UAAU,GAAG,IAAW;QAC7B,IAAI,CAAC,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,EAAE,CAAC;YAClD,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,GAAG,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,MAAM,EAAE,0BAA0B,EAAE,GAAG,oBAAQ,CAAC,QAAQ,CAAC;QACzD,0BAA0B,CAAC,GAAG,CAAC,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAK,EAAyC,CAAC;QAChH,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC;YAChD,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,IAAK,EAAyB,CAAC;QAClF,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAwB,CAAC,UAAU,GAAG,qBAAqB,CAAC;IAChH,CAAC,CAAC;AACJ,CAAC;AAbD,4CAaC"}
@@ -0,0 +1,2 @@
1
+ import { FilePropertyDefinition } from '../dto';
2
+ export declare function fileUploadProperty(filePropertyDefinition: FilePropertyDefinition): (...args: any[]) => void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fileUploadProperty = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const initialize_injector_1 = require("./initialize-injector");
6
+ function fileUploadProperty(filePropertyDefinition) {
7
+ (0, initialize_injector_1.initializeInjector)();
8
+ return function (...args) {
9
+ const key = args[0].constructor.name;
10
+ _injector_1.injector.injected.propertyDefinitionsMapping[key] =
11
+ _injector_1.injector.injected.propertyDefinitionsMapping[key] ||
12
+ {};
13
+ _injector_1.injector.injected.propertyDefinitionsMapping[key][args[1]] = filePropertyDefinition;
14
+ };
15
+ }
16
+ exports.fileUploadProperty = fileUploadProperty;
17
+ //# sourceMappingURL=file-upload-property.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-upload-property.js","sourceRoot":"","sources":["../../src/decorators/file-upload-property.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AACrC,+DAA2D;AAE3D,SAAgB,kBAAkB,CAAC,sBAA8C;IAC/E,IAAA,wCAAkB,GAAE,CAAC;IACrB,OAAO,UAAU,GAAG,IAAW;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC;YAC/C,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC;gBAChD,EAAkE,CAAC;QACtE,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,GAAG,sBAAsB,CAAC;IAChG,CAAC,CAAC;AACJ,CAAC;AATD,gDASC"}
@@ -0,0 +1,7 @@
1
+ import { HttpDecoratorOptions } from '../options';
2
+ export declare function get(path: string, options?: HttpDecoratorOptions): (instance: any, method: string) => void;
3
+ export declare function post(path: string, options?: HttpDecoratorOptions): (instance: any, method: string) => void;
4
+ export declare function put(path: string, options?: HttpDecoratorOptions): (instance: any, method: string) => void;
5
+ export declare function patch(path: string, options?: HttpDecoratorOptions): (instance: any, method: string) => void;
6
+ export declare function del(path: string, options?: HttpDecoratorOptions): (instance: any, method: string) => void;
7
+ export declare function head(path: string, options?: HttpDecoratorOptions): (instance: any, method: string) => void;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.head = exports.del = exports.patch = exports.put = exports.post = exports.get = void 0;
4
+ const _const_1 = require("../constants");
5
+ const _injector_1 = require("../injector");
6
+ const initialize_injector_1 = require("./initialize-injector");
7
+ function callHttpMethod(httpMethod, path, options = {}) {
8
+ (0, initialize_injector_1.initializeInjector)();
9
+ const defaultDescription = `${httpMethod} ${path}`;
10
+ const normalizedMethod = httpMethod.toLowerCase();
11
+ const appId = options?.appId || _const_1.DEFAULT_ID;
12
+ const app = _injector_1.injector.injected.appMapping[appId];
13
+ return function (instance, method) {
14
+ const key = `${instance.constructor.name}.${method}`;
15
+ const fn = (app) => {
16
+ app[normalizedMethod](path, {
17
+ title: options.title || defaultDescription,
18
+ auth: _injector_1.injector.injected.authMapping[key] || undefined,
19
+ options: {
20
+ allowUnknownFields: false,
21
+ isHidden: options.isHidden || false,
22
+ openApiDoc: {
23
+ description: options.description || defaultDescription,
24
+ operationId: defaultDescription,
25
+ tags: options.tags || [],
26
+ },
27
+ },
28
+ request: _injector_1.injector.injected.requestMapping[key] || {},
29
+ response: _injector_1.injector.injected.responseMapping[key] || {},
30
+ }, instance[method].bind(instance));
31
+ };
32
+ if (app) {
33
+ fn(app);
34
+ const shadowApp = _injector_1.injector.injected.shadowAppMapping[appId];
35
+ if (Array.isArray(shadowApp) && shadowApp.length) {
36
+ while (shadowApp.length) {
37
+ const fn = shadowApp.pop();
38
+ fn(app);
39
+ }
40
+ }
41
+ }
42
+ else {
43
+ _injector_1.injector.injected.shadowAppMapping[appId] = _injector_1.injector.injected.shadowAppMapping[appId] || [];
44
+ _injector_1.injector.injected.shadowAppMapping[appId].push(fn);
45
+ }
46
+ };
47
+ }
48
+ function get(path, options = {}) {
49
+ return callHttpMethod(_const_1.HttpMethod.GET, path, options);
50
+ }
51
+ exports.get = get;
52
+ function post(path, options = {}) {
53
+ return callHttpMethod(_const_1.HttpMethod.POST, path, options);
54
+ }
55
+ exports.post = post;
56
+ function put(path, options = {}) {
57
+ return callHttpMethod(_const_1.HttpMethod.PUT, path, options);
58
+ }
59
+ exports.put = put;
60
+ function patch(path, options = {}) {
61
+ return callHttpMethod(_const_1.HttpMethod.PATCH, path, options);
62
+ }
63
+ exports.patch = patch;
64
+ function del(path, options = {}) {
65
+ return callHttpMethod(_const_1.HttpMethod.DELETE, path, options);
66
+ }
67
+ exports.del = del;
68
+ function head(path, options = {}) {
69
+ return callHttpMethod(_const_1.HttpMethod.HEAD, path, options);
70
+ }
71
+ exports.head = head;
72
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/decorators/http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export * from './initialize-application';
2
+ export * from './document-property';
3
+ export * from './validate-property';
4
+ export * from './file-upload-property';
5
+ export * from './with-auth';
6
+ export * from './define-request';
7
+ export * from './define-response';
8
+ export * from './http';
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./initialize-application"), exports);
18
+ __exportStar(require("./document-property"), exports);
19
+ __exportStar(require("./validate-property"), exports);
20
+ __exportStar(require("./file-upload-property"), exports);
21
+ __exportStar(require("./with-auth"), exports);
22
+ __exportStar(require("./define-request"), exports);
23
+ __exportStar(require("./define-response"), exports);
24
+ __exportStar(require("./http"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,sDAAoC;AACpC,sDAAoC;AACpC,yDAAuC;AACvC,8CAA4B;AAC5B,mDAAiC;AACjC,oDAAkC;AAClC,yCAAuB"}
@@ -0,0 +1,3 @@
1
+ import { InitializeApplicationOptions } from '../options';
2
+ import { AladoServer } from '../alado-server';
3
+ export declare function initializeApplication(initializeApplicationOptions: InitializeApplicationOptions): AladoServer;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initializeApplication = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const _const_1 = require("../constants");
6
+ const _alado_1 = require("../alado-server");
7
+ const initialize_injector_1 = require("./initialize-injector");
8
+ function initializeApplication(initializeApplicationOptions) {
9
+ (0, initialize_injector_1.initializeInjector)();
10
+ const { serverOptions, controllers } = initializeApplicationOptions;
11
+ _injector_1.injector.injected.appMapping[serverOptions.appId || _const_1.DEFAULT_ID] =
12
+ _injector_1.injector.injected.appMapping[serverOptions.appId || _const_1.DEFAULT_ID] || new _alado_1.AladoServer(serverOptions);
13
+ const app = _injector_1.injector.injected.appMapping[serverOptions.appId || _const_1.DEFAULT_ID];
14
+ for (const Controller of controllers) {
15
+ new Controller();
16
+ }
17
+ const shadowApp = _injector_1.injector.injected.shadowAppMapping[serverOptions.appId || _const_1.DEFAULT_ID];
18
+ if (Array.isArray(shadowApp) && shadowApp.length) {
19
+ while (shadowApp.length) {
20
+ const fn = shadowApp.pop();
21
+ fn(app);
22
+ }
23
+ }
24
+ return app;
25
+ }
26
+ exports.initializeApplication = initializeApplication;
27
+ //# sourceMappingURL=initialize-application.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialize-application.js","sourceRoot":"","sources":["../../src/decorators/initialize-application.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AACrC,mCAAoC;AACpC,mCAAqC;AACrC,+DAA2D;AAE3D,SAAgB,qBAAqB,CAAC,4BAA0D;IAC9F,IAAA,wCAAkB,GAAE,CAAC;IACrB,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,4BAA4B,CAAC;IACpE,oBAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,mBAAU,CAAC;QAC7D,oBAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,mBAAU,CAAC,IAAI,IAAI,oBAAW,CAAC,aAAa,CAAC,CAAC;IACpG,MAAM,GAAG,GAAgB,oBAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,mBAAU,CAAC,CAAC;IACzF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,UAAU,EAAE,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAAG,oBAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,aAAa,CAAC,KAAK,IAAI,mBAAU,CAAC,CAAC;IACxF,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC;YAC3B,EAAE,CAAC,GAAG,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAjBD,sDAiBC"}
@@ -0,0 +1 @@
1
+ export declare function initializeInjector(): void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initializeInjector = void 0;
4
+ const _injector_1 = require("../injector");
5
+ function initializeInjector() {
6
+ _injector_1.injector.inject({
7
+ appMapping: _injector_1.injector.injected.appMapping || {},
8
+ shadowAppMapping: _injector_1.injector.injected.shadowAppMapping || {},
9
+ requestMapping: _injector_1.injector.injected.requestMapping || {},
10
+ responseMapping: _injector_1.injector.injected.responseMapping || {},
11
+ authMapping: _injector_1.injector.injected.authMapping || {},
12
+ propertyDefinitionsMapping: _injector_1.injector.injected.propertyDefinitionsMapping || {},
13
+ controllers: _injector_1.injector.injected.controllers || {},
14
+ });
15
+ }
16
+ exports.initializeInjector = initializeInjector;
17
+ //# sourceMappingURL=initialize-injector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialize-injector.js","sourceRoot":"","sources":["../../src/decorators/initialize-injector.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAErC,SAAgB,kBAAkB;IAChC,oBAAQ,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,oBAAQ,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE;QAC9C,gBAAgB,EAAE,oBAAQ,CAAC,QAAQ,CAAC,gBAAgB,IAAI,EAAE;QAC1D,cAAc,EAAE,oBAAQ,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE;QACtD,eAAe,EAAE,oBAAQ,CAAC,QAAQ,CAAC,eAAe,IAAI,EAAE;QACxD,WAAW,EAAE,oBAAQ,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE;QAChD,0BAA0B,EAAE,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,IAAI,EAAE;QAC9E,WAAW,EAAE,oBAAQ,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE;KACjD,CAAC,CAAC;AACL,CAAC;AAVD,gDAUC"}
@@ -0,0 +1,2 @@
1
+ import { PropertyValidation } from '../dto';
2
+ export declare function validateProperty(propertyValidation: PropertyValidation): (...args: any[]) => void;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateProperty = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const initialize_injector_1 = require("./initialize-injector");
6
+ function validateProperty(propertyValidation) {
7
+ (0, initialize_injector_1.initializeInjector)();
8
+ return function (...args) {
9
+ if (!_injector_1.injector.injected.propertyDefinitionsMapping) {
10
+ _injector_1.injector.injected.propertyDefinitionsMapping = {};
11
+ }
12
+ const key = args[0].constructor.name;
13
+ _injector_1.injector.injected.propertyDefinitionsMapping[key] =
14
+ _injector_1.injector.injected.propertyDefinitionsMapping[key] || {};
15
+ _injector_1.injector.injected.propertyDefinitionsMapping[key][args[1]] =
16
+ _injector_1.injector.injected.propertyDefinitionsMapping[key][args[1]] || {};
17
+ _injector_1.injector.injected.propertyDefinitionsMapping[key][args[1]].validation =
18
+ propertyValidation;
19
+ };
20
+ }
21
+ exports.validateProperty = validateProperty;
22
+ //# sourceMappingURL=validate-property.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-property.js","sourceRoot":"","sources":["../../src/decorators/validate-property.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AACrC,+DAA2D;AAE3D,SAAgB,gBAAgB,CAAC,kBAAsC;IACrE,IAAA,wCAAkB,GAAE,CAAC;IACrB,OAAO,UAAU,GAAG,IAAW;QAC7B,IAAI,CAAC,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,EAAE,CAAC;YAClD,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,GAAG,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC;YAC/C,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAK,EAAyC,CAAC;QAClG,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC;YAClE,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,IAAK,EAAyB,CAAC;QACpG,oBAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAW,CAAwB,CAAC,UAAU;YACrG,kBAAkB,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC;AAdD,4CAcC"}
@@ -0,0 +1,2 @@
1
+ import { RequestAuthentication } from '../dto';
2
+ export declare function withAuth(requestAuthentication: RequestAuthentication): (...args: any[]) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.withAuth = void 0;
4
+ const _injector_1 = require("../injector");
5
+ const initialize_injector_1 = require("./initialize-injector");
6
+ function withAuth(requestAuthentication) {
7
+ (0, initialize_injector_1.initializeInjector)();
8
+ return function (...args) {
9
+ const [controller, method,] = args;
10
+ const key = `${controller.constructor.name}.${method}`;
11
+ _injector_1.injector.injected.authMapping[key] = requestAuthentication;
12
+ };
13
+ }
14
+ exports.withAuth = withAuth;
15
+ //# sourceMappingURL=with-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-auth.js","sourceRoot":"","sources":["../../src/decorators/with-auth.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AACrC,+DAA2D;AAE3D,SAAgB,QAAQ,CAAC,qBAA4C;IACnE,IAAA,wCAAkB,GAAE,CAAC;IACrB,OAAO,UAAU,GAAG,IAAW;QAC7B,MAAM,CACJ,UAAU,EACV,MAAM,EACP,GAAG,IAAI,CAAC;QACT,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;QACvD,oBAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC;IAC7D,CAAC,CAAC;AACJ,CAAC;AAVD,4BAUC"}
@@ -1,4 +1,4 @@
1
- export interface AladoServerError {
1
+ export type AladoServerError = {
2
2
  statusCode: number;
3
3
  message: string;
4
- }
4
+ };
@@ -6,3 +6,4 @@ export * from './response';
6
6
  export * from './property-definition';
7
7
  export * from './request-authentication';
8
8
  export * from './route';
9
+ export * from './open-api-doc-object';
package/dist/dto/index.js CHANGED
@@ -22,4 +22,5 @@ __exportStar(require("./response"), exports);
22
22
  __exportStar(require("./property-definition"), exports);
23
23
  __exportStar(require("./request-authentication"), exports);
24
24
  __exportStar(require("./route"), exports);
25
+ __exportStar(require("./open-api-doc-object"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,uDAAqC;AACrC,wDAAsC;AACtC,4CAA0B;AAC1B,6CAA2B;AAC3B,wDAAsC;AACtC,2DAAyC;AACzC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,uDAAqC;AACrC,wDAAsC;AACtC,4CAA0B;AAC1B,6CAA2B;AAC3B,wDAAsC;AACtC,2DAAyC;AACzC,0CAAwB;AACxB,wDAAsC"}
@@ -0,0 +1,4 @@
1
+ export type OpenApiDocObject = {
2
+ type: 'object';
3
+ properties: Record<string, any>;
4
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=open-api-doc-object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open-api-doc-object.js","sourceRoot":"","sources":["../../src/dto/open-api-doc-object.ts"],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.openApiDocFactory = void 0;
4
+ const _helper_1 = require("../helpers");
4
5
  const nonBinResponses = [
5
6
  'application/json',
6
7
  'application/xml',
@@ -112,10 +113,8 @@ function openApiDocFactory(openApiMethod, openApiRoute, context, openApiDocObjec
112
113
  if (Array.isArray(body)) {
113
114
  let bodyObject = {};
114
115
  if (nonBinResponses.includes(responseContentType)) {
115
- bodyObject = { properties: {} };
116
- for (const prop in body[0]) {
117
- bodyObject.properties[prop] = body[0][prop];
118
- }
116
+ bodyObject = { properties: {}, type: 'object' };
117
+ (0, _helper_1.docObjectSetter)(body[0], bodyObject);
119
118
  }
120
119
  else {
121
120
  bodyObject = { example: '' };
@@ -140,10 +139,8 @@ function openApiDocFactory(openApiMethod, openApiRoute, context, openApiDocObjec
140
139
  else {
141
140
  let bodyObject = {};
142
141
  if (nonBinResponses.includes(responseContentType)) {
143
- bodyObject = { properties: {} };
144
- for (const prop in body) {
145
- bodyObject.properties[prop] = body[prop];
146
- }
142
+ bodyObject = { properties: {}, type: 'object' };
143
+ (0, _helper_1.docObjectSetter)(body, bodyObject);
147
144
  }
148
145
  else {
149
146
  bodyObject = { example: '' };
@@ -1 +1 @@
1
- {"version":3,"file":"open-api-doc-factory.js","sourceRoot":"","sources":["../../src/factory/open-api-doc-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-api-doc-factory.js","sourceRoot":"","sources":["../../src/factory/open-api-doc-factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { OpenApiDocObject } from '../../dto';
2
+ export declare function docObjectSetter(source: any, target: OpenApiDocObject): void;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.docObjectSetter = void 0;
4
+ function isOpenApiDocObject(obj) {
5
+ return obj && typeof obj === 'object' && obj.type;
6
+ }
7
+ function docObjectSetter(source, target) {
8
+ for (const key in source) {
9
+ if (source[key] && typeof source[key] === 'object' && !isOpenApiDocObject(source[key])) {
10
+ target.properties[key] = { type: 'object', properties: {} };
11
+ docObjectSetter(source[key], target.properties[key]);
12
+ }
13
+ else {
14
+ if (isOpenApiDocObject(source[key])) {
15
+ target.properties[key] = source[key];
16
+ }
17
+ else {
18
+ target.properties[key] = target.properties[key] || {};
19
+ target.properties[key].type = Array.isArray(source[key]) ? 'array' : typeof source[key];
20
+ }
21
+ }
22
+ }
23
+ }
24
+ exports.docObjectSetter = docObjectSetter;
25
+ //# sourceMappingURL=doc-object-setter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-object-setter.js","sourceRoot":"","sources":["../../../src/helpers/api-doc/doc-object-setter.ts"],"names":[],"mappings":";;;AAEA,SAAS,kBAAkB,CAAC,GAAQ;IAClC,OAAO,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC;AACpD,CAAC;AAED,SAAgB,eAAe,CAAC,MAAW,EAAE,MAAwB;IACnE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACvF,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;YAC5D,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,IAAI,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACtD,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAdD,0CAcC"}
@@ -0,0 +1 @@
1
+ export * from './doc-object-setter';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./doc-object-setter"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/api-doc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
@@ -2,3 +2,4 @@ export * from './parser';
2
2
  export * from './accessor';
3
3
  export * from './service';
4
4
  export * from './validate';
5
+ export * from './api-doc';
@@ -18,4 +18,5 @@ __exportStar(require("./parser"), exports);
18
18
  __exportStar(require("./accessor"), exports);
19
19
  __exportStar(require("./service"), exports);
20
20
  __exportStar(require("./validate"), exports);
21
+ __exportStar(require("./api-doc"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B;AAC3B,4CAA0B;AAC1B,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B;AAC3B,4CAA0B;AAC1B,6CAA2B;AAC3B,4CAA0B"}
@@ -1,3 +1,3 @@
1
1
  /// <reference types="node" />
2
- import { IncomingMessage } from 'http';
3
- export declare function bodyParser(req: IncomingMessage): Promise<any>;
2
+ import { IncomingMessage, OutgoingMessage } from 'http';
3
+ export declare function bodyParser(req: IncomingMessage, res: OutgoingMessage, limit: number): Promise<any>;
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.bodyParser = void 0;
4
4
  const _const_1 = require("../../constants");
5
5
  const stream_1 = require("stream");
6
- async function bodyParser(req) {
6
+ async function bodyParser(req, res, limit) {
7
7
  const contentType = req.headers['content-type'];
8
8
  const result = {
9
9
  body: {},
@@ -71,6 +71,14 @@ async function bodyParser(req) {
71
71
  await new Promise((resolve, reject) => {
72
72
  req.on('data', (chunk) => {
73
73
  body += chunk.toString();
74
+ if (limit && Buffer.byteLength(body, 'utf8') > limit) {
75
+ req.removeAllListeners('data');
76
+ req.removeAllListeners('end');
77
+ reject({
78
+ statusCode: 413,
79
+ message: 'Content Too Large',
80
+ });
81
+ }
74
82
  });
75
83
  req.on('end', () => {
76
84
  result.rawBody = body;
@@ -84,7 +92,7 @@ async function bodyParser(req) {
84
92
  resolve();
85
93
  }
86
94
  catch (e) {
87
- reject({ statusCode: 400, message: `Invalid JSON` });
95
+ reject({ statusCode: 400, message: `Invalid JSON body` });
88
96
  }
89
97
  }
90
98
  else if (contentType?.startsWith(_const_1.ContentType.X_WWW_FORM_URLENCODED)) {
@@ -1 +1 @@
1
- {"version":3,"file":"body-parser.js","sourceRoot":"","sources":["../../../src/helpers/parser/body-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"body-parser.js","sourceRoot":"","sources":["../../../src/helpers/parser/body-parser.ts"],"names":[],"mappings":"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"}