1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-09-19 17:52:45 +02:00
unleash.unleash/frontend/src/component/feature/form/strategies-list.jsx
Ivar 993222a749 Fix input-store list bug.
Because we convert items from Immutable Object to js
we can not just look up items in a list property via
the object itself, as it is not the same.

The easy fix is to just use the index of the item in
the list, as we already know it anyway.

closes #5
2016-11-16 21:20:41 +01:00

42 lines
1.2 KiB
JavaScript

import React, { PropTypes } from 'react';
import ConfigureStrategy from './strategy-configure';
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 style={{ color: 'red' }}>No strategies added</i>;
}
const blocks = configuredStrategies.map((strat, i) => (
<ConfigureStrategy
key={`${strat.name}-${i}`}
strategy={strat}
removeStrategy={this.props.removeStrategy.bind(null, i)}
updateStrategy={this.props.updateStrategy.bind(null, i)}
strategyDefinition={strategies.find(s => s.name === strat.name)} />
));
return (
<div>
{blocks}
</div>
);
}
}
export default StrategiesList;