chainscript
Version:
Client for chainscript.io
44 lines (31 loc) • 1 kB
JavaScript
;
exports.__esModule = true;
exports['default'] = readFromPDF;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _fs = require('fs');
var _fs2 = _interopRequireDefault(_fs);
function readFromPDF(input) {
return new Promise(function (resolve, reject) {
var reader = typeof input === 'string' ? _fs2['default'].createReadStream(input) : input;
var buffer = new Buffer([]);
reader.on('error', reject);
reader.on('data', function (data) {
return buffer = Buffer.concat([buffer, data]);
});
reader.on('end', function () {
var start = buffer.indexOf('\n% Chainscript: ');
if (start < 0) {
resolve(null);
}
start += 16;
var end = buffer.indexOf('\n', start);
var str = buffer.slice(start, end).toString();
try {
resolve(JSON.parse(str));
} catch (err) {
reject(err);
}
});
});
}
module.exports = exports['default'];