@commitspark/graphql-api 1.0.0-beta.8 → 1.0.0-beta.9

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 (29) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js +3 -3
  3. package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
  4. package/dist/cjs/graphql/resolvers/object-type-field-default-value-resolver-generator.js +1 -1
  5. package/dist/cjs/graphql/resolvers/object-type-field-default-value-resolver-generator.js.map +1 -1
  6. package/dist/cjs/graphql/schema-utils/entry-reference-util.d.ts +1 -2
  7. package/dist/cjs/graphql/schema-utils/entry-reference-util.js +20 -22
  8. package/dist/cjs/graphql/schema-utils/entry-reference-util.js.map +1 -1
  9. package/dist/cjs/graphql/util.d.ts +2 -1
  10. package/dist/cjs/graphql/util.js +2 -2
  11. package/dist/cjs/graphql/util.js.map +1 -1
  12. package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js +3 -3
  13. package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
  14. package/dist/esm/graphql/resolvers/object-type-field-default-value-resolver-generator.js +2 -2
  15. package/dist/esm/graphql/resolvers/object-type-field-default-value-resolver-generator.js.map +1 -1
  16. package/dist/esm/graphql/schema-utils/entry-reference-util.js +21 -23
  17. package/dist/esm/graphql/schema-utils/entry-reference-util.js.map +1 -1
  18. package/dist/esm/graphql/util.js +1 -1
  19. package/dist/esm/graphql/util.js.map +1 -1
  20. package/dist/types/graphql/resolvers/field-resolvers/field-default-value-resolver.d.ts.map +1 -1
  21. package/dist/types/graphql/schema-utils/entry-reference-util.d.ts +1 -2
  22. package/dist/types/graphql/schema-utils/entry-reference-util.d.ts.map +1 -1
  23. package/dist/types/graphql/util.d.ts +2 -1
  24. package/dist/types/graphql/util.d.ts.map +1 -1
  25. package/package.json +1 -1
  26. package/src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts +9 -3
  27. package/src/graphql/resolvers/object-type-field-default-value-resolver-generator.ts +2 -2
  28. package/src/graphql/schema-utils/entry-reference-util.ts +40 -32
  29. package/src/graphql/util.ts +3 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.0-beta.9] - 2026-02-26
9
+
10
+ ### Fixed
11
+
12
+ - Fix broken reference evaluation on mutating entries with non-null fields
13
+
8
14
  ## [1.0.0-beta.8] - 2026-02-26
9
15
 
10
16
  ### Fixed
@@ -14,7 +14,7 @@ const resolveFieldDefaultValue = async (fieldValue, args, context, info) => {
14
14
  hasNonNullParent: true,
15
15
  }, info);
16
16
  }
