@feathersjs/schema 5.0.0-pre.36 → 5.0.0-pre.37

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
@@ -3,6 +3,13 @@
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.37](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.36...v5.0.0-pre.37) (2023-02-09)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **schema:** Do not change the hook context in resolvers ([#3048](https://github.com/feathersjs/feathers/issues/3048)) ([bfd8c04](https://github.com/feathersjs/feathers/commit/bfd8c04c15279063a0d4b70771715c656dda5f7c))
11
+ - **schema:** Ensure that resolveResult and resolveExternal are run as around hooks ([#3032](https://github.com/feathersjs/feathers/issues/3032)) ([71942f4](https://github.com/feathersjs/feathers/commit/71942f418e3afe167aef4f98b1a97356dae7625c))
12
+
6
13
  # [5.0.0-pre.36](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.35...v5.0.0-pre.36) (2023-01-29)
7
14
 
8
15
  ### Bug Fixes
@@ -3,13 +3,13 @@ import { Resolver } from '../resolver';
3
3
  export type ResolverSetting<H extends HookContext> = Resolver<any, H> | Resolver<any, H>[];
4
4
  export declare const resolveQuery: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next?: NextFunction) => Promise<any>;
5
5
  export declare const resolveData: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next?: NextFunction) => Promise<any>;
6
- export declare const resolveResult: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next?: NextFunction) => Promise<void>;
6
+ export declare const resolveResult: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next: NextFunction) => Promise<void>;
7
7
  export declare const DISPATCH: unique symbol;
8
8
  export declare const getDispatchValue: (value: any) => any;
9
9
  export declare const getDispatch: (value: any) => any;
10
10
  export declare const setDispatch: (current: any, dispatch: any) => any;
