38 lines
1.0 KiB
TypeScript
38 lines
1.0 KiB
TypeScript
|
import type { CSSObject } from '../../_util/cssinjs';
|
||
|
import { textEllipsis } from '../../_style';
|
||
|
import type { GenerateStyle } from '../../theme/internal';
|
||
|
import type { TableToken } from './index';
|
||
|
|
||
|
const genEllipsisStyle: GenerateStyle<TableToken, CSSObject> = token => {
|
||
|
const { componentCls } = token;
|
||
|
return {
|
||
|
[`${componentCls}-wrapper`]: {
|
||
|
[`${componentCls}-cell-ellipsis`]: {
|
||
|
...textEllipsis,
|
||
|
wordBreak: 'keep-all',
|
||
|
|
||
|
// Fixed first or last should special process
|
||
|
[`
|
||
|
&${componentCls}-cell-fix-left-last,
|
||
|
&${componentCls}-cell-fix-right-first
|
||
|
`]: {
|
||
|
overflow: 'visible',
|
||
|
[`${componentCls}-cell-content`]: {
|
||
|
display: 'block',
|
||
|
overflow: 'hidden',
|
||
|
textOverflow: 'ellipsis',
|
||
|
},
|
||
|
},
|
||
|
|
||
|
[`${componentCls}-column-title`]: {
|
||
|
overflow: 'hidden',
|
||
|
textOverflow: 'ellipsis',
|
||
|
wordBreak: 'keep-all',
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
};
|
||
|
};
|
||
|
|
||
|
export default genEllipsisStyle;
|