@jsenv/navi 0.29.345 → 0.29.347

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.
@@ -49679,9 +49679,15 @@ const COMMAND_DEFAULT_PROPS_FACTORIES = {
49679
49679
  * drawn — must still close it. What `<Link pressableDuringRouteTransition>`
49680
49680
  * says, for the other half of a toggle. Only for a control that does not
49681
49681
  * travel with the pages.
49682
- * @param {Function} [action] On a button with an `href` or a `route`, the
49683
- * same order as a Link's: it runs on the press, before the navigation, and
49684
- * the navigation does not wait for it (see Link's `action`).
49682
+ * @param {Function} [action] What the press runs: a button holds no value, so
49683
+ * every press is one call. The button is busy while it runs, refuses a second
49684
+ * press and draws the error on itself. On a button with an `href` or a
49685
+ * `route`, the same order as a Link's: it runs on the press, before the
49686
+ * navigation, and the navigation does not wait for it (see Link's `action`).
49687
+ * @param {Function} [uiAction] The same press, for what cannot fail and takes
49688
+ * no time — moving something else on screen, writing a local signal: a plain
49689
+ * callback, no busy state, nothing drawn if it throws (see
49690
+ * docs/actions.md#action-or-uiaction).
49685
49691
  * @param {string} [selfInteractions] The interactions this button takes for
49686
49692
  * itself inside a zone that belongs to another control — a chip's cross on a
49687
49693
  * picker's façade, an eye on a pressable row, a badge against the edge of a
@@ -67202,6 +67208,7 @@ const useListScrollSync = ({
67202
67208
  };
67203
67209
  useLayoutEffect(resolveScroller);
67204
67210
  useStickyScrollportWarning();
67211
+ useDuplicateHeaderWarning();
67205
67212
  useStuckWindowWarning({
67206
67213
  ref,
67207
67214
  scrollerElResolved,
@@ -68167,6 +68174,21 @@ const useStickyScrollportWarning = (ref, scroller) => {
68167
68174
  }
68168
68175
  });
68169
68176
  };
68177
+ // A list has one header: the row that caps it — the column row of a table —
68178
+ // and the box the list measures to keep the others from scrolling under it. A
68179
+ // second one takes that same place, so both sit at the capped edge before
68180
+ // every row and the rows declared between them read as belonging to the last:
68181
+ // a title meant to open a run of rows ends up titling nothing. That title is a
68182
+ // group label, which is why this points at List.Group rather than at the
68183
+ // stacking.
68184
+ const useDuplicateHeaderWarning = ref => {
68185
+ useRef(false);
68186
+ useLayoutEffect(() => {
68187
+ {
68188
+ return;
68189
+ }
68190
+ });
68191
+ };
68170
68192
 
68171
68193
  /**
68172
68194
  * "Am I stuck?" — the question a `position: sticky` element cannot ask about
@@ -70523,7 +70545,7 @@ const useItemStore = ({
70523
70545
  };
70524
70546
 
70525
70547
  /**
70526
- * ListGroup — a labeled group of list items.
70548
+ * List.Group — a labeled group of list items.
70527
70549
  *
70528
70550
  * Renders a <li role="presentation"> wrapper containing a label span
70529
70551
  * (accessible via aria-labelledby) and a <ul role="group"> for the items.
@@ -70859,7 +70881,8 @@ const ListResolved = /*#__PURE__*/createComponentResolver([ListFirstResolver, Li
70859
70881
  */
70860
70882
  const List = /*#__PURE__*/Object.assign(ListResolved, {
70861
70883
  Item: ListItem,
70862
- Items: ListItems
70884
+ Items: ListItems,
70885
+ Group: ListItemGroup
70863
70886
  });
70864
70887
 
70865
70888
  const PickerNaviTime = props => {