@drjoshcsimmons/scl 0.2.2 → 0.2.3

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 (107) hide show
  1. package/dist/index100.js +181 -9
  2. package/dist/index101.js +8 -3
  3. package/dist/index102.js +27 -647
  4. package/dist/index103.js +47 -5
  5. package/dist/index104.js +3 -24
  6. package/dist/index105.js +47 -29
  7. package/dist/index106.js +6 -30
  8. package/dist/index107.js +647 -12
  9. package/dist/index108.js +30 -181
  10. package/dist/index109.js +29 -47
  11. package/dist/index11.js +2 -2
  12. package/dist/index110.js +13 -53
  13. package/dist/index111.js +25 -30
  14. package/dist/index112.js +7 -46
  15. package/dist/index114.js +1 -1
  16. package/dist/index115.js +1 -1
  17. package/dist/index116.js +1 -1
  18. package/dist/index118.js +1 -1
  19. package/dist/index12.js +1 -1
  20. package/dist/index120.js +21 -48
  21. package/dist/index121.js +3 -15
  22. package/dist/index122.js +32 -3
  23. package/dist/index123.js +12 -32
  24. package/dist/index124.js +48 -18
  25. package/dist/index13.js +2 -2
  26. package/dist/index14.js +2 -2
  27. package/dist/index142.js +1 -1
  28. package/dist/index143.js +1 -1
  29. package/dist/index148.js +21 -11
  30. package/dist/index149.js +11 -26
  31. package/dist/index15.js +2 -2
  32. package/dist/index150.js +27 -4
  33. package/dist/index151.js +4 -22
  34. package/dist/index17.js +4 -4
  35. package/dist/index18.js +2 -2
  36. package/dist/index20.js +1 -1
  37. package/dist/index21.js +1 -1
  38. package/dist/index22.js +1 -1
  39. package/dist/index23.js +2 -2
  40. package/dist/index24.js +1 -1
  41. package/dist/index25.js +4 -4
  42. package/dist/index26.js +1 -1
  43. package/dist/index27.js +2 -2
  44. package/dist/index29.js +1 -1
  45. package/dist/index31.js +1 -1
  46. package/dist/index33.js +1 -1
  47. package/dist/index36.js +1 -1
  48. package/dist/index37.js +1 -1
  49. package/dist/index4.js +2 -2
  50. package/dist/index46.js +64 -116
  51. package/dist/index47.js +57 -234
  52. package/dist/index48.js +237 -11
  53. package/dist/index49.js +11 -60
  54. package/dist/index50.js +228 -60
  55. package/dist/index51.js +71 -230
  56. package/dist/index52.js +241 -323
  57. package/dist/index53.js +94 -506
  58. package/dist/index54.js +148 -212
  59. package/dist/index55.js +336 -9
  60. package/dist/index56.js +260 -11
  61. package/dist/index57.js +5 -4
  62. package/dist/index58.js +835 -105
  63. package/dist/index59.js +9 -310
  64. package/dist/index6.js +1 -1
  65. package/dist/index60.js +2 -5
  66. package/dist/index61.js +223 -16
  67. package/dist/index62.js +11 -22
  68. package/dist/index63.js +11 -254
  69. package/dist/index64.js +12 -118
  70. package/dist/index65.js +507 -138
  71. package/dist/index66.js +18 -256
  72. package/dist/index67.js +310 -12
  73. package/dist/index68.js +12 -82
  74. package/dist/index69.js +18 -860
  75. package/dist/index7.js +1 -1
  76. package/dist/index70.js +31 -9
  77. package/dist/index71.js +236 -31
  78. package/dist/index72.js +402 -216
  79. package/dist/index73.js +225 -212
  80. package/dist/index74.js +125 -12
  81. package/dist/index75.js +111 -416
  82. package/dist/index76.js +40 -53
  83. package/dist/index77.js +10 -26
  84. package/dist/index78.js +4 -7
  85. package/dist/index79.js +30 -9
  86. package/dist/index80.js +11 -44
  87. package/dist/index81.js +64 -48
  88. package/dist/index82.js +45 -33
  89. package/dist/index83.js +26 -10
  90. package/dist/index84.js +6 -7
  91. package/dist/index85.js +49 -52
  92. package/dist/index86.js +33 -10
  93. package/dist/index87.js +11 -4
  94. package/dist/index88.js +8 -30
  95. package/dist/index89.js +123 -11
  96. package/dist/index9.js +1 -1
  97. package/dist/index90.js +12 -122
  98. package/dist/index91.js +128 -212
  99. package/dist/index92.js +218 -13
  100. package/dist/index93.js +14 -69
  101. package/dist/index94.js +68 -8
  102. package/dist/index95.js +47 -29
  103. package/dist/index96.js +50 -15
  104. package/dist/index97.js +8 -134
  105. package/dist/index98.js +51 -44
  106. package/dist/index99.js +29 -49
  107. package/package.json +1 -1
