@adaptivestone/framework 5.0.0-beta.17 → 5.0.0-beta.18

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.
Files changed (41) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/dist/commands/GenerateTypes.d.ts +2 -2
  3. package/dist/commands/GenerateTypes.js +22 -8
  4. package/dist/commands/GenerateTypes.js.map +1 -1
  5. package/dist/helpers/appInstance.d.ts +3 -0
  6. package/dist/helpers/appInstance.js +8 -0
  7. package/dist/helpers/appInstance.js.map +1 -0
  8. package/dist/helpers/crypto.d.ts +3 -0
  9. package/dist/helpers/crypto.js +14 -0
  10. package/dist/helpers/crypto.js.map +1 -0
  11. package/dist/helpers/redis/clearNamespace.d.ts +1 -2
  12. package/dist/helpers/redis/clearNamespace.js +2 -3
  13. package/dist/helpers/redis/clearNamespace.js.map +1 -1
  14. package/dist/models/Lock.d.ts +84 -57
  15. package/dist/models/Lock.js +87 -82
  16. package/dist/models/Lock.js.map +1 -1
  17. package/dist/models/Migration.d.ts +6 -9
  18. package/dist/models/Migration.js +3 -4
  19. package/dist/models/Migration.js.map +1 -1
  20. package/dist/models/Sequence.d.ts +22 -18
  21. package/dist/models/Sequence.js +24 -7
  22. package/dist/models/Sequence.js.map +1 -1
  23. package/dist/models/User.d.ts +2347 -153
  24. package/dist/models/User.js +203 -173
  25. package/dist/models/User.js.map +1 -1
  26. package/dist/models/UserOld.d.ts +179 -0
  27. package/dist/models/UserOld.js +230 -0
  28. package/dist/models/UserOld.js.map +1 -0
  29. package/dist/modules/AbstractModel.d.ts +1 -1
  30. package/dist/modules/AbstractModel.js +1 -31
  31. package/dist/modules/AbstractModel.js.map +1 -1
  32. package/dist/modules/BaseModel.d.ts +49 -0
  33. package/dist/modules/BaseModel.js +31 -0
  34. package/dist/modules/BaseModel.js.map +1 -0
  35. package/dist/server.d.ts +5 -3
  36. package/dist/server.js +44 -3
  37. package/dist/server.js.map +1 -1
  38. package/dist/tests/setupVitest.js +1 -1
  39. package/dist/tests/setupVitest.js.map +1 -1
  40. package/genTypes.d.ts +3 -2
  41. package/package.json +1 -1
