@embedpdf/engines 1.0.12 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/engine-1ZSXSAtm.cjs +2 -0
  2. package/dist/engine-1ZSXSAtm.cjs.map +1 -0
  3. package/dist/{engine-M0_XZhss.js → engine-O49988D4.js} +716 -189
  4. package/dist/engine-O49988D4.js.map +1 -0
  5. package/dist/index.cjs +1 -1
  6. package/dist/index.cjs.map +1 -1
  7. package/dist/index.js +2 -5
  8. package/dist/index.js.map +1 -1
  9. package/dist/lib/pdfium/engine.d.ts +180 -29
  10. package/dist/lib/pdfium/index.cjs +1 -1
  11. package/dist/lib/pdfium/index.js +2 -2
  12. package/dist/lib/pdfium/web/direct-engine.cjs +1 -1
  13. package/dist/lib/pdfium/web/direct-engine.js +1 -1
  14. package/dist/lib/pdfium/web/worker-engine.cjs +1 -1
  15. package/dist/lib/pdfium/web/worker-engine.js +1 -1
  16. package/dist/lib/webworker/engine.cjs +1 -1
  17. package/dist/lib/webworker/engine.cjs.map +1 -1
  18. package/dist/lib/webworker/engine.d.ts +1 -2
  19. package/dist/lib/webworker/engine.js +1 -16
  20. package/dist/lib/webworker/engine.js.map +1 -1
  21. package/dist/preact/index.cjs +1 -1
  22. package/dist/preact/index.js +1 -1
  23. package/dist/react/index.cjs +1 -1
  24. package/dist/react/index.js +1 -1
  25. package/dist/runner-Br_PKNmU.cjs +2 -0
  26. package/dist/{runner-BcS-WEof.cjs.map → runner-Br_PKNmU.cjs.map} +1 -1
  27. package/dist/{runner-DUp_7Uu_.js → runner-CABEqeFp.js} +2 -5
  28. package/dist/{runner-DUp_7Uu_.js.map → runner-CABEqeFp.js.map} +1 -1
  29. package/dist/vue/index.cjs +1 -1
  30. package/dist/vue/index.js +1 -1
  31. package/package.json +3 -3
  32. package/dist/engine-B7CS6Qyp.cjs +0 -2
  33. package/dist/engine-B7CS6Qyp.cjs.map +0 -1
  34. package/dist/engine-M0_XZhss.js.map +0 -1
  35. package/dist/runner-BcS-WEof.cjs +0 -2
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/models"),t="WebWorkerEngine",r="Engine";class s extends e.Task{constructor(e,t){super(),this.worker=e,this.messageId=t}abort(e){super.abort(e),this.worker.postMessage({type:"AbortRequest",data:{messageId:this.messageId}})}}const a=class a{constructor(n,i=new e.NoopLogger){this.worker=n,this.logger=i,this.tasks=new Map,this.handle=e=>{this.logger.debug(t,r,"webworker engine start handling message: ",e.data);try{const t=e.data,r=this.tasks.get(t.id);if(!r)return;switch(t.type){case"ReadyResponse":this.readyTask.resolve(!0);break;case"ExecuteResponse":switch(t.data.type){case"result":r.resolve(t.data.value);break;case"error":r.reject(t.data.value.reason)}this.tasks.delete(t.id)}}catch(s){this.logger.error(t,r,"webworker met error when handling message: ",s)}},this.worker.addEventListener("message",this.handle),this.readyTask=new s(this.worker,a.readyTaskId),this.tasks.set(a.readyTaskId,this.readyTask)}generateRequestId(e){return`${e}.${Date.now()}.${Math.random()}`}initialize(){this.logger.debug(t,r,"initialize");const e=this.generateRequestId("General"),a=new s(this.worker,e),n={id:e,type:"ExecuteRequest",data:{name:"initialize",args:[]}};return this.proxy(a,n),a}destroy(){this.logger.debug(t,r,"destroy");const e=this.generateRequestId("General"),a=new s(this.worker,e),n=()=>{this.worker.removeEventListener("message",this.handle),this.worker.terminate()};a.wait(n,n);const i={id:e,type:"ExecuteRequest",data:{name:"destroy",args:[]}};return this.proxy(a,i),a}openDocumentUrl(e,a){this.logger.debug(t,r,"openDocumentUrl",e.url,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"openDocumentUrl",args:[e,a]}};return this.proxy(i,o),i}openDocumentFromBuffer(e,a){this.logger.debug(t,r,"openDocumentFromBuffer",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"openDocumentFromBuffer",args:[e,a]}};return this.proxy(i,o),i}openDocumentFromLoader(e,a){this.logger.debug(t,r,"openDocumentFromLoader",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"openDocumentFromLoader",args:[e,a]}};return this.proxy(i,o),i}getMetadata(e){this.logger.debug(t,r,"getMetadata",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getMetadata",args:[e]}};return this.proxy(n,i),n}updateAnnotationColor(e,a,n,i,o=0){this.logger.debug(t,r,"setAnnotationColor",e,a,n,i);const g=this.generateRequestId(e.id),d=new s(this.worker,g),u={id:g,type:"ExecuteRequest",data:{name:"updateAnnotationColor",args:[e,a,n,i,o]}};return this.proxy(d,u),d}getDocPermissions(e){this.logger.debug(t,r,"getDocPermissions",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getDocPermissions",args:[e]}};return this.proxy(n,i),n}getDocUserPermissions(e){this.logger.debug(t,r,"getDocUserPermissions",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getDocUserPermissions",args:[e]}};return this.proxy(n,i),n}getBookmarks(e){this.logger.debug(t,r,"getBookmarks",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getBookmarks",args:[e]}};return this.proxy(n,i),n}getSignatures(e){this.logger.debug(t,r,"getSignatures",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getSignatures",args:[e]}};return this.proxy(n,i),n}renderPage(e,a,n,i,o,g,d="image/webp"){this.logger.debug(t,r,"renderPage",e,a,n,i,o,g);const u=this.generateRequestId(e.id),h=new s(this.worker,u),c={id:u,type:"ExecuteRequest",data:{name:"renderPage",args:[e,a,n,i,o,g,d]}};return this.proxy(h,c),h}renderPageRect(e,a,n,i,o,g,d,u="image/webp"){this.logger.debug(t,r,"renderPageRect",e,a,n,i,o,g,d);const h=this.generateRequestId(e.id),c=new s(this.worker,h),p={id:h,type:"ExecuteRequest",data:{name:"renderPageRect",args:[e,a,n,i,o,g,d,u]}};return this.proxy(c,p),c}renderAnnotation(e,a,n,i,o,g,d,u){this.logger.debug(t,r,"renderAnnotation",e,a,n,i,o,g,d,u);const h=this.generateRequestId(e.id),c=new s(this.worker,h),p={id:h,type:"ExecuteRequest",data:{name:"renderAnnotation",args:[e,a,n,i,o,g,d,u]}};return this.proxy(c,p),c}getAllAnnotations(e){this.logger.debug(t,r,"getAllAnnotations",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getAllAnnotations",args:[e]}};return this.proxy(n,i),n}getPageAnnotations(e,a){this.logger.debug(t,r,"getPageAnnotations",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getPageAnnotations",args:[e,a]}};return this.proxy(i,o),i}createPageAnnotation(e,a,n){this.logger.debug(t,r,"createPageAnnotations",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"createPageAnnotation",args:[e,a,n]}};return this.proxy(o,g),o}updatePageAnnotation(e,a,n){this.logger.debug(t,r,"updatePageAnnotation",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"updatePageAnnotation",args:[e,a,n]}};return this.proxy(o,g),o}removePageAnnotation(e,a,n){this.logger.debug(t,r,"removePageAnnotations",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"removePageAnnotation",args:[e,a,n]}};return this.proxy(o,g),o}getPageTextRects(e,a,n,i){this.logger.debug(t,r,"getPageTextRects",e,a,n,i);const o=this.generateRequestId(e.id),g=new s(this.worker,o),d={id:o,type:"ExecuteRequest",data:{name:"getPageTextRects",args:[e,a,n,i]}};return this.proxy(g,d),g}renderThumbnail(e,a,n,i,o){this.logger.debug(t,r,"renderThumbnail",e,a,n,i,o);const g=this.generateRequestId(e.id),d=new s(this.worker,g),u={id:g,type:"ExecuteRequest",data:{name:"renderThumbnail",args:[e,a,n,i,o]}};return this.proxy(d,u),d}searchAllPages(e,a,n=[]){this.logger.debug(t,r,"searchAllPages 123",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"searchAllPages",args:[e,a,n]}};return this.proxy(o,g),o}saveAsCopy(e){this.logger.debug(t,r,"saveAsCopy",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"saveAsCopy",args:[e]}};return this.proxy(n,i),n}getAttachments(e){this.logger.debug(t,r,"getAttachments",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getAttachments",args:[e]}};return this.proxy(n,i),n}readAttachmentContent(e,a){this.logger.debug(t,r,"readAttachmentContent",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"readAttachmentContent",args:[e,a]}};return this.proxy(i,o),i}setFormFieldValue(e,a,n,i){this.logger.debug(t,r,"setFormFieldValue",e,n,i);const o=this.generateRequestId(e.id),g=new s(this.worker,o),d={id:o,type:"ExecuteRequest",data:{name:"setFormFieldValue",args:[e,a,n,i]}};return this.proxy(g,d),g}flattenPage(e,a,n){this.logger.debug(t,r,"flattenPage",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"flattenPage",args:[e,a,n]}};return this.proxy(o,g),o}extractPages(e,a){this.logger.debug(t,r,"extractPages",e);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"extractPages",args:[e,a]}};return this.proxy(i,o),i}extractText(e,a){this.logger.debug(t,r,"extractText",e);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"extractText",args:[e,a]}};return this.proxy(i,o),i}getTextSlices(e,a){this.logger.debug(t,r,"getTextSlices",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getTextSlices",args:[e,a]}};return this.proxy(i,o),i}getPageGlyphs(e,a){this.logger.debug(t,r,"getPageGlyphs",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getPageGlyphs",args:[e,a]}};return this.proxy(i,o),i}getPageGeometry(e,a){this.logger.debug(t,r,"getPageGeometry",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getPageGeometry",args:[e,a]}};return this.proxy(i,o),i}merge(e){this.logger.debug(t,r,"merge",e);const a=e.map((e=>e.id)).join("."),n=this.generateRequestId(a),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"merge",args:[e]}};return this.proxy(i,o),i}mergePages(e){this.logger.debug(t,r,"mergePages",e);const a=this.generateRequestId(e.map((e=>e.docId)).join(".")),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"mergePages",args:[e]}};return this.proxy(n,i),n}closeDocument(e){this.logger.debug(t,r,"closeDocument",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"closeDocument",args:[e]}};return this.proxy(n,i),n}proxy(s,a,n=[]){this.logger.debug(t,r,"send request to worker",s,a,n),this.logger.perf(t,r,`${a.data.name}`,"Begin",a.id),this.readyTask.wait((()=>{this.worker.postMessage(a,n),s.wait((()=>{this.logger.perf(t,r,`${a.data.name}`,"End",a.id)}),(()=>{this.logger.perf(t,r,`${a.data.name}`,"End",a.id)})),this.tasks.set(a.id,s)}),(()=>{this.logger.perf(t,r,`${a.data.name}`,"End",a.id),s.reject({code:e.PdfErrorCode.Initialization,message:"worker initialization failed"})}))}};a.readyTaskId="0";let n=a;exports.WebWorkerEngine=n,exports.WorkerTask=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/models"),t="WebWorkerEngine",r="Engine";class s extends e.Task{constructor(e,t){super(),this.worker=e,this.messageId=t}abort(e){super.abort(e),this.worker.postMessage({type:"AbortRequest",data:{messageId:this.messageId}})}}const a=class a{constructor(n,i=new e.NoopLogger){this.worker=n,this.logger=i,this.tasks=new Map,this.handle=e=>{this.logger.debug(t,r,"webworker engine start handling message: ",e.data);try{const t=e.data,r=this.tasks.get(t.id);if(!r)return;switch(t.type){case"ReadyResponse":this.readyTask.resolve(!0);break;case"ExecuteResponse":switch(t.data.type){case"result":r.resolve(t.data.value);break;case"error":r.reject(t.data.value.reason)}this.tasks.delete(t.id)}}catch(s){this.logger.error(t,r,"webworker met error when handling message: ",s)}},this.worker.addEventListener("message",this.handle),this.readyTask=new s(this.worker,a.readyTaskId),this.tasks.set(a.readyTaskId,this.readyTask)}generateRequestId(e){return`${e}.${Date.now()}.${Math.random()}`}initialize(){this.logger.debug(t,r,"initialize");const e=this.generateRequestId("General"),a=new s(this.worker,e),n={id:e,type:"ExecuteRequest",data:{name:"initialize",args:[]}};return this.proxy(a,n),a}destroy(){this.logger.debug(t,r,"destroy");const e=this.generateRequestId("General"),a=new s(this.worker,e),n=()=>{this.worker.removeEventListener("message",this.handle),this.worker.terminate()};a.wait(n,n);const i={id:e,type:"ExecuteRequest",data:{name:"destroy",args:[]}};return this.proxy(a,i),a}openDocumentUrl(e,a){this.logger.debug(t,r,"openDocumentUrl",e.url,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"openDocumentUrl",args:[e,a]}};return this.proxy(i,o),i}openDocumentFromBuffer(e,a){this.logger.debug(t,r,"openDocumentFromBuffer",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"openDocumentFromBuffer",args:[e,a]}};return this.proxy(i,o),i}openDocumentFromLoader(e,a){this.logger.debug(t,r,"openDocumentFromLoader",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"openDocumentFromLoader",args:[e,a]}};return this.proxy(i,o),i}getMetadata(e){this.logger.debug(t,r,"getMetadata",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getMetadata",args:[e]}};return this.proxy(n,i),n}getDocPermissions(e){this.logger.debug(t,r,"getDocPermissions",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getDocPermissions",args:[e]}};return this.proxy(n,i),n}getDocUserPermissions(e){this.logger.debug(t,r,"getDocUserPermissions",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getDocUserPermissions",args:[e]}};return this.proxy(n,i),n}getBookmarks(e){this.logger.debug(t,r,"getBookmarks",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getBookmarks",args:[e]}};return this.proxy(n,i),n}getSignatures(e){this.logger.debug(t,r,"getSignatures",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getSignatures",args:[e]}};return this.proxy(n,i),n}renderPage(e,a,n,i,o,g,d="image/webp"){this.logger.debug(t,r,"renderPage",e,a,n,i,o,g);const u=this.generateRequestId(e.id),h=new s(this.worker,u),c={id:u,type:"ExecuteRequest",data:{name:"renderPage",args:[e,a,n,i,o,g,d]}};return this.proxy(h,c),h}renderPageRect(e,a,n,i,o,g,d,u="image/webp"){this.logger.debug(t,r,"renderPageRect",e,a,n,i,o,g,d);const h=this.generateRequestId(e.id),c=new s(this.worker,h),p={id:h,type:"ExecuteRequest",data:{name:"renderPageRect",args:[e,a,n,i,o,g,d,u]}};return this.proxy(c,p),c}renderAnnotation(e,a,n,i,o,g,d,u){this.logger.debug(t,r,"renderAnnotation",e,a,n,i,o,g,d,u);const h=this.generateRequestId(e.id),c=new s(this.worker,h),p={id:h,type:"ExecuteRequest",data:{name:"renderAnnotation",args:[e,a,n,i,o,g,d,u]}};return this.proxy(c,p),c}getAllAnnotations(e){this.logger.debug(t,r,"getAllAnnotations",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getAllAnnotations",args:[e]}};return this.proxy(n,i),n}getPageAnnotations(e,a){this.logger.debug(t,r,"getPageAnnotations",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getPageAnnotations",args:[e,a]}};return this.proxy(i,o),i}createPageAnnotation(e,a,n){this.logger.debug(t,r,"createPageAnnotations",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"createPageAnnotation",args:[e,a,n]}};return this.proxy(o,g),o}updatePageAnnotation(e,a,n){this.logger.debug(t,r,"updatePageAnnotation",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"updatePageAnnotation",args:[e,a,n]}};return this.proxy(o,g),o}removePageAnnotation(e,a,n){this.logger.debug(t,r,"removePageAnnotations",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"removePageAnnotation",args:[e,a,n]}};return this.proxy(o,g),o}getPageTextRects(e,a,n,i){this.logger.debug(t,r,"getPageTextRects",e,a,n,i);const o=this.generateRequestId(e.id),g=new s(this.worker,o),d={id:o,type:"ExecuteRequest",data:{name:"getPageTextRects",args:[e,a,n,i]}};return this.proxy(g,d),g}renderThumbnail(e,a,n,i,o){this.logger.debug(t,r,"renderThumbnail",e,a,n,i,o);const g=this.generateRequestId(e.id),d=new s(this.worker,g),u={id:g,type:"ExecuteRequest",data:{name:"renderThumbnail",args:[e,a,n,i,o]}};return this.proxy(d,u),d}searchAllPages(e,a,n=[]){this.logger.debug(t,r,"searchAllPages 123",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"searchAllPages",args:[e,a,n]}};return this.proxy(o,g),o}saveAsCopy(e){this.logger.debug(t,r,"saveAsCopy",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"saveAsCopy",args:[e]}};return this.proxy(n,i),n}getAttachments(e){this.logger.debug(t,r,"getAttachments",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"getAttachments",args:[e]}};return this.proxy(n,i),n}readAttachmentContent(e,a){this.logger.debug(t,r,"readAttachmentContent",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"readAttachmentContent",args:[e,a]}};return this.proxy(i,o),i}setFormFieldValue(e,a,n,i){this.logger.debug(t,r,"setFormFieldValue",e,n,i);const o=this.generateRequestId(e.id),g=new s(this.worker,o),d={id:o,type:"ExecuteRequest",data:{name:"setFormFieldValue",args:[e,a,n,i]}};return this.proxy(g,d),g}flattenPage(e,a,n){this.logger.debug(t,r,"flattenPage",e,a,n);const i=this.generateRequestId(e.id),o=new s(this.worker,i),g={id:i,type:"ExecuteRequest",data:{name:"flattenPage",args:[e,a,n]}};return this.proxy(o,g),o}extractPages(e,a){this.logger.debug(t,r,"extractPages",e);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"extractPages",args:[e,a]}};return this.proxy(i,o),i}extractText(e,a){this.logger.debug(t,r,"extractText",e);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"extractText",args:[e,a]}};return this.proxy(i,o),i}getTextSlices(e,a){this.logger.debug(t,r,"getTextSlices",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getTextSlices",args:[e,a]}};return this.proxy(i,o),i}getPageGlyphs(e,a){this.logger.debug(t,r,"getPageGlyphs",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getPageGlyphs",args:[e,a]}};return this.proxy(i,o),i}getPageGeometry(e,a){this.logger.debug(t,r,"getPageGeometry",e,a);const n=this.generateRequestId(e.id),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"getPageGeometry",args:[e,a]}};return this.proxy(i,o),i}merge(e){this.logger.debug(t,r,"merge",e);const a=e.map((e=>e.id)).join("."),n=this.generateRequestId(a),i=new s(this.worker,n),o={id:n,type:"ExecuteRequest",data:{name:"merge",args:[e]}};return this.proxy(i,o),i}mergePages(e){this.logger.debug(t,r,"mergePages",e);const a=this.generateRequestId(e.map((e=>e.docId)).join(".")),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"mergePages",args:[e]}};return this.proxy(n,i),n}closeDocument(e){this.logger.debug(t,r,"closeDocument",e);const a=this.generateRequestId(e.id),n=new s(this.worker,a),i={id:a,type:"ExecuteRequest",data:{name:"closeDocument",args:[e]}};return this.proxy(n,i),n}proxy(s,a,n=[]){this.logger.debug(t,r,"send request to worker",s,a,n),this.logger.perf(t,r,`${a.data.name}`,"Begin",a.id),this.readyTask.wait((()=>{this.worker.postMessage(a,n),s.wait((()=>{this.logger.perf(t,r,`${a.data.name}`,"End",a.id)}),(()=>{this.logger.perf(t,r,`${a.data.name}`,"End",a.id)})),this.tasks.set(a.id,s)}),(()=>{this.logger.perf(t,r,`${a.data.name}`,"End",a.id),s.reject({code:e.PdfErrorCode.Initialization,message:"worker initialization failed"})}))}};a.readyTaskId="0";let n=a;exports.WebWorkerEngine=n,exports.WorkerTask=s;
2
2
  //# sourceMappingURL=engine.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine.cjs","sources":["../../../src/lib/webworker/engine.ts"],"sourcesContent":["import {\n FormFieldValue,\n PdfAnnotationTransformation,\n PdfAttachmentObject,\n PdfEngineError,\n PdfFile,\n PdfMetadataObject,\n PdfSignatureObject,\n PdfTextRectObject,\n PdfWidgetAnnoObject,\n SearchResult,\n SearchTarget,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationObject,\n PdfBookmarksObject,\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n Rect,\n Rotation,\n PdfRenderOptions,\n PdfErrorCode,\n PdfErrorReason,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n ImageConversionTypes,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n PageTextSlice,\n WebAlphaColor,\n AppearanceMode,\n} from '@embedpdf/models';\nimport { ExecuteRequest, Response } from './runner';\n\nconst LOG_SOURCE = 'WebWorkerEngine';\nconst LOG_CATEGORY = 'Engine';\n\n/**\n * Task that executed by webworker\n */\nexport class WorkerTask<R> extends Task<R, PdfErrorReason> {\n /**\n * Create a task that bind to web worker with specified message id\n * @param worker - web worker instance\n * @param messageId - id of message\n *\n * @public\n */\n constructor(\n public worker: Worker,\n private messageId: string,\n ) {\n super();\n }\n\n /**\n * {@inheritDoc @embedpdf/models!Task.abort}\n *\n * @override\n */\n abort(e: PdfErrorReason) {\n super.abort(e);\n\n this.worker.postMessage({\n type: 'AbortRequest',\n data: {\n messageId: this.messageId,\n },\n });\n }\n}\n\n/**\n * PDF engine that runs within webworker\n */\nexport class WebWorkerEngine implements PdfEngine {\n static readyTaskId = '0';\n /**\n * Task that represent the state of preparation\n */\n readyTask: WorkerTask<boolean>;\n /**\n * All the tasks that is executing\n */\n tasks: Map<string, WorkerTask<any>> = new Map();\n\n /**\n * Create an instance of WebWorkerEngine, it will create a worker with\n * specified url.\n * @param worker - webworker instance, this worker needs to contains the running instance of {@link EngineRunner}\n * @param logger - logger instance\n *\n * @public\n */\n constructor(\n private worker: Worker,\n private logger: Logger = new NoopLogger(),\n ) {\n this.worker.addEventListener('message', this.handle);\n\n this.readyTask = new WorkerTask<boolean>(this.worker, WebWorkerEngine.readyTaskId);\n this.tasks.set(WebWorkerEngine.readyTaskId, this.readyTask);\n }\n\n /**\n * Handle event from web worker. There are 2 kinds of event\n * 1. ReadyResponse: web worker is ready\n * 2. ExecuteResponse: result of execution\n * @param evt - message event from web worker\n * @returns\n *\n * @private\n */\n handle = (evt: MessageEvent<any>) => {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'webworker engine start handling message: ',\n evt.data,\n );\n try {\n const response = evt.data as Response;\n const task = this.tasks.get(response.id);\n if (!task) {\n return;\n }\n\n switch (response.type) {\n case 'ReadyResponse':\n this.readyTask.resolve(true);\n break;\n case 'ExecuteResponse':\n {\n switch (response.data.type) {\n case 'result':\n task.resolve(response.data.value);\n break;\n case 'error':\n task.reject(response.data.value.reason);\n break;\n }\n this.tasks.delete(response.id);\n }\n break;\n }\n } catch (e) {\n this.logger.error(LOG_SOURCE, LOG_CATEGORY, 'webworker met error when handling message: ', e);\n }\n };\n\n /**\n * Generate a unique message id\n * @returns message id\n *\n * @private\n */\n generateRequestId(id: string) {\n return `${id}.${Date.now()}.${Math.random()}`;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.initialize}\n *\n * @public\n */\n initialize() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'initialize');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'initialize',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.destroy}\n *\n * @public\n */\n destroy() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'destroy');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const finish = () => {\n this.worker.removeEventListener('message', this.handle);\n this.worker.terminate();\n };\n\n task.wait(finish, finish);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'destroy',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentUrl}\n *\n * @public\n */\n openDocumentUrl(file: PdfFileUrl, options?: PdfUrlOptions) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentUrl', file.url, options);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentUrl',\n args: [file, options],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocument}\n *\n * @public\n */\n openDocumentFromBuffer(file: PdfFile, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromBuffer', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromBuffer',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentFromLoader}\n *\n * @public\n */\n openDocumentFromLoader(file: PdfFileLoader, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromLoader', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromLoader',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getMetadata}\n *\n * @public\n */\n getMetadata(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getMetadata', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfMetadataObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getMetadata',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n updateAnnotationColor(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObjectBase,\n color: WebAlphaColor,\n which: number = 0,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'setAnnotationColor', doc, page, annotation, color);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'updateAnnotationColor',\n args: [doc, page, annotation, color, which],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocPermissions}\n *\n * @public\n */\n getDocPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocUserPermissions}\n *\n * @public\n */\n getDocUserPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocUserPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocUserPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getBookmarks}\n *\n * @public\n */\n getBookmarks(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getBookmarks', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfBookmarksObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getBookmarks',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getSignatures}\n *\n * @public\n */\n getSignatures(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getSignatures', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfSignatureObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getSignatures',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPage}\n *\n * @public\n */\n renderPage(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPage',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPage',\n args: [doc, page, scaleFactor, rotation, dpr, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPageRect}\n *\n * @public\n */\n renderPageRect(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPageRect',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n rect,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPageRect',\n args: [doc, page, scaleFactor, rotation, dpr, rect, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderAnnotation}\n *\n * @public\n */\n renderAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderAnnotation',\n doc,\n page,\n annotation,\n scaleFactor,\n rotation,\n dpr,\n mode,\n imageType,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderAnnotation',\n args: [doc, page, annotation, scaleFactor, rotation, dpr, mode, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAllAnnotations}\n *\n * @public\n */\n getAllAnnotations(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAllAnnotations', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Record<number, PdfAnnotationObject[]>>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAllAnnotations',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageAnnotations}\n *\n * @public\n */\n getPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageAnnotations', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAnnotationObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageAnnotations',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.createPageAnnotation}\n *\n * @public\n */\n createPageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'createPageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'createPageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n updatePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'updatePageAnnotation', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'updatePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.removePageAnnotation}\n *\n * @public\n */\n removePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'removePageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'removePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageTextRects}\n *\n * @public\n */\n getPageTextRects(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'getPageTextRects',\n doc,\n page,\n scaleFactor,\n rotation,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfTextRectObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageTextRects',\n args: [doc, page, scaleFactor, rotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderThumbnail}\n *\n * @public\n */\n renderThumbnail(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderThumbnail',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderThumbnail',\n args: [doc, page, scaleFactor, rotation, dpr],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.searchAllPages}\n *\n * @public\n */\n searchAllPages(doc: PdfDocumentObject, keyword: string, flags: MatchFlag[] = []) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'searchAllPages 123', doc, keyword, flags);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<SearchAllPagesResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'searchAllPages',\n args: [doc, keyword, flags],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.saveAsCopy}\n *\n * @public\n */\n saveAsCopy(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'saveAsCopy', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'saveAsCopy',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAttachments}\n *\n * @public\n */\n getAttachments(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAttachments', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAttachmentObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAttachments',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.readAttachmentContent}\n *\n * @public\n */\n readAttachmentContent(doc: PdfDocumentObject, attachment: PdfAttachmentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'readAttachmentContent', doc, attachment);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'readAttachmentContent',\n args: [doc, attachment],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.setFormFieldValue}\n *\n * @public\n */\n setFormFieldValue(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n value: FormFieldValue,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'setFormFieldValue', doc, annotation, value);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'setFormFieldValue',\n args: [doc, page, annotation, value],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.flattenPage}\n *\n * @public\n */\n flattenPage(doc: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'flattenPage', doc, page, flag);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageFlattenResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'flattenPage',\n args: [doc, page, flag],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractPages}\n *\n * @public\n */\n extractPages(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractPages', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractPages',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractText}\n *\n * @public\n */\n extractText(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractText', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractText',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getTextSlices}\n *\n * @public\n */\n getTextSlices(doc: PdfDocumentObject, slices: PageTextSlice[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getTextSlices', doc, slices);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getTextSlices',\n args: [doc, slices],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGlyphs}\n *\n * @public\n */\n getPageGlyphs(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGlyphs', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfGlyphObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGlyphs',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGeometry}\n *\n * @public\n */\n getPageGeometry(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGeometry', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageGeometry>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGeometry',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.merge}\n *\n * @public\n */\n merge(files: PdfFile[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'merge', files);\n const fileIds = files.map((file) => file.id).join('.');\n const requestId = this.generateRequestId(fileIds);\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'merge',\n args: [files],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.mergePages}\n *\n * @public\n */\n mergePages(mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'mergePages', mergeConfigs);\n const requestId = this.generateRequestId(mergeConfigs.map((config) => config.docId).join('.'));\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'mergePages',\n args: [mergeConfigs],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.closeDocument}\n *\n * @public\n */\n closeDocument(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'closeDocument', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'closeDocument',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * Send the request to webworker inside and register the task\n * @param task - task that waiting for the response\n * @param request - request that needs send to web worker\n * @param transferables - transferables that need to transfer to webworker\n * @returns\n *\n * @internal\n */\n proxy<R>(task: WorkerTask<R>, request: ExecuteRequest, transferables: any[] = []) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'send request to worker',\n task,\n request,\n transferables,\n );\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'Begin', request.id);\n this.readyTask.wait(\n () => {\n this.worker.postMessage(request, transferables);\n task.wait(\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n );\n this.tasks.set(request.id, task);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n task.reject({\n code: PdfErrorCode.Initialization,\n message: 'worker initialization failed',\n });\n },\n );\n }\n}\n"],"names":["LOG_SOURCE","LOG_CATEGORY","WorkerTask","Task","constructor","worker","messageId","super","this","abort","e","postMessage","type","data","_WebWorkerEngine","logger","NoopLogger","tasks","Map","handle","evt","debug","response","task","get","id","readyTask","resolve","value","reject","reason","delete","error","addEventListener","readyTaskId","set","generateRequestId","Date","now","Math","random","initialize","requestId","request","name","args","proxy","destroy","finish","removeEventListener","terminate","wait","openDocumentUrl","file","options","url","openDocumentFromBuffer","password","openDocumentFromLoader","getMetadata","doc","updateAnnotationColor","page","annotation","color","which","getDocPermissions","getDocUserPermissions","getBookmarks","getSignatures","renderPage","scaleFactor","rotation","dpr","imageType","renderPageRect","rect","renderAnnotation","mode","getAllAnnotations","getPageAnnotations","createPageAnnotation","updatePageAnnotation","removePageAnnotation","getPageTextRects","renderThumbnail","searchAllPages","keyword","flags","saveAsCopy","getAttachments","readAttachmentContent","attachment","setFormFieldValue","flattenPage","flag","extractPages","pageIndexes","extractText","getTextSlices","slices","getPageGlyphs","getPageGeometry","merge","files","fileIds","map","join","mergePages","mergeConfigs","config","docId","closeDocument","transferables","perf","code","PdfErrorCode","Initialization","message","WebWorkerEngine"],"mappings":"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"}
