grafana_bak/public/app/features/explore/TimeSyncButton.tsx
2025-04-01 10:38:02 +09:00

28 lines
708 B
TypeScript

import { Tooltip, ToolbarButton } from '@grafana/ui';
interface TimeSyncButtonProps {
isSynced: boolean;
onClick: () => void;
}
export function TimeSyncButton(props: TimeSyncButtonProps) {
const { onClick, isSynced } = props;
const syncTimesTooltip = () => {
const { isSynced } = props;
const tooltip = isSynced ? 'Unsync all views' : 'Sync all views to this time range';
return <>{tooltip}</>;
};
return (
<Tooltip content={syncTimesTooltip} placement="bottom">
<ToolbarButton
icon="link"
variant={isSynced ? 'active' : 'canvas'}
aria-label={isSynced ? 'Synced times' : 'Unsynced times'}
onClick={onClick}
/>
</Tooltip>
);
}