This reference was autogenerated by graphile config options
using
your local configuration file to determine the plugins and presets (and
hence the configuration options) available. You should regenerate it
from time to time (for example, when you upgrade a module, or add/remove
modules).
{
extends?: readonly GraphileConfig.Preset[]
plugins?: GraphileConfig.Plugin[]
disablePlugins?: readonly string[]
gather?: GraphileBuild.GraphileBuildGatherOptions | undefined;
grafast?: GrafastOptions | undefined;
inflection?: GraphileBuild.GraphileBuildInflectionOptions | undefined;
pgConfigs?: readonly GraphileConfig.PgDatabaseConfiguration<never>[]
schema?: GraphileBuild.SchemaOptions | undefined;
server?: ServerOptions | undefined;
}
The gather
phase is the second phase that occurs when building a
schema with Graphile Build. It is responsible for looking at
everything that can influence the shape of your schema, and turning
that into an "input" for the schema
phase.
{
installWatchFixtures?: boolean;
pgJwtType?: [string, string];
pgStrictFunctions?: boolean;
}
Type: boolean | undefined
Should we attempt to install the watch fixtures into the database?
Default: true
Type: [string, string] | undefined
If you would like PostGraphile to automatically recognize a PostgreSQL
type as a JWT, you should pass a tuple of the
["<schema name>", "<type name>"]
so we can recognize it. This is
case sensitive.
Type: boolean | undefined
If true, we'll treat all arguments that don't have defaults as being required.
{
context?: Record<string, any> | (<TContext extends Record<string, any>>(ctx: GraphileConfig.GraphQLRequestContext, currentContext?: Partial<TContext> | undefined) => PromiseOrValue<...>);
explain?: boolean | string[];
}
Type: Record<string, any> | (<TContext extends Record<string, any>>(ctx: GraphileConfig.GraphQLRequestContext, currentContext?: Partial<TContext> | undefined) => PromiseOrValue<...>) | undefined
Type: boolean | string[] | undefined
The inflection phase is the first phase that occurs when building a
schema with Graphile Build. It is responsible for naming things - both
things that are generated in the gather
phase, and the ultimate
types, fields, arguments, directives and so on in the GraphQL schema.
The schema
phase is the final phase that occurs when building a
schema with Graphile Build. It is responsible for taking the inputs
from the gather
phase (and using the inflectors from the
inflection
phase) and generating a final GraphQL schema.
{
dontSwallowErrors?: boolean;
jsonScalarAsString?: boolean;
nodeIdFieldName?: string;
orderByNullsLast?: boolean;
pgForbidSetofFunctionsToReturnNull?: boolean;
pgJwtSecret?: any;
pgJwtSignOptions?: any;
pgUseCustomNetworkScalars?: boolean;
pgV4UseTableNameForNodeIdentifier?: boolean;
simpleCollections?: "only" | "both" | "omit";
subscriptions?: boolean;
}
Type: boolean | undefined
SwallowErrorsPlugin
by default will "swallow" errors, allowing you
to continue building your GraphQL schema even if errors (such as
naming conflicts) occur. It is recommended that you set this option to
true
in your production configuration to disable this behavior.
Type: boolean | undefined
Set 'true' if you want JSON values to be stringified.
Type: string | undefined
If your schema includes compatibility with the GraphQL Global Object Identification Specification, typically this will be called 'id'. However the term 'id' often conflicts with databases which commonly use 'id' as their primary key name, so we give you the option to rename it.
Type: boolean | undefined
Type: boolean | undefined
If true, setof functions cannot return null, so our list and connection types can use GraphQLNonNull in more places.
Type: any
Type: any
Type: boolean | undefined
Type: boolean | undefined
Type: "only" | "both" | "omit" | undefined
- 'only': connections will be avoided, preferring lists
- 'omit': lists will be avoided, preferring connections
- 'both': both lists and connections will be generated
Type: boolean | undefined
Should we enable subscriptions in the schema?
Configuration options for Grafserv
{
eventStreamRoute?: string;
graphiql?: boolean;
graphiqlOnGraphQLGET?: boolean;
graphiqlPath?: string;
graphqlOverGET?: boolean;
graphqlPath?: string;
host?: string;
maxRequestLength?: number;
outputDataAsString?: boolean;
port?: number;
schemaWaitTime?: number;
watch?: boolean;
}
Type: string | undefined
The path at which the GraphQL event stream would be made available; usually /graphql/stream
Type: boolean | undefined
Type: boolean | undefined
If true, then we will render GraphiQL on GET requests to the /graphql endpoint
Type: string | undefined
The path at which GraphiQL will be available; usually /
Type: boolean | undefined
If true, allow GraphQL over GET requests. This has security ramifications, exercise caution.
Type: string | undefined
The path at which GraphQL will be available; usually /graphql
Type: string | undefined
Host to listen on
Type: number | undefined
The length, in bytes, for the largest request body that the server will accept
Type: boolean | undefined
Use grafast 'string' optimization - response will be partially stringified
already, use stringifyPayload
before sending to the user
Type: number | undefined
Port number to listen on
Type: number | undefined
How long should we wait for a schema promise to resolve before sending a failure to the client?
Type: boolean | undefined
Set true to enable watch mode