From dd573ac84dd014c4107699977cbb8333ee1efcf1 Mon Sep 17 00:00:00 2001 From: mertmit Date: Wed, 1 May 2024 03:10:32 +0300 Subject: [PATCH] fix: avoid saving if from expanded record Signed-off-by: mertmit --- packages/nc-gui/components/smartsheet/grid/Table.vue | 2 ++ packages/nc-gui/composables/useExpandedFormStore.ts | 2 ++ packages/nc-gui/lib/types.ts | 1 + 3 files changed, 5 insertions(+) diff --git a/packages/nc-gui/components/smartsheet/grid/Table.vue b/packages/nc-gui/components/smartsheet/grid/Table.vue index 0c5dbb5e88..c0f1e5f7d8 100644 --- a/packages/nc-gui/components/smartsheet/grid/Table.vue +++ b/packages/nc-gui/components/smartsheet/grid/Table.vue @@ -1070,6 +1070,8 @@ const saveOrUpdateRecords = async ( args: { metaValue?: TableType; viewMetaValue?: ViewType; data?: any; keepNewRecords?: boolean } = {}, ) => { for (const currentRow of args.data || dataRef.value) { + if (currentRow.rowMeta.fromExpandedForm) continue + /** if new record save row and save the LTAR cells */ if (currentRow.rowMeta.new) { const beforeSave = clone(currentRow) diff --git a/packages/nc-gui/composables/useExpandedFormStore.ts b/packages/nc-gui/composables/useExpandedFormStore.ts index 9643caf814..95c766bde9 100644 --- a/packages/nc-gui/composables/useExpandedFormStore.ts +++ b/packages/nc-gui/composables/useExpandedFormStore.ts @@ -56,6 +56,8 @@ const [useProvideExpandedFormStore, useExpandedFormStore] = useInjectionState((m : ({ row: {}, oldRow: {}, rowMeta: {} } as Row), ) + row.value.rowMeta.fromExpandedForm = true + const rowStore = useProvideSmartsheetRowStore(row) const activeView = inject(ActiveViewInj, ref()) diff --git a/packages/nc-gui/lib/types.ts b/packages/nc-gui/lib/types.ts index 0961e14ed5..e3c9e8b641 100644 --- a/packages/nc-gui/lib/types.ts +++ b/packages/nc-gui/lib/types.ts @@ -65,6 +65,7 @@ interface Row { changed?: boolean saving?: boolean ltarState?: Record | Record[] | null> + fromExpandedForm?: boolean // use in datetime picker component isUpdatedFromCopyNPaste?: Record // Used in Calendar view