resolveData
Resolves and transforms context.data using a map of resolver functions. Each property in the resolver object receives the current value and can return a transformed value. Runs before next() in the hook pipeline.
import { } from 'feathers-utils/resolvers';Example
import { resolveData, lowercase } from 'feathers-utils/resolvers'
app.service('users').hooks({
before: {
create: [resolveData({ email: lowercase() })]
}
})Type declaration
Show Type Declarations
type Data<H extends HookContext> = AnyFallback<
DataSingleHookContext<H>,
Record<string, any>
>
/**
* Resolves and transforms `context.data` using a map of resolver functions.
* Each property in the resolver object receives the current value and can return
* a transformed value. Runs before `next()` in the hook pipeline.
*
* @example
* ```ts
*
*
* app.service('users').hooks({
* before: {
* create: [resolveData({ email: lowercase() })]
* }
* })
* ```
*/
export declare const resolveData: <
H extends HookContext = HookContext,
D = Data<H>,
>(
resolvers: ResolverObject<D, H>,
) => {
(context: H, next: NextFunction): Promise<void>
(context: H): Promisable<H>
}| Argument | Type | Description |
|---|---|---|
| resolvers | ResolverObject<D, H> |
| type | methods | multi |
|---|---|---|
| before, around | create, update, patch | yes |
Resolver Helpers
| Resolver | Description |
|---|---|
defaults | Returns a resolver property that sets a default value when the current value
is |
fromPredicate | Adapts an existing predicate function (like |
lowercase | Returns a resolver property that converts string values to lowercase. Non-string values are passed through unchanged. |
omit | Returns a resolver property that removes the field by returning |
setNow | Returns a resolver property that sets the field to the current timestamp
( |
trim | Returns a resolver property that trims whitespace from string values. Non-string values are passed through unchanged. |
Conditions
| Condition | Description |
|---|