11
- export declare const resolveDispatch: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next?: NextFunction) => Promise<void>;
12
- export declare const resolveExternal: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next?: NextFunction) => Promise<void>;
11
+ export declare const resolveExternal: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next: NextFunction) => Promise<void>;
12
+ export declare const resolveDispatch: <H extends HookContext<import("@feathersjs/feathers").Application<any, any>, any>>(...resolvers: Resolver<any, H>[]) => (context: H, next: NextFunction) => Promise<void>;
13
13
  type ResolveAllSettings<H extends HookContext> = {
14
14
  data?: {
15
15
  create: Resolver<any, H>;
@@ -1,16 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveAll = exports.resolveExternal = exports.resolveDispatch = exports.setDispatch = exports.getDispatch = exports.getDispatchValue = exports.DISPATCH = exports.resolveResult = exports.resolveData = exports.resolveQuery = void 0;
3
+ exports.resolveAll = exports.resolveDispatch = exports.resolveExternal = exports.setDispatch = exports.getDispatch = exports.getDispatchValue = exports.DISPATCH = exports.resolveResult = exports.resolveData = exports.resolveQuery = void 0;
4
4
  const hooks_1 = require("@feathersjs/hooks");
5
- const getContext = (context) => {
6
- return Object.freeze({
7
- ...context,
8
- params: Object.freeze({
9
- ...context.params,
10
- query: Object.freeze({})
11
- })
12
- });
13
- };
14
5
  const getResult = (context) => {
15
6
  const isPaginated = context.method === 'find' && context.result.data;
16
7
  const data = isPaginated ? context.result.data : context.result;
@@ -27,9 +18,8 @@ const runResolvers = async (resolvers, data, ctx, status) => {
27
18
  };
28
19
  const resolveQuery = (...resolvers) => async (context, next) => {
29
20
  var _a;
30
- const ctx = getContext(context);
31
21
  const data = ((_a = context === null || context === void 0 ? void 0 : context.params) === null || _a === void 0 ? void 0 : _a.query) || {};
32
- const query = await runResolvers(resolvers, data, ctx);
22
+ const query = await runResolvers(resolvers, data, context);
33
23
  context.params = {
34
24
  ...context.params,
35
25
  query
@@ -41,16 +31,15 @@ const resolveQuery = (...resolvers) => async (context, next) => {
41
31
  exports.resolveQuery = resolveQuery;
42
32
  const resolveData = (...resolvers) => async (context, next) => {
43
33
  if (context.data !== undefined) {
44
- const ctx = getContext(context);
45
34
  const data = context.data;
46
35
  const status = {
47
36
  originalContext: context
48
37
  };
49
38
  if (Array.isArray(data)) {
50
- context.data = await Promise.all(data.map((current) => runResolvers(resolvers, current, ctx, status)));
39
+ context.data = await Promise.all(data.map((current) => runResolvers(resolvers, current, context, status)));
51
40
  }
52
41
  else {
53
- context.data = await runResolvers(resolvers, data, ctx, status);
42
+ context.data = await runResolvers(resolvers, data, context, status);
54
43
  }
55
44
  }
56
45
  if (typeof next === 'function') {
@@ -62,30 +51,30 @@ const resolveResult = (...resolvers) => {
62
51
  const virtualProperties = new Set(resolvers.reduce((acc, current) => acc.concat(current.virtualNames), []));
63
52
  return async (context, next) => {
64
53
  var _a;
65
- if (typeof next === 'function') {
66
- const { $resolve, $select: select, ...query } = ((_a = context.params) === null || _a === void 0 ? void 0 : _a.query) || {};
67
- const $select = Array.isArray(select) ? select.filter((name) => !virtualProperties.has(name)) : select;
68
- const resolve = {
69
- originalContext: context,
70
- ...context.params.resolve,
71
- properties: $resolve || select
72
- };
73
- context.params = {
74
- ...context.params,
75
- resolve,
76
- query: {
77
- ...query,
78
- ...($select ? { $select } : {})
79
- }
80
- };
81
- await next();
54
+ if (typeof next !== 'function') {
55
+ throw new Error('The resolveResult hook must be used as an around hook');
82
56
  }
83
- const ctx = getContext(context);
57
+ const { $resolve, $select: select, ...query } = ((_a = context.params) === null || _a === void 0 ? void 0 : _a.query) || {};
58
+ const $select = Array.isArray(select) ? select.filter((name) => !virtualProperties.has(name)) : select;
59
+ const resolve = {
60
+ originalContext: context,
61
+ ...context.params.resolve,
62
+ properties: $resolve || select
63
+ };
64
+ context.params = {
65
+ ...context.params,
66
+ resolve,
67
+ query: {
68
+ ...query,
69
+ ...($select ? { $select } : {})
70
+ }
71
+ };
72
+ await next();
84
73
  const status = context.params.resolve;
85
74
  const { isPaginated, data } = getResult(context);
86
75
  const result = Array.isArray(data)
87
- ? await Promise.all(data.map(async (current) => runResolvers(resolvers, current, ctx, status)))
88
- : await runResolvers(resolvers, data, ctx, status);
76
+ ? await Promise.all(data.map(async (current) => runResolvers(resolvers, current, context, status)))
77
+ : await runResolvers(resolvers, data, context, status);
89
78
  if (isPaginated) {
90
79
  context.result.data = result;
91
80
  }
@@ -119,11 +108,11 @@ const setDispatch = (current, dispatch) => {
119
108
  return dispatch;
120
109
  };
121
110
  exports.setDispatch = setDispatch;
122
- const resolveDispatch = (...resolvers) => async (context, next) => {
123
- if (typeof next === 'function') {
124
- await next();
111
+ const resolveExternal = (...resolvers) => async (context, next) => {
112
+ if (typeof next !== 'function') {
113
+ throw new Error('The resolveExternal hook must be used as an around hook');
125
114
  }
126
- const ctx = getContext(context);
115
+ await next();
127
116
  const existingDispatch = (0, exports.getDispatch)(context.result);
128
117
  if (existingDispatch !== null) {
129
118
  context.dispatch = existingDispatch;
@@ -132,7 +121,7 @@ const resolveDispatch = (...resolvers) => async (context, next) => {
132
121
  const status = context.params.resolve;
133
122
  const { isPaginated, data } = getResult(context);
134
123
  const resolveAndGetDispatch = async (current) => {
135
- const resolved = await runResolvers(resolvers, current, ctx, status);
124
+ const resolved = await runResolvers(resolvers, current, context, status);
136
125
  const currentDispatch = Object.keys(resolved).reduce((res, key) => {
137
126
  res[key] = (0, exports.getDispatchValue)(resolved[key]);
138
127
  return res;
@@ -151,8 +140,8 @@ const resolveDispatch = (...resolvers) => async (context, next) => {
151
140
  context.dispatch = (0, exports.setDispatch)(context.result, dispatch);
152
141
  }
153
142
  };
154
- exports.resolveDispatch = resolveDispatch;
155
- exports.resolveExternal = exports.resolveDispatch;
143
+ exports.resolveExternal = resolveExternal;
144
+ exports.resolveDispatch = exports.resolveExternal;
156
145
  const dataMethods = ['create', 'update', 'patch'];
157
146
  /**
158
147
  * Resolve all resolvers at once.
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/hooks/resolve.ts"],"names":[],"mappings":";;;AACA,6CAA2C;AAG3C,MAAM,UAAU,GAAG,CAAwB,OAAU,EAAE,EAAE;IACvD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,OAAO;QACV,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,GAAG,OAAO,CAAC,MAAM;YACjB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SACzB,CAAC;KACH,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,CAAwB,OAAU,EAAE,EAAE;IACtD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA;IACpE,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAA;IAE/D,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;AAC9B,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,KAAK,EACxB,SAA2B,EAC3B,IAAS,EACT,GAAM,EACN,MAAsC,EACtC,EAAE;IACF,IAAI,OAAO,GAAQ,IAAI,CAAA;IAEvB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE;YACtD,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;SACvD;KACF;IAED,OAAO,OAAY,CAAA;AACrB,CAAC,CAAA;AAIM,MAAM,YAAY,GACvB,CAAwB,GAAG,SAA6B,EAAE,EAAE,CAC5D,KAAK,EAAE,OAAU,EAAE,IAAmB,EAAE,EAAE;;IACxC,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,0CAAE,KAAK,KAAI,EAAE,CAAA;IACzC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEtD,OAAO,CAAC,MAAM,GAAG;QACf,GAAG,OAAO,CAAC,MAAM;QACjB,KAAK;KACN,CAAA;IAED,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;QAC9B,OAAO,IAAI,EAAE,CAAA;KACd;AACH,CAAC,CAAA;AAfU,QAAA,YAAY,gBAetB;AAEI,MAAM,WAAW,GACtB,CAAwB,GAAG,SAA6B,EAAE,EAAE,CAC5D,KAAK,EAAE,OAAU,EAAE,IAAmB,EAAE,EAAE;IACxC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE;QAC9B,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAEzB,MAAM,MAAM,GAAG;YACb,eAAe,EAAE,OAAO;SACzB,CAAA;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,OAAO,CAAC,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;SACvG;aAAM;YACL,OAAO,CAAC,IAAI,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;SAChE;KACF;IAED,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;QAC9B,OAAO,IAAI,EAAE,CAAA;KACd;AACH,CAAC,CAAA;AArBU,QAAA,WAAW,eAqBrB;AAEI,MAAM,aAAa,GAAG,CAAwB,GAAG,SAA6B,EAAE,EAAE;IACvF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAE3G,OAAO,KAAK,EAAE,OAAU,EAAE,IAAmB,EAAE,EAAE;;QAC/C,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC9B,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,CAAA,MAAA,OAAO,CAAC,MAAM,0CAAE,KAAK,KAAI,EAAE,CAAA;YAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;YACtG,MAAM,OAAO,GAAG;gBACd,eAAe,EAAE,OAAO;gBACxB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO;gBACzB,UAAU,EAAE,QAAQ,IAAI,MAAM;aAC/B,CAAA;YAED,OAAO,CAAC,MAAM,GAAG;gBACf,GAAG,OAAO,CAAC,MAAM;gBACjB,OAAO;gBACP,KAAK,EAAE;oBACL,GAAG,KAAK;oBACR,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChC;aACF,CAAA;YAED,MAAM,IAAI,EAAE,CAAA;SACb;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAA;QACrC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAEhD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAChC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/F,CAAC,CAAC,MAAM,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;QAEpD,IAAI,WAAW,EAAE;YACf,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAA;SAC7B;aAAM;YACL,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;SACxB;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAvCY,QAAA,aAAa,iBAuCzB;AAEY,QAAA,QAAQ,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAA;AAEtD,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAO,EAAE;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;QAC/C,IAAI,KAAK,CAAC,gBAAQ,CAAC,KAAK,SAAS,EAAE;YACjC,OAAO,KAAK,CAAC,gBAAQ,CAAC,CAAA;SACvB;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC,CAAA;SACnD;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAZY,QAAA,gBAAgB,oBAY5B;AAEM,MAAM,WAAW,GAAG,CAAC,KAAU,EAAO,EAAE,CAC7C,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,gBAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAD5E,QAAA,WAAW,eACiE;AAElF,MAAM,WAAW,GAAG,CAAC,OAAY,EAAE,QAAa,EAAE,EAAE;IACzD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAQ,EAAE;QACvC,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,KAAK;KACpB,CAAC,CAAA;IAEF,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AARY,QAAA,WAAW,eAQvB;AAEM,MAAM,eAAe,GAC1B,CAAwB,GAAG,SAA6B,EAAE,EAAE,CAC5D,KAAK,EAAE,OAAU,EAAE,IAAmB,EAAE,EAAE;IACxC,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;QAC9B,MAAM,IAAI,EAAE,CAAA;KACb;IAED,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAC/B,MAAM,gBAAgB,GAAG,IAAA,mBAAW,EAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAEpD,IAAI,gBAAgB,KAAK,IAAI,EAAE;QAC7B,OAAO,CAAC,QAAQ,GAAG,gBAAgB,CAAA;KACpC;SAAM;QACL,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAA;QACrC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,qBAAqB,GAAG,KAAK,EAAE,OAAY,EAAE,EAAE;YACnD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;YACpE,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAChE,GAAG,CAAC,GAAG,CAAC,GAAG,IAAA,wBAAgB,EAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;gBAE1C,OAAO,GAAG,CAAA;YACZ,CAAC,EAAE,EAAyB,CAAC,CAAA;YAE7B,OAAO,IAAA,mBAAW,EAAC,OAAO,EAAE,eAAe,CAAC,CAAA;QAC9C,CAAC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YACvC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAC9C,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAA;QAChC,MAAM,QAAQ,GAAG,WAAW;YAC1B,CAAC,CAAC;gBACE,GAAG,OAAO,CAAC,MAAM;gBACjB,IAAI,EAAE,MAAM;aACb;YACH,CAAC,CAAC,MAAM,CAAA;QAEV,OAAO,CAAC,QAAQ,GAAG,IAAA,mBAAW,EAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;KACzD;AACH,CAAC,CAAA;AAtCU,QAAA,eAAe,mBAsCzB;AAEU,QAAA,eAAe,GAAG,uBAAe,CAAA;AAa9C,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAA;AAE1D;;;;;;;GAOG;AACI,MAAM,UAAU,GAAG,CAAwB,GAA0B,EAAE,EAAE;IAC9E,MAAM,UAAU,GAAG,EAAE,CAAA;IAErB,UAAU,CAAC,IAAI,CAAC,IAAA,uBAAe,EAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;IAE9C,IAAI,GAAG,CAAC,MAAM,EAAE;QACd,UAAU,CAAC,IAAI,CAAC,IAAA,qBAAa,EAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;KAC3C;IAED,IAAI,GAAG,CAAC,KAAK,EAAE;QACb,UAAU,CAAC,IAAI,CAAC,IAAA,oBAAY,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;KACzC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE;QACZ,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3B,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAClB,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;gBAE5C,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,OAAU,EAAE,IAAkB,EAAE,EAAE,CACvD,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAC3D,CAAA;aACF;QACH,CAAC,CAAC,CAAA;KACH;IAED,OAAO,IAAA,eAAO,EAAC,UAAU,CAAC,CAAA;AAC5B,CAAC,CAAA;AA1BY,QAAA,UAAU,cA0BtB"}
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.36",
4
+ "version": "5.0.0-pre.37",
5
5
  "homepage": "https://feathersjs.com",
6
6
  "main": "lib/",
7
7
  "types": "lib/",
@@ -54,10 +54,10 @@
54
54
  "access": "public"
55
55
  },
56
56
  "dependencies": {
57
- "@feathersjs/adapter-commons": "^5.0.0-pre.36",
58
- "@feathersjs/commons": "^5.0.0-pre.36",
59
- "@feathersjs/errors": "^5.0.0-pre.36",
60
- "@feathersjs/feathers": "^5.0.0-pre.36",
57
+ "@feathersjs/adapter-commons": "^5.0.0-pre.37",
58
+ "@feathersjs/commons": "^5.0.0-pre.37",
59
+ "@feathersjs/errors": "^5.0.0-pre.37",
60
+ "@feathersjs/feathers": "^5.0.0-pre.37",
61
61
  "@feathersjs/hooks": "^0.7.6",
62
62
  "@types/json-schema": "^7.0.11",
63
63
  "ajv": "^8.12.0",
@@ -65,13 +65,13 @@
65
65
  "json-schema-to-ts": "^2.6.2"
66
66
  },
67
67
  "devDependencies": {
68
- "@feathersjs/memory": "^5.0.0-pre.36",
68
+ "@feathersjs/memory": "^5.0.0-pre.37",
69
69
  "@types/mocha": "^10.0.1",
70
70
  "@types/node": "^18.11.18",
71
71
  "ajv-formats": "^2.1.1",
72
72
  "mocha": "^10.2.0",
73
73
  "shx": "^0.3.4",
74
- "typescript": "^4.9.4"
74
+ "typescript": "^4.9.5"
75
75
  },
76
- "gitHead": "9a107b463cc80d7f3c28553c908987e05b0b634a"
76
+ "gitHead": "17a8b3b2614876772472d3cab3d96d45c01db6ed"
77
77
  }
@@ -2,16 +2,6 @@ import { HookContext, NextFunction } from '@feathersjs/feathers'
2
2
  import { compose } from '@feathersjs/hooks'
3
3
  import { Resolver, ResolverStatus } from '../resolver'
4
4
 
5
- const getContext = <H extends HookContext>(context: H) => {
6
- return Object.freeze({
7
- ...context,
8
- params: Object.freeze({
9
- ...context.params,
10
- query: Object.freeze({})
11
- })
12
- })
13
- }
14
-
15
5
  const getResult = <H extends HookContext>(context: H) => {
16
6
  const isPaginated = context.method === 'find' && context.result.data
17
7
  const data = isPaginated ? context.result.data : context.result
@@ -41,9 +31,8 @@ export type ResolverSetting<H extends HookContext> = Resolver<any, H> | Resolver
41
31
  export const resolveQuery =
42
32
  <H extends HookContext>(...resolvers: Resolver<any, H>[]) =>
43
33
  async (context: H, next?: NextFunction) => {
44
- const ctx = getContext(context)
45
34
  const data = context?.params?.query || {}
46
- const query = await runResolvers(resolvers, data, ctx)
35
+ const query = await runResolvers(resolvers, data, context)
47
36
 
48
37
  context.params = {
49
38
  ...context.params,
@@ -59,7 +48,6 @@ export const resolveData =
59
48
  <H extends HookContext>(...resolvers: Resolver<any, H>[]) =>
60
49
  async (context: H, next?: NextFunction) => {
61
50
  if (context.data !== undefined) {
62
- const ctx = getContext(context)
63
51
  const data = context.data
64
52
 
65
53
  const status = {
@@ -67,9 +55,11 @@ export const resolveData =
67
55
  }
68
56
 
69
57
  if (Array.isArray(data)) {
70
- context.data = await Promise.all(data.map((current) => runResolvers(resolvers, current, ctx, status)))
58
+ context.data = await Promise.all(
59
+ data.map((current) => runResolvers(resolvers, current, context, status))
60
+ )
71
61
  } else {
72
- context.data = await runResolvers(resolvers, data, ctx, status)
62
+ context.data = await runResolvers(resolvers, data, context, status)
73
63
  }
74
64
  }
75
65
 
@@ -81,35 +71,36 @@ export const resolveData =
81
71
  export const resolveResult = <H extends HookContext>(...resolvers: Resolver<any, H>[]) => {
82
72
  const virtualProperties = new Set(resolvers.reduce((acc, current) => acc.concat(current.virtualNames), []))
83
73
 
84
- return async (context: H, next?: NextFunction) => {
85
- if (typeof next === 'function') {
86
- const { $resolve, $select: select, ...query } = context.params?.query || {}
87
- const $select = Array.isArray(select) ? select.filter((name) => !virtualProperties.has(name)) : select
88
- const resolve = {
89
- originalContext: context,
90
- ...context.params.resolve,
91
- properties: $resolve || select
92
- }
74
+ return async (context: H, next: NextFunction) => {
75
+ if (typeof next !== 'function') {
76
+ throw new Error('The resolveResult hook must be used as an around hook')
77
+ }
93
78
 
94
- context.params = {
95
- ...context.params,
96
- resolve,
97
- query: {
98
- ...query,
99
- ...($select ? { $select } : {})
100
- }
101
- }
79
+ const { $resolve, $select: select, ...query } = context.params?.query || {}
80
+ const $select = Array.isArray(select) ? select.filter((name) => !virtualProperties.has(name)) : select
81
+ const resolve = {
82
+ originalContext: context,
83
+ ...context.params.resolve,
84
+ properties: $resolve || select
85
+ }
102
86
 
103
- await next()
87
+ context.params = {
88
+ ...context.params,
89
+ resolve,
90
+ query: {
91
+ ...query,
92
+ ...($select ? { $select } : {})
93
+ }
104
94
  }
105
95
 
106
- const ctx = getContext(context)
96
+ await next()
97
+
107
98
  const status = context.params.resolve
108
99
  const { isPaginated, data } = getResult(context)
109
100
 
110
101
  const result = Array.isArray(data)
111
- ? await Promise.all(data.map(async (current) => runResolvers(resolvers, current, ctx, status)))
112
- : await runResolvers(resolvers, data, ctx, status)
102
+ ? await Promise.all(data.map(async (current) => runResolvers(resolvers, current, context, status)))
103
+ : await runResolvers(resolvers, data, context, status)
113
104
 
114
105
  if (isPaginated) {
115
106
  context.result.data = result
@@ -148,14 +139,15 @@ export const setDispatch = (current: any, dispatch: any) => {
148
139
  return dispatch
149
140
  }
150
141
 
151
- export const resolveDispatch =
142
+ export const resolveExternal =
152
143
  <H extends HookContext>(...resolvers: Resolver<any, H>[]) =>
153
- async (context: H, next?: NextFunction) => {
154
- if (typeof next === 'function') {
155
- await next()
144
+ async (context: H, next: NextFunction) => {
145
+ if (typeof next !== 'function') {
146
+ throw new Error('The resolveExternal hook must be used as an around hook')
156
147
  }
157
148
 
158
- const ctx = getContext(context)
149
+ await next()
150
+
159
151
  const existingDispatch = getDispatch(context.result)
160
152
 
161
153
  if (existingDispatch !== null) {
@@ -164,7 +156,7 @@ export const resolveDispatch =
164
156
  const status = context.params.resolve
165
157
  const { isPaginated, data } = getResult(context)
166
158
  const resolveAndGetDispatch = async (current: any) => {
167
- const resolved = await runResolvers(resolvers, current, ctx, status)
159
+ const resolved = await runResolvers(resolvers, current, context, status)
168
160
  const currentDispatch = Object.keys(resolved).reduce((res, key) => {
169
161
  res[key] = getDispatchValue(resolved[key])
170
162
 
@@ -188,7 +180,7 @@ export const resolveDispatch =
188
180
  }
189
181
  }
190
182
 
191
- export const resolveExternal = resolveDispatch
183
+ export const resolveDispatch = resolveExternal
192
184
 
193
185
  type ResolveAllSettings<H extends HookContext> = {
194
186
  data?: {