web_api_base 1.0.0 → 1.0.1
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.
- package/dist/App.js +32 -0
- package/dist/App.js.map +1 -0
- package/dist/Application.d.ts +10 -0
- package/dist/Application.js +33 -0
- package/dist/Application.js.map +1 -0
- package/dist/ApplicationConfiguration.d.ts +10 -0
- package/dist/ApplicationConfiguration.js +69 -0
- package/dist/ApplicationConfiguration.js.map +1 -0
- package/dist/Configuration.js +69 -0
- package/dist/Configuration.js.map +1 -0
- package/dist/Index.js +2 -0
- package/dist/Index.js.map +1 -0
- package/dist/__tests__/classes/Controller.d.ts +8 -0
- package/dist/__tests__/classes/Controller.js +54 -0
- package/dist/__tests__/classes/Controller.js.map +1 -0
- package/dist/__tests__/decorators/controllers/ControllerDecorators.spec.d.ts +1 -0
- package/dist/__tests__/decorators/controllers/ControllerDecorators.spec.js +40 -0
- package/dist/__tests__/decorators/controllers/ControllerDecorators.spec.js.map +1 -0
- package/dist/config.json +1 -0
- package/dist/controllers/FileController.js +162 -0
- package/dist/controllers/FileController.js.map +1 -0
- package/dist/controllers/StatusController.js +44 -0
- package/dist/controllers/StatusController.js.map +1 -0
- package/dist/controllers/base/ControllerBase.d.ts +16 -0
- package/dist/controllers/base/ControllerBase.js +79 -0
- package/dist/controllers/base/ControllerBase.js.map +1 -0
- package/dist/decorators/controllers/ControllerDecorators.d.ts +36 -0
- package/dist/decorators/controllers/ControllerDecorators.js +104 -0
- package/dist/decorators/controllers/ControllerDecorators.js.map +1 -0
- package/dist/dependencyInjection/DependecyService.d.ts +9 -0
- package/dist/dependencyInjection/DependecyService.js +23 -0
- package/dist/dependencyInjection/DependecyService.js.map +1 -0
- package/dist/enums/httpVerbs/HttpVerbs.d.ts +6 -0
- package/dist/enums/httpVerbs/HttpVerbs.js +11 -0
- package/dist/enums/httpVerbs/HttpVerbs.js.map +1 -0
- package/dist/index.d.ts +0 -0
- package/dist/interfaces/IApplication.d.ts +7 -0
- package/dist/interfaces/IApplication.js +3 -0
- package/dist/interfaces/IApplication.js.map +1 -0
- package/dist/interfaces/IApplicationConfiguration.d.ts +5 -0
- package/dist/interfaces/IApplicationConfiguration.js +3 -0
- package/dist/interfaces/IApplicationConfiguration.js.map +1 -0
- package/dist/interfaces/IController.d.ts +5 -0
- package/dist/interfaces/IController.js +3 -0
- package/dist/interfaces/IController.js.map +1 -0
- package/dist/interfaces/entities/IDirectory.d.ts +5 -0
- package/dist/interfaces/entities/IDirectory.js +3 -0
- package/dist/interfaces/entities/IDirectory.js.map +1 -0
- package/dist/jest.config.d.ts +0 -0
- package/dist/jest.config.js +8 -0
- package/dist/jest.config.js.map +1 -0
- package/dist/midlewares/IMidleware.d.ts +4 -0
- package/dist/midlewares/IMidleware.js +3 -0
- package/dist/midlewares/IMidleware.js.map +1 -0
- package/dist/services/FileService.js +45 -0
- package/dist/services/FileService.js.map +1 -0
- package/dist/services/IFileService.js +8 -0
- package/dist/services/IFileService.js.map +1 -0
- package/dist/services/fileService/FileService.d.ts +10 -0
- package/dist/services/fileService/FileService.js +96 -0
- package/dist/services/fileService/FileService.js.map +1 -0
- package/dist/services/fileService/FileServiceBase.d.ts +10 -0
- package/dist/services/fileService/FileServiceBase.js +7 -0
- package/dist/services/fileService/FileServiceBase.js.map +1 -0
- package/package.json +7 -3
- package/.vscode/launch.json +0 -21
- package/Application.ts +0 -39
- package/ApplicationConfiguration.ts +0 -82
- package/__tests__/classes/Controller.ts +0 -38
- package/__tests__/decorators/controllers/ControllerDecorators.spec.ts +0 -67
- package/controllers/base/ControllerBase.ts +0 -116
- package/decorators/controllers/ControllerDecorators.ts +0 -187
- package/dependencyInjection/DependecyService.ts +0 -36
- package/enums/httpVerbs/HttpVerbs.ts +0 -7
- package/interfaces/IApplication.ts +0 -13
- package/interfaces/IApplicationConfiguration.ts +0 -6
- package/interfaces/IController.ts +0 -8
- package/interfaces/entities/IDirectory.ts +0 -6
- package/jest.config.ts +0 -6
- package/midlewares/IMidleware.ts +0 -6
- package/services/fileService/FileService.ts +0 -125
- package/services/fileService/FileServiceBase.ts +0 -16
- package/tsconfig.json +0 -103
|
@@ -0,0 +1,79 @@
|
|
|
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
|
+
exports.ControllerBase = void 0;
|
|
7
|
+
const ControllerDecorators_1 = __importDefault(require("../../decorators/controllers/ControllerDecorators"));
|
|
8
|
+
const DependecyService_1 = __importDefault(require("../../dependencyInjection/DependecyService"));
|
|
9
|
+
const HttpVerbs_1 = require("../../enums/httpVerbs/HttpVerbs");
|
|
10
|
+
class ControllerBase {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.Request = {};
|
|
13
|
+
this.Response = {};
|
|
14
|
+
}
|
|
15
|
+
OK(result) {
|
|
16
|
+
this.Response.status(200);
|
|
17
|
+
this.Response.json(result);
|
|
18
|
+
}
|
|
19
|
+
Created() {
|
|
20
|
+
this.Response.status(201);
|
|
21
|
+
this.Response.end();
|
|
22
|
+
}
|
|
23
|
+
BadRequest(result) {
|
|
24
|
+
this.Response.status(400);
|
|
25
|
+
this.Response.json(result);
|
|
26
|
+
}
|
|
27
|
+
Error(result) {
|
|
28
|
+
this.Response.status(500);
|
|
29
|
+
this.Response.json(result);
|
|
30
|
+
}
|
|
31
|
+
SendResponse(status, result) {
|
|
32
|
+
this.Response.status(status);
|
|
33
|
+
this.Response.json(result);
|
|
34
|
+
}
|
|
35
|
+
static AppendController(ctor, application) {
|
|
36
|
+
let empty = new ctor();
|
|
37
|
+
let methods = Reflect.ownKeys(empty.constructor.prototype).filter(m => {
|
|
38
|
+
return typeof empty[m] == "function";
|
|
39
|
+
});
|
|
40
|
+
let route = ControllerDecorators_1.default.GetRoute(empty);
|
|
41
|
+
if (!route)
|
|
42
|
+
return;
|
|
43
|
+
for (let method of methods) {
|
|
44
|
+
let action = ControllerDecorators_1.default.GetAction(empty, method.toString());
|
|
45
|
+
if (!action) {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
let verb = ControllerDecorators_1.default.GetVerb(empty, method.toString());
|
|
49
|
+
if (!verb)
|
|
50
|
+
verb = HttpVerbs_1.HTTPVerbs.GET;
|
|
51
|
+
console.debug("appended : ", verb, `${route}${action}`);
|
|
52
|
+
application.Express[verb.toString().toLowerCase()](`${route}${action}`, (req, resp) => {
|
|
53
|
+
let midlewares = ControllerDecorators_1.default.GetMidlewares(empty).reverse();
|
|
54
|
+
midlewares.push(...ControllerDecorators_1.default.GetBefores(empty, method.toString()).reverse());
|
|
55
|
+
if (midlewares) {
|
|
56
|
+
for (let method of midlewares) {
|
|
57
|
+
method(req);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
let args = ControllerDecorators_1.default.GetArgumentsHandler(empty, method.toString());
|
|
61
|
+
let params = [];
|
|
62
|
+
if (args) {
|
|
63
|
+
if (args.Arguments.length > 0) {
|
|
64
|
+
if (req.body && verb == (HttpVerbs_1.HTTPVerbs.POST || verb == HttpVerbs_1.HTTPVerbs.PUT))
|
|
65
|
+
params = args.CreateArgumentsList(req.body);
|
|
66
|
+
if (req.query)
|
|
67
|
+
params.push(...args.CreateArgumentsList(req.query));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
let controller = DependecyService_1.default.ResolveCtor(empty.constructor);
|
|
71
|
+
controller.Request = req;
|
|
72
|
+
controller.Response = resp;
|
|
73
|
+
controller[method](...params);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.ControllerBase = ControllerBase;
|
|
79
|
+
//# sourceMappingURL=ControllerBase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ControllerBase.js","sourceRoot":"","sources":["../../../controllers/base/ControllerBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import 'reflect-metadata';
|
|
2
|
+
import { HTTPVerbs } from '../../enums/httpVerbs/HttpVerbs';
|
|
3
|
+
import IController from '../../interfaces/IController';
|
|
4
|
+
import IMidleware from '../../midlewares/IMidleware';
|
|
5
|
+
export default class ControllersDecorators {
|
|
6
|
+
constructor();
|
|
7
|
+
private static RouteKeyMetadata;
|
|
8
|
+
private static ActionVerbKeyMetadata;
|
|
9
|
+
private static ActionNameKeyMetadata;
|
|
10
|
+
private static ArgumentsHandlerKeyMetadata;
|
|
11
|
+
private static ControllerMidlewaresKeyMetadata;
|
|
12
|
+
private static ActionsMidlewaresKeyMetadata;
|
|
13
|
+
static Route(route: string): (target: Function) => void;
|
|
14
|
+
static Use(midleware: IMidleware): (target: Function) => void;
|
|
15
|
+
static GetMidlewares(controller: IController): IMidleware[];
|
|
16
|
+
static Before(midleware: IMidleware): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
17
|
+
static GetBefores(controller: IController, methodName: string): IMidleware[];
|
|
18
|
+
static GetRoute(controller: IController): string | undefined;
|
|
19
|
+
static Verb(verb: HTTPVerbs): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
20
|
+
static GetVerb(target: IController, methodName: string): HTTPVerbs | undefined;
|
|
21
|
+
static Action(actionName: String): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
22
|
+
static GetAction(target: IController, methodName: string): string | undefined;
|
|
23
|
+
static Argument<T>(argName1: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
24
|
+
static Argument<T, U>(argName1: string, argName2?: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
25
|
+
static Argument<T, U, K>(argName1: string, argName2?: string, argName3?: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
26
|
+
static Argument<T, U, K, Y>(argName1: string, argName2?: string, argName3?: string, argName4?: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
27
|
+
static Argument<T, U, K, Y, J>(argName1: string, argName2?: string, argName3?: string, argName4?: string, argName5?: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
|
|
28
|
+
static GetArgumentsHandler(target: IController, methodName: string): IArgumentResolverHandler | undefined;
|
|
29
|
+
private static SetMetaData;
|
|
30
|
+
private static GetMetaData;
|
|
31
|
+
}
|
|
32
|
+
interface IArgumentResolverHandler {
|
|
33
|
+
Arguments: string[];
|
|
34
|
+
CreateArgumentsList: (args: any) => any[];
|
|
35
|
+
}
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
require("reflect-metadata");
|
|
4
|
+
class ControllersDecorators {
|
|
5
|
+
constructor() {
|
|
6
|
+
}
|
|
7
|
+
static Route(route) {
|
|
8
|
+
return function (target) {
|
|
9
|
+
Reflect.defineMetadata(ControllersDecorators.RouteKeyMetadata, route, target);
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
static Use(midleware) {
|
|
13
|
+
return function (target) {
|
|
14
|
+
var _a;
|
|
15
|
+
let current = (_a = Reflect.getMetadata(ControllersDecorators.ControllerMidlewaresKeyMetadata, target)) !== null && _a !== void 0 ? _a : [];
|
|
16
|
+
current.push(midleware);
|
|
17
|
+
Reflect.defineMetadata(ControllersDecorators.ControllerMidlewaresKeyMetadata, current, target);
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
static GetMidlewares(controller) {
|
|
21
|
+
var _a;
|
|
22
|
+
return (_a = Reflect.getMetadata(ControllersDecorators.ControllerMidlewaresKeyMetadata, controller.constructor)) !== null && _a !== void 0 ? _a : [];
|
|
23
|
+
}
|
|
24
|
+
static Before(midleware) {
|
|
25
|
+
return function (target, methodName, propertyDescriptor) {
|
|
26
|
+
var _a;
|
|
27
|
+
let current = (_a = Reflect.getMetadata(ControllersDecorators.ActionsMidlewaresKeyMetadata, target, methodName)) !== null && _a !== void 0 ? _a : [];
|
|
28
|
+
current.push(midleware);
|
|
29
|
+
ControllersDecorators.SetMetaData(ControllersDecorators.ActionsMidlewaresKeyMetadata, target, methodName, current);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
static GetBefores(controller, methodName) {
|
|
33
|
+
var _a;
|
|
34
|
+
return (_a = this.GetMetaData(ControllersDecorators.ActionsMidlewaresKeyMetadata, controller, methodName)) !== null && _a !== void 0 ? _a : [];
|
|
35
|
+
}
|
|
36
|
+
static GetRoute(controller) {
|
|
37
|
+
return Reflect.getMetadata(ControllersDecorators.RouteKeyMetadata, controller.constructor);
|
|
38
|
+
}
|
|
39
|
+
static Verb(verb) {
|
|
40
|
+
return function (target, methodName, propertyDescriptor) {
|
|
41
|
+
ControllersDecorators.SetMetaData(ControllersDecorators.ActionVerbKeyMetadata, target, methodName, verb);
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
static GetVerb(target, methodName) {
|
|
45
|
+
let meta = this.GetMetaData(ControllersDecorators.ActionVerbKeyMetadata, target, methodName);
|
|
46
|
+
return meta;
|
|
47
|
+
}
|
|
48
|
+
static Action(actionName) {
|
|
49
|
+
return function (target, methodName, propertyDescriptor) {
|
|
50
|
+
ControllersDecorators.SetMetaData(ControllersDecorators.ActionNameKeyMetadata, target, methodName, actionName);
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
static GetAction(target, methodName) {
|
|
54
|
+
let meta = this.GetMetaData(ControllersDecorators.ActionNameKeyMetadata, target, methodName);
|
|
55
|
+
return meta;
|
|
56
|
+
}
|
|
57
|
+
static Argument(argName1, argName2, argName3, argName4, argName5, argName6) {
|
|
58
|
+
return function (target, methodName, propertyDescriptor) {
|
|
59
|
+
ControllersDecorators.SetMetaData(ControllersDecorators.ArgumentsHandlerKeyMetadata, target, methodName, {
|
|
60
|
+
Arguments: [argName1, argName2, argName3, argName4, argName5, argName6],
|
|
61
|
+
CreateArgumentsList: (args) => {
|
|
62
|
+
let results = [];
|
|
63
|
+
if (argName1 && args[argName1] != undefined)
|
|
64
|
+
results[0] = args[argName1];
|
|
65
|
+
if (argName2 && args[argName2] != undefined)
|
|
66
|
+
results[1] = args[argName2];
|
|
67
|
+
if (argName3 && args[argName3] != undefined)
|
|
68
|
+
results[2] = args[argName3];
|
|
69
|
+
if (argName4 && args[argName4] != undefined)
|
|
70
|
+
results[3] = args[argName4];
|
|
71
|
+
if (argName5 && args[argName5] != undefined)
|
|
72
|
+
results[4] = args[argName5];
|
|
73
|
+
if (argName6 && args[argName6] != undefined)
|
|
74
|
+
results[5] = args[argName6];
|
|
75
|
+
return results;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
static GetArgumentsHandler(target, methodName) {
|
|
81
|
+
let handler = this.GetMetaData(ControllersDecorators.ArgumentsHandlerKeyMetadata, target, methodName);
|
|
82
|
+
return handler;
|
|
83
|
+
}
|
|
84
|
+
static SetMetaData(key, target, methodName, value) {
|
|
85
|
+
var meta = Reflect.getOwnMetadata(key, target, methodName);
|
|
86
|
+
if (!meta)
|
|
87
|
+
Reflect.defineMetadata(key, value, target, methodName);
|
|
88
|
+
}
|
|
89
|
+
static GetMetaData(key, target, methodName) {
|
|
90
|
+
var meta = Reflect.getMetadata(key, target, methodName);
|
|
91
|
+
if (meta != undefined)
|
|
92
|
+
return meta;
|
|
93
|
+
else
|
|
94
|
+
return undefined;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.default = ControllersDecorators;
|
|
98
|
+
ControllersDecorators.RouteKeyMetadata = "meta:controllerRoute";
|
|
99
|
+
ControllersDecorators.ActionVerbKeyMetadata = "meta:actionVerb";
|
|
100
|
+
ControllersDecorators.ActionNameKeyMetadata = "meta:actionName";
|
|
101
|
+
ControllersDecorators.ArgumentsHandlerKeyMetadata = "meta:argHandler";
|
|
102
|
+
ControllersDecorators.ControllerMidlewaresKeyMetadata = "meta:controllerMidlewaresKey";
|
|
103
|
+
ControllersDecorators.ActionsMidlewaresKeyMetadata = "meta:actionMidlewaresKey";
|
|
104
|
+
//# sourceMappingURL=ControllerDecorators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ControllerDecorators.js","sourceRoot":"","sources":["../../../decorators/controllers/ControllerDecorators.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export default class DependecyService {
|
|
2
|
+
private static _services;
|
|
3
|
+
static RegisterFor(type: Function, ctor: {
|
|
4
|
+
new (...args: any[]): any;
|
|
5
|
+
}, builder?: () => any): void;
|
|
6
|
+
static Register(type: Function, builder?: () => any): void;
|
|
7
|
+
static Resolve<T>(type: Function, args?: any[]): T;
|
|
8
|
+
static ResolveCtor(ctor: Function, args?: any[]): any;
|
|
9
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class DependecyService {
|
|
4
|
+
static RegisterFor(type, ctor, builder) {
|
|
5
|
+
let defaultBuilder = () => Reflect.construct(ctor !== null && ctor !== void 0 ? ctor : type, []);
|
|
6
|
+
this._services.push({ Type: type, Builder: builder !== null && builder !== void 0 ? builder : defaultBuilder });
|
|
7
|
+
}
|
|
8
|
+
static Register(type, builder) {
|
|
9
|
+
let defaultBuilder = () => Reflect.construct(type, []);
|
|
10
|
+
this._services.push({ Type: type, Builder: builder !== null && builder !== void 0 ? builder : defaultBuilder });
|
|
11
|
+
}
|
|
12
|
+
static Resolve(type, args) {
|
|
13
|
+
var _a;
|
|
14
|
+
return (_a = this._services.find(u => u.Type == type)) === null || _a === void 0 ? void 0 : _a.Builder(args);
|
|
15
|
+
}
|
|
16
|
+
static ResolveCtor(ctor, args) {
|
|
17
|
+
var _a;
|
|
18
|
+
return (_a = this._services.find(u => u.Type == ctor)) === null || _a === void 0 ? void 0 : _a.Builder(args);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.default = DependecyService;
|
|
22
|
+
DependecyService._services = [];
|
|
23
|
+
//# sourceMappingURL=DependecyService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DependecyService.js","sourceRoot":"","sources":["../../dependencyInjection/DependecyService.ts"],"names":[],"mappings":";;AAAA,MAAqB,gBAAgB;IAI1B,MAAM,CAAC,WAAW,CAAC,IAAe,EAAE,IAAsC,EAAE,OAAoB;QAEnG,IAAI,cAAc,GAAG,GAAG,EAAE,CAAE,OAAO,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,IAAI,EAAE,EAAE,CAAQ,CAAC;QAEvE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAG,IAAI,EAAE,OAAO,EAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAe,EAAE,OAAoB;QAExD,IAAI,cAAc,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEvD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAG,IAAI,EAAE,OAAO,EAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,OAAO,CAAI,IAAe,EAAE,IAAa;;QAEnD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAM,CAAC;IACxE,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,IAAe,EAAE,IAAa;;QAEpD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;;AA1BL,mCA4BC;AA1BkB,0BAAS,GAAgB,EAAE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HTTPVerbs = void 0;
|
|
4
|
+
var HTTPVerbs;
|
|
5
|
+
(function (HTTPVerbs) {
|
|
6
|
+
HTTPVerbs["GET"] = "GET";
|
|
7
|
+
HTTPVerbs["POST"] = "POST";
|
|
8
|
+
HTTPVerbs["PUT"] = "PUT";
|
|
9
|
+
HTTPVerbs["DELETE"] = "DELETE";
|
|
10
|
+
})(HTTPVerbs = exports.HTTPVerbs || (exports.HTTPVerbs = {}));
|
|
11
|
+
//# sourceMappingURL=HttpVerbs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpVerbs.js","sourceRoot":"","sources":["../../../enums/httpVerbs/HttpVerbs.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAMX;AAND,WAAY,SAAS;IAEjB,wBAAW,CAAA;IACX,0BAAa,CAAA;IACb,wBAAW,CAAA;IACX,8BAAiB,CAAA;AACrB,CAAC,EANW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAMpB"}
|
package/dist/index.d.ts
ADDED
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IApplication.js","sourceRoot":"","sources":["../../interfaces/IApplication.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IApplicationConfiguration.js","sourceRoot":"","sources":["../../interfaces/IApplicationConfiguration.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IController.js","sourceRoot":"","sources":["../../interfaces/IController.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDirectory.js","sourceRoot":"","sources":["../../../interfaces/entities/IDirectory.ts"],"names":[],"mappings":""}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jest.config.js","sourceRoot":"","sources":["../jest.config.ts"],"names":[],"mappings":";AAAA,gEAAgE;AAChE,MAAM,CAAC,OAAO,GAAG;IACf,MAAM,EAAE,SAAS;IACjB,eAAe,EAAE,MAAM;IACvB,wBAAwB,EAAE,CAAC,6BAA6B,CAAC;CAC1D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IMidleware.js","sourceRoot":"","sources":["../../midlewares/IMidleware.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
11
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
12
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
13
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
14
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
var FileService_1;
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
const fs_1 = __importDefault(require("fs"));
|
|
23
|
+
const DependecyService_1 = __importDefault(require("../dependencyInjection/DependecyService"));
|
|
24
|
+
const IFileService_1 = require("./IFileService");
|
|
25
|
+
let FileService = FileService_1 = class FileService extends IFileService_1.FileServiceInjectable {
|
|
26
|
+
CopyAsync(origin, dest) {
|
|
27
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
try {
|
|
29
|
+
yield fs_1.default.copyFile(origin, dest, (err) => {
|
|
30
|
+
if (err)
|
|
31
|
+
throw err;
|
|
32
|
+
resolve();
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
reject(err);
|
|
37
|
+
}
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
FileService = FileService_1 = __decorate([
|
|
42
|
+
DependecyService_1.default.RegisterForType(IFileService_1.FileServiceInjectable, FileService_1)
|
|
43
|
+
], FileService);
|
|
44
|
+
exports.default = FileService;
|
|
45
|
+
//# sourceMappingURL=FileService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileService.js","sourceRoot":"","sources":["../../services/FileService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,4CAAsB;AACtB,+FAAuE;AACvE,iDAAmE;AAGpD,IAAM,WAAW,mBAAjB,MAAM,WAAY,SAAQ,oCAAqB;IAGnD,SAAS,CAAC,MAAc,EAAE,IAAY;QAEzC,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAC,EAAE;YAE9C,IAAG;gBACC,MAAM,YAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;oBAEtC,IAAG,GAAG;wBACF,MAAM,GAAG,CAAC;oBAEd,OAAO,EAAE,CAAC;gBACd,CAAC,CAAC,CAAA;aAEL;YAAA,OAAM,GAAG,EACV;gBACI,MAAM,CAAC,GAAG,CAAC,CAAC;aACf;QACL,CAAC,CAAA,CAAC,CAAA;IAEN,CAAC;CACJ,CAAA;AAvBoB,WAAW;IAD/B,0BAAgB,CAAC,eAAe,CAAC,oCAAqB,EAAC,aAAW,CAAC;GAC/C,WAAW,CAuB/B;kBAvBoB,WAAW"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FileServiceInjectable = void 0;
|
|
4
|
+
class FileServiceInjectable {
|
|
5
|
+
constructor() { }
|
|
6
|
+
}
|
|
7
|
+
exports.FileServiceInjectable = FileServiceInjectable;
|
|
8
|
+
//# sourceMappingURL=IFileService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IFileService.js","sourceRoot":"","sources":["../../services/IFileService.ts"],"names":[],"mappings":";;;AAKA,MAAa,qBAAqB;IAE9B,gBAAc,CAAC;CAClB;AAHD,sDAGC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import FileServiceBase from "./FileServiceBase";
|
|
2
|
+
export default class FileService extends FileServiceBase {
|
|
3
|
+
GetDefaultDir(): string;
|
|
4
|
+
CreateDirectory(path: string): Promise<void>;
|
|
5
|
+
FileExists(file: string): Promise<boolean>;
|
|
6
|
+
DirectoryExists(path: string): Promise<boolean>;
|
|
7
|
+
GetAllFiles(origin: string): Promise<string[]>;
|
|
8
|
+
GetAllForders(origin: string): Promise<string[]>;
|
|
9
|
+
CopyAsync(origin: string, dest: string): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const fs_1 = __importDefault(require("fs"));
|
|
16
|
+
const promises_1 = __importDefault(require("fs/promises"));
|
|
17
|
+
const path_1 = __importDefault(require("path"));
|
|
18
|
+
const platform_folders_1 = require("platform-folders");
|
|
19
|
+
const FileServiceBase_1 = __importDefault(require("./FileServiceBase"));
|
|
20
|
+
class FileService extends FileServiceBase_1.default {
|
|
21
|
+
GetDefaultDir() {
|
|
22
|
+
return (0, platform_folders_1.getDesktopFolder)();
|
|
23
|
+
}
|
|
24
|
+
CreateDirectory(path) {
|
|
25
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
try {
|
|
27
|
+
return resolve(fs_1.default.mkdirSync(path));
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
return reject(err);
|
|
31
|
+
}
|
|
32
|
+
}));
|
|
33
|
+
}
|
|
34
|
+
FileExists(file) {
|
|
35
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
36
|
+
try {
|
|
37
|
+
return resolve(fs_1.default.existsSync(file) && fs_1.default.lstatSync(file).isFile());
|
|
38
|
+
}
|
|
39
|
+
catch (err) {
|
|
40
|
+
return reject(err);
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
DirectoryExists(path) {
|
|
45
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
try {
|
|
47
|
+
return resolve(fs_1.default.existsSync(path) && fs_1.default.lstatSync(path).isDirectory());
|
|
48
|
+
}
|
|
49
|
+
catch (err) {
|
|
50
|
+
return reject(err);
|
|
51
|
+
}
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
GetAllFiles(origin) {
|
|
55
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
if (!fs_1.default.existsSync(origin))
|
|
57
|
+
return reject(new Error(`The path ${origin} not exists`));
|
|
58
|
+
try {
|
|
59
|
+
let files = yield promises_1.default.readdir(origin, { withFileTypes: true });
|
|
60
|
+
return resolve(files.filter(u => u.isFile()).map(u => path_1.default.join(origin, u.name)));
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
return reject(err);
|
|
64
|
+
}
|
|
65
|
+
}));
|
|
66
|
+
}
|
|
67
|
+
GetAllForders(origin) {
|
|
68
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
69
|
+
if (!fs_1.default.existsSync(origin))
|
|
70
|
+
return reject(new Error(`The path ${origin} not exists`));
|
|
71
|
+
try {
|
|
72
|
+
let files = yield promises_1.default.readdir(origin, { withFileTypes: true });
|
|
73
|
+
return resolve(files.filter(u => u.isDirectory()).map(u => path_1.default.join(origin, u.name)));
|
|
74
|
+
}
|
|
75
|
+
catch (err) {
|
|
76
|
+
return reject(err);
|
|
77
|
+
}
|
|
78
|
+
}));
|
|
79
|
+
}
|
|
80
|
+
CopyAsync(origin, dest) {
|
|
81
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
try {
|
|
83
|
+
yield fs_1.default.copyFile(origin, dest, (err) => {
|
|
84
|
+
if (err)
|
|
85
|
+
throw err;
|
|
86
|
+
resolve();
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
catch (err) {
|
|
90
|
+
reject(err);
|
|
91
|
+
}
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.default = FileService;
|
|
96
|
+
//# sourceMappingURL=FileService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileService.js","sourceRoot":"","sources":["../../../services/fileService/FileService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,4CAAsB;AACtB,2DAAoC;AACpC,gDAAwB;AACxB,uDAAiD;AAEjD,wEAAgD;AAGhD,MAAqB,WAAY,SAAQ,yBAAe;IAIpC,aAAa;QAEzB,OAAO,IAAA,mCAAgB,GAAE,CAAC;IAC9B,CAAC;IAGe,eAAe,CAAC,IAAY;QAExC,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAE/C,IAAG;gBAEA,OAAO,OAAO,CAAC,YAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;aAEvC;YAAA,OAAM,GAAG,EACV;gBACG,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;aACrB;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAEe,UAAU,CAAC,IAAY;QACnC,OAAO,IAAI,OAAO,CAAU,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAElD,IAAG;gBAEC,OAAO,OAAO,CAAC,YAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,YAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;aAE1E;YAAA,OAAM,GAAG,EACV;gBACI,OAAQ,MAAM,CAAC,GAAG,CAAC,CAAC;aACvB;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAEe,eAAe,CAAC,IAAY;QACxC,OAAO,IAAI,OAAO,CAAU,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAElD,IAAG;gBAEC,OAAO,OAAO,CAAC,YAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,YAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;aAE/E;YAAA,OAAM,GAAG,EACV;gBACI,OAAQ,MAAM,CAAC,GAAG,CAAC,CAAC;aACvB;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAEe,WAAW,CAAC,MAAc;QAEtC,OAAO,IAAI,OAAO,CAAW,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAEnD,IAAG,CAAC,YAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBACxB,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,MAAM,aAAa,CAAC,CAAC,CAAC;YAE7D,IAAG;gBAEH,IAAI,KAAK,GAAG,MAAM,kBAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAC,aAAa,EAAG,IAAI,EAAC,CAAC,CAAC;gBAEpE,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAEjF;YAAA,OAAM,GAAG,EACV;gBACI,OAAQ,MAAM,CAAC,GAAG,CAAC,CAAC;aACvB;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAEe,aAAa,CAAC,MAAc;QAExC,OAAO,IAAI,OAAO,CAAW,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAEnD,IAAG,CAAC,YAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBACvB,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,MAAM,aAAa,CAAC,CAAC,CAAC;YAE9D,IAAG;gBAEH,IAAI,KAAK,GAAG,MAAM,kBAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAC,aAAa,EAAG,IAAI,EAAC,CAAC,CAAC;gBAEpE,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAEtF;YAAA,OAAM,GAAG,EACV;gBACI,OAAQ,MAAM,CAAC,GAAG,CAAC,CAAC;aACvB;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAEe,SAAS,CAAC,MAAc,EAAE,IAAY;QAElD,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAC,EAAE;YAE9C,IAAG;gBACC,MAAM,YAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;oBAEtC,IAAG,GAAG;wBACF,MAAM,GAAG,CAAC;oBAEd,OAAO,EAAE,CAAC;gBACd,CAAC,CAAC,CAAA;aAEL;YAAA,OAAM,GAAG,EACV;gBACI,MAAM,CAAC,GAAG,CAAC,CAAC;aACf;QACL,CAAC,CAAA,CAAC,CAAA;IAEN,CAAC;CAEJ;AAlHD,8BAkHC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export default abstract class FileServiceBase {
|
|
2
|
+
constructor();
|
|
3
|
+
abstract CopyAsync(origin: string, dest: string): Promise<void>;
|
|
4
|
+
abstract GetAllFiles(origin: string): Promise<string[]>;
|
|
5
|
+
abstract GetAllForders(origin: string): Promise<string[]>;
|
|
6
|
+
abstract FileExists(file: string): Promise<boolean>;
|
|
7
|
+
abstract DirectoryExists(path: string): Promise<boolean>;
|
|
8
|
+
abstract CreateDirectory(path: string): Promise<void>;
|
|
9
|
+
abstract GetDefaultDir(): string;
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileServiceBase.js","sourceRoot":"","sources":["../../../services/fileService/FileServiceBase.ts"],"names":[],"mappings":";;AAEA,MAA8B,eAAe;IAEzC,gBAAc,CAAC;CAUlB;AAZD,kCAYC"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "web_api_base",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "web api base",
|
|
5
|
-
"main": "index.js",
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"description": "web api base",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"/dist"
|
|
9
|
+
],
|
|
6
10
|
"scripts": {
|
|
7
11
|
"test": "jest",
|
|
8
12
|
"debug": "node ./dist/Index.js",
|