mirror of
https://github.com/overleaf/overleaf.git
synced 2024-10-24 21:12:38 -04:00
c3ed95bc48
[web] BS5 projects table migration GitOrigin-RevId: 237bd8113c68d7fd1b66712f7361eb956b1e10e7
43 lines
1.1 KiB
TypeScript
43 lines
1.1 KiB
TypeScript
import Tooltip from '@/features/ui/components/bootstrap-5/tooltip'
|
|
import BS3Tooltip from '@/shared/components/tooltip'
|
|
import BootstrapVersionSwitcher from '@/features/ui/components/bootstrap-5/bootstrap-version-switcher'
|
|
|
|
type OLTooltipProps = React.ComponentProps<typeof Tooltip> & {
|
|
bs3Props?: Record<string, unknown>
|
|
}
|
|
|
|
function OLTooltip(props: OLTooltipProps) {
|
|
const { bs3Props, ...bs5Props } = props
|
|
|
|
const bs3TooltipProps: React.ComponentProps<typeof BS3Tooltip> = {
|
|
children: bs5Props.children,
|
|
id: bs5Props.id,
|
|
description: bs5Props.description,
|
|
overlayProps: {
|
|
placement: bs5Props.overlayProps?.placement,
|
|
},
|
|
...bs3Props,
|
|
}
|
|
|
|
if ('hidden' in bs5Props) {
|
|
bs3TooltipProps.hidden = bs5Props.hidden
|
|
}
|
|
|
|
const delay = bs5Props.overlayProps?.delay
|
|
if (delay && typeof delay !== 'number') {
|
|
bs3TooltipProps.overlayProps = {
|
|
...bs3TooltipProps.overlayProps,
|
|
delayShow: delay.show,
|
|
delayHide: delay.hide,
|
|
}
|
|
}
|
|
|
|
return (
|
|
<BootstrapVersionSwitcher
|
|
bs3={<BS3Tooltip {...bs3TooltipProps} />}
|
|
bs5={<Tooltip {...bs5Props} />}
|
|
/>
|
|
)
|
|
}
|
|
|
|
export default OLTooltip
|