@adaptivestone/framework 5.0.0-beta.19 → 5.0.0-beta.20

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 CHANGED
@@ -37,6 +37,11 @@ Main feature of that release is full TypeScript support insluding mongoose model
37
37
  [BREAKING] ESM only. No more commonJS. That help to fix a lot of bugs with tests and provides better development expirience
38
38
  [BREAKING] Mongoose v8. https://mongoosejs.com/docs/migrating_to_8.html
39
39
 
40
+ ### 5.0.0-beta.20
41
+
42
+ [FIX] fix bug with Lock model index
43
+ [NEW] BaseModel add Virtuals
44
+
40
45
  ### 5.0.0-beta.19
41
46
 
42
47
  [NEW] intruducing new model type. BaseModel. Features - simplifie works with typescript. And based on statics
@@ -2,6 +2,7 @@ import { BaseModel } from '../modules/BaseModel.ts';
2
2
  import type { GetModelTypeLiteFromSchema } from '../modules/BaseModel.ts';
3
3
  import type { Schema } from 'mongoose';
4
4
  declare class Lock extends BaseModel {
5
+ static initHooks(schema: Schema): void;
5
6
  static get modelSchema(): {
6
7
  readonly _id: {
7
8
  readonly type: StringConstructor;
@@ -84,6 +85,5 @@ declare class Lock extends BaseModel {
84
85
  ttl: number;
85
86
  }[]>;
86
87
  };
87
- initHooks(schema: Schema): void;
88
88
  }
89
89
  export default Lock;
@@ -1,5 +1,8 @@
1
1
  import { BaseModel } from "../modules/BaseModel.js";
2
2
  class Lock extends BaseModel {
3
+ static initHooks(schema) {
4
+ schema.index({ expiredAt: 1 }, { expireAfterSeconds: 0 });
5
+ }
3
6
  static get modelSchema() {
4
7
  return {
5
8
  _id: { type: String, required: true },
@@ -91,9 +94,6 @@ class Lock extends BaseModel {
91
94
  },
92
95
  };
93
96
  }
94
- initHooks(schema) {
95
- schema.index({ expiredAt: 1 }, { expireAfterSeconds: 0 });
96
- }
97
97
  }
98
98
  export default Lock;
99
99
  //# sourceMappingURL=Lock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Lock.js","sourceRoot":"","sources":["../../src/models/Lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Lock.js","sourceRoot":"","sources":["../../src/models/Lock.ts"],"names":[],"mappings":"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"}
@@ -6,20 +6,6 @@ class Sequence extends BaseModel {
6
6
  seq: { type: Number, default: 1 },
7
7
  };
8
8
  }
