@commitspark/graphql-api 1.0.0-beta.1 → 1.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +3 -3
  3. package/dist/cjs/client.js +1 -1
  4. package/dist/cjs/client.js.map +1 -1
  5. package/dist/cjs/graphql/errors.js +32 -0
  6. package/dist/cjs/graphql/errors.js.map +1 -0
  7. package/dist/cjs/graphql/queries-mutations-generator.js +10 -8
  8. package/dist/cjs/graphql/queries-mutations-generator.js.map +1 -1
  9. package/dist/cjs/graphql/resolvers/field-resolvers/entry-reference-resolver.js +4 -1
  10. package/dist/cjs/graphql/resolvers/field-resolvers/entry-reference-resolver.js.map +1 -1
  11. package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js +15 -3
  12. package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
  13. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js +10 -13
  14. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js.map +1 -1
  15. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js +5 -6
  16. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js.map +1 -1
  17. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js +5 -4
  18. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js.map +1 -1
  19. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/{query-all-resolver.js → query-every-resolver.js} +4 -4
  20. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js.map +1 -0
  21. package/dist/cjs/graphql/schema-generator.js +7 -2
  22. package/dist/cjs/graphql/schema-generator.js.map +1 -1
  23. package/dist/cjs/graphql/schema-root-type-generator.js +1 -1
  24. package/dist/cjs/graphql/schema-root-type-generator.js.map +1 -1
  25. package/dist/cjs/graphql/schema-utils/entry-reference-util.js +26 -18
  26. package/dist/cjs/graphql/schema-utils/entry-reference-util.js.map +1 -1
  27. package/dist/cjs/graphql/schema-utils/union-type-util.js +9 -4
  28. package/dist/cjs/graphql/schema-utils/union-type-util.js.map +1 -1
  29. package/dist/cjs/index.js +3 -0
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/persistence/persistence.js +11 -14
  32. package/dist/cjs/persistence/persistence.js.map +1 -1
  33. package/dist/esm/client.js +1 -1
  34. package/dist/esm/client.js.map +1 -1
  35. package/dist/esm/graphql/errors.js +28 -0
  36. package/dist/esm/graphql/errors.js.map +1 -0
  37. package/dist/esm/graphql/queries-mutations-generator.js +10 -8
  38. package/dist/esm/graphql/queries-mutations-generator.js.map +1 -1
  39. package/dist/esm/graphql/resolvers/field-resolvers/entry-reference-resolver.js +4 -1
  40. package/dist/esm/graphql/resolvers/field-resolvers/entry-reference-resolver.js.map +1 -1
  41. package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js +15 -3
  42. package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
  43. package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js +11 -14
  44. package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js.map +1 -1
  45. package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js +6 -7
  46. package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js.map +1 -1
  47. package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js +5 -4
  48. package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js.map +1 -1
  49. package/dist/esm/graphql/resolvers/query-mutation-resolvers/{query-all-resolver.js → query-every-resolver.js} +2 -2
  50. package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js.map +1 -0
  51. package/dist/esm/graphql/schema-generator.js +7 -2
  52. package/dist/esm/graphql/schema-generator.js.map +1 -1
  53. package/dist/esm/graphql/schema-root-type-generator.js +1 -1
  54. package/dist/esm/graphql/schema-root-type-generator.js.map +1 -1
  55. package/dist/esm/graphql/schema-utils/entry-reference-util.js +27 -19
  56. package/dist/esm/graphql/schema-utils/entry-reference-util.js.map +1 -1
  57. package/dist/esm/graphql/schema-utils/union-type-util.js +9 -4
  58. package/dist/esm/graphql/schema-utils/union-type-util.js.map +1 -1
  59. package/dist/esm/index.js +2 -0
  60. package/dist/esm/index.js.map +1 -1
  61. package/dist/esm/persistence/persistence.js +11 -14
  62. package/dist/esm/persistence/persistence.js.map +1 -1
  63. package/dist/tsconfig.build.cjs.tsbuildinfo +1 -1
  64. package/dist/tsconfig.build.esm.tsbuildinfo +1 -1
  65. package/dist/tsconfig.build.types.tsbuildinfo +1 -1
  66. package/dist/types/graphql/errors.d.ts +20 -0
  67. package/dist/types/graphql/errors.d.ts.map +1 -0
  68. package/dist/types/graphql/queries-mutations-generator.d.ts +1 -1
  69. package/dist/types/graphql/queries-mutations-generator.d.ts.map +1 -1
  70. package/dist/types/graphql/resolvers/field-resolvers/entry-reference-resolver.d.ts.map +1 -1
  71. package/dist/types/graphql/resolvers/field-resolvers/field-default-value-resolver.d.ts.map +1 -1
  72. package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.d.ts.map +1 -1
  73. package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.d.ts.map +1 -1
  74. package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.d.ts.map +1 -1
  75. package/dist/types/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts +5 -0
  76. package/dist/types/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts.map +1 -0
  77. package/dist/types/graphql/schema-generator.d.ts.map +1 -1
  78. package/dist/types/graphql/schema-utils/entry-reference-util.d.ts.map +1 -1
  79. package/dist/types/graphql/schema-utils/union-type-util.d.ts +2 -2
  80. package/dist/types/graphql/schema-utils/union-type-util.d.ts.map +1 -1
  81. package/dist/types/index.d.ts +2 -1
  82. package/dist/types/index.d.ts.map +1 -1
  83. package/dist/types/persistence/persistence.d.ts.map +1 -1
  84. package/package.json +12 -4
  85. package/src/client.ts +1 -1
  86. package/src/graphql/errors.ts +43 -0
  87. package/src/graphql/queries-mutations-generator.ts +12 -10
  88. package/src/graphql/resolvers/field-resolvers/entry-reference-resolver.ts +8 -1
  89. package/src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts +23 -5
  90. package/src/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.ts +22 -14
  91. package/src/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.ts +12 -8
  92. package/src/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.ts +9 -4
  93. package/src/graphql/resolvers/query-mutation-resolvers/{query-all-resolver.ts → query-every-resolver.ts} +1 -1
  94. package/src/graphql/schema-generator.ts +7 -2
  95. package/src/graphql/schema-root-type-generator.ts +1 -1
  96. package/src/graphql/schema-utils/entry-reference-util.ts +44 -22
  97. package/src/graphql/schema-utils/union-type-util.ts +20 -7
  98. package/src/index.ts +2 -1
  99. package/src/persistence/persistence.ts +13 -15
  100. package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-all-resolver.js.map +0 -1
  101. package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-all-resolver.js.map +0 -1
  102. package/dist/types/graphql/resolvers/query-mutation-resolvers/query-all-resolver.d.ts +0 -5
  103. package/dist/types/graphql/resolvers/query-mutation-resolvers/query-all-resolver.d.ts.map +0 -1
