How would that be done?
You mean this?
function combineSettings(oldSettings, newSettings) {
const props = Object.keys(oldSettings);
return props.reduce(function combine(combined, prop) {
if (oldSettings[prop].toString() === "[object Object]") {
const oldProp = oldSettings[prop] || {};
const newProp = newSettings[prop] || {};
combined[prop] = combineSettings(oldProp, newProp);
} else if (newSettings.hasOwnProperty(prop)) {
combined[prop] = newSettings[prop];
}
return combined;
}, oldSettings);
}
function addVideo(video, settings) {
const defaultSettings = {
width: settings.width || 640,
height: settings.height || 390,
videoId: video.dataset.id,
playerVars: {
start: 0,
end: 999999,
loop: false, // custom setting, for onPlayerStateChange to loop video
autoplay: 1,
controls: 1,
showinfo: 1,
rel: 0,
iv_load_policy: 3,
cc_load_policy: 0,
fs: 0,
disablekb: 1
},
events: {
"onReady": onPlayerReady,
"onStateChange": onPlayerStateChange
}
};