validateSupportedFeatures() — astro Function Reference
Architecture documentation for the validateSupportedFeatures() function in features-validation.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD 782abf1b_a9f1_b386_64da_ed1e69f93e5c["validateSupportedFeatures()"] 66c4596f_b3a5_daf2_22c7_dc5b1ad0471c["features-validation.ts"] 782abf1b_a9f1_b386_64da_ed1e69f93e5c -->|defined in| 66c4596f_b3a5_daf2_22c7_dc5b1ad0471c 594e5c25_43a2_cf6f_9a26_b095b502935e["validateSupportKind()"] 782abf1b_a9f1_b386_64da_ed1e69f93e5c -->|calls| 594e5c25_43a2_cf6f_9a26_b095b502935e style 782abf1b_a9f1_b386_64da_ed1e69f93e5c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/astro/src/integrations/features-validation.ts lines 28–97
export function validateSupportedFeatures(
adapterName: string,
featureMap: AstroAdapterFeatureMap,
settings: AstroSettings,
logger: Logger,
): ValidationResult {
const {
serverOutput = AdapterFeatureStability.UNSUPPORTED,
staticOutput = AdapterFeatureStability.UNSUPPORTED,
hybridOutput = AdapterFeatureStability.UNSUPPORTED,
i18nDomains = AdapterFeatureStability.UNSUPPORTED,
envGetSecret = AdapterFeatureStability.UNSUPPORTED,
sharpImageService = AdapterFeatureStability.UNSUPPORTED,
} = featureMap;
const validationResult: ValidationResult = {};
validationResult.staticOutput = validateSupportKind(
staticOutput,
adapterName,
logger,
'staticOutput',
() => settings.buildOutput === 'static',
);
validationResult.hybridOutput = validateSupportKind(
hybridOutput,
adapterName,
logger,
'hybridOutput',
() => settings.config.output == 'static' && settings.buildOutput === 'server',
);
validationResult.serverOutput = validateSupportKind(
serverOutput,
adapterName,
logger,
'serverOutput',
() => settings.config?.output === 'server' || settings.buildOutput === 'server',
);
if (settings.config.i18n?.domains) {
validationResult.i18nDomains = validateSupportKind(
i18nDomains,
adapterName,
logger,
'i18nDomains',
() => {
return settings.config?.output === 'server' && !settings.config?.site;
},
);
}
validationResult.envGetSecret = validateSupportKind(
envGetSecret,
adapterName,
logger,
'astro:env getSecret',
() => Object.keys(settings.config?.env?.schema ?? {}).length !== 0,
);
validationResult.sharpImageService = validateSupportKind(
sharpImageService,
adapterName,
logger,
'sharp',
() => settings.config?.image?.service?.entrypoint === 'astro/assets/services/sharp',
);
return validationResult;
}
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does validateSupportedFeatures() do?
validateSupportedFeatures() is a function in the astro codebase, defined in packages/astro/src/integrations/features-validation.ts.
Where is validateSupportedFeatures() defined?
validateSupportedFeatures() is defined in packages/astro/src/integrations/features-validation.ts at line 28.
What does validateSupportedFeatures() call?
validateSupportedFeatures() calls 1 function(s): validateSupportKind.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free