UNPKG

@microsoft/sp-webpart-base

Version:

SharePoint Framework support for building web parts

55 lines 2.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var Strings_resx_1 = tslib_1.__importDefault(require("./loc/Strings.resx")); var cswp_base_module_scss_1 = tslib_1.__importDefault(require("./styles/cswp-base.module.scss")); var ErrorMessage_1 = tslib_1.__importDefault(require("./ErrorMessage")); /** * The error friendly component used for rendering webpart errors. */ var FriendlyErrorMessage = /** @class */ (function () { function FriendlyErrorMessage(props) { this._toggleExpandedDetails = this._toggleExpandedDetails.bind(this); this._errorMessage = new ErrorMessage_1.default(props).render(); this._errorMessage.style.display = 'none'; } FriendlyErrorMessage.prototype.render = function () { // Create container element and append children components var container = document.createElement('div'); container.className = cswp_base_module_scss_1.default.errorBox; // Header text var headerContainer = document.createElement('div'); var header = document.createElement('h2'); header.className = cswp_base_module_scss_1.default.somethingWentWrongText; header.innerText = Strings_resx_1.default.WebpartErrorSomethingWentWrong; headerContainer.appendChild(header); container.appendChild(header); // Supporting text var siteAdminText = document.createElement('span'); siteAdminText.className = cswp_base_module_scss_1.default.siteAdminText; siteAdminText.innerText = Strings_resx_1.default.WebpartErrorSiteAdminAdvice; container.appendChild(siteAdminText); // Button to reveal more details var buttonContainer = document.createElement('div'); var techDetailsButton = document.createElement('button'); techDetailsButton.className = cswp_base_module_scss_1.default.detailsButton; techDetailsButton.innerText = Strings_resx_1.default.WebpartErrorTechnicalDetails; techDetailsButton.onclick = this._toggleExpandedDetails; buttonContainer.appendChild(techDetailsButton); container.appendChild(buttonContainer); // Detailed information that is initially hiddren. Display is toggled with button above. container.appendChild(this._errorMessage); return container; }; FriendlyErrorMessage.prototype._toggleExpandedDetails = function () { if (this._errorMessage.style.display === 'none') { this._errorMessage.style.display = ''; } else { this._errorMessage.style.display = 'none'; } }; return FriendlyErrorMessage; }()); exports.default = FriendlyErrorMessage; //# sourceMappingURL=FriendlyErrorMessage.js.map