diff --git a/packages/server/src/api/controllers/view/viewsV2.ts b/packages/server/src/api/controllers/view/viewsV2.ts index 82e536f62d..80a115e365 100644 --- a/packages/server/src/api/controllers/view/viewsV2.ts +++ b/packages/server/src/api/controllers/view/viewsV2.ts @@ -49,12 +49,18 @@ async function parseSchemaUI(ctx: Ctx, view: CreateViewRequest) { const schemaUI = view.schema && Object.entries(view.schema).reduce((p, [fieldName, schemaValue]) => { - p[fieldName] = { + const fieldSchema: RequiredKeys = { order: schemaValue.order, width: schemaValue.width, visible: schemaValue.visible, icon: schemaValue.icon, } + Object.entries(fieldSchema) + .filter(([_, val]) => val === undefined) + .forEach(([key]) => { + delete fieldSchema[key as keyof UIFieldMetadata] + }) + p[fieldName] = fieldSchema return p }, {} as Record>) return schemaUI diff --git a/packages/server/src/sdk/app/views/index.ts b/packages/server/src/sdk/app/views/index.ts index 3dfa82df0d..7e75f22060 100644 --- a/packages/server/src/sdk/app/views/index.ts +++ b/packages/server/src/sdk/app/views/index.ts @@ -86,6 +86,7 @@ export function enrichSchema(view: View | ViewV2, tableSchema: TableSchema) { : schema[fieldName].order, } } + delete view.schemaUI } if (view?.columns?.length) { @@ -97,6 +98,7 @@ export function enrichSchema(view: View | ViewV2, tableSchema: TableSchema) { pickedSchema[fieldName] = { ...schema[fieldName] } } schema = pickedSchema + delete view.columns } return {