code: function mergeOptions() {
    // contruct the call dynamically to handle the variable number of
    // objects to merge
    var args = Array.prototype.slice.call(arguments);
  
    // unshift an empty object into the front of the call as the target
    // of the merge
    args.unshift({});
  
    // customize conflict resolution to match our historical merge behavior
    args.push(customizer);
  
    _merge2['default'].apply(null, args);
  
    // return the mutated result object
    return args[0];
  }
docs: Merge one or more options objects, recursively merging **only**
  plain object properties.  Previously `deepMerge`.
  
  @param  {...Object} source One or more objects to merge
  @returns {Object}          a new object that is the union of all
  provided objects
  @function mergeOptions