UNPKG

ajsfw

Version:
95 lines (94 loc) 4.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var ProgressBar_1 = require("./ProgressBar"); var RenderTarget_1 = require("./RenderTarget"); var ErrorScreen = (function () { function ErrorScreen() { } ErrorScreen.setDOMElement = function (errorScreenElementId) { ErrorScreen._error = null; ErrorScreen._errorScreen = document.getElementById(errorScreenElementId); ErrorScreen._label = document.getElementById(errorScreenElementId + "Label"); ErrorScreen._errorLabel = document.getElementById(errorScreenElementId + "ErrorLabel"); ErrorScreen._userAction = document.getElementById(errorScreenElementId + "UserAction"); ErrorScreen._message = document.getElementById(errorScreenElementId + "ErrorMessage"); ErrorScreen._stackTrace = document.getElementById(errorScreenElementId + "StackTrace"); if (!ErrorScreen._checkDOM()) { window.console.error("Invalid error screen DOM specification!"); } }; ErrorScreen.hide = function () { if (!ErrorScreen._checkDOM()) { return; } ErrorScreen._errorScreen.style.display = "none"; ErrorScreen._label.innerHTML = ""; ErrorScreen._label.style.display = "none"; ErrorScreen._errorLabel.innerHTML = ""; ErrorScreen._errorLabel.style.display = "none"; ErrorScreen._userAction.innerHTML = ""; ErrorScreen._userAction.style.display = "none"; ErrorScreen._message.innerHTML = ""; ErrorScreen._message.style.display = "none"; ErrorScreen._stackTrace.innerHTML = ""; ErrorScreen._stackTrace.style.display = "none"; }; ErrorScreen.show = function (error) { if (!ErrorScreen._checkDOM()) { return false; } ProgressBar_1.ProgressBar.hide(); RenderTarget_1.RenderTarget.hide(); ErrorScreen.hide(); ErrorScreen._errorScreen.style.display = ""; for (var key in error) { if (error.hasOwnProperty(key)) { ErrorScreen._setContent(error, key); } } return true; }; ErrorScreen._setContent = function (error, key) { switch (key) { case "label": ErrorScreen._label.style.display = ""; ErrorScreen._label.innerHTML = error[key]; break; case "errorCode": case "errorLabel": var lbl; var cde = error.errorCode ? error.errorCode : ""; if (cde !== "") { lbl = error.errorLabel ? error.errorLabel + " (" + cde + ")" : cde; } else { lbl = error.errorLabel ? error.errorLabel : cde; } ErrorScreen._errorLabel.style.display = ""; ErrorScreen._errorLabel.innerHTML = lbl; break; case "userAction": ErrorScreen._userAction.style.display = ""; ErrorScreen._userAction.innerHTML = error[key]; break; case "errorMessage": ErrorScreen._message.style.display = ""; ErrorScreen._message.innerHTML = error[key]; break; case "errorTrace": ErrorScreen._stackTrace.style.display = ""; ErrorScreen._stackTrace.innerHTML = error[key]; break; } }; ErrorScreen._checkDOM = function () { return !(ErrorScreen._errorScreen === undefined || ErrorScreen._errorScreen === null || ErrorScreen._label === undefined || ErrorScreen._label === null || ErrorScreen._errorLabel === undefined || ErrorScreen._errorLabel === null || ErrorScreen._userAction === undefined || ErrorScreen._userAction === null || ErrorScreen._message === undefined || ErrorScreen._message === null || ErrorScreen._stackTrace === undefined || ErrorScreen._stackTrace === null); }; return ErrorScreen; }()); exports.ErrorScreen = ErrorScreen;