ensureProperEditForFrontmatter() — astro Function Reference
Architecture documentation for the ensureProperEditForFrontmatter() function in utils.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD 097cfab7_aaea_d6ab_1435_9208279c4a99["ensureProperEditForFrontmatter()"] 839dada7_8bd4_2ee4_9498_f38d21d2f7e9["utils.ts"] 097cfab7_aaea_d6ab_1435_9208279c4a99 -->|defined in| 839dada7_8bd4_2ee4_9498_f38d21d2f7e9 9c251667_066d_2ee9_fd8e_adc7dd7dd419["getOpenFrontmatterEdit()"] 097cfab7_aaea_d6ab_1435_9208279c4a99 -->|calls| 9c251667_066d_2ee9_fd8e_adc7dd7dd419 f4d5d378_8ebd_87fe_28ad_afb2016fd0e9["ensureRangeIsInFrontmatter()"] 097cfab7_aaea_d6ab_1435_9208279c4a99 -->|calls| f4d5d378_8ebd_87fe_28ad_afb2016fd0e9 afa1f6b3_cc89_97c1_ee85_f060a3b17fee["getNewFrontmatterEdit()"] 097cfab7_aaea_d6ab_1435_9208279c4a99 -->|calls| afa1f6b3_cc89_97c1_ee85_f060a3b17fee style 097cfab7_aaea_d6ab_1435_9208279c4a99 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/language-tools/language-server/src/plugins/utils.ts lines 55–77
export function ensureProperEditForFrontmatter(
edit: TextEdit,
metadata: AstroMetadata,
newLine: string,
position: FrontmatterEditPosition = 'top',
): TextEdit {
switch (metadata.frontmatter.status) {
case 'open':
return getOpenFrontmatterEdit(edit, metadata, newLine);
case 'closed':
const newRange = ensureRangeIsInFrontmatter(edit.range, metadata, position);
return {
newText:
newRange.start.line === metadata.frontmatter.position.start.line &&
edit.newText.startsWith(newLine)
? edit.newText.trimStart()
: edit.newText,
range: newRange,
};
case 'doesnt-exist':
return getNewFrontmatterEdit(edit, metadata, newLine);
}
}
Domain
Subdomains
Source
Frequently Asked Questions
What does ensureProperEditForFrontmatter() do?
ensureProperEditForFrontmatter() is a function in the astro codebase, defined in packages/language-tools/language-server/src/plugins/utils.ts.
Where is ensureProperEditForFrontmatter() defined?
ensureProperEditForFrontmatter() is defined in packages/language-tools/language-server/src/plugins/utils.ts at line 55.
What does ensureProperEditForFrontmatter() call?
ensureProperEditForFrontmatter() calls 3 function(s): ensureRangeIsInFrontmatter, getNewFrontmatterEdit, getOpenFrontmatterEdit.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free