browser.js
function _deepMerge(target, source) {
    Object.keys(source).forEach(function (key) {
        if (target[key] !== null && typeof target[key] === 'object' &&
            !Array.isArray(target[key])) {
            _deepMerge(target[key], source[key]);
        }
        else {
            target[key] = source[key];
        }
    });
}
function _deepMerge(target, source) {
    Object.keys(source).forEach(function (key) {
        if (target[key] !== null && typeof target[key] === 'object' &&
            !Array.isArray(target[key])) {
            _deepMerge(target[key], source[key]);
        }
        else {
            target[key] = source[key];
        }
    });
}
Internal