fleet/frontend/pages/schedule/ManageSchedulePage/components/PreviewDataModal/PreviewDataModal.tsx

66 lines
1.8 KiB
TypeScript
Raw Normal View History

/* This component is used for creating and editing both global and team scheduled queries */
import React from "react";
import { syntaxHighlight } from "fleet/helpers";
import Modal from "components/Modal";
import Button from "components/buttons/Button";
import TooltipWrapper from "components/TooltipWrapper";
const baseClass = "preview-data-modal";
interface IPreviewDataModalProps {
onCancel: () => void;
}
const PreviewDataModal = ({
onCancel,
}: IPreviewDataModalProps): JSX.Element => {
const json = {
action: "snapshot",
snapshot: [
{
remote_address: "0.0.0.0",
remote_port: "0",
cmdline: "/usr/sbin/syslogd",
},
],
name: "xxxxxxx",
hostIdentifier: "xxxxxxx",
calendarTime: "xxx xxx x xx:xx:xx xxxx UTC",
unixTime: "xxxxxxxxx",
epoch: "xxxxxxxxx",
counter: "x",
numerics: "x",
};
return (
<Modal title={"Example data"} onExit={onCancel} className={baseClass}>
<div className={`${baseClass}__preview-modal`}>
<p>
<TooltipWrapper
tipContent={`The &quot;snapshot&quot; key includes the query&apos;s results. These will be unique to your query.`}
>
The data sent to your configured log destination will look similar
to the following JSON:
</TooltipWrapper>
</p>
<div className={`${baseClass}__host-status-webhook-preview`}>
<pre dangerouslySetInnerHTML={{ __html: syntaxHighlight(json) }} />
</div>
<div className={`${baseClass}__btn-wrap`}>
<Button
className={`${baseClass}__btn`}
onClick={onCancel}
variant="brand"
>
Done
</Button>
</div>
</div>
</Modal>
);
};
export default PreviewDataModal;