diff --git a/packages/core/src/models/field/field.ts b/packages/core/src/models/field/field.ts index 781dd86a0d..e29bf8747e 100644 --- a/packages/core/src/models/field/field.ts +++ b/packages/core/src/models/field/field.ts @@ -98,12 +98,20 @@ export abstract class FieldCore implements IFieldVo { /** * Wrapper to enforce notNull when calling validateCellValue. + * If the field has a default value, null/undefined inputs are allowed + * since the default will be applied later. */ validateCellValueWithNotNull(value: unknown): ZodSafeParseResult | undefined { if (this.isComputed) { return this.validateCellValue(value); } if (this.notNull && (value === null || value === undefined)) { + // Check if field has a default value - if so, allow null/undefined + // since the default will be applied later + const options = this.options as { defaultValue?: unknown } | undefined; + if (options?.defaultValue !== undefined) { + return this.validateCellValue(value); + } return { success: false, error: new ZodError([