@okam/stack-ui 1.40.0 → 1.40.1

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 (446) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/components/fields/ComboBox/components/ComboBoxButton.d.ts +3 -0
  3. package/components/fields/ComboBox/interface.d.ts +5 -1
  4. package/index108.js +6 -1
  5. package/index108.mjs +29 -12
  6. package/index123.js +1 -1
  7. package/index123.mjs +1 -1
  8. package/index125.js +1 -1
  9. package/index125.mjs +2 -2
  10. package/index126.js +1 -1
  11. package/index126.mjs +1 -1
  12. package/index131.js +1 -1
  13. package/index131.mjs +1 -1
  14. package/index133.js +1 -1
  15. package/index133.mjs +4 -4
  16. package/index134.js +1 -1
  17. package/index134.mjs +3 -3
  18. package/index135.js +1 -1
  19. package/index135.mjs +1 -1
  20. package/index136.js +1 -1
  21. package/index136.mjs +1 -1
  22. package/index137.js +1 -1
  23. package/index137.mjs +3 -3
  24. package/index141.js +1 -1
  25. package/index141.mjs +13 -38
  26. package/index142.js +1 -2
  27. package/index142.mjs +38 -24
  28. package/index143.js +2 -1
  29. package/index143.mjs +23 -21
  30. package/index144.js +1 -1
  31. package/index144.mjs +21 -41
  32. package/index145.js +1 -1
  33. package/index145.mjs +42 -25
  34. package/index146.js +1 -1
  35. package/index146.mjs +25 -40
  36. package/index147.js +1 -2
  37. package/index147.mjs +39 -56
  38. package/index148.js +2 -1
  39. package/index148.mjs +57 -38
  40. package/index149.js +1 -1
  41. package/index149.mjs +34 -26
  42. package/index150.js +1 -2
  43. package/index150.mjs +30 -8
  44. package/index151.js +1 -1
  45. package/index151.mjs +7 -8
  46. package/index152.js +2 -1
  47. package/index152.mjs +10 -30
  48. package/index153.js +1 -1
  49. package/index153.mjs +30 -15
  50. package/index154.js +1 -1
  51. package/index154.mjs +13 -15
  52. package/index155.js +1 -2
  53. package/index155.mjs +16 -47
  54. package/index156.js +2 -1
  55. package/index156.mjs +46 -36
  56. package/index157.js +1 -1
  57. package/index157.mjs +36 -27
  58. package/index158.js +1 -1
  59. package/index158.mjs +27 -20
  60. package/index159.js +1 -1
  61. package/index159.mjs +18 -32
  62. package/index160.js +1 -1
  63. package/index160.mjs +35 -21
  64. package/index161.js +1 -1
  65. package/index161.mjs +21 -56
  66. package/index162.js +1 -1
  67. package/index162.mjs +57 -12
  68. package/index163.js +1 -1
  69. package/index163.mjs +12 -46
  70. package/index164.js +1 -2
  71. package/index164.mjs +46 -13
  72. package/index165.js +1 -1
  73. package/index165.mjs +11 -29
  74. package/index166.js +2 -1
  75. package/index166.mjs +31 -12
  76. package/index167.js +1 -1
  77. package/index167.mjs +11 -5
  78. package/index168.js +1 -2
  79. package/index168.mjs +5 -49
  80. package/index169.js +2 -1
  81. package/index169.mjs +48 -124
  82. package/index170.js +1 -1
  83. package/index170.mjs +122 -24
  84. package/index171.js +1 -1
  85. package/index171.mjs +22 -68
  86. package/index172.js +1 -1
  87. package/index172.mjs +62 -370
  88. package/index173.js +1 -1
  89. package/index173.mjs +379 -44
  90. package/index174.js +1 -1
  91. package/index174.mjs +47 -4
  92. package/index175.js +1 -1
  93. package/index175.mjs +4 -25
  94. package/index176.js +1 -1
  95. package/index176.mjs +23 -46
  96. package/index177.js +1 -1
  97. package/index177.mjs +46 -4
  98. package/index178.js +1 -1
  99. package/index178.mjs +5 -24
  100. package/index179.js +1 -1
  101. package/index179.mjs +23 -11
  102. package/index180.js +1 -1
  103. package/index180.mjs +12 -4
  104. package/index181.js +1 -1
  105. package/index181.mjs +4 -14
  106. package/index182.js +1 -1
  107. package/index182.mjs +13 -41
  108. package/index183.js +1 -1
  109. package/index183.mjs +37 -52
  110. package/index184.js +1 -1
  111. package/index184.mjs +55 -39
  112. package/index185.js +1 -1
  113. package/index185.mjs +40 -27
  114. package/index186.js +1 -1
  115. package/index186.mjs +27 -30
  116. package/index187.js +1 -1
  117. package/index187.mjs +30 -13
  118. package/index188.js +1 -1
  119. package/index188.mjs +14 -10
  120. package/index189.js +1 -1
  121. package/index189.mjs +10 -28
  122. package/index19.js +1 -1
  123. package/index19.mjs +3 -2
  124. package/index190.js +1 -1
  125. package/index190.mjs +28 -9
  126. package/index191.js +1 -1
  127. package/index191.mjs +9 -6
  128. package/index192.js +1 -1
  129. package/index192.mjs +6 -5
  130. package/index193.js +1 -1
  131. package/index193.mjs +5 -7
  132. package/index194.js +1 -1
  133. package/index194.mjs +7 -29
  134. package/index195.js +1 -1
  135. package/index195.mjs +27 -16
  136. package/index196.js +1 -1
  137. package/index196.mjs +17 -12
  138. package/index197.js +1 -1
  139. package/index197.mjs +13 -43
  140. package/index198.js +1 -1
  141. package/index198.mjs +42 -7
  142. package/index199.js +1 -1
  143. package/index199.mjs +8 -17
  144. package/index20.js +1 -1
  145. package/index20.mjs +1 -1
  146. package/index200.js +1 -1
  147. package/index200.mjs +18 -3
  148. package/index201.js +1 -1
  149. package/index201.mjs +3 -5
  150. package/index202.js +1 -1
  151. package/index202.mjs +4 -19
  152. package/index203.js +1 -1
  153. package/index203.mjs +19 -54
  154. package/index204.js +1 -1
  155. package/index204.mjs +52 -122
  156. package/index205.js +1 -1
  157. package/index205.mjs +122 -132
  158. package/index206.js +1 -1
  159. package/index206.mjs +125 -35
  160. package/index207.js +1 -1
  161. package/index207.mjs +42 -12
  162. package/index208.js +1 -1
  163. package/index208.mjs +12 -93
  164. package/index209.js +1 -1
  165. package/index209.mjs +87 -98
  166. package/index210.js +1 -1
  167. package/index210.mjs +106 -4
  168. package/index211.js +1 -1
  169. package/index211.mjs +4 -3
  170. package/index212.js +1 -1
  171. package/index212.mjs +3 -125
  172. package/index213.js +1 -1
  173. package/index213.mjs +117 -21
  174. package/index214.js +1 -1
  175. package/index214.mjs +15 -37
  176. package/index215.js +1 -1
  177. package/index215.mjs +41 -34
  178. package/index216.js +1 -1
  179. package/index216.mjs +32 -25
  180. package/index217.js +1 -1
  181. package/index217.mjs +22 -98
  182. package/index218.js +1 -1
  183. package/index218.mjs +99 -63
  184. package/index219.js +1 -1
  185. package/index219.mjs +55 -79
  186. package/index220.js +1 -1
  187. package/index220.mjs +102 -98
  188. package/index221.js +1 -1
  189. package/index221.mjs +98 -141
  190. package/index222.js +1 -1
  191. package/index222.mjs +136 -193
  192. package/index223.js +1 -1
  193. package/index223.mjs +196 -21
  194. package/index224.js +1 -1
  195. package/index224.mjs +20 -47
  196. package/index225.js +1 -1
  197. package/index225.mjs +45 -44
  198. package/index226.js +1 -1
  199. package/index226.mjs +43 -92
  200. package/index227.js +1 -1
  201. package/index227.mjs +98 -72
  202. package/index228.js +1 -1
  203. package/index228.mjs +72 -69
  204. package/index229.js +1 -1
  205. package/index229.mjs +68 -7
  206. package/index230.js +1 -1
  207. package/index230.mjs +7 -11
  208. package/index231.js +1 -1
  209. package/index231.mjs +11 -203
  210. package/index232.js +1 -1
  211. package/index232.mjs +190 -51
  212. package/index233.js +1 -1
  213. package/index233.mjs +51 -130
  214. package/index234.js +1 -1
  215. package/index234.mjs +130 -111
  216. package/index235.js +1 -1
  217. package/index235.mjs +105 -205
  218. package/index236.js +1 -1
  219. package/index236.mjs +203 -169
  220. package/index237.js +1 -1
  221. package/index237.mjs +182 -61
  222. package/index238.js +1 -1
  223. package/index238.mjs +60 -270
  224. package/index239.js +1 -1
  225. package/index239.mjs +270 -89
  226. package/index24.js +1 -1
  227. package/index24.mjs +1 -1
  228. package/index240.js +1 -1
  229. package/index240.mjs +92 -182
  230. package/index241.js +1 -1
  231. package/index241.mjs +182 -78
  232. package/index242.js +1 -1
  233. package/index242.mjs +75 -49
  234. package/index243.js +1 -1
  235. package/index243.mjs +49 -117
  236. package/index244.js +1 -1
  237. package/index244.mjs +118 -108
  238. package/index245.js +1 -1
  239. package/index245.mjs +106 -112
  240. package/index246.js +1 -1
  241. package/index246.mjs +113 -63
  242. package/index247.js +1 -1
  243. package/index247.mjs +70 -108
  244. package/index248.js +1 -1
  245. package/index248.mjs +108 -50
  246. package/index249.js +1 -1
  247. package/index249.mjs +34 -75
  248. package/index25.js +1 -1
  249. package/index25.mjs +3 -3
  250. package/index250.js +1 -1
  251. package/index250.mjs +71 -48
  252. package/index251.js +1 -1
  253. package/index251.mjs +57 -43
  254. package/index252.js +1 -1
  255. package/index252.mjs +43 -86
  256. package/index253.js +1 -5
  257. package/index253.mjs +81 -62
  258. package/index254.js +5 -1
  259. package/index254.mjs +72 -2017
  260. package/index255.js +1 -1
  261. package/index255.mjs +2020 -54
  262. package/index256.js +1 -1
  263. package/index256.mjs +57 -186
  264. package/index257.js +1 -1
  265. package/index257.mjs +188 -5
  266. package/index258.js +1 -1
  267. package/index258.mjs +5 -121
  268. package/index259.js +1 -1
  269. package/index259.mjs +121 -43
  270. package/index26.js +1 -1
  271. package/index26.mjs +1 -1
  272. package/index260.js +1 -1
  273. package/index260.mjs +43 -230
  274. package/index261.js +1 -1
  275. package/index261.mjs +226 -27
  276. package/index262.js +1 -1
  277. package/index262.mjs +31 -3
  278. package/index263.js +1 -1
  279. package/index263.mjs +3 -4
  280. package/index264.js +1 -1
  281. package/index264.mjs +5 -5
  282. package/index265.js +1 -1
  283. package/index265.mjs +1 -1
  284. package/index266.js +1 -1
  285. package/index266.mjs +4 -4
  286. package/index267.js +1 -1
  287. package/index267.mjs +1 -1
  288. package/index268.js +1 -1
  289. package/index268.mjs +1 -1
  290. package/index269.js +1 -1
  291. package/index269.mjs +4 -4
  292. package/index27.js +1 -1
  293. package/index27.mjs +1 -1
  294. package/index270.js +1 -1
  295. package/index270.mjs +4 -4
  296. package/index271.js +1 -1
  297. package/index271.mjs +1 -1
  298. package/index272.js +1 -1
  299. package/index272.mjs +4 -4
  300. package/index273.js +1 -1
  301. package/index273.mjs +4 -4
  302. package/index274.js +1 -1
  303. package/index274.mjs +1 -1
  304. package/index275.js +1 -1
  305. package/index275.mjs +4 -4
  306. package/index276.js +1 -1
  307. package/index276.mjs +4 -4
  308. package/index277.js +1 -1
  309. package/index277.mjs +1 -1
  310. package/index278.js +1 -1
  311. package/index278.mjs +1 -1
  312. package/index279.js +1 -1
  313. package/index279.mjs +4 -4
  314. package/index280.js +1 -1
  315. package/index280.mjs +4 -4
  316. package/index281.js +1 -1
  317. package/index281.mjs +1 -1
  318. package/index282.js +1 -1
  319. package/index282.mjs +4 -4
  320. package/index283.js +1 -1
  321. package/index283.mjs +4 -4
  322. package/index284.js +1 -1
  323. package/index284.mjs +4 -4
  324. package/index285.js +1 -1
  325. package/index285.mjs +1 -1
  326. package/index286.js +1 -1
  327. package/index286.mjs +4 -4
  328. package/index287.js +1 -1
  329. package/index287.mjs +4 -4
  330. package/index288.js +1 -1
  331. package/index288.mjs +4 -4
  332. package/index289.js +1 -1
  333. package/index289.mjs +4 -4
  334. package/index29.js +1 -1
  335. package/index29.mjs +3 -3
  336. package/index290.js +1 -1
  337. package/index290.mjs +4 -4
  338. package/index291.js +1 -1
  339. package/index291.mjs +1 -1
  340. package/index292.js +1 -1
  341. package/index292.mjs +1 -1
  342. package/index293.js +1 -1
  343. package/index293.mjs +1 -1
  344. package/index294.js +1 -1
  345. package/index294.mjs +4 -4
  346. package/index295.js +1 -1
  347. package/index295.mjs +4 -4
  348. package/index296.js +1 -1
  349. package/index296.mjs +4 -4
  350. package/index297.js +1 -1
  351. package/index297.mjs +4 -4
  352. package/index298.js +1 -1
  353. package/index298.mjs +4 -130
  354. package/index299.js +1 -1
  355. package/index299.mjs +123 -183
  356. package/index30.js +1 -1
  357. package/index30.mjs +3 -3
  358. package/index300.js +1 -1
  359. package/index300.mjs +189 -8
  360. package/index301.js +1 -1
  361. package/index301.mjs +9 -3
  362. package/index302.js +1 -1
  363. package/index302.mjs +3 -36
  364. package/index303.js +1 -1
  365. package/index303.mjs +36 -5
  366. package/index304.js +1 -1
  367. package/index304.mjs +5 -29
  368. package/index305.js +1 -1
  369. package/index305.mjs +29 -6
  370. package/index306.js +1 -1
  371. package/index306.mjs +6 -62
  372. package/index307.js +1 -1
  373. package/index307.mjs +63 -7
  374. package/index308.js +1 -1
  375. package/index308.mjs +25 -23
  376. package/index309.js +1 -1
  377. package/index309.mjs +7 -93
  378. package/index31.js +1 -1
  379. package/index31.mjs +3 -3
  380. package/index310.js +1 -1
  381. package/index310.mjs +24 -6
  382. package/index311.js +1 -1
  383. package/index311.mjs +90 -23
  384. package/index312.js +1 -1
  385. package/index312.mjs +8 -32
  386. package/index313.js +1 -1
  387. package/index313.mjs +25 -6
  388. package/index314.js +1 -1
  389. package/index314.mjs +33 -6
  390. package/index315.js +1 -1
  391. package/index315.mjs +6 -50
  392. package/index316.js +1 -1
  393. package/index316.mjs +6 -29
  394. package/index317.js +1 -1
  395. package/index317.mjs +50 -14
  396. package/index318.js +1 -1
  397. package/index318.mjs +14 -21
  398. package/index319.js +1 -1
  399. package/index319.mjs +20 -28
  400. package/index320.js +1 -1
  401. package/index320.mjs +27 -64
  402. package/index321.js +1 -1
  403. package/index321.mjs +66 -53
  404. package/index322.js +1 -1
  405. package/index322.mjs +53 -54
  406. package/index323.js +1 -1
  407. package/index323.mjs +54 -281
  408. package/index324.js +1 -1
  409. package/index324.mjs +281 -20
  410. package/index325.js +1 -1
  411. package/index325.mjs +20 -3
  412. package/index326.js +1 -1
  413. package/index326.mjs +3 -4
  414. package/index327.js +1 -1
  415. package/index327.mjs +4 -8
  416. package/index328.js +1 -1
  417. package/index328.mjs +7 -4
  418. package/index329.js +1 -1
  419. package/index329.mjs +164 -27
  420. package/index33.js +1 -1
  421. package/index33.mjs +1 -1
  422. package/index330.js +1 -1
  423. package/index330.mjs +27 -164
  424. package/index331.js +1 -0
  425. package/index331.mjs +8 -0
  426. package/index35.js +1 -1
  427. package/index35.mjs +2 -2
  428. package/index36.js +1 -1
  429. package/index36.mjs +1 -1
  430. package/index39.js +1 -1
  431. package/index39.mjs +1 -1
  432. package/index43.js +1 -1
  433. package/index43.mjs +1 -1
  434. package/index45.js +1 -1
  435. package/index45.mjs +3 -3
  436. package/index47.js +1 -1
  437. package/index47.mjs +2 -2
  438. package/index48.js +1 -1
  439. package/index48.mjs +1 -1
  440. package/index49.js +1 -1
  441. package/index49.mjs +81 -82
  442. package/index51.js +1 -1
  443. package/index51.mjs +1 -1
  444. package/index95.js +1 -1
  445. package/index95.mjs +1 -1
  446. package/package.json +1 -1
