@rpcbase/ui 0.202.0 → 0.203.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 (641) hide show
  1. package/dist/index.js +25 -73
  2. package/dist/index10.js +18 -28
  3. package/dist/index10.js.map +1 -1
  4. package/dist/index100.js +8 -8
  5. package/dist/index100.js.map +1 -1
  6. package/dist/index101.js +8 -7
  7. package/dist/index101.js.map +1 -1
  8. package/dist/index102.js +14 -7
  9. package/dist/index102.js.map +1 -1
  10. package/dist/index103.js +9 -9
  11. package/dist/index103.js.map +1 -1
  12. package/dist/index104.js +14 -148
  13. package/dist/index104.js.map +1 -1
  14. package/dist/index105.js +21 -43
  15. package/dist/index105.js.map +1 -1
  16. package/dist/index106.js +27 -7
  17. package/dist/index106.js.map +1 -1
  18. package/dist/index107.js +8 -10
  19. package/dist/index107.js.map +1 -1
  20. package/dist/index108.js +8 -16
  21. package/dist/index108.js.map +1 -1
  22. package/dist/index109.js +9 -16
  23. package/dist/index109.js.map +1 -1
  24. package/dist/index11.js +1674 -41
  25. package/dist/index11.js.map +1 -1
  26. package/dist/index110.js +9 -10
  27. package/dist/index110.js.map +1 -1
  28. package/dist/index111.js +8 -34
  29. package/dist/index111.js.map +1 -1
  30. package/dist/index112.js +8 -13
  31. package/dist/index112.js.map +1 -1
  32. package/dist/index113.js +11 -13
  33. package/dist/index113.js.map +1 -1
  34. package/dist/index114.js +10 -11
  35. package/dist/index114.js.map +1 -1
  36. package/dist/index115.js +37 -16
  37. package/dist/index115.js.map +1 -1
  38. package/dist/index116.js +10 -104
  39. package/dist/index116.js.map +1 -1
  40. package/dist/index117.js +9 -23
  41. package/dist/index117.js.map +1 -1
  42. package/dist/index118.js +10 -56
  43. package/dist/index118.js.map +1 -1
  44. package/dist/index119.js +12 -75
  45. package/dist/index119.js.map +1 -1
  46. package/dist/index12.js +10 -470
  47. package/dist/index12.js.map +1 -1
  48. package/dist/index120.js +8 -12
  49. package/dist/index120.js.map +1 -1
  50. package/dist/index121.js +9 -23
  51. package/dist/index121.js.map +1 -1
  52. package/dist/index122.js +8 -19
  53. package/dist/index122.js.map +1 -1
  54. package/dist/index123.js +8 -26
  55. package/dist/index123.js.map +1 -1
  56. package/dist/index124.js +9 -9
  57. package/dist/index124.js.map +1 -1
  58. package/dist/index125.js +8 -8
  59. package/dist/index125.js.map +1 -1
  60. package/dist/index126.js +9 -27
  61. package/dist/index126.js.map +1 -1
  62. package/dist/index127.js +11 -38
  63. package/dist/index127.js.map +1 -1
  64. package/dist/index128.js +60 -19
  65. package/dist/index128.js.map +1 -1
  66. package/dist/index129.js +9 -9
  67. package/dist/index129.js.map +1 -1
  68. package/dist/index13.js +22 -140
  69. package/dist/index13.js.map +1 -1
  70. package/dist/index130.js +23 -8
  71. package/dist/index130.js.map +1 -1
  72. package/dist/index131.js +22 -7
  73. package/dist/index131.js.map +1 -1
  74. package/dist/index132.js +37 -7
  75. package/dist/index132.js.map +1 -1
  76. package/dist/index133.js +8 -7
  77. package/dist/index133.js.map +1 -1
  78. package/dist/index134.js +11 -6
  79. package/dist/index134.js.map +1 -1
  80. package/dist/index135.js +17 -9
  81. package/dist/index135.js.map +1 -1
  82. package/dist/index136.js +14 -27
  83. package/dist/index136.js.map +1 -1
  84. package/dist/index137.js +9 -10
  85. package/dist/index137.js.map +1 -1
  86. package/dist/index138.js +8 -9
  87. package/dist/index138.js.map +1 -1
  88. package/dist/index139.js +8 -8
  89. package/dist/index139.js.map +1 -1
  90. package/dist/index14.js +194 -78
  91. package/dist/index14.js.map +1 -1
  92. package/dist/index140.js +8 -6
  93. package/dist/index140.js.map +1 -1
  94. package/dist/index141.js +8 -6
  95. package/dist/index141.js.map +1 -1
  96. package/dist/index142.js +7 -7
  97. package/dist/index142.js.map +1 -1
  98. package/dist/index143.js +9 -6
  99. package/dist/index143.js.map +1 -1
  100. package/dist/index144.js +24 -8
  101. package/dist/index144.js.map +1 -1
  102. package/dist/index145.js +11 -6
  103. package/dist/index145.js.map +1 -1
  104. package/dist/index146.js +10 -6
  105. package/dist/index146.js.map +1 -1
  106. package/dist/index147.js +9 -6
  107. package/dist/index147.js.map +1 -1
  108. package/dist/index148.js +9 -8
  109. package/dist/index148.js.map +1 -1
  110. package/dist/index149.js +7 -10
  111. package/dist/index149.js.map +1 -1
  112. package/dist/index15.js +33 -874
  113. package/dist/index15.js.map +1 -1
  114. package/dist/index150.js +7 -8
  115. package/dist/index150.js.map +1 -1
  116. package/dist/index151.js +9 -50
  117. package/dist/index151.js.map +1 -1
  118. package/dist/index152.js +8 -50
  119. package/dist/index152.js.map +1 -1
  120. package/dist/index153.js +9 -209
  121. package/dist/index153.js.map +1 -1
  122. package/dist/index154.js +8 -25
  123. package/dist/index154.js.map +1 -1
  124. package/dist/index155.js +7 -27
  125. package/dist/index155.js.map +1 -1
  126. package/dist/index156.js +8 -403
  127. package/dist/index156.js.map +1 -1
  128. package/dist/index157.js +32 -609
  129. package/dist/index157.js.map +1 -1
  130. package/dist/index158.js +35 -19
  131. package/dist/index158.js.map +1 -1
  132. package/dist/index159.js +18 -8
  133. package/dist/index159.js.map +1 -1
  134. package/dist/index16.js +57 -23
  135. package/dist/index16.js.map +1 -1
  136. package/dist/index160.js +14 -8
  137. package/dist/index160.js.map +1 -1
  138. package/dist/index161.js +12 -61
  139. package/dist/index161.js.map +1 -1
  140. package/dist/index162.js +19 -69
  141. package/dist/index162.js.map +1 -1
  142. package/dist/index163.js +89 -9
  143. package/dist/index163.js.map +1 -1
  144. package/dist/index164.js +50 -7
  145. package/dist/index164.js.map +1 -1
  146. package/dist/index165.js +20 -10
  147. package/dist/index165.js.map +1 -1
  148. package/dist/index166.js +11 -20
  149. package/dist/index166.js.map +1 -1
  150. package/dist/index167.js +13 -8
  151. package/dist/index167.js.map +1 -1
  152. package/dist/index168.js +8 -8
  153. package/dist/index168.js.map +1 -1
  154. package/dist/index169.js +25 -16
  155. package/dist/index169.js.map +1 -1
  156. package/dist/index17.js +9 -20
  157. package/dist/index17.js.map +1 -1
  158. package/dist/index170.js +10 -13
  159. package/dist/index170.js.map +1 -1
  160. package/dist/index171.js +9 -17
  161. package/dist/index171.js.map +1 -1
  162. package/dist/index172.js +9 -17
  163. package/dist/index172.js.map +1 -1
  164. package/dist/index173.js +7 -8
  165. package/dist/index173.js.map +1 -1
  166. package/dist/index174.js +9 -9
  167. package/dist/index174.js.map +1 -1
  168. package/dist/index175.js +70 -10
  169. package/dist/index175.js.map +1 -1
  170. package/dist/index176.js +20 -9
  171. package/dist/index176.js.map +1 -1
  172. package/dist/index177.js +15 -12
  173. package/dist/index177.js.map +1 -1
  174. package/dist/index178.js +12 -8
  175. package/dist/index178.js.map +1 -1
  176. package/dist/index179.js +23 -8
  177. package/dist/index179.js.map +1 -1
  178. package/dist/index18.js +27 -460
  179. package/dist/index18.js.map +1 -1
  180. package/dist/index180.js +20 -12
  181. package/dist/index180.js.map +1 -1
  182. package/dist/index181.js +58 -8
  183. package/dist/index181.js.map +1 -1
  184. package/dist/index182.js +13 -8
  185. package/dist/index182.js.map +1 -1
  186. package/dist/index183.js +9 -7
  187. package/dist/index183.js.map +1 -1
  188. package/dist/index184.js +29 -14
  189. package/dist/index184.js.map +1 -1
  190. package/dist/index185.js +29 -13
  191. package/dist/index185.js.map +1 -1
  192. package/dist/index186.js +16 -13
  193. package/dist/index186.js.map +1 -1
  194. package/dist/index187.js +16 -14
  195. package/dist/index187.js.map +1 -1
  196. package/dist/index188.js +9 -14
  197. package/dist/index188.js.map +1 -1
  198. package/dist/index189.js +26 -13
  199. package/dist/index189.js.map +1 -1
  200. package/dist/index19.js +65 -666
  201. package/dist/index19.js.map +1 -1
  202. package/dist/index190.js +388 -10
  203. package/dist/index190.js.map +1 -1
  204. package/dist/index191.js +499 -10
  205. package/dist/index191.js.map +1 -1
  206. package/dist/index192.js +134 -9
  207. package/dist/index192.js.map +1 -1
  208. package/dist/index193.js +55 -9
  209. package/dist/index193.js.map +1 -1
  210. package/dist/index194.js +80 -10
  211. package/dist/index194.js.map +1 -1
  212. package/dist/index195.js +902 -9
  213. package/dist/index195.js.map +1 -1
  214. package/dist/index196.js +22 -58
  215. package/dist/index196.js.map +1 -1
  216. package/dist/index197.js +452 -12
  217. package/dist/index197.js.map +1 -1
  218. package/dist/index198.js +7 -22
  219. package/dist/index198.js.map +1 -1
  220. package/dist/index199.js +60 -32
  221. package/dist/index199.js.map +1 -1
  222. package/dist/index2.js +10 -8
  223. package/dist/index20.js +43 -469
  224. package/dist/index20.js.map +1 -1
  225. package/dist/index200.js +63 -15
  226. package/dist/index200.js.map +1 -1
  227. package/dist/index201.js +11 -28
  228. package/dist/index201.js.map +1 -1
  229. package/dist/index202.js +19 -8
  230. package/dist/index202.js.map +1 -1
  231. package/dist/index203.js +148 -20
  232. package/dist/index203.js.map +1 -1
  233. package/dist/index204.js +7 -11
  234. package/dist/index204.js.map +1 -1
  235. package/dist/index205.js +13 -13
  236. package/dist/index205.js.map +1 -1
  237. package/dist/index206.js +107 -13
  238. package/dist/index206.js.map +1 -1
  239. package/dist/index207.js +359 -23
  240. package/dist/index207.js.map +1 -1
  241. package/dist/index208.js +99 -14
  242. package/dist/index208.js.map +1 -1
  243. package/dist/index209.js +329 -12
  244. package/dist/index209.js.map +1 -1
  245. package/dist/index21.js +12 -266
  246. package/dist/index21.js.map +1 -1
  247. package/dist/index210.js +213 -12
  248. package/dist/index210.js.map +1 -1
  249. package/dist/index211.js +22 -8
  250. package/dist/index211.js.map +1 -1
  251. package/dist/index212.js +30 -8
  252. package/dist/index212.js.map +1 -1
  253. package/dist/index213.js +189 -18
  254. package/dist/index213.js.map +1 -1
  255. package/dist/index214.js +21 -13
  256. package/dist/index214.js.map +1 -1
  257. package/dist/index215.js +46 -21
  258. package/dist/index215.js.map +1 -1
  259. package/dist/index216.js +12 -18
  260. package/dist/index216.js.map +1 -1
  261. package/dist/index217.js +28 -16
  262. package/dist/index217.js.map +1 -1
  263. package/dist/index218.js +47 -8
  264. package/dist/index218.js.map +1 -1
  265. package/dist/index219.js +19 -70
  266. package/dist/index219.js.map +1 -1
  267. package/dist/index22.js +16 -8
  268. package/dist/index22.js.map +1 -1
  269. package/dist/index220.js +6 -5
  270. package/dist/index220.js.map +1 -1
  271. package/dist/index221.js +8 -367
  272. package/dist/index221.js.map +1 -1
  273. package/dist/index222.js +24 -265
  274. package/dist/index222.js.map +1 -1
  275. package/dist/index223.js +27 -63
  276. package/dist/index223.js.map +1 -1
  277. package/dist/index224.js +68 -47
  278. package/dist/index224.js.map +1 -1
  279. package/dist/index225.js +17 -172
  280. package/dist/index225.js.map +1 -1
  281. package/dist/index226.js +7 -113
  282. package/dist/index226.js.map +1 -1
  283. package/dist/index227.js +53 -27
  284. package/dist/index227.js.map +1 -1
  285. package/dist/index228.js +8 -10
  286. package/dist/index228.js.map +1 -1
  287. package/dist/index229.js +28 -6
  288. package/dist/index229.js.map +1 -1
  289. package/dist/index23.js +109 -30
  290. package/dist/index23.js.map +1 -1
  291. package/dist/index230.js +16 -8
  292. package/dist/index230.js.map +1 -1
  293. package/dist/index231.js +12 -7
  294. package/dist/index231.js.map +1 -1
  295. package/dist/index232.js +3 -470
  296. package/dist/index233.js +28 -188
  297. package/dist/index233.js.map +1 -1
  298. package/dist/index234.js +68 -107
  299. package/dist/index234.js.map +1 -1
  300. package/dist/index235.js +3 -266
  301. package/dist/index236.js +14 -12
  302. package/dist/index236.js.map +1 -1
  303. package/dist/index237.js +53 -45
  304. package/dist/index237.js.map +1 -1
  305. package/dist/index238.js +117 -7
  306. package/dist/index238.js.map +1 -1
  307. package/dist/index239.js +9 -28
  308. package/dist/index239.js.map +1 -1
  309. package/dist/index24.js +3 -269
  310. package/dist/index24.js.map +1 -1
  311. package/dist/index240.js +15 -31
  312. package/dist/index240.js.map +1 -1
  313. package/dist/index241.js +689 -7
  314. package/dist/index241.js.map +1 -1
  315. package/dist/index242.js +256 -71
  316. package/dist/index242.js.map +1 -1
  317. package/dist/index243.js +704 -184
  318. package/dist/index243.js.map +1 -1
  319. package/dist/index244.js +7433 -49
  320. package/dist/index244.js.map +1 -1
  321. package/dist/index245.js +9 -7
  322. package/dist/index245.js.map +1 -1
  323. package/dist/index246.js +16 -22
  324. package/dist/index246.js.map +1 -1
  325. package/dist/index247.js +8 -15
  326. package/dist/index247.js.map +1 -1
  327. package/dist/index248.js +462 -16
  328. package/dist/index248.js.map +1 -1
  329. package/dist/index249.js +41 -158
  330. package/dist/index249.js.map +1 -1
  331. package/dist/index25.js +11 -179
  332. package/dist/index25.js.map +1 -1
  333. package/dist/index250.js +21 -32
  334. package/dist/index250.js.map +1 -1
  335. package/dist/index251.js +30 -12
  336. package/dist/index251.js.map +1 -1
  337. package/dist/index252.js +8 -52
  338. package/dist/index252.js.map +1 -1
  339. package/dist/index253.js +62 -15
  340. package/dist/index253.js.map +1 -1
  341. package/dist/index254.js +10 -47
  342. package/dist/index254.js.map +1 -1
  343. package/dist/index255.js +14 -97
  344. package/dist/index255.js.map +1 -1
  345. package/dist/index256.js +6 -90
  346. package/dist/index256.js.map +1 -1
  347. package/dist/index257.js +20 -109
  348. package/dist/index257.js.map +1 -1
  349. package/dist/index258.js +28 -55
  350. package/dist/index258.js.map +1 -1
  351. package/dist/index259.js +47 -15
  352. package/dist/index259.js.map +1 -1
  353. package/dist/index26.js +22 -16
  354. package/dist/index26.js.map +1 -1
  355. package/dist/index260.js +16 -40
  356. package/dist/index260.js.map +1 -1
  357. package/dist/index261.js +28 -11
  358. package/dist/index261.js.map +1 -1
  359. package/dist/index262.js +20 -119
  360. package/dist/index262.js.map +1 -1
  361. package/dist/index263.js +38 -20
  362. package/dist/index263.js.map +1 -1
  363. package/dist/index264.js +8 -18
  364. package/dist/index264.js.map +1 -1
  365. package/dist/index265.js +12 -6
  366. package/dist/index265.js.map +1 -1
  367. package/dist/index266.js +11 -39
  368. package/dist/index266.js.map +1 -1
  369. package/dist/index267.js +12 -23
  370. package/dist/index267.js.map +1 -1
  371. package/dist/index268.js +13 -12
  372. package/dist/index268.js.map +1 -1
  373. package/dist/index269.js +10 -11
  374. package/dist/index269.js.map +1 -1
  375. package/dist/index27.js +61 -2924
  376. package/dist/index27.js.map +1 -1
  377. package/dist/index270.js +76 -22
  378. package/dist/index270.js.map +1 -1
  379. package/dist/index271.js +174 -31
  380. package/dist/index271.js.map +1 -1
  381. package/dist/index272.js +118 -20
  382. package/dist/index272.js.map +1 -1
  383. package/dist/index273.js +18 -8
  384. package/dist/index273.js.map +1 -1
  385. package/dist/index274.js +83 -5
  386. package/dist/index274.js.map +1 -1
  387. package/dist/index275.js +49 -26
  388. package/dist/index275.js.map +1 -1
  389. package/dist/index276.js +15 -114
  390. package/dist/index276.js.map +1 -1
  391. package/dist/index277.js +19 -18
  392. package/dist/index277.js.map +1 -1
  393. package/dist/index278.js +98 -523
  394. package/dist/index278.js.map +1 -1
  395. package/dist/index279.js +60 -131
  396. package/dist/index279.js.map +1 -1
  397. package/dist/index28.js +58 -5
  398. package/dist/index28.js.map +1 -1
  399. package/dist/index280.js +109 -134
  400. package/dist/index280.js.map +1 -1
  401. package/dist/index281.js +75 -9
  402. package/dist/index281.js.map +1 -1
  403. package/dist/index282.js +117 -9
  404. package/dist/index282.js.map +1 -1
  405. package/dist/index283.js +59 -7
  406. package/dist/index283.js.map +1 -1
  407. package/dist/index284.js +46 -18
  408. package/dist/index284.js.map +1 -1
  409. package/dist/index285.js +146 -12
  410. package/dist/index285.js.map +1 -1
  411. package/dist/index286.js +143 -9
  412. package/dist/index286.js.map +1 -1
  413. package/dist/index287.js +258 -8
  414. package/dist/index287.js.map +1 -1
  415. package/dist/index288.js +241 -546
  416. package/dist/index288.js.map +1 -1
  417. package/dist/index289.js +302 -50
  418. package/dist/index289.js.map +1 -1
  419. package/dist/index29.js +1 -40
  420. package/dist/index290.js +9 -21
  421. package/dist/index290.js.map +1 -1
  422. package/dist/index291.js +9 -9
  423. package/dist/index291.js.map +1 -1
  424. package/dist/index292.js +10 -11
  425. package/dist/index292.js.map +1 -1
  426. package/dist/index293.js +9 -10
  427. package/dist/index293.js.map +1 -1
  428. package/dist/index294.js +9 -11
  429. package/dist/index294.js.map +1 -1
  430. package/dist/index295.js +24 -15
  431. package/dist/index295.js.map +1 -1
  432. package/dist/index296.js +13 -12
  433. package/dist/index296.js.map +1 -1
  434. package/dist/index297.js +130 -17
  435. package/dist/index297.js.map +1 -1
  436. package/dist/index298.js +167 -23
  437. package/dist/index298.js.map +1 -1
  438. package/dist/index299.js +69 -65
  439. package/dist/index299.js.map +1 -1
  440. package/dist/index3.js +6 -5
  441. package/dist/index3.js.map +1 -1
  442. package/dist/index30.js +6 -6
  443. package/dist/index300.js +113 -72
  444. package/dist/index300.js.map +1 -1
  445. package/dist/index301.js +495 -12
  446. package/dist/index301.js.map +1 -1
  447. package/dist/index302.js +65 -16
  448. package/dist/index302.js.map +1 -1
  449. package/dist/index303.js +7 -69
  450. package/dist/index303.js.map +1 -1
  451. package/dist/index304.js +30 -7
  452. package/dist/index304.js.map +1 -1
  453. package/dist/index305.js +68 -58
  454. package/dist/index305.js.map +1 -1
  455. package/dist/index306.js +155 -70
  456. package/dist/index306.js.map +1 -1
  457. package/dist/index307.js +563 -32
  458. package/dist/index307.js.map +1 -1
  459. package/dist/index308.js +213 -11
  460. package/dist/index308.js.map +1 -1
  461. package/dist/index309.js +335 -156
  462. package/dist/index309.js.map +1 -1
  463. package/dist/index31.js +8 -128
  464. package/dist/index31.js.map +1 -1
  465. package/dist/index310.js +271 -110
  466. package/dist/index310.js.map +1 -1
  467. package/dist/index32.js +8 -234
  468. package/dist/index32.js.map +1 -1
  469. package/dist/index33.js +8 -26
  470. package/dist/index33.js.map +1 -1
  471. package/dist/index34.js +11 -54
  472. package/dist/index34.js.map +1 -1
  473. package/dist/index35.js +13 -24
  474. package/dist/index35.js.map +1 -1
  475. package/dist/index36.js +9 -133
  476. package/dist/index36.js.map +1 -1
  477. package/dist/index37.js +11 -225
  478. package/dist/index37.js.map +1 -1
  479. package/dist/index38.js +12 -94
  480. package/dist/index38.js.map +1 -1
  481. package/dist/index39.js +15 -121
  482. package/dist/index39.js.map +1 -1
  483. package/dist/index4.js +24 -28
  484. package/dist/index4.js.map +1 -1
  485. package/dist/index40.js +9 -8
  486. package/dist/index40.js.map +1 -1
  487. package/dist/index41.js +10 -847
  488. package/dist/index41.js.map +1 -1
  489. package/dist/index42.js +10 -60
  490. package/dist/index42.js.map +1 -1
  491. package/dist/index43.js +12 -10
  492. package/dist/index43.js.map +1 -1
  493. package/dist/index44.js +12 -5
  494. package/dist/index44.js.map +1 -1
  495. package/dist/index45.js +8 -14
  496. package/dist/index45.js.map +1 -1
  497. package/dist/index46.js +8 -21
  498. package/dist/index46.js.map +1 -1
  499. package/dist/index47.js +14 -10
  500. package/dist/index47.js.map +1 -1
  501. package/dist/index48.js +15 -5
  502. package/dist/index48.js.map +1 -1
  503. package/dist/index49.js +10 -26
  504. package/dist/index49.js.map +1 -1
  505. package/dist/index5.js +34 -48
  506. package/dist/index5.js.map +1 -1
  507. package/dist/index50.js +7 -236
  508. package/dist/index50.js.map +1 -1
  509. package/dist/index51.js +9 -9
  510. package/dist/index51.js.map +1 -1
  511. package/dist/index52.js +9 -36
  512. package/dist/index52.js.map +1 -1
  513. package/dist/index53.js +9 -29
  514. package/dist/index53.js.map +1 -1
  515. package/dist/index54.js +12 -10
  516. package/dist/index54.js.map +1 -1
  517. package/dist/index55.js +16 -14
  518. package/dist/index55.js.map +1 -1
  519. package/dist/index56.js +10 -5
  520. package/dist/index56.js.map +1 -1
  521. package/dist/index57.js +10 -5
  522. package/dist/index57.js.map +1 -1
  523. package/dist/index58.js +10 -5
  524. package/dist/index58.js.map +1 -1
  525. package/dist/index59.js +17 -5
  526. package/dist/index59.js.map +1 -1
  527. package/dist/index6.js +42 -227
  528. package/dist/index6.js.map +1 -1
  529. package/dist/index60.js +11 -208
  530. package/dist/index60.js.map +1 -1
  531. package/dist/index61.js +11 -6
  532. package/dist/index61.js.map +1 -1
  533. package/dist/index62.js +70 -50
  534. package/dist/index62.js.map +1 -1
  535. package/dist/index63.js +10 -53
  536. package/dist/index63.js.map +1 -1
  537. package/dist/index64.js +33 -10
  538. package/dist/index64.js.map +1 -1
  539. package/dist/index65.js +13 -18
  540. package/dist/index65.js.map +1 -1
  541. package/dist/index66.js +19 -137
  542. package/dist/index66.js.map +1 -1
  543. package/dist/index67.js +203 -13
  544. package/dist/index67.js.map +1 -1
  545. package/dist/index68.js +22 -218
  546. package/dist/index68.js.map +1 -1
  547. package/dist/index69.js +20 -16
  548. package/dist/index69.js.map +1 -1
  549. package/dist/index7.js +225 -37
  550. package/dist/index7.js.map +1 -1
  551. package/dist/index70.js +125 -49
  552. package/dist/index70.js.map +1 -1
  553. package/dist/index71.js +21 -52
  554. package/dist/index71.js.map +1 -1
  555. package/dist/index72.js +12 -7
  556. package/dist/index72.js.map +1 -1
  557. package/dist/index73.js +12 -8
  558. package/dist/index73.js.map +1 -1
  559. package/dist/index74.js +17 -31
  560. package/dist/index74.js.map +1 -1
  561. package/dist/index75.js +13 -53
  562. package/dist/index75.js.map +1 -1
  563. package/dist/index76.js +13 -12
  564. package/dist/index76.js.map +1 -1
  565. package/dist/index77.js +8 -55
  566. package/dist/index77.js.map +1 -1
  567. package/dist/index78.js +44 -7
  568. package/dist/index78.js.map +1 -1
  569. package/dist/index79.js +383 -7
  570. package/dist/index79.js.map +1 -1
  571. package/dist/index8.js +36 -32
  572. package/dist/index8.js.map +1 -1
  573. package/dist/index80.js +41 -18
  574. package/dist/index80.js.map +1 -1
  575. package/dist/index81.js +25 -9
  576. package/dist/index81.js.map +1 -1
  577. package/dist/index82.js +60 -10
  578. package/dist/index82.js.map +1 -1
  579. package/dist/index83.js +10 -19
  580. package/dist/index83.js.map +1 -1
  581. package/dist/index84.js +8 -7
  582. package/dist/index84.js.map +1 -1
  583. package/dist/index85.js +8 -7
  584. package/dist/index85.js.map +1 -1
  585. package/dist/index86.js +8 -8
  586. package/dist/index86.js.map +1 -1
  587. package/dist/index87.js +8 -8
  588. package/dist/index87.js.map +1 -1
  589. package/dist/index88.js +9 -7
  590. package/dist/index88.js.map +1 -1
  591. package/dist/index89.js +9 -7
  592. package/dist/index89.js.map +1 -1
  593. package/dist/index9.js +33 -181
  594. package/dist/index9.js.map +1 -1
  595. package/dist/index90.js +13 -9
  596. package/dist/index90.js.map +1 -1
  597. package/dist/index91.js +10 -27
  598. package/dist/index91.js.map +1 -1
  599. package/dist/index92.js +9 -9
  600. package/dist/index92.js.map +1 -1
  601. package/dist/index93.js +8 -7
  602. package/dist/index93.js.map +1 -1
  603. package/dist/index94.js +10 -9
  604. package/dist/index94.js.map +1 -1
  605. package/dist/index95.js +50 -8
  606. package/dist/index95.js.map +1 -1
  607. package/dist/index96.js +108 -7
  608. package/dist/index96.js.map +1 -1
  609. package/dist/index97.js +13 -8
  610. package/dist/index97.js.map +1 -1
  611. package/dist/index98.js +9 -7
  612. package/dist/index98.js.map +1 -1
  613. package/dist/index99.js +9 -11
  614. package/dist/index99.js.map +1 -1
  615. package/package.json +6 -6
  616. package/dist/index.js.map +0 -1
  617. package/dist/index2.js.map +0 -1
  618. package/dist/index232.js.map +0 -1
  619. package/dist/index235.js.map +0 -1
  620. package/dist/index29.js.map +0 -1
  621. package/dist/index30.js.map +0 -1
  622. package/dist/index311.js +0 -7
  623. package/dist/index311.js.map +0 -1
  624. package/dist/index312.js +0 -26
  625. package/dist/index312.js.map +0 -1
  626. package/dist/index313.js +0 -19
  627. package/dist/index313.js.map +0 -1
  628. package/dist/index314.js +0 -32
  629. package/dist/index314.js.map +0 -1
  630. package/dist/index315.js +0 -16
  631. package/dist/index315.js.map +0 -1
  632. package/dist/index316.js +0 -10
  633. package/dist/index316.js.map +0 -1
  634. package/dist/index317.js +0 -26
  635. package/dist/index317.js.map +0 -1
  636. package/dist/index318.js +0 -16
  637. package/dist/index318.js.map +0 -1
  638. package/dist/index319.js +0 -31
  639. package/dist/index319.js.map +0 -1
  640. package/dist/index320.js +0 -8
  641. package/dist/index320.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index241.js","sources":["../../../node_modules/react-remove-scroll/dist/es2015/sidecar.js"],"sourcesContent":["import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n"],"names":["SideCar","exportSidecar","effectCar","RemoveScrollSideCar"],"mappings":";;;AAGA,MAAAA,IAAeC,EAAcC,GAAWC,CAAmB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index241.js","names":["React","PopperPrimitive.Root","PopperPrimitive.Anchor","PortalPrimitive","ReactDOM","RemoveScroll","PopperPrimitive.Content","PopperPrimitive.Arrow"],"sources":["../../../node_modules/@radix-ui/react-select/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/select.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { VISUALLY_HIDDEN_STYLES } from \"@radix-ui/react-visually-hidden\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar OPEN_KEYS = [\" \", \"Enter\", \"ArrowUp\", \"ArrowDown\"];\nvar SELECTION_KEYS = [\" \", \"Enter\"];\nvar SELECT_NAME = \"Select\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(SELECT_NAME);\nvar [createSelectContext, createSelectScope] = createContextScope(SELECT_NAME, [\n createCollectionScope,\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME);\nvar [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME);\nvar Select = (props) => {\n const {\n __scopeSelect,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n value: valueProp,\n defaultValue,\n onValueChange,\n dir,\n name,\n autoComplete,\n disabled,\n required,\n form\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const [trigger, setTrigger] = React.useState(null);\n const [valueNode, setValueNode] = React.useState(null);\n const [valueNodeHasChildren, setValueNodeHasChildren] = React.useState(false);\n const direction = useDirection(dir);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: SELECT_NAME\n });\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n caller: SELECT_NAME\n });\n const triggerPointerDownPosRef = React.useRef(null);\n const isFormControl = trigger ? form || !!trigger.closest(\"form\") : true;\n const [nativeOptionsSet, setNativeOptionsSet] = React.useState(/* @__PURE__ */ new Set());\n const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(\";\");\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsxs(\n SelectProvider,\n {\n required,\n scope: __scopeSelect,\n trigger,\n onTriggerChange: setTrigger,\n valueNode,\n onValueNodeChange: setValueNode,\n valueNodeHasChildren,\n onValueNodeHasChildrenChange: setValueNodeHasChildren,\n contentId: useId(),\n value,\n onValueChange: setValue,\n open,\n onOpenChange: setOpen,\n dir: direction,\n triggerPointerDownPosRef,\n disabled,\n children: [\n /* @__PURE__ */ jsx(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n SelectNativeOptionsProvider,\n {\n scope: props.__scopeSelect,\n onNativeOptionAdd: React.useCallback((option) => {\n setNativeOptionsSet((prev) => new Set(prev).add(option));\n }, []),\n onNativeOptionRemove: React.useCallback((option) => {\n setNativeOptionsSet((prev) => {\n const optionsSet = new Set(prev);\n optionsSet.delete(option);\n return optionsSet;\n });\n }, []),\n children\n }\n ) }),\n isFormControl ? /* @__PURE__ */ jsxs(\n SelectBubbleInput,\n {\n \"aria-hidden\": true,\n required,\n tabIndex: -1,\n name,\n autoComplete,\n value,\n onChange: (event) => setValue(event.target.value),\n disabled,\n form,\n children: [\n value === void 0 ? /* @__PURE__ */ jsx(\"option\", { value: \"\" }) : null,\n Array.from(nativeOptionsSet)\n ]\n },\n nativeSelectKey\n ) : null\n ]\n }\n ) });\n};\nSelect.displayName = SELECT_NAME;\nvar TRIGGER_NAME = \"SelectTrigger\";\nvar SelectTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, disabled = false, ...triggerProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(TRIGGER_NAME, __scopeSelect);\n const isDisabled = context.disabled || disabled;\n const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);\n const getItems = useCollection(__scopeSelect);\n const pointerTypeRef = React.useRef(\"touch\");\n const [searchRef, handleTypeaheadSearch, resetTypeahead] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.value === context.value);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem !== void 0) {\n context.onValueChange(nextItem.value);\n }\n });\n const handleOpen = (pointerEvent) => {\n if (!isDisabled) {\n context.onOpenChange(true);\n resetTypeahead();\n }\n if (pointerEvent) {\n context.triggerPointerDownPosRef.current = {\n x: Math.round(pointerEvent.pageX),\n y: Math.round(pointerEvent.pageY)\n };\n }\n };\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open,\n \"aria-required\": context.required,\n \"aria-autocomplete\": \"none\",\n dir: context.dir,\n \"data-state\": context.open ? \"open\" : \"closed\",\n disabled: isDisabled,\n \"data-disabled\": isDisabled ? \"\" : void 0,\n \"data-placeholder\": shouldShowPlaceholder(context.value) ? \"\" : void 0,\n ...triggerProps,\n ref: composedRefs,\n onClick: composeEventHandlers(triggerProps.onClick, (event) => {\n event.currentTarget.focus();\n if (pointerTypeRef.current !== \"mouse\") {\n handleOpen(event);\n }\n }),\n onPointerDown: composeEventHandlers(triggerProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n }\n if (event.button === 0 && event.ctrlKey === false && event.pointerType === \"mouse\") {\n handleOpen(event);\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(triggerProps.onKeyDown, (event) => {\n const isTypingAhead = searchRef.current !== \"\";\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if (isTypingAhead && event.key === \" \") return;\n if (OPEN_KEYS.includes(event.key)) {\n handleOpen();\n event.preventDefault();\n }\n })\n }\n ) });\n }\n);\nSelectTrigger.displayName = TRIGGER_NAME;\nvar VALUE_NAME = \"SelectValue\";\nvar SelectValue = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, children, placeholder = \"\", ...valueProps } = props;\n const context = useSelectContext(VALUE_NAME, __scopeSelect);\n const { onValueNodeHasChildrenChange } = context;\n const hasChildren = children !== void 0;\n const composedRefs = useComposedRefs(forwardedRef, context.onValueNodeChange);\n useLayoutEffect(() => {\n onValueNodeHasChildrenChange(hasChildren);\n }, [onValueNodeHasChildrenChange, hasChildren]);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...valueProps,\n ref: composedRefs,\n style: { pointerEvents: \"none\" },\n children: shouldShowPlaceholder(context.value) ? /* @__PURE__ */ jsx(Fragment, { children: placeholder }) : children\n }\n );\n }\n);\nSelectValue.displayName = VALUE_NAME;\nvar ICON_NAME = \"SelectIcon\";\nvar SelectIcon = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, children, ...iconProps } = props;\n return /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...iconProps, ref: forwardedRef, children: children || \"\\u25BC\" });\n }\n);\nSelectIcon.displayName = ICON_NAME;\nvar PORTAL_NAME = \"SelectPortal\";\nvar SelectPortal = (props) => {\n return /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, ...props });\n};\nSelectPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"SelectContent\";\nvar SelectContent = React.forwardRef(\n (props, forwardedRef) => {\n const context = useSelectContext(CONTENT_NAME, props.__scopeSelect);\n const [fragment, setFragment] = React.useState();\n useLayoutEffect(() => {\n setFragment(new DocumentFragment());\n }, []);\n if (!context.open) {\n const frag = fragment;\n return frag ? ReactDOM.createPortal(\n /* @__PURE__ */ jsx(SelectContentProvider, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(\"div\", { children: props.children }) }) }),\n frag\n ) : null;\n }\n return /* @__PURE__ */ jsx(SelectContentImpl, { ...props, ref: forwardedRef });\n }\n);\nSelectContent.displayName = CONTENT_NAME;\nvar CONTENT_MARGIN = 10;\nvar [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME);\nvar CONTENT_IMPL_NAME = \"SelectContentImpl\";\nvar Slot = createSlot(\"SelectContent.RemoveScroll\");\nvar SelectContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n position = \"item-aligned\",\n onCloseAutoFocus,\n onEscapeKeyDown,\n onPointerDownOutside,\n //\n // PopperContent props\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions,\n //\n ...contentProps\n } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const [content, setContent] = React.useState(null);\n const [viewport, setViewport] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const [selectedItem, setSelectedItem] = React.useState(null);\n const [selectedItemText, setSelectedItemText] = React.useState(\n null\n );\n const getItems = useCollection(__scopeSelect);\n const [isPositioned, setIsPositioned] = React.useState(false);\n const firstValidItemFoundRef = React.useRef(false);\n React.useEffect(() => {\n if (content) return hideOthers(content);\n }, [content]);\n useFocusGuards();\n const focusFirst = React.useCallback(\n (candidates) => {\n const [firstItem, ...restItems] = getItems().map((item) => item.ref.current);\n const [lastItem] = restItems.slice(-1);\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate?.scrollIntoView({ block: \"nearest\" });\n if (candidate === firstItem && viewport) viewport.scrollTop = 0;\n if (candidate === lastItem && viewport) viewport.scrollTop = viewport.scrollHeight;\n candidate?.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n },\n [getItems, viewport]\n );\n const focusSelectedItem = React.useCallback(\n () => focusFirst([selectedItem, content]),\n [focusFirst, selectedItem, content]\n );\n React.useEffect(() => {\n if (isPositioned) {\n focusSelectedItem();\n }\n }, [isPositioned, focusSelectedItem]);\n const { onOpenChange, triggerPointerDownPosRef } = context;\n React.useEffect(() => {\n if (content) {\n let pointerMoveDelta = { x: 0, y: 0 };\n const handlePointerMove = (event) => {\n pointerMoveDelta = {\n x: Math.abs(Math.round(event.pageX) - (triggerPointerDownPosRef.current?.x ?? 0)),\n y: Math.abs(Math.round(event.pageY) - (triggerPointerDownPosRef.current?.y ?? 0))\n };\n };\n const handlePointerUp = (event) => {\n if (pointerMoveDelta.x <= 10 && pointerMoveDelta.y <= 10) {\n event.preventDefault();\n } else {\n if (!content.contains(event.target)) {\n onOpenChange(false);\n }\n }\n document.removeEventListener(\"pointermove\", handlePointerMove);\n triggerPointerDownPosRef.current = null;\n };\n if (triggerPointerDownPosRef.current !== null) {\n document.addEventListener(\"pointermove\", handlePointerMove);\n document.addEventListener(\"pointerup\", handlePointerUp, { capture: true, once: true });\n }\n return () => {\n document.removeEventListener(\"pointermove\", handlePointerMove);\n document.removeEventListener(\"pointerup\", handlePointerUp, { capture: true });\n };\n }\n }, [content, onOpenChange, triggerPointerDownPosRef]);\n React.useEffect(() => {\n const close = () => onOpenChange(false);\n window.addEventListener(\"blur\", close);\n window.addEventListener(\"resize\", close);\n return () => {\n window.removeEventListener(\"blur\", close);\n window.removeEventListener(\"resize\", close);\n };\n }, [onOpenChange]);\n const [searchRef, handleTypeaheadSearch] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.ref.current === document.activeElement);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem) {\n setTimeout(() => nextItem.ref.current.focus());\n }\n });\n const itemRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItem(node);\n if (isFirstValidItem) firstValidItemFoundRef.current = true;\n }\n },\n [context.value]\n );\n const handleItemLeave = React.useCallback(() => content?.focus(), [content]);\n const itemTextRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItemText(node);\n }\n },\n [context.value]\n );\n const SelectPosition = position === \"popper\" ? SelectPopperPosition : SelectItemAlignedPosition;\n const popperContentProps = SelectPosition === SelectPopperPosition ? {\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions\n } : {};\n return /* @__PURE__ */ jsx(\n SelectContentProvider,\n {\n scope: __scopeSelect,\n content,\n viewport,\n onViewportChange: setViewport,\n itemRefCallback,\n selectedItem,\n onItemLeave: handleItemLeave,\n itemTextRefCallback,\n focusSelectedItem,\n selectedItemText,\n position,\n isPositioned,\n searchRef,\n children: /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n trapped: context.open,\n onMountAutoFocus: (event) => {\n event.preventDefault();\n },\n onUnmountAutoFocus: composeEventHandlers(onCloseAutoFocus, (event) => {\n context.trigger?.focus({ preventScroll: true });\n event.preventDefault();\n }),\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: true,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: () => context.onOpenChange(false),\n children: /* @__PURE__ */ jsx(\n SelectPosition,\n {\n role: \"listbox\",\n id: context.contentId,\n \"data-state\": context.open ? \"open\" : \"closed\",\n dir: context.dir,\n onContextMenu: (event) => event.preventDefault(),\n ...contentProps,\n ...popperContentProps,\n onPlaced: () => setIsPositioned(true),\n ref: composedRefs,\n style: {\n // flex layout so we can place the scroll buttons properly\n display: \"flex\",\n flexDirection: \"column\",\n // reset the outline by default as the content MAY get focused\n outline: \"none\",\n ...contentProps.style\n },\n onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if ([\"ArrowUp\", \"ArrowDown\", \"Home\", \"End\"].includes(event.key)) {\n const items = getItems().filter((item) => !item.disabled);\n let candidateNodes = items.map((item) => item.ref.current);\n if ([\"ArrowUp\", \"End\"].includes(event.key)) {\n candidateNodes = candidateNodes.slice().reverse();\n }\n if ([\"ArrowUp\", \"ArrowDown\"].includes(event.key)) {\n const currentElement = event.target;\n const currentIndex = candidateNodes.indexOf(currentElement);\n candidateNodes = candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n event.preventDefault();\n }\n })\n }\n )\n }\n )\n }\n ) })\n }\n );\n }\n);\nSelectContentImpl.displayName = CONTENT_IMPL_NAME;\nvar ITEM_ALIGNED_POSITION_NAME = \"SelectItemAlignedPosition\";\nvar SelectItemAlignedPosition = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onPlaced, ...popperProps } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(CONTENT_NAME, __scopeSelect);\n const [contentWrapper, setContentWrapper] = React.useState(null);\n const [content, setContent] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const getItems = useCollection(__scopeSelect);\n const shouldExpandOnScrollRef = React.useRef(false);\n const shouldRepositionRef = React.useRef(true);\n const { viewport, selectedItem, selectedItemText, focusSelectedItem } = contentContext;\n const position = React.useCallback(() => {\n if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {\n const triggerRect = context.trigger.getBoundingClientRect();\n const contentRect = content.getBoundingClientRect();\n const valueNodeRect = context.valueNode.getBoundingClientRect();\n const itemTextRect = selectedItemText.getBoundingClientRect();\n if (context.dir !== \"rtl\") {\n const itemTextOffset = itemTextRect.left - contentRect.left;\n const left = valueNodeRect.left - itemTextOffset;\n const leftDelta = triggerRect.left - left;\n const minContentWidth = triggerRect.width + leftDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const rightEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedLeft = clamp(left, [\n CONTENT_MARGIN,\n // Prevents the content from going off the starting edge of the\n // viewport. It may still go off the ending edge, but this can be\n // controlled by the user since they may want to manage overflow in a\n // specific way.\n // https://github.com/radix-ui/primitives/issues/2049\n Math.max(CONTENT_MARGIN, rightEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.left = clampedLeft + \"px\";\n } else {\n const itemTextOffset = contentRect.right - itemTextRect.right;\n const right = window.innerWidth - valueNodeRect.right - itemTextOffset;\n const rightDelta = window.innerWidth - triggerRect.right - right;\n const minContentWidth = triggerRect.width + rightDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const leftEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedRight = clamp(right, [\n CONTENT_MARGIN,\n Math.max(CONTENT_MARGIN, leftEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.right = clampedRight + \"px\";\n }\n const items = getItems();\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const itemsHeight = viewport.scrollHeight;\n const contentStyles = window.getComputedStyle(content);\n const contentBorderTopWidth = parseInt(contentStyles.borderTopWidth, 10);\n const contentPaddingTop = parseInt(contentStyles.paddingTop, 10);\n const contentBorderBottomWidth = parseInt(contentStyles.borderBottomWidth, 10);\n const contentPaddingBottom = parseInt(contentStyles.paddingBottom, 10);\n const fullContentHeight = contentBorderTopWidth + contentPaddingTop + itemsHeight + contentPaddingBottom + contentBorderBottomWidth;\n const minContentHeight = Math.min(selectedItem.offsetHeight * 5, fullContentHeight);\n const viewportStyles = window.getComputedStyle(viewport);\n const viewportPaddingTop = parseInt(viewportStyles.paddingTop, 10);\n const viewportPaddingBottom = parseInt(viewportStyles.paddingBottom, 10);\n const topEdgeToTriggerMiddle = triggerRect.top + triggerRect.height / 2 - CONTENT_MARGIN;\n const triggerMiddleToBottomEdge = availableHeight - topEdgeToTriggerMiddle;\n const selectedItemHalfHeight = selectedItem.offsetHeight / 2;\n const itemOffsetMiddle = selectedItem.offsetTop + selectedItemHalfHeight;\n const contentTopToItemMiddle = contentBorderTopWidth + contentPaddingTop + itemOffsetMiddle;\n const itemMiddleToContentBottom = fullContentHeight - contentTopToItemMiddle;\n const willAlignWithoutTopOverflow = contentTopToItemMiddle <= topEdgeToTriggerMiddle;\n if (willAlignWithoutTopOverflow) {\n const isLastItem = items.length > 0 && selectedItem === items[items.length - 1].ref.current;\n contentWrapper.style.bottom = \"0px\";\n const viewportOffsetBottom = content.clientHeight - viewport.offsetTop - viewport.offsetHeight;\n const clampedTriggerMiddleToBottomEdge = Math.max(\n triggerMiddleToBottomEdge,\n selectedItemHalfHeight + // viewport might have padding bottom, include it to avoid a scrollable viewport\n (isLastItem ? viewportPaddingBottom : 0) + viewportOffsetBottom + contentBorderBottomWidth\n );\n const height = contentTopToItemMiddle + clampedTriggerMiddleToBottomEdge;\n contentWrapper.style.height = height + \"px\";\n } else {\n const isFirstItem = items.length > 0 && selectedItem === items[0].ref.current;\n contentWrapper.style.top = \"0px\";\n const clampedTopEdgeToTriggerMiddle = Math.max(\n topEdgeToTriggerMiddle,\n contentBorderTopWidth + viewport.offsetTop + // viewport might have padding top, include it to avoid a scrollable viewport\n (isFirstItem ? viewportPaddingTop : 0) + selectedItemHalfHeight\n );\n const height = clampedTopEdgeToTriggerMiddle + itemMiddleToContentBottom;\n contentWrapper.style.height = height + \"px\";\n viewport.scrollTop = contentTopToItemMiddle - topEdgeToTriggerMiddle + viewport.offsetTop;\n }\n contentWrapper.style.margin = `${CONTENT_MARGIN}px 0`;\n contentWrapper.style.minHeight = minContentHeight + \"px\";\n contentWrapper.style.maxHeight = availableHeight + \"px\";\n onPlaced?.();\n requestAnimationFrame(() => shouldExpandOnScrollRef.current = true);\n }\n }, [\n getItems,\n context.trigger,\n context.valueNode,\n contentWrapper,\n content,\n viewport,\n selectedItem,\n selectedItemText,\n context.dir,\n onPlaced\n ]);\n useLayoutEffect(() => position(), [position]);\n const [contentZIndex, setContentZIndex] = React.useState();\n useLayoutEffect(() => {\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [content]);\n const handleScrollButtonChange = React.useCallback(\n (node) => {\n if (node && shouldRepositionRef.current === true) {\n position();\n focusSelectedItem?.();\n shouldRepositionRef.current = false;\n }\n },\n [position, focusSelectedItem]\n );\n return /* @__PURE__ */ jsx(\n SelectViewportProvider,\n {\n scope: __scopeSelect,\n contentWrapper,\n shouldExpandOnScrollRef,\n onScrollButtonChange: handleScrollButtonChange,\n children: /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: setContentWrapper,\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"fixed\",\n zIndex: contentZIndex\n },\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...popperProps,\n ref: composedRefs,\n style: {\n // When we get the height of the content, it includes borders. If we were to set\n // the height without having `boxSizing: 'border-box'` it would be too big.\n boxSizing: \"border-box\",\n // We need to ensure the content doesn't get taller than the wrapper\n maxHeight: \"100%\",\n ...popperProps.style\n }\n }\n )\n }\n )\n }\n );\n});\nSelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;\nvar POPPER_POSITION_NAME = \"SelectPopperPosition\";\nvar SelectPopperPosition = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeSelect,\n align = \"start\",\n collisionPadding = CONTENT_MARGIN,\n ...popperProps\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n return /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...popperProps,\n ref: forwardedRef,\n align,\n collisionPadding,\n style: {\n // Ensure border-box for floating-ui calculations\n boxSizing: \"border-box\",\n ...popperProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-select-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-select-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-select-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-select-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-select-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n );\n});\nSelectPopperPosition.displayName = POPPER_POSITION_NAME;\nvar [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME, {});\nvar VIEWPORT_NAME = \"SelectViewport\";\nvar SelectViewport = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, nonce, ...viewportProps } = props;\n const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);\n const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);\n const composedRefs = useComposedRefs(forwardedRef, contentContext.onViewportChange);\n const prevScrollTopRef = React.useRef(0);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-select-viewport\": \"\",\n role: \"presentation\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n // we use position: 'relative' here on the `viewport` so that when we call\n // `selectedItem.offsetTop` in calculations, the offset is relative to the viewport\n // (independent of the scrollUpButton).\n position: \"relative\",\n flex: 1,\n // Viewport should only be scrollable in the vertical direction.\n // This won't work in vertical writing modes, so we'll need to\n // revisit this if/when that is supported\n // https://developer.chrome.com/blog/vertical-form-controls\n overflow: \"hidden auto\",\n ...viewportProps.style\n },\n onScroll: composeEventHandlers(viewportProps.onScroll, (event) => {\n const viewport = event.currentTarget;\n const { contentWrapper, shouldExpandOnScrollRef } = viewportContext;\n if (shouldExpandOnScrollRef?.current && contentWrapper) {\n const scrolledBy = Math.abs(prevScrollTopRef.current - viewport.scrollTop);\n if (scrolledBy > 0) {\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const cssMinHeight = parseFloat(contentWrapper.style.minHeight);\n const cssHeight = parseFloat(contentWrapper.style.height);\n const prevHeight = Math.max(cssMinHeight, cssHeight);\n if (prevHeight < availableHeight) {\n const nextHeight = prevHeight + scrolledBy;\n const clampedNextHeight = Math.min(availableHeight, nextHeight);\n const heightDiff = nextHeight - clampedNextHeight;\n contentWrapper.style.height = clampedNextHeight + \"px\";\n if (contentWrapper.style.bottom === \"0px\") {\n viewport.scrollTop = heightDiff > 0 ? heightDiff : 0;\n contentWrapper.style.justifyContent = \"flex-end\";\n }\n }\n }\n }\n prevScrollTopRef.current = viewport.scrollTop;\n })\n }\n ) })\n ] });\n }\n);\nSelectViewport.displayName = VIEWPORT_NAME;\nvar GROUP_NAME = \"SelectGroup\";\nvar [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME);\nvar SelectGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...groupProps } = props;\n const groupId = useId();\n return /* @__PURE__ */ jsx(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsx(Primitive.div, { role: \"group\", \"aria-labelledby\": groupId, ...groupProps, ref: forwardedRef }) });\n }\n);\nSelectGroup.displayName = GROUP_NAME;\nvar LABEL_NAME = \"SelectLabel\";\nvar SelectLabel = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...labelProps } = props;\n const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);\n return /* @__PURE__ */ jsx(Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });\n }\n);\nSelectLabel.displayName = LABEL_NAME;\nvar ITEM_NAME = \"SelectItem\";\nvar [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME);\nvar SelectItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n value,\n disabled = false,\n textValue: textValueProp,\n ...itemProps\n } = props;\n const context = useSelectContext(ITEM_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_NAME, __scopeSelect);\n const isSelected = context.value === value;\n const [textValue, setTextValue] = React.useState(textValueProp ?? \"\");\n const [isFocused, setIsFocused] = React.useState(false);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => contentContext.itemRefCallback?.(node, value, disabled)\n );\n const textId = useId();\n const pointerTypeRef = React.useRef(\"touch\");\n const handleSelect = () => {\n if (!disabled) {\n context.onValueChange(value);\n context.onOpenChange(false);\n }\n };\n if (value === \"\") {\n throw new Error(\n \"A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.\"\n );\n }\n return /* @__PURE__ */ jsx(\n SelectItemContextProvider,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textId,\n isSelected,\n onItemTextChange: React.useCallback((node) => {\n setTextValue((prevTextValue) => prevTextValue || (node?.textContent ?? \"\").trim());\n }, []),\n children: /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textValue,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"option\",\n \"aria-labelledby\": textId,\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-selected\": isSelected && isFocused,\n \"data-state\": isSelected ? \"checked\" : \"unchecked\",\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n tabIndex: disabled ? void 0 : -1,\n ...itemProps,\n ref: composedRefs,\n onFocus: composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),\n onBlur: composeEventHandlers(itemProps.onBlur, () => setIsFocused(false)),\n onClick: composeEventHandlers(itemProps.onClick, () => {\n if (pointerTypeRef.current !== \"mouse\") handleSelect();\n }),\n onPointerUp: composeEventHandlers(itemProps.onPointerUp, () => {\n if (pointerTypeRef.current === \"mouse\") handleSelect();\n }),\n onPointerDown: composeEventHandlers(itemProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n }),\n onPointerMove: composeEventHandlers(itemProps.onPointerMove, (event) => {\n pointerTypeRef.current = event.pointerType;\n if (disabled) {\n contentContext.onItemLeave?.();\n } else if (pointerTypeRef.current === \"mouse\") {\n event.currentTarget.focus({ preventScroll: true });\n }\n }),\n onPointerLeave: composeEventHandlers(itemProps.onPointerLeave, (event) => {\n if (event.currentTarget === document.activeElement) {\n contentContext.onItemLeave?.();\n }\n }),\n onKeyDown: composeEventHandlers(itemProps.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef?.current !== \"\";\n if (isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) handleSelect();\n if (event.key === \" \") event.preventDefault();\n })\n }\n )\n }\n )\n }\n );\n }\n);\nSelectItem.displayName = ITEM_NAME;\nvar ITEM_TEXT_NAME = \"SelectItemText\";\nvar SelectItemText = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, ...itemTextProps } = props;\n const context = useSelectContext(ITEM_TEXT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_TEXT_NAME, __scopeSelect);\n const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);\n const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);\n const [itemTextNode, setItemTextNode] = React.useState(null);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => setItemTextNode(node),\n itemContext.onItemTextChange,\n (node) => contentContext.itemTextRefCallback?.(node, itemContext.value, itemContext.disabled)\n );\n const textContent = itemTextNode?.textContent;\n const nativeOption = React.useMemo(\n () => /* @__PURE__ */ jsx(\"option\", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value),\n [itemContext.disabled, itemContext.value, textContent]\n );\n const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;\n useLayoutEffect(() => {\n onNativeOptionAdd(nativeOption);\n return () => onNativeOptionRemove(nativeOption);\n }, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),\n itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM.createPortal(itemTextProps.children, context.valueNode) : null\n ] });\n }\n);\nSelectItemText.displayName = ITEM_TEXT_NAME;\nvar ITEM_INDICATOR_NAME = \"SelectItemIndicator\";\nvar SelectItemIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...itemIndicatorProps } = props;\n const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);\n return itemContext.isSelected ? /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...itemIndicatorProps, ref: forwardedRef }) : null;\n }\n);\nSelectItemIndicator.displayName = ITEM_INDICATOR_NAME;\nvar SCROLL_UP_BUTTON_NAME = \"SelectScrollUpButton\";\nvar SelectScrollUpButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const [canScrollUp, setCanScrollUp] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const canScrollUp2 = viewport.scrollTop > 0;\n setCanScrollUp(canScrollUp2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollUp ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop - selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;\nvar SCROLL_DOWN_BUTTON_NAME = \"SelectScrollDownButton\";\nvar SelectScrollDownButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const [canScrollDown, setCanScrollDown] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const maxScroll = viewport.scrollHeight - viewport.clientHeight;\n const canScrollDown2 = Math.ceil(viewport.scrollTop) < maxScroll;\n setCanScrollDown(canScrollDown2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollDown ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop + selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;\nvar SelectScrollButtonImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onAutoScroll, ...scrollIndicatorProps } = props;\n const contentContext = useSelectContentContext(\"SelectScrollButton\", __scopeSelect);\n const autoScrollTimerRef = React.useRef(null);\n const getItems = useCollection(__scopeSelect);\n const clearAutoScrollTimer = React.useCallback(() => {\n if (autoScrollTimerRef.current !== null) {\n window.clearInterval(autoScrollTimerRef.current);\n autoScrollTimerRef.current = null;\n }\n }, []);\n React.useEffect(() => {\n return () => clearAutoScrollTimer();\n }, [clearAutoScrollTimer]);\n useLayoutEffect(() => {\n const activeItem = getItems().find((item) => item.ref.current === document.activeElement);\n activeItem?.ref.current?.scrollIntoView({ block: \"nearest\" });\n }, [getItems]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"aria-hidden\": true,\n ...scrollIndicatorProps,\n ref: forwardedRef,\n style: { flexShrink: 0, ...scrollIndicatorProps.style },\n onPointerDown: composeEventHandlers(scrollIndicatorProps.onPointerDown, () => {\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerMove: composeEventHandlers(scrollIndicatorProps.onPointerMove, () => {\n contentContext.onItemLeave?.();\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerLeave: composeEventHandlers(scrollIndicatorProps.onPointerLeave, () => {\n clearAutoScrollTimer();\n })\n }\n );\n});\nvar SEPARATOR_NAME = \"SelectSeparator\";\nvar SelectSeparator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...separatorProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { \"aria-hidden\": true, ...separatorProps, ref: forwardedRef });\n }\n);\nSelectSeparator.displayName = SEPARATOR_NAME;\nvar ARROW_NAME = \"SelectArrow\";\nvar SelectArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(ARROW_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ARROW_NAME, __scopeSelect);\n return context.open && contentContext.position === \"popper\" ? /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;\n }\n);\nSelectArrow.displayName = ARROW_NAME;\nvar BUBBLE_INPUT_NAME = \"SelectBubbleInput\";\nvar SelectBubbleInput = React.forwardRef(\n ({ __scopeSelect, value, ...props }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const prevValue = usePrevious(value);\n React.useEffect(() => {\n const select = ref.current;\n if (!select) return;\n const selectProto = window.HTMLSelectElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n selectProto,\n \"value\"\n );\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"change\", { bubbles: true });\n setValue.call(select, value);\n select.dispatchEvent(event);\n }\n }, [prevValue, value]);\n return /* @__PURE__ */ jsx(\n Primitive.select,\n {\n ...props,\n style: { ...VISUALLY_HIDDEN_STYLES, ...props.style },\n ref: composedRefs,\n defaultValue: value\n }\n );\n }\n);\nSelectBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction shouldShowPlaceholder(value) {\n return value === \"\" || value === void 0;\n}\nfunction useTypeaheadSearch(onSearchChange) {\n const handleSearchChange = useCallbackRef(onSearchChange);\n const searchRef = React.useRef(\"\");\n const timerRef = React.useRef(0);\n const handleTypeaheadSearch = React.useCallback(\n (key) => {\n const search = searchRef.current + key;\n handleSearchChange(search);\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = window.setTimeout(() => updateSearch(\"\"), 1e3);\n })(search);\n },\n [handleSearchChange]\n );\n const resetTypeahead = React.useCallback(() => {\n searchRef.current = \"\";\n window.clearTimeout(timerRef.current);\n }, []);\n React.useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n return [searchRef, handleTypeaheadSearch, resetTypeahead];\n}\nfunction findNextItem(items, search, currentItem) {\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentItemIndex = currentItem ? items.indexOf(currentItem) : -1;\n let wrappedItems = wrapArray(items, Math.max(currentItemIndex, 0));\n const excludeCurrentItem = normalizedSearch.length === 1;\n if (excludeCurrentItem) wrappedItems = wrappedItems.filter((v) => v !== currentItem);\n const nextItem = wrappedItems.find(\n (item) => item.textValue.toLowerCase().startsWith(normalizedSearch.toLowerCase())\n );\n return nextItem !== currentItem ? nextItem : void 0;\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root2 = Select;\nvar Trigger = SelectTrigger;\nvar Value = SelectValue;\nvar Icon = SelectIcon;\nvar Portal = SelectPortal;\nvar Content2 = SelectContent;\nvar Viewport = SelectViewport;\nvar Group = SelectGroup;\nvar Label = SelectLabel;\nvar Item = SelectItem;\nvar ItemText = SelectItemText;\nvar ItemIndicator = SelectItemIndicator;\nvar ScrollUpButton = SelectScrollUpButton;\nvar ScrollDownButton = SelectScrollDownButton;\nvar Separator = SelectSeparator;\nvar Arrow2 = SelectArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Group,\n Icon,\n Item,\n ItemIndicator,\n ItemText,\n Label,\n Portal,\n Root2 as Root,\n ScrollDownButton,\n ScrollUpButton,\n Select,\n SelectArrow,\n SelectContent,\n SelectGroup,\n SelectIcon,\n SelectItem,\n SelectItemIndicator,\n SelectItemText,\n SelectLabel,\n SelectPortal,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n SelectViewport,\n Separator,\n Trigger,\n Value,\n Viewport,\n createSelectScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"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"}
