UNPKG

cordova-plugin-foxitpdf

Version:
60 lines (49 loc) 1.56 kB
var exec = require('cordova/exec'); var channel = require('cordova/channel'); var channels = { 'onDocumentAdded': channel.create('onDocumentAdded'), }; var ScanPdf = function(){}; var successfunction = function(){}; ScanPdf.prototype._eventHandler = function (event) { successfunction(event); if (event && (event.type in channels)) { channels[event.type].fire(event); } }; ScanPdf.prototype.initializeScanner = function(serial1, serial2) { return new Promise(function(resolve, reject) { exec(resolve, reject, "FoxitPdf", "initializeScanner", [{ 'serial1': serial1, 'serial2': serial2, }]); }); }; ScanPdf.prototype.initializeCompression = function(serial1, serial2) { return new Promise(function(resolve, reject) { exec(resolve, reject, "FoxitPdf", "initializeCompression", [{ 'serial1': serial1, 'serial2': serial2, }]); }); }; ScanPdf.prototype.createScanner = function() { return new Promise(function(resolve, reject) { successfunction = resolve; exec(scan._eventHandler, reject, "FoxitPdf", "createScanner", [{}]); }); }; ScanPdf.prototype.addEventListener = function (eventname, f) { if (eventname in channels) { if (channels[eventname].numHandlers < 1) { channels[eventname].subscribe(f); } } }; ScanPdf.prototype.removeEventListener = function (eventname, f) { if (eventname in channels) { channels[eventname].unsubscribe(f); } }; var scan = new ScanPdf(); module.exports = scan;