@rpcbase/ui 0.241.0 → 0.243.0

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 (774) hide show
  1. package/dist/components/DayPickerField/index.d.ts.map +1 -1
  2. package/dist/components/Notifications/NotificationsDrawer.d.ts.map +1 -1
  3. package/dist/components/PhoneNumberInput/country-options.d.ts +1 -1
  4. package/dist/components/PhoneNumberInput/country-options.d.ts.map +1 -1
  5. package/dist/index100.js +8 -4
  6. package/dist/index100.js.map +1 -1
  7. package/dist/index101.js +5 -8
  8. package/dist/index101.js.map +1 -1
  9. package/dist/index102.js +4 -5
  10. package/dist/index102.js.map +1 -1
  11. package/dist/index103.js +3 -3
  12. package/dist/index103.js.map +1 -1
  13. package/dist/index104.js +6 -4
  14. package/dist/index104.js.map +1 -1
  15. package/dist/index105.js +152 -6
  16. package/dist/index105.js.map +1 -1
  17. package/dist/index106.js +38 -144
  18. package/dist/index106.js.map +1 -1
  19. package/dist/index107.js +4 -39
  20. package/dist/index107.js.map +1 -1
  21. package/dist/index108.js +7 -4
  22. package/dist/index108.js.map +1 -1
  23. package/dist/index109.js +12 -6
  24. package/dist/index109.js.map +1 -1
  25. package/dist/index110.js +13 -13
  26. package/dist/index110.js.map +1 -1
  27. package/dist/index111.js +7 -13
  28. package/dist/index111.js.map +1 -1
  29. package/dist/index112.js +30 -6
  30. package/dist/index112.js.map +1 -1
  31. package/dist/index113.js +10 -31
  32. package/dist/index113.js.map +1 -1
  33. package/dist/index114.js +10 -10
  34. package/dist/index114.js.map +1 -1
  35. package/dist/index115.js +8 -10
  36. package/dist/index115.js.map +1 -1
  37. package/dist/index116.js +13 -8
  38. package/dist/index116.js.map +1 -1
  39. package/dist/index117.js +101 -13
  40. package/dist/index117.js.map +1 -1
  41. package/dist/index118.js +20 -102
  42. package/dist/index118.js.map +1 -1
  43. package/dist/index119.js +54 -20
  44. package/dist/index119.js.map +1 -1
  45. package/dist/index120.js +70 -51
  46. package/dist/index120.js.map +1 -1
  47. package/dist/index121.js +9 -72
  48. package/dist/index121.js.map +1 -1
  49. package/dist/index122.js +20 -9
  50. package/dist/index122.js.map +1 -1
  51. package/dist/index123.js +16 -20
  52. package/dist/index123.js.map +1 -1
  53. package/dist/index124.js +23 -16
  54. package/dist/index124.js.map +1 -1
  55. package/dist/index125.js +6 -23
  56. package/dist/index125.js.map +1 -1
  57. package/dist/index126.js +5 -6
  58. package/dist/index126.js.map +1 -1
  59. package/dist/index127.js +23 -5
  60. package/dist/index127.js.map +1 -1
  61. package/dist/index128.js +35 -24
  62. package/dist/index128.js.map +1 -1
  63. package/dist/index129.js +14 -35
  64. package/dist/index129.js.map +1 -1
  65. package/dist/index130.js +5 -16
  66. package/dist/index130.js.map +1 -1
  67. package/dist/index131.js +4 -6
  68. package/dist/index131.js.map +1 -1
  69. package/dist/index132.js +4 -4
  70. package/dist/index132.js.map +1 -1
  71. package/dist/index133.js +4 -4
  72. package/dist/index133.js.map +1 -1
  73. package/dist/index134.js +4 -4
  74. package/dist/index134.js.map +1 -1
  75. package/dist/index135.js +3 -4
  76. package/dist/index135.js.map +1 -1
  77. package/dist/index136.js +4 -3
  78. package/dist/index136.js.map +1 -1
  79. package/dist/index137.js +22 -7
  80. package/dist/index137.js.map +1 -1
  81. package/dist/index138.js +6 -24
  82. package/dist/index138.js.map +1 -1
  83. package/dist/index139.js +4 -7
  84. package/dist/index139.js.map +1 -1
  85. package/dist/index140.js +5 -6
  86. package/dist/index140.js.map +1 -1
  87. package/dist/index141.js +3 -5
  88. package/dist/index141.js.map +1 -1
  89. package/dist/index142.js +3 -3
  90. package/dist/index142.js.map +1 -1
  91. package/dist/index143.js +4 -3
  92. package/dist/index143.js.map +1 -1
  93. package/dist/index144.js +3 -4
  94. package/dist/index144.js.map +1 -1
  95. package/dist/index145.js +4 -3
  96. package/dist/index145.js.map +1 -1
  97. package/dist/index146.js +3 -4
  98. package/dist/index146.js.map +1 -1
  99. package/dist/index147.js +3 -3
  100. package/dist/index147.js.map +1 -1
  101. package/dist/index148.js +3 -3
  102. package/dist/index148.js.map +1 -1
  103. package/dist/index149.js +5 -3
  104. package/dist/index149.js.map +1 -1
  105. package/dist/index150.js +68 -5
  106. package/dist/index150.js.map +1 -1
  107. package/dist/index151.js +2 -69
  108. package/dist/index151.js.map +1 -1
  109. package/dist/index152.js +386 -2
  110. package/dist/index152.js.map +1 -1
  111. package/dist/index153.js +201 -303
  112. package/dist/index153.js.map +1 -1
  113. package/dist/index154.js +46 -247
  114. package/dist/index154.js.map +1 -1
  115. package/dist/index155.js +42 -56
  116. package/dist/index155.js.map +1 -1
  117. package/dist/index156.js +169 -46
  118. package/dist/index156.js.map +1 -1
  119. package/dist/index157.js +96 -156
  120. package/dist/index157.js.map +1 -1
  121. package/dist/index158.js +24 -109
  122. package/dist/index158.js.map +1 -1
  123. package/dist/index159.js +8 -25
  124. package/dist/index159.js.map +1 -1
  125. package/dist/index16.js +91 -91
  126. package/dist/index16.js.map +1 -1
  127. package/dist/index160.js +5 -8
  128. package/dist/index160.js.map +1 -1
  129. package/dist/index161.js +5 -4
  130. package/dist/index161.js.map +1 -1
  131. package/dist/index162.js +4 -5
  132. package/dist/index162.js.map +1 -1
  133. package/dist/index163.js +487 -4
  134. package/dist/index163.js.map +1 -1
  135. package/dist/index164.js +151 -428
  136. package/dist/index164.js.map +1 -1
  137. package/dist/index165.js +13 -185
  138. package/dist/index165.js.map +1 -1
  139. package/dist/index166.js.map +1 -1
  140. package/dist/index167.js +6 -6
  141. package/dist/index167.js.map +1 -1
  142. package/dist/index168.js +3 -6
  143. package/dist/index168.js.map +1 -1
  144. package/dist/index169.js +15 -17
  145. package/dist/index169.js.map +1 -1
  146. package/dist/index170.js.map +1 -1
  147. package/dist/index171.js +12 -9
  148. package/dist/index171.js.map +1 -1
  149. package/dist/index172.js +10 -10
  150. package/dist/index172.js.map +1 -1
  151. package/dist/index173.js.map +1 -1
  152. package/dist/index174.js.map +1 -1
  153. package/dist/index175.js +1 -1
  154. package/dist/index175.js.map +1 -1
  155. package/dist/index176.js +13 -12
  156. package/dist/index176.js.map +1 -1
  157. package/dist/index177.js.map +1 -1
  158. package/dist/index178.js +1 -1
  159. package/dist/index178.js.map +1 -1
  160. package/dist/index179.js.map +1 -1
  161. package/dist/index180.js.map +1 -1
  162. package/dist/index181.js +1 -1
  163. package/dist/index181.js.map +1 -1
  164. package/dist/index182.js +2 -2
  165. package/dist/index182.js.map +1 -1
  166. package/dist/index183.js +6 -8
  167. package/dist/index183.js.map +1 -1
  168. package/dist/index184.js +161 -246
  169. package/dist/index184.js.map +1 -1
  170. package/dist/index185.js +279 -4
  171. package/dist/index185.js.map +1 -1
  172. package/dist/index186.js +5 -28
  173. package/dist/index186.js.map +1 -1
  174. package/dist/index187.js +23 -122
  175. package/dist/index187.js.map +1 -1
  176. package/dist/index188.js +126 -5
  177. package/dist/index188.js.map +1 -1
  178. package/dist/index189.js +59 -74
  179. package/dist/index189.js.map +1 -1
  180. package/dist/index190.js +7 -65
  181. package/dist/index190.js.map +1 -1
  182. package/dist/index191.js +16 -9
  183. package/dist/index191.js.map +1 -1
  184. package/dist/index192.js +31 -16
  185. package/dist/index192.js.map +1 -1
  186. package/dist/index193.js +65 -88
  187. package/dist/index193.js.map +1 -1
  188. package/dist/index194.js +58 -65
  189. package/dist/index194.js.map +1 -1
  190. package/dist/index195.js +8 -45
  191. package/dist/index195.js.map +1 -1
  192. package/dist/index196.js +77 -48
  193. package/dist/index196.js.map +1 -1
  194. package/dist/index197.js +19 -8
  195. package/dist/index197.js.map +1 -1
  196. package/dist/index198.js +15 -86
  197. package/dist/index198.js.map +1 -1
  198. package/dist/index199.js +4 -18
  199. package/dist/index199.js.map +1 -1
  200. package/dist/index200.js +4 -15
  201. package/dist/index200.js.map +1 -1
  202. package/dist/index201.js +6 -5
  203. package/dist/index201.js.map +1 -1
  204. package/dist/index202.js +4 -5
  205. package/dist/index202.js.map +1 -1
  206. package/dist/index203.js +6 -6
  207. package/dist/index203.js.map +1 -1
  208. package/dist/index204.js +16 -4
  209. package/dist/index204.js.map +1 -1
  210. package/dist/index205.js +4 -6
  211. package/dist/index205.js.map +1 -1
  212. package/dist/index206.js +4 -16
  213. package/dist/index206.js.map +1 -1
  214. package/dist/index207.js +12 -4
  215. package/dist/index207.js.map +1 -1
  216. package/dist/index208.js +9 -4
  217. package/dist/index208.js.map +1 -1
  218. package/dist/index209.js +13 -12
  219. package/dist/index209.js.map +1 -1
  220. package/dist/index210.js +13 -9
  221. package/dist/index210.js.map +1 -1
  222. package/dist/index211.js +4 -13
  223. package/dist/index211.js.map +1 -1
  224. package/dist/index212.js +5 -13
  225. package/dist/index212.js.map +1 -1
  226. package/dist/index213.js +6 -4
  227. package/dist/index213.js.map +1 -1
  228. package/dist/index214.js +5 -5
  229. package/dist/index214.js.map +1 -1
  230. package/dist/index215.js +54 -6
  231. package/dist/index215.js.map +1 -1
  232. package/dist/index216.js +8 -5
  233. package/dist/index216.js.map +1 -1
  234. package/dist/index217.js +4 -54
  235. package/dist/index217.js.map +1 -1
  236. package/dist/index218.js +4 -8
  237. package/dist/index218.js.map +1 -1
  238. package/dist/index219.js +8 -4
  239. package/dist/index219.js.map +1 -1
  240. package/dist/index220.js +4 -4
  241. package/dist/index220.js.map +1 -1
  242. package/dist/index221.js +4 -8
  243. package/dist/index221.js.map +1 -1
  244. package/dist/index222.js +3 -4
  245. package/dist/index222.js.map +1 -1
  246. package/dist/index223.js +10 -4
  247. package/dist/index223.js.map +1 -1
  248. package/dist/index224.js +9 -3
  249. package/dist/index224.js.map +1 -1
  250. package/dist/index225.js +8 -9
  251. package/dist/index225.js.map +1 -1
  252. package/dist/index226.js +10 -9
  253. package/dist/index226.js.map +1 -1
  254. package/dist/index227.js +10 -9
  255. package/dist/index227.js.map +1 -1
  256. package/dist/index228.js +9 -10
  257. package/dist/index228.js.map +1 -1
  258. package/dist/index229.js +6 -10
  259. package/dist/index229.js.map +1 -1
  260. package/dist/index230.js +5 -9
  261. package/dist/index230.js.map +1 -1
  262. package/dist/index231.js +4 -6
  263. package/dist/index231.js.map +1 -1
  264. package/dist/index232.js +5 -5
  265. package/dist/index232.js.map +1 -1
  266. package/dist/index233.js +6 -4
  267. package/dist/index233.js.map +1 -1
  268. package/dist/index234.js +5 -5
  269. package/dist/index234.js.map +1 -1
  270. package/dist/index235.js +16 -6
  271. package/dist/index235.js.map +1 -1
  272. package/dist/index236.js +7 -5
  273. package/dist/index236.js.map +1 -1
  274. package/dist/index237.js +9 -15
  275. package/dist/index237.js.map +1 -1
  276. package/dist/index238.js +10 -7
  277. package/dist/index238.js.map +1 -1
  278. package/dist/index239.js +21 -10
  279. package/dist/index239.js.map +1 -1
  280. package/dist/index240.js +8 -10
  281. package/dist/index240.js.map +1 -1
  282. package/dist/index241.js +9 -21
  283. package/dist/index241.js.map +1 -1
  284. package/dist/index242.js +9 -10
  285. package/dist/index242.js.map +1 -1
  286. package/dist/index243.js +4 -9
  287. package/dist/index243.js.map +1 -1
  288. package/dist/index244.js +5 -9
  289. package/dist/index244.js.map +1 -1
  290. package/dist/index245.js +16 -4
  291. package/dist/index245.js.map +1 -1
  292. package/dist/index246.js +9 -5
  293. package/dist/index246.js.map +1 -1
  294. package/dist/index247.js +18 -16
  295. package/dist/index247.js.map +1 -1
  296. package/dist/index248.js +20 -9
  297. package/dist/index248.js.map +1 -1
  298. package/dist/index249.js +8 -14
  299. package/dist/index249.js.map +1 -1
  300. package/dist/index250.js +29 -15
  301. package/dist/index250.js.map +1 -1
  302. package/dist/index251.js +12 -12
  303. package/dist/index251.js.map +1 -1
  304. package/dist/index252.js +24 -28
  305. package/dist/index252.js.map +1 -1
  306. package/dist/index253.js +5 -12
  307. package/dist/index253.js.map +1 -1
  308. package/dist/index254.js +152 -23
  309. package/dist/index254.js.map +1 -1
  310. package/dist/index255.js +32 -5
  311. package/dist/index255.js.map +1 -1
  312. package/dist/index256.js +12 -20
  313. package/dist/index256.js.map +1 -1
  314. package/dist/index257.js +44 -61
  315. package/dist/index257.js.map +1 -1
  316. package/dist/index258.js +9 -6
  317. package/dist/index258.js.map +1 -1
  318. package/dist/index259.js +11 -11
  319. package/dist/index259.js.map +1 -1
  320. package/dist/index260.js +41 -48
  321. package/dist/index260.js.map +1 -1
  322. package/dist/index261.js +98 -4
  323. package/dist/index261.js.map +1 -1
  324. package/dist/index262.js +84 -27
  325. package/dist/index262.js.map +1 -1
  326. package/dist/index263.js +103 -14
  327. package/dist/index263.js.map +1 -1
  328. package/dist/index264.js +52 -5
  329. package/dist/index264.js.map +1 -1
  330. package/dist/index265.js +11 -21
  331. package/dist/index265.js.map +1 -1
  332. package/dist/index266.js +4 -51
  333. package/dist/index266.js.map +1 -1
  334. package/dist/index267.js +37 -25
  335. package/dist/index267.js.map +1 -1
  336. package/dist/index268.js +8 -41
  337. package/dist/index268.js.map +1 -1
  338. package/dist/index269.js +132 -36
  339. package/dist/index269.js.map +1 -1
  340. package/dist/index27.js +421 -350
  341. package/dist/index27.js.map +1 -1
  342. package/dist/index270.js +18 -45
  343. package/dist/index270.js.map +1 -1
  344. package/dist/index271.js +14 -19
  345. package/dist/index271.js.map +1 -1
  346. package/dist/index272.js +3 -70
  347. package/dist/index272.js.map +1 -1
  348. package/dist/index273.js +34 -15
  349. package/dist/index273.js.map +1 -1
  350. package/dist/index274.js +20 -11
  351. package/dist/index274.js.map +1 -1
  352. package/dist/index275.js +8 -27
  353. package/dist/index275.js.map +1 -1
  354. package/dist/index276.js +9 -13
  355. package/dist/index276.js.map +1 -1
  356. package/dist/index277.js +24 -18
  357. package/dist/index277.js.map +1 -1
  358. package/dist/index278.js +27 -35
  359. package/dist/index278.js.map +1 -1
  360. package/dist/index279.js +16 -262
  361. package/dist/index279.js.map +1 -1
  362. package/dist/index280.js +20 -279
  363. package/dist/index280.js.map +1 -1
  364. package/dist/index281.js +64 -66
  365. package/dist/index281.js.map +1 -1
  366. package/dist/index282.js +6 -99
  367. package/dist/index282.js.map +1 -1
  368. package/dist/index283.js +5 -83
  369. package/dist/index283.js.map +1 -1
  370. package/dist/index284.js +11 -3
  371. package/dist/index284.js.map +1 -1
  372. package/dist/index285.js +3 -29
  373. package/dist/index285.js.map +1 -1
  374. package/dist/index286.js +50 -16
  375. package/dist/index286.js.map +1 -1
  376. package/dist/index287.js +4 -35
  377. package/dist/index287.js.map +1 -1
  378. package/dist/index288.js +28 -15
  379. package/dist/index288.js.map +1 -1
  380. package/dist/index289.js +16 -3
  381. package/dist/index289.js.map +1 -1
  382. package/dist/index29.js +48 -29
  383. package/dist/index29.js.map +1 -1
  384. package/dist/index290.js +5 -26
  385. package/dist/index290.js.map +1 -1
  386. package/dist/index291.js +20 -27
  387. package/dist/index291.js.map +1 -1
  388. package/dist/index292.js +54 -4
  389. package/dist/index292.js.map +1 -1
  390. package/dist/index293.js +18 -76
  391. package/dist/index293.js.map +1 -1
  392. package/dist/index294.js +37 -265
  393. package/dist/index294.js.map +1 -1
  394. package/dist/index295.js +39 -11
  395. package/dist/index295.js.map +1 -1
  396. package/dist/index296.js +45 -10
  397. package/dist/index296.js.map +1 -1
  398. package/dist/index297.js +20 -25
  399. package/dist/index297.js.map +1 -1
  400. package/dist/index298.js +69 -15
  401. package/dist/index298.js.map +1 -1
  402. package/dist/index299.js +14 -122
  403. package/dist/index299.js.map +1 -1
  404. package/dist/index300.js +3 -5
  405. package/dist/index300.js.map +1 -1
  406. package/dist/index301.js +11 -40
  407. package/dist/index301.js.map +1 -1
  408. package/dist/index302.js +12 -64
  409. package/dist/index302.js.map +1 -1
  410. package/dist/index303.js +19 -14
  411. package/dist/index303.js.map +1 -1
  412. package/dist/index304.js +36 -7
  413. package/dist/index304.js.map +1 -1
  414. package/dist/index305.js +239 -5
  415. package/dist/index305.js.map +1 -1
  416. package/dist/index306.js +252 -3
  417. package/dist/index306.js.map +1 -1
  418. package/dist/index307.js +68 -10
  419. package/dist/index307.js.map +1 -1
  420. package/dist/index308.js +99 -7
  421. package/dist/index308.js.map +1 -1
  422. package/dist/index309.js +80 -130
  423. package/dist/index309.js.map +1 -1
  424. package/dist/index31.js +194 -184
  425. package/dist/index31.js.map +1 -1
  426. package/dist/index310.js +3 -399
  427. package/dist/index310.js.map +1 -1
  428. package/dist/index311.js +29 -52
  429. package/dist/index311.js.map +1 -1
  430. package/dist/index312.js +15 -10
  431. package/dist/index312.js.map +1 -1
  432. package/dist/index313.js +35 -12
  433. package/dist/index313.js.map +1 -1
  434. package/dist/index314.js +17 -13
  435. package/dist/index314.js.map +1 -1
  436. package/dist/index315.js +3 -154
  437. package/dist/index315.js.map +1 -1
  438. package/dist/index316.js +25 -29
  439. package/dist/index316.js.map +1 -1
  440. package/dist/index317.js +28 -9
  441. package/dist/index317.js.map +1 -1
  442. package/dist/index318.js +4 -49
  443. package/dist/index318.js.map +1 -1
  444. package/dist/index319.js +77 -10
  445. package/dist/index319.js.map +1 -1
  446. package/dist/index32.js +3 -3
  447. package/dist/index32.js.map +1 -1
  448. package/dist/index320.js +271 -43
  449. package/dist/index320.js.map +1 -1
  450. package/dist/index321.js +11 -95
  451. package/dist/index321.js.map +1 -1
  452. package/dist/index322.js +11 -87
  453. package/dist/index322.js.map +1 -1
  454. package/dist/index323.js +24 -104
  455. package/dist/index323.js.map +1 -1
  456. package/dist/index324.js +16 -52
  457. package/dist/index324.js.map +1 -1
  458. package/dist/index325.js +124 -10
  459. package/dist/index325.js.map +1 -1
  460. package/dist/index326.js +5 -37
  461. package/dist/index326.js.map +1 -1
  462. package/dist/index327.js +65 -8
  463. package/dist/index327.js.map +1 -1
  464. package/dist/index328.js +14 -4
  465. package/dist/index328.js.map +1 -1
  466. package/dist/index329.js +7 -9
  467. package/dist/index329.js.map +1 -1
  468. package/dist/index330.js +5 -116
  469. package/dist/index330.js.map +1 -1
  470. package/dist/index331.js +3 -17
  471. package/dist/index331.js.map +1 -1
  472. package/dist/index332.js +10 -15
  473. package/dist/index332.js.map +1 -1
  474. package/dist/index333.js +7 -36
  475. package/dist/index333.js.map +1 -1
  476. package/dist/index334.js +131 -18
  477. package/dist/index334.js.map +1 -1
  478. package/dist/index335.js +398 -7
  479. package/dist/index335.js.map +1 -1
  480. package/dist/index336.js +5 -20
  481. package/dist/index336.js.map +1 -1
  482. package/dist/index337.js +50 -26
  483. package/dist/index337.js.map +1 -1
  484. package/dist/index338.js +11 -16
  485. package/dist/index338.js.map +1 -1
  486. package/dist/index339.js +27 -8
  487. package/dist/index339.js.map +1 -1
  488. package/dist/index34.js +7 -61
  489. package/dist/index34.js.map +1 -1
  490. package/dist/index340.js +11 -11
  491. package/dist/index340.js.map +1 -1
  492. package/dist/index341.js +8 -8
  493. package/dist/index341.js.map +1 -1
  494. package/dist/index342.js +11 -13
  495. package/dist/index342.js.map +1 -1
  496. package/dist/index343.js +8 -3
  497. package/dist/index343.js.map +1 -1
  498. package/dist/index344.js +13 -3
  499. package/dist/index344.js.map +1 -1
  500. package/dist/index345.js +3 -17
  501. package/dist/index345.js.map +1 -1
  502. package/dist/index346.js +3 -51
  503. package/dist/index346.js.map +1 -1
  504. package/dist/index347.js +17 -5
  505. package/dist/index347.js.map +1 -1
  506. package/dist/index348.js +60 -121
  507. package/dist/index348.js.map +1 -1
  508. package/dist/index349.js +65 -31
  509. package/dist/index349.js.map +1 -1
  510. package/dist/index35.js +29 -30
  511. package/dist/index35.js.map +1 -1
  512. package/dist/index350.js +47 -69
  513. package/dist/index350.js.map +1 -1
  514. package/dist/index351.js +5 -142
  515. package/dist/index351.js.map +1 -1
  516. package/dist/index352.js +7 -60
  517. package/dist/index352.js.map +1 -1
  518. package/dist/index353.js +4 -49
  519. package/dist/index353.js.map +1 -1
  520. package/dist/index354.js +12 -15
  521. package/dist/index354.js.map +1 -1
  522. package/dist/index355.js +21 -8
  523. package/dist/index355.js.map +1 -1
  524. package/dist/index356.js +17 -5
  525. package/dist/index356.js.map +1 -1
  526. package/dist/index357.js +8 -12
  527. package/dist/index357.js.map +1 -1
  528. package/dist/index358.js +144 -21
  529. package/dist/index358.js.map +1 -1
  530. package/dist/index359.js +79 -4
  531. package/dist/index359.js.map +1 -1
  532. package/dist/index36.js +52 -53
  533. package/dist/index36.js.map +1 -1
  534. package/dist/index360.js +61 -17
  535. package/dist/index360.js.map +1 -1
  536. package/dist/index361.js +15 -13
  537. package/dist/index361.js.map +1 -1
  538. package/dist/index362.js +4 -11
  539. package/dist/index362.js.map +1 -1
  540. package/dist/index363.js +18 -17
  541. package/dist/index363.js.map +1 -1
  542. package/dist/index364.js +13 -4
  543. package/dist/index364.js.map +1 -1
  544. package/dist/index365.js +4 -5
  545. package/dist/index365.js.map +1 -1
  546. package/dist/index366.js +20 -20
  547. package/dist/index366.js.map +1 -1
  548. package/dist/index367.js +4 -45
  549. package/dist/index367.js.map +1 -1
  550. package/dist/index368.js +11 -17
  551. package/dist/index368.js.map +1 -1
  552. package/dist/index369.js +6 -5
  553. package/dist/index369.js.map +1 -1
  554. package/dist/index37.js.map +1 -1
  555. package/dist/index370.js +3 -201
  556. package/dist/index370.js.map +1 -1
  557. package/dist/index371.js +20 -77
  558. package/dist/index371.js.map +1 -1
  559. package/dist/index372.js +45 -21
  560. package/dist/index372.js.map +1 -1
  561. package/dist/index373.js +18 -9
  562. package/dist/index373.js.map +1 -1
  563. package/dist/index374.js +5 -26
  564. package/dist/index374.js.map +1 -1
  565. package/dist/index375.js +196 -22
  566. package/dist/index375.js.map +1 -1
  567. package/dist/index376.js +73 -137
  568. package/dist/index376.js.map +1 -1
  569. package/dist/index377.js +121 -10
  570. package/dist/index377.js.map +1 -1
  571. package/dist/index378.js +7 -225
  572. package/dist/index378.js.map +1 -1
  573. package/dist/index379.js +27 -4
  574. package/dist/index379.js.map +1 -1
  575. package/dist/index38.js.map +1 -1
  576. package/dist/index380.js +136 -18
  577. package/dist/index380.js.map +1 -1
  578. package/dist/index381.js +10 -75
  579. package/dist/index381.js.map +1 -1
  580. package/dist/index382.js +47 -12
  581. package/dist/index382.js.map +1 -1
  582. package/dist/index383.js +3 -3
  583. package/dist/index383.js.map +1 -1
  584. package/dist/index384.js +19 -69
  585. package/dist/index384.js.map +1 -1
  586. package/dist/index385.js +76 -9
  587. package/dist/index385.js.map +1 -1
  588. package/dist/index386.js +12 -16
  589. package/dist/index386.js.map +1 -1
  590. package/dist/index387.js +3 -4
  591. package/dist/index387.js.map +1 -1
  592. package/dist/index388.js +71 -4
  593. package/dist/index388.js.map +1 -1
  594. package/dist/index389.js +36 -4
  595. package/dist/index389.js.map +1 -1
  596. package/dist/index39.js +3 -3
  597. package/dist/index39.js.map +1 -1
  598. package/dist/index390.js +7 -16
  599. package/dist/index390.js.map +1 -1
  600. package/dist/index391.js +15 -8
  601. package/dist/index391.js.map +1 -1
  602. package/dist/index392.js +4 -5
  603. package/dist/index392.js.map +1 -1
  604. package/dist/index393.js +4 -4
  605. package/dist/index393.js.map +1 -1
  606. package/dist/index394.js +4 -546
  607. package/dist/index394.js.map +1 -1
  608. package/dist/index395.js +16 -47
  609. package/dist/index395.js.map +1 -1
  610. package/dist/index396.js +8 -17
  611. package/dist/index396.js.map +1 -1
  612. package/dist/index397.js +5 -5
  613. package/dist/index397.js.map +1 -1
  614. package/dist/index398.js +4 -7
  615. package/dist/index398.js.map +1 -1
  616. package/dist/index399.js +545 -6
  617. package/dist/index399.js.map +1 -1
  618. package/dist/index40.js.map +1 -1
  619. package/dist/index400.js +47 -8
  620. package/dist/index400.js.map +1 -1
  621. package/dist/index401.js +17 -11
  622. package/dist/index401.js.map +1 -1
  623. package/dist/index402.js +5 -8
  624. package/dist/index402.js.map +1 -1
  625. package/dist/index403.js +7 -12
  626. package/dist/index403.js.map +1 -1
  627. package/dist/index404.js +7 -3
  628. package/dist/index404.js.map +1 -1
  629. package/dist/index405.js +8 -3
  630. package/dist/index405.js.map +1 -1
  631. package/dist/index406.js +11 -14
  632. package/dist/index406.js.map +1 -1
  633. package/dist/index407.js +8 -491
  634. package/dist/index407.js.map +1 -1
  635. package/dist/index408.js +12 -4
  636. package/dist/index408.js.map +1 -1
  637. package/dist/index409.js +3 -56
  638. package/dist/index409.js.map +1 -1
  639. package/dist/index41.js +45 -40
  640. package/dist/index41.js.map +1 -1
  641. package/dist/index410.js +3 -68
  642. package/dist/index410.js.map +1 -1
  643. package/dist/index411.js +15 -31
  644. package/dist/index411.js.map +1 -1
  645. package/dist/index412.js +3 -9
  646. package/dist/index412.js.map +1 -1
  647. package/dist/index413.js +488 -149
  648. package/dist/index413.js.map +1 -1
  649. package/dist/index414.js +66 -106
  650. package/dist/index414.js.map +1 -1
  651. package/dist/index415.js +31 -8
  652. package/dist/index415.js.map +1 -1
  653. package/dist/index416.js +9 -2
  654. package/dist/index416.js.map +1 -1
  655. package/dist/index417.js +150 -41
  656. package/dist/index417.js.map +1 -1
  657. package/dist/index418.js +108 -56
  658. package/dist/index418.js.map +1 -1
  659. package/dist/index419.js +4 -7
  660. package/dist/index419.js.map +1 -1
  661. package/dist/index420.js +56 -2
  662. package/dist/index420.js.map +1 -1
  663. package/dist/index421.js +7 -54
  664. package/dist/index421.js.map +1 -1
  665. package/dist/index422.js +2 -56
  666. package/dist/index422.js.map +1 -1
  667. package/dist/index423.js +44 -2
  668. package/dist/index423.js.map +1 -1
  669. package/dist/index424.js +56 -2
  670. package/dist/index424.js.map +1 -1
  671. package/dist/index425.js +8 -2
  672. package/dist/index425.js.map +1 -1
  673. package/dist/index426.js +2 -2
  674. package/dist/index427.js +54 -15
  675. package/dist/index427.js.map +1 -1
  676. package/dist/index428.js +55 -28
  677. package/dist/index428.js.map +1 -1
  678. package/dist/index429.js +31 -11
  679. package/dist/index429.js.map +1 -1
  680. package/dist/index430.js +14 -5
  681. package/dist/index430.js.map +1 -1
  682. package/dist/index431.js +32 -0
  683. package/dist/index431.js.map +1 -0
  684. package/dist/index432.js +16 -0
  685. package/dist/index432.js.map +1 -0
  686. package/dist/index433.js +10 -0
  687. package/dist/index433.js.map +1 -0
  688. package/dist/index434.js +5 -0
  689. package/dist/index434.js.map +1 -0
  690. package/dist/index435.js +5 -0
  691. package/dist/index435.js.map +1 -0
  692. package/dist/index436.js +5 -0
  693. package/dist/index436.js.map +1 -0
  694. package/dist/index437.js +5 -0
  695. package/dist/index437.js.map +1 -0
  696. package/dist/index48.js +2 -2
  697. package/dist/index48.js.map +1 -1
  698. package/dist/index49.js +274 -268
  699. package/dist/index49.js.map +1 -1
  700. package/dist/index50.js +182 -184
  701. package/dist/index50.js.map +1 -1
  702. package/dist/index51.js +3 -3
  703. package/dist/index51.js.map +1 -1
  704. package/dist/index52.js +105 -103
  705. package/dist/index52.js.map +1 -1
  706. package/dist/index53.js +5 -5
  707. package/dist/index53.js.map +1 -1
  708. package/dist/index54.js.map +1 -1
  709. package/dist/index55.js +102 -110
  710. package/dist/index55.js.map +1 -1
  711. package/dist/index56.js +4 -4
  712. package/dist/index56.js.map +1 -1
  713. package/dist/index57.js +5 -5
  714. package/dist/index57.js.map +1 -1
  715. package/dist/index58.js +9 -9
  716. package/dist/index58.js.map +1 -1
  717. package/dist/index59.js +5 -5
  718. package/dist/index59.js.map +1 -1
  719. package/dist/index6.js +43 -48
  720. package/dist/index6.js.map +1 -1
  721. package/dist/index60.js +90 -86
  722. package/dist/index60.js.map +1 -1
  723. package/dist/index61.js +2 -2
  724. package/dist/index61.js.map +1 -1
  725. package/dist/index62.js +24 -26
  726. package/dist/index62.js.map +1 -1
  727. package/dist/index76.js +1 -1
  728. package/dist/index77.js +2 -2
  729. package/dist/index77.js.map +1 -1
  730. package/dist/index78.js +2 -2
  731. package/dist/index78.js.map +1 -1
  732. package/dist/index79.js +50 -52
  733. package/dist/index79.js.map +1 -1
  734. package/dist/index80.js +4 -4
  735. package/dist/index80.js.map +1 -1
  736. package/dist/index81.js +12 -4
  737. package/dist/index81.js.map +1 -1
  738. package/dist/index82.js +5 -15
  739. package/dist/index82.js.map +1 -1
  740. package/dist/index83.js +7 -5
  741. package/dist/index83.js.map +1 -1
  742. package/dist/index84.js +17 -7
  743. package/dist/index84.js.map +1 -1
  744. package/dist/index85.js +4 -16
  745. package/dist/index85.js.map +1 -1
  746. package/dist/index86.js +1 -1
  747. package/dist/index86.js.map +1 -1
  748. package/dist/index87.js +5 -4
  749. package/dist/index87.js.map +1 -1
  750. package/dist/index88.js +4 -4
  751. package/dist/index88.js.map +1 -1
  752. package/dist/index89.js +4 -5
  753. package/dist/index89.js.map +1 -1
  754. package/dist/index90.js +2 -2
  755. package/dist/index90.js.map +1 -1
  756. package/dist/index91.js +5 -3
  757. package/dist/index91.js.map +1 -1
  758. package/dist/index92.js +24 -6
  759. package/dist/index92.js.map +1 -1
  760. package/dist/index93.js +4 -24
  761. package/dist/index93.js.map +1 -1
  762. package/dist/index94.js +4 -6
  763. package/dist/index94.js.map +1 -1
  764. package/dist/index95.js +2 -2
  765. package/dist/index95.js.map +1 -1
  766. package/dist/index96.js +5 -6
  767. package/dist/index96.js.map +1 -1
  768. package/dist/index97.js +4 -5
  769. package/dist/index97.js.map +1 -1
  770. package/dist/index98.js +4 -3
  771. package/dist/index98.js.map +1 -1
  772. package/dist/index99.js +4 -5
  773. package/dist/index99.js.map +1 -1
  774. package/package.json +14 -12
