ConceptPortal-public/rsconcept/frontend/src/features/oss/components/tooltip-oss-item.tsx

29 lines
885 B
TypeScript
Raw Normal View History

2025-08-05 20:01:33 +03:00
'use client';
2025-04-22 23:42:13 +03:00
import { Tooltip } from '@/components/container';
import { globalIDs } from '@/utils/constants';
import { NodeType } from '../models/oss';
2025-04-22 23:42:13 +03:00
import { useOperationTooltipStore } from '../stores/operation-tooltip';
import { InfoBlock } from './info-block';
import { InfoOperation } from './info-operation';
export function OperationTooltip() {
const hoverItem = useOperationTooltipStore(state => state.hoverItem);
const isOperationNode = hoverItem?.nodeType === NodeType.OPERATION;
2025-04-22 23:42:13 +03:00
return (
<Tooltip
clickable
id={globalIDs.operation_tooltip}
layer='z-topmost'
className='max-w-140 dense max-h-120! overflow-y-auto!'
hidden={!hoverItem}
>
{hoverItem && isOperationNode ? <InfoOperation operation={hoverItem} /> : null}
{hoverItem && !isOperationNode ? <InfoBlock block={hoverItem} /> : null}
2025-04-22 23:42:13 +03:00
</Tooltip>
);
}