mirror of
https://github.com/fleetdm/fleet
synced 2026-05-18 06:28:40 +00:00
* Creates new PackComposerPage at /packs/new * Creates PackForm component * Adds PackForm to PackComposerPage * Creates QueriesListItem * Creates QueriesList * Creates QueriesListWrapper * Get all queries when the Packs Composer Page loads * Form HOC handles updates to formData prop * Creates form to configure scheduled queries * QueriesListWrapper renders ConfigurePackQueryForm * search queries input filters queries list * Empty state text * create pack when user submits the new pack form * Adds Edit pack page to /packs/:pack_id/edit * API client - get scheduled queries for a pack * API client - create scheduled query * Redux config for scheduled queries * Remove scheduled queries from packs * Add labels to pack on create * Add disabled state to the select targets dropdown * Adds edit route and pushes to new route on edit click * Adds cancel button to edit pack form * Adds Checkbox that selects all scheduled queries in table
45 lines
1.2 KiB
JavaScript
45 lines
1.2 KiB
JavaScript
import React, { PropTypes } from 'react';
|
|
|
|
import ConfigurePackQueryForm from 'components/forms/ConfigurePackQueryForm';
|
|
import queryInterface from 'interfaces/query';
|
|
import SearchPackQuery from './SearchPackQuery';
|
|
import SecondarySidePanelContainer from '../SecondarySidePanelContainer';
|
|
|
|
const baseClass = 'schedule-query-side-panel';
|
|
|
|
const ScheduleQuerySidePanel = ({ allQueries, onConfigurePackQuerySubmit, onSelectQuery, selectedQuery }) => {
|
|
const renderForm = () => {
|
|
if (!selectedQuery) {
|
|
return false;
|
|
}
|
|
|
|
const formData = { query_id: selectedQuery.id };
|
|
|
|
return (
|
|
<ConfigurePackQueryForm
|
|
formData={formData}
|
|
handleSubmit={onConfigurePackQuerySubmit}
|
|
/>
|
|
);
|
|
};
|
|
|
|
return (
|
|
<SecondarySidePanelContainer className={baseClass}>
|
|
<SearchPackQuery
|
|
allQueries={allQueries}
|
|
onSelectQuery={onSelectQuery}
|
|
selectedQuery={selectedQuery}
|
|
/>
|
|
{renderForm()}
|
|
</SecondarySidePanelContainer>
|
|
);
|
|
};
|
|
|
|
ScheduleQuerySidePanel.propTypes = {
|
|
allQueries: PropTypes.arrayOf(queryInterface),
|
|
onConfigurePackQuerySubmit: PropTypes.func,
|
|
onSelectQuery: PropTypes.func,
|
|
selectedQuery: queryInterface,
|
|
};
|
|
|
|
export default ScheduleQuerySidePanel;
|