package/dist/index280.js CHANGED
@@ -1,282 +1,23 @@
1
- import * as f from "react";
2
- import { isHTMLElement as Ce } from "./index309.js";
3
- import { useValueAsRef as z } from "./index263.js";
4
- import { useStableCallback as X } from "./index262.js";
5
- import { useIsoLayoutEffect as A } from "./index261.js";
6
- import { ownerDocument as Te } from "./index284.js";
7
- import { getFloatingFocusElement as Ve, isTypeableCombobox as ze } from "./index290.js";
8
- import { stopEvent as T, isVirtualClick as Ge, isVirtualPointerEvent as We } from "./index375.js";
9
- import { isIndexOutOfListBounds as Fe, getMinListIndex as me, getMaxListIndex as Se, createGridCellMap as _e, isListIndexDisabled as pe, getGridNavigatedIndex as qe, getGridCellIndexOfCorner as He, getGridCellIndices as $e, findNonDisabledListIndex as Y } from "./index378.js";
10
- import { useFloatingParentNodeId as Be, useFloatingTree as Qe } from "./index382.js";
11
- import { createChangeEventDetails as Z } from "./index175.js";
12
- import { enqueueFocus as Ue } from "./index380.js";
13
- import { ARROW_DOWN as re, ARROW_LEFT as G, ARROW_RIGHT as W, ARROW_UP as Ae } from "./index385.js";
14
- import { activeElement as ge, contains as Re, getTarget as je } from "./index291.js";
15
- import { listNavigation as he, focusOut as Je } from "./index177.js";
16
- const Xe = "Escape";
17
- function te(c, p, u) {
18
- switch (c) {
19
- case "vertical":
20
- return p;
21
- case "horizontal":
22
- return u;
23
- default:
24
- return p || u;
25
- }
26
- }
27
- function ee(c, p) {
28
- return te(p, c === Ae || c === re, c === G || c === W);
29
- }
30
- function Ie(c, p, u) {
31
- return te(p, c === re, u ? c === G : c === W) || c === "Enter" || c === " " || c === "";
32
- }
33
- function Ye(c, p, u) {
34
- return te(p, u ? c === G : c === W, c === re);
35
- }
36
- function Ze(c, p, u, i) {
37
- const g = u ? c === W : c === G, E = c === Ae;
38
- return p === "both" || p === "horizontal" && i && i > 1 ? c === Xe : te(p, g, E);
39
- }
40
- function pr(c, p) {
41
- const u = "rootStore" in c ? c.rootStore : c, i = u.useState("open"), g = u.useState("floatingElement"), E = u.useState("domReferenceElement"), Ee = u.context.dataRef, {
42
- listRef: o,
43
- activeIndex: O,
44
- onNavigate: Le = () => {
45
- },
46
- enabled: y = !0,
47
- selectedIndex: L = null,
48
- allowEscape: ne = !1,
49
- loopFocus: _ = !1,
50
- nested: b = !1,
51
- rtl: x = !1,
52
- virtual: d = !1,
53
- focusItemOnOpen: M = "auto",
54
- focusItemOnHover: oe = !0,
55
- openOnArrowKeyDown: ce = !0,
56
- disabledIndices: R = void 0,
57
- orientation: m = "vertical",
58
- parentOrientation: xe,
59
- cols: F = 1,
60
- id: Oe,
61
- resetOnPointerLeave: Ne = !0,
62
- externalTree: ke
63
- } = p;
64
- process.env.NODE_ENV !== "production" && (ne && (_ || console.warn("`useListNavigation` looping must be enabled to allow escaping."), d || console.warn("`useListNavigation` must be virtual to allow escaping.")), m === "vertical" && F > 1 && console.warn("In grid list navigation mode (`cols` > 1), the `orientation` should", 'be either "horizontal" or "both".'));
65
- const De = Ve(g), N = z(De), q = Be(), v = Qe(ke);
66
- A(() => {
67
- Ee.current.orientation = m;
68
- }, [Ee, m]);
69
- const ue = ze(E), P = f.useRef(M), n = f.useRef(L ?? -1), C = f.useRef(null), S = f.useRef(!0), a = X((e) => {
70
- Le(n.current === -1 ? null : n.current, e);
71
- }), ye = f.useRef(a), k = f.useRef(!!g), we = f.useRef(i), h = f.useRef(!1), H = f.useRef(!1), ie = f.useRef(null), se = z(R), $ = z(i), D = z(L), be = z(Ne), le = X(() => {
72
- function e(l) {
73
- d ? v?.events.emit("virtualfocus", l) : ie.current = Ue(l, {
74
- sync: h.current,
75
- preventScroll: !0
76
- });
77
- }
78
- const r = o.current[n.current], t = H.current;
79
- r && e(r), (h.current ? (l) => l() : requestAnimationFrame)(() => {
80
- const l = o.current[n.current] || r;
81
- if (!l)
82
- return;
83
- r || e(l), // eslint-disable-next-line @typescript-eslint/no-use-before-define
84
- fe && (t || !S.current) && l.scrollIntoView?.({
85
- block: "nearest",
86
- inline: "nearest"
87
- });
88
- });
89
- });
90
- A(() => {
91
- y && (i && g ? (n.current = L ?? -1, P.current && L != null && (H.current = !0, a())) : k.current && (n.current = -1, ye.current()));
92
- }, [y, i, g, L, a]), A(() => {
93
- if (y) {
94
- if (!i) {
95
- h.current = !1;
96
- return;
97
- }
98
- if (g)
99
- if (O == null) {
100
- if (h.current = !1, D.current != null)
101
- return;
102
- if (k.current && (n.current = -1, le()), (!we.current || !k.current) && P.current && (C.current != null || P.current === !0 && C.current == null)) {
103
- let e = 0;
104
- const r = () => {
105
- o.current[0] == null ? (e < 2 && (e ? requestAnimationFrame : queueMicrotask)(r), e += 1) : (n.current = C.current == null || Ie(C.current, m, x) || b ? me(o) : Se(o), C.current = null, a());
106
- };
107
- r();
108
- }
109
- } else Fe(o.current, O) || (n.current = O, le(), H.current = !1);
110
- }
111
- }, [y, i, g, O, D, b, o, m, x, a, le, se]), A(() => {
112
- if (!y || g || !v || d || !k.current)
113
- return;
114
- const e = v.nodesRef.current, r = e.find((l) => l.id === q)?.context?.elements.floating, t = ge(Te(g)), s = e.some((l) => l.context && Re(l.context.elements.floating, t));
115
- r && !s && S.current && r.focus({
116
- preventScroll: !0
117
- });
118
- }, [y, g, v, q, d]), A(() => {
119
- ye.current = a, we.current = i, k.current = !!g;
120
- }), A(() => {
121
- i || (C.current = null, P.current = M);
122
- }, [i, M]);
123
- const Me = O != null, ae = X((e) => {
124
- if (!$.current)
125
- return;
126
- const r = o.current.indexOf(e.currentTarget);
127
- r !== -1 && (n.current !== r || O !== r) && (n.current = r, a(e));
128
- }), fe = f.useMemo(() => ({
129
- onFocus(r) {
130
- h.current = !0, ae(r);
131
- },
132
- onClick: ({
133
- currentTarget: r
134
- }) => r.focus({
135
- preventScroll: !0
136
- }),
137
- // Safari
138
- onMouseMove(r) {
139
- h.current = !0, H.current = !1, oe && ae(r);
140
- },
141
- onPointerLeave(r) {
142
- if (!$.current || !S.current || r.pointerType === "touch")
143
- return;
144
- h.current = !0;
145
- const t = r.relatedTarget;
146
- if (!(!oe || o.current.includes(t)) && be.current && (ie.current?.(), ie.current = null, n.current = -1, a(r), !d)) {
147
- const s = N.current, l = ge(Te(s));
148
- s && Re(s, l) && s.focus({
149
- preventScroll: !0
150
- });
151
- }
152
- }
153
- }), [ae, $, N, oe, o, a, be, d]), B = f.useCallback(() => xe ?? v?.nodesRef.current.find((e) => e.id === q)?.context?.dataRef?.current.orientation, [q, v, xe]), K = X((e) => {
154
- if (S.current = !1, h.current = !0, e.which === 229 || !$.current && e.currentTarget === N.current)
155
- return;
156
- if (b && Ze(e.key, m, x, F)) {
157
- ee(e.key, B()) || T(e), u.setOpen(!1, Z(he, e.nativeEvent)), Ce(E) && (d ? v?.events.emit("virtualfocus", E) : E.focus());
158
- return;
159
- }
160
- const r = n.current, t = me(o, R), s = Se(o, R);
161
- if (ue || (e.key === "Home" && (T(e), n.current = t, a(e)), e.key === "End" && (T(e), n.current = s, a(e))), F > 1) {
162
- const l = Array.from({
163
- length: o.current.length
164
- }, () => ({
165
- width: 1,
166
- height: 1
167
- })), I = _e(l, F), j = I.findIndex((w) => w != null && !pe(o.current, w, R)), de = I.reduce((w, V, Ke) => V != null && !pe(o.current, V, R) ? Ke : w, -1), J = I[qe(I.map((w) => w != null ? o.current[w] : null), {
168
- event: e,
169
- orientation: m,
170
- loopFocus: _,
171
- rtl: x,
172
- cols: F,
173
- // treat undefined (empty grid spaces) as disabled indices so we
174
- // don't end up in them
175
- disabledIndices: $e([...(typeof R != "function" ? R : null) || o.current.map((w, V) => pe(o.current, V, R) ? V : void 0), void 0], I),
176
- minIndex: j,
177
- maxIndex: de,
178
- prevIndex: He(
179
- n.current > s ? t : n.current,
180
- l,
181
- I,
182
- F,
183
- // use a corner matching the edge closest to the direction
184
- // we're moving in so we don't end up in the same item. Prefer
185
- // top/left over bottom/right.
186
- // eslint-disable-next-line no-nested-ternary
187
- e.key === re ? "bl" : e.key === (x ? G : W) ? "tr" : "tl"
188
- ),
189
- stopEvent: !0
190
- })];
191
- if (J != null && (n.current = J, a(e)), m === "both")
192
- return;
193
- }
194
- if (ee(e.key, m)) {
195
- if (T(e), i && !d && ge(e.currentTarget.ownerDocument) === e.currentTarget) {
196
- n.current = Ie(e.key, m, x) ? t : s, a(e);
197
- return;
198
- }
199
- Ie(e.key, m, x) ? _ ? r >= s ? ne && r !== o.current.length ? n.current = -1 : (h.current = !1, n.current = t) : n.current = Y(o.current, {
200
- startingIndex: r,
201
- disabledIndices: R
202
- }) : n.current = Math.min(s, Y(o.current, {
203
- startingIndex: r,
204
- disabledIndices: R
205
- })) : _ ? r <= t ? ne && r !== -1 ? n.current = o.current.length : (h.current = !1, n.current = s) : n.current = Y(o.current, {
206
- startingIndex: r,
207
- decrement: !0,
208
- disabledIndices: R
209
- }) : n.current = Math.max(t, Y(o.current, {
210
- startingIndex: r,
211
- decrement: !0,
212
- disabledIndices: R
213
- })), Fe(o.current, n.current) && (n.current = -1), a(e);
214
- }
215
- }), Q = f.useMemo(() => d && i && Me && {
216
- "aria-activedescendant": `${Oe}-${O}`
217
- }, [d, i, Me, Oe, O]), ve = f.useMemo(() => ({
218
- "aria-orientation": m === "both" ? void 0 : m,
219
- ...ue ? {} : Q,
220
- onKeyDown(e) {
221
- if (e.key === "Tab" && e.shiftKey && i && !d) {
222
- const r = je(e.nativeEvent);
223
- if (r && !Re(N.current, r))
224
- return;
225
- T(e), u.setOpen(!1, Z(Je, e.nativeEvent)), Ce(E) && E.focus();
226
- return;
227
- }
228
- K(e);
229
- },
230
- onPointerMove() {
231
- S.current = !0;
232
- }
233
- }), [Q, K, N, m, ue, u, i, d, E]), U = f.useMemo(() => {
234
- function e(t) {
235
- M === "auto" && Ge(t.nativeEvent) && (P.current = !d);
236
- }
237
- function r(t) {
238
- P.current = M, M === "auto" && We(t.nativeEvent) && (P.current = !0);
239
- }
240
- return {
241
- onKeyDown(t) {
242
- const s = u.select("open");
243
- S.current = !1;
244
- const l = t.key.startsWith("Arrow"), I = Ye(t.key, B(), x), j = ee(t.key, m), de = (b ? I : j) || t.key === "Enter" || t.key.trim() === "";
245
- if (d && s)
246
- return K(t);
247
- if (!(!s && !ce && l)) {
248
- if (de) {
249
- const J = ee(t.key, B());
250
- C.current = b && J ? null : t.key;
251
- }
252
- if (b) {
253
- I && (T(t), s ? (n.current = me(o, se.current), a(t)) : u.setOpen(!0, Z(he, t.nativeEvent, t.currentTarget)));
254
- return;
255
- }
256
- j && (D.current != null && (n.current = D.current), T(t), !s && ce ? u.setOpen(!0, Z(he, t.nativeEvent, t.currentTarget)) : K(t), s && a(t));
257
- }
258
- },
259
- onFocus(t) {
260
- u.select("open") && !d && (n.current = -1, a(t));
261
- },
262
- onPointerDown: r,
263
- onPointerEnter: r,
264
- onMouseDown: e,
265
- onClick: e
266
- };
267
- }, [K, se, M, o, b, a, u, ce, m, B, x, D, d]), Pe = f.useMemo(() => ({
268
- ...Q,
269
- ...U
270
- }), [Q, U]);
271
- return f.useMemo(() => y ? {
272
- reference: Pe,
273
- floating: ve,
274
- item: fe,
275
- trigger: U
276
- } : {}, [y, Pe, ve, U, fe]);
277
- }
1
+ const i = {
2
+ clipPath: "inset(50%)",
3
+ overflow: "hidden",
4
+ whiteSpace: "nowrap",
5
+ border: 0,
6
+ padding: 0,
7
+ width: 1,
8
+ height: 1,
9
+ margin: -1
10
+ }, e = {
11
+ ...i,
12
+ position: "fixed",
13
+ top: 0,
14
+ left: 0
15
+ }, t = {
16
+ ...i,
17
+ position: "absolute"
18
+ };
278
19
  export {
279
- Xe as ESCAPE,
280
- pr as useListNavigation
20
+ e as visuallyHidden,
21
+ t as visuallyHiddenInput
281
22
  };
