@graphql-tools/stitch
Table of contents
Enumerations
Interfaces
- IStitchSchemasOptions
- MergeEnumValueConfigCandidate
- MergeFieldConfigCandidate
- MergeInputFieldConfigCandidate
- MergeTypeCandidate
- TypeMergingOptions
- ValidationSettings
Type Aliases
Functions
- createMergedTypeResolver
- createStitchingExecutor
- forwardArgsToSelectionSet
- handleRelaySubschemas
- isolateComputedFieldsTransformer
- splitMergedTypeEntryPointsTransformer
- stitchSchemas
Type Aliases
MergeTypeFilter
Ƭ MergeTypeFilter<TContext>: (mergeTypeCandidates: MergeTypeCandidate<TContext>[], typeName: string) => boolean
Type parameters
| Name | Type |
|---|---|
TContext | Record<string, any> |
Type declaration
▸ (mergeTypeCandidates, typeName): boolean
Parameters
| Name | Type |
|---|---|
mergeTypeCandidates | MergeTypeCandidate<TContext>[] |
typeName | string |
Returns
boolean
Defined in
packages/stitch/src/types.ts:48 (opens in a new tab)
OnTypeConflict
Ƭ OnTypeConflict<TContext>: (left: GraphQLNamedType, right: GraphQLNamedType, info?: { left: { subschema?: GraphQLSchema | SubschemaConfig<any, any, any, TContext> ; transformedSubschema?: Subschema<any, any, any, TContext> } ; right: { subschema?: GraphQLSchema | SubschemaConfig<any, any, any, TContext> ; transformedSubschema?: Subschema<any, any, any, TContext> } }) => GraphQLNamedType
Type parameters
| Name | Type |
|---|---|
TContext | Record<string, any> |
Type declaration
▸ (left, right, info?): GraphQLNamedType
Parameters
| Name | Type |
|---|---|
left | GraphQLNamedType |
right | GraphQLNamedType |
info? | Object |
info.left | Object |
info.left.subschema? | GraphQLSchema | SubschemaConfig<any, any, any, TContext> |
info.left.transformedSubschema? | Subschema<any, any, any, TContext> |
info.right | Object |
info.right.subschema? | GraphQLSchema | SubschemaConfig<any, any, any, TContext> |
info.right.transformedSubschema? | Subschema<any, any, any, TContext> |
Returns
GraphQLNamedType
Defined in
packages/stitch/src/types.ts:91 (opens in a new tab)
SubschemaConfigTransform
Ƭ SubschemaConfigTransform<TContext>: (subschemaConfig: SubschemaConfig<any, any, any, TContext>) => SubschemaConfig<any, any, any, TContext> | SubschemaConfig<any, any, any, TContext>[]
Type parameters
| Name | Type |
|---|---|
TContext | Record<string, any> |
Type declaration
▸ (subschemaConfig): SubschemaConfig<any, any, any, TContext> | SubschemaConfig<any, any, any, TContext>[]
Parameters
| Name | Type |
|---|---|
subschemaConfig | SubschemaConfig<any, any, any, TContext> |
Returns
SubschemaConfig<any, any, any, TContext> | SubschemaConfig<any, any, any, TContext>[]
Defined in
packages/stitch/src/types.ts:65 (opens in a new tab)
Functions
createMergedTypeResolver
▸ createMergedTypeResolver<TContext>(mergedTypeResolverOptions): MergedTypeResolver<TContext> | undefined
Type parameters
| Name | Type |
|---|---|
TContext | extends Record<string, any> = any |
Parameters
| Name | Type |
|---|---|
mergedTypeResolverOptions | MergedTypeResolverOptions<any, any> |
Returns
MergedTypeResolver<TContext> | undefined
Defined in
packages/stitch/src/createMergedTypeResolver.ts:5 (opens in a new tab)
createStitchingExecutor
▸ createStitchingExecutor(stitchedSchema): (executorRequest: ExecutionRequest<any, any, any, Record<string, any>, any>) => Promise<{ data: Record<string, any> }>
Creates an executor that uses the schema created by stitching together multiple subschemas. Not ready for production Breaking changes can be introduced in the meanwhile
Parameters
| Name | Type |
|---|---|
stitchedSchema | GraphQLSchema |
Returns
fn
▸ (executorRequest): Promise<{ data: Record<string, any> }>
Parameters
| Name | Type |
|---|---|
executorRequest | ExecutionRequest<any, any, any, Record<string, any>, any> |
Returns
Promise<{ data: Record<string, any> }>
Defined in
packages/stitch/src/executor.ts:15 (opens in a new tab)
forwardArgsToSelectionSet
▸ forwardArgsToSelectionSet(selectionSet, mapping?): (field: FieldNode) => SelectionSetNode
Parameters
| Name | Type |
|---|---|
selectionSet | string |
mapping? | Record<string, string[]> |
Returns
fn
▸ (field): SelectionSetNode
Parameters
| Name | Type |
|---|---|
field | FieldNode |
Returns
SelectionSetNode
Defined in
packages/stitch/src/selectionSetArgs.ts:4 (opens in a new tab)
handleRelaySubschemas
▸ handleRelaySubschemas(subschemas, getTypeNameFromId?): SubschemaConfig<any, any, any, Record<string, any>>[]
Parameters
| Name | Type |
|---|---|
subschemas | SubschemaConfig<any, any, any, Record<string, any>>[] |
getTypeNameFromId? | (id: string) => string |
Returns
SubschemaConfig<any, any, any, Record<string, any>>[]
Defined in
packages/stitch/src/relay.ts:11 (opens in a new tab)
isolateComputedFieldsTransformer
▸ isolateComputedFieldsTransformer(subschemaConfig): SubschemaConfig[]
Parameters
| Name | Type |
|---|---|
subschemaConfig | SubschemaConfig<any, any, any, Record<string, any>> |
Returns
Defined in
splitMergedTypeEntryPointsTransformer
▸ splitMergedTypeEntryPointsTransformer(subschemaConfig): SubschemaConfig[]
Parameters
| Name | Type |
|---|---|
subschemaConfig | SubschemaConfig<any, any, any, Record<string, any>> |
Returns
Defined in
stitchSchemas
▸ stitchSchemas<TContext>(«destructured»): GraphQLSchema
Type parameters
| Name | Type |
|---|---|
TContext | extends Record<string, any> = Record<string, any> |
Parameters
| Name | Type |
|---|---|
«destructured» | IStitchSchemasOptions<TContext> |
Returns
GraphQLSchema
Defined in
packages/stitch/src/stitchSchemas.ts:19 (opens in a new tab)