MCPcopy Create free account
hub / github.com/driangle/taskmd / validateDocument

Function validateDocument

apps/vscode/src/extension.ts:65–94  ·  view source on GitHub ↗
(doc: vscode.TextDocument)

Source from the content-addressed store, hash-verified

63}
64
65function validateDocument(doc: vscode.TextDocument): void {
66 if (!isTaskFile(doc)) {
67 diagnosticCollection.delete(doc.uri);
68 return;
69 }
70
71 const text = doc.getText();
72 const parsed = parseFrontmatter(text);
73
74 if (!parsed) {
75 diagnosticCollection.set(doc.uri, []);
76 return;
77 }
78
79 // Convert YAML parse errors to diagnostics
80 const yamlDiags = parsed.errors.map((err) => {
81 const diag = new vscode.Diagnostic(
82 new vscode.Range(err.range.start.line, err.range.start.col, err.range.end.line, err.range.end.col),
83 err.message,
84 vscode.DiagnosticSeverity.Error
85 );
86 diag.source = DIAGNOSTIC_SOURCE;
87 return diag;
88 });
89
90 const issues = validate(parsed);
91 const issueDiags = toDiagnostics(issues, parsed);
92
93 diagnosticCollection.set(doc.uri, [...yamlDiags, ...issueDiags]);
94}

Callers 1

activateFunction · 0.85

Calls 4

parseFrontmatterFunction · 0.90
validateFunction · 0.90
toDiagnosticsFunction · 0.90
isTaskFileFunction · 0.85

Tested by

no test coverage detected