vscode-xml/src/formatting/xml-formatting-options.ts
2018-03-01 21:22:53 -05:00

26 lines
No EOL
975 B
TypeScript

import { workspace } from "vscode";
import { EndOfLine, FormattingOptions } from "vscode";
import * as constants from "../constants";
export interface XmlFormattingOptions {
editorOptions: FormattingOptions;
newLine: string;
removeCommentsOnMinify: boolean;
splitAttributesOnFormat: boolean;
splitXmlnsOnFormat: boolean;
}
export class XmlFormattingOptionsFactory {
static getXmlFormattingOptions(formattingOptions: FormattingOptions, eol: EndOfLine): XmlFormattingOptions {
const config = workspace.getConfiguration(constants.extensionPrefix);
return {
editorOptions: formattingOptions,
newLine: (eol === EndOfLine.CRLF) ? "\r\n" : "\n",
removeCommentsOnMinify: config.get<boolean>("removeCommentsOnMinify"),
splitAttributesOnFormat: config.get<boolean>("splitAttributesOnFormat"),
splitXmlnsOnFormat: config.get<boolean>("splitXmlnsOnFormat")
};
}
}