@drjoshcsimmons/scl 0.1.6 → 0.1.7

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 (108) hide show
  1. package/dist/index100.js +30 -4
  2. package/dist/index101.js +647 -12
  3. package/dist/index102.js +178 -27
  4. package/dist/index103.js +24 -180
  5. package/dist/index104.js +12 -647
  6. package/dist/index105.js +6 -12
  7. package/dist/index106.js +10 -204
  8. package/dist/index107.js +20 -21
  9. package/dist/index108.js +9 -400
  10. package/dist/index109.js +38 -6
  11. package/dist/index11.js +2 -2
  12. package/dist/index110.js +11 -14
  13. package/dist/index111.js +206 -9
  14. package/dist/index112.js +21 -37
  15. package/dist/index113.js +399 -17
  16. package/dist/index114.js +2 -25
  17. package/dist/index115.js +53 -29
  18. package/dist/index116.js +65 -5
  19. package/dist/index117.js +25 -2
  20. package/dist/index118.js +29 -53
  21. package/dist/index119.js +5 -65
  22. package/dist/index12.js +1 -1
  23. package/dist/index125.js +1 -1
  24. package/dist/index126.js +1 -1
  25. package/dist/index13.js +2 -2
  26. package/dist/index130.js +1 -1
  27. package/dist/index131.js +1 -1
  28. package/dist/index132.js +1 -1
  29. package/dist/index137.js +11 -21
  30. package/dist/index138.js +26 -11
  31. package/dist/index139.js +4 -27
  32. package/dist/index14.js +2 -2
  33. package/dist/index140.js +22 -4
  34. package/dist/index15.js +2 -2
  35. package/dist/index17.js +4 -4
  36. package/dist/index18.js +2 -2
  37. package/dist/index20.js +1 -1
  38. package/dist/index21.js +1 -1
  39. package/dist/index22.js +1 -1
  40. package/dist/index23.js +2 -2
  41. package/dist/index24.js +1 -1
  42. package/dist/index25.js +4 -4
  43. package/dist/index26.js +1 -1
  44. package/dist/index27.js +2 -2
  45. package/dist/index29.js +1 -1
  46. package/dist/index31.js +1 -1
  47. package/dist/index33.js +1 -1
  48. package/dist/index36.js +1 -1
  49. package/dist/index37.js +1 -1
  50. package/dist/index4.js +2 -2
  51. package/dist/index46.js +210 -214
  52. package/dist/index47.js +11 -249
  53. package/dist/index48.js +73 -9
  54. package/dist/index49.js +125 -12
  55. package/dist/index50.js +57 -257
  56. package/dist/index51.js +260 -12
  57. package/dist/index52.js +12 -73
  58. package/dist/index53.js +12 -237
  59. package/dist/index54.js +3 -5
  60. package/dist/index55.js +811 -481
  61. package/dist/index56.js +9 -125
  62. package/dist/index57.js +215 -300
  63. package/dist/index58.js +3 -4
  64. package/dist/index59.js +11 -435
  65. package/dist/index6.js +1 -1
  66. package/dist/index60.js +114 -56
  67. package/dist/index61.js +20 -252
  68. package/dist/index62.js +250 -126
  69. package/dist/index63.js +224 -70
  70. package/dist/index64.js +160 -21
  71. package/dist/index65.js +434 -30
  72. package/dist/index66.js +334 -16
  73. package/dist/index67.js +16 -234
  74. package/dist/index68.js +530 -11
  75. package/dist/index69.js +222 -134
  76. package/dist/index7.js +1 -1
  77. package/dist/index70.js +119 -325
  78. package/dist/index71.js +25 -219
  79. package/dist/index72.js +241 -11
  80. package/dist/index73.js +68 -846
  81. package/dist/index74.js +310 -9
  82. package/dist/index75.js +12 -118
  83. package/dist/index76.js +66 -5
  84. package/dist/index77.js +44 -25
  85. package/dist/index78.js +23 -64
  86. package/dist/index79.js +5 -123
  87. package/dist/index80.js +50 -13
  88. package/dist/index81.js +32 -133
  89. package/dist/index82.js +1 -1
  90. package/dist/index83.js +7 -218
  91. package/dist/index84.js +55 -14
  92. package/dist/index85.js +10 -68
  93. package/dist/index86.js +4 -34
  94. package/dist/index87.js +29 -53
  95. package/dist/index88.js +10 -49
  96. package/dist/index89.js +53 -49
  97. package/dist/index9.js +1 -1
  98. package/dist/index90.js +124 -8
  99. package/dist/index91.js +134 -5
  100. package/dist/index92.js +14 -25
  101. package/dist/index93.js +65 -51
  102. package/dist/index94.js +12 -8
  103. package/dist/index95.js +9 -4
  104. package/dist/index96.js +49 -29
  105. package/dist/index97.js +3 -12
  106. package/dist/index98.js +216 -43
  107. package/dist/index99.js +5 -7
  108. package/package.json +11 -19
