react-simple-formkit 2.4.3 → 2.4.5

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.
@@ -1,5 +1,5 @@
1
- import jr, { createContext as Cr, useContext as Pr, useCallback as d, useEffect as Er, useState as er, useRef as W, useMemo as dr, useLayoutEffect as hr } from "react";
2
- var ar = { exports: {} }, K = {};
1
+ import wr, { createContext as Pr, useContext as $r, useCallback as b, useEffect as hr, useRef as M, useState as sr, useMemo as gr, useLayoutEffect as mr } from "react";
2
+ var lr = { exports: {} }, tr = {};
3
3
  /**
4
4
  * @license React
5
5
  * react-jsx-runtime.production.js
@@ -9,29 +9,29 @@ var ar = { exports: {} }, K = {};
9
9
  * This source code is licensed under the MIT license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
11
  */
12
- var mr;
13
- function Nr() {
14
- if (mr) return K;
15
- mr = 1;
16
- var n = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
17
- function u(a, c, l) {
12
+ var vr;
13
+ function kr() {
14
+ if (vr) return tr;
15
+ vr = 1;
16
+ var s = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
17
+ function u(i, c, f) {
18
18
  var o = null;
19
- if (l !== void 0 && (o = "" + l), c.key !== void 0 && (o = "" + c.key), "key" in c) {
20
- l = {};
19
+ if (f !== void 0 && (o = "" + f), c.key !== void 0 && (o = "" + c.key), "key" in c) {
20
+ f = {};
21
21
  for (var m in c)
22
- m !== "key" && (l[m] = c[m]);
23
- } else l = c;
24
- return c = l.ref, {
25
- $$typeof: n,
26
- type: a,
22
+ m !== "key" && (f[m] = c[m]);
23
+ } else f = c;
24
+ return c = f.ref, {
25
+ $$typeof: s,
26
+ type: i,
27
27
  key: o,
28
28
  ref: c !== void 0 ? c : null,
29
- props: l
29
+ props: f
30
30
  };
31
31
  }
32
- return K.Fragment = t, K.jsx = u, K.jsxs = u, K;
32
+ return tr.Fragment = t, tr.jsx = u, tr.jsxs = u, tr;
33
33
  }
34
- var rr = {};
34
+ var nr = {};
35
35
  /**
36
36
  * @license React
37
37
  * react-jsx-runtime.development.js
@@ -41,24 +41,24 @@ var rr = {};
41
41
  * This source code is licensed under the MIT license found in the
42
42
  * LICENSE file in the root directory of this source tree.
43
43
  */
44
- var vr;
45
- function Dr() {
46
- return vr || (vr = 1, process.env.NODE_ENV !== "production" && function() {
47
- function n(e) {
44
+ var Rr;
45
+ function Nr() {
46
+ return Rr || (Rr = 1, process.env.NODE_ENV !== "production" && function() {
47
+ function s(e) {
48
48
  if (e == null) return null;
49
49
  if (typeof e == "function")
50
- return e.$$typeof === nr ? null : e.displayName || e.name || null;
50
+ return e.$$typeof === or ? null : e.displayName || e.name || null;
51
51
  if (typeof e == "string") return e;
52
52
  switch (e) {
53
- case p:
53
+ case S:
54
54
  return "Fragment";
55
- case C:
55
+ case w:
56
56
  return "Profiler";
57
- case A:
57
+ case N:
58
58
  return "StrictMode";
59
- case ir:
59
+ case x:
60
60
  return "Suspense";
61
- case lr:
61
+ case L:
62
62
  return "SuspenseList";
63
63
  case T:
64
64
  return "Activity";
@@ -67,21 +67,21 @@ function Dr() {
67
67
  switch (typeof e.tag == "number" && console.error(
68
68
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
69
69
  ), e.$$typeof) {
70
- case S:
70
+ case p:
71
71
  return "Portal";
72
- case x:
72
+ case A:
73
73
  return (e.displayName || "Context") + ".Provider";
74
- case Y:
74
+ case F:
75
75
  return (e._context.displayName || "Context") + ".Consumer";
76
- case V:
77
- var f = e.render;
78
- return e = e.displayName, e || (e = f.displayName || f.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
79
- case tr:
80
- return f = e.displayName || null, f !== null ? f : n(e.type) || "Memo";
81
- case B:
82
- f = e._payload, e = e._init;
76
+ case C:
77
+ var g = e.render;
78
+ return e = e.displayName, e || (e = g.displayName || g.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
79
+ case H:
80
+ return g = e.displayName || null, g !== null ? g : s(e.type) || "Memo";
81
+ case J:
82
+ g = e._payload, e = e._init;
83
83
  try {
84
- return n(e(f));
84
+ return s(e(g));
85
85
  } catch {
86
86
  }
87
87
  }
@@ -93,73 +93,73 @@ function Dr() {
93
93
  function u(e) {
94
94
  try {
95
95
  t(e);
96
- var f = !1;
96
+ var g = !1;
97
97
  } catch {
98
- f = !0;
98
+ g = !0;
99
99
  }
100
- if (f) {
101
- f = console;
102
- var y = f.error, j = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
103
- return y.call(
104
- f,
100
+ if (g) {
101
+ g = console;
102
+ var _ = g.error, $ = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
103
+ return _.call(
104
+ g,
105
105
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
106
- j
106
+ $
107
107
  ), t(e);
108
108
  }
109
109
  }
110
- function a(e) {
111
- if (e === p) return "<>";
112
- if (typeof e == "object" && e !== null && e.$$typeof === B)
110
+ function i(e) {
111
+ if (e === S) return "<>";
112
+ if (typeof e == "object" && e !== null && e.$$typeof === J)
113
113
  return "<...>";
114
114
  try {
115
- var f = n(e);
116
- return f ? "<" + f + ">" : "<...>";
115
+ var g = s(e);
116
+ return g ? "<" + g + ">" : "<...>";
117
117
  } catch {
118
118
  return "<...>";
119
119
  }
120
120
  }
121
121
  function c() {
122
- var e = X.A;
122
+ var e = Q.A;
123
123
  return e === null ? null : e.getOwner();
124
124
  }
125
- function l() {
125
+ function f() {
126
126
  return Error("react-stack-top-frame");
127
127
  }
128
128
  function o(e) {
129
- if (sr.call(e, "key")) {
130
- var f = Object.getOwnPropertyDescriptor(e, "key").get;
131
- if (f && f.isReactWarning) return !1;
129
+ if (ur.call(e, "key")) {
130
+ var g = Object.getOwnPropertyDescriptor(e, "key").get;
131
+ if (g && g.isReactWarning) return !1;
132
132
  }
133
133
  return e.key !== void 0;
134
134
  }
135
- function m(e, f) {
136
- function y() {
137
- J || (J = !0, console.error(
135
+ function m(e, g) {
136
+ function _() {
137
+ z || (z = !0, console.error(
138
138
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
139
- f
139
+ g
140
140
  ));
141
141
  }
142
- y.isReactWarning = !0, Object.defineProperty(e, "key", {
143
- get: y,
142
+ _.isReactWarning = !0, Object.defineProperty(e, "key", {
143
+ get: _,
144
144
  configurable: !0
145
145
  });
146
146
  }
147
- function E() {
148
- var e = n(this.type);
149
- return or[e] || (or[e] = !0, console.error(
147
+ function R() {
148
+ var e = s(this.type);
149
+ return cr[e] || (cr[e] = !0, console.error(
150
150
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
151
151
  )), e = this.props.ref, e !== void 0 ? e : null;
152
152
  }
153
- function b(e, f, y, j, M, k, Z, U) {
154
- return y = k.ref, e = {
153
+ function h(e, g, _, $, V, B, Z, rr) {
154
+ return _ = B.ref, e = {
155
155
  $$typeof: O,
156
156
  type: e,
157
- key: f,
158
- props: k,
159
- _owner: M
160
- }, (y !== void 0 ? y : null) !== null ? Object.defineProperty(e, "ref", {
157
+ key: g,
158
+ props: B,
159
+ _owner: V
160
+ }, (_ !== void 0 ? _ : null) !== null ? Object.defineProperty(e, "ref", {
161
161
  enumerable: !1,
162
- get: E
162
+ get: R
163
163
  }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
164
164
  configurable: !1,
165
165
  enumerable: !1,
@@ -179,206 +179,213 @@ function Dr() {
179
179
  configurable: !1,
180
180
  enumerable: !1,
181
181
  writable: !0,
182
- value: U
182
+ value: rr
183
183
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
184
184
  }
185
- function i(e, f, y, j, M, k, Z, U) {
186
- var w = f.children;
187
- if (w !== void 0)
188
- if (j)
189
- if (fr(w)) {
190
- for (j = 0; j < w.length; j++)
191
- g(w[j]);
192
- Object.freeze && Object.freeze(w);
185
+ function E(e, g, _, $, V, B, Z, rr) {
186
+ var P = g.children;
187
+ if (P !== void 0)
188
+ if ($)
189
+ if (fr(P)) {
190
+ for ($ = 0; $ < P.length; $++)
191
+ a(P[$]);
192
+ Object.freeze && Object.freeze(P);
193
193
  } else
194
194
  console.error(
195
195
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
196
196
  );
197
- else g(w);
198
- if (sr.call(f, "key")) {
199
- w = n(e);
200
- var q = Object.keys(f).filter(function(r) {
201
- return r !== "key";
197
+ else a(P);
198
+ if (ur.call(g, "key")) {
199
+ P = s(e);
200
+ var U = Object.keys(g).filter(function(dr) {
201
+ return dr !== "key";
202
202
  });
203
- j = 0 < q.length ? "{key: someKey, " + q.join(": ..., ") + ": ...}" : "{key: someKey}", cr[w + j] || (q = 0 < q.length ? "{" + q.join(": ..., ") + ": ...}" : "{}", console.error(
203
+ $ = 0 < U.length ? "{key: someKey, " + U.join(": ..., ") + ": ...}" : "{key: someKey}", ir[P + $] || (U = 0 < U.length ? "{" + U.join(": ..., ") + ": ...}" : "{}", console.error(
204
204
  `A props object containing a "key" prop is being spread into JSX:
205
205
  let props = %s;
206
206
  <%s {...props} />
207
207
  React keys must be passed directly to JSX without using spread:
208
208
  let props = %s;
209
209
  <%s key={someKey} {...props} />`,
210
- j,
211
- w,
212
- q,
213
- w
214
- ), cr[w + j] = !0);
210
+ $,
211
+ P,
212
+ U,
213
+ P
214
+ ), ir[P + $] = !0);
215
215
  }
216
- if (w = null, y !== void 0 && (u(y), w = "" + y), o(f) && (u(f.key), w = "" + f.key), "key" in f) {
217
- y = {};
218
- for (var Q in f)
219
- Q !== "key" && (y[Q] = f[Q]);
220
- } else y = f;
221
- return w && m(
222
- y,
216
+ if (P = null, _ !== void 0 && (u(_), P = "" + _), o(g) && (u(g.key), P = "" + g.key), "key" in g) {
217
+ _ = {};
218
+ for (var er in g)
219
+ er !== "key" && (_[er] = g[er]);
220
+ } else _ = g;
221
+ return P && m(
222
+ _,
223
223
  typeof e == "function" ? e.displayName || e.name || "Unknown" : e
224
- ), b(
224
+ ), h(
225
225
  e,
226
- w,
227
- k,
228
- M,
226
+ P,
227
+ B,
228
+ V,
229
229
  c(),
230
- y,
230
+ _,
231
231
  Z,
232
- U
232
+ rr
233
233
  );
234
234
  }
235
- function g(e) {
235
+ function a(e) {
236
236
  typeof e == "object" && e !== null && e.$$typeof === O && e._store && (e._store.validated = 1);
237
237
  }
238
- var R = jr, O = Symbol.for("react.transitional.element"), S = Symbol.for("react.portal"), p = Symbol.for("react.fragment"), A = Symbol.for("react.strict_mode"), C = Symbol.for("react.profiler"), Y = Symbol.for("react.consumer"), x = Symbol.for("react.context"), V = Symbol.for("react.forward_ref"), ir = Symbol.for("react.suspense"), lr = Symbol.for("react.suspense_list"), tr = Symbol.for("react.memo"), B = Symbol.for("react.lazy"), T = Symbol.for("react.activity"), nr = Symbol.for("react.client.reference"), X = R.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, sr = Object.prototype.hasOwnProperty, fr = Array.isArray, z = console.createTask ? console.createTask : function() {
238
+ var v = wr, O = Symbol.for("react.transitional.element"), p = Symbol.for("react.portal"), S = Symbol.for("react.fragment"), N = Symbol.for("react.strict_mode"), w = Symbol.for("react.profiler"), F = Symbol.for("react.consumer"), A = Symbol.for("react.context"), C = Symbol.for("react.forward_ref"), x = Symbol.for("react.suspense"), L = Symbol.for("react.suspense_list"), H = Symbol.for("react.memo"), J = Symbol.for("react.lazy"), T = Symbol.for("react.activity"), or = Symbol.for("react.client.reference"), Q = v.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, ur = Object.prototype.hasOwnProperty, fr = Array.isArray, X = console.createTask ? console.createTask : function() {
239
239
  return null;
240
240
  };
241
- R = {
241
+ v = {
242
242
  "react-stack-bottom-frame": function(e) {
243
243
  return e();
244
244
  }
245
245
  };
246
- var J, or = {}, D = R["react-stack-bottom-frame"].bind(
247
- R,
248
- l
249
- )(), ur = z(a(l)), cr = {};
250
- rr.Fragment = p, rr.jsx = function(e, f, y, j, M) {
251
- var k = 1e4 > X.recentlyCreatedOwnerStacks++;
252
- return i(
246
+ var z, cr = {}, W = v["react-stack-bottom-frame"].bind(
247
+ v,
248
+ f
249
+ )(), ar = X(i(f)), ir = {};
250
+ nr.Fragment = S, nr.jsx = function(e, g, _, $, V) {
251
+ var B = 1e4 > Q.recentlyCreatedOwnerStacks++;
252
+ return E(
253
253
  e,
254
- f,
255
- y,
254
+ g,
255
+ _,
256
256
  !1,
257
- j,
258
- M,
259
- k ? Error("react-stack-top-frame") : D,
260
- k ? z(a(e)) : ur
257
+ $,
258
+ V,
259
+ B ? Error("react-stack-top-frame") : W,
260
+ B ? X(i(e)) : ar
261
261
  );
262
- }, rr.jsxs = function(e, f, y, j, M) {
263
- var k = 1e4 > X.recentlyCreatedOwnerStacks++;
264
- return i(
262
+ }, nr.jsxs = function(e, g, _, $, V) {
263
+ var B = 1e4 > Q.recentlyCreatedOwnerStacks++;
264
+ return E(
265
265
  e,
266
- f,
267
- y,
266
+ g,
267
+ _,
268
268
  !0,
269
- j,
270
- M,
271
- k ? Error("react-stack-top-frame") : D,
272
- k ? z(a(e)) : ur
269
+ $,
270
+ V,
271
+ B ? Error("react-stack-top-frame") : W,
272
+ B ? X(i(e)) : ar
273
273
  );
274
274
  };
275
- }()), rr;
275
+ }()), nr;
276
276
  }
277
- var Rr;
278
- function xr() {
279
- return Rr || (Rr = 1, process.env.NODE_ENV === "production" ? ar.exports = Nr() : ar.exports = Dr()), ar.exports;
277
+ var Sr;
278
+ function Dr() {
279
+ return Sr || (Sr = 1, process.env.NODE_ENV === "production" ? lr.exports = kr() : lr.exports = Nr()), lr.exports;
280
280
  }
281
- var pr = xr();
282
- const F = () => {
283
- }, Fr = Cr({
281
+ var yr = Dr();
282
+ const y = () => {
283
+ }, Ar = Pr({
284
284
  ref: null,
285
- watch: F,
285
+ watch: y,
286
286
  actions: {
287
- reset: F,
288
- resetField: F,
289
- setValue: F,
290
- getValues: F,
291
- getErrors: F,
292
- getFieldStates: F,
293
- getFormStates: F,
294
- setError: F,
295
- clearError: F,
296
- clearErrors: F,
297
- checkValidity: F,
298
- getNumberFields: F,
299
- getFieldValidity: F,
300
- getDefaultValues: F,
301
- setFieldState: F,
302
- resetFieldState: F,
303
- getControlledFields: F
287
+ subscribe: y,
288
+ reset: y,
289
+ trigger: y,
290
+ reload: y,
291
+ resetField: y,
292
+ setValue: y,
293
+ getValues: y,
294
+ getErrors: y,
295
+ getFieldStates: y,
296
+ getFormState: y,
297
+ setError: y,
298
+ clearError: y,
299
+ clearErrors: y,
300
+ checkValidity: y,
301
+ getFieldValidity: y,
302
+ getDefaultValues: y,
303
+ setFieldState: y,
304
+ triggerFieldBlur: y,
305
+ resetFieldState: y,
306
+ getControlledFields: y,
307
+ setFormState: y,
308
+ getEvents: y,
309
+ getWatchEvents: y,
310
+ addGroups: y
304
311
  },
305
- registerController: F,
306
- registerHookWatcher: F,
307
- lastReloadedAt: F,
308
- loadFormValues: F,
309
- getWatchValue: F,
312
+ registerController: y,
313
+ registerHookWatcher: y,
314
+ lastReloadedAt: y,
315
+ loadFormValues: y,
316
+ getWatchValue: y,
310
317
  channels: {}
311
- }), Ar = () => Pr(Fr), qr = ({
312
- id: n,
318
+ }), Tr = () => $r(Ar), qr = ({
319
+ id: s,
313
320
  control: t,
314
321
  method: u,
315
- action: a,
322
+ action: i,
316
323
  children: c,
317
- onChange: l,
324
+ onChange: f,
318
325
  onBlur: o,
319
326
  onSubmit: m = () => {
320
327
  },
321
- onInput: E = () => {
328
+ onInput: R = () => {
322
329
  },
323
- onReset: b = () => {
330
+ onReset: h = () => {
324
331
  },
325
- numberFields: i = [],
326
- className: g,
327
- ...R
332
+ numberFields: E = [],
333
+ className: a,
334
+ ...v
328
335
  }) => {
329
- const O = d(
330
- (S) => {
331
- t.ref && (t.ref.current = S, t.ref.current && t.initForm());
336
+ const O = b(
337
+ (p) => {
338
+ t.ref && (t.ref.current = p, t.ref.current && t.initForm());
332
339
  },
333
340
  [t]
334
341
  );
335
- return Er(() => {
336
- let S = () => {
337
- }, p = () => {
342
+ return hr(() => {
343
+ let p = () => {
344
+ }, S = () => {
338
345
  };
339
- return l && (S = t.channels.subscribe("onChange", l)), o && (p = t.channels.subscribe("onBlur", o)), () => {
340
- S(), p();
346
+ return f && (p = t.channels.subscribe("onChange", f)), o && (S = t.channels.subscribe("onBlur", o)), () => {
347
+ p(), S();
341
348
  };
342
- }, [t.lastReloadedAt]), /* @__PURE__ */ pr.jsx(Fr.Provider, { value: t, children: /* @__PURE__ */ pr.jsx(
349
+ }, [t.lastReloadedAt]), /* @__PURE__ */ yr.jsx(Ar.Provider, { value: t, children: /* @__PURE__ */ yr.jsx(
343
350
  "form",
344
351
  {
345
- id: n,
352
+ id: s,
346
353
  ref: O,
347
- action: a,
354
+ action: i,
348
355
  method: u,
349
- className: g,
350
- onInput: E,
351
- onSubmit: (S) => {
352
- u || S.preventDefault();
353
- const p = t.loadFormValues();
354
- m(p);
356
+ className: a,
357
+ onInput: R,
358
+ onSubmit: (p) => {
359
+ u || p.preventDefault();
360
+ const S = t.loadFormValues();
361
+ m(S);
355
362
  },
356
- onChange: (S) => {
357
- const p = S.target.name;
358
- !p || t.actions.getControlledFields().has(p) || t.actions.setValue(p, S.target.value);
363
+ onChange: (p) => {
364
+ const S = p.target.name;
365
+ !S || t.actions.getControlledFields().has(S) || t.actions.setValue(S, p.target.value);
359
366
  },
360
- onBlur: (S) => {
361
- const p = S.target.name;
362
- if (!p || t.actions.getControlledFields().has(p)) return;
363
- const A = S.target.value;
364
- t.channels.publish("onBlur", p, A, t.actions.getValues());
367
+ onBlur: (p) => {
368
+ const S = p.target.name;
369
+ if (!S || t.actions.getControlledFields().has(S)) return;
370
+ const N = p.target.value;
371
+ t.channels.publish("onBlur", S, N, t.actions.getValues()), t.triggerBlurWatchers(S);
365
372
  },
366
- onReset: (S) => {
367
- t.actions.reset(), b(S);
373
+ onReset: (p) => {
374
+ t.actions.reset(), h(p);
368
375
  },
369
- ...R,
376
+ ...v,
370
377
  children: c
371
378
  },
372
379
  t.lastReloadedAt
373
380
  ) });
374
- }, br = { isDirty: !1, isTouched: !1, error: null }, Sr = {
381
+ }, br = { isDirty: !1, isTouched: !1, error: null }, pr = {
375
382
  lastReset: null,
376
383
  isDirty: !1,
377
384
  isError: !1,
378
385
  errorFields: [],
379
386
  dirtyFields: [],
380
387
  touchedFields: []
381
- }, kr = {}, $r = [
388
+ }, xr = {}, Wr = [
382
389
  "badInput",
383
390
  "customError",
384
391
  "patternMismatch",
@@ -389,371 +396,403 @@ const F = () => {
389
396
  "tooShort",
390
397
  "typeMismatch",
391
398
  "valueMissing"
392
- ], N = (n = {}, t = "") => t.split(".").reduce((u, a) => u && u[a] !== void 0 ? u[a] : void 0, n), I = (n = {}, t = "", u) => {
393
- const a = Array.isArray(n) ? [...n] : { ...n };
394
- let c = a;
395
- const l = t.split(".");
396
- return l.forEach((o, m) => {
397
- m < l.length - 1 ? (c[o] || (c[o] = /^\d+$/.test(l[m + 1]) ? [] : {}), Array.isArray(c[o]) ? c[o] = [...c[o]] : c[o] = { ...c[o] }, c = c[o]) : c[o] = u;
398
- }), a;
399
- }, Wr = (n) => {
400
- let t = Array.isArray(n) ? [...n] : { ...n };
399
+ ], D = (s = {}, t = "") => t.split(".").reduce((u, i) => u && u[i] !== void 0 ? u[i] : void 0, s), Y = (s = {}, t = "", u) => {
400
+ const i = Array.isArray(s) ? [...s] : { ...s };
401
+ let c = i;
402
+ const f = t.split(".");
403
+ return f.forEach((o, m) => {
404
+ m < f.length - 1 ? (c[o] || (c[o] = /^\d+$/.test(f[m + 1]) ? [] : {}), Array.isArray(c[o]) ? c[o] = [...c[o]] : c[o] = { ...c[o] }, c = c[o]) : c[o] = u;
405
+ }), i;
406
+ }, Br = (s) => {
407
+ let t = Array.isArray(s) ? [...s] : { ...s };
401
408
  return Object.keys(t).forEach((u) => {
402
409
  if (u.includes(".")) {
403
- const a = N(t, u);
404
- t = I(t, u, a || ""), delete t[u];
410
+ const i = D(t, u);
411
+ t = Y(t, u, i || ""), delete t[u];
405
412
  }
406
413
  }), t;
407
- }, Ir = ["errors", "fieldStates", "formState"], G = (n) => Ir.some((t) => n.startsWith(t)) ? n : "values." + n, yr = (n) => {
408
- typeof n.setCustomValidity == "function" && n.setCustomValidity("");
409
- let t = n.validity, u = $r.find((a) => t[a]);
410
- if (u) return { type: u, message: n.validationMessage };
411
- }, Tr = (n = /* @__PURE__ */ new Set(), t = {}, u = "") => Object.keys(t || {}).reduce((a, c) => {
412
- const l = (t || {})[c];
413
- return n.has(u + c) ? [...a, ...Tr(n, l, u + c + ".")] : l != null && l.isDirty ? [...a, u + c] : a;
414
- }, []), _r = (n = /* @__PURE__ */ new Set(), t = {}, u = "") => Object.keys(t || {}).reduce((a, c) => {
415
- const l = (t || {})[c];
416
- return n.has(u + c) ? [...a, ..._r(n, l, u + c + ".")] : l != null && l.isTouched ? [...a, u + c] : a;
417
- }, []), Or = (n = /* @__PURE__ */ new Set(), t = {}, u = "") => Object.keys(t || {}).reduce((a, c) => {
418
- const l = (t || {})[c];
419
- return n.has(u + c) ? [...a, ...Or(n, l, u + c + ".")] : l ? [...a, u + c] : a;
420
- }, []), Gr = ({ control: n, name: t, compute: u }) => {
421
- const { getWatchValue: a, registerHookWatcher: c } = n || Ar(), l = a({ name: t, compute: u }), [o, m] = er(l);
422
- return Er(() => c({ name: t, compute: u, value: o, setValue: m }), []), o;
423
- }, Mr = ({ control: n, name: t, defaultValue: u }) => {
424
- const { actions: a, registerController: c, channels: l, getWatchValue: o } = n || Ar(), m = W(), E = W(), b = N(a.getDefaultValues(), t) || u || "", [i, g] = er(b), [R, O] = er({}), S = d(
425
- (A, { shouldDirty: C = !0, shouldOnChange: Y = !0 } = {}) => {
426
- var V;
427
- let x = A;
428
- ((V = A == null ? void 0 : A.target) == null ? void 0 : V.value) !== void 0 && (x = A.target.value), g(x), a.setValue(t, x, { shouldDirty: C, shouldOnChange: Y });
414
+ }, Ir = ["errors", "fieldStates", "formState"], q = (s) => Ir.some((t) => s.startsWith(t)) ? s : "values." + s, Fr = (s) => {
415
+ typeof s.setCustomValidity == "function" && s.setCustomValidity("");
416
+ let t = s.validity, u = Wr.find((i) => t[i]);
417
+ if (u) return { type: u, message: s.validationMessage };
418
+ }, _r = (s = /* @__PURE__ */ new Set(), t = {}, u = "") => Object.keys(t || {}).reduce((i, c) => {
419
+ const f = (t || {})[c];
420
+ return s.has(u + c) ? [...i, ..._r(s, f, u + c + ".")] : f != null && f.isDirty ? [...i, u + c] : i;
421
+ }, []), Or = (s = /* @__PURE__ */ new Set(), t = {}, u = "") => Object.keys(t || {}).reduce((i, c) => {
422
+ const f = (t || {})[c];
423
+ return s.has(u + c) ? [...i, ...Or(s, f, u + c + ".")] : f != null && f.isTouched ? [...i, u + c] : i;
424
+ }, []), jr = (s = /* @__PURE__ */ new Set(), t = {}, u = "") => Object.keys(t || {}).reduce((i, c) => {
425
+ const f = (t || {})[c];
426
+ return s.has(u + c) ? [...i, ...jr(s, f, u + c + ".")] : f ? [...i, u + c] : i;
427
+ }, []), Mr = ({ control: s, name: t, defaultValue: u, shouldUnRegister: i }) => {
428
+ const { actions: c, registerController: f, channels: o, getWatchValue: m, triggerBlurWatchers: R } = s || Tr(), h = M(), E = M(), a = D(c.getDefaultValues(), t) || u || "", [v, O] = sr(a), [p, S] = sr({}), N = b(
429
+ (F, { shouldDirty: A = !0, shouldOnChange: C = !0 } = {}) => {
430
+ var L;
431
+ let x = F;
432
+ ((L = F == null ? void 0 : F.target) == null ? void 0 : L.value) !== void 0 && (x = F.target.value), O(x), c.setValue(t, x, { shouldDirty: A, shouldOnChange: C });
429
433
  },
430
- [a.setValue]
431
- ), p = d((A) => {
432
- const C = a.getValues(), Y = A ?? N(C, t);
433
- l.publish("onBlur", t, Y, C);
434
+ [c.setValue]
435
+ ), w = b((F) => {
436
+ const A = c.getValues(), C = F ?? D(A, t);
437
+ o.publish("onBlur", t, C, A), R(t);
434
438
  }, []);
435
- return Er(() => {
436
- const A = c(t, g);
439
+ return hr(() => {
440
+ const F = f(t, O, { shouldUnRegister: i });
437
441
  return () => {
438
- A(), E.current && E.current();
442
+ F(), E.current && E.current();
439
443
  };
440
- }, []), new Proxy(
441
- { ref: m, name: t, defaultValue: b, value: i, onChange: S, onBlur: p, fieldState: R },
444
+ }, [i]), new Proxy(
445
+ { ref: h, name: t, defaultValue: a, value: v, onChange: N, onBlur: w, fieldState: p },
442
446
  {
443
- get(A, C, Y) {
444
- return typeof C == "string" && C === "fieldState" && (E.current && E.current(), E.current = a.subscribe(`fieldStates.${t}`, () => {
445
- O(o({ name: `fieldStates.${t}` }));
446
- })), Reflect.get(A, C, Y);
447
+ get(F, A, C) {
448
+ return typeof A == "string" && A === "fieldState" && (E.current && E.current(), E.current = c.subscribe(`fieldStates.${t}`, () => {
449
+ S(m({ name: `fieldStates.${t}` }));
450
+ })), Reflect.get(F, A, C);
447
451
  }
448
452
  }
449
453
  );
450
454
  }, Jr = ({
451
- name: n,
455
+ name: s,
452
456
  control: t,
453
- defaultValue: u,
454
- render: a = ({ ref: c, name: l, defaultValue: o, value: m, onChange: E, onBlur: b, fieldState: i }) => null
457
+ shouldUnRegister: u,
458
+ defaultValue: i,
459
+ render: c = ({ ref: f, name: o, defaultValue: m, value: R, onChange: h, onBlur: E, fieldState: a }) => null
455
460
  }) => {
456
- const c = Mr({ name: n, defaultValue: u, control: t });
457
- return a(c);
461
+ const f = Mr({ name: s, defaultValue: i, shouldUnRegister: u, control: t });
462
+ return c(f);
458
463
  }, Yr = () => {
459
- const [n, t] = er(), u = d(() => t((/* @__PURE__ */ new Date()).toString()), []);
460
- return [n, u];
461
- }, Vr = () => {
462
- const [, n] = er({});
463
- return d(() => n({}), []);
464
- }, Lr = ({ channels: n, getWatchValue: t }) => {
465
- const u = Vr(), a = d((o) => {
464
+ const [s, t] = sr(), u = b(() => t((/* @__PURE__ */ new Date()).toString()), []);
465
+ return [s, u];
466
+ }, Lr = () => {
467
+ const [, s] = sr({});
468
+ return b(() => s({}), []);
469
+ }, Vr = ({ channels: s, getWatchValue: t }) => {
470
+ const u = Lr(), i = b((o, m = "onChange") => {
466
471
  if (!o)
467
- return n.subscribeWatch("values", () => u()), t();
472
+ return s.subscribeWatch("values", () => u()), t();
468
473
  if (typeof o == "string") {
469
- const m = G(o);
470
- n.subscribeWatch(m, (E, b) => {
471
- E !== b && u();
474
+ let R = q(o);
475
+ m === "onBlur" && (R = `blur.${R}`), s.subscribeWatch(R, (h, E) => {
476
+ h !== E && u();
472
477
  });
473
478
  }
474
- return Array.isArray(o) && o.forEach((m) => {
475
- const E = G(m);
476
- n.subscribeWatch(E, (b, i) => {
477
- b !== i && u();
479
+ return Array.isArray(o) && o.forEach((R) => {
480
+ let h = q(R);
481
+ m === "onBlur" && (h = `blur.${h}`), s.subscribeWatch(h, (E, a) => {
482
+ E !== a && u();
478
483
  });
479
484
  }), t({ name: o });
480
- }, []), c = d(({ name: o, compute: m, setValue: E }) => {
485
+ }, []), c = b(({ name: o, compute: m, setValue: R, mode: h = "onChange" }) => {
481
486
  if (typeof m == "function")
482
- return n.subscribe("values", () => {
483
- const i = t({ compute: m });
484
- E(i);
487
+ return s.subscribe("values", () => {
488
+ const a = t({ compute: m });
489
+ R(a);
485
490
  });
486
491
  if (!o)
487
- return n.subscribe("values", () => {
488
- E(t());
492
+ return s.subscribe("values", () => {
493
+ R(t());
489
494
  });
490
495
  if (typeof o == "string") {
491
- const b = G(o);
492
- return n.subscribe(b, () => {
493
- const g = t({ name: o });
494
- E(g);
496
+ let E = q(o);
497
+ return h === "onBlur" && (E = `blur.${E}`), s.subscribe(E, () => {
498
+ const v = t({ name: o });
499
+ R(v);
495
500
  });
496
501
  }
497
502
  if (Array.isArray(o)) {
498
- const b = [];
499
- return o.forEach((i) => {
500
- const g = G(i), R = n.subscribe(g, () => {
501
- const O = t({ name: o });
502
- E(O);
503
+ const E = [];
504
+ return o.forEach((a) => {
505
+ let v = q(a);
506
+ h === "onBlur" && (v = `blur.${v}`);
507
+ const O = s.subscribe(v, () => {
508
+ const p = t({ name: o });
509
+ R(p);
503
510
  });
504
- b.push(R);
505
- }), () => b.forEach((i) => i());
511
+ E.push(O);
512
+ }), () => E.forEach((a) => a());
506
513
  }
507
514
  throw new Error("Parameters of name must be string or array of string or compute must be a function");
508
- }, []), l = d((o, m) => {
515
+ }, []), f = b((o, m, R = "onChange") => {
509
516
  if (!o)
510
- return n.subscribe("values", () => m(t()));
517
+ return s.subscribe("values", () => m(t()));
511
518
  if (["onChange", "onBlur"].includes(o))
512
- return n.subscribe(o, m);
519
+ return s.subscribe(o, m);
513
520
  if (typeof o == "string") {
514
- const E = G(o);
515
- return n.subscribe(E, () => m(t({ name: o })));
521
+ let h = q(o);
522
+ return R === "onBlur" && (h = `blur.${h}`), s.subscribe(h, () => m(t({ name: o })));
516
523
  }
517
524
  if (Array.isArray(o)) {
518
- const E = [];
519
- return o.forEach((b) => {
520
- const i = G(b), g = n.subscribe(i, () => {
525
+ const h = [];
526
+ return o.forEach((E) => {
527
+ let a = q(E);
528
+ R === "onBlur" && (a = `blur.${a}`);
529
+ const v = s.subscribe(a, () => {
521
530
  m(t({ name: o }));
522
531
  });
523
- E.push(g);
524
- }), () => E.forEach((b) => b());
532
+ h.push(v);
533
+ }), () => h.forEach((E) => E());
525
534
  }
526
535
  throw new Error("Parameters of name must be string or array of string");
527
536
  }, []);
528
- return { watch: a, registerHookWatcher: c, getWatchValue: t, subscribe: l };
529
- }, Br = ({ getWatchValue: n }) => {
530
- const t = W(/* @__PURE__ */ new Map()), u = W(/* @__PURE__ */ new Map()), a = d(() => u.current, []), c = d(() => t.current, []), l = d(() => {
537
+ return { watch: i, registerHookWatcher: c, getWatchValue: t, subscribe: f };
538
+ }, Ur = ({ getWatchValue: s }) => {
539
+ const t = M(/* @__PURE__ */ new Map()), u = M(/* @__PURE__ */ new Map()), i = b(() => u.current, []), c = b(() => t.current, []), f = b(() => {
531
540
  t.current.clear(), u.current.clear();
532
- }, []), o = d((i, ...g) => {
533
- const R = t.current.get(i), O = u.current.get(i);
534
- R && R.forEach((S) => S(...g)), O && O.forEach((S) => S(...g)), t.current.forEach((S, p) => {
535
- if (p !== i && i.startsWith(p)) {
536
- const A = n({ name: p.replace("values.", "").replace("values", "") });
537
- S.forEach((C) => C(I(A, i.replace(`${p}.`, ""), g[0])));
538
- }
539
- }), u.current.forEach((S, p) => {
540
- if (p !== i && i.startsWith(p)) {
541
- const A = n({ name: p.replace("values.", "").replace("values", "") });
542
- S.forEach((C) => C(I(A, i.replace(`${p}.`, ""), g[0])));
541
+ }, []), o = (a) => a.replace("values.", "").replace("values", ""), m = b((a, ...v) => {
542
+ const O = a.split(".");
543
+ O.forEach((p, S) => {
544
+ const N = O.slice(0, O.length - S).join("."), w = t.current.get(N), F = u.current.get(N);
545
+ if (S > 0) {
546
+ const A = v[0], C = s({ name: o(N) });
547
+ v = [Y(C, a.replace(N, ""), A)];
543
548
  }
549
+ w && w.forEach((A) => A(...v)), F && F.forEach((A) => A(...v));
544
550
  });
545
- }, []), m = d((i) => {
546
- t.current.forEach((g, R) => {
547
- R.startsWith(i) && g.forEach((O) => O(n({ name: R.replace("values.", "").replace("values", "") })));
548
- }), u.current.forEach((g, R) => {
549
- R.startsWith(i) && g.forEach((O) => O(n({ name: R.replace("values.", "").replace("values", "") })));
550
- });
551
- }, []), E = d((i, g) => (t.current.has(i) || t.current.set(i, /* @__PURE__ */ new Set()), t.current.get(i).add(g), () => {
552
- var R;
553
- return (R = t.current.get(i)) == null ? void 0 : R.delete(g);
554
- }), []), b = d((i, g) => {
555
- u.current.has(i) || (u.current.set(i, /* @__PURE__ */ new Set()), u.current.get(i).add(g));
551
+ }, []), R = b((a, { trickle: v = !1, bubble: O = !1 }) => {
552
+ const p = a.split(".");
553
+ let S = [s({ name: o(a) })];
554
+ p.forEach((N, w) => {
555
+ const F = p.slice(0, p.length - w).join("."), A = t.current.get(F), C = u.current.get(F);
556
+ if (w > 0 && O) {
557
+ const x = S[0], L = s({ name: o(F) });
558
+ S = [Y(L, a.replace(F, ""), x)];
559
+ }
560
+ A && (w === 0 || O) && A.forEach((x) => x(...S)), C && (w === 0 || O) && C.forEach((x) => x(...S));
561
+ }), v && (t.current.forEach((N, w) => {
562
+ w.startsWith(a) && N.forEach((F) => F(s({ name: o(w) })));
563
+ }), u.current.forEach((N, w) => {
564
+ w.startsWith(a) && N.forEach((F) => F(s({ name: o(w) })));
565
+ }));
566
+ }, []), h = b((a, v) => (t.current.has(a) || t.current.set(a, /* @__PURE__ */ new Set()), t.current.get(a).add(v), () => {
567
+ var O;
568
+ return (O = t.current.get(a)) == null ? void 0 : O.delete(v);
569
+ }), []), E = b((a, v) => {
570
+ u.current.has(a) || (u.current.set(a, /* @__PURE__ */ new Set()), u.current.get(a).add(v));
556
571
  }, []);
557
- return { reset: l, publish: o, subscribe: E, subscribeWatch: b, getEvents: c, getWatchEvents: a, trigger: m };
558
- }, zr = ({ defaultValues: n = kr, shouldUnRegister: t = !1, groups: u = [] } = {}) => {
559
- const [a, c] = Yr(), l = W(), o = W(/* @__PURE__ */ new Map()), m = W({}), E = W({}), b = W({ ...Sr }), i = W({ ...n }), g = W({ ...n }), R = W(new Set(u)), O = d((r, s = g.current) => Object.keys(s).reduce((h, v) => {
560
- if (typeof s[v] == "object")
561
- return { ...h, [v]: O(r, s[v]) };
562
- const P = { ...r ? {} : E.current[v] || {}, ...br };
563
- return { ...h, [v]: P };
564
- }, {}), []), S = d(
565
- (r = {}, { clearCustomFormStates: s = !1, clearCustomFieldStates: h = !1, groups: v = R.current } = {}) => {
566
- g.current = { ...g.current, ...r }, i.current = { ...g.current }, o.current.forEach((P, _) => {
567
- P(N(g.current, _) ?? "");
568
- }), m.current = {}, R.current = new Set(v), o.current = /* @__PURE__ */ new Map(), b.current = { ...s ? {} : b.current, ...Sr }, E.current = O(h), T.reset(), c();
572
+ return { reset: f, publish: m, subscribe: h, subscribeWatch: E, getEvents: c, getWatchEvents: i, trigger: R };
573
+ }, zr = ({ defaultValues: s = xr, shouldUnRegister: t = !1, groups: u = [] } = {}) => {
574
+ const [i, c] = Yr(), f = M(), o = M(/* @__PURE__ */ new Map()), m = M({}), R = M({}), h = M({ ...pr }), E = M({ ...s }), a = M({ ...s }), v = M(new Set(u)), O = b((r, n = a.current) => Object.keys(n).reduce((d, l) => {
575
+ if (typeof n[l] == "object")
576
+ return { ...d, [l]: O(r, n[l]) };
577
+ const k = { ...r ? {} : R.current[l] || {}, ...br };
578
+ return { ...d, [l]: k };
579
+ }, {}), []), p = b(
580
+ (r = {}, { clearCustomFormStates: n = !1, clearCustomFieldStates: d = !1, groups: l = v.current } = {}) => {
581
+ a.current = { ...a.current, ...r }, E.current = { ...a.current }, o.current.forEach((k, j) => {
582
+ k(D(a.current, j) ?? "");
583
+ }), m.current = {}, v.current = new Set(l), o.current = /* @__PURE__ */ new Map(), h.current = { ...n ? {} : h.current, ...pr }, R.current = O(d), T.reset(), c();
569
584
  },
570
585
  []
571
- ), p = d(() => {
572
- let r = Object.fromEntries(new FormData(l.current));
573
- o.current.forEach((h, v) => {
574
- r = I(r, v, N(i.current, v));
586
+ ), S = b(() => {
587
+ let r = Object.fromEntries(new FormData(f.current));
588
+ o.current.forEach((d, l) => {
589
+ r = Y(r, l, D(E.current, l));
575
590
  });
576
- let s = { ...i.current, ...r };
577
- return Wr(s);
578
- }, []), A = d((r) => yr(r.target), []), C = d(() => g.current, []), Y = d(() => o.current, []), x = d((r, s) => s ? Array.isArray(s) ? s.reduce((h, v) => ({ ...h, [v]: N(r, v) }), {}) : N(r, s) : { ...r }, []), V = d((r) => x(i.current, r), [x]), ir = d((r) => x(m.current, r), [x]), lr = d((r) => x(E.current, r), [x]), tr = d(
579
- (r) => x({ ...b.current, lastReset: a }, r),
580
- [a]
581
- ), B = d(({ name: r, compute: s } = {}) => !r && !s || r === "values" ? V() : typeof s == "function" ? s(V()) : Array.isArray(r) ? r.reduce((h, v) => ({ ...h, [v]: B({ name: v }) }), {}) : N(
591
+ let n = { ...E.current, ...r };
592
+ return Br(n);
593
+ }, []), N = b((r) => Fr(r.target), []), w = b(() => a.current, []), F = b(() => o.current, []), A = b((r, n) => n ? Array.isArray(n) ? n.reduce((d, l) => ({ ...d, [l]: D(r, l) }), {}) : D(r, n) : { ...r }, []), C = b((r) => A(E.current, r), [A]), x = b((r) => A(m.current, r), [A]), L = b((r) => A(R.current, r), [A]), H = b(
594
+ (r) => A({ ...h.current, lastReset: i }, r),
595
+ [i]
596
+ ), J = b(({ name: r, compute: n } = {}) => !r && !n || r === "values" ? C() : typeof n == "function" ? n(C()) : Array.isArray(r) ? r.reduce((d, l) => ({ ...d, [l]: J({ name: l }) }), {}) : D(
582
597
  {
583
- ...i.current,
598
+ ...E.current,
584
599
  errors: m.current,
585
- fieldStates: E.current,
586
- formState: tr()
600
+ fieldStates: R.current,
601
+ formState: H()
587
602
  },
588
603
  r
589
- ), []), T = Br({ getWatchValue: B }), { watch: nr, registerHookWatcher: X, subscribe: sr } = Lr({ getWatchValue: B, channels: T }), fr = d((r, s) => {
590
- const h = b.current, v = N(h, r);
591
- v !== s && (b.current = I(b.current, r, s), T.publish(`formState.${r}`, s, v));
592
- }, []), z = d((r, s) => {
593
- D(r, "error", s);
594
- }, []), J = d((r) => {
595
- D(r, "error", null);
596
- }, []), or = d(() => {
597
- b.current.isError && Object.keys(m.current).forEach((r) => J(r));
598
- }, []), D = d((r, s, h) => {
604
+ ), []), T = Ur({ getWatchValue: J }), { watch: or, registerHookWatcher: Q, subscribe: ur } = Vr({ getWatchValue: J, channels: T }), fr = b((r, n) => {
605
+ typeof n == "function" && (n = n(H(r)));
606
+ const d = h.current, l = D(d, r);
607
+ l !== n && (h.current = Y(h.current, r, n), T.publish(`formState.${r}`, n, l));
608
+ }, []), X = b((r, n) => {
609
+ typeof n == "function" && (n = n(x(r))), W(r, "error", n);
610
+ }, []), z = b((r) => {
611
+ W(r, "error", null);
612
+ }, []), cr = b(() => {
613
+ h.current.isError && Object.keys(m.current).forEach((r) => z(r));
614
+ }, []), W = b((r, n, d) => {
599
615
  try {
600
- if (typeof h == "function" && (h = h(B({ name: r }))), R.current.has(r))
601
- if (typeof h == "object" && h !== null) {
602
- Object.keys(h).forEach((_) => {
603
- D(`${r}.${_}`, s, h[_]);
616
+ if (typeof d == "function" && (d = d(L(r))), v.current.has(r))
617
+ if (typeof d == "object" && d !== null) {
618
+ Object.keys(d).forEach((j) => {
619
+ W(`${r}.${j}`, n, d[j]);
604
620
  });
605
621
  return;
606
622
  } else
607
623
  return console.error(
608
624
  `Cannot set primitive value for nested parent field "${r}". Please set value for its children or provide an object.`
609
625
  );
610
- const v = N(E.current, r) || { ...br }, P = N(v, s);
611
- if (P !== h) {
612
- if (E.current = I(E.current, `${r}.${s}`, h), T.publish(`fieldStates.${r}.${s}`, h, P), s === "error") {
613
- const _ = N(m.current, r), L = h || null;
614
- _ !== L && (m.current = I(m.current, r, L), T.publish(`errors.${r}`, L, _));
615
- const $ = Or(R.current, m.current);
616
- b.current.errorFields = $, T.publish("formState.errorFields", $);
617
- const H = $.length > 0;
618
- if (b.current.isError !== H) {
619
- const gr = b.current.isError;
620
- b.current.isError = H, T.publish("formState.isError", H, gr);
626
+ const l = D(R.current, r) || { ...br }, k = D(l, n);
627
+ if (k !== d) {
628
+ if (R.current = Y(R.current, `${r}.${n}`, d), T.publish(`fieldStates.${r}.${n}`, d, k), n === "error") {
629
+ const j = D(m.current, r), G = d || null;
630
+ j !== G && (m.current = Y(m.current, r, G), T.publish(`errors.${r}`, G, j));
631
+ const I = jr(v.current, m.current);
632
+ h.current.errorFields = I, T.publish("formState.errorFields", I);
633
+ const K = I.length > 0;
634
+ if (h.current.isError !== K) {
635
+ const Er = h.current.isError;
636
+ h.current.isError = K, T.publish("formState.isError", K, Er);
621
637
  }
622
638
  }
623
- if (s === "isDirty") {
624
- const _ = Tr(R.current, E.current);
625
- b.current.dirtyFields = _, T.publish("formState.dirtyFields", _);
626
- const L = _.length > 0;
627
- if (b.current.isDirty !== L) {
628
- const $ = b.current.isDirty;
629
- b.current.isDirty = L, T.publish("formState.isDirty", L, $);
639
+ if (n === "isDirty") {
640
+ const j = _r(v.current, R.current);
641
+ h.current.dirtyFields = j, T.publish("formState.dirtyFields", j);
642
+ const G = j.length > 0;
643
+ if (h.current.isDirty !== G) {
644
+ const I = h.current.isDirty;
645
+ h.current.isDirty = G, T.publish("formState.isDirty", G, I);
630
646
  }
631
647
  }
632
- if (s === "isTouched") {
633
- const _ = _r(R.current, E.current);
634
- b.current.touchedFields = _, T.publish("formState.touchedFields", _);
648
+ if (n === "isTouched") {
649
+ const j = Or(v.current, R.current);
650
+ h.current.touchedFields = j, T.publish("formState.touchedFields", j);
635
651
  }
636
652
  }
637
- } catch (v) {
638
- console.log(v);
653
+ } catch (l) {
654
+ console.log(l);
639
655
  }
640
- }, []), ur = d((r) => {
641
- D(r, "isDirty", !1), D(r, "isTouched", !1), D(r, "error", !1);
642
- }, []), cr = d((r) => {
643
- const s = yr(r.target);
644
- s ? z(r.target.name, s) : J(r.target.name);
645
- }, []), e = d((r, s, { shouldDirty: h = !0, shouldOnChange: v = !0 } = {}) => {
646
- if (typeof s == "function" && (s = s(V(r))), R.current.has(r)) {
647
- typeof s == "object" && s !== null ? Object.keys(s).forEach(($) => {
648
- e(`${r}.${$}`, s[$], { shouldDirty: h, shouldOnChange: v });
656
+ }, []), ar = b((r) => {
657
+ W(r, "isDirty", !1), W(r, "isTouched", !1), W(r, "error", !1);
658
+ }, []), ir = b((r) => {
659
+ const n = Fr(r.target);
660
+ n ? X(r.target.name, n) : z(r.target.name);
661
+ }, []), e = b((r, n, { shouldDirty: d = !0, shouldOnChange: l = !0 } = {}) => {
662
+ if (typeof n == "function" && (n = n(C(r))), v.current.has(r)) {
663
+ typeof n == "object" && n !== null ? Object.keys(n).forEach((I) => {
664
+ e(`${r}.${I}`, n[I], { shouldDirty: d, shouldOnChange: l });
649
665
  }) : console.error(
650
666
  `Cannot set primitive value for nested parent field "${r}". Please set value for its children or provide an object.`
651
667
  );
652
668
  return;
653
669
  }
654
- const P = N(i.current, r);
655
- if (s === P) return;
656
- i.current = I(i.current, r, s), T.publish(`values.${r}`, s, P);
657
- const _ = o.current.get(r);
658
- if (_ && _(s), r.includes(".")) {
659
- const $ = r.split("."), H = $.findIndex(
660
- (gr, wr) => !R.current.has($.slice(0, wr + 1).join("."))
670
+ const k = D(E.current, r);
671
+ if (n === k) return;
672
+ E.current = Y(E.current, r, n), T.publish(`values.${r}`, n, k);
673
+ const j = o.current.get(r);
674
+ if (j && j(n), r.includes(".")) {
675
+ const I = r.split("."), K = I.findIndex(
676
+ (Er, Cr) => !v.current.has(I.slice(0, Cr + 1).join("."))
661
677
  );
662
- H !== -1 && (r = $.slice(0, H + 1).join("."));
678
+ K !== -1 && (r = I.slice(0, K + 1).join("."));
663
679
  }
664
- s && D(r, "isTouched", !0);
665
- const L = s !== (N(g.current, r) || "");
666
- h && D(r, "isDirty", L), v && T.publish("onChange", r, s, P);
667
- }, []), f = d((r) => {
668
- const s = r.split(".");
669
- let h = "";
670
- s.forEach((v, P) => {
671
- P < s.length - 1 && (h = h ? `${h}.${v}` : v, R.current.add(h));
680
+ n && W(r, "isTouched", !0);
681
+ const G = n !== (D(a.current, r) || "");
682
+ d && W(r, "isDirty", G), l && T.publish("onChange", r, n, k);
683
+ }, []), g = b((r) => {
684
+ const n = r.split(".");
685
+ let d = "";
686
+ n.forEach((l, k) => {
687
+ k < n.length - 1 && (d = d ? `${d}.${l}` : l, v.current.add(d));
672
688
  });
673
- }, []), y = d((r) => {
674
- Array.isArray(r) ? r.forEach((s) => f(s + ".")) : f(r + ".");
675
- }, []), j = d((r = "", s) => (o.current.set(r, s), E.current = I(E.current, r, { ...br }), r.includes(".") && f(r), () => {
676
- t && o.current.delete(r);
677
- }), []), M = d((r, { keepError: s, keepDirty: h, keepTouched: v, defaultValue: P }) => {
678
- const _ = o.current.get(r);
679
- if (!_)
689
+ }, []), _ = b((r) => {
690
+ Array.isArray(r) ? r.forEach((n) => g(n + ".")) : g(r + ".");
691
+ }, []), $ = b(
692
+ (r = "", n, { shouldUnRegister: d = t } = {}) => {
693
+ if (!r) {
694
+ console.error("Controller must have a name");
695
+ return;
696
+ }
697
+ return o.current.set(r, n), R.current = Y(R.current, r, { ...br }), r.includes(".") && g(r), () => {
698
+ d && o.current.delete(r);
699
+ };
700
+ },
701
+ []
702
+ ), V = b((r, { keepError: n, keepDirty: d, keepTouched: l, defaultValue: k }) => {
703
+ const j = o.current.get(r);
704
+ if (!j)
680
705
  throw new Error(`Cannot reset "${r}" because it's uncontrolled field`);
681
- g.current = I(g.current, r, P), i.current = I(i.current, r, P), _ && _(P), s || J(r), h || D(r, "isDirty", !1), v || D(r, "isTouched", !1);
682
- }, []), k = d((r) => {
683
- if (!r) return T.trigger("values");
706
+ a.current = Y(a.current, r, k), E.current = Y(E.current, r, k), j && j(k), n || z(r), d || W(r, "isDirty", !1), l || W(r, "isTouched", !1);
707
+ }, []), B = b((r, { bubble: n, trickle: d } = {}) => {
708
+ if (!r) return T.trigger("values", { bubble: n, trickle: d ?? !0 });
684
709
  if (!Array.isArray(r)) {
685
- const s = G(r);
686
- T.trigger(s);
710
+ const l = q(r);
711
+ T.trigger(l, { bubble: n, trickle: d });
687
712
  return;
688
713
  }
689
- r.forEach((s) => {
690
- const h = G(s);
691
- T.trigger(h);
714
+ r.forEach((l) => {
715
+ const k = q(l);
716
+ T.trigger(k, { bubble: n, trickle: d });
717
+ });
718
+ }, []), Z = b((r) => {
719
+ T.publish(`blur.values.${r}`, C(r)), T.publish(`blur.errors.${r}`, x(r));
720
+ const n = L(r);
721
+ Object.keys(n || {}).forEach((l) => {
722
+ T.publish(`blur.fieldStates.${r}.${l}`, n[l]);
692
723
  });
693
- }, []), Z = d((r, s = U.getValues(r)) => {
694
- T.publish("onBlur", r, s, U.getValues());
695
- }, []), U = dr(
724
+ const d = H();
725
+ Object.keys(d || {}).forEach((l) => {
726
+ T.publish(`blur.formState.${l}`, d[l]);
727
+ });
728
+ }, []), rr = b((r, n = C(r)) => {
729
+ T.publish("onBlur", r, n, C()), Z(r);
730
+ }, []), P = gr(
696
731
  () => ({
697
- subscribe: sr,
698
- reset: S,
699
- trigger: k,
732
+ subscribe: ur,
733
+ reset: p,
734
+ trigger: B,
700
735
  reload: c,
701
- resetField: M,
736
+ resetField: V,
702
737
  setValue: e,
703
- getValues: V,
704
- getErrors: ir,
705
- getFieldStates: lr,
706
- getFormState: tr,
707
- setError: z,
708
- clearError: J,
709
- clearErrors: or,
710
- checkValidity: cr,
711
- getFieldValidity: A,
712
- getDefaultValues: C,
713
- setFieldState: D,
714
- triggerFieldBlur: Z,
715
- resetFieldState: ur,
716
- getControlledFields: Y,
738
+ getValues: C,
739
+ getErrors: x,
740
+ getFieldStates: L,
741
+ getFormState: H,
742
+ setError: X,
743
+ clearError: z,
744
+ clearErrors: cr,
745
+ checkValidity: ir,
746
+ getFieldValidity: N,
747
+ getDefaultValues: w,
748
+ setFieldState: W,
749
+ triggerFieldBlur: rr,
750
+ resetFieldState: ar,
751
+ getControlledFields: F,
717
752
  setFormState: fr,
718
753
  getEvents: T.getEvents,
719
754
  getWatchEvents: T.getWatchEvents,
720
- addGroups: y
755
+ addGroups: _
721
756
  }),
722
- [a]
723
- ), w = d(() => {
724
- [...l.current.querySelectorAll("[name]")].forEach((h) => {
725
- const v = h.name || "";
726
- v.includes(".") && f(v), !h.defaultValue && !o.current.has(v) && N(g.current, v) && (h.defaultValue = N(g.current, v));
757
+ [i]
758
+ ), U = b(() => {
759
+ [...f.current.querySelectorAll("[name]")].forEach((d) => {
760
+ const l = d.name || "";
761
+ l.includes(".") && g(l), !d.defaultValue && !o.current.has(l) && D(a.current, l) && (d.defaultValue = D(a.current, l));
727
762
  });
728
- const s = p();
729
- i.current = { ...s }, g.current = { ...s };
730
- }, []), q = dr(
763
+ const n = S();
764
+ E.current = { ...n }, a.current = { ...n };
765
+ }, []), er = gr(
731
766
  () => ({
732
- ref: l,
733
- watch: nr,
734
- actions: U,
735
- initForm: w,
736
- registerController: j,
737
- registerHookWatcher: X,
738
- lastReloadedAt: a,
739
- loadFormValues: p,
740
- getWatchValue: B,
767
+ ref: f,
768
+ watch: or,
769
+ actions: P,
770
+ initForm: U,
771
+ registerController: $,
772
+ registerHookWatcher: Q,
773
+ lastReloadedAt: i,
774
+ loadFormValues: S,
775
+ getWatchValue: J,
776
+ triggerBlurWatchers: Z,
741
777
  channels: T
742
778
  }),
743
- [a]
744
- ), Q = dr(() => ({ control: q, actions: U, watch: nr }), [a]);
745
- return hr(() => {
746
- l.current && w();
747
- }, [a]), hr(() => {
748
- E.current = O(!1);
749
- }, []), Q;
779
+ [i]
780
+ ), dr = gr(() => ({ control: er, actions: P, watch: or }), [i]);
781
+ return mr(() => {
782
+ f.current && U();
783
+ }, [i]), mr(() => {
784
+ R.current = O(!1);
785
+ }, []), dr;
786
+ }, Hr = ({ control: s, name: t, compute: u, mode: i }) => {
787
+ const { getWatchValue: c, registerHookWatcher: f } = s || Tr(), o = c({ name: t, compute: u }), [m, R] = sr(o);
788
+ return hr(() => f({ name: t, compute: u, value: m, setValue: R, mode: i }), []), m;
750
789
  };
751
790
  export {
752
791
  Jr as Controller,
753
792
  qr as Form,
754
- Wr as restoreFromDotNotation,
793
+ Br as restoreFromDotNotation,
755
794
  Mr as useController,
756
795
  zr as useForm,
757
- Ar as useFormContext,
758
- Gr as useWatch
796
+ Tr as useFormContext,
797
+ Hr as useWatch
759
798
  };