graphql-config
GraphQL Markdown configuration utilities
This module provides utilities for loading and processing GraphQL configuration using the graphql-config package.
EXTENSION_NAME
const EXTENSION_NAME: "graphql-markdown";
Defined in: graphql-config.ts:31
The name of the GraphQL Markdown extension. Used to identify the extension in graphql-config.
graphQLConfigExtension
const graphQLConfigExtension: GraphQLExtensionDeclaration;
Defined in: graphql-config.ts:46
GraphQL extension declaration for graphql-config.
Returns
The extension configuration object with name property.
Example
// In graphql-config setup
const config = await loadConfig({
extensions: [graphQLConfigExtension],
});
loadConfiguration()
function loadConfiguration(
id,
options?,
throwOptions?,
): Promise<Maybe<Readonly<ExtensionProjectConfig>>>;
Defined in: graphql-config.ts:142
Loads the GraphQL Markdown configuration from graphql-config.
This function attempts to load the GraphQL config and extract the GraphQL Markdown extension configuration for the specified project ID. It also normalizes schema configurations.
Parameters
id
Maybe<string>
The project ID to load configuration for.
options?
Maybe<PackageOptionsConfig>
Optional package options to apply.
throwOptions?
ThrowOptions = DEFAULT_THROW_OPTIONS
Options for controlling throw behavior.
Returns
Promise<Maybe<Readonly<ExtensionProjectConfig>>>
The extension project configuration if found, otherwise undefined.
Throws
Will throw an error if throwOnMissing or throwOnEmpty is true and the corresponding condition is met.
Example
// Basic usage
const config = await loadConfiguration("my-project");
// With options and throw behavior
const config = await loadConfiguration(
"my-project",
{ baseDir: "./src" },
{ throwOnMissing: true, throwOnEmpty: false },
);
setLoaderOptions()
function setLoaderOptions(loaders, options): LoaderOption;
Defined in: graphql-config.ts:94
Sets loader options for GraphQL Markdown loaders.
This function takes a LoaderOption object and merges the provided options with any existing options for each loader.
Parameters
loaders
LoaderOption
The loader configuration object.
options
PackageOptionsConfig
The package options to apply to loaders.
Returns
LoaderOption
The updated loader configuration.
Example
const loaders = {
TypeScriptLoader: {
module: "@graphql-markdown/typescript-loader",
options: { baseDir: "./src" },
},
};
const options = { outputDir: "./docs" };
const updatedLoaders = setLoaderOptions(loaders, options);
// Result: loaders with { baseDir: "./src", outputDir: "./docs" }