@@ -0,0 +1,230 @@
1
+ import AbstractModel from "../modules/AbstractModel.js";
2
+ import { appInstance } from "../helpers/appInstance.js";
3
+ import { scryptAsync } from "../helpers/crypto.js";
4
+ /**
5
+ * @deprecated use User Model instead of UserOld
6
+ */
7
+ class UserOld extends AbstractModel {
8
+ constructor(app) {
9
+ console.warn('UserOld model is deprecated. Please use User Model instead of UserOld');
10
+ super(app);
11
+ }
12
+ initHooks() {
13
+ this.mongooseSchema.pre('save', async function userPreSaveHook() {
14
+ if (this.isModified('password')) {
15
+ // @ts-ignore
16
+ this.password = await this.constructor.hashPassword(this.password);
17
+ }
18
+ });
19
+ }
20
+ // eslint-disable-next-line class-methods-use-this
21
+ get modelSchema() {
22
+ return {
23
+ avatar: {
24
+ type: String,
25
+ maxlength: 255,
26
+ },
27
+ name: {
28
+ first: {
29
+ type: String,
30
+ maxlength: 255,
31
+ },
32
+ last: {
33
+ type: String,
34
+ maxlength: 255,
35
+ },
36
+ nick: {
37
+ minlength: 3,
38
+ maxlength: 255,
39
+ type: String,
40
+ index: {
41
+ unique: true,
42
+ partialFilterExpression: { 'name.nick': { $type: 'string' } },
43
+ },
44
+ },
45
+ },
46
+ password: String,
47
+ email: {
48
+ type: String,
49
+ maxlength: 255,
50
+ index: {
51
+ unique: true,
52
+ partialFilterExpression: { email: { $type: 'string' } },
53
+ },
54
+ },
55
+ sessionTokens: [{ token: String, valid: Date }],
56
+ verificationTokens: [{ until: Date, token: String }],
57
+ passwordRecoveryTokens: [{ until: Date, token: String }],
58
+ permissions: [],
59
+ roles: [],
60
+ isVerified: { type: Boolean, default: false },
61
+ locale: { type: String, default: 'en' },
62
+ languages: [String],
63
+ };
64
+ }
65
+ static async getUserByEmailAndPassword(email, password) {
66
+ const data = await this.findOne({ email: String(email) });
67
+ if (!data) {
68
+ return false;
69
+ }
70
+ const hashedPasswords = await this.hashPassword(password);
71
+ if (data.password !== hashedPasswords) {
72
+ return false;
73
+ }
74
+ return data;
75
+ }
76
+ async generateToken() {
77
+ const { saltSecret, hashRounds } = appInstance.getConfig('auth');
78
+ const timestamp = new Date();
79
+ timestamp.setDate(timestamp.getDate() + 30);
80
+ const data = await scryptAsync(this.email + Date.now(), saltSecret, hashRounds);
81
+ const token = data.toString('base64url');
82
+ this.sessionTokens.push({ token, valid: timestamp });
83
+ await this.save();
84
+ return { token, valid: timestamp };
85
+ }
86
+ getPublic() {
87
+ return {
88
+ avatar: this.avatar,
89
+ name: this.name,
90
+ email: this.email,
91
+ id: this.id,
92
+ isVerified: this.isVerified,
93
+ permissions: this.permissions,
94
+ locale: this.locale,
95
+ };
96
+ }
97
+ static async hashPassword(password) {
98
+ const { saltSecret, hashRounds } = appInstance.getConfig('auth');
99
+ const data = await scryptAsync(String(password), saltSecret, hashRounds);
100
+ return data.toString('base64url');
101
+ }
102
+ static async getUserByToken(token) {
103
+ const data = await this.findOne({ 'sessionTokens.token': String(token) });
104
+ return data || false;
105
+ }
106
+ static async getUserByEmail(email) {
107
+ const data = await this.findOne({ email: String(email) });
108
+ if (!data) {
109
+ return false;
110
+ }
111
+ return data;
112
+ }
113
+ static async generateUserPasswordRecoveryToken(userMongoose) {
114
+ const { saltSecret, hashRounds } = appInstance.getConfig('auth');
115
+ const date = new Date();
116
+ date.setDate(date.getDate() + 14);
117
+ const data = await scryptAsync(userMongoose.email + Date.now(), saltSecret, hashRounds);
118
+ const token = data.toString('base64url');
119
+ // if (err) {
120
+ // this.logger.error("Hash 2 error ", err);
121
+ // reject(err);
122
+ // return;
123
+ // }
124
+ userMongoose.passwordRecoveryTokens = [];
125
+ userMongoose.passwordRecoveryTokens.push({
126
+ until: date,
127
+ token,
128
+ });
129
+ await userMongoose.save();
130
+ return { token, until: date.getTime() };
131
+ }
132
+ static async getUserByPasswordRecoveryToken(passwordRecoveryToken) {
133
+ const data = await this.findOne({
134
+ passwordRecoveryTokens: {
135
+ $elemMatch: { token: String(passwordRecoveryToken) },
136
+ },
137
+ });
138
+ if (!data) {
139
+ return Promise.reject(new Error('User not exists'));
140
+ }
141
+ // TODO token expiration and remove that token
142
+ data.passwordRecoveryTokens.pop();
143
+ const result = await data.save();
144
+ return result;
145
+ }
146
+ async sendPasswordRecoveryEmail(i18n) {
147
+ const passwordRecoveryToken = await UserOld.generateUserPasswordRecoveryToken(this);
148
+ let Mailer;
149
+ // speed optimisation
150
+ try {
151
+ // @ts-ignore
152
+ // eslint-disable-next-line import-x/no-unresolved
153
+ Mailer = (await import('@adaptivestone/framework-module-email')).default;
154
+ }
155
+ catch {
156
+ const error = 'Mailer not found. Please install @adaptivestone/framework-module-email in order to use it';
157
+ this.getSuper().logger?.error(error);
158
+ return false;
159
+ }
160
+ const mail = new Mailer(this.getSuper().app, 'recovery', {
161
+ link: `${i18n.language}/auth/recovery?password_recovery_token=${passwordRecoveryToken.token}`,
162
+ editor: this.name.nick,
163
+ }, i18n);
164
+ return mail.send(this.email);
165
+ }
166
+ static async generateUserVerificationToken(userMongoose) {
167
+ const { saltSecret, hashRounds } = appInstance.getConfig('auth');
168
+ const date = new Date();
169
+ date.setDate(date.getDate() + 14);
170
+ const data = await scryptAsync(userMongoose.email + Date.now(), saltSecret, hashRounds);
171
+ const token = data.toString('base64url');
172
+ // if (err) {
173
+ // this.logger.error("Hash 2 error ", err);
174
+ // reject(err);
175
+ // return;
176
+ // }
177
+ userMongoose.verificationTokens = [];
178
+ userMongoose.verificationTokens.push({
179
+ until: date,
180
+ token,
181
+ });
182
+ await userMongoose.save();
183
+ return { token, until: date.getTime() };
184
+ }
185
+ static async getUserByVerificationToken(verificationToken) {
186
+ const data = await this.findOne({
187
+ verificationTokens: {
188
+ $elemMatch: { token: String(verificationToken) },
189
+ },
190
+ });
191
+ if (!data) {
192
+ return Promise.reject(new Error('User not exists'));
193
+ }
194
+ // TODO token expiration and remove that token
195
+ data.verificationTokens.pop();
196
+ const result = await data.save();
197
+ return result;
198
+ }
199
+ // async removeVerificationToken(verificationToken) {
200
+ // this.mongooseModel.updateOne(
201
+ // {
202
+ // verificationTokens: {
203
+ // $elemMatch: { token: String(verificationToken) },
204
+ // },
205
+ // },
206
+ // { $pop: { verificationTokens: 1 } },
207
+ // );
208
+ // }
209
+ async sendVerificationEmail(i18n) {
210
+ const verificationToken = await UserOld.generateUserVerificationToken(this);
211
+ // speed optimisation
212
+ let Mailer;
213
+ try {
214
+ // @ts-ignore
215
+ Mailer = (await import('@adaptivestone/framework-module-email')).default;
216
+ }
217
+ catch {
218
+ const error = 'Mailer not found. Please install @adaptivestone/framework-module-email in order to use it';
219
+ this.getSuper().logger?.error(error);
220
+ return false;
221
+ }
222
+ const mail = new Mailer(this.getSuper().app, 'verification', {
223
+ link: `${i18n.language}/auth/login?verification_token=${verificationToken.token}`,
224
+ editor: this.name.nick,
225
+ }, i18n);
226
+ return mail.send(this.email);
227
+ }
228
+ }
229
+ export default UserOld;
230
+ //# sourceMappingURL=UserOld.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserOld.js","sourceRoot":"","sources":["../../src/models/UserOld.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AA+DnD;;GAEG;AACH,MAAM,OAAQ,SAAQ,aAIrB;IACC,YAAY,GAAS;QACnB,OAAO,CAAC,IAAI,CACV,uEAAuE,CACxE,CAAC;QACF,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IACD,SAAS;QACP,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,UAAU,eAAe;YAC5D,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChC,aAAa;gBACb,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kDAAkD;IAClD,IAAI,WAAW;QACb,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,GAAG;aACf;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE;oBACL,IAAI,EAAE,MAAM;oBACZ,SAAS,EAAE,GAAG;iBACf;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,MAAM;oBACZ,SAAS,EAAE,GAAG;iBACf;gBACD,IAAI,EAAE;oBACJ,SAAS,EAAE,CAAC;oBACZ,SAAS,EAAE,GAAG;oBACd,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;wBACZ,uBAAuB,EAAE,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;qBAC9D;iBACF;aACF;YACD,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,GAAG;gBACd,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;oBACZ,uBAAuB,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;iBACxD;aACF;YACD,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAC/C,kBAAkB,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YACpD,sBAAsB,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YACxD,WAAW,EAAE,EAAE;YACf,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;YACvC,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAEpC,KAAa,EACb,QAAgB;QAEhB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,EACvB,UAAU,EACV,UAAU,CACX,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACrC,CAAC;IAED,SAAS;QACP,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CAAiC,QAAgB;QACxE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CAAiC,KAAa;QACvE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,qBAAqB,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1E,OAAO,IAAI,IAAI,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CAAiC,KAAa;QACvE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,iCAAiC,CAC5C,YAAoD;QAEpD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEjE,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,WAAW,CAC5B,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,EAC/B,UAAU,EACV,UAAU,CACX,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACzC,mBAAmB;QACnB,+CAA+C;QAC/C,mBAAmB;QACnB,cAAc;QACd,IAAI;QACJ,YAAY,CAAC,sBAAsB,GAAG,EAAE,CAAC;QACzC,YAAY,CAAC,sBAAsB,CAAC,IAAI,CAAC;YACvC,KAAK,EAAE,IAAI;YACX,KAAK;SACN,CAAC,CAAC;QACH,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;QAC1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAEzC,qBAA6B;QAE7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;YAC9B,sBAAsB,EAAE;gBACtB,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,EAAE;aACrD;SACF,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,8CAA8C;QAE9C,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,CAAC;QAElC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,yBAAyB,CAE7B,IAAwC;QAExC,MAAM,qBAAqB,GACzB,MAAM,OAAO,CAAC,iCAAiC,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC;QACX,qBAAqB;QACrB,IAAI,CAAC;YACH,aAAa;YACb,kDAAkD;YAClD,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,KAAK,GACT,2FAA2F,CAAC;YAC9F,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,MAAM,CACrB,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EACnB,UAAU,EACV;YACE,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,0CAA0C,qBAAqB,CAAC,KAAK,EAAE;YAC7F,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;SACvB,EACD,IAAI,CACL,CAAC;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,6BAA6B,CACxC,YAAoD;QAEpD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEjE,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,WAAW,CAC5B,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,EAC/B,UAAU,EACV,UAAU,CACX,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACzC,aAAa;QACb,+CAA+C;QAC/C,mBAAmB;QACnB,cAAc;QACd,IAAI;QACJ,YAAY,CAAC,kBAAkB,GAAG,EAAE,CAAC;QACrC,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC;YACnC,KAAK,EAAE,IAAI;YACX,KAAK;SACN,CAAC,CAAC;QACH,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;QAC1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAErC,iBAAyB;QAEzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;YAC9B,kBAAkB,EAAE;gBAClB,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAE;aACjD;SACF,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,8CAA8C;QAE9C,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qDAAqD;IACrD,kCAAkC;IAClC,QAAQ;IACR,8BAA8B;IAC9B,4DAA4D;IAC5D,WAAW;IACX,SAAS;IACT,2CAA2C;IAC3C,OAAO;IACP,IAAI;IAEJ,KAAK,CAAC,qBAAqB,CAEzB,IAAwC;QAExC,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;QAC5E,qBAAqB;QACrB,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,aAAa;YACb,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,KAAK,GACT,2FAA2F,CAAC;YAC9F,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,MAAM,CACrB,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EACnB,cAAc,EACd;YACE,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,kCAAkC,iBAAiB,CAAC,KAAK,EAAE;YACjF,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;SACvB,EACD,IAAI,CACL,CAAC;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAED,eAAe,OAAO,CAAC"}
@@ -14,7 +14,7 @@ declare class AbstractModel<IDocument = {}, IMethods extends IAbstractModelMetho
14
14
  * @param IApp app
