Skip to content

Commit 6940b13

Browse files
authored
Merge pull request #390 from Code-Hex/add/simple-import-sort
added simple-import-sort
2 parents ee78cf3 + 4189e44 commit 6940b13

File tree

15 files changed

+452
-31
lines changed

15 files changed

+452
-31
lines changed

.eslintrc.json

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,17 @@
1212
"ecmaVersion": "latest"
1313
},
1414
"plugins": [
15-
"@typescript-eslint"
15+
"@typescript-eslint",
16+
"simple-import-sort",
17+
"import"
1618
],
1719
"rules": {
18-
"@typescript-eslint/no-explicit-any": "off"
20+
"@typescript-eslint/no-explicit-any": "off",
21+
"simple-import-sort/imports": "error",
22+
"simple-import-sort/exports": "error",
23+
"import/first": "error",
24+
"import/newline-after-import": "error",
25+
"import/no-duplicates": "error"
1926
},
2027
"overrides": [
2128
{

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@
5656
"@typescript-eslint/eslint-plugin": "5.59.9",
5757
"@typescript-eslint/parser": "5.59.9",
5858
"eslint": "8.42.0",
59+
"eslint-plugin-import": "^2.27.5",
60+
"eslint-plugin-simple-import-sort": "^10.0.0",
5961
"jest": "29.5.0",
6062
"myzod": "1.10.0",
6163
"npm-run-all": "4.1.5",

src/directive.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { ConstArgumentNode, ConstDirectiveNode, ConstValueNode, Kind, valueFromASTUntyped } from 'graphql';
2+
23
import { DirectiveConfig, DirectiveObjectArguments } from './config';
34
import { isConvertableRegexp } from './regexp';
45

src/graphql.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1+
import { Graph } from 'graphlib';
12
import {
3+
ASTNode,
4+
DefinitionNode,
5+
DocumentNode,
6+
GraphQLSchema,
27
ListTypeNode,
3-
NonNullTypeNode,
48
NamedTypeNode,
5-
TypeNode,
9+
NameNode,
10+
NonNullTypeNode,
611
ObjectTypeDefinitionNode,
12+
TypeNode,
713
visit,
8-
DocumentNode,
9-
DefinitionNode,
10-
NameNode,
11-
ASTNode,
12-
GraphQLSchema,
1314
} from 'graphql';
14-
import { Graph } from 'graphlib';
1515

1616
export const isListType = (typ?: TypeNode): typ is ListTypeNode => typ?.kind === 'ListType';
1717
export const isNonNullType = (typ?: TypeNode): typ is NonNullTypeNode => typ?.kind === 'NonNullType';

src/index.ts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
import { ZodSchemaVisitor } from './zod/index';
2-
import { MyZodSchemaVisitor } from './myzod/index';
3-
import { transformSchemaAST } from '@graphql-codegen/schema-ast';
4-
import { YupSchemaVisitor } from './yup/index';
5-
import { ValidationSchemaPluginConfig } from './config';
61
import { PluginFunction, Types } from '@graphql-codegen/plugin-helpers';
2+
import { transformSchemaAST } from '@graphql-codegen/schema-ast';
73
import { GraphQLSchema, visit } from 'graphql';
8-
import { SchemaVisitor } from './types';
4+
5+
import { ValidationSchemaPluginConfig } from './config';
96
import { topologicalSortAST } from './graphql';
7+
import { MyZodSchemaVisitor } from './myzod/index';
8+
import { SchemaVisitor } from './types';
9+
import { YupSchemaVisitor } from './yup/index';
10+
import { ZodSchemaVisitor } from './zod/index';
1011

1112
export const plugin: PluginFunction<ValidationSchemaPluginConfig, Types.ComplexPluginOutput> = (
1213
schema: GraphQLSchema,

src/myzod/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@ import {
1010
TypeNode,
1111
UnionTypeDefinitionNode,
1212
} from 'graphql';
13+
1314
import { ValidationSchemaPluginConfig } from '../config';
1415
import { buildApi, formatDirectiveConfig } from '../directive';
1516
import { SchemaVisitor } from '../types';
1617
import { Visitor } from '../visitor';
17-
import { ObjectTypeDefinitionBuilder, isInput, isListType, isNamedType, isNonNullType } from './../graphql';
18+
import { isInput, isListType, isNamedType, isNonNullType, ObjectTypeDefinitionBuilder } from './../graphql';
1819

1920
const importZod = `import * as myzod from 'myzod'`;
2021
const anySchema = `definedNonNullAnySchema`;

src/visitor.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
import { ValidationSchemaPluginConfig } from './config';
21
import { TsVisitor } from '@graphql-codegen/typescript';
3-
import { NameNode, GraphQLSchema } from 'graphql';
2+
import { GraphQLSchema, NameNode } from 'graphql';
3+
4+
import { ValidationSchemaPluginConfig } from './config';
45

56
export class Visitor extends TsVisitor {
67
constructor(

src/yup/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@ import {
1010
TypeNode,
1111
UnionTypeDefinitionNode,
1212
} from 'graphql';
13+
1314
import { ValidationSchemaPluginConfig } from '../config';
1415
import { buildApi, formatDirectiveConfig } from '../directive';
1516
import { SchemaVisitor } from '../types';
1617
import { Visitor } from '../visitor';
17-
import { ObjectTypeDefinitionBuilder, isInput, isListType, isNamedType, isNonNullType } from './../graphql';
18+
import { isInput, isListType, isNamedType, isNonNullType, ObjectTypeDefinitionBuilder } from './../graphql';
1819

1920
const importYup = `import * as yup from 'yup'`;
2021

src/zod/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@ import {
1010
TypeNode,
1111
UnionTypeDefinitionNode,
1212
} from 'graphql';
13+
1314
import { ValidationSchemaPluginConfig } from '../config';
1415
import { buildApi, formatDirectiveConfig } from '../directive';
1516
import { SchemaVisitor } from '../types';
1617
import { Visitor } from '../visitor';
17-
import { ObjectTypeDefinitionBuilder, isInput, isListType, isNamedType, isNonNullType } from './../graphql';
18+
import { isInput, isListType, isNamedType, isNonNullType, ObjectTypeDefinitionBuilder } from './../graphql';
1819

1920
const importZod = `import { z } from 'zod'`;
2021
const anySchema = `definedNonNullAnySchema`;

tests/directive.spec.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
1+
import { ConstArgumentNode, ConstDirectiveNode, ConstValueNode, Kind, NameNode, parseConstValue } from 'graphql';
2+
13
import { DirectiveConfig, DirectiveObjectArguments } from '../src/config';
24
import {
3-
FormattedDirectiveConfig,
4-
FormattedDirectiveObjectArguments,
5+
buildApi,
6+
exportedForTesting,
57
formatDirectiveConfig,
68
formatDirectiveObjectArguments,
79
FormattedDirectiveArguments,
8-
exportedForTesting,
9-
buildApi,
10+
FormattedDirectiveConfig,
11+
FormattedDirectiveObjectArguments,
1012
} from '../src/directive';
11-
import { ConstArgumentNode, ConstDirectiveNode, ConstValueNode, Kind, NameNode, parseConstValue } from 'graphql';
1213

1314
const { applyArgToApiSchemaTemplate, buildApiFromDirectiveObjectArguments, buildApiFromDirectiveArguments } =
1415
exportedForTesting;

tests/graphql.spec.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
import { Kind, ObjectTypeDefinitionNode, buildSchema, parse, print } from 'graphql';
2-
import { ObjectTypeDefinitionBuilder, topsort, topologicalSortAST } from '../src/graphql';
31
import { Graph } from 'graphlib';
2+
import { buildSchema, Kind, ObjectTypeDefinitionNode, parse, print } from 'graphql';
43
import dedent from 'ts-dedent';
54

5+
import { ObjectTypeDefinitionBuilder, topologicalSortAST, topsort } from '../src/graphql';
6+
67
describe('graphql', () => {
78
describe('ObjectTypeDefinitionBuilder', () => {
89
describe('useObjectTypes === true', () => {

tests/myzod.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { buildSchema } from 'graphql';
2+
23
import { plugin } from '../src/index';
34

45
describe('myzod', () => {

tests/yup.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { buildSchema } from 'graphql';
2+
23
import { plugin } from '../src/index';
34

45
describe('yup', () => {

tests/zod.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { buildSchema } from 'graphql';
2+
23
import { plugin } from '../src/index';
34

45
describe('zod', () => {

0 commit comments

Comments
 (0)