12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- 'use strict';
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- /**
- * Licensed Materials - Property of IBM
- * IBM Business Analytics (C) Copyright IBM Corp. 2020
- * US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- */
- /**
- * @class Renderer
- * @hideconstructor
- * @classdesc API class that is used to provide a renderer provider extension point
- */
- define(['../../../lib/@waca/dashboard-common/dist/core/APIFactory', './api/ReactRendererAPI'], function (APIFactory, ReactRendererAPI) {
- var TooltipRenderer = function () {
- function TooltipRenderer(options) {
- _classCallCheck(this, TooltipRenderer);
- this._api = APIFactory.createAPI(this, [ReactRendererAPI]);
- this._providers = [];
- this._features = options.features;
- }
- TooltipRenderer.prototype.registerProvider = function registerProvider(provider) {
- if (this._providers.indexOf(provider) === -1 && typeof provider.getComponent === 'function') {
- this._providers.push(provider);
- }
- };
- TooltipRenderer.prototype.deregisterProvider = function deregisterProvider(provider) {
- var idx = this._providers.indexOf(provider);
- if (idx !== -1) {
- this._providers.splice(idx, 1);
- }
- };
- TooltipRenderer.prototype.getAPI = function getAPI() {
- return this._api;
- };
- TooltipRenderer.prototype.canRender = function canRender() {
- return this._providers.length > 0;
- };
- TooltipRenderer.prototype.getComponentList = function getComponentList(state) {
- var contentList = [];
- if (this._providers.length > 0) {
- for (var i = 0; i < this._providers.length; i++) {
- var component = void 0;
- try {
- component = this._providers[i].getComponent(state);
- } catch (error) {
- this._features['Logger'].error('Renderer error ', error);
- }
- if (component) {
- contentList.push(component);
- }
- }
- }
- return contentList;
- };
- return TooltipRenderer;
- }();
- return TooltipRenderer;
- });
- //# sourceMappingURL=Renderer.js.map
|