Package Exports
- @eddeee888/gcg-typescript-resolver-files
- @eddeee888/gcg-typescript-resolver-files/src/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@eddeee888/gcg-typescript-resolver-files) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@eddeee888/gcg-typescript-resolver-files
This GraphQL Code Generator plugin creates resolvers given GraphQL schema.
This relies on types generated from @graphql-codegen/typescript-resolvers plugin.
yarn add -D @eddeee888/gcg-typescript-resolver-files
Features
- Follows opinionated folder/file structure with type-safety in mind to help finding query, mutation or object types easily
- Will not overwrite existing logic
- Detects missing / wrong resolver exports and adds them to generated resolvers
- Handles GraphQL Scalars with types and config from graphql-scalars
Example
schema: '**/*.graphqls'
generates:
src/graphql/resolvers/types.generated.ts:
plugins:
- typescript
- typescript-resolvers
src/graphql/resolvers:
preset: '@eddeee888/gcg-typescript-resolver-files'
presetConfig:
resolverTypesPath: ./types.generated.ts
Config
Name | Type | Description |
---|---|---|
resolverTypesPath |
string |
(Required) Relative path to type file generated by typescript-resolvers plugin. |
mode |
merged or modules |
(Default: modules ) How files are collocated. modules detects containing dir of a schema file as "modules", then split resolvers into those modules. merged treats baseOutputDir as the one and only module and generates resolvers. |
relativeTargetDir |
string |
Relative path to target dir. For config.mode=merged , files will be generated into <baseOutputDir>/<relativeTargetDir> . For config.mode=modules , files will be generated into <baseOutputDir>/<moduleName>/<relativeTargetDir> |
mainFile |
string |
File that puts all generated resolvers together. Relative from baseOutputDir |
whitelistedModules |
Array<string> |
(Only works with config.mode=modules ) Whitelists modules to generate files and main file for. Useful for gradual migrations. |
externalResolvers |
Record<string, string> |
Map of relative or absolute path (prefixed with ~ ) to external or existing resolvers. e.g. DateTime: ~graphql-scalars#DateTimeResolver , Query.me: '~@org/meResolver#default as meResolver' , User: 'otherResolvers#User as UserResolver' . |
typescriptPluginConfig |
(@graphql-codegen/typescript).TypeScriptPluginConfig |
typescript config to override the defaults |
typescriptResolversPluginConfig |
(@graphql-codegen/typescript-resolvers).TypeScriptResolversPluginConfig |
typescript-resolvers config to override the defaults |