package/dist/index52.js CHANGED
@@ -1,338 +1,256 @@
1
- import * as s from "react";
2
- import { composeEventHandlers as g } from "./index78.js";
3
- import { useComposedRefs as N } from "./index77.js";
4
- import { createContextScope as K } from "./index76.js";
5
- import { DismissableLayer as W } from "./index90.js";
6
- import { useId as $ } from "./index83.js";
7
- import { createPopperScope as S, Root as z, Anchor as J, Content as Q, Arrow as Z } from "./index91.js";
8
- import { Portal as ee } from "./index92.js";
9
- import { Presence as G } from "./index93.js";
10
- import { Primitive as te } from "./index82.js";
11
- import { createSlottable as oe } from "./index94.js";
12
- import { useControllableState as re } from "./index81.js";
13
- import { Root as ne } from "./index95.js";
14
- import { jsx as f, jsxs as se } from "react/jsx-runtime";
15
- var [D] = K("Tooltip", [
16
- S
17
- ]), O = S(), j = "TooltipProvider", ie = 700, L = "tooltip.open", [ae, k] = D(j), F = (t) => {
18
- const {
19
- __scopeTooltip: o,
20
- delayDuration: e = ie,
21
- skipDelayDuration: r = 300,
22
- disableHoverableContent: n = !1,
23
- children: a
24
- } = t, l = s.useRef(!0), v = s.useRef(!1), i = s.useRef(0);
25
- return s.useEffect(() => {
26
- const p = i.current;
27
- return () => window.clearTimeout(p);
28
- }, []), /* @__PURE__ */ f(
29
- ae,
30
- {
31
- scope: o,
32
- isOpenDelayedRef: l,
33
- delayDuration: e,
34
- onOpen: s.useCallback(() => {
35
- window.clearTimeout(i.current), l.current = !1;
36
- }, []),
37
- onClose: s.useCallback(() => {
38
- window.clearTimeout(i.current), i.current = window.setTimeout(
39
- () => l.current = !0,
40
- r
41
- );
42
- }, [r]),
43
- isPointerInTransitRef: v,
44
- onPointerInTransitChange: s.useCallback((p) => {
45
- v.current = p;
46
- }, []),
47
- disableHoverableContent: n,
48
- children: a
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]) ? {} : [];
49
36
  }
50
- );
37
+ if (l === "__proto__" || l === "constructor" || l === "prototype")
38
+ return;
39
+ e[l] = c, e = e[l];
40
+ }
51
41
  };
