@embedpdf/engines 2.6.2 → 2.7.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-CmsmBgWP.js → direct-engine-BfstxIRP.js} +153 -5
- package/dist/direct-engine-BfstxIRP.js.map +1 -0
- package/dist/direct-engine-DzwAVTnQ.cjs +2 -0
- package/dist/direct-engine-DzwAVTnQ.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/orchestrator/pdf-engine.d.ts +10 -2
- package/dist/lib/orchestrator/remote-executor.d.ts +5 -2
- package/dist/lib/pdfium/engine.d.ts +19 -2
- package/dist/lib/pdfium/index.cjs +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 +7 -4
- 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 +6 -2
- package/dist/lib/webworker/engine.js +27 -2
- package/dist/lib/webworker/engine.js.map +1 -1
- package/dist/pdf-engine-DeyImjZt.cjs +2 -0
- package/dist/pdf-engine-DeyImjZt.cjs.map +1 -0
- package/dist/{pdf-engine-C07l7iNd.js → pdf-engine-ZvReuoDb.js} +84 -3
- package/dist/pdf-engine-ZvReuoDb.js.map +1 -0
- package/dist/preact/index.cjs +1 -1
- package/dist/preact/index.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/svelte/index.cjs +1 -1
- package/dist/svelte/index.js +1 -1
- package/dist/vue/index.cjs +1 -1
- package/dist/vue/index.js +1 -1
- package/package.json +5 -5
- package/dist/direct-engine-CCVjfywm.cjs +0 -2
- package/dist/direct-engine-CCVjfywm.cjs.map +0 -1
- package/dist/direct-engine-CmsmBgWP.js.map +0 -1
- package/dist/pdf-engine-C07l7iNd.js.map +0 -1
- package/dist/pdf-engine-DUjCt3HC.cjs +0 -2
- package/dist/pdf-engine-DUjCt3HC.cjs.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"),r=require("./lib/webworker/engine.cjs"),t=require("@embedpdf/models"),a=require("./direct-engine-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lib/pdfium/index.cjs"),r=require("./lib/webworker/engine.cjs"),t=require("@embedpdf/models"),a=require("./direct-engine-DzwAVTnQ.cjs"),s=require("./browser-13mzox-R.cjs"),o=require("./pdf-engine-DeyImjZt.cjs"),n=require("./lib/pdfium/web/worker-engine.cjs"),c="WebWorkerEngineRunner",i="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=r.WebWorkerEngine,exports.WorkerTask=r.WorkerTask,Object.defineProperty(exports,"FontCharset",{enumerable:!0,get:()=>t.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=o.PdfEngine,exports.createPdfiumWorkerEngine=n.createPdfiumEngine,exports.EngineRunner=class{constructor(e=new t.NoopLogger){this.logger=e,this.execute=async e=>{if(this.logger.debug(c,i,"runner start exeucte request"),!this.engine){const r={type:"reject",reason:{code:t.PdfErrorCode.NotReady,message:"engine has not started yet"}},a={id:e.id,type:"ExecuteResponse",data:{type:"error",value:r}};return void this.respond(a)}const r=this.engine,{name:a,args:s}=e.data;if(!r[a]){const r={type:"reject",reason:{code:t.PdfErrorCode.NotSupport,message:`engine method ${a} is not supported yet`}},s={id:e.id,type:"ExecuteResponse",data:{type:"error",value:r}};return void this.respond(s)}let o;switch(a){case"isSupport":o=r.isSupport(...s);break;case"destroy":o=r.destroy(...s);break;case"openDocumentUrl":o=r.openDocumentUrl(...s);break;case"openDocumentBuffer":o=r.openDocumentBuffer(...s);break;case"getDocPermissions":o=r.getDocPermissions(...s);break;case"getDocUserPermissions":o=r.getDocUserPermissions(...s);break;case"getMetadata":o=r.getMetadata(...s);break;case"setMetadata":o=r.setMetadata(...s);break;case"getBookmarks":o=r.getBookmarks(...s);break;case"setBookmarks":o=r.setBookmarks(...s);break;case"deleteBookmarks":o=r.deleteBookmarks(...s);break;case"getSignatures":o=r.getSignatures(...s);break;case"renderPage":o=r.renderPage(...s);break;case"renderPageRect":o=r.renderPageRect(...s);break;case"renderPageRaw":o=r.renderPageRaw(...s);break;case"renderPageRectRaw":o=r.renderPageRectRaw(...s);break;case"renderPageAnnotation":o=r.renderPageAnnotation(...s);break;case"renderPageAnnotations":o=r.renderPageAnnotations(...s);break;case"renderPageAnnotationsRaw":o=r.renderPageAnnotationsRaw(...s);break;case"renderThumbnail":o=r.renderThumbnail(...s);break;case"getAllAnnotations":o=r.getAllAnnotations(...s);break;case"getPageAnnotations":o=r.getPageAnnotations(...s);break;case"createPageAnnotation":o=r.createPageAnnotation(...s);break;case"updatePageAnnotation":o=r.updatePageAnnotation(...s);break;case"removePageAnnotation":o=r.removePageAnnotation(...s);break;case"getPageTextRects":o=r.getPageTextRects(...s);break;case"searchAllPages":o=r.searchAllPages(...s);break;case"closeDocument":o=r.closeDocument(...s);break;case"closeAllDocuments":o=r.closeAllDocuments(...s);break;case"saveAsCopy":o=r.saveAsCopy(...s);break;case"getAttachments":o=r.getAttachments(...s);break;case"addAttachment":o=r.addAttachment(...s);break;case"removeAttachment":o=r.removeAttachment(...s);break;case"readAttachmentContent":o=r.readAttachmentContent(...s);break;case"setFormFieldValue":o=r.setFormFieldValue(...s);break;case"flattenPage":o=r.flattenPage(...s);break;case"extractPages":o=r.extractPages(...s);break;case"extractText":o=r.extractText(...s);break;case"redactTextInRects":o=r.redactTextInRects(...s);break;case"applyRedaction":o=r.applyRedaction(...s);break;case"applyAllRedactions":o=r.applyAllRedactions(...s);break;case"flattenAnnotation":o=r.flattenAnnotation(...s);break;case"getTextSlices":o=r.getTextSlices(...s);break;case"getPageGlyphs":o=r.getPageGlyphs(...s);break;case"getPageGeometry":o=r.getPageGeometry(...s);break;case"getPageTextRuns":o=r.getPageTextRuns(...s);break;case"merge":o=r.merge(...s);break;case"mergePages":o=r.mergePages(...s);break;case"preparePrintDocument":o=r.preparePrintDocument(...s);break;case"setDocumentEncryption":o=r.setDocumentEncryption(...s);break;case"removeEncryption":o=r.removeEncryption(...s);break;case"unlockOwnerPermissions":o=r.unlockOwnerPermissions(...s);break;case"isEncrypted":o=r.isEncrypted(...s);break;case"isOwnerUnlocked":o=r.isOwnerUnlocked(...s);break;default:const n={type:"reject",reason:{code:t.PdfErrorCode.NotSupport,message:`engine method ${a} is not supported`}},c={id:e.id,type:"ExecuteResponse",data:{type:"error",value:n}};return void this.respond(c)}o.onProgress(r=>{const t={id:e.id,type:"ExecuteProgress",data:r};this.respond(t)}),o.wait(r=>{const t={id:e.id,type:"ExecuteResponse",data:{type:"result",value:r}};this.respond(t)},r=>{const t={id:e.id,type:"ExecuteResponse",data:{type:"error",value:r}};this.respond(t)})}}listen(){self.onmessage=e=>this.handle(e)}handle(e){this.logger.debug(c,i,"webworker receive message event: ",e.data);try{const r=e.data;if("ExecuteRequest"===r.type)this.execute(r)}catch(r){this.logger.info(c,i,"webworker met error when processing message event:",r)}}ready(){this.listen(),this.respond({id:"0",type:"ReadyResponse"}),this.logger.debug(c,i,"runner is ready")}respond(e){this.logger.debug(c,i,"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 '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","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 */\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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"}
|
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-BfstxIRP.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-ZvReuoDb.js";
|
|
8
8
|
import { createPdfiumEngine } from "./lib/pdfium/web/worker-engine.js";
|
|
9
9
|
const LOG_SOURCE = "WebWorkerEngineRunner";
|
|
10
10
|
const LOG_CATEGORY = "Engine";
|
|
@@ -110,6 +110,12 @@ class EngineRunner {
|
|
|
110
110
|
case "renderPageAnnotation":
|
|
111
111
|
task = engine.renderPageAnnotation(...args);
|
|
112
112
|
break;
|
|
113
|
+
case "renderPageAnnotations":
|
|
114
|
+
task = engine.renderPageAnnotations(...args);
|
|
115
|
+
break;
|
|
116
|
+
case "renderPageAnnotationsRaw":
|
|
117
|
+
task = engine.renderPageAnnotationsRaw(...args);
|
|
118
|
+
break;
|
|
113
119
|
case "renderThumbnail":
|
|
114
120
|
task = engine.renderThumbnail(...args);
|
|
115
121
|
break;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","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 '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":["e"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","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":["e"],"mappings":";;;;;;;;AAoIA,MAAM,aAAa;AACnB,MAAM,eAAe;AAMd,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA,EAOxB,YAAmB,SAAiB,IAAI,cAAc;AAAnC,SAAA,SAAA;AAwDnB,SAAA,UAAU,OAAO,YAA4B;AAC3C,WAAK,OAAO,MAAM,YAAY,cAAc,8BAA8B;AAC1E,UAAI,CAAC,KAAK,QAAQ;AAChB,cAAM,QAAwB;AAAA,UAC5B,MAAM;AAAA,UACN,QAAQ;AAAA,YACN,MAAM,aAAa;AAAA,YACnB,SAAS;AAAA,UAAA;AAAA,QACX;AAEF,cAAM,WAA4B;AAAA,UAChC,IAAI,QAAQ;AAAA,UACZ,MAAM;AAAA,UACN,MAAM;AAAA,YACJ,MAAM;AAAA,YACN,OAAO;AAAA,UAAA;AAAA,QACT;AAEF,aAAK,QAAQ,QAAQ;AACrB;AAAA,MACF;AAEA,YAAM,SAAS,KAAK;AACpB,YAAM,EAAE,MAAM,KAAA,IAAS,QAAQ;AAC/B,UAAI,CAAC,OAAO,IAAI,GAAG;AACjB,cAAM,QAAwB;AAAA,UAC5B,MAAM;AAAA,UACN,QAAQ;AAAA,YACN,MAAM,aAAa;AAAA,YACnB,SAAS,iBAAiB,IAAI;AAAA,UAAA;AAAA,QAChC;AAEF,cAAM,WAA4B;AAAA,UAChC,IAAI,QAAQ;AAAA,UACZ,MAAM;AAAA,UACN,MAAM;AAAA,YACJ,MAAM;AAAA,YACN,OAAO;AAAA,UAAA;AAAA,QACT;AAEF,aAAK,QAAQ,QAAQ;AACrB;AAAA,MACF;AAEA,UAAI;AACJ,cAAQ,MAAA;AAAA,QACN,KAAK;AACH,iBAAO,OAAO,UAAW,GAAG,IAAI;AAChC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,QAAS,GAAG,IAAI;AAC9B;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,gBAAiB,GAAG,IAAI;AACtC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,mBAAoB,GAAG,IAAI;AACzC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,sBAAuB,GAAG,IAAI;AAC5C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,YAAa,GAAG,IAAI;AAClC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,YAAa,GAAG,IAAI;AAClC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,aAAc,GAAG,IAAI;AACnC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,aAAc,GAAG,IAAI;AACnC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,gBAAiB,GAAG,IAAI;AACtC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,cAAe,GAAG,IAAI;AACpC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,WAAY,GAAG,IAAI;AACjC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,eAAgB,GAAG,IAAI;AACrC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,cAAe,GAAG,IAAI;AACpC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,qBAAsB,GAAG,IAAI;AAC3C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,sBAAuB,GAAG,IAAI;AAC5C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,yBAA0B,GAAG,IAAI;AAC/C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,gBAAiB,GAAG,IAAI;AACtC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,mBAAoB,GAAG,IAAI;AACzC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,qBAAsB,GAAG,IAAI;AAC3C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,qBAAsB,GAAG,IAAI;AAC3C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,qBAAsB,GAAG,IAAI;AAC3C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,iBAAkB,GAAG,IAAI;AACvC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,eAAgB,GAAG,IAAI;AACrC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,cAAe,GAAG,IAAI;AACpC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,WAAY,GAAG,IAAI;AACjC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,eAAgB,GAAG,IAAI;AACrC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,cAAe,GAAG,IAAI;AACpC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,iBAAkB,GAAG,IAAI;AACvC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,sBAAuB,GAAG,IAAI;AAC5C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,YAAa,GAAG,IAAI;AAClC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,aAAc,GAAG,IAAI;AACnC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,YAAa,GAAG,IAAI;AAClC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,eAAgB,GAAG,IAAI;AACrC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,mBAAoB,GAAG,IAAI;AACzC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,kBAAmB,GAAG,IAAI;AACxC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,cAAe,GAAG,IAAI;AACpC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,cAAe,GAAG,IAAI;AACpC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,gBAAiB,GAAG,IAAI;AACtC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,gBAAiB,GAAG,IAAI;AACtC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,MAAO,GAAG,IAAI;AAC5B;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,WAAY,GAAG,IAAI;AACjC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,qBAAsB,GAAG,IAAI;AAC3C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,sBAAsB,GAAG,IAAI;AAC3C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,iBAAiB,GAAG,IAAI;AACtC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,uBAAuB,GAAG,IAAI;AAC5C;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,YAAY,GAAG,IAAI;AACjC;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,gBAAgB,GAAG,IAAI;AACrC;AAAA,QACF;AAEE,gBAAM,QAAwB;AAAA,YAC5B,MAAM;AAAA,YACN,QAAQ;AAAA,cACN,MAAM,aAAa;AAAA,cACnB,SAAS,iBAAiB,IAAI;AAAA,YAAA;AAAA,UAChC;AAEF,gBAAM,WAA4B;AAAA,YAChC,IAAI,QAAQ;AAAA,YACZ,MAAM;AAAA,YACN,MAAM;AAAA,cACJ,MAAM;AAAA,cACN,OAAO;AAAA,YAAA;AAAA,UACT;AAEF,eAAK,QAAQ,QAAQ;AACrB;AAAA,MAAA;AAGJ,WAAK,WAAW,CAAC,aAAa;AAC5B,cAAM,WAA4B;AAAA,UAChC,IAAI,QAAQ;AAAA,UACZ,MAAM;AAAA,UACN,MAAM;AAAA,QAAA;AAER,aAAK,QAAQ,QAAQ;AAAA,MACvB,CAAC;AAED,WAAK;AAAA,QACH,CAAC,WAAW;AACV,gBAAM,WAA4B;AAAA,YAChC,IAAI,QAAQ;AAAA,YACZ,MAAM;AAAA,YACN,MAAM;AAAA,cACJ,MAAM;AAAA,cACN,OAAO;AAAA,YAAA;AAAA,UACT;AAEF,eAAK,QAAQ,QAAQ;AAAA,QACvB;AAAA,QACA,CAAC,UAAU;AACT,gBAAM,WAA4B;AAAA,YAChC,IAAI,QAAQ;AAAA,YACZ,MAAM;AAAA,YACN,MAAM;AAAA,cACJ,MAAM;AAAA,cACN,OAAO;AAAA,YAAA;AAAA,UACT;AAEF,eAAK,QAAQ,QAAQ;AAAA,QACvB;AAAA,MAAA;AAAA,IAEJ;AAAA,EA9TuD;AAAA;AAAA;AAAA;AAAA,EAKvD,SAAS;AACP,SAAK,YAAY,CAAC,QAA+B;AAC/C,aAAO,KAAK,OAAO,GAAG;AAAA,IACxB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,KAA4B;AACjC,SAAK,OAAO,MAAM,YAAY,cAAc,qCAAqC,IAAI,IAAI;AACzF,QAAI;AACF,YAAM,UAAU,IAAI;AACpB,cAAQ,QAAQ,MAAA;AAAA,QACd,KAAK;AACH,eAAK,QAAQ,OAAO;AACpB;AAAA,MAAA;AAAA,IAEN,SAASA,IAAG;AACV,WAAK,OAAO;AAAA,QACV;AAAA,QACA;AAAA,QACA;AAAA,QACAA;AAAA,MAAA;AAAA,IAEJ;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,QAAQ;AACN,SAAK,OAAA;AAEL,SAAK,QAAQ;AAAA,MACX,IAAI;AAAA,MACJ,MAAM;AAAA,IAAA,CACP;AACD,SAAK,OAAO,MAAM,YAAY,cAAc,iBAAiB;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAuRA,QAAQ,UAAoB;AAC1B,SAAK,OAAO,MAAM,YAAY,cAAc,oBAAoB,QAAQ;AACxE,SAAK,YAAY,QAAQ;AAAA,EAC3B;AACF;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Logger, PdfEngine as IPdfEngine, PdfDocumentObject, PdfPageObject, PdfTask, PdfErrorReason, PdfFileUrl, PdfFile, PdfOpenDocumentUrlOptions, PdfOpenDocumentBufferOptions, PdfMetadataObject, PdfBookmarksObject, PdfBookmarkObject, PdfRenderPageOptions, PdfRenderThumbnailOptions, PdfRenderPageAnnotationOptions, PdfAnnotationObject, PdfTextRectObject, PdfSearchAllPagesOptions, SearchAllPagesResult, PdfPageSearchProgress, PdfAnnotationsProgress, PdfAttachmentObject, PdfAddAttachmentParams, PdfWidgetAnnoObject, FormFieldValue, PdfFlattenPageOptions, PdfPageFlattenResult, PdfRedactTextOptions, Rect, PageTextSlice, PdfGlyphObject, PdfPageGeometry, PdfPageTextRuns, PdfPrintOptions, PdfEngineFeature, PdfEngineOperation, PdfSignatureObject, AnnotationCreateContext, CompoundTask, ImageDataLike, IPdfiumExecutor } from '@embedpdf/models';
|
|
1
|
+
import { Logger, PdfEngine as IPdfEngine, PdfDocumentObject, PdfPageObject, PdfTask, PdfErrorReason, PdfFileUrl, PdfFile, PdfOpenDocumentUrlOptions, PdfOpenDocumentBufferOptions, PdfMetadataObject, PdfBookmarksObject, PdfBookmarkObject, PdfRenderPageOptions, PdfRenderThumbnailOptions, PdfRenderPageAnnotationOptions, PdfAnnotationObject, PdfTextRectObject, PdfSearchAllPagesOptions, SearchAllPagesResult, PdfPageSearchProgress, PdfAnnotationsProgress, PdfAttachmentObject, PdfAddAttachmentParams, PdfWidgetAnnoObject, FormFieldValue, PdfFlattenPageOptions, PdfPageFlattenResult, PdfRedactTextOptions, Rect, PageTextSlice, PdfGlyphObject, PdfPageGeometry, PdfPageTextRuns, PdfPrintOptions, PdfEngineFeature, PdfEngineOperation, PdfSignatureObject, AnnotationCreateContext, CompoundTask, ImageDataLike, IPdfiumExecutor, AnnotationAppearanceMap } from '@embedpdf/models';
|
|
2
2
|
import { ImageDataConverter } from '../converters/types';
|
|
3
3
|
export type { ImageDataConverter } from '../converters/types';
|
|
4
4
|
export type { ImageDataLike, IPdfiumExecutor, BatchProgress } from '@embedpdf/models';
|
|
@@ -54,6 +54,8 @@ export declare class PdfEngine<T = Blob> implements IPdfEngine<T> {
|
|
|
54
54
|
renderPageRectRaw(doc: PdfDocumentObject, page: PdfPageObject, rect: Rect, options?: PdfRenderPageOptions): PdfTask<ImageDataLike>;
|
|
55
55
|
renderThumbnail(doc: PdfDocumentObject, page: PdfPageObject, options?: PdfRenderThumbnailOptions): PdfTask<T>;
|
|
56
56
|
renderPageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject, options?: PdfRenderPageAnnotationOptions): PdfTask<T>;
|
|
57
|
+
renderPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject, options?: PdfRenderPageAnnotationOptions): PdfTask<AnnotationAppearanceMap<T>>;
|
|
58
|
+
renderPageAnnotationsRaw(doc: PdfDocumentObject, page: PdfPageObject, options?: PdfRenderPageAnnotationOptions): PdfTask<AnnotationAppearanceMap<ImageDataLike>>;
|
|
57
59
|
/**
|
|
58
60
|
* Helper to render and encode in two stages with priority queue
|
|
59
61
|
*/
|
|
@@ -62,9 +64,15 @@ export declare class PdfEngine<T = Blob> implements IPdfEngine<T> {
|
|
|
62
64
|
* Encode image using encoder pool or inline
|
|
63
65
|
*/
|
|
64
66
|
private encodeImage;
|
|
67
|
+
/**
|
|
68
|
+
* Encode a full annotation appearance map to the output type T.
|
|
69
|
+
*/
|
|
70
|
+
private encodeAppearanceMap;
|
|
65
71
|
getPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject): PdfTask<PdfAnnotationObject[]>;
|
|
66
72
|
createPageAnnotation<A extends PdfAnnotationObject>(doc: PdfDocumentObject, page: PdfPageObject, annotation: A, context?: AnnotationCreateContext<A>): PdfTask<string>;
|
|
67
|
-
updatePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject
|
|
73
|
+
updatePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject, options?: {
|
|
74
|
+
regenerateAppearance?: boolean;
|
|
75
|
+
}): PdfTask<boolean>;
|
|
68
76
|
removePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject): PdfTask<boolean>;
|
|
69
77
|
/**
|
|
70
78
|
* Get all annotations across all pages
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BatchProgress, Logger, PdfDocumentObject, PdfPageObject, PdfTask, PdfFile, PdfOpenDocumentBufferOptions, PdfMetadataObject, PdfBookmarksObject, PdfBookmarkObject, PdfRenderPageOptions, PdfRenderThumbnailOptions, PdfRenderPageAnnotationOptions, PdfAnnotationObject, PdfTextRectObject, PdfAttachmentObject, PdfAddAttachmentParams, PdfWidgetAnnoObject, FormFieldValue, PdfFlattenPageOptions, PdfPageFlattenResult, PdfRedactTextOptions, Rect, PageTextSlice, PdfGlyphObject, PdfPageGeometry, PdfPageTextRuns, PdfPrintOptions, PdfSignatureObject, AnnotationCreateContext, SearchResult, IPdfiumExecutor, ImageDataLike } from '@embedpdf/models';
|
|
1
|
+
import { BatchProgress, Logger, PdfDocumentObject, PdfPageObject, PdfTask, PdfFile, PdfOpenDocumentBufferOptions, PdfMetadataObject, PdfBookmarksObject, PdfBookmarkObject, PdfRenderPageOptions, PdfRenderThumbnailOptions, PdfRenderPageAnnotationOptions, PdfAnnotationObject, PdfTextRectObject, PdfAttachmentObject, PdfAddAttachmentParams, PdfWidgetAnnoObject, FormFieldValue, PdfFlattenPageOptions, PdfPageFlattenResult, PdfRedactTextOptions, Rect, PageTextSlice, PdfGlyphObject, PdfPageGeometry, PdfPageTextRuns, PdfPrintOptions, PdfSignatureObject, AnnotationCreateContext, SearchResult, IPdfiumExecutor, ImageDataLike, AnnotationAppearanceMap } from '@embedpdf/models';
|
|
2
2
|
import { FontFallbackConfig } from '../pdfium/font-fallback';
|
|
3
3
|
/**
|
|
4
4
|
* Options for creating a RemoteExecutor
|
|
@@ -65,10 +65,13 @@ export declare class RemoteExecutor implements IPdfiumExecutor {
|
|
|
65
65
|
renderPageRect(doc: PdfDocumentObject, page: PdfPageObject, rect: Rect, options?: PdfRenderPageOptions): PdfTask<ImageDataLike>;
|
|
66
66
|
renderThumbnailRaw(doc: PdfDocumentObject, page: PdfPageObject, options?: PdfRenderThumbnailOptions): PdfTask<ImageDataLike>;
|
|
67
67
|
renderPageAnnotationRaw(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject, options?: PdfRenderPageAnnotationOptions): PdfTask<ImageDataLike>;
|
|
68
|
+
renderPageAnnotationsRaw(doc: PdfDocumentObject, page: PdfPageObject, options?: PdfRenderPageAnnotationOptions): PdfTask<AnnotationAppearanceMap>;
|
|
68
69
|
getPageAnnotationsRaw(doc: PdfDocumentObject, page: PdfPageObject): PdfTask<PdfAnnotationObject[]>;
|
|
69
70
|
getPageAnnotations(doc: PdfDocumentObject, page: PdfPageObject): PdfTask<PdfAnnotationObject[]>;
|
|
70
71
|
createPageAnnotation<A extends PdfAnnotationObject>(doc: PdfDocumentObject, page: PdfPageObject, annotation: A, context?: AnnotationCreateContext<A>): PdfTask<string>;
|
|
71
|
-
updatePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject
|
|
72
|
+
updatePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject, options?: {
|
|
73
|
+
regenerateAppearance?: boolean;
|
|
74
|
+
}): PdfTask<boolean>;
|
|
72
75
|
removePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject): PdfTask<boolean>;
|
|
73
76
|
getPageTextRects(doc: PdfDocumentObject, page: PdfPageObject): PdfTask<PdfTextRectObject[]>;
|
|
74
77
|
searchInPage(doc: PdfDocumentObject, page: PdfPageObject, keyword: string, flags: number): PdfTask<SearchResult[]>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BatchProgress, ImageDataLike, IPdfiumExecutor, PdfAnnotationObject, PdfTextRectObject, PdfWidgetAnnoObject, Logger, SearchResult, PdfBookmarkObject, PdfDocumentObject, PdfPageObject, Rect, PdfAttachmentObject, PdfSignatureObject, PdfStampAnnoObject, PdfCircleAnnoObject, PdfSquareAnnoObject, PdfSquigglyAnnoObject, PdfStrikeOutAnnoObject, PdfUnderlineAnnoObject, PdfFile, PdfHighlightAnnoObject, FormFieldValue, PdfPageFlattenResult, PdfTask, PdfOpenDocumentBufferOptions, Task, PdfErrorReason, PdfGlyphObject, PdfPageGeometry, PageTextSlice, AnnotationCreateContext, PdfRenderPageAnnotationOptions, PdfRedactTextOptions, PdfFlattenPageOptions, PdfRenderThumbnailOptions, PdfRenderPageOptions, PdfMetadataObject, PdfPrintOptions, PdfAddAttachmentParams, PdfPageTextRuns } from '@embedpdf/models';
|
|
1
|
+
import { BatchProgress, ImageDataLike, IPdfiumExecutor, PdfAnnotationObject, PdfTextRectObject, PdfWidgetAnnoObject, Logger, SearchResult, PdfBookmarkObject, PdfDocumentObject, PdfPageObject, Rect, PdfAttachmentObject, PdfSignatureObject, PdfStampAnnoObject, PdfCircleAnnoObject, PdfSquareAnnoObject, PdfSquigglyAnnoObject, PdfStrikeOutAnnoObject, PdfUnderlineAnnoObject, PdfFile, PdfHighlightAnnoObject, FormFieldValue, PdfPageFlattenResult, PdfTask, PdfOpenDocumentBufferOptions, Task, PdfErrorReason, PdfGlyphObject, PdfPageGeometry, PageTextSlice, AnnotationCreateContext, PdfRenderPageAnnotationOptions, PdfRedactTextOptions, PdfFlattenPageOptions, PdfRenderThumbnailOptions, PdfRenderPageOptions, PdfMetadataObject, PdfPrintOptions, PdfAddAttachmentParams, AnnotationAppearanceMap, PdfPageTextRuns } from '@embedpdf/models';
|
|
2
2
|
import { WrappedPdfiumModule } from '@embedpdf/pdfium';
|
|
3
3
|
import { FontFallbackManager, FontFallbackConfig } from './font-fallback';
|
|
4
4
|
/**
|
|
@@ -183,7 +183,9 @@ export declare class PdfiumNative implements IPdfiumExecutor {
|
|
|
183
183
|
*
|
|
184
184
|
* @returns PdfTask<boolean> – true on success
|
|
185
185
|
*/
|
|
186
|
-
updatePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject
|
|
186
|
+
updatePageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject, options?: {
|
|
187
|
+
regenerateAppearance?: boolean;
|
|
188
|
+
}): PdfTask<boolean>;
|
|
187
189
|
/**
|
|
188
190
|
* {@inheritDoc @embedpdf/models!PdfEngine.removePageAnnotation}
|
|
189
191
|
*
|
|
@@ -1596,6 +1598,21 @@ export declare class PdfiumNative implements IPdfiumExecutor {
|
|
|
1596
1598
|
* @public
|
|
1597
1599
|
*/
|
|
1598
1600
|
renderPageAnnotationRaw(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObject, options?: PdfRenderPageAnnotationOptions): PdfTask<ImageDataLike>;
|
|
1601
|
+
/**
|
|
1602
|
+
* Batch-render all annotation appearance streams for a page in one call.
|
|
1603
|
+
* Returns a map of annotation ID -> rendered appearances (Normal/Rollover/Down).
|
|
1604
|
+
* Skips annotations that have rotation + unrotatedRect (EmbedPDF-rotated)
|
|
1605
|
+
* and annotations without any appearance stream.
|
|
1606
|
+
*
|
|
1607
|
+
* @public
|
|
1608
|
+
*/
|
|
1609
|
+
renderPageAnnotationsRaw(doc: PdfDocumentObject, page: PdfPageObject, options?: PdfRenderPageAnnotationOptions): PdfTask<AnnotationAppearanceMap>;
|
|
1610
|
+
/**
|
|
1611
|
+
* Render a single annotation's appearance for a given mode.
|
|
1612
|
+
* Returns the image data and rect, or null on failure.
|
|
1613
|
+
* @private
|
|
1614
|
+
*/
|
|
1615
|
+
private renderSingleAnnotAppearance;
|
|
1599
1616
|
private renderRectEncoded;
|
|
1600
1617
|
/**
|
|
1601
1618
|
* Read the target of pdf link annotation
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../direct-engine-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../direct-engine-DzwAVTnQ.cjs"),t=require("../../browser-13mzox-R.cjs"),r=require("../../pdf-engine-DeyImjZt.cjs"),n=require("@embedpdf/models"),o=require("@embedpdf/fonts-jp"),s=require("@embedpdf/fonts-kr"),a=require("@embedpdf/fonts-sc"),d=require("@embedpdf/fonts-tc"),i=require("@embedpdf/fonts-arabic"),f=require("@embedpdf/fonts-hebrew"),p=require("@embedpdf/fonts-latin"),m=require("./web/worker-engine.cjs");function c(e="latest"){return{jp:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-jp@${e}/fonts`,kr:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-kr@${e}/fonts`,sc:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-sc@${e}/fonts`,tc:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-tc@${e}/fonts`,arabic:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-arabic@${e}/fonts`,hebrew:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-hebrew@${e}/fonts`,latin:`https://cdn.jsdelivr.net/npm/@embedpdf/fonts-latin@${e}/fonts`}}function u(e,t){return e.map(e=>({url:`${t}/${e.file}`,weight:e.weight,italic:e.italic}))}function b(e){return{fonts:{[n.FontCharset.SHIFTJIS]:u(o.fonts,e.jp),[n.FontCharset.HANGEUL]:u(s.fonts,e.kr),[n.FontCharset.GB2312]:u(a.fonts,e.sc),[n.FontCharset.CHINESEBIG5]:u(d.fonts,e.tc),[n.FontCharset.ARABIC]:u(i.fonts,e.arabic),[n.FontCharset.HEBREW]:u(f.fonts,e.hebrew),[n.FontCharset.CYRILLIC]:u(p.fonts,e.latin),[n.FontCharset.GREEK]:u(p.fonts,e.latin),[n.FontCharset.VIETNAMESE]:u(p.fonts,e.latin)}}}const l=c("latest"),C=b(l);exports.BitmapFormat=e.BitmapFormat,exports.FontFallbackManager=e.FontFallbackManager,exports.PdfiumErrorCode=e.PdfiumErrorCode,exports.PdfiumNative=e.PdfiumNative,exports.RenderFlag=e.RenderFlag,exports.computeFormDrawParams=e.computeFormDrawParams,exports.createNodeFontLoader=e.createNodeFontLoader,exports.createPdfiumDirectEngine=e.createPdfiumEngine,exports.isValidCustomKey=e.isValidCustomKey,exports.readArrayBuffer=e.readArrayBuffer,exports.readString=e.readString,exports.ImageConverterError=t.ImageConverterError,exports.browserImageDataToBlobConverter=t.browserImageDataToBlobConverter,exports.createHybridImageConverter=t.createHybridImageConverter,exports.createWorkerPoolImageConverter=t.createWorkerPoolImageConverter,exports.PdfEngine=r.PdfEngine,Object.defineProperty(exports,"FontCharset",{enumerable:!0,get:()=>n.FontCharset}),exports.createPdfiumWorkerEngine=m.createPdfiumEngine,exports.DEFAULT_PDFIUM_WASM_URL="https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@2.7.0/dist/pdfium.wasm",exports.FONT_CDN_URLS=l,exports.cdnFontConfig=C,exports.createCdnFontConfig=function(e="latest"){return b(c(e))};
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/lib/pdfium/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { B, F, P, a, R, c, b, d, i, r, e } from "../../direct-engine-
|
|
1
|
+
import { B, F, P, a, R, c, b, d, i, r, e } from "../../direct-engine-BfstxIRP.js";
|
|
2
2
|
import { I, b as b2, c as c2, a as a2 } from "../../browser-BISJ9naB.js";
|
|
3
|
-
import { P as P2 } from "../../pdf-engine-
|
|
3
|
+
import { P as P2 } from "../../pdf-engine-ZvReuoDb.js";
|
|
4
4
|
import { FontCharset } from "@embedpdf/models";
|
|
5
5
|
import { FontCharset as FontCharset2 } from "@embedpdf/models";
|
|
6
6
|
import { fonts as fonts$6 } from "@embedpdf/fonts-jp";
|
|
@@ -49,7 +49,7 @@ const cdnFontConfig = buildCdnFontConfig(FONT_CDN_URLS);
|
|
|
49
49
|
function createCdnFontConfig(version = "latest") {
|
|
50
50
|
return buildCdnFontConfig(buildCdnUrls(version));
|
|
51
51
|
}
|
|
52
|
-
const DEFAULT_PDFIUM_WASM_URL = "https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@2.
|
|
52
|
+
const DEFAULT_PDFIUM_WASM_URL = "https://cdn.jsdelivr.net/npm/@embedpdf/pdfium@2.7.0/dist/pdfium.wasm";
|
|
53
53
|
export {
|
|
54
54
|
B as BitmapFormat,
|
|
55
55
|
DEFAULT_PDFIUM_WASM_URL,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("@embedpdf/pdfium");const e=require("../../../direct-engine-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("@embedpdf/pdfium");const e=require("../../../direct-engine-DzwAVTnQ.cjs");require("../../../pdf-engine-DeyImjZt.cjs"),require("../../../browser-13mzox-R.cjs"),exports.createPdfiumEngine=e.createPdfiumEngine;
|
|
2
2
|
//# sourceMappingURL=direct-engine.cjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "@embedpdf/pdfium";
|
|
2
|
-
import { d } from "../../../direct-engine-
|
|
3
|
-
import "../../../pdf-engine-
|
|
2
|
+
import { d } from "../../../direct-engine-BfstxIRP.js";
|
|
3
|
+
import "../../../pdf-engine-ZvReuoDb.js";
|
|
4
4
|
import "../../../browser-BISJ9naB.js";
|
|
5
5
|
export {
|
|
6
6
|
d as createPdfiumEngine
|