🐛 Update: Added support for the 'find' command in settings.local.json. Enhanced logging for various modules, including initialization and performance metrics. Improved SQLite database optimization and ensured better tracking of user interactions and system processes. 📚
This commit is contained in:
60
network-visualization/node_modules/has-values/index.js
generated
vendored
Normal file
60
network-visualization/node_modules/has-values/index.js
generated
vendored
Normal file
@ -0,0 +1,60 @@
|
||||
/*!
|
||||
* has-values <https://github.com/jonschlinkert/has-values>
|
||||
*
|
||||
* Copyright (c) 2014-2015, 2017, Jon Schlinkert.
|
||||
* Released under the MIT License.
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
var typeOf = require('kind-of');
|
||||
var isNumber = require('is-number');
|
||||
|
||||
module.exports = function hasValue(val) {
|
||||
// is-number checks for NaN and other edge cases
|
||||
if (isNumber(val)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
switch (typeOf(val)) {
|
||||
case 'null':
|
||||
case 'boolean':
|
||||
case 'function':
|
||||
return true;
|
||||
case 'string':
|
||||
case 'arguments':
|
||||
return val.length !== 0;
|
||||
case 'error':
|
||||
return val.message !== '';
|
||||
case 'array':
|
||||
var len = val.length;
|
||||
if (len === 0) {
|
||||
return false;
|
||||
}
|
||||
for (var i = 0; i < len; i++) {
|
||||
if (hasValue(val[i])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
case 'file':
|
||||
case 'map':
|
||||
case 'set':
|
||||
return val.size !== 0;
|
||||
case 'object':
|
||||
var keys = Object.keys(val);
|
||||
if (keys.length === 0) {
|
||||
return false;
|
||||
}
|
||||
for (var i = 0; i < keys.length; i++) {
|
||||
var key = keys[i];
|
||||
if (hasValue(val[key])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
default: {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
};
|
Reference in New Issue
Block a user