@paragrav/rhf-utils 0.65.0 → 0.67.0

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.
Files changed (156) hide show
  1. package/README.md +3 -2
  2. package/dist/tsdown/FormRelayOptions-mBqiP41Z.d.ts +29 -0
  3. package/dist/tsdown/FormRelaySetter-BKO0Wodf.js +192 -0
  4. package/dist/tsdown/RhfUtilsClientConfigType-CeOJzNAc.d.ts +212 -0
  5. package/dist/tsdown/RhfUtilsContextType-BFmDtONY.d.ts +81 -0
  6. package/dist/tsdown/index.d.ts +207 -0
  7. package/dist/tsdown/index.js +745 -0
  8. package/dist/tsdown/relay.d.ts +56 -0
  9. package/dist/tsdown/relay.js +71 -0
  10. package/dist/tsdown/trpc.d.ts +36 -0
  11. package/dist/tsdown/trpc.js +47 -0
  12. package/package.json +8 -24
  13. package/dist/dts/Register.d.ts +0 -16
  14. package/dist/dts/_exports/config.d.ts +0 -2
  15. package/dist/dts/_exports/errors.d.ts +0 -3
  16. package/dist/dts/_exports/form.d.ts +0 -7
  17. package/dist/dts/_exports/index.d.ts +0 -14
  18. package/dist/dts/_exports/relay.d.ts +0 -7
  19. package/dist/dts/_exports/submit.d.ts +0 -4
  20. package/dist/dts/_exports/trpc.d.ts +0 -2
  21. package/dist/dts/_exports/types.d.ts +0 -7
  22. package/dist/dts/_exports/zod.d.ts +0 -6
  23. package/dist/dts/client/config/RhfUtilsClientConfigType.d.ts +0 -71
  24. package/dist/dts/client/config/context/RhfUtilsClientConfigContext.d.ts +0 -3
  25. package/dist/dts/client/config/context/RhfUtilsClientConfigProvider.d.ts +0 -7
  26. package/dist/dts/client/config/context/useRhfUtilsClientConfig.d.ts +0 -1
  27. package/dist/dts/devtool/LazyDevTool.d.ts +0 -10
  28. package/dist/dts/devtool/LazyDevToolViaProviders.d.ts +0 -1
  29. package/dist/dts/errors/flat/FlatFieldErrorsList.d.ts +0 -6
  30. package/dist/dts/errors/flat/context/FlatFieldErrorsContextProvider.d.ts +0 -10
  31. package/dist/dts/errors/flat/context/FlatFieldErrorsOutputConfig.d.ts +0 -19
  32. package/dist/dts/errors/flat/context/useFlatFieldErrorsContext.d.ts +0 -11
  33. package/dist/dts/errors/flat/context/useFlatFieldErrorsContextHasOnlyOrphans.d.ts +0 -6
  34. package/dist/dts/errors/flat/context/useFlatFieldErrorsContextOutput.d.ts +0 -5
  35. package/dist/dts/errors/flat/filterFlatFieldErrors.d.ts +0 -7
  36. package/dist/dts/errors/flat/flattenFieldErrors.d.ts +0 -14
  37. package/dist/dts/errors/flat/getFlatFieldErrors.d.ts +0 -35
  38. package/dist/dts/errors/flat/types.d.ts +0 -16
  39. package/dist/dts/errors/getRefdFromFlatFieldErrors.d.ts +0 -1
  40. package/dist/dts/errors/isFieldErrorRefd.d.ts +0 -5
  41. package/dist/dts/errors/isFlatFieldErrorEntryRefd.d.ts +0 -5
  42. package/dist/dts/errors/message/FormErrorMessage.d.ts +0 -7
  43. package/dist/dts/errors/message/RhfUtilsFieldErrorMessage.d.ts +0 -10
  44. package/dist/dts/errors/nonfield/RhfUtilsNonFieldErrorMarker.d.ts +0 -13
  45. package/dist/dts/errors/nonfield/RhfUtilsNonFieldErrorMarker.spec.d.ts +0 -1
  46. package/dist/dts/errors/nonfield/RhfUtilsNonFieldErrorMarker.utils.d.ts +0 -18
  47. package/dist/dts/errors/nonfield/RhfUtilsNonFieldErrorMarkerHtmlAttribute.d.ts +0 -4
  48. package/dist/dts/errors/nonfield/isNonFieldError.d.ts +0 -17
  49. package/dist/dts/errors/nonfield/isNonFieldErrorMarkerInDOM.d.ts +0 -5
  50. package/dist/dts/errors/orphan/getIsOrphanFormErrorWithParentElement.d.ts +0 -5
  51. package/dist/dts/errors/orphan/getOrphansFromFlatFieldErrors.d.ts +0 -2
  52. package/dist/dts/errors/orphan/isOrphanFormError.d.ts +0 -2
  53. package/dist/dts/errors/output/consoleErrors.d.ts +0 -5
  54. package/dist/dts/errors/output/types.d.ts +0 -7
  55. package/dist/dts/errors/root/RootErrorsListFromFlatFieldErrorsContext.d.ts +0 -1
  56. package/dist/dts/errors/root/consts.d.ts +0 -1
  57. package/dist/dts/errors/root/getRootsFromFlatFieldErrors.d.ts +0 -1
  58. package/dist/dts/errors/root/isFlatFieldErrorEntryPathRoot.d.ts +0 -5
  59. package/dist/dts/errors/root/isFormErrorPathRoot.d.ts +0 -6
  60. package/dist/dts/errors/trpc/makeOnSubmitTrpcClientErrorHandler.d.ts +0 -9
  61. package/dist/dts/errors/trpc/trpcClientErrorMessageSchema.d.ts +0 -19
  62. package/dist/dts/errors/trpc/trpcClientErrorToFormSubmitFieldErrorsSchemaTransformer.d.ts +0 -23
  63. package/dist/dts/form/RHF_UseFormReturnWithoutProxiesType.d.ts +0 -15
  64. package/dist/dts/form/RhfUtilsFormInjectorProps.d.ts +0 -17
  65. package/dist/dts/form/UseRhfUtilsFormChildrenPropsType.d.ts +0 -25
  66. package/dist/dts/form/_Controller.d.ts +0 -4
  67. package/dist/dts/form/context/utils/LastSubmitStateType.d.ts +0 -1
  68. package/dist/dts/form/context/utils/RhfUtilsContextProvider.d.ts +0 -9
  69. package/dist/dts/form/context/utils/RhfUtilsContextType.d.ts +0 -12
  70. package/dist/dts/form/context/utils/useRhfUtilsContext.d.ts +0 -5
  71. package/dist/dts/form/context/utils/useRhfUtilsContextRequestSubmit.d.ts +0 -4
  72. package/dist/dts/form/defaults/UseRhfUtilsFormGlobalDefaults.d.ts +0 -24
  73. package/dist/dts/form/defaults/UseRhfUtilsFormInstanceDefaults.d.ts +0 -18
  74. package/dist/dts/form/defaults/UseRhfUtilsFormResolvedDefaultsType.d.ts +0 -12
  75. package/dist/dts/form/defaults/form/UseRhfUtilsFormInstanceFormProps.d.ts +0 -6
  76. package/dist/dts/form/defaults/form/getRhfUtilsFormResolvedFormProps.d.ts +0 -2
  77. package/dist/dts/form/defaults/form/useRhfUtilsFormResolvedFormProps.d.ts +0 -293
  78. package/dist/dts/form/options/RhfUtilsFormOptionsType.d.ts +0 -27
  79. package/dist/dts/form/options/getRhfUtilsFormResolvedOptions.d.ts +0 -2
  80. package/dist/dts/form/options/useRhfUtilsFormResolvedOptions.d.ts +0 -8
  81. package/dist/dts/form/providers/RhfUtilsFormProviders.d.ts +0 -6
  82. package/dist/dts/form/providers/RhfUtilsFormProvidersPropsType.d.ts +0 -17
  83. package/dist/dts/form/relay/FormRelayOptions.d.ts +0 -16
  84. package/dist/dts/form/relay/context/FormRelayContextProvider.d.ts +0 -4
  85. package/dist/dts/form/relay/context/useFormRelayContext.d.ts +0 -12
  86. package/dist/dts/form/relay/context/utils.d.ts +0 -4
  87. package/dist/dts/form/relay/get/FormRelayGroupType.d.ts +0 -16
  88. package/dist/dts/form/relay/get/grouper/context/hooks.d.ts +0 -8
  89. package/dist/dts/form/relay/get/grouper/context/index.d.ts +0 -5
  90. package/dist/dts/form/relay/get/grouper/context/provider.d.ts +0 -9
  91. package/dist/dts/form/relay/get/grouper/useFirstFormStateGroup.d.ts +0 -9
  92. package/dist/dts/form/relay/get/useFormRelay.d.ts +0 -13
  93. package/dist/dts/form/relay/set/FormRelaySetter.d.ts +0 -6
  94. package/dist/dts/form/relay/set/useFormRelaySet.d.ts +0 -2
  95. package/dist/dts/form/relay/types.d.ts +0 -12
  96. package/dist/dts/form/rhf/SafeFieldValuesType.d.ts +0 -4
  97. package/dist/dts/form/rhf/UseFormPropsType.d.ts +0 -4
  98. package/dist/dts/form/rhf/getRhfUtilsFormResolvedRhfProps.d.ts +0 -4
  99. package/dist/dts/form/rhf/useRhfFormWithResolvedProps.d.ts +0 -5
  100. package/dist/dts/form/utils/getSubmitterButtonData.d.ts +0 -6
  101. package/dist/dts/form/utils/useFormRequestSubmit.d.ts +0 -9
  102. package/dist/dts/form/utils/useHandleCancelWithCheckIfCanBe.d.ts +0 -4
  103. package/dist/dts/form/utils/useHandleCancelWithCheckIfCanBeViaProviders.d.ts +0 -2
  104. package/dist/dts/form/utils/useShouldFormBlockNavigation.d.ts +0 -24
  105. package/dist/dts/form/with-handlers-and-children/RhfUtilsForm.d.ts +0 -3
  106. package/dist/dts/form/with-handlers-and-children/RhfUtilsFormProps.d.ts +0 -42
  107. package/dist/dts/form/with-handlers-and-children/RhfUtilsFormPropsOnBeforeSubmitInvariants.d.ts +0 -12
  108. package/dist/dts/form/with-handlers-and-children/_ChildrenViaProviders.d.ts +0 -3
  109. package/dist/dts/form/with-handlers-and-children/_FormWithSubmitHandler.d.ts +0 -4
  110. package/dist/dts/form/with-handlers-and-children/_useHandleSubmit.d.ts +0 -11
  111. package/dist/dts/form/with-providers/RhfUtilsFormWithProviders.d.ts +0 -8
  112. package/dist/dts/form/with-providers/RhfUtilsFormWithProvidersProps.d.ts +0 -8
  113. package/dist/dts/main.d.ts +0 -1
  114. package/dist/dts/playwright/index.d.ts +0 -0
  115. package/dist/dts/playwright-ct.config.d.ts +0 -5
  116. package/dist/dts/resolvers/ObjectSchema.d.ts +0 -7
  117. package/dist/dts/resolvers/zod/RhfUtilsUseZodFormChildrenFCType.d.ts +0 -7
  118. package/dist/dts/resolvers/zod/RhfUtilsUseZodFormChildrenPropsType.d.ts +0 -4
  119. package/dist/dts/resolvers/zod/ZodTypeSafeFieldValuesType.d.ts +0 -5
  120. package/dist/dts/resolvers/zod/consts.d.ts +0 -4
  121. package/dist/dts/resolvers/zod/form/RhfUtilsZodForm.d.ts +0 -7
  122. package/dist/dts/resolvers/zod/getZodResolver.d.ts +0 -4
  123. package/dist/dts/resolvers/zod/providers/RhfUtilsZodFormProviders.d.ts +0 -8
  124. package/dist/dts/resolvers/zod/with-providers/RhfUtilsZodFormWithProviders.d.ts +0 -10
  125. package/dist/dts/submit/UseRhfUtilsFormOnSubmitContextType.d.ts +0 -23
  126. package/dist/dts/submit/error/FormSubmitError.d.ts +0 -6
  127. package/dist/dts/submit/error/FormSubmitFieldErrors.d.ts +0 -14
  128. package/dist/dts/submit/error/setCtxErrorsByFormSubmitFieldErrors.d.ts +0 -8
  129. package/dist/dts/submit/last-error/LastSubmitErrorContextProvider.d.ts +0 -4
  130. package/dist/dts/submit/last-error/LastSubmitErrorContextType.d.ts +0 -8
  131. package/dist/dts/submit/last-error/useLastSubmitError.d.ts +0 -4
  132. package/dist/dts/submit/last-error/useLastSubmitErrorContext.d.ts +0 -3
  133. package/dist/dts/submit/last-error/useLastSubmitErrorContextWith.d.ts +0 -2
  134. package/dist/dts/submit/useFormOnSubmitSuccessfulAndReset.d.ts +0 -13
  135. package/dist/dts/submit/useFormOnSubmitted.d.ts +0 -4
  136. package/dist/dts/submit/useResetFormOnSubmitted.d.ts +0 -35
  137. package/dist/dts/submit/useRhfUtilsFormOnSubmitContext.d.ts +0 -3
  138. package/dist/dts/submit/useSubmitFormOnChange.d.ts +0 -15
  139. package/dist/dts/submit/useSubmitFormOnEvent.d.ts +0 -9
  140. package/dist/dts/submit/useSubmitFormOnWatch.d.ts +0 -14
  141. package/dist/dts/utils/PassthroughChildren.d.ts +0 -7
  142. package/dist/dts/utils/createContext.d.ts +0 -10
  143. package/dist/dts/utils/fixedForwardRef.d.ts +0 -5
  144. package/dist/dts/utils/isEmptyObject.d.ts +0 -1
  145. package/dist/dts/utils/timeoutAsync.d.ts +0 -6
  146. package/dist/dts/utils/types.d.ts +0 -3
  147. package/dist/dts/utils/useDebouncedOnChangeValue.d.ts +0 -14
  148. package/dist/dts/utils/useImperativeForwardedRef.d.ts +0 -9
  149. package/dist/dts/utils/useIsFirstRender.d.ts +0 -7
  150. package/dist/dts/utils/useRefIfValueWasTrue.d.ts +0 -2
  151. package/dist/dts/utils/useToggle.d.ts +0 -2
  152. package/dist/dts/vite-env.d.ts +0 -1
  153. package/dist/esm/FormRelaySetter.mjs +0 -89
  154. package/dist/esm/index.mjs +0 -351
  155. package/dist/esm/relay.mjs +0 -49
  156. package/dist/esm/trpc.mjs +0 -24
