linkmore-design
Version:
π πlmη»δ»ΆεΊγπ
53 lines β’ 1.99 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import { useSortable } from '@dnd-kit/sortable';
import { CSS } from '@dnd-kit/utilities';
import React from 'react';
import Handle from "./Item/components/Handle";
export default function HeaderCellContent(props) {
var column = props.column,
children = props.children,
openRowGroup = props.openRowGroup,
openColGroup = props.openColGroup,
rowSort = props.rowSort;
var _ref = column || {},
_ref$rowGroup = _ref.rowGroup,
rowGroup = _ref$rowGroup === void 0 ? false : _ref$rowGroup,
_ref$colGroup = _ref.colGroup,
colGroup = _ref$colGroup === void 0 ? false : _ref$colGroup,
_ref$title = _ref.title,
title = _ref$title === void 0 ? '' : _ref$title,
key = _ref.key;
var _useSortable = useSortable({
id: rowSort ? key : title
}),
attributes = _useSortable.attributes,
listeners = _useSortable.listeners,
setNodeRef = _useSortable.setNodeRef,
transform = _useSortable.transform,
transition = _useSortable.transition,
isDragging = _useSortable.isDragging;
var style = _objectSpread(_objectSpread({}, props.style), {}, {
transform: CSS.Transform.toString(transform && _objectSpread(_objectSpread({}, transform), {}, {
scaleY: 1
})),
transition: transition
}, isDragging ? {
position: 'relative',
zIndex: 9999
} : {});
var isShow = openRowGroup && rowGroup || openColGroup && colGroup || rowSort;
return key ? /*#__PURE__*/React.createElement("th", _extends({
style: style,
ref: setNodeRef
}, attributes), /*#__PURE__*/React.createElement("div", {
style: {
display: 'flex',
alignItems: 'center'
}
}, /*#__PURE__*/React.createElement("div", {
style: {
flex: 1
}
}, children), isShow && /*#__PURE__*/React.createElement(Handle, listeners))) : /*#__PURE__*/React.createElement("th", props, children);
}