Fix advanced filter sidebar detail (#7005)

Fixes #7004
This commit is contained in:
Rijk van Zanten
2021-07-27 18:34:31 +02:00
committed by GitHub
parent 99435b5bfb
commit 5c4d92964a
2 changed files with 8 additions and 7 deletions

View File

@@ -15,7 +15,7 @@
<v-list>
<v-list-item
v-for="operator in parsedField.operators"
v-for="operator in filterOperators"
:key="operator"
:active="operator === activeOperator"
clickable
@@ -35,7 +35,7 @@
/>
</div>
<div class="field">
<filter-input v-model="value" :type="parsedField.type" :operator="activeOperator" :disabled="disabled" />
<filter-input v-model="value" :type="field.type" :operator="activeOperator" :disabled="disabled" />
</div>
</div>
</template>
@@ -92,12 +92,13 @@ export default defineComponent({
return getNameForFieldKey(props.filter.field);
});
const parsedField = computed(() => {
const field = getFieldForKey(props.filter.field);
return getFilterOperatorsForType(field.type);
const field = computed(() => getFieldForKey(props.filter.field));
const filterOperators = computed(() => {
return getFilterOperatorsForType(field.value.type);
});
return { t, activeOperator, value, name, parsedField };
return { t, activeOperator, value, name, field, filterOperators };
function getFieldForKey(fieldKey: string) {
return fieldsStore.getField(props.collection, fieldKey);

View File

@@ -143,7 +143,7 @@ export default defineComponent({
function addFilterForField(fieldKey: string) {
const field = fieldsStore.getField(props.collection, fieldKey) as Field;
const defaultOperator = getFilterOperatorsForType(field.type).operators[0];
const defaultOperator = getFilterOperatorsForType(field.type)[0];
emit('update:modelValue', [
...props.modelValue,