dotansimha/graphql-code-generator

Interfaces forcing c# 8.0, is this intended?

Open

#5.600 aberto em 24 de fev. de 2021

Ver no GitHub
 (1 comment) (1 reaction) (0 assignees)TypeScript (1.295 forks)batch import
help wantedkind/enhancementplugins

Métricas do repositório

Stars
 (10.341 stars)
Métricas de merge de PR
 (Mesclagem média 22d 9h) (53 fundiu PRs em 30d)

Description

Describe the bug When we have an interface in the graphl schema the generated c# interface properties will have a public prefix making them a c# 8.0 feature.

Schema

interface Product {
  articles: [Article!]!
}

C#

public interface Product {
      [JsonProperty("articles")]
      public List<Article> articles { get; set; }
}

I guess the publicpart here should probably be omitted? Or is this intended?

  1. My GraphQL schema:
# Put your schema here
  1. My GraphQL operations:
# Put your operations here
  1. My codegen.yml config file:
overwrite: true
schema: "https://somedomain/graphql"
documents: "./src/graphql/**/*.graphql"
generates:
  ./src/GraphQL/Client/GraphQLClientServices.generated.cs:
    config:
      namespaceName: SomeNameSpace
      typesafeOperation: false
    plugins:
      - c-sharp
      - c-sharp-operations

Expected behavior I expect the output to not include the public part.

Environment:

  • OS: Windows / Git Bash
"@graphql-codegen/c-sharp-operations": "^1.18.0",
"@graphql-codegen/cli": "^1.20.1",
"@graphql-codegen/typescript": "^1.20.2",
"@graphql-codegen/typescript-graphql-request": "^3.0.2",
"@graphql-codegen/typescript-operations": "^1.17.14",
  • NodeJS: v14.15.1

Guia do colaborador