github graphql-compose/graphql-compose v2.7.0

latest releases: v9.0.10, v9.0.9, v9.0.8...
6 years ago

2.7.0 (2017-09-06)

Bug Fixes

  • Flowtype: Better names for resolver types and small cleanup (0acb2f5)

Features

  • TypeComposer: Refactor wrapResolver and add wrapResoverResolve (9b82b1d)

In much-much more places, I'm using following ugly code when want to add
some checks to standard resolvers:

PriceTC.setResolver(
  'updateById',
  PriceTC.getResolver('updateById').wrapResolve(next => rp => {
    if (!isAdmin(rp)) throw new Error('Can be updated only by admin.');
    return next(rp);
  })
);

So this feature allows to extend resolve method in Resolver directly
from TypeComposer in following manner:

PriceTC.wrapResolverResolve('updateById', next => rp => {
  if (!isAdmin(rp)) throw new Error('Can be updated only by admin.');
  return next(rp);
});

Also you may use TC.wrapResolver method for much granular resolver wrapping.

PriceTC.setResolver(
  'connection',
  PriceTC.getResolver('connection')
    .addSortArg(...).addFilterArg().wrapResolve(...);
);

Can be shortened to

PriceTC.wrapResolver('connection', newResolver => {
  return newResolver.addSortArg(...).addFilterArg().wrapResolve(...);
});

Don't miss a new graphql-compose release

NewReleases is sending notifications on new releases.