diff options
author | Samy Pessé <samypesse@gmail.com> | 2016-04-22 22:21:34 +0200 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2016-04-22 22:21:34 +0200 |
commit | fb0ea4610d7835a14c91fd57268ae3d809062f8d (patch) | |
tree | 2755a24a10fd30b5f919476eed4fa20a18e440be /lib/models/output.js | |
parent | 4f86a9978b4b27b12e40ab0b5b9e18b8e0615266 (diff) | |
download | gitbook-fb0ea4610d7835a14c91fd57268ae3d809062f8d.zip gitbook-fb0ea4610d7835a14c91fd57268ae3d809062f8d.tar.gz gitbook-fb0ea4610d7835a14c91fd57268ae3d809062f8d.tar.bz2 |
Add base utils for generation
Diffstat (limited to 'lib/models/output.js')
-rw-r--r-- | lib/models/output.js | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/lib/models/output.js b/lib/models/output.js new file mode 100644 index 0000000..957d9d3 --- /dev/null +++ b/lib/models/output.js @@ -0,0 +1,47 @@ +var Immutable = require('immutable'); + +var Book = require('./book'); + +var Output = Immutable.Record({ + book: Book(), + plugins: Immutable.OrderedMap(), + pages: Immutable.OrderedMap(), + assets: Immutable.List(), + options: Immutable.Map() +}); + +Output.prototype.getBook = function() { + return this.get('book'); +}; + +Output.prototype.getPlugins = function() { + return this.get('plugins'); +}; + +Output.prototype.getPages = function() { + return this.get('pages'); +}; + +Output.prototype.getOptions = function() { + return this.get('options'); +}; + +Output.prototype.getAssets = function() { + return this.get('assets'); +}; + +/** + Create an Output instance from a book and a set of options + + @param {Book} book + @param {Object} options + @return {Output} +*/ +Output.createForBook = function(book, options) { + return new Output({ + book: book, + options: options + }); +}; + +module.exports = Output; |