diff --git a/README.md b/README.md index da9af99..be0fdb7 100644 --- a/README.md +++ b/README.md @@ -78,8 +78,10 @@ Witness glorious simplicity: "message":"A foo error has occurred", "name":"FooError", "time_thrown":"2016-11-11T00:40:50.954Z", - "data":{ - "something": "important" + "extensions" : { + "data": { + "something": "important" + } } } ] diff --git a/src/index.ts b/src/index.ts index 683c776..ae713a7 100644 --- a/src/index.ts +++ b/src/index.ts @@ -17,11 +17,13 @@ export interface ErrorConfig { export interface ErrorInfo { message: string; - name: string; - time_thrown: string; - data?: object; path?: string; locations?: any; + extensions?: { + name: string; + time_thrown: string; + data?: object; + }; } export class ApolloError extends ExtendableError { @@ -68,11 +70,13 @@ export class ApolloError extends ExtendableError { let error: ErrorInfo = { message, - name, - time_thrown, - data, path, - locations + locations, + extensions: { + name, + time_thrown, + data + } }; if (_showLocations) { diff --git a/test/spec.js b/test/spec.js index 4b2df72..2807fa2 100644 --- a/test/spec.js +++ b/test/spec.js @@ -31,7 +31,7 @@ describe('createError', () => { }, }); - const { message, name, time_thrown, data } = e.serialize(); + const { message, extensions: { name, time_thrown, data } } = e.serialize(); expect(message).to.equal('A foo 2.0 error has occurred'); expect(name).to.equal('FooError'); expect(time_thrown).to.equal(e.time_thrown); @@ -53,7 +53,7 @@ describe('createError', () => { }); const e = new FooError({data: {foo: 'bar'}}); - const { message, name, time_thrown, data } = e.serialize(); + const { message, extensions: { name, time_thrown, data } } = e.serialize(); expect(message).to.equal('A foo error has occurred'); expect(name).to.equal('FooError'); expect(time_thrown).to.equal(e.time_thrown);