@yselimcan/ui 0.0.8 → 0.0.9

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 (266) hide show
  1. package/dist/index.js +15277 -100
  2. package/dist/styles.css +1 -1
  3. package/package.json +7 -10
  4. package/dist/index10.js +0 -137
  5. package/dist/index100.js +0 -8
  6. package/dist/index101.js +0 -10
  7. package/dist/index102.js +0 -90
  8. package/dist/index103.js +0 -15
  9. package/dist/index104.js +0 -65
  10. package/dist/index105.js +0 -40
  11. package/dist/index106.js +0 -16
  12. package/dist/index107.js +0 -35
  13. package/dist/index108.js +0 -21
  14. package/dist/index109.js +0 -8
  15. package/dist/index11.js +0 -21
  16. package/dist/index110.js +0 -6
  17. package/dist/index111.js +0 -7
  18. package/dist/index112.js +0 -14
  19. package/dist/index113.js +0 -21
  20. package/dist/index114.js +0 -15
  21. package/dist/index115.js +0 -299
  22. package/dist/index116.js +0 -7
  23. package/dist/index117.js +0 -41
  24. package/dist/index118.js +0 -128
  25. package/dist/index119.js +0 -23
  26. package/dist/index12.js +0 -20
  27. package/dist/index120.js +0 -79
  28. package/dist/index121.js +0 -67
  29. package/dist/index122.js +0 -48
  30. package/dist/index123.js +0 -16
  31. package/dist/index124.js +0 -8
  32. package/dist/index125.js +0 -32
  33. package/dist/index126.js +0 -7
  34. package/dist/index127.js +0 -30
  35. package/dist/index128.js +0 -20
  36. package/dist/index129.js +0 -24
  37. package/dist/index13.js +0 -206
  38. package/dist/index130.js +0 -61
  39. package/dist/index131.js +0 -20
  40. package/dist/index132.js +0 -30
  41. package/dist/index133.js +0 -43
  42. package/dist/index134.js +0 -45
  43. package/dist/index135.js +0 -24
  44. package/dist/index136.js +0 -51
  45. package/dist/index137.js +0 -54
  46. package/dist/index138.js +0 -20
  47. package/dist/index139.js +0 -14
  48. package/dist/index14.js +0 -24
  49. package/dist/index140.js +0 -25
  50. package/dist/index141.js +0 -38
  51. package/dist/index142.js +0 -233
  52. package/dist/index143.js +0 -286
  53. package/dist/index144.js +0 -56
  54. package/dist/index145.js +0 -18
  55. package/dist/index146.js +0 -82
  56. package/dist/index147.js +0 -6
  57. package/dist/index148.js +0 -33
  58. package/dist/index149.js +0 -26
  59. package/dist/index15.js +0 -19
  60. package/dist/index150.js +0 -18
  61. package/dist/index151.js +0 -72
  62. package/dist/index152.js +0 -6
  63. package/dist/index153.js +0 -107
  64. package/dist/index154.js +0 -82
  65. package/dist/index155.js +0 -266
  66. package/dist/index156.js +0 -14
  67. package/dist/index157.js +0 -13
  68. package/dist/index158.js +0 -43
  69. package/dist/index159.js +0 -7
  70. package/dist/index16.js +0 -8
  71. package/dist/index160.js +0 -69
  72. package/dist/index161.js +0 -12
  73. package/dist/index162.js +0 -11
  74. package/dist/index163.js +0 -8
  75. package/dist/index164.js +0 -136
  76. package/dist/index165.js +0 -56
  77. package/dist/index166.js +0 -14
  78. package/dist/index167.js +0 -120
  79. package/dist/index168.js +0 -14
  80. package/dist/index169.js +0 -14
  81. package/dist/index17.js +0 -46
  82. package/dist/index170.js +0 -69
  83. package/dist/index171.js +0 -15
  84. package/dist/index172.js +0 -15
  85. package/dist/index173.js +0 -15
  86. package/dist/index174.js +0 -14
  87. package/dist/index175.js +0 -90
  88. package/dist/index176.js +0 -14
  89. package/dist/index177.js +0 -14
  90. package/dist/index178.js +0 -59
  91. package/dist/index179.js +0 -14
  92. package/dist/index18.js +0 -41
  93. package/dist/index180.js +0 -14
  94. package/dist/index181.js +0 -21
  95. package/dist/index182.js +0 -11
  96. package/dist/index183.js +0 -11
  97. package/dist/index184.js +0 -106
  98. package/dist/index185.js +0 -10
  99. package/dist/index186.js +0 -35
  100. package/dist/index187.js +0 -77
  101. package/dist/index188.js +0 -17
  102. package/dist/index189.js +0 -31
  103. package/dist/index19.js +0 -80
  104. package/dist/index190.js +0 -15
  105. package/dist/index191.js +0 -10
  106. package/dist/index192.js +0 -25
  107. package/dist/index193.js +0 -27
  108. package/dist/index194.js +0 -163
  109. package/dist/index195.js +0 -116
  110. package/dist/index196.js +0 -78
  111. package/dist/index197.js +0 -67
  112. package/dist/index198.js +0 -11
  113. package/dist/index199.js +0 -25
  114. package/dist/index20.js +0 -25
  115. package/dist/index200.js +0 -8
  116. package/dist/index201.js +0 -6
  117. package/dist/index202.js +0 -12
  118. package/dist/index203.js +0 -41
  119. package/dist/index204.js +0 -59
  120. package/dist/index205.js +0 -30
  121. package/dist/index206.js +0 -10
  122. package/dist/index207.js +0 -15
  123. package/dist/index208.js +0 -14
  124. package/dist/index209.js +0 -14
  125. package/dist/index21.js +0 -40
  126. package/dist/index210.js +0 -24
  127. package/dist/index211.js +0 -14
  128. package/dist/index212.js +0 -10
  129. package/dist/index213.js +0 -45
  130. package/dist/index214.js +0 -599
  131. package/dist/index215.js +0 -14
  132. package/dist/index216.js +0 -19
  133. package/dist/index217.js +0 -50
  134. package/dist/index218.js +0 -202
  135. package/dist/index219.js +0 -50
  136. package/dist/index22.js +0 -31
  137. package/dist/index220.js +0 -22
  138. package/dist/index221.js +0 -35
  139. package/dist/index222.js +0 -9
  140. package/dist/index223.js +0 -29
  141. package/dist/index224.js +0 -14
  142. package/dist/index225.js +0 -24
  143. package/dist/index226.js +0 -130
  144. package/dist/index227.js +0 -47
  145. package/dist/index228.js +0 -20
  146. package/dist/index229.js +0 -7
  147. package/dist/index23.js +0 -25
  148. package/dist/index230.js +0 -183
  149. package/dist/index231.js +0 -78
  150. package/dist/index232.js +0 -401
  151. package/dist/index233.js +0 -6
  152. package/dist/index234.js +0 -7
  153. package/dist/index235.js +0 -17
  154. package/dist/index236.js +0 -23
  155. package/dist/index237.js +0 -8
  156. package/dist/index238.js +0 -211
  157. package/dist/index239.js +0 -6
  158. package/dist/index24.js +0 -56
  159. package/dist/index240.js +0 -16
  160. package/dist/index241.js +0 -50
  161. package/dist/index242.js +0 -6
  162. package/dist/index243.js +0 -15
  163. package/dist/index244.js +0 -60
  164. package/dist/index245.js +0 -32
  165. package/dist/index246.js +0 -16
  166. package/dist/index247.js +0 -11
  167. package/dist/index248.js +0 -209
  168. package/dist/index249.js +0 -17
  169. package/dist/index25.js +0 -35
  170. package/dist/index250.js +0 -324
  171. package/dist/index251.js +0 -5
  172. package/dist/index252.js +0 -5
  173. package/dist/index253.js +0 -489
  174. package/dist/index254.js +0 -10
  175. package/dist/index255.js +0 -4
  176. package/dist/index256.js +0 -46
  177. package/dist/index257.js +0 -58
  178. package/dist/index258.js +0 -10
  179. package/dist/index259.js +0 -4
  180. package/dist/index26.js +0 -7
  181. package/dist/index260.js +0 -57
  182. package/dist/index261.js +0 -58
  183. package/dist/index262.js +0 -4
  184. package/dist/index263.js +0 -4
  185. package/dist/index264.js +0 -4
  186. package/dist/index265.js +0 -4
  187. package/dist/index27.js +0 -82
  188. package/dist/index28.js +0 -32
  189. package/dist/index29.js +0 -6
  190. package/dist/index3.js +0 -181
  191. package/dist/index30.js +0 -9
  192. package/dist/index31.js +0 -6
  193. package/dist/index32.js +0 -23
  194. package/dist/index33.js +0 -207
  195. package/dist/index34.js +0 -25
  196. package/dist/index35.js +0 -102
  197. package/dist/index36.js +0 -69
  198. package/dist/index37.js +0 -66
  199. package/dist/index38.js +0 -113
  200. package/dist/index39.js +0 -53
  201. package/dist/index4.js +0 -47
  202. package/dist/index40.js +0 -35
  203. package/dist/index41.js +0 -28
  204. package/dist/index42.js +0 -18
  205. package/dist/index43.js +0 -27
  206. package/dist/index44.js +0 -25
  207. package/dist/index45.js +0 -36
  208. package/dist/index46.js +0 -78
  209. package/dist/index47.js +0 -65
  210. package/dist/index48.js +0 -128
  211. package/dist/index49.js +0 -19
  212. package/dist/index5.js +0 -52
  213. package/dist/index50.js +0 -86
  214. package/dist/index51.js +0 -6
  215. package/dist/index52.js +0 -268
  216. package/dist/index53.js +0 -25
  217. package/dist/index54.js +0 -207
  218. package/dist/index55.js +0 -146
  219. package/dist/index56.js +0 -88
  220. package/dist/index57.js +0 -29
  221. package/dist/index58.js +0 -30
  222. package/dist/index59.js +0 -48
  223. package/dist/index6.js +0 -93
  224. package/dist/index60.js +0 -79
  225. package/dist/index61.js +0 -45
  226. package/dist/index62.js +0 -46
  227. package/dist/index63.js +0 -76
  228. package/dist/index64.js +0 -45
  229. package/dist/index65.js +0 -22
  230. package/dist/index66.js +0 -101
  231. package/dist/index67.js +0 -14
  232. package/dist/index68.js +0 -6
  233. package/dist/index69.js +0 -321
  234. package/dist/index7.js +0 -294
  235. package/dist/index70.js +0 -24
  236. package/dist/index71.js +0 -143
  237. package/dist/index72.js +0 -200
  238. package/dist/index73.js +0 -43
  239. package/dist/index74.js +0 -29
  240. package/dist/index75.js +0 -148
  241. package/dist/index76.js +0 -32
  242. package/dist/index77.js +0 -53
  243. package/dist/index78.js +0 -28
  244. package/dist/index79.js +0 -15
  245. package/dist/index8.js +0 -264
  246. package/dist/index80.js +0 -15
  247. package/dist/index81.js +0 -135
  248. package/dist/index82.js +0 -31
  249. package/dist/index83.js +0 -35
  250. package/dist/index84.js +0 -17
  251. package/dist/index85.js +0 -2765
  252. package/dist/index86.js +0 -14
  253. package/dist/index87.js +0 -57
  254. package/dist/index88.js +0 -98
  255. package/dist/index89.js +0 -21
  256. package/dist/index9.js +0 -197
  257. package/dist/index90.js +0 -18
  258. package/dist/index91.js +0 -35
  259. package/dist/index92.js +0 -14
  260. package/dist/index93.js +0 -92
  261. package/dist/index94.js +0 -7
  262. package/dist/index95.js +0 -69
  263. package/dist/index96.js +0 -11
  264. package/dist/index97.js +0 -16
  265. package/dist/index98.js +0 -6
  266. package/dist/index99.js +0 -6
