[css] Add CSS formatting option to place open brace on new line. Fixes #146398

This commit is contained in:
Martin Aeschlimann
2022-04-01 18:03:29 +02:00
parent e8f26b998e
commit 1305aac01e
5 changed files with 85 additions and 7 deletions

View File

@@ -32,9 +32,12 @@ interface CSSFormatSettings {
newlineBetweenSelectors?: boolean;
newlineBetweenRules?: boolean;
spaceAroundSelectorSeparator?: boolean;
braceStyle?: 'collapse' | 'expand';
preserveNewLines?: boolean;
maxPreserveNewLines?: number | null;
}
const cssFormatSettingKeys: (keyof CSSFormatSettings)[] = ['newlineBetweenSelectors', 'newlineBetweenRules', 'spaceAroundSelectorSeparator'];
const cssFormatSettingKeys: (keyof CSSFormatSettings)[] = ['newlineBetweenSelectors', 'newlineBetweenRules', 'spaceAroundSelectorSeparator', 'braceStyle', 'preserveNewLines', 'maxPreserveNewLines'];
export function startClient(context: ExtensionContext, newLanguageClient: LanguageClientConstructor, runtime: Runtime) {
@@ -196,7 +199,7 @@ export function startClient(context: ExtensionContext, newLanguageClient: Langua
if (formatterSettings) {
for (const key of cssFormatSettingKeys) {
const val = formatterSettings[key];
if (val !== undefined) {
if (val !== undefined && val !== null) {
params.options[key] = val;
}
}