Handle invalid number metadata values

This commit is contained in:
schroda
2026-05-09 13:12:39 +02:00
parent dcad44218b
commit b2c14c1a5d

View File

@@ -47,7 +47,13 @@ const convertToTypeNullAndUndefined = <T>(value: string, convertToType: (value:
return convertToType(value); return convertToType(value);
}; };
const convertToString = (value: string): string => value; const convertToString = (value: string): string => value;
const convertToNumber = (value: string): number => +value; const convertToNumber = (value: string, defaultValue: number): number => {
if (Number.isNaN(+value)) {
return defaultValue;
}
return +value;
};
const convertToBoolean = (value: string): boolean => value === 'true'; const convertToBoolean = (value: string): boolean => value === 'true';
const convertToStringNullAndUndefined = (value: string) => convertToTypeNullAndUndefined(value, convertToString); const convertToStringNullAndUndefined = (value: string) => convertToTypeNullAndUndefined(value, convertToString);
const convertToBooleanNullAndUndefined = (value: string) => convertToTypeNullAndUndefined(value, convertToBoolean); const convertToBooleanNullAndUndefined = (value: string) => convertToTypeNullAndUndefined(value, convertToBoolean);