UNPKG

wix-style-react

Version:
54 lines (53 loc) 2.16 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.getStickyColumnStyle = void 0; exports.virtualRowsAreEqual = virtualRowsAreEqual; var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _shallowequal = _interopRequireDefault(require("shallowequal")); var _DataTableSt = require("./DataTable.st.css"); var _excluded = ["style", "data", "index"], _excluded2 = ["style", "data", "index"], _excluded3 = ["data"], _excluded4 = ["data"]; function virtualRowsAreEqual(prevProps, nextProps) { var { style: prevStyle, data: prevData, index: prevIndex } = prevProps, prevRest = (0, _objectWithoutProperties2.default)(prevProps, _excluded); var { style: nextStyle, data: nextData, index: nextIndex } = nextProps, nextRest = (0, _objectWithoutProperties2.default)(nextProps, _excluded2); var { data: nextItemData } = nextData, restNextItemData = (0, _objectWithoutProperties2.default)(nextData, _excluded3); var { data: prevItemData } = prevData, restPrevItemData = (0, _objectWithoutProperties2.default)(prevData, _excluded4); return nextIndex === prevIndex && (0, _shallowequal.default)(prevStyle, nextStyle) && (0, _shallowequal.default)(prevItemData[prevIndex], nextItemData[nextIndex]) && (0, _shallowequal.default)(restPrevItemData, restNextItemData) && (0, _shallowequal.default)(prevRest, nextRest); } var CELL_PADDING = parseInt(_DataTableSt.stVars.cellHorizontalPadding, 10); var CELL_EDGE_PADDING = parseInt(_DataTableSt.stVars.cellHorizontalEdgePadding, 10); var getStickyColumnStyle = (columns, column) => { var left = 0; for (var i = 0; i < columns.length; i++) { var col = columns[i]; if (col === column) { break; } var horizontalPadding = i === 0 ? CELL_EDGE_PADDING + CELL_PADDING : 2 * CELL_PADDING; left += parseInt(col.width, 10) + horizontalPadding; } return { left }; }; exports.getStickyColumnStyle = getStickyColumnStyle; //# sourceMappingURL=DataTable.utils.js.map