9
- // static get modelMethods() {
10
- // type SequenceModelLite = GetModelTypeLiteFromSchema<
11
- // typeof Sequence.modelSchema,
12
- // ModelOptionsReturnType<typeof Sequence>
13
- // >;
14
- // return {
15
- // getPublic: async function (this: InstanceType<SequenceModelLite>) {
16
- // return {
17
- // _id: this._id,
18
- // seq: this.seq,
19
- // };
20
- // },
21
- // } as const;
22
- // }
23
9
  static get modelStatics() {
24
10
  return {
25
11
  getSequence: async function (forType) {
@@ -1 +1 @@
1
- {"version":3,"file":"Sequence.js","sourceRoot":"","sources":["../../src/models/Sequence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAMpD,MAAM,QAAS,SAAQ,SAAS;IAC9B,MAAM,KAAK,WAAW;QACpB,OAAO;YACL,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YACrC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;SACzB,CAAC;IACb,CAAC;IAED,8BAA8B;IAC9B,yDAAyD;IACzD,mCAAmC;IACnC,8CAA8C;IAC9C,OAAO;IAEP,aAAa;IACb,0EAA0E;IAC1E,iBAAiB;IACjB,yBAAyB;IACzB,yBAAyB;IACzB,WAAW;IACX,SAAS;IACT,gBAAgB;IAChB,IAAI;IAEJ,MAAM,KAAK,YAAY;QAKrB,OAAO;YACL,WAAW,EAAE,KAAK,WAAoC,OAAe;gBACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC3C,EAAE,GAAG,EAAE,OAAO,EAAE,EAChB,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EACpB,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAC5B,CAAC;gBACF,OAAO,QAAQ,CAAC,GAAG,CAAC;YACtB,CAAC;SACO,CAAC;IACb,CAAC;CACF;AAED,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Sequence.js","sourceRoot":"","sources":["../../src/models/Sequence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAMpD,MAAM,QAAS,SAAQ,SAAS;IAC9B,MAAM,KAAK,WAAW;QACpB,OAAO;YACL,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YACrC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;SACzB,CAAC;IACb,CAAC;IAED,MAAM,KAAK,YAAY;QAKrB,OAAO;YACL,WAAW,EAAE,KAAK,WAAoC,OAAe;gBACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC3C,EAAE,GAAG,EAAE,OAAO,EAAE,EAChB,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EACpB,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAC5B,CAAC;gBACF,OAAO,QAAQ,CAAC,GAAG,CAAC;YACtB,CAAC;SACO,CAAC;IACb,CAAC;CACF;AAED,eAAe,QAAQ,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { BaseModel } from '../modules/BaseModel.ts';
2
- import type { GetModelTypeLiteFromSchema, SchemaOptionsReturnType } from '../modules/BaseModel.ts';
2
+ import type { GetModelTypeLiteFromSchema, ExtractProperty, GetModelTypeFromClass } from '../modules/BaseModel.ts';
3
3
  import type { Schema } from 'mongoose';
4
4
  import type { TFunction } from 'i18next';
5
- type UserModelLite = GetModelTypeLiteFromSchema<typeof User.modelSchema, SchemaOptionsReturnType<typeof User>>;
5
+ type UserModelLite = GetModelTypeLiteFromSchema<typeof User.modelSchema, ExtractProperty<typeof User, 'schemaOptions'>>;
6
6
  declare class User extends BaseModel {
7
7
  static initHooks(schema: Schema): void;
8
8
  static get modelSchema(): {
@@ -1322,9 +1322,8 @@ declare class User extends BaseModel {
1322
1322
  } & {
1323
1323
  __v: number;
1324
1324
  }>;
1325
- readonly removeVerificationToken: (this: UserModelLite, verificationToken: string) => Promise<void>;
1326
1325
  };
1327
- static get modelMethods(): {
1326
+ static get modelInstanceMethods(): {
1328
1327
  /**
1329
1328
  * Generate token for user
1330
1329
  * @returns {Object}
@@ -2370,3 +2369,4 @@ export declare const userHelpers: {
2370
2369
  }>;
2371
2370
  };
2372
2371
  export default User;
2372
+ export type TUserModel = GetModelTypeFromClass<typeof User>;
@@ -134,16 +134,22 @@ class User extends BaseModel {
134
134
  return result;
135
135
  },
136
136
  // TODO
137
- removeVerificationToken: async function removeVerificationToken(verificationToken) {
138
- this.updateOne({
139
- verificationTokens: {
140
- $elemMatch: { token: String(verificationToken) },
141
- },
142
- }, { $pop: { verificationTokens: 1 } });
143
- },
137
+ // removeVerificationToken: async function removeVerificationToken(
138
+ // this: UserModelLite,
139
+ // verificationToken: string,
140
+ // ) {
141
+ // this.updateOne(
142
+ // {
143
+ // verificationTokens: {
144
+ // $elemMatch: { token: String(verificationToken) },
145
+ // },
146
+ // },
147
+ // { $pop: { verificationTokens: 1 } },
148
+ // );
149
+ // },
144
150
  };
145
151
  }
146
- static get modelMethods() {
152
+ static get modelInstanceMethods() {
147
153
  return {
148
154
  /**
149
155
  * Generate token for user
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../../src/models/User.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../../src/models/User.ts"],"names":[],"mappings":"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"}
@@ -12,28 +12,19 @@ export type WithTimestamps<TOptions> = TOptions extends {
12
12
  createdAt: Date;
13
13
  updatedAt: Date;
14
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
15
+ export type ExtractProperty<T, K extends PropertyKey, Default = {}> = T extends {
16
+ [P in K]: infer R;
17
+ } ? R : Default;
18
+ export type GetModelSchemaTypeFromClass<T extends typeof BaseModel> = Schema<InferRawDocType<ExtractProperty<T, 'modelSchema'> & WithTimestamps<Merge<typeof defaultOptions, ExtractProperty<T, 'schemaOptions'>>>>, // TRawDocType
28
19
  Model<any>, // TModel
29
- ModelMethodsReturnType<T>, // TInstanceMethods
20
+ ExtractProperty<T, 'modelInstanceMethods'>, // TInstanceMethods
30
21
  {}, // 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>;
22
+ ExtractProperty<T, 'modelVirtuals'>, // TVirtuals
23
+ ExtractProperty<T, 'modelStatics'>, // TStaticMethods
24
+ ExtractProperty<T, 'schemaOptions'>>;
25
+ export type GetModelTypeFromClass<T extends typeof BaseModel> = Model<InferRawDocType<ExtractProperty<T, 'modelSchema'> & WithTimestamps<Merge<typeof defaultOptions, ExtractProperty<T, 'schemaOptions'>>>>, // TRawDocType
26
+ ExtractProperty<T, 'modelInstanceMethods'>, // TInstanceMethods
27
+ GetModelSchemaTypeFromClass<T>> & ExtractProperty<T, 'modelStatics'>;
37
28
  export type GetModelTypeLiteFromSchema<T extends typeof BaseModel.modelSchema, TOptions = {}> = Model<InferRawDocType<T & WithTimestamps<Merge<typeof defaultOptions, TOptions>>>>;
38
29
  export declare const defaultOptions: {
39
30
  readonly timestamps: true;
@@ -42,7 +33,8 @@ export declare const defaultOptions: {
42
33
  export declare class BaseModel {
43
34
  static get modelSchema(): {};
44
35
  static get schemaOptions(): {};
45
- static get modelMethods(): {};
36
+ static get modelInstanceMethods(): {};
37
+ static get modelVirtuals(): {};
46
38
  static get modelStatics(): {};
47
39
  static initHooks(schema: Schema): void;
48
40
  static initialize<T extends typeof BaseModel>(this: T): GetModelTypeFromClass<T>;
@@ -7,7 +7,10 @@ export class BaseModel {
7
7
  static get schemaOptions() {
8
8
  return {};
9
9
  }
10
- static get modelMethods() {
10
+ static get modelInstanceMethods() {
11
+ return {};
12
+ }
13
+ static get modelVirtuals() {
11
14
  return {};
12
15
  }
13
16
  static get modelStatics() {
@@ -20,8 +23,9 @@ export class BaseModel {
20
23
  static initialize() {
21
24
  const schema = new mongoose.Schema(this.modelSchema, {
22
25
  ...this.schemaOptions,
23
- methods: this.modelMethods,
26
+ methods: this.modelInstanceMethods,
24
27
  statics: this.modelStatics,
28
+ virtuals: this.modelVirtuals,
25
29
  });
26
30
  this.initHooks(schema);
27
31
  const mongooseModel = mongoose.model(this.name, schema);
@@ -1 +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"}
1
+ {"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../../src/modules/BaseModel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AA2D3C,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,oBAAoB;QAC7B,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,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,oBAAoB;YAClC,OAAO,EAAE,IAAI,CAAC,YAAY;YAC1B,QAAQ,EAAE,IAAI,CAAC,aAAa;SAC7B,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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptivestone/framework",
3
- "version": "5.0.0-beta.19",
3
+ "version": "5.0.0-beta.20",
4
4
  "description": "Adaptive stone node js framework",
5
5
  "type": "module",
6
6
  "engines": {