https://github.com/qlaffont/unify-mercurius
Mercurius error formater with unify-errors
https://github.com/qlaffont/unify-mercurius
fastify graphql mercurius typescript unify-errors
Last synced: 7 days ago
JSON representation
Mercurius error formater with unify-errors
- Host: GitHub
- URL: https://github.com/qlaffont/unify-mercurius
- Owner: qlaffont
- License: mit
- Created: 2022-04-21T12:44:21.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-05-13T22:05:34.000Z (8 days ago)
- Last Synced: 2025-05-14T00:07:00.213Z (8 days ago)
- Topics: fastify, graphql, mercurius, typescript, unify-errors
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/unify-mercurius
- Size: 1.94 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://codeclimate.com/github/qlaffont/unify-mercurius/test_coverage)
[](https://codeclimate.com/github/qlaffont/unify-mercurius/maintainability)
   
# Unify MercuriusA Mercurius plugin wrapping [unify-errors](https://github.com/qlaffont/unify-errors) to handle REST errors. Old Owner: [@flexper](https://github.com/flexper)
## Install
```sh
npm i unify-mercurius
# Or
yarn add unify-mercurius
# Or
pnpm add unify-mercurius
```## Use
```javascript
'use strict'const Fastify = require('fastify')
const mercurius = require('mercurius')
const { unifyMercuriusErrorFormatter } = require('unify-mercurius')const app = Fastify()
const schema = `
type Query {
add(x: Int, y: Int): Int
}
`const resolvers = {
Query: {
add: async (_, { x, y }) => x + y
}
}app.register(mercurius, {
schema,
resolvers,
errorFormatter: unifyMercuriusErrorFormatter()
})app.get('/', async function (req, reply) {
const query = '{ add(x: 2, y: 2) }'
return reply.graphql(query)
})app.listen(3000)
```
## Plugin options
| name | default | description |
| ---------------- | ------- | ----------------------------------------------------------------- |
| _disableDetails_ | false | If true will remove the originalError key from the error response |
| _disableLog_ | false | Disable logging on error |## Tests
To execute jest tests (all errors, type integrity test)
```bash
pnpm test
```## Maintain
This package use [TSdx](https://github.com/jaredpalmer/tsdx). Please check documentation to update this package.