platform/video.videojs/dist/video.es.js
function mergeOptions() {
  var result = {};

  for (var _len = arguments.length, sources = Array(_len), _key = 0; _key < _len; _key++) {
    sources[_key] = arguments[_key];
  }

  sources.forEach(function (source) {
    if (!source) {
      return;
    }

    each(source, function (value, key) {
      if (!isPlain(value)) {
        result[key] = value;
        return;
      }

      if (!isPlain(result[key])) {
        result[key] = {};
      }

      result[key] = mergeOptions(result[key], value);
    });
  });

  return result;
}
function mergeOptions() {
  var result = {};

  for (var _len = arguments.length, sources = Array(_len), _key = 0; _key < _len; _key++) {
    sources[_key] = arguments[_key];
  }

  sources.forEach(function (source) {
    if (!source) {
      return;
    }

    each(source, function (value, key) {
      if (!isPlain(value)) {
        result[key] = value;
        return;
      }

      if (!isPlain(result[key])) {
        result[key] = {};
      }

      result[key] = mergeOptions(result[key], value);
    });
  });

  return result;
}
function mergeOptions ( ) { var result = { } ; for ( var _len = arguments . length , sources = Array ( _len ) , _key = 0 ; _key < _len ; _key ++ ) { sources [ _key ] = arguments [ _key ] ; } sources . forEach ( function ( source ) { if ( ! source ) { return ; } each ( source , function ( value , key ) { if ( ! isPlain ( value ) ) { result [ key ] = value ; return ; } if ( ! isPlain ( result [ key ] ) ) { result [ key ] = { } ; } result [ key ] = mergeOptions ( result [ key ] , value ) ; } ) ; } ) ; return result ; }
@file merge-options.js
@module merge-options
 
Deep-merge one or more options objects, recursively merging **only** plain
object properties.

@param   {Object[]} sources
One or more objects to merge into a new object.

@returns {Object}
A new object that is the merged result of all sources.
@file merge - options . js @module merge - options Deep - merge one or more options objects recursively merging ** only ** plain object properties .