package/index172.mjs CHANGED
@@ -1,384 +1,76 @@
1
- import { setEventTarget as se, createSyntheticEvent as oe, preventFocus as B } from "./index309.mjs";
2
- import { restoreTextSelection as A, disableTextSelection as N } from "./index312.mjs";
3
- import { PressResponderContext as le } from "./index307.mjs";
4
- import { _ as fe } from "./index313.mjs";
5
- import { _ as ue } from "./index210.mjs";
6
- import { _ as W } from "./index314.mjs";
7
- import { chain as ce } from "./index177.mjs";
8
- import { nodeContains as p, getEventTarget as c } from "./index178.mjs";
9
- import { getOwnerDocument as Y, getOwnerWindow as I } from "./index179.mjs";
10
- import { mergeProps as te } from "./index134.mjs";
11
- import { focusWithoutScrolling as pe } from "./index182.mjs";
12
- import { openLink as z } from "./index183.mjs";
13
- import { useGlobalListeners as de } from "./index186.mjs";
14
- import { useSyncRef as ge } from "./index190.mjs";
15
- import { isMac as ve } from "./index184.mjs";
16
- import { isVirtualPointerEvent as Te, isVirtualClick as j } from "./index198.mjs";
17
- import { useEffectEvent as K } from "./index196.mjs";
18
- import { flushSync as Pe } from "react-dom";
19
- import { useState as ye, useRef as $e, useMemo as he, useEffect as q, useContext as me } from "react";
20
- function Ee(n) {
21
- let i = me(le);
22
- if (i) {
23
- let { register: o, ...l } = i;
24
- n = te(l, n), o();
25
- }
26
- return ge(i, n.ref), n;
27
- }
28
- var _ = /* @__PURE__ */ new WeakMap();
29
- class U {
30
- continuePropagation() {
31
- W(this, _, !1);
32
- }
33
- get shouldStopPropagation() {
34
- return fe(this, _);
35
- }
36
- constructor(i, o, l, d) {
37
- ue(this, _, {
38
- writable: !0,
39
- value: void 0
40
- }), W(this, _, !0);
41
- var $;
42
- let h = ($ = d == null ? void 0 : d.target) !== null && $ !== void 0 ? $ : l.currentTarget;
43
- const v = h == null ? void 0 : h.getBoundingClientRect();
44
- let C, S = 0, w, T = null;
45
- l.clientX != null && l.clientY != null && (w = l.clientX, T = l.clientY), v && (w != null && T != null ? (C = w - v.left, S = T - v.top) : (C = v.width / 2, S = v.height / 2)), this.type = i, this.pointerType = o, this.target = l.currentTarget, this.shiftKey = l.shiftKey, this.metaKey = l.metaKey, this.ctrlKey = l.ctrlKey, this.altKey = l.altKey, this.x = C, this.y = S;
46
- }
47
- }
48
- const J = Symbol("linkClicked");
49
- function We(n) {
50
- let { onPress: i, onPressChange: o, onPressStart: l, onPressEnd: d, onPressUp: $, onClick: h, isDisabled: v, isPressed: C, preventFocusOnPress: S, shouldCancelOnPointerExit: w, allowTextSelectionOnPress: T, ref: L, ...ne } = Ee(n), [ie, V] = ye(!1), k = $e({
51
- isPressed: !1,
52
- ignoreEmulatedMouseEvents: !1,
53
- didFirePressStart: !1,
54
- isTriggeringEvent: !1,
55
- activePointerId: null,
56
- target: null,
57
- isOverTarget: !1,
58
- pointerType: null,
59
- disposables: []
60
- }), { addGlobalListener: x, removeAllGlobalListeners: D } = de(), m = K((e, a) => {
61
- let g = k.current;
62
- if (v || g.didFirePressStart) return !1;
63
- let r = !0;
64
- if (g.isTriggeringEvent = !0, l) {
65
- let u = new U("pressstart", a, e);
66
- l(u), r = u.shouldStopPropagation;
67
- }
68
- return o && o(!0), g.isTriggeringEvent = !1, g.didFirePressStart = !0, V(!0), r;
69
- }), y = K((e, a, g = !0) => {
70
- let r = k.current;
71
- if (!r.didFirePressStart) return !1;
72
- r.didFirePressStart = !1, r.isTriggeringEvent = !0;
73
- let u = !0;
74
- if (d) {
75
- let t = new U("pressend", a, e);
76
- d(t), u = t.shouldStopPropagation;
77
- }
78
- if (o && o(!1), V(!1), i && g && !v) {
79
- let t = new U("press", a, e);
80
- i(t), u && (u = t.shouldStopPropagation);
1
+ import { setInteractionModality as m } from "./index307.mjs";
2
+ import { useEffect as f } from "react";
3
+ import { useLayoutEffect as $ } from "./index175.mjs";
4
+ import { useEffectEvent as v } from "./index197.mjs";
5
+ function V(t, i, e) {
6
+ let { validationBehavior: s, focus: u } = t;
7
+ $(() => {
8
+ if (s === "native" && (e != null && e.current) && !e.current.disabled) {
9
+ let a = i.realtimeValidation.isInvalid ? i.realtimeValidation.validationErrors.join(" ") || "Invalid value." : "";
10
+ e.current.setCustomValidity(a), e.current.hasAttribute("title") || (e.current.title = ""), i.realtimeValidation.isInvalid || i.updateValidation(g(e.current));
81
11
  }
82
- return r.isTriggeringEvent = !1, u;
83
- }), O = K((e, a) => {
84
- let g = k.current;
85
- if (v) return !1;
86
- if ($) {
87
- g.isTriggeringEvent = !0;
88
- let r = new U("pressup", a, e);
89
- return $(r), g.isTriggeringEvent = !1, r.shouldStopPropagation;
12
+ });
13
+ let o = v(() => {
14
+ i.resetValidation();
15
+ }), l = v((a) => {
16
+ var n;
17
+ i.displayValidation.isInvalid || i.commitValidation();
18
+ let c = e == null || (n = e.current) === null || n === void 0 ? void 0 : n.form;
19
+ if (!a.defaultPrevented && e && c && b(c) === e.current) {
20
+ var d;
21
+ u ? u() : (d = e.current) === null || d === void 0 || d.focus(), m("keyboard");
90
22
  }
91
- return !0;
92
- }), P = K((e) => {
93
- let a = k.current;
94
- if (a.isPressed && a.target) {
95
- a.didFirePressStart && a.pointerType != null && y(M(a.target, e), a.pointerType, !1), a.isPressed = !1, a.isOverTarget = !1, a.activePointerId = null, a.pointerType = null, D(), T || A(a.target);
96
- for (let g of a.disposables) g();
97
- a.disposables = [];
98
- }
99
- }), X = K((e) => {
100
- w && P(e);
101
- }), F = K((e) => {
102
- h == null || h(e);
103
- }), R = K((e, a) => {
104
- if (h) {
105
- let g = new MouseEvent("click", e);
106
- se(g, a), h(oe(g));
107
- }
108
- }), ae = he(() => {
109
- let e = k.current, a = {
110
- onKeyDown(r) {
111
- if (H(r.nativeEvent, r.currentTarget) && p(r.currentTarget, c(r.nativeEvent))) {
112
- var u;
113
- ee(c(r.nativeEvent), r.key) && r.preventDefault();
114
- let t = !0;
115
- if (!e.isPressed && !r.repeat) {
116
- e.target = r.currentTarget, e.isPressed = !0, e.pointerType = "keyboard", t = m(r, "keyboard");
117
- let s = r.currentTarget, f = (E) => {
118
- H(E, s) && !E.repeat && p(s, c(E)) && e.target && O(M(e.target, E), "keyboard");
119
- };
120
- x(Y(r.currentTarget), "keyup", ce(f, g), !0);
121
- }
122
- t && r.stopPropagation(), r.metaKey && ve() && ((u = e.metaKeyEvents) === null || u === void 0 || u.set(r.key, r.nativeEvent));
123
- } else r.key === "Meta" && (e.metaKeyEvents = /* @__PURE__ */ new Map());
124
- },
125
- onClick(r) {
126
- if (!(r && !p(r.currentTarget, c(r.nativeEvent))) && r && r.button === 0 && !e.isTriggeringEvent && !z.isOpening) {
127
- let u = !0;
128
- if (v && r.preventDefault(), !e.ignoreEmulatedMouseEvents && !e.isPressed && (e.pointerType === "virtual" || j(r.nativeEvent))) {
129
- let t = m(r, "virtual"), s = O(r, "virtual"), f = y(r, "virtual");
130
- F(r), u = t && s && f;
131
- } else if (e.isPressed && e.pointerType !== "keyboard") {
132
- let t = e.pointerType || r.nativeEvent.pointerType || "virtual";
133
- u = y(M(r.currentTarget, r), t, !0), e.isOverTarget = !1, F(r), P(r);
134
- }
135
- e.ignoreEmulatedMouseEvents = !1, u && r.stopPropagation();
136
- }
137
- }
138
- }, g = (r) => {
139
- var u;
140
- if (e.isPressed && e.target && H(r, e.target)) {
141
- var t;
142
- ee(c(r), r.key) && r.preventDefault();
143
- let f = c(r), E = p(e.target, c(r));
144
- y(M(e.target, r), "keyboard", E), E && R(r, e.target), D(), r.key !== "Enter" && G(e.target) && p(e.target, f) && !r[J] && (r[J] = !0, z(e.target, r, !1)), e.isPressed = !1, (t = e.metaKeyEvents) === null || t === void 0 || t.delete(r.key);
145
- } else if (r.key === "Meta" && (!((u = e.metaKeyEvents) === null || u === void 0) && u.size)) {
146
- var s;
147
- let f = e.metaKeyEvents;
148
- e.metaKeyEvents = void 0;
149
- for (let E of f.values()) (s = e.target) === null || s === void 0 || s.dispatchEvent(new KeyboardEvent("keyup", E));
150
- }
23
+ a.preventDefault();
24
+ }), r = v(() => {
25
+ i.commitValidation();
26
+ });
27
+ f(() => {
28
+ let a = e == null ? void 0 : e.current;
29
+ if (!a) return;
30
+ let n = a.form;
31
+ return a.addEventListener("invalid", l), a.addEventListener("change", r), n == null || n.addEventListener("reset", o), () => {
32
+ a.removeEventListener("invalid", l), a.removeEventListener("change", r), n == null || n.removeEventListener("reset", o);
151
33
  };
152
- if (typeof PointerEvent < "u") {
153
- a.onPointerDown = (t) => {
154
- if (t.button !== 0 || !p(t.currentTarget, c(t.nativeEvent))) return;
155
- if (Te(t.nativeEvent)) {
156
- e.pointerType = "virtual";
157
- return;
158
- }
159
- e.pointerType = t.pointerType;
160
- let s = !0;
161
- if (!e.isPressed) {
162
- e.isPressed = !0, e.isOverTarget = !0, e.activePointerId = t.pointerId, e.target = t.currentTarget, T || N(e.target), s = m(t, e.pointerType);
163
- let f = c(t.nativeEvent);
164
- "releasePointerCapture" in f && f.releasePointerCapture(t.pointerId), x(Y(t.currentTarget), "pointerup", r, !1), x(Y(t.currentTarget), "pointercancel", u, !1);
165
- }
166
- s && t.stopPropagation();
167
- }, a.onMouseDown = (t) => {
168
- if (p(t.currentTarget, c(t.nativeEvent)) && t.button === 0) {
169
- if (S) {
170
- let s = B(t.target);
171
- s && e.disposables.push(s);
172
- }
173
- t.stopPropagation();
174
- }
175
- }, a.onPointerUp = (t) => {
176
- !p(t.currentTarget, c(t.nativeEvent)) || e.pointerType === "virtual" || t.button === 0 && O(t, e.pointerType || t.pointerType);
177
- }, a.onPointerEnter = (t) => {
178
- t.pointerId === e.activePointerId && e.target && !e.isOverTarget && e.pointerType != null && (e.isOverTarget = !0, m(M(e.target, t), e.pointerType));
179
- }, a.onPointerLeave = (t) => {
180
- t.pointerId === e.activePointerId && e.target && e.isOverTarget && e.pointerType != null && (e.isOverTarget = !1, y(M(e.target, t), e.pointerType, !1), X(t));
181
- };
182
- let r = (t) => {
183
- if (t.pointerId === e.activePointerId && e.isPressed && t.button === 0 && e.target) {
184
- if (p(e.target, c(t)) && e.pointerType != null) {
185
- let s = !1, f = setTimeout(() => {
186
- e.isPressed && e.target instanceof HTMLElement && (s ? P(t) : (pe(e.target), e.target.click()));
187
- }, 80);
188
- x(t.currentTarget, "click", () => s = !0, !0), e.disposables.push(() => clearTimeout(f));
189
- } else P(t);
190
- e.isOverTarget = !1;
191
- }
192
- }, u = (t) => {
193
- P(t);
194
- };
195
- a.onDragStart = (t) => {
196
- p(t.currentTarget, c(t.nativeEvent)) && P(t);
197
- };
198
- } else if (process.env.NODE_ENV === "test") {
199
- a.onMouseDown = (t) => {
200
- if (t.button !== 0 || !p(t.currentTarget, c(t.nativeEvent))) return;
201
- if (e.ignoreEmulatedMouseEvents) {
202
- t.stopPropagation();
203
- return;
204
- }
205
- if (e.isPressed = !0, e.isOverTarget = !0, e.target = t.currentTarget, e.pointerType = j(t.nativeEvent) ? "virtual" : "mouse", Pe(() => m(t, e.pointerType)) && t.stopPropagation(), S) {
206
- let f = B(t.target);
207
- f && e.disposables.push(f);
208
- }
209
- x(Y(t.currentTarget), "mouseup", r, !1);
210
- }, a.onMouseEnter = (t) => {
211
- if (!p(t.currentTarget, c(t.nativeEvent))) return;
212
- let s = !0;
213
- e.isPressed && !e.ignoreEmulatedMouseEvents && e.pointerType != null && (e.isOverTarget = !0, s = m(t, e.pointerType)), s && t.stopPropagation();
214
- }, a.onMouseLeave = (t) => {
215
- if (!p(t.currentTarget, c(t.nativeEvent))) return;
216
- let s = !0;
217
- e.isPressed && !e.ignoreEmulatedMouseEvents && e.pointerType != null && (e.isOverTarget = !1, s = y(t, e.pointerType, !1), X(t)), s && t.stopPropagation();
218
- }, a.onMouseUp = (t) => {
219
- p(t.currentTarget, c(t.nativeEvent)) && !e.ignoreEmulatedMouseEvents && t.button === 0 && O(t, e.pointerType || "mouse");
220
- };
221
- let r = (t) => {
222
- if (t.button === 0) {
223
- if (e.ignoreEmulatedMouseEvents) {
224
- e.ignoreEmulatedMouseEvents = !1;
225
- return;
226
- }
227
- e.target && e.target.contains(t.target) && e.pointerType != null || P(t), e.isOverTarget = !1;
228
- }
229
- };
230
- a.onTouchStart = (t) => {
231
- if (!p(t.currentTarget, c(t.nativeEvent))) return;
232
- let s = be(t.nativeEvent);
233
- if (!s) return;
234
- e.activePointerId = s.identifier, e.ignoreEmulatedMouseEvents = !0, e.isOverTarget = !0, e.isPressed = !0, e.target = t.currentTarget, e.pointerType = "touch", T || N(e.target), m(b(e.target, t), e.pointerType) && t.stopPropagation(), x(I(t.currentTarget), "scroll", u, !0);
235
- }, a.onTouchMove = (t) => {
236
- if (!p(t.currentTarget, c(t.nativeEvent))) return;
237
- if (!e.isPressed) {
238
- t.stopPropagation();
239
- return;
240
- }
241
- let s = Q(t.nativeEvent, e.activePointerId), f = !0;
242
- s && Z(s, t.currentTarget) ? !e.isOverTarget && e.pointerType != null && (e.isOverTarget = !0, f = m(b(e.target, t), e.pointerType)) : e.isOverTarget && e.pointerType != null && (e.isOverTarget = !1, f = y(b(e.target, t), e.pointerType, !1), X(b(e.target, t))), f && t.stopPropagation();
243
- }, a.onTouchEnd = (t) => {
244
- if (!p(t.currentTarget, c(t.nativeEvent))) return;
245
- if (!e.isPressed) {
246
- t.stopPropagation();
247
- return;
248
- }
249
- let s = Q(t.nativeEvent, e.activePointerId), f = !0;
250
- s && Z(s, t.currentTarget) && e.pointerType != null ? (O(b(e.target, t), e.pointerType), f = y(b(e.target, t), e.pointerType), R(t.nativeEvent, e.target)) : e.isOverTarget && e.pointerType != null && (f = y(b(e.target, t), e.pointerType, !1)), f && t.stopPropagation(), e.isPressed = !1, e.activePointerId = null, e.isOverTarget = !1, e.ignoreEmulatedMouseEvents = !0, e.target && !T && A(e.target), D();
251
- }, a.onTouchCancel = (t) => {
252
- p(t.currentTarget, c(t.nativeEvent)) && (t.stopPropagation(), e.isPressed && P(b(e.target, t)));
253
- };
254
- let u = (t) => {
255
- e.isPressed && p(c(t), e.target) && P({
256
- currentTarget: e.target,
257
- shiftKey: !1,
258
- ctrlKey: !1,
259
- metaKey: !1,
260
- altKey: !1
261
- });
262
- };
263
- a.onDragStart = (t) => {
264
- p(t.currentTarget, c(t.nativeEvent)) && P(t);
265
- };
266
- }
267
- return a;
268
34
  }, [
269
- x,
270
- v,
271
- S,
272
- D,
273
- T,
274
- P,
275
- X,
276
- y,
277
- m,
278
- O,
279
- F,
280
- R
35
+ e,
36
+ l,
37
+ r,
38
+ o,
39
+ s
281
40
  ]);
282
- return q(() => {
283
- let e = L == null ? void 0 : L.current;
284
- e && e instanceof I(e).Element && I(e).getComputedStyle(e).touchAction === "auto" && (e.style.touchAction = "pan-x pan-y pinch-zoom");
285
- }, [
286
- L
287
- ]), q(() => {
288
- let e = k.current;
289
- return () => {
290
- var a;
291
- T || A((a = e.target) !== null && a !== void 0 ? a : void 0);
292
- for (let g of e.disposables) g();
293
- e.disposables = [];
294
- };
295
- }, [
296
- T
297
- ]), {
298
- isPressed: C || ie,
299
- pressProps: te(ne, ae)
300
- };
301
41
  }
302
- function G(n) {
303
- return n.tagName === "A" && n.hasAttribute("href");
304
- }
305
- function H(n, i) {
306
- const { key: o, code: l } = n, d = i, $ = d.getAttribute("role");
307
- return (o === "Enter" || o === " " || o === "Spacebar" || l === "Space") && !(d instanceof I(d).HTMLInputElement && !re(d, o) || d instanceof I(d).HTMLTextAreaElement || d.isContentEditable) && // Links should only trigger with Enter key
308
- !(($ === "link" || !$ && G(d)) && o !== "Enter");
309
- }
310
- function be(n) {
311
- const { targetTouches: i } = n;
312
- return i.length > 0 ? i[0] : null;
313
- }
314
- function Q(n, i) {
315
- const o = n.changedTouches;
316
- for (let l = 0; l < o.length; l++) {
317
- const d = o[l];
318
- if (d.identifier === i) return d;
319
- }
320
- return null;
321
- }
322
- function b(n, i) {
323
- let o = 0, l = 0;
324
- return i.targetTouches && i.targetTouches.length === 1 && (o = i.targetTouches[0].clientX, l = i.targetTouches[0].clientY), {
325
- currentTarget: n,
326
- shiftKey: i.shiftKey,
327
- ctrlKey: i.ctrlKey,
328
- metaKey: i.metaKey,
329
- altKey: i.altKey,
330
- clientX: o,
331
- clientY: l
332
- };
333
- }
334
- function M(n, i) {
335
- let o = i.clientX, l = i.clientY;
42
+ function p(t) {
43
+ let i = t.validity;
336
44
  return {
337
- currentTarget: n,
338
- shiftKey: i.shiftKey,
339
- ctrlKey: i.ctrlKey,
340
- metaKey: i.metaKey,
341
- altKey: i.altKey,
342
- clientX: o,
343
- clientY: l
45
+ badInput: i.badInput,
46
+ customError: i.customError,
47
+ patternMismatch: i.patternMismatch,
48
+ rangeOverflow: i.rangeOverflow,
49
+ rangeUnderflow: i.rangeUnderflow,
50
+ stepMismatch: i.stepMismatch,
51
+ tooLong: i.tooLong,
52
+ tooShort: i.tooShort,
53
+ typeMismatch: i.typeMismatch,
54
+ valueMissing: i.valueMissing,
55
+ valid: i.valid
344
56
  };
345
57
  }
346
- function Se(n) {
347
- let i = 0, o = 0;
348
- return n.width !== void 0 ? i = n.width / 2 : n.radiusX !== void 0 && (i = n.radiusX), n.height !== void 0 ? o = n.height / 2 : n.radiusY !== void 0 && (o = n.radiusY), {
349
- top: n.clientY - o,
350
- right: n.clientX + i,
351
- bottom: n.clientY + o,
352
- left: n.clientX - i
58
+ function g(t) {
59
+ return {
60
+ isInvalid: !t.validity.valid,
61
+ validationDetails: p(t),
62
+ validationErrors: t.validationMessage ? [
63
+ t.validationMessage
64
+ ] : []
353
65
  };
354
66
  }
355
- function xe(n, i) {
356
- return !(n.left > i.right || i.left > n.right || n.top > i.bottom || i.top > n.bottom);
357
- }
358
- function Z(n, i) {
359
- let o = i.getBoundingClientRect(), l = Se(n);
360
- return xe(o, l);
361
- }
362
- function Ke(n) {
363
- return n instanceof HTMLInputElement ? !1 : n instanceof HTMLButtonElement ? n.type !== "submit" && n.type !== "reset" : !G(n);
364
- }
365
- function ee(n, i) {
366
- return n instanceof HTMLInputElement ? !re(n, i) : Ke(n);
367
- }
368
- const ke = /* @__PURE__ */ new Set([
369
- "checkbox",
370
- "radio",
371
- "range",
372
- "color",
373
- "file",
374
- "image",
375
- "button",
376
- "submit",
377
- "reset"
378
- ]);
379
- function re(n, i) {
380
- return n.type === "checkbox" || n.type === "radio" ? i === " " : ke.has(n.type);
67
+ function b(t) {
68
+ for (let i = 0; i < t.elements.length; i++) {
69
+ let e = t.elements[i];
70
+ if (!e.validity.valid) return e;
71
+ }
72
+ return null;
381
73
  }
382
74
  export {
383
- We as usePress
75
+ V as useFormValidation
384
76
  };
package/index173.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index134.js"),R=require("./index160.js"),C=require("./index199.js"),u=require("./index172.js"),F=require("./index316.js");function I(s,l,a){let{isDisabled:r=!1,isReadOnly:i=!1,value:n,name:c,children:b,"aria-label":P,"aria-labelledby":p,validationState:t="valid",isInvalid:d}=s,v=e=>{e.stopPropagation(),l.setSelected(e.target.checked)},f=b!=null,g=P!=null||p!=null;!f&&!g&&process.env.NODE_ENV!=="production"&&console.warn("If you do not provide children, you must specify an aria-label for accessibility");let{pressProps:m,isPressed:y}=u.usePress({isDisabled:r}),{pressProps:h,isPressed:D}=u.usePress({onPress(){var e;l.toggle(),(e=a.current)===null||e===void 0||e.focus()},isDisabled:r||i}),{focusableProps:S}=F.useFocusable(s,a),O=o.mergeProps(m,S),q=R.filterDOMProps(s,{labelable:!0});return C.useFormReset(a,l.isSelected,l.setSelected),{labelProps:o.mergeProps(h,{onClick:e=>e.preventDefault()}),inputProps:o.mergeProps(q,{"aria-invalid":d||t==="invalid"||void 0,"aria-errormessage":s["aria-errormessage"],"aria-controls":s["aria-controls"],"aria-readonly":i||void 0,onChange:v,disabled:r,...n==null?{}:{value:n},name:c,type:"checkbox",...O}),isSelected:l.isSelected,isPressed:y||D,isDisabled:r,isReadOnly:i,isInvalid:d||t==="invalid"}}exports.useToggle=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Y=require("./index311.js"),L=require("./index314.js"),ne=require("./index309.js"),ie=require("./index315.js"),se=require("./index211.js"),G=require("./index316.js"),oe=require("./index178.js"),o=require("./index179.js"),$=require("./index180.js"),Q=require("./index134.js"),ae=require("./index183.js"),B=require("./index184.js"),le=require("./index187.js"),ue=require("./index191.js"),ce=require("./index185.js"),A=require("./index199.js"),O=require("./index197.js"),fe=require("react-dom"),M=require("react");function ge(n){let i=M.useContext(ne.PressResponderContext);if(i){let{register:l,...u}=i;n=Q.mergeProps(u,n),l()}return ue.useSyncRef(i,n.ref),n}var R=new WeakMap;class _{continuePropagation(){G._(this,R,!1)}get shouldStopPropagation(){return ie._(this,R)}constructor(i,l,u,g){se._(this,R,{writable:!0,value:void 0}),G._(this,R,!0);var P;let y=(P=g==null?void 0:g.target)!==null&&P!==void 0?P:u.currentTarget;const d=y==null?void 0:y.getBoundingClientRect();let x,b=0,I,v=null;u.clientX!=null&&u.clientY!=null&&(I=u.clientX,v=u.clientY),d&&(I!=null&&v!=null?(x=I-d.left,b=v-d.top):(x=d.width/2,b=d.height/2)),this.type=i,this.pointerType=l,this.target=u.currentTarget,this.shiftKey=u.shiftKey,this.metaKey=u.metaKey,this.ctrlKey=u.ctrlKey,this.altKey=u.altKey,this.x=x,this.y=b}}const N=Symbol("linkClicked");function pe(n){let{onPress:i,onPressChange:l,onPressStart:u,onPressEnd:g,onPressUp:P,onClick:y,isDisabled:d,isPressed:x,preventFocusOnPress:b,shouldCancelOnPointerExit:I,allowTextSelectionOnPress:v,ref:D,...ee}=ge(n),[te,V]=M.useState(!1),K=M.useRef({isPressed:!1,ignoreEmulatedMouseEvents:!1,didFirePressStart:!1,isTriggeringEvent:!1,activePointerId:null,target:null,isOverTarget:!1,pointerType:null,disposables:[]}),{addGlobalListener:C,removeAllGlobalListeners:q}=le.useGlobalListeners(),h=O.useEffectEvent((e,s)=>{let p=K.current;if(d||p.didFirePressStart)return!1;let r=!0;if(p.isTriggeringEvent=!0,u){let f=new _("pressstart",s,e);u(f),r=f.shouldStopPropagation}return l&&l(!0),p.isTriggeringEvent=!1,p.didFirePressStart=!0,V(!0),r}),E=O.useEffectEvent((e,s,p=!0)=>{let r=K.current;if(!r.didFirePressStart)return!1;r.didFirePressStart=!1,r.isTriggeringEvent=!0;let f=!0;if(g){let t=new _("pressend",s,e);g(t),f=t.shouldStopPropagation}if(l&&l(!1),V(!1),i&&p&&!d){let t=new _("press",s,e);i(t),f&&(f=t.shouldStopPropagation)}return r.isTriggeringEvent=!1,f}),k=O.useEffectEvent((e,s)=>{let p=K.current;if(d)return!1;if(P){p.isTriggeringEvent=!0;let r=new _("pressup",s,e);return P(r),p.isTriggeringEvent=!1,r.shouldStopPropagation}return!0}),T=O.useEffectEvent(e=>{let s=K.current;if(s.isPressed&&s.target){s.didFirePressStart&&s.pointerType!=null&&E(w(s.target,e),s.pointerType,!1),s.isPressed=!1,s.isOverTarget=!1,s.activePointerId=null,s.pointerType=null,q(),v||L.restoreTextSelection(s.target);for(let p of s.disposables)p();s.disposables=[]}}),X=O.useEffectEvent(e=>{I&&T(e)}),F=O.useEffectEvent(e=>{y==null||y(e)}),U=O.useEffectEvent((e,s)=>{if(y){let p=new MouseEvent("click",e);Y.setEventTarget(p,s),y(Y.createSyntheticEvent(p))}}),re=M.useMemo(()=>{let e=K.current,s={onKeyDown(r){if(H(r.nativeEvent,r.currentTarget)&&o.nodeContains(r.currentTarget,o.getEventTarget(r.nativeEvent))){var f;J(o.getEventTarget(r.nativeEvent),r.key)&&r.preventDefault();let t=!0;if(!e.isPressed&&!r.repeat){e.target=r.currentTarget,e.isPressed=!0,e.pointerType="keyboard",t=h(r,"keyboard");let a=r.currentTarget,c=m=>{H(m,a)&&!m.repeat&&o.nodeContains(a,o.getEventTarget(m))&&e.target&&k(w(e.target,m),"keyboard")};C($.getOwnerDocument(r.currentTarget),"keyup",oe.chain(c,p),!0)}t&&r.stopPropagation(),r.metaKey&&ce.isMac()&&((f=e.metaKeyEvents)===null||f===void 0||f.set(r.key,r.nativeEvent))}else r.key==="Meta"&&(e.metaKeyEvents=new Map)},onClick(r){if(!(r&&!o.nodeContains(r.currentTarget,o.getEventTarget(r.nativeEvent)))&&r&&r.button===0&&!e.isTriggeringEvent&&!B.openLink.isOpening){let f=!0;if(d&&r.preventDefault(),!e.ignoreEmulatedMouseEvents&&!e.isPressed&&(e.pointerType==="virtual"||A.isVirtualClick(r.nativeEvent))){let t=h(r,"virtual"),a=k(r,"virtual"),c=E(r,"virtual");F(r),f=t&&a&&c}else if(e.isPressed&&e.pointerType!=="keyboard"){let t=e.pointerType||r.nativeEvent.pointerType||"virtual";f=E(w(r.currentTarget,r),t,!0),e.isOverTarget=!1,F(r),T(r)}e.ignoreEmulatedMouseEvents=!1,f&&r.stopPropagation()}}},p=r=>{var f;if(e.isPressed&&e.target&&H(r,e.target)){var t;J(o.getEventTarget(r),r.key)&&r.preventDefault();let c=o.getEventTarget(r),m=o.nodeContains(e.target,o.getEventTarget(r));E(w(e.target,r),"keyboard",m),m&&U(r,e.target),q(),r.key!=="Enter"&&W(e.target)&&o.nodeContains(e.target,c)&&!r[N]&&(r[N]=!0,B.openLink(e.target,r,!1)),e.isPressed=!1,(t=e.metaKeyEvents)===null||t===void 0||t.delete(r.key)}else if(r.key==="Meta"&&(!((f=e.metaKeyEvents)===null||f===void 0)&&f.size)){var a;let c=e.metaKeyEvents;e.metaKeyEvents=void 0;for(let m of c.values())(a=e.target)===null||a===void 0||a.dispatchEvent(new KeyboardEvent("keyup",m))}};if(typeof PointerEvent<"u"){s.onPointerDown=t=>{if(t.button!==0||!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(A.isVirtualPointerEvent(t.nativeEvent)){e.pointerType="virtual";return}e.pointerType=t.pointerType;let a=!0;if(!e.isPressed){e.isPressed=!0,e.isOverTarget=!0,e.activePointerId=t.pointerId,e.target=t.currentTarget,v||L.disableTextSelection(e.target),a=h(t,e.pointerType);let c=o.getEventTarget(t.nativeEvent);"releasePointerCapture"in c&&c.releasePointerCapture(t.pointerId),C($.getOwnerDocument(t.currentTarget),"pointerup",r,!1),C($.getOwnerDocument(t.currentTarget),"pointercancel",f,!1)}a&&t.stopPropagation()},s.onMouseDown=t=>{if(o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&t.button===0){if(b){let a=Y.preventFocus(t.target);a&&e.disposables.push(a)}t.stopPropagation()}},s.onPointerUp=t=>{!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))||e.pointerType==="virtual"||t.button===0&&k(t,e.pointerType||t.pointerType)},s.onPointerEnter=t=>{t.pointerId===e.activePointerId&&e.target&&!e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!0,h(w(e.target,t),e.pointerType))},s.onPointerLeave=t=>{t.pointerId===e.activePointerId&&e.target&&e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!1,E(w(e.target,t),e.pointerType,!1),X(t))};let r=t=>{if(t.pointerId===e.activePointerId&&e.isPressed&&t.button===0&&e.target){if(o.nodeContains(e.target,o.getEventTarget(t))&&e.pointerType!=null){let a=!1,c=setTimeout(()=>{e.isPressed&&e.target instanceof HTMLElement&&(a?T(t):(ae.focusWithoutScrolling(e.target),e.target.click()))},80);C(t.currentTarget,"click",()=>a=!0,!0),e.disposables.push(()=>clearTimeout(c))}else T(t);e.isOverTarget=!1}},f=t=>{T(t)};s.onDragStart=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&T(t)}}else if(process.env.NODE_ENV==="test"){s.onMouseDown=t=>{if(t.button!==0||!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(e.ignoreEmulatedMouseEvents){t.stopPropagation();return}if(e.isPressed=!0,e.isOverTarget=!0,e.target=t.currentTarget,e.pointerType=A.isVirtualClick(t.nativeEvent)?"virtual":"mouse",fe.flushSync(()=>h(t,e.pointerType))&&t.stopPropagation(),b){let c=Y.preventFocus(t.target);c&&e.disposables.push(c)}C($.getOwnerDocument(t.currentTarget),"mouseup",r,!1)},s.onMouseEnter=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;let a=!0;e.isPressed&&!e.ignoreEmulatedMouseEvents&&e.pointerType!=null&&(e.isOverTarget=!0,a=h(t,e.pointerType)),a&&t.stopPropagation()},s.onMouseLeave=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;let a=!0;e.isPressed&&!e.ignoreEmulatedMouseEvents&&e.pointerType!=null&&(e.isOverTarget=!1,a=E(t,e.pointerType,!1),X(t)),a&&t.stopPropagation()},s.onMouseUp=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&!e.ignoreEmulatedMouseEvents&&t.button===0&&k(t,e.pointerType||"mouse")};let r=t=>{if(t.button===0){if(e.ignoreEmulatedMouseEvents){e.ignoreEmulatedMouseEvents=!1;return}e.target&&e.target.contains(t.target)&&e.pointerType!=null||T(t),e.isOverTarget=!1}};s.onTouchStart=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;let a=de(t.nativeEvent);if(!a)return;e.activePointerId=a.identifier,e.ignoreEmulatedMouseEvents=!0,e.isOverTarget=!0,e.isPressed=!0,e.target=t.currentTarget,e.pointerType="touch",v||L.disableTextSelection(e.target),h(S(e.target,t),e.pointerType)&&t.stopPropagation(),C($.getOwnerWindow(t.currentTarget),"scroll",f,!0)},s.onTouchMove=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(!e.isPressed){t.stopPropagation();return}let a=z(t.nativeEvent,e.activePointerId),c=!0;a&&j(a,t.currentTarget)?!e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!0,c=h(S(e.target,t),e.pointerType)):e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!1,c=E(S(e.target,t),e.pointerType,!1),X(S(e.target,t))),c&&t.stopPropagation()},s.onTouchEnd=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(!e.isPressed){t.stopPropagation();return}let a=z(t.nativeEvent,e.activePointerId),c=!0;a&&j(a,t.currentTarget)&&e.pointerType!=null?(k(S(e.target,t),e.pointerType),c=E(S(e.target,t),e.pointerType),U(t.nativeEvent,e.target)):e.isOverTarget&&e.pointerType!=null&&(c=E(S(e.target,t),e.pointerType,!1)),c&&t.stopPropagation(),e.isPressed=!1,e.activePointerId=null,e.isOverTarget=!1,e.ignoreEmulatedMouseEvents=!0,e.target&&!v&&L.restoreTextSelection(e.target),q()},s.onTouchCancel=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&(t.stopPropagation(),e.isPressed&&T(S(e.target,t)))};let f=t=>{e.isPressed&&o.nodeContains(o.getEventTarget(t),e.target)&&T({currentTarget:e.target,shiftKey:!1,ctrlKey:!1,metaKey:!1,altKey:!1})};s.onDragStart=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&T(t)}}return s},[C,d,b,q,v,T,X,E,h,k,F,U]);return M.useEffect(()=>{let e=D==null?void 0:D.current;e&&e instanceof $.getOwnerWindow(e).Element&&$.getOwnerWindow(e).getComputedStyle(e).touchAction==="auto"&&(e.style.touchAction="pan-x pan-y pinch-zoom")},[D]),M.useEffect(()=>{let e=K.current;return()=>{var s;v||L.restoreTextSelection((s=e.target)!==null&&s!==void 0?s:void 0);for(let p of e.disposables)p();e.disposables=[]}},[v]),{isPressed:x||te,pressProps:Q.mergeProps(ee,re)}}function W(n){return n.tagName==="A"&&n.hasAttribute("href")}function H(n,i){const{key:l,code:u}=n,g=i,P=g.getAttribute("role");return(l==="Enter"||l===" "||l==="Spacebar"||u==="Space")&&!(g instanceof $.getOwnerWindow(g).HTMLInputElement&&!Z(g,l)||g instanceof $.getOwnerWindow(g).HTMLTextAreaElement||g.isContentEditable)&&!((P==="link"||!P&&W(g))&&l!=="Enter")}function de(n){const{targetTouches:i}=n;return i.length>0?i[0]:null}function z(n,i){const l=n.changedTouches;for(let u=0;u<l.length;u++){const g=l[u];if(g.identifier===i)return g}return null}function S(n,i){let l=0,u=0;return i.targetTouches&&i.targetTouches.length===1&&(l=i.targetTouches[0].clientX,u=i.targetTouches[0].clientY),{currentTarget:n,shiftKey:i.shiftKey,ctrlKey:i.ctrlKey,metaKey:i.metaKey,altKey:i.altKey,clientX:l,clientY:u}}function w(n,i){let l=i.clientX,u=i.clientY;return{currentTarget:n,shiftKey:i.shiftKey,ctrlKey:i.ctrlKey,metaKey:i.metaKey,altKey:i.altKey,clientX:l,clientY:u}}function ve(n){let i=0,l=0;return n.width!==void 0?i=n.width/2:n.radiusX!==void 0&&(i=n.radiusX),n.height!==void 0?l=n.height/2:n.radiusY!==void 0&&(l=n.radiusY),{top:n.clientY-l,right:n.clientX+i,bottom:n.clientY+l,left:n.clientX-i}}function Te(n,i){return!(n.left>i.right||i.left>n.right||n.top>i.bottom||i.top>n.bottom)}function j(n,i){let l=i.getBoundingClientRect(),u=ve(n);return Te(l,u)}function Ee(n){return n instanceof HTMLInputElement?!1:n instanceof HTMLButtonElement?n.type!=="submit"&&n.type!=="reset":!W(n)}function J(n,i){return n instanceof HTMLInputElement?!Z(n,i):Ee(n)}const Pe=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);function Z(n,i){return n.type==="checkbox"||n.type==="radio"?i===" ":Pe.has(n.type)}exports.usePress=pe;