@rpcbase/ui 0.226.0 → 0.228.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 (758) hide show
  1. package/dist/components/PhoneNumberInput/index.d.ts +1 -1
  2. package/dist/components/PhoneNumberInput/index.d.ts.map +1 -1
  3. package/dist/components/PhoneNumberInput/normalization.d.ts +0 -28
  4. package/dist/components/PhoneNumberInput/normalization.d.ts.map +1 -1
  5. package/dist/components/PhoneNumberInput/types.d.ts +4 -4
  6. package/dist/components/PhoneNumberInput/types.d.ts.map +1 -1
  7. package/dist/index100.js +4 -11
  8. package/dist/index100.js.map +1 -1
  9. package/dist/index101.js +8 -68
  10. package/dist/index101.js.map +1 -1
  11. package/dist/index102.js +6 -38
  12. package/dist/index102.js.map +1 -1
  13. package/dist/index103.js +5 -14
  14. package/dist/index103.js.map +1 -1
  15. package/dist/index104.js +4 -23
  16. package/dist/index104.js.map +1 -1
  17. package/dist/index105.js +6 -110
  18. package/dist/index105.js.map +1 -1
  19. package/dist/index106.js +146 -13
  20. package/dist/index106.js.map +1 -1
  21. package/dist/index107.js +39 -4
  22. package/dist/index107.js.map +1 -1
  23. package/dist/index108.js +5 -4
  24. package/dist/index108.js.map +1 -1
  25. package/dist/index109.js +8 -5
  26. package/dist/index109.js.map +1 -1
  27. package/dist/index110.js +13 -11
  28. package/dist/index110.js.map +1 -1
  29. package/dist/index111.js +13 -19
  30. package/dist/index111.js.map +1 -1
  31. package/dist/index112.js +8 -13
  32. package/dist/index112.js.map +1 -1
  33. package/dist/index113.js +31 -261
  34. package/dist/index113.js.map +1 -1
  35. package/dist/index114.js +10 -4
  36. package/dist/index114.js.map +1 -1
  37. package/dist/index115.js +11 -28
  38. package/dist/index115.js.map +1 -1
  39. package/dist/index116.js +8 -126
  40. package/dist/index116.js.map +1 -1
  41. package/dist/index117.js +13 -5
  42. package/dist/index117.js.map +1 -1
  43. package/dist/index118.js +101 -78
  44. package/dist/index118.js.map +1 -1
  45. package/dist/index119.js +20 -67
  46. package/dist/index119.js.map +1 -1
  47. package/dist/index120.js +53 -8
  48. package/dist/index120.js.map +1 -1
  49. package/dist/index121.js +73 -16
  50. package/dist/index121.js.map +1 -1
  51. package/dist/index122.js +9 -92
  52. package/dist/index122.js.map +1 -1
  53. package/dist/index123.js +17 -62
  54. package/dist/index123.js.map +1 -1
  55. package/dist/index124.js +15 -44
  56. package/dist/index124.js.map +1 -1
  57. package/dist/index125.js +24 -52
  58. package/dist/index125.js.map +1 -1
  59. package/dist/index126.js +6 -4
  60. package/dist/index126.js.map +1 -1
  61. package/dist/index127.js +5 -4
  62. package/dist/index127.js.map +1 -1
  63. package/dist/index128.js +23 -15
  64. package/dist/index128.js.map +1 -1
  65. package/dist/index129.js +35 -6
  66. package/dist/index129.js.map +1 -1
  67. package/dist/index130.js +16 -8
  68. package/dist/index130.js.map +1 -1
  69. package/dist/index131.js +6 -16
  70. package/dist/index131.js.map +1 -1
  71. package/dist/index132.js +4 -4
  72. package/dist/index132.js.map +1 -1
  73. package/dist/index133.js +4 -4
  74. package/dist/index133.js.map +1 -1
  75. package/dist/index134.js +4 -5
  76. package/dist/index134.js.map +1 -1
  77. package/dist/index135.js +4 -5
  78. package/dist/index135.js.map +1 -1
  79. package/dist/index136.js +3 -4
  80. package/dist/index136.js.map +1 -1
  81. package/dist/index137.js +6 -4
  82. package/dist/index137.js.map +1 -1
  83. package/dist/index138.js +24 -7
  84. package/dist/index138.js.map +1 -1
  85. package/dist/index139.js +7 -24
  86. package/dist/index139.js.map +1 -1
  87. package/dist/index140.js +6 -6
  88. package/dist/index140.js.map +1 -1
  89. package/dist/index141.js +5 -4
  90. package/dist/index141.js.map +1 -1
  91. package/dist/index142.js +3 -6
  92. package/dist/index142.js.map +1 -1
  93. package/dist/index143.js +3 -5
  94. package/dist/index143.js.map +1 -1
  95. package/dist/index144.js +4 -4
  96. package/dist/index144.js.map +1 -1
  97. package/dist/index145.js +3 -5
  98. package/dist/index145.js.map +1 -1
  99. package/dist/index146.js +4 -4
  100. package/dist/index146.js.map +1 -1
  101. package/dist/index147.js +3 -8
  102. package/dist/index147.js.map +1 -1
  103. package/dist/index148.js +3 -5
  104. package/dist/index148.js.map +1 -1
  105. package/dist/index149.js +3 -4
  106. package/dist/index149.js.map +1 -1
  107. package/dist/index150.js +5 -4
  108. package/dist/index150.js.map +1 -1
  109. package/dist/index151.js +68 -6
  110. package/dist/index151.js.map +1 -1
  111. package/dist/index152.js +2 -146
  112. package/dist/index152.js.map +1 -1
  113. package/dist/index153.js +362 -38
  114. package/dist/index153.js.map +1 -1
  115. package/dist/index154.js +261 -4
  116. package/dist/index154.js.map +1 -1
  117. package/dist/index155.js +60 -7
  118. package/dist/index155.js.map +1 -1
  119. package/dist/index156.js +46 -13
  120. package/dist/index156.js.map +1 -1
  121. package/dist/index157.js +169 -13
  122. package/dist/index157.js.map +1 -1
  123. package/dist/index158.js +109 -7
  124. package/dist/index158.js.map +1 -1
  125. package/dist/index159.js +24 -31
  126. package/dist/index159.js.map +1 -1
  127. package/dist/index160.js +8 -11
  128. package/dist/index160.js.map +1 -1
  129. package/dist/index161.js +4 -10
  130. package/dist/index161.js.map +1 -1
  131. package/dist/index162.js +5 -8
  132. package/dist/index162.js.map +1 -1
  133. package/dist/index163.js +4 -13
  134. package/dist/index163.js.map +1 -1
  135. package/dist/index164.js +465 -100
  136. package/dist/index164.js.map +1 -1
  137. package/dist/index165.js +186 -20
  138. package/dist/index165.js.map +1 -1
  139. package/dist/index166.js +107 -53
  140. package/dist/index166.js.map +1 -1
  141. package/dist/index167.js +261 -71
  142. package/dist/index167.js.map +1 -1
  143. package/dist/index168.js +9 -9
  144. package/dist/index168.js.map +1 -1
  145. package/dist/index169.js +42 -20
  146. package/dist/index169.js.map +1 -1
  147. package/dist/index170.js +4 -16
  148. package/dist/index170.js.map +1 -1
  149. package/dist/index171.js +11 -23
  150. package/dist/index171.js.map +1 -1
  151. package/dist/index172.js +68 -6
  152. package/dist/index172.js.map +1 -1
  153. package/dist/index173.js +38 -6
  154. package/dist/index173.js.map +1 -1
  155. package/dist/index174.js +14 -24
  156. package/dist/index174.js.map +1 -1
  157. package/dist/index175.js +21 -32
  158. package/dist/index175.js.map +1 -1
  159. package/dist/index176.js +111 -16
  160. package/dist/index176.js.map +1 -1
  161. package/dist/index177.js +13 -7
  162. package/dist/index177.js.map +1 -1
  163. package/dist/index178.js +4 -4
  164. package/dist/index178.js.map +1 -1
  165. package/dist/index179.js +4 -5
  166. package/dist/index179.js.map +1 -1
  167. package/dist/index18.js +377 -414
  168. package/dist/index18.js.map +1 -1
  169. package/dist/index180.js +5 -5
  170. package/dist/index180.js.map +1 -1
  171. package/dist/index181.js +11 -4
  172. package/dist/index181.js.map +1 -1
  173. package/dist/index182.js +19 -3
  174. package/dist/index182.js.map +1 -1
  175. package/dist/index183.js +13 -7
  176. package/dist/index183.js.map +1 -1
  177. package/dist/index184.js +262 -24
  178. package/dist/index184.js.map +1 -1
  179. package/dist/index185.js +4 -7
  180. package/dist/index185.js.map +1 -1
  181. package/dist/index186.js +28 -7
  182. package/dist/index186.js.map +1 -1
  183. package/dist/index187.js +126 -5
  184. package/dist/index187.js.map +1 -1
  185. package/dist/index188.js +5 -3
  186. package/dist/index188.js.map +1 -1
  187. package/dist/index189.js +78 -3
  188. package/dist/index189.js.map +1 -1
  189. package/dist/index190.js +66 -4
  190. package/dist/index190.js.map +1 -1
  191. package/dist/index191.js +8 -3
  192. package/dist/index191.js.map +1 -1
  193. package/dist/index192.js +16 -5
  194. package/dist/index192.js.map +1 -1
  195. package/dist/index193.js +92 -3
  196. package/dist/index193.js.map +1 -1
  197. package/dist/index194.js +65 -3
  198. package/dist/index194.js.map +1 -1
  199. package/dist/index195.js +45 -3
  200. package/dist/index195.js.map +1 -1
  201. package/dist/index196.js +16 -13
  202. package/dist/index196.js.map +1 -1
  203. package/dist/index197.js +4 -153
  204. package/dist/index197.js.map +1 -1
  205. package/dist/index198.js +4 -29
  206. package/dist/index198.js.map +1 -1
  207. package/dist/index199.js +58 -9
  208. package/dist/index199.js.map +1 -1
  209. package/dist/index200.js +61 -43
  210. package/dist/index200.js.map +1 -1
  211. package/dist/index201.js +6 -11
  212. package/dist/index201.js.map +1 -1
  213. package/dist/index202.js +4 -44
  214. package/dist/index202.js.map +1 -1
  215. package/dist/index203.js +6 -95
  216. package/dist/index203.js.map +1 -1
  217. package/dist/index204.js +16 -86
  218. package/dist/index204.js.map +1 -1
  219. package/dist/index205.js +4 -105
  220. package/dist/index205.js.map +1 -1
  221. package/dist/index206.js +4 -52
  222. package/dist/index206.js.map +1 -1
  223. package/dist/index207.js +12 -11
  224. package/dist/index207.js.map +1 -1
  225. package/dist/index208.js +9 -37
  226. package/dist/index208.js.map +1 -1
  227. package/dist/index209.js +13 -8
  228. package/dist/index209.js.map +1 -1
  229. package/dist/index210.js +13 -116
  230. package/dist/index210.js.map +1 -1
  231. package/dist/index211.js +4 -17
  232. package/dist/index211.js.map +1 -1
  233. package/dist/index212.js +5 -15
  234. package/dist/index212.js.map +1 -1
  235. package/dist/index213.js +6 -3
  236. package/dist/index213.js.map +1 -1
  237. package/dist/index214.js +5 -36
  238. package/dist/index214.js.map +1 -1
  239. package/dist/index215.js +53 -19
  240. package/dist/index215.js.map +1 -1
  241. package/dist/index216.js +8 -9
  242. package/dist/index216.js.map +1 -1
  243. package/dist/index217.js +4 -8
  244. package/dist/index217.js.map +1 -1
  245. package/dist/index218.js +4 -19
  246. package/dist/index218.js.map +1 -1
  247. package/dist/index219.js +8 -28
  248. package/dist/index219.js.map +1 -1
  249. package/dist/index220.js +4 -16
  250. package/dist/index220.js.map +1 -1
  251. package/dist/index221.js +4 -66
  252. package/dist/index221.js.map +1 -1
  253. package/dist/index222.js +3 -8
  254. package/dist/index222.js.map +1 -1
  255. package/dist/index223.js +10 -11
  256. package/dist/index223.js.map +1 -1
  257. package/dist/index224.js +9 -8
  258. package/dist/index224.js.map +1 -1
  259. package/dist/index225.js +9 -5
  260. package/dist/index225.js.map +1 -1
  261. package/dist/index226.js +10 -13
  262. package/dist/index226.js.map +1 -1
  263. package/dist/index227.js +10 -3
  264. package/dist/index227.js.map +1 -1
  265. package/dist/index228.js +9 -3
  266. package/dist/index228.js.map +1 -1
  267. package/dist/index229.js +6 -99
  268. package/dist/index229.js.map +1 -1
  269. package/dist/index230.js +5 -29
  270. package/dist/index230.js.map +1 -1
  271. package/dist/index231.js +4 -51
  272. package/dist/index231.js.map +1 -1
  273. package/dist/index232.js +5 -17
  274. package/dist/index232.js.map +1 -1
  275. package/dist/index233.js +6 -5
  276. package/dist/index233.js.map +1 -1
  277. package/dist/index234.js +5 -122
  278. package/dist/index234.js.map +1 -1
  279. package/dist/index235.js +8 -27
  280. package/dist/index235.js.map +1 -1
  281. package/dist/index236.js +19 -32
  282. package/dist/index236.js.map +1 -1
  283. package/dist/index237.js +15 -72
  284. package/dist/index237.js.map +1 -1
  285. package/dist/index238.js +7 -262
  286. package/dist/index238.js.map +1 -1
  287. package/dist/index239.js +9 -27
  288. package/dist/index239.js.map +1 -1
  289. package/dist/index240.js +10 -6
  290. package/dist/index240.js.map +1 -1
  291. package/dist/index241.js +19 -140
  292. package/dist/index241.js.map +1 -1
  293. package/dist/index242.js +10 -61
  294. package/dist/index242.js.map +1 -1
  295. package/dist/index243.js +9 -49
  296. package/dist/index243.js.map +1 -1
  297. package/dist/index244.js +10 -15
  298. package/dist/index244.js.map +1 -1
  299. package/dist/index245.js +4 -133
  300. package/dist/index245.js.map +1 -1
  301. package/dist/index246.js +5 -8
  302. package/dist/index246.js.map +1 -1
  303. package/dist/index247.js +17 -5
  304. package/dist/index247.js.map +1 -1
  305. package/dist/index248.js +10 -4
  306. package/dist/index248.js.map +1 -1
  307. package/dist/index249.js +18 -11
  308. package/dist/index249.js.map +1 -1
  309. package/dist/index250.js +13 -19
  310. package/dist/index250.js.map +1 -1
  311. package/dist/index251.js +13 -20
  312. package/dist/index251.js.map +1 -1
  313. package/dist/index252.js +29 -11
  314. package/dist/index252.js.map +1 -1
  315. package/dist/index253.js +11 -49
  316. package/dist/index253.js.map +1 -1
  317. package/dist/index254.js +24 -15
  318. package/dist/index254.js.map +1 -1
  319. package/dist/index255.js +5 -21
  320. package/dist/index255.js.map +1 -1
  321. package/dist/index256.js +20 -52
  322. package/dist/index256.js.map +1 -1
  323. package/dist/index257.js +65 -24
  324. package/dist/index257.js.map +1 -1
  325. package/dist/index258.js +6 -41
  326. package/dist/index258.js.map +1 -1
  327. package/dist/index259.js +11 -39
  328. package/dist/index259.js.map +1 -1
  329. package/dist/index260.js +50 -44
  330. package/dist/index260.js.map +1 -1
  331. package/dist/index261.js +4 -21
  332. package/dist/index261.js.map +1 -1
  333. package/dist/index262.js +26 -67
  334. package/dist/index262.js.map +1 -1
  335. package/dist/index263.js +15 -16
  336. package/dist/index263.js.map +1 -1
  337. package/dist/index264.js +5 -11
  338. package/dist/index264.js.map +1 -1
  339. package/dist/index265.js +20 -12
  340. package/dist/index265.js.map +1 -1
  341. package/dist/index266.js +51 -18
  342. package/dist/index266.js.map +1 -1
  343. package/dist/index267.js +24 -35
  344. package/dist/index267.js.map +1 -1
  345. package/dist/index268.js +35 -272
  346. package/dist/index268.js.map +1 -1
  347. package/dist/index269.js +36 -65
  348. package/dist/index269.js.map +1 -1
  349. package/dist/index270.js +45 -84
  350. package/dist/index270.js.map +1 -1
  351. package/dist/index271.js +20 -3
  352. package/dist/index271.js.map +1 -1
  353. package/dist/index272.js +66 -25
  354. package/dist/index272.js.map +1 -1
  355. package/dist/index273.js +17 -16
  356. package/dist/index273.js.map +1 -1
  357. package/dist/index274.js +12 -35
  358. package/dist/index274.js.map +1 -1
  359. package/dist/index275.js +27 -16
  360. package/dist/index275.js.map +1 -1
  361. package/dist/index276.js +13 -3
  362. package/dist/index276.js.map +1 -1
  363. package/dist/index277.js +15 -23
  364. package/dist/index277.js.map +1 -1
  365. package/dist/index278.js +37 -4
  366. package/dist/index278.js.map +1 -1
  367. package/dist/index279.js +258 -74
  368. package/dist/index279.js.map +1 -1
  369. package/dist/index280.js +269 -260
  370. package/dist/index280.js.map +1 -1
  371. package/dist/index281.js +68 -11
  372. package/dist/index281.js.map +1 -1
  373. package/dist/index282.js +100 -11
  374. package/dist/index282.js.map +1 -1
  375. package/dist/index283.js +82 -24
  376. package/dist/index283.js.map +1 -1
  377. package/dist/index284.js +3 -16
  378. package/dist/index284.js.map +1 -1
  379. package/dist/index285.js +26 -122
  380. package/dist/index285.js.map +1 -1
  381. package/dist/index286.js +16 -5
  382. package/dist/index286.js.map +1 -1
  383. package/dist/index287.js +34 -40
  384. package/dist/index287.js.map +1 -1
  385. package/dist/index288.js +15 -64
  386. package/dist/index288.js.map +1 -1
  387. package/dist/index289.js +4 -14
  388. package/dist/index289.js.map +1 -1
  389. package/dist/index290.js +26 -7
  390. package/dist/index290.js.map +1 -1
  391. package/dist/index291.js +28 -5
  392. package/dist/index291.js.map +1 -1
  393. package/dist/index292.js +4 -4
  394. package/dist/index292.js.map +1 -1
  395. package/dist/index293.js +78 -10
  396. package/dist/index293.js.map +1 -1
  397. package/dist/index294.js +269 -7
  398. package/dist/index294.js.map +1 -1
  399. package/dist/index295.js +11 -399
  400. package/dist/index295.js.map +1 -1
  401. package/dist/index296.js +10 -52
  402. package/dist/index296.js.map +1 -1
  403. package/dist/index297.js +25 -11
  404. package/dist/index297.js.map +1 -1
  405. package/dist/index298.js +16 -11
  406. package/dist/index298.js.map +1 -1
  407. package/dist/index299.js +124 -57
  408. package/dist/index299.js.map +1 -1
  409. package/dist/index300.js +5 -8
  410. package/dist/index300.js.map +1 -1
  411. package/dist/index301.js +38 -64
  412. package/dist/index301.js.map +1 -1
  413. package/dist/index302.js +63 -17
  414. package/dist/index302.js.map +1 -1
  415. package/dist/index303.js +13 -16
  416. package/dist/index303.js.map +1 -1
  417. package/dist/index304.js +7 -5
  418. package/dist/index304.js.map +1 -1
  419. package/dist/index305.js +5 -5
  420. package/dist/index305.js.map +1 -1
  421. package/dist/index306.js +3 -6
  422. package/dist/index306.js.map +1 -1
  423. package/dist/index307.js +10 -4
  424. package/dist/index307.js.map +1 -1
  425. package/dist/index308.js +7 -6
  426. package/dist/index308.js.map +1 -1
  427. package/dist/index309.js +132 -15
  428. package/dist/index309.js.map +1 -1
  429. package/dist/index31.js +24 -24
  430. package/dist/index310.js +399 -4
  431. package/dist/index310.js.map +1 -1
  432. package/dist/index311.js +52 -4
  433. package/dist/index311.js.map +1 -1
  434. package/dist/index312.js +11 -12
  435. package/dist/index312.js.map +1 -1
  436. package/dist/index313.js +11 -9
  437. package/dist/index313.js.map +1 -1
  438. package/dist/index314.js +13 -13
  439. package/dist/index314.js.map +1 -1
  440. package/dist/index315.js +154 -13
  441. package/dist/index315.js.map +1 -1
  442. package/dist/index316.js +30 -4
  443. package/dist/index316.js.map +1 -1
  444. package/dist/index317.js +9 -5
  445. package/dist/index317.js.map +1 -1
  446. package/dist/index318.js +48 -6
  447. package/dist/index318.js.map +1 -1
  448. package/dist/index319.js +11 -5
  449. package/dist/index319.js.map +1 -1
  450. package/dist/index32.js +3 -3
  451. package/dist/index320.js +43 -53
  452. package/dist/index320.js.map +1 -1
  453. package/dist/index321.js +95 -8
  454. package/dist/index321.js.map +1 -1
  455. package/dist/index322.js +86 -4
  456. package/dist/index322.js.map +1 -1
  457. package/dist/index323.js +105 -4
  458. package/dist/index323.js.map +1 -1
  459. package/dist/index324.js +52 -8
  460. package/dist/index324.js.map +1 -1
  461. package/dist/index325.js +11 -4
  462. package/dist/index325.js.map +1 -1
  463. package/dist/index326.js +37 -4
  464. package/dist/index326.js.map +1 -1
  465. package/dist/index327.js +8 -3
  466. package/dist/index327.js.map +1 -1
  467. package/dist/index328.js +116 -10
  468. package/dist/index328.js.map +1 -1
  469. package/dist/index329.js +17 -9
  470. package/dist/index329.js.map +1 -1
  471. package/dist/index330.js +15 -9
  472. package/dist/index330.js.map +1 -1
  473. package/dist/index331.js +3 -10
  474. package/dist/index331.js.map +1 -1
  475. package/dist/index332.js +36 -10
  476. package/dist/index332.js.map +1 -1
  477. package/dist/index333.js +20 -9
  478. package/dist/index333.js.map +1 -1
  479. package/dist/index334.js +9 -6
  480. package/dist/index334.js.map +1 -1
  481. package/dist/index335.js +8 -5
  482. package/dist/index335.js.map +1 -1
  483. package/dist/index336.js +8 -4
  484. package/dist/index336.js.map +1 -1
  485. package/dist/index337.js +11 -5
  486. package/dist/index337.js.map +1 -1
  487. package/dist/index338.js +8 -6
  488. package/dist/index338.js.map +1 -1
  489. package/dist/index339.js +13 -5
  490. package/dist/index339.js.map +1 -1
  491. package/dist/index34.js +4 -4
  492. package/dist/index340.js +3 -16
  493. package/dist/index340.js.map +1 -1
  494. package/dist/index341.js +3 -7
  495. package/dist/index341.js.map +1 -1
  496. package/dist/index342.js +18 -9
  497. package/dist/index342.js.map +1 -1
  498. package/dist/index343.js +27 -9
  499. package/dist/index343.js.map +1 -1
  500. package/dist/index344.js +15 -20
  501. package/dist/index344.js.map +1 -1
  502. package/dist/index345.js +17 -10
  503. package/dist/index345.js.map +1 -1
  504. package/dist/index346.js +51 -9
  505. package/dist/index346.js.map +1 -1
  506. package/dist/index347.js +5 -9
  507. package/dist/index347.js.map +1 -1
  508. package/dist/index348.js +122 -4
  509. package/dist/index348.js.map +1 -1
  510. package/dist/index349.js +32 -5
  511. package/dist/index349.js.map +1 -1
  512. package/dist/index35.js +5 -5
  513. package/dist/index350.js +73 -16
  514. package/dist/index350.js.map +1 -1
  515. package/dist/index351.js +142 -9
  516. package/dist/index351.js.map +1 -1
  517. package/dist/index352.js +61 -18
  518. package/dist/index352.js.map +1 -1
  519. package/dist/index353.js +47 -13
  520. package/dist/index353.js.map +1 -1
  521. package/dist/index354.js +15 -13
  522. package/dist/index354.js.map +1 -1
  523. package/dist/index355.js +7 -28
  524. package/dist/index355.js.map +1 -1
  525. package/dist/index356.js +5 -13
  526. package/dist/index356.js.map +1 -1
  527. package/dist/index357.js +11 -25
  528. package/dist/index357.js.map +1 -1
  529. package/dist/index358.js +21 -5
  530. package/dist/index358.js.map +1 -1
  531. package/dist/index359.js +4 -20
  532. package/dist/index359.js.map +1 -1
  533. package/dist/index36.js +10 -10
  534. package/dist/index360.js +18 -9
  535. package/dist/index360.js.map +1 -1
  536. package/dist/index361.js +13 -26
  537. package/dist/index361.js.map +1 -1
  538. package/dist/index362.js +4 -27
  539. package/dist/index362.js.map +1 -1
  540. package/dist/index363.js +10 -136
  541. package/dist/index363.js.map +1 -1
  542. package/dist/index364.js +16 -12
  543. package/dist/index364.js.map +1 -1
  544. package/dist/index365.js +5 -226
  545. package/dist/index365.js.map +1 -1
  546. package/dist/index366.js +20 -3
  547. package/dist/index366.js.map +1 -1
  548. package/dist/index367.js +45 -20
  549. package/dist/index367.js.map +1 -1
  550. package/dist/index368.js +17 -77
  551. package/dist/index368.js.map +1 -1
  552. package/dist/index369.js +4 -11
  553. package/dist/index369.js.map +1 -1
  554. package/dist/index37.js +3 -3
  555. package/dist/index370.js +200 -3
  556. package/dist/index370.js.map +1 -1
  557. package/dist/index371.js +5 -5
  558. package/dist/index372.js +19 -199
  559. package/dist/index372.js.map +1 -1
  560. package/dist/index373.js +6 -69
  561. package/dist/index373.js.map +1 -1
  562. package/dist/index374.js +26 -9
  563. package/dist/index374.js.map +1 -1
  564. package/dist/index375.js +26 -16
  565. package/dist/index375.js.map +1 -1
  566. package/dist/index376.js +136 -14
  567. package/dist/index376.js.map +1 -1
  568. package/dist/index377.js +13 -4
  569. package/dist/index377.js.map +1 -1
  570. package/dist/index378.js +225 -10
  571. package/dist/index378.js.map +1 -1
  572. package/dist/index379.js +3 -5
  573. package/dist/index379.js.map +1 -1
  574. package/dist/index38.js +4 -4
  575. package/dist/index380.js +19 -20
  576. package/dist/index380.js.map +1 -1
  577. package/dist/index381.js +77 -44
  578. package/dist/index381.js.map +1 -1
  579. package/dist/index382.js +11 -17
  580. package/dist/index382.js.map +1 -1
  581. package/dist/index383.js +4 -5
  582. package/dist/index383.js.map +1 -1
  583. package/dist/index384.js +71 -4
  584. package/dist/index384.js.map +1 -1
  585. package/dist/index385.js +9 -18
  586. package/dist/index385.js.map +1 -1
  587. package/dist/index386.js +15 -12
  588. package/dist/index386.js.map +1 -1
  589. package/dist/index387.js +4 -14
  590. package/dist/index387.js.map +1 -1
  591. package/dist/index388.js +4 -491
  592. package/dist/index388.js.map +1 -1
  593. package/dist/index389.js +4 -3
  594. package/dist/index389.js.map +1 -1
  595. package/dist/index39.js +5 -5
  596. package/dist/index390.js +16 -3
  597. package/dist/index390.js.map +1 -1
  598. package/dist/index391.js +8 -4
  599. package/dist/index391.js.map +1 -1
  600. package/dist/index392.js +5 -4
  601. package/dist/index392.js.map +1 -1
  602. package/dist/index393.js +5 -4
  603. package/dist/index393.js.map +1 -1
  604. package/dist/index394.js +545 -15
  605. package/dist/index394.js.map +1 -1
  606. package/dist/index395.js +47 -9
  607. package/dist/index395.js.map +1 -1
  608. package/dist/index396.js +17 -5
  609. package/dist/index396.js.map +1 -1
  610. package/dist/index397.js +5 -4
  611. package/dist/index397.js.map +1 -1
  612. package/dist/index398.js +7 -545
  613. package/dist/index398.js.map +1 -1
  614. package/dist/index399.js +7 -47
  615. package/dist/index399.js.map +1 -1
  616. package/dist/index40.js +3 -3
  617. package/dist/index400.js +7 -17
  618. package/dist/index400.js.map +1 -1
  619. package/dist/index401.js +11 -5
  620. package/dist/index401.js.map +1 -1
  621. package/dist/index402.js +8 -7
  622. package/dist/index402.js.map +1 -1
  623. package/dist/index403.js +12 -6
  624. package/dist/index403.js.map +1 -1
  625. package/dist/index404.js +3 -8
  626. package/dist/index404.js.map +1 -1
  627. package/dist/index405.js +3 -12
  628. package/dist/index405.js.map +1 -1
  629. package/dist/index406.js +14 -8
  630. package/dist/index406.js.map +1 -1
  631. package/dist/index407.js +491 -12
  632. package/dist/index407.js.map +1 -1
  633. package/dist/index408.js +4 -7
  634. package/dist/index408.js.map +1 -1
  635. package/dist/index409.js +56 -2
  636. package/dist/index409.js.map +1 -1
  637. package/dist/index41.js +10 -10
  638. package/dist/index410.js +67 -43
  639. package/dist/index410.js.map +1 -1
  640. package/dist/index411.js +31 -56
  641. package/dist/index411.js.map +1 -1
  642. package/dist/index412.js +9 -8
  643. package/dist/index412.js.map +1 -1
  644. package/dist/index413.js +153 -2
  645. package/dist/index413.js.map +1 -1
  646. package/dist/index414.js +107 -54
  647. package/dist/index414.js.map +1 -1
  648. package/dist/index415.js +7 -55
  649. package/dist/index415.js.map +1 -1
  650. package/dist/index416.js +2 -5
  651. package/dist/index416.js.map +1 -1
  652. package/dist/index417.js +42 -54
  653. package/dist/index417.js.map +1 -1
  654. package/dist/index418.js +56 -68
  655. package/dist/index418.js.map +1 -1
  656. package/dist/index419.js +8 -31
  657. package/dist/index419.js.map +1 -1
  658. package/dist/index420.js +2 -9
  659. package/dist/index420.js.map +1 -1
  660. package/dist/index421.js +54 -152
  661. package/dist/index421.js.map +1 -1
  662. package/dist/index422.js +56 -108
  663. package/dist/index422.js.map +1 -1
  664. package/dist/index423.js +16 -2
  665. package/dist/index423.js.map +1 -1
  666. package/dist/index424.js +29 -2
  667. package/dist/index424.js.map +1 -1
  668. package/dist/index425.js +13 -2
  669. package/dist/index425.js.map +1 -1
  670. package/dist/index426.js +7 -2
  671. package/dist/index426.js.map +1 -1
  672. package/dist/index427.js +2 -16
  673. package/dist/index427.js.map +1 -1
  674. package/dist/index428.js +2 -29
  675. package/dist/index428.js.map +1 -1
  676. package/dist/index429.js +2 -13
  677. package/dist/index429.js.map +1 -1
  678. package/dist/index430.js +2 -7
  679. package/dist/index430.js.map +1 -1
  680. package/dist/index44.js +23 -22
  681. package/dist/index44.js.map +1 -1
  682. package/dist/index45.js +22 -196
  683. package/dist/index45.js.map +1 -1
  684. package/dist/index48.js +2 -2
  685. package/dist/index49.js +34 -34
  686. package/dist/index50.js +29 -29
  687. package/dist/index51.js +2 -2
  688. package/dist/index52.js +12 -12
  689. package/dist/index53.js +4 -4
  690. package/dist/index54.js +1 -1
  691. package/dist/index55.js +22 -22
  692. package/dist/index56.js +5 -5
  693. package/dist/index57.js +5 -5
  694. package/dist/index58.js +8 -8
  695. package/dist/index59.js +5 -5
  696. package/dist/index60.js +17 -17
  697. package/dist/index61.js +5 -5
  698. package/dist/index62.js +3 -3
  699. package/dist/index66.js +1 -1
  700. package/dist/index67.js +1 -1
  701. package/dist/index70.js +1 -1
  702. package/dist/index71.js +1 -1
  703. package/dist/index72.js +2 -6
  704. package/dist/index72.js.map +1 -1
  705. package/dist/index73.js +2 -8
  706. package/dist/index73.js.map +1 -1
  707. package/dist/index74.js +2 -6
  708. package/dist/index74.js.map +1 -1
  709. package/dist/index75.js +2 -2
  710. package/dist/index76.js +6 -2
  711. package/dist/index76.js.map +1 -1
  712. package/dist/index77.js +8 -2
  713. package/dist/index77.js.map +1 -1
  714. package/dist/index78.js +6 -2
  715. package/dist/index78.js.map +1 -1
  716. package/dist/index79.js +52 -6
  717. package/dist/index79.js.map +1 -1
  718. package/dist/index80.js +4 -68
  719. package/dist/index80.js.map +1 -1
  720. package/dist/index81.js +5 -2
  721. package/dist/index81.js.map +1 -1
  722. package/dist/index82.js +15 -363
  723. package/dist/index82.js.map +1 -1
  724. package/dist/index83.js +5 -261
  725. package/dist/index83.js.map +1 -1
  726. package/dist/index84.js +7 -60
  727. package/dist/index84.js.map +1 -1
  728. package/dist/index85.js +16 -46
  729. package/dist/index85.js.map +1 -1
  730. package/dist/index86.js +4 -169
  731. package/dist/index86.js.map +1 -1
  732. package/dist/index87.js +4 -109
  733. package/dist/index87.js.map +1 -1
  734. package/dist/index88.js +5 -24
  735. package/dist/index88.js.map +1 -1
  736. package/dist/index89.js +6 -8
  737. package/dist/index89.js.map +1 -1
  738. package/dist/index90.js +4 -4
  739. package/dist/index90.js.map +1 -1
  740. package/dist/index91.js +4 -5
  741. package/dist/index91.js.map +1 -1
  742. package/dist/index92.js +6 -4
  743. package/dist/index92.js.map +1 -1
  744. package/dist/index93.js +24 -466
  745. package/dist/index93.js.map +1 -1
  746. package/dist/index94.js +6 -185
  747. package/dist/index94.js.map +1 -1
  748. package/dist/index95.js +4 -107
  749. package/dist/index95.js.map +1 -1
  750. package/dist/index96.js +6 -262
  751. package/dist/index96.js.map +1 -1
  752. package/dist/index97.js +5 -9
  753. package/dist/index97.js.map +1 -1
  754. package/dist/index98.js +4 -42
  755. package/dist/index98.js.map +1 -1
  756. package/dist/index99.js +5 -4
  757. package/dist/index99.js.map +1 -1
  758. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index280.js","sources":["../../../node_modules/@base-ui/react/esm/utils/useAnchorPositioning.js"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getSide, getAlignment, getSideAxis } from '@floating-ui/utils';\nimport { ownerDocument, ownerWindow } from '@base-ui/utils/owner';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useValueAsRef } from '@base-ui/utils/useValueAsRef';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { autoUpdate, flip, limitShift, offset, shift, useFloating, size } from \"../floating-ui-react/index.js\";\nimport { useDirection } from \"../internals/direction-context/DirectionContext.js\";\nimport { arrow } from \"../floating-ui-react/middleware/arrow.js\";\nimport { hide } from \"./hideMiddleware.js\";\nimport { DEFAULT_SIDES } from \"./adaptiveOriginMiddleware.js\";\nfunction getLogicalSide(sideParam, renderedSide, isRtl) {\n const isLogicalSideParam = sideParam === 'inline-start' || sideParam === 'inline-end';\n const logicalRight = isRtl ? 'inline-start' : 'inline-end';\n const logicalLeft = isRtl ? 'inline-end' : 'inline-start';\n return {\n top: 'top',\n right: isLogicalSideParam ? logicalRight : 'right',\n bottom: 'bottom',\n left: isLogicalSideParam ? logicalLeft : 'left'\n }[renderedSide];\n}\nfunction getOffsetData(state, sideParam, isRtl) {\n const {\n rects,\n placement\n } = state;\n const data = {\n side: getLogicalSide(sideParam, getSide(placement), isRtl),\n align: getAlignment(placement) || 'center',\n anchor: {\n width: rects.reference.width,\n height: rects.reference.height\n },\n positioner: {\n width: rects.floating.width,\n height: rects.floating.height\n }\n };\n return data;\n}\n/**\n * Provides standardized anchor positioning behavior for floating elements. Wraps Floating UI's\n * `useFloating` hook.\n */\nexport function useAnchorPositioning(params) {\n const {\n // Public parameters\n anchor,\n positionMethod = 'absolute',\n side: sideParam = 'bottom',\n sideOffset = 0,\n align = 'center',\n alignOffset = 0,\n collisionBoundary,\n collisionPadding: collisionPaddingParam = 5,\n sticky = false,\n arrowPadding = 5,\n disableAnchorTracking = false,\n // Private parameters\n keepMounted = false,\n floatingRootContext,\n mounted,\n collisionAvoidance,\n shiftCrossAxis = false,\n nodeId,\n adaptiveOrigin,\n lazyFlip = false,\n externalTree\n } = params;\n const [mountSide, setMountSide] = React.useState(null);\n if (!mounted && mountSide !== null) {\n setMountSide(null);\n }\n const collisionAvoidanceSide = collisionAvoidance.side || 'flip';\n const collisionAvoidanceAlign = collisionAvoidance.align || 'flip';\n const collisionAvoidanceFallbackAxisSide = collisionAvoidance.fallbackAxisSide || 'end';\n const anchorFn = typeof anchor === 'function' ? anchor : undefined;\n const anchorFnCallback = useStableCallback(anchorFn);\n const anchorDep = anchorFn ? anchorFnCallback : anchor;\n const anchorValueRef = useValueAsRef(anchor);\n const mountedRef = useValueAsRef(mounted);\n const direction = useDirection();\n const isRtl = direction === 'rtl';\n const side = mountSide || {\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'inline-end': isRtl ? 'left' : 'right',\n 'inline-start': isRtl ? 'right' : 'left'\n }[sideParam];\n const placement = align === 'center' ? side : `${side}-${align}`;\n let collisionPadding = collisionPaddingParam;\n\n // Create a bias to the preferred side.\n // On iOS, when the mobile software keyboard opens, the input is exactly centered\n // in the viewport, but this can cause it to flip to the top undesirably.\n const bias = 1;\n const biasTop = sideParam === 'bottom' ? bias : 0;\n const biasBottom = sideParam === 'top' ? bias : 0;\n const biasLeft = sideParam === 'right' ? bias : 0;\n const biasRight = sideParam === 'left' ? bias : 0;\n if (typeof collisionPadding === 'number') {\n collisionPadding = {\n top: collisionPadding + biasTop,\n right: collisionPadding + biasRight,\n bottom: collisionPadding + biasBottom,\n left: collisionPadding + biasLeft\n };\n } else if (collisionPadding) {\n collisionPadding = {\n top: (collisionPadding.top || 0) + biasTop,\n right: (collisionPadding.right || 0) + biasRight,\n bottom: (collisionPadding.bottom || 0) + biasBottom,\n left: (collisionPadding.left || 0) + biasLeft\n };\n }\n const commonCollisionProps = {\n boundary: collisionBoundary === 'clipping-ancestors' ? 'clippingAncestors' : collisionBoundary,\n padding: collisionPadding\n };\n\n // Using a ref assumes that the arrow element is always present in the DOM for the lifetime of the\n // popup. If this assumption ends up being false, we can switch to state to manage the arrow's\n // presence.\n const arrowRef = React.useRef(null);\n\n // Keep these reactive if they're not functions\n const sideOffsetRef = useValueAsRef(sideOffset);\n const alignOffsetRef = useValueAsRef(alignOffset);\n const sideOffsetDep = typeof sideOffset !== 'function' ? sideOffset : 0;\n const alignOffsetDep = typeof alignOffset !== 'function' ? alignOffset : 0;\n const middleware = [offset(state => {\n const data = getOffsetData(state, sideParam, isRtl);\n const sideAxis = typeof sideOffsetRef.current === 'function' ? sideOffsetRef.current(data) : sideOffsetRef.current;\n const alignAxis = typeof alignOffsetRef.current === 'function' ? alignOffsetRef.current(data) : alignOffsetRef.current;\n return {\n mainAxis: sideAxis,\n crossAxis: alignAxis,\n alignmentAxis: alignAxis\n };\n }, [sideOffsetDep, alignOffsetDep, isRtl, sideParam])];\n const shiftDisabled = collisionAvoidanceAlign === 'none' && collisionAvoidanceSide !== 'shift';\n const crossAxisShiftEnabled = !shiftDisabled && (sticky || shiftCrossAxis || collisionAvoidanceSide === 'shift');\n const flipMiddleware = collisionAvoidanceSide === 'none' ? null : flip({\n ...commonCollisionProps,\n // Ensure the popup flips if it's been limited by its --available-height and it resizes.\n // Since the size() padding is smaller than the flip() padding, flip() will take precedence.\n padding: {\n top: collisionPadding.top + bias,\n right: collisionPadding.right + bias,\n bottom: collisionPadding.bottom + bias,\n left: collisionPadding.left + bias\n },\n mainAxis: !shiftCrossAxis && collisionAvoidanceSide === 'flip',\n crossAxis: collisionAvoidanceAlign === 'flip' ? 'alignment' : false,\n fallbackAxisSideDirection: collisionAvoidanceFallbackAxisSide\n });\n const shiftMiddleware = shiftDisabled ? null : shift(data => {\n const html = ownerDocument(data.elements.floating).documentElement;\n return {\n ...commonCollisionProps,\n // Use the Layout Viewport to avoid shifting around when pinch-zooming\n // for context menus.\n rootBoundary: shiftCrossAxis ? {\n x: 0,\n y: 0,\n width: html.clientWidth,\n height: html.clientHeight\n } : undefined,\n mainAxis: collisionAvoidanceAlign !== 'none',\n crossAxis: crossAxisShiftEnabled,\n limiter: sticky || shiftCrossAxis ? undefined : limitShift(limitData => {\n if (!arrowRef.current) {\n return {};\n }\n const {\n width,\n height\n } = arrowRef.current.getBoundingClientRect();\n const sideAxis = getSideAxis(getSide(limitData.placement));\n const arrowSize = sideAxis === 'y' ? width : height;\n const offsetAmount = sideAxis === 'y' ? collisionPadding.left + collisionPadding.right : collisionPadding.top + collisionPadding.bottom;\n return {\n offset: arrowSize / 2 + offsetAmount / 2\n };\n })\n };\n }, [commonCollisionProps, sticky, shiftCrossAxis, collisionPadding, collisionAvoidanceAlign]);\n\n // https://floating-ui.com/docs/flip#combining-with-shift\n if (collisionAvoidanceSide === 'shift' || collisionAvoidanceAlign === 'shift' || align === 'center') {\n middleware.push(shiftMiddleware, flipMiddleware);\n } else {\n middleware.push(flipMiddleware, shiftMiddleware);\n }\n middleware.push(size({\n ...commonCollisionProps,\n apply({\n elements: {\n floating\n },\n availableWidth,\n availableHeight,\n rects\n }) {\n if (!mountedRef.current) {\n return;\n }\n const floatingStyle = floating.style;\n floatingStyle.setProperty('--available-width', `${availableWidth}px`);\n floatingStyle.setProperty('--available-height', `${availableHeight}px`);\n\n // Snap anchor dimensions to device pixels to ensure the popup's visual width matches the anchor's one.\n const dpr = ownerWindow(floating).devicePixelRatio || 1;\n const {\n x,\n y,\n width,\n height\n } = rects.reference;\n const anchorWidth = (Math.round((x + width) * dpr) - Math.round(x * dpr)) / dpr;\n const anchorHeight = (Math.round((y + height) * dpr) - Math.round(y * dpr)) / dpr;\n floatingStyle.setProperty('--anchor-width', `${anchorWidth}px`);\n floatingStyle.setProperty('--anchor-height', `${anchorHeight}px`);\n }\n }), arrow(() => ({\n // `transform-origin` calculations rely on an element existing. If the arrow hasn't been set,\n // we'll create a fake element.\n element: arrowRef.current || ownerDocument(arrowRef.current).createElement('div'),\n padding: arrowPadding,\n offsetParent: 'floating'\n }), [arrowPadding]), {\n name: 'transformOrigin',\n fn(state) {\n const {\n elements,\n middlewareData,\n placement: renderedPlacement,\n rects,\n y\n } = state;\n const currentRenderedSide = getSide(renderedPlacement);\n const currentRenderedAxis = getSideAxis(currentRenderedSide);\n const arrowEl = arrowRef.current;\n const arrowX = middlewareData.arrow?.x || 0;\n const arrowY = middlewareData.arrow?.y || 0;\n const arrowWidth = arrowEl?.clientWidth || 0;\n const arrowHeight = arrowEl?.clientHeight || 0;\n const transformX = arrowX + arrowWidth / 2;\n const transformY = arrowY + arrowHeight / 2;\n const shiftY = Math.abs(middlewareData.shift?.y || 0);\n const halfAnchorHeight = rects.reference.height / 2;\n const sideOffsetValue = typeof sideOffset === 'function' ? sideOffset(getOffsetData(state, sideParam, isRtl)) : sideOffset;\n const isOverlappingAnchor = shiftY > sideOffsetValue;\n const adjacentTransformOrigin = {\n top: `${transformX}px calc(100% + ${sideOffsetValue}px)`,\n bottom: `${transformX}px ${-sideOffsetValue}px`,\n left: `calc(100% + ${sideOffsetValue}px) ${transformY}px`,\n right: `${-sideOffsetValue}px ${transformY}px`\n }[currentRenderedSide];\n const overlapTransformOrigin = `${transformX}px ${rects.reference.y + halfAnchorHeight - y}px`;\n elements.floating.style.setProperty('--transform-origin', crossAxisShiftEnabled && currentRenderedAxis === 'y' && isOverlappingAnchor ? overlapTransformOrigin : adjacentTransformOrigin);\n return {};\n }\n }, hide, adaptiveOrigin);\n useIsoLayoutEffect(() => {\n // Ensure positioning doesn't run initially for `keepMounted` elements that\n // aren't initially open.\n if (!mounted && floatingRootContext) {\n floatingRootContext.update({\n referenceElement: null,\n floatingElement: null,\n domReferenceElement: null,\n positionReference: null\n });\n }\n }, [mounted, floatingRootContext]);\n const autoUpdateOptions = React.useMemo(() => ({\n elementResize: !disableAnchorTracking && typeof ResizeObserver !== 'undefined',\n layoutShift: !disableAnchorTracking && typeof IntersectionObserver !== 'undefined'\n }), [disableAnchorTracking]);\n const {\n refs,\n elements,\n x,\n y,\n middlewareData,\n update,\n placement: renderedPlacement,\n context,\n isPositioned,\n floatingStyles: originalFloatingStyles\n } = useFloating({\n rootContext: floatingRootContext,\n open: keepMounted ? mounted : undefined,\n placement,\n middleware,\n strategy: positionMethod,\n whileElementsMounted: keepMounted ? undefined : (...args) => autoUpdate(...args, autoUpdateOptions),\n nodeId,\n externalTree\n });\n const {\n sideX,\n sideY\n } = middlewareData.adaptiveOrigin || DEFAULT_SIDES;\n\n // Default to `fixed` when not positioned to prevent `autoFocus` scroll jumps.\n // This ensures the popup is inside the viewport initially before it gets positioned.\n const resolvedPosition = isPositioned ? positionMethod : 'fixed';\n const floatingStyles = React.useMemo(() => {\n const base = adaptiveOrigin ? {\n position: resolvedPosition,\n [sideX]: x,\n [sideY]: y\n } : {\n position: resolvedPosition,\n ...originalFloatingStyles\n };\n if (!isPositioned) {\n base.opacity = 0;\n }\n return base;\n }, [adaptiveOrigin, resolvedPosition, sideX, x, sideY, y, originalFloatingStyles, isPositioned]);\n const registeredPositionReferenceRef = React.useRef(null);\n useIsoLayoutEffect(() => {\n if (!mounted) {\n return;\n }\n const anchorValue = anchorValueRef.current;\n const resolvedAnchor = typeof anchorValue === 'function' ? anchorValue() : anchorValue;\n const unwrappedElement = (isRef(resolvedAnchor) ? resolvedAnchor.current : resolvedAnchor) || null;\n const finalAnchor = unwrappedElement || null;\n if (finalAnchor !== registeredPositionReferenceRef.current) {\n refs.setPositionReference(finalAnchor);\n registeredPositionReferenceRef.current = finalAnchor;\n }\n }, [mounted, refs, anchorDep, anchorValueRef]);\n React.useEffect(() => {\n if (!mounted) {\n return;\n }\n const anchorValue = anchorValueRef.current;\n\n // Refs from parent components are set after useLayoutEffect runs and are available in useEffect.\n // Therefore, if the anchor is a ref, we need to update the position reference in useEffect.\n if (typeof anchorValue === 'function') {\n return;\n }\n if (isRef(anchorValue) && anchorValue.current !== registeredPositionReferenceRef.current) {\n refs.setPositionReference(anchorValue.current);\n registeredPositionReferenceRef.current = anchorValue.current;\n }\n }, [mounted, refs, anchorDep, anchorValueRef]);\n React.useEffect(() => {\n if (keepMounted && mounted && elements.domReference && elements.floating) {\n return autoUpdate(elements.domReference, elements.floating, update, autoUpdateOptions);\n }\n return undefined;\n }, [keepMounted, mounted, elements, update, autoUpdateOptions]);\n const renderedSide = getSide(renderedPlacement);\n const logicalRenderedSide = getLogicalSide(sideParam, renderedSide, isRtl);\n const renderedAlign = getAlignment(renderedPlacement) || 'center';\n const anchorHidden = Boolean(middlewareData.hide?.referenceHidden);\n\n /**\n * Locks the flip (makes it \"sticky\") so it doesn't prefer a given placement\n * and flips back lazily, not eagerly. Ideal for filtered lists that change\n * the size of the popup dynamically to avoid unwanted flipping when typing.\n */\n useIsoLayoutEffect(() => {\n if (lazyFlip && mounted && isPositioned) {\n setMountSide(renderedSide);\n }\n }, [lazyFlip, mounted, isPositioned, renderedSide]);\n const arrowStyles = React.useMemo(() => ({\n position: 'absolute',\n top: middlewareData.arrow?.y,\n left: middlewareData.arrow?.x\n }), [middlewareData.arrow]);\n const arrowUncentered = middlewareData.arrow?.centerOffset !== 0;\n return React.useMemo(() => ({\n positionerStyles: floatingStyles,\n arrowStyles,\n arrowRef,\n arrowUncentered,\n side: logicalRenderedSide,\n align: renderedAlign,\n physicalSide: renderedSide,\n anchorHidden,\n refs,\n context,\n isPositioned,\n update\n }), [floatingStyles, arrowStyles, arrowRef, arrowUncentered, logicalRenderedSide, renderedAlign, renderedSide, anchorHidden, refs, context, isPositioned, update]);\n}\nfunction isRef(param) {\n return param != null && 'current' in param;\n}"],"names":["getLogicalSide","sideParam","renderedSide","isRtl","isLogicalSideParam","getOffsetData","state","rects","placement","getSide","getAlignment","useAnchorPositioning","params","anchor","positionMethod","sideOffset","align","alignOffset","collisionBoundary","collisionPaddingParam","sticky","arrowPadding","disableAnchorTracking","keepMounted","floatingRootContext","mounted","collisionAvoidance","shiftCrossAxis","nodeId","adaptiveOrigin","lazyFlip","externalTree","mountSide","setMountSide","React","collisionAvoidanceSide","collisionAvoidanceAlign","collisionAvoidanceFallbackAxisSide","anchorFn","anchorFnCallback","useStableCallback","anchorDep","anchorValueRef","useValueAsRef","mountedRef","useDirection","side","collisionPadding","bias","biasTop","biasBottom","biasLeft","biasRight","commonCollisionProps","arrowRef","sideOffsetRef","alignOffsetRef","middleware","offset","data","sideAxis","alignAxis","shiftDisabled","crossAxisShiftEnabled","flipMiddleware","flip","shiftMiddleware","shift","html","ownerDocument","limitShift","limitData","width","height","getSideAxis","arrowSize","offsetAmount","size","floating","availableWidth","availableHeight","floatingStyle","dpr","ownerWindow","x","y","anchorWidth","anchorHeight","arrow","elements","middlewareData","renderedPlacement","currentRenderedSide","currentRenderedAxis","arrowEl","arrowX","arrowY","arrowWidth","arrowHeight","transformX","transformY","shiftY","halfAnchorHeight","sideOffsetValue","isOverlappingAnchor","adjacentTransformOrigin","overlapTransformOrigin","hide","useIsoLayoutEffect","autoUpdateOptions","refs","update","context","isPositioned","originalFloatingStyles","useFloating","args","autoUpdate","sideX","sideY","DEFAULT_SIDES","resolvedPosition","floatingStyles","base","registeredPositionReferenceRef","anchorValue","resolvedAnchor","finalAnchor","isRef","logicalRenderedSide","renderedAlign","anchorHidden","arrowStyles","arrowUncentered","param"],"mappings":"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","x_google_ignoreList":[0]}
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]}
package/dist/index281.js CHANGED
@@ -1,15 +1,72 @@
1
- import n from "./index120.js";
2
- import * as t from "react";
3
- const o = /* @__PURE__ */ t.createContext(void 0);
4
- process.env.NODE_ENV !== "production" && (o.displayName = "SelectPositionerContext");
5
- function i() {
6
- const e = t.useContext(o);
7
- if (!e)
8
- throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: SelectPositionerContext is missing. SelectPositioner parts must be placed within <Select.Positioner>." : n(59));
9
- return e;
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;
39
+ }
40
+ return -1;
41
+ }
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]);
10
68
  }
