@commitspark/graphql-api 1.0.0-beta.1 → 1.0.0-beta.2
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.
- package/CHANGELOG.md +7 -0
- package/README.md +3 -3
- package/dist/cjs/client.js +1 -1
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/graphql/errors.js +32 -0
- package/dist/cjs/graphql/errors.js.map +1 -0
- package/dist/cjs/graphql/queries-mutations-generator.js +10 -8
- package/dist/cjs/graphql/queries-mutations-generator.js.map +1 -1
- package/dist/cjs/graphql/resolvers/field-resolvers/entry-reference-resolver.js +4 -1
- package/dist/cjs/graphql/resolvers/field-resolvers/entry-reference-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js +15 -3
- package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js +10 -13
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js +5 -6
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js +5 -4
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/{query-all-resolver.js → query-every-resolver.js} +4 -4
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js.map +1 -0
- package/dist/cjs/graphql/schema-generator.js +7 -2
- package/dist/cjs/graphql/schema-generator.js.map +1 -1
- package/dist/cjs/graphql/schema-root-type-generator.js +1 -1
- package/dist/cjs/graphql/schema-root-type-generator.js.map +1 -1
- package/dist/cjs/graphql/schema-utils/entry-reference-util.js +26 -18
- package/dist/cjs/graphql/schema-utils/entry-reference-util.js.map +1 -1
- package/dist/cjs/graphql/schema-utils/union-type-util.js +9 -4
- package/dist/cjs/graphql/schema-utils/union-type-util.js.map +1 -1
- package/dist/cjs/index.js +3 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/persistence/persistence.js +11 -14
- package/dist/cjs/persistence/persistence.js.map +1 -1
- package/dist/esm/client.js +1 -1
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/graphql/errors.js +28 -0
- package/dist/esm/graphql/errors.js.map +1 -0
- package/dist/esm/graphql/queries-mutations-generator.js +10 -8
- package/dist/esm/graphql/queries-mutations-generator.js.map +1 -1
- package/dist/esm/graphql/resolvers/field-resolvers/entry-reference-resolver.js +4 -1
- package/dist/esm/graphql/resolvers/field-resolvers/entry-reference-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js +15 -3
- package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js +11 -14
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js +6 -7
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js +5 -4
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/{query-all-resolver.js → query-every-resolver.js} +2 -2
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js.map +1 -0
- package/dist/esm/graphql/schema-generator.js +7 -2
- package/dist/esm/graphql/schema-generator.js.map +1 -1
- package/dist/esm/graphql/schema-root-type-generator.js +1 -1
- package/dist/esm/graphql/schema-root-type-generator.js.map +1 -1
- package/dist/esm/graphql/schema-utils/entry-reference-util.js +27 -19
- package/dist/esm/graphql/schema-utils/entry-reference-util.js.map +1 -1
- package/dist/esm/graphql/schema-utils/union-type-util.js +9 -4
- package/dist/esm/graphql/schema-utils/union-type-util.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/persistence/persistence.js +11 -14
- package/dist/esm/persistence/persistence.js.map +1 -1
- package/dist/tsconfig.build.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.build.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.build.types.tsbuildinfo +1 -1
- package/dist/types/graphql/errors.d.ts +20 -0
- package/dist/types/graphql/errors.d.ts.map +1 -0
- package/dist/types/graphql/queries-mutations-generator.d.ts +1 -1
- package/dist/types/graphql/queries-mutations-generator.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/field-resolvers/entry-reference-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/field-resolvers/field-default-value-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts +5 -0
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts.map +1 -0
- package/dist/types/graphql/schema-generator.d.ts.map +1 -1
- package/dist/types/graphql/schema-utils/entry-reference-util.d.ts.map +1 -1
- package/dist/types/graphql/schema-utils/union-type-util.d.ts +2 -2
- package/dist/types/graphql/schema-utils/union-type-util.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/persistence/persistence.d.ts.map +1 -1
- package/package.json +10 -2
- package/src/client.ts +1 -1
- package/src/graphql/errors.ts +43 -0
- package/src/graphql/queries-mutations-generator.ts +12 -10
- package/src/graphql/resolvers/field-resolvers/entry-reference-resolver.ts +8 -1
- package/src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts +23 -5
- package/src/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.ts +22 -14
- package/src/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.ts +12 -8
- package/src/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.ts +9 -4
- package/src/graphql/resolvers/query-mutation-resolvers/{query-all-resolver.ts → query-every-resolver.ts} +1 -1
- package/src/graphql/schema-generator.ts +7 -2
- package/src/graphql/schema-root-type-generator.ts +1 -1
- package/src/graphql/schema-utils/entry-reference-util.ts +44 -22
- package/src/graphql/schema-utils/union-type-util.ts +20 -7
- package/src/index.ts +2 -1
- package/src/persistence/persistence.ts +13 -15
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-all-resolver.js.map +0 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-all-resolver.js.map +0 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-all-resolver.d.ts +0 -5
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-all-resolver.d.ts.map +0 -1
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
import { EntryData } from '@commitspark/git-adapter'
|
|
2
|
+
import { createError, ErrorCode } from '../errors'
|
|
2
3
|
|
|
3
|
-
export function getUnionTypeNameFromFieldValue(fieldValue:
|
|
4
|
-
if (typeof fieldValue !== 'object') {
|
|
5
|
-
throw
|
|
4
|
+
export function getUnionTypeNameFromFieldValue(fieldValue: unknown): string {
|
|
5
|
+
if (typeof fieldValue !== 'object' || fieldValue === null) {
|
|
6
|
+
throw createError(
|
|
7
|
+
`Expected object value in order to determine union type name.`,
|
|
8
|
+
ErrorCode.BAD_REPOSITORY_DATA,
|
|
9
|
+
{
|
|
10
|
+
fieldValue: fieldValue,
|
|
11
|
+
},
|
|
12
|
+
)
|
|
6
13
|
}
|
|
7
14
|
|
|
8
15
|
// Based on our @oneOf directive, we expect only one field whose name
|
|
@@ -10,11 +17,17 @@ export function getUnionTypeNameFromFieldValue(fieldValue: any): string {
|
|
|
10
17
|
return Object.keys(fieldValue)[0]
|
|
11
18
|
}
|
|
12
19
|
|
|
13
|
-
export function getUnionValue(fieldValue:
|
|
14
|
-
if (typeof fieldValue !== 'object') {
|
|
15
|
-
throw
|
|
20
|
+
export function getUnionValue(fieldValue: unknown): EntryData {
|
|
21
|
+
if (typeof fieldValue !== 'object' || fieldValue === null) {
|
|
22
|
+
throw createError(
|
|
23
|
+
`Expected object value in order to determine union value.`,
|
|
24
|
+
ErrorCode.BAD_REPOSITORY_DATA,
|
|
25
|
+
{
|
|
26
|
+
fieldValue: fieldValue,
|
|
27
|
+
},
|
|
28
|
+
)
|
|
16
29
|
}
|
|
17
30
|
|
|
18
31
|
const firstKey = Object.keys(fieldValue)[0]
|
|
19
|
-
return fieldValue[firstKey]
|
|
32
|
+
return (fieldValue as Record<string, EntryData>)[firstKey]
|
|
20
33
|
}
|
package/src/index.ts
CHANGED
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
VariableValues,
|
|
8
8
|
} from './client'
|
|
9
9
|
import { GitAdapter } from '@commitspark/git-adapter'
|
|
10
|
+
import { ErrorCode, ErrorMetadata } from './graphql/errors'
|
|
10
11
|
|
|
11
12
|
interface Client {
|
|
12
13
|
postGraphQL<
|
|
@@ -19,7 +20,7 @@ interface Client {
|
|
|
19
20
|
getSchema(ref: string): Promise<SchemaResponse>
|
|
20
21
|
}
|
|
21
22
|
|
|
22
|
-
export { Client, GraphQLResponse, SchemaResponse }
|
|
23
|
+
export { Client, GraphQLResponse, SchemaResponse, ErrorCode, ErrorMetadata }
|
|
23
24
|
|
|
24
25
|
export async function createClient(gitAdapter: GitAdapter): Promise<Client> {
|
|
25
26
|
return {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Entry, GitAdapter } from '@commitspark/git-adapter'
|
|
2
|
-
import {
|
|
2
|
+
import { createError, ErrorCode } from '../graphql/errors'
|
|
3
3
|
|
|
4
4
|
export async function getTypeById(
|
|
5
5
|
gitAdapter: GitAdapter,
|
|
@@ -9,10 +9,9 @@ export async function getTypeById(
|
|
|
9
9
|
const allEntries = await gitAdapter.getEntries(commitHash)
|
|
10
10
|
const requestedEntry = allEntries.find((entry: Entry) => entry.id === id)
|
|
11
11
|
if (requestedEntry === undefined) {
|
|
12
|
-
throw
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
},
|
|
12
|
+
throw createError(`No entry with id "${id}" exists.`, ErrorCode.NOT_FOUND, {
|
|
13
|
+
argumentName: 'id',
|
|
14
|
+
argumentValue: id,
|
|
16
15
|
})
|
|
17
16
|
}
|
|
18
17
|
|
|
@@ -27,10 +26,9 @@ export async function findById(
|
|
|
27
26
|
const allEntries = await gitAdapter.getEntries(commitHash)
|
|
28
27
|
const requestedEntry = allEntries.find((entry: Entry) => entry.id === id)
|
|
29
28
|
if (requestedEntry === undefined) {
|
|
30
|
-
throw
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
},
|
|
29
|
+
throw createError(`No entry with id "${id}" exists.`, ErrorCode.NOT_FOUND, {
|
|
30
|
+
argumentName: 'id',
|
|
31
|
+
argumentValue: id,
|
|
34
32
|
})
|
|
35
33
|
}
|
|
36
34
|
|
|
@@ -57,13 +55,13 @@ export async function findByTypeId(
|
|
|
57
55
|
(entry: Entry) => entry.id === id && entry.metadata.type === type,
|
|
58
56
|
)
|
|
59
57
|
if (requestedEntry === undefined) {
|
|
60
|
-
throw
|
|
61
|
-
`No entry of type "${type}" with id "${id}" exists
|
|
58
|
+
throw createError(
|
|
59
|
+
`No entry of type "${type}" with id "${id}" exists.`,
|
|
60
|
+
ErrorCode.NOT_FOUND,
|
|
62
61
|
{
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
},
|
|
62
|
+
typeName: type,
|
|
63
|
+
argumentName: 'id',
|
|
64
|
+
argumentValue: id,
|
|
67
65
|
},
|
|
68
66
|
)
|
|
69
67
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-all-resolver.js","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/query-all-resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,kEAA6D;AAItD,MAAM,gBAAgB,GAKzB,CAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAU,EAC9B,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAClB,CAAA;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,uCAAY,KAAK,CAAC,IAAI,KAAE,EAAE,EAAE,KAAK,CAAC,EAAE,IAAE;IACxC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA,CAAA;AAfY,QAAA,gBAAgB,oBAe5B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-all-resolver.js","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/query-all-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAI7D,MAAM,CAAC,MAAM,gBAAgB,GAKzB,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,MAAM,OAAO,GAAG,MAAM,UAAU,CAC9B,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAClB,CAAA;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { EntryData } from '@commitspark/git-adapter';
|
|
2
|
-
import { GraphQLFieldResolver } from 'graphql';
|
|
3
|
-
import { QueryMutationResolverContext } from '../types';
|
|
4
|
-
export declare const queryAllResolver: GraphQLFieldResolver<any, QueryMutationResolverContext, any, Promise<EntryData[]>>;
|
|
5
|
-
//# sourceMappingURL=query-all-resolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-all-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/query-mutation-resolvers/query-all-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,gBAAgB,EAAE,oBAAoB,CACjD,GAAG,EACH,4BAA4B,EAC5B,GAAG,EACH,OAAO,CAAC,SAAS,EAAE,CAAC,CAWrB,CAAA"}
|