UNPKG

react-application-core

Version:

A react-based application core for the business applications.

100 lines 4.79 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); }; var __spreadArrays = (this && this.__spreadArrays) || function () { for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; for (var r = Array(s), k = 0, i = 0; i < il; i++) for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) r[k] = a[j]; return r; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GridRow = void 0; var React = require("react"); var generic_component_1 = require("../../base/generic.component"); var util_1 = require("../../../util"); var definition_1 = require("../../../definition"); var GridRow = /** @class */ (function (_super) { __extends(GridRow, _super); /** * @stable [17.08.2020] * @param originalProps */ function GridRow(originalProps) { var _this = _super.call(this, originalProps) || this; _this.onClick = _this.onClick.bind(_this); return _this; } /** * @stable [23.10.2019] * @returns {JSX.Element} */ GridRow.prototype.render = function () { var _this = this; var originalProps = this.originalProps; var mergedProps = this.mergedProps; var entity = originalProps.entity, filter = originalProps.filter, group = originalProps.group, partOfGroup = originalProps.partOfGroup, selected = originalProps.selected; var isHovered = util_1.RowUtils.isHovered(mergedProps); var isOddHighlighted = util_1.RowUtils.isOddHighlighted(mergedProps); var isSelectable = util_1.RowUtils.isSelectable(originalProps); var isIndexed = util_1.RowUtils.isIndexed(originalProps); return (React.createElement(definition_1.UniversalScrollableContext.Consumer, null, function (selectedElementClassName) { return (React.createElement("tr", __assign({ ref: _this.actualRef, className: util_1.ClsUtils.joinClassName.apply(util_1.ClsUtils, __spreadArrays([definition_1.GridClassesEnum.ROW, _this.getOriginalClassName(mergedProps), filter && definition_1.GridClassesEnum.ROW_FILTER, group && definition_1.GridClassesEnum.ROW_GROUP, isHovered && definition_1.GridClassesEnum.ROW_HOVERED, isIndexed && definition_1.GridClassesEnum.ROW + "-" + entity.id, isOddHighlighted && definition_1.GridClassesEnum.ROW_ODD, isSelectable && definition_1.GridClassesEnum.ROW_SELECTABLE, originalProps.groupExpanded && 'rac-grid-row-group-expanded', originalProps.total && definition_1.GridClassesEnum.ROW_TOTAL, partOfGroup && definition_1.GridClassesEnum.ROW_PART_OF_GROUP], isSelectable && (selected ? [definition_1.GridClassesEnum.ROW_SELECTED, selectedElementClassName] : [definition_1.GridClassesEnum.ROW_UNSELECTED]) || [])) }, util_1.PropsUtils.buildClickHandlerProps(_this.onClick, isSelectable, false)), _this.originalChildren)); })); }; /** * @stable [19.07.2020] */ GridRow.prototype.onClick = function () { var _a = this.originalProps, entity = _a.entity, onClick = _a.onClick; if (util_1.TypeUtils.isFn(onClick)) { onClick(entity); } }; Object.defineProperty(GridRow.prototype, "componentsSettingsProps", { /** * @stable [17.08.2020] */ get: function () { return this.componentsSettings.gridRow; }, enumerable: false, configurable: true }); GridRow.defaultProps = { hovered: true, }; return GridRow; }(generic_component_1.GenericComponent)); exports.GridRow = GridRow; //# sourceMappingURL=grid-row.component.js.map