@adaptivestone/framework 5.0.0-beta.40 → 5.0.0-beta.42
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 +18 -2
- package/dist/controllers/Auth.d.ts +42 -2
- package/dist/controllers/Auth.js.map +1 -1
- package/dist/helpers/redis/redisConnection.d.ts +6 -0
- package/dist/helpers/redis/redisConnection.js +48 -0
- package/dist/helpers/redis/redisConnection.js.map +1 -0
- package/dist/models/User.d.ts +325 -147
- package/dist/models/User.js +4 -1
- package/dist/models/User.js.map +1 -1
- package/dist/models/UserOld.d.ts +7 -6
- package/dist/models/UserOld.js.map +1 -1
- package/dist/modules/AbstractController.d.ts +2 -1
- package/dist/modules/BaseModel.d.ts +3 -1
- package/dist/services/cache/Cache.js +4 -15
- package/dist/services/cache/Cache.js.map +1 -1
- package/dist/services/http/middleware/AbstractMiddleware.d.ts +2 -1
- package/dist/services/http/middleware/AbstractMiddleware.js.map +1 -1
- package/dist/services/http/middleware/GetUserByToken.d.ts +9 -2
- package/dist/services/http/middleware/GetUserByToken.js +8 -0
- package/dist/services/http/middleware/GetUserByToken.js.map +1 -1
- package/dist/services/http/middleware/RateLimiter.js +2 -18
- package/dist/services/http/middleware/RateLimiter.js.map +1 -1
- package/dist/services/logging/SentryTransport.d.ts +1 -2
- package/dist/services/logging/SentryTransport.js +82 -18
- package/dist/services/logging/SentryTransport.js.map +1 -1
- package/dist/tests/testHelpers.d.ts +206 -94
- package/package.json +12 -5
package/CHANGELOG.md
CHANGED
|
@@ -48,13 +48,29 @@ Main feature of that release is full TypeScript support insluding mongoose model
|
|
|
48
48
|
- **[BREAKING]** Minimum node version is 20.12 as for now (`process.loadEnvFile`).
|
|
49
49
|
- **[BREAKING]** ESM only. No more commonJS. That help to fix a lot of bugs with tests and provides better development expirience.
|
|
50
50
|
- **[BREAKING]** Mongoose v8. <https://mongoosejs.com/docs/migrating_to_8.html>.
|
|
51
|
+
- **[BREAKING]** Mongoose v9. <https://mongoosejs.com/docs/migrating_to_9.html>.
|
|
51
52
|
- **[BREAKING]** Vitest v4 <https://vitest.dev/guide/migration.html#vitest-4>
|
|
52
53
|
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
## [5.0.0-beta.42]
|
|
57
|
+
|
|
58
|
+
- **[BREAKING]** Mongoose v9. <https://mongoosejs.com/docs/migrating_to_9.html>.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
## [5.0.0-beta.41]
|
|
62
|
+
|
|
63
|
+
- **[UPDATE]** Update deps
|
|
64
|
+
- **[NEW]** Bearer scheme support
|
|
65
|
+
- **[NEW]** redisConnection helper
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
53
69
|
---
|
|
54
70
|
## [5.0.0-beta.40]
|
|
55
71
|
|
|
56
72
|
- **[UPDATE]** Update `rate-limiter-flexible` to v9.
|
|
57
|
-
- **[UPDATE]** Remove 'winston-transport-sentry' and implementcustom logic based on 'sentry' itself (from v9.14 sentry have
|
|
73
|
+
- **[UPDATE]** Remove 'winston-transport-sentry' and implementcustom logic based on 'sentry' itself (from v9.14 sentry have native winston support)
|
|
58
74
|
|
|
59
75
|
|
|
60
76
|
## [5.0.0-beta.39]
|
|
@@ -533,7 +549,7 @@ Main feature of that release is full TypeScript support insluding mongoose model
|
|
|
533
549
|
|
|
534
550
|
## [4.9.0]
|
|
535
551
|
|
|
536
|
-
- **[BREAKING]** We are separated testsing to setyp and global setup. Global setup now care of mongo to make sure that only on mongodb
|
|
552
|
+
- **[BREAKING]** We are separated testsing to setyp and global setup. Global setup now care of mongo to make sure that only on mongodb memory server is spinned up. If you are using `vitest` please add `"globalSetup": "node_modules/@adaptivestone/framework/tests/globalSetupVitest"` to your vitest config.
|
|
537
553
|
|
|
538
554
|
---
|
|
539
555
|
|
|
@@ -27,6 +27,13 @@ declare class Auth extends AbstractController {
|
|
|
27
27
|
'/register': {
|
|
28
28
|
handler: (req: FrameworkRequest & {
|
|
29
29
|
appInfo: {
|
|
30
|
+
request: {
|
|
31
|
+
email: string;
|
|
32
|
+
password: string;
|
|
33
|
+
firstName?: string;
|
|
34
|
+
lastName?: string;
|
|
35
|
+
nickName?: string;
|
|
36
|
+
};
|
|
30
37
|
i18n: {
|
|
31
38
|
t: TFunction;
|
|
32
39
|
language: string;
|
|
@@ -52,6 +59,9 @@ declare class Auth extends AbstractController {
|
|
|
52
59
|
'/send-recovery-email': {
|
|
53
60
|
handler: (req: FrameworkRequest & {
|
|
54
61
|
appInfo: {
|
|
62
|
+
request: {
|
|
63
|
+
email: string;
|
|
64
|
+
};
|
|
55
65
|
i18n: {
|
|
56
66
|
t: TFunction;
|
|
57
67
|
language: string;
|
|
@@ -65,7 +75,14 @@ declare class Auth extends AbstractController {
|
|
|
65
75
|
}, "">;
|
|
66
76
|
};
|
|
67
77
|
'/recover-password': {
|
|
68
|
-
handler: (req: FrameworkRequest
|
|
78
|
+
handler: (req: FrameworkRequest & {
|
|
79
|
+
appInfo: {
|
|
80
|
+
request: {
|
|
81
|
+
passwordRecoveryToken: string;
|
|
82
|
+
password: string;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
}, res: Response) => Promise<Response<any, Record<string, any>>>;
|
|
69
86
|
request: import("yup").ObjectSchema<{
|
|
70
87
|
password: string;
|
|
71
88
|
passwordRecoveryToken: string;
|
|
@@ -77,6 +94,9 @@ declare class Auth extends AbstractController {
|
|
|
77
94
|
'/send-verification': {
|
|
78
95
|
handler: (req: FrameworkRequest & {
|
|
79
96
|
appInfo: {
|
|
97
|
+
request: {
|
|
98
|
+
email: string;
|
|
99
|
+
};
|
|
80
100
|
i18n: {
|
|
81
101
|
t: TFunction;
|
|
82
102
|
language: string;
|
|
@@ -101,6 +121,13 @@ declare class Auth extends AbstractController {
|
|
|
101
121
|
}, res: Response): Promise<Response<any, Record<string, any>>>;
|
|
102
122
|
postRegister(req: FrameworkRequest & {
|
|
103
123
|
appInfo: {
|
|
124
|
+
request: {
|
|
125
|
+
email: string;
|
|
126
|
+
password: string;
|
|
127
|
+
firstName?: string;
|
|
128
|
+
lastName?: string;
|
|
129
|
+
nickName?: string;
|
|
130
|
+
};
|
|
104
131
|
i18n: {
|
|
105
132
|
t: TFunction;
|
|
106
133
|
language: string;
|
|
@@ -111,15 +138,28 @@ declare class Auth extends AbstractController {
|
|
|
111
138
|
verifyUser(req: FrameworkRequest, res: Response): Promise<Response<any, Record<string, any>>>;
|
|
112
139
|
sendPasswordRecoveryEmail(req: FrameworkRequest & {
|
|
113
140
|
appInfo: {
|
|
141
|
+
request: {
|
|
142
|
+
email: string;
|
|
143
|
+
};
|
|
114
144
|
i18n: {
|
|
115
145
|
t: TFunction;
|
|
116
146
|
language: string;
|
|
117
147
|
};
|
|
118
148
|
};
|
|
119
149
|
}, res: Response): Promise<Response<any, Record<string, any>>>;
|
|
120
|
-
recoverPassword(req: FrameworkRequest
|
|
150
|
+
recoverPassword(req: FrameworkRequest & {
|
|
151
|
+
appInfo: {
|
|
152
|
+
request: {
|
|
153
|
+
passwordRecoveryToken: string;
|
|
154
|
+
password: string;
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
}, res: Response): Promise<Response<any, Record<string, any>>>;
|
|
121
158
|
sendVerification(req: FrameworkRequest & {
|
|
122
159
|
appInfo: {
|
|
160
|
+
request: {
|
|
161
|
+
email: string;
|
|
162
|
+
};
|
|
123
163
|
i18n: {
|
|
124
164
|
t: TFunction;
|
|
125
165
|
language: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Auth.js","sourceRoot":"","sources":["../../src/controllers/Auth.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Auth.js","sourceRoot":"","sources":["../../src/controllers/Auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { RedisClientType } from '@redis/client';
|
|
2
|
+
export declare const getRedisClient: () => Promise<RedisClientType>;
|
|
3
|
+
/**
|
|
4
|
+
* Synchronous way to get redis client. Make sure to call connect on it before usage
|
|
5
|
+
*/
|
|
6
|
+
export declare const getRedisClientSync: () => RedisClientType;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { createClient } from '@redis/client';
|
|
2
|
+
import { appInstance } from "../appInstance.js";
|
|
3
|
+
let redisClient = null;
|
|
4
|
+
export const getRedisClient = async () => {
|
|
5
|
+
if (redisClient) {
|
|
6
|
+
return redisClient;
|
|
7
|
+
}
|
|
8
|
+
const redisClientLocal = createNewRedisClient();
|
|
9
|
+
await redisClientLocal.connect();
|
|
10
|
+
return redisClientLocal;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Synchronous way to get redis client. Make sure to call connect on it before usage
|
|
14
|
+
*/
|
|
15
|
+
export const getRedisClientSync = () => {
|
|
16
|
+
if (redisClient) {
|
|
17
|
+
return redisClient;
|
|
18
|
+
}
|
|
19
|
+
const redisClientLocal = createNewRedisClient();
|
|
20
|
+
// to make sure connection is established
|
|
21
|
+
(async () => {
|
|
22
|
+
await redisClientLocal.connect();
|
|
23
|
+
})();
|
|
24
|
+
return redisClientLocal;
|
|
25
|
+
};
|
|
26
|
+
const createNewRedisClient = () => {
|
|
27
|
+
if (redisClient) {
|
|
28
|
+
return redisClient;
|
|
29
|
+
}
|
|
30
|
+
const redisConfig = appInstance.getConfig('redis');
|
|
31
|
+
redisClient = createClient({
|
|
32
|
+
url: redisConfig.url,
|
|
33
|
+
});
|
|
34
|
+
redisClient.on('error', (error, b, c) => {
|
|
35
|
+
appInstance.logger?.error('Redis Client Error', error, b, c);
|
|
36
|
+
});
|
|
37
|
+
redisClient.on('connect', () => {
|
|
38
|
+
appInstance.logger?.info('Redis connection established');
|
|
39
|
+
});
|
|
40
|
+
appInstance.events.on('shutdown', async () => {
|
|
41
|
+
if (redisClient) {
|
|
42
|
+
await redisClient.quit();
|
|
43
|
+
redisClient = null;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
return redisClient;
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=redisConnection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redisConnection.js","sourceRoot":"","sources":["../../../src/helpers/redis/redisConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,IAAI,WAAW,GAA2B,IAAI,CAAC;AAE/C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,IAA8B,EAAE;IACjE,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,MAAM,gBAAgB,GAAG,oBAAoB,EAAE,CAAC;IAChD,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAEjC,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAoB,EAAE;IACtD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,MAAM,gBAAgB,GAAG,oBAAoB,EAAE,CAAC;IAChD,yCAAyC;IACzC,CAAC,KAAK,IAAI,EAAE;QACV,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACnC,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAoB,EAAE;IACjD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,CAEhD,CAAC;IAEF,WAAW,GAAG,YAAY,CAAC;QACzB,GAAG,EAAE,WAAW,CAAC,GAAG;KACrB,CAAC,CAAC;IAEH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QAC7B,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QAC3C,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;YACzB,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC"}
|