diff options
Diffstat (limited to 'lib/api/encodeGlobal.js')
-rw-r--r-- | lib/api/encodeGlobal.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/lib/api/encodeGlobal.js b/lib/api/encodeGlobal.js new file mode 100644 index 0000000..b2dd77a --- /dev/null +++ b/lib/api/encodeGlobal.js @@ -0,0 +1,46 @@ +var path = require('path'); + +var fs = require('../utils/fs'); + +var deprecate = require('./deprecate'); +var encodeConfig = require('./encodeConfig'); + +/** + Encode a global context into a JS object + It's the context for page's hook, etc + + @param {Output} output + @return {Object} +*/ +function encodeGlobal(output) { + var book = output.getBook(); + var logger = output.getLogger(); + + var outputFolder = output.getOptions().get('root'); + + var result = { + log: logger, + config: encodeConfig(output, book.getConfig()) + }; + + result.output = { + name: 'website', + + toURL: function(s) { + return s; + }, + + writeFile: function(fileName, content) { + var filePath = path.join(outputFolder, fileName); + return fs.writeFile(filePath, content); + } + }; + + result.isLanguageBook = function() { + return false; + }; + + return result; +} + +module.exports = encodeGlobal; |