11
69
  export {
12
- o as SelectPositionerContext,
13
- i as useSelectPositionerContext
70
+ $ as useTypeahead
14
71
  };
15
72
  //# sourceMappingURL=index281.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index281.js","sources":["../../../node_modules/@base-ui/react/esm/select/positioner/SelectPositionerContext.js"],"sourcesContent":["'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const SelectPositionerContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") SelectPositionerContext.displayName = \"SelectPositionerContext\";\nexport function useSelectPositionerContext() {\n const context = React.useContext(SelectPositionerContext);\n if (!context) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: SelectPositionerContext is missing. SelectPositioner parts must be placed within <Select.Positioner>.' : _formatErrorMessage(59));\n }\n return context;\n}"],"names":["SelectPositionerContext","React","useSelectPositionerContext","context","_formatErrorMessage"],"mappings":";;AAIY,MAACA,IAAuC,gBAAAC,EAAM,cAAc,MAAS;AAC7E,QAAQ,IAAI,aAAa,iBAAcD,EAAwB,cAAc;AAC1E,SAASE,IAA6B;AAC3C,QAAMC,IAAUF,EAAM,WAAWD,CAAuB;AACxD,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,QAAQ,IAAI,aAAa,eAAe,mHAAmHC,EAAoB,EAAE,CAAC;AAEpM,SAAOD;AACT;","x_google_ignoreList":[0]}
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]}
package/dist/index282.js CHANGED
@@ -1,14 +1,103 @@
1
- function e(o, t) {
2
- o && Object.assign(o.style, t);
3
- }
4
- const i = {
5
- position: "relative",
6
- maxHeight: "100%",
7
- overflowX: "hidden",
8
- overflowY: "auto"
9
- };
1
+ import { mergeObjects as y } from "./index337.js";
2
+ const o = {};
3
+ function j(t, n, e, r, c) {
4
+ if (!e && !r && !c && !t)
5
+ return u(n);
6
+ let f = u(t);
7
+ return n && (f = i(f, n)), e && (f = i(f, e)), r && (f = i(f, r)), c && (f = i(f, c)), f;
8
+ }
9
+ function w(t) {
10
+ if (t.length === 0)
11
+ return o;
12
+ if (t.length === 1)
13
+ return u(t[0]);
14
+ let n = u(t[0]);
15
+ for (let e = 1; e < t.length; e += 1)
16
+ n = i(n, t[e]);
17
+ return n;
18
+ }
19
+ function u(t) {
20
+ return l(t) ? {
21
+ ...s(t, o)
22
+ } : m(t);
23
+ }
24
+ function i(t, n) {
25
+ return l(n) ? s(n, t) : U(t, n);
26
+ }
27
+ function m(t) {
28
+ const n = {
29
+ ...t
30
+ };
31
+ for (const e in n) {
32
+ const r = n[e];
33
+ a(e, r) && (n[e] = v(r));
34
+ }
35
+ return n;
36
+ }
37
+ function U(t, n) {
38
+ if (!n)
39
+ return t;
40
+ for (const e in n) {
41
+ const r = n[e];
42
+ switch (e) {
43
+ case "style": {
44
+ t[e] = y(t.style, r);
45
+ break;
46
+ }
47
+ case "className": {
48
+ t[e] = M(t.className, r);
49
+ break;
50
+ }
51
+ default:
52
+ a(e, r) ? t[e] = A(t[e], r) : t[e] = r;
53
+ }
54
+ }
55
+ return t;
56
+ }
57
+ function a(t, n) {
58
+ const e = t.charCodeAt(0), r = t.charCodeAt(1), c = t.charCodeAt(2);
59
+ return e === 111 && r === 110 && c >= 65 && c <= 90 && (typeof n == "function" || typeof n > "u");
60
+ }
61
+ function l(t) {
62
+ return typeof t == "function";
63
+ }
64
+ function s(t, n) {
65
+ return l(t) ? t(n) : t ?? o;
66
+ }
67
+ function A(t, n) {
68
+ return n ? t ? (...e) => {
69
+ const r = e[0];
70
+ if (I(r)) {
71
+ const f = r;
72
+ E(f);
73
+ const b = n(...e);
74
+ return f.baseUIHandlerPrevented || t?.(...e), b;
75
+ }
76
+ const c = n(...e);
77
+ return t?.(...e), c;
78
+ } : v(n) : t;
79
+ }
80
+ function v(t) {
81
+ return t && ((...n) => {
82
+ const e = n[0];
83
+ return I(e) && E(e), t(...n);
84
+ });
85
+ }
86
+ function E(t) {
87
+ return t.preventBaseUIHandler = () => {
88
+ t.baseUIHandlerPrevented = !0;
89
+ }, t;
90
+ }
91
+ function M(t, n) {
92
+ return n ? t ? n + " " + t : n : t;
93
+ }
94
+ function I(t) {
95
+ return t != null && typeof t == "object" && "nativeEvent" in t;
96
+ }
10
97
  export {
11
- i as LIST_FUNCTIONAL_STYLES,
12
- e as clearStyles
98
+ E as makeEventPreventable,
99
+ M as mergeClassNames,
100
+ j as mergeProps,
101
+ w as mergePropsN
13
102
  };
