/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/electron-thermal-printer@0.0.5/printer.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
const BrowserWindow=require("electron").BrowserWindow,os=require("os");let ipc=require("electron").ipcMain,sender=require("./libs/sender");const storage=require("electron-json-storage");function randomString(e){e=e||32;var t="ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678",n="";for(i=0;i<e;i++)n+=t.charAt(Math.floor(48*Math.random()));return n}function addHistory(e){return new Promise(((e,t)=>{storage.get("printHistory",((n,r)=>{n?t():(r.logs||((r={}).logs=[]),e(r))}))})).then((t=>new Promise(((n,r)=>{e.id=`${randomString(20)}${(new Date).getTime()}`,t.logs.push(e),t.logs.length>100&&t.logs.shift(),storage.set("printHistory",t,(e=>{e?r():n()}))}))))}function getHistoryList(){return new Promise(((e,t)=>{storage.get("printHistory",((n,r)=>{n?t():e(r)}))}))}function getHistory(e){return getHistoryList().then((t=>(console.log(t),new Promise(((n,r)=>{for(let r=0;r<t.logs.length;r++)if(t.logs[r].id==e)return void n([t.logs[r],r]);r("cannot find id")})))))}function setHistory(e,t){return getHistory(e).then((([e,t])=>new Promise(((e,n)=>{getHistoryList().then((n=>{e([n,t])}))})))).then((([e,n])=>new Promise(((r,i)=>{e.logs[n]=t,storage.set("printHistory",e,(e=>{e?i():r(t)}))}))))}function print58m(e){return new Promise(((t,n)=>{let r=!1,i=e.timeoutPerLine?e.timeoutPerLine:200;e.preview||(setTimeout((function(){r||(n(),r=!0)}),i*e.data.length+1e3),addHistory(e));let o=new BrowserWindow({width:210,height:1200,show:e.preview});o.on("closed",(function(){o=null})),o.loadURL("file://"+__dirname+"/58mPage.html"),o.webContents.on("did-finish-load",(()=>{let n=e.data;new Promise(((e,t)=>{!function t(r){if(r>=n.length)return void e();let i=n[r];switch(i.type){case"text":sender("print-text",o.webContents,i).then((e=>{t(r+1)}));break;case"barcode":sender("print-barcode",o.webContents,i).then((e=>{t(r+1)}));break;case"qrcode":sender("print-qrcode",o.webContents,i).then((e=>{t(r+1)}));break;case"bodyInit":sender("print-body-init",o.webContents,i).then((e=>{t(r+1)}))}}(0)})).then((()=>{e.preview?t(e):o.webContents.print({silent:!0,printBackground:!0,deviceName:e.deviceName},(function(e){r||(t(e),r=!0),o.close()}))}))}))}))}storage.setDataPath(os.tmpdir()),ipc.on("print-clear",((e,t)=>{storage.set("printHistory",{},((t,n)=>{e.returnValue=!0}))})),ipc.on("print-get",((e,t)=>{getHistory(t).then((([t,n])=>{e.returnValue=t}))})),ipc.on("print-set",((e,t)=>{setHistory(t.id,t.data).then((t=>{console.log(t),e.returnValue=t}))})),ipc.on("print-get-list",((e,t)=>{getHistoryList().then((t=>{e.returnValue=t}))})),ipc.on("print-58m",((e,t)=>{print58m(t).then((t=>{e.sender.send("print-58m-reply",t)})).catch((()=>{e.sender.send("print-58m-reply",!1)}))})),module.exports.print58m=e=>print58m(e);
//# sourceMappingURL=/sm/842e4a039a28781150b2418555c7879b5e8da8293a6c72eec09d22df468e691f.map