282
23
  //# sourceMappingURL=index280.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index280.js","sources":["../../../node_modules/@base-ui/react/esm/floating-ui-react/hooks/useListNavigation.js"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { isHTMLElement } from '@floating-ui/utils/dom';\nimport { useValueAsRef } from '@base-ui/utils/useValueAsRef';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { ownerDocument } from '@base-ui/utils/owner';\nimport { activeElement, contains, getTarget, isTypeableCombobox, getFloatingFocusElement } from \"../utils/element.js\";\nimport { isVirtualClick, isVirtualPointerEvent, stopEvent } from \"../utils/event.js\";\nimport { isIndexOutOfListBounds, getMinListIndex, getMaxListIndex, getGridNavigatedIndex, isListIndexDisabled, createGridCellMap, getGridCellIndices, getGridCellIndexOfCorner, findNonDisabledListIndex } from \"../utils/composite.js\";\nimport { useFloatingParentNodeId, useFloatingTree } from \"../components/FloatingTree.js\";\nimport { createChangeEventDetails } from \"../../internals/createBaseUIEventDetails.js\";\nimport { REASONS } from \"../../internals/reasons.js\";\nimport { enqueueFocus } from \"../utils/enqueueFocus.js\";\nimport { ARROW_UP, ARROW_DOWN, ARROW_RIGHT, ARROW_LEFT } from \"../utils/constants.js\";\nexport const ESCAPE = 'Escape';\nfunction doSwitch(orientation, vertical, horizontal) {\n switch (orientation) {\n case 'vertical':\n return vertical;\n case 'horizontal':\n return horizontal;\n default:\n return vertical || horizontal;\n }\n}\nfunction isMainOrientationKey(key, orientation) {\n const vertical = key === ARROW_UP || key === ARROW_DOWN;\n const horizontal = key === ARROW_LEFT || key === ARROW_RIGHT;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction isMainOrientationToEndKey(key, orientation, rtl) {\n const vertical = key === ARROW_DOWN;\n const horizontal = rtl ? key === ARROW_LEFT : key === ARROW_RIGHT;\n return doSwitch(orientation, vertical, horizontal) || key === 'Enter' || key === ' ' || key === '';\n}\nfunction isCrossOrientationOpenKey(key, orientation, rtl) {\n const vertical = rtl ? key === ARROW_LEFT : key === ARROW_RIGHT;\n const horizontal = key === ARROW_DOWN;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction isCrossOrientationCloseKey(key, orientation, rtl, cols) {\n const vertical = rtl ? key === ARROW_RIGHT : key === ARROW_LEFT;\n const horizontal = key === ARROW_UP;\n if (orientation === 'both' || orientation === 'horizontal' && cols && cols > 1) {\n return key === ESCAPE;\n }\n return doSwitch(orientation, vertical, horizontal);\n}\n/**\n * Adds arrow key-based navigation of a list of items, either using real DOM\n * focus or virtual focus.\n * @see https://floating-ui.com/docs/useListNavigation\n */\nexport function useListNavigation(context, props) {\n const store = 'rootStore' in context ? context.rootStore : context;\n const open = store.useState('open');\n const floatingElement = store.useState('floatingElement');\n const domReferenceElement = store.useState('domReferenceElement');\n const dataRef = store.context.dataRef;\n const {\n listRef,\n activeIndex,\n onNavigate: onNavigateProp = () => {},\n enabled = true,\n selectedIndex = null,\n allowEscape = false,\n loopFocus = false,\n nested = false,\n rtl = false,\n virtual = false,\n focusItemOnOpen = 'auto',\n focusItemOnHover = true,\n openOnArrowKeyDown = true,\n disabledIndices = undefined,\n orientation = 'vertical',\n parentOrientation,\n cols = 1,\n id,\n resetOnPointerLeave = true,\n externalTree\n } = props;\n if (process.env.NODE_ENV !== 'production') {\n if (allowEscape) {\n if (!loopFocus) {\n console.warn('`useListNavigation` looping must be enabled to allow escaping.');\n }\n if (!virtual) {\n console.warn('`useListNavigation` must be virtual to allow escaping.');\n }\n }\n if (orientation === 'vertical' && cols > 1) {\n console.warn('In grid list navigation mode (`cols` > 1), the `orientation` should', 'be either \"horizontal\" or \"both\".');\n }\n }\n const floatingFocusElement = getFloatingFocusElement(floatingElement);\n const floatingFocusElementRef = useValueAsRef(floatingFocusElement);\n const parentId = useFloatingParentNodeId();\n const tree = useFloatingTree(externalTree);\n useIsoLayoutEffect(() => {\n dataRef.current.orientation = orientation;\n }, [dataRef, orientation]);\n const typeableComboboxReference = isTypeableCombobox(domReferenceElement);\n const focusItemOnOpenRef = React.useRef(focusItemOnOpen);\n const indexRef = React.useRef(selectedIndex ?? -1);\n const keyRef = React.useRef(null);\n const isPointerModalityRef = React.useRef(true);\n const onNavigate = useStableCallback(event => {\n onNavigateProp(indexRef.current === -1 ? null : indexRef.current, event);\n });\n const previousOnNavigateRef = React.useRef(onNavigate);\n const previousMountedRef = React.useRef(!!floatingElement);\n const previousOpenRef = React.useRef(open);\n const forceSyncFocusRef = React.useRef(false);\n const forceScrollIntoViewRef = React.useRef(false);\n const cancelQueuedFocusRef = React.useRef(null);\n const disabledIndicesRef = useValueAsRef(disabledIndices);\n const latestOpenRef = useValueAsRef(open);\n const selectedIndexRef = useValueAsRef(selectedIndex);\n const resetOnPointerLeaveRef = useValueAsRef(resetOnPointerLeave);\n const focusItem = useStableCallback(() => {\n function runFocus(item) {\n if (virtual) {\n tree?.events.emit('virtualfocus', item);\n } else {\n cancelQueuedFocusRef.current = enqueueFocus(item, {\n sync: forceSyncFocusRef.current,\n preventScroll: true\n });\n }\n }\n const initialItem = listRef.current[indexRef.current];\n const forceScrollIntoView = forceScrollIntoViewRef.current;\n if (initialItem) {\n runFocus(initialItem);\n }\n const scheduler = forceSyncFocusRef.current ? v => v() : requestAnimationFrame;\n scheduler(() => {\n const waitedItem = listRef.current[indexRef.current] || initialItem;\n if (!waitedItem) {\n return;\n }\n if (!initialItem) {\n runFocus(waitedItem);\n }\n const shouldScrollIntoView =\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n item && (forceScrollIntoView || !isPointerModalityRef.current);\n if (shouldScrollIntoView) {\n // JSDOM doesn't support `.scrollIntoView()` but it's widely supported\n // by all browsers.\n waitedItem.scrollIntoView?.({\n block: 'nearest',\n inline: 'nearest'\n });\n }\n });\n });\n\n // Sync `selectedIndex` to be the `activeIndex` upon opening the floating\n // element. Also, reset `activeIndex` upon closing the floating element.\n useIsoLayoutEffect(() => {\n if (!enabled) {\n return;\n }\n if (open && floatingElement) {\n indexRef.current = selectedIndex ?? -1;\n if (focusItemOnOpenRef.current && selectedIndex != null) {\n // Regardless of the pointer modality, we want to ensure the selected\n // item comes into view when the floating element is opened.\n forceScrollIntoViewRef.current = true;\n onNavigate();\n }\n } else if (previousMountedRef.current) {\n // Since the user can specify `onNavigate` conditionally\n // (onNavigate: open ? setActiveIndex : setSelectedIndex),\n // we store and call the previous function.\n indexRef.current = -1;\n previousOnNavigateRef.current();\n }\n }, [enabled, open, floatingElement, selectedIndex, onNavigate]);\n\n // Sync `activeIndex` to be the focused item while the floating element is\n // open.\n useIsoLayoutEffect(() => {\n if (!enabled) {\n return;\n }\n if (!open) {\n forceSyncFocusRef.current = false;\n return;\n }\n if (!floatingElement) {\n return;\n }\n if (activeIndex == null) {\n forceSyncFocusRef.current = false;\n if (selectedIndexRef.current != null) {\n return;\n }\n\n // Reset while the floating element was open (e.g. the list changed).\n if (previousMountedRef.current) {\n indexRef.current = -1;\n focusItem();\n }\n\n // Initial sync.\n if ((!previousOpenRef.current || !previousMountedRef.current) && focusItemOnOpenRef.current && (keyRef.current != null || focusItemOnOpenRef.current === true && keyRef.current == null)) {\n let runs = 0;\n const waitForListPopulated = () => {\n if (listRef.current[0] == null) {\n // Avoid letting the browser paint if possible on the first try,\n // otherwise use rAF. Don't try more than twice, since something\n // is wrong otherwise.\n if (runs < 2) {\n const scheduler = runs ? requestAnimationFrame : queueMicrotask;\n scheduler(waitForListPopulated);\n }\n runs += 1;\n } else {\n // initially focus the first non-disabled item\n indexRef.current = keyRef.current == null || isMainOrientationToEndKey(keyRef.current, orientation, rtl) || nested ? getMinListIndex(listRef) : getMaxListIndex(listRef);\n keyRef.current = null;\n onNavigate();\n }\n };\n waitForListPopulated();\n }\n } else if (!isIndexOutOfListBounds(listRef.current, activeIndex)) {\n indexRef.current = activeIndex;\n focusItem();\n forceScrollIntoViewRef.current = false;\n }\n }, [enabled, open, floatingElement, activeIndex, selectedIndexRef, nested, listRef, orientation, rtl, onNavigate, focusItem, disabledIndicesRef]);\n\n // Ensure the parent floating element has focus when a nested child closes\n // to allow arrow key navigation to work after the pointer leaves the child.\n useIsoLayoutEffect(() => {\n if (!enabled || floatingElement || !tree || virtual || !previousMountedRef.current) {\n return;\n }\n const nodes = tree.nodesRef.current;\n const parent = nodes.find(node => node.id === parentId)?.context?.elements.floating;\n const activeEl = activeElement(ownerDocument(floatingElement));\n const treeContainsActiveEl = nodes.some(node => node.context && contains(node.context.elements.floating, activeEl));\n if (parent && !treeContainsActiveEl && isPointerModalityRef.current) {\n parent.focus({\n preventScroll: true\n });\n }\n }, [enabled, floatingElement, tree, parentId, virtual]);\n useIsoLayoutEffect(() => {\n previousOnNavigateRef.current = onNavigate;\n previousOpenRef.current = open;\n previousMountedRef.current = !!floatingElement;\n });\n useIsoLayoutEffect(() => {\n if (!open) {\n keyRef.current = null;\n focusItemOnOpenRef.current = focusItemOnOpen;\n }\n }, [open, focusItemOnOpen]);\n const hasActiveIndex = activeIndex != null;\n const syncCurrentTarget = useStableCallback(event => {\n if (!latestOpenRef.current) {\n return;\n }\n const index = listRef.current.indexOf(event.currentTarget);\n if (index !== -1 && (indexRef.current !== index || activeIndex !== index)) {\n indexRef.current = index;\n onNavigate(event);\n }\n });\n const item = React.useMemo(() => {\n const itemProps = {\n onFocus(event) {\n forceSyncFocusRef.current = true;\n syncCurrentTarget(event);\n },\n onClick: ({\n currentTarget\n }) => currentTarget.focus({\n preventScroll: true\n }),\n // Safari\n onMouseMove(event) {\n forceSyncFocusRef.current = true;\n forceScrollIntoViewRef.current = false;\n if (focusItemOnHover) {\n syncCurrentTarget(event);\n }\n },\n onPointerLeave(event) {\n if (!latestOpenRef.current || !isPointerModalityRef.current || event.pointerType === 'touch') {\n return;\n }\n forceSyncFocusRef.current = true;\n const relatedTarget = event.relatedTarget;\n if (!focusItemOnHover || listRef.current.includes(relatedTarget)) {\n return;\n }\n if (!resetOnPointerLeaveRef.current) {\n return;\n }\n cancelQueuedFocusRef.current?.();\n cancelQueuedFocusRef.current = null;\n indexRef.current = -1;\n onNavigate(event);\n if (!virtual) {\n const floatingFocusEl = floatingFocusElementRef.current;\n const activeEl = activeElement(ownerDocument(floatingFocusEl));\n if (floatingFocusEl && contains(floatingFocusEl, activeEl)) {\n floatingFocusEl.focus({\n preventScroll: true\n });\n }\n }\n }\n };\n return itemProps;\n }, [syncCurrentTarget, latestOpenRef, floatingFocusElementRef, focusItemOnHover, listRef, onNavigate, resetOnPointerLeaveRef, virtual]);\n const getParentOrientation = React.useCallback(() => {\n return parentOrientation ?? tree?.nodesRef.current.find(node => node.id === parentId)?.context?.dataRef?.current.orientation;\n }, [parentId, tree, parentOrientation]);\n const commonOnKeyDown = useStableCallback(event => {\n isPointerModalityRef.current = false;\n forceSyncFocusRef.current = true;\n\n // When composing a character, Chrome fires ArrowDown twice. Firefox/Safari\n // don't appear to suffer from this. `event.isComposing` is avoided due to\n // Safari not supporting it properly (although it's not needed in the first\n // place for Safari, just avoiding any possible issues).\n if (event.which === 229) {\n return;\n }\n\n // If the floating element is animating out, ignore navigation. Otherwise,\n // the `activeIndex` gets set to 0 despite not being open so the next time\n // the user ArrowDowns, the first item won't be focused.\n if (!latestOpenRef.current && event.currentTarget === floatingFocusElementRef.current) {\n return;\n }\n if (nested && isCrossOrientationCloseKey(event.key, orientation, rtl, cols)) {\n // If the nested list's close key is also the parent navigation key,\n // let the parent navigate. Otherwise, stop propagating the event.\n if (!isMainOrientationKey(event.key, getParentOrientation())) {\n stopEvent(event);\n }\n store.setOpen(false, createChangeEventDetails(REASONS.listNavigation, event.nativeEvent));\n if (isHTMLElement(domReferenceElement)) {\n if (virtual) {\n tree?.events.emit('virtualfocus', domReferenceElement);\n } else {\n domReferenceElement.focus();\n }\n }\n return;\n }\n const currentIndex = indexRef.current;\n const minIndex = getMinListIndex(listRef, disabledIndices);\n const maxIndex = getMaxListIndex(listRef, disabledIndices);\n if (!typeableComboboxReference) {\n if (event.key === 'Home') {\n stopEvent(event);\n indexRef.current = minIndex;\n onNavigate(event);\n }\n if (event.key === 'End') {\n stopEvent(event);\n indexRef.current = maxIndex;\n onNavigate(event);\n }\n }\n\n // Grid navigation.\n if (cols > 1) {\n const sizes = Array.from({\n length: listRef.current.length\n }, () => ({\n width: 1,\n height: 1\n }));\n // To calculate movements on the grid, we use hypothetical cell indices\n // as if every item was 1x1, then convert back to real indices.\n const cellMap = createGridCellMap(sizes, cols, false);\n const minGridIndex = cellMap.findIndex(index => index != null && !isListIndexDisabled(listRef.current, index, disabledIndices));\n // last enabled index\n const maxGridIndex = cellMap.reduce((foundIndex, index, cellIndex) => index != null && !isListIndexDisabled(listRef.current, index, disabledIndices) ? cellIndex : foundIndex, -1);\n const index = cellMap[getGridNavigatedIndex(cellMap.map(itemIndex => itemIndex != null ? listRef.current[itemIndex] : null), {\n event,\n orientation,\n loopFocus,\n rtl,\n cols,\n // treat undefined (empty grid spaces) as disabled indices so we\n // don't end up in them\n disabledIndices: getGridCellIndices([...((typeof disabledIndices !== 'function' ? disabledIndices : null) || listRef.current.map((_, listIndex) => isListIndexDisabled(listRef.current, listIndex, disabledIndices) ? listIndex : undefined)), undefined], cellMap),\n minIndex: minGridIndex,\n maxIndex: maxGridIndex,\n prevIndex: getGridCellIndexOfCorner(indexRef.current > maxIndex ? minIndex : indexRef.current, sizes, cellMap, cols,\n // use a corner matching the edge closest to the direction\n // we're moving in so we don't end up in the same item. Prefer\n // top/left over bottom/right.\n // eslint-disable-next-line no-nested-ternary\n event.key === ARROW_DOWN ? 'bl' : event.key === (rtl ? ARROW_LEFT : ARROW_RIGHT) ? 'tr' : 'tl'),\n stopEvent: true\n })];\n if (index != null) {\n indexRef.current = index;\n onNavigate(event);\n }\n if (orientation === 'both') {\n return;\n }\n }\n if (isMainOrientationKey(event.key, orientation)) {\n stopEvent(event);\n\n // Reset the index if no item is focused.\n if (open && !virtual && activeElement(event.currentTarget.ownerDocument) === event.currentTarget) {\n indexRef.current = isMainOrientationToEndKey(event.key, orientation, rtl) ? minIndex : maxIndex;\n onNavigate(event);\n return;\n }\n if (isMainOrientationToEndKey(event.key, orientation, rtl)) {\n if (loopFocus) {\n if (currentIndex >= maxIndex) {\n if (allowEscape && currentIndex !== listRef.current.length) {\n indexRef.current = -1;\n } else {\n // Give time for virtualizers to update the listRef.\n forceSyncFocusRef.current = false;\n indexRef.current = minIndex;\n }\n } else {\n indexRef.current = findNonDisabledListIndex(listRef.current, {\n startingIndex: currentIndex,\n disabledIndices\n });\n }\n } else {\n indexRef.current = Math.min(maxIndex, findNonDisabledListIndex(listRef.current, {\n startingIndex: currentIndex,\n disabledIndices\n }));\n }\n } else if (loopFocus) {\n if (currentIndex <= minIndex) {\n if (allowEscape && currentIndex !== -1) {\n indexRef.current = listRef.current.length;\n } else {\n // Give time for virtualizers to update the listRef.\n forceSyncFocusRef.current = false;\n indexRef.current = maxIndex;\n }\n } else {\n indexRef.current = findNonDisabledListIndex(listRef.current, {\n startingIndex: currentIndex,\n decrement: true,\n disabledIndices\n });\n }\n } else {\n indexRef.current = Math.max(minIndex, findNonDisabledListIndex(listRef.current, {\n startingIndex: currentIndex,\n decrement: true,\n disabledIndices\n }));\n }\n if (isIndexOutOfListBounds(listRef.current, indexRef.current)) {\n indexRef.current = -1;\n }\n onNavigate(event);\n }\n });\n const ariaActiveDescendantProp = React.useMemo(() => {\n return virtual && open && hasActiveIndex && {\n 'aria-activedescendant': `${id}-${activeIndex}`\n };\n }, [virtual, open, hasActiveIndex, id, activeIndex]);\n const floating = React.useMemo(() => {\n return {\n 'aria-orientation': orientation === 'both' ? undefined : orientation,\n ...(!typeableComboboxReference ? ariaActiveDescendantProp : {}),\n onKeyDown(event) {\n // Close submenu on Shift+Tab\n if (event.key === 'Tab' && event.shiftKey && open && !virtual) {\n // If the event originated from within a nested element (e.g., a Dialog opened from\n // within the menu), don't close the menu. The nested element has its own focus\n // management and should handle the Tab key.\n const target = getTarget(event.nativeEvent);\n if (target && !contains(floatingFocusElementRef.current, target)) {\n return;\n }\n stopEvent(event);\n store.setOpen(false, createChangeEventDetails(REASONS.focusOut, event.nativeEvent));\n if (isHTMLElement(domReferenceElement)) {\n domReferenceElement.focus();\n }\n return;\n }\n commonOnKeyDown(event);\n },\n onPointerMove() {\n isPointerModalityRef.current = true;\n }\n };\n }, [ariaActiveDescendantProp, commonOnKeyDown, floatingFocusElementRef, orientation, typeableComboboxReference, store, open, virtual, domReferenceElement]);\n const trigger = React.useMemo(() => {\n function checkVirtualMouse(event) {\n if (focusItemOnOpen === 'auto' && isVirtualClick(event.nativeEvent)) {\n focusItemOnOpenRef.current = !virtual;\n }\n }\n function checkVirtualPointer(event) {\n // `pointerdown` fires first, reset the state then perform the checks.\n focusItemOnOpenRef.current = focusItemOnOpen;\n if (focusItemOnOpen === 'auto' && isVirtualPointerEvent(event.nativeEvent)) {\n focusItemOnOpenRef.current = true;\n }\n }\n return {\n onKeyDown(event) {\n // non-reactive open state (to prevent re-creation of the handler)\n const currentOpen = store.select('open');\n isPointerModalityRef.current = false;\n const isArrowKey = event.key.startsWith('Arrow');\n const isParentCrossOpenKey = isCrossOrientationOpenKey(event.key, getParentOrientation(), rtl);\n const isMainKey = isMainOrientationKey(event.key, orientation);\n const isNavigationKey = (nested ? isParentCrossOpenKey : isMainKey) || event.key === 'Enter' || event.key.trim() === '';\n if (virtual && currentOpen) {\n return commonOnKeyDown(event);\n }\n\n // If a floating element should not open on arrow key down, avoid\n // setting `activeIndex` while it's closed.\n if (!currentOpen && !openOnArrowKeyDown && isArrowKey) {\n return undefined;\n }\n if (isNavigationKey) {\n const isParentMainKey = isMainOrientationKey(event.key, getParentOrientation());\n keyRef.current = nested && isParentMainKey ? null : event.key;\n }\n if (nested) {\n if (isParentCrossOpenKey) {\n stopEvent(event);\n if (currentOpen) {\n indexRef.current = getMinListIndex(listRef, disabledIndicesRef.current);\n onNavigate(event);\n } else {\n store.setOpen(true, createChangeEventDetails(REASONS.listNavigation, event.nativeEvent, event.currentTarget));\n }\n }\n return undefined;\n }\n if (isMainKey) {\n if (selectedIndexRef.current != null) {\n indexRef.current = selectedIndexRef.current;\n }\n stopEvent(event);\n if (!currentOpen && openOnArrowKeyDown) {\n store.setOpen(true, createChangeEventDetails(REASONS.listNavigation, event.nativeEvent, event.currentTarget));\n } else {\n commonOnKeyDown(event);\n }\n if (currentOpen) {\n onNavigate(event);\n }\n }\n return undefined;\n },\n onFocus(event) {\n if (store.select('open') && !virtual) {\n indexRef.current = -1;\n onNavigate(event);\n }\n },\n onPointerDown: checkVirtualPointer,\n onPointerEnter: checkVirtualPointer,\n onMouseDown: checkVirtualMouse,\n onClick: checkVirtualMouse\n };\n }, [commonOnKeyDown, disabledIndicesRef, focusItemOnOpen, listRef, nested, onNavigate, store, openOnArrowKeyDown, orientation, getParentOrientation, rtl, selectedIndexRef, virtual]);\n const reference = React.useMemo(() => {\n return {\n ...ariaActiveDescendantProp,\n ...trigger\n };\n }, [ariaActiveDescendantProp, trigger]);\n return React.useMemo(() => enabled ? {\n reference,\n floating,\n item,\n trigger\n } : {}, [enabled, reference, floating, trigger, item]);\n}"],"names":["ESCAPE","doSwitch","orientation","vertical","horizontal","isMainOrientationKey","key","ARROW_UP","ARROW_DOWN","ARROW_LEFT","ARROW_RIGHT","isMainOrientationToEndKey","rtl","isCrossOrientationOpenKey","isCrossOrientationCloseKey","cols","useListNavigation","context","props","store","open","floatingElement","domReferenceElement","dataRef","listRef","activeIndex","onNavigateProp","enabled","selectedIndex","allowEscape","loopFocus","nested","virtual","focusItemOnOpen","focusItemOnHover","openOnArrowKeyDown","disabledIndices","parentOrientation","id","resetOnPointerLeave","externalTree","floatingFocusElement","getFloatingFocusElement","floatingFocusElementRef","useValueAsRef","parentId","useFloatingParentNodeId","tree","useFloatingTree","useIsoLayoutEffect","typeableComboboxReference","isTypeableCombobox","focusItemOnOpenRef","React","indexRef","keyRef","isPointerModalityRef","onNavigate","useStableCallback","event","previousOnNavigateRef","previousMountedRef","previousOpenRef","forceSyncFocusRef","forceScrollIntoViewRef","cancelQueuedFocusRef","disabledIndicesRef","latestOpenRef","selectedIndexRef","resetOnPointerLeaveRef","focusItem","runFocus","item","enqueueFocus","initialItem","forceScrollIntoView","v","waitedItem","runs","waitForListPopulated","getMinListIndex","getMaxListIndex","isIndexOutOfListBounds","nodes","parent","node","activeEl","activeElement","ownerDocument","treeContainsActiveEl","contains","hasActiveIndex","syncCurrentTarget","index","currentTarget","relatedTarget","floatingFocusEl","getParentOrientation","commonOnKeyDown","stopEvent","createChangeEventDetails","REASONS.listNavigation","isHTMLElement","currentIndex","minIndex","maxIndex","sizes","cellMap","createGridCellMap","minGridIndex","isListIndexDisabled","maxGridIndex","foundIndex","cellIndex","getGridNavigatedIndex","itemIndex","getGridCellIndices","_","listIndex","getGridCellIndexOfCorner","findNonDisabledListIndex","ariaActiveDescendantProp","floating","target","getTarget","REASONS.focusOut","trigger","checkVirtualMouse","isVirtualClick","checkVirtualPointer","isVirtualPointerEvent","currentOpen","isArrowKey","isParentCrossOpenKey","isMainKey","isNavigationKey","isParentMainKey","reference"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index280.js","sources":["../node_modules/@base-ui/utils/visuallyHidden.mjs"],"sourcesContent":["const visuallyHiddenBase = {\n clipPath: 'inset(50%)',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n border: 0,\n padding: 0,\n width: 1,\n height: 1,\n margin: -1\n};\nexport const visuallyHidden = {\n ...visuallyHiddenBase,\n position: 'fixed',\n top: 0,\n left: 0\n};\nexport const visuallyHiddenInput = {\n ...visuallyHiddenBase,\n position: 'absolute'\n};"],"names":["visuallyHiddenBase","visuallyHidden","visuallyHiddenInput"],"mappings":"AAAA,MAAMA,IAAqB;AAAA,EACzB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AACV,GACaC,IAAiB;AAAA,EAC5B,GAAGD;AAAA,EACH,UAAU;AAAA,EACV,KAAK;AAAA,EACL,MAAM;AACR,GACaE,IAAsB;AAAA,EACjC,GAAGF;AAAA,EACH,UAAU;AACZ;","x_google_ignoreList":[0]}
