@yselimcan/ui 0.0.3 → 0.0.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.
Files changed (225) hide show
  1. package/dist/index100.js +5 -4
  2. package/dist/index101.js +7 -66
  3. package/dist/index102.js +87 -8
  4. package/dist/index103.js +11 -12
  5. package/dist/index104.js +62 -3
  6. package/dist/index105.js +38 -4
  7. package/dist/index106.js +14 -6
  8. package/dist/index107.js +32 -7
  9. package/dist/index108.js +19 -88
  10. package/dist/index109.js +4 -11
  11. package/dist/index110.js +4 -63
  12. package/dist/index111.js +4 -37
  13. package/dist/index112.js +12 -14
  14. package/dist/index113.js +18 -32
  15. package/dist/index114.js +13 -19
  16. package/dist/index115.js +295 -4
  17. package/dist/index116.js +5 -4
  18. package/dist/index117.js +39 -5
  19. package/dist/index118.js +124 -10
  20. package/dist/index119.js +21 -19
  21. package/dist/index120.js +77 -13
  22. package/dist/index121.js +59 -291
  23. package/dist/index122.js +45 -4
  24. package/dist/index123.js +14 -39
  25. package/dist/index124.js +4 -124
  26. package/dist/index125.js +29 -20
  27. package/dist/index126.js +5 -77
  28. package/dist/index127.js +25 -62
  29. package/dist/index128.js +16 -44
  30. package/dist/index129.js +21 -29
  31. package/dist/index130.js +58 -11
  32. package/dist/index131.js +16 -65
  33. package/dist/index132.js +24 -50
  34. package/dist/index133.js +39 -11
  35. package/dist/index134.js +42 -12
  36. package/dist/index135.js +20 -11
  37. package/dist/index136.js +44 -36
  38. package/dist/index137.js +51 -11
  39. package/dist/index138.js +17 -8
  40. package/dist/index139.js +11 -5
  41. package/dist/index140.js +21 -86
  42. package/dist/index141.js +35 -11
  43. package/dist/index142.js +223 -256
  44. package/dist/index143.js +279 -75
  45. package/dist/index144.js +53 -11
  46. package/dist/index145.js +13 -54
  47. package/dist/index146.js +79 -11
  48. package/dist/index147.js +3 -11
  49. package/dist/index148.js +2 -2
  50. package/dist/index149.js +23 -18
  51. package/dist/index150.js +14 -65
  52. package/dist/index151.js +63 -98
  53. package/dist/index152.js +4 -9
  54. package/dist/index153.js +103 -7
  55. package/dist/index154.js +78 -21
  56. package/dist/index155.js +259 -99
  57. package/dist/index156.js +11 -7
  58. package/dist/index157.js +10 -32
  59. package/dist/index158.js +38 -228
  60. package/dist/index159.js +4 -74
  61. package/dist/index160.js +63 -280
  62. package/dist/index161.js +10 -54
  63. package/dist/index162.js +8 -3
  64. package/dist/index163.js +5 -14
  65. package/dist/index164.js +132 -14
  66. package/dist/index165.js +51 -26
  67. package/dist/index166.js +11 -7
  68. package/dist/index167.js +116 -21
  69. package/dist/index168.js +12 -25
  70. package/dist/index169.js +8 -160
  71. package/dist/index17.js +4 -4
  72. package/dist/index170.js +12 -113
  73. package/dist/index171.js +22 -75
  74. package/dist/index172.js +11 -64
  75. package/dist/index173.js +65 -68
  76. package/dist/index174.js +13 -14
  77. package/dist/index175.js +13 -6
  78. package/dist/index176.js +11 -16
  79. package/dist/index177.js +11 -21
  80. package/dist/index178.js +86 -57
  81. package/dist/index179.js +11 -17
  82. package/dist/index18.js +4 -4
  83. package/dist/index180.js +11 -27
  84. package/dist/index181.js +56 -42
  85. package/dist/index182.js +10 -20
  86. package/dist/index183.js +11 -48
  87. package/dist/index184.js +15 -48
  88. package/dist/index185.js +8 -17
  89. package/dist/index186.js +8 -11
  90. package/dist/index187.js +102 -34
  91. package/dist/index188.js +7 -15
  92. package/dist/index189.js +31 -78
  93. package/dist/index19.js +10 -10
  94. package/dist/index190.js +74 -23
  95. package/dist/index191.js +15 -4
  96. package/dist/index192.js +28 -11
  97. package/dist/index193.js +7 -10
  98. package/dist/index194.js +22 -40
  99. package/dist/index195.js +25 -5
  100. package/dist/index196.js +160 -9
  101. package/dist/index197.js +113 -11
  102. package/dist/index198.js +73 -115
  103. package/dist/index199.js +64 -11
  104. package/dist/index20.js +3 -3
  105. package/dist/index201.js +2 -2
  106. package/dist/index202.js +5 -5
  107. package/dist/index203.js +1 -1
  108. package/dist/index204.js +2 -2
  109. package/dist/index205.js +3 -3
  110. package/dist/index206.js +12 -4
  111. package/dist/index207.js +4 -19
  112. package/dist/index208.js +4 -128
  113. package/dist/index209.js +10 -45
  114. package/dist/index21.js +4 -4
  115. package/dist/index210.js +16 -17
  116. package/dist/index211.js +22 -5
  117. package/dist/index212.js +122 -175
  118. package/dist/index213.js +45 -76
  119. package/dist/index214.js +15 -396
  120. package/dist/index215.js +5 -7
  121. package/dist/index216.js +181 -5
  122. package/dist/index217.js +74 -15
  123. package/dist/index218.js +396 -12
  124. package/dist/index219.js +38 -32
  125. package/dist/index22.js +5 -5
  126. package/dist/index220.js +57 -39
  127. package/dist/index221.js +28 -57
  128. package/dist/index222.js +7 -27
  129. package/dist/index223.js +12 -7
  130. package/dist/index224.js +10 -11
  131. package/dist/index225.js +5 -5
  132. package/dist/index226.js +21 -11
  133. package/dist/index227.js +11 -21
  134. package/dist/index228.js +7 -11
  135. package/dist/index229.js +42 -7
  136. package/dist/index23.js +3 -3
  137. package/dist/index230.js +4 -43
  138. package/dist/index231.js +5 -597
  139. package/dist/index232.js +596 -11
  140. package/dist/index233.js +12 -4
  141. package/dist/index234.js +11 -6
  142. package/dist/index235.js +32 -11
  143. package/dist/index236.js +208 -14
  144. package/dist/index237.js +4 -209
  145. package/dist/index238.js +13 -3
  146. package/dist/index239.js +47 -13
  147. package/dist/index24.js +9 -9
  148. package/dist/index240.js +3 -47
  149. package/dist/index241.js +12 -3
  150. package/dist/index242.js +56 -11
  151. package/dist/index243.js +29 -57
  152. package/dist/index244.js +13 -29
  153. package/dist/index245.js +9 -14
  154. package/dist/index246.js +207 -9
  155. package/dist/index247.js +13 -205
  156. package/dist/index248.js +317 -16
  157. package/dist/index249.js +3 -6
  158. package/dist/index250.js +3 -322
  159. package/dist/index251.js +21 -3
  160. package/dist/index252.js +6 -3
  161. package/dist/index253.js +1 -1
  162. package/dist/index26.js +1 -1
  163. package/dist/index27.js +1 -1
  164. package/dist/index28.js +1 -1
  165. package/dist/index32.js +1 -1
  166. package/dist/index33.js +17 -17
  167. package/dist/index34.js +5 -5
  168. package/dist/index35.js +14 -14
  169. package/dist/index36.js +11 -11
  170. package/dist/index37.js +8 -8
  171. package/dist/index38.js +9 -9
  172. package/dist/index39.js +5 -5
  173. package/dist/index40.js +3 -3
  174. package/dist/index41.js +4 -4
  175. package/dist/index42.js +2 -2
  176. package/dist/index43.js +2 -2
  177. package/dist/index44.js +1 -1
  178. package/dist/index45.js +6 -6
  179. package/dist/index46.js +10 -10
  180. package/dist/index47.js +9 -9
  181. package/dist/index48.js +17 -17
  182. package/dist/index49.js +4 -4
  183. package/dist/index50.js +11 -11
  184. package/dist/index52.js +24 -24
  185. package/dist/index53.js +3 -3
  186. package/dist/index54.js +30 -30
  187. package/dist/index55.js +14 -14
  188. package/dist/index56.js +13 -13
  189. package/dist/index57.js +2 -2
  190. package/dist/index58.js +4 -4
  191. package/dist/index59.js +6 -6
  192. package/dist/index60.js +12 -12
  193. package/dist/index61.js +5 -5
  194. package/dist/index62.js +4 -4
  195. package/dist/index63.js +12 -12
  196. package/dist/index64.js +5 -5
  197. package/dist/index65.js +3 -3
  198. package/dist/index66.js +14 -14
  199. package/dist/index69.js +32 -32
  200. package/dist/index70.js +5 -5
  201. package/dist/index71.js +18 -18
  202. package/dist/index72.js +23 -23
  203. package/dist/index73.js +8 -8
  204. package/dist/index74.js +2 -2
  205. package/dist/index75.js +12 -12
  206. package/dist/index76.js +3 -3
  207. package/dist/index77.js +5 -5
  208. package/dist/index78.js +4 -4
  209. package/dist/index79.js +1 -1
  210. package/dist/index80.js +1 -1
  211. package/dist/index81.js +16 -16
  212. package/dist/index82.js +5 -5
  213. package/dist/index83.js +5 -5
  214. package/dist/index86.js +11 -54
  215. package/dist/index87.js +54 -11
  216. package/dist/index88.js +11 -11
  217. package/dist/index89.js +6 -6
  218. package/dist/index94.js +4 -133
  219. package/dist/index95.js +63 -24
  220. package/dist/index96.js +8 -8
  221. package/dist/index97.js +14 -5
  222. package/dist/index98.js +3 -12
  223. package/dist/index99.js +3 -22
  224. package/dist/styles.css +1 -1
  225. package/package.json +1 -1
