UNPKG

@cran/lib.gql.core

Version:

GQL Core Functionality

21 lines (17 loc) 576 B
import { wrapResolver } from "./wrapResolver"; export namespace modifyResolver { export type Modifier<Source, Context, Args> = ( result: unknown, ...rest: wrapResolver.Arguments<Source, Context, Args> ) => unknown; } export function modifyResolver< Source = unknown, Context = unknown, Args = Record<string, unknown> > ( target: wrapResolver.Target<Source, Context, Args>, modifier: modifyResolver.Modifier<Source, Context, Args> ) { wrapResolver(target, function wrapper ( resolver, ...rest ) { return modifier(resolver(...rest), ...rest); }); }