1
+ {"version":3,"file":"engine.cjs","sources":["../../../src/lib/webworker/engine.ts"],"sourcesContent":["import {\n FormFieldValue,\n PdfAnnotationTransformation,\n PdfAttachmentObject,\n PdfEngineError,\n PdfFile,\n PdfMetadataObject,\n PdfSignatureObject,\n PdfTextRectObject,\n PdfWidgetAnnoObject,\n SearchResult,\n SearchTarget,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationObject,\n PdfBookmarksObject,\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n Rect,\n Rotation,\n PdfRenderOptions,\n PdfErrorCode,\n PdfErrorReason,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n ImageConversionTypes,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n PageTextSlice,\n WebAlphaColor,\n AppearanceMode,\n} from '@embedpdf/models';\nimport { ExecuteRequest, Response } from './runner';\n\nconst LOG_SOURCE = 'WebWorkerEngine';\nconst LOG_CATEGORY = 'Engine';\n\n/**\n * Task that executed by webworker\n */\nexport class WorkerTask<R> extends Task<R, PdfErrorReason> {\n /**\n * Create a task that bind to web worker with specified message id\n * @param worker - web worker instance\n * @param messageId - id of message\n *\n * @public\n */\n constructor(\n public worker: Worker,\n private messageId: string,\n ) {\n super();\n }\n\n /**\n * {@inheritDoc @embedpdf/models!Task.abort}\n *\n * @override\n */\n abort(e: PdfErrorReason) {\n super.abort(e);\n\n this.worker.postMessage({\n type: 'AbortRequest',\n data: {\n messageId: this.messageId,\n },\n });\n }\n}\n\n/**\n * PDF engine that runs within webworker\n */\nexport class WebWorkerEngine implements PdfEngine {\n static readyTaskId = '0';\n /**\n * Task that represent the state of preparation\n */\n readyTask: WorkerTask<boolean>;\n /**\n * All the tasks that is executing\n */\n tasks: Map<string, WorkerTask<any>> = new Map();\n\n /**\n * Create an instance of WebWorkerEngine, it will create a worker with\n * specified url.\n * @param worker - webworker instance, this worker needs to contains the running instance of {@link EngineRunner}\n * @param logger - logger instance\n *\n * @public\n */\n constructor(\n private worker: Worker,\n private logger: Logger = new NoopLogger(),\n ) {\n this.worker.addEventListener('message', this.handle);\n\n this.readyTask = new WorkerTask<boolean>(this.worker, WebWorkerEngine.readyTaskId);\n this.tasks.set(WebWorkerEngine.readyTaskId, this.readyTask);\n }\n\n /**\n * Handle event from web worker. There are 2 kinds of event\n * 1. ReadyResponse: web worker is ready\n * 2. ExecuteResponse: result of execution\n * @param evt - message event from web worker\n * @returns\n *\n * @private\n */\n handle = (evt: MessageEvent<any>) => {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'webworker engine start handling message: ',\n evt.data,\n );\n try {\n const response = evt.data as Response;\n const task = this.tasks.get(response.id);\n if (!task) {\n return;\n }\n\n switch (response.type) {\n case 'ReadyResponse':\n this.readyTask.resolve(true);\n break;\n case 'ExecuteResponse':\n {\n switch (response.data.type) {\n case 'result':\n task.resolve(response.data.value);\n break;\n case 'error':\n task.reject(response.data.value.reason);\n break;\n }\n this.tasks.delete(response.id);\n }\n break;\n }\n } catch (e) {\n this.logger.error(LOG_SOURCE, LOG_CATEGORY, 'webworker met error when handling message: ', e);\n }\n };\n\n /**\n * Generate a unique message id\n * @returns message id\n *\n * @private\n */\n generateRequestId(id: string) {\n return `${id}.${Date.now()}.${Math.random()}`;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.initialize}\n *\n * @public\n */\n initialize() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'initialize');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'initialize',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.destroy}\n *\n * @public\n */\n destroy() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'destroy');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const finish = () => {\n this.worker.removeEventListener('message', this.handle);\n this.worker.terminate();\n };\n\n task.wait(finish, finish);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'destroy',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentUrl}\n *\n * @public\n */\n openDocumentUrl(file: PdfFileUrl, options?: PdfUrlOptions) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentUrl', file.url, options);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentUrl',\n args: [file, options],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocument}\n *\n * @public\n */\n openDocumentFromBuffer(file: PdfFile, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromBuffer', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromBuffer',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentFromLoader}\n *\n * @public\n */\n openDocumentFromLoader(file: PdfFileLoader, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromLoader', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromLoader',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getMetadata}\n *\n * @public\n */\n getMetadata(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getMetadata', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfMetadataObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getMetadata',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocPermissions}\n *\n * @public\n */\n getDocPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocUserPermissions}\n *\n * @public\n */\n getDocUserPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocUserPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocUserPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getBookmarks}\n *\n * @public\n */\n getBookmarks(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getBookmarks', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfBookmarksObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getBookmarks',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getSignatures}\n *\n * @public\n */\n getSignatures(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getSignatures', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfSignatureObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getSignatures',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPage}\n *\n * @public\n */\n renderPage(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPage',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPage',\n args: [doc, page, scaleFactor, rotation, dpr, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPageRect}\n *\n * @public\n */\n renderPageRect(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPageRect',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n rect,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPageRect',\n args: [doc, page, scaleFactor, rotation, dpr, rect, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderAnnotation}\n *\n * @public\n */\n renderAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderAnnotation',\n doc,\n page,\n annotation,\n scaleFactor,\n rotation,\n dpr,\n mode,\n imageType,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderAnnotation',\n args: [doc, page, annotation, scaleFactor, rotation, dpr, mode, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAllAnnotations}\n *\n * @public\n */\n getAllAnnotations(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAllAnnotations', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Record<number, PdfAnnotationObject[]>>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAllAnnotations',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageAnnotations}\n *\n * @public\n */\n getPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageAnnotations', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAnnotationObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageAnnotations',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.createPageAnnotation}\n *\n * @public\n */\n createPageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'createPageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'createPageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n updatePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'updatePageAnnotation', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'updatePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.removePageAnnotation}\n *\n * @public\n */\n removePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'removePageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'removePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageTextRects}\n *\n * @public\n */\n getPageTextRects(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'getPageTextRects',\n doc,\n page,\n scaleFactor,\n rotation,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfTextRectObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageTextRects',\n args: [doc, page, scaleFactor, rotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderThumbnail}\n *\n * @public\n */\n renderThumbnail(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderThumbnail',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderThumbnail',\n args: [doc, page, scaleFactor, rotation, dpr],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.searchAllPages}\n *\n * @public\n */\n searchAllPages(doc: PdfDocumentObject, keyword: string, flags: MatchFlag[] = []) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'searchAllPages 123', doc, keyword, flags);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<SearchAllPagesResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'searchAllPages',\n args: [doc, keyword, flags],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.saveAsCopy}\n *\n * @public\n */\n saveAsCopy(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'saveAsCopy', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'saveAsCopy',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAttachments}\n *\n * @public\n */\n getAttachments(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAttachments', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAttachmentObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAttachments',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.readAttachmentContent}\n *\n * @public\n */\n readAttachmentContent(doc: PdfDocumentObject, attachment: PdfAttachmentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'readAttachmentContent', doc, attachment);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'readAttachmentContent',\n args: [doc, attachment],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.setFormFieldValue}\n *\n * @public\n */\n setFormFieldValue(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n value: FormFieldValue,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'setFormFieldValue', doc, annotation, value);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'setFormFieldValue',\n args: [doc, page, annotation, value],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.flattenPage}\n *\n * @public\n */\n flattenPage(doc: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'flattenPage', doc, page, flag);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageFlattenResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'flattenPage',\n args: [doc, page, flag],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractPages}\n *\n * @public\n */\n extractPages(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractPages', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractPages',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractText}\n *\n * @public\n */\n extractText(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractText', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractText',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getTextSlices}\n *\n * @public\n */\n getTextSlices(doc: PdfDocumentObject, slices: PageTextSlice[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getTextSlices', doc, slices);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getTextSlices',\n args: [doc, slices],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGlyphs}\n *\n * @public\n */\n getPageGlyphs(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGlyphs', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfGlyphObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGlyphs',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGeometry}\n *\n * @public\n */\n getPageGeometry(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGeometry', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageGeometry>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGeometry',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.merge}\n *\n * @public\n */\n merge(files: PdfFile[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'merge', files);\n const fileIds = files.map((file) => file.id).join('.');\n const requestId = this.generateRequestId(fileIds);\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'merge',\n args: [files],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.mergePages}\n *\n * @public\n */\n mergePages(mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'mergePages', mergeConfigs);\n const requestId = this.generateRequestId(mergeConfigs.map((config) => config.docId).join('.'));\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'mergePages',\n args: [mergeConfigs],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.closeDocument}\n *\n * @public\n */\n closeDocument(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'closeDocument', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'closeDocument',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * Send the request to webworker inside and register the task\n * @param task - task that waiting for the response\n * @param request - request that needs send to web worker\n * @param transferables - transferables that need to transfer to webworker\n * @returns\n *\n * @internal\n */\n proxy<R>(task: WorkerTask<R>, request: ExecuteRequest, transferables: any[] = []) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'send request to worker',\n task,\n request,\n transferables,\n );\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'Begin', request.id);\n this.readyTask.wait(\n () => {\n this.worker.postMessage(request, transferables);\n task.wait(\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n );\n this.tasks.set(request.id, task);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n task.reject({\n code: PdfErrorCode.Initialization,\n message: 'worker initialization failed',\n });\n },\n );\n }\n}\n"],"names":["LOG_SOURCE","LOG_CATEGORY","WorkerTask","Task","constructor","worker","messageId","super","this","abort","e","postMessage","type","data","_WebWorkerEngine","logger","NoopLogger","tasks","Map","handle","evt","debug","response","task","get","id","readyTask","resolve","value","reject","reason","delete","error","addEventListener","readyTaskId","set","generateRequestId","Date","now","Math","random","initialize","requestId","request","name","args","proxy","destroy","finish","removeEventListener","terminate","wait","openDocumentUrl","file","options","url","openDocumentFromBuffer","password","openDocumentFromLoader","getMetadata","doc","getDocPermissions","getDocUserPermissions","getBookmarks","getSignatures","renderPage","page","scaleFactor","rotation","dpr","imageType","renderPageRect","rect","renderAnnotation","annotation","mode","getAllAnnotations","getPageAnnotations","createPageAnnotation","updatePageAnnotation","removePageAnnotation","getPageTextRects","renderThumbnail","searchAllPages","keyword","flags","saveAsCopy","getAttachments","readAttachmentContent","attachment","setFormFieldValue","flattenPage","flag","extractPages","pageIndexes","extractText","getTextSlices","slices","getPageGlyphs","getPageGeometry","merge","files","fileIds","map","join","mergePages","mergeConfigs","config","docId","closeDocument","transferables","perf","code","PdfErrorCode","Initialization","message","WebWorkerEngine"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { FormFieldValue, PdfAttachmentObject, PdfFile, PdfMetadataObject, PdfSignatureObject, PdfTextRectObject, PdfWidgetAnnoObject, Task, Logger, PdfAnnotationObject, PdfBookmarksObject, PdfDocumentObject, PdfEngine, PdfPageObject, Rect, Rotation, PdfRenderOptions, PdfErrorReason, PdfPageFlattenFlag, PdfPageFlattenResult, PdfFileLoader, SearchAllPagesResult, MatchFlag, PdfUrlOptions, PdfFileUrl, PdfGlyphObject, PdfPageGeometry, ImageConversionTypes, PdfAnnotationObjectBase, PageTextSlice, WebAlphaColor, AppearanceMode } from '@embedpdf/models';
1
+ import { FormFieldValue, PdfAttachmentObject, PdfFile, PdfMetadataObject, PdfSignatureObject, PdfTextRectObject, PdfWidgetAnnoObject, Task, Logger, PdfAnnotationObject, PdfBookmarksObject, PdfDocumentObject, PdfEngine, PdfPageObject, Rect, Rotation, PdfRenderOptions, PdfErrorReason, PdfPageFlattenFlag, PdfPageFlattenResult, PdfFileLoader, SearchAllPagesResult, MatchFlag, PdfUrlOptions, PdfFileUrl, PdfGlyphObject, PdfPageGeometry, ImageConversionTypes, PageTextSlice, AppearanceMode } from '@embedpdf/models';
2
2
  import { ExecuteRequest } from './runner';
3
3
  /**
4
4
  * Task that executed by webworker
@@ -98,7 +98,6 @@ export declare class WebWorkerEngine implements PdfEngine {
98
98
  * @public
99
99
  */
100
100
  getMetadata(doc: PdfDocumentObject): WorkerTask<PdfMetadataObject>;
101
- updateAnnotationColor(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObjectBase, color: WebAlphaColor, which?: number): WorkerTask<boolean>;
102
101
  /**
103
102
  * {@inheritDoc @embedpdf/models!PdfEngine.getDocPermissions}
104
103
  *
@@ -1,4 +1,4 @@
1
- import { Task, NoopLogger, PdfErrorCode } from "@embedpdf/models";
1
+ import { NoopLogger, PdfErrorCode, Task } from "@embedpdf/models";
2
2
  const LOG_SOURCE = "WebWorkerEngine";
3
3
  const LOG_CATEGORY = "Engine";
4
4
  class WorkerTask extends Task {
@@ -215,21 +215,6 @@ const _WebWorkerEngine = class _WebWorkerEngine {
215
215
  this.proxy(task, request);
216
216
  return task;
217
217
  }
218
- updateAnnotationColor(doc, page, annotation, color, which = 0) {
219
- this.logger.debug(LOG_SOURCE, LOG_CATEGORY, "setAnnotationColor", doc, page, annotation, color);
220
- const requestId = this.generateRequestId(doc.id);
221
- const task = new WorkerTask(this.worker, requestId);
222
- const request = {
223
- id: requestId,
224
- type: "ExecuteRequest",
225
- data: {
226
- name: "updateAnnotationColor",
227
- args: [doc, page, annotation, color, which]
228
- }
229
- };
230
- this.proxy(task, request);
231
- return task;
232
- }
233
218
  /**
234
219
  * {@inheritDoc @embedpdf/models!PdfEngine.getDocPermissions}
235
220
  *
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sources":["../../../src/lib/webworker/engine.ts"],"sourcesContent":["import {\n FormFieldValue,\n PdfAnnotationTransformation,\n PdfAttachmentObject,\n PdfEngineError,\n PdfFile,\n PdfMetadataObject,\n PdfSignatureObject,\n PdfTextRectObject,\n PdfWidgetAnnoObject,\n SearchResult,\n SearchTarget,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationObject,\n PdfBookmarksObject,\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n Rect,\n Rotation,\n PdfRenderOptions,\n PdfErrorCode,\n PdfErrorReason,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n ImageConversionTypes,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n PageTextSlice,\n WebAlphaColor,\n AppearanceMode,\n} from '@embedpdf/models';\nimport { ExecuteRequest, Response } from './runner';\n\nconst LOG_SOURCE = 'WebWorkerEngine';\nconst LOG_CATEGORY = 'Engine';\n\n/**\n * Task that executed by webworker\n */\nexport class WorkerTask<R> extends Task<R, PdfErrorReason> {\n /**\n * Create a task that bind to web worker with specified message id\n * @param worker - web worker instance\n * @param messageId - id of message\n *\n * @public\n */\n constructor(\n public worker: Worker,\n private messageId: string,\n ) {\n super();\n }\n\n /**\n * {@inheritDoc @embedpdf/models!Task.abort}\n *\n * @override\n */\n abort(e: PdfErrorReason) {\n super.abort(e);\n\n this.worker.postMessage({\n type: 'AbortRequest',\n data: {\n messageId: this.messageId,\n },\n });\n }\n}\n\n/**\n * PDF engine that runs within webworker\n */\nexport class WebWorkerEngine implements PdfEngine {\n static readyTaskId = '0';\n /**\n * Task that represent the state of preparation\n */\n readyTask: WorkerTask<boolean>;\n /**\n * All the tasks that is executing\n */\n tasks: Map<string, WorkerTask<any>> = new Map();\n\n /**\n * Create an instance of WebWorkerEngine, it will create a worker with\n * specified url.\n * @param worker - webworker instance, this worker needs to contains the running instance of {@link EngineRunner}\n * @param logger - logger instance\n *\n * @public\n */\n constructor(\n private worker: Worker,\n private logger: Logger = new NoopLogger(),\n ) {\n this.worker.addEventListener('message', this.handle);\n\n this.readyTask = new WorkerTask<boolean>(this.worker, WebWorkerEngine.readyTaskId);\n this.tasks.set(WebWorkerEngine.readyTaskId, this.readyTask);\n }\n\n /**\n * Handle event from web worker. There are 2 kinds of event\n * 1. ReadyResponse: web worker is ready\n * 2. ExecuteResponse: result of execution\n * @param evt - message event from web worker\n * @returns\n *\n * @private\n */\n handle = (evt: MessageEvent<any>) => {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'webworker engine start handling message: ',\n evt.data,\n );\n try {\n const response = evt.data as Response;\n const task = this.tasks.get(response.id);\n if (!task) {\n return;\n }\n\n switch (response.type) {\n case 'ReadyResponse':\n this.readyTask.resolve(true);\n break;\n case 'ExecuteResponse':\n {\n switch (response.data.type) {\n case 'result':\n task.resolve(response.data.value);\n break;\n case 'error':\n task.reject(response.data.value.reason);\n break;\n }\n this.tasks.delete(response.id);\n }\n break;\n }\n } catch (e) {\n this.logger.error(LOG_SOURCE, LOG_CATEGORY, 'webworker met error when handling message: ', e);\n }\n };\n\n /**\n * Generate a unique message id\n * @returns message id\n *\n * @private\n */\n generateRequestId(id: string) {\n return `${id}.${Date.now()}.${Math.random()}`;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.initialize}\n *\n * @public\n */\n initialize() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'initialize');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'initialize',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.destroy}\n *\n * @public\n */\n destroy() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'destroy');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const finish = () => {\n this.worker.removeEventListener('message', this.handle);\n this.worker.terminate();\n };\n\n task.wait(finish, finish);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'destroy',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentUrl}\n *\n * @public\n */\n openDocumentUrl(file: PdfFileUrl, options?: PdfUrlOptions) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentUrl', file.url, options);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentUrl',\n args: [file, options],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocument}\n *\n * @public\n */\n openDocumentFromBuffer(file: PdfFile, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromBuffer', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromBuffer',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentFromLoader}\n *\n * @public\n */\n openDocumentFromLoader(file: PdfFileLoader, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromLoader', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromLoader',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getMetadata}\n *\n * @public\n */\n getMetadata(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getMetadata', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfMetadataObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getMetadata',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n updateAnnotationColor(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObjectBase,\n color: WebAlphaColor,\n which: number = 0,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'setAnnotationColor', doc, page, annotation, color);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'updateAnnotationColor',\n args: [doc, page, annotation, color, which],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocPermissions}\n *\n * @public\n */\n getDocPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocUserPermissions}\n *\n * @public\n */\n getDocUserPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocUserPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocUserPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getBookmarks}\n *\n * @public\n */\n getBookmarks(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getBookmarks', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfBookmarksObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getBookmarks',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getSignatures}\n *\n * @public\n */\n getSignatures(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getSignatures', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfSignatureObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getSignatures',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPage}\n *\n * @public\n */\n renderPage(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPage',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPage',\n args: [doc, page, scaleFactor, rotation, dpr, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPageRect}\n *\n * @public\n */\n renderPageRect(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPageRect',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n rect,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPageRect',\n args: [doc, page, scaleFactor, rotation, dpr, rect, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderAnnotation}\n *\n * @public\n */\n renderAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderAnnotation',\n doc,\n page,\n annotation,\n scaleFactor,\n rotation,\n dpr,\n mode,\n imageType,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderAnnotation',\n args: [doc, page, annotation, scaleFactor, rotation, dpr, mode, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAllAnnotations}\n *\n * @public\n */\n getAllAnnotations(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAllAnnotations', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Record<number, PdfAnnotationObject[]>>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAllAnnotations',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageAnnotations}\n *\n * @public\n */\n getPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageAnnotations', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAnnotationObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageAnnotations',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.createPageAnnotation}\n *\n * @public\n */\n createPageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'createPageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'createPageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n updatePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'updatePageAnnotation', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'updatePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.removePageAnnotation}\n *\n * @public\n */\n removePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'removePageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'removePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageTextRects}\n *\n * @public\n */\n getPageTextRects(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'getPageTextRects',\n doc,\n page,\n scaleFactor,\n rotation,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfTextRectObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageTextRects',\n args: [doc, page, scaleFactor, rotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderThumbnail}\n *\n * @public\n */\n renderThumbnail(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderThumbnail',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderThumbnail',\n args: [doc, page, scaleFactor, rotation, dpr],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.searchAllPages}\n *\n * @public\n */\n searchAllPages(doc: PdfDocumentObject, keyword: string, flags: MatchFlag[] = []) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'searchAllPages 123', doc, keyword, flags);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<SearchAllPagesResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'searchAllPages',\n args: [doc, keyword, flags],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.saveAsCopy}\n *\n * @public\n */\n saveAsCopy(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'saveAsCopy', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'saveAsCopy',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAttachments}\n *\n * @public\n */\n getAttachments(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAttachments', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAttachmentObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAttachments',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.readAttachmentContent}\n *\n * @public\n */\n readAttachmentContent(doc: PdfDocumentObject, attachment: PdfAttachmentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'readAttachmentContent', doc, attachment);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'readAttachmentContent',\n args: [doc, attachment],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.setFormFieldValue}\n *\n * @public\n */\n setFormFieldValue(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n value: FormFieldValue,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'setFormFieldValue', doc, annotation, value);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'setFormFieldValue',\n args: [doc, page, annotation, value],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.flattenPage}\n *\n * @public\n */\n flattenPage(doc: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'flattenPage', doc, page, flag);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageFlattenResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'flattenPage',\n args: [doc, page, flag],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractPages}\n *\n * @public\n */\n extractPages(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractPages', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractPages',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractText}\n *\n * @public\n */\n extractText(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractText', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractText',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getTextSlices}\n *\n * @public\n */\n getTextSlices(doc: PdfDocumentObject, slices: PageTextSlice[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getTextSlices', doc, slices);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getTextSlices',\n args: [doc, slices],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGlyphs}\n *\n * @public\n */\n getPageGlyphs(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGlyphs', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfGlyphObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGlyphs',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGeometry}\n *\n * @public\n */\n getPageGeometry(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGeometry', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageGeometry>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGeometry',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.merge}\n *\n * @public\n */\n merge(files: PdfFile[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'merge', files);\n const fileIds = files.map((file) => file.id).join('.');\n const requestId = this.generateRequestId(fileIds);\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'merge',\n args: [files],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.mergePages}\n *\n * @public\n */\n mergePages(mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'mergePages', mergeConfigs);\n const requestId = this.generateRequestId(mergeConfigs.map((config) => config.docId).join('.'));\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'mergePages',\n args: [mergeConfigs],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.closeDocument}\n *\n * @public\n */\n closeDocument(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'closeDocument', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'closeDocument',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * Send the request to webworker inside and register the task\n * @param task - task that waiting for the response\n * @param request - request that needs send to web worker\n * @param transferables - transferables that need to transfer to webworker\n * @returns\n *\n * @internal\n */\n proxy<R>(task: WorkerTask<R>, request: ExecuteRequest, transferables: any[] = []) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'send request to worker',\n task,\n request,\n transferables,\n );\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'Begin', request.id);\n this.readyTask.wait(\n () => {\n this.worker.postMessage(request, transferables);\n task.wait(\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n );\n this.tasks.set(request.id, task);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n task.reject({\n code: PdfErrorCode.Initialization,\n message: 'worker initialization failed',\n });\n },\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sources":["../../../src/lib/webworker/engine.ts"],"sourcesContent":["import {\n FormFieldValue,\n PdfAnnotationTransformation,\n PdfAttachmentObject,\n PdfEngineError,\n PdfFile,\n PdfMetadataObject,\n PdfSignatureObject,\n PdfTextRectObject,\n PdfWidgetAnnoObject,\n SearchResult,\n SearchTarget,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationObject,\n PdfBookmarksObject,\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n Rect,\n Rotation,\n PdfRenderOptions,\n PdfErrorCode,\n PdfErrorReason,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n ImageConversionTypes,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n PageTextSlice,\n WebAlphaColor,\n AppearanceMode,\n} from '@embedpdf/models';\nimport { ExecuteRequest, Response } from './runner';\n\nconst LOG_SOURCE = 'WebWorkerEngine';\nconst LOG_CATEGORY = 'Engine';\n\n/**\n * Task that executed by webworker\n */\nexport class WorkerTask<R> extends Task<R, PdfErrorReason> {\n /**\n * Create a task that bind to web worker with specified message id\n * @param worker - web worker instance\n * @param messageId - id of message\n *\n * @public\n */\n constructor(\n public worker: Worker,\n private messageId: string,\n ) {\n super();\n }\n\n /**\n * {@inheritDoc @embedpdf/models!Task.abort}\n *\n * @override\n */\n abort(e: PdfErrorReason) {\n super.abort(e);\n\n this.worker.postMessage({\n type: 'AbortRequest',\n data: {\n messageId: this.messageId,\n },\n });\n }\n}\n\n/**\n * PDF engine that runs within webworker\n */\nexport class WebWorkerEngine implements PdfEngine {\n static readyTaskId = '0';\n /**\n * Task that represent the state of preparation\n */\n readyTask: WorkerTask<boolean>;\n /**\n * All the tasks that is executing\n */\n tasks: Map<string, WorkerTask<any>> = new Map();\n\n /**\n * Create an instance of WebWorkerEngine, it will create a worker with\n * specified url.\n * @param worker - webworker instance, this worker needs to contains the running instance of {@link EngineRunner}\n * @param logger - logger instance\n *\n * @public\n */\n constructor(\n private worker: Worker,\n private logger: Logger = new NoopLogger(),\n ) {\n this.worker.addEventListener('message', this.handle);\n\n this.readyTask = new WorkerTask<boolean>(this.worker, WebWorkerEngine.readyTaskId);\n this.tasks.set(WebWorkerEngine.readyTaskId, this.readyTask);\n }\n\n /**\n * Handle event from web worker. There are 2 kinds of event\n * 1. ReadyResponse: web worker is ready\n * 2. ExecuteResponse: result of execution\n * @param evt - message event from web worker\n * @returns\n *\n * @private\n */\n handle = (evt: MessageEvent<any>) => {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'webworker engine start handling message: ',\n evt.data,\n );\n try {\n const response = evt.data as Response;\n const task = this.tasks.get(response.id);\n if (!task) {\n return;\n }\n\n switch (response.type) {\n case 'ReadyResponse':\n this.readyTask.resolve(true);\n break;\n case 'ExecuteResponse':\n {\n switch (response.data.type) {\n case 'result':\n task.resolve(response.data.value);\n break;\n case 'error':\n task.reject(response.data.value.reason);\n break;\n }\n this.tasks.delete(response.id);\n }\n break;\n }\n } catch (e) {\n this.logger.error(LOG_SOURCE, LOG_CATEGORY, 'webworker met error when handling message: ', e);\n }\n };\n\n /**\n * Generate a unique message id\n * @returns message id\n *\n * @private\n */\n generateRequestId(id: string) {\n return `${id}.${Date.now()}.${Math.random()}`;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.initialize}\n *\n * @public\n */\n initialize() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'initialize');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'initialize',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.destroy}\n *\n * @public\n */\n destroy() {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'destroy');\n const requestId = this.generateRequestId('General');\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const finish = () => {\n this.worker.removeEventListener('message', this.handle);\n this.worker.terminate();\n };\n\n task.wait(finish, finish);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'destroy',\n args: [],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentUrl}\n *\n * @public\n */\n openDocumentUrl(file: PdfFileUrl, options?: PdfUrlOptions) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentUrl', file.url, options);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentUrl',\n args: [file, options],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocument}\n *\n * @public\n */\n openDocumentFromBuffer(file: PdfFile, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromBuffer', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromBuffer',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.openDocumentFromLoader}\n *\n * @public\n */\n openDocumentFromLoader(file: PdfFileLoader, password: string) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'openDocumentFromLoader', file, password);\n const requestId = this.generateRequestId(file.id);\n const task = new WorkerTask<PdfDocumentObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'openDocumentFromLoader',\n args: [file, password],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getMetadata}\n *\n * @public\n */\n getMetadata(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getMetadata', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfMetadataObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getMetadata',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocPermissions}\n *\n * @public\n */\n getDocPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getDocUserPermissions}\n *\n * @public\n */\n getDocUserPermissions(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getDocUserPermissions', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getDocUserPermissions',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getBookmarks}\n *\n * @public\n */\n getBookmarks(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getBookmarks', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfBookmarksObject>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getBookmarks',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getSignatures}\n *\n * @public\n */\n getSignatures(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getSignatures', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfSignatureObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getSignatures',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPage}\n *\n * @public\n */\n renderPage(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPage',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPage',\n args: [doc, page, scaleFactor, rotation, dpr, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderPageRect}\n *\n * @public\n */\n renderPageRect(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n imageType: ImageConversionTypes = 'image/webp',\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderPageRect',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n rect,\n options,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderPageRect',\n args: [doc, page, scaleFactor, rotation, dpr, rect, options, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderAnnotation}\n *\n * @public\n */\n renderAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderAnnotation',\n doc,\n page,\n annotation,\n scaleFactor,\n rotation,\n dpr,\n mode,\n imageType,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderAnnotation',\n args: [doc, page, annotation, scaleFactor, rotation, dpr, mode, imageType],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAllAnnotations}\n *\n * @public\n */\n getAllAnnotations(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAllAnnotations', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Record<number, PdfAnnotationObject[]>>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAllAnnotations',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageAnnotations}\n *\n * @public\n */\n getPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageAnnotations', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAnnotationObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageAnnotations',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.createPageAnnotation}\n *\n * @public\n */\n createPageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'createPageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<number>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'createPageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n updatePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'updatePageAnnotation', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'updatePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.removePageAnnotation}\n *\n * @public\n */\n removePageAnnotation(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'removePageAnnotations', doc, page, annotation);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'removePageAnnotation',\n args: [doc, page, annotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageTextRects}\n *\n * @public\n */\n getPageTextRects(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'getPageTextRects',\n doc,\n page,\n scaleFactor,\n rotation,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfTextRectObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageTextRects',\n args: [doc, page, scaleFactor, rotation],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.renderThumbnail}\n *\n * @public\n */\n renderThumbnail(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n ) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'renderThumbnail',\n doc,\n page,\n scaleFactor,\n rotation,\n dpr,\n );\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<Blob>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'renderThumbnail',\n args: [doc, page, scaleFactor, rotation, dpr],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.searchAllPages}\n *\n * @public\n */\n searchAllPages(doc: PdfDocumentObject, keyword: string, flags: MatchFlag[] = []) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'searchAllPages 123', doc, keyword, flags);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<SearchAllPagesResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'searchAllPages',\n args: [doc, keyword, flags],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.saveAsCopy}\n *\n * @public\n */\n saveAsCopy(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'saveAsCopy', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'saveAsCopy',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getAttachments}\n *\n * @public\n */\n getAttachments(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getAttachments', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfAttachmentObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getAttachments',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.readAttachmentContent}\n *\n * @public\n */\n readAttachmentContent(doc: PdfDocumentObject, attachment: PdfAttachmentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'readAttachmentContent', doc, attachment);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'readAttachmentContent',\n args: [doc, attachment],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.setFormFieldValue}\n *\n * @public\n */\n setFormFieldValue(\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n value: FormFieldValue,\n ) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'setFormFieldValue', doc, annotation, value);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'setFormFieldValue',\n args: [doc, page, annotation, value],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.flattenPage}\n *\n * @public\n */\n flattenPage(doc: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'flattenPage', doc, page, flag);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageFlattenResult>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'flattenPage',\n args: [doc, page, flag],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractPages}\n *\n * @public\n */\n extractPages(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractPages', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<ArrayBuffer>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractPages',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.extractText}\n *\n * @public\n */\n extractText(doc: PdfDocumentObject, pageIndexes: number[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'extractText', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'extractText',\n args: [doc, pageIndexes],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getTextSlices}\n *\n * @public\n */\n getTextSlices(doc: PdfDocumentObject, slices: PageTextSlice[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getTextSlices', doc, slices);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<string[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getTextSlices',\n args: [doc, slices],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGlyphs}\n *\n * @public\n */\n getPageGlyphs(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGlyphs', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfGlyphObject[]>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGlyphs',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.getPageGeometry}\n *\n * @public\n */\n getPageGeometry(doc: PdfDocumentObject, page: PdfPageObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'getPageGeometry', doc, page);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<PdfPageGeometry>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'getPageGeometry',\n args: [doc, page],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.merge}\n *\n * @public\n */\n merge(files: PdfFile[]) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'merge', files);\n const fileIds = files.map((file) => file.id).join('.');\n const requestId = this.generateRequestId(fileIds);\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'merge',\n args: [files],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.mergePages}\n *\n * @public\n */\n mergePages(mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'mergePages', mergeConfigs);\n const requestId = this.generateRequestId(mergeConfigs.map((config) => config.docId).join('.'));\n const task = new WorkerTask<PdfFile>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'mergePages',\n args: [mergeConfigs],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * {@inheritDoc @embedpdf/models!PdfEngine.closeDocument}\n *\n * @public\n */\n closeDocument(doc: PdfDocumentObject) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'closeDocument', doc);\n const requestId = this.generateRequestId(doc.id);\n const task = new WorkerTask<boolean>(this.worker, requestId);\n\n const request: ExecuteRequest = {\n id: requestId,\n type: 'ExecuteRequest',\n data: {\n name: 'closeDocument',\n args: [doc],\n },\n };\n this.proxy(task, request);\n\n return task;\n }\n\n /**\n * Send the request to webworker inside and register the task\n * @param task - task that waiting for the response\n * @param request - request that needs send to web worker\n * @param transferables - transferables that need to transfer to webworker\n * @returns\n *\n * @internal\n */\n proxy<R>(task: WorkerTask<R>, request: ExecuteRequest, transferables: any[] = []) {\n this.logger.debug(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'send request to worker',\n task,\n request,\n transferables,\n );\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'Begin', request.id);\n this.readyTask.wait(\n () => {\n this.worker.postMessage(request, transferables);\n task.wait(\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n },\n );\n this.tasks.set(request.id, task);\n },\n () => {\n this.logger.perf(LOG_SOURCE, LOG_CATEGORY, `${request.data.name}`, 'End', request.id);\n task.reject({\n code: PdfErrorCode.Initialization,\n message: 'worker initialization failed',\n });\n },\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.create,Object.defineProperty,Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.getPrototypeOf,Object.prototype.hasOwnProperty;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("preact/hooks"),t="https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.12/dist/pdfium.wasm";exports.usePdfiumEngine=function(r){const{wasmUrl:n=t,worker:i=!0,logger:o}=r??{},[s,u]=e.useState(null),[c,p]=e.useState(!0),[a,d]=e.useState(null),l=e.useRef(null);return e.useEffect((()=>{let e=!1;return(async()=>{try{const{createPdfiumEngine:e}=i?await import("@embedpdf/engines/pdfium-worker-engine"):await import("@embedpdf/engines/pdfium-direct-engine"),t=await e(n,o);l.current=t,u(t),p(!1)}catch(t){e||(d(t),p(!1))}})(),()=>{var t;e=!0,null==(t=l.current)||t.destroy(),l.current=null}}),[n,i,o]),{engine:s,isLoading:c,error:a}};
1
+ "use strict";Object.create,Object.defineProperty,Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.getPrototypeOf,Object.prototype.hasOwnProperty;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("preact/hooks"),t="https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.14/dist/pdfium.wasm";exports.usePdfiumEngine=function(r){const{wasmUrl:n=t,worker:i=!0,logger:o}=r??{},[s,u]=e.useState(null),[c,p]=e.useState(!0),[a,d]=e.useState(null),l=e.useRef(null);return e.useEffect((()=>{let e=!1;return(async()=>{try{const{createPdfiumEngine:e}=i?await import("@embedpdf/engines/pdfium-worker-engine"):await import("@embedpdf/engines/pdfium-direct-engine"),t=await e(n,o);l.current=t,u(t),p(!1)}catch(t){e||(d(t),p(!1))}})(),()=>{var t;e=!0,null==(t=l.current)||t.destroy(),l.current=null}}),[n,i,o]),{engine:s,isLoading:c,error:a}};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,5 +1,5 @@
1
1
  import { useState, useRef, useEffect } from "preact/hooks";
