Handle metadata "undefined" default value object conversion

In case the default value was undefined, "deepmerge" resulted in an empty object, regardless of the actual metadata value
This commit is contained in:
schroda
2025-06-29 02:32:16 +02:00
parent 008694b670
commit 21671f3d79

View File

@@ -48,9 +48,13 @@ const convertToBoolean = (value: string): boolean => value === 'true';
const convertToStringNullAndUndefined = (value: string) => convertToTypeNullAndUndefined(value, convertToString);
const convertToBooleanNullAndUndefined = (value: string) => convertToTypeNullAndUndefined(value, convertToBoolean);
const convertToObject = <T>(value: string, defaultValue: T): T => {
const convertedValue = jsonSaveParse(value) ?? defaultValue;
const convertedValue = jsonSaveParse<T>(value) ?? defaultValue;
if (Array.isArray(defaultValue)) {
if (Array.isArray(convertedValue)) {
return convertedValue;
}
if (defaultValue == null) {
return convertedValue;
}