import React, { FC, useMemo } from 'react'; import { IconButton } from '@grafana/ui'; import { UsagesToNetwork } from './utils'; import { NetworkGraphModal } from './NetworkGraphModal'; interface Props { id: string; usages: UsagesToNetwork[]; isAdhoc: boolean; } export const VariableUsagesButton: FC = ({ id, usages, isAdhoc }) => { const network = useMemo(() => usages.find((n) => n.variable.id === id), [usages, id]); if (usages.length === 0 || isAdhoc || !network) { return null; } const nodes = network.nodes.map((n) => { if (n.label.includes(`$${id}`)) { return { ...n, color: '#FB7E81' }; } return n; }); return ( {({ showModal }) => { return showModal()} name="code-branch" title="Show usages" />; }} ); };