15
15
  * @param function callback optional callback when connection ready
16
16
  */
17
- constructor(app: IApp, callback?: () => void);
17
+ constructor(app: IApp);
18
18
  /**
19
19
  * Mongoose schema
20
20
  */
@@ -7,10 +7,9 @@ class AbstractModel extends Base {
7
7
  * @param IApp app
8
8
  * @param function callback optional callback when connection ready
9
9
  */
10
- constructor(app, callback = () => { }) {
10
+ constructor(app) {
11
11
  super(app);
12
12
  this.mongooseSchema = new mongoose.Schema(this.modelSchema, this.modelSchemaOptions);
13
- mongoose.set('strictQuery', true);
14
13
  this.mongooseSchema.set('timestamps', true);
15
14
  this.mongooseSchema.set('minimize', false);
16
15
  this.mongooseSchema.loadClass(this.constructor);
@@ -18,35 +17,6 @@ class AbstractModel extends Base {
18
17
  this.mongooseSchema.method('getSuper', () => this);
19
18
  this.initHooks();
20
19
  this.mongooseModel = mongoose.model(this.constructor.name, this.mongooseSchema);
21
- if (!mongoose.connection.readyState) {
22
- this.app.events.on('shutdown', async () => {
23
- this.logger?.verbose('Shutdown was called. Closing all mongoose connections');
24
- for (const c of mongoose.connections) {
25
- c.close(true);
26
- }
27
- // await mongoose.disconnect(); // TODO it have problems with replica-set
28
- });
29
- const connectionParams = {};
30
- if (process.env.MONGO_APP_NAME) {
31
- connectionParams.appName = process.env.MONGO_APP_NAME;
32
- }
33
- // do not connect on test
34
- mongoose
35
- .connect(this.app.getConfig('mongo').connectionString, connectionParams)
36
- .then(() => {
37
- this.logger?.info(`Mongo connection success ${connectionParams.appName}`);
38
- mongoose.connection.on('error', (err) => {
39
- this.logger?.error('Mongo connection error', err);
40
- console.error(err);
41
- });
42
- callback();
43
- }, (error) => {
44
- this.logger?.error("Can't install mongodb connection", error);
45
- });
46
- }
47
- else {
48
- callback();
49
- }
50
20
  }
51
21
  /**
52
22
  * Mongoose schema
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractModel.js","sourceRoot":"","sources":["../../src/modules/AbstractModel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,IAAI,MAAM,WAAW,CAAC;AAc7B,MAAM,aAQJ,SAAQ,IAAI;IACZ,cAAc,CAAsC;IAEpD,aAAa,CAAS;IAEtB;;;OAGG;IACH,YAAY,GAAS,EAAE,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC;QACxC,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,cAAc,GAAG,IAAI,QAAQ,CAAC,MAAM,CACvC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,kBAAkB,CACxB,CAAC;QACF,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,CACjC,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;gBACxC,IAAI,CAAC,MAAM,EAAE,OAAO,CAClB,uDAAuD,CACxD,CAAC;gBACF,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBACrC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;gBACD,yEAAyE;YAC3E,CAAC,CAAC,CAAC;YACH,MAAM,gBAAgB,GAElB,EAAE,CAAC;YACP,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;gBAC/B,gBAAgB,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YACxD,CAAC;YACD,yBAAyB;YACzB,QAAQ;iBACL,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;iBACvE,IAAI,CACH,GAAG,EAAE;gBACH,IAAI,CAAC,MAAM,EAAE,IAAI,CACf,4BAA4B,gBAAgB,CAAC,OAAO,EAAE,CACvD,CAAC;gBACF,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACtC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;oBAClD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;gBAEH,QAAQ,EAAE,CAAC;YACb,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC,CACF,CAAC;QACN,CAAC;aAAM,CAAC;YACN,QAAQ,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gCAAgC,CAAC,CAAC;QACpD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,kDAAkD;IAClD,IAAI,kBAAkB;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,KAAK,WAAW;QACpB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,IAAI,uBAAuB,CAAC,CAAC;IAC9E,CAAC;CACF;AACD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"AbstractModel.js","sourceRoot":"","sources":["../../src/modules/AbstractModel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,IAAI,MAAM,WAAW,CAAC;AAc7B,MAAM,aAQJ,SAAQ,IAAI;IACZ,cAAc,CAAsC;IAEpD,aAAa,CAAS;IAEtB;;;OAGG;IACH,YAAY,GAAS;QACnB,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,cAAc,GAAG,IAAI,QAAQ,CAAC,MAAM,CACvC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,kBAAkB,CACxB,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,CACjC,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,IAAI,CAAC,cAAc,CACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gCAAgC,CAAC,CAAC;QACpD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,kDAAkD;IAClD,IAAI,kBAAkB;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,KAAK,WAAW;QACpB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,IAAI,uBAAuB,CAAC,CAAC;IAC9E,CAAC;CACF;AACD,eAAe,aAAa,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { Model } from 'mongoose';
2
+ import type { Schema, InferRawDocType } from 'mongoose';
3
+ export type Merge<M, N> = Omit<M, keyof N> & N;
4
+ export type WithTimestamps<TOptions> = TOptions extends {
5
+ timestamps: true;
6
+ } ? {
7
+ createdAt: Date;
8
+ updatedAt: Date;
9
+ } : TOptions extends {
10
+ timestamps: false;
11
+ } ? {} : {
12
+ createdAt: Date;
13
+ updatedAt: Date;
14
+ };
15
+ export type ModelSchemaReturnType<T> = T extends {
16
+ modelSchema: infer R;
17
+ } ? R : never;
18
+ export type ModelMethodsReturnType<T> = T extends {
19
+ modelMethods: infer R;
20
+ } ? R : {};
21
+ export type ModelStaticsReturnType<T> = T extends {
22
+ modelStatics: infer R;
23
+ } ? R : {};
24
+ export type SchemaOptionsReturnType<T> = T extends {
25
+ schemaOptions: infer R;
26
+ } ? R : {};
27
+ export type GetModelSchemaTypeFromClass<T extends typeof BaseModel> = Schema<InferRawDocType<ModelSchemaReturnType<T> & WithTimestamps<Merge<typeof defaultOptions, SchemaOptionsReturnType<T>>>>, // TRawDocType
28
+ Model<any>, // TModel
29
+ ModelMethodsReturnType<T>, // TInstanceMethods
30
+ {}, // TQueryHelpers
31
+ {}, // TVirtuals
32
+ ModelStaticsReturnType<T>, // TStaticMethods
33
+ SchemaOptionsReturnType<T>>;
34
+ export type GetModelTypeFromClass<T extends typeof BaseModel> = Model<InferRawDocType<ModelSchemaReturnType<T> & WithTimestamps<Merge<typeof defaultOptions, SchemaOptionsReturnType<T>>>>, // TRawDocType
35
+ ModelMethodsReturnType<T>, // TInstanceMethods
36
+ GetModelSchemaTypeFromClass<T>> & ModelStaticsReturnType<T>;
37
+ export type GetModelTypeLiteFromSchema<T extends typeof BaseModel.modelSchema, TOptions = {}> = Model<InferRawDocType<T & WithTimestamps<Merge<typeof defaultOptions, TOptions>>>>;
38
+ export declare const defaultOptions: {
39
+ readonly timestamps: true;
40
+ readonly minimize: false;
41
+ };
42
+ export declare class BaseModel {
43
+ static get modelSchema(): {};
44
+ static get schemaOptions(): {};
45
+ static get modelMethods(): {};
46
+ static get modelStatics(): {};
47
+ static initHooks(schema: Schema): void;
48
+ static initialize<T extends typeof BaseModel>(this: T): GetModelTypeFromClass<T>;
49
+ }
@@ -0,0 +1,31 @@
1
+ import mongoose, { Model } from 'mongoose';
2
+ export const defaultOptions = { timestamps: true, minimize: false };
3
+ export class BaseModel {
4
+ static get modelSchema() {
5
+ return {};
6
+ }
7
+ static get schemaOptions() {
8
+ return {};
9
+ }
10
+ static get modelMethods() {
11
+ return {};
12
+ }
13
+ static get modelStatics() {
14
+ return {};
15
+ }
16
+ static initHooks(schema) {
17
+ // Add hooks here
18
+ }
19
+ // Properly typed static method with generic constraints
20
+ static initialize() {
21
+ const schema = new mongoose.Schema(this.modelSchema, {
22
+ ...this.schemaOptions,
23
+ methods: this.modelMethods,
24
+ statics: this.modelStatics,
25
+ });
26
+ this.initHooks(schema);
27
+ const mongooseModel = mongoose.model(this.name, schema);
28
+ return mongooseModel;
29
+ }
30
+ }
31
+ //# sourceMappingURL=BaseModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../../src/modules/BaseModel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAuE3C,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAW,CAAC;AAE7E,MAAM,OAAO,SAAS;IACpB,MAAM,KAAK,WAAW;QACpB,OAAO,EAAW,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,aAAa;QACtB,OAAO,EAAW,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,YAAY;QACrB,OAAO,EAAW,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,YAAY;QACrB,OAAO,EAAW,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,MAAc;QAC7B,iBAAiB;IACnB,CAAC;IAED,wDAAwD;IACjD,MAAM,CAAC,UAAU;QACtB,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;YACnD,GAAI,IAAI,CAAC,aAA+B;YACxC,OAAO,EAAE,IAAI,CAAC,YAAY;YAC1B,OAAO,EAAE,IAAI,CAAC,YAAY;SAC3B,CAAmC,CAAC;QAErC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEvB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAClC,IAAI,CAAC,IAAI,EACT,MAAM,CACqB,CAAC;QAE9B,OAAO,aAAa,CAAC;IACvB,CAAC;CACF"}
package/dist/server.d.ts CHANGED
@@ -6,10 +6,12 @@ import type BaseCli from './modules/BaseCli.ts';
6
6
  import type HttpServer from './services/http/HttpServer.ts';
7
7
  import type ControllerManager from './controllers/index.ts';
8
8
  import type AbstractModel from './modules/AbstractModel.ts';
9
+ import type { BaseModel } from './modules/BaseModel.ts';
10
+ import type { Model } from 'mongoose';
9
11
  interface AppCache {
10
12
  configs: Map<string, unknown>;
11
- models: Map<string, AbstractModel['mongooseModel']>;
12
- modelConstructors: Map<string, typeof AbstractModel>;
13
+ models: Map<string, AbstractModel['mongooseModel'] | Model<any>>;
14
+ modelConstructors: Map<string, typeof AbstractModel | typeof BaseModel>;
13
15
  modelPaths: {
14
16
  path: string;
15
17
  file: string;
@@ -105,7 +107,7 @@ declare class Server {
105
107
  * Support cache
106
108
  * @param {String} modelName name on config file to load
107
109
  */
108
- getModel(modelName: string): AbstractModel['mongooseModel'] | false;
110
+ getModel(modelName: string): AbstractModel['mongooseModel'] | Model<any> | false;
109
111
  /**
110
112
  * Run cli command into framework (http, ws, etc)
111
113
  * @param {String} commandName name of command to load
package/dist/server.js CHANGED
@@ -14,6 +14,7 @@ import merge from 'deepmerge';
14
14
  import winston from 'winston';
15
15
  import { getFilesPathWithInheritance } from "./helpers/files.js";
16
16
  import { consoleLogger } from "./helpers/logger.js";
17
+ import { setAppInstance } from "./helpers/appInstance.js";
17
18
  import Cache from "./services/cache/Cache.js";
18
19
  try {
19
20
  loadEnvFile();
@@ -80,6 +81,7 @@ class Server {
80
81
  // Unref the timer so it doesn't keep the process alive
81
82
  forceShutdownTimer.unref();
82
83
  });
84
+ setAppInstance(this.app);
83
85
  }
84
86
  /**
85
87
  * Start server (http + init all http ralated functions)
@@ -123,6 +125,37 @@ class Server {
123
125
  console.log(' ');
124
126
  return true;
125
127
  }
128
+ /**
129
+ * Connect to mongoose if needed
130
+ */
131
+ async #mongooseConnect() {
132
+ const mongoose = (await import('mongoose')).default;
133
+ mongoose.set('strictQuery', true);
134
+ if (!mongoose.connection.readyState) {
135
+ this.app.events.on('shutdown', async () => {
136
+ this.app.logger?.verbose('Shutdown was called. Closing all mongoose connections');
137
+ for (const c of mongoose.connections) {
138
+ c.close(true);
139
+ }
140
+ // await mongoose.disconnect(); // TODO it have problems with replica-set
141
+ });
142
+ const connectionParams = {};
143
+ if (process.env.MONGO_APP_NAME) {
144
+ connectionParams.appName = process.env.MONGO_APP_NAME;
145
+ }
146
+ mongoose
147
+ .connect(this.app.getConfig('mongo').connectionString, connectionParams)
148
+ .then(() => {
149
+ this.app.logger?.info(`Mongo connection success ${connectionParams.appName}`);
150
+ mongoose.connection.on('error', (err) => {
151
+ this.app.logger?.error('Mongo connection error', err);
152
+ console.error(err);
153
+ });
154
+ }, (error) => {
155
+ this.app.logger?.error("Can't install mongodb connection", error);
156
+ });
157
+ }
158
+ }
126
159
  /**
127
160
  * Load model and init them
128
161
  */
@@ -136,11 +169,20 @@ class Server {
136
169
  await this.#loadModelFiles();
137
170
  }
138
171
  if (this.app.getConfig('mongo').connectionString) {
172
+ const BaseModel = (await import("./modules/BaseModel.js")).BaseModel;
173
+ this.#mongooseConnect(); //do not wait for connection. Any time for us it ok
139
174
  for (const [modelName, ModelConstructor] of this.cache
140
175
  .modelConstructors) {
141
176
  try {
142
- const model = new ModelConstructor(this.app);
143
- this.cache.models.set(modelName, model.mongooseModel);
177
+ if (ModelConstructor.prototype instanceof BaseModel) {
178
+ const model = ModelConstructor.initialize();
179
+ this.cache.models.set(modelName, model);
180
+ }
181
+ else {
182
+ this.app.logger?.warn(`Model ${modelName} is old type model. Please update it to BaseModel`);
183
+ const model = new ModelConstructor(this.app);
184
+ this.cache.models.set(modelName, model.mongooseModel);
185
+ }
144
186
  }
145
187
  catch (e) {
146
188
  if (e instanceof Error) {
@@ -230,7 +272,6 @@ class Server {
230
272
  return true;
231
273
  }
232
274
  const files = await this.getModelFilesPathsWithInheritance();
233
- console.log('Loading model files', files);
234
275
  const promises = [];
235
276
  for (const file of files) {
236
277
  const t = hrtime.bigint();
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import crypto from 'node:crypto';
3
3
  import { beforeAll, beforeEach, afterEach, afterAll } from 'vitest';
4
4
  import mongoose from 'mongoose'; // we do not need create indexes on tests
5
5
  import { createClient } from '@redis/client';
6
- import clearRedisNamespace from "../helpers/redis/clearNamespace.js";
6
+ import { clearRedisNamespace } from "../helpers/redis/clearNamespace.js";
7
7
  import Server from "../server.js";
8
8
  mongoose.set('autoIndex', false);
9
9
  const basePath = new URL('.', import.meta.url).pathname;
@@ -1 +1 @@
1
- {"version":3,"file":"setupVitest.js","sourceRoot":"","sources":["../../src/tests/setupVitest.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupVitest.js","sourceRoot":"","sources":["../../src/tests/setupVitest.js"],"names":[],"mappings":"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"}
package/genTypes.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
 
2
2
  import type {} from '@adaptivestone/framework/server.js';
3
+ import type { GetModelTypeFromClass } from './src/modules/BaseModel.ts';
3
4
 
4
5
  declare module '@adaptivestone/framework/server.js' {
5
6
  export interface IApp {
@@ -93,8 +94,8 @@ declare module '@adaptivestone/framework/server.js' {
93
94
  "controllerValidationAbortEarly": true
94
95
  };
95
96
  getModel(modelName: 'Lock'): import('./src/models/Lock.ts').default['mongooseModel']
96
- getModel(modelName: 'Migration'): import('./src/models/Migration.ts').default['mongooseModel']
97
- getModel(modelName: 'Sequence'): import('./src/models/Sequence.ts').default['mongooseModel']
97
+ getModel(modelName: 'Migration'): GetModelTypeFromClass<typeof import('./src/models/Migration.ts').default>
98
+ getModel(modelName: 'Sequence'): GetModelTypeFromClass<typeof import('./src/models/Sequence.ts').default>
98
99
  getModel(modelName: 'User'): import('./src/models/User.ts').default['mongooseModel']
99
100
  }
100
101
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptivestone/framework",
3
- "version": "5.0.0-beta.17",
3
+ "version": "5.0.0-beta.18",
4
4
  "description": "Adaptive stone node js framework",
5
5
  "type": "module",
6
6
  "engines": {