web_api_base 6.0.2 → 6.1.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 (134) hide show
  1. package/dist/Application.d.ts +1 -0
  2. package/dist/Application.d.ts.map +1 -0
  3. package/dist/Application.js +23 -96
  4. package/dist/Application.js.map +1 -1
  5. package/dist/ApplicationConfiguration.d.ts +7 -3
  6. package/dist/ApplicationConfiguration.d.ts.map +1 -0
  7. package/dist/ApplicationConfiguration.js +9 -0
  8. package/dist/ApplicationConfiguration.js.map +1 -1
  9. package/dist/bin/CreateApplication.d.ts +1 -0
  10. package/dist/bin/CreateApplication.d.ts.map +1 -0
  11. package/dist/bin/CreateController.d.ts +1 -0
  12. package/dist/bin/CreateController.d.ts.map +1 -0
  13. package/dist/bin/Factory.d.ts +1 -0
  14. package/dist/bin/Factory.d.ts.map +1 -0
  15. package/dist/controllers/AcceptedResult.d.ts +1 -0
  16. package/dist/controllers/AcceptedResult.d.ts.map +1 -0
  17. package/dist/controllers/ActionResult.d.ts +1 -0
  18. package/dist/controllers/ActionResult.d.ts.map +1 -0
  19. package/dist/controllers/BadRequestResult.d.ts +1 -0
  20. package/dist/controllers/BadRequestResult.d.ts.map +1 -0
  21. package/dist/controllers/CreatedResult.d.ts +1 -0
  22. package/dist/controllers/CreatedResult.d.ts.map +1 -0
  23. package/dist/controllers/DownloadFileResult.d.ts +5 -0
  24. package/dist/controllers/DownloadFileResult.d.ts.map +1 -0
  25. package/dist/controllers/DownloadFileResult.js +13 -0
  26. package/dist/controllers/DownloadFileResult.js.map +1 -0
  27. package/dist/controllers/ErrorResult.d.ts +1 -0
  28. package/dist/controllers/ErrorResult.d.ts.map +1 -0
  29. package/dist/controllers/ForbiddenResult.d.ts +1 -0
  30. package/dist/controllers/ForbiddenResult.d.ts.map +1 -0
  31. package/dist/controllers/GenericResult.d.ts +1 -0
  32. package/dist/controllers/GenericResult.d.ts.map +1 -0
  33. package/dist/controllers/NoContentResult.d.ts +1 -0
  34. package/dist/controllers/NoContentResult.d.ts.map +1 -0
  35. package/dist/controllers/NotFoundResult.d.ts +1 -0
  36. package/dist/controllers/NotFoundResult.d.ts.map +1 -0
  37. package/dist/controllers/OKResult.d.ts +1 -0
  38. package/dist/controllers/OKResult.d.ts.map +1 -0
  39. package/dist/controllers/SendFileResult.d.ts +5 -0
  40. package/dist/controllers/SendFileResult.d.ts.map +1 -0
  41. package/dist/controllers/SendFileResult.js +13 -0
  42. package/dist/controllers/SendFileResult.js.map +1 -0
  43. package/dist/controllers/UnauthorizedResult.d.ts +1 -0
  44. package/dist/controllers/UnauthorizedResult.d.ts.map +1 -0
  45. package/dist/controllers/base/ControllerBase.d.ts +5 -0
  46. package/dist/controllers/base/ControllerBase.d.ts.map +1 -0
  47. package/dist/controllers/base/ControllerBase.js +19 -0
  48. package/dist/controllers/base/ControllerBase.js.map +1 -1
  49. package/dist/decorators/controllers/ControllerDecorators.d.ts +1 -0
  50. package/dist/decorators/controllers/ControllerDecorators.d.ts.map +1 -0
  51. package/dist/decorators/documentation/DocumentationDecorators.d.ts +1 -0
  52. package/dist/decorators/documentation/DocumentationDecorators.d.ts.map +1 -0
  53. package/dist/decorators/metadata/MetadataDecorators.d.ts +17 -0
  54. package/dist/decorators/metadata/MetadataDecorators.d.ts.map +1 -0
  55. package/dist/decorators/metadata/MetadataDecorators.js +67 -0
  56. package/dist/decorators/metadata/MetadataDecorators.js.map +1 -0
  57. package/dist/decorators/validations/ValidationDecorators.d.ts +1 -1
  58. package/dist/decorators/validations/ValidationDecorators.d.ts.map +1 -0
  59. package/dist/decorators/validations/ValidationDecorators.js +0 -1
  60. package/dist/decorators/validations/ValidationDecorators.js.map +1 -1
  61. package/dist/dependencyInjection/DependecyService.d.ts +15 -10
  62. package/dist/dependencyInjection/DependecyService.d.ts.map +1 -0
  63. package/dist/dependencyInjection/DependecyService.js +104 -54
  64. package/dist/dependencyInjection/DependecyService.js.map +1 -1
  65. package/dist/dependencyInjection/IDIContext.d.ts +2 -0
  66. package/dist/dependencyInjection/IDIContext.d.ts.map +1 -0
  67. package/dist/documentation/CSS.d.ts +1 -0
  68. package/dist/documentation/CSS.d.ts.map +1 -0
  69. package/dist/documentation/Documentation.d.ts +1 -0
  70. package/dist/documentation/Documentation.d.ts.map +1 -0
  71. package/dist/documentation/HTML.d.ts +1 -0
  72. package/dist/documentation/HTML.d.ts.map +1 -0
  73. package/dist/documentation/JS.d.ts +1 -0
  74. package/dist/documentation/JS.d.ts.map +1 -0
  75. package/dist/documentation/JS.js +5 -2
  76. package/dist/documentation/JS.js.map +1 -1
  77. package/dist/enums/httpVerbs/HttpVerbs.d.ts +1 -0
  78. package/dist/enums/httpVerbs/HttpVerbs.d.ts.map +1 -0
  79. package/dist/exceptions/ArgumentNullException.d.ts +1 -0
  80. package/dist/exceptions/ArgumentNullException.d.ts.map +1 -0
  81. package/dist/exceptions/BodyParseException.d.ts +1 -0
  82. package/dist/exceptions/BodyParseException.d.ts.map +1 -0
  83. package/dist/exceptions/ControllerLoadException.d.ts +1 -0
  84. package/dist/exceptions/ControllerLoadException.d.ts.map +1 -0
  85. package/dist/exceptions/DecoratorException.d.ts +1 -0
  86. package/dist/exceptions/DecoratorException.d.ts.map +1 -0
  87. package/dist/exceptions/Exception.d.ts +1 -0
  88. package/dist/exceptions/Exception.d.ts.map +1 -0
  89. package/dist/exceptions/FileNotFoundException.d.ts +1 -0
  90. package/dist/exceptions/FileNotFoundException.d.ts.map +1 -0
  91. package/dist/exceptions/FindDependencyException.d.ts +1 -0
  92. package/dist/exceptions/FindDependencyException.d.ts.map +1 -0
  93. package/dist/exceptions/InvalidEntityException.d.ts +1 -0
  94. package/dist/exceptions/InvalidEntityException.d.ts.map +1 -0
  95. package/dist/exceptions/RegisterDependencyException.d.ts +4 -0
  96. package/dist/exceptions/RegisterDependencyException.d.ts.map +1 -0
  97. package/dist/exceptions/RegisterDependencyException.js +10 -0
  98. package/dist/exceptions/RegisterDependencyException.js.map +1 -0
  99. package/dist/file/AbstractFileService.d.ts +1 -0
  100. package/dist/file/AbstractFileService.d.ts.map +1 -0
  101. package/dist/file/AbstractMultiPartRequestService.d.ts +1 -0
  102. package/dist/file/AbstractMultiPartRequestService.d.ts.map +1 -0
  103. package/dist/file/File.d.ts +1 -0
  104. package/dist/file/File.d.ts.map +1 -0
  105. package/dist/file/FileService.d.ts +1 -0
  106. package/dist/file/FileService.d.ts.map +1 -0
  107. package/dist/file/FormidableMultiPartRequestService.d.ts +1 -0
  108. package/dist/file/FormidableMultiPartRequestService.d.ts.map +1 -0
  109. package/dist/index.d.ts +12 -0
  110. package/dist/index.d.ts.map +1 -0
  111. package/dist/index.js +41 -1
  112. package/dist/index.js.map +1 -1
  113. package/dist/interfaces/IApplication.d.ts +1 -0
  114. package/dist/interfaces/IApplication.d.ts.map +1 -0
  115. package/dist/interfaces/IApplicationConfiguration.d.ts +7 -3
  116. package/dist/interfaces/IApplicationConfiguration.d.ts.map +1 -0
  117. package/dist/interfaces/IController.d.ts +1 -0
  118. package/dist/interfaces/IController.d.ts.map +1 -0
  119. package/dist/metadata/FunctionAnalizer.d.ts +1 -0
  120. package/dist/metadata/FunctionAnalizer.d.ts.map +1 -0
  121. package/dist/metadata/OwnMetaDataContainer.d.ts +1 -0
  122. package/dist/metadata/OwnMetaDataContainer.d.ts.map +1 -0
  123. package/dist/metadata/OwnMetaDataContainer.js +11 -1
  124. package/dist/metadata/OwnMetaDataContainer.js.map +1 -1
  125. package/dist/metadata/Type.d.ts +3 -0
  126. package/dist/metadata/Type.d.ts.map +1 -0
  127. package/dist/metadata/Type.js +124 -4
  128. package/dist/metadata/Type.js.map +1 -1
  129. package/dist/midlewares/IMidleware.d.ts +1 -0
  130. package/dist/midlewares/IMidleware.d.ts.map +1 -0
  131. package/dist/utils/Utils.d.ts +1 -0
  132. package/dist/utils/Utils.d.ts.map +1 -0
  133. package/package.json +4 -5
  134. package/readme.md +36 -12
