diff --git a/src/components/filter/FilterEditor.jsx b/src/components/filter/FilterEditor.jsx index 3d249b29..4e804da8 100644 --- a/src/components/filter/FilterEditor.jsx +++ b/src/components/filter/FilterEditor.jsx @@ -11,6 +11,18 @@ const otherFilterOps = Object .keys(GlSpec.filter_operator.values) .filter(op => combiningFilterOps.indexOf(op) < 0) +function hasCombiningFilter(filter) { + return combiningFilterOps.indexOf(filter[0]) >= 0 +} + +function hasNestedCombiningFilter(filter) { + if(hasCombiningFilter(filter)) { + const combinedFilters = filter.slice(1) + return filter.slice(1).map(f => hasCombiningFilter(f)).filter(f => f == true).length > 0 + } + return false +} + class CombiningOperatorSelect extends React.Component { static propTypes = { value: React.PropTypes.string.isRequired, @@ -165,6 +177,11 @@ export default class CombiningFilterEditor extends React.Component { /> }) + //TODO: Implement support for nested filter + if(hasNestedCombiningFilter(filter)) { + return null + } + return