UNPKG

1.07 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.checkForResolveTypeResolver = void 0;
4const utils_1 = require("@graphql-tools/utils");
5// If we have any union or interface types throw if no there is no resolveType resolver
6function checkForResolveTypeResolver(schema, requireResolversForResolveType) {
7 (0, utils_1.mapSchema)(schema, {
8 [utils_1.MapperKind.ABSTRACT_TYPE]: type => {
9 if (!type.resolveType) {
10 const message = `Type "${type.name}" is missing a "__resolveType" resolver. Pass 'ignore' into ` +
11 '"resolverValidationOptions.requireResolversForResolveType" to disable this error.';
12 if (requireResolversForResolveType === 'error') {
13 throw new Error(message);
14 }
15 if (requireResolversForResolveType === 'warn') {
16 console.warn(message);
17 }
18 }
19 return undefined;
20 },
21 });
22}
23exports.checkForResolveTypeResolver = checkForResolveTypeResolver;