@computed.struct
    get filter() {
        const {op, rowModels} = this,
            filters = combineValueFilters(compact(rowModels.map(it => it.value)));
        if (isEmpty(filters)) return null;
        if (filters.length > 1 && op === 'OR') return {filters, op};
        return filters;
    }
/**
     * @member {Object} - Filter config output by this model
     */
@member {Object} - Filter config output by this model
@member { Object } - Filter config output by this model
@computed.struct
    get filter() {
        const {op, rowModels} = this,
            filters = combineValueFilters(compact(rowModels.map(it => it.value)));
        if (isEmpty(filters)) return null;
        if (filters.length > 1 && op === 'OR') return {filters, op};
        return filters;
    }
@ computed . struct get filter ( ) { const { op , rowModels } = this , filters = combineValueFilters ( compact ( rowModels . map ( it => it . value ) ) ) ; if ( isEmpty ( filters ) ) return null ; if ( filters . length > 1 && op === 'OR' ) return { filters , op } ; return filters ; }
@member {Object} - Filter config output by this model
@member { Object } - Filter config output by this model