dotansimha/graphql-code-generator

Interfaces forcing c# 8.0, is this intended?

Open

#5.600 geöffnet am 24. Feb. 2021

Auf GitHub ansehen
 (1 Kommentar) (1 Reaktion) (0 zugewiesene Personen)TypeScript (1.295 Forks)batch import
help wantedkind/enhancementplugins

Repository-Metriken

Stars
 (10.341 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 22T 9h) (53 gemergte PRs in 30 T)

Beschreibung

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

Contributor Guide