From 9245ffb332ed6fad8e731668c9f8d97736f94af7 Mon Sep 17 00:00:00 2001 From: Mert E Date: Wed, 17 Apr 2024 07:58:13 +0300 Subject: [PATCH] fix: include group by column in response (#8283) * fix: include group by column in response Signed-off-by: mertmit * fix: add new record if grouped by checkbox Signed-off-by: mertmit --------- Signed-off-by: mertmit --- .../nc-gui/components/smartsheet/grid/GroupByTable.vue | 5 +++++ packages/nocodb/src/helpers/getAst.ts | 10 ++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue b/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue index b6a08955ac..967a186c76 100644 --- a/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue +++ b/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue @@ -51,6 +51,11 @@ function addEmptyRow(group: Group, addAfter?: number, metaValue = meta.value) { ![UITypes.Rollup, UITypes.Lookup, UITypes.Formula, UITypes.Barcode, UITypes.QrCode].includes(curr.column_uidt) ) { acc[curr.title] = curr.key + + if (curr.column_uidt === UITypes.Checkbox) { + acc[curr.title] = + acc[curr.title] === GROUP_BY_VARS.TRUE ? true : acc[curr.title] === GROUP_BY_VARS.FALSE ? false : !!acc[curr.title] + } } return acc }, {} as Record) diff --git a/packages/nocodb/src/helpers/getAst.ts b/packages/nocodb/src/helpers/getAst.ts index 9657bbc0d7..156c99e847 100644 --- a/packages/nocodb/src/helpers/getAst.ts +++ b/packages/nocodb/src/helpers/getAst.ts @@ -13,7 +13,13 @@ import type { Model, } from '~/models'; import { NcError } from '~/helpers/catchError'; -import { CalendarRange, GalleryView, KanbanView, View } from '~/models'; +import { + CalendarRange, + GalleryView, + GridViewColumn, + KanbanView, + View, +} from '~/models'; const getAst = async ({ query, @@ -127,7 +133,7 @@ const getAst = async ({ allowedCols = (await View.getColumns(view.id)).reduce( (o, c) => ({ ...o, - [c.fk_column_id]: c.show, + [c.fk_column_id]: c.show || (c instanceof GridViewColumn && c.group_by), }), {}, );