diff options
Diffstat (limited to 'lib/output/ebook')
-rw-r--r-- | lib/output/ebook/index.js | 12 | ||||
-rw-r--r-- | lib/output/ebook/onFinish.js | 19 | ||||
-rw-r--r-- | lib/output/ebook/onInit.js | 21 | ||||
-rw-r--r-- | lib/output/ebook/onPage.js | 8 |
4 files changed, 52 insertions, 8 deletions
diff --git a/lib/output/ebook/index.js b/lib/output/ebook/index.js index 46a94e3..3aaa7e7 100644 --- a/lib/output/ebook/index.js +++ b/lib/output/ebook/index.js @@ -1,5 +1,9 @@ +var extend = require('extend'); +var websiteGenerator = require('../website'); -module.exports = { - - -}; +module.exports = extend({}, websiteGenerator, { + name: 'ebook', + onInit: require('./onInit'), + onPage: require('./onPage'), + onFinish: require('./onFinish') +}); diff --git a/lib/output/ebook/onFinish.js b/lib/output/ebook/onFinish.js new file mode 100644 index 0000000..5ea5148 --- /dev/null +++ b/lib/output/ebook/onFinish.js @@ -0,0 +1,19 @@ +var websiteGenerator = require('../website'); + +/** + Finish the generation, generate the ebook file using ebook-convert + + @param {Output} + @return {Output} +*/ +function onFinish(output) { + return websiteGenerator.onFinish(output) + .then(function(resultOutput) { + + // todo + + return resultOutput; + }); +} + +module.exports = onFinish; diff --git a/lib/output/ebook/onInit.js b/lib/output/ebook/onInit.js new file mode 100644 index 0000000..9cee141 --- /dev/null +++ b/lib/output/ebook/onInit.js @@ -0,0 +1,21 @@ +var websiteGenerator = require('../website'); + +/** + Initialize the generator + + @param {Output} + @return {Output} +*/ +function onInit(output) { + return websiteGenerator.onInit(output) + .then(function(resultOutput) { + var options = resultOutput.getOptions(); + + options = options.set('directoryIndex', false); + options = options.set('prefix', 'ebook'); + + return resultOutput.setOptions(options); + }); +} + +module.exports = onInit; diff --git a/lib/output/ebook/onPage.js b/lib/output/ebook/onPage.js index ab15133..13edf17 100644 --- a/lib/output/ebook/onPage.js +++ b/lib/output/ebook/onPage.js @@ -1,18 +1,18 @@ var website = require('../website'); -var Modifier = require('../modifier'); +var Modifiers = require('../modifiers'); /** Write a page for ebook output @param {Output} output - @param {Page} page + @param {Output} */ function onPage(output, page) { var options = output.getOptions(); // Inline assets - return Modifier.modifyHTML(page, [ - Modifier.inlineAssets(options.get('root')) + return Modifiers.modifyHTML(page, [ + Modifiers.inlineAssets(options.get('root')) ]) // Write page using website generator |