useTitleColumns.js 939 B

12345678910111213141516171819202122232425
  1. "use strict";
  2. var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var React = _interopRequireWildcard(require("react"));
  8. var _util = require("../util");
  9. const fillTitle = (columns, columnTitleProps) => {
  10. const finalColumns = columns.map(column => {
  11. const cloneColumn = Object.assign({}, column);
  12. cloneColumn.title = (0, _util.renderColumnTitle)(column.title, columnTitleProps);
  13. if ('children' in cloneColumn) {
  14. cloneColumn.children = fillTitle(cloneColumn.children, columnTitleProps);
  15. }
  16. return cloneColumn;
  17. });
  18. return finalColumns;
  19. };
  20. const useTitleColumns = columnTitleProps => {
  21. const filledColumns = React.useCallback(columns => fillTitle(columns, columnTitleProps), [columnTitleProps]);
  22. return [filledColumns];
  23. };
  24. var _default = exports.default = useTitleColumns;