52
- F.displayName = j;
53
- var R = "Tooltip", [le, _] = D(R), B = (t) => {
54
- const {
55
- __scopeTooltip: o,
56
- children: e,
57
- open: r,
58
- defaultOpen: n,
59
- onOpenChange: a,
60
- disableHoverableContent: l,
61
- delayDuration: v
62
- } = t, i = k(R, t.__scopeTooltip), p = O(o), [c, d] = s.useState(null), h = $(), u = s.useRef(0), m = l ?? i.disableHoverableContent, y = v ?? i.delayDuration, T = s.useRef(!1), [x, C] = re({
63
- prop: r,
64
- defaultProp: n ?? !1,
65
- onChange: (H) => {
66
- H ? (i.onOpen(), document.dispatchEvent(new CustomEvent(L))) : i.onClose(), a == null || a(H);
67
- },
68
- caller: R
69
- }), w = s.useMemo(() => x ? T.current ? "delayed-open" : "instant-open" : "closed", [x]), P = s.useCallback(() => {
70
- window.clearTimeout(u.current), u.current = 0, T.current = !1, C(!0);
71
- }, [C]), E = s.useCallback(() => {
72
- window.clearTimeout(u.current), u.current = 0, C(!1);
73
- }, [C]), I = s.useCallback(() => {
74
- window.clearTimeout(u.current), u.current = window.setTimeout(() => {
75
- T.current = !0, C(!0), u.current = 0;
76
- }, y);
77
- }, [y, C]);
78
- return s.useEffect(() => () => {
79
- u.current && (window.clearTimeout(u.current), u.current = 0);
80
- }, []), /* @__PURE__ */ f(z, { ...p, children: /* @__PURE__ */ f(
81
- le,
82
- {
83
- scope: o,
84
- contentId: h,
85
- open: x,
86
- stateAttribute: w,
87
- trigger: c,
88
- onTriggerChange: d,
89
- onTriggerEnter: s.useCallback(() => {
90
- i.isOpenDelayedRef.current ? I() : P();
91
- }, [i.isOpenDelayedRef, I, P]),
92
- onTriggerLeave: s.useCallback(() => {
93
- m ? E() : (window.clearTimeout(u.current), u.current = 0);
94
- }, [E, m]),
95
- onOpen: P,
96
- onClose: E,
97
- disableHoverableContent: m,
98
- children: e
99
- }
100
- ) });
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);
101
52
  };
102
- B.displayName = R;
103
- var A = "TooltipTrigger", U = s.forwardRef(
104
- (t, o) => {
105
- const { __scopeTooltip: e, ...r } = t, n = _(A, e), a = k(A, e), l = O(e), v = s.useRef(null), i = N(o, v, n.onTriggerChange), p = s.useRef(!1), c = s.useRef(!1), d = s.useCallback(() => p.current = !1, []);
106
- return s.useEffect(() => () => document.removeEventListener("pointerup", d), [d]), /* @__PURE__ */ f(J, { asChild: !0, ...l, children: /* @__PURE__ */ f(
107
- te.button,
108
- {
109
- "aria-describedby": n.open ? n.contentId : void 0,
110
- "data-state": n.stateAttribute,
111
- ...r,
112
- ref: i,
113
- onPointerMove: g(t.onPointerMove, (h) => {
114
- h.pointerType !== "touch" && !c.current && !a.isPointerInTransitRef.current && (n.onTriggerEnter(), c.current = !0);
115
- }),
116
- onPointerLeave: g(t.onPointerLeave, () => {
117
- n.onTriggerLeave(), c.current = !1;
118
- }),
119
- onPointerDown: g(t.onPointerDown, () => {
120
- n.open && n.onClose(), p.current = !0, document.addEventListener("pointerup", d, { once: !0 });
121
- }),
122
- onFocus: g(t.onFocus, () => {
123
- p.current || n.onOpen();
124
- }),
125
- onBlur: g(t.onBlur, n.onClose),
126
- onClick: g(t.onClick, n.onClose)
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];
127
62
  }
128
- ) });
129
- }
130
- );
131
- U.displayName = A;
132
- var M = "TooltipPortal", [ce, ue] = D(M, {
133
- forceMount: void 0
134
- }), V = (t) => {
135
- const { __scopeTooltip: o, forceMount: e, children: r, container: n } = t, a = _(M, o);
136
- return /* @__PURE__ */ f(ce, { scope: o, forceMount: e, children: /* @__PURE__ */ f(G, { present: e || a.open, children: /* @__PURE__ */ f(ee, { asChild: !0, container: n, children: r }) }) });
63
+ });
64
+ return r;
137
65
  };
