From 6a4f4ed0d97aa9d6d9e1d79670af24b9a8634983 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Mon, 19 Sep 2022 16:53:03 +0800 Subject: [PATCH] feat(nc-gui): add removeRowFromUncategorizedStack & addRowToStack --- .../nc-gui/composables/useKanbanViewData.ts | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/nc-gui/composables/useKanbanViewData.ts b/packages/nc-gui/composables/useKanbanViewData.ts index 61a7e5b526..a9a4aec8c2 100644 --- a/packages/nc-gui/composables/useKanbanViewData.ts +++ b/packages/nc-gui/composables/useKanbanViewData.ts @@ -317,6 +317,25 @@ export function useKanbanViewData( return formattedData.value.uncategorized[addAfter] } + function addRowToStack(row: Row) { + const stackTitle = row.row[groupingField.value] ?? 'uncategorized' + if (stackTitle) { + // push the row to target stack + formattedData.value[stackTitle].push(row) + // increase the current count in the target stack by 1 + countByStack.value[stackTitle] += 1 + // clear the one under uncategorized since we don't reload the view + removeRowFromUncategorizedStack() + } + } + + function removeRowFromUncategorizedStack() { + // remove the last record + formattedData.value.uncategorized.pop() + // decrease total count by 1 + countByStack.value.uncategorized -= 1 + } + return { loadKanbanData, loadMoreKanbanData, @@ -330,7 +349,9 @@ export function useKanbanViewData( groupingFieldColumn, updateOrSaveRow, addEmptyRow, + addRowToStack, deleteStack, updateKanbanStackMeta, + removeRowFromUncategorizedStack, } }