@inertiajs/react 2.3.8 → 2.3.10
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 +25 -12
- package/dist/index.esm.js.map +3 -3
- package/dist/index.js +20 -10
- package/dist/index.js.map +2 -2
- package/package.json +2 -2
- package/types/Form.d.ts +2 -1
- package/types/index.d.ts +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -245,6 +245,7 @@ var Deferred_default = Deferred;
|
|
|
245
245
|
|
|
246
246
|
// src/Form.ts
|
|
247
247
|
import {
|
|
248
|
+
FormComponentResetSymbol,
|
|
248
249
|
formDataToObject,
|
|
249
250
|
isUrlMethodPair,
|
|
250
251
|
mergeDataIntoQueryString,
|
|
@@ -253,8 +254,10 @@ import {
|
|
|
253
254
|
} from "@inertiajs/core";
|
|
254
255
|
import { isEqual as isEqual2 } from "lodash-es";
|
|
255
256
|
import React2, {
|
|
257
|
+
createContext as createContext3,
|
|
256
258
|
createElement as createElement3,
|
|
257
259
|
forwardRef,
|
|
260
|
+
useContext,
|
|
258
261
|
useEffect as useEffect6,
|
|
259
262
|
useImperativeHandle,
|
|
260
263
|
useMemo as useMemo4,
|
|
@@ -394,8 +397,7 @@ function useForm(...args) {
|
|
|
394
397
|
if (isMounted.current) {
|
|
395
398
|
setProcessing(false);
|
|
396
399
|
setProgress(null);
|
|
397
|
-
|
|
398
|
-
setHasErrors(true);
|
|
400
|
+
setError(errors2);
|
|
399
401
|
}
|
|
400
402
|
if (options.onError) {
|
|
401
403
|
return options.onError(errors2);
|
|
@@ -669,6 +671,7 @@ var deferStateUpdate = (callback) => {
|
|
|
669
671
|
typeof React2.startTransition === "function" ? React2.startTransition(callback) : setTimeout(callback, 0);
|
|
670
672
|
};
|
|
671
673
|
var noop = () => void 0;
|
|
674
|
+
var FormContext = createContext3(void 0);
|
|
672
675
|
var Form = forwardRef(
|
|
673
676
|
({
|
|
674
677
|
action = "",
|
|
@@ -730,9 +733,14 @@ var Form = forwardRef(
|
|
|
730
733
|
queryStringArrayFormat
|
|
731
734
|
);
|
|
732
735
|
};
|
|
733
|
-
const updateDirtyState = (event) =>
|
|
734
|
-
|
|
735
|
-
|
|
736
|
+
const updateDirtyState = (event) => {
|
|
737
|
+
if (event.type === "reset" && event.detail?.[FormComponentResetSymbol]) {
|
|
738
|
+
event.preventDefault();
|
|
739
|
+
}
|
|
740
|
+
deferStateUpdate(
|
|
741
|
+
() => setIsDirty(event.type === "reset" ? false : !isEqual2(getData(), formDataToObject(defaultData.current)))
|
|
742
|
+
);
|
|
743
|
+
};
|
|
736
744
|
const clearErrors = (...names) => {
|
|
737
745
|
form.clearErrors(...names);
|
|
738
746
|
return form;
|
|
@@ -815,7 +823,7 @@ var Form = forwardRef(
|
|
|
815
823
|
defaultData.current = getFormData();
|
|
816
824
|
setIsDirty(false);
|
|
817
825
|
};
|
|
818
|
-
const exposed =
|
|
826
|
+
const exposed = {
|
|
819
827
|
errors: form.errors,
|
|
820
828
|
hasErrors: form.hasErrors,
|
|
821
829
|
processing: form.processing,
|
|
@@ -839,9 +847,9 @@ var Form = forwardRef(
|
|
|
839
847
|
validate: (field, config2) => form.validate(...UseFormUtils2.mergeHeadersForValidation(field, config2, headers)),
|
|
840
848
|
touch: form.touch,
|
|
841
849
|
touched: form.touched
|
|
842
|
-
}
|
|
843
|
-
useImperativeHandle(ref, exposed, [form, isDirty, submit]);
|
|
844
|
-
|
|
850
|
+
};
|
|
851
|
+
useImperativeHandle(ref, () => exposed, [form, isDirty, submit]);
|
|
852
|
+
const formNode = createElement3(
|
|
845
853
|
"form",
|
|
846
854
|
{
|
|
847
855
|
...props,
|
|
@@ -858,18 +866,22 @@ var Form = forwardRef(
|
|
|
858
866
|
// See: https://github.com/inertiajs/inertia/pull/2536
|
|
859
867
|
inert: disableWhileProcessing && form.processing && "true"
|
|
860
868
|
},
|
|
861
|
-
typeof children === "function" ? children(exposed
|
|
869
|
+
typeof children === "function" ? children(exposed) : children
|
|
862
870
|
);
|
|
871
|
+
return createElement3(FormContext.Provider, { value: exposed }, formNode);
|
|
863
872
|
}
|
|
864
873
|
);
|
|
865
874
|
Form.displayName = "InertiaForm";
|
|
875
|
+
function useFormContext() {
|
|
876
|
+
return useContext(FormContext);
|
|
877
|
+
}
|
|
866
878
|
var Form_default = Form;
|
|
867
879
|
|
|
868
880
|
// src/Head.ts
|
|
869
881
|
import { escape } from "lodash-es";
|
|
870
|
-
import React3, { useContext, useEffect as useEffect7, useMemo as useMemo5 } from "react";
|
|
882
|
+
import React3, { useContext as useContext2, useEffect as useEffect7, useMemo as useMemo5 } from "react";
|
|
871
883
|
var Head = function({ children, title }) {
|
|
872
|
-
const headManager =
|
|
884
|
+
const headManager = useContext2(HeadContext_default);
|
|
873
885
|
const provider = useMemo5(() => headManager.createProvider(), [headManager]);
|
|
874
886
|
const isServer = typeof window === "undefined";
|
|
875
887
|
useEffect7(() => {
|
|
@@ -1619,6 +1631,7 @@ export {
|
|
|
1619
1631
|
progress,
|
|
1620
1632
|
router3 as router,
|
|
1621
1633
|
useForm,
|
|
1634
|
+
useFormContext,
|
|
1622
1635
|
usePage,
|
|
1623
1636
|
usePoll,
|
|
1624
1637
|
usePrefetch,
|