import { css } from '@emotion/css'; import React from 'react'; import { CSSTransition } from 'react-transition-group'; import { Tooltip, ButtonGroup, ToolbarButton } from '@grafana/ui'; type LiveTailButtonProps = { splitted: boolean; start: () => void; stop: () => void; pause: () => void; resume: () => void; isLive: boolean; isPaused: boolean; }; export function LiveTailButton(props: LiveTailButtonProps) { const { start, pause, resume, isLive, isPaused, stop, splitted } = props; const buttonVariant = isLive && !isPaused ? 'active' : 'canvas'; const onClickMain = isLive ? (isPaused ? resume : pause) : start; return ( Pause the live stream : <>Start live stream your logs} placement="bottom" > {isLive && isPaused ? 'Paused' : 'Live'} Stop and exit the live stream} placement="bottom"> ); } const styles = { stopButtonEnter: css({ label: 'stopButtonEnter', width: 0, opacity: 0, overflow: 'hidden', }), stopButtonEnterActive: css({ label: 'stopButtonEnterActive', opacity: 1, width: '32px', }), stopButtonExit: css({ label: 'stopButtonExit', width: '32px', opacity: 1, overflow: 'hidden', }), stopButtonExitActive: css({ label: 'stopButtonExitActive', opacity: 0, width: 0, }), };