UNPKG

@wcardinal/wcardinal-geditor

Version:

WebGL-based graphic editor, tester and viewer for supervisory systems

165 lines 6.76 kB
import { __extends } from "tslib"; import { DDialogProcessing } from "@wcardinal/wcardinal-ui"; var EDialogProcessing = /** @class */ (function (_super) { __extends(EDialogProcessing, _super); function EDialogProcessing() { return _super !== null && _super.apply(this, arguments) || this; } EDialogProcessing.prototype.toReasonMalformedLabel = function (target) { switch (target) { case "uid": return "An ID"; case "password": return "A password"; case "description": return "A description"; case "name": return "A name"; case "label": return "A label"; case "summary": return "A summary"; default: return "Something"; } }; EDialogProcessing.prototype.toReasonMalformedRange = function (target) { switch (target) { case "uid": return { lower: 1, upper: 32 }; case "password": return { lower: 6, upper: 32 }; case "description": return { lower: 0, upper: 256 }; case "name": return { lower: 1, upper: 32 }; case "label": return { lower: 0, upper: 16 }; case "summary": return { lower: 0, upper: 32 }; default: return { lower: 1, upper: 32 }; } }; EDialogProcessing.prototype.toReasonMalformed = function (at, target, reason) { var label = this.toReasonMalformedLabel(target); switch (reason) { case "short": case "long": var range = this.toReasonMalformedRange(target); return "Failed to save '".concat(at, "'.\n").concat(label, " must be of ").concat(range.lower, " to ").concat(range.upper, "\ncharacters long."); case "simple": return "Failed to save '".concat(at, "'.\n").concat(label, " must contain letters (A-Za-z_)\nand digits (0-9)."); case "slash": return "Failed to save '".concat(at, "'.\n").concat(label, " must not contain the slash mark (/)."); case "non-alphanumeric": return ("Failed to save '".concat(at, "'.\n").concat(label, " must contain only letters (A-Za-z_),\n") + "digits (0-9) and a sharp symbol (#)."); default: return "Failed to save '".concat(at, "'.\n").concat(label, " is invalid."); } }; EDialogProcessing.prototype.toReasonTarget = function (at, target, targetLabel) { if (target != null) { return "Failed to save '".concat(at, "'.\n").concat(targetLabel, " '").concat(target, "' does not exit."); } else { return "Failed to save '".concat(at, "'.\n").concat(targetLabel, " is missing."); } }; EDialogProcessing.prototype.toReasonTargetAt = function (at, target, atLabel, targetLabel) { if (target != null) { return "Failed to save.\n".concat(atLabel, " '").concat(at, "'\nrequires ").concat(targetLabel, " '").concat(target, "'."); } else { return "Failed to save.\n".concat(atLabel, " '").concat(at, "'\nrequires ").concat(targetLabel, "."); } }; EDialogProcessing.prototype.toReason = function (reason) { if (reason == null) { return undefined; } else { if (0 < reason.length && reason[0] === "{") { try { var parsed = JSON.parse(reason); switch (parsed.id) { case "no-sensor-found": return this.toReasonTarget(parsed.at, parsed.target, "Sensor"); case "no-device-model-found": return this.toReasonTarget(parsed.at, parsed.target, "Device model"); case "malformed": return this.toReasonMalformed(parsed.at, parsed.target, parsed.reason); case "invalid-operation-mode": return "Failed to save.\nInvalid operation mode."; case "no-graphic-found": return this.toReasonTargetAt(parsed.at, parsed.target, "A graphic sensor mapping", "a graphic"); case "no-alarm-list-found": return this.toReasonTargetAt(parsed.at, parsed.target, "An alarm mapping", "an alarm list"); case "no-trend-graph-found": return this.toReasonTargetAt(parsed.at, parsed.target, "A trend graph sensor mapping", "a trend graph"); } } catch (_a) { return undefined; } } else { switch (reason) { case "duplication": return "Failed to save.\nThe name has already been used."; case "duplications": return "Failed to save.\nIDs must be unique."; case "invalid-operation-mode": return "Failed to save.\nInvalid operation mode."; case "validation": return "A validation error has occurred."; case "validation-fail": return "A validation failed."; } } } return undefined; }; EDialogProcessing.prototype.toButtonText = function (reason) { if (reason === "validation" || reason === "validation-fail" || reason != undefined) { return "OK"; } return "Save"; }; EDialogProcessing.prototype.reject = function (reason) { _super.prototype.reject.call(this, this.toReason(reason)); // Button text var footer = this.footer; if (footer) { var buttonOk = footer.buttonOk; if (buttonOk) { buttonOk.text = this.toButtonText(reason); } } }; return EDialogProcessing; }(DDialogProcessing)); export { EDialogProcessing }; //# sourceMappingURL=e-dialog-processing.js.map