tasks/reconfigure.js
function(obj, parts) {
    if (parts.length === 0) { return true; }
    
    var key = parts.shift();

    if (!_(obj).has(key)) {
      return false;
    } else {
      return hasKeyPath(obj[key], parts);
    }
  }
function(obj, parts) {
    if (parts.length === 0) { return true; }
    
    var key = parts.shift();

    if (!_(obj).has(key)) {
      return false;
    } else {
      return hasKeyPath(obj[key], parts);
    }
  }
function ( obj , parts ) { if ( parts . length === 0 ) { return true ; } var key = parts . shift ( ) ; if ( ! _ ( obj ) . has ( key ) ) { return false ; } else { return hasKeyPath ( obj [ key ] , parts ) ; } }
Recursively step through the provided object and return whether it contains the provided keypath.
Recursively step through the provided object and return whether it contains the provided keypath .