6.0.0 • Published 7 months ago

@envelop/graphql-middleware v6.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

@envelop/graphql-middleware

This plugins wraps graphql-middleware and allow you to apply schema middlewares that uses the standard defined by graphql-middleware.

You can find an awesome list of middlewares here

Getting Started

yarn add graphql-middleware @envelop/graphql-middleware

Usage Example

You can use any type of middleware defined for graphql-middleware, here's an example for doing that with graphql-shield:

import { execute, parse, specifiedRules, subscribe, validate } from 'graphql'
import { and, not, or, rule, shield } from 'graphql-shield'
import { envelop, useEngine } from '@envelop/core'
import { useGraphQLMiddleware } from '@envelop/graphql-middleware'

// ...
// You can find a complete example here: https://github.com/maticzav/graphql-shield#graphql-yoga
// ...

const permissions = shield({
  Query: {
    fruits: and(isAuthenticated, or(isAdmin, isEditor))
  },
  Mutation: {
    addFruitToBasket: isAuthenticated
  },
  Fruit: isAuthenticated,
  Customer: isAdmin
})

const getEnveloped = envelop({
  plugins: [
    useEngine({ parse, validate, specifiedRules, execute, subscribe }),
    // ... other plugins ...
    useSchema(mySchema),
    useGraphQLMiddleware([permissions])
  ]
})
5.0.3

8 months ago

5.0.2

8 months ago

5.0.1

9 months ago

6.0.0

7 months ago

4.0.5

1 year ago

4.0.6

1 year ago

5.0.0

12 months ago

4.0.4

1 year ago

4.0.1

2 years ago

4.0.0

2 years ago

4.0.3

2 years ago

4.0.2

2 years ago

3.6.0

2 years ago

3.5.0

2 years ago

3.4.0

2 years ago

3.4.2

2 years ago

3.4.1

2 years ago

3.3.4

2 years ago

3.3.3

2 years ago

3.3.2

2 years ago

3.3.1

2 years ago

3.3.0

2 years ago

3.2.0

2 years ago

2.0.0

2 years ago

3.0.0

2 years ago

3.1.0

2 years ago

1.2.0

3 years ago

1.2.1

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago

0.0.1

3 years ago

0.0.0

3 years ago