UNPKG

react-application-core

Version:

A react-based application core for the business applications.

99 lines 4.09 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Chart = void 0; var React = require("react"); var chart_js_1 = require("chart.js"); var generic_component_1 = require("../base/generic.component"); var util_1 = require("../../util"); var definition_1 = require("../../definition"); /** * @component-impl * @stable [18.12.2020] */ var Chart = /** @class */ (function (_super) { __extends(Chart, _super); function Chart() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.canvasRef = React.createRef(); return _this; } /** * @stable [18.12.2020] */ Chart.prototype.componentDidMount = function () { this.refresh(); }; /** * @stable [18.12.2020] */ Chart.prototype.componentDidUpdate = function () { this.refresh(); }; /** * @stable [18.12.2020] */ Chart.prototype.render = function () { var _a = this.originalProps, className = _a.className, east = _a.east, full = _a.full, rendered = _a.rendered, west = _a.west; var items = util_1.FilterUtils.objectValuesArrayFilter(west, rendered && React.createElement(React.Fragment, null), east); return (React.createElement("div", { ref: this.actualRef, className: util_1.ClsUtils.joinClassName(definition_1.ChartClassesEnum.CHART, full && definition_1.ChartClassesEnum.FULL_CHART, "" + definition_1.ChartClassesEnum.CHART_WITH_ITEMS_COUNT + items.length, util_1.CalcUtils.calc(className)) }, west && (React.createElement("div", { className: definition_1.ChartClassesEnum.CHART_WEST }, west)), rendered && (React.createElement("div", { className: definition_1.ChartClassesEnum.CHART_CANVAS_WRAPPER }, React.createElement("canvas", { ref: this.canvasRef }))), east && (React.createElement("div", { className: definition_1.ChartClassesEnum.CHART_EAST }, east)))); }; /** * @stable [18.12.2020] * @private */ Chart.prototype.refresh = function () { var _this = this; if (this.chartJs) { this.chartJs.destroy(); // It's too heavy to call an update() and update partially } util_1.ConditionUtils.ifNotNilThanValue(this.canvasRef.current, function (elId) { _this.chartJs = new chart_js_1.Chart(elId.getContext('2d'), __assign({ responsive: true, maintainAspectRatio: false }, _this.mergedProps.options)); }); }; Object.defineProperty(Chart.prototype, "componentsSettingsProps", { /** * @stable [18.12.2020] * @protected */ get: function () { return this.componentsSettings.chart; }, enumerable: false, configurable: true }); Chart.defaultProps = { full: true, rendered: true, }; return Chart; }(generic_component_1.GenericComponent)); exports.Chart = Chart; //# sourceMappingURL=chart.component.js.map