2
- const defaultWasmUrl = `https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.12/dist/pdfium.wasm`;
2
+ const defaultWasmUrl = `https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.14/dist/pdfium.wasm`;
3
3
  function usePdfiumEngine(config) {
4
4
  const { wasmUrl = defaultWasmUrl, worker = true, logger } = config ?? {};
5
5
  const [engine, setEngine] = useState(null);
@@ -1,2 +1,2 @@
1
- "use strict";Object.create,Object.defineProperty,Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.getPrototypeOf,Object.prototype.hasOwnProperty;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t="https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.12/dist/pdfium.wasm";exports.usePdfiumEngine=function(r){const{wasmUrl:n=t,worker:i=!0,logger:o}=r??{},[u,s]=e.useState(null),[c,a]=e.useState(!0),[p,d]=e.useState(null),l=e.useRef(null);return e.useEffect((()=>{let e=!1;return(async()=>{try{const{createPdfiumEngine:e}=i?await import("@embedpdf/engines/pdfium-worker-engine"):await import("@embedpdf/engines/pdfium-direct-engine"),t=await e(n,o);l.current=t,s(t),a(!1)}catch(t){e||(d(t),a(!1))}})(),()=>{var t;e=!0,null==(t=l.current)||t.destroy(),l.current=null}}),[n,i,o]),{engine:u,isLoading:c,error:p}};
1
+ "use strict";Object.create,Object.defineProperty,Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.getPrototypeOf,Object.prototype.hasOwnProperty;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t="https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.14/dist/pdfium.wasm";exports.usePdfiumEngine=function(r){const{wasmUrl:n=t,worker:i=!0,logger:o}=r??{},[u,s]=e.useState(null),[c,a]=e.useState(!0),[p,d]=e.useState(null),l=e.useRef(null);return e.useEffect((()=>{let e=!1;return(async()=>{try{const{createPdfiumEngine:e}=i?await import("@embedpdf/engines/pdfium-worker-engine"):await import("@embedpdf/engines/pdfium-direct-engine"),t=await e(n,o);l.current=t,s(t),a(!1)}catch(t){e||(d(t),a(!1))}})(),()=>{var t;e=!0,null==(t=l.current)||t.destroy(),l.current=null}}),[n,i,o]),{engine:u,isLoading:c,error:p}};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,5 +1,5 @@
1
1
  import { useState, useRef, useEffect } from "react";
2
- const defaultWasmUrl = `https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.12/dist/pdfium.wasm`;
2
+ const defaultWasmUrl = `https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@1.0.14/dist/pdfium.wasm`;
3
3
  function usePdfiumEngine(config) {
4
4
  const { wasmUrl = defaultWasmUrl, worker = true, logger } = config ?? {};
5
5
  const [engine, setEngine] = useState(null);
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("@embedpdf/pdfium"),s=require("@embedpdf/models"),t=require("./engine-1ZSXSAtm.cjs"),a="WebWorkerEngineRunner",n="Engine";class r{constructor(e=new s.NoopLogger){this.logger=e,this.execute=e=>{if(this.logger.debug(a,n,"runner start exeucte request"),!this.engine){const t={type:"reject",reason:{code:s.PdfErrorCode.NotReady,message:"engine has not started yet"}},a={id:e.id,type:"ExecuteResponse",data:{type:"error",value:t}};return void this.respond(a)}const t=this.engine,{name:r,args:o}=e.data;if(!t[r]){const t={type:"reject",reason:{code:s.PdfErrorCode.NotSupport,message:`engine method ${r} is not supported yet`}},a={id:e.id,type:"ExecuteResponse",data:{type:"error",value:t}};return void this.respond(a)}let i;switch(r){case"isSupport":case"initialize":case"destroy":case"openDocumentUrl":case"openDocumentFromBuffer":case"openDocumentFromLoader":case"getDocPermissions":case"getDocUserPermissions":case"getMetadata":case"getBookmarks":case"getSignatures":case"renderPage":case"renderPageRect":case"renderAnnotation":case"renderThumbnail":case"getAllAnnotations":case"getPageAnnotations":case"createPageAnnotation":case"updatePageAnnotation":case"removePageAnnotation":case"getPageTextRects":case"searchAllPages":case"closeDocument":case"saveAsCopy":case"getAttachments":case"readAttachmentContent":case"setFormFieldValue":case"flattenPage":case"extractPages":case"extractText":case"getTextSlices":case"getPageGlyphs":case"getPageGeometry":case"merge":case"mergePages":i=this.engine[r](...o)}i.wait((s=>{const t={id:e.id,type:"ExecuteResponse",data:{type:"result",value:s}};this.respond(t)}),(s=>{const t={id:e.id,type:"ExecuteResponse",data:{type:"error",value:s}};this.respond(t)}))}}listen(){self.onmessage=e=>this.handle(e)}handle(e){this.logger.debug(a,n,"webworker receive message event: ",e.data);try{const s=e.data;if("ExecuteRequest"===s.type)this.execute(s)}catch(s){this.logger.info(a,n,"webworker met error when processing message event:",s)}}ready(){this.listen(),this.respond({id:"0",type:"ReadyResponse"}),this.logger.debug(a,n,"runner is ready")}respond(e){this.logger.debug(a,n,"runner respond: ",e),self.postMessage(e)}}exports.EngineRunner=r,exports.PdfiumEngineRunner=class extends r{constructor(e){super(),this.wasmBinary=e}async prepare(){const s=this.wasmBinary,a=await e.init({wasmBinary:s});this.engine=new t.PdfiumEngine(a),this.ready()}};
2
+ //# sourceMappingURL=runner-Br_PKNmU.cjs.map