@cloudpdf/[email protected]
Minor Changes
- #1030 by @bobsingor – The manifest and a write's cache delta carry
viewportsVersion, the pin of the pages' scales. The page layout carries each page'sviewports, anddoc.pages.setScaleanswers with the new layout. The changes endpoint takes thepages.setScaleop. The page list and the measurement viewport are named components.
@cloudpdf/[email protected]
Minor Changes
-
#1030 by @bobsingor – The layout is read at the manifest's
viewportsVersionas well as itslayoutVersion, so it carries the pages' scales and a scale change reaches every client.page.measure.setScale()is a one-pagedoc.pages.setScalechange. -
#1033 by @bobsingor – A token function now runs once per token, not once per request. The engine keeps the token it gives, and calls the function again in the background a minute before that token expires, so no request waits for the renewal and a long session never runs out. Requests that arrive together share one call; a renewal that fails is tried again 5 seconds later while the kept token still works. When CloudPDF refuses a kept token, the engine asks the function once more and sends the request again. A literal token works as before.
@cloudpdf/[email protected]
Minor Changes
- #1030 by @bobsingor – The types carry
viewportsVersionon the manifest and a write's cache delta,viewportson a page's layout, thepages.setScalechange op and its answer, and the newlayoutindoc.pages.setScale's answer.
@cloudpdf/[email protected]
Minor Changes
- #1030 by @bobsingor – Layers and versions keep
viewports_version(migration 053), raised by a scale change and by nothing else, so the outline, search and export caches stay warm across one. The layout's cached URL carries it; a token without it gets the layout without viewports.PUT …/pages/:pageKey/scaleis a one-op change, so its opId undoes it. The changes endpoint appliespages.setScale.
@cloudpdf/[email protected]
Minor Changes
- #1033 by @bobsingor –
src: { id, token }keeps the document open whensrcchanges but itsiddoesn't, and takes the next token from the newsrc. A token function written inline in a component, made again on every render, no longer reopens the document.
@embedpdf/[email protected]
Minor Changes
-
#1029 by @bobsingor –
ctx.storeChangeCount()says how many times the store changed: a state or mirror write anywhere, or actx.notify(), counted when the change happens, also while the change stream is held. Give it tomemoormemoByKeyas the input of a read whose answer comes from functions you can't name the inputs of, so the read asks them once per store change, however many readers ask. Test contexts from@embedpdf/core/testinghave it too.memoandmemoByKeycompare their inputs with a plain loop, which makes every cached read a little cheaper.
Patch Changes
-
#1030 by @bobsingor – The page list takes a page scale change's new layout from its event, and shows a pending one at once. The test context's pages can carry viewports, and a document event that moves them wakes the store's readers, as in the kernel.
-
#1028 by [@bobsingor](https://github.com/