package/dist/index142.js DELETED
@@ -1,233 +0,0 @@
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 "./index164.js";
3
- import { useTimeout as ce, Timeout as ke } from "./index148.js";
4
- import { useStableCallback as s } from "./index127.js";
5
- import { useFloatingTree as Me } from "./index178.js";
6
- import { createChangeEventDetails as S } from "./index107.js";
7
- import { createAttribute as Ke } from "./index239.js";
8
- import { isReactEvent as Ie } from "./index205.js";
9
- import { getTarget as w, getDocument as ie, contains as X, isRootElement as xe, isEventTargetWithin as f } from "./index151.js";
10
- import { getNodeChildren as G } from "./index243.js";
11
- import { triggerPress as le, escapeKey as Xe, outsidePress as Ye, none as We } from "./index108.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
20
- };
21
- }
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]);
229
- }
230
- export {
231
- He as normalizeProp,
232
- Je as useDismiss
233
- };
package/dist/index143.js DELETED
@@ -1,286 +0,0 @@
1
- import * as m from "react";
2
- import { isHTMLElement as be } from "./index164.js";
3
- import { useValueAsRef as A } from "./index128.js";
4
- import { useStableCallback as ae } from "./index127.js";
5
- import { useIsoLayoutEffect as L } from "./index126.js";
6
- import { useFloatingParentNodeId as ze, useFloatingTree as Ge } from "./index178.js";
7
- import { createChangeEventDetails as X } from "./index107.js";
8
- import { enqueueFocus as We } from "./index240.js";
9
- import { ARROW_DOWN as ee, ARROW_LEFT as W, ARROW_RIGHT as _, ARROW_UP as Te } from "./index247.js";
10
- import { isIndexOutOfListBounds as Me, getMinListIndex as fe, getMaxListIndex as Pe, createGridCellMap as _e, isListIndexDisabled as de, getGridNavigatedIndex as qe, getGridCellIndexOfCorner as He, getGridCellIndices as $e, findNonDisabledListIndex as Y } from "./index248.js";
11
- import { getFloatingFocusElement as Be, isTypeableCombobox as Ue, activeElement as ve, getDocument as je, contains as Ce, getTarget as Je } from "./index151.js";
12
- import { stopEvent as T, isVirtualClick as Qe, isVirtualPointerEvent as Xe } from "./index205.js";
13
- import { listNavigation as me, focusOut as Ye } from "./index108.js";
14
- const Ze = "Escape";
15
- function re(o, p, c) {
16
- switch (o) {
17
- case "vertical":
18
- return p;
19
- case "horizontal":
20
- return c;
21
- default:
22
- return p || c;
23
- }
24
- }
25
- function Z(o, p) {
26
- return re(p, o === Te || o === ee, o === W || o === _);
27
- }
28
- function pe(o, p, c) {
29
- return re(p, o === ee, c ? o === W : o === _) || o === "Enter" || o === " " || o === "";
30
- }
31
- function er(o, p, c) {
32
- return re(p, c ? o === W : o === _, o === ee);
33
- }
34
- function rr(o, p, c, s) {
35
- const g = c ? o === _ : o === W, O = o === Te;
36
- return p === "both" || p === "horizontal" && s && s > 1 ? o === Ze : re(p, g, O);
37
- }
38
- function pr(o, p) {
39
- const c = "rootStore" in o ? o.rootStore : o, s = c.useState("open"), g = c.useState("floatingElement"), O = c.useState("domReferenceElement"), ge = c.context.dataRef, {
40
- listRef: n,
41
- activeIndex: y,
42
- onNavigate: Se = () => {
43
- },
44
- enabled: E = !0,
45
- selectedIndex: N = null,
46
- allowEscape: te = !1,
47
- loopFocus: q = !1,
48
- nested: b = !1,
49
- rtl: x = !1,
50
- virtual: f = !1,
51
- focusItemOnOpen: M = "auto",
52
- focusItemOnHover: ne = !0,
53
- openOnArrowKeyDown: oe = !0,
54
- disabledIndices: R = void 0,
55
- orientation: d = "vertical",
56
- parentOrientation: Ie,
57
- cols: S = 1,
58
- scrollItemIntoView: Fe = !0,
59
- itemSizes: Ae,
60
- dense: Le = !1,
61
- id: Re,
62
- resetOnPointerLeave: Ne = !0,
63
- externalTree: ke
64
- } = p;
65
- process.env.NODE_ENV !== "production" && (te && (q || console.warn("`useListNavigation` looping must be enabled to allow escaping."), f || console.warn("`useListNavigation` must be virtual to allow escaping.")), d === "vertical" && S > 1 && console.warn("In grid list navigation mode (`cols` > 1), the `orientation` should", 'be either "horizontal" or "both".'));
66
- const De = Be(g), k = A(De), H = ze(), P = Ge(ke);
67
- L(() => {
68
- ge.current.orientation = d;
69
- }, [ge, d]);
70
- const ie = Ue(O), v = m.useRef(M), t = m.useRef(N ?? -1), C = m.useRef(null), F = m.useRef(!0), l = ae((e) => {
71
- Se(t.current === -1 ? null : t.current, e);
72
- }), he = m.useRef(l), D = m.useRef(!!g), Oe = m.useRef(s), h = m.useRef(!1), $ = m.useRef(!1), ce = A(R), B = A(s), Ke = A(Fe), K = A(N), xe = A(Ne), ue = ae(() => {
73
- function e(a) {
74
- f ? P?.events.emit("virtualfocus", a) : We(a, {
75
- sync: h.current,
76
- preventScroll: !0
77
- });
78
- }
79
- const i = n.current[t.current], r = $.current;
80
- i && e(i), (h.current ? (a) => a() : requestAnimationFrame)(() => {
81
- const a = n.current[t.current] || i;
82
- if (!a)
83
- return;
84
- i || e(a);
85
- const I = Ke.current;
86
- I && // eslint-disable-next-line @typescript-eslint/no-use-before-define
87
- se && (r || !F.current) && a.scrollIntoView?.(typeof I == "boolean" ? {
88
- block: "nearest",
89
- inline: "nearest"
90
- } : I);
91
- });
92
- });
93
- L(() => {
94
- E && (s && g ? (t.current = N ?? -1, v.current && N != null && ($.current = !0, l())) : D.current && (t.current = -1, he.current()));
95
- }, [E, s, g, N, l]), L(() => {
96
- if (E) {
97
- if (!s) {
98
- h.current = !1;
99
- return;
100
- }
101
- if (g)
102
- if (y == null) {
103
- if (h.current = !1, K.current != null)
104
- return;
105
- if (D.current && (t.current = -1, ue()), (!Oe.current || !D.current) && v.current && (C.current != null || v.current === !0 && C.current == null)) {
106
- let e = 0;
107
- const i = () => {
108
- n.current[0] == null ? (e < 2 && (e ? requestAnimationFrame : queueMicrotask)(i), e += 1) : (t.current = C.current == null || pe(C.current, d, x) || b ? fe(n) : Pe(n), C.current = null, l());
109
- };
110
- i();
111
- }
112
- } else Me(n, y) || (t.current = y, ue(), $.current = !1);
113
- }
114
- }, [E, s, g, y, K, b, n, d, x, l, ue, ce]), L(() => {
115
- if (!E || g || !P || f || !D.current)
116
- return;
117
- const e = P.nodesRef.current, i = e.find((a) => a.id === H)?.context?.elements.floating, r = ve(je(g)), u = e.some((a) => a.context && Ce(a.context.elements.floating, r));
118
- i && !u && F.current && i.focus({
119
- preventScroll: !0
120
- });
121
- }, [E, g, P, H, f]), L(() => {
122
- he.current = l, Oe.current = s, D.current = !!g;
123
- }), L(() => {
124
- s || (C.current = null, v.current = M);
125
- }, [s, M]);
126
- const Ee = y != null, se = m.useMemo(() => {
127
- function e(r) {
128
- if (!B.current)
129
- return;
130
- const u = n.current.indexOf(r.currentTarget);
131
- u !== -1 && t.current !== u && (t.current = u, l(r));
132
- }
133
- return {
134
- onFocus(r) {
135
- h.current = !0, e(r);
136
- },
137
- onClick: ({
138
- currentTarget: r
139
- }) => r.focus({
140
- preventScroll: !0
141
- }),
142
- // Safari
143
- onMouseMove(r) {
144
- h.current = !0, $.current = !1, ne && e(r);
145
- },
146
- onPointerLeave(r) {
147
- if (!B.current || !F.current || r.pointerType === "touch")
148
- return;
149
- h.current = !0;
150
- const u = r.relatedTarget;
151
- !ne || n.current.includes(u) || xe.current && (t.current = -1, l(r), f || k.current?.focus({
152
- preventScroll: !0
153
- }));
154
- }
155
- };
156
- }, [B, k, ne, n, l, xe, f]), U = m.useCallback(() => Ie ?? P?.nodesRef.current.find((e) => e.id === H)?.context?.dataRef?.current.orientation, [H, P, Ie]), V = ae((e) => {
157
- if (F.current = !1, h.current = !0, e.which === 229 || !B.current && e.currentTarget === k.current)
158
- return;
159
- if (b && rr(e.key, d, x, S)) {
160
- Z(e.key, U()) || T(e), c.setOpen(!1, X(me, e.nativeEvent)), be(O) && (f ? P?.events.emit("virtualfocus", O) : O.focus());
161
- return;
162
- }
163
- const i = t.current, r = fe(n, R), u = Pe(n, R);
164
- if (ie || (e.key === "Home" && (T(e), t.current = r, l(e)), e.key === "End" && (T(e), t.current = u, l(e))), S > 1) {
165
- const a = Ae || Array.from({
166
- length: n.current.length
167
- }, () => ({
168
- width: 1,
169
- height: 1
170
- })), I = _e(a, S, Le), z = I.findIndex((w) => w != null && !de(n, w, R)), le = I.reduce((w, G, Ve) => G != null && !de(n, G, R) ? Ve : w, -1), Q = I[qe({
171
- current: I.map((w) => w != null ? n.current[w] : null)
172
- }, {
173
- event: e,
174
- orientation: d,
175
- loopFocus: q,
176
- rtl: x,
177
- cols: S,
178
- // treat undefined (empty grid spaces) as disabled indices so we
179
- // don't end up in them
180
- disabledIndices: $e([...(typeof R != "function" ? R : null) || n.current.map((w, G) => de(n, G, R) ? G : void 0), void 0], I),
181
- minIndex: z,
182
- maxIndex: le,
183
- prevIndex: He(
184
- t.current > u ? r : t.current,
185
- a,
186
- I,
187
- S,
188
- // use a corner matching the edge closest to the direction
189
- // we're moving in so we don't end up in the same item. Prefer
190
- // top/left over bottom/right.
191
- // eslint-disable-next-line no-nested-ternary
192
- e.key === ee ? "bl" : e.key === (x ? W : _) ? "tr" : "tl"
193
- ),
194
- stopEvent: !0
195
- })];
196
- if (Q != null && (t.current = Q, l(e)), d === "both")
197
- return;
198
- }
199
- if (Z(e.key, d)) {
200
- if (T(e), s && !f && ve(e.currentTarget.ownerDocument) === e.currentTarget) {
201
- t.current = pe(e.key, d, x) ? r : u, l(e);
202
- return;
203
- }
204
- pe(e.key, d, x) ? q ? i >= u ? te && i !== n.current.length ? t.current = -1 : (h.current = !1, t.current = r) : t.current = Y(n, {
205
- startingIndex: i,
206
- disabledIndices: R
207
- }) : t.current = Math.min(u, Y(n, {
208
- startingIndex: i,
209
- disabledIndices: R
210
- })) : q ? i <= r ? te && i !== -1 ? t.current = n.current.length : (h.current = !1, t.current = u) : t.current = Y(n, {
211
- startingIndex: i,
212
- decrement: !0,
213
- disabledIndices: R
214
- }) : t.current = Math.max(r, Y(n, {
215
- startingIndex: i,
216
- decrement: !0,
217
- disabledIndices: R
218
- })), Me(n, t.current) && (t.current = -1), l(e);
219
- }
220
- }), j = m.useMemo(() => f && s && Ee && {
221
- "aria-activedescendant": `${Re}-${y}`
222
- }, [f, s, Ee, Re, y]), we = m.useMemo(() => ({
223
- "aria-orientation": d === "both" ? void 0 : d,
224
- ...ie ? {} : j,
225
- onKeyDown(e) {
226
- if (e.key === "Tab" && e.shiftKey && s && !f) {
227
- const i = Je(e.nativeEvent);
228
- if (i && !Ce(k.current, i))
229
- return;
230
- T(e), c.setOpen(!1, X(Ye, e.nativeEvent)), be(O) && O.focus();
231
- return;
232
- }
233
- V(e);
234
- },
235
- onPointerMove() {
236
- F.current = !0;
237
- }
238
- }), [j, V, k, d, ie, c, s, f, O]), J = m.useMemo(() => {
239
- function e(r) {
240
- M === "auto" && Qe(r.nativeEvent) && (v.current = !f);
241
- }
242
- function i(r) {
243
- v.current = M, M === "auto" && Xe(r.nativeEvent) && (v.current = !0);
244
- }
245
- return {
246
- onKeyDown(r) {
247
- const u = c.select("open");
248
- F.current = !1;
249
- const a = r.key.startsWith("Arrow"), I = er(r.key, U(), x), z = Z(r.key, d), le = (b ? I : z) || r.key === "Enter" || r.key.trim() === "";
250
- if (f && u)
251
- return V(r);
252
- if (!(!u && !oe && a)) {
253
- if (le) {
254
- const Q = Z(r.key, U());
255
- C.current = b && Q ? null : r.key;
256
- }
257
- if (b) {
258
- I && (T(r), u ? (t.current = fe(n, ce.current), l(r)) : c.setOpen(!0, X(me, r.nativeEvent, r.currentTarget)));
259
- return;
260
- }
261
- z && (K.current != null && (t.current = K.current), T(r), !u && oe ? c.setOpen(!0, X(me, r.nativeEvent, r.currentTarget)) : V(r), u && l(r));
262
- }
263
- },
264
- onFocus(r) {
265
- c.select("open") && !f && (t.current = -1, l(r));
266
- },
267
- onPointerDown: i,
268
- onPointerEnter: i,
269
- onMouseDown: e,
270
- onClick: e
271
- };
272
- }, [V, ce, M, n, b, l, c, oe, d, U, x, K, f]), ye = m.useMemo(() => ({
273
- ...j,
274
- ...J
275
- }), [j, J]);
276
- return m.useMemo(() => E ? {
277
- reference: ye,
278
- floating: we,
279
- item: se,
280
- trigger: J
281
- } : {}, [E, ye, we, J, se]);
282
- }
283
- export {
284
- Ze as ESCAPE,
285
- pr as useListNavigation
286
- };
package/dist/index144.js DELETED
@@ -1,56 +0,0 @@
1
- import * as o from "react";
2
- import { useStableCallback as S } from "./index127.js";
3
- import { useIsoLayoutEffect as T } from "./index126.js";
4
- import { useTimeout as D } from "./index148.js";
5
- import { EMPTY_ARRAY as U } from "./index100.js";
6
- import { stopEvent as O } from "./index205.js";
7
- function H(l, b) {
8
- const g = "rootStore" in l ? l.rootStore : l, c = g.useState("open"), u = g.context.dataRef, {
9
- listRef: E,
10
- activeIndex: p,
11
- onMatch: A,
12
- onTypingChange: R,
13
- enabled: h = !0,
14
- findMatch: L = null,
15
- resetMs: F = 750,
16
- ignoreKeys: P = U,
17
- selectedIndex: y = null
18
- } = b, m = D(), r = o.useRef(""), i = o.useRef(y ?? p ?? -1), f = o.useRef(null);
19
- T(() => {
20
- c && (m.clear(), f.current = null, r.current = "");
21
- }, [c, m]), T(() => {
22
- c && r.current === "" && (i.current = y ?? p ?? -1);
23
- }, [c, y, p]);
24
- const n = S((e) => {
25
- e ? u.current.typing || (u.current.typing = e, R?.(e)) : u.current.typing && (u.current.typing = e, R?.(e));
26
- }), a = S((e) => {
27
- function C(s, x, I) {
28
- const K = L ? L(x, I) : x.find((Y) => Y?.toLocaleLowerCase().indexOf(I.toLocaleLowerCase()) === 0);
29
- return K ? s.indexOf(K) : -1;
30
- }
31
- const t = E.current;
32
- if (r.current.length > 0 && r.current[0] !== " " && (C(t, t, r.current) === -1 ? n(!1) : e.key === " " && O(e)), t == null || P.includes(e.key) || // Character key.
33
- e.key.length !== 1 || // Modifier key.
34
- e.ctrlKey || e.metaKey || e.altKey)
35
- return;
36
- c && e.key !== " " && (O(e), n(!0)), t.every((s) => s ? s[0]?.toLocaleLowerCase() !== s[1]?.toLocaleLowerCase() : !0) && r.current === e.key && (r.current = "", i.current = f.current), r.current += e.key, m.start(F, () => {
37
- r.current = "", i.current = f.current, n(!1);
38
- });
39
- const w = i.current, d = C(t, [...t.slice((w || 0) + 1), ...t.slice(0, (w || 0) + 1)], r.current);
40
- d !== -1 ? (A?.(d), f.current = d) : e.key !== " " && (r.current = "", n(!1));
41
- }), k = o.useMemo(() => ({
42
- onKeyDown: a
43
- }), [a]), M = o.useMemo(() => ({
44
- onKeyDown: a,
45
- onKeyUp(e) {
46
- e.key === " " && n(!1);
47
- }
48
- }), [a, n]);
49
- return o.useMemo(() => h ? {
50
- reference: k,
51
- floating: M
52
- } : {}, [h, k, M]);
53
- }
54
- export {
55
- H as useTypeahead
56
- };
package/dist/index145.js DELETED
@@ -1,18 +0,0 @@
1
- import * as c from "react";
2
- import { s as i } from "./index251.js";
3
- import { w as S } from "./index252.js";
4
- import { isReactVersionAtLeast as a } from "./index200.js";
5
- const u = a(19), m = u ? p : l;
6
- function b(t, e, o, r, n) {
7
- return m(t, e, o, r, n);
8
- }
9
- function p(t, e, o, r, n) {
10
- const s = c.useCallback(() => e(t.getSnapshot(), o, r, n), [t, e, o, r, n]);
11
- return i.useSyncExternalStore(t.subscribe, s, s);
12
- }
13
- function l(t, e, o, r, n) {
14
- return S.useSyncExternalStoreWithSelector(t.subscribe, t.getSnapshot, t.getSnapshot, (s) => e(s, o, r, n));
15
- }
16
- export {
17
- b as useStore
18
- };
package/dist/index146.js DELETED
@@ -1,82 +0,0 @@
1
- class e {
2
- /**
3
- * The current state of the store.
4
- * This property is updated immediately when the state changes as a result of calling {@link setState}, {@link update}, or {@link set}.
5
- * To subscribe to state changes, use the {@link useState} method. The value returned by {@link useState} is updated after the component renders (similarly to React's useState).
6
- * The values can be used directly (to avoid subscribing to the store) in effects or event handlers.
7
- *
8
- * Do not modify properties in state directly. Instead, use the provided methods to ensure proper state management and listener notification.
9
- */
10
- // Internal state to handle recursive `setState()` calls
11
- constructor(t) {
12
- this.state = t, this.listeners = /* @__PURE__ */ new Set(), this.updateTick = 0;
13
- }
14
- /**
15
- * Registers a listener that will be called whenever the store's state changes.
16
- *
17
- * @param fn The listener function to be called on state changes.
18
- * @returns A function to unsubscribe the listener.
19
- */
20
- subscribe = (t) => (this.listeners.add(t), () => {
21
- this.listeners.delete(t);
22
- });
23
- /**
24
- * Returns the current state of the store.
25
- */
26
- getSnapshot = () => this.state;
27
- /**
28
- * Updates the entire store's state and notifies all registered listeners.
29
- *
30
- * @param newState The new state to set for the store.
31
- */
32
- setState(t) {
33
- if (this.state === t)
34
- return;
35
- this.state = t, this.updateTick += 1;
36
- const s = this.updateTick;
37
- for (const i of this.listeners) {
38
- if (s !== this.updateTick)
39
- return;
40
- i(t);
41
- }
42
- }
43
- /**
44
- * Merges the provided changes into the current state and notifies listeners if there are changes.
45
- *
46
- * @param changes An object containing the changes to apply to the current state.
47
- */
48
- update(t) {
49
- for (const s in t)
50
- if (!Object.is(this.state[s], t[s])) {
51
- e.prototype.setState.call(this, {
52
- ...this.state,
53
- ...t
54
- });
55
- return;
56
- }
57
- }
58
- /**
59
- * Sets a specific key in the store's state to a new value and notifies listeners if the value has changed.
60
- *
61
- * @param key The key in the store's state to update.
62
- * @param value The new value to set for the specified key.
63
- */
64
- set(t, s) {
65
- Object.is(this.state[t], s) || e.prototype.setState.call(this, {
66
- ...this.state,
67
- [t]: s
68
- });
69
- }
70
- /**
71
- * Gives the state a new reference and updates all registered listeners.
72
- */
73
- notifyAll() {
74
- const t = {
75
- ...this.state
76
- };
77
- e.prototype.setState.call(this, t);
78
- }
79
- }
80
- export {
81
- e as Store
82
- };
package/dist/index147.js DELETED
@@ -1,6 +0,0 @@
1
- function e(n) {
2
- return n?.ownerDocument || document;
3
- }
4
- export {
5
- e as ownerDocument
6
- };