2024-05-09 17:18:51 +08:00
|
|
|
import { memo } from 'react'
|
|
|
|
import ShortcutsName from '../shortcuts-name'
|
2024-08-26 13:00:02 +08:00
|
|
|
import Tooltip from '@/app/components/base/tooltip'
|
2024-05-09 17:18:51 +08:00
|
|
|
|
|
|
|
type TipPopupProps = {
|
|
|
|
title: string
|
|
|
|
children: React.ReactNode
|
|
|
|
shortcuts?: string[]
|
|
|
|
}
|
|
|
|
const TipPopup = ({
|
|
|
|
title,
|
|
|
|
children,
|
|
|
|
shortcuts,
|
|
|
|
}: TipPopupProps) => {
|
|
|
|
return (
|
2024-08-26 13:00:02 +08:00
|
|
|
<Tooltip
|
2024-05-09 17:18:51 +08:00
|
|
|
offset={4}
|
2024-12-17 12:20:49 +08:00
|
|
|
popupClassName='p-0 bg-transparent'
|
2024-05-09 17:18:51 +08:00
|
|
|
popupContent={
|
2025-03-21 17:41:03 +08:00
|
|
|
<div className='flex items-center gap-1 rounded-lg border-[0.5px] border-components-panel-border bg-components-tooltip-bg p-1.5 shadow-lg backdrop-blur-[5px]'>
|
2024-12-17 12:20:49 +08:00
|
|
|
<span className='system-xs-medium text-text-secondary'>{title}</span>
|
2024-05-09 17:18:51 +08:00
|
|
|
{
|
2024-12-17 12:20:49 +08:00
|
|
|
shortcuts && <ShortcutsName keys={shortcuts} />
|
2024-05-09 17:18:51 +08:00
|
|
|
}
|
|
|
|
</div>
|
|
|
|
}
|
|
|
|
>
|
|
|
|
{children}
|
2024-08-26 13:00:02 +08:00
|
|
|
</Tooltip>
|
2024-05-09 17:18:51 +08:00
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
export default memo(TipPopup)
|