Package Exports
- graphql-list-fields
- graphql-list-fields/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 (graphql-list-fields) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
graphql-list-fields
When implementing a GraphQL server, it can be useful to know the list of fields being queried on a given type. This module takes a GraphQLResolveInfo object and returns a list of fields.
Supported features
- Basic Fields
- Fragments
- Inline Fragments
@skip
and@include
directives- Nested fields into dot.notation
npm install --save graphql-list-fields
Usage
import getFieldNames from 'graphql-list-fields';
// in some resolve function
resolve(parent, args, context, info) {
const fields = getFieldNames(info);
return fetch('/someservice/?fields=' + fields.join(','));
}
Depth Limiting
getFieldNames
also accepts an optional depth argument, for how many levels deep results should be returned.
The following will only return top-level fields:
const fields = getFieldNames(info, 1);