Skip to content

Class: CssDocLanguageService ​

Defined in: servers/language-server/src/service.ts:423

The language service. Construct with the component index (rebuild it when the CSS changes).

Constructors ​

Constructor ​

ts
new CssDocLanguageService(index, severities?): CssDocLanguageService;

Defined in: servers/language-server/src/service.ts:432

Parameters ​

index ​

CssDocIndex

severities? ​

RuleSeverities = DEFAULT_RULE_SEVERITIES

Returns ​

CssDocLanguageService

Methods ​

codeActions() ​

ts
codeActions(diagnostics, path?): LspCodeAction[];

Defined in: servers/language-server/src/service.ts:1060

Quick fixes for the given diagnostics (replace a deprecated modifier with its canonical).

Parameters ​

diagnostics ​

LspDiagnostic[]

path? ​

string

Returns ​

LspCodeAction[]


completions() ​

ts
completions(
   text, 
   position, 
   path?, 
   languageId?
): LspCompletion[];

Defined in: servers/language-server/src/service.ts:517

Completions at a position: cssdoc @tags inside a doc comment (while authoring a stylesheet), var(--…) custom properties, or classes/modifiers in a class/className attribute.

Parameters ​

text ​

string

position ​

LspPosition

path? ​

string

languageId? ​

string

Returns ​

LspCompletion[]


definition() ​

ts
definition(
   text, 
   position, 
   path?, 
   languageId?
): LspLocation | undefined;

Defined in: servers/language-server/src/service.ts:786

Definition at a position — the CSS rule for the thing under the cursor. Mirrors hover: it jumps from a class usage (class/className, clsx(…), Vue :class, Svelte class:name) to the rule, and from a selector/property authored in a stylesheet or embedded CSS to its own rule.

Parameters ​

text ​

string

position ​

LspPosition

path? ​

string

languageId? ​

string

Returns ​

LspLocation | undefined


diagnostics() ​

ts
diagnostics(
   text, 
   languageId?, 
   path?
): LspDiagnostic[];

Defined in: servers/language-server/src/service.ts:860

Diagnostics for a document. For CSS the stylesheet is linted in place (doc-comment hygiene plus the registered-property value checks); for other languages, class-attribute usage is checked against the configured index.

Parameters ​

text ​

string

languageId? ​

string

path? ​

string

Returns ​

LspDiagnostic[]


hover() ​

ts
hover(
   text, 
   position, 
   path?, 
   languageId?
): LspHover | undefined;

Defined in: servers/language-server/src/service.ts:589

Hover at a position. Resolves to a documentation card in three places: while authoring a stylesheet (a selector/property in a .css file), while authoring embedded CSS (inside a <style> block, a css template, or a Markdown ```css fence — resolved against the projected CSS, which shares the source's offsets), and over a class usage (class/className, clsx(…), Vue :class, Svelte class:name).

Parameters ​

text ​

string

position ​

LspPosition

path? ​

string

languageId? ​

string

Returns ​

LspHover | undefined


setHoverDetail() ​

ts
setHoverDetail(
   detail, 
   sections?, 
   sectionOrder?
): void;

Defined in: servers/language-server/src/service.ts:437

Set the component-hover detail level (compact | full | custom), section map, and order.

Parameters ​

detail ​

HoverDetail

sections? ​

HoverSections = {}

sectionOrder? ​

HoverSectionOrder

Returns ​

void


setIndex() ​

ts
setIndex(index): void;

Defined in: servers/language-server/src/service.ts:448

Replace the component index (single-scope path; e.g. after the CSS files change).

Parameters ​

index ​

CssDocIndex

Returns ​

void


setNaming() ​

ts
setNaming(naming): void;

Defined in: servers/language-server/src/service.ts:458

Set the name-case conventions (single-scope path).

Parameters ​

naming ​

NamingRules

Returns ​

void


setRuleSeverities() ​

ts
setRuleSeverities(severities): void;

Defined in: servers/language-server/src/service.ts:453

Set the per-rule severities (single-scope path).

Parameters ​

severities ​

RuleSeverities

Returns ​

void


setScopes() ​

ts
setScopes(scopes): void;

Defined in: servers/language-server/src/service.ts:463

Replace all config scopes (multi-config path; one per governing cssdoc.json).

Parameters ​

scopes ​

ConfigScope[]

Returns ​

void

Released under the MIT License