diff options
author | Samy Pesse <samypesse@gmail.com> | 2016-04-23 17:10:16 +0200 |
---|---|---|
committer | Samy Pesse <samypesse@gmail.com> | 2016-04-23 17:10:16 +0200 |
commit | e1fa977b5b1b3c03790de6e2c21ee39ba55d9555 (patch) | |
tree | a1ad4386100b5779ef930845093c14639a3353b5 /lib/output/writer/writePage.js | |
parent | ce95f316b9ce1eac1e615db3540c4d0f30408d63 (diff) | |
download | gitbook-e1fa977b5b1b3c03790de6e2c21ee39ba55d9555.zip gitbook-e1fa977b5b1b3c03790de6e2c21ee39ba55d9555.tar.gz gitbook-e1fa977b5b1b3c03790de6e2c21ee39ba55d9555.tar.bz2 |
Add json encoding utils
Diffstat (limited to 'lib/output/writer/writePage.js')
-rw-r--r-- | lib/output/writer/writePage.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/lib/output/writer/writePage.js b/lib/output/writer/writePage.js new file mode 100644 index 0000000..23e37d0 --- /dev/null +++ b/lib/output/writer/writePage.js @@ -0,0 +1,33 @@ +var path = require('path'); +var Immutable = require('immutable'); + +var fs = require('../../utils/fs'); +var PathUtils = require('../../utils/path'); + +var WriteOptions = Immutable.Record({ + extension: '.html' +}); + +/** + Write a file to the output folder + + @param {Output} output + @param {Page} page + @param {Buffer|String} content + @return {Promise} +*/ +function writePage(output, page, content, options) { + var file = page.getFile(); + var outputOpts = output.getOptions(); + var rootFolder = outputOpts.get('root'); + + options = WriteOptions(options); + + // Get filename for file to write + var fileName = PathUtils.setExtension(file.getPath(), options.get('extension')); + var filePath = path.join(rootFolder, fileName); + + return fs.writeFile(filePath, content); +} + +module.exports = writePage; |