package/dist/index242.js CHANGED
@@ -1,71 +1,256 @@
1
- import * as i from "react";
2
- import { useComposedRefs as O } from "./index53.js";
3
- import { useLayoutEffect as A } from "./index72.js";
4
- function E(n, e) {
5
- return i.useReducer((t, r) => e[t][r] ?? t, n);
6
- }
7
- var T = (n) => {
8
- const { present: e, children: t } = n, r = R(e), a = typeof t == "function" ? t({ present: r.isPresent }) : i.Children.only(t), c = O(r.ref, v(a));
9
- return typeof t == "function" || r.isPresent ? i.cloneElement(a, { ref: c }) : null;
10
- };
11
- T.displayName = "Presence";
12
- function R(n) {
13
- const [e, t] = i.useState(), r = i.useRef(null), a = i.useRef(n), c = i.useRef("none"), p = n ? "mounted" : "unmounted", [N, s] = E(p, {
14
- mounted: {
15
- UNMOUNT: "unmounted",
16
- ANIMATION_OUT: "unmountSuspended"
17
- },
18
- unmountSuspended: {
19
- MOUNT: "mounted",
20
- ANIMATION_END: "unmounted"
21
- },
22
- unmounted: {
23
- MOUNT: "mounted"
24
- }
25
- });
26
- return i.useEffect(() => {
27
- const o = l(r.current);
28
- c.current = N === "mounted" ? o : "none";
29
- }, [N]), A(() => {
30
- const o = r.current, m = a.current;
31
- if (m !== n) {
32
- const f = c.current, u = l(o);
33
- n ? s("MOUNT") : u === "none" || o?.display === "none" ? s("UNMOUNT") : s(m && f !== u ? "ANIMATION_OUT" : "UNMOUNT"), a.current = n;
34
- }
35
- }, [n, s]), A(() => {
36
- if (e) {
37
- let o;
38
- const m = e.ownerDocument.defaultView ?? window, d = (u) => {
39
- const g = l(r.current).includes(CSS.escape(u.animationName));
40
- if (u.target === e && g && (s("ANIMATION_END"), !a.current)) {
41
- const y = e.style.animationFillMode;
42
- e.style.animationFillMode = "forwards", o = m.setTimeout(() => {
43
- e.style.animationFillMode === "forwards" && (e.style.animationFillMode = y);
44
- });
45
- }
46
- }, f = (u) => {
47
- u.target === e && (c.current = l(r.current));
48
- };
49
- return e.addEventListener("animationstart", f), e.addEventListener("animationcancel", d), e.addEventListener("animationend", d), () => {
50
- m.clearTimeout(o), e.removeEventListener("animationstart", f), e.removeEventListener("animationcancel", d), e.removeEventListener("animationend", d);
51
- };
52
- } else
53
- s("ANIMATION_END");
54
- }, [e, s]), {
55
- isPresent: ["mounted", "unmountSuspended"].includes(N),
56
- ref: i.useCallback((o) => {
57
- r.current = o ? getComputedStyle(o) : null, t(o);
58
- }, [])
59
- };
60
- }
61
- function l(n) {
62
- return n?.animationName || "none";
63
- }
64
- function v(n) {
65
- let e = Object.getOwnPropertyDescriptor(n.props, "ref")?.get, t = e && "isReactWarning" in e && e.isReactWarning;
66
- return t ? n.ref : (e = Object.getOwnPropertyDescriptor(n, "ref")?.get, t = e && "isReactWarning" in e && e.isReactWarning, t ? n.props.ref : n.props.ref || n.ref);
67
- }
68
- export {
69
- T as Presence
70
- };
71
- //# sourceMappingURL=index242.js.map
1
+ import { cn as e } from "./index12.js";
2
+ import { Content2 as t, Group as n, Icon as r, Item as i, ItemIndicator as a, ItemText as o, Label as s, Portal as c, Root2 as l, Separator as u, Trigger as d, Value as f, Viewport as p } from "./index241.js";
3
+ import { c as m } from "react/compiler-runtime";
4
+ import * as h from "react";
5
+ import { jsx as g, jsxs as _ } from "react/jsx-runtime";
6
+ import { Check as v, ChevronDown as y, ChevronUp as b } from "lucide-react";
7
+ //#region src/components/Select/index.tsx
8
+ var x = l, S = n, C = f, w = h.forwardRef((t, n) => {
9
+ let i = m(12), a, o, s;
10
+ i[0] === t ? (a = i[1], o = i[2], s = i[3]) : ({className: o, children: a, ...s} = t, i[0] = t, i[1] = a, i[2] = o, i[3] = s);
11
+ let c;
12
+ i[4] === o ? c = i[5] : (c = e("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1", o), i[4] = o, i[5] = c);
13
+ let l;
14
+ i[6] === Symbol.for("react.memo_cache_sentinel") ? (l = /* @__PURE__ */ g(r, {
15
+ asChild: !0,
16
+ children: /* @__PURE__ */ g(y, { className: "h-4 w-4 opacity-50" })
17
+ }), i[6] = l) : l = i[6];
18
+ let u;
19
+ return i[7] !== a || i[8] !== s || i[9] !== n || i[10] !== c ? (u = /* @__PURE__ */ _(d, {
20
+ ref: n,
21
+ className: c,
22
+ ...s,
23
+ children: [a, l]
24
+ }), i[7] = a, i[8] = s, i[9] = n, i[10] = c, i[11] = u) : u = i[11], u;
25
+ });
26
+ w.displayName = d.displayName;
27
+ var T = h.createContext(null), E = h.forwardRef(({ direction: t, speed: n = 400, className: r, children: i, ...a }, o) => {
28
+ let s = h.useContext(T), [c, l] = h.useState(!0), u = h.useRef(void 0), d = h.useRef(void 0), f = h.useRef(!1), p = s?.viewport, m = h.useCallback(() => {
29
+ if (!p) {
30
+ l(!0);
31
+ return;
32
+ }
33
+ let { scrollTop: e, scrollHeight: n, clientHeight: r } = p, i = e > 2, a = e < n - r - 2;
34
+ if (!(n > r + 2)) {
35
+ l(!0);
36
+ return;
37
+ }
38
+ l(t === "up" ? !i : !a);
39
+ }, [p, t]);
40
+ h.useEffect(() => {
41
+ if (!p) return;
42
+ m();
43
+ let e = () => m(), t = () => m();
44
+ p.addEventListener("scroll", e, { passive: !0 });
45
+ let n = new ResizeObserver(t);
46
+ n.observe(p);
47
+ let r = new MutationObserver(t);
48
+ return r.observe(p, {
49
+ childList: !0,
50
+ subtree: !0
51
+ }), () => {
52
+ p.removeEventListener("scroll", e), n.disconnect(), r.disconnect();
53
+ };
54
+ }, [p, m]);
55
+ let _ = h.useCallback(() => {
56
+ u.current &&= (cancelAnimationFrame(u.current), void 0), f.current = !1, d.current = void 0;
57
+ }, []), v = h.useCallback((e) => {
58
+ if (!p || c || !f.current) {
59
+ _();
60
+ return;
61
+ }
62
+ d.current ||= e;
63
+ let r = n * (e - d.current) / 1e3;
64
+ if (r < .1) {
65
+ u.current = requestAnimationFrame(v);
66
+ return;
67
+ }
68
+ let i = p.scrollTop, a = p.scrollHeight - p.clientHeight, o;
69
+ o = t === "up" ? Math.max(0, i - r) : Math.min(a, i + r), p.scrollTo({ top: o }), d.current = e, (t === "up" ? o > 1 : o < a - 1) && Math.abs(o - i) > .01 ? u.current = requestAnimationFrame(v) : (_(), setTimeout(m, 16));
70
+ }, [
71
+ p,
72
+ c,
73
+ t,
74
+ n,
75
+ _,
76
+ m
77
+ ]), y = h.useCallback(() => {
78
+ c || !p || f.current || (f.current = !0, d.current = void 0, u.current = requestAnimationFrame(v));
79
+ }, [
80
+ c,
81
+ p,
82
+ v
83
+ ]);
84
+ return h.useEffect(() => () => _(), [_]), /* @__PURE__ */ g("div", {
85
+ ...a,
86
+ ref: o,
87
+ className: e("flex items-center justify-center py-1 select-none", c ? "cursor-default opacity-40" : "cursor-pointer opacity-100 hover:bg-accent/20", r),
88
+ onPointerEnter: (e) => {
89
+ a.onPointerEnter?.(e), c || y();
90
+ },
91
+ onPointerMove: (e) => {
92
+ a.onPointerMove?.(e), !c && !f.current && y();
93
+ },
94
+ onPointerLeave: (e) => {
95
+ a.onPointerLeave?.(e), _();
96
+ },
97
+ children: i
98
+ });
99
+ });
100
+ E.displayName = "ScrollButtonImpl";
101
+ var D = h.forwardRef((e, t) => {
102
+ let n = m(8), r, i;
103
+ n[0] === e ? (r = n[1], i = n[2]) : ({className: r, ...i} = e, n[0] = e, n[1] = r, n[2] = i);
104
+ let a;
105
+ n[3] === Symbol.for("react.memo_cache_sentinel") ? (a = /* @__PURE__ */ g(b, { className: "h-4 w-4" }), n[3] = a) : a = n[3];
106
+ let o;
107
+ return n[4] !== r || n[5] !== i || n[6] !== t ? (o = /* @__PURE__ */ g(E, {
108
+ ref: t,
109
+ direction: "up",
110
+ className: r,
111
+ ...i,
112
+ children: a
113
+ }), n[4] = r, n[5] = i, n[6] = t, n[7] = o) : o = n[7], o;
114
+ });
115
+ D.displayName = "SelectScrollUpButton";
116
+ var O = h.forwardRef((e, t) => {
117
+ let n = m(8), r, i;
118
+ n[0] === e ? (r = n[1], i = n[2]) : ({className: r, ...i} = e, n[0] = e, n[1] = r, n[2] = i);
119
+ let a;
120
+ n[3] === Symbol.for("react.memo_cache_sentinel") ? (a = /* @__PURE__ */ g(y, { className: "h-4 w-4" }), n[3] = a) : a = n[3];
121
+ let o;
122
+ return n[4] !== r || n[5] !== i || n[6] !== t ? (o = /* @__PURE__ */ g(E, {
123
+ ref: t,
124
+ direction: "down",
125
+ className: r,
126
+ ...i,
127
+ children: a
128
+ }), n[4] = r, n[5] = i, n[6] = t, n[7] = o) : o = n[7], o;
129
+ });
130
+ O.displayName = "SelectScrollDownButton";
131
+ var k = h.forwardRef((n, r) => {
132
+ let i = m(32), a, o, s, l, u;
133
+ i[0] === n ? (a = i[1], o = i[2], s = i[3], l = i[4], u = i[5]) : ({className: s, children: o, position: u, autoScroll: a, ...l} = n, i[0] = n, i[1] = a, i[2] = o, i[3] = s, i[4] = l, i[5] = u);
134
+ let d = u === void 0 ? "popper" : u, [f, v] = h.useState(null), y;
135
+ i[6] === Symbol.for("react.memo_cache_sentinel") ? (y = (e) => {
136
+ v(e);
137
+ }, i[6] = y) : y = i[6];
138
+ let b = y, x, S;
139
+ i[7] !== a || i[8] !== f ? (x = () => {
140
+ if (!f || !a) return;
141
+ let e = requestAnimationFrame(() => {
142
+ let e = f.querySelector("[role=\"option\"][data-state=\"checked\"]");
143
+ if (e instanceof HTMLElement) {
144
+ let t = e.offsetTop - 8, n = e.offsetTop + e.offsetHeight + 8;
145
+ if (t < f.scrollTop) {
146
+ f.scrollTo({ top: Math.max(0, t) });
147
+ return;
148
+ }
149
+ n > f.scrollTop + f.clientHeight && f.scrollTo({ top: Math.max(0, n - f.clientHeight) });
150
+ return;
151
+ }
152
+ let t = Array.from(f.querySelectorAll("[role=\"option\"]"));
153
+ if (!t.length) return;
154
+ let n, r;
155
+ for (let e of t) {
156
+ if (!e.hasAttribute("data-disabled")) {
157
+ n = e;
158
+ break;
159
+ }
160
+ r = e;
161
+ }
162
+ if (!n) return;
163
+ let i = Math.max(0, (a === "firstEnabledWithContext" && r ? r : n).offsetTop - 8);
164
+ f.scrollTo({ top: i });
165
+ });
166
+ return () => cancelAnimationFrame(e);
167
+ }, S = [f, a], i[7] = a, i[8] = f, i[9] = x, i[10] = S) : (x = i[9], S = i[10]), h.useEffect(x, S);
168
+ let C = d === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", w;
169
+ i[11] !== s || i[12] !== C ? (w = e("relative z-[60] max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", C, s), i[11] = s, i[12] = C, i[13] = w) : w = i[13];
170
+ let E;
171
+ i[14] === f ? E = i[15] : (E = {
172
+ viewport: f,
173
+ setViewport: v
174
+ }, i[14] = f, i[15] = E);
175
+ let k;
176
+ i[16] === Symbol.for("react.memo_cache_sentinel") ? (k = /* @__PURE__ */ g(D, {}), i[16] = k) : k = i[16];
177
+ let A = d === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]", j;
178
+ i[17] === A ? j = i[18] : (j = e("p-1 overflow-y-auto", A), i[17] = A, i[18] = j);
179
+ let M;
180
+ i[19] !== o || i[20] !== j ? (M = /* @__PURE__ */ g(p, {
181
+ ref: b,
182
+ className: j,
183
+ children: o
184
+ }), i[19] = o, i[20] = j, i[21] = M) : M = i[21];
185
+ let N;
186
+ i[22] === Symbol.for("react.memo_cache_sentinel") ? (N = /* @__PURE__ */ g(O, {}), i[22] = N) : N = i[22];
187
+ let P;
188
+ i[23] !== M || i[24] !== E ? (P = /* @__PURE__ */ _(T.Provider, {
189
+ value: E,
190
+ children: [
191
+ k,
192
+ M,
193
+ N
194
+ ]
195
+ }), i[23] = M, i[24] = E, i[25] = P) : P = i[25];
196
+ let F;
197
+ return i[26] !== d || i[27] !== l || i[28] !== r || i[29] !== P || i[30] !== w ? (F = /* @__PURE__ */ g(c, { children: /* @__PURE__ */ g(t, {
198
+ ref: r,
199
+ className: w,
200
+ position: d,
201
+ ...l,
202
+ children: P
203
+ }) }), i[26] = d, i[27] = l, i[28] = r, i[29] = P, i[30] = w, i[31] = F) : F = i[31], F;
204
+ });
205
+ k.displayName = t.displayName;
206
+ var A = h.forwardRef((t, n) => {
207
+ let r = m(9), i, a;
208
+ r[0] === t ? (i = r[1], a = r[2]) : ({className: i, ...a} = t, r[0] = t, r[1] = i, r[2] = a);
209
+ let o;
210
+ r[3] === i ? o = r[4] : (o = e("py-1.5 pl-8 pr-2 text-sm font-semibold", i), r[3] = i, r[4] = o);
211
+ let c;
212
+ return r[5] !== a || r[6] !== n || r[7] !== o ? (c = /* @__PURE__ */ g(s, {
213
+ ref: n,
214
+ className: o,
215
+ ...a
216
+ }), r[5] = a, r[6] = n, r[7] = o, r[8] = c) : c = r[8], c;
217
+ });
218
+ A.displayName = s.displayName;
219
+ var j = h.forwardRef((t, n) => {
220
+ let r = m(14), s, c, l;
221
+ r[0] === t ? (s = r[1], c = r[2], l = r[3]) : ({className: c, children: s, ...l} = t, r[0] = t, r[1] = s, r[2] = c, r[3] = l);
222
+ let u;
223
+ r[4] === c ? u = r[5] : (u = e("relative flex w-full select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 cursor-pointer", c), r[4] = c, r[5] = u);
224
+ let d;
225
+ r[6] === Symbol.for("react.memo_cache_sentinel") ? (d = /* @__PURE__ */ g("span", {
226
+ className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
227
+ children: /* @__PURE__ */ g(a, { children: /* @__PURE__ */ g(v, { className: "h-4 w-4" }) })
228
+ }), r[6] = d) : d = r[6];
229
+ let f;
230
+ r[7] === s ? f = r[8] : (f = /* @__PURE__ */ g(o, { children: s }), r[7] = s, r[8] = f);
231
+ let p;
232
+ return r[9] !== l || r[10] !== n || r[11] !== u || r[12] !== f ? (p = /* @__PURE__ */ _(i, {
233
+ ref: n,
234
+ className: u,
235
+ ...l,
236
+ children: [d, f]
237
+ }), r[9] = l, r[10] = n, r[11] = u, r[12] = f, r[13] = p) : p = r[13], p;
238
+ });
239
+ j.displayName = i.displayName;
240
+ var M = h.forwardRef((t, n) => {
241
+ let r = m(9), i, a;
242
+ r[0] === t ? (i = r[1], a = r[2]) : ({className: i, ...a} = t, r[0] = t, r[1] = i, r[2] = a);
243
+ let o;
244
+ r[3] === i ? o = r[4] : (o = e("-mx-1 my-1 h-px bg-muted", i), r[3] = i, r[4] = o);
245
+ let s;
246
+ return r[5] !== a || r[6] !== n || r[7] !== o ? (s = /* @__PURE__ */ g(u, {
247
+ ref: n,
248
+ className: o,
249
+ ...a
250
+ }), r[5] = a, r[6] = n, r[7] = o, r[8] = s) : s = r[8], s;
251
+ });
252
+ M.displayName = u.displayName;
253
+ //#endregion
254
+ export { x as Select, k as SelectContent, S as SelectGroup, j as SelectItem, A as SelectLabel, O as SelectScrollDownButton, D as SelectScrollUpButton, M as SelectSeparator, w as SelectTrigger, C as SelectValue };
255
+
256
+ //# sourceMappingURL=index242.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index242.js","sources":["../../../node_modules/@radix-ui/react-presence/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/presence.tsx\nimport * as React2 from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\n\n// src/use-state-machine.tsx\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// src/presence.tsx\nvar Presence = (props) => {\n const { present, children } = props;\n const presence = usePresence(present);\n const child = typeof children === \"function\" ? children({ present: presence.isPresent }) : React2.Children.only(children);\n const ref = useComposedRefs(presence.ref, getElementRef(child));\n const forceMount = typeof children === \"function\";\n return forceMount || presence.isPresent ? React2.cloneElement(child, { ref }) : null;\n};\nPresence.displayName = \"Presence\";\nfunction usePresence(present) {\n const [node, setNode] = React2.useState();\n const stylesRef = React2.useRef(null);\n const prevPresentRef = React2.useRef(present);\n const prevAnimationNameRef = React2.useRef(\"none\");\n const initialState = present ? \"mounted\" : \"unmounted\";\n const [state, send] = useStateMachine(initialState, {\n mounted: {\n UNMOUNT: \"unmounted\",\n ANIMATION_OUT: \"unmountSuspended\"\n },\n unmountSuspended: {\n MOUNT: \"mounted\",\n ANIMATION_END: \"unmounted\"\n },\n unmounted: {\n MOUNT: \"mounted\"\n }\n });\n React2.useEffect(() => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n prevAnimationNameRef.current = state === \"mounted\" ? currentAnimationName : \"none\";\n }, [state]);\n useLayoutEffect(() => {\n const styles = stylesRef.current;\n const wasPresent = prevPresentRef.current;\n const hasPresentChanged = wasPresent !== present;\n if (hasPresentChanged) {\n const prevAnimationName = prevAnimationNameRef.current;\n const currentAnimationName = getAnimationName(styles);\n if (present) {\n send(\"MOUNT\");\n } else if (currentAnimationName === \"none\" || styles?.display === \"none\") {\n send(\"UNMOUNT\");\n } else {\n const isAnimating = prevAnimationName !== currentAnimationName;\n if (wasPresent && isAnimating) {\n send(\"ANIMATION_OUT\");\n } else {\n send(\"UNMOUNT\");\n }\n }\n prevPresentRef.current = present;\n }\n }, [present, send]);\n useLayoutEffect(() => {\n if (node) {\n let timeoutId;\n const ownerWindow = node.ownerDocument.defaultView ?? window;\n const handleAnimationEnd = (event) => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n const isCurrentAnimation = currentAnimationName.includes(CSS.escape(event.animationName));\n if (event.target === node && isCurrentAnimation) {\n send(\"ANIMATION_END\");\n if (!prevPresentRef.current) {\n const currentFillMode = node.style.animationFillMode;\n node.style.animationFillMode = \"forwards\";\n timeoutId = ownerWindow.setTimeout(() => {\n if (node.style.animationFillMode === \"forwards\") {\n node.style.animationFillMode = currentFillMode;\n }\n });\n }\n }\n };\n const handleAnimationStart = (event) => {\n if (event.target === node) {\n prevAnimationNameRef.current = getAnimationName(stylesRef.current);\n }\n };\n node.addEventListener(\"animationstart\", handleAnimationStart);\n node.addEventListener(\"animationcancel\", handleAnimationEnd);\n node.addEventListener(\"animationend\", handleAnimationEnd);\n return () => {\n ownerWindow.clearTimeout(timeoutId);\n node.removeEventListener(\"animationstart\", handleAnimationStart);\n node.removeEventListener(\"animationcancel\", handleAnimationEnd);\n node.removeEventListener(\"animationend\", handleAnimationEnd);\n };\n } else {\n send(\"ANIMATION_END\");\n }\n }, [node, send]);\n return {\n isPresent: [\"mounted\", \"unmountSuspended\"].includes(state),\n ref: React2.useCallback((node2) => {\n stylesRef.current = node2 ? getComputedStyle(node2) : null;\n setNode(node2);\n }, [])\n };\n}\nfunction getAnimationName(styles) {\n return styles?.animationName || \"none\";\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nvar Root = Presence;\nexport {\n Presence,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useStateMachine","initialState","machine","React","state","event","Presence","props","present","children","presence","usePresence","child","React2","ref","useComposedRefs","getElementRef","node","setNode","stylesRef","prevPresentRef","prevAnimationNameRef","send","currentAnimationName","getAnimationName","useLayoutEffect","styles","wasPresent","prevAnimationName","timeoutId","ownerWindow","handleAnimationEnd","isCurrentAnimation","currentFillMode","handleAnimationStart","node2","element","getter","mayWarn"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index242.js","names":["React","Check","ChevronDown","ChevronUp","SelectPrimitive","cn","Select","Root","SelectGroup","Group","SelectValue","Value","SelectTrigger","forwardRef","ElementRef","Trigger","ComponentPropsWithoutRef","t0","ref","$","_c","children","className","props","t1","t2","Symbol","for","t3","displayName","ScrollContext","createContext","viewport","HTMLElement","setViewport","vp","ScrollButtonImplProps","HTMLAttributes","HTMLDivElement","direction","speed","ScrollButtonImpl","rest","scrollContext","useContext","disabled","setDisabled","useState","animationRef","useRef","undefined","lastTimeRef","isScrollingRef","checkScrollability","useCallback","scrollTop","scrollHeight","clientHeight","tolerance","canScrollUp","canScrollDown","hasScrollableContent","shouldDisable","useEffect","handleScroll","handleResize","addEventListener","passive","resizeObserver","ResizeObserver","observe","mutationObserver","MutationObserver","childList","subtree","removeEventListener","disconnect","stopScrolling","current","cancelAnimationFrame","smoothScroll","currentTime","deltaTime","distance","requestAnimationFrame","oldScrollTop","maxScroll","newScrollTop","Math","max","min","scrollTo","top","canContinue","abs","setTimeout","startScrolling","e","onPointerEnter","onPointerMove","onPointerLeave","SelectScrollUpButton","SelectScrollDownButton","SelectContentProps","Content","autoScroll","SelectContent","position","node","viewportRef","t4","run","selected","querySelector","targetTop","offsetTop","targetBottom","offsetHeight","viewportBottom","all","Array","from","querySelectorAll","length","firstEnabled","lastDisabledBefore","el","isDisabled","hasAttribute","target","offset","raf","t5","t6","t7","t8","t9","t10","t11","t12","t13","t14","SelectLabel","Label","SelectItem","Item","SelectSeparator","Separator"],"sources":["../src/components/Select/index.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Check, ChevronDown, ChevronUp } from \"lucide-react\"\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nconst Select = SelectPrimitive.Root\nconst SelectGroup = SelectPrimitive.Group\nconst SelectValue = SelectPrimitive.Value\n\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n \"flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1\",\n className\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n))\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\n\nconst ScrollContext = React.createContext<{\n viewport: HTMLElement | null\n setViewport: (vp: HTMLElement | null) => void\n} | null>(null)\n\ninterface ScrollButtonImplProps extends React.HTMLAttributes<HTMLDivElement> {\n direction: \"up\" | \"down\"\n speed?: number\n}\n\nconst ScrollButtonImpl = React.forwardRef<HTMLDivElement, ScrollButtonImplProps>(\n ({ direction, speed = 400, className, children, ...rest }, ref) => {\n const scrollContext = React.useContext(ScrollContext)\n const [disabled, setDisabled] = React.useState(true)\n const animationRef = React.useRef<number | undefined>(undefined)\n const lastTimeRef = React.useRef<number | undefined>(undefined)\n const isScrollingRef = React.useRef(false)\n\n const viewport = scrollContext?.viewport\n\n const checkScrollability = React.useCallback(() => {\n if (!viewport) {\n setDisabled(true)\n return\n }\n\n const { scrollTop, scrollHeight, clientHeight } = viewport\n const tolerance = 2\n\n const canScrollUp = scrollTop > tolerance\n const canScrollDown = scrollTop < (scrollHeight - clientHeight - tolerance)\n const hasScrollableContent = scrollHeight > clientHeight + tolerance\n\n if (!hasScrollableContent) {\n setDisabled(true)\n return\n }\n\n const shouldDisable = direction === \"up\" ? !canScrollUp : !canScrollDown\n setDisabled(shouldDisable)\n }, [viewport, direction])\n\n React.useEffect(() => {\n if (!viewport) return\n\n checkScrollability()\n\n const handleScroll = () => checkScrollability()\n const handleResize = () => checkScrollability()\n\n viewport.addEventListener(\"scroll\", handleScroll, { passive: true })\n\n const resizeObserver = new ResizeObserver(handleResize)\n resizeObserver.observe(viewport)\n\n const mutationObserver = new MutationObserver(handleResize)\n mutationObserver.observe(viewport, { childList: true, subtree: true })\n\n return () => {\n viewport.removeEventListener(\"scroll\", handleScroll)\n resizeObserver.disconnect()\n mutationObserver.disconnect()\n }\n }, [viewport, checkScrollability])\n\n const stopScrolling = React.useCallback(() => {\n if (animationRef.current) {\n cancelAnimationFrame(animationRef.current)\n animationRef.current = undefined\n }\n isScrollingRef.current = false\n lastTimeRef.current = undefined\n }, [])\n\n const smoothScroll = React.useCallback(\n (currentTime: number) => {\n if (!viewport || disabled || !isScrollingRef.current) {\n stopScrolling()\n return\n }\n\n if (!lastTimeRef.current) {\n lastTimeRef.current = currentTime\n }\n\n const deltaTime = currentTime - lastTimeRef.current\n const distance = (speed * deltaTime) / 1000\n\n if (distance < 0.1) {\n animationRef.current = requestAnimationFrame(smoothScroll)\n return\n }\n\n const oldScrollTop = viewport.scrollTop\n const maxScroll = viewport.scrollHeight - viewport.clientHeight\n\n let newScrollTop: number\n if (direction === \"up\") {\n newScrollTop = Math.max(0, oldScrollTop - distance)\n } else {\n newScrollTop = Math.min(maxScroll, oldScrollTop + distance)\n }\n\n viewport.scrollTo({ top: newScrollTop })\n\n lastTimeRef.current = currentTime\n\n const tolerance = 1\n const canContinue =\n direction === \"up\"\n ? newScrollTop > tolerance\n : newScrollTop < (maxScroll - tolerance)\n\n if (canContinue && Math.abs(newScrollTop - oldScrollTop) > 0.01) {\n animationRef.current = requestAnimationFrame(smoothScroll)\n } else {\n stopScrolling()\n setTimeout(checkScrollability, 16)\n }\n },\n [viewport, disabled, direction, speed, stopScrolling, checkScrollability],\n )\n\n const startScrolling = React.useCallback(() => {\n if (disabled || !viewport || isScrollingRef.current) return\n\n isScrollingRef.current = true\n lastTimeRef.current = undefined\n animationRef.current = requestAnimationFrame(smoothScroll)\n }, [disabled, viewport, smoothScroll])\n\n React.useEffect(() => {\n return () => stopScrolling()\n }, [stopScrolling])\n\n return (\n <div\n {...rest}\n ref={ref}\n className={cn(\n \"flex items-center justify-center py-1 select-none\",\n disabled ? \"cursor-default opacity-40\" : \"cursor-pointer opacity-100 hover:bg-accent/20\",\n className\n )}\n onPointerEnter={e => {\n rest.onPointerEnter?.(e)\n if (!disabled) startScrolling()\n }}\n onPointerMove={e => {\n rest.onPointerMove?.(e)\n if (!disabled && !isScrollingRef.current) startScrolling()\n }}\n onPointerLeave={e => {\n rest.onPointerLeave?.(e)\n stopScrolling()\n }}\n >\n {children}\n </div>\n )\n }\n)\nScrollButtonImpl.displayName = \"ScrollButtonImpl\"\n\nconst SelectScrollUpButton = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <ScrollButtonImpl ref={ref} direction=\"up\" className={className} {...props}>\n <ChevronUp className=\"h-4 w-4\" />\n </ScrollButtonImpl>\n))\nSelectScrollUpButton.displayName = \"SelectScrollUpButton\"\n\nconst SelectScrollDownButton = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <ScrollButtonImpl ref={ref} direction=\"down\" className={className} {...props}>\n <ChevronDown className=\"h-4 w-4\" />\n </ScrollButtonImpl>\n))\nSelectScrollDownButton.displayName = \"SelectScrollDownButton\"\n\ntype SelectContentProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content> & {\n autoScroll?: \"firstEnabled\" | \"firstEnabledWithContext\"\n}\n\nconst SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n SelectContentProps\n>(({ className, children, position = \"popper\", autoScroll, ...props }, ref) => {\n const [viewport, setViewport] = React.useState<HTMLElement | null>(null)\n const viewportRef = React.useCallback((node: HTMLElement | null) => {\n setViewport(node)\n }, [])\n\n React.useEffect(() => {\n if (!viewport || !autoScroll) return\n\n const run = () => {\n const selected = viewport.querySelector(\"[role=\\\"option\\\"][data-state=\\\"checked\\\"]\")\n if (selected instanceof HTMLElement) {\n const padding = 8\n const targetTop = selected.offsetTop - padding\n const targetBottom = selected.offsetTop + selected.offsetHeight + padding\n\n if (targetTop < viewport.scrollTop) {\n viewport.scrollTo({ top: Math.max(0, targetTop) })\n return\n }\n\n const viewportBottom = viewport.scrollTop + viewport.clientHeight\n if (targetBottom > viewportBottom) {\n viewport.scrollTo({ top: Math.max(0, targetBottom - viewport.clientHeight) })\n }\n return\n }\n\n const all = Array.from(\n viewport.querySelectorAll(\"[role=\\\"option\\\"]\")\n ) as HTMLElement[]\n if (!all.length) return\n\n let firstEnabled: HTMLElement | undefined\n let lastDisabledBefore: HTMLElement | undefined\n for (const el of all) {\n const isDisabled = el.hasAttribute(\"data-disabled\")\n if (!isDisabled) {\n firstEnabled = el\n break\n }\n lastDisabledBefore = el\n }\n\n if (!firstEnabled) return\n\n const target =\n autoScroll === \"firstEnabledWithContext\" && lastDisabledBefore\n ? lastDisabledBefore\n : firstEnabled\n\n const offset = Math.max(0, target.offsetTop - 8)\n viewport.scrollTo({ top: offset })\n }\n\n const raf = requestAnimationFrame(run)\n return () => cancelAnimationFrame(raf)\n }, [viewport, autoScroll])\n\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n \"relative z-[60] max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className\n )}\n position={position}\n {...props}\n >\n <ScrollContext.Provider value={{ viewport, setViewport }}>\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n ref={viewportRef}\n className={cn(\n \"p-1 overflow-y-auto\",\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]\"\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </ScrollContext.Provider>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n )\n})\nSelectContent.displayName = SelectPrimitive.Content.displayName\n\nconst SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn(\"py-1.5 pl-8 pr-2 text-sm font-semibold\", className)}\n {...props}\n />\n))\nSelectLabel.displayName = SelectPrimitive.Label.displayName\n\nconst SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex w-full select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 cursor-pointer\",\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n))\nSelectItem.displayName = SelectPrimitive.Item.displayName\n\nconst SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n))\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\n\nexport {\n Select,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n}\n"],"mappings":"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"}