/
githubmirror
/
ydb-embedded-ui
Обзор
Документация
Войти
/
githubmirror
/
ydb-embedded-ui
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/components/QueryResultTable/Cell/Cell.tsx
42 строки
1 KB
Anton Standrik
feat: get rid of ReduxTooltip (#3192)
16 дек 2025, 15:41
Не верифицирован
16 дек 2025, 15:41
2a6c613
Код
Авторство
О чём код?
import React from 'react'; import {Popup} from '@gravity-ui/uikit'; import {b} from '../QueryResultTable'; interface CellProps { className?: string; value: string; } export const Cell = React.memo(function Cell(props: CellProps) { const {className, value} = props; const [open, setOpen] = React.useState(false); const anchorRef = React.useRef<HTMLSpanElement | null>(null); const handleToggle = React.useCallback(() => { setOpen((prevOpen) => !prevOpen); }, []); const handleClose = React.useCallback(() => { setOpen(false); }, []); return ( <React.Fragment> <Popup open={open} hasArrow placement={['top', 'bottom']} anchorRef={anchorRef} onOutsideClick={handleClose} > <div className={b('cell-popup')}>{value}</div> </Popup> <span ref={anchorRef} className={b('cell', className)} onClick={handleToggle}> {value} </span> </React.Fragment> ); });