/ codegen.ts
codegen.ts
 1  import 'dotenv/config';
 2  import { CodegenConfig } from '@graphql-codegen/cli'
 3  
 4  const config: CodegenConfig = {
 5    "overwrite": true,
 6    "config": {
 7      "nonOptionalTypename": true,
 8      "dedupeFragments": true,
 9  
10    },
11    "schema": [
12      {
13        [process.env.GQL_URL]: {
14          "headers": {
15            "Authorization": `Bearer ${process.env.GQL_ACCESS_TOKEN}`
16          }
17        }
18      }
19    ],
20    "generates": {
21      "./src/lib/graphql/__generated__/base-types.ts": {
22        "plugins": [
23          "typescript"
24        ]
25      },
26      "./src/": {
27        "preset": "near-operation-file",
28        "documents": [
29          "src/**/!(*.generated).{ts,graphql,svelte}"
30        ],
31        "presetConfig": {
32          "folder": "__generated__",
33          "extension": ".generated.ts",
34          "gqlTagName": "gql",
35          "fileName": "gql",
36          "pruneGeneratedFiles": true,
37          "baseTypesPath": "lib/graphql/__generated__/base-types.ts",
38        },
39        "plugins": [
40          "typescript-operations"
41        ],
42        "config": {
43          "dedupeFragments": true,
44          "namingConvention": {
45            "enumValues": "keep"
46          },
47          "useTypeImports": true
48        }
49      }
50    },
51    "hooks": {
52      "afterAllFileWrite": [
53        "prettier --write"
54      ]
55    }
56  }
57   
58  export default config;