fixed-data-table-2
Advanced tools
Comparing version 0.7.13 to 0.7.14
@@ -187,2 +187,10 @@ <!-- File generated from "src/FixedDataTable.js" --> | ||
### `rowKeyGetter` | ||
If specified, `rowKeyGetter(index)` is called for each row and the | ||
returned value overrides `key` for the particular row. | ||
type: `func` | ||
### `groupHeaderHeight` | ||
@@ -189,0 +197,0 @@ |
@@ -718,3 +718,4 @@ 'use strict'; | ||
/*number*/deltaX) { | ||
var reorderingData = this.state.columnReorderingData; | ||
//NOTE Need to clone this object when use pureRendering | ||
var reorderingData = _extends({}, this.state.columnReorderingData); | ||
reorderingData.dragDistance = deltaX; | ||
@@ -721,0 +722,0 @@ reorderingData.columnBefore = undefined; |
@@ -29,2 +29,6 @@ 'use strict'; | ||
var _shallowEqual = require('./shallowEqual'); | ||
var _shallowEqual2 = _interopRequireDefault(_shallowEqual); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
@@ -100,3 +104,8 @@ | ||
*/ | ||
left: PropTypes.number | ||
left: PropTypes.number, | ||
/** | ||
* Flag for enhanced performance check | ||
*/ | ||
pureRendering: PropTypes.bool | ||
}, | ||
@@ -112,3 +121,33 @@ | ||
shouldComponentUpdate: function shouldComponentUpdate(nextProps) { | ||
return !nextProps.isScrolling || this.props.rowIndex !== nextProps.rowIndex; | ||
if (nextProps.isScrolling && this.props.rowIndex === nextProps.rowIndex) { | ||
return false; | ||
} | ||
//Performance check not enabled | ||
if (!nextProps.pureRendering) { | ||
return true; | ||
} | ||
var _props = this.props, | ||
oldCell = _props.cell, | ||
oldIsScrolling = _props.isScrolling, | ||
oldProps = _objectWithoutProperties(_props, ['cell', 'isScrolling']); | ||
var newCell = nextProps.cell, | ||
newIsScrolling = nextProps.isScrolling, | ||
newProps = _objectWithoutProperties(nextProps, ['cell', 'isScrolling']); | ||
if (!(0, _shallowEqual2.default)(oldProps, newProps)) { | ||
return true; | ||
} | ||
if (!oldCell || !newCell || oldCell.type !== newCell.type) { | ||
return true; | ||
} | ||
if (!(0, _shallowEqual2.default)(oldCell.props, newCell.props)) { | ||
return true; | ||
} | ||
return false; | ||
}, | ||
@@ -188,7 +227,7 @@ componentWillReceiveProps: function componentWillReceiveProps(props) { | ||
render: function render() /*object*/{ | ||
var _props = this.props, | ||
height = _props.height, | ||
width = _props.width, | ||
columnKey = _props.columnKey, | ||
props = _objectWithoutProperties(_props, ['height', 'width', 'columnKey']); | ||
var _props2 = this.props, | ||
height = _props2.height, | ||
width = _props2.width, | ||
columnKey = _props2.columnKey, | ||
props = _objectWithoutProperties(_props2, ['height', 'width', 'columnKey']); | ||
@@ -195,0 +234,0 @@ var style = { |
@@ -140,2 +140,4 @@ /** | ||
var className = columnProps.cellClassName; | ||
var pureRendering = columnProps.pureRendering || false; | ||
return _React2.default.createElement(_FixedDataTableCell2.default, { | ||
@@ -160,3 +162,4 @@ isScrolling: this.props.isScrolling, | ||
cell: columnProps.cell, | ||
columnGroupWidth: columnGroupWidth | ||
columnGroupWidth: columnGroupWidth, | ||
pureRendering: pureRendering | ||
}); | ||
@@ -163,0 +166,0 @@ }, |
@@ -170,3 +170,9 @@ 'use strict'; | ||
*/ | ||
allowCellsRecycling: PropTypes.bool | ||
allowCellsRecycling: PropTypes.bool, | ||
/** | ||
* Flag to enable performance check when rendering. Stops the component from | ||
* rendering if none of it's passed in props have changed | ||
*/ | ||
pureRendering: PropTypes.bool | ||
}, | ||
@@ -173,0 +179,0 @@ |
@@ -39,3 +39,3 @@ /** | ||
FixedDataTableRoot.version = '0.7.13'; | ||
FixedDataTableRoot.version = '0.7.14'; | ||
module.exports = FixedDataTableRoot; |
{ | ||
"name": "fixed-data-table-2", | ||
"version": "0.7.13", | ||
"version": "0.7.14", | ||
"description": "A React table component designed to allow presenting thousands of rows of data.", | ||
@@ -5,0 +5,0 @@ "main": "main.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
111
822890
17952
6
1