@@ -4,7 +4,7 @@ import { GraphQLFieldResolver, GraphQLObjectType } from 'graphql';
4
4
  export declare function generateQueriesAndMutations(entryDirectiveTypes: GraphQLObjectType[]): GeneratedSchema[];
5
5
  export declare function generateTypeNameQuery(): GeneratedQuery<Promise<string>>;
6
6
  export interface GeneratedSchema {
7
- queryAll: GeneratedQuery<Promise<EntryData[]>>;
7
+ queryEvery: GeneratedQuery<Promise<EntryData[]>>;
8
8
  queryById: GeneratedQuery<Promise<EntryData>>;
9
9
  createMutation: GeneratedQuery<Promise<EntryData>>;
10
10
  updateMutation: GeneratedQuery<Promise<EntryData>>;
@@ -1 +1 @@
1
- {"version":3,"file":"queries-mutations-generator.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries-mutations-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AASjE,wBAAgB,2BAA2B,CACzC,mBAAmB,EAAE,iBAAiB,EAAE,GACvC,eAAe,EAAE,CAiGnB;AAED,wBAAgB,qBAAqB,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CASvE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAC9C,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAC7C,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAClD,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAClD,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;CACnD;AAED,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;CAC3D"}
1
+ {"version":3,"file":"queries-mutations-generator.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries-mutations-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AASjE,wBAAgB,2BAA2B,CACzC,mBAAmB,EAAE,iBAAiB,EAAE,GACvC,eAAe,EAAE,CAmGnB;AAED,wBAAgB,qBAAqB,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CASvE;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAChD,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAC7C,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAClD,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAClD,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;CACnD;AAED,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;CAC3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"entry-reference-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/entry-reference-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwB,MAAM,SAAS,CAAA;AAI7D,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,GAAG,CAiBpD,CAAA"}
1
+ {"version":3,"file":"entry-reference-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/entry-reference-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwB,MAAM,SAAS,CAAA;AAK7D,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,GAAG,CAuBpD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"field-default-value-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA2C,MAAM,SAAS,CAAA;AAkBhF,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,GAAG,CAwFvD,CAAA"}
1
+ {"version":3,"file":"field-default-value-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA2C,MAAM,SAAS,CAAA;AAmBhF,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,GAAG,CAyGvD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-create-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,oBAAoB,EAAgB,MAAM,SAAS,CAAA;AAE1E,OAAO,EAEL,SAAS,EAEV,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAEvD,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CACvD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,CAAC,CA6FnB,CAAA"}
1
+ {"version":3,"file":"mutation-create-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAgB,MAAM,SAAS,CAAA;AAE5D,OAAO,EAEL,SAAS,EAEV,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAGvD,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CACvD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,CAAC,CAoGnB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-delete-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,SAAS,EAAc,MAAM,0BAA0B,CAAA;AAEvE,OAAO,EAAgB,oBAAoB,EAAgB,MAAM,SAAS,CAAA;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAEvD,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CACvD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,CAAC,CAsEnB,CAAA"}
1
+ {"version":3,"file":"mutation-delete-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,SAAS,EAAc,MAAM,0BAA0B,CAAA;AAEvE,OAAO,EAAE,oBAAoB,EAAgB,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAGvD,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CACvD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,CAAC,CAyEnB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-update-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAgB,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAc,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAYvD,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CACvD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,CAAC,CA6FnB,CAAA"}
1
+ {"version":3,"file":"mutation-update-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAgB,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAc,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAavD,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,CACvD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,CAAC,CAiGnB,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { EntryData } from '@commitspark/git-adapter';
2
+ import { GraphQLFieldResolver } from 'graphql';
3
+ import { QueryMutationResolverContext } from '../types';
4
+ export declare const queryEveryResolver: GraphQLFieldResolver<any, QueryMutationResolverContext, any, Promise<EntryData[]>>;
5
+ //# sourceMappingURL=query-every-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-every-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/query-every-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAEvD,eAAO,MAAM,kBAAkB,EAAE,oBAAoB,CACnD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,EAAE,CAAC,CAWrB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema-generator.d.ts","sourceRoot":"","sources":["../../../src/graphql/schema-generator.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,2BAA2B,EAE5B,MAAM,uBAAuB,CAAA;AAU9B,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAMzC,wBAAsB,cAAc,CAClC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,2BAA2B,CAAC,CAmItC"}
1
+ {"version":3,"file":"schema-generator.d.ts","sourceRoot":"","sources":["../../../src/graphql/schema-generator.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,2BAA2B,EAE5B,MAAM,uBAAuB,CAAA;AAU9B,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAOzC,wBAAsB,cAAc,CAClC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,2BAA2B,CAAC,CAuItC"}
@@ -1 +1 @@
1
- {"version":3,"file":"entry-reference-util.d.ts","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,EAKlB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAsF5C,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,GAAG,GACR,OAAO,CAAC,MAAM,EAAE,CAAC,CA2EnB"}
1
+ {"version":3,"file":"entry-reference-util.d.ts","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAKlB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAmG5C,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,GAAG,GACR,OAAO,CAAC,MAAM,EAAE,CAAC,CAqFnB"}
@@ -1,4 +1,4 @@
1
1
  import { EntryData } from '@commitspark/git-adapter';
2
- export declare function getUnionTypeNameFromFieldValue(fieldValue: any): string;
3
- export declare function getUnionValue(fieldValue: any): EntryData;
2
+ export declare function getUnionTypeNameFromFieldValue(fieldValue: unknown): string;
3
+ export declare function getUnionValue(fieldValue: unknown): EntryData;
4
4
  //# sourceMappingURL=union-type-util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"union-type-util.d.ts","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/union-type-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,GAAG,GAAG,MAAM,CAQtE;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,GAAG,GAAG,SAAS,CAOxD"}
1
+ {"version":3,"file":"union-type-util.d.ts","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/union-type-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAGpD,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAc1E;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,OAAO,GAAG,SAAS,CAa5D"}
@@ -1,9 +1,10 @@
1
1
  import { ApolloExecuteOperationRequest, GraphQLResponse, SchemaResponse, VariableValues } from './client';
2
2
  import { GitAdapter } from '@commitspark/git-adapter';
3
+ import { ErrorCode, ErrorMetadata } from './graphql/errors';
3
4
  interface Client {
4
5
  postGraphQL<TData = Record<string, unknown>, TVariables extends VariableValues = VariableValues>(ref: string, request: ApolloExecuteOperationRequest<TData, TVariables>): Promise<GraphQLResponse<TData | null>>;
5
6
  getSchema(ref: string): Promise<SchemaResponse>;
6
7
  }
7
- export { Client, GraphQLResponse, SchemaResponse };
8
+ export { Client, GraphQLResponse, SchemaResponse, ErrorCode, ErrorMetadata };
8
9
  export declare function createClient(gitAdapter: GitAdapter): Promise<Client>;
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAE7B,eAAe,EAEf,cAAc,EACd,cAAc,EACf,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,UAAU,MAAM;IACd,WAAW,CACT,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,UAAU,SAAS,cAAc,GAAG,cAAc,EAElD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,6BAA6B,CAAC,KAAK,EAAE,UAAU,CAAC,GACxD,OAAO,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAA;IACzC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;CAChD;AAED,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA;AAElD,wBAAsB,YAAY,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAK1E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAE7B,eAAe,EAEf,cAAc,EACd,cAAc,EACf,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAE3D,UAAU,MAAM;IACd,WAAW,CACT,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,UAAU,SAAS,cAAc,GAAG,cAAc,EAElD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,6BAA6B,CAAC,KAAK,EAAE,UAAU,CAAC,GACxD,OAAO,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAA;IACzC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;CAChD;AAED,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,CAAA;AAE5E,wBAAsB,YAAY,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAK1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../src/persistence/persistence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAG5D,wBAAsB,WAAW,CAC/B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,KAAK,CAAC,CAYhB;AAED,wBAAsB,UAAU,CAC9B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,KAAK,EAAE,CAAC,CAGlB;AAED,wBAAsB,YAAY,CAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,KAAK,CAAC,CAkBhB"}
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../src/persistence/persistence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAG5D,wBAAsB,WAAW,CAC/B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,KAAK,CAAC,CAWhB;AAED,wBAAsB,UAAU,CAC9B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,KAAK,EAAE,CAAC,CAGlB;AAED,wBAAsB,YAAY,CAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,KAAK,CAAC,CAkBhB"}
package/package.json CHANGED
@@ -1,7 +1,15 @@
1
1
  {
2
2
  "name": "@commitspark/graphql-api",
3
- "description": "GraphQL API for Commitspark",
4
- "version": "1.0.0-beta.1",
3
+ "description": "GraphQL API to store and manage structured data with Git",
4
+ "keywords": [
5
+ "graphql",
6
+ "graphql-api",
7
+ "graphql-schema",
8
+ "git",
9
+ "gitops",
10
+ "api"
11
+ ],
12
+ "version": "1.0.0-beta.3",
5
13
  "license": "ISC",
6
14
  "private": false,
7
15
  "files": [
@@ -34,8 +42,8 @@
34
42
  "prepublishOnly": "npm run build"
35
43
  },
36
44
  "dependencies": {
37
- "@apollo/server": "^5.0.0",
38
- "@commitspark/git-adapter": "^0.13.0",
45
+ "@apollo/server": "~5.0.0",
46
+ "@commitspark/git-adapter": "^0.20.0",
39
47
  "@graphql-tools/schema": "^9.0.0",
40
48
  "@graphql-tools/utils": "^9.0.0"
41
49
  },
package/src/client.ts CHANGED
@@ -86,7 +86,7 @@ export const getSchema = async (
86
86
 
87
87
  const typeDefinitionStrings = (await generateSchema(context)).typeDefs
88
88
  if (!Array.isArray(typeDefinitionStrings)) {
89
- throw new Error('Unknown element')
89
+ throw new Error('Expected array of typeDefinition strings.')
90
90
  }
91
91
 
92
92
  return {
@@ -0,0 +1,43 @@
1
+ import { GraphQLError } from 'graphql'
2
+
3
+ export enum ErrorCode {
4
+ BAD_USER_INPUT = 'BAD_USER_INPUT',
5
+ NOT_FOUND = 'NOT_FOUND',
6
+ BAD_REPOSITORY_DATA = 'BAD_REPOSITORY_DATA',
7
+ SCHEMA_DATA_MISMATCH = 'SCHEMA_DATA_MISMATCH',
8
+ BAD_SCHEMA = 'BAD_SCHEMA',
9
+ INTERNAL_ERROR = 'INTERNAL_ERROR',
10
+ IN_USE = 'IN_USE',
11
+ }
12
+
13
+ export interface ErrorMetadata {
14
+ typeName?: string
15
+ fieldName?: string
16
+ fieldValue?: unknown
17
+ argumentName?: string
18
+ argumentValue?: unknown
19
+ schema?: string
20
+ }
21
+
22
+ export const createError = (
23
+ message: string,
24
+ code: ErrorCode,
25
+ metaData: ErrorMetadata,
26
+ ): GraphQLError => {
27
+ const serializedFieldValue =
28
+ typeof metaData.fieldValue === 'object' ||
29
+ Array.isArray(metaData.fieldValue)
30
+ ? JSON.stringify(metaData.fieldValue)
31
+ : metaData.fieldValue
32
+ const updatedMetaData = { ...metaData }
33
+ if (serializedFieldValue !== undefined) {
34
+ updatedMetaData.fieldValue = serializedFieldValue
35
+ }
36
+
37
+ return new GraphQLError(message, {
38
+ extensions: {
39
+ code: code,
40
+ commitspark: updatedMetaData,
41
+ },
42
+ })
43
+ }
@@ -1,7 +1,7 @@
1
1
  import { EntryData } from '@commitspark/git-adapter'
2
2
  import { ApolloContext } from '../client'
3
3
  import { GraphQLFieldResolver, GraphQLObjectType } from 'graphql'
4
- import { queryAllResolver } from './resolvers/query-mutation-resolvers/query-all-resolver'
4
+ import { queryEveryResolver } from './resolvers/query-mutation-resolvers/query-every-resolver'
5
5
  import { queryByIdResolver } from './resolvers/query-mutation-resolvers/query-by-id-resolver'
6
6
  import { mutationCreateResolver } from './resolvers/query-mutation-resolvers/mutation-create-resolver'
7
7
  import { mutationUpdateResolver } from './resolvers/query-mutation-resolvers/mutation-update-resolver'
@@ -15,15 +15,17 @@ export function generateQueriesAndMutations(
15
15
  return entryDirectiveTypes.map((objectType): GeneratedSchema => {
16
16
  const typeName = objectType.name
17
17
 
18
- const queryAllName = `all${typeName}s`
19
- const queryAllString = `${queryAllName}: [${objectType.name}!]`
20
- const queryAllResolverFunc: GraphQLFieldResolver<
18
+ // The semantics of `every` aren't a perfect replacement of `all` but this way we don't need to do non-trivial
19
+ // pluralization of user-provided typeName
20
+ const queryEveryName = `every${typeName}`
21
+ const queryEveryString = `${queryEveryName}: [${objectType.name}!]`
22
+ const queryEveryResolverFunc: GraphQLFieldResolver<
21
23
  any,
22
24
  ApolloContext,
23
25
  any,
24
26
  Promise<EntryData[]>
25
27
  > = (source, args, context, info) =>
26
- queryAllResolver(source, args, { ...context, type: objectType }, info)
28
+ queryEveryResolver(source, args, { ...context, type: objectType }, info)
27
29
 
28
30
  const queryByIdName = typeName
29
31
  const queryByIdString = `${queryByIdName}(id: ID!): ${objectType.name}`
@@ -81,10 +83,10 @@ export function generateQueriesAndMutations(
81
83
  )
82
84
 
83
85
  return {
84
- queryAll: {
85
- name: queryAllName,
86
- schemaString: queryAllString,
87
- resolver: queryAllResolverFunc,
86
+ queryEvery: {
87
+ name: queryEveryName,
88
+ schemaString: queryEveryString,
89
+ resolver: queryEveryResolverFunc,
88
90
  },
89
91
  queryById: {
90
92
  name: queryByIdName,
@@ -122,7 +124,7 @@ export function generateTypeNameQuery(): GeneratedQuery<Promise<string>> {
122
124
  }
123
125
 
124
126
  export interface GeneratedSchema {
125
- queryAll: GeneratedQuery<Promise<EntryData[]>>
127
+ queryEvery: GeneratedQuery<Promise<EntryData[]>>
126
128
  queryById: GeneratedQuery<Promise<EntryData>>
127
129
  createMutation: GeneratedQuery<Promise<EntryData>>
128
130
  updateMutation: GeneratedQuery<Promise<EntryData>>
@@ -1,6 +1,7 @@
1
1
  import { FieldResolver, FieldResolverContext } from './types'
2
2
  import { GraphQLResolveInfo, isNamedType } from 'graphql'
3
3
  import { findById } from '../../../persistence/persistence'
4
+ import { createError, ErrorCode } from '../../errors'
4
5
 
5
6
  export const resolveEntryReference: FieldResolver<any> = async (
6
7
  fieldValue: any,
@@ -9,7 +10,13 @@ export const resolveEntryReference: FieldResolver<any> = async (
9
10
  info: GraphQLResolveInfo,
10
11
  ) => {
11
12
  if (!isNamedType(context.currentType)) {
12
- throw new Error(`Expected context.currentType type to be named type`)
13
+ throw createError(
14
+ `Expected context.currentType type to be a named type.`,
15
+ ErrorCode.INTERNAL_ERROR,
16
+ {
17
+ fieldValue: fieldValue,
18
+ },
19
+ )
13
20
  }
14
21
 
15
22
  const entry = await findById(
@@ -15,6 +15,7 @@ import {
15
15
  } from '../../schema-utils/entry-type-util'
16
16
  import { resolveEntryReference } from './entry-reference-resolver'
17
17
  import { resolveUnionValue } from './union-value-resolver'
18
+ import { createError, ErrorCode } from '../../errors'
18
19
 
19
20
  export const resolveFieldDefaultValue: FieldResolver<any> = async (
20
21
  fieldValue: any,
@@ -44,8 +45,13 @@ export const resolveFieldDefaultValue: FieldResolver<any> = async (
44
45
  }
45
46
 
46
47
  if (!Array.isArray(fieldValue)) {
47
- throw new Error(
48
+ throw createError(
48
49
  `Expected array while resolving value for field "${info.fieldName}".`,
50
+ ErrorCode.SCHEMA_DATA_MISMATCH,
51
+ {
52
+ fieldName: info.fieldName,
53
+ fieldValue: fieldValue,
54
+ },
49
55
  )
50
56
  }
51
57
 
@@ -68,12 +74,17 @@ export const resolveFieldDefaultValue: FieldResolver<any> = async (
68
74
  } else if (isUnionType(context.currentType)) {
69
75
  if (fieldValue === undefined || fieldValue === null) {
70
76
  if (context.hasNonNullParent) {
71
- throw new Error(
77
+ throw createError(
72
78
  `Cannot generate a default value for NonNull field "${
73
79
  info.parentType.name
74
80
  }.${info.fieldName}" because it is a union field of type "${
75
81
  (info.returnType as GraphQLNonNull<GraphQLUnionType>).ofType.name
76
- }".`,
82
+ }". Set a value in your repository data or remove the NonNull declaration in your schema.`,
83
+ ErrorCode.BAD_REPOSITORY_DATA,
84
+ {
85
+ typeName: info.parentType.name,
86
+ fieldName: info.fieldName,
87
+ },
77
88
  )
78
89
  } else {
79
90
  return new Promise((resolve) => resolve(null))
@@ -88,8 +99,15 @@ export const resolveFieldDefaultValue: FieldResolver<any> = async (
88
99
  } else if (isObjectType(context.currentType)) {
89
100
  if (fieldValue === undefined || fieldValue === null) {
90
101
  if (context.hasNonNullParent) {
91
- throw new Error(
92
- `Cannot generate a default value for NonNull field "${info.fieldName}" of type "${info.parentType.name}".`,
102
+ throw createError(
103
+ `Cannot generate a default value for NonNull field "${info.fieldName}" of type ` +
104
+ `"${info.parentType.name}". Set a value in your repository data or remove the NonNull ` +
105
+ `declaration in your schema.`,
106
+ ErrorCode.BAD_REPOSITORY_DATA,
107
+ {
108
+ typeName: info.parentType.name,
109
+ fieldName: info.fieldName,
110
+ },
93
111
  )
94
112
  } else {
95
113
  return new Promise((resolve) => resolve(null))
@@ -1,5 +1,5 @@
1
1
  import { findById, findByTypeId } from '../../../persistence/persistence'
2
- import { GraphQLError, GraphQLFieldResolver, isObjectType } from 'graphql'
2
+ import { GraphQLFieldResolver, isObjectType } from 'graphql'
3
3
  import { getReferencedEntryIds } from '../../schema-utils/entry-reference-util'
4
4
  import {
5
5
  ENTRY_ID_INVALID_CHARACTERS,
@@ -7,6 +7,7 @@ import {
7
7
  EntryDraft,
8
8
  } from '@commitspark/git-adapter'
9
9
  import { QueryMutationResolverContext } from '../types'
10
+ import { createError, ErrorCode } from '../../errors'
10
11
 
11
12
  export const mutationCreateResolver: GraphQLFieldResolver<
12
13
  any,
@@ -14,19 +15,24 @@ export const mutationCreateResolver: GraphQLFieldResolver<
14
15
  any,
15
16
  Promise<EntryData>
16
17
  > = async (source, args, context, info) => {
17
- if (!isObjectType(info.returnType)) {
18
- throw new Error('Expected to create an ObjectType')
18
+ if (!isObjectType(context.type)) {
19
+ throw createError(
20
+ `Entry of type "${context.type.name}" cannot be created as is not an ObjectType.`,
21
+ ErrorCode.INTERNAL_ERROR,
22
+ {},
23
+ )
19
24
  }
20
25
 
21
26
  const idValidationResult = args.id.match(ENTRY_ID_INVALID_CHARACTERS)
22
27
  if (idValidationResult) {
23
- throw new GraphQLError(
24
- `"id" contains invalid characters "${idValidationResult.join(', ')}"`,
28
+ throw createError(
29
+ `Field "id" contains invalid characters "${idValidationResult.join(
30
+ ', ',
31
+ )}".`,
32
+ ErrorCode.BAD_USER_INPUT,
25
33
  {
26
- extensions: {
27
- code: 'BAD_USER_INPUT',
28
- argumentName: 'id',
29
- },
34
+ argumentName: 'id',
35
+ argumentValue: args.id,
30
36
  },
31
37
  )
32
38
  }
@@ -42,16 +48,18 @@ export const mutationCreateResolver: GraphQLFieldResolver<
42
48
  /* empty */
43
49
  }
44
50
  if (existingEntry) {
45
- throw new GraphQLError(`An entry with id "${args.id}" already exists`, {
46
- extensions: {
47
- code: 'BAD_USER_INPUT',
51
+ throw createError(
52
+ `An entry with id "${args.id}" already exists.`,
53
+ ErrorCode.BAD_USER_INPUT,
54
+ {
48
55
  argumentName: 'id',
56
+ argumentValue: args.id,
49
57
  },
50
- })
58
+ )
51
59
  }
52
60
 
53
61
  const referencedEntryIds = await getReferencedEntryIds(
54
- info.returnType,
62
+ context.type,
55
63
  context,
56
64
  null,
57
65
  info.returnType,
@@ -1,8 +1,9 @@
1
1
  import { findById, findByTypeId } from '../../../persistence/persistence'
2
2
  import { Entry, EntryData, EntryDraft } from '@commitspark/git-adapter'
3
3
  import { getReferencedEntryIds } from '../../schema-utils/entry-reference-util'
4
- import { GraphQLError, GraphQLFieldResolver, isObjectType } from 'graphql'
4
+ import { GraphQLFieldResolver, isObjectType } from 'graphql'
5
5
  import { QueryMutationResolverContext } from '../types'
6
+ import { createError, ErrorCode } from '../../errors'
6
7
 
7
8
  export const mutationDeleteResolver: GraphQLFieldResolver<
8
9
  any,
@@ -21,20 +22,23 @@ export const mutationDeleteResolver: GraphQLFieldResolver<
21
22
  const otherIds = entry.metadata.referencedBy
22
23
  .map((referenceId) => `"${referenceId}"`)
23
24
  .join(', ')
24
- throw new GraphQLError(
25
- `Entry with id "${args.id}" is referenced by other entries: [${otherIds}]`,
25
+ throw createError(
26
+ `Entry with ID "${args.id}" is still referenced by entries [${otherIds}].`,
27
+ ErrorCode.IN_USE,
26
28
  {
27
- extensions: {
28
- code: 'IN_USE',
29
- argumentName: 'id',
30
- },
29
+ argumentName: 'id',
30
+ argumentValue: args.id,
31
31
  },
32
32
  )
33
33
  }
34
34
 
35
35
  const entryType = info.schema.getType(context.type.name)
36
36
  if (!isObjectType(entryType)) {
37
- throw new Error('Expected to delete an ObjectType')
37
+ throw createError(
38
+ `Type "${context.type.name}" is not an ObjectType.`,
39
+ ErrorCode.INTERNAL_ERROR,
40
+ {},
41
+ )
38
42
  }
39
43
 
40
44
  const referencedEntryIds = await getReferencedEntryIds(
@@ -3,6 +3,7 @@ import { getReferencedEntryIds } from '../../schema-utils/entry-reference-util'
3
3
  import { GraphQLFieldResolver, isObjectType } from 'graphql'
4
4
  import { EntryData, EntryDraft } from '@commitspark/git-adapter'
5
5
  import { QueryMutationResolverContext } from '../types'
6
+ import { createError, ErrorCode } from '../../errors'
6
7
 
7
8
  function mergeData(
8
9
  existingEntryData: EntryData,
@@ -20,8 +21,12 @@ export const mutationUpdateResolver: GraphQLFieldResolver<
20
21
  any,
21
22
  Promise<EntryData>
22
23
  > = async (source, args, context, info) => {
23
- if (!isObjectType(info.returnType)) {
24
- throw new Error('Expected to update an ObjectType')
24
+ if (!isObjectType(context.type)) {
25
+ throw createError(
26
+ `Type "${context.type.name}" cannot be mutated as is not an ObjectType.`,
27
+ ErrorCode.INTERNAL_ERROR,
28
+ {},
29
+ )
25
30
  }
26
31
 
27
32
  const existingEntry = await findByTypeId(
@@ -32,7 +37,7 @@ export const mutationUpdateResolver: GraphQLFieldResolver<
32
37
  )
33
38
 
34
39
  const existingReferencedEntryIds = await getReferencedEntryIds(
35
- info.returnType,
40
+ context.type,
36
41
  context,
37
42
  null,
38
43
  info.returnType,
@@ -41,7 +46,7 @@ export const mutationUpdateResolver: GraphQLFieldResolver<
41
46
 
42
47
  const mergedData = mergeData(existingEntry.data ?? null, args.data)
43
48
  const updatedReferencedEntryIds = await getReferencedEntryIds(
44
- info.returnType,
49
+ context.type,
45
50
  context,
46
51
  null,
47
52
  info.returnType,
@@ -3,7 +3,7 @@ import { findByType } from '../../../persistence/persistence'
3
3
  import { GraphQLFieldResolver } from 'graphql'
4
4
  import { QueryMutationResolverContext } from '../types'
5
5
 
6
- export const queryAllResolver: GraphQLFieldResolver<
6
+ export const queryEveryResolver: GraphQLFieldResolver<
7
7
  any,
8
8
  QueryMutationResolverContext,
9
9
  any,
@@ -20,6 +20,7 @@ import { GraphQLFieldResolver, GraphQLTypeResolver } from 'graphql'
20
20
  import { getValidationResult } from './schema-validator'
21
21
  import { EntryData } from '@commitspark/git-adapter'
22
22
  import { createObjectTypeFieldResolvers } from './resolvers/object-type-field-default-value-resolver-generator'
23
+ import { createError, ErrorCode } from './errors'
23
24
 
24
25
  export async function generateSchema(
25
26
  context: ApolloContext,
@@ -33,7 +34,10 @@ export async function generateSchema(
33
34
 
34
35
  const validationResult = getValidationResult(schema)
35
36
  if (validationResult.length > 0) {
36
- throw new Error(validationResult.join('\n'))
37
+ throw createError(`Invalid schema.`, ErrorCode.BAD_SCHEMA, {
38
+ schema: printSchemaWithDirectives(schema),
39
+ argumentValue: validationResult.join('\n'),
40
+ })
37
41
  }
38
42
  const schemaAnalyzerResult = analyzeSchema(schema)
39
43
 
@@ -99,7 +103,8 @@ ${generatedSchemaRootTypeStrings}`
99
103
  > = {}
100
104
 
101
105
  for (const element of generatedQueriesMutations) {
102
- generatedQueryResolvers[element.queryAll.name] = element.queryAll.resolver
106
+ generatedQueryResolvers[element.queryEvery.name] =
107
+ element.queryEvery.resolver
103
108
  generatedQueryResolvers[element.queryById.name] = element.queryById.resolver
104
109
  generatedMutationResolvers[element.createMutation.name] =
105
110
  element.createMutation.resolver
@@ -7,7 +7,7 @@ export function generateSchemaRootTypeStrings(
7
7
  return (
8
8
  `type Query {\n` +
9
9
  generatedSchemas
10
- .map((generated) => ' ' + generated.queryAll.schemaString)
10
+ .map((generated) => ' ' + generated.queryEvery.schemaString)
11
11
  .join('\n') +
12
12
  '\n' +
13
13
  generatedSchemas