summaryrefslogtreecommitdiffstats
path: root/lib/modifiers/config/addPlugin.js
blob: 29f118a6e16f081fd0f2977eccfd3cfa53776264 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var PluginDependency = require('../../models/pluginDependency');

/**
 * Add a plugin to a book's configuration
 * @param {Book} book
 * @param {String} plugin
 * @param {String} version (optional)
 * @return {Book}
 */
function addPlugin(book, plugin, version) {
    var config = book.getConfig();
    var deps = config.getPluginDependencies();

    var dep = PluginDependency.create(plugin, version);

    deps = deps.push(dep);
    config = config.setPluginDependencies(deps);

    return book.setConfig(config);
}

module.exports = addPlugin;