1 | const isBooleanable = function (value: any): boolean {
|
2 | switch (Object.prototype.toString.call(value)) {
|
3 | case '[object String]':
|
4 | return [
|
5 | 'true', 't', 'yes', 'y', 'on', '1',
|
6 | 'false', 'f', 'no', 'n', 'off', '0'
|
7 | ].includes(value.trim().toLowerCase());
|
8 |
|
9 | case '[object Number]':
|
10 | return [ 0, 1 ].includes(value.valueOf());
|
11 |
|
12 | case '[object Boolean]':
|
13 | return true;
|
14 |
|
15 | default:
|
16 | return false;
|
17 | }
|
18 | };
|
19 |
|
20 | export { isBooleanable };
|