UNPKG

woltlab-compiler

Version:

A compiler for WoltLab-Package Archives and WoltLab-Package Components

44 lines 1.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const util_1 = require("util"); const XMLEditor_1 = require("../../Serialization/XMLEditor"); const OptionFileCompiler_1 = require("./OptionFileCompiler"); /** * Provides the functionality to compile group-option files. */ class GroupOptionFileCompiler extends OptionFileCompiler_1.OptionFileCompiler { /** * Initializes a new instance of the `GroupOptionFileCompiler` class. * * @param item * The item to compile. */ constructor(item) { super(item); } /** * @inheritdoc */ get SchemaLocation() { return "http://www.woltlab.com/XSD/tornado/userGroupOption.xsd"; } /** * @inheritdoc */ CreateOption(option) { let editor = new XMLEditor_1.XMLEditor(super.CreateOption(option)); if (!util_1.isNullOrUndefined(option.UserDefaultValue)) { editor.AddTextElement("userdefaultvalue", `${option.UserDefaultValue}`); } if (!util_1.isNullOrUndefined(option.ModDefaultValue)) { editor.AddTextElement("moddefaultvalue", `${option.ModDefaultValue}`); } if (!util_1.isNullOrUndefined(option.AdminDefaultValue)) { editor.AddTextElement("admindefaultvalue", `${option.AdminDefaultValue}`); } editor.AddTextElement("usersonly", option.RegisteredOnly ? "1" : "0"); return editor.Element; } } exports.GroupOptionFileCompiler = GroupOptionFileCompiler; //# sourceMappingURL=GroupOptionFileCompiler.js.map