14
103
  //# sourceMappingURL=index282.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index282.js","sources":["../../../node_modules/@base-ui/react/esm/select/popup/utils.js"],"sourcesContent":["export function clearStyles(element, originalStyles) {\n if (element) {\n Object.assign(element.style, originalStyles);\n }\n}\nexport const LIST_FUNCTIONAL_STYLES = {\n position: 'relative',\n maxHeight: '100%',\n overflowX: 'hidden',\n overflowY: 'auto'\n};"],"names":["clearStyles","element","originalStyles","LIST_FUNCTIONAL_STYLES"],"mappings":"AAAO,SAASA,EAAYC,GAASC,GAAgB;AACnD,EAAID,KACF,OAAO,OAAOA,EAAQ,OAAOC,CAAc;AAE/C;AACY,MAACC,IAAyB;AAAA,EACpC,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,WAAW;AACb;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index282.js","sources":["../../../node_modules/@base-ui/react/esm/merge-props/mergeProps.js"],"sourcesContent":["import { mergeObjects } from '@base-ui/utils/mergeObjects';\nconst EMPTY_PROPS = {};\n\n/* eslint-disable id-denylist */\n/**\n * Merges multiple sets of React props. It follows the Object.assign pattern where the rightmost object's fields overwrite\n * the conflicting ones from others. This doesn't apply to event handlers, `className` and `style` props.\n *\n * Event handlers are merged and called in right-to-left order (rightmost handler executes first, leftmost last).\n * For React synthetic events, the rightmost handler can prevent prior (left-positioned) handlers from executing\n * by calling `event.preventBaseUIHandler()`. For non-synthetic events (custom events with primitive/object values),\n * all handlers always execute without prevention capability.\n *\n * The `className` prop is merged by concatenating classes in right-to-left order (rightmost class appears first in the string).\n * The `style` prop is merged with rightmost styles overwriting the prior ones.\n *\n * Props can either be provided as objects or as functions that take the previous props as an argument.\n * The function will receive the merged props up to that point (going from left to right):\n * so in the case of `(obj1, obj2, fn, obj3)`, `fn` will receive the merged props of `obj1` and `obj2`.\n * The function is responsible for chaining event handlers if needed (that is, we don't run the merge logic).\n *\n * Event handlers returned by the functions are not automatically prevented when `preventBaseUIHandler` is called.\n * They must check `event.baseUIHandlerPrevented` themselves and bail out if it's true.\n *\n * @important **`ref` is not merged.**\n * @param a Props object to merge.\n * @param b Props object to merge. The function will overwrite conflicting props from `a`.\n * @param c Props object to merge. The function will overwrite conflicting props from previous parameters.\n * @param d Props object to merge. The function will overwrite conflicting props from previous parameters.\n * @param e Props object to merge. The function will overwrite conflicting props from previous parameters.\n * @returns The merged props.\n * @public\n */\n\nexport function mergeProps(a, b, c, d, e) {\n if (!c && !d && !e && !a) {\n return createInitialMergedProps(b);\n }\n\n // We need to mutably own `merged`.\n let merged = createInitialMergedProps(a);\n if (b) {\n merged = mergeInto(merged, b);\n }\n if (c) {\n merged = mergeInto(merged, c);\n }\n if (d) {\n merged = mergeInto(merged, d);\n }\n if (e) {\n merged = mergeInto(merged, e);\n }\n return merged;\n}\n/* eslint-enable id-denylist */\n\n/**\n * Merges an arbitrary number of React props using the same logic as {@link mergeProps}.\n * This function accepts an array of props instead of individual arguments.\n *\n * This has slightly lower performance than {@link mergeProps} due to accepting an array\n * instead of a fixed number of arguments. Prefer {@link mergeProps} when merging 5 or\n * fewer prop sets for better performance.\n *\n * @param props Array of props to merge.\n * @returns The merged props.\n * @see mergeProps\n * @public\n */\nexport function mergePropsN(props) {\n if (props.length === 0) {\n return EMPTY_PROPS;\n }\n if (props.length === 1) {\n return createInitialMergedProps(props[0]);\n }\n\n // We need to mutably own `merged`.\n let merged = createInitialMergedProps(props[0]);\n for (let i = 1; i < props.length; i += 1) {\n merged = mergeInto(merged, props[i]);\n }\n return merged;\n}\nfunction createInitialMergedProps(inputProps) {\n if (isPropsGetter(inputProps)) {\n // Getter-returned handlers intentionally keep their existing semantics.\n return {\n ...resolvePropsGetter(inputProps, EMPTY_PROPS)\n };\n }\n return copyInitialProps(inputProps);\n}\nfunction mergeInto(merged, inputProps) {\n if (isPropsGetter(inputProps)) {\n return resolvePropsGetter(inputProps, merged);\n }\n return mutablyMergeInto(merged, inputProps);\n}\nfunction copyInitialProps(inputProps) {\n const copiedProps = {\n ...inputProps\n };\n\n // `copiedProps` is our fresh own-object copy, so iterating with `for...in` is safe here.\n // eslint-disable-next-line guard-for-in\n for (const propName in copiedProps) {\n const propValue = copiedProps[propName];\n if (isEventHandler(propName, propValue)) {\n copiedProps[propName] = wrapEventHandler(propValue);\n }\n }\n return copiedProps;\n}\n\n/**\n * Merges two sets of props. In case of conflicts, the external props take precedence.\n */\nfunction mutablyMergeInto(mergedProps, externalProps) {\n if (!externalProps) {\n return mergedProps;\n }\n\n // eslint-disable-next-line guard-for-in\n for (const propName in externalProps) {\n const externalPropValue = externalProps[propName];\n switch (propName) {\n case 'style':\n {\n mergedProps[propName] = mergeObjects(mergedProps.style, externalPropValue);\n break;\n }\n case 'className':\n {\n mergedProps[propName] = mergeClassNames(mergedProps.className, externalPropValue);\n break;\n }\n default:\n {\n if (isEventHandler(propName, externalPropValue)) {\n mergedProps[propName] = mergeEventHandlers(mergedProps[propName], externalPropValue);\n } else {\n mergedProps[propName] = externalPropValue;\n }\n }\n }\n }\n return mergedProps;\n}\nfunction isEventHandler(key, value) {\n // This approach is more efficient than using a regex.\n const code0 = key.charCodeAt(0);\n const code1 = key.charCodeAt(1);\n const code2 = key.charCodeAt(2);\n return code0 === 111 /* o */ && code1 === 110 /* n */ && code2 >= 65 /* A */ && code2 <= 90 /* Z */ && (typeof value === 'function' || typeof value === 'undefined');\n}\nfunction isPropsGetter(inputProps) {\n return typeof inputProps === 'function';\n}\nfunction resolvePropsGetter(inputProps, previousProps) {\n if (isPropsGetter(inputProps)) {\n return inputProps(previousProps);\n }\n return inputProps ?? EMPTY_PROPS;\n}\nfunction mergeEventHandlers(ourHandler, theirHandler) {\n if (!theirHandler) {\n return ourHandler;\n }\n if (!ourHandler) {\n return wrapEventHandler(theirHandler);\n }\n return (...args) => {\n const event = args[0];\n if (isSyntheticEvent(event)) {\n const baseUIEvent = event;\n makeEventPreventable(baseUIEvent);\n const result = theirHandler(...args);\n if (!baseUIEvent.baseUIHandlerPrevented) {\n ourHandler?.(...args);\n }\n return result;\n }\n const result = theirHandler(...args);\n ourHandler?.(...args);\n return result;\n };\n}\nfunction wrapEventHandler(handler) {\n if (!handler) {\n return handler;\n }\n return (...args) => {\n const event = args[0];\n if (isSyntheticEvent(event)) {\n makeEventPreventable(event);\n }\n return handler(...args);\n };\n}\nexport function makeEventPreventable(event) {\n event.preventBaseUIHandler = () => {\n event.baseUIHandlerPrevented = true;\n };\n return event;\n}\nexport function mergeClassNames(ourClassName, theirClassName) {\n if (theirClassName) {\n if (ourClassName) {\n // eslint-disable-next-line prefer-template\n return theirClassName + ' ' + ourClassName;\n }\n return theirClassName;\n }\n return ourClassName;\n}\nfunction isSyntheticEvent(event) {\n return event != null && typeof event === 'object' && 'nativeEvent' in event;\n}"],"names":["EMPTY_PROPS","mergeProps","a","b","c","d","e","createInitialMergedProps","merged","mergeInto","mergePropsN","props","i","inputProps","isPropsGetter","resolvePropsGetter","copyInitialProps","mutablyMergeInto","copiedProps","propName","propValue","isEventHandler","wrapEventHandler","mergedProps","externalProps","externalPropValue","mergeObjects","mergeClassNames","mergeEventHandlers","key","value","code0","code1","code2","previousProps","ourHandler","theirHandler","args","event","isSyntheticEvent","baseUIEvent","makeEventPreventable","result","handler","ourClassName","theirClassName"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index283.js CHANGED
