Skip to content

Commit

Permalink
Ignore import diagnostics in certain filetypes
Browse files Browse the repository at this point in the history
  • Loading branch information
Matsuuu committed Nov 8, 2023
1 parent 5696774 commit a77dc96
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 4 deletions.
17 changes: 15 additions & 2 deletions lib/server/src/diagnostics.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,31 @@ const DISABLE_FLAGS = {
DISABLE_IMPORT_CHECK: "cels-disable-import-check"
}

const DEFAULT_DISABLE_IMPORT_CHECKS_FILETYPES = ["md", "html", "php"];

export async function runDiagnostics(uri: string, textDoc: TextDocument) {
handleDiagnostics(uri, textDoc);
}

function shouldIgnoreImportDiagnostics(fileName: string) {
const fileExtension = fileName.split(".").at(-1) ?? "__CELS_NO_ENDING";
if (DEFAULT_DISABLE_IMPORT_CHECKS_FILETYPES.includes(fileExtension)) {
return true;
}
if (!fileName.endsWith(fileExtension)) {
return true;
}

return false;
}

function handleDiagnostics(uri: string, textDoc: TextDocument) {
const fileName = url.fileURLToPath(uri);
const usableData = textDocumentToUsableData(textDoc);
const queryData = generateLanguageServiceQueryDataForDiagnostics(usableData, textDoc.uri);
const text = textDoc.getText();
const disableDiagnostics = text.includes(DISABLE_FLAGS.DISABLE_ALL);


if (disableDiagnostics) {
connection.sendDiagnostics({ uri: textDoc.uri, diagnostics: [] });
return;
Expand All @@ -42,7 +55,7 @@ function handleDiagnostics(uri: string, textDoc: TextDocument) {
if (!text.includes(DISABLE_FLAGS.DISABLE_MISSING_CLOSED)) {
diagnostics = [...diagnostics, ...getMissingCloseTagDiagnostics(request)];
}
if (!text.includes(DISABLE_FLAGS.DISABLE_IMPORT_CHECK)) {
if (!text.includes(DISABLE_FLAGS.DISABLE_IMPORT_CHECK) && !shouldIgnoreImportDiagnostics(fileName)) {
diagnostics = [...diagnostics, ...getImportDiagnostics(request)];
}

Expand Down
1 change: 0 additions & 1 deletion usage-testing-project/src/card.astro
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
---
import "./example-project.js";
interface Props {
title: string;
body: string;
Expand Down
2 changes: 1 addition & 1 deletion usage-testing-project/src/index.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@
?>

<div>
<sl-button variant=""></sl-button>
<sl-button variant="">

</div>

0 comments on commit a77dc96

Please sign in to comment.