UNPKG

invoice-fs

Version:

Nostalgic command-line invoicing application producing plain text invoices and JSON data structures. Uses the file system as a database

27 lines (22 loc) 678 B
var Api = require('invoice-api'), issuerFile = './data/issuer.json', issuerAscii = './data/issuer.ascii', out = require('./out'), fs = require('fs'), writeDataSync = require('./writeDataSync'); function Issuer() { this.type = 'issuer'; this.open(); } Issuer.prototype.open = function() { try { this.data = new Api.Issuer(JSON.parse(fs.readFileSync(issuerFile, 'utf8'))); this.data.asciiArt = fs.readFileSync(issuerAscii, 'utf8'); } catch (e) { this.data = new Api.Issuer(); } }; Issuer.prototype.save = function(callback) { writeDataSync(issuerFile, this.data, callback); }; module.exports = new Issuer();