@@ -26,3 +26,4 @@ export default abstract class Application implements IApplication {
26
26
  private CallErrorHandler;
27
27
  abstract ConfigureAsync(appConfig: IApplicationConfiguration): Promise<void>;
28
28
  }
29
+ //# sourceMappingURL=Application.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Application.d.ts","sourceRoot":"","sources":["../Application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,OAAO,YAAY,EAAE,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,yBAAyB,MAAM,wCAAwC,CAAC;AAa/E,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAGnE,OAAO,+BAA2D,MAAM,wCAAwC,CAAC;AAOjH,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAY,YAAW,YAAY;IAE7D,OAAc,cAAc,EAAE,yBAAyB,CAAC;IAExD,OAAO,CAAC,mBAAmB,CAA8C;IAEzE,OAAO,CAAC,KAAK,CAA4C;IAElD,wBAAwB,EAAE,yBAAyB,CAAC;IAEpD,OAAO,EAAE,OAAO,CAAC;IAEjB,gCAAgC,CAAC,EAAE,2BAA2B,CAAC;;IAWzD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BxC,SAAS,CAAC,OAAO,IAAI,IAAI;IAIzB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,uBAAuB;IAgC/B,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyD3D,SAAS,CAAC,gCAAgC,CAAC,CAAC,SAAS,+BAA+B,EAAE,IAAI,EAAG,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAI,IAAI;IAK9H,SAAS,CAAC,gBAAgB,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE;QAAE,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;KAAE,GAAG,IAAI;IA4etF,mBAAmB,IAAI,IAAI;IAIlC,OAAO,CAAC,uBAAuB;IAgC/B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,gBAAgB;aAiCR,cAAc,CAAC,SAAS,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtF"}
@@ -52,6 +52,8 @@ const AbstractMultiPartRequestService_1 = __importStar(require("./file/AbstractM
52
52
  const FormidableMultiPartRequestService_1 = __importDefault(require("./file/FormidableMultiPartRequestService"));
53
53
  const File_1 = __importDefault(require("./file/File"));
54
54
  const Type_1 = __importDefault(require("./metadata/Type"));
55
+ const SendFileResult_1 = __importDefault(require("./controllers/SendFileResult"));
56
+ const DownloadFileResult_1 = __importDefault(require("./controllers/DownloadFileResult"));
55
57
  class Application {
56
58
  constructor() {
57
59
  this._createdControllers = [];
@@ -253,54 +255,10 @@ class Application {
253
255
  obj = request.body[f.Field];
254
256
  }
255
257
  }
256
- if (["string", "number", "boolean", "bigint"].filter(s => s == ts[f.Index].name.toLowerCase()).length == 0) {
257
- try {
258
- obj.__proto__ = ts[f.Index];
259
- }
260
- catch (_c) { }
261
- if (f.Type.name == "Object") {
262
- fromBodyParams.push(obj);
263
- params[f.Index] = obj;
264
- }
265
- else {
266
- let t = Reflect.construct(ts[f.Index], []);
267
- Object.assign(t, obj);
268
- fromBodyParams.push(t);
269
- params[f.Index] = t;
270
- }
271
- }
272
- else {
273
- if (obj != undefined && typeof obj == "string" && obj.indexOf('"') == 0 && obj.lastIndexOf('"') == obj.length - 1)
274
- obj = obj.substring(1, obj.length - 1);
275
- if (obj != undefined && typeof obj == "string" && obj.indexOf("'") == 0 && obj.lastIndexOf("'") == obj.length - 1)
276
- obj = obj.substring(1, obj.length - 1);
277
- if (obj != undefined && ts[f.Index].name.toLowerCase() == "number") {
278
- let number = Number.parseFloat(obj.toString());
279
- if (number != Number.NaN) {
280
- fromBodyParams.push(number);
281
- params[f.Index] = number;
282
- }
283
- else {
284
- fromBodyParams.push(undefined);
285
- params[f.Index] = undefined;
286
- }
287
- }
288
- else if (obj != undefined && ts[f.Index].name.toLowerCase() == "string") {
289
- fromBodyParams.push(obj.toString());
290
- params[f.Index] = obj.toString();
291
- }
292
- else if (obj != undefined && ts[f.Index].name.toLowerCase() == "date") {
293
- try {
294
- fromBodyParams.push(Type_1.default.CastStringToDateUTC(obj));
295
- params[f.Index] = Type_1.default.CastStringToDateUTC(obj);
296
- }
297
- catch (_d) { }
298
- }
299
- else {
300
- fromBodyParams.push(obj);
301
- params[f.Index] = obj;
302
- }
303
- }
258
+ let param = Type_1.default.SetPrototype(obj, ts[f.Index]);
259
+ fromBodyParams.push(param);
260
+ params[f.Index] = param;
261
+ return;
304
262
  });
305
263
  }
