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
-
+
+