@jsenv/navi 0.29.410 → 0.29.412
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 +32 -0
- package/dist/dev/jsenv_navi.js.map +3 -3
- package/dist/jsenv_navi.js +32 -0
- package/dist/jsenv_navi.js.map +3 -3
- package/docs/AI_INSTRUCTIONS.md +2 -1
- package/docs/scroll.md +43 -0
- package/package.json +1 -1
package/dist/jsenv_navi.js
CHANGED
|
@@ -40438,6 +40438,13 @@ const useUIGroupStateController = (
|
|
|
40438
40438
|
placeOneChild(childUIStateController, childNewState, e);
|
|
40439
40439
|
},
|
|
40440
40440
|
setUIState: (newUIState, e) => {
|
|
40441
|
+
// `undefined` is how a parent empties a child (see the object
|
|
40442
|
+
// group's distributeChildUIState): what a leaf holds when it holds
|
|
40443
|
+
// nothing, and for a group of the default shape, the empty of its
|
|
40444
|
+
// type — not a value of the wrong shape to refuse.
|
|
40445
|
+
if (newUIState === undefined && stateShapeIsTheDefaultOne) {
|
|
40446
|
+
newUIState = fallbackState;
|
|
40447
|
+
}
|
|
40441
40448
|
if (
|
|
40442
40449
|
stateType === "object" &&
|
|
40443
40450
|
stateShapeIsTheDefaultOne &&
|
|
@@ -69815,6 +69822,11 @@ const css$x = /* css */`@layer navi {
|
|
|
69815
69822
|
display: flex;
|
|
69816
69823
|
overflow: hidden;
|
|
69817
69824
|
|
|
69825
|
+
&[data-borderless] {
|
|
69826
|
+
--x-list-border-radius: 0px;
|
|
69827
|
+
overflow: visible;
|
|
69828
|
+
}
|
|
69829
|
+
|
|
69818
69830
|
&[data-overflow-visible="both"] {
|
|
69819
69831
|
overflow: visible;
|
|
69820
69832
|
}
|
|
@@ -70499,6 +70511,7 @@ const ListUI = props => {
|
|
|
70499
70511
|
"data-item-transition": itemTransition ? "" : undefined,
|
|
70500
70512
|
popover: popover,
|
|
70501
70513
|
"data-horizontal": horizontal ? "" : undefined,
|
|
70514
|
+
"data-borderless": isBorderless(rest) ? "" : undefined,
|
|
70502
70515
|
"data-scroller": getScrollerAttribute(scroller),
|
|
70503
70516
|
"data-overflow-visible": getOverflowVisibleAttribute(overflow, overflowX, overflowY),
|
|
70504
70517
|
"navi-hover-while-scrolling": hoverWhileScrolling ? "" : undefined,
|
|
@@ -71869,6 +71882,25 @@ const getScrollerAttribute = scroller => {
|
|
|
71869
71882
|
return "parent";
|
|
71870
71883
|
};
|
|
71871
71884
|
|
|
71885
|
+
// A radius asked for explicitly is kept: a borderless list painting a
|
|
71886
|
+
// background of its own may want that surface rounded, and clipped to it.
|
|
71887
|
+
const isBorderless = ({
|
|
71888
|
+
border,
|
|
71889
|
+
borderWidth,
|
|
71890
|
+
borderRadius
|
|
71891
|
+
}) => {
|
|
71892
|
+
if (borderRadius !== undefined) {
|
|
71893
|
+
return false;
|
|
71894
|
+
}
|
|
71895
|
+
if (borderWidth !== undefined) {
|
|
71896
|
+
return parseFloat(borderWidth) === 0;
|
|
71897
|
+
}
|
|
71898
|
+
if (border === undefined) {
|
|
71899
|
+
return false;
|
|
71900
|
+
}
|
|
71901
|
+
return border === "none" || parseFloat(border) === 0;
|
|
71902
|
+
};
|
|
71903
|
+
|
|
71872
71904
|
// overflow lands as an inline style on the inner scroll element, which is
|
|
71873
71905
|
// enough for every value but "visible": that one only means anything once the
|
|
71874
71906
|
// frame around it stops clipping too. Reading the per-axis props over the
|