@commitspark/graphql-api 1.0.0-beta.6 → 1.0.0-beta.8
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 +21 -0
- package/README.md +75 -28
- package/dist/cjs/client.d.ts +28 -0
- package/dist/cjs/client.js +15 -22
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/graphql/apollo-config-factory.d.ts +3 -0
- package/dist/cjs/graphql/apollo-config-factory.js +8 -19
- package/dist/cjs/graphql/apollo-config-factory.js.map +1 -1
- package/dist/cjs/graphql/errors.d.ts +19 -0
- package/dist/cjs/graphql/errors.js +1 -1
- package/dist/cjs/graphql/errors.js.map +1 -1
- package/dist/cjs/graphql/input-type-generator.d.ts +5 -0
- package/dist/cjs/graphql/input-type-generator.js +4 -4
- package/dist/cjs/graphql/input-type-generator.js.map +1 -1
- package/dist/cjs/graphql/queries-mutations-generator.d.ts +17 -0
- package/dist/cjs/graphql/queries-mutations-generator.js +12 -12
- package/dist/cjs/graphql/queries-mutations-generator.js.map +1 -1
- package/dist/cjs/graphql/resolvers/field-resolvers/entry-reference-resolver.d.ts +2 -0
- package/dist/cjs/graphql/resolvers/field-resolvers/entry-reference-resolver.js +15 -16
- 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.d.ts +2 -0
- package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js +24 -25
- package/dist/cjs/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/field-resolvers/types.d.ts +11 -0
- package/dist/cjs/graphql/resolvers/field-resolvers/union-value-resolver.d.ts +2 -0
- package/dist/cjs/graphql/resolvers/field-resolvers/union-value-resolver.js +9 -15
- package/dist/cjs/graphql/resolvers/field-resolvers/union-value-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/object-type-field-default-value-resolver-generator.d.ts +5 -0
- package/dist/cjs/graphql/resolvers/object-type-field-default-value-resolver-generator.js +25 -5
- package/dist/cjs/graphql/resolvers/object-type-field-default-value-resolver-generator.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.d.ts +3 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js +26 -29
- 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.d.ts +2 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.js +24 -24
- 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.d.ts +3 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js +41 -33
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.d.ts +3 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.js +5 -14
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts +3 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js +5 -14
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.d.ts +2 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.js +4 -13
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/union-type-resolver.d.ts +2 -0
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/union-type-resolver.js +14 -16
- package/dist/cjs/graphql/resolvers/query-mutation-resolvers/union-type-resolver.js.map +1 -1
- package/dist/cjs/graphql/resolvers/types.d.ts +19 -0
- package/dist/cjs/graphql/schema-analyzer.d.ts +8 -0
- package/dist/cjs/graphql/schema-analyzer.js +1 -2
- package/dist/cjs/graphql/schema-analyzer.js.map +1 -1
- package/dist/cjs/graphql/schema-generator.d.ts +3 -0
- package/dist/cjs/graphql/schema-generator.js +75 -85
- package/dist/cjs/graphql/schema-generator.js.map +1 -1
- package/dist/cjs/graphql/schema-root-type-generator.d.ts +2 -0
- package/dist/cjs/graphql/schema-root-type-generator.js.map +1 -1
- package/dist/cjs/graphql/schema-utils/entry-reference-util.d.ts +4 -0
- package/dist/cjs/graphql/schema-utils/entry-reference-util.js +141 -106
- package/dist/cjs/graphql/schema-utils/entry-reference-util.js.map +1 -1
- package/dist/cjs/graphql/schema-utils/entry-type-util.d.ts +4 -0
- package/dist/cjs/graphql/schema-utils/entry-type-util.js +1 -2
- package/dist/cjs/graphql/schema-utils/entry-type-util.js.map +1 -1
- package/dist/cjs/graphql/schema-utils/union-type-util.d.ts +3 -0
- package/dist/cjs/graphql/schema-utils/union-type-util.js +3 -3
- package/dist/cjs/graphql/schema-utils/union-type-util.js.map +1 -1
- package/dist/cjs/graphql/schema-validator.d.ts +2 -0
- package/dist/cjs/graphql/schema-validator.js +3 -7
- package/dist/cjs/graphql/schema-validator.js.map +1 -1
- package/dist/cjs/graphql/util.d.ts +1 -0
- package/dist/cjs/graphql/util.js +13 -0
- package/dist/cjs/graphql/util.js.map +1 -0
- package/dist/cjs/index.d.ts +9 -0
- package/dist/cjs/index.js +8 -19
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/persistence/cache.d.ts +12 -0
- package/dist/cjs/persistence/cache.js +11 -20
- package/dist/cjs/persistence/cache.js.map +1 -1
- package/dist/cjs/persistence/persistence.d.ts +6 -0
- package/dist/cjs/persistence/persistence.js +27 -45
- package/dist/cjs/persistence/persistence.js.map +1 -1
- package/dist/esm/client.js +2 -2
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/graphql/apollo-config-factory.js +1 -1
- package/dist/esm/graphql/apollo-config-factory.js.map +1 -1
- package/dist/esm/graphql/errors.js.map +1 -1
- package/dist/esm/graphql/input-type-generator.js +1 -1
- package/dist/esm/graphql/input-type-generator.js.map +1 -1
- package/dist/esm/graphql/queries-mutations-generator.js +6 -6
- package/dist/esm/graphql/queries-mutations-generator.js.map +1 -1
- package/dist/esm/graphql/resolvers/field-resolvers/entry-reference-resolver.js +10 -2
- 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 +5 -5
- package/dist/esm/graphql/resolvers/field-resolvers/field-default-value-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/field-resolvers/union-value-resolver.js +1 -1
- package/dist/esm/graphql/resolvers/field-resolvers/union-value-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/object-type-field-default-value-resolver-generator.js +25 -8
- package/dist/esm/graphql/resolvers/object-type-field-default-value-resolver-generator.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.js +6 -6
- 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 +5 -5
- 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 +10 -9
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.js +2 -2
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js +2 -2
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-every-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.js +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.js.map +1 -1
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/union-type-resolver.js +12 -5
- package/dist/esm/graphql/resolvers/query-mutation-resolvers/union-type-resolver.js.map +1 -1
- package/dist/esm/graphql/schema-generator.js +8 -15
- package/dist/esm/graphql/schema-generator.js.map +1 -1
- package/dist/esm/graphql/schema-root-type-generator.js.map +1 -1
- package/dist/esm/graphql/schema-utils/entry-reference-util.js +65 -16
- package/dist/esm/graphql/schema-utils/entry-reference-util.js.map +1 -1
- package/dist/esm/graphql/schema-utils/union-type-util.js +1 -1
- package/dist/esm/graphql/schema-utils/union-type-util.js.map +1 -1
- package/dist/esm/graphql/util.js +10 -0
- package/dist/esm/graphql/util.js.map +1 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/package.json +1 -0
- package/dist/esm/persistence/cache.js +1 -1
- package/dist/esm/persistence/cache.js.map +1 -1
- package/dist/esm/persistence/persistence.js +1 -1
- package/dist/esm/persistence/persistence.js.map +1 -1
- package/dist/types/client.d.ts +1 -1
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/graphql/apollo-config-factory.d.ts +1 -1
- package/dist/types/graphql/apollo-config-factory.d.ts.map +1 -1
- package/dist/types/graphql/errors.d.ts +0 -1
- package/dist/types/graphql/errors.d.ts.map +1 -1
- package/dist/types/graphql/input-type-generator.d.ts +1 -1
- package/dist/types/graphql/input-type-generator.d.ts.map +1 -1
- package/dist/types/graphql/queries-mutations-generator.d.ts +10 -10
- package/dist/types/graphql/queries-mutations-generator.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/field-resolvers/entry-reference-resolver.d.ts +2 -2
- 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 +2 -2
- package/dist/types/graphql/resolvers/field-resolvers/field-default-value-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/field-resolvers/types.d.ts +7 -6
- package/dist/types/graphql/resolvers/field-resolvers/types.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/field-resolvers/union-value-resolver.d.ts +2 -2
- package/dist/types/graphql/resolvers/field-resolvers/union-value-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/object-type-field-default-value-resolver-generator.d.ts +4 -6
- package/dist/types/graphql/resolvers/object-type-field-default-value-resolver-generator.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.d.ts +2 -3
- 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 +2 -4
- 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 +2 -3
- 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-by-id-resolver.d.ts +2 -3
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts +2 -3
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-every-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.d.ts +2 -3
- package/dist/types/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/query-mutation-resolvers/union-type-resolver.d.ts +2 -3
- package/dist/types/graphql/resolvers/query-mutation-resolvers/union-type-resolver.d.ts.map +1 -1
- package/dist/types/graphql/resolvers/types.d.ts +16 -4
- package/dist/types/graphql/resolvers/types.d.ts.map +1 -1
- package/dist/types/graphql/schema-generator.d.ts +1 -1
- package/dist/types/graphql/schema-generator.d.ts.map +1 -1
- package/dist/types/graphql/schema-root-type-generator.d.ts +2 -2
- package/dist/types/graphql/schema-root-type-generator.d.ts.map +1 -1
- package/dist/types/graphql/schema-utils/entry-reference-util.d.ts +3 -2
- package/dist/types/graphql/schema-utils/entry-reference-util.d.ts.map +1 -1
- package/dist/types/graphql/util.d.ts +2 -0
- package/dist/types/graphql/util.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/persistence/cache.d.ts +1 -1
- package/dist/types/persistence/cache.d.ts.map +1 -1
- package/dist/types/persistence/persistence.d.ts +1 -1
- package/dist/types/persistence/persistence.d.ts.map +1 -1
- package/package.json +7 -5
- package/src/client.ts +3 -3
- package/src/graphql/apollo-config-factory.ts +2 -2
- package/src/graphql/errors.ts +0 -1
- package/src/graphql/input-type-generator.ts +2 -2
- package/src/graphql/queries-mutations-generator.ts +23 -24
- package/src/graphql/resolvers/field-resolvers/entry-reference-resolver.ts +24 -9
- package/src/graphql/resolvers/field-resolvers/field-default-value-resolver.ts +12 -14
- package/src/graphql/resolvers/field-resolvers/types.ts +9 -8
- package/src/graphql/resolvers/field-resolvers/union-value-resolver.ts +3 -5
- package/src/graphql/resolvers/object-type-field-default-value-resolver-generator.ts +44 -27
- package/src/graphql/resolvers/query-mutation-resolvers/mutation-create-resolver.ts +14 -14
- package/src/graphql/resolvers/query-mutation-resolvers/mutation-delete-resolver.ts +14 -14
- package/src/graphql/resolvers/query-mutation-resolvers/mutation-update-resolver.ts +18 -18
- package/src/graphql/resolvers/query-mutation-resolvers/query-by-id-resolver.ts +8 -9
- package/src/graphql/resolvers/query-mutation-resolvers/query-every-resolver.ts +8 -9
- package/src/graphql/resolvers/query-mutation-resolvers/query-type-by-id-resolver.ts +8 -9
- package/src/graphql/resolvers/query-mutation-resolvers/union-type-resolver.ts +22 -10
- package/src/graphql/resolvers/types.ts +28 -6
- package/src/graphql/schema-generator.ts +32 -39
- package/src/graphql/schema-root-type-generator.ts +5 -2
- package/src/graphql/schema-utils/entry-reference-util.ts +123 -24
- package/src/graphql/schema-utils/union-type-util.ts +1 -1
- package/src/graphql/util.ts +11 -0
- package/src/index.ts +3 -3
- package/src/persistence/cache.ts +2 -2
- package/src/persistence/persistence.ts +2 -2
- package/dist/tsconfig.build.cjs.tsbuildinfo +0 -1
- package/dist/tsconfig.build.esm.tsbuildinfo +0 -1
- package/dist/tsconfig.build.types.tsbuildinfo +0 -1
|
@@ -1,20 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.getReferencedEntryIds = getReferencedEntryIds;
|
|
13
4
|
const graphql_1 = require("graphql");
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
5
|
+
const persistence_ts_1 = require("../../persistence/persistence.js");
|
|
6
|
+
const union_type_util_ts_1 = require("./union-type-util.js");
|
|
7
|
+
const entry_type_util_ts_1 = require("./entry-type-util.js");
|
|
8
|
+
const errors_ts_1 = require("../errors.js");
|
|
9
|
+
const util_ts_1 = require("../util.js");
|
|
18
10
|
function isPermittedReferenceType(referencedTypeName, fieldType) {
|
|
19
11
|
if ((0, graphql_1.isNonNullType)(fieldType)) {
|
|
20
12
|
return isPermittedReferenceType(referencedTypeName, fieldType.ofType);
|
|
@@ -33,109 +25,152 @@ function isPermittedReferenceType(referencedTypeName, fieldType) {
|
|
|
33
25
|
}
|
|
34
26
|
return false;
|
|
35
27
|
}
|
|
36
|
-
function validateReference(context, fieldName, fieldType, fieldValue) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
28
|
+
async function validateReference(context, fieldName, fieldType, fieldValue) {
|
|
29
|
+
if ((0, graphql_1.isNonNullType)(fieldType)) {
|
|
30
|
+
await validateReference(context, fieldName, fieldType.ofType, fieldValue);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
else if ((0, graphql_1.isListType)(fieldType)) {
|
|
34
|
+
if (!Array.isArray(fieldValue)) {
|
|
35
|
+
throw (0, errors_ts_1.createError)(`Expected array while validation references for field "${fieldName}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
36
|
+
fieldName: fieldName,
|
|
37
|
+
fieldValue: fieldValue,
|
|
38
|
+
});
|
|
41
39
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
throw (0, errors_1.createError)(`Expected array while validation references for field "${fieldName}".`, "SCHEMA_DATA_MISMATCH" /* ErrorCode.SCHEMA_DATA_MISMATCH */, {
|
|
45
|
-
fieldName: fieldName,
|
|
46
|
-
fieldValue: fieldValue,
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
for (const fieldListElement of fieldValue) {
|
|
50
|
-
yield validateReference(context, fieldName, fieldType.ofType, fieldListElement);
|
|
51
|
-
}
|
|
52
|
-
return;
|
|
40
|
+
for (const fieldListElement of fieldValue) {
|
|
41
|
+
await validateReference(context, fieldName, fieldType.ofType, fieldListElement);
|
|
53
42
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
referencedTypeName = yield (0, persistence_1.getTypeById)(context, referencedId);
|
|
65
|
-
}
|
|
66
|
-
catch (_a) {
|
|
67
|
-
throw (0, errors_1.createError)(`Failed to resolve entry reference "${referencedId}".`, "BAD_USER_INPUT" /* ErrorCode.BAD_USER_INPUT */, {
|
|
68
|
-
fieldName: fieldName,
|
|
69
|
-
fieldValue: referencedId,
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
if (!isPermittedReferenceType(referencedTypeName, fieldType)) {
|
|
73
|
-
throw (0, errors_1.createError)(`Reference with ID "${referencedId}" points to entry of incompatible type "${referencedTypeName}".`, "BAD_USER_INPUT" /* ErrorCode.BAD_USER_INPUT */, {
|
|
74
|
-
fieldName: fieldName,
|
|
75
|
-
fieldValue: referencedId,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
else if ((0, graphql_1.isUnionType)(fieldType) || (0, graphql_1.isObjectType)(fieldType)) {
|
|
46
|
+
if (fieldValue === null ||
|
|
47
|
+
!('id' in fieldValue) ||
|
|
48
|
+
typeof fieldValue.id !== 'string') {
|
|
49
|
+
throw (0, errors_ts_1.createError)(`Expected key "id" with value of type string in data while validating reference for field "${fieldName}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
50
|
+
fieldName: fieldName,
|
|
51
|
+
fieldValue: fieldValue,
|
|
52
|
+
});
|
|
78
53
|
}
|
|
79
|
-
|
|
54
|
+
const referencedId = fieldValue.id;
|
|
55
|
+
let referencedTypeName;
|
|
56
|
+
try {
|
|
57
|
+
referencedTypeName = await (0, persistence_ts_1.getTypeById)(context, referencedId);
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
throw (0, errors_ts_1.createError)(`Failed to resolve entry reference "${referencedId}".`, "BAD_USER_INPUT" /* ErrorCode.BAD_USER_INPUT */, {
|
|
61
|
+
fieldName: fieldName,
|
|
62
|
+
fieldValue: referencedId,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
if (!isPermittedReferenceType(referencedTypeName, fieldType)) {
|
|
66
|
+
throw (0, errors_ts_1.createError)(`Reference with ID "${referencedId}" points to entry of incompatible type "${referencedTypeName}".`, "BAD_USER_INPUT" /* ErrorCode.BAD_USER_INPUT */, {
|
|
67
|
+
fieldName: fieldName,
|
|
68
|
+
fieldValue: referencedId,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
80
72
|
}
|
|
81
|
-
function getReferencedEntryIds(rootType, context, fieldName, type, data) {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
73
|
+
async function getReferencedEntryIds(rootType, context, fieldName, type, data) {
|
|
74
|
+
if (data === null || (0, graphql_1.isScalarType)(type)) {
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
if ((0, graphql_1.isNonNullType)(type)) {
|
|
78
|
+
return getReferencedEntryIds(rootType, context, fieldName, type.ofType, data);
|
|
79
|
+
}
|
|
80
|
+
else if ((0, graphql_1.isListType)(type)) {
|
|
81
|
+
if (!Array.isArray(data)) {
|
|
82
|
+
throw (0, errors_ts_1.createError)(`Expected array as data for field "${fieldName}". `, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
83
|
+
fieldName: fieldName ? fieldName : undefined,
|
|
84
|
+
fieldValue: data,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
let referencedEntryIds = [];
|
|
88
|
+
for (const element of data) {
|
|
89
|
+
referencedEntryIds = [
|
|
90
|
+
...referencedEntryIds,
|
|
91
|
+
...(await getReferencedEntryIds(rootType, context, fieldName, type.ofType, element)),
|
|
92
|
+
];
|
|
93
|
+
}
|
|
94
|
+
// deduplicate
|
|
95
|
+
referencedEntryIds = [...new Set(referencedEntryIds)];
|
|
96
|
+
return referencedEntryIds;
|
|
97
|
+
}
|
|
98
|
+
else if ((0, graphql_1.isUnionType)(type)) {
|
|
99
|
+
if ((0, entry_type_util_ts_1.isUnionOfEntryTypes)(type)) {
|
|
100
|
+
const referenceId = await getValidatedReferenceId(context, fieldName, type, data);
|
|
101
|
+
return [referenceId];
|
|
86
102
|
}
|
|
87
|
-
|
|
103
|
+
const requestedUnionTypeName = (0, union_type_util_ts_1.getUnionTypeNameFromFieldValue)(data);
|
|
104
|
+
const concreteFieldUnionType = type
|
|
105
|
+
.getTypes()
|
|
106
|
+
.find((concreteFieldType) => concreteFieldType.name === requestedUnionTypeName);
|
|
107
|
+
if (!concreteFieldUnionType) {
|
|
108
|
+
throw (0, errors_ts_1.createError)(`Type "${requestedUnionTypeName}" found in field data is not a valid type for ` +
|
|
109
|
+
`union type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
110
|
+
typeName: type.name,
|
|
111
|
+
fieldName: fieldName ? fieldName : undefined,
|
|
112
|
+
fieldValue: data,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
const unionValue = (0, union_type_util_ts_1.getUnionValue)(data);
|
|
116
|
+
return getReferencedEntryIds(rootType, context, fieldName, concreteFieldUnionType, unionValue);
|
|
117
|
+
}
|
|
118
|
+
else if ((0, graphql_1.isObjectType)(type)) {
|
|
119
|
+
if (type.name !== rootType.name && (0, entry_type_util_ts_1.hasEntryDirective)(type)) {
|
|
120
|
+
const referenceId = await getValidatedReferenceId(context, fieldName, type, data);
|
|
121
|
+
return [referenceId];
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
88
124
|
let referencedEntryIds = [];
|
|
89
|
-
for (const
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
125
|
+
for (const [fieldsKey, field] of Object.entries(type.getFields())) {
|
|
126
|
+
if (Array.isArray(data)) {
|
|
127
|
+
throw (0, errors_ts_1.createError)(`Expected object as data for type "${type.name}".`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
128
|
+
typeName: type.name,
|
|
129
|
+
fieldName: field.name ? field.name : undefined,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
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
|
+
// recursively get referenced IDs in nested data
|
|
146
|
+
const nestedResult = await getReferencedEntryIds(rootType, context, fieldsKey, field.type, fieldValue);
|
|
147
|
+
referencedEntryIds = [...referencedEntryIds, ...nestedResult];
|
|
94
148
|
}
|
|
95
149
|
// deduplicate
|
|
96
150
|
referencedEntryIds = [...new Set(referencedEntryIds)];
|
|
97
151
|
return referencedEntryIds;
|
|
98
152
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
yield validateReference(context, fieldName !== null && fieldName !== void 0 ? fieldName : '', type, data);
|
|
122
|
-
return [data.id];
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
let referencedEntryIds = [];
|
|
126
|
-
for (const [fieldsKey, field] of Object.entries(type.getFields())) {
|
|
127
|
-
const fieldValue = (_a = data[fieldsKey]) !== null && _a !== void 0 ? _a : undefined;
|
|
128
|
-
if (fieldValue !== undefined) {
|
|
129
|
-
const nestedResult = yield getReferencedEntryIds(rootType, context, fieldsKey, field.type, fieldValue);
|
|
130
|
-
referencedEntryIds = [...referencedEntryIds, ...nestedResult];
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
// deduplicate
|
|
134
|
-
referencedEntryIds = [...new Set(referencedEntryIds)];
|
|
135
|
-
return referencedEntryIds;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
return [];
|
|
139
|
-
});
|
|
153
|
+
}
|
|
154
|
+
return [];
|
|
155
|
+
}
|
|
156
|
+
async function getValidatedReferenceId(context, fieldName, type, data) {
|
|
157
|
+
if (data === null || typeof data !== 'object' || Array.isArray(data)) {
|
|
158
|
+
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
|
+
typeName: type.name,
|
|
160
|
+
fieldName: fieldName ? fieldName : undefined,
|
|
161
|
+
fieldValue: data,
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
await validateReference(context, fieldName ? fieldName : '', type, data);
|
|
165
|
+
let referencedId = null;
|
|
166
|
+
if (typeof (referencedId = data.id) !== 'string') {
|
|
167
|
+
throw (0, errors_ts_1.createError)(`Expected a key "id" with value of type string in data of field "${fieldName}" of type "${type.name}"` +
|
|
168
|
+
` after this reference was just verified to be valid.`, "INTERNAL_ERROR" /* ErrorCode.INTERNAL_ERROR */, {
|
|
169
|
+
typeName: type.name,
|
|
170
|
+
fieldName: fieldName ? fieldName : undefined,
|
|
171
|
+
fieldValue: data,
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
return referencedId;
|
|
140
175
|
}
|
|
141
176
|
//# sourceMappingURL=entry-reference-util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { GraphQLNullableType, GraphQLObjectType, GraphQLUnionType } from 'graphql';
|
|
2
|
+
export declare function hasEntryDirective(type: GraphQLObjectType): boolean;
|
|
3
|
+
export declare function isUnionOfEntryTypes(type: GraphQLUnionType): boolean;
|
|
4
|
+
export declare function buildsOnTypeWithEntryDirective(type: GraphQLNullableType): boolean;
|
|
@@ -5,9 +5,8 @@ exports.isUnionOfEntryTypes = isUnionOfEntryTypes;
|
|
|
5
5
|
exports.buildsOnTypeWithEntryDirective = buildsOnTypeWithEntryDirective;
|
|
6
6
|
const graphql_1 = require("graphql");
|
|
7
7
|
function hasEntryDirective(type) {
|
|
8
|
-
var _a;
|
|
9
8
|
return (!!type.astNode &&
|
|
10
|
-
|
|
9
|
+
type.astNode.directives?.find((directive) => directive.name.value === 'Entry') !== undefined);
|
|
11
10
|
}
|
|
12
11
|
function isUnionOfEntryTypes(type) {
|
|
13
12
|
return type
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-type-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-type-util.ts"],"names":[],"mappings":";;AAUA,8CAOC;AAED,kDAIC;AAED,wEAaC;AAtCD,qCAQgB;AAEhB,SAAgB,iBAAiB,CAAC,IAAuB
|
|
1
|
+
{"version":3,"file":"entry-type-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-type-util.ts"],"names":[],"mappings":";;AAUA,8CAOC;AAED,kDAIC;AAED,wEAaC;AAtCD,qCAQgB;AAEhB,SAAgB,iBAAiB,CAAC,IAAuB;IACvD,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,OAAO;QACd,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAC3B,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAChD,KAAK,SAAS,CAChB,CAAA;AACH,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAsB;IACxD,OAAO,IAAI;SACR,QAAQ,EAAE;SACV,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC,CAAA;AACpE,CAAC;AAED,SAAgB,8BAA8B,CAC5C,IAAyB;IAEzB,IAAI,IAAA,uBAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACpD,CAAC;SAAM,IAAI,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACpD,CAAC;SAAM,IAAI,IAAA,qBAAW,EAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC;SAAM,IAAI,IAAA,sBAAY,EAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getUnionTypeNameFromFieldValue = getUnionTypeNameFromFieldValue;
|
|
4
4
|
exports.getUnionValue = getUnionValue;
|
|
5
|
-
const
|
|
5
|
+
const errors_ts_1 = require("../errors.js");
|
|
6
6
|
function getUnionTypeNameFromFieldValue(fieldValue) {
|
|
7
7
|
if (typeof fieldValue !== 'object' || fieldValue === null) {
|
|
8
|
-
throw (0,
|
|
8
|
+
throw (0, errors_ts_1.createError)(`Expected object value in order to determine union type name.`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
9
9
|
fieldValue: fieldValue,
|
|
10
10
|
});
|
|
11
11
|
}
|
|
@@ -15,7 +15,7 @@ function getUnionTypeNameFromFieldValue(fieldValue) {
|
|
|
15
15
|
}
|
|
16
16
|
function getUnionValue(fieldValue) {
|
|
17
17
|
if (typeof fieldValue !== 'object' || fieldValue === null) {
|
|
18
|
-
throw (0,
|
|
18
|
+
throw (0, errors_ts_1.createError)(`Expected object value in order to determine union value.`, "BAD_REPOSITORY_DATA" /* ErrorCode.BAD_REPOSITORY_DATA */, {
|
|
19
19
|
fieldValue: fieldValue,
|
|
20
20
|
});
|
|
21
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union-type-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/union-type-util.ts"],"names":[],"mappings":";;AAGA,wEAcC;AAED,sCAaC;AA/BD,
|
|
1
|
+
{"version":3,"file":"union-type-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/union-type-util.ts"],"names":[],"mappings":";;AAGA,wEAcC;AAED,sCAaC;AA/BD,4CAAqD;AAErD,SAAgB,8BAA8B,CAAC,UAAmB;IAChE,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,IAAA,uBAAW,EACf,8DAA8D,6DAE9D;YACE,UAAU,EAAE,UAAU;SACvB,CACF,CAAA;IACH,CAAC;IAED,qEAAqE;IACrE,2CAA2C;IAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AACnC,CAAC;AAED,SAAgB,aAAa,CAAC,UAAmB;IAC/C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,IAAA,uBAAW,EACf,0DAA0D,6DAE1D;YACE,UAAU,EAAE,UAAU;SACvB,CACF,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,OAAQ,UAAwC,CAAC,QAAQ,CAAC,CAAA;AAC5D,CAAC"}
|
|
@@ -3,18 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getValidationResult = getValidationResult;
|
|
4
4
|
const graphql_1 = require("graphql");
|
|
5
5
|
function checkUnionMembersConsistentUseOfEntryDirective(schema) {
|
|
6
|
-
var _a;
|
|
7
6
|
const typeMap = schema.getTypeMap();
|
|
8
7
|
for (const type of Object.values(typeMap)) {
|
|
9
|
-
if (
|
|
8
|
+
if (type.astNode?.kind !== graphql_1.Kind.UNION_TYPE_DEFINITION) {
|
|
10
9
|
continue;
|
|
11
10
|
}
|
|
12
11
|
const innerTypes = type.getTypes();
|
|
13
|
-
const numberUnionMembersWithEntryDirective = innerTypes.filter((innerType) =>
|
|
14
|
-
|
|
15
|
-
return !!innerType.astNode &&
|
|
16
|
-
((_a = innerType.astNode.directives) === null || _a === void 0 ? void 0 : _a.find((directive) => directive.name.value === 'Entry')) !== undefined;
|
|
17
|
-
}).length;
|
|
12
|
+
const numberUnionMembersWithEntryDirective = innerTypes.filter((innerType) => !!innerType.astNode &&
|
|
13
|
+
innerType.astNode.directives?.find((directive) => directive.name.value === 'Entry') !== undefined).length;
|
|
18
14
|
if (numberUnionMembersWithEntryDirective !== 0 &&
|
|
19
15
|
numberUnionMembersWithEntryDirective !== innerTypes.length) {
|
|
20
16
|
return `Either all union members of "${type.name}" must have "@Entry" directive or none.`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/graphql/schema-validator.ts"],"names":[],"mappings":";;AAgCA,kDAIC;AApCD,qCAA+D;AAE/D,SAAS,8CAA8C,CACrD,MAAqB
|
|
1
|
+
{"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/graphql/schema-validator.ts"],"names":[],"mappings":";;AAgCA,kDAIC;AApCD,qCAA+D;AAE/D,SAAS,8CAA8C,CACrD,MAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;IAEnC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAAE,CAAC;YACtD,SAAQ;QACV,CAAC;QACD,MAAM,UAAU,GAAI,IAAyB,CAAC,QAAQ,EAAE,CAAA;QAExD,MAAM,oCAAoC,GAAG,UAAU,CAAC,MAAM,CAC5D,CAAC,SAAS,EAAE,EAAE,CACZ,CAAC,CAAC,SAAS,CAAC,OAAO;YACnB,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAChC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAChD,KAAK,SAAS,CAClB,CAAC,MAAM,CAAA;QAER,IACE,oCAAoC,KAAK,CAAC;YAC1C,oCAAoC,KAAK,UAAU,CAAC,MAAM,EAC1D,CAAC;YACD,OAAO,gCAAgC,IAAI,CAAC,IAAI,yCAAyC,CAAA;QAC3F,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAqB;IACvD,MAAM,OAAO,GAAG,EAAE,CAAA;IAClB,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,MAAM,CAAC,CAAC,CAAA;IACpE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,CAAA;AAClD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isRecord(obj: unknown): obj is Record<string, unknown>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isRecord = isRecord;
|
|
4
|
+
function isRecord(obj) {
|
|
5
|
+
if (typeof obj !== 'object') {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
if (Array.isArray(obj)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
return Object.getOwnPropertySymbols(obj).length === 0;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=util.js.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ApolloExecuteOperationRequest, GraphQLResponse, SchemaResponse, VariableValues } from './client.ts';
|
|
2
|
+
import { GitAdapter } from '@commitspark/git-adapter';
|
|
3
|
+
import { ErrorCode, ErrorMetadata } from './graphql/errors.ts';
|
|
4
|
+
interface Client {
|
|
5
|
+
postGraphQL<TData = Record<string, unknown>, TVariables extends VariableValues = VariableValues>(ref: string, request: ApolloExecuteOperationRequest<TData, TVariables>): Promise<GraphQLResponse<TData | null>>;
|
|
6
|
+
getSchema(ref: string): Promise<SchemaResponse>;
|
|
7
|
+
}
|
|
8
|
+
export { Client, GraphQLResponse, SchemaResponse, ErrorCode, ErrorMetadata };
|
|
9
|
+
export declare function createClient(gitAdapter: GitAdapter): Promise<Client>;
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,24 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.createClient = createClient;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
function createClient(gitAdapter) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
};
|
|
22
|
-
});
|
|
4
|
+
const client_ts_1 = require("./client.js");
|
|
5
|
+
const cache_ts_1 = require("./persistence/cache.js");
|
|
6
|
+
async function createClient(gitAdapter) {
|
|
7
|
+
const repositoryCache = (0, cache_ts_1.createCacheHandler)();
|
|
8
|
+
return {
|
|
9
|
+
postGraphQL: (...args) => (0, client_ts_1.postGraphQL)(gitAdapter, repositoryCache, ...args),
|
|
10
|
+
getSchema: (...args) => (0, client_ts_1.getSchema)(gitAdapter, repositoryCache, ...args),
|
|
11
|
+
};
|
|
23
12
|
}
|
|
24
13
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;AAyBA,oCAMC;AA/BD,2CAOoB;AAGpB,qDAA2D;AAepD,KAAK,UAAU,YAAY,CAAC,UAAsB;IACvD,MAAM,eAAe,GAAG,IAAA,6BAAkB,GAAE,CAAA;IAC5C,OAAO;QACL,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAA,uBAAW,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAC3E,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAA,qBAAS,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;KACxE,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Entry } from '@commitspark/git-adapter';
|
|
2
|
+
import { ApolloContext } from '../client.ts';
|
|
3
|
+
interface EntriesRecord {
|
|
4
|
+
byId: Map<string, Entry>;
|
|
5
|
+
byType: Map<string, Entry[]>;
|
|
6
|
+
}
|
|
7
|
+
export interface RepositoryCacheHandler {
|
|
8
|
+
getEntriesRecord: (context: ApolloContext, ref: string) => Promise<EntriesRecord>;
|
|
9
|
+
getSchema: (context: ApolloContext, ref: string) => Promise<string>;
|
|
10
|
+
}
|
|
11
|
+
export declare const createCacheHandler: (cacheSize?: number) => RepositoryCacheHandler;
|
|
12
|
+
export {};
|
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.createCacheHandler = void 0;
|
|
13
4
|
const git_adapter_1 = require("@commitspark/git-adapter");
|
|
14
|
-
const
|
|
5
|
+
const errors_ts_1 = require("../graphql/errors.js");
|
|
15
6
|
const MAX_CACHE_ENTRIES = 50;
|
|
16
7
|
// intentionally not async so that the same in-flight promise is returned to all callers
|
|
17
8
|
const getEntriesRecordByRef = (entriesCache, inflightEntries, cacheSize, context, ref) => {
|
|
@@ -30,17 +21,17 @@ const getEntriesRecordByRef = (entriesCache, inflightEntries, cacheSize, context
|
|
|
30
21
|
inflightEntries.set(ref, fetchPromise);
|
|
31
22
|
return fetchPromise;
|
|
32
23
|
};
|
|
33
|
-
const fetchAndCacheEntries = (entriesCache, cacheSize, context, ref) =>
|
|
24
|
+
const fetchAndCacheEntries = async (entriesCache, cacheSize, context, ref) => {
|
|
34
25
|
let allEntries;
|
|
35
26
|
try {
|
|
36
|
-
allEntries =
|
|
27
|
+
allEntries = await context.gitAdapter.getEntries(ref);
|
|
37
28
|
}
|
|
38
29
|
catch (err) {
|
|
39
30
|
if (err instanceof git_adapter_1.GitAdapterError) {
|
|
40
|
-
throw (0,
|
|
31
|
+
throw (0, errors_ts_1.createError)(err.message, err.code, {});
|
|
41
32
|
}
|
|
42
33
|
const message = err instanceof Error ? err.message : String(err);
|
|
43
|
-
throw (0,
|
|
34
|
+
throw (0, errors_ts_1.createError)(message, "INTERNAL_ERROR" /* ErrorCode.INTERNAL_ERROR */, {});
|
|
44
35
|
}
|
|
45
36
|
const entriesById = new Map(allEntries.map((entry) => [entry.id, entry]));
|
|
46
37
|
const entriesByType = new Map();
|
|
@@ -62,8 +53,8 @@ const fetchAndCacheEntries = (entriesCache, cacheSize, context, ref) => __awaite
|
|
|
62
53
|
}
|
|
63
54
|
}
|
|
64
55
|
return newCacheRecord;
|
|
65
|
-
}
|
|
66
|
-
const getSchemaStringByRef = (schemaCache, cacheSize, context, ref) =>
|
|
56
|
+
};
|
|
57
|
+
const getSchemaStringByRef = async (schemaCache, cacheSize, context, ref) => {
|
|
67
58
|
const schemaCacheRecord = schemaCache.get(ref);
|
|
68
59
|
if (schemaCacheRecord !== undefined) {
|
|
69
60
|
// move map key back to end of list (newest)
|
|
@@ -73,14 +64,14 @@ const getSchemaStringByRef = (schemaCache, cacheSize, context, ref) => __awaiter
|
|
|
73
64
|
}
|
|
74
65
|
let schemaString;
|
|
75
66
|
try {
|
|
76
|
-
schemaString =
|
|
67
|
+
schemaString = await context.gitAdapter.getSchema(ref);
|
|
77
68
|
}
|
|
78
69
|
catch (err) {
|
|
79
70
|
if (err instanceof git_adapter_1.GitAdapterError) {
|
|
80
|
-
throw (0,
|
|
71
|
+
throw (0, errors_ts_1.createError)(err.message, err.code, {});
|
|
81
72
|
}
|
|
82
73
|
const message = err instanceof Error ? err.message : String(err);
|
|
83
|
-
throw (0,
|
|
74
|
+
throw (0, errors_ts_1.createError)(message, "INTERNAL_ERROR" /* ErrorCode.INTERNAL_ERROR */, {});
|
|
84
75
|
}
|
|
85
76
|
schemaCache.set(ref, schemaString);
|
|
86
77
|
if (schemaCache.size > cacheSize) {
|
|
@@ -91,7 +82,7 @@ const getSchemaStringByRef = (schemaCache, cacheSize, context, ref) => __awaiter
|
|
|
91
82
|
}
|
|
92
83
|
}
|
|
93
84
|
return schemaString;
|
|
94
|
-
}
|
|
85
|
+
};
|
|
95
86
|
const createCacheHandler = (cacheSize = MAX_CACHE_ENTRIES) => {
|
|
96
87
|
const entriesCache = new Map();
|
|
97
88
|
const schemaCache = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/persistence/cache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/persistence/cache.ts"],"names":[],"mappings":";;;AAAA,0DAAiE;AAEjE,oDAA6D;AAoB7D,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAE5B,wFAAwF;AACxF,MAAM,qBAAqB,GAAG,CAC5B,YAA0B,EAC1B,eAAgC,EAChC,SAAiB,EACjB,OAAsB,EACtB,GAAW,EACa,EAAE;IAC1B,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACzC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,4CAA4C;QAC5C,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;QAElC,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACrC,CAAC;IAED,MAAM,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChD,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,eAAe,CAAA;IACxB,CAAC;IAED,MAAM,YAAY,GAAG,oBAAoB,CACvC,YAAY,EACZ,SAAS,EACT,OAAO,EACP,GAAG,CACJ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAE5C,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IAEtC,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,KAAK,EAChC,YAA0B,EAC1B,SAAiB,EACjB,OAAsB,EACtB,GAAW,EACa,EAAE;IAC1B,IAAI,UAAmB,CAAA;IACvB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACvD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,6BAAe,EAAE,CAAC;YACnC,MAAM,IAAA,uBAAW,EAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAC9C,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChE,MAAM,IAAA,uBAAW,EAAC,OAAO,mDAA4B,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IACzE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmB,CAAA;IAChD,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,qBAAqB,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QAC1E,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACjC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,cAAc,GAAG;QACrB,MAAM,EAAE,aAAa;QACrB,IAAI,EAAE,WAAW;KAClB,CAAA;IAED,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IAErC,IAAI,YAAY,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;QAClC,6BAA6B;QAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAwB,CAAA;QACrE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,KAAK,EAChC,WAAwB,EACxB,SAAiB,EACjB,OAAsB,EACtB,GAAW,EACM,EAAE;IACnB,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC9C,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACpC,4CAA4C;QAC5C,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACvB,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAA;QAEvC,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAED,IAAI,YAAY,CAAA;IAChB,IAAI,CAAC;QACH,YAAY,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,6BAAe,EAAE,CAAC;YACnC,MAAM,IAAA,uBAAW,EAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAC9C,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChE,MAAM,IAAA,uBAAW,EAAC,OAAO,mDAA4B,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IAElC,IAAI,WAAW,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;QACjC,6BAA6B;QAC7B,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAwB,CAAA;QACpE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAEM,MAAM,kBAAkB,GAAG,CAChC,YAAoB,iBAAiB,EACb,EAAE;IAC1B,MAAM,YAAY,GAAiB,IAAI,GAAG,EAAsB,CAAA;IAChE,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAe,CAAA;IACvD,MAAM,eAAe,GAAoB,IAAI,GAAG,EAG7C,CAAA;IACH,OAAO;QACL,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAC5B,qBAAqB,CAAC,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC1E,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CACrB,oBAAoB,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;KACxD,CAAA;AACH,CAAC,CAAA;AAfY,QAAA,kBAAkB,sBAe9B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Entry } from '@commitspark/git-adapter';
|
|
2
|
+
import { ApolloContext } from '../client.ts';
|
|
3
|
+
export declare function getTypeById(context: ApolloContext, id: string): Promise<string>;
|
|
4
|
+
export declare function findById(context: ApolloContext, id: string): Promise<Entry>;
|
|
5
|
+
export declare function findByType(context: ApolloContext, type: string): Promise<Entry[]>;
|
|
6
|
+
export declare function findByTypeId(context: ApolloContext, type: string, id: string): Promise<Entry>;
|