@microsoft/sp-webpart-base
Version:
SharePoint Framework support for building web parts
148 lines • 6.69 kB
JavaScript
;
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