pushDirective() — astro Function Reference
Architecture documentation for the pushDirective() function in runtime.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD f09bf977_316c_db77_e079_51f58eb4f110["pushDirective()"] fe2aa8a9_1607_64d7_db8e_cda22f1f02c9["runtime.ts"] f09bf977_316c_db77_e079_51f58eb4f110 -->|defined in| fe2aa8a9_1607_64d7_db8e_cda22f1f02c9 268ade20_f17e_68c8_ab34_8b6b3ebe63bc["deduplicateDirectiveValues()"] f09bf977_316c_db77_e079_51f58eb4f110 -->|calls| 268ade20_f17e_68c8_ab34_8b6b3ebe63bc style f09bf977_316c_db77_e079_51f58eb4f110 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/astro/src/core/csp/runtime.ts lines 33–57
export function pushDirective(
directives: SSRManifestCSP['directives'],
newDirective: CspDirective,
): SSRManifestCSP['directives'] {
let deduplicated = false;
if (directives.length === 0) {
return [newDirective];
}
const finalDirectives: SSRManifestCSP['directives'] = [];
for (const directive of directives) {
if (deduplicated) {
finalDirectives.push(directive);
continue;
}
const result = deduplicateDirectiveValues(directive, newDirective);
if (result) {
finalDirectives.push(result);
deduplicated = true;
} else {
finalDirectives.push(directive);
finalDirectives.push(newDirective);
}
}
return finalDirectives;
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does pushDirective() do?
pushDirective() is a function in the astro codebase, defined in packages/astro/src/core/csp/runtime.ts.
Where is pushDirective() defined?
pushDirective() is defined in packages/astro/src/core/csp/runtime.ts at line 33.
What does pushDirective() call?
pushDirective() calls 1 function(s): deduplicateDirectiveValues.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free