(
-
- trigger:
-
{
- e.preventDefault();
- }} />
-
- {items.map(name => - {
- e.preventDefault();
- onClick(name);
- }}>{name}
)}
-
-
-);
-
-class AddStrategy extends React.Component {
-
- static propTypes () {
- return {
- strategies: PropTypes.array.isRequired,
- addStrategy: PropTypes.func.isRequired,
- fetchStrategies: PropTypes.func.isRequired,
- };
- }
-
- addStrategy = (strategyName) => {
- const selectedStrategy = this.props.strategies.find(s => s.name === strategyName);
- const parameters = {};
- const keys = Object.keys(selectedStrategy.parametersTemplate || {});
- keys.forEach(prop => { parameters[prop] = ''; });
-
-
- this.props.addStrategy({
- name: selectedStrategy.name,
- parameters,
- });
- };
-
- stopPropagation (e) {
- e.stopPropagation();
- e.preventDefault();
- }
-
- render () {
- const menuStyle = {
- maxHeight: '300px',
- overflowY: 'auto',
- backgroundColor: 'rgb(247, 248, 255)',
- };
- return (
-
-
- }
- onClick={(name) => this.addStrategy(name)}
- items={this.props.strategies.map(s => s.name)}
- />
-
-
-
- );
- }
-}
-
-
-export default AddStrategy;