From 2ee9bd00df6115a2a27b75286077905bf267304d Mon Sep 17 00:00:00 2001 From: "Carlos (Almeira)" Date: Wed, 15 Apr 2026 17:04:12 -0500 Subject: [PATCH] fix(entity): correctly parse checkbox to boolean to prevent appwrite schema validation crash --- src/app/actions/entity.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/app/actions/entity.ts b/src/app/actions/entity.ts index e54612f..7b84f32 100644 --- a/src/app/actions/entity.ts +++ b/src/app/actions/entity.ts @@ -47,9 +47,15 @@ export async function updateEntityConfig(data: any) { let parsedData: any = data; if (typeof FormData !== 'undefined' && data instanceof FormData) { parsedData = {}; + + // Los checkboxes no vienen en el FormData si no están marcados. + // Manejamos explícitamente los booleanos conocidos aquí para que puedan actualizarse a false, + // y para que se envíen como boolean en lugar de string "true". + parsedData['mostrar_texto_logo'] = data.has('mostrar_texto_logo'); + for (const [key, value] of Array.from(data.entries())) { - // Ignorar claves internas de Next.js y Appwrite - if (key.startsWith('$ACTION') || key === '$id' || key === '$collectionId' || key === '$databaseId') { + // Ignorar claves tratadas explícitamente y claves internas + if (key === 'mostrar_texto_logo' || key.startsWith('$ACTION') || key === '$id' || key === '$collectionId' || key === '$databaseId') { continue; } if (typeof value === 'object' && 'size' in value && 'name' in value) {