306
264
  let fromQueryParams = [];
@@ -320,50 +278,10 @@ class Application {
320
278
  return;
321
279
  }
322
280
  obj = (_a = request.query[f.Field]) === null || _a === void 0 ? void 0 : _a.toString();
323
- if (obj != undefined && typeof obj == "string" && obj.indexOf('"') == 0 && obj.lastIndexOf('"') == obj.length - 1)
324
- obj = obj.substring(1, obj.length - 1);
325
- if (obj != undefined && typeof obj == "string" && obj.indexOf("'") == 0 && obj.lastIndexOf("'") == obj.length - 1)
326
- obj = obj.substring(1, obj.length - 1);
327
- if (obj != undefined && f.Type.name.toLowerCase() == "number") {
328
- let number = Number.parseFloat(obj.toString());
329
- if (number != Number.NaN) {
330
- fromQueryParams.push(number);
331
- params[f.Index] = number;
332
- }
333
- else {
334
- fromBodyParams.push(undefined);
335
- params[f.Index] = undefined;
336
- }
337
- }
338
- else if (obj != undefined && f.Type.name.toLowerCase() == "string") {
339
- fromQueryParams.push(obj.toString());
340
- params[f.Index] = obj.toString();
341
- }
342
- else if (obj != undefined && f.Type.name.toLowerCase() == "date") {
343
- try {
344
- fromQueryParams.push(Type_1.default.CastStringToDateUTC(obj));
345
- params[f.Index] = Type_1.default.CastStringToDateUTC(obj);
346
- }
347
- catch (_b) { }
348
- }
349
- else if (obj != undefined && f.Type.name.toLowerCase() == "boolean") {
350
- try {
351
- if (typeof obj != "boolean") {
352
- let v = obj.toString().toLowerCase() == "true";
353
- fromQueryParams.push(v);
354
- params[f.Index] = v;
355
- }
356
- else {
357
- fromQueryParams.push(obj);
358
- params[f.Index] = obj;
359
- }
360
- }
361
- catch (_c) { }
362
- }
363
- else {
364
- fromQueryParams.push(obj);
365
- params[f.Index] = obj;
366
- }
281
+ let param = Type_1.default.SetPrototype(obj, ts[f.Index]);
282
+ fromQueryParams.push(param);
283
+ params[f.Index] = param;
284
+ return;
367
285
  });
