1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-09-28 17:55:15 +02:00
unleash.unleash/packages/unleash-frontend-next/src/component/feature/form/strategies-list.jsx
2020-02-20 08:30:33 +01:00

44 lines
1.2 KiB
JavaScript

import React, { PropTypes } from 'react';
import ConfigureStrategy from './strategy-configure';
import { List } from 'react-toolbox/lib/list';
class StrategiesList extends React.Component {
static propTypes () {
return {
strategies: PropTypes.array.isRequired,
configuredStrategies: PropTypes.array.isRequired,
updateStrategy: PropTypes.func.isRequired,
removeStrategy: PropTypes.func.isRequired,
};
}
render () {
const {
strategies,
configuredStrategies,
} = this.props;
if (!configuredStrategies || configuredStrategies.length === 0) {
return <i>No strategies added</i>;
}
const blocks = configuredStrategies.map((strat, i) => (
<ConfigureStrategy
key={`${strat.name}-${i}`}
strategy={strat}
removeStrategy={this.props.removeStrategy}
updateStrategy={this.props.updateStrategy}
strategyDefinition={strategies.find(s => s.name === strat.name)} />
));
return (
<List>
{blocks}
</List>
);
}
}
export default StrategiesList;