From fe02c935ea93aa5ac7db1397d56fcd998c2db63b Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Fri, 10 Feb 2023 19:47:08 +0800 Subject: [PATCH] fix(nc-gui): include unhidden fields for filter --- .../smartsheet/toolbar/FieldListAutoCompleteDropdown.vue | 8 +++++--- packages/nc-gui/composables/useViewFilters.ts | 8 ++++---- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/nc-gui/components/smartsheet/toolbar/FieldListAutoCompleteDropdown.vue b/packages/nc-gui/components/smartsheet/toolbar/FieldListAutoCompleteDropdown.vue index 404a81efc0..4cf4ae7a6e 100644 --- a/packages/nc-gui/components/smartsheet/toolbar/FieldListAutoCompleteDropdown.vue +++ b/packages/nc-gui/components/smartsheet/toolbar/FieldListAutoCompleteDropdown.vue @@ -2,7 +2,7 @@ import type { SelectProps } from 'ant-design-vue' import type { ColumnType, LinkToAnotherRecordType } from 'nocodb-sdk' import { RelationTypes, UITypes, isVirtualCol } from 'nocodb-sdk' -import { FieldsInj, computed, inject, ref, resolveComponent } from '#imports' +import { MetaInj, FieldsInj, computed, inject, ref, resolveComponent } from '#imports' const { modelValue, isSort } = defineProps<{ modelValue?: string @@ -11,6 +11,8 @@ const { modelValue, isSort } = defineProps<{ const emit = defineEmits(['update:modelValue']) +const meta = inject(MetaInj, ref()) + const fields = inject(FieldsInj, ref()) const localValue = computed({ @@ -19,9 +21,9 @@ const localValue = computed({ }) const options = computed(() => - fields.value + meta.value?.columns ?.filter((c: ColumnType) => { - if (c.uidt === UITypes.QrCode || c.uidt === UITypes.Barcode) { + if (c.uidt === UITypes.QrCode || c.uidt === UITypes.Barcode || c.uidt === UITypes.ID) { return false } else if (isSort) { /** ignore hasmany and manytomany relations if it's using within sort menu */ diff --git a/packages/nc-gui/composables/useViewFilters.ts b/packages/nc-gui/composables/useViewFilters.ts index 6a2c937c1e..236592c98c 100644 --- a/packages/nc-gui/composables/useViewFilters.ts +++ b/packages/nc-gui/composables/useViewFilters.ts @@ -74,9 +74,11 @@ export function useViewFilters( // nonDeletedFilters are those filters that are not deleted physically & virtually const nonDeletedFilters = computed(() => filters.value.filter((f) => f.status !== 'delete')) + const meta = inject(MetaInj, ref()) + const options = computed(() => - fields.value?.filter((c: ColumnType) => { - if (c.uidt === UITypes.QrCode || c.uidt === UITypes.Barcode) { + meta.value?.columns?.filter((c: ColumnType) => { + if (c.uidt === UITypes.QrCode || c.uidt === UITypes.Barcode || c.uidt === UITypes.ID) { return false } else { const isVirtualSystemField = c.colOptions && c.system @@ -85,8 +87,6 @@ export function useViewFilters( }), ) - const meta = inject(MetaInj, ref()) - const isComparisonOpAllowed = ( filter: FilterType, compOp: {