grafana/public/app/features/library-panels/components/ChangeLibraryPanelModal/ChangeLibraryPanelModal.tsx
Josh Hunt 3c6e0e8ef8
Chore: ESlint import order (#44959)
* 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
2022-04-22 14:33:13 +01:00

32 lines
943 B
TypeScript

import React from 'react';
import { ConfirmModal } from '@grafana/ui';
import { PanelModel } from '../../../dashboard/state';
import { isPanelModelLibraryPanel } from '../../guard';
export interface ChangeLibraryPanelModalProps {
panel: PanelModel;
onConfirm: () => void;
onDismiss: () => void;
}
export const ChangeLibraryPanelModal = ({ onConfirm, onDismiss, panel }: ChangeLibraryPanelModalProps): JSX.Element => {
const isLibraryPanel = isPanelModelLibraryPanel(panel);
const title = `${isLibraryPanel ? 'Changing' : 'Replace with'} library panel`;
const body = `${
isLibraryPanel ? 'Changing' : 'Replacing with a'
} library panel will remove any changes since last save.`;
return (
<ConfirmModal
onConfirm={onConfirm}
onDismiss={onDismiss}
confirmText={isLibraryPanel ? 'Change' : 'Replace'}
title={title}
body={body}
dismissText="Cancel"
isOpen={true}
/>
);
};