fleet/frontend/components/queries/QueryPageSelectTargets/QueryPageSelectTargets.jsx
noahtalerman 5dd9b75e9c
Update query page (edit, new, manage) and packs page (edit, new, manage) styles. (#106)
The goal of this PR is to update the style across the query and packs pages so they are consistent with the latest global styles (colors, buttons, and fonts).
2020-12-08 12:07:54 -08:00

64 lines
1.8 KiB
JavaScript

import React, { Component } from 'react';
import PropTypes from 'prop-types';
import campaignInterface from 'interfaces/campaign';
import QueryProgressDetails from 'components/queries/QueryProgressDetails';
import SelectTargetsDropdown from 'components/forms/fields/SelectTargetsDropdown';
import targetInterface from 'interfaces/target';
const baseClass = 'query-page-select-targets';
class QueryPageSelectTargets extends Component {
static propTypes = {
campaign: campaignInterface,
error: PropTypes.string,
onFetchTargets: PropTypes.func.isRequired,
onRunQuery: PropTypes.func.isRequired,
onStopQuery: PropTypes.func.isRequired,
onTargetSelect: PropTypes.func.isRequired,
queryIsRunning: PropTypes.bool,
selectedTargets: PropTypes.arrayOf(targetInterface),
targetsCount: PropTypes.number,
queryTimerMilliseconds: PropTypes.number,
disableRun: PropTypes.bool,
};
render () {
const {
error,
onFetchTargets,
onTargetSelect,
selectedTargets,
targetsCount,
campaign,
onRunQuery,
onStopQuery,
queryIsRunning,
queryTimerMilliseconds,
disableRun,
} = this.props;
return (
<div className={`${baseClass}__wrapper body-wrap`}>
<SelectTargetsDropdown
error={error}
onFetchTargets={onFetchTargets}
onSelect={onTargetSelect}
selectedTargets={selectedTargets}
targetsCount={targetsCount}
label="Select targets"
/>
<QueryProgressDetails
campaign={campaign}
onRunQuery={onRunQuery}
onStopQuery={onStopQuery}
queryIsRunning={queryIsRunning}
queryTimerMilliseconds={queryTimerMilliseconds}
disableRun={disableRun}
/>
</div>
);
}
}
export default QueryPageSelectTargets;