22 lines
		
	
	
		
			567 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			567 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import isArray from './isArray.js';
 | 
						|
import isKey from './_isKey.js';
 | 
						|
import stringToPath from './_stringToPath.js';
 | 
						|
import toString from './toString.js';
 | 
						|
 | 
						|
/**
 | 
						|
 * Casts `value` to a path array if it's not one.
 | 
						|
 *
 | 
						|
 * @private
 | 
						|
 * @param {*} value The value to inspect.
 | 
						|
 * @param {Object} [object] The object to query keys on.
 | 
						|
 * @returns {Array} Returns the cast property path array.
 | 
						|
 */
 | 
						|
function castPath(value, object) {
 | 
						|
  if (isArray(value)) {
 | 
						|
    return value;
 | 
						|
  }
 | 
						|
  return isKey(value, object) ? [value] : stringToPath(toString(value));
 | 
						|
}
 | 
						|
 | 
						|
export default castPath;
 |