diff --git a/.changeset/smooth-dolphins-tap.md b/.changeset/smooth-dolphins-tap.md new file mode 100644 index 000000000..d76b5731a --- /dev/null +++ b/.changeset/smooth-dolphins-tap.md @@ -0,0 +1,5 @@ +--- +'@react-pdf/renderer': patch +--- + +Added an optional callback to the updateContainer method. This allows the user of the pdf instance to know when the update operation is finished in React. As this is an optional argument, no user code should be changed. diff --git a/packages/renderer/index.d.ts b/packages/renderer/index.d.ts index dbbe6fb14..4dd88210b 100644 --- a/packages/renderer/index.d.ts +++ b/packages/renderer/index.d.ts @@ -511,7 +511,7 @@ declare namespace ReactPDF { toBlob: () => Promise; toBuffer: () => Promise; on: (event: 'change', callback: () => void) => void; - updateContainer: (document: React.ReactElement) => void; + updateContainer: (document: React.ReactElement, callback?: () => void) => void; removeListener: (event: 'change', callback: () => void) => void; }; diff --git a/packages/renderer/src/index.js b/packages/renderer/src/index.js index 8b6c0442f..955d41a08 100644 --- a/packages/renderer/src/index.js +++ b/packages/renderer/src/index.js @@ -25,8 +25,8 @@ const pdf = initialValue => { renderer = renderer || createRenderer({ onChange }); const mountNode = renderer.createContainer(container); - const updateContainer = doc => { - renderer.updateContainer(doc, mountNode, null); + const updateContainer = (doc, callback) => { + renderer.updateContainer(doc, mountNode, null, callback); }; if (initialValue) updateContainer(initialValue);