17
- else if ((0, graphql_1.isListType)(context.currentType)) {
17
+ if ((0, graphql_1.isListType)(context.currentType)) {
18
18
  if (fieldValue === undefined || fieldValue === null) {
19
19
  if (context.hasNonNullParent) {
20
20
  return new Promise((resolve) => resolve([]));
@@ -40,7 +40,7 @@ const resolveFieldDefaultValue = async (fieldValue, args, context, info) => {
40
40
  }
41
41
  return Promise.all(resultPromises);
42
42
  }
43
- else if ((0, graphql_1.isUnionType)(context.currentType)) {
43
+ if ((0, graphql_1.isUnionType)(context.currentType)) {
44
44
  if (fieldValue === undefined || fieldValue === null) {
45
45
  if (context.hasNonNullParent) {
46
46
  throw (0, errors_ts_1.createError)(`Cannot generate a default value for NonNull field "${info.parentType.name}.${info.fieldName}" because it is a union field of type "${info.returnType.ofType.name}". Set a value in your repository data or remove the NonNull declaration in your schema.`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
@@ -57,7 +57,7 @@ const resolveFieldDefaultValue = async (fieldValue, args, context, info) => {
57
57
  }
58
58
  return (0, union_value_resolver_ts_1.resolveUnionValue)(fieldValue, args, context, info);
59
59
  }
60
- else if ((0, graphql_1.isObjectType)(context.currentType)) {
60
+ if ((0, graphql_1.isObjectType)(context.currentType)) {
61
61
  if (fieldValue === undefined || fieldValue === null) {
62
62
  if (context.hasNonNullParent) {
63
63
  throw (0, errors_ts_1.createError)(`Cannot generate a default value for NonNull field "${info.fieldName}" of type ` +
@@ -1 +1 @@
1
- {"version":3,"file":"field-default-value-resolver.js","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-default-value-resolver.js","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ function createObjectTypeFieldResolvers(schema) {
47
47
  if (obj) {
48
48
  fieldSourceData = obj[field.name] ?? null;
49
49
  if (fieldSourceData !== null &&
50
- !((0, util_ts_1.isRecord)(fieldSourceData) || Array.isArray(fieldSourceData))) {
50
+ !((0, util_ts_1.isEntryData)(fieldSourceData) || Array.isArray(fieldSourceData))) {
51
51
  throw (0, errors_ts_1.createError)(`Expected an object or array as data for passing to resolver of field "${field.name}" in type "${typeName}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
52
52
  fieldName: field.name,
53
53
  typeName: typeName,
@@ -1 +1 @@
1
- {"version":3,"file":"object-type-field-default-value-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolvers/object-type-field-default-value-resolver-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object-type-field-default-value-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolvers/object-type-field-default-value-resolver-generator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
1
  import { GraphQLNullableType, GraphQLObjectType } from 'graphql';
2
2
  import { ApolloContext } from '../../client.ts';
3
- import { EntryData } from '@commitspark/git-adapter';
4
- export declare function getReferencedEntryIds(rootType: GraphQLObjectType, context: ApolloContext, fieldName: string | null, type: GraphQLNullableType, data: EntryData | EntryData[]): Promise<string[]>;
3
+ export declare function getReferencedEntryIds(rootType: GraphQLObjectType, context: ApolloContext, fieldName: string | null, type: GraphQLNullableType, data: unknown): Promise<string[]>;
@@ -30,7 +30,7 @@ async function validateReference(context, fieldName, fieldType, fieldValue) {
30
30
  await validateReference(context, fieldName, fieldType.ofType, fieldValue);
31
31
  return;
32
32
  }
33
- else if ((0, graphql_1.isListType)(fieldType)) {
33
+ if ((0, graphql_1.isListType)(fieldType)) {
34
34
  if (!Array.isArray(fieldValue)) {
35
35
  throw (0, errors_ts_1.createError)(`Expected array while validation references for field "${fieldName}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
36
36
  fieldName: fieldName,
@@ -42,7 +42,7 @@ async function validateReference(context, fieldName, fieldType, fieldValue) {
42
42
  }
43
43
  return;
44
44
  }
45
- else if ((0, graphql_1.isUnionType)(fieldType) || (0, graphql_1.isObjectType)(fieldType)) {
45
+ if ((0, graphql_1.isUnionType)(fieldType) || (0, graphql_1.isObjectType)(fieldType)) {
46
46
  if (fieldValue === null ||
47
47
  !('id' in fieldValue) ||
48
48
  typeof fieldValue.id !== 'string') {
@@ -71,13 +71,13 @@ async function validateReference(context, fieldName, fieldType, fieldValue) {
71
71
  }
72
72
  }
73
73
  async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
74
- if (data === null || (0, graphql_1.isScalarType)(type)) {
74
+ if (data === null || data === undefined || (0, graphql_1.isScalarType)(type)) {
75
75
  return [];
76
76
  }
77
77
  if ((0, graphql_1.isNonNullType)(type)) {
78
78
  return getReferencedEntryIds(rootType, context, fieldName, type.ofType, data);
79
79
  }
80
- else if ((0, graphql_1.isListType)(type)) {
80
+ if ((0, graphql_1.isListType)(type)) {
81
81
  if (!Array.isArray(data)) {
82
82
  throw (0, errors_ts_1.createError)(`Expected array as data for field "${fieldName}". `, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
83
83
  fieldName: fieldName ? fieldName : undefined,
@@ -95,7 +95,14 @@ async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
95
95
  referencedEntryIds = [...new Set(referencedEntryIds)];
96
96
  return referencedEntryIds;
97
97
  }
98
- else if ((0, graphql_1.isUnionType)(type)) {
98
+ if ((0, graphql_1.isUnionType)(type)) {
99
+ if (!(0, util_ts_1.isEntryData)(data)) {
100
+ throw (0, errors_ts_1.createError)(`Expected object as data for type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
101
+ typeName: type.name,
102
+ fieldName: fieldName ? fieldName : undefined,
103
+ fieldValue: data,
104
+ });
105
+ }
99
106
  if ((0, entry_type_util_ts_1.isUnionOfEntryTypes)(type)) {
100
107
  const referenceId = await getValidatedReferenceId(context, fieldName, type, data);
101
108
  return [referenceId];
@@ -115,7 +122,7 @@ async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
115
122
  const unionValue = (0, union_type_util_ts_1.getUnionValue)(data);
116
123
  return getReferencedEntryIds(rootType, context, fieldName, concreteFieldUnionType, unionValue);
117
124
  }
118
- else if ((0, graphql_1.isObjectType)(type)) {
125
+ if ((0, graphql_1.isObjectType)(type)) {
119
126
  if (type.name !== rootType.name && (0, entry_type_util_ts_1.hasEntryDirective)(type)) {
120
127
  const referenceId = await getValidatedReferenceId(context, fieldName, type, data);
121
128
  return [referenceId];
@@ -123,27 +130,15 @@ async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
123
130
  else {
124
131
  let referencedEntryIds = [];
125
132
  for (const [fieldsKey, field] of Object.entries(type.getFields())) {
126
- if (Array.isArray(data)) {
133
+ // expect our object type to hold EntryData (i.e. an object)
134
+ if (Array.isArray(data) || !(0, util_ts_1.isEntryData)(data)) {
127
135
  throw (0, errors_ts_1.createError)(`Expected object as data for type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
128
136
  typeName: type.name,
129
137
  fieldName: field.name ? field.name : undefined,
130
138
  });
131
139
  }
132
- const fieldValue = data[fieldsKey];
133
- if (fieldValue === undefined ||
134
- fieldValue === null ||
135
- (0, graphql_1.isScalarType)(field.type)) {
136
- continue;
137
- }
138
- if (!(Array.isArray(fieldValue) || (0, util_ts_1.isRecord)(fieldValue))) {
139
- throw (0, errors_ts_1.createError)(`Expected object or array as data for field "${field.name}" of type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
140
- typeName: type.name,
141
- fieldName: field.name ? field.name : undefined,
142
- fieldValue: fieldValue,
143
- });
144
- }
145
140
  // recursively get referenced IDs in nested data
146
- const nestedResult = await getReferencedEntryIds(rootType, context, fieldsKey, field.type, fieldValue);
141
+ const nestedResult = await getReferencedEntryIds(rootType, context, fieldsKey, field.type, data[fieldsKey]);
147
142
  referencedEntryIds = [...referencedEntryIds, ...nestedResult];
148
143
  }
149
144
  // deduplicate
@@ -154,7 +149,10 @@ async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
154
149
  return [];
155
150
  }
156
151
  async function getValidatedReferenceId(context, fieldName, type, data) {
157
- if (data === null || typeof data !== 'object' || Array.isArray(data)) {
152
+ if (data === null ||
153
+ data === undefined ||
154
+ !(0, util_ts_1.isEntryData)(data) ||
155
+ Array.isArray(data)) {
158
156
  throw (0, errors_ts_1.createError)(`Expected object as data for field "${fieldName}" of type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
159
157
  typeName: type.name,
160
158
  fieldName: fieldName ? fieldName : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
- export declare function isRecord(obj: unknown): obj is Record<string, unknown>;
1
+ import { EntryData } from '@commitspark/git-adapter';
2
+ export declare function isEntryData(obj: unknown): obj is EntryData;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isRecord = isRecord;
4
- function isRecord(obj) {
3
+ exports.isEntryData = isEntryData;
4
+ function isEntryData(obj) {
5
5
  if (typeof obj !== 'object') {
6
6
  return false;
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/graphql/util.ts"],"names":[],"mappings":";;AAAA,4BAUC;AAVD,SAAgB,QAAQ,CAAC,GAAY;IACnC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACvD,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/graphql/util.ts"],"names":[],"mappings":";;AAEA,kCAUC;AAVD,SAAgB,WAAW,CAAC,GAAY;IACtC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACvD,CAAC"}
@@ -11,7 +11,7 @@ export const resolveFieldDefaultValue = async (fieldValue, args, context, info)
11
11
  hasNonNullParent: true,
12
12
  }, info);
13
13
  }
14
- else if (isListType(context.currentType)) {
14
+ if (isListType(context.currentType)) {
15
15
  if (fieldValue === undefined || fieldValue === null) {
16
16
  if (context.hasNonNullParent) {
17
17
  return new Promise((resolve) => resolve([]));
@@ -37,7 +37,7 @@ export const resolveFieldDefaultValue = async (fieldValue, args, context, info)
37
37
  }
38
38
  return Promise.all(resultPromises);
39
39
  }
40
- else if (isUnionType(context.currentType)) {
40
+ if (isUnionType(context.currentType)) {
41
41
  if (fieldValue === undefined || fieldValue === null) {
42
42
  if (context.hasNonNullParent) {
43
43
  throw createError(`Cannot generate a default value for NonNull field "${info.parentType.name}.${info.fieldName}" because it is a union field of type "${info.returnType.ofType.name}". Set a value in your repository data or remove the NonNull declaration in your schema.`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
@@ -54,7 +54,7 @@ export const resolveFieldDefaultValue = async (fieldValue, args, context, info)
54
54
  }
55
55
  return resolveUnionValue(fieldValue, args, context, info);
56
56
  }
57
- else if (isObjectType(context.currentType)) {
57
+ if (isObjectType(context.currentType)) {
58
58
  if (fieldValue === undefined || fieldValue === null) {
59
59
  if (context.hasNonNullParent) {
60
60
  throw createError(`Cannot generate a default value for NonNull field "${info.fieldName}" of type ` +
@@ -1 +1 @@
1
- {"version":3,"file":"field-default-value-resolver.js","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-default-value-resolver.js","sourceRoot":"","sources":["../../../../../src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { isListType, isNonNullType, isObjectType, isUnionType, } from 'graphql';
2
2
  import { resolveFieldDefaultValue } from "./field-resolvers/field-default-value-resolver.js";
3
3
  import { createError } from "../errors.js";
4
- import { isRecord } from "../util.js";
4
+ import { isEntryData } from "../util.js";
5
5
  function requiresCustomDefaultValueResolver(type) {
6
6
  if (isNonNullType(type)) {
7
7
  return requiresCustomDefaultValueResolver(type.ofType);
@@ -44,7 +44,7 @@ export function createObjectTypeFieldResolvers(schema) {
44
44
  if (obj) {
45
45
  fieldSourceData = obj[field.name] ?? null;
46
46
  if (fieldSourceData !== null &&
47
- !(isRecord(fieldSourceData) || Array.isArray(fieldSourceData))) {
47
+ !(isEntryData(fieldSourceData) || Array.isArray(fieldSourceData))) {
48
48
  throw createError(`Expected an object or array as data for passing to resolver of field "${field.name}" in type "${typeName}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
49
49
  fieldName: field.name,
50
50
  typeName: typeName,
@@ -1 +1 @@
1
- {"version":3,"file":"object-type-field-default-value-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolvers/object-type-field-default-value-resolver-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object-type-field-default-value-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolvers/object-type-field-default-value-resolver-generator.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { getTypeById } from "../../persistence/persistence.js";
3
3
  import { getUnionTypeNameFromFieldValue, getUnionValue, } from "./union-type-util.js";
4
4
  import { hasEntryDirective, isUnionOfEntryTypes } from "./entry-type-util.js";
5
5
  import { createError } from "../errors.js";
6
- import { isRecord } from "../util.js";
6
+ import { isEntryData } from "../util.js";
7
7
  function isPermittedReferenceType(referencedTypeName, fieldType) {
8
8
  if (isNonNullType(fieldType)) {
9
9
  return isPermittedReferenceType(referencedTypeName, fieldType.ofType);
@@ -27,7 +27,7 @@ async function validateReference(context, fieldName, fieldType, fieldValue) {
27
27
  await validateReference(context, fieldName, fieldType.ofType, fieldValue);
28
28
  return;
29
29
  }
30
- else if (isListType(fieldType)) {
30
+ if (isListType(fieldType)) {
31
31
  if (!Array.isArray(fieldValue)) {
32
32
  throw createError(`Expected array while validation references for field "${fieldName}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
33
33
  fieldName: fieldName,
@@ -39,7 +39,7 @@ async function validateReference(context, fieldName, fieldType, fieldValue) {
39
39
  }
40
40
  return;
41
41
  }
42
- else if (isUnionType(fieldType) || isObjectType(fieldType)) {
42
+ if (isUnionType(fieldType) || isObjectType(fieldType)) {
43
43
  if (fieldValue === null ||
44
44
  !('id' in fieldValue) ||
45
45
  typeof fieldValue.id !== 'string') {
@@ -68,13 +68,13 @@ async function validateReference(context, fieldName, fieldType, fieldValue) {
68
68
  }
69
69
  }
70
70
  export async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
71
- if (data === null || isScalarType(type)) {
71
+ if (data === null || data === undefined || isScalarType(type)) {
72
72
  return [];
73
73
  }
74
74
  if (isNonNullType(type)) {
75
75
  return getReferencedEntryIds(rootType, context, fieldName, type.ofType, data);
76
76
  }
77
- else if (isListType(type)) {
77
+ if (isListType(type)) {
78
78
  if (!Array.isArray(data)) {
79
79
  throw createError(`Expected array as data for field "${fieldName}". `, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
80
80
  fieldName: fieldName ? fieldName : undefined,
@@ -92,7 +92,14 @@ export async function getReferencedEntryIds(rootType, context, fieldName, type,
92
92
  referencedEntryIds = [...new Set(referencedEntryIds)];
93
93
  return referencedEntryIds;
94
94
  }
95
- else if (isUnionType(type)) {
95
+ if (isUnionType(type)) {
96
+ if (!isEntryData(data)) {
97
+ throw createError(`Expected object as data for type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
98
+ typeName: type.name,
99
+ fieldName: fieldName ? fieldName : undefined,
100
+ fieldValue: data,
101
+ });
102
+ }
96
103
  if (isUnionOfEntryTypes(type)) {
97
104
  const referenceId = await getValidatedReferenceId(context, fieldName, type, data);
98
105
  return [referenceId];
@@ -112,7 +119,7 @@ export async function getReferencedEntryIds(rootType, context, fieldName, type,
112
119
  const unionValue = getUnionValue(data);
113
120
  return getReferencedEntryIds(rootType, context, fieldName, concreteFieldUnionType, unionValue);
114
121
  }
115
- else if (isObjectType(type)) {
122
+ if (isObjectType(type)) {
116
123
  if (type.name !== rootType.name && hasEntryDirective(type)) {
117
124
  const referenceId = await getValidatedReferenceId(context, fieldName, type, data);
118
125
  return [referenceId];
@@ -120,27 +127,15 @@ export async function getReferencedEntryIds(rootType, context, fieldName, type,
120
127
  else {
121
128
  let referencedEntryIds = [];
122
129
  for (const [fieldsKey, field] of Object.entries(type.getFields())) {
123
- if (Array.isArray(data)) {
130
+ // expect our object type to hold EntryData (i.e. an object)
131
+ if (Array.isArray(data) || !isEntryData(data)) {
124
132
  throw createError(`Expected object as data for type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
125
133
  typeName: type.name,
126
134
  fieldName: field.name ? field.name : undefined,
127
135
  });
128
136
  }
129
- const fieldValue = data[fieldsKey];
130
- if (fieldValue === undefined ||
131
- fieldValue === null ||
132
- isScalarType(field.type)) {
133
- continue;
134
- }
135
- if (!(Array.isArray(fieldValue) || isRecord(fieldValue))) {
136
- throw createError(`Expected object or array as data for field "${field.name}" of type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
137
- typeName: type.name,
138
- fieldName: field.name ? field.name : undefined,
139
- fieldValue: fieldValue,
140
- });
141
- }
142
137
  // recursively get referenced IDs in nested data
143
- const nestedResult = await getReferencedEntryIds(rootType, context, fieldsKey, field.type, fieldValue);
138
+ const nestedResult = await getReferencedEntryIds(rootType, context, fieldsKey, field.type, data[fieldsKey]);
144
139
  referencedEntryIds = [...referencedEntryIds, ...nestedResult];
145
140
  }
146
141
  // deduplicate
@@ -151,7 +146,10 @@ export async function getReferencedEntryIds(rootType, context, fieldName, type,
151
146
  return [];
152
147
  }
153
148
  async function getValidatedReferenceId(context, fieldName, type, data) {
154
- if (data === null || typeof data !== 'object' || Array.isArray(data)) {
149
+ if (data === null ||
150
+ data === undefined ||
151
+ !isEntryData(data) ||
152
+ Array.isArray(data)) {
155
153
  throw createError(`Expected object as data for field "${fieldName}" of type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
156
154
  typeName: type.name,
157
155
  fieldName: fieldName ? fieldName : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export function isRecord(obj) {
1
+ export function isEntryData(obj) {
2
2
  if (typeof obj !== 'object') {
3
3
  return false;
4
4
  }
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/graphql/util.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,GAAY;IACnC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACvD,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/graphql/util.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,GAAY;IACtC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACvD,CAAC"}
@@ -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,EAAE,MAAM,YAAY,CAAA;AAiB1C,eAAO,MAAM,wBAAwB,EAAE,aAuGtC,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,EAAE,MAAM,YAAY,CAAA;AAiB1C,eAAO,MAAM,wBAAwB,EAAE,aA6GtC,CAAA"}
@@ -1,5 +1,4 @@
1
1
  import { GraphQLNullableType, GraphQLObjectType } from 'graphql';
2
2
  import { ApolloContext } from '../../client.ts';
3
- import { EntryData } from '@commitspark/git-adapter';
4
- export declare function getReferencedEntryIds(rootType: GraphQLObjectType, context: ApolloContext, fieldName: string | null, type: GraphQLNullableType, data: EntryData | EntryData[]): Promise<string[]>;
3
+ export declare function getReferencedEntryIds(rootType: GraphQLObjectType, context: ApolloContext, fieldName: string | null, type: GraphQLNullableType, data: unknown): Promise<string[]>;
5
4
  //# sourceMappingURL=entry-reference-util.d.ts.map
@@ -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,EACL,mBAAmB,EACnB,iBAAiB,EAOlB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAQ/C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AA8FpD,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,GAC5B,OAAO,CAAC,MAAM,EAAE,CAAC,CA2InB"}
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,EAOlB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AA0G/C,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,MAAM,EAAE,CAAC,CA0InB"}
@@ -1,2 +1,3 @@
1
- export declare function isRecord(obj: unknown): obj is Record<string, unknown>;
1
+ import { EntryData } from '@commitspark/git-adapter';
2
+ export declare function isEntryData(obj: unknown): obj is EntryData;
2
3
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/graphql/util.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUrE"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/graphql/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,SAAS,CAU1D"}
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "gitops",
10
10
  "api"
11
11
  ],
12
- "version": "1.0.0-beta.8",
12
+ "version": "1.0.0-beta.9",
13
13
  "license": "ISC",
14
14
  "private": false,
15
15
  "files": [
@@ -32,7 +32,9 @@ export const resolveFieldDefaultValue: FieldResolver = async (
32
32
  },
33
33
  info,
34
34
  )
35
- } else if (isListType(context.currentType)) {
35
+ }
36
+
37
+ if (isListType(context.currentType)) {
36
38
  if (fieldValue === undefined || fieldValue === null) {
37
39
  if (context.hasNonNullParent) {
38
40
  return new Promise((resolve) => resolve([]))
@@ -67,7 +69,9 @@ export const resolveFieldDefaultValue: FieldResolver = async (
67
69
  resultPromises.push(resultPromise)
68
70
  }
69
71
  return Promise.all(resultPromises)
70
- } else if (isUnionType(context.currentType)) {
72
+ }
73
+
74
+ if (isUnionType(context.currentType)) {
71
75
  if (fieldValue === undefined || fieldValue === null) {
72
76
  if (context.hasNonNullParent) {
73
77
  throw createError(
@@ -92,7 +96,9 @@ export const resolveFieldDefaultValue: FieldResolver = async (
92
96
  }
93
97
 
94
98
  return resolveUnionValue(fieldValue, args, context, info)
95
- } else if (isObjectType(context.currentType)) {
99
+ }
100
+
101
+ if (isObjectType(context.currentType)) {
96
102
  if (fieldValue === undefined || fieldValue === null) {
97
103
  if (context.hasNonNullParent) {
98
104
  throw createError(
@@ -10,7 +10,7 @@ import {
10
10
  } from 'graphql'
11
11
  import { resolveFieldDefaultValue } from './field-resolvers/field-default-value-resolver.ts'
12
12
  import { createError, ErrorCode } from '../errors.ts'
13
- import { isRecord } from '../util.ts'
13
+ import { isEntryData } from '../util.ts'
14
14
  import { ContextInjectionResolver } from './types.ts'
15
15
 
16
16
  function requiresCustomDefaultValueResolver(type: GraphQLOutputType): boolean {
@@ -73,7 +73,7 @@ export function createObjectTypeFieldResolvers(
73
73
  fieldSourceData = obj[field.name] ?? null
74
74
  if (
75
75
  fieldSourceData !== null &&
76
- !(isRecord(fieldSourceData) || Array.isArray(fieldSourceData))
76
+ !(isEntryData(fieldSourceData) || Array.isArray(fieldSourceData))
77
77
  ) {
78
78
  throw createError(
79
79
  `Expected an object or array as data for passing to resolver of field "${field.name}" in type "${typeName}".`,
@@ -17,7 +17,7 @@ import {
17
17
  import { hasEntryDirective, isUnionOfEntryTypes } from './entry-type-util.ts'
18
18
  import { createError, ErrorCode } from '../errors.ts'
19
19
  import { EntryData } from '@commitspark/git-adapter'
20
- import { isRecord } from '../util.ts'
20
+ import { isEntryData } from '../util.ts'
21
21
 
22
22
  function isPermittedReferenceType(
23
23
  referencedTypeName: string,
@@ -47,7 +47,9 @@ async function validateReference(
47
47
  if (isNonNullType(fieldType)) {
48
48
  await validateReference(context, fieldName, fieldType.ofType, fieldValue)
49
49
  return
50
- } else if (isListType(fieldType)) {
50
+ }
51
+
52
+ if (isListType(fieldType)) {
51
53
  if (!Array.isArray(fieldValue)) {
52
54
  throw createError(
53
55
  `Expected array while validation references for field "${fieldName}".`,
@@ -67,7 +69,9 @@ async function validateReference(
67
69
  )
68
70
  }
69
71
  return
70
- } else if (isUnionType(fieldType) || isObjectType(fieldType)) {
72
+ }
73
+
74
+ if (isUnionType(fieldType) || isObjectType(fieldType)) {
71
75
  if (
72
76
  fieldValue === null ||
73
77
  !('id' in fieldValue) ||
@@ -115,9 +119,9 @@ export async function getReferencedEntryIds(
115
119
  context: ApolloContext,
116
120
  fieldName: string | null,
117
121
  type: GraphQLNullableType,
118
- data: EntryData | EntryData[],
122
+ data: unknown,
119
123
  ): Promise<string[]> {
120
- if (data === null || isScalarType(type)) {
124
+ if (data === null || data === undefined || isScalarType(type)) {
121
125
  return []
122
126
  }
123
127
 
@@ -129,7 +133,9 @@ export async function getReferencedEntryIds(
129
133
  type.ofType,
130
134
  data,
131
135
  )
132
- } else if (isListType(type)) {
136
+ }
137
+
138
+ if (isListType(type)) {
133
139
  if (!Array.isArray(data)) {
134
140
  throw createError(
135
141
  `Expected array as data for field "${fieldName}". `,
@@ -157,7 +163,21 @@ export async function getReferencedEntryIds(
157
163
  // deduplicate
158
164
  referencedEntryIds = [...new Set(referencedEntryIds)]
159
165
  return referencedEntryIds
160
- } else if (isUnionType(type)) {
166
+ }
167
+
168
+ if (isUnionType(type)) {
169
+ if (!isEntryData(data)) {
170
+ throw createError(
171
+ `Expected object as data for type "${type.name}".`,
172
+ ErrorCode.BAD_REPOSITORY_DATA,
173
+ {
174
+ typeName: type.name,
175
+ fieldName: fieldName ? fieldName : undefined,
176
+ fieldValue: data,
177
+ },
178
+ )
179
+ }
180
+
161
181
  if (isUnionOfEntryTypes(type)) {
162
182
  const referenceId = await getValidatedReferenceId(
163
183
  context,
@@ -195,7 +215,9 @@ export async function getReferencedEntryIds(
195
215
  concreteFieldUnionType,
196
216
  unionValue,
197
217
  )
198
- } else if (isObjectType(type)) {
218
+ }
219
+
220
+ if (isObjectType(type)) {
199
221
  if (type.name !== rootType.name && hasEntryDirective(type)) {
200
222
  const referenceId = await getValidatedReferenceId(
201
223
  context,
@@ -207,7 +229,8 @@ export async function getReferencedEntryIds(
207
229
  } else {
208
230
  let referencedEntryIds: string[] = []
209
231
  for (const [fieldsKey, field] of Object.entries(type.getFields())) {
210
- if (Array.isArray(data)) {
232
+ // expect our object type to hold EntryData (i.e. an object)
233
+ if (Array.isArray(data) || !isEntryData(data)) {
211
234
  throw createError(
212
235
  `Expected object as data for type "${type.name}".`,
213
236
  ErrorCode.BAD_REPOSITORY_DATA,
@@ -218,33 +241,13 @@ export async function getReferencedEntryIds(
218
241
  )
219
242
  }
220
243
 
221
- const fieldValue = data[fieldsKey]
222
- if (
223
- fieldValue === undefined ||
224
- fieldValue === null ||
225
- isScalarType(field.type)
226
- ) {
227
- continue
228
- }
229
-
230
- if (!(Array.isArray(fieldValue) || isRecord(fieldValue))) {
231
- throw createError(
232
- `Expected object or array as data for field "${field.name}" of type "${type.name}".`,
233
- ErrorCode.BAD_REPOSITORY_DATA,
234
- {
235
- typeName: type.name,
236
- fieldName: field.name ? field.name : undefined,
237
- fieldValue: fieldValue,
238
- },
239
- )
240
- }
241
244
  // recursively get referenced IDs in nested data
242
245
  const nestedResult = await getReferencedEntryIds(
243
246
  rootType,
244
247
  context,
245
248
  fieldsKey,
246
249
  field.type,
247
- fieldValue,
250
+ data[fieldsKey],
248
251
  )
249
252
  referencedEntryIds = [...referencedEntryIds, ...nestedResult]
250
253
  }
@@ -261,9 +264,14 @@ async function getValidatedReferenceId(
261
264
  context: ApolloContext,
262
265
  fieldName: string | null,
263
266
  type: GraphQLUnionType | GraphQLObjectType,
264
- data: EntryData | EntryData[],
267
+ data: unknown,
265
268
  ): Promise<string> {
266
- if (data === null || typeof data !== 'object' || Array.isArray(data)) {
269
+ if (
270
+ data === null ||
271
+ data === undefined ||
272
+ !isEntryData(data) ||
273
+ Array.isArray(data)
274
+ ) {
267
275
  throw createError(
268
276
  `Expected object as data for field "${fieldName}" of type "${type.name}".`,
269
277
  ErrorCode.BAD_REPOSITORY_DATA,
@@ -1,4 +1,6 @@
1
- export function isRecord(obj: unknown): obj is Record<string, unknown> {
1
+ import { EntryData } from '@commitspark/git-adapter'
2
+
3
+ export function isEntryData(obj: unknown): obj is EntryData {
2
4
  if (typeof obj !== 'object') {
3
5
  return false
4
6
  }