@jsenv/navi 0.30.39 → 0.30.40
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 +20 -4
- package/dist/dev/jsenv_navi.js.map +3 -3
- package/dist/jsenv_navi.js +20 -4
- package/dist/jsenv_navi.js.map +3 -3
- package/package.json +1 -1
package/dist/jsenv_navi.js
CHANGED
|
@@ -83662,6 +83662,17 @@ const createListItems = () => {
|
|
|
83662
83662
|
}
|
|
83663
83663
|
return null;
|
|
83664
83664
|
},
|
|
83665
|
+
// Whether a run stands for the item at that index without holding it: the
|
|
83666
|
+
// page it belongs to has not answered yet. An id missing from what the runs
|
|
83667
|
+
// hold says the item is gone only once the page where it stood is in.
|
|
83668
|
+
itemOnItsWayAt: (index) => {
|
|
83669
|
+
for (const locator of locatorByOwner.values()) {
|
|
83670
|
+
if (locator.awaits(index)) {
|
|
83671
|
+
return true;
|
|
83672
|
+
}
|
|
83673
|
+
}
|
|
83674
|
+
return false;
|
|
83675
|
+
},
|
|
83665
83676
|
// The room the item at that index takes: the room it took when it was
|
|
83666
83677
|
// last drawn, else the room its run is given for it (see List.Items'
|
|
83667
83678
|
// itemSize), else undefined.
|
|
@@ -86636,10 +86647,14 @@ const useListScrollSync = ({
|
|
|
86636
86647
|
// Not there yet, but where it stood is drawn already: the item
|
|
86637
86648
|
// standing in for it at that index (see holdWindow). The list is placed
|
|
86638
86649
|
// on that one, measured like any other, and the named item takes over
|
|
86639
|
-
// where it lands.
|
|
86640
|
-
|
|
86641
|
-
|
|
86642
|
-
|
|
86650
|
+
// where it lands. Held for as long as the page at that index has not
|
|
86651
|
+
// answered — the first one, or the one a press sends the list to: only
|
|
86652
|
+
// an answer without the item says it is gone.
|
|
86653
|
+
const standInIndex = scrolledWanted.index;
|
|
86654
|
+
const hasStandIn = typeof standInIndex === "number";
|
|
86655
|
+
if (listItems.pagesSignal.peek() === 0 || hasStandIn && listItems.itemOnItsWayAt(standInIndex)) {
|
|
86656
|
+
if (hasStandIn) {
|
|
86657
|
+
placeItem(findItemElementAt(getListEl(), standInIndex), scrolledWanted.offset || 0, scrolledWanted.align);
|
|
86643
86658
|
}
|
|
86644
86659
|
return;
|
|
86645
86660
|
}
|
|
@@ -90204,6 +90219,7 @@ const useRunItems = (store, {
|
|
|
90204
90219
|
});
|
|
90205
90220
|
return found;
|
|
90206
90221
|
},
|
|
90222
|
+
awaits: itemIndex => itemIndex >= runStart && itemIndex < runEnd && getItemAt(itemIndex) === undefined,
|
|
90207
90223
|
roomAt: roomOf,
|
|
90208
90224
|
givenRoomAt: givenRoomOf
|
|
90209
90225
|
});
|