Socket
Socket
Sign inDemoInstall

@envelop/core

Package Overview
Dependencies
Maintainers
1
Versions
1362
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@envelop/core - npm Package Compare versions

Comparing version 0.2.0 to 0.2.1

plugins/use-masked-errors.d.ts

30

index.cjs.js

@@ -555,2 +555,29 @@ 'use strict';

class EnvelopError extends graphql.GraphQLError {
constructor(message, extensions) {
super(message, undefined, undefined, undefined, undefined, undefined, extensions);
}
}
const formatError = err => {
if (err.originalError && err.originalError instanceof EnvelopError === false) {
return new graphql.GraphQLError('Unexpected error.', err.nodes, err.source, err.positions, err.path, undefined);
}
return err;
};
const useMaskedErrors = (opts) => {
var _a;
const format = (_a = opts === null || opts === void 0 ? void 0 : opts.formatError) !== null && _a !== void 0 ? _a : formatError;
return {
onExecute: () => {
return {
onExecuteDone: ({ result, setResult }) => {
if (result.errors != null) {
setResult({ ...result, errors: result.errors.map(error => format(error)) });
}
},
};
},
};
};
Object.keys(types).forEach(function (k) {

@@ -564,6 +591,9 @@ if (k !== 'default') Object.defineProperty(exports, k, {

});
exports.EnvelopError = EnvelopError;
exports.envelop = envelop;
exports.formatError = formatError;
exports.useErrorHandler = useErrorHandler;
exports.useExtendContext = useExtendContext;
exports.useLogger = useLogger;
exports.useMaskedErrors = useMaskedErrors;
exports.usePayloadFormatter = usePayloadFormatter;

@@ -570,0 +600,0 @@ exports.useSchema = useSchema;

1

index.d.ts

@@ -9,1 +9,2 @@ export * from '@envelop/types';

export * from './plugins/use-payload-formatter';
export * from './plugins/use-masked-errors';
export * from '@envelop/types';
import { parse, specifiedRules, validate, execute, isIntrospectionType, isObjectType, defaultFieldResolver, GraphQLSchema, subscribe, getOperationAST } from 'graphql';
import { parse, specifiedRules, validate, execute, isIntrospectionType, isObjectType, defaultFieldResolver, GraphQLSchema, subscribe, getOperationAST, GraphQLError } from 'graphql';

@@ -551,3 +551,30 @@ const trackedSchemaSymbol = Symbol('TRACKED_SCHEMA');

export { envelop, useErrorHandler, useExtendContext, useLogger, usePayloadFormatter, useSchema, useTiming };
class EnvelopError extends GraphQLError {
constructor(message, extensions) {
super(message, undefined, undefined, undefined, undefined, undefined, extensions);
}
}
const formatError = err => {
if (err.originalError && err.originalError instanceof EnvelopError === false) {
return new GraphQLError('Unexpected error.', err.nodes, err.source, err.positions, err.path, undefined);
}
return err;
};
const useMaskedErrors = (opts) => {
var _a;
const format = (_a = opts === null || opts === void 0 ? void 0 : opts.formatError) !== null && _a !== void 0 ? _a : formatError;
return {
onExecute: () => {
return {
onExecuteDone: ({ result, setResult }) => {
if (result.errors != null) {
setResult({ ...result, errors: result.errors.map(error => format(error)) });
}
},
};
},
};
};
export { EnvelopError, envelop, formatError, useErrorHandler, useExtendContext, useLogger, useMaskedErrors, usePayloadFormatter, useSchema, useTiming };
//# sourceMappingURL=index.esm.js.map

2

package.json
{
"name": "@envelop/core",
"version": "0.2.0",
"version": "0.2.1",
"sideEffects": false,

@@ -5,0 +5,0 @@ "peerDependencies": {

@@ -129,1 +129,41 @@ ## `@envelop/core`

```
#### `useMaskedErrors`
Prevent unexpected error messages from leaking to the GraphQL clients.
```ts
import { envelop, useSchema } from '@envelop/core';
import { useMaskedErrors, EnvelopError } from '@envelop/masked-errors';
import { makeExecutableSchema } from 'graphql';
const schema = makeExecutableSchema({
typeDefs: /* GraphQL */ `
type Query {
something: String!
somethingElse: String!
somethingSpecial: String!
}
`,
resolvers: {
Query: {
something: () => {
throw new EnvelopError('Error that is propagated to the clients.');
},
somethingElse: () => {
throw new Error("Unsafe error that will be masked as 'Unexpected Error.'.");
},
somethingSpecial: () => {
throw new EnvelopError('The error will have an extensions field.', {
code: 'ERR_CODE',
randomNumber: 123,
});
},
},
},
});
const getEnveloped = envelop({
plugins: [useSchema(schema), useMaskedErrors()],
});
```

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc