UNPKG

react-application-core

Version:

A react-based application core for the business applications.

88 lines 4.03 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.ToolbarTools = void 0; var React = require("react"); var util_1 = require("../../util"); var generic_component_1 = require("../base/generic.component"); var definition_1 = require("../../definition"); var button_1 = require("../button"); /** * @component-impl * @stable [01.08.2020] * * Please use the "Mappers.toolbarToolsProps" */ var ToolbarTools = /** @class */ (function (_super) { __extends(ToolbarTools, _super); function ToolbarTools() { var _a; var _this = _super !== null && _super.apply(this, arguments) || this; /** * @stable [01.08.2020] */ _this.defaultActions = (_a = {}, _a[definition_1.ToolbarToolsEnum.FILTER] = { icon: definition_1.IconsEnum.FILTER, onClick: _this.originalProps.onFilterClick, }, _a[definition_1.ToolbarToolsEnum.DOWNLOAD_FILE] = { icon: definition_1.IconsEnum.FILE_DOWNLOAD, onClick: _this.originalProps.onDownloadFileClick, }, _a[definition_1.ToolbarToolsEnum.REFRESH] = { icon: definition_1.IconsEnum.SYNC, onClick: _this.originalProps.onRefreshClick, }, _a); return _this; } /** * @stable [01.08.2020] */ ToolbarTools.prototype.render = function () { var _this = this; var originalProps = this.originalProps; var actions = originalProps.actions, activeTools = originalProps.activeTools, className = originalProps.className, disabled = originalProps.disabled, leftContent = originalProps.leftContent, rightContent = originalProps.rightContent; return (React.createElement("div", { ref: this.actualRef, className: util_1.ClsUtils.joinClassName(definition_1.ToolbarToolsClassesEnum.TOOLBAR_TOOLS, util_1.CalcUtils.calc(className), util_1.WrapperUtils.isFull(originalProps) && definition_1.ToolbarToolsClassesEnum.FULL_TOOLBAR_TOOLS) }, leftContent, actions.map(function (cfg, index) { var cfgAsPrimitive = cfg; var actionProps = util_1.TypeUtils.isPrimitive(cfg) ? _this.defaultActions[cfgAsPrimitive] : cfg; return (React.createElement(button_1.Button, __assign({ key: "action-" + index + "-key", disabled: disabled, className: util_1.ClsUtils.joinClassName((activeTools || []).includes(cfgAsPrimitive) && definition_1.ToolbarToolsClassesEnum.TOOLBAR_TOOLS_ACTIVE_TOOL) }, actionProps))); }), rightContent)); }; ToolbarTools.defaultProps = { actions: [definition_1.ToolbarToolsEnum.REFRESH], full: false, }; return ToolbarTools; }(generic_component_1.GenericComponent)); exports.ToolbarTools = ToolbarTools; //# sourceMappingURL=toolbar-tools.component.js.map