package/dist/index281.js CHANGED
@@ -1,72 +1,70 @@
1
- import * as u from "react";
2
- import { useStableCallback as k } from "./index262.js";
3
- import { useIsoLayoutEffect as F } from "./index261.js";
4
- import { useTimeout as A } from "./index285.js";
5
- import { contains as K } from "./index291.js";
6
- import { stopEvent as D } from "./index375.js";
7
- import { isElementVisible as G } from "./index378.js";
8
- function $(w, O) {
9
- const a = "rootStore" in w ? w.rootStore : w, m = a.context.dataRef, i = a.useState("open"), {
10
- listRef: V,
11
- elementsRef: z,
12
- activeIndex: f,
13
- onMatch: B,
14
- onTypingChange: C,
15
- enabled: E = !0,
16
- resetMs: N = 750,
17
- selectedIndex: n = null
18
- } = O, g = A(), t = u.useRef(""), o = u.useRef(n ?? f ?? -1), l = u.useRef(null);
19
- F(() => {
20
- !i && n !== null || (g.clear(), l.current = null, t.current !== "" && (t.current = ""));
21
- }, [i, n, g]), F(() => {
22
- i && t.current === "" && (o.current = n ?? f ?? -1);
23
- }, [i, n, f]);
24
- const c = k((e) => {
25
- e ? m.current.typing || (m.current.typing = e, C?.(e)) : m.current.typing && (m.current.typing = e, C?.(e));
26
- }), p = k((e) => {
27
- function y(r) {
28
- const x = z?.current[r];
29
- return !x || G(x);
30
- }
31
- function h(r, x, W = 0) {
32
- if (r.length === 0)
33
- return -1;
34
- const j = (W % r.length + r.length) % r.length, q = x.toLocaleLowerCase();
35
- for (let I = 0; I < r.length; I += 1) {
36
- const S = (j + I) % r.length;
37
- if (!(!r[S]?.toLocaleLowerCase().startsWith(q) || !y(S)))
38
- return S;
1
+ import { useRefWithInit as r } from "./index282.js";
2
+ function b(n, e, c, t) {
3
+ const l = r(i).current;
4
+ return s(l, n, e, c, t) && o(l, [n, e, c, t]), l.callback;
5
+ }
6
+ function h(n) {
7
+ const e = r(i).current;
8
+ return f(e, n) && o(e, n), e.callback;
9
+ }
10
+ function i() {
11
+ return {
12
+ callback: null,
13
+ cleanup: null,
14
+ refs: []
15
+ };
16
+ }
17
+ function s(n, e, c, t, l) {
18
+ return n.refs[0] !== e || n.refs[1] !== c || n.refs[2] !== t || n.refs[3] !== l;
19
+ }
20
+ function f(n, e) {
21
+ return n.refs.length !== e.length || n.refs.some((c, t) => c !== e[t]);
22
+ }
23
+ function o(n, e) {
24
+ if (n.refs = e, e.every((c) => c == null)) {
25
+ n.callback = null;
26
+ return;
27
+ }
28
+ n.callback = (c) => {
29
+ if (n.cleanup && (n.cleanup(), n.cleanup = null), c != null) {
30
+ const t = Array(e.length).fill(null);
31
+ for (let l = 0; l < e.length; l += 1) {
32
+ const u = e[l];
33
+ if (u != null)
34
+ switch (typeof u) {
35
+ case "function": {
36
+ const a = u(c);
37
+ typeof a == "function" && (t[l] = a);
38
+ break;
39
+ }
40
+ case "object": {
41
+ u.current = c;
42
+ break;
43
+ }
44
+ }
39
45
  }
40
- return -1;
46
+ n.cleanup = () => {
47
+ for (let l = 0; l < e.length; l += 1) {
48
+ const u = e[l];
49
+ if (u != null)
50
+ switch (typeof u) {
51
+ case "function": {
52
+ const a = t[l];
53
+ typeof a == "function" ? a() : u(null);
54
+ break;
55
+ }
56
+ case "object": {
57
+ u.current = null;
58
+ break;
59
+ }
60
+ }
61
+ }
62
+ };
41
63
  }
42
- const s = V.current;
43
- if (t.current.length > 0 && e.key === " " && (D(e), c(!0)), t.current.length > 0 && t.current[0] !== " " && h(s, t.current) === -1 && e.key !== " " && c(!1), s == null || // Character key.
44
- e.key.length !== 1 || // Modifier key.
45
- e.ctrlKey || e.metaKey || e.altKey)
46
- return;
47
- i && e.key !== " " && (D(e), c(!0));
48
- const R = t.current === "";
49
- R && (o.current = n ?? f ?? -1), s.every((r) => r ? r[0]?.toLocaleLowerCase() !== r[1]?.toLocaleLowerCase() : !0) && t.current === e.key && (t.current = "", o.current = l.current), t.current += e.key, g.start(N, () => {
50
- t.current = "", o.current = l.current, c(!1);
51
- });
52
- const P = ((R ? n ?? f ?? -1 : o.current) ?? 0) + 1, L = h(s, t.current, P);
53
- L !== -1 ? (B?.(L), l.current = L) : e.key !== " " && (t.current = "", c(!1));
54
- }), d = k((e) => {
55
- const y = e.relatedTarget, h = a.select("domReferenceElement"), s = a.select("floatingElement"), R = K(h, y), T = K(s, y);
56
- R || T || (g.clear(), t.current = "", o.current = l.current, c(!1));
57
- }), M = u.useMemo(() => ({
58
- onKeyDown: p,
59
- onBlur: d
60
- }), [p, d]), b = u.useMemo(() => ({
61
- onKeyDown: p,
62
- onBlur: d
63
- }), [p, d]);
64
- return u.useMemo(() => E ? {
65
- reference: M,
66
- floating: b
67
- } : {}, [E, M, b]);
64
+ };
68
65
  }
69
66
  export {
70
- $ as useTypeahead
67
+ b as useMergedRefs,
68
+ h as useMergedRefsN
71
69
  };
72
70
  //# sourceMappingURL=index281.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index281.js","sources":["../../../node_modules/@base-ui/react/esm/floating-ui-react/hooks/useTypeahead.js"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useTimeout } from '@base-ui/utils/useTimeout';\nimport { contains } from \"../utils/element.js\";\nimport { stopEvent } from \"../utils/event.js\";\nimport { isElementVisible } from \"../utils/composite.js\";\n/**\n * Provides a matching callback that can be used to focus an item as the user\n * types, often used in tandem with `useListNavigation()`.\n * @see https://floating-ui.com/docs/useTypeahead\n */\nexport function useTypeahead(context, props) {\n const store = 'rootStore' in context ? context.rootStore : context;\n const dataRef = store.context.dataRef;\n const open = store.useState('open');\n const {\n listRef,\n elementsRef,\n activeIndex,\n onMatch: onMatchProp,\n onTypingChange,\n enabled = true,\n resetMs = 750,\n selectedIndex = null\n } = props;\n const timeout = useTimeout();\n const stringRef = React.useRef('');\n const prevIndexRef = React.useRef(selectedIndex ?? activeIndex ?? -1);\n const matchIndexRef = React.useRef(null);\n useIsoLayoutEffect(() => {\n if (!open && selectedIndex !== null) {\n return;\n }\n timeout.clear();\n matchIndexRef.current = null;\n if (stringRef.current !== '') {\n stringRef.current = '';\n }\n }, [open, selectedIndex, timeout]);\n useIsoLayoutEffect(() => {\n // Sync arrow key navigation but not typeahead navigation.\n if (open && stringRef.current === '') {\n prevIndexRef.current = selectedIndex ?? activeIndex ?? -1;\n }\n }, [open, selectedIndex, activeIndex]);\n const setTypingChange = useStableCallback(value => {\n if (value) {\n if (!dataRef.current.typing) {\n dataRef.current.typing = value;\n onTypingChange?.(value);\n }\n } else if (dataRef.current.typing) {\n dataRef.current.typing = value;\n onTypingChange?.(value);\n }\n });\n const onKeyDown = useStableCallback(event => {\n function isVisible(index) {\n const element = elementsRef?.current[index];\n return !element || isElementVisible(element);\n }\n function getMatchingIndex(list, string, startIndex = 0) {\n if (list.length === 0) {\n return -1;\n }\n const normalizedStartIndex = (startIndex % list.length + list.length) % list.length;\n const lowerString = string.toLocaleLowerCase();\n for (let offset = 0; offset < list.length; offset += 1) {\n const index = (normalizedStartIndex + offset) % list.length;\n const text = list[index];\n if (!text?.toLocaleLowerCase().startsWith(lowerString) || !isVisible(index)) {\n continue;\n }\n return index;\n }\n return -1;\n }\n const listContent = listRef.current;\n if (stringRef.current.length > 0 && event.key === ' ') {\n // Space should continue the in-progress typeahead session.\n stopEvent(event);\n setTypingChange(true);\n }\n if (stringRef.current.length > 0 && stringRef.current[0] !== ' ') {\n if (getMatchingIndex(listContent, stringRef.current) === -1 && event.key !== ' ') {\n setTypingChange(false);\n }\n }\n if (listContent == null ||\n // Character key.\n event.key.length !== 1 ||\n // Modifier key.\n event.ctrlKey || event.metaKey || event.altKey) {\n return;\n }\n if (open && event.key !== ' ') {\n stopEvent(event);\n setTypingChange(true);\n }\n\n // Capture whether this is a new typing session before mutating the string.\n const isNewSession = stringRef.current === '';\n if (isNewSession) {\n prevIndexRef.current = selectedIndex ?? activeIndex ?? -1;\n }\n\n // Bail out if the list contains a word like \"llama\" or \"aaron\". TODO:\n // allow it in this case, too.\n const allowRapidSuccessionOfFirstLetter = listContent.every(text => text ? text[0]?.toLocaleLowerCase() !== text[1]?.toLocaleLowerCase() : true);\n\n // Allows the user to cycle through items that start with the same letter\n // in rapid succession.\n if (allowRapidSuccessionOfFirstLetter && stringRef.current === event.key) {\n stringRef.current = '';\n prevIndexRef.current = matchIndexRef.current;\n }\n stringRef.current += event.key;\n timeout.start(resetMs, () => {\n stringRef.current = '';\n prevIndexRef.current = matchIndexRef.current;\n setTypingChange(false);\n });\n\n // Compute the starting index for this search.\n // If this is a new typing session (string is empty), base it on the current\n // selection/active item; otherwise continue from the last matched index.\n const prevIndex = isNewSession ? selectedIndex ?? activeIndex ?? -1 : prevIndexRef.current;\n const startIndex = (prevIndex ?? 0) + 1;\n const index = getMatchingIndex(listContent, stringRef.current, startIndex);\n if (index !== -1) {\n onMatchProp?.(index);\n matchIndexRef.current = index;\n } else if (event.key !== ' ') {\n stringRef.current = '';\n setTypingChange(false);\n }\n });\n const onBlur = useStableCallback(event => {\n const next = event.relatedTarget;\n const currentDomReferenceElement = store.select('domReferenceElement');\n const currentFloatingElement = store.select('floatingElement');\n const withinReference = contains(currentDomReferenceElement, next);\n const withinFloating = contains(currentFloatingElement, next);\n\n // Keep the session if focus moves within the composite (reference <-> floating).\n if (withinReference || withinFloating) {\n return;\n }\n\n // End the current typing session when focus leaves the composite entirely.\n timeout.clear();\n stringRef.current = '';\n prevIndexRef.current = matchIndexRef.current;\n setTypingChange(false);\n });\n const reference = React.useMemo(() => ({\n onKeyDown,\n onBlur\n }), [onKeyDown, onBlur]);\n const floating = React.useMemo(() => {\n return {\n onKeyDown,\n onBlur\n };\n }, [onKeyDown, onBlur]);\n return React.useMemo(() => enabled ? {\n reference,\n floating\n } : {}, [enabled, reference, floating]);\n}"],"names":["useTypeahead","context","props","store","dataRef","open","listRef","elementsRef","activeIndex","onMatchProp","onTypingChange","enabled","resetMs","selectedIndex","timeout","useTimeout","stringRef","React","prevIndexRef","matchIndexRef","useIsoLayoutEffect","setTypingChange","useStableCallback","value","onKeyDown","event","isVisible","index","element","isElementVisible","getMatchingIndex","list","string","startIndex","normalizedStartIndex","lowerString","offset","listContent","stopEvent","isNewSession","text","onBlur","next","currentDomReferenceElement","currentFloatingElement","withinReference","contains","withinFloating","reference","floating"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index281.js","sources":["../node_modules/@base-ui/utils/useMergedRefs.mjs"],"sourcesContent":["import { useRefWithInit } from \"./useRefWithInit.mjs\";\n\n/**\n * Merges refs into a single memoized callback ref or `null`.\n * This makes sure multiple refs are updated together and have the same value.\n *\n * This function accepts up to four refs. If you need to merge more, or have an unspecified number of refs to merge,\n * use `useMergedRefsN` instead.\n */\n\nexport function useMergedRefs(a, b, c, d) {\n const forkRef = useRefWithInit(createForkRef).current;\n if (didChange(forkRef, a, b, c, d)) {\n update(forkRef, [a, b, c, d]);\n }\n return forkRef.callback;\n}\n\n/**\n * Merges an array of refs into a single memoized callback ref or `null`.\n *\n * If you need to merge a fixed number (up to four) of refs, use `useMergedRefs` instead for better performance.\n */\nexport function useMergedRefsN(refs) {\n const forkRef = useRefWithInit(createForkRef).current;\n if (didChangeN(forkRef, refs)) {\n update(forkRef, refs);\n }\n return forkRef.callback;\n}\nfunction createForkRef() {\n return {\n callback: null,\n cleanup: null,\n refs: []\n };\n}\nfunction didChange(forkRef, a, b, c, d) {\n // prettier-ignore\n return forkRef.refs[0] !== a || forkRef.refs[1] !== b || forkRef.refs[2] !== c || forkRef.refs[3] !== d;\n}\nfunction didChangeN(forkRef, newRefs) {\n return forkRef.refs.length !== newRefs.length || forkRef.refs.some((ref, index) => ref !== newRefs[index]);\n}\nfunction update(forkRef, refs) {\n forkRef.refs = refs;\n if (refs.every(ref => ref == null)) {\n forkRef.callback = null;\n return;\n }\n forkRef.callback = instance => {\n if (forkRef.cleanup) {\n forkRef.cleanup();\n forkRef.cleanup = null;\n }\n if (instance != null) {\n const cleanupCallbacks = Array(refs.length).fill(null);\n for (let i = 0; i < refs.length; i += 1) {\n const ref = refs[i];\n if (ref == null) {\n continue;\n }\n switch (typeof ref) {\n case 'function':\n {\n const refCleanup = ref(instance);\n if (typeof refCleanup === 'function') {\n cleanupCallbacks[i] = refCleanup;\n }\n break;\n }\n case 'object':\n {\n ref.current = instance;\n break;\n }\n default:\n }\n }\n forkRef.cleanup = () => {\n for (let i = 0; i < refs.length; i += 1) {\n const ref = refs[i];\n if (ref == null) {\n continue;\n }\n switch (typeof ref) {\n case 'function':\n {\n const cleanupCallback = cleanupCallbacks[i];\n if (typeof cleanupCallback === 'function') {\n cleanupCallback();\n } else {\n ref(null);\n }\n break;\n }\n case 'object':\n {\n ref.current = null;\n break;\n }\n default:\n }\n }\n };\n }\n };\n}"],"names":["useMergedRefs","a","b","d","forkRef","useRefWithInit","createForkRef","didChange","update","useMergedRefsN","refs","didChangeN","c","newRefs","ref","index","instance","cleanupCallbacks","i","refCleanup","cleanupCallback"],"mappings":";AAUO,SAASA,EAAcC,GAAGC,GAAG,GAAGC,GAAG;AACxC,QAAMC,IAAUC,EAAeC,CAAa,EAAE;AAC9C,SAAIC,EAAUH,GAASH,GAAGC,GAAG,GAAGC,CAAC,KAC/BK,EAAOJ,GAAS,CAACH,GAAGC,GAAG,GAAGC,CAAC,CAAC,GAEvBC,EAAQ;AACjB;AAOO,SAASK,EAAeC,GAAM;AACnC,QAAMN,IAAUC,EAAeC,CAAa,EAAE;AAC9C,SAAIK,EAAWP,GAASM,CAAI,KAC1BF,EAAOJ,GAASM,CAAI,GAEfN,EAAQ;AACjB;AACA,SAASE,IAAgB;AACvB,SAAO;AAAA,IACL,UAAU;AAAA,IACV,SAAS;AAAA,IACT,MAAM,CAAA;AAAA,EACV;AACA;AACA,SAASC,EAAUH,GAASH,GAAGC,GAAGU,GAAGT,GAAG;AAEtC,SAAOC,EAAQ,KAAK,CAAC,MAAMH,KAAKG,EAAQ,KAAK,CAAC,MAAMF,KAAKE,EAAQ,KAAK,CAAC,MAAMQ,KAAKR,EAAQ,KAAK,CAAC,MAAMD;AACxG;AACA,SAASQ,EAAWP,GAASS,GAAS;AACpC,SAAOT,EAAQ,KAAK,WAAWS,EAAQ,UAAUT,EAAQ,KAAK,KAAK,CAACU,GAAKC,MAAUD,MAAQD,EAAQE,CAAK,CAAC;AAC3G;AACA,SAASP,EAAOJ,GAASM,GAAM;AAE7B,MADAN,EAAQ,OAAOM,GACXA,EAAK,MAAM,CAAAI,MAAOA,KAAO,IAAI,GAAG;AAClC,IAAAV,EAAQ,WAAW;AACnB;AAAA,EACF;AACA,EAAAA,EAAQ,WAAW,CAAAY,MAAY;AAK7B,QAJIZ,EAAQ,YACVA,EAAQ,QAAO,GACfA,EAAQ,UAAU,OAEhBY,KAAY,MAAM;AACpB,YAAMC,IAAmB,MAAMP,EAAK,MAAM,EAAE,KAAK,IAAI;AACrD,eAASQ,IAAI,GAAGA,IAAIR,EAAK,QAAQQ,KAAK,GAAG;AACvC,cAAMJ,IAAMJ,EAAKQ,CAAC;AAClB,YAAIJ,KAAO;AAGX,kBAAQ,OAAOA,GAAG;AAAA,YAChB,KAAK,YACH;AACE,oBAAMK,IAAaL,EAAIE,CAAQ;AAC/B,cAAI,OAAOG,KAAe,eACxBF,EAAiBC,CAAC,IAAIC;AAExB;AAAA,YACF;AAAA,YACF,KAAK,UACH;AACE,cAAAL,EAAI,UAAUE;AACd;AAAA,YACF;AAAA,UAEZ;AAAA,MACM;AACA,MAAAZ,EAAQ,UAAU,MAAM;AACtB,iBAASc,IAAI,GAAGA,IAAIR,EAAK,QAAQQ,KAAK,GAAG;AACvC,gBAAMJ,IAAMJ,EAAKQ,CAAC;AAClB,cAAIJ,KAAO;AAGX,oBAAQ,OAAOA,GAAG;AAAA,cAChB,KAAK,YACH;AACE,sBAAMM,IAAkBH,EAAiBC,CAAC;AAC1C,gBAAI,OAAOE,KAAoB,aAC7BA,EAAe,IAEfN,EAAI,IAAI;AAEV;AAAA,cACF;AAAA,cACF,KAAK,UACH;AACE,gBAAAA,EAAI,UAAU;AACd;AAAA,cACF;AAAA,YAEd;AAAA,QACQ;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","x_google_ignoreList":[0]}