@volcanicminds/backend 0.2.44 → 0.3.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/README.md +13 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/api/auth/controller/auth.js +15 -14
- package/dist/lib/api/auth/controller/auth.js.map +1 -1
- package/dist/lib/loader/hooks.js +2 -1
- package/dist/lib/loader/hooks.js.map +1 -1
- package/dist/lib/loader/plugins.js +2 -1
- package/dist/lib/loader/plugins.js.map +1 -1
- package/dist/lib/loader/roles.js +2 -1
- package/dist/lib/loader/roles.js.map +1 -1
- package/dist/lib/loader/router.js +2 -1
- package/dist/lib/loader/router.js.map +1 -1
- package/dist/lib/loader/schemas.js +2 -1
- package/dist/lib/loader/schemas.js.map +1 -1
- package/dist/lib/util/path.js +12 -0
- package/dist/lib/util/path.js.map +1 -0
- package/index.ts +34 -13
- package/lib/api/auth/controller/auth.ts +76 -13
- package/lib/api/auth/routes.ts +16 -13
- package/lib/config/plugins.ts +35 -2
- package/lib/loader/hooks.ts +3 -1
- package/lib/loader/plugins.ts +2 -1
- package/lib/loader/roles.ts +2 -1
- package/lib/loader/router.ts +2 -1
- package/lib/loader/schemas.ts +3 -1
- package/lib/schemas/auth.ts +36 -0
- package/lib/util/path.ts +8 -0
- package/logo-dark.png +0 -0
- package/nodemon.json +7 -0
- package/package.json +1 -2
- package/types/global.d.ts +2 -0
- package/jest.config.js +0 -188
- package/nodemon.json +0 -15
package/README.md
CHANGED
|
@@ -36,6 +36,10 @@ PORT=2230
|
|
|
36
36
|
JWT_SECRET=yourSecret
|
|
37
37
|
JWT_EXPIRES_IN=5d
|
|
38
38
|
|
|
39
|
+
JWT_REFRESH=true
|
|
40
|
+
JWT_REFRESH_SECRET=yourRefreshSecret
|
|
41
|
+
JWT_REFRESH_EXPIRES_IN=180d
|
|
42
|
+
|
|
39
43
|
# LOG_LEVEL: trace, debug, info, warn, error, fatal
|
|
40
44
|
LOG_LEVEL=info
|
|
41
45
|
LOG_COLORIZE=true
|
|
@@ -134,12 +138,20 @@ const logTimestampReadable = yn(LOG_TIMESTAMP_READABLE, true)
|
|
|
134
138
|
```ruby
|
|
135
139
|
JWT_SECRET=yourSecret
|
|
136
140
|
JWT_EXPIRES_IN=5d
|
|
141
|
+
|
|
142
|
+
JWT_REFRESH=true
|
|
143
|
+
JWT_REFRESH_SECRET=yourRefreshSecret
|
|
144
|
+
JWT_REFRESH_EXPIRES_IN=180d
|
|
137
145
|
```
|
|
138
146
|
|
|
139
|
-
With `reply.jwtSign(
|
|
147
|
+
With `reply.jwtSign(payload)` is possible obtain a fresh JWT token. Each authenticated calls must be recalled specifying in the header:
|
|
140
148
|
|
|
141
149
|
`Authorization: Bearer <generated-token>`
|
|
142
150
|
|
|
151
|
+
With `await reply.server.jwt['refreshToken'].sign(payload)` is possible obtain a new Refresh JWT token.
|
|
152
|
+
|
|
153
|
+
All tokens (authorization and refresh) can be invalidated through the appropriate route.
|
|
154
|
+
|
|
143
155
|
## Swagger
|
|
144
156
|
|
|
145
157
|
In the .env file you can change swagger settings in this way:
|
package/dist/index.js
CHANGED
|
@@ -147,7 +147,7 @@ const start = (decorators) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
147
147
|
const opts = (0, yn_1.default)(process.env.LOG_FASTIFY, false) ? { logger: logger_1.default } : {};
|
|
148
148
|
const fastify = yield (0, fastify_1.default)(opts);
|
|
149
149
|
const { HOST: host = '0.0.0.0', PORT: port = '2230', GRAPHQL } = process.env;
|
|
150
|
-
const { JWT_SECRET = '', JWT_EXPIRES_IN = '15d' } = process.env;
|
|
150
|
+
const { JWT_SECRET = '', JWT_EXPIRES_IN = '15d', JWT_REFRESH_SECRET = '', JWT_REFRESH_EXPIRES_IN = '180d' } = process.env;
|
|
151
151
|
const loadApollo = (0, yn_1.default)(GRAPHQL, false);
|
|
152
152
|
const plugins = loaderPlugins.load();
|
|
153
153
|
!loadApollo && (plugins === null || plugins === void 0 ? void 0 : plugins.helmet) && (yield fastify.register(helmet_1.default));
|
|
@@ -159,6 +159,11 @@ const start = (decorators) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
159
159
|
secret: JWT_SECRET,
|
|
160
160
|
sign: { expiresIn: JWT_EXPIRES_IN }
|
|
161
161
|
});
|
|
162
|
+
yield fastify.register(jwt_1.default, {
|
|
163
|
+
namespace: 'refreshToken',
|
|
164
|
+
secret: JWT_REFRESH_SECRET,
|
|
165
|
+
sign: { expiresIn: JWT_REFRESH_EXPIRES_IN }
|
|
166
|
+
});
|
|
162
167
|
const apollo = loadApollo ? yield attachApollo(fastify) : null;
|
|
163
168
|
yield addFastifySwagger(fastify);
|
|
164
169
|
yield addApolloRouting(fastify, apollo);
|
|
@@ -203,7 +208,7 @@ const start = (decorators) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
203
208
|
forgotPassword(email) {
|
|
204
209
|
throw Error('Not implemented');
|
|
205
210
|
},
|
|
206
|
-
userConfirmation(
|
|
211
|
+
userConfirmation(user) {
|
|
207
212
|
throw Error('Not implemented');
|
|
208
213
|
},
|
|
209
214
|
resetPassword(user, password) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,32 +46,32 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
46
46
|
exports.unblock = exports.block = exports.invalidateTokens = exports.login = exports.resetPassword = exports.confirmEmail = exports.forgotPassword = exports.changePassword = exports.validatePassword = exports.unregister = exports.register = void 0;
|
|
47
47
|
const regExp = __importStar(require("../../../util/regexp"));
|
|
48
48
|
function register(req, reply) {
|
|
49
|
-
var _a, _b;
|
|
49
|
+
var _a, _b, _c;
|
|
50
50
|
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
-
const
|
|
51
|
+
const _d = req.data(), { password1: password, password2 } = _d, data = __rest(_d, ["password1", "password2"]);
|
|
52
52
|
if (!data.username) {
|
|
53
|
-
return reply.status(
|
|
53
|
+
return reply.status(400).send(Error('Username not valid'));
|
|
54
54
|
}
|
|
55
55
|
if (!data.email || !regExp.email.test(data.email)) {
|
|
56
|
-
return reply.status(
|
|
56
|
+
return reply.status(400).send(Error('Email not valid'));
|
|
57
57
|
}
|
|
58
58
|
if (!password || !regExp.password.test(password)) {
|
|
59
|
-
return reply.status(
|
|
59
|
+
return reply.status(400).send(Error('Password not valid'));
|
|
60
60
|
}
|
|
61
61
|
if (!password2 || password2 !== password) {
|
|
62
|
-
return reply.status(
|
|
62
|
+
return reply.status(400).send(Error('Repeated password not match'));
|
|
63
63
|
}
|
|
64
64
|
let existings = yield req.server['userManager'].retrieveUserByEmail(data.email);
|
|
65
65
|
if (existings) {
|
|
66
|
-
return reply.status(
|
|
66
|
+
return reply.status(400).send(Error('Email already registered'));
|
|
67
67
|
}
|
|
68
68
|
if ((data.requiredRoles || []).includes('admin')) {
|
|
69
69
|
existings = yield req.server['userManager'].findQuery({ 'roles:in': 'admin' });
|
|
70
|
-
if (existings) {
|
|
71
|
-
return reply.status(
|
|
70
|
+
if ((_a = existings === null || existings === void 0 ? void 0 : existings.records) === null || _a === void 0 ? void 0 : _a.length) {
|
|
71
|
+
return reply.status(400).send(Error('User admin already registered'));
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
|
-
const publicRole = ((
|
|
74
|
+
const publicRole = ((_c = (_b = global.roles) === null || _b === void 0 ? void 0 : _b.public) === null || _c === void 0 ? void 0 : _c.code) || 'public';
|
|
75
75
|
data.roles = (data.requiredRoles || []).map((r) => { var _a; return (_a = global.roles[r]) === null || _a === void 0 ? void 0 : _a.code; }).filter((r) => !!r);
|
|
76
76
|
if (!data.roles.includes(publicRole)) {
|
|
77
77
|
data.roles.push(publicRole);
|
|
@@ -215,10 +215,10 @@ function login(req, reply) {
|
|
|
215
215
|
return __awaiter(this, void 0, void 0, function* () {
|
|
216
216
|
const { email, password } = req.data();
|
|
217
217
|
if (!email || !regExp.email.test(email)) {
|
|
218
|
-
return reply.status(
|
|
218
|
+
return reply.status(400).send(Error('Email not valid'));
|
|
219
219
|
}
|
|
220
220
|
if (!password || !regExp.password.test(password)) {
|
|
221
|
-
return reply.status(
|
|
221
|
+
return reply.status(400).send(Error('Password not valid'));
|
|
222
222
|
}
|
|
223
223
|
const user = yield req.server['userManager'].retrieveUserByPassword(email, password);
|
|
224
224
|
const isValid = yield req.server['userManager'].isValidUser(user);
|
|
@@ -231,8 +231,9 @@ function login(req, reply) {
|
|
|
231
231
|
if (user.blocked) {
|
|
232
232
|
return reply.status(403).send(Error('User blocked'));
|
|
233
233
|
}
|
|
234
|
-
const token =
|
|
235
|
-
|
|
234
|
+
const token = yield reply.jwtSign({ sub: user.externalId });
|
|
235
|
+
const refreshToken = yield reply.server.jwt['refreshToken'].sign({ sub: user.externalId });
|
|
236
|
+
return Object.assign(Object.assign({}, user), { token: token, refreshToken: refreshToken, roles: (user.roles || [((_b = (_a = global.role) === null || _a === void 0 ? void 0 : _a.public) === null || _b === void 0 ? void 0 : _b.code) || 'public']).map((r) => (r === null || r === void 0 ? void 0 : r.code) || r) });
|
|
236
237
|
});
|
|
237
238
|
}
|
|
238
239
|
exports.login = login;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../lib/api/auth/controller/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6DAA8C;AAE9C,SAAsB,QAAQ,CAAC,GAAmB,EAAE,KAAmB;;;QACrE,MAAM,KAA8C,GAAG,CAAC,IAAI,EAAE,EAAxD,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,OAAwB,EAAnB,IAAI,cAAzC,0BAA2C,CAAa,CAAA;QAE9D,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;SAC3D;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACjD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAA;SACxD;QACD,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAChD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;SAC3D;QACD,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,QAAQ,EAAE;YACxC,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAA;SACpE;QAED,IAAI,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/E,IAAI,SAAS,EAAE;YACb,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAA;SACjE;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAChD,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAA;YAC9E,IAAI,SAAS,EAAE;gBACb,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAA;aACtE;SACF;QAGD,MAAM,UAAU,GAAG,CAAA,MAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,0CAAE,IAAI,KAAI,QAAQ,CAAA;QACzD,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA,EAAA,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5F,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YACpC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SAC5B;QAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,UAAU,iCAAM,IAAI,KAAE,QAAQ,EAAE,QAAQ,IAAG,CAAA;QACxF,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAA;SAC5D;QAED,OAAO,IAAI,CAAA;;CACZ;AAzCD,4BAyCC;AAED,SAAsB,UAAU,CAAC,GAAmB,EAAE,KAAmB;;QACvE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAEtC,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QAClF,IAAI,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;SAC1D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;QAED,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QACpE,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE3D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;SACvD;QAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IACrB,CAAC;CAAA;AAtBD,gCAsBC;AAED,SAAsB,gBAAgB,CAAC,GAAmB,EAAE,KAAmB;;QAC7E,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAE/B,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAA;SAChE;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAA;SAC9D;QAED,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IACtB,CAAC;CAAA;AAbD,4CAaC;AAED,SAAsB,cAAc,CAAC,GAAmB,EAAE,KAAmB;;QAC3E,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAErE,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YACxD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;SAClE;QAED,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,YAAY,EAAE;YAClD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAA;SACxE;QAED,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;QACrF,IAAI,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;SAC1D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;QAED,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;QACvF,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC3D,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IACxB,CAAC;CAAA;AAzBD,wCAyBC;AAED,SAAsB,cAAc,CAAC,GAAmB,EAAE,KAAmB;;QAC3E,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAEtC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACjE,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAA;SACxE;QAED,IAAI,IAAI,GAAG,IAAW,CAAA;QACtB,IAAI,KAAK,EAAE;YACT,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;SAClE;aAAM,IAAI,QAAQ,EAAE;YACnB,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;SACxE;QAED,IAAI,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;SAC1D;QAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;YACjB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;QAED,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACjE,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE3D,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IACxB,CAAC;CAAA;AA5BD,wCA4BC;AAED,SAAsB,YAAY,CAAC,GAAmB,EAAE,KAAmB;;QACzE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAE3B,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAA;SACxE;QAED,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAA;QAChF,IAAI,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;SAC1D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;QAED,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAC7D,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE3D,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IACxB,CAAC;CAAA;AAtBD,oCAsBC;AAED,SAAsB,aAAa,CAAC,GAAmB,EAAE,KAAmB;;QAC1E,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAEvD,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YACxD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAA;SAC/D;QAED,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,YAAY,EAAE;YAClD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAA;SACxE;QAED,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAA;QACjF,IAAI,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;SAC1D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;QAED,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;QACxE,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC3D,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC9B,CAAC;CAAA;AAzBD,sCAyBC;AAED,SAAsB,KAAK,CAAC,GAAmB,EAAE,KAAmB;;;QAClE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAEtC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACvC,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAA;SACxD;QACD,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAChD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;SAC3D;QAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QACpF,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAEjE,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAA;SAC1D;QAED,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE;YAC9B,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAA;SAC/D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;QAID,MAAM,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAClF,uCACK,IAAI,KACP,KAAK,EAAE,KAAK,IAAI,IAAI,EACpB,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA,MAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM,0CAAE,IAAI,KAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,KAAI,CAAC,CAAC,IACxF;;CACF;AAjCD,sBAiCC;AAED,SAAsB,gBAAgB,CAAC,GAAmB,EAAE,KAAmB;;QAC7E,IAAI,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACnE,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;YACzB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAA;SACxD;QAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QAC9E,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC3D,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IACxB,CAAC;CAAA;AATD,4CASC;AAED,SAAsB,KAAK,CAAC,GAAmB,EAAE,KAAmB;;QAClE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YAC/D,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAA;SACrH;QAED,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QACvC,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAE7B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC1E,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAA;IAC/B,CAAC;CAAA;AAVD,sBAUC;AAED,SAAsB,OAAO,CAAC,GAAmB,EAAE,KAAmB;;QACpE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YAC/D,OAAO,KAAK;iBACT,MAAM,CAAC,GAAG,CAAC;iBACX,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAA;SACjG;QAED,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QACvC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QACpE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAA;IAC/B,CAAC;CAAA;AAVD,0BAUC"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../lib/api/auth/controller/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/loader/hooks.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.apply = void 0;
|
|
4
|
+
const path_1 = require("../util/path");
|
|
4
5
|
const hooks = [
|
|
5
6
|
'onRequest',
|
|
6
7
|
'onError',
|
|
@@ -19,7 +20,7 @@ const hooks = [
|
|
|
19
20
|
const glob = require('glob');
|
|
20
21
|
const path = require('path');
|
|
21
22
|
function apply(server) {
|
|
22
|
-
const patterns = [
|
|
23
|
+
const patterns = (0, path_1.normalizePatterns)(['..', 'hooks', '*.{ts,js}'], ['src', 'hooks', '*.{ts,js}']);
|
|
23
24
|
const allHooks = hooks.reduce((acc, v) => (Object.assign(Object.assign({}, acc), { [v]: [] })), {});
|
|
24
25
|
patterns.forEach((pattern) => {
|
|
25
26
|
log.t && log.trace('Looking for ' + pattern);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../lib/loader/hooks.ts"],"names":[],"mappings":";;;AAAA,MAAM,KAAK,GAAG;IACZ,WAAW;IACX,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,SAAS;IACT,SAAS;IACT,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,kBAAkB;IAClB,YAAY;CACb,CAAA;AAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,KAAK,CAAC,MAAW;IAC/B,MAAM,QAAQ,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../lib/loader/hooks.ts"],"names":[],"mappings":";;;AAAA,uCAAgD;AAEhD,MAAM,KAAK,GAAG;IACZ,WAAW;IACX,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,SAAS;IACT,SAAS;IACT,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,kBAAkB;IAClB,YAAY;CACb,CAAA;AAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,KAAK,CAAC,MAAW;IAC/B,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;IAC/F,MAAM,QAAQ,GAAQ,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iCAAM,GAAG,KAAE,CAAC,CAAC,CAAC,EAAE,EAAgB,IAAG,EAAE,EAAE,CAAC,CAAA;IAEvF,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAClD,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAErB,IAAI,EAAE,IAAI,IAAI,EAAE;gBACd,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE;oBAC9B,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAgB,CAAA;iBACtC;gBACD,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;aAClD;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACrB,MAAM,GAAG,GAAe,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC1C,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,KAAI,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAA;QACrE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,IAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAc,CAAC,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,KAAI,CAAC,EAAE,CAAC,CAAA;AAC3D,CAAC;AA1BD,sBA0BC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.load = void 0;
|
|
4
|
+
const path_1 = require("../util/path");
|
|
4
5
|
const glob = require('glob');
|
|
5
6
|
function load() {
|
|
6
7
|
const plugins = {};
|
|
7
|
-
const patterns = [
|
|
8
|
+
const patterns = (0, path_1.normalizePatterns)(['..', 'config', 'plugins.{ts,js}'], ['src', 'config', 'plugins.{ts,js}']);
|
|
8
9
|
patterns.forEach((pattern) => {
|
|
9
10
|
log.t && log.trace('Looking for ' + pattern);
|
|
10
11
|
glob.sync(pattern).forEach((f) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../lib/loader/plugins.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../lib/loader/plugins.ts"],"names":[],"mappings":";;;AACA,uCAAgD;AAEhD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,IAAI;IAClB,MAAM,OAAO,GAAQ,EAAE,CAAA;IAEvB,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAA;IAC7G,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YACvC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAChC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC/B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;gBAC7D,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAA;YACzF,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACvE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,mBAAmB,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAClG,OAAO,OAAO,CAAA;AAChB,CAAC;AAjBD,oBAiBC"}
|
package/dist/lib/loader/roles.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.load = void 0;
|
|
4
|
+
const path_1 = require("../util/path");
|
|
4
5
|
const glob = require('glob');
|
|
5
6
|
function load() {
|
|
6
7
|
const roles = {};
|
|
7
|
-
const patterns = [
|
|
8
|
+
const patterns = (0, path_1.normalizePatterns)(['..', 'config', 'roles.{ts,js}'], ['src', 'config', 'roles.{ts,js}']);
|
|
8
9
|
patterns.forEach((pattern) => {
|
|
9
10
|
log.t && log.trace('Looking for ' + pattern);
|
|
10
11
|
glob.sync(pattern).forEach((f) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.js","sourceRoot":"","sources":["../../../lib/loader/roles.ts"],"names":[],"mappings":";;;AACA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,IAAI;IAClB,MAAM,KAAK,GAAU,EAAE,CAAA;IAEvB,MAAM,QAAQ,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"roles.js","sourceRoot":"","sources":["../../../lib/loader/roles.ts"],"names":[],"mappings":";;;AACA,uCAAgD;AAChD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,IAAI;IAClB,MAAM,KAAK,GAAU,EAAE,CAAA;IAEvB,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAA;IACzG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YACvC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAE9B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAU,EAAE,EAAE;gBACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;YACzB,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACpE,OAAO,KAAK,CAAA;AACd,CAAC;AAhBD,oBAgBC"}
|
|
@@ -14,12 +14,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.apply = exports.load = void 0;
|
|
16
16
|
const yn_1 = __importDefault(require("../util/yn"));
|
|
17
|
+
const path_1 = require("../util/path");
|
|
17
18
|
const glob = require('glob');
|
|
18
19
|
const path = require('path');
|
|
19
20
|
const methods = ['GET', 'POST', 'PUT', 'DELETE', 'HEAD', 'PATCH', 'OPTIONS'];
|
|
20
21
|
function load() {
|
|
21
22
|
const validRoutes = [];
|
|
22
|
-
const patterns = [
|
|
23
|
+
const patterns = (0, path_1.normalizePatterns)(['..', 'api', '**', 'routes.{ts,js}'], ['src', 'api', '**', 'routes.{ts,js}']);
|
|
23
24
|
const authMiddlewares = ['global.isAuthenticated', 'global.isAdmin'];
|
|
24
25
|
patterns.forEach((pattern) => {
|
|
25
26
|
log.t && log.trace('Looking for ' + pattern);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../lib/loader/router.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAA2B;
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../lib/loader/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.apply = void 0;
|
|
4
|
+
const path_1 = require("../util/path");
|
|
4
5
|
const glob = require('glob');
|
|
5
6
|
const path = require('path');
|
|
6
7
|
function apply(server) {
|
|
7
|
-
const patterns = [
|
|
8
|
+
const patterns = (0, path_1.normalizePatterns)(['..', 'schemas', '*.{ts,js}'], ['src', 'schemas', '*.{ts,js}']);
|
|
8
9
|
let schemaCount = 0;
|
|
9
10
|
patterns.forEach((pattern) => {
|
|
10
11
|
log.t && log.trace('Looking for ' + pattern);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../lib/loader/schemas.ts"],"names":[],"mappings":";;;AAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,KAAK,CAAC,MAAW;IAC/B,MAAM,QAAQ,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../lib/loader/schemas.ts"],"names":[],"mappings":";;;AAAA,uCAAgD;AAEhD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,SAAgB,KAAK,CAAC,MAAW;IAC/B,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAA;IAEnG,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YACvC,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAE5C,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAChC,IAAI,MAAM,IAAI,IAAI,EAAE;oBAClB,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,EAAE;wBACf,GAAG,CAAC,KAAK,CAAC,aAAa,MAAM,CAAC,GAAG,iBAAiB,cAAc,EAAE,CAAC,CAAA;wBACnE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;wBACxB,WAAW,EAAE,CAAA;qBACd;yBAAM;wBACL,GAAG,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,GAAG,qBAAqB,cAAc,EAAE,CAAC,CAAA;qBACvE;iBACF;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,mBAAmB,WAAW,wBAAwB,CAAC,CAAA;AAC5E,CAAC;AA3BD,sBA2BC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.normalizePatterns = void 0;
|
|
4
|
+
const path = require('path');
|
|
5
|
+
function normalizePatterns(path1, path2) {
|
|
6
|
+
return [
|
|
7
|
+
path.join(__dirname, ...path1).replaceAll('\\', '/'),
|
|
8
|
+
path.join(process.cwd(), ...path2).replaceAll('\\', '/')
|
|
9
|
+
];
|
|
10
|
+
}
|
|
11
|
+
exports.normalizePatterns = normalizePatterns;
|
|
12
|
+
//# sourceMappingURL=path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../../lib/util/path.ts"],"names":[],"mappings":";;;AAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,SAAgB,iBAAiB,CAAC,KAAoB,EAAE,KAAoB;IAE1E,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;KACzD,CAAA;AACH,CAAC;AAND,8CAMC"}
|
package/index.ts
CHANGED
|
@@ -78,6 +78,9 @@ async function addFastifySwagger(fastify: FastifyInstance) {
|
|
|
78
78
|
if (loadSwagger) {
|
|
79
79
|
log.trace('Add swagger plugin')
|
|
80
80
|
|
|
81
|
+
const fs = require('fs')
|
|
82
|
+
const contents = fs.readFileSync('logo-dark.png', { encoding: 'base64' })
|
|
83
|
+
|
|
81
84
|
await fastify.register(swagger, {
|
|
82
85
|
swagger: {
|
|
83
86
|
info: {
|
|
@@ -118,17 +121,14 @@ async function addFastifySwagger(fastify: FastifyInstance) {
|
|
|
118
121
|
docExpansion: 'list',
|
|
119
122
|
deepLinking: true,
|
|
120
123
|
defaultModelsExpandDepth: 1
|
|
124
|
+
},
|
|
125
|
+
logo: {
|
|
126
|
+
type: 'image/png',
|
|
127
|
+
content: Buffer.from(contents, 'base64')
|
|
128
|
+
},
|
|
129
|
+
theme: {
|
|
130
|
+
title: SWAGGER_TITLE
|
|
121
131
|
}
|
|
122
|
-
// uiHooks: {
|
|
123
|
-
// onRequest: function (request, reply, next) {
|
|
124
|
-
// next()
|
|
125
|
-
// },
|
|
126
|
-
// preHandler: function (request, reply, next) {
|
|
127
|
-
// next()
|
|
128
|
-
// }
|
|
129
|
-
// }
|
|
130
|
-
// staticCSP: true,
|
|
131
|
-
// transformStaticCSP: (header) => header
|
|
132
132
|
})
|
|
133
133
|
}
|
|
134
134
|
}
|
|
@@ -142,8 +142,15 @@ const start = async (decorators) => {
|
|
|
142
142
|
const fastify = await Fastify(opts)
|
|
143
143
|
|
|
144
144
|
const { HOST: host = '0.0.0.0', PORT: port = '2230', GRAPHQL } = process.env
|
|
145
|
-
const {
|
|
146
|
-
|
|
145
|
+
const {
|
|
146
|
+
JWT_SECRET = '',
|
|
147
|
+
JWT_EXPIRES_IN = '15d',
|
|
148
|
+
JWT_REFRESH = 'true',
|
|
149
|
+
JWT_REFRESH_SECRET = '',
|
|
150
|
+
JWT_REFRESH_EXPIRES_IN = '180d'
|
|
151
|
+
} = process.env
|
|
152
|
+
|
|
153
|
+
const loadRefreshJWT = yn(JWT_REFRESH, true)
|
|
147
154
|
const loadApollo = yn(GRAPHQL, false)
|
|
148
155
|
const plugins = loaderPlugins.load()
|
|
149
156
|
|
|
@@ -160,6 +167,14 @@ const start = async (decorators) => {
|
|
|
160
167
|
sign: { expiresIn: JWT_EXPIRES_IN }
|
|
161
168
|
})
|
|
162
169
|
|
|
170
|
+
if (loadRefreshJWT) {
|
|
171
|
+
await fastify.register(jwtValidator, {
|
|
172
|
+
namespace: 'refreshToken',
|
|
173
|
+
secret: JWT_REFRESH_SECRET || JWT_SECRET,
|
|
174
|
+
sign: { expiresIn: JWT_REFRESH_EXPIRES_IN }
|
|
175
|
+
})
|
|
176
|
+
}
|
|
177
|
+
|
|
163
178
|
const apollo = loadApollo ? await attachApollo(fastify) : null
|
|
164
179
|
await addFastifySwagger(fastify)
|
|
165
180
|
await addApolloRouting(fastify, apollo)
|
|
@@ -168,6 +183,9 @@ const start = async (decorators) => {
|
|
|
168
183
|
// defaults
|
|
169
184
|
decorators = {
|
|
170
185
|
userManager: {
|
|
186
|
+
isImplemented() {
|
|
187
|
+
return false
|
|
188
|
+
},
|
|
171
189
|
isValidUser(data: any) {
|
|
172
190
|
throw Error('Not implemented')
|
|
173
191
|
},
|
|
@@ -207,7 +225,7 @@ const start = async (decorators) => {
|
|
|
207
225
|
forgotPassword(email: string) {
|
|
208
226
|
throw Error('Not implemented')
|
|
209
227
|
},
|
|
210
|
-
userConfirmation(
|
|
228
|
+
userConfirmation(user: any) {
|
|
211
229
|
throw Error('Not implemented')
|
|
212
230
|
},
|
|
213
231
|
resetPassword(user: any, password: string) {
|
|
@@ -227,6 +245,9 @@ const start = async (decorators) => {
|
|
|
227
245
|
}
|
|
228
246
|
} as UserManagement,
|
|
229
247
|
tokenManager: {
|
|
248
|
+
isImplemented() {
|
|
249
|
+
return false
|
|
250
|
+
},
|
|
230
251
|
isValidToken(data: any) {
|
|
231
252
|
throw Error('Not implemented')
|
|
232
253
|
},
|
|
@@ -4,28 +4,32 @@ import * as regExp from '../../../util/regexp'
|
|
|
4
4
|
export async function register(req: FastifyRequest, reply: FastifyReply) {
|
|
5
5
|
const { password1: password, password2, ...data } = req.data()
|
|
6
6
|
|
|
7
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
8
|
+
throw Error('Not implemented')
|
|
9
|
+
}
|
|
10
|
+
|
|
7
11
|
if (!data.username) {
|
|
8
|
-
return reply.status(
|
|
12
|
+
return reply.status(400).send(Error('Username not valid'))
|
|
9
13
|
}
|
|
10
14
|
if (!data.email || !regExp.email.test(data.email)) {
|
|
11
|
-
return reply.status(
|
|
15
|
+
return reply.status(400).send(Error('Email not valid'))
|
|
12
16
|
}
|
|
13
17
|
if (!password || !regExp.password.test(password)) {
|
|
14
|
-
return reply.status(
|
|
18
|
+
return reply.status(400).send(Error('Password not valid'))
|
|
15
19
|
}
|
|
16
20
|
if (!password2 || password2 !== password) {
|
|
17
|
-
return reply.status(
|
|
21
|
+
return reply.status(400).send(Error('Repeated password not match'))
|
|
18
22
|
}
|
|
19
23
|
|
|
20
24
|
let existings = await req.server['userManager'].retrieveUserByEmail(data.email)
|
|
21
25
|
if (existings) {
|
|
22
|
-
return reply.status(
|
|
26
|
+
return reply.status(400).send(Error('Email already registered'))
|
|
23
27
|
}
|
|
24
28
|
|
|
25
29
|
if ((data.requiredRoles || []).includes('admin')) {
|
|
26
30
|
existings = await req.server['userManager'].findQuery({ 'roles:in': 'admin' })
|
|
27
|
-
if (existings) {
|
|
28
|
-
return reply.status(
|
|
31
|
+
if (existings?.records?.length) {
|
|
32
|
+
return reply.status(400).send(Error('User admin already registered'))
|
|
29
33
|
}
|
|
30
34
|
}
|
|
31
35
|
|
|
@@ -86,6 +90,10 @@ export async function validatePassword(req: FastifyRequest, reply: FastifyReply)
|
|
|
86
90
|
export async function changePassword(req: FastifyRequest, reply: FastifyReply) {
|
|
87
91
|
const { email, oldPassword, newPassword1, newPassword2 } = req.data()
|
|
88
92
|
|
|
93
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
94
|
+
throw Error('Not implemented')
|
|
95
|
+
}
|
|
96
|
+
|
|
89
97
|
if (!newPassword1 || !regExp.password.test(newPassword1)) {
|
|
90
98
|
return reply.status(400).send(Error('New password is not valid'))
|
|
91
99
|
}
|
|
@@ -113,6 +121,10 @@ export async function changePassword(req: FastifyRequest, reply: FastifyReply) {
|
|
|
113
121
|
export async function forgotPassword(req: FastifyRequest, reply: FastifyReply) {
|
|
114
122
|
const { username, email } = req.data()
|
|
115
123
|
|
|
124
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
125
|
+
throw Error('Not implemented')
|
|
126
|
+
}
|
|
127
|
+
|
|
116
128
|
if (!username && (!email || (email && !regExp.email.test(email)))) {
|
|
117
129
|
return reply.status(400).send(Error('Missing a valid user identifier'))
|
|
118
130
|
}
|
|
@@ -167,6 +179,10 @@ export async function confirmEmail(req: FastifyRequest, reply: FastifyReply) {
|
|
|
167
179
|
export async function resetPassword(req: FastifyRequest, reply: FastifyReply) {
|
|
168
180
|
const { code, newPassword1, newPassword2 } = req.data()
|
|
169
181
|
|
|
182
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
183
|
+
throw Error('Not implemented')
|
|
184
|
+
}
|
|
185
|
+
|
|
170
186
|
if (!newPassword1 || !regExp.password.test(newPassword1)) {
|
|
171
187
|
return reply.status(400).send(Error('New password not valid'))
|
|
172
188
|
}
|
|
@@ -194,15 +210,21 @@ export async function resetPassword(req: FastifyRequest, reply: FastifyReply) {
|
|
|
194
210
|
export async function login(req: FastifyRequest, reply: FastifyReply) {
|
|
195
211
|
const { email, password } = req.data()
|
|
196
212
|
|
|
213
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
214
|
+
throw Error('Not implemented')
|
|
215
|
+
}
|
|
216
|
+
|
|
197
217
|
if (!email || !regExp.email.test(email)) {
|
|
198
|
-
return reply.status(
|
|
218
|
+
return reply.status(400).send(Error('Email not valid'))
|
|
199
219
|
}
|
|
200
220
|
if (!password || !regExp.password.test(password)) {
|
|
201
|
-
return reply.status(
|
|
221
|
+
return reply.status(400).send(Error('Password not valid'))
|
|
202
222
|
}
|
|
203
223
|
|
|
204
224
|
const user = await req.server['userManager'].retrieveUserByPassword(email, password)
|
|
205
225
|
const isValid = await req.server['userManager'].isValidUser(user)
|
|
226
|
+
// const user = { confirmed: true, blocked: false, externalId: 123456, roles: [{ code: 'admin' }] }
|
|
227
|
+
// const isValid = true
|
|
206
228
|
|
|
207
229
|
if (!isValid) {
|
|
208
230
|
return reply.status(403).send(Error('Wrong credentials'))
|
|
@@ -216,13 +238,46 @@ export async function login(req: FastifyRequest, reply: FastifyReply) {
|
|
|
216
238
|
return reply.status(403).send(Error('User blocked'))
|
|
217
239
|
}
|
|
218
240
|
|
|
219
|
-
// log.trace('User: ' + JSON.stringify(user) + ' ' + roles)
|
|
220
241
|
// https://www.iana.org/assignments/jwt/jwt.xhtml
|
|
221
|
-
const token =
|
|
242
|
+
const token = await reply.jwtSign({ sub: user.externalId })
|
|
243
|
+
const refreshToken = reply.server.jwt['refreshToken']
|
|
244
|
+
? await reply.server.jwt['refreshToken'].sign({ sub: user.externalId })
|
|
245
|
+
: undefined
|
|
246
|
+
|
|
222
247
|
return {
|
|
223
248
|
...user,
|
|
224
|
-
|
|
225
|
-
|
|
249
|
+
roles: (user.roles || [global.role?.public?.code || 'public']).map((r) => r?.code || r),
|
|
250
|
+
token: token,
|
|
251
|
+
refreshToken
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
export async function refreshToken(req: FastifyRequest, reply: FastifyReply) {
|
|
256
|
+
const { token, refreshToken } = req.data()
|
|
257
|
+
|
|
258
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
259
|
+
throw Error('Not implemented')
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
const tokenData = (await reply.server.jwt.decode(token)) as any
|
|
263
|
+
const refreshTokenData = await reply.server.jwt['refreshToken'].verify(refreshToken)
|
|
264
|
+
|
|
265
|
+
if (tokenData?.sub && tokenData?.sub !== refreshTokenData?.sub) {
|
|
266
|
+
return reply.status(403).send(Error('Mismatched tokens'))
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
const user = await req.server['userManager'].retrieveUserByExternalId(tokenData?.sub)
|
|
270
|
+
const isValid = await req.server['userManager'].isValidUser(user)
|
|
271
|
+
// const user = { confirmed: true, blocked: false, externalId: 123456, roles: [{ code: 'admin' }] }
|
|
272
|
+
// const isValid = true
|
|
273
|
+
|
|
274
|
+
if (!isValid) {
|
|
275
|
+
return reply.status(403).send(Error('Wrong refresh token'))
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
const newToken = await reply.jwtSign({ sub: user.externalId })
|
|
279
|
+
return {
|
|
280
|
+
token: newToken
|
|
226
281
|
}
|
|
227
282
|
}
|
|
228
283
|
|
|
@@ -238,6 +293,10 @@ export async function invalidateTokens(req: FastifyRequest, reply: FastifyReply)
|
|
|
238
293
|
}
|
|
239
294
|
|
|
240
295
|
export async function block(req: FastifyRequest, reply: FastifyReply) {
|
|
296
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
297
|
+
throw Error('Not implemented')
|
|
298
|
+
}
|
|
299
|
+
|
|
241
300
|
if (!req.hasRole(roles.admin) && !req.hasRole(roles.backoffice)) {
|
|
242
301
|
return reply.status(403).send({ statusCode: 403, code: 'ROLE_NOT_ALLOWED', message: 'Not allowed to block a user' })
|
|
243
302
|
}
|
|
@@ -250,6 +309,10 @@ export async function block(req: FastifyRequest, reply: FastifyReply) {
|
|
|
250
309
|
}
|
|
251
310
|
|
|
252
311
|
export async function unblock(req: FastifyRequest, reply: FastifyReply) {
|
|
312
|
+
if (!req.server['userManager'].isImplemented()) {
|
|
313
|
+
throw Error('Not implemented')
|
|
314
|
+
}
|
|
315
|
+
|
|
253
316
|
if (!req.hasRole(roles.admin) && !req.hasRole(roles.backoffice)) {
|
|
254
317
|
return reply
|
|
255
318
|
.status(403)
|
package/lib/api/auth/routes.ts
CHANGED
|
@@ -125,19 +125,22 @@ module.exports = {
|
|
|
125
125
|
description: 'Basic login authentication',
|
|
126
126
|
body: { $ref: 'authLoginBodySchema#' },
|
|
127
127
|
response: {
|
|
128
|
-
200: {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
128
|
+
200: { $ref: 'authLoginResponseSchema#' }
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
method: 'POST',
|
|
134
|
+
path: '/refresh-token',
|
|
135
|
+
roles: [],
|
|
136
|
+
handler: 'auth.refreshToken',
|
|
137
|
+
middlewares: [],
|
|
138
|
+
config: {
|
|
139
|
+
title: 'Refresh authentication token',
|
|
140
|
+
description: 'Refresh login authentication token',
|
|
141
|
+
body: { $ref: 'authRefreshTokenBodySchema#' },
|
|
142
|
+
response: {
|
|
143
|
+
200: { $ref: 'authRefreshTokenResponseSchema#' }
|
|
141
144
|
}
|
|
142
145
|
}
|
|
143
146
|
},
|
package/lib/config/plugins.ts
CHANGED
|
@@ -3,8 +3,41 @@
|
|
|
3
3
|
module.exports = [
|
|
4
4
|
{
|
|
5
5
|
name: 'cors',
|
|
6
|
-
enable:
|
|
7
|
-
options: {
|
|
6
|
+
enable: true,
|
|
7
|
+
options: {
|
|
8
|
+
origin: '*',
|
|
9
|
+
methods: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS', 'HEAD'],
|
|
10
|
+
maxAge: 31536000,
|
|
11
|
+
credentials: true,
|
|
12
|
+
allowedHeaders: [
|
|
13
|
+
'Accept',
|
|
14
|
+
'Accept-Language',
|
|
15
|
+
'Content-Language',
|
|
16
|
+
'Content-Type',
|
|
17
|
+
'Content-Length',
|
|
18
|
+
'Authorization',
|
|
19
|
+
'Origin',
|
|
20
|
+
'v-total',
|
|
21
|
+
'v-count',
|
|
22
|
+
'v-page',
|
|
23
|
+
'v-pageSize',
|
|
24
|
+
'v-pageCount'
|
|
25
|
+
],
|
|
26
|
+
exposedHeaders: [
|
|
27
|
+
'Accept',
|
|
28
|
+
'Accept-Language',
|
|
29
|
+
'Content-Language',
|
|
30
|
+
'Content-Type',
|
|
31
|
+
'Content-Length',
|
|
32
|
+
'Authorization',
|
|
33
|
+
'Origin',
|
|
34
|
+
'v-total',
|
|
35
|
+
'v-count',
|
|
36
|
+
'v-page',
|
|
37
|
+
'v-pageSize',
|
|
38
|
+
'v-pageCount'
|
|
39
|
+
]
|
|
40
|
+
}
|
|
8
41
|
},
|
|
9
42
|
{
|
|
10
43
|
name: 'rateLimit',
|
package/lib/loader/hooks.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { normalizePatterns } from '../util/path'
|
|
2
|
+
|
|
1
3
|
const hooks = [
|
|
2
4
|
'onRequest',
|
|
3
5
|
'onError',
|
|
@@ -18,7 +20,7 @@ const glob = require('glob')
|
|
|
18
20
|
const path = require('path')
|
|
19
21
|
|
|
20
22
|
export function apply(server: any): void {
|
|
21
|
-
const patterns = [
|
|
23
|
+
const patterns = normalizePatterns(['..', 'hooks', '*.{ts,js}'], ['src', 'hooks', '*.{ts,js}'])
|
|
22
24
|
const allHooks: any = hooks.reduce((acc, v) => ({ ...acc, [v]: [] as Function[] }), {})
|
|
23
25
|
|
|
24
26
|
patterns.forEach((pattern) => {
|
package/lib/loader/plugins.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { config } from 'dotenv'
|
|
2
|
+
import { normalizePatterns } from '../util/path'
|
|
2
3
|
|
|
3
4
|
const glob = require('glob')
|
|
4
5
|
|
|
5
6
|
export function load() {
|
|
6
7
|
const plugins: any = {}
|
|
7
8
|
|
|
8
|
-
const patterns = [
|
|
9
|
+
const patterns = normalizePatterns(['..', 'config', 'plugins.{ts,js}'], ['src', 'config', 'plugins.{ts,js}'])
|
|
9
10
|
patterns.forEach((pattern) => {
|
|
10
11
|
log.t && log.trace('Looking for ' + pattern)
|
|
11
12
|
glob.sync(pattern).forEach((f: string) => {
|
package/lib/loader/roles.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Role, Roles } from '../../types/global'
|
|
2
|
+
import { normalizePatterns } from '../util/path'
|
|
2
3
|
const glob = require('glob')
|
|
3
4
|
|
|
4
5
|
export function load() {
|
|
5
6
|
const roles: Roles = {}
|
|
6
7
|
|
|
7
|
-
const patterns = [
|
|
8
|
+
const patterns = normalizePatterns(['..', 'config', 'roles.{ts,js}'], ['src', 'config', 'roles.{ts,js}'])
|
|
8
9
|
patterns.forEach((pattern) => {
|
|
9
10
|
log.t && log.trace('Looking for ' + pattern)
|
|
10
11
|
glob.sync(pattern).forEach((f: string) => {
|
package/lib/loader/router.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import yn from '../util/yn'
|
|
2
2
|
import { Route, ConfiguredRoute, RouteConfig } from '../../types/global'
|
|
3
3
|
import { FastifyReply, FastifyRequest } from 'fastify'
|
|
4
|
+
import { normalizePatterns } from '../util/path'
|
|
4
5
|
|
|
5
6
|
const glob = require('glob')
|
|
6
7
|
const path = require('path')
|
|
@@ -8,7 +9,7 @@ const methods = ['GET', 'POST', 'PUT', 'DELETE', 'HEAD', 'PATCH', 'OPTIONS']
|
|
|
8
9
|
|
|
9
10
|
export function load(): ConfiguredRoute[] {
|
|
10
11
|
const validRoutes: ConfiguredRoute[] = []
|
|
11
|
-
const patterns = [
|
|
12
|
+
const patterns = normalizePatterns(['..', 'api', '**', 'routes.{ts,js}'], ['src', 'api', '**', 'routes.{ts,js}'])
|
|
12
13
|
const authMiddlewares = ['global.isAuthenticated', 'global.isAdmin']
|
|
13
14
|
|
|
14
15
|
patterns.forEach((pattern) => {
|
package/lib/loader/schemas.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { normalizePatterns } from '../util/path'
|
|
2
|
+
|
|
1
3
|
const glob = require('glob')
|
|
2
4
|
const path = require('path')
|
|
3
5
|
|
|
4
6
|
export function apply(server: any): void {
|
|
5
|
-
const patterns = [
|
|
7
|
+
const patterns = normalizePatterns(['..', 'schemas', '*.{ts,js}'], ['src', 'schemas', '*.{ts,js}'])
|
|
6
8
|
|
|
7
9
|
let schemaCount = 0
|
|
8
10
|
patterns.forEach((pattern) => {
|
package/lib/schemas/auth.ts
CHANGED
|
@@ -7,6 +7,7 @@ export const authLoginBodySchema = {
|
|
|
7
7
|
password: { type: 'string' }
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
+
|
|
10
11
|
export const authForgotPasswordBodySchema = {
|
|
11
12
|
$id: 'authForgotPasswordBodySchema',
|
|
12
13
|
type: 'object',
|
|
@@ -30,6 +31,41 @@ export const authRegisterBodySchema = {
|
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
33
|
|
|
34
|
+
export const authLoginResponseSchema = {
|
|
35
|
+
$id: 'authLoginResponseSchema',
|
|
36
|
+
type: 'object',
|
|
37
|
+
nullable: true,
|
|
38
|
+
properties: {
|
|
39
|
+
id: { type: 'string' },
|
|
40
|
+
_id: { type: 'string' },
|
|
41
|
+
externalId: { type: 'string' },
|
|
42
|
+
username: { type: 'string' },
|
|
43
|
+
email: { type: 'string' },
|
|
44
|
+
roles: { type: 'array', items: { type: 'string' } },
|
|
45
|
+
token: { type: 'string' },
|
|
46
|
+
refreshToken: { type: 'string' }
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export const authRefreshTokenBodySchema = {
|
|
51
|
+
$id: 'authRefreshTokenBodySchema',
|
|
52
|
+
type: 'object',
|
|
53
|
+
nullable: true,
|
|
54
|
+
properties: {
|
|
55
|
+
token: { type: 'string' },
|
|
56
|
+
refreshToken: { type: 'string' }
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export const authRefreshTokenResponseSchema = {
|
|
61
|
+
$id: 'authRefreshTokenResponseSchema',
|
|
62
|
+
type: 'object',
|
|
63
|
+
nullable: true,
|
|
64
|
+
properties: {
|
|
65
|
+
token: { type: 'string' }
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
33
69
|
export const authRegisterResponseSchema = {
|
|
34
70
|
$id: 'authRegisterResponseSchema',
|
|
35
71
|
type: 'object',
|
package/lib/util/path.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
const path = require('path')
|
|
2
|
+
export function normalizePatterns(path1: Array<string>, path2: Array<string>): Array<string> {
|
|
3
|
+
// replaceAll is needed for windows
|
|
4
|
+
return [
|
|
5
|
+
path.join(__dirname, ...path1).replaceAll('\\', '/'),
|
|
6
|
+
path.join(process.cwd(), ...path2).replaceAll('\\', '/')
|
|
7
|
+
]
|
|
8
|
+
}
|
package/logo-dark.png
ADDED
|
Binary file
|
package/nodemon.json
ADDED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@volcanicminds/backend",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"codename": "turin",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "The volcanic (minds) backend",
|
|
@@ -71,7 +71,6 @@
|
|
|
71
71
|
"semver": "^7.3.8"
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
|
-
"jest": "^29.3.1",
|
|
75
74
|
"nodemon": "^2.0.20",
|
|
76
75
|
"ts-node": "^10.9.1",
|
|
77
76
|
"typescript": "^4.9.3"
|
package/types/global.d.ts
CHANGED
|
@@ -75,6 +75,7 @@ export interface ConfiguredRoute {
|
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
export interface UserManagement {
|
|
78
|
+
isImplemented(): boolean
|
|
78
79
|
isValidUser(data: any): boolean
|
|
79
80
|
createUser(data: any): any | null
|
|
80
81
|
resetExternalId(data: any): any | null
|
|
@@ -97,6 +98,7 @@ export interface UserManagement {
|
|
|
97
98
|
}
|
|
98
99
|
|
|
99
100
|
export interface TokenManagement {
|
|
101
|
+
isImplemented(): boolean
|
|
100
102
|
isValidToken(data: any): boolean
|
|
101
103
|
createToken(data: any): any | null
|
|
102
104
|
resetExternalId(id: string): any | null
|
package/jest.config.js
DELETED
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
// For a detailed explanation regarding each configuration property, visit:
|
|
2
|
-
// https://jestjs.io/docs/en/configuration.html
|
|
3
|
-
|
|
4
|
-
module.exports = {
|
|
5
|
-
// All imported modules in your tests should be mocked automatically
|
|
6
|
-
// automock: false,
|
|
7
|
-
|
|
8
|
-
// Stop running tests after `n` failures
|
|
9
|
-
// bail: 0,
|
|
10
|
-
|
|
11
|
-
// The directory where Jest should store its cached dependency information
|
|
12
|
-
// cacheDirectory: "C:\\Users\\davide\\AppData\\Local\\Temp\\jest",
|
|
13
|
-
|
|
14
|
-
// Automatically clear mock calls and instances between every test
|
|
15
|
-
// clearMocks: false,
|
|
16
|
-
|
|
17
|
-
// Indicates whether the coverage information should be collected while executing the test
|
|
18
|
-
collectCoverage: true,
|
|
19
|
-
|
|
20
|
-
// An array of glob patterns indicating a set of files for which coverage information should be collected
|
|
21
|
-
// collectCoverageFrom: undefined,
|
|
22
|
-
|
|
23
|
-
// The directory where Jest should output its coverage files
|
|
24
|
-
// coverageDirectory: undefined,
|
|
25
|
-
|
|
26
|
-
// An array of regexp pattern strings used to skip coverage collection
|
|
27
|
-
// coveragePathIgnorePatterns: [
|
|
28
|
-
// "\\\\node_modules\\\\"
|
|
29
|
-
// ],
|
|
30
|
-
|
|
31
|
-
// Indicates which provider should be used to instrument code for coverage
|
|
32
|
-
coverageProvider: "v8",
|
|
33
|
-
|
|
34
|
-
// A list of reporter names that Jest uses when writing coverage reports
|
|
35
|
-
// coverageReporters: [
|
|
36
|
-
// "json",
|
|
37
|
-
// "text",
|
|
38
|
-
// "lcov",
|
|
39
|
-
// "clover"
|
|
40
|
-
// ],
|
|
41
|
-
|
|
42
|
-
// An object that configures minimum threshold enforcement for coverage results
|
|
43
|
-
// coverageThreshold: undefined,
|
|
44
|
-
|
|
45
|
-
// A path to a custom dependency extractor
|
|
46
|
-
// dependencyExtractor: undefined,
|
|
47
|
-
|
|
48
|
-
// Make calling deprecated APIs throw helpful error messages
|
|
49
|
-
// errorOnDeprecated: false,
|
|
50
|
-
|
|
51
|
-
// Force coverage collection from ignored files using an array of glob patterns
|
|
52
|
-
// forceCoverageMatch: [],
|
|
53
|
-
|
|
54
|
-
// A path to a module which exports an async function that is triggered once before all test suites
|
|
55
|
-
// globalSetup: undefined,
|
|
56
|
-
|
|
57
|
-
// A path to a module which exports an async function that is triggered once after all test suites
|
|
58
|
-
// globalTeardown: undefined,
|
|
59
|
-
|
|
60
|
-
// A set of global variables that need to be available in all test environments
|
|
61
|
-
// globals: {},
|
|
62
|
-
|
|
63
|
-
// The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers.
|
|
64
|
-
// maxWorkers: "50%",
|
|
65
|
-
|
|
66
|
-
// An array of directory names to be searched recursively up from the requiring module's location
|
|
67
|
-
// moduleDirectories: [
|
|
68
|
-
// "node_modules"
|
|
69
|
-
// ],
|
|
70
|
-
|
|
71
|
-
// An array of file extensions your modules use
|
|
72
|
-
// moduleFileExtensions: [
|
|
73
|
-
// "js",
|
|
74
|
-
// "json",
|
|
75
|
-
// "jsx",
|
|
76
|
-
// "ts",
|
|
77
|
-
// "tsx",
|
|
78
|
-
// "node"
|
|
79
|
-
// ],
|
|
80
|
-
|
|
81
|
-
// A map from regular expressions to module names or to arrays of module names that allow to stub out resources with a single module
|
|
82
|
-
// moduleNameMapper: {},
|
|
83
|
-
|
|
84
|
-
// An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader
|
|
85
|
-
// modulePathIgnorePatterns: [],
|
|
86
|
-
|
|
87
|
-
// Activates notifications for test results
|
|
88
|
-
// notify: false,
|
|
89
|
-
|
|
90
|
-
// An enum that specifies notification mode. Requires { notify: true }
|
|
91
|
-
// notifyMode: "failure-change",
|
|
92
|
-
|
|
93
|
-
// A preset that is used as a base for Jest's configuration
|
|
94
|
-
// preset: undefined,
|
|
95
|
-
|
|
96
|
-
// Run tests from one or more projects
|
|
97
|
-
// projects: undefined,
|
|
98
|
-
|
|
99
|
-
// Use this configuration option to add custom reporters to Jest
|
|
100
|
-
// reporters: undefined,
|
|
101
|
-
|
|
102
|
-
// Automatically reset mock state between every test
|
|
103
|
-
// resetMocks: false,
|
|
104
|
-
|
|
105
|
-
// Reset the module registry before running each individual test
|
|
106
|
-
// resetModules: false,
|
|
107
|
-
|
|
108
|
-
// A path to a custom resolver
|
|
109
|
-
// resolver: undefined,
|
|
110
|
-
|
|
111
|
-
// Automatically restore mock state between every test
|
|
112
|
-
// restoreMocks: false,
|
|
113
|
-
|
|
114
|
-
// The root directory that Jest should scan for tests and modules within
|
|
115
|
-
// rootDir: undefined,
|
|
116
|
-
|
|
117
|
-
// A list of paths to directories that Jest should use to search for files in
|
|
118
|
-
// roots: [
|
|
119
|
-
// "<rootDir>"
|
|
120
|
-
// ],
|
|
121
|
-
|
|
122
|
-
// Allows you to use a custom runner instead of Jest's default test runner
|
|
123
|
-
// runner: "jest-runner",
|
|
124
|
-
|
|
125
|
-
// The paths to modules that run some code to configure or set up the testing environment before each test
|
|
126
|
-
// setupFiles: [],
|
|
127
|
-
|
|
128
|
-
// A list of paths to modules that run some code to configure or set up the testing framework before each test
|
|
129
|
-
// setupFilesAfterEnv: [],
|
|
130
|
-
|
|
131
|
-
// A list of paths to snapshot serializer modules Jest should use for snapshot testing
|
|
132
|
-
// snapshotSerializers: [],
|
|
133
|
-
|
|
134
|
-
// The test environment that will be used for testing
|
|
135
|
-
testEnvironment: "node",
|
|
136
|
-
|
|
137
|
-
// Options that will be passed to the testEnvironment
|
|
138
|
-
// testEnvironmentOptions: {},
|
|
139
|
-
|
|
140
|
-
// Adds a location field to test results
|
|
141
|
-
// testLocationInResults: false,
|
|
142
|
-
|
|
143
|
-
// The glob patterns Jest uses to detect test files
|
|
144
|
-
// testMatch: [
|
|
145
|
-
// "**/__tests__/**/*.[jt]s?(x)",
|
|
146
|
-
// "**/?(*.)+(spec|test).[tj]s?(x)"
|
|
147
|
-
// ],
|
|
148
|
-
|
|
149
|
-
// An array of regexp pattern strings that are matched against all test paths, matched tests are skipped
|
|
150
|
-
// testPathIgnorePatterns: [
|
|
151
|
-
// "\\\\node_modules\\\\"
|
|
152
|
-
// ],
|
|
153
|
-
|
|
154
|
-
// The regexp pattern or array of patterns that Jest uses to detect test files
|
|
155
|
-
// testRegex: [],
|
|
156
|
-
|
|
157
|
-
// This option allows the use of a custom results processor
|
|
158
|
-
// testResultsProcessor: undefined,
|
|
159
|
-
|
|
160
|
-
// This option allows use of a custom test runner
|
|
161
|
-
// testRunner: "jasmine2",
|
|
162
|
-
|
|
163
|
-
// This option sets the URL for the jsdom environment. It is reflected in properties such as location.href
|
|
164
|
-
// testURL: "http://localhost",
|
|
165
|
-
|
|
166
|
-
// Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout"
|
|
167
|
-
// timers: "real",
|
|
168
|
-
|
|
169
|
-
// A map from regular expressions to paths to transformers
|
|
170
|
-
// transform: undefined,
|
|
171
|
-
|
|
172
|
-
// An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation
|
|
173
|
-
// transformIgnorePatterns: [
|
|
174
|
-
// "\\\\node_modules\\\\"
|
|
175
|
-
// ],
|
|
176
|
-
|
|
177
|
-
// An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them
|
|
178
|
-
// unmockedModulePathPatterns: undefined,
|
|
179
|
-
|
|
180
|
-
// Indicates whether each individual test should be reported during the run
|
|
181
|
-
// verbose: undefined,
|
|
182
|
-
|
|
183
|
-
// An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode
|
|
184
|
-
// watchPathIgnorePatterns: [],
|
|
185
|
-
|
|
186
|
-
// Whether to use watchman for file crawling
|
|
187
|
-
// watchman: true,
|
|
188
|
-
};
|