Fix default value casting for booleans

This commit is contained in:
rijkvanzanten
2020-07-30 11:34:58 -04:00
parent 7157119df6
commit 574f4e955f

View File

@@ -24,8 +24,20 @@ export default function getDefaultValue(column: Column) {
case 'float':
return Number(defaultValue);
case 'boolean':
return !!Number(defaultValue);
return castToBoolean(defaultValue);
default:
return defaultValue;
}
}
function castToBoolean(value: any): boolean {
if (typeof value === 'boolean') return value;
if (value === 0 || value === '0') return false;
if (value === 1 || value === '1') return true;
if (value === 'false' || value === false) return false;
if (value === 'true' || value === true) return true;
return Boolean(value);
}