UNPKG

@cran/gql.core

Version:

Cran/GraphQL Core Utilities

31 lines (30 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createArg = exports.withAugmentedIntrospection = void 0; const wrapResolver_1 = require("../utilities/wrapResolver"); const introspection_1 = require("graphql/type/introspection"); function withAugmentedIntrospection() { introspection_1.__Schema.getFields().types.args = [ createArg({ name: "kind", type: introspection_1.__TypeKind, }), ]; const resolver = introspection_1.__Type.getFields().kind.resolve; (0, wrapResolver_1.modifyResolver)(introspection_1.__Schema.getFields().types, function filterByKind(result, _source, args) { if (!args.kind) { return result; } return result.filter(function filter(type) { return args.kind === resolver(type); }); }); } exports.withAugmentedIntrospection = withAugmentedIntrospection; function createArg(config) { return { description: undefined, defaultValue: null, extensions: undefined, astNode: undefined, ...config, }; } exports.createArg = createArg;