package/dist/index61.js CHANGED
@@ -1,256 +1,24 @@
1
- import u from "react";
2
- var z = (e) => e.type === "checkbox", k = (e) => e instanceof Date, w = (e) => e == null;
3
- const H = (e) => typeof e == "object";
4
- var p = (e) => !w(e) && !Array.isArray(e) && H(e) && !k(e), J = (e) => p(e) && e.target ? z(e.target) ? e.target.checked : e.target.value : e, Q = (e) => e.substring(0, e.search(/\.\d+(\.|$)/)) || e, X = (e, s) => e.has(Q(s)), Y = (e) => {
5
- const s = e.constructor && e.constructor.prototype;
6
- return p(s) && s.hasOwnProperty("isPrototypeOf");
7
- }, Z = typeof window < "u" && typeof window.HTMLElement < "u" && typeof document < "u";
8
- function W(e) {
9
- if (e instanceof Date)
10
- return new Date(e);
11
- const s = typeof FileList < "u" && e instanceof FileList;
12
- if (Z && (e instanceof Blob || s))
13
- return e;
14
- const t = Array.isArray(e);
15
- if (!t && !(p(e) && Y(e)))
16
- return e;
17
- const n = t ? [] : Object.create(Object.getPrototypeOf(e));
18
- for (const r in e)
19
- Object.prototype.hasOwnProperty.call(e, r) && (n[r] = W(e[r]));
20
- return n;
21
- }
22
- var G = (e) => /^\w*$/.test(e), R = (e) => e === void 0, j = (e) => Array.isArray(e) ? e.filter(Boolean) : [], $ = (e) => j(e.replace(/["|']|\]/g, "").split(/\.|\[/)), y = (e, s, t) => {
23
- if (!s || !p(e))
24
- return t;
25
- const n = (G(s) ? [s] : $(s)).reduce((r, a) => w(r) ? r : r[a], e);
26
- return R(n) || n === e ? R(e[s]) ? t : e[s] : n;
27
- }, P = (e) => typeof e == "boolean", E = (e) => typeof e == "function", D = (e, s, t) => {
28
- let n = -1;
29
- const r = G(s) ? [s] : $(s), a = r.length, i = a - 1;
30
- for (; ++n < a; ) {
31
- const l = r[n];
32
- let c = t;
33
- if (n !== i) {
34
- const f = e[l];
35
- c = p(f) || Array.isArray(f) ? f : isNaN(+r[n + 1]) ? {} : [];
36
- }
37
- if (l === "__proto__" || l === "constructor" || l === "prototype")
38
- return;
39
- e[l] = c, e = e[l];
40
- }
41
- };
42
- const I = {
43
- BLUR: "blur",
44
- CHANGE: "change"
45
- }, B = {
46
- all: "all"
47
- }, L = u.createContext(null);
48
- L.displayName = "HookFormContext";
49
- const M = () => u.useContext(L), oe = (e) => {
50
- const { children: s, ...t } = e;
51
- return u.createElement(L.Provider, { value: t }, s);
52
- };
53
- var ee = (e, s, t, n = !0) => {
54
- const r = {
55
- defaultValues: s._defaultValues
56
- };
57
- for (const a in e)
58
- Object.defineProperty(r, a, {
59
- get: () => {
60
- const i = a;
61
- return s._proxyFormState[i] !== B.all && (s._proxyFormState[i] = !n || B.all), t && (t[i] = !0), e[i];
62
- }
63
- });
64
- return r;
65
- };
66
- const q = typeof window < "u" ? u.useLayoutEffect : u.useEffect;
67
- function te(e) {
68
- const s = M(), { control: t = s.control, disabled: n, name: r, exact: a } = e || {}, [i, l] = u.useState(t._formState), c = u.useRef({
69
- isDirty: !1,
70
- isLoading: !1,
71
- dirtyFields: !1,
72
- touchedFields: !1,
73
- validatingFields: !1,
74
- isValidating: !1,
75
- isValid: !1,
76
- errors: !1
77
- });
78
- return q(() => t._subscribe({
79
- name: r,
80
- formState: c.current,
81
- exact: a,
82
- callback: (f) => {
83
- !n && l({
84
- ...t._formState,
85
- ...f
86
- });
87
- }
88
- }), [r, n, a]), u.useEffect(() => {
89
- c.current.isValid && t._setValid(!0);
90
- }, [t]), u.useMemo(() => ee(i, t, c.current, !1), [i, t]);
91
- }
92
- var re = (e) => typeof e == "string", T = (e, s, t, n, r) => re(e) ? y(t, e, r) : Array.isArray(e) ? e.map((a) => y(t, a)) : t, U = (e) => w(e) || !H(e);
93
- function S(e, s, t = /* @__PURE__ */ new WeakSet()) {
94
- if (U(e) || U(s))
95
- return Object.is(e, s);
96
- if (k(e) && k(s))
97
- return e.getTime() === s.getTime();
98
- const n = Object.keys(e), r = Object.keys(s);
99
- if (n.length !== r.length)
100
- return !1;
101
- if (t.has(e) || t.has(s))
102
- return !0;
103
- t.add(e), t.add(s);
104
- for (const a of n) {
105
- const i = e[a];
106
- if (!r.includes(a))
107
- return !1;
108
- if (a !== "ref") {
109
- const l = s[a];
110
- if (k(i) && k(l) || p(i) && p(l) || Array.isArray(i) && Array.isArray(l) ? !S(i, l, t) : !Object.is(i, l))
111
- return !1;
112
- }
113
- }
114
- return !0;
115
- }
116
- function se(e) {
117
- const s = M(), { control: t = s.control, name: n, defaultValue: r, disabled: a, exact: i, compute: l } = e || {}, c = u.useRef(r), f = u.useRef(l), V = u.useRef(void 0), d = u.useRef(t), g = u.useRef(n);
118
- f.current = l;
119
- const [A, v] = u.useState(() => {
120
- const o = t._getWatch(n, c.current);
121
- return f.current ? f.current(o) : o;
122
- }), C = u.useCallback((o) => {
123
- const m = T(n, t._names, o || t._formValues, !1, c.current);
124
- return f.current ? f.current(m) : m;
125
- }, [t._formValues, t._names, n]), b = u.useCallback((o) => {
126
- if (!a) {
127
- const m = T(n, t._names, o || t._formValues, !1, c.current);
128
- if (f.current) {
129
- const _ = f.current(m);
130
- S(_, V.current) || (v(_), V.current = _);
131
- } else
132
- v(m);
133
- }
134
- }, [t._formValues, t._names, a, n]);
135
- q(() => ((d.current !== t || !S(g.current, n)) && (d.current = t, g.current = n, b()), t._subscribe({
136
- name: n,
137
- formState: {
138
- values: !0
139
- },
140
- exact: i,
141
- callback: (o) => {
142
- b(o.values);
143
- }
144
- })), [t, i, n, b]), u.useEffect(() => t._removeUnmounted());
145
- const h = d.current !== t, F = g.current, O = u.useMemo(() => {
146
- if (a)
147
- return null;
148
- const o = !h && !S(F, n);
149
- return h || o ? C() : null;
150
- }, [a, h, n, F, C]);
151
- return O !== null ? O : A;
152
- }
153
- function ne(e) {
154
- const s = M(), { name: t, disabled: n, control: r = s.control, shouldUnregister: a, defaultValue: i, exact: l = !0 } = e, c = X(r._names.array, t), f = u.useMemo(() => y(r._formValues, t, y(r._defaultValues, t, i)), [r, t, i]), V = se({
155
- control: r,
156
- name: t,
157
- defaultValue: f,
158
- exact: l
159
- }), d = te({
160
- control: r,
161
- name: t,
162
- exact: l
163
- }), g = u.useRef(e), A = u.useRef(void 0), v = u.useRef(r.register(t, {
164
- ...e.rules,
165
- value: V,
166
- ...P(e.disabled) ? { disabled: e.disabled } : {}
167
- }));
168
- g.current = e;
169
- const C = u.useMemo(() => Object.defineProperties({}, {
170
- invalid: {
171
- enumerable: !0,
172
- get: () => !!y(d.errors, t)
173
- },
174
- isDirty: {
175
- enumerable: !0,
176
- get: () => !!y(d.dirtyFields, t)
177
- },
178
- isTouched: {
179
- enumerable: !0,
180
- get: () => !!y(d.touchedFields, t)
181
- },
182
- isValidating: {
183
- enumerable: !0,
184
- get: () => !!y(d.validatingFields, t)
185
- },
186
- error: {
187
- enumerable: !0,
188
- get: () => y(d.errors, t)
189
- }
190
- }), [d, t]), b = u.useCallback((o) => v.current.onChange({
191
- target: {
192
- value: J(o),
193
- name: t
194
- },
195
- type: I.CHANGE
196
- }), [t]), h = u.useCallback(() => v.current.onBlur({
197
- target: {
198
- value: y(r._formValues, t),
199
- name: t
200
- },
201
- type: I.BLUR
202
- }), [t, r._formValues]), F = u.useCallback((o) => {
203
- const m = y(r._fields, t);
204
- m && m._f && o && (m._f.ref = {
205
- focus: () => E(o.focus) && o.focus(),
206
- select: () => E(o.select) && o.select(),
207
- setCustomValidity: (_) => E(o.setCustomValidity) && o.setCustomValidity(_),
208
- reportValidity: () => E(o.reportValidity) && o.reportValidity()
209
- });
210
- }, [r._fields, t]), O = u.useMemo(() => ({
211
- name: t,
212
- value: V,
213
- ...P(n) || d.disabled ? { disabled: d.disabled || n } : {},
214
- onChange: b,
215
- onBlur: h,
216
- ref: F
217
- }), [t, n, d.disabled, b, h, F, V]);
218
- return u.useEffect(() => {
219
- const o = r._options.shouldUnregister || a, m = A.current;
220
- m && m !== t && !c && r.unregister(m), r.register(t, {
221
- ...g.current.rules,
222
- ...P(g.current.disabled) ? { disabled: g.current.disabled } : {}
223
- });
224
- const _ = (x, K) => {
225
- const N = y(r._fields, x);
226
- N && N._f && (N._f.mount = K);
227
- };
228
- if (_(t, !0), o) {
229
- const x = W(y(r._options.defaultValues, t, g.current.defaultValue));
230
- D(r._defaultValues, t, x), R(y(r._formValues, t)) && D(r._formValues, t, x);
1
+ import * as p from "react";
2
+ import { Primitive as v } from "./index87.js";
3
+ import { jsx as m } from "react/jsx-runtime";
4
+ var d = "Separator", a = "horizontal", l = ["horizontal", "vertical"], i = p.forwardRef((r, n) => {
5
+ const { decorative: e, orientation: t = a, ...s } = r, o = f(t) ? t : a, c = e ? { role: "none" } : { "aria-orientation": o === "vertical" ? o : void 0, role: "separator" };
6
+ return /* @__PURE__ */ m(
7
+ v.div,
8
+ {
9
+ "data-orientation": o,
10
+ ...c,
11
+ ...s,
12
+ ref: n
231
13
  }
232
- return !c && r.register(t), A.current = t, () => {
233
- (c ? o && !r._state.action : o) ? r.unregister(t) : _(t, !1);
234
- };
235
- }, [t, r, c, a]), u.useEffect(() => {
236
- r._setDisabledField({
237
- disabled: n,
238
- name: t
239
- });
240
- }, [n, t, r]), u.useMemo(() => ({
241
- field: O,
242
- formState: d,
243
- fieldState: C
244
- }), [O, d, C]);
14
+ );
15
+ });
16
+ i.displayName = d;
17
+ function f(r) {
18
+ return l.includes(r);
245
19
  }
246
- const ae = (e) => e.render(ne(e));
20
+ var T = i;
247
21
  export {
248
- ae as Controller,
249
- oe as FormProvider,
250
- y as get,
251
- D as set,
252
- ne as useController,
253
- M as useFormContext,
254
- te as useFormState,
255
- se as useWatch
22
+ T as Root,
23
+ i as Separator
256
24
  };
package/dist/index62.js CHANGED
@@ -1,132 +1,256 @@
1
- import * as r from "react";
2
- import { composeEventHandlers as T } from "./index76.js";
3
- import { useComposedRefs as P } from "./index77.js";
4
- import { createContextScope as I } from "./index78.js";
5
- import { useControllableState as M } from "./index88.js";
6
- import { usePrevious as H } from "./index91.js";
7
- import { useSize as j } from "./index92.js";
8
- import { Primitive as y } from "./index86.js";
9
- import { jsxs as A, jsx as m } from "react/jsx-runtime";
10
- var h = "Switch", [U] = I(h), [q, z] = U(h), R = r.forwardRef(
11
- (t, a) => {
12
- const {
13
- __scopeSwitch: e,
14
- name: c,
15
- checked: o,
16
- defaultChecked: v,
17
- required: i,
18
- disabled: n,
19
- value: p = "on",
20
- onCheckedChange: w,
21
- form: s,
22
- ...S
23
- } = t, [d, u] = r.useState(null), b = P(a, (f) => u(f)), C = r.useRef(!1), k = d ? s || !!d.closest("form") : !0, [l, B] = M({
24
- prop: o,
25
- defaultProp: v ?? !1,
26
- onChange: w,
27
- caller: h
28
- });
29
- return /* @__PURE__ */ A(q, { scope: e, checked: l, disabled: n, children: [
30
- /* @__PURE__ */ m(
31
- y.button,
32
- {
33
- type: "button",
34
- role: "switch",
35
- "aria-checked": l,
36
- "aria-required": i,
37
- "data-state": g(l),
38
- "data-disabled": n ? "" : void 0,
39
- disabled: n,
40
- value: p,
41
- ...S,
42
- ref: b,
43
- onClick: T(t.onClick, (f) => {
44
- B((N) => !N), k && (C.current = f.isPropagationStopped(), C.current || f.stopPropagation());
45
- })
46
- }
47
- ),
48
- k && /* @__PURE__ */ m(
49
- x,
50
- {
51
- control: d,
52
- bubbles: !C.current,
53
- name: c,
54
- value: p,
55
- checked: l,
56
- required: i,
57
- disabled: n,
58
- form: s,
59
- style: { transform: "translateX(-100%)" }
60
- }
61
- )
62
- ] });
63
- }
64
- );
65
- R.displayName = h;
66
- var E = "SwitchThumb", _ = r.forwardRef(
67
- (t, a) => {
68
- const { __scopeSwitch: e, ...c } = t, o = z(E, e);
69
- return /* @__PURE__ */ m(
70
- y.span,
71
- {
72
- "data-state": g(o.checked),
73
- "data-disabled": o.disabled ? "" : void 0,
74
- ...c,
75
- ref: a
76
- }
77
- );
1
+ import u from "react";
2
+ var z = (e) => e.type === "checkbox", k = (e) => e instanceof Date, w = (e) => e == null;
3
+ const H = (e) => typeof e == "object";
4
+ var p = (e) => !w(e) && !Array.isArray(e) && H(e) && !k(e), J = (e) => p(e) && e.target ? z(e.target) ? e.target.checked : e.target.value : e, Q = (e) => e.substring(0, e.search(/\.\d+(\.|$)/)) || e, X = (e, s) => e.has(Q(s)), Y = (e) => {
5
+ const s = e.constructor && e.constructor.prototype;
6
+ return p(s) && s.hasOwnProperty("isPrototypeOf");
7
+ }, Z = typeof window < "u" && typeof window.HTMLElement < "u" && typeof document < "u";
8
+ function W(e) {
9
+ if (e instanceof Date)
10
+ return new Date(e);
11
+ const s = typeof FileList < "u" && e instanceof FileList;
12
+ if (Z && (e instanceof Blob || s))
13
+ return e;
14
+ const t = Array.isArray(e);
15
+ if (!t && !(p(e) && Y(e)))
16
+ return e;
17
+ const n = t ? [] : Object.create(Object.getPrototypeOf(e));
18
+ for (const r in e)
19
+ Object.prototype.hasOwnProperty.call(e, r) && (n[r] = W(e[r]));
20
+ return n;
21
+ }
22
+ var G = (e) => /^\w*$/.test(e), R = (e) => e === void 0, j = (e) => Array.isArray(e) ? e.filter(Boolean) : [], $ = (e) => j(e.replace(/["|']|\]/g, "").split(/\.|\[/)), y = (e, s, t) => {
23
+ if (!s || !p(e))
24
+ return t;
25
+ const n = (G(s) ? [s] : $(s)).reduce((r, a) => w(r) ? r : r[a], e);
26
+ return R(n) || n === e ? R(e[s]) ? t : e[s] : n;
27
+ }, P = (e) => typeof e == "boolean", E = (e) => typeof e == "function", D = (e, s, t) => {
28
+ let n = -1;
29
+ const r = G(s) ? [s] : $(s), a = r.length, i = a - 1;
30
+ for (; ++n < a; ) {
31
+ const l = r[n];
32
+ let c = t;
33
+ if (n !== i) {
34
+ const f = e[l];
35
+ c = p(f) || Array.isArray(f) ? f : isNaN(+r[n + 1]) ? {} : [];
36
+ }
37
+ if (l === "__proto__" || l === "constructor" || l === "prototype")
38
+ return;
39
+ e[l] = c, e = e[l];
78
40
  }
79
- );
80
- _.displayName = E;
81
- var L = "SwitchBubbleInput", x = r.forwardRef(
82
- ({
83
- __scopeSwitch: t,
84
- control: a,
85
- checked: e,
86
- bubbles: c = !0,
87
- ...o
88
- }, v) => {
89
- const i = r.useRef(null), n = P(i, v), p = H(e), w = j(a);
90
- return r.useEffect(() => {
91
- const s = i.current;
92
- if (!s) return;
93
- const S = window.HTMLInputElement.prototype, u = Object.getOwnPropertyDescriptor(
94
- S,
95
- "checked"
96
- ).set;
97
- if (p !== e && u) {
98
- const b = new Event("click", { bubbles: c });
99
- u.call(s, e), s.dispatchEvent(b);
100
- }
101
- }, [p, e, c]), /* @__PURE__ */ m(
102
- "input",
103
- {
104
- type: "checkbox",
105
- "aria-hidden": !0,
106
- defaultChecked: e,
107
- ...o,
108
- tabIndex: -1,
109
- ref: n,
110
- style: {
111
- ...o.style,
112
- ...w,
113
- position: "absolute",
114
- pointerEvents: "none",
115
- opacity: 0,
116
- margin: 0
117
- }
41
+ };
42
+ const I = {
43
+ BLUR: "blur",
44
+ CHANGE: "change"
45
+ }, B = {
46
+ all: "all"
47
+ }, L = u.createContext(null);
48
+ L.displayName = "HookFormContext";
49
+ const M = () => u.useContext(L), oe = (e) => {
50
+ const { children: s, ...t } = e;
51
+ return u.createElement(L.Provider, { value: t }, s);
52
+ };
53
+ var ee = (e, s, t, n = !0) => {
54
+ const r = {
55
+ defaultValues: s._defaultValues
56
+ };
57
+ for (const a in e)
58
+ Object.defineProperty(r, a, {
59
+ get: () => {
60
+ const i = a;
61
+ return s._proxyFormState[i] !== B.all && (s._proxyFormState[i] = !n || B.all), t && (t[i] = !0), e[i];
118
62
  }
119
- );
63
+ });
64
+ return r;
65
+ };
66
+ const q = typeof window < "u" ? u.useLayoutEffect : u.useEffect;
67
+ function te(e) {
68
+ const s = M(), { control: t = s.control, disabled: n, name: r, exact: a } = e || {}, [i, l] = u.useState(t._formState), c = u.useRef({
69
+ isDirty: !1,
70
+ isLoading: !1,
71
+ dirtyFields: !1,
72
+ touchedFields: !1,
73
+ validatingFields: !1,
74
+ isValidating: !1,
75
+ isValid: !1,
76
+ errors: !1
77
+ });
78
+ return q(() => t._subscribe({
79
+ name: r,
80
+ formState: c.current,
81
+ exact: a,
82
+ callback: (f) => {
83
+ !n && l({
84
+ ...t._formState,
85
+ ...f
86
+ });
87
+ }
88
+ }), [r, n, a]), u.useEffect(() => {
89
+ c.current.isValid && t._setValid(!0);
90
+ }, [t]), u.useMemo(() => ee(i, t, c.current, !1), [i, t]);
91
+ }
92
+ var re = (e) => typeof e == "string", T = (e, s, t, n, r) => re(e) ? y(t, e, r) : Array.isArray(e) ? e.map((a) => y(t, a)) : t, U = (e) => w(e) || !H(e);
93
+ function S(e, s, t = /* @__PURE__ */ new WeakSet()) {
94
+ if (U(e) || U(s))
95
+ return Object.is(e, s);
96
+ if (k(e) && k(s))
97
+ return e.getTime() === s.getTime();
98
+ const n = Object.keys(e), r = Object.keys(s);
99
+ if (n.length !== r.length)
100
+ return !1;
101
+ if (t.has(e) || t.has(s))
102
+ return !0;
103
+ t.add(e), t.add(s);
104
+ for (const a of n) {
105
+ const i = e[a];
106
+ if (!r.includes(a))
107
+ return !1;
108
+ if (a !== "ref") {
109
+ const l = s[a];
110
+ if (k(i) && k(l) || p(i) && p(l) || Array.isArray(i) && Array.isArray(l) ? !S(i, l, t) : !Object.is(i, l))
111
+ return !1;
112
+ }
120
113
  }
121
- );
122
- x.displayName = L;
123
- function g(t) {
124
- return t ? "checked" : "unchecked";
114
+ return !0;
115
+ }
116
+ function se(e) {
117
+ const s = M(), { control: t = s.control, name: n, defaultValue: r, disabled: a, exact: i, compute: l } = e || {}, c = u.useRef(r), f = u.useRef(l), V = u.useRef(void 0), d = u.useRef(t), g = u.useRef(n);
118
+ f.current = l;
119
+ const [A, v] = u.useState(() => {
120
+ const o = t._getWatch(n, c.current);
121
+ return f.current ? f.current(o) : o;
122
+ }), C = u.useCallback((o) => {
123
+ const m = T(n, t._names, o || t._formValues, !1, c.current);
124
+ return f.current ? f.current(m) : m;
125
+ }, [t._formValues, t._names, n]), b = u.useCallback((o) => {
126
+ if (!a) {
127
+ const m = T(n, t._names, o || t._formValues, !1, c.current);
128
+ if (f.current) {
129
+ const _ = f.current(m);
130
+ S(_, V.current) || (v(_), V.current = _);
131
+ } else
132
+ v(m);
133
+ }
134
+ }, [t._formValues, t._names, a, n]);
135
+ q(() => ((d.current !== t || !S(g.current, n)) && (d.current = t, g.current = n, b()), t._subscribe({
136
+ name: n,
137
+ formState: {
138
+ values: !0
139
+ },
140
+ exact: i,
141
+ callback: (o) => {
142
+ b(o.values);
143
+ }
144
+ })), [t, i, n, b]), u.useEffect(() => t._removeUnmounted());
145
+ const h = d.current !== t, F = g.current, O = u.useMemo(() => {
146
+ if (a)
147
+ return null;
148
+ const o = !h && !S(F, n);
149
+ return h || o ? C() : null;
150
+ }, [a, h, n, F, C]);
151
+ return O !== null ? O : A;
152
+ }
153
+ function ne(e) {
154
+ const s = M(), { name: t, disabled: n, control: r = s.control, shouldUnregister: a, defaultValue: i, exact: l = !0 } = e, c = X(r._names.array, t), f = u.useMemo(() => y(r._formValues, t, y(r._defaultValues, t, i)), [r, t, i]), V = se({
155
+ control: r,
156
+ name: t,
157
+ defaultValue: f,
158
+ exact: l
159
+ }), d = te({
160
+ control: r,
161
+ name: t,
162
+ exact: l
163
+ }), g = u.useRef(e), A = u.useRef(void 0), v = u.useRef(r.register(t, {
164
+ ...e.rules,
165
+ value: V,
166
+ ...P(e.disabled) ? { disabled: e.disabled } : {}
167
+ }));
168
+ g.current = e;
169
+ const C = u.useMemo(() => Object.defineProperties({}, {
170
+ invalid: {
171
+ enumerable: !0,
172
+ get: () => !!y(d.errors, t)
173
+ },
174
+ isDirty: {
175
+ enumerable: !0,
176
+ get: () => !!y(d.dirtyFields, t)
177
+ },
178
+ isTouched: {
179
+ enumerable: !0,
180
+ get: () => !!y(d.touchedFields, t)
181
+ },
182
+ isValidating: {
183
+ enumerable: !0,
184
+ get: () => !!y(d.validatingFields, t)
185
+ },
186
+ error: {
187
+ enumerable: !0,
188
+ get: () => y(d.errors, t)
189
+ }
190
+ }), [d, t]), b = u.useCallback((o) => v.current.onChange({
191
+ target: {
192
+ value: J(o),
193
+ name: t
194
+ },
195
+ type: I.CHANGE
196
+ }), [t]), h = u.useCallback(() => v.current.onBlur({
197
+ target: {
198
+ value: y(r._formValues, t),
199
+ name: t
200
+ },
201
+ type: I.BLUR
202
+ }), [t, r._formValues]), F = u.useCallback((o) => {
203
+ const m = y(r._fields, t);
204
+ m && m._f && o && (m._f.ref = {
205
+ focus: () => E(o.focus) && o.focus(),
206
+ select: () => E(o.select) && o.select(),
207
+ setCustomValidity: (_) => E(o.setCustomValidity) && o.setCustomValidity(_),
208
+ reportValidity: () => E(o.reportValidity) && o.reportValidity()
209
+ });
210
+ }, [r._fields, t]), O = u.useMemo(() => ({
211
+ name: t,
212
+ value: V,
213
+ ...P(n) || d.disabled ? { disabled: d.disabled || n } : {},
214
+ onChange: b,
215
+ onBlur: h,
216
+ ref: F
217
+ }), [t, n, d.disabled, b, h, F, V]);
218
+ return u.useEffect(() => {
219
+ const o = r._options.shouldUnregister || a, m = A.current;
220
+ m && m !== t && !c && r.unregister(m), r.register(t, {
221
+ ...g.current.rules,
222
+ ...P(g.current.disabled) ? { disabled: g.current.disabled } : {}
223
+ });
224
+ const _ = (x, K) => {
225
+ const N = y(r._fields, x);
226
+ N && N._f && (N._f.mount = K);
227
+ };
228
+ if (_(t, !0), o) {
229
+ const x = W(y(r._options.defaultValues, t, g.current.defaultValue));
230
+ D(r._defaultValues, t, x), R(y(r._formValues, t)) && D(r._formValues, t, x);
231
+ }
232
+ return !c && r.register(t), A.current = t, () => {
233
+ (c ? o && !r._state.action : o) ? r.unregister(t) : _(t, !1);
234
+ };
235
+ }, [t, r, c, a]), u.useEffect(() => {
236
+ r._setDisabledField({
237
+ disabled: n,
238
+ name: t
239
+ });
240
+ }, [n, t, r]), u.useMemo(() => ({
241
+ field: O,
242
+ formState: d,
243
+ fieldState: C
244
+ }), [O, d, C]);
125
245
  }
126
- var Q = R, V = _;
246
+ const ae = (e) => e.render(ne(e));
127
247
  export {
128
- Q as Root,
129
- R as Switch,
130
- _ as SwitchThumb,
131
- V as Thumb
248
+ ae as Controller,
249
+ oe as FormProvider,
250
+ y as get,
251
+ D as set,
252
+ ne as useController,
253
+ M as useFormContext,
254
+ te as useFormState,
255
+ se as useWatch
132
256
  };