368
286
  }
369
287
  if (validateBody) {
@@ -444,14 +362,15 @@ class Application {
444
362
  return;
445
363
  }
446
364
  }
447
- let controller = DependecyService_1.default.ResolveCtor(empty.constructor);
448
- if (controller == undefined)
449
- controller = new ctor();
365
+ let controller;
450
366
  try {
367
+ controller = DependecyService_1.default.ResolveCtor(empty.constructor);
368
+ if (controller == undefined)
369
+ controller = new ctor();
451
370
  DependecyService_1.default.CheckForDependenciesAndResolve(controller);
452
371
  }
453
372
  catch (err) {
454
- this.CallErrorHandler(request, response, this.CastToExpection(err));
373
+ return this.CallErrorHandler(request, response, this.CastToExpection(err));
455
374
  }
456
375
  controller.Request = context.Request;
457
376
  controller.Response = context.Response;
@@ -582,6 +501,14 @@ class Application {
582
501
  return;
583
502
  }
584
503
  if (result instanceof ActionResult_1.default) {
504
+ if (result.constructor.name == SendFileResult_1.default.name) {
505
+ controller.Response.sendFile(result.Result);
506
+ return;
507
+ }
508
+ if (result.constructor.name == DownloadFileResult_1.default.name) {
509
+ controller.Response.download(result.Result);
510
+ return;
511
+ }
585
512
  controller.SendResponse(result.StatusCode, result.Result);
586
513
  return;
587
514
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Application.js","sourceRoot":"","sources":["../Application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Application.js","sourceRoot":"","sources":["../Application.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,15 @@ export default class ApplicationConfiguration implements IApplicationConfigurati
10
10
  [key: string]: any;
11
11
  };
12
12
  constructor();
