import { useMemo } from 'react'; import { TypedVariableModel } from '@grafana/data'; import { Trans, t } from '@grafana/i18n'; import { reportInteraction } from '@grafana/runtime'; import { Button } from '@grafana/ui'; import { NetworkGraphModal } from './NetworkGraphModal'; import { createDependencyEdges, createDependencyNodes, filterNodesWithDependencies } from './utils'; interface Props { variables: TypedVariableModel[]; } export const VariablesDependenciesButton = ({ variables }: Props) => { const nodes = useMemo(() => createDependencyNodes(variables), [variables]); const edges = useMemo(() => createDependencyEdges(variables), [variables]); if (!edges.length) { return null; } return ( {({ showModal }) => { return ( ); }} ); };