diff --git a/.eslintrc.yml b/.eslintrc.yml index 4c15713ffc..6e21f0e94f 100644 --- a/.eslintrc.yml +++ b/.eslintrc.yml @@ -9,6 +9,7 @@ plugins: - internal-rules - node - import + - simple-import-sort settings: node: tryExtensions: ['.js', '.json', '.node', '.ts', '.d.ts'] @@ -140,6 +141,38 @@ rules: import/group-exports: off import/dynamic-import-chunkname: off + ############################################################################## + # `eslint-plugin-simple-import-sort` rule list based on `v2.25.x` + # https://github.com/lydell/eslint-plugin-simple-import-sort + ############################################################################## + simple-import-sort/imports: + - error + - groups: + # Packages. + # Things that start with a letter (or digit or underscore), or `@` followed by a letter. + - ["^@?\\w"] + + # General utilities + - ["^(\\./|(\\.\\./)+)__testUtils__/"] + - ["^(\\./|(\\.\\./)+)jsutils/"] + + # Top-level directories + - ["^(\\./|(\\.\\./)+)error/"] + - ["^(\\./|(\\.\\./)+)language/"] + - ["^(\\./|(\\.\\./)+)type/"] + - ["^(\\./|(\\.\\./)+)validation/"] + - ["^(\\./|(\\.\\./)+)execution/"] + - ["^(\\./|(\\.\\./)+)utilities/"] + + # Relative imports. + # Anything that starts with a dot. + - ["^(\\.\\./){4,}"] + - ["^(\\.\\./){3}"] + - ["^(\\.\\./){2}"] + - ["^(\\.\\./){1}"] + - ["^\\./"] + simple-import-sort/exports: off # TODO + ############################################################################## # ESLint builtin rules list based on `v8.5.x` ############################################################################## diff --git a/package-lock.json b/package-lock.json index da994515eb..46934fc8d4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,6 +26,7 @@ "eslint-plugin-import": "2.25.3", "eslint-plugin-internal-rules": "file:./resources/eslint-internal-rules", "eslint-plugin-node": "11.1.0", + "eslint-plugin-simple-import-sort": "7.0.0", "eslint-plugin-tsdoc": "0.2.14", "mocha": "9.1.3", "prettier": "2.5.1", @@ -3611,6 +3612,15 @@ "node": ">=4" } }, + "node_modules/eslint-plugin-simple-import-sort": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-7.0.0.tgz", + "integrity": "sha512-U3vEDB5zhYPNfxT5TYR7u01dboFZp+HNpnGhkDB2g/2E4wZ/g1Q9Ton8UwCLfRV9yAKyYqDh62oHOamvkFxsvw==", + "dev": true, + "peerDependencies": { + "eslint": ">=5.0.0" + } + }, "node_modules/eslint-plugin-tsdoc": { "version": "0.2.14", "resolved": "https://registry.npmjs.org/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.14.tgz", @@ -9324,6 +9334,13 @@ } } }, + "eslint-plugin-simple-import-sort": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-7.0.0.tgz", + "integrity": "sha512-U3vEDB5zhYPNfxT5TYR7u01dboFZp+HNpnGhkDB2g/2E4wZ/g1Q9Ton8UwCLfRV9yAKyYqDh62oHOamvkFxsvw==", + "dev": true, + "requires": {} + }, "eslint-plugin-tsdoc": { "version": "0.2.14", "resolved": "https://registry.npmjs.org/eslint-plugin-tsdoc/-/eslint-plugin-tsdoc-0.2.14.tgz", diff --git a/package.json b/package.json index decd58b9cb..6a870cc842 100644 --- a/package.json +++ b/package.json @@ -67,6 +67,7 @@ "eslint-plugin-import": "2.25.3", "eslint-plugin-internal-rules": "file:./resources/eslint-internal-rules", "eslint-plugin-node": "11.1.0", + "eslint-plugin-simple-import-sort": "7.0.0", "eslint-plugin-tsdoc": "0.2.14", "mocha": "9.1.3", "prettier": "2.5.1", diff --git a/src/__testUtils__/expectJSON.ts b/src/__testUtils__/expectJSON.ts index 26c236011f..64e2ba5dea 100644 --- a/src/__testUtils__/expectJSON.ts +++ b/src/__testUtils__/expectJSON.ts @@ -1,7 +1,7 @@ import { expect } from 'chai'; -import { mapValue } from '../jsutils/mapValue'; import { isObjectLike } from '../jsutils/isObjectLike'; +import { mapValue } from '../jsutils/mapValue'; /** * Deeply transforms an arbitrary value to a JSON-safe value by calling toJSON diff --git a/src/__tests__/starWarsSchema.ts b/src/__tests__/starWarsSchema.ts index 7bd8fb3e8f..c646c8aea3 100644 --- a/src/__tests__/starWarsSchema.ts +++ b/src/__tests__/starWarsSchema.ts @@ -1,14 +1,14 @@ -import { GraphQLSchema } from '../type/schema'; -import { GraphQLString } from '../type/scalars'; import { - GraphQLList, - GraphQLNonNull, GraphQLEnumType, GraphQLInterfaceType, + GraphQLList, + GraphQLNonNull, GraphQLObjectType, } from '../type/definition'; +import { GraphQLString } from '../type/scalars'; +import { GraphQLSchema } from '../type/schema'; -import { getFriends, getHero, getHuman, getDroid } from './starWarsData'; +import { getDroid, getFriends, getHero, getHuman } from './starWarsData'; /** * This is designed to be an end-to-end test, demonstrating diff --git a/src/error/GraphQLError.ts b/src/error/GraphQLError.ts index 285fe3797c..6d6677fa16 100644 --- a/src/error/GraphQLError.ts +++ b/src/error/GraphQLError.ts @@ -2,10 +2,10 @@ import { isObjectLike } from '../jsutils/isObjectLike'; import type { Maybe } from '../jsutils/Maybe'; import type { ASTNode, Location } from '../language/ast'; -import type { Source } from '../language/source'; import type { SourceLocation } from '../language/location'; import { getLocation } from '../language/location'; import { printLocation, printSourceLocation } from '../language/printLocation'; +import type { Source } from '../language/source'; /** * Custom extensions diff --git a/src/error/__tests__/GraphQLError-test.ts b/src/error/__tests__/GraphQLError-test.ts index 81dbf1fc71..21e1ab1f5b 100644 --- a/src/error/__tests__/GraphQLError-test.ts +++ b/src/error/__tests__/GraphQLError-test.ts @@ -9,7 +9,7 @@ import { Kind } from '../../language/kinds'; import { parse } from '../../language/parser'; import { Source } from '../../language/source'; -import { GraphQLError, printError, formatError } from '../GraphQLError'; +import { formatError, GraphQLError, printError } from '../GraphQLError'; const source = new Source(dedent` { diff --git a/src/execution/__tests__/abstract-test.ts b/src/execution/__tests__/abstract-test.ts index 998ad707f4..5253d0d9e0 100644 --- a/src/execution/__tests__/abstract-test.ts +++ b/src/execution/__tests__/abstract-test.ts @@ -5,19 +5,19 @@ import { expectJSON } from '../../__testUtils__/expectJSON'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString, GraphQLBoolean } from '../../type/scalars'; import { assertInterfaceType, + GraphQLInterfaceType, GraphQLList, GraphQLObjectType, - GraphQLInterfaceType, GraphQLUnionType, } from '../../type/definition'; +import { GraphQLBoolean, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../../utilities/buildASTSchema'; -import { executeSync, execute } from '../execute'; +import { execute, executeSync } from '../execute'; async function executeQuery(args: { schema: GraphQLSchema; diff --git a/src/execution/__tests__/directives-test.ts b/src/execution/__tests__/directives-test.ts index 92c8fb9c5f..0c85f5caac 100644 --- a/src/execution/__tests__/directives-test.ts +++ b/src/execution/__tests__/directives-test.ts @@ -3,9 +3,9 @@ import { describe, it } from 'mocha'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString } from '../../type/scalars'; import { GraphQLObjectType } from '../../type/definition'; +import { GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { executeSync } from '../execute'; diff --git a/src/execution/__tests__/executor-test.ts b/src/execution/__tests__/executor-test.ts index fa59d32fd0..116334aded 100644 --- a/src/execution/__tests__/executor-test.ts +++ b/src/execution/__tests__/executor-test.ts @@ -9,16 +9,16 @@ import { invariant } from '../../jsutils/invariant'; import { Kind } from '../../language/kinds'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLInt, GraphQLBoolean, GraphQLString } from '../../type/scalars'; import { + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, - GraphQLScalarType, - GraphQLInterfaceType, GraphQLObjectType, + GraphQLScalarType, GraphQLUnionType, } from '../../type/definition'; +import { GraphQLBoolean, GraphQLInt, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { execute, executeSync } from '../execute'; diff --git a/src/execution/__tests__/mutations-test.ts b/src/execution/__tests__/mutations-test.ts index 248dd63896..0f0ad1cbf8 100644 --- a/src/execution/__tests__/mutations-test.ts +++ b/src/execution/__tests__/mutations-test.ts @@ -2,14 +2,13 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import { expectJSON } from '../../__testUtils__/expectJSON'; - import { resolveOnNextTick } from '../../__testUtils__/resolveOnNextTick'; import { parse } from '../../language/parser'; +import { GraphQLObjectType } from '../../type/definition'; import { GraphQLInt } from '../../type/scalars'; import { GraphQLSchema } from '../../type/schema'; -import { GraphQLObjectType } from '../../type/definition'; import { execute, executeSync } from '../execute'; diff --git a/src/execution/__tests__/nonnull-test.ts b/src/execution/__tests__/nonnull-test.ts index 1fb854fd7c..427f2a64d6 100644 --- a/src/execution/__tests__/nonnull-test.ts +++ b/src/execution/__tests__/nonnull-test.ts @@ -5,9 +5,9 @@ import { expectJSON } from '../../__testUtils__/expectJSON'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString } from '../../type/scalars'; import { GraphQLNonNull, GraphQLObjectType } from '../../type/definition'; +import { GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../../utilities/buildASTSchema'; diff --git a/src/execution/__tests__/resolve-test.ts b/src/execution/__tests__/resolve-test.ts index f62314f8dc..a34da196c6 100644 --- a/src/execution/__tests__/resolve-test.ts +++ b/src/execution/__tests__/resolve-test.ts @@ -4,9 +4,9 @@ import { describe, it } from 'mocha'; import { parse } from '../../language/parser'; import type { GraphQLFieldConfig } from '../../type/definition'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLInt, GraphQLString } from '../../type/scalars'; import { GraphQLObjectType } from '../../type/definition'; +import { GraphQLInt, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { executeSync } from '../execute'; diff --git a/src/execution/__tests__/schema-test.ts b/src/execution/__tests__/schema-test.ts index b954fd98db..f9b4e47439 100644 --- a/src/execution/__tests__/schema-test.ts +++ b/src/execution/__tests__/schema-test.ts @@ -3,18 +3,18 @@ import { describe, it } from 'mocha'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; import { GraphQLList, GraphQLNonNull, GraphQLObjectType, } from '../../type/definition'; import { + GraphQLBoolean, GraphQLID, GraphQLInt, GraphQLString, - GraphQLBoolean, } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { executeSync } from '../execute'; diff --git a/src/execution/__tests__/subscribe-test.ts b/src/execution/__tests__/subscribe-test.ts index 068c6b3214..54c5019ab0 100644 --- a/src/execution/__tests__/subscribe-test.ts +++ b/src/execution/__tests__/subscribe-test.ts @@ -9,9 +9,9 @@ import { isAsyncIterable } from '../../jsutils/isAsyncIterable'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; import { GraphQLList, GraphQLObjectType } from '../../type/definition'; -import { GraphQLInt, GraphQLString, GraphQLBoolean } from '../../type/scalars'; +import { GraphQLBoolean, GraphQLInt, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { createSourceEventStream, subscribe } from '../subscribe'; diff --git a/src/execution/__tests__/sync-test.ts b/src/execution/__tests__/sync-test.ts index 46742c0f13..021f09fa3c 100644 --- a/src/execution/__tests__/sync-test.ts +++ b/src/execution/__tests__/sync-test.ts @@ -5,11 +5,11 @@ import { expectJSON } from '../../__testUtils__/expectJSON'; import { parse } from '../../language/parser'; -import { validate } from '../../validation/validate'; - -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString } from '../../type/scalars'; import { GraphQLObjectType } from '../../type/definition'; +import { GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; + +import { validate } from '../../validation/validate'; import { graphqlSync } from '../../graphql'; diff --git a/src/execution/__tests__/union-interface-test.ts b/src/execution/__tests__/union-interface-test.ts index 6c7cc2531c..7ce9f8b3bc 100644 --- a/src/execution/__tests__/union-interface-test.ts +++ b/src/execution/__tests__/union-interface-test.ts @@ -3,14 +3,14 @@ import { describe, it } from 'mocha'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString, GraphQLBoolean } from '../../type/scalars'; import { + GraphQLInterfaceType, GraphQLList, - GraphQLUnionType, GraphQLObjectType, - GraphQLInterfaceType, + GraphQLUnionType, } from '../../type/definition'; +import { GraphQLBoolean, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { executeSync } from '../execute'; diff --git a/src/execution/__tests__/variables-test.ts b/src/execution/__tests__/variables-test.ts index bca59e8e40..786a4810c2 100644 --- a/src/execution/__tests__/variables-test.ts +++ b/src/execution/__tests__/variables-test.ts @@ -10,19 +10,19 @@ import { Kind } from '../../language/kinds'; import { parse } from '../../language/parser'; import type { - GraphQLFieldConfig, GraphQLArgumentConfig, + GraphQLFieldConfig, } from '../../type/definition'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString } from '../../type/scalars'; import { + GraphQLEnumType, + GraphQLInputObjectType, GraphQLList, GraphQLNonNull, - GraphQLScalarType, GraphQLObjectType, - GraphQLInputObjectType, - GraphQLEnumType, + GraphQLScalarType, } from '../../type/definition'; +import { GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { executeSync } from '../execute'; import { getVariableValues } from '../values'; diff --git a/src/execution/collectFields.ts b/src/execution/collectFields.ts index 134000caec..d0961bfae8 100644 --- a/src/execution/collectFields.ts +++ b/src/execution/collectFields.ts @@ -1,21 +1,21 @@ import type { ObjMap } from '../jsutils/ObjMap'; import type { - SelectionSetNode, FieldNode, + FragmentDefinitionNode, FragmentSpreadNode, InlineFragmentNode, - FragmentDefinitionNode, + SelectionSetNode, } from '../language/ast'; import { Kind } from '../language/kinds'; -import type { GraphQLSchema } from '../type/schema'; import type { GraphQLObjectType } from '../type/definition'; +import { isAbstractType } from '../type/definition'; import { GraphQLIncludeDirective, GraphQLSkipDirective, } from '../type/directives'; -import { isAbstractType } from '../type/definition'; +import type { GraphQLSchema } from '../type/schema'; import { typeFromAST } from '../utilities/typeFromAST'; diff --git a/src/execution/execute.ts b/src/execution/execute.ts index 9afc307865..d3c21385e8 100644 --- a/src/execution/execute.ts +++ b/src/execution/execute.ts @@ -1,17 +1,17 @@ -import type { Path } from '../jsutils/Path'; -import type { ObjMap } from '../jsutils/ObjMap'; -import type { PromiseOrValue } from '../jsutils/PromiseOrValue'; -import type { Maybe } from '../jsutils/Maybe'; +import { devAssert } from '../jsutils/devAssert'; import { inspect } from '../jsutils/inspect'; -import { memoize3 } from '../jsutils/memoize3'; import { invariant } from '../jsutils/invariant'; -import { devAssert } from '../jsutils/devAssert'; -import { isPromise } from '../jsutils/isPromise'; +import { isIterableObject } from '../jsutils/isIterableObject'; import { isObjectLike } from '../jsutils/isObjectLike'; -import { promiseReduce } from '../jsutils/promiseReduce'; -import { promiseForObject } from '../jsutils/promiseForObject'; +import { isPromise } from '../jsutils/isPromise'; +import type { Maybe } from '../jsutils/Maybe'; +import { memoize3 } from '../jsutils/memoize3'; +import type { ObjMap } from '../jsutils/ObjMap'; +import type { Path } from '../jsutils/Path'; import { addPath, pathToArray } from '../jsutils/Path'; -import { isIterableObject } from '../jsutils/isIterableObject'; +import { promiseForObject } from '../jsutils/promiseForObject'; +import type { PromiseOrValue } from '../jsutils/PromiseOrValue'; +import { promiseReduce } from '../jsutils/promiseReduce'; import type { GraphQLFormattedError } from '../error/GraphQLError'; import { GraphQLError } from '../error/GraphQLError'; @@ -19,44 +19,44 @@ import { locatedError } from '../error/locatedError'; import type { DocumentNode, - OperationDefinitionNode, FieldNode, FragmentDefinitionNode, + OperationDefinitionNode, } from '../language/ast'; import { OperationTypeNode } from '../language/ast'; import { Kind } from '../language/kinds'; -import type { GraphQLSchema } from '../type/schema'; import type { - GraphQLObjectType, - GraphQLOutputType, - GraphQLLeafType, GraphQLAbstractType, GraphQLField, GraphQLFieldResolver, + GraphQLLeafType, + GraphQLList, + GraphQLObjectType, + GraphQLOutputType, GraphQLResolveInfo, GraphQLTypeResolver, - GraphQLList, } from '../type/definition'; -import { assertValidSchema } from '../type/validate'; import { - SchemaMetaFieldDef, - TypeMetaFieldDef, - TypeNameMetaFieldDef, -} from '../type/introspection'; -import { - isObjectType, isAbstractType, isLeafType, isListType, isNonNullType, + isObjectType, } from '../type/definition'; +import { + SchemaMetaFieldDef, + TypeMetaFieldDef, + TypeNameMetaFieldDef, +} from '../type/introspection'; +import type { GraphQLSchema } from '../type/schema'; +import { assertValidSchema } from '../type/validate'; -import { getVariableValues, getArgumentValues } from './values'; import { collectFields, collectSubfields as _collectSubfields, } from './collectFields'; +import { getArgumentValues, getVariableValues } from './values'; /** * A memoized collection of relevant subfields with regard to the return diff --git a/src/execution/subscribe.ts b/src/execution/subscribe.ts index 805d9b2123..7ff5712550 100644 --- a/src/execution/subscribe.ts +++ b/src/execution/subscribe.ts @@ -1,24 +1,23 @@ -import { inspect } from '../jsutils/inspect'; import { devAssert } from '../jsutils/devAssert'; +import { inspect } from '../jsutils/inspect'; import { isAsyncIterable } from '../jsutils/isAsyncIterable'; -import { addPath, pathToArray } from '../jsutils/Path'; import type { Maybe } from '../jsutils/Maybe'; +import { addPath, pathToArray } from '../jsutils/Path'; import { GraphQLError } from '../error/GraphQLError'; import { locatedError } from '../error/locatedError'; import type { DocumentNode } from '../language/ast'; -import type { GraphQLSchema } from '../type/schema'; import type { GraphQLFieldResolver } from '../type/definition'; +import type { GraphQLSchema } from '../type/schema'; +import { collectFields } from './collectFields'; import type { ExecutionArgs, - ExecutionResult, ExecutionContext, + ExecutionResult, } from './execute'; -import { collectFields } from './collectFields'; -import { getArgumentValues } from './values'; import { assertValidExecutionArguments, buildExecutionContext, @@ -27,6 +26,7 @@ import { getFieldDef, } from './execute'; import { mapAsyncIterator } from './mapAsyncIterator'; +import { getArgumentValues } from './values'; /** * Implements the "Subscribe" algorithm described in the GraphQL specification. diff --git a/src/execution/values.ts b/src/execution/values.ts index c0e5a4b49c..124319a6b3 100644 --- a/src/execution/values.ts +++ b/src/execution/values.ts @@ -1,27 +1,27 @@ -import type { ObjMap } from '../jsutils/ObjMap'; -import type { Maybe } from '../jsutils/Maybe'; -import { keyMap } from '../jsutils/keyMap'; import { inspect } from '../jsutils/inspect'; +import { keyMap } from '../jsutils/keyMap'; +import type { Maybe } from '../jsutils/Maybe'; +import type { ObjMap } from '../jsutils/ObjMap'; import { printPathArray } from '../jsutils/printPathArray'; import { GraphQLError } from '../error/GraphQLError'; import type { - FieldNode, DirectiveNode, + FieldNode, VariableDefinitionNode, } from '../language/ast'; import { Kind } from '../language/kinds'; import { print } from '../language/printer'; -import type { GraphQLSchema } from '../type/schema'; import type { GraphQLField } from '../type/definition'; -import type { GraphQLDirective } from '../type/directives'; import { isInputType, isNonNullType } from '../type/definition'; +import type { GraphQLDirective } from '../type/directives'; +import type { GraphQLSchema } from '../type/schema'; +import { coerceInputValue } from '../utilities/coerceInputValue'; import { typeFromAST } from '../utilities/typeFromAST'; import { valueFromAST } from '../utilities/valueFromAST'; -import { coerceInputValue } from '../utilities/coerceInputValue'; type CoercedVariableValues = | { errors: ReadonlyArray; coerced?: never } diff --git a/src/graphql.ts b/src/graphql.ts index 8d07bac9fc..bc6fb9bb72 100644 --- a/src/graphql.ts +++ b/src/graphql.ts @@ -1,12 +1,10 @@ -import type { PromiseOrValue } from './jsutils/PromiseOrValue'; import { devAssert } from './jsutils/devAssert'; import { isPromise } from './jsutils/isPromise'; import type { Maybe } from './jsutils/Maybe'; +import type { PromiseOrValue } from './jsutils/PromiseOrValue'; -import type { Source } from './language/source'; import { parse } from './language/parser'; - -import { validate } from './validation/validate'; +import type { Source } from './language/source'; import type { GraphQLFieldResolver, @@ -15,6 +13,8 @@ import type { import type { GraphQLSchema } from './type/schema'; import { validateSchema } from './type/validate'; +import { validate } from './validation/validate'; + import type { ExecutionResult } from './execution/execute'; import { execute } from './execution/execute'; diff --git a/src/jsutils/promiseReduce.ts b/src/jsutils/promiseReduce.ts index c92b934a71..58db2e85c8 100644 --- a/src/jsutils/promiseReduce.ts +++ b/src/jsutils/promiseReduce.ts @@ -1,6 +1,5 @@ -import type { PromiseOrValue } from './PromiseOrValue'; - import { isPromise } from './isPromise'; +import type { PromiseOrValue } from './PromiseOrValue'; /** * Similar to Array.prototype.reduce(), however the reducing callback may return diff --git a/src/language/__tests__/blockString-fuzz.ts b/src/language/__tests__/blockString-fuzz.ts index 0e1f5ec1f6..4ed010ccb8 100644 --- a/src/language/__tests__/blockString-fuzz.ts +++ b/src/language/__tests__/blockString-fuzz.ts @@ -1,14 +1,14 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { inspectStr } from '../../__testUtils__/inspectStr'; import { genFuzzStrings } from '../../__testUtils__/genFuzzStrings'; +import { inspectStr } from '../../__testUtils__/inspectStr'; import { invariant } from '../../jsutils/invariant'; +import { isPrintableAsBlockString, printBlockString } from '../blockString'; import { Lexer } from '../lexer'; import { Source } from '../source'; -import { printBlockString, isPrintableAsBlockString } from '../blockString'; function lexValue(str: string): string { const lexer = new Lexer(new Source(str)); diff --git a/src/language/__tests__/blockString-test.ts b/src/language/__tests__/blockString-test.ts index f4a870398a..a37858d329 100644 --- a/src/language/__tests__/blockString-test.ts +++ b/src/language/__tests__/blockString-test.ts @@ -2,8 +2,8 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import { - isPrintableAsBlockString, dedentBlockStringLines, + isPrintableAsBlockString, printBlockString, } from '../blockString'; diff --git a/src/language/__tests__/lexer-test.ts b/src/language/__tests__/lexer-test.ts index e7b247fd2a..46bf971d0a 100644 --- a/src/language/__tests__/lexer-test.ts +++ b/src/language/__tests__/lexer-test.ts @@ -9,9 +9,9 @@ import { inspect } from '../../jsutils/inspect'; import { GraphQLError } from '../../error/GraphQLError'; import type { Token } from '../ast'; +import { isPunctuatorTokenKind, Lexer } from '../lexer'; import { Source } from '../source'; import { TokenKind } from '../tokenKind'; -import { Lexer, isPunctuatorTokenKind } from '../lexer'; function lexOne(str: string) { const lexer = new Lexer(new Source(str)); diff --git a/src/language/__tests__/parser-test.ts b/src/language/__tests__/parser-test.ts index 10b8c6f2ba..3571b75700 100644 --- a/src/language/__tests__/parser-test.ts +++ b/src/language/__tests__/parser-test.ts @@ -2,15 +2,15 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { kitchenSinkQuery } from '../../__testUtils__/kitchenSinkQuery'; import { expectJSON, expectToThrowJSON } from '../../__testUtils__/expectJSON'; +import { kitchenSinkQuery } from '../../__testUtils__/kitchenSinkQuery'; import { inspect } from '../../jsutils/inspect'; import { Kind } from '../kinds'; +import { parse, parseConstValue, parseType, parseValue } from '../parser'; import { Source } from '../source'; import { TokenKind } from '../tokenKind'; -import { parse, parseValue, parseConstValue, parseType } from '../parser'; function expectSyntaxError(text: string) { return expectToThrowJSON(() => parse(text)); diff --git a/src/language/__tests__/predicates-test.ts b/src/language/__tests__/predicates-test.ts index b90e2b31e9..13477f8de9 100644 --- a/src/language/__tests__/predicates-test.ts +++ b/src/language/__tests__/predicates-test.ts @@ -5,16 +5,16 @@ import type { ASTNode } from '../ast'; import { Kind } from '../kinds'; import { parseValue } from '../parser'; import { + isConstValueNode, isDefinitionNode, isExecutableDefinitionNode, isSelectionNode, - isValueNode, - isConstValueNode, + isTypeDefinitionNode, + isTypeExtensionNode, isTypeNode, isTypeSystemDefinitionNode, - isTypeDefinitionNode, isTypeSystemExtensionNode, - isTypeExtensionNode, + isValueNode, } from '../predicates'; function filterNodes(predicate: (node: ASTNode) => boolean): Array { diff --git a/src/language/__tests__/printLocation-test.ts b/src/language/__tests__/printLocation-test.ts index 986ff621f6..c5eac8cce5 100644 --- a/src/language/__tests__/printLocation-test.ts +++ b/src/language/__tests__/printLocation-test.ts @@ -3,8 +3,8 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { Source } from '../source'; import { printSourceLocation } from '../printLocation'; +import { Source } from '../source'; describe('printSourceLocation', () => { it('prints minified documents', () => { diff --git a/src/language/__tests__/schema-parser-test.ts b/src/language/__tests__/schema-parser-test.ts index eef14f0d11..cbb337c337 100644 --- a/src/language/__tests__/schema-parser-test.ts +++ b/src/language/__tests__/schema-parser-test.ts @@ -2,8 +2,8 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { kitchenSinkSDL } from '../../__testUtils__/kitchenSinkSDL'; import { expectJSON, expectToThrowJSON } from '../../__testUtils__/expectJSON'; +import { kitchenSinkSDL } from '../../__testUtils__/kitchenSinkSDL'; import { parse } from '../parser'; diff --git a/src/language/__tests__/visitor-test.ts b/src/language/__tests__/visitor-test.ts index f45d16e99e..9149b103e3 100644 --- a/src/language/__tests__/visitor-test.ts +++ b/src/language/__tests__/visitor-test.ts @@ -4,11 +4,11 @@ import { describe, it } from 'mocha'; import { kitchenSinkQuery } from '../../__testUtils__/kitchenSinkQuery'; import type { ASTNode, SelectionSetNode } from '../ast'; -import type { ASTVisitorKeyMap, ASTVisitor } from '../visitor'; import { isNode } from '../ast'; import { Kind } from '../kinds'; import { parse } from '../parser'; -import { visit, visitInParallel, BREAK } from '../visitor'; +import type { ASTVisitor, ASTVisitorKeyMap } from '../visitor'; +import { BREAK, visit, visitInParallel } from '../visitor'; function checkVisitorFnArgs(ast: any, args: any, isEdited: boolean = false) { const [node, key, parent, path, ancestors] = args; diff --git a/src/language/lexer.ts b/src/language/lexer.ts index a28c10843c..818f81b286 100644 --- a/src/language/lexer.ts +++ b/src/language/lexer.ts @@ -1,10 +1,10 @@ import { syntaxError } from '../error/syntaxError'; -import type { Source } from './source'; import { Token } from './ast'; -import { TokenKind } from './tokenKind'; import { dedentBlockStringLines } from './blockString'; -import { isDigit, isNameStart, isNameContinue } from './characterClasses'; +import { isDigit, isNameContinue, isNameStart } from './characterClasses'; +import type { Source } from './source'; +import { TokenKind } from './tokenKind'; /** * Given a Source object, creates a Lexer for that source. diff --git a/src/language/parser.ts b/src/language/parser.ts index 4c1725cce4..282ee16859 100644 --- a/src/language/parser.ts +++ b/src/language/parser.ts @@ -4,68 +4,68 @@ import type { GraphQLError } from '../error/GraphQLError'; import { syntaxError } from '../error/syntaxError'; import type { - Token, - NameNode, - VariableNode, - DocumentNode, - DefinitionNode, - OperationDefinitionNode, - VariableDefinitionNode, - SelectionSetNode, - SelectionNode, - FieldNode, ArgumentNode, + BooleanValueNode, ConstArgumentNode, + ConstDirectiveNode, + ConstListValueNode, + ConstObjectFieldNode, + ConstObjectValueNode, + ConstValueNode, + DefinitionNode, + DirectiveDefinitionNode, + DirectiveNode, + DocumentNode, + EnumTypeDefinitionNode, + EnumTypeExtensionNode, + EnumValueDefinitionNode, + EnumValueNode, + FieldDefinitionNode, + FieldNode, + FloatValueNode, + FragmentDefinitionNode, FragmentSpreadNode, InlineFragmentNode, - FragmentDefinitionNode, - ValueNode, - ConstValueNode, + InputObjectTypeDefinitionNode, + InputObjectTypeExtensionNode, + InputValueDefinitionNode, + InterfaceTypeDefinitionNode, + InterfaceTypeExtensionNode, IntValueNode, - FloatValueNode, - StringValueNode, - BooleanValueNode, - NullValueNode, - EnumValueNode, + ListTypeNode, ListValueNode, - ConstListValueNode, - ObjectValueNode, - ConstObjectValueNode, - ObjectFieldNode, - ConstObjectFieldNode, - DirectiveNode, - ConstDirectiveNode, - TypeNode, NamedTypeNode, - ListTypeNode, + NameNode, NonNullTypeNode, - SchemaDefinitionNode, + NullValueNode, + ObjectFieldNode, + ObjectTypeDefinitionNode, + ObjectTypeExtensionNode, + ObjectValueNode, + OperationDefinitionNode, OperationTypeDefinitionNode, ScalarTypeDefinitionNode, - ObjectTypeDefinitionNode, - FieldDefinitionNode, - InputValueDefinitionNode, - InterfaceTypeDefinitionNode, - UnionTypeDefinitionNode, - EnumTypeDefinitionNode, - EnumValueDefinitionNode, - InputObjectTypeDefinitionNode, - DirectiveDefinitionNode, - TypeSystemExtensionNode, - SchemaExtensionNode, ScalarTypeExtensionNode, - ObjectTypeExtensionNode, - InterfaceTypeExtensionNode, + SchemaDefinitionNode, + SchemaExtensionNode, + SelectionNode, + SelectionSetNode, + StringValueNode, + Token, + TypeNode, + TypeSystemExtensionNode, + UnionTypeDefinitionNode, UnionTypeExtensionNode, - EnumTypeExtensionNode, - InputObjectTypeExtensionNode, + ValueNode, + VariableDefinitionNode, + VariableNode, } from './ast'; -import { Kind } from './kinds'; import { Location, OperationTypeNode } from './ast'; -import { TokenKind } from './tokenKind'; -import { Source, isSource } from './source'; import { DirectiveLocation } from './directiveLocation'; -import { Lexer, isPunctuatorTokenKind } from './lexer'; +import { Kind } from './kinds'; +import { isPunctuatorTokenKind, Lexer } from './lexer'; +import { isSource, Source } from './source'; +import { TokenKind } from './tokenKind'; /** * Configuration options to control parser behavior diff --git a/src/language/predicates.ts b/src/language/predicates.ts index 29e4984d5e..a390f4ee55 100644 --- a/src/language/predicates.ts +++ b/src/language/predicates.ts @@ -1,15 +1,15 @@ import type { ASTNode, + ConstValueNode, DefinitionNode, ExecutableDefinitionNode, SelectionNode, - ValueNode, - ConstValueNode, + TypeDefinitionNode, + TypeExtensionNode, TypeNode, TypeSystemDefinitionNode, - TypeDefinitionNode, TypeSystemExtensionNode, - TypeExtensionNode, + ValueNode, } from './ast'; import { Kind } from './kinds'; diff --git a/src/language/printLocation.ts b/src/language/printLocation.ts index 97a34f14b4..3d44f5cea5 100644 --- a/src/language/printLocation.ts +++ b/src/language/printLocation.ts @@ -1,7 +1,7 @@ -import type { Source } from './source'; import type { Location } from './ast'; import type { SourceLocation } from './location'; import { getLocation } from './location'; +import type { Source } from './source'; /** * Render a helpful description of the location in the GraphQL Source document. diff --git a/src/language/printer.ts b/src/language/printer.ts index 9df691ac0e..e95c118d8b 100644 --- a/src/language/printer.ts +++ b/src/language/printer.ts @@ -1,10 +1,10 @@ import type { Maybe } from '../jsutils/Maybe'; import type { ASTNode } from './ast'; -import type { ASTReducer } from './visitor'; -import { visit } from './visitor'; import { printBlockString } from './blockString'; import { printString } from './printString'; +import type { ASTReducer } from './visitor'; +import { visit } from './visitor'; /** * Converts an AST into a string, using one set of reasonable diff --git a/src/language/source.ts b/src/language/source.ts index 202d04b33d..15f65fceee 100644 --- a/src/language/source.ts +++ b/src/language/source.ts @@ -1,5 +1,5 @@ -import { inspect } from '../jsutils/inspect'; import { devAssert } from '../jsutils/devAssert'; +import { inspect } from '../jsutils/inspect'; import { instanceOf } from '../jsutils/instanceOf'; interface Location { diff --git a/src/language/visitor.ts b/src/language/visitor.ts index b7e7c9534d..821c9cb3e0 100644 --- a/src/language/visitor.ts +++ b/src/language/visitor.ts @@ -1,5 +1,5 @@ -import { inspect } from '../jsutils/inspect'; import { devAssert } from '../jsutils/devAssert'; +import { inspect } from '../jsutils/inspect'; import type { ASTNode } from './ast'; import { isNode, QueryDocumentKeys } from './ast'; diff --git a/src/type/__tests__/assertName-test.ts b/src/type/__tests__/assertName-test.ts index 4baf79c763..268b1c6ecb 100644 --- a/src/type/__tests__/assertName-test.ts +++ b/src/type/__tests__/assertName-test.ts @@ -1,7 +1,7 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; -import { assertName, assertEnumValueName } from '../assertName'; +import { assertEnumValueName, assertName } from '../assertName'; describe('assertName', () => { it('passthrough valid name', () => { diff --git a/src/type/__tests__/definition-test.ts b/src/type/__tests__/definition-test.ts index eeb9809e53..19d482915a 100644 --- a/src/type/__tests__/definition-test.ts +++ b/src/type/__tests__/definition-test.ts @@ -1,21 +1,21 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; -import { inspect } from '../../jsutils/inspect'; import { identityFunc } from '../../jsutils/identityFunc'; +import { inspect } from '../../jsutils/inspect'; import { parseValue } from '../../language/parser'; -import type { GraphQLType, GraphQLNullableType } from '../definition'; +import type { GraphQLNullableType, GraphQLType } from '../definition'; import { + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, - GraphQLScalarType, GraphQLObjectType, - GraphQLInterfaceType, + GraphQLScalarType, GraphQLUnionType, - GraphQLEnumType, - GraphQLInputObjectType, } from '../definition'; const ScalarType = new GraphQLScalarType({ name: 'Scalar' }); diff --git a/src/type/__tests__/directive-test.ts b/src/type/__tests__/directive-test.ts index b614474acf..110a3cc940 100644 --- a/src/type/__tests__/directive-test.ts +++ b/src/type/__tests__/directive-test.ts @@ -4,7 +4,7 @@ import { describe, it } from 'mocha'; import { DirectiveLocation } from '../../language/directiveLocation'; import { GraphQLDirective } from '../directives'; -import { GraphQLString, GraphQLInt } from '../scalars'; +import { GraphQLInt, GraphQLString } from '../scalars'; describe('Type System: Directive', () => { it('defines a directive with no args', () => { diff --git a/src/type/__tests__/enumType-test.ts b/src/type/__tests__/enumType-test.ts index d45a76c1ee..35e9f94b00 100644 --- a/src/type/__tests__/enumType-test.ts +++ b/src/type/__tests__/enumType-test.ts @@ -3,12 +3,13 @@ import { describe, it } from 'mocha'; import { expectJSON } from '../../__testUtils__/expectJSON'; -import { graphqlSync } from '../../graphql'; import { introspectionFromSchema } from '../../utilities/introspectionFromSchema'; -import { GraphQLSchema } from '../schema'; +import { graphqlSync } from '../../graphql'; + import { GraphQLEnumType, GraphQLObjectType } from '../definition'; -import { GraphQLInt, GraphQLString, GraphQLBoolean } from '../scalars'; +import { GraphQLBoolean, GraphQLInt, GraphQLString } from '../scalars'; +import { GraphQLSchema } from '../schema'; const ColorType = new GraphQLEnumType({ name: 'Color', diff --git a/src/type/__tests__/extensions-test.ts b/src/type/__tests__/extensions-test.ts index e1c70df53c..4fb0827485 100644 --- a/src/type/__tests__/extensions-test.ts +++ b/src/type/__tests__/extensions-test.ts @@ -3,16 +3,16 @@ import { describe, it } from 'mocha'; import { invariant } from '../../jsutils/invariant'; -import { GraphQLSchema } from '../schema'; -import { GraphQLDirective } from '../directives'; import { - GraphQLScalarType, - GraphQLObjectType, - GraphQLInterfaceType, - GraphQLUnionType, GraphQLEnumType, GraphQLInputObjectType, + GraphQLInterfaceType, + GraphQLObjectType, + GraphQLScalarType, + GraphQLUnionType, } from '../definition'; +import { GraphQLDirective } from '../directives'; +import { GraphQLSchema } from '../schema'; const dummyType = new GraphQLScalarType({ name: 'DummyScalar' }); diff --git a/src/type/__tests__/predicate-test.ts b/src/type/__tests__/predicate-test.ts index 6afd9b45f4..81e721e7df 100644 --- a/src/type/__tests__/predicate-test.ts +++ b/src/type/__tests__/predicate-test.ts @@ -9,70 +9,70 @@ import type { GraphQLInputType, } from '../definition'; import { - GraphQLDirective, - GraphQLSkipDirective, - GraphQLIncludeDirective, - GraphQLDeprecatedDirective, - assertDirective, - isDirective, - isSpecifiedDirective, -} from '../directives'; -import { - GraphQLID, - GraphQLInt, - GraphQLFloat, - GraphQLString, - GraphQLBoolean, - isSpecifiedScalarType, -} from '../scalars'; -import { - GraphQLList, - GraphQLNonNull, - GraphQLScalarType, + assertAbstractType, + assertCompositeType, + assertEnumType, + assertInputObjectType, + assertInputType, + assertInterfaceType, + assertLeafType, + assertListType, + assertNamedType, + assertNonNullType, + assertNullableType, + assertObjectType, + assertOutputType, + assertScalarType, + assertType, + assertUnionType, + assertWrappingType, + getNamedType, + getNullableType, GraphQLEnumType, GraphQLInputObjectType, GraphQLInterfaceType, + GraphQLList, + GraphQLNonNull, GraphQLObjectType, + GraphQLScalarType, GraphQLUnionType, - isType, - isScalarType, - isObjectType, - isInterfaceType, - isUnionType, + isAbstractType, + isCompositeType, isEnumType, isInputObjectType, - isListType, - isNonNullType, isInputType, - isOutputType, + isInterfaceType, isLeafType, - isCompositeType, - isAbstractType, - isWrappingType, - isNullableType, + isListType, isNamedType, + isNonNullType, + isNullableType, + isObjectType, + isOutputType, isRequiredArgument, isRequiredInputField, - assertType, - assertScalarType, - assertObjectType, - assertInterfaceType, - assertUnionType, - assertEnumType, - assertInputObjectType, - assertListType, - assertNonNullType, - assertInputType, - assertOutputType, - assertLeafType, - assertCompositeType, - assertAbstractType, - assertWrappingType, - assertNullableType, - assertNamedType, - getNullableType, - getNamedType, + isScalarType, + isType, + isUnionType, + isWrappingType, } from '../definition'; +import { + assertDirective, + GraphQLDeprecatedDirective, + GraphQLDirective, + GraphQLIncludeDirective, + GraphQLSkipDirective, + isDirective, + isSpecifiedDirective, +} from '../directives'; +import { + GraphQLBoolean, + GraphQLFloat, + GraphQLID, + GraphQLInt, + GraphQLString, + isSpecifiedScalarType, +} from '../scalars'; const ObjectType = new GraphQLObjectType({ name: 'Object', fields: {} }); const InterfaceType = new GraphQLInterfaceType({ diff --git a/src/type/__tests__/scalars-test.ts b/src/type/__tests__/scalars-test.ts index f30b01eeac..4d563aee10 100644 --- a/src/type/__tests__/scalars-test.ts +++ b/src/type/__tests__/scalars-test.ts @@ -4,11 +4,11 @@ import { describe, it } from 'mocha'; import { parseValue as parseValueToAST } from '../../language/parser'; import { + GraphQLBoolean, + GraphQLFloat, GraphQLID, GraphQLInt, - GraphQLFloat, GraphQLString, - GraphQLBoolean, } from '../scalars'; describe('Type System: Specified scalar types', () => { diff --git a/src/type/__tests__/schema-test.ts b/src/type/__tests__/schema-test.ts index ab2ef11236..8a31b50ada 100644 --- a/src/type/__tests__/schema-test.ts +++ b/src/type/__tests__/schema-test.ts @@ -7,16 +7,16 @@ import { DirectiveLocation } from '../../language/directiveLocation'; import { printSchema } from '../../utilities/printSchema'; -import { GraphQLSchema } from '../schema'; -import { GraphQLDirective } from '../directives'; -import { GraphQLInt, GraphQLString, GraphQLBoolean } from '../scalars'; import { + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, - GraphQLScalarType, GraphQLObjectType, - GraphQLInterfaceType, - GraphQLInputObjectType, + GraphQLScalarType, } from '../definition'; +import { GraphQLDirective } from '../directives'; +import { GraphQLBoolean, GraphQLInt, GraphQLString } from '../scalars'; +import { GraphQLSchema } from '../schema'; describe('Type System: Schema', () => { it('Define sample schema', () => { diff --git a/src/type/__tests__/validation-test.ts b/src/type/__tests__/validation-test.ts index 0dd9137ae4..e34abbe75a 100644 --- a/src/type/__tests__/validation-test.ts +++ b/src/type/__tests__/validation-test.ts @@ -6,39 +6,39 @@ import { expectJSON } from '../../__testUtils__/expectJSON'; import { inspect } from '../../jsutils/inspect'; -import { parse } from '../../language/parser'; import { DirectiveLocation } from '../../language/directiveLocation'; +import { parse } from '../../language/parser'; -import { extendSchema } from '../../utilities/extendSchema'; import { buildSchema } from '../../utilities/buildASTSchema'; +import { extendSchema } from '../../utilities/extendSchema'; import type { - GraphQLNamedType, - GraphQLInputType, - GraphQLOutputType, - GraphQLFieldConfig, GraphQLArgumentConfig, + GraphQLFieldConfig, GraphQLInputFieldConfig, + GraphQLInputType, + GraphQLNamedType, + GraphQLOutputType, } from '../definition'; -import { GraphQLSchema } from '../schema'; -import { GraphQLString } from '../scalars'; -import { validateSchema, assertValidSchema } from '../validate'; -import { GraphQLDirective, assertDirective } from '../directives'; import { + assertEnumType, + assertInputObjectType, + assertInterfaceType, + assertObjectType, + assertScalarType, + assertUnionType, + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, GraphQLObjectType, - GraphQLInterfaceType, GraphQLUnionType, - GraphQLEnumType, - GraphQLInputObjectType, - assertScalarType, - assertInterfaceType, - assertObjectType, - assertUnionType, - assertEnumType, - assertInputObjectType, } from '../definition'; +import { assertDirective, GraphQLDirective } from '../directives'; +import { GraphQLString } from '../scalars'; +import { GraphQLSchema } from '../schema'; +import { assertValidSchema, validateSchema } from '../validate'; const SomeSchema = buildSchema(` scalar SomeScalar diff --git a/src/type/assertName.ts b/src/type/assertName.ts index c44361912b..f4f96fda4e 100644 --- a/src/type/assertName.ts +++ b/src/type/assertName.ts @@ -1,7 +1,8 @@ import { devAssert } from '../jsutils/devAssert'; import { GraphQLError } from '../error/GraphQLError'; -import { isNameStart, isNameContinue } from '../language/characterClasses'; + +import { isNameContinue, isNameStart } from '../language/characterClasses'; /** * Upholds the spec rules about naming. diff --git a/src/type/definition.ts b/src/type/definition.ts index 9a4fec2951..090afa367f 100644 --- a/src/type/definition.ts +++ b/src/type/definition.ts @@ -1,49 +1,49 @@ -import type { Path } from '../jsutils/Path'; -import type { PromiseOrValue } from '../jsutils/PromiseOrValue'; -import type { ObjMap } from '../jsutils/ObjMap'; -import { inspect } from '../jsutils/inspect'; -import { keyMap } from '../jsutils/keyMap'; -import { mapValue } from '../jsutils/mapValue'; -import { toObjMap } from '../jsutils/toObjMap'; import { devAssert } from '../jsutils/devAssert'; -import { keyValMap } from '../jsutils/keyValMap'; -import { instanceOf } from '../jsutils/instanceOf'; import { didYouMean } from '../jsutils/didYouMean'; -import { isObjectLike } from '../jsutils/isObjectLike'; import { identityFunc } from '../jsutils/identityFunc'; -import { suggestionList } from '../jsutils/suggestionList'; +import { inspect } from '../jsutils/inspect'; +import { instanceOf } from '../jsutils/instanceOf'; +import { isObjectLike } from '../jsutils/isObjectLike'; +import { keyMap } from '../jsutils/keyMap'; +import { keyValMap } from '../jsutils/keyValMap'; +import { mapValue } from '../jsutils/mapValue'; import type { Maybe } from '../jsutils/Maybe'; +import type { ObjMap } from '../jsutils/ObjMap'; +import type { Path } from '../jsutils/Path'; +import type { PromiseOrValue } from '../jsutils/PromiseOrValue'; +import { suggestionList } from '../jsutils/suggestionList'; +import { toObjMap } from '../jsutils/toObjMap'; import { GraphQLError } from '../error/GraphQLError'; -import { Kind } from '../language/kinds'; -import { print } from '../language/printer'; import type { + EnumTypeDefinitionNode, + EnumTypeExtensionNode, + EnumValueDefinitionNode, + FieldDefinitionNode, FieldNode, - ValueNode, - OperationDefinitionNode, FragmentDefinitionNode, - ScalarTypeDefinitionNode, - ScalarTypeExtensionNode, - ObjectTypeDefinitionNode, - ObjectTypeExtensionNode, - FieldDefinitionNode, + InputObjectTypeDefinitionNode, + InputObjectTypeExtensionNode, InputValueDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, + ObjectTypeDefinitionNode, + ObjectTypeExtensionNode, + OperationDefinitionNode, + ScalarTypeDefinitionNode, + ScalarTypeExtensionNode, UnionTypeDefinitionNode, UnionTypeExtensionNode, - EnumTypeDefinitionNode, - EnumValueDefinitionNode, - EnumTypeExtensionNode, - InputObjectTypeDefinitionNode, - InputObjectTypeExtensionNode, + ValueNode, } from '../language/ast'; +import { Kind } from '../language/kinds'; +import { print } from '../language/printer'; import { valueFromASTUntyped } from '../utilities/valueFromASTUntyped'; +import { assertEnumValueName, assertName } from './assertName'; import type { GraphQLSchema } from './schema'; -import { assertName, assertEnumValueName } from './assertName'; // Predicates & Assertions diff --git a/src/type/directives.ts b/src/type/directives.ts index f8911c4062..bb3e441a43 100644 --- a/src/type/directives.ts +++ b/src/type/directives.ts @@ -1,24 +1,24 @@ -import { inspect } from '../jsutils/inspect'; -import { toObjMap } from '../jsutils/toObjMap'; import { devAssert } from '../jsutils/devAssert'; +import { inspect } from '../jsutils/inspect'; import { instanceOf } from '../jsutils/instanceOf'; import { isObjectLike } from '../jsutils/isObjectLike'; import type { Maybe } from '../jsutils/Maybe'; +import { toObjMap } from '../jsutils/toObjMap'; import type { DirectiveDefinitionNode } from '../language/ast'; import { DirectiveLocation } from '../language/directiveLocation'; +import { assertName } from './assertName'; import type { GraphQLArgument, GraphQLFieldConfigArgumentMap, } from './definition'; -import { assertName } from './assertName'; -import { GraphQLString, GraphQLBoolean } from './scalars'; import { - defineArguments, argsToArgsConfig, + defineArguments, GraphQLNonNull, } from './definition'; +import { GraphQLBoolean, GraphQLString } from './scalars'; /** * Test if the given value is a GraphQL directive. diff --git a/src/type/introspection.ts b/src/type/introspection.ts index 07a496c0f1..e5fce6f241 100644 --- a/src/type/introspection.ts +++ b/src/type/introspection.ts @@ -1,36 +1,37 @@ import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; -import { print } from '../language/printer'; import { DirectiveLocation } from '../language/directiveLocation'; +import { print } from '../language/printer'; + import { astFromValue } from '../utilities/astFromValue'; -import type { GraphQLSchema } from './schema'; -import type { GraphQLDirective } from './directives'; import type { - GraphQLType, - GraphQLNamedType, - GraphQLInputField, GraphQLEnumValue, GraphQLField, GraphQLFieldConfigMap, + GraphQLInputField, + GraphQLNamedType, + GraphQLType, } from './definition'; -import { GraphQLString, GraphQLBoolean } from './scalars'; import { + GraphQLEnumType, GraphQLList, GraphQLNonNull, GraphQLObjectType, - GraphQLEnumType, - isScalarType, - isObjectType, - isInterfaceType, - isUnionType, + isAbstractType, isEnumType, isInputObjectType, + isInterfaceType, isListType, isNonNullType, - isAbstractType, + isObjectType, + isScalarType, + isUnionType, } from './definition'; +import type { GraphQLDirective } from './directives'; +import { GraphQLBoolean, GraphQLString } from './scalars'; +import type { GraphQLSchema } from './schema'; export const __Schema: GraphQLObjectType = new GraphQLObjectType({ name: '__Schema', diff --git a/src/type/scalars.ts b/src/type/scalars.ts index 06ce25aa8b..de78e6b050 100644 --- a/src/type/scalars.ts +++ b/src/type/scalars.ts @@ -1,11 +1,11 @@ import { inspect } from '../jsutils/inspect'; import { isObjectLike } from '../jsutils/isObjectLike'; +import { GraphQLError } from '../error/GraphQLError'; + import { Kind } from '../language/kinds'; import { print } from '../language/printer'; -import { GraphQLError } from '../error/GraphQLError'; - import type { GraphQLNamedType } from './definition'; import { GraphQLScalarType } from './definition'; diff --git a/src/type/schema.ts b/src/type/schema.ts index 1842857905..97c2782145 100644 --- a/src/type/schema.ts +++ b/src/type/schema.ts @@ -1,10 +1,10 @@ -import type { ObjMap } from '../jsutils/ObjMap'; -import { inspect } from '../jsutils/inspect'; -import { toObjMap } from '../jsutils/toObjMap'; import { devAssert } from '../jsutils/devAssert'; +import { inspect } from '../jsutils/inspect'; import { instanceOf } from '../jsutils/instanceOf'; import { isObjectLike } from '../jsutils/isObjectLike'; import type { Maybe } from '../jsutils/Maybe'; +import type { ObjMap } from '../jsutils/ObjMap'; +import { toObjMap } from '../jsutils/toObjMap'; import type { GraphQLError } from '../error/GraphQLError'; @@ -15,22 +15,22 @@ import type { import { OperationTypeNode } from '../language/ast'; import type { - GraphQLType, - GraphQLNamedType, GraphQLAbstractType, - GraphQLObjectType, GraphQLInterfaceType, + GraphQLNamedType, + GraphQLObjectType, + GraphQLType, } from './definition'; -import type { GraphQLDirective } from './directives'; -import { __Schema } from './introspection'; -import { isDirective, specifiedDirectives } from './directives'; import { - isObjectType, + getNamedType, + isInputObjectType, isInterfaceType, + isObjectType, isUnionType, - isInputObjectType, - getNamedType, } from './definition'; +import type { GraphQLDirective } from './directives'; +import { isDirective, specifiedDirectives } from './directives'; +import { __Schema } from './introspection'; /** * Test if the given value is a GraphQL schema. diff --git a/src/type/validate.ts b/src/type/validate.ts index 9232c891a8..92f7078757 100644 --- a/src/type/validate.ts +++ b/src/type/validate.ts @@ -5,12 +5,12 @@ import { GraphQLError } from '../error/GraphQLError'; import type { ASTNode, - NamedTypeNode, DirectiveNode, - ObjectTypeDefinitionNode, - ObjectTypeExtensionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, + NamedTypeNode, + ObjectTypeDefinitionNode, + ObjectTypeExtensionNode, UnionTypeDefinitionNode, UnionTypeExtensionNode, } from '../language/ast'; @@ -18,31 +18,31 @@ import { OperationTypeNode } from '../language/ast'; import { isEqualType, isTypeSubTypeOf } from '../utilities/typeComparators'; -import type { GraphQLSchema } from './schema'; import type { - GraphQLObjectType, - GraphQLInterfaceType, - GraphQLUnionType, GraphQLEnumType, - GraphQLInputObjectType, GraphQLInputField, + GraphQLInputObjectType, + GraphQLInterfaceType, + GraphQLObjectType, + GraphQLUnionType, } from './definition'; -import { assertSchema } from './schema'; -import { isIntrospectionType } from './introspection'; -import { isDirective, GraphQLDeprecatedDirective } from './directives'; import { - isObjectType, - isInterfaceType, - isUnionType, isEnumType, isInputObjectType, + isInputType, + isInterfaceType, isNamedType, isNonNullType, - isInputType, + isObjectType, isOutputType, isRequiredArgument, isRequiredInputField, + isUnionType, } from './definition'; +import { GraphQLDeprecatedDirective, isDirective } from './directives'; +import { isIntrospectionType } from './introspection'; +import type { GraphQLSchema } from './schema'; +import { assertSchema } from './schema'; /** * Implements the "Type Validation" sub-sections of the specification's diff --git a/src/utilities/TypeInfo.ts b/src/utilities/TypeInfo.ts index 7b316b963f..e72dfb01fb 100644 --- a/src/utilities/TypeInfo.ts +++ b/src/utilities/TypeInfo.ts @@ -1,40 +1,40 @@ -import type { ASTVisitor } from '../language/visitor'; +import type { Maybe } from '../jsutils/Maybe'; + import type { ASTNode, FieldNode } from '../language/ast'; -import { Kind } from '../language/kinds'; import { isNode } from '../language/ast'; +import { Kind } from '../language/kinds'; +import type { ASTVisitor } from '../language/visitor'; import { getEnterLeaveForKind } from '../language/visitor'; -import type { Maybe } from '../jsutils/Maybe'; - -import type { GraphQLSchema } from '../type/schema'; -import type { GraphQLDirective } from '../type/directives'; import type { - GraphQLType, - GraphQLInputType, - GraphQLOutputType, + GraphQLArgument, GraphQLCompositeType, + GraphQLEnumValue, GraphQLField, - GraphQLArgument, GraphQLInputField, - GraphQLEnumValue, + GraphQLInputType, + GraphQLOutputType, + GraphQLType, } from '../type/definition'; import { - isObjectType, - isInterfaceType, + getNamedType, + getNullableType, + isCompositeType, isEnumType, isInputObjectType, - isListType, - isCompositeType, isInputType, + isInterfaceType, + isListType, + isObjectType, isOutputType, - getNullableType, - getNamedType, } from '../type/definition'; +import type { GraphQLDirective } from '../type/directives'; import { SchemaMetaFieldDef, TypeMetaFieldDef, TypeNameMetaFieldDef, } from '../type/introspection'; +import type { GraphQLSchema } from '../type/schema'; import { typeFromAST } from './typeFromAST'; diff --git a/src/utilities/__tests__/TypeInfo-test.ts b/src/utilities/__tests__/TypeInfo-test.ts index 6008e1d927..5c04458c51 100644 --- a/src/utilities/__tests__/TypeInfo-test.ts +++ b/src/utilities/__tests__/TypeInfo-test.ts @@ -7,8 +7,8 @@ import { parse, parseValue } from '../../language/parser'; import { print } from '../../language/printer'; import { visit } from '../../language/visitor'; -import { GraphQLSchema } from '../../type/schema'; import { getNamedType, isCompositeType } from '../../type/definition'; +import { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../buildASTSchema'; import { TypeInfo, visitWithTypeInfo } from '../TypeInfo'; diff --git a/src/utilities/__tests__/astFromValue-test.ts b/src/utilities/__tests__/astFromValue-test.ts index 3641f00227..b8f2361bd7 100644 --- a/src/utilities/__tests__/astFromValue-test.ts +++ b/src/utilities/__tests__/astFromValue-test.ts @@ -2,19 +2,19 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import { - GraphQLID, - GraphQLInt, - GraphQLFloat, - GraphQLString, - GraphQLBoolean, -} from '../../type/scalars'; -import { + GraphQLEnumType, + GraphQLInputObjectType, GraphQLList, GraphQLNonNull, GraphQLScalarType, - GraphQLEnumType, - GraphQLInputObjectType, } from '../../type/definition'; +import { + GraphQLBoolean, + GraphQLFloat, + GraphQLID, + GraphQLInt, + GraphQLString, +} from '../../type/scalars'; import { astFromValue } from '../astFromValue'; diff --git a/src/utilities/__tests__/buildASTSchema-test.ts b/src/utilities/__tests__/buildASTSchema-test.ts index 1f3ec6eced..7427ebb507 100644 --- a/src/utilities/__tests__/buildASTSchema-test.ts +++ b/src/utilities/__tests__/buildASTSchema-test.ts @@ -4,43 +4,43 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; import { invariant } from '../../jsutils/invariant'; +import type { Maybe } from '../../jsutils/Maybe'; import type { ASTNode } from '../../language/ast'; import { Kind } from '../../language/kinds'; import { parse } from '../../language/parser'; import { print } from '../../language/printer'; -import { GraphQLSchema } from '../../type/schema'; -import { validateSchema } from '../../type/validate'; -import { __Schema, __EnumValue } from '../../type/introspection'; +import { + assertEnumType, + assertInputObjectType, + assertInterfaceType, + assertObjectType, + assertScalarType, + assertUnionType, +} from '../../type/definition'; import { assertDirective, - GraphQLSkipDirective, - GraphQLIncludeDirective, GraphQLDeprecatedDirective, + GraphQLIncludeDirective, + GraphQLSkipDirective, GraphQLSpecifiedByDirective, } from '../../type/directives'; +import { __EnumValue, __Schema } from '../../type/introspection'; import { + GraphQLBoolean, + GraphQLFloat, GraphQLID, GraphQLInt, - GraphQLFloat, GraphQLString, - GraphQLBoolean, } from '../../type/scalars'; -import { - assertObjectType, - assertInputObjectType, - assertEnumType, - assertUnionType, - assertInterfaceType, - assertScalarType, -} from '../../type/definition'; +import { GraphQLSchema } from '../../type/schema'; +import { validateSchema } from '../../type/validate'; import { graphqlSync } from '../../graphql'; -import { printType, printSchema } from '../printSchema'; import { buildASTSchema, buildSchema } from '../buildASTSchema'; -import type { Maybe } from '../../jsutils/Maybe'; +import { printSchema, printType } from '../printSchema'; /** * This function does a full cycle of going from a string with the contents of diff --git a/src/utilities/__tests__/buildClientSchema-test.ts b/src/utilities/__tests__/buildClientSchema-test.ts index dc705b8aec..7d17811515 100644 --- a/src/utilities/__tests__/buildClientSchema-test.ts +++ b/src/utilities/__tests__/buildClientSchema-test.ts @@ -5,26 +5,26 @@ import { dedent } from '../../__testUtils__/dedent'; import { invariant } from '../../jsutils/invariant'; -import { graphqlSync } from '../../graphql'; - -import { GraphQLSchema } from '../../type/schema'; import { assertEnumType, - GraphQLObjectType, GraphQLEnumType, + GraphQLObjectType, } from '../../type/definition'; import { - GraphQLInt, - GraphQLFloat, - GraphQLString, GraphQLBoolean, + GraphQLFloat, GraphQLID, + GraphQLInt, + GraphQLString, } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; + +import { graphqlSync } from '../../graphql'; -import { printSchema } from '../printSchema'; import { buildSchema } from '../buildASTSchema'; import { buildClientSchema } from '../buildClientSchema'; import { introspectionFromSchema } from '../introspectionFromSchema'; +import { printSchema } from '../printSchema'; /** * This function does a full cycle of going from a string with the contents of diff --git a/src/utilities/__tests__/coerceInputValue-test.ts b/src/utilities/__tests__/coerceInputValue-test.ts index 32e127619a..a73cdc6116 100644 --- a/src/utilities/__tests__/coerceInputValue-test.ts +++ b/src/utilities/__tests__/coerceInputValue-test.ts @@ -2,14 +2,14 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import type { GraphQLInputType } from '../../type/definition'; -import { GraphQLInt } from '../../type/scalars'; import { + GraphQLEnumType, + GraphQLInputObjectType, GraphQLList, GraphQLNonNull, - GraphQLEnumType, GraphQLScalarType, - GraphQLInputObjectType, } from '../../type/definition'; +import { GraphQLInt } from '../../type/scalars'; import { coerceInputValue } from '../coerceInputValue'; diff --git a/src/utilities/__tests__/extendSchema-test.ts b/src/utilities/__tests__/extendSchema-test.ts index 022d6a5813..86baf0e699 100644 --- a/src/utilities/__tests__/extendSchema-test.ts +++ b/src/utilities/__tests__/extendSchema-test.ts @@ -10,31 +10,31 @@ import type { ASTNode } from '../../language/ast'; import { parse } from '../../language/parser'; import { print } from '../../language/printer'; -import { graphqlSync } from '../../graphql'; - -import { GraphQLSchema } from '../../type/schema'; -import { validateSchema } from '../../type/validate'; +import { + assertEnumType, + assertInputObjectType, + assertInterfaceType, + assertObjectType, + assertScalarType, + assertUnionType, +} from '../../type/definition'; import { assertDirective } from '../../type/directives'; import { + GraphQLBoolean, + GraphQLFloat, GraphQLID, GraphQLInt, - GraphQLFloat, GraphQLString, - GraphQLBoolean, } from '../../type/scalars'; -import { - assertObjectType, - assertInputObjectType, - assertEnumType, - assertUnionType, - assertInterfaceType, - assertScalarType, -} from '../../type/definition'; +import { GraphQLSchema } from '../../type/schema'; +import { validateSchema } from '../../type/validate'; + +import { graphqlSync } from '../../graphql'; +import { buildSchema } from '../buildASTSchema'; import { concatAST } from '../concatAST'; -import { printSchema } from '../printSchema'; import { extendSchema } from '../extendSchema'; -import { buildSchema } from '../buildASTSchema'; +import { printSchema } from '../printSchema'; function expectExtensionASTNodes(obj: { readonly extensionASTNodes: ReadonlyArray; diff --git a/src/utilities/__tests__/findBreakingChanges-test.ts b/src/utilities/__tests__/findBreakingChanges-test.ts index a4ab722084..5a7956ae5d 100644 --- a/src/utilities/__tests__/findBreakingChanges-test.ts +++ b/src/utilities/__tests__/findBreakingChanges-test.ts @@ -1,13 +1,13 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; -import { GraphQLSchema } from '../../type/schema'; import { - GraphQLSkipDirective, + GraphQLDeprecatedDirective, GraphQLIncludeDirective, + GraphQLSkipDirective, GraphQLSpecifiedByDirective, - GraphQLDeprecatedDirective, } from '../../type/directives'; +import { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../buildASTSchema'; import { diff --git a/src/utilities/__tests__/getIntrospectionQuery-test.ts b/src/utilities/__tests__/getIntrospectionQuery-test.ts index 324d77b0b0..e2f5595b3c 100644 --- a/src/utilities/__tests__/getIntrospectionQuery-test.ts +++ b/src/utilities/__tests__/getIntrospectionQuery-test.ts @@ -5,8 +5,8 @@ import { parse } from '../../language/parser'; import { validate } from '../../validation/validate'; -import type { IntrospectionOptions } from '../getIntrospectionQuery'; import { buildSchema } from '../buildASTSchema'; +import type { IntrospectionOptions } from '../getIntrospectionQuery'; import { getIntrospectionQuery } from '../getIntrospectionQuery'; const dummySchema = buildSchema(` diff --git a/src/utilities/__tests__/getOperationRootType-test.ts b/src/utilities/__tests__/getOperationRootType-test.ts index 99292d15d2..ce683a5a12 100644 --- a/src/utilities/__tests__/getOperationRootType-test.ts +++ b/src/utilities/__tests__/getOperationRootType-test.ts @@ -7,9 +7,9 @@ import type { DocumentNode, OperationDefinitionNode } from '../../language/ast'; import { Kind } from '../../language/kinds'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString } from '../../type/scalars'; import { GraphQLObjectType } from '../../type/definition'; +import { GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { getOperationRootType } from '../getOperationRootType'; diff --git a/src/utilities/__tests__/introspectionFromSchema-test.ts b/src/utilities/__tests__/introspectionFromSchema-test.ts index 14e72ed098..2ba66348d3 100644 --- a/src/utilities/__tests__/introspectionFromSchema-test.ts +++ b/src/utilities/__tests__/introspectionFromSchema-test.ts @@ -3,14 +3,14 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString } from '../../type/scalars'; import { GraphQLObjectType } from '../../type/definition'; +import { GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; -import type { IntrospectionQuery } from '../getIntrospectionQuery'; -import { printSchema } from '../printSchema'; import { buildClientSchema } from '../buildClientSchema'; +import type { IntrospectionQuery } from '../getIntrospectionQuery'; import { introspectionFromSchema } from '../introspectionFromSchema'; +import { printSchema } from '../printSchema'; function introspectionToSDL(introspection: IntrospectionQuery): string { return printSchema(buildClientSchema(introspection)); diff --git a/src/utilities/__tests__/lexicographicSortSchema-test.ts b/src/utilities/__tests__/lexicographicSortSchema-test.ts index f63ee9460c..bce12e3ac5 100644 --- a/src/utilities/__tests__/lexicographicSortSchema-test.ts +++ b/src/utilities/__tests__/lexicographicSortSchema-test.ts @@ -3,9 +3,9 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { printSchema } from '../printSchema'; import { buildSchema } from '../buildASTSchema'; import { lexicographicSortSchema } from '../lexicographicSortSchema'; +import { printSchema } from '../printSchema'; function sortSDL(sdl: string): string { const schema = buildSchema(sdl); diff --git a/src/utilities/__tests__/printSchema-test.ts b/src/utilities/__tests__/printSchema-test.ts index e6761926e5..84f30fc0e2 100644 --- a/src/utilities/__tests__/printSchema-test.ts +++ b/src/utilities/__tests__/printSchema-test.ts @@ -6,22 +6,22 @@ import { dedent, dedentString } from '../../__testUtils__/dedent'; import { DirectiveLocation } from '../../language/directiveLocation'; import type { GraphQLFieldConfig } from '../../type/definition'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLDirective } from '../../type/directives'; -import { GraphQLInt, GraphQLString, GraphQLBoolean } from '../../type/scalars'; import { + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, - GraphQLScalarType, GraphQLObjectType, - GraphQLInterfaceType, + GraphQLScalarType, GraphQLUnionType, - GraphQLEnumType, - GraphQLInputObjectType, } from '../../type/definition'; +import { GraphQLDirective } from '../../type/directives'; +import { GraphQLBoolean, GraphQLInt, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../buildASTSchema'; -import { printSchema, printIntrospectionSchema } from '../printSchema'; +import { printIntrospectionSchema, printSchema } from '../printSchema'; function expectPrintedSchema(schema: GraphQLSchema) { const schemaText = printSchema(schema); diff --git a/src/utilities/__tests__/stripIgnoredCharacters-fuzz.ts b/src/utilities/__tests__/stripIgnoredCharacters-fuzz.ts index 38a5a12b6e..29a22ed838 100644 --- a/src/utilities/__tests__/stripIgnoredCharacters-fuzz.ts +++ b/src/utilities/__tests__/stripIgnoredCharacters-fuzz.ts @@ -1,8 +1,8 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; -import { inspectStr } from '../../__testUtils__/inspectStr'; import { genFuzzStrings } from '../../__testUtils__/genFuzzStrings'; +import { inspectStr } from '../../__testUtils__/inspectStr'; import { invariant } from '../../jsutils/invariant'; diff --git a/src/utilities/__tests__/stripIgnoredCharacters-test.ts b/src/utilities/__tests__/stripIgnoredCharacters-test.ts index ea46b6b7a2..4115742f5c 100644 --- a/src/utilities/__tests__/stripIgnoredCharacters-test.ts +++ b/src/utilities/__tests__/stripIgnoredCharacters-test.ts @@ -3,8 +3,8 @@ import { describe, it } from 'mocha'; import { dedent } from '../../__testUtils__/dedent'; import { inspectStr } from '../../__testUtils__/inspectStr'; -import { kitchenSinkSDL } from '../../__testUtils__/kitchenSinkSDL'; import { kitchenSinkQuery } from '../../__testUtils__/kitchenSinkQuery'; +import { kitchenSinkSDL } from '../../__testUtils__/kitchenSinkSDL'; import { invariant } from '../../jsutils/invariant'; import type { Maybe } from '../../jsutils/Maybe'; diff --git a/src/utilities/__tests__/typeComparators-test.ts b/src/utilities/__tests__/typeComparators-test.ts index adf830b461..f2709bf740 100644 --- a/src/utilities/__tests__/typeComparators-test.ts +++ b/src/utilities/__tests__/typeComparators-test.ts @@ -2,15 +2,15 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; import type { GraphQLFieldConfigMap } from '../../type/definition'; -import { GraphQLSchema } from '../../type/schema'; -import { GraphQLString, GraphQLInt, GraphQLFloat } from '../../type/scalars'; import { + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, GraphQLObjectType, - GraphQLInterfaceType, GraphQLUnionType, } from '../../type/definition'; +import { GraphQLFloat, GraphQLInt, GraphQLString } from '../../type/scalars'; +import { GraphQLSchema } from '../../type/schema'; import { isEqualType, isTypeSubTypeOf } from '../typeComparators'; diff --git a/src/utilities/__tests__/valueFromAST-test.ts b/src/utilities/__tests__/valueFromAST-test.ts index 6c08ccf15c..a01ed95772 100644 --- a/src/utilities/__tests__/valueFromAST-test.ts +++ b/src/utilities/__tests__/valueFromAST-test.ts @@ -1,27 +1,27 @@ import { expect } from 'chai'; import { describe, it } from 'mocha'; -import type { ObjMap } from '../../jsutils/ObjMap'; -import { invariant } from '../../jsutils/invariant'; import { identityFunc } from '../../jsutils/identityFunc'; +import { invariant } from '../../jsutils/invariant'; +import type { ObjMap } from '../../jsutils/ObjMap'; import { parseValue } from '../../language/parser'; import type { GraphQLInputType } from '../../type/definition'; import { - GraphQLInt, - GraphQLFloat, - GraphQLString, - GraphQLBoolean, - GraphQLID, -} from '../../type/scalars'; -import { + GraphQLEnumType, + GraphQLInputObjectType, GraphQLList, GraphQLNonNull, GraphQLScalarType, - GraphQLEnumType, - GraphQLInputObjectType, } from '../../type/definition'; +import { + GraphQLBoolean, + GraphQLFloat, + GraphQLID, + GraphQLInt, + GraphQLString, +} from '../../type/scalars'; import { valueFromAST } from '../valueFromAST'; diff --git a/src/utilities/astFromValue.ts b/src/utilities/astFromValue.ts index 32c497d448..1a880449c8 100644 --- a/src/utilities/astFromValue.ts +++ b/src/utilities/astFromValue.ts @@ -1,21 +1,21 @@ import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; -import { isObjectLike } from '../jsutils/isObjectLike'; import { isIterableObject } from '../jsutils/isIterableObject'; +import { isObjectLike } from '../jsutils/isObjectLike'; import type { Maybe } from '../jsutils/Maybe'; -import type { ValueNode, ObjectFieldNode } from '../language/ast'; +import type { ObjectFieldNode, ValueNode } from '../language/ast'; import { Kind } from '../language/kinds'; import type { GraphQLInputType } from '../type/definition'; -import { GraphQLID } from '../type/scalars'; import { - isLeafType, isEnumType, isInputObjectType, + isLeafType, isListType, isNonNullType, } from '../type/definition'; +import { GraphQLID } from '../type/scalars'; /** * Produces a GraphQL Value AST given a JavaScript object. diff --git a/src/utilities/buildASTSchema.ts b/src/utilities/buildASTSchema.ts index 9b69e4dd76..eeff08e6ed 100644 --- a/src/utilities/buildASTSchema.ts +++ b/src/utilities/buildASTSchema.ts @@ -1,16 +1,16 @@ import { devAssert } from '../jsutils/devAssert'; -import type { Source } from '../language/source'; import type { DocumentNode } from '../language/ast'; -import type { ParseOptions } from '../language/parser'; import { Kind } from '../language/kinds'; +import type { ParseOptions } from '../language/parser'; import { parse } from '../language/parser'; +import type { Source } from '../language/source'; -import { assertValidSDL } from '../validation/validate'; - +import { specifiedDirectives } from '../type/directives'; import type { GraphQLSchemaValidationOptions } from '../type/schema'; import { GraphQLSchema } from '../type/schema'; -import { specifiedDirectives } from '../type/directives'; + +import { assertValidSDL } from '../validation/validate'; import { extendSchemaImpl } from './extendSchema'; diff --git a/src/utilities/buildClientSchema.ts b/src/utilities/buildClientSchema.ts index 138f7f2625..18e6110b2b 100644 --- a/src/utilities/buildClientSchema.ts +++ b/src/utilities/buildClientSchema.ts @@ -1,51 +1,51 @@ -import { inspect } from '../jsutils/inspect'; import { devAssert } from '../jsutils/devAssert'; -import { keyValMap } from '../jsutils/keyValMap'; +import { inspect } from '../jsutils/inspect'; import { isObjectLike } from '../jsutils/isObjectLike'; +import { keyValMap } from '../jsutils/keyValMap'; import { parseValue } from '../language/parser'; -import type { GraphQLSchemaValidationOptions } from '../type/schema'; import type { - GraphQLType, - GraphQLNamedType, GraphQLFieldConfig, GraphQLFieldConfigMap, + GraphQLNamedType, + GraphQLType, } from '../type/definition'; -import { GraphQLSchema } from '../type/schema'; -import { GraphQLDirective } from '../type/directives'; -import { specifiedScalarTypes } from '../type/scalars'; -import { introspectionTypes, TypeKind } from '../type/introspection'; import { - isInputType, - isOutputType, + assertInterfaceType, + assertNullableType, + assertObjectType, + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, - GraphQLScalarType, GraphQLObjectType, - GraphQLInterfaceType, + GraphQLScalarType, GraphQLUnionType, - GraphQLEnumType, - GraphQLInputObjectType, - assertNullableType, - assertObjectType, - assertInterfaceType, + isInputType, + isOutputType, } from '../type/definition'; +import { GraphQLDirective } from '../type/directives'; +import { introspectionTypes, TypeKind } from '../type/introspection'; +import { specifiedScalarTypes } from '../type/scalars'; +import type { GraphQLSchemaValidationOptions } from '../type/schema'; +import { GraphQLSchema } from '../type/schema'; import type { - IntrospectionQuery, IntrospectionDirective, + IntrospectionEnumType, IntrospectionField, + IntrospectionInputObjectType, IntrospectionInputValue, - IntrospectionType, - IntrospectionScalarType, - IntrospectionObjectType, IntrospectionInterfaceType, - IntrospectionUnionType, - IntrospectionEnumType, - IntrospectionInputObjectType, - IntrospectionTypeRef, IntrospectionNamedTypeRef, + IntrospectionObjectType, + IntrospectionQuery, + IntrospectionScalarType, + IntrospectionType, + IntrospectionTypeRef, + IntrospectionUnionType, } from './getIntrospectionQuery'; import { valueFromAST } from './valueFromAST'; diff --git a/src/utilities/coerceInputValue.ts b/src/utilities/coerceInputValue.ts index 633eb4f77e..07883db85d 100644 --- a/src/utilities/coerceInputValue.ts +++ b/src/utilities/coerceInputValue.ts @@ -1,19 +1,19 @@ -import type { Path } from '../jsutils/Path'; +import { didYouMean } from '../jsutils/didYouMean'; import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; -import { didYouMean } from '../jsutils/didYouMean'; +import { isIterableObject } from '../jsutils/isIterableObject'; import { isObjectLike } from '../jsutils/isObjectLike'; -import { suggestionList } from '../jsutils/suggestionList'; -import { printPathArray } from '../jsutils/printPathArray'; +import type { Path } from '../jsutils/Path'; import { addPath, pathToArray } from '../jsutils/Path'; -import { isIterableObject } from '../jsutils/isIterableObject'; +import { printPathArray } from '../jsutils/printPathArray'; +import { suggestionList } from '../jsutils/suggestionList'; import { GraphQLError } from '../error/GraphQLError'; import type { GraphQLInputType } from '../type/definition'; import { - isLeafType, isInputObjectType, + isLeafType, isListType, isNonNullType, } from '../type/definition'; diff --git a/src/utilities/concatAST.ts b/src/utilities/concatAST.ts index 4437510079..33062f610e 100644 --- a/src/utilities/concatAST.ts +++ b/src/utilities/concatAST.ts @@ -1,4 +1,4 @@ -import type { DocumentNode, DefinitionNode } from '../language/ast'; +import type { DefinitionNode, DocumentNode } from '../language/ast'; import { Kind } from '../language/kinds'; /** diff --git a/src/utilities/extendSchema.ts b/src/utilities/extendSchema.ts index aba262f00e..998847e9f1 100644 --- a/src/utilities/extendSchema.ts +++ b/src/utilities/extendSchema.ts @@ -1,33 +1,33 @@ -import { keyMap } from '../jsutils/keyMap'; +import { devAssert } from '../jsutils/devAssert'; import { inspect } from '../jsutils/inspect'; -import { mapValue } from '../jsutils/mapValue'; import { invariant } from '../jsutils/invariant'; -import { devAssert } from '../jsutils/devAssert'; +import { keyMap } from '../jsutils/keyMap'; +import { mapValue } from '../jsutils/mapValue'; import type { Maybe } from '../jsutils/Maybe'; import type { + DirectiveDefinitionNode, DocumentNode, - TypeNode, - NamedTypeNode, - SchemaDefinitionNode, - SchemaExtensionNode, - TypeDefinitionNode, - InterfaceTypeDefinitionNode, - InterfaceTypeExtensionNode, - ObjectTypeDefinitionNode, - ObjectTypeExtensionNode, - UnionTypeDefinitionNode, - UnionTypeExtensionNode, + EnumTypeDefinitionNode, + EnumTypeExtensionNode, + EnumValueDefinitionNode, FieldDefinitionNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InputValueDefinitionNode, - EnumTypeDefinitionNode, - EnumTypeExtensionNode, - EnumValueDefinitionNode, - DirectiveDefinitionNode, + InterfaceTypeDefinitionNode, + InterfaceTypeExtensionNode, + NamedTypeNode, + ObjectTypeDefinitionNode, + ObjectTypeExtensionNode, ScalarTypeDefinitionNode, ScalarTypeExtensionNode, + SchemaDefinitionNode, + SchemaExtensionNode, + TypeDefinitionNode, + TypeNode, + UnionTypeDefinitionNode, + UnionTypeExtensionNode, } from '../language/ast'; import { Kind } from '../language/kinds'; import { @@ -35,50 +35,50 @@ import { isTypeExtensionNode, } from '../language/predicates'; -import { assertValidSDLExtension } from '../validation/validate'; - -import { getDirectiveValues } from '../execution/values'; - -import type { - GraphQLSchemaValidationOptions, - GraphQLSchemaNormalizedConfig, -} from '../type/schema'; import type { - GraphQLType, - GraphQLNamedType, - GraphQLFieldConfig, - GraphQLFieldConfigMap, GraphQLArgumentConfig, - GraphQLFieldConfigArgumentMap, GraphQLEnumValueConfigMap, + GraphQLFieldConfig, + GraphQLFieldConfigArgumentMap, + GraphQLFieldConfigMap, GraphQLInputFieldConfigMap, + GraphQLNamedType, + GraphQLType, } from '../type/definition'; -import { assertSchema, GraphQLSchema } from '../type/schema'; -import { specifiedScalarTypes, isSpecifiedScalarType } from '../type/scalars'; -import { introspectionTypes, isIntrospectionType } from '../type/introspection'; import { - GraphQLDirective, - GraphQLDeprecatedDirective, - GraphQLSpecifiedByDirective, -} from '../type/directives'; -import { - isScalarType, - isObjectType, - isInterfaceType, - isUnionType, - isListType, - isNonNullType, - isEnumType, - isInputObjectType, + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, - GraphQLScalarType, GraphQLObjectType, - GraphQLInterfaceType, + GraphQLScalarType, GraphQLUnionType, - GraphQLEnumType, - GraphQLInputObjectType, + isEnumType, + isInputObjectType, + isInterfaceType, + isListType, + isNonNullType, + isObjectType, + isScalarType, + isUnionType, } from '../type/definition'; +import { + GraphQLDeprecatedDirective, + GraphQLDirective, + GraphQLSpecifiedByDirective, +} from '../type/directives'; +import { introspectionTypes, isIntrospectionType } from '../type/introspection'; +import { isSpecifiedScalarType, specifiedScalarTypes } from '../type/scalars'; +import type { + GraphQLSchemaNormalizedConfig, + GraphQLSchemaValidationOptions, +} from '../type/schema'; +import { assertSchema, GraphQLSchema } from '../type/schema'; + +import { assertValidSDLExtension } from '../validation/validate'; + +import { getDirectiveValues } from '../execution/values'; import { valueFromAST } from './valueFromAST'; diff --git a/src/utilities/findBreakingChanges.ts b/src/utilities/findBreakingChanges.ts index 989c1d2104..b82901f972 100644 --- a/src/utilities/findBreakingChanges.ts +++ b/src/utilities/findBreakingChanges.ts @@ -1,37 +1,37 @@ -import { keyMap } from '../jsutils/keyMap'; import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; +import { keyMap } from '../jsutils/keyMap'; import { naturalCompare } from '../jsutils/naturalCompare'; import { print } from '../language/printer'; import { visit } from '../language/visitor'; -import type { GraphQLSchema } from '../type/schema'; import type { + GraphQLEnumType, GraphQLField, - GraphQLType, + GraphQLInputObjectType, GraphQLInputType, + GraphQLInterfaceType, GraphQLNamedType, - GraphQLEnumType, - GraphQLUnionType, GraphQLObjectType, - GraphQLInterfaceType, - GraphQLInputObjectType, + GraphQLType, + GraphQLUnionType, } from '../type/definition'; -import { isSpecifiedScalarType } from '../type/scalars'; import { - isScalarType, - isObjectType, - isInterfaceType, - isUnionType, isEnumType, isInputObjectType, - isNonNullType, + isInterfaceType, isListType, isNamedType, + isNonNullType, + isObjectType, isRequiredArgument, isRequiredInputField, + isScalarType, + isUnionType, } from '../type/definition'; +import { isSpecifiedScalarType } from '../type/scalars'; +import type { GraphQLSchema } from '../type/schema'; import { astFromValue } from './astFromValue'; diff --git a/src/utilities/getIntrospectionQuery.ts b/src/utilities/getIntrospectionQuery.ts index bb9be0680a..2720e0b45d 100644 --- a/src/utilities/getIntrospectionQuery.ts +++ b/src/utilities/getIntrospectionQuery.ts @@ -1,4 +1,5 @@ import type { Maybe } from '../jsutils/Maybe'; + import type { DirectiveLocation } from '../language/directiveLocation'; export interface IntrospectionOptions { diff --git a/src/utilities/getOperationAST.ts b/src/utilities/getOperationAST.ts index 9e6d85dd9f..8decf943f6 100644 --- a/src/utilities/getOperationAST.ts +++ b/src/utilities/getOperationAST.ts @@ -1,4 +1,5 @@ import type { Maybe } from '../jsutils/Maybe'; + import type { DocumentNode, OperationDefinitionNode } from '../language/ast'; import { Kind } from '../language/kinds'; diff --git a/src/utilities/getOperationRootType.ts b/src/utilities/getOperationRootType.ts index 7738ec14e9..86302be854 100644 --- a/src/utilities/getOperationRootType.ts +++ b/src/utilities/getOperationRootType.ts @@ -5,8 +5,8 @@ import type { OperationTypeDefinitionNode, } from '../language/ast'; -import type { GraphQLSchema } from '../type/schema'; import type { GraphQLObjectType } from '../type/definition'; +import type { GraphQLSchema } from '../type/schema'; /** * Extracts the root type of the operation from the schema. diff --git a/src/utilities/introspectionFromSchema.ts b/src/utilities/introspectionFromSchema.ts index 22dfc8a944..5b933c2191 100644 --- a/src/utilities/introspectionFromSchema.ts +++ b/src/utilities/introspectionFromSchema.ts @@ -7,8 +7,8 @@ import type { GraphQLSchema } from '../type/schema'; import { executeSync } from '../execution/execute'; import type { - IntrospectionQuery, IntrospectionOptions, + IntrospectionQuery, } from './getIntrospectionQuery'; import { getIntrospectionQuery } from './getIntrospectionQuery'; diff --git a/src/utilities/lexicographicSortSchema.ts b/src/utilities/lexicographicSortSchema.ts index 2033b12928..26b6908c9f 100644 --- a/src/utilities/lexicographicSortSchema.ts +++ b/src/utilities/lexicographicSortSchema.ts @@ -1,37 +1,37 @@ -import type { ObjMap } from '../jsutils/ObjMap'; import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; import { keyValMap } from '../jsutils/keyValMap'; -import { naturalCompare } from '../jsutils/naturalCompare'; import type { Maybe } from '../jsutils/Maybe'; +import { naturalCompare } from '../jsutils/naturalCompare'; +import type { ObjMap } from '../jsutils/ObjMap'; import type { - GraphQLType, - GraphQLNamedType, - GraphQLFieldConfigMap, GraphQLFieldConfigArgumentMap, + GraphQLFieldConfigMap, GraphQLInputFieldConfigMap, + GraphQLNamedType, + GraphQLType, } from '../type/definition'; -import { GraphQLSchema } from '../type/schema'; -import { GraphQLDirective } from '../type/directives'; -import { isIntrospectionType } from '../type/introspection'; import { + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLInterfaceType, GraphQLList, GraphQLNonNull, GraphQLObjectType, - GraphQLInterfaceType, GraphQLUnionType, - GraphQLEnumType, - GraphQLInputObjectType, + isEnumType, + isInputObjectType, + isInterfaceType, isListType, isNonNullType, - isScalarType, isObjectType, - isInterfaceType, + isScalarType, isUnionType, - isEnumType, - isInputObjectType, } from '../type/definition'; +import { GraphQLDirective } from '../type/directives'; +import { isIntrospectionType } from '../type/introspection'; +import { GraphQLSchema } from '../type/schema'; /** * Sort GraphQLSchema. diff --git a/src/utilities/printSchema.ts b/src/utilities/printSchema.ts index 7f06542d4d..83859feee8 100644 --- a/src/utilities/printSchema.ts +++ b/src/utilities/printSchema.ts @@ -2,37 +2,37 @@ import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; import type { Maybe } from '../jsutils/Maybe'; +import { isPrintableAsBlockString } from '../language/blockString'; import { Kind } from '../language/kinds'; import { print } from '../language/printer'; -import { isPrintableAsBlockString } from '../language/blockString'; -import type { GraphQLSchema } from '../type/schema'; -import type { GraphQLDirective } from '../type/directives'; import type { - GraphQLNamedType, GraphQLArgument, - GraphQLInputField, - GraphQLScalarType, GraphQLEnumType, - GraphQLObjectType, + GraphQLInputField, + GraphQLInputObjectType, GraphQLInterfaceType, + GraphQLNamedType, + GraphQLObjectType, + GraphQLScalarType, GraphQLUnionType, - GraphQLInputObjectType, } from '../type/definition'; -import { isIntrospectionType } from '../type/introspection'; -import { isSpecifiedScalarType } from '../type/scalars'; -import { - DEFAULT_DEPRECATION_REASON, - isSpecifiedDirective, -} from '../type/directives'; import { - isScalarType, - isObjectType, - isInterfaceType, - isUnionType, isEnumType, isInputObjectType, + isInterfaceType, + isObjectType, + isScalarType, + isUnionType, } from '../type/definition'; +import type { GraphQLDirective } from '../type/directives'; +import { + DEFAULT_DEPRECATION_REASON, + isSpecifiedDirective, +} from '../type/directives'; +import { isIntrospectionType } from '../type/introspection'; +import { isSpecifiedScalarType } from '../type/scalars'; +import type { GraphQLSchema } from '../type/schema'; import { astFromValue } from './astFromValue'; diff --git a/src/utilities/stripIgnoredCharacters.ts b/src/utilities/stripIgnoredCharacters.ts index 41d5c2a037..5eb5c9800c 100644 --- a/src/utilities/stripIgnoredCharacters.ts +++ b/src/utilities/stripIgnoredCharacters.ts @@ -1,7 +1,7 @@ -import { Source, isSource } from '../language/source'; -import { TokenKind } from '../language/tokenKind'; -import { Lexer, isPunctuatorTokenKind } from '../language/lexer'; import { printBlockString } from '../language/blockString'; +import { isPunctuatorTokenKind, Lexer } from '../language/lexer'; +import { isSource, Source } from '../language/source'; +import { TokenKind } from '../language/tokenKind'; /** * Strips characters that are not significant to the validity or execution diff --git a/src/utilities/typeComparators.ts b/src/utilities/typeComparators.ts index 99f84d2e7a..287be40bfe 100644 --- a/src/utilities/typeComparators.ts +++ b/src/utilities/typeComparators.ts @@ -1,12 +1,12 @@ -import type { GraphQLSchema } from '../type/schema'; -import type { GraphQLType, GraphQLCompositeType } from '../type/definition'; +import type { GraphQLCompositeType, GraphQLType } from '../type/definition'; import { + isAbstractType, isInterfaceType, - isObjectType, isListType, isNonNullType, - isAbstractType, + isObjectType, } from '../type/definition'; +import type { GraphQLSchema } from '../type/schema'; /** * Provided two types, return true if the types are equal (invariant). diff --git a/src/utilities/typeFromAST.ts b/src/utilities/typeFromAST.ts index 960106b5f6..7510df1046 100644 --- a/src/utilities/typeFromAST.ts +++ b/src/utilities/typeFromAST.ts @@ -1,15 +1,14 @@ import type { - TypeNode, - NamedTypeNode, ListTypeNode, + NamedTypeNode, NonNullTypeNode, + TypeNode, } from '../language/ast'; - import { Kind } from '../language/kinds'; -import type { GraphQLSchema } from '../type/schema'; -import type { GraphQLType, GraphQLNamedType } from '../type/definition'; +import type { GraphQLNamedType, GraphQLType } from '../type/definition'; import { GraphQLList, GraphQLNonNull } from '../type/definition'; +import type { GraphQLSchema } from '../type/schema'; /** * Given a Schema and an AST node describing a type, return a GraphQLType diff --git a/src/utilities/valueFromAST.ts b/src/utilities/valueFromAST.ts index 531a4a2e86..4f0cee6b29 100644 --- a/src/utilities/valueFromAST.ts +++ b/src/utilities/valueFromAST.ts @@ -1,21 +1,20 @@ -import type { ObjMap } from '../jsutils/ObjMap'; -import { keyMap } from '../jsutils/keyMap'; import { inspect } from '../jsutils/inspect'; import { invariant } from '../jsutils/invariant'; +import { keyMap } from '../jsutils/keyMap'; +import type { Maybe } from '../jsutils/Maybe'; +import type { ObjMap } from '../jsutils/ObjMap'; import type { ValueNode } from '../language/ast'; import { Kind } from '../language/kinds'; import type { GraphQLInputType } from '../type/definition'; import { - isLeafType, isInputObjectType, + isLeafType, isListType, isNonNullType, } from '../type/definition'; -import type { Maybe } from '../jsutils/Maybe'; - /** * Produces a JavaScript value given a GraphQL Value AST. * diff --git a/src/utilities/valueFromASTUntyped.ts b/src/utilities/valueFromASTUntyped.ts index 678ea15128..05540da3a4 100644 --- a/src/utilities/valueFromASTUntyped.ts +++ b/src/utilities/valueFromASTUntyped.ts @@ -1,9 +1,9 @@ -import type { ObjMap } from '../jsutils/ObjMap'; import { keyValMap } from '../jsutils/keyValMap'; import type { Maybe } from '../jsutils/Maybe'; +import type { ObjMap } from '../jsutils/ObjMap'; -import { Kind } from '../language/kinds'; import type { ValueNode } from '../language/ast'; +import { Kind } from '../language/kinds'; /** * Produces a JavaScript value given a GraphQL Value AST. diff --git a/src/validation/ValidationContext.ts b/src/validation/ValidationContext.ts index a5057900df..f6944a6ebd 100644 --- a/src/validation/ValidationContext.ts +++ b/src/validation/ValidationContext.ts @@ -3,29 +3,28 @@ import type { ObjMap } from '../jsutils/ObjMap'; import type { GraphQLError } from '../error/GraphQLError'; -import type { ASTVisitor } from '../language/visitor'; import type { DocumentNode, + FragmentDefinitionNode, + FragmentSpreadNode, OperationDefinitionNode, - VariableNode, SelectionSetNode, - FragmentSpreadNode, - FragmentDefinitionNode, + VariableNode, } from '../language/ast'; - import { Kind } from '../language/kinds'; +import type { ASTVisitor } from '../language/visitor'; import { visit } from '../language/visitor'; -import type { GraphQLSchema } from '../type/schema'; -import type { GraphQLDirective } from '../type/directives'; import type { - GraphQLInputType, - GraphQLOutputType, - GraphQLCompositeType, - GraphQLField, GraphQLArgument, + GraphQLCompositeType, GraphQLEnumValue, + GraphQLField, + GraphQLInputType, + GraphQLOutputType, } from '../type/definition'; +import type { GraphQLDirective } from '../type/directives'; +import type { GraphQLSchema } from '../type/schema'; import { TypeInfo, visitWithTypeInfo } from '../utilities/TypeInfo'; diff --git a/src/validation/__tests__/FieldsOnCorrectTypeRule-test.ts b/src/validation/__tests__/FieldsOnCorrectTypeRule-test.ts index 5ee27473ae..70473fa685 100644 --- a/src/validation/__tests__/FieldsOnCorrectTypeRule-test.ts +++ b/src/validation/__tests__/FieldsOnCorrectTypeRule-test.ts @@ -7,8 +7,8 @@ import type { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../../utilities/buildASTSchema'; -import { validate } from '../validate'; import { FieldsOnCorrectTypeRule } from '../rules/FieldsOnCorrectTypeRule'; +import { validate } from '../validate'; import { expectValidationErrorsWithSchema } from './harness'; diff --git a/src/validation/__tests__/KnownArgumentNamesRule-test.ts b/src/validation/__tests__/KnownArgumentNamesRule-test.ts index 0dbf72072d..4ce5fd190f 100644 --- a/src/validation/__tests__/KnownArgumentNamesRule-test.ts +++ b/src/validation/__tests__/KnownArgumentNamesRule-test.ts @@ -5,11 +5,11 @@ import type { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../../utilities/buildASTSchema'; import { - KnownArgumentNamesRule, KnownArgumentNamesOnDirectivesRule, + KnownArgumentNamesRule, } from '../rules/KnownArgumentNamesRule'; -import { expectValidationErrors, expectSDLValidationErrors } from './harness'; +import { expectSDLValidationErrors, expectValidationErrors } from './harness'; function expectErrors(queryStr: string) { return expectValidationErrors(KnownArgumentNamesRule, queryStr); diff --git a/src/validation/__tests__/KnownDirectivesRule-test.ts b/src/validation/__tests__/KnownDirectivesRule-test.ts index 5a87ca65dd..4cb6e225c1 100644 --- a/src/validation/__tests__/KnownDirectivesRule-test.ts +++ b/src/validation/__tests__/KnownDirectivesRule-test.ts @@ -7,8 +7,8 @@ import { buildSchema } from '../../utilities/buildASTSchema'; import { KnownDirectivesRule } from '../rules/KnownDirectivesRule'; import { - expectValidationErrorsWithSchema, expectSDLValidationErrors, + expectValidationErrorsWithSchema, } from './harness'; function expectErrors(queryStr: string) { diff --git a/src/validation/__tests__/KnownTypeNamesRule-test.ts b/src/validation/__tests__/KnownTypeNamesRule-test.ts index b9ba2c09e7..34f0ca71e5 100644 --- a/src/validation/__tests__/KnownTypeNamesRule-test.ts +++ b/src/validation/__tests__/KnownTypeNamesRule-test.ts @@ -7,9 +7,9 @@ import { buildSchema } from '../../utilities/buildASTSchema'; import { KnownTypeNamesRule } from '../rules/KnownTypeNamesRule'; import { + expectSDLValidationErrors, expectValidationErrors, expectValidationErrorsWithSchema, - expectSDLValidationErrors, } from './harness'; function expectErrors(queryStr: string) { diff --git a/src/validation/__tests__/ProvidedRequiredArgumentsRule-test.ts b/src/validation/__tests__/ProvidedRequiredArgumentsRule-test.ts index d6c300befe..23a272572c 100644 --- a/src/validation/__tests__/ProvidedRequiredArgumentsRule-test.ts +++ b/src/validation/__tests__/ProvidedRequiredArgumentsRule-test.ts @@ -5,11 +5,11 @@ import type { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../../utilities/buildASTSchema'; import { - ProvidedRequiredArgumentsRule, ProvidedRequiredArgumentsOnDirectivesRule, + ProvidedRequiredArgumentsRule, } from '../rules/ProvidedRequiredArgumentsRule'; -import { expectValidationErrors, expectSDLValidationErrors } from './harness'; +import { expectSDLValidationErrors, expectValidationErrors } from './harness'; function expectErrors(queryStr: string) { return expectValidationErrors(ProvidedRequiredArgumentsRule, queryStr); diff --git a/src/validation/__tests__/UniqueDirectivesPerLocationRule-test.ts b/src/validation/__tests__/UniqueDirectivesPerLocationRule-test.ts index 47424ef728..d57a3df684 100644 --- a/src/validation/__tests__/UniqueDirectivesPerLocationRule-test.ts +++ b/src/validation/__tests__/UniqueDirectivesPerLocationRule-test.ts @@ -9,9 +9,9 @@ import { extendSchema } from '../../utilities/extendSchema'; import { UniqueDirectivesPerLocationRule } from '../rules/UniqueDirectivesPerLocationRule'; import { - testSchema, - expectValidationErrorsWithSchema, expectSDLValidationErrors, + expectValidationErrorsWithSchema, + testSchema, } from './harness'; const extensionSDL = ` diff --git a/src/validation/__tests__/ValuesOfCorrectTypeRule-test.ts b/src/validation/__tests__/ValuesOfCorrectTypeRule-test.ts index b44a6885fd..76b03035da 100644 --- a/src/validation/__tests__/ValuesOfCorrectTypeRule-test.ts +++ b/src/validation/__tests__/ValuesOfCorrectTypeRule-test.ts @@ -7,12 +7,12 @@ import { inspect } from '../../jsutils/inspect'; import { parse } from '../../language/parser'; -import { GraphQLSchema } from '../../type/schema'; +import { GraphQLObjectType, GraphQLScalarType } from '../../type/definition'; import { GraphQLString } from '../../type/scalars'; -import { GraphQLScalarType, GraphQLObjectType } from '../../type/definition'; +import { GraphQLSchema } from '../../type/schema'; -import { validate } from '../validate'; import { ValuesOfCorrectTypeRule } from '../rules/ValuesOfCorrectTypeRule'; +import { validate } from '../validate'; import { expectValidationErrors, diff --git a/src/validation/__tests__/harness.ts b/src/validation/__tests__/harness.ts index 304cde6762..661256c56d 100644 --- a/src/validation/__tests__/harness.ts +++ b/src/validation/__tests__/harness.ts @@ -9,7 +9,7 @@ import type { GraphQLSchema } from '../../type/schema'; import { buildSchema } from '../../utilities/buildASTSchema'; import { validate, validateSDL } from '../validate'; -import type { ValidationRule, SDLValidationRule } from '../ValidationContext'; +import type { SDLValidationRule, ValidationRule } from '../ValidationContext'; export const testSchema: GraphQLSchema = buildSchema(` interface Mammal { diff --git a/src/validation/__tests__/validation-test.ts b/src/validation/__tests__/validation-test.ts index b493320213..e5b1318335 100644 --- a/src/validation/__tests__/validation-test.ts +++ b/src/validation/__tests__/validation-test.ts @@ -8,11 +8,11 @@ import { GraphQLError } from '../../error/GraphQLError'; import type { DirectiveNode } from '../../language/ast'; import { parse } from '../../language/parser'; -import { TypeInfo } from '../../utilities/TypeInfo'; import { buildSchema } from '../../utilities/buildASTSchema'; +import { TypeInfo } from '../../utilities/TypeInfo'; -import type { ValidationContext } from '../ValidationContext'; import { validate } from '../validate'; +import type { ValidationContext } from '../ValidationContext'; import { testSchema } from './harness'; diff --git a/src/validation/rules/ExecutableDefinitionsRule.ts b/src/validation/rules/ExecutableDefinitionsRule.ts index 1a6c21a91f..8c4ec3d872 100644 --- a/src/validation/rules/ExecutableDefinitionsRule.ts +++ b/src/validation/rules/ExecutableDefinitionsRule.ts @@ -1,8 +1,8 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import { Kind } from '../../language/kinds'; import { isExecutableDefinitionNode } from '../../language/predicates'; +import type { ASTVisitor } from '../../language/visitor'; import type { ASTValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/FieldsOnCorrectTypeRule.ts b/src/validation/rules/FieldsOnCorrectTypeRule.ts index a0c9726646..e9d220efef 100644 --- a/src/validation/rules/FieldsOnCorrectTypeRule.ts +++ b/src/validation/rules/FieldsOnCorrectTypeRule.ts @@ -1,23 +1,23 @@ import { didYouMean } from '../../jsutils/didYouMean'; -import { suggestionList } from '../../jsutils/suggestionList'; import { naturalCompare } from '../../jsutils/naturalCompare'; +import { suggestionList } from '../../jsutils/suggestionList'; import { GraphQLError } from '../../error/GraphQLError'; import type { FieldNode } from '../../language/ast'; import type { ASTVisitor } from '../../language/visitor'; -import type { GraphQLSchema } from '../../type/schema'; import type { - GraphQLOutputType, - GraphQLObjectType, GraphQLInterfaceType, + GraphQLObjectType, + GraphQLOutputType, } from '../../type/definition'; import { - isObjectType, - isInterfaceType, isAbstractType, + isInterfaceType, + isObjectType, } from '../../type/definition'; +import type { GraphQLSchema } from '../../type/schema'; import type { ValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/FragmentsOnCompositeTypesRule.ts b/src/validation/rules/FragmentsOnCompositeTypesRule.ts index 487984ea1e..6fe51db906 100644 --- a/src/validation/rules/FragmentsOnCompositeTypesRule.ts +++ b/src/validation/rules/FragmentsOnCompositeTypesRule.ts @@ -1,7 +1,7 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import { print } from '../../language/printer'; +import type { ASTVisitor } from '../../language/visitor'; import { isCompositeType } from '../../type/definition'; diff --git a/src/validation/rules/KnownArgumentNamesRule.ts b/src/validation/rules/KnownArgumentNamesRule.ts index bbe54a099a..5f5c4c70b5 100644 --- a/src/validation/rules/KnownArgumentNamesRule.ts +++ b/src/validation/rules/KnownArgumentNamesRule.ts @@ -3,14 +3,14 @@ import { suggestionList } from '../../jsutils/suggestionList'; import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import { Kind } from '../../language/kinds'; +import type { ASTVisitor } from '../../language/visitor'; import { specifiedDirectives } from '../../type/directives'; import type { - ValidationContext, SDLValidationContext, + ValidationContext, } from '../ValidationContext'; /** diff --git a/src/validation/rules/KnownDirectivesRule.ts b/src/validation/rules/KnownDirectivesRule.ts index b84620d653..2b5b481165 100644 --- a/src/validation/rules/KnownDirectivesRule.ts +++ b/src/validation/rules/KnownDirectivesRule.ts @@ -3,17 +3,17 @@ import { invariant } from '../../jsutils/invariant'; import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { ASTNode } from '../../language/ast'; -import { Kind } from '../../language/kinds'; import { OperationTypeNode } from '../../language/ast'; import { DirectiveLocation } from '../../language/directiveLocation'; +import { Kind } from '../../language/kinds'; +import type { ASTVisitor } from '../../language/visitor'; import { specifiedDirectives } from '../../type/directives'; import type { - ValidationContext, SDLValidationContext, + ValidationContext, } from '../ValidationContext'; /** diff --git a/src/validation/rules/KnownTypeNamesRule.ts b/src/validation/rules/KnownTypeNamesRule.ts index a7645b4ca2..4802610a2e 100644 --- a/src/validation/rules/KnownTypeNamesRule.ts +++ b/src/validation/rules/KnownTypeNamesRule.ts @@ -4,19 +4,19 @@ import { suggestionList } from '../../jsutils/suggestionList'; import { GraphQLError } from '../../error/GraphQLError'; import type { ASTNode } from '../../language/ast'; -import type { ASTVisitor } from '../../language/visitor'; import { isTypeDefinitionNode, isTypeSystemDefinitionNode, isTypeSystemExtensionNode, } from '../../language/predicates'; +import type { ASTVisitor } from '../../language/visitor'; -import { specifiedScalarTypes } from '../../type/scalars'; import { introspectionTypes } from '../../type/introspection'; +import { specifiedScalarTypes } from '../../type/scalars'; import type { - ValidationContext, SDLValidationContext, + ValidationContext, } from '../ValidationContext'; /** diff --git a/src/validation/rules/LoneAnonymousOperationRule.ts b/src/validation/rules/LoneAnonymousOperationRule.ts index 07e0ac35d0..ddd537dd9d 100644 --- a/src/validation/rules/LoneAnonymousOperationRule.ts +++ b/src/validation/rules/LoneAnonymousOperationRule.ts @@ -1,7 +1,7 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import { Kind } from '../../language/kinds'; +import type { ASTVisitor } from '../../language/visitor'; import type { ASTValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/LoneSchemaDefinitionRule.ts b/src/validation/rules/LoneSchemaDefinitionRule.ts index 1c2b02371e..df96238700 100644 --- a/src/validation/rules/LoneSchemaDefinitionRule.ts +++ b/src/validation/rules/LoneSchemaDefinitionRule.ts @@ -1,4 +1,5 @@ import { GraphQLError } from '../../error/GraphQLError'; + import type { ASTVisitor } from '../../language/visitor'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/OverlappingFieldsCanBeMergedRule.ts b/src/validation/rules/OverlappingFieldsCanBeMergedRule.ts index 740454dda7..0c83b87eb0 100644 --- a/src/validation/rules/OverlappingFieldsCanBeMergedRule.ts +++ b/src/validation/rules/OverlappingFieldsCanBeMergedRule.ts @@ -1,37 +1,36 @@ -import type { ObjMap } from '../../jsutils/ObjMap'; import { inspect } from '../../jsutils/inspect'; +import type { Maybe } from '../../jsutils/Maybe'; +import type { ObjMap } from '../../jsutils/ObjMap'; import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { - SelectionSetNode, - ValueNode, - FieldNode, ArgumentNode, + FieldNode, FragmentDefinitionNode, + SelectionSetNode, + ValueNode, } from '../../language/ast'; import { Kind } from '../../language/kinds'; import { print } from '../../language/printer'; +import type { ASTVisitor } from '../../language/visitor'; import type { + GraphQLField, GraphQLNamedType, GraphQLOutputType, - GraphQLField, } from '../../type/definition'; import { getNamedType, - isNonNullType, + isInterfaceType, isLeafType, - isObjectType, isListType, - isInterfaceType, + isNonNullType, + isObjectType, } from '../../type/definition'; import { typeFromAST } from '../../utilities/typeFromAST'; -import type { Maybe } from '../../jsutils/Maybe'; - import type { ValidationContext } from '../ValidationContext'; function reasonMessage(reason: ConflictReasonMessage): string { diff --git a/src/validation/rules/PossibleFragmentSpreadsRule.ts b/src/validation/rules/PossibleFragmentSpreadsRule.ts index d83355a99e..b2210e5a3e 100644 --- a/src/validation/rules/PossibleFragmentSpreadsRule.ts +++ b/src/validation/rules/PossibleFragmentSpreadsRule.ts @@ -8,8 +8,8 @@ import type { ASTVisitor } from '../../language/visitor'; import type { GraphQLCompositeType } from '../../type/definition'; import { isCompositeType } from '../../type/definition'; -import { typeFromAST } from '../../utilities/typeFromAST'; import { doTypesOverlap } from '../../utilities/typeComparators'; +import { typeFromAST } from '../../utilities/typeFromAST'; import type { ValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/PossibleTypeExtensionsRule.ts b/src/validation/rules/PossibleTypeExtensionsRule.ts index bf9ee2b3c8..4abca7b78c 100644 --- a/src/validation/rules/PossibleTypeExtensionsRule.ts +++ b/src/validation/rules/PossibleTypeExtensionsRule.ts @@ -1,24 +1,24 @@ -import type { ObjMap } from '../../jsutils/ObjMap'; +import { didYouMean } from '../../jsutils/didYouMean'; import { inspect } from '../../jsutils/inspect'; import { invariant } from '../../jsutils/invariant'; -import { didYouMean } from '../../jsutils/didYouMean'; +import type { ObjMap } from '../../jsutils/ObjMap'; import { suggestionList } from '../../jsutils/suggestionList'; import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { DefinitionNode, TypeExtensionNode } from '../../language/ast'; import { Kind } from '../../language/kinds'; import { isTypeDefinitionNode } from '../../language/predicates'; +import type { ASTVisitor } from '../../language/visitor'; import type { GraphQLNamedType } from '../../type/definition'; import { - isScalarType, - isObjectType, - isInterfaceType, - isUnionType, isEnumType, isInputObjectType, + isInterfaceType, + isObjectType, + isScalarType, + isUnionType, } from '../../type/definition'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/ProvidedRequiredArgumentsRule.ts b/src/validation/rules/ProvidedRequiredArgumentsRule.ts index e5b96fb7bc..b16079b1c6 100644 --- a/src/validation/rules/ProvidedRequiredArgumentsRule.ts +++ b/src/validation/rules/ProvidedRequiredArgumentsRule.ts @@ -4,18 +4,18 @@ import type { ObjMap } from '../../jsutils/ObjMap'; import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { InputValueDefinitionNode } from '../../language/ast'; import { Kind } from '../../language/kinds'; import { print } from '../../language/printer'; +import type { ASTVisitor } from '../../language/visitor'; -import { specifiedDirectives } from '../../type/directives'; -import { isType, isRequiredArgument } from '../../type/definition'; import type { GraphQLArgument } from '../../type/definition'; +import { isRequiredArgument, isType } from '../../type/definition'; +import { specifiedDirectives } from '../../type/directives'; import type { - ValidationContext, SDLValidationContext, + ValidationContext, } from '../ValidationContext'; /** diff --git a/src/validation/rules/SingleFieldSubscriptionsRule.ts b/src/validation/rules/SingleFieldSubscriptionsRule.ts index 74c0ef4af3..db0e6446a1 100644 --- a/src/validation/rules/SingleFieldSubscriptionsRule.ts +++ b/src/validation/rules/SingleFieldSubscriptionsRule.ts @@ -1,12 +1,13 @@ import type { ObjMap } from '../../jsutils/ObjMap'; + import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { - OperationDefinitionNode, FragmentDefinitionNode, + OperationDefinitionNode, } from '../../language/ast'; import { Kind } from '../../language/kinds'; +import type { ASTVisitor } from '../../language/visitor'; import { collectFields } from '../../execution/collectFields'; diff --git a/src/validation/rules/UniqueArgumentDefinitionNamesRule.ts b/src/validation/rules/UniqueArgumentDefinitionNamesRule.ts index a5bfc9e3b0..3f6e79dfa2 100644 --- a/src/validation/rules/UniqueArgumentDefinitionNamesRule.ts +++ b/src/validation/rules/UniqueArgumentDefinitionNamesRule.ts @@ -2,12 +2,12 @@ import { groupBy } from '../../jsutils/groupBy'; import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { - NameNode, FieldDefinitionNode, InputValueDefinitionNode, + NameNode, } from '../../language/ast'; +import type { ASTVisitor } from '../../language/visitor'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/UniqueDirectiveNamesRule.ts b/src/validation/rules/UniqueDirectiveNamesRule.ts index 0d87d9deb4..cbd39ce254 100644 --- a/src/validation/rules/UniqueDirectiveNamesRule.ts +++ b/src/validation/rules/UniqueDirectiveNamesRule.ts @@ -1,4 +1,5 @@ import { GraphQLError } from '../../error/GraphQLError'; + import type { ASTVisitor } from '../../language/visitor'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/UniqueDirectivesPerLocationRule.ts b/src/validation/rules/UniqueDirectivesPerLocationRule.ts index 99639508d3..18b04c505e 100644 --- a/src/validation/rules/UniqueDirectivesPerLocationRule.ts +++ b/src/validation/rules/UniqueDirectivesPerLocationRule.ts @@ -1,11 +1,11 @@ import { GraphQLError } from '../../error/GraphQLError'; import { Kind } from '../../language/kinds'; -import type { ASTVisitor } from '../../language/visitor'; import { isTypeDefinitionNode, isTypeExtensionNode, } from '../../language/predicates'; +import type { ASTVisitor } from '../../language/visitor'; import { specifiedDirectives } from '../../type/directives'; diff --git a/src/validation/rules/UniqueEnumValueNamesRule.ts b/src/validation/rules/UniqueEnumValueNamesRule.ts index c7ab13f2f6..5fbe62ce27 100644 --- a/src/validation/rules/UniqueEnumValueNamesRule.ts +++ b/src/validation/rules/UniqueEnumValueNamesRule.ts @@ -1,10 +1,10 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { EnumTypeDefinitionNode, EnumTypeExtensionNode, } from '../../language/ast'; +import type { ASTVisitor } from '../../language/visitor'; import { isEnumType } from '../../type/definition'; diff --git a/src/validation/rules/UniqueFieldDefinitionNamesRule.ts b/src/validation/rules/UniqueFieldDefinitionNamesRule.ts index 4aa8d05d50..f312b76d76 100644 --- a/src/validation/rules/UniqueFieldDefinitionNamesRule.ts +++ b/src/validation/rules/UniqueFieldDefinitionNamesRule.ts @@ -1,17 +1,17 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { - NameNode, FieldDefinitionNode, InputValueDefinitionNode, + NameNode, } from '../../language/ast'; +import type { ASTVisitor } from '../../language/visitor'; import type { GraphQLNamedType } from '../../type/definition'; import { - isObjectType, - isInterfaceType, isInputObjectType, + isInterfaceType, + isObjectType, } from '../../type/definition'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/UniqueInputFieldNamesRule.ts b/src/validation/rules/UniqueInputFieldNamesRule.ts index 6aa585102d..392df444a4 100644 --- a/src/validation/rules/UniqueInputFieldNamesRule.ts +++ b/src/validation/rules/UniqueInputFieldNamesRule.ts @@ -1,5 +1,5 @@ -import type { ObjMap } from '../../jsutils/ObjMap'; import { invariant } from '../../jsutils/invariant'; +import type { ObjMap } from '../../jsutils/ObjMap'; import { GraphQLError } from '../../error/GraphQLError'; diff --git a/src/validation/rules/UniqueOperationTypesRule.ts b/src/validation/rules/UniqueOperationTypesRule.ts index 80cf04059c..59aa4c9507 100644 --- a/src/validation/rules/UniqueOperationTypesRule.ts +++ b/src/validation/rules/UniqueOperationTypesRule.ts @@ -1,10 +1,10 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { SchemaDefinitionNode, SchemaExtensionNode, } from '../../language/ast'; +import type { ASTVisitor } from '../../language/visitor'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/UniqueTypeNamesRule.ts b/src/validation/rules/UniqueTypeNamesRule.ts index fed280c446..7d11a32015 100644 --- a/src/validation/rules/UniqueTypeNamesRule.ts +++ b/src/validation/rules/UniqueTypeNamesRule.ts @@ -1,7 +1,7 @@ import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; import type { TypeDefinitionNode } from '../../language/ast'; +import type { ASTVisitor } from '../../language/visitor'; import type { SDLValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/ValuesOfCorrectTypeRule.ts b/src/validation/rules/ValuesOfCorrectTypeRule.ts index b6b2170884..158691c50c 100644 --- a/src/validation/rules/ValuesOfCorrectTypeRule.ts +++ b/src/validation/rules/ValuesOfCorrectTypeRule.ts @@ -1,22 +1,22 @@ -import { keyMap } from '../../jsutils/keyMap'; -import { inspect } from '../../jsutils/inspect'; import { didYouMean } from '../../jsutils/didYouMean'; +import { inspect } from '../../jsutils/inspect'; +import { keyMap } from '../../jsutils/keyMap'; import { suggestionList } from '../../jsutils/suggestionList'; import { GraphQLError } from '../../error/GraphQLError'; import type { ValueNode } from '../../language/ast'; -import type { ASTVisitor } from '../../language/visitor'; import { print } from '../../language/printer'; +import type { ASTVisitor } from '../../language/visitor'; import { - isLeafType, + getNamedType, + getNullableType, isInputObjectType, + isLeafType, isListType, isNonNullType, isRequiredInputField, - getNullableType, - getNamedType, } from '../../type/definition'; import type { ValidationContext } from '../ValidationContext'; diff --git a/src/validation/rules/VariablesAreInputTypesRule.ts b/src/validation/rules/VariablesAreInputTypesRule.ts index 01db171a97..bf83038016 100644 --- a/src/validation/rules/VariablesAreInputTypesRule.ts +++ b/src/validation/rules/VariablesAreInputTypesRule.ts @@ -1,8 +1,8 @@ import { GraphQLError } from '../../error/GraphQLError'; +import type { VariableDefinitionNode } from '../../language/ast'; import { print } from '../../language/printer'; import type { ASTVisitor } from '../../language/visitor'; -import type { VariableDefinitionNode } from '../../language/ast'; import { isInputType } from '../../type/definition'; diff --git a/src/validation/rules/VariablesInAllowedPositionRule.ts b/src/validation/rules/VariablesInAllowedPositionRule.ts index c167a3c5e9..d8d50025c4 100644 --- a/src/validation/rules/VariablesInAllowedPositionRule.ts +++ b/src/validation/rules/VariablesInAllowedPositionRule.ts @@ -3,16 +3,16 @@ import type { Maybe } from '../../jsutils/Maybe'; import { GraphQLError } from '../../error/GraphQLError'; -import { Kind } from '../../language/kinds'; import type { ValueNode } from '../../language/ast'; +import { Kind } from '../../language/kinds'; import type { ASTVisitor } from '../../language/visitor'; -import type { GraphQLSchema } from '../../type/schema'; import type { GraphQLType } from '../../type/definition'; import { isNonNullType } from '../../type/definition'; +import type { GraphQLSchema } from '../../type/schema'; -import { typeFromAST } from '../../utilities/typeFromAST'; import { isTypeSubTypeOf } from '../../utilities/typeComparators'; +import { typeFromAST } from '../../utilities/typeFromAST'; import type { ValidationContext } from '../ValidationContext'; diff --git a/src/validation/specifiedRules.ts b/src/validation/specifiedRules.ts index 930e9f0f58..16e555db8a 100644 --- a/src/validation/specifiedRules.ts +++ b/src/validation/specifiedRules.ts @@ -1,98 +1,71 @@ -import type { ValidationRule, SDLValidationRule } from './ValidationContext'; - // Spec Section: "Executable Definitions" import { ExecutableDefinitionsRule } from './rules/ExecutableDefinitionsRule'; - -// Spec Section: "Operation Name Uniqueness" -import { UniqueOperationNamesRule } from './rules/UniqueOperationNamesRule'; - -// Spec Section: "Lone Anonymous Operation" -import { LoneAnonymousOperationRule } from './rules/LoneAnonymousOperationRule'; - -// Spec Section: "Subscriptions with Single Root Field" -import { SingleFieldSubscriptionsRule } from './rules/SingleFieldSubscriptionsRule'; - -// Spec Section: "Fragment Spread Type Existence" -import { KnownTypeNamesRule } from './rules/KnownTypeNamesRule'; - -// Spec Section: "Fragments on Composite Types" -import { FragmentsOnCompositeTypesRule } from './rules/FragmentsOnCompositeTypesRule'; - -// Spec Section: "Variables are Input Types" -import { VariablesAreInputTypesRule } from './rules/VariablesAreInputTypesRule'; - -// Spec Section: "Leaf Field Selections" -import { ScalarLeafsRule } from './rules/ScalarLeafsRule'; - // Spec Section: "Field Selections on Objects, Interfaces, and Unions Types" import { FieldsOnCorrectTypeRule } from './rules/FieldsOnCorrectTypeRule'; - -// Spec Section: "Fragment Name Uniqueness" -import { UniqueFragmentNamesRule } from './rules/UniqueFragmentNamesRule'; - +// Spec Section: "Fragments on Composite Types" +import { FragmentsOnCompositeTypesRule } from './rules/FragmentsOnCompositeTypesRule'; +// Spec Section: "Argument Names" +import { + KnownArgumentNamesOnDirectivesRule, + KnownArgumentNamesRule, +} from './rules/KnownArgumentNamesRule'; +// Spec Section: "Directives Are Defined" +import { KnownDirectivesRule } from './rules/KnownDirectivesRule'; // Spec Section: "Fragment spread target defined" import { KnownFragmentNamesRule } from './rules/KnownFragmentNamesRule'; - -// Spec Section: "Fragments must be used" -import { NoUnusedFragmentsRule } from './rules/NoUnusedFragmentsRule'; - -// Spec Section: "Fragment spread is possible" -import { PossibleFragmentSpreadsRule } from './rules/PossibleFragmentSpreadsRule'; - +// Spec Section: "Fragment Spread Type Existence" +import { KnownTypeNamesRule } from './rules/KnownTypeNamesRule'; +// Spec Section: "Lone Anonymous Operation" +import { LoneAnonymousOperationRule } from './rules/LoneAnonymousOperationRule'; +// SDL-specific validation rules +import { LoneSchemaDefinitionRule } from './rules/LoneSchemaDefinitionRule'; // Spec Section: "Fragments must not form cycles" import { NoFragmentCyclesRule } from './rules/NoFragmentCyclesRule'; - -// Spec Section: "Variable Uniqueness" -import { UniqueVariableNamesRule } from './rules/UniqueVariableNamesRule'; - // Spec Section: "All Variable Used Defined" import { NoUndefinedVariablesRule } from './rules/NoUndefinedVariablesRule'; - +// Spec Section: "Fragments must be used" +import { NoUnusedFragmentsRule } from './rules/NoUnusedFragmentsRule'; // Spec Section: "All Variables Used" import { NoUnusedVariablesRule } from './rules/NoUnusedVariablesRule'; - -// Spec Section: "Directives Are Defined" -import { KnownDirectivesRule } from './rules/KnownDirectivesRule'; - -// Spec Section: "Directives Are Unique Per Location" -import { UniqueDirectivesPerLocationRule } from './rules/UniqueDirectivesPerLocationRule'; - -// Spec Section: "Argument Names" -import { - KnownArgumentNamesRule, - KnownArgumentNamesOnDirectivesRule, -} from './rules/KnownArgumentNamesRule'; - -// Spec Section: "Argument Uniqueness" -import { UniqueArgumentNamesRule } from './rules/UniqueArgumentNamesRule'; - -// Spec Section: "Value Type Correctness" -import { ValuesOfCorrectTypeRule } from './rules/ValuesOfCorrectTypeRule'; - +// Spec Section: "Field Selection Merging" +import { OverlappingFieldsCanBeMergedRule } from './rules/OverlappingFieldsCanBeMergedRule'; +// Spec Section: "Fragment spread is possible" +import { PossibleFragmentSpreadsRule } from './rules/PossibleFragmentSpreadsRule'; +import { PossibleTypeExtensionsRule } from './rules/PossibleTypeExtensionsRule'; // Spec Section: "Argument Optionality" import { - ProvidedRequiredArgumentsRule, ProvidedRequiredArgumentsOnDirectivesRule, + ProvidedRequiredArgumentsRule, } from './rules/ProvidedRequiredArgumentsRule'; - -// Spec Section: "All Variable Usages Are Allowed" -import { VariablesInAllowedPositionRule } from './rules/VariablesInAllowedPositionRule'; - -// Spec Section: "Field Selection Merging" -import { OverlappingFieldsCanBeMergedRule } from './rules/OverlappingFieldsCanBeMergedRule'; - +// Spec Section: "Leaf Field Selections" +import { ScalarLeafsRule } from './rules/ScalarLeafsRule'; +// Spec Section: "Subscriptions with Single Root Field" +import { SingleFieldSubscriptionsRule } from './rules/SingleFieldSubscriptionsRule'; +import { UniqueArgumentDefinitionNamesRule } from './rules/UniqueArgumentDefinitionNamesRule'; +// Spec Section: "Argument Uniqueness" +import { UniqueArgumentNamesRule } from './rules/UniqueArgumentNamesRule'; +import { UniqueDirectiveNamesRule } from './rules/UniqueDirectiveNamesRule'; +// Spec Section: "Directives Are Unique Per Location" +import { UniqueDirectivesPerLocationRule } from './rules/UniqueDirectivesPerLocationRule'; +import { UniqueEnumValueNamesRule } from './rules/UniqueEnumValueNamesRule'; +import { UniqueFieldDefinitionNamesRule } from './rules/UniqueFieldDefinitionNamesRule'; +// Spec Section: "Fragment Name Uniqueness" +import { UniqueFragmentNamesRule } from './rules/UniqueFragmentNamesRule'; // Spec Section: "Input Object Field Uniqueness" import { UniqueInputFieldNamesRule } from './rules/UniqueInputFieldNamesRule'; - -// SDL-specific validation rules -import { LoneSchemaDefinitionRule } from './rules/LoneSchemaDefinitionRule'; +// Spec Section: "Operation Name Uniqueness" +import { UniqueOperationNamesRule } from './rules/UniqueOperationNamesRule'; import { UniqueOperationTypesRule } from './rules/UniqueOperationTypesRule'; import { UniqueTypeNamesRule } from './rules/UniqueTypeNamesRule'; -import { UniqueEnumValueNamesRule } from './rules/UniqueEnumValueNamesRule'; -import { UniqueFieldDefinitionNamesRule } from './rules/UniqueFieldDefinitionNamesRule'; -import { UniqueArgumentDefinitionNamesRule } from './rules/UniqueArgumentDefinitionNamesRule'; -import { UniqueDirectiveNamesRule } from './rules/UniqueDirectiveNamesRule'; -import { PossibleTypeExtensionsRule } from './rules/PossibleTypeExtensionsRule'; +// Spec Section: "Variable Uniqueness" +import { UniqueVariableNamesRule } from './rules/UniqueVariableNamesRule'; +// Spec Section: "Value Type Correctness" +import { ValuesOfCorrectTypeRule } from './rules/ValuesOfCorrectTypeRule'; +// Spec Section: "Variables are Input Types" +import { VariablesAreInputTypesRule } from './rules/VariablesAreInputTypesRule'; +// Spec Section: "All Variable Usages Are Allowed" +import { VariablesInAllowedPositionRule } from './rules/VariablesInAllowedPositionRule'; +import type { SDLValidationRule, ValidationRule } from './ValidationContext'; /** * This set includes all validation rules defined by the GraphQL spec. diff --git a/src/validation/validate.ts b/src/validation/validate.ts index 391083af8a..7259874240 100644 --- a/src/validation/validate.ts +++ b/src/validation/validate.ts @@ -11,8 +11,8 @@ import { assertValidSchema } from '../type/validate'; import { TypeInfo, visitWithTypeInfo } from '../utilities/TypeInfo'; -import type { SDLValidationRule, ValidationRule } from './ValidationContext'; import { specifiedRules, specifiedSDLRules } from './specifiedRules'; +import type { SDLValidationRule, ValidationRule } from './ValidationContext'; import { SDLValidationContext, ValidationContext } from './ValidationContext'; /**