JSPM

@eddeee888/gcg-typescript-resolver-files

0.0.0-pr29-run49-1-20221112122145
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 39743
  • Score
    100M100P100Q179348F

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