@@ -1,29 +1,87 @@
1
- import { popupStateMapping as f } from "./index102.js";
2
- import { useRenderElement as m } from "./index101.js";
3
- import { getDisabledMountTransitionStyles as u } from "./index291.js";
4
- function M(e, o, {
5
- styles: n,
6
- transitionStatus: r,
7
- props: i,
8
- refs: p,
9
- hidden: s,
10
- inert: a = !1
11
- }) {
12
- const t = {
13
- ...n
14
- };
15
- return a && (t.pointerEvents = "none"), m("div", e, {
16
- state: o,
17
- ref: p,
18
- props: [{
19
- role: "presentation",
20
- hidden: s,
21
- style: t
22
- }, u(r), i],
23
- stateAttributesMapping: f
1
+ import { useStore as r } from "./index277.js";
2
+ class n {
3
+ /**
4
+ * The current state of the store.
5
+ * This property is updated immediately when the state changes as a result of calling {@link setState}, {@link update}, or {@link set}.
6
+ * To subscribe to state changes, use the {@link useState} method. The value returned by {@link useState} is updated after the component renders (similarly to React's useState).
7
+ * The values can be used directly (to avoid subscribing to the store) in effects or event handlers.
8
+ *
9
+ * Do not modify properties in state directly. Instead, use the provided methods to ensure proper state management and listener notification.
10
+ */
11
+ // Internal state to handle recursive `setState()` calls
12
+ constructor(t) {
13
+ this.state = t, this.listeners = /* @__PURE__ */ new Set(), this.updateTick = 0;
14
+ }
15
+ /**
16
+ * Registers a listener that will be called whenever the store's state changes.
17
+ *
18
+ * @param fn The listener function to be called on state changes.
19
+ * @returns A function to unsubscribe the listener.
20
+ */
21
+ subscribe = (t) => (this.listeners.add(t), () => {
22
+ this.listeners.delete(t);
24
23
  });
24
+ /**
25
+ * Returns the current state of the store.
26
+ */
27
+ getSnapshot = () => this.state;
28
+ /**
29
+ * Updates the entire store's state and notifies all registered listeners.
30
+ *
31
+ * @param newState The new state to set for the store.
32
+ */
33
+ setState(t) {
34
+ if (this.state === t)
35
+ return;
36
+ this.state = t, this.updateTick += 1;
37
+ const s = this.updateTick;
38
+ for (const e of this.listeners) {
39
+ if (s !== this.updateTick)
40
+ return;
41
+ e(t);
42
+ }
43
+ }
44
+ /**
45
+ * Merges the provided changes into the current state and notifies listeners if there are changes.
46
+ *
47
+ * @param changes An object containing the changes to apply to the current state.
48
+ */
49
+ update(t) {
50
+ for (const s in t)
51
+ if (!Object.is(this.state[s], t[s])) {
52
+ this.setState({
53
+ ...this.state,
54
+ ...t
55
+ });
56
+ return;
57
+ }
58
+ }
59
+ /**
60
+ * Sets a specific key in the store's state to a new value and notifies listeners if the value has changed.
61
+ *
62
+ * @param key The key in the store's state to update.
63
+ * @param value The new value to set for the specified key.
64
+ */
65
+ set(t, s) {
66
+ Object.is(this.state[t], s) || this.setState({
67
+ ...this.state,
68
+ [t]: s
69
+ });
70
+ }
71
+ /**
72
+ * Gives the state a new reference and updates all registered listeners.
73
+ */
74
+ notifyAll() {
75
+ const t = {
76
+ ...this.state
77
+ };
78
+ this.setState(t);
79
+ }
80
+ use(t, s, e, i) {
81
+ return r(this, t, s, e, i);
82
+ }
25
83
  }
26
84
  export {
27
- M as usePositioner
85
+ n as Store
28
86
  };
29
87
  //# sourceMappingURL=index283.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index283.js","sources":["../../../node_modules/@base-ui/react/esm/utils/usePositioner.js"],"sourcesContent":["'use client';\n\nimport { popupStateMapping } from \"./popupStateMapping.js\";\nimport { useRenderElement } from \"../internals/useRenderElement.js\";\nimport { getDisabledMountTransitionStyles } from \"./getDisabledMountTransitionStyles.js\";\n/**\n * Renders the shared outer Positioner element used by popup components.\n * Applies the common role, hidden state, transition styles, state attributes, and optional inert styling.\n */\nexport function usePositioner(componentProps, state, {\n styles,\n transitionStatus,\n props,\n refs,\n hidden,\n inert = false\n}) {\n const style = {\n ...styles\n };\n if (inert) {\n style.pointerEvents = 'none';\n }\n return useRenderElement('div', componentProps, {\n state,\n ref: refs,\n props: [{\n role: 'presentation',\n hidden,\n style\n }, getDisabledMountTransitionStyles(transitionStatus), props],\n stateAttributesMapping: popupStateMapping\n });\n}"],"names":["usePositioner","componentProps","state","styles","transitionStatus","props","refs","hidden","inert","style","useRenderElement","getDisabledMountTransitionStyles","popupStateMapping"],"mappings":";;;AASO,SAASA,EAAcC,GAAgBC,GAAO;AAAA,EACnD,QAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,QAAAC;AAAA,EACA,OAAAC,IAAQ;AACV,GAAG;AACD,QAAMC,IAAQ;AAAA,IACZ,GAAGN;AAAA,EACP;AACE,SAAIK,MACFC,EAAM,gBAAgB,SAEjBC,EAAiB,OAAOT,GAAgB;AAAA,IAC7C,OAAAC;AAAA,IACA,KAAKI;AAAA,IACL,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,MACN,QAAAC;AAAA,MACA,OAAAE;AAAA,IACN,GAAOE,EAAiCP,CAAgB,GAAGC,CAAK;AAAA,IAC5D,wBAAwBO;AAAA,EAC5B,CAAG;AACH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index283.js","sources":["../../../node_modules/@base-ui/utils/esm/store/Store.js"],"sourcesContent":["import { useStore } from \"./useStore.js\";\n/**\n * A data store implementation that allows subscribing to state changes and updating the state.\n * It uses an observer pattern to notify subscribers when the state changes.\n */\nexport class Store {\n /**\n * The current state of the store.\n * This property is updated immediately when the state changes as a result of calling {@link setState}, {@link update}, or {@link set}.\n * To subscribe to state changes, use the {@link useState} method. The value returned by {@link useState} is updated after the component renders (similarly to React's useState).\n * The values can be used directly (to avoid subscribing to the store) in effects or event handlers.\n *\n * Do not modify properties in state directly. Instead, use the provided methods to ensure proper state management and listener notification.\n */\n\n // Internal state to handle recursive `setState()` calls\n\n constructor(state) {\n this.state = state;\n this.listeners = new Set();\n this.updateTick = 0;\n }\n\n /**\n * Registers a listener that will be called whenever the store's state changes.\n *\n * @param fn The listener function to be called on state changes.\n * @returns A function to unsubscribe the listener.\n */\n subscribe = fn => {\n this.listeners.add(fn);\n return () => {\n this.listeners.delete(fn);\n };\n };\n\n /**\n * Returns the current state of the store.\n */\n getSnapshot = () => {\n return this.state;\n };\n\n /**\n * Updates the entire store's state and notifies all registered listeners.\n *\n * @param newState The new state to set for the store.\n */\n setState(newState) {\n if (this.state === newState) {\n return;\n }\n this.state = newState;\n this.updateTick += 1;\n const currentTick = this.updateTick;\n for (const listener of this.listeners) {\n if (currentTick !== this.updateTick) {\n // If the tick has changed, a recursive `setState` call has been made,\n // and it has already notified all listeners.\n return;\n }\n listener(newState);\n }\n }\n\n /**\n * Merges the provided changes into the current state and notifies listeners if there are changes.\n *\n * @param changes An object containing the changes to apply to the current state.\n */\n update(changes) {\n for (const key in changes) {\n if (!Object.is(this.state[key], changes[key])) {\n this.setState({\n ...this.state,\n ...changes\n });\n return;\n }\n }\n }\n\n /**\n * Sets a specific key in the store's state to a new value and notifies listeners if the value has changed.\n *\n * @param key The key in the store's state to update.\n * @param value The new value to set for the specified key.\n */\n set(key, value) {\n if (!Object.is(this.state[key], value)) {\n this.setState({\n ...this.state,\n [key]: value\n });\n }\n }\n\n /**\n * Gives the state a new reference and updates all registered listeners.\n */\n notifyAll() {\n const newState = {\n ...this.state\n };\n this.setState(newState);\n }\n use(selector, a1, a2, a3) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return useStore(this, selector, a1, a2, a3);\n }\n}"],"names":["Store","state","fn","newState","currentTick","listener","changes","key","value","selector","a1","a2","a3","useStore"],"mappings":";AAKO,MAAMA,EAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYjB,YAAYC,GAAO;AACjB,SAAK,QAAQA,GACb,KAAK,YAAY,oBAAI,IAAG,GACxB,KAAK,aAAa;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,YAAY,CAAAC,OACV,KAAK,UAAU,IAAIA,CAAE,GACd,MAAM;AACX,SAAK,UAAU,OAAOA,CAAE;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA,EAMF,cAAc,MACL,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQd,SAASC,GAAU;AACjB,QAAI,KAAK,UAAUA;AACjB;AAEF,SAAK,QAAQA,GACb,KAAK,cAAc;AACnB,UAAMC,IAAc,KAAK;AACzB,eAAWC,KAAY,KAAK,WAAW;AACrC,UAAID,MAAgB,KAAK;AAGvB;AAEF,MAAAC,EAASF,CAAQ;AAAA,IACnB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAOG,GAAS;AACd,eAAWC,KAAOD;AAChB,UAAI,CAAC,OAAO,GAAG,KAAK,MAAMC,CAAG,GAAGD,EAAQC,CAAG,CAAC,GAAG;AAC7C,aAAK,SAAS;AAAA,UACZ,GAAG,KAAK;AAAA,UACR,GAAGD;AAAA,QACb,CAAS;AACD;AAAA,MACF;AAAA,EAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,IAAIC,GAAKC,GAAO;AACd,IAAK,OAAO,GAAG,KAAK,MAAMD,CAAG,GAAGC,CAAK,KACnC,KAAK,SAAS;AAAA,MACZ,GAAG,KAAK;AAAA,MACR,CAACD,CAAG,GAAGC;AAAA,IACf,CAAO;AAAA,EAEL;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY;AACV,UAAML,IAAW;AAAA,MACf,GAAG,KAAK;AAAA,IACd;AACI,SAAK,SAASA,CAAQ;AAAA,EACxB;AAAA,EACA,IAAIM,GAAUC,GAAIC,GAAIC,GAAI;AAExB,WAAOC,EAAS,MAAMJ,GAAUC,GAAIC,GAAIC,CAAE;AAAA,EAC5C;AACF;","x_google_ignoreList":[0]}
package/dist/index284.js CHANGED
@@ -1,20 +1,7 @@
1
- import * as e from "react";
2
- import { ownerDocument as m } from "./index271.js";
3
- import { useScrollLock as p } from "./index234.js";
4
- import { useIsoLayoutEffect as h } from "./index248.js";
5
- const S = 20;
6
- function L(t, c, o, l) {
7
- const [s, r] = e.useState(!1);
8
- h(() => {
9
- if (!t || !c || o == null) {
10
- r(!1);
11
- return;
12
- }
13
- const u = m(o).documentElement.clientWidth, f = o.offsetWidth;
14
- r(u > 0 && f > 0 && f >= u - S);
15
- }, [t, c, o]), p(t && (!c || s), l);
1
+ function e(n) {
2
+ return n?.ownerDocument || document;
16
3
  }
17
4
  export {
18
- L as useAnchoredPopupScrollLock
5
+ e as ownerDocument
19
6
  };
20
7
  //# sourceMappingURL=index284.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index284.js","sources":["../../../node_modules/@base-ui/react/esm/utils/useAnchoredPopupScrollLock.js"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { ownerDocument } from '@base-ui/utils/owner';\nimport { useScrollLock } from '@base-ui/utils/useScrollLock';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\n\n// Touch-opened popups normally avoid scroll locking so users can still swipe outside to dismiss.\n// This hook re-enables scroll lock only when the popup is effectively full-width.\n// Treat popups with up to 20px of total horizontal gutter as full-width so common ~10px side\n// padding still locks scroll, since that leaves too little outside space for a reliable swipe.\nconst VIEWPORT_WIDTH_TOLERANCE_PX = 20;\n\n/**\n * Manages scroll lock for anchored popups. For non-touch opens, scroll lock is applied when\n * enabled. For touch opens, scroll lock is applied only when the positioner width is effectively\n * viewport-sized.\n */\nexport function useAnchoredPopupScrollLock(enabled, touchOpen, positionerElement, referenceElement) {\n const [touchOpenShouldLockScroll, setTouchOpenShouldLockScroll] = React.useState(false);\n useIsoLayoutEffect(() => {\n if (!enabled || !touchOpen || positionerElement == null) {\n setTouchOpenShouldLockScroll(false);\n return;\n }\n const viewportWidth = ownerDocument(positionerElement).documentElement.clientWidth;\n const popupWidth = positionerElement.offsetWidth;\n setTouchOpenShouldLockScroll(viewportWidth > 0 && popupWidth > 0 && popupWidth >= viewportWidth - VIEWPORT_WIDTH_TOLERANCE_PX);\n }, [enabled, touchOpen, positionerElement]);\n useScrollLock(enabled && (!touchOpen || touchOpenShouldLockScroll), referenceElement);\n}"],"names":["VIEWPORT_WIDTH_TOLERANCE_PX","useAnchoredPopupScrollLock","enabled","touchOpen","positionerElement","referenceElement","touchOpenShouldLockScroll","setTouchOpenShouldLockScroll","React","useIsoLayoutEffect","viewportWidth","ownerDocument","popupWidth","useScrollLock"],"mappings":";;;;AAWA,MAAMA,IAA8B;AAO7B,SAASC,EAA2BC,GAASC,GAAWC,GAAmBC,GAAkB;AAClG,QAAM,CAACC,GAA2BC,CAA4B,IAAIC,EAAM,SAAS,EAAK;AACtF,EAAAC,EAAmB,MAAM;AACvB,QAAI,CAACP,KAAW,CAACC,KAAaC,KAAqB,MAAM;AACvD,MAAAG,EAA6B,EAAK;AAClC;AAAA,IACF;AACA,UAAMG,IAAgBC,EAAcP,CAAiB,EAAE,gBAAgB,aACjEQ,IAAaR,EAAkB;AACrC,IAAAG,EAA6BG,IAAgB,KAAKE,IAAa,KAAKA,KAAcF,IAAgBV,CAA2B;AAAA,EAC/H,GAAG,CAACE,GAASC,GAAWC,CAAiB,CAAC,GAC1CS,EAAcX,MAAY,CAACC,KAAaG,IAA4BD,CAAgB;AACtF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index284.js","sources":["../../../node_modules/@base-ui/utils/esm/owner.js"],"sourcesContent":["export { getWindow as ownerWindow } from '@floating-ui/utils/dom';\nexport function ownerDocument(node) {\n return node?.ownerDocument || document;\n}"],"names":["ownerDocument","node"],"mappings":"AACO,SAASA,EAAcC,GAAM;AAClC,SAAOA,GAAM,iBAAiB;AAChC;","x_google_ignoreList":[0]}