@feathersjs/schema 5.0.0-pre.21 → 5.0.0-pre.22
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 +11 -0
- package/lib/hooks/resolve.d.ts +13 -7
- package/lib/hooks/resolve.js +18 -10
- package/lib/hooks/resolve.js.map +1 -1
- package/package.json +5 -5
- package/src/hooks/resolve.ts +35 -20
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [5.0.0-pre.22](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.21...v5.0.0-pre.22) (2022-05-24)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **schema:** Allows resolveData with different resolvers based on method ([#2644](https://github.com/feathersjs/feathers/issues/2644)) ([be71fa2](https://github.com/feathersjs/feathers/commit/be71fa2fe260e05b7dcc0d5f439e33f2e9ec2434))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# [5.0.0-pre.21](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.20...v5.0.0-pre.21) (2022-05-23)
|
|
7
18
|
|
|
8
19
|
|
package/lib/hooks/resolve.d.ts
CHANGED
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import { HookContext, NextFunction } from '@feathersjs/feathers';
|
|
2
2
|
import { Resolver } from '../resolver';
|
|
3
|
+
export declare type ResolverSetting<H extends HookContext> = Resolver<any, H> | Resolver<any, H>[];
|
|
4
|
+
export declare type DataResolvers<H extends HookContext> = {
|
|
5
|
+
create: Resolver<any, H>;
|
|
6
|
+
patch: Resolver<any, H>;
|
|
7
|
+
update: Resolver<any, H>;
|
|
8
|
+
};
|
|
9
|
+
export declare type ResolveAllSettings<H extends HookContext> = {
|
|
10
|
+
data?: DataResolvers<H>;
|
|
11
|
+
query?: Resolver<any, H>;
|
|
12
|
+
result?: Resolver<any, H>;
|
|
13
|
+
dispatch?: Resolver<any, H>;
|
|
14
|
+
};
|
|
3
15
|
export declare const DISPATCH: unique symbol;
|
|
4
16
|
export declare const resolveQuery: <T, H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<T, H>[]) => (context: H, next?: NextFunction) => Promise<any>;
|
|
5
|
-
export declare const resolveData: <
|
|
17
|
+
export declare const resolveData: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(settings: DataResolvers<H> | Resolver<any, H>) => (context: H, next?: NextFunction) => Promise<any>;
|
|
6
18
|
export declare const resolveResult: <T, H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<T, H>[]) => (context: H, next?: NextFunction) => Promise<void>;
|
|
7
19
|
export declare const resolveDispatch: <T, H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<T, H>[]) => (context: H, next?: NextFunction) => Promise<void>;
|
|
8
|
-
export declare type ResolveAllSettings<H extends HookContext> = {
|
|
9
|
-
data?: Resolver<any, H> | Resolver<any, H>[];
|
|
10
|
-
query?: Resolver<any, H> | Resolver<any, H>[];
|
|
11
|
-
result?: Resolver<any, H> | Resolver<any, H>[];
|
|
12
|
-
dispatch?: Resolver<any, H> | Resolver<any, H>[];
|
|
13
|
-
};
|
|
14
20
|
export declare const resolveAll: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(map: ResolveAllSettings<H>) => (this: any, context: H, next?: import("@feathersjs/hooks").AsyncMiddleware<H>) => Promise<any>;
|
package/lib/hooks/resolve.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.resolveAll = exports.resolveDispatch = exports.resolveResult = exports.resolveData = exports.resolveQuery = exports.DISPATCH = void 0;
|
|
4
4
|
const hooks_1 = require("@feathersjs/hooks");
|
|
5
|
+
const resolver_1 = require("../resolver");
|
|
5
6
|
const getContext = (context) => {
|
|
6
7
|
return {
|
|
7
8
|
...context,
|
|
@@ -38,8 +39,9 @@ const resolveQuery = (...resolvers) => async (context, next) => {
|
|
|
38
39
|
}
|
|
39
40
|
};
|
|
40
41
|
exports.resolveQuery = resolveQuery;
|
|
41
|
-
const resolveData = (
|
|
42
|
+
const resolveData = (settings) => async (context, next) => {
|
|
42
43
|
if (context.method === 'create' || context.method === 'patch' || context.method === 'update') {
|
|
44
|
+
const resolvers = settings instanceof resolver_1.Resolver ? [settings] : [settings[context.method]];
|
|
43
45
|
const ctx = getContext(context);
|
|
44
46
|
const data = context.data;
|
|
45
47
|
const status = {
|
|
@@ -116,15 +118,21 @@ const resolveDispatch = (...resolvers) => async (context, next) => {
|
|
|
116
118
|
});
|
|
117
119
|
};
|
|
118
120
|
exports.resolveDispatch = resolveDispatch;
|
|
119
|
-
const
|
|
120
|
-
const
|
|
121
|
-
|
|
121
|
+
const resolveAll = (map) => {
|
|
122
|
+
const middleware = [];
|
|
123
|
+
if (map.dispatch) {
|
|
124
|
+
middleware.push((0, exports.resolveDispatch)(map.dispatch));
|
|
125
|
+
}
|
|
126
|
+
if (map.result) {
|
|
127
|
+
middleware.push((0, exports.resolveResult)(map.result));
|
|
128
|
+
}
|
|
129
|
+
if (map.query) {
|
|
130
|
+
middleware.push((0, exports.resolveQuery)(map.query));
|
|
131
|
+
}
|
|
132
|
+
if (map.data) {
|
|
133
|
+
middleware.push((0, exports.resolveData)(map.data));
|
|
134
|
+
}
|
|
135
|
+
return (0, hooks_1.compose)(middleware);
|
|
122
136
|
};
|
|
123
|
-
const resolveAll = (map) => (0, hooks_1.compose)([
|
|
124
|
-
(0, exports.resolveDispatch)(...getResolvers(map, 'dispatch')),
|
|
125
|
-
(0, exports.resolveResult)(...getResolvers(map, 'result')),
|
|
126
|
-
(0, exports.resolveQuery)(...getResolvers(map, 'query')),
|
|
127
|
-
(0, exports.resolveData)(...getResolvers(map, 'data'))
|
|
128
|
-
]);
|
|
129
137
|
exports.resolveAll = resolveAll;
|
|
130
138
|
//# sourceMappingURL=resolve.js.map
|
package/lib/hooks/resolve.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/hooks/resolve.ts"],"names":[],"mappings":";;;AACA,6CAA4C;
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/hooks/resolve.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@feathersjs/schema",
|
|
3
3
|
"description": "A common data schema definition format",
|
|
4
|
-
"version": "5.0.0-pre.
|
|
4
|
+
"version": "5.0.0-pre.22",
|
|
5
5
|
"homepage": "https://feathersjs.com",
|
|
6
6
|
"main": "lib/",
|
|
7
7
|
"types": "lib/",
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"access": "public"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@feathersjs/errors": "^5.0.0-pre.
|
|
57
|
-
"@feathersjs/feathers": "^5.0.0-pre.
|
|
56
|
+
"@feathersjs/errors": "^5.0.0-pre.22",
|
|
57
|
+
"@feathersjs/feathers": "^5.0.0-pre.22",
|
|
58
58
|
"@feathersjs/hooks": "^0.7.4",
|
|
59
59
|
"@types/json-schema": "^7.0.11",
|
|
60
60
|
"ajv": "^8.11.0",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"json-schema-to-ts": "^2.3.0"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@feathersjs/memory": "^5.0.0-pre.
|
|
65
|
+
"@feathersjs/memory": "^5.0.0-pre.22",
|
|
66
66
|
"@types/mocha": "^9.1.1",
|
|
67
67
|
"@types/node": "^17.0.31",
|
|
68
68
|
"ajv-formats": "^2.1.1",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"shx": "^0.3.4",
|
|
71
71
|
"typescript": "^4.6.4"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "e452e02063e6d8943a9cae2315ab585bc4f82fb6"
|
|
74
74
|
}
|
package/src/hooks/resolve.ts
CHANGED
|
@@ -34,6 +34,21 @@ const runResolvers = async <T, H extends HookContext> (
|
|
|
34
34
|
return current as T;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
+
export type ResolverSetting<H extends HookContext> = Resolver<any, H>|Resolver<any, H>[];
|
|
38
|
+
|
|
39
|
+
export type DataResolvers<H extends HookContext> = {
|
|
40
|
+
create: Resolver<any, H>
|
|
41
|
+
patch: Resolver<any, H>
|
|
42
|
+
update: Resolver<any, H>
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export type ResolveAllSettings<H extends HookContext> = {
|
|
46
|
+
data?: DataResolvers<H>
|
|
47
|
+
query?: Resolver<any, H>
|
|
48
|
+
result?: Resolver<any, H>
|
|
49
|
+
dispatch?: Resolver<any, H>
|
|
50
|
+
}
|
|
51
|
+
|
|
37
52
|
export const DISPATCH = Symbol('@feathersjs/schema/dispatch');
|
|
38
53
|
|
|
39
54
|
export const resolveQuery = <T, H extends HookContext> (...resolvers: Resolver<T, H>[]) =>
|
|
@@ -52,9 +67,10 @@ export const resolveQuery = <T, H extends HookContext> (...resolvers: Resolver<T
|
|
|
52
67
|
}
|
|
53
68
|
};
|
|
54
69
|
|
|
55
|
-
export const resolveData = <
|
|
70
|
+
export const resolveData = <H extends HookContext> (settings: DataResolvers<H>|Resolver<any, H>) =>
|
|
56
71
|
async (context: H, next?: NextFunction) => {
|
|
57
72
|
if (context.method === 'create' || context.method === 'patch' || context.method === 'update') {
|
|
73
|
+
const resolvers = settings instanceof Resolver ? [ settings ] : [ settings[context.method] ];
|
|
58
74
|
const ctx = getContext(context);
|
|
59
75
|
const data = context.data;
|
|
60
76
|
|
|
@@ -146,25 +162,24 @@ export const resolveDispatch = <T, H extends HookContext> (...resolvers: Resolve
|
|
|
146
162
|
});
|
|
147
163
|
};
|
|
148
164
|
|
|
149
|
-
export
|
|
150
|
-
|
|
151
|
-
query?: Resolver<any, H>|Resolver<any, H>[]
|
|
152
|
-
result?: Resolver<any, H>|Resolver<any, H>[]
|
|
153
|
-
dispatch?: Resolver<any, H>|Resolver<any, H>[]
|
|
154
|
-
}
|
|
165
|
+
export const resolveAll = <H extends HookContext> (map: ResolveAllSettings<H>) => {
|
|
166
|
+
const middleware = [];
|
|
155
167
|
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
) => {
|
|
160
|
-
const value = map[name];
|
|
168
|
+
if (map.dispatch) {
|
|
169
|
+
middleware.push(resolveDispatch(map.dispatch));
|
|
170
|
+
}
|
|
161
171
|
|
|
162
|
-
|
|
163
|
-
|
|
172
|
+
if (map.result) {
|
|
173
|
+
middleware.push(resolveResult(map.result));
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
if (map.query) {
|
|
177
|
+
middleware.push(resolveQuery(map.query));
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
if (map.data) {
|
|
181
|
+
middleware.push(resolveData(map.data));
|
|
182
|
+
}
|
|
164
183
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
resolveResult(...getResolvers(map, 'result')),
|
|
168
|
-
resolveQuery(...getResolvers(map, 'query')),
|
|
169
|
-
resolveData(...getResolvers(map, 'data'))
|
|
170
|
-
])
|
|
184
|
+
return compose(middleware);
|
|
185
|
+
}
|