/
githubmirror
/
novu
Обзор
Документация
Войти
/
githubmirror
/
novu
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
next
apps/dashboard/src/components/variable/variable-tooltip.tsx
40 строк
1 KB
Paweł Tymczuk
feat(dashboard): inline card actions row + actions bubble menu for Rich Chat editor fixes NV-8519 (#12209)
04 авг 2026, 19:22
Не верифицирован
04 авг 2026, 19:22
1ab1644
Код
Авторство
О чём код?
import React, { PropsWithChildren } from 'react'; import { Tooltip, TooltipContent, TooltipPortal, TooltipTrigger } from '../primitives/tooltip'; import { validateEnhancedDigestFilters } from './utils'; type Props = PropsWithChildren<{ issues?: ReturnType<typeof validateEnhancedDigestFilters>; isNotInSchema?: boolean; errorMessage?: string; }>; export function VariableTooltip({ issues, isNotInSchema, errorMessage, children }: Props) { const [isHovered, setIsHovered] = React.useState(false); const hasTooltip = !!issues || isNotInSchema; return ( <Tooltip open={isHovered && hasTooltip}> <TooltipTrigger asChild> <div className="inline-flex h-full max-h-full min-h-0 items-center" onMouseLeave={() => setIsHovered(false)} onMouseEnter={() => setIsHovered(true)} > {children} </div> </TooltipTrigger> <TooltipPortal> <TooltipContent side="top" className="border-bg-soft bg-bg-weak border p-0.5 shadow-sm"> <div className="border-stroke-soft/70 text-label-2xs text-text-soft rounded-sm border bg-white p-1"> {issues && ( <span className="text-error-base"> {issues.name}: {issues.message} </span> )} {!issues && isNotInSchema && errorMessage && <span className="text-error-base">Error: {errorMessage}</span>} </div> </TooltipContent> </TooltipPortal> </Tooltip> ); }