@jsenv/navi 0.29.501 → 0.29.502

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.
@@ -24730,6 +24730,10 @@ const DROP_CONTAINER_ATTRIBUTE = "data-drop-container";
24730
24730
  // every outcome — a list runs one way, and something being put somewhere goes
24731
24731
  // wherever it is put.
24732
24732
  const AXIS_ATTRIBUTE = "data-drag-axis";
24733
+ // Which of those axes a press takes it by, when not all of them: a card pulled
24734
+ // up out of a strip that scrolls sideways, then carried both ways. Said nothing,
24735
+ // it is every axis the drag walks.
24736
+ const INTENT_AXIS_ATTRIBUTE = "data-drag-intent-axis";
24733
24737
  // How the items of a reordered list are laid out: "column", "row", or "wrap" for
24734
24738
  // side by side over several lines. Said nothing, it is read from where the
24735
24739
  // items stand.
@@ -24825,6 +24829,10 @@ defineInteractionDetector({
24825
24829
  ? "xy"
24826
24830
  : "y"
24827
24831
  : "xy");
24832
+ const intentAxis =
24833
+ element
24834
+ .closest(`[${INTENT_AXIS_ATTRIBUTE}]`)
24835
+ ?.getAttribute(INTENT_AXIS_ATTRIBUTE) || axes;
24828
24836
  // Where the places are, read at setup for the same reason as the axes: they
24829
24837
  // are what the gesture is about, and it is what holds the two sides of it
24830
24838
  // that says them.
@@ -24838,11 +24846,13 @@ defineInteractionDetector({
24838
24846
  if (canReorder) {
24839
24847
  element.setAttribute(REORDERABLE_ATTRIBUTE, "");
24840
24848
  }
24841
- // What @jsenv/dom puts on a drag source: the axes written in the DOM for
24842
- // whoever else answers this press (a sheet pushed down to close it, a row of
24843
- // slides), no iOS callout, the touch left to the scroll until the press
24844
- // becomes a grab, and the listener that lets the grab take it back.
24845
- const unmarkDragSource = markDragSource(element, axes);
24849
+ // What @jsenv/dom puts on a drag source: the axes a press takes it by,
24850
+ // written in the DOM for whoever else answers this press (a sheet pushed
24851
+ // down to close it, a row of slides, a finger given back to the scroll), no
24852
+ // iOS callout, the touch left to the scroll until the press becomes a grab,
24853
+ // and the listener that lets the grab take it back. Once taken, the copy
24854
+ // walks `axes`.
24855
+ const unmarkDragSource = markDragSource(element, intentAxis);
24846
24856
 
24847
24857
  // What a release can mean, which is not all of what was declared: "grab",
24848
24858
  // "release" and "refuse" are moments, not outcomes, and "moving" is the carry