@inertiajs/react 2.3.7 → 2.3.8
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/index.esm.js +20 -10
- package/dist/index.esm.js.map +2 -2
- package/dist/index.js +20 -10
- package/dist/index.js.map +2 -2
- package/package.json +2 -2
package/dist/index.esm.js
CHANGED
|
@@ -1019,6 +1019,8 @@ var InfiniteScroll = forwardRef2(
|
|
|
1019
1019
|
const [loadingPrevious, setLoadingPrevious] = useState6(false);
|
|
1020
1020
|
const [loadingNext, setLoadingNext] = useState6(false);
|
|
1021
1021
|
const [requestCount, setRequestCount] = useState6(0);
|
|
1022
|
+
const [hasPreviousPage, setHasPreviousPage] = useState6(false);
|
|
1023
|
+
const [hasNextPage, setHasNextPage] = useState6(false);
|
|
1022
1024
|
const [resolvedStartElement, setResolvedStartElement] = useState6(null);
|
|
1023
1025
|
const [resolvedEndElement, setResolvedEndElement] = useState6(null);
|
|
1024
1026
|
const [resolvedItemsElement, setResolvedItemsElement] = useState6(null);
|
|
@@ -1069,6 +1071,11 @@ var InfiniteScroll = forwardRef2(
|
|
|
1069
1071
|
if (!resolvedItemsElement) {
|
|
1070
1072
|
return;
|
|
1071
1073
|
}
|
|
1074
|
+
function syncStateFromDataManager() {
|
|
1075
|
+
setRequestCount(infiniteScrollInstance.dataManager.getRequestCount());
|
|
1076
|
+
setHasPreviousPage(infiniteScrollInstance.dataManager.hasPrevious());
|
|
1077
|
+
setHasNextPage(infiniteScrollInstance.dataManager.hasNext());
|
|
1078
|
+
}
|
|
1072
1079
|
const infiniteScrollInstance = useInfiniteScroll({
|
|
1073
1080
|
// Data
|
|
1074
1081
|
getPropName: () => data,
|
|
@@ -1087,16 +1094,17 @@ var InfiniteScroll = forwardRef2(
|
|
|
1087
1094
|
onBeforeNextRequest: () => setLoadingNext(true),
|
|
1088
1095
|
onCompletePreviousRequest: () => {
|
|
1089
1096
|
setLoadingPrevious(false);
|
|
1090
|
-
|
|
1097
|
+
syncStateFromDataManager();
|
|
1091
1098
|
},
|
|
1092
1099
|
onCompleteNextRequest: () => {
|
|
1093
1100
|
setLoadingNext(false);
|
|
1094
|
-
|
|
1095
|
-
}
|
|
1101
|
+
syncStateFromDataManager();
|
|
1102
|
+
},
|
|
1103
|
+
onDataReset: syncStateFromDataManager
|
|
1096
1104
|
});
|
|
1097
1105
|
setInfiniteScroll(infiniteScrollInstance);
|
|
1098
1106
|
const { dataManager: dataManager2, elementManager: elementManager2 } = infiniteScrollInstance;
|
|
1099
|
-
|
|
1107
|
+
syncStateFromDataManager();
|
|
1100
1108
|
elementManager2.setupObservers();
|
|
1101
1109
|
elementManager2.processServerLoadedElements(dataManager2.getLastLoadedPage());
|
|
1102
1110
|
if (autoLoad) {
|
|
@@ -1138,8 +1146,8 @@ var InfiniteScroll = forwardRef2(
|
|
|
1138
1146
|
const sharedExposed = {
|
|
1139
1147
|
loadingPrevious,
|
|
1140
1148
|
loadingNext,
|
|
1141
|
-
hasPrevious:
|
|
1142
|
-
hasNext:
|
|
1149
|
+
hasPrevious: hasPreviousPage,
|
|
1150
|
+
hasNext: hasNextPage
|
|
1143
1151
|
};
|
|
1144
1152
|
const exposedPrevious = {
|
|
1145
1153
|
loading: loadingPrevious,
|
|
@@ -1147,7 +1155,7 @@ var InfiniteScroll = forwardRef2(
|
|
|
1147
1155
|
}),
|
|
1148
1156
|
autoMode: headerAutoMode,
|
|
1149
1157
|
manualMode: !headerAutoMode,
|
|
1150
|
-
hasMore:
|
|
1158
|
+
hasMore: hasPreviousPage,
|
|
1151
1159
|
...sharedExposed
|
|
1152
1160
|
};
|
|
1153
1161
|
const exposedNext = {
|
|
@@ -1156,7 +1164,7 @@ var InfiniteScroll = forwardRef2(
|
|
|
1156
1164
|
}),
|
|
1157
1165
|
autoMode: footerAutoMode,
|
|
1158
1166
|
manualMode: !footerAutoMode,
|
|
1159
|
-
hasMore:
|
|
1167
|
+
hasMore: hasNextPage,
|
|
1160
1168
|
...sharedExposed
|
|
1161
1169
|
};
|
|
1162
1170
|
const exposedSlot = {
|
|
@@ -1511,6 +1519,7 @@ var WhenVisible = ({ children, data, params, buffer, as, always, fallback }) =>
|
|
|
1511
1519
|
const fetching = useRef6(false);
|
|
1512
1520
|
const ref = useRef6(null);
|
|
1513
1521
|
const observer = useRef6(null);
|
|
1522
|
+
const getReloadParamsRef = useRef6(() => ({}));
|
|
1514
1523
|
useEffect12(() => {
|
|
1515
1524
|
if (keys.length > 0) {
|
|
1516
1525
|
setLoaded(keys.every((key) => pageProps[key] !== void 0));
|
|
@@ -1523,6 +1532,7 @@ var WhenVisible = ({ children, data, params, buffer, as, always, fallback }) =>
|
|
|
1523
1532
|
}
|
|
1524
1533
|
return reloadParams;
|
|
1525
1534
|
}, [params, data]);
|
|
1535
|
+
getReloadParamsRef.current = getReloadParams;
|
|
1526
1536
|
const registerObserver = () => {
|
|
1527
1537
|
observer.current?.disconnect();
|
|
1528
1538
|
observer.current = new IntersectionObserver(
|
|
@@ -1538,7 +1548,7 @@ var WhenVisible = ({ children, data, params, buffer, as, always, fallback }) =>
|
|
|
1538
1548
|
}
|
|
1539
1549
|
fetching.current = true;
|
|
1540
1550
|
setIsFetching(true);
|
|
1541
|
-
const reloadParams =
|
|
1551
|
+
const reloadParams = getReloadParamsRef.current();
|
|
1542
1552
|
router9.reload({
|
|
1543
1553
|
...reloadParams,
|
|
1544
1554
|
onStart: (e) => {
|
|
@@ -1574,7 +1584,7 @@ var WhenVisible = ({ children, data, params, buffer, as, always, fallback }) =>
|
|
|
1574
1584
|
return () => {
|
|
1575
1585
|
observer.current?.disconnect();
|
|
1576
1586
|
};
|
|
1577
|
-
}, [always, loaded,
|
|
1587
|
+
}, [always, loaded, buffer]);
|
|
1578
1588
|
const resolveChildren = () => typeof children === "function" ? children({ fetching: isFetching }) : children;
|
|
1579
1589
|
const resolveFallback = () => typeof fallback === "function" ? fallback() : fallback;
|
|
1580
1590
|
if (always || !loaded) {
|