Repository URL to install this package:
|
Version:
0.4.21 ▾
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
import _createClass from "@babel/runtime/helpers/esm/createClass";
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
import _inherits from "@babel/runtime/helpers/esm/inherits";
import React, { Component } from 'react';
import { get, isUndefined, isEmpty, isString } from 'lodash';
import './PropertyList.css';
var PropertyRow =
/*#__PURE__*/
function (_Component) {
_inherits(PropertyRow, _Component);
function PropertyRow() {
var _getPrototypeOf2;
var _this;
_classCallCheck(this, PropertyRow);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(PropertyRow)).call.apply(_getPrototypeOf2, [this].concat(args)));
_this.defaultDataFn = function (dataField, obj) {
return get(obj, dataField, undefined);
};
_this.defaultFormatter = function (dataObject) {
if (dataObject) {
return dataObject.toString();
}
return null;
};
return _this;
}
_createClass(PropertyRow, [{
key: "render",
value: function render() {
var data = this.props.data;
var label = this.props.label;
var dataField = this.props.dataField;
var dataFn = typeof dataField === 'function' ? dataField : this.defaultDataFn;
var dataFormatter = this.props.dataFormatter || this.defaultFormatter;
var labelFormatter = this.props.labelFormatter || this.defaultFormatter;
var dataValue = dataFn(dataField, data);
if (isUndefined(dataValue) || dataValue === null || isString(dataValue) && isEmpty(dataValue.trim())) {
return null;
}
return React.createElement("div", {
key: "def-".concat(label)
}, React.createElement("dt", {
className: "propertyLabel"
}, labelFormatter(label)), React.createElement("dd", {
className: "propertyValue"
}, dataFormatter(dataValue)));
}
}]);
return PropertyRow;
}(Component);
export default PropertyRow;
//# sourceMappingURL=PropertyRow.js.map