diff --git a/.eslintrc.json b/.eslintrc.json index 51e1a3b3acd..18f226808e3 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,11 +1,10 @@ { + "root": true, "parser": "@typescript-eslint/parser", "extends": [ "eslint:recommended", - "standard", - "prettier", - "plugin:@typescript-eslint/recommended", - "prettier/@typescript-eslint" + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended" ], "plugins": ["@typescript-eslint"], "rules": { @@ -13,7 +12,10 @@ "no-console": "error", "no-prototype-builtins": "off", "no-useless-constructor": "off", - "@typescript-eslint/no-unused-vars": ["warn", {"args": "none"}], + "no-unused-vars": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/no-unused-vars": "off", + "@typescript-eslint/no-unused-vars-experimental": ["warn", { "ignoreArgsIfArgsAfterAreUsed": true }], "@typescript-eslint/no-use-before-define": "off", "@typescript-eslint/no-namespace": "off", "@typescript-eslint/no-empty-interface": "off", @@ -31,18 +33,15 @@ }, "overrides": [ { - "files": [ - "**/tests/**/*.ts", - "**/graphql-codegen-testing/**/*.ts", - "*.spec.ts" - ], + "files": ["**/tests/**/*.ts", "**/graphql-codegen-testing/**/*.ts", "*.spec.ts"], "env": { "jest": true }, "rules": { + "no-unused-vars": "off", "@typescript-eslint/no-unused-vars": "off" } } ], - "ignorePatterns": ["dist", "node_modules", "dev-test", "website"] + "ignorePatterns": ["dist", "node_modules", "dev-test", "website", "test-files"] } diff --git a/package.json b/package.json index 82f02f60488..2cc55983746 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ "bob-the-bundler": "1.1.0", "eslint": "7.12.1", "eslint-config-prettier": "6.15.0", - "eslint-config-standard": "14.1.1", + "eslint-config-standard": "16.0.1", "eslint-plugin-import": "2.22.1", "eslint-plugin-node": "11.1.0", "eslint-plugin-promise": "4.2.1", diff --git a/packages/graphql-codegen-cli/src/utils/listr-renderer.ts b/packages/graphql-codegen-cli/src/utils/listr-renderer.ts index dbefa4eae7f..cc9323c1df5 100644 --- a/packages/graphql-codegen-cli/src/utils/listr-renderer.ts +++ b/packages/graphql-codegen-cli/src/utils/listr-renderer.ts @@ -104,7 +104,7 @@ const render = tasks => { export class ErrorRenderer { private tasks: any; - constructor(tasks, options) { + constructor(tasks, _options) { this.tasks = tasks; } diff --git a/packages/graphql-codegen-cli/tests/generate-and-save.spec.ts b/packages/graphql-codegen-cli/tests/generate-and-save.spec.ts index 1efdbba3a34..632b86b45da 100644 --- a/packages/graphql-codegen-cli/tests/generate-and-save.spec.ts +++ b/packages/graphql-codegen-cli/tests/generate-and-save.spec.ts @@ -135,7 +135,7 @@ describe('generate-and-save', () => { const filename = 'overwrite.ts'; const writeSpy = jest.spyOn(fs, 'writeSync').mockImplementation(); const readSpy = jest.spyOn(fs, 'readSync').mockImplementation(); - readSpy.mockImplementation(f => ''); + readSpy.mockImplementation(_f => ''); // forces file to exist const fileExistsSpy = jest.spyOn(fs, 'fileExists'); fileExistsSpy.mockImplementation(file => file === filename); diff --git a/packages/graphql-codegen-cli/tests/init.spec.ts b/packages/graphql-codegen-cli/tests/init.spec.ts index 0e902987351..22fc56db020 100644 --- a/packages/graphql-codegen-cli/tests/init.spec.ts +++ b/packages/graphql-codegen-cli/tests/init.spec.ts @@ -1,4 +1,3 @@ -/* eslint-disable import/first */ jest.mock('latest-version', () => { return () => Promise.resolve('1.0.0'); }); diff --git a/packages/plugins/c-sharp/c-sharp/src/index.ts b/packages/plugins/c-sharp/c-sharp/src/index.ts index 164a3089ea7..12087018a1e 100644 --- a/packages/plugins/c-sharp/c-sharp/src/index.ts +++ b/packages/plugins/c-sharp/c-sharp/src/index.ts @@ -6,8 +6,7 @@ import { CSharpResolversPluginRawConfig } from './config'; export const plugin: PluginFunction = async ( schema: GraphQLSchema, documents: Types.DocumentFile[], - config: CSharpResolversPluginRawConfig, - { outputFile } + config: CSharpResolversPluginRawConfig ): Promise => { const visitor = new CSharpResolversVisitor(config, schema); const printedSchema = printSchema(schema); diff --git a/packages/plugins/flow/resolvers/src/visitor.ts b/packages/plugins/flow/resolvers/src/visitor.ts index 138cc07bf8c..c0173cf087e 100644 --- a/packages/plugins/flow/resolvers/src/visitor.ts +++ b/packages/plugins/flow/resolvers/src/visitor.ts @@ -42,7 +42,7 @@ export class FlowResolversVisitor extends BaseResolversVisitor `${f.name.value}: *`).join(', ')} }>`; } - protected applyOptionalFields(argsType: string, fields: readonly InputValueDefinitionNode[]): string { + protected applyOptionalFields(argsType: string, _fields: readonly InputValueDefinitionNode[]): string { return argsType; } diff --git a/packages/plugins/java/resolvers/src/visitor.ts b/packages/plugins/java/resolvers/src/visitor.ts index 3df57be6865..8e1ca16468e 100644 --- a/packages/plugins/java/resolvers/src/visitor.ts +++ b/packages/plugins/java/resolvers/src/visitor.ts @@ -117,7 +117,7 @@ export class JavaResolversVisitor extends BaseVisitor indent((f as any)(false))).join('\n')).string; } - FieldDefinition(node: FieldDefinitionNode, key: string | number, parent: any) { + FieldDefinition(node: FieldDefinitionNode, key: string | number, _parent: any) { return (isInterface: boolean) => { const baseType = getBaseTypeNode(node.type); const typeToUse = this.getTypeToUse(baseType); diff --git a/packages/plugins/other/visitor-plugin-common/src/base-resolvers-visitor.ts b/packages/plugins/other/visitor-plugin-common/src/base-resolvers-visitor.ts index 490338e0d6f..f9b1c5326e3 100644 --- a/packages/plugins/other/visitor-plugin-common/src/base-resolvers-visitor.ts +++ b/packages/plugins/other/visitor-plugin-common/src/base-resolvers-visitor.ts @@ -893,7 +893,7 @@ export type IDirectiveResolvers${contextType} = ${name};` return `${resolversType}['${name}']`; } - protected getParentTypeForSignature(node: FieldDefinitionNode): string { + protected getParentTypeForSignature(_node: FieldDefinitionNode): string { return 'ParentType'; } @@ -996,7 +996,7 @@ export type IDirectiveResolvers${contextType} = ${name};` return `RequireFields<${argsType}, ${fields.map(f => `'${f.name.value}'`).join(' | ')}>`; } - protected applyOptionalFields(argsType: string, fields: readonly InputValueDefinitionNode[]): string { + protected applyOptionalFields(argsType: string, _fields: readonly InputValueDefinitionNode[]): string { this._globalDeclarations.add(REQUIRE_FIELDS_TYPE); return `RequireFields<${argsType}, never>`; } @@ -1136,13 +1136,13 @@ export type IDirectiveResolvers${contextType} = ${name};` ].join('\n'); } - protected buildEnumResolverContentBlock(node: EnumTypeDefinitionNode, mappedEnumType: string): string { + protected buildEnumResolverContentBlock(_node: EnumTypeDefinitionNode, _mappedEnumType: string): string { throw new Error(`buildEnumResolverContentBlock is not implemented!`); } protected buildEnumResolversExplicitMappedValues( - node: EnumTypeDefinitionNode, - valuesMapping: { [valueName: string]: string | number } + _node: EnumTypeDefinitionNode, + _valuesMapping: { [valueName: string]: string | number } ): string { throw new Error(`buildEnumResolversExplicitMappedValues is not implemented!`); } diff --git a/packages/plugins/other/visitor-plugin-common/src/base-types-visitor.ts b/packages/plugins/other/visitor-plugin-common/src/base-types-visitor.ts index aa42006a2f0..ee1a32cc954 100644 --- a/packages/plugins/other/visitor-plugin-common/src/base-types-visitor.ts +++ b/packages/plugins/other/visitor-plugin-common/src/base-types-visitor.ts @@ -368,7 +368,7 @@ export class BaseTypesVisitor< return comment; } - protected mergeAllFields(allFields: string[], hasInterfaces: boolean): string { + protected mergeAllFields(allFields: string[], _hasInterfaces: boolean): string { return allFields.join('\n'); } @@ -383,7 +383,7 @@ export class BaseTypesVisitor< getInterfaceTypeDeclarationBlock( node: InterfaceTypeDefinitionNode, - originalNode: InterfaceTypeDefinitionNode + _originalNode: InterfaceTypeDefinitionNode ): DeclarationBlock { const declarationBlock = new DeclarationBlock(this._declarationBlockConfig) .export() @@ -403,7 +403,7 @@ export class BaseTypesVisitor< .join('\n\n'); } - ScalarTypeDefinition(node: ScalarTypeDefinitionNode): string { + ScalarTypeDefinition(_node: ScalarTypeDefinitionNode): string { // We empty this because we handle scalars in a different way, see constructor. return ''; } @@ -519,7 +519,7 @@ export class BaseTypesVisitor< .join(',\n'); } - DirectiveDefinition(node: DirectiveDefinitionNode): string { + DirectiveDefinition(_node: DirectiveDefinitionNode): string { return ''; } diff --git a/packages/plugins/other/visitor-plugin-common/src/base-visitor.ts b/packages/plugins/other/visitor-plugin-common/src/base-visitor.ts index 6837346b240..f5945133305 100644 --- a/packages/plugins/other/visitor-plugin-common/src/base-visitor.ts +++ b/packages/plugins/other/visitor-plugin-common/src/base-visitor.ts @@ -265,7 +265,7 @@ export class BaseVisitor { const prop = schema.properties[propName] as TJS.Definition; diff --git a/yarn.lock b/yarn.lock index afcf180017f..5cf2ae43319 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7462,10 +7462,10 @@ eslint-config-prettier@6.15.0: dependencies: get-stdin "^6.0.0" -eslint-config-standard@14.1.1: - version "14.1.1" - resolved "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz#830a8e44e7aef7de67464979ad06b406026c56ea" - integrity sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg== +eslint-config-standard@16.0.1: + version "16.0.1" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.1.tgz#9a385eea27f96b7918cb53f07e01e9d10cc56401" + integrity sha512-WBBiQQZdaPyL+4sPkGWhWrHCDtvJoU195B9j8yXE9uFQnX34gMXI5CeBRm95gx3PMEZPM5OpwET10hH4F4SxCA== eslint-import-resolver-node@^0.3.4: version "0.3.4"