@scefira/dfw 0.1.15 → 0.2.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.
- package/lib/DFWInstance.d.ts +20 -20
- package/lib/DFWInstance.js +55 -55
- package/lib/DFWUtils.d.ts +27 -27
- package/lib/DFWUtils.js +63 -63
- package/lib/DFWUtils.js.map +1 -1
- package/lib/index.d.ts +10 -10
- package/lib/index.js +25 -25
- package/lib/manager/APIManager.d.ts +47 -47
- package/lib/manager/APIManager.d.ts.map +1 -1
- package/lib/manager/APIManager.js +207 -233
- package/lib/manager/APIManager.js.map +1 -1
- package/lib/manager/DFWModule.d.ts +13 -13
- package/lib/manager/DFWModule.js +19 -19
- package/lib/manager/DatabaseManager.d.ts +8 -8
- package/lib/manager/DatabaseManager.js +24 -24
- package/lib/manager/FileManager.d.ts +130 -130
- package/lib/manager/FileManager.js +254 -254
- package/lib/manager/SecurityManager.d.ts +50 -50
- package/lib/manager/SecurityManager.d.ts.map +1 -1
- package/lib/manager/SecurityManager.js +187 -191
- package/lib/manager/SecurityManager.js.map +1 -1
- package/lib/manager/SessionManager.d.ts +40 -40
- package/lib/manager/SessionManager.d.ts.map +1 -1
- package/lib/manager/SessionManager.js +194 -173
- package/lib/manager/SessionManager.js.map +1 -1
- package/lib/manager/UserManager.d.ts +42 -42
- package/lib/manager/UserManager.js +62 -62
- package/lib/test.d.ts +1 -1
- package/lib/test.js +70 -70
- package/lib/test.js.map +1 -1
- package/lib/types/APIListenerConfig.d.ts +52 -52
- package/lib/types/APIListenerConfig.js +2 -2
- package/lib/types/DFWBoot.d.ts +18 -18
- package/lib/types/DFWBoot.d.ts.map +1 -1
- package/lib/types/DFWBoot.js +2 -2
- package/lib/types/DFWConfig.d.ts +54 -54
- package/lib/types/DFWConfig.js +2 -2
- package/lib/types/DFWRequestScheme.d.ts +33 -37
- package/lib/types/DFWRequestScheme.d.ts.map +1 -1
- package/lib/types/DFWRequestScheme.js +2 -2
- package/package.json +4 -3
- package/prisma/schema.prisma +5 -27
|
@@ -1,234 +1,208 @@
|
|
|
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
|
-
exports.MiddlewareAsyncWrapper = exports.APIListener = void 0;
|
|
16
|
-
const express_fileupload_1 = __importDefault(require("express-fileupload"));
|
|
17
|
-
const body_parser_1 = __importDefault(require("body-parser"));
|
|
18
|
-
const DFWModule_1 = __importDefault(require("./DFWModule"));
|
|
19
|
-
const express_1 = __importDefault(require("express"));
|
|
20
|
-
const cookie_parser_1 = __importDefault(require("cookie-parser"));
|
|
21
|
-
const SecurityManager_1 = __importDefault(require("./SecurityManager"));
|
|
22
|
-
class APIListener {
|
|
23
|
-
constructor(config, listener) {
|
|
24
|
-
if (typeof config == "function" && !listener) {
|
|
25
|
-
this.listener = config;
|
|
26
|
-
this.config = { method: "get" };
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
this.config = config;
|
|
30
|
-
this.listener = listener;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
exports.APIListener = APIListener;
|
|
35
|
-
class APIManager extends DFWModule_1.default {
|
|
36
|
-
constructor(DFW) {
|
|
37
|
-
super(DFW);
|
|
38
|
-
this.server = require("express")();
|
|
39
|
-
this.DFW_BASIC_ROUTER = express_1.default.Router();
|
|
40
|
-
this.bootCallbacks = [
|
|
41
|
-
/** add default callback on each APIManager instance */
|
|
42
|
-
({ dfw }, boot) => __awaiter(this, void 0, void 0, function* () {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
//
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
* @param path
|
|
209
|
-
*/
|
|
210
|
-
addListenerObject(listener, path) {
|
|
211
|
-
if (listener instanceof APIListener) {
|
|
212
|
-
this.addListener(path, listener.listener, listener.config);
|
|
213
|
-
}
|
|
214
|
-
else if (Array.isArray(listener)) {
|
|
215
|
-
for (let e of listener) {
|
|
216
|
-
this.addListenerObject(e, path);
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
else if (typeof listener == "object") {
|
|
220
|
-
let keys = Object.keys(listener);
|
|
221
|
-
for (let key of keys) {
|
|
222
|
-
let n = listener[key];
|
|
223
|
-
this.addListenerObject(n, `${path}/${key}`);
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
else {
|
|
227
|
-
throw "PhaseLoadModule:registerApiListener expected object|array|APIListener as node argument";
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
exports.default = APIManager;
|
|
232
|
-
const MiddlewareAsyncWrapper = (fn) => (...args) => fn(...args).catch(args[2]);
|
|
233
|
-
exports.MiddlewareAsyncWrapper = MiddlewareAsyncWrapper;
|
|
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
|
+
exports.MiddlewareAsyncWrapper = exports.APIListener = void 0;
|
|
16
|
+
const express_fileupload_1 = __importDefault(require("express-fileupload"));
|
|
17
|
+
const body_parser_1 = __importDefault(require("body-parser"));
|
|
18
|
+
const DFWModule_1 = __importDefault(require("./DFWModule"));
|
|
19
|
+
const express_1 = __importDefault(require("express"));
|
|
20
|
+
const cookie_parser_1 = __importDefault(require("cookie-parser"));
|
|
21
|
+
const SecurityManager_1 = __importDefault(require("./SecurityManager"));
|
|
22
|
+
class APIListener {
|
|
23
|
+
constructor(config, listener) {
|
|
24
|
+
if (typeof config == "function" && !listener) {
|
|
25
|
+
this.listener = config;
|
|
26
|
+
this.config = { method: "get" };
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
this.config = config;
|
|
30
|
+
this.listener = listener;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.APIListener = APIListener;
|
|
35
|
+
class APIManager extends DFWModule_1.default {
|
|
36
|
+
constructor(DFW) {
|
|
37
|
+
super(DFW);
|
|
38
|
+
this.server = require("express")();
|
|
39
|
+
this.DFW_BASIC_ROUTER = express_1.default.Router();
|
|
40
|
+
this.bootCallbacks = [
|
|
41
|
+
/** add default callback on each APIManager instance */
|
|
42
|
+
({ dfw }, boot) => __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
const session = dfw.session;
|
|
44
|
+
boot.session = {
|
|
45
|
+
user: session.user ? {
|
|
46
|
+
id: session.user.id,
|
|
47
|
+
nick: session.user.nick,
|
|
48
|
+
email: session.user.email,
|
|
49
|
+
credentials: session.user['credentials']
|
|
50
|
+
} : undefined
|
|
51
|
+
};
|
|
52
|
+
})
|
|
53
|
+
];
|
|
54
|
+
this.DFW_BASIC_ROUTER.use((0, cookie_parser_1.default)());
|
|
55
|
+
this.DFW_BASIC_ROUTER.use(((req, res, next) => {
|
|
56
|
+
var _a;
|
|
57
|
+
req.dfw = {
|
|
58
|
+
__meta: {
|
|
59
|
+
config: (_a = req['__dfw_APIConfig']) !== null && _a !== void 0 ? _a : {}
|
|
60
|
+
},
|
|
61
|
+
instance: this.instance,
|
|
62
|
+
req,
|
|
63
|
+
res
|
|
64
|
+
};
|
|
65
|
+
next();
|
|
66
|
+
}));
|
|
67
|
+
this.DFW_BASIC_ROUTER.use((0, exports.MiddlewareAsyncWrapper)((req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
try {
|
|
69
|
+
yield this.instance.DatabaseManager.middleware(req, res);
|
|
70
|
+
yield this.instance.SessionManager.middleware(req, res);
|
|
71
|
+
yield this.instance.SecurityManager.middleware(req, res);
|
|
72
|
+
yield this.instance.UserManager.middleware(req, res);
|
|
73
|
+
yield this.instance.FileManager.middleware(req, res);
|
|
74
|
+
yield this.instance.APIManager.middleware(req, res);
|
|
75
|
+
next();
|
|
76
|
+
}
|
|
77
|
+
catch (e) {
|
|
78
|
+
next(e);
|
|
79
|
+
}
|
|
80
|
+
})));
|
|
81
|
+
}
|
|
82
|
+
middleware(req, res) {
|
|
83
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
req.dfw.boot = () => this.getBootAsync(req);
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
startServer(port = 3000) {
|
|
88
|
+
this.server.listen(port);
|
|
89
|
+
console.log(`[DFW] Server listening on port ${port}`);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
*
|
|
93
|
+
* @param path
|
|
94
|
+
* @param apiFunction
|
|
95
|
+
* @param config
|
|
96
|
+
*/
|
|
97
|
+
addListener(path, apiFunction, config = {}) {
|
|
98
|
+
if (!this.server)
|
|
99
|
+
throw `you must start an DFW/Express Server before add a listener`;
|
|
100
|
+
let handlers = this.makeAPIListenerMiddlewares(config);
|
|
101
|
+
// APIFunction middleware
|
|
102
|
+
handlers.push((0, exports.MiddlewareAsyncWrapper)((req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
yield Promise.resolve(apiFunction(req, res, req.dfw)).then((data) => {
|
|
104
|
+
if (res.finished !== true && config.autoSend !== false)
|
|
105
|
+
res.json(data).end();
|
|
106
|
+
if (config.callback)
|
|
107
|
+
res.on("finish", () => config.callback && config.callback(req, data));
|
|
108
|
+
next();
|
|
109
|
+
}).catch((err) => next(err));
|
|
110
|
+
})));
|
|
111
|
+
// error handler middleware
|
|
112
|
+
handlers.push(((err, req, res, next) => {
|
|
113
|
+
if (process.env.NODE_ENV == "development")
|
|
114
|
+
console.error(`[DFW_ERROR] ${err}`);
|
|
115
|
+
res.statusCode = 500;
|
|
116
|
+
if (typeof err === "object" && err.message) {
|
|
117
|
+
res.json({ error: err.message, stack: process.env.NODE_ENV == "development" ? err.stack : null }).end();
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
res.json({ error: err }).end();
|
|
121
|
+
}
|
|
122
|
+
next(err);
|
|
123
|
+
}));
|
|
124
|
+
// Setup meta data
|
|
125
|
+
this.server[config.method ? config.method.toLowerCase() : "get"](path, ((req, _res, next) => {
|
|
126
|
+
req["__dfw_APIConfig"] = config;
|
|
127
|
+
next();
|
|
128
|
+
}));
|
|
129
|
+
// Install basic middleware
|
|
130
|
+
this.server[config.method ? config.method.toLowerCase() : "get"](path, this.DFW_BASIC_ROUTER);
|
|
131
|
+
// Install API handlers
|
|
132
|
+
this.server[config.method ? config.method.toLowerCase() : "get"](path, handlers);
|
|
133
|
+
console.log(`[API][${config.method ? config.method.toUpperCase() : "GET"}] ${path}`);
|
|
134
|
+
}
|
|
135
|
+
makeAPIListenerMiddlewares(config = {}) {
|
|
136
|
+
let handlers = [];
|
|
137
|
+
// Body parser
|
|
138
|
+
if (config.parseBody !== false) { // Body parser middleware
|
|
139
|
+
handlers.push(body_parser_1.default.json(), body_parser_1.default.urlencoded({ extended: true }));
|
|
140
|
+
}
|
|
141
|
+
//Check security middleware
|
|
142
|
+
if (config.security) {
|
|
143
|
+
handlers.push((0, exports.MiddlewareAsyncWrapper)((req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
144
|
+
let bindings = config.security ? SecurityManager_1.default.jsonToBindings(config.security) : [];
|
|
145
|
+
for (let binding of bindings) {
|
|
146
|
+
if ((yield req.dfw.SecurityManager.checkBindingAsync(req, binding[0], binding[1])) === false) {
|
|
147
|
+
next(`${SecurityManager_1.default.RULE_LABELS[binding[0]]}`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
next();
|
|
151
|
+
})));
|
|
152
|
+
}
|
|
153
|
+
// Upload handler
|
|
154
|
+
if (config.upload) {
|
|
155
|
+
handlers.push((0, express_fileupload_1.default)(Object.assign(config.upload, config, { useTempFiles: true, tempFileDir: this.instance.FileManager.tmpDir })));
|
|
156
|
+
}
|
|
157
|
+
return handlers;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
*
|
|
161
|
+
* @param dfw
|
|
162
|
+
*/
|
|
163
|
+
getBootAsync(req) {
|
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
let result = {};
|
|
166
|
+
for (let callback of this.bootCallbacks) {
|
|
167
|
+
yield callback(req, result);
|
|
168
|
+
}
|
|
169
|
+
return result;
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
*
|
|
174
|
+
* @param callback
|
|
175
|
+
*/
|
|
176
|
+
addBootCallback(callback) {
|
|
177
|
+
this.bootCallbacks.push(callback);
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Función recursiva que registra en DFW los listeners basados en una estructura de objeto
|
|
181
|
+
* @param listener
|
|
182
|
+
* @param path
|
|
183
|
+
*/
|
|
184
|
+
addListenerObject(listener, path) {
|
|
185
|
+
if (listener instanceof APIListener) {
|
|
186
|
+
this.addListener(path, listener.listener, listener.config);
|
|
187
|
+
}
|
|
188
|
+
else if (Array.isArray(listener)) {
|
|
189
|
+
for (let e of listener) {
|
|
190
|
+
this.addListenerObject(e, path);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
else if (typeof listener == "object") {
|
|
194
|
+
let keys = Object.keys(listener);
|
|
195
|
+
for (let key of keys) {
|
|
196
|
+
let n = listener[key];
|
|
197
|
+
this.addListenerObject(n, `${path}/${key}`);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
throw "PhaseLoadModule:registerApiListener expected object|array|APIListener as node argument";
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
exports.default = APIManager;
|
|
206
|
+
const MiddlewareAsyncWrapper = (fn) => (...args) => fn(...args).catch(args[2]);
|
|
207
|
+
exports.MiddlewareAsyncWrapper = MiddlewareAsyncWrapper;
|
|
234
208
|
//# sourceMappingURL=APIManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APIManager.js","sourceRoot":"","sources":["../../src/manager/APIManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,4EAA4C;AAC5C,8DAAqC;AAErC,4DAAoC;AAIpC,sDAA8B;AAC9B,kEAAyC;AACzC,wEAAgD;AAKhD,MAAa,WAAW;IAIpB,YAAY,MAAuC,EAAE,QAAsB;QACvE,IAAI,OAAO,MAAM,IAAI,UAAU,IAAI,CAAC,QAAQ,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,MAAqB,CAAC;YACtC,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;SAClC;aAAM;YACH,IAAI,CAAC,MAAM,GAAG,MAA2B,CAAC;YAC1C,IAAI,CAAC,QAAQ,GAAG,QAAuB,CAAC;SAC3C;IACL,CAAC;CACJ;AAbD,kCAaC;AAID,MAAqB,UAAW,SAAQ,mBAAS;
|
|
1
|
+
{"version":3,"file":"APIManager.js","sourceRoot":"","sources":["../../src/manager/APIManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { PrismaClient } from "@prisma/client";
|
|
2
|
-
import * as runtime from '@prisma/client/runtime/library';
|
|
3
|
-
import { NextFunction } from "express";
|
|
4
|
-
import DFWInstance from "../DFWInstance";
|
|
5
|
-
export default abstract class DFWModule {
|
|
6
|
-
private _instance;
|
|
7
|
-
private _db;
|
|
8
|
-
constructor(DFW: DFWInstance);
|
|
9
|
-
get db(): Omit<PrismaClient<import(".prisma/client").Prisma.PrismaClientOptions, never, runtime.DefaultArgs>, "$connect" | "$disconnect" | "$on" | "$transaction" | "$use" | "$extends">;
|
|
10
|
-
get instance(): DFWInstance;
|
|
11
|
-
use(db: PrismaClient | Omit<PrismaClient, runtime.ITXClientDenyList>): this;
|
|
12
|
-
static middleware?: (req: Request, res: Response, next: NextFunction) => void;
|
|
13
|
-
}
|
|
1
|
+
import { PrismaClient } from "@prisma/client";
|
|
2
|
+
import * as runtime from '@prisma/client/runtime/library';
|
|
3
|
+
import { NextFunction } from "express";
|
|
4
|
+
import DFWInstance from "../DFWInstance";
|
|
5
|
+
export default abstract class DFWModule {
|
|
6
|
+
private _instance;
|
|
7
|
+
private _db;
|
|
8
|
+
constructor(DFW: DFWInstance);
|
|
9
|
+
get db(): Omit<PrismaClient<import(".prisma/client").Prisma.PrismaClientOptions, never, runtime.DefaultArgs>, "$connect" | "$disconnect" | "$on" | "$transaction" | "$use" | "$extends">;
|
|
10
|
+
get instance(): DFWInstance;
|
|
11
|
+
use(db: PrismaClient | Omit<PrismaClient, runtime.ITXClientDenyList>): this;
|
|
12
|
+
static middleware?: (req: Request, res: Response, next: NextFunction) => void;
|
|
13
|
+
}
|
|
14
14
|
//# sourceMappingURL=DFWModule.d.ts.map
|
package/lib/manager/DFWModule.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
class DFWModule {
|
|
4
|
-
constructor(DFW) {
|
|
5
|
-
this._instance = DFW;
|
|
6
|
-
this._db = this._instance.database;
|
|
7
|
-
}
|
|
8
|
-
get db() {
|
|
9
|
-
return this._db;
|
|
10
|
-
}
|
|
11
|
-
get instance() {
|
|
12
|
-
return this._instance;
|
|
13
|
-
}
|
|
14
|
-
use(db) {
|
|
15
|
-
this._db = db;
|
|
16
|
-
return this;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.default = DFWModule;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class DFWModule {
|
|
4
|
+
constructor(DFW) {
|
|
5
|
+
this._instance = DFW;
|
|
6
|
+
this._db = this._instance.database;
|
|
7
|
+
}
|
|
8
|
+
get db() {
|
|
9
|
+
return this._db;
|
|
10
|
+
}
|
|
11
|
+
get instance() {
|
|
12
|
+
return this._instance;
|
|
13
|
+
}
|
|
14
|
+
use(db) {
|
|
15
|
+
this._db = db;
|
|
16
|
+
return this;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.default = DFWModule;
|
|
20
20
|
//# sourceMappingURL=DFWModule.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Response } from "express";
|
|
2
|
-
import DFWInstance from "../DFWInstance";
|
|
3
|
-
import { DFWRequest } from "../types/DFWRequestScheme";
|
|
4
|
-
import DFWModule from "./DFWModule";
|
|
5
|
-
export default class DatabaseManager extends DFWModule {
|
|
6
|
-
constructor(DFW: DFWInstance);
|
|
7
|
-
middleware: (req: DFWRequest, res: Response) => Promise<void>;
|
|
8
|
-
}
|
|
1
|
+
import { Response } from "express";
|
|
2
|
+
import DFWInstance from "../DFWInstance";
|
|
3
|
+
import { DFWRequest } from "../types/DFWRequestScheme";
|
|
4
|
+
import DFWModule from "./DFWModule";
|
|
5
|
+
export default class DatabaseManager extends DFWModule {
|
|
6
|
+
constructor(DFW: DFWInstance);
|
|
7
|
+
middleware: (req: DFWRequest, res: Response) => Promise<void>;
|
|
8
|
+
}
|
|
9
9
|
//# sourceMappingURL=DatabaseManager.d.ts.map
|
|
@@ -1,25 +1,25 @@
|
|
|
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 DFWModule_1 = __importDefault(require("./DFWModule"));
|
|
16
|
-
class DatabaseManager extends DFWModule_1.default {
|
|
17
|
-
constructor(DFW) {
|
|
18
|
-
super(DFW);
|
|
19
|
-
this.middleware = (req, res) => __awaiter(this, void 0, void 0, function* () {
|
|
20
|
-
req.dfw.db = this.instance.database; //Extends sequelize database object to dfw var (quick access)
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.default = DatabaseManager;
|
|
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 DFWModule_1 = __importDefault(require("./DFWModule"));
|
|
16
|
+
class DatabaseManager extends DFWModule_1.default {
|
|
17
|
+
constructor(DFW) {
|
|
18
|
+
super(DFW);
|
|
19
|
+
this.middleware = (req, res) => __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
req.dfw.db = this.instance.database; //Extends sequelize database object to dfw var (quick access)
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.default = DatabaseManager;
|
|
25
25
|
//# sourceMappingURL=DatabaseManager.js.map
|