@adaptivestone/framework 4.6.0 → 4.8.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/CHANGELOG.md +14 -1
- package/Cli.js +1 -0
- package/cluster.js +1 -2
- package/commands/GetOpenApiJson.js +1 -2
- package/commands/SyncIndexes.js +1 -1
- package/commands/migration/Migrate.js +2 -2
- package/controllers/Auth.js +3 -5
- package/controllers/index.js +0 -3
- package/coverage/clover.xml +2035 -1926
- package/coverage/coverage-final.json +43 -40
- package/coverage/framework/config/auth.js.html +6 -6
- package/coverage/framework/config/http.js.html +10 -10
- package/coverage/framework/config/i18n.js.html +13 -13
- package/coverage/framework/config/index.html +1 -1
- package/coverage/framework/config/log.js.html +23 -23
- package/coverage/framework/config/mail.js.html +30 -30
- package/coverage/framework/config/mongo.js.html +4 -4
- package/coverage/framework/config/rateLimiter.js.html +17 -17
- package/coverage/framework/config/redis.js.html +5 -5
- package/coverage/framework/config/validate.js.html +4 -4
- package/coverage/framework/controllers/Auth.js.html +97 -103
- package/coverage/framework/controllers/Home.js.html +27 -27
- package/coverage/framework/controllers/index.html +15 -15
- package/coverage/framework/controllers/index.js.html +58 -67
- package/coverage/framework/controllers/test/SomeController.js.html +44 -89
- package/coverage/framework/controllers/test/index.html +17 -17
- package/coverage/framework/helpers/files.js.html +310 -0
- package/coverage/framework/helpers/index.html +131 -0
- package/coverage/framework/helpers/logger.js.html +142 -0
- package/coverage/framework/helpers/redis/clearNamespace.js.html +10 -10
- package/coverage/framework/helpers/redis/index.html +1 -1
- package/coverage/framework/index.html +19 -19
- package/coverage/framework/models/Migration.js.html +130 -0
- package/coverage/framework/models/Sequence.js.html +11 -11
- package/coverage/framework/models/User.js.html +130 -130
- package/coverage/framework/models/index.html +20 -5
- package/coverage/framework/modules/AbstractController.js.html +100 -106
- package/coverage/framework/modules/AbstractModel.js.html +58 -58
- package/coverage/framework/modules/Base.js.html +70 -403
- package/coverage/framework/modules/index.html +24 -24
- package/coverage/framework/server.js.html +704 -338
- package/coverage/framework/services/cache/Cache.js.html +96 -81
- package/coverage/framework/services/cache/index.html +19 -19
- package/coverage/framework/services/documentation/DocumentationGenerator.js.html +39 -45
- package/coverage/framework/services/documentation/index.html +11 -11
- package/coverage/framework/services/http/HttpServer.js.html +90 -90
- package/coverage/framework/services/http/index.html +1 -1
- package/coverage/framework/services/http/middleware/AbstractMiddleware.js.html +45 -45
- package/coverage/framework/services/http/middleware/Auth.js.html +19 -19
- package/coverage/framework/services/http/middleware/GetUserByToken.js.html +36 -36
- package/coverage/framework/services/http/middleware/I18n.js.html +67 -67
- package/coverage/framework/services/http/middleware/Pagination.js.html +21 -21
- package/coverage/framework/services/http/middleware/PrepareAppInfo.js.html +5 -5
- package/coverage/framework/services/http/middleware/RateLimiter.js.html +19 -19
- package/coverage/framework/services/http/middleware/RequestLogger.js.html +21 -21
- package/coverage/framework/services/http/middleware/RequestParser.js.html +7 -7
- package/coverage/framework/services/http/middleware/Role.js.html +43 -43
- package/coverage/framework/services/http/middleware/index.html +33 -33
- package/coverage/framework/services/http/middleware/test/CheckFlag.js.html +9 -9
- package/coverage/framework/services/http/middleware/test/index.html +1 -1
- package/coverage/framework/services/messaging/email/index.html +1 -1
- package/coverage/framework/services/messaging/email/index.js.html +67 -67
- package/coverage/framework/services/messaging/index.html +1 -1
- package/coverage/framework/services/messaging/index.js.html +6 -6
- package/coverage/framework/services/validate/ValidateService.js.html +155 -167
- package/coverage/framework/services/validate/drivers/AbstractValidator.js.html +24 -24
- package/coverage/framework/services/validate/drivers/CustomValidator.js.html +14 -14
- package/coverage/framework/services/validate/drivers/YupValidator.js.html +41 -41
- package/coverage/framework/services/validate/drivers/index.html +1 -1
- package/coverage/framework/services/validate/index.html +5 -5
- package/coverage/index.html +91 -76
- package/helpers/files.js +75 -0
- package/helpers/logger.js +19 -0
- package/models/Migration.test.js +19 -0
- package/modules/AbstractController.js +2 -4
- package/modules/Base.js +8 -119
- package/modules/BaseCli.js +0 -4
- package/package.json +2 -2
- package/server.d.ts +14 -1
- package/server.js +208 -86
- package/services/cache/Cache.js +10 -5
- package/services/cache/Cache.test.js +81 -0
- package/services/documentation/DocumentationGenerator.js +18 -20
- package/services/http/middleware/Auth.test.js +57 -0
- package/services/http/middleware/I18n.test.js +15 -3
- package/services/http/middleware/PrepareAppInfo.test.js +1 -1
- package/services/http/middleware/Role.test.js +93 -0
- package/services/validate/ValidateService.js +3 -7
- package/tests/setup.js +1 -0
- package/tests/setupVitest.js +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,23 @@
|
|
|
1
|
+
### 4.8.0
|
|
2
|
+
|
|
3
|
+
[BREAKING] Minimum node js version id 18.17.0 now.
|
|
4
|
+
[BREAKING] Removed getFileWithExtendingInhirence. This was internal method and not suppose to use externally
|
|
5
|
+
[UPDATE] update Base getFilesPathWithInheritance to use fs.read dir resursive option
|
|
6
|
+
[UPDATE] update cache (refactor+tets)
|
|
7
|
+
[UPDATE] update config and model inits
|
|
8
|
+
|
|
9
|
+
### 4.7.0
|
|
10
|
+
|
|
11
|
+
[UPDATE] update logger init (refactor)
|
|
12
|
+
[UPDATE] updated deps
|
|
13
|
+
|
|
1
14
|
### 4.6.0
|
|
2
15
|
|
|
3
16
|
[NEW] migrated from JEST to vitest
|
|
4
17
|
|
|
5
18
|
### 4.5.0
|
|
6
19
|
|
|
7
|
-
[NEW] Now getSuper() available as a method on
|
|
20
|
+
[NEW] Now getSuper() available as a method on mongoose models
|
|
8
21
|
[UPDATE] Update rate-limiter-flexible to v3
|
|
9
22
|
[UPDATE] Update test runner to suport ESM. In case problem with test please copy babel.config.js from framework to your project directory
|
|
10
23
|
|
package/Cli.js
CHANGED
package/cluster.js
CHANGED
|
@@ -13,8 +13,7 @@ class GetOpenApiJson extends AbstractCommand {
|
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
try {
|
|
16
|
-
|
|
17
|
-
jsonFile = require(jsonFile);
|
|
16
|
+
jsonFile = JSON.parse(await fs.readFile(jsonFile, 'utf8'));
|
|
18
17
|
} catch (e) {
|
|
19
18
|
this.logger.error(
|
|
20
19
|
'No npm package detected. Please start this command via NPM as it depends on package.json',
|
package/commands/SyncIndexes.js
CHANGED
|
@@ -18,7 +18,7 @@ class SyncIndexes extends AbstractCommand {
|
|
|
18
18
|
for (const modelName of models) {
|
|
19
19
|
const Model = this.app.getModel(modelName);
|
|
20
20
|
// eslint-disable-next-line no-await-in-loop
|
|
21
|
-
const removedIndexes = await Model.syncIndexes(); //
|
|
21
|
+
const removedIndexes = await Model.syncIndexes(); // await in loop not a bug. Lets do one by one
|
|
22
22
|
if (removedIndexes.length) {
|
|
23
23
|
this.logger.info(
|
|
24
24
|
`Model - ${modelName} removed indexes: ${removedIndexes}`,
|
|
@@ -31,8 +31,8 @@ class Migrate extends AbstractCommand {
|
|
|
31
31
|
|
|
32
32
|
for (const migration of migrations) {
|
|
33
33
|
this.logger.info(`=== Start migration ${migration.file} ===`);
|
|
34
|
-
// eslint-disable-next-line
|
|
35
|
-
const MigrationCommand =
|
|
34
|
+
// eslint-disable-next-line no-await-in-loop
|
|
35
|
+
const MigrationCommand = await import(migration.path);
|
|
36
36
|
const migrationCommand = new MigrationCommand(this.app);
|
|
37
37
|
// eslint-disable-next-line no-await-in-loop
|
|
38
38
|
await migrationCommand.up();
|
package/controllers/Auth.js
CHANGED
|
@@ -114,7 +114,7 @@ class Auth extends AbstractController {
|
|
|
114
114
|
const { isAuthWithVefificationFlow } = this.app.getConfig('auth');
|
|
115
115
|
if (isAuthWithVefificationFlow) {
|
|
116
116
|
const answer = await user.sendVerificationEmail(req.i18n).catch((e) => {
|
|
117
|
-
this.logger.error(e
|
|
117
|
+
this.logger.error(e);
|
|
118
118
|
});
|
|
119
119
|
if (!answer) {
|
|
120
120
|
return res.status(500).json();
|
|
@@ -165,7 +165,7 @@ class Auth extends AbstractController {
|
|
|
165
165
|
await user.sendPasswordRecoveryEmail(req.i18n);
|
|
166
166
|
return res.status(200).json();
|
|
167
167
|
} catch (e) {
|
|
168
|
-
this.logger.error(e
|
|
168
|
+
this.logger.error(e);
|
|
169
169
|
return res.status(400).json({ message: req.i18n.t('auth.errorUExist') });
|
|
170
170
|
}
|
|
171
171
|
}
|
|
@@ -175,9 +175,7 @@ class Auth extends AbstractController {
|
|
|
175
175
|
const user = await User.getUserByPasswordRecoveryToken(
|
|
176
176
|
req.appInfo.request.passwordRecoveryToken,
|
|
177
177
|
).catch((e) => {
|
|
178
|
-
this.logger.error(e
|
|
179
|
-
// eslint-disable-next-line no-console
|
|
180
|
-
console.log(e);
|
|
178
|
+
this.logger.error(e);
|
|
181
179
|
});
|
|
182
180
|
|
|
183
181
|
if (!user) {
|
package/controllers/index.js
CHANGED
|
@@ -30,11 +30,8 @@ class ControllerManager extends Base {
|
|
|
30
30
|
});
|
|
31
31
|
const controllers = [];
|
|
32
32
|
for (const controller of controllersToLoad) {
|
|
33
|
-
// TODO wait until https://github.com/nodejs/node/issues/35889
|
|
34
33
|
controllers.push(
|
|
35
34
|
import(controller.path).then(({ default: ControllerModule }) => {
|
|
36
|
-
// eslint-disable-next-line import/no-dynamic-require, global-require
|
|
37
|
-
// const ControllerModule = require(controller.path);
|
|
38
35
|
const contollerName = ControllerModule.name.toLowerCase();
|
|
39
36
|
let prefix = path.dirname(controller.file);
|
|
40
37
|
if (prefix === '.') {
|