fimfic2epub/bin/fimfic2epub
2016-08-24 14:47:48 +02:00

46 lines
913 B
JavaScript
Executable file

#!/usr/bin/env node
const FimFic2Epub = require('../fimfic2epub')
const fs = require('fs')
const STORY_ID = process.argv[2]
const ffc = new FimFic2Epub(STORY_ID)
const outputStdout = process.argv[3] === '-' || process.argv[3] === '/dev/stdout'
if (outputStdout) {
console.log = console.error
console.log('Outputting to stdout')
}
ffc.on('progress', (percent, status) => {
if (status) {
console.log('fimfic2epub: ' + status)
}
})
ffc.fetchAll()
.then(ffc.build.bind(ffc))
.then(() => {
let filename = process.argv[3] || ffc.filename
let stream
if (outputStdout) {
stream = process.stdout
} else {
stream = fs.createWriteStream(filename)
}
ffc.streamFile()
.pipe(stream)
.on('finish', () => {
if (!outputStdout) {
console.log('Saved story as ' + filename)
}
})
})
.catch((err) => {
console.log('Error: ' + (err || 'Unknown error'))
process.exit(1)
})