@centreon/react-components
Version:
react components used by centreon web frontend
139 lines (105 loc) • 5.15 kB
JavaScript
;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf3 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _IconAction = _interopRequireDefault(require("../Icon/IconAction"));
var _TableCounter = _interopRequireDefault(require("./TableCounter"));
var _table = _interopRequireDefault(require("./table.scss"));
var _Pagination = _interopRequireDefault(require("../Pagination"));
/* eslint-disable prettier/prettier */
/* eslint-disable no-case-declarations */
/* eslint-disable react/no-array-index-key */
/* eslint-disable react/jsx-filename-extension */
/* eslint-disable react/prop-types */
var Table =
/*#__PURE__*/
function (_Component) {
(0, _inherits2["default"])(Table, _Component);
function Table() {
var _getPrototypeOf2;
var _this;
(0, _classCallCheck2["default"])(this, Table);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = (0, _possibleConstructorReturn2["default"])(this, (_getPrototypeOf2 = (0, _getPrototypeOf3["default"])(Table)).call.apply(_getPrototypeOf2, [this].concat(args)));
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onHeaderFieldClicked", function (key) {
console.log(key);
});
return _this;
}
(0, _createClass2["default"])(Table, [{
key: "render",
value: function render() {
var _this2 = this;
var _this$props = this.props,
fields = _this$props.fields,
data = _this$props.data,
pagination = _this$props.pagination;
return _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement("table", {
className: (0, _classnames["default"])(_table["default"].table, _table["default"]['table-striped'])
}, _react["default"].createElement("thead", null, _react["default"].createElement("tr", null, fields.map(function (field, index) {
return _react["default"].createElement("th", {
key: "tableHeader".concat(index),
scope: "col",
onClick: _this2.onHeaderFieldClicked.bind(_this2, field.key)
}, field.label);
}), pagination ? _react["default"].createElement("th", null, _react["default"].createElement(_TableCounter["default"], {
number: "30"
})) : null)), _react["default"].createElement("tbody", null, data ? data.map(function (row, rowIndex) {
return _react["default"].createElement("tr", {
key: "tableRow".concat(rowIndex)
}, fields.map(function (_ref, index) {
var type = _ref.type,
key = _ref.key,
values = _ref.values;
var subComponent = _react["default"].createElement("td", {
key: "tableRow".concat(rowIndex, "Cell").concat(index)
});
switch (type) {
case 'icon':
var actionIconValue = values[row[key]];
subComponent = _react["default"].createElement("td", {
key: "tableRow".concat(rowIndex, "Cell").concat(index)
}, _react["default"].createElement(_IconAction["default"], {
iconActionType: actionIconValue.icon,
iconColor: actionIconValue.color
}));
break;
case 'string':
subComponent = _react["default"].createElement("td", {
key: "tableRow".concat(rowIndex, "Cell").concat(index)
}, row[key]);
break;
default:
}
return subComponent;
}), pagination ? _react["default"].createElement("td", {
key: "tablePagination".concat(rowIndex)
}) : null);
}) : [])), _react["default"].createElement("div", {
className: (0, _classnames["default"])(_table["default"]['text-center'])
}, _react["default"].createElement(_Pagination["default"], {
pageCount: 14,
onPageChange: function onPageChange(page) {
console.log(page);
}
})));
}
}]);
return Table;
}(_react.Component);
var _default = Table;
exports["default"] = _default;