client/css var utility: add support for parsing boolean values

This commit is contained in:
Adorian Doran 2025-10-29 03:13:16 +02:00
parent f789b69506
commit 0424fe4fba

View File

@ -23,6 +23,24 @@ export class CssVarReader {
return (!isNaN(number.valueOf()) ? number.valueOf() : defaultValue) return (!isNaN(number.valueOf()) ? number.valueOf() : defaultValue)
} }
asBoolean(defaultValue?: boolean) {
let value = this.value.toLocaleLowerCase().trim();
let result: boolean | undefined;
switch (value) {
case "true":
case "1":
result = true;
break;
case "false":
case "0":
result = false;
break;
}
return (result !== undefined) ? result : defaultValue;
}
asEnum<T>(enumType: T, defaultValue?: T[keyof T]): T[keyof T] | undefined { asEnum<T>(enumType: T, defaultValue?: T[keyof T]): T[keyof T] | undefined {
let result: T[keyof T] | undefined; let result: T[keyof T] | undefined;