@jsenv/navi 0.29.78 → 0.29.79

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.
@@ -29849,6 +29849,43 @@ const popupCss = /* css */ `
29849
29849
  }
29850
29850
  }
29851
29851
  }
29852
+
29853
+ /* While the PAGES are the ones moving — a route transition, a route travel —
29854
+ an open popup takes a picture of its own. The pictures of such a movement
29855
+ are drawn in the top layer, above everything the document paints, and a
29856
+ popup lives in the top layer too: uncaptured, it is simply covered for the
29857
+ length of the movement, so it disappears the instant its page starts to
29858
+ leave and lands abruptly when the arriving one settles. Captured, it is a
29859
+ group beside the pages, painted over them where it stands, and the browser
29860
+ fades it out with the page it belonged to or in with the page it comes
29861
+ with.
29862
+
29863
+ An identity of its own (match-element), never a shared name: two popups on
29864
+ either side of a navigation are two different popups, and what is wanted is
29865
+ precisely that one goes and the other comes. A browser with no
29866
+ match-element takes no name and the pictures cover the popup. */
29867
+ @supports (view-transition-name: match-element) {
29868
+ :root[data-navi-route-transition] .navi_popover[aria-expanded="true"],
29869
+ :root[data-navi-route-transition] .navi_dialog[aria-expanded="true"],
29870
+ :root[data-navi-route-travel] .navi_popover[aria-expanded="true"],
29871
+ :root[data-navi-route-travel] .navi_dialog[aria-expanded="true"] {
29872
+ view-transition-name: match-element;
29873
+ view-transition-class: navi_popup;
29874
+ }
29875
+ }
29876
+
29877
+ /* On the same clock as the pages: a popup going in a quarter of the time the
29878
+ page it belongs to takes to leave is gone long before the page it was on. */
29879
+ :root[data-navi-route-transition]::view-transition-group(.navi_popup),
29880
+ :root[data-navi-route-transition]::view-transition-old(.navi_popup),
29881
+ :root[data-navi-route-transition]::view-transition-new(.navi_popup) {
29882
+ animation-duration: var(--navi-route-transition-duration, 300ms);
29883
+ }
29884
+ :root[data-navi-route-travel]::view-transition-group(.navi_popup),
29885
+ :root[data-navi-route-travel]::view-transition-old(.navi_popup),
29886
+ :root[data-navi-route-travel]::view-transition-new(.navi_popup) {
29887
+ animation-duration: var(--navi-route-travel-duration, 300ms);
29888
+ }
29852
29889
  `;
29853
29890
 
29854
29891
  /**