1+ import type { TriggerProps } from '@rc-component/trigger' ;
2+ import Trigger from '@rc-component/trigger' ;
3+ import type { ActionType , AlignType , AnimationType } from '@rc-component/trigger/lib/interface' ;
14import * as React from 'react' ;
2- import { useRef , useImperativeHandle , forwardRef } from 'react' ;
3- import Trigger from 'rc-trigger' ;
4- import type { TriggerProps } from 'rc-trigger' ;
5- import type { AlignType , AnimationType , ActionType } from 'rc-trigger/lib/interface' ;
5+ import { forwardRef , useImperativeHandle , useRef } from 'react' ;
66import { placements } from './placements' ;
77import Popup from './Popup' ;
88
@@ -26,11 +26,7 @@ export interface TooltipProps extends Pick<TriggerProps, 'onPopupAlign' | 'built
2626 mouseEnterDelay ?: number ;
2727 mouseLeaveDelay ?: number ;
2828 getTooltipContainer ?: ( node : HTMLElement ) => HTMLElement ;
29- destroyTooltipOnHide ?:
30- | boolean
31- | {
32- keepParent ?: boolean ;
33- } ;
29+ destroyTooltipOnHide ?: boolean ;
3430 align ?: AlignType ;
3531 showArrow ?: boolean ;
3632 arrowContent ?: React . ReactNode ;
@@ -77,28 +73,11 @@ const Tooltip = (props: TooltipProps, ref) => {
7773 }
7874
7975 const getPopupElement = ( ) => (
80- < Popup
81- showArrow = { showArrow }
82- arrowContent = { arrowContent }
83- key = "content"
84- prefixCls = { prefixCls }
85- id = { id }
86- overlayInnerStyle = { overlayInnerStyle }
87- >
76+ < Popup key = "content" prefixCls = { prefixCls } id = { id } overlayInnerStyle = { overlayInnerStyle } >
8877 { overlay }
8978 </ Popup >
9079 ) ;
9180
92- let destroyTooltip = false ;
93- let autoDestroy = false ;
94- if ( typeof destroyTooltipOnHide === 'boolean' ) {
95- destroyTooltip = destroyTooltipOnHide ;
96- } else if ( destroyTooltipOnHide && typeof destroyTooltipOnHide === 'object' ) {
97- const { keepParent } = destroyTooltipOnHide ;
98- destroyTooltip = keepParent === true ;
99- autoDestroy = keepParent === false ;
100- }
101-
10281 return (
10382 < Trigger
10483 popupClassName = { overlayClassName }
@@ -116,11 +95,11 @@ const Tooltip = (props: TooltipProps, ref) => {
11695 popupAnimation = { animation }
11796 popupMotion = { motion }
11897 defaultPopupVisible = { defaultVisible }
119- destroyPopupOnHide = { destroyTooltip }
120- autoDestroy = { autoDestroy }
98+ autoDestroy = { destroyTooltipOnHide }
12199 mouseLeaveDelay = { mouseLeaveDelay }
122100 popupStyle = { overlayStyle }
123101 mouseEnterDelay = { mouseEnterDelay }
102+ arrow = { showArrow }
124103 { ...extraProps }
125104 >
126105 { children }
0 commit comments