diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/json/encodeBookWithPage.js | 12 | ||||
-rw-r--r-- | lib/json/encodeOutput.js | 10 | ||||
-rw-r--r-- | lib/json/encodeOutputWithPage.js | 23 | ||||
-rw-r--r-- | lib/json/index.js | 1 | ||||
-rw-r--r-- | lib/output/generatePage.js | 14 | ||||
-rw-r--r-- | lib/output/json/onPage.js | 10 | ||||
-rw-r--r-- | lib/output/website/onPage.js | 12 |
7 files changed, 53 insertions, 29 deletions
diff --git a/lib/json/encodeBookWithPage.js b/lib/json/encodeBookWithPage.js index 5600a82..1c5c7a3 100644 --- a/lib/json/encodeBookWithPage.js +++ b/lib/json/encodeBookWithPage.js @@ -3,12 +3,12 @@ var encodePage = require('./encodePage'); var encodeFile = require('./encodeFile'); /** - Return a JSON representation of a book with a specific file - - @param {Book} output - @param {Page} page - @return {Object} -*/ + * Return a JSON representation of a book with a specific file + * + * @param {Book} output + * @param {Page} page + * @return {Object} + */ function encodeBookWithPage(book, page) { var file = page.getFile(); diff --git a/lib/json/encodeOutput.js b/lib/json/encodeOutput.js index 9054124..7347e57 100644 --- a/lib/json/encodeOutput.js +++ b/lib/json/encodeOutput.js @@ -1,11 +1,11 @@ var encodeBook = require('./encodeBook'); /** - Encode an output to JSON - - @param {Output} - @return {Object} -*/ + * Encode an output to JSON + * + * @param {Output} + * @return {Object} + */ function encodeOutputToJson(output) { var book = output.getBook(); var generator = output.getGenerator(); diff --git a/lib/json/encodeOutputWithPage.js b/lib/json/encodeOutputWithPage.js new file mode 100644 index 0000000..8b21e3d --- /dev/null +++ b/lib/json/encodeOutputWithPage.js @@ -0,0 +1,23 @@ +var encodeOutput = require('./encodeOutput'); +var encodePage = require('./encodePage'); +var encodeFile = require('./encodeFile'); + +/** + * Return a JSON representation of a book with a specific file + * + * @param {Book} output + * @param {Page} page + * @return {Object} + */ +function encodeOutputWithPage(output, page) { + var file = page.getFile(); + var book = output.getBook(); + + var result = encodeOutput(output); + result.page = encodePage(page, book.getSummary()); + result.file = encodeFile(file); + + return result; +} + +module.exports = encodeOutputWithPage; diff --git a/lib/json/index.js b/lib/json/index.js index 4387ae0..3b68f5e 100644 --- a/lib/json/index.js +++ b/lib/json/index.js @@ -2,6 +2,7 @@ module.exports = { encodeOutput: require('./encodeOutput'), encodeBookWithPage: require('./encodeBookWithPage'), + encodeOutputWithPage: require('./encodeOutputWithPage'), encodeBook: require('./encodeBook'), encodeFile: require('./encodeFile'), encodePage: require('./encodePage'), diff --git a/lib/output/generatePage.js b/lib/output/generatePage.js index fa6fc0e..090a870 100644 --- a/lib/output/generatePage.js +++ b/lib/output/generatePage.js @@ -10,12 +10,12 @@ var createTemplateEngine = require('./createTemplateEngine'); var callPageHook = require('./callPageHook'); /** - Prepare and generate HTML for a page - - @param {Output} output - @param {Page} page - @return {Promise<Page>} -*/ + * Prepare and generate HTML for a page + * + * @param {Output} output + * @param {Page} page + * @return {Promise<Page>} + */ function generatePage(output, page) { var book = output.getBook(); var engine = createTemplateEngine(output); @@ -27,7 +27,7 @@ function generatePage(output, page) { var file = resultPage.getFile(); var filePath = file.getPath(); var parser = file.getParser(); - var context = JSONUtils.encodeBookWithPage(book, resultPage); + var context = JSONUtils.encodeOutputWithPage(output, resultPage); if (!parser) { return Promise.reject(error.FileNotParsableError({ diff --git a/lib/output/json/onPage.js b/lib/output/json/onPage.js index fece540..2315ba0 100644 --- a/lib/output/json/onPage.js +++ b/lib/output/json/onPage.js @@ -7,11 +7,11 @@ var getModifiers = require('../getModifiers'); var JSON_VERSION = '3'; /** - Write a page as a json file - - @param {Output} output - @param {Page} page -*/ + * Write a page as a json file + * + * @param {Output} output + * @param {Page} page + */ function onPage(output, page) { var file = page.getFile(); var readme = output.getBook().getReadme().getFile(); diff --git a/lib/output/website/onPage.js b/lib/output/website/onPage.js index 14c7b22..5fb40a7 100644 --- a/lib/output/website/onPage.js +++ b/lib/output/website/onPage.js @@ -12,11 +12,11 @@ var createTemplateEngine = require('./createTemplateEngine'); var fileToOutput = require('../helper/fileToOutput'); /** - Write a page as a json file - - @param {Output} output - @param {Page} page -*/ + * Write a page as a json file + * + * @param {Output} output + * @param {Page} page + */ function onPage(output, page) { var options = output.getOptions(); var prefix = options.get('prefix'); @@ -40,7 +40,7 @@ function onPage(output, page) { return Modifiers.modifyHTML(page, getModifiers(output, page)) .then(function(resultPage) { // Generate the context - var context = JSONUtils.encodeBookWithPage(output.getBook(), resultPage); + var context = JSONUtils.encodeOutputWithPage(output, resultPage); context.plugins = { resources: Plugins.listResources(plugins, resources).toJS() }; |