UNPKG

@microsoft/sp-webpart-base

Version:

SharePoint Framework support for building web parts

148 lines 6.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.BaseWebPartHost = void 0; var sp_core_library_1 = require("@microsoft/sp-core-library"); var sp_edit_customer_promise_1 = require("@ms/sp-edit-customer-promise"); var sp_telemetry_1 = require("@ms/sp-telemetry"); var KillSwitches_1 = require("../../common/KillSwitches"); /** * BaseWebPartHost implements the IWebPartHost lifecycle methods as virtual no-op methods. * * @internal */ var BaseWebPartHost = /** @class */ (function () { function BaseWebPartHost(serviceScope) { this.serviceScope = serviceScope; } /** * @virtual */ BaseWebPartHost.prototype.onBeforeWebPartLoad = function (options) { sp_telemetry_1._PerformanceLogger.devMark("ClientSideWebPartManager.load(".concat(options.webPartTag, ").start")); sp_telemetry_1._PerformanceLogger.startMarkForComponent(options.webPartTag); return; }; /** * @virtual */ BaseWebPartHost.prototype.onAfterWebPartLoad = function (options) { sp_telemetry_1._PerformanceLogger.devMark("ClientSideWebPartManager.load(".concat(options.webPartTag, ").end")); sp_telemetry_1._PerformanceLogger.markComponentModuleLoaded(options.webPartTag); return; }; /** * @virtual */ BaseWebPartHost.prototype.onAfterWebPartLoadFailed = function (options, error) { sp_telemetry_1._PerformanceLogger.endFailureForComponent(options.webPartTag, 'Load', error, undefined /* resultType */, 'ViewMode WebPart Failure'); if (options.displayMode === sp_core_library_1.DisplayMode.Edit && !!options.manifest.isInternal && !!options.serviceScope) { this._logFailuresForEditCustomerPromise(options.manifest.alias, error, 'Load', options.serviceScope, 'WebPart Load Failure'); } return; }; /** * @virtual */ BaseWebPartHost.prototype.onBeforeWebPartInitializeOld = function (options) { sp_telemetry_1._PerformanceLogger.devMark("ClientSideWebPartManager.initialize(".concat(options.webPartTag, ").start")); return; }; /** * @virtual */ BaseWebPartHost.prototype.onBeforeWebPartInitialize = function (options) { sp_telemetry_1._PerformanceLogger.devMark("ClientSideWebPartManager.initialize(".concat(options.webPartTag, ").start")); return Promise.resolve(); }; /** * @virtual */ BaseWebPartHost.prototype.onAfterWebPartInitialize = function (options) { sp_telemetry_1._PerformanceLogger.devMark("ClientSideWebPartManager.initialize(".concat(options.webPartTag, ").end")); return; }; BaseWebPartHost.prototype.onAfterWebPartInitializeFailed = function (options, error) { sp_telemetry_1._PerformanceLogger.endFailureForComponent(options.webPartTag, 'Initialize', error); if (options.displayMode === sp_core_library_1.DisplayMode.Edit && !!options.manifest.isInternal && !!options.serviceScope) { this._logFailuresForEditCustomerPromise(options.manifest.alias, error, 'Initialize', options.serviceScope, 'WebPart Init Failure'); } return; }; /** * @virtual */ BaseWebPartHost.prototype.onBeforeWebPartRender = function (options) { sp_telemetry_1._PerformanceLogger.devMark("ClientSideWebPartManager.render(".concat(options.webPartTag, ").start")); return; }; /** * @virtual */ BaseWebPartHost.prototype.onAfterWebPartRender = function (options) { if (typeof options.renderCompleteTime === 'number') { sp_telemetry_1._PerformanceLogger.endMarkForComponentWithTimestamp(options.webPartTag, options.renderCompleteTime); } else { sp_telemetry_1._PerformanceLogger.endMarkForComponent(options.webPartTag); } return; }; BaseWebPartHost.prototype.onAfterWebPartRenderFailed = function (options, error) { sp_telemetry_1._PerformanceLogger.endFailureForComponent(options.webPartTag, 'Render', error); if (options.displayMode === sp_core_library_1.DisplayMode.Edit && !!options.manifest.isInternal && !!options.serviceScope) { if (!(0, KillSwitches_1.isAddMoreRenderErrorInfoKSActivated)()) { var err = ''; if (error.name) { err += 'name:' + error.name + ';'; } if (error.message) { err += 'msg:' + error.message + ';'; } if (options.webPartTag) { err += 'webPT:' + options.webPartTag + ';'; } if (options.domElement && options.domElement.title) { err += 'domTitle:' + options.domElement.title + ';'; } if (options.manifest && options.manifest.imagePreviewUrl) { err += 'previewImageUrl:' + options.manifest.imagePreviewUrl + ';'; } this._logFailuresForEditCustomerPromise(options.manifest.alias, error, 'Render', options.serviceScope, err, 'WebPart Render Failure'); } else { this._logFailuresForEditCustomerPromise(options.manifest.alias, error, 'Render', options.serviceScope); } } return; }; /** * @virtual */ BaseWebPartHost.prototype.onAudiencesChanged = function (instanceId, audiences) { // no-op }; BaseWebPartHost.prototype._logFailuresForEditCustomerPromise = function (alias, error, errorScenario, serviceScope, err, veto) { if (!(0, KillSwitches_1.isAddMoreRenderErrorInfoKSActivated)() && err) { var errorDetails = { errorCode: "WebPartBase ".concat(alias, " Failure"), errorMessage: err, errorScenario: errorScenario, errorStack: error === null || error === void 0 ? void 0 : error.stack, veto: veto }; (0, sp_edit_customer_promise_1._logFailuresForEditCustomerPromise)(errorDetails, serviceScope); } else { var errorDetails = { errorCode: "WebPartBase ".concat(alias, " Failure"), errorMessage: error.message, errorScenario: errorScenario, errorStack: error === null || error === void 0 ? void 0 : error.stack }; (0, sp_edit_customer_promise_1._logFailuresForEditCustomerPromise)(errorDetails, serviceScope); } }; return BaseWebPartHost; }()); exports.BaseWebPartHost = BaseWebPartHost; //# sourceMappingURL=BaseWebPartHost.js.map