-
-
Notifications
You must be signed in to change notification settings - Fork 831
Open
Labels
stage/1-reproductionA reproduction existsA reproduction exists
Description
When hoisting a field and the path to the field contains a list the resulting schema ignores that there was a list in the path.
To Reproduce
Given the following schema:
type Query {
data: [Wrapper!]!
}
type Wrapper {
value: String!
}
Using the following configuration for hoist field:
new HoistField('Query', ['data', 'value'], 'data');
The result is:
type Query {
data: String!
}
Expected behavior
The hoist field transform should instead generate the followings schema
type Query {
data: [String!]!
}
Note:
- This should also work when there are multiple levels of lists (while supporting a single level of list would be the most crucial to support)
Additional context
Use case:
- We often find legacy APIs that wrap list result data in above described structures
- We use the HoistField transform (and others) to remove unnecessary nesting to provide a clean GraphQL API to consume
Metadata
Metadata
Assignees
Labels
stage/1-reproductionA reproduction existsA reproduction exists