@osaedasia/oresume
Version:
A user-friendly library for generating complete Single Page Applications (SPAs)
2 lines (1 loc) • 562 B
JavaScript
import{ProgressMessage as r}from"./messages/ProgressMessage.js";class e{_worker;progressCallback;constructor(r){this._worker=new Worker(r,{type:"module"})}execute(e){return new Promise(((s,o)=>{this._worker.onmessage=e=>{const o=e.data;"progress"===o.type&&this.progressCallback&&this.progressCallback(new r(o.progress,o.info)),"result"===o.type&&s(o.data)},this._worker.onerror=r=>{o(new Error(`Worker error: ${r.message}`))},this._worker.postMessage(e)}))}terminate(){this._worker.terminate()}onProgress(r){this.progressCallback=r}}export{e as WorkerService};