mirror of
https://github.com/ant-design/ant-design.git
synced 2024-12-13 15:49:10 +08:00
395c549049
* chore: init measure * chore: out of space * refactor: Multiple render * chore: auto cut * feat: render split * fix: ellipsis logic of suffix * fix: ref missing * fix: Tooltip missing * test: snapshot * chore: opt for textarea * test: back part of ellipsis * chore: back of ellipsis logic * ellipsis logic * fix: init ellipsis measure * fix: ellipsis event * chore: clean up * test: Update snapshot * fix: test * test: Update snapshot * chore: lazy ellipsis * fix: check css ellipsis logic * test: Update snapshot * test: back of coverage * chore: clean up * test: ignore else * test: clean up
33 lines
649 B
TypeScript
33 lines
649 B
TypeScript
import * as React from 'react';
|
|
import Tooltip from '../../tooltip';
|
|
|
|
export interface EllipsisTooltipProps {
|
|
title?: React.ReactNode;
|
|
enabledEllipsis: boolean;
|
|
isEllipsis?: boolean;
|
|
children: React.ReactElement;
|
|
}
|
|
|
|
const EllipsisTooltip = ({
|
|
title,
|
|
enabledEllipsis,
|
|
isEllipsis,
|
|
children,
|
|
}: EllipsisTooltipProps) => {
|
|
if (!title || !enabledEllipsis) {
|
|
return children;
|
|
}
|
|
|
|
return (
|
|
<Tooltip title={title} visible={isEllipsis ? undefined : false}>
|
|
{children}
|
|
</Tooltip>
|
|
);
|
|
};
|
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
EllipsisTooltip.displayName = 'EllipsisTooltip';
|
|
}
|
|
|
|
export default EllipsisTooltip;
|