From a2ceee11e69c46c19d90a86b7b195cdacbf2cab7 Mon Sep 17 00:00:00 2001 From: Ramesh Mane <101566080+rameshmane7218@users.noreply.github.com> Date: Wed, 3 Apr 2024 12:18:59 +0000 Subject: [PATCH 1/4] fix(nc-gui): shared view column display issue after deleting column from table --- .../composables/useSharedFormViewStore.ts | 40 ++++++++++--------- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/packages/nc-gui/composables/useSharedFormViewStore.ts b/packages/nc-gui/composables/useSharedFormViewStore.ts index e10d40e92e..676754d53b 100644 --- a/packages/nc-gui/composables/useSharedFormViewStore.ts +++ b/packages/nc-gui/composables/useSharedFormViewStore.ts @@ -132,25 +132,27 @@ const [useProvideSharedFormStore, useSharedFormStore] = useInjectionState((share {} as Record, ) - columns.value = viewMeta.model?.columns?.map((c) => { - if ( - !isSystemColumn(c) && - !isVirtualCol(c) && - !isAttachment(c) && - c.uidt !== UITypes.SpecificDBType && - c?.title && - c?.cdf && - !/^\w+\(\)|CURRENT_TIMESTAMP$/.test(c.cdf) - ) { - formState.value[c.title] = typeof c.cdf === 'string' ? c.cdf.replace(/^'|'$/g, '') : c.cdf - } + columns.value = (viewMeta.model?.columns || []) + .filter((c) => fieldById[c.id]) + .map((c) => { + if ( + !isSystemColumn(c) && + !isVirtualCol(c) && + !isAttachment(c) && + c.uidt !== UITypes.SpecificDBType && + c?.title && + c?.cdf && + !/^\w+\(\)|CURRENT_TIMESTAMP$/.test(c.cdf) + ) { + formState.value[c.title] = typeof c.cdf === 'string' ? c.cdf.replace(/^'|'$/g, '') : c.cdf + } - return { - ...c, - meta: { ...parseProp(fieldById[c.id].meta), ...parseProp(c.meta) }, - description: fieldById[c.id].description, - } - }) + return { + ...c, + meta: { ...parseProp(fieldById[c.id].meta), ...parseProp(c.meta) }, + description: fieldById[c.id].description, + } + }) const _sharedViewMeta = (viewMeta as any).meta sharedViewMeta.value = isString(_sharedViewMeta) ? JSON.parse(_sharedViewMeta) : _sharedViewMeta @@ -188,6 +190,8 @@ const [useProvideSharedFormStore, useSharedFormStore] = useInjectionState((share if (password.value && password.value !== '') { passwordError.value = error.message } + } else if (error.error === NcErrorType.UNKNOWN_ERROR) { + console.log(e) } } } From 5827e9fee48ab940a90c761d3bd58065c63e8487 Mon Sep 17 00:00:00 2001 From: Ramesh Mane <101566080+rameshmane7218@users.noreply.github.com> Date: Wed, 3 Apr 2024 12:18:59 +0000 Subject: [PATCH 2/4] fix(nocodb): Cannot read properties of undefined (reading 'rqd') --- packages/nocodb/src/services/public-metas.service.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/nocodb/src/services/public-metas.service.ts b/packages/nocodb/src/services/public-metas.service.ts index 30b80bdc3f..4a24bc78d2 100644 --- a/packages/nocodb/src/services/public-metas.service.ts +++ b/packages/nocodb/src/services/public-metas.service.ts @@ -41,6 +41,9 @@ export class PublicMetasService { view.model.columns = view.columns .filter((c) => { const column = view.model.columnsById[c.fk_column_id]; + + if (!column) return false; + return ( c.show || (column.rqd && !column.cdf && !column.ai) || From e072c99b35a02b6e0b0272646910be444b8ec19c Mon Sep 17 00:00:00 2001 From: Ramesh Mane <101566080+rameshmane7218@users.noreply.github.com> Date: Wed, 3 Apr 2024 12:18:59 +0000 Subject: [PATCH 3/4] fix(nc-gui): PR ai review changes --- packages/nc-gui/composables/useSharedFormViewStore.ts | 2 +- packages/nocodb/src/services/public-metas.service.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/nc-gui/composables/useSharedFormViewStore.ts b/packages/nc-gui/composables/useSharedFormViewStore.ts index 676754d53b..d4257c0128 100644 --- a/packages/nc-gui/composables/useSharedFormViewStore.ts +++ b/packages/nc-gui/composables/useSharedFormViewStore.ts @@ -191,7 +191,7 @@ const [useProvideSharedFormStore, useSharedFormStore] = useInjectionState((share passwordError.value = error.message } } else if (error.error === NcErrorType.UNKNOWN_ERROR) { - console.log(e) + console.error('Error occurred while loading shared form view', e) } } } diff --git a/packages/nocodb/src/services/public-metas.service.ts b/packages/nocodb/src/services/public-metas.service.ts index 4a24bc78d2..ce9d2e1c3f 100644 --- a/packages/nocodb/src/services/public-metas.service.ts +++ b/packages/nocodb/src/services/public-metas.service.ts @@ -42,6 +42,7 @@ export class PublicMetasService { .filter((c) => { const column = view.model.columnsById[c.fk_column_id]; + // Check if column exists to prevent processing non-existent columns if (!column) return false; return ( From 2846bfe06d8267f99b16f293a93fd301e3cb7cc1 Mon Sep 17 00:00:00 2001 From: Ramesh Mane <101566080+rameshmane7218@users.noreply.github.com> Date: Thu, 4 Apr 2024 16:55:33 +0530 Subject: [PATCH 4/4] fix(nc-gui): small changes --- packages/nc-gui/composables/useSharedFormViewStore.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/nc-gui/composables/useSharedFormViewStore.ts b/packages/nc-gui/composables/useSharedFormViewStore.ts index d4257c0128..0a865f97d2 100644 --- a/packages/nc-gui/composables/useSharedFormViewStore.ts +++ b/packages/nc-gui/composables/useSharedFormViewStore.ts @@ -192,6 +192,7 @@ const [useProvideSharedFormStore, useSharedFormStore] = useInjectionState((share } } else if (error.error === NcErrorType.UNKNOWN_ERROR) { console.error('Error occurred while loading shared form view', e) + message.error('Error occurred while loading shared form view') } } }