Registry / testing / apollo-resolvers

apollo-resolvers

JSON →
library1.4.2jsnpmunverified

A library for building expressive and composable GraphQL resolvers with a reactive middleware-like pattern. Version 1.4.2 (latest) — last published in 2018, no recent updates, low maintenance cadence. It wraps Apollo resolver chains with authorization checks, error handling, and context cleanup, reducing duplicate logic across resolvers. Ships TypeScript types. Unlike raw Apollo resolvers, it enforces a layered resolver composition pattern via createResolver, allowing parent-child resolver chains with error masking and access control.

npm install apollo-resolvers
INSTALL
IMPORT
SIG · APOLLO-RESOLVERS
A
apollo-resolvers
testingjavascriptv1.4.2
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

createResolver
import { createResolver } from 'apollo-resolvers'
const createResolver = require('apollo-resolvers')
Library provides ESM imports via the main entry point. CJS require works but TypeScript may need esModuleInterop.
default
import apolloResolvers from 'apollo-resolvers'
const apolloResolvers = require('apollo-resolvers').default
Default export is available; use named exports for individual functions like createResolver.
type CreateResolverOptions
import type { CreateResolverOptions } from 'apollo-resolvers'
import { CreateResolverOptions } from 'apollo-resolvers'
Type imports require explicit 'type' keyword when using isolatedModules or similar TypeScript settings.
ResolverMiddleware
import { ResolverMiddleware } from 'apollo-resolvers'
import { ResolverMiddleware } from 'apollo-resolvers/types'
Types are exported from main entry; no separate types file needed.

Creates a base resolver with error masking and an authenticated child resolver using createResolver.

import { createResolver } from 'apollo-resolvers'; import { createError, isInstance } from 'apollo-errors'; const UnknownError = createError('UnknownError', { message: 'An unknown error has occurred!' }); export const baseResolver = createResolver( null, (root, args, context, error) => isInstance(error) ? error : new UnknownError() ); const AuthenticationRequiredError = createError('AuthenticationRequiredError', { message: 'You must be logged in' }); export const isAuthenticatedResolver = baseResolver.createResolver( (root, args, { user }) => { if (!user) throw new AuthenticationRequiredError(); } ); import { makeExecutableSchema } from 'graphql-tools'; import { typeDefs, resolvers } from './schema'; // Your schema definition const schema = makeExecutableSchema({ typeDefs, resolvers });
Debug
Known issues
deprecatedThis library has not been updated since 2018. It relies on apollo-errors and graphql-tools which are also in maintenance mode.
fix
Consider using modern Apollo Server (v4+) with built-in error masking and custom resolvers without this library.
affects: >=1.0.0
gotchaThe library assumes you are using apollo-errors for custom errors. Without it, error masking via createResolver's handler may not work correctly.
fix
Install apollo-errors as a peer dependency: npm install apollo-errors
affects: >=1.0.0
breakingIn version 1.0.0, the API changed from resolve() to createResolver(). Old code using resolve() will break.
fix
Replace resolve() with createResolver() and update resolver chaining syntax.
affects: <1.0.0
gotchaTypeScript types shipped with the package may be incomplete or outdated. Some generics might be missing.
fix
Set strict TypeScript checking or manually augment types as needed.
affects: >=1.0.0
Errors
Common errors & fixes
Error: Cannot find module 'apollo-resolvers'
Package not installed or missing from dependencies.
fix
Run npm install apollo-resolvers
TypeError: createResolver is not a function
Incorrect import (e.g., default import instead of named import).
fix
Use import { createResolver } from 'apollo-resolvers'
TypeError: Cannot read property 'createResolver' of undefined
Attempting chain on createResolver result but baseResolver is undefined.
fix
Ensure createResolver returns a resolver object. Verify that null is passed as first argument if no parent resolver.
Upgrade
Version history
1.4.2latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
38 hits · last 30 days
node
32
OpenAI (training)
1
Resources
apollo-resolvers — npm install apollo-resolvers · libregistry