You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							18 lines
						
					
					
						
							764 B
						
					
					
				
			
		
		
	
	
							18 lines
						
					
					
						
							764 B
						
					
					
				import identity from './identity.js';
 | 
						|
import isFunction from './isFunction.js';
 | 
						|
import isObject from './isObject.js';
 | 
						|
import isArray from './isArray.js';
 | 
						|
import matcher from './matcher.js';
 | 
						|
import property from './property.js';
 | 
						|
import optimizeCb from './_optimizeCb.js';
 | 
						|
 | 
						|
// An internal function to generate callbacks that can be applied to each
 | 
						|
// element in a collection, returning the desired result — either `_.identity`,
 | 
						|
// an arbitrary callback, a property matcher, or a property accessor.
 | 
						|
export default function baseIteratee(value, context, argCount) {
 | 
						|
  if (value == null) return identity;
 | 
						|
  if (isFunction(value)) return optimizeCb(value, context, argCount);
 | 
						|
  if (isObject(value) && !isArray(value)) return matcher(value);
 | 
						|
  return property(value);
 | 
						|
}
 |