.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / is-boolean-object / index.js
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/is-boolean-object/index.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/is-boolean-object/index.js
new file mode 100644 (file)
index 0000000..69864eb
--- /dev/null
@@ -0,0 +1,26 @@
+'use strict';
+
+var callBound = require('call-bind/callBound');
+var $boolToStr = callBound('Boolean.prototype.toString');
+var $toString = callBound('Object.prototype.toString');
+
+var tryBooleanObject = function booleanBrandCheck(value) {
+       try {
+               $boolToStr(value);
+               return true;
+       } catch (e) {
+               return false;
+       }
+};
+var boolClass = '[object Boolean]';
+var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
+
+module.exports = function isBoolean(value) {
+       if (typeof value === 'boolean') {
+               return true;
+       }
+       if (value === null || typeof value !== 'object') {
+               return false;
+       }
+       return hasToStringTag && Symbol.toStringTag in value ? tryBooleanObject(value) : $toString(value) === boolClass;
+};