Sha256: 4b7d93a84c94e0c762a931d63ec3827f6700cf7fc437dad9199c05f4ed8b5027

Contents?: true

Size: 1.03 KB

Versions: 26

Compression:

Stored size: 1.03 KB

Contents

import { invariant } from '../jsutils/invariant.mjs';
import { parse } from '../language/parser.mjs';
import { executeSync } from '../execution/execute.mjs';
import { getIntrospectionQuery } from './getIntrospectionQuery.mjs';
/**
 * Build an IntrospectionQuery from a GraphQLSchema
 *
 * IntrospectionQuery is useful for utilities that care about type and field
 * relationships, but do not need to traverse through those relationships.
 *
 * This is the inverse of buildClientSchema. The primary use case is outside
 * of the server context, for instance when doing schema comparisons.
 */

export function introspectionFromSchema(schema, options) {
  const optionsWithDefaults = {
    specifiedByUrl: true,
    directiveIsRepeatable: true,
    schemaDescription: true,
    inputValueDeprecation: true,
    oneOf: true,
    ...options,
  };
  const document = parse(getIntrospectionQuery(optionsWithDefaults));
  const result = executeSync({
    schema,
    document,
  });
  (!result.errors && result.data) || invariant(false);
  return result.data;
}

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
clapton-0.0.26 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.25 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.24 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.23 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.22 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.21 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.20 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.19 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.18 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.17 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.16 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.15 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.14 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.13 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.12 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.11 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.10 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.9 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.8 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs
clapton-0.0.7 lib/clapton/javascripts/node_modules/graphql/utilities/introspectionFromSchema.mjs