import React from "react"; import { IOsQueryTable } from "interfaces/osquery_table"; import { osqueryTableNames } from "utilities/osquery_tables"; // @ts-ignore import Dropdown from "components/forms/fields/Dropdown"; import FleetMarkdown from "components/FleetMarkdown"; import CustomLink from "components/CustomLink"; import QueryTableColumns from "./QueryTableColumns"; import QueryTablePlatforms from "./QueryTablePlatforms"; // @ts-ignore import CloseIcon from "../../../../assets/images/icon-close-black-50-8x8@2x.png"; import QueryTableExample from "./QueryTableExample"; import QueryTableNotes from "./QueryTableNotes"; import EventedTableTag from "./EventedTableTag"; interface IQuerySidePanel { selectedOsqueryTable: IOsQueryTable; onOsqueryTableSelect: (tableName: string) => void; onClose?: () => void; } const baseClass = "query-side-panel"; const QuerySidePanel = ({ selectedOsqueryTable, onOsqueryTableSelect, onClose, }: IQuerySidePanel): JSX.Element => { const { name, description, platforms, columns, examples, notes, evented, } = selectedOsqueryTable; const onSelectTable = (value: string) => { onOsqueryTableSelect(value); }; const renderTableSelect = () => { const tableNames = osqueryTableNames?.map((tableName: string) => { return { label: tableName, value: tableName }; }); return ( ); }; return ( <>
Close sidebar

Tables {osqueryTableNames.length}

{renderTableSelect()}
{evented && }
{examples && } {notes && } ); }; export default QuerySidePanel;