13
- AddScoped(type: Function, ctor?: (new (...args: any[]) => any) | undefined, builder?: (() => any) | undefined): void;
14
- AddTransient(type: Function, ctor?: (new (...args: any[]) => any) | undefined, builder?: (() => any) | undefined): void;
15
- AddSingleton(type: Function, ctor?: (new (...args: any[]) => any) | undefined, builder?: (() => any) | undefined): void;
13
+ AddScoped(type: Function, ctor?: (new (...args: any[]) => any), builder?: () => any): void;
14
+ AddGenericScoped(type: Function, genericType?: Function, ctor?: new (...args: any[]) => any, builder?: (e?: Function) => any): void;
15
+ AddTransient(type: Function, ctor?: new (...args: any[]) => any, builder?: (() => any)): void;
16
+ AddGenericTransient(type: Function, genericType?: Function, ctor?: new (...args: any[]) => any, builder?: (e?: Function) => any): void;
17
+ AddSingleton(type: Function, ctor?: new (...args: any[]) => any, builder?: () => any): void;
18
+ AddGenericSingleton(type: Function, genericType?: Function, ctor?: new (...args: any[]) => any, builder?: (e?: Function) => any): void;
16
19
  private CheckFileAsync;
17
20
  LoadAsync(): Promise<boolean>;
18
21
  SaveAsync(): Promise<boolean>;
19
22
  private UpdateEnviroment;
20
23
  }
24
+ //# sourceMappingURL=ApplicationConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApplicationConfiguration.d.ts","sourceRoot":"","sources":["../ApplicationConfiguration.ts"],"names":[],"mappings":"AAEA,OAAO,yBAAyB,MAAM,wCAAwC,CAAC;AAG/E,MAAM,CAAC,OAAO,OAAO,wBAAyB,YAAW,yBAAyB;IAGvE,IAAI,EAAG,MAAM,CAAe;IAC5B,IAAI,EAAG,MAAM,CAAS;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,uBAAuB,EAAG,MAAM,CAAC;IACjC,cAAc,EAAG,MAAM,CAAC;IACxB,KAAK,EAAG,OAAO,CAAC;IAChB,mBAAmB,EAAG;QAAC,CAAC,GAAG,EAAG,MAAM,GAAI,GAAG,CAAA;KAAC,CAAM;;IAiBlD,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,IAAI;IAY1F,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,KAAK,GAAG,GAAG,IAAI;IAOnI,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI;IAa7F,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,KAAK,GAAG,GAAG,IAAI;IAMtI,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,IAAI;IAY3F,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,KAAK,GAAG,GAAG,IAAI;YAM/H,cAAc;IAKf,SAAS,IAAK,OAAO,CAAC,OAAO,CAAC;IAoC9B,SAAS,IAAK,OAAO,CAAC,OAAO,CAAC;IA4B3C,OAAO,CAAC,gBAAgB;CAQ3B"}
@@ -59,6 +59,9 @@ class ApplicationConfiguration {
59
59
  DependecyService_1.default.Register(type, DependecyService_1.DIEscope.SCOPED, builder);
60
60
  }
61
61
  }