@@ -1,351 +0,0 @@
1
- import { a as e, c as t, i as n, o as r, r as i, t as a, u as o } from "./FormRelaySetter.mjs";
2
- import s from "react";
3
- import { jsx as c, jsxs as l } from "react/jsx-runtime";
4
- import { Controller as u, FormProvider as d, useForm as f, useFormContext as p, useFormState as m, useWatch as h } from "react-hook-form";
5
- import { zodResolver as g } from "@hookform/resolvers/zod";
6
- //#region src/client/config/context/RhfUtilsClientConfigContext.tsx
7
- var _ = s.createContext(void 0), v = ({ config: e, children: n }) => {
8
- let [r] = s.useState(e ?? {});
9
- return /* @__PURE__ */ c(_.Provider, {
10
- value: r,
11
- children: /* @__PURE__ */ c(t, { children: n })
12
- });
13
- }, { Provider: y, useRequired: b } = o(), x = () => {
14
- let e = b();
15
- return s.useMemo(() => !e.hasErrors || !e.hasOrphans ? !1 : Object.keys(e.orphans).length === Object.keys(e.all).length, [e]);
16
- }, S = "data-rhfutils-nonfield-error-marker-path", C = ({ path: e }) => /* @__PURE__ */ c("div", {
17
- role: "alert",
18
- "aria-hidden": "true",
19
- style: { display: "none" },
20
- [S]: e
21
- }), w = (e) => s.useCallback((t) => {
22
- if (!e.current) throw Error();
23
- ee(e.current, t);
24
- }, [e]), ee = (e, t) => {
25
- e.requestSubmit(t);
26
- }, T = class extends Error {
27
- errors;
28
- constructor(e, t) {
29
- super(t), this.errors = e;
30
- }
31
- }, { Provider: te, useRequired: E } = o(), D = () => E().current, O = s.lazy(() => import("@hookform/devtools").then((e) => ({ default: e.DevTool }))), k = ({ config: e }) => {
32
- let [t] = s.useState(e);
33
- if (!t) return null;
34
- let n = typeof t == "object" ? t : void 0;
35
- return /* @__PURE__ */ c(s.Suspense, { children: /* @__PURE__ */ c(O, { ...n }) });
36
- }, A = () => /* @__PURE__ */ c(k, { config: r().options.devTool }), j = (e) => /* @__PURE__ */ c(u, { ...e }), M = () => {
37
- let e = s.useContext(_);
38
- if (e === void 0) throw Error();
39
- return e;
40
- }, ne = () => ({
41
- utils: r(),
42
- rhf: p(),
43
- FormSubmitError: T
44
- }), re = (e, t, n) => {
45
- let r = t?.();
46
- return async () => {
47
- if (e && await Promise.resolve(r?.(n)) !== !1) return Promise.resolve(e());
48
- };
49
- }, ie = (e) => {
50
- let { useCanFormBeCancelled: t } = M();
51
- return re(e, t, ne());
52
- }, ae = ({ onCancel: e, Children: t }) => {
53
- let n = p(), i = r(), a = ie(e);
54
- return /* @__PURE__ */ c(t, {
55
- ...i,
56
- rhf: n,
57
- onCancel: a,
58
- Controller: j,
59
- FormSubmitError: T
60
- });
61
- }, N = (e, t) => {
62
- Object.entries(t).forEach(([t, n]) => {
63
- e.setError(t, {
64
- type: "FormSubmitFieldError",
65
- ...n
66
- });
67
- });
68
- }, P = (e, t, n) => ({
69
- ...e,
70
- ...t,
71
- className: [
72
- e?.className,
73
- t?.className,
74
- n?.className
75
- ].filter(Boolean).join(" ").trim() || void 0
76
- }), F = (e, t, n) => ({
77
- id: t,
78
- ...P(M().defaults?.form, e, n)
79
- }), I = (e) => {
80
- let t = E();
81
- return async function(n) {
82
- try {
83
- return t.reset(), await e(n);
84
- } catch (e) {
85
- throw t.set(e, n), e;
86
- }
87
- };
88
- }, L = ({ onValid: e, onInvalid: t, onError: n, onFinally: i }) => {
89
- let a = p(), { options: o, lastSubmitStateRef: s } = r(), c = I(a.handleSubmit(e, t));
90
- return (e) => {
91
- s.current = "submitting", o.stopSubmitPropagation && e.stopPropagation(), Promise.resolve(c(e)).then(() => {
92
- s.current = "success";
93
- }).catch((t) => {
94
- s.current = "error", n(t, e);
95
- }).finally(() => {
96
- i?.();
97
- });
98
- };
99
- }, R = ({ getApiData: e, onSubmitInvalid: t, onBeforeSubmitInvariants: n, onBeforeSubmit: i, onSubmit: a, onSubmitSuccess: o, onSubmitError: l, onSubmitFinally: u, form: d, className: f, children: m }) => {
100
- let h = p(), g = r(), _ = M(), v = F(d, g.formId, { className: f }), y = async (t, r) => {
101
- let s = {
102
- input: h.getValues(),
103
- output: t,
104
- api: e?.(t)
105
- }, c = {
106
- utils: g,
107
- rhf: h,
108
- FormSubmitError: T
109
- }, l = r;
110
- n && await z(n, s, c, l), await Promise.resolve(i?.(s, c, l));
111
- let u = await Promise.resolve(a?.(s, c, l));
112
- g.lastSubmitStateRef.current = "success", await Promise.resolve(o?.(u, s, c, l));
113
- };
114
- function b(e, t) {
115
- let n = e instanceof T ? e.errors : _.onSubmitErrorUnknown?.(e);
116
- n && N(h, n), l?.(e, {
117
- utils: g,
118
- errors: n,
119
- rhf: h
120
- }, t);
121
- }
122
- let x = L({
123
- onValid: y,
124
- onInvalid: t,
125
- onError: b,
126
- onFinally: u
127
- }), S = s.useCallback(() => m, []), C = {
128
- ...g,
129
- rhf: h,
130
- Controller: j,
131
- FormSubmitError: T,
132
- Outlet: S
133
- };
134
- return /* @__PURE__ */ c(_.FormComponent ?? "form", {
135
- ...v,
136
- id: g.formId,
137
- ref: g.formRef,
138
- onSubmit: x,
139
- children: _.FormInjector ? /* @__PURE__ */ c(_.FormInjector, { ...C }) : m
140
- });
141
- }, z = async (e, t, n, r) => {
142
- let i = (await Promise.resolve(e(t, n, r))).filter(({ validate: e }) => !e).map(({ field: e, message: t }) => [e, { message: t }]);
143
- if (i.length) throw new n.FormSubmitError(Object.fromEntries(i));
144
- }, B = ({ getApiData: e, onCancel: t, onSubmitInvalid: n, onBeforeSubmitInvariants: r, onBeforeSubmit: i, onSubmit: a, onSubmitSuccess: o, onSubmitError: s, onSubmitFinally: u, Children: d, form: f, className: p }) => /* @__PURE__ */ l(R, {
145
- getApiData: e,
146
- onSubmitInvalid: n,
147
- onBeforeSubmitInvariants: r,
148
- onBeforeSubmit: i,
149
- onSubmit: a,
150
- onSubmitSuccess: o,
151
- onSubmitError: s,
152
- onSubmitFinally: u,
153
- form: f,
154
- className: p,
155
- children: [/* @__PURE__ */ c(A, {}), /* @__PURE__ */ c(ae, {
156
- onCancel: t,
157
- Children: d
158
- })]
159
- }), V = (e) => /* @__PURE__ */ c(B, { ...e }), H = (e) => (t) => Object.fromEntries(Object.entries(t).filter(e)), U = (e) => !!e.ref, W = H(([, e]) => U(e)), G = (e, t) => [["", ""], ...t?.excludeNested ? [] : [["^", "."]]].map(([t, n]) => K(S + t, e + n)).join(", "), K = (e, t) => `[role="alert"][${e}="${t}"]`, q = (e, t) => !!t.querySelector(G(e)), J = (e) => e === "root" || e.startsWith("root."), oe = (e, t, n) => !U(t) && !J(e) && !q(e, n), se = (e) => ([t, n]) => oe(t, n, e), ce = (e, t) => H(se(t))(e), le = H(([e]) => J(e)), ue = ({ formRef: e, children: t }) => {
160
- let { errors: r } = m(), a = i(r), o = e.current ? ce(a, e.current) : {};
161
- return /* @__PURE__ */ c(y, {
162
- value: {
163
- all: a,
164
- fields: W(a),
165
- roots: le(a),
166
- orphans: o,
167
- hasErrors: !n(r),
168
- hasOrphans: !n(o)
169
- },
170
- children: t
171
- });
172
- }, de = ({ children: e }) => {
173
- let [t, n] = s.useState(void 0);
174
- return /* @__PURE__ */ c(te, {
175
- value: {
176
- current: t,
177
- reset: () => {
178
- n(void 0);
179
- },
180
- set: (e, t) => {
181
- n({
182
- error: e,
183
- event: t
184
- });
185
- }
186
- },
187
- children: e
188
- });
189
- }, fe = (e, t, n, r = "debug") => {
190
- console[r](e, {
191
- values: t,
192
- errors: n
193
- });
194
- }, pe = (e) => {
195
- let t = p(), n = b();
196
- s.useEffect(() => {
197
- if (!n.hasErrors) return;
198
- let r = e?.console?.(n);
199
- r && fe(r.message ?? Y, t.getValues(), n, r.type);
200
- let i = e?.throw?.(n);
201
- if (i) throw Error(typeof i == "string" ? i : Y);
202
- }, [n]);
203
- }, Y = "Form errors", me = (e) => {
204
- let t = s.useRef(!1);
205
- return s.useEffect(() => {
206
- e && (t.current = !0);
207
- }, [e]), [t, () => {
208
- t.current = !1;
209
- }];
210
- }, he = (e, t) => {
211
- let { isSubmitSuccessful: n, isSubmitting: r } = m(), [i, a] = me(r);
212
- s.useEffect(() => {
213
- e && (r || i.current && (a(), (t?.successful === void 0 || n === t.successful) && e(n)));
214
- }, [r]);
215
- }, ge = (e) => {
216
- let { getValues: t, reset: n } = p();
217
- he((r) => {
218
- if (!e) return;
219
- let i = e[r ? "success" : "error"]?.values;
220
- if (!i) return;
221
- let a = i === "current";
222
- n(a ? t() : void 0, {
223
- keepIsSubmitSuccessful: !0,
224
- keepIsSubmitted: !0,
225
- keepSubmitCount: !0,
226
- keepValues: a,
227
- keepErrors: !0
228
- });
229
- });
230
- }, _e = () => {
231
- let e = s.useRef(X);
232
- return s.useEffect(() => (e.current &&= !X, () => {
233
- e.current = X;
234
- }), []), e;
235
- }, X = !0, ve = ({ onChange: e, delay: t }) => {
236
- let n = s.useRef(null), r = () => {
237
- n.current &&= (e(n.current.value), null);
238
- }, i = () => {
239
- n.current && clearTimeout(n.current.timer);
240
- };
241
- return s.useEffect(() => i, []), [(e) => {
242
- i(), n.current = {
243
- value: e,
244
- timer: setTimeout(r, t)
245
- };
246
- }];
247
- }, ye = (e, t) => {
248
- let n = w(e), [r] = ve({
249
- delay: t?.debounce ?? 0,
250
- onChange: () => {
251
- n();
252
- }
253
- });
254
- return r;
255
- }, be = (e, t) => {
256
- let n = ye(e, { debounce: t?.debounce }), r = h(), { isValid: i, isDirty: a, isValidating: o, isSubmitting: c } = m(), l = s.useMemo(() => JSON.stringify(r), [r]), u = _e();
257
- s.useEffect(() => {
258
- u.current || o || c || i && a && n(r);
259
- }, [
260
- i,
261
- a,
262
- l,
263
- o
264
- ]);
265
- }, xe = ({ formId: t, formRef: n, options: r, children: i }) => {
266
- let [a] = s.useState(r);
267
- return pe(M().fieldErrors?.output), (a.submitOnWatch ? be : void 0)?.(n, a.submitOnWatch), ge(a.resetOnSubmitted), /* @__PURE__ */ c(e, {
268
- value: {
269
- formId: t,
270
- formRef: n,
271
- options: r,
272
- lastSubmitStateRef: s.useRef(null)
273
- },
274
- children: i
275
- });
276
- }, Se = (e, t) => ({
277
- ...e,
278
- ...t,
279
- ...(e?.resetOnSubmitted || t?.resetOnSubmitted) && { resetOnSubmitted: {
280
- ...e?.resetOnSubmitted,
281
- ...t?.resetOnSubmitted
282
- } }
283
- }), Z = (e, t) => s.useMemo(() => Se(e.defaults?.options, t), [JSON.stringify(t)]), Ce = (e, t) => ({
284
- ...e,
285
- ...t
286
- }), we = (e, t, n, r) => f({
287
- ...Ce(t.defaults?.rhf, e),
288
- resolver: r,
289
- defaultValues: n
290
- });
291
- //#endregion
292
- //#region src/form/providers/RhfUtilsFormProviders.tsx
293
- function Q({ formId: e, rhf: t, resolver: n, defaultValues: r, options: i, relay: o, children: u }) {
294
- let f = M(), p = s.useId(), m = e || p, h = s.useRef(null), g = we(t, f, r, n), _ = Z(f, i);
295
- return /* @__PURE__ */ c(d, {
296
- ...g,
297
- children: /* @__PURE__ */ c(ue, {
298
- formRef: h,
299
- children: /* @__PURE__ */ l(xe, {
300
- formId: m,
301
- formRef: h,
302
- options: _,
303
- children: [/* @__PURE__ */ c(a, { options: o }), /* @__PURE__ */ c(de, { children: u })]
304
- })
305
- })
306
- });
307
- }
308
- //#endregion
309
- //#region src/resolvers/zod/getZodResolver.ts
310
- var $ = (e) => g(e), Te = ({ schema: e, children: t, ...n }) => /* @__PURE__ */ c(Q, {
311
- ...n,
312
- resolver: $(e),
313
- children: t
314
- });
315
- //#endregion
316
- //#region src/form/with-providers/RhfUtilsFormWithProviders.tsx
317
- function Ee({ getApiData: e, resolver: t, rhf: n, defaultValues: r, options: i, relay: a, onCancel: o, onSubmitInvalid: s, onBeforeSubmitInvariants: l, onBeforeSubmit: u, onSubmit: d, onSubmitSuccess: f, onSubmitError: p, onSubmitFinally: m, Children: h, form: g, formId: _, className: v }) {
318
- let y = {
319
- formId: _,
320
- resolver: t,
321
- rhf: n,
322
- defaultValues: r,
323
- options: i,
324
- relay: a
325
- }, b = {
326
- getApiData: e,
327
- onCancel: o,
328
- onSubmitInvalid: s,
329
- onBeforeSubmitInvariants: l,
330
- onBeforeSubmit: u,
331
- onSubmit: d,
332
- onSubmitSuccess: f,
333
- onSubmitError: p,
334
- onSubmitFinally: m,
335
- Children: h,
336
- form: g,
337
- className: v
338
- };
339
- return /* @__PURE__ */ c(Q, {
340
- ...y,
341
- children: /* @__PURE__ */ c(B, { ...b })
342
- });
343
- }
344
- //#endregion
345
- //#region src/resolvers/zod/with-providers/RhfUtilsZodFormWithProviders.tsx
346
- var De = ({ schema: e, ...t }) => /* @__PURE__ */ c(Ee, {
347
- ...t,
348
- resolver: $(e)
349
- });
350
- //#endregion
351
- export { T as FormSubmitError, v as RhfUtilsClientConfigProvider, C as RhfUtilsNonFieldErrorMarker, V as RhfUtilsZodForm, Te as RhfUtilsZodFormProviders, De as RhfUtilsZodFormWithProviders, b as useFlatFieldErrorsContext, x as useFlatFieldErrorsContextHasOnlyOrphans, w as useFormRequestSubmit, D as useLastSubmitError, r as useRhfUtilsContext };
@@ -1,49 +0,0 @@
1
- import { c as e, i as t, l as n, n as r, s as i, t as a, u as o } from "./FormRelaySetter.mjs";
2
- import s from "react";
3
- import { useFormState as c } from "react-hook-form";
4
- //#region src/form/relay/context/utils.ts
5
- var l = (e) => e.reduce((e, n) => ({
6
- isDirty: e.isDirty || n.isDirty,
7
- isSubmitting: e.isSubmitting || n.isSubmitting,
8
- isLoading: e.isLoading || n.isLoading,
9
- isSubmitted: e.isSubmitted || n.isSubmitted,
10
- isSubmitSuccessful: e.isSubmitSuccessful || n.isSubmitSuccessful,
11
- isValidating: e.isValidating || n.isValidating,
12
- isValid: e.isValid || n.isValid,
13
- isReady: e.isReady || n.isReady,
14
- disabled: e.disabled || n.disabled,
15
- hasErrors: e.hasErrors || n.errors && !t(n.errors),
16
- hasDirtyFields: e.hasDirtyFields || n.dirtyFields && !t(n.dirtyFields),
17
- hasTouchedFields: e.hasTouchedFields || n.touchedFields && !t(n.touchedFields),
18
- hasValidatingFields: e.hasValidatingFields || n.validatingFields && !t(n.validatingFields),
19
- submitCount: (e.submitCount ?? 0) + (n.submitCount ?? 0),
20
- isMounted: e.isMounted || n.isMounted
21
- }), {
22
- isDirty: void 0,
23
- isSubmitting: void 0,
24
- isLoading: void 0,
25
- isSubmitted: void 0,
26
- isSubmitSuccessful: void 0,
27
- isValidating: void 0,
28
- isReady: void 0,
29
- isValid: void 0,
30
- disabled: void 0,
31
- hasErrors: void 0,
32
- hasDirtyFields: void 0,
33
- hasTouchedFields: void 0,
34
- hasValidatingFields: void 0,
35
- submitCount: void 0,
36
- isMounted: void 0
37
- }), u = (e) => n().state[e], d = (e) => {
38
- let t = n().state, r = l(f(t, e).map(({ state: e }) => e)), i = JSON.stringify(r);
39
- return s.useMemo(() => r, [i]);
40
- }, f = (e, t) => Object.values(e).filter(({ options: e, utils: n }) => !t || "groups" in t && t.groups.filter((t) => e.groups?.includes(t)).length || "predicate" in t && t.predicate({
41
- groups: e.groups,
42
- options: n.options
43
- })), { Provider: p, useRequired: m, useMaybe: h } = o(), g = () => {
44
- if (i()) return l([c()]);
45
- let e = h();
46
- return e ? e.state : d();
47
- };
48
- //#endregion
49
- export { e as FormRelayContextProvider, a as FormRelaySetter, g as useFirstFormStateGroup, d as useFormRelayGroup, u as useFormRelayId, r as useFormRelaySet };
package/dist/esm/trpc.mjs DELETED
@@ -1,24 +0,0 @@
1
- import { TRPCClientError as e } from "@trpc/client";
2
- import { z as t } from "zod";
3
- //#region src/errors/trpc/trpcClientErrorMessageSchema.ts
4
- var n = t.object({
5
- code: t.string(),
6
- message: t.string(),
7
- path: t.array(t.string())
8
- }).passthrough(), r = t.custom((t) => t instanceof e).transform((e) => e.message).transform((e) => {
9
- try {
10
- return JSON.parse(e);
11
- } catch {
12
- return [{
13
- validation: "root",
14
- code: "server",
15
- message: e,
16
- path: ["root"]
17
- }];
18
- }
19
- }).pipe(t.array(n)).transform((e) => e.map((e) => [e.path.join("."), {
20
- type: e.code,
21
- message: e.message
22
- }])).transform((e) => Object.fromEntries(e)), i = (t) => (n) => n instanceof e ? r.parse(n) : t(n);
23
- //#endregion
24
- export { i as makeOnSubmitTrpcClientErrorHandler, r as trpcClientErrorToFormSubmitFieldErrorsSchemaTransformer };