mirror of
https://github.com/iconify/iconify.git
synced 2024-10-24 01:22:04 +00:00
31 lines
463 B
TypeScript
31 lines
463 B
TypeScript
|
/**
|
||
|
* Get boolean customisation value from attribute
|
||
|
*/
|
||
|
export function toBoolean(
|
||
|
name: string,
|
||
|
value: unknown,
|
||
|
defaultValue: boolean
|
||
|
): boolean {
|
||
|
switch (typeof value) {
|
||
|
case 'boolean':
|
||
|
return value;
|
||
|
|
||
|
case 'number':
|
||
|
return !!value;
|
||
|
|
||
|
case 'string':
|
||
|
switch (value.toLowerCase()) {
|
||
|
case '1':
|
||
|
case 'true':
|
||
|
case name:
|
||
|
return true;
|
||
|
|
||
|
case '0':
|
||
|
case 'false':
|
||
|
case '':
|
||
|
return false;
|
||
|
}
|
||
|
}
|
||
|
return defaultValue;
|
||
|
}
|