From 7be2dc2466b2404e19e5eff2be82ec1c6c4226a0 Mon Sep 17 00:00:00 2001 From: Eden Kirin Date: Wed, 2 Aug 2023 11:04:00 +0200 Subject: [PATCH] Web API print --- browser-print-api.js | 30 +++++++++++++++++ index.html | 76 +++++++++++++++++++++++++------------------- sticker-print.js | 26 --------------- 3 files changed, 74 insertions(+), 58 deletions(-) create mode 100644 browser-print-api.js diff --git a/browser-print-api.js b/browser-print-api.js new file mode 100644 index 0000000..676b8e3 --- /dev/null +++ b/browser-print-api.js @@ -0,0 +1,30 @@ +function getAvailablePrinters() { + return new Promise((resolve, reject) => { + const devices = []; + BrowserPrint.getDefaultDevice( + "printer", + (device) => { + devices.push(device); + const defaultDevice = device; + + BrowserPrint.getLocalDevices((deviceList) => { + deviceList?.printer.forEach( + (device) => { + if (!defaultDevice || device.uid != defaultDevice.uid) { + devices.push(device); + } + }, + (error) => { + reject("Error getting local devices"); + }, + "printer" + ); + resolve(devices); + }); + }, + (error) => { + reject(error); + } + ); + }); +} diff --git a/index.html b/index.html index 0d1083d..c963854 100644 --- a/index.html +++ b/index.html @@ -16,6 +16,7 @@ + @@ -24,11 +25,16 @@
- +

+ -
@@ -43,45 +49,51 @@ diff --git a/sticker-print.js b/sticker-print.js index ac894e7..0e29378 100644 --- a/sticker-print.js +++ b/sticker-print.js @@ -169,29 +169,3 @@ async function createInternalStickerZPL(options) { ...options, }); } - - -function getAvailablePrinters() { - return new Promise((resolve, reject) => { - const devices = []; - BrowserPrint.getDefaultDevice("printer", device => { - devices.push(device); - const defaultDevice = device; - - BrowserPrint.getLocalDevices(deviceList => { - //console.log(deviceList) - deviceList.printer.forEach(device => { - if (!defaultDevice || device.uid != defaultDevice.uid) { - devices.push(device); - } - }, error => { - reject("Error getting local devices"); - }, "printer"); - resolve(devices); - }); - }, error => { - reject(error); - }) - }) -} -