diff --git a/package.json b/package.json index 6800a5f81ee1a4e88a9803d3f6cd3b71ad7b7e80..2b5746fac07659c552f3a9436395bba7e0932a1d 100755 --- a/package.json +++ b/package.json @@ -69,41 +69,6 @@ "type": "string" }, "default": {}, "markdownDescription": "Enable features in languages that are not supported by default. Add a mapping here between the new language and an already supported language.\n E.g.: `{\"plaintext\": \"html\"}`" - }, - "tailwindCSS.validate": { - "type": "boolean", - "default": true, - "markdownDescription": "" - }, - "tailwindCSS.lint.utilityConflicts": { - "type": "string", - "enum": [ - "ignore", - "warning", - "error" - ], - "default": "warning", - "markdownDescription": "", - "markdownEnumDescriptions": [ - "", - "", - "" - ] - }, - "tailwindCSS.lint.unsupportedApply": { - "type": "string", - "enum": [ - "ignore", - "warning", - "error" - ], - "default": "error", - "markdownDescription": "", - "markdownEnumDescriptions": [ - "", - "", - "" - ] } } } diff --git a/src/lsp/providers/diagnosticsProvider.ts b/src/lsp/providers/diagnosticsProvider.ts index 9602ee720a1b61c82afe91012a516b17ce9374a5..9f483ac9f69be7fbc5deeae70607194fafacf66b 100644 --- a/src/lsp/providers/diagnosticsProvider.ts +++ b/src/lsp/providers/diagnosticsProvider.ts @@ -3,7 +3,7 @@ TextDocument, Diagnostic, DiagnosticSeverity, } from 'vscode-languageserver' -import { State, Settings } from '../util/state' +import { State } from '../util/state' import { isCssDoc } from '../util/css' import { findClassNamesInRange, @@ -13,16 +13,8 @@ } from '../util/find' import { getClassNameMeta } from '../util/getClassNameMeta' import { getClassNameDecls } from '../util/getClassNameDecls' import { equal } from '../../util/array' -import { getDocumentSettings } from '../util/getDocumentSettings' -function getCssDiagnostics( - state: State, - document: TextDocument, - settings: Settings -): Diagnostic[] { - let severity = settings.lint.unsupportedApply - if (severity === 'ignore') return [] - +function getCssDiagnostics(state: State, document: TextDocument): Diagnostic[] { const classNames = findClassNamesInRange(document, undefined, 'css') let diagnostics: Diagnostic[] = classNames @@ -57,10 +49,7 @@ if (!message) return null return { - severity: - severity === 'error' - ? DiagnosticSeverity.Error - : DiagnosticSeverity.Warning, + severity: DiagnosticSeverity.Error, range, message, } @@ -70,14 +59,10 @@ return diagnostics } -function getUtilityConflictDiagnostics( +function getConflictDiagnostics( state: State, - document: TextDocument, - settings: Settings + document: TextDocument ): Diagnostic[] { - let severity = settings.lint.utilityConflicts - if (severity === 'ignore') return [] - let diagnostics: Diagnostic[] = [] const classLists = findClassListsInDocument(state, document) @@ -105,10 +90,7 @@ equal(meta.pseudo, otherMeta.pseudo) ) { diagnostics.push({ range: className.range, - severity: - severity === 'error' - ? DiagnosticSeverity.Error - : DiagnosticSeverity.Warning, + severity: DiagnosticSeverity.Warning, message: `You can’t use \`${className.className}\` and \`${otherClassName.className}\` together`, relatedInformation: [ { @@ -132,19 +114,11 @@ export async function provideDiagnostics( state: State, document: TextDocument ): Promise { - const settings = await getDocumentSettings(state, document.uri) - - const diagnostics: Diagnostic[] = settings.validate - ? [ - ...getUtilityConflictDiagnostics(state, document, settings), - ...(isCssDoc(state, document) - ? getCssDiagnostics(state, document, settings) - : []), - ] - : [] - state.editor.connection.sendDiagnostics({ uri: document.uri, - diagnostics, + diagnostics: [ + ...getConflictDiagnostics(state, document), + ...(isCssDoc(state, document) ? getCssDiagnostics(state, document) : []), + ], }) } diff --git a/src/lsp/server.ts b/src/lsp/server.ts index efbe0ab4a9ea1a53a4cfab5139203eabd032f6d4..480aa289e7b5035e907891fd287bf45baeddd159 100644 --- a/src/lsp/server.ts +++ b/src/lsp/server.ts @@ -36,11 +36,6 @@ const defaultSettings: Settings = { emmetCompletions: false, includeLanguages: {}, - validate: true, - lint: { - utilityConflicts: 'warning', - unsupportedApply: 'error', - }, } let globalSettings: Settings = defaultSettings let documentSettings: Map = new Map() @@ -177,9 +172,9 @@ (change.settings.tailwindCSS || defaultSettings) ) } - state.editor.documents.all().forEach((doc) => { - provideDiagnostics(state, doc) - }) + state.editor.documents + .all() + .forEach((doc) => getDocumentSettings(state, doc.uri)) }) connection.onCompletion( diff --git a/src/lsp/util/state.ts b/src/lsp/util/state.ts index 97aca8a6dd58a98f65f6da9af88c6f151c3bf9a2..dad7e768af5686c49bbc1b6505d476ec0cb51605 100644 --- a/src/lsp/util/state.ts +++ b/src/lsp/util/state.ts @@ -25,16 +25,9 @@ diagnosticRelatedInformation: boolean } } -type DiagnosticSeveritySetting = 'ignore' | 'warning' | 'error' - export type Settings = { emmetCompletions: boolean includeLanguages: Record - validate: boolean - lint: { - utilityConflicts: DiagnosticSeveritySetting - unsupportedApply: DiagnosticSeveritySetting - } } export type State = null | {