diff options
author | Samy Pessé <samypesse@gmail.com> | 2016-05-02 09:14:01 +0200 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2016-05-02 09:14:01 +0200 |
commit | 494ba78156eb29a782ee00cfea11ea558a50618c (patch) | |
tree | 1f88d22d3e2f13b6c65c0420316f64018b901e0e /lib/api | |
parent | 9816b27ebfe0aa91f3f550d44626a2cd860a92de (diff) | |
download | gitbook-494ba78156eb29a782ee00cfea11ea558a50618c.zip gitbook-494ba78156eb29a782ee00cfea11ea558a50618c.tar.gz gitbook-494ba78156eb29a782ee00cfea11ea558a50618c.tar.bz2 |
Complete api method template.applyBlock
Diffstat (limited to 'lib/api')
-rw-r--r-- | lib/api/encodeGlobal.js | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/api/encodeGlobal.js b/lib/api/encodeGlobal.js index 6c3fda3..e8f7156 100644 --- a/lib/api/encodeGlobal.js +++ b/lib/api/encodeGlobal.js @@ -2,10 +2,12 @@ var Promise = require('../utils/promise'); var PathUtils = require('../utils/path'); var fs = require('../utils/fs'); +var Plugins = require('../plugins'); var deprecate = require('./deprecate'); var encodeConfig = require('./encodeConfig'); var encodeNavigation = require('./encodeNavigation'); var fileToURL = require('../output/helper/fileToURL'); +var defaultBlocks = require('../constants/defaultBlocks'); /** Encode a global context into a JS object @@ -19,6 +21,8 @@ function encodeGlobal(output) { var bookFS = book.getContentFS(); var logger = output.getLogger(); var outputFolder = output.getRoot(); + var plugins = output.getPlugins(); + var blocks = Plugins.listBlocks(plugins); var result = { log: logger, @@ -61,11 +65,12 @@ function encodeGlobal(output) { Apply a templating block and returns its result @param {String} name - @param {Object} block + @param {Object} blockData @return {Promise|Object} */ - applyBlock: function(name, block) { - // todo + applyBlock: function(name, blockData) { + var block = blocks.get(name) || defaultBlocks.get(name); + return Promise(block.applyBlock(blockData, result)); } }, |