@scefira/dfw 0.2.10 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/DFWUtils.d.ts +3 -0
- package/lib/DFWUtils.d.ts.map +1 -1
- package/lib/DFWUtils.js +34 -2
- package/lib/DFWUtils.js.map +1 -1
- package/lib/controller/DFWController.d.ts +17 -0
- package/lib/controller/DFWController.d.ts.map +1 -0
- package/lib/{manager/DatabaseManager.js → controller/DFWController.js} +28 -8
- package/lib/controller/DFWController.js.map +1 -0
- package/lib/controller/DFWSecurityController.d.ts +29 -0
- package/lib/controller/DFWSecurityController.d.ts.map +1 -0
- package/lib/controller/DFWSecurityController.js +107 -0
- package/lib/controller/DFWSecurityController.js.map +1 -0
- package/lib/controller/DFWSessionController.d.ts +8 -0
- package/lib/controller/DFWSessionController.d.ts.map +1 -0
- package/lib/controller/DFWSessionController.js +45 -0
- package/lib/controller/DFWSessionController.js.map +1 -0
- package/lib/controller/DFWUserController.d.ts +22 -0
- package/lib/controller/DFWUserController.d.ts.map +1 -0
- package/lib/controller/DFWUserController.js +69 -0
- package/lib/controller/DFWUserController.js.map +1 -0
- package/lib/index.d.ts +35 -6
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +110 -13
- package/lib/index.js.map +1 -1
- package/lib/lib/APIManager.d.ts +10 -0
- package/lib/lib/APIManager.d.ts.map +1 -0
- package/lib/lib/APIManager.js +130 -0
- package/lib/lib/APIManager.js.map +1 -0
- package/lib/lib/DFWSessionStore.d.ts +11 -0
- package/lib/lib/DFWSessionStore.d.ts.map +1 -0
- package/lib/lib/DFWSessionStore.js +60 -0
- package/lib/lib/DFWSessionStore.js.map +1 -0
- package/lib/lib/SessionManager.d.ts +6 -0
- package/lib/lib/SessionManager.d.ts.map +1 -0
- package/lib/lib/SessionManager.js +9 -0
- package/lib/lib/SessionManager.js.map +1 -0
- package/lib/lib/strategies/DFWPassportStrategy.d.ts +4 -0
- package/lib/lib/strategies/DFWPassportStrategy.d.ts.map +1 -0
- package/lib/lib/strategies/DFWPassportStrategy.js +33 -0
- package/lib/lib/strategies/DFWPassportStrategy.js.map +1 -0
- package/lib/listeners/DELETEListener.d.ts +4 -0
- package/lib/listeners/DELETEListener.d.ts.map +1 -0
- package/lib/listeners/DELETEListener.js +10 -0
- package/lib/listeners/DELETEListener.js.map +1 -0
- package/lib/listeners/GETListener.d.ts +4 -0
- package/lib/listeners/GETListener.d.ts.map +1 -0
- package/lib/listeners/GETListener.js +10 -0
- package/lib/listeners/GETListener.js.map +1 -0
- package/lib/listeners/PATCHListener.d.ts +4 -0
- package/lib/listeners/PATCHListener.d.ts.map +1 -0
- package/lib/listeners/PATCHListener.js +10 -0
- package/lib/listeners/PATCHListener.js.map +1 -0
- package/lib/listeners/POSTListener.d.ts +4 -0
- package/lib/listeners/POSTListener.d.ts.map +1 -0
- package/lib/listeners/POSTListener.js +10 -0
- package/lib/listeners/POSTListener.js.map +1 -0
- package/lib/listeners/PUTListener.d.ts +4 -0
- package/lib/listeners/PUTListener.d.ts.map +1 -0
- package/lib/listeners/PUTListener.js +10 -0
- package/lib/listeners/PUTListener.js.map +1 -0
- package/lib/listeners/RawListener.d.ts +5 -0
- package/lib/listeners/RawListener.d.ts.map +1 -0
- package/lib/listeners/RawListener.js +13 -0
- package/lib/listeners/RawListener.js.map +1 -0
- package/lib/listeners/auth/DFWAuthListener.d.ts +4 -0
- package/lib/listeners/auth/DFWAuthListener.d.ts.map +1 -0
- package/lib/listeners/auth/DFWAuthListener.js +31 -0
- package/lib/listeners/auth/DFWAuthListener.js.map +1 -0
- package/lib/test.js +86 -63
- package/lib/test.js.map +1 -1
- package/lib/types/APIListener.d.ts +51 -0
- package/lib/types/APIListener.d.ts.map +1 -0
- package/lib/types/{DFWRequestScheme.js → APIListener.js} +1 -1
- package/lib/types/APIListener.js.map +1 -0
- package/lib/types/DFWConfig.d.ts +23 -30
- package/lib/types/DFWConfig.d.ts.map +1 -1
- package/lib/types/DFWRequest.d.ts +26 -0
- package/lib/types/DFWRequest.d.ts.map +1 -0
- package/lib/types/{DFWBoot.js → DFWRequest.js} +1 -1
- package/lib/types/DFWRequest.js.map +1 -0
- package/package.json +19 -11
- package/prisma/schema/dfw.prisma +91 -0
- package/prisma/schema/schema.prisma +9 -0
- package/lib/DFWInstance.d.ts +0 -21
- package/lib/DFWInstance.d.ts.map +0 -1
- package/lib/DFWInstance.js +0 -56
- package/lib/DFWInstance.js.map +0 -1
- package/lib/manager/APIManager.d.ts +0 -48
- package/lib/manager/APIManager.d.ts.map +0 -1
- package/lib/manager/APIManager.js +0 -211
- package/lib/manager/APIManager.js.map +0 -1
- package/lib/manager/DFWModule.d.ts +0 -14
- package/lib/manager/DFWModule.d.ts.map +0 -1
- package/lib/manager/DFWModule.js +0 -20
- package/lib/manager/DFWModule.js.map +0 -1
- package/lib/manager/DatabaseManager.d.ts +0 -9
- package/lib/manager/DatabaseManager.d.ts.map +0 -1
- package/lib/manager/DatabaseManager.js.map +0 -1
- package/lib/manager/FileManager.d.ts +0 -149
- package/lib/manager/FileManager.d.ts.map +0 -1
- package/lib/manager/FileManager.js +0 -280
- package/lib/manager/FileManager.js.map +0 -1
- package/lib/manager/SecurityManager.d.ts +0 -51
- package/lib/manager/SecurityManager.d.ts.map +0 -1
- package/lib/manager/SecurityManager.js +0 -201
- package/lib/manager/SecurityManager.js.map +0 -1
- package/lib/manager/SessionManager.d.ts +0 -41
- package/lib/manager/SessionManager.d.ts.map +0 -1
- package/lib/manager/SessionManager.js +0 -199
- package/lib/manager/SessionManager.js.map +0 -1
- package/lib/manager/UserManager.d.ts +0 -43
- package/lib/manager/UserManager.d.ts.map +0 -1
- package/lib/manager/UserManager.js +0 -63
- package/lib/manager/UserManager.js.map +0 -1
- package/lib/types/APIListenerConfig.d.ts +0 -53
- package/lib/types/APIListenerConfig.d.ts.map +0 -1
- package/lib/types/APIListenerConfig.js +0 -3
- package/lib/types/APIListenerConfig.js.map +0 -1
- package/lib/types/DFWBoot.d.ts +0 -19
- package/lib/types/DFWBoot.d.ts.map +0 -1
- package/lib/types/DFWBoot.js.map +0 -1
- package/lib/types/DFWRequestScheme.d.ts +0 -40
- package/lib/types/DFWRequestScheme.d.ts.map +0 -1
- package/lib/types/DFWRequestScheme.js.map +0 -1
- package/prisma/schema.prisma +0 -98
package/lib/index.js
CHANGED
|
@@ -1,26 +1,123 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
2
34
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
35
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
36
|
};
|
|
5
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
38
|
exports.DFWCore = void 0;
|
|
7
|
-
const
|
|
39
|
+
const client_1 = require("@prisma/client");
|
|
40
|
+
const express_1 = __importStar(require("express"));
|
|
41
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
42
|
+
const fs_1 = __importDefault(require("fs"));
|
|
43
|
+
const DFWUtils_1 = __importDefault(require("./DFWUtils"));
|
|
44
|
+
const APIManager_1 = __importDefault(require("./lib/APIManager"));
|
|
8
45
|
class DFWCore {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
this.
|
|
16
|
-
|
|
46
|
+
constructor(config) {
|
|
47
|
+
var _a, _b;
|
|
48
|
+
this.server = (0, express_1.default)();
|
|
49
|
+
this.RouterAPILevel = (0, express_1.Router)();
|
|
50
|
+
this.RouterAccessLevel = (0, express_1.Router)();
|
|
51
|
+
this.APIManager = new APIManager_1.default(this);
|
|
52
|
+
this.config = Object.freeze(config);
|
|
53
|
+
this.database = new client_1.PrismaClient({
|
|
54
|
+
log: config.database ? config.database.log ? ['query', 'info', 'warn', 'error'] : undefined : undefined,
|
|
55
|
+
});
|
|
56
|
+
if (fs_1.default.existsSync(DFWCore.DFW_PATH) == false) {
|
|
57
|
+
fs_1.default.mkdirSync(DFWCore.DFW_PATH);
|
|
58
|
+
}
|
|
59
|
+
if ((_a = config.server) === null || _a === void 0 ? void 0 : _a.trustProxy)
|
|
60
|
+
this.server.set('trust proxy', (_b = config.server) === null || _b === void 0 ? void 0 : _b.trustProxy);
|
|
61
|
+
this.APIManager.installAPILAyer();
|
|
62
|
+
this.APIManager.installSecurityLayer();
|
|
63
|
+
DFWCore.MAIN_INSTANCE = this;
|
|
64
|
+
}
|
|
65
|
+
start() {
|
|
66
|
+
var _a, _b;
|
|
67
|
+
const port = (_b = (_a = this.config.server) === null || _a === void 0 ? void 0 : _a.port) !== null && _b !== void 0 ? _b : 8080;
|
|
68
|
+
this.server.listen(port, () => {
|
|
69
|
+
DFWUtils_1.default.log(`Server listening on port ${chalk_1.default.yellow(port)}`);
|
|
70
|
+
});
|
|
71
|
+
return this;
|
|
72
|
+
}
|
|
73
|
+
addListener(path, b, c) {
|
|
74
|
+
const params = (typeof b == 'function' ? c : b);
|
|
75
|
+
const listener = typeof b === 'function' ? b : c;
|
|
76
|
+
this.APIManager.addListener(path, params, listener);
|
|
77
|
+
}
|
|
78
|
+
addAccessValidator(path, validator) {
|
|
79
|
+
this.RouterAccessLevel.use(path, (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
const isValid = yield Promise.resolve(validator(req));
|
|
81
|
+
if (!isValid) {
|
|
82
|
+
return res.status(403).json({ error: 'ACCESS_DENIED' }).end();
|
|
83
|
+
}
|
|
84
|
+
next();
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* @param DFW
|
|
89
|
+
* @param node
|
|
90
|
+
* @param path
|
|
91
|
+
*/
|
|
92
|
+
register(node, path = "") {
|
|
93
|
+
if (Array.isArray(node)) {
|
|
94
|
+
node.forEach((n) => { this.register(n, path); });
|
|
95
|
+
}
|
|
96
|
+
else if (!!node.listener || !!node.params) {
|
|
97
|
+
if (node.listener) {
|
|
98
|
+
this.addListener(path, node.params, node.listener);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
this.addListener(path, node.params);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
else if (typeof node == "function") {
|
|
105
|
+
this.addListener(path, node);
|
|
106
|
+
}
|
|
107
|
+
else if (typeof node == "object") {
|
|
108
|
+
for (let okey in node) {
|
|
109
|
+
this.register(node[okey], `${path}/${okey}`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
DFWUtils_1.default.log(`Unable to register '${path}' ${typeof node}`, true);
|
|
114
|
+
}
|
|
17
115
|
}
|
|
18
|
-
|
|
19
|
-
return this.
|
|
116
|
+
get db() {
|
|
117
|
+
return this.database;
|
|
20
118
|
}
|
|
21
119
|
}
|
|
22
120
|
exports.DFWCore = DFWCore;
|
|
23
|
-
DFWCore.
|
|
24
|
-
DFWCore.listeners = {}; //TODO Implement some listeners
|
|
121
|
+
DFWCore.DFW_PATH = "./.dfw";
|
|
25
122
|
exports.default = DFWCore;
|
|
26
123
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import DFWCore from "..";
|
|
2
|
+
import { APIListenerParams, APIListenerFunction } from "../types/APIListener";
|
|
3
|
+
export default class APIManager {
|
|
4
|
+
private DFW;
|
|
5
|
+
constructor(DFW: DFWCore);
|
|
6
|
+
installAPILAyer(): void;
|
|
7
|
+
installSecurityLayer(): void;
|
|
8
|
+
addListener(path: string, params?: APIListenerParams, listener?: APIListenerFunction): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=APIManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"APIManager.d.ts","sourceRoot":"","sources":["../../src/lib/APIManager.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,IAAI,CAAC;AAGzB,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAW9E,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,OAAO;IAIjB,eAAe;IAoDf,oBAAoB;IAIpB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,iBAAsB,EAAE,QAAQ,CAAC,EAAE,mBAAmB;CAmDlG"}
|
|
@@ -0,0 +1,130 @@
|
|
|
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 body_parser_1 = __importDefault(require("body-parser"));
|
|
16
|
+
const DFWUtils_1 = __importDefault(require("../DFWUtils"));
|
|
17
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
18
|
+
const cors_1 = __importDefault(require("cors"));
|
|
19
|
+
const passport_1 = __importDefault(require("passport"));
|
|
20
|
+
const DFWPassportStrategy_1 = __importDefault(require("./strategies/DFWPassportStrategy"));
|
|
21
|
+
const express_session_1 = __importDefault(require("express-session"));
|
|
22
|
+
const DFWSessionStore_1 = __importDefault(require("./DFWSessionStore"));
|
|
23
|
+
class APIManager {
|
|
24
|
+
constructor(DFW) {
|
|
25
|
+
this.DFW = DFW;
|
|
26
|
+
}
|
|
27
|
+
installAPILAyer() {
|
|
28
|
+
var _a, _b, _c, _d;
|
|
29
|
+
const config = this.DFW.config;
|
|
30
|
+
const APIRouter = this.DFW.RouterAPILevel;
|
|
31
|
+
//// PASSPORT AND SESSION ////
|
|
32
|
+
APIRouter.use((0, express_session_1.default)({
|
|
33
|
+
name: 'stk',
|
|
34
|
+
secret: 'default',
|
|
35
|
+
genid: () => DFWUtils_1.default.uuid(),
|
|
36
|
+
resave: false,
|
|
37
|
+
saveUninitialized: false,
|
|
38
|
+
store: new DFWSessionStore_1.default(this.DFW),
|
|
39
|
+
cookie: {
|
|
40
|
+
secure: false,
|
|
41
|
+
maxAge: 1000 * 60 * 60 * 24 * 360 //1Y
|
|
42
|
+
}
|
|
43
|
+
}));
|
|
44
|
+
APIRouter.use(passport_1.default.initialize());
|
|
45
|
+
APIRouter.use(passport_1.default.session());
|
|
46
|
+
if (((_b = (_a = config.session) === null || _a === void 0 ? void 0 : _a.authenticators) === null || _b === void 0 ? void 0 : _b.dfw) !== false) {
|
|
47
|
+
passport_1.default.use('dfw', DFWPassportStrategy_1.default);
|
|
48
|
+
}
|
|
49
|
+
passport_1.default.serializeUser((_a, done_1) => __awaiter(this, [_a, done_1], void 0, function* ({ id }, done) {
|
|
50
|
+
done(null, id);
|
|
51
|
+
}));
|
|
52
|
+
passport_1.default.deserializeUser((idUser, done) => __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
done(null, { id: idUser });
|
|
54
|
+
}));
|
|
55
|
+
//// CORS ////
|
|
56
|
+
if ((_c = this.DFW.config.server) === null || _c === void 0 ? void 0 : _c.cors) {
|
|
57
|
+
APIRouter.use((0, cors_1.default)((_d = this.DFW.config.server) === null || _d === void 0 ? void 0 : _d.cors));
|
|
58
|
+
}
|
|
59
|
+
//// DFW SChema ////
|
|
60
|
+
APIRouter.use(((req, _, next) => {
|
|
61
|
+
const dfw = {
|
|
62
|
+
instance: this.DFW,
|
|
63
|
+
db: this.DFW.db,
|
|
64
|
+
isAuthenticated: () => req.isAuthenticated(),
|
|
65
|
+
user: req.user,
|
|
66
|
+
addCallback: (cb) => { }
|
|
67
|
+
};
|
|
68
|
+
req.dfw = dfw;
|
|
69
|
+
next();
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
installSecurityLayer() {
|
|
73
|
+
// Nothing to do here yet
|
|
74
|
+
}
|
|
75
|
+
addListener(path, params = {}, listener) {
|
|
76
|
+
var _a;
|
|
77
|
+
const server = this.DFW.server;
|
|
78
|
+
const method = (_a = params.method) !== null && _a !== void 0 ? _a : 'get';
|
|
79
|
+
if (!listener && !params.middleware) {
|
|
80
|
+
DFWUtils_1.default.log(`Unable to set listener for [${method}] ${path} listener and middleware are undefined`);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (params.raw) {
|
|
84
|
+
if (params.middleware)
|
|
85
|
+
server[method](path, params.middleware);
|
|
86
|
+
if (listener)
|
|
87
|
+
server[method](path, listener);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
// Body Parser
|
|
91
|
+
if (['post', 'put', 'patch'].includes(method) && params.disableBodyParser !== true)
|
|
92
|
+
server[method](path, body_parser_1.default.json());
|
|
93
|
+
// DFW middlewares
|
|
94
|
+
server[method](path, this.DFW.RouterAPILevel);
|
|
95
|
+
server[method](path, this.DFW.RouterAccessLevel);
|
|
96
|
+
// Param middlewares
|
|
97
|
+
if (params.middleware)
|
|
98
|
+
server[method](path, params.middleware);
|
|
99
|
+
if (listener) {
|
|
100
|
+
server[method](path, (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
101
|
+
try {
|
|
102
|
+
yield Promise.resolve(listener(req, res)).then((data) => {
|
|
103
|
+
if (res.finished !== true && params.disableAutoSend !== true)
|
|
104
|
+
res.json(data).end();
|
|
105
|
+
if (params.callback)
|
|
106
|
+
res.on("finish", () => params.callback && params.callback(req, data));
|
|
107
|
+
next();
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
catch (e) {
|
|
111
|
+
next(e);
|
|
112
|
+
}
|
|
113
|
+
}));
|
|
114
|
+
}
|
|
115
|
+
server.use(path, (err, _, res, next) => {
|
|
116
|
+
if (process.env.NODE_ENV == "development")
|
|
117
|
+
DFWUtils_1.default.log(err, true);
|
|
118
|
+
if (typeof err === "object" && err.message) {
|
|
119
|
+
res.status(500).json({ error: err.message, stack: process.env.NODE_ENV == "development" ? err.stack : null }).end();
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
res.status(500).json({ error: err }).end();
|
|
123
|
+
}
|
|
124
|
+
next(err);
|
|
125
|
+
});
|
|
126
|
+
DFWUtils_1.default.log(`${chalk_1.default.yellow(method.toUpperCase().padEnd(7, ' '))} ${chalk_1.default.green(path)}`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.default = APIManager;
|
|
130
|
+
//# sourceMappingURL=APIManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"APIManager.js","sourceRoot":"","sources":["../../src/lib/APIManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Store } from "express-session";
|
|
2
|
+
import DFWCore from "..";
|
|
3
|
+
declare class DFWSessionStore extends Store {
|
|
4
|
+
private db;
|
|
5
|
+
constructor(DFW: DFWCore);
|
|
6
|
+
get(sid: string, callback: (err: any, session?: any) => void): void;
|
|
7
|
+
set(sid: string, sessionData: any, callback?: (err?: any) => void): void;
|
|
8
|
+
destroy(sid: string, callback?: (err?: any) => void): void;
|
|
9
|
+
}
|
|
10
|
+
export default DFWSessionStore;
|
|
11
|
+
//# sourceMappingURL=DFWSessionStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DFWSessionStore.d.ts","sourceRoot":"","sources":["../../src/lib/DFWSessionStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,OAAO,MAAM,IAAI,CAAC;AAGzB,cAAM,eAAgB,SAAQ,KAAK;IAE/B,OAAO,CAAC,EAAE,CAAc;gBAEZ,GAAG,EAAE,OAAO;IAKxB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAenE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAiBxE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;CAY7D;AAED,eAAe,eAAe,CAAA"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const express_session_1 = require("express-session");
|
|
4
|
+
class DFWSessionStore extends express_session_1.Store {
|
|
5
|
+
constructor(DFW) {
|
|
6
|
+
super();
|
|
7
|
+
this.db = DFW.db;
|
|
8
|
+
}
|
|
9
|
+
get(sid, callback) {
|
|
10
|
+
if (process.env.NODE_ENV === 'development')
|
|
11
|
+
console.log(`read session ${sid}`);
|
|
12
|
+
this.db.dfw_session.findUnique({
|
|
13
|
+
select: { idUser: true },
|
|
14
|
+
where: { id: sid }
|
|
15
|
+
}).then((sessionObj) => {
|
|
16
|
+
if (sessionObj) {
|
|
17
|
+
callback(null, { cookie: {}, passport: { user: sessionObj === null || sessionObj === void 0 ? void 0 : sessionObj.idUser } });
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
callback(null, null);
|
|
21
|
+
}
|
|
22
|
+
}).catch((e) => {
|
|
23
|
+
callback(e);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
set(sid, sessionData, callback) {
|
|
27
|
+
var _a, _b;
|
|
28
|
+
if (process.env.NODE_ENV === 'development')
|
|
29
|
+
console.log(`setting session ${sid} ${JSON.stringify(sessionData)}`);
|
|
30
|
+
this.db.dfw_session.upsert({
|
|
31
|
+
create: {
|
|
32
|
+
id: sid,
|
|
33
|
+
idUser: (_a = sessionData.passport) === null || _a === void 0 ? void 0 : _a.user,
|
|
34
|
+
},
|
|
35
|
+
update: {
|
|
36
|
+
idUser: (_b = sessionData.passport) === null || _b === void 0 ? void 0 : _b.user,
|
|
37
|
+
},
|
|
38
|
+
where: {
|
|
39
|
+
id: sid
|
|
40
|
+
}
|
|
41
|
+
}).then(() => {
|
|
42
|
+
callback === null || callback === void 0 ? void 0 : callback();
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
destroy(sid, callback) {
|
|
46
|
+
if (process.env.NODE_ENV === 'development')
|
|
47
|
+
console.log(`deleting session ${sid}`);
|
|
48
|
+
this.db.dfw_session.deleteMany({
|
|
49
|
+
where: {
|
|
50
|
+
id: sid
|
|
51
|
+
},
|
|
52
|
+
}).then(() => {
|
|
53
|
+
callback === null || callback === void 0 ? void 0 : callback();
|
|
54
|
+
}).catch((e) => {
|
|
55
|
+
callback === null || callback === void 0 ? void 0 : callback(e);
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.default = DFWSessionStore;
|
|
60
|
+
//# sourceMappingURL=DFWSessionStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DFWSessionStore.js","sourceRoot":"","sources":["../../src/lib/DFWSessionStore.ts"],"names":[],"mappings":";;AAAA,qDAAwC;AAIxC,MAAM,eAAgB,SAAQ,uBAAK;IAI/B,YAAY,GAAY;QACpB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAA;IACpB,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAA2C;QACxD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAA;QAC9E,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC;YAC3B,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;YACxB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;SACrB,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;YACnB,IAAI,UAAU,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,EAAS,EAAE,CAAC,CAAA;YACxF,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACxB,CAAC;QACL,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,QAAQ,CAAC,CAAC,CAAC,CAAA;QACf,CAAC,CAAC,CAAA;IACN,CAAC;IACD,GAAG,CAAC,GAAW,EAAE,WAAgB,EAAE,QAA8B;;QAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAChH,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;YACvB,MAAM,EAAE;gBACJ,EAAE,EAAE,GAAG;gBACP,MAAM,EAAE,MAAA,WAAW,CAAC,QAAQ,0CAAE,IAAI;aACrC;YACD,MAAM,EAAE;gBACJ,MAAM,EAAE,MAAA,WAAW,CAAC,QAAQ,0CAAE,IAAI;aACrC;YACD,KAAK,EAAE;gBACH,EAAE,EAAE,GAAG;aACV;SACJ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACT,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,EAAI,CAAA;QAChB,CAAC,CAAC,CAAA;IACN,CAAC;IACD,OAAO,CAAC,GAAW,EAAE,QAA8B;QAC/C,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAA;QAClF,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC;YAC3B,KAAK,EAAE;gBACH,EAAE,EAAE,GAAG;aACV;SACJ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACT,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,EAAI,CAAA;QAChB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,CAAC,CAAC,CAAA;QACjB,CAAC,CAAC,CAAA;IACN,CAAC;CACJ;AAED,kBAAe,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../src/lib/SessionManager.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,IAAI,CAAA;AAOxB,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,OAAO;CAG3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionManager.js","sourceRoot":"","sources":["../../src/lib/SessionManager.ts"],"names":[],"mappings":";;AAOA,MAAqB,cAAc;IAG/B,YAAY,GAAY;QACpB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAClB,CAAC;CACJ;AAND,iCAMC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DFWPassportStrategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/DFWPassportStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,QAAA,MAAM,mBAAmB,UAavB,CAAA;AAEF,eAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
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 passport_local_1 = require("passport-local");
|
|
16
|
+
const DFWUserController_1 = __importDefault(require("../../controller/DFWUserController"));
|
|
17
|
+
const DFWPassportStrategy = new passport_local_1.Strategy((identifier, password, done) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
|
+
try {
|
|
19
|
+
const UserControl = new DFWUserController_1.default();
|
|
20
|
+
const id = yield UserControl.validateUserPasswordAsync(identifier, password);
|
|
21
|
+
if (id) {
|
|
22
|
+
return done(null, { id });
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return done('ACCESS_DENIED');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
catch (e) {
|
|
29
|
+
return done(e);
|
|
30
|
+
}
|
|
31
|
+
}));
|
|
32
|
+
exports.default = DFWPassportStrategy;
|
|
33
|
+
//# sourceMappingURL=DFWPassportStrategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DFWPassportStrategy.js","sourceRoot":"","sources":["../../../src/lib/strategies/DFWPassportStrategy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,mDAAyC;AACzC,2FAAkE;AAElE,MAAM,mBAAmB,GAAG,IAAI,yBAAQ,CAAC,CAAO,UAAkB,EAAE,QAAa,EAAE,IAAI,EAAE,EAAE;IACvF,IAAI,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,2BAAiB,EAAE,CAAA;QAC3C,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAE5E,IAAI,EAAE,EAAE,CAAC;YACL,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QAC7B,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC,eAAe,CAAC,CAAA;QAChC,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;IAClB,CAAC;AACL,CAAC,CAAA,CAAC,CAAA;AAEF,kBAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DELETEListener.d.ts","sourceRoot":"","sources":["../../src/listeners/DELETEListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,QAAA,MAAM,cAAc,EAAE,CAAC,EAAE,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,WAQ9E,CAAA;AAED,eAAe,cAAc,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const DELETEListener = (fn, params) => {
|
|
4
|
+
return {
|
|
5
|
+
listener: fn,
|
|
6
|
+
params: Object.assign(Object.assign({}, params), { method: 'delete' })
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
exports.default = DELETEListener;
|
|
10
|
+
//# sourceMappingURL=DELETEListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DELETEListener.js","sourceRoot":"","sources":["../../src/listeners/DELETEListener.ts"],"names":[],"mappings":";;AAEA,MAAM,cAAc,GAAyE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;IACxG,OAAO;QACH,QAAQ,EAAE,EAAE;QACZ,MAAM,kCACC,MAAM,KACT,MAAM,EAAE,QAAQ,GACnB;KACJ,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GETListener.d.ts","sourceRoot":"","sources":["../../src/listeners/GETListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,QAAA,MAAM,WAAW,EAAE,CAAC,EAAE,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,WAQ3E,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const GETListener = (fn, params) => {
|
|
4
|
+
return {
|
|
5
|
+
listener: fn,
|
|
6
|
+
params: Object.assign(Object.assign({}, params), { method: 'get' })
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
exports.default = GETListener;
|
|
10
|
+
//# sourceMappingURL=GETListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GETListener.js","sourceRoot":"","sources":["../../src/listeners/GETListener.ts"],"names":[],"mappings":";;AAEA,MAAM,WAAW,GAAyE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;IACrG,OAAO;QACH,QAAQ,EAAE,EAAE;QACZ,MAAM,kCACC,MAAM,KACT,MAAM,EAAE,KAAK,GAChB;KACJ,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PATCHListener.d.ts","sourceRoot":"","sources":["../../src/listeners/PATCHListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,QAAA,MAAM,aAAa,EAAE,CAAC,EAAE,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,WAQ7E,CAAA;AAED,eAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const PATCHListener = (fn, params) => {
|
|
4
|
+
return {
|
|
5
|
+
listener: fn,
|
|
6
|
+
params: Object.assign(Object.assign({}, params), { method: 'patch' })
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
exports.default = PATCHListener;
|
|
10
|
+
//# sourceMappingURL=PATCHListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PATCHListener.js","sourceRoot":"","sources":["../../src/listeners/PATCHListener.ts"],"names":[],"mappings":";;AAEA,MAAM,aAAa,GAAyE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;IACvG,OAAO;QACH,QAAQ,EAAE,EAAE;QACZ,MAAM,kCACC,MAAM,KACT,MAAM,EAAE,OAAO,GAClB;KACJ,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"POSTListener.d.ts","sourceRoot":"","sources":["../../src/listeners/POSTListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,QAAA,MAAM,YAAY,EAAE,CAAC,EAAE,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,WAQ5E,CAAA;AAED,eAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const POSTListener = (fn, params) => {
|
|
4
|
+
return {
|
|
5
|
+
listener: fn,
|
|
6
|
+
params: Object.assign(Object.assign({}, params), { method: 'post' })
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
exports.default = POSTListener;
|
|
10
|
+
//# sourceMappingURL=POSTListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"POSTListener.js","sourceRoot":"","sources":["../../src/listeners/POSTListener.ts"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAyE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;IACtG,OAAO;QACH,QAAQ,EAAE,EAAE;QACZ,MAAM,kCACC,MAAM,KACT,MAAM,EAAE,MAAM,GACjB;KACJ,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PUTListener.d.ts","sourceRoot":"","sources":["../../src/listeners/PUTListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,QAAA,MAAM,WAAW,EAAE,CAAC,EAAE,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,WAQ3E,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const PUTListener = (fn, params) => {
|
|
4
|
+
return {
|
|
5
|
+
listener: fn,
|
|
6
|
+
params: Object.assign(Object.assign({}, params), { method: 'put' })
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
exports.default = PUTListener;
|
|
10
|
+
//# sourceMappingURL=PUTListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PUTListener.js","sourceRoot":"","sources":["../../src/listeners/PUTListener.ts"],"names":[],"mappings":";;AAEA,MAAM,WAAW,GAAyE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;IACrG,OAAO;QACH,QAAQ,EAAE,EAAE;QACZ,MAAM,kCACC,MAAM,KACT,MAAM,EAAE,KAAK,GAChB;KACJ,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { RequestHandler } from "express";
|
|
2
|
+
import { APIListener, APIMethod } from "../types/APIListener";
|
|
3
|
+
declare const RawListener: (method: APIMethod, ...middleware: RequestHandler[]) => APIListener;
|
|
4
|
+
export default RawListener;
|
|
5
|
+
//# sourceMappingURL=RawListener.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RawListener.d.ts","sourceRoot":"","sources":["../../src/listeners/RawListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE9D,QAAA,MAAM,WAAW,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,cAAc,EAAE,KAAK,WAQ1E,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const RawListener = (method, ...middleware) => {
|
|
4
|
+
return {
|
|
5
|
+
params: {
|
|
6
|
+
method,
|
|
7
|
+
raw: true,
|
|
8
|
+
middleware
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
exports.default = RawListener;
|
|
13
|
+
//# sourceMappingURL=RawListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RawListener.js","sourceRoot":"","sources":["../../src/listeners/RawListener.ts"],"names":[],"mappings":";;AAGA,MAAM,WAAW,GAAwE,CAAC,MAAM,EAAE,GAAG,UAAU,EAAE,EAAE;IAC/G,OAAO;QACH,MAAM,EAAE;YACJ,MAAM;YACN,GAAG,EAAE,IAAI;YACT,UAAU;SACb;KACJ,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
|