@jsenv/navi 0.29.55 → 0.29.56

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.
@@ -29642,7 +29642,10 @@ const css$W = /* css */`
29642
29642
  * from where the finger just tapped, and size alone would dock a narrow
29643
29643
  * desktop window, which is still a mouse. It supplies defaults for
29644
29644
  * `positionArea`, `marginWithContainer`, `expandX` and `scrollCapture`, so
29645
- * any of them can still be pinned explicitly. Re-resolves live as the pointer
29645
+ * any of them can still be pinned explicitly. Ignored entirely when `expandY`
29646
+ * (or `expand`) is set: a dialog already filling the height is on the bottom
29647
+ * edge docking would bring it to, so docking could only take away the shape
29648
+ * the caller asked for. Re-resolves live as the pointer
29646
29649
  * type or the window size changes. A sheet resting on the bottom edge is also
29647
29650
  * pushed back down to close it, held by its header (a direct child `Box` with
29648
29651
  * the `header` prop) — or from anywhere when it has none. See `swipe_to_close.js`.
@@ -29661,7 +29664,7 @@ const css$W = /* css */`
29661
29664
  * container allows (`--dialog-maxmax-width`). Set by
29662
29665
  * `dockedOnSmallTouchScreen` on a small touch screen.
29663
29666
  * @param {boolean} [props.expandY] - Same, vertically
29664
- * (`--dialog-maxmax-height`).
29667
+ * (`--dialog-maxmax-height`). Cancels `dockedOnSmallTouchScreen`.
29665
29668
  * @param {string|number} [props.marginWithContainer="3appw"] - Minimum gap kept
29666
29669
  * between the dialog and the edges of its container, whatever its
29667
29670
  * `positionArea`: it both caps the dialog's own size (via
@@ -29993,10 +29996,15 @@ const useDialogProps = props => {
29993
29996
  });
29994
29997
  const isModal = layer === "top";
29995
29998
  const ref = props.ref;
29999
+ const expandY = Boolean(expand) || Boolean(expandYProp);
29996
30000
  // Only a small touch screen changes anything: on a mouse — and on a touch
29997
30001
  // screen too big to reach the bottom edge of — a dialog already wants to be
29998
30002
  // the centered box it is by default, so there is nothing to resolve.
29999
- const isDocked = dockedOnSmallTouchScreen && smallTouchScreenSignal.value;
30003
+ // expandY cancels the docking outright: docking exists to bring the dialog
30004
+ // down to the edge the thumb is on, and a dialog already filling the height
30005
+ // is on that edge — all docking could still do is take away the shape the
30006
+ // caller asked for (and arm a swipe-down on something that never rose).
30007
+ const isDocked = dockedOnSmallTouchScreen && smallTouchScreenSignal.value && !expandY;
30000
30008
  const positionArea = positionAreaProp ?? (isDocked ? DOCKED.positionArea : "center");
30001
30009
  const marginWithContainer = marginWithContainerProp ?? (isDocked ? DOCKED.marginWithContainer :
30002
30010
  // A share of whatever holds the dialog: the app's own screen for a
@@ -30009,7 +30017,6 @@ const useDialogProps = props => {
30009
30017
  // handing them over — the docked default only applies when neither was said
30010
30018
  const expandXUnset = expand === undefined && expandXProp === undefined;
30011
30019
  const expandX = expandXUnset ? isDocked && DOCKED.expandX : Boolean(expand) || Boolean(expandXProp);
30012
- const expandY = Boolean(expand) || Boolean(expandYProp);
30013
30020
  const scrollCapture = scrollCaptureProp ?? (isDocked ? DOCKED.scrollCapture : false);
30014
30021
  const backdropRef = useRef();
30015
30022
  // Disarms a still-pending backdrop hide from a previous close (see