mirror of
https://github.com/grafana/grafana.git
synced 2025-02-13 00:55:47 -06:00
* Add and configure eslint-plugin-import * Fix the lint:ts npm command * Autofix + prettier all the files * Manually fix remaining files * Move jquery code in jest-setup to external file to safely reorder imports * Resolve issue caused by circular dependencies within Prometheus * Update .betterer.results * Fix missing // @ts-ignore * ignore iconBundle.ts * Fix missing // @ts-ignore
33 lines
783 B
TypeScript
33 lines
783 B
TypeScript
import React, { useMemo, useState } from 'react';
|
|
|
|
import { Modal } from '@grafana/ui';
|
|
|
|
import { StateHistory } from '../components/rules/StateHistory';
|
|
|
|
function useStateHistoryModal(alertId: string) {
|
|
const [showModal, setShowModal] = useState<boolean>(false);
|
|
|
|
const StateHistoryModal = useMemo(
|
|
() => (
|
|
<Modal
|
|
isOpen={showModal}
|
|
onDismiss={() => setShowModal(false)}
|
|
closeOnBackdropClick={true}
|
|
closeOnEscape={true}
|
|
title="State history"
|
|
>
|
|
<StateHistory alertId={alertId} />
|
|
</Modal>
|
|
),
|
|
[alertId, showModal]
|
|
);
|
|
|
|
return {
|
|
StateHistoryModal,
|
|
showStateHistoryModal: () => setShowModal(true),
|
|
hideStateHistoryModal: () => setShowModal(false),
|
|
};
|
|
}
|
|
|
|
export { useStateHistoryModal };
|