138
- V.displayName = M;
139
- var b = "TooltipContent", Y = s.forwardRef(
140
- (t, o) => {
141
- const e = ue(b, t.__scopeTooltip), { forceMount: r = e.forceMount, side: n = "top", ...a } = t, l = _(b, t.__scopeTooltip);
142
- return /* @__PURE__ */ f(G, { present: r || l.open, children: l.disableHoverableContent ? /* @__PURE__ */ f(q, { side: n, ...a, ref: o }) : /* @__PURE__ */ f(pe, { side: n, ...a, ref: o }) });
143
- }
144
- ), pe = s.forwardRef((t, o) => {
145
- const e = _(b, t.__scopeTooltip), r = k(b, t.__scopeTooltip), n = s.useRef(null), a = N(o, n), [l, v] = s.useState(null), { trigger: i, onClose: p } = e, c = n.current, { onPointerInTransitChange: d } = r, h = s.useCallback(() => {
146
- v(null), d(!1);
147
- }, [d]), u = s.useCallback(
148
- (m, y) => {
149
- const T = m.currentTarget, x = { x: m.clientX, y: m.clientY }, C = me(x, T.getBoundingClientRect()), w = Te(x, C), P = ye(y.getBoundingClientRect()), E = xe([...w, ...P]);
150
- v(E), d(!0);
151
- },
152
- [d]
153
- );
154
- return s.useEffect(() => () => h(), [h]), s.useEffect(() => {
155
- if (i && c) {
156
- const m = (T) => u(T, c), y = (T) => u(T, i);
157
- return i.addEventListener("pointerleave", m), c.addEventListener("pointerleave", y), () => {
158
- i.removeEventListener("pointerleave", m), c.removeEventListener("pointerleave", y);
159
- };
160
- }
161
- }, [i, c, u, h]), s.useEffect(() => {
162
- if (l) {
163
- const m = (y) => {
164
- const T = y.target, x = { x: y.clientX, y: y.clientY }, C = (i == null ? void 0 : i.contains(T)) || (c == null ? void 0 : c.contains(T)), w = !Ce(x, l);
165
- C ? h() : w && (h(), p());
166
- };
167
- return document.addEventListener("pointermove", m), () => document.removeEventListener("pointermove", m);
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
+ });
168
87
  }
169
- }, [i, c, l, p, h]), /* @__PURE__ */ f(q, { ...t, ref: a });
170
- }), [de, fe] = D(R, { isInside: !1 }), ve = oe("TooltipContent"), q = s.forwardRef(
171
- (t, o) => {
172
- const {
173
- __scopeTooltip: e,
174
- children: r,
175
- "aria-label": n,
176
- onEscapeKeyDown: a,
177
- onPointerDownOutside: l,
178
- ...v
179
- } = t, i = _(b, e), p = O(e), { onClose: c } = i;
180
- return s.useEffect(() => (document.addEventListener(L, c), () => document.removeEventListener(L, c)), [c]), s.useEffect(() => {
181
- if (i.trigger) {
182
- const d = (h) => {
183
- const u = h.target;
184
- u != null && u.contains(i.trigger) && c();
185
- };
186
- return window.addEventListener("scroll", d, { capture: !0 }), () => window.removeEventListener("scroll", d, { capture: !0 });
187
- }
188
- }, [i.trigger, c]), /* @__PURE__ */ f(
189
- W,
190
- {
191
- asChild: !0,
192
- disableOutsidePointerEvents: !1,
193
- onEscapeKeyDown: a,
194
- onPointerDownOutside: l,
195
- onFocusOutside: (d) => d.preventDefault(),
196
- onDismiss: c,
197
- children: /* @__PURE__ */ se(
198
- Q,
199
- {
200
- "data-state": i.stateAttribute,
201
- ...p,
202
- ...v,
203
- ref: o,
204
- style: {
205
- ...v.style,
206
- "--radix-tooltip-content-transform-origin": "var(--radix-popper-transform-origin)",
207
- "--radix-tooltip-content-available-width": "var(--radix-popper-available-width)",
208
- "--radix-tooltip-content-available-height": "var(--radix-popper-available-height)",
209
- "--radix-tooltip-trigger-width": "var(--radix-popper-anchor-width)",
210
- "--radix-tooltip-trigger-height": "var(--radix-popper-anchor-height)"
211
- },
212
- children: [
213
- /* @__PURE__ */ f(ve, { children: r }),
214
- /* @__PURE__ */ f(de, { scope: e, isInside: !0, children: /* @__PURE__ */ f(ne, { id: i.contentId, role: "tooltip", children: n || r }) })
215
- ]
216
- }
217
- )
218
- }
219
- );
220
- }
221
- );
222
- Y.displayName = b;
223
- var X = "TooltipArrow", he = s.forwardRef(
224
- (t, o) => {
225
- const { __scopeTooltip: e, ...r } = t, n = O(e);
226
- return fe(
227
- X,
228
- e
229
- ).isInside ? null : /* @__PURE__ */ f(Z, { ...n, ...r, ref: o });
230
- }
231
- );
232
- he.displayName = X;
233
- function me(t, o) {
234
- const e = Math.abs(o.top - t.y), r = Math.abs(o.bottom - t.y), n = Math.abs(o.right - t.x), a = Math.abs(o.left - t.x);
235
- switch (Math.min(e, r, n, a)) {
236
- case a:
237
- return "left";
238
- case n:
239
- return "right";
240
- case e:
241
- return "top";
242
- case r:
243
- return "bottom";
244
- default:
245
- throw new Error("unreachable");
246
- }
247
- }
248
- function Te(t, o, e = 5) {
249
- const r = [];
250
- switch (o) {
251
- case "top":
252
- r.push(
253
- { x: t.x - e, y: t.y + e },
254
- { x: t.x + e, y: t.y + e }
255
- );
256
- break;
257
- case "bottom":
258
- r.push(
259
- { x: t.x - e, y: t.y - e },
260
- { x: t.x + e, y: t.y - e }
261
- );
262
- break;
263
- case "left":
264
- r.push(
265
- { x: t.x + e, y: t.y - e },
266
- { x: t.x + e, y: t.y + e }
267
- );
268
- break;
269
- case "right":
270
- r.push(
271
- { x: t.x - e, y: t.y - e },
272
- { x: t.x - e, y: t.y + e }
273
- );
274
- break;
275
- }
276
- return r;
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]);
277
91
  }
