35 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 | 
						|
 | 
						|
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
 | 
						|
 | 
						|
//  weak
 | 
						|
 | 
						|
import { shallow as enzymeShallow } from 'enzyme';
 | 
						|
 | 
						|
import until from './until';
 | 
						|
 | 
						|
// Generate an enhanced shallow function.
 | 
						|
export default function createShallow(options1 = {}) {
 | 
						|
  const { shallow = enzymeShallow, dive = false, untilSelector = false } = options1,
 | 
						|
        other1 = _objectWithoutProperties(options1, ['shallow', 'dive', 'untilSelector']);
 | 
						|
 | 
						|
  const shallowWithContext = function shallowWithContext(node, options2 = {}) {
 | 
						|
    const options = _extends({}, other1, options2, {
 | 
						|
      context: _extends({}, other1.context, options2.context)
 | 
						|
    });
 | 
						|
 | 
						|
    const wrapper = shallow(node, options);
 | 
						|
 | 
						|
    if (dive) {
 | 
						|
      return wrapper.dive();
 | 
						|
    }
 | 
						|
 | 
						|
    if (untilSelector) {
 | 
						|
      return until.call(wrapper, untilSelector, options);
 | 
						|
    }
 | 
						|
 | 
						|
    return wrapper;
 | 
						|
  };
 | 
						|
 | 
						|
  return shallowWithContext;
 | 
						|
} |