@adaptivestone/framework 5.0.0-beta.23 → 5.0.0-beta.24
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
|
@@ -27,6 +27,7 @@ Main feature of that release is full TypeScript support insluding mongoose model
|
|
|
27
27
|
|
|
28
28
|
### Breaking changes (please read carefully)
|
|
29
29
|
|
|
30
|
+
- **[BREAKING]** No more global variables for testing and default user will not be created by default
|
|
30
31
|
- **[BREAKING]** All models now should be extended from `BaseModel`. This is a potencial breaking change specially for `User` model.
|
|
31
32
|
- **[BREAKING]** Remove jest support for testing.
|
|
32
33
|
- **[BREAKING]** Move email module to separate package `@adaptivestone/framework-module-email`. Please use it if you want to send emails.
|
|
@@ -47,11 +48,16 @@ Main feature of that release is full TypeScript support insluding mongoose model
|
|
|
47
48
|
|
|
48
49
|
---
|
|
49
50
|
|
|
51
|
+
## [5.0.0-beta.24]
|
|
52
|
+
|
|
53
|
+
- **[UPDATE]** Update types.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
50
57
|
## [5.0.0-beta.23]
|
|
51
58
|
|
|
52
59
|
- **[BREAKING]** No more global variables for testing and default user will not be created by default
|
|
53
60
|
- **[NEW]** Test helpers getTestServerURL, serverInstance, setDefaultUser, setDefaultAuthToken and createDefaultTestUser.
|
|
54
|
-
- **[DEPRECATION]** global usage in testing is deprecated
|
|
55
61
|
|
|
56
62
|
---
|
|
57
63
|
|
|
@@ -24,13 +24,18 @@ ExtractProperty<T, 'modelInstanceMethods'>, // TInstanceMethods
|
|
|
24
24
|
ExtractProperty<T, 'modelVirtuals'>, // TVirtuals
|
|
25
25
|
ExtractProperty<T, 'modelStatics'>, // TStaticMethods
|
|
26
26
|
ExtractProperty<T, 'schemaOptions'>>;
|
|
27
|
+
export type VirtualType<T> = {
|
|
28
|
+
[P in keyof T]: T[P] extends {
|
|
29
|
+
get: () => infer R;
|
|
30
|
+
} ? R : any;
|
|
31
|
+
};
|
|
27
32
|
export type GetModelTypeFromClass<T extends typeof BaseModel> = Model<InferRawDocType<ExtractProperty<T, 'modelSchema'> & WithTimestamps<Merge<typeof defaultOptions, ExtractProperty<T, 'schemaOptions'>>>>, // TRawDocType
|
|
28
33
|
{}, // TQueryHelpers
|
|
29
34
|
ExtractProperty<T, 'modelInstanceMethods'>, // TInstanceMethods
|
|
30
35
|
ExtractProperty<T, 'modelVirtuals'>, // TVirtuals
|
|
31
36
|
HydratedDocument<InferRawDocType<ExtractProperty<T, 'modelSchema'> & WithTimestamps<Merge<typeof defaultOptions, ExtractProperty<T, 'schemaOptions'>>>>, //TRawDocType
|
|
32
37
|
//TRawDocType
|
|
33
|
-
ExtractProperty<T, 'modelVirtuals'
|
|
38
|
+
VirtualType<ExtractProperty<T, 'modelVirtuals'>> & ExtractProperty<T, 'modelInstanceMethods'>, // TVirtuals & TInstanceMethods
|
|
34
39
|
{}, // TQueryHelpers
|
|
35
40
|
ExtractProperty<T, 'modelVirtuals'>>, GetModelSchemaTypeFromClass<T>> & ExtractProperty<T, 'modelStatics'>;
|
|
36
41
|
export type GetModelTypeLiteFromSchema<T extends typeof BaseModel.modelSchema, TOptions = {}> = Model<InferRawDocType<T & WithTimestamps<Merge<typeof defaultOptions, TOptions>>>>;
|
|
@@ -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;
|
|
1
|
+
{"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../../src/modules/BaseModel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAwF3C,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,GAAG,cAAc;YACjB,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"}
|
|
@@ -2,10 +2,10 @@ import type Server from '../server.ts';
|
|
|
2
2
|
import type { GetModelTypeFromClass } from '../modules/BaseModel.ts';
|
|
3
3
|
import type UserModel from '../models/User.ts';
|
|
4
4
|
export declare let serverInstance: Server;
|
|
5
|
-
export declare let defaultUser: GetModelTypeFromClass<typeof UserModel
|
|
5
|
+
export declare let defaultUser: InstanceType<GetModelTypeFromClass<typeof UserModel>>;
|
|
6
6
|
export declare let defaultAuthToken: string;
|
|
7
7
|
export declare const setServerInstance: (serverInstanceToSet: Server) => void;
|
|
8
|
-
export declare const setDefaultUser: (userToSet: GetModelTypeFromClass<typeof UserModel
|
|
8
|
+
export declare const setDefaultUser: (userToSet: InstanceType<GetModelTypeFromClass<typeof UserModel>>) => void;
|
|
9
9
|
export declare const setDefaultAuthToken: (tokenToSet: string) => void;
|
|
10
10
|
export declare const getTestServerURL: (urlPart?: string) => string;
|
|
11
11
|
export declare const createDefaultTestUser: () => Promise<false | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testHelpers.js","sourceRoot":"","sources":["../../src/tests/testHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAKxD,MAAM,CAAC,IAAI,cAAuB,CAAC;AACnC,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"testHelpers.js","sourceRoot":"","sources":["../../src/tests/testHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAKxD,MAAM,CAAC,IAAI,cAAuB,CAAC;AACnC,MAAM,CAAC,IAAI,WAAkE,CAAC;AAC9E,MAAM,CAAC,IAAI,gBAAwB,CAAC;AAEpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,mBAA2B,EAAE,EAAE;IAC/D,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,cAAc,GAAG,mBAAmB,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,SAAgE,EAChE,EAAE;IACF,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,WAAW,GAAG,SAAS,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,UAAkB,EAAE,EAAE;IACxD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IACD,gBAAgB,GAAG,UAAU,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAgB,EAAE,EAAE;IACnD,OAAO,oBAAoB,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,GAAG,OAAO,EAAE,CAAC;AAC5E,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,IAAI,EAAE;IAC9C,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;QAC7B,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,cAAc;QACxB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE;YACJ,IAAI,EAAE,kBAAkB;SACzB;KACF,CAAC,CAAC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;QACpB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CACV,qGAAqG,CACtG,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IACD,cAAc,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IACzC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;AACtC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaptivestone/framework",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.24",
|
|
4
4
|
"description": "Adaptive stone node js framework",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"@eslint/js": "^9.24.0",
|
|
54
54
|
"@types/express": "^5.0.1",
|
|
55
55
|
"@types/formidable": "^3.4.5",
|
|
56
|
-
"@types/node": "^
|
|
56
|
+
"@types/node": "^24.0.0",
|
|
57
57
|
"@vitest/coverage-v8": "^3.0.0",
|
|
58
58
|
"@vitest/eslint-plugin": "^1.1.25",
|
|
59
59
|
"eslint": "^9.24.0",
|