@jsenv/navi 0.29.379 → 0.29.381
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/dev/jsenv_navi.js +21 -7
- package/dist/dev/jsenv_navi.js.map +3 -3
- package/dist/jsenv_navi.js +21 -7
- package/dist/jsenv_navi.js.map +3 -3
- package/docs/view_transitions.md +16 -7
- package/package.json +1 -1
package/docs/view_transitions.md
CHANGED
|
@@ -9,7 +9,7 @@ they are met once.
|
|
|
9
9
|
- [A name is unique per document](#a-name-is-unique-per-document)
|
|
10
10
|
- [Nested groups, and the fallback fade](#nested-groups-and-the-fallback-fade)
|
|
11
11
|
- [Rendering is suspended for the whole callback](#rendering-is-suspended-for-the-whole-callback)
|
|
12
|
-
- [`
|
|
12
|
+
- [`ready` rejects when the transition is skipped, `finished` when the update fails](#ready-rejects-when-the-transition-is-skipped-finished-when-the-update-fails)
|
|
13
13
|
- [The top layer is painted through the root's picture](#the-top-layer-is-painted-through-the-roots-picture)
|
|
14
14
|
- [Two frames show the live document](#two-frames-show-the-live-document)
|
|
15
15
|
|
|
@@ -59,12 +59,21 @@ that waits on the network flickers every demo shown in an iframe while the same
|
|
|
59
59
|
app, opened on its own, shows nothing. Keep the callback short, and suspect the
|
|
60
60
|
frame before the code when a scrollbar blinks.
|
|
61
61
|
|
|
62
|
-
## `
|
|
63
|
-
|
|
64
|
-
There is only ever one transition per document, so
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
62
|
+
## `ready` rejects when the transition is skipped, `finished` when the update fails
|
|
63
|
+
|
|
64
|
+
There is only ever one transition per document, so another one starting SKIPS
|
|
65
|
+
this one — as does the document going hidden or its snapshot containing block
|
|
66
|
+
changing size mid-movement (a phone's address bar folding, its keyboard
|
|
67
|
+
opening). A skip rejects `viewTransition.ready`, with a stackless DOMException
|
|
68
|
+
(`AbortError` "skipped", or `InvalidStateError` "aborted because of invalid
|
|
69
|
+
state"). `viewTransition.finished` still FULFILLS on a skip: the end state is
|
|
70
|
+
reached, only the animation is not. `finished` (and `updateCallbackDone`)
|
|
71
|
+
reject for one reason only, the update callback throwing.
|
|
72
|
+
|
|
73
|
+
So ending a transition means handling both ways of `finished` — `.finally()`
|
|
74
|
+
does not handle a rejection, an unhandled one is what it leaves behind, and
|
|
75
|
+
`.then(done, done)` is the shape that ends it whichever way it went — while a
|
|
76
|
+
`ready` waiter must expect the skip: `ready.then(onPictures, () => {})`.
|
|
68
77
|
|
|
69
78
|
## See also
|
|
70
79
|
|