package/dist/index158.js CHANGED
@@ -1,233 +1,43 @@
1
- import * as p from "react";
2
- import { isElement as P, isLastTraversableNode as U, getParentNode as Ce, isHTMLElement as Oe, getComputedStyle as Se, getOverflowAncestors as j, isWebKit as De } from "./index94.js";
3
- import { useTimeout as ce, Timeout as ke } from "./index148.js";
4
- import { useStableCallback as s } from "./index95.js";
5
- import { useFloatingTree as Me } from "./index145.js";
6
- import { createChangeEventDetails as S } from "./index113.js";
7
- import { createAttribute as Ke } from "./index238.js";
8
- import { isReactEvent as Ie } from "./index222.js";
9
- import { getTarget as w, getDocument as ie, contains as X, isRootElement as xe, isEventTargetWithin as f } from "./index173.js";
10
- import { getNodeChildren as G } from "./index242.js";
11
- import { triggerPress as le, escapeKey as Xe, outsidePress as Ye, none as We } from "./index114.js";
12
- const _e = {
13
- intentional: "onClick",
14
- sloppy: "onPointerDown"
15
- };
16
- function He(d) {
17
- return {
18
- escapeKey: typeof d == "boolean" ? d : d?.escapeKey ?? !1,
19
- outsidePress: typeof d == "boolean" ? d : d?.outsidePress ?? !0
1
+ const a = typeof navigator < "u", o = e(), n = f(), r = u(), c = typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter:none"), m = (
2
+ // iPads can claim to be MacIntel
3
+ o.platform === "MacIntel" && o.maxTouchPoints > 1 ? !0 : /iP(hone|ad|od)|iOS/.test(o.platform)
4
+ ), p = a && /firefox/i.test(r), g = a && /apple/i.test(navigator.vendor), d = a && /android/i.test(n) || /android/i.test(r), l = a && n.toLowerCase().startsWith("mac") && !navigator.maxTouchPoints, v = r.includes("jsdom/");
5
+ function e() {
6
+ if (!a)
7
+ return {
8
+ platform: "",
9
+ maxTouchPoints: -1
10
+ };
11
+ const t = navigator.userAgentData;
12
+ return t?.platform ? {
13
+ platform: t.platform,
14
+ maxTouchPoints: navigator.maxTouchPoints
15
+ } : {
16
+ platform: navigator.platform ?? "",
17
+ maxTouchPoints: navigator.maxTouchPoints ?? -1
20
18
  };
21
19
  }
22
- function Je(d, ue = {}) {
23
- const r = "rootStore" in d ? d.rootStore : d, Y = r.useState("open"), D = r.useState("floatingElement"), C = r.useState("referenceElement"), W = r.useState("domReferenceElement"), {
24
- onOpenChange: ae,
25
- dataRef: m
26
- } = r.context, {
27
- enabled: E = !0,
28
- escapeKey: k = !0,
29
- outsidePress: M = !0,
30
- outsidePressEvent: _ = "sloppy",
31
- referencePress: J = !1,
32
- referencePressEvent: H = "sloppy",
33
- ancestorScroll: Q = !1,
34
- bubbles: fe,
35
- externalTree: de
36
- } = ue, T = Me(de), pe = s(typeof M == "function" ? M : () => !1), v = typeof M == "function" ? pe : M, A = p.useRef(!1), {
37
- escapeKey: K,
38
- outsidePress: Z
39
- } = He(fe), u = p.useRef(null), I = ce(), z = ce(), b = s(() => {
40
- z.clear(), m.current.insideReactTree = !1;
41
- }), B = p.useRef(!1), ee = p.useRef(""), N = s((e) => {
42
- ee.current = e.pointerType;
43
- }), L = s(() => {
44
- const e = ee.current, n = e === "pen" || !e ? "mouse" : e, t = typeof _ == "function" ? _() : _;
45
- return typeof t == "string" ? t : t[n];
46
- }), h = s((e) => {
47
- if (!Y || !E || !k || e.key !== "Escape" || B.current)
48
- return;
49
- const n = m.current.floatingContext?.nodeId, t = T ? G(T.nodesRef.current, n) : [];
50
- if (!K && t.length > 0) {
51
- let i = !0;
52
- if (t.forEach((c) => {
53
- c.context?.open && !c.context.dataRef.current.__escapeKeyBubbles && (i = !1);
54
- }), !i)
55
- return;
56
- }
57
- const a = Ie(e) ? e.nativeEvent : e, o = S(Xe, a);
58
- r.setOpen(!1, o), !K && !o.isPropagationAllowed && e.stopPropagation();
59
- }), me = s((e) => {
60
- const n = L();
61
- return n === "intentional" && e.type !== "click" || n === "sloppy" && e.type === "click";
62
- }), g = s(() => {
63
- m.current.insideReactTree = !0, z.start(0, b);
64
- }), O = s((e, n = !1) => {
65
- if (me(e)) {
66
- b();
67
- return;
68
- }
69
- if (m.current.insideReactTree) {
70
- b();
71
- return;
72
- }
73
- if (L() === "intentional" && n || typeof v == "function" && !v(e))
74
- return;
75
- const t = w(e), a = `[${Ke("inert")}]`, o = ie(r.select("floatingElement")).querySelectorAll(a), i = r.context.triggerElements;
76
- if (t && (i.hasElement(t) || i.hasMatchingElement((l) => X(l, t))))
77
- return;
78
- let c = P(t) ? t : null;
79
- for (; c && !U(c); ) {
80
- const l = Ce(c);
81
- if (U(l) || !P(l))
82
- break;
83
- c = l;
84
- }
85
- if (o.length && P(t) && !xe(t) && // Clicked on a direct ancestor (e.g. FloatingOverlay).
86
- !X(t, r.select("floatingElement")) && // If the target root element contains none of the markers, then the
87
- // element was injected after the floating element rendered.
88
- Array.from(o).every((l) => !X(c, l)))
89
- return;
90
- if (Oe(t) && !("touches" in e)) {
91
- const l = U(t), R = Se(t), se = /auto|scroll/, Te = l || se.test(R.overflowX), ve = l || se.test(R.overflowY), be = Te && t.clientWidth > 0 && t.scrollWidth > t.clientWidth, Le = ve && t.clientHeight > 0 && t.scrollHeight > t.clientHeight, Re = R.direction === "rtl", Pe = Le && (Re ? e.offsetX <= t.offsetWidth - t.clientWidth : e.offsetX > t.clientWidth), we = be && e.offsetY > t.clientHeight;
92
- if (Pe || we)
93
- return;
94
- }
95
- const oe = m.current.floatingContext?.nodeId, ye = T && G(T.nodesRef.current, oe).some((l) => f(e, l.context?.elements.floating));
96
- if (f(e, r.select("floatingElement")) || f(e, r.select("domReferenceElement")) || ye)
97
- return;
98
- const re = T ? G(T.nodesRef.current, oe) : [];
99
- if (re.length > 0) {
100
- let l = !0;
101
- if (re.forEach((R) => {
102
- R.context?.open && !R.context.dataRef.current.__outsidePressBubbles && (l = !1);
103
- }), !l)
104
- return;
105
- }
106
- r.setOpen(!1, S(Ye, e)), b();
107
- }), te = s((e) => {
108
- L() !== "sloppy" || e.pointerType === "touch" || !r.select("open") || !E || f(e, r.select("floatingElement")) || f(e, r.select("domReferenceElement")) || O(e);
109
- }), Ee = s((e) => {
110
- if (L() !== "sloppy" || !r.select("open") || !E || f(e, r.select("floatingElement")) || f(e, r.select("domReferenceElement")))
111
- return;
112
- const n = e.touches[0];
113
- n && (u.current = {
114
- startTime: Date.now(),
115
- startX: n.clientX,
116
- startY: n.clientY,
117
- dismissOnTouchEnd: !1,
118
- dismissOnMouseDown: !0
119
- }, I.start(1e3, () => {
120
- u.current && (u.current.dismissOnTouchEnd = !1, u.current.dismissOnMouseDown = !1);
121
- }));
122
- }), V = s((e) => {
123
- const n = w(e);
124
- function t() {
125
- Ee(e), n?.removeEventListener(e.type, t);
126
- }
127
- n?.addEventListener(e.type, t);
128
- }), y = s((e) => {
129
- const n = A.current;
130
- if (A.current = !1, I.clear(), e.type === "mousedown" && u.current && !u.current.dismissOnMouseDown)
131
- return;
132
- const t = w(e);
133
- function a() {
134
- e.type === "pointerdown" ? te(e) : O(e, n), t?.removeEventListener(e.type, a);
135
- }
136
- t?.addEventListener(e.type, a);
137
- }), he = s((e) => {
138
- if (L() !== "sloppy" || !u.current || f(e, r.select("floatingElement")) || f(e, r.select("domReferenceElement")))
139
- return;
140
- const n = e.touches[0];
141
- if (!n)
142
- return;
143
- const t = Math.abs(n.clientX - u.current.startX), a = Math.abs(n.clientY - u.current.startY), o = Math.sqrt(t * t + a * a);
144
- o > 5 && (u.current.dismissOnTouchEnd = !0), o > 10 && (O(e), I.clear(), u.current = null);
145
- }), $ = s((e) => {
146
- const n = w(e);
147
- function t() {
148
- he(e), n?.removeEventListener(e.type, t);
149
- }
150
- n?.addEventListener(e.type, t);
151
- }), ge = s((e) => {
152
- L() !== "sloppy" || !u.current || f(e, r.select("floatingElement")) || f(e, r.select("domReferenceElement")) || (u.current.dismissOnTouchEnd && O(e), I.clear(), u.current = null);
153
- }), q = s((e) => {
154
- const n = w(e);
155
- function t() {
156
- ge(e), n?.removeEventListener(e.type, t);
157
- }
158
- n?.addEventListener(e.type, t);
159
- });
160
- p.useEffect(() => {
161
- if (!Y || !E)
162
- return;
163
- m.current.__escapeKeyBubbles = K, m.current.__outsidePressBubbles = Z;
164
- const e = new ke();
165
- function n(c) {
166
- r.setOpen(!1, S(We, c));
167
- }
168
- function t() {
169
- e.clear(), B.current = !0;
170
- }
171
- function a() {
172
- e.start(
173
- // 0ms or 1ms don't work in Safari. 5ms appears to consistently work.
174
- // Only apply to WebKit for the test to remain 0ms.
175
- De() ? 5 : 0,
176
- () => {
177
- B.current = !1;
178
- }
179
- );
180
- }
181
- const o = ie(D);
182
- o.addEventListener("pointerdown", N, !0), k && (o.addEventListener("keydown", h), o.addEventListener("compositionstart", t), o.addEventListener("compositionend", a)), v && (o.addEventListener("click", y, !0), o.addEventListener("pointerdown", y, !0), o.addEventListener("touchstart", V, !0), o.addEventListener("touchmove", $, !0), o.addEventListener("touchend", q, !0), o.addEventListener("mousedown", y, !0));
183
- let i = [];
184
- return Q && (P(W) && (i = j(W)), P(D) && (i = i.concat(j(D))), !P(C) && C && C.contextElement && (i = i.concat(j(C.contextElement)))), i = i.filter((c) => c !== o.defaultView?.visualViewport), i.forEach((c) => {
185
- c.addEventListener("scroll", n, {
186
- passive: !0
187
- });
188
- }), () => {
189
- o.removeEventListener("pointerdown", N, !0), k && (o.removeEventListener("keydown", h), o.removeEventListener("compositionstart", t), o.removeEventListener("compositionend", a)), v && (o.removeEventListener("click", y, !0), o.removeEventListener("pointerdown", y, !0), o.removeEventListener("touchstart", V, !0), o.removeEventListener("touchmove", $, !0), o.removeEventListener("touchend", q, !0), o.removeEventListener("mousedown", y, !0)), i.forEach((c) => {
190
- c.removeEventListener("scroll", n);
191
- }), e.clear();
192
- };
193
- }, [m, D, C, W, k, v, Y, ae, Q, E, K, Z, h, O, y, te, V, $, q, N, r]), p.useEffect(b, [v, b]);
194
- const F = p.useMemo(() => ({
195
- onKeyDown: h,
196
- ...J && {
197
- [_e[H]]: (e) => {
198
- r.setOpen(!1, S(le, e.nativeEvent));
199
- },
200
- ...H !== "intentional" && {
201
- onClick(e) {
202
- r.setOpen(!1, S(le, e.nativeEvent));
203
- }
204
- }
205
- }
206
- }), [h, r, J, H]), x = s((e) => {
207
- const n = w(e.nativeEvent);
208
- !X(r.select("floatingElement"), n) || e.button !== 0 || (A.current = !0);
209
- }), ne = p.useMemo(() => ({
210
- onKeyDown: h,
211
- // `onMouseDown` may be blocked if `event.preventDefault()` is called in
212
- // `onPointerDown`, such as with <NumberField.ScrubArea>.
213
- // See https://github.com/mui/base-ui/pull/3379
214
- onPointerDown: x,
215
- onMouseDown: x,
216
- onMouseUp: x,
217
- onClickCapture: g,
218
- onMouseDownCapture: g,
219
- onPointerDownCapture: g,
220
- onMouseUpCapture: g,
221
- onTouchEndCapture: g,
222
- onTouchMoveCapture: g
223
- }), [h, x, g]);
224
- return p.useMemo(() => E ? {
225
- reference: F,
226
- floating: ne,
227
- trigger: F
228
- } : {}, [E, F, ne]);
20
+ function u() {
21
+ if (!a)
22
+ return "";
23
+ const t = navigator.userAgentData;
24
+ return t && Array.isArray(t.brands) ? t.brands.map(({
25
+ brand: i,
26
+ version: s
27
+ }) => `${i}/${s}`).join(" ") : navigator.userAgent;
28
+ }
29
+ function f() {
30
+ if (!a)
31
+ return "";
32
+ const t = navigator.userAgentData;
33
+ return t?.platform ? t.platform : navigator.platform ?? "";
229
34
  }
230
35
  export {
231
- He as normalizeProp,
232
- Je as useDismiss
36
+ d as isAndroid,
37
+ p as isFirefox,
38
+ m as isIOS,
39
+ v as isJSDOM,
40
+ l as isMac,
41
+ g as isSafari,
42
+ c as isWebKit
233
43
  };
package/dist/index159.js CHANGED
@@ -1,77 +1,7 @@
1
- import * as r from "react";
2
- import { useId as P } from "./index149.js";
3
- import { useFloatingParentNodeId as S } from "./index145.js";
4
- import { EMPTY_OBJECT as F } from "./index106.js";
5
- import { getFloatingFocusElement as y } from "./index173.js";
6
- const T = /* @__PURE__ */ new Map([["select", "listbox"], ["combobox", "listbox"], ["label", !1]]);
7
- function k(c, I = {}) {
8
- const a = "rootStore" in c ? c.rootStore : c, l = a.useState("open"), u = a.useState("floatingId"), x = a.useState("domReferenceElement"), d = a.useState("floatingElement"), {
9
- enabled: m = !0,
10
- role: o = "dialog"
11
- } = I, M = P(), s = x?.id || M, t = r.useMemo(() => y(d)?.id || u, [d, u]), e = T.get(o) ?? o, p = S() != null, i = r.useMemo(() => e === "tooltip" || o === "label" ? F : {
12
- "aria-haspopup": e === "alertdialog" ? "dialog" : e,
13
- "aria-expanded": "false",
14
- ...e === "listbox" && {
15
- role: "combobox"
16
- },
17
- ...e === "menu" && p && {
18
- role: "menuitem"
19
- },
20
- ...o === "select" && {
21
- "aria-autocomplete": "none"
22
- },
23
- ...o === "combobox" && {
24
- "aria-autocomplete": "list"
25
- }
26
- }, [e, p, o]), f = r.useMemo(() => e === "tooltip" || o === "label" ? {
27
- [`aria-${o === "label" ? "labelledby" : "describedby"}`]: l ? t : void 0
28
- } : {
29
- ...i,
30
- "aria-expanded": l ? "true" : "false",
31
- "aria-controls": l ? t : void 0,
32
- ...e === "menu" && {
33
- id: s
34
- }
35
- }, [e, t, l, s, o, i]), b = r.useMemo(() => {
36
- const n = {
37
- id: t,
38
- ...e && {
39
- role: e
40
- }
41
- };
42
- return e === "tooltip" || o === "label" ? n : {
43
- ...n,
44
- ...e === "menu" && {
45
- "aria-labelledby": s
46
- }
47
- };
48
- }, [e, t, s, o]), g = r.useCallback(({
49
- active: n,
50
- selected: R
51
- }) => {
52
- const E = {
53
- role: "option",
54
- ...n && {
55
- id: `${t}-fui-option`
56
- }
57
- };
58
- switch (o) {
59
- case "select":
60
- case "combobox":
61
- return {
62
- ...E,
63
- "aria-selected": R
64
- };
65
- }
66
- return {};
67
- }, [t, o]);
68
- return r.useMemo(() => m ? {
69
- reference: f,
70
- floating: b,
71
- item: g,
72
- trigger: i
73
- } : {}, [m, f, b, i, g]);
1
+ function o(t) {
2
+ const i = t.currentTarget.getBoundingClientRect();
3
+ return i.top + 1 <= t.clientY && t.clientY <= i.bottom - 1 && i.left + 1 <= t.clientX && t.clientX <= i.right - 1;
74
4
  }
75
5
  export {
76
- k as useRole
6
+ o as isMouseWithinBounds
77
7
  };