62
+ AddGenericScoped(type, genericType, ctor, builder) {
63
+ DependecyService_1.default.RegisterGeneric(type, genericType, ctor, DependecyService_1.DIEscope.SCOPED, builder);
64
+ }
62
65
  AddTransient(type, ctor, builder) {
63
66
  if (ctor) {
64
67
  DependecyService_1.default.RegisterFor(type, ctor, DependecyService_1.DIEscope.TRANSIENT, builder);
@@ -67,6 +70,9 @@ class ApplicationConfiguration {
67
70
  DependecyService_1.default.Register(type, DependecyService_1.DIEscope.TRANSIENT, builder);
68
71
  }
69
72
  }
73
+ AddGenericTransient(type, genericType, ctor, builder) {
74
+ DependecyService_1.default.RegisterGeneric(type, genericType, ctor, DependecyService_1.DIEscope.TRANSIENT, builder);
75
+ }
70
76
  AddSingleton(type, ctor, builder) {
71
77
  if (ctor) {
72
78
  DependecyService_1.default.RegisterFor(type, ctor, DependecyService_1.DIEscope.SINGLETON, builder);
@@ -75,6 +81,9 @@ class ApplicationConfiguration {
75
81
  DependecyService_1.default.Register(type, DependecyService_1.DIEscope.SINGLETON, builder);
76
82
  }
77
83
  }
84
+ AddGenericSingleton(type, genericType, ctor, builder) {
85
+ DependecyService_1.default.RegisterGeneric(type, genericType, ctor, DependecyService_1.DIEscope.SINGLETON, builder);
86
+ }
78
87
  CheckFileAsync() {
79
88
  return __awaiter(this, void 0, void 0, function* () {
80
89
  return new Promise((resolve, _) => resolve(fs_1.default.existsSync(`${this.RootPath}\\config.json`)));
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationConfiguration.js","sourceRoot":"","sources":["../ApplicationConfiguration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAsB;AACtB,gDAAwB;AAExB,2FAAoF;AAEpF,MAAqB,wBAAwB;IAWzC;QARO,SAAI,GAAY,WAAW,CAAC;QAC5B,SAAI,GAAY,KAAK,CAAC;QAKtB,wBAAmB,GAA4B,EAAE,CAAC;QAIrD,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE7C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,IAAI,CAAC,QAAQ,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC;QAEpD,IAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAI,CAAC;YAC3E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;;YAElB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC3B,CAAC;IAEM,SAAS,CAAC,IAAc,EAAE,IAAgD,EAAE,OAAiC;QAEhH,IAAG,IAAI,EACP,CAAC;YACG,0BAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,2BAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvE,CAAC;aAAI,CAAC;YAEF,0BAAgB,CAAC,QAAQ,CAAC,IAAI,EAAE,2BAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9D,CAAC;IACL,CAAC;IAEM,YAAY,CAAC,IAAc,EAAE,IAAgD,EAAE,OAAiC;QAEnH,IAAG,IAAI,EACP,CAAC;YACG,0BAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,2BAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1E,CAAC;aAAI,CAAC;YAEF,0BAAgB,CAAC,QAAQ,CAAC,IAAI,EAAE,2BAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAEM,YAAY,CAAC,IAAc,EAAE,IAAgD,EAAE,OAAiC;QAEnH,IAAG,IAAI,EACP,CAAC;YACG,0BAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,2BAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1E,CAAC;aAAI,CAAC;YAEF,0BAAgB,CAAC,QAAQ,CAAC,IAAI,EAAE,2BAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAGa,cAAc;;YAExB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,YAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,QAAQ,eAAe,CAAC,CAAC,CAAC,CAAC;QAC3G,CAAC;KAAA;IAEY,SAAS;;YAElB,OAAO,IAAI,OAAO,CAAU,CAAO,OAAO,EAAE,CAAC,EAAE,EAAE;gBAE7C,IAAG,CAAC,CAAA,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;oBAC3B,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;gBAE1B,YAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,eAAe,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBAEpE,IAAG,KAAK,EACR,CAAC;wBACG,MAAM,KAAK,CAAC;oBAChB,CAAC;oBAED,IAAG,CAAC;wBAEA,IAAI,IAAI,GAAS,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAElC,KAAI,IAAI,GAAG,IAAI,IAAI,EACnB,CAAC;4BACG,IAAG,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EACzB,CAAC;gCACG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;4BAC1B,CAAC;wBACL,CAAC;oBAEL,CAAC;oBAAA,WAAK,CAAC,CAAA,CAAC;oBAER,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAExB,OAAO,CAAC,IAAI,CAAC,CAAC;gBAElB,CAAC,CAAC,CAAA;YACN,CAAC,CAAA,CAAC,CAAA;QACN,CAAC;KAAA;IAEY,SAAS;;YAGlB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,CAAC,EAAC,EAAE;gBAEtC,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAE5C,OAAO,IAAI,CAAC,QAAQ,CAAC;gBACrB,OAAO,IAAI,CAAC,KAAK,CAAC;gBAClB,OAAO,IAAI,CAAC,uBAAuB,CAAC;gBACpC,OAAO,IAAI,CAAC,cAAc,CAAC;gBAE3B,YAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE;oBAEnF,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAExB,IAAG,KAAK,EACR,CAAC;wBACG,MAAM,KAAK,CAAC;oBAChB,CAAC;oBAED,OAAO,CAAC,IAAI,CAAC,CAAC;gBAElB,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAA;QAEN,CAAC;KAAA;IAEO,gBAAgB;QAEpB,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,EACrC,CAAC;YACG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;CAEJ;AAxID,2CAwIC"}
1
+ {"version":3,"file":"ApplicationConfiguration.js","sourceRoot":"","sources":["../ApplicationConfiguration.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=CreateApplication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateApplication.d.ts","sourceRoot":"","sources":["../../bin/CreateApplication.ts"],"names":[],"mappings":""}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=CreateController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateController.d.ts","sourceRoot":"","sources":["../../bin/CreateController.ts"],"names":[],"mappings":""}
@@ -1,2 +1,3 @@
1
1
  export declare function CreateApp(): void;
2
2
  export declare function CreateController(): void;
3
+ //# sourceMappingURL=Factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Factory.d.ts","sourceRoot":"","sources":["../../bin/Factory.ts"],"names":[],"mappings":"AAGA,wBAAgB,SAAS,SAwCxB;AAGD,wBAAgB,gBAAgB,SA8C/B"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class AcceptedResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=AcceptedResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcceptedResult.d.ts","sourceRoot":"","sources":["../../controllers/AcceptedResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,cAAc,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAE/C,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -3,3 +3,4 @@ export default class ActionResult {
3
3
  Result?: any;
4
4
  constructor(status: number, result?: any);
5
5
  }
6
+ //# sourceMappingURL=ActionResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionResult.d.ts","sourceRoot":"","sources":["../../controllers/ActionResult.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,YAAY;IAEtB,UAAU,EAAG,MAAM,CAAC;IACpB,MAAM,CAAC,EAAG,GAAG,CAAC;gBAET,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAG,GAAG;CAK5C"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class BadRequestResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=BadRequestResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BadRequestResult.d.ts","sourceRoot":"","sources":["../../controllers/BadRequestResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,gBAAgB,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAEjD,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class CreatedResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=CreatedResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreatedResult.d.ts","sourceRoot":"","sources":["../../controllers/CreatedResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,aAAa,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAE9C,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -0,0 +1,5 @@
1
+ import GenericResult from "./GenericResult";
2
+ export default class DownloadFileResult<T> extends GenericResult<T> {
3
+ constructor(result?: T);
4
+ }
5
+ //# sourceMappingURL=DownloadFileResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DownloadFileResult.d.ts","sourceRoot":"","sources":["../../controllers/DownloadFileResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,kBAAkB,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBACnD,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const GenericResult_1 = __importDefault(require("./GenericResult"));
7
+ class DownloadFileResult extends GenericResult_1.default {
8
+ constructor(result) {
9
+ super(200, result);
10
+ }
11
+ }
12
+ exports.default = DownloadFileResult;
13
+ //# sourceMappingURL=DownloadFileResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DownloadFileResult.js","sourceRoot":"","sources":["../../controllers/DownloadFileResult.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4C;AAE5C,MAAqB,kBAAsB,SAAQ,uBAAgB;IAC/D,YAAY,MAAU;QAClB,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACvB,CAAC;CACJ;AAJD,qCAIC"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class ErrorResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=ErrorResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ErrorResult.d.ts","sourceRoot":"","sources":["../../controllers/ErrorResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,WAAW,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAE5C,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class ForbiddenResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=ForbiddenResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForbiddenResult.d.ts","sourceRoot":"","sources":["../../controllers/ForbiddenResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,eAAe,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAEhD,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -3,3 +3,4 @@ export default class GenericResult<T> extends ActionResult {
3
3
  Result?: T;
4
4
  constructor(status: number, result?: T);
5
5
  }
6
+ //# sourceMappingURL=GenericResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericResult.d.ts","sourceRoot":"","sources":["../../controllers/GenericResult.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C,MAAM,CAAC,OAAO,OAAO,aAAa,CAAC,CAAC,CAAE,SAAQ,YAAY;IAE/C,MAAM,CAAC,EAAE,CAAC,CAAC;gBAEN,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CAGzC"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class NoContentResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=NoContentResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoContentResult.d.ts","sourceRoot":"","sources":["../../controllers/NoContentResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,eAAe,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAEhD,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class NotFoundResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=NotFoundResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotFoundResult.d.ts","sourceRoot":"","sources":["../../controllers/NotFoundResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,cAAc,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAE/C,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class OKResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=OKResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OKResult.d.ts","sourceRoot":"","sources":["../../controllers/OKResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAEzC,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -0,0 +1,5 @@
1
+ import GenericResult from "./GenericResult";
2
+ export default class SendFileResult<T> extends GenericResult<T> {
3
+ constructor(result?: T);
4
+ }
5
+ //# sourceMappingURL=SendFileResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SendFileResult.d.ts","sourceRoot":"","sources":["../../controllers/SendFileResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,cAAc,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAC/C,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const GenericResult_1 = __importDefault(require("./GenericResult"));
7
+ class SendFileResult extends GenericResult_1.default {
8
+ constructor(result) {
9
+ super(200, result);
10
+ }
11
+ }
12
+ exports.default = SendFileResult;
13
+ //# sourceMappingURL=SendFileResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SendFileResult.js","sourceRoot":"","sources":["../../controllers/SendFileResult.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4C;AAE5C,MAAqB,cAAkB,SAAQ,uBAAgB;IAC3D,YAAY,MAAU;QAClB,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACvB,CAAC;CACJ;AAJD,iCAIC"}
@@ -2,3 +2,4 @@ import GenericResult from "./GenericResult";
2
2
  export default class UnauthorizedResult<T> extends GenericResult<T> {
3
3
  constructor(result?: T);
4
4
  }
5
+ //# sourceMappingURL=UnauthorizedResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnauthorizedResult.d.ts","sourceRoot":"","sources":["../../controllers/UnauthorizedResult.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,kBAAkB,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;gBAEnD,MAAM,CAAC,EAAE,CAAC;CAGzB"}
@@ -10,6 +10,8 @@ import NoContentResult from "../NoContentResult";
10
10
  import NotFoundResult from "../NotFoundResult";
11
11
  import OKResult from "../OKResult";
12
12
  import UnauthorizedResult from "../UnauthorizedResult";
13
+ import SendFileResult from "../SendFileResult";
14
+ import DownloadFileResult from "../DownloadFileResult";
13
15
  export declare class ControllerBase implements IController, IDIContext {
14
16
  Request: Request;
15
17
  Response: Response;
@@ -19,6 +21,8 @@ export declare class ControllerBase implements IController, IDIContext {
19
21
  Created<T>(result?: T): CreatedResult<T>;
20
22
  Accepted<T>(result?: T): AcceptedResult<T>;
21
23
  NoContent<T>(result?: T): NoContentResult<T>;
24
+ SendFile(path: string): SendFileResult<string>;
25
+ DownloadFile(path: string): DownloadFileResult<string>;
22
26
  BadRequest<T>(result?: T): BadRequestResult<T>;
23
27
  Unauthorized<T>(result?: T): UnauthorizedResult<T>;
24
28
  Forbidden<T>(result?: T): ForbiddenResult<T>;
@@ -26,3 +30,4 @@ export declare class ControllerBase implements IController, IDIContext {
26
30
  Error<T>(result?: T): ErrorResult<T>;
27
31
  SendResponse<T>(status: number, result?: T): T | undefined;
28
32
  }
33
+ //# sourceMappingURL=ControllerBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ControllerBase.d.ts","sourceRoot":"","sources":["../../../controllers/base/ControllerBase.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,EAAE,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAC1C,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,gBAAgB,MAAM,qBAAqB,CAAC;AACnD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,OAAO,eAAe,MAAM,oBAAoB,CAAC;AACjD,OAAO,eAAe,MAAM,oBAAoB,CAAC;AACjD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AACvD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAMvD,qBAAa,cAAe,YAAW,WAAW,EAAE,UAAU;IAE1D,OAAO,EAAG,OAAO,CAAiB;IAClC,QAAQ,EAAG,QAAQ,CAAkB;IACrC,QAAQ,EAAE,OAAO,EAAE,CAAM;;IAOlB,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,QAAQ,CAAC,CAAC,CAAC;IAKhC,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,aAAa,CAAC,CAAC,CAAC;IAK1C,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,cAAc,CAAC,CAAC,CAAC;IAK5C,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC;IAK9C,QAAQ,CAAC,IAAI,EAAG,MAAM,GAAI,cAAc,CAAC,MAAM,CAAC;IAWhD,YAAY,CAAC,IAAI,EAAG,MAAM,GAAI,kBAAkB,CAAC,MAAM,CAAC;IAWxD,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,gBAAgB,CAAC,CAAC,CAAC;IAKhD,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,kBAAkB,CAAC,CAAC,CAAC;IAKpD,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC;IAK9C,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,cAAc,CAAC,CAAC,CAAC;IAK5C,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,WAAW,CAAC,CAAC,CAAC;IAKtC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAG,MAAM,EAAE,MAAM,CAAC,EAAG,CAAC,GAAI,CAAC,GAAG,SAAS;CAkBvE"}
@@ -13,6 +13,11 @@ const NoContentResult_1 = __importDefault(require("../NoContentResult"));
13
13
  const NotFoundResult_1 = __importDefault(require("../NotFoundResult"));
14
14
  const OKResult_1 = __importDefault(require("../OKResult"));
15
15
  const UnauthorizedResult_1 = __importDefault(require("../UnauthorizedResult"));
16
+ const SendFileResult_1 = __importDefault(require("../SendFileResult"));
17
+ const DownloadFileResult_1 = __importDefault(require("../DownloadFileResult"));
18
+ const fs_1 = __importDefault(require("fs"));
19
+ const FileNotFoundException_1 = __importDefault(require("../../exceptions/FileNotFoundException"));
20
+ const ArgumentNullException_1 = __importDefault(require("../../exceptions/ArgumentNullException"));
16
21
  class ControllerBase {
17
22
  constructor() {
18
23
  this.Request = {};
@@ -31,6 +36,20 @@ class ControllerBase {
31
36
  NoContent(result) {
32
37
  return new NoContentResult_1.default(result);
33
38
  }
39
+ SendFile(path) {
40
+ if (!path)
41
+ throw new ArgumentNullException_1.default(`The path of the file is required on a SendFile response`);
42
+ if (!fs_1.default.existsSync(path))
43
+ throw new FileNotFoundException_1.default(`can not access the file: ${path}`);
44
+ return new SendFileResult_1.default(path);
45
+ }
46
+ DownloadFile(path) {
47
+ if (!path)
48
+ throw new ArgumentNullException_1.default(`The path of the file is required on a DownloadFile response`);
49
+ if (!fs_1.default.existsSync(path))
50
+ throw new FileNotFoundException_1.default(`can not access the file: ${path}`);
51
+ return new DownloadFileResult_1.default(path);
52
+ }
34
53
  BadRequest(result) {
35
54
  return new BadRequestResult_1.default(result);
36
55
  }