@jsenv/navi 0.29.512 → 0.29.513
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
CHANGED
|
@@ -38356,6 +38356,10 @@ const releaseTransitionDestination = (owner) => {
|
|
|
38356
38356
|
* inside its rectangle — which is where the hand thinks it pressed. The same
|
|
38357
38357
|
* move route_travel.jsx makes for the box a finger reaches for mid-flight.
|
|
38358
38358
|
*
|
|
38359
|
+
* A `RouteTravel` holds this too. It leaves the bars live, so a control there
|
|
38360
|
+
* gets its click on its own; what this serves is a control in the part of a bar
|
|
38361
|
+
* photographed for the travel (`data-navi-fixed-bar-overhang`, fixed_bar.jsx).
|
|
38362
|
+
*
|
|
38359
38363
|
* ASKED FOR, never derived, and that is the whole safety of it: only the
|
|
38360
38364
|
* application knows the control does not move. One that travels with the pages
|
|
38361
38365
|
* has a rectangle where it WILL be, not where it is seen, and a press handed to
|
|
@@ -38461,7 +38465,7 @@ const warnAboutPressablesThatMove = (areaElement) => {
|
|
|
38461
38465
|
}
|
|
38462
38466
|
warnOnce$1(
|
|
38463
38467
|
"inside-area",
|
|
38464
|
-
`A control asking to stay pressable during a route transition stands inside the pages (the element marked ${AREA_ATTRIBUTE}), and the pages are what moves: its rectangle says where it will BE, not where it is drawn, so a press aimed at what is on screen would be handed to whatever ends up under the finger. Only the furniture around the pages stands still for the length of a movement.`,
|
|
38468
|
+
`A control asking to stay pressable during a route transition stands inside the pages (the element marked ${AREA_ATTRIBUTE}, or the box of a RouteTravel), and the pages are what moves: its rectangle says where it will BE, not where it is drawn, so a press aimed at what is on screen would be handed to whatever ends up under the finger. Only the furniture around the pages stands still for the length of a movement.`,
|
|
38465
38469
|
);
|
|
38466
38470
|
return;
|
|
38467
38471
|
}
|
|
@@ -41731,7 +41735,8 @@ const css$16 = /* css */`.navi_route_travel {
|
|
|
41731
41735
|
* root's name is dropped for that time (`view-transition-name: none`), so what
|
|
41732
41736
|
* stands around the box — a tab row beside it — stays live and answers a press
|
|
41733
41737
|
* mid-travel. The application's own rule for the root applies again the moment
|
|
41734
|
-
* the travel is over.
|
|
41738
|
+
* the travel is over. What stands out of a `FixedBar` is the exception, when it
|
|
41739
|
+
* asks to stay over the pages (see `data-navi-fixed-bar-overhang` there).
|
|
41735
41740
|
*/
|
|
41736
41741
|
const RouteTravel = ({
|
|
41737
41742
|
routes: routesProp,
|
|
@@ -41853,6 +41858,10 @@ const RouteTravel = ({
|
|
|
41853
41858
|
// transition_destination.js).
|
|
41854
41859
|
nameForTravel(travel.element);
|
|
41855
41860
|
holdTransitionDestination(travel, page.route.buildUrl(page.params));
|
|
41861
|
+
// The bars stay live, except what one of them has photographed on its own
|
|
41862
|
+
// (see fixed_bar.jsx), which is deaf like any picture and may have asked to
|
|
41863
|
+
// keep answering.
|
|
41864
|
+
holdTransitionPress(travel, travel.element);
|
|
41856
41865
|
document.documentElement.setAttribute(TRAVEL_ATTRIBUTE, direction);
|
|
41857
41866
|
document.documentElement.setAttribute(TRAVEL_AXIS_ATTRIBUTE, axis);
|
|
41858
41867
|
if (scrub) {
|
|
@@ -42275,6 +42284,7 @@ const RouteTravel = ({
|
|
|
42275
42284
|
document.documentElement.removeAttribute(TURNED_ATTRIBUTE);
|
|
42276
42285
|
releaseTransitionWindow(travel);
|
|
42277
42286
|
releaseTransitionDestination(travel);
|
|
42287
|
+
releaseTransitionPress(travel);
|
|
42278
42288
|
}
|
|
42279
42289
|
};
|
|
42280
42290
|
|
|
@@ -58001,7 +58011,8 @@ const LinkPseudoElements = ["::-navi-loader", "::-navi-indicator"];
|
|
|
58001
58011
|
* press on it is aimed at what the reader can see. Say it there, and only
|
|
58002
58012
|
* there: a control that TRAVELS with the pages has a rectangle where it will
|
|
58003
58013
|
* be, not where it is seen, and a press handed to it fires something nobody
|
|
58004
|
-
* aimed at.
|
|
58014
|
+
* aimed at. A `RouteTravel` honours it as well, for a control in the part of
|
|
58015
|
+
* a `FixedBar` it photographs (`data-navi-fixed-bar-overhang`).
|
|
58005
58016
|
* @param {boolean} [props.replace] - Go to the destination by TAKING THE PLACE
|
|
58006
58017
|
* of the current history entry instead of stacking onto it: the link stays a
|
|
58007
58018
|
* link (an address, a middle click, the keyboard, `aria-current`), only the
|
|
@@ -60628,6 +60639,7 @@ const css$Y = /* css */`@layer navi {
|
|
|
60628
60639
|
}
|
|
60629
60640
|
|
|
60630
60641
|
.navi_fixed_bar_shadow {
|
|
60642
|
+
z-index: -1;
|
|
60631
60643
|
border-radius: inherit;
|
|
60632
60644
|
box-shadow: var(--navi-fixed-bar-shadow);
|
|
60633
60645
|
pointer-events: none;
|
|
@@ -60656,13 +60668,13 @@ const css$Y = /* css */`@layer navi {
|
|
|
60656
60668
|
}
|
|
60657
60669
|
|
|
60658
60670
|
@supports (view-transition-name: match-element) {
|
|
60659
|
-
:root[data-navi-route-travel] .navi_fixed_bar_shadow {
|
|
60671
|
+
:root[data-navi-route-travel] .navi_fixed_bar_shadow, :root[data-navi-route-travel] [data-navi-fixed-bar-overhang] {
|
|
60660
60672
|
view-transition-name: match-element;
|
|
60661
|
-
view-transition-class:
|
|
60673
|
+
view-transition-class: navi_fixed_bar_over_pages;
|
|
60662
60674
|
}
|
|
60663
60675
|
}
|
|
60664
60676
|
|
|
60665
|
-
:root[data-navi-route-travel-turned]::view-transition-group(.
|
|
60677
|
+
:root[data-navi-route-travel-turned]::view-transition-group(.navi_fixed_bar_over_pages) {
|
|
60666
60678
|
display: block;
|
|
60667
60679
|
}
|
|
60668
60680
|
`;
|
|
@@ -60719,6 +60731,13 @@ const FixedBarStyleCSSVars = {
|
|
|
60719
60731
|
* Takes no room. Prefer it to a `boxShadow` or a `filter` on the bar: those
|
|
60720
60732
|
* are covered by the pages while a `RouteTravel` plays, this one stays over
|
|
60721
60733
|
* them.
|
|
60734
|
+
*
|
|
60735
|
+
* A child standing out of the bar's box (a raised button, the notch around it)
|
|
60736
|
+
* wears `data-navi-fixed-bar-overhang`: unmarked, the pages of a `RouteTravel`
|
|
60737
|
+
* cover it wherever they have paint behind it. Marked, it stays over them, and
|
|
60738
|
+
* like anything photographed it is deaf for the length of the travel —
|
|
60739
|
+
* `pressableDuringRouteTransition` on a control inside it keeps that control
|
|
60740
|
+
* answering. The rest of the bar stays live.
|
|
60722
60741
|
*/
|
|
60723
60742
|
const FixedBar = ({
|
|
60724
60743
|
children,
|
|
@@ -63986,7 +64005,8 @@ const COMMAND_DEFAULT_PROPS_FACTORIES = {
|
|
|
63986
64005
|
* button in a bar the two states share, standing exactly where its picture is
|
|
63987
64006
|
* drawn — must still close it. What `<Link pressableDuringRouteTransition>`
|
|
63988
64007
|
* says, for the other half of a toggle. Only for a control that does not
|
|
63989
|
-
* travel with the pages.
|
|
64008
|
+
* travel with the pages. A `RouteTravel` honours it as well, for a control in
|
|
64009
|
+
* the part of a `FixedBar` it photographs (`data-navi-fixed-bar-overhang`).
|
|
63990
64010
|
* @param {Function} [action] What the press runs: a button holds no value, so
|
|
63991
64011
|
* every press is one call. Inside a `<Form>` or a group it carries the value
|
|
63992
64012
|
* around it, merged over the action's bound params — a value that is not an
|