useFixedInfo.js 804 B

1234567891011121314151617181920
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = useFixedInfo;
  7. var _useMemo = _interopRequireDefault(require("rc-util/lib/hooks/useMemo"));
  8. var _isEqual = _interopRequireDefault(require("rc-util/lib/isEqual"));
  9. var _fixUtil = require("../utils/fixUtil");
  10. function useFixedInfo(flattenColumns, stickyOffsets, direction) {
  11. var fixedInfoList = flattenColumns.map(function (_, colIndex) {
  12. return (0, _fixUtil.getCellFixedInfo)(colIndex, colIndex, flattenColumns, stickyOffsets, direction);
  13. });
  14. return (0, _useMemo.default)(function () {
  15. return fixedInfoList;
  16. }, [fixedInfoList], function (prev, next) {
  17. return !(0, _isEqual.default)(prev, next);
  18. });
  19. }