woltlab-compiler
Version:
A compiler for WoltLab-Package Archives and WoltLab-Package Components
50 lines • 1.85 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const util_1 = require("util");
const LocalizationNode_1 = require("../../../Globalization/LocalizationNode");
const TranslationInstruction_1 = require("./TranslationInstruction");
/**
* Represents an instruction which provides translations.
*/
class ErrorMessageInstruction extends TranslationInstruction_1.TranslationInstruction {
/**
* Initializes a new instance of the `ErrorMessageInstruction` class.
*/
constructor(options) {
super(options);
}
/**
* @inheritdoc
*/
GetMessages() {
let result = new TranslationInstruction_1.TranslationInstruction({
FileName: null,
Nodes: []
});
let optionNode = new LocalizationNode_1.LocalizationNode({
Name: "wcf.acp.option"
});
let errorNode = new LocalizationNode_1.LocalizationNode({
Name: "error"
});
for (let rootNode of this.Nodes) {
for (let node of rootNode.GetAllNodes()) {
if (!util_1.isNullOrUndefined(node.Item)) {
if (node.Item.Translations.GetLocales().length > 0) {
errorNode.Nodes.push(new LocalizationNode_1.LocalizationNode({
Name: node.FullName,
Item: {
Translations: node.Item.Translations.Data
}
}));
}
}
}
}
optionNode.Nodes.push(errorNode);
result.Nodes.push(optionNode);
return result.GetMessages();
}
}
exports.ErrorMessageInstruction = ErrorMessageInstruction;
//# sourceMappingURL=ErrorMessageInstruction.js.map