UNPKG

ekko

Version:
50 lines (41 loc) 1.45 kB
import "core-js/modules/es6.function.name"; function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } import React from 'react'; import Cell from './Cell'; class Row extends React.PureComponent { constructor(...args) { var _temp; return _temp = super(...args), _defineProperty(this, "handleRowChange", (value, updater) => { const _this$props = this.props, id = _this$props.id, onRowChange = _this$props.onRowChange, data = _this$props.data; if (onRowChange) { onRowChange(id, updater(value, data)); } }), _temp; } componentWillReceiveProps(nextProps) { Object.keys(nextProps).forEach(key => { if (nextProps[key] !== this.props[key]) { console.log(`\t[Row]: Prop ${key} changed`); } }); } render() { const _this$props2 = this.props, columns = _this$props2.columns, data = _this$props2.data; console.log('[Row]: render'); return columns.map(column => React.createElement(Cell, { key: column.name, value: column.getter(data), render: column.render, updater: column.updater, editor: column.editor, editorDisplay: column.editorDisplay, onCellUpdate: this.handleRowChange })); } } export default Row;