@inertiajs/react 2.2.4 → 2.2.6

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 CHANGED
@@ -218,7 +218,7 @@ import { isEqual as isEqual2 } from "lodash-es";
218
218
  import React, {
219
219
  createElement as createElement3,
220
220
  forwardRef,
221
- useEffect as useEffect5,
221
+ useEffect as useEffect6,
222
222
  useImperativeHandle,
223
223
  useMemo as useMemo4,
224
224
  useRef as useRef2,
@@ -230,17 +230,23 @@ import {
230
230
  router as router5
231
231
  } from "@inertiajs/core";
232
232
  import { cloneDeep, get, has, isEqual, set } from "lodash-es";
233
- import { useCallback, useEffect as useEffect4, useLayoutEffect, useMemo as useMemo3, useRef, useState as useState4 } from "react";
233
+ import { useCallback, useEffect as useEffect5, useMemo as useMemo3, useRef, useState as useState4 } from "react";
234
+
235
+ // src/react.ts
236
+ import { useEffect as useEffect3, useLayoutEffect } from "react";
237
+ function useIsomorphicLayoutEffect(effect, deps) {
238
+ typeof window === "undefined" ? useEffect3(effect, deps) : useLayoutEffect(effect, deps);
239
+ }
234
240
 
235
241
  // src/useRemember.ts
236
242
  import { router as router4 } from "@inertiajs/core";
237
- import { useEffect as useEffect3, useState as useState3 } from "react";
243
+ import { useEffect as useEffect4, useState as useState3 } from "react";
238
244
  function useRemember(initialState, key) {
239
245
  const [state, setState] = useState3(() => {
240
246
  const restored = router4.restore(key);
241
247
  return restored !== void 0 ? restored : initialState;
242
248
  });
243
- useEffect3(() => {
249
+ useEffect4(() => {
244
250
  router4.remember(state, key);
245
251
  }, [state, key]);
246
252
  return [state, setState];
@@ -264,7 +270,7 @@ function useForm(rememberKeyOrInitialValues, maybeInitialValues) {
264
270
  const [recentlySuccessful, setRecentlySuccessful] = useState4(false);
265
271
  const transform = useRef((data2) => data2);
266
272
  const isDirty = useMemo3(() => !isEqual(data, defaults), [data, defaults]);
267
- useEffect4(() => {
273
+ useEffect5(() => {
268
274
  isMounted.current = true;
269
275
  return () => {
270
276
  isMounted.current = false;
@@ -382,7 +388,7 @@ function useForm(rememberKeyOrInitialValues, maybeInitialValues) {
382
388
  );
383
389
  const [dataAsDefaults, setDataAsDefaults] = useState4(false);
384
390
  const dataRef = useRef(data);
385
- useEffect4(() => {
391
+ useEffect5(() => {
386
392
  dataRef.current = data;
387
393
  });
388
394
  const setDefaultsFunction = useCallback(
@@ -399,7 +405,7 @@ function useForm(rememberKeyOrInitialValues, maybeInitialValues) {
399
405
  },
400
406
  [setDefaults]
401
407
  );
402
- useLayoutEffect(() => {
408
+ useIsomorphicLayoutEffect(() => {
403
409
  if (!dataAsDefaults) {
404
410
  return;
405
411
  }
@@ -547,7 +553,7 @@ var Form = forwardRef(
547
553
  const updateDirtyState = (event) => deferStateUpdate(
548
554
  () => setIsDirty(event.type === "reset" ? false : !isEqual2(getData(), formDataToObject(defaultData.current)))
549
555
  );
550
- useEffect5(() => {
556
+ useEffect6(() => {
551
557
  defaultData.current = getFormData();
552
558
  const formEvents = ["input", "change", "reset"];
553
559
  formEvents.forEach((e) => formElement.current.addEventListener(e, updateDirtyState));
@@ -654,12 +660,12 @@ var Form_default = Form;
654
660
 
655
661
  // src/Head.ts
656
662
  import { escape } from "lodash-es";
657
- import React2, { useContext as useContext2, useEffect as useEffect6, useMemo as useMemo5 } from "react";
663
+ import React2, { useContext as useContext2, useEffect as useEffect7, useMemo as useMemo5 } from "react";
658
664
  var Head = function({ children, title }) {
659
665
  const headManager = useContext2(HeadContext_default);
660
666
  const provider = useMemo5(() => headManager.createProvider(), [headManager]);
661
667
  const isServer = typeof window === "undefined";
662
- useEffect6(() => {
668
+ useEffect7(() => {
663
669
  provider.reconnect();
664
670
  provider.update(renderNodes(children));
665
671
  return () => {
@@ -746,7 +752,7 @@ import React3, {
746
752
  createElement as createElement4,
747
753
  forwardRef as forwardRef2,
748
754
  useCallback as useCallback2,
749
- useEffect as useEffect7,
755
+ useEffect as useEffect8,
750
756
  useImperativeHandle as useImperativeHandle2,
751
757
  useMemo as useMemo6,
752
758
  useRef as useRef3,
@@ -803,15 +809,15 @@ var InfiniteScroll = forwardRef2(
803
809
  const [resolvedStartElement, setResolvedStartElement] = useState6(null);
804
810
  const [resolvedEndElement, setResolvedEndElement] = useState6(null);
805
811
  const [resolvedItemsElement, setResolvedItemsElement] = useState6(null);
806
- useEffect7(() => {
812
+ useEffect8(() => {
807
813
  const element = startElement ? resolveHTMLElement(startElement, startElementFromRef) : startElementFromRef;
808
814
  setResolvedStartElement(element);
809
815
  }, [startElement, startElementFromRef]);
810
- useEffect7(() => {
816
+ useEffect8(() => {
811
817
  const element = endElement ? resolveHTMLElement(endElement, endElementFromRef) : endElementFromRef;
812
818
  setResolvedEndElement(element);
813
819
  }, [endElement, endElementFromRef]);
814
- useEffect7(() => {
820
+ useEffect8(() => {
815
821
  const element = itemsElement ? resolveHTMLElement(itemsElement, itemsElementFromRef) : itemsElementFromRef;
816
822
  setResolvedItemsElement(element);
817
823
  }, [itemsElement, itemsElementFromRef]);
@@ -846,7 +852,7 @@ var InfiniteScroll = forwardRef2(
846
852
  });
847
853
  }
848
854
  }, [scrollableParent]);
849
- useEffect7(() => {
855
+ useEffect8(() => {
850
856
  if (!resolvedItemsElement) {
851
857
  return;
852
858
  }
@@ -884,8 +890,7 @@ var InfiniteScroll = forwardRef2(
884
890
  elementManager2.enableTriggers();
885
891
  }
886
892
  return () => {
887
- dataManager2.removeEventListener();
888
- elementManager2.flushAll();
893
+ infiniteScrollInstance.flush();
889
894
  setInfiniteScroll(null);
890
895
  };
891
896
  }, [data, resolvedItemsElement, resolvedStartElement, resolvedEndElement, scrollableParent]);
@@ -894,10 +899,10 @@ var InfiniteScroll = forwardRef2(
894
899
  [manual, manualAfter, requestCount]
895
900
  );
896
901
  const autoLoad = useMemo6(() => !manualMode, [manualMode]);
897
- useEffect7(() => {
902
+ useEffect8(() => {
898
903
  autoLoad ? elementManager?.enableTriggers() : elementManager?.disableTriggers();
899
904
  }, [autoLoad, onlyNext, onlyPrevious, resolvedStartElement, resolvedEndElement]);
900
- useEffect7(() => {
905
+ useEffect8(() => {
901
906
  const shouldAutoScroll = autoScroll !== void 0 ? autoScroll : reverse;
902
907
  if (shouldAutoScroll) {
903
908
  scrollToBottom();
@@ -988,7 +993,7 @@ import {
988
993
  shouldIntercept,
989
994
  shouldNavigate
990
995
  } from "@inertiajs/core";
991
- import { createElement as createElement5, forwardRef as forwardRef3, useEffect as useEffect8, useMemo as useMemo7, useRef as useRef4, useState as useState7 } from "react";
996
+ import { createElement as createElement5, forwardRef as forwardRef3, useEffect as useEffect9, useMemo as useMemo7, useRef as useRef4, useState as useState7 } from "react";
992
997
  var noop2 = () => void 0;
993
998
  var Link = forwardRef3(
994
999
  ({
@@ -1111,12 +1116,12 @@ var Link = forwardRef3(
1111
1116
  );
1112
1117
  };
1113
1118
  }, [url, baseParams, onPrefetching, onPrefetched, cacheForValue, cacheTags]);
1114
- useEffect8(() => {
1119
+ useEffect9(() => {
1115
1120
  return () => {
1116
1121
  clearTimeout(hoverTimeout.current);
1117
1122
  };
1118
1123
  }, []);
1119
- useEffect8(() => {
1124
+ useEffect9(() => {
1120
1125
  if (prefetchModes.includes("mount")) {
1121
1126
  setTimeout(() => doPrefetch());
1122
1127
  }
@@ -1206,7 +1211,7 @@ var Link_default = Link;
1206
1211
 
1207
1212
  // src/usePoll.ts
1208
1213
  import { router as router7 } from "@inertiajs/core";
1209
- import { useEffect as useEffect9, useRef as useRef5 } from "react";
1214
+ import { useEffect as useEffect10, useRef as useRef5 } from "react";
1210
1215
  function usePoll(interval, requestOptions = {}, options = {
1211
1216
  keepAlive: false,
1212
1217
  autoStart: true
@@ -1217,7 +1222,7 @@ function usePoll(interval, requestOptions = {}, options = {
1217
1222
  autoStart: false
1218
1223
  })
1219
1224
  );
1220
- useEffect9(() => {
1225
+ useEffect10(() => {
1221
1226
  if (options.autoStart ?? true) {
1222
1227
  pollRef.current.start();
1223
1228
  }
@@ -1231,14 +1236,14 @@ function usePoll(interval, requestOptions = {}, options = {
1231
1236
 
1232
1237
  // src/usePrefetch.ts
1233
1238
  import { router as router8 } from "@inertiajs/core";
1234
- import { useEffect as useEffect10, useState as useState8 } from "react";
1239
+ import { useEffect as useEffect11, useState as useState8 } from "react";
1235
1240
  function usePrefetch(options = {}) {
1236
1241
  const cached = typeof window === "undefined" ? null : router8.getCached(window.location.pathname, options);
1237
1242
  const inFlight = typeof window === "undefined" ? null : router8.getPrefetching(window.location.pathname, options);
1238
1243
  const [lastUpdatedAt, setLastUpdatedAt] = useState8(cached?.staleTimestamp || null);
1239
1244
  const [isPrefetching, setIsPrefetching] = useState8(inFlight !== null);
1240
1245
  const [isPrefetched, setIsPrefetched] = useState8(cached !== null);
1241
- useEffect10(() => {
1246
+ useEffect11(() => {
1242
1247
  const onPrefetchingListener = router8.on("prefetching", (e) => {
1243
1248
  if (e.detail.visit.url.pathname === window.location.pathname) {
1244
1249
  setIsPrefetching(true);
@@ -1266,7 +1271,7 @@ function usePrefetch(options = {}) {
1266
1271
 
1267
1272
  // src/WhenVisible.ts
1268
1273
  import { router as router9 } from "@inertiajs/core";
1269
- import { createElement as createElement6, useCallback as useCallback3, useEffect as useEffect11, useRef as useRef6, useState as useState9 } from "react";
1274
+ import { createElement as createElement6, useCallback as useCallback3, useEffect as useEffect12, useRef as useRef6, useState as useState9 } from "react";
1270
1275
  var WhenVisible = ({ children, data, params, buffer, as, always, fallback }) => {
1271
1276
  always = always ?? false;
1272
1277
  as = as ?? "div";
@@ -1286,7 +1291,7 @@ var WhenVisible = ({ children, data, params, buffer, as, always, fallback }) =>
1286
1291
  }
1287
1292
  return params;
1288
1293
  }, [params, data]);
1289
- useEffect11(() => {
1294
+ useEffect12(() => {
1290
1295
  if (!ref.current) {
1291
1296
  return;
1292
1297
  }