I think there is a bug in the function ParseRaw in the SimpleFormatter.ts file which is a part of the framework.
When i use TwoOptions my value type is boolean.
If my value is false, it will return on line 4.
If my value is true, it will step into the ManifestType.TwoOptions case and result in the following error:
"e.toLowerCase is not a function"
Because "toLowerCase" does not exist on a boolean value.
Im i doing something wrong here? My ManifestTypes.d.ts file generates boolean values for my TwoOptions control.
export function ParseRaw(value: string, type: string): any {
let valueRaw: any;
if (!value) {
return value;
}
switch (type) {
case ManifestType.Decimal:
case ManifestType.FP:
case ManifestType.Currency:
valueRaw = isNaN(parseFloat(value)) ? undefined : parseFloat(value);
break;
case ManifestType.OptionSet:
case ManifestType.WholeNone:
valueRaw = isNaN(parseInt(value, 10)) ? undefined : parseInt(value, 10);
break;
case ManifestType.DateAndTimeDateAndTime:
case ManifestType.DateAndTimeDateOnly:
valueRaw = new Date(value);
if (isNaN(valueRaw)) {
valueRaw = undefined;
}
break;
case ManifestType.TwoOptions:
valueRaw = value.toLowerCase() === 'true' ? true : false;
break;
default:
valueRaw = value;
}
return valueRaw;
}