Home / Function/ validateConfig() — astro Function Reference

validateConfig() — astro Function Reference

Architecture documentation for the validateConfig() function in validate.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  cf751c9c_5f6f_27a3_9ab6_8b3835f3ebb1["validateConfig()"]
  143fef06_0023_7c05_ceb8_02d41e7430ff["validate.ts"]
  cf751c9c_5f6f_27a3_9ab6_8b3835f3ebb1 -->|defined in| 143fef06_0023_7c05_ceb8_02d41e7430ff
  fce70ee4_af83_9c2f_429e_27e5930e8ed0["validateConfigRefined()"]
  cf751c9c_5f6f_27a3_9ab6_8b3835f3ebb1 -->|calls| fce70ee4_af83_9c2f_429e_27e5930e8ed0
  style cf751c9c_5f6f_27a3_9ab6_8b3835f3ebb1 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/core/config/validate.ts lines 6–27

export async function validateConfig(
	userConfig: any,
	root: string,
	cmd: string,
): Promise<AstroConfig> {
	const AstroConfigRelativeSchema = createRelativeSchema(cmd, root);

	// First-Pass Validation
	return await validateConfigRefined(
		await AstroConfigRelativeSchema.parseAsync(userConfig, {
			error(issue) {
				// If an experimental feature, give a more specific error message.
				if (issue.path?.[0] === 'experimental') {
					return {
						message: `Invalid or outdated experimental feature.\nCheck for incorrect spelling or outdated Astro version.\nSee https://docs.astro.build/en/reference/experimental-flags/ for a list of all current experiments.`,
					};
				}
				return errorMap(issue);
			},
		}),
	);
}

Domain

Subdomains

Frequently Asked Questions

What does validateConfig() do?
validateConfig() is a function in the astro codebase, defined in packages/astro/src/core/config/validate.ts.
Where is validateConfig() defined?
validateConfig() is defined in packages/astro/src/core/config/validate.ts at line 6.
What does validateConfig() call?
validateConfig() calls 1 function(s): validateConfigRefined.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free