createAnonymousConfigInfo() — astro Function Reference
Architecture documentation for the createAnonymousConfigInfo() function in session.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD 007fbd21_02cb_46e0_9136_19cdd1636881["createAnonymousConfigInfo()"] 5e4918d2_001e_cdf1_6103_dc17a8a94758["session.ts"] 007fbd21_02cb_46e0_9136_19cdd1636881 -->|defined in| 5e4918d2_001e_cdf1_6103_dc17a8a94758 10c11669_ae8b_6b2e_8390_ab1d211c70ad["eventCliSession()"] 10c11669_ae8b_6b2e_8390_ab1d211c70ad -->|calls| 007fbd21_02cb_46e0_9136_19cdd1636881 135d521f_56ac_f7fd_9eb2_e28a7bc98e28["sanitizeConfigInfo()"] 007fbd21_02cb_46e0_9136_19cdd1636881 -->|calls| 135d521f_56ac_f7fd_9eb2_e28a7bc98e28 4e5b3994_dfd0_f178_02e0_24371668655b["measureStringLiteral()"] 007fbd21_02cb_46e0_9136_19cdd1636881 -->|calls| 4e5b3994_dfd0_f178_02e0_24371668655b e73c9f05_d702_5d9e_08b6_4c8ef847a6a3["measureIntegration()"] 007fbd21_02cb_46e0_9136_19cdd1636881 -->|calls| e73c9f05_d702_5d9e_08b6_4c8ef847a6a3 style 007fbd21_02cb_46e0_9136_19cdd1636881 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/astro/src/events/session.ts lines 76–125
function createAnonymousConfigInfo(userConfig: AstroUserConfig) {
// Sanitize and measure the generic config object
// NOTE(fks): Using _def is the correct, documented way to get the `shape`
// from a Zod object that includes a wrapping default(), optional(), etc.
// Even though `_def` appears private, it is type-checked for us so that
// any changes between versions will be detected.
const configInfo: ConfigInfo = {
...sanitizeConfigInfo(userConfig, Object.keys(AstroConfigSchema.shape)),
build: sanitizeConfigInfo(
userConfig.build,
Object.keys(AstroConfigSchema.shape.build._def.innerType.shape),
),
image: sanitizeConfigInfo(
userConfig.image,
Object.keys(AstroConfigSchema.shape.image._def.innerType.shape),
),
markdown: sanitizeConfigInfo(
userConfig.markdown,
Object.keys(AstroConfigSchema.shape.markdown._def.innerType.shape),
),
experimental: sanitizeConfigInfo(
userConfig.experimental,
Object.keys(AstroConfigSchema.shape.experimental._def.innerType.shape),
),
legacy: sanitizeConfigInfo(
userConfig.legacy,
Object.keys(AstroConfigSchema.shape.legacy._def.innerType.shape),
),
vite: userConfig.vite
? sanitizeConfigInfo(userConfig.vite, Object.keys(userConfig.vite))
: undefined,
};
// Measure string literal/enum configuration values
configInfo.build.format = measureStringLiteral(userConfig.build?.format);
const syntaxHighlight = userConfig.markdown?.syntaxHighlight;
const syntaxHighlightType =
typeof syntaxHighlight === 'object' ? syntaxHighlight.type : syntaxHighlight;
configInfo.markdown.syntaxHighlight = measureStringLiteral(syntaxHighlightType);
configInfo.output = measureStringLiteral(userConfig.output);
configInfo.scopedStyleStrategy = measureStringLiteral(userConfig.scopedStyleStrategy);
configInfo.trailingSlash = measureStringLiteral(userConfig.trailingSlash);
// Measure integration & adapter usage
configInfo.adapter = measureIntegration(userConfig.adapter);
configInfo.integrations = userConfig.integrations
?.flat(100)
.map(measureIntegration)
.filter(Boolean) as string[];
// Return the sanitized ConfigInfo object
return configInfo;
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does createAnonymousConfigInfo() do?
createAnonymousConfigInfo() is a function in the astro codebase, defined in packages/astro/src/events/session.ts.
Where is createAnonymousConfigInfo() defined?
createAnonymousConfigInfo() is defined in packages/astro/src/events/session.ts at line 76.
What does createAnonymousConfigInfo() call?
createAnonymousConfigInfo() calls 3 function(s): measureIntegration, measureStringLiteral, sanitizeConfigInfo.
What calls createAnonymousConfigInfo()?
createAnonymousConfigInfo() is called by 1 function(s): eventCliSession.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free