import { css } from '@emotion/css'; import * as React from 'react'; import { GrafanaTheme2 } from '@grafana/data'; import { Checkbox, Button, Tag, ModalsController, useStyles2 } from '@grafana/ui'; import { Trans } from 'app/core/internationalization'; import { DecoratedRevisionModel } from '../DashboardSettings/VersionsSettings'; import { RevertDashboardModal } from './RevertDashboardModal'; type VersionsTableProps = { versions: DecoratedRevisionModel[]; canCompare: boolean; onCheck: (ev: React.FormEvent, versionId: number) => void; }; export const VersionHistoryTable = ({ versions, canCompare, onCheck }: VersionsTableProps) => { const styles = useStyles2(getStyles); return (
{versions.map((version, idx) => ( ))}
Version Date Updated by Notes
onCheck(ev, version.id)} disabled={!version.checked && canCompare} /> {version.version} {version.createdDateString} {version.createdBy} {version.message} {idx === 0 ? ( ) : ( {({ showModal, hideModal }) => ( )} )}
); }; function getStyles(theme: GrafanaTheme2) { return { margin: css({ marginBottom: theme.spacing(4), }), }; }