@embedpdf/engines 2.9.1 → 2.10.0
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.
- package/dist/{direct-engine-D-Jf9yyY.js → direct-engine-4LZYs06h.js} +1069 -262
- package/dist/direct-engine-4LZYs06h.js.map +1 -0
- package/dist/direct-engine-C29Euebw.cjs +2 -0
- package/dist/direct-engine-C29Euebw.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +165 -143
- package/dist/index.js.map +1 -1
- package/dist/lib/orchestrator/pdf-engine.d.ts +8 -1
- package/dist/lib/orchestrator/remote-executor.d.ts +8 -1
- package/dist/lib/pdfium/cache.d.ts +5 -4
- package/dist/lib/pdfium/engine.d.ts +40 -6
- package/dist/lib/pdfium/index.cjs +1 -1
- package/dist/lib/pdfium/index.cjs.map +1 -1
- package/dist/lib/pdfium/index.js +3 -3
- package/dist/lib/pdfium/web/direct-engine.cjs +1 -1
- package/dist/lib/pdfium/web/direct-engine.js +2 -2
- package/dist/lib/pdfium/web/worker-engine.cjs +1 -1
- package/dist/lib/pdfium/web/worker-engine.cjs.map +1 -1
- package/dist/lib/pdfium/web/worker-engine.js +32 -2
- package/dist/lib/pdfium/web/worker-engine.js.map +1 -1
- package/dist/lib/webworker/engine.cjs +1 -1
- package/dist/lib/webworker/engine.cjs.map +1 -1
- package/dist/lib/webworker/engine.d.ts +19 -1
- package/dist/lib/webworker/engine.js +104 -0
- package/dist/lib/webworker/engine.js.map +1 -1
- package/dist/lib/webworker/runner.d.ts +19 -5
- package/dist/pdf-engine-BeHgaBOW.cjs +2 -0
- package/dist/pdf-engine-BeHgaBOW.cjs.map +1 -0
- package/dist/{pdf-engine-ZvReuoDb.js → pdf-engine-sORqXhQk.js} +74 -1
- package/dist/pdf-engine-sORqXhQk.js.map +1 -0
- package/dist/preact/index.cjs +1 -1
- package/dist/preact/index.cjs.map +1 -1
- package/dist/preact/index.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.js +1 -1
- package/dist/svelte/index.cjs +1 -1
- package/dist/svelte/index.cjs.map +1 -1
- package/dist/svelte/index.js +1 -1
- package/dist/vue/index.cjs +1 -1
- package/dist/vue/index.cjs.map +1 -1
- package/dist/vue/index.js +1 -1
- package/package.json +7 -7
- package/dist/direct-engine-CDxs18JK.cjs +0 -2
- package/dist/direct-engine-CDxs18JK.cjs.map +0 -1
- package/dist/direct-engine-D-Jf9yyY.js.map +0 -1
- package/dist/pdf-engine-DeyImjZt.cjs +0 -2
- package/dist/pdf-engine-DeyImjZt.cjs.map +0 -1
- package/dist/pdf-engine-ZvReuoDb.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lib/pdfium/index.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lib/pdfium/index.cjs"),t=require("./lib/webworker/engine.cjs"),r=require("@embedpdf/models"),a=require("./direct-engine-C29Euebw.cjs"),s=require("./browser-13mzox-R.cjs"),n=require("./pdf-engine-BeHgaBOW.cjs"),i=require("./lib/pdfium/web/worker-engine.cjs"),o="WebWorkerEngineRunner",d="Engine";exports.DEFAULT_PDFIUM_WASM_URL=e.DEFAULT_PDFIUM_WASM_URL,exports.FONT_CDN_URLS=e.FONT_CDN_URLS,exports.cdnFontConfig=e.cdnFontConfig,exports.createCdnFontConfig=e.createCdnFontConfig,exports.WebWorkerEngine=t.WebWorkerEngine,exports.WorkerTask=t.WorkerTask,Object.defineProperty(exports,"FontCharset",{enumerable:!0,get:()=>r.FontCharset}),exports.BitmapFormat=a.BitmapFormat,exports.FontFallbackManager=a.FontFallbackManager,exports.PdfiumErrorCode=a.PdfiumErrorCode,exports.PdfiumNative=a.PdfiumNative,exports.RenderFlag=a.RenderFlag,exports.computeFormDrawParams=a.computeFormDrawParams,exports.createNodeFontLoader=a.createNodeFontLoader,exports.createPdfiumDirectEngine=a.createPdfiumEngine,exports.isValidCustomKey=a.isValidCustomKey,exports.readArrayBuffer=a.readArrayBuffer,exports.readString=a.readString,exports.ImageConverterError=s.ImageConverterError,exports.browserImageDataToBlobConverter=s.browserImageDataToBlobConverter,exports.createHybridImageConverter=s.createHybridImageConverter,exports.createWorkerPoolImageConverter=s.createWorkerPoolImageConverter,exports.PdfEngine=n.PdfEngine,exports.createPdfiumWorkerEngine=i.createPdfiumEngine,exports.EngineRunner=class{constructor(e=new r.NoopLogger){this.logger=e,this.execute=async e=>{if(this.logger.debug(o,d,"runner start exeucte request"),!this.engine){const t={type:"reject",reason:{code:r.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:a,args:s}=e.data;if(!t[a]){const t={type:"reject",reason:{code:r.PdfErrorCode.NotSupport,message:`engine method ${a} is not supported yet`}},s={id:e.id,type:"ExecuteResponse",data:{type:"error",value:t}};return void this.respond(s)}switch(a){case"isSupport":return void this.handleTask(e.id,t.isSupport(...s));case"destroy":return void this.handleTask(e.id,t.destroy(...s));case"openDocumentUrl":return void this.handleTask(e.id,t.openDocumentUrl(...s));case"openDocumentBuffer":return void this.handleTask(e.id,t.openDocumentBuffer(...s));case"getDocPermissions":return void this.handleTask(e.id,t.getDocPermissions(...s));case"getDocUserPermissions":return void this.handleTask(e.id,t.getDocUserPermissions(...s));case"getMetadata":return void this.handleTask(e.id,t.getMetadata(...s));case"setMetadata":return void this.handleTask(e.id,t.setMetadata(...s));case"getBookmarks":return void this.handleTask(e.id,t.getBookmarks(...s));case"setBookmarks":return void this.handleTask(e.id,t.setBookmarks(...s));case"deleteBookmarks":return void this.handleTask(e.id,t.deleteBookmarks(...s));case"getSignatures":return void this.handleTask(e.id,t.getSignatures(...s));case"renderPage":return void this.handleTask(e.id,t.renderPage(...s));case"renderPageRect":return void this.handleTask(e.id,t.renderPageRect(...s));case"renderPageRaw":return void this.handleTask(e.id,t.renderPageRaw(...s));case"renderPageRectRaw":return void this.handleTask(e.id,t.renderPageRectRaw(...s));case"renderPageAnnotation":return void this.handleTask(e.id,t.renderPageAnnotation(...s));case"renderPageAnnotations":return void this.handleTask(e.id,t.renderPageAnnotations(...s));case"renderPageAnnotationsRaw":return void this.handleTask(e.id,t.renderPageAnnotationsRaw(...s));case"renderThumbnail":return void this.handleTask(e.id,t.renderThumbnail(...s));case"getAllAnnotations":return void this.handleTask(e.id,t.getAllAnnotations(...s));case"getPageAnnotations":return void this.handleTask(e.id,t.getPageAnnotations(...s));case"getDocumentJavaScriptActions":return void this.handleTask(e.id,t.getDocumentJavaScriptActions(...s));case"getPageAnnoWidgets":return void this.handleTask(e.id,t.getPageAnnoWidgets(...s));case"getPageWidgetJavaScriptActions":return void this.handleTask(e.id,t.getPageWidgetJavaScriptActions(...s));case"createPageAnnotation":return void this.handleTask(e.id,t.createPageAnnotation(...s));case"updatePageAnnotation":return void this.handleTask(e.id,t.updatePageAnnotation(...s));case"removePageAnnotation":return void this.handleTask(e.id,t.removePageAnnotation(...s));case"getPageTextRects":return void this.handleTask(e.id,t.getPageTextRects(...s));case"searchAllPages":return void this.handleTask(e.id,t.searchAllPages(...s));case"closeDocument":return void this.handleTask(e.id,t.closeDocument(...s));case"closeAllDocuments":return void this.handleTask(e.id,t.closeAllDocuments(...s));case"saveAsCopy":return void this.handleTask(e.id,t.saveAsCopy(...s));case"getAttachments":return void this.handleTask(e.id,t.getAttachments(...s));case"addAttachment":return void this.handleTask(e.id,t.addAttachment(...s));case"removeAttachment":return void this.handleTask(e.id,t.removeAttachment(...s));case"readAttachmentContent":return void this.handleTask(e.id,t.readAttachmentContent(...s));case"setFormFieldValue":return void this.handleTask(e.id,t.setFormFieldValue(...s));case"setFormFieldState":return void this.handleTask(e.id,t.setFormFieldState(...s));case"renameWidgetField":return void this.handleTask(e.id,t.renameWidgetField(...s));case"shareWidgetField":return void this.handleTask(e.id,t.shareWidgetField(...s));case"flattenPage":return void this.handleTask(e.id,t.flattenPage(...s));case"extractPages":return void this.handleTask(e.id,t.extractPages(...s));case"extractText":return void this.handleTask(e.id,t.extractText(...s));case"redactTextInRects":return void this.handleTask(e.id,t.redactTextInRects(...s));case"applyRedaction":return void this.handleTask(e.id,t.applyRedaction(...s));case"applyAllRedactions":return void this.handleTask(e.id,t.applyAllRedactions(...s));case"flattenAnnotation":return void this.handleTask(e.id,t.flattenAnnotation(...s));case"getTextSlices":return void this.handleTask(e.id,t.getTextSlices(...s));case"getPageGlyphs":return void this.handleTask(e.id,t.getPageGlyphs(...s));case"getPageGeometry":return void this.handleTask(e.id,t.getPageGeometry(...s));case"getPageTextRuns":return void this.handleTask(e.id,t.getPageTextRuns(...s));case"merge":return void this.handleTask(e.id,t.merge(...s));case"mergePages":return void this.handleTask(e.id,t.mergePages(...s));case"preparePrintDocument":return void this.handleTask(e.id,t.preparePrintDocument(...s));case"setDocumentEncryption":return void this.handleTask(e.id,t.setDocumentEncryption(...s));case"removeEncryption":return void this.handleTask(e.id,t.removeEncryption(...s));case"unlockOwnerPermissions":return void this.handleTask(e.id,t.unlockOwnerPermissions(...s));case"isEncrypted":return void this.handleTask(e.id,t.isEncrypted(...s));case"isOwnerUnlocked":return void this.handleTask(e.id,t.isOwnerUnlocked(...s));default:const n={type:"reject",reason:{code:r.PdfErrorCode.NotSupport,message:`engine method ${a} is not supported`}},i={id:e.id,type:"ExecuteResponse",data:{type:"error",value:n}};return void this.respond(i)}}}listen(){self.onmessage=e=>this.handle(e)}handle(e){this.logger.debug(o,d,"webworker receive message event: ",e.data);try{const t=e.data;if("ExecuteRequest"===t.type)this.execute(t)}catch(t){this.logger.info(o,d,"webworker met error when processing message event:",t)}}ready(){this.listen(),this.respond({id:"0",type:"ReadyResponse"}),this.logger.debug(o,d,"runner is ready")}handleTask(e,t){t.onProgress(t=>{const r={id:e,type:"ExecuteProgress",data:t};this.respond(r)}),t.wait(t=>{const r={id:e,type:"ExecuteResponse",data:{type:"result",value:t}};this.respond(r)},t=>{const r={id:e,type:"ExecuteResponse",data:{type:"error",value:t}};this.respond(r)})}respond(e){this.logger.debug(o,d,"runner respond: ",e),self.postMessage(e)}};
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/lib/webworker/runner.ts"],"sourcesContent":["import {\n Logger,\n NoopLogger,\n PdfEngine,\n PdfEngineError,\n PdfEngineMethodArgs,\n PdfEngineMethodName,\n PdfEngineMethodReturnType,\n PdfErrorCode,\n TaskReturn,\n} from '@embedpdf/models';\n\n/**\n * Request body that represent method calls of PdfEngine, it contains the\n * method name and arguments\n */\nexport type PdfEngineMethodRequestBody = {\n [P in PdfEngineMethodName]: {\n name: P;\n args: PdfEngineMethodArgs<P>;\n };\n}[PdfEngineMethodName];\n\n/**\n * Request body that represent method calls of PdfEngine, it contains the\n * method name and arguments\n */\nexport type SpecificExecuteRequest<M extends PdfEngineMethodName> = {\n id: string;\n type: 'ExecuteRequest';\n data: {\n name: M;\n args: PdfEngineMethodArgs<M>;\n };\n};\n\n/**\n * Response body that represent return value of PdfEngine\n */\nexport type PdfEngineMethodResponseBody = {\n [P in PdfEngineMethodName]: TaskReturn<PdfEngineMethodReturnType<P>>;\n}[PdfEngineMethodName];\n\n/**\n * Request that abort the specified task\n */\nexport interface AbortRequest {\n /**\n * message id\n */\n id: string;\n /**\n * request type\n */\n type: 'AbortRequest';\n}\n/**\n * Request that execute pdf engine method\n */\nexport interface ExecuteRequest {\n /**\n * message id\n */\n id: string;\n /**\n * request type\n */\n type: 'ExecuteRequest';\n /**\n * request body\n */\n data: PdfEngineMethodRequestBody;\n}\n/**\n * Response that execute pdf engine method\n */\nexport interface ExecuteResponse {\n /**\n * message id\n */\n id: string;\n /**\n * response type\n */\n type: 'ExecuteResponse';\n /**\n * response body\n */\n data: PdfEngineMethodResponseBody;\n}\n\n/**\n * Response that indicate progress of the task\n */\nexport interface ExecuteProgress<T = unknown> {\n /**\n * message id\n */\n id: string;\n /**\n * response type\n */\n type: 'ExecuteProgress';\n /**\n * response body\n */\n data: T;\n}\n\n/**\n * Response that indicate engine is ready\n */\nexport interface ReadyResponse {\n /**\n * message id\n */\n id: string;\n /**\n * response type\n */\n type: 'ReadyResponse';\n}\n\n/**\n * Request type\n */\nexport type Request = ExecuteRequest | AbortRequest;\n/**\n * Response type\n */\nexport type Response = ExecuteResponse | ReadyResponse | ExecuteProgress;\n\nconst LOG_SOURCE = 'WebWorkerEngineRunner';\nconst LOG_CATEGORY = 'Engine';\n\n/**\n * Pdf engine runner, it will execute pdf engine based on the request it received and\n * send back the response with post message\n */\nexport class EngineRunner {\n engine: PdfEngine | undefined;\n\n /**\n * Create instance of EngineRunnder\n * @param logger - logger instance\n */\n constructor(public logger: Logger = new NoopLogger()) {}\n\n /**\n * Listening on post message\n */\n listen() {\n self.onmessage = (evt: MessageEvent<Request>) => {\n return this.handle(evt);\n };\n }\n\n /**\n * Handle post message\n */\n handle(evt: MessageEvent<Request>) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'webworker receive message event: ', evt.data);\n try {\n const request = evt.data as Request;\n switch (request.type) {\n case 'ExecuteRequest':\n this.execute(request);\n break;\n }\n } catch (e) {\n this.logger.info(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'webworker met error when processing message event:',\n e,\n );\n }\n }\n\n /**\n * Send the ready response when pdf engine is ready\n * @returns\n *\n * @protected\n */\n ready() {\n this.listen();\n\n this.respond({\n id: '0',\n type: 'ReadyResponse',\n });\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'runner is ready');\n }\n\n /**\n * Execute the request\n * @param request - request that represent the pdf engine call\n * @returns\n *\n * @protected\n */\n execute = async (request: ExecuteRequest) => {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'runner start exeucte request');\n if (!this.engine) {\n const error: PdfEngineError = {\n type: 'reject',\n reason: {\n code: PdfErrorCode.NotReady,\n message: 'engine has not started yet',\n },\n };\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n return;\n }\n\n const engine = this.engine;\n const { name, args } = request.data;\n if (!engine[name]) {\n const error: PdfEngineError = {\n type: 'reject',\n reason: {\n code: PdfErrorCode.NotSupport,\n message: `engine method ${name} is not supported yet`,\n },\n };\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n return;\n }\n\n let task: PdfEngineMethodReturnType<typeof name>;\n switch (name) {\n case 'isSupport':\n task = engine.isSupport!(...args);\n break;\n case 'destroy':\n task = engine.destroy!(...args);\n break;\n case 'openDocumentUrl':\n task = engine.openDocumentUrl!(...args);\n break;\n case 'openDocumentBuffer':\n task = engine.openDocumentBuffer!(...args);\n break;\n case 'getDocPermissions':\n task = engine.getDocPermissions!(...args);\n break;\n case 'getDocUserPermissions':\n task = engine.getDocUserPermissions!(...args);\n break;\n case 'getMetadata':\n task = engine.getMetadata!(...args);\n break;\n case 'setMetadata':\n task = engine.setMetadata!(...args);\n break;\n case 'getBookmarks':\n task = engine.getBookmarks!(...args);\n break;\n case 'setBookmarks':\n task = engine.setBookmarks!(...args);\n break;\n case 'deleteBookmarks':\n task = engine.deleteBookmarks!(...args);\n break;\n case 'getSignatures':\n task = engine.getSignatures!(...args);\n break;\n case 'renderPage':\n task = engine.renderPage!(...args);\n break;\n case 'renderPageRect':\n task = engine.renderPageRect!(...args);\n break;\n case 'renderPageRaw':\n task = engine.renderPageRaw!(...args);\n break;\n case 'renderPageRectRaw':\n task = engine.renderPageRectRaw!(...args);\n break;\n case 'renderPageAnnotation':\n task = engine.renderPageAnnotation!(...args);\n break;\n case 'renderPageAnnotations':\n task = engine.renderPageAnnotations!(...args);\n break;\n case 'renderPageAnnotationsRaw':\n task = engine.renderPageAnnotationsRaw!(...args);\n break;\n case 'renderThumbnail':\n task = engine.renderThumbnail!(...args);\n break;\n case 'getAllAnnotations':\n task = engine.getAllAnnotations!(...args);\n break;\n case 'getPageAnnotations':\n task = engine.getPageAnnotations!(...args);\n break;\n case 'createPageAnnotation':\n task = engine.createPageAnnotation!(...args);\n break;\n case 'updatePageAnnotation':\n task = engine.updatePageAnnotation!(...args);\n break;\n case 'removePageAnnotation':\n task = engine.removePageAnnotation!(...args);\n break;\n case 'getPageTextRects':\n task = engine.getPageTextRects!(...args);\n break;\n case 'searchAllPages':\n task = engine.searchAllPages!(...args);\n break;\n case 'closeDocument':\n task = engine.closeDocument!(...args);\n break;\n case 'closeAllDocuments':\n task = engine.closeAllDocuments!(...args);\n break;\n case 'saveAsCopy':\n task = engine.saveAsCopy!(...args);\n break;\n case 'getAttachments':\n task = engine.getAttachments!(...args);\n break;\n case 'addAttachment':\n task = engine.addAttachment!(...args);\n break;\n case 'removeAttachment':\n task = engine.removeAttachment!(...args);\n break;\n case 'readAttachmentContent':\n task = engine.readAttachmentContent!(...args);\n break;\n case 'setFormFieldValue':\n task = engine.setFormFieldValue!(...args);\n break;\n case 'flattenPage':\n task = engine.flattenPage!(...args);\n break;\n case 'extractPages':\n task = engine.extractPages!(...args);\n break;\n case 'extractText':\n task = engine.extractText!(...args);\n break;\n case 'redactTextInRects':\n task = engine.redactTextInRects!(...args);\n break;\n case 'applyRedaction':\n task = engine.applyRedaction!(...args);\n break;\n case 'applyAllRedactions':\n task = engine.applyAllRedactions!(...args);\n break;\n case 'flattenAnnotation':\n task = engine.flattenAnnotation!(...args);\n break;\n case 'getTextSlices':\n task = engine.getTextSlices!(...args);\n break;\n case 'getPageGlyphs':\n task = engine.getPageGlyphs!(...args);\n break;\n case 'getPageGeometry':\n task = engine.getPageGeometry!(...args);\n break;\n case 'getPageTextRuns':\n task = engine.getPageTextRuns!(...args);\n break;\n case 'merge':\n task = engine.merge!(...args);\n break;\n case 'mergePages':\n task = engine.mergePages!(...args);\n break;\n case 'preparePrintDocument':\n task = engine.preparePrintDocument!(...args);\n break;\n case 'setDocumentEncryption':\n task = engine.setDocumentEncryption(...args);\n break;\n case 'removeEncryption':\n task = engine.removeEncryption(...args);\n break;\n case 'unlockOwnerPermissions':\n task = engine.unlockOwnerPermissions(...args);\n break;\n case 'isEncrypted':\n task = engine.isEncrypted(...args);\n break;\n case 'isOwnerUnlocked':\n task = engine.isOwnerUnlocked(...args);\n break;\n default:\n // This should never be reached due to the earlier check, but provides exhaustiveness\n const error: PdfEngineError = {\n type: 'reject',\n reason: {\n code: PdfErrorCode.NotSupport,\n message: `engine method ${name} is not supported`,\n },\n };\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n return;\n }\n\n task.onProgress((progress) => {\n const response: ExecuteProgress = {\n id: request.id,\n type: 'ExecuteProgress',\n data: progress,\n };\n this.respond(response);\n });\n\n task.wait(\n (result) => {\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'result',\n value: result,\n },\n };\n this.respond(response);\n },\n (error) => {\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n },\n );\n };\n\n /**\n * Send back the response\n * @param response - response that needs sent back\n *\n * @protected\n */\n respond(response: Response) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'runner respond: ', response);\n self.postMessage(response);\n }\n}\n"],"names":["LOG_SOURCE","LOG_CATEGORY","constructor","logger","NoopLogger","this","execute","async","request","debug","engine","error","type","reason","code","PdfErrorCode","NotReady","message","response","id","data","value","respond","name","args","NotSupport","task","isSupport","destroy","openDocumentUrl","openDocumentBuffer","getDocPermissions","getDocUserPermissions","getMetadata","setMetadata","getBookmarks","setBookmarks","deleteBookmarks","getSignatures","renderPage","renderPageRect","renderPageRaw","renderPageRectRaw","renderPageAnnotation","renderPageAnnotations","renderPageAnnotationsRaw","renderThumbnail","getAllAnnotations","getPageAnnotations","createPageAnnotation","updatePageAnnotation","removePageAnnotation","getPageTextRects","searchAllPages","closeDocument","closeAllDocuments","saveAsCopy","getAttachments","addAttachment","removeAttachment","readAttachmentContent","setFormFieldValue","flattenPage","extractPages","extractText","redactTextInRects","applyRedaction","applyAllRedactions","flattenAnnotation","getTextSlices","getPageGlyphs","getPageGeometry","getPageTextRuns","merge","mergePages","preparePrintDocument","setDocumentEncryption","removeEncryption","unlockOwnerPermissions","isEncrypted","isOwnerUnlocked","onProgress","progress","wait","result","listen","self","onmessage","evt","handle","e","info","ready","postMessage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/lib/webworker/runner.ts"],"sourcesContent":["import {\n Logger,\n NoopLogger,\n PdfEngine,\n PdfEngineError,\n PdfEngineMethodArgs,\n PdfEngineMethodName,\n PdfEngineMethodReturnType,\n PdfErrorCode,\n TaskReturn,\n} from '@embedpdf/models';\n\n/**\n * Request body that represent method calls of PdfEngine, it contains the\n * method name and arguments\n */\nexport type PdfEngineMethodRequestBody = {\n [P in PdfEngineMethodName]: {\n name: P;\n args: PdfEngineMethodArgs<P>;\n };\n}[PdfEngineMethodName];\n\n/**\n * Request body that represent method calls of PdfEngine, it contains the\n * method name and arguments\n */\nexport type SpecificExecuteRequest<M extends PdfEngineMethodName> = {\n id: string;\n type: 'ExecuteRequest';\n data: {\n name: M;\n args: PdfEngineMethodArgs<M>;\n };\n};\n\n/**\n * Response body that represent return value of PdfEngine\n */\ntype PdfEngineMethodResultValue = Extract<\n {\n [P in PdfEngineMethodName]: TaskReturn<PdfEngineMethodReturnType<P>>;\n }[PdfEngineMethodName],\n { type: 'result' }\n>['value'];\n\nexport type PdfEngineMethodResponseBody =\n | { type: 'result'; value: PdfEngineMethodResultValue }\n | { type: 'error'; value: PdfEngineError };\n\n/**\n * Request that abort the specified task\n */\nexport interface AbortRequest {\n /**\n * message id\n */\n id: string;\n /**\n * request type\n */\n type: 'AbortRequest';\n}\n/**\n * Request that execute pdf engine method\n */\nexport interface ExecuteRequest {\n /**\n * message id\n */\n id: string;\n /**\n * request type\n */\n type: 'ExecuteRequest';\n /**\n * request body\n */\n data: PdfEngineMethodRequestBody;\n}\n/**\n * Response that execute pdf engine method\n */\nexport type ExecuteResponse = {\n /**\n * message id\n */\n id: string;\n /**\n * response type\n */\n type: 'ExecuteResponse';\n /**\n * response body\n */\n data: PdfEngineMethodResponseBody;\n};\n\n/**\n * Response that indicate progress of the task\n */\nexport interface ExecuteProgress<T = unknown> {\n /**\n * message id\n */\n id: string;\n /**\n * response type\n */\n type: 'ExecuteProgress';\n /**\n * response body\n */\n data: T;\n}\n\n/**\n * Response that indicate engine is ready\n */\nexport interface ReadyResponse {\n /**\n * message id\n */\n id: string;\n /**\n * response type\n */\n type: 'ReadyResponse';\n}\n\n/**\n * Request type\n */\nexport type Request = ExecuteRequest | AbortRequest;\n/**\n * Response type\n */\nexport type Response = ExecuteResponse | ReadyResponse | ExecuteProgress;\n\nconst LOG_SOURCE = 'WebWorkerEngineRunner';\nconst LOG_CATEGORY = 'Engine';\n\n/**\n * Pdf engine runner, it will execute pdf engine based on the request it received and\n * send back the response with post message\n */\nexport class EngineRunner {\n engine: PdfEngine | undefined;\n\n /**\n * Create instance of EngineRunnder\n * @param logger - logger instance\n */\n constructor(public logger: Logger = new NoopLogger()) {}\n\n /**\n * Listening on post message\n */\n listen() {\n self.onmessage = (evt: MessageEvent<Request>) => {\n return this.handle(evt);\n };\n }\n\n /**\n * Handle post message\n */\n handle(evt: MessageEvent<Request>) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'webworker receive message event: ', evt.data);\n try {\n const request = evt.data as Request;\n switch (request.type) {\n case 'ExecuteRequest':\n this.execute(request);\n break;\n }\n } catch (e) {\n this.logger.info(\n LOG_SOURCE,\n LOG_CATEGORY,\n 'webworker met error when processing message event:',\n e,\n );\n }\n }\n\n /**\n * Send the ready response when pdf engine is ready\n * @returns\n *\n * @protected\n */\n ready() {\n this.listen();\n\n this.respond({\n id: '0',\n type: 'ReadyResponse',\n });\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'runner is ready');\n }\n\n /**\n * Bind task progress and completion handlers to worker responses.\n */\n private handleTask<T extends PdfEngineMethodReturnType<PdfEngineMethodName>>(\n requestId: string,\n task: T,\n ) {\n task.onProgress((progress) => {\n const response: ExecuteProgress = {\n id: requestId,\n type: 'ExecuteProgress',\n data: progress,\n };\n this.respond(response);\n });\n\n task.wait(\n (result) => {\n const response: ExecuteResponse = {\n id: requestId,\n type: 'ExecuteResponse',\n data: {\n type: 'result',\n value: result,\n },\n };\n this.respond(response);\n },\n (error) => {\n const response: ExecuteResponse = {\n id: requestId,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n },\n );\n }\n\n /**\n * Execute the request\n * @param request - request that represent the pdf engine call\n * @returns\n *\n * @protected\n */\n execute = async (request: ExecuteRequest) => {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'runner start exeucte request');\n if (!this.engine) {\n const error: PdfEngineError = {\n type: 'reject',\n reason: {\n code: PdfErrorCode.NotReady,\n message: 'engine has not started yet',\n },\n };\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n return;\n }\n\n const engine = this.engine;\n const { name, args } = request.data;\n if (!engine[name]) {\n const error: PdfEngineError = {\n type: 'reject',\n reason: {\n code: PdfErrorCode.NotSupport,\n message: `engine method ${name} is not supported yet`,\n },\n };\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n return;\n }\n\n switch (name) {\n case 'isSupport':\n this.handleTask(request.id, engine.isSupport!(...args));\n return;\n case 'destroy':\n this.handleTask(request.id, engine.destroy!(...args));\n return;\n case 'openDocumentUrl':\n this.handleTask(request.id, engine.openDocumentUrl!(...args));\n return;\n case 'openDocumentBuffer':\n this.handleTask(request.id, engine.openDocumentBuffer!(...args));\n return;\n case 'getDocPermissions':\n this.handleTask(request.id, engine.getDocPermissions!(...args));\n return;\n case 'getDocUserPermissions':\n this.handleTask(request.id, engine.getDocUserPermissions!(...args));\n return;\n case 'getMetadata':\n this.handleTask(request.id, engine.getMetadata!(...args));\n return;\n case 'setMetadata':\n this.handleTask(request.id, engine.setMetadata!(...args));\n return;\n case 'getBookmarks':\n this.handleTask(request.id, engine.getBookmarks!(...args));\n return;\n case 'setBookmarks':\n this.handleTask(request.id, engine.setBookmarks!(...args));\n return;\n case 'deleteBookmarks':\n this.handleTask(request.id, engine.deleteBookmarks!(...args));\n return;\n case 'getSignatures':\n this.handleTask(request.id, engine.getSignatures!(...args));\n return;\n case 'renderPage':\n this.handleTask(request.id, engine.renderPage!(...args));\n return;\n case 'renderPageRect':\n this.handleTask(request.id, engine.renderPageRect!(...args));\n return;\n case 'renderPageRaw':\n this.handleTask(request.id, engine.renderPageRaw!(...args));\n return;\n case 'renderPageRectRaw':\n this.handleTask(request.id, engine.renderPageRectRaw!(...args));\n return;\n case 'renderPageAnnotation':\n this.handleTask(request.id, engine.renderPageAnnotation!(...args));\n return;\n case 'renderPageAnnotations':\n this.handleTask(request.id, engine.renderPageAnnotations!(...args));\n return;\n case 'renderPageAnnotationsRaw':\n this.handleTask(request.id, engine.renderPageAnnotationsRaw!(...args));\n return;\n case 'renderThumbnail':\n this.handleTask(request.id, engine.renderThumbnail!(...args));\n return;\n case 'getAllAnnotations':\n this.handleTask(request.id, engine.getAllAnnotations!(...args));\n return;\n case 'getPageAnnotations':\n this.handleTask(request.id, engine.getPageAnnotations!(...args));\n return;\n case 'getDocumentJavaScriptActions':\n this.handleTask(request.id, engine.getDocumentJavaScriptActions!(...args));\n return;\n case 'getPageAnnoWidgets':\n this.handleTask(request.id, engine.getPageAnnoWidgets!(...args));\n return;\n case 'getPageWidgetJavaScriptActions':\n this.handleTask(request.id, engine.getPageWidgetJavaScriptActions!(...args));\n return;\n case 'createPageAnnotation':\n this.handleTask(request.id, engine.createPageAnnotation!(...args));\n return;\n case 'updatePageAnnotation':\n this.handleTask(request.id, engine.updatePageAnnotation!(...args));\n return;\n case 'removePageAnnotation':\n this.handleTask(request.id, engine.removePageAnnotation!(...args));\n return;\n case 'getPageTextRects':\n this.handleTask(request.id, engine.getPageTextRects!(...args));\n return;\n case 'searchAllPages':\n this.handleTask(request.id, engine.searchAllPages!(...args));\n return;\n case 'closeDocument':\n this.handleTask(request.id, engine.closeDocument!(...args));\n return;\n case 'closeAllDocuments':\n this.handleTask(request.id, engine.closeAllDocuments!(...args));\n return;\n case 'saveAsCopy':\n this.handleTask(request.id, engine.saveAsCopy!(...args));\n return;\n case 'getAttachments':\n this.handleTask(request.id, engine.getAttachments!(...args));\n return;\n case 'addAttachment':\n this.handleTask(request.id, engine.addAttachment!(...args));\n return;\n case 'removeAttachment':\n this.handleTask(request.id, engine.removeAttachment!(...args));\n return;\n case 'readAttachmentContent':\n this.handleTask(request.id, engine.readAttachmentContent!(...args));\n return;\n case 'setFormFieldValue':\n this.handleTask(request.id, engine.setFormFieldValue!(...args));\n return;\n case 'setFormFieldState':\n this.handleTask(request.id, engine.setFormFieldState!(...args));\n return;\n case 'renameWidgetField':\n this.handleTask(request.id, engine.renameWidgetField!(...args));\n return;\n case 'shareWidgetField':\n this.handleTask(request.id, engine.shareWidgetField!(...args));\n return;\n case 'flattenPage':\n this.handleTask(request.id, engine.flattenPage!(...args));\n return;\n case 'extractPages':\n this.handleTask(request.id, engine.extractPages!(...args));\n return;\n case 'extractText':\n this.handleTask(request.id, engine.extractText!(...args));\n return;\n case 'redactTextInRects':\n this.handleTask(request.id, engine.redactTextInRects!(...args));\n return;\n case 'applyRedaction':\n this.handleTask(request.id, engine.applyRedaction!(...args));\n return;\n case 'applyAllRedactions':\n this.handleTask(request.id, engine.applyAllRedactions!(...args));\n return;\n case 'flattenAnnotation':\n this.handleTask(request.id, engine.flattenAnnotation!(...args));\n return;\n case 'getTextSlices':\n this.handleTask(request.id, engine.getTextSlices!(...args));\n return;\n case 'getPageGlyphs':\n this.handleTask(request.id, engine.getPageGlyphs!(...args));\n return;\n case 'getPageGeometry':\n this.handleTask(request.id, engine.getPageGeometry!(...args));\n return;\n case 'getPageTextRuns':\n this.handleTask(request.id, engine.getPageTextRuns!(...args));\n return;\n case 'merge':\n this.handleTask(request.id, engine.merge!(...args));\n return;\n case 'mergePages':\n this.handleTask(request.id, engine.mergePages!(...args));\n return;\n case 'preparePrintDocument':\n this.handleTask(request.id, engine.preparePrintDocument!(...args));\n return;\n case 'setDocumentEncryption':\n this.handleTask(request.id, engine.setDocumentEncryption(...args));\n return;\n case 'removeEncryption':\n this.handleTask(request.id, engine.removeEncryption(...args));\n return;\n case 'unlockOwnerPermissions':\n this.handleTask(request.id, engine.unlockOwnerPermissions(...args));\n return;\n case 'isEncrypted':\n this.handleTask(request.id, engine.isEncrypted(...args));\n return;\n case 'isOwnerUnlocked':\n this.handleTask(request.id, engine.isOwnerUnlocked(...args));\n return;\n default:\n // This should never be reached due to the earlier check, but provides exhaustiveness\n const error: PdfEngineError = {\n type: 'reject',\n reason: {\n code: PdfErrorCode.NotSupport,\n message: `engine method ${name} is not supported`,\n },\n };\n const response: ExecuteResponse = {\n id: request.id,\n type: 'ExecuteResponse',\n data: {\n type: 'error',\n value: error,\n },\n };\n this.respond(response);\n return;\n }\n };\n\n /**\n * Send back the response\n * @param response - response that needs sent back\n *\n * @protected\n */\n respond(response: Response) {\n this.logger.debug(LOG_SOURCE, LOG_CATEGORY, 'runner respond: ', response);\n self.postMessage(response);\n }\n}\n"],"names":["LOG_SOURCE","LOG_CATEGORY","constructor","logger","NoopLogger","this","execute","async","request","debug","engine","error","type","reason","code","PdfErrorCode","NotReady","message","response","id","data","value","respond","name","args","NotSupport","handleTask","isSupport","destroy","openDocumentUrl","openDocumentBuffer","getDocPermissions","getDocUserPermissions","getMetadata","setMetadata","getBookmarks","setBookmarks","deleteBookmarks","getSignatures","renderPage","renderPageRect","renderPageRaw","renderPageRectRaw","renderPageAnnotation","renderPageAnnotations","renderPageAnnotationsRaw","renderThumbnail","getAllAnnotations","getPageAnnotations","getDocumentJavaScriptActions","getPageAnnoWidgets","getPageWidgetJavaScriptActions","createPageAnnotation","updatePageAnnotation","removePageAnnotation","getPageTextRects","searchAllPages","closeDocument","closeAllDocuments","saveAsCopy","getAttachments","addAttachment","removeAttachment","readAttachmentContent","setFormFieldValue","setFormFieldState","renameWidgetField","shareWidgetField","flattenPage","extractPages","extractText","redactTextInRects","applyRedaction","applyAllRedactions","flattenAnnotation","getTextSlices","getPageGlyphs","getPageGeometry","getPageTextRuns","merge","mergePages","preparePrintDocument","setDocumentEncryption","removeEncryption","unlockOwnerPermissions","isEncrypted","isOwnerUnlocked","listen","self","onmessage","evt","handle","e","info","ready","requestId","task","onProgress","progress","wait","result","postMessage"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -2,9 +2,9 @@ import { DEFAULT_PDFIUM_WASM_URL, FONT_CDN_URLS, cdnFontConfig, createCdnFontCon
|
|
|
2
2
|
import { WebWorkerEngine, WorkerTask } from "./lib/webworker/engine.js";
|
|
3
3
|
import { NoopLogger, PdfErrorCode } from "@embedpdf/models";
|
|
4
4
|
import { FontCharset } from "@embedpdf/models";
|
|
5
|
-
import { B, F, P, a, R, c, b, d, i, r, e } from "./direct-engine-
|
|
5
|
+
import { B, F, P, a, R, c, b, d, i, r, e } from "./direct-engine-4LZYs06h.js";
|
|
6
6
|
import { I, b as b2, c as c2, a as a2 } from "./browser-BISJ9naB.js";
|
|
7
|
-
import { P as P2 } from "./pdf-engine-
|
|
7
|
+
import { P as P2 } from "./pdf-engine-sORqXhQk.js";
|
|
8
8
|
import { createPdfiumEngine } from "./lib/pdfium/web/worker-engine.js";
|
|
9
9
|
const LOG_SOURCE = "WebWorkerEngineRunner";
|
|
10
10
|
const LOG_CATEGORY = "Engine";
|
|
@@ -57,170 +57,187 @@ class EngineRunner {
|
|
|
57
57
|
this.respond(response);
|
|
58
58
|
return;
|
|
59
59
|
}
|
|
60
|
-
let task;
|
|
61
60
|
switch (name) {
|
|
62
61
|
case "isSupport":
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
this.handleTask(request.id, engine.isSupport(...args));
|
|
63
|
+
return;
|
|
65
64
|
case "destroy":
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
this.handleTask(request.id, engine.destroy(...args));
|
|
66
|
+
return;
|
|
68
67
|
case "openDocumentUrl":
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
this.handleTask(request.id, engine.openDocumentUrl(...args));
|
|
69
|
+
return;
|
|
71
70
|
case "openDocumentBuffer":
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
this.handleTask(request.id, engine.openDocumentBuffer(...args));
|
|
72
|
+
return;
|
|
74
73
|
case "getDocPermissions":
|
|
75
|
-
|
|
76
|
-
|
|
74
|
+
this.handleTask(request.id, engine.getDocPermissions(...args));
|
|
75
|
+
return;
|
|
77
76
|
case "getDocUserPermissions":
|
|
78
|
-
|
|
79
|
-
|
|
77
|
+
this.handleTask(request.id, engine.getDocUserPermissions(...args));
|
|
78
|
+
return;
|
|
80
79
|
case "getMetadata":
|
|
81
|
-
|
|
82
|
-
|
|
80
|
+
this.handleTask(request.id, engine.getMetadata(...args));
|
|
81
|
+
return;
|
|
83
82
|
case "setMetadata":
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
this.handleTask(request.id, engine.setMetadata(...args));
|
|
84
|
+
return;
|
|
86
85
|
case "getBookmarks":
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
this.handleTask(request.id, engine.getBookmarks(...args));
|
|
87
|
+
return;
|
|
89
88
|
case "setBookmarks":
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
this.handleTask(request.id, engine.setBookmarks(...args));
|
|
90
|
+
return;
|
|
92
91
|
case "deleteBookmarks":
|
|
93
|
-
|
|
94
|
-
|
|
92
|
+
this.handleTask(request.id, engine.deleteBookmarks(...args));
|
|
93
|
+
return;
|
|
95
94
|
case "getSignatures":
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
this.handleTask(request.id, engine.getSignatures(...args));
|
|
96
|
+
return;
|
|
98
97
|
case "renderPage":
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
this.handleTask(request.id, engine.renderPage(...args));
|
|
99
|
+
return;
|
|
101
100
|
case "renderPageRect":
|
|
102
|
-
|
|
103
|
-
|
|
101
|
+
this.handleTask(request.id, engine.renderPageRect(...args));
|
|
102
|
+
return;
|
|
104
103
|
case "renderPageRaw":
|
|
105
|
-
|
|
106
|
-
|
|
104
|
+
this.handleTask(request.id, engine.renderPageRaw(...args));
|
|
105
|
+
return;
|
|
107
106
|
case "renderPageRectRaw":
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
this.handleTask(request.id, engine.renderPageRectRaw(...args));
|
|
108
|
+
return;
|
|
110
109
|
case "renderPageAnnotation":
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
this.handleTask(request.id, engine.renderPageAnnotation(...args));
|
|
111
|
+
return;
|
|
113
112
|
case "renderPageAnnotations":
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
this.handleTask(request.id, engine.renderPageAnnotations(...args));
|
|
114
|
+
return;
|
|
116
115
|
case "renderPageAnnotationsRaw":
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
this.handleTask(request.id, engine.renderPageAnnotationsRaw(...args));
|
|
117
|
+
return;
|
|
119
118
|
case "renderThumbnail":
|
|
120
|
-
|
|
121
|
-
|
|
119
|
+
this.handleTask(request.id, engine.renderThumbnail(...args));
|
|
120
|
+
return;
|
|
122
121
|
case "getAllAnnotations":
|
|
123
|
-
|
|
124
|
-
|
|
122
|
+
this.handleTask(request.id, engine.getAllAnnotations(...args));
|
|
123
|
+
return;
|
|
125
124
|
case "getPageAnnotations":
|
|
126
|
-
|
|
127
|
-
|
|
125
|
+
this.handleTask(request.id, engine.getPageAnnotations(...args));
|
|
126
|
+
return;
|
|
127
|
+
case "getDocumentJavaScriptActions":
|
|
128
|
+
this.handleTask(request.id, engine.getDocumentJavaScriptActions(...args));
|
|
129
|
+
return;
|
|
130
|
+
case "getPageAnnoWidgets":
|
|
131
|
+
this.handleTask(request.id, engine.getPageAnnoWidgets(...args));
|
|
132
|
+
return;
|
|
133
|
+
case "getPageWidgetJavaScriptActions":
|
|
134
|
+
this.handleTask(request.id, engine.getPageWidgetJavaScriptActions(...args));
|
|
135
|
+
return;
|
|
128
136
|
case "createPageAnnotation":
|
|
129
|
-
|
|
130
|
-
|
|
137
|
+
this.handleTask(request.id, engine.createPageAnnotation(...args));
|
|
138
|
+
return;
|
|
131
139
|
case "updatePageAnnotation":
|
|
132
|
-
|
|
133
|
-
|
|
140
|
+
this.handleTask(request.id, engine.updatePageAnnotation(...args));
|
|
141
|
+
return;
|
|
134
142
|
case "removePageAnnotation":
|
|
135
|
-
|
|
136
|
-
|
|
143
|
+
this.handleTask(request.id, engine.removePageAnnotation(...args));
|
|
144
|
+
return;
|
|
137
145
|
case "getPageTextRects":
|
|
138
|
-
|
|
139
|
-
|
|
146
|
+
this.handleTask(request.id, engine.getPageTextRects(...args));
|
|
147
|
+
return;
|
|
140
148
|
case "searchAllPages":
|
|
141
|
-
|
|
142
|
-
|
|
149
|
+
this.handleTask(request.id, engine.searchAllPages(...args));
|
|
150
|
+
return;
|
|
143
151
|
case "closeDocument":
|
|
144
|
-
|
|
145
|
-
|
|
152
|
+
this.handleTask(request.id, engine.closeDocument(...args));
|
|
153
|
+
return;
|
|
146
154
|
case "closeAllDocuments":
|
|
147
|
-
|
|
148
|
-
|
|
155
|
+
this.handleTask(request.id, engine.closeAllDocuments(...args));
|
|
156
|
+
return;
|
|
149
157
|
case "saveAsCopy":
|
|
150
|
-
|
|
151
|
-
|
|
158
|
+
this.handleTask(request.id, engine.saveAsCopy(...args));
|
|
159
|
+
return;
|
|
152
160
|
case "getAttachments":
|
|
153
|
-
|
|
154
|
-
|
|
161
|
+
this.handleTask(request.id, engine.getAttachments(...args));
|
|
162
|
+
return;
|
|
155
163
|
case "addAttachment":
|
|
156
|
-
|
|
157
|
-
|
|
164
|
+
this.handleTask(request.id, engine.addAttachment(...args));
|
|
165
|
+
return;
|
|
158
166
|
case "removeAttachment":
|
|
159
|
-
|
|
160
|
-
|
|
167
|
+
this.handleTask(request.id, engine.removeAttachment(...args));
|
|
168
|
+
return;
|
|
161
169
|
case "readAttachmentContent":
|
|
162
|
-
|
|
163
|
-
|
|
170
|
+
this.handleTask(request.id, engine.readAttachmentContent(...args));
|
|
171
|
+
return;
|
|
164
172
|
case "setFormFieldValue":
|
|
165
|
-
|
|
166
|
-
|
|
173
|
+
this.handleTask(request.id, engine.setFormFieldValue(...args));
|
|
174
|
+
return;
|
|
175
|
+
case "setFormFieldState":
|
|
176
|
+
this.handleTask(request.id, engine.setFormFieldState(...args));
|
|
177
|
+
return;
|
|
178
|
+
case "renameWidgetField":
|
|
179
|
+
this.handleTask(request.id, engine.renameWidgetField(...args));
|
|
180
|
+
return;
|
|
181
|
+
case "shareWidgetField":
|
|
182
|
+
this.handleTask(request.id, engine.shareWidgetField(...args));
|
|
183
|
+
return;
|
|
167
184
|
case "flattenPage":
|
|
168
|
-
|
|
169
|
-
|
|
185
|
+
this.handleTask(request.id, engine.flattenPage(...args));
|
|
186
|
+
return;
|
|
170
187
|
case "extractPages":
|
|
171
|
-
|
|
172
|
-
|
|
188
|
+
this.handleTask(request.id, engine.extractPages(...args));
|
|
189
|
+
return;
|
|
173
190
|
case "extractText":
|
|
174
|
-
|
|
175
|
-
|
|
191
|
+
this.handleTask(request.id, engine.extractText(...args));
|
|
192
|
+
return;
|
|
176
193
|
case "redactTextInRects":
|
|
177
|
-
|
|
178
|
-
|
|
194
|
+
this.handleTask(request.id, engine.redactTextInRects(...args));
|
|
195
|
+
return;
|
|
179
196
|
case "applyRedaction":
|
|
180
|
-
|
|
181
|
-
|
|
197
|
+
this.handleTask(request.id, engine.applyRedaction(...args));
|
|
198
|
+
return;
|
|
182
199
|
case "applyAllRedactions":
|
|
183
|
-
|
|
184
|
-
|
|
200
|
+
this.handleTask(request.id, engine.applyAllRedactions(...args));
|
|
201
|
+
return;
|
|
185
202
|
case "flattenAnnotation":
|
|
186
|
-
|
|
187
|
-
|
|
203
|
+
this.handleTask(request.id, engine.flattenAnnotation(...args));
|
|
204
|
+
return;
|
|
188
205
|
case "getTextSlices":
|
|
189
|
-
|
|
190
|
-
|
|
206
|
+
this.handleTask(request.id, engine.getTextSlices(...args));
|
|
207
|
+
return;
|
|
191
208
|
case "getPageGlyphs":
|
|
192
|
-
|
|
193
|
-
|
|
209
|
+
this.handleTask(request.id, engine.getPageGlyphs(...args));
|
|
210
|
+
return;
|
|
194
211
|
case "getPageGeometry":
|
|
195
|
-
|
|
196
|
-
|
|
212
|
+
this.handleTask(request.id, engine.getPageGeometry(...args));
|
|
213
|
+
return;
|
|
197
214
|
case "getPageTextRuns":
|
|
198
|
-
|
|
199
|
-
|
|
215
|
+
this.handleTask(request.id, engine.getPageTextRuns(...args));
|
|
216
|
+
return;
|
|
200
217
|
case "merge":
|
|
201
|
-
|
|
202
|
-
|
|
218
|
+
this.handleTask(request.id, engine.merge(...args));
|
|
219
|
+
return;
|
|
203
220
|
case "mergePages":
|
|
204
|
-
|
|
205
|
-
|
|
221
|
+
this.handleTask(request.id, engine.mergePages(...args));
|
|
222
|
+
return;
|
|
206
223
|
case "preparePrintDocument":
|
|
207
|
-
|
|
208
|
-
|
|
224
|
+
this.handleTask(request.id, engine.preparePrintDocument(...args));
|
|
225
|
+
return;
|
|
209
226
|
case "setDocumentEncryption":
|
|
210
|
-
|
|
211
|
-
|
|
227
|
+
this.handleTask(request.id, engine.setDocumentEncryption(...args));
|
|
228
|
+
return;
|
|
212
229
|
case "removeEncryption":
|
|
213
|
-
|
|
214
|
-
|
|
230
|
+
this.handleTask(request.id, engine.removeEncryption(...args));
|
|
231
|
+
return;
|
|
215
232
|
case "unlockOwnerPermissions":
|
|
216
|
-
|
|
217
|
-
|
|
233
|
+
this.handleTask(request.id, engine.unlockOwnerPermissions(...args));
|
|
234
|
+
return;
|
|
218
235
|
case "isEncrypted":
|
|
219
|
-
|
|
220
|
-
|
|
236
|
+
this.handleTask(request.id, engine.isEncrypted(...args));
|
|
237
|
+
return;
|
|
221
238
|
case "isOwnerUnlocked":
|
|
222
|
-
|
|
223
|
-
|
|
239
|
+
this.handleTask(request.id, engine.isOwnerUnlocked(...args));
|
|
240
|
+
return;
|
|
224
241
|
default:
|
|
225
242
|
const error = {
|
|
226
243
|
type: "reject",
|
|
@@ -240,38 +257,6 @@ class EngineRunner {
|
|
|
240
257
|
this.respond(response);
|
|
241
258
|
return;
|
|
242
259
|
}
|
|
243
|
-
task.onProgress((progress) => {
|
|
244
|
-
const response = {
|
|
245
|
-
id: request.id,
|
|
246
|
-
type: "ExecuteProgress",
|
|
247
|
-
data: progress
|
|
248
|
-
};
|
|
249
|
-
this.respond(response);
|
|
250
|
-
});
|
|
251
|
-
task.wait(
|
|
252
|
-
(result) => {
|
|
253
|
-
const response = {
|
|
254
|
-
id: request.id,
|
|
255
|
-
type: "ExecuteResponse",
|
|
256
|
-
data: {
|
|
257
|
-
type: "result",
|
|
258
|
-
value: result
|
|
259
|
-
}
|
|
260
|
-
};
|
|
261
|
-
this.respond(response);
|
|
262
|
-
},
|
|
263
|
-
(error) => {
|
|
264
|
-
const response = {
|
|
265
|
-
id: request.id,
|
|
266
|
-
type: "ExecuteResponse",
|
|
267
|
-
data: {
|
|
268
|
-
type: "error",
|
|
269
|
-
value: error
|
|
270
|
-
}
|
|
271
|
-
};
|
|
272
|
-
this.respond(response);
|
|
273
|
-
}
|
|
274
|
-
);
|
|
275
260
|
};
|
|
276
261
|
}
|
|
277
262
|
/**
|
|
@@ -317,6 +302,43 @@ class EngineRunner {
|
|
|
317
302
|
});
|
|
318
303
|
this.logger.debug(LOG_SOURCE, LOG_CATEGORY, "runner is ready");
|
|
319
304
|
}
|
|
305
|
+
/**
|
|
306
|
+
* Bind task progress and completion handlers to worker responses.
|
|
307
|
+
*/
|
|
308
|
+
handleTask(requestId, task) {
|
|
309
|
+
task.onProgress((progress) => {
|
|
310
|
+
const response = {
|
|
311
|
+
id: requestId,
|
|
312
|
+
type: "ExecuteProgress",
|
|
313
|
+
data: progress
|
|
314
|
+
};
|
|
315
|
+
this.respond(response);
|
|
316
|
+
});
|
|
317
|
+
task.wait(
|
|
318
|
+
(result) => {
|
|
319
|
+
const response = {
|
|
320
|
+
id: requestId,
|
|
321
|
+
type: "ExecuteResponse",
|
|
322
|
+
data: {
|
|
323
|
+
type: "result",
|
|
324
|
+
value: result
|
|
325
|
+
}
|
|
326
|
+
};
|
|
327
|
+
this.respond(response);
|
|
328
|
+
},
|
|
329
|
+
(error) => {
|
|
330
|
+
const response = {
|
|
331
|
+
id: requestId,
|
|
332
|
+
type: "ExecuteResponse",
|
|
333
|
+
data: {
|
|
334
|
+
type: "error",
|
|
335
|
+
value: error
|
|
336
|
+
}
|
|
337
|
+
};
|
|
338
|
+
this.respond(response);
|
|
339
|
+
}
|
|
340
|
+
);
|
|
341
|
+
}
|
|
320
342
|
/**
|
|
321
343
|
* Send back the response
|
|
322
344
|
* @param response - response that needs sent back
|