278
- function ye(t) {
279
- const { top: o, right: e, bottom: r, left: n } = t;
280
- return [
281
- { x: n, y: o },
282
- { x: e, y: o },
283
- { x: e, y: r },
284
- { x: n, y: r }
285
- ];
286
- }
287
- function Ce(t, o) {
288
- const { x: e, y: r } = t;
289
- let n = !1;
290
- for (let a = 0, l = o.length - 1; a < o.length; l = a++) {
291
- const v = o[a], i = o[l], p = v.x, c = v.y, d = i.x, h = i.y;
292
- c > r != h > r && e < (d - p) * (r - c) / (h - c) + p && (n = !n);
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
+ }
293
113
  }
294
- return n;
114
+ return !0;
295
115
  }
296
- function xe(t) {
297
- const o = t.slice();
298
- return o.sort((e, r) => e.x < r.x ? -1 : e.x > r.x ? 1 : e.y < r.y ? -1 : e.y > r.y ? 1 : 0), ge(o);
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;
299
152
  }
300
- function ge(t) {
301
- if (t.length <= 1) return t.slice();
302
- const o = [];
303
- for (let r = 0; r < t.length; r++) {
304
- const n = t[r];
305
- for (; o.length >= 2; ) {
306
- const a = o[o.length - 1], l = o[o.length - 2];
307
- if ((a.x - l.x) * (n.y - l.y) >= (a.y - l.y) * (n.x - l.x)) o.pop();
308
- else break;
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)
309
189
  }
310
- o.push(n);
311
- }
312
- o.pop();
313
- const e = [];
314
- for (let r = t.length - 1; r >= 0; r--) {
315
- const n = t[r];
316
- for (; e.length >= 2; ) {
317
- const a = e[e.length - 1], l = e[e.length - 2];
318
- if ((a.x - l.x) * (n.y - l.y) >= (a.y - l.y) * (n.x - l.x)) e.pop();
319
- else break;
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);
320
231
  }
321
- e.push(n);
322
- }
323
- return e.pop(), o.length === 1 && e.length === 1 && o[0].x === e[0].x && o[0].y === e[0].y ? o : o.concat(e);
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]);
324
245
  }
325
- var He = F, Ne = B, Se = U, Ge = V, je = Y;
246
+ const ae = (e) => e.render(ne(e));
326
247
  export {
327
- je as Content,
328
- Ge as Portal,
329
- He as Provider,
330
- Ne as Root,
331
- B as Tooltip,
332
- he as TooltipArrow,
333
- Y as TooltipContent,
334
- V as TooltipPortal,
335
- F as TooltipProvider,
336
- U as TooltipTrigger,
337
- Se as Trigger
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
338
256
  };