diff --git a/packages/pdfjs-viewer/scripts/build.ts b/packages/pdfjs-viewer/scripts/build.ts index c1c29c668..cdaac9827 100644 --- a/packages/pdfjs-viewer/scripts/build.ts +++ b/packages/pdfjs-viewer/scripts/build.ts @@ -4,6 +4,7 @@ const build = new BuildHelper("packages/pdfjs-viewer"); async function main() { build.copy("viewer", "web"); + build.copy("src/custom.mjs", "web/custom.mjs"); build.copy("/node_modules/pdfjs-dist/build/pdf.mjs", "build/pdf.mjs"); build.copy("/node_modules/pdfjs-dist/build/pdf.worker.mjs", "build/pdf.worker.mjs"); } diff --git a/packages/pdfjs-viewer/src/custom.mjs b/packages/pdfjs-viewer/src/custom.mjs new file mode 100644 index 000000000..464f48b21 --- /dev/null +++ b/packages/pdfjs-viewer/src/custom.mjs @@ -0,0 +1,21 @@ +document.addEventListener("webviewerloaded", async () => { + const app = PDFViewerApplication; + await app.initializedPromise; + + app.eventBus.on("documentloaded", () => { + const storage = app.pdfDocument.annotationStorage; + + storage.onSetModified = (data) => { + console.log("Annotations modified: ", all); + storage.resetModified(); + }; + + const oldSetValue = storage.setValue; + storage.setValue = (key, value) => { + console.log("Setting annotation: ", key, value); + oldSetValue.call(storage, key, value); + } + }); +}); + +console.log("Custom script loaded"); \ No newline at end of file diff --git a/packages/pdfjs-viewer/viewer/viewer.html b/packages/pdfjs-viewer/viewer/viewer.html index d45fa11c1..8a34152a6 100644 --- a/packages/pdfjs-viewer/viewer/viewer.html +++ b/packages/pdfjs-viewer/viewer/viewer.html @@ -33,7 +33,8 @@ See https://github.com/adobe-type-tools/cmap-resources - + +