vscode-css-languageservice 5.3.0 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/README.md +1 -0
- package/lib/esm/beautify/beautify-css.js +57 -15
- package/lib/esm/cssLanguageService.d.ts +37 -37
- package/lib/esm/cssLanguageService.js +72 -75
- package/lib/esm/cssLanguageTypes.d.ts +238 -228
- package/lib/esm/cssLanguageTypes.js +42 -42
- package/lib/esm/data/webCustomData.js +21965 -21959
- package/lib/esm/languageFacts/builtinData.js +142 -142
- package/lib/esm/languageFacts/colors.js +469 -472
- package/lib/esm/languageFacts/dataManager.js +88 -92
- package/lib/esm/languageFacts/dataProvider.js +73 -79
- package/lib/esm/languageFacts/entry.js +137 -138
- package/lib/esm/languageFacts/facts.js +8 -8
- package/lib/esm/parser/cssErrors.js +48 -50
- package/lib/esm/parser/cssNodes.js +1502 -2019
- package/lib/esm/parser/cssParser.js +1534 -1566
- package/lib/esm/parser/cssScanner.js +592 -599
- package/lib/esm/parser/cssSymbolScope.js +311 -341
- package/lib/esm/parser/lessParser.js +714 -740
- package/lib/esm/parser/lessScanner.js +57 -78
- package/lib/esm/parser/scssErrors.js +18 -20
- package/lib/esm/parser/scssParser.js +796 -818
- package/lib/esm/parser/scssScanner.js +95 -116
- package/lib/esm/services/cssCodeActions.js +77 -81
- package/lib/esm/services/cssCompletion.js +1054 -1149
- package/lib/esm/services/cssFolding.js +190 -193
- package/lib/esm/services/cssFormatter.js +136 -117
- package/lib/esm/services/cssHover.js +148 -151
- package/lib/esm/services/cssNavigation.js +378 -470
- package/lib/esm/services/cssSelectionRange.js +47 -47
- package/lib/esm/services/cssValidation.js +41 -44
- package/lib/esm/services/lessCompletion.js +378 -397
- package/lib/esm/services/lint.js +518 -532
- package/lib/esm/services/lintRules.js +76 -83
- package/lib/esm/services/lintUtil.js +196 -205
- package/lib/esm/services/pathCompletion.js +157 -231
- package/lib/esm/services/scssCompletion.js +354 -378
- package/lib/esm/services/scssNavigation.js +82 -154
- package/lib/esm/services/selectorPrinting.js +492 -536
- package/lib/esm/utils/arrays.js +40 -46
- package/lib/esm/utils/objects.js +11 -11
- package/lib/esm/utils/resources.js +11 -24
- package/lib/esm/utils/strings.js +102 -104
- package/lib/umd/beautify/beautify-css.js +57 -15
- package/lib/umd/cssLanguageService.d.ts +37 -37
- package/lib/umd/cssLanguageService.js +99 -102
- package/lib/umd/cssLanguageTypes.d.ts +238 -228
- package/lib/umd/cssLanguageTypes.js +89 -88
- package/lib/umd/data/webCustomData.js +21978 -21972
- package/lib/umd/languageFacts/builtinData.js +154 -154
- package/lib/umd/languageFacts/colors.js +492 -495
- package/lib/umd/languageFacts/dataManager.js +101 -104
- package/lib/umd/languageFacts/dataProvider.js +86 -91
- package/lib/umd/languageFacts/entry.js +152 -153
- package/lib/umd/languageFacts/facts.js +29 -29
- package/lib/umd/parser/cssErrors.js +61 -62
- package/lib/umd/parser/cssNodes.js +1587 -2034
- package/lib/umd/parser/cssParser.js +1547 -1578
- package/lib/umd/parser/cssScanner.js +606 -611
- package/lib/umd/parser/cssSymbolScope.js +328 -353
- package/lib/umd/parser/lessParser.js +727 -752
- package/lib/umd/parser/lessScanner.js +70 -90
- package/lib/umd/parser/scssErrors.js +31 -32
- package/lib/umd/parser/scssParser.js +809 -830
- package/lib/umd/parser/scssScanner.js +108 -128
- package/lib/umd/services/cssCodeActions.js +90 -93
- package/lib/umd/services/cssCompletion.js +1067 -1161
- package/lib/umd/services/cssFolding.js +203 -206
- package/lib/umd/services/cssFormatter.js +150 -131
- package/lib/umd/services/cssHover.js +161 -163
- package/lib/umd/services/cssNavigation.js +391 -482
- package/lib/umd/services/cssSelectionRange.js +60 -60
- package/lib/umd/services/cssValidation.js +54 -56
- package/lib/umd/services/lessCompletion.js +391 -409
- package/lib/umd/services/lint.js +531 -544
- package/lib/umd/services/lintRules.js +91 -95
- package/lib/umd/services/lintUtil.js +210 -218
- package/lib/umd/services/pathCompletion.js +171 -244
- package/lib/umd/services/scssCompletion.js +367 -390
- package/lib/umd/services/scssNavigation.js +95 -166
- package/lib/umd/services/selectorPrinting.js +510 -550
- package/lib/umd/utils/arrays.js +55 -61
- package/lib/umd/utils/objects.js +25 -25
- package/lib/umd/utils/resources.js +26 -39
- package/lib/umd/utils/strings.js +120 -122
- package/package.json +11 -11
|
@@ -1,228 +1,238 @@
|
|
|
1
|
-
import { Range, Position, DocumentUri, MarkupContent, MarkupKind, Color, ColorInformation, ColorPresentation, FoldingRange, FoldingRangeKind, SelectionRange, Diagnostic, DiagnosticSeverity, CompletionItem, CompletionItemKind, CompletionList, CompletionItemTag, InsertTextFormat, DefinitionLink, SymbolInformation, SymbolKind, DocumentSymbol, Location, Hover, MarkedString, CodeActionContext, Command, CodeAction, DocumentHighlight, DocumentLink, WorkspaceEdit, TextEdit, CodeActionKind, TextDocumentEdit, VersionedTextDocumentIdentifier, DocumentHighlightKind } from 'vscode-languageserver-types';
|
|
2
|
-
import { TextDocument } from 'vscode-languageserver-textdocument';
|
|
3
|
-
export { TextDocument, Range, Position, DocumentUri, MarkupContent, MarkupKind, Color, ColorInformation, ColorPresentation, FoldingRange, FoldingRangeKind, SelectionRange, Diagnostic, DiagnosticSeverity, CompletionItem, CompletionItemKind, CompletionList, CompletionItemTag, InsertTextFormat, DefinitionLink, SymbolInformation, SymbolKind, DocumentSymbol, Location, Hover, MarkedString, CodeActionContext, Command, CodeAction, DocumentHighlight, DocumentLink, WorkspaceEdit, TextEdit, CodeActionKind, TextDocumentEdit, VersionedTextDocumentIdentifier, DocumentHighlightKind };
|
|
4
|
-
export declare type LintSettings = {
|
|
5
|
-
[key: string]: any;
|
|
6
|
-
};
|
|
7
|
-
export interface CompletionSettings {
|
|
8
|
-
triggerPropertyValueCompletion: boolean;
|
|
9
|
-
completePropertyWithSemicolon?: boolean;
|
|
10
|
-
}
|
|
11
|
-
export interface LanguageSettings {
|
|
12
|
-
validate?: boolean;
|
|
13
|
-
lint?: LintSettings;
|
|
14
|
-
completion?: CompletionSettings;
|
|
15
|
-
hover?: HoverSettings;
|
|
16
|
-
}
|
|
17
|
-
export interface HoverSettings {
|
|
18
|
-
documentation?: boolean;
|
|
19
|
-
references?: boolean;
|
|
20
|
-
}
|
|
21
|
-
export interface PropertyCompletionContext {
|
|
22
|
-
propertyName: string;
|
|
23
|
-
range: Range;
|
|
24
|
-
}
|
|
25
|
-
export interface PropertyValueCompletionContext {
|
|
26
|
-
propertyName: string;
|
|
27
|
-
propertyValue?: string;
|
|
28
|
-
range: Range;
|
|
29
|
-
}
|
|
30
|
-
export interface URILiteralCompletionContext {
|
|
31
|
-
uriValue: string;
|
|
32
|
-
position: Position;
|
|
33
|
-
range: Range;
|
|
34
|
-
}
|
|
35
|
-
export interface ImportPathCompletionContext {
|
|
36
|
-
pathValue: string;
|
|
37
|
-
position: Position;
|
|
38
|
-
range: Range;
|
|
39
|
-
}
|
|
40
|
-
export interface MixinReferenceCompletionContext {
|
|
41
|
-
mixinName: string;
|
|
42
|
-
range: Range;
|
|
43
|
-
}
|
|
44
|
-
export interface ICompletionParticipant {
|
|
45
|
-
onCssProperty?: (context: PropertyCompletionContext) => void;
|
|
46
|
-
onCssPropertyValue?: (context: PropertyValueCompletionContext) => void;
|
|
47
|
-
onCssURILiteralValue?: (context: URILiteralCompletionContext) => void;
|
|
48
|
-
onCssImportPath?: (context: ImportPathCompletionContext) => void;
|
|
49
|
-
onCssMixinReference?: (context: MixinReferenceCompletionContext) => void;
|
|
50
|
-
}
|
|
51
|
-
export interface DocumentContext {
|
|
52
|
-
resolveReference(ref: string, baseUrl: string): string | undefined;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Describes what LSP capabilities the client supports
|
|
56
|
-
*/
|
|
57
|
-
export interface ClientCapabilities {
|
|
58
|
-
/**
|
|
59
|
-
* The text document client capabilities
|
|
60
|
-
*/
|
|
61
|
-
textDocument?: {
|
|
62
|
-
/**
|
|
63
|
-
* Capabilities specific to completions.
|
|
64
|
-
*/
|
|
65
|
-
completion?: {
|
|
66
|
-
/**
|
|
67
|
-
* The client supports the following `CompletionItem` specific
|
|
68
|
-
* capabilities.
|
|
69
|
-
*/
|
|
70
|
-
completionItem?: {
|
|
71
|
-
/**
|
|
72
|
-
* Client supports the follow content formats for the documentation
|
|
73
|
-
* property. The order describes the preferred format of the client.
|
|
74
|
-
*/
|
|
75
|
-
documentationFormat?: MarkupKind[];
|
|
76
|
-
};
|
|
77
|
-
};
|
|
78
|
-
/**
|
|
79
|
-
* Capabilities specific to hovers.
|
|
80
|
-
*/
|
|
81
|
-
hover?: {
|
|
82
|
-
/**
|
|
83
|
-
* Client supports the follow content formats for the content
|
|
84
|
-
* property. The order describes the preferred format of the client.
|
|
85
|
-
*/
|
|
86
|
-
contentFormat?: MarkupKind[];
|
|
87
|
-
};
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
export declare namespace ClientCapabilities {
|
|
91
|
-
const LATEST: ClientCapabilities;
|
|
92
|
-
}
|
|
93
|
-
export interface LanguageServiceOptions {
|
|
94
|
-
/**
|
|
95
|
-
* Unless set to false, the default CSS data provider will be used
|
|
96
|
-
* along with the providers from customDataProviders.
|
|
97
|
-
* Defaults to true.
|
|
98
|
-
*/
|
|
99
|
-
useDefaultDataProvider?: boolean;
|
|
100
|
-
/**
|
|
101
|
-
* Provide data that could enhance the service's understanding of
|
|
102
|
-
* CSS property / at-rule / pseudo-class / pseudo-element
|
|
103
|
-
*/
|
|
104
|
-
customDataProviders?: ICSSDataProvider[];
|
|
105
|
-
/**
|
|
106
|
-
* Abstract file system access away from the service.
|
|
107
|
-
* Used for dynamic link resolving, path completion, etc.
|
|
108
|
-
*/
|
|
109
|
-
fileSystemProvider?: FileSystemProvider;
|
|
110
|
-
/**
|
|
111
|
-
* Describes the LSP capabilities the client supports.
|
|
112
|
-
*/
|
|
113
|
-
clientCapabilities?: ClientCapabilities;
|
|
114
|
-
}
|
|
115
|
-
export declare type EntryStatus = 'standard' | 'experimental' | 'nonstandard' | 'obsolete';
|
|
116
|
-
export interface IReference {
|
|
117
|
-
name: string;
|
|
118
|
-
url: string;
|
|
119
|
-
}
|
|
120
|
-
export interface IPropertyData {
|
|
121
|
-
name: string;
|
|
122
|
-
description?: string | MarkupContent;
|
|
123
|
-
browsers?: string[];
|
|
124
|
-
restrictions?: string[];
|
|
125
|
-
status?: EntryStatus;
|
|
126
|
-
syntax?: string;
|
|
127
|
-
values?: IValueData[];
|
|
128
|
-
references?: IReference[];
|
|
129
|
-
relevance?: number;
|
|
130
|
-
}
|
|
131
|
-
export interface IAtDirectiveData {
|
|
132
|
-
name: string;
|
|
133
|
-
description?: string | MarkupContent;
|
|
134
|
-
browsers?: string[];
|
|
135
|
-
status?: EntryStatus;
|
|
136
|
-
references?: IReference[];
|
|
137
|
-
}
|
|
138
|
-
export interface IPseudoClassData {
|
|
139
|
-
name: string;
|
|
140
|
-
description?: string | MarkupContent;
|
|
141
|
-
browsers?: string[];
|
|
142
|
-
status?: EntryStatus;
|
|
143
|
-
references?: IReference[];
|
|
144
|
-
}
|
|
145
|
-
export interface IPseudoElementData {
|
|
146
|
-
name: string;
|
|
147
|
-
description?: string | MarkupContent;
|
|
148
|
-
browsers?: string[];
|
|
149
|
-
status?: EntryStatus;
|
|
150
|
-
references?: IReference[];
|
|
151
|
-
}
|
|
152
|
-
export interface IValueData {
|
|
153
|
-
name: string;
|
|
154
|
-
description?: string | MarkupContent;
|
|
155
|
-
browsers?: string[];
|
|
156
|
-
status?: EntryStatus;
|
|
157
|
-
references?: IReference[];
|
|
158
|
-
}
|
|
159
|
-
export interface CSSDataV1 {
|
|
160
|
-
version: 1 | 1.1;
|
|
161
|
-
properties?: IPropertyData[];
|
|
162
|
-
atDirectives?: IAtDirectiveData[];
|
|
163
|
-
pseudoClasses?: IPseudoClassData[];
|
|
164
|
-
pseudoElements?: IPseudoElementData[];
|
|
165
|
-
}
|
|
166
|
-
export interface ICSSDataProvider {
|
|
167
|
-
provideProperties(): IPropertyData[];
|
|
168
|
-
provideAtDirectives(): IAtDirectiveData[];
|
|
169
|
-
providePseudoClasses(): IPseudoClassData[];
|
|
170
|
-
providePseudoElements(): IPseudoElementData[];
|
|
171
|
-
}
|
|
172
|
-
export declare enum FileType {
|
|
173
|
-
/**
|
|
174
|
-
* The file type is unknown.
|
|
175
|
-
*/
|
|
176
|
-
Unknown = 0,
|
|
177
|
-
/**
|
|
178
|
-
* A regular file.
|
|
179
|
-
*/
|
|
180
|
-
File = 1,
|
|
181
|
-
/**
|
|
182
|
-
* A directory.
|
|
183
|
-
*/
|
|
184
|
-
Directory = 2,
|
|
185
|
-
/**
|
|
186
|
-
* A symbolic link to a file.
|
|
187
|
-
*/
|
|
188
|
-
SymbolicLink = 64
|
|
189
|
-
}
|
|
190
|
-
export interface FileStat {
|
|
191
|
-
/**
|
|
192
|
-
* The type of the file, e.g. is a regular file, a directory, or symbolic link
|
|
193
|
-
* to a file.
|
|
194
|
-
*/
|
|
195
|
-
type: FileType;
|
|
196
|
-
/**
|
|
197
|
-
* The creation timestamp in milliseconds elapsed since January 1, 1970 00:00:00 UTC.
|
|
198
|
-
*/
|
|
199
|
-
ctime: number;
|
|
200
|
-
/**
|
|
201
|
-
* The modification timestamp in milliseconds elapsed since January 1, 1970 00:00:00 UTC.
|
|
202
|
-
*/
|
|
203
|
-
mtime: number;
|
|
204
|
-
/**
|
|
205
|
-
* The size in bytes.
|
|
206
|
-
*/
|
|
207
|
-
size: number;
|
|
208
|
-
}
|
|
209
|
-
export interface FileSystemProvider {
|
|
210
|
-
stat(uri: DocumentUri): Promise<FileStat>;
|
|
211
|
-
readDirectory?(uri: DocumentUri): Promise<[string, FileType][]>;
|
|
212
|
-
}
|
|
213
|
-
export interface CSSFormatConfiguration {
|
|
214
|
-
/** indentation size. Default: 4 */
|
|
215
|
-
tabSize?: number;
|
|
216
|
-
/** Whether to use spaces or tabs */
|
|
217
|
-
insertSpaces?: boolean;
|
|
218
|
-
/** end with a newline: Default: false */
|
|
219
|
-
insertFinalNewline?: boolean;
|
|
220
|
-
/** separate selectors with newline (e.g. "a,\nbr" or "a, br"): Default: true */
|
|
221
|
-
newlineBetweenSelectors?: boolean;
|
|
222
|
-
/** add a new line after every css rule: Default: true */
|
|
223
|
-
newlineBetweenRules?: boolean;
|
|
224
|
-
/** ensure space around selector separators: '>', '+', '~' (e.g. "a>b" -> "a > b"): Default: false */
|
|
225
|
-
spaceAroundSelectorSeparator?: boolean;
|
|
226
|
-
/**
|
|
227
|
-
|
|
228
|
-
|
|
1
|
+
import { Range, Position, DocumentUri, MarkupContent, MarkupKind, Color, ColorInformation, ColorPresentation, FoldingRange, FoldingRangeKind, SelectionRange, Diagnostic, DiagnosticSeverity, CompletionItem, CompletionItemKind, CompletionList, CompletionItemTag, InsertTextFormat, DefinitionLink, SymbolInformation, SymbolKind, DocumentSymbol, Location, Hover, MarkedString, CodeActionContext, Command, CodeAction, DocumentHighlight, DocumentLink, WorkspaceEdit, TextEdit, CodeActionKind, TextDocumentEdit, VersionedTextDocumentIdentifier, DocumentHighlightKind } from 'vscode-languageserver-types';
|
|
2
|
+
import { TextDocument } from 'vscode-languageserver-textdocument';
|
|
3
|
+
export { TextDocument, Range, Position, DocumentUri, MarkupContent, MarkupKind, Color, ColorInformation, ColorPresentation, FoldingRange, FoldingRangeKind, SelectionRange, Diagnostic, DiagnosticSeverity, CompletionItem, CompletionItemKind, CompletionList, CompletionItemTag, InsertTextFormat, DefinitionLink, SymbolInformation, SymbolKind, DocumentSymbol, Location, Hover, MarkedString, CodeActionContext, Command, CodeAction, DocumentHighlight, DocumentLink, WorkspaceEdit, TextEdit, CodeActionKind, TextDocumentEdit, VersionedTextDocumentIdentifier, DocumentHighlightKind };
|
|
4
|
+
export declare type LintSettings = {
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
};
|
|
7
|
+
export interface CompletionSettings {
|
|
8
|
+
triggerPropertyValueCompletion: boolean;
|
|
9
|
+
completePropertyWithSemicolon?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface LanguageSettings {
|
|
12
|
+
validate?: boolean;
|
|
13
|
+
lint?: LintSettings;
|
|
14
|
+
completion?: CompletionSettings;
|
|
15
|
+
hover?: HoverSettings;
|
|
16
|
+
}
|
|
17
|
+
export interface HoverSettings {
|
|
18
|
+
documentation?: boolean;
|
|
19
|
+
references?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface PropertyCompletionContext {
|
|
22
|
+
propertyName: string;
|
|
23
|
+
range: Range;
|
|
24
|
+
}
|
|
25
|
+
export interface PropertyValueCompletionContext {
|
|
26
|
+
propertyName: string;
|
|
27
|
+
propertyValue?: string;
|
|
28
|
+
range: Range;
|
|
29
|
+
}
|
|
30
|
+
export interface URILiteralCompletionContext {
|
|
31
|
+
uriValue: string;
|
|
32
|
+
position: Position;
|
|
33
|
+
range: Range;
|
|
34
|
+
}
|
|
35
|
+
export interface ImportPathCompletionContext {
|
|
36
|
+
pathValue: string;
|
|
37
|
+
position: Position;
|
|
38
|
+
range: Range;
|
|
39
|
+
}
|
|
40
|
+
export interface MixinReferenceCompletionContext {
|
|
41
|
+
mixinName: string;
|
|
42
|
+
range: Range;
|
|
43
|
+
}
|
|
44
|
+
export interface ICompletionParticipant {
|
|
45
|
+
onCssProperty?: (context: PropertyCompletionContext) => void;
|
|
46
|
+
onCssPropertyValue?: (context: PropertyValueCompletionContext) => void;
|
|
47
|
+
onCssURILiteralValue?: (context: URILiteralCompletionContext) => void;
|
|
48
|
+
onCssImportPath?: (context: ImportPathCompletionContext) => void;
|
|
49
|
+
onCssMixinReference?: (context: MixinReferenceCompletionContext) => void;
|
|
50
|
+
}
|
|
51
|
+
export interface DocumentContext {
|
|
52
|
+
resolveReference(ref: string, baseUrl: string): string | undefined;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Describes what LSP capabilities the client supports
|
|
56
|
+
*/
|
|
57
|
+
export interface ClientCapabilities {
|
|
58
|
+
/**
|
|
59
|
+
* The text document client capabilities
|
|
60
|
+
*/
|
|
61
|
+
textDocument?: {
|
|
62
|
+
/**
|
|
63
|
+
* Capabilities specific to completions.
|
|
64
|
+
*/
|
|
65
|
+
completion?: {
|
|
66
|
+
/**
|
|
67
|
+
* The client supports the following `CompletionItem` specific
|
|
68
|
+
* capabilities.
|
|
69
|
+
*/
|
|
70
|
+
completionItem?: {
|
|
71
|
+
/**
|
|
72
|
+
* Client supports the follow content formats for the documentation
|
|
73
|
+
* property. The order describes the preferred format of the client.
|
|
74
|
+
*/
|
|
75
|
+
documentationFormat?: MarkupKind[];
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Capabilities specific to hovers.
|
|
80
|
+
*/
|
|
81
|
+
hover?: {
|
|
82
|
+
/**
|
|
83
|
+
* Client supports the follow content formats for the content
|
|
84
|
+
* property. The order describes the preferred format of the client.
|
|
85
|
+
*/
|
|
86
|
+
contentFormat?: MarkupKind[];
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export declare namespace ClientCapabilities {
|
|
91
|
+
const LATEST: ClientCapabilities;
|
|
92
|
+
}
|
|
93
|
+
export interface LanguageServiceOptions {
|
|
94
|
+
/**
|
|
95
|
+
* Unless set to false, the default CSS data provider will be used
|
|
96
|
+
* along with the providers from customDataProviders.
|
|
97
|
+
* Defaults to true.
|
|
98
|
+
*/
|
|
99
|
+
useDefaultDataProvider?: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Provide data that could enhance the service's understanding of
|
|
102
|
+
* CSS property / at-rule / pseudo-class / pseudo-element
|
|
103
|
+
*/
|
|
104
|
+
customDataProviders?: ICSSDataProvider[];
|
|
105
|
+
/**
|
|
106
|
+
* Abstract file system access away from the service.
|
|
107
|
+
* Used for dynamic link resolving, path completion, etc.
|
|
108
|
+
*/
|
|
109
|
+
fileSystemProvider?: FileSystemProvider;
|
|
110
|
+
/**
|
|
111
|
+
* Describes the LSP capabilities the client supports.
|
|
112
|
+
*/
|
|
113
|
+
clientCapabilities?: ClientCapabilities;
|
|
114
|
+
}
|
|
115
|
+
export declare type EntryStatus = 'standard' | 'experimental' | 'nonstandard' | 'obsolete';
|
|
116
|
+
export interface IReference {
|
|
117
|
+
name: string;
|
|
118
|
+
url: string;
|
|
119
|
+
}
|
|
120
|
+
export interface IPropertyData {
|
|
121
|
+
name: string;
|
|
122
|
+
description?: string | MarkupContent;
|
|
123
|
+
browsers?: string[];
|
|
124
|
+
restrictions?: string[];
|
|
125
|
+
status?: EntryStatus;
|
|
126
|
+
syntax?: string;
|
|
127
|
+
values?: IValueData[];
|
|
128
|
+
references?: IReference[];
|
|
129
|
+
relevance?: number;
|
|
130
|
+
}
|
|
131
|
+
export interface IAtDirectiveData {
|
|
132
|
+
name: string;
|
|
133
|
+
description?: string | MarkupContent;
|
|
134
|
+
browsers?: string[];
|
|
135
|
+
status?: EntryStatus;
|
|
136
|
+
references?: IReference[];
|
|
137
|
+
}
|
|
138
|
+
export interface IPseudoClassData {
|
|
139
|
+
name: string;
|
|
140
|
+
description?: string | MarkupContent;
|
|
141
|
+
browsers?: string[];
|
|
142
|
+
status?: EntryStatus;
|
|
143
|
+
references?: IReference[];
|
|
144
|
+
}
|
|
145
|
+
export interface IPseudoElementData {
|
|
146
|
+
name: string;
|
|
147
|
+
description?: string | MarkupContent;
|
|
148
|
+
browsers?: string[];
|
|
149
|
+
status?: EntryStatus;
|
|
150
|
+
references?: IReference[];
|
|
151
|
+
}
|
|
152
|
+
export interface IValueData {
|
|
153
|
+
name: string;
|
|
154
|
+
description?: string | MarkupContent;
|
|
155
|
+
browsers?: string[];
|
|
156
|
+
status?: EntryStatus;
|
|
157
|
+
references?: IReference[];
|
|
158
|
+
}
|
|
159
|
+
export interface CSSDataV1 {
|
|
160
|
+
version: 1 | 1.1;
|
|
161
|
+
properties?: IPropertyData[];
|
|
162
|
+
atDirectives?: IAtDirectiveData[];
|
|
163
|
+
pseudoClasses?: IPseudoClassData[];
|
|
164
|
+
pseudoElements?: IPseudoElementData[];
|
|
165
|
+
}
|
|
166
|
+
export interface ICSSDataProvider {
|
|
167
|
+
provideProperties(): IPropertyData[];
|
|
168
|
+
provideAtDirectives(): IAtDirectiveData[];
|
|
169
|
+
providePseudoClasses(): IPseudoClassData[];
|
|
170
|
+
providePseudoElements(): IPseudoElementData[];
|
|
171
|
+
}
|
|
172
|
+
export declare enum FileType {
|
|
173
|
+
/**
|
|
174
|
+
* The file type is unknown.
|
|
175
|
+
*/
|
|
176
|
+
Unknown = 0,
|
|
177
|
+
/**
|
|
178
|
+
* A regular file.
|
|
179
|
+
*/
|
|
180
|
+
File = 1,
|
|
181
|
+
/**
|
|
182
|
+
* A directory.
|
|
183
|
+
*/
|
|
184
|
+
Directory = 2,
|
|
185
|
+
/**
|
|
186
|
+
* A symbolic link to a file.
|
|
187
|
+
*/
|
|
188
|
+
SymbolicLink = 64
|
|
189
|
+
}
|
|
190
|
+
export interface FileStat {
|
|
191
|
+
/**
|
|
192
|
+
* The type of the file, e.g. is a regular file, a directory, or symbolic link
|
|
193
|
+
* to a file.
|
|
194
|
+
*/
|
|
195
|
+
type: FileType;
|
|
196
|
+
/**
|
|
197
|
+
* The creation timestamp in milliseconds elapsed since January 1, 1970 00:00:00 UTC.
|
|
198
|
+
*/
|
|
199
|
+
ctime: number;
|
|
200
|
+
/**
|
|
201
|
+
* The modification timestamp in milliseconds elapsed since January 1, 1970 00:00:00 UTC.
|
|
202
|
+
*/
|
|
203
|
+
mtime: number;
|
|
204
|
+
/**
|
|
205
|
+
* The size in bytes.
|
|
206
|
+
*/
|
|
207
|
+
size: number;
|
|
208
|
+
}
|
|
209
|
+
export interface FileSystemProvider {
|
|
210
|
+
stat(uri: DocumentUri): Promise<FileStat>;
|
|
211
|
+
readDirectory?(uri: DocumentUri): Promise<[string, FileType][]>;
|
|
212
|
+
}
|
|
213
|
+
export interface CSSFormatConfiguration {
|
|
214
|
+
/** indentation size. Default: 4 */
|
|
215
|
+
tabSize?: number;
|
|
216
|
+
/** Whether to use spaces or tabs */
|
|
217
|
+
insertSpaces?: boolean;
|
|
218
|
+
/** end with a newline: Default: false */
|
|
219
|
+
insertFinalNewline?: boolean;
|
|
220
|
+
/** separate selectors with newline (e.g. "a,\nbr" or "a, br"): Default: true */
|
|
221
|
+
newlineBetweenSelectors?: boolean;
|
|
222
|
+
/** add a new line after every css rule: Default: true */
|
|
223
|
+
newlineBetweenRules?: boolean;
|
|
224
|
+
/** ensure space around selector separators: '>', '+', '~' (e.g. "a>b" -> "a > b"): Default: false */
|
|
225
|
+
spaceAroundSelectorSeparator?: boolean;
|
|
226
|
+
/** put braces on the same line as rules (`collapse`), or put braces on own line, Allman / ANSI style (`expand`). Default `collapse` */
|
|
227
|
+
braceStyle?: 'collapse' | 'expand';
|
|
228
|
+
/** whether existing line breaks before elements should be preserved. Default: true */
|
|
229
|
+
preserveNewLines?: boolean;
|
|
230
|
+
/** maximum number of line breaks to be preserved in one chunk. Default: unlimited */
|
|
231
|
+
maxPreserveNewLines?: number;
|
|
232
|
+
/** maximum amount of characters per line (0/undefined = disabled). Default: disabled. */
|
|
233
|
+
wrapLineLength?: number;
|
|
234
|
+
/** add indenting whitespace to empty lines. Default: false */
|
|
235
|
+
indentEmptyLines?: boolean;
|
|
236
|
+
/** @deprecated Use newlineBetweenSelectors instead*/
|
|
237
|
+
selectorSeparatorNewline?: boolean;
|
|
238
|
+
}
|